@arcgis/core 4.33.0-next.20250211 → 4.33.0-next.20250213

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 (351) hide show
  1. package/assets/esri/core/workers/RemoteClient.js +1 -1
  2. package/assets/esri/core/workers/chunks/{3c23e567cfb7372c44ba.js → 0a5689348d544090006d.js} +1 -1
  3. package/assets/esri/core/workers/chunks/0b8bf1966653c326e95a.js +1 -0
  4. package/assets/esri/core/workers/chunks/{baee20c14763bef80b09.js → 1249fd2f83caeaefd8ce.js} +1 -1
  5. package/assets/esri/core/workers/chunks/135fb580d8afd8d60811.js +1 -0
  6. package/assets/esri/core/workers/chunks/{946a9890f3621d1dfbc5.js → 144e534d4ac1aafab60d.js} +1 -1
  7. package/assets/esri/core/workers/chunks/{cee3a38b92a48a58c4d0.js → 152becae48572299b07f.js} +1 -1
  8. package/assets/esri/core/workers/chunks/15ad8036736a32652c9b.js +1 -0
  9. package/assets/esri/core/workers/chunks/{f200dca22f9f9bbb8670.js → 17213c3fc63f580e5b73.js} +1 -1
  10. package/assets/esri/core/workers/chunks/211c32244e05164dcd38.js +314 -0
  11. package/assets/esri/core/workers/chunks/219b06cca6aa1e041f40.js +1 -0
  12. package/assets/esri/core/workers/chunks/24e6476f32ad2014d39d.js +1 -0
  13. package/assets/esri/core/workers/chunks/272662e4e28341419b4f.js +1 -0
  14. package/assets/esri/core/workers/chunks/282c2d52011b331d4704.js +1 -0
  15. package/assets/esri/core/workers/chunks/{5fbdb5fea7d6676fcf19.js → 2c1a85a801cb4d9d737e.js} +1 -1
  16. package/assets/esri/core/workers/chunks/2dc35c1c5d83174a2c06.js +1 -0
  17. package/assets/esri/core/workers/chunks/{7f87cf3d6a365d987f69.js → 30bd5b3204e09f516ea2.js} +1 -1
  18. package/assets/esri/core/workers/chunks/{e4651d577d297386268e.js → 32035bc69ee18b19623d.js} +1 -1
  19. package/assets/esri/core/workers/chunks/{c04091eea7089dc2e864.js → 35bcb0622234b38d85b4.js} +1 -1
  20. package/assets/esri/core/workers/chunks/{92984981afcbb95828cd.js → 37cfd102b6ab5b959f9d.js} +1 -1
  21. package/assets/esri/core/workers/chunks/3835c2884c55e73dc202.js +1 -0
  22. package/assets/esri/core/workers/chunks/39c595734a9e9cd67e41.js +1 -0
  23. package/assets/esri/core/workers/chunks/{1d51c064045e9c47bd2e.js → 3bad184751fcb26c003c.js} +1 -1
  24. package/assets/esri/core/workers/chunks/{e468bf4ec7402942ad8c.js → 3ebdd0701e77bb28c75d.js} +1 -1
  25. package/assets/esri/core/workers/chunks/{a559db8654b4f83fd79b.js → 3f6516af411256d90a03.js} +1 -1
  26. package/assets/esri/core/workers/chunks/{c83b26ff96e39266adc2.js → 4300c80fa10c5d9141e8.js} +1 -1
  27. package/assets/esri/core/workers/chunks/4848a3e31632d15dc4ce.js +1 -0
  28. package/assets/esri/core/workers/chunks/{77764ca90bdd13ee2167.js → 486df1e042204b90b0dd.js} +2 -2
  29. package/assets/esri/core/workers/chunks/{77764ca90bdd13ee2167.js.LICENSE.txt → 486df1e042204b90b0dd.js.LICENSE.txt} +1 -1
  30. package/assets/esri/core/workers/chunks/52f61e1f5972a72b6b54.js +1 -0
  31. package/assets/esri/core/workers/chunks/544ad8fa4777ba8ec177.js +1 -0
  32. package/assets/esri/core/workers/chunks/{354531dc2f0dea2ad96f.js → 5693d9ce4472a4c5959f.js} +2 -2
  33. package/assets/esri/core/workers/chunks/{354531dc2f0dea2ad96f.js.LICENSE.txt → 5693d9ce4472a4c5959f.js.LICENSE.txt} +1 -1
  34. package/assets/esri/core/workers/chunks/{e56647e61296643c5f84.js → 5719471414810b6a9aec.js} +1 -1
  35. package/assets/esri/core/workers/chunks/{1accbc048b74857269e4.js → 57924f4909f2cbe5d64c.js} +1 -1
  36. package/assets/esri/core/workers/chunks/{b21b152fa15896577242.js → 5b56b271afb0fadf48b4.js} +2 -2
  37. package/assets/esri/core/workers/chunks/{b21b152fa15896577242.js.LICENSE.txt → 5b56b271afb0fadf48b4.js.LICENSE.txt} +1 -1
  38. package/assets/esri/core/workers/chunks/{b3aeda290470dcb2bdd2.js → 5cf08ee5114273163e09.js} +1 -1
  39. package/assets/esri/core/workers/chunks/{76794184ba8c2e66745e.js → 629f4621ba6ffdcaa2f9.js} +1 -1
  40. package/assets/esri/core/workers/chunks/{32d3657dcae89b740f8b.js → 6518954889df2e781c47.js} +2 -2
  41. package/assets/esri/core/workers/chunks/{32d3657dcae89b740f8b.js.LICENSE.txt → 6518954889df2e781c47.js.LICENSE.txt} +1 -1
  42. package/assets/esri/core/workers/chunks/6c64ccf5f64b5025b239.js +1 -0
  43. package/assets/esri/core/workers/chunks/{220b12654b94c94f8d8a.js → 6fa1f1e431aae1794ce3.js} +1 -1
  44. package/assets/esri/core/workers/chunks/82facb23dfaba2819bc7.js +1 -0
  45. package/assets/esri/core/workers/chunks/8722d05ae9b0aa5162a4.js +1 -0
  46. package/assets/esri/core/workers/chunks/89960be0e525d42ccffe.js +1 -0
  47. package/assets/esri/core/workers/chunks/8de4280080296adb1757.js +1 -0
  48. package/assets/esri/core/workers/chunks/{1f443b99653708470f31.js → 96d7f47ea8fbf345101c.js} +1 -1
  49. package/assets/esri/core/workers/chunks/9be12d0df67e2c4c3787.js +1 -0
  50. package/assets/esri/core/workers/chunks/{e6087eda5e3b7e5ad3e1.js → a12afed58acff17708ca.js} +1 -1
  51. package/assets/esri/core/workers/chunks/a80c3ada9e09b8832e9b.js +1 -0
  52. package/assets/esri/core/workers/chunks/a8457210711b663059f0.js +1 -0
  53. package/assets/esri/core/workers/chunks/{95ad76e58452b60fb79f.js → a864ef9b584c83ebf6ae.js} +1 -1
  54. package/assets/esri/core/workers/chunks/{df3d1a8d3f11d52eb30d.js → afdbdc1569b56489c14d.js} +1 -1
  55. package/assets/esri/core/workers/chunks/{308ec51ff4a66f7fcb0d.js → b0952b81d5be214262dd.js} +2 -2
  56. package/assets/esri/core/workers/chunks/{308ec51ff4a66f7fcb0d.js.LICENSE.txt → b0952b81d5be214262dd.js.LICENSE.txt} +1 -1
  57. package/assets/esri/core/workers/chunks/{89e3f7880abd014a62c0.js → b42d26123784997c66e8.js} +1 -1
  58. package/assets/esri/core/workers/chunks/{4040158835f9036967cd.js → b83151b03bbeba466f82.js} +2 -2
  59. package/assets/esri/core/workers/chunks/{4040158835f9036967cd.js.LICENSE.txt → b83151b03bbeba466f82.js.LICENSE.txt} +1 -1
  60. package/assets/esri/core/workers/chunks/{94490937dca566fe2640.js → c061cad8323f0469e7e4.js} +1 -1
  61. package/assets/esri/core/workers/chunks/{fef135e55706d84d1947.js → c4ce3c35b52b7999e877.js} +1 -1
  62. package/assets/esri/core/workers/chunks/cbba0b6bd41d16eacb5c.js +1 -0
  63. package/assets/esri/core/workers/chunks/cc8eb975a543556f88ae.js +1 -0
  64. package/assets/esri/core/workers/chunks/{6e6422eda398774acbc7.js → d60da671aba70485050e.js} +1 -1
  65. package/assets/esri/core/workers/chunks/de638753a30c9aa41bad.js +1 -0
  66. package/assets/esri/core/workers/chunks/de87009542886fad9a2f.js +2 -0
  67. package/assets/esri/core/workers/chunks/{b765670b47d209d7655a.js.LICENSE.txt → de87009542886fad9a2f.js.LICENSE.txt} +1 -1
  68. package/assets/esri/core/workers/chunks/{bb73cd34fbae935ccbcc.js → dff4a9d656b84fe3e052.js} +1 -1
  69. package/assets/esri/core/workers/chunks/ea4c7560e64335f155f9.js +1 -0
  70. package/assets/esri/core/workers/chunks/eac791e3a0bb056a28f3.js +1 -0
  71. package/assets/esri/core/workers/chunks/f088e7db4e7ac85aaff1.js +1 -0
  72. package/assets/esri/core/workers/chunks/{a38cb1fff519bad8abe3.js → f0d28fe4deb7cd894765.js} +1 -1
  73. package/assets/esri/core/workers/chunks/{08980b1ad3d5d67c6390.js → f419aaf3bab086060894.js} +1 -1
  74. package/assets/esri/core/workers/chunks/f52ed527b46c316eb369.js +1 -0
  75. package/assets/esri/core/workers/chunks/{140d0c4285c6978103ea.js → f5ce6af342c02a4b0d15.js} +7 -7
  76. package/assets/esri/core/workers/chunks/{1cbeac3301b6943bb28a.js → fc07d47d44c04f123650.js} +1 -1
  77. package/assets/esri/libs/lyr3d/lyr3DMain.wasm +0 -0
  78. package/assets/esri/libs/lyr3d/lyr3DWorker.wasm +0 -0
  79. package/assets/esri/themes/base/_core.scss +4 -0
  80. package/assets/esri/themes/base/widgets/_BasemapGallery.scss +0 -5
  81. package/assets/esri/themes/base/widgets/_FeatureFormUtilityNetworkAssociationLayers.scss +80 -0
  82. package/assets/esri/themes/base/widgets/_FeatureFormUtilityNetworkAssociationList.scss +14 -0
  83. package/assets/esri/themes/base/widgets/_FeatureFormUtilityNetworkAssociationSettings.scss +41 -0
  84. package/assets/esri/themes/base/widgets/_FilterBuilder.scss +1 -6
  85. package/assets/esri/themes/dark/main.css +1 -1
  86. package/assets/esri/themes/light/main.css +1 -1
  87. package/assets/esri/themes/light/view.css +1 -1
  88. package/chunks/Bufferer-B-V7yYm-.js +5 -0
  89. package/chunks/ComponentShader.glsl.js +6 -6
  90. package/chunks/Distance2DCalculator-Coa0qAFt.js +5 -0
  91. package/chunks/Envelope.js +1 -1
  92. package/chunks/{GeodeticDistanceCalculator-BsWHOuqE.js → GeodeticDistanceCalculator-D4iQ-_NX.js} +1 -1
  93. package/chunks/Geometry.js +1 -1
  94. package/chunks/OperatorClip.js +1 -1
  95. package/chunks/OperatorCut.js +1 -1
  96. package/chunks/OperatorGeneralize.js +1 -1
  97. package/chunks/OperatorGeodesicBuffer.js +1 -1
  98. package/chunks/OperatorGeodeticArea.js +1 -1
  99. package/chunks/OperatorGeodeticDistance.js +1 -1
  100. package/chunks/OperatorMultiPartToSinglePart.js +1 -1
  101. package/chunks/OperatorProximity.js +1 -1
  102. package/chunks/OperatorProximityGeodesic.js +1 -1
  103. package/chunks/OperatorShapePreservingLength.js +1 -1
  104. package/chunks/OperatorShapePreservingProject.js +1 -1
  105. package/chunks/Point2D.js +1 -1
  106. package/chunks/ProjectionTransformation.js +1 -1
  107. package/chunks/QuadraticBezier.js +1 -1
  108. package/chunks/ShadowHighlight.glsl.js +2 -4
  109. package/chunks/SideCalculator2D-BNwb5gvz.js +1 -1
  110. package/chunks/disjointOperator.js +1 -1
  111. package/chunks/distanceOperator.js +1 -1
  112. package/chunks/lyr3DWorker.js +1 -1
  113. package/core/libs/gl-matrix-2/factories/mat2df32.js +1 -1
  114. package/core/libs/gl-matrix-2/factories/mat2df64.js +1 -1
  115. package/core/libs/gl-matrix-2/factories/mat2f32.js +1 -1
  116. package/core/libs/gl-matrix-2/factories/mat2f64.js +1 -1
  117. package/core/libs/gl-matrix-2/factories/mat3f32.js +1 -1
  118. package/core/libs/gl-matrix-2/factories/mat3f64.js +1 -1
  119. package/core/libs/gl-matrix-2/factories/mat4f32.js +1 -1
  120. package/core/libs/gl-matrix-2/factories/mat4f64.js +1 -1
  121. package/core/libs/gl-matrix-2/factories/quat2f64.js +1 -1
  122. package/core/libs/gl-matrix-2/factories/vec2f32.js +1 -1
  123. package/core/libs/gl-matrix-2/factories/vec2f64.js +1 -1
  124. package/core/libs/gl-matrix-2/factories/vec3f32.js +1 -1
  125. package/core/libs/gl-matrix-2/factories/vec3f64.js +1 -1
  126. package/core/libs/gl-matrix-2/factories/vec4f32.js +1 -1
  127. package/core/libs/gl-matrix-2/factories/vec4f64.js +1 -1
  128. package/core/sql.js +1 -1
  129. package/editing/sharedTemplates/SharedTemplate.d.ts +4 -0
  130. package/editing/sharedTemplates/SharedTemplate.js +1 -1
  131. package/editing/sharedTemplates/SharedTemplateMetadata.js +1 -1
  132. package/editing/sharedTemplates/SharedTemplateProvider.js +1 -1
  133. package/editing/sharedTemplates/executor/builders/bufferLineToPolygon.js +1 -1
  134. package/editing/sharedTemplates/executor/builders/bufferPointToPolygon.js +1 -1
  135. package/editing/sharedTemplates/executor/builders/bufferPolygonToPolygon.js +1 -1
  136. package/editing/sharedTemplates/executor/builders/equallySpaced.js +1 -1
  137. package/editing/sharedTemplates/executor/builders/offsetLine.js +1 -1
  138. package/editing/sharedTemplates/executor/builders/offsetPrimaryLine.js +1 -1
  139. package/editing/sharedTemplates/executor/builders/pointAtAllVerticesOfLine.js +1 -1
  140. package/editing/sharedTemplates/executor/builders/pointAtBeginningOfLine.js +1 -1
  141. package/editing/sharedTemplates/executor/builders/pointAtBeginningOfRadial.js +1 -1
  142. package/editing/sharedTemplates/executor/builders/pointAtEndOfLine.js +1 -1
  143. package/editing/sharedTemplates/executor/builders/pointAtInteriorVertices.js +1 -1
  144. package/editing/sharedTemplates/executor/builders/pointAtIntersectionVerticesOfLine.js +1 -1
  145. package/editing/sharedTemplates/executor/builders/pointAtNotBeginningOfLine.js +1 -1
  146. package/editing/sharedTemplates/executor/builders/pointAtNotEndOfLine.js +1 -1
  147. package/editing/sharedTemplates/executor/builders/pointAtPolygonCentroid.js +1 -1
  148. package/editing/sharedTemplates/executor/builders/pointAtPolygonNotStart.js +1 -1
  149. package/editing/sharedTemplates/executor/builders/pointAtPolygonStart.js +1 -1
  150. package/editing/sharedTemplates/executor/builders/pointIdentity.js +1 -1
  151. package/editing/sharedTemplates/executor/builders/pointPrimaryIdentity.js +1 -1
  152. package/editing/sharedTemplates/executor/builders/polygonBoundary.js +1 -1
  153. package/editing/sharedTemplates/executor/builders/polygonBoundaryTwoPoint.js +1 -1
  154. package/editing/sharedTemplates/executor/builders/polygonIdentity.js +1 -1
  155. package/editing/sharedTemplates/executor/builders/polygonPrimaryIdentity.js +1 -1
  156. package/editing/sharedTemplates/executor/builders/polygonVertices.js +1 -1
  157. package/editing/sharedTemplates/executor/builders/support/builderUtils.js +1 -1
  158. package/editing/sharedTemplates/executor/builders/twoPointLines.js +1 -1
  159. package/editing/sharedTemplates/executor/createTemplateExecutor.js +1 -1
  160. package/editing/sharedTemplates/executor/support/createServiceEdit.js +1 -1
  161. package/editing/sharedTemplates/executor/support/executorUtils.js +1 -1
  162. package/editing/sharedTemplates/templateDefinitions/GroupTemplateDefinition.js +1 -1
  163. package/editing/sharedTemplates/templateDefinitions/PresetTemplateDefinition.js +1 -1
  164. package/editing/sharedTemplates/templateDefinitions/parts/builders/builderUtils.js +1 -1
  165. package/editing/templateUtils.js +1 -1
  166. package/geometry/operators/extendOperator.js +1 -1
  167. package/geometry/operators/gx/operatorAlphaShape.js +1 -1
  168. package/geometry/operators/gx/operatorAutoComplete.js +1 -1
  169. package/geometry/operators/gx/operatorBuffer.js +1 -1
  170. package/geometry/operators/gx/operatorGraphicBuffer.js +1 -1
  171. package/geometry/operators/gx/operatorIntegrate.js +1 -1
  172. package/geometry/operators/gx/operatorLabelPoint.js +1 -1
  173. package/geometry/operators/gx/operatorLinesToPolygons.js +1 -1
  174. package/geometry/operators/gx/operatorOffset.js +1 -1
  175. package/geometry/operators/gx/operatorPolygonOverlay.js +1 -1
  176. package/geometry/operators/gx/operatorSimplify.js +1 -1
  177. package/geometry/operators/gx/operatorSymmetricDifference.js +1 -1
  178. package/geometry/operators/gx/operatorUnion.js +1 -1
  179. package/geometry/operators/isNearOperator.js +1 -1
  180. package/geometry/operators/json/disjointOperator.js +1 -1
  181. package/geometry/operators/projectOperator.js +1 -1
  182. package/geometry/operators/reshapeOperator.js +1 -1
  183. package/geometry/operators/shapePreservingProjectOperator.js +1 -1
  184. package/geometry/operators/support/apiConverter.js +1 -1
  185. package/geometry/operators/support/initNoPeFactory.js +1 -1
  186. package/geometry/operators/support/jsonConverter.js +1 -1
  187. package/geometry/support/DoubleArray.js +1 -1
  188. package/geometry/support/UCharArray.js +5 -0
  189. package/geometry/support/UShortArray.js +5 -0
  190. package/interfaces.d.ts +117 -67
  191. package/layers/VectorTileLayer.js +1 -1
  192. package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
  193. package/layers/mixins/operationalLayers.js +1 -1
  194. package/layers/save/featureLayerUtils.js +1 -1
  195. package/layers/save/utils.js +1 -1
  196. package/layers/support/SubtypeSublayer.js +1 -1
  197. package/layers/support/commonProperties.js +1 -1
  198. package/layers/support/rasterFunctions/stretchUtils.js +1 -1
  199. package/layers/support/wmsUtils.js +1 -1
  200. package/networks/Network.js +1 -1
  201. package/networks/RulesTable.js +1 -1
  202. package/networks/UtilityNetwork.js +1 -1
  203. package/networks/support/typeUtils.js +1 -1
  204. package/package.json +3 -3
  205. package/portal/Portal.js +1 -1
  206. package/renderers/support/RasterSymbolizer.js +1 -1
  207. package/rest/print.js +1 -1
  208. package/support/revision.js +1 -1
  209. package/views/2d/engine/webgl/AttributeStoreView.js +1 -1
  210. package/views/2d/engine/webgl/meshing/Mesh.js +1 -1
  211. package/views/2d/engine/webgl/shaderGraph/techniques/line/GradientStrokeTechnique.js +1 -1
  212. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  213. package/views/2d/layers/LayerView2D.js +1 -1
  214. package/views/2d/layers/MapNotesLayerView2D.js +1 -1
  215. package/views/2d/layers/RouteLayerView2D.js +1 -1
  216. package/views/2d/layers/features/FeatureContainer.js +1 -1
  217. package/views/2d/layers/features/FeaturePipelineWorker.js +1 -1
  218. package/views/2d/layers/features/sources/FeatureSource.js +1 -1
  219. package/views/2d/layers/features/sources/strategies/chunks/Overrides.js +1 -1
  220. package/views/2d/layers/features/sources/strategies/chunks/SourceChunkStore.js +1 -1
  221. package/views/2d/layers/features/support/FeatureSetReader.js +1 -1
  222. package/views/2d/layers/support/HighlightCounter.js +1 -1
  223. package/views/3d/analysis/DirectLineMeasurement/DirectLineMeasurementVisualization.js +1 -1
  224. package/views/3d/environment/ChapmanAtmosphere.js +1 -1
  225. package/views/3d/environment/EnvironmentManager.js +1 -1
  226. package/views/3d/environment/EnvironmentRenderer.js +1 -1
  227. package/views/3d/environment/Fog.js +1 -1
  228. package/views/3d/layers/I3SMeshView3D.js +1 -1
  229. package/views/3d/layers/MediaLayerView3D.js +1 -1
  230. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  231. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  232. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  233. package/views/3d/layers/graphics/Graphics3DLineCalloutSymbolLayer.js +1 -1
  234. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  235. package/views/3d/layers/graphics/GraphicsCorePerformanceInfo.js +1 -1
  236. package/views/3d/layers/i3s/I3SBinaryReader.js +1 -1
  237. package/views/3d/layers/i3s/I3SClientMaterialUtil.js +1 -1
  238. package/views/3d/layers/i3s/I3SIndex.js +1 -1
  239. package/views/3d/layers/i3s/I3SNodeLoader.js +1 -1
  240. package/views/3d/layers/i3s/PointCloudWorkerUtil.js +1 -1
  241. package/views/3d/layers/support/DefinitionExpressionSceneLayerView.js +1 -1
  242. package/views/3d/layers/support/HeatmapFeatureProcessor.js +1 -1
  243. package/views/3d/support/DisplayQualityProfile.js +1 -1
  244. package/views/3d/support/QualitySettings.js +1 -1
  245. package/views/3d/terrain/OverlayManager.js +1 -1
  246. package/views/3d/webgl-engine/effects/haze/Haze.js +1 -1
  247. package/views/3d/webgl-engine/lib/AnimationTimer.js +1 -1
  248. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  249. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  250. package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
  251. package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
  252. package/views/3d/webgl-engine/lib/Texture.js +1 -1
  253. package/views/3d/webgl-engine/lib/ViewshedShadowMap.js +1 -1
  254. package/views/3d/webgl-engine/lib/lodRendering/LodResources.js +1 -1
  255. package/views/3d/webgl-engine/lib/textureUtils.js +1 -1
  256. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  257. package/views/3d/webgl-engine/parts/ScreenshotManager.js +1 -1
  258. package/views/SceneView.js +1 -1
  259. package/views/layers/LayerView.js +1 -1
  260. package/views/support/Scheduler.js +1 -1
  261. package/views/webgl/Parameters.js +1 -1
  262. package/views/webgl/RenderingContext.js +1 -1
  263. package/widgets/AreaMeasurement2D/AreaMeasurement2DTool.js +1 -1
  264. package/widgets/AreaMeasurement2D/AreaMeasurement2DViewModel.js +1 -1
  265. package/widgets/AreaMeasurement2D.js +1 -1
  266. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  267. package/widgets/BatchAttributeForm/ReactiveGraphic.js +1 -1
  268. package/widgets/BatchAttributeForm/inputs/EditableInput.js +1 -1
  269. package/widgets/BatchAttributeForm/inputs/FieldInput.js +1 -1
  270. package/widgets/BatchAttributeForm/inputs/GroupInput.js +1 -1
  271. package/widgets/BatchAttributeForm/inputs/InputBase.js +1 -1
  272. package/widgets/BatchAttributeForm/inputs/support/inputUtils.js +1 -1
  273. package/widgets/BatchAttributeForm/templates/support/createBatchFormTemplate.js +1 -1
  274. package/widgets/BatchAttributeForm.js +1 -1
  275. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DTool.js +1 -1
  276. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DViewModel.js +1 -1
  277. package/widgets/DistanceMeasurement2D.js +1 -1
  278. package/widgets/Editor/AddAssociationWorkflow.js +5 -0
  279. package/widgets/Editor/AddAssociationWorkflowData.js +5 -0
  280. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  281. package/widgets/Editor/CreateFeaturesWorkflowData.js +1 -1
  282. package/widgets/Editor/EditorViewModel.js +1 -1
  283. package/widgets/Editor/UpdateWorkflow.js +1 -1
  284. package/widgets/Editor/UpdateWorkflowData.js +1 -1
  285. package/widgets/Editor/components/PendingFeatureList.js +1 -1
  286. package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
  287. package/widgets/Editor/modelUploadUtils.js +1 -1
  288. package/widgets/Editor/workflowUtils.js +1 -1
  289. package/widgets/Editor.js +1 -1
  290. package/widgets/Feature/FeatureUtilityNetworkAssociationList.js +1 -1
  291. package/widgets/Feature/FeatureUtilityNetworkAssociations.js +1 -1
  292. package/widgets/Feature/FeatureViewModel.js +1 -1
  293. package/widgets/Feature/support/featureUtils.js +1 -1
  294. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/FeatureFormUtilityNetworkAssociationList.js +1 -1
  295. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationItemList.js +5 -0
  296. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationSettings.js +5 -0
  297. package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
  298. package/widgets/FeatureForm/UtilityNetworkAssociationAddAssociationViewModel.js +5 -0
  299. package/widgets/FeatureForm/UtilityNetworkAssociationInput.js +1 -1
  300. package/widgets/FeatureForm.js +1 -1
  301. package/widgets/FeatureTable/support/FeatureStore.js +1 -1
  302. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  303. package/widgets/OrientedImageryViewer/constants.js +1 -1
  304. package/widgets/OrientedImageryViewer/galleryUtils.js +5 -0
  305. package/widgets/OrientedImageryViewer/utils.js +1 -1
  306. package/widgets/OrientedImageryViewer.js +1 -1
  307. package/widgets/Sketch/support/sketchUtils.js +1 -1
  308. package/widgets/UtilityNetworkAssociations/UtilityNetworkAssociationsViewModel.d.ts +2 -2
  309. package/widgets/support/FilterBuilder/FilterBuilderViewModel.js +1 -1
  310. package/widgets/support/FilterBuilder.js +1 -1
  311. package/widgets/support/FilterCondition/FilterConditionViewModel.js +1 -1
  312. package/widgets/support/FilterCondition.js +1 -1
  313. package/widgets/support/UtilityNetworkAssociations/FeatureUtilityNetworkAssociationsViewModel.js +5 -0
  314. package/widgets/support/UtilityNetworkAssociations/UtilityNetworkAssociationList.js +1 -1
  315. package/widgets/support/UtilityNetworkAssociations/utilityNetworkUtils.js +1 -1
  316. package/assets/esri/core/workers/chunks/08c4b585290efc98ca5d.js +0 -1
  317. package/assets/esri/core/workers/chunks/117e7a12af77c761efb5.js +0 -1
  318. package/assets/esri/core/workers/chunks/12199e8abf377ffc27cd.js +0 -1
  319. package/assets/esri/core/workers/chunks/324a5547c64a3bae670d.js +0 -1
  320. package/assets/esri/core/workers/chunks/3c8e5b5fb52611e30ed6.js +0 -1
  321. package/assets/esri/core/workers/chunks/4be5e453fe54f5631659.js +0 -1
  322. package/assets/esri/core/workers/chunks/5be7cf1564e756c24066.js +0 -1
  323. package/assets/esri/core/workers/chunks/5eceedac9b2b4d1ef133.js +0 -1
  324. package/assets/esri/core/workers/chunks/6c9bb00f33649ab59dab.js +0 -314
  325. package/assets/esri/core/workers/chunks/6d79ec15d1858839f576.js +0 -1
  326. package/assets/esri/core/workers/chunks/74e0116ae84def626c87.js +0 -1
  327. package/assets/esri/core/workers/chunks/7966c245a073c85f04b1.js +0 -1
  328. package/assets/esri/core/workers/chunks/7e3b374f906441cd7fb0.js +0 -1
  329. package/assets/esri/core/workers/chunks/84c1c3336011a1b79669.js +0 -1
  330. package/assets/esri/core/workers/chunks/88a34690480d3658bad8.js +0 -1
  331. package/assets/esri/core/workers/chunks/8bd51b5b392dfacc922f.js +0 -1
  332. package/assets/esri/core/workers/chunks/9c6380af3bc3130658e1.js +0 -1
  333. package/assets/esri/core/workers/chunks/9e7895e8201127ffe0a8.js +0 -1
  334. package/assets/esri/core/workers/chunks/a5e9ea13e844a62b2a7f.js +0 -1
  335. package/assets/esri/core/workers/chunks/a6ec3665bde2af8a96e6.js +0 -1
  336. package/assets/esri/core/workers/chunks/b18620fc15707e4413a1.js +0 -1
  337. package/assets/esri/core/workers/chunks/b765670b47d209d7655a.js +0 -2
  338. package/assets/esri/core/workers/chunks/c249ad935f54d3b49ae3.js +0 -1
  339. package/assets/esri/core/workers/chunks/c7927c2d5414f19defd5.js +0 -1
  340. package/assets/esri/core/workers/chunks/d27a199fd8e2ade69254.js +0 -1
  341. package/assets/esri/core/workers/chunks/debfb75a94b66b58cbbc.js +0 -1
  342. package/assets/esri/core/workers/chunks/e71b780d1e6a32f303b7.js +0 -1
  343. package/assets/esri/core/workers/chunks/f285ed5425b31123d2bc.js +0 -1
  344. package/assets/esri/core/workers/chunks/f9070edd8e0b2a57af79.js +0 -1
  345. package/assets/esri/core/workers/chunks/faf9063420262ea40fd8.js +0 -1
  346. package/chunks/Bufferer-DjC-SKTJ.js +0 -5
  347. package/chunks/Distance2DCalculator-8-JrFGHH.js +0 -5
  348. package/editing/sharedTemplates/support/sharedTemplateUtils.js +0 -5
  349. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/FeatureFormUtilityNetworkAssociationSettings.js +0 -5
  350. package/widgets/support/UtilityNetworkAssociations/UtilityNetworkAssociationsViewModel.d.ts +0 -4
  351. package/widgets/support/UtilityNetworkAssociations/UtilityNetworkAssociationsViewModel.js +0 -5
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1878],{55537:(t,s,i)=>{function e(t,s){try{if(!t)throw new Error(s)}catch(t){throw t}}i.d(s,{A:()=>y,B:()=>k,C:()=>F,D:()=>z,G:()=>l,a:()=>T,b:()=>P,c:()=>A,d:()=>Z,e:()=>x,f:()=>b,g:()=>e,h:()=>_,i:()=>v,j:()=>p,k:()=>g,l:()=>S,m:()=>E,n:()=>D,o:()=>w,p:()=>d,q:()=>f,r:()=>M,s:()=>q,t:()=>C,u:()=>I,v:()=>N,w:()=>L,x:()=>R,y:()=>B,z:()=>G});class n extends Error{constructor(t,s){super(s),this.m_AdditionalMessage=s,this.m_ErrorType=t,this.name="GeometryError"}what(){return function(t){switch(t){case 1:return"Unknown error";case 2:return"Corrupted geometry";case 3:return"Empty geometry";case 4:return"Math singularity";case 5:return"Buffer is too small";case 6:return"Invalid shape type";case 7:return"Projection out of supported range";case 8:return"Non simple geometry";case 9:return"Cannot calculate geodesic";case 10:return"Notation conversion";case 11:return"Missing grid file";case 12:return"Invalid call";case 13:return"Internal error";case 14:return"Not implemented";case 15:return"IO error";case 16:return"Invalid 3D";case 17:return"An ambiguous geography edge with antipodal points";case 18:return"Geocentric coordinates require ellipsoidal height";case 19:return"Geography cannot be projected into a gnomonic plane or a result of an operation cannot fit into a gnomonic plane";case 20:return"Geometry is too large to be exported in to a given format";case 22:return"Operation is canceled by the user";case 21:return"The operation, such as projection or geodetic computation, cannot be performed without pe-wasm loaded";default:return"unknown error"}}(this.m_ErrorType)}additionalMessage(){return this.m_AdditionalMessage?this.m_AdditionalMessage:""}code(){return this.m_ErrorType}}class r extends n{constructor(t){super(2,t),this.name="CorruptedGeometryError"}}class o extends n{constructor(t){super(3,t),this.name="EmptyGeometryError"}}class h extends n{constructor(t){super(4,t),this.name="MathSingularityError"}}class u extends n{constructor(t){super(21,t),this.name="ProjectionEngineNotLoadedError"}}class a extends n{constructor(t){super(8,t),this.name="NonSimpleGeometryError"}}var l,c;(c=l||(l={}))[c.enumUnknown=0]="enumUnknown",c[c.enumPoint=513]="enumPoint",c[c.enumLine=5122]="enumLine",c[c.enumBezier=5123]="enumBezier",c[c.enumEllipticArc=5124]="enumEllipticArc",c[c.enumEnvelope=3077]="enumEnvelope",c[c.enumMultiPoint=8710]="enumMultiPoint",c[c.enumPolyline=25607]="enumPolyline",c[c.enumPolygon=27656]="enumPolygon",c[c.enumMultipatch=40969]="enumMultipatch",c[c.enumGeometryCollection=3594]="enumGeometryCollection",c[c.enumRationalBezier2=5134]="enumRationalBezier2",c[c.enumBezier2=5135]="enumBezier2",c[c.enumRationalBezier23d=5392]="enumRationalBezier23d",c[c.enumGreatArc3d=5393]="enumGreatArc3d";const m=[0,0,1,1,1,2,0,1,2,3,-1,-1,-1,-1,1,1];function y(t){return m[15&t]}function x(t){return!!(512&t)}function f(t){return!!(1024&t)}function d(t){return!!(2048&t)}function b(t){return!!(4096&t)}function v(t){return!!(8192&t)}function _(t){return!!(16384&t)}function w(t){return!!(32768&t)}function N(t){const s=t.getGeometryType();return v(s)?t.getPointCount():t.isEmpty()?0:s===l.enumEnvelope?4:s===l.enumPoint?1:b(s)?2:void A("missing type")}function p(t){const s=t.getGeometryType();if(_(s))return t.hasNonLinearSegments();if(s===l.enumGeometryCollection){const s=t;for(let t=0,i=s.getGeometryCount();t<i;t++)if(p(s.getGeometry(t)))return!0;return!1}return!!b(s)&&s!==l.enumLine}function M(t){throw new u(t)}function g(t){throw new r(t)}function C(t){throw new Error(t)}function T(t){throw new h(t)}function R(){C("Geometry type is not supported for 3D operations.")}function E(t){throw new n(12,t)}function I(t){throw new o(t)}function P(t){throw new n(14,t)}function D(t){throw new Error(t)}function A(t){throw new n(13,t)}function q(t){throw new Error(t)}function z(t){throw new a(t)}function S(t){t&&p(t)&&P("Operation does not support curves.")}function Z(t){t&&w(t.getGeometryType())&&P("Unsupported geometry type.")}function F(t){t===l.enumGeometryCollection&&C("Geometry_collection instances are not supported in this operation")}function k(t){F(t.getGeometryType())}function B(t){C(`bad wkid: ${t}`)}function G(t){let s="bad wkt: ";s+=t,s+="...",C(s)}function L(t,s){t||C(s)}},83661:(t,s,i)=>{i.d(s,{$:()=>N,A:()=>ys,B:()=>at,C:()=>ft,D:()=>vs,E:()=>a,F:()=>c,G:()=>v,H:()=>b,I:()=>jt,J:()=>ws,K:()=>n,L:()=>Ct,M:()=>Ds,N:()=>_s,O:()=>It,P:()=>ks,Q:()=>z,R:()=>S,S:()=>Pt,T:()=>ut,U:()=>xt,V:()=>E,W:()=>I,X:()=>dt,Y:()=>Wt,Z:()=>Z,_:()=>w,a:()=>lt,a0:()=>P,a1:()=>D,a2:()=>A,a3:()=>Vt,a4:()=>At,a5:()=>gs,a6:()=>Es,a7:()=>Ts,a8:()=>Cs,a9:()=>et,aA:()=>_t,aB:()=>Fs,aC:()=>C,aD:()=>hs,aE:()=>$t,aF:()=>Gt,aG:()=>as,aH:()=>us,aa:()=>nt,ab:()=>pt,ac:()=>_,ad:()=>qs,ae:()=>As,af:()=>B,ag:()=>Ms,ah:()=>it,ai:()=>St,aj:()=>V,ak:()=>G,al:()=>Is,am:()=>bt,an:()=>bs,ao:()=>Jt,ap:()=>ct,aq:()=>os,ar:()=>ls,as:()=>Tt,at:()=>ms,au:()=>gt,av:()=>R,aw:()=>rs,ax:()=>ps,ay:()=>Zs,az:()=>Ss,b:()=>mt,c:()=>Ns,d:()=>Et,e:()=>L,f:()=>T,g:()=>ds,h:()=>wt,i:()=>Ht,j:()=>Xt,k:()=>qt,l:()=>zt,m:()=>Mt,n:()=>Dt,o:()=>st,p:()=>Rt,q:()=>q,r:()=>Yt,s:()=>k,t:()=>O,u:()=>vt,v:()=>yt,w:()=>Nt,x:()=>F,y:()=>p,z:()=>g});var e=i(55537);class n{constructor(t){this.sum=t,this.compensation=0}assign(t){return this.compensation=t.compensation,this.sum=t.sum,this}reset(){this.sum=this.compensation=0}resetToStart(t){this.sum=t,this.compensation=0}normalize(){const t=[Number.NaN];this.sum=tt(this.sum,this.compensation,t),this.compensation=t[0]}add(t){const s=this.sum+t;let i;if(Math.abs(this.sum)>=Math.abs(t)){const e=this.sum-s+t;i=this.compensation+e}else{const e=t-s+this.sum;i=this.compensation+e}this.sum=s,this.compensation=i}sub(t){this.add(-t)}addProduct(t,s){const i=[0],e=$(t,s,i);this.add(e),this.add(i[0])}mul(t){const s=new n(0);s.addProduct(this.sum,t),s.addProduct(this.compensation,t),this.assign(s)}getResult(){return this.sum+this.compensation}pe(t){return this.add(t),this}me(t){return this.add(-t),this}}const r=[5,1,2,1,3,1,2,1,4,1,2,1,3,1,2,1],o=[-1,0,1,1,2,2,2,2,3,3,3,3,3,3,3,3];function h(t){let s=0;return 65535n&t||(s+=16,t>>=16n),255n&t||(s+=8,t>>=8n),15n&t||(s+=4,t>>=4n),s+r[Number(BigInt.asUintN(4,t))]}function u(t){let s=0;return 4294967295n&t||(s=32,t>>=32n),s+h(BigInt.asUintN(32,t))}class a{constructor(t,s){if(this.m_EnvelopeType=1,void 0!==t){if(t instanceof a)return this.vmin=t.vmin,void(this.vmax=t.vmax);this.vmin=t,this.vmax=s,this.normalize()}else this.setEmpty()}static construct(t,s){return new a(t,s)}static constructEmpty(){return new a}setCoords(t,s){this.vmin=t,this.vmax=s,this.normalize()}setCoordsFromEnvelope(t){this.vmin=t.vmin,this.vmax=t.vmax}setEmpty(){this.vmin=Number.NaN,this.vmax=Number.NaN}getCenter(){return.5*(this.vmin+this.vmax)}equalsRange(t,s){return Vt(this.vmin,t)&&Vt(this.vmax,s)}equals(t,s){return!(!this.isEmpty()||!t.isEmpty())||(void 0!==s?Math.abs(this.vmin-t.vmin)<=s&&Math.abs(this.vmax-t.vmax)<=s:this.vmin===t.vmin&&this.vmax===t.vmax)}width(){return this.vmax-this.vmin}isEmpty(){return Number.isNaN(this.vmin)||Number.isNaN(this.vmax)}isZero(){return this.vmin===this.vmax}setInfinite(){this.vmin=Number.NEGATIVE_INFINITY,this.vmax=Number.POSITIVE_INFINITY}move(t){this.isEmpty()||(this.vmin+=t,this.vmax+=t)}contains(t){return t.vmin>=this.vmin&&t.vmax<=this.vmax}containsCoordinate(t){return t>=this.vmin&&t<=this.vmax}containsRightExclusive(t){return t>=this.vmin&&t<this.vmax}containsExclusiveCoordinate(t){return t>this.vmin&&t<this.vmax}containsExclusive(t){return t.vmin>this.vmin&&t.vmax<this.vmax}isIntersecting(t){return this.vmin<=t.vmin?this.vmax>=t.vmin:t.vmax>=this.vmin}mergeCoordinate(t){if(this.isEmpty())return this.vmin=t,void(this.vmax=t);this.mergeNeCoordinate(t)}merge(t){if(t.isEmpty())return;const s=t.vmin,i=t.vmax;this.mergeCoordinate(s),this.mergeCoordinate(i)}mergeNe(t){const s=t.vmin,i=t.vmax;this.mergeNeCoordinate(s),this.mergeNeCoordinate(i)}mergeNeCoordinate(t){t<this.vmin?this.vmin=t:t>this.vmax&&(this.vmax=t)}intersect(t){this.isEmpty()||t.isEmpty()?this.setEmpty():(this.vmin<t.vmin&&(this.vmin=t.vmin),this.vmax>t.vmax&&(this.vmax=t.vmax),this.vmin>this.vmax&&this.setEmpty())}inflate(t){this.isEmpty()||(this.vmin-=t,this.vmax+=t,this.vmax<this.vmin&&this.setEmpty())}normalize(){this.vmin<=this.vmax||(this.vmin>this.vmax?this.vmax=mt(this.vmin,this.vmin=this.vmax):this.setEmpty())}isValid(){return this.isEmpty()||this.vmin<=this.vmax}snapClip(t){return Ns(t,this.vmin,this.vmax)}calculateToleranceFromEnvelope(){return this.isEmpty()?ds():(Math.abs(this.vmin)+Math.abs(this.vmax)+1)*ds()}static unit(){return l}normalizeNoNAN(){this.vmin>this.vmax&&(this.vmax=mt(this.vmin,this.vmin=this.vmax))}setCoordsNoNAN(t,s){this.vmin=t,this.vmax=s,this.normalizeNoNAN()}clone(){return new a(this.vmin,this.vmax)}}const l=new a(0,1);class c{static getNAN(){return new c(Number.NaN)}constructor(t,s){this.m_value=t??0,this.m_eps=s??0}[Symbol.toPrimitive](t){return this}clone(){return new c(this.m_value,this.m_eps)}assign(t){return this.m_value=t.m_value,this.m_eps=t.m_eps,this}scaleError(t){this.m_eps*=t}setError(t){this.m_eps=t}set(t,s){return this.m_value=t,this.m_eps=s??0,this}setWithEps(t,s){return void 0===s&&(s=1),this.m_value=t,this.m_eps=c.ulp(t)*s,this}setE(t){return this.m_value=t.m_value,this.m_eps=t.m_eps,this}precise(){return new c(this.m_value)}value(){return this.m_value}toDouble(){return this.m_value}eps(){return this.m_eps}resetError(){return this.m_eps=0,this}absThis(){return this.m_value=Math.abs(this.m_value),this}add(t){return this.clone().addThis(t)}addE(t){return this.clone().addThisE(t)}addThisE(t){const s=this.m_value+t.m_value,i=this.m_eps+t.m_eps+c.ulp(s);return this.m_value=s,this.m_eps=i,this}addThis(t){const s=this.m_value+t,i=this.m_eps+c.ulp(s);return this.m_value=s,this.m_eps=i,this}subE(t){return this.clone().subThisE(t)}sub(t){return this.clone().subThis(t)}subThisE(t){const s=this.m_value-t.m_value,i=this.m_eps+t.m_eps+c.ulp(s);return this.m_value=s,this.m_eps=i,this}subThis(t){const s=this.m_value-t,i=this.m_eps+c.ulp(s);return this.m_value=s,this.m_eps=i,this}setAddE(t,s){return this.m_value=t.m_value+s.m_value,this.m_eps=t.m_eps+s.m_eps+c.ulp(this.m_value),this}setAdd(t,s){return this.m_value=t+s,this.m_eps=c.ulp(this.m_value),this}setAddEN(t,s){return this.m_value=t.m_value+s,this.m_eps=t.m_eps+c.ulp(this.m_value),this}setAddNE(t,s){return this.m_value=t+s.m_value,this.m_eps=s.m_eps+c.ulp(this.m_value),this}setSubE(t,s){return this.m_value=t.m_value-s.m_value,this.m_eps=t.m_eps+s.m_eps+c.ulp(this.m_value),this}setSub(t,s){return this.m_value=t-s,this.m_eps=c.ulp(this.m_value),this}setSubEN(t,s){return this.m_value=t.m_value-s,this.m_eps=t.m_eps+c.ulp(this.m_value),this}setSubNE(t,s){return this.m_value=t-s.m_value,this.m_eps=s.m_eps+c.ulp(this.m_value),this}mulThisE(t){const s=this.m_value*t.m_value;return this.m_eps=this.m_eps*Math.abs(t.m_value)+t.m_eps*Math.abs(this.m_value)+this.m_eps*t.m_eps+c.ulp(s),this.m_value=s,this}mulThis(t){const s=this.m_value*t;return this.m_eps=this.m_eps*Math.abs(t)+c.ulp(s),this.m_value=s,this}mul(t){return this.clone().mulThis(t)}mulE(t){return this.clone().mulThisE(t)}setMulE(t,s){const i=t.m_value*s.m_value;return this.m_eps=t.m_eps*Math.abs(s.m_value)+s.m_eps*Math.abs(t.m_value)+t.m_eps*s.m_eps+c.ulp(i),this.m_value=i,this}setMul(t,s){return this.m_value=t*s,this.m_eps=c.ulp(this.m_value),this}setMulEN(t,s){return this.setE(t),this.mulThis(s)}setMulNE(t,s){return this.setE(s),this.mulThis(t)}mulThisByPower2(t){return this.m_value*=t,this.m_eps*=Math.abs(t),this}static st_mulByPower2(t,s){return new c(t.m_value,t.m_eps).mulThisByPower2(s)}divE(t){return this.clone().divThisE(t)}divThisE(t){const s=Math.abs(t.m_value),i=this.m_value/t.m_value;let e=(this.m_eps+Math.abs(i)*t.m_eps)/s;if(t.m_eps>.01*s){const i=t.m_eps/s;e*=1+(1+i)*i}return this.m_value=i,this.m_eps=e+c.ulp(i),this}divThis(t){const s=Math.abs(t);return this.m_value/=t,this.m_eps=this.m_eps/s+c.ulp(this.m_value),this}setDivE(t,s){return this.setE(t),this.divThisE(s)}setDiv(t,s){return this.m_value=t/s,this.m_eps=c.ulp(this.m_value),this}setDivEN(t,s){return this.setE(t),this.divThis(s)}setDivNE(t,s){return this.set(t),this.divThisE(s)}divThisByPower2(t){return this.m_value/=t,this.m_eps/=Math.abs(t),this}invThis(){return this.setE(v.clone().divThisE(this)),this}sqrt(){return this.clone().sqrtThis()}sqrtThis(){let t,s;return this.m_value>=0?(t=Math.sqrt(this.m_value),s=this.m_value>10*this.m_eps?.5*this.m_eps/t:this.m_value>this.m_eps?t-Math.sqrt(this.m_value-this.m_eps):Math.max(t,Math.sqrt(this.m_value+this.m_eps)-t),s+=c.ulp(t)):this.m_value<-this.m_eps?(t=Number.NaN,s=Number.NaN):(t=0,s=Math.sqrt(this.m_eps)),this.m_value=t,this.m_eps=s,this}sqr(){return this.clone().sqrThis()}sqrThis(){const t=this.m_value*this.m_value;return this.m_eps=2*this.m_eps*Math.abs(this.m_value)+this.m_eps*this.m_eps+c.ulp(t),this.m_value=t,this}setSin(t){const s=Math.sin(t.m_value),i=Math.cos(t.m_value);this.m_value=s;const e=Math.abs(s),n=Math.abs(t.value());return this.m_eps=(Math.abs(i)+.5*e*t.m_eps)*t.m_eps+c.ulp(e+n),this}static ulp(t){let s=Lt(t);const i=((0x7ff0000000000000n&s)>>52n)-1075n;return i>-1023n?(s=i+0x3ffn<<52n,function(t){return kt[0]=t,Ft[0]}(s)):0===t?0:Number.MIN_VALUE}setCos(t){const s=Math.sin(t.m_value),i=Math.cos(t.m_value);this.m_value=i;const e=Math.abs(i),n=Math.abs(t.value());return this.m_eps=(Math.abs(s)+.5*e*t.m_eps)*t.m_eps+c.ulp(e+n),this}static st_cosAndSin(t,s,i){const e=Math.sin(t.m_value),n=Math.cos(t.m_value);i.m_value=e,s.m_value=n;const r=Math.abs(e),o=Math.abs(n),h=Math.abs(t.value());i.m_eps=(Math.abs(n)+.5*r*t.m_eps)*t.m_eps+c.ulp(r+h),s.m_eps=(Math.abs(e)+.5*o*t.m_eps)*t.m_eps+c.ulp(o+h)}negate(){return this.clone().negateThis()}negateThis(){return this.m_value=-this.m_value,this}setAbs(){return this.m_value=Math.abs(this.m_value),this}isInInterval(t){return a.construct(this.m_value-this.m_eps,this.m_value+this.m_eps).isIntersecting(t)}eq(t){return Math.abs(this.m_value-t.m_value)<=this.m_eps+t.m_eps}ne(t){return!this.eq(t)}gt(t){return this.m_value-t.m_value>this.m_eps+t.m_eps}lt(t){return t.m_value-this.m_value>this.m_eps+t.m_eps}ge(t){return!this.lt(t)}le(t){return!this.gt(t)}tolEQ(t,s){return Math.abs(this.m_value-t.m_value)<=s||this.eq(t)}tolNE(t,s){return!this.tolEQ(t,s)}tolGT(t,s){return this.m_value-t.m_value>s&&this.gt(t)}tolLT(t,s){return t.m_value-this.m_value>s&&this.lt(t)}tolGE(t,s){return!this.tolLT(t,s)}tolLE(t,s){return!this.tolGT(t,s)}isZero(){return Math.abs(this.m_value)<=this.m_eps}isFuzzyZero(){return this.isZero()&&0!==this.m_eps}tolIsZero(t){return Math.abs(this.m_value)<=Math.max(this.m_eps,t)}setPi(){this.setE(d)}setEuler(){this.set(2.718281828459045,f())}static size(){return 1}}function m(t,s){const i=Ot(t),e=Ot(s),n=53-u(i),r=53-u(e);return(n>=0?n:0)+(r>=0?r:0)<=52}function y(t,s){const i=t+s;return i-t===s&&i-s===t}function x(t,s){const i=t-s;return t-i===s&&s+i===t}function f(){return _s()}c.dimensions=1;const d=new c(Math.PI,.5*f()),b=new c(0,0),v=new c(1,0),_=new c(4,0);function w(t,s,i){return t.addE(s.subE(t).mulE(i))}function N(t,s,i){return s.subE(s.subE(t).mulE(v.subE(i)))}function p(t){let s;if(0===t)s=1;else if(Math.abs(t)>.01)s=function(t){return Math.atanh(t)}(t)/t;else{let i;const e=-36.841361487904734;s=0;const n=t*t;for(let t=2*Math.trunc(e/Math.log(n)+2.5)-1;t>1;t-=2)i=1/t,s=(s+i)*n;s+=1}return s}function M(t){const s=Math.PI*Math.PI/6;let i;if(1===t)i=s;else if(t>1)i=s;else if(0===t)i=t;else if(t<0){const s=1+(t=Math.abs(t)),e=Math.log(s);i=e*e/-2-M(t/s)}else if(t>.5){const e=1-t,n=Math.log(t)*Math.log(e);i=s-M(e)-n}else{i=0;const s=1+Math.trunc(-16*Math.log(10)/Math.log(t)+1.5);let e=s;for(let n=s;n>0;n--,e-=1)i*=t,i+=1/(e*e);i*=t}return i}function g(t,s){const i=s*t;if(Math.abs(s)<.1){let s=0;for(let t=60;t>=1;t--)s*=i,s+=1/t/t;return s*=t,s}return M(i)/s}function C(t,s){return t<s?Dt(t,s):Dt(s,t)}function T(t,s){const i=Math.abs(t);return s>=0?i:-i}function R(t){return Math.round(t)}function E(t,s,i,e,n){n[0]=s[0]+(i[0]-s[0])*e,n[1]=s[1]+(i[1]-s[1])*e,3===t&&(n[2]=s[2]+(i[2]-s[2])*e)}function I(t,s,i,e,n){n[0]=i[0]-(i[0]-s[0])*(1-e),n[1]=i[1]-(i[1]-s[1])*(1-e),3===t&&(n[2]=i[2]-(i[2]-s[2])*(1-e))}function P(t,s,i,e,n){e<=.5?E(t,s,i,e,n):I(t,s,i,e,n)}function D(t,s,i,e,n){n[0]=s[0].addE(i[0].subE(s[0]).mulE(e)),n[1]=s[1].addE(i[1].subE(s[1]).mulE(e))}function A(t,s,i,e,n){n[0]=i[0].subE(i[0].subE(s[0]).mulE(v.subE(e))),n[1]=i[1].subE(i[1].subE(s[1]).mulE(v.subE(e)))}function q(t,s,i){let e;return e=i<=.5?t+(s-t)*i:s-(s-t)*(1-i),e}function z(t,s,i){return t+(s-t)*i}function S(t,s,i){return s-(s-t)*(1-i)}function Z(t,s,i,e){i<=.5?(e.x=t.x+(s.x-t.x)*i,e.y=t.y+(s.y-t.y)*i):(e.x=s.x-(s.x-t.x)*(1-i),e.y=s.y-(s.y-t.y)*(1-i))}function F(t,s,i,e){i<=.5?(e.x=t.x+(s.x-t.x)*i,e.y=t.y+(s.y-t.y)*i,e.z=t.z+(s.z-t.z)*i):(e.x=s.x-(s.x-t.x)*(1-i),e.y=s.y-(s.y-t.y)*(1-i),e.z=s.z-(s.z-t.z)*(1-i))}function k(t){return t*t}function B(t){return t*t*t}function G(t){return 1/Math.sqrt(t)}function L(t){return t<0?-1:t>0?1:0}function O(t,s,i,e){const n=[0],r=[0],o=[0];return tt($(t,i,n),$(s,e,r),o)+(n[0]+r[0]+o[0])}const U=[0],Q=[0];function V(t,s,i){return function(t,s,i,e){const n=tt(t,s,J),r=tt(n,i,K);return tt(r,J[0]+K[0],e)}($(t,s,U),i,U[0],Q)}const j=[0],W=[0],Y=[0],X=[0];function $(t,s,i){const e=t*s;return H(t,j,W),H(s,Y,X),i[0]=W[0]*X[0]-(e-j[0]*Y[0]-W[0]*Y[0]-j[0]*X[0]),e}function H(t,s,i){const e=134217729*t;s[0]=e-(e-t),i[0]=t-s[0]}const J=[0],K=[0];function tt(t,s,i){const e=t+s;return Math.abs(t)>Math.abs(s)?i[0]=t-e+s:i[0]=s-e+t,e}function st(t,s){return t%s}function it(t){const s=1-t;if(0===s)return 1;let i;if(s<=.01){const t=s,e=Math.log(t);i=1+t*(.4431471805599453-.25*e+t*(.05680519270997949-.09375*e+t*(.02183137044373718-.05859375*e+t*(.011544521417308362-.042724609375*e+t*(.00714200031339596-.0336456298828125*e+t*(.004854743337164948-.027757644653320312*e+t*(.003514687963781376-.023627042770385742*e)))))))}else{if(t<.016){const s=t,i=.25,e=.046875,n=.01953125,r=.01068115234375,o=.0067291259765625,h=.004626274108886719,u=.0033752918243408203,a=.0025710230693221092;return Ts()*(1-s*(i+s*(e+s*(n+s*(r+s*(o+s*(h+s*(u+s*a))))))))}i=rt(0,s,1)-t*ot(0,s,1)/3}return Ns(i,1,Ts())}function et(t,s,i=Number.NaN){if((0,e.g)(s>=0&&s<=1),0===s)return t;let n=1,r=t;if(r<0&&(r=-r,n=-1),1===s){const t=Math.round(r/gs()),s=r-t*gs();return n*(2*t+Math.sin(s))}const o=Ts(),h=Math.floor(r/o);1&h?r=(h+1)*o-r:r-=h*o;const u=Math.sin(r),a=Number.isNaN(i)?it(s):i;let l;if(1===u)l=a+Math.sqrt(1-s)*(r-o);else{const t=r*r;if(.01424*Math.pow(t,4)<=2*_s())l=r*(1+t*s*(-1/6+t*((4-3*s)/120-(16+(45*s-60)*s)/5040*t)));else if(s<=.01){const t=Math.sin(2*r),i=Math.sin(4*r),e=Math.sin(6*r),n=Math.sin(8*r),o=Math.sin(10*r);l=r+s*((2*-r+t)/8+s*((-3*r+2*t-.25*i)/64+s*((-20*r+15*t-3*i+e/3)/1024+s*(5*(-140*r+112*t-28*i+16/3*e-.5*n)/65536+7*s*((-63*r+52.5*t-15*i+3.75*e-.625*n+.05*o)/65536+s*(-693*r+594*t-185.625*i+1.375*e-12.375*n+1.8*o-.125*Math.sin(12*r))/1048576)))))}else{const t=u*u,i=Math.cos(r),e=i*i,n=ht(u,i,s);l=u*(rt(e,n,1)-s*t*ot(e,n,1)/3)}}return 1&h?l=a*(h+1)-l:l+=a*h,n*l}function nt(t,s,i=Number.NaN){if(0===t)return 0;let e=1,n=t;t<0&&(n=-n,e=-1);const r=Number.isNaN(i)?it(s):i,o=Math.floor(n/r);1&o?n=(o+1)*r-n:n-=o*r;let h=n<=0?0:n>=r?Ts():function(t,s,i){if(0===s)return t;if(1===s)return Math.asin(t);let e=0,n=!0;if(t<.2){const i=t*t,r=t*(1+i*s*(1/6+i*((13*s-4)/120+(16-284*s+493*s*s)/5040*i))),o=Math.abs(s*(4944*s-64-31224*s*s+37369*s*s*s)/362880*Math.pow(t,9));if(o<Math.abs(r)*_s())return r;e=r,n=o>.1*r}if(n){const n=1-s,r=1-t/i,o=Math.sqrt(r*r+n*n),h=Math.atan2(n,t+_s());e=Ts()+Math.sqrt(o)*(h-Ts())}let r=0;for(let n=0;n<7;n++){r=et(e,s,i);const o=ht(Math.sin(e),Math.cos(e),s);if(e-=(r-t)/Math.sqrt(o),n>0&&Math.abs(r-t)<=4*_s()*t)break}return e}(n,s,r);return 1&o?h=Ts()*(o+1)-h:h+=Ts()*o,e*h}function rt(t,s,i){(0,e.g)((0!==t?1:0)+(0!==s?1:0)+1>1);let n=t,r=s,o=i;for(;;){const t=Math.sqrt(n*r)+Math.sqrt(r*o)+Math.sqrt(o*n);n=.25*(n+t),r=.25*(r+t),o=.25*(o+t);const s=(n+r+o)/3,i=(s-n)/s,e=(s-r)/s,h=(s-o)/s;if(Math.abs(i)<=.0024&&Math.abs(e)<=.0024&&Math.abs(h)<=.0024){const t=i*e-h*h,n=i*e*h;return(1+(1/24*t-.1-3/44*n-5*t*t/208+t*n/16)*t+(1/14+3*n/104)*n)/Math.sqrt(s)}}}function ot(t,s,i){(0,e.g)(0!==t||0!==s);let r=t,o=s,h=i;const u=new n(0);let a=1;for(;;){const t=.2*(r+o+3*h),s=(t-r)/t,i=(t-o)/t,e=(t-h)/t;if(Math.abs(s)<=.0015&&Math.abs(i)<=.0015&&Math.abs(e)<=.0015){const n=s*i,r=e*e,o=n-r,h=n-6*r,l=h+o+o,c=3/26,m=h*(9/22*.25*h-.21428571428571427-1.5*c*e*l),y=e*(1/6*l+e*(-.4090909090909091*o+e*c*n));return 3*u.getResult()+a*(1+m+y)/(t*Math.sqrt(t))}const n=Math.sqrt(r),l=Math.sqrt(o),c=Math.sqrt(h),m=n*(l+c)+l*c;u.add(a/(c*(h+m))),a*=.25,r=.25*(r+m),o=.25*(o+m),h=.25*(h+m)}}function ht(t,s,i){return t<.999?1-i*k(t):1-i+i*k(s)}function ut(t,s,i,n,r){return 0===t?0===n?s:1===n?i:r:1===t?0===n?s:1===n?i:q(s,i,n):(2===t&&(0,e.b)("angular interpolation"),void(0,e.b)(""))}function at(t,s,i,n,r,o,h,u){if(0===t)for(let t=0;t<o;++t)n[t+r]=0===h?s[t]:1===h?i[t]:u;else if(1===t)if(0===h)lt(n,s,r,0,o);else if(1===h)lt(n,i,r,0,o);else for(let t=0;t<o;++t)n[t+r]=q(s[t],i[t],h);else if(2===t)if(0===h)lt(n,s,r,0,o);else if(1===h)lt(n,i,r,0,o);else{let t=0;for(let e=0,u=r;e<o;++e,++u)n[u]=q(s[e],i[e],h),t+=n[u]*n[u];if(t>0){t=Math.sqrt(t);for(let s=r;s<r+o;++s)n[s]/=t}else{for(let t=r;t<r+o;++t)n[t]=0;n[r]=1}}else(0,e.b)("")}function lt(t,s,i,e,n){if(0===n)return;let r=0,o=i,h=e;for(;r++<n;)t[o++]=s[h++]}function ct(t,s,i){let e=0;for(let n=0;!e&&n<i;++n)e=t[n]-s[n];return e}function mt(t,s){return t}function yt(t){t.sort(((t,s)=>t<s?-1:t>s?1:0))}function xt(t,s){const i=t.slice(0,s);yt(i),lt(t,i,0,0,s)}function ft(t,s,i,e){const n=t.slice(s,s+i);n.sort(e),lt(t,n,s,0,i)}function dt(t,s){return t<s?-1:t>s?1:0}function bt(t,s,i,e){return t<i?-1:t>i?1:s<e?-1:s>e?1:0}function vt(t,s){if(t.length<2)return t.length;let i=0;for(let e=1;e<t.length;++e)s(t[e],t[i])||(i++,t[e]=mt(t[i],t[i]=t[e]));return 1+i}function _t(t,s){t[s]=t.at(-1),t.pop()}function wt(t,s=!1){return{[Symbol.dispose](){this.bForget||t()},bForget:s}}function Nt(t,s,i){t.length=s,t.fill(i)}function pt(t,s,i){t.length=i;for(let e=0;e<i;++e)t[e]=new s}function Mt(t,s){const i=new Array(s);for(let e=0;e<s;++e)i[e]=new t;return i}function gt(t,s,i){for(let e=0;e<i;++e)t[e].assign(s[e]);return i}function Ct(t,s){const i=t.slice(0,s);for(let t=0;t<s;++t)i[t]=i[t].clone();return i}function Tt(t){return Array.from({length:t},(()=>null))}function Rt(t,s){return Array.from({length:s},(()=>t()))}function Et(t,s){const i=new Array(t);return i.fill(s),i}function It(t,s){return s in t&&1===Object.getOwnPropertyNames(t).length}class Pt{constructor(...t){this.m_elts=t}get length(){return this.m_elts.length}at(t){return this.m_elts[t]}[Symbol.dispose](){for(const t of this.m_elts)t[Symbol.dispose]()}}function Dt(t,s){return{first:t,second:s}}const At=Math.PI,qt=2*Math.PI,zt=.5*Math.PI;class St{constructor(t,s){this.m_cr=t,this.m_cc=s,this.m_v=Et(t*s,0)}get(t,s){return this.m_v[t*this.m_cc+s]}set(t,s,i){this.m_v[t*this.m_cc+s]=i}inc(t,s){return++this.m_v[t*this.m_cc+s]}}const Zt=new ArrayBuffer(8),Ft=new Float64Array(Zt),kt=new BigUint64Array(Zt),Bt=0x0fffffffffffffn;function Gt(){return Number.EPSILON*fs}function Lt(t){return Ft[0]=t,kt[0]}function Ot(t){return Lt(t)&Bt}function Ut(t){return Number((9218868437227405312n&Lt(t))>>52n)}function Qt(t){if(0n===t)return-1n;if(1n===t||-1n===t)return 0n;t<0n&&(t=-t);let s=0n,i=512n,e=1n<<s+i;for(;t>=e;)s+=i,i<<=1n,e<<=i;let n=s;i>>=1n;let r=n+i;for(;i>0n;)t<1n<<r||(n=r),i>>=1n,r=n+i;return n}function Vt(t,s){return t===s||Number.isNaN(t)&&Number.isNaN(s)}function jt(t,s,i){return t===s||Math.abs(t-s)<=i||Number.isNaN(t)&&Number.isNaN(s)}function Wt(t,s){return t<s?-1:t>s?1:0}function Yt(t,s){if(t<s)return-1;if(t>s)return 1;if(t===s)return 0;{const i=Number.isNaN(t),e=Number.isNaN(s);return i<e?-1:i>e?1:0}}function Xt(){return 2147483647}function $t(){return 32767}function Ht(){return 2147483647}function Jt(){return-2147483648}const Kt=2147483647,ts=BigInt(Kt),ss=2166136261,is=16777619,es=14695981039346656037n,ns=1099511628211n;function rs(t){let s=ss;for(let i=0,e=t.length;i<e;++i)s=(s^t.charCodeAt(i))*is;return s&Kt}function os(t,s){return s+2654435769+(t<<6)+(t>>2)&Kt}function hs(t,s){return os(t,cs(s))}function us(t){return os(3735928559,t)}function as(t,s){return os(t,us(s))}function ls(t){return function(t){let s=ss,i=t;return s=(s^255&i)*is,i>>=8,s=(s^255&i)*is,i>>=8,s=(s^255&i)*is,i>>=8,s=(s^255&i)*is,s&Kt}(t)}function cs(t){return Number(function(t){let s=es,i=t;return s=(s^0xffn&i)*ns,i>>=8n,s=(s^0xffn&i)*ns,i>>=8n,s=(s^0xffn&i)*ns,i>>=8n,s=(s^0xffn&i)*ns,i>>=8n,s=(s^0xffn&i)*ns,i>>=8n,s=(s^0xffn&i)*ns,i>>=8n,s=(s^0xffn&i)*ns,s&ts}(t))}function ms(t){return cs(Lt(function(t){return Is(t)}(t)))}function ys(t){return function(t){return 1103515245*t+12345&2147483647}(t)}const xs=100,fs=100;function ds(){return Number.EPSILON*xs}function bs(){return.38196601125010515}function vs(){return 1.4142135623730951}function _s(){return Number.EPSILON}function ws(t,s,i){return t===s||t===i}function Ns(t,s,i){return t>=s?t<=i?t:i:s}function ps(t,s,i){const e=t[0];if(e>=s){if(e<=i)return!1;t[0]=i}else t[0]=s;return!0}function Ms(t,s){return t>=s?s:t<-s?-s:t}function gs(){return At}function Cs(){return qt}function Ts(){return zt}const Rs=3*Ts();function Es(){return Rs}function Is(t){return t+0}function Ps(t){return{v:t}}class Ds{constructor(){this.m_rn=Ps(0n),this.m_rd=Ps(1n),this.m_bNaN=!1,this.m_bNormalized=!1,this.m_power=0,this.m_sign=0}static constructAssign(t,s){const i=t.clone();return void 0!==s&&i.limitPrecisionThis(s),i}static constructDouble(t){return(new Ds).setDouble(t)}static constructInt64(t){return(new Ds).setInt64(t)}static constructRational(t,s){return(new Ds).setRational(t,s)}static constructInt32(t){return this.constructInt64(BigInt(Math.trunc(t)))}[Symbol.toPrimitive](t){return this}compare(t){return this.lt(t)?-1:this.gt(t)?1:0}assignCopy(t){return this.setThis(t)}abs(){return this.clone().absThis()}absThis(){return this.isNAN()||(this.m_sign*=this.m_sign),this}clone(){return(new Ds).setThis(this)}setThis(t){return this.m_bNaN=t.m_bNaN,this.m_bNormalized=t.m_bNormalized,this.m_rn.v=t.m_rn.v,this.m_rd.v=t.m_rd.v,this.m_power=t.m_power,this.m_sign=t.m_sign,this}setZero(){return this.m_rn.v=0n,this.m_rd.v=1n,this.m_bNaN=!1,this.m_power=0,this.m_bNormalized=!0,this.m_sign=0,this}setDouble(t){if(this.setZero(),0===t)return this;if(Number.isInteger(t)&&Math.abs(t)<2147483647)return this.setInt32(t);const s=Lt(t),i=(s&Ds.s_em)>>52n,n=!!(s&Ds.s_sm),r=s&Ds.s_fm;if(i===Ds.s_emax)return r?(this.m_rn.v=this.m_rd.v=0n,this.m_bNaN=!0,this):(this.m_rn.v=n?-1n:1n,this.m_rd.v=0n,this);0n===i&&(0,e.b)("denormalized numbers not yet implemented");const o=i-1023n,h=o>=0n?o:0n,u=o<0n?-o:0n;return this.m_rn.v=(1n<<52n|r)<<h,this.m_rd.v=1n<<52n+u,this.m_sign=n?-1:1,this.m_bNormalized=!1,this.normalizeThis()}setInt64(t){return 0n===t?this.setZero():(this.m_bNaN=!1,this.m_sign=t>0n?1:-1,this.m_rn.v=t>0n?t:-t,this.m_rd.v=1n,this.m_power=0,this.m_bNormalized=!1,this.normalizeThis())}setRational(t,s){return 0n===t?0n===s?this.setNAN():this.setZero():0n===s?t>0n?this.setPositiveInf():this.setNegativeInf():(this.m_sign=(t>0n?1:-1)*(s>0n?1:-1),this.m_rn.v=t>0n?t:-t,this.m_rd.v=s>0n?s:-s,this.m_power=0,this.m_bNormalized=!1,this.normalizeThis())}setInt32(t){return this.setInt64(BigInt(Math.trunc(t)))}getDouble(){return this.convertToDouble()}toDouble(){return this.convertToDouble()}value(){return this.convertToDouble()}isNAN(){return this.m_bNaN}isPositiveInf(){return!this.isNAN()&&0n===this.m_rd.v&&1===this.m_sign}isNegativeInf(){return!this.isNAN()&&0n===this.m_rd.v&&-1===this.m_sign}isFinite(){return!this.isNAN()&&0n!==this.m_rd.v}setNAN(){return this.m_bNaN=!0,this.m_rn.v=0n,this.m_rd.v=0n,this.m_power=0,this.m_bNormalized=!0,this}setPositiveInf(){return this.m_rn.v=1n,this.m_rd.v=0n,this.m_bNaN=!1,this.m_bNormalized=!0,this.m_sign=1,this.m_power=0,this}setNegativeInf(){return this.m_rn.v=1n,this.m_rd.v=0n,this.m_bNaN=!1,this.m_bNormalized=!0,this.m_sign=-1,this.m_power=0,this}subThis(t){if(t.isNAN()&&this.setNAN(),this.isPositiveInf()&&t.isPositiveInf())this.setNAN();else{if(this.isPositiveInf()&&t.isNegativeInf())return this.setPositiveInf(),this;if(this.isNegativeInf()&&t.isNegativeInf())this.setNAN();else if(this.isNegativeInf()&&t.isPositiveInf())return this.setNegativeInf(),this}return this.isNAN()?this:this.opPlusMinus(t,!1)}thisSubAbs(t){return(0,e.g)(0),this}mulThis(t){return t.isNAN()&&this.setNAN(),this.isNAN()?this:(this.m_sign*=t.m_sign,0===this.m_sign?this.setZero():(this.m_rn.v*=t.m_rn.v,this.m_rd.v*=t.m_rd.v,this.m_power+=t.m_power,this.m_bNormalized=!1,this.normalizeThis(),this))}mulDoubleThis(t){return this.mulThis(Ds.constructDouble(t))}thisMulInt64(t){return(0,e.g)(0),this}thisMulInt32(t){return(0,e.g)(0),this}divThis(t){return this.mulThis(t.clone().invertThis())}divDoubleThis(t){return this.divThis(Ds.constructDouble(t))}addDoubleThis(t){return this.addThis(Ds.constructDouble(t))}subDoubleThis(t){return this.subThis(Ds.constructDouble(t))}mul(t){return this.clone().mulThis(t)}mulBigIntThis(t){return this.mulThis(Ds.constructInt64(t))}mulDouble(t){return this.clone().mulThis(Ds.constructDouble(t))}div(t){return this.clone().divThis(t)}divDouble(t){return this.clone().divDoubleThis(t)}add(t){return this.clone().addThis(t)}fmSubThis(t,s){return this.subThis(t.clone().mulThis(s))}fmAddThis(t,s){return this.addThis(t.clone().mulThis(s))}addThis(t){if(t.isNAN()&&this.setNAN(),this.isPositiveInf()&&t.isPositiveInf())return this.setPositiveInf(),this;if(this.isPositiveInf()&&t.isNegativeInf())this.setNAN();else{if(this.isNegativeInf()&&t.isNegativeInf())return this.setNegativeInf(),this;this.isNegativeInf()&&t.isPositiveInf()&&this.setNAN()}return this.isNAN()?this:this.opPlusMinus(t,!0)}addDouble(t){return this.clone().addThis(Ds.constructDouble(t))}sub(t){return this.clone().subThis(t)}subDouble(t){return this.clone().subThis(Ds.constructDouble(t))}isZero(){return 0===this.m_sign}equals(t){return this.clone().subThis(t).isZero()}lt(t){return!this.isNAN()&&!t.isNAN()&&!(this.isPositiveInf()&&t.isPositiveInf()||this.isNegativeInf()&&t.isNegativeInf())&&!this.isPositiveInf()&&(!!t.isPositiveInf()||this.clone().sub(t).LZ())}absLessAbs(t){return this.abs().lt(t.abs())}gt(t){return this.clone().sub(t).GZ()}lte(t){return this.sub(t).LEZ()}gte(t){return this.sub(t).GEZ()}normalizeThis(){if(this.m_bNormalized)return this;if(0n===this.m_rn.v)return this.setZero();let t=0,s=0xffffffffn;for(;0n===(this.m_rn.v&s)&&s<=this.m_rn.v;)s<<=32n,t+=32;s&=this.m_rn.v,s>>=BigInt(t),t+=h(BigInt.asUintN(32,s))-1;let i=0;for(s=0xffffffffn;0n===(this.m_rd.v&s)&&s<=this.m_rd.v;)s<<=32n,i+=32;return s&=this.m_rd.v,s>>=BigInt(i),i+=h(BigInt.asUintN(32,s))-1,this.m_rn.v>>=BigInt(t),this.m_rd.v>>=BigInt(i),this.m_power+=t-i,this.m_rn.v>1n&&this.m_rd.v>1n&&(this.m_rn.v%this.m_rd.v===0n?(this.m_rn.v/=this.m_rd.v,this.m_rd.v=1n):this.m_rd.v%this.m_rn.v===0n&&(this.m_rd.v/=this.m_rn.v,this.m_rn.v=1n)),this.m_bNormalized=!0,this}negateThis(){return this.isNAN()||(this.m_sign*=-1),this}negate(){return this.clone().negateThis()}invertThis(){return this.isNAN()?this:this.isPositiveInf()||this.isNegativeInf()?(this.setZero(),this):0n===this.m_rn.v?(this.setPositiveInf(),this):(this.m_rd=mt(this.m_rn,this.m_rn=this.m_rd),this.m_power=-this.m_power,this)}limitPrecisionThis(t){if(0===t)return this;if(this.isZero())return this.setZero();if(!this.isFinite())return this;this.normalizeThis();let s=Number(Qt(this.m_rn.v));if(s>t){const i=s-t;this.m_rn.v>>=BigInt(s-t),this.m_power+=i}if(s=Number(Qt(this.m_rd.v)),s>t){const i=s-t;this.m_rd.v>>=BigInt(s-t),this.m_power-=i}return this}hiBitIndex(){return Math.max(Number(Qt(this.m_rn.v)),Number(Qt(this.m_rd.v)))}ldexp(t){return this.clone().ldexpThis(t)}ldexpThis(t){return t&&(this.m_bNormalized=!1,this.m_power+=t,this.normalizeThis()),this}LZ(){return!this.isNAN()&&-1===this.m_sign}GZ(){return!this.isNAN()&&1===this.m_sign}LEZ(){return!this.isNAN()&&this.m_sign<=0}GEZ(){return!this.isNAN()&&this.m_sign>=0}toString(){return this.toDouble().toString()}sqr(){return this.clone().sqrThis()}sqrThis(){return this.mulThis(this.clone())}static sqrt(t,s){if(t.m_sign<0n&&(0,e.n)("MP_value: sqrt(-1)"),t.isZero())return t.clone();let i=52,n=2220446049250313e-31;for(;i<s;)2*i<=s?(n*=n,i*=2):(n*=2220446049250313e-31,i+=52);i+=52;const r=Qt(t.m_rn.v),o=Qt(t.m_rd.v);let h,u=t.m_power+Number(r-o);const a=new Ds;Math.abs(u)>200?(1&Math.abs(u)&&(u+=1),h=Ds.constructAssign(t,53).ldexpThis(-u).value(),a.setThis(t).ldexpThis(-u),(0,e.g)(Number.isFinite(h))):(a.setThis(t),h=a.value(),(0,e.g)(Number.isFinite(h)),u=0),h=Math.sqrt(h);const l=Ds.constructDouble(h),c=Ds.constructDouble(n);c.mulThis(l).ldexpThis(1);const m=n*h*2,y=l.clone(),x=new Ds;let f;for(let t=0;t<10;++t){y.mulThis(l),x.setThis(a).subThis(y).absThis();let t=x.value();if(f=1,t<.9)for(;t>m;)t*=t,++f;else f=4;if(x.lte(c))break;for(let t=0;t<f;t++)y.setThis(l).divThis(a).invertThis().addThis(l).ldexpThis(-1).limitPrecisionThis(i),l.setThis(y)}return l.ldexpThis(u/2)}static cubicRoot(t,s){if(t.isZero())return t.clone();let i=52,e=2220446049250313e-31;for(;i<s;)2*i<=s?(e*=e,i*=2):(e*=2220446049250313e-31,i+=52);i+=52;const n=Math.pow(Math.abs(t.value()),1/3),r=Ds.constructDouble(n),o=r.clone();o.sqrThis().mulDoubleThis(3).mulDoubleThis(e),o.limitPrecisionThis(32),t.LZ()&&r.negateThis();for(let s=0;s<10;++s){const s=r.clone();s.sqrThis().mulThis(r);const e=s.clone();if(e.subThis(t),e.absThis().limitPrecisionThis(32),e.lte(o))break;e.setThis(t),e.ldexpThis(1),e.addThis(s);const n=s.clone();n.ldexpThis(1),n.addThis(t),e.divThis(n),r.mulThis(e),r.limitPrecisionThis(i)}return r}isInTheRangeOfDouble(){return(0,e.g)(0),!1}sign(){return this.m_sign}cosAndSin(t,s){(0,e.g)(0)}static nan(){return(0,e.g)(0),new Ds}convertToDouble(){if(this.m_bNaN)return Number.NaN;if(this.isZero())return 0;if(0n===this.m_rd.v)return 1===this.m_sign?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY;const t=-1===this.m_sign,s=this.m_rn.v<<(this.m_power>=0?BigInt(this.m_power):0n);let i=this.m_rd.v<<(this.m_power<0?BigInt(-this.m_power):0n);const e=s/i;let n=Number(e);if(BigInt(n)!==e)return t?-n:n;let r=s-e*i;if(r){let t=Qt(i)-1023n;t>0n&&(i>>=t,r<<=52n,r>>=t);let s=Number(r);Number.isFinite(s)||(r>>=52n,s=Number(r),t=0n),t>0n&&(s/=Math.pow(2,52)),n+=s/Number(i)}return t?-n:n}signVal(){return 1===this.m_sign?1n:-1===this.m_sign?-1n:0n}opPlusMinus(t,s){const i=Math.min(this.m_power,t.m_power);let e,n;this.m_power>i?(e=BigInt(this.m_power-i),n=0n):(e=0n,n=BigInt(t.m_power-i));const r=this.signVal()*this.m_rn.v*t.m_rd.v<<e,o=t.signVal()*t.m_rn.v*this.m_rd.v<<n;return this.m_rn.v=s?r+o:r-o,this.m_rd.v*=t.m_rd.v,this.m_power=i,this.m_sign=1,this.m_rn.v<0n&&(this.m_sign=-1,this.m_rn.v=-this.m_rn.v),this.m_bNormalized=!1,this.normalizeThis(),this}}Ds.s_sm=0x8000000000000000n,Ds.s_em=0x7ff0000000000000n,Ds.s_fm=0x000fffffffffffffn,Ds.s_emax=0x7ffn;const As=Ds.constructInt32(1),qs=Ds.constructInt32(0);function zs(t,s){let i=Ut(t);const e=Ut(s);return i===e?(i-=53-function(t,s){return function(t){let s=0;return 0xffffffff00000000n&t&&(s=32,t>>=32n),s+function(t){let s=0;return 4294901760n&t&&(s+=16,t>>=16n),65280n&t&&(s+=8,t>>=8n),240n&t&&(s+=4,t>>=4n),s+o[Number(BigInt.asUintN(4,t))]+1}(t)}(t^s)}(Ot(t),Ot(s)),i):i>e?i:e}function Ss(t,s){for(let i=0,e=0,n=t.length;i<n;i+=2,e++)s[e].x=t[i],s[e].y=t[i+1]}function Zs(t){const s=new Float64Array(2*t.length);for(let i=0,e=t.length;i<e;++i){const e=i<<1;s[e]=t[i].x,s[e+1]=t[i].y}return s}function Fs(t){const s=Mt(ks,t.length);for(let i=0,e=t.length;i<e;++i)s[i].setCoords(t[i][0],t[i][1]);return s}class ks{static construct(t,s){return new ks(t,s)}constructor(t,s){void 0!==t?(this.x=t,this.y=s):this.x=this.y=Number.NaN}clone(){return new ks(this.x,this.y)}assign(t){this.setCoordsPoint2D(t)}setCoords(t,s){return this.x=t,this.y=s,this}setCoordsPoint2D(t){this.x=t.x,this.y=t.y}isEqualPoint2D(t,s){return void 0!==s?Math.abs(this.x-t.x)<=s&&Math.abs(this.y-t.y)<=s:this.x===t.x&&this.y===t.y}isEqual(t,s,i){return void 0!==i?Math.abs(this.x-t)<=i&&Math.abs(this.y-s)<=i:this.x===t&&this.y===s}equalsPoint2D(t,s){return this.isEqualPoint2D(t,s)}setSub(t,s){this.x=t.x-s.x,this.y=t.y-s.y}addThis(t){return this.x+=t.x,this.y+=t.y,this}setAdd(t,s){return this.x=t.x+s.x,this.y=t.y+s.y,this}absoluteOther(t){}absolute(){return(0,e.g)(0),this}setNegate(){this.x=-this.x,this.y=-this.y}setNegateOther(t){this.x=-t.x,this.y=-t.y}interpolateThis(t,s){}interpolate(t,s,i){(0,e.g)(0)}scaleAddThis(t,s){this.x=this.x*t+s.x,this.y=this.y*t+s.y}setScaleAdd(t,s,i){this.x=s.x*t+i.x,this.y=s.y*t+i.y}scaleOther(t,s){(0,e.g)(0)}scale(t){this.x*=t,this.y*=t}compare(t){return this.y<t.y?-1:this.y>t.y?1:this.x<t.x?-1:this.x>t.x?1:0}compareX(t){return this.x<t.x?-1:this.x>t.x?1:this.y<t.y?-1:this.y>t.y?1:0}normalizeOther(t){(0,e.g)(0)}normalize(){const t=this.length();return t?(this.x/=t,this.y/=t):(this.x=1,this.y=0),this}getUnitVector(){return this.clone().normalize()}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}sqrLength(){return this.x*this.x+this.y*this.y}static averageFast(t,s){return(0,e.g)(0),{}}static average(t,s){const i=new ks;if(0===s)return i.setNAN(),i;if(1===s)return i.assign(t[0]),i;const e=new n(t[0].x),r=new n(t[0].y);for(let i=1;i<s;i++)e.add(t[i].x),r.add(t[i].y),255&i||(e.normalize(),r.normalize());return i.x=e.getResult()/s,i.y=r.getResult()/s,i}offset(t,s){const i=ks.distance(t,s),e=ks.construct(this.x,this.y);if(0===i)return ks.distance(e,t);const n=s.clone();return n.subThis(t),e.subThis(t),e.crossProduct(n)/i}side(t,s){return t.equals(s)?this.equals(t)?0:1:ks.orientationRobust(s,t,this)}static sqrDistance(t,s){const i=t.x-s.x,e=t.y-s.y;return i*i+e*e}static sqrDistanceCoords(t,s,i,e){const n=i-t,r=e-s;return n*n+r*r}static distance(t,s){return Math.sqrt(ks.sqrDistance(t,s))}dotProduct(t){return this.x*t.x+this.y*t.y}dotProductAbs(t){return Math.abs(this.x*t.x)+Math.abs(this.y*t.y)}crossProduct(t){return this.x*t.y-this.y*t.x}crossProductAbs(t){return(0,e.g)(0),0}rotateDirect(t,s){const i=this.x*t-this.y*s,e=this.x*s+this.y*t;this.x=i,this.y=e}rotateReverse(t,s){const i=this.x*t+this.y*s,e=-this.x*s+this.y*t;this.x=i,this.y=e}leftPerpendicularThis(){const t=this.x;this.x=-this.y,this.y=t}leftPerpendicularOther(t){const s=t.x;this.x=-t.y,this.y=s}rightPerpendicularThis(){const t=this.x;this.x=this.y,this.y=-t}rightPerpendicularOther(t){const s=t.x;this.x=t.y,this.y=-s}equals(t){return this.x===t.x&&this.y===t.y}notequals(t){return this.x!==t.x||this.y!==t.y}not(){return!this.x&&!this.y}gt(t){return this.y>t.y||this.y===t.y&&this.x>t.x}gte(t){return!this.lt(t)}lt(t){return this.y<t.y||this.y===t.y&&this.x<t.x}lte(t){return!this.gt(t)}subThis(t){return this.x-=t.x,this.y-=t.y,this}divThis(t){return this.x/=t,this.y/=t,this}add(t){return new ks(this.x+t.x,this.y+t.y)}sub(t){return new ks(this.x-t.x,this.y-t.y)}negateThis(){return this.x=-this.x,this.y=-this.y,this}negate(){return new ks(-this.x,-this.y)}mul(t){return new ks(this.x*t,this.y*t)}mulThis(t){return this.x*=t,this.y*=t,this}divide(t){return new ks(this.x/t,this.y/t)}setNAN(){this.x=this.y=Number.NaN}isNAN(){return Number.isNaN(this.x)||Number.isNaN(this.y)}static getNAN(){return new ks(Number.NaN,Number.NaN)}isFinite(){return Number.isFinite(this.x)&&Number.isFinite(this.y)}isZero(){return 0===this.x&&0===this.y}norm(t){switch(t){case 0:{const t=Math.abs(this.x),s=Math.abs(this.y),i=t-s;return i>=0?t:i<=0?s:Number.NaN}case 1:return Math.abs(this.x)+Math.abs(this.y);case 2:return Math.sqrt(this.x*this.x+this.y*this.y);default:(0,e.t)("norm")}}getQuarter(){return ks.getQuarterCoords(this.x,this.y)}static getQuarterCoords(t,s){return t>0?s>=0?1:4:s>0?2:0===t?4:3}static compareVectors(t,s){const i=t.getQuarter(),e=s.getQuarter();return e===i?ks.orientationRobustImpl(ks.construct(0,0),s,t,!0):i<e?-1:1}static compareVectorsOrigin(t,s,i){const e=s.sub(t),n=i.sub(t),r=e.getQuarter(),o=n.getQuarter();return o===r?ks.orientationRobustImpl(t,i,s,!0):r<o?-1:1}static orientationRobust(t,s,i){return ks.orientationRobustImpl(t,s,i,!1)}static orientationRobustEx(t,s,i,e){if(t.equals(s)||i.equals(e))return 0;const n=s.x-t.x,r=s.y-t.y,o=e.x-i.x,h=e.y-i.y;{const t=ks.getQuarterCoords(n,r)-1,s=ks.getQuarterCoords(o,h)-1,i=ks.d[t][s];if(0!==i)return i}const u=n*h,a=r*o,l=4*_s()*(Math.abs(u)+Math.abs(a)),c=u-a;return Math.abs(c)>=l?c<0?-1:c>0?1:0:ks.orientationRobustExMp(t,s,i,e)}static orientationRobustExMp(t,s,i,e){const n=Ds.constructDouble(s.x),r=Ds.constructDouble(e.x);n.subThis(Ds.constructDouble(t.x)),r.subThis(Ds.constructDouble(i.x));const o=Ds.constructDouble(s.y),h=Ds.constructDouble(e.y);return o.subThis(Ds.constructDouble(t.y)),h.subThis(Ds.constructDouble(i.y)),n.mulThis(h),o.mulThis(r),n.subThis(o),n.LZ()?-1:n.GZ()?1:0}static orientationNonRobust(t,s,i){const e=s.sub(t).crossProduct(i.sub(t));return e<0?-1:e>0?1:0}static orientationRobustImpl(t,s,i,e){if(s.isEqualPoint2D(t)||i.isEqualPoint2D(t)||s.isEqualPoint2D(i))return 0;const n=s.x-t.x,r=s.y-t.y,o=i.x-t.x,h=i.y-t.y;if(!e){const t=ks.getQuarterCoords(n,r)-1,s=ks.getQuarterCoords(o,h)-1,i=ks.d[t][s];if(0!==i)return i}const u=(Math.abs(n)+Math.abs(r)+Math.abs(o)+Math.abs(h))*(Math.abs(s.x)+Math.abs(s.y)+Math.abs(i.x)+Math.abs(i.y))*8*f(),a=n*h-r*o;if(Math.abs(a)>u)return a<0?-1:1;if(x(s.x,t.x)&&x(i.y,t.y)&&x(s.y,t.y)&&x(i.x,t.x)&&m(n,h)&&m(r,o)){const t=n*h,s=r*o;if(x(t,s)){const i=t-s;return i<0?-1:i>0?1:0}}return ks.orientationRobustMp(t,s,i)}static orientationRobustMp(t,s,i){const e=Ds.constructDouble(s.x),n=Ds.constructDouble(i.x);{const s=Ds.constructDouble(t.x);e.subThis(s),n.subThis(s)}const r=Ds.constructDouble(i.y),o=Ds.constructDouble(s.y);{const s=Ds.constructDouble(t.y);r.subThis(s),o.subThis(s)}return e.mulThis(r),o.mulThis(n),e.subThis(o),e.LZ()?-1:e.GZ()?1:0}static inCircleRobust(t,s,i,e){const n=new c,r=new c;n.set(t.x),n.subThis(e.x),r.set(t.y),r.subThis(e.y);const o=new c,h=new c;o.set(s.x),o.subThis(e.x),h.set(s.y),h.subThis(e.y);const u=new c,a=new c;u.set(i.x),u.subThis(e.x),a.set(i.y),a.subThis(e.y);const l=n.mulE(h).subE(r.mulE(o)),m=o.mulE(a).subE(h.mulE(u)),y=n.mulE(a).subE(r.mulE(u)),x=n.mulE(n).addE(r.mulE(r)),f=o.mulE(o).addE(h.mulE(h)),d=u.mulE(u).addE(a.mulE(a)),b=x.mulE(m).subE(f.mulE(y)).addE(d.mulE(l));if(!b.isFuzzyZero()){const t=b.value();return t<0?-1:t>0?1:0}return ks.inCircleRobustMp(t,s,i,e)}static inCircleRobustMp(t,s,i,e){do{if(!x(t.x,e.x)||!x(t.y,e.y))break;if(!x(s.x,e.x)||!x(s.y,e.y))break;if(!x(i.x,e.x)||!x(i.y,e.y))break;const n=t.x-e.x,r=t.y-e.y,o=s.x-e.x,h=s.y-e.y,u=i.x-e.x,a=i.y-e.y;if(!m(n,h)||!m(r,o))break;if(!m(o,a)||!m(h,u))break;if(!m(n,a)||!m(r,u))break;if(!m(n,n)||!m(r,r))break;if(!m(o,o)||!m(h,h))break;if(!m(u,u)||!m(a,a))break;const l=n*h,c=r*o,f=o*a,d=h*u,b=n*a,v=r*u,_=n*n,w=r*r,N=o*o,p=h*h,M=u*u,g=a*a;if(!x(l,c))break;if(!x(f,d))break;if(!x(b,v))break;if(!y(_,w))break;if(!y(N,p))break;if(!y(M,g))break;const C=l-c,T=f-d,R=b-v,E=_+w,I=N+p,P=M+g;if(!m(E,T))break;if(!m(I,R))break;if(!m(P,C))break;const D=E*T,A=I*R,q=P*C;if(!x(D,A))break;const z=D-A;if(!y(z,q))break;const S=z+q;return S<0?-1:S>0?1:0}while(0);const n=Ds.constructDouble(e.x),r=Ds.constructDouble(e.y),o=Ds.constructDouble(t.x),h=Ds.constructDouble(t.y);o.subThis(n),h.subThis(r);const u=Ds.constructDouble(s.x),a=Ds.constructDouble(s.y);u.subThis(n),a.subThis(r);const l=Ds.constructDouble(i.x),c=Ds.constructDouble(i.y);l.subThis(n),c.subThis(r);const f=o.mul(a).sub(h.mul(u)),d=u.mul(c).sub(a.mul(l)),b=o.mul(c).sub(h.mul(l)),v=o.mul(o).add(h.mul(h)),_=u.mul(u).add(a.mul(a)),w=l.mul(l).add(c.mul(c)),N=v.mul(d).sub(_.mul(b)).add(w.mul(f));return N.LZ()?-1:N.GZ()?1:0}static inCircleRobustMp3Point(t,s,i){const e=Ds.constructDouble(t.x),n=Ds.constructDouble(t.y),r=Ds.constructDouble(s.x),o=Ds.constructDouble(s.y),h=Ds.constructDouble(i.x),u=Ds.constructDouble(i.y),a=h.mul(h).add(u.mul(u)).sub(h.mul(e).add(u.mul(n)).add(h.mul(r)).add(u.mul(o))).add(e.mul(r).add(n.mul(o)));return a.LZ()?-1:a.GZ()?1:0}static inCircleRobust3Point(t,s,i){const e=new c(t.x),n=new c(t.y),r=new c(s.x),o=new c(s.y),h=new c(i.x),u=new c(i.y),a=h.mulE(h).addE(u.mulE(u)).subE(h.mulE(e).addE(u.mulE(n)).addE(h.mulE(r)).addE(u.mulE(o))).addE(e.mulE(r).addE(n.mulE(o)));if(!a.isFuzzyZero()){const t=a.value();return t<0?-1:t>0?1:0}return ks.inCircleRobustMp3Point(t,s,i)}static calculateCircleCenterFromThreePoints(t,s,i){if(t.equals(i)||t.equals(s)||i.equals(s))return ks.getNAN();const e=function(t,s,i){const e=new c(s.x);e.subThis(t.x);const n=new c(s.y);n.subThis(t.y);const r=new c(i.x);r.subThis(t.x);const o=new c(i.y);o.subThis(t.y);const h=e.clone();h.mulThisE(o);let u=n.clone();if(u.mulThisE(r),h.subThisE(u),0===h.value())return ks.getNAN();h.mulThis(2);const a=e.clone();a.mulThisE(e);const l=n.clone();l.mulThisE(n);const m=a.clone();m.addThisE(l);const y=r.clone();y.mulThisE(r);const x=o.clone();x.mulThisE(o);const f=y.clone();f.addThisE(x);const d=n.clone();d.mulThisE(f),u=o.clone(),u.mulThisE(m),d.subThisE(u),d.divThisE(h);const b=e.clone();b.mulThisE(f),u=r.clone(),u.mulThisE(m),b.subThisE(u),b.divThisE(h);const v=ks.construct(t.x-d.value(),t.y+b.value()),_=t.sub(v).length(),w=s.sub(v).length(),N=i.sub(v).length(),p=1e-15*(_+Math.abs(t.x)+Math.abs(s.x)+Math.abs(i.x)+Math.abs(t.y)+Math.abs(s.y)+Math.abs(i.y));return Math.abs(_-w)<=p&&Math.abs(_-N)<=p&&d.eps()<p&&b.eps()<p?v:ks.getNAN()}(t,s,i);return e.isNAN()?function(t,s,i){const e=Ds.constructDouble(s.x);e.subDoubleThis(t.x);const n=Ds.constructDouble(s.y);n.subDoubleThis(t.y);const r=Ds.constructDouble(i.x);r.subDoubleThis(t.x);const o=Ds.constructDouble(i.y);o.subDoubleThis(t.y);const h=e.clone();h.mulThis(o);let u=n.clone();if(u.mulThis(r),h.subThis(u),h.isZero())return ks.getNAN();h.mulDoubleThis(2);const a=e.clone();a.mulThis(e);const l=n.clone();l.mulThis(n);const c=a.clone();c.addThis(l);const m=r.clone();m.mulThis(r);const y=o.clone();y.mulThis(o);const x=m.clone();x.addThis(y);const f=n.clone();f.mulThis(x),u=o.clone(),u.mulThis(c),f.subThis(u),f.divThis(h);const d=e.clone();return d.mulThis(x),u=r.clone(),u.mulThis(c),d.subThis(u),d.divThis(h),ks.construct(t.x-f.value(),t.y+d.value())}(t,s,i):e}static calculateAngle(t,s){return Math.atan2(t.crossProduct(s),t.dotProduct(s))}static isBisectorRobust(t,s,i){return(0,e.g)(0),!1}static size(){return 2}get 0(){return this.x}get 1(){return this.y}set 0(t){this.x=t}set 1(t){this.y=t}static compareZorder(t,s){const i=ks.c_compare_zorder_xx[t.x<0?1:0]|ks.c_compare_zorder_yy[t.y<0?1:0],e=ks.c_compare_zorder_xx[s.x<0?1:0]|ks.c_compare_zorder_yy[s.y<0?1:0];if(i===e){let i=0,e=0;for(let n=0;n<2;++n){const r=zs(t[n],s[n]);r>i&&(i=r,e=n)}return t[e]<s[e]}return i<e}static lerp(t,s,i){const e=new ks;return Z(t,s,i,e),e}static getClosestCoordinate(t,s,i,e=!1){const n=ks.getNAN();n.setSub(s,t);const r=n.sqrLength();if(0===r)return.5;if(s.isEqualPoint2D(i))return 1;const o=ks.getNAN();o.setSub(i,t);let h=o.dotProduct(n)/r;return e||(h<0?h=0:h>1&&(h=1)),h}static intersectLinesAtOnePoint(t,s,i,e){if(t.equals(s)||i.equals(e))return ks.getNAN();const n=s.x-t.x,r=i.x-e.x,o=s.y-t.y,h=i.y-e.y,u=n*h-r*o;if(!u)return ks.getNAN();const a=u;if(0===a)return ks.getNAN();let l=(i.x-t.x)*h-(i.y-t.y)*r;l/=a;const c=new ks;return Z(t,s,l,c),c.isFinite()?c:ks.getNAN()}toString(){return`[${this.x},${this.y}]`}}ks.dimensions=2,ks.d=[[0,1,0,-1],[-1,0,1,0],[0,-1,0,1],[1,0,-1,0]],ks.c_compare_zorder_xx=[2,0],ks.c_compare_zorder_yy=[1,0]},11878:(t,s,i)=>{i.d(s,{T:()=>h});var e=i(55537),n=i(83661);class r{constructor(t,s,i){if(t instanceof r)return this.data=t.data,this.N=t.N,this.M=t.M,t.data=null,t.N=0,void(t.M=0);this.data=t,this.N=s,this.M=i}assignCopy(t){return this===t||((0,e.g)(this.N*this.M==t.N*t.M),this.data.set(t.data),this.N=t.N,this.M=t.M),this}setZero(){return this.data?.fill(0),this}setIdentity(){for(let t=0;t<this.N;t++)for(let s=0;s<this.M;s++)this.setRowCol(t,s,t===s?1:0);return this}rows(){return this.N}cols(){return this.M}row(t){return(0,e.g)(0),{}}set(t,s){return this.data[t]=s,this}setRowCol(t,s,i){return this.data[t*this.M+s]=i,this}at(t){return this.data[t]}atRowCol(t,s){return this.data[t*this.M+s]}mulScalar(t,s){(0,e.g)(0)}mul(t,s){if((0,e.g)(this.M===t.rows()),(0,e.g)(this.N===s.rows()),(0,e.g)(t.cols()===s.cols()),s===this){const i=new Float64Array(this.N*this.M),e=new r(i,this.N,this.M);return this.mul(t,e),void s.assignCopy(e)}if(s===t){const i=new Float64Array(t.N*t.M),e=new r(i,t.N,t.M);return this.mul(t,e),void s.assignCopy(e)}const i=t.cols();for(let e=0;e<this.N;e++)for(let n=0;n<i;n++){let i=0;for(let s=0;s<this.M;s++)i+=this.atRowCol(e,s)*t.atRowCol(s,n);s.setRowCol(e,n,i)}}mulTranspose(t,s){if((0,e.g)(this.M===t.cols()),(0,e.g)(this.N===s.rows()),(0,e.g)(t.rows()===s.cols()),s===this){const i=new Float64Array(this.N*this.M),e=new r(i,this.N,this.M);return this.mulTranspose(t,e),void s.assignCopy(e)}if(s===t){const i=new Float64Array(t.N*t.M),e=new r(i,t.N,t.M);return this.mulTranspose(t,e),void s.assignCopy(e)}const i=t.rows();for(let e=0;e<this.N;e++)for(let n=0;n<i;n++){let i=0;for(let s=0;s<this.M;s++)i+=this.atRowCol(e,s)*t.atRowCol(n,s);s.setRowCol(e,n,i)}}mulLeft(t,s){(0,e.g)(0)}mulLeftTranspose(t,s){(0,e.g)(0)}mulDiag(t,s){if((0,e.g)(this.M===t.N*t.M),(0,e.g)(this.N===s.rows()),(0,e.g)(this.M===s.cols()),s===this){const i=new Float64Array(this.N*this.M),e=new r(i,this.N,this.M);return this.mulDiag(t,e),void s.assignCopy(e)}const i=this.M;for(let e=0;e<this.N;e++)for(let n=0;n<i;n++)s.setRowCol(e,n,this.atRowCol(e,n)*t.at(n))}transposeInPlace(){if(this.N===this.M){for(let t=0;t<this.N;t++)for(let s=t+1;s<this.M;s++){const i=this.atRowCol(t,s);this.setRowCol(t,s,this.atRowCol(s,t)),this.setRowCol(s,t,i)}return this}const t=new Float64Array(this.N*this.M),s=new r(t,this.N,this.M);return s.assignCopy(this),this.M=(0,n.b)(this.N,this.N=this.M),s.transpose(this),this}transpose(t){if(this!==t){r.checkDims(t,this.M,this.N);for(let s=0;s<this.N;s++)for(let i=0;i<this.M;i++)t.setRowCol(i,s,this.atRowCol(s,i))}else t.transposeInPlace()}add(t,s){}svd(t,s,i,n=!1){if(r.checkDims(t,this.N,this.M),r.checkDims(s,this.M,1),r.checkDims(i,this.M,this.M),n){if((0,e.g)(this.N===this.M),!this.symmetricEigen(s,i))return!1;for(let t=0;t<this.M;++t)s.at(t)<0&&s.set(t,0);return t.assignCopy(i),!0}let o,h,u,a,l,c,m,y=0,x=0,f=0,d=0,b=0;const v=this.M,_=this.N;t.assignCopy(this);const w=new Float64Array(v),N=new r(w,v,1),p=(t,s)=>s>=0?Math.abs(t):-Math.abs(t),M=(t,s)=>{if((t=Math.abs(t))>(s=Math.abs(s))){const i=s/t;return t*Math.sqrt(i*i+1)}if(s>0){const i=t/s;return s*Math.sqrt(i*i+1)}return 0};for(let i=0;i<v;i++){if(y=i+1,N.set(i,d*f),f=a=d=0,i<_){for(let s=i;s<_;s++)d+=Math.abs(t.atRowCol(s,i));if(d){for(let s=i;s<_;s++)t.setRowCol(s,i,t.atRowCol(s,i)/d),a+=t.atRowCol(s,i)*t.atRowCol(s,i);h=t.atRowCol(i,i),f=-p(Math.sqrt(a),h),u=h*f-a,t.setRowCol(i,i,h-f);for(let s=y;s<v;s++){a=0;for(let e=i;e<_;e++)a+=t.atRowCol(e,i)*t.atRowCol(e,s);h=a/u;for(let e=i;e<_;e++)t.setRowCol(e,s,t.atRowCol(e,s)+h*t.atRowCol(e,i))}for(let s=i;s<_;s++)t.setRowCol(s,i,t.atRowCol(s,i)*d)}}if(s.set(i,d*f),f=a=d=0,i<_&&i!==v-1){for(let s=y;s<v;s++)d+=Math.abs(t.atRowCol(i,s));if(d){for(let s=y;s<v;s++)t.setRowCol(i,s,t.atRowCol(i,s)/d),a+=t.atRowCol(i,s)*t.atRowCol(i,s);h=t.atRowCol(i,y),f=-p(Math.sqrt(a),h),u=h*f-a,t.setRowCol(i,y,h-f);for(let s=y;s<v;s++)N.set(s,t.atRowCol(i,s)/u);for(let s=y;s<_;s++){a=0;for(let e=y;e<v;e++)a+=t.atRowCol(s,e)*t.atRowCol(i,e);for(let i=y;i<v;i++)t.setRowCol(s,i,t.atRowCol(s,i)+a*N.at(i))}for(let s=y;s<v;s++)t.setRowCol(i,s,t.atRowCol(i,s)*d)}}const e=Math.abs(s.at(i))+Math.abs(N.at(i));b=e>b?e:b}for(let s=v-1;s>=0;s--){if(s<v-1){if(f){for(let e=y;e<v;e++)i.setRowCol(e,s,t.atRowCol(s,e)/t.atRowCol(s,y)/f);for(let e=y;e<v;e++){a=0;for(let n=y;n<v;n++)a+=t.atRowCol(s,n)*i.atRowCol(n,e);for(let t=y;t<v;t++)i.setRowCol(t,e,i.atRowCol(t,e)+a*i.atRowCol(t,s))}}for(let t=y;t<v;t++)i.setRowCol(s,t,0),i.setRowCol(t,s,0)}i.setRowCol(s,s,1),f=N.at(s),y=s}for(let i=(_<v?_:v)-1;i>=0;i--){y=i+1,f=s.at(i);for(let s=y;s<v;s++)t.setRowCol(i,s,0);if(f){f=1/f;for(let s=y;s<v;s++){a=0;for(let e=y;e<_;e++)a+=t.atRowCol(e,i)*t.atRowCol(e,s);h=a/t.atRowCol(i,i)*f;for(let e=i;e<_;e++)t.setRowCol(e,s,t.atRowCol(e,s)+h*t.atRowCol(e,i))}for(let s=i;s<_;s++)t.setRowCol(s,i,t.atRowCol(s,i)*f)}else for(let s=i;s<_;s++)t.setRowCol(s,i,0);t.setRowCol(i,i,t.atRowCol(i,i)+1)}for(let e=v-1;e>=0;e--)for(let n=1;;n++){let r=1;for(y=e;y>=0;y--){if(x=y-1,Math.abs(N.at(y))+b===b){r=0;break}if(Math.abs(s.at(x))+b===b)break}if(r){o=0,a=1;for(let i=y;i<=e&&(h=a*N.at(i),N.set(i,N.at(i)*o),Math.abs(h)+b!==b);i++){f=s.at(i),u=M(h,f),s.set(i,u),u=1/u,o=f*u,a=-h*u;for(let s=0;s<_;s++)c=t.atRowCol(s,x),m=t.atRowCol(s,i),t.setRowCol(s,x,c*o+m*a),t.setRowCol(s,i,m*o-c*a)}}if(m=s.at(e),y===e){if(m<0){s.set(e,-m);for(let t=0;t<v;t++)i.setRowCol(t,e,-i.atRowCol(t,e))}break}if(100===n)return!1;l=s.at(y),x=e-1,c=s.at(x),f=N.at(x),u=N.at(e),h=((c-m)*(c+m)+(f-u)*(f+u))/(2*u*c),f=M(h,1),h=((l-m)*(l+m)+u*(c/(h+p(f,h))-u))/l,o=a=1;for(let e=y;e<=x;e++){const n=e+1;f=N.at(n),c=s.at(n),u=a*f,f*=o,m=M(h,u),N.set(e,m),o=h/m,a=u/m,h=l*o+f*a,f=f*o-l*a,u=c*a,c*=o;for(let t=0;t<v;t++)l=i.atRowCol(t,e),m=i.atRowCol(t,n),i.setRowCol(t,e,l*o+m*a),i.setRowCol(t,n,m*o-l*a);m=M(h,u),s.set(e,m),m&&(m=1/m,o=h*m,a=u*m),h=o*f+a*c,l=o*c-a*f;for(let s=0;s<_;s++)c=t.atRowCol(s,e),m=t.atRowCol(s,n),t.setRowCol(s,e,c*o+m*a),t.setRowCol(s,n,m*o-c*a)}N.set(y,0),N.set(e,h),s.set(e,l)}const g=new Float64Array(this.N),C=new Float64Array(this.M),T=new r(g,this.N,1),R=new r(C,this.M,1);let E=1;do{E*=3,E++}while(E<=this.M);do{E/=3,E=Math.trunc(E);for(let e=E;e<this.M;e++){const n=s.at(e);for(let s=0;s<this.N;s++)T.set(s,t.atRowCol(s,e));for(let t=0;t<this.M;t++)R.set(t,i.atRowCol(t,e));let r=e;for(;s.at(r-E)<n;){s.set(r,s.at(r-E));for(let s=0;s<this.N;s++)t.setRowCol(s,r,t.atRowCol(s,r-E));for(let t=0;t<this.M;t++)i.setRowCol(t,r,i.atRowCol(t,r-E));if(r-=E,r<E)break}s.set(r,n);for(let s=0;s<this.N;s++)t.setRowCol(s,r,T.at(s));for(let t=0;t<this.M;t++)i.setRowCol(t,r,R.at(t))}}while(E>1);for(let s=0;s<this.M;s++){let e=0;for(let i=0;i<this.N;i++)t.atRowCol(i,s)<0&&e++;for(let t=0;t<this.M;t++)i.atRowCol(t,s)<0&&e++;if(e>Math.trunc((this.N+this.M)/2)){for(let i=0;i<this.N;i++)t.setRowCol(i,s,-t.atRowCol(i,s));for(let t=0;t<this.M;t++)i.setRowCol(t,s,-i.atRowCol(t,s))}}return!0}isSymmetric(){if(this.N!==this.M)return!1;for(let t=0;t<this.N;t++)for(let s=t+1;s<this.M;s++)if(this.atRowCol(t,s)!==this.atRowCol(s,t))return!1;return!0}isZero(){return(0,e.g)(0),!1}isIdentity(){return(0,e.g)(0),!1}equals(t,s){if(void 0!==s&&(0,e.g)(0),this.N!==t.N||this.M!==t.M)return!1;for(let s=0;s<this.N*this.M;s++)if(this.data[s]!==t.data[s])return!1;return!0}maxElement(){return(0,e.g)(0),0}minElement(){return(0,e.g)(0),0}determinant(){if((0,e.g)(this.N===this.M),1===this.N)return this.data[0];if(2===this.N)return this.data[0]*this.data[3]-this.data[1]*this.data[2];if(3===this.N){const t=this;return t.atRowCol(0,0)*(t.atRowCol(1,1)*t.atRowCol(2,2)-t.atRowCol(1,2)*t.atRowCol(2,1))-t.atRowCol(0,1)*(t.atRowCol(1,0)*t.atRowCol(2,2)-t.atRowCol(2,0)*t.atRowCol(1,2))+t.atRowCol(0,2)*(t.atRowCol(1,0)*t.atRowCol(2,1)-t.atRowCol(1,1)*t.atRowCol(2,0))}const t=new Float64Array(this.N*this.N),s=new r(t,this.N,this.N),i=new Float64Array(this.N);if(!this.luDecomposition(s,i))return 0;let n=1;for(let t=0;t<this.N;t++)n*=s.atRowCol(t,t),i[t]!==t&&(n=-n);return n}submatrix(t,s,i){(0,e.g)(0)}inverse(t){(0,e.g)(0)}pseudoInverse(t,s=!1,i=2220446049250313e-31){if(t.setZero(),1===this.N&&1===this.M)return 0!==this.atRowCol(0,0)?t.setRowCol(0,0,1/this.atRowCol(0,0)):t.setRowCol(0,0,0),!0;if(2===this.N&&2===this.M){const s=this.atRowCol(0,0)*this.atRowCol(1,1)-this.atRowCol(0,1)*this.atRowCol(1,0),i=1e-5*(Math.abs(this.atRowCol(0,0)*this.atRowCol(1,1))+Math.abs(this.atRowCol(0,1)*this.atRowCol(1,0)));if(Math.abs(s)>i)return t.setRowCol(0,0,this.atRowCol(1,1)/s),t.setRowCol(0,1,-this.atRowCol(0,1)/s),t.setRowCol(1,0,-this.atRowCol(1,0)/s),t.setRowCol(1,1,this.atRowCol(0,0)/s),!0}const e=new Float64Array(this.N*this.M),n=new r(e,this.N,this.M),o=new Float64Array(this.M),h=new r(o,this.M,1),u=new Float64Array(this.M*this.M),a=new r(u,this.M,this.M);if(!this.svd(n,h,a,s))return!1;const l=Math.max(this.N,this.M),c=i*Math.abs(h.at(0))*l;for(let t=0;t<this.M;t++)h.at(t)>c?h.set(t,1/h.at(t)):h.set(t,0);return a.mulDiag(h,t),t.mulTranspose(n,t),!0}luDecomposition(t,s){return(0,e.g)(0),!1}symmetricEigen(t,s){(0,e.g)(this.rows()===this.cols()),(0,e.g)(this.rows()===t.rows()),(0,e.g)(s.rows()===s.cols()&&s.rows()===this.rows()),(0,e.g)(this.isSymmetric());const i=new Float64Array(this.N*this.M),n=new r(i,this.N,this.M);n.assignCopy(this);const o=100/Number.EPSILON,h=this.rows(),u=new Float64Array(h),a=new Float64Array(h),l=new r(u,h,1),c=new r(a,h,1);for(let s=0;s<h;s++)l.set(s,n.atRowCol(s,s)),t.set(s,n.atRowCol(s,s)),c.set(s,0);s.setIdentity();const m=()=>{const i=l;s.transposeInPlace();let e=1;do{e*=3,e++}while(e<=h);do{e/=3,e=Math.trunc(e);for(let n=e;n<h;n++){const r=t.at(n),o=Math.abs(r);for(let t=0;t<this.M;t++)i.set(t,s.atRowCol(t,n));let h=n;for(;Math.abs(t.at(h-e))<o;){t.set(h,t.at(h-e));for(let t=0;t<this.M;t++)s.setRowCol(t,h,s.atRowCol(t,h-e));if(h-=e,h<e)break}if(h!==n){t.set(h,r);for(let t=0;t<this.M;t++)s.setRowCol(t,h,i.at(t))}}}while(e>1)};for(let i=1;;i++){let e=0;for(let t=1;t<h;t++)for(let s=0;s<t;s++)e+=Math.abs(n.atRowCol(t,s));if(0===e)return m(),!0;const r=i<4?.2*e/(h*h):0;for(let e=0;e<h;e++)for(let u=e+1;u<h;u++){let a=o*Math.abs(n.atRowCol(u,e));if(i>4&&a<=Math.abs(t.at(e))&&a<=Math.abs(t.at(u)))n.setRowCol(u,e,0);else if(Math.abs(n.atRowCol(u,e))>r){let i,r=t.at(u)-t.at(e);if(a<Math.abs(r))i=n.atRowCol(u,e)/r;else{const t=.5*r/n.atRowCol(u,e);i=1/(Math.abs(t)+Math.sqrt(1+t*t)),t<0&&(i=-i)}const o=1/Math.sqrt(1+i*i),l=i*o,m=l/(1+o);r=i*n.atRowCol(u,e),c.set(e,c.at(e)-r),c.set(u,c.at(u)+r),t.set(e,t.at(e)-r),t.set(u,t.at(u)+r),n.setRowCol(u,e,0);let y=0;for(;y<e;y++)a=n.atRowCol(e,y),r=n.atRowCol(u,y),n.setRowCol(e,y,a-l*(r+a*m)),n.setRowCol(u,y,r+l*(a-r*m));for(y++;y<u;y++)a=n.atRowCol(y,e),r=n.atRowCol(u,y),n.setRowCol(y,e,a-l*(r+a*m)),n.setRowCol(u,y,r+l*(a-r*m));for(y++;y<h;y++)a=n.atRowCol(y,e),r=n.atRowCol(y,u),n.setRowCol(y,e,a-l*(r+a*m)),n.setRowCol(y,u,r+l*(a-r*m));for(y=0;y<h;y++)a=s.atRowCol(e,y),r=s.atRowCol(u,y),s.setRowCol(e,y,a-l*(r+a*m)),s.setRowCol(u,y,r+l*(a-r*m))}}for(let s=0;s<h;s++)l.set(s,l.at(s)+c.at(s)),t.set(s,l.at(s)),c.set(s,0)}}static checkDims(t,s,i){(0,e.g)(t.rows()===s&&t.cols()===i)}}class o extends r{constructor(t){if(t.copy){const s=new Float64Array(t.copy.N*t.copy.M);return super(s,t.copy.N,t.copy.M),this.buffer=s,void this.assignCopy(t.copy)}const s=new Float64Array(t.NN*t.MM);super(s,t.NN,t.MM),this.buffer=s,t.initializerList&&(0,n.a)(this.buffer,t.initializerList,0,0,t.initializerList.length)}assignCopy(t){return this===t||super.assignCopy(t),this}}class h{constructor(t){this.m_TransformationType=1,void 0===t?this.setIdentity():t instanceof h?this.set(t):this.setScale(t)}set(t){return this.xx=t.xx,this.xy=t.xy,this.xd=t.xd,this.yx=t.yx,this.yy=t.yy,this.yd=t.yd,this}clone(){return(new h).set(this)}setZero(){this.xx=0,this.yy=0,this.xy=0,this.yx=0,this.xd=0,this.yd=0}isEqual(t){return this===t||this.xx===t.xx&&this.xy===t.xy&&this.xd===t.xd&&this.yx===t.yx&&this.yy===t.yy&&this.yd===t.yd}transformInPlace(t){const s=this.xx*t.x+this.xy*t.y+this.xd,i=this.yx*t.x+this.yy*t.y+this.yd;t.x=s,t.y=i}transform(t){const s=t.clone();return this.transformInPlace(s),s}queryTransform(t,s){const i=this.xx*t.x+this.xy*t.y+this.xd,e=this.yx*t.x+this.yy*t.y+this.yd;s.setCoords(i,e)}transformEnvInPlace(t){if(t.isEmpty())return;const s=(0,n.m)(n.P,4);t.queryCorners(s),this.transformPoints2D(s,4,s),t.setFromPoints(s,4)}queryTransformEnv(t,s){(0,e.g)(0)}transformPoints2D(t,s,i){for(let e=0;e<s;++e)this.queryTransform(t[e],i[e])}transformInterleavedPoints(t,s,i){s*=2;const e=n.P.getNAN();for(let n=0;n<s;n+=2)e.x=t[n],e.y=t[n+1],this.transformInPlace(e),i[n]=e.x,i[n+1]=e.y}multiply(t){return h.st_multiply(this,t,this),this}mulLeft(t){return(0,e.g)(0),this}static st_multiply(t,s,i){const e=t.xx*s.xx+t.yx*s.xy,n=t.xy*s.xx+t.yy*s.xy,r=t.xd*s.xx+t.yd*s.xy+s.xd,o=t.xx*s.yx+t.yx*s.yy,h=t.xy*s.yx+t.yy*s.yy,u=t.xd*s.yx+t.yd*s.yy+s.yd;i.xx=e,i.xy=n,i.xd=r,i.yx=o,i.yy=h,i.yd=u}getCoefficients(t){(0,e.g)(t.length>=6),t[0]=this.xx,t[1]=this.xy,t[2]=this.xd,t[3]=this.yx,t[4]=this.yy,t[5]=this.yd}setCoefficients(t){(0,e.g)(t.length>=6),this.xx=t[0],this.xy=t[1],this.xd=t[2],this.yx=t[3],this.yy=t[4],this.yd=t[5]}copyTo(t){(0,e.g)(0)}initializeFromRect(t,s){t.isEmpty()||s.isEmpty()||!t.width()||!t.height()?this.setZero():(this.xy=this.yx=0,this.xx=s.width()/t.width(),this.yy=s.height()/t.height(),this.xd=s.xmin-t.xmin*this.xx,this.yd=s.ymin-t.ymin*this.yy)}initializeFromRectIsotropic(t,s){if(t.isEmpty()||!t.width()||!t.height()||s.isEmpty())this.setZero();else{this.yx=0,this.xy=0,this.xx=s.width()/t.width(),this.yy=s.height()/t.height(),this.xx>this.yy?this.xx=this.yy:this.yy=this.xx;const i=s.getCenter(),e=t.getCenter();this.xd=i.x-e.x*this.xx,this.yd=i.y-e.y*this.yy}}initializeFromTwoPointsArray(t,s){if(t[0].equals(s[0])&&t[1].equals(s[1]))return void this.setIdentity();if(t[0].equals(t[1])){if(s[0].equals(s[1]))return void this.setShift(s[0].sub(t[0]));(0,e.t)("")}if(!t[0].equals(t[1])&&s[0].equals(s[1]))return this.setZero(),void this.shift(s[0]);this.setShiftCoords(-t[0].x,-t[0].y);const i=n.P.distance(t[0],t[1]),r=n.P.distance(s[0],s[1]),o=r/i;this.scale(o,o);const h=t[1].sub(t[0]);h.divThis(i);const u=s[1].sub(s[0]);u.divThis(r);const a=h.crossProduct(u),l=h.dotProduct(u);this.rotate(l,a),this.shiftCoords(s[0].x,s[0].y)}initializeFromTwoPoints(t,s,i,e){const n=[t,s],r=[i,e];this.initializeFromTwoPointsArray(n,r)}transformSizeInPlace(t){(0,e.g)(0)}transformSize(t,s){(0,e.g)(0)}transformTol(t){return(0,e.g)(0),0}transformWithoutTranslateArray(t,s,i){for(let e=0;e<s;++e)this.transformWithoutTranslate(t[e],i[e])}transformWithoutTranslateInPlace(t){const s=this.xx*t.x+this.xy*t.y,i=this.yx*t.x+this.yy*t.y;t.setCoords(s,i)}transformWithoutTranslate(t,s){const i=this.xx*t.x+this.xy*t.y,e=this.yx*t.x+this.yy*t.y;s.setCoords(i,e)}setIdentity(){this.xx=1,this.xy=0,this.xd=0,this.yx=0,this.yy=1,this.yd=0}isIdentity(){return!(1!==this.xx||1!==this.yy||this.xy||this.xd||this.yx||this.yd)}isIdentityTol(t){const s=t*t;return!((0,n.s)(this.xd)+(0,n.s)(this.yd)>s||(0,n.s)(this.xy+this.xd)+(0,n.s)(this.yy+this.yd-1)>s||(0,n.s)(this.xx+this.xd-1)+(0,n.s)(this.yx+this.yd)>s)}isReflective(){return this.xx*this.yy-this.yx*this.xy<0}isUniform(t){const s=this.xx*this.xx+this.yx*this.yx,i=this.xy*this.xy+this.yy*this.yy,e=(s+i)*t;return Math.abs(s-i)<=e&&Math.abs(this.xx*this.xy+this.yx*this.yy)<=e}isUniformNoRotation(){return 0!==this.xx&&Math.abs(this.xx)===Math.abs(this.yy)&&0===this.xy&&0===this.yx}isTranslate(){return 1===this.xx&&1===this.yy&&!this.xy&&!this.yx}isTranslateTol(t){const s=new n.P;return s.setCoords(0,1),this.transformWithoutTranslateInPlace(s),s.y-=1,!(s.sqrLength()>t*t)&&(s.setCoords(1,0),this.transformWithoutTranslateInPlace(s),s.x-=1,s.sqrLength()<=t*t)}isOrthonormal(t){const s=new h;return s.xx=this.xx*this.xx+this.xy*this.xy,s.xy=this.xx*this.yx+this.xy*this.yy,s.yx=this.yx*this.xx+this.yy*this.xy,s.yy=this.yx*this.yx+this.yy*this.yy,s.xd=0,s.yd=0,s.isIdentityTol(t)}isDegenerate(t){return Math.abs(this.xx*this.yy-this.yx*this.xy)<=2*t*(Math.abs(this.xx*this.yy)+Math.abs(this.yx*this.xy))}isZero(){return 0===this.xx&&0===this.yy&&0===this.xy&&0===this.yx&&0===this.xd&&0===this.yd}isScaleAndTranslateTol(t){return this.xy*this.xy+this.yx*this.yx<=(this.xx*this.xx+this.yy*this.yy)*t}setTranslate(t,s){return this.xx=1,this.xy=0,this.xd=t,this.yx=0,this.yy=1,this.yd=s,this}setShiftCoords(t,s){return this.xx=1,this.xy=0,this.xd=t,this.yx=0,this.yy=1,this.yd=s,this}setShift(t){return this.xx=1,this.xy=0,this.xd=t.x,this.yx=0,this.yy=1,this.yd=t.y,this}setScaleCoords(t,s){return this.xx=t,this.xy=0,this.xd=0,this.yx=0,this.yy=s,this.yd=0,this}setScale(t){return this.setScaleCoords(t,t),this}setFlipX(t,s){return this.xx=-1,this.xy=0,this.xd=t+s,this.yx=0,this.yy=1,this.yd=0,this}setFlipY(t,s){return this.xx=1,this.xy=0,this.xd=0,this.yx=0,this.yy=-1,this.yd=t+s,this}setShear(t,s){return this.xx=1,this.xy=t,this.xd=0,this.yx=s,this.yy=1,this.yd=0,this}scale(t,s){return this.xx*=t,this.xy*=t,this.xd*=t,this.yx*=s,this.yy*=s,this.yd*=s,this}setRotateAngle(t){return this.setRotate(Math.cos(t),Math.sin(t))}setRotate(t,s){return this.xx=t,this.xy=-s,this.xd=0,this.yx=s,this.yy=t,this.yd=0,this}setRotateAngleAbout(t,s){return this.setRotateAbout(Math.cos(t),Math.sin(t),s)}setRotateAbout(t,s,i){return this.setTranslate(-i.x,-i.y),this.rotate(t,s),this.translate(i.x,i.y)}setSwapCoordinates(){return this.xx=0,this.xy=1,this.xd=0,this.yx=1,this.yy=0,this.yd=0,this}setRotateCw90(){return this.xx=0,this.xy=1,this.xd=0,this.yx=-1,this.yy=0,this.yd=0,this}setRotateCcw90(){return this.xx=0,this.xy=-1,this.xd=0,this.yx=1,this.yy=0,this.yd=0,this}shiftCoords(t,s){return this.xd+=t,this.yd+=s,this}shift(t){return this.xd+=t.x,this.yd+=t.y,this}translate(t,s){return this.xd+=t,this.yd+=s,this}flipX(t,s){return this.xx=-this.xx,this.xy=-this.xy,this.xd=t+s-this.xd,this}flipY(t,s){return this.yx=-this.yx,this.yy=-this.yy,this.yd=t+s-this.yd,this}shear(t,s){const i=new h;return i.setShear(t,s),this.multiply(i)}rotateAngle(t){const s=new h;return s.setRotateAngle(t),this.multiply(s)}rotate(t,s){const i=new h;return i.setRotate(t,s),this.multiply(i)}rotateAbout(t,s,i){return this.translate(-i.x,-i.y),this.rotate(t,s),this.translate(i.x,i.y)}rotateAngleAbout(t,s){return this.rotateAbout(Math.cos(t),Math.sin(t),s)}setInvert(t){return this.set(t),this.invertThis()}invertThis(){let t=this.xx*this.yy-this.xy*this.yx;if(0===t)return this.setZero(),this;t=1/t;const s=(this.xy*this.yd-this.xd*this.yy)*t,i=(this.xd*this.yx-this.xx*this.yd)*t,e=this.yy*t,n=-this.xy*t,r=-this.yx*t,o=this.xx*t;return this.xd=s,this.yd=i,this.xx=e,this.yy=o,this.xy=n,this.yx=r,this}invertPrecise(t){return this.set(t),this.invertPreciseThis()}invertPreciseThis(){const t=n.M.constructDouble(this.xy),s=n.M.constructDouble(this.xx),i=s.mulDouble(this.yy).sub(t.mulDouble(this.yx));if(i.isZero())return this.setZero(),this;const e=i.clone();e.invertThis();const r=n.M.constructDouble(this.xd),o=t.mulDouble(this.yd).sub(r.mulDouble(this.yy)).mul(e).toDouble(),h=r.mulDouble(this.yx).sub(s.mulDouble(this.yd)).mul(e).toDouble(),u=e.mulDouble(this.yy).toDouble(),a=e.mulDouble(-this.xy).toDouble(),l=e.mulDouble(-this.yx).toDouble(),c=e.mulDouble(this.xx).toDouble();return this.xd=o,this.yd=h,this.xx=u,this.yy=c,this.xy=a,this.yx=l,this}extractScaleTransform(t,s){const i=Math.sqrt(this.xx*this.xx+this.xy*this.xy),e=Math.sqrt(this.yx*this.yx+this.yy*this.yy);s.setScaleCoords(1/i,1/e),s.multiply(this),t.setScaleCoords(i,e)}setFromTwoTriangles(t,s){let i=!0;for(let e=0;e<3;++e)i=i&&t[e].equals(s[e]);if(i)return this.setIdentity(),!0;const e=new n.P;e.setSub(t[0],t[1]);const r=new n.P;r.setSub(t[0],t[2]);const o=new n.P;o.setSub(s[0],s[1]);const h=new n.P;h.setSub(s[0],s[2]);const u=4*Number.EPSILON*(Math.abs(e.x*r.y)+Math.abs(r.x*e.y));let a=e.x*r.y-e.y*r.x;return Math.abs(a)>u?(a=1/a,this.xx=(o.x*r.y-e.y*h.x)*a,this.xy=(e.x*h.x-o.x*r.x)*a,this.yx=(o.y*r.y-e.y*h.y)*a,this.yy=(e.x*h.y-o.y*r.x)*a,this.xd=s[0].x-(this.xx*t[0].x+this.xy*t[0].y),this.yd=s[0].y-(this.yx*t[0].x+this.yy*t[0].y),!0):(this.setZero(),!1)}initializeFromControlPoints(t,s,i,r,l=null){return 0===s?(this.setIdentity(),void(l&&l.setIdentity())):1===s?(this.setShift(r[0].sub(i[0])),void(l&&l.setShift(i[0].sub(r[0])))):(s<3&&(t=1),void(4===t&&s>2?function(t,s,i,r,h){const u=n.P.average(i,s),l=n.P.average(r,s),c=new o({NN:2,MM:2});c.setZero();const m=new o({NN:2,MM:2});m.setZero();for(let t=0;t<s;++t)c.setRowCol(0,0,c.atRowCol(0,0)+(i[t].x-u.x)*(i[t].x-u.x)),c.setRowCol(0,1,c.atRowCol(0,1)+(i[t].x-u.x)*(i[t].y-u.y)),c.setRowCol(1,1,c.atRowCol(1,1)+(i[t].y-u.y)*(i[t].y-u.y)),m.setRowCol(0,0,m.atRowCol(0,0)+(r[t].x-l.x)*(i[t].x-u.x)),m.setRowCol(0,1,m.atRowCol(0,1)+(r[t].x-l.x)*(i[t].y-u.y)),m.setRowCol(1,0,m.atRowCol(1,0)+(r[t].y-l.y)*(i[t].x-u.x)),m.setRowCol(1,1,m.atRowCol(1,1)+(r[t].y-l.y)*(i[t].y-u.y));c.setRowCol(1,0,c.atRowCol(0,1));const y=new o({NN:2,MM:2});c.pseudoInverse(y,!0)||(0,e.a)("Failed to compute pseudo inverse"),m.mul(y,m),a(t,m);const x=u.clone();t.transformInPlace(x),t.xd=l.x-x.x,t.yd=l.y-x.y,h&&(m.pseudoInverse(y,!1)||(0,e.a)("Failed to compute pseudo inverse"),a(h,y),h.transformInPlace(l),h.xd=u.x-l.x,h.yd=u.y-l.y)}(this,s,i,r,l):function(t,s,i,r,l,c){(0,e.g)(1===t||0===t||2===t||3===t),s.setIdentity();const m=n.P.average(r,i),y=n.P.average(l,i);if((0,e.g)(t<u.length&&t>0),8&u[t]){const n=new o({NN:2,MM:2});n.setZero();for(let t=0;t<i;++t)n.setRowCol(0,0,n.atRowCol(0,0)+(l[t].x-y.x)*(r[t].x-m.x)),n.setRowCol(1,0,n.atRowCol(1,0)+(l[t].x-y.x)*(r[t].y-m.y)),n.setRowCol(0,1,n.atRowCol(0,1)+(l[t].y-y.y)*(r[t].x-m.x)),n.setRowCol(1,1,n.atRowCol(1,1)+(l[t].y-y.y)*(r[t].y-m.y));const c=new o({NN:2,MM:2}),x=new o({NN:2,MM:1}),f=new o({NN:2,MM:2});n.svd(c,x,f)||(0,e.a)("Failed to compute svd");const d=new o({NN:2,MM:2});c.transpose(d);const b=new o({NN:2,MM:2});f.mul(d,b),32&u[t]||b.determinant()<0&&(d.setRowCol(1,0,-d.atRowCol(1,0)),d.setRowCol(1,1,-d.atRowCol(1,1)),f.mul(d,b));const v=new h;a(v,b),s.set(v)}if(2&u[t]){let t=0,e=0;for(let n=0;n<i;++n){const i=r[n].sub(m);t+=i.sqrLength(),s.transformInPlace(i),e+=i.dotProduct(l[n].sub(y))}if(0===t)0===e?s.setIdentity():s.setZero();else{const i=e/t;s.scale(i,i)}}else(0,e.g)(!(4&u[t]));const x=m.clone();s.transformInPlace(x),s.xd=y.x-x.x,s.yd=y.y-x.y,c&&(c.set(s),c.invertThis(),c.isZero()&&(c.xd=m.x,c.yd=m.y))}(t,this,s,i,r,l)))}calculateErrors(t,s,i,r){(0,e.g)(t>0&&null!==s&&null!==i);let o=0;for(let e=0;e<t;++e){const t=this.transform(s[e]),h=n.P.sqrDistance(i[e],t);o+=h,r&&(r[e]=Math.sqrt(h))}return Math.sqrt(o/t)}}const u=[43,11,41,9,61];function a(t,s){(0,e.g)(!(2!==s.rows()&&3!==s.rows()||2!==s.cols()&&3!==s.rows())),t.xx=s.atRowCol(0,0),t.xy=s.atRowCol(0,1),t.yx=s.atRowCol(1,0),t.yy=s.atRowCol(1,1),3===s.cols()?(t.xd=s.atRowCol(0,2),t.yd=s.atRowCol(1,2)):(t.xd=0,t.yd=0)}}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4167,6061],{28879:(e,t,n)=>{n.r(t),n.d(t,{OperatorGeodeticLength:()=>m});var s=n(90237),o=n(55537),r=n(47591),a=n(35368),i=n(83661),c=n(12189),g=n(5247);class m{getOperatorType(){return 10311}supportsCurves(){return!0}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}execute(e,t,n,s){if(4===n)return(new r.O).execute(e,t,s);if(0===t.getCoordinateSystemType()&&(0,o.t)(""),(0,o.d)(e),e.isEmpty()||e.getDimension()<1)return 0;const m=t.getGCS(),u=(0,c.G)();m.querySpheroidData(u);const h=u.majorSemiAxis,l=u.e2,y=m.getUnit().getUnitToBaseFactor();let x;const p=e.getGeometryType();if(p===o.G.enumPolygon?x=e.getBoundary():p===o.G.enumEnvelope?x=(0,a.c)(e):(0,o.f)(p)?(x=new a.P({vd:e.getDescription()}),x.addSegment(e,!0)):x=e,x.hasNonLinearSegments()&&(x=(new g.O).execute(x,0,t.getTolerance(0),0,s)),m!==t){const n=t.getSRToGCSTransform();if(t.isPannable()){x=(0,c.w)(x,t),p===o.G.enumPolyline&&x===e&&(x=e.clone());const n=new i.E;t.getPannableExtent().queryIntervalX(n);for(let e=0,t=x.getPointCount();e<t;e++){const t=x.getXY(e);t.x=(0,c._)(t.x,n),x.setXY(e,t)}}const r=x.createInstance();x=(0,c.$)(n,x,r,s)?r:(new c.v).execute(x,n,s)}return this._ExecuteMultiPathGeodeticLength(x,n,h,l,y)}_ExecuteMultiPathGeodeticLength(e,t,n,o,r){const a={stack:[],error:void 0,hasError:!1};try{const i=(0,s.b)(a,new c.E,!1);let g=0;const m=e.querySegmentIterator();for(;m.nextPath();)for(;m.hasNextSegment();){const e=m.nextSegment(),s=e.getStartXY(),a=e.getEndXY();s.scale(r),a.scale(r),c.F.geodeticDistance(n,o,s.x,s.y,a.x,a.y,i,null,null,t),g+=i.val}return g}catch(e){a.error=e,a.hasError=!0}finally{(0,s.c)(a)}}}},47591:(e,t,n)=>{n.d(t,{O:()=>x});var s=n(55537),o=n(12189),r=n(35368),a=n(83661),i=n(95213),c=n(79187),g=n(5247),m=n(31139);function u(){return{m_pGcs:new a.P,m_xyz:new i.h,m_factor:Number.NaN,m_geoLength:Number.NaN,setValues:h,setLength:l,assign:y}}function h(e,t,n,s){this.m_factor=e,this.m_pGcs.assign(t),this.m_xyz.assign(s),this.m_geoLength=n}function l(e){this.m_geoLength=e}function y(e){this.m_pGcs.assign(e.m_pGcs),this.m_xyz.assign(e.m_xyz),this.m_factor=e.m_factor,this.m_geoLength=e.m_geoLength}class x{getOperatorType(){return 10315}supportsCurves(){return!0}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}_ExecuteShapePreservingLength(e,t,n,s,r){if(e.hasNonLinearSegments()&&(e=(new g.O).execute(e,0,t.getTolerance(0),0,r)),t.isPannable()){let s=90,a=-90;if(1===n.getUnit().getUnitToBaseFactor()&&(s*=Math.PI/180,a*=Math.PI/180),2===t.getCoordinateSystemType()){let e=null;const n=[0,0,0,0];e=t.getPECoordSys(),n[0]=0,n[1]=s,n[2]=0,n[3]=a,o.Z.geogToProj(e,2,n),s=n[1],a=n[3]}const i=new c.J;e.queryEnvelope(i),i.ymin=a,i.ymax=s,e=(new m.O).execute(e,i,t,r)}else{const n=t.getPCSHorizon();if((e=(new o.f).execute(e,n,t,r))===n){const t=e.clone();e=t}}return e.isEmpty()?0:this._ExecuteIterativeApproach(e,t,n,s,1,r)}_ExecuteIterativeApproach(e,t,n,r,c,g){const m=(0,o.G)();n.querySpheroidData(m);const h=m.majorSemiAxis,l=m.e2,y=n.getUnit().getUnitToBaseFactor(),x=(0,a.p)(u,40),f=new Array(40),d=u(),G=u();let S;const P=[0,0,0,0],w=t.getPECoordSys(),C=new a.P,E=new a.P,v=new a.P,T=new a.P,L=new a.P;let N=0;const b=e.querySegmentIterator();for(;b.nextPath();)for(;b.hasNextSegment();){const e=b.nextSegment();C.assign(e.getStartXY()),E.assign(e.getEndXY()),2===t.getCoordinateSystemType()?(P[0]=C.x,P[1]=C.y,P[2]=E.x,P[3]=E.y,o.Z.projToGeog(w,2,P),v.x=P[0]*y,v.y=P[1]*y,T.x=P[2]*y,T.y=P[3]*y):(v.setCoordsPoint2D(C),T.setCoordsPoint2D(E),v.scale(y),T.scale(y));const n=new i.h,r=new i.h;p(h,l,v,n),p(h,l,T,r);let a=_(h,n,r);d.setValues(0,v,Number.NaN,n),G.setValues(1,T,a,r),S=c,x[0].assign(G),f[0]=c;let g=0;for(;;){g>128&&(0,s.c)("iterations exceeded");const n=.5*(d.m_factor+G.m_factor),r=e.getCoord2D(n);2===t.getCoordinateSystemType()?(P[0]=r.x,P[1]=r.y,o.Z.projToGeog(w,1,P),L.x=P[0]*y,L.y=P[1]*y):(L.setCoordsPoint2D(r),L.scale(y)),v.setCoordsPoint2D(d.m_pGcs),T.setCoordsPoint2D(G.m_pGcs);const m=new i.h;p(h,l,L,m);const u=_(h,d.m_xyz,m),C=_(h,G.m_xyz,m);a=G.m_geoLength,Number.isNaN(a)&&(a=_(h,d.m_xyz,G.m_xyz));const E=u+C,b=S===c&&E>=20&&Math.abs(E-a)>1e-8*(a+E);if(g+2<40&&(b||Math.abs(E-a)>0&&S>0))G.setLength(C),x[g].assign(G),G.setValues(n,L,u,m),x[++g].assign(G),b?(S=c,f[g]=c):(S--,f[g-1]=S,f[g]=S);else{if(N+=E,0===g)break;d.assign(G),G.assign(x[--g]),S=f[g]}}}return N}execute(e,t,n){if(t&&0!==t.getCoordinateSystemType()||(0,s.t)(""),e.isEmpty()||e.getDimension()<1)return 0;let a=null;const i=t.getGCS();i!==t&&(a=(0,o.p)(t,i,null));const c=e.getGeometryType();if(c===s.G.enumEnvelope){const s=new r.a;return s.addEnvelope(e,!1),this._ExecuteShapePreservingLength(s,t,i,a,n)}if((0,s.f)(c)){const s=new r.P;return s.addSegment(e,!0),this._ExecuteShapePreservingLength(s,t,i,a,n)}return this._ExecuteShapePreservingLength(e,t,i,a,n)}}function p(e,t,n,s){s.assign((0,o.Q)(e,t,n))}function _(e,t,n){const s=e,o=new i.h;o.setSub(t,n);const r=o.length();return 2*s*Math.asin(r/(2*s))}},76061:(e,t,n)=>{n.d(t,{G:()=>s,S:()=>o});class s{*[Symbol.iterator](){let e=this.next();for(;e;)yield e,e=this.next()}}class o extends s{constructor(e){super(),this.m_iGeom=-1,this.m_aGeoms=e?e.slice():[]}next(){if(this.m_iGeom<this.m_aGeoms.length-1){const e=this.m_aGeoms[++this.m_iGeom];return this.m_aGeoms[this.m_iGeom]=null,e}return null}tock(){return!1}getGeometryID(){return this.m_iGeom}getRank(){return 1}}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4167,6061],{28879:(e,t,n)=>{n.r(t),n.d(t,{OperatorGeodeticLength:()=>m});var s=n(90237),o=n(55537),r=n(47591),a=n(35368),i=n(83661),c=n(12189),g=n(5247);class m{getOperatorType(){return 10311}supportsCurves(){return!0}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}execute(e,t,n,s){if(4===n)return(new r.O).execute(e,t,s);if(0===t.getCoordinateSystemType()&&(0,o.t)(""),(0,o.d)(e),e.isEmpty()||e.getDimension()<1)return 0;const m=t.getGCS(),u=(0,c.G)();m.querySpheroidData(u);const h=u.majorSemiAxis,l=u.e2,y=m.getUnit().getUnitToBaseFactor();let x;const p=e.getGeometryType();if(p===o.G.enumPolygon?x=e.getBoundary():p===o.G.enumEnvelope?x=(0,a.c)(e):(0,o.f)(p)?(x=new a.P({vd:e.getDescription()}),x.addSegment(e,!0)):x=e,x.hasNonLinearSegments()&&(x=(new g.O).execute(x,0,t.getTolerance(0),0,s)),m!==t){const n=t.getSRToGCSTransform();if(t.isPannable()){x=(0,c.w)(x,t),p===o.G.enumPolyline&&x===e&&(x=e.clone());const n=new i.E;t.getPannableExtent().queryIntervalX(n);for(let e=0,t=x.getPointCount();e<t;e++){const t=x.getXY(e);t.x=(0,c._)(t.x,n),x.setXY(e,t)}}const r=x.createInstance();x=(0,c.$)(n,x,r,s)?r:(new c.v).execute(x,n,s)}return this._ExecuteMultiPathGeodeticLength(x,n,h,l,y)}_ExecuteMultiPathGeodeticLength(e,t,n,o,r){const a={stack:[],error:void 0,hasError:!1};try{const i=(0,s.b)(a,new c.E,!1);let g=0;const m=e.querySegmentIterator();for(;m.nextPath();)for(;m.hasNextSegment();){const e=m.nextSegment(),s=e.getStartXY(),a=e.getEndXY();s.scale(r),a.scale(r),c.F.geodeticDistance(n,o,s.x,s.y,a.x,a.y,i,null,null,t),g+=i.val}return g}catch(e){a.error=e,a.hasError=!0}finally{(0,s.c)(a)}}}},47591:(e,t,n)=>{n.d(t,{O:()=>x});var s=n(55537),o=n(12189),r=n(35368),a=n(83661),i=n(95213),c=n(79187),g=n(5247),m=n(31139);function u(){return{m_pGcs:new a.P,m_xyz:new i.h,m_factor:Number.NaN,m_geoLength:Number.NaN,setValues:h,setLength:l,assign:y}}function h(e,t,n,s){this.m_factor=e,this.m_pGcs.assign(t),this.m_xyz.assign(s),this.m_geoLength=n}function l(e){this.m_geoLength=e}function y(e){this.m_pGcs.assign(e.m_pGcs),this.m_xyz.assign(e.m_xyz),this.m_factor=e.m_factor,this.m_geoLength=e.m_geoLength}class x{getOperatorType(){return 10315}supportsCurves(){return!0}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}_ExecuteShapePreservingLength(e,t,n,s,r){if(e.hasNonLinearSegments()&&(e=(new g.O).execute(e,0,t.getTolerance(0),0,r)),t.isPannable()){let s=90,a=-90;if(1===n.getUnit().getUnitToBaseFactor()&&(s*=Math.PI/180,a*=Math.PI/180),2===t.getCoordinateSystemType()){let e=null;const n=[0,0,0,0];e=t.getPECoordSys(),n[0]=0,n[1]=s,n[2]=0,n[3]=a,o.Z.geogToProj(e,2,n),s=n[1],a=n[3]}const i=new c.J;e.queryEnvelope(i),i.ymin=a,i.ymax=s,e=(new m.O).execute(e,i,t,r)}else{const n=t.getPCSHorizon();if((e=(new o.f).execute(e,n,t,r))===n){const t=e.clone();e=t}}return e.isEmpty()?0:this._ExecuteIterativeApproach(e,t,n,s,1,r)}_ExecuteIterativeApproach(e,t,n,r,c,g){const m=(0,o.G)();n.querySpheroidData(m);const h=m.majorSemiAxis,l=m.e2,y=n.getUnit().getUnitToBaseFactor(),x=(0,a.p)(u,40),d=(0,a.d)(40,Number.NaN),f=u(),G=u();let S;const P=[0,0,0,0],w=t.getPECoordSys(),C=new a.P,E=new a.P,v=new a.P,N=new a.P,T=new a.P;let L=0;const b=e.querySegmentIterator();for(;b.nextPath();)for(;b.hasNextSegment();){const e=b.nextSegment();C.assign(e.getStartXY()),E.assign(e.getEndXY()),2===t.getCoordinateSystemType()?(P[0]=C.x,P[1]=C.y,P[2]=E.x,P[3]=E.y,o.Z.projToGeog(w,2,P),v.x=P[0]*y,v.y=P[1]*y,N.x=P[2]*y,N.y=P[3]*y):(v.setCoordsPoint2D(C),N.setCoordsPoint2D(E),v.scale(y),N.scale(y));const n=new i.h,r=new i.h;p(h,l,v,n),p(h,l,N,r);let a=_(h,n,r);f.setValues(0,v,Number.NaN,n),G.setValues(1,N,a,r),S=c,x[0].assign(G),d[0]=c;let g=0;for(;;){g>128&&(0,s.c)("iterations exceeded");const n=.5*(f.m_factor+G.m_factor),r=e.getCoord2D(n);2===t.getCoordinateSystemType()?(P[0]=r.x,P[1]=r.y,o.Z.projToGeog(w,1,P),T.x=P[0]*y,T.y=P[1]*y):(T.setCoordsPoint2D(r),T.scale(y)),v.setCoordsPoint2D(f.m_pGcs),N.setCoordsPoint2D(G.m_pGcs);const m=new i.h;p(h,l,T,m);const u=_(h,f.m_xyz,m),C=_(h,G.m_xyz,m);a=G.m_geoLength,Number.isNaN(a)&&(a=_(h,f.m_xyz,G.m_xyz));const E=u+C,b=S===c&&E>=20&&Math.abs(E-a)>1e-8*(a+E);if(g+2<40&&(b||Math.abs(E-a)>0&&S>0))G.setLength(C),x[g].assign(G),G.setValues(n,T,u,m),x[++g].assign(G),b?(S=c,d[g]=c):(S--,d[g-1]=S,d[g]=S);else{if(L+=E,0===g)break;f.assign(G),G.assign(x[--g]),S=d[g]}}}return L}execute(e,t,n){if(t&&0!==t.getCoordinateSystemType()||(0,s.t)(""),e.isEmpty()||e.getDimension()<1)return 0;let a=null;const i=t.getGCS();i!==t&&(a=(0,o.p)(t,i,null));const c=e.getGeometryType();if(c===s.G.enumEnvelope){const s=new r.a;return s.addEnvelope(e,!1),this._ExecuteShapePreservingLength(s,t,i,a,n)}if((0,s.f)(c)){const s=new r.P;return s.addSegment(e,!0),this._ExecuteShapePreservingLength(s,t,i,a,n)}return this._ExecuteShapePreservingLength(e,t,i,a,n)}}function p(e,t,n,s){s.assign((0,o.Q)(e,t,n))}function _(e,t,n){const s=e,o=new i.h;o.setSub(t,n);const r=o.length();return 2*s*Math.asin(r/(2*s))}},76061:(e,t,n)=>{n.d(t,{G:()=>s,S:()=>o});class s{*[Symbol.iterator](){let e=this.next();for(;e;)yield e,e=this.next()}}class o extends s{constructor(e){super(),this.m_iGeom=-1,this.m_aGeoms=e?e.slice():[]}next(){if(this.m_iGeom<this.m_aGeoms.length-1){const e=this.m_aGeoms[++this.m_iGeom];return this.m_aGeoms[this.m_iGeom]=null,e}return null}tock(){return!1}getGeometryID(){return this.m_iGeom}getRank(){return 1}}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5804,6183],{68197:(e,t,r)=>{r.d(t,{A:()=>p});var i,n,o=r(40876),s=r(34727),a=r(56507);function l(e){return(0,s.qE)((0,a.Vr)(e),0,255)}function u(e,t,r){return e=Number(e),isNaN(e)?r:e<t?t:e>r?r:e}function c(e,t){const r=e.toString(16).padStart(2,"0");return t?r.slice(0,1):r}class p{static blendColors(e,t,r,i=new p){return i.r=Math.round(e.r+(t.r-e.r)*r),i.g=Math.round(e.g+(t.g-e.g)*r),i.b=Math.round(e.b+(t.b-e.b)*r),i.a=e.a+(t.a-e.a)*r,i._sanitize()}static fromRgb(e,t){const r=e.toLowerCase().match(/^(rgba?|hsla?)\(([\s.\-,%0-9]+)\)/);if(r){const e=r[2].split(/\s*,\s*/),i=r[1];if("rgb"===i&&3===e.length||"rgba"===i&&4===e.length){const r=e[0];if("%"===r.charAt(r.length-1)){const r=e.map((e=>2.56*parseFloat(e)));return 4===e.length&&(r[3]=parseFloat(e[3])),p.fromArray(r,t)}return p.fromArray(e.map((e=>parseFloat(e))),t)}if("hsl"===i&&3===e.length||"hsla"===i&&4===e.length)return p.fromArray((0,o.z$)(parseFloat(e[0]),parseFloat(e[1])/100,parseFloat(e[2])/100,parseFloat(e[3])),t)}return null}static fromHex(e,t=new p){if("#"!==e[0]||isNaN(Number(`0x${e.slice(1)}`)))return null;switch(e.length){case 4:case 5:{const r=parseInt(e.slice(1,2),16),i=parseInt(e.slice(2,3),16),n=parseInt(e.slice(3,4),16),o=5===e.length?15:parseInt(e.slice(4),16);return p.fromArray([r+16*r,i+16*i,n+16*n,(o+16*o)/255],t)}case 7:case 9:{const r=parseInt(e.slice(1,3),16),i=parseInt(e.slice(3,5),16),n=parseInt(e.slice(5,7),16),o=7===e.length?255:parseInt(e.slice(7),16);return p.fromArray([r,i,n,o/255],t)}default:return null}}static fromArray(e,t=new p){return t._set(Number(e[0]),Number(e[1]),Number(e[2]),Number(e[3])),isNaN(t.a)&&(t.a=1),t._sanitize()}static fromString(e,t){const r=(0,o.V6)(e)?(0,o.TS)(e):null;return r&&p.fromArray(r,t)||p.fromRgb(e,t)||p.fromHex(e,t)}static fromJSON(e){return null!=e?new p([e[0],e[1],e[2],(e[3]??255)/255]):void 0}static toUnitRGB(e){return null!=e?[e.r/255,e.g/255,e.b/255]:null}static toUnitRGBA(e){return null!=e?[e.r/255,e.g/255,e.b/255,null!=e.a?e.a:1]:null}constructor(e){this.r=255,this.g=255,this.b=255,this.a=1,e&&this.setColor(e)}get isBright(){return.299*this.r+.587*this.g+.114*this.b>=127}setColor(e){return"string"==typeof e?p.fromString(e,this):Array.isArray(e)?p.fromArray(e,this):(this._set(e.r??0,e.g??0,e.b??0,e.a??1),e instanceof p||this._sanitize()),this}toRgb(){return[this.r,this.g,this.b]}toRgba(){return[this.r,this.g,this.b,this.a]}toHex(e){const t=e?.capitalize??!1,r=e?.digits??6,i=3===r||4===r,n=4===r||8===r,o=`#${c(this.r,i)}${c(this.g,i)}${c(this.b,i)}${n?c(Math.round(255*this.a),i):""}`;return t?o.toUpperCase():o}toCss(e=!1){const t=this.r+", "+this.g+", "+this.b;return e?`rgba(${t}, ${this.a})`:`rgb(${t})`}toString(){return this.toCss(!0)}toJSON(){return this.toArray()}toArray(e=p.AlphaMode.ALWAYS){const t=l(this.r),r=l(this.g),i=l(this.b);return e===p.AlphaMode.ALWAYS||1!==this.a?[t,r,i,l(255*this.a)]:[t,r,i]}clone(){return new p(this.toRgba())}hash(){return this.r<<24|this.g<<16|this.b<<8|255*this.a}equals(e){return null!=e&&e.r===this.r&&e.g===this.g&&e.b===this.b&&e.a===this.a}_sanitize(){return this.r=Math.round(u(this.r,0,255)),this.g=Math.round(u(this.g,0,255)),this.b=Math.round(u(this.b,0,255)),this.a=u(this.a,0,1),this}_set(e,t,r,i){this.r=e,this.g=t,this.b=r,this.a=i}}p.prototype.declaredClass="esri.Color",(n=(i=p).AlphaMode||(i.AlphaMode={}))[n.ALWAYS=0]="ALWAYS",n[n.UNLESS_OPAQUE=1]="UNLESS_OPAQUE"},38954:(e,t,r)=>{r.d(t,{A:()=>y,B:()=>h,C:()=>c,D:()=>m,E:()=>p,G:()=>E,H:()=>F,a:()=>U,b:()=>g,c:()=>s,d:()=>u,e:()=>A,f:()=>x,g:()=>l,h:()=>f,i:()=>a,j:()=>v,k:()=>S,l:()=>o,m:()=>I,n:()=>_,o:()=>T,p:()=>P,q:()=>Z,s:()=>b,t:()=>j,u:()=>M,v:()=>w,w:()=>N,x:()=>d,y:()=>L,z:()=>q});var i=r(51850),n=r(34304);function o(e){const t=e[0],r=e[1],i=e[2];return Math.sqrt(t*t+r*r+i*i)}function s(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function a(e,t,r,i){return e[0]=t,e[1]=r,e[2]=i,e}function l(e,t,r){return e[0]=t[0]+r[0],e[1]=t[1]+r[1],e[2]=t[2]+r[2],e}function u(e,t,r){return e[0]=t[0]-r[0],e[1]=t[1]-r[1],e[2]=t[2]-r[2],e}function c(e,t,r){return e[0]=t[0]*r[0],e[1]=t[1]*r[1],e[2]=t[2]*r[2],e}function p(e,t,r){return e[0]=t[0]/r[0],e[1]=t[1]/r[1],e[2]=t[2]/r[2],e}function d(e,t){return e[0]=Math.abs(t[0]),e[1]=Math.abs(t[1]),e[2]=Math.abs(t[2]),e}function h(e,t){return e[0]=Math.sign(t[0]),e[1]=Math.sign(t[1]),e[2]=Math.sign(t[2]),e}function y(e,t,r){return e[0]=Math.min(t[0],r[0]),e[1]=Math.min(t[1],r[1]),e[2]=Math.min(t[2],r[2]),e}function m(e,t,r){return e[0]=Math.max(t[0],r[0]),e[1]=Math.max(t[1],r[1]),e[2]=Math.max(t[2],r[2]),e}function f(e,t,r){return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e}function g(e,t,r,i){return e[0]=t[0]+r[0]*i,e[1]=t[1]+r[1]*i,e[2]=t[2]+r[2]*i,e}function v(e,t){const r=t[0]-e[0],i=t[1]-e[1],n=t[2]-e[2];return Math.sqrt(r*r+i*i+n*n)}function b(e,t){const r=t[0]-e[0],i=t[1]-e[1],n=t[2]-e[2];return r*r+i*i+n*n}function S(e){const t=e[0],r=e[1],i=e[2];return t*t+r*r+i*i}function w(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e}function M(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e}function _(e,t){const r=t[0],i=t[1],n=t[2];let o=r*r+i*i+n*n;return o>0&&(o=1/Math.sqrt(o),e[0]=t[0]*o,e[1]=t[1]*o,e[2]=t[2]*o),e}function x(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function A(e,t,r){const i=t[0],n=t[1],o=t[2],s=r[0],a=r[1],l=r[2];return e[0]=n*l-o*a,e[1]=o*s-i*l,e[2]=i*a-n*s,e}function I(e,t,r,i){const n=t[0],o=t[1],s=t[2];return e[0]=n+i*(r[0]-n),e[1]=o+i*(r[1]-o),e[2]=s+i*(r[2]-s),e}function j(e,t,r){const i=t[0],n=t[1],o=t[2];return e[0]=r[0]*i+r[4]*n+r[8]*o+r[12],e[1]=r[1]*i+r[5]*n+r[9]*o+r[13],e[2]=r[2]*i+r[6]*n+r[10]*o+r[14],e}function Z(e,t,r){const i=t[0],n=t[1],o=t[2];return e[0]=i*r[0]+n*r[3]+o*r[6],e[1]=i*r[1]+n*r[4]+o*r[7],e[2]=i*r[2]+n*r[5]+o*r[8],e}function N(e,t,r){const i=r[0],n=r[1],o=r[2],s=r[3],a=t[0],l=t[1],u=t[2],c=n*u-o*l,p=o*a-i*u,d=i*l-n*a,h=n*d-o*p,y=o*c-i*d,m=i*p-n*c,f=2*s;return e[0]=a+c*f+2*h,e[1]=l+p*f+2*y,e[2]=u+d*f+2*m,e}const R=(0,i.vt)(),V=(0,i.vt)();function P(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]}function T(e,t,r){const i=r[0]-t[0],n=r[1]-t[1],o=r[2]-t[2];let s=i*i+n*n+o*o;return s>0?(s=1/Math.sqrt(s),e[0]=i*s,e[1]=n*s,e[2]=o*s,e):(e[0]=0,e[1]=0,e[2]=0,e)}const U=u,O=c,z=p,E=v,L=b,F=o,q=S;Object.freeze(Object.defineProperty({__proto__:null,abs:d,add:l,angle:function(e,t){_(R,e),_(V,t);const r=x(R,V);return r>1?0:r<-1?Math.PI:Math.acos(r)},bezier:function(e,t,r,i,n,o){const s=1-o,a=s*s,l=o*o,u=a*s,c=3*o*a,p=3*l*s,d=l*o;return e[0]=t[0]*u+r[0]*c+i[0]*p+n[0]*d,e[1]=t[1]*u+r[1]*c+i[1]*p+n[1]*d,e[2]=t[2]*u+r[2]*c+i[2]*p+n[2]*d,e},ceil:function(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e[2]=Math.ceil(t[2]),e},clamp:function(e,t=0,r=1){return e[0]=Math.min(Math.max(e[0],t),r),e[1]=Math.min(Math.max(e[1],t),r),e[2]=Math.min(Math.max(e[2],t),r),e},copy:s,cross:A,crossAndNormalize:function(e,t,r){const i=t[0],n=t[1],o=t[2],s=r[0],a=r[1],l=r[2],u=n*l-o*a,c=o*s-i*l,p=i*a-n*s,d=Math.sqrt(u*u+c*c+p*p);return e[0]=u/d,e[1]=c/d,e[2]=p/d,e},direction:T,dist:E,distance:v,div:z,divide:p,dot:x,equals:function(e,t){if(e===t)return!0;const r=e[0],i=e[1],o=e[2],s=t[0],a=t[1],l=t[2],u=(0,n.FD)();return Math.abs(r-s)<=u*Math.max(1,Math.abs(r),Math.abs(s))&&Math.abs(i-a)<=u*Math.max(1,Math.abs(i),Math.abs(a))&&Math.abs(o-l)<=u*Math.max(1,Math.abs(o),Math.abs(l))},exactEquals:P,floor:function(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e[2]=Math.floor(t[2]),e},hermite:function(e,t,r,i,n,o){const s=o*o,a=s*(2*o-3)+1,l=s*(o-2)+o,u=s*(o-1),c=s*(3-2*o);return e[0]=t[0]*a+r[0]*l+i[0]*u+n[0]*c,e[1]=t[1]*a+r[1]*l+i[1]*u+n[1]*c,e[2]=t[2]*a+r[2]*l+i[2]*u+n[2]*c,e},inverse:M,len:F,length:o,lerp:I,max:m,min:y,mul:O,multiply:c,negate:w,normalize:_,random:function(e,t=1){const r=n.Ov,i=2*r()*Math.PI,o=2*r()-1,s=Math.sqrt(1-o*o)*t;return e[0]=Math.cos(i)*s,e[1]=Math.sin(i)*s,e[2]=o*t,e},rotateX:function(e,t,r,i){const n=[],o=[];return n[0]=t[0]-r[0],n[1]=t[1]-r[1],n[2]=t[2]-r[2],o[0]=n[0],o[1]=n[1]*Math.cos(i)-n[2]*Math.sin(i),o[2]=n[1]*Math.sin(i)+n[2]*Math.cos(i),e[0]=o[0]+r[0],e[1]=o[1]+r[1],e[2]=o[2]+r[2],e},rotateY:function(e,t,r,i){const n=[],o=[];return n[0]=t[0]-r[0],n[1]=t[1]-r[1],n[2]=t[2]-r[2],o[0]=n[2]*Math.sin(i)+n[0]*Math.cos(i),o[1]=n[1],o[2]=n[2]*Math.cos(i)-n[0]*Math.sin(i),e[0]=o[0]+r[0],e[1]=o[1]+r[1],e[2]=o[2]+r[2],e},rotateZ:function(e,t,r,i){const n=[],o=[];return n[0]=t[0]-r[0],n[1]=t[1]-r[1],n[2]=t[2]-r[2],o[0]=n[0]*Math.cos(i)-n[1]*Math.sin(i),o[1]=n[0]*Math.sin(i)+n[1]*Math.cos(i),o[2]=n[2],e[0]=o[0]+r[0],e[1]=o[1]+r[1],e[2]=o[2]+r[2],e},round:function(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e[2]=Math.round(t[2]),e},scale:f,scaleAndAdd:g,set:a,sign:h,sqrDist:L,sqrLen:q,squaredDistance:b,squaredLength:S,str:function(e){return"vec3("+e[0]+", "+e[1]+", "+e[2]+")"},sub:U,subtract:u,transformMat3:Z,transformMat4:j,transformQuat:N},Symbol.toStringTag,{value:"Module"}))},69052:(e,t,r)=>{r.d(t,{ie:()=>a});var i=r(34727);class n{constructor(e,t){this.min=e,this.max=t,this.range=t-e}normalize(e,t=0,r=!1){return o(this.range,this.min,this.max,e,t,r)}clamp(e,t=0){return(0,i.qE)(e-t,this.min,this.max)+t}monotonic(e,t,r){return e<t?t:t+s(this.range,e-t,r)}minimalMonotonic(e,t,r){return o(this.range,e,e+this.range,t,r)}center(e,t,r){return t=this.monotonic(e,t,r),this.normalize((e+t)/2,r)}diff(e,t,r){return this.monotonic(e,t,r)-e}shortestSignedDiff(e,t){e=this.normalize(e);const r=(t=this.normalize(t))-e,i=t<e?this.minimalMonotonic(e,t)-e:t-this.minimalMonotonic(t,e);return Math.abs(r)<Math.abs(i)?r:i}contains(e,t,r){return t=this.minimalMonotonic(e,t),(r=this.minimalMonotonic(e,r))>e&&r<t}}function o(e,t,r,i,n=0,o=!1){return(i-=n)<t?i+=s(e,t-i):i>r&&(i-=s(e,i-r)),o&&i===r&&(i=t),i+n}function s(e,t,r=0){return Math.ceil((t-r)/e)*e+r}new n(0,2*Math.PI),new n(-Math.PI,Math.PI);const a=new n(0,360)},80200:(e,t,r)=>{r.d(t,{T:()=>i,d:()=>m});const i={Base64:0,Hex:1,String:2,Raw:3},n=8,o=(1<<n)-1;function s(e,t){const r=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(r>>16)<<16|65535&r}function a(e){const t=[];for(let r=0,i=e.length*n;r<i;r+=n)t[r>>5]|=(e.charCodeAt(r/n)&o)<<r%32;return t}function l(e){const t=[];for(let r=0,i=32*e.length;r<i;r+=n)t.push(String.fromCharCode(e[r>>5]>>>r%32&o));return t.join("")}function u(e,t,r,i,n,o){return s(function(e,t){return e<<t|e>>>32-t}(s(s(t,e),s(i,o)),n),r)}function c(e,t,r,i,n,o,s){return u(t&r|~t&i,e,t,n,o,s)}function p(e,t,r,i,n,o,s){return u(t&i|r&~i,e,t,n,o,s)}function d(e,t,r,i,n,o,s){return u(t^r^i,e,t,n,o,s)}function h(e,t,r,i,n,o,s){return u(r^(t|~i),e,t,n,o,s)}function y(e,t){e[t>>5]|=128<<t%32,e[14+(t+64>>>9<<4)]=t;let r=1732584193,i=-271733879,n=-1732584194,o=271733878;for(let t=0;t<e.length;t+=16){const a=r,l=i,u=n,y=o;r=c(r,i,n,o,e[t],7,-680876936),o=c(o,r,i,n,e[t+1],12,-389564586),n=c(n,o,r,i,e[t+2],17,606105819),i=c(i,n,o,r,e[t+3],22,-1044525330),r=c(r,i,n,o,e[t+4],7,-176418897),o=c(o,r,i,n,e[t+5],12,1200080426),n=c(n,o,r,i,e[t+6],17,-1473231341),i=c(i,n,o,r,e[t+7],22,-45705983),r=c(r,i,n,o,e[t+8],7,1770035416),o=c(o,r,i,n,e[t+9],12,-1958414417),n=c(n,o,r,i,e[t+10],17,-42063),i=c(i,n,o,r,e[t+11],22,-1990404162),r=c(r,i,n,o,e[t+12],7,1804603682),o=c(o,r,i,n,e[t+13],12,-40341101),n=c(n,o,r,i,e[t+14],17,-1502002290),i=c(i,n,o,r,e[t+15],22,1236535329),r=p(r,i,n,o,e[t+1],5,-165796510),o=p(o,r,i,n,e[t+6],9,-1069501632),n=p(n,o,r,i,e[t+11],14,643717713),i=p(i,n,o,r,e[t],20,-373897302),r=p(r,i,n,o,e[t+5],5,-701558691),o=p(o,r,i,n,e[t+10],9,38016083),n=p(n,o,r,i,e[t+15],14,-660478335),i=p(i,n,o,r,e[t+4],20,-405537848),r=p(r,i,n,o,e[t+9],5,568446438),o=p(o,r,i,n,e[t+14],9,-1019803690),n=p(n,o,r,i,e[t+3],14,-187363961),i=p(i,n,o,r,e[t+8],20,1163531501),r=p(r,i,n,o,e[t+13],5,-1444681467),o=p(o,r,i,n,e[t+2],9,-51403784),n=p(n,o,r,i,e[t+7],14,1735328473),i=p(i,n,o,r,e[t+12],20,-1926607734),r=d(r,i,n,o,e[t+5],4,-378558),o=d(o,r,i,n,e[t+8],11,-2022574463),n=d(n,o,r,i,e[t+11],16,1839030562),i=d(i,n,o,r,e[t+14],23,-35309556),r=d(r,i,n,o,e[t+1],4,-1530992060),o=d(o,r,i,n,e[t+4],11,1272893353),n=d(n,o,r,i,e[t+7],16,-155497632),i=d(i,n,o,r,e[t+10],23,-1094730640),r=d(r,i,n,o,e[t+13],4,681279174),o=d(o,r,i,n,e[t],11,-358537222),n=d(n,o,r,i,e[t+3],16,-722521979),i=d(i,n,o,r,e[t+6],23,76029189),r=d(r,i,n,o,e[t+9],4,-640364487),o=d(o,r,i,n,e[t+12],11,-421815835),n=d(n,o,r,i,e[t+15],16,530742520),i=d(i,n,o,r,e[t+2],23,-995338651),r=h(r,i,n,o,e[t],6,-198630844),o=h(o,r,i,n,e[t+7],10,1126891415),n=h(n,o,r,i,e[t+14],15,-1416354905),i=h(i,n,o,r,e[t+5],21,-57434055),r=h(r,i,n,o,e[t+12],6,1700485571),o=h(o,r,i,n,e[t+3],10,-1894986606),n=h(n,o,r,i,e[t+10],15,-1051523),i=h(i,n,o,r,e[t+1],21,-2054922799),r=h(r,i,n,o,e[t+8],6,1873313359),o=h(o,r,i,n,e[t+15],10,-30611744),n=h(n,o,r,i,e[t+6],15,-1560198380),i=h(i,n,o,r,e[t+13],21,1309151649),r=h(r,i,n,o,e[t+4],6,-145523070),o=h(o,r,i,n,e[t+11],10,-1120210379),n=h(n,o,r,i,e[t+2],15,718787259),i=h(i,n,o,r,e[t+9],21,-343485551),r=s(r,a),i=s(i,l),n=s(n,u),o=s(o,y)}return[r,i,n,o]}function m(e,t=i.Hex){const r=t||i.Base64,o=y(a(e),e.length*n);switch(r){case i.Raw:return o;case i.Hex:return function(e){const t="0123456789abcdef",r=[];for(let i=0,n=4*e.length;i<n;i++)r.push(t.charAt(e[i>>2]>>i%4*8+4&15)+t.charAt(e[i>>2]>>i%4*8&15));return r.join("")}(o);case i.String:return l(o);case i.Base64:return function(e){const t=[];for(let r=0,i=4*e.length;r<i;r+=3){const i=(e[r>>2]>>r%4*8&255)<<16|(e[r+1>>2]>>(r+1)%4*8&255)<<8|e[r+2>>2]>>(r+2)%4*8&255;for(let n=0;n<4;n++)8*r+6*n>32*e.length?t.push("="):t.push("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(i>>6*(3-n)&63))}return t.join("")}(o)}}},92071:(e,t,r)=>{r.d(t,{P:()=>b,L:()=>S});var i=r(90237),n=r(69622),o=r(76953),s=r(4718),a=r(35666);class l{constructor(){this._propertyOriginMap=new Map,this._originStores=new Array(a.AU),this._values=new Map,this.multipleOriginsSupported=!0}clone(e){const t=new l,r=this._originStores[a.Gr.DEFAULTS];r&&r.forEach(((e,r)=>{t.set(r,(0,s.o8)(e),a.Gr.DEFAULTS)}));for(let r=a.Gr.SERVICE;r<a.AU;r++){const i=this._originStores[r];i&&i.forEach(((i,n)=>{e&&e.has(n)||t.set(n,(0,s.o8)(i),r)}))}return t}get(e,t){const r=void 0===t?this._values:this._originStores[t];return r?r.get(e):void 0}keys(e){const t=null==e?this._values:this._originStores[e];return t?[...t.keys()]:[]}set(e,t,r=a.Gr.USER){let i=this._originStores[r];if(i||(i=new Map,this._originStores[r]=i),i.set(e,t),!this._values.has(e)||this._propertyOriginMap.get(e)<=r){const i=this._values.get(e);return this._values.set(e,t),this._propertyOriginMap.set(e,r),i!==t}return!1}delete(e,t=a.Gr.USER){const r=this._originStores[t];if(!r)return;const i=r.get(e);if(r.delete(e),this._values.has(e)&&this._propertyOriginMap.get(e)===t){this._values.delete(e);for(let r=t-1;r>=0;r--){const t=this._originStores[r];if(t&&t.has(e)){this._values.set(e,t.get(e)),this._propertyOriginMap.set(e,r);break}}}return i}has(e,t){const r=void 0===t?this._values:this._originStores[t];return!!r&&r.has(e)}revert(e,t){for(;t>0&&!this.has(e,t);)--t;const r=this._originStores[t],i=r?.get(e),n=this._values.get(e);return this._values.set(e,i),this._propertyOriginMap.set(e,t),n!==i}originOf(e){return this._propertyOriginMap.get(e)||a.Gr.DEFAULTS}forEach(e){this._values.forEach(e)}}var u=r(45917),c=r(88620),p=r(40608);const d=e=>{let t=class extends e{constructor(...e){super(...e);const t=(0,c.oY)(this),r=t.store,i=new l;t.store=i,(0,o.k)(t,r,i)}read(e,t){(0,u.L)(this,e,t)}getAtOrigin(e,t){const r=h(this),i=(0,a.aB)(t);if("string"==typeof e)return r.get(e,i);const n={};return e.forEach((e=>{n[e]=r.get(e,i)})),n}originOf(e){return(0,a.OL)(this.originIdOf(e))}originIdOf(e){return h(this).originOf(e)}revert(e,t){const r=h(this),i=(0,a.aB)(t),n=(0,c.oY)(this);let o;o="string"==typeof e?"*"===e?r.keys(i):[e]:e,o.forEach((e=>{n.invalidate(e),r.revert(e,i),n.commit(e)}))}};return t=(0,i._)([(0,p.$)("esri.core.ReadOnlyMultiOriginJSONSupport")],t),t};function h(e){return(0,c.oY)(e).store}let y=class extends(d(n.A)){};y=(0,i._)([(0,p.$)("esri.core.ReadOnlyMultiOriginJSONSupport")],y);var m=r(16649),f=r(49422);const g=e=>{let t=class extends e{constructor(...e){super(...e)}clear(e,t="user"){return v(this).delete(e,(0,a.aB)(t))}write(e,t){return(0,f.M)(this,e=e||{},t),e}setAtOrigin(e,t,r){(0,c.oY)(this).setAtOrigin(e,t,(0,a.aB)(r))}removeOrigin(e){const t=v(this),r=(0,a.aB)(e),i=t.keys(r);for(const e of i)t.originOf(e)===r&&t.set(e,t.get(e,r),a.Gr.USER)}updateOrigin(e,t){const r=v(this),i=(0,a.aB)(t),n=(0,m.Jt)(this,e);for(let t=i+1;t<a.AU;++t)r.delete(e,t);r.set(e,n,i)}toJSON(e){return this.write({},e)}};return t=(0,i._)([(0,p.$)("esri.core.MultiOriginJSONSupport.WriteableMultiOriginJSONSupport")],t),t.prototype.toJSON.isDefaultToJSON=!0,t};function v(e){return(0,c.oY)(e).store}const b=e=>{let t=class extends(g(d(e))){constructor(...e){super(...e)}};return t=(0,i._)([(0,p.$)("esri.core.MultiOriginJSONSupport")],t),t};let S=class extends(b(n.A)){};S=(0,i._)([(0,p.$)("esri.core.MultiOriginJSONSupport")],S)},87024:(e,t,r)=>{r.d(t,{P:()=>h});var i=r(49186),n=r(80200),o=r(76553),s=r(84952),a=r(13069),l=r(96156),u=r(35666),c=r(10107),p=r(85648),d=r(97159);function h(e){const t=e?.origins??[void 0];return(r,i)=>{const n=function(e,t,r){if("resource"===e?.type)return function(e,t,r){const i=(0,l.z4)(t,r);return{type:String,read:(e,t,r)=>{const n=(0,d.r)(e,t,r);return i.type===String?n:"function"==typeof i.type?new i.type({url:n}):void 0},write:{isRequired:i.json?.write?.isRequired,writer(t,n,a,l){if(!l?.resources)return"string"==typeof t?void(n[a]=(0,d.t)(t,l)):void(n[a]=t.write({},l));const c=function(e){return null==e?null:"string"==typeof e?e:e.url}(t),h=(0,d.t)(c,{...l,verifyItemRelativeUrls:l?.verifyItemRelativeUrls?{writtenUrls:l.verifyItemRelativeUrls.writtenUrls,rootPath:void 0}:void 0},d.M.NO),g=i.type!==String&&(!(0,o.H)(this)||l?.origin&&this.originIdOf(r)>(0,u.aB)(l.origin)),v={object:this,propertyName:r,value:t,targetUrl:h,dest:n,targetPropertyName:a,context:l,params:e};l?.portalItem&&h&&!(0,s.oP)(h)?g&&e?.contentAddressed?y(v):g?function(e){const{context:t,targetUrl:r,params:i,value:n,dest:o,targetPropertyName:a}=e;if(!t.portalItem)return;const l=t.portalItem.resourceFromPath(r),u=f(n,r,t),c=(0,p.n)(u),d=(0,s.Zo)(l.path),h=i?.compress??!1;c===d?(t.resources&&m({...e,resource:l,content:u,compress:h,updates:t.resources.toUpdate}),o[a]=r):y(e)}(v):function({context:e,targetUrl:t,dest:r,targetPropertyName:i}){e.portalItem&&e.resources&&(e.resources.toKeep.push({resource:e.portalItem.resourceFromPath(t),compress:!1}),r[i]=t)}(v):l?.portalItem&&(null==h||null!=(0,d.i)(h)||(0,s.w8)(h)||g)?y(v):n[a]=h}}}}(e,t,r);switch(e?.type??"other"){case"other":return{read:!0,write:!0};case"url":{const{read:e,write:t}=d.b;return{read:e,write:t}}}}(e,r,i);for(const e of t){const t=(0,c.rM)(r,e,i);for(const e in n)t[e]=n[e]}}}function y(e){const{targetUrl:t,params:r,value:o,context:l,dest:u,targetPropertyName:c}=e;if(!l.portalItem)return;const h=(0,d.p)(t),y=f(o,t,l);if(r?.contentAddressed&&"json"!==y.type)return void l.messages?.push(new i.A("persistable:contentAddressingUnsupported",`Property "${c}" is trying to serializing a resource with content of type ${y.type} with content addressing. Content addressing is only supported for json resources.`,{content:y}));const g=r?.contentAddressed&&"json"===y.type?(0,n.d)(y.jsonString):h?.filename??(0,a.lk)(),v=(0,s.fj)(r?.prefix??h?.prefix,g),b=`${v}.${(0,p.n)(y)}`;if(r?.contentAddressed&&l.resources&&"json"===y.type){const e=l.resources.toKeep.find((({resource:e})=>e.path===b))??l.resources.toAdd.find((({resource:e})=>e.path===b));if(e)return void(u[c]=e.resource.itemRelativeUrl)}const S=l.portalItem.resourceFromPath(b);(0,s.w8)(t)&&l.resources&&l.resources.pendingOperations.push((0,s.tk)(t).then((e=>{S.path=`${v}.${(0,p.n)({type:"blob",blob:e})}`,u[c]=S.itemRelativeUrl})).catch((()=>{})));const w=r?.compress??!1;l.resources&&m({...e,resource:S,content:y,compress:w,updates:l.resources.toAdd}),u[c]=S.itemRelativeUrl}function m({object:e,propertyName:t,updates:r,resource:i,content:n,compress:o}){r.push({resource:i,content:n,compress:o,finish:r=>{!function(e,t,r){"string"==typeof e[t]?e[t]=r.url:e[t].url=r.url}(e,t,r)}})}function f(e,t,r){return"string"==typeof e?{type:"url",url:t}:{type:"json",jsonString:JSON.stringify(e.toJSON(r))}}},46130:(e,t,r)=>{r.d(t,{v:()=>n});var i=r(76553);function n(e){e?.writtenProperties&&e.writtenProperties.forEach((({target:e,propName:t,newOrigin:r})=>{(0,i.H)(e)&&r&&e.originOf(t)!==r&&e.updateOrigin(t,r)}))}},62885:(e,t,r)=>{r.d(t,{H:()=>o,V:()=>n});var i=r(5503);function n(e,t,r=i.A){return t||(t=new r),t===e||(t.removeAll(),(n=e)&&(Array.isArray(n)||"items"in n&&Array.isArray(n.items))?t.addMany(e):e&&t.add(e)),t;var n}function o(e){return e}},29242:(e,t,r)=>{function i(){return[1,0,0,0,1,0,0,0,1]}function n(e,t,r,i,n,o,s,a,l){return[e,t,r,i,n,o,s,a,l]}r.d(t,{fA:()=>n,vt:()=>i,zK:()=>o});const o=[1,0,0,0,1,0,0,0,1];Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:o,clone:function(e){return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8]]},create:i,fromValues:n},Symbol.toStringTag,{value:"Module"}))},82534:(e,t,r)=>{function i(){return[0,0,0,1]}function n(e){return[e[0],e[1],e[2],e[3]]}r.d(t,{o8:()=>n,vt:()=>i,zK:()=>o});const o=[0,0,0,1];Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:o,clone:n,create:i,fromValues:function(e,t,r,i){return[e,t,r,i]}},Symbol.toStringTag,{value:"Module"}))},67026:(e,t,r)=>{r.d(t,{A6:()=>m,Xd:()=>c,Xr:()=>h,hZ:()=>g,lw:()=>p,t2:()=>Z,x8:()=>u});var i=r(29242),n=r(82534),o=r(51850),s=r(34304),a=r(38954),l=r(87317);function u(e,t,r){r*=.5;const i=Math.sin(r);return e[0]=i*t[0],e[1]=i*t[1],e[2]=i*t[2],e[3]=Math.cos(r),e}function c(e,t){const r=2*Math.acos(t[3]),i=Math.sin(r/2);return i>(0,s.FD)()?(e[0]=t[0]/i,e[1]=t[1]/i,e[2]=t[2]/i):(e[0]=1,e[1]=0,e[2]=0),r}function p(e,t,r){const i=t[0],n=t[1],o=t[2],s=t[3],a=r[0],l=r[1],u=r[2],c=r[3];return e[0]=i*c+s*a+n*u-o*l,e[1]=n*c+s*l+o*a-i*u,e[2]=o*c+s*u+i*l-n*a,e[3]=s*c-i*a-n*l-o*u,e}function d(e,t,r,i){const n=t[0],o=t[1],a=t[2],l=t[3];let u,c,p,d,h,y=r[0],m=r[1],f=r[2],g=r[3];return c=n*y+o*m+a*f+l*g,c<0&&(c=-c,y=-y,m=-m,f=-f,g=-g),1-c>(0,s.FD)()?(u=Math.acos(c),p=Math.sin(u),d=Math.sin((1-i)*u)/p,h=Math.sin(i*u)/p):(d=1-i,h=i),e[0]=d*n+h*y,e[1]=d*o+h*m,e[2]=d*a+h*f,e[3]=d*l+h*g,e}function h(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3],e}function y(e,t){const r=t[0]+t[4]+t[8];let i;if(r>0)i=Math.sqrt(r+1),e[3]=.5*i,i=.5/i,e[0]=(t[5]-t[7])*i,e[1]=(t[6]-t[2])*i,e[2]=(t[1]-t[3])*i;else{let r=0;t[4]>t[0]&&(r=1),t[8]>t[3*r+r]&&(r=2);const n=(r+1)%3,o=(r+2)%3;i=Math.sqrt(t[3*r+r]-t[3*n+n]-t[3*o+o]+1),e[r]=.5*i,i=.5/i,e[3]=(t[3*n+o]-t[3*o+n])*i,e[n]=(t[3*n+r]+t[3*r+n])*i,e[o]=(t[3*o+r]+t[3*r+o])*i}return e}function m(e,t,r,i){const n=.5*Math.PI/180;t*=n,r*=n,i*=n;const o=Math.sin(t),s=Math.cos(t),a=Math.sin(r),l=Math.cos(r),u=Math.sin(i),c=Math.cos(i);return e[0]=o*l*c-s*a*u,e[1]=s*a*c+o*l*u,e[2]=s*l*u-o*a*c,e[3]=s*l*c+o*a*u,e}const f=l.c,g=l.s,v=l.g,b=p,S=l.b,w=l.h,M=l.l,_=l.j,x=_,A=l.f,I=A,j=l.n,Z=l.a,N=l.e,R=(0,o.vt)(),V=(0,o.fA)(1,0,0),P=(0,o.fA)(0,1,0),T=(0,n.vt)(),U=(0,n.vt)(),O=(0,i.vt)();Object.freeze(Object.defineProperty({__proto__:null,add:v,calculateW:function(e,t){const r=t[0],i=t[1],n=t[2];return e[0]=r,e[1]=i,e[2]=n,e[3]=Math.sqrt(Math.abs(1-r*r-i*i-n*n)),e},conjugate:h,copy:f,dot:w,equals:N,exactEquals:Z,fromEuler:m,fromMat3:y,getAxisAngle:c,identity:function(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e},invert:function(e,t){const r=t[0],i=t[1],n=t[2],o=t[3],s=r*r+i*i+n*n+o*o,a=s?1/s:0;return e[0]=-r*a,e[1]=-i*a,e[2]=-n*a,e[3]=o*a,e},len:x,length:_,lerp:M,mul:b,multiply:p,normalize:j,random:function(e){const t=s.Ov,r=t(),i=t(),n=t(),o=Math.sqrt(1-r),a=Math.sqrt(r);return e[0]=o*Math.sin(2*Math.PI*i),e[1]=o*Math.cos(2*Math.PI*i),e[2]=a*Math.sin(2*Math.PI*n),e[3]=a*Math.cos(2*Math.PI*n),e},rotateX:function(e,t,r){r*=.5;const i=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(r),l=Math.cos(r);return e[0]=i*l+s*a,e[1]=n*l+o*a,e[2]=o*l-n*a,e[3]=s*l-i*a,e},rotateY:function(e,t,r){r*=.5;const i=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(r),l=Math.cos(r);return e[0]=i*l-o*a,e[1]=n*l+s*a,e[2]=o*l+i*a,e[3]=s*l-n*a,e},rotateZ:function(e,t,r){r*=.5;const i=t[0],n=t[1],o=t[2],s=t[3],a=Math.sin(r),l=Math.cos(r);return e[0]=i*l+n*a,e[1]=n*l-i*a,e[2]=o*l+s*a,e[3]=s*l-o*a,e},rotationTo:function(e,t,r){const i=(0,a.f)(t,r);return i<-.999999?((0,a.e)(R,V,t),(0,a.H)(R)<1e-6&&(0,a.e)(R,P,t),(0,a.n)(R,R),u(e,R,Math.PI),e):i>.999999?(e[0]=0,e[1]=0,e[2]=0,e[3]=1,e):((0,a.e)(R,t,r),e[0]=R[0],e[1]=R[1],e[2]=R[2],e[3]=1+i,j(e,e))},scale:S,set:g,setAxes:function(e,t,r,i){const n=O;return n[0]=r[0],n[3]=r[1],n[6]=r[2],n[1]=i[0],n[4]=i[1],n[7]=i[2],n[2]=-t[0],n[5]=-t[1],n[8]=-t[2],j(e,y(e,n))},setAxisAngle:u,slerp:d,sqlerp:function(e,t,r,i,n,o){return d(T,t,n,o),d(U,r,i,o),d(e,T,U,2*o*(1-o)),e},sqrLen:I,squaredLength:A,str:function(e){return"quat("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"}},Symbol.toStringTag,{value:"Module"}))},76553:(e,t,r)=>{function i(e){return e&&"getAtOrigin"in e&&"originOf"in e}r.d(t,{H:()=>i})},13069:(e,t,r)=>{r.d(t,{AG:()=>a,lk:()=>n,vD:()=>s,yS:()=>o});const i="randomUUID"in crypto;function n(){if(i)return crypto.randomUUID();const e=crypto.getRandomValues(new Uint16Array(8));e[3]=4095&e[3]|16384,e[4]=16383&e[4]|32768;const t=t=>e[t].toString(16).padStart(4,"0");return t(0)+t(1)+"-"+t(2)+"-"+t(3)+"-"+t(4)+"-"+t(5)+t(6)+t(7)}function o(){return`{${n().toUpperCase()}}`}function s(){return`{${n()}}`}function a(e){const t=e.toUpperCase();return"{"!==e[0]?`{${t}}`:t}},54239:(e,t,r)=>{r.d(t,{A:()=>b});var i,n=r(90237),o=r(4576),s=r(66552),a=r(25482),l=r(83047),u=r(67076),c=r(10107),p=(r(44208),r(53966),r(36005)),d=r(40608),h=r(43937);const y=(0,s.O)()({orthometric:"gravity-related-height",gravity_related_height:"gravity-related-height",ellipsoidal:"ellipsoidal"}),m=y.jsonValues.slice();(0,o.Xy)(m,"orthometric");const f=(0,s.O)()({meter:"meters",foot:"feet","us-foot":"us-feet","clarke-foot":"clarke-feet","clarke-yard":"clarke-yards","clarke-link":"clarke-links","sears-yard":"sears-yards","sears-foot":"sears-feet","sears-chain":"sears-chains","benoit-1895-b-chain":"benoit-1895-b-chains","indian-yard":"indian-yards","indian-1937-yard":"indian-1937-yards","gold-coast-foot":"gold-coast-feet","sears-1922-truncated-chain":"sears-1922-truncated-chains","50-kilometers":"50-kilometers","150-kilometers":"150-kilometers"});let g=i=class extends a.A{constructor(e){super(e),this.heightModel="gravity-related-height",this.heightUnit="meters",this.vertCRS=null}writeHeightModel(e,t,r){return y.write(e,t,r)}readHeightModel(e,t,r){return y.read(e)||(r?.messages&&r.messages.push(function(e,t){return new u.A("height-model:unsupported",`Height model of value '${e}' is not supported`,t)}(e,{context:r})),null)}readHeightUnit(e,t,r){return f.read(e)||(r?.messages&&r.messages.push(v(e,{context:r})),null)}readHeightUnitService(e,t,r){return(0,l.LA)(e)||f.read(e)||(r?.messages&&r.messages.push(v(e,{context:r})),null)}readVertCRS(e,t){return t.vertCRS||t.ellipsoid||t.geoid}clone(){return new i({heightModel:this.heightModel,heightUnit:this.heightUnit,vertCRS:this.vertCRS})}equals(e){return!!e&&(this===e||this.heightModel===e.heightModel&&this.heightUnit===e.heightUnit&&this.vertCRS===e.vertCRS)}static deriveUnitFromSR(e,t){const r=(0,l.k1)(t);return new i({heightModel:e.heightModel,heightUnit:r??void 0,vertCRS:e.vertCRS})}write(e,t){return t={origin:"web-scene",...t},super.write(e,t)}static fromJSON(e){if(!e)return null;const t=new i;return t.read(e,{origin:"web-scene"}),t}};function v(e,t){return new u.A("height-unit:unsupported",`Height unit of value '${e}' is not supported`,t)}(0,n._)([(0,c.MZ)({type:y.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:m,default:"ellipsoidal",write:{isRequired:!0}}}}})],g.prototype,"heightModel",void 0),(0,n._)([(0,h.K)("web-scene","heightModel")],g.prototype,"writeHeightModel",null),(0,n._)([(0,p.w)(["web-scene","service"],"heightModel")],g.prototype,"readHeightModel",null),(0,n._)([(0,c.MZ)({type:f.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:f.jsonValues,write:{writer:f.write,isRequired:!0}}}}})],g.prototype,"heightUnit",void 0),(0,n._)([(0,p.w)("web-scene","heightUnit")],g.prototype,"readHeightUnit",null),(0,n._)([(0,p.w)("service","heightUnit")],g.prototype,"readHeightUnitService",null),(0,n._)([(0,c.MZ)({type:String,constructOnly:!0,json:{origins:{"web-scene":{write:!0}}}})],g.prototype,"vertCRS",void 0),(0,n._)([(0,p.w)("service","vertCRS",["vertCRS","ellipsoid","geoid"])],g.prototype,"readVertCRS",null),g=i=(0,n._)([(0,d.$)("esri.geometry.HeightModelInfo")],g);const b=g},4146:(e,t,r)=>{r.d(t,{A:()=>S});var i=r(90237),n=r(78888),o=r(49186),s=r(65529),a=r(4902),l=r(92474),u=r(53966),c=r(74887),p=r(84952),d=r(10107),h=(r(44208),r(87811),r(40608)),y=r(5443),m=r(16930),f=r(92602),g=r(79677);let v=0,b=class extends(s.A.EventedMixin(a.A.IdentifiableMixin(l.A))){constructor(){super(...arguments),this.attributionDataUrl=null,this.fullExtent=new y.A(-180,-90,180,90,m.A.WGS84),this.id=Date.now().toString(16)+"-layer-"+v++,this.legendEnabled=!0,this.listMode="show",this.opacity=1,this.parent=null,this.persistenceEnabled=!1,this.popupEnabled=!0,this.attributionVisible=!0,this.spatialReference=m.A.WGS84,this.title=null,this.type=null,this.url=null,this.visibilityTimeExtent=null,this.visible=!0}static async fromArcGISServerUrl(e){const t="string"==typeof e?{url:e}:e;return(await r.e(7982).then(r.bind(r,27982))).fromUrl(t)}static fromPortalItem(e){return async function(e){const t="portalItem"in e?e:{portalItem:e},{fromItem:i}=await r.e(5613).then(r.bind(r,45613));try{return await i(t)}catch(e){const r=t?.portalItem,i=r?.id||"unset",n=r?.portal?.url||f.A.portalUrl;throw u.A.getLogger("esri.layers.support.fromPortalItem").error("#fromPortalItem()","Failed to create layer from portal item (portal: '"+n+"', id: '"+i+"')",e),e}}(e)}initialize(){this.when().catch((e=>{(0,c.zf)(e)||u.A.getLogger(this).error("#load()",`Failed to load layer (title: '${this.title??"no title"}', id: '${this.id??"no id"}')`,{error:e})}))}destroy(){const e=this.parent;if(e){const t=this;"layers"in e&&e.layers.includes(t)?e.layers.remove(t):"tables"in e&&e.tables.includes(t)?e.tables.remove(t):"baseLayers"in e&&e.baseLayers.includes(t)?e.baseLayers.remove(t):"referenceLayers"in e&&e.referenceLayers.includes(t)&&e.referenceLayers.remove(t),this._set("parent",null)}}get effectiveVisible(){let e=this.visible;const t=this.parent;return e&&t&&"effectiveVisible"in t&&(e&&=t.effectiveVisible),e}get hasAttributionData(){return null!=this.attributionDataUrl}get parsedUrl(){return(0,p.An)(this.url)}createLayerView(e,t){return Promise.reject(new o.A("layer:create-layer-view","Layer does not support creating a layer view"))}async fetchAttributionData(){const e=this.attributionDataUrl;if(this.hasAttributionData&&e)return(await(0,n.A)(e,{query:{f:"json"},responseType:"json"})).data;throw new o.A("layer:no-attribution-data","Layer does not have attribution data")}};(0,i._)([(0,d.MZ)({type:String})],b.prototype,"attributionDataUrl",void 0),(0,i._)([(0,d.MZ)({readOnly:!0})],b.prototype,"effectiveVisible",null),(0,i._)([(0,d.MZ)({type:y.A})],b.prototype,"fullExtent",void 0),(0,i._)([(0,d.MZ)({readOnly:!0})],b.prototype,"hasAttributionData",null),(0,i._)([(0,d.MZ)({type:String,clonable:!1})],b.prototype,"id",void 0),(0,i._)([(0,d.MZ)({type:Boolean,nonNullable:!0})],b.prototype,"legendEnabled",void 0),(0,i._)([(0,d.MZ)({type:["show","hide","hide-children"]})],b.prototype,"listMode",void 0),(0,i._)([(0,d.MZ)({type:Number,range:{min:0,max:1},nonNullable:!0})],b.prototype,"opacity",void 0),(0,i._)([(0,d.MZ)({clonable:!1})],b.prototype,"parent",void 0),(0,i._)([(0,d.MZ)({readOnly:!0})],b.prototype,"parsedUrl",null),(0,i._)([(0,d.MZ)({type:Boolean,readOnly:!0})],b.prototype,"persistenceEnabled",void 0),(0,i._)([(0,d.MZ)({type:Boolean})],b.prototype,"popupEnabled",void 0),(0,i._)([(0,d.MZ)({type:Boolean})],b.prototype,"attributionVisible",void 0),(0,i._)([(0,d.MZ)({type:m.A})],b.prototype,"spatialReference",void 0),(0,i._)([(0,d.MZ)({type:String})],b.prototype,"title",void 0),(0,i._)([(0,d.MZ)({readOnly:!0,json:{read:!1}})],b.prototype,"type",void 0),(0,i._)([(0,d.MZ)()],b.prototype,"url",void 0),(0,i._)([(0,d.MZ)({type:g.A})],b.prototype,"visibilityTimeExtent",void 0),(0,i._)([(0,d.MZ)({type:Boolean,nonNullable:!0})],b.prototype,"visible",void 0),b=(0,i._)([(0,h.$)("esri.layers.Layer")],b);const S=b},16183:(e,t,r)=>{r.r(t),r.d(t,{default:()=>Ye});var i=r(90237),n=r(13874),o=r(5503),s=r(49186),a=r(53966),l=r(92071),u=r(74887),c=r(10107),p=r(56507),d=(r(44208),r(87811),r(36005)),h=r(40608),y=r(38954),m=r(51850),f=r(5443),g=r(4146),v=r(52136),b=r(18768),S=r(69208),w=r(16131),M=r(8303),_=r(25036),x=r(58947),A=r(60694),I=r(10873),j=r(20437),Z=r(95466),N=r(96184),R=r(69540),V=r(69052),P=r(25482),T=r(87024),U=r(67026),O=r(82534),z=r(34304);const E=(0,m.vt)(),L=(0,O.vt)(),F=(0,O.vt)(),q=(0,O.vt)(),$=(0,m.fA)(0,0,1),D=(0,m.fA)(0,1,0),C=(0,m.fA)(1,0,0);function B(e){(0,y.c)(E,e),(0,y.n)(E,E);const t=Math.atan2(E[1],E[0]),r=(0,U.x8)((0,O.vt)(),$,-t);(0,y.w)(E,E,r);const i=-1*Math.atan2(E[2],E[0]);return[(0,z.ct)(t)+270,(0,z.ct)(i)+90]}function k(e,t){return(0,U.x8)(F,$,(0,z.DF)(e-270)),(0,U.x8)(q,D,(0,z.DF)(t-90)),(0,U.lw)(L,F,q),(0,y.c)(E,C),(0,y.w)(E,E,L),(0,y.n)(E,E),[E[0],E[1],E[2]]}var H=r(79901);let K=class extends(R.A.ClonableMixin(P.A)){constructor(e){super(e),this.enabled=!0,this.label="",this.normal=null,this.point=null}get orientation(){if(!Array.isArray(this.normal)||3!==this.normal.length)return 0;const[e,t]=B(this.normal);return V.ie.normalize((0,p.GB)(e),0,!0)}set orientation(e){const t=k(e,this.tilt);this._set("normal",t),this._set("orientation",e)}get tilt(){if(!Array.isArray(this.normal)||3!==this.normal.length)return 0;const[e,t]=B(this.normal);return V.ie.normalize((0,p.GB)(t),0,!0)}set tilt(e){const t=k(this.orientation,e);this._set("normal",t),this._set("tilt",e)}};(0,i._)([(0,c.MZ)({type:Boolean,json:{write:!0}})],K.prototype,"enabled",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:!0}})],K.prototype,"label",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{read:!1},clonable:!1,range:{min:0,max:360}}),(0,H.w)((e=>V.ie.normalize((0,p.GB)(e),0,!0)))],K.prototype,"orientation",null),(0,i._)([(0,c.MZ)({type:Number,json:{read:!1},clonable:!1,range:{min:0,max:360}}),(0,H.w)((e=>V.ie.normalize((0,p.GB)(e),0,!0)))],K.prototype,"tilt",null),(0,i._)([(0,c.MZ)({type:[Number],json:{write:{isRequired:!0}}})],K.prototype,"normal",void 0),(0,i._)([(0,c.MZ)({type:[Number],json:{write:{isRequired:!0}}})],K.prototype,"point",void 0),K=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelSlice")],K);const J=K;var G=r(97159);let W=class extends(R.A.ClonableMixin(P.A)){constructor(){super(...arguments),this.enabled=!0,this.href=null,this.id=null,this.label="",this.normal=null,this.point=null,this.sizeInPixel=null,this.slices=null,this.timeId=0,this.variableId=null}get orientation(){if(!Array.isArray(this.normal)||3!==this.normal.length)return 0;const[e,t]=B(this.normal);return V.ie.normalize((0,p.GB)(e),0,!0)}get tilt(){if(!Array.isArray(this.normal)||3!==this.normal.length)return 0;const[e,t]=B(this.normal);return V.ie.normalize((0,p.GB)(t),0,!0)}};(0,i._)([(0,c.MZ)({type:Boolean,json:{default:!0,write:!0}})],W.prototype,"enabled",void 0),(0,i._)([(0,c.MZ)({type:String,json:{origins:{service:{read:G.r},"web-scene":{write:{isRequired:!0}}},write:!0}}),(0,T.P)({origins:["web-scene"],type:"resource",prefix:"sections",compress:!0})],W.prototype,"href",void 0),(0,i._)([(0,c.MZ)({type:p.jz,json:{write:{enabled:!0,isRequired:!0}}})],W.prototype,"id",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:!0}})],W.prototype,"label",void 0),(0,i._)([(0,c.MZ)({type:Number,clonable:!1,readOnly:!0,range:{min:0,max:360}})],W.prototype,"orientation",null),(0,i._)([(0,c.MZ)({type:Number,clonable:!1,readOnly:!0,range:{min:0,max:360}})],W.prototype,"tilt",null),(0,i._)([(0,c.MZ)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],W.prototype,"normal",void 0),(0,i._)([(0,c.MZ)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],W.prototype,"point",void 0),(0,i._)([(0,c.MZ)({type:[p.jz],json:{write:{enabled:!0,isRequired:!0}}})],W.prototype,"sizeInPixel",void 0),(0,i._)([(0,c.MZ)({type:[J],json:{write:!0}})],W.prototype,"slices",void 0),(0,i._)([(0,c.MZ)({type:p.jz,json:{default:0,write:!0}})],W.prototype,"timeId",void 0),(0,i._)([(0,c.MZ)({type:p.jz,json:{write:{enabled:!0,isRequired:!0}}})],W.prototype,"variableId",void 0),W=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelSection")],W);const Y=W;let Q=class extends P.A{constructor(){super(...arguments),this.diffuseFactor=.5,this.specularFactor=.5}};(0,i._)([(0,c.MZ)({type:Number,range:{min:0,max:1},json:{default:.5,write:!0}})],Q.prototype,"diffuseFactor",void 0),(0,i._)([(0,c.MZ)({type:Number,range:{min:0,max:1},json:{default:.5,write:!0}})],Q.prototype,"specularFactor",void 0),Q=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelSimpleShading")],Q);const X=Q;let ee=class extends P.A{constructor(){super(...arguments),this.continuity=null,this.hasNoData=!1,this.noData=0,this.offset=0,this.scale=1,this.type=null}};(0,i._)([(0,c.MZ)({type:["discrete","continuous"],json:{write:!0}})],ee.prototype,"continuity",void 0),(0,i._)([(0,c.MZ)({type:Boolean,json:{write:!0}})],ee.prototype,"hasNoData",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{write:!0}})],ee.prototype,"noData",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{write:!0}})],ee.prototype,"offset",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{write:!0}})],ee.prototype,"scale",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],ee.prototype,"type",void 0),ee=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelFormat")],ee);const te=ee;let re=class extends P.A{constructor(){super(...arguments),this.id=null,this.description="",this.name=null,this.originalFormat=null,this.renderingFormat=null,this.unit="",this.volumeId=0,this.type=null}};(0,i._)([(0,c.MZ)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],re.prototype,"id",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:!0}})],re.prototype,"description",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],re.prototype,"name",void 0),(0,i._)([(0,c.MZ)({type:te,json:{write:!0}})],re.prototype,"originalFormat",void 0),(0,i._)([(0,c.MZ)({type:te,json:{write:{enabled:!0,isRequired:!0}}})],re.prototype,"renderingFormat",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:!0}})],re.prototype,"unit",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{write:!0}})],re.prototype,"volumeId",void 0),(0,i._)([(0,c.MZ)({type:["stc-hot-spot-results","stc-cluster-outlier-results","stc-estimated-bin","generic-nearest-interpolated"],json:{write:!0}})],re.prototype,"type",void 0),re=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelVariable")],re);const ie=re;var ne=r(4718),oe=r(68197);let se=class extends(R.A.ClonableMixin(P.A)){constructor(){super(...arguments),this.color=oe.A.fromArray([0,0,0,0]),this.value=0,this.enabled=!0,this.label="",this.colorLocked=!1}};(0,i._)([(0,c.MZ)({type:oe.A,json:{type:[p.jz],write:{enabled:!0,isRequired:!0}}})],se.prototype,"color",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],se.prototype,"value",void 0),(0,i._)([(0,c.MZ)({type:Boolean,json:{default:!0,write:!0}})],se.prototype,"enabled",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:!0}})],se.prototype,"label",void 0),(0,i._)([(0,c.MZ)({type:Boolean,json:{default:!1,write:!0}})],se.prototype,"colorLocked",void 0),se=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelIsosurface")],se);const ae=se;var le=r(62885),ue=r(34727);let ce=class extends(R.A.ClonableMixin(P.A)){constructor(){super(...arguments),this.color=null,this.position=0}};(0,i._)([(0,c.MZ)({type:oe.A,json:{type:[p.jz],write:{enabled:!0,isRequired:!0}}})],ce.prototype,"color",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],ce.prototype,"position",void 0),ce=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelColorStop")],ce);const pe=ce;let de=class extends(R.A.ClonableMixin(P.A)){constructor(){super(...arguments),this.opacity=1,this.position=0}};(0,i._)([(0,c.MZ)({type:Number,json:{name:"alpha",write:{enabled:!0,isRequired:!0}}})],de.prototype,"opacity",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],de.prototype,"position",void 0),de=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelOpacityStop")],de);const he=de;let ye=class extends(R.A.ClonableMixin(P.A)){constructor(){super(...arguments),this.enabled=!1,this.range=null}};(0,i._)([(0,c.MZ)({type:Boolean,json:{default:!1,write:!0}})],ye.prototype,"enabled",void 0),(0,i._)([(0,c.MZ)({type:[Number],json:{write:{isRequired:!0}}})],ye.prototype,"range",void 0),ye=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelRangeFilter")],ye);const me=ye;var fe,ge;(ge=fe||(fe={}))[ge.Color=1]="Color",ge[ge.Alpha=2]="Alpha",ge[ge.Both=3]="Both";let ve=class extends(R.A.ClonableMixin(P.A)){constructor(e){super(e),this.interpolation=null,this.stretchRange=null,this.rangeFilter=null,this._colorMapSize=256,this.colorStops=new(o.A.ofType(pe)),this.opacityStops=new(o.A.ofType(he))}set colorStops(e){this._set("colorStops",(0,le.V)(e,this._get("colorStops"),o.A.ofType(pe)))}set opacityStops(e){this._set("opacityStops",(0,le.V)(e,this._get("opacityStops"),o.A.ofType(he)))}getPreviousNext(e,t,r){let i=e;for(;--i>0&&t[i].type!==r&&t[i].type!==fe.Both;);let n=e;const o=t.length;for(;++n<o&&t[n].type!==r&&t[n].type!==fe.Both;);return[i,n]}get rasterizedTransferFunction(){const e=[];if(this.colorStops.length<2)return e;const t=[],r=[];for(const t of this.colorStops){if(!t.color)return e;r.push({color:{r:t.color.r,g:t.color.g,b:t.color.b,a:Math.round(255*(1-t.color.a))},position:t.position,type:fe.Color})}if(0===this.opacityStops.length)for(const e of r)t.push({color:e.color,position:e.position});else{for(const e of this.opacityStops){const t=(0,ue.qE)(e.position,0,1),i=Math.round(255*(0,ue.qE)(1-e.opacity,0,1));let n=!1;for(const e of r)if(e.type===fe.Color&&Math.abs(e.position-t)<1e-5){e.color.a=i,e.type=fe.Both,n=!0;break}n||r.push({color:{r:0,g:0,b:0,a:i},position:e.position,type:fe.Alpha})}r.sort(((e,t)=>e.position<t.position?-1:1));const e=r.length;for(let t=0;t<e;++t){const i=r[t];if(i.type!==fe.Both)if(i.type===fe.Color){const[n,o]=this.getPreviousNext(t,r,fe.Alpha);if(-1!==n&&o!==e){const e=(i.position-r[n].position)/(r[o].position-r[n].position);i.color.a=Math.round((0,ue.Cc)(r[n].color.a,r[o].color.a,e))}else i.color.a=-1!==n?r[n].color.a:r[o].color.a}else{const[n,o]=this.getPreviousNext(t,r,fe.Color);if(-1!==n&&o!==e){const e=(i.position-r[n].position)/(r[o].position-r[n].position),t=r[n].color,s=r[o].color;Se.forEach((r=>{i.color[r]=Math.round((0,ue.Cc)(t[r],s[r],e))}))}else-1!==n?Se.forEach((e=>{i.color[e]=r[n].color[e]})):Se.forEach((e=>{i.color[e]=r[o].color[e]}))}}for(const e of r)t.push({color:e.color,position:e.position})}t[0].position=0,t[t.length-1].position=1;let i=0,n=1;for(let r=0;r<this._colorMapSize;++r){const o=r/this._colorMapSize;for(;o>t[n].position;)i=n++;const s=(o-t[i].position)/(t[n].position-t[i].position),a=t[i].color,l=t[n].color,u=new oe.A;Se.forEach((e=>{u[e]=Math.round((0,ue.Cc)(a[e],l[e],s))})),u.a=(0,ue.qE)(1-(0,ue.Cc)(a.a,l.a,s)/255,0,1),e.push(u)}return e}getColorForContinuousDataValue(e,t){const r=this.rasterizedTransferFunction;if(this.colorStops.length<2||!Array.isArray(this.stretchRange)||this.stretchRange.length<2||r.length<256)return null;let i=this.stretchRange[0],n=this.stretchRange[1];if(i>n){const e=i;i=n,n=e}e=(0,ue.qE)(e,i,n);const o=r[Math.round((e-i)/(n-i)*(this._colorMapSize-1))].clone();return t||(o.a=1),o}};(0,i._)([(0,c.MZ)({type:["linear","nearest"],json:{write:!0}})],ve.prototype,"interpolation",void 0),(0,i._)([(0,c.MZ)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],ve.prototype,"stretchRange",void 0),(0,i._)([(0,c.MZ)({type:o.A.ofType(pe),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.colorStops&&this.colorStops.length>0}}}}})],ve.prototype,"colorStops",null),(0,i._)([(0,c.MZ)({type:o.A.ofType(he),json:{read:{source:"alphaStops"},write:{enabled:!0,target:"alphaStops",overridePolicy(){return{enabled:!!this.opacityStops&&this.opacityStops.length>0}}}}})],ve.prototype,"opacityStops",null),(0,i._)([(0,c.MZ)({type:me,json:{write:!0}})],ve.prototype,"rangeFilter",void 0),(0,i._)([(0,c.MZ)({type:[oe.A],clonable:!1,json:{read:!1}})],ve.prototype,"rasterizedTransferFunction",null),ve=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelTransferFunctionStyle")],ve);const be=ve,Se=["r","g","b"];let we=class extends(R.A.ClonableMixin(P.A)){constructor(){super(...arguments),this.color=oe.A.fromArray([0,0,0,0]),this.value=0,this.enabled=!0,this.label=""}};(0,i._)([(0,c.MZ)({type:oe.A,json:{type:[p.jz],write:{enabled:!0,isRequired:!0}}})],we.prototype,"color",void 0),(0,i._)([(0,c.MZ)({type:p.jz,json:{write:{enabled:!0,isRequired:!0}}})],we.prototype,"value",void 0),(0,i._)([(0,c.MZ)({type:Boolean,json:{default:!0,write:!0}})],we.prototype,"enabled",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:!0}})],we.prototype,"label",void 0),we=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelUniqueValue")],we);const Me=we;var _e;let xe=_e=class extends P.A{constructor(e){super(e),this.variableId=0,this.label="",this.transferFunction=null,this.uniqueValues=null,this.isosurfaces=null,this.uniqueValues=new(o.A.ofType(Me)),this.isosurfaces=new(o.A.ofType(ae))}clone(){return new _e({variableId:this.variableId,label:this.label,transferFunction:(0,ne.o8)(this.transferFunction),uniqueValues:(0,ne.o8)(this.uniqueValues),isosurfaces:(0,ne.o8)(this.isosurfaces)})}};(0,i._)([(0,c.MZ)({type:p.jz,json:{write:{enabled:!0,isRequired:!0}}})],xe.prototype,"variableId",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:!0}})],xe.prototype,"label",void 0),(0,i._)([(0,c.MZ)({type:be,json:{write:{enabled:!0,overridePolicy(){return{enabled:!this.uniqueValues||this.uniqueValues.length<1}}}}})],xe.prototype,"transferFunction",void 0),(0,i._)([(0,c.MZ)({type:o.A.ofType(Me),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.uniqueValues&&this.uniqueValues.length>0}}}}})],xe.prototype,"uniqueValues",void 0),(0,i._)([(0,c.MZ)({type:o.A.ofType(ae),json:{write:{enabled:!0,overridePolicy(){const e=!this.uniqueValues||this.uniqueValues.length<1,t=!!this.isosurfaces&&this.isosurfaces.length>0;return{enabled:e&&t}}}}})],xe.prototype,"isosurfaces",void 0),xe=_e=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelVariableStyle")],xe);const Ae=xe;var Ie=r(88930),je=r(86738),Ze=r(16930),Ne=r(21325);function Re(e){const t=/^(days?|hours?|minutes?|seconds?|d|h|m|s) since (\d{1,4})-(\d{1,2})-(\d{1,2})[ |T](\d{1,2}):(\d{1,2}):(\d{1,2})(\.[0-9]+)?[\s|Z]?(([+|\-|\s?])(\d{1,2}):(\d{1,2}))?$/i.exec(e);if(null==t)return{didParse:!1};const[,r,i,n,o,s,a,l,u,c,p,d,h]=t;let y="seconds";const m=r.charAt(0).toLowerCase();"d"===m?y="days":"h"===m?y="hours":"m"===m&&(y="minutes");const f=parseInt(i,10);if(Number.isNaN(f))return{didParse:!1};const g=parseInt(n,10);if(Number.isNaN(g)||g<1||g>12)return{didParse:!1};const v=parseInt(o,10);if(Number.isNaN(v)||v<1||v>31)return{didParse:!1};if(2===g){const e=f%4==0&&(f%100!=0||f%400==0);if(e&&v>29||!e&&v>28)return{didParse:!1}}else if((4===g||6===g||9===g||11===g)&&v>30)return{didParse:!1};const b=parseInt(s,10);if(Number.isNaN(b)||b<0||b>23)return{didParse:!1};const S=parseInt(a,10);if(Number.isNaN(S)||S<0||S>59)return{didParse:!1};const w=parseInt(l,10);if(Number.isNaN(w)||w<0||w>59)return{didParse:!1};let M=1,_=0,x=0;if(p&&(M="-"===p?-1:1),d){if(_=parseInt(d,10),Number.isNaN(_)||_<0)return{didParse:!1};if(0!==_){const e=M*_;if(e<-12||e>14)return{didParse:!1}}}if(h&&(x=parseInt(h,10),Number.isNaN(x)||x<0||x>59))return{didParse:!1};const A=`${f}`.padStart(4,"0"),I=`${g}`.padStart(2,"0"),j=`${v}`.padStart(2,"0"),Z=`${b}`.padStart(2,"0"),N=`${S}`.padStart(2,"0"),R=`${w}`.padStart(2,"0");let V="Z";return 0===_&&0===x||(V=M>0?"+":"-",V+=`${_}`.padStart(2,"0"),V+=":",V+=`${x}`.padStart(2,"0")),{didParse:!0,unit:y,reference:new Date(`${A}-${I}-${j}T${Z}:${N}:${R}.000${V}`)}}let Ve=class extends P.A{constructor(){super(...arguments),this.values=null}};(0,i._)([(0,c.MZ)({type:[Number],json:{write:!0}})],Ve.prototype,"values",void 0),Ve=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelIrregularSpacing")],Ve);const Pe=Ve;let Te=class extends P.A{constructor(){super(...arguments),this.scale=1,this.offset=0}};(0,i._)([(0,c.MZ)({type:Number,json:{write:!0}})],Te.prototype,"scale",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{write:!0}})],Te.prototype,"offset",void 0),Te=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelRegularSpacing")],Te);const Ue=Te;let Oe=class extends P.A{constructor(){super(...arguments),this.irregularSpacing=null,this.isPositiveUp=!0,this.isWrappedDateLine=!1,this.label=null,this.name=null,this.quantity=null,this.regularSpacing=null,this.size=0,this.unit=null}get isRegular(){return(null==this.irregularSpacing||void 0===this.irregularSpacing)&&null!==this.regularSpacing}getRange(){return this.isRegular?[this.regularSpacing.offset,this.regularSpacing.offset+this.regularSpacing.scale*(this.size-1)]:Array.isArray(this.irregularSpacing?.values)&&this.irregularSpacing.values.length>1?[this.irregularSpacing.values[0],this.irregularSpacing.values[this.irregularSpacing.values.length-1]]:[0,0]}};(0,i._)([(0,c.MZ)({type:Pe,json:{write:!0}})],Oe.prototype,"irregularSpacing",void 0),(0,i._)([(0,c.MZ)({type:Boolean,json:{write:!0}})],Oe.prototype,"isPositiveUp",void 0),(0,i._)([(0,c.MZ)({type:Boolean,json:{write:!0}})],Oe.prototype,"isWrappedDateLine",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:!0}})],Oe.prototype,"label",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:!0}})],Oe.prototype,"name",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:!0}})],Oe.prototype,"quantity",void 0),(0,i._)([(0,c.MZ)({type:Ue,json:{write:!0}})],Oe.prototype,"regularSpacing",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{write:!0}})],Oe.prototype,"size",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:!0}})],Oe.prototype,"unit",void 0),(0,i._)([(0,c.MZ)({type:Boolean,json:{read:!1}})],Oe.prototype,"isRegular",null),Oe=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelDimension")],Oe);const ze=Oe;let Ee=class extends P.A{constructor(e){super(e),this.id=0,this.dimensions=null,this.spatialReference=Ze.A.WGS84}get zDimension(){if(!this.dimensions)return-1;if(!Array.isArray(this.dimensions))return-1;if(4!==this.dimensions.length)return-1;for(let e=2;e<4;++e)if(this.dimensions[e].size>0)return e;return-1}get isValid(){return!(!this.dimensions||!Array.isArray(this.dimensions)||4!==this.dimensions.length||this.dimensions[0].size<1||this.dimensions[1].size<1||-1===this.zDimension||this.dimensions[this.zDimension].size<1)}get originInLayerSpace3D(){if(!this.isValid||"xyt"===this.volumeType)return[0,0,0];const e=this.dimensions[0].getRange(),t=this.dimensions[1].getRange(),r=this.dimensions[2],i=r.isRegular?r.getRange():[0,r.size];return[e[0],t[0],i[0]]}get voxelSizeInLayerSpaceSigned(){if(!this.isValid||"xyt"===this.volumeType)return[0,0,0];const e=this.dimensions[0].getRange(),t=this.dimensions[1].getRange(),r=this.dimensions[2],i=r.isRegular?r.getRange():[0,r.size],n=[this.sizeInVoxels[0],this.sizeInVoxels[1],this.sizeInVoxels[2]];for(let e=0;e<3;++e)n[e]<2?n[e]=1:n[e]-=1;return r.isRegular&&!r.isPositiveUp&&(n[2]*=-1),[(e[1]-e[0])/n[0],(t[1]-t[0])/n[1],(i[1]-i[0])/n[2]]}get volumeType(){if(this.isValid){const e=this.dimensions[2].size>0;let t=this.dimensions[3].size>0;if(t){const e=this.dimensions[3];t="time"===e.quantity,t&&null!==e.unit&&(t=Re(e.unit).didParse)}if(!e&&t)return"xyt";if(e&&t)return"xyzt"}return"xyz"}get sizeInVoxels(){if(!this.isValid)return[0,0,0];const e=this.zDimension;return[this.dimensions[0].size,this.dimensions[1].size,this.dimensions[e].size]}get timeStops(){if("xyzt"!==this.volumeType)return[];const e=this.dimensions[3],t=[],r=Re(e.unit);if(r.didParse)if(e.isRegular){const i=e.regularSpacing?.offset??0,n=e.regularSpacing?.scale||1;for(let o=0;o<e.size;++o){const e=i+n*o;t.push((0,Ie.mi)(r.reference,e,r.unit))}}else if(Array.isArray(e.irregularSpacing?.values)&&e.irregularSpacing.values.length>0)for(let i=0;i<e.irregularSpacing.values.length;++i){const n=e.irregularSpacing.values[i];t.push((0,Ie.mi)(r.reference,n,r.unit))}return t}computeVoxelSpaceLocation(e){if(!this.isValid)return[0,0,0];if("xyt"===this.volumeType)return a.A.getLogger(this).error("computeVoxelSpacePosition cannot be used with XYT volumes."),[0,0,0];if(!(0,Ne.aI)(this.spatialReference,e.spatialReference))return a.A.getLogger(this).error("pos argument should have the same spatial reference as the VoxelLayer."),[0,0,0];const t=(0,m.fA)(e.x,e.y,e.z??0);(0,y.d)(t,t,this.originInLayerSpace3D),(0,y.E)(t,t,this.voxelSizeInLayerSpaceSigned);const r=this.dimensions[this.zDimension];if(!r.isRegular&&Array.isArray(r.irregularSpacing?.values)&&r.irregularSpacing.values.length>1){const i=e.z??0,n=r.irregularSpacing.values,o=r.isPositiveUp?1:-1,s=n.reduce(((e,t)=>Math.abs(o*t-i)<Math.abs(o*e-i)?t:e));for(let e=0;e<n.length;++e)if(n[e]===s){t[2]=e;break}}return[t[0],t[1],t[2]]}computeLayerSpaceLocation(e){if(!this.isValid)return new je.A({x:0,y:0,spatialReference:this.spatialReference});const t=(0,m.ci)(e);if((0,y.C)(t,t,this.voxelSizeInLayerSpaceSigned),(0,y.g)(t,t,this.originInLayerSpace3D),"xyt"===this.volumeType)return new je.A({x:t[0],y:t[1],spatialReference:this.spatialReference});const r=this.dimensions[this.zDimension];return r.isRegular||Array.isArray(r.irregularSpacing?.values)&&(e[2]<0?t[2]=r.irregularSpacing.values[0]:e[2]<r.irregularSpacing.values.length?t[2]=r.irregularSpacing.values[e[2]]:t[2]=r.irregularSpacing.values[r.irregularSpacing.values.length-1],r.isPositiveUp||(t[2]*=-1)),new je.A({x:t[0],y:t[1],z:t[2],spatialReference:this.spatialReference})}};(0,i._)([(0,c.MZ)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],Ee.prototype,"id",void 0),(0,i._)([(0,c.MZ)({type:[ze],json:{write:{enabled:!0,isRequired:!0}}})],Ee.prototype,"dimensions",void 0),(0,i._)([(0,c.MZ)({type:Ze.A,json:{read:{enabled:!1}}})],Ee.prototype,"spatialReference",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{read:!1}})],Ee.prototype,"zDimension",null),(0,i._)([(0,c.MZ)({type:[Boolean],json:{read:!1}})],Ee.prototype,"isValid",null),(0,i._)([(0,c.MZ)({type:[Number],json:{read:!1}})],Ee.prototype,"originInLayerSpace3D",null),(0,i._)([(0,c.MZ)({type:[Number],json:{read:!1}})],Ee.prototype,"voxelSizeInLayerSpaceSigned",null),(0,i._)([(0,c.MZ)({type:["xyz","xyzt","xyt"],json:{read:{enabled:!1}}})],Ee.prototype,"volumeType",null),(0,i._)([(0,c.MZ)({type:[Number],json:{read:!1}})],Ee.prototype,"sizeInVoxels",null),(0,i._)([(0,c.MZ)({type:[Date],json:{read:!1,write:!1}})],Ee.prototype,"timeStops",null),Ee=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelVolume")],Ee);const Le=Ee;var Fe;let qe=Fe=class extends P.A{constructor(){super(...arguments),this.apronWidth=1,this.brickSize=[32,32,32],this.maxLodLevel=0,this.nodeSize=[4,4,4]}isValid(){const e=new Fe;return e.apronWidth===this.apronWidth&&e.maxLodLevel===this.maxLodLevel&&!!this.brickSize&&!!this.nodeSize&&!(!Array.isArray(this.brickSize)||!Array.isArray(this.nodeSize))&&3===this.brickSize.length&&3===this.nodeSize.length&&32===this.brickSize[0]&&32===this.brickSize[1]&&32===this.brickSize[2]&&4===this.nodeSize[0]&&4===this.nodeSize[1]&&4===this.nodeSize[2]}};(0,i._)([(0,c.MZ)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],qe.prototype,"apronWidth",void 0),(0,i._)([(0,c.MZ)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],qe.prototype,"brickSize",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],qe.prototype,"maxLodLevel",void 0),(0,i._)([(0,c.MZ)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],qe.prototype,"nodeSize",void 0),qe=Fe=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelVolumeIndex")],qe);const $e=qe;let De=class extends(R.A.ClonableMixin(P.A)){constructor(e){super(e),this.enabled=!0,this.label="",this.normal=null,this.point=null}get orientation(){if(!Array.isArray(this.normal)||3!==this.normal.length)return 0;const[e,t]=B(this.normal);return V.ie.normalize((0,p.GB)(e),0,!0)}set orientation(e){const t=k(e,this.tilt);this._set("normal",t),this._set("orientation",e)}get tilt(){if(!Array.isArray(this.normal)||3!==this.normal.length)return 0;const[e,t]=B(this.normal);return V.ie.normalize((0,p.GB)(t),0,!0)}set tilt(e){const t=k(this.orientation,e);this._set("normal",t),this._set("tilt",e)}};(0,i._)([(0,c.MZ)({type:Boolean,json:{default:!0,write:!0}})],De.prototype,"enabled",void 0),(0,i._)([(0,c.MZ)({type:String,json:{write:!0}})],De.prototype,"label",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{read:!1},clonable:!1,range:{min:0,max:360}}),(0,H.w)((e=>V.ie.normalize((0,p.GB)(e),0,!0)))],De.prototype,"orientation",null),(0,i._)([(0,c.MZ)({type:Number,json:{read:!1},clonable:!1,range:{min:0,max:360}}),(0,H.w)((e=>V.ie.normalize((0,p.GB)(e),0,!0)))],De.prototype,"tilt",null),(0,i._)([(0,c.MZ)({type:[Number],json:{write:{isRequired:!0}}})],De.prototype,"normal",void 0),(0,i._)([(0,c.MZ)({type:[Number],json:{write:{isRequired:!0}}})],De.prototype,"point",void 0),De=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelDynamicSection")],De);const Ce=De;var Be;let ke=Be=class extends P.A{constructor(e){super(e),this.volumeId=0,this.verticalExaggeration=1,this.exaggerationMode="scale-height",this.verticalOffset=0,this.slices=new(o.A.ofType(J)),this.dynamicSections=new(o.A.ofType(Ce))}set slices(e){this._set("slices",(0,le.V)(e,this._get("slices"),o.A.ofType(J)))}set dynamicSections(e){this._set("dynamicSections",(0,le.V)(e,this._get("dynamicSections"),o.A.ofType(Ce)))}clone(){return new Be({volumeId:this.volumeId,verticalExaggeration:this.verticalExaggeration,exaggerationMode:this.exaggerationMode,verticalOffset:this.verticalOffset,slices:(0,ne.o8)(this.slices),dynamicSections:(0,ne.o8)(this.dynamicSections)})}};(0,i._)([(0,c.MZ)({type:p.jz,json:{write:{enabled:!0,isRequired:!0}}})],ke.prototype,"volumeId",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{default:1,write:!0}})],ke.prototype,"verticalExaggeration",void 0),(0,i._)([(0,c.MZ)({type:["scale-position","scale-height"],json:{default:"scale-height",write:!0}})],ke.prototype,"exaggerationMode",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{default:0,write:!0}})],ke.prototype,"verticalOffset",void 0),(0,i._)([(0,c.MZ)({type:o.A.ofType(J),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.slices&&this.slices.length>0}}}}})],ke.prototype,"slices",null),(0,i._)([(0,c.MZ)({type:o.A.ofType(Ce),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.dynamicSections&&this.dynamicSections.length>0}}}}})],ke.prototype,"dynamicSections",null),ke=Be=(0,i._)([(0,h.$)("esri.layers.voxel.VoxelVolumeStyle")],ke);const He=ke;var Ke=r(30291),Je=r(79677),Ge=r(10184);let We=class extends((0,x.w6)((0,b.b)((0,w.q)((0,M.A)((0,_.j)((0,l.P)((0,S.d)((0,v.p)(g.A))))))))){constructor(e){super(e),this.serviceRoot="",this.operationalLayerType="Voxel",this.legendEnabled=!0,this.title=null,this.sections=null,this.currentVariableId=0,this.volumeStyles=null,this.renderMode="volume",this.variableStyles=null,this.enableSlices=!0,this.enableSections=!0,this.enableDynamicSections=!0,this.enableIsosurfaces=!0,this.shading=new X,this.opacity=1,this.variables=new o.A,this.volumes=new o.A,this.index=null,this.minScale=0,this.maxScale=0,this.type="voxel",this.version={major:Number.NaN,minor:Number.NaN,versionString:""},this.fullExtent=null,this.popupEnabled=!1,this.popupTemplate=null,this.test=null,this.timeExtent=null,this.timeOffset=null,this.useViewTime=!0,this.volumeStyles=new(o.A.ofType(He)),this.variableStyles=new(o.A.ofType(Ae)),this.sections=new(o.A.ofType(Y))}normalizeCtorArgs(e){return e?.constantUpscaling&&(this.test={constantUpscaling:!0},delete e.constantUpscaling),e}set url(e){this._set("url",(0,A.Jf)(e,a.A.getLogger(this)))}load(e){const t=null!=e?e.signal:null,r=this.loadFromPortal({supportedTypes:["Scene Service"]},e).catch(u.QP).then((()=>this._fetchService(t))).then((()=>this.serviceRoot=this.url));return this.addResolvingPromise(r),Promise.resolve(this)}read(e,t){super.read(e,t),"service"===t?.origin&&this.version.major<=3&&this.version.minor<=0&&!this.getAtOrigin("popupTemplate","service")&&this.setAtOrigin("popupTemplate",this.createPopupTemplate(),"service");for(const e of this.volumes)e.spatialReference=this.spatialReference}readVersion(e,t){return super.parseVersionString(e)}validateLayer(e){if(e.layerType&&e.layerType!==this.operationalLayerType)throw new s.A("voxel-layer:layer-type-not-supported","VoxelLayer does not support this layer type",{layerType:e.layerType});if(isNaN(this.version.major)||isNaN(this.version.minor)||this.version.major<3)throw new s.A("layer:service-version-not-supported","Service version is not supported.",{serviceVersion:this.version.versionString,supportedVersions:"3.x"});if(this.version.major>3)throw new s.A("layer:service-version-too-new","Service version is too new.",{serviceVersion:this.version.versionString,supportedVersions:"3.x"})}readFullExtent(e,t,r){if(null!=e&&"object"==typeof e){const i=f.A.fromJSON(e,r);if(0===i.zmin&&0===i.zmax&&Array.isArray(t.volumes)){const e=Le.fromJSON(t.volumes[0]);if(e.isValid&&"xyt"!==e.volumeType){const t=e.dimensions[2];if(t.isRegular){let e=t.regularSpacing.offset,r=t.regularSpacing.offset+t.regularSpacing.scale*(t.size-1);if(e>r){const t=e;e=r,r=t}i.zmin=e,i.zmax=r}}}return i}return null}get fields(){const e=[new j.A({name:"Voxel.Position",alias:"Voxel Position",domain:null,editable:!1,length:128,type:"string"}),new j.A({name:"Voxel.CurrentVariable",alias:"Current Variable",domain:null,editable:!1,length:128,type:"string"})];for(const t of this.variables){const r=new j.A({name:t.name,alias:t.description,domain:null,editable:!1,length:128,type:"discrete"===t.renderingFormat.continuity?"string":"double"});e.push(r)}const t=this.getVolume(null);if(null!=t){if("xyzt"===t.volumeType||"xyt"===t.volumeType){const t=new j.A({name:"Voxel.LocalTime",alias:"Local Time",domain:null,editable:!1,length:256,type:"date"});e.push(t);const r=new j.A({name:"Voxel.SourceTime",alias:"Source Time",domain:null,editable:!1,length:256,type:"string"});e.push(r)}if("xyt"!==t.volumeType){const t=new j.A({name:"Voxel.Depth",alias:"Depth",domain:null,editable:!1,length:128,type:"double"});e.push(t)}}return e}get fieldsIndex(){return this.loaded?new Z.A(this.fields):null}getField(e){return this.fieldsIndex?.get(e)}get defaultPopupTemplate(){return this.createPopupTemplate()}createPopupTemplate(e){const t=this.fields;return(0,Ke.tn)({fields:t,title:"{Voxel.Position}"},e)}getConfiguration(){const e={layerType:this.operationalLayerType,version:this.version.versionString,name:this.title,spatialReference:this.spatialReference,fullExtent:this.fullExtent,volumes:this.volumes.toJSON(),variables:this.variables.toJSON(),index:this.index?.toJSON(),sections:this.getSections(),style:{volumeStyles:this.getVolumeStyles(),currentVariableId:this.currentVariableId,renderMode:this.renderMode,variableStyles:this.getVariableStyles(),enableSections:this.enableSections,enableDynamicSections:this.enableDynamicSections,enableIsosurfaces:this.enableIsosurfaces,enableSlices:this.enableSlices,shading:this.shading}};return e.index&&this.index?.isValid()?JSON.stringify(e):""}getVariableStyle(e){let t=-1;if(t=null!=e?e:this.currentVariableId,!this.variableStyles||-1===t)return null;const r=this.variableStyles.findIndex((e=>e.variableId===t));return r<0?null:this.variableStyles.at(r)}getVariable(e){let t=-1;if(t=null!=e?e:this.currentVariableId,!this.variables||-1===t)return null;const r=this.variables.findIndex((e=>e.id===t));return r<0?null:this.variables.at(r)}getVolume(e){const t=this.getVariable(e);return null!=t?this.volumes.find((({id:e})=>e===t.volumeId)):null}get timeInfo(){const e=this.getVolume(null);if("xyzt"!==e?.volumeType)return null;const t=e.timeStops;if(!t?.length)return null;const r=new Je.A({start:t[0],end:t.at(-1)});return new N.A({fullTimeExtent:r,stops:t})}getVolumeStyle(e){const t=this.getVariable(e);return null!=t?this.volumeStyles.find((({volumeId:e})=>e===t.volumeId)):null}getColorForContinuousDataValue(e,t,r){const i=this.getVariable(e);if(null==i||"continuous"!==i.renderingFormat?.continuity)return null;if(!this.variableStyles)return null;const n=this.variableStyles.findIndex((t=>t.variableId===e));if(n<0)return null;const o=this.variableStyles.at(n);return o?.transferFunction?o.transferFunction.getColorForContinuousDataValue(t,r):null}getSections(){const e=[];for(const t of this.sections)e.push(new Y({enabled:t.enabled,href:t.href,id:t.id,label:t.label,normal:t.normal,point:t.point,sizeInPixel:t.sizeInPixel,slices:t.slices,timeId:t.timeId,variableId:t.variableId}));return e}getVariableStyles(){const e=[];for(const t of this.variableStyles){const r=this._getVariable(t);if(null!=r){const i=t.clone();i.isosurfaces.length>4&&(i.isosurfaces=i.isosurfaces.slice(0,3),a.A.getLogger(this).error("A maximum of 4 isosurfaces are supported for Voxel Layers."));for(const e of i.isosurfaces)if(!e.colorLocked){const t=this.getColorForContinuousDataValue(i.variableId,e.value,!1);null==t||t.equals(e.color)||(e.color=t)}if("continuous"===r.renderingFormat.continuity)(null===i.transferFunction||i.transferFunction.colorStops.length<2)&&a.A.getLogger(this).error(`VoxelVariableStyle for variable ${r.id} is invalid. At least 2 color stops are required in the transferFunction for continuous Voxel Layer variables.`),null!==i.transferFunction&&(Array.isArray(i.transferFunction.stretchRange)&&2===i.transferFunction.stretchRange.length||(a.A.getLogger(this).error(`VoxelVariableStyle for variable ${r.id} is invalid. The stretchRange of the transferFunction for continuous Voxel Layer variables must be of the form [minimumDataValue, maximumDataValue].`),i.transferFunction.stretchRange=[0,1],i.transferFunction.colorStops.removeAll()));else if("discrete"===r.renderingFormat.continuity)if(0===t.uniqueValues.length)a.A.getLogger(this).error(`VoxelVariableStyle for variable ${r.id} is invalid. Unique values are required for discrete Voxel Layer variables.`);else for(const e of t.uniqueValues)null!==e.label&&void 0!==e.label||null===e.value||void 0===e.value||(e.label=e.value.toString());e.push(i)}else a.A.getLogger(this).error(`VoxelVariable ID=${t.variableId} doesn't exist, VoxelVariableStyle for this VoxelVariable will be ignored.`)}return e}getVolumeStyles(){const e=[];for(const t of this.volumeStyles){const r=this._getVolumeFromVolumeId(t.volumeId);if(null!=r){const i=t.clone();for(const e of i.slices)this._isPlaneValid(e,[0,1,r.zDimension],r.dimensions)||(e.enabled=!1,e.label="invalid");for(const e of i.dynamicSections)this._isPlaneValid(e,[0,1,r.zDimension],r.dimensions)||(e.enabled=!1,e.label="invalid");e.push(i)}else a.A.getLogger(this).error(`VoxelVolume ID=${t.volumeId} doesn't exist, VoxelVolumeStyle for this VoxelVolume will be ignored.`)}return e}_getVariable(e){const t=e.variableId;for(const e of this.variables)if(e.id===t)return e;return null}_getVolumeFromVolumeId(e){for(const t of this.volumes)if(t.id===e)return t;return null}_isPlaneValid(e,t,r){if(!e.point)return!1;if(!Array.isArray(e.point)||3!==e.point.length)return!1;if(!e.normal)return!1;if(!Array.isArray(e.normal)||3!==e.normal.length)return!1;const i=(0,m.fA)(e.normal[0],e.normal[1],e.normal[2]);return(0,y.n)(i,i),!(Math.abs(i[0])+Math.abs(i[1])+Math.abs(i[2])<1e-6||(e.normal[0]=i[0],e.normal[1]=i[1],e.normal[2]=i[2],0))}};(0,i._)([(0,c.MZ)({type:["Voxel"]})],We.prototype,"operationalLayerType",void 0),(0,i._)([(0,c.MZ)(I.fV)],We.prototype,"legendEnabled",void 0),(0,i._)([(0,c.MZ)({json:{write:!0}})],We.prototype,"title",void 0),(0,i._)([(0,c.MZ)(I.OZ)],We.prototype,"url",null),(0,i._)([(0,c.MZ)({type:o.A.ofType(Y),json:{origins:{"web-scene":{name:"layerDefinition.sections",write:!0}}}})],We.prototype,"sections",void 0),(0,i._)([(0,c.MZ)({type:p.jz,json:{origins:{"web-scene":{name:"layerDefinition.style.currentVariableId",write:{enabled:!0,isRequired:!0,ignoreOrigin:!0}},service:{name:"style.currentVariableId"}}}})],We.prototype,"currentVariableId",void 0),(0,i._)([(0,c.MZ)({type:o.A.ofType(He),json:{origins:{"web-scene":{name:"layerDefinition.style.volumeStyles",write:!0},service:{name:"style.volumeStyles"}}}})],We.prototype,"volumeStyles",void 0),(0,i._)([(0,c.MZ)({type:["volume","surfaces"],json:{origins:{"web-scene":{name:"layerDefinition.style.renderMode",write:!0},service:{name:"style.renderMode"}}}})],We.prototype,"renderMode",void 0),(0,i._)([(0,c.MZ)({type:o.A.ofType(Ae),json:{origins:{"web-scene":{name:"layerDefinition.style.variableStyles",write:!0},service:{name:"style.variableStyles"}}}})],We.prototype,"variableStyles",void 0),(0,i._)([(0,c.MZ)({type:Boolean,json:{origins:{"web-scene":{name:"layerDefinition.style.enableSlices",write:!0},service:{name:"style.enableSlices"}}}})],We.prototype,"enableSlices",void 0),(0,i._)([(0,c.MZ)({type:Boolean,json:{origins:{"web-scene":{name:"layerDefinition.style.enableSections",write:!0},service:{name:"style.enableSections"}}}})],We.prototype,"enableSections",void 0),(0,i._)([(0,c.MZ)({type:Boolean,json:{origins:{"web-scene":{name:"layerDefinition.style.enableDynamicSections",write:!0},service:{name:"style.enableDynamicSections"}}}})],We.prototype,"enableDynamicSections",void 0),(0,i._)([(0,c.MZ)({type:Boolean,json:{origins:{"web-scene":{name:"layerDefinition.style.enableIsosurfaces",write:!0},service:{name:"style.enableIsosurfaces"}}}})],We.prototype,"enableIsosurfaces",void 0),(0,i._)([(0,c.MZ)({type:X,json:{origins:{"web-scene":{name:"layerDefinition.style.shading",write:!0},service:{name:"style.shading"}}}})],We.prototype,"shading",void 0),(0,i._)([(0,c.MZ)({type:["show","hide"]})],We.prototype,"listMode",void 0),(0,i._)([(0,c.MZ)({type:Number,range:{min:0,max:1},nonNullable:!0,json:{read:!1,write:!1,origins:{"web-scene":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],We.prototype,"opacity",void 0),(0,i._)([(0,c.MZ)({type:o.A.ofType(ie)})],We.prototype,"variables",void 0),(0,i._)([(0,c.MZ)({type:o.A.ofType(Le)})],We.prototype,"volumes",void 0),(0,i._)([(0,c.MZ)({type:$e})],We.prototype,"index",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{name:"layerDefinition.minScale",write:!0,origins:{service:{read:!1,write:!1}}}})],We.prototype,"minScale",void 0),(0,i._)([(0,c.MZ)({type:Number,json:{name:"layerDefinition.maxScale",write:!0,origins:{service:{read:!1,write:!1}}}})],We.prototype,"maxScale",void 0),(0,i._)([(0,c.MZ)({json:{read:!1},readOnly:!0})],We.prototype,"type",void 0),(0,i._)([(0,c.MZ)({readOnly:!0,json:{name:"serviceVersion"}})],We.prototype,"version",void 0),(0,i._)([(0,d.w)("service","version")],We.prototype,"readVersion",null),(0,i._)([(0,c.MZ)({type:f.A})],We.prototype,"fullExtent",void 0),(0,i._)([(0,d.w)("service","fullExtent",["fullExtent"])],We.prototype,"readFullExtent",null),(0,i._)([(0,c.MZ)({readOnly:!0,clonable:!1,json:{read:!1}})],We.prototype,"fields",null),(0,i._)([(0,c.MZ)({readOnly:!0})],We.prototype,"fieldsIndex",null),(0,i._)([(0,c.MZ)({type:Boolean,json:{name:"disablePopup",read:{reader:(e,t)=>!t.disablePopup},write:{enabled:!0,ignoreOrigin:!0,writer(e,t,r){t[r]=!e}},origins:{"portal-item":{default:!0},"web-scene":{default:!0}}}})],We.prototype,"popupEnabled",void 0),(0,i._)([(0,c.MZ)({type:n.A,json:{name:"popupInfo",write:!0}})],We.prototype,"popupTemplate",void 0),(0,i._)([(0,c.MZ)({readOnly:!0,json:{read:!1}})],We.prototype,"defaultPopupTemplate",null),(0,i._)([(0,c.MZ)({type:N.A,readOnly:!0,json:{read:!1}})],We.prototype,"timeInfo",null),(0,i._)([(0,c.MZ)({type:Je.A,json:{read:!1}})],We.prototype,"timeExtent",void 0),(0,i._)([(0,c.MZ)({type:Ge.A,json:{read:!1}})],We.prototype,"timeOffset",void 0),(0,i._)([(0,c.MZ)({type:Boolean,nonNullable:!0,json:{origins:{"web-scene":{name:"timeAnimation",write:!0},service:{read:!1}}}})],We.prototype,"useViewTime",void 0),We=(0,i._)([(0,h.$)("esri.layers.VoxelLayer")],We);const Ye=We},52136:(e,t,r)=>{r.d(t,{p:()=>s});var i=r(90237),n=r(10107),o=(r(44208),r(53966),r(87811),r(40608));const s=e=>{let t=class extends e{get apiKey(){return this._isOverridden("apiKey")?this._get("apiKey"):"portalItem"in this?this.portalItem?.apiKey:null}set apiKey(e){null!=e?this._override("apiKey",e):(this._clearOverride("apiKey"),this.clear("apiKey","user"))}};return(0,i._)([(0,n.MZ)({type:String})],t.prototype,"apiKey",null),t=(0,i._)([(0,o.$)("esri.layers.mixins.APIKeyMixin")],t),t}},18768:(e,t,r)=>{r.d(t,{b:()=>l});var i=r(90237),n=r(53966),o=r(10107),s=(r(44208),r(87811),r(40608)),a=r(60694);const l=e=>{let t=class extends e{get title(){if(this._get("title")&&"defaults"!==this.originOf("title"))return this._get("title");if(this.url){const e=(0,a.qg)(this.url);if(e?.title)return e.title}return this._get("title")||""}set title(e){this._set("title",e)}set url(e){this._set("url",(0,a.Jf)(e,n.A.getLogger(this)))}};return(0,i._)([(0,o.MZ)()],t.prototype,"title",null),(0,i._)([(0,o.MZ)({type:String})],t.prototype,"url",null),t=(0,i._)([(0,s.$)("esri.layers.mixins.ArcGISService")],t),t}},69208:(e,t,r)=>{r.d(t,{d:()=>s});var i=r(90237),n=r(10107),o=(r(44208),r(53966),r(87811),r(40608));const s=e=>{let t=class extends e{constructor(){super(...arguments),this.customParameters=null}};return(0,i._)([(0,n.MZ)({type:Object,json:{write:{overridePolicy:e=>({enabled:!!(e&&Object.keys(e).length>0)})}}})],t.prototype,"customParameters",void 0),t=(0,i._)([(0,o.$)("esri.layers.mixins.CustomParametersMixin")],t),t}},8303:(e,t,r)=>{r.d(t,{A:()=>M});var i=r(90237),n=r(92602),o=r(70333),s=r(78888),a=r(60999),l=r(49186),u=r(53966),c=r(97768),p=r(74887),d=r(84952),h=r(10107),y=(r(44208),r(87811),r(36005)),m=r(40608),f=r(43937),g=r(83531),v=r(20655),b=r(80812),S=r(41318),w=r(10407);const M=e=>{let t=class extends e{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){this.portalItem=(0,c.pR)(this.portalItem),this.resourceReferences.portalItem=null,this.resourceReferences.paths.length=0}set portalItem(e){e!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",e))}readPortalItem(e,t,r){if(t.itemId)return new b.default({id:t.itemId,portal:r?.portal})}writePortalItem(e,t){e?.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem?.id)try{const{load:i}=await r.e(1204).then(r.bind(r,41204));return(0,p.Te)(t),await i({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t)}catch(e){throw(0,p.zf)(e)||u.A.getLogger(this).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch((e=>((0,p.QP)(e),!0))))}async setUserPrivileges(e,t){if(!n.A.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:r,fullEdit:i},content:{updateItem:n}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",r),this._set("userHasFullEditingPrivileges",i),this._set("userHasUpdateItemPrivileges",n)}catch(e){(0,p.QP)(e)}}async _fetchUserPrivileges(e,t){let r=this.portalItem;if(!e||!r||!r.loaded||r.sourceUrl)return this._fetchFallbackUserPrivileges(t);const i=!o.id?.findCredential(this.url),n=e===r.id;if(n&&r.portal.user)return this._getUserPrivileges(r,i);let s,a;if(n)s=r.portal.url;else try{s=await(0,g.wI)(this.url,t)}catch(e){(0,p.QP)(e)}if(!s||!(0,d.b8)(s,r.portal.url))return this._fetchFallbackUserPrivileges(t);try{const e=null!=t?t.signal:null;a=await(o.id?.getCredential(`${s}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,p.QP)(e)}const l=!0,u=!1,c=!1;if(!a)return{features:{edit:l,fullEdit:u},content:{updateItem:c}};try{if(n?await r.reload():(r=new b.default({id:e,portal:{url:s}}),await r.load(t)),r.portal.user)return this._getUserPrivileges(r,i)}catch(e){(0,p.QP)(e)}return{features:{edit:l,fullEdit:u},content:{updateItem:c}}}_getUserPrivileges(e,t){const r=(0,w.It)(e);return t&&(r.features.edit=!0),r}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,p.QP)(e)}return{features:{edit:t,fullEdit:!1},content:{updateItem:!1}}}async _fetchUserHasEditingPrivileges(e){const t=this.url?o.id?.findCredential(this.url):null;if(!t)return!0;const r=_.credential===t?_.user:await this._fetchEditingUser(e);return _.credential=t,_.user=r,null==r?.privileges||r.privileges.includes("features:user:edit")}async _fetchEditingUser(e){const t=this.portalItem?.portal?.user;if(t)return t;const r=o.id?.findServerInfo(this.url??"");if(!r?.owningSystemUrl)return null;const i=`${r.owningSystemUrl}/sharing/rest`,n=v.A.getDefault();if(n&&n.loaded&&(0,d.S8)(n.restUrl)===(0,d.S8)(i))return n.user;const l=`${i}/community/self`,u=null!=e?e.signal:null,c=await(0,a.Ke)((0,s.A)(l,{authMode:"no-prompt",query:{f:"json"},signal:u}));return c.ok?S.A.fromJSON(c.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const r=t?.portal,i=this.portalItem?.id&&(this.portalItem.portal||v.A.getDefault());return r&&i&&!(0,d.ut)(i.restUrl,r.restUrl)?(t.messages&&t.messages.push(new l.A("layer:cross-portal",`The layer '${this.title} (${this.id})' cannot be persisted because it refers to an item on a different portal than the one being saved to. To save, set layer.portalItem to null or save to the same portal as the item associated with the layer`,{layer:this})),null):super.write(e,{...t,layer:this})}};return(0,i._)([(0,h.MZ)({type:b.default})],t.prototype,"portalItem",null),(0,i._)([(0,y.w)("web-document","portalItem",["itemId"])],t.prototype,"readPortalItem",null),(0,i._)([(0,f.K)("web-document","portalItem",{itemId:{type:String}})],t.prototype,"writePortalItem",null),(0,i._)([(0,h.MZ)({clonable:!1})],t.prototype,"resourceReferences",void 0),(0,i._)([(0,h.MZ)({type:Boolean,readOnly:!0})],t.prototype,"userHasEditingPrivileges",void 0),(0,i._)([(0,h.MZ)({type:Boolean,readOnly:!0})],t.prototype,"userHasFullEditingPrivileges",void 0),(0,i._)([(0,h.MZ)({type:Boolean,readOnly:!0})],t.prototype,"userHasUpdateItemPrivileges",void 0),t=(0,i._)([(0,m.$)("esri.layers.mixins.PortalLayer")],t),t},_={credential:null,user:null}},25036:(e,t,r)=>{r.d(t,{j:()=>s});var i=r(90237),n=r(10107),o=(r(44208),r(53966),r(87811),r(40608));const s=e=>{let t=class extends e{constructor(){super(...arguments),this.minScale=0,this.maxScale=0}get effectiveScaleRange(){const e={minScale:this.minScale,maxScale:this.maxScale},t=this.parent;t&&"effectiveScaleRange"in t&&function(e,t){e.minScale=e.minScale>0?t.minScale>0?Math.min(e.minScale,t.minScale):e.minScale:t.minScale,e.maxScale=e.maxScale>0?t.maxScale>0?Math.max(e.maxScale,t.maxScale):e.maxScale:t.maxScale}(e,t.effectiveScaleRange);const r=this._get("effectiveScaleRange");return r&&r.minScale===e.minScale&&r.maxScale===e.maxScale?r:e}};return(0,i._)([(0,n.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],t.prototype,"minScale",void 0),(0,i._)([(0,n.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],t.prototype,"maxScale",void 0),(0,i._)([(0,n.MZ)({readOnly:!0})],t.prototype,"effectiveScaleRange",null),t=(0,i._)([(0,o.$)("esri.layers.mixins.ScaleRangeLayer")],t),t}},58947:(e,t,r)=>{r.d(t,{Xh:()=>T,w6:()=>A});var i=r(90237),n=r(78888),o=r(49186),s=r(53966),a=r(74887),l=r(84952),u=r(10107),c=(r(44208),r(87811),r(36005)),p=r(40608),d=r(43937),h=r(46130),y=r(5443),m=r(54239),f=r(16930),g=r(60694),v=r(10873),b=r(83898);var S=r(20655),w=r(80812),M=r(88788),_=r(91682),x=r(26121);const A=e=>{let t=class extends e{constructor(){super(...arguments),this.spatialReference=null,this.fullExtent=null,this.heightModelInfo=null,this.minScale=0,this.maxScale=0,this.version={major:Number.NaN,minor:Number.NaN,versionString:""},this.copyright=null,this.sublayerTitleMode="item-title",this.title=null,this.layerId=null,this.indexInfo=null,this._debouncedSaveOperations=(0,a.sg)((async(e,t,r)=>{switch(e){case T.SAVE:return this._save(t);case T.SAVE_AS:return this._saveAs(r,t)}}))}readSpatialReference(e,t){return j(t)}readFullExtent(e,t,r){if(null!=e&&"object"==typeof e){const i=null==e.spatialReference?{...e,spatialReference:j(t)}:e;return y.A.fromJSON(i,r)}const i=t.store,n=j(t);return null==n||null==i?.extent||!Array.isArray(i.extent)||i.extent.some((e=>e<I))?null:new y.A({xmin:i.extent[0],ymin:i.extent[1],xmax:i.extent[2],ymax:i.extent[3],spatialReference:n})}parseVersionString(e){const t={major:Number.NaN,minor:Number.NaN,versionString:e},r=e.split(".");return r.length>=2&&(t.major=parseInt(r[0],10),t.minor=parseInt(r[1],10)),t}readVersion(e,t){const r=t.store,i=null!=r.version?r.version.toString():"";return this.parseVersionString(i)}readTitlePortalItem(e){return"item-title"!==this.sublayerTitleMode?void 0:e}readTitleService(e,t){const r=this.portalItem?.title;if("item-title"===this.sublayerTitleMode)return this.url?(0,g.yG)(this.url,t.name):t.name;let i=t.name;if(!i&&this.url){const e=(0,g.qg)(this.url);null!=e&&(i=e.title)}return"item-title-and-service-name"===this.sublayerTitleMode&&r&&(i=r+" - "+i),(0,g.cr)(i)}set url(e){if(null==e)return void this._set("url",e);const t=(0,g.HZ)({layer:this,url:e,nonStandardUrlAllowed:!1,logger:s.A.getLogger(this)});this._set("url",t.url),null!=t.layerId&&this._set("layerId",t.layerId)}writeUrl(e,t,r,i){(0,g.LS)(this,e,"layers",t,i)}get parsedUrl(){const e=this._get("url"),t=(0,l.An)(e);return t&&null!=this.layerId&&(t.path=`${t.path}/layers/${this.layerId}`),t}async _fetchIndexAndUpdateExtent(e,t){this.indexInfo=(0,b.F)(this.parsedUrl?.path??"",this.rootNode,e,this.customParameters,this.apiKey,s.A.getLogger(this),t),null==this.fullExtent||this.fullExtent.hasZ||this._updateExtent(await this.indexInfo)}_updateExtent(e){if("page"===e?.type){const t=e.rootIndex%e.pageSize,r=e.rootPage?.nodes?.[t];if(null==r?.obb?.center||null==r.obb.halfSize)throw new o.A("sceneservice:invalid-node-page","Invalid node page.");if(r.obb.center[0]<I||null==this.fullExtent||this.fullExtent.hasZ)return;const i=r.obb.halfSize,n=r.obb.center[2],s=Math.sqrt(i[0]*i[0]+i[1]*i[1]+i[2]*i[2]);this.fullExtent.zmin=n-s,this.fullExtent.zmax=n+s}else if("node"===e?.type){const t=e.rootNode?.mbs;if(!Array.isArray(t)||4!==t.length||t[0]<I)return;const r=t[2],i=t[3],{fullExtent:n}=this;n&&(n.zmin=r-i,n.zmax=r+i)}}async _fetchService(e){if(null==this.url)throw new o.A("sceneservice:url-not-set","Scene service can not be loaded without valid portal item or url");if(null==this.layerId&&/SceneServer\/*$/i.test(this.url)){const t=await this._fetchFirstLayerId(e);null!=t&&(this.layerId=t)}return this._fetchServiceLayer(e)}async _fetchFirstLayerId(e){const t=await(0,n.A)(this.url??"",{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e});if(t.data&&Array.isArray(t.data.layers)&&t.data.layers.length>0)return t.data.layers[0].id}async _fetchServiceLayer(e){const t=await(0,n.A)(this.parsedUrl?.path??"",{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e});t.ssl&&this.url&&(this.url=this.url.replace(/^http:/i,"https:"));let r=!1;if(t.data.layerType&&"Voxel"===t.data.layerType&&(r=!0),r)return this._fetchVoxelServiceLayer();const i=t.data;this.read(i,this._getServiceContext()),this.validateLayer(i)}async _fetchVoxelServiceLayer(e){const t=(await(0,n.A)(this.parsedUrl?.path+"/layer",{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e})).data;this.read(t,this._getServiceContext()),this.validateLayer(t)}_getServiceContext(){return{origin:"service",portalItem:this.portalItem,portal:this.portalItem?.portal,url:this.parsedUrl}}async _ensureLoadBeforeSave(){await this.load(),"beforeSave"in this&&"function"==typeof this.beforeSave&&await this.beforeSave()}validateLayer(e){}async _saveAs(e,t){const r={...P,...t};let i=w.default.from(e);if(!i)throw new o.A("sceneservice:portal-item-required","_saveAs() requires a portal item to save to");i.id&&(i=i.clone(),i.id=null);const n=i.portal||S.A.getDefault();await this._ensureLoadBeforeSave(),i.type=V,i.portal=n;const s=(0,M.m)(i,"portal-item",!0),a={layers:[this.write({},s)]};return await Promise.all(s.resources.pendingOperations??[]),await this._validateAgainstJSONSchema(a,s,r),this.url&&(i.url=this.url),i.title||(i.title=this.title),Z(i,r,N.newItem),await n.signIn(),await n.user.addItem({item:i,folder:r?.folder,data:a}),await(0,_.r)(this.resourceReferences,s),this.portalItem=i,(0,h.v)(s),s.portalItem=i,i}async _save(e){const t={...P,...e};if(!this.portalItem)throw new o.A("sceneservice:portal-item-not-set","Portal item to save to has not been set on this SceneService");if(this.portalItem.type!==V)throw new o.A("sceneservice:portal-item-wrong-type",`Portal item needs to have type "${V}"`);await this._ensureLoadBeforeSave();const r=(0,M.m)(this.portalItem,"portal-item",!0),i={layers:[this.write({},r)]};return await Promise.all(r.resources.pendingOperations??[]),await this._validateAgainstJSONSchema(i,r,t),this.url&&(this.portalItem.url=this.url),this.portalItem.title||(this.portalItem.title=this.title),Z(this.portalItem,t,N.existingItem),await(0,_.S)(this.portalItem,i,this.resourceReferences,r),(0,h.v)(r),this.portalItem}async _validateAgainstJSONSchema(e,t,r){const i=r?.validationOptions;(0,x.c)(t,{errorName:"sceneservice:save"},{ignoreUnsupported:i?.ignoreUnsupported,supplementalUnsupportedErrors:["scenemodification:unsupported"]});const n=i?.enabled,a=null;if(n&&a){const t=(await a()).validate(e,r.portalItemLayerType);if(!t.length)return;const n=`Layer item did not validate:\n${t.join("\n")}`;if(s.A.getLogger(this).error(`_validateAgainstJSONSchema(): ${n}`),"throw"===i.failPolicy){const e=t.map((e=>new o.A("sceneservice:schema-validation",e)));throw new o.A("sceneservice-validate:error","Failed to save layer item due to schema validation, see `details.errors`.",{validationErrors:e})}}}};return(0,i._)([(0,u.MZ)(v.id)],t.prototype,"id",void 0),(0,i._)([(0,u.MZ)({type:f.A})],t.prototype,"spatialReference",void 0),(0,i._)([(0,c.w)("spatialReference",["spatialReference","store.indexCRS","store.geographicCRS"])],t.prototype,"readSpatialReference",null),(0,i._)([(0,u.MZ)({type:y.A})],t.prototype,"fullExtent",void 0),(0,i._)([(0,c.w)("fullExtent",["fullExtent","store.extent","spatialReference","store.indexCRS","store.geographicCRS"])],t.prototype,"readFullExtent",null),(0,i._)([(0,u.MZ)({readOnly:!0,type:m.A})],t.prototype,"heightModelInfo",void 0),(0,i._)([(0,u.MZ)({type:Number,json:{name:"layerDefinition.minScale",write:!0,origins:{service:{read:{source:"minScale"},write:!1}}}})],t.prototype,"minScale",void 0),(0,i._)([(0,u.MZ)({type:Number,json:{name:"layerDefinition.maxScale",write:!0,origins:{service:{read:{source:"maxScale"},write:!1}}}})],t.prototype,"maxScale",void 0),(0,i._)([(0,u.MZ)({readOnly:!0})],t.prototype,"version",void 0),(0,i._)([(0,c.w)("version",["store.version"])],t.prototype,"readVersion",null),(0,i._)([(0,u.MZ)({type:String,json:{read:{source:"copyrightText"}}})],t.prototype,"copyright",void 0),(0,i._)([(0,u.MZ)({type:String,json:{read:!1}})],t.prototype,"sublayerTitleMode",void 0),(0,i._)([(0,u.MZ)({type:String})],t.prototype,"title",void 0),(0,i._)([(0,c.w)("portal-item","title")],t.prototype,"readTitlePortalItem",null),(0,i._)([(0,c.w)("service","title",["name"])],t.prototype,"readTitleService",null),(0,i._)([(0,u.MZ)({type:Number,json:{origins:{service:{read:{source:"id"}},"portal-item":{write:{target:"id",isRequired:!0,ignoreOrigin:!0},read:!1}}}})],t.prototype,"layerId",void 0),(0,i._)([(0,u.MZ)(v.OZ)],t.prototype,"url",null),(0,i._)([(0,d.K)("url")],t.prototype,"writeUrl",null),(0,i._)([(0,u.MZ)()],t.prototype,"parsedUrl",null),(0,i._)([(0,u.MZ)({readOnly:!0})],t.prototype,"store",void 0),(0,i._)([(0,u.MZ)({type:String,readOnly:!0,json:{read:{source:"store.rootNode"}}})],t.prototype,"rootNode",void 0),t=(0,i._)([(0,p.$)("esri.layers.mixins.SceneService")],t),t},I=-1e38;function j(e){if(null!=e.spatialReference)return f.A.fromJSON(e.spatialReference);const t=e.store,r=t.indexCRS||t.geographicCRS,i=r&&parseInt(r.slice(r.lastIndexOf("/")+1),10);return null!=i?new f.A(i):null}function Z(e,t,r){e.typeKeywords||(e.typeKeywords=[]);const i=t.getTypeKeywords();for(const t of i)e.typeKeywords.push(t);e.typeKeywords&&(e.typeKeywords=e.typeKeywords.filter(((e,t,r)=>r.indexOf(e)===t)),r===N.newItem&&(e.typeKeywords=e.typeKeywords.filter((e=>"Hosted Service"!==e))))}var N,R;(R=N||(N={}))[R.existingItem=0]="existingItem",R[R.newItem=1]="newItem";const V="Scene Service",P={getTypeKeywords:()=>[],portalItemLayerType:"unknown",validationOptions:{enabled:!0,ignoreUnsupported:!1,failPolicy:"throw"}};var T;!function(e){e[e.SAVE=0]="SAVE",e[e.SAVE_AS=1]="SAVE_AS"}(T||(T={}))},83898:(e,t,r)=>{r.d(t,{F:()=>o});var i=r(78888),n=r(49186);async function o(e,t,r,o,s,a,l){let u=null;if(null!=r){const t=`${e}/nodepages/`,n=t+Math.floor(r.rootIndex/r.nodesPerPage);try{return{type:"page",rootPage:(await(0,i.A)(n,{query:{f:"json",...o,token:s},responseType:"json",signal:l})).data,rootIndex:r.rootIndex,pageSize:r.nodesPerPage,lodMetric:r.lodSelectionMetricType,urlPrefix:t}}catch(e){null!=a&&a.warn("#fetchIndexInfo()","Failed to load root node page. Falling back to node documents.",n,e),u=e}}if(!t)return null;const c=t?.split("/").pop(),p=`${e}/nodes/`,d=p+c;try{return{type:"node",rootNode:(await(0,i.A)(d,{query:{f:"json",...o,token:s},responseType:"json",signal:l})).data,urlPrefix:p}}catch(e){throw new n.A("sceneservice:root-node-missing","Root node missing.",{pageError:u,nodeError:e,url:d})}}},96184:(e,t,r)=>{r.d(t,{A:()=>m});var i=r(90237),n=r(69540),o=r(25482),s=r(10107),a=(r(44208),r(53966),r(87811),r(36005)),l=r(40608),u=r(43937),c=r(79677),p=r(10184),d=r(56400);function h(e,t){return p.A.fromJSON({value:e,unit:t})}let y=class extends(n.A.ClonableMixin(o.A)){constructor(e){super(e),this.cumulative=!1,this.endField=null,this.fullTimeExtent=null,this.hasLiveData=!1,this.interval=null,this.startField=null,this.timeZone=null,this.trackIdField=null,this.useTime=!0,this.stops=null}readFullTimeExtent(e,t){return t.timeExtent&&Array.isArray(t.timeExtent)&&2===t.timeExtent.length?c.A.fromArray(t.timeExtent):null}writeFullTimeExtent(e,t){null!=e?.start&&null!=e.end?t.timeExtent=e.toArray():t.timeExtent=null}readInterval(e,t){return t.timeInterval&&t.timeIntervalUnits?h(t.timeInterval,t.timeIntervalUnits):t.defaultTimeInterval&&t.defaultTimeIntervalUnits?h(t.defaultTimeInterval,t.defaultTimeIntervalUnits):null}writeInterval(e,t){t.timeInterval=e?.toJSON().value??null,t.timeIntervalUnits=e?.toJSON().unit??null}};(0,i._)([(0,s.MZ)({type:Boolean,json:{name:"exportOptions.timeDataCumulative",write:!0}})],y.prototype,"cumulative",void 0),(0,i._)([(0,s.MZ)({type:String,json:{name:"endTimeField",write:{enabled:!0,allowNull:!0}}})],y.prototype,"endField",void 0),(0,i._)([(0,s.MZ)({type:c.A,json:{write:{enabled:!0,allowNull:!0}}})],y.prototype,"fullTimeExtent",void 0),(0,i._)([(0,a.w)("fullTimeExtent",["timeExtent"])],y.prototype,"readFullTimeExtent",null),(0,i._)([(0,u.K)("fullTimeExtent")],y.prototype,"writeFullTimeExtent",null),(0,i._)([(0,s.MZ)({type:Boolean,json:{write:!0}})],y.prototype,"hasLiveData",void 0),(0,i._)([(0,s.MZ)({type:p.A,json:{write:{enabled:!0,allowNull:!0}}})],y.prototype,"interval",void 0),(0,i._)([(0,a.w)("interval",["timeInterval","timeIntervalUnits","defaultTimeInterval","defaultTimeIntervalUnits"])],y.prototype,"readInterval",null),(0,i._)([(0,u.K)("interval")],y.prototype,"writeInterval",null),(0,i._)([(0,s.MZ)({type:String,json:{name:"startTimeField",write:{enabled:!0,allowNull:!0}}})],y.prototype,"startField",void 0),(0,i._)([(0,s.MZ)((0,d.P6)("timeReference",!0))],y.prototype,"timeZone",void 0),(0,i._)([(0,s.MZ)({type:String,json:{write:{enabled:!0,allowNull:!0}}})],y.prototype,"trackIdField",void 0),(0,i._)([(0,s.MZ)({type:Boolean,json:{name:"exportOptions.useTime",write:!0}})],y.prototype,"useTime",void 0),(0,i._)([(0,s.MZ)({type:[Date],json:{read:!1}})],y.prototype,"stops",void 0),y=(0,i._)([(0,l.$)("esri.layers.support.TimeInfo")],y);const m=y},88788:(e,t,r)=>{r.d(t,{m:()=>s,v:()=>o});var i=r(84952),n=r(20655);function o(e,t){return{...a(e,t),readResourcePaths:[]}}function s(e,t,r){const n=(0,i.An)(e.itemUrl);return{...a(e,t),messages:[],writtenProperties:[],blockedRelativeUrls:[],verifyItemRelativeUrls:n?{rootPath:n.path,writtenUrls:[]}:null,resources:r?{toAdd:[],toUpdate:[],toKeep:[],pendingOperations:[]}:null}}function a(e,t){return{origin:t,url:(0,i.An)(e.itemUrl),portal:e.portal||n.A.getDefault(),portalItem:e}}},85648:(e,t,r)=>{r.d(t,{n:()=>n});var i=r(84952);function n(e){return o[function(e){return"json"===e.type?"application/json":"blob"===e.type?e.blob.type:function(e){const t=(0,i.Zo)(e);return l[t]||s}(e.url)}(e)]||a}const o={},s="text/plain",a=o[s],l={png:"image/png",jpeg:"image/jpeg",jpg:"image/jpg",bmp:"image/bmp",gif:"image/gif",json:"application/json",txt:"text/plain",xml:"application/xml",svg:"image/svg+xml",zip:"application/zip",pbf:"application/vnd.mapbox-vector-tile",gz:"application/gzip","bin.gz":"application/octet-stream"};for(const e in l)o[l[e]]=e},15804:(e,t,r)=>{r.d(t,{addOrUpdateResources:()=>a,bg:()=>d,cL:()=>p,fetchResources:()=>s,removeAllResources:()=>u,removeResource:()=>l});var i=r(78888),n=r(49186),o=r(84952);async function s(e,t={},r){await e.load(r);const i=(0,o.fj)(e.itemUrl,"resources"),{start:n=1,num:s=10,sortOrder:a="asc",sortField:l="resource"}=t,u={query:{start:n,num:s,sortOrder:a,sortField:l,token:e.apiKey},signal:r?.signal},c=await e.portal.request(i,u);return{total:c.total,nextStart:c.nextStart,resources:c.resources.map((({created:t,size:r,resource:i})=>({created:new Date(t),size:r,resource:e.resourceFromPath(i)})))}}async function a(e,t,r,i){const s=new Map;for(const{resource:e,content:i,compress:o,access:a}of t){if(!e.hasPath())throw new n.A(`portal-item-resource-${r}:invalid-path`,"Resource does not have a valid path");const[t,l]=c(e.path),u=`${t}/${o??""}/${a??""}`;s.has(u)||s.set(u,{prefix:t,compress:o,access:a,files:[]}),s.get(u).files.push({fileName:l,content:i})}await e.load(i);const a=(0,o.fj)(e.userItemUrl,"add"===r?"addResources":"updateResources");for(const{prefix:t,compress:r,access:n,files:o}of s.values()){const s=25;for(let l=0;l<o.length;l+=s){const u=o.slice(l,l+s),c=new FormData;t&&"."!==t&&c.append("resourcesPrefix",t),r&&c.append("compress","true"),n&&c.append("access",n);let p=0;for(const{fileName:e,content:t}of u)c.append("file"+ ++p,t,e);c.append("f","json"),await e.portal.request(a,{method:"post",body:c,signal:i?.signal})}}}async function l(e,t,r){if(!t.hasPath())throw new n.A("portal-item-resources-remove:invalid-path","Resource does not have a valid path");await e.load(r);const i=(0,o.fj)(e.userItemUrl,"removeResources");await e.portal.request(i,{method:"post",query:{resource:t.path},signal:r?.signal}),t.portalItem=null}async function u(e,t){await e.load(t);const r=(0,o.fj)(e.userItemUrl,"removeResources");return e.portal.request(r,{method:"post",query:{deleteAll:!0},signal:t?.signal})}function c(e){const t=e.lastIndexOf("/");return-1===t?[".",e]:[e.slice(0,t),e.slice(t+1)]}async function p(e){return"blob"===e.type?e.blob:"json"===e.type?new Blob([e.jsonString],{type:"application/json"}):(await(0,i.A)(e.url,{responseType:"blob"})).data}function d(e,t){if(!e.hasPath())return null;const[r,,i]=function(e){const[t,r]=function(e){const t=(0,o.Zo)(e);return null==t?[e,""]:[e.slice(0,e.length-t.length-1),`.${t}`]}(e),[i,n]=c(t);return[i,n,r]}(e.path);return e.portalItem.resourceFromPath((0,o.fj)(r,t+i))}},73133:(e,t,r)=>{r.d(t,{j:()=>i});const i=(0,r(66552).O)()({esriTimeUnitsMilliseconds:"milliseconds",esriTimeUnitsSeconds:"seconds",esriTimeUnitsMinutes:"minutes",esriTimeUnitsHours:"hours",esriTimeUnitsDays:"days",esriTimeUnitsWeeks:"weeks",esriTimeUnitsMonths:"months",esriTimeUnitsYears:"years",esriTimeUnitsDecades:"decades",esriTimeUnitsCenturies:"centuries",esriTimeUnitsUnknown:void 0})},30291:(e,t,r)=>{r.d(t,{tn:()=>u});var i=r(13874),n=r(30524),o=r(89893),s=(r(84424),r(80737),r(96808),r(66159)),a=(r(67336),r(92094),r(23721),r(47582),r(41227)),l=r(68780);function u({displayField:e,editFieldsInfo:t,fields:r,objectIdField:l,title:u},h){if(!r)return null;const m=function(e,t){const r=t?.visibleFieldNames;return function({fields:e,ignoreFieldTypes:t,sortDisabled:r}){const i=e;return t&&(e=e.filter((e=>!t.includes(e.type)))),e===i&&(e=e.slice()),!0!==r&&e.sort(p),e}({fields:e.fields??[],ignoreFieldTypes:t?.ignoreFieldTypes||y,sortDisabled:t?.sortDisabled}).map((t=>new a.A({fieldName:t.name,isEditable:(0,n.R$)(t,e),label:t.alias,format:d(t),visible:c(t,{...e,visibleFieldNames:r})})))}({editFieldsInfo:t,fields:r,objectIdField:l},h);if(!m.length)return null;const f=function(e){const t=(0,n.mB)(e),{titleBase:r}=e;return t?`${r}: {${t.trim()}}`:r??""}({titleBase:u,fields:r,displayField:e}),g=[new s.A,new o.A];return new i.A({title:f,content:g,fieldInfos:m})}const c=(e,t)=>t.visibleFieldNames?t.visibleFieldNames.has(e.name):(0,n.Bz)(e,t);function p(e,t){return"oid"===e.type?-1:"oid"===t.type?1:h(e)?-1:h(t)?1:(e.alias||e.name).toLocaleLowerCase().localeCompare((t.alias||t.name).toLocaleLowerCase())}function d(e){switch(e.type){case"small-integer":case"integer":case"single":return new l.A({digitSeparator:!0,places:0});case"double":return new l.A({digitSeparator:!0,places:2});case"string":return(0,n.JL)(e.name)?new l.A({digitSeparator:!0,places:0}):void 0;default:return}}function h(e){if("name"===(e.name&&e.name.toLowerCase()))return!0;const t=e.alias?.toLowerCase();return"name"===t}const y=["geometry","blob","raster","guid","xml"]},10184:(e,t,r)=>{r.d(t,{A:()=>d});var i=r(90237),n=r(69540),o=r(25482),s=r(88930),a=r(10107),l=(r(44208),r(53966),r(87811),r(93223)),u=r(40608),c=r(73133);let p=class extends(n.A.ClonableMixin(o.A)){constructor(e){super(e),this.unit="milliseconds",this.value=0}toMilliseconds(){return(0,s.t)(this.value,this.unit,"milliseconds")}};(0,i._)([(0,l.e)(c.j,{nonNullable:!0})],p.prototype,"unit",void 0),(0,i._)([(0,a.MZ)({type:Number,json:{write:!0},nonNullable:!0})],p.prototype,"value",void 0),p=(0,i._)([(0,u.$)("esri.time.TimeInterval")],p);const d=p},91682:(e,t,r)=>{r.d(t,{S:()=>l,r:()=>a});var i=r(49186),n=r(74887),o=r(13069),s=r(15804);async function a(e,t,r){const i=await u(e,t,r);await c(i,t,r)}async function l(e,t,r,i,n){const o=await u(r,i,n);await e.update({data:t}),await c(o,i,n)}async function u(e,t,a){if(!t?.resources)return;const l=t.portalItem===e.portalItem?new Set(e.paths):new Set;e.paths.length=0,e.portalItem=t.portalItem;const u=new Set(t.resources.toKeep.map((e=>e.resource.path))),c=new Set,p=[];u.forEach((t=>{l.delete(t),e.paths.push(t)}));const d=[],h=[],y=[];for(const r of t.resources.toUpdate)if(l.delete(r.resource.path),u.has(r.resource.path)||c.has(r.resource.path)){const{resource:t,content:i,finish:n}=r,a=(0,s.bg)(t,(0,o.lk)());e.paths.push(a.path),d.push({resource:a,content:await(0,s.cL)(i),compress:r.compress}),n&&y.push((()=>n(a)))}else{e.paths.push(r.resource.path),h.push({resource:r.resource,content:await(0,s.cL)(r.content),compress:r.compress});const t=r.finish;t&&y.push((()=>t(r.resource))),c.add(r.resource.path)}for(const r of t.resources.toAdd)if(e.paths.push(r.resource.path),l.has(r.resource.path))l.delete(r.resource.path);else{d.push({resource:r.resource,content:await(0,s.cL)(r.content),compress:r.compress});const e=r.finish;e&&y.push((()=>e(r.resource)))}if(d.length||h.length){const{addOrUpdateResources:e}=await Promise.resolve().then(r.bind(r,15804));await e(t.portalItem,d,"add",a),await e(t.portalItem,h,"update",a)}if(y.forEach((e=>e())),0===p.length)return l;const m=await(0,n.Ol)(p);if((0,n.Te)(a),m.length>0)throw new i.A("save:resources","Failed to save one or more resources",{errors:m});return l}async function c(e,t,r){if(!e||!t.portalItem)return;const i=[];for(const n of e){const e=t.portalItem.resourceFromPath(n);i.push(e.portalItem.removeResource(e,r))}await(0,n.Lx)(i)}},26121:(e,t,r)=>{r.d(t,{c:()=>s,d:()=>n});var i=r(49186);async function n(e){const t=[];for(const r of e.allLayers)if("beforeSave"in r&&"function"==typeof r.beforeSave){const e=r.beforeSave();e&&t.push(e)}await Promise.allSettled(t)}const o=new Set(["layer:unsupported","property:unsupported","symbol:unsupported","symbol-layer:unsupported","url:unsupported"]);function s(e,t,r){let n=(e.messages??[]).filter((({type:e})=>"error"===e)).map((({name:e,message:t,details:r})=>new i.A(e,t,r)));if(e.blockedRelativeUrls&&(n=n.concat(e.blockedRelativeUrls.map((e=>new i.A("url:unsupported",`Relative url '${e}' is not supported`))))),r){const{ignoreUnsupported:e,supplementalUnsupportedErrors:t=[],requiredPropertyChecksDisabled:i}=r;e&&(n=n.filter((({name:e})=>!(o.has(e)||t.includes(e))))),i&&(n=n.filter((e=>"web-document-write:property-required"!==e.name)))}if(n.length>0)throw new i.A(t.errorName,"Failed to save due to unsupported or invalid content. See 'details.errors' for more detailed information",{errors:n})}}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3169,6061,8125,8411],{76061:(e,t,n)=>{n.d(t,{G:()=>r,S:()=>o});class r{*[Symbol.iterator](){let e=this.next();for(;e;)yield e,e=this.next()}}class o extends r{constructor(e){super(),this.m_iGeom=-1,this.m_aGeoms=e?e.slice():[]}next(){if(this.m_iGeom<this.m_aGeoms.length-1){const e=this.m_aGeoms[++this.m_iGeom];return this.m_aGeoms[this.m_iGeom]=null,e}return null}tock(){return!1}getGeometryID(){return this.m_iGeom}getRank(){return 1}}},85503:(e,t,n)=>{n.d(t,{a:()=>c,d:()=>m,e:()=>i,s:()=>l});var r=n(4576),o=n(34727),a=n(83047),s=n(91735),u=n(78125);function i(e,t,n={}){let{maxAngleInDegrees:r=0,maxDeviation:i=0,unit:c}=n;const l=(0,u.getSpatialReference)(e);return c&&(t=(0,a.UW)(t,c,l),i&&(i=(0,a.UW)(i,c,l))),(0,u.toGeometry)((0,s.g7)((0,u.fromGeometry)(e),t,i,(0,o.kU)(r)),l)}function c(e,t,n={}){let{maxAngleInDegrees:i=0,maxDeviation:c=0,unit:l}=n;const m=e.map(u.fromGeometry),f=(0,u.getSpatialReference)(e);return l&&(t=(0,a.UW)(t,l,f),c&&(c=(0,a.UW)(c,l,f))),(0,s.zo)(m,t,c,(0,o.kU)(i)).map((e=>(0,u.toGeometry)(e,f))).filter(r.Ru)}const l=(0,s.fz)(),m=Object.freeze(Object.defineProperty({__proto__:null,execute:i,executeMany:c,supportsCurves:l},Symbol.toStringTag,{value:"Module"}))},88411:(e,t,n)=>{n.r(t),n.d(t,{execute:()=>r.e,executeMany:()=>r.a,supportsCurves:()=>r.s}),n(4576),n(34727),n(83047),n(91735),n(78125);var r=n(85503)},91735:(e,t,n)=>{n.d(t,{fz:()=>u,g7:()=>a,zo:()=>s});var r=n(76061);const o=new(n(5247).O);function a(e,t,n,r){return o.execute(e,t,n,r,null)}function s(e,t,n,a){const s=o.executeMany(new r.S(e),t,n,a,null);return Array.from(s)}function u(){return o.supportsCurves()}},78125:(e,t,n)=>{n.r(t),n.d(t,{fromExtent:()=>G,fromGeometry:()=>C,fromMultipoint:()=>M,fromPoint:()=>v,fromPolygon:()=>V,fromPolyline:()=>w,fromSpatialReference:()=>d,getSpatialReference:()=>x,toExtent:()=>R,toGeometry:()=>P,toMultipoint:()=>Z,toPoint:()=>_,toPolygon:()=>k,toPolyline:()=>z});var r=n(83661),o=(n(79187),n(55537)),a=n(95213),s=n(35368),u=n(12189),i=n(5443),c=n(48526),l=n(86738),m=n(39829),f=n(82799),h=(n(90293),n(83299));const p="_gxVersion",g=2,y=1;function x(e){return Array.isArray(e)?e[0].spatialReference:e.spatialReference}function C(e){switch(e.type){case"point":return v(e);case"multipoint":return M(e);case"polyline":return w(e);case"polygon":return V(e);case"extent":return G(e);default:throw new Error(`Unsupported geometry type: ${e.type}`)}}function G(e){if(!e.getCacheValue(p)){const t=new a.E;t.setCoords(e.xmin,e.ymin,e.xmax,e.ymax),e.hasM&&t.setInterval(g,0,e.mmin,e.mmax),e.hasZ&&t.setInterval(y,0,e.zmin,e.zmax),e.setCacheValue(p,t)}return e.getCacheValue(p)}function M(e){if(!e.getCacheValue(p)){const t=new s.M,n=new a.P,r=e.points,o=e.hasM,u=e.hasZ,i=u?3:2;for(let e=0,a=r.length;e<a;e++){const a=r[e];n.setXYCoords(a[0],a[1]),u&&n.setZ(a[2]??0),o&&n.setM(a[i]??NaN),t.add(n)}e.setCacheValue(p,t)}return e.getCacheValue(p)}function v(e){if(!e.getCacheValue(p)){const t=new a.P;t.setXYCoords(e.x,e.y),e.hasM&&t.setM(e.m),e.hasZ&&t.setZ(e.z),e.setCacheValue(p,t)}return e.getCacheValue(p)}function V(e){if(!e.getCacheValue(p)){const{curveRings:t,hasM:n,hasZ:r,rings:o}=e,a=(0,h.fromGeometryToGXGeometry)({curveRings:t,hasM:n,hasZ:r,rings:o});e.setCacheValue(p,a)}return e.getCacheValue(p)}function w(e){if(!e.getCacheValue(p)){const{curvePaths:t,hasM:n,hasZ:r,paths:o}=e,a=(0,h.fromGeometryToGXGeometry)({curvePaths:t,hasM:n,hasZ:r,paths:o});e.setCacheValue(p,a)}return e.getCacheValue(p)}function d(e){if(e.wkid)return(0,u.c)(e.wkid);const t=e.wkt2||e.wkt;return t?(0,u.b)(t):null}function P(e,t){if(e)switch(e.getGeometryType()){case o.G.enumPoint:return _(e,t);case o.G.enumEnvelope:return R(e,t);case o.G.enumMultiPoint:return Z(e,t);case o.G.enumPolyline:return z(e,t);case o.G.enumPolygon:return k(e,t)}return null}function R(e,t){if(e.isEmpty())return null;const n=new i.A({xmin:e.getXMin(),ymin:e.getYMin(),xmax:e.getXMax(),ymax:e.getYMax(),spatialReference:t}),r=e.getDescription();if(r.hasM()){const t=e.queryInterval(g,0);n.mmin=t.vmin,n.mmax=t.vmax}if(r.hasZ()){const t=e.queryInterval(y,0);n.zmin=t.vmin,n.zmax=t.vmax}return n.setCacheValue(p,e),n}function Z(e,t){if(e.isEmpty())return null;const n=e.getDescription(),r=n.hasM(),o=n.hasZ(),s=[],u=new a.P;for(let t=0,n=e.getPointCount();t<n;t++){e.getPointByVal(t,u);const n=[u.getX(),u.getY()];o&&n.push(u.getZ()),r&&n.push(u.getM()),s.push(n)}const i=new c.A({hasM:r,hasZ:o,points:s,spatialReference:t});return i.setCacheValue(p,e),i}function _(e,t){if(e instanceof r.P)return new l.A({x:e.x,y:e.y,spatialReference:t});if(e.isEmpty())return null;const n=new l.A({x:e.getX(),y:e.getY(),spatialReference:t}),o=e.getDescription();return o.hasM()&&(n.m=e.getM()),o.hasZ()&&(n.z=e.getZ()),n.setCacheValue(p,e),n}function k(e,t){if(e.isEmpty())return null;const n=m.A.fromJSON({spatialReference:t,...(0,h.toGeometry)(e,null)});return n.setCacheValue(p,e),n}function z(e,t){if(e.isEmpty())return null;const n=f.A.fromJSON({spatialReference:t,...(0,h.toGeometry)(e,null)});return n.setCacheValue(p,e),n}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3169,6061,8125,8411],{76061:(e,t,n)=>{n.d(t,{G:()=>r,S:()=>o});class r{*[Symbol.iterator](){let e=this.next();for(;e;)yield e,e=this.next()}}class o extends r{constructor(e){super(),this.m_iGeom=-1,this.m_aGeoms=e?e.slice():[]}next(){if(this.m_iGeom<this.m_aGeoms.length-1){const e=this.m_aGeoms[++this.m_iGeom];return this.m_aGeoms[this.m_iGeom]=null,e}return null}tock(){return!1}getGeometryID(){return this.m_iGeom}getRank(){return 1}}},85503:(e,t,n)=>{n.d(t,{a:()=>c,d:()=>m,e:()=>i,s:()=>l});var r=n(4576),o=n(34727),a=n(83047),s=n(91735),u=n(78125);function i(e,t,n={}){let{maxAngleInDegrees:r=0,maxDeviation:i=0,unit:c}=n;const l=(0,u.getSpatialReference)(e);return c&&(t=(0,a.UW)(t,c,l),i&&(i=(0,a.UW)(i,c,l))),(0,u.toGeometry)((0,s.g7)((0,u.fromGeometry)(e),t,i,(0,o.kU)(r)),l)}function c(e,t,n={}){let{maxAngleInDegrees:i=0,maxDeviation:c=0,unit:l}=n;const m=e.map(u.fromGeometry),f=(0,u.getSpatialReference)(e);return l&&(t=(0,a.UW)(t,l,f),c&&(c=(0,a.UW)(c,l,f))),(0,s.zo)(m,t,c,(0,o.kU)(i)).map((e=>(0,u.toGeometry)(e,f))).filter(r.Ru)}const l=(0,s.fz)(),m=Object.freeze(Object.defineProperty({__proto__:null,execute:i,executeMany:c,supportsCurves:l},Symbol.toStringTag,{value:"Module"}))},88411:(e,t,n)=>{n.r(t),n.d(t,{execute:()=>r.e,executeMany:()=>r.a,supportsCurves:()=>r.s}),n(4576),n(34727),n(83047),n(91735),n(78125);var r=n(85503)},91735:(e,t,n)=>{n.d(t,{fz:()=>u,g7:()=>a,zo:()=>s});var r=n(76061);const o=new(n(5247).O);function a(e,t,n,r){return o.execute(e,t,n,r,null)}function s(e,t,n,a){const s=o.executeMany(new r.S(e),t,n,a,null);return Array.from(s)}function u(){return o.supportsCurves()}},78125:(e,t,n)=>{n.r(t),n.d(t,{fromExtent:()=>G,fromGeometry:()=>C,fromMultipoint:()=>M,fromPoint:()=>v,fromPolygon:()=>V,fromPolyline:()=>w,fromSpatialReference:()=>d,getSpatialReference:()=>x,toExtent:()=>R,toGeometry:()=>P,toMultipoint:()=>Z,toPoint:()=>_,toPolygon:()=>k,toPolyline:()=>z});var r=n(83661),o=(n(79187),n(55537)),a=n(95213),s=n(35368),u=n(12189),i=n(5443),c=n(48526),l=n(86738),m=n(39829),f=n(82799),h=(n(90293),n(83299));const p="_gxVersion",g=2,y=1;function x(e){return Array.isArray(e)?e[0].spatialReference:e.spatialReference}function C(e){switch(e.type){case"point":return v(e);case"multipoint":return M(e);case"polyline":return w(e);case"polygon":return V(e);case"extent":return G(e);default:throw new Error(`Unsupported geometry type: ${e.type}`)}}function G(e){if(!e.getCacheValue(p)){const t=new a.E;t.setCoords(e.xmin,e.ymin,e.xmax,e.ymax),e.hasM&&t.setInterval(g,0,e.mmin,e.mmax),e.hasZ&&t.setInterval(y,0,e.zmin,e.zmax),e.setCacheValue(p,t)}return e.getCacheValue(p)}function M(e){if(!e.getCacheValue(p)){const t=new s.M,n=new a.P,r=e.points,o=e.hasM,u=e.hasZ,i=u?3:2;for(let e=0,a=r.length;e<a;e++){const a=r[e];n.setXYCoords(a[0],a[1]),u&&n.setZ(a[2]??0),o&&n.setM(a[i]??NaN),t.add(n)}e.setCacheValue(p,t)}return e.getCacheValue(p)}function v(e){if(!e.getCacheValue(p)){const t=new a.P;t.setXYCoords(e.x,e.y),e.hasM&&t.setM(e.m),e.hasZ&&t.setZ(e.z),e.setCacheValue(p,t)}return e.getCacheValue(p)}function V(e){if(!e.getCacheValue(p)){const{curveRings:t,hasM:n,hasZ:r,rings:o}=e,a=(0,h.fromGeometryToGXGeometry)({curveRings:t,hasM:n,hasZ:r,rings:o});e.setCacheValue(p,a)}return e.getCacheValue(p)}function w(e){if(!e.getCacheValue(p)){const{curvePaths:t,hasM:n,hasZ:r,paths:o}=e,a=(0,h.fromGeometryToGXGeometry)({curvePaths:t,hasM:n,hasZ:r,paths:o});e.setCacheValue(p,a)}return e.getCacheValue(p)}function d(e){if(e.wkid)return(0,u.c)(e.wkid);const t=e.wkt2||e.wkt;return t?(0,u.a)(t):null}function P(e,t){if(e)switch(e.getGeometryType()){case o.G.enumPoint:return _(e,t);case o.G.enumEnvelope:return R(e,t);case o.G.enumMultiPoint:return Z(e,t);case o.G.enumPolyline:return z(e,t);case o.G.enumPolygon:return k(e,t)}return null}function R(e,t){if(e.isEmpty())return null;const n=new i.A({xmin:e.getXMin(),ymin:e.getYMin(),xmax:e.getXMax(),ymax:e.getYMax(),spatialReference:t}),r=e.getDescription();if(r.hasM()){const t=e.queryInterval(g,0);n.mmin=t.vmin,n.mmax=t.vmax}if(r.hasZ()){const t=e.queryInterval(y,0);n.zmin=t.vmin,n.zmax=t.vmax}return n.setCacheValue(p,e),n}function Z(e,t){if(e.isEmpty())return null;const n=e.getDescription(),r=n.hasM(),o=n.hasZ(),s=[],u=new a.P;for(let t=0,n=e.getPointCount();t<n;t++){e.getPointByVal(t,u);const n=[u.getX(),u.getY()];o&&n.push(u.getZ()),r&&n.push(u.getM()),s.push(n)}const i=new c.A({hasM:r,hasZ:o,points:s,spatialReference:t});return i.setCacheValue(p,e),i}function _(e,t){if(e instanceof r.P)return new l.A({x:e.x,y:e.y,spatialReference:t});if(e.isEmpty())return null;const n=new l.A({x:e.getX(),y:e.getY(),spatialReference:t}),o=e.getDescription();return o.hasM()&&(n.m=e.getM()),o.hasZ()&&(n.z=e.getZ()),n.setCacheValue(p,e),n}function k(e,t){if(e.isEmpty())return null;const n=m.A.fromJSON({spatialReference:t,...(0,h.toGeometry)(e,null)});return n.setCacheValue(p,e),n}function z(e,t){if(e.isEmpty())return null;const n=f.A.fromJSON({spatialReference:t,...(0,h.toGeometry)(e,null)});return n.setCacheValue(p,e),n}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[6575],{91829:(t,e,n)=>{function r(){return[0,0,0,0]}function o(t,e,n,r){return[t,e,n,r]}function i(t,e,n,r){return[t,e,n,r]}function s(t,e=[0,0,0,0]){const n=Math.min(4,t.length);for(let r=0;r<n;++r)e[r]=t[r];return e}function a(){return o(1,1,1,1)}function c(){return o(1,0,0,0)}function u(){return o(0,1,0,0)}function l(){return o(0,0,1,0)}function f(){return o(0,0,0,1)}n.d(e,{CN:()=>i,Un:()=>E,ci:()=>s,fA:()=>o,uY:()=>N,vt:()=>r});const N=[0,0,0,0],E=a(),I=c(),O=u(),A=l(),T=f();Object.freeze(Object.defineProperty({__proto__:null,ONES:E,UNIT_W:T,UNIT_X:I,UNIT_Y:O,UNIT_Z:A,ZEROS:N,clone:function(t){return[t[0],t[1],t[2],t[3]]},create:r,freeze:i,fromArray:s,fromValues:o,ones:a,unitW:f,unitX:c,unitY:u,unitZ:l,zeros:function(){return[0,0,0,0]}},Symbol.toStringTag,{value:"Module"}))},34727:(t,e,n)=>{n.d(e,{$8:()=>g,Cc:()=>s,Hx:()=>O,Io:()=>S,KJ:()=>u,Sp:()=>N,XM:()=>l,YN:()=>f,ZH:()=>I,cU:()=>o,gg:()=>E,hs:()=>a,kU:()=>c,or:()=>m,pF:()=>v,pq:()=>M,qE:()=>i});const r=new Float32Array(1);function o(t){--t;for(let e=1;e<32;e<<=1)t|=t>>e;return t+1}function i(t,e,n){return Math.min(Math.max(t,e),n)}function s(t,e,n){return t+(e-t)*n}function a(t,e,n,r,o){return s(r,o,(t-e)/(n-e))}function c(t){return t*Math.PI/180}function u(t){return 180*t/Math.PI}function l(t){return Math.acos(i(t,-1,1))}function f(t){return Math.asin(i(t,-1,1))}function N(t,e,n=1e-6){return t===e||!(!Number.isFinite(t)||!Number.isFinite(e))&&(t>e?t-e:e-t)<=n}function E(t,e,n=1e-6){return!N(t,e,n)&&t>e}function I(t,e,n=1e-6){return!N(t,e,n)&&t<e}function O(t,e,n=1e-6){return N(t,e,n)||t>e}const A=new DataView(new ArrayBuffer(Float64Array.BYTES_PER_ELEMENT));function T(t){return A.setFloat64(0,t),A.getBigInt64(0)}const h=BigInt("1000000"),d=p(1);function p(t){const e=T(t=Math.abs(t)),n=function(t){return A.setBigInt64(0,t),A.getFloat64(0)}(e<=h?h:e-h);return Math.abs(t-n)}function S(t,e,n=d){if(t===e)return!0;if(!Number.isFinite(t)||!Number.isFinite(e))return!1;if(null!=n&&p(Math.min(Math.abs(t),Math.abs(e)))<n)return Math.abs(t-e)<=n;const r=T(t),o=T(e);return r<0==o<0&&!((r<o?o-r:r-o)>h)}function g(t){return R(Math.max(-M,Math.min(t,M)))}function R(t){return r[0]=t,r[0]}function m(t){const e=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],n=t[3]*t[3]+t[4]*t[4]+t[5]*t[5],r=t[6]*t[6]+t[7]*t[7]+t[8]*t[8];return!(N(e,1)&&N(n,1)&&N(r,1))}const M=R(34028234663852886e22);function v(t,e,n){if(void 0===n||0==+n)return Math[t](e);if(e=+e,n=+n,isNaN(e)||"number"!=typeof n||n%1!=0)return NaN;let r=e.toString().split("e");return r=(e=Math[t](+(r[0]+"e"+(r[1]?+r[1]-n:-n)))).toString().split("e"),+(r[0]+"e"+(r[1]?+r[1]+n:n))}},9318:(t,e,n)=>{n.d(e,{b:()=>i});var r=n(34727),o=n(97146);function i(t,e,n){const i=Array.isArray(t),l=i?t.length/e:t.byteLength/(4*e),f=i?t:new Uint32Array(t,0,l*e),N=n?.minReduction??0,E=n?.originalIndices||null,I=E?E.length:0,O=n?.componentOffsets||null;let A=0;if(O)for(let t=0;t<O.length-1;t++){const e=O[t+1]-O[t];e>A&&(A=e)}else A=l;const T=Math.floor(1.1*A)+1;(null==u||u.length<2*T)&&(u=new Uint32Array((0,r.cU)(2*T)));for(let t=0;t<2*T;t++)u[t]=0;let h=0;const d=!!O&&!!E,p=d?I:l;let S=(0,o.my)(l);const g=new Uint32Array(I),R=1.96;let m=0!==N?Math.ceil(4*R*R/(N*N)*N*(1-N)):p,M=1,v=O?O[1]:p;for(let t=0;t<p;t++){if(t===m){const e=1-h/t;if(e+R*Math.sqrt(e*(1-e)/t)<N)return null;m*=2}if(t===v){for(let t=0;t<2*T;t++)u[t]=0;if(E)for(let t=O[M-1];t<O[M];t++)g[t]=S[E[t]];v=O[++M]}const n=d?E[t]:t,r=n*e,o=c(f,r,e);let i=o%T,a=h;for(;0!==u[2*i+1];){if(u[2*i]===o){const t=u[2*i+1]-1;if(s(f,r,t*e,e)){a=S[t];break}}i++,i>=T&&(i-=T)}a===h&&(u[2*i]=o,u[2*i+1]=n+1,h++),S[n]=a}if(0!==N&&1-h/l<N)return null;if(d){for(let t=O[M-1];t<g.length;t++)g[t]=S[E[t]];S=(0,o.uW)(g)}const C=i?new Array(h):new Uint32Array(h*e);h=0;for(let t=0;t<p;t++)S[t]===h&&(a(f,(d?E[t]:t)*e,C,h*e,e),h++);if(E&&!d){const t=new Uint32Array(I);for(let e=0;e<t.length;e++)t[e]=S[E[e]];S=(0,o.uW)(t)}return{buffer:Array.isArray(C)?C:C.buffer,indices:S,uniqueCount:h}}function s(t,e,n,r){for(let o=0;o<r;o++)if(t[e+o]!==t[n+o])return!1;return!0}function a(t,e,n,r,o){for(let i=0;i<o;i++)n[r+i]=t[e+i]}function c(t,e,n){let r=0;for(let o=0;o<n;o++)r=t[e+o]+r|0,r=r+(r<<11)+(r>>>2)|0;return r>>>0}let u=null},4431:(t,e,n)=>{n.d(e,{U:()=>i});var r=n(63907),o=n(74038);function i(t,e=0){const n=t.stride;return Array.from(t.fields.keys()).map((r=>{const i=t.fields.get(r),a=i.constructor.ElementCount,c=s(i.constructor.ElementType),u=i.offset,l=i.optional?.glNormalized??!1;return new o._(r,a,c,u,n,l,e)}))}function s(t){const e=a[t];if(e)return e;throw new Error("BufferType not supported in WebGL")}const a={u8:r.pe.UNSIGNED_BYTE,u16:r.pe.UNSIGNED_SHORT,u32:r.pe.UNSIGNED_INT,i8:r.pe.BYTE,i16:r.pe.SHORT,i32:r.pe.INT,f32:r.pe.FLOAT}},46540:(t,e,n)=>{var r;function o(t){return t===r.POSITION}n.d(e,{b:()=>o,r:()=>r}),function(t){t.POSITION="position",t.NORMAL="normal",t.NORMALCOMPRESSED="normalCompressed",t.UV0="uv0",t.COLOR="color",t.SYMBOLCOLOR="symbolColor",t.SIZE="size",t.ROTATION="rotation",t.TANGENT="tangent",t.OFFSET="offset",t.PERSPECTIVEDIVIDE="perspectiveDivide",t.CENTEROFFSETANDDISTANCE="centerOffsetAndDistance",t.LENGTH="length",t.PREVPOSITION="prevPosition",t.NEXTPOSITION="nextPosition",t.SUBDIVISIONFACTOR="subdivisionFactor",t.COLORFEATUREATTRIBUTE="colorFeatureAttribute",t.SIZEFEATUREATTRIBUTE="sizeFeatureAttribute",t.OPACITYFEATUREATTRIBUTE="opacityFeatureAttribute",t.DISTANCETOSTART="distanceToStart",t.UVMAPSPACE="uvMapSpace",t.BOUNDINGRECT="boundingRect",t.UVREGION="uvRegion",t.PROFILERIGHT="profileRight",t.PROFILEUP="profileUp",t.PROFILEVERTEXANDNORMAL="profileVertexAndNormal",t.FEATUREVALUE="featureValue",t.INSTANCEMODELORIGINHI="instanceModelOriginHi",t.INSTANCEMODELORIGINLO="instanceModelOriginLo",t.INSTANCEMODEL="instanceModel",t.INSTANCEMODELNORMAL="instanceModelNormal",t.INSTANCECOLOR="instanceColor",t.INSTANCEFEATUREATTRIBUTE="instanceFeatureAttribute",t.LOCALTRANSFORM="localTransform",t.GLOBALTRANSFORM="globalTransform",t.BOUNDINGSPHERE="boundingSphere",t.MODELORIGIN="modelOrigin",t.MODELSCALEFACTORS="modelScaleFactors",t.FEATUREATTRIBUTE="featureAttribute",t.STATE="state",t.LODLEVEL="lodLevel",t.POSITION0="position0",t.POSITION1="position1",t.NORMAL2COMPRESSED="normal2Compressed",t.COMPONENTINDEX="componentIndex",t.VARIANTOFFSET="variantOffset",t.VARIANTSTROKE="variantStroke",t.VARIANTEXTENSION="variantExtension",t.SIDENESS="sideness",t.START="start",t.END="end",t.UP="up",t.START_UP="startUp",t.END_UP="endUp",t.EXTRUDE="extrude",t.OBJECTANDLAYERIDCOLOR="objectAndLayerIdColor",t.INSTANCEOBJECTANDLAYERIDCOLOR="instanceObjectAndLayerIdColor"}(r||(r={}))},3055:(t,e,n)=>{n.d(e,{I$:()=>s,In:()=>u,gr:()=>c});var r=n(4431),o=n(1843),i=n(46540);const s=(0,o.BP)().vec3f(i.r.POSITION).u16(i.r.COMPONENTINDEX).freeze(),a=(0,o.BP)().vec2u8(i.r.SIDENESS).freeze(),c=((0,r.U)(a),(0,o.BP)().vec3f(i.r.POSITION0).vec3f(i.r.POSITION1).vec2i16(i.r.NORMALCOMPRESSED).u16(i.r.COMPONENTINDEX).u8(i.r.VARIANTOFFSET,{glNormalized:!0}).u8(i.r.VARIANTSTROKE).u8(i.r.VARIANTEXTENSION,{glNormalized:!0}).freeze()),u=(0,o.BP)().vec3f(i.r.POSITION0).vec3f(i.r.POSITION1).vec2i16(i.r.NORMALCOMPRESSED).vec2i16(i.r.NORMAL2COMPRESSED).u16(i.r.COMPONENTINDEX).u8(i.r.VARIANTOFFSET,{glNormalized:!0}).u8(i.r.VARIANTSTROKE).u8(i.r.VARIANTEXTENSION,{glNormalized:!0}).freeze();new Map([[i.r.POSITION0,0],[i.r.POSITION1,1],[i.r.COMPONENTINDEX,2],[i.r.VARIANTOFFSET,3],[i.r.VARIANTSTROKE,4],[i.r.VARIANTEXTENSION,5],[i.r.NORMALCOMPRESSED,6],[i.r.NORMAL2COMPRESSED,7],[i.r.SIDENESS,8]])},93406:(t,e,n)=>{n.d(e,{K:()=>c});var r=n(34727),o=n(3694),i=n(38954),s=n(51850);const a=-1;function c(t,e,n){const r=t.vertices.position,o=t.vertices.componentIndex,s=O.position0,c=O.position1,f=O.faceNormal0,E=O.faceNormal1,{edges:I,normals:A}=l(t),T=I.length/4,h=e.allocate(T);let d=0;const p=T,R=n?.allocate(p);let M=0,v=0,C=0;N.length=0;for(let t=0;t<T;++t){const e=4*t;r.getVec(I.data[e],s),r.getVec(I.data[e+1],c);const n=N.pushNew();n.index=4*t,n.length=(0,i.j)(s,c)}N.sort(((t,e)=>e.length-t.length));const P=new Array,L=new Array;N.forAll((({length:t,index:l})=>{const N=I.data[l],T=I.data[l+1],p=I.data[l+2],U=I.data[l+3],y=U===a;if(r.getVec(N,s),r.getVec(T,c),y){const t=3*p;(0,i.i)(f,A.data[t],A.data[t+1],A.data[t+2]),(0,i.c)(E,f),O.componentIndex=o.get(N),O.cosAngle=(0,i.f)(f,E)}else{let t=3*p;if((0,i.i)(f,A.data[t],A.data[t+1],A.data[t+2]),t=3*U,(0,i.i)(E,A.data[t],A.data[t+1],A.data[t+2]),O.componentIndex=o.get(N),O.cosAngle=(0,i.f)(f,E),function(t,e){return t.cosAngle>e}(O,g))return;O.cosAngle<-.9999&&(0,i.c)(E,f)}v+=t,C++,y||function(t,e){return t.cosAngle<e}(O,m)?(e.write(h,d++,O),P.push(t)):u(O,S)&&(R&&n&&n.write(R,M++,O),L.push(t))}));const U=new Float32Array(P.reverse()),y=new Float32Array(L.reverse()),w=R&&n?{instancesData:R.slice(0,M),lodInfo:{lengths:y}}:void 0;return{regular:{instancesData:h.slice(0,d),lodInfo:{lengths:U}},silhouette:w,averageEdgeLength:v/C}}function u(t,e){const n=(0,r.XM)(t.cosAngle);return(0,i.o)(T,t.position1,t.position0),n*((0,i.f)((0,i.e)(A,t.faceNormal0,t.faceNormal1),T)>0?-1:1)>e}function l(t){const e=t.faces.length/3,n=t.faces,r=t.neighbors,o=t.vertices.position;E.length=I.length=0;for(let t=0;t<e;t++){const e=3*t,s=r[e],c=r[e+1],u=r[e+2],l=n[e],f=n[e+1],N=n[e+2];o.getVec(l,h),o.getVec(f,d),o.getVec(N,p),(0,i.d)(d,d,h),(0,i.d)(p,p,h),(0,i.e)(h,d,p),(0,i.n)(h,h),I.pushArray(h),(s===a||l<f)&&(E.push(l),E.push(f),E.push(t),E.push(s)),(c===a||f<N)&&(E.push(f),E.push(N),E.push(t),E.push(c)),(u===a||N<l)&&(E.push(N),E.push(l),E.push(t),E.push(u))}return{edges:E,normals:I}}class f{constructor(){this.index=0,this.length=0}}const N=new o.A({allocator:t=>t||new f,deallocator:null}),E=new o.A({deallocator:null}),I=new o.A({deallocator:null}),O=new class{constructor(){this.position0=(0,s.vt)(),this.position1=(0,s.vt)(),this.faceNormal0=(0,s.vt)(),this.faceNormal1=(0,s.vt)(),this.componentIndex=0,this.cosAngle=0}},A=(0,s.vt)(),T=(0,s.vt)(),h=(0,s.vt)(),d=(0,s.vt)(),p=(0,s.vt)(),S=(0,r.kU)(4),g=Math.cos(S),R=(0,r.kU)(35),m=Math.cos(R)},53099:(t,e,n)=>{n.d(e,{o6:()=>P,HY:()=>D,hx:()=>L,Jb:()=>b});var r=n(9318);function o(t,e,n){const r=e/3,o=new Uint32Array(n+1),i=new Uint32Array(n+1),s=(t,e)=>{t<e?o[t+1]++:i[e+1]++};for(let e=0;e<r;e++){const n=t[3*e],r=t[3*e+1],o=t[3*e+2];s(n,r),s(r,o),s(o,n)}let a=0,c=0;for(let t=0;t<n;t++){const e=o[t+1],n=i[t+1];o[t+1]=a,i[t+1]=c,a+=e,c+=n}const u=new Uint32Array(6*r),l=o[n],f=(t,e,n)=>{if(t<e){const r=o[t+1]++;u[2*r]=e,u[2*r+1]=n}else{const r=i[e+1]++;u[2*l+2*r]=t,u[2*l+2*r+1]=n}};for(let e=0;e<r;e++){const n=t[3*e],r=t[3*e+1],o=t[3*e+2];f(n,r,e),f(r,o,e),f(o,n,e)}const N=(t,e)=>{const n=2*t,r=e-t;for(let t=1;t<r;t++){const e=u[n+2*t],r=u[n+2*t+1];let o=t-1;for(;o>=0&&u[n+2*o]>e;o--)u[n+2*o+2]=u[n+2*o],u[n+2*o+3]=u[n+2*o+1];u[n+2*o+2]=e,u[n+2*o+3]=r}};for(let t=0;t<n;t++)N(o[t],o[t+1]),N(l+i[t],l+i[t+1]);const E=new Int32Array(3*r),I=(e,n)=>e===t[3*n]?0:e===t[3*n+1]?1:e===t[3*n+2]?2:-1,O=(t,e)=>{const n=I(t,e);E[3*e+n]=-1},A=(t,e,n,r)=>{const o=I(t,e);E[3*e+o]=r;const i=I(n,r);E[3*r+i]=e};for(let t=0;t<n;t++){let e=o[t];const n=o[t+1];let r=i[t];const s=i[t+1];for(;e<n&&r<s;){const n=u[2*e],o=u[2*l+2*r];n===o?(A(t,u[2*e+1],o,u[2*l+2*r+1]),e++,r++):n<o?(O(t,u[2*e+1]),e++):(O(o,u[2*l+2*r+1]),r++)}for(;e<n;)O(t,u[2*e+1]),e++;for(;r<s;)O(u[2*l+2*r],u[2*l+2*r+1]),r++}return E}var i=n(1843),s=n(46540),a=n(3055),c=n(87811),u=n(38954),l=n(51850),f=n(4431),N=n(34727);function E(t,e,n,r,o,i=2){const s=1/(Math.abs(n)+Math.abs(r)+Math.abs(o)),a=n*s,c=r*s,u=o<=0?(a>=0?1:-1)*(1-Math.abs(c)):a,l=o<=0?(c>=0?1:-1)*(1-Math.abs(a)):c,f=e*i;t[f]=I(u),t[f+1]=I(l)}function I(t){return(0,N.qE)(Math.round(32767*t),-32767,32767)}n(11868);class O{updateSettings(t){this.settings=t,this._edgeHashFunction=t.reducedPrecision?p:d}write(t,e,n){v.seed=this._edgeHashFunction(n);const r=v.getIntRange(0,255),o=v.getIntRange(0,this.settings.variants-1),i=v.getFloat(),s=255*(.5*function(t){return Math.abs(t)**1.2*Math.sign(t)}(-(1-Math.min(i/.7,1))+Math.max(0,i-.7)/(1-.7))+.5);t.position0.setVec(e,n.position0),t.position1.setVec(e,n.position1),t.componentIndex.set(e,n.componentIndex),t.variantOffset.set(e,r),t.variantStroke.set(e,o),t.variantExtension.set(e,s)}}const A=new Float32Array(6),T=new Uint32Array(A.buffer),h=new Uint32Array(1);function d(t){return A[0]=t.position0[0],A[1]=t.position0[1],A[2]=t.position0[2],A[3]=t.position1[0],A[4]=t.position1[1],A[5]=t.position1[2],h[0]=31*(31*(31*(31*(31*(166811+T[0])+T[1])+T[2])+T[3])+T[4])+T[5],h[0]}function p(t){const e=A;e[0]=g(t.position0[0]),e[1]=g(t.position0[1]),e[2]=g(t.position0[2]),e[3]=g(t.position1[0]),e[4]=g(t.position1[1]),e[5]=g(t.position1[2]),h[0]=5381;for(let t=0;t<T.length;t++)h[0]=31*h[0]+T[t];return h[0]}const S=1e4;function g(t){return Math.round(t*S)/S}class R{constructor(){this._commonWriter=new O}updateSettings(t){this._commonWriter.updateSettings(t)}allocate(t){return a.gr.createBuffer(t)}write(t,e,n){this._commonWriter.write(t,e,n),(0,u.g)(M,n.faceNormal0,n.faceNormal1),(0,u.n)(M,M);const{typedBuffer:r,typedBufferStride:o}=t.normalCompressed;E(r,e,M[0],M[1],M[2],o)}static{this.Layout=a.gr}static{this.glLayout=(0,f.U)(a.gr,1)}}class m{constructor(){this._commonWriter=new O}updateSettings(t){this._commonWriter.updateSettings(t)}allocate(t){return a.In.createBuffer(t)}write(t,e,n){this._commonWriter.write(t,e,n);{const{typedBuffer:r,typedBufferStride:o}=t.normalCompressed;E(r,e,n.faceNormal0[0],n.faceNormal0[1],n.faceNormal0[2],o)}{const{typedBuffer:r,typedBufferStride:o}=t.normal2Compressed;E(r,e,n.faceNormal1[0],n.faceNormal1[1],n.faceNormal1[2],o)}}static{this.Layout=a.In}static{this.glLayout=(0,f.U)(a.In,1)}}const M=(0,l.vt)(),v=new c.A;var C=n(93406);function P(t){const e=L(t.data,t.skipDeduplicate,t.indices,t.indicesLength);return y.updateSettings(t.writerSettings),w.updateSettings(t.writerSettings),(0,C.K)(e,y,w)}function L(t,e,n,i){if(e){const e=o(n,i,t.count);return new U(n,i,e,t)}const s=(0,r.b)(t.buffer,t.stride/4,{originalIndices:n,originalIndicesLength:i}),c=o(s.indices,i,s.uniqueCount);return{faces:s.indices,facesLength:s.indices.length,neighbors:c,vertices:a.I$.createView(s.buffer)}}class U{constructor(t,e,n,r){this.faces=t,this.facesLength=e,this.neighbors=n,this.vertices=r}}const y=new R,w=new m,b=(0,i.BP)().vec3f(s.r.POSITION0).vec3f(s.r.POSITION1),D=(0,i.BP)().vec3f(s.r.POSITION0).vec3f(s.r.POSITION1).u16(s.r.COMPONENTINDEX)},74038:(t,e,n)=>{n.d(e,{_:()=>r});class r{constructor(t,e,n,r,o,i=!1,s=0){this.name=t,this.count=e,this.type=n,this.offset=r,this.stride=o,this.normalized=i,this.divisor=s}}}}]);