@arcgis/core 5.2.0-next.74 → 5.2.0-next.76

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (489) hide show
  1. package/arcgisGlobal.d.ts +1 -0
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/013c9cc198736a72f7f2.js +1 -0
  4. package/assets/esri/core/workers/chunks/0194244a3f437ad74045.js +1 -0
  5. package/assets/esri/core/workers/chunks/0502641d9a214b37ff29.js +1 -0
  6. package/assets/esri/core/workers/chunks/{4dcd4a052b40047a9230.js → 08cac27df6c216ae1995.js} +1 -1
  7. package/assets/esri/core/workers/chunks/08ec5461af74356e7570.js +1 -0
  8. package/assets/esri/core/workers/chunks/0909816f13d25cacf250.js +1 -0
  9. package/assets/esri/core/workers/chunks/0933203eee15ea50e123.js +1 -0
  10. package/assets/esri/core/workers/chunks/0d9fe49812554e7d7ba7.js +1 -0
  11. package/assets/esri/core/workers/chunks/{0e81c6d4f1c81f9b0a1b.js → 1142f8e9c80207d6bdae.js} +1 -1
  12. package/assets/esri/core/workers/chunks/16929524565a677db4dc.js +1 -0
  13. package/assets/esri/core/workers/chunks/16a04fc184728d66e6e1.js +1 -0
  14. package/assets/esri/core/workers/chunks/177c3b23c1cbd4737049.js +1 -0
  15. package/assets/esri/core/workers/chunks/18e0e993c0c39c962e61.js +1 -0
  16. package/assets/esri/core/workers/chunks/1a467da4c0b33f655199.js +1 -0
  17. package/assets/esri/core/workers/chunks/1ef28d4457c8c943ad19.js +1 -0
  18. package/assets/esri/core/workers/chunks/20b54e7872d967f3be32.js +1 -0
  19. package/assets/esri/core/workers/chunks/{5f31b375971ab067121e.js → 21f763694a41968ac21a.js} +1 -1
  20. package/assets/esri/core/workers/chunks/230925079cee040a8d77.js +1 -0
  21. package/assets/esri/core/workers/chunks/2501d9459f6d14c797e5.js +1 -0
  22. package/assets/esri/core/workers/chunks/257f1e8316877f611e11.js +1 -0
  23. package/assets/esri/core/workers/chunks/270ed3070d118edb3f37.js +1 -0
  24. package/assets/esri/core/workers/chunks/2740f755c3a322cbd477.js +1 -0
  25. package/assets/esri/core/workers/chunks/2e7c830b5b1fe406169f.js +1 -0
  26. package/assets/esri/core/workers/chunks/2f4ed8a63d57636a4ebe.js +1 -0
  27. package/assets/esri/core/workers/chunks/{31d19bb72a9e79b30070.js → 30818b5ff0ce51b25d6f.js} +1 -1
  28. package/assets/esri/core/workers/chunks/315031323e11a18154e3.js +1 -0
  29. package/assets/esri/core/workers/chunks/393f79843d5a78c1cc37.js +1 -0
  30. package/assets/esri/core/workers/chunks/3b5c5356353f1a2303a0.js +1 -0
  31. package/assets/esri/core/workers/chunks/3c28e2040cb4fb716eaa.js +1 -0
  32. package/assets/esri/core/workers/chunks/{99e3aa4832ed87474ab4.js → 44857a76be2c0ac65bb9.js} +1 -1
  33. package/assets/esri/core/workers/chunks/44a786aba84918f2b247.js +1 -0
  34. package/assets/esri/core/workers/chunks/{3e2b4e734aa20a308f3e.js → 46e56fac44e0fd26ba1d.js} +1 -1
  35. package/assets/esri/core/workers/chunks/{4491dc227c28e2ab4f8e.js → 484b251fbcbffcb58323.js} +1 -1
  36. package/assets/esri/core/workers/chunks/48e2d0bfb62e1f4f2ad9.js +1 -0
  37. package/assets/esri/core/workers/chunks/4945d6b0ca1812864185.js +1 -0
  38. package/assets/esri/core/workers/chunks/{7f2f2a92dce3f68e579b.js → 4b54444c04fbd6f42c18.js} +1 -1
  39. package/assets/esri/core/workers/chunks/4c82f5f23004f905a18f.js +1 -0
  40. package/assets/esri/core/workers/chunks/4d7a3b3aaf876da0891b.js +1 -0
  41. package/assets/esri/core/workers/chunks/4f8ce5887102971bfa34.js +2 -0
  42. package/assets/esri/core/workers/chunks/50b08415e072a49bc572.js +1 -0
  43. package/assets/esri/core/workers/chunks/{186bedc377cc97731ca2.js → 532e3a59888e4cc13bd3.js} +2 -2
  44. package/assets/esri/core/workers/chunks/53eed0941a39b56cc034.js +1 -0
  45. package/assets/esri/core/workers/chunks/{1a3afee3ecd806b4aa81.js → 552d6aecc7d88d16227b.js} +1 -1
  46. package/assets/esri/core/workers/chunks/56e6d8c4a9ed893ce951.js +1 -0
  47. package/assets/esri/core/workers/chunks/57159bcac86d660dcceb.js +1 -0
  48. package/assets/esri/core/workers/chunks/58026fc30d8a0ded4102.js +1 -0
  49. package/assets/esri/core/workers/chunks/59598023c0aea62a6297.js +1 -0
  50. package/assets/esri/core/workers/chunks/5bf2ce280ea35ea4c96b.js +1 -0
  51. package/assets/esri/core/workers/chunks/5fd2aa0be03dfb494efa.js +1 -0
  52. package/assets/esri/core/workers/chunks/619aa1381296172ff47b.js +1 -0
  53. package/assets/esri/core/workers/chunks/62f37d1075390a177ae9.js +1 -0
  54. package/assets/esri/core/workers/chunks/{2baa16ec8559e77c226f.js → 64a1ffc221e5b63b43fb.js} +1 -1
  55. package/assets/esri/core/workers/chunks/65d1e338612e59063eba.js +1 -0
  56. package/assets/esri/core/workers/chunks/680dd7b7638465eb33de.js +1 -0
  57. package/assets/esri/core/workers/chunks/69b0dcd7bcd8ec42e2c3.js +1 -0
  58. package/assets/esri/core/workers/chunks/6c740c411b085d2d08c4.js +1 -0
  59. package/assets/esri/core/workers/chunks/6c982779d6d47ec99899.js +1 -0
  60. package/assets/esri/core/workers/chunks/6dddd3df31961b9fda12.js +1 -0
  61. package/assets/esri/core/workers/chunks/{1ca04ecf010e68863014.js → 6e45ecf359bce3417f5d.js} +1 -1
  62. package/assets/esri/core/workers/chunks/702b2381acf4d1f90094.js +1 -0
  63. package/assets/esri/core/workers/chunks/{a52c88e2d837b525ff6c.js → 71ee7c51d2c60a180f1e.js} +1 -1
  64. package/assets/esri/core/workers/chunks/{ad1d06a91121ebfe9162.js → 755b2d883fba90c4e688.js} +2 -2
  65. package/assets/esri/core/workers/chunks/75fc0b1db8e2e3fd2458.js +1 -0
  66. package/assets/esri/core/workers/chunks/{9e25f715cda59c686a4c.js → 792303e4090c0c70c4ff.js} +1 -1
  67. package/assets/esri/core/workers/chunks/79429c8be5da85713200.js +1 -0
  68. package/assets/esri/core/workers/chunks/7b470d6ad182548b9e95.js +1 -0
  69. package/assets/esri/core/workers/chunks/7d8eb4dbea1916320f74.js +1 -0
  70. package/assets/esri/core/workers/chunks/83e54166ba634ec2bd89.js +1717 -0
  71. package/assets/esri/core/workers/chunks/841c81c280114412c95b.js +1 -0
  72. package/assets/esri/core/workers/chunks/87eaed6fdabd482d142e.js +1 -0
  73. package/assets/esri/core/workers/chunks/88d5541679e77117bf03.js +1 -0
  74. package/assets/esri/core/workers/chunks/894ebc64b698e5d7604b.js +1 -0
  75. package/assets/esri/core/workers/chunks/8a36b999cbd65dd2f16c.js +1 -0
  76. package/assets/esri/core/workers/chunks/8ae3a6ddc87bf8315583.js +1 -0
  77. package/assets/esri/core/workers/chunks/{67f54586156d1ab80257.js → 8b980c6b92cc4ea68ede.js} +1 -1
  78. package/assets/esri/core/workers/chunks/8d9a7fa14489897780d3.js +1 -0
  79. package/assets/esri/core/workers/chunks/8e225dd0319672103561.js +1 -0
  80. package/assets/esri/core/workers/chunks/9199300ffd225a1bbef1.js +1 -0
  81. package/assets/esri/core/workers/chunks/94b9a61b4dbb83425a78.js +1 -0
  82. package/assets/esri/core/workers/chunks/98613fded899c59f34a4.js +1 -0
  83. package/assets/esri/core/workers/chunks/{9ca59077712e45ef4d56.js → 9c3e6325dc60bcaf44d7.js} +1 -1
  84. package/assets/esri/core/workers/chunks/9e1392a0c608a13ab036.js +1 -0
  85. package/assets/esri/core/workers/chunks/9e2e4d197a7a57c2a691.js +1 -0
  86. package/assets/esri/core/workers/chunks/{d03e7be74c57c3dbf003.js → a014c17fc210620da738.js} +2 -2
  87. package/assets/esri/core/workers/chunks/{8302bffd28cc6720e0fe.js → a19be304219808268039.js} +2 -2
  88. package/assets/esri/core/workers/chunks/{bd311c85437743cf7d2f.js → a4e4fa4dd1a122bbf7cd.js} +1 -1
  89. package/assets/esri/core/workers/chunks/a5240c8a47842138f31f.js +1 -0
  90. package/assets/esri/core/workers/chunks/a69c10bfd632a5546b34.js +1 -0
  91. package/assets/esri/core/workers/chunks/{b6d26d9738c0787acc38.js → a6a2a4a2bae0d327d7ed.js} +1 -1
  92. package/assets/esri/core/workers/chunks/a7727a2377470d586ff9.js +1 -0
  93. package/assets/esri/core/workers/chunks/a91c1d782346a9c7e1ef.js +1 -0
  94. package/assets/esri/core/workers/chunks/{6cd6d0cfd313f0475d98.js → ac59218847e5ef4c4160.js} +1 -1
  95. package/assets/esri/core/workers/chunks/ac87be2210f868524996.js +1 -0
  96. package/assets/esri/core/workers/chunks/aed16c3e26652960ad3f.js +1 -0
  97. package/assets/esri/core/workers/chunks/b084829a3fd709dc47a8.js +1 -0
  98. package/assets/esri/core/workers/chunks/{05f6887805d92da03122.js → b24fc7eeda580ef020d2.js} +1 -1
  99. package/assets/esri/core/workers/chunks/b37a20c5c4a4686257d4.js +1 -0
  100. package/assets/esri/core/workers/chunks/{a0a1f0bd3648738354a6.js → b4abf82b8ac974a55ae1.js} +1 -1
  101. package/assets/esri/core/workers/chunks/b950ddafba8125c84a5b.js +1 -0
  102. package/assets/esri/core/workers/chunks/b9d1bb106737a05290e1.js +1 -0
  103. package/assets/esri/core/workers/chunks/bab5f4b2424b487b87ac.js +1 -0
  104. package/assets/esri/core/workers/chunks/bad2c7219e95750906e1.js +1 -0
  105. package/assets/esri/core/workers/chunks/bbc6b270d2032189107c.js +1 -0
  106. package/assets/esri/core/workers/chunks/{faa55265020591fd2224.js → bc0395777c5c1adb1ddb.js} +1 -1
  107. package/assets/esri/core/workers/chunks/bc6e488f5fbd50f9f3d0.js +1 -0
  108. package/assets/esri/core/workers/chunks/bd7d87d175ba933ab2ce.js +1 -0
  109. package/assets/esri/core/workers/chunks/{859dd86c921053bf03a1.js → c17dda6fadb8bfad0d51.js} +1 -1
  110. package/assets/esri/core/workers/chunks/c1e5ffe9a251be5a0744.js +1 -0
  111. package/assets/esri/core/workers/chunks/{94368a097e6190ce3c7a.js → c37b28f200b704ae6002.js} +1 -1
  112. package/assets/esri/core/workers/chunks/ca6652c6304ad0e37e8f.js +1 -0
  113. package/assets/esri/core/workers/chunks/{762be5d3e6aeaea33f74.js → cef02ed3942c010da2e8.js} +1 -1
  114. package/assets/esri/core/workers/chunks/cff6390b863361eaeeed.js +1 -0
  115. package/assets/esri/core/workers/chunks/d2172583ee6e481a66aa.js +1 -0
  116. package/assets/esri/core/workers/chunks/d520d407043bc52e5410.js +1 -0
  117. package/assets/esri/core/workers/chunks/da0ef984509057ec8507.js +1 -0
  118. package/assets/esri/core/workers/chunks/dbdd96e558936955acdb.js +1 -0
  119. package/assets/esri/core/workers/chunks/ddd8f6154e265dbb6f9f.js +1 -0
  120. package/assets/esri/core/workers/chunks/de601f0d5a2a282d2efd.js +1 -0
  121. package/assets/esri/core/workers/chunks/de927b1460bc384f5b87.js +1 -0
  122. package/assets/esri/core/workers/chunks/de9a1cce70581920f248.js +1 -0
  123. package/assets/esri/core/workers/chunks/dff932682d6386a861ce.js +1 -0
  124. package/assets/esri/core/workers/chunks/{2c31648a4b95275516ee.js → e227eb44cd139fe2bc1b.js} +1 -1
  125. package/assets/esri/core/workers/chunks/e4e5a171a4874c5af4a4.js +1 -0
  126. package/assets/esri/core/workers/chunks/{fdca9873914b9dbd9244.js → e59101f1d060d0a30a65.js} +1 -1
  127. package/assets/esri/core/workers/chunks/{ddb92c815d17c67a45e6.js → e5d114f2b57d2b8e2f1c.js} +1 -1
  128. package/assets/esri/core/workers/chunks/e89e6eea380ca2c13b64.js +1 -0
  129. package/assets/esri/core/workers/chunks/e9d352d030dcad1619a6.js +1 -0
  130. package/assets/esri/core/workers/chunks/{3de6e54b6ed0feae1940.js → eae51e827f629ab37207.js} +1 -1
  131. package/assets/esri/core/workers/chunks/eee1fd629619021ea279.js +1 -0
  132. package/assets/esri/core/workers/chunks/ef47a5da641cb0d33fdf.js +1 -0
  133. package/assets/esri/core/workers/chunks/f35e749bb5be39880cbe.js +1 -0
  134. package/assets/esri/core/workers/chunks/{3dff36f6de181d9dcdc5.js → f40e4433e7608d0962a6.js} +1 -1
  135. package/assets/esri/core/workers/chunks/f4aa6e90200f61e623e5.js +1 -0
  136. package/assets/esri/core/workers/chunks/ff578f0ca68d652fece5.js +1 -0
  137. package/assets/esri/libs/lyr3d/lyr3DMain.wasm +0 -0
  138. package/assets/esri/libs/lyr3d/lyr3DWorker.wasm +0 -0
  139. package/assets/esri/libs/text/pkg/bundle_bg.wasm +0 -0
  140. package/chunks/GaussianSplat.glsl.js +8 -8
  141. package/chunks/GaussianSplatShadow.glsl.js +4 -5
  142. package/chunks/HeatmapDensity.glsl.js +5 -5
  143. package/chunks/OccludedGeometryDepth.glsl.js +5 -0
  144. package/chunks/ShadowCastVisualize.glsl.js +2 -2
  145. package/chunks/bundle2.js +1 -1
  146. package/chunks/lyr3DMain.js +1 -1
  147. package/chunks/lyr3DWorker.js +1 -1
  148. package/config.js +1 -1
  149. package/core/importUtils.js +2 -0
  150. package/geometry/geometryEngine.js +1 -1
  151. package/geometry/operators/importUtils.js +2 -0
  152. package/geometry/support/centroid.js +1 -1
  153. package/geometry/support/curves/densifyCurvedGeometry.js +1 -1
  154. package/geometry/support/extentUtils.js +1 -1
  155. package/geometry/support/frustum.js +1 -1
  156. package/geometry/support/normalizeUtils.d.ts +17 -15
  157. package/geometry/support/normalizeUtils.js +1 -1
  158. package/kernel.js +1 -1
  159. package/layers/FeatureLayer.d.ts +1 -1
  160. package/layers/Lyr3DWasmPerSceneView.js +1 -1
  161. package/layers/graphics/data/QueryEngine.js +1 -1
  162. package/layers/graphics/data/QueryEngineResult.js +1 -1
  163. package/layers/graphics/data/projectionSupport.js +1 -1
  164. package/layers/graphics/data/queryUtils.js +1 -1
  165. package/layers/graphics/hydratedFeatures.js +1 -1
  166. package/layers/graphics/sources/support/sourceUtils.js +1 -1
  167. package/package.json +2 -2
  168. package/portal/schemas/definitions.js +1 -1
  169. package/rest/geoprocessor/utils.js +1 -1
  170. package/rest/identify.js +1 -1
  171. package/rest/imageService.js +1 -1
  172. package/rest/query/operations/query.js +1 -1
  173. package/rest/query/operations/queryAttributeBins.js +1 -1
  174. package/rest/query/operations/queryPivot.js +1 -1
  175. package/rest/query/operations/queryTopFeatures.js +1 -1
  176. package/support/revision.js +1 -1
  177. package/symbols/cim/CIMEffects.js +1 -1
  178. package/symbols/cim/animationUtils.js +1 -1
  179. package/symbols/cim/cimAnalyzer.js +1 -1
  180. package/symbols/cim/effects/EffectCircularSector.js +1 -1
  181. package/symbols/cim/utils.js +1 -1
  182. package/views/2d/engine/BitmapTile.js +1 -1
  183. package/views/2d/engine/flow/styles/Imagery.js +1 -1
  184. package/views/2d/engine/flow/styles/Particles.js +1 -1
  185. package/views/2d/engine/flow/styles/Streamlines.js +1 -1
  186. package/views/2d/engine/imagery/RasterTile.js +1 -1
  187. package/views/2d/engine/imagery/RasterVFTile.js +1 -1
  188. package/views/2d/engine/vectorTiles/SpriteMosaic.js +1 -1
  189. package/views/2d/engine/vectorTiles/TileHandler3D.js +1 -1
  190. package/views/2d/engine/vectorTiles/VTLPainter3D.js +1 -1
  191. package/views/2d/engine/vectorTiles/VectorTileContainer.js +1 -1
  192. package/views/2d/engine/vectorTiles/VectorTileRendererHelper3D.js +1 -1
  193. package/views/2d/engine/webgl/FeatureDisplayList.js +1 -1
  194. package/views/2d/engine/webgl/Painter.js +1 -1
  195. package/views/2d/engine/webgl/RenderingDevice.js +1 -1
  196. package/views/2d/engine/webgl/TileContainer.js +1 -1
  197. package/views/2d/engine/webgl/TiledDisplayObject.js +1 -1
  198. package/views/2d/engine/webgl/animations/infos.js +1 -1
  199. package/views/2d/engine/webgl/animations/instructions.js +1 -1
  200. package/views/2d/engine/webgl/normalizedTileUtils.js +1 -1
  201. package/views/2d/engine/webgl/shaderGraph/GraphShaderModule.js +1 -1
  202. package/views/2d/engine/webgl/shaderGraph/graph/ShaderGraphContext.js +1 -1
  203. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AAnimatedShader.js +1 -1
  204. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedFillShader.js +1 -1
  205. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedLineShader.js +1 -1
  206. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedMarkerShader.js +1 -1
  207. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedTechnique.js +1 -1
  208. package/views/2d/engine/webgl/shaderGraph/techniques/bitmap/BitmapTechnique.js +1 -1
  209. package/views/2d/engine/webgl/shaderGraph/techniques/clip/ClipTechnique.js +1 -1
  210. package/views/2d/engine/webgl/shaderGraph/techniques/dotDensity/DotDensityPointShader.js +1 -1
  211. package/views/2d/engine/webgl/shaderGraph/techniques/dotDensity/DotDensityTechnique.js +1 -1
  212. package/views/2d/engine/webgl/shaderGraph/techniques/drop-shadow/DropShadowTechnique.js +1 -1
  213. package/views/2d/engine/webgl/shaderGraph/techniques/featureTechniqueUtils.js +1 -1
  214. package/views/2d/engine/webgl/shaderGraph/techniques/fill/ComplexFillTechnique.js +1 -1
  215. package/views/2d/engine/webgl/shaderGraph/techniques/fill/ComplexOutlineFillTechnique.js +1 -1
  216. package/views/2d/engine/webgl/shaderGraph/techniques/fill/FillTechnique.js +1 -1
  217. package/views/2d/engine/webgl/shaderGraph/techniques/fill/GradientFillTechnique.js +1 -1
  218. package/views/2d/engine/webgl/shaderGraph/techniques/fill/OutlineFillTechnique.js +1 -1
  219. package/views/2d/engine/webgl/shaderGraph/techniques/fill/PatternFillTechnique.js +1 -1
  220. package/views/2d/engine/webgl/shaderGraph/techniques/fill/PatternOutlineFillTechnique.js +1 -1
  221. package/views/2d/engine/webgl/shaderGraph/techniques/flow/FlowTechnique.js +1 -1
  222. package/views/2d/engine/webgl/shaderGraph/techniques/heatmap/HeatmapTechnique.js +1 -1
  223. package/views/2d/engine/webgl/shaderGraph/techniques/labels/LabelMeshWriter.js +1 -1
  224. package/views/2d/engine/webgl/shaderGraph/techniques/labels/LabelTechnique.js +1 -1
  225. package/views/2d/engine/webgl/shaderGraph/techniques/line/GradientStrokeTechnique.js +1 -1
  226. package/views/2d/engine/webgl/shaderGraph/techniques/line/LineTechnique.js +1 -1
  227. package/views/2d/engine/webgl/shaderGraph/techniques/line/TexturedLineTechnique.js +1 -1
  228. package/views/2d/engine/webgl/shaderGraph/techniques/markers/MarkerShader.js +1 -1
  229. package/views/2d/engine/webgl/shaderGraph/techniques/markers/MarkerTechnique.js +1 -1
  230. package/views/2d/engine/webgl/shaderGraph/techniques/overlay/OverlayTechnique.js +1 -1
  231. package/views/2d/engine/webgl/shaderGraph/techniques/pieChart/PieChartShader.js +1 -1
  232. package/views/2d/engine/webgl/shaderGraph/techniques/pieChart/PieChartTechnique.js +1 -1
  233. package/views/2d/engine/webgl/shaderGraph/techniques/raster/RasterColorizerTechnique.js +1 -1
  234. package/views/2d/engine/webgl/shaderGraph/techniques/raster/VectorFieldTechnique.js +1 -1
  235. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/AFeatureShader.js +1 -1
  236. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/BitmapShader.js +1 -1
  237. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/BlendShader.js +1 -1
  238. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/ComplexFillShader.js +1 -1
  239. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/FillShader.js +1 -1
  240. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/GradientFillShader.js +1 -1
  241. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/GradientStrokeShader.js +1 -1
  242. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/HeatmapAccumulateShader.js +1 -1
  243. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/LineShader.js +1 -1
  244. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/OutlineFillShader.js +1 -1
  245. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/PatternFillShader.js +1 -1
  246. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/TexturedLineShader.js +1 -1
  247. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/Tile.js +1 -1
  248. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/TileDebugInfoShader.js +1 -1
  249. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/TileInfo.js +1 -1
  250. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/TileStencilShader.js +1 -1
  251. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/ViewInfo.js +1 -1
  252. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/hittestUtils.js +1 -1
  253. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/raster/BaseRasterColorizerShader.js +1 -1
  254. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/raster/MagDirShader.js +1 -1
  255. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/raster/ScalarShader.js +1 -1
  256. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderBackground.js +1 -1
  257. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderCircle.js +1 -1
  258. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderFill.js +1 -1
  259. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderIcon.js +1 -1
  260. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderLine.js +1 -1
  261. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderOutline.js +1 -1
  262. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/vector-tiles/VTLShaderText.js +1 -1
  263. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
  264. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextTechnique.js +1 -1
  265. package/views/2d/engine/webgl/shaderGraph/techniques/tile/TileDebugInfoTechnique.js +1 -1
  266. package/views/2d/engine/webgl/shaderGraph/techniques/tile/TileStencilTechnique.js +1 -1
  267. package/views/2d/engine/webgl/shaderGraph/techniques/utility/DebugOverlayTechnique.js +1 -1
  268. package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueBackground.js +1 -1
  269. package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueCircle.js +1 -1
  270. package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueFill.js +1 -1
  271. package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueLine.js +1 -1
  272. package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueSymbol.js +1 -1
  273. package/views/2d/engine/webgl/shaderGraph/typed/TypedShaderProgram.js +1 -1
  274. package/views/2d/engine/webgl/shaderGraph/types.js +2 -0
  275. package/views/2d/engine/webgl/shaderGraph/uniformBufferUtils.js +2 -0
  276. package/views/2d/layers/MediaLayerView2D.js +1 -1
  277. package/views/2d/layers/TileLayerView2D.js +1 -1
  278. package/views/2d/layers/support/DisplayGL.js +1 -1
  279. package/views/2d/layers/support/RouteLayerInteraction.js +1 -1
  280. package/views/2d/viewpointUtils.js +1 -1
  281. package/views/3d/environment/EnvironmentManager.js +1 -1
  282. package/views/3d/interactive/Manipulator3D.js +1 -1
  283. package/views/3d/interactive/editingTools/reshape/ReshapeOperation.js +1 -1
  284. package/views/3d/interactive/manipulatorUtils.js +1 -1
  285. package/views/3d/interactive/visualElements/ExtendedLineVisualElement.js +1 -1
  286. package/views/3d/interactive/visualElements/ParallelLineVisualElement.js +1 -1
  287. package/views/3d/interactive/visualElements/RightAngleQuadVisualElement.js +1 -1
  288. package/views/3d/interactive/visualElements/VerticesVisualElement.js +1 -1
  289. package/views/3d/layers/MediaLayerView3D.js +1 -1
  290. package/views/3d/layers/VectorTileLayerView3D.js +1 -1
  291. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  292. package/views/3d/layers/support/HeatmapFeatureProcessor.js +1 -1
  293. package/views/3d/support/GaussianSplatSortWorker.js +1 -1
  294. package/views/3d/support/GaussianSplatWorkerHandle.js +1 -1
  295. package/views/3d/support/flow/geometryUtils.js +1 -1
  296. package/views/3d/support/gaussianSplatting/GaussianSplatDataStore.js +1 -1
  297. package/views/3d/support/hitTest.js +1 -1
  298. package/views/3d/support/renderInfoUtils/line.js +1 -1
  299. package/views/3d/support/renderInfoUtils/polygon.js +1 -1
  300. package/views/3d/terrain/DrapedZ.js +2 -0
  301. package/views/3d/terrain/OverlayRenderer.js +1 -1
  302. package/views/3d/terrain/TileCompositor.js +1 -1
  303. package/views/3d/webgl/RenderCamera.js +1 -1
  304. package/views/3d/webgl/RenderNode.js +1 -1
  305. package/views/3d/webgl-engine/core/shaderLibrary/TextureBackedBuffer.glsl.js +2 -2
  306. package/views/3d/webgl-engine/core/shaderLibrary/TextureBackedBufferFields.glsl.js +2 -2
  307. package/views/3d/webgl-engine/core/shaderLibrary/util/GaussianSplatCovariance.glsl.js +8 -3
  308. package/views/3d/webgl-engine/core/shaderLibrary/util/GaussianSplatEvaluation.glsl.js +8 -2
  309. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowAccumulator.js +2 -0
  310. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowCastAccumulate.glsl.js +2 -0
  311. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowCastAccumulateTechnique.js +2 -0
  312. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowCastAccumulateTechniqueConfiguration.js +2 -0
  313. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowCastClear.glsl.js +2 -0
  314. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowCastClearTechnique.js +2 -0
  315. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowCastMaskTechnique.js +2 -0
  316. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowCastRenderer.js +2 -0
  317. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowCastVisualize.glsl.js +2 -0
  318. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowCastVisualizeTechnique.js +2 -0
  319. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowCastVisualizeTechniqueConfiguration.js +2 -0
  320. package/views/3d/webgl-engine/lib/CutFillVisualization.js +1 -1
  321. package/views/3d/webgl-engine/lib/PositionReader.js +1 -1
  322. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  323. package/views/3d/webgl-engine/lib/TextureBackedBuffer/TextureBackedBuffer.js +1 -1
  324. package/views/3d/webgl-engine/lib/TextureBackedBuffer/TextureBackedBufferFields.js +1 -1
  325. package/views/3d/webgl-engine/lib/screenPolygonOverlapUtils.js +1 -1
  326. package/views/3d/webgl-engine/materials/HeatmapDensityMaterial.js +1 -1
  327. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  328. package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
  329. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  330. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  331. package/views/3d/webgl-engine/shaders/DefaultMaterialTechniqueConfiguration.js +1 -1
  332. package/views/3d/webgl-engine/shaders/GaussianSplatPass.glsl.js +28 -21
  333. package/views/3d/webgl-engine/shaders/HeatmapDensity.glsl.js +1 -1
  334. package/views/3d/webgl-engine/shaders/HeatmapDensityTechnique.js +1 -1
  335. package/views/3d/webgl-engine/shaders/OccludedGeometryDepth.glsl.js +2 -0
  336. package/views/3d/webgl-engine/shaders/OccludedGeometryDepthTechnique.js +2 -0
  337. package/views/VideoView.js +1 -1
  338. package/views/selection/SelectionOperation.js +1 -1
  339. package/views/webgl/RenderingContext.js +1 -1
  340. package/views/webgl/UniformBufferLayout.js +1 -1
  341. package/views/webgl/UniformBufferObject.js +1 -1
  342. package/widgets/BatchAttributeForm/inputs/FieldInput.d.ts +20 -6
  343. package/widgets/BatchAttributeForm/inputs/FieldInput.js +1 -1
  344. package/widgets/BatchAttributeForm/inputs/support/MultipleChoiceController.d.ts +100 -0
  345. package/widgets/BatchAttributeForm/inputs/support/MultipleChoiceController.js +2 -0
  346. package/widgets/BatchAttributeForm/inputs/support/createBatchFormInputs.js +1 -1
  347. package/widgets/BatchAttributeForm/inputs/support/multipleChoiceInputUtils.js +1 -1
  348. package/widgets/BatchAttributeForm.js +1 -1
  349. package/widgets/Feature/FeatureRelationship/FeatureRelationshipViewModel.js +1 -1
  350. package/widgets/OrientedImageryViewer.js +1 -1
  351. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
  352. package/widgets/UtilityNetworkTrace/support/GeometryHandler.js +1 -1
  353. package/widgets/UtilityNetworkTrace/support/ResultAreaHandler.js +1 -1
  354. package/widgets/support/SelectionList/GroupLayerItem.d.ts +8 -1
  355. package/widgets/support/SelectionList/GroupLayerItem.js +1 -1
  356. package/widgets/support/SelectionList/LayerItem.d.ts +8 -1
  357. package/widgets/support/SelectionList/LayerItem.js +1 -1
  358. package/widgets/support/SelectionList/SelectionListViewModel.d.ts +29 -1
  359. package/widgets/support/SelectionList/SelectionListViewModel.js +1 -1
  360. package/widgets/support/SelectionList.js +1 -1
  361. package/widgets/support/SelectionToolbar.js +1 -1
  362. package/assets/esri/core/workers/chunks/01c92e68fb17cf2d0e08.js +0 -1
  363. package/assets/esri/core/workers/chunks/02dd79beb13eff6be85e.js +0 -1
  364. package/assets/esri/core/workers/chunks/0823961e5d0bdedbf8cf.js +0 -2
  365. package/assets/esri/core/workers/chunks/0aedeb837399d3f92e4a.js +0 -1
  366. package/assets/esri/core/workers/chunks/0bf644f93c180a2bc2f8.js +0 -705
  367. package/assets/esri/core/workers/chunks/0dbf31a663b5220a3136.js +0 -1
  368. package/assets/esri/core/workers/chunks/0df660dfd941cff3ea1d.js +0 -1
  369. package/assets/esri/core/workers/chunks/1119a33245138e7b3914.js +0 -1
  370. package/assets/esri/core/workers/chunks/1418c03c4ab87f7ab5f4.js +0 -1
  371. package/assets/esri/core/workers/chunks/160b204cbf5bda2a29e9.js +0 -1
  372. package/assets/esri/core/workers/chunks/193aed69de2dec4f36b6.js +0 -1
  373. package/assets/esri/core/workers/chunks/1cc063aa2ddf44bbd515.js +0 -1
  374. package/assets/esri/core/workers/chunks/264fd750691d517ab1f3.js +0 -1
  375. package/assets/esri/core/workers/chunks/2791f3fe16ca5ee2f39a.js +0 -1
  376. package/assets/esri/core/workers/chunks/2a2ed7bd44010f24c2dd.js +0 -1
  377. package/assets/esri/core/workers/chunks/2bdb9b5365869081c936.js +0 -1
  378. package/assets/esri/core/workers/chunks/2d45daacec0d5ed38782.js +0 -1
  379. package/assets/esri/core/workers/chunks/2e44978ee677aa23163d.js +0 -256
  380. package/assets/esri/core/workers/chunks/2ea3ca68cfa4d34e8f3b.js +0 -1
  381. package/assets/esri/core/workers/chunks/2f81047790c4890ae625.js +0 -1
  382. package/assets/esri/core/workers/chunks/32f5112c848efec6c33b.js +0 -1
  383. package/assets/esri/core/workers/chunks/35fd2f765d2cb3f59a22.js +0 -1462
  384. package/assets/esri/core/workers/chunks/3bc2943035391b44d4cf.js +0 -29
  385. package/assets/esri/core/workers/chunks/3d6b2d5ae647e140abaf.js +0 -1
  386. package/assets/esri/core/workers/chunks/44e8cd4b3dad777ab0c9.js +0 -1
  387. package/assets/esri/core/workers/chunks/45ccca01db0027b9dc16.js +0 -1
  388. package/assets/esri/core/workers/chunks/4710f21b138a2c9a0345.js +0 -1
  389. package/assets/esri/core/workers/chunks/4abd54518e35050feb90.js +0 -1
  390. package/assets/esri/core/workers/chunks/4b5bd0c9a55ea2998601.js +0 -1
  391. package/assets/esri/core/workers/chunks/4c2794687aea172775a0.js +0 -1
  392. package/assets/esri/core/workers/chunks/4cf2b0558a4acc141429.js +0 -1
  393. package/assets/esri/core/workers/chunks/4d9bde9f66817a92ceca.js +0 -1
  394. package/assets/esri/core/workers/chunks/4e129b9f5772a06e580c.js +0 -1
  395. package/assets/esri/core/workers/chunks/509aecafbc629bee1c15.js +0 -1
  396. package/assets/esri/core/workers/chunks/5441f96cdd0660229efe.js +0 -1
  397. package/assets/esri/core/workers/chunks/553be2bd69bd311477ea.js +0 -1
  398. package/assets/esri/core/workers/chunks/5600fc334d20c4f0c83d.js +0 -1
  399. package/assets/esri/core/workers/chunks/56bbde1dff96b423fbb9.js +0 -1
  400. package/assets/esri/core/workers/chunks/5bf4ab72b9634b06cc5d.js +0 -1
  401. package/assets/esri/core/workers/chunks/5e3d5347223f0111f40f.js +0 -1
  402. package/assets/esri/core/workers/chunks/613e799377bdb767c955.js +0 -1
  403. package/assets/esri/core/workers/chunks/623d5518bca227f643bd.js +0 -1
  404. package/assets/esri/core/workers/chunks/62811bca7ad2100c023c.js +0 -1
  405. package/assets/esri/core/workers/chunks/64176f7ae719289a2f79.js +0 -1
  406. package/assets/esri/core/workers/chunks/6f58cb9dffe8016397a2.js +0 -1
  407. package/assets/esri/core/workers/chunks/73f77f5a6907cb8d9a35.js +0 -1
  408. package/assets/esri/core/workers/chunks/76b573143d1a65fdbcb6.js +0 -1
  409. package/assets/esri/core/workers/chunks/7aaa051b51a8e34bbfb0.js +0 -1
  410. package/assets/esri/core/workers/chunks/7b5b66ae79e0287e3ade.js +0 -1
  411. package/assets/esri/core/workers/chunks/7e373d9c98ce910db9d2.js +0 -1
  412. package/assets/esri/core/workers/chunks/7f91e45156bbe88f9a62.js +0 -1
  413. package/assets/esri/core/workers/chunks/86a4057572755b403548.js +0 -1
  414. package/assets/esri/core/workers/chunks/877594b6db08da98acd7.js +0 -1
  415. package/assets/esri/core/workers/chunks/8a48a6760c33ed50b650.js +0 -1
  416. package/assets/esri/core/workers/chunks/8d21e2dabc5165f1c8ca.js +0 -1
  417. package/assets/esri/core/workers/chunks/903e1cd8b76eff19ebdf.js +0 -1
  418. package/assets/esri/core/workers/chunks/917c11cb40a7742d7f98.js +0 -1
  419. package/assets/esri/core/workers/chunks/91d133c04ca764d74934.js +0 -1
  420. package/assets/esri/core/workers/chunks/92c4464b67fce6cea134.js +0 -1
  421. package/assets/esri/core/workers/chunks/947f1ea4dbc3e3419ecc.js +0 -1
  422. package/assets/esri/core/workers/chunks/9482a6d7baa24bbf5693.js +0 -1
  423. package/assets/esri/core/workers/chunks/96cec8a02ca96175d602.js +0 -1
  424. package/assets/esri/core/workers/chunks/98e6c1d035755a074d24.js +0 -1
  425. package/assets/esri/core/workers/chunks/9902fcd2070c8eb6d043.js +0 -1
  426. package/assets/esri/core/workers/chunks/9b76c8974424a1908e86.js +0 -1
  427. package/assets/esri/core/workers/chunks/9be6827e5756031a56c1.js +0 -1
  428. package/assets/esri/core/workers/chunks/a101152066dd56259619.js +0 -1
  429. package/assets/esri/core/workers/chunks/a27cdf4c29dd50a6dab1.js +0 -1
  430. package/assets/esri/core/workers/chunks/a294dd12b5c708ce04af.js +0 -1
  431. package/assets/esri/core/workers/chunks/a2a2c7e274fb32fecffa.js +0 -1
  432. package/assets/esri/core/workers/chunks/a3bf8aa81ee398da5b52.js +0 -1
  433. package/assets/esri/core/workers/chunks/a9053ad0f4e8c4705665.js +0 -1
  434. package/assets/esri/core/workers/chunks/afeeb11b39e140303b5a.js +0 -1
  435. package/assets/esri/core/workers/chunks/b1a175b3b2d1a7ddde8e.js +0 -1
  436. package/assets/esri/core/workers/chunks/b33d870cbfa238762c5e.js +0 -1
  437. package/assets/esri/core/workers/chunks/b3b53cf0a3a30164d337.js +0 -1
  438. package/assets/esri/core/workers/chunks/b599b7dadce8b8bc88f6.js +0 -1
  439. package/assets/esri/core/workers/chunks/b858adff7043683fe41c.js +0 -1
  440. package/assets/esri/core/workers/chunks/b984b808d383974ca3d8.js +0 -1
  441. package/assets/esri/core/workers/chunks/be1d2c3a61e6447fbbc7.js +0 -1
  442. package/assets/esri/core/workers/chunks/bff75cc7413bf0d319db.js +0 -1
  443. package/assets/esri/core/workers/chunks/c02ae1d40c1fe95ae6c5.js +0 -1
  444. package/assets/esri/core/workers/chunks/c1189316d24fb4cdb2a0.js +0 -1
  445. package/assets/esri/core/workers/chunks/c1a4d499a30f3d80567b.js +0 -1
  446. package/assets/esri/core/workers/chunks/c25dc9073e73d6b44d88.js +0 -1
  447. package/assets/esri/core/workers/chunks/c45a5bcf26659daf02a1.js +0 -1
  448. package/assets/esri/core/workers/chunks/c46f79d5b7712adbbd1c.js +0 -1
  449. package/assets/esri/core/workers/chunks/c53b2be005721591e29b.js +0 -1
  450. package/assets/esri/core/workers/chunks/c82ab4f0908290e70ee9.js +0 -1
  451. package/assets/esri/core/workers/chunks/c866b66ba72d96453899.js +0 -1
  452. package/assets/esri/core/workers/chunks/c873383e7dae35dc1a61.js +0 -1
  453. package/assets/esri/core/workers/chunks/cc5ec6e99aa09342c704.js +0 -1
  454. package/assets/esri/core/workers/chunks/cd892c9603710d6130a9.js +0 -1
  455. package/assets/esri/core/workers/chunks/cf360767310fb45660a8.js +0 -1
  456. package/assets/esri/core/workers/chunks/d021775cf747556660a5.js +0 -1
  457. package/assets/esri/core/workers/chunks/d08f81d545930a79fb2e.js +0 -1
  458. package/assets/esri/core/workers/chunks/d607cf154218d20e4114.js +0 -1
  459. package/assets/esri/core/workers/chunks/d79ce047afbc034f6008.js +0 -1
  460. package/assets/esri/core/workers/chunks/da6134c7883531f21afe.js +0 -1
  461. package/assets/esri/core/workers/chunks/dbc9249dae41096d750d.js +0 -1
  462. package/assets/esri/core/workers/chunks/e4a2eefffe16cd5bb20f.js +0 -1
  463. package/assets/esri/core/workers/chunks/e602b91d8fdc36a92530.js +0 -1
  464. package/assets/esri/core/workers/chunks/ebfb3cdc0df15eb05d75.js +0 -1
  465. package/assets/esri/core/workers/chunks/ec1841e6e498d54012eb.js +0 -1
  466. package/assets/esri/core/workers/chunks/ed1de8b7406269e217b9.js +0 -29
  467. package/assets/esri/core/workers/chunks/f1727b4a32cb6f36a5e6.js +0 -1
  468. package/assets/esri/core/workers/chunks/f2ab8e49c7f17f488aa8.js +0 -1
  469. package/assets/esri/core/workers/chunks/f721756a6c1593f96409.js +0 -1
  470. package/assets/esri/core/workers/chunks/fb51f823b25c827c6b29.js +0 -1
  471. package/chunks/geometryEngineBase.js +0 -2
  472. package/geometry/geometryAdapters/json.js +0 -2
  473. package/geometry/geometryEngineJSON.js +0 -2
  474. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +0 -2
  475. package/views/3d/webgl-engine/lib/ShadowCastRenderer.js +0 -2
  476. package/views/3d/webgl-engine/shaders/ShadowCastAccumulate.glsl.js +0 -2
  477. package/views/3d/webgl-engine/shaders/ShadowCastAccumulateTechnique.js +0 -2
  478. package/views/3d/webgl-engine/shaders/ShadowCastAccumulateTechniqueConfiguration.js +0 -2
  479. package/views/3d/webgl-engine/shaders/ShadowCastClear.glsl.js +0 -2
  480. package/views/3d/webgl-engine/shaders/ShadowCastClearTechnique.js +0 -2
  481. package/views/3d/webgl-engine/shaders/ShadowCastMaskTechnique.js +0 -2
  482. package/views/3d/webgl-engine/shaders/ShadowCastVisualize.glsl.js +0 -2
  483. package/views/3d/webgl-engine/shaders/ShadowCastVisualizeTechnique.js +0 -2
  484. package/views/3d/webgl-engine/shaders/ShadowCastVisualizeTechniqueConfiguration.js +0 -2
  485. /package/assets/esri/core/workers/chunks/{0823961e5d0bdedbf8cf.js.LICENSE.txt → 4f8ce5887102971bfa34.js.LICENSE.txt} +0 -0
  486. /package/assets/esri/core/workers/chunks/{186bedc377cc97731ca2.js.LICENSE.txt → 532e3a59888e4cc13bd3.js.LICENSE.txt} +0 -0
  487. /package/assets/esri/core/workers/chunks/{ad1d06a91121ebfe9162.js.LICENSE.txt → 755b2d883fba90c4e688.js.LICENSE.txt} +0 -0
  488. /package/assets/esri/core/workers/chunks/{d03e7be74c57c3dbf003.js.LICENSE.txt → a014c17fc210620da738.js.LICENSE.txt} +0 -0
  489. /package/assets/esri/core/workers/chunks/{8302bffd28cc6720e0fe.js.LICENSE.txt → a19be304219808268039.js.LICENSE.txt} +0 -0
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[2438],{57582(t,e,s){s.d(e,{af:()=>n,rK:()=>h}),s(92602);const i="arial-unicode-ms";function n(t){if(!t)return i;const e=t.toLowerCase().split(" ").join("-");switch(e){case"serif":return"noto-serif";case"sans-serif":return"arial-unicode-ms";case"monospace":return"ubuntu-mono";case"fantasy":return"cabin-sketch";case"cursive":return"redressed";default:return e}}function h(t){const e=function(t){if(!t.weight)return"";switch(t.weight.toLowerCase()){case"bold":case"bolder":return"-bold"}return""}(t)+function(t){if(!t.style)return"";switch(t.style.toLowerCase()){case"italic":case"oblique":return"-italic"}return""}(t);return n(t.family)+(e.length>0?e:"-regular")}new Map,new Set,s.d(e,["Vb",0,i])},85560(t,e,s){function i(){const t=new Float32Array(6);return t[0]=1,t[3]=1,t}function n(t,e,s,i){const n=e[i],h=e[i+1];t[i]=s[0]*n+s[2]*h+s[4],t[i+1]=s[1]*n+s[3]*h+s[5]}s.d(e,{vt:()=>i}),Object.freeze(Object.defineProperty({__proto__:null,clone:function(t){const e=new Float32Array(6);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e},create:i,fromValues:function(t,e,s,i,n,h){const r=new Float32Array(6);return r[0]=t,r[1]=e,r[2]=s,r[3]=i,r[4]=n,r[5]=h,r},transform:n,transformMany:function(t,e,s,i=0,h=0,r=2){const o=h||e.length/r;for(let h=i;h<o;h++)n(t,e,s,h*r)}},Symbol.toStringTag,{value:"Module"}))},88340(t,e,s){function i(){return new Float32Array(2)}function n(t,e){const s=new Float32Array(2);return s[0]=t,s[1]=e,s}function h(){return i()}function r(){return n(1,1)}function o(){return n(1,0)}function a(){return n(0,1)}s.d(e,{fA:()=>n,vt:()=>i});const l=h(),c=r(),u=o(),_=a();Object.freeze(Object.defineProperty({__proto__:null,ONES:c,UNIT_X:u,UNIT_Y:_,ZEROS:l,clone:function(t){const e=new Float32Array(2);return e[0]=t[0],e[1]=t[1],e},create:i,fromValues:n,ones:r,unitX:o,unitY:a,zeros:h},Symbol.toStringTag,{value:"Module"})),s.d(e,["Un",0,c,"uY",0,l])},16905(t,e,s){s.d(e,{$0:()=>a,D_:()=>n,Tl:()=>o,e$:()=>r,lw:()=>h});var i=s(34304);function n(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t}function h(t,e,s){const i=e[0],n=e[1],h=e[2],r=e[3],o=e[4],a=e[5],l=s[0],c=s[1],u=s[2],_=s[3],p=s[4],f=s[5];return t[0]=i*l+h*c,t[1]=n*l+r*c,t[2]=i*u+h*_,t[3]=n*u+r*_,t[4]=i*p+h*f+o,t[5]=n*p+r*f+a,t}function r(t,e,s){const i=e[0],n=e[1],h=e[2],r=e[3],o=e[4],a=e[5],l=Math.sin(s),c=Math.cos(s);return t[0]=i*c+h*l,t[1]=n*c+r*l,t[2]=i*-l+h*c,t[3]=n*-l+r*c,t[4]=o,t[5]=a,t}function o(t,e,s){const i=e[0],n=e[1],h=e[2],r=e[3],o=e[4],a=e[5],l=s[0],c=s[1];return t[0]=i,t[1]=n,t[2]=h,t[3]=r,t[4]=i*l+h*c+o,t[5]=n*l+r*c+a,t}function a(t,e){const s=Math.sin(e),i=Math.cos(e);return t[0]=i,t[1]=s,t[2]=-s,t[3]=i,t[4]=0,t[5]=0,t}function l(t,e,s){return t[0]=e[0]-s[0],t[1]=e[1]-s[1],t[2]=e[2]-s[2],t[3]=e[3]-s[3],t[4]=e[4]-s[4],t[5]=e[5]-s[5],t}const c=h,u=l;Object.freeze(Object.defineProperty({__proto__:null,add:function(t,e,s){return t[0]=e[0]+s[0],t[1]=e[1]+s[1],t[2]=e[2]+s[2],t[3]=e[3]+s[3],t[4]=e[4]+s[4],t[5]=e[5]+s[5],t},copy:function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t},determinant:function(t){return t[0]*t[3]-t[1]*t[2]},equals:function(t,e){const s=t[0],n=t[1],h=t[2],r=t[3],o=t[4],a=t[5],l=e[0],c=e[1],u=e[2],_=e[3],p=e[4],f=e[5],d=(0,i.FD)();return Math.abs(s-l)<=d*Math.max(1,Math.abs(s),Math.abs(l))&&Math.abs(n-c)<=d*Math.max(1,Math.abs(n),Math.abs(c))&&Math.abs(h-u)<=d*Math.max(1,Math.abs(h),Math.abs(u))&&Math.abs(r-_)<=d*Math.max(1,Math.abs(r),Math.abs(_))&&Math.abs(o-p)<=d*Math.max(1,Math.abs(o),Math.abs(p))&&Math.abs(a-f)<=d*Math.max(1,Math.abs(a),Math.abs(f))},exactEquals:function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]&&t[3]===e[3]&&t[4]===e[4]&&t[5]===e[5]},frob:function(t){return Math.sqrt(t[0]**2+t[1]**2+t[2]**2+t[3]**2+t[4]**2+t[5]**2+1)},fromRotation:a,fromScaling:function(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=e[1],t[4]=0,t[5]=0,t},fromTranslation:function(t,e){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=e[0],t[5]=e[1],t},identity:n,invert:function(t,e){const s=e[0],i=e[1],n=e[2],h=e[3],r=e[4],o=e[5];let a=s*h-i*n;return a?(a=1/a,t[0]=h*a,t[1]=-i*a,t[2]=-n*a,t[3]=s*a,t[4]=(n*o-h*r)*a,t[5]=(i*r-s*o)*a,t):null},mul:c,multiply:h,multiplyScalar:function(t,e,s){return t[0]=e[0]*s,t[1]=e[1]*s,t[2]=e[2]*s,t[3]=e[3]*s,t[4]=e[4]*s,t[5]=e[5]*s,t},multiplyScalarAndAdd:function(t,e,s,i){return t[0]=e[0]+s[0]*i,t[1]=e[1]+s[1]*i,t[2]=e[2]+s[2]*i,t[3]=e[3]+s[3]*i,t[4]=e[4]+s[4]*i,t[5]=e[5]+s[5]*i,t},rotate:r,scale:function(t,e,s){const i=e[0],n=e[1],h=e[2],r=e[3],o=e[4],a=e[5],l=s[0],c=s[1];return t[0]=i*l,t[1]=n*l,t[2]=h*c,t[3]=r*c,t[4]=o,t[5]=a,t},set:function(t,e,s,i,n,h,r){return t[0]=e,t[1]=s,t[2]=i,t[3]=n,t[4]=h,t[5]=r,t},str:function(t){return"mat2d("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+", "+t[4]+", "+t[5]+")"},sub:u,subtract:l,translate:o},Symbol.toStringTag,{value:"Module"}))},36745(t,e,s){s.d(e,{z:()=>o});var i=s(4718),n=s(51118),h=s(60408),r=s(92722);class o{static fromOptimized(t,e,s=1){return(new a).initialize(t,e,s)}static fromJSON(t){const[e,s]=c(t),i=(0,h.Pv)(t),n=(0,h.W0)(t);return(new u).initialize(e,s,i,n,1)}static fromOptimizedCIM(t,e,s=1){return(new _).initialize(t,e,s)}static fromJSONCIM(t,e=1){const[s,i]=c(t),n=(0,h.Pv)(t),r=(0,h.W0)(t);return(new p).initialize(s,i,n,r,e)}static fromFeatureSetReader(t){const e=t.readGeometryForDisplay(),s=t.geometryType;return e&&s?this.fromOptimized(e,s):null}static fromFeatureSetReaderCIM(t){const e=t.readGeometryForDisplay(),s=t.geometryType;return e&&s?this.fromOptimizedCIM(e,s):null}static createEmptyOptimized(t,e=!1,s=!1,i=1){return(new _).initialize(new r.A([],[],e,s),t,i)}static createEmptyJSON(t,e=!1,s=!1){return(new u).initialize([],t,e,s,1)}static createEmptyOptimizedCIM(t,e=!1,s=!1,i=1){return(new _).initialize(new r.A([],[],e,s),t,i)}static createEmptyJSONCIM(t,e=!1,s=!1,i=1){return(new p).initialize([],t,e,s,i)}asJSON(){const t=(0,n.x)(this),{hasZ:e,hasM:s}=this;return"esriGeometryEnvelope"===this.geometryType?{xmin:t[0][0][0],ymin:t[0][0][1],xmax:t[0][2][0],ymax:t[0][2][1]}:"esriGeometryMultipoint"===this.geometryType?{points:t.flat(),hasZ:e,hasM:s}:"esriGeometryPoint"===this.geometryType?{x:t[0][0][0],y:t[0][0][1],z:e?t[0][0][2]:void 0,m:s?t[0][0][e?3:2]:void 0}:"esriGeometryPolygon"===this.geometryType?{rings:t,hasZ:e,hasM:s}:{paths:t,hasZ:e,hasM:s}}getCurrentRingArea(){if(this.pathSize<3)return 0;let t,e,s=0;if(this.seekPathStart(),!this.nextPoint())return 0;t=this.x,e=this.y;const i=t,n=e;for(;this.nextPoint();)s+=(t-this.x)*(e+this.y),t=this.x,e=this.y;return s+=(t-i)*(e+n),-.5*s}invertY(){this.yFactor*=-1}}class a extends o{constructor(){super(...arguments),this._end=-1}get hasZ(){return this._geometry?.hasZ}get hasM(){return this._geometry?.hasM}initialize(t,e,s){return this.geometryType=e,this._stride=t.stride,this._geometry=t,this._pathIndex=-1,this._pathOffset=0,this._pointOffset=-this._stride,this._end=-1,this.yFactor=s,this}reset(){this.initialize(this._geometry,this.geometryType,this.yFactor)}seekPath(t){if(t>=0&&t<this.totalSize){if(this._pathIndex<t)for(;this._pathIndex<t&&this.nextPath(););else if(this._pathIndex>t)for(;this._pathIndex>t&&this.prevPath(););return!0}return!1}seekPathStart(){this._pointOffset=this._pathOffset-this._stride}seekPathEnd(){this._pointOffset=this._end}seekInPath(t){const e=this._pathOffset+t*this._stride;return e>=0&&e<this._end&&(this._pointOffset=e,!0)}nextPoint(){return(this._pointOffset+=this._stride)<this._end}prevPoint(){return(this._pointOffset-=this._stride)>=this._pathOffset}nextPath(){return!(this.pathIndex>=this.totalSize-1||(this._pathIndex>=0&&(this._pathOffset+=this._stride*this.pathSize),this._pathIndex++,this._pointOffset=this._pathOffset-this._stride,this._end=this._pointOffset+this._stride+this._stride*this.pathSize,0))}prevPath(){return!(this.pathIndex<=0||(this._pathIndex--,this._end=this._pathOffset,this._pathOffset-=this._stride*this.pathSize,this._pointOffset=this._pathOffset-this._stride,0))}getCurrentPath(){const t=this._end,e=this._geometry.coords,s=this._pathOffset;return(new a).initialize(new r.A([this.pathSize],e.slice(s,t),this.hasZ,this.hasM),this.geometryType,this.yFactor)}pathLength(){const t=this._end,e=this._stride,s=this._geometry.coords;let i=0;for(let n=this._pathOffset+e;n<t;n+=e){const t=s[n-e],h=s[n-e+1],r=s[n]-t,o=s[n+1]-h;i+=Math.sqrt(r*r+o*o)}return i}startPath(){this._geometry.lengths.push(0)}pushPath(t){this.startPath(),this.pushPoints(t)}pushPoint(t){for(let e=0;e<this._stride;++e)this._geometry.coords.push(t[e]);this._geometry.lengths[this.totalSize-1]++}pushXY(t,e){this._geometry.coords.push(t,e),this._geometry.lengths[this.totalSize-1]++}pushPoints(t){for(const e of t)for(let t=0;t<this._stride;++t)this._geometry.coords.push(e[t]);this._geometry.lengths[this.totalSize-1]+=t.length}pushCursor(t){const e=t.asOptimized();this._geometry.coords.push(...e.coords),this._geometry.lengths.push(...e.lengths)}asOptimized(){const t=this._geometry.clone();if(1!==this.yFactor)for(let e=1;e<t.coords.length;e+=this._stride)t.coords[e]*=this.yFactor;return"esriGeometryPoint"===this.geometryType&&(t.lengths.length=0),t}isClosed(){const t=this._geometry.coords,e=this._pathOffset,s=this._end-this._stride;for(let i=0;i<this._stride;i++)if(t[e+i]!==t[s+i])return!1;return!0}clone(){return(new a).initialize(this._geometry.clone(),this.geometryType,this.yFactor)}get totalPoints(){return this._geometry.isPoint?1:this._geometry.lengths.reduce((t,e)=>t+e)}get pathSize(){const{lengths:t}=this._geometry;return this._geometry.isPoint?1:this._pathIndex<0||this._pathIndex>t.length-1?0:t[this._pathIndex]}get totalSize(){return this._geometry.isPoint?1:this._geometry.lengths.length}get x(){return this._geometry.coords[this._pointOffset]}set x(t){this._geometry.coords[this._pointOffset]=t}get y(){return this.yFactor*this._geometry.coords[this._pointOffset+1]}set y(t){this._geometry.coords[this._pointOffset+1]=this.yFactor*t}get z(){return this._geometry.coords[this._pointOffset+2]}set z(t){this._geometry.coords[this._pointOffset+2]=t}get m(){const t=this.hasZ?3:2;return this._geometry.coords[this._pointOffset+t]}set m(t){this._geometry.coords[this._pointOffset+3]=t}get pathIndex(){return this._pathIndex}get _coordIndex(){return this._pointOffset/this._stride}}function l(t){const e=[t.x,t.y];return t.z&&e.push(t.z),t.m&&e.push(t.m),e}function c(t){return(0,h.Bi)(t)?[t.rings,"esriGeometryPolygon"]:(0,h.Rg)(t)?[t.paths,"esriGeometryPolyline"]:(0,h.U9)(t)?[[t.points],"esriGeometryMultipoint"]:(0,h.ZC)(t)?[[[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]]],"esriGeometryEnvelope"]:(0,h.fT)(t)?[[[l(t)]],"esriGeometryPoint"]:[[],"esriGeometryPolyline"]}class u extends o{initialize(t,e,s,i,n){return this._paths=t,this.geometryType=e,this.hasZ=s,this.hasM=i,this._pathIndex=this._pointIndex=-1,this.yFactor=n,this._mIndex=this.hasZ?3:2,this}reset(){this._pathIndex=this._pointIndex=-1}seekPath(t){return this._pathIndex=t,this._pointIndex=-1,t>=0&&t<this.totalSize&&(this._currentPath=this._paths[t],!0)}seekPathStart(){this._pointIndex=-1}seekPathEnd(){this._pointIndex=this._currentPath.length}seekInPath(t){return t>=0&&t<this._currentPath.length&&(this._pointIndex=t,this._currentPoint=this._currentPath[this._pointIndex],!0)}nextPoint(){return this._currentPoint=this._currentPath[++this._pointIndex],this._pointIndex<this._currentPath.length}prevPoint(){return this._currentPoint=this._currentPath[--this._pointIndex],this._pointIndex>=0}nextPath(){return this._pointIndex=-1,this._currentPath=this._paths[++this._pathIndex],this._pathIndex<this.totalSize}prevPath(){return this.pathIndex>0&&(this._pointIndex=-1,this._pathIndex--,this._currentPath=this._paths[this._pathIndex],!0)}pathLength(){const t=this._currentPath.length,e=this._currentPath;let s=0;for(let i=1;i<t;i++){const t=e[i-1],n=e[i],h=t[0],r=t[1],o=n[0]-h,a=n[1]-r;s+=Math.sqrt(o*o+a*a)}return s}startPath(){this._paths.push([])}getCurrentPath(){return(new u).initialize([this._currentPath],this.geometryType,this.hasZ,this.hasM,this.yFactor)}pushPath(t){this._paths.push(t)}pushPoint(t){this._paths[this.totalSize-1].push(t)}pushXY(t,e){this._paths[this.totalSize-1].push([t,e])}pushPoints(t){this._paths[this.totalSize-1].push(...t)}pushCursor(t){const e=(0,n.x)(t);for(const t of e)this.pushPath(t)}asOptimized(){const{hasZ:t,hasM:e}=this,s=new r.A([],[],t,e),{coords:i,lengths:n}=s;if("esriGeometryPoint"===this.geometryType)i.push(...this._paths[0][0]),n.length=0;else for(const s of this._paths){for(const n of s)i.push(n[0]),i.push(n[1]*this.yFactor),t&&i.push(n[2]),e&&i.push(n[this._mIndex]);n.push(s.length)}return s}isClosed(){const t=this._currentPath[0],e=this._currentPath[this._currentPath.length-1];for(let s=0;s<t.length;s++)if(t[s]!==e[s])return!1;return!0}clone(){return(new u).initialize((0,i.o8)(this._paths),this.geometryType,this.hasZ,this.hasM,this.yFactor)}get totalPoints(){return this._paths.map(t=>t.length).reduce((t,e)=>t+e)}get pathSize(){return this._pathIndex<0||this._pathIndex>this.totalSize-1?-1:this._paths[this._pathIndex].length}get totalSize(){return this._paths.length}get x(){return this._currentPoint[0]}set x(t){this._currentPoint[0]=t}get y(){return this.yFactor*this._currentPoint[1]}set y(t){this._currentPoint[1]=this.yFactor*t}get z(){return this._currentPoint[2]}set z(t){this._currentPoint[2]=t}get m(){return this._currentPoint[this._mIndex]}set m(t){this._currentPoint[this._mIndex]=t}get pathIndex(){return this._pathIndex}}class _ extends a{initialize(t,e,s){return super.initialize(t,e,s),this._controlPoints||(this._controlPoints=this._controlPoints=new Array(this.totalSize).fill(void 0).map(t=>new Set)),this}startPath(){super.startPath(),this._controlPoints.push(new Set)}clone(){const t=(new _).initialize(this._geometry.clone(),this.geometryType,this.yFactor);return t._controlPoints=this._controlPoints,t}setControlPoint(){this._controlPoints[this.pathIndex].add(this._coordIndex)}getControlPoint(){return this._controlPoints[this.pathIndex].has(this._coordIndex)}setControlPointAt(t){this._controlPoints[this.pathIndex].add(t)}getControlPointAt(t){return this._controlPoints[this.pathIndex].has(t)}}class p extends u{initialize(t,e,s,i,n){return super.initialize(t,e,s,i,n)}clone(){return(new p).initialize((0,i.o8)(this._paths),this.geometryType,this.hasZ,this.hasM,this.yFactor)}setControlPoint(){this._paths[this.pathIndex][this._pointIndex][4]=1}getControlPoint(){return 1===this._paths[this.pathIndex][this._pointIndex][4]}setControlPointAt(t){this._paths[this.pathIndex][t][4]=1}getControlPointAt(t){return 1===this._paths[this.pathIndex][t][4]}}},6774(t,e,s){s.d(e,{O3:()=>h,Ox:()=>r,bR:()=>i});class i{constructor(t,e){this.x=t,this.y=e}static fromArray(t){return new i(t[0],t[1])}clone(){return new i(this.x,this.y)}equals(t,e){return t===this.x&&e===this.y}isEqual(t){return t.x===this.x&&t.y===this.y}setCoords(t,e){return this.x=t,this.y=e,this}normalize(){const t=this.x,e=this.y,s=Math.sqrt(t*t+e*e);return this.x/=s,this.y/=s,this}rightPerpendicular(){const t=this.x;return this.x=this.y,this.y=-t,this}leftPerpendicular(){const t=this.x;return this.x=-this.y,this.y=t,this}move(t,e){return this.x+=t,this.y+=e,this}assign(t){return this.x=t.x,this.y=t.y,this}assignAdd(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this}assignSub(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this}rotate(t,e){const s=this.x,i=this.y;return this.x=s*t-i*e,this.y=s*e+i*t,this}rotateReverse(t,e){const s=this.x,i=this.y;return this.x=s*t+i*e,this.y=-s*e+i*t,this}scale(t){return this.x*=t,this.y*=t,this}length(){const t=this.x,e=this.y;return Math.sqrt(t*t+e*e)}sub(t){return this.x-=t.x,this.y-=t.y,this}add(t){return this.x+=t.x,this.y+=t.y,this}static distance(t,e){const s=e.x-t.x,i=e.y-t.y;return Math.sqrt(s*s+i*i)}static add(t,e){return new i(t.x+e.x,t.y+e.y)}static sub(t,e){return new i(t.x-e.x,t.y-e.y)}}class n{constructor(t,e,s){this.ratio=t,this.x=e,this.y=s}}class h{constructor(t,e,s,i=8,n=8){this._lines=[],this._starts=[],this.validateTessellation=!0,this._pixelRatio=i,this._pixelMargin=n,this._tileSize=512*i,this._dz=t,this._yPos=e,this._xPos=s}setPixelMargin(t){t!==this._pixelMargin&&(this._pixelMargin=t,this.setExtent(this._extent))}setExtent(t){this._extent=t,this._finalRatio=this._tileSize/t*(1<<this._dz);let e=this._pixelRatio*this._pixelMargin;e/=this._finalRatio;const s=t>>this._dz;e>s&&(e=s),this._margin=e,this._xmin=s*this._xPos-e,this._ymin=s*this._yPos-e,this._xmax=this._xmin+s+2*e,this._ymax=this._ymin+s+2*e}reset(t){this._type=t,this._lines=[],this._starts=[],this._line=null,this._start=0}moveTo(t,e){this._pushLine(),this._prevIsIn=this._isIn(t,e),this._moveTo(t,e,this._prevIsIn),this._prevPt=new i(t,e),this._firstPt=new i(t,e),this._dist=0}lineTo(t,e){const s=this._isIn(t,e),h=new i(t,e),r=i.distance(this._prevPt,h);let o,a,l,c,u,_,p,f;if(s)this._prevIsIn?this._lineTo(t,e,!0):(o=this._prevPt,a=h,l=this._intersect(a,o),this._start=this._dist+r*(1-this._r),this._lineTo(l.x,l.y,!0),this._lineTo(a.x,a.y,!0));else if(this._prevIsIn)a=this._prevPt,o=h,l=this._intersect(a,o),this._lineTo(l.x,l.y,!0),this._lineTo(o.x,o.y,!1);else{const t=this._prevPt,e=h;if(t.x<=this._xmin&&e.x<=this._xmin||t.x>=this._xmax&&e.x>=this._xmax||t.y<=this._ymin&&e.y<=this._ymin||t.y>=this._ymax&&e.y>=this._ymax)this._lineTo(e.x,e.y,!1);else{const s=[];if((t.x<this._xmin&&e.x>this._xmin||t.x>this._xmin&&e.x<this._xmin)&&(c=(this._xmin-t.x)/(e.x-t.x),f=t.y+c*(e.y-t.y),f<=this._ymin?_=!1:f>=this._ymax?_=!0:s.push(new n(c,this._xmin,f))),(t.x<this._xmax&&e.x>this._xmax||t.x>this._xmax&&e.x<this._xmax)&&(c=(this._xmax-t.x)/(e.x-t.x),f=t.y+c*(e.y-t.y),f<=this._ymin?_=!1:f>=this._ymax?_=!0:s.push(new n(c,this._xmax,f))),(t.y<this._ymin&&e.y>this._ymin||t.y>this._ymin&&e.y<this._ymin)&&(c=(this._ymin-t.y)/(e.y-t.y),p=t.x+c*(e.x-t.x),p<=this._xmin?u=!1:p>=this._xmax?u=!0:s.push(new n(c,p,this._ymin))),(t.y<this._ymax&&e.y>this._ymax||t.y>this._ymax&&e.y<this._ymax)&&(c=(this._ymax-t.y)/(e.y-t.y),p=t.x+c*(e.x-t.x),p<=this._xmin?u=!1:p>=this._xmax?u=!0:s.push(new n(c,p,this._ymax))),0===s.length)u?_?this._lineTo(this._xmax,this._ymax,!0):this._lineTo(this._xmax,this._ymin,!0):_?this._lineTo(this._xmin,this._ymax,!0):this._lineTo(this._xmin,this._ymin,!0);else if(s.length>1&&s[0].ratio>s[1].ratio)this._start=this._dist+r*s[1].ratio,this._lineTo(s[1].x,s[1].y,!0),this._lineTo(s[0].x,s[0].y,!0);else{this._start=this._dist+r*s[0].ratio;for(let t=0;t<s.length;t++)this._lineTo(s[t].x,s[t].y,!0)}this._lineTo(e.x,e.y,!1)}}this._dist+=r,this._prevIsIn=s,this._prevPt=h}close(){if(this._line.length>2){const t=this._firstPt,e=this._prevPt;t.x===e.x&&t.y===e.y||this.lineTo(t.x,t.y);const s=this._line;let i=s.length;for(;i>=4&&(s[0].x===s[1].x&&s[0].x===s[i-2].x||s[0].y===s[1].y&&s[0].y===s[i-2].y);)s.pop(),s[0].x=s[i-2].x,s[0].y=s[i-2].y,--i}}result(t=!0){return this._pushLine(),0===this._lines.length?null:(3===this._type&&t&&o.simplify(this._tileSize,this._margin*this._finalRatio,this._lines),this._lines)}resultWithStarts(){if(2!==this._type)throw new Error("Only valid for lines");this._pushLine();const t=this._lines,e=t.length;if(0===e)return null;const s=[];for(let i=0;i<e;i++)s.push({line:t[i],start:this._starts[i]||0});return s}_isIn(t,e){return t>=this._xmin&&t<=this._xmax&&e>=this._ymin&&e<=this._ymax}_intersect(t,e){let s,n,h;if(e.x>=this._xmin&&e.x<=this._xmax)n=e.y<=this._ymin?this._ymin:this._ymax,h=(n-t.y)/(e.y-t.y),s=t.x+h*(e.x-t.x);else if(e.y>=this._ymin&&e.y<=this._ymax)s=e.x<=this._xmin?this._xmin:this._xmax,h=(s-t.x)/(e.x-t.x),n=t.y+h*(e.y-t.y);else{n=e.y<=this._ymin?this._ymin:this._ymax,s=e.x<=this._xmin?this._xmin:this._xmax;const i=(s-t.x)/(e.x-t.x),r=(n-t.y)/(e.y-t.y);i<r?(h=i,n=t.y+i*(e.y-t.y)):(h=r,s=t.x+r*(e.x-t.x))}return this._r=h,new i(s,n)}_pushLine(){this._line&&(1===this._type?this._line.length>0&&(this._lines.push(this._line),this._starts.push(this._start)):2===this._type?this._line.length>1&&(this._lines.push(this._line),this._starts.push(this._start)):3===this._type&&this._line.length>3&&(this._lines.push(this._line),this._starts.push(this._start))),this._line=[],this._start=0}_moveTo(t,e,s){3!==this._type?s&&(t=Math.round((t-(this._xmin+this._margin))*this._finalRatio),e=Math.round((e-(this._ymin+this._margin))*this._finalRatio),this._line.push(new i(t,e))):(s||(t<this._xmin&&(t=this._xmin),t>this._xmax&&(t=this._xmax),e<this._ymin&&(e=this._ymin),e>this._ymax&&(e=this._ymax)),t=Math.round((t-(this._xmin+this._margin))*this._finalRatio),e=Math.round((e-(this._ymin+this._margin))*this._finalRatio),this._line.push(new i(t,e)),this._isH=!1,this._isV=!1)}_lineTo(t,e,s){let n,h;if(3!==this._type)if(s){if(t=Math.round((t-(this._xmin+this._margin))*this._finalRatio),e=Math.round((e-(this._ymin+this._margin))*this._finalRatio),this._line.length>0&&(n=this._line[this._line.length-1],n.equals(t,e)))return;this._line.push(new i(t,e))}else this._line&&this._line.length>0&&this._pushLine();else if(s||(t<this._xmin&&(t=this._xmin),t>this._xmax&&(t=this._xmax),e<this._ymin&&(e=this._ymin),e>this._ymax&&(e=this._ymax)),t=Math.round((t-(this._xmin+this._margin))*this._finalRatio),e=Math.round((e-(this._ymin+this._margin))*this._finalRatio),this._line&&this._line.length>0){n=this._line[this._line.length-1];const s=n.x===t,r=n.y===e;if(s&&r)return;this._isH&&s||this._isV&&r?(n.x=t,n.y=e,h=this._line[this._line.length-2],h.x===t&&h.y===e?(this._line.pop(),this._line.length<=1?(this._isH=!1,this._isV=!1):(h=this._line[this._line.length-2],this._isH=h.x===t,this._isV=h.y===e)):(this._isH=h.x===t,this._isV=h.y===e)):(this._line.push(new i(t,e)),this._isH=s,this._isV=r)}else this._line.push(new i(t,e))}}class r{setExtent(t){this._ratio=4096===t?1:4096/t}get validateTessellation(){return this._ratio<1}reset(t){this._lines=[],this._line=null}moveTo(t,e){this._line&&this._lines.push(this._line),this._line=[];const s=this._ratio;this._line.push(new i(t*s,e*s))}lineTo(t,e){const s=this._ratio;this._line.push(new i(t*s,e*s))}close(){const t=this._line;t&&!t[0].isEqual(t[t.length-1])&&t.push(t[0])}result(){return this._line&&this._lines.push(this._line),0===this._lines.length?null:this._lines}}class o{static simplify(t,e,s){if(!s)return;const i=-e,n=t+e,h=-e,r=t+e,a=[],l=[],c=s.length;for(let t=0;t<c;++t){const e=s[t];if(!e||e.length<2)continue;let o,c=e[0];const u=e.length;for(let s=1;s<u;++s)o=e[s],c.x===o.x&&(c.x<=i&&(c.y>o.y?(a.push(t),a.push(s),a.push(0),a.push(-1)):(l.push(t),l.push(s),l.push(0),l.push(-1))),c.x>=n&&(c.y<o.y?(a.push(t),a.push(s),a.push(1),a.push(-1)):(l.push(t),l.push(s),l.push(1),l.push(-1)))),c.y===o.y&&(c.y<=h&&(c.x<o.x?(a.push(t),a.push(s),a.push(2),a.push(-1)):(l.push(t),l.push(s),l.push(2),l.push(-1))),c.y>=r&&(c.x>o.x?(a.push(t),a.push(s),a.push(3),a.push(-1)):(l.push(t),l.push(s),l.push(3),l.push(-1)))),c=o}if(0===a.length||0===l.length)return;o.fillParent(s,l,a),o.fillParent(s,a,l);const u=[];o.calcDeltas(u,l,a),o.calcDeltas(u,a,l),o.addDeltas(u,s)}static fillParent(t,e,s){const i=s.length,n=e.length;for(let h=0;h<n;h+=4){const n=e[h],r=e[h+1],o=e[h+2],l=t[n][r-1],c=t[n][r];let u=8092,_=-1;for(let e=0;e<i;e+=4){if(s[e+2]!==o)continue;const i=s[e],n=s[e+1],h=t[i][n-1],r=t[i][n];switch(o){case 0:case 1:if(a(l.y,h.y,r.y)&&a(c.y,h.y,r.y)){const t=Math.abs(r.y-h.y);t<u&&(u=t,_=e)}break;case 2:case 3:if(a(l.x,h.x,r.x)&&a(c.x,h.x,r.x)){const t=Math.abs(r.x-h.x);t<u&&(u=t,_=e)}}}e[h+3]=_}}static calcDeltas(t,e,s){const i=e.length;for(let n=0;n<i;n+=4){const i=[],h=o.calcDelta(n,e,s,i);t.push(e[n]),t.push(e[n+1]),t.push(e[n+2]),t.push(h)}}static calcDelta(t,e,s,i){const n=e[t+3];if(-1===n)return 0;const h=i.length;return h>1&&i[h-2]===n?0:(i.push(n),o.calcDelta(n,s,e,i)+1)}static addDeltas(t,e){const s=t.length;let i=0;for(let e=0;e<s;e+=4){const s=t[e+3];s>i&&(i=s)}for(let n=0;n<s;n+=4){const s=e[t[n]],h=t[n+1],r=i-t[n+3];switch(t[n+2]){case 0:s[h-1].x-=r,s[h].x-=r,1===h&&(s[s.length-1].x-=r),h===s.length-1&&(s[0].x-=r);break;case 1:s[h-1].x+=r,s[h].x+=r,1===h&&(s[s.length-1].x+=r),h===s.length-1&&(s[0].x+=r);break;case 2:s[h-1].y-=r,s[h].y-=r,1===h&&(s[s.length-1].y-=r),h===s.length-1&&(s[0].y-=r);break;case 3:s[h-1].y+=r,s[h].y+=r,1===h&&(s[s.length-1].y+=r),h===s.length-1&&(s[0].y+=r)}}}}const a=(t,e,s)=>t>=e&&t<=s||t>=s&&t<=e},32011(t,e,s){s.d(e,{d:()=>a});var i=s(19419),n=s(537),h=s(12359),r=s(95108),o=s(12176);function a(t){if(0===t.totalSize)return null;const e=(0,n.z8)(t);if(!e)return null;const s=4*(Math.abs(e[0])+Math.abs(e[2])+Math.abs(e[1])+Math.abs(e[3])+1)*222045e-19;let r=0,o=0;t.reset();for(let e=0;t.nextPath();e++){const s=t.getCurrentRingArea();s>o&&(o=s,r=e)}if(t.seekPath(r),0===t.pathSize)return null;t.seekPathStart();const a=(0,n.B$)(t);if(Math.abs(o)<=2*s*s)return[(a[0]+a[2])/2,(a[1]+a[3])/2];t.seekPathStart();const _=(0,h.w2)(t,(0,i.vt)());if(null===_)return null;if(t.totalPoints<4)return _;const p=[[NaN,NaN],[NaN,NaN],[NaN,NaN],[NaN,NaN]],f=[NaN,NaN,NaN,NaN],x=[NaN,NaN,NaN,NaN];let P=!1,y=c(_,t,!0);0===y.distance&&(P=!0,p[0][0]=_[0],p[0][1]=_[1],y=c(_,t,!1)),f[0]=y.distance,x[0]=0;const M=[NaN,NaN];let b=!1,w=.25,C=-1,v=NaN;do{if(v=NaN,p[1]=u(t,d(a[0],a[2],w),0,e),isNaN(p[1][0])||isNaN(p[1][1])||(y=c(p[1],t,!1),v=y.distance),!isNaN(v)&&v>s&&l(p[1],t))b=!0,f[1]=v,x[1]=g(p[1],_);else if(!isNaN(v)&&v>C&&(C=v,M[0]=p[1][0],M[1]=p[1][1]),w-=.01,w<.1){if(!(C>=0))break;b=!0,f[1]=C,p[1][0]=M[0],p[1][1]=M[1],x[1]=g(p[1],_)}}while(!b);b=!1,w=.5,C=-1;let S=.01,z=1;do{if(v=NaN,p[2]=u(t,d(a[0],a[2],w),0,e),isNaN(p[2][0])||isNaN(p[2][1])||(y=c(p[2],t,!1),v=y.distance),!isNaN(v)&&v>s&&l(p[2],t))b=!0,f[2]=v,x[2]=g(p[2],_);else if(!isNaN(v)&&v>C)C=v,M[0]=p[2][0],M[1]=p[2][1];else if(v>C&&(C=v,M[0]=p[2][0],M[1]=p[2][1]),w=.5+S*z,S+=.01,z*=-1,w<.3||w>.7){if(!(C>=0))break;b=!0,f[2]=C,p[2][0]=M[0],p[2][1]=M[1],x[2]=g(p[2],_)}}while(!b);b=!1,w=.75,C=-1;do{if(v=NaN,p[3]=u(t,d(a[0],a[2],w),0,e),isNaN(p[3][0])||isNaN(p[3][1])||(y=c(p[3],t,!1),v=y.distance),!isNaN(v)&&v>s&&l(p[3],t))b=!0,f[3]=v,x[3]=g(p[3],_);else if(v>C&&(C=v,M[0]=p[3][0],M[1]=p[3][1]),w+=.01,w>.9){if(!(C>=0))break;b=!0,f[3]=C,p[3][0]=M[0],p[3][1]=M[1],x[3]=g(p[3],_)}}while(!b);const I=[0,1,2,3],A=P?0:1;let k;for(let t=A;t<4;t++)for(let t=A;t<3;t++){const e=x[t],s=x[t+1];m(e,s)>0&&(k=I[t],I[t]=I[t+1],I[t+1]=k,x[t]=s,x[t+1]=e)}let T=A,L=0,E=0;for(let t=A;t<4;t++){switch(t){case 0:E=2*f[I[t]];break;case 1:E=1.66666666*f[I[t]];break;case 2:E=1.33333333*f[I[t]];break;case 3:E=f[I[t]]}E>L&&(L=E,T=I[t])}return p[T]}function l(t,e){let s,i,n,h,r=0;for(e.reset();e.nextPath()&&e.nextPoint();)for(s=e.x,i=e.y;e.nextPoint();s=n,i=h)n=e.x,h=e.y,i>t[1]!=h>t[1]&&((n-s)*(t[1]-i)-(h-i)*(t[0]-s)>0?r++:r--);return 0!==r}function c(t,e,s){if(s&&l(t,e))return{coord:t,distance:0};let i=1/0,n=0,h=0,o=[0,0],a=[0,0];const c=[0,0];for(e.reset();e.nextPath()&&e.nextPoint();)if(!(e.pathSize<2))for(o[0]=e.x,o[1]=e.y;e.nextPoint();o=a){a=[e.x,e.y],(0,r.gR)(c,t,o,a);const s=g(t,c);s<i&&(i=s,n=c[0],h=c[1])}return{coord:[n,h],distance:Math.sqrt(i)}}function u(t,e,s,n){const h=[e,0];let r=1/0,a=1/0,l=!1,c=!1;const u=[[e,n[1]-1],[e,n[3]+1]],f=[0,0],d=[0,0],g=[0,0],m=[[0,0],[0,0]],x=(0,i.vt)();for(t.reset();t.nextPath()&&t.nextPoint();)if(!(t.pathSize<2))for(m[0][0]=t.x,m[0][1]=t.y;t.nextPoint();m[0][0]=m[1][0],m[0][1]=m[1][1]){if(m[1][0]=t.x,m[1][1]=t.y,null===_(x,m))continue;if(d[0]=u[0][0],d[1]=u[0][1],g[0]=u[1][0],g[1]=u[1][1],0===p(x,d,g))continue;if(!(0,o.Ql)(u[0],u[1],m[0],m[1],f))continue;const e=f[1];r>a?e<r&&(r=e,l=!0):e<a&&(a=e,c=!0)}return l&&c?h[1]=(r+a)/2:h[0]=h[1]=NaN,h}function _(t,e){if(e.length<2)return null;t||(t=(0,i.vt)());const[s,n]=e[0],[h,r]=e[1];return t[0]=Math.min(s,h),t[1]=Math.min(n,r),t[2]=Math.max(s,h),t[3]=Math.max(n,r),t}function p(t,e,s){let i=f(e,t),n=f(s,t);const h=t[0],r=t[1],o=t[2],a=t[3];if(i&n)return 0;if(!(i|n))return 4;const l=(i?1:0)|(n?2:0);do{const l=s[0]-e[0],c=s[1]-e[1];if(l>c)3&i?(1&i?(e[1]+=c*(h-e[0])/l,e[0]=h):(e[1]+=c*(o-e[0])/l,e[0]=o),i=f(e,t)):3&n?(1&n?(s[1]+=c*(h-s[0])/l,s[0]=h):(s[1]+=c*(o-s[0])/l,s[0]=o),n=f(s,t)):i?(4&i?(e[0]+=l*(r-e[1])/c,e[1]=r):(e[0]+=l*(a-e[1])/c,e[1]=a),i=f(e,t)):(4&n?(s[0]+=l*(r-s[1])/c,s[1]=r):(s[0]+=l*(a-s[1])/c,s[1]=a),n=f(s,t));else if(12&i?(4&i?(e[0]+=l*(r-e[1])/c,e[1]=r):(e[0]+=l*(a-e[1])/c,e[1]=a),i=f(e,t)):12&n?(4&n?(s[0]+=l*(r-s[1])/c,s[1]=r):(s[0]+=l*(a-s[1])/c,s[1]=a),n=f(s,t)):i?(1&i?(e[1]+=c*(h-e[0])/l,e[0]=h):(e[1]+=c*(o-e[0])/l,e[0]=o),i=f(e,t)):(1&n?(s[1]+=c*(h-s[0])/l,s[0]=h):(s[1]+=c*(o-s[0])/l,s[0]=o),n=f(s,t)),i&n)return 0}while(i|n);return l}function f(t,e){return(t[0]<e[0]?1:0)|(t[0]>e[2]?1:0)<<1|(t[1]<e[1]?1:0)<<2|(t[1]>e[3]?1:0)<<3}function d(t,e,s){return t+(e-t)*s}function g(t,e){return(t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1])}function m(t,e){if(t<e)return-1;if(t>e)return 1;if(t===e)return 0;const s=isNaN(t),i=isNaN(e);return s<i?-1:s>i?1:0}},35833(t,e,s){s.d(e,{ai:()=>g,g1:()=>m,kT:()=>x,qc:()=>P});var i=s(36745),n=s(93146),h=s(6774);const r=(0,n.z)(()=>Promise.all([s.e(9187),s.e(8885),s.e(5756),s.e(3299),s.e(8089),s.e(6160)]).then(s.bind(s,46160))),o=(0,n.z)(()=>Promise.all([s.e(9187),s.e(8885),s.e(5756),s.e(3299),s.e(8872)]).then(s.bind(s,55666))),a=(0,n.z)(()=>Promise.all([s.e(9187),s.e(8885),s.e(5756),s.e(3299),s.e(1060)]).then(s.bind(s,51190))),l=(0,n.z)(()=>Promise.all([s.e(9187),s.e(8885),s.e(5756),s.e(3299),s.e(837)]).then(s.bind(s,97528))),c=(0,n.z)(()=>Promise.all([s.e(9187),s.e(8885),s.e(5756),s.e(3299),s.e(8089),s.e(795)]).then(s.bind(s,50795))),u=(0,n.z)(()=>Promise.all([s.e(9187),s.e(8885),s.e(5756),s.e(3299),s.e(8089),s.e(5605)]).then(s.bind(s,15605))),_=(0,n.z)(()=>Promise.all([s.e(9187),s.e(8885),s.e(5756),s.e(3299),s.e(1075)]).then(s.bind(s,3637))),p=(0,n.z)(()=>Promise.all([s.e(9187),s.e(8885),s.e(5756),s.e(3299),s.e(8393)]).then(s.bind(s,25802))),f=(0,n.z)(()=>Promise.all([s.e(9187),s.e(8885),s.e(5756),s.e(3299),s.e(1948)]).then(s.bind(s,83299)));let d;function g(t){switch(t.type){case"CIMGeometricEffectDonut":case"CIMGeometricEffectBuffer":return r.getImportPromise();case"CIMGeometricEffectEnclosingPolygon":return o.getImportPromise();case"CIMGeometricEffectOffset":return Promise.all([p.getImportPromise(),u.getImportPromise(),c.getImportPromise()]);case"CIMGeometricEffectControlMeasureLine":return u.getImportPromise();case"CIMGeometricEffectTaperedPolygon":return Promise.all([_.getImportPromise(),a.getImportPromise(),l.getImportPromise()]);default:return Promise.resolve()}}function m(t){return"CIMMarkerPlacementAtMeasuredUnits"===t.type?f.getImportPromise():Promise.resolve()}class x{constructor(t){this._geometry=t}next(){const t=this._geometry;return this._geometry=null,t}}function P(t,e,s){if(!t)return null;d||(d=new h.O3(0,0,0,1));const n=s?-1:1,r="esriGeometryPolygon"===t.geometryType,o=r?3:2,a=r?3:2;let l,c;for(d.reset(o),d.setPixelMargin(e+1),d.setExtent(512);t.nextPath();)if(!(t.pathSize<a)){for(t.nextPoint(),l=t.x,c=n*t.y,d.moveTo(l,c);t.nextPoint();)l=t.x,c=n*t.y,d.lineTo(l,c);r&&d.close()}const u=d.result(!1);if(u){const e=i.z.createEmptyOptimizedCIM(t.geometryType);for(const t of u){e.startPath();for(const s of t)e.pushXY(s.x,n*s.y)}return e.reset(),e}return null}s.d(e,["$Z",0,r,"NS",0,l,"Xs",0,a,"hd",0,c,"lX",0,o,"mO",0,u,"vZ",0,f,"xR",0,p,"yM",0,_])},26937(t,e,s){s.d(e,{A:()=>$t,c:()=>Kt});class i{static{this.instance=null}static local(){return null===i.instance&&(i.instance=new i),i.instance}execute(t,e,s){return new n(t,e)}}class n{constructor(t,e){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();if(!t)return null;for(;t;){if("esriGeometryPolygon"===t.geometryType)this._isClosed=!0;else if("esriGeometryPolyline"===t.geometryType)this._isClosed=!1;else{if("esriGeometryEnvelope"!==t.geometryType){t=this._inputGeometries.next();continue}if(this._maxCosAngle)return t;this._isClosed=!0}for(;t.nextPath();)this._processPath(t);return t.reset(),t}return null}_processPath(t){if(t.nextPoint()){const e=t.x,s=t.y;let i=e,n=s,h=t.pathSize,r=0,o=0,a=0,l=0,c=0,u=0;this._isClosed&&++h;for(let _=1;t.nextPoint()||_<h;++_){let p,f;this._isClosed&&_===h-1?(p=e,f=s):(p=t.x,f=t.y);const d=p-i,g=f-n,m=Math.sqrt(d*d+g*g);_>1&&m>0&&a>0&&(r*d+o*g)/m/a<=this._maxCosAngle&&t.setControlPointAt(_-1),1===_&&(l=d,c=g,u=m),m>0&&(i=p,n=f,r=d,o=g,a=m)}this._isClosed&&a>0&&u>0&&(r*l+o*c)/u/a<=this._maxCosAngle&&t.setControlPointAt(0)}}}var h=s(36745),r=s(51118),o=s(98939);function a(t,e){t[4]=e}class l{constructor(t,e=!0,s=!0,i=0){this._angleToLine=!0,this._keepUpright=!1,this.isClosed=!1,this.geometryCursor=null,this.geometryCursor=!e&&"esriGeometryPolygon"===t.geometryType||!s&&"esriGeometryPolyline"===t.geometryType?null:t,this.geomUnitsPerPoint=i,this.iterateMultiPath=!1,this.iteratePath=!1,this.internalPlacement=new o.W}next(){if(!this.geometryCursor)return null;const t=this.processMultiPath(this.geometryCursor);if(this.iterateMultiPath&&t||(this.geometryCursor=null),!t)return null;const e=t.getAngle();if(this._angleToLine&&this._keepUpright&&Math.abs(e)>.5*Math.PI){const s=e+Math.PI,i=Math.atan2(Math.sin(s),Math.cos(s));Number.isNaN(i)||t.setRotate(i)}return t}processMultiPath(t){for(;this.iteratePath||t.pathIndex<t.totalSize-1;){this.iteratePath||t.nextPath(),this.iterateMultiPath=!0;const e=this.processPath(t);if(e)return e}return this.iterateMultiPath=!1,null}}class c{constructor(t,e,s,i=0){this.isClosed=!1,this.inputGeometries=t,this.acceptPolygon=e,this.acceptPolyline=s,this.geomUnitsPerPoint=i,this.iteratePath=!1,this.multiPathCursor=null}next(){for(;;){if(!this.multiPathCursor){let t=this.inputGeometries.next();for(;t&&(this.isClosed=this.acceptPolygon&&"esriGeometryPolygon"===t.geometryType||"esriGeometryEnvelope"===t.geometryType,this.multiPathCursor=t,!this.multiPathCursor);)t=this.inputGeometries.next();if(!this.multiPathCursor)return null}for(;this.iteratePath||this.multiPathCursor.nextPath();){this.multiPathCursor.seekPathStart();const t=this.processPath(this.multiPathCursor);if(t)return t}this.multiPathCursor=null}}}class u{constructor(t=0,e=!1){}isEmpty(t){if(!t.nextPoint())return!0;let e,s,i,n;for(e=t.x,s=t.y;t.nextPoint();e=s,s=n)if(i=t.x,n=t.y,i!==e||n!==s)return t.seekPathStart(),!1;return t.seekPathStart(),!0}normalize(t){const e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);0!==e&&(t[0]/=e,t[1]/=e)}getLength(t,e,s,i){const n=s-t,h=i-e;return Math.sqrt(n*n+h*h)}getSegLength(t){const[[e,s],[i,n]]=t;return this.getLength(e,s,i,n)}getCoord2D(t,e,s,i,n){return[t+(s-t)*n,e+(i-e)*n]}getSegCoord2D(t,e){const[[s,i],[n,h]]=t;return this.getCoord2D(s,i,n,h,e)}getAngle(t,e,s,i,n){const h=s-t,r=i-e;return Math.atan2(r,h)}getAngleCS(t,e,s,i,n,h){null==t&&(t=[0,0]);const r=i-e,o=n-s,a=Math.sqrt(r*r+o*o);return 0!==a?(t[0]=r/a,t[1]=o/a,t):(t[0]=1,t[1]=0,t)}getSegAngleCS(t,e,s){const[[i,n],[h,r]]=e;return this.getAngleCS(t,i,n,h,r,s)}cut(t,e,s,i,n,h){return[n<=0?[t,e]:this.getCoord2D(t,e,s,i,n),h>=1?[s,i]:this.getCoord2D(t,e,s,i,h)]}getSubCurve(t,e,s){const i=h.z.createEmptyOptimizedCIM("esriGeometryPolyline");return this.appendSubCurve(i,t,e,s)?i:null}appendSubCurve(t,e,s,i){t.startPath(),e.seekPathStart();let n=0,h=!0;if(!e.nextPoint())return!1;let r=e.x,o=e.y;for(;e.nextPoint();){const a=this.getLength(r,o,e.x,e.y);if(0!==a){if(h){if(n+a>s){const l=(s-n)/a;let c=1,u=!1;n+a>=i&&(c=(i-n)/a,u=!0);const _=this.cut(r,o,e.x,e.y,l,c);if(_&&t.pushPoints(_),u)break;h=!1}}else{if(n+a>i){const s=this.cut(r,o,e.x,e.y,0,(i-n)/a);s&&t.pushPoint(s[1]);break}t.pushXY(e.x,e.y)}n+=a,r=e.x,o=e.y}else r=e.x,o=e.y}return!0}getCIMPointAlong(t,e){if(!t.nextPoint())return null;let s,i,n,h,r=0;for(s=t.x,i=t.y;t.nextPoint();s=n,i=h){n=t.x,h=t.y;const o=this.getLength(s,i,n,h);if(0!==o){if(r+o>e){const t=(e-r)/o;return this.getCoord2D(s,i,n,h,t)}r+=o}}return null}offset(t,e,s,i,n){if(!t||t.length<2)return null;let h=0,r=t[h++],o=h;for(;h<t.length;){const e=t[h];e[0]===r[0]&&e[1]===r[1]||(h!==o&&(t[o]=t[h]),r=t[o++]),h++}const a=t[0][0]===t[o-1][0]&&t[0][1]===t[o-1][1];if(a&&--o,o<(a?3:2))return null;const l=[];r=a?t[o-1]:null;let c=t[0];for(let n=0;n<o;n++){const h=n===o-1?a?t[0]:null:t[n+1];if(r)if(h){const t=[h[0]-c[0],h[1]-c[1]];this.normalize(t);const n=[c[0]-r[0],c[1]-r[1]];this.normalize(n);const o=n[0]*t[1]-n[1]*t[0],a=n[0]*t[0]+n[1]*t[1];if(0===o&&1===a){c=h;continue}if(o>=0==e<=0){if(a<1){const s=[t[0]-n[0],t[1]-n[1]];this.normalize(s);const h=Math.sqrt((1+a)/2);if(h>1/i){const t=-Math.abs(e)/h;l.push([c[0]-s[0]*t,c[1]-s[1]*t])}}}else switch(s){case"Mitered":{const s=Math.sqrt((1+a)/2);if(s>0&&1/s<i){const i=[t[0]-n[0],t[1]-n[1]];this.normalize(i);const h=Math.abs(e)/s;l.push([c[0]-i[0]*h,c[1]-i[1]*h]);break}}case"Bevelled":l.push([c[0]+n[1]*e,c[1]-n[0]*e]),l.push([c[0]+t[1]*e,c[1]-t[0]*e]);break;case"Rounded":if(a<1){l.push([c[0]+n[1]*e,c[1]-n[0]*e]);const s=Math.floor(2.5*(1-a));if(s>0){const i=1/s;let h=i;for(let r=1;r<s;r++,h+=i){const s=[n[1]*(1-h)+t[1]*h,-n[0]*(1-h)-t[0]*h];this.normalize(s),l.push([c[0]+s[0]*e,c[1]+s[1]*e])}}l.push([c[0]+t[1]*e,c[1]-t[0]*e])}break;default:if(o<0)l.push([c[0]+(n[1]+n[0])*e,c[1]+(n[1]-n[0])*e]),l.push([c[0]+(t[1]-t[0])*e,c[1]-(t[0]+t[1])*e]);else{const s=Math.sqrt((1+Math.abs(a))/2),i=[t[0]-n[0],t[1]-n[1]];this.normalize(i);const h=e/s;l.push([c[0]-i[0]*h,c[1]-i[1]*h])}}}else{const t=[c[0]-r[0],c[1]-r[1]];this.normalize(t),l.push([c[0]+t[1]*e,c[1]-t[0]*e])}else{const t=[h[0]-c[0],h[1]-c[1]];this.normalize(t),l.push([c[0]+t[1]*e,c[1]-t[0]*e])}r=c,c=h}return l.length<(a?3:2)?null:(a&&l.push([l[0][0],l[0][1]]),l)}}const _=1.7320508075688772;class p{static{this.instance=null}static local(){return null===p.instance&&(p.instance=new p),p.instance}execute(t,e,s){return new f(t,e,s)}}class f extends c{constructor(t,e,s){super(t,!1,!0),this._curveHelper=new u;const i=s.geomUnitsPerPoint;this._width=(void 0!==e.width?e.width:5)*i,this._arrowType=void 0!==e.geometricEffectArrowType?e.geometricEffectArrowType:void 0!==e.arrowType?e.arrowType:"OpenEnded",this._offsetFlattenError=.03*i}processPath(t){const e=h.z.createEmptyOptimizedCIM(t.geometryType);switch(this._arrowType){case"OpenEnded":default:this._constructSimpleArrow(e,t,!0);break;case"Block":this._constructSimpleArrow(e,t,!1);break;case"Crossed":this._constructCrossedArrow(e,t)}return e}_constructSimpleArrow(t,e,s){const i=e.pathLength();let n=this._width;i<2*n&&(n=i/2);const h=this._curveHelper.getSubCurve(e,0,i-n);if(!h||!h.nextPath())return;h.seekPathStart();const o=n/2;if(this._curveHelper.isEmpty(h))return;const a=(0,r.A)(h),l=this._constructOffset(a,-o);if(!l)return;const c=this._constructOffset(a,o);if(!c)return;const u=this._constructArrowBasePoint(l,-o/2);if(!u)return;const _=this._constructArrowBasePoint(c,o/2);if(!_)return;e.seekInPath(e.pathSize-1);const p=[e.x,e.y];t.pushPath(c),t.nextPath(),t.nextPoint(),t.setControlPoint(),t.pushPoint(_),t.nextPoint(),t.setControlPoint(),t.pushPoint(p),t.nextPoint(),t.setControlPoint(),t.pushPoint(u),t.nextPoint(),t.setControlPoint(),t.pushPoints(l.reverse()),t.setControlPoint(),s||(t.setControlPointAt(0),t.setControlPointAt(t.pathSize-1),t.pushPoint(c[0])),t.reset()}_constructCrossedArrow(t,e){const s=e.pathLength();let i=this._width;s<i*(1+_+1)&&(i=s/(1+_+1)),e.seekPathStart();const n=this._curveHelper.getSubCurve(e,0,s-i*(1+_));if(!n)return;n.nextPath();const h=i/2;if(this._curveHelper.isEmpty(n))return;const o=(0,r.A)(n),a=this._constructOffset(o,h);if(!a)return;const l=this._constructOffset(o,-h);if(!l)return;const c=this._curveHelper.getSubCurve(e,0,s-i);if(!c)return;if(c.nextPath(),this._curveHelper.isEmpty(c))return;const u=(0,r.A)(c),p=this._constructOffset(u,h);if(!p)return;const f=this._constructOffset(u,-h);if(!f)return;const d=p[p.length-1],g=this._constructArrowBasePoint(p,h/2);if(!g)return;const m=f[f.length-1],x=this._constructArrowBasePoint(f,-h/2);if(!x)return;e.seekInPath(e.pathSize-1);const P=[e.x,e.y];t.pushPath(a),t.nextPath(),t.nextPoint(),t.setControlPoint(),t.pushPoint(m),t.nextPoint(),t.setControlPoint(),t.pushPoint(x),t.nextPoint(),t.setControlPoint(),t.pushPoint(P),t.nextPoint(),t.setControlPoint(),t.pushPoint(g),t.nextPoint(),t.setControlPoint(),t.pushPoint(d),t.nextPoint(),t.setControlPoint(),t.pushPoints(l.reverse()),t.nextPoint(),t.setControlPoint(),t.reset()}_constructOffset(t,e){return this._curveHelper.offset(t,e,"Rounded",4,this._offsetFlattenError)}_constructArrowBasePoint(t,e){if(!t||t.length<2)return null;const s=t[t.length-2],i=t[t.length-1],n=[i[0]-s[0],i[1]-s[1]];return this._curveHelper.normalize(n),[i[0]+n[1]*e,i[1]-n[0]*e]}}var d=s(16930),g=s(35833);class m{static{this.instance=null}static local(){return null===m.instance&&(m.instance=new m),m.instance}execute(t,e,s){return new x(t,e,s)}}class x{constructor(t,e,s){const i=s.geomUnitsPerPoint,n=s.tileKey,h=s.maxInflateSize;this._preventClipping=s.preventClipping,this._inputGeometries=t,this._tileKey=n,this._curveHelper=new u,this._size=(void 0!==e.size?e.size:1)*i,this._maxInflateSize=h*i,this._offsetFlattenError=.03*i}next(){let t;for(;t=this._inputGeometries.next();){if(0===this._size)return t;if("esriGeometryEnvelope"===t.geometryType)if(this._size>0){const e=h.z.createEmptyOptimizedCIM(t.geometryType),s=(0,r.x)(t)[0],i=this._curveHelper.offset(s,this._size,"Rounded",4,this._offsetFlattenError);if(i)return e.pushPath(i),e}else if(this._size<0){const e=t.asJSON();if(Math.min(e.xmax-e.xmin,e.ymax-e.ymin)+2*this._size>0)return h.z.fromJSONCIM({xmin:e.xmin-this._size,xmax:e.xmax+this._size,ymin:e.ymin-this._size,ymax:e.ymax+this._size})}const e=!this._preventClipping&&this._tileKey?(0,g.qc)(t,this._maxInflateSize,!0):t;if(!e)continue;const s=g.$Z.module,i={...e.asJSON(),spatialReference:{wkid:d.A.WebMercator.wkid}},n=s.execute(i,this._size);return n?h.z.fromJSONCIM(n):null}return null}}var P=s(34727),y=s(28076);const M=Math.PI/180,b=2*Math.PI;class w{static{this.instance=null}static local(){return null===w.instance&&(w.instance=new w),w.instance}execute(t,e,s){return new C(t,e,s)}}class C{constructor(t,e,s){const i=s.geomUnitsPerPoint;this._inputGeometries=t,this._geomUnitsPerPoint=i,this._radius=(e.radius??y.D.CIMGeometricEffectCircularSector.radius)*i,this._startAngle=(e.startAngle??y.D.CIMGeometricEffectCircularSector.startangle)*M,this._endAngle=(e.endAngle??y.D.CIMGeometricEffectCircularSector.endangle)*M}next(){if(this._radius<=0)return null;let t=this._inputGeometries.next();for(;t;){if("esriGeometryPoint"===t.geometryType||"esriGeometryMultipoint"===t.geometryType){const e=h.z.createEmptyOptimizedCIM("esriGeometryPolygon",t.hasZ,!1);let s=!1;for(;t.nextPath();)for(;t.nextPoint();)e.pushPath(this._buildRing(t.x,t.y,t.hasZ?t.z:void 0)),s=!0;if(s)return e}t=this._inputGeometries.next()}return null}_buildRing(t,e,s){const i=[this._makePoint(t,e,s)],n=v(this._startAngle);let h=v(this._endAngle);for(;h<n;)h+=b;const r=h-n;if(0===r)return i.push(this._makePoint(t+this._radius*Math.cos(h),e+this._radius*Math.sin(h),s)),i.push(this._makePoint(t,e,s)),i;const o=.25*this._geomUnitsPerPoint,a=this._radius<=.5*o?b:2*Math.acos((0,P.qE)(1-o/this._radius,-1,1)),l=Math.max(1,Math.ceil(r/a)),c=r/l;let u=h;for(let n=0;n<=l;n++,u-=c)i.push(this._makePoint(t+this._radius*Math.cos(u),e+this._radius*Math.sin(u),s));return i.push(this._makePoint(t,e,s)),i}_makePoint(t,e,s){return null==s?[t,e]:[t,e,s]}}function v(t){return(t%=b)<0?t+b:t}s(86211);var S=s(95108);class z{static{this.instance=null}static local(){return null===z.instance&&(z.instance=new z),z.instance}execute(t,e,s){return new I(t,e,s)}}class I{constructor(t,e,s){this._defaultPointSize=20,this._inputGeometries=t,this._geomUnitsPerPoint=s.geomUnitsPerPoint??1,this._scale=s?.scale,this._rule=e.rule??"FullGeometry",this._spatialReference=s?.spatialReference??d.A.WebMercator,this._width=this._computeWidth(e.width??25),this._defaultSize=this._defaultPointSize*this._geomUnitsPerPoint}next(){let t;for(;t=this._inputGeometries.next();){const e=this._processGeom((0,r.x)(t));if(e?.length)return h.z.fromJSONCIM({paths:e})}return null}_computeWidth(t){if(!function(t){return"ParallelOffsetByValue"===t}(this._rule)||null==this._scale||!this._spatialReference.metersPerUnit)return t*this._geomUnitsPerPoint;const e=this._scale/(96*39.37*this._spatialReference.metersPerUnit);return t/(this._spatialReference.metersPerUnit*e)}_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,n=t[0]*s+t[1]*e;t[0]=i,t[1]=n}_makeCtrlPt(t){const e=[t[0],t[1]];return a(e,1),e}_addAngledTicks(t,e,s,i){const n=this._sub(s,e);this._normalize(n);const h=this._crossProduct(n,this._sub(i,e));let r;r=h>0?this._rightPerp(n):this._leftPerp(n);const o=Math.abs(h)/2,a=[];a.push([e[0]+(r[0]-n[0])*o,e[1]+(r[1]-n[1])*o]),a.push(e),a.push(s),a.push([s[0]+(r[0]+n[0])*o,s[1]+(r[1]+n[1])*o]),t.push(a)}_addBezier2(t,e,s,i,n){if(0===n--)return void t.push(i);const h=this._mid(e,s),r=this._mid(s,i),o=this._mid(h,r);this._addBezier2(t,e,h,o,n),this._addBezier2(t,o,r,i,n)}_addBezier3(t,e,s,i,n,h){if(0===h--)return void t.push(n);const r=this._mid(e,s),o=this._mid(s,i),a=this._mid(i,n),l=this._mid(r,o),c=this._mid(o,a),u=this._mid(l,c);this._addBezier3(t,e,r,l,u,h),this._addBezier3(t,u,c,a,n,h)}_add90DegArc(t,e,s,i,n){const h=n??this._crossProduct(this._sub(s,e),this._sub(i,e))>0,r=this._mid(e,s),o=this._sub(r,e);h?this._leftPerpendicular(o):this._rightPerpendicular(o),r[0]+=o[0],r[1]+=o[1],this._addBezier3(t,e,this._mix(e,.33333,r,.66667),this._mix(s,.33333,r,.66667),s,4)}_addArrow(t,e,s){const i=e[0],n=e[1],h=e[e.length-1],r=this._sub(i,n),o=this._norm(r);this._normalize(r);const a=Math.abs(this._crossProduct(r,this._sub(h,n)));let l=this._dotProduct(r,this._sub(h,n));l<.05*o?l=.05*o:l>.95*o&&(l=.95*o);const c=.5*a,u=this._leftPerp(r),_=[n[0]+r[0]*l,n[1]+r[1]*l],p=e.length-1,f=[];f.push(s?[-u[0],-u[1]]:u);let d=[-r[0],-r[1]];for(let t=1;t<p-1;t++){const s=this._sub(e[t+1],e[t]);this._normalize(s);const i=this._dotProduct(s,d),n=this._crossProduct(s,d),h=Math.sqrt((1+i)/2),r=this._sub(s,d);this._normalize(r),r[0]/=h,r[1]/=h,f.push(n<0?[-r[0],-r[1]]:r),d=s}f.push(this._rightPerp(d));for(let s=f.length-1;s>0;s--)t.push([e[s][0]+f[s][0]*c,e[s][1]+f[s][1]*c]);t.push([_[0]+f[0][0]*c,_[1]+f[0][1]*c]),t.push([_[0]+f[0][0]*a,_[1]+f[0][1]*a]),t.push(i),t.push([_[0]-f[0][0]*a,_[1]-f[0][1]*a]),t.push([_[0]-f[0][0]*c,_[1]-f[0][1]*c]);for(let s=1;s<f.length;s++)t.push([e[s][0]-f[s][0]*c,e[s][1]-f[s][1]*c])}_addDash(t,e,s){const i=this._norm(s)/7;this._normalize(s);let n=[];for(let h=0;h<=7;h++)n.push([e[0]+s[0]*h*i,e[1]+s[1]*h*i]),1&h&&(t.push(n),n=[])}_cp2(t,e,s){return t.length>=2?t[1]:this._add2(t[0],e*this._defaultSize,s*this._defaultSize)}_cp3(t,e,s,i){if(t.length>=3)return t[2];const n=this._mix(t[0],1-s,e,s),h=this._sub(e,t[0]);return this._normalize(h),this._rightPerpendicular(h),[n[0]+h[0]*i*this._defaultSize,n[1]+h[1]*i*this._defaultSize]}_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 n=this._rightPerp(i);return[e,s,[e[0]+(n[0]-i[0])*this._defaultSize,e[1]+(n[1]-i[1])*this._defaultSize]]}_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 n=this._rightPerp(t);i=[e[0]+(n[0]-t[0])*this._defaultSize,e[1]+(n[1]-t[1])*this._defaultSize]}return[s,i]}_offsetPath(t,e){const s=g.mO.module.execute({paths:[t],spatialReference:this._spatialReference.toJSON()},e,{joins:"miter",miterLimit:4}),[i]=(0,r.x)(h.z.fromJSONCIM(s));return i?.length?i:null}_processGeom(t){if(!t)return null;const e=[];for(const s of t){const t=s.length>1&&(0,S.Yl)(s)<this._defaultSize;if(!s||0===s.length||t)continue;const i=s.length;let n=s[0];switch(this._rule){case"PerpendicularFromFirstSegment":{const t=this._cp2(s,0,-1),i=this._cp3(s,t,.5,4),h=[];h.push(i),h.push(this._mid(n,t)),e.push(h);break}case"ReversedFirstSegment":{const t=this._cp2(s,0,-1);e.push([t,n]);break}case"PerpendicularToSecondSegment":{if(s.length<3)return[];const t=this._cp2(s,-4,1),i=this._cp3(s,t,.882353,-1.94),h=[];h.push(this._mid(t,i)),h.push(n),e.push(h);break}case"SecondSegmentWithTicks":{if(s.length<3)return[];const t=this._cp2(s,-4,1),i=this._cp3(s,t,.882353,-1.94),h=this._sub(i,t);let r;r=this._crossProduct(h,this._sub(n,t))>0?this._rightPerp(h):this._leftPerp(h);const o=[];o.push([t[0]+(r[0]-h[0])/3,t[1]+(r[1]-h[1])/3]),o.push(t),o.push(i),o.push([i[0]+(r[0]+h[0])/3,i[1]+(r[1]+h[1])/3]),e.push(o);break}case"DoublePerpendicular":{const t=this._cp2(s,0,-1),i=this._cp3(s,t,.5,3),h=this._mid(n,t),r=this._sub(h,i);this._normalize(r);const o=this._crossProduct(r,this._sub(n,i));this._leftPerpendicular(r);const a=[];a.push(n),a.push([i[0]+r[0]*o,i[1]+r[1]*o]),e.push(a);const l=[];l.push([i[0]-r[0]*o,i[1]-r[1]*o]),l.push(t),e.push(l);break}case"OppositeToFirstSegment":{const t=this._cp2(s,0,-1),i=this._cp3(s,t,.5,3),h=this._mid(n,t),r=this._sub(h,i);this._normalize(r);const o=this._crossProduct(r,this._sub(n,i));this._leftPerpendicular(r);const a=[];a.push([i[0]+r[0]*o,i[1]+r[1]*o]),a.push([i[0]-r[0]*o,i[1]-r[1]*o]),e.push(a);break}case"TriplePerpendicular":{const t=this._cp2(s,0,-1),i=this._cp3(s,t,.5,4),h=this._mid(n,t),r=this._sub(h,i);this._normalize(r);const o=this._crossProduct(r,this._sub(n,i));this._leftPerpendicular(r);const a=[];a.push([i[0]+r[0]*o*.8,i[1]+r[1]*o*.8]),a.push([h[0]+.8*(n[0]-h[0]),h[1]+.8*(n[1]-h[1])]),e.push(a),e.push([i,h]);const l=[];l.push([i[0]-r[0]*o*.8,i[1]-r[1]*o*.8]),l.push([h[0]+.8*(t[0]-h[0]),h[1]+.8*(t[1]-h[1])]),e.push(l);break}case"HalfCircleFirstSegment":{const t=this._cp2(s,0,-1),i=this._cp3(s,t,.5,4),h=this._mid(n,t);let r=this._sub(t,n);const o=Math.cos(Math.PI/18),a=Math.sin(Math.PI/18),l=Math.sqrt((1+o)/2),c=Math.sqrt((1-o)/2),u=[];let _;this._crossProduct(r,this._sub(i,n))>0?(u.push(n),r=this._sub(n,h),_=t):(u.push(t),r=this._sub(t,h),_=n),this._rotateDirect(r,l,c),r[0]/=l,r[1]/=l;for(let t=1;t<=18;t++)u.push(this._add(h,r)),this._rotateDirect(r,o,a);u.push(_),e.push(u);break}case"HalfCircleSecondSegment":{const t=this._cp2(s,0,-1),i=this._cp3(s,t,1,-1);let h=this._sub(n,t);this._normalize(h);const r=this._crossProduct(h,this._sub(i,t))/2;this._leftPerpendicular(h);const o=[t[0]+h[0]*r,t[1]+h[1]*r];h=this._sub(t,o);const a=Math.cos(Math.PI/18);let l=Math.sin(Math.PI/18);r>0&&(l=-l);const c=[t];for(let t=1;t<=18;t++)this._rotateDirect(h,a,l),c.push(this._add(o,h));e.push(c);break}case"HalfCircleExtended":{const t=this._cp2(s,0,-2),h=this._cp3(s,t,1,-1);let r;if(i>=4)r=s[3];else{const e=this._sub(n,t);r=this._add(h,e)}const o=this._dist(t,h)/2/.75,a=this._sub(t,n);this._normalize(a,o);const l=this._sub(h,r);this._normalize(l,o);const c=[r,h];e.push(c);const u=[this._clone(h)];this._addBezier3(u,h,this._add(h,l),this._add(t,a),t,4),u.push(n),e.push(u);break}case"OpenCircle":{const t=this._cp2(s,-2,0),i=this._sub(t,n),h=Math.cos(Math.PI/18),r=-Math.sin(Math.PI/18),o=[t];for(let t=1;t<=33;t++)this._rotateDirect(i,h,r),o.push(this._add(n,i));e.push(o);break}case"CoverageEdgesWithTicks":{const t=this._cp2(s,0,-1);let h,r;if(i>=3)h=s[2];else{const e=this._sub(t,n),s=this._leftPerp(e);h=[n[0]+s[0]-.25*e[0],n[1]+s[1]-.25*e[1]]}if(i>=4)r=s[3];else{const e=this._mid(n,t),s=this._sub(n,t);this._normalize(s),this._leftPerpendicular(s);const i=this._crossProduct(s,this._sub(h,e));this._rightPerpendicular(s),r=[h[0]+s[0]*i*2,h[1]+s[1]*i*2]}const o=this._sub(t,n);let a,l;a=this._crossProduct(o,this._sub(h,n))>0?this._rightPerp(o):this._leftPerp(o),l=[],l.push(h),l.push(n),l.push([n[0]+(a[0]-o[0])/3,n[1]+(a[1]-o[1])/3]),e.push(l),a=this._crossProduct(o,this._sub(r,t))>0?this._rightPerp(o):this._leftPerp(o),l=[],l.push([t[0]+(a[0]+o[0])/3,t[1]+(a[1]+o[1])/3]),l.push(t),l.push(r),e.push(l);break}case"GapExtentWithDoubleTicks":{const t=this._cp2(s,0,2),h=this._cp3(s,t,0,1);let r;if(i>=4)r=s[3];else{const e=this._sub(t,n);r=this._add(h,e)}this._addAngledTicks(e,n,t,this._mid(h,r)),this._addAngledTicks(e,h,r,this._mid(n,t));break}case"GapExtentMidline":{const t=this._cp2(s,2,0),h=this._cp3(s,t,0,1);let r;if(i>=4)r=s[3];else{const e=this._sub(t,n);r=this._add(h,e)}const o=[];o.push(this._mid(n,h)),o.push(this._mid(t,r)),e.push(o);break}case"Chevron":{const t=this._cp2(s,-1,-1);let h;if(i>=3)h=s[2];else{const e=this._sub(t,n);this._leftPerpendicular(e),h=this._add(n,e)}e.push([t,this._makeCtrlPt(n),h]);break}case"PerpendicularWithArc":{const t=this._cp2(s,0,-2),h=this._cp3(s,t,.5,-1),r=this._sub(t,n),o=this._norm(r);r[0]/=o,r[1]/=o;const a=this._crossProduct(r,this._sub(h,n));let l=this._dotProduct(r,this._sub(h,n));l<.05*o?l=.05*o:l>.95*o&&(l=.95*o);const c=[n[0]+r[0]*l,n[1]+r[1]*l];let u=this._leftPerp(r),_=[];if(_.push([c[0]-u[0]*a,c[1]-u[1]*a]),_.push([c[0]+u[0]*a,c[1]+u[1]*a]),e.push(_),i>=4){const t=s[3];let i=this._dotProduct(r,this._sub(t,n));i<.1*o?i=.1*o:i>.9*o&&(i=.9*o);const h=[n[0]+r[0]*i,n[1]+r[1]*i],a=this._crossProduct(r,this._sub(t,n)),l=[];l.push([h[0]-u[0]*a,h[1]-u[1]*a]),l.push([h[0]+u[0]*a,h[1]+u[1]*a]),e.push(l)}const p=[t[0]+u[0]*a,t[1]+u[1]*a];u=this._sub(t,p);const f=Math.cos(Math.PI/18);let d=Math.sin(Math.PI/18);a<0&&(d=-d),_=[n,t];for(let t=1;t<=9;t++)this._rotateDirect(u,f,d),_.push(this._add(p,u));e.push(_);break}case"ClosedHalfCircle":{const t=this._cp2(s,2,0),i=this._mid(n,t),h=this._sub(t,i),r=Math.cos(Math.PI/18),o=Math.sin(Math.PI/18),a=[n,t];for(let t=1;t<=18;t++)this._rotateDirect(h,r,o),a.push(this._add(i,h));e.push(a);break}case"TripleParallelExtended":{const t=this._cp2(s,0,-2),i=this._cp3(s,t,1,-2),h=this._mid(n,t),r=this._sub(i,t);this._normalize(r);const o=Math.abs(this._crossProduct(r,this._sub(h,t)))/2,l=this._dist(t,i),c=[t,n];c.push([n[0]+r[0]*l*.5,n[1]+r[1]*l*.5]),e.push(c);const u=[];u.push([h[0]-r[0]*o,h[1]-r[1]*o]),u.push([h[0]+r[0]*l*.375,h[1]+r[1]*l*.375]),a(u[u.length-1],1),u.push([h[0]+r[0]*l*.75,h[1]+r[1]*l*.75]),e.push(u);const _=[t,i];e.push(_);break}case"ParallelWithTicks":{const t=this._cp2(s,3,0),i=this._cp3(s,t,.5,-1),h=this._sub(t,n);this._normalize(h);const r=this._crossProduct(h,this._sub(i,n)),o=this._leftPerp(h);this._addAngledTicks(e,n,t,i),this._addAngledTicks(e,this._add2(n,o[0]*r,o[1]*r),this._add2(t,o[0]*r,o[1]*r),this._mid(n,t));break}case"Parallel":{const t=this._cp2(s,3,0),i=this._cp3(s,t,.5,-1),h=this._sub(t,n);this._normalize(h);const r=this._leftPerp(h),o=this._crossProduct(h,this._sub(i,n));let a=[n,t];e.push(a),a=[],a.push([n[0]+r[0]*o,n[1]+r[1]*o]),a.push([t[0]+r[0]*o,t[1]+r[1]*o]),e.push(a);break}case"PerpendicularToFirstSegment":{const t=this._cp2(s,3,0),i=this._cp3(s,t,.5,-1),h=this._mid(n,t),r=this._sub(t,n);this._normalize(r);const o=this._crossProduct(r,this._sub(i,n));this._leftPerpendicular(r);const a=[];a.push([h[0]-r[0]*o*.25,h[1]-r[1]*o*.25]),a.push([h[0]+r[0]*o*1.25,h[1]+r[1]*o*1.25]),e.push(a);break}case"ParallelOffset":{const t=this._cp2(s,3,0),i=this._cp3(s,t,.5,-1),h=this._sub(t,n);this._normalize(h);const r=this._crossProduct(h,this._sub(i,n));this._leftPerpendicular(h);const o=[];o.push([n[0]-h[0]*r,n[1]-h[1]*r]),o.push([t[0]-h[0]*r,t[1]-h[1]*r]),e.push(o);const a=[];a.push([n[0]+h[0]*r,n[1]+h[1]*r]),a.push([t[0]+h[0]*r,t[1]+h[1]*r]),e.push(a);break}case"OffsetOpposite":{const t=this._cp2(s,3,0),i=this._cp3(s,t,.5,-1),h=this._sub(t,n);this._normalize(h);const r=this._crossProduct(h,this._sub(i,n));this._leftPerpendicular(h);const o=[];o.push([n[0]-h[0]*r,n[1]-h[1]*r]),o.push([t[0]-h[0]*r,t[1]-h[1]*r]),e.push(o);break}case"OffsetSame":{const t=this._cp2(s,3,0),i=this._cp3(s,t,.5,-1),h=this._sub(t,n);this._normalize(h);const r=this._crossProduct(h,this._sub(i,n));this._leftPerpendicular(h);const o=[];o.push([n[0]+h[0]*r,n[1]+h[1]*r]),o.push([t[0]+h[0]*r,t[1]+h[1]*r]),e.push(o);break}case"CircleWithArc":{let t=this._cp2(s,3,0);const h=this._cp3(s,t,.5,-1);let r,o;if(i>=4)r=s[3],o=this._crossProduct(this._sub(r,t),this._sub(h,t))>0;else{r=t,o=this._crossProduct(this._sub(r,n),this._sub(h,n))>0;const e=24*this._geomUnitsPerPoint,s=this._sub(r,n);this._normalize(s,e);const i=Math.sqrt(2)/2;this._rotateDirect(s,i,o?i:-i),t=this._add(n,s)}const l=this._sub(t,n),c=Math.cos(Math.PI/18),u=Math.sin(Math.PI/18),_=[t];for(let t=1;t<=36;t++)this._rotateDirect(l,c,u),_.push(this._add(n,l));this._add90DegArc(_,t,r,h,o),a(_[_.length-8],1),e.push(_);break}case"DoubleJog":{let t,h=this._cp2(s,-3,1),r=this._cp3(s,h,-1,-.5);if(i>=4)t=s[3];else{const e=n;n=h,t=r;const s=this._dist(n,e),i=this._dist(t,e);let o=30*this._geomUnitsPerPoint;.5*s<o&&(o=.5*s),.5*i<o&&(o=.5*i),h=this._mix(n,o/s,e,(s-o)/s),r=this._mix(t,o/i,e,(i-o)/i)}const o=this._mid(n,h),a=this._mid(t,r),l=this._dist(n,h),c=this._dist(r,t);let u=Math.min(l,c)/8;u=Math.min(u,24*this._geomUnitsPerPoint);const _=Math.cos(Math.PI/4);let p=this._sub(n,h);this._normalize(p,u),this._crossProduct(p,this._sub(t,h))>0?this._rotateDirect(p,_,-_):this._rotateDirect(p,_,_);let f=[];f.push(h),f.push(this._add(o,p)),f.push(this._sub(o,p)),f.push(n),e.push(f),p=this._sub(t,r),this._normalize(p,u),this._crossProduct(p,this._sub(n,r))<0?this._rotateDirect(p,_,_):this._rotateDirect(p,_,-_),f=[],f.push(r),f.push(this._add(a,p)),f.push(this._sub(a,p)),f.push(t),e.push(f);break}case"PerpendicularOffset":{const t=this._cp2(s,-4,1),i=this._cp3(s,t,.882353,-1.94),h=this._sub(i,t);this._crossProduct(h,this._sub(n,t))>0?this._rightPerpendicular(h):this._leftPerpendicular(h);const r=[h[0]/8,h[1]/8],o=this._sub(this._mid(t,i),r);e.push([o,n]);break}case"LineExcludingLastSegment":{const t=this._arrowPath(s),i=[];let n=t.length-2;for(;n--;)i.push(t[n]);e.push(i);break}case"MultivertexArrow":{const t=this._arrowPath(s),i=[];this._addArrow(i,t,!1),e.push(i);break}case"CrossedArrow":{const t=this._arrowPath(s),i=[];this._addArrow(i,t,!0),e.push(i);break}case"ChevronArrow":{const[t,i]=this._arrowLastSeg(s),h=10*this._geomUnitsPerPoint,r=this._sub(n,t),o=this._norm(r);this._normalize(r);const a=this._crossProduct(r,this._sub(i,t));let l=this._dotProduct(r,this._sub(i,t));l<.05*o?l=.05*o:l>.95*o-h&&(l=.95*o-h);const c=[t[0]+r[0]*l,t[1]+r[1]*l],u=this._leftPerp(r),_=[];_.push([c[0]+u[0]*a+r[0]*h,c[1]+u[1]*a+r[1]*h]),_.push(n),_.push([c[0]-u[0]*a+r[0]*h,c[1]-u[1]*a+r[1]*h]),e.push(_);break}case"ChevronArrowOffset":{const[t,i]=this._arrowLastSeg(s),h=this._sub(n,t),r=this._norm(h);this._normalize(h);const o=this._crossProduct(h,this._sub(i,t));let a=this._dotProduct(h,this._sub(i,t));a<.05*r?a=.05*r:a>.95*r&&(a=.95*r);const l=[t[0]+h[0]*a,t[1]+h[1]*a];this._leftPerpendicular(h);const c=[];c.push([l[0]+h[0]*o*.5,l[1]+h[1]*o*.5]),c.push(this._mid(l,n)),c.push([l[0]-h[0]*o*.5,l[1]-h[1]*o*.5]),e.push(c);break}case"PartialFirstSegment":{const[t,i]=this._arrowLastSeg(s),h=this._sub(n,t),r=this._norm(h);this._normalize(h);let o=this._dotProduct(h,this._sub(i,t));o<.05*r?o=.05*r:o>.95*r&&(o=.95*r);const a=[t[0]+h[0]*o,t[1]+h[1]*o];e.push([t,a]);break}case"Arch":{const t=this._cp2(s,0,-1),i=this._cp3(s,t,.5,1),h=this._sub(n,t),r=this._mix(i,1,h,.55),o=this._mix(i,1,h,-.55),a=[n];this._addBezier2(a,n,r,i,4),this._addBezier2(a,i,o,t,4),e.push(a);break}case"CurvedParallelTicks":{const t=this._cp2(s,-4,1),i=this._cp3(s,t,.882353,-1.94),h=this._sub(i,t);this._crossProduct(h,this._sub(n,t))>0?this._rightPerpendicular(h):this._leftPerpendicular(h);const r=[h[0]/8,h[1]/8],o=this._sub(this._mid(t,i),r),a=this._sub(this._mix(t,.75,i,.25),r),l=this._sub(this._mix(t,.25,i,.75),r),c=[t];this._addBezier2(c,t,a,o,3),this._addBezier2(c,o,l,i,3),e.push(c);for(let t=0;t<8;t++){const s=c[2*t+1],i=[this._clone(s)];i.push(this._add(s,[h[0]/4,h[1]/4])),e.push(i)}break}case"Arc90Degrees":{const t=this._cp2(s,0,-1),i=this._cp3(s,t,.5,1),h=[t];this._add90DegArc(h,t,n,i),e.push(h);break}case"TipWithPerpendicularAndTicks":{const[t,i]=this._arrowLastSeg(s),h=10*this._geomUnitsPerPoint,r=this._sub(n,t),o=this._norm(r);this._normalize(r);let a=this._crossProduct(r,this._sub(i,t)),l=this._dotProduct(r,this._sub(i,t));l<.05*o?l=.05*o:l>.95*o-h&&(l=.95*o-h);const c=this._leftPerp(r),u=[n[0]-r[0]*h,n[1]-r[1]*h],_=.5*Math.max(o-l-h,h);a=Math.abs(a);const p=[];p.push([u[0]+c[0]*(a+_)-r[0]*_,u[1]+c[1]*(a+_)-r[1]*_]),p.push([u[0]+c[0]*a,u[1]+c[1]*a]),p.push([u[0]-c[0]*a,u[1]-c[1]*a]),p.push([u[0]-c[0]*(a+_)-r[0]*_,u[1]-c[1]*(a+_)-r[1]*_]),e.push(p),e.push([u,n]);break}case"ConcentricCircles":{const t=this._cp2(s,1,0),h=this._cp3(s,t,2,0),r=Math.cos(Math.PI/18),o=Math.sin(Math.PI/18);let l=this._dist(t,n),c=[l,0],u=[];for(let t=0;t<=36;t++)u.push(this._add(n,c)),this._rotateDirect(c,r,o);if(e.push(u),i>=4){u=[];const t=s[3];l=this._dist(t,n),c=[l,0];for(let t=0;t<=36;t++)u.push(this._add(n,c)),0===t&&(u.push(this._add(n,c)),a(u[1],1)),this._rotateDirect(c,r,o);e.push(u)}u=[],l=this._dist(h,n),c=[l,0];for(let t=0;t<=36;t++)u.push(this._add(n,c)),this._rotateDirect(c,r,o);e.push(u);break}case"DoubleJogArrow":{n=this._arrowPath(s)[0];const[t,i]=this._arrowLastSeg(s),h=this._sub(n,t),r=this._norm(h);this._normalize(h);const o=Math.abs(this._crossProduct(h,this._sub(i,n)));let a=Math.abs(this._dotProduct(h,this._sub(i,n)));a<.05*r?a=.05*r:a>.95*r&&(a=.95*r);const l=Math.max(o,a),c=this._leftPerp(h);let u=[];const _=[n[0]-h[0]*a*.5+c[0]*o*.5,n[1]-h[1]*a*.5+c[1]*o*.5];u.push([_[0],_[1]]),_[0]+=h[0]*l*.5+c[0]*l*.4,_[1]+=h[1]*l*.5+c[1]*l*.4,u.push([_[0],_[1]]),_[0]-=c[0]*l*.25,_[1]-=c[1]*l*.25,u.push([_[0],_[1]]),_[0]+=h[0]*l*.5+c[0]*l*.4,_[1]+=h[1]*l*.5+c[1]*l*.4,u.push([_[0],_[1]]),e.push(u),u=[],_[0]=n[0]-h[0]*a*.5-c[0]*o*.5,_[1]=n[1]-h[1]*a*.5-c[1]*o*.5,u.push([_[0],_[1]]),_[0]+=h[0]*l*.5-c[0]*l*.4,_[1]+=h[1]*l*.5-c[1]*l*.4,u.push([_[0],_[1]]),_[0]+=c[0]*l*.25,_[1]+=c[1]*l*.25,u.push([_[0],_[1]]),_[0]+=h[0]*l*.5-c[0]*l*.4,_[1]+=h[1]*l*.5-c[1]*l*.4,u.push([_[0],_[1]]),e.push(u);break}case"LinkedChevrons":{const t=this._cp2(s,-5,0),i=this._cp3(s,t,-.2,1),h=this._sub(n,t);this._normalize(h);const r=this._leftPerp(h),o=Math.abs(this._crossProduct(h,this._sub(i,t)));e.push([t,n]);const a=[];a.push([n[0]-h[0]*o+r[0]*o,n[1]-h[1]*o+r[1]*o]),a.push(n),a.push([n[0]-h[0]*o-r[0]*o,n[1]-h[1]*o-r[1]*o]),e.push(a),this._addDash(e,t,[-h[0]*o+r[0]*o,-h[1]*o+r[1]*o]),this._addDash(e,t,[-h[0]*o-r[0]*o,-h[1]*o-r[1]*o]);break}case"SegmentThenHalfCircle":{const t=this._cp2(s,2,0),h=this._cp3(s,t,1.5,0);let r;r=i>=4?s[3]:this._cp3(s,t,1.25,-.5);const o=this._sub(t,n);this._normalize(o);const a=.5*this._dist(t,h),l=this._crossProduct(o,this._sub(r,n))>0,c=Math.cos(Math.PI/18);let u=Math.sin(Math.PI/18);l&&(u=-u);const _=[n,t];o[0]*=a,o[1]*=a;const p=this._add(t,o);o[0]=-o[0],o[1]=-o[1];for(let t=1;t<=18;t++)this._rotateDirect(o,c,u),_.push(this._add(p,o));e.push(_);break}case"LineWithStraightTicks":{const t=this._cp2(s,-2,1),i=this._cp3(s,t,-1,-.5),h=this._sub(i,t);this._normalize(h);const r=this._dotProduct(h,this._sub(t,n)),o=this._dotProduct(h,this._sub(i,n));let a=[n];a.push([n[0]+h[0]*r,n[1]+h[1]*r]),a.push(t),e.push(a),a=[n],a.push([n[0]+h[0]*o,n[1]+h[1]*o]),a.push(i),e.push(a);break}case"DoubleCurve":{const t=this._cp2(s,-5,-1),i=this._cp3(s,t,2,0),h=Math.atan2(1,5),r=Math.cos(h),o=Math.sin(h),l=this._sub(t,n),c=this._dist(n,t);this._normalize(l),this._rotateDirect(l,r,-o);const u=[n];u.push([n[0]+l[0]*c*.5,n[1]+l[1]*c*.5]),a(u[1],1),u.push([n[0]+l[0]*c*.8,n[1]+l[1]*c*.8]),this._addBezier2(u,u[2],[n[0]+l[0]*c,n[1]+l[1]*c],t,3);const _=this._sub(i,t),p=this._dist(t,i);this._normalize(_),this._rotateDirect(_,r,-o),this._addBezier2(u,t,[i[0]-_[0]*p,i[1]-_[1]*p],[i[0]-_[0]*p*.8,i[1]-_[1]*p*.8],3),u.push(i),e.push(u);break}case"ParallelWithTicksByWidth":{const t=this._cp2(s,0,-1),i=this._cp3(s,t,.5,3),h=this._sub(t,n);this._normalize(h);const r=this._crossProduct(h,this._sub(i,n));this._leftPerpendicular(h),r>0?(this._addAngledTicks(e,n,[n[0]+h[0]*r,n[1]+h[1]*r],t),this._addAngledTicks(e,t,[t[0]+h[0]*r,t[1]+h[1]*r],n)):(this._addAngledTicks(e,[n[0]+h[0]*r,n[1]+h[1]*r],n,t),this._addAngledTicks(e,[t[0]+h[0]*r,t[1]+h[1]*r],n,t));break}case"EnclosingRoundedRectangle":{const t=this._cp2(s,3,-2),e=[Math.min(n[0],t[0]),Math.max(n[1],t[1])],i=[Math.max(n[0],t[0]),Math.min(n[1],t[1])],h=i[0]-e[0],r=e[1]-i[1],o=Math.min(h,r)/10,a=[];a.push([e[0]+o+.75*(h-2*o),e[1]]),a.push([i[0]-o,e[1]]),this._add90DegArc(a,[i[0]-o,e[1]],[i[0],e[1]-o],[i[0],e[1]]),a.push([i[0],i[1]+o]),this._add90DegArc(a,[i[0],i[1]+o],[i[0]-o,i[1]],i),a.push([e[0]+o,i[1]]),this._add90DegArc(a,[e[0]+o,i[1]],[e[0],i[1]+o],[e[0],i[1]]),a.push([e[0],e[1]-o]),this._add90DegArc(a,[e[0],e[1]-o],[e[0]+o,e[1]],e),a.push([e[0]+o+.75*(h-2*o),e[1]]);break}case"ParallelOffsetByValue":{if(s.length<2||0===this._width)break;const t=this._offsetPath(s,.5*this._width);t&&e.push(t);const i=this._offsetPath(s,.5*-this._width);i&&e.push(i);break}default:e.push(s)}}return e}}class A{static{this.instance=null}static local(){return null===A.instance&&(A.instance=new A),A.instance}execute(t,e,s){return new k(t,e,s)}}class k extends c{constructor(t,e,s){super(t,!0,!0),this._curveHelper=new u;const i=s?.geomUnitsPerPoint;this._beginCut=(void 0!==e.beginCut?e.beginCut:1)*i,this._endCut=(void 0!==e.endCut?e.endCut:1)*i,this._middleCut=(void 0!==e.middleCut?e.middleCut:0)*i,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{_beginCut:e,_endCut:s,_middleCut:i}=this,n=t.pathLength(),r=h.z.createEmptyOptimizedCIM("esriGeometryPolyline");if(this._invert){if(0!==e||0!==s||0!==i)if(e+s+i>=n)for(r.startPath();t.nextPoint();)r.pushXY(t.x,t.y);else this._curveHelper.appendSubCurve(r,t,0,e),this._curveHelper.appendSubCurve(r,t,.5*(n-i),.5*(n+i)),this._curveHelper.appendSubCurve(r,t,n-s,s)}else if(0===e&&0===s&&0===i)for(r.startPath();t.nextPoint();)r.pushXY(t.x,t.y);else e+s+i<n&&(0===i?this._curveHelper.appendSubCurve(r,t,e,n-s):(this._curveHelper.appendSubCurve(r,t,e,.5*(n-i)),this._curveHelper.appendSubCurve(r,t,.5*(n+i),n-s)));return 0===r.totalSize?null:r}}class T{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=!0){if(this._setEmpty(),!t||0===t.length)return!1;for(let s=0;s<t.length;s++){let i=Math.abs(t[s]);e&&i<1e-7&&(i=1e-7),this._values.push(i),this._length+=i}return 0!==this._length&&(this.ctrlPtGap=this.extPtGap=0,this._currentValue=-1,!0)}scale(t){const e=this._values?this._values.length:0;for(let s=0;s<e;++s)this._values[s]*=t;this._length*=t,this.extPtGap*=t,this.ctrlPtGap*=t}addValue(t){this._length+=t,this._values.push(t)}firstValue(){return this._values[0]}lastValue(){return this._values[this._values.length-1]}nextValue(){return this._currentValue++,this._currentValue===this._values.length&&(this._currentValue=0),this._values[this._currentValue]}reset(){this._currentValue=-1}length(){return this._length}_setEmpty(){this.extPtGap=this.ctrlPtGap=this._length=0,this._currentValue=-1,this._values.length=0}}class L{constructor(){this.pt=null,this.ca=0,this.sa=0}}class E{constructor(){this.reset()}reset(){this.segment=null,this.segmentLength=0,this.abscissa=0,this.isPathEnd=!1,this.isPartEnd=!1}isValid(){return null!==this.segment}copyTo(t){t.segment=this.segment,t.segmentLength=this.segmentLength,t.abscissa=this.abscissa,t.isPathEnd=this.isPathEnd,t.isPartEnd=this.isPartEnd}}class N extends u{constructor(t=0,e=!1){super(t,e),this._tempPos=new E,this._tempPt=[0,0],this._tolerance=.03,this._currentPosition=new E}updateTolerance(t){this._tolerance=.03*t}init(t,e,s=!0){return s?(this._patternLength=e.length(),this._partExtPtGap=e.extPtGap,this._partCtrlPtGap=e.ctrlPtGap):(this._patternLength=0,this._partExtPtGap=0,this._partCtrlPtGap=0),this._currentPosition.reset(),this._partSegCount=0,this._pathCursor=t,this._seg=-1,this._setPosAtNextPart()}curPositionIsValid(){return this._currentPosition.isValid()}nextPosition(t,e=0){const s=new E;return!!this._nextPosition(t,s,null,e)&&(s.copyTo(this._currentPosition),!0)}curPointAndAngle(t){t.pt=this._getPoint(this._currentPosition);const[e,s]=this._getAngleCS(this._tempPt,this._currentPosition);t.ca=e,t.sa=s}nextPointAndAngle(t,e,s=0){const i=this._tempPos;if(!this._nextPosition(t,i,null,s))return!1;i.copyTo(this._currentPosition),e.pt=this._getPoint(i);const[n,h]=this._getAngleCS(this._tempPt,i);return e.ca=n,e.sa=h,!0}nextCurve(t){if(0===t)return null;const e=h.z.createEmptyOptimizedCIM("esriGeometryPolyline");e.startPath(),e.nextPath();const s=new E;return this._nextPosition(t,s,e,1)?(s.copyTo(this._currentPosition),e):null}isPathEnd(){return this._currentPosition.isPathEnd}getPathEnd(){return this._currentPosition.segment[1]}getPt(t){return this._pathCursor.seekInPath(t),[this._pathCursor.x,this._pathCursor.y]}getSeg(t){return[this.getPt(t),this.getPt(t+1)]}_nextPosition(t,e,s,i){if(this._currentPosition.isPathEnd)return!1;let n=this._currentPosition.abscissa;for(this._currentPosition.segmentLength>0&&(n/=this._currentPosition.segmentLength),this._currentPosition.copyTo(e);e.abscissa+t*this._partLengthRatio>e.segmentLength+this._tolerance;){if(s){if(0===s.pathSize)if(0===n){const t=e.segment[0];s.pushXY(t[0],t[1])}else s.pushPoint(this.getSegCoord2D(e.segment,n));const t=e.segment[1];s.pushXY(t[0],t[1])}if(n=0,t-=(e.segmentLength-e.abscissa)/this._partLengthRatio,this._partSegCount)e.segment=this._nextSegment(),e.segmentLength=this.getSegLength(e.segment),e.abscissa=0,this._partSegCount--;else{if(!this._setPosAtNextPart())return 0!==i&&(e.segmentLength=this.getSegLength(e.segment),e.isPartEnd=!0,1===i?(e.abscissa=e.segmentLength,e.isPathEnd=!0):e.abscissa=e.segmentLength+t,!0);this._currentPosition.copyTo(e)}}if(e.abscissa+=t*this._partLengthRatio,s){0===s.pathSize&&(0===n?s.pushPoint(e.segment[0]):s.pushPoint(this.getSegCoord2D(e.segment,n)));const t=e.abscissa/e.segmentLength;1===t?s.pushPoint(e.segment[1]):s.pushPoint(this.getSegCoord2D(e.segment,t))}return this._partSegCount||Math.abs(e.abscissa-e.segmentLength)<this._tolerance&&(e.isPathEnd=this._partIsLast,e.isPartEnd=!0),!0}_getPoint(t){const e=t.segmentLength<=0?0:t.abscissa/t.segmentLength;return this.getSegCoord2D(this._currentPosition.segment,e)}_getAngleCS(t,e){const s=e.segmentLength<=0?0:e.abscissa/e.segmentLength;return this.getSegAngleCS(t,this._currentPosition.segment,s)}_setPosAtNextPart(){for(;this._partSegCount;)this._hasNextSegment()&&this._nextSegment(),this._partSegCount--;if(!this._hasNextSegment())return!1;for(this._partLength=0,this._partIsLast=!0,this._partSegCount=0;this._hasNextSegment();)if(this._partLength+=this.getSegLength(this._nextSegment()),this._partSegCount++,this._pathCursor.getControlPointAt(this._getEndPointIndex())){this._partIsLast=!this._hasNextSegment();break}let t=this._partSegCount;for(;t;)this._previousSegment(),--t;this._currentPosition.segment=this._nextSegment(),this._currentPosition.segmentLength=this.getSegLength(this._currentPosition.segment),this._currentPosition.abscissa=0,this._currentPosition.isPathEnd=this._currentPosition.isPartEnd=!1,--this._partSegCount;const e=this._getStartPointIndex();this._ctrlPtBegin=this._pathCursor.getControlPointAt(e);let s=e+this._partSegCount+1;if(s>=this._pathCursor.pathSize&&(s=0),this._ctrlPtEnd=this._pathCursor.getControlPointAt(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<this._pathCursor.pathSize-2}_previousSegment(){return this.getSeg(--this._seg)}_nextSegment(){return this.getSeg(++this._seg)}_getStartPointIndex(){return this._seg}_getEndPointIndex(){return this._seg+1}}var G=s(93397);class O{static{this.instance=null}static local(){return null===O.instance&&(O.instance=new O),O.instance}execute(t,e,s){return new R(t,e,s)}}class R extends c{constructor(t,e,s){super(t,!0,!0),this._firstCurve=null;const i=s.geomUnitsPerPoint;this._walker=new N,this._walker.updateTolerance(i),this._endings=e.lineDashEnding??"NoConstraint",this._customDashPos=-(e.offsetAlongLine??0)*i,this._offsetAtEnd=(e.customEndingOffset??0)*i;let n=(0,G.FH)(e).dashTemplate;null==n&&(n=[]),n.length%2&&(n=[...n,...n]);let h=0;for(;h<n.length&&0===n[h];)h++;let r=0;const o=[];for(let t=h;t<n.length;t++)0===n[t]?r++:0===r?o.push(n[t]):1&r?(o[o.length-1]+=n[t],r=0):(o.push(n[t]),r=0);n=o,n.length<=1?n=0===n.length||h%2==0?[]:[-1]:n.length%2==1?h%2==1?n.unshift(0):n.push(0):h%2==1&&(n.unshift(0),n.push(0)),this._pattern=new T,this._pattern.init(n,!1),this._pattern.scale(i)}processPath(t){if(this._pattern.size()%2==1)return null;if(0===this._pattern.length()){this.iteratePath=!1;const e=(0,r.A)(t);return h.z.fromJSONCIM({paths:[e]})}if(!this.iteratePath){let e=!0;switch(this._endings){case"HalfPattern":case"HalfGap":default:this._pattern.extPtGap=0;break;case"FullPattern":this.isClosed||(this._pattern.extPtGap=.5*this._pattern.firstValue());break;case"FullGap":this.isClosed||(this._pattern.extPtGap=.5*this._pattern.lastValue());break;case"NoConstraint":this.isClosed||(e=!1);break;case"Custom":this.isClosed||(this._pattern.extPtGap=.5*this._offsetAtEnd)}const s=t.pathLength();if(this._pattern.isEmpty()||s<.1*this._pattern.length()){const e=(0,r.A)(t);return h.z.fromJSONCIM({paths:[e]})}if(!this._walker.init(t,this._pattern,e)){const e=(0,r.A)(t);return h.z.fromJSONCIM({paths:[e]})}}let e;if(this.iteratePath)e=this._pattern.nextValue();else{let t;switch(this._endings){case"HalfPattern":default:t=.5*this._pattern.firstValue();break;case"HalfGap":t=.5*-this._pattern.lastValue();break;case"FullGap":t=-this._pattern.lastValue();break;case"FullPattern":t=0;break;case"NoConstraint":case"Custom":t=-this._customDashPos}let s=t/this._pattern.length();s-=Math.floor(s),t=s*this._pattern.length(),this._pattern.reset(),e=this._pattern.nextValue();let i=!1;for(;t>=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())}0===e&&(e=this._pattern.nextValue(),this._walker.nextPosition(e),e=this._pattern.nextValue());let s=this._walker.nextCurve(e);if(s)if(this._walker.isPathEnd()){if(this.iteratePath=!1,this._firstCurve){for(this._firstCurve.nextPath();this._firstCurve.nextPoint();)s.pushXY(this._firstCurve.x,this._firstCurve.y);this._firstCurve=null}}else e=this._pattern.nextValue(),!this._walker.nextPosition(e)||this._walker.isPathEnd()?(this.iteratePath=!1,this._firstCurve&&(s.pushCursor(this._firstCurve),this._firstCurve=null)):this.iteratePath=!0;else this.iteratePath=!1,s=this._firstCurve,this._firstCurve=null;return s?.reset(),s}}class X{static{this.instance=null}static local(){return null===X.instance&&(X.instance=new X),X.instance}execute(t,e,s){return new Y(t,e,s)}}class Y{constructor(t,e,s){this._inputGeometries=t,this._tileKey=s.tileKey,this._maxInflateSize=s.maxInflateSize*s.geomUnitsPerPoint,this._preventClipping=s.preventClipping,this._width=(void 0!==e.width?e.width:2)*s.geomUnitsPerPoint,e.method,this._option=e.option??"Accurate"}next(){let t;for(;t=this._inputGeometries.next();){if("esriGeometryEnvelope"===t.geometryType&&this._width>0){const e=t.asJSON();return Math.min(e.xmax-e.xmin,e.ymax-e.ymin)-2*this._width<0?t:h.z.fromJSONCIM({paths:[[[e.xmin+this._width,e.ymin+this._width],[e.xmax-this._width,e.ymin+this._width],[e.xmax-this._width,e.ymax-this._width],[e.xmin+this._width,e.ymax-this._width],[e.xmin+this._width,e.ymin+this._width]],[[e.xmin,e.ymin],[e.xmin,e.ymax],[e.xmax,e.ymax],[e.xmax,e.ymin],[e.xmin,e.ymin]]]})}if("esriGeometryPolygon"===t.geometryType){if(0===this._width)return t.clone();const e=g.$Z.module,s=!this._preventClipping&&this._tileKey?(0,g.qc)(t,this._maxInflateSize,!0):t.clone();if(!s)continue;const i={...s.asJSON(),spatialReference:{wkid:d.A.WebMercator.wkid}},n=e.execute(i,-this._width);if(n)for(const t of n.rings)if(t){s.startPath();for(const e of t.reverse())s.pushXY(e[0],s.yFactor*e[1])}return s}}return null}}var F=s(537);class D{static{this.instance=null}static local(){return null===D.instance&&(D.instance=new D),D.instance}execute(t,e,s){return new W(t,e,s)}}class W{constructor(t,e,s){this._inputGeometries=t,this._medhod=e.method}next(){let t=this._inputGeometries.next();const e=this._medhod;for(;null!=t;){if(t.totalSize>0)switch(e){case"RectangularBox":return H(t);case"ConvexHull":return this._constructConvexHull(t);default:return V(t)}t=this._inputGeometries.next()}return null}_constructConvexHull(t){switch(t.geometryType){case"esriGeometryPolyline":case"esriGeometryPolygon":{const e=g.lX.module,s={...t.asJSON(),spatialReference:{wkid:d.A.WebMercator.wkid}},i=e.execute(s);return i?h.z.fromJSONCIM(i):null}case"esriGeometryEnvelope":return t;default:return null}}}function H(t){const e=(0,F.z8)(t),s={xmin:e[0],ymin:e[1],xmax:e[2],ymax:e[3]};return h.z.fromJSONCIM(s)}function V(t){switch(t.geometryType){case"esriGeometryPolyline":{const e=[];for(;t.nextPath();)U(t,e);return h.z.fromJSONCIM({rings:e})}case"esriGeometryPolygon":case"esriGeometryEnvelope":return t;default:return null}}function U(t,e){if(t.seekPathStart(),!t.nextPoint())return;const s=t.x,i=t.y,n=[[s,i]];for(e.push(n);t.nextPoint();)n.push([t.x,t.y]);n.push([s,i])}class B{static{this.instance=null}static local(){return null===B.instance&&(B.instance=new B),B.instance}execute(t,e,s){return new q(t,e,s)}}class q extends c{constructor(t,e,s){super(t,!1,!0),this._curveHelper=new u;const i=s.geomUnitsPerPoint;this._length=(void 0!==e.length?e.length:20)*i,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){const e=h.z.createEmptyOptimizedCIM("esriGeometryPolyline");if(this._curveHelper.isEmpty(t))return null;t.seekInPath(0);const s=t.x,i=t.y;t.seekInPath(t.pathSize-1);const n=t.x,r=t.y,o=[n-s,r-i];this._curveHelper.normalize(o);const a=s+(n-s)*this._position/100,l=i+(r-i)*this._position/100,c=Math.cos((90-this._angle)/180*Math.PI);let u=Math.sin((90-this._angle)/180*Math.PI);this._mirror&&(u=-u),this._mirror=!this._mirror;const _=[a-this._length/2*c,l-this._length/2*u],p=[a+this._length/2*c,l+this._length/2*u];return e.pushPath([[s,i],_,p,[n,r]]),e}}class J{static{this.instance=null}static local(){return null===J.instance&&(J.instance=new J),J.instance}execute(t,e,s){return new Z(t,e,s)}}class Z{constructor(t,e,s){this._inputGeometries=t;const i=s.geomUnitsPerPoint;this._offsetX=void 0!==e.offsetX?e.offsetX*i:0,this._offsetY=void 0!==e.offsetY?e.offsetY*i:0}next(){let t=this._inputGeometries.next();for(;t;){if(t.totalSize>0)return this._move(t.clone(),this._offsetX,this._offsetY);t=this._inputGeometries.next()}return null}_move(t,e,s){for(;t.nextPath();)for(;t.nextPoint();)t.x=t.x+e,t.y=t.y+s;return t.reset(),t}}var j=s(60408);class ${static{this.instance=null}static local(){return null===$.instance&&($.instance=new $),$.instance}execute(t,e,s){return new K(t,e,s)}}class K{constructor(t,e,s){const i=s.geomUnitsPerPoint,n=s.maxInflateSize;this._preventClipping=s.preventClipping,this._inputGeometries=t,this._tileKey=s.tileKey,this._curveHelper=new u,this._offset=(e.offset??1)*i,this._method=e.method??"Square",this._maxInflateSize=Math.max(Math.abs(n*i),10),this._offsetFlattenError=.03*i}next(){let t;for(;t=this._inputGeometries.next();){if(0===this._offset)return t.clone();if("esriGeometryEnvelope"===t.geometryType){if("Rounded"===this._method&&this._offset>0){const e=(0,r.A)(t),s=this._curveHelper.offset(e,-this._offset,this._method,4,this._offsetFlattenError);if(s){const e=h.z.createEmptyOptimizedCIM(t.geometryType);return e.pushPath(s),e}return null}const e=t.asJSON();if((0,j.ZC)(e)&&Math.min(e.xmax-e.xmin,e.ymax-e.ymin)+2*this._offset>0)return h.z.fromJSONCIM({xmin:e.xmin-this._offset,xmax:e.xmax+this._offset,ymin:e.ymin-this._offset,ymax:e.ymax+this._offset})}const e=!this._preventClipping&&this._tileKey?(0,g.qc)(t,this._maxInflateSize,!0):t.clone();if(!e)continue;const s=g.xR.module,i=g.mO.module,n=g.hd.module,o=s.execute({...e.asJSON(),spatialReference:{wkid:d.A.WebMercator.wkid}});if(!o)continue;let a,l=Q(this._method);return"esriGeometryPolygon"===t.geometryType?("square"===l&&(l="bevel"),a=n.executeMany([o],[this._offset],l,"round")[0]):a=i.execute(o,-this._offset,{joins:l,flattenError:this._offsetFlattenError,miterLimit:4}),a?h.z.fromJSONCIM(a):null}return null}}function Q(t){switch(t){case"Rounded":return"round";case"Bevelled":return"bevel";case"Mitered":return"miter";case"Square":return"square"}}var tt=s(12359);class et{static{this.instance=null}static local(){return null===et.instance&&(et.instance=new et),et.instance}execute(t,e,s){return new st(t,e,s)}}class st{constructor(t,e,s){const i=s.geomUnitsPerPoint;this._inputGeometries=t,this._length=(void 0!==e.length?e.length:y.D.CIMGeometricEffectRadial.length)*i,this._angle=void 0!==e.angle?e.angle*Math.PI/180:y.D.CIMGeometricEffectRadial.angle,this._lx=Math.cos(this._angle)*this._length,this._ly=Math.sin(this._angle)*this._length}next(){let t=this._inputGeometries.next();for(;t;){if("esriGeometryPoint"===t.geometryType||"esriGeometryMultipoint"===t.geometryType){const e=h.z.createEmptyOptimizedCIM("esriGeometryPolyline");return t.nextPath()&&t.nextPoint()&&e.pushPath([[t.x,t.y],[t.x+this._lx,t.y+this._ly]]),e}if("esriGeometryPolygon"===t.geometryType){const e=(0,tt.IK)(t);if(!e)return null;const s=h.z.createEmptyOptimizedCIM("esriGeometryPolyline");return s.pushPath([[e[0],e[1]],[e[0]+this._lx,e[1]+this._ly]]),s}t=this._inputGeometries.next()}return null}}class it{static{this.instance=null}static local(){return null===it.instance&&(it.instance=new it),it.instance}execute(t,e,s){return new nt(t,e,s)}}class nt{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("esriGeometryPolyline"===t.geometryType)return ht(t.clone());t=this._inputGeometries.next()}return null}}function ht(t){for(;t.nextPath();)for(let e=0;e<t.pathSize/2;e++){t.seekInPath(e);const s=t.x,i=t.y;t.seekInPath(t.pathSize-e-1);const n=t.x,h=t.y;t.x=s,t.y=i,t.seekInPath(e),t.x=n,t.y=h}return t.reset(),t}class rt{static{this.instance=null}static local(){return null===rt.instance&&(rt.instance=new rt),rt.instance}execute(t,e,s){return new ot(t,e,s)}}class ot{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||"esriGeometryPoint"===t.geometryType)return t;if(t.totalSize>0){const e=(0,F.z8)(t),s=(e[2]+e[0])/2,i=(e[3]+e[1])/2;return t.reset(),this._rotate(t.clone(),s,i)}t=this._inputGeometries.next()}return null}_rotate(t,e,s){const i=Math.cos(this._rotateAngle),n=Math.sin(this._rotateAngle);for(;t.nextPath();)for(;t.nextPoint();){const h=t.x-e,r=t.y-s;t.x=e+h*i-r*n,t.y=s+h*n+r*i}return t.reset(),t}}class at{static{this.instance=null}static local(){return null===at.instance&&(at.instance=new at),at.instance}execute(t,e,s){return new lt(t,e,s)}}class lt{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(){const t=this._inputGeometries.next();if(t){if(1===this._xFactor&&1===this._yFactor)return t;if("esriGeometryPoint"===t.geometryType)return t;if(t.totalSize>0){const e=(0,F.z8)(t),s=(e[2]+e[0])/2,i=(e[3]+e[1])/2;return t.reset(),this._scaleCursor(t.clone(),s,i)}}return null}_scaleCursor(t,e,s){for(;t.nextPath();)for(;t.nextPoint();)t.x=e+(t.x-e)*this._xFactor,t.y=s+(t.y-s)*this._yFactor;return t.reset(),t}}class ct{constructor(){this._polyline=[]}beginPath(t){this._polyline.push([t])}lineTo(t){if(0===this._polyline.length)throw new Error("No path started. Call beginPath first.");this._polyline[this._polyline.length-1].push(t)}getPointCount(){return this._polyline.reduce((t,e)=>t+e.length,0)}addSegment(t,e,s){s&&this.beginPath(t),this.lineTo(e)}getXY(t){let e=0;for(const s of this._polyline){if(t<e+s.length)return s[t-e];e+=s.length}return null}getGeometry(){return this._polyline}}class ut{static{this.instance=null}static local(){return null===ut.instance&&(ut.instance=new ut),ut.instance}execute(t,e,s){return new _t(t,e,s)}}class _t extends c{constructor(t,e,s){super(t,!1,!0),this._suppress=void 0!==e.suppress&&e.suppress,this._invert=void 0!==e.invert&&e.invert}processPath(t){if(t.totalSize<=0)return null;if(!this._suppress){const e=h.z.createEmptyOptimizedCIM("esriGeometryPolygon",!1,!1,t.yFactor);for(t.seekPathEnd();t.nextPoint();)e.pushXY(t.x,t.y);return e}const e=[],s=new Array(t.pathSize);let i=0;for(t.seekPathStart();t.nextPoint();)s[i++]=t.getControlPoint(),e.push([t.x,t.y]);let n=!0,r=!0,o=!1,a=!this._invert;i=0;const l=new ct;let c=e[0];for(;i<e.length-1;){const t=e[i+1],h=s[i],u=s[i+1];i++,r&&(a=h||u?this._invert:!this._invert,r=!1),a?(l.addSegment(c,t,n),n=!1):o=!0,c=t,u&&(a?(a=!1,n=!0):a=!0)}const u=l.getGeometry();if(0===u.length)return null;if(!o&&e[0][0]===e[e.length-1][0]&&e[0][1]===e[e.length-1][1]){const t=u[u.length-1];return t[0][0]===t[t.length-1][0]&&t[0][1]===t[t.length-1][1]||t.push([t[0][0],t[0][1]]),h.z.fromJSONCIM({paths:u})}const _=u[u.length-1];return l.getPointCount()>1&&"esriGeometryPolygon"===t.geometryType&&_[0][0]===_[_.length-1][0]&&_[0][1]===_[_.length-1][1]&&u.length>1&&(u[u.length-1].push(...u[0]),u.splice(0,1)),h.z.fromJSONCIM({paths:u})}}var pt=s(49186),ft=s(53966),dt=s(6774);const gt=()=>ft.A.getLogger("esri.symbols.cim.effects.EffectTaperedPolygon");class mt{static{this.instance=null}static local(){return null===mt.instance&&(mt.instance=new mt),mt.instance}execute(t,e,s){return new xt(t,e,s)}}class xt extends c{constructor(t,e,s){super(t,!1,!0),this._slopeS=0,this._slopeC=1,this._lastTangent1=new dt.bR(NaN,NaN),this._lastWidth=0;const i=s.geomUnitsPerPoint;this._geomUnitsPerPoint=i,this._halfFromWidth=Math.abs(void 0!==e.fromWidth?e.fromWidth:0)*i*.5,this._halfToWidth=Math.abs(void 0!==e.toWidth?e.toWidth:1)*i*.5,this._originalLength=(void 0!==e.length?e.length:0)*i,this._length=0}processPath(t){if(t.totalSize<=0)return null;if(this._halfFromWidth<=0&&this._halfToWidth<=0){const e=h.z.createEmptyOptimizedCIM("esriGeometryPolygon",!1,!1,t.yFactor);for(t.seekPathEnd();t.prevPoint();)e.pushXY(t.x,t.y);for(t.seekPathStart();t.nextPoint();)e.pushXY(t.x,t.y);return e}const e=t.getCurrentPath().asJSON(),s=g.NS.module.execute(e,.25*this._geomUnitsPerPoint,{removeDegenerateParts:!0}),i=null==s?null:(0,j.Bi)(s)?s.rings:(0,j.Rg)(s)?s.paths:null;if(!i)return gt().error(new pt.A("mapview-bad-resource","Unable to process geometry")),null;const n=g.Xs.module.execute(s);if((0===this._originalLength||this._originalLength>n)&&n>0){this._length=n;const t=(this._halfToWidth-this._halfFromWidth)/this._length;if(Math.abs(t)<1){const e=t*t;this._slopeC=Math.sqrt(1/(1+e)),this._slopeS=Math.sqrt(e/(1+e)),t<0&&(this._slopeS=-this._slopeS)}else this._slopeC=this._slopeS=.7071}else this._length=this._originalLength,this._slopeC=1,this._slopeS=0;const r=[];for(const t of i){const e=new ct,s=new ct;let i=0;this._setFromOffset(t.slice(0,2),e,s);for(let n=0,h=3;h<=t.length;++n,++h)i=this._setOffset(t.slice(n,h),i,e,s);this._setToOffset(t.slice(-2),i,e,s);const[n]=e.getGeometry(),[h]=s.getGeometry();r.push([...n,...h.reverse()])}const o={rings:r,spatialReference:{wkid:d.A.WebMercator.wkid}},a=g.yM.module.execute(o);return h.z.fromJSONCIM(a)}_setFromOffset([[t,e],[s,i]],n,h){const r=this._halfFromWidth,o=new dt.bR(s-t,i-e).normalize().scale(r);n.beginPath([t-o.y,e+o.x]),h.beginPath([t+o.y,e-o.x])}_setToOffset([[t,e],[s,i]],n,h,r){let o;o=(n+=Math.sqrt((s-t)**2+(i-e)**2))>=this._length?this._halfToWidth:this._halfFromWidth+(this._halfToWidth-this._halfFromWidth)*n/this._length;const a=new dt.bR(s-t,i-e).normalize().scale(o);h.lineTo([s-a.y,i+a.x]),r.lineTo([s+a.y,i-a.x])}_setOffset([[t,e],[s,i],[n,h]],r,o,a){const l=Math.sqrt((s-t)**2+(i-e)**2);let c;c=r+l>=this._length?this._halfToWidth:this._halfFromWidth+(this._halfToWidth-this._halfFromWidth)*(r+l)/this._length,r+=l;const u=new dt.bR(s,i),_=new dt.bR(s-t,i-e).normalize(),p=new dt.bR(n-s,h-i).normalize(),f=dt.bR.sub(p,_),d=o.getPointCount(),g=a.getPointCount();_.leftPerpendicular(),p.leftPerpendicular();const m=_.x*p.x+_.y*p.y;if(m>.99){const t=dt.bR.add(_,p).scale(c/2),e=t.clone().rotate(this._slopeC,this._slopeS);o.lineTo([u.x+e.x,u.y+e.y]);const s=t.rotateReverse(this._slopeC,this._slopeS);a.lineTo([u.x-s.x,u.y-s.y])}else{const s=_.x*p.y-_.y*p.x;if(f.scale(1/s),s<0){f.scale(-c).rotateReverse(this._slopeC,this._slopeS);const t=a.getXY(g-1);t||gt().error(new pt.A("mapview-bad-resource","Unable to process geometry, index out of scope"));const e=dt.bR.add(u,f).sub(dt.bR.fromArray(t));if(_.x*e.y-_.y*e.x>0){const t=_.clone().scale(-c).rotateReverse(this._slopeC,this._slopeS),e=p.clone().scale(-c).rotateReverse(this._slopeC,this._slopeS);a.lineTo([u.x+t.x,u.y+t.y]),a.lineTo([u.x,u.y]),a.lineTo([u.x+e.x,u.y+e.y])}else a.lineTo([u.x+f.x,u.y+f.y])}else{f.scale(c).rotate(this._slopeC,this._slopeS);const t=o.getXY(d-1);t||gt().error(new pt.A("mapview-bad-resource","Unable to process geometry, index out of scope"));const e=dt.bR.add(u,f).sub(dt.bR.fromArray(t));if(_.x*e.y-_.y*e.x>0){const t=_.clone().scale(c).rotate(this._slopeC,this._slopeS),e=p.clone().scale(c).rotate(this._slopeC,this._slopeS);o.lineTo([u.x+t.x,u.y+t.y]),o.lineTo([u.x,u.y]),o.lineTo([u.x+e.x,u.y+e.y])}else o.lineTo([u.x+f.x,u.y+f.y])}const i=Math.acos(m);let n=1;if(c>.25){const t=2*Math.acos(1-.25/c);t<i&&(n=Math.round(i/t))}const h=Math.cos(i/n),r=Math.sin(i/n),l=_.clone();if(s<0){l.rotate(this._slopeC,this._slopeS);const s=o.getXY(d-1);s||gt().error(new pt.A("mapview-bad-resource","Unable to process geometry, index out of scope"));const i=dt.bR.add(u,l.clone().scale(this._lastWidth)),n=dt.bR.sub(i,dt.bR.fromArray(s)),h=_.x*n.y-_.y*n.x;if(!isNaN(this._lastTangent1.x)&&!isNaN(this._lastTangent1.y)&&h>0){const s=new dt.bR(t,e),i=this._lastTangent1.clone().scale(this._lastWidth);i.rotate(this._slopeC,this._slopeS);const n=_.clone().scale(this._lastWidth);n.rotate(this._slopeC,this._slopeS),o.lineTo([s.x+i.x,s.y+i.y]),o.lineTo([s.x,s.y]),o.lineTo([s.x+n.x,s.y+n.y])}}else{l.scale(-1).rotateReverse(this._slopeC,this._slopeS);const s=a.getXY(g-1);s||gt().error(new pt.A("mapview-bad-resource","Unable to process geometry, index out of scope"));const i=dt.bR.add(u,l.clone().scale(this._lastWidth)),n=dt.bR.sub(i,dt.bR.fromArray(s)),h=_.x*n.y-_.y*n.x;if(!isNaN(this._lastTangent1.x)&&!isNaN(this._lastTangent1.y)&&h>0){const s=new dt.bR(t,e),i=this._lastTangent1.clone().scale(-this._lastWidth);i.rotateReverse(this._slopeC,this._slopeS);const n=_.clone().scale(-this._lastWidth);n.rotateReverse(this._slopeC,this._slopeS),a.lineTo([s.x+i.x,s.y+i.y]),a.lineTo([s.x,s.y]),a.lineTo([s.x+n.x,s.y+n.y])}}l.scale(c);for(let t=0;t<=n;t++)s<0?(o.lineTo([u.x+l.x,u.y+l.y]),l.rotateReverse(h,r)):(a.lineTo([u.x+l.x,u.y+l.y]),l.rotate(h,r))}return this._lastTangent1.setCoords(_.x,_.y),this._lastWidth=c,r}}class Pt{static{this.instance=null}static local(){return null===Pt.instance&&(Pt.instance=new Pt),Pt.instance}execute(t,e,s){return new yt(t,e,s)}}class yt{constructor(t,e,s){this._inputGeometries=t;const i=s.geomUnitsPerPoint;this._height=(void 0!==e.amplitude?e.amplitude:2)*i,this._period=(void 0!==e.period?e.period:3)*i,this._style=e.waveform??"Sinus",this._height<=0&&(this._height=Math.abs(this._height)),this._period<=0&&(this._period=Math.abs(this._period)),this._pattern=new T,this._pattern.addValue(this._period),this._pattern.addValue(this._period),this._walker=new N,this._walker.updateTolerance(i)}next(){let t=this._inputGeometries.next();for(;t;){if(0===this._height||0===this._period)return t;const e=this._processGeom(t);if(e)return e;t=this._inputGeometries.next()}return null}_processGeom(t){const e=h.z.createEmptyOptimizedCIM(t.geometryType);for(;t.nextPath();){e.startPath();const s=t.pathLength();if(this._walker.init(t,this._pattern))switch(this._style){case"Sinus":default:this._constructCurve(e,s,!1);break;case"Square":this._constructSquare(e,s);break;case"Triangle":this._constructTriangle(e,s);break;case"Random":this._constructCurve(e,s,!0)}else for(;t.nextPoint();)e.pushXY(t.x,t.y)}return e}_constructCurve(t,e,s){let i=Math.round(e/this._period);0===i&&(i=1);const n=16*i+1,h=e/i,r=this._period/16,o=1/n,a=2*Math.PI*e/h,l=2*Math.PI*Math.random(),c=2*Math.PI*Math.random(),u=2*Math.PI*Math.random(),_=.75-Math.random()/2,p=.75-Math.random()/2,f=new L;this._walker.curPointAndAngle(f),t.pushPoint(f.pt);let d=0;for(;;){if(!this._walker.nextPointAndAngle(r,f)){t.pushPoint(this._walker.getPathEnd());break}{const e=d;let i;if(d+=o,s){const t=this._height/2*(1+.3*Math.sin(_*a*e+l));i=t*Math.sin(a*e+c),i+=t*Math.sin(p*a*e+u),i/=2}else i=.5*this._height*Math.sin(.5*a*e);t.pushXY(f.pt[0]-i*f.sa,f.pt[1]+i*f.ca)}}}_constructSquare(t,e){Math.round(e/this._period);let s=!0;for(;;){let e=!1;if(this._walker.curPositionIsValid()){const i=new L;this._walker.curPointAndAngle(i);const n=new L;if(this._walker.nextPointAndAngle(this._period,n)){const h=new L;this._walker.nextPointAndAngle(this._period,h)&&(s?(t.pushPoint(i.pt),s=!1):t.pushPoint(i.pt),t.pushXY(i.pt[0]-this._height/2*i.sa,i.pt[1]+this._height/2*i.ca),t.pushXY(n.pt[0]-this._height/2*n.sa,n.pt[1]+this._height/2*n.ca),t.pushXY(n.pt[0]+this._height/2*n.sa,n.pt[1]-this._height/2*n.ca),t.pushXY(h.pt[0]+this._height/2*h.sa,h.pt[1]-this._height/2*h.ca),e=!0)}}if(!e){t.pushPoint(this._walker.getPathEnd());break}}}_constructTriangle(t,e){Math.round(e/this._period);let s=!0;for(;;){let e=!1;if(this._walker.curPositionIsValid()){const i=new L;this._walker.curPointAndAngle(i);const n=new L;if(this._walker.nextPointAndAngle(this._period/2,n)){const h=new L;this._walker.nextPointAndAngle(this._period,h)&&(this._walker.nextPosition(this._period/2)&&(s?(t.pushPoint(i.pt),s=!1):t.pushPoint(i.pt),t.pushXY(n.pt[0]-this._height/2*n.sa,n.pt[1]+this._height/2*n.ca),t.pushXY(h.pt[0]+this._height/2*h.sa,h.pt[1]-this._height/2*h.ca)),e=!0)}}if(!e){t.pushPoint(this._walker.getPathEnd());break}}}}class Mt{static{this.instance=null}static local(){return null===Mt.instance&&(Mt.instance=new Mt),Mt.instance}execute(t,e,s){return new bt(t,e,s)}}class bt extends l{constructor(t,e,s){super(t),this._geometryWalker=new N,this._geometryWalker.updateTolerance(s),this._angleToLine=e.angleToLine??!0,this._keepUpright=e.keepUpright??!1,this._offset=(e.offset?e.offset:0)*s,this._originalEndings=e.endings??"WithHalfGap",this._offsetAtEnd=(e.customEndingOffset?e.customEndingOffset:0)*s,this._position=-(e.offsetAlongLine?e.offsetAlongLine:0)*s,this._pattern=new T,this._pattern.init(e.placementTemplate),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{"WithFullGap"===this._originalEndings&&this.isClosed?this._endings="WithMarkers":this._endings=this._originalEndings,this._pattern.extPtGap=0;let s,i=!0;switch(this._endings){case"NoConstraint":s=-this._position,s=this._adjustPosition(s),i=!1;break;case"WithHalfGap":default:s=-this._pattern.lastValue()/2;break;case"WithFullGap":s=-this._pattern.lastValue(),this._pattern.extPtGap=this._pattern.lastValue();break;case"WithMarkers":s=0;break;case"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 n=0;for(;s>n;)s-=n,n=this._pattern.nextValue();n-=s,e=n,this.iteratePath=!0}const s=new L;return this._geometryWalker.nextPointAndAngle(e,s)?"WithFullGap"===this._endings&&this._geometryWalker.isPathEnd()?(this.iteratePath=!1,null):"WithMarkers"===this._endings&&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 wt{static{this.instance=null}static local(){return null===wt.instance&&(wt.instance=new wt),wt.instance}execute(t,e,s){return new Ct(t,e,s)}}class Ct extends l{constructor(t,e,s){super(t,!1,!0),this._curveHelper=new u,this._placePerPart=e.placePerPart??!1,this._angleToLine=void 0===e.angleToLine||e.angleToLine,this._keepUpright=e.keepUpright??!1,this._offset=void 0!==e.offset?e.offset*s:0,this._type=e.extremityPlacement??"Both",this._position=void 0!==e.offsetAlongLine?e.offsetAlongLine*s:0,this._beginProcessed=!1}processMultiPath(t){return this._placePerPart?super.processMultiPath(t):this.processPath(t)}processPath(t){let e;switch(this._type){case"Both":default:this._beginProcessed?(e=this._atExtremities(t,this._position,!1),this._beginProcessed=!1,this.iterateMultiPath=!1,this.iteratePath=!1):(e=this._atExtremities(t,this._position,!0),this._beginProcessed=!0,this.iterateMultiPath=!0,this.iteratePath=!0);break;case"JustBegin":e=this._atExtremities(t,this._position,!0);break;case"JustEnd":e=this._atExtremities(t,this._position,!1);case"None":}return e}_atExtremities(t,e,s){if(this._placePerPart||(s?t.seekPath(0):t.seekPath(t.totalSize-1)),s||t.seekPathEnd(),s?t.nextPoint():t.prevPoint()){let i=0,[n,h]=[0,0],[r,o]=[t.x,t.y];const a=[0,0];for(;s?t.nextPoint():t.prevPoint();){n=r,h=o,r=t.x,o=t.y;const s=this._curveHelper.getLength(n,h,r,o);if(i+s>e){const t=(e-i)/s,[l,c]=this._curveHelper.getAngleCS(a,n,h,r,o,t),u=this._curveHelper.getCoord2D(n,h,r,o,t);return this.internalPlacement.setTranslate(u[0]-this._offset*c,u[1]+this._offset*l),this._angleToLine&&this.internalPlacement.setRotateCS(-l,-c),this.internalPlacement}i+=s}}return null}}const vt=.001;class St{static{this.instance=null}static local(){return null===St.instance&&(St.instance=new St),St.instance}execute(t,e,s){return new zt(t,e,s)}}class zt extends l{constructor(t,e,s){super(t),this._segmentIterator=null,this._segCount=0,this._firstSeg=!0,this._seg=null,this._ms=[],this._from=0,this._to=0,this._pt=null,this._walker=new N,this._walker.updateTolerance(s),this._placePerPart=e.placePerPart??!1,this._angleToLine=e.angleToLine??!1,this._keepUpright=e.keepUpright??!1,this._offset=(e.offset??0)*s,this._interval=e.interval??0,this._interval<=0&&(this._interval=.01),this._skipRate=e.skipMarkerRate??0,this._skipRate<=1&&(this._skipRate=0),this._placeAtExtremities=e.placeAtExtremities??!1}processPath(t){if(!this.iteratePath){const{fromGeometry:e}=g.vZ.module,s=e(t.getCurrentPath().asJSON()).getGeometry(),i=s.getPathStart(0);this._segmentIterator=s.querySegmentIteratorAtVertex(i),this._segCount=s.getSegmentCountPath(0),this._firstSeg=!0,this.iteratePath=!0,this._pt=s.getXY(0).clone()}for(;0===this._ms.length&&this._segmentIterator?.hasNextSegment();){--this._segCount,this._seg=this._segmentIterator.nextSegment(),this._from=this._seg.getStartAttributeAsDbl(2,0),this._to=this._seg.getEndAttributeAsDbl(2,0);const e=!isNaN(this._from),s=!isNaN(this._to);e&&(this._from=Math.round(this._from/vt)*vt,Math.abs(this._from)<vt&&(this._from=0)),s&&(this._to=Math.round(this._to/vt)*vt,Math.abs(this._to)<vt&&(this._to=0));let i=e?Math.floor(this._from/this._interval):0,n=s?Math.floor(this._to/this._interval):0;if(e&&(this._placeAtExtremities||!this._firstSeg||!this._placePerPart&&t.pathIndex>0)&&Math.abs(i*this._interval-this._from)<vt&&(!this._skipRate||i%this._skipRate)&&this._ms.push(this._from),this._firstSeg=!1,e&&s&&!(Math.abs(this._from-this._to)<vt))if(this._from<=this._to){i*this._interval<this._from+vt&&++i,n*this._interval>this._to-vt&&--n;for(let t=i;t<=n;++t)(!this._skipRate||t%this._skipRate)&&this._ms.push(t*this._interval)}else{i*this._interval>this._from-vt&&--i,n*this._interval<this._to+vt&&++n;for(let t=n;t<=i;++t)(!this._skipRate||t%this._skipRate)&&this._ms.push(t*this._interval)}}let e=0;if(0===this._ms.length){if(this.iteratePath=!1,!this._segCount&&this._placeAtExtremities&&!isNaN(this._to)&&(this._placePerPart||t.pathIndex===t.totalSize-1)){const t=Math.floor(this._to/this._interval);Math.abs(t*this._interval-this._to)<vt&&(!this._skipRate||t%this._skipRate)&&(this._ms.push(this._to),e=1)}if(0===this._ms.length)return null}const s=this._ms.pop(),i=isNaN(this._from)||isNaN(this._to)||Math.abs(this._from-this._to)<vt?e:(s-this._from)/(this._to-this._from);this._seg.queryCoord2D(i,this._pt);const n=this._seg.getTangent(i);let{x:h,y:r}=n.normalize();return this.internalPlacement.setTranslate(this._pt.x-this._offset*r,this._pt.y+this._offset*h),this._angleToLine&&(this._keepUpright&&h<0&&(h=-h,r=-r),this.internalPlacement.setRotateCS(h,r)),this.internalPlacement.setMeasure(s),this.internalPlacement}}class It{static{this.instance=null}static local(){return null===It.instance&&(It.instance=new It),It.instance}execute(t,e,s){return new At(t,e,s)}}class At extends l{constructor(t,e,s){super(t),this._walker=new N,this._walker.updateTolerance(s),this._placePerPart=e.placePerPart??!1,this._angleToLine=void 0===e.angleToLine||e.angleToLine,this._keepUpright=e.keepUpright??!1,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 T,this._pattern.init(e.positionArray,!1),this._subPathLen=0,this._totalPathLen=0,this._posCount=this._pattern.size(),this._pathIndexes=[],this._pathLengths=[],this._pathStarts=[],this._posIndex=0,this._positions=[],this._isFirst=!0,this._prevPos=0}processMultiPath(t){return this._placePerPart?super.processMultiPath(t):this.processPath(t)}processPath(t){return this._pattern.isEmpty()?null:this._placePerPart?this._processPathPerPart(t):this._processMultiPart(t)}_processPathPerPart(t){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=t.pathLength()-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=new L;return this._walker.nextPointAndAngle(e,s,1)?(this._posCount--,0===this._posCount&&(this.iteratePath=!1),this._setPlacement(s)):(this.iteratePath=!1,null)}_processMultiPart(t){if(!this.iteratePath){if(!this._initializeMultiPart(t))return null;this.iteratePath=!0}if(this._posIndex>=this._positions.length)return this.iteratePath=!1,null;const e=this._getPositionAtDistance(t,this._positions[this._posIndex]);if(null==e)return this.iterateMultiPath=!1,this.iteratePath=!1,null;this._posIndex++;const s=this._posIndex<this._positions.length;return this.iterateMultiPath=s,this.iteratePath=s,this._setPlacement(e)}_initializeMultiPart(t){this._pathIndexes.length=0,this._pathLengths.length=0,this._pathStarts.length=0,this._positions.length=0,this._totalPathLen=0,this._posIndex=0,this._isFirst=!0;for(let e=0;e<t.totalSize;e++){if(!t.seekPath(e))continue;const s=t.pathLength();s<=0||(this._pathIndexes.push(e),this._pathStarts.push(this._totalPathLen),this._pathLengths.push(s),this._totalPathLen+=s)}if(this._subPathLen=this._totalPathLen-this._beginGap-this._endGap,this._subPathLen<0||!this._pathIndexes.length)return!1;this._pattern.reset();for(let t=0;t<this._pattern.size();t++)this._positions.push(this._beginGap+this._pattern.nextValue()*this._subPathLen);return this._positions.length>0}_getPositionAtDistance(t,e){const s=Math.max(0,Math.min(e,this._totalPathLen));let i=this._pathIndexes.length-1;for(let t=0;t<this._pathIndexes.length-1;t++)if(s<=this._pathStarts[t]+this._pathLengths[t]){i=t;break}if(!t.seekPath(this._pathIndexes[i]))return null;if(!this._walker.init(t,this._pattern,!1))return null;const n=new L,h=Math.max(0,Math.min(s-this._pathStarts[i],this._pathLengths[i]));return this._walker.nextPointAndAngle(h,n,1)?n:null}_setPlacement(t){this.internalPlacement.setTranslate(t.pt[0]-this._offset*t.sa,t.pt[1]+this._offset*t.ca);const e=this._isFirst&&this._flipFirst;let s,i;return this._angleToLine?(s=t.ca,i=t.sa):(s=1,i=0),e&&(s=-s,i=-i),this.internalPlacement.setRotateCS(s,i),this._isFirst=!1,this.internalPlacement}}var kt=s(87811);const Tt=512,Lt=24,Et=1e-6;class Nt{static{this.instance=null}static local(){return null===Nt.instance&&(Nt.instance=new Nt),Nt.instance}execute(t,e,s,i){return new Gt(t,e,s,i)}}class Gt{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._accelerationMap=null,this._testInsidePolygon=!1,this._verticalSubdivision=!0,this._stepX=Math.abs(e.stepX??16)*s,this._stepY=Math.abs(e.stepY??16)*s,this._stepX=Math.round(128*this._stepX)/128,this._stepY=Math.round(128*this._stepY)/128,0!==this._stepX&&0!==this._stepY){if(this._gridType=e.gridType??"Fixed","Random"===this._gridType){const t=e.seed??13,s=1;this._randomLCG=new kt.A(t*s),this._randomness=(e.randomness??100)/100,this._gridAngle=0,this._shiftOddRows=!1,this._cosAngle=1,this._sinAngle=0,this._offsetX=0,this._offsetY=0,this._buildRandomValues()}else{if(this._randomness=0,this._gridAngle=e.gridAngle??0,this._shiftOddRows=e.shiftOddRows??!1,this._offsetX=(e.offsetX??0)*s,this._offsetY=(e.offsetY??0)*s,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}if(this._graphicOriginX=0,this._graphicOriginY=0,null!=i){const[t,e,s,n]=i.split("/"),h=parseFloat(t),r=parseFloat(e),o=parseFloat(s),a=parseFloat(n);this._graphicOriginX=-(a*2**h+o)*Tt,this._graphicOriginY=r*Tt,this._testInsidePolygon=!0}this._internalPlacement=new o.W,this._calculateMinMax(t),this._geometryCursor=t}}next(){return this._geometryCursor?this._nextInside():null}_buildRandomValues(){if(!Gt._randValues){Gt._randValues=[];for(let t=0;t<Lt;t++)for(let t=0;t<Lt;t++)Gt._randValues.push(this._randomLCG.getFloat()),Gt._randValues.push(this._randomLCG.getFloat())}}_calculateMinMax(t){let e,s,i,n,h,r,o,a,l,c,u,_,p,f;this._xMin=0,this._xMax=0,this._yMin=0,this._yMax=0,o=a=p=u=Number.MAX_VALUE,l=c=f=_=-Number.MAX_VALUE;const d=1!==this._cosAngle;for(t.reset();t.nextPath();)for(;t.nextPoint();)r=t.x,h=t.y,e=r-this._graphicOriginX-this._offsetX,s=h-this._graphicOriginY-this._offsetY,d?(i=this._cosAngle*e-this._sinAngle*s,n=this._sinAngle*e+this._cosAngle*s):(i=e,n=s),o=Math.min(o,i),l=Math.max(l,i),a=Math.min(a,n),c=Math.max(c,n),u=Math.min(u,h),_=Math.max(_,h),p=Math.min(p,r),f=Math.max(f,r);u=u!==Number.MAX_VALUE?u:-512-this._stepY,_=_!==-Number.MAX_VALUE?_:this._stepY,p=p!==Number.MAX_VALUE?p:-this._stepX,f=f!==-Number.MAX_VALUE?f:Tt+this._stepX;const g=_-u,m=f-p;if(this._verticalSubdivision=g>=m,this._polygonMin=this._verticalSubdivision?u:p,this._testInsidePolygon){let t=0-this._graphicOriginX-this._offsetX-this._stepX,e=Tt-this._graphicOriginX-this._offsetX+this._stepX,s=-512-this._graphicOriginY-this._offsetY-this._stepY,i=0-this._graphicOriginY-this._offsetY+this._stepY;if(d){const n=[[t,s],[t,i],[e,s],[e,i]];t=s=Number.MAX_VALUE,e=i=-Number.MAX_VALUE;for(const h of n){const n=this._cosAngle*h[0]-this._sinAngle*h[1],r=this._sinAngle*h[0]+this._cosAngle*h[1];t=Math.min(t,n),e=Math.max(e,n),s=Math.min(s,r),i=Math.max(i,r)}}o=o!==Number.MAX_VALUE?Math.max(o,t):t,a=a!==Number.MAX_VALUE?Math.max(a,s):s,l=l!==-Number.MAX_VALUE?Math.min(l,e):e,c=c!==-Number.MAX_VALUE?Math.min(c,i):i}this._xMin=Math.round(o/this._stepX),this._xMax=Math.round(l/this._stepX),this._yMin=Math.round(a/this._stepY),this._yMax=Math.round(c/this._stepY),this._currentX=this._xMax+1,this._currentY=this._yMin-1,this._buildAccelerationMap(t,p,f,u,_)}_buildAccelerationMap(t,e,s,i,n){t.reset();const h=new Map,r=this._verticalSubdivision,o=r?n-i:s-e;let a=Math.ceil(o/10);if(a<=1)return;const l=Math.floor(o/a);let c,u,_,p,f,d,g,m,x,P,y;for(a++,this._delta=l,r?(x=-512-2*this._stepY,P=2*this._stepY,y=i):(x=-2*this._stepX,P=Tt+2*this._stepX,y=e);t.nextPath();)if(!(t.pathSize<2)&&t.nextPoint())for(c=t.x,u=t.y;t.nextPoint();c=_,u=p){if(_=t.x,p=t.y,r){if(u===p||u<x&&p<x||u>P&&p>P)continue;f=Math.min(u,p),d=Math.max(u,p)}else{if(c===_||c<x&&_<x||c>P&&_>P)continue;f=Math.min(c,_),d=Math.max(c,_)}for(;f<d;)g=Math.floor((f-y)/l),Ot(g,c,u,_,p,h),f+=l;m=Math.floor((d-y)/l),m>g&&Ot(m,c,u,_,p,h)}this._accelerationMap=h}_nextInside(){for(;;){if(this._currentX>this._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;if(this._currentX++,"Random"===this._gridType){const n=(this._currentX%Lt+Lt)%Lt,h=(this._currentY%Lt+Lt)%Lt;s=this._graphicOriginX+t+this._stepX*this._randomness*(.5-Gt._randValues[h*Lt+n])*2/3,i=this._graphicOriginY+e+this._stepY*this._randomness*(.5-Gt._randValues[h*Lt+n+1])*2/3}else s=this._graphicOriginX+this._cosAngle*t+this._sinAngle*e,i=this._graphicOriginY-this._sinAngle*t+this._cosAngle*e;if(!this._testInsidePolygon||this._isInsidePolygon(s,i,this._geometryCursor))return this._internalPlacement.setTranslate(s,i),this._internalPlacement}}_isInsidePolygon(t,e,s){if(null==this._accelerationMap)return function(t,e,s){let i,n,h,r,o=0;for(t+=Et,e+=Et,s.reset();s.nextPath();)if(s.nextPoint())for(i=s.x,n=s.y;s.nextPoint();i=h,n=r)h=s.x,r=s.y,n>e!=r>e&&((h-i)*(e-n)-(r-n)*(t-i)>0?o++:o--);return 0!==o}(t,e,s);t+=Et,e+=Et;const i=this._verticalSubdivision,n=i?e:t,h=Math.floor((n-this._polygonMin)/this._delta),r=this._accelerationMap.get(h);if(!r)return!1;let o,a,l,c=0;for(const s of r){if(o=s[0],a=s[1],i){if(o[1]>e==a[1]>e)continue;l=(a[0]-o[0])*(e-o[1])-(a[1]-o[1])*(t-o[0])}else{if(o[0]>t==a[0]>t)continue;l=(a[1]-o[1])*(t-o[0])-(a[0]-o[0])*(e-o[1])}l>0?c++:c--}return 0!==c}}function Ot(t,e,s,i,n,h){let r=h.get(t);r||(r=[],h.set(t,r)),r.push([[e,s],[i,n]])}class Rt{static{this.instance=null}static local(){return null===Rt.instance&&(Rt.instance=new Rt),Rt.instance}execute(t,e,s){return new Xt(t,e,s)}}class Xt extends l{constructor(t,e,s){super(t),this._curveHelper=new u,this._angleToLine=void 0===e.angleToLine||e.angleToLine,this._keepUpright=e.keepUpright??!1,this._offset=void 0!==e.offset?e.offset*s:0,this._relativeTo=e.relativeTo??"LineMiddle",this._position=void 0!==e.startPointOffset?e.startPointOffset*s:0,this._epsilon=.001*s}processPath(t){const e=this._position;if("SegmentMidpoint"===this._relativeTo){if(this.iteratePath||(this.iteratePath=!0),t.nextPoint()){let[e,s]=[t.x,t.y],[i,n]=[0,0];const h=[0,0];for(;t.nextPoint();){i=t.x,n=t.y;const r=this._curveHelper.getLength(e,s,i,n);if(r<this._epsilon){e=i,s=n;continue}const o=.5+this._position/r,[a,l]=this._curveHelper.getAngleCS(h,e,s,i,n,o),c=this._curveHelper.getCoord2D(e,s,i,n,o);return this.internalPlacement.setTranslate(c[0]-this._offset*l,c[1]+this._offset*a),this._angleToLine&&this.internalPlacement.setRotateCS(a,l),this.internalPlacement}}return this.iteratePath=!1,null}const s="LineEnd"===this._relativeTo;return this.onLine(t,e,s)}onLine(t,e,s){let i,n=!1;switch(this._relativeTo){case"LineMiddle":default:t.seekPathStart(),i=t.pathLength()/2+e;break;case"LineBeginning":i=e;break;case"LineEnd":i=e,n=!0}s?t.seekPathEnd():t.seekPathStart();let h=0;if(s?t.prevPoint():t.nextPoint()){let[e,r]=[t.x,t.y],[o,a]=[0,0];const l=[0,0];for(;s?t.prevPoint():t.nextPoint();){o=t.x,a=t.y;const s=this._curveHelper.getLength(e,r,o,a);if(h+s>i){const t=(i-h)/s,[c,u]=this._curveHelper.getAngleCS(l,e,r,o,a,t),_=this._curveHelper.getCoord2D(e,r,o,a,t),p=n?-this._offset:this._offset;return this.internalPlacement.setTranslate(_[0]-p*u,_[1]+p*c),this._angleToLine&&(n?this.internalPlacement.setRotateCS(-c,-u):this.internalPlacement.setRotateCS(c,u)),this.internalPlacement}e=o,r=a,h+=s}}return null}}class Yt{static{this.instance=null}static local(){return null===Yt.instance&&(Yt.instance=new Yt),Yt.instance}execute(t,e,s){return new Ft(t,e,s)}}class Ft extends l{constructor(t,e,s){super(t),this._curveHelper=new u,this._angleToLine=void 0===e.angleToLine||e.angleToLine,this._keepUpright=e.keepUpright??!1,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]),n=Math.sin(e[2]);s-=this._offset*n,i+=this._offset*t}return this.internalPlacement.setTranslate(s,i),this._tagIterator++,this.internalPlacement}_preparePath(t){this._tags.length=0,this._tagIterator=0,t.seekPathStart();const e=t.isClosed();let s=0,i=!1,n=0,h=0;if(t.seekPathStart(),t.nextPoint()){let r=t.x,o=t.y,a=t.getControlPoint(),l=!0,c=t.nextPoint();for(;c;){const u=t.x,_=t.y,p=t.getControlPoint();(this._angleToLine||0!==this._offset)&&(n=this._curveHelper.getAngle(r,o,u,_,0)),l?(l=!1,e?(s=n,i=a):(this._endPoints||this._controlPoints&&a)&&this._tags.push([r,o,n])):a?this._controlPoints&&this._tags.push([r,o,Dt(h,n)]):this._regularVertices&&this._tags.push([r,o,Dt(h,n)]),(this._angleToLine||0!==this._offset)&&(h=this._curveHelper.getAngle(r,o,u,_,1)),c=t.nextPoint(),c||(e?p||i?this._controlPoints&&this._tags.push([u,_,Dt(h,s)]):this._regularVertices&&this._tags.push([u,_,Dt(h,s)]):(this._endPoints||this._controlPoints&&p)&&this._tags.push([u,_,h])),r=u,o=_,a=p}}this._tagIterator=0}}function Dt(t,e){const s=Math.PI;for(;Math.abs(e-t)>s+2e-15;)e-t>s?e-=2*s:e+=2*s;return(t+e)/2}var Wt=s(32011);class Ht{static{this.instance=null}static local(){return null===Ht.instance&&(Ht.instance=new Ht),Ht.instance}execute(t,e,s){return new Vt(t,e,s)}}class Vt{constructor(t,e,s){this._geometryCursor=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:"OnPolygon",this._placementPerPart=void 0!==e.placePerPart&&e.placePerPart,this._internalPlacement=new o.W}next(){const t=this._geometryCursor;if(!t)return null;if(!this._placementPerPart)return this._geometryCursor=null,this._polygonCenter(t);for(;t.nextPath();)if(!(t.getCurrentRingArea()<0))return this._polygonCenter(t.getCurrentPath());return this._geometryCursor=null,null}_polygonCenter(t){let e=!1;switch(this._method){case"CenterOfMass":{const s=(0,tt.TP)(t);s&&(this._internalPlacement.setTranslate(s[0]+this._offsetX,s[1]+this._offsetY),e=!0)}break;case"BoundingBoxCenter":{const s=(0,F.z8)(t);s&&(this._internalPlacement.setTranslate((s[2]+s[0])/2+this._offsetX,(s[3]+s[1])/2+this._offsetY),e=!0)}break;default:{const s=(0,Wt.d)(t);null!==s&&(this._internalPlacement.setTranslate(s[0]+this._offsetX,s[1]+this._offsetY),e=!0)}}return e?this._internalPlacement:null}}var Ut=s(86235),Bt=s(14057);class qt{static{this.instance=null}static local(){return null===qt.instance&&(qt.instance=new qt),qt.instance}execute(t,e,s){return new Jt(t,s)}}class Jt{constructor(t,e){this._cursor=t,this._context=e}next(){const t=this._cursor.next();if(!t||0===t.totalSize)return null;const{matcher:e,target:s,tileKey:i}=this._context,n=e&&s&&null!=i?e.getMatcherGeometryOverride((0,Bt.$)(i,s.getObjectId())):null;if(!n)return t;const r=h.z.fromOptimizedCIM(n.geometry.clone(),n.geometryType);return r.invertY(),r}}class Zt{static{this.instance=null}static local(){return null===Zt.instance&&(Zt.instance=new Zt),Zt.instance}execute(t){return new jt(t)}}class jt extends l{constructor(t){super(t),this._curveHelper=new u}processPath(t){if(this.iteratePath=!0,t.nextPoint()){const[e,s]=[t.x,t.y];if(t.nextPoint()){const[i,n]=[t.x,t.y],h=(e+i)/2,r=(s+n)/2;this.internalPlacement.setTranslate(h,r);const o=this._curveHelper.getAngle(e,s,i,n,0);return this.internalPlacement.setRotate(o),this.internalPlacement}}return this.iteratePath=!1,null}}function $t(t){if(!t)return null;switch(t.type){case"CIMGeometricEffectAddControlPoints":return i.local();case"CIMGeometricEffectArrow":return p.local();case"CIMGeometricEffectBuffer":return m.local();case"CIMGeometricEffectCircularSector":return w.local();case"CIMGeometricEffectControlMeasureLine":return z.local();case"CIMGeometricEffectCut":return A.local();case"CIMGeometricEffectDashes":return O.local();case"CIMGeometricEffectDonut":return X.local();case"CIMGeometricEffectJog":return B.local();case"CIMGeometricEffectMove":return J.local();case"CIMGeometricEffectOffset":return $.local();case"CIMGeometricEffectRadial":return et.local();case"CIMGeometricEffectReverse":return it.local();case"CIMGeometricEffectRotate":return rt.local();case"CIMGeometricEffectScale":return at.local();case"CIMGeometricEffectSuppress":return ut.local();case"CIMGeometricEffectTaperedPolygon":return mt.local();case"CIMGeometricEffectWave":return Pt.local();case"CIMGeometricEffectEnclosingPolygon":return D.local();case"PrivateDimensionEffect":return Ut.HZ.local();case"PrivateMatcherGeometryOverrideEffect":return qt.local()}return null}function Kt(t){if(!t)return null;switch(t.type){case"CIMMarkerPlacementAlongLineSameSize":return Mt.local();case"CIMMarkerPlacementAtExtremities":return wt.local();case"CIMMarkerPlacementAtMeasuredUnits":return St.local();case"CIMMarkerPlacementAtRatioPositions":return It.local();case"CIMMarkerPlacementInsidePolygon":return Nt.local();case"CIMMarkerPlacementOnLine":return Rt.local();case"PrivatePlacementMultipoint":return Zt.local();case"CIMMarkerPlacementOnVertices":return Yt.local();case"CIMMarkerPlacementPolygonCenter":return Ht.local()}return null}},98939(t,e,s){s.d(e,{W:()=>i});class i{constructor(){this.setIdentity()}getAngle(){return(null==this.rz||0===this.rz&&1!==this.rzCos&&0!==this.rzSin)&&(this.rz=Math.atan2(this.rzSin,this.rzCos)),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.rzCos=1,this.rzSin=0}setTranslate(t,e){this.tx=t,this.ty=e}setTranslateZ(t){this.tz=t}setRotateCS(t,e){this.rz=void 0,this.rzCos=t,this.rzSin=e}setRotate(t){this.rz=t,this.rzCos=void 0,this.rzSin=void 0}setRotateY(t){this.ry=t}setScale(t){this.s=t}setMeasure(t){this.m=t}}},35521(t,e,s){var i=s(28076);i.D.CIMSolidStroke.capstyle,i.D.CIMSolidStroke.joinstyle,i.D.CIMSolidStroke.miterlimit},69754(t,e,s){s.d(e,{Z:()=>l,q:()=>a});var i=s(68197),n=s(93397);const h=/([A-Za-z_][\w-]*)\s*=\s*(['"])(.*?)\2/g,r=/&(amp|lt|gt|quot|apos);/g,o=/<\s*\/?\s*(?:CLR|BOL|_BOL|ITA|_ITA|FNT|CHR)\b/i;function a(t){return o.test(t)}function l(t){if(!t.supportsRichText||!t.textString.includes("<"))return null;const e=function(t){return{font:{...t.font},fontSize:t.symbol?.height&&!isNaN(t.symbol.height)?t.symbol.height:10,characterSpacing:0}}(t),s=[],i=[];let n=c(e),h="",r=!1;const o=t.textString,a=()=>{if(!h)return;const t=u(h);if(!t)return void(h="");const e=i[i.length-1];e&&function(t,e){return t.fontSize===e.fontSize&&t.characterSpacing===e.characterSpacing&&t.font.family===e.font.family&&t.font.style===e.font.style&&t.font.weight===e.font.weight&&function(t,e){return t===e||!!t&&!!e&&t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]&&t[3]===e[3]}(t.color,e.color)}(e,n)?e.text+=t:i.push({text:t,font:{...n.font},fontSize:n.fontSize,characterSpacing:n.characterSpacing,color:n.color}),h=""};let l=0;for(;l<o.length;){const t=o[l];if("<"!==t){h+=t,l++;continue}const e=o.indexOf(">",l+1);if(-1===e)return null;const i=_(o.slice(l+1,e));if(!i)return null;if(r=!0,a(),i.isEnd){const t=s.pop();if(!t||t.name!==i.name)return null;n=t.previous}else{const t=c(n);n=p(n,i),s.push({name:i.name,previous:t})}l=e+1}return s.length?null:(a(),r?i.filter(t=>t.text.length>0):null)}function c(t){return{font:{...t.font},fontSize:t.fontSize,characterSpacing:t.characterSpacing,color:t.color}}function u(t){return t.replaceAll(r,(t,e)=>{switch(e){case"amp":return"&";case"lt":return"<";case"gt":return">";case"quot":return'"';case"apos":return"'";default:return t}})}function _(t){const e=t.trim();if(!e)return null;const s=e.startsWith("/"),i=s?e.slice(1).trim():e,n=/^([A-Za-z_][\w-]*)/.exec(i);if(!n)return null;const r=n[1],o=i.slice(r.length),a={};let l;for(h.lastIndex=0;l=h.exec(o);)a[l[1]]=l[3];return{isEnd:s,name:r,attributes:a}}function p(t,e){const s=c(t);switch(e.name.toUpperCase()){case"BOL":s.font.weight="bold";break;case"_BOL":s.font.weight="normal";break;case"ITA":s.font.style="italic";break;case"_ITA":s.font.style="normal";break;case"FNT":!function(t,e){const{name:s,style:i,size:h,scale:r,wght:o,ital:a}=e;if(s&&(t.font.family=s),i){const e=(0,n._d)(i);t.font.style=e.style,t.font.weight=e.weight}if(o){const e=Number(o);t.font.weight=e>=600?"bold":"normal"}if(a){const e=Number(a);isNaN(e)||(t.font.style=0!==e?"italic":"normal")}if(h){const e=Number(h);!isNaN(e)&&e>0&&(t.fontSize=e)}if(r){const e=Number(r);!isNaN(e)&&e>0&&(t.fontSize*=e/100)}}(s,e.attributes);break;case"CLR":s.color=function(t){if(t.hex){const e=i.A.fromHex(t.hex)?.toArray();if(e){const s="alpha"in t?g(t.alpha):e[3];return[e[0],e[1],e[2],s]}}if("red"in t||"green"in t||"blue"in t)return[f(t.red),f(t.green),f(t.blue),g(t.alpha)];const e=d(t.cyan),s=d(t.magenta),n=d(t.yellow),h=d(t.black),r=g(t.alpha),o=d(t.tint,100)/100,a=1-h;return[Math.round(255*(1-e)*a*o),Math.round(255*(1-s)*a*o),Math.round(255*(1-n)*a*o),r]}(e.attributes);break;case"CHR":!function(t,e){const s=Number(e.spacing);!isNaN(s)&&s>=0&&(t.characterSpacing=s/100)}(s,e.attributes)}return s}function f(t){const e=Number(t);return function(t){return Math.max(0,Math.min(255,Math.round(t)))}(isNaN(e)?0:e)}function d(t,e=0){const s=Number(t);return function(t){return Math.max(0,Math.min(1,t))}((isNaN(s)?e:s)/100)}function g(t){return Math.round(255*d(t,100))}},13195(t,e,s){s.d(e,{GW:()=>g,IU:()=>m,Wh:()=>_,cP:()=>y,p6:()=>d,ru:()=>P,s3:()=>x,wV:()=>f,yM:()=>M,z0:()=>p});var i=s(95108),n=s(6774);const h=Number.POSITIVE_INFINITY,r=Math.PI,o=2*r,a=128/r,l=256/360,c=r/180,u=1/Math.LN2;function _(t,e){return(t%=e)>=0?t:t+e}function p(t){return _(t*a,256)}function f(t){return _(t*l,256)}function d(t){return Math.log(t)*u}function g(t,e,s){return t*(1-s)+e*s}function m(t){return 8+Math.max(16*(t-14),0)}function x(t,e,s){let i,n,h,r=0;for(const o of s){i=o.length;for(let s=1;s<i;++s)n=o[s-1],h=o[s],n.y>e!=h.y>e&&((h.x-n.x)*(e-n.y)-(h.y-n.y)*(t-n.x)>0?r++:r--)}return 0!==r}function P(t,e,s,n){let h,r,o,a;const l=n*n;for(const n of s){const s=n.length;if(!(s<2)){h=n[0].x,r=n[0].y;for(let c=1;c<s;++c){if(o=n[c].x,a=n[c].y,(0,i.Ng)(t,e,h,r,o,a)<l)return!0;h=o,r=a}}}return!1}function y(t,e){if(0===e||Number.isNaN(e))return t;const s=[],i=new n.bR(0,0),h=new n.bR(0,0),r=new n.bR(0,0);for(let o=0;o<t.length;o++){const a=t[o],l=[];for(let t=0;t<a.length;t++){const s=a[t-1],o=a[t],c=a[t+1];0===t?i.setCoords(0,0):i.assignSub(o,s).normalize().rightPerpendicular(),t===a.length-1?h.setCoords(0,0):h.assignSub(c,o).normalize().rightPerpendicular(),r.assignAdd(i,h).normalize();const u=r.x*h.x+r.y*h.y;0!==u&&r.scale(1/u),l.push(n.bR.add(o,r.scale(e)))}s.push(l)}return s}function M(t,e,s,i){const h=new n.bR(t[0],t[1]);if(h.scale(i),"viewport"===e){const t=-s*(Math.PI/180),e=Math.cos(t),i=Math.sin(t);h.rotate(e,i)}return h}s.d(e,["Jo",0,r,"MG",0,h,"aA",0,l,"os",0,c,"pJ",0,o])},18989(t,e,s){s.d(e,{A:()=>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)}}},63933(t,e,s){function i(t){if(!t)return 0;switch(t){case"Left":case"left":return-1;case"Right":case"right":return 1;case"justify":case"Justify":return 2;case"Center":case"center":return 0}}function n(t){if(!t)return 0;switch(t){case"Top":case"top":return 1;case"Center":case"middle":return 0;case"Baseline":case"baseline":return 2;case"Bottom":case"bottom":return-1}}function h(t){switch(t){case 1:case"right":return-1;case 2:case"justify":return 1;case 0:case"center":return 0;case-1:case"left":return 1;default:return console.debug(`Found invalid horizontal alignment ${t}`),0}}function r(t){switch(t){case 1:case"top":return 1;case 0:case"middle":return 0;case-1:case 2:case"baseline":case"bottom":return-1;default:return console.debug(`Found invalid vertical alignment ${t}`),0}}s.d(e,{Dy:()=>r,UD:()=>n,iT:()=>h,xy:()=>i})},15660(t,e,s){s.d(e,{A:()=>n});var i=s(88340);class n{constructor(t,e,s,n){this.transformedX=0,this.transformedY=0,this.center=(0,i.fA)(t,e),this.centerT=(0,i.vt)(),this.halfWidth=s/2,this.halfHeight=n/2,this.width=s,this.height=n}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 n(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]),n=(t.halfWidth+this.halfWidth+e)/s,h=(t.halfHeight+this.halfHeight+e)/i,r=Math.min(n,h);return Math.log2(r)}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,n=Math.max(this.ymax,t.ymax)-s,h=e+i/2,r=s+n/2;this.width=i,this.height=n,this.halfWidth=i/2,this.halfHeight=n/2,this.x=h,this.y=r}static deserialize(t){const e=t.readF32(),s=t.readF32(),i=t.readInt32(),h=t.readInt32();return new n(e,s,i,h)}}},75434(t,e,s){s.d(e,{HB:()=>b,tA:()=>M});var i=s(90629),n=s(16905),h=s(85560),r=s(37585),o=s(88340),a=s(63933),l=s(18989),c=s(15660);const u=Math.PI/180;class _{static fromGlyph(t,e,s,i,n){const{mosaicItem:h,rect:r,shaping:o,code:a}=s,l=h.rect;return new _({width:0===a?r.width:l.width*i,height:0===a?r.height:l.height*i,x:i*(t+o.xOffset+r.left),y:i*(e+o.yOffset-r.top),textureBinding:h.textureBinding,texcoords:{topLeft:[l.x,l.y],topRight:[l.x+l.width,l.y],bottomLeft:[l.x,l.y+l.height],bottomRight:[l.x+l.width,l.y+l.height]},fontSize:n?.fontSize,color:n?.color})}constructor(t){this._rotationT=(0,h.vt)(),this._transform=(0,h.vt)(),this._angle=0,this._bounds=null,this.width=t.width,this.height=t.height,this.x=t.x,this.y=t.y,this.textureBinding=t.textureBinding,this.texcoords=t.texcoords,this.fontSize=t.fontSize,this.color=t.color}set angle(t){this._angle=t,(0,n.$0)(this._rotationT,-t),this._offsets=this._bounds=null}get angle(){return this._angle}get offsets(){if(!this._offsets){const{x:t,y:e,width:s,height:i}=this,o=(0,n.$0)((0,h.vt)(),-this.angle),a=(0,n.lw)((0,h.vt)(),o,this._transform);this._offsets={topLeft:(0,r.l0)([0,0],[t,e],a),topRight:(0,r.l0)([0,0],[t+s,e],a),bottomLeft:(0,r.l0)([0,0],[t,e+i],a),bottomRight:(0,r.l0)([0,0],[t+s,e+i],a)}}return this._offsets}get bounds(){if(this.width<=0)return null;if(!this._bounds){const t=this.offsets;let e=1/0,s=1/0,i=-1/0,n=-1/0;for(const[h,r]of[t.topLeft,t.topRight,t.bottomLeft,t.bottomRight])e=Math.min(e,h),s=Math.min(s,r),i=Math.max(i,h),n=Math.max(n,r);const h=i-e,r=n-s,o=e+h/2,a=s+r/2;this._bounds=new c.A(o,a,h,r)}return this._bounds}setTransform(t){this._transform=t,this._offsets=null}}const p=(t,e)=>({code:0,mosaicItem:{rect:new l.A(0,0,11,8),sdf:!0,page:0,textureBinding:e},rect:{height:4,width:t,left:0,top:0},shaping:{xOffset:0,yOffset:0,xAdvance:0,yAdvance:0}});function f(t,e){return t.forEach(t=>(0,r.l0)(t,t,e)),{topLeft:t[0],topRight:t[1],bottomLeft:t[2],bottomRight:t[3]}}class d{constructor(t,e,s,i){this._rotation=0,this._decorate(t,e,s,i),this.glyphs=t,this.bounds=this._createBounds(t),this.isMultiline=e.length>1,this._hasRotation=0!==s.angle,this._transform=this._createGlyphTransform(this.bounds,s),this._borderLineSizePx=s.borderLineSizePx,(s.borderLineSizePx||s.hasBackground)&&([this.bounds,this.textBox]=this.shapeBackground(this._transform));for(const e of t)e.setTransform(this._transform)}setRotation(t){if(0===t&&0===this._rotation)return;this._rotation=t;const e=this._transform,s=(0,n.$0)((0,h.vt)(),t);(0,n.lw)(e,s,e);for(const t of this.glyphs)t.setTransform(this._transform)}_decorate(t,e,s,i){if(!s.decoration||"none"===s.decoration||!t.length)return;const n=s.scale,h=t[0].textureBinding;for(const r of e){const e=r.scale??n,o="underline"===s.decoration?r.baseline??i?.baseline??26:r.midline??i?.midline??16,a=r.startX*e,l=r.startY*e,c=(r.width+r.glyphWidthEnd)*e;t.push(_.fromGlyph(a,l+o*e,p(c,h),1))}}shapeBackground(t){const e=(1.5+(this._borderLineSizePx||0))/2,s=this._borderLineSizePx?e:0,{xmin:i,ymin:n,xmax:h,ymax:r,x:o,y:a,width:l,height:u}=this.bounds,_=[i-8,n-8],p=[h+8,n-8],d=[i-8,r+8],g=[h+8,r+8],m=f([[_[0]-e,_[1]-e],[p[0]+e,p[1]-e],[_[0]+s,_[1]+s],[p[0]-s,p[1]+s]],t),x=f([[d[0]+s,d[1]-s],[g[0]-s,g[1]-s],[d[0]-e,d[1]+e],[g[0]+e,g[1]+e]],t),P=f([[_[0]-e,_[1]-e],[_[0]+s,_[1]+s],[d[0]-e,d[1]+e],[d[0]+s,d[1]-s]],t),y=f([[p[0]-s,p[1]+s],[p[0]+e,p[1]-e],[g[0]-s,g[1]-s],[g[0]+e,g[1]+e]],t),M={main:f([_,p,d,g],t),top:m,bot:x,left:P,right:y};return[new c.A(o,a,l+2*e,u+2*e),M]}get boundsT(){const t=this.bounds,e=(0,r.hZ)((0,o.vt)(),t.x,t.y);if((0,r.l0)(e,e,this._transform),this._hasRotation){const s=Math.max(t.width,t.height);return new c.A(e[0],e[1],s,s)}return new c.A(e[0],e[1],t.width,t.height)}_createBounds(t){let e=1/0,s=1/0,i=0,n=0;for(const h of t)e=Math.min(e,h.offsets.topLeft[0]),s=Math.min(s,h.offsets.topLeft[1]),i=Math.max(i,h.offsets.bottomRight[0]),n=Math.max(n,h.offsets.bottomRight[1]);const h=i-e,r=n-s;return new c.A(e+h/2,s+r/2,h,r)}_createGlyphTransform(t,e){const s=u*e.angle,i=(0,h.vt)(),a=(0,o.vt)();return(0,n.Tl)(i,i,(0,r.hZ)(a,e.xOffset,-e.yOffset)),e.useCIMAngleBehavior?(0,n.e$)(i,i,s):((0,n.Tl)(i,i,(0,r.hZ)(a,t.x,t.y)),(0,n.e$)(i,i,s),(0,n.Tl)(i,i,(0,r.hZ)(a,-t.x,-t.y))),i}}class g{constructor(t,e,s,i,n,h){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.end<t.length&&(this.glyphWidthEnd=t[this.end].rect.width),this.width=i,this.yMin=n,this.yMax=h}}const m=t=>10===t,x=t=>32===t;function P(t,e,s){let i=0;for(let n=e;n<s;n++)x(t[n].code)&&!m(t[n+1].code)&&i++;return i}function y(t,e){const s=e.scale,i=new Array,n=t.sdfPadding,{faceInfo:h,glyphs:r,isRightToLeft:o}=t,l="justify"===e.horizontalAlignment||"Justify"===e.horizontalAlignment,c=function(t,e,s){const i=new Array,n=1/s.scale,h=s.maxLineWidth*n,r=e?t.length-1:0,o=e?-1:t.length,a=e?-1:1;let l=r,c=0,u=0,_=l,p=_,f=0,d=1/0,P=0;for(;l!==o;){const{code:e,rect:s,shaping:n}=t[l],o=Math.abs(s.top);if(m(e)||x(e)||(d=Math.min(d,o),P=Math.max(P,o+s.height)),m(e))l!==r&&(i.push(new g(t,_,l-a,c,d===1/0?0:d,P)),d=1/0,P=0),c=0,_=l+a,p=l+a,u=0;else if(x(e))p=l+a,u=0,f=n.xAdvance,c+=n.xAdvance;else if(c>h){if(p!==_){const e=p-2*a;c-=f,i.push(new g(t,_,e,c-u,d,P)),d=1/0,P=0,_=p,c=u}else i.push(new g(t,_,l-a,c,d,P)),d=1/0,P=0,_=l,p=l,c=0;c+=n.xAdvance,u+=n.xAdvance}else c+=n.xAdvance,u+=n.xAdvance;l+=a}const y=new g(t,_,l-a,c,d,P);return y.start>=0&&y.end<t.length&&i.push(y),i}(r,o,e),u=c.length?function(t,e){let s=0;for(let e=0;e<t.length;e++){const{width:i}=t[e];s=Math.max(i,s)}const i="underline"===e.decoration?4:0,n=t[0].yMin;return{x:0,y:n,height:t[t.length-1].yMax+e.lineHeight*(t.length-1)+i-n,width:s}}(c,e):{y:0,height:0,width:0},p=l?o?1:-1:(0,a.xy)(e.horizontalAlignment),f=(0,a.UD)(e.verticalAlignment),y=2===f?1:0,M=y?0:f-1,b=h?.baseline??22,w=c.length>1,C=y?w?-u.y-u.height:-b:-u.y+M*(u.height/2);for(let h=0;h<c.length;h++){const{start:o,end:a,width:f}=c[h],d=l&&h<c.length-1?P(r,o,a):0,g=d>0?(u.width-f)/d:0;let y=-1*(p+1)*((g>0?u.width:f)/2)-n;const M=(t.isRightToLeft?c.length-1-h:h)*e.lineHeight+C-n;c[h].startX=y,c[h].startY=M;for(let t=o;t<=a;t++){const e=r[t];if(m(e.code))continue;const n=_.fromGlyph(y,M,e,s);y+=e.shaping.xAdvance,g>0&&x(e.code)&&(y+=g),i.push(n)}}return new d(i,c,e,h)}function M(t,e){return"glyphs"===t.type?y(t,e):function(t,e){const s=w(t,e),i=function(t,e){const s=[],i=e.maxLineWidth;let n=0,h=0,r=0,o=0,a=0,l=0;for(;n<t.length;){const e=t[n],{glyph:c}=e;if(m(c.code))0!==n&&s.push({width:h,start:o,end:n-1,glyphWidthEnd:t[n-1]?.glyph.rect.width*t[n-1]?.scale||0,yMin:0,yMax:0,lineHeight:0,baseline:0,midline:0,startX:0,startY:0,scale:1}),h=0,o=n+1,a=o,r=0,l=0;else if(x(c.code))a=n+1,r=0,l=e.xAdvance,h+=e.xAdvance;else if(h>i){if(a!==o){const e=a-2;h-=l,s.push({width:h-r,start:o,end:e,glyphWidthEnd:t[e]?.glyph.rect.width*t[e]?.scale||0,yMin:0,yMax:0,lineHeight:0,baseline:0,midline:0,startX:0,startY:0,scale:1}),o=a,h=r}else s.push({width:h,start:o,end:n-1,glyphWidthEnd:t[n-1]?.glyph.rect.width*t[n-1]?.scale||0,yMin:0,yMax:0,lineHeight:0,baseline:0,midline:0,startX:0,startY:0,scale:1}),o=n,a=n,h=0;h+=e.xAdvance,r+=e.xAdvance}else h+=e.xAdvance,r+=e.xAdvance;n++}if(o<t.length){const e=t.length-1;s.push({width:h,start:o,end:e,glyphWidthEnd:t[e]?.glyph.rect.width*t[e]?.scale||0,yMin:0,yMax:0,lineHeight:0,baseline:0,midline:0,startX:0,startY:0,scale:1})}return function(t,e){for(let s=0;s<e.length;s++){const i=e[s];let n=0,h=1/0,r=0;for(let e=i.start;e<=i.end;e++){const s=t[e];m(s.glyph.code)||x(s.glyph.code)||(n=Math.max(n,s.baseline),r=Math.max(r,s.lineHeight))}let o=1/0,a=-1/0;for(let e=i.start;e<=i.end;e++){const s=t[e];m(s.glyph.code)||x(s.glyph.code)||(o=Math.min(o,n-s.baseline+s.top),a=Math.max(a,n-s.baseline+s.bottom),h=Math.min(h,n-s.baseline+s.midline))}i.baseline=n,i.midline=h===1/0?n:h,i.lineHeight=r||Math.max(0,a-o),i.yMin=o===1/0?0:o,i.yMax=a===-1/0?0:a,i.startY=s>0?e[s-1].startY+e[s-1].lineHeight:0}return e}(t,s)}(s,e),n=i.length?function(t){let e=0;for(const s of t)e=Math.max(s.width+s.glyphWidthEnd,e);const s=t[0].yMin,i=t[t.length-1];return{x:0,y:s,height:i.startY+i.yMax-s,width:e}}(i):{width:0},h=new Array,r="justify"===e.horizontalAlignment||"Justify"===e.horizontalAlignment,o=r?-1:(0,a.xy)(e.horizontalAlignment),l=(0,a.UD)(e.verticalAlignment),c=2===l,u=i.length?i[0].yMin:0,p=i.length?i[i.length-1].startY+i[i.length-1].yMax:0,f=p-u,g=c?i.length>1?-p:-(i[0]?.baseline??0):1===l?-u:-1===l?-p:-(u+f/2);for(let t=0;t<i.length;t++){const e=i[t],a=r&&t<i.length-1?C(s,e.start,e.end):0,l=a>0?(n.width-e.width)/a:0;let c=-1*(o+1)*((l>0?n.width:e.width)/2);const u=e.startY+g;e.startX=c,e.startY=u;for(let t=e.start;t<=e.end;t++){const i=s[t],{glyph:n,scale:r,fontSize:o}=i;if(m(n.code))continue;const a=u+e.baseline-i.baseline;h.push(_.fromGlyph(c/r,a/r,n,r,{fontSize:o,color:i.color})),c+=i.xAdvance,l>0&&x(n.code)&&(c+=l)}}return new d(h,i,e)}(t,e)}function b(t,e){return"glyphs"===t.type?function(t,e){const s=e.scale,{faceInfo:i,glyphs:n}=t,h=n.reduce((t,e)=>Math.max(t,e.rect.height),0),r=n.map(t=>_.fromGlyph(-t.rect.width/2,-h,t,s));return new d(r,[],e,i)}(t,e):function(t,e){const s=w(t,e),i=s.reduce((t,e)=>Math.max(t,e.glyph.rect.height*e.scale),0),n=s.filter(t=>!m(t.glyph.code)).map(t=>_.fromGlyph(-t.glyph.rect.width/2,-i/t.scale,t.glyph,t.scale,{fontSize:t.fontSize,color:t.color}));return new d(n,[],e)}(t,e)}function w(t,e){const s=e.lineHeightRatio??1,n=[];for(const e of t.runs){const t=(0,i.Lz)(e.fontSize),h=t/e.glyphs.sdfSize,r=t*(29/24)*s,o=(e.glyphs.faceInfo?.baseline??22)*h,a=(e.glyphs.faceInfo?.midline??16)*h,l=1+(e.characterSpacing??0);for(const s of e.glyphs.glyphs){const i=s.shaping.xAdvance*h,c=Math.abs(s.rect.top)*h,u=c+s.rect.height*h;n.push({glyph:s,scale:h,fontSize:t,color:e.color,xAdvance:m(s.code)||x(s.code)?i:i*l,top:c,bottom:u,lineHeight:r,baseline:o,midline:a})}}return n}function C(t,e,s){let i=0;for(let n=e;n<s;n++)x(t[n].glyph.code)&&!m(t[n+1].glyph.code)&&i++;return i}},69221(t,e,s){s.d(e,{Lu:()=>h,hV:()=>n});var i=s(90629);function n(t){return(0,i.PN)(Math.round((0,i.Lz)(t)))}function h(t){const e=(0,i.PN)(32),s=(0,i.PN)(512);return Math.max(e,Math.min(t||s,s))}s(39829)},86235(t,e,s){s.d(e,{HZ:()=>h});var i=s(36745),n=s(14057);class h{static{this.instance=null}static local(){return null===h.instance&&(h.instance=new h),h.instance}execute(t,e,s){return new r(t,e,s)}}class r{constructor(t,e,s){this._cursor=t,this._effect=e,this._context=s}next(){const t=this._cursor.next();if(t&&t.totalSize>0){const e=t.asJSON(),s=a[this._effect.part](e,{...this._effect,target:this._context.target,scaleFactor:this._context.scaleFactor,matcher:this._context.matcher,tileKey:this._context.tileKey,geomUnitsPerPoint:this._context.geomUnitsPerPoint});return s?i.z.fromJSONCIM(s):null}return null}}function o(t,e){const s=e.matcher,i=e.target.getObjectId(),h=(0,n.$)(e.tileKey,i),r=s.getAnalyzedGraphic(h);return r?(r.evaluateWithGeometry(t,e.geomUnitsPerPoint*e.scaleFactor),r):null}const a={textPoint:function(t,e){const s=o(t,e);return s&&s.textPoint?{x:s.textPoint[0],y:s.textPoint[1],spatialReference:t.spatialReference}:t},beginDimensionLine:function(t,e){const s=o(t,e);if(!s||!s.dimensionLine)return t;const i=s.dimensionLine[0],n=i[1][0],h=i[1][1],r=i[0][0],a=i[0][1];return{spatialReference:t.spatialReference,paths:[[[n,h],[r,a]]]}},endDimensionLine:function(t,e){const s=o(t,e);if(!s||!s.dimensionLine)return t;const i=s.dimensionLine[1],n=i[1][0],h=i[1][1],r=i[0][0],a=i[0][1];return{spatialReference:t.spatialReference,paths:[[[n,h],[r,a]]]}},beginExtensionLine:function(t,e){const s=o(t,e);if(!s||!s.extensionLines)return t;const i=s.extensionLines[0],n=i[0][0],h=i[0][1],r=i[1][0],a=i[1][1];return{spatialReference:t.spatialReference,paths:[[[n,h],[r,a]]]}},endExtensionLine:function(t,e){const s=o(t,e);if(!s||!s.extensionLines)return t;const i=s.extensionLines[1],n=i[0][0],h=i[0][1],r=i[1][0],a=i[1][1];return{spatialReference:t.spatialReference,paths:[[[n,h],[r,a]]]}}};s.d(e,["Bd",0,"beginMarker","Cr",0,"beginExtensionLine","FF",0,"endMarker","Fn",0,"beginDimensionLine","NR",0,"textPoint","tz",0,"endDimensionLine","w0",0,"endExtensionLine"])},14057(t,e,s){function i(t,e){return`${t}_${e}`}s.d(e,{$:()=>i})}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1029,6344],{66344(e,t,n){n.d(t,{q:()=>a});const i=!!(0,n(44208).A)("esri-tests-disable-gpu-memory-measurements");Symbol.iterator;class s{get size(){return this._size}constructor(e=10485760,t=.3){this._maxSize=e,this._maxClientSizeRatio=t,this._db=new Map,this._size=0,this._hit=0,this._miss=0,this._clients=new Map,this._sizeLimits=new Map}destroy(){this.clearAll(),this._sizeLimits.clear(),this._clients.clear(),this._db.clear()}register(e){this._clients.set(e.id.slice(0,-1),e)}deregister(e){this.clear(e),this._sizeLimits.delete(e),this._clients.delete(e.id.slice(0,-1))}get maxSize(){return this._maxSize}set maxSize(e){this._maxSize=Math.max(e,-1),this._checkSize()}get _maxClientSize(){return this._maxSize*this._maxClientSizeRatio}getSize(e,t){const n=this._db.get(e.id+t);return n?.size??0}put(e,t,n,s,o){t=e.id+t;const a=this._db.get(t);if(a&&(this._size-=a.size,e.size-=a.size,this._db.delete(t),a.entry!==n&&this._notifyRemove(t,a.entry,a.size,0)),s>this._maxSize)return void this._notifyRemove(t,n,s,0);if(void 0===n)return void console.warn("Refusing to cache undefined entry ");if(!s||s<0)return i||console.warn(`Refusing to cache entry with size ${s} for key ${t}`),void this._notifyRemove(t,n,0,0);const l=1+Math.max(o,-4)- -3;this._db.set(t,new r(n,s,l)),this._size+=s,e.size+=s,this._checkSize()}updateSize(e,t){t=e.id+t;const n=this._db.get(t);if(!n)return;this._size-=n.size,e.size-=n.size;let i=n.entry.usedMemory;for(;i>this._maxSize;){const e=this._notifyRemove(t,n.entry,i,1);if(!(null!=e&&e>0))return void this._db.delete(t);i=e}n.size=i,this._size+=i,e.size+=i,this._checkSize()}pop(e,t){t=e.id+t;const n=this._db.get(t);if(n)return this._size-=n.size,e.size-=n.size,this._db.delete(t),++this._hit,n.entry;++this._miss}get(e,t){t=e.id+t;const n=this._db.get(t);if(void 0!==n)return this._db.delete(t),n.lives=n.lifetime,this._db.set(t,n),++this._hit,n.entry;++this._miss}peek(e,t){const n=this._db.get(e.id+t);return n?++this._hit:++this._miss,n?.entry}get performanceInfo(){const e={Size:Math.round(this._size/1048576)+"/"+Math.round(this._maxSize/1048576)+"MB","Hit rate":Math.round(100*this._getHitRate())+"%",Entries:this._db.size.toString()},t={},n=new Array;this._db.forEach((e,i)=>{const s=e.lifetime;n[s]=(n[s]||0)+e.size,this._clients.forEach(n=>{const{id:s,name:r}=n;if(i.startsWith(s)){const n=t[r]||0;t[r]=n+e.size}})});const i={};this._clients.forEach(e=>{const n=e.name;if("hitRate"in e&&"number"==typeof e.hitRate&&!isNaN(e.hitRate)&&e.hitRate>0){const s=t[n]||0;t[n]=s,i[n]=Math.round(100*e.hitRate)+"%"}else i[n]="0%"});const s=Object.keys(t);s.sort((e,n)=>t[n]-t[e]),s.forEach(n=>e[n]=Math.round(t[n]/2**20)+"MB / "+i[n]);for(let t=n.length-1;t>=0;--t){const i=n[t];i&&(e["Priority "+(t+-3-1)]=Math.round(i/this._size*100)+"%")}return e}resetStats(){this._hit=this._miss=0,this._clients.forEach(e=>e.resetHitRate())}clear(e){const t=e.id;this._db.forEach((e,n)=>{n.startsWith(t)&&(this._size-=e.size,this._db.delete(n),this._notifyRemove(n,e.entry,e.size,0))}),e.size=0}clearAll(){this._db.forEach((e,t)=>this._notifyRemove(t,e.entry,e.size,0)),this._clients.forEach(e=>e.size=0),this._size=0,this._db.clear()}*values(e){for(const[t,n]of this._db)t.startsWith(e.id)&&(yield n.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(e,t,n,i){const s=this._clients.get(e.split(o)[0])?.removeFunc,r=s?.(t,i,n);return"number"==typeof r?r:null}_checkSize(){this._sizeLimits.forEach((e,t)=>this._checkSizeLimits(e,t)),this._clients.forEach(e=>this._checkSizeLimits(this._maxClientSize,e)),this._checkSizeLimits(this.maxSize)}setMaxClientSize(e,t){null==t||t<=0?this._sizeLimits.delete(e):this._sizeLimits.set(e,t)}_checkSizeLimits(e,t){const n=t??this;if(n.size<=e)return;const i=t?.id;let s=!0;for(;s;){s=!1;for(const[r,a]of this._db)if(0===a.lifetime&&(!i||r.startsWith(i))){const i=t??this._clients.get(r.split(o)[0]);if(this._purgeItem(r,a,i),n.size<=.9*e)return;s||=this._db.has(r)}}for(const[s,r]of this._db)if(!i||s.startsWith(i)){const i=t??this._clients.get(s.split(o)[0]);if(this._purgeItem(s,r,i),n.size<=.9*e)return}}_purgeItem(e,t,n){if(this._db.delete(e),t.lives<=1){this._size-=t.size,n&&(n.size-=t.size);const i=this._notifyRemove(e,t.entry,t.size,1);null!=i&&i>0&&(this._size+=i,n&&(n.size+=i),t.lives=t.lifetime,t.size=i,this._db.set(e,t))}else--t.lives,this._db.set(e,t)}}new s(0);class r{constructor(e,t,n){this.entry=e,this.size=t,this.lifetime=n,this.lives=n}}const o=":";class a{constructor(e,t){this.removeFunc=t,this.id="",this.name="",this.size=0,this._storage=new s(e,1),this._storage.register(this)}destroy(){this._storage.deregister(this),this._storage.destroy()}put(e,t,n=1){this._storage.put(this,e,t,n,1)}pop(e){return this._storage.pop(this,e)}get(e){return this._storage.get(this,e)}clear(){this._storage.clearAll()}get maxSize(){return this._storage.maxSize}set maxSize(e){this._storage.maxSize=e}resetHitRate(){}}},159(e,t,n){n.d(t,{A:()=>u});var i,s=n(5482),r=n(69540),o=n(25482),a=n(91429),l=n(99157);let u=i=class extends((0,r.OU)(o.o)){constructor(e){super(e),this.steps=[]}getInverse(){const e=new i;for(let t=this.steps.length-1;t>=0;t--){const n=this.steps[t];e.steps.push(n.getInverse())}return e}};(0,s.Cg)([(0,a.MZ)({type:[l.A],nonNullable:!0,json:{name:"geoTransforms"}})],u.prototype,"steps",void 0),u=i=(0,s.Cg)([(0,a.$K)("esri.geometry.operators.support.GeographicTransformation")],u)},99157(e,t,n){n.d(t,{A:()=>l});var i,s=n(5482),r=n(69540),o=n(25482),a=n(91429);let l=i=class extends((0,r.OU)(o.o)){constructor(e){super(e),this.isInverse=!1,this.wkt=null,this.wkid=null}getInverse(){return new i({isInverse:!this.isInverse,wkid:this.wkid,wkt:this.wkt})}};(0,s.Cg)([(0,a.MZ)({json:{name:"transformForward",read:e=>!e,write:(e,t,n)=>{t[n]=!e}}})],l.prototype,"isInverse",void 0),(0,s.Cg)([(0,a.MZ)({json:{write:!0}})],l.prototype,"wkt",void 0),(0,s.Cg)([(0,a.MZ)({json:{write:!0}})],l.prototype,"wkid",void 0),l=i=(0,s.Cg)([(0,a.$K)("esri.geometry.operators.support.GeographicTransformationStep")],l)},9762(e,t,n){n.r(t),n.d(t,{projectBuffer:()=>s});var i=n(49208);function s(e,t,n,s,r,o,a=Math.floor(e.length/3)){const l=(0,i.jd)(t,r);if(null==l)return!1;if(l===i.pO){if(e===s&&n===o)return!0;const t=n+3*a;for(let i=n,r=o;i<t;i++,r++)s[r]=e[i]??0;return!0}const u=n+3*a;for(let t=n,i=o;t<u;t+=3,i+=3)l(e,t,s,i);return!0}},49208(e,t,n){n.d(t,{Tp:()=>p,jd:()=>c,pO:()=>h});var i=n(34727),s=n(86211),r=n(73941),o=n(79258),a=n(34403),l=n(21325);const u={2:{5:h,7:null,9:null,10:h,1:x,6:null,8:null,0:null,3:m,11:g,2:h,4:A},5:{5:h,7:null,9:null,10:h,1:x,6:null,8:null,0:null,3:m,11:g,2:h,4:A},7:{5:null,7:h,9:null,10:h,1:null,6:b,8:null,0:null,3:null,11:null,2:null,4:null},9:{5:null,7:null,9:h,10:h,1:null,6:null,8:w,0:null,3:null,11:null,2:null,4:null},3:{5:f,7:null,9:null,10:f,1:function(e,t,n,i){const s=e[t]/L,r=D-2*Math.atan(Math.exp(-e[t+1]/L)),o=L+(e[t+2]??0),a=Math.cos(r)*o;n[i]=Math.cos(s)*a,n[i+1]=Math.sin(s)*a,n[i+2]=Math.sin(r)*o},6:null,8:null,0:null,3:h,11:function(e,t,n,i){f(e,t,n,i),g(n,i,n,i)},2:f,4:function(e,t,n,i){f(e,t,n,i),A(n,i,n,i)}},4:{5:R,7:null,9:null,10:R,1:function(e,t,n,i){R(e,t,n,i),x(n,i,n,i)},6:null,8:null,0:null,3:function(e,t,n,i){R(e,t,n,i),m(n,i,n,i)},11:function(e,t,n,i){R(e,t,n,i),g(n,i,n,i)},2:R,4:h},1:{5:M,7:null,9:null,10:M,1:h,6:null,8:null,0:null,3:function(e,t,n,i){M(e,t,n,i),m(n,i,n,i)},11:function(e,t,n,i){M(e,t,n,i),g(n,i,n,i)},2:M,4:function(e,t,n,i){M(e,t,n,i),A(n,i,n,i)}},6:{5:null,7:S,9:null,10:S,1:null,6:h,8:null,0:null,3:null,11:null,2:null,4:null},8:{5:null,7:null,9:I,10:I,1:null,6:null,8:h,0:null,3:null,11:null,2:null,4:null},0:{5:null,7:null,9:null,10:null,1:null,6:null,8:null,0:h,3:null,11:null,2:null,4:null},10:{5:h,7:h,9:h,10:h,1:x,6:b,8:w,0:null,3:m,11:g,2:h,4:A},11:{5:v,7:null,9:null,10:v,1:function(e,t,n,i){v(e,t,n,i),x(n,i,n,i)},6:null,8:null,0:null,3:function(e,t,n,i){v(e,t,n,i),m(n,i,n,i)},11:h,2:v,4:function(e,t,n,i){v(e,t,n,i),A(n,i,n,i)}}};function c(e,t){return p(e,t)?.projector}function p(e,t){if(null==e||null==t)return null;if(_.source.spatialReference===e&&_.dest.spatialReference===t)return _;const n=d(e,_.source),i=d(t,_.dest);return 0===n&&0===i?(0,l.aI)(e,t)?_.projector=h:_.projector=null:_.projector=u[n][i],_}function d(e,t){return e?t.spatialReference===e?t.spatialReferenceId:(t.spatialReference=e,"metersPerUnit"in t&&(t.metersPerUnit=(0,s.GA)(e,1)),(0,r.jA)(e)?t.spatialReferenceId=1:(0,l.oT)(e)?t.spatialReferenceId=2:(0,l.K8)(e)?t.spatialReferenceId=3:(0,l.r1)(e)?t.spatialReferenceId=11:e.wkt===r.Ro.wkt?t.spatialReferenceId=4:4490===e.wkid?t.spatialReferenceId=5:e.wkt===r.FY.wkt?t.spatialReferenceId=6:e.wkt===r.LJ.wkt?t.spatialReferenceId=8:(0,r.q8)(e)?t.spatialReferenceId=7:(0,r.KQ)(e)?t.spatialReferenceId=9:t.spatialReferenceId=0):0}function h(e,t,n,i){e!==n&&(n[i++]=e[t++],n[i++]=e[t++],n[i]=e[t]??0)}function f(e,t,n,i){n[i]=T*(e[t]/L),n[i+1]=T*(D-2*Math.atan(Math.exp(-e[t+1]/L))),n[i+2]=e[t+2]??0}function m(e,t,n,s){!function(e,t,n,s,r){const o=.4999999*Math.PI,a=(0,i.qE)(z*e[t+1],-o,o),l=Math.sin(a);n[s++]=z*e[t]*r.radius,n[s++]=r.halfSemiMajorAxis*Math.log((1+l)/(1-l)),n[s]=e[t+2]??0}(e,t,n,s,o.$O)}function g(e,t,n,i){n[i]=e[t]*P,n[i+1]=e[t+1]*P,n[i+2]=e[t+2]??0}function v(e,t,n,i){n[i]=e[t]*O,n[i+1]=e[t+1]*O,n[i+2]=e[t+2]??0}function y(e,t,n,i,s){const r=s+(e[t+2]??0),o=z*e[t],a=z*e[t+1],l=Math.cos(a)*r;n[i]=Math.cos(o)*l,n[i+1]=Math.sin(o)*l,n[i+2]=Math.sin(a)*r}function w(e,t,n,i){y(e,t,n,i,o.Sw.radius)}function b(e,t,n,i){y(e,t,n,i,o.sH.radius)}function x(e,t,n,i){y(e,t,n,i,o.$O.radius)}function C(e,t,n,s,r){const o=e[t],a=e[t+1],l=e[t+2]??0,u=Math.sqrt(o*o+a*a+l*l),c=(0,i.YN)(l/(0===u?1:u)),p=Math.atan2(a,o);n[s++]=T*p,n[s++]=T*c,n[s]=u-r}function I(e,t,n,i){C(e,t,n,i,o.Sw.radius)}function S(e,t,n,i){C(e,t,n,i,o.sH.radius)}function M(e,t,n,i){C(e,t,n,i,o.$O.radius)}function A(e,t,n,i){!function(e,t,n,i,s){const r=z*e[t],o=z*e[t+1],a=e[t+2]??0,l=Math.sin(o),u=Math.cos(o),c=s.radius/Math.sqrt(1-s.eccentricitySquared*l*l);n[i++]=(c+a)*u*Math.cos(r),n[i++]=(c+a)*u*Math.sin(r),n[i++]=(c*(1-s.eccentricitySquared)+a)*l}(e,t,n,i,o.$O)}function R(e,t,n,i){const s=a.TP,r=e[t],l=e[t+1],u=e[t+2]??0;let c,p,d,h,f,m,g,v,y,w,b,x,C,I,S,M,A,R,_,z,D;c=Math.abs(u),p=r*r+l*l,d=Math.sqrt(p),h=p+u*u,f=Math.sqrt(h),z=Math.atan2(l,r),m=u*u/h,g=p/h,I=s.a2/f,S=s.a3-s.a4/f,g>.3?(v=c/f*(1+g*(s.a1+I+m*S)/f),_=Math.asin(v),w=v*v,y=Math.sqrt(1-w)):(y=d/f*(1-m*(s.a5-I-g*S)/f),_=Math.acos(y),w=1-y*y,v=Math.sqrt(w)),b=1-o.$O.eccentricitySquared*w,x=o.$O.radius/Math.sqrt(b),C=s.a6*x,I=d-x*y,S=c-C*v,A=y*I+v*S,M=y*S-v*I,R=M/(C/b+A),_+=R,D=A+M*R/2,u<0&&(_=-_),n[i++]=T*z,n[i++]=T*_,n[i]=D}const _={source:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},dest:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},projector:h},z=(0,i.kU)(1),T=(0,i.KJ)(1),D=.5*Math.PI,L=o.$O.radius,P=L*Math.PI/180,O=180/(L*Math.PI);n.d(t,["w5",0,u])},91218(e,t,n){n.r(t),n.d(t,{canProjectWithoutEngine:()=>B,initializeProjection:()=>U,isEqualBaseGCS:()=>q,isLoaded:()=>L,isLoadedOrLoad:()=>P,isLoadedOrLoadFor:()=>O,load:()=>E,project:()=>V,projectAsync:()=>W,projectExtent:()=>se,projectMany:()=>k,projectMultipoint:()=>Y,projectOrLoad:()=>j,projectOrLoadMany:()=>G,projectPoint:()=>K,projectPolygon:()=>ne,projectPolyline:()=>ee,projectWithoutEngine:()=>H,requiresLoad:()=>N,test:()=>X,tryProject:()=>$,unload:()=>F});var i=n(49186),s=n(17676),r=n(62788),o=n(95488),a=n(51850),l=n(21276),u=n(73941),c=n(5443),p=n(91075),d=n(48526),h=n(86738),f=n(39829),m=n(82799),g=n(16930),v=n(98764),y=n(159),w=n(9762),b=n(49208);function x(e,t,n,i,s,r){return C[0]=e,C[1]=t,C[2]=n,(0,w.projectBuffer)(C,i,0,s,r,0)}const C=(0,a.vt)();var I=n(60408),S=n(21325),M=n(52006);let A=null,R=null,_=null,z=null,T={};const D=new o.I;function L(){return!!(R?.isLoaded()&&_?.isLoaded()&&z?.isLoaded())}function P(){return!!L()||((0,r.gc)(D),E(),!1)}function O(e,t){return!e||!t||B(e,t)||P()}function N(e,t){return!B(e,t)&&!L()}async function E(e){null==A&&(A=Promise.all([n.e(3276).then(n.bind(n,83276)).then(e=>(R=e,R.load())),n.e(8377).then(n.bind(n,8377)).then(e=>(_=e,_.load())),n.e(2158).then(n.bind(n,12158)).then(e=>(z=e,z.load()))])),await A,(0,s.Te)(e),D.notify()}function V(e,t,n){return Array.isArray(e)?0===e.length?[]:((0,l.H)(e),k(e,e[0].spatialReference,t,n)):((0,l.f)(e),k([e],e.spatialReference,t,n)[0])}function k(e,t,n,i){if(null==t||null==n)return e;if(B(t,n,i))return e.map(e=>H(e,t,n));if(null==i?.geographicTransformation&&(0,u.jA)(t))return k(e.map(e=>H(e,t,g.A.WGS84)),g.A.WGS84,n,{zConversionDisabled:i?.zConversionDisabled});if(null==i?.geographicTransformation&&(0,u.jA)(n))return k(e,t,g.A.WGS84).map(e=>H(e,g.A.WGS84,n));if(!L())throw new Z;if(!i?.geographicTransformation)if(i?.extendedParams)i={...i,geographicTransformation:z.getTransformation(t,n,i.areaOfInterestExtent)||new y.A};else if(!i?.areaOfInterestExtent){const e=function(e,t){return[e.wkid?.toString()??"-1",e.wkt?.toString()??"",e.wkt2?.toString()??"",t.wkid?.toString()??"-1",t.wkt?.toString()??"",t.wkt2?.toString()??""].join()}(t,n);let s=T[e];s||(s=z.getTransformation(t,n)||new y.A,T[e]=s),i={geographicTransformation:s,zConversionDisabled:i?.zConversionDisabled}}return e[0].spatialReference||(e[0].spatialReference=t),e[0]instanceof p.A?R.executeMany(e,n,i):_.executeMany(e,n,i)}function $(e,t,n){try{return V(e,t,n)}catch(e){return null}}function j(e,t){const n=G([e],t);return null!=n.pending?{pending:n.pending,geometry:null}:null!=n.geometries?{pending:null,geometry:n.geometries[0]}:{pending:null,geometry:null}}function G(e,t,n){if(!L())for(const n of e)if(null!=n&&!(0,S.aI)(n.spatialReference,t)&&(0,S.fn)(n.spatialReference)&&(0,S.fn)(t)&&!B(n.spatialReference,t))return(0,r.gc)(D),{pending:E(),geometries:null};return{pending:null,geometries:e.map(e=>null==e?null:(0,S.aI)(e.spatialReference,t)?e:(0,S.fn)(e.spatialReference)&&(0,S.fn)(t)?V(e,t,n):null)}}class Z extends i.A{constructor(){super("projection:not-loaded","projection engine not fully loaded yet, please call load()")}}function F(){A=null,R=null,_=null,z=null,T={}}const X={get loadPromise(){return A}};async function W(e,t,n){if((0,s.Te)(n),!e)return e;const i=G(Array.isArray(e)?e:[e],t,n);if(i.pending)return await i.pending,(0,s.Te)(n),W(e,t,n);const r=i.geometries??[];return Array.isArray(e)?r:r[0]}function B(e,t,n){return!(n?.areaOfInterestExtent||n?.extendedParams||n?.geographicTransformation)&&(!!(0,S.aI)(e,t)||(0,S.fn)(e)&&(0,S.fn)(t)&&!!(0,b.jd)(e,t))}function q(e,t){if((0,S.aI)(e,t))return!0;if(!(0,S.fn)(e)||!(0,S.fn)(t))return!1;const n=(0,S.oT)(e)||(0,S.K8)(e)||(0,S.x1)(e),i=(0,S.oT)(t)||(0,S.K8)(t)||(0,S.x1)(t);return n&&i}async function U(e,t,n,i){if(L())return(0,s.NO)(i);if(Array.isArray(e)){for(const{source:t,dest:n,options:s}of e)if(t&&n&&!B(t,n,s))return E(i)}else if(e&&t&&!B(e,t,n))return E(i);return(0,s.NO)(i)}function H(e,t,n){return e?(0,I.fT)(e)?J(e,t,new h.A,n,0):(0,I.ZC)(e)?re(e,t,new c.A,n,0):(0,I.Bi)(e)?ie(e,t,new f.A,n,0):(0,I.Rg)(e)?te(e,t,new m.A,n,0):(0,I.U9)(e)?Q(e,t,new d.A,n,0):null:null}function K(e,t,n=t.spatialReference,i=0){return null!=n&&null!=e.spatialReference&&null!=J(e,e.spatialReference,t,n,i)}function J(e,t,n,i,s){ue[0]=e.x,ue[1]=e.y;const r=e.z;return ue[2]=void 0!==r?r:s,(0,w.projectBuffer)(ue,t,0,ue,i,0)?(n.x=ue[0],n.y=ue[1],n.spatialReference=i,void 0!==r||(0,u.xP)(i)?(n.z=ue[2],n.hasZ=!0):(n.z=void 0,n.hasZ=!1),void 0===e.m?(n.m=void 0,n.hasM=!1):(n.m=e.m,n.hasM=!0),n):null}function Y(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=Q(e,e.spatialReference,t,n,i)}function Q(e,t,n,i,s){const{points:r,hasZ:o,hasM:a}=e,l=[],u=r.length,c=[];for(const e of r)c.push(e[0],e[1],o?e[2]:s);if(!(0,w.projectBuffer)(c,t,0,c,i,0,u))return null;const p=le(o,i);for(let e=0;e<u;++e){const t=3*e,n=c[t],i=c[t+1];p&&a?l.push([n,i,c[t+2],r[e][3]]):p?l.push([n,i,c[t+2]]):a?l.push([n,i,r[e][2]]):l.push([n,i])}return n.points=l,n.spatialReference=i,n.hasZ=o,n.hasM=a,n}function ee(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=te(e,e.spatialReference,t,n,i)}function te(e,t,n,i,s){const{curvePaths:r,paths:o,hasZ:a,hasM:l}=e;if(!(r?ae(r,a??!1,l??!1,t,n.curvePaths=[],i,s):oe(o,a??!1,l??!1,t,n.paths,i,s)))return null;const u=le(a,i);return n.spatialReference=i,n.hasZ=u,n.hasM=l,n}function ne(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=ie(e,e.spatialReference,t,n,i)}function ie(e,t,n,i,s){const{curveRings:r,rings:o,hasZ:a,hasM:l}=e;return(r?ae(r,a??!1,l??!1,t,n.curveRings=[],i,s):oe(o,a??!1,l??!1,t,n.rings,i,s))?(n.spatialReference=i,n.hasZ=le(a,i),n.hasM=l,n):null}function se(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=re(e,e.spatialReference,t,n,i)}function re(e,t,n,i,s){const{xmin:r,ymin:o,xmax:a,ymax:l,hasZ:u,hasM:c}=e;if(!x(r,o,u?e.zmin:s,t,ue,i))return null;const p=le(u,i);return n.xmin=ue[0],n.ymin=ue[1],p&&(n.zmin=ue[2]),x(a,l,u?e.zmax:s,t,ue,i)?(n.xmax=ue[0],n.ymax=ue[1],p&&(n.zmax=ue[2]),c&&(n.mmin=e.mmin,n.mmax=e.mmax),n.spatialReference=i,n):null}function oe(e,t,n,i,s,r,o=0){const a=new Array;for(const n of e)for(const e of n)a.push(e[0],e[1],t?e[2]:o);if(!(0,w.projectBuffer)(a,i,0,a,r,0))return!1;let l=0;s.length=0;const u=t?3:2,c=le(t,r);for(const t of e){const e=new Array;for(const i of t){const t=a.slice(l,l+=3);c||t.pop(),n&&t.push(i[u]),e.push(t)}s.push(e)}return!0}function ae(e,t,n,i,s,r,o=0){const a=new Array;for(const n of e)for(const e of n){if((0,M.FG)(e))return!1;if((0,M.aO)(e)){const[n,i]=e.c;a.push(n[0],n[1],t?n[2]:o,i[0],i[1],o);continue}if((0,M.n1)(e)){const[n,i,s]=e.b;a.push(n[0],n[1],t?n[2]:o,i[0],i[1],o,s[0],s[1],o);continue}const n=e;a.push(n[0],n[1],t?n[2]:o)}if(!(0,w.projectBuffer)(a,i,0,a,r,0))return!1;let l=0;s.length=0;const u=t?3:2,c=le(t,r);for(const t of e){const e=new Array;for(const i of t){const t=a.slice(l,l+=3);if(c||t.pop(),n&&t.push((0,M.yP)(i)[u]),(0,M.FG)(i))return!1;if((0,M.aO)(i)){const n=a[l++],i=a[l++];++l,e.push({c:[t,[n,i]]});continue}if((0,M.n1)(i)){const n=a[l++],i=a[l++];++l;const s=a[l++],r=a[l++];++l,e.push({b:[t,[n,i],[s,r]]});continue}e.push(t)}s.push(e)}return!0}function le(e,t){return e||(0,u.xP)(t)||(0,S.aI)(t,v.Y0)}const ue=(0,a.vt)()},98764(e,t,n){n.d(t,{lO:()=>c});var i=n(73941),s=n(16930),r=n(21325);const o=new s.A(i.fv),a=new s.A(i.FY),l=new s.A(i.LJ),u=new s.A(i.Ro);function c(e){const t=p.get(e);if(t)return t;let n=o;if(e)if(e===a)n=a;else if(e===l)n=l;else{const t=e.wkid,i=e.latestWkid;if(null!=t||null!=i)(0,r.tl)(t)||(0,r.tl)(i)?n=a:((0,r.ZL)(t)||(0,r.ZL)(i))&&(n=l);else{const t=e.wkt2??e.wkt;if(t){const e=t.toUpperCase();e===d?n=a:e===h&&(n=l)}}}return p.set(e,n),n}const p=new Map,d=a.wkt.toUpperCase(),h=l.wkt.toUpperCase();n.d(t,["GD",0,o,"Y0",0,u])},34403(e,t,n){var i=n(79258);Math.PI;const s=i.$O.radius,r=i.$O.eccentricitySquared,o={a1:s*r,a2:s*r*s*r,a3:s*r*r/2,a4:s*r*s*r*2.5,a5:s*r+s*r*r/2,a6:1-r};i.$O.radius,i.$O.flattening,i.Sw.radius,i.Sw.flattening,i.sH.radius,i.sH.flattening,i.sH.radius,n.d(t,["TP",0,o])},60408(e,t,n){function i(e){return void 0!==e.xmin&&void 0!==e.ymin&&void 0!==e.xmax&&void 0!==e.ymax}function s(e){return void 0!==e.points}function r(e){return void 0!==e.x&&void 0!==e.y}function o(e){return void 0!==e.paths||void 0!==e.curvePaths}function a(e){return void 0!==e.rings||void 0!==e.curveRings}function l(e){return"object"==typeof e&&"vertexAttributes"in e}function u(e){return e?r(e)?"esriGeometryPoint":o(e)?"esriGeometryPolyline":a(e)?"esriGeometryPolygon":i(e)?"esriGeometryEnvelope":s(e)?"esriGeometryMultipoint":null:null}function c(e){return null!=e&&("hasZ"in e&&e.hasZ||"z"in e&&null!=e.z)}function p(e){return null!=e&&("hasM"in e&&e.hasM||"m"in e&&null!=e.m)}n.d(t,{$B:()=>u,Bi:()=>a,Pv:()=>c,Rg:()=>o,U9:()=>s,W0:()=>p,ZC:()=>i,fT:()=>r,uW:()=>l})},20521(e,t,n){n.r(t),n.d(t,{default:()=>Me});var i=n(5482),s=n(37838),r=n(69540),o=n(49186),a=n(25728),l=n(17676),u=n(36708),c=n(91429),p=n(60950),d=n(89808),h=n(99959);const f=Symbol("isWCSGraphicOrigin");var m;class g extends h.A{get[(m=f,p.ym)](){return this.layer}get[d.Q](){return this.layer}constructor(e){super(),this[m]=!0,this.type="wcs",this.layer=e}get id(){return this.layer.id}}var v=n(4146),y=n(63074),w=n(69208),b=n(34287),x=n(8303),C=n(72545),I=n(54310),S=n(25036),M=n(82935),A=n(82806),R=n(53966),_=n(5443),z=n(38458),T=n(11254),D=n(330);function L(e){return e.endsWith("?")?e.slice(0,-1):e}function P(e){return e.filter(({coverageSubType:e})=>null==e||""===e||/^rectified(grid|dataset)/i.test(e))}function O(e){const t={};for(let n=0;n<e.childNodes.length;n++){const i=e.childNodes[n];if(1!==i.nodeType)continue;const s=(0,D.vv)(i).toLowerCase();switch(s){case"title":case"abstract":t[s]=(0,D.mX)(i);break;case"identifier":t.id=(0,D.mX)(i);break;case"wgs84boundingbox":{const e=(0,D.pN)(i,"LowerCorner"),n=(0,D.pN)(i,"UpperCorner");t.lonLatEnvelope=new _.A({xmin:e[0],ymin:e[1],xmax:n[0],ymax:n[1],spatialReference:{wkid:4326}})}break;case"coveragesummary":t.coverageSummaries=t.coverageSummaries||[],t.coverageSummaries.push(O(i))}}return t}function N(e,t){if(e.coverageSummaries)for(let n=0;n<e.coverageSummaries.length;n++)e.coverageSummaries[n].abstract=e.coverageSummaries[n].abstract||e.abstract,e.coverageSummaries[n].lonLatEnvelope=e.coverageSummaries[n].lonLatEnvelope||e.lonLatEnvelope,e.coverageSummaries[n].title=e.coverageSummaries[n].title||e.title,N(e.coverageSummaries[n],t);null!=e.id&&t.push(e)}function E(e){const t=(0,D.V6)(e.querySelector("Operation[name=GetCapabilities]"),"Get")?.getAttribute("xlink:href")||"",n=(0,D.V6)(e.querySelector("Operation[name=DescribeCoverage]"),"Get")?.getAttribute("xlink:href")||"",i=(0,D.V6)(e.querySelector("Operation[name=GetCoverage]"),"Get")?.getAttribute("xlink:href")||"";return{getCapabilities:L(t),describeCoverage:L(n),getCoverage:L(i)}}function V(e,t=null){let n=null;n="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e;let i=n.documentElement.getAttribute("version");"1.0"===i?i="1.0.0":"1.1"===i&&(i="1.1.0");const s=i||t||"1.0.0",r=s.slice(0,3);let a;if("2.0"===r)a=function(e){const t=(0,D.V6)(e,"ServiceIdentification"),n=(0,D.mX)(t,"Title"),i=(0,D.Dy)(t,"ServiceTypeVersion"),s=(0,D.Dy)(t,"Profile"),r=E((0,D.V6)(e,"OperationsMetadata")),o=(0,D.IC)(e,"Contents/CoverageSummary"),a=[];for(let e=0;e<o.length;e++){const t=o[e],n=(0,D.mX)(t,"CoverageId"),i=(0,D.V6)(t,"WGS84BoundingBox");let s;if(i){const e=(0,D.pN)(i,"LowerCorner"),t=(0,D.pN)(i,"UpperCorner");s=new _.A({xmin:e[0],ymin:e[1],xmax:t[0],ymax:t[1],spatialReference:{wkid:4326}})}const r=(0,D.mX)(t,"CoverageSubtype")||"RectifiedGridCoverage";a.push({id:n,lonLatEnvelope:s,coverageSubType:r})}const l=(0,D.V6)(e,"ServiceMetadata");return{name:n,supportedVersions:i,supportedFormats:(0,D.Dy)(l,"formatSupported"),supportedInterpolations:(0,D.Dy)(l,"interpolationSupported").concat((0,D.Dy)(l,"InterpolationSupported")),onlineResources:r,profiles:s,coverages:a,gridCoverages:P(a),version:"2.0.1"}}(n);else if("1.1"===r)a=function(e){const t=(0,D.mX)(e,"ServiceIdentification/Title"),n=(0,D.Dy)(e,"ServiceIdentification/ServiceTypeVersion"),i=E((0,D.V6)(e,"OperationsMetadata")),s=[],r=(0,D.V6)(e,"Contents");for(let e=0;e<r.childNodes.length;e++){const t=r.childNodes[e];1===t.nodeType&&(0,D.g7)(t,"CoverageSummary")&&N(O(t),s)}const o=(0,D.Dy)(r,"SupportedFormat");return{name:t,onlineResources:i,coverages:s,gridCoverages:P(s),supportedVersions:n,supportedFormats:o,version:"1.1.0"}}(n);else{if("1.0"!==r)throw new o.A("wcsraster:parsecapabilities","the capabilities version is not supported");a=function(e){const t=(0,D.mX)(e,"Service/name"),n=(0,D.V6)(e,"Capability"),i=(0,D.V6)(n,"GetCapabilities/Get/OnlineResource")?.getAttribute("xlink:href")??"",s=(0,D.V6)(n,"DescribeCoverage/Get/OnlineResource")?.getAttribute("xlink:href")??"",r=(0,D.V6)(n,"GetCoverage/Get/OnlineResource")?.getAttribute("xlink:href")??"",o={getCapabilities:L(i),describeCoverage:L(s),getCoverage:L(r)},a=(0,D.IC)(e,"CoverageOfferingBrief"),l=[];for(let e=0;e<a.length;e++){const t=a[e],n=(0,D.mX)(t,"name"),i=(0,D.IC)(t,"pos"),s=(0,D.pN)(i[0]),r=(0,D.pN)(i[1]),o=new _.A({xmin:s[0],ymin:s[1],xmax:r[0],ymax:r[1],spatialReference:{wkid:4326}});l.push({id:n,lonLatEnvelope:o})}return{name:t,onlineResources:o,coverages:l,gridCoverages:P(l),supportedVersions:["1.0.0"],version:"1.0.0"}}(n)}return a.version=s,a}var k=n(39829),$=n(4366),j=n(87186);function G(e){e.variables.forEach(e=>e.dimensions.forEach(e=>e.values??=(0,$.Xg)(e)))}function Z(e){return{requestResponseCRSs:(0,D.Dy)(e,"requestResponseCRSs").map(e=>e.split(":")[1]),nativeCRSs:(0,D.Dy)(e,"nativeCRSs").map(e=>e.split(":")[1])}}function F(e,t){const n=(0,D.Dy)(e,"1.0.0"===t?"interpolationMethod":"InterpolationMethod"),i="1.0.0"===t?e.getAttribute("default"):(0,D.mX)(e,"InterpolationMethods/Default");return null!=i?[i].concat(n.filter(e=>e.toLowerCase()!==i.toLowerCase())):n}function X(e){return null==e?["nearest"]:e.map(e=>{const t=e.toLowerCase();return t.includes("nearest")?"nearest":t.includes("linear")?"bilinear":t.includes("cubic")?"cubic":null}).filter(e=>!!e)}function W(e){const t=(0,D.IC)(e,"pos"),n=(0,D.pN)(t[0]),i=(0,D.pN)(t[1]);return new _.A({xmin:n[0],ymin:n[1],xmax:i[0],ymax:i[1],spatialReference:{wkid:4326}})}function B(e,t){const n=(0,D.Dy)(e,t);return n?.length&&""!==n[0]&&!isNaN(Number(n[0]))?n.map(e=>Number(e)):null}function q(e){const t=(0,D.pN)(e,"MinimumValue"),n=(0,D.pN)(e,"MaximumValue");return t.length&&n.length?t.map((e,t)=>({min:e,max:n[t],avg:-1,stddev:-1})):null}function U(e){return null==e?null:e.every(t=>t===e[0])?e[0]:e}function H(e){const t=[],n=(0,D.IC)(e,"RangeSet");let i=[];for(let e=0;e<n.length;e++){const s=(0,D.mX)(n[e],"name"),r=(0,D.mX)(n[e],"label"),o=[],a=B(n[e],"nullValues/singleValue"),l=(0,D.IC)(n[e],"AxisDescription");for(let e=0;e<l.length;e++){const t=(0,D.mX)(l[e],"name"),n=(0,D.mX)(l[e],"label"),s=(0,D.Dy)(l[e],"singleValue");if(0===s.length){const t=(0,D.mX)(l[e],"min"),n=(0,D.mX)(l[e],"max"),i=Number((0,D.mX)(l[e],"res"))||1;if(null!==t&&null!==n)for(let e=parseInt(t,10);e<=parseInt(n,10);e+=i)s.push(e.toString())}"band"===t.toLowerCase()&&(i=s),o.push({name:t,label:n,values:s})}t.push({name:s,label:r,nullValues:a,axis:o})}return{rangeSet:t,bandNames:i}}function K(e=null){if(!e)return{resolution:null,units:null};let t=e.toUpperCase();const n=["Years","Months","Days","Hours","Minutes","Seconds"];let i,s,r;return t.includes("PT")?(t=t.slice(2),r=["H","M","S"].findIndex(e=>t.includes(e)),i=n[3+r],s=parseFloat(t.slice(0,-1))):(t=t.slice(1),r=["Y","M","D"].findIndex(e=>t.includes(e)),r>-1&&(i=n[r]),s=parseFloat(t.slice(0,-1))),{resolution:s,units:i}}function J(e){const t=(0,D.IC)(e,"timeposition");if(t.length>0){const e=[];for(let n=0;n<t.length;n++)e.push(new Date((0,D.mX)(t[n])));return{begin:e[0],end:e[e.length-1],values:e}}const n=(0,D.V6)(e,"timePeriod")||(0,D.V6)(e,"TimePeriod");return n?{begin:new Date((0,D.mX)(n,"beginPosition")||(0,D.mX)(n,"BeginPosition")),end:new Date((0,D.mX)(n,"endPosition")||(0,D.mX)(n,"EndPosition")),...K((0,D.mX)(n,"timeResolution")||(0,D.mX)(n,"TimeResolution"))}:null}function Y(e){const t=(0,D.V6)(e,"spatialDomain"),n=(0,D.V6)(t,"Envelope")||(0,D.V6)(t,"EnvelopeWithTimePeriod"),i=n.getAttribute("srsName").split(":"),s=i[i.length-1],r=(0,D.IC)(n,"pos"),o=(0,D.pN)(r[0]),a=(0,D.pN)(r[1]),l=parseInt(s,10),u=isNaN(l)?null:{wkid:l},c=new _.A({xmin:o[0],ymin:o[1],xmax:a[0],ymax:a[1],spatialReference:u}),p=(0,D.V6)(t,"RectifiedGrid"),d=(0,D.mX)(p,"low").split(" "),h=(0,D.mX)(p,"high").split(" "),f=parseInt(h[0],10)-parseInt(d[0],10)+1,m=parseInt(h[1],10)-parseInt(d[1],10)+1,g=(0,D.pN)(t,"origin/pos"),v=(0,D.IC)(t,"offsetVector"),y={envelope:c,columns:f,rows:m,offset:{x:parseFloat((0,D.mX)(v[0]).split(" ")[0]),y:parseFloat((0,D.mX)(v[1]).split(" ")[1])},origin:{x:g[0],y:g[1]}},w=(0,D.V6)(e,"temporalDomain")||(0,D.V6)(e,"TemporalDomain");return{spatialDomain:y,temporalDomain:w?J(w):null}}function Q(e,t){const n=[],i=(0,D.IC)(e,"Field");let s,r=[];for(let e=0;e<i.length;e++){const o=(0,D.mX)(i[e],"Identifier"),a=(0,D.mX)(i[e],"Description"),l=(0,D.mX)(i[e],"Definition"),u=(0,D.mX)(i[e],"Abstract"),c=(0,D.mX)(i[e],"Title"),p=B(i[e],"NullValue"),d=(0,D.V6)(i[e],"AllowedValues"),h=d?q(d):null,f=F(i[e],"1.1.0"),m=[],g=(0,D.IC)(i[e],"Axis");for(let e=0;e<g.length;e++){const n=g[e].getAttribute("identifier"),i=(0,D.mX)(g[e],"UOM"),o=(0,D.mX)(g[e],"DataType"),a=(0,D.Dy)(g[e],"Key");t&&!n.toLowerCase().includes("band")||(r=a,s=p),m.push({identifier:n,uom:i,dataType:o,values:a,bandNoDataValues:s})}n.push({identifier:o,description:a,definition:l,abstract:u,title:c,supportedInterpolations:f,axis:m,nullValues:p,statistics:h})}return{rangeSet:n,bandNames:r,bandNoDataValues:s,statistics:n[0].statistics}}function ee(e){const t=(0,D.V6)(e,"SpatialDomain"),n=(0,D.V6)(t,"GridCRS"),i=(0,D.mX)(n,"GridBaseCRS"),s=(0,D.mX)(n,"GridOrigin"),r=s?.split(" ").map(e=>parseFloat(e))??[0,0],o=(0,D.pN)(n,"GridOffsets"),a=(0,D.IC)(t,"BoundingBox");let l,u,c,p;for(let e=0;e<a.length;e++){const t=a[e].getAttribute("crs")?.toLowerCase();if(null!=t)if(t.includes("imagecrs")){const t=(0,D.pN)(a[e],"LowerCorner"),n=(0,D.pN)(a[e],"UpperCorner");l=n[0]-t[0]+1,u=n[1]-t[1]+1}else if(t.indexOf("epsg")>0){const n=t.split(":");c=parseInt(n[n.length-1],10);const i=(0,D.pN)(a[e],"LowerCorner"),s=(0,D.pN)(a[e],"UpperCorner");p=new _.A({xmin:i[0],ymin:i[1],xmax:s[0],ymax:s[1],spatialReference:{wkid:c}})}}const d=l>u,h=p.xmax-p.xmin>p.ymax-p.ymin;let f=!1;(0,z.m)(c)&&(d===h?f=!1:(f=!0,p=new _.A({xmin:p.ymin,ymin:p.xmin,xmax:p.ymax,ymax:p.xmax,spatialReference:{wkid:c}})));const m={columns:l,rows:u,origin:{x:r[0],y:r[1]},offset:{x:o[0],y:o[o.length-1]},gridBaseCRS:i,envelope:p,useEPSGAxis:f},g=(0,D.V6)(e,"temporalDomain")||(0,D.V6)(e,"TemporalDomain");return{spatialDomain:m,temporalDomain:g?J(g):null}}function te(e){const t=(0,D.V6)(e,"Envelope")||(0,D.V6)(e,"EnvelopeWithTimePeriod"),n=t.getAttribute("srsName"),i=n.slice(n.lastIndexOf("/")+1),s=t.getAttribute("axisLabels").split(" ").map(e=>e.trim()).filter(e=>""!==e.trim()),r=(0,D.pN)(t,"lowerCorner"),o=(0,D.pN)(t,"upperCorner"),a=!["y","lat","latitude","north","nor","n","b"].includes(s[0].toLowerCase());let l;const u=parseInt(i,10),c=isNaN(u)?null:{wkid:u};l=new _.A(a?{xmin:r[0],ymin:r[1],xmax:o[0],ymax:o[1],spatialReference:c}:{xmin:r[1],ymin:r[0],xmax:o[1],ymax:o[0],spatialReference:c});const p={mins:r,maxs:o},d=t.getAttribute("uomLabels").trim().split(" ");let h,f;if((0,D.g7)(t,"EnvelopeWithTimePeriod")){h=new Date((0,D.mX)(e,"beginPosition")||(0,D.mX)(e,"BeginPosition")),f=new Date((0,D.mX)(e,"endPosition")||(0,D.mX)(e,"EndPosition"));const t=d?.findIndex(e=>"oledatetime"===e?.toLowerCase());t>-1&&(d[t]="ISO8601")}return{envelope:l,axisLabels:s,uomLabels:d.length?d:null,envelopeAllDims:p,beginPosition:h,endPosition:f,isEastFirst:a}}function ne(e,t){const n=[],i=(0,D.IC)(e,"DataRecord"),s=[];let r,o=[];for(let e=0;e<i.length;e++){const a=(0,D.IC)(i[e],"field"),l=[];for(let e=0;e<a.length;e++){const n=a[e].getAttribute("name"),i=(0,D.mX)(a[e],"description")||"",u=(0,D.V6)(a[e],"uom")?.getAttribute("code")||"",c=(0,D.pN)(a[e],"interval"),p=B(a[e],"nilValue")?.[0];t&&!n.toLowerCase().includes("band")||(s.push(n),c?.length&&(r=r||[],r.push({min:c[0],max:c[1],avg:-1,stddev:-1})),o.push(p)),l.push({name:n,description:i,uom:u,allowedValues:c,nilValue:p})}n.push(l)}return o.some(e=>null!=e)||(o=null),{rangeType:n,bandNames:s,bandStats:r,bandNoDataValues:o}}function ie(e){let t=1,n="";const i=.01;return Math.abs(e-1/24)<1/24*i?n="Hours":Math.abs(e-1)<1*i?n="Days":e<1?(t=Math.round(24*e),n="Hours"):e>28-i&&e<31+i||Math.round(e/30)<12?n="Months":e>365-i&&e<366+i&&(n="Years"),{interval:t,intervalUnit:n}}function se(e,t){const n=(0,D.V6)(e,"RectifiedGrid"),i=(0,D.pN)(n,"low"),s=(0,D.pN)(n,"high"),r=[];for(let e=0;e<i.length;e++)r.push(s[e]-i[e]+1);const o=(0,D.mX)(n,"axisLabels").split(" "),a=(0,D.pN)(n,"origin/pos"),l=(0,D.IC)(n,"offsetVector"),u=[];for(let e=0;e<l.length;e++){const t=(0,D.pN)(l[e]),n=t.findIndex(e=>0!==e);u[n]=t[n]}let c,p,d,h=!1;return t?.length&&o?.length&&(h=[...t].sort((e,t)=>e<t?-1:1).join(",")===[...o].sort((e,t)=>e<t?-1:1).join(",")),["y","lat","latitude","north","nor","n","b"].includes((h?o:t)[0].toLowerCase())?(c=r[1],p=r[0],d={y:Math.abs(u[0]),x:Math.abs(u[1])}):(c=r[0],p=r[1],d={x:Math.abs(u[0]),y:Math.abs(u[1])}),{columns:c,rows:p,origin:a,offset:u,resolution:d,gridSamples:r,axisLabels:o,hasSameAxisLabelsAsBoundedBy:h}}function re(e){const t=(0,D.V6)(e,"EarthObservation");if(!t)return null;const n=(0,D.V6)(t,"phenomenonTime"),i=n?J(n):null,s=(0,D.V6)(t,"phenomenonTime"),r=s?J(s):null,o=(0,D.mX)(t,"featureOfInterest/Footprint/multiExtentOf/MultiSurface/surfaceMembers/Polygon/exterior/LinearRing/posList");let a=null;if(o){const e=o.split(" ").map(e=>e.trim()).filter(e=>null!=e&&""!==e).map(Number);if(e.length){const t=[];for(let n=0;n<e.length/2;n+=2)t.push(e[n],e[n+1]);a=new k.A({rings:[[t]]})}}return{observation:{phenomenonTime:i,resultTime:r,footprint:a,identifier:(0,D.mX)(e,"metaDataProperty/EarthObservationMetaData/identifier"),acquisitionType:(0,D.mX)(e,"metaDataProperty/EarthObservationMetaData/acquisitionType"),status:(0,D.mX)(e,"metaDataProperty/EarthObservationMetaData/status")}}}async function oe(e,t){const{coverageIds:n,version:i,customParameters:s,signal:r}=t,a=i.slice(0,3),u="1.0"===a?"coverage":"1.1"===a?"identifiers":"coverageId",c={service:"WCS",request:"DescribeCoverage",version:i,[u]:n.join(","),...s};try{const{data:t}=await(0,T.A)(e,{query:c,responseType:"xml",signal:r});return function(e,t){let n=null;if(n="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e,"1.0.0"===t)return(0,D.IC)(n,"CoverageOffering").map(e=>function(e){const t={version:"1.0"};let n,i=[];for(let s=0;s<e.childNodes.length;s++){const r=e.childNodes[s];if(1===r.nodeType)if((0,D.g7)(r,"description"))t.description=(0,D.mX)(r);else if((0,D.g7)(r,"name"))t.name=(0,D.mX)(r);else if((0,D.g7)(r,"label"))t.label=(0,D.mX)(r);else if((0,D.g7)(r,"supportedFormats"))t.supportedFormats=(0,D.Dy)(r,"formats");else if((0,D.g7)(r,"supportedCRSs"))t.supportedCRSs=Z(r);else if((0,D.g7)(r,"supportedInterpolations"))t.supportedInterpolations=F(r,"1.0.0");else if((0,D.g7)(r,"lonLatEnvelope"))t.lonLatEnvelope=W(r);else if((0,D.g7)(r,"rangeSet")){const e=H(r);t.rangeSet=e.rangeSet,i=e.bandNames;const s=e.rangeSet[0].nullValues;s?.length&&(n=U(s))}else(0,D.g7)(r,"domainSet")&&(t.domainSet=Y(r))}const s=X(t.supportedInterpolations),{name:r,description:o,label:a,lonLatEnvelope:l,supportedFormats:u}=t,{spatialDomain:c}=t.domainSet,p={x:Math.abs(c.offset.x),y:Math.abs(c.offset.y)},d=function(e){if(!e.temporalDomain)return null;const{begin:t,end:n,values:i,units:s,resolution:r}=e.temporalDomain,o={variables:[{name:"default",description:"",dimensions:[{name:"StdTime",description:"",unit:"ISO8601",values:i?.map(e=>e.getTime()),hasRegularIntervals:!i,interval:r,intervalUnit:s,extent:[t.getTime(),n.getTime()]}]}]};return G(o),o}(t.domainSet),h=new j.A({width:c.columns,height:c.rows,pixelSize:p,pixelType:"unknown",extent:c.envelope,spatialReference:c.envelope.spatialReference,bandCount:i.length||1,noDataValue:n,multidimensionalInfo:d});return{id:r,title:t.name,description:o||a,lonLatEnvelope:l,rasterInfo:h,bandNames:i,supportedFormats:u,supportedInterpolations:s,coverageDescription:t,version:"1.0.0",useEPSGAxis:!1}}(e));const i=(0,D.IC)(n,"CoverageDescription");return"1.1.0"===t||"1.1.1"===t||"1.1.2"===t?i.map(e=>function(e,t){const n=[],i=[],s={supportedFormats:n,supportedCRSs:i,version:"1.1"};let r,o,a=[];for(let t=0;t<e.childNodes.length;t++){const l=e.childNodes[t];if(1!==l.nodeType)continue;const u=(0,D.vv)(l).toLowerCase();switch(u){case"title":case"abstract":case"identifier":s[u]=(0,D.mX)(l);break;case"supportedformat":{const e=(0,D.mX)(l);n.includes(e)||n.push(e)}break;case"supportedcrs":{const e=(0,D.mX)(l);i.includes(e)||i.push(e)}break;case"range":{const e=Q(l,!!s.domain?.temporalDomain);s.range=e.rangeSet,a=e.bandNames;const{bandNoDataValues:t}=e;t?.length&&(r=U(t)),o=e.statistics}break;case"domain":s.domain=ee(l)}}const l=X(s.range[0].supportedInterpolations),{identifier:u,abstract:c,title:p,domain:d,range:h}=s,f={x:Math.abs(d.spatialDomain.offset.x),y:Math.abs(d.spatialDomain.offset.y)},m=function(e,t){if(!t.temporalDomain)return null;const n=e.filter(e=>!e.identifier.toLowerCase().includes("field_1")&&!e.axis.some(e=>e.identifier.includes("band"))),i=[];if(n.length&&n.forEach(e=>{const t=e.axis.map(e=>{const t=e.values.map(t=>"ISO8601"===e.uom?(t=t.trim()).toLowerCase().includes("z")?new Date(t).getTime():new Date(t+"Z").getTime():parseFloat(t.trim())),n=[Math.min.apply(null,t),Math.max.apply(null,t)];return{name:e.identifier.trim(),description:"",field:e.identifier.trim(),unit:e.uom?e.uom.trim():"",hasRegularIntervals:!1,values:t,extent:n}});i.push({name:e.identifier.trim(),description:e.description?.trim()??"",unit:"",dimensions:t,statistics:e.statistics})}),t.temporalDomain){const{begin:e,end:n,values:s,units:r,resolution:o}=t.temporalDomain;i.some(e=>e.dimensions.some(e=>"stdtime"===e.name.toLowerCase()))||i.forEach(t=>{t.dimensions.push({name:"StdTime",description:"",unit:"ISO8601",values:s?.map(e=>e.getTime()),hasRegularIntervals:!s,interval:o,intervalUnit:r,extent:[e.getTime(),n.getTime()]})})}if(i.length){const e={variables:i};return G(e),e}return null}(h,d);m&&(r=h[0].nullValues,1===r?.length&&(r=r[0]));const g=new j.A({width:d.spatialDomain.columns,height:d.spatialDomain.rows,pixelSize:f,pixelType:"unknown",extent:d.spatialDomain.envelope,spatialReference:d.spatialDomain.envelope.spatialReference,bandCount:a.length||1,noDataValue:r,statistics:o,multidimensionalInfo:m});return{id:u,title:s.title,description:c||p,bandNames:a,rasterInfo:g,supportedFormats:n,supportedInterpolations:l,coverageDescription:s,version:t,useEPSGAxis:d.spatialDomain.useEPSGAxis}}(e,t)):i.map(e=>function(e){const t={version:"2.0"};let n,i,s=[];for(let r=0;r<e.childNodes.length;r++){const o=e.childNodes[r];if(1===o.nodeType)if((0,D.g7)(o,"coverageId"))t.coverageId=(0,D.mX)(o);else if((0,D.g7)(o,"ServiceParameters"))t.serviceParameters={supportedFormats:(0,D.Dy)(o,"nativeFormat")};else if((0,D.g7)(o,"boundedBy"))t.boundedBy=te(o);else if((0,D.g7)(o,"rangeType")){const e=ne(o,t.boundedBy?.axisLabels.length>2||t.domainSet?.axisLabels.length>2);t.rangeType=e.rangeType,s=e.bandNames,n=e.bandStats;const{bandNoDataValues:r}=e;r?.length&&(i=U(r))}else if((0,D.g7)(o,"domainSet"))t.domainSet=se(o,t.boundedBy?.axisLabels);else if((0,D.g7)(o,"metadata")){const e=(0,D.V6)(o,"EOMetadata");t.eoMetadata=e?re(e):null}}const{coverageId:r,boundedBy:o,domainSet:a,rangeType:l,serviceParameters:u}=t,c=function(e,t,n){if(n.axisLabels.length<=2)return null;const i=[];for(let t=0;t<e.length;t++){const n=e[t];for(let e=0;e<n.length;e++)n[e].name.toLowerCase().includes("band")||i.push(n[e])}const s=[];if(i.length){const e=[];for(let i=2;i<n.axisLabels.length;i++){const s=t.uomLabels?.[i]?.trim()??"",r=n.axisLabels[i].toLowerCase().includes("time")||"iso8601"===s.toLowerCase()||"oledatetime"===s.toLowerCase();let o,a;if(r){const e=ie(n.offset[i]);o=e.interval,a=e.intervalUnit}else o=n.offset[i],a=s;const l=[];r?(l.push((0,$.$E)(t.envelopeAllDims.mins[i])),l.push((0,$.$E)(t.envelopeAllDims.maxs[i]))):(l.push(t.envelopeAllDims.mins[i]),l.push(t.envelopeAllDims.maxs[i])),e.push({name:n.axisLabels[i].trim(),description:n.axisLabels[i].trim(),unit:r?"ISO8601":s,hasRegularIntervals:!0,extent:l,interval:o,intervalUnit:a})}if(i.forEach(t=>{const{allowedValues:n}=t,i=2===n?.length?[{min:n[0],max:n[1],avg:-1,stddev:-1}]:null;s.push({name:t.name.trim(),description:t.description?.trim()??"",unit:t.uom.trim(),statistics:i,dimensions:[...e]})}),s.length){const e={variables:s};return G(e),e}}return null}(l,o,a);return!n&&c&&(n=c?.variables[0].statistics),null!=c&&(i=l[0][0].nilValue),{id:r,title:r,description:r,bandNames:s,rasterInfo:new j.A({width:a.columns,height:a.rows,pixelSize:a.resolution,pixelType:"unknown",extent:o.envelope,spatialReference:o.envelope.spatialReference,bandCount:s.length||1,statistics:n,noDataValue:i,multidimensionalInfo:c}),supportedFormats:u.supportedFormats,coverageDescription:t,version:"2.0.1",useEPSGAxis:!1}}(e))}(t,i)}catch(e){if(!(0,l.zf)(e))throw new o.A("wcslayer:open","wcs coverage description is not valid or supported");throw e}}var ae=n(49859);function le(e,t,n=0){const i="--"+t.boundary,s=[];for(let e=0;e<i.length;e++)s.push(i.charCodeAt(e));const r=[],o="\n--"+t.boundary+"--";for(let e=0;e<o.length;e++)r.push(o.charCodeAt(e));const a=[10],l=[13,10],u=[],c=s.length,p=new Uint8Array(e,n),d=p.length-c;let h=0,f=0;for(let e=0;e<d;e++){for(f=0;f<c&&p[e+f]===s[f];f++);if(f!==c)continue;let n=!1;if(h){const i=ue(p.subarray(h,e),t);u.push(i),n=!!i.isValidImage}if(e+=c-1,p[e+1]===a[0]?e+=1:p[e+1]===l[0]&&p[e+2]===l[1]&&(e+=2),h=e+1,n)break}const m=r.length;for(let e=p.length-m-10;e<p.length-m;e++){for(f=0;f<m&&p[e+f]===r[f];f++);if(f===m){u.push(ue(p.subarray(h,e),t));break}}return u}function ue(e,t){const n=String.fromCharCode.apply(null,e.subarray(0,Math.min(300,e.length))).split("\n"),i=Math.min(n.length,7),s={contentDisposition:"inline"};let r=0;for(let o=0;o<i;o++)if(n[o].length<4)r=r+n[o].length+1;else if("content"===n[o].slice(0,7).toLowerCase()){r=r+n[o].length+1;const e=n[o].indexOf(":");if(-1===e)continue;const t=n[o].slice(0,e).trim(),i=n[o].slice(e+1).trim();switch(t.toLowerCase()){case"content-type":s.contentType=i;break;case"content-description":s.contentDescription=i;break;case"content-transfer-encoding":s.contentTransferEncoding=i;break;case"content-id":s.contentID=i;break;case"content-disposition":s.contentDisposition=i;break;case"content-location":s.contentLocation=i}}else{if(s.contentDisposition.toLowerCase().includes("inline")&&n[o].length>=4&&s.contentType?.toLowerCase().includes("image")){let t=!0,n=e.subarray(r,e.length);if(s.contentType.toLowerCase().indexOf("tif")>0){if("base64"===s.contentTransferEncoding){let e="";const t=n;for(let n=0;n<t.length;n+=65535){const i=t.subarray(n,n+65535>t.length-1?t.length-1:n+65535);e+=String.fromCharCode.apply(null,i)}const i=atob(e);n=new Uint8Array(i.length);for(let e=0;e<n.length;e++)n[e]=i.charCodeAt(e)}t=73===n[0]&&73===n[1]||77===n[0]&&77===n[1]}if(t){let t=n.buffer;"base64"!==s.contentTransferEncoding&&(t=new ArrayBuffer(e.length-r),n=new Uint8Array(t),n.set(e.subarray(r,e.length))),s.contentData=t,s.isValidImage=!0}break}if((""===t.start||s.contentID===t.start)&&s.contentType){if(s.contentType.includes("text")||s.contentType.includes("xml")){s.contentData=String.fromCharCode.apply(null,e.subarray(r,e.length));break}s.contentData=e.subarray(r,e.length)}}return s}var ce=n(96271),pe=n(47520),de=n(45617);const he=["nearest neighbor","bilinear","bicubic"],fe=["nearest","linear","cubic"],me="response is not a supported multipart/related mediaType with inline tiff, switching to compatibility mode",ge=new Set(["1.0.0","1.1.0","1.1.1","1.1.2","2.0.1"]);let ve=class extends ae.A{constructor(){super(...arguments),this.datasetFormat="WCSServer",this.tileType="Raster"}get rasterId(){return`${this.url}-${this.coverageId}-${this.version}`}async fetchRawTile(e,t,n,i={}){if(this.isBlockOutside(e,t,n))return null;const{nativePixelSize:s,spatialReference:r}=this.rasterInfo,a=2**e,l=s.x*a,u=s.y*a,{blockWidth:c,blockHeight:p}=this.getBlockWidthHeight(e),{origin:d}=this.rasterInfo.storageInfo.tileInfo,h=this.getTileExtent({x:l,y:u},t,n,d,r,[c,p]),f=this.rasterInfo.extent,m=h.xmax>f.xmax,g=h.ymin<f.ymin,v=m||g;let y=h,w=c,b=p;if(v&&(y=h.clone().intersection(f),null!=y&&(m&&(w=Math.floor((y.xmax-y.xmin)/l),y.xmax=y.xmin+l*w),g&&(b=Math.floor((y.ymax-y.ymin)/u),y.ymin=y.ymax-u*b))),null==y||w<=1||b<=1)return null;const x=await this._getCoverage(y,w,b,a,i);if(!x)return null;const{coverageDescription:C}=this.coverageInfo,{noDataValue:I,multidimensionalInfo:S}=this.rasterInfo,{multidimensionalDefinition:M}=i;let A;if(null!=S&&null!=M&&M.length){const e=M[0].variableName;if("2.0"===C.version){const t=C.rangeType[0].find(t=>t.name===e);A=t?.nilValue}else if("1.1"===C.version){const t=C.range.find(t=>t.identifier===e);A=t?.nullValues}}const _=A??I,z=await this.decodePixelBlock(x,{width:w,height:b,planes:null,pixelType:null,tiffNoDataValue:Array.isArray(_)?_[0]:_,matchAllNoData:!0});if(null==z)return null;if(z&&(z.width!==w||z.height!==b)){const e=`The tiff coverage response has unexpected width: ${z.width}, height: ${z.height}, expecting width: ${w}, height: ${b}`;throw R.A.getLogger(this).error("wcsraster-fetch",e),new o.A("wcsraster-fetch",e)}return v?(0,pe.$Q)(z,{x:0,y:0},{width:p,height:p}):z}async _open(e){const{customFetchParameters:t}=this.ioConfig,n=e?.signal,i=await async function(e,t){const{version:n,customParameters:i,signal:s}=t??{},r=n?.startsWith("1.0")?"version":"acceptVersions",a={service:"WCS",request:"GetCapabilities",[r]:n,...i};try{let{data:n}=await(0,T.A)(e,{query:a,responseType:"xml",signal:s});return t?.version||function(e){let t=null;t="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e;const n=t.documentElement.getAttribute("version"),i=n?.slice(0,3);return null!=i&&i<"2.1"}(n)||(a[r]="2.0.1",({data:n}=await(0,T.A)(e,{query:a,responseType:"xml",signal:s}))),V(n)}catch(e){if(!(0,l.zf)(e))throw new o.A("wcslayer:open","wcs capabilities is not valid or supported");throw e}}(this.url,{version:t?.version??this.version,customParameters:t,signal:n});if(this.capabilities=i,!this.version){let e=i.version.slice(0,3);"2.0"===e||"1.1"===e||"1.0"===e?this.version=i.version:(e=i.supportedVersions.find(e=>"2.0.1"===e)||i.supportedVersions.find(e=>e.startsWith("2.0"))||i.supportedVersions.find(e=>e.startsWith("1.1"))||i.supportedVersions.find(e=>e.startsWith("1.0"))||"1.0.0",this.version=e)}const{version:s}=this;if(!ge.has(s))throw new o.A("wcsraster-open",`unsupported WCS version ${s}`);const{gridCoverages:r}=i;if(!r.length)throw new o.A("wcsraster-open","cannot find rectified grid coverages");this.coverageId??=r[0].id;const{coverageId:a}=this,u=r.find(e=>e.id===a);if(null==u)throw new o.A("wcsraster-open",`the coverageId ${a} does not exist in capabilities`);const c=await oe(this.url,{coverageIds:[a],version:s,customParameters:t,signal:n});if(this.coverageInfo=c[0],s.startsWith("2.0")){const{coverageInfo:e}=this;e.lonLatEnvelope=u.lonLatEnvelope,e.supportedInterpolations=X(i.supportedInterpolations),this._patchDimensionValues201(a,n)}this.datasetName=this.coverageInfo.title;const{rasterInfo:p}=this.coverageInfo;if(this.createRemoteDatasetStorageInfo(p,512,512),this._set("rasterInfo",p),null==p.spatialReference)throw new o.A("wcsraster-open",`coverage without spatial reference is not supported: ${a}`);const{pixelType:d,bandCount:h}=await this._getPixelTypeAndBandCount(n);p.pixelType=d,1===p.bandCount&&h>1&&(p.bandCount=h),this.updateTileInfo()}async _patchDimensionValues201(e,t){const{coverageInfo:n}=this,i=n.rasterInfo.multidimensionalInfo?.variables,s=ge.has("1.1.2")?"1.1.2":ge.has("1.1.1")?"1.1.1":ge.has("1.1.0")?"1.1.0":null,{customFetchParameters:r}=this.ioConfig;if(i&&s)try{const n=this.url.includes("/ImageServer/"),o=e.length>8&&e.startsWith("Coverage")&&n?e.slice(8):e,a=await oe(this.url,{coverageIds:[o??e],version:s,customParameters:r,signal:t}).catch(()=>{if(o)return oe(this.url,{coverageIds:[e],version:s,customParameters:r,signal:t})}),l=a?.[0].rasterInfo.multidimensionalInfo?.variables;if(l)for(const e of i){const t=l.find(({name:t})=>t===e.name);if(t?.dimensions?.length)for(let i=e.dimensions.length-1;i>=0;i--){const s=e.dimensions[i],r=t.dimensions.find(({name:e})=>e===s.name);r?r.values&&r.extent?.join(",")===s.extent?.join(",")&&(e.dimensions[i]={...s,values:r.values}):n&&e.dimensions.splice(i,1)}}}catch{}}async _getPixelTypeAndBandCount(e){const{pixelSize:t,extent:n,multidimensionalInfo:i}=this.rasterInfo,s=n.center,r=new _.A({xmin:s.x-t.x,xmax:s.x+t.x,ymin:s.y-t.y,ymax:s.y+t.y,spatialReference:n.spatialReference});let a=[];if(null!=i){const e=i.variables[0];a=[],e.dimensions.forEach(t=>{a.push(new de.A({variableName:e.name,dimensionName:t.name,values:t.hasRegularIntervals?t.extent?.[0]:t.values?.[0],isSlice:!0}))})}const{coverageDescription:l}=this.coverageInfo,u={interpolation:"nearest",multidimensionalDefinition:a,signal:e},{version:c}=l,{ioConfig:p}=this,d="2.0"===c&&null==p.allowAnyMediaType||"1.1"===c&&null==p.use2GridOffsets;let h;try{h=await this._getCoverage(r,2,2,1,u,!0)}catch(e){if(!d)throw e;if("1.1"===c){if(!e.details?.isResolutionMismatch)throw e;p.use2GridOffsets=!0}}if(!h&&d&&("2.0"===c&&(p.allowAnyMediaType=!0),h=await this._getCoverage(r,2,2,1,u),h&&R.A.getLogger(this).warn("wcsraster:getcoverage",me)),!h)throw new o.A("wcsraster-open","unable to determine pixel type");const f=await this.decodePixelBlock(h,{width:2,height:2,planes:null,pixelType:null});if(null==f)throw new o.A("wcsraster-open","unable to determine pixel type");return{pixelType:f.pixelType,bandCount:f.getPlaneCount()??0}}async _getCoverage(e,t,n,i,s,r=!1){const{coverageDescription:a}=this.coverageInfo,{version:l}=a,u="2.0"===l?this._getCoverage201Parameters(e,t,n,i,s,a):"1.1"===l?this._getCoverage110Parameters(e,t,n,s,a):this._getCoverage100Parameters(e,t,n,s),c="2.0"===l?await this.request(this._constructWCS201Url(u),{signal:s.signal,responseType:"array-buffer"}):await this.request(this.url,{query:u,signal:s.signal,responseType:"array-buffer"});if("1.0"===l)return c.data;if("2.0"===l&&!1!==this.ioConfig.allowAnyMediaType&&"tiff"===(0,ce.g)(c.data))return r&&(this.ioConfig.allowAnyMediaType=!0,R.A.getLogger(this).warn("wcsraster:getcoverage",me)),c.data;const p=function(e){const t=function(e){const t=e.getHeader?.("Content-Type")?.split(";");if(!t)return null;if(!(t[0].trim()??"").startsWith("multipart/"))return null;const n={boundary:"",start:"",type:""};for(let e=1;e<t.length;e++){const i=t[e].indexOf("=");if(i>0){const s=t[e].slice(0,i).trim(),r=t[e].slice(i+1).trim();n[s]=r.startsWith('"')?r.slice(1,-1):r}}return n}(e);return t?{isMultipart:!0,data:t.boundary?le(e.data,t,0):null}:{isMultipart:!1,data:null}}(c);if(p.isMultipart&&p.data){const e=p.data.find(e=>e.isValidImage);return r&&"base64"===e?.contentTransferEncoding&&R.A.getLogger(this).warn("wcsraster:getcoverage","response is base64 encoded which may impact layer display performance"),e?.contentData}const d=new Uint8Array(c.data,0,Math.min(c.data.byteLength,2e3)),h=String.fromCharCode.apply(null,d).toLowerCase().includes("exception"),f=h&&String.fromCharCode.apply(null,d).includes("A non-zero RESX/RESY or WIDTH/HEIGHT is required but neither was provided");if(h)throw new o.A("wcsraster:getcoverage","server returns an exception",{isResolutionMismatch:f});throw new o.A("wcsraster:getcoverage","response is not a supported multipart mediaType with inline tiff")}_getInterpolationIndex(e){return e&&this.coverageInfo.supportedInterpolations?.includes(e)?"nearest"===e?0:"bilinear"===e?1:"cubic"===e?2:0:0}_getCoverage100Parameters(e,t,n,i){const s=`${e.xmin},${e.ymin},${e.xmax},${e.ymax}`,r=e.spatialReference.wkid,o=(this.coverageInfo.supportedFormats||[]).find(e=>e.toLowerCase().includes("tiff"))||"GEOTIFF",{bandIds:a,interpolation:l}=i,u=this._getInterpolationIndex(l),c=a?a.map(e=>this.coverageInfo.bandNames[e]):null,p=he[u],{multidimensionalDefinition:d}=i;let h;if(null!=d&&null!=this.rasterInfo.multidimensionalInfo){const e=d.find(e=>"StdTime"===e.dimensionName);let t=e?.values;t&&t.length>0&&(Array.isArray(t[0])&&(t=t[0]),h=t.map(e=>ye(e)).join(","))}return{service:"WCS",request:"GetCoverage",version:this.version,coverage:this.coverageId,format:o,crs:`EPSG:${r}`,bbox:s,width:t,height:n,time:h,interpolation:p,band:c?.join(",")}}_getCoverage110Parameters(e,t,n,i,s){const{multidimensionalDefinition:r,bandIds:o,interpolation:a}=i,l=e.spatialReference.wkid,u=`urn:ogc:def:crs:EPSG::${l}`,c=(this.coverageInfo.supportedFormats||[]).find(e=>e.toLowerCase().includes("tiff"))||"image/tiff",p=this._getInterpolationIndex(a),d=fe[p],h=null==a||0===this.coverageInfo.supportedInterpolations?.indexOf(a),f=s.domain.spatialDomain,m=f.origin.x<=f.envelope.xmin&&f.origin.y<=f.envelope.ymin,g=e.width/t,v=e.height/n*(m?1:-1),y=m?[e.xmin,e.ymin]:[e.xmin,e.ymax],w=f.useEPSGAxis&&(0,z.m)(l),b=w?`${y[1]},${y[0]}`:`${y[0]},${y[1]}`,x=this.ioConfig.use2GridOffsets,C=w?x?`${v},${g}`:`${v},0,0,${g}`:x?`${g},${v}`:`${g},0,0,${v}`,I=g/2,S=e.xmin+I,M=e.xmax-I,A=Math.abs(v)/2,R=e.ymin+A,_=e.ymax-A,T=w?`${R},${S},${_},${M},${u}`:`${S},${R},${M},${_},${u}`,D=s.range.find(e=>e.axis.some(e=>e.identifier.toLowerCase().includes("band")));let L,P=D&&d&&o?h?`${D.identifier}[${D.axis[0].identifier}[${o.join(",")}]]`:`${D.identifier}:${d}[${D.axis[0].identifier}[${o.join(",")}]]`:null;if(null!=r&&r.length)for(let e=0;e<r.length;e++){let t=r[e].values;const n=r[e].dimensionName?.toLowerCase(),i=r[e].variableName?.toLowerCase(),o=s.range.find(e=>e.identifier.toLowerCase()===i);if(t.length>0)if(Array.isArray(t[0])&&(t=t[0]),"stdtime"===n)L=t.map(e=>ye(e)).join(",");else if(o){const e=o.axis.find(e=>e.identifier.toLowerCase()===n);e&&(P=h?o.identifier+"["+e.identifier+"["+t.join(",")+"]]":o.identifier+":"+d+"["+e.identifier+"["+t.join(",")+"]]")}e===r.length-1&&o&&!P&&(P=h?o.identifier:o.identifier+":"+d)}return{service:"WCS",request:"GetCoverage",version:this.version,identifier:this.coverageId,format:c,crs:`EPSG:${l}`,boundingbox:T,gridCS:"urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS",gridType:"urn:ogc:def:method:WCS:1.1:2dGridIn2dCrs",gridOrigin:b,gridOffsets:C,gridBaseCRS:u,timeSequence:L,rangeSubset:P}}_getCoverage201Parameters(e,t,n,i,s,r){const{multidimensionalDefinition:o,interpolation:a}=s,l=this._getInterpolationIndex(a);let u=null;const{supportedInterpolations:c}=this.capabilities;if(c?.length)switch(l){case 0:u=c.find(e=>e.toLowerCase().includes("nearest"));break;case 1:u=c.find(e=>e.toLowerCase().includes("linear"));break;case 2:u=c.find(e=>e.toLowerCase().includes("cubic")||e.toLowerCase().includes("quadratic"))}const p=(this.coverageInfo.supportedFormats||[]).find(e=>e.toLowerCase().includes("tiff"))||"image/tiff",{bandNames:d}=this.coverageInfo,{boundedBy:h,domainSet:f,rangeType:m}=r,g=h.isEastFirst?0:1,v=1-g,{axisLabels:y}=h,w=y[g],b=y[v],x=`http://www.opengis.net/def/crs/EPSG/0/${e.spatialReference.wkid}`,C=x,I=[];I.push(`${w}(${e.xmin},${e.xmax})`),I.push(`${b}(${e.ymin},${e.ymax})`);const S=[];if(y.length>2)for(let e=2;e<y.length;e++){const t=f.origin[e];if(y[e].toLowerCase().includes("time")){let n=t.toString();h.uomLabels?.[e].toLowerCase().includes("ole")&&(S.push(y[e]),n=ye(t,!0)),I.push(y[e]+",http://www.opengis.net("+n+")")}else I.push(y[e]+",http://www.opengis.net("+t+")")}let M=null;if(null!=o&&o.length){const e=[];m.forEach(t=>t.forEach(t=>e.push(t.name)));const t=[];for(let n=0;n<o.length;n++){const i=y.find(e=>e===o[n].dimensionName),s=e.find(e=>e===o[n].variableName);if(t.includes(s)||t.push(s),i){let e=o[n].values;if(e.length>0){Array.isArray(e[0])&&(e=e[0]);let t="";t=i.toLowerCase().includes("time")?e.map(e=>ye(e)).join(","):e.join(",");const n=I.findIndex(e=>e.startsWith(i+",http://www.opengis.net"));-1===n&&I.push(i+",http://www.opengis.net("+t+")"),-1===n||I[n].includes("("+t+")")||I.splice(n,1,i+",http://www.opengis.net("+t+")")}}}t.length&&(M=t.join(","))}else d?.length>=2&&(M=(s.bandIds?s.bandIds.map(e=>d[e]):d).join(","));const A=I.join("&subset="),R=!r.domainSet.hasSameAxisLabelsAsBoundedBy&&!1!==this.ioConfig.allowScaleFactor,_=R?null:`${w}(${t}),${b}(${n})`,z=R?1/i:null;return{service:"WCS",request:"GetCoverage",version:this.version,coverageId:this.coverageId,rangesubset:M,interpolation:u,scaleSize:_,scaleFactor:z,subset:A,format:p,mediaType:this.ioConfig.allowAnyMediaType?null:"multipart/related",outputcrs:x,subsettingcrs:C}}_constructWCS201Url(e){const t={...this.ioConfig.customFetchParameters,...e},n=[];return Object.keys(t).forEach(e=>{const i=t[e];null!=i&&("subset"===e?"string"==typeof i&&i.split("&subset=").forEach(e=>{e&&n.push(`subset=${encodeURIComponent(e)}`)}):n.push(`${e}=${encodeURIComponent(i)}`))}),`${encodeURI(this.url)}?${n.join("&")}`}};function ye(e,t=!1){return(t?new Date((0,$.$E)(e)):new Date(e)).toISOString()}(0,i.Cg)([(0,c.MZ)({type:String,json:{write:!0}})],ve.prototype,"datasetFormat",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ve.prototype,"tileType",void 0),(0,i.Cg)([(0,c.MZ)({type:String,json:{write:!0}})],ve.prototype,"version",void 0),(0,i.Cg)([(0,c.MZ)({type:String,json:{write:!0}})],ve.prototype,"coverageId",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ve.prototype,"rasterId",null),ve=(0,i.Cg)([(0,c.$K)("esri.layers.raster.datasets.WCSRaster")],ve);var we=n(10873),be=n(20437),xe=n(74797),Ce=n(30291);const Ie=new Set(["milliseconds","seconds","minutes","hours","days","weeks","months","years","decades","centuries"]);let Se=class extends((0,y.dM)((0,S.j)((0,b.q)((0,x.A)((0,w.d)((0,A.b)((0,C.G)((0,M.e)((0,I.J)((0,a.M)((0,r.OU)(v.A)))))))))))){constructor(...e){super(...e),this.charts=null,this.coverageId=null,this.version=null,this.isReference=null,this.graphicOrigin=new g(this),this.legendEnabled=!0,this.noData=0,this.operationalLayerType="WCS",this.type="wcs",this.popupEnabled=!0,this.popupTemplate=null,this.fields=null,this._debouncedSaveOperations=(0,l.sg)(async(e,t,i)=>{const{save:s,saveAs:r}=await n.e(9838).then(n.bind(n,59838));switch(e){case 0:return s(this,t);case 1:return r(this,i,t)}})}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["WCS"]},e).catch(l.QP).then(()=>this._openRaster(t))),Promise.resolve(this)}get renderer(){return super.renderer}set renderer(e){super.renderer=e}get coverageInfo(){return this.raster.coverageInfo}get defaultPopupTemplate(){return this.createPopupTemplate()}get rasterFields(){const e=[(0,xe.rZ)("Pixel Value")],t=this.raster?.rasterInfo??this.serviceRasterInfo,n=t?.multidimensionalInfo;if(n){const t=(0,xe.AL)(n);e.push(...t)}return e}createPopupTemplate(e){return(0,Ce.tn)({fields:this.rasterFields,title:this.title},e)}async save(e){return this._debouncedSaveOperations(0,e)}async saveAs(e,t){return this._debouncedSaveOperations(1,t,e)}async _openRaster(e){const t=new ve({url:this.url,version:this.version,coverageId:this.coverageId,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters}});if(await t.open({signal:e}),!t.rasterInfo)throw t.destroy(),new o.A("wcs-layer:load","cannot load resources on "+this.url);const{rasterInfo:n}=t;null==n.noDataValue&&(n.noDataValue=this.noData),this._set("serviceRasterInfo",n),this._set("spatialReference",n.spatialReference),null==this.title&&this.setAtOrigin("title",t.datasetName,"service"),null==this.coverageId&&this.setAtOrigin("coverageId",t.coverageInfo.id,"service"),null==this.version&&t.version&&this.setAtOrigin("version",t.version,"service"),this.setAtOrigin("tileInfo",t.rasterInfo.storageInfo.tileInfo,"service");const{multidimensionalInfo:i}=n;if(null!=i){const e=i.variables[0].dimensions.find(({name:e})=>"StdTime"===e);if(e){let t=e.extent?.[0]??e.values[0];Array.isArray(t)&&(t=t[0]);let n=e.extent?.[1]??e.values[e.values.length-1];Array.isArray(n)&&(n=n[1]);const i=Ie.has(e.intervalUnit?.toLowerCase())?e.intervalUnit?.toLowerCase():null;this.set("timeInfo",{startField:"StdTime",fullTimeExtent:{start:t,end:n},timeZone:null,interval:i?{value:e.interval,unit:i}:null})}}this.raster=t,this._configDefaultSettings(),this.addHandles((0,u.wB)(()=>this.customParameters,e=>this.raster.ioConfig.customFetchParameters=e))}};(0,i.Cg)([(0,c.MZ)({json:{origins:{"web-scene":{write:!1}},write:!0}})],Se.prototype,"charts",void 0),(0,i.Cg)([(0,c.MZ)({type:String,nonNullable:!0,json:{name:"wcsInfo.coverageId",write:{isRequired:!0,ignoreOrigin:!0}}})],Se.prototype,"coverageId",void 0),(0,i.Cg)([(0,c.MZ)()],Se.prototype,"coverageInfo",null),(0,i.Cg)([(0,c.MZ)({type:["1.0.0","1.1.0","1.1.1","1.1.2","2.0.1"],nonNullable:!0,json:{name:"wcsInfo.version",write:{isRequired:!0,ignoreOrigin:!0}}})],Se.prototype,"version",void 0),(0,i.Cg)([(0,c.MZ)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],Se.prototype,"isReference",void 0),(0,i.Cg)([(0,c.MZ)({json:{read:!0,write:!0}})],Se.prototype,"blendMode",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0,clonable:!1})],Se.prototype,"graphicOrigin",void 0),(0,i.Cg)([(0,c.MZ)(we.fV)],Se.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,c.MZ)({type:["show","hide"]})],Se.prototype,"listMode",void 0),(0,i.Cg)([(0,c.MZ)()],Se.prototype,"noData",void 0),(0,i.Cg)([(0,c.MZ)({type:["WCS"]})],Se.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,c.MZ)()],Se.prototype,"raster",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],Se.prototype,"type",void 0),(0,i.Cg)([(0,c.MZ)(we.M6)],Se.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,c.MZ)({type:s.A,json:{name:"popupInfo",write:!0}})],Se.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],Se.prototype,"defaultPopupTemplate",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0,type:[be.A]})],Se.prototype,"fields",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0,type:[be.A]})],Se.prototype,"rasterFields",null),Se=(0,i.Cg)([(0,c.$K)("esri.layers.WCSLayer")],Se);const Me=Se},38458(e,t,n){n.d(t,{m:()=>s});const i=[[3819,3819],[3821,3824],[3889,3889],[3906,3906],[4001,4025],[4027,4036],[4039,4047],[4052,4055],[4074,4075],[4080,4081],[4120,4176],[4178,4185],[4188,4216],[4218,4289],[4291,4304],[4306,4319],[4322,4326],[4463,4463],[4470,4470],[4475,4475],[4483,4483],[4490,4490],[4555,4558],[4600,4646],[4657,4765],[4801,4811],[4813,4821],[4823,4824],[4901,4904],[5013,5013],[5132,5132],[5228,5229],[5233,5233],[5246,5246],[5252,5252],[5264,5264],[5324,5340],[5354,5354],[5360,5360],[5365,5365],[5370,5373],[5381,5381],[5393,5393],[5451,5451],[5464,5464],[5467,5467],[5489,5489],[5524,5524],[5527,5527],[5546,5546],[2044,2045],[2081,2083],[2085,2086],[2093,2093],[2096,2098],[2105,2132],[2169,2170],[2176,2180],[2193,2193],[2200,2200],[2206,2212],[2319,2319],[2320,2462],[2523,2549],[2551,2735],[2738,2758],[2935,2941],[2953,2953],[3006,3030],[3034,3035],[3038,3051],[3058,3059],[3068,3068],[3114,3118],[3126,3138],[3150,3151],[3300,3301],[3328,3335],[3346,3346],[3350,3352],[3366,3366],[3389,3390],[3416,3417],[3833,3841],[3844,3850],[3854,3854],[3873,3885],[3907,3910],[4026,4026],[4037,4038],[4417,4417],[4434,4434],[4491,4554],[4839,4839],[5048,5048],[5105,5130],[5253,5259],[5269,5275],[5343,5349],[5479,5482],[5518,5519],[5520,5520],[20004,20032],[20064,20092],[21413,21423],[21473,21483],[21896,21899],[22171,22177],[22181,22187],[22191,22197],[25884,25884],[27205,27232],[27391,27398],[27492,27492],[28402,28432],[28462,28492],[30161,30179],[30800,30800],[31251,31259],[31275,31279],[31281,31290],[31466,31700]];function s(e){return null!=e&&i.some(([t,n])=>e>=t&&e<=n)}},91806(e,t,n){n.d(t,{A:()=>l});var i,s=n(5482),r=n(25482),o=n(91429),a=n(56507);let l=class extends r.o{static{i=this}constructor(e){super(e),this.cols=null,this.level=0,this.levelValue=null,this.origin=null,this.resolution=0,this.rows=null,this.scale=0}clone(){return new i({cols:this.cols,level:this.level,levelValue:this.levelValue,resolution:this.resolution,rows:this.rows,scale:this.scale})}};(0,s.Cg)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],l.prototype,"cols",void 0),(0,s.Cg)([(0,o.MZ)({type:a.jz,json:{write:!0}})],l.prototype,"level",void 0),(0,s.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],l.prototype,"levelValue",void 0),(0,s.Cg)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],l.prototype,"origin",void 0),(0,s.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],l.prototype,"resolution",void 0),(0,s.Cg)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],l.prototype,"rows",void 0),(0,s.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],l.prototype,"scale",void 0),l=i=(0,s.Cg)([(0,o.$K)("esri.layers.support.LOD")],l)},87045(e,t,n){n.d(t,{A:()=>w});var i,s=n(5482),r=n(66552),o=n(25482),a=n(86211),l=n(91429),u=n(56507),c=n(86738),p=n(16930),d=n(21325),h=n(28735),f=n(91806),m=n(72802),g=n(36005),v=n(43937);const y=new r.J({PNG:"png",PNG8:"png8",PNG24:"png24",PNG32:"png32",JPEG:"jpg",JPG:"jpg",DIB:"dib",TIFF:"tiff",EMF:"emf",PS:"ps",PDF:"pdf",GIF:"gif",SVG:"svg",SVGZ:"svgz",Mixed:"mixed",MIXED:"mixed",LERC:"lerc",LERC2D:"lerc2d",RAW:"raw",pbf:"pbf"});let w=class extends o.o{static{i=this}static create(e={}){const{resolutionFactor:t=1,scales:n,size:s=256,spatialReference:r=p.A.WebMercator,numLODs:o=24}=e;if(!(0,d.fn)(r)){const e=[];if(n)for(let t=0;t<n.length;t++){const i=n[t];e.push(new f.A({level:t,scale:i,resolution:i}))}else{let t=5e-4;for(let n=o-1;n>=0;n--)e.unshift(new f.A({level:n,scale:t,resolution:t})),t*=2}return new i({dpi:96,lods:e,origin:new c.A(0,0,r),size:[s,s],spatialReference:r})}const l=(0,d.Vp)(r),u=e.origin?new c.A({x:e.origin.x,y:e.origin.y,spatialReference:r}):new c.A(l?{x:l.origin[0],y:l.origin[1],spatialReference:r}:{x:0,y:0,spatialReference:r}),h=1/(39.37*(0,a.GA)(r)*96),m=[];if(n)for(let e=0;e<n.length;e++){const t=n[e],i=t*h;m.push(new f.A({level:e,scale:t,resolution:i}))}else{let e=(0,d.EA)(r)?512/s*591657527.5917094:256/s*591657527.591555;const n=Math.ceil(o/t);m.push(new f.A({level:0,scale:e,resolution:e*h}));for(let i=1;i<n;i++){const n=e/2**t,s=n*h;m.push(new f.A({level:i,scale:n,resolution:s})),e=n}}return new i({dpi:96,lods:m,origin:u,size:[s,s],spatialReference:r})}constructor(e){super(e),this.dpi=96,this.format=null,this.origin=null,this.size=null,this.spatialReference=null}get isWrappable(){const{spatialReference:e,origin:t}=this;if(e&&t){const n=(0,d.Vp)(e);return e.isWrappable&&!!n&&Math.abs(n.origin[0]-t.x)<=n.dx}return!1}readOrigin(e,t){return c.A.fromJSON({spatialReference:t.spatialReference,...e})}set lods(e){let t=0,n=0;const i=[],s=this._levelToLOD={};e&&(t=-1/0,n=1/0,e.forEach(e=>{i.push(e.scale),t=e.scale>t?e.scale:t,n=e.scale<n?e.scale:n,s[e.level]=e})),this._set("scales",i),this._set("lods",e),this._initializeUpsampleLevels()}readSize(e,t){return[t.cols,t.rows]}writeSize(e,t){t.cols=e[0],t.rows=e[1]}zoomToScale(e){const t=this.scales;if(e<=0)return t[0];if(e>=t.length-1)return t[t.length-1];const n=Math.floor(e),i=n+1;return t[n]/(t[n]/t[i])**(e-n)}scaleToZoom(e){const t=this.scales,n=t.length-1;let i=0;for(;i<n;i++){const n=t[i],s=t[i+1];if(n<=e)return i;if(s===e)return i+1;if(n>e&&s<e)return i+Math.log(n/e)/Math.log(n/s)}return i}tileAt(e,t,n,i){const s=this.lodAt(e);if(!s)return null;let r,o;if("number"==typeof t)r=t,o=n;else if((0,d.aI)(t.spatialReference,this.spatialReference))r=t.x,o=t.y,i=n;else{const e=(0,h.Cv)(t,this.spatialReference);if(null==e)return null;r=e.x,o=e.y,i=n}const a=s.resolution*this.size[0],l=s.resolution*this.size[1];return i??=new m.U(0,0,0),i.level=e,i.row=Math.floor((this.origin.y-o)/l+.001),i.col=Math.floor((r-this.origin.x)/a+.001),this.updateTileInfo(i),i}updateTileInfo(e,t=0){if(!("extent"in e))return!1;let n=this.lodAt(e.level);if(!n&&1===t){const t=this.lods[this.lods.length-1];t.level<e.level&&(n=t)}if(!n)return!1;const i=e.level-n.level,s=n.resolution*this.size[0]/2**i,r=n.resolution*this.size[1]/2**i;return e.extent[0]=this.origin.x+e.col*s,e.extent[1]=this.origin.y-(e.row+1)*r,e.extent[2]=e.extent[0]+s,e.extent[3]=e.extent[1]+r,!0}upsampleTile(e){const t=this._upsampleLevels[e.level];return!(!t||-1===t.parentLevel||(e.level=t.parentLevel,e.row=Math.floor(e.row/t.factor+.001),e.col=Math.floor(e.col/t.factor+.001),this.updateTileInfo(e),0))}getTileBounds(e,t){const n=this.lodAt(t.level);if(null==n)return null;const{resolution:i}=n,s=i*this.size[0],r=i*this.size[1];return e[0]=this.origin.x+t.col*s,e[1]=this.origin.y-(t.row+1)*r,e[2]=e[0]+s,e[3]=e[1]+r,e}lodAt(e){return this._levelToLOD?.[e]??null}clone(){return i.fromJSON(this.write({}))}getCompatibleForVTL(e){if(this.size[0]!==this.size[1]||256===this.size[0]&&512===e)return null;const t=(512===this.size[0]&&256===e?-1:0)+(this.spatialReference.isGeographic?1:0);if(this.size[0]===e&&0===t)return this;const n=[],s=this.lods.length-t;for(let e=0;e<s;e++){const i=e+t,{scale:s,resolution:r}=i>=0?this.lods[i]:{scale:2*this.lods[0].scale,resolution:2*this.lods[0].resolution};n.push(new f.A({level:e,scale:s,resolution:r}))}return new i({size:[e,e],dpi:this.dpi,format:this.format,compressionQuality:this.compressionQuality,origin:this.origin,spatialReference:this.spatialReference,lods:n})}_initializeUpsampleLevels(){const e=this.lods;this._upsampleLevels=[];let t=null;for(let n=0;n<e.length;n++){const i=e[n];this._upsampleLevels[i.level]={parentLevel:t?t.level:-1,factor:t?t.resolution/i.resolution:0},t=i}}};(0,s.Cg)([(0,l.MZ)({type:Number,json:{write:!0}})],w.prototype,"compressionQuality",void 0),(0,s.Cg)([(0,l.MZ)({type:Number,json:{write:!0}})],w.prototype,"dpi",void 0),(0,s.Cg)([(0,l.MZ)({type:String,json:{read:y.read,write:y.write,origins:{"web-scene":{read:!1,write:!1}}}})],w.prototype,"format",void 0),(0,s.Cg)([(0,l.MZ)({readOnly:!0})],w.prototype,"isWrappable",null),(0,s.Cg)([(0,l.MZ)({type:c.A,json:{write:!0}})],w.prototype,"origin",void 0),(0,s.Cg)([(0,g.w)("origin")],w.prototype,"readOrigin",null),(0,s.Cg)([(0,l.MZ)({type:[f.A],value:null,json:{write:!0}})],w.prototype,"lods",null),(0,s.Cg)([(0,l.MZ)({readOnly:!0})],w.prototype,"scales",void 0),(0,s.Cg)([(0,l.MZ)({cast:e=>Array.isArray(e)?e:"number"==typeof e?[e,e]:[256,256]})],w.prototype,"size",void 0),(0,s.Cg)([(0,g.w)("size",["rows","cols"])],w.prototype,"readSize",null),(0,s.Cg)([(0,v.K)("size",{cols:{type:u.jz},rows:{type:u.jz}})],w.prototype,"writeSize",null),(0,s.Cg)([(0,l.MZ)({type:p.A,json:{write:!0}})],w.prototype,"spatialReference",void 0),w=i=(0,s.Cg)([(0,l.$K)("esri.layers.support.TileInfo")],w)},72802(e,t,n){n.d(t,{U:()=>s});var i=n(19419);class s{constructor(e,t,n,s=(0,i.vt)()){this._level=e,this._row=t,this._col=n,this.extent=s}get id(){return this._id??=`${this.level}/${this.row}/${this.col}`,this._id}get level(){return this._level}set level(e){this._level=e,this._id=null}get row(){return this._row}set row(e){this._row=e,this._id=null}get col(){return this._col}set col(e){this._col=e,this._id=null}toJSON(){return{level:this._level,row:this._row,col:this._col,extent:this.extent}}static fromJSON(e){return new s(e.level,e.row,e.col,e.extent)}}}}]);