(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-01b259ce"],{"0eee":function(t,e,s){"use strict";s.d(e,"a",(function(){return i}));class i{constructor(t=0,e=0,s=0,i=0){this.x=t,this.y=e,this.width=s,this.height=i}get isEmpty(){return this.width<=0||this.height<=0}union(t){this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.width=Math.max(this.width,t.width),this.height=Math.max(this.height,t.height)}}},"1b4a":function(t,e,s){"use strict";s.d(e,"a",(function(){return k}));var i=s("a29a"),r=s("2c63"),n=s("3349"),a=s("738e"),o=s("32dd"),h=s("d114"),c=s("a9c0");class l{constructor(t,e,s,i){this.center=Object(a["b"])(t,e),this.centerT=Object(a["a"])(),this.halfWidth=s/2,this.halfHeight=i/2,this.width=s,this.height=i}get x(){return this.center[0]}get y(){return this.center[1]}get blX(){return this.center[0]+this.halfWidth}get blY(){return this.center[1]+this.halfHeight}get trX(){return this.center[0]-this.halfWidth}get trY(){return this.center[1]-this.halfHeight}get xmin(){return this.x-this.halfWidth}get xmax(){return this.x+this.halfWidth}get ymin(){return this.y-this.halfHeight}get ymax(){return this.y+this.halfHeight}set x(t){this.center[0]=t}set y(t){this.center[1]=t}clone(){return new l(this.x,this.y,this.width,this.height)}serialize(t){return t.writeF32(this.center[0]),t.writeF32(this.center[1]),t.push(this.width),t.push(this.height),t}findCollisionDelta(t,e=4){const s=Math.abs(t.centerT[0]-this.centerT[0]),i=Math.abs(t.centerT[1]-this.centerT[1]),r=(t.halfWidth+this.halfWidth+e)/s,n=(t.halfHeight+this.halfHeight+e)/i,a=Math.min(r,n);return Math.log2(a)}extend(t){const e=Math.min(this.xmin,t.xmin),s=Math.min(this.ymin,t.ymin),i=Math.max(this.xmax,t.xmax)-e,r=Math.max(this.ymax,t.ymax)-s,n=e+i/2,a=s+r/2;this.width=i,this.height=r,this.halfWidth=i/2,this.halfHeight=r/2,this.x=n,this.y=a}static deserialize(t){const e=t.readF32(),s=t.readF32(),i=t.readInt32(),r=t.readInt32();return new l(e,s,i,r)}}const u=26,f=4,_=u+f,p=u-6,d=3,m=8,g=Math.PI/180;class b{constructor(t,e,s,i){this._rotationT=Object(r["a"])(),this._xBounds=0,this._yBounds=0,this.minZoom=0,this.maxZoom=255,this._bounds=null;const n=s.rect,a=new Float32Array(8);t*=i,e*=i;const o=s.code?n.width*i:s.metrics.width,h=s.code?n.height*i:s.metrics.height;a[0]=t,a[1]=e,a[2]=t+o,a[3]=e,a[4]=t,a[5]=e+h,a[6]=t+o,a[7]=e+h,this._data=a,this._setTextureCoords(n),this._scale=i,this._mosaic=s,this.x=t,this.y=e,this.maxOffset=Math.max(t+o,e+h)}get width(){return this._mosaic.metrics.width*this._scale}get mosaic(){return this._mosaic}set angle(t){this._angle=t,Object(i["b"])(this._rotationT,-t),this._setOffsets(this._data)}get angle(){return this._angle}get xTopLeft(){return this._data[0]}get yTopLeft(){return this._data[1]}get xBottomRight(){return this._data[6]}get yBottomRight(){return this._data[7]}get texcoords(){return this._texcoords}get textureBinding(){return this._mosaic.textureBinding}get offsets(){return this._offsets||this._setOffsets(this._data),this._offsets}get char(){return String.fromCharCode(this._mosaic.code)}get code(){return this._mosaic.code}get bounds(){if(!this._bounds){const{height:t,width:e}=this._mosaic.metrics,s=e*this._scale,n=Math.abs(t)*this._scale,a=new Float32Array(8);a[0]=this.x,a[1]=this.y,a[2]=this.x+s,a[3]=this.y,a[4]=this.x,a[5]=this.y+n,a[6]=this.x+s,a[7]=this.y+n;const o=Object(i["f"])(Object(r["a"])(),this._rotationT,this._T);Object(r["b"])(a,a,o);let h=1/0,c=1/0,u=0,f=0;for(let i=0;i<4;i++){const t=a[2*i],e=a[2*i+1];h=Math.min(h,t),c=Math.min(c,e),u=Math.max(u,t),f=Math.max(f,e)}const _=u-h,p=f-c,d=h+_/2,m=c+p/2;this._bounds=new l(d,m,_,p)}return this._bounds}setTransform(t){this._T=t,this._offsets=null}_setOffsets(t){this._offsets||(this._offsets={upperLeft:0,upperRight:0,lowerLeft:0,lowerRight:0});const e=this._offsets,s=new Float32Array(8),n=Object(i["f"])(Object(r["a"])(),this._rotationT,this._T);Object(r["b"])(s,t,n),e.upperLeft=Object(h["a"])(s[0]*m,s[1]*m),e.upperRight=Object(h["a"])(s[2]*m,s[3]*m),e.lowerLeft=Object(h["a"])(s[4]*m,s[5]*m),e.lowerRight=Object(h["a"])(s[6]*m,s[7]*m)}_setTextureCoords({x:t,y:e,width:s,height:i}){this._texcoords={upperLeft:Object(h["a"])(t,e),upperRight:Object(h["a"])(t+s,e),lowerLeft:Object(h["a"])(t,e+i),lowerRight:Object(h["a"])(t+s,e+i)}}}const y=(t,e)=>({code:0,page:0,sdf:!0,rect:new c["a"](0,0,11,8),textureBinding:e,metrics:{advance:0,height:4,width:t,left:0,top:0}});class x{constructor(t,e,s){this._rotation=0,this._decorate(t,e,s),this.glyphs=t,this.bounds=this._createBounds(t),this.isMultiline=e.length>1,this._hasRotation=0!==s.angle,this._T=this._createGlyphTransform(this.bounds,s);for(const i of t)i.setTransform(this._T)}setRotation(t){if(0===t&&0===this._rotation)return;this._rotation=t;const e=this._T,s=Object(i["b"])(Object(r["a"])(),t);Object(i["f"])(e,s,e);for(const i of this.glyphs)i.setTransform(this._T)}_decorate(t,e,s){if(!s.decoration||"none"===s.decoration||!t.length)return;const i=s.scale,r="underline"===s.decoration?_:p,n=t[0].textureBinding;for(const a of e){const e=a.startX*i,s=a.startY*i,o=(a.width+a.glyphWidthEnd)*i;t.push(new b(e,s+r*i,y(o,n),1))}}get boundsT(){const t=this.bounds,e=Object(n["s"])(Object(a["a"])(),t.x,t.y);if(Object(n["t"])(e,e,this._T),this._hasRotation){const s=Math.max(t.width,t.height);return new l(e[0],e[1],s,s)}return new l(e[0],e[1],t.width,t.height)}_createBounds(t){let e=1/0,s=1/0,i=0,r=0;for(const o of t)e=Math.min(e,o.xTopLeft),s=Math.min(s,o.yTopLeft),i=Math.max(i,o.xTopLeft+o.width),r=Math.max(r,o.yBottomRight);const n=i-e,a=r-s;return new l(e+n/2,s+a/2,n,a)}_createGlyphTransform(t,e){const s=g*e.angle,o=Object(r["a"])(),h=Object(a["a"])();return Object(i["i"])(o,o,Object(n["s"])(h,e.xOffset,-e.yOffset)),e.isCIM?Object(i["g"])(o,o,s):(Object(i["i"])(o,o,Object(n["s"])(h,t.x,t.y)),Object(i["g"])(o,o,s),Object(i["i"])(o,o,Object(n["s"])(h,-t.x,-t.y))),o}}class P{constructor(t,e,s,i,r,n){this.glyphWidthEnd=0,this.startX=0,this.startY=0,this.start=Math.max(0,Math.min(e,s)),this.end=Math.max(0,Math.max(e,s)),this.end10===t,S=t=>32===t;function w(t,e,s){const i=new Array,r=1/s.scale,n=s.maxLineWidth*r,a=e?t.length-1:0,o=e?-1:t.length,h=e?-1:1;let c=a,l=0,u=0,f=c,_=f,p=0,d=1/0,m=0;for(;c!==o;){const{code:e,metrics:s}=t[c],r=Math.abs(s.top);if(M(e)||S(e)||(d=Math.min(d,r),m=Math.max(m,r+s.height)),M(e))c!==a&&(i.push(new P(t,f,c-h,l,d,m)),d=1/0,m=0),l=0,f=c+h,_=c+h,u=0;else if(S(e))_=c+h,u=0,p=s.advance,l+=s.advance;else if(l>n){if(_!==f){const e=_-2*h;l-=p,i.push(new P(t,f,e,l-u,d,m)),d=1/0,m=0,f=_,l=u}else i.push(new P(t,f,c-h,l,d,m)),d=1/0,m=0,f=c,_=c,l=0;l+=s.advance,u+=s.advance}else l+=s.advance,u+=s.advance;c+=h}const g=new P(t,f,c-h,l,d,m);return g.start>=0&&g.end{if(this._inFlightResourceMap.delete(t),e.ok){i.set(t,e.value);const r=e.value;return s.width=r.width,s.height=r.height,s}return s}),n)}deleteResource(t){this._inFlightResourceMap.delete(t),this._resourceMap.delete(t)}}function h(t,e){if(t.includes(a)){const e=new Image;return e.src=t,e.decode().then(()=>({ok:!0,value:e})).catch(e=>Object(n["m"])(e)?{ok:!1,error:e}:{ok:!1,error:new r["a"]("invalid-resource","Could not fetch requested resource at "+t)})}return Object(i["default"])(t,{responseType:"image",...e}).then(t=>({ok:!0,value:t.data})).catch(e=>Object(n["m"])(e)?{ok:!1,error:e}:{ok:!1,error:new r["a"]("invalid-resource","Could not fetch requested resource at "+t)})}},"357b":function(t,e,s){"use strict";s.d(e,"a",(function(){return a}));var i=s("a915");function r(t){return`rgb(${t.slice(0,3).toString()})`}function n(t){return`rgba(${t.slice(0,3).toString()},${t[3]})`}class a{constructor(){}rasterizeText(t,e){this._textRasterizationCanvas||(this._textRasterizationCanvas=document.createElement("canvas"));const s=this._textRasterizationCanvas,i=s.getContext("2d");this._setFontProperties(i,e),this.parameters=e,this.textLines=t.split(/\r?\n/),this.lineHeight=this._computeLineHeight();const a=this._computeTextWidth(i,e),{decoration:h,weight:c}=e.font;this.lineThroughWidthOffset=h&&"line-through"===h?.1*this.lineHeight:0;const l=this.lineHeight*this.textLines.length;s.width=a+2*this.lineThroughWidthOffset,s.height=l,this.renderedLineHeight=Math.round(this.lineHeight*e.pixelRatio),this.renderedHaloSize=e.halo.size*e.pixelRatio,this.renderedWidth=a*e.pixelRatio,this.renderedHeight=l*e.pixelRatio,this.lineThroughWidthOffset*=e.pixelRatio,this.fillStyle=n(e.color),this.haloStyle=r(e.halo.color);const u=this.renderedLineHeight,f=this.renderedHaloSize;this._setFontProperties(i,e);const _=o(i.textAlign,this.renderedWidth)+f,p=f,d=f>0;let m=this.lineThroughWidthOffset,g=0;d&&this._renderHalo(i,_,p,m,g,e),g+=p,m+=_;for(const r of this.textLines)i.globalCompositeOperation="destination-out",i.fillStyle="rgb(0, 0, 0)",i.fillText(r,m,g),i.globalCompositeOperation="source-over",i.fillStyle=this.fillStyle,i.fillText(r,m,g),h&&"none"!==h&&this._renderDecoration(i,m,g,h,c),g+=u;const b=this.renderedWidth+2*this.lineThroughWidthOffset,y=this.renderedHeight,x=i.getImageData(0,0,b,y),P=new Uint8Array(x.data);if(e.premultiplyColors){let t;for(let e=0;e600)&&(s+=.3*t.measureText("w").width),s+=2*this.parameters.halo.size,Math.round(s)}_computeLineHeight(){let t=1.275*this.parameters.size;const e=this.parameters.font.decoration;return e&&"underline"===e&&(t*=1.3),Math.round(t+2*this.parameters.halo.size)}_renderDecoration(t,e,s,i,r){const n=.9*this.lineHeight,a="bold"===r?.06:"bolder"===r?.09:.04;switch(t.textAlign){case"center":e-=this.renderedWidth/2;break;case"right":e-=this.renderedWidth}const o=t.textBaseline;if("underline"===i)switch(o){case"top":s+=n;break;case"middle":s+=n/2}else if("line-through"===i)switch(o){case"top":s+=n/1.5;break;case"middle":s+=n/3}t.save(),t.beginPath(),t.strokeStyle=t.fillStyle,t.lineWidth=Math.ceil(n*a),t.moveTo(e-this.lineThroughWidthOffset,s),t.lineTo(e+this.renderedWidth+2*this.lineThroughWidthOffset,s),t.stroke(),t.restore()}}function o(t,e){return"center"===t?.5*e:"right"===t?e:0}const h=[];{const t=16;for(let e=0;e<360;e+=360/t)h.push([Math.cos(Math.PI*e/180),Math.sin(Math.PI*e/180)])}},"3b19":function(t,e,s){"use strict";s.d(e,"a",(function(){return n})),s.d(e,"b",(function(){return o})),s.d(e,"c",(function(){return i})),s.d(e,"d",(function(){return r})),s.d(e,"e",(function(){return f})),s.d(e,"f",(function(){return u})),s.d(e,"g",(function(){return c})),s.d(e,"h",(function(){return l}));const i=Number.POSITIVE_INFINITY,r=Math.PI,n=2*r,a=128/r,o=r/180,h=1/Math.LN2;function c(t,e){return(t%=e)>=0?t:t+e}function l(t){return c(t*a,256)}function u(t){return Math.log(t)*h}function f(t,e,s){return t*(1-s)+e*s}},"58f4":function(t,e,s){"use strict";s.d(e,"a",(function(){return i}));class i{constructor(){this.setIdentity()}getAngle(){return(null==this.rz||0===this.rz&&1!==this.rz_c&&0!==this.rz_s)&&(this.rz=Math.atan2(this.rz_s,this.rz_c)),this.rz}setIdentity(){this.tx=0,this.ty=0,this.tz=0,this.s=1,this.rx=0,this.ry=0,this.rz=0,this.rz_c=1,this.rz_s=0}setTranslate(t,e){this.tx=t,this.ty=e}setTranslateZ(t){this.tz=t}setRotateCS(t,e){this.rz=void 0,this.rz_c=t,this.rz_s=e}setRotate(t){this.rz=t,this.rz_c=void 0,this.rz_s=void 0}setRotateY(t){this.ry=t}setScale(t){this.s=t}setMeasure(t){this.m=t}}},"5ee9":function(t,e,s){"use strict";s.d(e,"a",(function(){return L})),s.d(e,"b",(function(){return v})),s.d(e,"c",(function(){return T})),s.d(e,"d",(function(){return C})),s.d(e,"e",(function(){return I})),s.d(e,"f",(function(){return j})),s.d(e,"g",(function(){return A}));var i=s("f57e"),r=s("e92d"),n=s("b2b2"),a=s("ecd7"),o=s("a915"),h=s("9180"),c=s("28b1"),l=s("57e5"),u=s("a9ab"),f=s("fe24"),_=s("9344"),p=s("58f4"),d=s("27a2"),m=s("ab39"),g=s("0eee"),b=s("357b"),y=s("32dd"),x=s("8c81"),P=s("1b4a");const M=Math.PI/180,S=10,w=r["a"].getLogger("esri.symbols.cim.CIMSymbolDrawHelper");class C{constructor(t){this._t=t}static createIdentity(){return new C([1,0,0,0,1,0])}clone(){const t=this._t;return new C(t.slice())}transform(t){const e=this._t;return[e[0]*t[0]+e[1]*t[1]+e[2],e[3]*t[0]+e[4]*t[1]+e[5]]}static createScale(t,e){return new C([t,0,0,0,e,0])}scale(t,e){const s=this._t;return s[0]*=t,s[1]*=t,s[2]*=t,s[3]*=e,s[4]*=e,s[5]*=e,this}scaleRatio(){return Math.sqrt(this._t[0]*this._t[0]+this._t[1]*this._t[1])}static createTranslate(t,e){return new C([0,0,t,0,0,e])}translate(t,e){const s=this._t;return s[2]+=t,s[5]+=e,this}static createRotate(t){const e=Math.cos(t),s=Math.sin(t);return new C([e,-s,0,s,e,0])}rotate(t){return C.multiply(this,C.createRotate(t),this)}static multiply(t,e,s){const i=t._t,r=e._t,n=i[0]*r[0]+i[3]*r[1],a=i[1]*r[0]+i[4]*r[1],o=i[2]*r[0]+i[5]*r[1]+r[2],h=i[0]*r[3]+i[3]*r[4],c=i[1]*r[3]+i[4]*r[4],l=i[2]*r[3]+i[5]*r[4]+r[5],u=s._t;return u[0]=n,u[1]=a,u[2]=o,u[3]=h,u[4]=c,u[5]=l,s}invert(){const t=this._t;let e=t[0]*t[4]-t[1]*t[3];if(0===e)return new C([0,0,0,0,0,0]);e=1/e;const s=(t[1]*t[5]-t[2]*t[4])*e,i=(t[2]*t[3]-t[0]*t[5])*e,r=t[4]*e,n=-t[1]*e,a=-t[3]*e,o=t[0]*e;return new C([r,n,s,a,o,i])}}class k{constructor(t,e){this._transfos=[],this._sizeTransfos=[],this._geomUnitsPerPoint=1,this._placementPool=new a["a"](p["a"],null,null,100),this._earlyReturn=!1,this._mapRotation=0,this._resourceManager=t||new d["a"],this._transfos.push(e||C.createIdentity()),this._sizeTransfos.push(e?e.scaleRatio():1)}setTransform(t,e){this._transfos=[t||C.createIdentity()],this._sizeTransfos=[e||(t?t.scaleRatio():1)]}setGeomUnitsPerPoint(t){this._geomUnitsPerPoint=t}transformPt(t){return this._transfos[this._transfos.length-1].transform(t)}transformSize(t){return t*this._sizeTransfos[this._sizeTransfos.length-1]}reverseTransformPt(t){return this._transfos[this._transfos.length-1].invert().transform(t)}reverseTransformSize(t){return t/this._sizeTransfos[this._sizeTransfos.length-1]}geomUnitsPerPoint(){return this.isEmbedded()?1:this._geomUnitsPerPoint}isEmbedded(){return this._transfos.length>1}back(){return this._transfos[this._transfos.length-1]}push(t,e){const s=e?t.scaleRatio():1;C.multiply(t,this.back(),t),this._transfos.push(t),this._sizeTransfos.push(this._sizeTransfos[this._sizeTransfos.length-1]*s)}pop(){this._transfos.splice(-1,1),this._sizeTransfos.splice(-1,1)}drawSymbol(t,e){if(t)switch(t.type){case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":this.drawMultiLayerSymbol(t,e);break;case"CIMTextSymbol":this.drawTextSymbol(t,e)}}drawMultiLayerSymbol(t,e){if(!t)return;const s=t.symbolLayers;if(!s)return;const i=t.effects;if(i&&i.length>0){const t=this.executeEffects(i,e);if(t){let e=t.next();for(;e;)this.drawSymbolLayers(s,e),e=t.next()}}else this.drawSymbolLayers(s,e)}executeEffects(t,e){const s=this._resourceManager.geometryEngine;let i=new f["a"](e);for(const r of t){const t=Object(_["a"])(r);t&&(i=t.execute(i,r,this.geomUnitsPerPoint(),s))}return i}drawSymbolLayers(t,e){let s=t.length;for(;s--;){const i=t[s];if(!i||!1===i.enable)continue;const r=i.effects;if(r&&r.length>0){const t=this.executeEffects(r,e);if(t){let e=null;for(;(e=t.next())&&(this.drawSymbolLayer(i,e),!this._earlyReturn););}}else this.drawSymbolLayer(i,e);if(this._earlyReturn)return}}drawSymbolLayer(t,e){switch(t.type){case"CIMSolidFill":this.drawSolidFill(e,t.color);break;case"CIMHatchFill":this.drawHatchFill(e,t);break;case"CIMPictureFill":this.drawPictureFill(e,t);break;case"CIMGradientFill":this.drawGradientFill(e,t);break;case"CIMSolidStroke":this.drawSolidStroke(e,t.color,t.width,t.capStyle,t.joinStyle,t.miterLimit);break;case"CIMPictureStroke":this.drawPictureStroke(e,t);break;case"CIMGradientStroke":this.drawGradientStroke(e,t);break;case"CIMCharacterMarker":case"CIMPictureMarker":case"CIMVectorMarker":this.drawMarkerLayer(t,e)}}drawHatchFill(t,e){const s=this._buildHatchPolyline(e,t,this.geomUnitsPerPoint());s&&(this.pushClipPath(t),this.drawMultiLayerSymbol(e.lineSymbol,s),this.popClipPath())}drawPictureFill(t,e){}drawGradientFill(t,e){}drawPictureStroke(t,e){}drawGradientStroke(t,e){}drawMarkerLayer(t,e){const s=t.markerPlacement;if(s){const i=Object(_["b"])(s);if(i){const r="CIMMarkerPlacementInsidePolygon"===s.type;r&&this.pushClipPath(e);const n=i.execute(e,s,this.geomUnitsPerPoint(),this._resourceManager.geometryEngine);if(n){let e=null;for(;(e=n.next())&&(this.drawMarker(t,e),!this._earlyReturn););}r&&this.popClipPath()}}else{const s=this._placementPool.acquire();if(Object(u["f"])(e))s.tx=e.x,s.ty=e.y,this.drawMarker(t,s);else if(Object(u["g"])(e))[s.tx,s.ty]=Object(l["b"])(e),this.drawMarker(t,s);else for(const i of e.points)if(s.tx=i[0],s.ty=i[1],this.drawMarker(t,s),this._earlyReturn)break;this._placementPool.release(s)}}drawMarker(t,e){switch(t.type){case"CIMCharacterMarker":case"CIMPictureMarker":this.drawPictureMarker(t,e);break;case"CIMVectorMarker":this.drawVectorMarker(t,e)}}drawPictureMarker(t,e){var s,i,r,a,o;if(!t)return;const h=this._resourceManager.getResource(t.url),c=null!=(s=t.size)?s:10;if(Object(n["j"])(h)||c<=0)return;const l=h.width,u=h.height;if(!l||!u)return;const f=l/u,_=null!=(i=t.scaleX)?i:1,p=C.createIdentity(),d=t.anchorPoint;if(d){let e=d.x,s=d.y;"Absolute"!==t.anchorPointUnits&&(e*=c*f*_,s*=c),p.translate(-e,-s)}let m=null!=(r=t.rotation)?r:0;t.rotateClockwise&&(m=-m),this._mapRotation&&(m+=this._mapRotation),m&&p.rotate(m*M);let g=null!=(a=t.offsetX)?a:0,b=null!=(o=t.offsetY)?o:0;if(g||b){if(this._mapRotation){const t=M*this._mapRotation,e=Math.cos(t),s=Math.sin(t),i=g*s+b*e;g=g*e-b*s,b=i}p.translate(g,b)}const y=this.geomUnitsPerPoint();1!==y&&p.scale(y,y);const x=e.getAngle();x&&p.rotate(x),p.translate(e.tx,e.ty),this.push(p,!1),this.drawImage(t.url,c,t.scaleX),this.pop()}drawVectorMarker(t,e){var s,i,r,n;if(!t)return;const a=t.markerGraphics;if(!a)return;const o=null!=(s=t.size)?s:10,h=t.frame,c=h?h.ymax-h.ymin:0,l=o&&c?o/c:1,u=C.createIdentity();h&&u.translate(.5*-(h.xmax+h.xmin),.5*-(h.ymax+h.ymin));const f=t.anchorPoint;if(f){let e=f.x,s=f.y;"Absolute"!==t.anchorPointUnits?h&&(e*=h.xmax-h.xmin,s*=h.ymax-h.ymin):(e/=l,s/=l),u.translate(-e,-s)}1!==l&&u.scale(l,l);let _=null!=(i=t.rotation)?i:0;t.rotateClockwise&&(_=-_),this._mapRotation&&(_+=this._mapRotation),_&&u.rotate(_*M);let p=null!=(r=t.offsetX)?r:0,d=null!=(n=t.offsetY)?n:0;if(p||d){if(this._mapRotation){const t=M*this._mapRotation,e=Math.cos(t),s=Math.sin(t),i=p*s+d*e;p=p*e-d*s,d=i}u.translate(p,d)}const m=this.geomUnitsPerPoint();1!==m&&u.scale(m,m);const g=e.getAngle();g&&u.rotate(g),u.translate(e.tx,e.ty),this.push(u,t.scaleSymbolsProportionally);for(const b of a)if(b&&b.symbol&&b.geometry||w.error("Invalid marker graphic",b),this.drawSymbol(b.symbol,b.geometry),this._earlyReturn)break;this.pop()}drawTextSymbol(t,e){var s,i,r,n;if(!t)return;if(!Object(u["f"])(e))return;if((null!=(s=t.height)?s:10)<=0)return;const a=C.createIdentity();let o=null!=(i=t.angle)?i:0;o=-o,o&&a.rotate(o*M);const h=null!=(r=t.offsetX)?r:0,c=null!=(n=t.offsetY)?n:0;(h||c)&&a.translate(h,c);const l=this.geomUnitsPerPoint();1!==l&&a.scale(l,l),a.translate(e.x,e.y),this.push(a,!1),this.drawText(t),this.pop()}_buildHatchPolyline(t,e,s){let i=(void 0!==t.separation?t.separation:4)*s,r=void 0!==t.rotation?t.rotation:0;if(0===i)return null;i<0&&(i=-i);let n=0;const a=.5*i;for(;n>a;)n-=i;for(;n<-a;)n+=i;const o=Object(h["l"])();Object(c["a"])(o,e),o[0]-=a,o[1]-=a,o[2]+=a,o[3]+=a;const l=[[o[0],o[1]],[o[0],o[3]],[o[2],o[3]],[o[2],o[1]]];for(;r>180;)r-=180;for(;r<0;)r+=180;const u=Math.cos(r*M),f=Math.sin(r*M),_=-i*f,p=i*u;let d,m,g,b;n=(void 0!==t.offsetX?t.offsetX*s:0)*f-(void 0!==t.offsetY?t.offsetY*s:0)*u,d=g=Number.MAX_VALUE,m=b=-Number.MAX_VALUE;for(const h of l){const t=h[0],e=h[1],s=u*t+f*e,i=-f*t+u*e;d=Math.min(d,s),g=Math.min(g,i),m=Math.max(m,s),b=Math.max(b,i)}g=Math.floor(g/i)*i;let y=u*d-f*g-_*n/i,x=f*d+u*g-p*n/i,P=u*m-f*g-_*n/i,S=f*m+u*g-p*n/i;const w=1+Math.round((b-g)/i),C=[];for(let h=0;h0))if(Object(u["g"])(t))this._processPath(t.rings,0);else if(Object(u["h"])(t))this._processPath(t.paths,0);else if(Object(u["d"])(t)){const e=O(t);e&&this._processPath(e.rings,0)}else console.error("drawSolidFill Unexpected geometry type!")}drawSolidStroke(t,e,s){if(!t||this._clipCount>0)return;const i=.5*this.transformSize(s);if(Object(u["g"])(t))this._processPath(t.rings,i);else if(Object(u["h"])(t))this._processPath(t.paths,i);else if(Object(u["d"])(t)){const e=O(t);e&&this._processPath(e.rings,i)}else console.error("drawSolidStroke unexpected geometry type!")}pushClipPath(t){this.drawSolidFill(t),++this._clipCount}popClipPath(){--this._clipCount}drawImage(t,e,s){let i=s*e,r=e;const a=this._resourceManager.getResource(t);!e&&Object(n["k"])(a)&&(i=s*a.width,r=a.height),this._merge(this.transformPt([-i/2,-r/2]),0),this._merge(this.transformPt([-i/2,r/2]),0),this._merge(this.transformPt([i/2,-r/2]),0),this._merge(this.transformPt([i/2,r/2]),0)}drawText(t){this._textRasterizer||(this._textRasterizer=new b["a"])}_processPath(t,e){if(t)for(const s of t){const t=s?s.length:0;if(t>1){this._merge(this.transformPt(s[0]),e);for(let i=1;ithis._xmax&&(this._xmax=t[0]+e),t[1]-ethis._ymax&&(this._ymax=t[1]+e)}}class T extends k{constructor(){super(...arguments),this._searchPoint=[0,0],this._searchDistPoint=0}hitTest(t,e,s,i,r,n){const a=n*Object(o["g"])(1);this.setTransform(),this.setGeomUnitsPerPoint(a),this._searchPoint=[(t[0]+t[2])/2,(t[1]+t[3])/2],this._searchDistPoint=(t[2]-t[0])/2/a,this._textInfo=i;const h=e&&("CIMPointSymbol"===e.type&&"Map"!==e.angleAlignment||"CIMTextSymbol"===e.type);return this._mapRotation=h?r:0,this._earlyReturn=!1,this.drawSymbol(e,s),this._earlyReturn}drawSolidFill(t,e){this._hitTestFill(t)}drawHatchFill(t,e){this._hitTestFill(t)}drawPictureFill(t,e){this._hitTestFill(t)}drawGradientFill(t,e){this._hitTestFill(t)}drawSolidStroke(t,e,s,i,r,n){this._hitTestStroke(t,s)}drawPictureStroke(t,e){this._hitTestStroke(t,e.width)}drawGradientStroke(t,e){this._hitTestStroke(t,e.width)}pushClipPath(t){}popClipPath(){}drawImage(t,e,s){const i=this._resourceManager.getResource(t);if(Object(n["j"])(i)||0===i.height||0===e)return;const r=e*this.geomUnitsPerPoint(),a=r*s*(i.width/i.height),o=this.reverseTransformPt(this._searchPoint),h=this._searchDistPoint;Math.abs(o[0])i.xTopLeft&&p-i.yBottomRight&&d<-i.yTopLeft){this._earlyReturn=!0;break}}_hitTestFill(t){let e=null;if(Object(u["d"])(t)){const s=t;e=[[[s.xmin,s.ymin],[s.xmin,s.ymax],[s.xmax,s.ymax],[s.xmax,s.ymin],[s.xmin,s.ymin]]]}else if(Object(u["g"])(t))e=t.rings;else{if(!Object(u["h"])(t))return;e=t.paths}const s=this.reverseTransformPt(this._searchPoint);this._pointInPolygon(s,e)&&(this._earlyReturn=!0);const i=this.reverseTransformSize(this._searchDistPoint)*this.geomUnitsPerPoint();this._nearLine(s,e,i)&&(this._earlyReturn=!0)}_hitTestStroke(t,e){let s=null;if(Object(u["d"])(t)){const e=t;s=[[[e.xmin,e.ymin],[e.xmin,e.ymax],[e.xmax,e.ymax],[e.xmax,e.ymin],[e.xmin,e.ymin]]]}else if(Object(u["g"])(t))s=t.rings;else{if(!Object(u["h"])(t))return;s=t.paths}const i=this.reverseTransformPt(this._searchPoint),r=e*this.geomUnitsPerPoint(),n=this.reverseTransformSize(this._searchDistPoint)*this.geomUnitsPerPoint();this._nearLine(i,s,r/2+n)&&(this._earlyReturn=!0)}_pointInPolygon(t,e){let s=0;for(const i of e){const e=i.length;for(let r=1;rt[1]!=n[1]>t[1]&&((n[0]-e[0])*(t[1]-e[1])-(n[1]-e[1])*(t[0]-e[0])>0?s++:s--)}}return 0!==s}_nearLine(t,e,s){for(const i of e){const e=i.length;for(let r=1;r-s&&i1){let r=this.transformPt(i[0]);s.moveTo(r[0],r[1]);for(let e=1;et?{spatialReference:t.spatialReference,rings:[[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]]]}:null,I=t=>{switch(t){case"Left":return y["a"].Left;case"Right":return y["a"].Right;case"Center":case"Justify":return y["a"].Center}},A=t=>{switch(t){case"Top":return y["b"].Top;case"Center":return y["b"].Center;case"Bottom":return y["b"].Bottom;case"Baseline":return y["b"].Baseline}},j=(t,e,s)=>{switch(t){case"ExtraLeading":return 1+e/s;case"Multiple":return e;case"Exact":return e/s}}},"793f":function(t,e,s){"use strict";s.d(e,"a",(function(){return A})),s.d(e,"b",(function(){return j})),s.d(e,"c",(function(){return z})),s.d(e,"d",(function(){return F})),s.d(e,"e",(function(){return V})),s.d(e,"f",(function(){return v}));var i=s("9ef0"),r=s("f57e"),n=s("661c"),a=s("7ffa"),o=s("e92d"),h=s("38a4"),c=s("b2b2"),l=s("a915"),u=s("9180"),f=s("28b1"),_=s("58f4"),p=s("5ee9"),d=s("ab39"),m=s("36b8"),g=s("3b19"),b=s("8c81"),y=s("1b4a");const x=Math.PI,P=x/2,M=4,S=10,w=96/72,C=Math.PI/180,k=o["a"].getLogger("esri.symbols.cim.CIMSymbolHelper");function v(t){if(!t||!t.type)return null;let e;switch(t.type){case"cim":return t.data;case"web-style":return t;case"simple-marker":e=j.fromSimpleMarker(t);break;case"picture-marker":e=j.fromPictureMarker(t);break;case"simple-line":e=j.fromSimpleLineSymbol(t);break;case"simple-fill":e=j.fromSimpleFillSymbol(t);break;case"picture-fill":e=j.fromPictureFillSymbol(t);break;case"text":e=j.fromTextSymbol(t)}return{type:"CIMSymbolReference",symbol:e}}function T(t,e){switch(e.type){case"CIMSymbolReference":return T(t,e.symbol);case"CIMPointSymbol":{const s={x:0,y:0};t.drawSymbol(e,s);break}case"CIMLineSymbol":{const s={paths:[[[0,0],[0,1]]]};t.drawSymbol(e,s);break}case"CIMPolygonSymbol":{const s={rings:[[[0,0],[0,1],[0,0]]]};t.drawSymbol(e,s);break}case"CIMTextSymbol":{const s={x:0,y:0};t.drawSymbol(e,s);break}case"CIMVectorMarker":{const s=new _["a"];t.drawMarker(e,s);break}}return t.envelope()}function L(t){if(!t)return 0;switch(t.type){case"CIMMarkerPlacementAlongLineSameSize":case"CIMMarkerPlacementAlongLineRandomSize":case"CIMMarkerPlacementAtExtremities":case"CIMMarkerPlacementAtMeasuredUnits":case"CIMMarkerPlacementAtRatioPositions":case"CIMMarkerPlacementOnLine":case"CIMMarkerPlacementOnVertices":return Math.abs(t.offset);default:return 0}}function O(t){if(!t)return 0;switch(t.type){case"CIMGeometricEffectArrow":return Math.abs(.5*t.width);case"CIMGeometricEffectBuffer":return Math.abs(t.size);case"CIMGeometricEffectExtension":case"CIMGeometricEffectRadial":return Math.abs(t.length);case"CIMGeometricEffectJog":return Math.abs(.5*t.length);case"CIMGeometricEffectMove":return Math.max(Math.abs(Object(m["f"])(t.offsetX)),Math.abs(Object(m["f"])(t.offsetY)));case"CIMGeometricEffectOffset":case"CIMGeometricEffectOffsetTangent":return Math.abs(t.offset);case"CIMGeometricEffectRegularPolygon":return Math.abs(t.radius);case"CIMGeometricEffectRotate":case"CIMGeometricEffectScale":default:return 0;case"CIMGeometricEffectTaperedPolygon":return.5*Math.max(Math.abs(t.fromWidth),Math.abs(t.toWidth));case"CIMGeometricEffectWave":return Math.abs(t.amplitude)}}function I(t){if(!t)return 0;let e=0;for(const s of t)e+=O(s);return e}class A{getSymbolInflateSize(t,e,s,i,r){return t||(t=[0,0,0,0]),e?this._getInflateSize(t,e,s,i,r):t}static safeSize(t){const e=Math.max(Math.abs(t[0]),Math.abs(t[2])),s=Math.max(Math.abs(t[1]),Math.abs(t[3]));return Math.sqrt(e*e+s*s)}_vectorMarkerBounds(t,e,s,i){let r=!0;const n=Object(u["l"])();if(e&&e.markerGraphics)for(const a of e.markerGraphics){const e=[0,0,0,0];a.geometry&&(Object(f["a"])(n,a.geometry),e[0]=0,e[1]=0,e[2]=0,e[3]=0,this.getSymbolInflateSize(e,a.symbol,s,0,i),n[0]+=e[0],n[1]+=e[1],n[2]+=e[2],n[3]+=e[3],r?(t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],r=!1):(t[0]=Math.min(t[0],n[0]),t[1]=Math.min(t[1],n[1]),t[2]=Math.max(t[2],n[2]),t[3]=Math.max(t[3],n[3])))}return t}_getInflateSize(t,e,s,i,r){if(X(e)){const n=this._getLayersInflateSize(t,e.symbolLayers,s,i,r),a=I(e.effects);return a>0&&(n[0]-=a,n[1]-=a,n[2]+=a,n[3]+=a),n}return this._getTextInflatedSize(t,e,r)}_getLayersInflateSize(t,e,s,i,r){let n=!0;if(!e)return t;for(const a of e){if(!a)continue;let e=[0,0,0,0];switch(a.type){case"CIMSolidFill":case"CIMPictureFill":case"CIMHatchFill":case"CIMGradientFill":break;case"CIMSolidStroke":case"CIMPictureStroke":case"CIMGradientStroke":{const t=a;let s=t.width;t.capStyle===d["p"].Square||t.joinStyle===d["r"].Miter?s/=1.4142135623730951:s/=2,e[0]=-s,e[1]=-s,e[2]=s,e[3]=s;break}case"CIMCharacterMarker":case"CIMVectorMarker":case"CIMPictureMarker":{const t=a;if("CIMVectorMarker"===a.type){const t=a;if(e=this._vectorMarkerBounds(e,t,s,r),t.frame){const s=(t.frame.xmin+t.frame.xmax)/2,i=(t.frame.ymin+t.frame.ymax)/2;e[0]-=s,e[1]-=i,e[2]-=s,e[3]-=i;const r=t.size/(t.frame.ymax-t.frame.ymin);e[0]*=r,e[1]*=r,e[2]*=r,e[3]*=r}}else if("CIMPictureMarker"===a.type){const i=a,r=s.getResource(i.url);let n=1;Object(c["k"])(r)&&r.height&&(n=r.width/r.height);const o=t.size/2,h=t.size*n*i.scaleX/2;e=[-h,-o,h,o]}else{const s=t.size/2;e=[-s,-s,s,s]}if(t.anchorPoint){let s,i;"Absolute"===t.anchorPointUnits?(s=t.anchorPoint.x,i=t.anchorPoint.y):(s=t.anchorPoint.x*(e[2]-e[0]),i=t.anchorPoint.y*(e[3]-e[1])),e[0]-=s,e[1]-=i,e[2]-=s,e[3]-=i}let n=Object(m["f"])(t.rotation);if(t.rotateClockwise&&(n=-n),i&&(n-=i),n){const t=C*n,s=Math.cos(t),i=Math.sin(t),r=Object(u["l"])([g["c"],g["c"],-g["c"],-g["c"]]);Object(u["q"])(r,[e[0]*s-e[1]*i,e[0]*i+e[1]*s]),Object(u["q"])(r,[e[0]*s-e[3]*i,e[0]*i+e[3]*s]),Object(u["q"])(r,[e[2]*s-e[1]*i,e[2]*i+e[1]*s]),Object(u["q"])(r,[e[2]*s-e[3]*i,e[2]*i+e[3]*s]),e=r}let o=Object(m["f"])(t.offsetX),h=Object(m["f"])(t.offsetY);if(i){const t=C*i,e=Math.cos(t),s=Math.sin(t),r=o*s+h*e;o=o*e-h*s,h=r}e[0]+=o,e[1]+=h,e[2]+=o,e[3]+=h;const l=L(t.markerPlacement);l>0&&(e[0]-=l,e[1]-=l,e[2]+=l,e[3]+=l);break}}const o=I(a.effects);o>0&&(e[0]-=o,e[1]-=o,e[2]+=o,e[3]+=o),n?(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],n=!1):(t[0]=Math.min(t[0],e[0]),t[1]=Math.min(t[1],e[1]),t[2]=Math.max(t[2],e[2]),t[3]=Math.max(t[3],e[3]))}return t}_getTextInflatedSize(t,e,s){var i,n;const a=null!=(i=e.height)?i:S;if(t[0]=-a/2,t[1]=-a/2,t[2]=a/2,t[3]=a/2,!s)return t;const o=s.get(e);if(!o)return t;const{text:h,mosaicItem:c}=o;if(!c||0===c.glyphMosaicItems.length)return t;const l=Object(p["f"])(e.lineGapType,null!=(n=e.lineGap)?n:0,a),u=Object(r["a"])(h)[1],f=c.glyphMosaicItems,_=Object(y["a"])(f,u,{scale:a/b["r"],angle:Object(m["f"])(e.angle),xOffset:Object(m["f"])(e.offsetX),yOffset:Object(m["f"])(e.offsetY),hAlign:Object(p["e"])(e.horizontalAlignment),vAlign:Object(p["g"])(e.verticalAlignment),maxLineWidth:512,lineHeight:b["u"]*Math.max(.25,Math.min(l||1,4)),decoration:e.font.decoration||"none",isCIM:!0}).boundsT;return t[0]=_.x-_.halfWidth,t[1]=-_.y-_.halfHeight,t[2]=_.x+_.halfWidth,t[3]=-_.y+_.halfHeight,t}}class j{static getEnvelope(t,e){const s=new p["b"](e);if(Array.isArray(t)){let e;for(const i of t)e?e.union(T(s,i)):e=T(s,i);return e}return T(s,t)}static getTextureAnchor(t,e){const s=this.getEnvelope(t,e);if(!s)return[0,0,0];const i=(s.x+.5*s.width)*w,r=-(s.y+.5*s.height)*w,n=s.width*w+2,a=s.height*w+2;return[i/n,r/a,a]}static rasterize(t,e,s,i,r=!0){const n=s||this.getEnvelope(e,i);if(!n)return[null,0,0,0,0];const a=(n.x+.5*n.width)*w,o=(n.y+.5*n.height)*w;t.width=n.width*w,t.height=n.height*w,s||(t.width+=2,t.height+=2);const h=t.getContext("2d"),c=p["d"].createScale(w,-w);c.translate(.5*t.width-a,.5*t.height+o);const l=new p["a"](h,i,c);switch(e.type){case"CIMPointSymbol":{const t={type:"point",x:0,y:0};l.drawSymbol(e,t);break}case"CIMVectorMarker":{const t=new _["a"];l.drawMarker(e,t);break}}const u=h.getImageData(0,0,t.width,t.height),f=new Uint8Array(u.data);if(r){let t;for(let e=0;e.667?Object(l["g"])(Math.round(Object(l["h"])(e.width))):e.width,color:H(e.color)})}else!e||"line-marker"!==t.type||"cross"!==t.style&&"x"!==t.style||s.push({type:"CIMSolidStroke",enable:!0,width:e,color:H(n)});s.push({type:"CIMSolidFill",enable:!0,color:H(n)});const i={type:"CIMPolygonSymbol",symbolLayers:s};h={type:"CIMPointSymbol",symbolLayers:[{type:"CIMVectorMarker",enable:!0,rotation:Object(m["f"])(-t.angle),size:Object(m["f"])(t.size||6*e),offsetX:Object(m["f"])(t.xoffset),offsetY:Object(m["f"])(t.yoffset),frame:a,markerGraphics:[{type:"CIMMarkerGraphic",geometry:o,symbol:i}]}]}}return h}static fromCIMHatchFill(t){var e;const s=null!=(e=t.separation)?e:M,i=s/2,r=4;let n=this._getLineSymbolPeriod(t.lineSymbol)||r;for(;n({type:"CIMMarkerGraphic",geometry:t,symbol:{type:"CIMPointSymbol",symbolLayers:[s]}}))):(r=e.stepX/2,n=e.stepY/2,a=e.stepY,i=[{type:"CIMMarkerGraphic",geometry:{x:0,y:0},symbol:{type:"CIMPointSymbol",symbolLayers:[s]}}]),{type:"CIMVectorMarker",frame:{xmin:-r,xmax:r,ymin:-n,ymax:n},markerGraphics:i,size:a}}static getFillColor(t){if(!t)return null;switch(t.type){case"CIMPolygonSymbol":if(t.symbolLayers)for(const e of t.symbolLayers){const t=j.getFillColor(e);if(null!=t)return t}break;case"CIMTextSymbol":return j.getFillColor(t.symbol);case"CIMSolidFill":return t.color}}static getStrokeColor(t){if(t)switch(t.type){case"CIMPolygonSymbol":case"CIMLineSymbol":if(t.symbolLayers)for(const e of t.symbolLayers){const t=j.getStrokeColor(e);if(void 0!==t)return t}break;case"CIMTextSymbol":return j.getStrokeColor(t.symbol);case"CIMSolidStroke":return t.color}}static getStrokeWidth(t){if(t)switch(t.type){case"CIMPolygonSymbol":case"CIMLineSymbol":if(t.symbolLayers)for(const e of t.symbolLayers){const t=j.getStrokeWidth(e);if(void 0!==t)return t}break;case"CIMTextSymbol":return j.getStrokeWidth(t.symbol);case"CIMSolidStroke":case"CIMGradientStroke":case"CIMPictureStroke":return t.width}}static getSize(t){if(t)switch(t.type){case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":{let e=0;if(t.symbolLayers)for(const s of t.symbolLayers){const t=j.getSize(s);t>e&&(e=t)}return e}case"CIMSolidStroke":case"CIMPictureStroke":case"CIMGradientStroke":return t.width;case"CIMCharacterMarker":case"CIMPictureMarker":case"CIMVectorMarker":return t.size}}static getMarkerScaleRatio(t){if(t&&"CIMVectorMarker"===t.type&&!1!==t.scaleSymbolsProportionally&&t.frame){const e=t.frame.ymax-t.frame.ymin;return t.size/e}return 1}}class F{static rasterizeSimpleFill(t,e,s){"solid"!==e&&"none"!==e&&"esriSFSSolid"!==e&&"esriSFSNull"!==e||console.error("Unexpected: style does not require rasterization");const i=Object(h["o"])(Math.ceil(s)),r=W(e)?8*i:16*i,n=2*i;t.width=r,t.height=r;const a=t.getContext("2d");a.strokeStyle="#FFFFFF",a.lineWidth=i,a.beginPath(),"vertical"!==e&&"cross"!==e&&"esriSFSCross"!==e&&"esriSFSVertical"!==e||(a.moveTo(r/2,-n),a.lineTo(r/2,r+n)),"horizontal"!==e&&"cross"!==e&&"esriSFSCross"!==e&&"esriSFSHorizontal"!==e||(a.moveTo(-n,r/2),a.lineTo(r+n,r/2)),"forward-diagonal"!==e&&"diagonal-cross"!==e&&"esriSFSDiagonalCross"!==e&&"esriSFSForwardDiagonal"!==e||(a.moveTo(-n,-n),a.lineTo(r+n,r+n),a.moveTo(r-n,-n),a.lineTo(r+n,n),a.moveTo(-n,r-n),a.lineTo(n,r+n)),"backward-diagonal"!==e&&"diagonal-cross"!==e&&"esriSFSBackwardDiagonal"!==e&&"esriSFSDiagonalCross"!==e||(a.moveTo(r+n,-n),a.lineTo(-n,r+n),a.moveTo(n,-n),a.lineTo(-n,n),a.moveTo(r+n,r-n),a.lineTo(r-n,r+n)),a.stroke();const o=a.getImageData(0,0,t.width,t.height),c=new Uint8Array(o.data);let l;for(let h=0;ht?t.charAt(0).toLowerCase()+t.substr(1):t;if(t.primitiveName)for(const n of e)if(n.primitiveName===t.primitiveName){const e=r(n.propertyName);if(i&&i.push({cim:t,nocapPropertyName:e,value:t[e]}),n.expression&&(n.value=z.toValue(n.propertyName,n.expression)),s){let e=!1;for(const i of s)i.primitiveName===t.primitiveName&&(e=!0);e||s.push(n)}t[e]=n.value}switch(t.type){case"CIMPointSymbol":case"CIMLineSymbol":case"CIMPolygonSymbol":if(t.effects)for(const r of t.effects)z.applyOverrides(r,e,s,i);if(t.symbolLayers)for(const r of t.symbolLayers)z.applyOverrides(r,e,s,i);break;case"CIMTextSymbol":break;case"CIMSolidStroke":case"CIMSolidFill":case"CIMVectorMarker":if(t.effects)for(const r of t.effects)z.applyOverrides(r,e,s,i);if("CIMVectorMarker"===t.type&&t.markerGraphics)for(const r of t.markerGraphics)z.applyOverrides(r,e,s,i),z.applyOverrides(r.symbol,e,s,i)}}static restoreOverrides(t){for(const e of t)e.cim[e.nocapPropertyName]=e.value}static buildOverrideKey(t){let e="";for(const s of t)void 0!==s.value&&(e+=`${s.primitiveName}${s.propertyName}${JSON.stringify(s.value)}`);return e}static toValue(t,e){if("DashTemplate"===t)return e.split(" ").map(t=>Number(t));if("Color"===t){const t=new i["a"](e).toRgba();return t[3]*=255,t}return e}}const R=t=>{if(!t)return d["p"].Butt;switch(t){case"butt":return d["p"].Butt;case"square":return d["p"].Square;case"round":return d["p"].Round}},E=t=>{if(!t)return d["r"].Miter;switch(t){case"miter":return d["r"].Miter;case"round":return d["r"].Round;case"bevel":return d["r"].Bevel}},G=t=>{if(!t)return"Center";switch(t){case"left":return"Left";case"right":return"Right";case"center":return"Center";case"justify":return"Justify"}},B=t=>{if(!t)return"Center";switch(t){case"baseline":return"Baseline";case"top":return"Top";case"middle":return"Center";case"bottom":return"Bottom"}},H=t=>{if(!t)return[0,0,0,0];const{r:e,g:s,b:i,a:r}=t;return[e,s,i,255*r]},D=(t,e)=>{const s=N(e),i=U(t);return s&&i?`${s}-${i}`:`${s}${i}`},N=t=>{if(!t)return"";switch(t.toLowerCase()){case"bold":case"bolder":return"bold"}return""},U=t=>{if(!t)return"";switch(t.toLowerCase()){case"italic":case"oblique":return"italic"}return""},V=(t,e)=>{const s="butt"===e;switch(t){case"dash":case"esriSLSDash":return s?[4,3]:[3,4];case"dash-dot":case"esriSLSDashDot":return s?[4,3,1,3]:[3,4,0,4];case"dot":case"esriSLSDot":return s?[1,3]:[0,4];case"long-dash":case"esriSLSLongDash":return s?[8,3]:[7,4];case"long-dash-dot":case"esriSLSLongDashDot":return s?[8,3,1,3]:[7,4,0,4];case"long-dash-dot-dot":case"esriSLSDashDotDot":return s?[8,3,1,3,1,3]:[7,4,0,4,0,4];case"short-dash":case"esriSLSShortDash":return s?[4,1]:[3,2];case"short-dash-dot":case"esriSLSShortDashDot":return s?[4,1,1,1]:[3,2,0,2];case"short-dash-dot-dot":case"esriSLSShortDashDotDot":return s?[4,1,1,1,1,1]:[3,2,0,2,0,2];case"short-dot":case"esriSLSShortDot":return s?[1,1]:[0,2];case"solid":case"esriSLSSolid":case"none":return k.error("Unexpected: style does not require rasterization"),[0,0];default:return k.error(`Tried to rasterize SLS, but found an unexpected style: ${t}!`),[0,0]}};function X(t){return void 0!==t.symbolLayers}const Y=t=>{const e=100,s=50;let i,r;const n=t;if("circle"===n||"esriSMSCircle"===n){const t=.25;let e=Math.acos(1-t/s),n=Math.ceil(x/e/4);0===n&&(n=1),e=P/n,n*=4;const a=[];a.push([s,0]);for(let i=1;i"vertical"===t||"horizontal"===t||"cross"===t||"esriSFSCross"===t||"esriSFSVertical"===t||"esriSFSHorizontal"===t},9344:function(t,e,s){"use strict";s.d(e,"a",(function(){return pt})),s.d(e,"b",(function(){return dt}));var i=s("7ffa"),r=s("a9ab"),n=s("b6a7");class a{static local(){return null===a.instance&&(a.instance=new a),a.instance}execute(t,e,s,i){return new o(t,e,s)}}a.instance=null;class o{constructor(t,e,s){this._inputGeometries=t,this._angleTolerance=void 0!==e.angleTolerance?e.angleTolerance:120,this._maxCosAngle=Math.cos((1-Math.abs(this._angleTolerance)/180)*Math.PI)}next(){let t=this._inputGeometries.next();for(;t;){if(Object(r["g"])(t)){this._isClosed=!0;const e=Object(i["a"])(t);return this._processMultipath(e.rings),e}if(Object(r["h"])(t)){this._isClosed=!1;const e=Object(i["a"])(t);return this._processMultipath(e.paths),e}if(Object(r["d"])(t)){if(this._maxCosAngle)return t;this._isClosed=!0;const e=[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]];return this._processPath(e),{rings:[e]}}t=this._inputGeometries.next()}return null}_processMultipath(t){if(t)for(const e of t)this._processPath(e)}_processPath(t){if(t){let e,s,i,r,a,o,h=t.length,c=t[0];this._isClosed&&++h;for(let l=1;l1&&p>0&&i>0&&(e*f+s*_)/p/i<=this._maxCosAngle&&Object(n["j"])(c,1),1===l&&(r=f,a=_,o=p),p>0&&(c=u,e=f,s=_,i=p)}this._isClosed&&i>0&&o>0&&(e*r+s*a)/o/i<=this._maxCosAngle&&Object(n["j"])(t[0],1)}}}var h=s("ab39");const c=.03;class l{constructor(){this._path=[]}path(){return this._path}addPath(t,e){e||t.reverse(),Array.prototype.push.apply(this._path,t),e||t.reverse()}static mergePath(t,e){e&&Array.prototype.push.apply(t,e)}startPath(t){this._path.push(t)}lineTo(t){this._path.push(t)}close(){const t=this._path;t.length>1&&(t[0][0]===t[t.length-1][0]&&t[0][1]===t[t.length-1][1]||t.push([t[0][0],t[0][1]]))}}class u{constructor(t=0,e=!1){}normalize(t){const e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);t[0]/=e,t[1]/=e}calculateLength(t,e){const s=e[0]-t[0],i=e[1]-t[1];return Math.sqrt(s*s+i*i)}calculateSegLength(t,e){return this.calculateLength(t[e],t[e+1])}calculatePathLength(t){let e=0;const s=t?t.length:0;for(let i=0;i0?[i/n,r/n]:[1,0]}getSegAngleCS(t,e,s){return this.getAngleCS(t[e],t[e+1],s)}cut(t,e,s,i){return[s<=0?t[e]:this.getSegCoord2D(t,e,s),i>=1?t[e+1]:this.getSegCoord2D(t,e,i)]}addSegment(t,e,s){s&&t.push(e[0]),t.push(e[1])}getSubCurve(t,e,s){const i=[];return this.appendSubCurve(i,t,e,s)?i:null}appendSubCurve(t,e,s,i){const r=e?e.length-1:0;let n=0,a=!0,o=0;for(;os){const h=(s-n)/r;let c=1,l=!1;n+r>=i&&(c=(i-n)/r,l=!0);const u=this.cut(e,o,h,c);if(u&&this.addSegment(t,u,a),l)break;a=!1}}else{if(n+r>i){const s=this.cut(e,o,0,(i-n)/r);s&&this.addSegment(t,s,a);break}this.addSegment(t,[e[o],e[o+1]],a)}n+=r,++o}else++o}return!0}getCIMPointAlong(t,e){const s=t?t.length-1:0;let i=0,r=-1;for(;re){const n=(e-i)/s;return this.getCoord2D(t[r],t[r+1],n)}i+=s}}return null}isEmpty(t,e){if(!t||t.length<=1)return!0;const s=t?t.length-1:0;let i=-1;for(;i=0==e<=0){if(c<1){const s=[t[0]-n[0],t[1]-n[1]];this.normalize(s);const r=Math.sqrt((1+c)/2);if(r>1/i){const t=-Math.abs(e)/r;l.push([u[0]-s[0]*t,u[1]-s[1]*t])}}}else switch(s){case h["l"].Mitered:{const s=Math.sqrt((1+c)/2);if(s>0&&1/s0){const i=1/s;let r=i;for(let a=1;a0){const e=[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]],s=this._curveHelper.offset(e,this._size,h["l"].Rounded,4,this._offsetFlattenError);if(s)return{rings:[s]}}else{if(!(this._size<0))return t;if(Math.min(t.xmax-t.xmin,t.ymax-t.ymin)+2*this._size>0)return{xmin:t.xmin-this._size,xmax:t.xmax+this._size,ymin:t.ymin-this._size,ymax:t.ymax+this._size}}if(Object(r["g"])(t)){if(0===this._size)return t;const e=[];for(const s of t.rings){const t=this._curveHelper.offset(s,this._size,h["l"].Rounded,4,this._offsetFlattenError);t&&e.push(t)}if(e.length)return{rings:e}}if(Object(r["h"])(t)&&this._size>0){const e=[];for(const s of t.paths)if(s&&s.length>1){const t=this._curveHelper.offset(s,this._size,h["l"].Rounded,4,this._offsetFlattenError),i=this._curveHelper.offset(s,-this._size,h["l"].Rounded,4,this._offsetFlattenError);if(t&&i){for(let e=i.length-1;e>=0;e--)t.push(i[e]);t.push([t[0][0],t[0][1]]),e.push(t)}}if(e.length)return{rings:e}}Object(r["f"])(t)&&this._size,t=this._inputGeometries.next()}return null}}class y{static local(){return null===y.instance&&(y.instance=new y),y.instance}execute(t,e,s,i){return new x(t,e,s)}}y.instance=null;class x{constructor(t,e,s){var i;this._default_point_size=20,this._inputGeometries=t,this._geomUnitsPerPoint=s,this._rule=null!=(i=e.rule)?i:h["j"].FullGeometry,this._default_size=this._default_point_size*s}next(){let t;for(;t=this._inputGeometries.next();){let e;if(Object(r["f"])(t)?e=this._processGeom([[[t.x,t.y]]]):Object(r["e"])(t)?e=this._processGeom([t.points]):Object(r["h"])(t)?e=this._processGeom(t.paths):Object(r["g"])(t)&&(e=this._processGeom(t.rings)),e&&e.length)return{paths:e}}return null}_clone(t){return[t[0],t[1]]}_mid(t,e){return[(t[0]+e[0])/2,(t[1]+e[1])/2]}_mix(t,e,s,i){return[t[0]*e+s[0]*i,t[1]*e+s[1]*i]}_add(t,e){return[t[0]+e[0],t[1]+e[1]]}_add2(t,e,s){return[t[0]+e,t[1]+s]}_sub(t,e){return[t[0]-e[0],t[1]-e[1]]}_dist(t,e){return Math.sqrt((t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1]))}_norm(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}_normalize(t,e=1){const s=e/this._norm(t);t[0]*=s,t[1]*=s}_leftPerpendicular(t){const e=-t[1],s=t[0];t[0]=e,t[1]=s}_leftPerp(t){return[-t[1],t[0]]}_rightPerpendicular(t){const e=t[1],s=-t[0];t[0]=e,t[1]=s}_rightPerp(t){return[t[1],-t[0]]}_dotProduct(t,e){return t[0]*e[0]+t[1]*e[1]}_crossProduct(t,e){return t[0]*e[1]-t[1]*e[0]}_rotateDirect(t,e,s){const i=t[0]*e-t[1]*s,r=t[0]*s+t[1]*e;t[0]=i,t[1]=r}_makeCtrlPt(t){const e=[t[0],t[1]];return Object(n["j"])(e,1),e}_addAngledTicks(t,e,s,i){const r=this._sub(s,e);this._normalize(r);const n=this._crossProduct(r,this._sub(i,e));let a;a=n>0?this._rightPerp(r):this._leftPerp(r);const o=Math.abs(n)/2,h=[];h.push([e[0]+(a[0]-r[0])*o,e[1]+(a[1]-r[1])*o]),h.push(e),h.push(s),h.push([s[0]+(a[0]+r[0])*o,s[1]+(a[1]+r[1])*o]),t.push(h)}_addBezier2(t,e,s,i,r){if(0==r--)return void t.push(i);const n=this._mid(e,s),a=this._mid(s,i),o=this._mid(n,a);this._addBezier2(t,e,n,o,r),this._addBezier2(t,o,a,i,r)}_addBezier3(t,e,s,i,r,n){if(0==n--)return void t.push(r);const a=this._mid(e,s),o=this._mid(s,i),h=this._mid(i,r),c=this._mid(a,o),l=this._mid(o,h),u=this._mid(c,l);this._addBezier3(t,e,a,c,u,n),this._addBezier3(t,u,l,h,r,n)}_add90DegArc(t,e,s,i,r){const n=null!=r?r:this._crossProduct(this._sub(s,e),this._sub(i,e))>0,a=this._mid(e,s),o=this._sub(a,e);n?this._leftPerpendicular(o):this._rightPerpendicular(o),a[0]+=o[0],a[1]+=o[1],this._addBezier3(t,e,this._mix(e,.33333,a,.66667),this._mix(s,.33333,a,.66667),s,4)}_addArrow(t,e,s){const i=e[0],r=e[1],n=e[e.length-1],a=this._sub(i,r);this._normalize(a);const o=this._crossProduct(a,this._sub(n,r)),h=.5*o,c=this._leftPerp(a),l=[n[0]-c[0]*o,n[1]-c[1]*o],u=e.length-1,f=[];f.push(s?[-c[0],-c[1]]:c);let _=[-a[0],-a[1]];for(let p=1;p0;p--)t.push([e[p][0]+f[p][0]*h,e[p][1]+f[p][1]*h]);t.push([l[0]+f[0][0]*h,l[1]+f[0][1]*h]),t.push([l[0]+f[0][0]*o,l[1]+f[0][1]*o]),t.push(i),t.push([l[0]-f[0][0]*o,l[1]-f[0][1]*o]),t.push([l[0]-f[0][0]*h,l[1]-f[0][1]*h]);for(let p=1;p=2?t[1]:this._add2(t[0],e*this._default_size,s*this._default_size)}_cp3(t,e,s,i){if(t.length>=3)return t[2];const r=this._mix(t[0],1-s,e,s),n=this._sub(e,t[0]);return this._normalize(n),this._rightPerpendicular(n),[r[0]+n[0]*i*this._default_size,r[1]+n[1]*i*this._default_size]}_arrowPath(t){if(t.length>2)return t;const e=t[0],s=this._cp2(t,-4,0),i=this._sub(e,s);this._normalize(i);const r=this._rightPerp(i);return[e,s,[e[0]+(r[0]-i[0])*this._default_size,e[1]+(r[1]-i[1])*this._default_size]]}_arrowLastSeg(t){const e=t[0],s=this._cp2(t,-4,0);let i;if(t.length>=3)i=t[t.length-1];else{const t=this._sub(e,s);this._normalize(t);const r=this._rightPerp(t);i=[e[0]+(r[0]-t[0])*this._default_size,e[1]+(r[1]-t[1])*this._default_size]}return[s,i]}_processGeom(t){if(!t)return null;const e=[];for(const s of t){if(!s||0===s.length)continue;const t=s.length;let i=s[0];switch(this._rule){case h["j"].PerpendicularFromFirstSegment:{const t=this._cp2(s,0,-1),r=this._cp3(s,t,.5,4),n=[];n.push(r),n.push(this._mid(i,t)),e.push(n);break}case h["j"].ReversedFirstSegment:{const t=this._cp2(s,0,-1);e.push([t,i]);break}case h["j"].PerpendicularToSecondSegment:{const t=this._cp2(s,-4,1),r=this._cp3(s,t,.882353,-1.94),n=[];n.push(this._mid(t,r)),n.push(i),e.push(n);break}case h["j"].SecondSegmentWithTicks:{const t=this._cp2(s,-4,1),r=this._cp3(s,t,.882353,-1.94),n=this._sub(r,t);let a;a=this._crossProduct(n,this._sub(i,t))>0?this._rightPerp(a):this._leftPerp(n);const o=[];o.push([t[0]+(a[0]-n[0])/3,t[1]+(a[1]-n[1])/3]),o.push(t),o.push(r),o.push([r[0]+(a[0]+n[0])/3,r[1]+(a[1]+n[1])/3]),e.push(o);break}case h["j"].DoublePerpendicular:{const t=this._cp2(s,0,-1),r=this._cp3(s,t,.5,3),n=this._mid(i,t),a=this._sub(n,r);this._normalize(a);const o=this._crossProduct(a,this._sub(i,r));this._leftPerpendicular(a);const h=[];h.push(i),h.push([r[0]+a[0]*o,r[1]+a[1]*o]),e.push(h);const c=[];c.push([r[0]-a[0]*o,r[1]-a[1]*o]),c.push(t),e.push(c);break}case h["j"].OppositeToFirstSegment:{const t=this._cp2(s,0,-1),r=this._cp3(s,t,.5,3),n=this._mid(i,t),a=this._sub(n,r);this._normalize(a);const o=this._crossProduct(a,this._sub(i,r));this._leftPerpendicular(a);const h=[];h.push([r[0]+a[0]*o,r[1]+a[1]*o]),h.push([r[0]-a[0]*o,r[1]-a[1]*o]),e.push(h);break}case h["j"].TriplePerpendicular:{const t=this._cp2(s,0,-1),r=this._cp3(s,t,.5,4),n=this._mid(i,t),a=this._sub(n,r);this._normalize(a);const o=this._crossProduct(a,this._sub(i,r));this._leftPerpendicular(a);const h=[];h.push([r[0]+a[0]*o*.8,r[1]+a[1]*o*.8]),h.push([n[0]+.8*(i[0]-n[0]),n[1]+.8*(i[1]-n[1])]),e.push(h),e.push([r,n]);const c=[];c.push([r[0]-a[0]*o*.8,r[1]-a[1]*o*.8]),c.push([n[0]+.8*(t[0]-n[0]),n[1]+.8*(t[1]-n[1])]),e.push(c);break}case h["j"].HalfCircleFirstSegment:{const t=this._cp2(s,0,-1),r=this._cp3(s,t,.5,4),n=this._mid(i,t);let a=this._sub(t,i);const o=Math.cos(Math.PI/18),h=Math.sin(Math.PI/18),c=Math.sqrt((1+o)/2),l=Math.sqrt((1-o)/2),u=[];let f;this._crossProduct(a,this._sub(r,i))>0?(u.push(i),a=this._sub(i,n),f=t):(u.push(t),a=this._sub(t,n),f=i),this._rotateDirect(a,c,l),a[0]/=c,a[1]/=c;for(let e=1;e<=18;e++)u.push(this._add(n,a)),this._rotateDirect(a,o,h);u.push(f),e.push(u);break}case h["j"].HalfCircleSecondSegment:{const t=this._cp2(s,0,-1),r=this._cp3(s,t,1,-1);let n=this._sub(i,t);this._normalize(n);const a=this._crossProduct(n,this._sub(r,t))/2;this._leftPerpendicular(n);const o=[t[0]+n[0]*a,t[1]+n[1]*a];n=this._sub(t,o);const h=Math.cos(Math.PI/18);let c=Math.sin(Math.PI/18);a>0&&(c=-c);const l=[t];for(let e=1;e<=18;e++)this._rotateDirect(n,h,c),l.push(this._add(o,n));e.push(l);break}case h["j"].HalfCircleExtended:{const r=this._cp2(s,0,-2),n=this._cp3(s,r,1,-1);let a;if(t>=4)a=s[3];else{const t=this._sub(i,r);a=this._add(n,t)}const o=this._dist(r,n)/2/.75,h=this._sub(r,i);this._normalize(h,o);const c=this._sub(n,a);this._normalize(c,o);const l=[a,n];e.push(l);const u=[this._clone(n)];this._addBezier3(u,n,this._add(n,c),this._add(r,h),r,4),u.push(i),e.push(u);break}case h["j"].OpenCircle:{const t=this._cp2(s,-2,0),r=this._sub(t,i),n=Math.cos(Math.PI/18),a=-Math.sin(Math.PI/18),o=[t];for(let e=1;e<=33;e++)this._rotateDirect(r,n,a),o.push(this._add(i,r));e.push(o);break}case h["j"].CoverageEdgesWithTicks:{const r=this._cp2(s,0,-1);let n,a;if(t>=3)n=s[2];else{const t=this._sub(r,i),e=this._leftPerp(t);n=[i[0]+e[0]-.25*t[0],i[1]+e[1]-.25*t[1]]}if(t>=4)a=s[3];else{const t=this._mid(i,r),e=this._sub(i,r);this._normalize(e),this._leftPerpendicular(e);const s=this._crossProduct(e,this._sub(n,t));this._rightPerpendicular(e),a=[n[0]+e[0]*s*2,n[1]+e[1]*s*2]}const o=this._sub(r,i);let h,c;h=this._crossProduct(o,this._sub(n,i))>0?this._rightPerp(o):this._leftPerp(o),c=[],c.push(n),c.push(i),c.push([i[0]+(h[0]-o[0])/3,i[1]+(h[1]-o[1])/3]),e.push(c),h=this._crossProduct(o,this._sub(a,r))>0?this._rightPerp(h):this._leftPerp(o),c=[],c.push([r[0]+(h[0]+o[0])/3,r[1]+(h[1]+o[1])/3]),c.push(r),c.push(a),e.push(c);break}case h["j"].GapExtentWithDoubleTicks:{const r=this._cp2(s,0,2),n=this._cp3(s,r,0,1);let a;if(t>=4)a=s[3];else{const t=this._sub(r,i);a=this._add(n,t)}this._addAngledTicks(e,i,r,this._mid(n,a)),this._addAngledTicks(e,n,a,this._mid(i,r));break}case h["j"].GapExtentMidline:{const r=this._cp2(s,2,0),n=this._cp3(s,r,0,1);let a;if(t>=4)a=s[3];else{const t=this._sub(r,i);a=this._add(n,t)}const o=[];o.push(this._mid(i,n)),o.push(this._mid(r,a)),e.push(o);break}case h["j"].Chevron:{const r=this._cp2(s,-1,-1);let n;if(t>=3)n=s[2];else{const t=this._sub(r,i);this._leftPerpendicular(t),n=this._add(i,t)}e.push([r,this._makeCtrlPt(i),n]);break}case h["j"].PerpendicularWithArc:{const t=this._cp2(s,0,-2),r=this._cp3(s,t,.5,-1);let n=this._sub(t,i);const a=this._norm(n);n[0]/=a,n[1]/=a;const o=this._crossProduct(n,this._sub(r,i));let h=this._dotProduct(n,this._sub(r,i));h<.05*a?h=.05*a:h>.95*a&&(h=.95*a);const c=[i[0]+n[0]*h,i[1]+n[1]*h];this._leftPerpendicular(n);let l=[];l.push([c[0]-n[0]*o,c[1]-n[1]*o]),l.push([c[0]+n[0]*o,c[1]+n[1]*o]),e.push(l);const u=[t[0]+n[0]*o,t[1]+n[1]*o];n=this._sub(t,u);const f=Math.cos(Math.PI/18);let _=Math.sin(Math.PI/18);o<0&&(_=-_),l=[i,t];for(let e=1;e<=9;e++)this._rotateDirect(n,f,_),l.push(this._add(u,n));e.push(l);break}case h["j"].ClosedHalfCircle:{const t=this._cp2(s,2,0),r=this._mid(i,t),n=this._sub(t,r),a=Math.cos(Math.PI/18),o=Math.sin(Math.PI/18),h=[i,t];for(let e=1;e<=18;e++)this._rotateDirect(n,a,o),h.push(this._add(r,n));e.push(h);break}case h["j"].TripleParallelExtended:{const t=this._cp2(s,0,-2),r=this._cp3(s,t,1,-2),a=this._mid(i,t),o=this._sub(r,t);this._normalize(o);const h=Math.abs(this._crossProduct(o,this._sub(a,t)))/2,c=this._dist(t,r),l=[t,i];l.push([i[0]+o[0]*c*.5,i[1]+o[1]*c*.5]),e.push(l);const u=[];u.push([a[0]-o[0]*h,a[1]-o[1]*h]),u.push([a[0]+o[0]*c*.375,a[1]+o[1]*c*.375]),Object(n["j"])(u[u.length-1],1),u.push([a[0]+o[0]*c*.75,a[1]+o[1]*c*.75]),e.push(u);const f=[t,r];e.push(f);break}case h["j"].ParallelWithTicks:{const t=this._cp2(s,3,0),r=this._cp3(s,t,.5,-1),n=this._sub(r,t);this._normalize(n);const a=this._crossProduct(n,this._sub(r,i));this._leftPerpendicular(n),this._addAngledTicks(e,i,t,r),this._addAngledTicks(e,this._mix(i,1,n,a),this._mix(t,1,n,a),this._mid(i,t));break}case h["j"].Parallel:{const t=this._cp2(s,3,0),r=this._cp3(s,t,.5,-1),n=this._sub(t,i);this._normalize(n);const a=this._leftPerp(n),o=this._crossProduct(n,this._sub(r,i));let h=[i,t];e.push(h),h=[],h.push([i[0]+a[0]*o,i[1]+a[1]*o]),h.push([t[0]+a[0]*o,t[1]+a[1]*o]),e.push(h);break}case h["j"].PerpendicularToFirstSegment:{const t=this._cp2(s,3,0),r=this._cp3(s,t,.5,-1),n=this._mid(i,t),a=this._sub(t,i);this._normalize(a);const o=this._crossProduct(a,this._sub(r,i));this._leftPerpendicular(a);const h=[];h.push([n[0]-a[0]*o*.25,n[1]-a[1]*o*.25]),h.push([n[0]+a[0]*o*1.25,n[1]+a[1]*o*1.25]),e.push(h);break}case h["j"].ParallelOffset:{const t=this._cp2(s,3,0),r=this._cp3(s,t,.5,-1),n=this._sub(t,i);this._normalize(n);const a=this._crossProduct(n,this._sub(r,i));this._leftPerpendicular(n);const o=[];o.push([i[0]-n[0]*a,i[1]-n[1]*a]),o.push([t[0]-n[0]*a,t[1]-n[1]*a]),e.push(o);const h=[];h.push([i[0]+n[0]*a,i[1]+n[1]*a]),h.push([t[0]+n[0]*a,t[1]+n[1]*a]),e.push(h);break}case h["j"].OffsetOpposite:{const t=this._cp2(s,3,0),r=this._cp3(s,t,.5,-1),n=this._sub(t,i);this._normalize(n);const a=this._crossProduct(n,this._sub(r,i));this._leftPerpendicular(n);const o=[];o.push([i[0]-n[0]*a,i[1]-n[1]*a]),o.push([t[0]-n[0]*a,t[1]-n[1]*a]),e.push(o);break}case h["j"].OffsetSame:{const t=this._cp2(s,3,0),r=this._cp3(s,t,.5,-1),n=this._sub(t,i);this._normalize(n);const a=this._crossProduct(n,this._sub(r,i));this._leftPerpendicular(n);const o=[];o.push([i[0]+n[0]*a,i[1]+n[1]*a]),o.push([t[0]+n[0]*a,t[1]+n[1]*a]),e.push(o);break}case h["j"].CircleWithArc:{let r=this._cp2(s,3,0);const a=this._cp3(s,r,.5,-1);let o,h;if(t>=4)o=s[3],h=this._crossProduct(this._sub(o,r),this._sub(a,r))>0;else{o=r,h=this._crossProduct(this._sub(o,i),this._sub(a,i))>0;const t=24*this._geomUnitsPerPoint,e=this._sub(o,i);this._normalize(e,t);const s=Math.sqrt(2)/2;this._rotateDirect(e,s,h?s:-s),r=this._add(i,e)}const c=this._sub(r,i),l=Math.cos(Math.PI/18),u=Math.sin(Math.PI/18),f=[r];for(let t=1;t<=36;t++)this._rotateDirect(c,l,u),f.push(this._add(i,c));this._add90DegArc(f,r,o,a,h),Object(n["j"])(f[f.length-8],1),e.push(f);break}case h["j"].DoubleJog:{let r,n,a=this._cp2(s,-3,1);if(r=t>=3?s[2]:this._add(i,this._sub(i,a)),t>=4)n=s[3];else{const t=i;i=a,n=r;const e=this._dist(i,t),s=this._dist(n,t);let o=30*this._geomUnitsPerPoint;.5*e0?this._rotateDirect(_,f,-f):this._rotateDirect(_,f,f);let p=[];p.push(a),p.push(this._add(o,_)),p.push(this._sub(o,_)),p.push(i),e.push(p),_=this._sub(n,r),this._normalize(_,u),this._crossProduct(_,this._sub(i,r))<0?this._rotateDirect(_,f,f):this._rotateDirect(_,f,-f),p=[],p.push(r),p.push(this._add(h,_)),p.push(this._sub(h,_)),p.push(n),e.push(p);break}case h["j"].PerpendicularOffset:{const t=this._cp2(s,-4,1),r=this._cp3(s,t,.882353,-1.94),n=this._sub(r,t);this._crossProduct(n,this._sub(i,t))>0?this._rightPerpendicular(n):this._leftPerpendicular(n);const a=[n[0]/8,n[1]/8],o=this._sub(this._mid(t,r),a);e.push([o,i]);break}case h["j"].LineExcludingLastSegment:{const t=this._arrowPath(s),i=[];let r=t.length-2;for(;r--;)i.push(t[r]);e.push(i);break}case h["j"].MultivertexArrow:{const t=this._arrowPath(s),i=[];this._addArrow(i,t,!1),e.push(i);break}case h["j"].CrossedArrow:{const t=this._arrowPath(s),i=[];this._addArrow(i,t,!0),e.push(i);break}case h["j"].ChevronArrow:{const[t,r]=this._arrowLastSeg(s),n=10*this._geomUnitsPerPoint,a=this._sub(i,t);this._normalize(a);const o=this._crossProduct(a,this._sub(r,t)),h=this._leftPerp(a),c=[r[0]-h[0]*o*2,r[1]-h[1]*o*2],l=[];l.push([r[0]+a[0]*n,r[1]+a[1]*n]),l.push(i),l.push([c[0]+a[0]*n,c[1]+a[1]*n]),e.push(l);break}case h["j"].ChevronArrowOffset:{const[t,r]=this._arrowLastSeg(s),n=this._sub(i,t);this._normalize(n);const a=this._crossProduct(n,this._sub(r,t));this._leftPerpendicular(n);const o=[r[0]-n[0]*a,r[1]-n[1]*a],h=[];h.push([o[0]+n[0]*a*.5,o[1]+n[1]*a*.5]),h.push(this._mid(o,i)),h.push([o[0]-n[0]*a*.5,o[1]-n[1]*a*.5]),e.push(h);break}case h["j"].PartialFirstSegment:{const[t,r]=this._arrowLastSeg(s),n=this._sub(i,t);this._normalize(n);const a=this._crossProduct(n,this._sub(r,t));this._leftPerpendicular(n);const o=[r[0]-n[0]*a,r[1]-n[1]*a];e.push([t,o]);break}case h["j"].Arch:{const t=this._cp2(s,0,-1),r=this._cp3(s,t,.5,1),n=this._sub(i,t),a=this._mix(r,1,n,.55),o=this._mix(r,1,n,-.55),h=[i];this._addBezier2(h,i,a,r,4),this._addBezier2(h,r,o,t,4),e.push(h);break}case h["j"].CurvedParallelTicks:{const t=this._cp2(s,-4,1),r=this._cp3(s,t,.882353,-1.94),n=this._sub(r,t);this._crossProduct(n,this._sub(i,t))>0?this._rightPerpendicular(n):this._leftPerpendicular(n);const a=[n[0]/8,n[1]/8],o=this._sub(this._mid(t,r),a),h=this._sub(this._mix(t,.75,r,.25),a),c=this._sub(this._mix(t,.25,r,.75),a),l=[t];this._addBezier2(l,t,h,o,3),this._addBezier2(l,o,c,r,3),e.push(l);for(let s=0;s<8;s++){const t=l[2*s+1],i=[this._clone(t)];i.push(this._add(t,[n[0]/4,n[1]/4])),e.push(i)}break}case h["j"].Arc90Degrees:{const t=this._cp2(s,0,-1),r=this._cp3(s,t,.5,1),n=[t];this._add90DegArc(n,t,i,r),e.push(n);break}case h["j"].FullGeometry:default:e.push(s)}}return e}}class P{static local(){return null===P.instance&&(P.instance=new P),P.instance}execute(t,e,s,i){return new M(t,e,s)}}P.instance=null;class M extends n["a"]{constructor(t,e,s){super(t,!0,!0),this._curveHelper=new u,this._beginCut=(void 0!==e.beginCut?e.beginCut:1)*s,this._endCut=(void 0!==e.endCut?e.endCut:1)*s,this._middleCut=(void 0!==e.middleCut?e.middleCut:0)*s,this._invert=void 0!==e.invert&&e.invert,this._beginCut<0&&(this._beginCut=0),this._endCut<0&&(this._endCut=0),this._middleCut<0&&(this._middleCut=0)}processPath(t){const e=this._beginCut,s=this._endCut,i=this._middleCut,r=this._curveHelper.calculatePathLength(t),n=[];if(this._invert)if(0===e&&0===s&&0===i);else if(e+s+i>=r)n.push(t);else{let a=this._curveHelper.getSubCurve(t,0,e);a&&n.push(a),a=this._curveHelper.getSubCurve(t,.5*(r-i),.5*(r+i)),a&&n.push(a),a=this._curveHelper.getSubCurve(t,r-s,s),a&&n.push(a)}else if(0===e&&0===s&&0===i)n.push(t);else if(e+s+i>=r);else if(0===i){const i=this._curveHelper.getSubCurve(t,e,r-s);i&&n.push(i)}else{let a=this._curveHelper.getSubCurve(t,e,.5*(r-i));a&&n.push(a),a=this._curveHelper.getSubCurve(t,.5*(r+i),r-s),a&&n.push(a)}return 0===n.length?null:{paths:n}}}const S=1e-7;class w{constructor(){this._values=[],this.extPtGap=0,this.ctrlPtGap=0,this._length=0,this._currentValue=0}isEmpty(){return 0===this._values.length}size(){return this._values.length}init(t,e,s=!0){if(this._setEmpty(),!t||0===t.length)return!1;for(let i=0;i0&&(r/=this._currentPosition.segmentLength),this._currentPosition.copyTo(e);e.abscissa+t*this._partLengthRatio>e.segmentLength+this._tolerance;){if(s){if(0===s.length)if(0===r){const t=this._path[e.segment];s.push([t[0],t[1]])}else s.push(this.getSegCoord2D(this._path,e.segment,r));const t=this._path[e.segment+1];s.push([t[0],t[1]])}if(r=0,t-=(e.segmentLength-e.abscissa)/this._partLengthRatio,this._partSegCount)e.segment=this._nextSegment(),e.segmentLength=this.calculateSegLength(this._path,e.segment),e.abscissa=0,this._partSegCount--;else{if(!this._setPosAtNextPart())return i!==C.FAIL&&(e.segmentLength=this.calculateSegLength(this._path,e.segment),e.isPartEnd=!0,i===C.END?(e.abscissa=e.segmentLength,e.isPathEnd=!0):e.abscissa=e.segmentLength+t,!0);this._currentPosition.copyTo(e)}}if(e.abscissa+=t*this._partLengthRatio,s){if(0===s.length)if(0===r){const t=this._path[e.segment];s.push([t[0],t[1]])}else s.push(this.getSegCoord2D(this._path,e.segment,r));const t=e.abscissa/e.segmentLength;if(1===t){const t=this._path[e.segment+1];s.push([t[0],t[1]])}else s.push(this.getSegCoord2D(this._path,e.segment,t))}return this._partSegCount||Math.abs(e.abscissa-e.segmentLength)=this._path.length&&(s=0),this._ctrlPtEnd=1===Object(n["f"])(this._path[s]),this._patternLength>0){const t=this._ctrlPtBegin?this._partCtrlPtGap:this._partExtPtGap,e=this._ctrlPtEnd?this._partCtrlPtGap:this._partExtPtGap;let s=Math.round((this._partLength-(t+e))/this._patternLength);s<=0&&(s=t+e>0?0:1),this._partLengthRatio=this._partLength/(t+e+s*this._patternLength),this._partLengthRatio<.01&&(this._partLengthRatio=1)}else this._partLengthRatio=1;return!0}_hasNextSegment(){return this._seg=e;)t-=e,e=this._pattern.nextValue(),i=!i;e-=t,i?(this._walker.nextPosition(e),e=this._pattern.nextValue()):this.isClosed&&(this._firstCurve=this._walker.nextCurve(e),e=this._pattern.nextValue(),this._walker.nextPosition(e),e=this._pattern.nextValue())}let s=this._walker.nextCurve(e);return s?this._walker.isPathEnd()?(this.iteratePath=!1,this._firstCurve&&(this._firstCurve.splice(0,1),l.mergePath(s,this._firstCurve),this._firstCurve=null)):(e=this._pattern.nextValue(),!this._walker.nextPosition(e)||this._walker.isPathEnd()?(this.iteratePath=!1,this._firstCurve&&(s=this._firstCurve,this._firstCurve=null)):this.iteratePath=!0):(this.iteratePath=!1,s=this._firstCurve,this._firstCurve=null),{paths:[s]}}}class O{static local(){return null===O.instance&&(O.instance=new O),O.instance}execute(t,e,s,i){return new I(t,e,s)}}O.instance=null;class I{constructor(t,e,s){switch(this._inputGeometries=t,this._curveHelper=new u,this._width=(void 0!==e.width?e.width:2)*s,e.method){case h["k"].Mitered:default:this._method=h["l"].Mitered;break;case h["k"].Bevelled:this._method=h["l"].Bevelled;break;case h["k"].Rounded:case h["k"].TrueBuffer:this._method=h["l"].Rounded;break;case h["k"].Square:this._method=h["l"].Square}this._option=e.option,this._offsetFlattenError=c*s}next(){let t=this._inputGeometries.next();for(;t;){if(Object(r["d"])(t)&&this._width>0){if(Math.min(t.xmax-t.xmin,t.ymax-t.ymin)-2*this._width<0)return t;const e=[];return e.push([[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]]),e.push([[t.xmin+this._width,t.ymin+this._width],[t.xmax-this._width,t.ymin+this._width],[t.xmax-this._width,t.ymax-this._width],[t.xmin+this._width,t.ymax-this._width],[t.xmin+this._width,t.ymin+this._width]]),{rings:e}}if(Object(r["g"])(t)&&this._width>0){const e=[];for(const s of t.rings){const t=this._curveHelper.calculatePathLength(s),i=this._curveHelper.offset(s,this._width,this._method,4,this._offsetFlattenError);i&&(t<0&&i.reverse(),e.push(i))}if(e.length)return{rings:e}}t=this._inputGeometries.next()}return null}}class A{static local(){return null===A.instance&&(A.instance=new A),A.instance}execute(t,e,s,i){return new j(t,e,s)}}A.instance=null;class j extends n["a"]{constructor(t,e,s){super(t,!1,!0),this._curveHelper=new u,this._length=(void 0!==e.length?e.length:20)*s,this._angle=void 0!==e.angle?e.angle:225,this._position=void 0!==e.position?e.position:50,this._length<0&&(this._length=-this._length),this._position<20&&(this._position=20),this._position>80&&(this._position=80),this._mirror=!1}processPath(t){if(this._curveHelper.isEmpty(t,!1))return null;const e=t[0],s=t[t.length-1],i=[s[0]-e[0],s[1]-e[1]];this._curveHelper.normalize(i);const r=[e[0]+(s[0]-e[0])*this._position/100,e[1]+(s[1]-e[1])*this._position/100],n=Math.cos((90-this._angle)/180*Math.PI);let a=Math.sin((90-this._angle)/180*Math.PI);return this._mirror&&(a=-a),this._mirror=!this._mirror,{paths:[[e,[r[0]-this._length/2*n,r[1]-this._length/2*a],[r[0]+this._length/2*n,r[1]+this._length/2*a],s]]}}}class F{static local(){return null===F.instance&&(F.instance=new F),F.instance}execute(t,e,s,i){return new z(t,e,s)}}F.instance=null;class z{constructor(t,e,s){this._inputGeometries=t,this._offsetX=void 0!==e.offsetX?e.offsetX*s:0,this._offsetY=void 0!==e.offsetY?-e.offsetY*s:0}next(){let t=this._inputGeometries.next();for(;t;){if(Object(r["d"])(t))return{xmin:t.xmin+this._offsetX,xmax:t.xmax+this._offsetX,ymin:t.ymin+this._offsetY,ymax:t.ymax+this._offsetY};if(Object(r["g"])(t)){const e=Object(i["a"])(t);return this._moveMultipath(e.rings,this._offsetX,this._offsetY),e}if(Object(r["h"])(t)){const e=Object(i["a"])(t);return this._moveMultipath(e.paths,this._offsetX,this._offsetY),e}if(Object(r["e"])(t)){const e=Object(i["a"])(t);return this._movePath(e.points,this._offsetX,this._offsetY),e}if(Object(r["f"])(t))return{x:t.x+this._offsetX,y:t.y+this._offsetY};t=this._inputGeometries.next()}return null}_moveMultipath(t,e,s){if(t)for(const i of t)this._movePath(i,e,s)}_movePath(t,e,s){if(t)for(const i of t)i[0]+=e,i[1]+=s}}class R{static local(){return null===R.instance&&(R.instance=new R),R.instance}execute(t,e,s,i){return new E(t,e,s)}}R.instance=null;class E{constructor(t,e,s){var i;this._inputGeometries=t,this._curveHelper=new u,this._offset=(null!=(i=e.offset)?i:1)*s,this._method=e.method,this._option=e.option,this._offsetFlattenError=c*s}next(){let t=this._inputGeometries.next();for(;t;){if(0===this._offset)return t;if(Object(r["d"])(t)){if(this._method===h["l"].Rounded&&this._offset>0){const e=[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]],s=this._curveHelper.offset(e,-this._offset,this._method,4,this._offsetFlattenError);return s?{rings:[s]}:null}if(Math.min(t.xmax-t.xmin,t.ymax-t.ymin)+2*this._offset>0)return{xmin:t.xmin-this._offset,xmax:t.xmax+this._offset,ymin:t.ymin-this._offset,ymax:t.ymax+this._offset}}if(Object(r["g"])(t)){const e=[];for(const s of t.rings){const t=this._curveHelper.offset(s,-this._offset,this._method,4,this._offsetFlattenError);t&&e.push(t)}if(e.length)return{rings:e}}if(Object(r["h"])(t)){const e=[];for(const s of t.paths){const t=this._curveHelper.offset(s,-this._offset,this._method,4,this._offsetFlattenError);t&&e.push(t)}if(e.length)return{paths:e}}t=this._inputGeometries.next()}return null}}class G{static local(){return null===G.instance&&(G.instance=new G),G.instance}execute(t,e,s,i){return new B(t,e,s)}}G.instance=null;class B{constructor(t,e,s){this._inputGeometries=t,this._reverse=void 0===e.reverse||e.reverse}next(){let t=this._inputGeometries.next();for(;t;){if(!this._reverse)return t;if(Object(r["h"])(t)){const e=Object(i["a"])(t);return Object(n["h"])(e.paths),e}t=this._inputGeometries.next()}return null}}var H=s("9180"),D=s("28b1");class N{static local(){return null===N.instance&&(N.instance=new N),N.instance}execute(t,e,s,i){return new U(t,e,s)}}N.instance=null;class U{constructor(t,e,s){this._inputGeometries=t,this._rotateAngle=void 0!==e.angle?e.angle*Math.PI/180:0}next(){let t=this._inputGeometries.next();for(;t;){if(0===this._rotateAngle)return t;const e=Object(H["l"])();Object(D["a"])(e,t);const s=(e[2]+e[0])/2,n=(e[3]+e[1])/2;if(Object(r["d"])(t)){const e={rings:[[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]]]};return this._rotateMultipath(e.rings,s,n),e}if(Object(r["g"])(t)){const e=Object(i["a"])(t);return this._rotateMultipath(e.rings,s,n),e}if(Object(r["h"])(t)){const e=Object(i["a"])(t);return this._rotateMultipath(e.paths,s,n),e}if(Object(r["e"])(t)){const e=Object(i["a"])(t);return this._rotatePath(e.points,s,n),e}if(Object(r["f"])(t))return t;t=this._inputGeometries.next()}return null}_rotateMultipath(t,e,s){if(t)for(const i of t)this._rotatePath(i,e,s)}_rotatePath(t,e,s){if(t){const i=Math.cos(this._rotateAngle),r=Math.sin(this._rotateAngle);for(const n of t){const t=n[0]-e,a=n[1]-s;n[0]=e+t*i-a*r,n[1]=s+t*r+a*i}}}}class V{static local(){return null===V.instance&&(V.instance=new V),V.instance}execute(t,e,s,i){return new X(t,e,s)}}V.instance=null;class X{constructor(t,e,s){this._inputGeometries=t,this._xFactor=void 0!==e.xScaleFactor?e.xScaleFactor:1.15,this._yFactor=void 0!==e.yScaleFactor?e.yScaleFactor:1.15}next(){let t=this._inputGeometries.next();for(;t;){if(1===this._xFactor&&1===this._yFactor)return t;const e=Object(H["l"])();Object(D["a"])(e,t);const s=(e[2]+e[0])/2,n=(e[3]+e[1])/2;if(Object(r["d"])(t)){const e={rings:[[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]]]};return this._scaleMultipath(e.rings,s,n),e}if(Object(r["g"])(t)){const e=Object(i["a"])(t);return this._scaleMultipath(e.rings,s,n),e}if(Object(r["h"])(t)){const e=Object(i["a"])(t);return this._scaleMultipath(e.paths,s,n),e}if(Object(r["e"])(t)){const e=Object(i["a"])(t);return this._scalePath(e.points,s,n),e}if(Object(r["f"])(t))return t;t=this._inputGeometries.next()}return null}_scaleMultipath(t,e,s){if(t)for(const i of t)this._scalePath(i,e,s)}_scalePath(t,e,s){if(t)for(const i of t){const t=(i[0]-e)*this._xFactor,r=(i[1]-s)*this._yFactor;i[0]=e+t,i[1]=s+r}}}class Y{static local(){return null===Y.instance&&(Y.instance=new Y),Y.instance}execute(t,e,s,i){return new W(t,e,s)}}Y.instance=null;class W{constructor(t,e,s){this._inputGeometries=t,this._height=(void 0!==e.amplitude?e.amplitude:2)*s,this._period=(void 0!==e.period?e.period:3)*s,this._style=e.waveform,this._height<=0&&(this._height=Math.abs(this._height)),this._period<=0&&(this._period=Math.abs(this._period)),this._pattern=new w,this._pattern.addValue(this._period),this._pattern.addValue(this._period),this._walker=new v,this._walker.updateTolerance(s)}next(){let t=this._inputGeometries.next();for(;t;){if(0===this._height||0===this._period)return t;if(Object(r["h"])(t)){const e=this._processGeom(t.paths);if(e.length)return{paths:e}}if(Object(r["g"])(t)){const e=this._processGeom(t.rings);if(e.length)return{rings:e}}t=this._inputGeometries.next()}return null}_processGeom(t){const e=[];for(const s of t)if(this._walker.init(s,this._pattern))switch(this._style){case h["m"].Sinus:default:e.push(this._constructCurve(s,!1));break;case h["m"].Square:e.push(this._constructSquare(s));break;case h["m"].Triangle:e.push(this._constructTriangle(s));break;case h["m"].Random:e.push(this._constructCurve(s,!0))}else e.push(s);return e}_constructCurve(t,e){const s=new l,i=this._walker.calculatePathLength(t);let r=Math.round(i/this._period);0===r&&(r=1);const n=16*r+1,a=i/r,o=this._period/16,h=1/n,c=2*Math.PI*i/a,u=2*Math.PI*Math.random(),f=2*Math.PI*Math.random(),_=2*Math.PI*Math.random(),p=.75-Math.random()/2,d=.75-Math.random()/2,m={};this._walker.curPointAndAngle(m),s.startPath(m.pt);let g=0;for(;;){if(!this._walker.nextPointAndAngle(o,m)){s.lineTo(t[t.length-1]);break}{const t=g;let i;if(g+=h,e){const e=this._height/2*(1+.3*Math.sin(p*c*t+u));i=e*Math.sin(c*t+f),i+=e*Math.sin(d*c*t+_),i/=2}else i=.5*this._height*Math.sin(.5*c*t);s.lineTo([m.pt[0]-i*m.sa,m.pt[1]+i*m.ca])}}return s.path()}_constructSquare(t){const e=new l,s=this._walker.calculatePathLength(t);Math.round(s/this._period);let i=!0;for(;;){let t=!1;if(this._walker.curPositionIsValid()){const s={};this._walker.curPointAndAngle(s);const r={};if(this._walker.nextPointAndAngle(this._period,r)){const n={};this._walker.nextPointAndAngle(this._period,n)&&(i?(e.startPath(s.pt),i=!1):e.lineTo(s.pt),e.lineTo([s.pt[0]-this._height/2*s.sa,s.pt[1]+this._height/2*s.ca]),e.lineTo([r.pt[0]-this._height/2*r.sa,r.pt[1]+this._height/2*r.ca]),e.lineTo([r.pt[0]+this._height/2*r.sa,r.pt[1]-this._height/2*r.ca]),e.lineTo([n.pt[0]+this._height/2*n.sa,n.pt[1]-this._height/2*n.ca]),t=!0)}}if(!t){e.lineTo(this._walker.getPathEnd());break}}return e.path()}_constructTriangle(t){const e=new l,s=this._walker.calculatePathLength(t);Math.round(s/this._period);let i=!0;for(;;){let t=!1;if(this._walker.curPositionIsValid()){const s={};this._walker.curPointAndAngle(s);const r={};if(this._walker.nextPointAndAngle(this._period/2,r)){const n={};this._walker.nextPointAndAngle(this._period,n)&&(this._walker.nextPosition(this._period/2)&&(i?(e.startPath(s.pt),i=!1):e.lineTo(s.pt),e.lineTo([r.pt[0]-this._height/2*r.sa,r.pt[1]+this._height/2*r.ca]),e.lineTo([n.pt[0]+this._height/2*n.sa,n.pt[1]-this._height/2*n.ca])),t=!0)}}if(!t){e.lineTo(this._walker.getPathEnd());break}}return e.path()}}class q{static local(){return null===q.instance&&(q.instance=new q),q.instance}execute(t,e,s,i){return new J(t,e,s)}}q.instance=null;class J extends n["b"]{constructor(t,e,s){var i;super(t,!0,!0),this._geometryWalker=new v,this._geometryWalker.updateTolerance(s),this._angleToLine=null==(i=e.angleToLine)||i,this._offset=(e.offset?e.offset:0)*s,this._originalEndings=e.endings,this._offsetAtEnd=(e.customEndingOffset?e.customEndingOffset:0)*s,this._position=-(e.offsetAlongLine?e.offsetAlongLine:0)*s,this._pattern=new w,this._pattern.init(e.placementTemplate,!1),this._pattern.scale(s),this._endings=this._originalEndings}processPath(t){if(this._pattern.isEmpty())return null;let e;if(this.iteratePath)e=this._pattern.nextValue();else{this._originalEndings===h["s"].WithFullGap&&this.isClosed?this._endings=h["s"].WithMarkers:this._endings=this._originalEndings,this._pattern.extPtGap=0;let s,i=!0;switch(this._endings){case h["s"].NoConstraint:s=-this._position,s=this._adjustPosition(s),i=!1;break;case h["s"].WithHalfGap:default:s=-this._pattern.lastValue()/2;break;case h["s"].WithFullGap:s=-this._pattern.lastValue(),this._pattern.extPtGap=this._pattern.lastValue();break;case h["s"].WithMarkers:s=0;break;case h["s"].Custom:s=-this._position,s=this._adjustPosition(s),this._pattern.extPtGap=.5*this._offsetAtEnd}if(!this._geometryWalker.init(t,this._pattern,i))return null;this._pattern.reset();let r=0;for(;s>r;)s-=r,r=this._pattern.nextValue();r-=s,e=r,this.iteratePath=!0}const s={};return this._geometryWalker.nextPointAndAngle(e,s)?this._endings===h["s"].WithFullGap&&this._geometryWalker.isPathEnd()?(this.iteratePath=!1,null):this._endings===h["s"].WithMarkers&&this._geometryWalker.isPathEnd()&&(this.iteratePath=!1,this.isClosed)?null:(this.internalPlacement.setTranslate(s.pt[0]-this._offset*s.sa,s.pt[1]+this._offset*s.ca),this._angleToLine&&this.internalPlacement.setRotateCS(s.ca,s.sa),this.internalPlacement):(this.iteratePath=!1,null)}_adjustPosition(t){let e=t/this._pattern.length();return e-=Math.floor(e),e*this._pattern.length()}}class ${static local(){return null===$.instance&&($.instance=new $),$.instance}execute(t,e,s,i){return new Z(t,e,s)}}$.instance=null;class Z extends n["b"]{constructor(t,e,s){super(t,!1,!0),this._curveHelper=new u,this._angleToLine=void 0===e.angleToLine||e.angleToLine,this._offset=void 0!==e.offset?e.offset*s:0,this._type=e.extremityPlacement,this._position=void 0!==e.offsetAlongLine?e.offsetAlongLine*s:0,this._beginProcessed=!1}processPath(t){let e;switch(this._type){case h["e"].Both:default:this._beginProcessed?(e=this._atExtremities(t,this._position,!1),this._beginProcessed=!1,this.iteratePath=!1):(e=this._atExtremities(t,this._position,!0),this._beginProcessed=!0,this.iteratePath=!0);break;case h["e"].JustBegin:e=this._atExtremities(t,this._position,!0);break;case h["e"].JustEnd:e=this._atExtremities(t,this._position,!1);case h["e"].None:}return e}_atExtremities(t,e,s){const i=t.length;if(i<2)return null;const r=s?1:i-2,a=s?i:-1,o=s?1:-1;let h,c=0,l=s?t[0]:t[i-1];for(let u=r;u!==a;u+=o){h=l,l=t[u];const s=this._curveHelper.calculateLength(h,l);if(c+s>e){const t=(e-c)/s,[i,r]=this._curveHelper.getAngleCS(h,l,t),a=Object(n["e"])(h,l,t);return this.internalPlacement.setTranslate(a[0]-this._offset*r,a[1]+this._offset*i),this._angleToLine&&this.internalPlacement.setRotateCS(-i,-r),this.internalPlacement}c+=s}return null}}class K{static local(){return null===K.instance&&(K.instance=new K),K.instance}execute(t,e,s,i){return new Q(t,e,s)}}K.instance=null;class Q extends n["b"]{constructor(t,e,s){super(t,!0,!0),this._walker=new v,this._walker.updateTolerance(s),this._angleToLine=void 0===e.angleToLine||e.angleToLine,this._offset=void 0!==e.offset?e.offset*s:0,this._beginGap=void 0!==e.beginPosition?e.beginPosition*s:0,this._endGap=void 0!==e.endPosition?e.endPosition*s:0,this._flipFirst=void 0===e.flipFirst||e.flipFirst,this._pattern=new w,this._pattern.init(e.positionArray,!1,!1),this._subPathLen=0,this._posCount=this._pattern.size(),this._isFirst=!0,this._prevPos=0}processPath(t){if(this._pattern.isEmpty())return null;let e;if(this.iteratePath){const t=this._pattern.nextValue()*this._subPathLen,s=this._beginGap+t;e=s-this._prevPos,this._prevPos=s}else{if(this._posCount=this._pattern.size(),this._isFirst=!0,this._prevPos=0,this._subPathLen=this._walker.calculatePathLength(t)-this._beginGap-this._endGap,this._subPathLen<0)return this.iteratePath=!1,null;if(!this._walker.init(t,this._pattern,!1))return null;this._pattern.reset();const s=this._pattern.nextValue()*this._subPathLen,i=this._beginGap+s;e=i-this._prevPos,this._prevPos=i,this.iteratePath=!0}const s={};if(!this._walker.nextPointAndAngle(e,s,C.END))return this.iteratePath=!1,null;this.internalPlacement.setTranslate(s.pt[0]-this._offset*s.sa,s.pt[1]+this._offset*s.ca);const i=this._isFirst&&this._flipFirst;let r,n;return this._angleToLine?(r=s.ca,n=s.sa):(r=1,n=0),i&&(r=-r,n=-n),this.internalPlacement.setRotateCS(r,n),this._isFirst=!1,this._posCount--,0===this._posCount&&(this.iteratePath=!1),this.internalPlacement}}var tt=s("58f4");function et(t){return void 0!==t.rings}class st{static local(){return null===st.instance&&(st.instance=new st),st.instance}execute(t,e,s,i){return new it(t,e,s,i)}}st.instance=null;class it{constructor(t,e,s,i){if(this._xMin=0,this._xMax=0,this._yMin=0,this._yMax=0,this._currentX=0,this._currentY=0,this._stepX=(void 0!==e.stepX?Math.abs(e.stepX):16)*s,this._stepY=(void 0!==e.stepY?Math.abs(e.stepY):16)*s,0!==this._stepX&&0!==this._stepY&&t&&et(t)&&t.rings){if(this._gridType=void 0!==e.gridType?e.gridType:h["t"].Fixed,this._gridType===h["t"].Random)this._randomness=void 0!==e.randomness?e.randomness/100:1,this._gridAngle=0,this._shiftOddRows=!1,this._cosAngle=1,this._sinAngle=0,this._offsetX=0,this._offsetY=0;else{if(this._randomness=0,this._gridAngle=void 0!==e.gridAngle?e.gridAngle:0,this._shiftOddRows=void 0!==e.shiftOddRows&&e.shiftOddRows,this._offsetX=void 0!==e.offsetX?e.offsetX*s:0,this._offsetY=void 0!==e.offsetY?e.offsetY*s:0,this._cosAngle=Math.cos(this._gridAngle/180*Math.PI),this._sinAngle=-Math.sin(this._gridAngle/180*Math.PI),this._stepX)if(this._offsetX<0)for(;this._offsetX<-.5*this._stepX;)this._offsetX+=this._stepX;else for(;this._offsetX>=.5*this._stepX;)this._offsetX-=this._stepX;if(this._stepY)if(this._offsetY<0)for(;this._offsetY<-.5*this._stepY;)this._offsetY+=this._stepY;else for(;this._offsetY>=.5*this._stepY;)this._offsetY-=this._stepY}this._graphicOriginX=0,this._graphicOriginY=0,this._internalPlacement=new tt["a"],this._calculateMinMax(t),this._geometry=t}}next(){return this._geometry?this._nextInside():null}_calculateMinMax(t){let e,s,i,r,n,a,o,h;this._xMin=0,this._xMax=0,this._yMin=0,this._yMax=0,n=a=Number.MAX_VALUE,o=h=-Number.MAX_VALUE;for(const c of t.rings){const t=c?c.length:0;for(let l=0;lthis._xMax){if(this._currentY++,this._currentY>this._yMax)return null;this._currentX=this._xMin,this._shiftOddRows&&this._currentY%2&&this._currentX--}let t=this._currentX*this._stepX+this._offsetX;this._shiftOddRows&&this._currentY%2&&(t+=.5*this._stepX);const e=this._currentY*this._stepY+this._offsetY;let s,i;return this._currentX++,this._gridType===h["t"].Random?(s=this._graphicOriginX+t+this._stepX*this._randomness*(.5-Math.random())*2/3,i=this._graphicOriginY+e+this._stepY*this._randomness*(.5-Math.random())*2/3):(s=this._graphicOriginX+this._cosAngle*t+this._sinAngle*e,i=this._graphicOriginY-this._sinAngle*t+this._cosAngle*e),this._internalPlacement.setTranslate(s,i),this._internalPlacement}}}const rt=.001;class nt{static local(){return null===nt.instance&&(nt.instance=new nt),nt.instance}execute(t,e,s,i){return new at(t,e,s)}}nt.instance=null;class at extends n["b"]{constructor(t,e,s){super(t,!0,!0),this._curveHelper=new u,this._angleToLine=void 0===e.angleToLine||e.angleToLine,this._offset=void 0!==e.offset?e.offset*s:0,this._relativeTo=e.relativeTo,this._position=void 0!==e.startPointOffset?e.startPointOffset*s:0,this._epsilon=rt*s}processPath(t){const e=this._position;if(this._relativeTo===h["u"].SegmentMidpoint){for(this.iteratePath||(this._segmentCount=t.length,this._curSegment=1,this.iteratePath=!0);this._curSegments){const t=(s-o)/e,[r,h]=this._curveHelper.getAngleCS(a,c,t),l=Object(n["e"])(a,c,t),u=i?-this._offset:this._offset;return this.internalPlacement.setTranslate(l[0]-u*h,l[1]+u*r),this._angleToLine&&(i?this.internalPlacement.setRotateCS(-r,-h):this.internalPlacement.setRotateCS(r,h)),this.internalPlacement}o+=e}return null}}class ot{static local(){return null===ot.instance&&(ot.instance=new ot),ot.instance}execute(t,e,s,i){return new ct(t,e,s)}}ot.instance=null;const ht=1e-15;class ct extends n["b"]{constructor(t,e,s){super(t,!0,!0),this._curveHelper=new u,this._angleToLine=void 0===e.angleToLine||e.angleToLine,this._offset=void 0!==e.offset?e.offset*s:0,this._endPoints=void 0===e.placeOnEndPoints||e.placeOnEndPoints,this._controlPoints=void 0===e.placeOnControlPoints||e.placeOnControlPoints,this._regularVertices=void 0===e.placeOnRegularVertices||e.placeOnRegularVertices,this._tags=[],this._tagIterator=0}processPath(t){if(this.iteratePath||(this._preparePath(t),this.iteratePath=!0),this._tagIterator>=this._tags.length)return this._tags.length=0,this._tagIterator=0,this.iteratePath=!1,null;const e=this._tags[this._tagIterator];this._angleToLine&&this.internalPlacement.setRotate(e[2]);let s=e[0],i=e[1];if(0!==this._offset){const t=Math.cos(e[2]),r=Math.sin(e[2]);s-=this._offset*r,i+=this._offset*t}return this.internalPlacement.setTranslate(s,i),this._tagIterator++,this.internalPlacement}_preparePath(t){this._tags.length=0,this._tagIterator=0;const e=Object(n["g"])(t),s=t.length-1;let i,r,a=0,o=0,h=0,c=0,l=0;for(;as+2*ht;)e-t>s?e-=2*s:e+=2*s;return(t+e)/2}function ut(t){return void 0!==t.rings}class ft{static local(){return null===ft.instance&&(ft.instance=new ft),ft.instance}execute(t,e,s,i){return new _t(t,e,s)}}ft.instance=null;class _t{constructor(t,e,s){this._geometry=t,this._offsetX=void 0!==e.offsetX?e.offsetX*s:0,this._offsetY=void 0!==e.offsetY?e.offsetY*s:0,this._method=void 0!==e.method?e.method:h["v"].OnPolygon,this._internalPlacement=new tt["a"]}next(){const t=this._geometry;return this._geometry=null,t&&ut(t)?this._polygonCenter(t):null}_polygonCenter(t){let e=!1;switch(this._method){case h["v"].OnPolygon:default:case h["v"].CenterOfMass:case h["v"].BoundingBoxCenter:{const s=Object(H["l"])();Object(D["a"])(s,t),this._internalPlacement.setTranslate((s[2]+s[0])/2+this._offsetX,(s[3]+s[1])/2+this._offsetY),e=!0;break}}return e?this._internalPlacement:null}}function pt(t){if(!t)return null;switch(t.type){case"CIMGeometricEffectAddControlPoints":return a.local();case"CIMGeometricEffectArrow":return d.local();case"CIMGeometricEffectBuffer":return g.local();case"CIMGeometricEffectControlMeasureLine":return y.local();case"CIMGeometricEffectCut":return P.local();case"CIMGeometricEffectDashes":return T.local();case"CIMGeometricEffectDonut":return O.local();case"CIMGeometricEffectJog":return A.local();case"CIMGeometricEffectMove":return F.local();case"CIMGeometricEffectOffset":return R.local();case"CIMGeometricEffectReverse":return G.local();case"CIMGeometricEffectRotate":return N.local();case"CIMGeometricEffectScale":return V.local();case"CIMGeometricEffectWave":return Y.local()}return null}function dt(t){if(!t)return null;switch(t.type){case"CIMMarkerPlacementAlongLineSameSize":return q.local();case"CIMMarkerPlacementAtExtremities":return $.local();case"CIMMarkerPlacementAtRatioPositions":return K.local();case"CIMMarkerPlacementInsidePolygon":return st.local();case"CIMMarkerPlacementOnLine":return nt.local();case"CIMMarkerPlacementOnVertices":return ot.local();case"CIMMarkerPlacementPolygonCenter":return ft.local()}return null}},a9c0:function(t,e,s){"use strict";s.d(e,"a",(function(){return i}));class i{constructor(t=0,e=0,s=0,i=0){this.x=t,this.y=e,this.width=s,this.height=i}get isEmpty(){return this.width<=0||this.height<=0}union(t){this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.width=Math.max(this.width,t.width),this.height=Math.max(this.height,t.height)}}},b6a7:function(t,e,s){"use strict";s.d(e,"a",(function(){return S})),s.d(e,"b",(function(){return M})),s.d(e,"c",(function(){return a})),s.d(e,"d",(function(){return d})),s.d(e,"e",(function(){return b})),s.d(e,"f",(function(){return x})),s.d(e,"g",(function(){return y})),s.d(e,"h",(function(){return m})),s.d(e,"i",(function(){return g})),s.d(e,"j",(function(){return P}));var i=s("7ffa"),r=s("a9ab"),n=s("58f4");function a(t){const e=Object(i["a"])(t);return p(e),e}function o(t){if(!t)return null;Object(r["f"])(t)?t.y=-t.y:Object(r["g"])(t)?c(t.rings):Object(r["h"])(t)?c(t.paths):Object(r["e"])(t)&&h(t.points)}function h(t){if(t){const e=t.length;for(let s=0;s0;--e)t[e][0]-=t[e-1][0],t[e][1]-=t[e-1][1]}function u(t){if(t)for(const e of t)l(e)}function f(t){if(t){const e=t.length;for(let s=1;s"],[">","<"],["[","]"],["]","["],["{","}"],["}","{"],["«","»"],["»","«"],["‹","›"],["›","‹"],["⁽","⁾"],["⁾","⁽"],["₍","₎"],["₎","₍"],["≤","≥"],["≥","≤"],["〈","〉"],["〉","〈"],["﹙","﹚"],["﹚","﹙"],["﹛","﹜"],["﹜","﹛"],["﹝","﹞"],["﹞","﹝"],["﹤","﹥"],["﹥","﹤"]],r=["آ","أ","إ","ا"],n=["ﻵ","ﻷ","ﻹ","ﻻ"],a=["ﻶ","ﻸ","ﻺ","ﻼ"],o=["ا","ب","ت","ث","ج","ح","خ","د","ذ","ر","ز","س","ش","ص","ض","ط","ظ","ع","غ","ف","ق","ك","ل","م","ن","ه","و","ي","إ","أ","آ","ة","ى","ل","م","ن","ه","و","ي","إ","أ","آ","ة","ى","ی","ئ","ؤ"],h=["ﺍ","ﺏ","ﺕ","ﺙ","ﺝ","ﺡ","ﺥ","ﺩ","ﺫ","ﺭ","ﺯ","ﺱ","ﺵ","ﺹ","ﺽ","ﻁ","ﻅ","ﻉ","ﻍ","ﻑ","ﻕ","ﻙ","ﻝ","ﻡ","ﻥ","ﻩ","ﻭ","ﻱ","ﺇ","ﺃ","ﺁ","ﺓ","ﻯ","ﯼ","ﺉ","ﺅ","ﹰ","ﹲ","ﹴ","ﹶ","ﹸ","ﹺ","ﹼ","ﹾ","ﺀ","ﺉ","ﺅ"],c=["ﺎ","ﺐ","ﺖ","ﺚ","ﺞ","ﺢ","ﺦ","ﺪ","ﺬ","ﺮ","ﺰ","ﺲ","ﺶ","ﺺ","ﺾ","ﻂ","ﻆ","ﻊ","ﻎ","ﻒ","ﻖ","ﻚ","ﻞ","ﻢ","ﻦ","ﻪ","ﻮ","ﻲ","ﺈ","ﺄ","ﺂ","ﺔ","ﻰ","ﯽ","ﺊ","ﺆ","ﹰ","ﹲ","ﹴ","ﹶ","ﹸ","ﹺ","ﹼ","ﹾ","ﺀ","ﺊ","ﺆ"],l=["ﺎ","ﺒ","ﺘ","ﺜ","ﺠ","ﺤ","ﺨ","ﺪ","ﺬ","ﺮ","ﺰ","ﺴ","ﺸ","ﺼ","ﻀ","ﻄ","ﻈ","ﻌ","ﻐ","ﻔ","ﻘ","ﻜ","ﻠ","ﻤ","ﻨ","ﻬ","ﻮ","ﻴ","ﺈ","ﺄ","ﺂ","ﺔ","ﻰ","ﯿ","ﺌ","ﺆ","ﹱ","ﹲ","ﹴ","ﹷ","ﹹ","ﹻ","ﹽ","ﹿ","ﺀ","ﺌ","ﺆ"],u=["ﺍ","ﺑ","ﺗ","ﺛ","ﺟ","ﺣ","ﺧ","ﺩ","ﺫ","ﺭ","ﺯ","ﺳ","ﺷ","ﺻ","ﺿ","ﻃ","ﻇ","ﻋ","ﻏ","ﻓ","ﻗ","ﻛ","ﻟ","ﻣ","ﻧ","ﻫ","ﻭ","ﻳ","ﺇ","ﺃ","ﺁ","ﺓ","ﻯ","ﯾ","ﺋ","ﺅ","ﹰ","ﹲ","ﹴ","ﹶ","ﹸ","ﹺ","ﹼ","ﹾ","ﺀ","ﺋ","ﺅ"],f=["ء","آ","أ","ؤ","إ","ا","ة","د","ذ","ر","ز","و","ى"],_=["ً","ً","ٌ","؟","ٍ","؟","َ","َ","ُ","ُ","ِ","ِ","ّ","ّ","ْ","ْ","ء","آ","آ","أ","أ","ؤ","ؤ","إ","إ","ئ","ئ","ئ","ئ","ا","ا","ب","ب","ب","ب","ة","ة","ت","ت","ت","ت","ث","ث","ث","ث","ج","ج","ج","ج","ح","ح","ح","ح","خ","خ","خ","خ","د","د","ذ","ذ","ر","ر","ز","ز","س","س","س","س","ش","ش","ش","ش","ص","ص","ص","ص","ض","ض","ض","ض","ط","ط","ط","ط","ظ","ظ","ظ","ظ","ع","ع","ع","ع","غ","غ","غ","غ","ف","ف","ف","ف","ق","ق","ق","ق","ك","ك","ك","ك","ل","ل","ل","ل","م","م","م","م","ن","ن","ن","ن","ه","ه","ه","ه","و","و","ى","ى","ي","ي","ي","ي","ﻵ","ﻶ","ﻷ","ﻸ","ﻹ","ﻺ","ﻻ","ﻼ","؟","؟","؟"],p=["ء","ف"],d=["غ","ي"],m=[[0,3,0,1,0,0,0],[0,3,0,1,2,2,0],[0,3,0,17,2,0,1],[0,3,5,5,4,1,0],[0,3,21,21,4,0,1],[0,3,5,5,4,2,0]],g=[[2,0,1,1,0,1,0],[2,0,1,1,0,2,0],[2,0,2,1,3,2,0],[2,0,2,33,3,1,1]],b=0,y=1,x=2,P=3,M=4,S=5,w=6,C=7,k=8,v=9,T=10,L=11,O=12,I=13,A=14,j=15,F=16,z=17,R=18,E=["UBAT_L","UBAT_R","UBAT_EN","UBAT_AN","UBAT_ON","UBAT_B","UBAT_S","UBAT_AL","UBAT_WS","UBAT_CS","UBAT_ES","UBAT_ET","UBAT_NSM","UBAT_LRE","UBAT_RLE","UBAT_PDF","UBAT_LRO","UBAT_RLO","UBAT_BN"],G=100,B=[G+0,b,b,b,b,G+1,G+2,G+3,y,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,G+4,M,M,M,b,M,b,M,b,M,M,M,b,b,M,M,b,b,b,b,b,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,b,b,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,b,b,b,b,b,b,b,b,b,b,b,b,b,b,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,b,b,M,M,b,b,M,M,b,b,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,b,b,b,G+5,C,C,G+6,G+7],H=[[R,R,R,R,R,R,R,R,R,w,S,w,k,S,R,R,R,R,R,R,R,R,R,R,R,R,R,R,S,S,S,w,k,M,M,L,L,L,M,M,M,M,M,T,v,T,v,v,x,x,x,x,x,x,x,x,x,x,v,M,M,M,M,M,M,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,M,M,M,M,M,M,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,M,M,M,M,R,R,R,R,R,R,S,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,R,v,M,L,L,L,L,M,M,M,M,b,M,M,R,M,M,L,L,x,x,M,b,M,M,M,x,b,M,M,M,M,M,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,M,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,M,b,b,b,b,b,b,b,b],[b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,M,M,M,M,M,M,M,M,M,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,M,M,b,b,b,b,b,b,b,M,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,M,b,M,M,M,M,M,M,M,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,y,O,y,O,O,y,O,O,y,O,M,M,M,M,M,M,M,M,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,M,M,M,M,M,y,y,y,y,y,M,M,M,M,M,M,M,M,M,M,M],[P,P,P,P,M,M,M,M,C,L,L,C,v,C,M,M,O,O,O,O,O,O,O,O,O,O,O,C,M,M,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,P,P,P,P,P,P,P,P,P,P,L,P,P,C,C,C,O,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,O,O,O,O,O,O,O,P,M,O,O,O,O,O,O,C,C,O,O,M,O,O,O,O,C,C,x,x,x,x,x,x,x,x,x,x,C,C,C,C,C,C],[C,C,C,C,C,C,C,C,C,C,C,C,C,C,M,C,C,O,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,M,M,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,O,O,O,O,O,O,O,O,O,O,O,C,M,M,M,M,M,M,M,M,M,M,M,M,M,M,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,O,O,O,O,O,O,O,O,O,y,y,M,M,M,M,y,M,M,M,M,M],[k,k,k,k,k,k,k,k,k,k,k,R,R,R,b,y,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,k,S,I,A,j,F,z,v,L,L,L,L,L,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,v,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,k,R,R,R,R,R,M,M,M,M,M,R,R,R,R,R,R,x,b,M,M,x,x,x,x,x,x,T,T,M,M,M,b,x,x,x,x,x,x,x,x,x,x,T,T,M,M,M,M,b,b,b,b,b,b,b,b,b,b,b,b,b,M,M,M,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,L,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M],[b,b,b,b,b,b,b,M,M,M,M,M,M,M,M,M,M,M,M,b,b,b,b,b,M,M,M,M,M,y,O,y,y,y,y,y,y,y,y,y,y,T,y,y,y,y,y,y,y,y,y,y,y,y,y,M,y,y,y,y,y,M,y,M,y,y,M,y,y,M,y,y,y,y,y,y,y,y,y,y,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C],[O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,O,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,O,O,O,O,O,O,O,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,v,M,v,M,M,v,M,M,M,M,M,M,M,M,M,L,M,M,T,T,M,M,M,M,M,L,L,M,M,M,M,M,C,C,C,C,C,M,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,C,M,M,R],[M,M,M,L,L,L,M,M,M,M,M,T,v,T,v,v,x,x,x,x,x,x,x,x,x,x,v,M,M,M,M,M,M,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,M,M,M,M,M,M,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,M,M,M,M,M,M,M,M,M,M,M,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,M,M,M,b,b,b,b,b,b,M,M,b,b,b,b,b,b,M,M,b,b,b,b,b,b,M,M,b,b,b,M,M,M,L,L,M,M,M,L,L,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M,M]];class D{constructor(){this.inputFormat="ILYNN",this.outputFormat="VLNNN",this.sourceToTarget=[],this.targetToSource=[],this.levels=[]}bidiTransform(t,e,s){if(this.sourceToTarget=[],this.targetToSource=[],!t)return"";if(dt(this.sourceToTarget,this.targetToSource,t.length),!this.checkParameters(e,s))return t;e=this.inputFormat,s=this.outputFormat;let i=t;const r=Pt,n=ft(e.charAt(1)),a=ft(s.charAt(1)),o=("I"===e.charAt(0)?"L":e.charAt(0))+n,h=("I"===s.charAt(0)?"L":s.charAt(0))+a,c=e.charAt(2)+s.charAt(2);r.defInFormat=o,r.defOutFormat=h,r.defSwap=c;const l=N(t,o,h,c,r);let u=!1;return"R"===s.charAt(1)?u=!0:"C"!==s.charAt(1)&&"D"!==s.charAt(1)||(u="rtl"===this.checkContextual(l)),this.sourceToTarget=bt,this.targetToSource=mt(this.sourceToTarget),yt=this.targetToSource,i=e.charAt(3)===s.charAt(3)?l:"S"===s.charAt(3)?V(u,l,!0):q(l,u,!0),this.sourceToTarget=bt,this.targetToSource=yt,this.levels=xt,i}_inputFormatSetter(t){if(!kt.test(t))throw new Error("dojox/string/BidiEngine: the bidi layout string is wrong!");this.inputFormat=t}_outputFormatSetter(t){if(!kt.test(t))throw new Error("dojox/string/BidiEngine: the bidi layout string is wrong!");this.outputFormat=t}checkParameters(t,e){return t?this._inputFormatSetter(t):t=this.inputFormat,e?this._outputFormatSetter(e):e=this.outputFormat,t!==e}checkContextual(t){let e=Y(t);if("ltr"!==e&&"rtl"!==e){try{e=document.dir.toLowerCase()}catch(s){}"ltr"!==e&&"rtl"!==e&&(e="ltr")}return e}hasBidiChar(t){return vt.test(t)}}function N(t,e,s,i,r){const n=U(t,{inFormat:e,outFormat:s,swap:i},r);if(n.inFormat===n.outFormat)return t;e=n.inFormat,s=n.outFormat,i=n.swap;const a=e.substring(0,1),o=e.substring(1,4),h=s.substring(0,1),c=s.substring(1,4);if(r.inFormat=e,r.outFormat=s,r.swap=i,"L"===a&&"VLTR"===s){if("LTR"===o)return r.dir=wt,J(t,r);if("RTL"===o)return r.dir=Ct,J(t,r)}if("V"===a&&"V"===h)return r.dir="RTL"===o?Ct:wt,tt(t,r);if("L"===a&&"VRTL"===s)return"LTR"===o?(r.dir=wt,t=J(t,r)):(r.dir=Ct,t=J(t,r)),tt(t);if("VLTR"===e&&"LLTR"===s)return r.dir=wt,J(t,r);if("V"===a&&"L"===h&&o!==c)return t=tt(t),"RTL"===o?N(t,"LLTR","VLTR",i,r):N(t,"LRTL","VRTL",i,r);if("VRTL"===e&&"LRTL"===s)return N(t,"LRTL","VRTL",i,r);if("L"===a&&"L"===h){const e=r.swap;return r.swap=e.substr(0,1)+"N","RTL"===o?(r.dir=Ct,t=J(t,r),r.swap="N"+e.substr(1,2),r.dir=wt,t=J(t,r)):(r.dir=wt,t=J(t,r),r.swap="N"+e.substr(1,2),t=N(t,"VLTR","LRTL",r.swap,r)),t}return t}function U(t,e,s){if(void 0===e.inFormat&&(e.inFormat=s.defInFormat),void 0===e.outFormat&&(e.outFormat=s.defOutFormat),void 0===e.swap&&(e.swap=s.defSwap),e.inFormat===e.outFormat)return e;const i=e.inFormat.substring(0,1),r=e.outFormat.substring(0,1);let n,a=e.inFormat.substring(1,4),o=e.outFormat.substring(1,4);return"C"===a.charAt(0)&&(n=Y(t),a="ltr"===n||"rtl"===n?n.toUpperCase():"L"===e.inFormat.charAt(2)?"LTR":"RTL",e.inFormat=i+a),"C"===o.charAt(0)&&(n=Y(t),"rtl"===n?o="RTL":"ltr"===n?(n=W(t),o=n.toUpperCase()):o="L"===e.outFormat.charAt(2)?"LTR":"RTL",e.outFormat=r+o),e}function V(t,e,s){if(0===e.length)return"";void 0===t&&(t=!0),void 0===s&&(s=!0);const i=(e=String(e)).split("");let r=0,n=1,a=i.length;t||(r=i.length-1,n=-1,a=1);const o=X(i,r,n,a,s);let h="";for(let c=0;c-1?(gt(yt,c,!t,-1),bt.splice(c,1)):h+=i[c];return h}function X(t,e,s,i,r){let o=0;const l=[];let f=0;for(let _=e;_*s="ﹰ"&&n[a]<"\ufeff"){const h=t.charCodeAt(a);n[a]>="ﻵ"&&n[a]<="ﻼ"?(e?(a>0&&s&&" "===n[a-1]?i=i.substring(0,i.length-1)+"ل":(i+="ل",o=!0),i+=r[(h-65269)/2]):(i+=r[(h-65269)/2],i+="ل",a+10)if(16===u){for(let t=a;t-1){for(let t=a;t=0&&t[s]===k;s--)e[s]=i.dir}}function K(t,e,s){if(0!==s.hiLevel&&s.swap.substr(0,1)!==s.swap.substr(1,2))for(let i=0;i>8];return s=p[e]&&t<=d[e])return!0;return!1}function it(t,e,s,i){for(;e*s=t){for(n=l+1;n=t;)n++;for(a=l,o=n-1;a(r.lastArabic=!1,b),UBAT_R:()=>(r.lastArabic=!1,y),UBAT_ON:()=>M,UBAT_AN:()=>P,UBAT_EN:()=>r.lastArabic?P:x,UBAT_AL:()=>(r.lastArabic=!0,r.hasUbatAl=!0,y),UBAT_WS:()=>M,UBAT_CS:()=>{let t,n;return i<1||i+1>=e.length||(t=s[i-1])!==x&&t!==P||(n=e[i+1])!==x&&n!==P?M:(r.lastArabic&&(n=P),n===t?n:M)},UBAT_ES:()=>(i>0?s[i-1]:S)===x&&i+1{if(i>0&&s[i-1]===x)return x;if(r.lastArabic)return M;let t=i+1;const n=e.length;for(;t{if("VLTR"===r.inFormat){const s=e.length;let r=i+1;for(;r=1425&&s<=2303||64286===s,a=e[r];if(n&&(a===y||a===C))return y}}return i<1||e[i-1]===S?M:s[i-1]},UBAT_B:()=>(r.lastArabic=!0,r.hasUbatB=!0,r.dir),UBAT_S:()=>(r.hasUbatS=!0,M),UBAT_LRE:()=>(r.lastArabic=!1,M),UBAT_RLE:()=>(r.lastArabic=!1,M),UBAT_LRO:()=>(r.lastArabic=!1,M),UBAT_RLO:()=>(r.lastArabic=!1,M),UBAT_PDF:()=>(r.lastArabic=!1,M),UBAT_BN:()=>M}[E[n]]()}function ot(t){let e,s=0,r=i.length-1;for(;s<=r;)if(e=Math.floor((s+r)/2),ti[e][0]))return i[e][1];s=e+1}return t}function ht(t){for(let e=0;e="ً"&&t<="ٕ"}function ft(t){return"L"===t?"LTR":"R"===t?"RTL":"C"===t?"CLR":"D"===t?"CRL":""}function _t(t,e,s,i){for(;e*se||!s&&t[r]===e)&&(t[r]+=i)}let bt=[],yt=[],xt=[];const Pt={dir:0,defInFormat:"LLTR",defoutFormat:"VLTR",defSwap:"YN",inFormat:"LLTR",outFormat:"VLTR",swap:"YN",hiLevel:0,lastArabic:!1,hasUbatAl:!1,hasBlockSep:!1,hasSegSep:!1,defOutFormat:""},Mt=5,St=6,wt=0,Ct=1,kt=/^[(I|V)][(L|R|C|D)][(Y|N)][(S|N)][N]$/,vt=/[\u0591-\u06ff\ufb1d-\ufefc]/},f57e:function(t,e,s){"use strict";s.d(e,"a",(function(){return n}));var i=s("d7bf");const r=new i["a"];function n(t){if(!r.hasBidiChar(t))return[t,!1];let e;return e="rtl"===r.checkContextual(t)?"IDNNN":"ICNNN",[r.bidiTransform(t,e,"VLYSN"),!0]}},fe24:function(t,e,s){"use strict";s.d(e,"a",(function(){return i}));s("7ffa");class i{constructor(t){this._geometry=t}next(){const t=this._geometry;return this._geometry=null,t}}}}]); //# sourceMappingURL=chunk-01b259ce.3f9c46cf.js.map