@splunk/visualizations 28.8.0 → 28.9.1

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 (279) hide show
  1. package/Area.config.js +2 -4
  2. package/Area.config.js.map +2 -2
  3. package/Area.js +245 -147
  4. package/Area.js.map +4 -4
  5. package/Bar.config.js +2 -4
  6. package/Bar.config.js.map +2 -2
  7. package/Bar.js +246 -148
  8. package/Bar.js.map +4 -4
  9. package/Bubble/Bubble.d.ts +3 -1
  10. package/Bubble/Bubble.d.ts.map +1 -1
  11. package/Bubble.js +216 -108
  12. package/Bubble.js.map +4 -4
  13. package/CHANGELOG.external.md +43 -1
  14. package/ChoroplethSvg/ChoroplethSvg.d.ts +3 -1
  15. package/ChoroplethSvg/ChoroplethSvg.d.ts.map +1 -1
  16. package/ChoroplethSvg/PureChoroplethSvg/PureChoroplethSvg.d.ts.map +1 -1
  17. package/ChoroplethSvg/PureChoroplethSvg/SvgMutator.d.ts.map +1 -1
  18. package/ChoroplethSvg.js +638 -209
  19. package/ChoroplethSvg.js.map +4 -4
  20. package/Column.config.js +2 -4
  21. package/Column.config.js.map +2 -2
  22. package/Column.js +246 -148
  23. package/Column.js.map +4 -4
  24. package/Ellipse/Ellipse.d.ts +3 -1
  25. package/Ellipse/Ellipse.d.ts.map +1 -1
  26. package/Ellipse.js +216 -105
  27. package/Ellipse.js.map +4 -4
  28. package/Events/Events.d.ts +5 -3
  29. package/Events/Events.d.ts.map +1 -1
  30. package/Events/PureEvents/FieldSummaryTooltip.d.ts.map +1 -1
  31. package/Events/PureEvents/PureEvents.d.ts +0 -1
  32. package/Events/PureEvents/PureEvents.d.ts.map +1 -1
  33. package/Events.js +270 -157
  34. package/Events.js.map +4 -4
  35. package/FillerGauge.js +243 -140
  36. package/FillerGauge.js.map +4 -4
  37. package/Image/Image.d.ts +3 -1
  38. package/Image/Image.d.ts.map +1 -1
  39. package/Image.js +217 -106
  40. package/Image.js.map +4 -4
  41. package/Line.config.js +2 -4
  42. package/Line.config.js.map +2 -2
  43. package/Line.js +246 -148
  44. package/Line.js.map +4 -4
  45. package/LinkGraph/LinkGraph.d.ts +3 -1
  46. package/LinkGraph/LinkGraph.d.ts.map +1 -1
  47. package/LinkGraph/PureLinkGraph/PureLinkGraphUtils.d.ts.map +1 -1
  48. package/LinkGraph/PureLinkGraph/components/Node.d.ts.map +1 -1
  49. package/LinkGraph.config.js +1 -1
  50. package/LinkGraph.config.js.map +2 -2
  51. package/LinkGraph.js +802 -682
  52. package/LinkGraph.js.map +4 -4
  53. package/Map/Map.d.ts +10 -9
  54. package/Map/Map.d.ts.map +1 -1
  55. package/Map/PureMap/BubbleLayer.d.ts.map +1 -1
  56. package/Map/PureMap/ChoroplethLayer.d.ts.map +1 -1
  57. package/Map/PureMap/ClusterLayer.d.ts.map +1 -1
  58. package/Map/PureMap/MapUtils.d.ts.map +1 -1
  59. package/Map/PureMap/MarkerWrapper.d.ts.map +1 -1
  60. package/Map/PureMap/PureMap.d.ts +8 -65
  61. package/Map/PureMap/PureMap.d.ts.map +1 -1
  62. package/Map/PureMap/mapWorker.d.ts +2 -0
  63. package/Map/PureMap/mapWorker.d.ts.map +1 -0
  64. package/Map.config.js +1 -1
  65. package/Map.config.js.map +2 -2
  66. package/Map.js +439 -336
  67. package/Map.js.map +4 -4
  68. package/Markdown/Markdown.d.ts +9 -1
  69. package/Markdown/Markdown.d.ts.map +1 -1
  70. package/Markdown/config.d.ts.map +1 -1
  71. package/Markdown.config.js +5 -0
  72. package/Markdown.config.js.map +2 -2
  73. package/Markdown.js +225 -94
  74. package/Markdown.js.map +3 -3
  75. package/MarkerGauge.js +239 -134
  76. package/MarkerGauge.js.map +4 -4
  77. package/NetworkGraph/PureNetworkGraph/PureNetworkGraph.d.ts.map +1 -1
  78. package/NetworkGraph/PureNetworkGraph/components/NetworkGraphSvg.d.ts +1 -0
  79. package/NetworkGraph/PureNetworkGraph/components/NetworkGraphSvg.d.ts.map +1 -1
  80. package/NetworkGraph/PureNetworkGraph/components/Node.d.ts +1 -0
  81. package/NetworkGraph/PureNetworkGraph/components/Node.d.ts.map +1 -1
  82. package/NetworkGraph/PureNetworkGraph/utils/networkGraphUtils.d.ts +3 -5
  83. package/NetworkGraph/PureNetworkGraph/utils/networkGraphUtils.d.ts.map +1 -1
  84. package/NetworkGraph.config.js +4 -2
  85. package/NetworkGraph.config.js.map +2 -2
  86. package/NetworkGraph.js +327 -188
  87. package/NetworkGraph.js.map +4 -4
  88. package/ParallelCoordinates/ParallelCoordinates.d.ts +3 -1
  89. package/ParallelCoordinates/ParallelCoordinates.d.ts.map +1 -1
  90. package/ParallelCoordinates.js +239 -128
  91. package/ParallelCoordinates.js.map +4 -4
  92. package/Pie/config.d.ts.map +1 -1
  93. package/Pie/pieUtils.d.ts.map +1 -1
  94. package/Pie.config.js +4 -2
  95. package/Pie.config.js.map +2 -2
  96. package/Pie.js +228 -125
  97. package/Pie.js.map +3 -3
  98. package/ProcessTree/ProcessTree.d.ts +3 -1
  99. package/ProcessTree/ProcessTree.d.ts.map +1 -1
  100. package/ProcessTree/PureProcessTree/PureProcessTree.d.ts +1 -0
  101. package/ProcessTree/PureProcessTree/PureProcessTree.d.ts.map +1 -1
  102. package/ProcessTree/PureProcessTree/components/ProcessTreeLeftPanel.d.ts +1 -0
  103. package/ProcessTree/PureProcessTree/components/ProcessTreeLeftPanel.d.ts.map +1 -1
  104. package/ProcessTree/PureProcessTree/hooks/useProcessTreeGraphData.d.ts +2 -1
  105. package/ProcessTree/PureProcessTree/hooks/useProcessTreeGraphData.d.ts.map +1 -1
  106. package/ProcessTree/PureProcessTree/utils/iconLoader.d.ts +2 -0
  107. package/ProcessTree/PureProcessTree/utils/iconLoader.d.ts.map +1 -1
  108. package/ProcessTree/PureProcessTree/utils/processTreeUtils.d.ts +5 -1
  109. package/ProcessTree/PureProcessTree/utils/processTreeUtils.d.ts.map +1 -1
  110. package/ProcessTree.js +435 -192
  111. package/ProcessTree.js.map +4 -4
  112. package/Punchcard/Punchcard.d.ts +3 -1
  113. package/Punchcard/Punchcard.d.ts.map +1 -1
  114. package/Punchcard.js +238 -129
  115. package/Punchcard.js.map +4 -4
  116. package/Rectangle/Rectangle.d.ts +3 -1
  117. package/Rectangle/Rectangle.d.ts.map +1 -1
  118. package/Rectangle.js +218 -116
  119. package/Rectangle.js.map +4 -4
  120. package/RichText/PureRichText/Editor/EditorPanel.d.ts +1 -4
  121. package/RichText/PureRichText/Editor/EditorPanel.d.ts.map +1 -1
  122. package/RichText/PureRichText/Editor/hooks/useConfigPanelFocus.d.ts +14 -0
  123. package/RichText/PureRichText/Editor/hooks/useConfigPanelFocus.d.ts.map +1 -0
  124. package/RichText/PureRichText/Editor/hooks/useEditorPanelSync.d.ts +15 -0
  125. package/RichText/PureRichText/Editor/hooks/useEditorPanelSync.d.ts.map +1 -0
  126. package/RichText/PureRichText/Editor/hooks/useLinkHandlers.d.ts.map +1 -1
  127. package/RichText/PureRichText/Editor/hooks/usePortalTarget.d.ts +9 -0
  128. package/RichText/PureRichText/Editor/hooks/usePortalTarget.d.ts.map +1 -0
  129. package/RichText/PureRichText/InnerEditor.d.ts +15 -9
  130. package/RichText/PureRichText/InnerEditor.d.ts.map +1 -1
  131. package/RichText/PureRichText/PureRichText.d.ts +5 -10
  132. package/RichText/PureRichText/PureRichText.d.ts.map +1 -1
  133. package/RichText/PureRichText/PureRichTextContext.d.ts +3 -6
  134. package/RichText/PureRichText/PureRichTextContext.d.ts.map +1 -1
  135. package/RichText/PureRichText/RichTextStyles.d.ts +5 -4
  136. package/RichText/PureRichText/RichTextStyles.d.ts.map +1 -1
  137. package/RichText/PureRichText/activeInstance.d.ts +6 -7
  138. package/RichText/PureRichText/activeInstance.d.ts.map +1 -1
  139. package/RichText/PureRichText/config.d.ts.map +1 -1
  140. package/RichText/PureRichText/hooks/useContentSync.d.ts +9 -9
  141. package/RichText/PureRichText/hooks/useContentSync.d.ts.map +1 -1
  142. package/RichText/PureRichText/hooks/useDashboardKeyboardNav.d.ts +2 -7
  143. package/RichText/PureRichText/hooks/useDashboardKeyboardNav.d.ts.map +1 -1
  144. package/RichText/PureRichText/hooks/useEditorSetup.d.ts +8 -4
  145. package/RichText/PureRichText/hooks/useEditorSetup.d.ts.map +1 -1
  146. package/RichText/PureRichText/hooks/useFocusHandlers.d.ts +2 -4
  147. package/RichText/PureRichText/hooks/useFocusHandlers.d.ts.map +1 -1
  148. package/RichText/PureRichText/hooks/useKeyboardShortcuts.d.ts.map +1 -1
  149. package/RichText/PureRichText/hooks/useMouseHandlers.d.ts +3 -7
  150. package/RichText/PureRichText/hooks/useMouseHandlers.d.ts.map +1 -1
  151. package/RichText/PureRichText/hooks/useStepFontSize.d.ts +2 -2
  152. package/RichText/PureRichText/hooks/useStepLineSpacing.d.ts +2 -3
  153. package/RichText/PureRichText/hooks/useStepLineSpacing.d.ts.map +1 -1
  154. package/RichText/PureRichText/hooks/useTokenMap.d.ts +13 -24
  155. package/RichText/PureRichText/hooks/useTokenMap.d.ts.map +1 -1
  156. package/RichText/PureRichText/renderers/ElementRenderer.d.ts +2 -5
  157. package/RichText/PureRichText/renderers/ElementRenderer.d.ts.map +1 -1
  158. package/RichText/PureRichText/types.d.ts +6 -0
  159. package/RichText/PureRichText/types.d.ts.map +1 -1
  160. package/RichText/PureRichText/utils/slateUtils.d.ts +26 -2
  161. package/RichText/PureRichText/utils/slateUtils.d.ts.map +1 -1
  162. package/RichText/RichText.d.ts +3 -1
  163. package/RichText/RichText.d.ts.map +1 -1
  164. package/RichText/config.d.ts.map +1 -1
  165. package/RichText.config.js +5 -0
  166. package/RichText.config.js.map +2 -2
  167. package/RichText.js +1848 -842
  168. package/RichText.js.map +4 -4
  169. package/Sankey/PureSankey/PureSankey.d.ts +2 -0
  170. package/Sankey/PureSankey/PureSankey.d.ts.map +1 -1
  171. package/Sankey/PureSankey/SankeyLink.d.ts +3 -1
  172. package/Sankey/PureSankey/SankeyLink.d.ts.map +1 -1
  173. package/Sankey/PureSankey/SankeyNode.d.ts +5 -2
  174. package/Sankey/PureSankey/SankeyNode.d.ts.map +1 -1
  175. package/Sankey/PureSankey/SankeyUtils.d.ts.map +1 -1
  176. package/Sankey/Sankey.d.ts +3 -1
  177. package/Sankey/Sankey.d.ts.map +1 -1
  178. package/Sankey.js +508 -219
  179. package/Sankey.js.map +4 -4
  180. package/Scatter.config.js +3 -5
  181. package/Scatter.config.js.map +2 -2
  182. package/Scatter.js +244 -146
  183. package/Scatter.js.map +4 -4
  184. package/SingleValue/SingleValue.d.ts.map +1 -1
  185. package/SingleValue.js +273 -173
  186. package/SingleValue.js.map +4 -4
  187. package/SingleValueBasic.js +4 -4
  188. package/SingleValueBasic.js.map +2 -2
  189. package/SingleValueIcon/SingleValueIcon.d.ts.map +1 -1
  190. package/SingleValueIcon.js +264 -164
  191. package/SingleValueIcon.js.map +4 -4
  192. package/SingleValueRadial.js +267 -167
  193. package/SingleValueRadial.js.map +4 -4
  194. package/SparkLine/SparkLine.d.ts.map +1 -1
  195. package/SparkLine.js.map +2 -2
  196. package/Table/PureTable.d.ts.map +1 -1
  197. package/Table/Table.d.ts +2 -5
  198. package/Table/Table.d.ts.map +1 -1
  199. package/Table/hooks.d.ts.map +1 -1
  200. package/Table.config.js +1 -1
  201. package/Table.config.js.map +2 -2
  202. package/Table.js +293 -271
  203. package/Table.js.map +4 -4
  204. package/Timeline/Timeline.d.ts +3 -1
  205. package/Timeline/Timeline.d.ts.map +1 -1
  206. package/Timeline.config.js +2 -2
  207. package/Timeline.config.js.map +2 -2
  208. package/Timeline.js +266 -142
  209. package/Timeline.js.map +4 -4
  210. package/Treemap/Treemap.d.ts +3 -1
  211. package/Treemap/Treemap.d.ts.map +1 -1
  212. package/Treemap.js +263 -147
  213. package/Treemap.js.map +4 -4
  214. package/common/Charting.js +8 -10
  215. package/common/Charting.js.map +2 -2
  216. package/common/ChartingApi.d.ts.map +1 -1
  217. package/common/ChartingApi.js +5 -2
  218. package/common/ChartingApi.js.map +2 -2
  219. package/common/DocExampleWithVizSandbox.d.ts +2 -0
  220. package/common/DocExampleWithVizSandbox.d.ts.map +1 -1
  221. package/common/DocExampleWithVizSandbox.js +54 -6
  222. package/common/DocExampleWithVizSandbox.js.map +2 -2
  223. package/common/GaugeMajorTicks.js.map +2 -2
  224. package/common/GaugeValueMarker.js.map +2 -2
  225. package/common/OptionsDoc.js +1 -1
  226. package/common/OptionsDoc.js.map +2 -2
  227. package/common/OverviewDoc.js +54 -6
  228. package/common/OverviewDoc.js.map +2 -2
  229. package/common/ThemesDoc.js.map +2 -2
  230. package/common/TimeSeriesChartWrapper.js +10 -9
  231. package/common/TimeSeriesChartWrapper.js.map +2 -2
  232. package/common/chartingUtils.d.ts.map +1 -1
  233. package/common/chartingUtils.js +12 -11
  234. package/common/chartingUtils.js.map +2 -2
  235. package/common/components/IconPlaceholder.d.ts.map +1 -1
  236. package/common/docUtils.d.ts.map +1 -1
  237. package/common/docUtils.js +15 -6
  238. package/common/docUtils.js.map +2 -2
  239. package/common/editorConfig/AxesChartDataDisplay.d.ts.map +1 -1
  240. package/common/gaugeUtils.d.ts.map +1 -1
  241. package/common/gaugeUtils.js +4 -2
  242. package/common/gaugeUtils.js.map +2 -2
  243. package/common/hooks/useSorting.d.ts.map +1 -1
  244. package/common/interfaces/VizEvent.d.ts +7 -0
  245. package/common/interfaces/VizEvent.d.ts.map +1 -1
  246. package/common/utils/dataUtils.d.ts.map +1 -1
  247. package/common/utils/dataUtils.js +6 -10
  248. package/common/utils/dataUtils.js.map +2 -2
  249. package/common/utils/featureFlagUtils.js +2 -2
  250. package/common/utils/featureFlagUtils.js.map +2 -2
  251. package/common/utils/focusUtils.js +1 -1
  252. package/common/utils/focusUtils.js.map +2 -2
  253. package/common/utils/mapUtils.d.ts.map +1 -1
  254. package/common/utils/mapUtils.js +17 -21
  255. package/common/utils/mapUtils.js.map +3 -3
  256. package/common/utils/singleValueUtils.js +22 -25
  257. package/common/utils/singleValueUtils.js.map +2 -2
  258. package/common/utils/textUtils.d.ts.map +1 -1
  259. package/common/utils/textUtils.js +37 -23
  260. package/common/utils/textUtils.js.map +2 -2
  261. package/common/utils/trellisUtils.d.ts.map +1 -1
  262. package/common/utils/trellisUtils.js +18 -17
  263. package/common/utils/trellisUtils.js.map +2 -2
  264. package/common/utils/urlUtils.js.map +2 -2
  265. package/common/utils/visualizationTheme.d.ts +15 -0
  266. package/common/utils/visualizationTheme.d.ts.map +1 -0
  267. package/common/utils/visualizationTheme.js +72 -0
  268. package/common/utils/visualizationTheme.js.map +7 -0
  269. package/common/withDashboardViz.d.ts +3 -1
  270. package/common/withDashboardViz.d.ts.map +1 -1
  271. package/common/withDashboardViz.js +216 -105
  272. package/common/withDashboardViz.js.map +4 -4
  273. package/docs-llm/map/examples-react.md +39 -39
  274. package/docs-llm/network-graph/options.md +2 -2
  275. package/docs-llm/pie/examples-json.md +195 -0
  276. package/docs-llm/pie/examples-react.md +123 -0
  277. package/docs-llm/pie/options.md +1 -1
  278. package/docs-llm/process-tree/options.md +3 -2
  279. package/package.json +32 -29
package/Map.js CHANGED
@@ -148,77 +148,68 @@ var defaultImport6 = __toESM(require("lodash"));
148
148
  __reExport(lodash_exports, require("lodash"));
149
149
  var lodash_default = "default" in defaultImport6 ? defaultImport6.default : defaultImport6;
150
150
 
151
- // esm-externals:prop-types
152
- var prop_types_exports = {};
153
- __export(prop_types_exports, {
154
- default: () => prop_types_default
155
- });
156
- var defaultImport7 = __toESM(require("prop-types"));
157
- __reExport(prop_types_exports, require("prop-types"));
158
- var prop_types_default = "default" in defaultImport7 ? defaultImport7.default : defaultImport7;
159
-
160
151
  // esm-externals:chroma-js
161
152
  var chroma_js_exports = {};
162
153
  __export(chroma_js_exports, {
163
154
  default: () => chroma_js_default
164
155
  });
165
- var defaultImport8 = __toESM(require("chroma-js"));
156
+ var defaultImport7 = __toESM(require("chroma-js"));
166
157
  __reExport(chroma_js_exports, require("chroma-js"));
167
- var chroma_js_default = "default" in defaultImport8 ? defaultImport8.default : defaultImport8;
158
+ var chroma_js_default = "default" in defaultImport7 ? defaultImport7.default : defaultImport7;
168
159
 
169
- // esm-externals:maplibre-gl
160
+ // esm-externals:maplibre-gl/dist/maplibre-gl.mjs
170
161
  var maplibre_gl_exports = {};
171
162
  __export(maplibre_gl_exports, {
172
163
  default: () => maplibre_gl_default
173
164
  });
174
- var defaultImport9 = __toESM(require("maplibre-gl"));
175
- __reExport(maplibre_gl_exports, require("maplibre-gl"));
176
- var maplibre_gl_default = "default" in defaultImport9 ? defaultImport9.default : defaultImport9;
165
+ var defaultImport8 = __toESM(require("maplibre-gl/dist/maplibre-gl.mjs"), 1);
166
+ __reExport(maplibre_gl_exports, require("maplibre-gl/dist/maplibre-gl.mjs"));
167
+ var maplibre_gl_default = "default" in defaultImport8 ? defaultImport8.default : defaultImport8;
177
168
 
178
169
  // esm-externals:@splunk/ui-utils/i18n
179
170
  var i18n_exports = {};
180
171
  __export(i18n_exports, {
181
172
  default: () => i18n_default
182
173
  });
183
- var defaultImport10 = __toESM(require("@splunk/ui-utils/i18n"));
174
+ var defaultImport9 = __toESM(require("@splunk/ui-utils/i18n"));
184
175
  __reExport(i18n_exports, require("@splunk/ui-utils/i18n"));
185
- var i18n_default = "default" in defaultImport10 ? defaultImport10.default : defaultImport10;
176
+ var i18n_default = "default" in defaultImport9 ? defaultImport9.default : defaultImport9;
186
177
 
187
178
  // esm-externals:@splunk/react-ui/Button
188
179
  var Button_exports = {};
189
180
  __export(Button_exports, {
190
181
  default: () => Button_default
191
182
  });
192
- var defaultImport11 = __toESM(require("@splunk/react-ui/Button"));
183
+ var defaultImport10 = __toESM(require("@splunk/react-ui/Button"));
193
184
  __reExport(Button_exports, require("@splunk/react-ui/Button"));
194
- var Button_default = "default" in defaultImport11 ? defaultImport11.default : defaultImport11;
185
+ var Button_default = "default" in defaultImport10 ? defaultImport10.default : defaultImport10;
195
186
 
196
187
  // esm-externals:@splunk/react-ui/Tooltip
197
188
  var Tooltip_exports = {};
198
189
  __export(Tooltip_exports, {
199
190
  default: () => Tooltip_default
200
191
  });
201
- var defaultImport12 = __toESM(require("@splunk/react-ui/Tooltip"));
192
+ var defaultImport11 = __toESM(require("@splunk/react-ui/Tooltip"));
202
193
  __reExport(Tooltip_exports, require("@splunk/react-ui/Tooltip"));
203
- var Tooltip_default = "default" in defaultImport12 ? defaultImport12.default : defaultImport12;
194
+ var Tooltip_default = "default" in defaultImport11 ? defaultImport11.default : defaultImport11;
204
195
 
205
196
  // esm-externals:@splunk/visualization-context/MapContext
206
197
  var MapContext_exports = {};
207
198
  __export(MapContext_exports, {
208
199
  default: () => MapContext_default
209
200
  });
210
- var defaultImport13 = __toESM(require("@splunk/visualization-context/MapContext"));
201
+ var defaultImport12 = __toESM(require("@splunk/visualization-context/MapContext"));
211
202
  __reExport(MapContext_exports, require("@splunk/visualization-context/MapContext"));
212
- var MapContext_default = "default" in defaultImport13 ? defaultImport13.default : defaultImport13;
203
+ var MapContext_default = "default" in defaultImport12 ? defaultImport12.default : defaultImport12;
213
204
 
214
205
  // esm-externals:@splunk/visualization-schemas
215
206
  var visualization_schemas_exports = {};
216
207
  __export(visualization_schemas_exports, {
217
208
  default: () => visualization_schemas_default
218
209
  });
219
- var defaultImport14 = __toESM(require("@splunk/visualization-schemas"));
210
+ var defaultImport13 = __toESM(require("@splunk/visualization-schemas"));
220
211
  __reExport(visualization_schemas_exports, require("@splunk/visualization-schemas"));
221
- var visualization_schemas_default = "default" in defaultImport14 ? defaultImport14.default : defaultImport14;
212
+ var visualization_schemas_default = "default" in defaultImport13 ? defaultImport13.default : defaultImport13;
222
213
 
223
214
  // src/common/utils/shadowDomUtils.ts
224
215
  var getFloatingLayerStyleTarget = (anchor) => {
@@ -237,54 +228,54 @@ var style_exports = {};
237
228
  __export(style_exports, {
238
229
  default: () => style_default
239
230
  });
240
- var defaultImport15 = __toESM(require("@splunk/visualizations-shared/style"));
231
+ var defaultImport14 = __toESM(require("@splunk/visualizations-shared/style"));
241
232
  __reExport(style_exports, require("@splunk/visualizations-shared/style"));
242
- var style_default = "default" in defaultImport15 ? defaultImport15.default : defaultImport15;
233
+ var style_default = "default" in defaultImport14 ? defaultImport14.default : defaultImport14;
243
234
 
244
235
  // esm-externals:maplibre-gl/dist/maplibre-gl.css
245
236
  var maplibre_gl_exports2 = {};
246
237
  __export(maplibre_gl_exports2, {
247
238
  default: () => maplibre_gl_default2
248
239
  });
249
- var defaultImport16 = __toESM(require("maplibre-gl/dist/maplibre-gl.css"));
240
+ var defaultImport15 = __toESM(require("maplibre-gl/dist/maplibre-gl.css"));
250
241
  __reExport(maplibre_gl_exports2, require("maplibre-gl/dist/maplibre-gl.css"));
251
- var maplibre_gl_default2 = "default" in defaultImport16 ? defaultImport16.default : defaultImport16;
242
+ var maplibre_gl_default2 = "default" in defaultImport15 ? defaultImport15.default : defaultImport15;
252
243
 
253
244
  // esm-externals:@splunk/visualizations-shared/iconUtils
254
245
  var iconUtils_exports = {};
255
246
  __export(iconUtils_exports, {
256
247
  default: () => iconUtils_default
257
248
  });
258
- var defaultImport17 = __toESM(require("@splunk/visualizations-shared/iconUtils"));
249
+ var defaultImport16 = __toESM(require("@splunk/visualizations-shared/iconUtils"));
259
250
  __reExport(iconUtils_exports, require("@splunk/visualizations-shared/iconUtils"));
260
- var iconUtils_default = "default" in defaultImport17 ? defaultImport17.default : defaultImport17;
251
+ var iconUtils_default = "default" in defaultImport16 ? defaultImport16.default : defaultImport16;
261
252
 
262
253
  // esm-externals:@splunk/visualizations-shared/RemoteIcon
263
254
  var RemoteIcon_exports = {};
264
255
  __export(RemoteIcon_exports, {
265
256
  default: () => RemoteIcon_default
266
257
  });
267
- var defaultImport18 = __toESM(require("@splunk/visualizations-shared/RemoteIcon"));
258
+ var defaultImport17 = __toESM(require("@splunk/visualizations-shared/RemoteIcon"));
268
259
  __reExport(RemoteIcon_exports, require("@splunk/visualizations-shared/RemoteIcon"));
269
- var RemoteIcon_default = "default" in defaultImport18 ? defaultImport18.default : defaultImport18;
260
+ var RemoteIcon_default = "default" in defaultImport17 ? defaultImport17.default : defaultImport17;
270
261
 
271
262
  // esm-externals:@splunk/visualization-context/FeatureFlagContext
272
263
  var FeatureFlagContext_exports = {};
273
264
  __export(FeatureFlagContext_exports, {
274
265
  default: () => FeatureFlagContext_default
275
266
  });
276
- var defaultImport19 = __toESM(require("@splunk/visualization-context/FeatureFlagContext"));
267
+ var defaultImport18 = __toESM(require("@splunk/visualization-context/FeatureFlagContext"));
277
268
  __reExport(FeatureFlagContext_exports, require("@splunk/visualization-context/FeatureFlagContext"));
278
- var FeatureFlagContext_default = "default" in defaultImport19 ? defaultImport19.default : defaultImport19;
269
+ var FeatureFlagContext_default = "default" in defaultImport18 ? defaultImport18.default : defaultImport18;
279
270
 
280
271
  // esm-externals:@splunk/ui-utils/format
281
272
  var format_exports = {};
282
273
  __export(format_exports, {
283
274
  default: () => format_default
284
275
  });
285
- var defaultImport20 = __toESM(require("@splunk/ui-utils/format"));
276
+ var defaultImport19 = __toESM(require("@splunk/ui-utils/format"));
286
277
  __reExport(format_exports, require("@splunk/ui-utils/format"));
287
- var format_default = "default" in defaultImport20 ? defaultImport20.default : defaultImport20;
278
+ var format_default = "default" in defaultImport19 ? defaultImport19.default : defaultImport19;
288
279
 
289
280
  // src/Map/PureMap/keyboardConstants.ts
290
281
  var KEYBOARD_KEYS = {
@@ -303,27 +294,27 @@ var Popover_exports = {};
303
294
  __export(Popover_exports, {
304
295
  default: () => Popover_default
305
296
  });
306
- var defaultImport21 = __toESM(require("@splunk/react-ui/Popover"));
297
+ var defaultImport20 = __toESM(require("@splunk/react-ui/Popover"));
307
298
  __reExport(Popover_exports, require("@splunk/react-ui/Popover"));
308
- var Popover_default = "default" in defaultImport21 ? defaultImport21.default : defaultImport21;
299
+ var Popover_default = "default" in defaultImport20 ? defaultImport20.default : defaultImport20;
309
300
 
310
301
  // esm-externals:@splunk/themes
311
302
  var themes_exports = {};
312
303
  __export(themes_exports, {
313
304
  default: () => themes_default
314
305
  });
315
- var defaultImport22 = __toESM(require("@splunk/themes"));
306
+ var defaultImport21 = __toESM(require("@splunk/themes"));
316
307
  __reExport(themes_exports, require("@splunk/themes"));
317
- var themes_default = "default" in defaultImport22 ? defaultImport22.default : defaultImport22;
308
+ var themes_default = "default" in defaultImport21 ? defaultImport21.default : defaultImport21;
318
309
 
319
310
  // esm-externals:@splunk/ui-utils/id
320
311
  var id_exports = {};
321
312
  __export(id_exports, {
322
313
  default: () => id_default
323
314
  });
324
- var defaultImport23 = __toESM(require("@splunk/ui-utils/id"));
315
+ var defaultImport22 = __toESM(require("@splunk/ui-utils/id"));
325
316
  __reExport(id_exports, require("@splunk/ui-utils/id"));
326
- var id_default = "default" in defaultImport23 ? defaultImport23.default : defaultImport23;
317
+ var id_default = "default" in defaultImport22 ? defaultImport22.default : defaultImport22;
327
318
 
328
319
  // src/Map/PureMap/Tooltip.tsx
329
320
  var StyledPopover = styled_components_default(Popover_default)`
@@ -439,27 +430,27 @@ var d3_scale_exports = {};
439
430
  __export(d3_scale_exports, {
440
431
  default: () => d3_scale_default
441
432
  });
442
- var defaultImport24 = __toESM(require("d3-scale"));
433
+ var defaultImport23 = __toESM(require("d3-scale"));
443
434
  __reExport(d3_scale_exports, require("d3-scale"));
444
- var d3_scale_default = "default" in defaultImport24 ? defaultImport24.default : defaultImport24;
435
+ var d3_scale_default = "default" in defaultImport23 ? defaultImport23.default : defaultImport23;
445
436
 
446
437
  // esm-externals:@splunk/visualization-color-palettes
447
438
  var visualization_color_palettes_exports = {};
448
439
  __export(visualization_color_palettes_exports, {
449
440
  default: () => visualization_color_palettes_default
450
441
  });
451
- var defaultImport25 = __toESM(require("@splunk/visualization-color-palettes"));
442
+ var defaultImport24 = __toESM(require("@splunk/visualization-color-palettes"));
452
443
  __reExport(visualization_color_palettes_exports, require("@splunk/visualization-color-palettes"));
453
- var visualization_color_palettes_default = "default" in defaultImport25 ? defaultImport25.default : defaultImport25;
444
+ var visualization_color_palettes_default = "default" in defaultImport24 ? defaultImport24.default : defaultImport24;
454
445
 
455
446
  // esm-externals:@splunk/visualization-encoding/utils/types
456
447
  var types_exports = {};
457
448
  __export(types_exports, {
458
449
  default: () => types_default
459
450
  });
460
- var defaultImport26 = __toESM(require("@splunk/visualization-encoding/utils/types"));
451
+ var defaultImport25 = __toESM(require("@splunk/visualization-encoding/utils/types"));
461
452
  __reExport(types_exports, require("@splunk/visualization-encoding/utils/types"));
462
- var types_default = "default" in defaultImport26 ? defaultImport26.default : defaultImport26;
453
+ var types_default = "default" in defaultImport25 ? defaultImport25.default : defaultImport25;
463
454
 
464
455
  // src/Map/PureMap/MapUtils.ts
465
456
  var MAX_LATITUDE = 90;
@@ -613,16 +604,16 @@ var getZoomLevelFromGeobin = (geobinStr) => {
613
604
  }
614
605
  const geobinPattern = /bin_id_zl_(\d{1,2})_y_/g;
615
606
  const match = geobinPattern.exec(geobinStr);
616
- return (_a = (match == null ? void 0 : match.length) && parseInt(match[1], 10)) != null ? _a : null;
607
+ return (_a = (match == null ? void 0 : match.length) && Number.parseInt(match[1], 10)) != null ? _a : null;
617
608
  };
618
609
  var getStaticColors = (colorCount, colorArray) => {
619
610
  if (colorCount < 0 || !colorCount) {
620
611
  return [DEFAULT_CLUSTER_COLOR];
621
612
  }
622
613
  if (!(colorArray == null ? void 0 : colorArray.length)) {
623
- return [...Array(colorCount).keys()].map((i) => DEFAULT_SERIES_COLORS[i]);
614
+ return [...new Array(colorCount).keys()].map((i) => DEFAULT_SERIES_COLORS[i]);
624
615
  }
625
- return [...Array(colorCount).keys()].map(
616
+ return [...new Array(colorCount).keys()].map(
626
617
  (i) => (0, colorUtils_exports.isColor)(colorArray[i % colorArray.length]) ? colorArray[i % colorArray.length] : DEFAULT_CLUSTER_COLOR
627
618
  );
628
619
  };
@@ -650,7 +641,7 @@ var sanitizeValues = (values) => {
650
641
  return 0;
651
642
  }
652
643
  if (!Array.isArray(values)) {
653
- return values > 0 ? values : 0;
644
+ return Math.max(values, 0);
654
645
  }
655
646
  return values.map((arr) => sanitizeValues(arr));
656
647
  };
@@ -698,8 +689,8 @@ var bakeBubbleData = (layer) => {
698
689
  let max = min;
699
690
  transposedSanitizedBubbleSize.forEach((row) => {
700
691
  const bubbleSize = (0, lodash_exports.sum)(row);
701
- max = bubbleSize > max ? bubbleSize : max;
702
- min = bubbleSize < min ? bubbleSize : min;
692
+ max = Math.max(bubbleSize, max);
693
+ min = Math.min(bubbleSize, min);
703
694
  });
704
695
  return {
705
696
  data,
@@ -1036,12 +1027,10 @@ var MarkerWrapper = (_a) => {
1036
1027
  }
1037
1028
  let rafId = null;
1038
1029
  const handleMapMove = () => {
1039
- if (rafId === null) {
1040
- rafId = requestAnimationFrame(() => {
1041
- forceUpdate();
1042
- rafId = null;
1043
- });
1044
- }
1030
+ rafId != null ? rafId : rafId = requestAnimationFrame(() => {
1031
+ forceUpdate();
1032
+ rafId = null;
1033
+ });
1045
1034
  };
1046
1035
  mapMoveHandlerRef.current = handleMapMove;
1047
1036
  map.current.on("move", handleMapMove);
@@ -1120,16 +1109,16 @@ var useRovingTabindex = (map) => {
1120
1109
  if (nextIndex !== void 0) {
1121
1110
  replacementIndex = nextIndex;
1122
1111
  } else if (indices.length > 0) {
1123
- replacementIndex = indices[indices.length - 1];
1112
+ replacementIndex = indices.at(-1);
1124
1113
  }
1125
- if (replacementIndex !== null) {
1114
+ if (replacementIndex === null) {
1115
+ focusedIndexRef.current = 0;
1116
+ } else {
1126
1117
  focusedIndexRef.current = replacementIndex;
1127
1118
  const replacementElement = elementRefsRef.current.get(replacementIndex);
1128
1119
  if (replacementElement) {
1129
1120
  replacementElement.setAttribute("tabindex", "0");
1130
1121
  }
1131
- } else {
1132
- focusedIndexRef.current = 0;
1133
1122
  }
1134
1123
  }
1135
1124
  }, []);
@@ -1476,7 +1465,7 @@ var Bubble = react_exports.memo(
1476
1465
  [handleMapClick]
1477
1466
  );
1478
1467
  const allZeros = originalValues.every((v) => v === 0);
1479
- const values = originalValues.map((v) => v > 0 ? v : 0);
1468
+ const values = originalValues.map((v) => Math.max(v, 0));
1480
1469
  if (allZeros || !originalValues.length) return null;
1481
1470
  return /* @__PURE__ */ react_exports.createElement(
1482
1471
  MarkerWrapper_default,
@@ -1598,7 +1587,7 @@ var BubbleLayer = (props) => {
1598
1587
  return /* @__PURE__ */ react_exports.createElement(
1599
1588
  Bubble,
1600
1589
  {
1601
- key: String(i),
1590
+ key: String(datum.idx),
1602
1591
  originalValues: datum.data.values,
1603
1592
  valueRange: dataRange,
1604
1593
  colors,
@@ -1682,6 +1671,20 @@ var PureMapContainer = styled_components_default.div.attrs({
1682
1671
  `;
1683
1672
  var PureMapContainer_default = PureMapContainer;
1684
1673
 
1674
+ // src/Map/PureMap/generated/maplibreWorkerBundle.txt
1675
+ var maplibreWorkerBundle_default = '\nif (typeof Object.hasOwn !== \'function\') {\n Object.hasOwn = function hasOwnPolyfill(obj, key) {\n return Object.prototype.hasOwnProperty.call(obj, key);\n };\n}\nif (typeof Array.prototype.at !== \'function\') {\n Array.prototype.at = function atPolyfill(index) {\n var len = this.length;\n var i = index >= 0 ? index : len + index;\n return i >= 0 && i < len ? this[i] : undefined;\n };\n}\n((_staticBlock,_staticBlock2,_staticBlock3)=>{var e1=Object.create,tp=Object.defineProperty,r1=Object.getOwnPropertyDescriptor,i1=Object.getOwnPropertyNames,n1=Object.getPrototypeOf,ep=Object.prototype.hasOwnProperty,ul=(t,e)=>()=>(e||(t((e={exports:{}}).exports,e),t=null),e.exports),a1=(t,e,r,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(var n=i1(e),a=0,s=n.length,o;a<s;a++)o=n[a],!ep.call(t,o)&&o!==r&&tp(t,o,{get:(l=>e[l]).bind(null,o),enumerable:!(i=r1(e,o))||i.enumerable});return t;},s1=(t,e,r)=>(r=t==null?{}:e1(n1(t)),a1(e||!t||!t.__esModule||!ep.call(t,"default")?tp(r,"default",{value:t,enumerable:!0}):r,t));function M(t,e){this.x=t,this.y=e;}M.prototype={clone(){return new M(this.x,this.y);},add(t){return this.clone()._add(t);},sub(t){return this.clone()._sub(t);},multByPoint(t){return this.clone()._multByPoint(t);},divByPoint(t){return this.clone()._divByPoint(t);},mult(t){return this.clone()._mult(t);},div(t){return this.clone()._div(t);},rotate(t){return this.clone()._rotate(t);},rotateAround(t,e){return this.clone()._rotateAround(t,e);},matMult(t){return this.clone()._matMult(t);},unit(){return this.clone()._unit();},perp(){return this.clone()._perp();},round(){return this.clone()._round();},mag(){return Math.sqrt(this.x*this.x+this.y*this.y);},equals(t){return this.x===t.x&&this.y===t.y;},dist(t){return Math.sqrt(this.distSqr(t));},distSqr(t){let e=t.x-this.x,r=t.y-this.y;return e*e+r*r;},angle(){return Math.atan2(this.y,this.x);},angleTo(t){return Math.atan2(this.y-t.y,this.x-t.x);},angleWith(t){return this.angleWithSep(t.x,t.y);},angleWithSep(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e);},_matMult(t){let e=t[0]*this.x+t[1]*this.y,r=t[2]*this.x+t[3]*this.y;return this.x=e,this.y=r,this;},_add(t){return this.x+=t.x,this.y+=t.y,this;},_sub(t){return this.x-=t.x,this.y-=t.y,this;},_mult(t){return this.x*=t,this.y*=t,this;},_div(t){return this.x/=t,this.y/=t,this;},_multByPoint(t){return this.x*=t.x,this.y*=t.y,this;},_divByPoint(t){return this.x/=t.x,this.y/=t.y,this;},_unit(){return this._div(this.mag()),this;},_perp(){let t=this.y;return this.y=this.x,this.x=-t,this;},_rotate(t){let e=Math.cos(t),r=Math.sin(t),i=e*this.x-r*this.y,n=r*this.x+e*this.y;return this.x=i,this.y=n,this;},_rotateAround(t,e){let r=Math.cos(t),i=Math.sin(t),n=e.x+r*(this.x-e.x)-i*(this.y-e.y),a=e.y+i*(this.x-e.x)+r*(this.y-e.y);return this.x=n,this.y=a,this;},_round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this;},constructor:M},M.convert=function(t){if(t instanceof M)return t;if(Array.isArray(t))return new M(+t[0],+t[1]);if(t.x!==void 0&&t.y!==void 0)return new M(+t.x,+t.y);throw Error("Expected [x, y] or {x, y} point format");};function o1(t,e,r,i){let n=3*t,a=3*(r-t)-n,s=1-n-a,o=3*e,l=3*(i-e)-o,u=1-o-l;return function(h,c=1e-6){if(h<=0)return 0;if(h>=1)return 1;let p=h;for(let y=0;y<8;y++){let m=((s*p+a)*p+n)*p-h;if(Math.abs(m)<c)return((u*p+l)*p+o)*p;let g=(3*s*p+2*a)*p+n;if(Math.abs(g)<1e-6)break;p-=m/g;}let f=0,d=1;p=h;for(let y=0;y<20;y++){let m=((s*p+a)*p+n)*p;if(Math.abs(m-h)<c)break;h>m?f=p:d=p,p=(f+d)*.5;}return((u*p+l)*p+o)*p;};}var eh;function l1(){return eh??=typeof OffscreenCanvas<"u"&&!!new OffscreenCanvas(1,1).getContext("2d")&&typeof createImageBitmap=="function",eh;}var Ln;function u1(){if(Ln==null&&(Ln=!1,l1())){let t=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(t){for(let r=0;r<25;r++){let i=r*4;t.fillStyle=`rgb(${i},${i+1},${i+2})`,t.fillRect(r%5,Math.floor(r/5),1,1);}let e=t.getImageData(0,0,5,5).data;for(let r=0;r<100;r++)if(r%4!=3&&e[r]!==r){Ln=!0;break;}}}return Ln||!1;}var ue=typeof Float32Array<"u"?Float32Array:Array;Math.PI/180,180/Math.PI;function h1(){var t=new ue(9);return ue!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t;}function rp(){var t=new ue(3);return ue!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t;}function c1(t){var e=t[0],r=t[1],i=t[2];return Math.sqrt(e*e+r*r+i*i);}function rh(t,e,r){var i=new ue(3);return i[0]=t,i[1]=e,i[2]=r,i;}function p1(t,e){var r=e[0],i=e[1],n=e[2],a=r*r+i*i+n*n;return a>0&&(a=1/Math.sqrt(a)),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t;}function f1(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2];}function ws(t,e,r){var i=e[0],n=e[1],a=e[2],s=r[0],o=r[1],l=r[2];return t[0]=n*l-a*o,t[1]=a*s-i*l,t[2]=i*o-n*s,t;}var d1=c1;(function(){var t=rp();return function(e,r,i,n,a,s){var o,l;for(r||=3,i||=0,l=n?Math.min(n*r+i,e.length):e.length,o=i;o<l;o+=r)t[0]=e[o],t[1]=e[o+1],t[2]=e[o+2],a(t,t,s),e[o]=t[0],e[o+1]=t[1],e[o+2]=t[2];return e;};})();function y1(){var t=new ue(4);return ue!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0),t;}function m1(t,e){var r=e[0],i=e[1],n=e[2],a=e[3],s=r*r+i*i+n*n+a*a;return s>0&&(s=1/Math.sqrt(s)),t[0]=r*s,t[1]=i*s,t[2]=n*s,t[3]=a*s,t;}function g1(t,e,r){var i=e[0],n=e[1],a=e[2],s=e[3];return t[0]=r[0]*i+r[4]*n+r[8]*a+r[12]*s,t[1]=r[1]*i+r[5]*n+r[9]*a+r[13]*s,t[2]=r[2]*i+r[6]*n+r[10]*a+r[14]*s,t[3]=r[3]*i+r[7]*n+r[11]*a+r[15]*s,t;}(function(){var t=y1();return function(e,r,i,n,a,s){var o,l;for(r||=4,i||=0,l=n?Math.min(n*r+i,e.length):e.length,o=i;o<l;o+=r)t[0]=e[o],t[1]=e[o+1],t[2]=e[o+2],t[3]=e[o+3],a(t,t,s),e[o]=t[0],e[o+1]=t[1],e[o+2]=t[2],e[o+3]=t[3];return e;};})();function ih(){var t=new ue(4);return ue!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t;}function x1(t,e,r){r*=.5;var i=Math.sin(r);return t[0]=i*e[0],t[1]=i*e[1],t[2]=i*e[2],t[3]=Math.cos(r),t;}function Ds(t,e,r,i){var n=e[0],a=e[1],s=e[2],o=e[3],l=r[0],u=r[1],h=r[2],c=r[3],p,f=n*l+a*u+s*h+o*c,d,y,m;return f<0&&(f=-f,l=-l,u=-u,h=-h,c=-c),1-f>1e-6?(p=Math.acos(f),d=Math.sin(p),y=Math.sin((1-i)*p)/d,m=Math.sin(i*p)/d):(y=1-i,m=i),t[0]=y*n+m*l,t[1]=y*a+m*u,t[2]=y*s+m*h,t[3]=y*o+m*c,t;}function v1(t,e){var r=e[0]+e[4]+e[8],i;if(r>0)i=Math.sqrt(r+1),t[3]=.5*i,i=.5/i,t[0]=(e[5]-e[7])*i,t[1]=(e[6]-e[2])*i,t[2]=(e[1]-e[3])*i;else{var n=0;e[4]>e[0]&&(n=1),e[8]>e[n*3+n]&&(n=2);var a=(n+1)%3,s=(n+2)%3;i=Math.sqrt(e[n*3+n]-e[a*3+a]-e[s*3+s]+1),t[n]=.5*i,i=.5/i,t[3]=(e[a*3+s]-e[s*3+a])*i,t[a]=(e[a*3+n]+e[n*3+a])*i,t[s]=(e[s*3+n]+e[n*3+s])*i;}return t;}var nh=m1;(function(){var t=rp(),e=rh(1,0,0),r=rh(0,1,0);return function(i,n,a){var s=f1(n,a);return s<-.999999?(ws(t,e,n),d1(t)<1e-6&&ws(t,r,n),p1(t,t),x1(i,t,Math.PI),i):s>.999999?(i[0]=0,i[1]=0,i[2]=0,i[3]=1,i):(ws(t,n,a),i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=1+s,nh(i,i));};})(),function(){var t=ih(),e=ih();return function(r,i,n,a,s,o){return Ds(t,i,s,o),Ds(e,n,a,o),Ds(r,t,e,2*o*(1-o)),r;};}(),function(){var t=h1();return function(e,r,i,n){return t[0]=i[0],t[3]=i[1],t[6]=i[2],t[1]=n[0],t[4]=n[1],t[7]=n[2],t[2]=-r[0],t[5]=-r[1],t[8]=-r[2],nh(e,v1(e,t));};}();function b1(){var t=new ue(2);return ue!=Float32Array&&(t[0]=0,t[1]=0),t;}(function(){var t=b1();return function(e,r,i,n,a,s){var o,l;for(r||=2,i||=0,l=n?Math.min(n*r+i,e.length):e.length,o=i;o<l;o+=r)t[0]=e[o],t[1]=e[o+1],a(t,t,s),e[o]=t[0],e[o+1]=t[1];return e;};})();var mt=8192;var ip="__$json__:";function Xi(t){return t instanceof Error?t:Error(typeof t=="string"?t:String(t));}function w1(t){if(t<=0)return 0;if(t>=1)return 1;let e=t*t,r=e*t;return 4*(t<.5?r:3*(t-e)+r-.75);}function D1(t,e,r,i){return o1(t,e,r,i);}var h5=D1(.25,.1,.25,1);function Yi(t,e,r){return Math.min(r,Math.max(e,t));}function _1(t,e,r){let i=r-e,n=((t-e)%i+i)%i+e;return n===e?r:n;}function Ut(t,...e){for(let r of e)for(let i in r)t[i]=r[i];return t;}function A1(t){return Math.log(t)/Math.LN2%1==0;}function _a(t,e,r){let i={};for(let n in t)i[n]=e.call(r||this,t[n],n,t);return i;}function S1(t,e,r){let i={};for(let n in t)e.call(r||this,t[n],n,t)&&(i[n]=t[n]);return i;}function Xs(t,e){if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;for(let r=0;r<t.length;r++)if(!Xs(t[r],e[r]))return!1;return!0;}if(typeof t=="object"&&t&&e!==null){if(typeof e!="object"||Object.keys(t).length!==Object.keys(e).length)return!1;for(let r in t)if(!Xs(t[r],e[r]))return!1;return!0;}return t===e;}function Xe(t){return Array.isArray(t)?t.map(Xe):typeof t=="object"&&t?_a(t,Xe):t;}var ah={};function Mt(t){ah[t]||(typeof console<"u"&&console.warn(t),ah[t]=!0);}function Ye(t,e,r){return(r.y-t.y)*(e.x-t.x)>(e.y-t.y)*(r.x-t.x);}function cr(t){return typeof WorkerGlobalScope<"u"&&t!==void 0&&t instanceof WorkerGlobalScope;}function Aa(t){return typeof ImageBitmap<"u"&&t instanceof ImageBitmap;}function E1(t,e,r,i,n){let a=Math.max(-e,0)*4,s=(Math.max(0,r)-r)*i*4+a,o=i*4,l=Math.max(0,e),u=Math.max(0,r),h=Math.min(t.width,e+i),c=Math.min(t.height,r+n);return{rect:{x:l,y:u,width:h-l,height:c-u},layout:[{offset:s,stride:o}]};}async function F1(t,e,r,i,n){if(typeof VideoFrame>"u")throw Error("VideoFrame not supported");let a=new VideoFrame(t,{timestamp:0});try{let s=a?.format;if(!s||!(s.startsWith("BGR")||s.startsWith("RGB")))throw Error(`Unrecognized format ${s}`);let o=s.startsWith("BGR"),l=new Uint8ClampedArray(i*n*4);if(await a.copyTo(l,E1(t,e,r,i,n)),o)for(let u=0;u<l.length;u+=4){let h=l[u];l[u]=l[u+2],l[u+2]=h;}return l;}finally{a.close();}}var wi,Di;function T1(t,e,r,i,n){let a=t.width,s=t.height;(!wi||!Di)&&(wi=new OffscreenCanvas(a,s),Di=wi.getContext("2d",{willReadFrequently:!0})),wi.width=a,wi.height=s,Di.drawImage(t,0,0,a,s);let o=Di.getImageData(e,r,i,n);return Di.clearRect(0,0,a,s),o.data;}async function np(t,e,r,i,n){if(u1())try{return await F1(t,e,r,i,n);}catch{}return T1(t,e,r,i,n);}function sh(t,e,r,i){return t.addEventListener(e,r,i),{unsubscribe:()=>{t.removeEventListener(e,r,i);}};}function oh(t){return t*Math.PI/180;}var lh="AbortError",hl=class extends Error{constructor(t=lh){super(t instanceof Error?t.message:t),this.name=lh,t instanceof Error&&t.stack&&(this.stack=t.stack);}};function cl(t){return t instanceof Error&&t.name==="AbortError";}function k1(t){if(t.aborted)throw new hl(t.reason);}var pl={MAX_PARALLEL_IMAGE_REQUESTS:16,MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:8,MAX_TILE_CACHE_ZOOM_LEVELS:5,REGISTERED_PROTOCOLS:{},WORKER_URL:""};function I1(t){return pl.REGISTERED_PROTOCOLS[t.substring(0,t.indexOf("://"))];}function ap(t,e){pl.REGISTERED_PROTOCOLS[t]=e;}function sp(t){delete pl.REGISTERED_PROTOCOLS[t];}var uh="global-dispatcher",la=class extends Error{constructor(t,e,r,i){super(`AJAXError: ${e} (${t}): ${r}`),this.status=t,this.statusText=e,this.url=r,this.body=i;}};function op(){if(cr(self))return self.worker?.referrer;if(window.location.protocol==="blob:")try{return window.parent.location.href;}catch{}return window.location.href;}var C1=t=>t.startsWith("file:")||op()?.startsWith("file:")&&!/^\\w+:/.test(t);async function M1(t,e){let r=new Request(t.url,{method:t.method||"GET",body:t.body,credentials:t.credentials,headers:t.headers,cache:t.cache,referrer:op(),referrerPolicy:t.referrerPolicy,signal:e.signal});t.type==="json"&&!r.headers.has("Accept")&&r.headers.set("Accept","application/json");let i;try{i=await fetch(r);}catch(s){throw cl(s)?s:new la(0,Xi(s).message,t.url,new Blob());}if(!i.ok){let s=await i.blob();throw new la(i.status,i.statusText,t.url,s);}let n;n=t.type==="arrayBuffer"||t.type==="image"?i.arrayBuffer():t.type==="json"?i.json():i.text();let a=await n;return k1(e.signal),{data:a,cacheControl:i.headers.get("Cache-Control"),expires:i.headers.get("Expires"),etag:i.headers.get("ETag")};}function B1(t,e){return new Promise((r,i)=>{let n=new XMLHttpRequest();n.open(t.method||"GET",t.url,!0),(t.type==="arrayBuffer"||t.type==="image")&&(n.responseType="arraybuffer");for(let a in t.headers)n.setRequestHeader(a,t.headers[a]);t.type==="json"&&(n.responseType="text",t.headers?.Accept||n.setRequestHeader("Accept","application/json")),n.withCredentials=t.credentials==="include",n.onerror=()=>{i(Error(n.statusText));},n.onload=()=>{if(!e.signal.aborted)if((n.status>=200&&n.status<300||n.status===0)&&n.response!==null){let a=n.response;if(t.type==="json")try{a=JSON.parse(n.response);}catch(s){i(s);return;}r({data:a,cacheControl:n.getResponseHeader("Cache-Control"),expires:n.getResponseHeader("Expires"),etag:n.getResponseHeader("ETag")});}else{let a=new Blob([n.response],{type:n.getResponseHeader("Content-Type")});i(new la(n.status,n.statusText,t.url,a));}},e.signal.addEventListener("abort",()=>{n.abort(),i(new hl(e.signal.reason));}),n.send(t.body);});}var Sa=async function(t,e){if(t.url.includes("://")&&!/^https?:|^file:/.test(t.url)){let r=I1(t.url);if(r){let i=await r(t,e);return!i.data&&t.type==="arrayBuffer"?Ut(i,{data:new ArrayBuffer(0)}):i;}if(cr(self)&&self.worker?.actor)return self.worker.actor.sendAsync({type:"GR",data:t,targetMapId:uh},e);}if(!C1(t.url)){if(fetch&&Request&&AbortController&&Object.hasOwn(Request.prototype,"signal"))return M1(t,e);if(cr(self)&&self.worker?.actor)return self.worker.actor.sendAsync({type:"GR",data:t,mustQueue:!0,targetMapId:uh},e);}return B1(t,e);},lp=(t,e)=>Sa(Ut(t,{type:"json"}),e),up=(t,e)=>Sa(Ut(t,{type:"arrayBuffer"}),e);function hh(t,e,r){r[t]?.includes(e)||(r[t]||=[],r[t].push(e));}function _s(t,e,r){if(r?.[t]){let i=r[t].indexOf(e);i!==-1&&r[t].splice(i,1);}}var hp=class{constructor(t,e={}){Ut(this,e),this.type=t;}},ua=class extends hp{constructor(t,e={}){super("error",Ut({error:t},e));}},P1=class{on(t,e){return this._listeners||={},hh(t,e,this._listeners),{unsubscribe:()=>{this.off(t,e);}};}off(t,e){return _s(t,e,this._listeners),_s(t,e,this._oneTimeListeners),this;}once(t,e){return e?(this._oneTimeListeners||={},hh(t,e,this._oneTimeListeners),this):new Promise(r=>this.once(t,r));}fire(t,e){let r=typeof t=="string"?new hp(t,e||{}):t,i=r.type;if(this.listens(i)){r.target=this;let n=this._listeners?.[i]?.slice()??[];for(let o of n)o.call(this,r);let a=this._oneTimeListeners?.[i]?.slice()??[];for(let o of a)_s(i,o,this._oneTimeListeners),o.call(this,r);let s=this._eventedParent;s&&(Ut(r,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),s.fire(r));}else r instanceof ua&&console.error(r.error);return this;}listens(t){return!!(this._listeners?.[t]?.length||this._oneTimeListeners?.[t]?.length||this._eventedParent?.listens(t));}setEventedParent(t,e){return this._eventedParent=t,this._eventedParentData=e,this;}},cp={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number",length:2},centerAltitude:{type:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},roll:{type:"number",default:0,units:"degrees"},state:{type:"state",default:{}},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},"font-faces":{type:"fontFaces"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},encoding:{type:"enum",values:{mvt:{},mlt:{}},default:"mvt"},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"filter"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},"color-relief":{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_color-relief","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible",expression:{interpolated:!1,parameters:["global-state"]},"property-type":"data-constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible",expression:{interpolated:!1,parameters:["global-state"]},"property-type":"data-constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible",expression:{interpolated:!1,parameters:["global-state"]},"property-type":"data-constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible",expression:{interpolated:!1,parameters:["global-state"]},"property-type":"data-constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible",expression:{interpolated:!1,parameters:["global-state"]},"property-type":"data-constant"},"fill-extrusion-rounded-corner-distance":{type:"number",default:0,minimum:0,units:"meters","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible",expression:{interpolated:!1,parameters:["global-state"]},"property-type":"data-constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-height-offset":{type:"number",default:0,units:"meters",requires:[{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-height-anchor":{type:"enum",values:{ground:{},absolute:{}},default:"ground",requires:["symbol-height-offset"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible",expression:{interpolated:!1,parameters:["global-state"]},"property-type":"data-constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible",expression:{interpolated:!1,parameters:["global-state"]},"property-type":"data-constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible",expression:{interpolated:!1,parameters:["global-state"]},"property-type":"data-constant"}},"layout_color-relief":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible",expression:{interpolated:!1,parameters:["global-state"]},"property-type":"data-constant"}},filter:{type:"boolean",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"expression_name",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"projectionDefinition",default:"mercator","property-type":"data-constant",transition:!1,expression:{interpolated:!0,parameters:["zoom"]}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_color-relief","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-layer-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","global-state"]},"property-type":"data-constant"},"fill-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-layer-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","global-state"]},"property-type":"data-constant"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},resampling:{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"numberArray",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-altitude":{type:"numberArray",default:45,minimum:0,maximum:90,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"colorArray",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"colorArray",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-method":{type:"enum",values:{standard:{},basic:{},combined:{},igor:{},multidirectional:{}},default:"standard",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},resampling:{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},"paint_color-relief":{"color-relief-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"color-relief-color":{type:"color",transition:!1,expression:{interpolated:!0,parameters:["elevation"]},"property-type":"color-ramp"},resampling:{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}},interpolation:{type:"array",value:"interpolation_name",minimum:1},interpolation_name:{type:"enum",values:{linear:{syntax:{overloads:[{parameters:[],"output-type":"interpolation"}],parameters:[]}},exponential:{syntax:{overloads:[{parameters:["base"],"output-type":"interpolation"}],parameters:[{name:"base",type:"number literal"}]}},"cubic-bezier":{syntax:{overloads:[{parameters:["x1","y1","x2","y2"],"output-type":"interpolation"}],parameters:[{name:"x1",type:"number literal"},{name:"y1",type:"number literal"},{name:"x2",type:"number literal"},{name:"y2",type:"number literal"}]}}}}},D=cp,pp=["type","source","source-layer","minzoom","maxzoom","filter","layout"],T=class{constructor(t,e,r,i,n="error"){this.message=(t?`${t}: `:"")+r,i&&(this.identifier=i),this.severity=n,e!=null&&e.__line__&&(this.line=e.__line__);}},un={kind:"null"},k={kind:"number"},X={kind:"string"},Q={kind:"boolean"},le={kind:"color"},Ea={kind:"projectionDefinition"},ur={kind:"object"},W={kind:"value"},z1={kind:"error"},Fa={kind:"collator"},hn={kind:"formatted"},Ta={kind:"padding"},Wi={kind:"colorArray"},ka={kind:"numberArray"},cn={kind:"resolvedImage"},Ia={kind:"variableAnchorOffsetCollection"};function $t(t,e){return{kind:"array",itemType:t,N:e};}function yt(t){if(t.kind==="array"){let e=yt(t.itemType);return typeof t.N=="number"?`array<${e}, ${t.N}>`:t.itemType.kind==="value"?"array":`array<${e}>`;}return t.kind;}var L1=[un,k,X,Q,le,Ea,hn,ur,$t(W),Ta,ka,Wi,cn,Ia];function Zi(t,e){if(e.kind==="error")return null;if(t.kind==="array"){if(e.kind==="array"&&(e.N===0&&e.itemType.kind==="value"||!Zi(t.itemType,e.itemType))&&(typeof t.N!="number"||t.N===e.N))return null;}else{if(t.kind===e.kind)return null;if(t.kind==="value"){for(let r of L1)if(!Zi(r,e))return null;}}return`Expected ${yt(t)} but found ${yt(e)} instead.`;}function fl(t,e){return e.some(r=>r.kind===t.kind);}function hr(t,e){return e.some(r=>r==="null"?t===null:r==="array"?Array.isArray(t):r==="object"?t&&!Array.isArray(t)&&typeof t=="object":r===typeof t);}function Ne(t,e){return t.kind==="array"&&e.kind==="array"?t.itemType.kind===e.itemType.kind&&typeof t.N=="number":t.kind===e.kind;}var fp=.96422,dp=.82521,yp=4/29,Ys=6/29,mp=3*Ys*Ys,V1=Math.PI/180,O1=180/Math.PI;function gp(t){return t%=360,t<0&&(t+=360),t;}function xp([t,e,r,i]){t=As(t),e=As(e),r=As(r);let n,a,s=Ss((.2225045*t+.7168786*e+.0606169*r)/1);t===e&&e===r?n=a=s:(n=Ss((.4360747*t+.3850649*e+.1430804*r)/fp),a=Ss((.0139322*t+.0971045*e+.7141733*r)/dp));let o=116*s-16;return[o<0?0:o,500*(n-s),200*(s-a),i];}function As(t){return t<=.04045?t/12.92:((t+.055)/1.055)**2.4;}function Ss(t){return t>.008856451679035631?t**(1/3):t/mp+yp;}function vp([t,e,r,i]){let n=(t+16)/116,a=isNaN(e)?n:n+e/500,s=isNaN(r)?n:n-r/200;return n=1*Fs(n),a=fp*Fs(a),s=dp*Fs(s),[Es(3.1338561*a-1.6168667*n-.4906146*s),Es(-.9787684*a+1.9161415*n+.033454*s),Es(.0719453*a-.2289914*n+1.4052427*s),i];}function Es(t){return t=t<=.00304?12.92*t:1.055*t**(1/2.4)-.055,t<0?0:t>1?1:t;}function Fs(t){return t>Ys?t*t*t:mp*(t-yp);}function R1(t){let[e,r,i,n]=xp(t),a=Math.sqrt(r*r+i*i);return[Math.round(a*1e4)?gp(Math.atan2(i,r)*O1):NaN,a,e,n];}function $1([t,e,r,i]){return t=isNaN(t)?0:t*V1,vp([r,Math.cos(t)*e,Math.sin(t)*e,i]);}function N1([t,e,r,i]){t=gp(t),e/=100,r/=100;function n(a){let s=(a+t/30)%12,o=e*Math.min(r,1-r);return r-o*Math.max(-1,Math.min(s-3,9-s,1));}return[n(0),n(8),n(4),i];}var U1=Object.hasOwn||function(t,e){return Object.prototype.hasOwnProperty.call(t,e);};function Ri(t,e){return U1(t,e)?t[e]:void 0;}function q1(t){if(t=t.toLowerCase().trim(),t==="transparent")return[0,0,0,0];let e=Ri(j1,t);if(e){let[i,n,a]=e;return[i/255,n/255,a/255,1];}if(t.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(t)){let i=t.length<6?1:2,n=1;return[Vn(t.slice(n,n+=i)),Vn(t.slice(n,n+=i)),Vn(t.slice(n,n+=i)),Vn(t.slice(n,n+i)||"ff")];}if(t.startsWith("rgb")){let i=t.match(/^rgba?\\(\\s*([\\de.+-]+)(%)?(?:\\s+|\\s*(,)\\s*)([\\de.+-]+)(%)?(?:\\s+|\\s*(,)\\s*)([\\de.+-]+)(%)?(?:\\s*([,\\/])\\s*([\\de.+-]+)(%)?)?\\s*\\)$/);if(i){let[n,a,s,o,l,u,h,c,p,f,d,y]=i,m=[o||" ",h||" ",f].join("");if(m===" "||m===" /"||m===",,"||m===",,,"){let g=[s,u,p].join(""),x=g==="%%%"?100:g===""?255:0;if(x){let b=[zr(+a/x,0,1),zr(+l/x,0,1),zr(+c/x,0,1),d?ch(+d,y):1];if(ph(b))return b;}}return;}}let r=t.match(/^hsla?\\(\\s*([\\de.+-]+)(?:deg)?(?:\\s+|\\s*(,)\\s*)([\\de.+-]+)%(?:\\s+|\\s*(,)\\s*)([\\de.+-]+)%(?:\\s*([,\\/])\\s*([\\de.+-]+)(%)?)?\\s*\\)$/);if(r){let[i,n,a,s,o,l,u,h,c]=r,p=[a||" ",o||" ",u].join("");if(p===" "||p===" /"||p===",,"||p===",,,"){let f=[+n,zr(+s,0,100),zr(+l,0,100),h?ch(+h,c):1];if(ph(f))return N1(f);}}}function Vn(t){return parseInt(t.padEnd(2,t),16)/255;}function ch(t,e){return zr(e?t/100:t,0,1);}function zr(t,e,r){return Math.min(Math.max(e,t),r);}function ph(t){return!t.some(Number.isNaN);}var j1={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};function We(t,e,r){return t+r*(e-t);}function Hr(t,e,r){return t.map((i,n)=>We(i,e[n],r));}function G1(t){return t==="rgb"||t==="hcl"||t==="lab";}var gt=(class me{constructor(e,r,i,n=1,a=!0){this.r=e,this.g=r,this.b=i,this.a=n,a||(this.r*=n,this.g*=n,this.b*=n,n||this.overwriteGetter("rgb",[e,r,i,n]));}static parse(e){if(e instanceof me)return e;if(typeof e!="string")return;let r=q1(e);if(r)return new me(...r,!1);}get rgb(){let{r:e,g:r,b:i,a:n}=this,a=n||1/0;return this.overwriteGetter("rgb",[e/a,r/a,i/a,n]);}get hcl(){return this.overwriteGetter("hcl",R1(this.rgb));}get lab(){return this.overwriteGetter("lab",xp(this.rgb));}overwriteGetter(e,r){return Object.defineProperty(this,e,{value:r}),r;}toString(){let[e,r,i,n]=this.rgb;return`rgba(${[e,r,i].map(a=>Math.round(a*255)).join(",")},${n})`;}static interpolate(e,r,i,n="rgb"){switch(n){case"rgb":{let[a,s,o,l]=Hr(e.rgb,r.rgb,i);return new me(a,s,o,l,!1);}case"hcl":{let[a,s,o,l]=e.hcl,[u,h,c,p]=r.hcl,f,d;if(!isNaN(a)&&!isNaN(u)){let b=u-a;u>a&&b>180?b-=360:u<a&&a-u>180&&(b+=360),f=a+i*b;}else isNaN(a)?isNaN(u)?f=NaN:(f=u,(o===1||o===0)&&(d=h)):(f=a,(c===1||c===0)&&(d=s));let[y,m,g,x]=$1([f,d??We(s,h,i),We(o,c,i),We(l,p,i)]);return new me(y,m,g,x,!1);}case"lab":{let[a,s,o,l]=vp(Hr(e.lab,r.lab,i));return new me(a,s,o,l,!1);}}}static#_=_staticBlock=()=>(this.black=new me(0,0,0,1),this.white=new me(1,1,1,1),this.transparent=new me(0,0,0,0),this.red=new me(1,0,0,1),this);},_staticBlock()),X1=["bottom","center","top"],Ws=class{constructor(t,e,r,i,n,a){this.text=t,this.image=e,this.scale=r,this.fontStack=i,this.textColor=n,this.verticalAlign=a;}},Me=class ta{constructor(e){this.sections=e;}static fromString(e){return new ta([new Ws(e,null,null,null,null,null)]);}isEmpty(){return this.sections.length===0||!this.sections.some(e=>e.text.length!==0||e.image&&e.image.name.length!==0);}static factory(e){return e instanceof ta?e:ta.fromString(e);}toString(){return this.sections.length===0?"":this.sections.map(e=>e.text).join("");}},De=class Ci{constructor(e){this.values=e.slice();}static parse(e){if(e instanceof Ci)return e;if(typeof e=="number")return new Ci([e,e,e,e]);if(Array.isArray(e)&&!(e.length<1||e.length>4)){for(let r of e)if(typeof r!="number")return;switch(e.length){case 1:e=[e[0],e[0],e[0],e[0]];break;case 2:e=[e[0],e[1],e[0],e[1]];break;case 3:e=[e[0],e[1],e[2],e[1]];}return new Ci(e);}}toString(){return JSON.stringify(this.values);}static interpolate(e,r,i){return new Ci(Hr(e.values,r.values,i));}},_e=class Mi{constructor(e){this.values=e.slice();}static parse(e){if(e instanceof Mi)return e;if(typeof e=="number")return new Mi([e]);if(Array.isArray(e)){for(let r of e)if(typeof r!="number")return;return new Mi(e);}}toString(){return JSON.stringify(this.values);}static interpolate(e,r,i){return new Mi(Hr(e.values,r.values,i));}},ne=class Bi{constructor(e){this.values=e.slice();}static parse(e){if(e instanceof Bi)return e;if(typeof e=="string"){let i=gt.parse(e);return i?new Bi([i]):void 0;}if(!Array.isArray(e))return;let r=[];for(let i of e){if(typeof i!="string")return;let n=gt.parse(i);if(!n)return;r.push(n);}return new Bi(r);}toString(){return JSON.stringify(this.values);}static interpolate(e,r,i,n="rgb"){let a=[];if(e.values.length!=r.values.length)throw Error(`colorArray: Arrays have mismatched length (${e.values.length} vs. ${r.values.length}), cannot interpolate.`);for(let s=0;s<e.values.length;s++)a.push(gt.interpolate(e.values[s],r.values[s],i,n));return new Bi(a);}},ct=class extends Error{constructor(t,e){super(t),this.name="RuntimeError",this.path=e;}toJSON(){return this.message;}},Y1=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]),be=class ea{constructor(e){this.values=e.slice();}static parse(e){if(e instanceof ea)return e;if(!(!Array.isArray(e)||e.length<1||e.length%2!=0)){for(let r=0;r<e.length;r+=2){let i=e[r],n=e[r+1];if(typeof i!="string"||!Y1.has(i)||!Array.isArray(n)||n.length!==2||typeof n[0]!="number"||typeof n[1]!="number")return;}return new ea(e);}}toString(){return JSON.stringify(this.values);}static interpolate(e,r,i,n){let a=e.values,s=r.values;if(a.length!==s.length)throw new ct(`Cannot interpolate values of different length. from: ${e.toString()}, to: ${r.toString()}`,n);let o=[];for(let l=0;l<a.length;l+=2){if(a[l]!==s[l])throw new ct(`Cannot interpolate values containing mismatched anchors. from[${l}]: ${a[l]}, to[${l}]: ${s[l]}`,n);o.push(a[l]);let[u,h]=a[l+1],[c,p]=s[l+1];o.push([We(u,c,i),We(h,p,i)]);}return new ea(o);}},we=class bp{constructor(e){this.name=e.name,this.available=e.available;}toString(){return this.name;}static fromString(e){return e?new bp({name:e,available:!1}):null;}},gr=class Lr{constructor(e,r,i){this.from=e,this.to=r,this.transition=i;}toString(){return this.from===this.to&&this.transition===1?this.from:JSON.stringify([this.from,this.to,this.transition]);}static interpolate(e,r,i){return new Lr(e,r,i);}static parse(e){if(e instanceof Lr)return e;if(Array.isArray(e)&&e.length===3&&typeof e[0]=="string"&&typeof e[1]=="string"&&typeof e[2]=="number")return new Lr(e[0],e[1],e[2]);if(typeof e=="object"&&typeof e.from=="string"&&typeof e.to=="string"&&typeof e.transition=="number")return new Lr(e.from,e.to,e.transition);if(typeof e=="string")return new Lr(e,e,1);}},dl=class{constructor(t,e,r){this.sensitivity=t?e?"variant":"case":e?"accent":"base",this.locale=r,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"});}compare(t,e){return this.collator.compare(t,e);}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale;}};function wp(t,e,r,i){return typeof t=="number"&&t>=0&&t<=255&&typeof e=="number"&&e>=0&&e<=255&&typeof r=="number"&&r>=0&&r<=255?i===void 0||typeof i=="number"&&i>=0&&i<=1?null:`Invalid rgba value [${[t,e,r,i].join(", ")}]: \'a\' must be between 0 and 1.`:`Invalid rgba value [${(typeof i=="number"?[t,e,r,i]:[t,e,r]).join(", ")}]: \'r\', \'g\', and \'b\' must be between 0 and 255.`;}function Kr(t){if(t===null||typeof t=="string"||typeof t=="boolean"||typeof t=="number"||t instanceof gr||t instanceof gt||t instanceof dl||t instanceof Me||t instanceof De||t instanceof _e||t instanceof ne||t instanceof be||t instanceof we)return!0;if(Array.isArray(t)){for(let e of t)if(!Kr(e))return!1;return!0;}if(typeof t=="object"){for(let e in t)if(!Kr(t[e]))return!1;return!0;}return!1;}function _t(t){if(t===null)return un;if(typeof t=="string")return X;if(typeof t=="boolean")return Q;if(typeof t=="number")return k;if(t instanceof gt)return le;if(t instanceof gr)return Ea;if(t instanceof dl)return Fa;if(t instanceof Me)return hn;if(t instanceof De)return Ta;if(t instanceof _e)return ka;if(t instanceof ne)return Wi;if(t instanceof be)return Ia;if(t instanceof we)return cn;if(Array.isArray(t)){let e=t.length,r;for(let i of t){let n=_t(i);if(!r)r=n;else{if(r===n)continue;r=W;break;}}return $t(r||W,e);}return ur;}function $i(t){let e=typeof t;return t===null?"":e==="string"||e==="number"||e==="boolean"?String(t):t instanceof gt||t instanceof gr||t instanceof Me||t instanceof De||t instanceof _e||t instanceof ne||t instanceof be||t instanceof we?t.toString():JSON.stringify(t);}var Jr=class Dp{constructor(e,r){this.type=e,this.value=r;}static parse(e,r){if(e.length!==2)return r.error(`\'literal\' expression requires exactly one argument, but found ${e.length-1} instead.`);if(!Kr(e[1]))return r.error(`invalid value of type "${typeof e[1]}"`);let i=e[1],n=_t(i),a=r.expectedType;return n.kind==="array"&&n.N===0&&a&&a.kind==="array"&&(typeof a.N!="number"||a.N===0)&&(n=a),new Dp(n,i);}evaluate(){return this.value;}eachChild(){}outputDefined(){return!0;}},W1=["Unknown","Point","LineString","Polygon"],_p=class{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache=new Map(),this.availableImages=null,this.canonical=null;}id(){return this.feature&&"id"in this.feature?this.feature.id:null;}geometryType(){return this.feature?typeof this.feature.type=="number"?W1[this.feature.type]:this.feature.type:null;}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null;}canonicalID(){return this.canonical;}properties(){return this.feature&&this.feature.properties||{};}parseColor(t){let e=this._parseColorCache.get(t);return e||(e=gt.parse(t),this._parseColorCache.set(t,e)),e;}};function Ca(t,e,r){let i=t.length-1,n=0,a=i,s=0,o,l;for(;n<=a;)if(s=Math.floor((n+a)/2),o=t[s],l=t[s+1],o<=e){if(s===i||e<l)return s;n=s+1;}else if(o>e)a=s-1;else throw new ct("Input is not a number.",r);return 0;}var yl=class Ap{constructor(e,r,i,n){this.type=e,this.input=r,this.key=n,this.labels=[],this.outputs=[];for(let[a,s]of i)this.labels.push(a),this.outputs.push(s);}static parse(e,r){if(e.length-1<4)return r.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!=0)return r.error("Expected an even number of arguments.");let i=r.parse(e[1],1,k);if(!i)return null;let n=[],a=null;r.expectedType&&r.expectedType.kind!=="value"&&(a=r.expectedType);for(let s=1;s<e.length;s+=2){let o=s===1?-1/0:e[s],l=e[s+1],u=s,h=s+1;if(typeof o!="number")return r.error(\'Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.\',u);if(n.length&&n[n.length-1][0]>=o)return r.error(\'Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.\',u);let c=r.parse(l,h,a);if(!c)return null;a||=c.type,n.push([o,c]);}return new Ap(a,i,n,r.key);}evaluate(e){let r=this.labels,i=this.outputs;if(r.length===1)return i[0].evaluate(e);let n=this.input.evaluate(e);if(n<=r[0])return i[0].evaluate(e);let a=r.length;return n>=r[a-1]?i[a-1].evaluate(e):i[Ca(r,n,this.key)].evaluate(e);}eachChild(e){e(this.input);for(let r of this.outputs)e(r);}outputDefined(){return this.outputs.every(e=>e.outputDefined());}};function Z1(t,e,r,i){let n=3*t,a=3*(r-t)-n,s=1-n-a,o=3*e,l=3*(i-e)-o,u=1-o-l;return function(h,c=1e-6){if(h<=0)return 0;if(h>=1)return 1;let p=h;for(let y=0;y<8;y++){let m=((s*p+a)*p+n)*p-h;if(Math.abs(m)<c)return((u*p+l)*p+o)*p;let g=(3*s*p+2*a)*p+n;if(Math.abs(g)<1e-6)break;p-=m/g;}let f=0,d=1;p=h;for(let y=0;y<20;y++){let m=((s*p+a)*p+n)*p;if(Math.abs(m-h)<c)break;h>m?f=p:d=p,p=(f+d)*.5;}return((u*p+l)*p+o)*p;};}var xe=class Zs{constructor(e,r,i,n,a,s){this.type=e,this.operator=r,this.interpolation=i,this.input=n,this.key=s,this.labels=[],this.outputs=[];for(let[o,l]of a)this.labels.push(o),this.outputs.push(l);}static interpolationFactor(e,r,i,n){let a=0;if(e.name==="exponential")a=Ts(r,e.base,i,n);else if(e.name==="linear")a=Ts(r,1,i,n);else if(e.name==="cubic-bezier"){let s=e.controlPoints;a=Z1(s[0],s[1],s[2],s[3])(Ts(r,1,i,n));}return a;}static parse(e,r){let[i,n,a,...s]=e;if(!Array.isArray(n)||n.length===0)return r.error("Expected an interpolation type expression.",1);if(n[0]==="linear")n={name:"linear"};else if(n[0]==="exponential"){let u=n[1];if(typeof u!="number")return r.error("Exponential interpolation requires a numeric base.",1,1);n={name:"exponential",base:u};}else if(n[0]==="cubic-bezier"){let u=n.slice(1);if(u.length!==4||u.some(h=>typeof h!="number"||h<0||h>1))return r.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);n={name:"cubic-bezier",controlPoints:u};}else return r.error(`Unknown interpolation type ${String(n[0])}`,1,0);if(e.length-1<4)return r.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if((e.length-1)%2!=0)return r.error("Expected an even number of arguments.");if(a=r.parse(a,2,k),!a)return null;let o=[],l=null;(i==="interpolate-hcl"||i==="interpolate-lab")&&r.expectedType!=Wi?l=le:r.expectedType&&r.expectedType.kind!=="value"&&(l=r.expectedType);for(let u=0;u<s.length;u+=2){let h=s[u],c=s[u+1],p=u+3,f=u+4;if(typeof h!="number")return r.error(\'Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.\',p);if(o.length&&o[o.length-1][0]>=h)return r.error(\'Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.\',p);let d=r.parse(c,f,l);if(!d)return null;l||=d.type,o.push([h,d]);}return!Ne(l,k)&&!Ne(l,Ea)&&!Ne(l,le)&&!Ne(l,Ta)&&!Ne(l,ka)&&!Ne(l,Wi)&&!Ne(l,Ia)&&!Ne(l,$t(k))?r.error(`Type ${yt(l)} is not interpolatable.`):new Zs(l,i,n,a,o,r.key);}evaluate(e){let r=this.labels,i=this.outputs;if(r.length===1)return i[0].evaluate(e);let n=this.input.evaluate(e);if(n<=r[0])return i[0].evaluate(e);let a=r.length;if(n>=r[a-1])return i[a-1].evaluate(e);let s=Ca(r,n,this.key),o=r[s],l=r[s+1],u=Zs.interpolationFactor(this.interpolation,n,o,l),h=i[s].evaluate(e),c=i[s+1].evaluate(e);switch(this.operator){case"interpolate":switch(this.type.kind){case"number":return We(h,c,u);case"color":return gt.interpolate(h,c,u);case"padding":return De.interpolate(h,c,u);case"colorArray":return ne.interpolate(h,c,u);case"numberArray":return _e.interpolate(h,c,u);case"variableAnchorOffsetCollection":return be.interpolate(h,c,u,this.key);case"array":return Hr(h,c,u);case"projectionDefinition":return gr.interpolate(h,c,u);}case"interpolate-hcl":switch(this.type.kind){case"color":return gt.interpolate(h,c,u,"hcl");case"colorArray":return ne.interpolate(h,c,u,"hcl");}case"interpolate-lab":switch(this.type.kind){case"color":return gt.interpolate(h,c,u,"lab");case"colorArray":return ne.interpolate(h,c,u,"lab");}}}eachChild(e){e(this.input);for(let r of this.outputs)e(r);}outputDefined(){return this.outputs.every(e=>e.outputDefined());}};function Ts(t,e,r,i){let n=i-r,a=t-r;return n===0?0:e===1?a/n:(e**+a-1)/(e**+n-1);}var pr={color:gt.interpolate,number:We,padding:De.interpolate,numberArray:_e.interpolate,colorArray:ne.interpolate,variableAnchorOffsetCollection:be.interpolate,array:Hr},Sp=class Ep{constructor(e){this.type=hn,this.sections=e;}static parse(e,r){if(e.length<2)return r.error("Expected at least one argument.");let i=e[1];if(!Array.isArray(i)&&typeof i=="object")return r.error("First argument must be an image or text section.");let n=[],a=!1;for(let s=1;s<=e.length-1;++s){let o=e[s];if(a&&typeof o=="object"&&!Array.isArray(o)){a=!1;let l=null;if(o["font-scale"]&&(l=r.parse(o["font-scale"],1,k),!l))return null;let u=null;if(o["text-font"]&&(u=r.parse(o["text-font"],1,$t(X)),!u))return null;let h=null;if(o["text-color"]&&(h=r.parse(o["text-color"],1,le),!h))return null;let c=null;if(o["vertical-align"]){if(typeof o["vertical-align"]=="string"&&!X1.includes(o["vertical-align"]))return r.error(`\'vertical-align\' must be one of: \'bottom\', \'center\', \'top\' but found \'${o["vertical-align"]}\' instead.`);if(c=r.parse(o["vertical-align"],1,X),!c)return null;}let p=n[n.length-1];p.scale=l,p.font=u,p.textColor=h,p.verticalAlign=c;}else{let l=r.parse(e[s],1,W);if(!l)return null;let u=l.type.kind;if(u!=="string"&&u!=="value"&&u!=="null"&&u!=="resolvedImage")return r.error("Formatted text type must be \'string\', \'value\', \'image\' or \'null\'.");a=!0,n.push({content:l,scale:null,font:null,textColor:null,verticalAlign:null});}}return new Ep(n);}evaluate(e){return new Me(this.sections.map(r=>{let i=r.content.evaluate(e);return _t(i)===cn?new Ws("",i,null,null,null,r.verticalAlign?r.verticalAlign.evaluate(e):null):new Ws($i(i),null,r.scale?r.scale.evaluate(e):null,r.font?r.font.evaluate(e).join(","):null,r.textColor?r.textColor.evaluate(e):null,r.verticalAlign?r.verticalAlign.evaluate(e):null);}));}eachChild(e){for(let r of this.sections)e(r.content),r.scale&&e(r.scale),r.font&&e(r.font),r.textColor&&e(r.textColor),r.verticalAlign&&e(r.verticalAlign);}outputDefined(){return!1;}};function Fp(t,e,r=0,i=t.length-1,n=H1){for(;i>r;){if(i-r>600){let l=i-r+1,u=e-r+1,h=Math.log(l),c=.5*Math.exp(2*h/3),p=.5*Math.sqrt(h*c*(l-c)/l)*(u-l/2<0?-1:1);Fp(t,e,Math.max(r,Math.floor(e-u*c/l+p)),Math.min(i,Math.floor(e+(l-u)*c/l+p)),n);}let a=t[e],s=r,o=i;for(_i(t,r,e),n(t[i],a)>0&&_i(t,r,i);s<o;){for(_i(t,s,o),s++,o--;n(t[s],a)<0;)s++;for(;n(t[o],a)>0;)o--;}n(t[r],a)===0?_i(t,r,o):(o++,_i(t,o,i)),o<=e&&(r=o+1),e<=o&&(i=o-1);}}function _i(t,e,r){let i=t[e];t[e]=t[r],t[r]=i;}function H1(t,e){return t<e?-1:+(t>e);}function Ma(t,e){if(t.length<=1)return[t];let r=[],i,n;for(let a of t){let s=J1(a);s!==0&&(a.area=Math.abs(s),n===void 0&&(n=s<0),n===s<0?(i&&r.push(i),i=[a]):i.push(a));}if(i&&r.push(i),e>1)for(let a=0;a<r.length;a++)r[a].length<=e||(Fp(r[a],e,1,r[a].length-1,K1),r[a]=r[a].slice(0,e));return r;}function K1(t,e){return e.area-t.area;}function J1(t){let e=0;for(let r=0,i=t.length,n=i-1,a,s;r<i;n=r++)a=t[r],s=t[n],e+=(s.x-a.x)*(a.y+s.y);return e;}var On={string:X,number:k,boolean:Q,object:ur},Te=class Tp{constructor(e,r,i){this.type=e,this.args=r,this.key=i;}static parse(e,r){if(e.length<2)return r.error("Expected at least one argument.");let i=1,n,a=e[0];if(a==="array"){let o;if(e.length>2){let u=e[1];if(typeof u!="string"||!(u in On)||u==="object")return r.error(\'The item type argument of "array" must be one of string, number, boolean\',1);o=On[u],i++;}else o=W;let l;if(e.length>3){if(e[2]!==null&&(typeof e[2]!="number"||e[2]<0||e[2]!==Math.floor(e[2])))return r.error(\'The length argument to "array" must be a positive integer literal\',2);l=e[2],i++;}n=$t(o,l);}else{if(!On[a])throw Error(`Types doesn\'t contain name = ${a}`);n=On[a];}let s=[];for(;i<e.length;i++){let o=r.parse(e[i],i,W);if(!o)return null;s.push(o);}return new Tp(n,s,r.key);}evaluate(e){for(let r=0;r<this.args.length;r++){let i=this.args[r].evaluate(e);if(!Zi(this.type,_t(i)))return i;if(r===this.args.length-1)throw new ct(`Expected value to be of type ${yt(this.type)}, but found ${yt(_t(i))} instead.`,this.key);}throw Error();}eachChild(e){this.args.forEach(e);}outputDefined(){return this.args.every(e=>e.outputDefined());}},fh={"to-boolean":Q,"to-color":le,"to-number":k,"to-string":X},$r=class kp{constructor(e,r,i){this.type=e,this.args=r,this.key=i;}static parse(e,r){if(e.length<2)return r.error("Expected at least one argument.");let i=e[0];if(!fh[i])throw Error(`Can\'t parse ${i} as it is not part of the known types`);if((i==="to-boolean"||i==="to-string")&&e.length!==2)return r.error("Expected one argument.");let n=fh[i],a=[];for(let s=1;s<e.length;s++){let o=r.parse(e[s],s,W);if(!o)return null;a.push(o);}return new kp(n,a,r.key);}evaluate(e){switch(this.type.kind){case"boolean":return!!this.args[0].evaluate(e);case"color":{let r,i;for(let n of this.args){if(r=n.evaluate(e),i=null,r instanceof gt)return r;if(typeof r=="string"){let a=e.parseColor(r);if(a)return a;}else if(Array.isArray(r)&&(i=r.length<3||r.length>4?`Invalid rgba value ${JSON.stringify(r)}: expected an array containing either three or four numeric values.`:wp(r[0],r[1],r[2],r[3]),!i))return new gt(r[0]/255,r[1]/255,r[2]/255,r[3]);}throw new ct(i||`Could not parse color from value \'${typeof r=="string"?r:JSON.stringify(r)}\'`,this.key);}case"padding":{let r;for(let i of this.args){r=i.evaluate(e);let n=De.parse(r);if(n)return n;}throw new ct(`Could not parse padding from value \'${typeof r=="string"?r:JSON.stringify(r)}\'`,this.key);}case"numberArray":{let r;for(let i of this.args){r=i.evaluate(e);let n=_e.parse(r);if(n)return n;}throw new ct(`Could not parse numberArray from value \'${typeof r=="string"?r:JSON.stringify(r)}\'`,this.key);}case"colorArray":{let r;for(let i of this.args){r=i.evaluate(e);let n=ne.parse(r);if(n)return n;}throw new ct(`Could not parse colorArray from value \'${typeof r=="string"?r:JSON.stringify(r)}\'`,this.key);}case"variableAnchorOffsetCollection":{let r;for(let i of this.args){r=i.evaluate(e);let n=be.parse(r);if(n)return n;}throw new ct(`Could not parse variableAnchorOffsetCollection from value \'${typeof r=="string"?r:JSON.stringify(r)}\'`,this.key);}case"number":{let r=null;for(let i of this.args){if(r=i.evaluate(e),r===null)return 0;let n=Number(r);if(!isNaN(n))return n;}throw new ct(`Could not convert ${JSON.stringify(r)} to number.`,this.key);}case"formatted":return Me.fromString($i(this.args[0].evaluate(e)));case"resolvedImage":return we.fromString($i(this.args[0].evaluate(e)));case"projectionDefinition":{let r=this.args[0].evaluate(e);if(gr.parse(r))return r;throw new ct(`Could not parse projectionDefinition from value \'${typeof r=="string"?r:JSON.stringify(r)}\'`,this.key);}default:return $i(this.args[0].evaluate(e));}}eachChild(e){this.args.forEach(e);}outputDefined(){return this.args.every(e=>e.outputDefined());}},Ip=class Cp{constructor(e,r){this.type=r.type,this.bindings=[].concat(e),this.result=r;}evaluate(e){return this.result.evaluate(e);}eachChild(e){for(let r of this.bindings)e(r[1]);e(this.result);}static parse(e,r){if(e.length<4)return r.error(`Expected at least 3 arguments, but found ${e.length-1} instead.`);let i=[];for(let a=1;a<e.length-1;a+=2){let s=e[a];if(typeof s!="string")return r.error(`Expected string, but found ${typeof s} instead.`,a);if(/[^a-zA-Z0-9_]/.test(s))return r.error("Variable names must contain only alphanumeric characters or \'_\'.",a);let o=r.parse(e[a+1],a+1);if(!o)return null;i.push([s,o]);}let n=r.parse(e[e.length-1],e.length-1,r.expectedType,i);return n?new Cp(i,n):null;}outputDefined(){return this.result.outputDefined();}},Mp=class Bp{constructor(e,r){this.type=r.type,this.name=e,this.boundExpression=r;}static parse(e,r){if(e.length!==2||typeof e[1]!="string")return r.error("\'var\' expression requires exactly one string literal argument.");let i=e[1];return r.scope.has(i)?new Bp(i,r.scope.get(i)):r.error(`Unknown variable "${i}". Make sure "${i}" has been bound in an enclosing "let" expression before using it.`,1);}evaluate(e){return this.boundExpression.evaluate(e);}eachChild(){}outputDefined(){return!1;}},Q1=class Pp{constructor(e,r,i,n){this.type=e,this.index=r,this.input=i,this.key=n;}static parse(e,r){if(e.length!==3)return r.error(`Expected 2 arguments, but found ${e.length-1} instead.`);let i=r.parse(e[1],1,k),n=r.parse(e[2],2,$t(r.expectedType||W));if(!i||!n)return null;let a=n.type;return new Pp(a.itemType,i,n,r.key);}evaluate(e){let r=this.index.evaluate(e),i=this.input.evaluate(e);if(r<0)throw new ct(`Array index out of bounds: ${r} < 0.`,this.key);if(r>=i.length)throw new ct(`Array index out of bounds: ${r} > ${i.length-1}.`,this.key);if(r!==Math.floor(r))throw new ct(`Array index must be an integer, but found ${r} instead.`,this.key);return i[r];}eachChild(e){e(this.index),e(this.input);}outputDefined(){return!1;}},t0=class zp{constructor(e,r,i){this.needle=e,this.haystack=r,this.key=i,this.type=Q;}static parse(e,r){if(e.length!==3)return r.error(`Expected 2 arguments, but found ${e.length-1} instead.`);let i=r.parse(e[1],1,W),n=r.parse(e[2],2,W);return!i||!n?null:fl(i.type,[Q,X,k,un,W])?new zp(i,n,r.key):r.error(`Expected first argument to be of type boolean, string, number or null, but found ${yt(i.type)} instead`);}evaluate(e){let r=this.needle.evaluate(e),i=this.haystack.evaluate(e);if(!i)return!1;if(!hr(r,["boolean","string","number","null"]))throw new ct(`Expected first argument to be of type boolean, string, number or null, but found ${yt(_t(r))} instead.`,this.key);if(!hr(i,["string","array"]))throw new ct(`Expected second argument to be of type array or string, but found ${yt(_t(i))} instead.`,this.key);return i.indexOf(r)>=0;}eachChild(e){e(this.needle),e(this.haystack);}outputDefined(){return!0;}},e0=class Hs{constructor(e,r,i,n){this.needle=e,this.haystack=r,this.key=i,this.fromIndex=n,this.type=k;}static parse(e,r){if(e.length<=2||e.length>=5)return r.error(`Expected 2 or 3 arguments, but found ${e.length-1} instead.`);let i=r.parse(e[1],1,W),n=r.parse(e[2],2,W);if(!i||!n)return null;if(!fl(i.type,[Q,X,k,un,W]))return r.error(`Expected first argument to be of type boolean, string, number or null, but found ${yt(i.type)} instead`);if(e.length===4){let a=r.parse(e[3],3,k);return a?new Hs(i,n,r.key,a):null;}return new Hs(i,n,r.key);}evaluate(e){let r=this.needle.evaluate(e),i=this.haystack.evaluate(e);if(!hr(r,["boolean","string","number","null"]))throw new ct(`Expected first argument to be of type boolean, string, number or null, but found ${yt(_t(r))} instead.`,this.key);let n;if(this.fromIndex&&(n=this.fromIndex.evaluate(e)),hr(i,["string"])){let a=i.indexOf(r,n);return a===-1?-1:[...i.slice(0,a)].length;}if(hr(i,["array"]))return i.indexOf(r,n);throw new ct(`Expected second argument to be of type array or string, but found ${yt(_t(i))} instead.`,this.key);}eachChild(e){e(this.needle),e(this.haystack),this.fromIndex&&e(this.fromIndex);}outputDefined(){return!1;}},r0=class Lp{constructor(e,r,i,n,a,s){this.inputType=e,this.type=r,this.input=i,this.cases=n,this.outputs=a,this.otherwise=s;}static parse(e,r){if(e.length<5)return r.error(`Expected at least 4 arguments, but found only ${e.length-1}.`);if(e.length%2!=1)return r.error("Expected an even number of arguments.");let i,n;r.expectedType&&r.expectedType.kind!=="value"&&(n=r.expectedType);let a={},s=[];for(let u=2;u<e.length-1;u+=2){let h=e[u],c=e[u+1];Array.isArray(h)||(h=[h]);let p=r.concat(u);if(h.length===0)return p.error("Expected at least one branch label.");for(let d of h){if(typeof d!="number"&&typeof d!="string")return p.error("Branch labels must be numbers or strings.");if(typeof d=="number"&&Math.abs(d)>2**53-1)return p.error(`Branch labels must be integers no larger than ${2**53-1}.`);if(typeof d=="number"&&Math.floor(d)!==d)return p.error("Numeric branch labels must be integer values.");if(!i)i=_t(d);else if(p.checkSubtype(i,_t(d)))return null;if(a[String(d)]!==void 0)return p.error("Branch labels must be unique.");a[String(d)]=s.length;}let f=r.parse(c,u,n);if(!f)return null;n||=f.type,s.push(f);}let o=r.parse(e[1],1,W);if(!o)return null;let l=r.parse(e[e.length-1],e.length-1,n);return!l||o.type.kind!=="value"&&r.concat(1).checkSubtype(i,o.type)?null:new Lp(i,n,o,a,s,l);}evaluate(e){let r=this.input.evaluate(e);return(_t(r)===this.inputType&&this.outputs[this.cases[r]]||this.otherwise).evaluate(e);}eachChild(e){e(this.input),this.outputs.forEach(e),e(this.otherwise);}outputDefined(){return this.outputs.every(e=>e.outputDefined())&&this.otherwise.outputDefined();}},i0=class Vp{constructor(e,r,i){this.type=e,this.branches=r,this.otherwise=i;}static parse(e,r){if(e.length<4)return r.error(`Expected at least 3 arguments, but found only ${e.length-1}.`);if(e.length%2!=0)return r.error("Expected an odd number of arguments.");let i;r.expectedType&&r.expectedType.kind!=="value"&&(i=r.expectedType);let n=[];for(let s=1;s<e.length-1;s+=2){let o=r.parse(e[s],s,Q);if(!o)return null;let l=r.parse(e[s+1],s+1,i);if(!l)return null;n.push([o,l]),i||=l.type;}let a=r.parse(e[e.length-1],e.length-1,i);if(!a)return null;if(!i)throw Error("Can\'t infer output type");return new Vp(i,n,a);}evaluate(e){for(let[r,i]of this.branches)if(r.evaluate(e))return i.evaluate(e);return this.otherwise.evaluate(e);}eachChild(e){for(let[r,i]of this.branches)e(r),e(i);e(this.otherwise);}outputDefined(){return this.branches.every(([e,r])=>r.outputDefined())&&this.otherwise.outputDefined();}},n0=class Ks{constructor(e,r,i,n,a){this.type=e,this.input=r,this.beginIndex=i,this.key=n,this.endIndex=a;}static parse(e,r){if(e.length<=2||e.length>=5)return r.error(`Expected 2 or 3 arguments, but found ${e.length-1} instead.`);let i=r.parse(e[1],1,W),n=r.parse(e[2],2,k);if(!i||!n)return null;if(!fl(i.type,[$t(W),X,W]))return r.error(`Expected first argument to be of type array or string, but found ${yt(i.type)} instead`);if(e.length===4){let a=r.parse(e[3],3,k);return a?new Ks(i.type,i,n,r.key,a):null;}return new Ks(i.type,i,n,r.key);}evaluate(e){let r=this.input.evaluate(e),i=this.beginIndex.evaluate(e),n;if(this.endIndex&&(n=this.endIndex.evaluate(e)),hr(r,["string"]))return[...r].slice(i,n).join("");if(hr(r,["array"]))return r.slice(i,n);throw new ct(`Expected first argument to be of type array or string, but found ${yt(_t(r))} instead.`,this.key);}eachChild(e){e(this.input),e(this.beginIndex),this.endIndex&&e(this.endIndex);}outputDefined(){return!1;}},Op=class Js{constructor(e,r){this.type=e,this.args=r;}static parse(e,r){if(e.length<2)return r.error("Expected at least one argument.");let i=null,n=r.expectedType;n&&n.kind!=="value"&&(i=n);let a=[];for(let s of e.slice(1)){let o=r.parse(s,1+a.length,i,void 0,{typeAnnotation:"omit"});if(!o)return null;i||=o.type,a.push(o);}if(!i)throw Error("No output type");return n&&a.some(s=>Zi(n,s.type))?new Js(W,a):new Js(i,a);}evaluate(e){let r=null,i=0,n;for(let a of this.args)if(i++,r=a.evaluate(e),r&&r instanceof we&&!r.available&&(n||=r.name,r=null,i===this.args.length&&(r=n)),r!==null)break;return r;}eachChild(e){this.args.forEach(e);}outputDefined(){return this.args.every(e=>e.outputDefined());}};function dh(t,e){return t==="=="||t==="!="?e.kind==="boolean"||e.kind==="string"||e.kind==="number"||e.kind==="null"||e.kind==="value":e.kind==="string"||e.kind==="number"||e.kind==="value";}function a0(t,e,r){return e===r;}function s0(t,e,r){return e!==r;}function o0(t,e,r){return e<r;}function l0(t,e,r){return e>r;}function u0(t,e,r){return e<=r;}function h0(t,e,r){return e>=r;}function Rp(t,e,r,i){return i.compare(e,r)===0;}function c0(t,e,r,i){return!Rp(t,e,r,i);}function p0(t,e,r,i){return i.compare(e,r)<0;}function f0(t,e,r,i){return i.compare(e,r)>0;}function d0(t,e,r,i){return i.compare(e,r)<=0;}function y0(t,e,r,i){return i.compare(e,r)>=0;}function ni(t,e,r){let i=t!=="=="&&t!=="!=";return class $p{constructor(a,s,o,l){this.lhs=a,this.rhs=s,this.key=o,this.collator=l,this.type=Q,this.hasUntypedArgument=a.type.kind==="value"||s.type.kind==="value";}static parse(a,s){if(a.length!==3&&a.length!==4)return s.error("Expected two or three arguments.");let o=a[0],l=s.parse(a[1],1,W);if(!l)return null;if(!dh(o,l.type))return s.concat(1).error(`"${o}" comparisons are not supported for type \'${yt(l.type)}\'.`);let u=s.parse(a[2],2,W);if(!u)return null;if(!dh(o,u.type))return s.concat(2).error(`"${o}" comparisons are not supported for type \'${yt(u.type)}\'.`);if(l.type.kind!==u.type.kind&&l.type.kind!=="value"&&u.type.kind!=="value")return s.error(`Cannot compare types \'${yt(l.type)}\' and \'${yt(u.type)}\'.`);i&&(l.type.kind==="value"&&u.type.kind!=="value"?l=new Te(u.type,[l],s.key):l.type.kind!=="value"&&u.type.kind==="value"&&(u=new Te(l.type,[u],s.key)));let h=null;if(a.length===4){if(l.type.kind!=="string"&&u.type.kind!=="string"&&l.type.kind!=="value"&&u.type.kind!=="value")return s.error("Cannot use collator to compare non-string types.");if(h=s.parse(a[3],3,Fa),!h)return null;}return new $p(l,u,s.key,h);}evaluate(a){let s=this.lhs.evaluate(a),o=this.rhs.evaluate(a);if(i&&this.hasUntypedArgument){let l=_t(s),u=_t(o);if(l.kind!==u.kind||l.kind!=="string"&&l.kind!=="number")throw new ct(`Expected arguments for "${t}" to be (string, string) or (number, number), but found (${l.kind}, ${u.kind}) instead.`,this.key);}if(this.collator&&!i&&this.hasUntypedArgument){let l=_t(s),u=_t(o);if(l.kind!=="string"||u.kind!=="string")return e(a,s,o);}return this.collator?r(a,s,o,this.collator.evaluate(a)):e(a,s,o);}eachChild(a){a(this.lhs),a(this.rhs),this.collator&&a(this.collator);}outputDefined(){return!0;}};}var m0=ni("==",a0,Rp),g0=ni("!=",s0,c0),x0=ni("<",o0,p0),v0=ni(">",l0,f0),b0=ni("<=",u0,d0),w0=ni(">=",h0,y0),Np=class Up{constructor(e,r,i){this.type=Fa,this.locale=i,this.caseSensitive=e,this.diacriticSensitive=r;}static parse(e,r){if(e.length!==2)return r.error("Expected one argument.");let i=e[1];if(typeof i!="object"||Array.isArray(i))return r.error("Collator options argument must be an object.");let n=r.parse(i["case-sensitive"]!==void 0&&i["case-sensitive"],1,Q);if(!n)return null;let a=r.parse(i["diacritic-sensitive"]!==void 0&&i["diacritic-sensitive"],1,Q);if(!a)return null;let s=null;return i.locale&&(s=r.parse(i.locale,1,X),!s)?null:new Up(n,a,s);}evaluate(e){return new dl(this.caseSensitive.evaluate(e),this.diacriticSensitive.evaluate(e),this.locale?this.locale.evaluate(e):null);}eachChild(e){e(this.caseSensitive),e(this.diacriticSensitive),this.locale&&e(this.locale);}outputDefined(){return!1;}},D0=class qp{constructor(e,r,i,n,a,s){this.type=X,this.number=e,this.locale=r,this.currency=i,this.unit=n,this.minFractionDigits=a,this.maxFractionDigits=s;}static parse(e,r){if(e.length!==3)return r.error("Expected two arguments.");let i=r.parse(e[1],1,k);if(!i)return null;let n=e[2];if(typeof n!="object"||Array.isArray(n))return r.error("NumberFormat options argument must be an object.");let a=null;if(n.locale&&(a=r.parse(n.locale,1,X),!a))return null;let s=null;if(n.currency&&(s=r.parse(n.currency,1,X),!s))return null;let o=null;if(n.unit&&(o=r.parse(n.unit,1,X),!o))return null;if(s&&o)return r.error("NumberFormat options `currency` and `unit` are mutually exclusive");let l=null;if(n["min-fraction-digits"]&&(l=r.parse(n["min-fraction-digits"],1,k),!l))return null;let u=null;return n["max-fraction-digits"]&&(u=r.parse(n["max-fraction-digits"],1,k),!u)?null:new qp(i,a,s,o,l,u);}evaluate(e){return new Intl.NumberFormat(this.locale?this.locale.evaluate(e):[],{style:this.currency?"currency":this.unit?"unit":"decimal",currency:this.currency?this.currency.evaluate(e):void 0,unit:this.unit?this.unit.evaluate(e):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(e):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(e):void 0}).format(this.number.evaluate(e));}eachChild(e){e(this.number),this.locale&&e(this.locale),this.currency&&e(this.currency),this.unit&&e(this.unit),this.minFractionDigits&&e(this.minFractionDigits),this.maxFractionDigits&&e(this.maxFractionDigits);}outputDefined(){return!1;}},_0=class jp{constructor(e){this.type=cn,this.input=e;}static parse(e,r){if(e.length!==2)return r.error("Expected two arguments.");let i=r.parse(e[1],1,X);return i?new jp(i):r.error("No image name provided.");}evaluate(e){let r=this.input.evaluate(e),i=we.fromString(r);return i&&e.availableImages&&(i.available=e.availableImages.indexOf(r)>-1),i;}eachChild(e){e(this.input);}outputDefined(){return!1;}},A0=class Gp{constructor(e,r){this.input=e,this.key=r,this.type=k;}static parse(e,r){if(e.length!==2)return r.error(`Expected 1 argument, but found ${e.length-1} instead.`);let i=r.parse(e[1],1);return i?i.type.kind!=="array"&&i.type.kind!=="string"&&i.type.kind!=="value"?r.error(`Expected argument of type string or array, but found ${yt(i.type)} instead.`):new Gp(i,r.key):null;}evaluate(e){let r=this.input.evaluate(e);if(typeof r=="string")return[...r].length;if(Array.isArray(r))return r.length;throw new ct(`Expected value to be of type string or array, but found ${yt(_t(r))} instead.`,this.key);}eachChild(e){e(this.input);}outputDefined(){return!1;}},ve=8192;function S0(t,e){let r=E0(t[0]),i=T0(t[1]),n=2**e.z;return[Math.round(r*n*ve),Math.round(i*n*ve)];}function ml(t,e){let r=2**e.z,i=(t[0]/ve+e.x)/r,n=(t[1]/ve+e.y)/r;return[F0(i),k0(n)];}function E0(t){return(180+t)/360;}function F0(t){return t*360-180;}function T0(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360;}function k0(t){return 360/Math.PI*Math.atan(Math.exp((180-t*360)*Math.PI/180))-90;}function pn(t,e){t[0]=Math.min(t[0],e[0]),t[1]=Math.min(t[1],e[1]),t[2]=Math.max(t[2],e[0]),t[3]=Math.max(t[3],e[1]);}function Hi(t,e){return!(t[0]<=e[0]||t[2]>=e[2]||t[1]<=e[1]||t[3]>=e[3]);}function I0(t,e,r){return e[1]>t[1]!=r[1]>t[1]&&t[0]<(r[0]-e[0])*(t[1]-e[1])/(r[1]-e[1])+e[0];}function C0(t,e,r){let i=t[0]-e[0],n=t[1]-e[1],a=t[0]-r[0],s=t[1]-r[1];return i*s-a*n===0&&i*a<=0&&n*s<=0;}function Ba(t,e,r,i){let n=[e[0]-t[0],e[1]-t[1]];return z0([i[0]-r[0],i[1]-r[1]],n)!==0&&!!(yh(t,e,r,i)&&yh(r,i,t,e));}function M0(t,e,r){for(let i of r)for(let n=0;n<i.length-1;++n)if(Ba(t,e,i[n],i[n+1]))return!0;return!1;}function ai(t,e,r=!1){let i=!1;for(let n of e)for(let a=0;a<n.length-1;a++){if(C0(t,n[a],n[a+1]))return r;I0(t,n[a],n[a+1])&&(i=!i);}return i;}function B0(t,e){for(let r of e)if(ai(t,r))return!0;return!1;}function Xp(t,e){for(let r of t)if(!ai(r,e))return!1;for(let r=0;r<t.length-1;++r)if(M0(t[r],t[r+1],e))return!1;return!0;}function P0(t,e){for(let r of e)if(Xp(t,r))return!0;return!1;}function z0(t,e){return t[0]*e[1]-t[1]*e[0];}function yh(t,e,r,i){let n=t[0]-r[0],a=t[1]-r[1],s=e[0]-r[0],o=e[1]-r[1],l=i[0]-r[0],u=i[1]-r[1],h=n*u-l*a,c=s*u-l*o;return h>0&&c<0||h<0&&c>0;}function gl(t,e,r){let i=[];for(let n=0;n<t.length;n++){let a=[];for(let s=0;s<t[n].length;s++){let o=S0(t[n][s],r);pn(e,o),a.push(o);}i.push(a);}return i;}function Yp(t,e,r){let i=[];for(let n=0;n<t.length;n++){let a=gl(t[n],e,r);i.push(a);}return i;}function Wp(t,e,r,i){if(t[0]<r[0]||t[0]>r[2]){let n=i*.5,a=t[0]-r[0]>n?-i:r[0]-t[0]>n?i:0;a===0&&(a=t[0]-r[2]>n?-i:r[2]-t[0]>n?i:0),t[0]+=a;}pn(e,t);}function L0(t){t[0]=t[1]=1/0,t[2]=t[3]=-1/0;}function mh(t,e,r,i){let n=2**i.z*ve,a=[i.x*ve,i.y*ve],s=[];for(let o of t)for(let l of o){let u=[l.x+a[0],l.y+a[1]];Wp(u,e,r,n),s.push(u);}return s;}function gh(t,e,r,i){let n=2**i.z*ve,a=[i.x*ve,i.y*ve],s=[];for(let o of t){let l=[];for(let u of o){let h=[u.x+a[0],u.y+a[1]];pn(e,h),l.push(h);}s.push(l);}if(e[2]-e[0]<=n/2){L0(e);for(let o of s)for(let l of o)Wp(l,e,r,n);}return s;}function V0(t,e){let r=[1/0,1/0,-1/0,-1/0],i=[1/0,1/0,-1/0,-1/0],n=t.canonicalID();if(e.type==="Polygon"){let a=gl(e.coordinates,i,n),s=mh(t.geometry(),r,i,n);if(!Hi(r,i))return!1;for(let o of s)if(!ai(o,a))return!1;}if(e.type==="MultiPolygon"){let a=Yp(e.coordinates,i,n),s=mh(t.geometry(),r,i,n);if(!Hi(r,i))return!1;for(let o of s)if(!B0(o,a))return!1;}return!0;}function O0(t,e){let r=[1/0,1/0,-1/0,-1/0],i=[1/0,1/0,-1/0,-1/0],n=t.canonicalID();if(e.type==="Polygon"){let a=gl(e.coordinates,i,n),s=gh(t.geometry(),r,i,n);if(!Hi(r,i))return!1;for(let o of s)if(!Xp(o,a))return!1;}if(e.type==="MultiPolygon"){let a=Yp(e.coordinates,i,n),s=gh(t.geometry(),r,i,n);if(!Hi(r,i))return!1;for(let o of s)if(!P0(o,a))return!1;}return!0;}var xl=class ra{constructor(e,r){this.type=Q,this.geojson=e,this.geometries=r;}static parse(e,r){if(e.length!==2)return r.error(`\'within\' expression requires exactly one argument, but found ${e.length-1} instead.`);if(Kr(e[1])){let i=e[1];if(i.type==="FeatureCollection"){let n=[];for(let a of i.features){let{type:s,coordinates:o}=a.geometry;s==="Polygon"&&n.push(o),s==="MultiPolygon"&&n.push(...o);}if(n.length)return new ra(i,{type:"MultiPolygon",coordinates:n});}else if(i.type==="Feature"){let n=i.geometry.type;if(n==="Polygon"||n==="MultiPolygon")return new ra(i,i.geometry);}else if(i.type==="Polygon"||i.type==="MultiPolygon")return new ra(i,i);}return r.error("\'within\' expression requires valid geojson object that contains polygon geometry type.");}evaluate(e){if(e.geometry()!=null&&e.canonicalID()!=null){if(e.geometryType()==="Point")return V0(e,this.geometries);if(e.geometryType()==="LineString")return O0(e,this.geometries);}return!1;}eachChild(){}outputDefined(){return!0;}},Zp=class{constructor(t=[],e=(r,i)=>r<i?-1:+(r>i)){if(this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(let r=(this.length>>1)-1;r>=0;r--)this._down(r);}push(t){this.data.push(t),this._up(this.length++);}pop(){if(this.length===0)return;let t=this.data[0],e=this.data.pop();return--this.length>0&&(this.data[0]=e,this._down(0)),t;}peek(){return this.data[0];}_up(t){let{data:e,compare:r}=this,i=e[t];for(;t>0;){let n=t-1>>1,a=e[n];if(r(i,a)>=0)break;e[t]=a,t=n;}e[t]=i;}_down(t){let{data:e,compare:r}=this,i=this.length>>1,n=e[t];for(;t<i;){let a=(t<<1)+1,s=a+1;if(s<this.length&&r(e[s],e[a])<0&&(a=s),r(e[a],n)>=0)break;e[t]=e[a],t=a;}e[t]=n;}},xh=Math.PI/180,vl=class{constructor(t){let e=xh*6378.137*1e3,r=Math.cos(t*xh),i=1/(1-.0066943799901413165*(1-r*r)),n=Math.sqrt(i);this.kx=e*n*r,this.ky=e*n*i*.9933056200098587;}distance(t,e){let r=this.wrap(t[0]-e[0])*this.kx,i=(t[1]-e[1])*this.ky;return Math.sqrt(r*r+i*i);}pointOnLine(t,e){let r=1/0,i,n,a,s;for(let o=0;o<t.length-1;o++){let l=t[o][0],u=t[o][1],h=this.wrap(t[o+1][0]-l)*this.kx,c=(t[o+1][1]-u)*this.ky,p=0;(h!==0||c!==0)&&(p=(this.wrap(e[0]-l)*this.kx*h+(e[1]-u)*this.ky*c)/(h*h+c*c),p>1?(l=t[o+1][0],u=t[o+1][1]):p>0&&(l+=h/this.kx*p,u+=c/this.ky*p)),h=this.wrap(e[0]-l)*this.kx,c=(e[1]-u)*this.ky;let f=h*h+c*c;f<r&&(r=f,i=l,n=u,a=o,s=p);}return{point:[i,n],index:a,t:Math.max(0,Math.min(1,s))};}wrap(t){for(;t<-180;)t+=360;for(;t>180;)t-=360;return t;}};function Hp(t,e){return e[0]-t[0];}function ha(t){return t[1]-t[0]+1;}function Be(t,e){return t[1]>=t[0]&&t[1]<e;}function Qs(t,e){if(t[0]>t[1])return[null,null];let r=ha(t);if(e){if(r===2)return[t,null];let n=Math.floor(r/2);return[[t[0],t[0]+n],[t[0]+n,t[1]]];}if(r===1)return[t,null];let i=Math.floor(r/2)-1;return[[t[0],t[0]+i],[t[0]+i+1,t[1]]];}function to(t,e){if(!Be(e,t.length))return[1/0,1/0,-1/0,-1/0];let r=[1/0,1/0,-1/0,-1/0];for(let i=e[0];i<=e[1];++i)pn(r,t[i]);return r;}function eo(t){let e=[1/0,1/0,-1/0,-1/0];for(let r of t)for(let i of r)pn(e,i);return e;}function vh(t){return t[0]!==-1/0&&t[1]!==-1/0&&t[2]!==1/0&&t[3]!==1/0;}function bl(t,e,r){if(!vh(t)||!vh(e))return NaN;let i=0,n=0;return t[2]<e[0]&&(i=e[0]-t[2]),t[0]>e[2]&&(i=t[0]-e[2]),t[1]>e[3]&&(n=t[1]-e[3]),t[3]<e[1]&&(n=e[1]-t[3]),r.distance([0,0],[i,n]);}function sr(t,e,r){let i=r.pointOnLine(e,t);return r.distance(t,i.point);}function wl(t,e,r,i,n){let a=Math.min(sr(t,[r,i],n),sr(e,[r,i],n)),s=Math.min(sr(r,[t,e],n),sr(i,[t,e],n));return Math.min(a,s);}function R0(t,e,r,i,n){if(!(Be(e,t.length)&&Be(i,r.length)))return 1/0;let a=1/0;for(let s=e[0];s<e[1];++s){let o=t[s],l=t[s+1];for(let u=i[0];u<i[1];++u){let h=r[u],c=r[u+1];if(Ba(o,l,h,c))return 0;a=Math.min(a,wl(o,l,h,c,n));}}return a;}function $0(t,e,r,i,n){if(!(Be(e,t.length)&&Be(i,r.length)))return NaN;let a=1/0;for(let s=e[0];s<=e[1];++s)for(let o=i[0];o<=i[1];++o)if(a=Math.min(a,n.distance(t[s],r[o])),a===0)return a;return a;}function N0(t,e,r){if(ai(t,e,!0))return 0;let i=1/0;for(let n of e){let a=n[0],s=n[n.length-1];if(a!==s&&(i=Math.min(i,sr(t,[s,a],r)),i===0))return i;let o=r.pointOnLine(n,t);if(i=Math.min(i,r.distance(t,o.point)),i===0)return i;}return i;}function U0(t,e,r,i){if(!Be(e,t.length))return NaN;for(let a=e[0];a<=e[1];++a)if(ai(t[a],r,!0))return 0;let n=1/0;for(let a=e[0];a<e[1];++a){let s=t[a],o=t[a+1];for(let l of r)for(let u=0,h=l.length,c=h-1;u<h;c=u++){let p=l[c],f=l[u];if(Ba(s,o,p,f))return 0;n=Math.min(n,wl(s,o,p,f,i));}}return n;}function bh(t,e){for(let r of t)for(let i of r)if(ai(i,e,!0))return!0;return!1;}function q0(t,e,r,i=1/0){let n=eo(t),a=eo(e);if(i!==1/0&&bl(n,a,r)>=i)return i;if(Hi(n,a)){if(bh(t,e))return 0;}else if(bh(e,t))return 0;let s=1/0;for(let o of t)for(let l=0,u=o.length,h=u-1;l<u;h=l++){let c=o[h],p=o[l];for(let f of e)for(let d=0,y=f.length,m=y-1;d<y;m=d++){let g=f[m],x=f[d];if(Ba(c,p,g,x))return 0;s=Math.min(s,wl(c,p,g,x,r));}}return s;}function wh(t,e,r,i,n,a){if(!a)return;let s=bl(to(i,a),n,r);s<e&&t.push([s,a,[0,0]]);}function Rn(t,e,r,i,n,a,s){if(!a||!s)return;let o=bl(to(i,a),to(n,s),r);o<e&&t.push([o,a,s]);}function ca(t,e,r,i,n=1/0){let a=Math.min(i.distance(t[0],r[0][0]),n);if(a===0)return a;let s=new Zp([[0,[0,t.length-1],[0,0]]],Hp),o=eo(r);for(;s.length>0;){let l=s.pop();if(l[0]>=a)continue;let u=l[1],h=e?50:100;if(ha(u)<=h){if(!Be(u,t.length))return NaN;if(e){let c=U0(t,u,r,i);if(isNaN(c)||c===0)return c;a=Math.min(a,c);}else for(let c=u[0];c<=u[1];++c){let p=N0(t[c],r,i);if(a=Math.min(a,p),a===0)return 0;}}else{let c=Qs(u,e);wh(s,a,i,t,o,c[0]),wh(s,a,i,t,o,c[1]);}}return a;}function pa(t,e,r,i,n,a=1/0){let s=Math.min(a,n.distance(t[0],r[0]));if(s===0)return s;let o=new Zp([[0,[0,t.length-1],[0,r.length-1]]],Hp);for(;o.length>0;){let l=o.pop();if(l[0]>=s)continue;let u=l[1],h=l[2],c=e?50:100,p=i?50:100;if(ha(u)<=c&&ha(h)<=p){if(!Be(u,t.length)&&Be(h,r.length))return NaN;let f;if(e&&i)f=R0(t,u,r,h,n),s=Math.min(s,f);else if(e&&!i){let d=t.slice(u[0],u[1]+1);for(let y=h[0];y<=h[1];++y)if(f=sr(r[y],d,n),s=Math.min(s,f),s===0)return s;}else if(!e&&i){let d=r.slice(h[0],h[1]+1);for(let y=u[0];y<=u[1];++y)if(f=sr(t[y],d,n),s=Math.min(s,f),s===0)return s;}else f=$0(t,u,r,h,n),s=Math.min(s,f);}else{let f=Qs(u,e),d=Qs(h,i);Rn(o,s,n,t,r,f[0],d[0]),Rn(o,s,n,t,r,f[0],d[1]),Rn(o,s,n,t,r,f[1],d[0]),Rn(o,s,n,t,r,f[1],d[1]);}}return s;}function j0(t,e){let r=t.geometry(),i=r.flat().map(s=>ml([s.x,s.y],t.canonical));if(r.length===0)return NaN;let n=new vl(i[0][1]),a=1/0;for(let s of e){switch(s.type){case"Point":a=Math.min(a,pa(i,!1,[s.coordinates],!1,n,a));break;case"LineString":a=Math.min(a,pa(i,!1,s.coordinates,!0,n,a));break;case"Polygon":a=Math.min(a,ca(i,!1,s.coordinates,n,a));}if(a===0)return a;}return a;}function G0(t,e){let r=t.geometry(),i=r.flat().map(s=>ml([s.x,s.y],t.canonical));if(r.length===0)return NaN;let n=new vl(i[0][1]),a=1/0;for(let s of e){switch(s.type){case"Point":a=Math.min(a,pa(i,!0,[s.coordinates],!1,n,a));break;case"LineString":a=Math.min(a,pa(i,!0,s.coordinates,!0,n,a));break;case"Polygon":a=Math.min(a,ca(i,!0,s.coordinates,n,a));}if(a===0)return a;}return a;}function X0(t,e){let r=t.geometry();if(r.length===0||r[0].length===0)return NaN;let i=Ma(r,0).map(s=>s.map(o=>o.map(l=>ml([l.x,l.y],t.canonical)))),n=new vl(i[0][0][0][1]),a=1/0;for(let s of e)for(let o of i){switch(s.type){case"Point":a=Math.min(a,ca([s.coordinates],!1,o,n,a));break;case"LineString":a=Math.min(a,ca(s.coordinates,!0,o,n,a));break;case"Polygon":a=Math.min(a,q0(o,s.coordinates,n,a));}if(a===0)return a;}return a;}function ks(t){return t.type==="MultiPolygon"?t.coordinates.map(e=>({type:"Polygon",coordinates:e})):t.type==="MultiLineString"?t.coordinates.map(e=>({type:"LineString",coordinates:e})):t.type==="MultiPoint"?t.coordinates.map(e=>({type:"Point",coordinates:e})):[t];}var Dl=class ia{constructor(e,r){this.type=k,this.geojson=e,this.geometries=r;}static parse(e,r){if(e.length!==2)return r.error(`\'distance\' expression requires exactly one argument, but found ${e.length-1} instead.`);if(Kr(e[1])){let i=e[1];if(i.type==="FeatureCollection")return new ia(i,i.features.map(n=>ks(n.geometry)).flat());if(i.type==="Feature")return new ia(i,ks(i.geometry));if("type"in i&&"coordinates"in i)return new ia(i,ks(i));}return r.error("\'distance\' expression requires valid geojson object that contains polygon geometry type.");}evaluate(e){if(e.geometry()!=null&&e.canonicalID()!=null){if(e.geometryType()==="Point")return j0(e,this.geometries);if(e.geometryType()==="LineString")return G0(e,this.geometries);if(e.geometryType()==="Polygon")return X0(e,this.geometries);}return NaN;}eachChild(){}outputDefined(){return!0;}},Y0=class Kp{constructor(e){let r=null;for(let i of e)if(!r)r=i.type;else{if(r===i.type)continue;r=W;break;}this.type=$t(r??W,e.length),this.arr=e;}static parse(e,r){if(e.length!==2)return r.error(`\'semiliteral\' expression requires exactly one argument, but found ${e.length-1} instead.`);if(!Kr(e[1]))return r.error(`invalid value of type "${typeof e[1]}"`);let i=e[1],n=_t(i);if(n.kind==="array"){let a=i,s=r.concat(1),o=[];for(let l=0;l<a.length;l++){let u=s.parse(a[l],l,W);if(!u)return null;o.push(u);}return new Kp(o);}return new Jr(n,i);}evaluate(e){return this.arr.map(r=>r.evaluate(e));}eachChild(e){this.arr.forEach(e);}outputDefined(){return this.arr.every(e=>e.outputDefined());}},_l=class Jp{constructor(e){this.key=e,this.type=W;}static parse(e,r){if(e.length!==2)return r.error(`Expected 1 argument, but found ${e.length-1} instead.`);let i=e[1];return i==null?r.error("Global state property must be defined."):typeof i=="string"?new Jp(i):r.error(`Global state property must be string, but found ${typeof e[1]} instead.`);}evaluate(e){let r=e.globals?.globalState;return!r||Object.keys(r).length===0?null:Ri(r,this.key)??null;}eachChild(){}outputDefined(){return!1;}},qr={"==":m0,"!=":g0,">":v0,"<":x0,">=":w0,"<=":b0,array:Te,at:Q1,boolean:Te,case:i0,coalesce:Op,collator:Np,format:Sp,image:_0,in:t0,"index-of":e0,interpolate:xe,"interpolate-hcl":xe,"interpolate-lab":xe,length:A0,let:Ip,literal:Jr,match:r0,number:Te,"number-format":D0,object:Te,semiliteral:Y0,slice:n0,step:yl,string:Te,"to-boolean":$r,"to-color":$r,"to-number":$r,"to-string":$r,var:Mp,within:xl,distance:Dl,"global-state":_l},ge=class extends Error{constructor(t,e){super(e),this.message=e,this.key=t;}},W0=class Qp{constructor(e,r=[]){this.parent=e,this.bindings={};for(let[i,n]of r)this.bindings[i]=n;}concat(e){return new Qp(this,e);}get(e){if(this.bindings[e])return this.bindings[e];if(this.parent)return this.parent.get(e);throw Error(`${e} not found in scope.`);}has(e){return this.bindings[e]?!0:this.parent?this.parent.has(e):!1;}},tf=class ef{constructor(e,r,i=[],n,a=new W0(),s=[]){this.registry=e,this.path=i,this.key=i.map(o=>`[${o}]`).join(""),this.scope=a,this.errors=s,this.expectedType=n,this._isConstant=r;}parse(e,r,i,n,a={}){return r==null?this._parse(e,a):this.concat(r,i,n)._parse(e,a);}_parse(e,r){(e===null||typeof e=="string"||typeof e=="boolean"||typeof e=="number")&&(e=["literal",e]);let i=this.key;function n(a,s,o){return o==="assert"?new Te(s,[a],i):o==="coerce"?new $r(s,[a],i):a;}if(Array.isArray(e)){if(e.length===0)return this.error(\'Expected an array with at least one element. If you wanted a literal array, use ["literal", []].\');let a=e[0];if(typeof a!="string")return this.error(`Expression name must be a string, but found ${typeof a} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;let s=this.registry[a];if(s){let o=s.parse(e,this);if(!o)return null;if(this.expectedType){let l=this.expectedType,u=o.type;if((l.kind==="string"||l.kind==="number"||l.kind==="boolean"||l.kind==="object"||l.kind==="array")&&u.kind==="value")o=n(o,l,r.typeAnnotation||"assert");else if(l.kind==="projectionDefinition"&&["string","array","value"].includes(u.kind)||["color","formatted","resolvedImage"].includes(l.kind)&&["value","string"].includes(u.kind)||["padding","numberArray"].includes(l.kind)&&["value","number","array"].includes(u.kind)||l.kind==="colorArray"&&["value","string","array"].includes(u.kind)||l.kind==="variableAnchorOffsetCollection"&&["value","array"].includes(u.kind))o=n(o,l,r.typeAnnotation||"coerce");else if(this.checkSubtype(l,u))return null;}if(!(o instanceof Jr)&&o.type.kind!=="resolvedImage"&&this._isConstant(o)){let l=new _p();try{o=new Jr(o.type,o.evaluate(l));}catch(u){return this.error(u.message),null;}}return o;}return this.error(`Unknown expression "${a}". If you wanted a literal array, use ["literal", [...]].`,0);}return e===void 0?this.error("\'undefined\' value invalid. Use null instead."):typeof e=="object"?this.error(\'Bare objects invalid. Use ["literal", {...}] instead.\'):this.error(`Expected an array, but found ${typeof e} instead.`);}concat(e,r,i){let n=typeof e=="number"?this.path.concat(e):this.path,a=i?this.scope.concat(i):this.scope;return new ef(this.registry,this._isConstant,n,r||null,a,this.errors);}error(e,...r){let i=`${this.key}${r.map(n=>`[${n}]`).join("")}`;this.errors.push(new ge(i,e));}checkSubtype(e,r){let i=Zi(e,r);return i&&this.error(i),i;}},xr=class Pi{constructor(e,r,i,n,a){this.name=e,this.type=r,this._evaluate=i,this.args=n,this.key=a;}evaluate(e){return this._evaluate(e,this.args,this.key);}eachChild(e){this.args.forEach(e);}outputDefined(){return!1;}static parse(e,r){let i=e[0],n=Pi.definitions[i];if(!n)return r.error(`Unknown expression "${i}". If you wanted a literal array, use ["literal", [...]].`,0);let a=Array.isArray(n)?n[0]:n.type,s=Array.isArray(n)?[[n[1],n[2]]]:n.overloads,o=s.filter(([u])=>!Array.isArray(u)||u.length===e.length-1),l=null;for(let[u,h]of o){l=new tf(r.registry,fa,r.path,null,r.scope);let c=[],p=!1;for(let f=1;f<e.length;f++){let d=e[f],y=Array.isArray(u)?u[f-1]:u.type,m=l.parse(d,1+c.length,y);if(!m){p=!0;break;}c.push(m);}if(!p){if(Array.isArray(u)&&u.length!==c.length){l.error(`Expected ${u.length} arguments, but found ${c.length} instead.`);continue;}for(let f=0;f<c.length;f++){let d=Array.isArray(u)?u[f]:u.type,y=c[f];l.concat(f+1).checkSubtype(d,y.type);}if(l.errors.length===0)return new Pi(i,a,h,c,r.key);}}if(o.length===1)r.errors.push(...l.errors);else{let u=(o.length?o:s).map(([c])=>H0(c)).join(" | "),h=[];for(let c=1;c<e.length;c++){let p=r.parse(e[c],1+h.length);if(!p)return null;h.push(yt(p.type));}r.error(`Expected arguments of type ${u}, but found (${h.join(", ")}) instead.`);}return null;}static register(e,r){Pi.definitions=r;for(let i in r)e[i]=Pi;}};function Dh(t,[e,r,i,n],a){e=e.evaluate(t),r=r.evaluate(t),i=i.evaluate(t);let s=n?n.evaluate(t):1,o=wp(e,r,i,s);if(o)throw new ct(o,a);return new gt(e/255,r/255,i/255,s,!1);}function _h(t,e){return t in e&&e[t]!==void 0;}function Is(t,e){let r=e[t];return r===void 0?null:r;}function Z0(t,e,r,i){for(;r<=i;){let n=r+i>>1;if(e[n]===t)return!0;e[n]>t?i=n-1:r=n+1;}return!1;}function rr(t){return{type:t};}xr.register(qr,{error:[z1,[X],(t,[e],r)=>{throw new ct(e.evaluate(t),r);}],typeof:[X,[W],(t,[e])=>yt(_t(e.evaluate(t)))],"to-rgba":[$t(k,4),[le],(t,[e])=>{let[r,i,n,a]=e.evaluate(t).rgb;return[r*255,i*255,n*255,a];}],rgb:[le,[k,k,k],Dh],rgba:[le,[k,k,k,k],Dh],has:{type:Q,overloads:[[[X],(t,[e])=>_h(e.evaluate(t),t.properties())],[[X,ur],(t,[e,r])=>_h(e.evaluate(t),r.evaluate(t))]]},get:{type:W,overloads:[[[X],(t,[e])=>Is(e.evaluate(t),t.properties())],[[X,ur],(t,[e,r])=>Is(e.evaluate(t),r.evaluate(t))]]},"feature-state":[W,[X],(t,[e])=>Is(e.evaluate(t),t.featureState||{})],properties:[ur,[],t=>t.properties()],"geometry-type":[X,[],t=>t.geometryType()],id:[W,[],t=>t.id()],zoom:[k,[],t=>t.globals.zoom],"heatmap-density":[k,[],t=>t.globals.heatmapDensity||0],elevation:[k,[],t=>t.globals.elevation||0],"line-progress":[k,[],t=>t.globals.lineProgress||0],accumulated:[W,[],t=>t.globals.accumulated===void 0?null:t.globals.accumulated],"+":[k,rr(k),(t,e)=>{let r=0;for(let i of e)r+=i.evaluate(t);return r;}],"*":[k,rr(k),(t,e)=>{let r=1;for(let i of e)r*=i.evaluate(t);return r;}],"-":{type:k,overloads:[[[k,k],(t,[e,r])=>e.evaluate(t)-r.evaluate(t)],[[k],(t,[e])=>-e.evaluate(t)]]},"/":[k,[k,k],(t,[e,r])=>e.evaluate(t)/r.evaluate(t)],"%":[k,[k,k],(t,[e,r])=>e.evaluate(t)%r.evaluate(t)],ln2:[k,[],()=>Math.LN2],pi:[k,[],()=>Math.PI],e:[k,[],()=>Math.E],"^":[k,[k,k],(t,[e,r])=>e.evaluate(t)**+r.evaluate(t)],sqrt:[k,[k],(t,[e])=>Math.sqrt(e.evaluate(t))],log10:[k,[k],(t,[e])=>Math.log(e.evaluate(t))/Math.LN10],ln:[k,[k],(t,[e])=>Math.log(e.evaluate(t))],log2:[k,[k],(t,[e])=>Math.log(e.evaluate(t))/Math.LN2],sin:[k,[k],(t,[e])=>Math.sin(e.evaluate(t))],cos:[k,[k],(t,[e])=>Math.cos(e.evaluate(t))],tan:[k,[k],(t,[e])=>Math.tan(e.evaluate(t))],asin:[k,[k],(t,[e])=>Math.asin(e.evaluate(t))],acos:[k,[k],(t,[e])=>Math.acos(e.evaluate(t))],atan:[k,[k],(t,[e])=>Math.atan(e.evaluate(t))],min:[k,rr(k),(t,e)=>Math.min(...e.map(r=>r.evaluate(t)))],max:[k,rr(k),(t,e)=>Math.max(...e.map(r=>r.evaluate(t)))],abs:[k,[k],(t,[e])=>Math.abs(e.evaluate(t))],round:[k,[k],(t,[e])=>{let r=e.evaluate(t);return r<0?-Math.round(-r):Math.round(r);}],floor:[k,[k],(t,[e])=>Math.floor(e.evaluate(t))],ceil:[k,[k],(t,[e])=>Math.ceil(e.evaluate(t))],"filter-==":[Q,[X,W],(t,[e,r])=>t.properties()[e.value]===r.value],"filter-id-==":[Q,[W],(t,[e])=>t.id()===e.value],"filter-type-==":[Q,[X],(t,[e])=>t.geometryType()===e.value],"filter-<":[Q,[X,W],(t,[e,r])=>{let i=t.properties()[e.value],n=r.value;return typeof i==typeof n&&i<n;}],"filter-id-<":[Q,[W],(t,[e])=>{let r=t.id(),i=e.value;return typeof r==typeof i&&r<i;}],"filter->":[Q,[X,W],(t,[e,r])=>{let i=t.properties()[e.value],n=r.value;return typeof i==typeof n&&i>n;}],"filter-id->":[Q,[W],(t,[e])=>{let r=t.id(),i=e.value;return typeof r==typeof i&&r>i;}],"filter-<=":[Q,[X,W],(t,[e,r])=>{let i=t.properties()[e.value],n=r.value;return typeof i==typeof n&&i<=n;}],"filter-id-<=":[Q,[W],(t,[e])=>{let r=t.id(),i=e.value;return typeof r==typeof i&&r<=i;}],"filter->=":[Q,[X,W],(t,[e,r])=>{let i=t.properties()[e.value],n=r.value;return typeof i==typeof n&&i>=n;}],"filter-id->=":[Q,[W],(t,[e])=>{let r=t.id(),i=e.value;return typeof r==typeof i&&r>=i;}],"filter-has":[Q,[W],(t,[e])=>{let r=e.value,i=t.properties();return r in i&&i[r]!==void 0;}],"filter-has-id":[Q,[],t=>t.id()!==null&&t.id()!==void 0],"filter-type-in":[Q,[$t(X)],(t,[e])=>e.value.indexOf(t.geometryType())>=0],"filter-id-in":[Q,[$t(W)],(t,[e])=>e.value.indexOf(t.id())>=0],"filter-in-small":[Q,[X,$t(W)],(t,[e,r])=>r.value.indexOf(t.properties()[e.value])>=0],"filter-in-large":[Q,[X,$t(W)],(t,[e,r])=>Z0(t.properties()[e.value],r.value,0,r.value.length-1)],all:{type:Q,overloads:[[[Q,Q],(t,[e,r])=>e.evaluate(t)&&r.evaluate(t)],[rr(Q),(t,e)=>{for(let r of e)if(!r.evaluate(t))return!1;return!0;}]]},any:{type:Q,overloads:[[[Q,Q],(t,[e,r])=>e.evaluate(t)||r.evaluate(t)],[rr(Q),(t,e)=>{for(let r of e)if(r.evaluate(t))return!0;return!1;}]]},"!":[Q,[Q],(t,[e])=>!e.evaluate(t)],"is-supported-script":[Q,[X],(t,[e])=>{let r=t.globals&&t.globals.isSupportedScript;return!r||r(e.evaluate(t));}],upcase:[X,[X],(t,[e])=>e.evaluate(t).toUpperCase()],downcase:[X,[X],(t,[e])=>e.evaluate(t).toLowerCase()],concat:[X,rr(W),(t,e)=>e.map(r=>$i(r.evaluate(t))).join("")],split:[$t(X),[X,X],(t,[e,r])=>e.evaluate(t).split(r.evaluate(t))],join:[X,[$t(X),X],(t,[e,r])=>e.evaluate(t).join(r.evaluate(t))],"resolved-locale":[X,[Fa],(t,[e])=>e.evaluate(t).resolvedLocale()]});function H0(t){return Array.isArray(t)?`(${t.map(yt).join(", ")})`:`(${yt(t.type)}...)`;}function fa(t){if(t instanceof Mp)return fa(t.boundExpression);if(t instanceof xr&&t.name==="error"||t instanceof Np||t instanceof xl||t instanceof Dl||t instanceof _l)return!1;let e=t instanceof $r||t instanceof Te,r=!0;return t.eachChild(i=>{r&&=e?fa(i):i instanceof Jr;}),r?Pa(t)&&za(t,["zoom","heatmap-density","elevation","line-progress","accumulated","is-supported-script"]):!1;}function Pa(t){if(t instanceof xr&&(t.name==="get"&&t.args.length===1||t.name==="feature-state"||t.name==="has"&&t.args.length===1||t.name==="properties"||t.name==="geometry-type"||t.name==="id"||/^filter-/.test(t.name))||t instanceof xl||t instanceof Dl)return!1;let e=!0;return t.eachChild(r=>{e&&!Pa(r)&&(e=!1);}),e;}function Ki(t){if(t instanceof xr&&t.name==="feature-state")return!1;let e=!0;return t.eachChild(r=>{e&&!Ki(r)&&(e=!1);}),e;}function za(t,e){if(t instanceof xr&&e.indexOf(t.name)>=0)return!1;let r=!0;return t.eachChild(i=>{r&&!za(i,e)&&(r=!1);}),r;}function Qr(t){return t["property-type"]==="data-driven"||t["property-type"]==="cross-faded-data-driven";}function rf(t){return!!t.expression&&t.expression.parameters.indexOf("zoom")>-1;}function Al(t){return!!t.expression&&t.expression.interpolated;}var Sl=/^(.*)-transition$/;function Ji(t,...e){for(let r of e)for(let i in r)t[i]=r[i];return t;}function K(t){return t instanceof Number?"number":t instanceof String?"string":t instanceof Boolean?"boolean":Array.isArray(t)?"array":t===null?"null":typeof t;}function La(t){return typeof t=="object"&&!!t&&!Array.isArray(t)&&_t(t)===ur;}function K0(t){return t;}function J0(t){switch(t.type){case"color":return gt.parse;case"padding":return De.parse;case"numberArray":return _e.parse;case"colorArray":return ne.parse;default:return null;}}function Q0(t){switch(t){case"exponential":return af;case"interval":return em;case"categorical":return tm;case"identity":return rm;default:throw Error(`Unknown function type "${t}"`);}}function nf(t,e){let r=t.stops&&typeof t.stops[0][0]=="object",i=r||t.property!==void 0,n=r||!i,a=t.type||(Al(e)?"exponential":"interval"),s=J0(e);if(s&&(t=Ji({},t),t.stops&&(t.stops=t.stops.map(h=>[h[0],s(h[1])])),t.default?t.default=s(t.default):t.default=s(e.default)),t.colorSpace&&!G1(t.colorSpace))throw Error(`Unknown color space: "${t.colorSpace}"`);let o=Q0(a),l,u;if(a==="categorical"){l=Object.create(null);for(let h of t.stops)l[h[0]]=h[1];u=typeof t.stops[0][0];}if(r){let h={},c=[];for(let d=0;d<t.stops.length;d++){let y=t.stops[d],m=y[0].zoom;h[m]===void 0&&(h[m]={zoom:m,type:t.type,property:t.property,default:t.default,stops:[]},c.push(m)),h[m].stops.push([y[0].value,y[1]]);}let p=[];for(let d of c)p.push([h[d].zoom,nf(h[d],e)]);let f={name:"linear"};return{kind:"composite",interpolationType:f,interpolationFactor:xe.interpolationFactor.bind(void 0,f),zoomStops:p.map(d=>d[0]),evaluate({zoom:d},y){return af({stops:p,base:t.base},e,d).evaluate(d,y);}};}if(n){let h=a==="exponential"?{name:"exponential",base:t.base===void 0?1:t.base}:null;return{kind:"camera",interpolationType:h,interpolationFactor:xe.interpolationFactor.bind(void 0,h),zoomStops:t.stops.map(c=>c[0]),evaluate:({zoom:c})=>o(t,e,c,l,u)};}return{kind:"source",evaluate(h,c){let p=c&&c.properties?c.properties[t.property]:void 0;return p===void 0?fn(t.default,e.default):o(t,e,p,l,u);}};}function fn(t,e,r){if(t!==void 0)return t;if(e!==void 0)return e;if(r!==void 0)return r;}function tm(t,e,r,i,n){return fn(typeof r===n?i[r]:void 0,t.default,e.default);}function em(t,e,r){if(K(r)!=="number")return fn(t.default,e.default);let i=t.stops.length;if(i===1||r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[i-1][0])return t.stops[i-1][1];let n=Ca(t.stops.map(a=>a[0]),r,"");return t.stops[n][1];}function af(t,e,r){let i=t.base===void 0?1:t.base;if(K(r)!=="number")return fn(t.default,e.default);let n=t.stops.length;if(n===1||r<=t.stops[0][0])return t.stops[0][1];if(r>=t.stops[n-1][0])return t.stops[n-1][1];let a=Ca(t.stops.map(h=>h[0]),r,""),s=im(r,i,t.stops[a][0],t.stops[a+1][0]),o=t.stops[a][1],l=t.stops[a+1][1],u=pr[e.type]||K0;return typeof o.evaluate=="function"?{evaluate(...h){let c=o.evaluate.apply(void 0,h),p=l.evaluate.apply(void 0,h);if(c!==void 0&&p!==void 0)return u(c,p,s,t.colorSpace);}}:u(o,l,s,t.colorSpace);}function rm(t,e,r){switch(e.type){case"color":r=gt.parse(r);break;case"formatted":r=Me.fromString(r.toString());break;case"resolvedImage":r=we.fromString(r.toString());break;case"padding":r=De.parse(r);break;case"colorArray":r=ne.parse(r);break;case"numberArray":r=_e.parse(r);break;default:K(r)!==e.type&&(e.type!=="enum"||!e.values[r])&&(r=void 0);}return fn(r,t.default,e.default);}function im(t,e,r,i){let n=i-r,a=t-r;return n===0?0:e===1?a/n:(e**+a-1)/(e**+n-1);}function ro(t){return{result:"success",value:t};}function Vr(t){return{result:"error",value:t};}var El=class{constructor(t,e,r,i){this.expression=t,this._warningHistory={},this._evaluator=new _p(),this._defaultValue=r?cf(r):null,this._enumValues=r&&r.type==="enum"?r.values:null,this._globalState=i,this._rootKey=e;}evaluateWithoutErrorHandling(t,e,r,i,n,a){return this._globalState&&(t=ti(t,this._globalState)),this._evaluator.globals=t,this._evaluator.feature=e,this._evaluator.featureState=r,this._evaluator.canonical=i,this._evaluator.availableImages=n||null,this._evaluator.formattedSection=a,this.expression.evaluate(this._evaluator);}evaluate(t,e,r,i,n,a){this._globalState&&(t=ti(t,this._globalState)),this._evaluator.globals=t,this._evaluator.feature=e||null,this._evaluator.featureState=r||null,this._evaluator.canonical=i,this._evaluator.availableImages=n||null,this._evaluator.formattedSection=a||null;try{let s=this.expression.evaluate(this._evaluator);if(s==null||typeof s=="number"&&s!==s)return this._defaultValue;if(this._enumValues&&!(s in this._enumValues))throw new ct(`Expected value to be one of ${Object.keys(this._enumValues).map(o=>JSON.stringify(o)).join(", ")}, but found ${JSON.stringify(s)} instead.`,"");return s;}catch(s){let o=s instanceof ct?s.path:"",l=`${o}|${s.message}`;return this._warningHistory[l]||(this._warningHistory[l]=!0,typeof console<"u"&&console.warn(sf(this._rootKey,o,s.message,this._defaultValue))),this._defaultValue;}}};function sf(t,e,r,i){return`${t}${e}: ${r}${i==null?"":` Falling back to ${String(i)}.`}`;}function of(t){if(!t)throw Error(\'rootKey must identify the location of the expression in the style JSON, e.g. "layers[3].paint.line-width".\');}function Va(t){return Array.isArray(t)&&t.length>0&&typeof t[0]=="string"&&t[0]in qr;}function Ke(t,e,r,i){of(e);let n=new tf(qr,fa,[],r?sm(r):void 0),a=n.parse(t,void 0,void 0,void 0,r&&r.type==="string"?{typeAnnotation:"coerce"}:void 0);return a?ro(new El(a,e,r,i)):Vr(n.errors);}var Qi=class{constructor(t,e,r){this.kind=t,this._styleExpression=e,this.isStateDependent=t!=="constant"&&!Ki(e.expression),this.globalStateRefs=dn(e.expression),this._globalState=r;}evaluateWithoutErrorHandling(t,e,r,i,n,a){return this._globalState&&(t=ti(t,this._globalState)),this._styleExpression.evaluateWithoutErrorHandling(t,e,r,i,n,a);}evaluate(t,e,r,i,n,a){return this._globalState&&(t=ti(t,this._globalState)),this._styleExpression.evaluate(t,e,r,i,n,a);}},da=class{constructor(t,e,r,i,n){this.kind=t,this.zoomStops=r,this._styleExpression=e,this.isStateDependent=t!=="camera"&&!Ki(e.expression),this.globalStateRefs=dn(e.expression),this.interpolationType=i,this._globalState=n;}evaluateWithoutErrorHandling(t,e,r,i,n,a){return this._globalState&&(t=ti(t,this._globalState)),this._styleExpression.evaluateWithoutErrorHandling(t,e,r,i,n,a);}evaluate(t,e,r,i,n,a){return this._globalState&&(t=ti(t,this._globalState)),this._styleExpression.evaluate(t,e,r,i,n,a);}interpolationFactor(t,e,r){return this.interpolationType?xe.interpolationFactor(this.interpolationType,t,e,r):0;}};function nm(t){return t._styleExpression!==void 0;}function lf(t,e,r,i){let n=Ke(t,e,r,i);if(n.result==="error")return n;let a=n.value.expression,s=Pa(a);if(!s&&!Qr(r))return Vr([new ge("","data expressions not supported")]);let o=za(a,["zoom"]);if(!o&&!rf(r))return Vr([new ge("","zoom expressions not supported")]);let l=na(a);if(!l&&!o)return Vr([new ge("",\'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.\')]);if(l instanceof ge)return Vr([l]);if(l instanceof xe&&!Al(r))return Vr([new ge("",\'"interpolate" expressions cannot be used with this property\')]);if(!l)return ro(s?new Qi("constant",n.value,i):new Qi("source",n.value,i));let u=l instanceof xe?l.interpolation:void 0;return ro(s?new da("camera",n.value,l.labels,u,i):new da("composite",n.value,l.labels,u,i));}var uf=class hf{constructor(e,r,i){this.isStateDependent=!1,this.globalStateRefs=new Set(),this._globalState=null,of(r),this._parameters=e,this._specification=i,this._rootKey=r,this._defaultValue=cf(i),this._warningHistory={};let n=nf(this._parameters,this._specification);this.kind=n.kind,this.interpolationFactor=n.interpolationFactor,this.zoomStops=n.zoomStops,this.interpolationType=n.interpolationType,this._innerEvaluate=n.evaluate;}evaluate(e,r){try{return this._innerEvaluate(e,r);}catch(i){let n=i instanceof Error?i.message:String(i),a=`|${n}`;return this._warningHistory[a]||(this._warningHistory[a]=!0,typeof console<"u"&&console.warn(sf(this._rootKey,"",n,this._defaultValue))),this._defaultValue;}}static deserialize(e){return new hf(e._parameters,e._rootKey,e._specification);}static serialize(e){return{_parameters:e._parameters,_specification:e._specification,_rootKey:e._rootKey};}};function am(t,e,r,i){if(La(t))return new uf(t,e,r);if(Va(t)){let n=lf(t,e,r,i);if(n.result==="error")throw Error(n.value.map(a=>`${a.key}: ${a.message}`).join(", "));return n.value;}{let n=t;return r.type==="color"&&typeof t=="string"?n=gt.parse(t):r.type==="padding"&&(typeof t=="number"||Array.isArray(t))?n=De.parse(t):r.type==="numberArray"&&(typeof t=="number"||Array.isArray(t))?n=_e.parse(t):r.type==="colorArray"&&(typeof t=="string"||Array.isArray(t))?n=ne.parse(t):r.type==="variableAnchorOffsetCollection"&&Array.isArray(t)?n=be.parse(t):r.type==="projectionDefinition"&&typeof t=="string"&&(n=gr.parse(t)),{globalStateRefs:new Set(),_globalState:null,kind:"constant",evaluate:()=>n};}}function na(t){let e=null;if(t instanceof Ip)e=na(t.result);else if(t instanceof Op){for(let r of t.args)if(e=na(r),e)break;}else(t instanceof yl||t instanceof xe)&&t.input instanceof xr&&t.input.name==="zoom"&&(e=t);return e instanceof ge||t.eachChild(r=>{let i=na(r);i instanceof ge?e=i:!e&&i?e=new ge("",\'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.\'):e&&i&&e!==i&&(e=new ge("",\'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.\'));}),e;}function dn(t,e=new Set()){return t instanceof _l&&e.add(t.key),t.eachChild(r=>{dn(r,e);}),e;}function sm(t){let e={color:le,string:X,number:k,enum:X,boolean:Q,formatted:hn,padding:Ta,numberArray:ka,colorArray:Wi,projectionDefinition:Ea,resolvedImage:cn,variableAnchorOffsetCollection:Ia};return t.type==="array"?$t(e[t.value]||W,t.length):e[t.type];}function cf(t){if(t.type==="color"&&La(t.default))return new gt(0,0,0,0);switch(t.type){case"color":return gt.parse(t.default)||null;case"padding":return De.parse(t.default)||null;case"numberArray":return _e.parse(t.default)||null;case"colorArray":return ne.parse(t.default)||null;case"variableAnchorOffsetCollection":return be.parse(t.default)||null;case"projectionDefinition":return gr.parse(t.default)||null;default:return t.default===void 0?null:t.default;}}function ti(t,e){let{zoom:r,heatmapDensity:i,elevation:n,lineProgress:a,isSupportedScript:s,accumulated:o}=t??{};return{zoom:r,heatmapDensity:i,elevation:n,lineProgress:a,isSupportedScript:s,accumulated:o,globalState:e};}function om(t){let e=!1;for(let r of t){let i=pf(r);if(i==="expression")return"expression";i==="legacy"&&(e=!0);}return e?"legacy":"neutral";}function pf(t){if(typeof t=="boolean")return"neutral";if(!Array.isArray(t)||t.length===0)return"legacy";switch(t[0]){case"has":return t.length<2||t[1]==="$id"||t[1]==="$type"?"legacy":t.length===2?"neutral":"expression";case"in":return t.length>=3&&(typeof t[1]!="string"||Array.isArray(t[2]))?"expression":"legacy";case"!in":case"!has":return"legacy";case"==":case"!=":case">":case">=":case"<":case"<=":return t.length!==3||Array.isArray(t[1])||Array.isArray(t[2])?"expression":"legacy";case"none":return"legacy";case"any":case"all":return om(t.slice(1));default:return"expression";}}function Fl(t){return pf(t)!=="legacy";}function Ah(t){return t==="$type"?["geometry-type"]:t==="$id"?["id"]:["get",t];}function lm(t){switch(t[0]){case"==":case"!=":case"<":case"<=":case">":case">=":return t.length!==3||typeof t[1]!="string"?null:[t[0],Ah(t[1]),t[2]];case"in":case"!in":{if(t.length<2||typeof t[1]!="string")return null;let e=["in",Ah(t[1]),["literal",t.slice(2)]];return t[0]==="!in"?["!",e]:e;}case"has":case"!has":{if(t.length!==2||typeof t[1]!="string"||t[1]==="$type"||t[1]==="$id")return null;let e=["has",t[1]];return t[0]==="!has"?["!",e]:e;}default:return null;}}function ff(t){if((t[0]==="<"||t[0]==="<="||t[0]===">"||t[0]===">=")&&t[1]==="$type")return`"$type" cannot be use with operator "${t[0]}"`;let e=lm(t);return e?`Mixing deprecated filter syntax with expression syntax is not supported. Replace ${JSON.stringify(t)} with ${JSON.stringify(e)}.`:`Mixing deprecated filter syntax with expression syntax is not supported. Convert ${JSON.stringify(t)} to expression syntax.`;}function Cs(t,e,r){let i=r[t];return Array.isArray(i)?Fl(i)?Tl(i,e.concat(t)):{path:e.concat(t),legacyFilter:i}:null;}function Tl(t,e=[]){if(!Array.isArray(t)||t.length<1)return null;switch(t[0]){case"all":case"any":case"none":for(let r=1;r<t.length;r++){let i=Cs(r,e,t);if(i)return i;}break;case"!":{let r=Cs(1,e,t);if(r)return r;break;}case"case":for(let r=1;r<t.length-1;r+=2){let i=Cs(r,e,t);if(i)return i;}}return null;}function um(t,e){let r=Tl(t);if(!r||typeof console>"u")return;let i=r.path.map(n=>`[${n}]`).join("");console.warn(`${e}${i}: ${ff(r.legacyFilter)}`);}var hm={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function ei(t,e,r){if(t==null)return{filter:()=>!0,needGeometry:!1,getGlobalStateRefs:()=>new Set()};Fl(t)?um(t,e):t=ya(t);let i=Ke(t,e,hm,r);if(i.result==="error")throw Error(i.value.map(n=>`${n.key}: ${n.message}`).join(", "));return{filter:(n,a,s)=>i.value.evaluate(n,a,{},s),needGeometry:df(t),getGlobalStateRefs:()=>dn(i.value.expression)};}function cm(t,e){return t<e?-1:+(t>e);}function df(t){if(!Array.isArray(t))return!1;if(t[0]==="within"||t[0]==="distance")return!0;for(let e=1;e<t.length;e++)if(df(t[e]))return!0;return!1;}function ya(t){if(!t)return!0;let e=t[0];return t.length<=1?e!=="any":e==="=="?Ms(t[1],t[2],"=="):e==="!="?$n(Ms(t[1],t[2],"==")):e==="<"||e===">"||e==="<="||e===">="?Ms(t[1],t[2],e):e==="any"?pm(t.slice(1)):e==="all"?["all"].concat(t.slice(1).map(ya)):e==="none"?["all"].concat(t.slice(1).map(ya).map($n)):e==="in"?Sh(t[1],t.slice(2)):e==="!in"?$n(Sh(t[1],t.slice(2))):e==="has"?Eh(t[1]):e!=="!has"||$n(Eh(t[1]));}function Ms(t,e,r){switch(t){case"$type":return[`filter-type-${r}`,e];case"$id":return[`filter-id-${r}`,e];default:return[`filter-${r}`,t,e];}}function pm(t){return["any"].concat(t.map(ya));}function Sh(t,e){if(e.length===0)return!1;switch(t){case"$type":return["filter-type-in",["literal",e]];case"$id":return["filter-id-in",["literal",e]];default:return e.length>200&&!e.some(r=>typeof r!=typeof e[0])?["filter-in-large",t,["literal",e.sort(cm)]]:["filter-in-small",t,["literal",e]];}}function Eh(t){switch(t){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",t];}}function $n(t){return["!",t];}function yf(t){let e=t.key,r=t.value;return r?[new T(e,r,"constants have been deprecated as of v8")]:[];}function Dt(t){return t instanceof Number||t instanceof String||t instanceof Boolean?t.valueOf():t;}function fr(t){if(Array.isArray(t))return t.map(fr);if(t instanceof Object&&!(t instanceof Number||t instanceof String||t instanceof Boolean)){let e={};for(let r in t)e[r]=fr(t[r]);return e;}return Dt(t);}function Kt(t){let e=t.key,r=t.value,i=t.valueSpec||{},n=t.objectElementValidators||{},a=t.style,s=t.styleSpec,o=t.validateSpec,l=[],u=K(r);if(u!=="object")return[new T(e,r,`object expected, ${u} found`)];for(let h in r){let c=h.split(".")[0],p=Ri(i,c)||i["*"],f;if(Ri(n,c))f=n[c];else if(Ri(i,c)){if(r[h]===void 0)continue;f=o;}else if(n["*"])f=n["*"];else if(i["*"])f=o;else{l.push(new T(e,r[h],`unknown property "${h}"`));continue;}l=l.concat(f({key:(e&&`${e}.`)+h,value:r[h],valueSpec:p,style:a,styleSpec:s,object:r,objectKey:h,validateSpec:o},r));}for(let h in i)n[h]||i[h].required&&i[h].default===void 0&&r[h]===void 0&&l.push(new T(e,r,`missing required property "${h}"`));return l;}function kl(t){let e=t.value,r=t.valueSpec,i=t.validateSpec,n=t.style,a=t.styleSpec,s=t.key,o=t.arrayElementValidator||i;if(K(e)!=="array")return[new T(s,e,`array expected, ${K(e)} found`)];if(r.length&&e.length!==r.length)return[new T(s,e,`array length ${r.length} expected, length ${e.length} found`)];let l={type:r.value,values:r.values};a.$version<7&&(l.function=r.function),K(r.value)==="object"&&(l=r.value);let u=[];for(let h=0;h<e.length;h++)u=u.concat(o({array:e,arrayIndex:h,value:e[h],valueSpec:l,validateSpec:t.validateSpec,style:n,styleSpec:a,key:`${s}[${h}]`}));return u;}function Oa(t){let e=t.key,r=t.value,i=t.valueSpec,n=K(r);return n==="number"&&r!==r&&(n="NaN"),n==="number"?"minimum"in i&&r<i.minimum?[new T(e,r,`${r} is less than the minimum value ${i.minimum}`)]:"maximum"in i&&r>i.maximum?[new T(e,r,`${r} is greater than the maximum value ${i.maximum}`)]:[]:[new T(e,r,`number expected, ${n} found`)];}function mf(t){let e=t.valueSpec,r=Dt(t.value.type),i,n={},a,s,o=r!=="categorical"&&t.value.property===void 0,l=!o,u=K(t.value.stops)==="array"&&K(t.value.stops[0])==="array"&&K(t.value.stops[0][0])==="object",h=Kt({key:t.key,value:t.value,valueSpec:t.styleSpec.function,validateSpec:t.validateSpec,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:c,default:d}});return r==="identity"&&o&&h.push(new T(t.key,t.value,\'missing required property "property"\')),r!=="identity"&&!t.value.stops&&h.push(new T(t.key,t.value,\'missing required property "stops"\')),r==="exponential"&&t.valueSpec.expression&&!Al(t.valueSpec)&&h.push(new T(t.key,t.value,"exponential functions not supported")),t.styleSpec.$version>=8&&(l&&!Qr(t.valueSpec)?h.push(new T(t.key,t.value,"property functions not supported")):o&&!rf(t.valueSpec)&&h.push(new T(t.key,t.value,"zoom functions not supported"))),(r==="categorical"||u)&&t.value.property===void 0&&h.push(new T(t.key,t.value,\'"property" property is required\')),h;function c(y){if(r==="identity")return[new T(y.key,y.value,\'identity function may not have a "stops" property\')];let m=[],g=y.value;return m=m.concat(kl({key:y.key,value:g,valueSpec:y.valueSpec,validateSpec:y.validateSpec,style:y.style,styleSpec:y.styleSpec,arrayElementValidator:p})),K(g)==="array"&&g.length===0&&m.push(new T(y.key,g,"array must have at least one stop")),m;}function p(y){let m=[],g=y.value,x=y.key;if(K(g)!=="array")return[new T(x,g,`array expected, ${K(g)} found`)];if(g.length!==2)return[new T(x,g,`array length 2 expected, length ${g.length} found`)];if(u){if(K(g[0])!=="object")return[new T(x,g,`object expected, ${K(g[0])} found`)];if(g[0].zoom===void 0)return[new T(x,g,"object stop key must have zoom")];if(g[0].value===void 0)return[new T(x,g,"object stop key must have value")];if(s&&s>Dt(g[0].zoom))return[new T(x,g[0].zoom,"stop zoom values must appear in ascending order")];Dt(g[0].zoom)!==s&&(s=Dt(g[0].zoom),a=void 0,n={}),m=m.concat(Kt({key:`${x}[0]`,value:g[0],valueSpec:{zoom:{}},validateSpec:y.validateSpec,style:y.style,styleSpec:y.styleSpec,objectElementValidators:{zoom:Oa,value:f}}));}else m=m.concat(f({key:`${x}[0]`,value:g[0],valueSpec:{},validateSpec:y.validateSpec,style:y.style,styleSpec:y.styleSpec},g));return Va(fr(g[1]))?m.concat([new T(`${x}[1]`,g[1],"expressions are not allowed in function stops.")]):m.concat(y.validateSpec({key:`${x}[1]`,value:g[1],valueSpec:e,validateSpec:y.validateSpec,style:y.style,styleSpec:y.styleSpec}));}function f(y,m){let g=K(y.value),x=Dt(y.value),b=y.value===null?m:y.value;if(!i)i=g;else if(g!==i)return[new T(y.key,b,`${g} stop domain type must match previous stop domain type ${i}`)];if(g!=="number"&&g!=="string"&&g!=="boolean")return[new T(y.key,b,"stop domain value must be a number, string, or boolean")];if(g!=="number"&&r!=="categorical"){let v=`number expected, ${g} found`;return Qr(e)&&r===void 0&&(v+=\'\\nIf you intended to use a categorical function, specify `"type": "categorical"`.\'),[new T(y.key,b,v)];}return r==="categorical"&&g==="number"&&(!isFinite(x)||Math.floor(x)!==x)?[new T(y.key,b,`integer expected, found ${x}`)]:r!=="categorical"&&g==="number"&&a!==void 0&&x<a?[new T(y.key,b,"stop domain values must appear in ascending order")]:(a=x,r==="categorical"&&x in n?[new T(y.key,b,"stop domain values must be unique")]:(n[x]=!0,[]));}function d(y){return y.validateSpec({key:y.key,value:y.value,valueSpec:e,validateSpec:y.validateSpec,style:y.style,styleSpec:y.styleSpec});}}function ri(t){let e=(t.expressionContext==="property"?lf:Ke)(fr(t.value),t.key,t.valueSpec);if(e.result==="error")return e.value.map(i=>new T(`${t.key}${i.key}`,t.value,i.message));let r=e.value.expression||e.value._styleExpression.expression;if(t.expressionContext==="property"&&t.propertyKey==="text-font"&&!r.outputDefined())return[new T(t.key,t.value,`Invalid data expression for "${t.propertyKey}". Output values must be contained as literals within the expression.`)];if(t.expressionContext==="property"&&t.propertyType==="layout"&&!Ki(r))return[new T(t.key,t.value,\'"feature-state" data expressions are not supported with layout properties.\')];if(t.expressionContext==="filter"&&!Ki(r))return[new T(t.key,t.value,\'"feature-state" data expressions are not supported with filters.\')];if(t.expressionContext&&t.expressionContext.indexOf("cluster")===0){if(!za(r,["zoom","feature-state"]))return[new T(t.key,t.value,\'"zoom" and "feature-state" expressions are not supported with cluster properties.\')];if(t.expressionContext==="cluster-initial"&&!Pa(r))return[new T(t.key,t.value,"Feature data expressions are not supported with initial expression part of cluster properties.")];}return[];}function fm(t){let e=t.value,r=t.key,i=K(e);return i==="boolean"?[]:[new T(r,e,`boolean expected, ${i} found`)];}function io(t){let e=t.key,r=t.value,i=K(r);return i==="string"?gt.parse(String(r))?[]:[new T(e,r,`color expected, "${r}" found`)]:[new T(e,r,`color expected, ${i} found`)];}function tn(t){let e=t.key,r=t.value,i=t.valueSpec,n=[];return Array.isArray(i.values)?i.values.indexOf(Dt(r))===-1&&n.push(new T(e,r,`expected one of [${i.values.join(", ")}], ${JSON.stringify(r)} found`)):Object.keys(i.values).indexOf(Dt(r))===-1&&n.push(new T(e,r,`expected one of [${Object.keys(i.values).join(", ")}], ${JSON.stringify(r)} found`)),n;}function dm(t,e){let r=t;for(let i of e)r=r[i];return r;}function ym(t,e){let r=Tl(e);return r?[new T(`${t.key}${r.path.map(i=>`[${i}]`).join("")}`,dm(t.value,r.path),ff(r.legacyFilter),null,"warning")]:[];}function Il(t){let e=fr(t.value);return Fl(e)?[...ym(t,e),...ri(Ji({},t,{expressionContext:"filter",valueSpec:{value:"boolean"}}))]:gf(t);}function gf(t){let e=t.value,r=t.key;if(K(e)!=="array")return[new T(r,e,`array expected, ${K(e)} found`)];let i=t.styleSpec,n,a=[];if(e.length<1)return[new T(r,e,"filter array must have at least 1 element")];switch(a=a.concat(tn({key:`${r}[0]`,value:e[0],valueSpec:i.filter_operator,style:t.style,styleSpec:t.styleSpec})),Dt(e[0])){case"<":case"<=":case">":case">=":e.length>=2&&Dt(e[1])==="$type"&&a.push(new T(r,e,`"$type" cannot be use with operator "${e[0]}"`));case"==":case"!=":e.length!==3&&a.push(new T(r,e,`filter array for operator "${e[0]}" must have 3 elements`));case"in":case"!in":e.length>=2&&(n=K(e[1]),n!=="string"&&a.push(new T(`${r}[1]`,e[1],`string expected, ${n} found`)));for(let s=2;s<e.length;s++)n=K(e[s]),Dt(e[1])==="$type"?a=a.concat(tn({key:`${r}[${s}]`,value:e[s],valueSpec:i.geometry_type,style:t.style,styleSpec:t.styleSpec})):n!=="string"&&n!=="number"&&n!=="boolean"&&a.push(new T(`${r}[${s}]`,e[s],`string, number, or boolean expected, ${n} found`));break;case"any":case"all":case"none":for(let s=1;s<e.length;s++)a=a.concat(gf({key:`${r}[${s}]`,value:e[s],style:t.style,styleSpec:t.styleSpec}));break;case"has":case"!has":n=K(e[1]),e.length===2?n!=="string"&&a.push(new T(`${r}[1]`,e[1],`string expected, ${n} found`)):a.push(new T(r,e,`filter array for "${e[0]}" operator must have 2 elements`));}return a;}function xf(t,e){let r=t.key,i=t.validateSpec,n=t.style,a=t.styleSpec,s=t.value,o=t.objectKey,l=a[`${e}_${t.layerType}`];if(!l)return[];let u=o.match(Sl);if(e==="paint"&&u&&l[u[1]]&&l[u[1]].transition)return i({key:r,value:s,valueSpec:a.transition,style:n,styleSpec:a});let h=t.valueSpec||l[o];if(!h)return[new T(r,s,`unknown property "${o}"`)];let c;if(K(s)==="string"&&Qr(h)&&!h.tokens&&(c=/^{([^}]+)}$/.exec(s)))return[new T(r,s,`"${o}" does not support interpolation syntax\nUse an identity property function instead: \\`{ "type": "identity", "property": ${JSON.stringify(c[1])} }\\`.`)];let p=[];return t.layerType==="symbol"&&o==="text-font"&&La(fr(s))&&Dt(s.type)==="identity"&&p.push(new T(r,s,\'"text-font" does not support identity functions\')),p.concat(i({key:t.key,value:s,valueSpec:h,style:n,styleSpec:a,expressionContext:"property",propertyType:e,propertyKey:o}));}function vf(t){return xf(t,"paint");}function bf(t){return xf(t,"layout");}function wf(t){let e=[],r=t.value,i=t.key,n=t.style,a=t.styleSpec;if(K(r)!=="object")return[new T(i,r,`object expected, ${K(r)} found`)];!r.type&&!r.ref&&e.push(new T(i,r,\'either "type" or "ref" is required\'));let s=Dt(r.type),o=Dt(r.ref);if(r.id){let l=Dt(r.id);for(let u=0;u<t.arrayIndex;u++){let h=n.layers[u];Dt(h.id)===l&&e.push(new T(i,r.id,`duplicate layer id "${r.id}", previously used at line ${h.id.__line__}`));}}if("ref"in r){["type","source","source-layer","filter","layout"].forEach(u=>{u in r&&e.push(new T(i,r[u],`"${u}" is prohibited for ref layers`));});let l;n.layers.forEach(u=>{Dt(u.id)===o&&(l=u);}),l?l.ref?e.push(new T(i,r.ref,"ref cannot reference another ref layer")):s=Dt(l.type):e.push(new T(i,r.ref,`ref layer "${o}" not found`));}else if(s!=="background")if(!r.source)e.push(new T(i,r,\'missing required property "source"\'));else{let l=n.sources&&n.sources[r.source],u=l&&Dt(l.type);l?u==="vector"&&s==="raster"?e.push(new T(i,r.source,`layer "${r.id}" requires a raster source`)):u!=="raster-dem"&&s==="hillshade"||u!=="raster-dem"&&s==="color-relief"?e.push(new T(i,r.source,`layer "${r.id}" requires a raster-dem source`)):u==="raster"&&s!=="raster"?e.push(new T(i,r.source,`layer "${r.id}" requires a vector source`)):u==="vector"&&!r["source-layer"]?e.push(new T(i,r,`layer "${r.id}" must specify a "source-layer"`)):u==="raster-dem"&&s!=="hillshade"&&s!=="color-relief"?e.push(new T(i,r.source,"raster-dem source can only be used with layer type \'hillshade\' or \'color-relief\'.")):s==="line"&&r.paint&&r.paint["line-gradient"]&&(u!=="geojson"||!l.lineMetrics)&&e.push(new T(i,r,`layer "${r.id}" specifies a line-gradient, which requires a GeoJSON source with \\`lineMetrics\\` enabled.`)):e.push(new T(i,r.source,`source "${r.source}" not found`));}return s==="raster"&&r.paint?.resampling&&r.paint?.["raster-resampling"]&&e.push(new T(i,r.paint,`layer "${r.id}" redundantly specifies "resampling" and "raster-resampling" paint properties, but only one is allowed. It is advised to use "resampling".`)),e=e.concat(Kt({key:i,value:r,valueSpec:a.layer,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,objectElementValidators:{"*"(){return[];},type(){return t.validateSpec({key:`${i}.type`,value:r.type,valueSpec:a.layer.type,style:t.style,styleSpec:t.styleSpec,validateSpec:t.validateSpec,object:r,objectKey:"type"});},filter:Il,layout(l){return Kt({layer:r,key:l.key,value:l.value,style:l.style,styleSpec:l.styleSpec,validateSpec:l.validateSpec,objectElementValidators:{"*"(u){return bf(Ji({layerType:s},u));}}});},paint(l){return Kt({layer:r,key:l.key,value:l.value,style:l.style,styleSpec:l.styleSpec,validateSpec:l.validateSpec,objectElementValidators:{"*"(u){return vf(Ji({layerType:s},u));}}});}}})),e;}function He(t){let e=t.value,r=t.key,i=K(e);return i==="string"?[]:[new T(r,e,`string expected, ${i} found`)];}function mm(t){let e=t.sourceName??"",r=t.value,i=t.styleSpec,n=i.source_raster_dem,a=t.style,s=[],o=K(r);if(r===void 0)return s;if(o!=="object")return s.push(new T("source_raster_dem",r,`object expected, ${o} found`)),s;let l=Dt(r.encoding)==="custom",u=["redFactor","greenFactor","blueFactor","baseShift"],h=t.value.encoding?`"${t.value.encoding}"`:"Default";for(let c in r)!l&&u.includes(c)?s.push(new T(c,r[c],`In "${e}": "${c}" is only valid when "encoding" is set to "custom". ${h} encoding found`)):n[c]?s=s.concat(t.validateSpec({key:c,value:r[c],valueSpec:n[c],validateSpec:t.validateSpec,style:a,styleSpec:i})):s.push(new T(c,r[c],`unknown property "${c}"`));return s;}var Fh={promoteId:gm};function Df(t){let e=t.value,r=t.key,i=t.styleSpec,n=t.style,a=t.validateSpec;if(!e.type)return[new T(r,e,\'"type" is required\')];let s=Dt(e.type),o;switch(s){case"vector":case"raster":return o=Kt({key:r,value:e,valueSpec:i[`source_${s.replace("-","_")}`],style:t.style,styleSpec:i,objectElementValidators:Fh,validateSpec:a}),o;case"raster-dem":return o=mm({sourceName:r,value:e,style:t.style,styleSpec:i,validateSpec:a}),o;case"geojson":if(o=Kt({key:r,value:e,valueSpec:i.source_geojson,style:n,styleSpec:i,validateSpec:a,objectElementValidators:Fh}),e.cluster)for(let l in e.clusterProperties){let[u,h]=e.clusterProperties[l],c=typeof u=="string"?[u,["accumulated"],["get",l]]:u;o.push(...ri({key:`${r}.${l}.map`,value:h,validateSpec:a,expressionContext:"cluster-map"})),o.push(...ri({key:`${r}.${l}.reduce`,value:c,validateSpec:a,expressionContext:"cluster-reduce"}));}return o;case"video":return Kt({key:r,value:e,valueSpec:i.source_video,style:n,validateSpec:a,styleSpec:i});case"image":return Kt({key:r,value:e,valueSpec:i.source_image,style:n,validateSpec:a,styleSpec:i});case"canvas":return[new T(r,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return tn({key:`${r}.type`,value:e.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:n,validateSpec:a,styleSpec:i});}}function gm({key:t,value:e}){if(K(e)==="string")return He({key:t,value:e});{let r=[];for(let i in e)r.push(...He({key:`${t}.${i}`,value:e[i]}));return r;}}function _f(t){let e=t.value,r=t.styleSpec,i=r.light,n=t.style,a=[],s=K(e);if(e===void 0)return a;if(s!=="object")return a=a.concat([new T("light",e,`object expected, ${s} found`)]),a;for(let o in e){let l=o.match(Sl);a=l&&i[l[1]]&&i[l[1]].transition?a.concat(t.validateSpec({key:o,value:e[o],valueSpec:r.transition,validateSpec:t.validateSpec,style:n,styleSpec:r})):i[o]?a.concat(t.validateSpec({key:o,value:e[o],valueSpec:i[o],validateSpec:t.validateSpec,style:n,styleSpec:r})):a.concat([new T(o,e[o],`unknown property "${o}"`)]);}return a;}function Af(t){let e=t.value,r=t.styleSpec,i=r.sky,n=t.style,a=K(e);if(e===void 0)return[];if(a!=="object")return[new T("sky",e,`object expected, ${a} found`)];let s=[];for(let o in e){let l=o.match(Sl);s=l&&i[l[1]]&&i[l[1]].transition?s.concat(t.validateSpec({key:o,value:e[o],valueSpec:r.transition,style:n,styleSpec:r})):i[o]?s.concat(t.validateSpec({key:o,value:e[o],valueSpec:i[o],style:n,styleSpec:r})):s.concat([new T(o,e[o],`unknown property "${o}"`)]);}return s;}function Sf(t){let e=t.value,r=t.styleSpec,i=r.terrain,n=t.style,a=[],s=K(e);if(e===void 0)return a;if(s!=="object")return a=a.concat([new T("terrain",e,`object expected, ${s} found`)]),a;for(let o in e)a=i[o]?a.concat(t.validateSpec({key:o,value:e[o],valueSpec:i[o],validateSpec:t.validateSpec,style:n,styleSpec:r})):a.concat([new T(o,e[o],`unknown property "${o}"`)]);return a;}function xm(t){return He(t).length===0?[]:ri(t);}function vm(t){return He(t).length===0?[]:ri(t);}function bm(t){let e=t.key,r=t.value;if(K(r)==="array"){if(r.length<1||r.length>4)return[new T(e,r,`padding requires 1 to 4 values; ${r.length} values found`)];let i={type:"number"},n=[];for(let a=0;a<r.length;a++)n=n.concat(t.validateSpec({key:`${e}[${a}]`,value:r[a],validateSpec:t.validateSpec,valueSpec:i}));return n;}return Oa({key:e,value:r,valueSpec:{}});}function wm(t){let e=t.key,r=t.value;if(K(r)==="array"){let i={type:"number"};if(r.length<1)return[new T(e,r,"array length at least 1 expected, length 0 found")];let n=[];for(let a=0;a<r.length;a++)n=n.concat(t.validateSpec({key:`${e}[${a}]`,value:r[a],validateSpec:t.validateSpec,valueSpec:i}));return n;}return Oa({key:e,value:r,valueSpec:{}});}function Dm(t){let e=t.key,r=t.value;if(K(r)==="array"){if(r.length<1)return[new T(e,r,"array length at least 1 expected, length 0 found")];let i=[];for(let n=0;n<r.length;n++)i=i.concat(io({key:`${e}[${n}]`,value:r[n],valueSpec:{}}));return i;}return io({key:e,value:r,valueSpec:{}});}function _m(t){let e=t.key,r=t.value,i=K(r),n=t.styleSpec;if(i!=="array"||r.length<1||r.length%2!=0)return[new T(e,r,"variableAnchorOffsetCollection requires a non-empty array of even length")];let a=[];for(let s=0;s<r.length;s+=2)a=a.concat(tn({key:`${e}[${s}]`,value:r[s],valueSpec:n.layout_symbol["text-anchor"]})),a=a.concat(kl({key:`${e}[${s+1}]`,value:r[s+1],valueSpec:{length:2,value:"number"},validateSpec:t.validateSpec,style:t.style,styleSpec:n}));return a;}function Ef(t){let e=[],r=t.value,i=t.key;if(Array.isArray(r)){let n=[],a=[];for(let s in r)r[s].id&&n.includes(r[s].id)&&e.push(new T(i,r,`all the sprites\' ids must be unique, but ${r[s].id} is duplicated`)),n.push(r[s].id),r[s].url&&a.includes(r[s].url)&&e.push(new T(i,r,`all the sprites\' URLs must be unique, but ${r[s].url} is duplicated`)),a.push(r[s].url),e=e.concat(Kt({key:`${i}[${s}]`,value:r[s],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:t.validateSpec}));return e;}return He({key:i,value:r});}function Am(t){let e=t.value,r=t.styleSpec,i=r.projection,n=t.style,a=K(e);if(e===void 0)return[];if(a!=="object")return[new T("projection",e,`object expected, ${a} found`)];let s=[];for(let o in e)s=i[o]?s.concat(t.validateSpec({key:o,value:e[o],valueSpec:i[o],style:n,styleSpec:r})):s.concat([new T(o,e[o],`unknown property "${o}"`)]);return s;}function Sm(t){let e=t.key,r=t.value;r=r instanceof String?r.valueOf():r;let i=K(r);return i==="array"&&!Fm(r)&&!Em(r)?[new T(e,r,`projection expected, invalid array ${JSON.stringify(r)} found`)]:["array","string"].includes(i)?[]:[new T(e,r,`projection expected, invalid type "${i}" found`)];}function Em(t){return!!["interpolate","step","literal"].includes(t[0]);}function Fm(t){return Array.isArray(t)&&t.length===3&&typeof t[0]=="string"&&typeof t[1]=="string"&&typeof t[2]=="number";}function no(t){return!!t&&t.constructor===Object;}function Ff(t){return no(t.value)?[]:[new T(t.key,t.value,`object expected, ${K(t.value)} found`)];}var Th=1114111,Tm=/^u\\+(?:([0-9a-f]{1,6})(?:-([0-9a-f]{1,6}))?|([0-9a-f]{0,5}\\?{1,6}))$/i;function km(t,e){if(K(e)!=="string")return[];let r=`${e}`,i=()=>[new T(t,e,\'invalid unicode range, expected a value such as "U+26", "U+0-10FFFF" or "U+4??"\')],n=r.match(Tm);if(!n)return i();let[,a,s,o]=n;if(o!==void 0)return o.length>6?i():[];let l=parseInt(a,16),u=s===void 0?l:parseInt(s,16);return l>Th||u>Th?[new T(t,e,"unicode range is out of bounds, the maximum code point is U+10FFFF")]:l>u?[new T(t,e,`unicode range start must not be greater than its end, but ${r} is`)]:[];}function Tf(t){let e=t.key??"font-faces",r=t.value,i=t.validateSpec,n=t.styleSpec??cp,a=t.style;if(!no(r))return[new T(e,r,`object expected, ${K(r)} found`)];let s=[];for(let o in r){let l=r[o],u=K(l);if(u==="string")s.push(...He({key:`${e}.${o}`,value:l}));else if(u==="array"){let h={url:{type:"string",required:!0},"unicode-range":{type:"array",value:"string"}};for(let[c,p]of l.entries()){let f=`${e}.${o}[${c}]`;s.push(...Kt({key:f,value:p,valueSpec:h,styleSpec:n,style:a,validateSpec:i}));let d=no(p)?p["unicode-range"]:void 0;if(K(d)==="array")for(let[y,m]of d.entries())s.push(...km(`${f}.unicode-range[${y}]`,m));}}else s.push(new T(`${e}.${o}`,l,`string or array expected, ${u} found`));}return s;}var kh={"*"(){return[];},array:kl,boolean:fm,number:Oa,color:io,constants:yf,enum:tn,filter:Il,function:mf,layer:wf,object:Kt,source:Df,light:_f,sky:Af,terrain:Sf,projection:Am,projectionDefinition:Sm,string:He,formatted:xm,resolvedImage:vm,padding:bm,numberArray:wm,colorArray:Dm,variableAnchorOffsetCollection:_m,sprite:Ef,state:Ff,fontFaces:Tf};function Ni(t){let e=t.value,r=t.valueSpec,i=t.styleSpec;return t.validateSpec=Ni,r.expression&&La(Dt(e))?mf(t):r.expression&&Va(fr(e))?ri(t):r.type&&kh[r.type]?kh[r.type](t):Kt(Ji({},t,{valueSpec:r.type?i[r.type]:r}));}function kf(t){let e=t.value,r=t.key,i=He(t);return i.length||(e.indexOf("{fontstack}")===-1&&i.push(new T(r,e,\'"glyphs" url must include a "{fontstack}" token\')),e.indexOf("{range}")===-1&&i.push(new T(r,e,\'"glyphs" url must include a "{range}" token\'))),i;}function Ht(t,e=D){let r=[];return r=r.concat(Ni({key:"",value:t,valueSpec:e.$root,styleSpec:e,style:t,validateSpec:Ni,objectElementValidators:{glyphs:kf,"*"(){return[];}}})),t.constants&&(r=r.concat(yf({key:"constants",value:t.constants,style:t,styleSpec:e,validateSpec:Ni}))),If(r);}Ht.source=te(Qt(Df)),Ht.sprite=te(Qt(Ef)),Ht.glyphs=te(Qt(kf)),Ht.fontFaces=te(Qt(Tf)),Ht.light=te(Qt(_f)),Ht.sky=te(Qt(Af)),Ht.terrain=te(Qt(Sf)),Ht.state=te(Qt(Ff)),Ht.layer=te(Qt(wf)),Ht.filter=te(Qt(Il)),Ht.paintProperty=te(Qt(vf)),Ht.layoutProperty=te(Qt(bf));function Qt(t){return function(e){return t(Object.assign({},e,{validateSpec:Ni}));};}function If(t){return[].concat(t).sort((e,r)=>e.line-r.line);}function te(t){return function(...e){return If(t.apply(this,e));};}var Im={type:"enum","property-type":"data-constant",expression:{interpolated:!1,parameters:["global-state"]},values:{visible:{},none:{}},transition:!1,default:"visible"},Cm=class{constructor(t,e,r){this._rootKey=e,this._globalState=r,this.setValue(t);}evaluate(){return this._literalValue??this._compiledValue.evaluate({});}setValue(t){if(t==null||t==="visible"||t==="none"){this._literalValue=t==="none"?"none":"visible",this._compiledValue=void 0,this._globalStateRefs=new Set();return;}let e=Ke(t,this._rootKey,Im,this._globalState);if(e.result==="error")throw this._literalValue="visible",this._compiledValue=void 0,Error(e.value.map(r=>`${r.key}: ${r.message}`).join(", "));this._literalValue=void 0,this._compiledValue=e.value,this._globalStateRefs=dn(e.value.expression);}getGlobalStateRefs(){return this._globalStateRefs;}};function Mm(t,e,r){return new Cm(t,e,r);}var Ih=Ht,c5=new Set(Object.keys(D).filter(t=>t.startsWith("source_")).map(t=>t.slice(7).replaceAll("_","-")));function Bm(t,e){let r=!1;for(let i of e){if(i.severity==="warning"){Mt(i.message);continue;}t.fire(new ua(Error(i.message))),r=!0;}return r;}function Pm(t,e,r,i){return i?.validate!==!1&&Bm(t,e({styleSpec:D,...r}));}var ao=class Cf{constructor(e,r,i){let n=this.cells=[];if(e instanceof ArrayBuffer){this.arrayBuffer=e;let s=new Int32Array(this.arrayBuffer);e=s[0],r=s[1],i=s[2],this.d=r+2*i;for(let u=0;u<this.d*this.d;u++){let h=s[3+u],c=s[3+u+1];n.push(h===c?null:s.subarray(h,c));}let o=s[3+n.length],l=s[3+n.length+1];this.keys=s.subarray(o,l),this.bboxes=s.subarray(l),this.insert=this._insertReadonly;}else{this.d=r+2*i;for(let s=0;s<this.d*this.d;s++)n.push([]);this.keys=[],this.bboxes=[];}this.n=r,this.extent=e,this.padding=i,this.scale=r/e,this.uid=0;let a=i/r*e;this.min=-a,this.max=e+a;}insert(e,r,i,n,a){this._forEachCell(r,i,n,a,this._insertCell,this.uid++,void 0,void 0),this.keys.push(e),this.bboxes.push(r),this.bboxes.push(i),this.bboxes.push(n),this.bboxes.push(a);}_insertReadonly(){throw Error("Cannot insert into a GridIndex created from an ArrayBuffer.");}_insertCell(e,r,i,n,a,s){this.cells[a].push(s);}query(e,r,i,n,a){let s=this.min,o=this.max;if(e<=s&&r<=s&&o<=i&&o<=n&&!a)return[...this.keys];{let l=[];return this._forEachCell(e,r,i,n,this._queryCell,l,{},a),l;}}_queryCell(e,r,i,n,a,s,o,l){let u=this.cells[a];if(u!==null){let h=this.keys,c=this.bboxes;for(let p of u)if(o[p]===void 0){let f=p*4;(l?l(c[f+0],c[f+1],c[f+2],c[f+3]):e<=c[f+2]&&r<=c[f+3]&&i>=c[f+0]&&n>=c[f+1])?(o[p]=!0,s.push(h[p])):o[p]=!1;}}}_forEachCell(e,r,i,n,a,s,o,l){let u=this._convertToCellCoord(e),h=this._convertToCellCoord(r),c=this._convertToCellCoord(i),p=this._convertToCellCoord(n);for(let f=u;f<=c;f++)for(let d=h;d<=p;d++){let y=this.d*d+f;if((!l||l(this._convertFromCellCoord(f),this._convertFromCellCoord(d),this._convertFromCellCoord(f+1),this._convertFromCellCoord(d+1)))&&a.call(this,e,r,i,n,y,s,o,l))return;}}_convertFromCellCoord(e){return(e-this.padding)/this.scale;}_convertToCellCoord(e){return Math.max(0,Math.min(this.d-1,Math.floor(e*this.scale)+this.padding));}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;let e=this.cells,r=3+this.cells.length+1+1,i=0;for(let s of this.cells)i+=s.length;let n=new Int32Array(r+i+this.keys.length+this.bboxes.length);n[0]=this.extent,n[1]=this.n,n[2]=this.padding;let a=r;for(let s=0;s<e.length;s++){let o=e[s];n[3+s]=a,n.set(o,a),a+=o.length;}return n[3+e.length]=a,n.set(this.keys,a),a+=this.keys.length,n[3+e.length+1]=a,n.set(this.bboxes,a),a+=this.bboxes.length,n.buffer;}static serialize(e,r){let i=e.toArrayBuffer();return r&&r.push(i),{buffer:i};}static deserialize(e){return new Cf(e.buffer);}},ke={};function I(t,e,r={}){if(ke[t])throw Error(`${t} is already registered.`);Object.defineProperty(e,"_classRegistryKey",{value:t,writeable:!1}),ke[t]={klass:e,omit:r.omit||[],shallow:r.shallow||[]};}I("Object",Object),I("Set",Set),I("TransferableGridIndex",ao),I("Color",gt),I("Error",Error),I("AJAXError",la),I("ResolvedImage",we),I("StylePropertyFunction",uf),I("StyleExpression",El,{omit:["_evaluator"]}),I("ZoomDependentExpression",da),I("ZoomConstantExpression",Qi),I("CompoundExpression",xr,{omit:["_evaluate"]});for(let t in qr)qr[t]._classRegistryKey||I(`Expression_${t}`,qr[t]);function Mf(t){return t&&typeof ArrayBuffer<"u"&&(t instanceof ArrayBuffer||t.constructor?.name==="ArrayBuffer");}function Cl(t){let e=t.constructor;return t.$name||e._classRegistryKey;}function zm(t){if(typeof t!="object"||!t)return!1;let e=Cl(t);return e&&e!=="Object";}function Bf(t){return!zm(t)&&(t==null||typeof t=="boolean"||typeof t=="number"||typeof t=="string"||t instanceof Boolean||t instanceof Number||t instanceof String||t instanceof Date||t instanceof RegExp||t instanceof Blob||t instanceof Error||Mf(t)||Aa(t)||ArrayBuffer.isView(t)||t instanceof ImageData);}function Ui(t,e){if(Bf(t))return(Mf(t)||Aa(t))&&e&&e.push(t),ArrayBuffer.isView(t)&&e&&e.push(t.buffer),t instanceof ImageData&&e&&e.push(t.data.buffer),t;if(Array.isArray(t)){let a=[];for(let s of t)a.push(Ui(s,e));return a;}if(typeof t!="object")throw Error(`can\'t serialize object of type ${typeof t}`);let r=Cl(t);if(!r)throw Error(`can\'t serialize object of unregistered class ${t.constructor.name}`);if(!ke[r])throw Error(`${r} is not registered.`);let{klass:i}=ke[r],n=i.serialize?i.serialize(t,e):{};if(i.serialize){if(n===e?.[e.length-1])throw Error("statically serialized object won\'t survive transfer of $name property");}else{for(let a in t){if(!t.hasOwnProperty(a)||ke[r].omit.includes(a))continue;let s=t[a];s!==void 0&&(n[a]=ke[r].shallow.includes(a)?s:Ui(s,e));}t instanceof Error&&(n.message=t.message);}if(n.$name)throw Error("$name property is reserved for worker serialization logic.");return r!=="Object"&&(n.$name=r),n;}function qi(t){if(Bf(t))return t;if(Array.isArray(t))return t.map(qi);if(typeof t!="object")throw Error(`can\'t deserialize object of type ${typeof t}`);let e=Cl(t)||"Object";if(!ke[e])throw Error(`can\'t deserialize unregistered class ${e}`);let{klass:r}=ke[e];if(!r)throw Error(`can\'t deserialize unregistered class ${e}`);if(r.deserialize)return r.deserialize(t);let i=Object.create(r.prototype);for(let n of Object.keys(t)){if(n==="$name")continue;let a=t[n];i[n]=ke[e].shallow.includes(n)?a:qi(a);}return i;}var Ch=class{constructor(){this.first=!0;}update(t,e){let r=Math.floor(t);return this.first?(this.first=!1,this.lastIntegerZoom=r,this.lastIntegerZoomTime=0,this.lastZoom=t,this.lastFloorZoom=r,!0):(this.lastFloorZoom>r?(this.lastIntegerZoom=r+1,this.lastIntegerZoomTime=e):this.lastFloorZoom<r&&(this.lastIntegerZoom=r,this.lastIntegerZoomTime=e),t!==this.lastZoom&&(this.lastZoom=t,this.lastFloorZoom=r,!0));}},at=class{constructor(t,e){this.zoom=t,e?(this.now=e.now||0,this.fadeDuration=e.fadeDuration||0,this.zoomHistory=e.zoomHistory||new Ch(),this.transition=e.transition||{}):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Ch(),this.transition={});}crossFadingFactor(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1);}getCrossfadeParameters(){let t=this.zoom,e=t-Math.floor(t),r=this.crossFadingFactor();return t>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:e+(1-e)*r}:{fromScale:.5,toScale:1,t:1-(1-r)*e};}},Ra=class{constructor(t,e,r,i){this.property=t,this.value=e,this.expression=am(e===void 0?t.specification.default:e,r,t.specification,i);}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite";}getGlobalStateRefs(){return this.expression.globalStateRefs||new Set();}possiblyEvaluate(t,e,r){return this.property.possiblyEvaluate(this,t,e,r);}},so=class{constructor(t,e,r){this.property=t,this.value=new Ra(t,void 0,e,r);}transitioned(t,e){return e.value===this.value?e:new Mh(this.property,this.value,e,Ut({},t.transition,this.transition),t.now);}untransitioned(){return new Mh(this.property,this.value,null,{},0);}},Lm=class{constructor(t,e,r){this._properties=t,this._values=Object.create(t.defaultTransitionablePropertyValues),this._globalState=r,this._rootKey=e;}_propertyRootKey(t){return`${this._rootKey}.${String(t)}`;}hasProperty(t){return t in this._properties.defaultTransitionablePropertyValues;}getValue(t){return Xe(this._values[t].value.value);}setValue(t,e){Object.hasOwn(this._values,t)||(this._values[t]=new so(this._values[t].property,this._propertyRootKey(t),this._globalState)),this._values[t].value=new Ra(this._values[t].property,e===null?void 0:Xe(e),this._propertyRootKey(t),this._globalState);}setValues(t){for(let e in t){let r=t[e];e.endsWith("-transition")?this.setTransition(e.slice(0,-11),r):Xs(this._values[e].value.value,r)||this.setValue(e,r);}}getTransition(t){return Xe(this._values[t].transition);}setTransition(t,e){Object.hasOwn(this._values,t)||(this._values[t]=new so(this._values[t].property,this._propertyRootKey(t),this._globalState)),this._values[t].transition=Xe(e)||void 0;}serialize(){let t={};for(let e of Object.keys(this._values)){let r=this.getValue(e);r!==void 0&&(t[e]=r);let i=this.getTransition(e);i!==void 0&&(t[`${e}-transition`]=i);}return t;}transitioned(t,e){let r=new Bh(this._properties);for(let i of Object.keys(this._values))r._values[i]=this._values[i].transitioned(t,e._values[i]);return r;}untransitioned(){let t=new Bh(this._properties);for(let e of Object.keys(this._values))t._values[e]=this._values[e].untransitioned();return t;}},Mh=class{constructor(t,e,r,i,n){this.property=t,this.value=e,this.begin=n+i.delay||0,this.end=this.begin+i.duration||0,t.specification.transition&&(i.delay||i.duration)&&(this.prior=r);}possiblyEvaluate(t,e,r){let i=t.now||0,n=this.value.possiblyEvaluate(t,e,r),a=this.prior;if(!a)return n;if(i>this.end||this.value.isDataDriven())return this.prior=null,n;if(i<this.begin)return a.possiblyEvaluate(t,e,r);{let s=(i-this.begin)/(this.end-this.begin);return this.property.interpolate(a.possiblyEvaluate(t,e,r),n,w1(s));}}},Bh=class{constructor(t){this._properties=t,this._values=Object.create(t.defaultTransitioningPropertyValues);}possiblyEvaluate(t,e,r){let i=new $a(this._properties);for(let n of Object.keys(this._values))i._values[n]=this._values[n].possiblyEvaluate(t,e,r);return i;}hasTransition(){for(let t of Object.keys(this._values))if(this._values[t].prior)return!0;return!1;}},Vm=class{constructor(t,e,r){this._properties=t,this._values=Object.create(t.defaultPropertyValues),this._globalState=r,this._rootKey=e;}_propertyRootKey(t){return`${this._rootKey}.${String(t)}`;}hasValue(t){return this._values[t].value!==void 0;}hasProperty(t){return t in this._properties.defaultPropertyValues;}getValue(t){return Xe(this._values[t].value);}setValue(t,e){this._values[t]=new Ra(this._values[t].property,e===null?void 0:Xe(e),this._propertyRootKey(t),this._globalState);}serialize(){let t={};for(let e of Object.keys(this._values)){let r=this.getValue(e);r!==void 0&&(t[e]=r);}return t;}possiblyEvaluate(t,e,r){let i=new $a(this._properties);for(let n of Object.keys(this._values))i._values[n]=this._values[n].possiblyEvaluate(t,e,r);return i;}},ie=class{constructor(t,e,r){this.property=t,this.value=e,this.parameters=r;}isConstant(){return this.value.kind==="constant";}constantOr(t){return this.value.kind==="constant"?this.value.value:t;}evaluate(t,e,r,i){return this.property.evaluate(this.value,this.parameters,t,e,r,i);}},$a=class{constructor(t){this._properties=t,this._values=Object.create(t.defaultPossiblyEvaluatedValues);}get(t){return this._values[t];}};function Ph(t){if(Array.isArray(t))return t.length;let e=t?.values;return Array.isArray(e)?e.length:void 0;}function Pf(t,e){let r=Ph(t),i=Ph(e);return r!==void 0&&i!==void 0&&r!==i;}var V=class{constructor(t,e){this.specification=t,this.name=e;}possiblyEvaluate(t,e){if(t.isDataDriven())throw Error("Value should not be data driven");return t.expression.evaluate(e);}interpolate(t,e,r){if(Pf(t,e))return Mt(`Property "${this.name}" is trying to interpolate arrays of different lengths. Rendering may \'jump\'.`),e;let i=this.specification.type,n=pr[i];return n?n(t,e,r):t;}},U=class{constructor(t,e,r){this.specification=t,this.name=e,this.overrides=r;}possiblyEvaluate(t,e,r,i){return t.expression.kind==="constant"||t.expression.kind==="camera"?new ie(this,{kind:"constant",value:t.expression.evaluate(e,null,{},r,i)},e):new ie(this,t.expression,e);}interpolate(t,e,r){if(t.value.kind!=="constant"||e.value.kind!=="constant")return t;if(t.value.value===void 0||e.value.value===void 0)return new ie(this,{kind:"constant",value:void 0},t.parameters);if(Pf(t.value.value,e.value.value))return Mt(`Property "${this.name}" is trying to interpolate arrays of different lengths. Rendering may \'jump\'.`),e;let i=this.specification.type,n=pr[i];if(n){let a=n(t.value.value,e.value.value,r);return new ie(this,{kind:"constant",value:a},t.parameters);}return t;}evaluate(t,e,r,i,n,a){return t.kind==="constant"?t.value:t.evaluate(e,r,i,n,a);}},en=class extends U{possiblyEvaluate(t,e,r,i){if(t.value===void 0)return new ie(this,{kind:"constant",value:void 0},e);if(t.expression.kind==="constant"){let n=t.expression.evaluate(e,null,{},r,i),a=t.property.specification.type==="resolvedImage"&&typeof n!="string"?n.name:n,s=this._calculate(a,a,a,e);return new ie(this,{kind:"constant",value:s},e);}if(t.expression.kind==="camera"){let n=this._calculate(t.expression.evaluate({zoom:e.zoom-1}),t.expression.evaluate({zoom:e.zoom}),t.expression.evaluate({zoom:e.zoom+1}),e);return new ie(this,{kind:"constant",value:n},e);}return new ie(this,t.expression,e);}evaluate(t,e,r,i,n,a){if(t.kind==="source"){let s=t.evaluate(e,r,i,n,a);return this._calculate(s,s,s,e);}return t.kind==="composite"?this._calculate(t.evaluate({zoom:Math.floor(e.zoom)-1},r,i),t.evaluate({zoom:Math.floor(e.zoom)},r,i),t.evaluate({zoom:Math.floor(e.zoom)+1},r,i),e):t.value;}_calculate(t,e,r,i){return i.zoom>i.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e};}interpolate(t){return t;}},zf=class{constructor(t,e){this.specification=t,this.name=e;}possiblyEvaluate(t,e,r,i){if(t.value!==void 0){if(t.expression.kind==="constant"){let n=t.expression.evaluate(e,null,{},r,i);return this._calculate(n,n,n,e);}return this._calculate(t.expression.evaluate(new at(Math.floor(e.zoom-1),e)),t.expression.evaluate(new at(Math.floor(e.zoom),e)),t.expression.evaluate(new at(Math.floor(e.zoom+1),e)),e);}}_calculate(t,e,r,i){return i.zoom>i.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:r,to:e};}interpolate(t){return t;}},Na=class{constructor(t,e){this.specification=t,this.name=e;}possiblyEvaluate(t,e,r,i){return!!t.expression.evaluate(e,null,{},r,i);}interpolate(){return!1;}},qt=class{constructor(t){this.properties=t,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let e in t){let r=t[e];r.specification.overridable&&this.overridableProperties.push(e);let i=this.defaultPropertyValues[e]=new Ra(r,void 0,r.name,void 0),n=this.defaultTransitionablePropertyValues[e]=new so(r,r.name,void 0);this.defaultTransitioningPropertyValues[e]=n.untransitioned(),this.defaultPossiblyEvaluatedValues[e]=i.possiblyEvaluate({});}}};I("DataDrivenProperty",U),I("DataConstantProperty",V),I("CrossFadedDataDrivenProperty",en),I("CrossFadedProperty",zf),I("ColorRampProperty",Na);var zh=" is a PAINT property not a LAYOUT property. Use get/setPaintProperty instead?",Bs=" is a LAYOUT property not a PAINT property. Use get/setLayoutProperty instead?",ce=class extends P1{constructor(t,e,r){if(super(),this.id=t.id,this.type=t.type,this._globalState=r,this._featureFilter={filter:()=>!0,needGeometry:!1,getGlobalStateRefs:()=>new Set()},this._visibilityExpression=Mm(this.visibility,`layers[${this.id}].layout.visibility`,r),t.type!=="custom"&&(this.metadata=t.metadata,this.minzoom=t.minzoom,this.maxzoom=t.maxzoom,t.type!=="background"&&(this.source=t.source,this.sourceLayer=t["source-layer"],this.filter=t.filter,this._featureFilter=ei(t.filter,`layers[${this.id}].filter`,r)),e.layout&&(this._unevaluatedLayout=new Vm(e.layout,`layers[${this.id}].layout`,r)),e.paint)){this._transitionablePaint=new Lm(e.paint,`layers[${this.id}].paint`,r);for(let i in t.paint)this.setPaintProperty(i,t.paint[i],{validate:!1});for(let i in t.layout)this.setLayoutProperty(i,t.layout[i],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new $a(e.paint);}}setFilter(t){this.filter=t,this._featureFilter=ei(t,`layers[${this.id}].filter`,this._globalState);}getCrossfadeParameters(){return this._crossfadeParameters;}getLayoutProperty(t){if(t==="visibility")return this.visibility;if(this._transitionablePaint?.hasProperty(t))throw Error(t+zh);if(!this._unevaluatedLayout)throw Error(`Cannot get layout property "${t}" on layer type "${this.type}" which has no layout properties.`);return this._unevaluatedLayout.getValue(t);}getLayoutAffectingGlobalStateRefs(){let t=new Set();for(let e of this._visibilityExpression.getGlobalStateRefs())t.add(e);if(this._unevaluatedLayout)for(let e in this._unevaluatedLayout._values){let r=this._unevaluatedLayout._values[e];for(let i of r.getGlobalStateRefs())t.add(i);}for(let e of this._featureFilter.getGlobalStateRefs())t.add(e);return t;}getPaintAffectingGlobalStateRefs(){let t=new globalThis.Map();if(this._transitionablePaint)for(let e in this._transitionablePaint._values){let r=this._transitionablePaint._values[e].value;for(let i of r.getGlobalStateRefs()){let n=t.get(i)??[];n.push({name:e,value:r.value}),t.set(i,n);}}return t;}getVisibilityAffectingGlobalStateRefs(){return this._visibilityExpression.getGlobalStateRefs();}setLayoutProperty(t,e,r={}){if(t==="visibility"){this.visibility=e,this._visibilityExpression.setValue(e),this.recalculateVisibility();return;}if(this._transitionablePaint?.hasProperty(t)){this.fire(new ua(Error(t+zh)));return;}e!=null&&this._validate(Ih.layoutProperty,`layers.${this.id}.layout.${t}`,t,e,r)||this._unevaluatedLayout.setValue(t,e);}getPaintProperty(t){if(t.endsWith("-transition")){let e=t.slice(0,-11);if(e==="visibility"||this._unevaluatedLayout?.hasProperty(e))throw Error(t+Bs);return this._transitionablePaint.getTransition(e);}if(t==="visibility"||this._unevaluatedLayout?.hasProperty(t))throw Error(t+Bs);return this._transitionablePaint.getValue(t);}setPaintProperty(t,e,r={}){if(t==="visibility"||this._unevaluatedLayout?.hasProperty(t))return this.fire(new ua(Error(t+Bs))),!1;if(e!=null&&this._validate(Ih.paintProperty,`layers.${this.id}.paint.${t}`,t,e,r))return!1;if(t.endsWith("-transition"))return this._transitionablePaint.setTransition(t.slice(0,-11),e||void 0),!1;{let i=this._transitionablePaint._values[t],n=i.property.specification["property-type"]==="cross-faded-data-driven",a=i.value.isDataDriven(),s=i.value;this._transitionablePaint.setValue(t,e),this._handleSpecialPaintPropertyUpdate(t);let o=this._transitionablePaint._values[t].value;return o.isDataDriven()||a||n||this._handleOverridablePaintPropertyUpdate(t,s,o);}}_handleSpecialPaintPropertyUpdate(t){}_handleOverridablePaintPropertyUpdate(t,e,r){return!1;}isHidden(t=this.minzoom,e=!1){return this.minzoom&&t<(e?Math.floor(this.minzoom):this.minzoom)||this.maxzoom&&t>=this.maxzoom?!0:this._evaluatedVisibility==="none";}updateTransitions(t){this._transitioningPaint=this._transitionablePaint.transitioned(t,this._transitioningPaint);}hasTransition(){return this._transitioningPaint.hasTransition();}recalculateVisibility(){this._evaluatedVisibility=this._visibilityExpression.evaluate();}recalculate(t,e){t.getCrossfadeParameters&&(this._crossfadeParameters=t.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(t,void 0,e)),this.paint=this._transitioningPaint.possiblyEvaluate(t,void 0,e);}serialize(){let t={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout?.serialize(),paint:this._transitionablePaint?.serialize()};return this.visibility&&(t.layout||={},t.layout.visibility=this.visibility),S1(t,(e,r)=>e!==void 0&&!(r==="layout"&&!Object.keys(e).length)&&!(r==="paint"&&!Object.keys(e).length));}_validate(t,e,r,i,n={}){return Pm(this,t,{key:e,layerType:this.type,objectKey:r,value:i},n);}is3D(){return!1;}isTileClipped(){return!1;}hasOffscreenPass(){return!1;}resize(){}isStateDependent(){for(let t in this.paint._values){let e=this.paint.get(t);if(e instanceof ie&&Qr(e.property.specification)&&(e.value.kind==="source"||e.value.kind==="composite")&&e.value.isStateDependent)return!0;}return!1;}},Om,Rm=()=>Om||=new qt({"raster-opacity":new V(D.paint_raster["raster-opacity"],"raster-opacity"),"raster-hue-rotate":new V(D.paint_raster["raster-hue-rotate"],"raster-hue-rotate"),"raster-brightness-min":new V(D.paint_raster["raster-brightness-min"],"raster-brightness-min"),"raster-brightness-max":new V(D.paint_raster["raster-brightness-max"],"raster-brightness-max"),"raster-saturation":new V(D.paint_raster["raster-saturation"],"raster-saturation"),"raster-contrast":new V(D.paint_raster["raster-contrast"],"raster-contrast"),resampling:new V(D.paint_raster.resampling,"resampling"),"raster-resampling":new V(D.paint_raster["raster-resampling"],"raster-resampling"),"raster-fade-duration":new V(D.paint_raster["raster-fade-duration"],"raster-fade-duration")}),$m={get paint(){return Rm();}};var Nm=class extends ce{constructor(t,e){super(t,$m,e);}},Um={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},yn=class{constructor(t,e){this._structArray=t,this._pos1=e*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8;}},xt=class{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0);}static serialize(t,e){return t._trim(),e&&(t.isTransferred=!0,e.push(t.arrayBuffer)),{length:t.length,arrayBuffer:t.arrayBuffer};}static deserialize(t){let e=Object.create(this.prototype);return e.arrayBuffer=t.arrayBuffer,e.length=t.length,e.capacity=t.arrayBuffer.byteLength/e.bytesPerElement,e._refreshViews(),e;}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews());}clear(){this.length=0;}resize(t){this.reserve(t),this.length=t;}reserve(t){if(t>this.capacity){this.capacity=Math.max(t,Math.floor(this.capacity*5),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);let e=this.uint8;this._refreshViews(),e&&this.uint8.set(e);}}_refreshViews(){throw Error("_refreshViews() must be implemented by each concrete StructArray layout");}freeBufferAfterUpload(){this.arrayBuffer=new ArrayBuffer(0),this._refreshViews();}};function At(t,e=1){let r=0,i=0;return{members:t.map(n=>{let a=qm(n.type),s=r=Lh(r,Math.max(e,a)),o=n.components||1;return i=Math.max(i,a),r+=a*o,{name:n.name,type:n.type,components:o,offset:s};}),size:Lh(r,Math.max(i,e)),alignment:e};}function qm(t){return Um[t].BYTES_PER_ELEMENT;}function Lh(t,e){return Math.ceil(t/e)*e;}var rn=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e){let r=this.length;return this.resize(r+1),this.emplace(r,t,e);}emplace(t,e,r){let i=t*2;return this.int16[i+0]=e,this.int16[i+1]=r,t;}};rn.prototype.bytesPerElement=4,I("StructArrayLayout2i4",rn);var oo=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r){let i=this.length;return this.resize(i+1),this.emplace(i,t,e,r);}emplace(t,e,r,i){let n=t*3;return this.int16[n+0]=e,this.int16[n+1]=r,this.int16[n+2]=i,t;}};oo.prototype.bytesPerElement=6,I("StructArrayLayout3i6",oo);var Vh=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,i){let n=this.length;return this.resize(n+1),this.emplace(n,t,e,r,i);}emplace(t,e,r,i,n){let a=t*4;return this.int16[a+0]=e,this.int16[a+1]=r,this.int16[a+2]=i,this.int16[a+3]=n,t;}};Vh.prototype.bytesPerElement=8,I("StructArrayLayout4i8",Vh);var lo=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,i,n,a){let s=this.length;return this.resize(s+1),this.emplace(s,t,e,r,i,n,a);}emplace(t,e,r,i,n,a,s){let o=t*6;return this.int16[o+0]=e,this.int16[o+1]=r,this.int16[o+2]=i,this.int16[o+3]=n,this.int16[o+4]=a,this.int16[o+5]=s,t;}};lo.prototype.bytesPerElement=12,I("StructArrayLayout2i4i12",lo);var uo=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,i,n,a){let s=this.length;return this.resize(s+1),this.emplace(s,t,e,r,i,n,a);}emplace(t,e,r,i,n,a,s){let o=t*4,l=t*8;return this.int16[o+0]=e,this.int16[o+1]=r,this.uint8[l+4]=i,this.uint8[l+5]=n,this.uint8[l+6]=a,this.uint8[l+7]=s,t;}};uo.prototype.bytesPerElement=8,I("StructArrayLayout2i4ub8",uo);var nn=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e){let r=this.length;return this.resize(r+1),this.emplace(r,t,e);}emplace(t,e,r){let i=t*2;return this.float32[i+0]=e,this.float32[i+1]=r,t;}};nn.prototype.bytesPerElement=8,I("StructArrayLayout2f8",nn);var ho=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r,i,n,a,s,o,l,u){let h=this.length;return this.resize(h+1),this.emplace(h,t,e,r,i,n,a,s,o,l,u);}emplace(t,e,r,i,n,a,s,o,l,u,h){let c=t*10;return this.uint16[c+0]=e,this.uint16[c+1]=r,this.uint16[c+2]=i,this.uint16[c+3]=n,this.uint16[c+4]=a,this.uint16[c+5]=s,this.uint16[c+6]=o,this.uint16[c+7]=l,this.uint16[c+8]=u,this.uint16[c+9]=h,t;}};ho.prototype.bytesPerElement=20,I("StructArrayLayout10ui20",ho);var co=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r,i,n,a,s,o){let l=this.length;return this.resize(l+1),this.emplace(l,t,e,r,i,n,a,s,o);}emplace(t,e,r,i,n,a,s,o,l){let u=t*8;return this.uint16[u+0]=e,this.uint16[u+1]=r,this.uint16[u+2]=i,this.uint16[u+3]=n,this.uint16[u+4]=a,this.uint16[u+5]=s,this.uint16[u+6]=o,this.uint16[u+7]=l,t;}};co.prototype.bytesPerElement=16,I("StructArrayLayout8ui16",co);var po=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r,i,n,a,s,o,l,u,h,c,p){let f=this.length;return this.resize(f+1),this.emplace(f,t,e,r,i,n,a,s,o,l,u,h,c,p);}emplace(t,e,r,i,n,a,s,o,l,u,h,c,p,f){let d=t*14,y=t*7;return this.int16[d+0]=e,this.int16[d+1]=r,this.int16[d+2]=i,this.int16[d+3]=n,this.uint16[d+4]=a,this.uint16[d+5]=s,this.uint16[d+6]=o,this.uint16[d+7]=l,this.int16[d+8]=u,this.int16[d+9]=h,this.int16[d+10]=c,this.int16[d+11]=p,this.float32[y+6]=f,t;}};po.prototype.bytesPerElement=28,I("StructArrayLayout4i4ui4i1f28",po);var fo=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r){let i=this.length;return this.resize(i+1),this.emplace(i,t,e,r);}emplace(t,e,r,i){let n=t*3;return this.float32[n+0]=e,this.float32[n+1]=r,this.float32[n+2]=i,t;}};fo.prototype.bytesPerElement=12,I("StructArrayLayout3f12",fo);var yo=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer);}emplaceBack(t){let e=this.length;return this.resize(e+1),this.emplace(e,t);}emplace(t,e){let r=t*1;return this.uint32[r+0]=e,t;}};yo.prototype.bytesPerElement=4,I("StructArrayLayout1ul4",yo);var mo=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r,i,n,a,s,o,l){let u=this.length;return this.resize(u+1),this.emplace(u,t,e,r,i,n,a,s,o,l);}emplace(t,e,r,i,n,a,s,o,l,u){let h=t*10,c=t*5;return this.int16[h+0]=e,this.int16[h+1]=r,this.int16[h+2]=i,this.int16[h+3]=n,this.int16[h+4]=a,this.int16[h+5]=s,this.uint32[c+3]=o,this.uint16[h+8]=l,this.uint16[h+9]=u,t;}};mo.prototype.bytesPerElement=20,I("StructArrayLayout6i1ul2ui20",mo);var go=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,i,n,a){let s=this.length;return this.resize(s+1),this.emplace(s,t,e,r,i,n,a);}emplace(t,e,r,i,n,a,s){let o=t*6;return this.int16[o+0]=e,this.int16[o+1]=r,this.int16[o+2]=i,this.int16[o+3]=n,this.int16[o+4]=a,this.int16[o+5]=s,t;}};go.prototype.bytesPerElement=12,I("StructArrayLayout2i2i2i12",go);var Oh=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,i,n){let a=this.length;return this.resize(a+1),this.emplace(a,t,e,r,i,n);}emplace(t,e,r,i,n,a){let s=t*4,o=t*8;return this.float32[s+0]=e,this.float32[s+1]=r,this.float32[s+2]=i,this.int16[o+6]=n,this.int16[o+7]=a,t;}};Oh.prototype.bytesPerElement=16,I("StructArrayLayout2f1f2i16",Oh);var xo=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer);}emplaceBack(t,e,r,i,n,a){let s=this.length;return this.resize(s+1),this.emplace(s,t,e,r,i,n,a);}emplace(t,e,r,i,n,a,s){let o=t*16,l=t*4,u=t*8;return this.uint8[o+0]=e,this.uint8[o+1]=r,this.float32[l+1]=i,this.float32[l+2]=n,this.int16[u+6]=a,this.int16[u+7]=s,t;}};xo.prototype.bytesPerElement=16,I("StructArrayLayout2ub2f2i16",xo);var vo=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r){let i=this.length;return this.resize(i+1),this.emplace(i,t,e,r);}emplace(t,e,r,i){let n=t*3;return this.uint16[n+0]=e,this.uint16[n+1]=r,this.uint16[n+2]=i,t;}};vo.prototype.bytesPerElement=6,I("StructArrayLayout3ui6",vo);var bo=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r,i,n,a,s,o,l,u,h,c,p,f,d,y,m,g){let x=this.length;return this.resize(x+1),this.emplace(x,t,e,r,i,n,a,s,o,l,u,h,c,p,f,d,y,m,g);}emplace(t,e,r,i,n,a,s,o,l,u,h,c,p,f,d,y,m,g,x){let b=t*26,v=t*13,w=t*52;return this.int16[b+0]=e,this.int16[b+1]=r,this.uint16[b+2]=i,this.uint16[b+3]=n,this.uint32[v+2]=a,this.uint32[v+3]=s,this.uint32[v+4]=o,this.uint16[b+10]=l,this.uint16[b+11]=u,this.uint16[b+12]=h,this.float32[v+7]=c,this.float32[v+8]=p,this.uint8[w+36]=f,this.uint8[w+37]=d,this.uint8[w+38]=y,this.uint32[v+10]=m,this.int16[b+22]=g,this.float32[v+12]=x,t;}};bo.prototype.bytesPerElement=52,I("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i1f52",bo);var wo=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r,i,n,a,s,o,l,u,h,c,p,f,d,y,m,g,x,b,v,w,_,A,S,F,z,$,B){let P=this.length;return this.resize(P+1),this.emplace(P,t,e,r,i,n,a,s,o,l,u,h,c,p,f,d,y,m,g,x,b,v,w,_,A,S,F,z,$,B);}emplace(t,e,r,i,n,a,s,o,l,u,h,c,p,f,d,y,m,g,x,b,v,w,_,A,S,F,z,$,B,P){let E=t*34,O=t*17;return this.int16[E+0]=e,this.int16[E+1]=r,this.int16[E+2]=i,this.int16[E+3]=n,this.int16[E+4]=a,this.int16[E+5]=s,this.int16[E+6]=o,this.int16[E+7]=l,this.uint16[E+8]=u,this.uint16[E+9]=h,this.uint16[E+10]=c,this.uint16[E+11]=p,this.uint16[E+12]=f,this.uint16[E+13]=d,this.uint16[E+14]=y,this.uint16[E+15]=m,this.uint16[E+16]=g,this.uint16[E+17]=x,this.uint16[E+18]=b,this.uint16[E+19]=v,this.uint16[E+20]=w,this.uint16[E+21]=_,this.uint16[E+22]=A,this.uint32[O+12]=S,this.float32[O+13]=F,this.float32[O+14]=z,this.uint16[E+30]=$,this.uint16[E+31]=B,this.float32[O+16]=P,t;}};wo.prototype.bytesPerElement=68,I("StructArrayLayout8i15ui1ul2f2ui1f68",wo);var ma=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t){let e=this.length;return this.resize(e+1),this.emplace(e,t);}emplace(t,e){let r=t*1;return this.float32[r+0]=e,t;}};ma.prototype.bytesPerElement=4,I("StructArrayLayout1f4",ma);var Do=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r){let i=this.length;return this.resize(i+1),this.emplace(i,t,e,r);}emplace(t,e,r,i){let n=t*6,a=t*3;return this.uint16[n+0]=e,this.float32[a+1]=r,this.float32[a+2]=i,t;}};Do.prototype.bytesPerElement=12,I("StructArrayLayout1ui2f12",Do);var _o=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e,r){let i=this.length;return this.resize(i+1),this.emplace(i,t,e,r);}emplace(t,e,r,i){let n=t*2,a=t*4;return this.uint32[n+0]=e,this.uint16[a+2]=r,this.uint16[a+3]=i,t;}};_o.prototype.bytesPerElement=8,I("StructArrayLayout1ul2ui8",_o);var Ao=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t,e){let r=this.length;return this.resize(r+1),this.emplace(r,t,e);}emplace(t,e,r){let i=t*2;return this.uint16[i+0]=e,this.uint16[i+1]=r,t;}};Ao.prototype.bytesPerElement=4,I("StructArrayLayout2ui4",Ao);var Rh=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer);}emplaceBack(t){let e=this.length;return this.resize(e+1),this.emplace(e,t);}emplace(t,e){let r=t*1;return this.uint16[r+0]=e,t;}};Rh.prototype.bytesPerElement=2,I("StructArrayLayout1ui2",Rh);var So=class extends xt{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer);}emplaceBack(t,e,r,i){let n=this.length;return this.resize(n+1),this.emplace(n,t,e,r,i);}emplace(t,e,r,i,n){let a=t*4;return this.float32[a+0]=e,this.float32[a+1]=r,this.float32[a+2]=i,this.float32[a+3]=n,t;}};So.prototype.bytesPerElement=16,I("StructArrayLayout4f16",So);var Lf=class extends yn{get anchorPointX(){return this._structArray.int16[this._pos2+0];}get anchorPointY(){return this._structArray.int16[this._pos2+1];}get x1(){return this._structArray.int16[this._pos2+2];}get y1(){return this._structArray.int16[this._pos2+3];}get x2(){return this._structArray.int16[this._pos2+4];}get y2(){return this._structArray.int16[this._pos2+5];}get featureIndex(){return this._structArray.uint32[this._pos4+3];}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8];}get bucketIndex(){return this._structArray.uint16[this._pos2+9];}get anchorPoint(){return new M(this.anchorPointX,this.anchorPointY);}};Lf.prototype.size=20;var Ml=class extends mo{get(t){return new Lf(this,t);}};I("CollisionBoxArray",Ml);var Vf=class extends yn{get anchorX(){return this._structArray.int16[this._pos2+0];}get anchorY(){return this._structArray.int16[this._pos2+1];}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2];}get numGlyphs(){return this._structArray.uint16[this._pos2+3];}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2];}get lineStartIndex(){return this._structArray.uint32[this._pos4+3];}get lineLength(){return this._structArray.uint32[this._pos4+4];}get segment(){return this._structArray.uint16[this._pos2+10];}get lowerSize(){return this._structArray.uint16[this._pos2+11];}get upperSize(){return this._structArray.uint16[this._pos2+12];}get lineOffsetX(){return this._structArray.float32[this._pos4+7];}get lineOffsetY(){return this._structArray.float32[this._pos4+8];}get writingMode(){return this._structArray.uint8[this._pos1+36];}get placedOrientation(){return this._structArray.uint8[this._pos1+37];}set placedOrientation(t){this._structArray.uint8[this._pos1+37]=t;}get hidden(){return this._structArray.uint8[this._pos1+38];}set hidden(t){this._structArray.uint8[this._pos1+38]=t;}get crossTileID(){return this._structArray.uint32[this._pos4+10];}set crossTileID(t){this._structArray.uint32[this._pos4+10]=t;}get associatedIconIndex(){return this._structArray.int16[this._pos2+22];}get heightOffset(){return this._structArray.float32[this._pos4+12];}};Vf.prototype.size=52;var Of=class extends bo{get(t){return new Vf(this,t);}};I("PlacedSymbolArray",Of);var Rf=class extends yn{get anchorX(){return this._structArray.int16[this._pos2+0];}get anchorY(){return this._structArray.int16[this._pos2+1];}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2];}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3];}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4];}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5];}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6];}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7];}get key(){return this._structArray.uint16[this._pos2+8];}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9];}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10];}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11];}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12];}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13];}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14];}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15];}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16];}get featureIndex(){return this._structArray.uint16[this._pos2+17];}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18];}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19];}get numIconVertices(){return this._structArray.uint16[this._pos2+20];}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21];}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22];}get crossTileID(){return this._structArray.uint32[this._pos4+12];}set crossTileID(t){this._structArray.uint32[this._pos4+12]=t;}get textBoxScale(){return this._structArray.float32[this._pos4+13];}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14];}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30];}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31];}get heightOffset(){return this._structArray.float32[this._pos4+16];}};Rf.prototype.size=68;var $f=class extends wo{get(t){return new Rf(this,t);}};I("SymbolInstanceArray",$f);var Nf=class extends ma{getoffsetX(t){return this.float32[t*1+0];}};I("GlyphOffsetArray",Nf);var Uf=class extends oo{getx(t){return this.int16[t*3+0];}gety(t){return this.int16[t*3+1];}gettileUnitDistanceFromAnchor(t){return this.int16[t*3+2];}};I("SymbolLineVertexArray",Uf);var qf=class extends yn{get textAnchor(){return this._structArray.uint16[this._pos2+0];}get textOffset0(){return this._structArray.float32[this._pos4+1];}get textOffset1(){return this._structArray.float32[this._pos4+2];}};qf.prototype.size=12;var jf=class extends Do{get(t){return new qf(this,t);}};I("TextAnchorOffsetArray",jf);var Gf=class extends yn{get featureIndex(){return this._structArray.uint32[this._pos4+0];}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2];}get bucketIndex(){return this._structArray.uint16[this._pos2+3];}};Gf.prototype.size=8;var Xf=class extends _o{get(t){return new Gf(this,t);}};I("FeatureIndexArray",Xf);var jm=class extends rn{};var Gm=class extends rn{},Xm=class extends rn{},Ym=class extends lo{},Wm=class extends uo{},Zm=class extends nn{},Br=class extends ho{},$h=class extends co{},Hm=class extends po{},Km=class extends fo{},Jm=class extends yo{},Nh=class extends go{};var Qm=class extends xo{};var mn=class extends vo{},Eo=class extends Ao{};var Fo=At([{name:"a_pos",components:2,type:"Int16"}],4),tg=Fo.members;Fo.size,Fo.alignment;var Jt=class Or{constructor(e=[]){this._forceNewSegmentOnNextPrepare=!1,this.segments=e;}prepareSegment(e,r,i,n){let a=this.segments[this.segments.length-1];return e>Or.MAX_VERTEX_ARRAY_LENGTH&&Mt(`Max vertices per segment is ${Or.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${e}. Consider using the \\`fillLargeMeshArrays\\` function if you require meshes with more than ${Or.MAX_VERTEX_ARRAY_LENGTH} vertices.`),this._forceNewSegmentOnNextPrepare||!a||a.vertexLength+e>Or.MAX_VERTEX_ARRAY_LENGTH||a.sortKey!==n?this.createNewSegment(r,i,n):a;}createNewSegment(e,r,i){let n={vertexOffset:e.length,primitiveOffset:r.length,vertexLength:0,primitiveLength:0,vaos:{}};return i!==void 0&&(n.sortKey=i),this._forceNewSegmentOnNextPrepare=!1,this.segments.push(n),n;}getOrCreateLatestSegment(e,r,i){return this.prepareSegment(0,e,r,i);}forceNewSegmentOnNextPrepare(){this._forceNewSegmentOnNextPrepare=!0;}get(){return this.segments;}destroy(){for(let e of this.segments)for(let r in e.vaos)e.vaos[r].destroy();}static simpleSegment(e,r,i,n){return new Or([{vertexOffset:e,primitiveOffset:r,vertexLength:i,primitiveLength:n,vaos:{},sortKey:0}]);}};Jt.MAX_VERTEX_ARRAY_LENGTH=2**16-1,I("SegmentVector",Jt);function Uh(t,e){return t=Yi(Math.floor(t),0,255),e=Yi(Math.floor(e),0,255),256*t+e;}var eg=At([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]),rg=At([{name:"a_dasharray_from",components:4,type:"Uint16"},{name:"a_dasharray_to",components:4,type:"Uint16"}]),ig=ul((t,e)=>{function r(i,n){for(var a=i.length&3,s=i.length-a,o=n,l,u=3432918353,h=461845907,c,p=0;p<s;)c=i.charCodeAt(p)&255|(i.charCodeAt(++p)&255)<<8|(i.charCodeAt(++p)&255)<<16|(i.charCodeAt(++p)&255)<<24,++p,c=(c&65535)*u+(((c>>>16)*u&65535)<<16)&4294967295,c=c<<15|c>>>17,c=(c&65535)*h+(((c>>>16)*h&65535)<<16)&4294967295,o^=c,o=o<<13|o>>>19,l=(o&65535)*5+(((o>>>16)*5&65535)<<16)&4294967295,o=(l&65535)+27492+(((l>>>16)+58964&65535)<<16);switch(c=0,a){case 3:c^=(i.charCodeAt(p+2)&255)<<16;case 2:c^=(i.charCodeAt(p+1)&255)<<8;case 1:c^=i.charCodeAt(p)&255,c=(c&65535)*u+(((c>>>16)*u&65535)<<16)&4294967295,c=c<<15|c>>>17,c=(c&65535)*h+(((c>>>16)*h&65535)<<16)&4294967295,o^=c;}return o^=i.length,o^=o>>>16,o=(o&65535)*2246822507+(((o>>>16)*2246822507&65535)<<16)&4294967295,o^=o>>>13,o=(o&65535)*3266489909+(((o>>>16)*3266489909&65535)<<16)&4294967295,o^=o>>>16,o>>>0;}e!==void 0&&(e.exports=r);}),ng=ul((t,e)=>{function r(i,n){for(var a=i.length,s=n^a,o=0,l;a>=4;)l=i.charCodeAt(o)&255|(i.charCodeAt(++o)&255)<<8|(i.charCodeAt(++o)&255)<<16|(i.charCodeAt(++o)&255)<<24,l=(l&65535)*1540483477+(((l>>>16)*1540483477&65535)<<16),l^=l>>>24,l=(l&65535)*1540483477+(((l>>>16)*1540483477&65535)<<16),s=(s&65535)*1540483477+(((s>>>16)*1540483477&65535)<<16)^l,a-=4,++o;switch(a){case 3:s^=(i.charCodeAt(o+2)&255)<<16;case 2:s^=(i.charCodeAt(o+1)&255)<<8;case 1:s^=i.charCodeAt(o)&255,s=(s&65535)*1540483477+(((s>>>16)*1540483477&65535)<<16);}return s^=s>>>13,s=(s&65535)*1540483477+(((s>>>16)*1540483477&65535)<<16),s^=s>>>15,s>>>0;}e.exports=r;}),To=s1(ul((t,e)=>{var r=ig(),i=ng();e.exports=r,e.exports.murmur3=r,e.exports.murmur2=i;})(),1),Yf=class Wf{constructor(){this.ids=[],this.positions=[],this.indexed=!1;}add(e,r,i,n){this.ids.push(qh(e)),this.positions.push(r,i,n);}getPositions(e){if(!this.indexed)throw Error("Trying to get index, but feature positions are not indexed");let r=qh(e),i=0,n=this.ids.length-1;for(;i<n;){let s=i+n>>1;this.ids[s]>=r?n=s:i=s+1;}let a=[];for(;this.ids[i]===r;){let s=this.positions[3*i],o=this.positions[3*i+1],l=this.positions[3*i+2];a.push({index:s,start:o,end:l}),i++;}return a;}static serialize(e,r){let i=new Float64Array(e.ids),n=new Uint32Array(e.positions);return ko(i,n,0,i.length-1),r&&r.push(i.buffer,n.buffer),{ids:i,positions:n};}static deserialize(e){let r=new Wf();return r.ids=e.ids,r.positions=e.positions,r.indexed=!0,r;}};function qh(t){let e=+t;return!isNaN(e)&&e<=2**53-1?e:(0,To.default)(String(t));}function ko(t,e,r,i){for(;r<i;){let n=t[r+i>>1],a=r-1,s=i+1;for(;;){do a++;while(t[a]<n);do s--;while(t[s]>n);if(a>=s)break;Nn(t,a,s),Nn(e,3*a,3*s),Nn(e,3*a+1,3*s+1),Nn(e,3*a+2,3*s+2);}s-r<i-s?(ko(t,e,r,s),r=s+1):(ko(t,e,s+1,i),i=s);}}function Nn(t,e,r){let i=t[e];t[e]=t[r],t[r]=i;}I("FeaturePositionMap",Yf);var Bl=class{constructor(t,e){this.gl=t.gl,this.location=e;}};var Pl=class extends Bl{constructor(t,e){super(t,e),this.current=0;}set(t){this.current!==t&&(this.current=t,this.gl.uniform1f(this.location,t));}};var ag=class extends Bl{constructor(t,e){super(t,e),this.current=[0,0,0,0];}set(t){(t[0]!==this.current[0]||t[1]!==this.current[1]||t[2]!==this.current[2]||t[3]!==this.current[3])&&(this.current=t,this.gl.uniform4f(this.location,t[0],t[1],t[2],t[3]));}},sg=class extends Bl{constructor(t,e){super(t,e),this.current=gt.transparent;}set(t){(t.r!==this.current.r||t.g!==this.current.g||t.b!==this.current.b||t.a!==this.current.a)&&(this.current=t,this.gl.uniform4f(this.location,t.r,t.g,t.b,t.a));}};var p5=new Float32Array(16);function Io(t){return[Uh(255*t.r,255*t.g),Uh(255*t.b,255*t.a)];}var zi=class{constructor(t,e,r){this.value=t,this.uniformNames=e.map(i=>`u_${i}`),this.type=r;}setUniform(t,e,r){t.set(r.constantOr(this.value));}getBinding(t,e,r){return this.type==="color"?new sg(t,e):new Pl(t,e);}},ar=class{constructor(t,e){this.uniformNames=e.map(r=>`u_${r}`),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1;}setConstantPatternPositions(t,e){this.pixelRatioFrom=e.pixelRatio,this.pixelRatioTo=t.pixelRatio,this.patternFrom=e.tlbr,this.patternTo=t.tlbr;}setConstantDashPositions(t,e){this.dashTo=[0,t.y,t.height,t.width],this.dashFrom=[0,e.y,e.height,e.width];}setUniform(t,e,r,i){let n=null;i==="u_pattern_to"?n=this.patternTo:i==="u_pattern_from"?n=this.patternFrom:i==="u_dasharray_to"?n=this.dashTo:i==="u_dasharray_from"?n=this.dashFrom:i==="u_pixel_ratio_to"?n=this.pixelRatioTo:i==="u_pixel_ratio_from"&&(n=this.pixelRatioFrom),n!==null&&t.set(n);}getBinding(t,e,r){return r.startsWith("u_pattern")||r.startsWith("u_dasharray_")?new ag(t,e):new Pl(t,e);}},Ee=class{constructor(t,e,r,i){this.expression=t,this.type=r,this.maxValue=0,this.paintVertexAttributes=e.map(n=>({name:`a_${n}`,type:"Float32",components:r==="color"?2:1,offset:0})),this.paintVertexArray=new i();}populatePaintArray(t,e,r){let i=this.paintVertexArray.length,n=this.expression.evaluate(new at(0,r),e,{},r.canonical,[],r.formattedSection);this.paintVertexArray.resize(t),this._setPaintValue(i,t,n);}updatePaintArray(t,e,r,i,n){let a=this.expression.evaluate(new at(0,n),r,i);this._setPaintValue(t,e,a);}_setPaintValue(t,e,r){if(this.type==="color"){let i=Io(r);for(let n=t;n<e;n++)this.paintVertexArray.emplace(n,i[0],i[1]);}else{for(let i=t;i<e;i++)this.paintVertexArray.emplace(i,r);this.maxValue=Math.max(this.maxValue,Math.abs(r));}}upload(t){this.paintVertexArray?.arrayBuffer.byteLength&&(this.paintVertexBuffer?.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=t.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent));}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy();}},oe=class{constructor(t,e,r,i,n,a){this.expression=t,this.uniformNames=e.map(s=>`u_${s}_t`),this.type=r,this.useIntegerZoom=i,this.zoom=n,this.maxValue=0,this.paintVertexAttributes=e.map(s=>({name:`a_${s}`,type:"Float32",components:r==="color"?4:2,offset:0})),this.paintVertexArray=new a();}populatePaintArray(t,e,r){let i=this.expression.evaluate(new at(this.zoom,r),e,{},r.canonical,[],r.formattedSection),n=this.expression.evaluate(new at(this.zoom+1,r),e,{},r.canonical,[],r.formattedSection),a=this.paintVertexArray.length;this.paintVertexArray.resize(t),this._setPaintValue(a,t,i,n);}updatePaintArray(t,e,r,i,n){let a=this.expression.evaluate(new at(this.zoom,n),r,i),s=this.expression.evaluate(new at(this.zoom+1,n),r,i);this._setPaintValue(t,e,a,s);}_setPaintValue(t,e,r,i){if(this.type==="color"){let n=Io(r),a=Io(i);for(let s=t;s<e;s++)this.paintVertexArray.emplace(s,n[0],n[1],a[0],a[1]);}else{for(let n=t;n<e;n++)this.paintVertexArray.emplace(n,r,i);this.maxValue=Math.max(this.maxValue,Math.abs(r),Math.abs(i));}}upload(t){this.paintVertexArray?.arrayBuffer.byteLength&&(this.paintVertexBuffer?.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=t.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent));}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy();}setUniform(t,e){let r=this.useIntegerZoom?Math.floor(e.zoom):e.zoom,i=Yi(this.expression.interpolationFactor(r,this.zoom,this.zoom+1),0,1);t.set(i);}getBinding(t,e,r){return new Pl(t,e);}},qe=class{constructor(t,e,r,i,n,a){this.expression=t,this.type=e,this.useIntegerZoom=r,this.zoom=i,this.layerId=a,this.zoomInPaintVertexArray=new n(),this.zoomOutPaintVertexArray=new n();}populatePaintArray(t,e,r){let i=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(t),this.zoomOutPaintVertexArray.resize(t),this._setPaintValues(i,t,this.getPositionIds(e),r);}updatePaintArray(t,e,r,i,n){this._setPaintValues(t,e,this.getPositionIds(r),n);}_setPaintValues(t,e,r,i){let n=this.getPositions(i);if(!n||!r)return;let a=n[r.min],s=n[r.mid],o=n[r.max];if(a&&s&&o)for(let l=t;l<e;l++)this.emplace(this.zoomInPaintVertexArray,l,a,s),this.emplace(this.zoomOutPaintVertexArray,l,o,s);}upload(t){if(this.zoomInPaintVertexArray?.arrayBuffer.byteLength&&this.zoomOutPaintVertexArray?.arrayBuffer.byteLength){let e=this.getVertexAttributes();this.zoomInPaintVertexBuffer=t.createVertexBuffer(this.zoomInPaintVertexArray,e,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=t.createVertexBuffer(this.zoomOutPaintVertexArray,e,this.expression.isStateDependent);}}destroy(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy();}},Zf=class extends qe{getPositions(t){return t.imagePositions;}getPositionIds(t){return t.patterns?.[this.layerId];}getVertexAttributes(){return eg.members;}emplace(t,e,r,i){t.emplace(e,r.tlbr[0],r.tlbr[1],r.tlbr[2],r.tlbr[3],i.tlbr[0],i.tlbr[1],i.tlbr[2],i.tlbr[3],r.pixelRatio,i.pixelRatio);}},Hf=class extends qe{getPositions(t){return t.dashPositions;}getPositionIds(t){return t.dashes?.[this.layerId];}getVertexAttributes(){return rg.members;}emplace(t,e,r,i){t.emplace(e,0,r.y,r.height,r.width,0,i.y,i.height,i.width);}},Kf=class{constructor(t,e,r){this.binders={},this._buffers=[];let i=[];for(let n in t.paint._values){if(!r(n))continue;let a=t.paint.get(n);if(!(a instanceof ie)||!Qr(a.property.specification))continue;let s=og(n,t.type),o=a.value,l=a.property.specification.type,u=a.property.useIntegerZoom,h=a.property.specification["property-type"],c=h==="cross-faded"||h==="cross-faded-data-driven";if(o.kind==="constant")this.binders[n]=c?new ar(o.value,s):new zi(o.value,s,l),i.push(`/u_${n}`);else if(o.kind==="source"||c){let p=jh(n,l,"source");this.binders[n]=c?n==="line-dasharray"?new Hf(o,l,u,e,p,t.id):new Zf(o,l,u,e,p,t.id):new Ee(o,s,l,p),i.push(`/a_${n}`);}else{let p=jh(n,l,"composite");this.binders[n]=new oe(o,s,l,u,e,p),i.push(`/z_${n}`);}}this.cacheKey=i.sort().join("");}getMaxValue(t){let e=this.binders[t];return e instanceof Ee||e instanceof oe?e.maxValue:0;}populatePaintArrays(t,e,r){for(let i in this.binders){let n=this.binders[i];(n instanceof Ee||n instanceof oe||n instanceof qe)&&n.populatePaintArray(t,e,r);}}setConstantPatternPositions(t,e){for(let r in this.binders){let i=this.binders[r];i instanceof ar&&i.setConstantPatternPositions(t,e);}}setConstantDashPositions(t,e){for(let r in this.binders){let i=this.binders[r];i instanceof ar&&i.setConstantDashPositions(t,e);}}updatePaintArrays(t,e,r,i,n){let a=!1;for(let s of t){let o=e.getPositions(s.id);for(let l of o){let u=r.feature(l.index);for(let h in this.binders){let c=this.binders[h];(c instanceof Ee||c instanceof oe||c instanceof qe)&&c.expression.isStateDependent===!0&&(c.expression=i.paint.get(h).value,c.updatePaintArray(l.start,l.end,u,s.state,n),a=!0);}}}return a;}defines(){let t=[];for(let e in this.binders){let r=this.binders[e];(r instanceof zi||r instanceof ar)&&t.push(...r.uniformNames.map(i=>`#define HAS_UNIFORM_${i}`));}return t;}getBinderAttributes(){let t=[];for(let e in this.binders){let r=this.binders[e];if(r instanceof Ee||r instanceof oe)for(let i of r.paintVertexAttributes)t.push(i.name);else if(r instanceof qe){let i=r.getVertexAttributes();for(let n of i)t.push(n.name);}}return t;}getBinderUniforms(){let t=[];for(let e in this.binders){let r=this.binders[e];if(r instanceof zi||r instanceof ar||r instanceof oe)for(let i of r.uniformNames)t.push(i);}return t;}getPaintVertexBuffers(){return this._buffers;}getUniforms(t,e){let r=[];for(let i in this.binders){let n=this.binders[i];if(n instanceof zi||n instanceof ar||n instanceof oe){for(let a of n.uniformNames)if(e[a]){let s=n.getBinding(t,e[a],a);r.push({name:a,property:i,binding:s});}}}return r;}setUniforms(t,e,r,i){for(let{name:n,property:a,binding:s}of e)this.binders[a].setUniform(s,i,r.get(a),n);}updatePaintBuffers(t){this._buffers=[];for(let e in this.binders){let r=this.binders[e];if(t&&r instanceof qe){let i=t.fromScale===2?r.zoomInPaintVertexBuffer:r.zoomOutPaintVertexBuffer;i&&this._buffers.push(i);}else(r instanceof Ee||r instanceof oe)&&r.paintVertexBuffer&&this._buffers.push(r.paintVertexBuffer);}}upload(t){for(let e in this.binders){let r=this.binders[e];(r instanceof Ee||r instanceof oe||r instanceof qe)&&r.upload(t);}this.updatePaintBuffers();}destroy(){for(let t in this.binders){let e=this.binders[t];(e instanceof Ee||e instanceof oe||e instanceof qe)&&e.destroy();}}},dr=class{constructor(t,e,r=()=>!0){this.programConfigurations={};for(let i of t)this.programConfigurations[i.id]=new Kf(i,e,r);this.needsUpload=!1,this._featureMap=new Yf(),this._bufferOffset=0;}populatePaintArrays(t,e,r,i){for(let n in this.programConfigurations)this.programConfigurations[n].populatePaintArrays(t,e,i);e.id!==void 0&&this._featureMap.add(e.id,r,this._bufferOffset,t),this._bufferOffset=t,this.needsUpload=!0;}updatePaintArrays(t,e,r,i){for(let n of r)this.needsUpload=this.programConfigurations[n.id].updatePaintArrays(t,this._featureMap,e,n,i)||this.needsUpload;}get(t){return this.programConfigurations[t];}upload(t){if(this.needsUpload){for(let e in this.programConfigurations)this.programConfigurations[e].upload(t);this.needsUpload=!1;}}destroy(){for(let t in this.programConfigurations)this.programConfigurations[t].destroy();}};function og(t,e){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-dasharray":["dasharray_to","dasharray_from"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[t]||[t.replace(`${e}-`,"").replace(/-/g,"_")];}function lg(t){return{"line-pattern":{source:Br,composite:Br},"fill-pattern":{source:Br,composite:Br},"fill-extrusion-pattern":{source:Br,composite:Br},"line-dasharray":{source:$h,composite:$h}}[t];}function jh(t,e,r){let i={color:{source:nn,composite:So},number:{source:ma,composite:nn}};return lg(t)?.[r]||i[e][r];}I("ConstantBinder",zi),I("CrossFadedConstantBinder",ar),I("SourceExpressionBinder",Ee),I("CrossFadedPatternBinder",Zf),I("CrossFadedDasharrayBinder",Hf),I("CompositeExpressionBinder",oe),I("ProgramConfiguration",Kf,{omit:["_buffers"]}),I("ProgramConfigurationSet",dr);var Co=2**14-1,Gh=-Co-1;function vr(t){let e=mt/t.extent,r=t.loadGeometry();for(let i of r)for(let n of i){let a=Math.round(n.x*e),s=Math.round(n.y*e);n.x=Yi(a,Gh,Co),n.y=Yi(s,Gh,Co),(a<n.x||a>n.x+1||s<n.y||s>n.y+1)&&Mt("Geometry exceeds allowed extent, reduce your vector tile buffer size");}return r;}function si(t,e){return{type:t.type,id:t.id,properties:t.properties,geometry:e?vr(t):[]};}var Xh=-32768;function ug(t,e,r,i,n){t.emplaceBack(Xh+e*8+i,Xh+r*8+n);}var zl=class{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map(e=>e.id),this.index=t.index,this.hasDependencies=!1,this.layoutVertexArray=new Gm(),this.indexArray=new mn(),this.segments=new Jt(),this.programConfigurations=new dr(t.layers,t.zoom),this.stateDependentLayerIds=this.layers.filter(e=>e.isStateDependent()).map(e=>e.id);}populate(t,e,r){let i=this.layers[0],n=[],a=null,s=!1,o=i.type==="heatmap";if(i.type==="circle"){let c=i;a=c.layout.get("circle-sort-key"),s=!a.isConstant(),o||=c.paint.get("circle-pitch-alignment")==="map";}let l=o?e.subdivisionGranularity.circle:1,u=new at(this.zoom),h=this.layers[0]._featureFilter.needGeometry;for(let{feature:c,id:p,index:f,sourceLayerIndex:d}of t){let y=si(c,h);if(!this.layers[0]._featureFilter.filter(u,y,r))continue;let m=s?a.evaluate(y,{},r):void 0,g={id:p,properties:c.properties,type:c.type,sourceLayerIndex:d,index:f,geometry:h?y.geometry:vr(c),patterns:{},sortKey:m};n.push(g);}s&&n.sort((c,p)=>c.sortKey-p.sortKey);for(let c of n){let{geometry:p,index:f,sourceLayerIndex:d}=c,y=t[f].feature;this.addFeature(c,p,f,r,l),e.featureIndex.insert(y,p,f,d,this.index);}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,{imagePositions:r});}addFeatures(t){}isEmpty(){return this.layoutVertexArray.length===0;}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload;}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,tg),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy());}addFeature(t,e,r,i,n=1){let a;switch(n){case 1:a=[0,7];break;case 3:a=[0,2,5,7];break;case 5:a=[0,1,3,4,6,7];break;case 7:a=[0,1,2,3,4,5,6,7];break;default:throw Error(`Invalid circle bucket granularity: ${n}; valid values are 1, 3, 5, 7.`);}let s=a.length;for(let o of e)for(let l of o){let u=l.x,h=l.y;if(u<0||u>=8192||h<0||h>=8192)continue;let c=this.segments.prepareSegment(s*s,this.layoutVertexArray,this.indexArray,t.sortKey),p=c.vertexLength;for(let f=0;f<s;f++)for(let d=0;d<s;d++)ug(this.layoutVertexArray,u,h,a[d],a[f]);for(let f=0;f<s-1;f++)for(let d=0;d<s-1;d++){let y=p+f*s+d,m=p+(f+1)*s+d;this.indexArray.emplaceBack(y,m+1,y+1),this.indexArray.emplaceBack(y,m,m+1);}c.vertexLength+=s*s,c.primitiveLength+=(s-1)*(s-1)*2;}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,{imagePositions:{},canonical:i});}};I("CircleBucket",zl,{omit:["layers"]});function hg(t,e){for(let r of t)if(ii(e,r))return!0;for(let r of e)if(ii(t,r))return!0;return Ll(t,e);}function Ua(t,e,r){return ii(t,e)?!0:Mo(e,t,r);}function Jf(t,e){if(t.length===1)return Yh(e,t[0]);for(let r of e)for(let i of r)if(ii(t,i))return!0;for(let r of t)if(Yh(e,r))return!0;for(let r of e)if(Ll(t,r))return!0;return!1;}function cg(t,e,r){for(let i of e){if(t.length>=3){for(let n of i)if(ii(t,n))return!0;}if(pg(t,i,r))return!0;}return!1;}function pg(t,e,r){if(t.length>1){if(Ll(t,e))return!0;for(let i of e)if(Mo(i,t,r))return!0;}for(let i of t)if(Mo(i,e,r))return!0;return!1;}function Ll(t,e){if(t.length===0||e.length===0)return!1;for(let r=0;r<t.length-1;r++){let i=t[r],n=t[r+1];for(let a=0;a<e.length-1;a++){let s=e[a],o=e[a+1];if(fg(i,n,s,o))return!0;}}return!1;}function fg(t,e,r,i){return Ye(t,r,i)!==Ye(e,r,i)&&Ye(t,e,r)!==Ye(t,e,i);}function Mo(t,e,r){let i=r*r;if(e.length===1)return t.distSqr(e[0])<i;for(let n=1;n<e.length;n++){let a=e[n-1],s=e[n];if(Qf(t,a,s)<i)return!0;}return!1;}function Qf(t,e,r){let i=e.distSqr(r);if(i===0)return t.distSqr(e);let n=((t.x-e.x)*(r.x-e.x)+(t.y-e.y)*(r.y-e.y))/i;return n<0?t.distSqr(e):n>1?t.distSqr(r):t.distSqr(r.sub(e)._mult(n)._add(e));}function Yh(t,e){let r=!1,i,n,a;for(let s of t){i=s;for(let o=0,l=i.length-1;o<i.length;l=o++)n=i[o],a=i[l],n.y>e.y!=a.y>e.y&&e.x<(a.x-n.x)*(e.y-n.y)/(a.y-n.y)+n.x&&(r=!r);}return r;}function ii(t,e){let r=!1;for(let i=0,n=t.length-1;i<t.length;n=i++){let a=t[i],s=t[n];a.y>e.y!=s.y>e.y&&e.x<(s.x-a.x)*(e.y-a.y)/(s.y-a.y)+a.x&&(r=!r);}return r;}function dg(t,e,r,i,n){for(let s of t)if(e<=s.x&&r<=s.y&&i>=s.x&&n>=s.y)return!0;let a=[new M(e,r),new M(e,n),new M(i,n),new M(i,r)];if(t.length>2){for(let s of a)if(ii(t,s))return!0;}for(let s=0;s<t.length-1;s++){let o=t[s],l=t[s+1];if(yg(o,l,a))return!0;}return!1;}function yg(t,e,r){let i=r[0],n=r[2];if(t.x<i.x&&e.x<i.x||t.x>n.x&&e.x>n.x||t.y<i.y&&e.y<i.y||t.y>n.y&&e.y>n.y)return!1;let a=Ye(t,e,r[0]);return a!==Ye(t,e,r[1])||a!==Ye(t,e,r[2])||a!==Ye(t,e,r[3]);}function jr(t,e,r){let i=e.paint.get(t).value;return i.kind==="constant"?i.value:r.programConfigurations.get(e.id).getMaxValue(t);}function qa(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1]);}function ja(t,e,r,i,n){if(!e[0]&&!e[1])return t;let a=M.convert(e)._mult(n);r==="viewport"&&a._rotate(-i);let s=[];for(let o of t)s.push(o.sub(a));return s;}function mg(t){let e=[];for(let r=0;r<t.length;r++){let i=t[r],n=e.at(-1);(r===0||n&&!i.equals(n))&&e.push(i);}return e;}function gg(t,e){let r=[];for(let i of t){let n=mg(i),a=[];for(let s=0;s<n.length;s++){let o=n[s],l=n[s-1],u=n[s+1],h=s===0?new M(0,0):o.sub(l)._unit()._perp(),c=s===n.length-1?new M(0,0):u.sub(o)._unit()._perp(),p=h._add(c)._unit(),f=p.x*c.x+p.y*c.y;f!==0&&p._mult(1/f),a.push(p._mult(e)._add(o));}r.push(a);}return r;}function xg({queryGeometry:t,size:e},r){return Ua(t,r,e);}function vg({queryGeometry:t,size:e,transform:r,unwrappedTileID:i,getElevation:n},a){return Ua(t,a,e*(r.projectTileCoordinates(a.x,a.y,i,n?.(a.x,a.y)).signedDistanceFromCamera/r.cameraToCenterDistance));}function bg({queryGeometry:t,size:e,transform:r,unwrappedTileID:i,getElevation:n},a){let s=r.projectTileCoordinates(a.x,a.y,i,n?.(a.x,a.y)).signedDistanceFromCamera,o=e*(r.cameraToCenterDistance/s);return Ua(t,Vl(a,r,i,n),o);}function wg({queryGeometry:t,size:e,transform:r,unwrappedTileID:i,getElevation:n},a){return Ua(t,Vl(a,r,i,n),e);}function td({queryGeometry:t,size:e,transform:r,unwrappedTileID:i,getElevation:n,pitchAlignment:a="map",pitchScale:s="map"},o){let l=a==="map"?s==="map"?xg:vg:s==="map"?bg:wg,u={queryGeometry:t,size:e,transform:r,unwrappedTileID:i,getElevation:n};for(let h of o)for(let c of h)if(l(u,c))return!0;return!1;}function Vl(t,e,r,i){let n=e.projectTileCoordinates(t.x,t.y,r,i?.(t.x,t.y)).point;return new M((n.x*.5+.5)*e.width,(-n.y*.5+.5)*e.height);}function Dg(t,e,r,i){return t.map(n=>Vl(n,e,r,i));}var _g,Ag=()=>_g||=new qt({"circle-sort-key":new U(D.layout_circle["circle-sort-key"],"circle-sort-key")}),Sg,Eg=()=>Sg||=new qt({"circle-radius":new U(D.paint_circle["circle-radius"],"circle-radius"),"circle-color":new U(D.paint_circle["circle-color"],"circle-color"),"circle-blur":new U(D.paint_circle["circle-blur"],"circle-blur"),"circle-opacity":new U(D.paint_circle["circle-opacity"],"circle-opacity"),"circle-translate":new V(D.paint_circle["circle-translate"],"circle-translate"),"circle-translate-anchor":new V(D.paint_circle["circle-translate-anchor"],"circle-translate-anchor"),"circle-pitch-scale":new V(D.paint_circle["circle-pitch-scale"],"circle-pitch-scale"),"circle-pitch-alignment":new V(D.paint_circle["circle-pitch-alignment"],"circle-pitch-alignment"),"circle-stroke-width":new U(D.paint_circle["circle-stroke-width"],"circle-stroke-width"),"circle-stroke-color":new U(D.paint_circle["circle-stroke-color"],"circle-stroke-color"),"circle-stroke-opacity":new U(D.paint_circle["circle-stroke-opacity"],"circle-stroke-opacity")}),Fg={get paint(){return Eg();},get layout(){return Ag();}};var Tg=class extends ce{constructor(t,e){super(t,Fg,e);}createBucket(t){return new zl(t);}queryRadius(t){let e=t;return jr("circle-radius",this,e)+jr("circle-stroke-width",this,e)+qa(this.paint.get("circle-translate"));}queryIntersectsFeature({queryGeometry:t,feature:e,featureState:r,geometry:i,transform:n,pixelsToTileUnits:a,unwrappedTileID:s,getElevation:o}){let l=ja(t,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),-n.bearingInRadians,a),u=this.paint.get("circle-radius").evaluate(e,r)+this.paint.get("circle-stroke-width").evaluate(e,r),h=this.paint.get("circle-pitch-scale"),c=this.paint.get("circle-pitch-alignment"),p,f;return c==="map"?(p=l,f=u*a):(p=Dg(l,n,s,o),f=u),td({queryGeometry:p,size:f,transform:n,unwrappedTileID:s,getElevation:o,pitchAlignment:c,pitchScale:h},i);}},ed=class extends zl{};I("HeatmapBucket",ed,{omit:["layers"]});var kg,Ig=()=>kg||=new qt({"heatmap-radius":new U(D.paint_heatmap["heatmap-radius"],"heatmap-radius"),"heatmap-weight":new U(D.paint_heatmap["heatmap-weight"],"heatmap-weight"),"heatmap-intensity":new V(D.paint_heatmap["heatmap-intensity"],"heatmap-intensity"),"heatmap-color":new Na(D.paint_heatmap["heatmap-color"],"heatmap-color"),"heatmap-opacity":new V(D.paint_heatmap["heatmap-opacity"],"heatmap-opacity")}),Cg={get paint(){return Ig();}};function Ol(t,{width:e,height:r},i,n){if(!n)n=new Uint8Array(e*r*i);else if(n instanceof Uint8ClampedArray)n=new Uint8Array(n.buffer);else if(n.length!==e*r*i)throw RangeError(`mismatched image size. expected: ${n.length} but got: ${e*r*i}`);return t.width=e,t.height=r,t.data=n,t;}function rd(t,{width:e,height:r},i){if(e===t.width&&r===t.height)return;let n=Ol({},{width:e,height:r},i);Rl(t,n,{x:0,y:0},{x:0,y:0},{width:Math.min(t.width,e),height:Math.min(t.height,r)},i),t.width=e,t.height=r,t.data=n.data;}function Rl(t,e,r,i,n,a){if(n.width===0||n.height===0)return e;if(n.width>t.width||n.height>t.height||r.x>t.width-n.width||r.y>t.height-n.height)throw RangeError("out of range source coordinates for image copy");if(n.width>e.width||n.height>e.height||i.x>e.width-n.width||i.y>e.height-n.height)throw RangeError("out of range destination coordinates for image copy");let s=t.data,o=e.data;if(s===o)throw Error("srcData equals dstData, so image is already copied");for(let l=0;l<n.height;l++){let u=((r.y+l)*t.width+r.x)*a,h=((i.y+l)*e.width+i.x)*a;for(let c=0;c<n.width*a;c++)o[h+c]=s[u+c];}return e;}var Ga=class id{constructor(e,r){Ol(this,e,1,r);}resize(e){rd(this,e,1);}clone(){return new id({width:this.width,height:this.height},new Uint8Array(this.data));}static copy(e,r,i,n,a){Rl(e,r,i,n,a,1);}},Yt=class nd{constructor(e,r){Ol(this,e,4,r);}resize(e){rd(this,e,4);}replace(e,r){r?this.data.set(e):this.data=e instanceof Uint8ClampedArray?new Uint8Array(e.buffer):e;}clone(){return new nd({width:this.width,height:this.height},new Uint8Array(this.data));}static copy(e,r,i,n,a){Rl(e,r,i,n,a,4);}setPixel(e,r,i){let n=(e*this.width+r)*4;this.data[n+0]=Math.round(i.r*255/i.a),this.data[n+1]=Math.round(i.g*255/i.a),this.data[n+2]=Math.round(i.b*255/i.a),this.data[n+3]=Math.round(i.a*255);}};function Ps(t){let e=new Uint8Array(t.length);for(let r=0;r<t.length;r+=4){let i=t[r+3];e[r+0]=Math.round(t[r+0]*i/255),e[r+1]=Math.round(t[r+1]*i/255),e[r+2]=Math.round(t[r+2]*i/255),e[r+3]=i;}return e;}I("AlphaImage",Ga),I("RGBAImage",Yt);function Mg(t){let e={},r=t.resolution||256,i=t.clips?t.clips.length:1,n=t.image||new Yt({width:r,height:i});if(!A1(r))throw Error(`width is not a power of 2 - ${r}`);let a=(s,o,l)=>{e[t.evaluationKey]=l;let u=t.expression.evaluate(e);n.setPixel(s/4/r,o/4,u);};if(t.clips)for(let s=0,o=0;s<i;++s,o+=r*4)for(let l=0,u=0;l<r;l++,u+=4){let h=l/(r-1),{start:c,end:p}=t.clips[s],f=c*(1-h)+p*h;a(o,u,f);}else for(let s=0,o=0;s<r;s++,o+=4){let l=s/(r-1);a(0,o,l);}return n;}var Bg="big-fb";var Pg=class extends ce{createBucket(t){return new ed(t);}constructor(t,e){super(t,Cg,e),this.heatmapFbos=new Map(),this._updateColorRamp();}_handleSpecialPaintPropertyUpdate(t){t==="heatmap-color"&&this._updateColorRamp();}_updateColorRamp(){let t=this._transitionablePaint._values["heatmap-color"].value.expression;this.colorRamp=Mg({expression:t,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null;}resize(){this.heatmapFbos.has("big-fb")&&this.heatmapFbos.delete(Bg);}queryRadius(t){return jr("heatmap-radius",this,t);}queryIntersectsFeature({queryGeometry:t,feature:e,featureState:r,geometry:i,transform:n,pixelsToTileUnits:a,unwrappedTileID:s,getElevation:o}){return td({queryGeometry:t,size:this.paint.get("heatmap-radius").evaluate(e,r)*a,transform:n,unwrappedTileID:s,getElevation:o},i);}hasOffscreenPass(){return this.paint.get("heatmap-opacity")!==0&&!this.isHidden();}},zg,Lg=()=>zg||=new qt({"hillshade-illumination-direction":new V(D.paint_hillshade["hillshade-illumination-direction"],"hillshade-illumination-direction"),"hillshade-illumination-altitude":new V(D.paint_hillshade["hillshade-illumination-altitude"],"hillshade-illumination-altitude"),"hillshade-illumination-anchor":new V(D.paint_hillshade["hillshade-illumination-anchor"],"hillshade-illumination-anchor"),"hillshade-exaggeration":new V(D.paint_hillshade["hillshade-exaggeration"],"hillshade-exaggeration"),"hillshade-shadow-color":new V(D.paint_hillshade["hillshade-shadow-color"],"hillshade-shadow-color"),"hillshade-highlight-color":new V(D.paint_hillshade["hillshade-highlight-color"],"hillshade-highlight-color"),"hillshade-accent-color":new V(D.paint_hillshade["hillshade-accent-color"],"hillshade-accent-color"),"hillshade-method":new V(D.paint_hillshade["hillshade-method"],"hillshade-method"),resampling:new V(D.paint_hillshade.resampling,"resampling")}),Vg={get paint(){return Lg();}};var Og=class extends ce{constructor(t,e){super(t,Vg,e),this.recalculate({zoom:0,zoomHistory:{}},void 0);}getIlluminationProperties(){let t=this.paint.get("hillshade-illumination-direction").values,e=this.paint.get("hillshade-illumination-altitude").values,r=this.paint.get("hillshade-highlight-color").values,i=this.paint.get("hillshade-shadow-color").values,n=Math.max(t.length,e.length,r.length,i.length);t=t.concat(Array(n-t.length).fill(t.at(-1))),e=e.concat(Array(n-e.length).fill(e.at(-1))),r=r.concat(Array(n-r.length).fill(r.at(-1))),i=i.concat(Array(n-i.length).fill(i.at(-1)));let a=e.map(oh);return{directionRadians:t.map(oh),altitudeRadians:a,shadowColor:i,highlightColor:r};}hasOffscreenPass(){return this.paint.get("hillshade-exaggeration")!==0&&!this.isHidden();}},Rg,$g=()=>Rg||=new qt({"color-relief-opacity":new V(D["paint_color-relief"]["color-relief-opacity"],"color-relief-opacity"),"color-relief-color":new Na(D["paint_color-relief"]["color-relief-color"],"color-relief-color"),resampling:new V(D["paint_color-relief"].resampling,"resampling")}),Ng={get paint(){return $g();}};function Un(t){return"data"in t;}var Wh=class{constructor(t,e,r,i){this.context=t,this.format=r,this.texture=t.gl.createTexture(),this._ownedHandle=this.texture,this.update(e,i);}update(t,e,r){let{width:i,height:n}=t,a=(this.size?.[0]!==i||this.size[1]!==n)&&!r,{context:s}=this,{gl:o}=s;this.useMipmap=!!e?.useMipmap,a&&this.size&&this.format===o.RGBA&&(o.deleteTexture(this.texture),this.texture=o.createTexture(),this._ownedHandle=this.texture,this.magFilter=void 0,this.minFilter=void 0,this.wrap=void 0),o.bindTexture(o.TEXTURE_2D,this.texture),s.pixelStoreUnpackFlipY.set(!1),s.pixelStoreUnpack.set(1);let l=this.format===o.RGBA&&e?.premultiply!==!1;if(a){if(this.size=[i,n],this.format===o.RGBA&&i>0&&n>0){let u=this.useMipmap?Math.floor(Math.log2(Math.max(i,n)))+1:1;if(o.texStorage2D(o.TEXTURE_2D,u,o.RGBA8,i,n),Un(t)){s.pixelStoreUnpackPremultiplyAlpha.set(!1);let{data:h}=t;l&&h&&(h=Ps(h)),h&&o.texSubImage2D(o.TEXTURE_2D,0,0,0,i,n,o.RGBA,o.UNSIGNED_BYTE,h);}else s.pixelStoreUnpackPremultiplyAlpha.set(l),o.texSubImage2D(o.TEXTURE_2D,0,0,0,o.RGBA,o.UNSIGNED_BYTE,t);}else Un(t)?(s.pixelStoreUnpackPremultiplyAlpha.set(!1),this._uploadRawData(t,l,i,n,o)):(s.pixelStoreUnpackPremultiplyAlpha.set(l),this._uploadDomImage(t,o));}else{let{x:u,y:h}=r||{x:0,y:0};Un(t)?(s.pixelStoreUnpackPremultiplyAlpha.set(!1),this._updateRawData(t,l,u,h,i,n,o)):(s.pixelStoreUnpackPremultiplyAlpha.set(l),this._updateDomImage(t,u,h,o));}this.useMipmap&&!(Un(t)&&t.data===null)&&o.generateMipmap(o.TEXTURE_2D),s.pixelStoreUnpackFlipY.setDefault(),s.pixelStoreUnpack.setDefault(),s.pixelStoreUnpackPremultiplyAlpha.setDefault();}_uploadDomImage(t,e){e.texImage2D(e.TEXTURE_2D,0,this.format,this.format,e.UNSIGNED_BYTE,t);}_uploadRawData(t,e,r,i,n){let{data:a}=t;e&&a&&(a=Ps(a)),n.texImage2D(n.TEXTURE_2D,0,this.format,r,i,0,this.format,n.UNSIGNED_BYTE,a);}_updateDomImage(t,e,r,i){i.texSubImage2D(i.TEXTURE_2D,0,e,r,i.RGBA,i.UNSIGNED_BYTE,t);}_updateRawData(t,e,r,i,n,a,s){let{data:o}=t;e&&o&&(o=Ps(o)),s.texSubImage2D(s.TEXTURE_2D,0,r,i,n,a,s.RGBA,s.UNSIGNED_BYTE,o);}bind(t,e,r){let{context:i}=this,{gl:n}=i;this.texture!==this._ownedHandle&&(this.texture=this._ownedHandle),n.bindTexture(n.TEXTURE_2D,this.texture),(r===n.LINEAR_MIPMAP_NEAREST||r===n.LINEAR_MIPMAP_LINEAR)&&!this.useMipmap&&(r=n.LINEAR);let a=r||t;t!==this.magFilter&&(n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MAG_FILTER,t),this.magFilter=t),a!==this.minFilter&&(n.texParameteri(n.TEXTURE_2D,n.TEXTURE_MIN_FILTER,a),this.minFilter=a),e!==this.wrap&&(n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,e),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,e),this.wrap=e);}generateMipmap(){if(!this.useMipmap)return;let{gl:t}=this.context;t.bindTexture(t.TEXTURE_2D,this.texture),t.generateMipmap(t.TEXTURE_2D);}destroy(){let{gl:t}=this.context;t.deleteTexture(this.texture),this.texture=null,this._ownedHandle=null;}},$l=(class aa{constructor(e,r,i,n=1,a=1,s=1,o=0){if(this.uid=e,r.height!==r.width)throw RangeError("DEM tiles must be square");if(i&&!["mapbox","terrarium","custom"].includes(i)){Mt(`"${i}" is not a valid encoding type. Valid types include "mapbox", "terrarium" and "custom".`);return;}this.stride=r.height;let l=this.dim=r.height-4;switch(this.data=new Uint32Array(r.data.buffer),aa.byteViewCache.set(this,new Uint8Array(this.data.buffer)),i){case"terrarium":this.redFactor=256,this.greenFactor=1,this.blueFactor=1/256,this.baseShift=32768;break;case"custom":this.redFactor=n,this.greenFactor=a,this.blueFactor=s,this.baseShift=o;break;default:this.redFactor=6553.6,this.greenFactor=25.6,this.blueFactor=.1,this.baseShift=1e4;}for(let h=-2;h<l+2;h++){let c=this._idx(0,Math.max(0,Math.min(l-1,h)));(h<0||h>=l)&&this.data.copyWithin(this._idx(0,h),c,c+l),this.data.fill(this.data[c],this._idx(-2,h),this._idx(0,h)),this.data.fill(this.data[c+l-1],this._idx(l,h),this._idx(l+1,h)+1);}let u=this._getByteView();this.min=2**53-1,this.max=-(2**53-1);for(let h=0;h<l;h++)for(let c=0;c<l;c++){let p=this._idx(h,c)*4,f=this._unpackAtIndex(u,p);f>this.max&&(this.max=f),f<this.min&&(this.min=f);}}get(e,r){let i=this._getByteView(),n=this._idx(e,r)*4;return this._unpackAtIndex(i,n);}sampleBilinear(e,r){let i=Math.floor(e),n=Math.floor(r);if(i<-1||i>=this.dim||n<-1||n>=this.dim)throw RangeError(`Out of range source coordinates for DEM data. x: ${e}, y: ${r}, dim: ${this.dim}`);let a=this._getByteView(),s=((n+2)*this.stride+i+2)*4,o=this.stride*4,l=e-i,u=r-n,h=this._unpackAtIndex(a,s),c=this._unpackAtIndex(a,s+4),p=this._unpackAtIndex(a,s+o),f=this._unpackAtIndex(a,s+o+4);return h*(1-l)*(1-u)+c*l*(1-u)+p*(1-l)*u+f*l*u;}getUnpackVector(){return[this.redFactor,this.greenFactor,this.blueFactor,this.baseShift];}_idx(e,r){if(e<-2||e>=this.dim+2||r<-2||r>=this.dim+2)throw RangeError(`Out of range source coordinates for DEM data. x: ${e}, y: ${r}, dim: ${this.dim}`);return(r+2)*this.stride+(e+2);}unpack(e,r,i){return e*this.redFactor+r*this.greenFactor+i*this.blueFactor-this.baseShift;}pack(e){return ad(e,this.getUnpackVector());}getPixels(){return new Yt({width:this.stride,height:this.stride},this._getByteView());}backfillBorder(e,r,i){if(this.dim!==e.dim)throw Error("dem dimension mismatch");let n=r*this.dim,a=r*this.dim+this.dim,s=i*this.dim,o=i*this.dim+this.dim;switch(r){case-1:n=a-2;break;case 1:a=n+2;}switch(i){case-1:s=o-2;break;case 1:o=s+2;}let l=-r*this.dim,u=-i*this.dim;for(let h=s;h<o;h++)for(let c=n;c<a;c++)this.data[this._idx(c,h)]=e.data[this._idx(c+l,h+u)];}_getByteView(){let e=aa.byteViewCache.get(this);return e?.buffer!==this.data.buffer&&(e=new Uint8Array(this.data.buffer),aa.byteViewCache.set(this,e)),e;}_unpackAtIndex(e,r){return this.unpack(e[r],e[r+1],e[r+2]);}static#_=_staticBlock2=()=>(this.byteViewCache=new WeakMap(),this);},_staticBlock2());function ad(t,e){let r=e[0],i=e[1],n=e[2],a=e[3],s=Math.min(r,i,n),o=Math.round((t+a)/s);return{r:Math.floor(o*s/r)%256,g:Math.floor(o*s/i)%256,b:Math.floor(o*s/n)%256};}I("DEMData",$l);var Ug=class extends ce{constructor(t,e){super(t,Ng,e);}_createColorRamp(t){let e={elevationStops:[],colorStops:[]},r=this._transitionablePaint._values["color-relief-color"].value.expression;if(r instanceof Qi&&r._styleExpression.expression instanceof xe){this.colorRampExpression=r;let a=r._styleExpression.expression;e.elevationStops=a.labels,e.colorStops=[];for(let s of e.elevationStops)e.colorStops.push(a.evaluate({globals:{elevation:s}}));}if(e.elevationStops.length<1&&(e.elevationStops=[0],e.colorStops=[gt.transparent]),e.elevationStops.length<2&&(e.elevationStops.push(e.elevationStops[0]+1),e.colorStops.push(e.colorStops[0])),e.elevationStops.length<=t)return e;let i={elevationStops:[],colorStops:[]},n=(e.elevationStops.length-1)/(t-1);for(let a=0;a<e.elevationStops.length-.5;a+=n)i.elevationStops.push(e.elevationStops[Math.round(a)]),i.colorStops.push(e.colorStops[Math.round(a)]);return Mt(`Too many colors in specification of ${this.id} color-relief layer, may not render properly. Max possible colors: ${t}, provided: ${e.elevationStops.length}`),i;}_colorRampChanged(){return this.colorRampExpression!=this._transitionablePaint._values["color-relief-color"].value.expression;}getColorRampTextures(t,e,r){if(this.colorRampTextures&&!this._colorRampChanged())return this.colorRampTextures;let i=this._createColorRamp(e),n=new Yt({width:i.colorStops.length,height:1}),a=new Yt({width:i.colorStops.length,height:1});for(let s=0;s<i.elevationStops.length;s++){let o=ad(i.elevationStops[s],r);a.setPixel(0,s,new gt(o.r/255,o.g/255,o.b/255,1)),n.setPixel(0,s,i.colorStops[s]);}return this.colorRampTextures={elevationTexture:new Wh(t,a,t.gl.RGBA),colorTexture:new Wh(t,n,t.gl.RGBA)},this.colorRampTextures;}hasOffscreenPass(){return!this.isHidden()&&!!this.colorRampTextures;}},Bo=At([{name:"a_pos",components:2,type:"Int16"}],4),qg=Bo.members;Bo.size,Bo.alignment;function ga(t,e,r){let i=r.patternDependencies,n=!1;for(let a of e){let s=a.paint.get(`${t}-pattern`);s.isConstant()||(n=!0);let o=s.constantOr(null);o&&(n=!0,i[o.to]=!0,i[o.from]=!0);}return n;}function Nl(t,e,r,i,n){let{zoom:a}=i,s=n.patternDependencies;for(let o of e){let l=o.paint.get(`${t}-pattern`).value;if(l.kind!=="constant"){let u=l.evaluate({zoom:a-1},r,{},n.availableImages),h=l.evaluate({zoom:a},r,{},n.availableImages),c=l.evaluate({zoom:a+1},r,{},n.availableImages);u=u?.name?u.name:u,h=h?.name?h.name:h,c=c?.name?c.name:c,s[u]=!0,s[h]=!0,s[c]=!0,r.patterns[o.id]={min:u,mid:h,max:c};}}return r;}var an=new Set(),Po=!1;function jg(t,e,r=2){let i=e&&e.length,n=i?e[0]*r:t.length;an.size&&an.clear();let a=sd(t,0,n,r,!0),s=[];if(!a||a.next===a.prev)return s;let o=0,l=0,u=0;if(i&&(a=Zg(t,e,a,r)),t.length>80*r){o=t[0],l=t[1];let h=o,c=l;for(let p=r;p<n;p+=r){let f=t[p],d=t[p+1];f<o&&(o=f),d<l&&(l=d),f>h&&(h=f),d>c&&(c=d);}u=Math.max(h-o,c-l),u=u===0?0:32767/u;}return zo(a,s,o,l,u),s;}function sd(t,e,r,i,n){let a=null;if(n===lx(t,e,r,i)>0)for(let s=e;s<r;s+=i)a=Kh(s/i|0,t[s],t[s+1],a);else for(let s=r-i;s>=e;s-=i)a=Kh(s/i|0,t[s],t[s+1],a);return a&&sn(a,a.next)&&(ln(a),a=a.next),a;}function yr(t,e=t){let r=e===t,i=t,n;do n=!1,i!==i.next&&(an.size===0||!an.has(i))&&(sn(i,i.next)||Et(i.prev,i,i.next)===0)?((r||i===e)&&(e=i.prev),Po=!0,ln(i),i=i.prev,n=!0):(r||i!==e)&&(i=i.next,n=!r);while(n||i!==e);return e;}function zo(t,e,r,i,n){n&&rx(t,r,i,n);let a=t,s=!1;for(;t.prev!==t.next;){let o=t.prev,l=t.next;if(Et(o,t,l)<0&&(n?Xg(t,r,i,n):Gg(t))){e.push(o.i,t.i,l.i),ln(t),t=l,a=l;continue;}if(t=l,t===a){if(Po=!1,t=yr(t),Po){a=t;continue;}if(!s){t=Yg(t,e),a=t,s=!0;continue;}Wg(t,e,r,i,n);break;}}}function Gg(t){let e=t.prev,r=t,i=t.next,n=e.x,a=r.x,s=i.x,o=e.y,l=r.y,u=i.y,h=Math.min(n,a,s),c=Math.min(o,l,u),p=Math.max(n,a,s),f=Math.max(o,l,u),d=i.next;for(;d!==e;){if(d.x>=h&&d.x<=p&&d.y>=c&&d.y<=f&&(n!==d.x||o!==d.y)&&va(n,o,a,l,s,u,d.x,d.y)&&Et(d.prev,d,d.next)>=0)return!1;d=d.next;}return!0;}function Xg(t,e,r,i){let n=t.prev,a=t,s=t.next,o=n.x,l=a.x,u=s.x,h=n.y,c=a.y,p=s.y,f=Math.min(o,l,u),d=Math.min(h,c,p),y=Math.max(o,l,u),m=Math.max(h,c,p),g=Ro(f,d,e,r,i),x=Ro(y,m,e,r,i),b=t.prevZ;for(;b&&b.z>=g;){if(b.x>=f&&b.x<=y&&b.y>=d&&b.y<=m&&b!==s&&(o!==b.x||h!==b.y)&&va(o,h,l,c,u,p,b.x,b.y)&&Et(b.prev,b,b.next)>=0)return!1;b=b.prevZ;}let v=t.nextZ;for(;v&&v.z<=x;){if(v.x>=f&&v.x<=y&&v.y>=d&&v.y<=m&&v!==s&&(o!==v.x||h!==v.y)&&va(o,h,l,c,u,p,v.x,v.y)&&Et(v.prev,v,v.next)>=0)return!1;v=v.nextZ;}return!0;}function Yg(t,e){let r=t,i=!1;do{let n=r.prev,a=r.next.next;ld(n,r,r.next,a,!1)&&on(n,a)&&on(a,n)&&(e.push(n.i,r.i,a.i),ln(r),ln(r.next),r=t=a,i=!0),r=r.next;}while(r!==t);return i?yr(r):r;}function Wg(t,e,r,i,n){let a=t;do{let s=a.next.next;for(;s!==a.prev;){if(a.i!==s.i&&ax(a,s)){let o=ud(a,s);a=yr(a,a.next),o=yr(o,o.next),zo(a,e,r,i,n),zo(o,e,r,i,n);return;}s=s.next;}a=a.next;}while(a!==t);}var Lo=!1;function Zg(t,e,r,i){let n=[];for(let a=0,s=e.length;a<s;a++){let o=sd(t,e[a]*i,a<s-1?e[a+1]*i:t.length,i,!1);o===o.next&&an.add(o),n.push(nx(o));}n.sort(Hg),Jg(t.length/i,e.length),od(r,r),Lo=!0;for(let a=0;a<n.length;a++)r=Kg(n[a],r);return Lo=!1,yr(r);}function Hg(t,e){return t.x-e.x||t.y-e.y||(t.next.y-t.y)/(t.next.x-t.x)-(e.next.y-e.y)/(e.next.x-e.x);}function Kg(t,e){let r=tx(t,e);if(!r)return e;let i=ud(r,t),n=i.next;return od(r,n.next),yr(i,i.next),yr(r,r.next);}var wt=new Float64Array(),xa=0,Vo=[],Oo=[];function Jg(t,e){let r=Math.ceil((t+2*e)/16)+e+2;wt.length<r*4&&(wt=new Float64Array(r*4)),xa=0;}function od(t,e){let r=t;do{let i=xa++;Vo[i]=r;let n=1/0,a=1/0,s=-1/0,o=-1/0,l=0;do{let h=r.next;r.z=i,r.x<n&&(n=r.x),r.x>s&&(s=r.x),r.y<a&&(a=r.y),r.y>o&&(o=r.y),h.x<n&&(n=h.x),h.x>s&&(s=h.x),h.y<a&&(a=h.y),h.y>o&&(o=h.y),r=h;}while(++l<16&&r!==e);Oo[i]=r;let u=i*4;wt[u]=n,wt[u+1]=a,wt[u+2]=s,wt[u+3]=o;}while(r!==e);}function Qg(t,e){let r=t.z*4;e.x<wt[r]&&(wt[r]=e.x),e.y<wt[r+1]&&(wt[r+1]=e.y),e.x>wt[r+2]&&(wt[r+2]=e.x),e.y>wt[r+3]&&(wt[r+3]=e.y);}function Zh(t){let e=Oo[t];for(;e.prev.next!==e;)e=e.next;return Oo[t]=e,e;}function Hh(t){let e=Vo[t];for(;e.prev.next!==e;)e=e.next;return Vo[t]=e,e;}function tx(t,e){let r=e,i=t.x,n=t.y,a=-1/0,s;if(sn(t,r))return r;for(let p=0,f=0;p<xa;p++,f+=4){if(n<wt[f+1]||n>wt[f+3]||wt[f]>i||wt[f+2]<=a)continue;let d=Zh(p);r=Hh(p);do{if(r.prev.next===r){if(sn(t,r.next))return r.next;if(n<=r.y&&n>=r.next.y&&r.next.y!==r.y){let y=r.x+(n-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(y<=i&&y>a&&(a=y,s=r.x<r.next.x?r:r.next,y===i))return s;}}r=r.next;}while(r!==d);}if(!s)return null;let o=s.x,l=s.y,u=Math.min(n,l),h=Math.max(n,l),c=1/0;for(let p=0,f=0;p<xa;p++,f+=4){if(wt[f+2]<o||wt[f]>i||wt[f+3]<u||wt[f+1]>h)continue;let d=Zh(p);r=Hh(p);do{if(r.prev.next===r&&i>=r.x&&r.x>=o&&i!==r.x&&va(n<l?i:a,n,o,l,n<l?a:i,n,r.x,r.y)){let y=Math.abs(n-r.y)/(i-r.x);(on(r,t)||r.y===n&&r.next.y===n&&r.next.x>i)&&(y<c||y===c&&(r.x>s.x||r.x===s.x&&ex(s,r)))&&(s=r,c=y);}r=r.next;}while(r!==d);}return s;}function ex(t,e){return Et(t.prev,t,e.prev)<0&&Et(e.next,t,t.next)<0;}var re=[],Ai=[],ir=new Uint32Array(),Si=new Uint32Array(),Ei=new Uint32Array(256);function rx(t,e,r,i){let n=t,a=0;do n.z=Ro(n.x,n.y,e,r,i),re[a++]=n,n=n.next;while(n!==t);ix(a);let s=null;for(let o=0;o<a;o++){let l=re[o];l.prevZ=s,s&&(s.nextZ=l),s=l;}s.nextZ=null;}function ix(t){if(t<=32){for(let e=1;e<t;e++){let r=re[e],i=r.z,n=e-1;for(;n>=0&&re[n].z>i;)re[n+1]=re[n],n--;re[n+1]=r;}return;}ir.length<t&&(ir=new Uint32Array(t),Si=new Uint32Array(t),Ai=Array(t));for(let e=0;e<t;e++)ir[e]=re[e].z;qn(t,re,ir,Ai,Si,0),qn(t,Ai,Si,re,ir,8),qn(t,re,ir,Ai,Si,16),qn(t,Ai,Si,re,ir,24);}function qn(t,e,r,i,n,a){Ei.fill(0);for(let o=0;o<t;o++)Ei[r[o]>>>a&255]++;let s=0;for(let o=0;o<256;o++){let l=Ei[o];Ei[o]=s,s+=l;}for(let o=0;o<t;o++){let l=r[o],u=Ei[l>>>a&255]++;i[u]=e[o],n[u]=l;}}function Ro(t,e,r,i,n){return t=(t-r)*n|0,e=(e-i)*n|0,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t|e<<1;}function nx(t){let e=t,r=t;do(e.x<r.x||e.x===r.x&&e.y<r.y)&&(r=e),e=e.next;while(e!==t);return r;}function va(t,e,r,i,n,a,s,o){return(n-s)*(e-o)>=(t-s)*(a-o)&&(t-s)*(i-o)>=(r-s)*(e-o)&&(r-s)*(a-o)>=(n-s)*(i-o);}function ax(t,e){let r=sn(t,e)&&Et(t.prev,t,t.next)>0&&Et(e.prev,e,e.next)>0;return t.next.i!==e.i&&(r||on(t,e)&&on(e,t)&&(Et(t.prev,t,e.prev)!==0||Et(t,e.prev,e)!==0))&&!sx(t,e)&&(r||ox(t,e));}function Et(t,e,r){return(e.y-t.y)*(r.x-e.x)-(e.x-t.x)*(r.y-e.y);}function sn(t,e){return t.x===e.x&&t.y===e.y;}function ld(t,e,r,i,n=!0){let a=Et(t,e,r),s=Et(t,e,i),o=Et(r,i,t),l=Et(r,i,e);return(a>0&&s<0||a<0&&s>0)&&(o>0&&l<0||o<0&&l>0)?!0:n?!!(a===0&&jn(t,r,e)||s===0&&jn(t,i,e)||o===0&&jn(r,t,i)||l===0&&jn(r,e,i)):!1;}function jn(t,e,r){return e.x<=Math.max(t.x,r.x)&&e.x>=Math.min(t.x,r.x)&&e.y<=Math.max(t.y,r.y)&&e.y>=Math.min(t.y,r.y);}function sx(t,e){let r=Math.min(t.x,e.x),i=Math.max(t.x,e.x),n=Math.min(t.y,e.y),a=Math.max(t.y,e.y),s=t;do{let o=s.next;if(s.x>i&&o.x>i||s.x<r&&o.x<r||s.y>a&&o.y>a||s.y<n&&o.y<n){s=o;continue;}if(s.i!==t.i&&o.i!==t.i&&s.i!==e.i&&o.i!==e.i&&ld(s,o,t,e))return!0;s=o;}while(s!==t);return!1;}function on(t,e){return Et(t.prev,t,t.next)<0?Et(t,e,t.next)>=0&&Et(t,t.prev,e)>=0:Et(t,e,t.prev)<0||Et(t,t.next,e)<0;}function ox(t,e){let r=t,i=!1,n=(t.x+e.x)/2,a=(t.y+e.y)/2;do{let s=r.next;r.y>a!=s.y>a&&n<(s.x-r.x)*(a-r.y)/(s.y-r.y)+r.x&&(i=!i),r=s;}while(r!==t);return i;}function ud(t,e){let r=$o(t.i,t.x,t.y),i=$o(e.i,e.x,e.y),n=t.next,a=e.prev;return t.next=e,e.prev=t,r.next=n,n.prev=r,i.next=r,r.prev=i,a.next=i,i.prev=a,i;}function Kh(t,e,r,i){let n=$o(t,e,r);return i?(n.next=i.next,n.prev=i,i.next.prev=n,i.next=n):(n.prev=n,n.next=n),n;}function ln(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ),Lo&&Qg(t.prev,t.next);}function $o(t,e,r){return{i:t,x:e,y:r,prev:null,next:null,z:0,prevZ:null,nextZ:null};}function lx(t,e,r,i){let n=0;for(let a=e,s=r-i;a<r;a+=i)n+=(t[s]-t[a])*(t[a+1]+t[s+1]),s=a;return n;}var Li=class{constructor(t,e){if(e>t)throw Error("Min granularity must not be greater than base granularity.");this._baseZoomGranularity=t,this._minGranularity=e;}getGranularityForZoomLevel(t){let e=1<<t;return Math.max(Math.floor(this._baseZoomGranularity/e),this._minGranularity,1);}},ux=(class hd{constructor(e){this.fill=e.fill,this.line=e.line,this.tile=e.tile,this.stencil=e.stencil,this.circle=e.circle;}static#_=_staticBlock3=()=>(this.noSubdivision=new hd({fill:new Li(0,0),line:new Li(0,0),tile:new Li(0,0),stencil:new Li(0,0),circle:1}),this);},_staticBlock3());I("SubdivisionGranularityExpression",Li),I("SubdivisionGranularitySetting",ux);var zs=-32768,Ls=32767,hx=class{constructor(t,e){this._vertexBuffer=[],this._vertexDictionary=new Map(),this._used=!1,this._granularity=t,this._granularityCellSize=mt/t,this._canonical=e;}_getKey(t,e){return t+=32768,e+=32768,t<<16|e<<0;}_vertexToIndex(t,e){if(t<-32768||e<-32768||t>32767||e>32767)throw Error("Vertex coordinates are out of signed 16 bit integer range.");let r=Math.round(t)|0,i=Math.round(e)|0,n=this._getKey(r,i),a=this._vertexDictionary.get(n);if(a!==void 0)return a;let s=this._vertexBuffer.length/2;return this._vertexDictionary.set(n,s),this._vertexBuffer.push(r,i),s;}_subdivideTrianglesScanline(t,e){if(this._granularity<2)return fx(this._vertexBuffer,px(t,e));let r=[],i=t.length;for(let n=0;n<i;n+=3){let a=[e[t[n+0]],e[t[n+1]],e[t[n+2]]],s=[this._vertexBuffer[a[0]*2+0],this._vertexBuffer[a[0]*2+1],this._vertexBuffer[a[1]*2+0],this._vertexBuffer[a[1]*2+1],this._vertexBuffer[a[2]*2+0],this._vertexBuffer[a[2]*2+1]],o=1/0,l=1/0,u=-1/0,h=-1/0;for(let y=0;y<3;y++){let m=s[y*2],g=s[y*2+1];o=Math.min(o,m),u=Math.max(u,m),l=Math.min(l,g),h=Math.max(h,g);}if(o===u||l===h)continue;let c=Math.floor(o/this._granularityCellSize),p=Math.ceil(u/this._granularityCellSize),f=Math.floor(l/this._granularityCellSize),d=Math.ceil(h/this._granularityCellSize);if(c===p&&f===d){r.push(...a);continue;}for(let y=f;y<d;y++){let m=this._scanlineGenerateVertexRingForCellRow(y,s,a);dx(this._vertexBuffer,m,r);}}return r;}_scanlineGenerateVertexRingForCellRow(t,e,r){let i=t*this._granularityCellSize,n=i+this._granularityCellSize,a=[];for(let s=0;s<3;s++){let o=e[s*2],l=e[s*2+1],u=e[(s+1)*2%6],h=e[((s+1)*2+1)%6],c=e[(s+2)*2%6],p=e[((s+2)*2+1)%6],f=u-o,d=h-l,y=f===0,m=d===0,g=(i-l)/d,x=(n-l)/d,b=Math.min(g,x),v=Math.max(g,x);if(!m&&(b>=1||v<=0)||m&&(l<i||l>n)){h>=i&&h<=n&&a.push(r[(s+1)%3]);continue;}if(!m&&b>0){let A=o+f*b,S=l+d*b;a.push(this._vertexToIndex(A,S));}let w=o+f*Math.max(b,0),_=o+f*Math.min(v,1);if(y||this._generateIntraEdgeVertices(a,o,l,u,h,w,_),!m&&v<1){let A=o+f*v,S=l+d*v;a.push(this._vertexToIndex(A,S));}(m||h>=i&&h<=n)&&a.push(r[(s+1)%3]),!m&&(h<=i||h>=n)&&this._generateInterEdgeVertices(a,o,l,u,h,c,p,_,i,n);}return a;}_generateIntraEdgeVertices(t,e,r,i,n,a,s){let o=i-e,l=n-r,u=l===0,h=u?Math.min(e,i):Math.min(a,s),c=u?Math.max(e,i):Math.max(a,s),p=Math.floor(h/this._granularityCellSize)+1,f=Math.ceil(c/this._granularityCellSize)-1;if(u?e<i:a<s)for(let d=p;d<=f;d++){let y=d*this._granularityCellSize,m=r+l*(y-e)/o;t.push(this._vertexToIndex(y,m));}else for(let d=f;d>=p;d--){let y=d*this._granularityCellSize,m=r+l*(y-e)/o;t.push(this._vertexToIndex(y,m));}}_generateInterEdgeVertices(t,e,r,i,n,a,s,o,l,u){let h=n-r,c=a-i,p=s-n,f=(l-n)/p,d=(u-n)/p,y=Math.min(f,d),m=Math.max(f,d),g=i+c*y,x=Math.floor(Math.min(g,o)/this._granularityCellSize)+1,b=Math.ceil(Math.max(g,o)/this._granularityCellSize)-1,v=o<g,w=p===0;if(w&&(s===l||s===u))return;if(w||y>=1||m<=0){let A=e-a,S=r-s,F=(l-s)/S,z=(u-s)/S,$=a+A*Math.min(F,z);x=Math.floor(Math.min($,o)/this._granularityCellSize)+1,b=Math.ceil(Math.max($,o)/this._granularityCellSize)-1,v=o<$;}let _=h>0?u:l;if(v)for(let A=x;A<=b;A++){let S=A*this._granularityCellSize;t.push(this._vertexToIndex(S,_));}else for(let A=b;A>=x;A--){let S=A*this._granularityCellSize;t.push(this._vertexToIndex(S,_));}}_generateOutline(t,e){let r=[],i=0;for(let n of t){let a=this._granularity<2?this._ringPathIndices(n,i,e):this._pointArrayToIndices(or(n,this._granularity,!0));i+=n.length;let s=[];for(let o=1;o<a.length;o++)s.push(a[o-1]),s.push(a[o]);r.push(s);}return r;}_ringPathIndices(t,e,r){let i=r.slice(e,e+t.length);return i.length>=2&&pd(t)&&i.push(i[0]),i;}_handlePoles(t){let e=!1,r=!1;this._canonical&&(this._canonical.y===0&&(e=!0),this._canonical.y===(1<<this._canonical.z)-1&&(r=!0)),(e||r)&&this._fillPoles(t,e,r);}_ensureNoPoleVertices(){let t=this._vertexBuffer;for(let e=0;e<t.length;e+=2){let r=t[e+1];r===-32768&&(t[e+1]=-32767),r===32767&&(t[e+1]=32766);}}_generatePoleQuad(t,e,r,i,n,a){i>n==(a===-32768)?(t.push(r),t.push(e),t.push(this._vertexToIndex(i,a)),t.push(this._vertexToIndex(n,a)),t.push(r),t.push(this._vertexToIndex(i,a))):(t.push(e),t.push(r),t.push(this._vertexToIndex(i,a)),t.push(r),t.push(this._vertexToIndex(n,a)),t.push(this._vertexToIndex(i,a)));}_fillPoles(t,e,r){let i=this._vertexBuffer,n=mt,a=t.length;for(let s=2;s<a;s+=3){let o=t[s-2],l=t[s-1],u=t[s],h=i[o*2],c=i[o*2+1],p=i[l*2],f=i[l*2+1],d=i[u*2],y=i[u*2+1];e&&(c===0&&f===0&&this._generatePoleQuad(t,o,l,h,p,zs),f===0&&y===0&&this._generatePoleQuad(t,l,u,p,d,zs),y===0&&c===0&&this._generatePoleQuad(t,u,o,d,h,zs)),r&&(c===n&&f===n&&this._generatePoleQuad(t,o,l,h,p,Ls),f===n&&y===n&&this._generatePoleQuad(t,l,u,p,d,Ls),y===n&&c===n&&this._generatePoleQuad(t,u,o,d,h,Ls));}}_initializeVertices(t){let e=[];for(let r=0;r<t.length;r+=2)e.push(this._vertexToIndex(t[r],t[r+1]));return e;}subdividePolygonInternal(t,e){if(this._used)throw Error("Subdivision: multiple use not allowed.");this._used=!0;let{flattened:r,holeIndices:i}=cx(t),n=this._initializeVertices(r),a;try{let o=jg(r,i);a=this._subdivideTrianglesScanline(o,n);}catch(o){console.error(o);}let s=[];return e&&(s=this._generateOutline(t,n)),this._ensureNoPoleVertices(),this._handlePoles(a),this._granularity>=2&&this._canonical?.z===0&&(a=this._removeTrianglesOutsideTileX(a),s=s.map(o=>this._removeLinesOutsideTileX(o))),{verticesFlattened:this._vertexBuffer,indicesTriangles:a,indicesLineList:s};}_vertexOutsideTileX(t){let e=this._vertexBuffer[t*2];return e<0||e>8192;}_removeTrianglesOutsideTileX(t){let e=[];for(let r=0;r<t.length;r+=3)this._vertexOutsideTileX(t[r])||this._vertexOutsideTileX(t[r+1])||this._vertexOutsideTileX(t[r+2])||e.push(t[r],t[r+1],t[r+2]);return e;}_removeLinesOutsideTileX(t){let e=[];for(let r=0;r<t.length;r+=2)this._vertexOutsideTileX(t[r])||this._vertexOutsideTileX(t[r+1])||e.push(t[r],t[r+1]);return e;}_pointArrayToIndices(t){let e=[];for(let r of t)e.push(this._vertexToIndex(r.x,r.y));return e;}};function cd(t,e,r,i=!0){return new hx(r,e).subdividePolygonInternal(t,i);}function or(t,e,r=!1){if(!t||t.length<1||t.length<2)return[];let i=r&&pd(t);if(e<2)return i?[...t,t[0]]:[...t];let n=Math.floor(mt/e),a=[];a.push(new M(t[0].x,t[0].y));let s=t.length,o=i?s:s-1;for(let l=0;l<o;l++){let u=t[l],h=l<s-1?t[l+1]:t[0],c=u.x,p=u.y,f=h.x,d=h.y,y=c!==f,m=p!==d;if(!y&&!m)continue;let g=f-c,x=d-p,b=Math.abs(g),v=Math.abs(x),w=c,_=p;for(;;){let S=g>0?(Math.floor(w/n)+1)*n:(Math.ceil(w/n)-1)*n,F=x>0?(Math.floor(_/n)+1)*n:(Math.ceil(_/n)-1)*n,z=Math.abs(w-S),$=Math.abs(_-F),B=Math.abs(w-f),P=Math.abs(_-d),E=y?z/b:1/0,O=m?$/v:1/0;if((B<=z||!y)&&(P<=$||!m))break;if(E<O&&y||!m){w=S,_+=x*E;let R=new M(w,Math.round(_));(a[a.length-1].x!==R.x||a[a.length-1].y!==R.y)&&a.push(R);}else{w+=g*O,_=F;let R=new M(Math.round(w),_);(a[a.length-1].x!==R.x||a[a.length-1].y!==R.y)&&a.push(R);}}let A=new M(f,d);(a[a.length-1].x!==A.x||a[a.length-1].y!==A.y)&&a.push(A);}return a;}function pd(t){return!t[0].equals(t[t.length-1]);}function cx(t){let e=[],r=[];for(let i of t)if(i.length!==0){i!==t[0]&&e.push(r.length/2);for(let n of i)r.push(n.x),r.push(n.y);}return{flattened:r,holeIndices:e};}function px(t,e){let r=Array(t.length);for(let i=0;i<t.length;i++)r[i]=e[t[i]];return r;}function fx(t,e){let r=[];for(let i=0;i<e.length;i+=3){let n=e[i],a=e[i+1],s=e[i+2],o=t[n*2],l=t[n*2+1],u=t[a*2],h=t[a*2+1],c=t[s*2],p=t[s*2+1],f=u-o,d=h-l,y=c-o;f*(p-l)-d*y>0?(r.push(n),r.push(s),r.push(a)):(r.push(n),r.push(a),r.push(s));}return r;}function dx(t,e,r){if(e.length===0)throw Error("Subdivision vertex ring is empty.");let i=0,n=t[e[0]*2];for(let l=1;l<e.length;l++){let u=t[e[l]*2];u<n&&(n=u,i=l);}let a=e.length,s=i,o=(s+1)%a;for(;;){let l=s-1>=0?s-1:a-1,u=(o+1)%a,h=t[e[l]*2],c=t[e[l]*2+1],p=t[e[u]*2],f=t[e[u]*2+1],d=t[e[s]*2],y=t[e[s]*2+1],m=t[e[o]*2],g=t[e[o]*2+1],x=!1;if(h<p)x=!0;else if(h>p)x=!1;else{let b=g-y,v=-(m-d),w=y<g?1:-1;((h-d)*b+(c-y)*v)*w>((p-d)*b+(f-y)*v)*w&&(x=!0);}if(x){let b=e[l],v=e[s],w=e[o];b!==v&&b!==w&&v!==w&&r.push(w,v,b),s--,s<0&&(s=a-1);}else{let b=e[u],v=e[s],w=e[o];b!==v&&b!==w&&v!==w&&r.push(w,v,b),o++,o>=a&&(o=0);}if(l===u)break;}}function fd(t,e,r,i,n,a,s,o,l){let u=n.length/2,h=s&&o&&l;if(u<Jt.MAX_VERTEX_ARRAY_LENGTH){let c=e.prepareSegment(u,r,i),p=c.vertexLength;for(let y=0;y<a.length;y+=3)i.emplaceBack(p+a[y],p+a[y+1],p+a[y+2]);c.vertexLength+=u,c.primitiveLength+=a.length/3;let f,d;h&&(d=s.prepareSegment(u,r,o),f=d.vertexLength,d.vertexLength+=u);for(let y=0;y<n.length;y+=2)t(n[y],n[y+1]);if(h)for(let y of l){for(let m=1;m<y.length;m+=2)o.emplaceBack(f+y[m-1],f+y[m]);d.primitiveLength+=y.length/2;}}else yx(e,r,i,n,a,t),h&&mx(s,r,o,n,l,t),e.forceNewSegmentOnNextPrepare(),s?.forceNewSegmentOnNextPrepare();}function ji(t,e,r,i,n,a,s){if(a){let o=i.count;return r(e[n*2],e[n*2+1]),t[n]=i.count,i.count++,s.vertexLength++,o;}return t[n];}function yx(t,e,r,i,n,a){let s=[];for(let c=0;c<i.length/2;c++)s.push(-1);let o={count:0},l=0,u=t.getOrCreateLatestSegment(e,r),h=u.vertexLength;for(let c=2;c<n.length;c+=3){let p=n[c-2],f=n[c-1],d=n[c],y=s[p]<l,m=s[f]<l,g=s[d]<l,x=+!!y+ +!!m+ +!!g;u.vertexLength+x>Jt.MAX_VERTEX_ARRAY_LENGTH&&(u=t.createNewSegment(e,r),l=o.count,y=!0,m=!0,g=!0,h=0);let b=ji(s,i,a,o,p,y,u),v=ji(s,i,a,o,f,m,u),w=ji(s,i,a,o,d,g,u);r.emplaceBack(h+b-l,h+v-l,h+w-l),u.primitiveLength++;}}function mx(t,e,r,i,n,a){let s=[];for(let c=0;c<i.length/2;c++)s.push(-1);let o={count:0},l=0,u=t.getOrCreateLatestSegment(e,r),h=u.vertexLength;for(let c of n)for(let p=1;p<c.length;p+=2){let f=c[p-1],d=c[p],y=s[f]<l,m=s[d]<l,g=+!!y+ +!!m;u.vertexLength+g>Jt.MAX_VERTEX_ARRAY_LENGTH&&(u=t.createNewSegment(e,r),l=o.count,y=!0,m=!0,h=0);let x=ji(s,i,a,o,f,y,u),b=ji(s,i,a,o,d,m,u);r.emplaceBack(h+x-l,h+b-l),u.primitiveLength++;}}var dd=class{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map(e=>e.id),this.index=t.index,this.hasDependencies=!1,this.sdfPatterns={},this.patternFeatures=[],this.layoutVertexArray=new Xm(),this.indexArray=new mn(),this.indexArray2=new Eo(),this.programConfigurations=new dr(t.layers,t.zoom),this.segments=new Jt(),this.segments2=new Jt(),this.stateDependentLayerIds=this.layers.filter(e=>e.isStateDependent()).map(e=>e.id);}populate(t,e,r){this.hasDependencies=ga("fill",this.layers,e);let i=this.layers[0].layout.get("fill-sort-key"),n=!i.isConstant(),a=[],s=new at(this.zoom),o=this.layers[0]._featureFilter.needGeometry;for(let{feature:l,id:u,index:h,sourceLayerIndex:c}of t){let p=si(l,o);if(!this.layers[0]._featureFilter.filter(s,p,r))continue;let f=n?i.evaluate(p,{},r,e.availableImages):void 0,d={id:u,properties:l.properties,type:l.type,sourceLayerIndex:c,index:h,geometry:o?p.geometry:vr(l),patterns:{},sortKey:f};a.push(d);}n&&a.sort((l,u)=>l.sortKey-u.sortKey);for(let l of a){let{geometry:u,index:h,sourceLayerIndex:c}=l;if(this.hasDependencies){let f=Nl("fill",this.layers,l,{zoom:this.zoom},e);this.patternFeatures.push(f);}else this.addFeature(l,u,h,r,{},e.subdivisionGranularity);let p=t[h].feature;e.featureIndex.insert(p,u,h,c,this.index);}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,{imagePositions:r});}addFeatures({options:t,canonical:e,patternPositions:r,patternMap:i}){this.detectSdfPatterns(i);for(let n of this.patternFeatures)this.addFeature(n,n.geometry,n.index,e,r,t.subdivisionGranularity);}detectSdfPatterns(t){for(let e of this.patternFeatures)for(let r in e.patterns){let i=e.patterns[r];this.recordSdfPattern(r,t[i.min]),this.recordSdfPattern(r,t[i.mid]),this.recordSdfPattern(r,t[i.max]);}for(let e of this.layers){let r=e.paint.get("fill-pattern").constantOr(null);r&&(this.recordSdfPattern(e.id,t[r.from.toString()]),this.recordSdfPattern(e.id,t[r.to.toString()]));}}recordSdfPattern(t,e){if(!e)return;let r=e.sdf===!0,i=this.sdfPatterns[t];i===void 0?this.sdfPatterns[t]=r:i!==r&&Mt(`Style sheet warning: Cannot mix SDF and non-SDF fill patterns in layer "${t}"`);}isEmpty(){return this.layoutVertexArray.length===0;}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload;}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,qg),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.indexBuffer2=t.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(t),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy());}addFeature(t,e,r,i,n,a){for(let s of Ma(e,500)){let o=cd(s,i,a.fill.getGranularityForZoomLevel(i.z)),l=this.layoutVertexArray;fd((u,h)=>{l.emplaceBack(u,h);},this.segments,this.layoutVertexArray,this.indexArray,o.verticesFlattened,o.indicesTriangles,this.segments2,this.indexArray2,o.indicesLineList);}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,{imagePositions:n,canonical:i});}};I("FillBucket",dd,{omit:["layers","patternFeatures"]});var gx,xx=()=>gx||=new qt({"fill-sort-key":new U(D.layout_fill["fill-sort-key"],"fill-sort-key")}),vx,bx=()=>vx||=new qt({"fill-antialias":new V(D.paint_fill["fill-antialias"],"fill-antialias"),"fill-opacity":new U(D.paint_fill["fill-opacity"],"fill-opacity"),"fill-layer-opacity":new V(D.paint_fill["fill-layer-opacity"],"fill-layer-opacity"),"fill-color":new U(D.paint_fill["fill-color"],"fill-color"),"fill-outline-color":new U(D.paint_fill["fill-outline-color"],"fill-outline-color"),"fill-translate":new V(D.paint_fill["fill-translate"],"fill-translate"),"fill-translate-anchor":new V(D.paint_fill["fill-translate-anchor"],"fill-translate-anchor"),"fill-pattern":new en(D.paint_fill["fill-pattern"],"fill-pattern")}),wx={get paint(){return bx();},get layout(){return xx();}};var Dx=class extends ce{constructor(t,e){super(t,wx,e);}recalculate(t,e){super.recalculate(t,e);let r=this.paint._values["fill-outline-color"];r.value.kind==="constant"&&r.value.value===void 0&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"]);}createBucket(t){return new dd(t);}queryRadius(){return qa(this.paint.get("fill-translate"));}queryIntersectsFeature({queryGeometry:t,geometry:e,transform:r,pixelsToTileUnits:i}){return Jf(ja(t,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),-r.bearingInRadians,i),e);}isTileClipped(){return!0;}},No=At([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4),_x=At([{name:"a_centroid",components:2,type:"Int16"}],4),Ax=No.members;No.size,No.alignment;var ba=class Uo{constructor(){this.minX=1/0,this.maxX=-1/0,this.minY=1/0,this.maxY=-1/0;}extend(e){return this.minX=Math.min(this.minX,e.x),this.minY=Math.min(this.minY,e.y),this.maxX=Math.max(this.maxX,e.x),this.maxY=Math.max(this.maxY,e.y),this;}expandBy(e){return this.minX-=e,this.minY-=e,this.maxX+=e,this.maxY+=e,(this.minX>this.maxX||this.minY>this.maxY)&&(this.minX=1/0,this.maxX=-1/0,this.minY=1/0,this.maxY=-1/0),this;}shrinkBy(e){return this.expandBy(-e);}map(e){let r=new Uo();return r.extend(e(new M(this.minX,this.minY))),r.extend(e(new M(this.maxX,this.minY))),r.extend(e(new M(this.minX,this.maxY))),r.extend(e(new M(this.maxX,this.maxY))),r;}static fromPoints(e){let r=new Uo();for(let i of e)r.extend(i);return r;}contains(e){return e.x>=this.minX&&e.x<=this.maxX&&e.y>=this.minY&&e.y<=this.maxY;}empty(){return this.minX>this.maxX;}width(){return this.maxX-this.minX;}height(){return this.maxY-this.minY;}covers(e){return!this.empty()&&!e.empty()&&e.minX>=this.minX&&e.maxX<=this.maxX&&e.minY>=this.minY&&e.maxY<=this.maxY;}intersects(e){return!this.empty()&&!e.empty()&&e.minX<=this.maxX&&e.maxX>=this.minX&&e.minY<=this.maxY&&e.maxY>=this.minY;}},f5=ba.fromPoints([new M(0,0),new M(mt,mt)]);function qo(t,e){return t.x===e.x&&(t.x<0||t.x>8192)||t.y===e.y&&(t.y<0||t.y>8192);}function Jh(t){return t.every(e=>e.x<0)||t.every(e=>e.x>8192)||t.every(e=>e.y<0)||t.every(e=>e.y>8192);}var gn=class{constructor(t,e,r,i,n){for(this.properties=Object.create(null),this.extent=r,this.type=0,this.id=void 0,this._pbf=t,this._geometry=-1,this._keys=i,this._values=n;t.pos<e;){let a=t.readVarint();if(a===8)this.id=t.readVarint();else if(a===18){let s=t.readVarint()+t.pos;for(;t.pos<s;){let o=i[t.readVarint()],l=n[t.readVarint()];this.properties[o]=l;}}else a===24?this.type=t.readVarint():(a===34&&(this._geometry=t.pos),t.skip(a));}}loadGeometry(){if(this._geometry<0)throw Error("feature has no geometry");let t=this._pbf;t.pos=this._geometry;let e=t.readVarint()+t.pos,r=[],i,n=1,a=0,s=0,o=0;for(;t.pos<e;){if(a<=0){let l=t.readVarint();if(n=l&7,a=l>>3,a===0)continue;}if(a--,n===1)s+=t.readSVarint(),o+=t.readSVarint(),i&&r.push(i),i=[new M(s,o)];else if(n===2)s+=t.readSVarint(),o+=t.readSVarint(),i&&i.push(new M(s,o));else if(n===7)i&&i.push(i[0].clone());else throw Error(`unknown command ${n}`);}return i&&r.push(i),r;}bbox(){if(this._geometry<0)throw Error("feature has no geometry");let t=this._pbf;t.pos=this._geometry;let e=t.readVarint()+t.pos,r=1,i=0,n=0,a=0,s=1/0,o=-1/0,l=1/0,u=-1/0;for(;t.pos<e;){if(i<=0){let h=t.readVarint();if(r=h&7,i=h>>3,i===0)continue;}if(i--,r===1||r===2)n+=t.readSVarint(),a+=t.readSVarint(),n<s&&(s=n),n>o&&(o=n),a<l&&(l=a),a>u&&(u=a);else if(r!==7)throw Error(`unknown command ${r}`);}return[s,l,o,u];}toGeoJSON(t,e,r){let i=this.extent*2**r,n=this.extent*t,a=this.extent*e,s=this.loadGeometry();function o(c){return[(c.x+n)*360/i-180,360/Math.PI*Math.atan(Math.exp((1-(c.y+a)*2/i)*Math.PI))-90];}function l(c){return c.map(o);}let u;if(this.type===1){let c=[];for(let f of s)c.push(f[0]);let p=l(c);u=c.length===1?{type:"Point",coordinates:p[0]}:{type:"MultiPoint",coordinates:p};}else if(this.type===2){let c=s.map(l);u=c.length===1?{type:"LineString",coordinates:c[0]}:{type:"MultiLineString",coordinates:c};}else if(this.type===3){let c=yd(s),p=[];for(let f of c)p.push(f.map(l));u=p.length===1?{type:"Polygon",coordinates:p[0]}:{type:"MultiPolygon",coordinates:p};}else throw Error("unknown feature type");let h={type:"Feature",geometry:u,properties:this.properties};return this.id!=null&&(h.id=this.id),h;}};gn.types=["Unknown","Point","LineString","Polygon"];function yd(t){let e=t.length;if(e<=1)return[t];let r=[],i,n;for(let a=0;a<e;a++){let s=Sx(t[a]);s!==0&&(n===void 0&&(n=s<0),n===s<0?(i&&r.push(i),i=[t[a]]):i&&i.push(t[a]));}return i&&r.push(i),r;}function Sx(t){let e=0;for(let r=0,i=t.length,n=i-1,a,s;r<i;n=r++)a=t[r],s=t[n],e+=(s.x-a.x)*(a.y+s.y);return e;}var Ex=class{constructor(t,e){for(this.version=1,this.name="",this.extent=4096,this.length=0,this._pbf=t,this._keys=[],this._values=[],this._features=[],e===void 0&&(e=t.length);t.pos<e;){let r=t.readVarint();r===10?this.name=t.readString():r===18?(this._features.push(t.pos),t.skip(r)):r===26?this._keys.push(t.readString()):r===34?this._values.push(Fx(t)):r===40?this.extent=t.readVarint():r===120?this.version=t.readVarint():t.skip(r);}this.length=this._features.length;}feature(t){if(t<0||t>=this._features.length)throw Error("feature index out of bounds");this._pbf.pos=this._features[t];let e=this._pbf.readVarint()+this._pbf.pos;return new gn(this._pbf,e,this.extent,this._keys,this._values);}};function Fx(t){let e=null,r=t.readVarint()+t.pos;for(;t.pos<r;){let i=t.readVarint();e=i===10?t.readString():i===21?t.readFloat():i===25?t.readDouble():i===32?t.readVarint(!0):i===40?t.readVarint():i===48?t.readSVarint():i===56?t.readBoolean():(t.skip(i),null);}if(e==null)throw Error("unknown feature value");return e;}var Ul=class{constructor(t,e=t.length){let r=Object.create(null);for(;t.pos<e;){let i=t.readVarint();if(i===26){let n=new Ex(t,t.readVarint()+t.pos);n.length&&(r[n.name]=n);}else t.skip(i);}this.layers=r;}},md=63710088e-1,Qh=class Vi{constructor(e,r){if(isNaN(e)||isNaN(r))throw Error(`Invalid LngLat object: (${e}, ${r})`);if(this.lng=+e,this.lat=+r,this.lat>90||this.lat<-90)throw Error("Invalid LngLat latitude value: must be between -90 and 90");}wrap(){return new Vi(_1(this.lng,-180,180),this.lat);}toArray(){return[this.lng,this.lat];}toString(){return`LngLat(${this.lng}, ${this.lat})`;}distanceTo(e){let r=Math.PI/180,i=this.lat*r,n=e.lat*r,a=Math.sin(i)*Math.sin(n)+Math.cos(i)*Math.cos(n)*Math.cos((e.lng-this.lng)*r);return md*Math.acos(Math.min(a,1));}static convert(e){if(e instanceof Vi)return e;if(Array.isArray(e)&&(e.length===2||e.length===3))return new Vi(Number(e[0]),Number(e[1]));if(!Array.isArray(e)&&typeof e=="object"&&e)return new Vi(Number("lng"in e?e.lng:e.lon),Number(e.lat));throw Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]");}},gd=2*Math.PI*md;function xd(t){return gd*Math.cos(t*Math.PI/180);}function Tx(t){return(180+t)/360;}function kx(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360;}function Ix(t,e){return t/xd(e);}function Cx(t){return t*360-180;}function jo(t){let e=180-t*360;return 360/Math.PI*Math.atan(Math.exp(e*Math.PI/180))-90;}function Mx(t,e){return t*xd(jo(e));}function Bx(t){return 1/Math.cos(t*Math.PI/180);}var ql=class vd{constructor(e,r,i=0){this.x=+e,this.y=+r,this.z=+i;}static fromLngLat(e,r=0){let i=Qh.convert(e);return new vd(Tx(i.lng),kx(i.lat),Ix(r,i.lat));}toLngLat(){return new Qh(Cx(this.x),jo(this.y));}toAltitude(){return Mx(this.z,this.y);}meterInMercatorCoordinateUnits(){return 1/gd*Bx(jo(this.y));}};function Px(t,e,r){let i=1/(1<<r.z);return new ql(t/mt*i+r.x*i,e/mt*i+r.y*i);}function zx(t,e,r){return Px(t,e,r).toLngLat();}function Lx(t,e){return e<=0||!t||t.length===0?t:t.map(r=>Ox(r,e));}function Vx(t,e){let r=zx(mt/2,mt/2,e),i=ql.fromLngLat(r).meterInMercatorCoordinateUnits(),n=(1<<e.z)*mt;return t*i*n;}function Ox(t,e){if(!t||t.length<3)return t;let r=t[0].x===t[t.length-1].x&&t[0].y===t[t.length-1].y,i=r?t.length-1:t.length;if(i<3)return t;let n=[],a=qo(t[i-1],t[0]);for(let o=0;o<i;o++){let l=t[(o-1+i)%i],u=t[o],h=t[(o+1)%i],c=qo(u,h);a||c?n.push(u.clone()):$x(n,l,u,h,e),a=c;}let s=Rx(n);return s.length<3?t:(r&&s.push(s[0].clone()),s);}function Rx(t){let e=[];for(let r of t){let i=r.round(),n=e[e.length-1];(n?.x!==i.x||n?.y!==i.y)&&e.push(i);}for(;e.length>1&&e[0].x===e[e.length-1].x&&e[0].y===e[e.length-1].y;)e.pop();return e;}function $x(t,e,r,i,n){let a=e.sub(r),s=i.sub(r),o=a.mag(),l=s.mag();if(o<1e-6||l<1e-6){t.push(r.clone());return;}a._div(o),s._div(l);let u=a.x*s.x+a.y*s.y;if(Math.abs(u)>Math.cos(5*Math.PI/180)){t.push(r.clone());return;}let h=.2,c=Math.min(n,o*h,l*h),p=r.add(a.mult(c)),f=r.add(s.mult(c)),d=Math.sqrt((1+u)/2),y=r.add(a.add(s)._unit()._mult(c/d)),m=p.sub(y).angleWith(f.sub(y)),g=Math.max(2,Math.ceil(Math.abs(m)/(Math.PI/6)-1e-6));for(let x=0;x<=g;x++)t.push(p.rotateAround(x/g*m,y));}var Vs=8192;function Fi(t,e,r,i,n,a,s,o){t.emplaceBack(e,r,Math.floor(i*Vs)*2+s,n*Vs*2,a*Vs*2,Math.round(o));}var bd=class{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map(e=>e.id),this.index=t.index,this.hasDependencies=!1,this.layoutVertexArray=new Ym(),this.centroidVertexArray=new jm(),this.indexArray=new mn(),this.programConfigurations=new dr(t.layers,t.zoom),this.segments=new Jt(),this.stateDependentLayerIds=this.layers.filter(e=>e.isStateDependent()).map(e=>e.id);}populate(t,e,r){this.features=[],this.hasDependencies=ga("fill-extrusion",this.layers,e);let i=new at(this.zoom),n=this.layers[0],a=n.layout.get("fill-extrusion-rounded-corner-distance"),s=a>0?Vx(a,r):0,o=n._featureFilter.needGeometry;for(let{feature:l,id:u,index:h,sourceLayerIndex:c}of t){let p=si(l,o);if(!n._featureFilter.filter(i,p,r))continue;let f={id:u,sourceLayerIndex:c,index:h,geometry:Lx(o?p.geometry:vr(l),s),properties:l.properties,type:l.type,patterns:{}};this.hasDependencies?this.features.push(Nl("fill-extrusion",this.layers,f,{zoom:this.zoom},e)):this.addFeature(f,f.geometry,h,r,{},e.subdivisionGranularity),e.featureIndex.insert(l,f.geometry,h,c,this.index,!0);}}addFeatures({options:t,canonical:e,patternPositions:r}){for(let i of this.features){let{geometry:n}=i;this.addFeature(i,n,i.index,e,r,t.subdivisionGranularity);}}update(t,e,r){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,{imagePositions:r});}isEmpty(){return this.layoutVertexArray.length===0&&this.centroidVertexArray.length===0;}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload;}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Ax),this.centroidVertexBuffer=t.createVertexBuffer(this.centroidVertexArray,_x.members,!0),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy());}addFeature(t,e,r,i,n,a){for(let s of Ma(e,500)){let o={x:0,y:0,sampleCount:0},l=this.layoutVertexArray.length;this.processPolygon(o,i,t,s,a);let u=this.layoutVertexArray.length-l,h=Math.floor(o.x/o.sampleCount),c=Math.floor(o.y/o.sampleCount);for(let p=0;p<u;p++)this.centroidVertexArray.emplaceBack(h,c);}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,{imagePositions:n,canonical:i});}processPolygon(t,e,r,i,n){if(i.length<1||Jh(i[0]))return;for(let h of i)h.length!==0&&Nx(t,h);let a={segment:this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray)},s=n.fill.getGranularityForZoomLevel(e.z),o=gn.types[r.type]==="Polygon";for(let h of i){if(h.length===0||Jh(h))continue;let c=or(h,s,o);this._generateSideFaces(c,a);}if(!o)return;let l=cd(i,e,s,!1),u=this.layoutVertexArray;fd((h,c)=>{Fi(u,h,c,0,0,1,1,0);},this.segments,this.layoutVertexArray,this.indexArray,l.verticesFlattened,l.indicesTriangles);}_generateSideFaces(t,e){let r=0;for(let i=1;i<t.length;i++){let n=t[i],a=t[i-1];if(qo(n,a))continue;e.segment.vertexLength+4>Jt.MAX_VERTEX_ARRAY_LENGTH&&(e.segment=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let s=n.sub(a)._perp()._unit(),o=a.dist(n);r+o>32768&&(r=0),Fi(this.layoutVertexArray,n.x,n.y,s.x,s.y,0,0,r),Fi(this.layoutVertexArray,n.x,n.y,s.x,s.y,0,1,r),r+=o,Fi(this.layoutVertexArray,a.x,a.y,s.x,s.y,0,0,r),Fi(this.layoutVertexArray,a.x,a.y,s.x,s.y,0,1,r);let l=e.segment.vertexLength;this.indexArray.emplaceBack(l,l+2,l+1),this.indexArray.emplaceBack(l+1,l+2,l+3),e.segment.vertexLength+=4,e.segment.primitiveLength+=2;}}};function Nx(t,e){for(let r=0;r<e.length;r++){let i=e[r];(r!==e.length-1||e[0].x!==i.x||e[0].y!==i.y)&&(t.x+=i.x,t.y+=i.y,t.sampleCount++);}}I("FillExtrusionBucket",bd,{omit:["layers","features"]});var Ux,qx=()=>Ux||=new qt({"fill-extrusion-rounded-corner-distance":new V(D["layout_fill-extrusion"]["fill-extrusion-rounded-corner-distance"],"fill-extrusion-rounded-corner-distance")}),jx,Gx=()=>jx||=new qt({"fill-extrusion-opacity":new V(D["paint_fill-extrusion"]["fill-extrusion-opacity"],"fill-extrusion-opacity"),"fill-extrusion-color":new U(D["paint_fill-extrusion"]["fill-extrusion-color"],"fill-extrusion-color"),"fill-extrusion-translate":new V(D["paint_fill-extrusion"]["fill-extrusion-translate"],"fill-extrusion-translate"),"fill-extrusion-translate-anchor":new V(D["paint_fill-extrusion"]["fill-extrusion-translate-anchor"],"fill-extrusion-translate-anchor"),"fill-extrusion-pattern":new en(D["paint_fill-extrusion"]["fill-extrusion-pattern"],"fill-extrusion-pattern"),"fill-extrusion-height":new U(D["paint_fill-extrusion"]["fill-extrusion-height"],"fill-extrusion-height"),"fill-extrusion-base":new U(D["paint_fill-extrusion"]["fill-extrusion-base"],"fill-extrusion-base"),"fill-extrusion-vertical-gradient":new V(D["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"],"fill-extrusion-vertical-gradient")}),Xx={get paint(){return Gx();},get layout(){return qx();}};var Yx=class extends ce{constructor(t,e){super(t,Xx,e);}createBucket(t){return new bd(t);}queryRadius(){return qa(this.paint.get("fill-extrusion-translate"));}is3D(){return!0;}queryIntersectsFeature({queryGeometry:t,feature:e,featureState:r,geometry:i,transform:n,pixelsToTileUnits:a,pixelPosMatrix:s}){let o=ja(t,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),-n.bearingInRadians,a),l=this.paint.get("fill-extrusion-height").evaluate(e,r),u=this.paint.get("fill-extrusion-base").evaluate(e,r),h=Hx(o,s,0),c=Zx(i,u,l,s),p=c[0],f=c[1];return Wx(p,f,h);}};function Ti(t,e){return t.x*e.x+t.y*e.y;}function tc(t,e){if(t.length===1){let r=0,i=e[r++],n;for(;!n||i.equals(n);)if(n=e[r++],!n)return 1/0;for(;r<e.length;r++){let a=e[r],s=t[0],o=n.sub(i),l=a.sub(i),u=s.sub(i),h=Ti(o,o),c=Ti(o,l),p=Ti(l,l),f=Ti(u,o),d=Ti(u,l),y=h*p-c*c,m=(p*f-c*d)/y,g=(h*d-c*f)/y,x=1-m-g,b=i.z*x+n.z*m+a.z*g;if(isFinite(b))return b;}return 1/0;}{let r=1/0;for(let i of e)r=Math.min(r,i.z);return r;}}function Wx(t,e,r){let i=1/0;Jf(r,e)&&(i=tc(r,e[0]));for(let n=0;n<e.length;n++){let a=e[n],s=t[n];for(let o=0;o<a.length-1;o++){let l=a[o],u=a[o+1],h=s[o],c=[l,u,s[o+1],h,l];hg(r,c)&&(i=Math.min(i,tc(r,c)));}}return i!==1/0&&i;}function Zx(t,e,r,i){let n=[],a=[],s=i[8]*e,o=i[9]*e,l=i[10]*e,u=i[11]*e,h=i[8]*r,c=i[9]*r,p=i[10]*r,f=i[11]*r;for(let d of t){let y=[],m=[];for(let g of d){let x=g.x,b=g.y,v=i[0]*x+i[4]*b+i[12],w=i[1]*x+i[5]*b+i[13],_=i[2]*x+i[6]*b+i[14],A=i[3]*x+i[7]*b+i[15],S=v+s,F=w+o,z=_+l,$=A+u,B=v+h,P=w+c,E=_+p,O=A+f,R=new M(S/$,F/$);R.z=z/$,y.push(R);let L=new M(B/O,P/O);L.z=E/O,m.push(L);}n.push(y),a.push(m);}return[n,a];}function Hx(t,e,r){let i=[];for(let n of t){let a=[n.x,n.y,r,1];g1(a,a,e),i.push(new M(a[0]/a[3],a[1]/a[3]));}return i;}function Go(t,e,r,i){let n=i,a=e+(r-e>>1),s=r-e,o,l=t[e],u=t[e+1],h=t[r],c=t[r+1];for(let p=e+3;p<r;p+=3){let f=Kx(t[p],t[p+1],l,u,h,c);if(f>n){o=p,n=f;continue;}if(f===n){let d=Math.abs(p-a);d<s&&(o=p,s=d);}}n>i&&(o-e>3&&Go(t,e,o,i),t[o+2]=n,r-o>3&&Go(t,o,r,i));}function Kx(t,e,r,i,n,a){let s=n-r,o=a-i;if(s!==0||o!==0){let l=((t-r)*s+(e-i)*o)/(s*s+o*o);l>1?(r=n,i=a):l>0&&(r+=s*l,i+=o*l);}return s=t-r,o=e-i,s*s+o*o;}function Ct(t,e,r,i){let n={type:e,geom:r},a={id:t??null,type:n.type,geometry:n.geom,tags:i,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};switch(n.type){case"Point":case"MultiPoint":ki(a,n.geom);break;case"LineString":ki(a,n.geom.points);break;case"Polygon":ki(a,n.geom[0].points);break;case"MultiLineString":for(let s of n.geom)ki(a,s.points);break;case"MultiPolygon":for(let s of n.geom)ki(a,s[0].points);}return a;}function jl(t){let e=t;t.points.length>64&&(e.points=new Float64Array(t.points));}function ki(t,e){for(let r=0;r<e.length;r+=3)t.minX=Math.min(t.minX,e[r]),t.minY=Math.min(t.minY,e[r+1]),t.maxX=Math.max(t.maxX,e[r]),t.maxY=Math.max(t.maxY,e[r+1]);}function Gl(t,e){let r=[];switch(t.type){case"FeatureCollection":for(let i=0;i<t.features.length;i++)sa(r,t.features[i],e,i);break;case"Feature":sa(r,t,e);break;default:sa(r,{type:"Feature",geometry:t,properties:void 0},e);}return r;}function sa(t,e,r,i,n=0){if(!e.geometry)return;if(n>1024)throw Error("GeometryCollection nesting exceeds supported depth: 1024");if(e.geometry.type==="GeometryCollection"){Qx(t,e,e.geometry,r,i,n+1);return;}if(!e.geometry.coordinates?.length)return;let a=Jx(e,r,i),s=(r.tolerance/((1<<r.maxZoom)*r.extent))**2;switch(e.geometry.type){case"Point":t2(t,a,e.geometry,e.properties);return;case"MultiPoint":e2(t,a,e.geometry,e.properties);return;case"LineString":r2(t,a,e.geometry,s,e.properties);return;case"MultiLineString":i2(t,a,e.geometry,s,r,e.properties);return;case"Polygon":n2(t,a,e.geometry,s,e.properties);return;case"MultiPolygon":a2(t,a,e.geometry,s,e.properties);return;default:throw Error("Input data is not a valid GeoJSON object.");}}function Jx(t,e,r){return e.promoteId?t.properties?.[e.promoteId]:e.generateId?r||0:t.id;}function Qx(t,e,r,i,n,a=0){for(let s of r.geometries)sa(t,{id:e.id,type:"Feature",geometry:s,properties:e.properties},i,n,a);}function t2(t,e,r,i){let n=[];n.push(Gr(r.coordinates[0]),Xr(r.coordinates[1]),0),t.push(Ct(e,"Point",n,i));}function e2(t,e,r,i){let n=[];for(let a of r.coordinates)n.push(Gr(a[0]),Xr(a[1]),0);t.push(Ct(e,"MultiPoint",n,i));}function r2(t,e,r,i,n){let a={points:[]};Xl(r.coordinates,a,i,!1),t.push(Ct(e,"LineString",a,n));}function i2(t,e,r,i,n,a){if(n.lineMetrics)for(let s of r.coordinates){let o={points:[]};Xl(s,o,i,!1),t.push(Ct(e,"LineString",o,a));}else{let s=[];Yl(r.coordinates,s,i,!1),t.push(Ct(e,"MultiLineString",s,a));}}function n2(t,e,r,i,n){let a=[];Yl(r.coordinates,a,i,!0),t.push(Ct(e,"Polygon",a,n));}function a2(t,e,r,i,n){let a=[];for(let s of r.coordinates){let o=[];Yl(s,o,i,!0),a.push(o);}t.push(Ct(e,"MultiPolygon",a,n));}function Xl(t,e,r,i){let n,a,s=0;for(let l=0;l<t.length;l++){let u=Gr(t[l][0]),h=Xr(t[l][1]);e.points.push(u,h,0),l>0&&(s+=i?(n*h-u*a)/2:Math.sqrt((u-n)**2+(h-a)**2)),n=u,a=h;}let o=e.points.length-3;e.points[2]=1,r>0&&Go(e.points,0,o,r),e.points[o+2]=1,jl(e),e.size=Math.abs(s),e.start=0,e.end=e.size;}function Yl(t,e,r,i){for(let n=0;n<t.length;n++){let a={points:[]};Xl(t[n],a,r,i),e.push(a);}}function Gr(t){return t/360+.5;}function Xr(t){let e=Math.sin(t*Math.PI/180),r=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return r<0?0:r>1?1:r;}function s2(t){return{type:"FeatureCollection",features:t.map(e=>wa(e))};}function wa(t){let e={type:"Feature",geometry:o2(t),properties:t.tags};return t.id!=null&&(e.id=t.id),e;}function o2(t){let{type:e,geometry:r}=t;switch(e){case"Point":return{type:e,coordinates:wd(r[0],r[1])};case"MultiPoint":return{type:e,coordinates:Gn(r)};case"LineString":return{type:e,coordinates:Gn(r.points)};case"MultiLineString":case"Polygon":return{type:e,coordinates:r.map(i=>Gn(i.points))};case"MultiPolygon":return{type:e,coordinates:r.map(i=>i.map(n=>Gn(n.points)))};}}function Gn(t){let e=[];for(let r=0;r<t.length;r+=3)e.push(wd(t[r],t[r+1]));return e;}function wd(t,e){return[Dd(t),_d(e)];}function Dd(t){return(t-.5)*360;}function _d(t){let e=(180-t*360)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90;}function Fe(t,e,r,i,n,a,s,o){if(r/=e,i/=e,a>=r&&s<i)return t;if(s<r||a>=i)return null;let l=[];for(let u of t){let h=n===0?u.minX:u.minY,c=n===0?u.maxX:u.maxY;if(h>=r&&c<i){l.push(u);continue;}if(!(c<r||h>=i))switch(u.type){case"Point":case"MultiPoint":l2(u,l,r,i,n);continue;case"LineString":u2(u,l,r,i,n,o);continue;case"MultiLineString":h2(u,l,r,i,n);continue;case"Polygon":c2(u,l,r,i,n);continue;case"MultiPolygon":p2(u,l,r,i,n);continue;}}return l.length?l:null;}function l2(t,e,r,i,n){let a=[];if(f2(t.geometry,a,r,i,n),!a.length)return;let s=a.length===3?"Point":"MultiPoint";e.push(Ct(t.id,s,a,t.tags));}function u2(t,e,r,i,n,a){let s=[];if(Ad(t.geometry,s,r,i,n,!1,a.lineMetrics),s.length){if(a.lineMetrics){for(let o of s)e.push(Ct(t.id,"LineString",o,t.tags));return;}if(s.length>1){e.push(Ct(t.id,"MultiLineString",s,t.tags));return;}e.push(Ct(t.id,"LineString",s[0],t.tags));}}function h2(t,e,r,i,n){let a=[];if(Wl(t.geometry,a,r,i,n,!1),a.length){if(a.length===1){e.push(Ct(t.id,"LineString",a[0],t.tags));return;}e.push(Ct(t.id,"MultiLineString",a,t.tags));}}function c2(t,e,r,i,n){let a=[];Wl(t.geometry,a,r,i,n,!0),a.length&&e.push(Ct(t.id,"Polygon",a,t.tags));}function p2(t,e,r,i,n){let a=[];for(let s of t.geometry){let o=[];Wl(s,o,r,i,n,!0),o.length&&a.push(o);}a.length&&e.push(Ct(t.id,"MultiPolygon",a,t.tags));}function f2(t,e,r,i,n){for(let a=0;a<t.length;a+=3){let s=t[a+n];s>=r&&s<=i&&Yr(e,t[a],t[a+1],t[a+2]);}}function Ad(t,e,r,i,n,a,s){let o=ec(t),l=n===0?d2:y2,u=t.start,h,c;for(let g=0;g<t.points.length-3;g+=3){let x=t.points[g],b=t.points[g+1],v=t.points[g+2],w=t.points[g+3],_=t.points[g+4],A=n===0?x:b,S=n===0?w:_,F=!1;s&&(h=Math.sqrt((x-w)**2+(b-_)**2)),A<r?S>r&&(c=l(o,x,b,w,_,r),s&&(o.start=u+h*c)):A>i?S<i&&(c=l(o,x,b,w,_,i),s&&(o.start=u+h*c)):Yr(o.points,x,b,v),S<r&&A>=r&&(c=l(o,x,b,w,_,r),F=!0),S>i&&A<=i&&(c=l(o,x,b,w,_,i),F=!0),!a&&F&&(s&&(o.end=u+h*c),e.push(o),o=ec(t)),s&&(u+=h);}let p=t.points.length-3,f=t.points[p],d=t.points[p+1],y=t.points[p+2],m=n===0?f:d;m>=r&&m<=i&&Yr(o.points,f,d,y),p=o.points.length-3,a&&p>=3&&(o.points[p]!==o.points[0]||o.points[p+1]!==o.points[1])&&Yr(o.points,o.points[0],o.points[1],o.points[2]),o.points.length&&(jl(o),e.push(o));}function ec(t){return{points:[],size:t.size,start:t.start,end:t.end};}function Wl(t,e,r,i,n,a){for(let s of t)Ad(s,e,r,i,n,a,!1);}function Yr(t,e,r,i){t.push(e,r,i);}function d2(t,e,r,i,n,a){let s=(a-e)/(i-e);return Yr(t.points,a,r+(n-r)*s,1),s;}function y2(t,e,r,i,n,a){let s=(a-r)/(n-r);return Yr(t.points,e+(i-e)*s,a,1),s;}function Zl(t,e){let r=e.buffer/e.extent,i=t,n=Fe(t,1,-1-r,r,0,-1,2,e),a=Fe(t,1,1-r,2+r,0,-1,2,e);return!n&&!a||(i=Fe(t,1,-r,1+r,0,-1,2,e)||[],n&&(i=rc(n,1).concat(i)),a&&(i=i.concat(rc(a,-1)))),i;}function rc(t,e){let r=[];for(let i of t)switch(i.type){case"Point":case"MultiPoint":{let n=m2(i.geometry,e);r.push(Ct(i.id,i.type,n,i.tags));continue;}case"LineString":{let n=Os(i.geometry,e);r.push(Ct(i.id,i.type,n,i.tags));continue;}case"MultiLineString":case"Polygon":{let n=[];for(let a of i.geometry)n.push(Os(a,e));r.push(Ct(i.id,i.type,n,i.tags));continue;}case"MultiPolygon":{let n=[];for(let a of i.geometry){let s=[];for(let o of a)s.push(Os(o,e));n.push(s);}r.push(Ct(i.id,i.type,n,i.tags));continue;}}return r;}function m2(t,e){let r=[];for(let i=0;i<t.length;i+=3)r.push(t[i]+e,t[i+1],t[i+2]);return r;}function Os(t,e){let r={points:[],size:t.size};t.start!==void 0&&(r.start=t.start,r.end=t.end);for(let i=0;i<t.points.length;i+=3)r.points.push(t.points[i]+e,t.points[i+1],t.points[i+2]);return jl(r),r;}function g2(t,e,r){let i=v2(e,r),n=[];if(i.removeAll&&(n=t,t=[]),i.remove.size||i.add.size){let a=[];for(let s of t)(i.remove.has(s.id)||i.add.has(s.id))&&a.push(s);if(a.length){n=n.concat(a);let s=new Set(a.map(o=>o.id));t=t.filter(o=>!s.has(o.id));}if(i.add.size){let s=Gl({type:"FeatureCollection",features:Array.from(i.add.values())},r);s=Zl(s,r),n=n.concat(s),t=t.concat(s);}}if(i.update.size){let a=new Map(),s=[];for(let o of t)i.update.has(o.id)?a.set(o.id,[...(a.get(o.id)||[]),o]):s.push(o);for(let[o,l]of i.update){let u=a.get(o);if(!u||u.length===0)continue;let h=x2(u,l,r);n=n.concat(u,h),s=s.concat(h);}t=s;}return{affected:n,source:t};}function x2(t,e,r){let i=!!e.newGeometry,n=e.removeAllProperties||e.removeProperties?.length>0||e.addOrUpdateProperties?.length>0;if(i){let a=t[0],s=Gl({type:"FeatureCollection",features:[{type:"Feature",id:a.id,geometry:e.newGeometry,properties:n?ic(a.tags,e):a.tags}]},r);return s=Zl(s,r),s;}if(n){let a=[];for(let s of t){let o={...s};o.tags=ic(o.tags,e),a.push(o);}return a;}return t;}function ic(t,e){if(e.removeAllProperties)return{};let r={...(t||{})};if(e.removeProperties)for(let i of e.removeProperties)delete r[i];if(e.addOrUpdateProperties)for(let{key:i,value:n}of e.addOrUpdateProperties)r[i]=n;return r;}function v2(t,e){return t?{removeAll:t.removeAll,remove:new Set(t.remove||[]),add:new Map(t.add?.map(r=>[e.promoteId?r.properties[e.promoteId]:r.id,r])),update:new Map(t.update?.map(r=>[r.id,r]))}:{remove:new Set(),add:new Map(),update:new Map()};}var nc=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],dt=new Uint32Array(96),b2=class Sd{static from(e){if(!e||e.byteLength===void 0||e.buffer)throw Error("Data must be an instance of ArrayBuffer or SharedArrayBuffer.");let[r,i]=new Uint8Array(e,0,2);if(r!==219)throw Error("Data does not appear to be in a KDBush format.");let n=i>>4;if(n!==1)throw Error(`Got v${n} data when expected v1.`);let a=nc[i&15];if(!a)throw Error("Unrecognized array type.");let[s]=new Uint16Array(e,2,1),[o]=new Uint32Array(e,4,1);return new Sd(o,s,a,void 0,e);}constructor(e,r=64,i=Float64Array,n=ArrayBuffer,a){if(isNaN(e)||e<0)throw Error(`Unexpected numItems value: ${e}.`);this.numItems=+e,this.nodeSize=Math.min(Math.max(+r,2),65535),this.ArrayType=i,this.IndexArrayType=e<65536?Uint16Array:Uint32Array;let s=nc.indexOf(this.ArrayType),o=e*2*this.ArrayType.BYTES_PER_ELEMENT,l=e*this.IndexArrayType.BYTES_PER_ELEMENT,u=(8-l%8)%8;if(s<0)throw Error(`Unexpected typed array class: ${i}.`);if(a)this.data=a,this.ids=new this.IndexArrayType(a,8,e),this.coords=new i(a,8+l+u,e*2),this._pos=e*2,this._finished=!0;else{let h=this.data=new n(8+o+l+u);this.ids=new this.IndexArrayType(h,8,e),this.coords=new i(h,8+l+u,e*2),this._pos=0,this._finished=!1,new Uint8Array(h,0,2).set([219,16+s]),new Uint16Array(h,2,1)[0]=r,new Uint32Array(h,4,1)[0]=e;}}add(e,r){let i=this._pos>>1;return this.ids[i]=i,this.coords[this._pos++]=e,this.coords[this._pos++]=r,i;}finish(){let e=this._pos>>1;if(e!==this.numItems)throw Error(`Added ${e} items when expected ${this.numItems}.`);return Xo(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this;}range(e,r,i,n){if(!this._finished)throw Error("Data not yet indexed - call index.finish().");let{ids:a,coords:s,nodeSize:o}=this;dt[0]=0,dt[1]=a.length-1,dt[2]=0;let l=3,u=[];for(;l>0;){let h=dt[--l],c=dt[--l],p=dt[--l];if(c-p<=o){for(let m=p;m<=c;m++){let g=s[2*m],x=s[2*m+1];g>=e&&g<=i&&x>=r&&x<=n&&u.push(a[m]);}continue;}let f=p+c>>1,d=s[2*f],y=s[2*f+1];d>=e&&d<=i&&y>=r&&y<=n&&u.push(a[f]),(h===0?e<=d:r<=y)&&(dt[l++]=p,dt[l++]=f-1,dt[l++]=1-h),(h===0?i>=d:n>=y)&&(dt[l++]=f+1,dt[l++]=c,dt[l++]=1-h);}return u;}within(e,r,i){let n=[];return this.withinInto(e,r,i,n),n;}withinInto(e,r,i,n){if(!this._finished)throw Error("Data not yet indexed - call index.finish().");let{ids:a,coords:s,nodeSize:o}=this;dt[0]=0,dt[1]=a.length-1,dt[2]=0;let l=3,u=0,h=i*i;for(;l>0;){let c=dt[--l],p=dt[--l],f=dt[--l];if(p-f<=o){for(let g=f;g<=p;g++)ac(s[2*g],s[2*g+1],e,r)<=h&&(n[u++]=a[g]);continue;}let d=f+p>>1,y=s[2*d],m=s[2*d+1];ac(y,m,e,r)<=h&&(n[u++]=a[d]),(c===0?e-i<=y:r-i<=m)&&(dt[l++]=f,dt[l++]=d-1,dt[l++]=1-c),(c===0?e+i>=y:r+i>=m)&&(dt[l++]=d+1,dt[l++]=p,dt[l++]=1-c);}return u;}};function Xo(t,e,r,i,n,a){if(n-i<=r)return;let s=i+n>>1;Ed(t,e,s,i,n,a),Xo(t,e,r,i,s-1,1-a),Xo(t,e,r,s+1,n,1-a);}function Ed(t,e,r,i,n,a){for(;n>i;){if(n-i>600){let u=n-i+1,h=r-i+1,c=Math.log(u),p=.5*Math.exp(2*c/3),f=.5*Math.sqrt(c*p*(u-p)/u)*(h-u/2<0?-1:1);Ed(t,e,r,Math.max(i,Math.floor(r-h*p/u+f)),Math.min(n,Math.floor(r+(u-h)*p/u+f)),a);}let s=e[2*r+a],o=i,l=n;for(Ii(t,e,i,r),e[2*n+a]>s&&Ii(t,e,i,n);o<l;){for(Ii(t,e,o,l),o++,l--;e[2*o+a]<s;)o++;for(;e[2*l+a]>s;)l--;}e[2*i+a]===s?Ii(t,e,i,l):(l++,Ii(t,e,l,n)),l<=r&&(i=l+1),r<=l&&(n=l-1);}}function Ii(t,e,r,i){Rs(t,r,i),Rs(e,2*r,2*i),Rs(e,2*r+1,2*i+1);}function Rs(t,e,r){let i=t[e];t[e]=t[r],t[r]=i;}function ac(t,e,r,i){let n=t-r,a=e-i;return n*n+a*a;}var Yo={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:t=>t},w2=class{constructor(t){this.options=Object.assign(Object.create(Yo),t),this.trees=Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[],this.points=[];}load(t){let e=[];for(let r of t){if(!r.geometry)continue;let[i,n]=r.geometry.coordinates,[a,s]=[Gr(i),Xr(n)],o={id:r.id,type:"Point",geometry:[a,s],tags:r.properties};e.push(o);}this.createIndex(e);}initialize(t){let e=[];for(let r of t)r.type==="Point"&&e.push(r);this.createIndex(e);}updateIndex(t,e,r){this.options=Object.assign(Object.create(Yo),r.clusterOptions),this.initialize(t);}createIndex(t){let{log:e,minZoom:r,maxZoom:i}=this.options;e&&console.time("total time");let n=`prepare ${t.length} points`;e&&console.time(n),this.points=t;let a=[];for(let o=0;o<t.length;o++){let l=t[o];if(!l?.geometry)continue;let[u,h]=l.geometry;u=Math.fround(u),h=Math.fround(h),a.push(u,h,1/0,o,-1,1),this.options.reduce&&a.push(0);}let s=this.trees[i+1]=this.createTree(a);e&&console.timeEnd(n);for(let o=i;o>=r;o--){let l=Date.now();s=this.trees[o]=this.createTree(this.cluster(s,o)),e&&console.log("z%d: %d clusters in %dms",o,s.numItems,Date.now()-l);}e&&console.timeEnd("total time");}getClusters(t,e){return this.getClustersInternal(t,e).map(r=>wa(r));}getClustersInternal(t,e){let r=((t[0]+180)%360+360)%360-180,i=Math.max(-90,Math.min(90,t[1])),n=t[2]===180?180:((t[2]+180)%360+360)%360-180,a=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)r=-180,n=180;else if(r>n){let h=this.getClustersInternal([r,i,180,a],e),c=this.getClustersInternal([-180,i,n,a],e);return h.concat(c);}let s=this.trees[this.limitZoom(e)],o=s.range(Gr(r),Xr(a),Gr(n),Xr(i)),l=s.flatData,u=[];for(let h of o){let c=this.stride*h;u.push(l[c+5]>1?D2(l,c,this.clusterProps):this.points[l[c+3]]);}return u;}getChildren(t){let e=this.getOriginId(t),r=this.getOriginZoom(t),i=Error("No cluster with the specified id: "+t),n=this.trees[r];if(!n)throw i;let a=n.flatData;if(e*this.stride>=a.length)throw i;let s=this.options.radius/(this.options.extent*2**(r-1)),o=a[e*this.stride],l=a[e*this.stride+1],u=n.within(o,l,s),h=[];for(let c of u){let p=c*this.stride;a[p+4]===t&&h.push(a[p+5]>1?_2(a,p,this.clusterProps):wa(this.points[a[p+3]]));}if(h.length===0)throw i;return h;}getLeaves(t,e,r){e||=10,r||=0;let i=[];return this.appendLeaves(i,t,e,r,0),i;}getTile(t,e,r){let i=this.trees[this.limitZoom(t)];if(!i)return null;let n=2**t,{extent:a,radius:s}=this.options,o=s/a,l=(r-o)/n,u=(r+1+o)/n,h={transformed:!0,features:[],source:null,x:e,y:r,z:t};return this.addTileFeatures(i.range((e-o)/n,l,(e+1+o)/n,u),i.flatData,e,r,n,h),e===0&&this.addTileFeatures(i.range(1-o/n,l,1,u),i.flatData,n,r,n,h),e===n-1&&this.addTileFeatures(i.range(0,l,o/n,u),i.flatData,-1,r,n,h),h;}getClusterExpansionZoom(t){return this.getOriginZoom(t);}appendLeaves(t,e,r,i,n){let a=this.getChildren(e);for(let s of a){let o=s.properties;if(o?.cluster?n+o.point_count<=i?n+=o.point_count:n=this.appendLeaves(t,o.cluster_id,r,i,n):n<i?n++:t.push(s),t.length===r)break;}return n;}createTree(t){let e=new b2(t.length/this.stride|0,this.options.nodeSize,Float32Array);for(let r=0;r<t.length;r+=this.stride)e.add(t[r],t[r+1]);return e.finish(),e.flatData=t,e.data=null,e;}addTileFeatures(t,e,r,i,n,a){for(let s of t){let o=s*this.stride,l=e[o+5]>1,u,h,c;if(l)u=Hl(e,o,this.clusterProps),h=e[o],c=e[o+1];else{let d=this.points[e[o+3]];u=d.tags,[h,c]=d.geometry;}let p={type:1,geometry:[[Math.round(this.options.extent*(h*n-r)),Math.round(this.options.extent*(c*n-i))]],tags:u},f;f=l||this.options.generateId?e[o+3]:this.points[e[o+3]].id,f!==void 0&&(p.id=f),a.features.push(p);}}limitZoom(t){return Math.max(this.options.minZoom,Math.min(Math.floor(+t),this.options.maxZoom+1));}cluster(t,e){let{radius:r,extent:i,reduce:n,minPoints:a}=this.options,s=r/(i*2**e),o=t.flatData,l=[],u=this.stride;for(let h=0;h<o.length;h+=u){if(o[h+2]<=e)continue;o[h+2]=e;let c=o[h],p=o[h+1],f=t.within(o[h],o[h+1],s),d=o[h+5],y=d;for(let m of f){let g=m*u;o[g+2]>e&&(y+=o[g+5]);}if(y>d&&y>=a){let m=c*d,g=p*d,x,b=-1,v=((h/u|0)<<5)+(e+1)+this.points.length;for(let w of f){let _=w*u;if(o[_+2]<=e)continue;o[_+2]=e;let A=o[_+5];m+=o[_]*A,g+=o[_+1]*A,o[_+4]=v,n&&(x||(x=this.map(o,h,!0),b=this.clusterProps.length,this.clusterProps.push(x)),n(x,this.map(o,_)));}o[h+4]=v,l.push(m/y,g/y,1/0,v,-1,y),n&&l.push(b);}else{for(let m=0;m<u;m++)l.push(o[h+m]);if(y>1)for(let m of f){let g=m*u;if(!(o[g+2]<=e)){o[g+2]=e;for(let x=0;x<u;x++)l.push(o[g+x]);}}}}return l;}getOriginId(t){return t-this.points.length>>5;}getOriginZoom(t){return(t-this.points.length)%32;}map(t,e,r){if(t[e+5]>1){let a=this.clusterProps[t[e+6]];return r?Object.assign({},a):a;}let i=this.points[t[e+3]].tags,n=this.options.map(i);return r&&n===i?Object.assign({},n):n;}};function D2(t,e,r){return{id:t[e+3],type:"Point",tags:Hl(t,e,r),geometry:[t[e],t[e+1]]};}function _2(t,e,r){return{type:"Feature",id:t[e+3],properties:Hl(t,e,r),geometry:{type:"Point",coordinates:[Dd(t[e]),_d(t[e+1])]}};}function Hl(t,e,r){let i=t[e+5],n=i>=1e4?`${Math.round(i/1e3)}k`:i>=1e3?`${Math.round(i/100)/10}k`:i,a=t[e+6],s=a===-1?{}:Object.assign({},r[a]);return Object.assign(s,{cluster:!0,cluster_id:t[e+3],point_count:i,point_count_abbreviated:n});}var Fd="geojsonvt_clip_start",Td="geojsonvt_clip_end";function sc(t,e,r,i,n){let a=e===n.maxZoom?0:n.tolerance/((1<<e)*n.extent),s={transformed:!1,features:[],source:null,x:r,y:i,z:e,minX:2,minY:1,maxX:-1,maxY:0,numPoints:0,numSimplified:0,numFeatures:t.length};for(let o of t)A2(s,o,a,n);return s;}function A2(t,e,r,i){switch(t.minX=Math.min(t.minX,e.minX),t.minY=Math.min(t.minY,e.minY),t.maxX=Math.max(t.maxX,e.maxX),t.maxY=Math.max(t.maxY,e.maxY),e.type){case"Point":case"MultiPoint":S2(t,e);return;case"LineString":E2(t,e,r,i);return;case"MultiLineString":case"Polygon":F2(t,e,r);return;case"MultiPolygon":T2(t,e,r);return;}}function S2(t,e){let r=[];for(let n=0;n<e.geometry.length;n+=3)r.push(e.geometry[n],e.geometry[n+1]),t.numPoints++,t.numSimplified++;if(!r.length)return;let i={type:1,tags:e.tags||null,geometry:r};e.id!==null&&(i.id=e.id),t.features.push(i);}function E2(t,e,r,i){let n=[];if(Kl(n,e.geometry,t,r,!1,!1),!n.length)return;let a=e.tags||null;if(i.lineMetrics){a={};for(let o in e.tags)a[o]=e.tags[o];a[Fd]=e.geometry.start/e.geometry.size,a[Td]=e.geometry.end/e.geometry.size;}let s={type:2,tags:a,geometry:n};e.id!==null&&(s.id=e.id),t.features.push(s);}function F2(t,e,r){let i=[];for(let a=0;a<e.geometry.length;a++)Kl(i,e.geometry[a],t,r,e.type==="Polygon",a===0);if(!i.length)return;let n={type:e.type==="Polygon"?3:2,tags:e.tags||null,geometry:i};e.id!==null&&(n.id=e.id),t.features.push(n);}function T2(t,e,r){let i=[];for(let a=0;a<e.geometry.length;a++){let s=e.geometry[a];for(let o=0;o<s.length;o++)Kl(i,s[o],t,r,!0,o===0);}if(!i.length)return;let n={type:3,tags:e.tags||null,geometry:i};e.id!==null&&(n.id=e.id),t.features.push(n);}function Kl(t,e,r,i,n,a){let s=i*i;if(i>0&&e.size<(n?s:i)){r.numPoints+=e.points.length/3;return;}let o=[];for(let l=0;l<e.points.length;l+=3)(i===0||e.points[l+2]>s)&&(r.numSimplified++,o.push(e.points[l],e.points[l+1])),r.numPoints++;n&&k2(o,a),t.push(o);}function k2(t,e){let r=0;for(let i=0,n=t.length,a=n-2;i<n;a=i,i+=2)r+=(t[i]-t[a])*(t[i+1]+t[a+1]);if(r>0===e)for(let i=0,n=t.length;i<n/2;i+=2){let a=t[i],s=t[i+1];t[i]=t[n-2-i],t[i+1]=t[n-1-i],t[n-2-i]=a,t[n-1-i]=s;}}function oc(t,e){if(t.transformed)return t;let r=1<<t.z,i=t.x,n=t.y;for(let a of t.features)a.type===1?I2(a,e,r,i,n):C2(a,e,r,i,n);return t.transformed=!0,t;}function I2(t,e,r,i,n){let a=t,s=t.geometry,o=[];for(let l=0;l<s.length;l+=2)o.push(kd(s[l],s[l+1],e,r,i,n));return a.geometry=o,a;}function C2(t,e,r,i,n){let a=t,s=t.geometry,o=[];for(let l of s){let u=[];for(let h=0;h<l.length;h+=2)u.push(kd(l[h],l[h+1],e,r,i,n));o.push(u);}return a.geometry=o,a;}function kd(t,e,r,i,n,a){return[Math.round(r*(t*i-n)),Math.round(r*(e*i-a))];}var M2=class{constructor(t){this.options=t,this.total=0,this.stats={},this.tiles={},this.tileCoords=[],this.stats={},this.total=0;}initialize(t){this.splitTile(t,0,0,0),this.options.debug&&(t.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)));}updateIndex(t,e,r){r.debug>1&&(console.log("invalidating tiles"),console.time("invalidating")),this.invalidateTiles(e),r.debug>1&&console.timeEnd("invalidating");let[i,n,a]=[0,0,0],s=sc(t,i,n,a,r);s.source=t;let o=Xn(i,n,a);if(this.tiles[o]=s,this.tileCoords.push({z:i,x:n,y:a,id:o}),r.debug){let l=`z${i}`;this.stats[l]=(this.stats[l]||0)+1,this.total++;}}getClusterExpansionZoom(t){return null;}getChildren(t){return null;}getLeaves(t,e,r){return null;}getTile(t,e,r){let{extent:i,debug:n}=this.options,a=1<<t;e=e+a&a-1;let s=Xn(t,e,r);if(this.tiles[s])return oc(this.tiles[s],i);n>1&&console.log("drilling down to z%d-%d-%d",t,e,r);let o=t,l=e,u=r,h;for(;!h&&o>0;)o--,l>>=1,u>>=1,h=this.tiles[Xn(o,l,u)];return!h?.source||(n>1&&(console.log("found parent tile z%d-%d-%d",o,l,u),console.time("drilling down")),this.splitTile(h.source,o,l,u,t,e,r),n>1&&console.timeEnd("drilling down"),!this.tiles[s])?null:oc(this.tiles[s],i);}splitTile(t,e,r,i,n,a,s){let o=[t,e,r,i],l=this.options,u=l.debug;for(;o.length;){i=o.pop(),r=o.pop(),e=o.pop(),t=o.pop();let h=1<<e,c=Xn(e,r,i),p=this.tiles[c];if(!p&&(u>1&&console.time("creation"),p=this.tiles[c]=sc(t,e,r,i,l),this.tileCoords.push({z:e,x:r,y:i,id:c}),u)){u>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",e,r,i,p.numFeatures,p.numPoints,p.numSimplified),console.timeEnd("creation"));let A=`z${e}`;this.stats[A]=(this.stats[A]||0)+1,this.total++;}if(p.source=t,n==null){if(e===l.indexMaxZoom||p.numPoints<=l.indexMaxPoints)continue;}else{if(e===l.maxZoom||e===n)continue;if(n!=null){let A=n-e;if(r!==a>>A||i!==s>>A)continue;}}if(p.source=null,!t.length)continue;u>1&&console.time("clipping");let f=.5*l.buffer/l.extent,d=.5-f,y=.5+f,m=1+f,g=null,x=null,b=null,v=null,w=Fe(t,h,r-f,r+y,0,p.minX,p.maxX,l),_=Fe(t,h,r+d,r+m,0,p.minX,p.maxX,l);w&&(g=Fe(w,h,i-f,i+y,1,p.minY,p.maxY,l),x=Fe(w,h,i+d,i+m,1,p.minY,p.maxY,l)),_&&(b=Fe(_,h,i-f,i+y,1,p.minY,p.maxY,l),v=Fe(_,h,i+d,i+m,1,p.minY,p.maxY,l)),u>1&&console.timeEnd("clipping"),o.push(g||[],e+1,r*2,i*2),o.push(x||[],e+1,r*2,i*2+1),o.push(b||[],e+1,r*2+1,i*2),o.push(v||[],e+1,r*2+1,i*2+1);}}invalidateTiles(t){if(!t.length)return;let e=this.options,{debug:r}=e,i=1/0,n=-1/0,a=1/0,s=-1/0;for(let u of t)i=Math.min(i,u.minX),n=Math.max(n,u.maxX),a=Math.min(a,u.minY),s=Math.max(s,u.maxY);let o=e.buffer/e.extent,l=new Set();for(let u in this.tiles){let h=this.tiles[u],c=1<<h.z,p=(h.x-o)/c,f=(h.x+1+o)/c,d=(h.y-o)/c,y=(h.y+1+o)/c;if(n<p||i>=f||s<d||a>=y)continue;let m=!1;for(let g of t)if(g.maxX>=p&&g.minX<f&&g.maxY>=d&&g.minY<y){m=!0;break;}if(m){if(r){r>1&&console.log("invalidate tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",h.z,h.x,h.y,h.numFeatures,h.numPoints,h.numSimplified);let g=`z${h.z}`;this.stats[g]=(this.stats[g]||0)-1,this.total--;}delete this.tiles[u],l.add(u);}}l.size&&(this.tileCoords=this.tileCoords.filter(u=>!l.has(u.id)));}};function Xn(t,e,r){return((1<<t)*r+e)*32+t;}var B2={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,updateable:!1,cluster:!1,clusterOptions:Yo,debug:0},Id=class{constructor(t,e){e=this.options=Object.assign({},B2,e);let r=e.debug;if(r&&console.time("preprocess data"),e.maxZoom<0||e.maxZoom>24)throw Error("maxZoom should be in the 0-24 range");if(e.promoteId&&e.generateId)throw Error("promoteId and generateId cannot be used together.");let i=Gl(t,e);r&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",e.indexMaxZoom,e.indexMaxPoints),console.time("generate tiles")),i=Zl(i,e),e.updateable&&(this.source=i),this.initializeIndex(i,e);}initializeIndex(t,e){this.tileIndex=e.cluster?new w2(e.clusterOptions):new M2(e),t.length&&this.tileIndex.initialize(t);}getTile(t,e,r){return t=+t,e=+e,r=+r,t<0||t>24?null:this.tileIndex.getTile(t,e,r);}updateData(t,e){let r=this.options;if(!r.updateable)throw Error("to update tile geojson `updateable` option must be set to true");let{affected:i,source:n}=g2(this.source,t,r);e&&({affected:i,source:n}=this.filterUpdate(n,i,e)),i.length&&(this.source=n,this.tileIndex.updateIndex(n,i,r));}filterUpdate(t,e,r){let i=new Set();for(let n of t)n.id!=null&&(r(wa(n))||(e.push(n),i.add(n.id)));return t=t.filter(n=>!i.has(n.id)),{affected:e,source:t};}getData(){if(!this.options.updateable)throw Error("to retrieve data the `updateable` option must be set to true");return s2(this.source);}updateClusterOptions(t,e){let r=this.options.cluster;if(this.options.cluster=t,this.options.clusterOptions=e,r==t){this.tileIndex.updateIndex(this.source,[],this.options);return;}this.initializeIndex(this.source,this.options);}getClusterExpansionZoom(t){return this.tileIndex.getClusterExpansionZoom(t);}getClusterChildren(t){return this.tileIndex.getChildren(t);}getClusterLeaves(t,e,r){return this.tileIndex.getLeaves(t,e,r);}},Wo=At([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4),P2=Wo.members;Wo.size,Wo.alignment;var Zo=At([{name:"a_uv_x",components:1,type:"Float32"},{name:"a_split_index",components:1,type:"Float32"}]),z2=Zo.members;Zo.size,Zo.alignment;var L2=Math.cos(75/2*(Math.PI/180)),Cd=1/2,lc=2**14/Cd,Md=class{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map(e=>e.id),this.index=t.index,this.hasDependencies=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={};for(let e of this.layers)this.gradients[e.id]={};this.layoutVertexArray=new Wm(),this.layoutVertexArray2=new Zm(),this.indexArray=new mn(),this.programConfigurations=new dr(t.layers,t.zoom),this.segments=new Jt(),this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(e=>e.isStateDependent()).map(e=>e.id);}populate(t,e,r){this.hasDependencies=ga("line",this.layers,e)||this.hasLineDasharray(this.layers);let i=this.layers[0].layout.get("line-sort-key"),n=!i.isConstant(),a=[],s=new at(this.zoom),o=this.layers[0]._featureFilter.needGeometry;for(let{feature:l,id:u,index:h,sourceLayerIndex:c}of t){let p=si(l,o);if(!this.layers[0]._featureFilter.filter(s,p,r))continue;let f=n?i.evaluate(p,{},r):void 0,d={id:u,properties:l.properties,type:l.type,sourceLayerIndex:c,index:h,geometry:o?p.geometry:vr(l),patterns:{},dashes:{},sortKey:f};a.push(d);}n&&a.sort((l,u)=>l.sortKey-u.sortKey);for(let l of a){let{geometry:u,index:h,sourceLayerIndex:c}=l;this.hasDependencies?(ga("line",this.layers,e)?Nl("line",this.layers,l,{zoom:this.zoom},e):this.hasLineDasharray(this.layers)&&this.addLineDashDependencies(this.layers,l,this.zoom,e),this.patternFeatures.push(l)):this.addFeature(l,u,h,r,{},{},e.subdivisionGranularity);let p=t[h].feature;e.featureIndex.insert(p,u,h,c,this.index);}}update(t,e,r,i){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,{imagePositions:r,dashPositions:i});}addFeatures({options:t,canonical:e,patternPositions:r,dashPositions:i}){for(let n of this.patternFeatures)this.addFeature(n,n.geometry,n.index,e,r,i,t.subdivisionGranularity);}isEmpty(){return this.layoutVertexArray.length===0;}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload;}upload(t){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=t.createVertexBuffer(this.layoutVertexArray2,z2)),this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,P2),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0;}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy());}lineFeatureClips(t){if(t.properties&&Object.hasOwn(t.properties,"geojsonvt_clip_start")&&Object.hasOwn(t.properties,"geojsonvt_clip_end"))return{start:+t.properties[Fd],end:+t.properties[Td]};}addFeature(t,e,r,i,n,a,s){let o=this.layers[0].layout,l=o.get("line-join").evaluate(t,{}),u=o.get("line-cap").evaluate(t,{}),h=o.get("line-miter-limit").evaluate(t,{}),c=o.get("line-round-limit").evaluate(t,{});this.lineClips=this.lineFeatureClips(t);for(let p of e)this.addLine(p,t,l,u,h,c,i,s);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,r,{imagePositions:n,dashPositions:a,canonical:i});}addLine(t,e,r,i,n,a,s,o){this.distance=0,this.scaledDistance=0,this.totalDistance=0;let l=s?o.line.getGranularityForZoomLevel(s.z):1;if(t=or(t,l),this.lineClips){this.lineClipsArray.push(this.lineClips);for(let b=0;b<t.length-1;b++)this.totalDistance+=t[b].dist(t[b+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance);}let u=gn.types[e.type]==="Polygon",h=t.length;for(;h>=2&&t[h-1].equals(t[h-2]);)h--;let c=0;for(;c<h-1&&t[c].equals(t[c+1]);)c++;if(h-c<(u?3:2))return;r==="bevel"&&(n=1.05);let p=this.overscaling<=16?15*mt/(512*this.overscaling):0,f=this.segments.prepareSegment(h*10,this.layoutVertexArray,this.indexArray),d,y,m,g,x;this.e1=this.e2=-1,u&&(d=t[h-2],x=t[c].sub(d)._unit()._perp());for(let b=c;b<h;b++){if(m=b===h-1?u?t[c+1]:void 0:t[b+1],m&&t[b].equals(m))continue;x&&(g=x),d&&(y=d),d=t[b],x=m?m.sub(d)._unit()._perp():g,g||=x;let v=g.add(x);(v.x!==0||v.y!==0)&&v._unit();let w=g.x*x.x+g.y*x.y,_=v.x*x.x+v.y*x.y,A=_===0?1/0:1/_,S=2*Math.sqrt(2-2*_),F=_<L2&&y&&m,z=g.x*x.y-g.y*x.x>0;if(F&&b>c){let P=d.dist(y);if(P>2*p){let E=d.sub(d.sub(y)._mult(p/P)._round());this.updateDistance(y,E),this.addCurrentVertex(E,g,0,0,f),y=E;}}let $=y&&m,B=$?r:u?"butt":i;if($&&B==="round"&&(A<a?B="miter":A<=2&&(B="fakeround")),B==="miter"&&A>n&&(B="bevel"),B==="bevel"&&(A>2&&(B="flipbevel"),A<n&&(B="miter")),y&&this.updateDistance(y,d),B==="miter")v._mult(A),this.addCurrentVertex(d,v,0,0,f);else if(B==="flipbevel"){if(A>100)v=x.mult(-1);else{let P=A*g.add(x).mag()/g.sub(x).mag();v._perp()._mult(P*(z?-1:1));}this.addCurrentVertex(d,v,0,0,f),this.addCurrentVertex(d,v.mult(-1),0,0,f);}else if(B==="bevel"||B==="fakeround"){let P=-Math.sqrt(A*A-1),E=z?P:0,O=z?0:P;if(y&&this.addCurrentVertex(d,g,E,O,f),B==="fakeround"){let R=Math.round(S*180/Math.PI/20);for(let L=1;L<R;L++){let tt=L/R;if(tt!==.5){let pt=tt-.5,st=1.0904+w*(-3.2452+w*(3.55645-w*1.43519)),ft=.848013+w*(-1.06021+w*.215638);tt+=tt*pt*(tt-1)*(st*pt*pt+ft);}let it=x.sub(g)._mult(tt)._add(g)._unit()._mult(z?-1:1);this.addHalfVertex(d,it.x,it.y,!1,z,0,f);}}m&&this.addCurrentVertex(d,x,-E,-O,f);}else if(B==="butt")this.addCurrentVertex(d,v,0,0,f);else if(B==="square"){let P=y?1:-1;this.addCurrentVertex(d,v,P,P,f);}else B==="round"&&(y&&(this.addCurrentVertex(d,g,0,0,f),this.addCurrentVertex(d,g,1,1,f,!0)),m&&(this.addCurrentVertex(d,x,-1,-1,f,!0),this.addCurrentVertex(d,x,0,0,f)));if(F&&b<h-1){let P=d.dist(m);if(P>2*p){let E=d.add(m.sub(d)._mult(p/P)._round());this.updateDistance(d,E),this.addCurrentVertex(E,x,0,0,f),d=E;}}}}addCurrentVertex(t,e,r,i,n,a=!1){let s=e.x+e.y*r,o=e.y-e.x*r,l=-e.x+e.y*i,u=-e.y-e.x*i;this.addHalfVertex(t,s,o,a,!1,r,n),this.addHalfVertex(t,l,u,a,!0,-i,n),this.distance>lc/2&&this.totalDistance===0&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(t,e,r,i,n,a));}addHalfVertex({x:t,y:e},r,i,n,a,s,o){let l=(this.lineClips?this.scaledDistance*(lc-1):this.scaledDistance)*Cd;if(this.layoutVertexArray.emplaceBack((t<<1)+ +!!n,(e<<1)+ +!!a,Math.round(63*r)+128,Math.round(63*i)+128,(s===0?0:s<0?-1:1)+1|(l&63)<<2,l>>6),this.lineClips){let h=(this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start);this.layoutVertexArray2.emplaceBack(h,this.lineClipsArray.length);}let u=o.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,u,this.e2),o.primitiveLength++),a?this.e2=u:this.e1=u;}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance;}updateDistance(t,e){this.distance+=t.dist(e),this.updateScaledDistance();}hasLineDasharray(t){for(let e of t){let r=e.paint.get("line-dasharray");if(r&&!r.isConstant())return!0;}return!1;}addLineDashDependencies(t,e,r,i){for(let n of t){let a=n.paint.get("line-dasharray");if(!a||a.value.kind==="constant")continue;let s=n.layout.get("line-cap").evaluate(e,{})==="round",o={dasharray:a.value.evaluate({zoom:r-1},e,{}),round:s},l={dasharray:a.value.evaluate({zoom:r},e,{}),round:s},u={dasharray:a.value.evaluate({zoom:r+1},e,{}),round:s},h=`${o.dasharray.join(",")},${o.round}`,c=`${l.dasharray.join(",")},${l.round}`,p=`${u.dasharray.join(",")},${u.round}`;i.dashDependencies[h]=o,i.dashDependencies[c]=l,i.dashDependencies[p]=u,e.dashes[n.id]={min:h,mid:c,max:p};}}};I("LineBucket",Md,{omit:["layers","patternFeatures"]});var V2,O2=()=>V2||=new qt({"line-cap":new U(D.layout_line["line-cap"],"line-cap"),"line-join":new U(D.layout_line["line-join"],"line-join"),"line-miter-limit":new U(D.layout_line["line-miter-limit"],"line-miter-limit"),"line-round-limit":new U(D.layout_line["line-round-limit"],"line-round-limit"),"line-sort-key":new U(D.layout_line["line-sort-key"],"line-sort-key")}),R2,$2=()=>R2||=new qt({"line-opacity":new U(D.paint_line["line-opacity"],"line-opacity"),"line-layer-opacity":new V(D.paint_line["line-layer-opacity"],"line-layer-opacity"),"line-color":new U(D.paint_line["line-color"],"line-color"),"line-translate":new V(D.paint_line["line-translate"],"line-translate"),"line-translate-anchor":new V(D.paint_line["line-translate-anchor"],"line-translate-anchor"),"line-width":new U(D.paint_line["line-width"],"line-width"),"line-gap-width":new U(D.paint_line["line-gap-width"],"line-gap-width"),"line-offset":new U(D.paint_line["line-offset"],"line-offset"),"line-blur":new U(D.paint_line["line-blur"],"line-blur"),"line-dasharray":new en(D.paint_line["line-dasharray"],"line-dasharray"),"line-pattern":new en(D.paint_line["line-pattern"],"line-pattern"),"line-gradient":new Na(D.paint_line["line-gradient"],"line-gradient")}),uc={get paint(){return $2();},get layout(){return O2();}},N2=class extends U{possiblyEvaluate(t,e){return e=new at(Math.floor(e.zoom),{now:e.now,fadeDuration:e.fadeDuration,zoomHistory:e.zoomHistory,transition:e.transition}),super.possiblyEvaluate(t,e);}evaluate(t,e,r,i){return e=Ut({},e,{zoom:Math.floor(e.zoom)}),super.evaluate(t,e,r,i);}},Yn;var U2=class extends ce{constructor(t,e){super(t,uc,e),this.gradientVersion=0,Yn||(Yn=new N2(uc.paint.properties["line-width"].specification,"line-floorwidth"),Yn.useIntegerZoom=!0);}_handleSpecialPaintPropertyUpdate(t){if(t==="line-gradient"){let e=this.gradientExpression();this.stepInterpolant=nm(e)?e._styleExpression.expression instanceof yl:!1,this.gradientVersion=(this.gradientVersion+1)%(2**53-1);}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression;}recalculate(t,e){super.recalculate(t,e),this.paint._values["line-floorwidth"]=Yn.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,t);}createBucket(t){return new Md(t);}queryRadius(t){let e=t,r=hc(jr("line-width",this,e),jr("line-gap-width",this,e)),i=jr("line-offset",this,e);return r/2+Math.abs(i)+qa(this.paint.get("line-translate"));}queryIntersectsFeature({queryGeometry:t,feature:e,featureState:r,geometry:i,transform:n,pixelsToTileUnits:a}){let s=ja(t,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),-n.bearingInRadians,a),o=a/2*hc(this.paint.get("line-width").evaluate(e,r),this.paint.get("line-gap-width").evaluate(e,r)),l=this.paint.get("line-offset").evaluate(e,r);return l&&(i=gg(i,l*a)),cg(s,i,o);}isTileClipped(){return!0;}};function hc(t,e){return e>0?e+2*t:t;}var q2=At([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"},{name:"a_height_offset",components:1,type:"Float32"}],4),j2=At([{name:"a_projected_pos",components:3,type:"Float32"}],4);At([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);var G2=At([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);At([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);var cc=At([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),d5=At([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);At([{name:"triangle",components:3,type:"Uint16"}]),At([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"},{type:"Float32",name:"heightOffset"}]),At([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"},{type:"Float32",name:"heightOffset"}]),At([{type:"Float32",name:"offsetX"}]),At([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),At([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);var mr=new class{constructor(){this.TIMEOUT=5e3,this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null,this.loadScriptResolve=()=>{};}setState(t){this.pluginStatus=t.pluginStatus,this.pluginURL=t.pluginURL;}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL};}setMethods(t){if(mr.isParsed())throw Error("RTL text plugin already registered.");this.applyArabicShaping=t.applyArabicShaping,this.processBidirectionalText=t.processBidirectionalText,this.processStyledBidirectionalText=t.processStyledBidirectionalText,this.loadScriptResolve();}isParsed(){return this.applyArabicShaping!=null&&this.processBidirectionalText!=null&&this.processStyledBidirectionalText!=null;}getRTLTextPluginStatus(){return this.pluginStatus;}async syncState(t,e){if(this.isParsed())return this.getState();if(t.pluginStatus!=="loading")return this.setState(t),t;let r=t.pluginURL,i=new Promise(a=>{this.loadScriptResolve=a;}),n=new Promise(a=>setTimeout(()=>a(),this.TIMEOUT));if(await e(r),await Promise.race([i,n]),this.isParsed()){let a={pluginStatus:"loaded",pluginURL:r};return this.setState(a),a;}throw this.setState({pluginStatus:"error",pluginURL:""}),Error(`RTL Text Plugin failed to import scripts from ${r}`);}}();function X2(t){return /[\\u0600-\\u0604\\u0606-\\u060B\\u060D-\\u061A\\u061C-\\u061E\\u0620-\\u063F\\u0641-\\u064A\\u0656-\\u066F\\u0671-\\u06DC\\u06DE-\\u070D\\u070F-\\u074A\\u074D-\\u077F\\u07C0-\\u07FA\\u07FD-\\u07FF\\u0840-\\u085B\\u085E\\u0860-\\u086A\\u0870-\\u0891\\u0897-\\u08E1\\u08E3-\\u08FF\\u1800\\u1801\\u1804\\u1806-\\u1819\\u1820-\\u1878\\u1880-\\u18AA\\uA840-\\uA877\\uFB50-\\uFD3D\\uFD40-\\uFDCF\\uFDF0-\\uFDFF\\uFE70-\\uFE74\\uFE76-\\uFEFC]|\\uD802[\\uDEC0-\\uDEE6\\uDEEB-\\uDEF6\\uDF80-\\uDF91\\uDF99-\\uDF9C\\uDFA9-\\uDFAF]|\\uD803[\\uDD00-\\uDD27\\uDD30-\\uDD39\\uDE60-\\uDE7E\\uDEC2-\\uDEC7\\uDED0-\\uDED8\\uDEFA-\\uDEFF\\uDF30-\\uDF59\\uDF70-\\uDF89\\uDFB0-\\uDFCB]|\\uD805[\\uDE60-\\uDE6C]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99\\uDC9C-\\uDC9F]|\\uD83A[\\uDD00-\\uDD4B\\uDD50-\\uDD59\\uDD5E\\uDD5F]|\\uD83B[\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB\\uDEF0\\uDEF1]/gim.test(String.fromCodePoint(t));}function Y2(t){return /[\\u0591-\\u05C7\\u05D0-\\u05EA\\u05EF-\\u05F4\\u0600-\\u0604\\u0606-\\u060B\\u060D-\\u061A\\u061C-\\u061E\\u0620-\\u063F\\u0641-\\u064A\\u0656-\\u066F\\u0671-\\u06DC\\u06DE-\\u070D\\u070F-\\u074A\\u074D-\\u07B1\\u07C0-\\u07FA\\u07FD-\\u082D\\u0830-\\u083E\\u0840-\\u085B\\u085E\\u0860-\\u086A\\u0870-\\u0891\\u0897-\\u08E1\\u08E3-\\u08FF\\uFB1D-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFD3D\\uFD40-\\uFDCF\\uFDF0-\\uFDFF\\uFE70-\\uFE74\\uFE76-\\uFEFC]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC57-\\uDC9E\\uDCA7-\\uDCAF\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDCFB-\\uDD1B\\uDD1F-\\uDD39\\uDD3F-\\uDD59\\uDD80-\\uDDB7\\uDDBC-\\uDDCF\\uDDD2-\\uDE03\\uDE05\\uDE06\\uDE0C-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE35\\uDE38-\\uDE3A\\uDE3F-\\uDE48\\uDE50-\\uDE58\\uDE60-\\uDE9F\\uDEC0-\\uDEE6\\uDEEB-\\uDEF6\\uDF00-\\uDF35\\uDF39-\\uDF55\\uDF58-\\uDF72\\uDF78-\\uDF91\\uDF99-\\uDF9C\\uDFA9-\\uDFAF]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2\\uDCFA-\\uDD27\\uDD30-\\uDD39\\uDD40-\\uDD65\\uDD69-\\uDD85\\uDD8E\\uDD8F\\uDE60-\\uDE7E\\uDE80-\\uDEA9\\uDEAB-\\uDEAD\\uDEB0\\uDEB1\\uDEC2-\\uDEC7\\uDED0-\\uDED8\\uDEFA-\\uDF27\\uDF30-\\uDF59\\uDF70-\\uDF89\\uDFB0-\\uDFCB\\uDFE0-\\uDFF6]|\\uD83A[\\uDC00-\\uDCC4\\uDCC7-\\uDCD6\\uDD00-\\uDD4B\\uDD50-\\uDD59\\uDD5E\\uDD5F]|\\uD83B[\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB\\uDEF0\\uDEF1]/gim.test(String.fromCodePoint(t));}function W2(t){return /[\\u02EA\\u02EB\\u2E80-\\u2FDF\\u2FF0-\\u303F\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FD-\\u30FF\\u3105-\\u312F\\u31A0-\\u4DBF\\u4E00-\\uA48C\\uA490-\\uA4C6\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFE10-\\uFE1F\\uFE30-\\uFE4F\\uFF00-\\uFFEF]|\\uD81B[\\uDFE0-\\uDFFF]|[\\uD81C-\\uD822\\uD840-\\uD868\\uD86A-\\uD86D\\uD86F-\\uD872\\uD874-\\uD879\\uD880-\\uD883\\uD885-\\uD88C][\\uDC00-\\uDFFF]|\\uD823[\\uDC00-\\uDCD5\\uDCFF-\\uDD1E\\uDD80-\\uDDF2]|\\uD82B[\\uDFF0-\\uDFFF]|\\uD82C[\\uDC00-\\uDEFB]|\\uD83C[\\uDE00-\\uDEFF]|\\uD869[\\uDC00-\\uDEDF\\uDF00-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEAD\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0\\uDFF0-\\uDFFF]|\\uD87B[\\uDC00-\\uDE5D]|\\uD87E[\\uDC00-\\uDE1D]|\\uD884[\\uDC00-\\uDF4A\\uDF50-\\uDFFF]|\\uD88D[\\uDC00-\\uDC79]/gim.test(String.fromCodePoint(t));}function Xa(t){return /[\\u02EA\\u02EB\\u1100-\\u11FF\\u1401-\\u167F\\u18B0-\\u18FF\\u2065\\u20DD-\\u20E0\\u20E2-\\u20E4\\u2B97\\u2BF0-\\u2BFF\\u2E50\\u2E51\\u2E80-\\u3007\\u3012\\u3013\\u3020-\\u302F\\u3031-\\u30FB\\u30FD-\\uA4CF\\uA960-\\uA97F\\uAC00-\\uD7FF\\uF900-\\uFAFF\\uFE10-\\uFE1F\\uFE30-\\uFE48\\uFE50-\\uFE57\\uFE5F-\\uFE62\\uFE67-\\uFE6F\\uFF00-\\uFF07\\uFF0A-\\uFF0C\\uFF0E-\\uFF19\\uFF1F-\\uFF3A\\uFF3C\\uFF3E\\uFF40-\\uFF5A\\uFFE0-\\uFFE2\\uFFE4-\\uFFE7\\uFFF0-\\uFFF8]|\\uD802[\\uDD80-\\uDD9F]|\\uD805[\\uDD80-\\uDDFF]|\\uD806[\\uDE00-\\uDEBF]|[\\uD80C-\\uD810\\uD81C-\\uD822\\uD83C\\uD83D\\uD840-\\uD87E\\uD880-\\uD8BE][\\uDC00-\\uDFFF]|\\uD811[\\uDC00-\\uDE7F]|\\uD81B[\\uDFE0-\\uDFFF]|\\uD823[\\uDC00-\\uDDFF]|\\uD82B[\\uDFF0-\\uDFFF]|\\uD82C[\\uDC00-\\uDEFF]|\\uD833[\\uDEC0-\\uDFCF]|\\uD834[\\uDC00-\\uDDFF\\uDEE0-\\uDF7F]|\\uD836[\\uDC00-\\uDEAF]|\\uD83E[\\uDD00-\\uDEFF]|[\\uD87F\\uD8BF][\\uDC00-\\uDFFD]/gim.test(String.fromCodePoint(t));}function Z2(t){return /[\\xA7\\xA9\\xAE\\xB1\\xBC-\\xBE\\xD7\\xF7\\u2016\\u2020\\u2021\\u2030\\u2031\\u203B\\u203C\\u2042\\u2047-\\u2049\\u2051\\u2100-\\u218F\\u221E\\u2234\\u2235\\u2300-\\u2307\\u230C-\\u231F\\u2324-\\u2328\\u232B\\u237D-\\u239A\\u23BE-\\u23CD\\u23CF\\u23D1-\\u23DB\\u23E2-\\u2422\\u2424-\\u24FF\\u25A0-\\u2619\\u2620-\\u2767\\u2776-\\u2793\\u2B12-\\u2B2F\\u2B50-\\u2B59\\u2BB8-\\u2BEB\\u3000-\\u303F\\u30A0-\\u30FF\\uE000-\\uF8FF\\uFE30-\\uFE6F\\uFF00-\\uFFEF\\uFFFC\\uFFFD]|[\\uDB80-\\uDBFF][\\uDC00-\\uDFFF]/gim.test(String.fromCodePoint(t));}function H2(t){return /[\\r\\u0300-\\u036F\\u0483-\\u0489\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u0600-\\u0605\\u0610-\\u061A\\u064B-\\u065F\\u0670\\u06D6-\\u06DD\\u06DF-\\u06E4\\u06E7\\u06E8\\u06EA-\\u06ED\\u070F\\u0711\\u0730-\\u074A\\u07A6-\\u07B0\\u07EB-\\u07F3\\u07FD\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u082D\\u0859-\\u085B\\u0890\\u0891\\u0897-\\u089F\\u08CA-\\u0903\\u093A-\\u093C\\u093E-\\u094F\\u0951-\\u0957\\u0962\\u0963\\u0981-\\u0983\\u09BC\\u09BE-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CD\\u09D7\\u09E2\\u09E3\\u09FE\\u0A01-\\u0A03\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A70\\u0A71\\u0A75\\u0A81-\\u0A83\\u0ABC\\u0ABE-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AE2\\u0AE3\\u0AFA-\\u0AFF\\u0B01-\\u0B03\\u0B3C\\u0B3E-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B55-\\u0B57\\u0B62\\u0B63\\u0B82\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD7\\u0C00-\\u0C04\\u0C3C\\u0C3E-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C62\\u0C63\\u0C81-\\u0C83\\u0CBC\\u0CBE-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CE2\\u0CE3\\u0CF3\\u0D00-\\u0D03\\u0D3B\\u0D3C\\u0D3E-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D57\\u0D62\\u0D63\\u0D81-\\u0D83\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DF2\\u0DF3\\u0E31\\u0E33-\\u0E3A\\u0E47-\\u0E4E\\u0EB1\\u0EB3-\\u0EBC\\u0EC8-\\u0ECE\\u0F18\\u0F19\\u0F35\\u0F37\\u0F39\\u0F3E\\u0F3F\\u0F71-\\u0F84\\u0F86\\u0F87\\u0F8D-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u102D-\\u1037\\u1039-\\u103E\\u1056-\\u1059\\u105E-\\u1060\\u1071-\\u1074\\u1082\\u1084-\\u1086\\u108D\\u109D\\u1100-\\u11FF\\u135D-\\u135F\\u1712-\\u1715\\u1732-\\u1734\\u1752\\u1753\\u1772\\u1773\\u17B4-\\u17D3\\u17DD\\u180B-\\u180D\\u180F\\u1885\\u1886\\u18A9\\u1920-\\u192B\\u1930-\\u193B\\u1A17-\\u1A1B\\u1A55-\\u1A5E\\u1A60\\u1A62\\u1A65-\\u1A7C\\u1A7F\\u1AB0-\\u1ADD\\u1AE0-\\u1AEB\\u1B00-\\u1B04\\u1B34-\\u1B44\\u1B6B-\\u1B73\\u1B80-\\u1B82\\u1BA1-\\u1BAD\\u1BE6-\\u1BF3\\u1C24-\\u1C37\\u1CD0-\\u1CD2\\u1CD4-\\u1CE8\\u1CED\\u1CF4\\u1CF7-\\u1CF9\\u1DC0-\\u1DFF\\u200C\\u200D\\u20D0-\\u20F0\\u2CEF-\\u2CF1\\u2D7F\\u2DE0-\\u2DFF\\u302A-\\u302F\\u3099\\u309A\\uA66F-\\uA672\\uA674-\\uA67D\\uA69E\\uA69F\\uA6F0\\uA6F1\\uA802\\uA806\\uA80B\\uA823-\\uA827\\uA82C\\uA880\\uA881\\uA8B4-\\uA8C5\\uA8E0-\\uA8F1\\uA8FF\\uA926-\\uA92D\\uA947-\\uA953\\uA960-\\uA97C\\uA980-\\uA983\\uA9B3-\\uA9C0\\uA9E5\\uAA29-\\uAA36\\uAA43\\uAA4C\\uAA4D\\uAA7C\\uAAB0\\uAAB2-\\uAAB4\\uAAB7\\uAAB8\\uAABE\\uAABF\\uAAC1\\uAAEB-\\uAAEF\\uAAF5\\uAAF6\\uABE3-\\uABEA\\uABEC\\uABED\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uFB1E\\uFE00-\\uFE0F\\uFE20-\\uFE2F\\uFF9E\\uFF9F]|\\uD800[\\uDDFD\\uDEE0\\uDF76-\\uDF7A]|\\uD802[\\uDE01-\\uDE03\\uDE05\\uDE06\\uDE0C-\\uDE0F\\uDE38-\\uDE3A\\uDE3F\\uDEE5\\uDEE6]|\\uD803[\\uDD24-\\uDD27\\uDD69-\\uDD6D\\uDEAB\\uDEAC\\uDEFA-\\uDEFF\\uDF46-\\uDF50\\uDF82-\\uDF85]|\\uD804[\\uDC00-\\uDC02\\uDC38-\\uDC46\\uDC70\\uDC73\\uDC74\\uDC7F-\\uDC82\\uDCB0-\\uDCBA\\uDCBD\\uDCC2\\uDCCD\\uDD00-\\uDD02\\uDD27-\\uDD34\\uDD45\\uDD46\\uDD73\\uDD80-\\uDD82\\uDDB3-\\uDDC0\\uDDC2\\uDDC3\\uDDC9-\\uDDCC\\uDDCE\\uDDCF\\uDE2C-\\uDE37\\uDE3E\\uDE41\\uDEDF-\\uDEEA\\uDF00-\\uDF03\\uDF3B\\uDF3C\\uDF3E-\\uDF44\\uDF47\\uDF48\\uDF4B-\\uDF4D\\uDF57\\uDF62\\uDF63\\uDF66-\\uDF6C\\uDF70-\\uDF74\\uDFB8-\\uDFC0\\uDFC2\\uDFC5\\uDFC7-\\uDFCA\\uDFCC-\\uDFD2\\uDFE1\\uDFE2]|\\uD805[\\uDC35-\\uDC46\\uDC5E\\uDCB0-\\uDCC3\\uDDAF-\\uDDB5\\uDDB8-\\uDDC0\\uDDDC\\uDDDD\\uDE30-\\uDE40\\uDEAB-\\uDEB7\\uDF1D-\\uDF1F\\uDF22-\\uDF2B]|\\uD806[\\uDC2C-\\uDC3A\\uDD30-\\uDD35\\uDD37\\uDD38\\uDD3B-\\uDD43\\uDDD1-\\uDDD7\\uDDDA-\\uDDE0\\uDDE4\\uDE01-\\uDE0A\\uDE33-\\uDE39\\uDE3B-\\uDE3E\\uDE47\\uDE51-\\uDE5B\\uDE84-\\uDE99\\uDF60-\\uDF67]|\\uD807[\\uDC2F-\\uDC36\\uDC38-\\uDC3F\\uDC92-\\uDCA7\\uDCA9-\\uDCB6\\uDD31-\\uDD36\\uDD3A\\uDD3C\\uDD3D\\uDD3F-\\uDD47\\uDD8A-\\uDD8E\\uDD90\\uDD91\\uDD93-\\uDD97\\uDEF3-\\uDEF6\\uDF00-\\uDF03\\uDF34-\\uDF3A\\uDF3E-\\uDF42\\uDF5A]|\\uD80D[\\uDC40\\uDC47-\\uDC55]|\\uD818[\\uDD1E-\\uDD2F]|\\uD81A[\\uDEF0-\\uDEF4\\uDF30-\\uDF36]|\\uD81B[\\uDD63\\uDD67-\\uDD6A\\uDF4F\\uDF51-\\uDF87\\uDF8F-\\uDF92\\uDFE4\\uDFF0\\uDFF1]|\\uD82F[\\uDC9D\\uDC9E]|\\uD833[\\uDF00-\\uDF2D\\uDF30-\\uDF46]|\\uD834[\\uDD65-\\uDD69\\uDD6D-\\uDD72\\uDD7B-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDE42-\\uDE44]|\\uD836[\\uDE00-\\uDE36\\uDE3B-\\uDE6C\\uDE75\\uDE84\\uDE9B-\\uDE9F\\uDEA1-\\uDEAF]|\\uD838[\\uDC00-\\uDC06\\uDC08-\\uDC18\\uDC1B-\\uDC21\\uDC23\\uDC24\\uDC26-\\uDC2A\\uDC8F\\uDD30-\\uDD36\\uDEAE\\uDEEC-\\uDEEF]|\\uD839[\\uDCEC-\\uDCEF\\uDDEE\\uDDEF\\uDEE3\\uDEE6\\uDEEE\\uDEEF\\uDEF5]|\\uD83A[\\uDCD0-\\uDCD6\\uDD44-\\uDD4A]|\\uD83C[\\uDDE6-\\uDDFF\\uDFFB-\\uDFFF]|\\uDB40[\\uDC20-\\uDC7F\\uDD00-\\uDDEF]/.test(t);}function pc(t){return /[\\u0E01-\\u0E3A\\u0E40-\\u0E4E\\u0E81\\u0E82\\u0E84\\u0E86-\\u0E8A\\u0E8C-\\u0EA3\\u0EA5\\u0EA7-\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EC8-\\u0ECE\\u0EDC-\\u0EDF\\u0F00-\\u0F47\\u0F49-\\u0F6C\\u0F71-\\u0F97\\u0F99-\\u0FBC\\u0FBE-\\u0FCC\\u0FCE-\\u0FD4\\u0FD9\\u0FDA\\u1000-\\u103F\\u1050-\\u108F\\u109A-\\u109F\\u1780-\\u17D3\\u17D7\\u17DC\\u17DD\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19DE\\u19DF\\u1A20-\\u1A5E\\u1A60-\\u1A7C\\u1AA0-\\u1AAD\\u1B00-\\u1B4C\\u1B4E-\\u1B7F\\uA980-\\uA9CD\\uA9D0-\\uA9D9\\uA9DE-\\uA9EF\\uA9FA-\\uA9FE\\uAA60-\\uAAC2\\uAADB-\\uAADF]|\\uD805[\\uDF00-\\uDF1A\\uDF1D-\\uDF2B\\uDF3A\\uDF3B\\uDF3F-\\uDF46]/gim.test(String.fromCodePoint(t));}function K2(t,e){return /(?:[\\u1039\\u17D2\\u1A60\\u1BAB\\u200D\\uAAF6]|\\uD802\\uDE3F|\\uD804[\\uDD33\\uDFD0]|\\uD806[\\uDD3E\\uDE47\\uDE99]|\\uD807[\\uDD45\\uDD97\\uDF42])$/.test(t)||/^\\p{gc=Mc}/u.test(e);}var J2={C:"18g,1;g2,3;4nb,1",D:"17k,1;5,1;1,1;1,5;4,d;1,7;1,2;z,2;8,g;i,12;1,2;9,1;1,1;1,2;14,3;2,1;28,9;3,f;2,4;1,1;2,3;2,6;7a,1;2,5;1,1;g,a;5,2;2,6;1,f",R:"17m,4;1,1;1,1;5,4;l,1;14,3;1,3;g,i;12,1;2,9;1,1;1,1;2,2;1,1;o,2;2x,3;f,2;4,1;1,2;3,2;6u,j;b,1;r,3;1,1;2,2;6,1",T:"174,b;1,1;1a,l;g,1;2t,7;2,6;2,2;1,4;bt,9;16,o;1,t;1clb,1"},Q2={1569:[65152,0,0,0],1570:[65153,65154,0,0],1571:[65155,65156,0,0],1572:[65157,65158,0,0],1573:[65159,65160,0,0],1574:[65161,65162,65163,65164],1575:[65165,65166,0,0],1576:[65167,65168,65169,65170],1577:[65171,65172,0,0],1578:[65173,65174,65175,65176],1579:[65177,65178,65179,65180],1580:[65181,65182,65183,65184],1581:[65185,65186,65187,65188],1582:[65189,65190,65191,65192],1583:[65193,65194,0,0],1584:[65195,65196,0,0],1585:[65197,65198,0,0],1586:[65199,65200,0,0],1587:[65201,65202,65203,65204],1588:[65205,65206,65207,65208],1589:[65209,65210,65211,65212],1590:[65213,65214,65215,65216],1591:[65217,65218,65219,65220],1592:[65221,65222,65223,65224],1593:[65225,65226,65227,65228],1594:[65229,65230,65231,65232],1601:[65233,65234,65235,65236],1602:[65237,65238,65239,65240],1603:[65241,65242,65243,65244],1604:[65245,65246,65247,65248],1605:[65249,65250,65251,65252],1606:[65253,65254,65255,65256],1607:[65257,65258,65259,65260],1608:[65261,65262,0,0],1609:[65263,65264,64488,64489],1610:[65265,65266,65267,65268],1611:[65136,0,0,65137],1612:[65138,0,0,0],1613:[65140,0,0,0],1614:[65142,0,0,65143],1615:[65144,0,0,65145],1616:[65146,0,0,65147],1617:[65148,0,0,65149],1618:[65150,0,0,65151],1649:[64336,64337,0,0],1655:[64477,0,0,0],1657:[64358,64359,64360,64361],1658:[64350,64351,64352,64353],1659:[64338,64339,64340,64341],1662:[64342,64343,64344,64345],1663:[64354,64355,64356,64357],1664:[64346,64347,64348,64349],1667:[64374,64375,64376,64377],1668:[64370,64371,64372,64373],1670:[64378,64379,64380,64381],1671:[64382,64383,64384,64385],1672:[64392,64393,0,0],1676:[64388,64389,0,0],1677:[64386,64387,0,0],1678:[64390,64391,0,0],1681:[64396,64397,0,0],1688:[64394,64395,0,0],1700:[64362,64363,64364,64365],1702:[64366,64367,64368,64369],1705:[64398,64399,64400,64401],1709:[64467,64468,64469,64470],1711:[64402,64403,64404,64405],1713:[64410,64411,64412,64413],1715:[64406,64407,64408,64409],1722:[64414,64415,0,0],1723:[64416,64417,64418,64419],1726:[64426,64427,64428,64429],1728:[64420,64421,0,0],1729:[64422,64423,64424,64425],1733:[64480,64481,0,0],1734:[64473,64474,0,0],1735:[64471,64472,0,0],1736:[64475,64476,0,0],1737:[64482,64483,0,0],1739:[64478,64479,0,0],1740:[64508,64509,64510,64511],1744:[64484,64485,64486,64487],1746:[64430,64431,0,0],1747:[64432,64433,0,0]},tv={\u0644\u0622:[65269,65270],\u0644\u0623:[65271,65272],\u0644\u0625:[65273,65274],\u0644\u0627:[65275,65276]},fc=1604,ev=/[\\u0600-\\u06ff\\u0750-\\u077f\\u0870-\\u089f\\u08a0-\\u08ff\\ufb50-\\ufdff\\ufe70-\\ufeff]/;function rv(t,e,r){let i=0;for(let n of t.split(";")){let[a,s]=n.split(",").map(l=>parseInt(l,36)),o=i+a;for(let l=o;l<o+s;l++)r.set(l,e);i=o+s;}}var Bd=new Map();for(let[t,e]of Object.entries(J2))rv(e,t,Bd);function iv(t){return Bd.get(t)??"U";}function nv(t){return t==="D"||t==="L"||t==="C";}function av(t){return t==="D"||t==="R"||t==="C";}function sv(t,e,r){return t==="D"?e&&r?3:e?1:r?2:0:t==="R"?+!!e:t==="L"?r?2:0:null;}function ov(t){return[...t].map(e=>{let r=e.codePointAt(0);return{codePoint:r,type:iv(r),form:null};});}function lv(t){let e=t.filter(r=>r.type!=="T");for(let r=0;r<e.length;r++){let i=e[r],n=r>0&&nv(e[r-1].type),a=r+1<e.length&&av(e[r+1].type);i.form=sv(i.type,n,a);}}function uv(t){let e=!1;for(let r of t)r.type==="T"?r.form=e?3:0:e=r.form===2||r.form===3;}function hv(t){let e=[];for(let r=0;r<t.length;r++){let i=t[r];if(i.codePoint!==fc){e.push(i);continue;}let n=r+1;for(;n<t.length&&t[n].type==="T";)n++;let a=t[n],s=a&&tv[String.fromCodePoint(fc,a.codePoint)];if(!s){e.push(i);continue;}let o=i.form===3||i.form===1;e.push({codePoint:s[+!!o],type:"R",form:0}),e.push(...t.slice(r+1,n)),r=n;}return e;}function cv(t){if(t.form===null)return t.codePoint;let e=Q2[t.codePoint];return e&&(e[t.form]||e[0])||t.codePoint;}function pv(t){if(!ev.test(t))return t;let e=ov(t);return lv(e),uv(e),hv(e).map(r=>String.fromCodePoint(cv(r))).join("");}function fv(t,e,r){let i=e.layout.get("text-transform").evaluate(r,{});return i==="uppercase"?t=t.toLocaleUpperCase():i==="lowercase"&&(t=t.toLocaleLowerCase()),(mr.applyArabicShaping??pv)(t);}function dv(t,e,r){for(let i of t.sections)i.text=fv(i.text,e,r);return t;}function $s(t,e,r){let i=r?e.last.points:e.first.points,n=r?i[i.length-1]:i[0];return`${t}:${n.x}:${n.y}`;}function yv(t){let e=t.first.points,r=e.length;for(let a=t.first.next;a;a=a.next)r+=a.points.length-1;let i=Array(r);for(let a=0;a<e.length;a++)i[a]=e[a];let n=e.length;for(let a=t.first.next;a;a=a.next){let s=a.points;for(let o=1;o<s.length;o++)i[n++]=s[o];}return i;}function dc(t,e,r,i,n){let a=e[r];delete e[r],e[i]=a;let s=t[a];return s.last.next=n.first,s.last=n.last,a;}function yc(t,e,r,i,n){let a=e[i];delete e[i],e[r]=a;let s=t[a];return n.last.next=s.first,s.first=n.first,a;}function mv(t){let e={},r={},i=[];for(let a of t){let s=a.text?a.text.toString():null,o={points:a.geometry[0],next:null},l={feature:a,first:o,last:o};if(!s){i.push(l);continue;}let u=$s(s,l),h=$s(s,l,!0);if(u in r&&h in e&&r[u]!==e[h]){let c=yc(i,e,u,h,l),p=dc(i,r,u,h,i[c]);delete e[u],delete r[h],r[$s(s,i[p],!0)]=p,i[c].feature.geometry=null;}else if(u in r)dc(i,r,u,h,l);else if(h in e)yc(i,e,u,h,l);else{let c=i.push(l)-1;e[u]=c,r[h]=c;}}let n=[];for(let a of i){let s=a.feature;s.geometry&&(a.first.next&&(s.geometry[0]=yv(a)),n.push(s));}return n;}var Pd=typeof Intl<"u"&&"Segmenter"in Intl,mc,gc;function Ho(t){if(!Pd||!H2(t))return[...t];mc??=new Intl.Segmenter(void 0,{granularity:"grapheme"});let e=[];for(let{segment:r}of mc.segment(t)){let i=e.length-1;i>=0&&K2(e[i],r)?e[i]+=r:e.push(r);}return e;}function gv(t){let e=new Set();if(Pd){gc??=new Intl.Segmenter(void 0,{granularity:"word"});for(let{index:i}of gc.segment(t))e.add(i);return e;}let r=0;for(let i of t.split(/\\b|(?=\\p{Ideo})/u))e.add(r),r+=i.length;return e;}function zd(t){let e=t.codePointAt(0);return t.length>(e>65535?2:1);}function Jl(t){return /\\s/u.test(String.fromCodePoint(t));}function Ko(t){for(let e of t)if(Xa(e.codePointAt(0)))return!0;return!1;}function xv(t){for(let e of t)if(!vv(e.codePointAt(0)))return!1;return!0;}function vv(t){return!X2(t);}function xc(t){return!(Xa(t)||Z2(t));}function Ld(t){return /\\p{sc=Arab}/u.test(String.fromCodePoint(t));}function Vd(t){return Y2(t);}function Od(t){for(let e of t)if(Vd(e.codePointAt(0)))return!0;return!1;}var Nr={"!":"\\uFE15","#":"\\uFF03",$:"\\uFF04","%":"\\uFF05","&":"\\uFF06","(":"\\uFE35",")":"\\uFE36","*":"\\uFF0A","+":"\\uFF0B",",":"\\uFE10","-":"\\uFE32",".":"\\u30FB","/":"\\uFF0F",":":"\\uFE13",";":"\\uFE14","<":"\\uFE3F","=":"\\uFF1D",">":"\\uFE40","?":"\\uFE16","@":"\\uFF20","[":"\\uFE47","\\\\":"\\uFF3C","]":"\\uFE48","^":"\\uFF3E",_:"\\uFE33","`":"\\uFF40","{":"\\uFE37","|":"\\u2015","}":"\\uFE38","~":"\\uFF5E","\\xA2":"\\uFFE0","\\xA3":"\\uFFE1","\\xA5":"\\uFFE5","\\xA6":"\\uFFE4","\\xAC":"\\uFFE2","\\xAF":"\\uFFE3","\\u2013":"\\uFE32","\\u2014":"\\uFE31","\\u2018":"\\uFE43","\\u2019":"\\uFE44","\\u201C":"\\uFE41","\\u201D":"\\uFE42","\\u2026":"\\uFE19","\\u22EF":"\\uFE19","\\u2027":"\\u30FB","\\u20A9":"\\uFFE6","\\u3001":"\\uFE11","\\u3002":"\\uFE12","\\u3008":"\\uFE3F","\\u3009":"\\uFE40","\\u300A":"\\uFE3D","\\u300B":"\\uFE3E","\\u300C":"\\uFE41","\\u300D":"\\uFE42","\\u300E":"\\uFE43","\\u300F":"\\uFE44","\\u3010":"\\uFE3B","\\u3011":"\\uFE3C","\\u3014":"\\uFE39","\\u3015":"\\uFE3A","\\u3016":"\\uFE17","\\u3017":"\\uFE18","\\uFF01":"\\uFE15","\\uFF08":"\\uFE35","\\uFF09":"\\uFE36","\\uFF0C":"\\uFE10","\\uFF0D":"\\uFE32","\\uFF0E":"\\u30FB","\\uFF1A":"\\uFE13","\\uFF1B":"\\uFE14","\\uFF1C":"\\uFE3F","\\uFF1E":"\\uFE40","\\uFF1F":"\\uFE16","\\uFF3B":"\\uFE47","\\uFF3D":"\\uFE48","\\uFF3F":"\\uFE33","\\uFF5B":"\\uFE37","\\uFF5C":"\\u2015","\\uFF5D":"\\uFE38","\\uFF5F":"\\uFE35","\\uFF60":"\\uFE36","\\uFF61":"\\uFE12","\\uFF62":"\\uFE41","\\uFF63":"\\uFE42"};function bv(t){let e="",r={premature:!0,value:void 0},i=t[Symbol.iterator](),n=i.next(),a=t[Symbol.iterator]();a.next();let s=a.next();for(;!n.done;)(s.done||!xc(s.value.codePointAt(0))||Nr[s.value])&&(r.premature||!xc(r.value.codePointAt(0))||Nr[r.value])&&Nr[n.value]?e+=Nr[n.value]:e+=n.value,r={value:n.value,premature:!1},n=i.next(),s=a.next();return e;}var wv={10:!0,13:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},Dv={40:!0};function vc(t,e,r,i,n,a){if("fontStack"in e){let s=r[e.fontStack],o=s?.[t];if(o)return o.metrics.advance*e.scale+n;let l=0;for(let u of t){let h=s?.[u];h&&(l+=h.metrics.advance*e.scale+n);}return l;}{let s=i[e.imageName];return s?s.displaySize[0]*e.scale*24/a+n:0;}}function bc(t,e,r,i){let n=(t-e)**2;return i?t<e?n/2:n*2:n+Math.abs(r)*r;}function wc(t){return /^\\s+$/u.test(t);}function _v(t,e,r){let i=0;return(t===10||t===13)&&(i-=1e4),r&&(i+=150),(t===40||t===65288)&&(i+=50),(e===41||e===65289)&&(i+=50),i;}function Dc(t,e,r,i,n,a){let s=null,o=bc(e,r,n,a);for(let l of i){let u=bc(e-l.x,r,n,a)+l.badness;u<=o&&(s=l,o=u);}return{index:t,x:e,priorBreak:s,badness:o};}function Rd(t){return t?Rd(t.priorBreak).concat(t.index):[];}var Ql=class Jo{constructor(e="",r=[],i=[]){this.text=e,this.sections=r,this.sectionIndex=i,this.imageSectionID=null,this._graphemes=null;}graphemes(){return this._graphemes??=Ho(this.text),this._graphemes;}static fromFeature(e,r){let i=new Jo();for(let n of e.sections)n.image?i.addImageSection(n):i.addTextSection(n,r);return i;}length(){return this.graphemes().length;}getSection(e){return this.sections[this.sectionIndex[e]];}getSectionIndex(e){return this.sectionIndex[e];}verticalizePunctuation(){this.text=bv(this.text),this._graphemes=null;}hasZeroWidthSpaces(){return this.text.includes("\\u200B");}trim(){let e=this.graphemes(),r=0;for(;r<e.length&&wc(e[r]);)r++;let i=e.length;for(;i>r&&wc(e[i-1]);)i--;this.text=e.slice(r,i).join(""),this.sectionIndex=this.sectionIndex.slice(r,i),this._graphemes=null;}substring(e,r){let i=this.graphemes().slice(e,r).join(""),n=this.sectionIndex.slice(e,r);return new Jo(i,this.sections,n);}toCodeUnitIndex(e){return this.graphemes().slice(0,e).join("").length;}toString(){return this.text;}getMaxScale(){return this.sectionIndex.reduce((e,r)=>Math.max(e,this.sections[r].scale),0);}getMaxImageSize(e){let r=0,i=0;for(let n=0;n<this.length();n++){let a=this.getSection(n);if("imageName"in a){let s=e[a.imageName];if(!s)continue;let o=s.displaySize;r=Math.max(r,o[0]),i=Math.max(i,o[1]);}}return{maxImageWidth:r,maxImageHeight:i};}_appendSection(e,r){let i=this.graphemes(),n=i.length>0?i[i.length-1]:"",a=Ho(n+e);this.text+=e,this._graphemes=i.slice(0,n?-1:void 0).concat(a);let s=a.length-+!!n;for(let o=0;o<s;o++)this.sectionIndex.push(r);}addTextSection(e,r){this.sections.push({scale:e.scale||1,verticalAlign:e.verticalAlign||"bottom",fontStack:e.fontStack||r}),this._appendSection(e.text,this.sections.length-1);}addImageSection(e){let r=e.image?e.image.name:"";if(r.length===0){Mt("Can\'t add FormattedSection with an empty image.");return;}let i=this.getNextImageSectionCharCode();if(!i){Mt("Reached maximum number of images 6401");return;}this.sections.push({scale:1,verticalAlign:e.verticalAlign||"bottom",imageName:r}),this._appendSection(String.fromCharCode(i),this.sections.length-1);}getNextImageSectionCharCode(){return this.imageSectionID?this.imageSectionID>=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID);}determineLineBreaks(e,r,i,n,a){let s=[],o=this.determineAverageLineWidth(e,r,i,n,a),l=this.hasZeroWidthSpaces(),u=this.graphemes(),h=null,c=0,p=0;for(let f=0;f<u.length;f++){let d=u[f];if(f>0){let y=u[f-1].codePointAt(0),m=d.codePointAt(0),g=W2(y),x=pc(y)&&pc(m);(wv[y]||g||"imageName"in this.getSection(f-1)||u[f+1]!==void 0&&Dv[m]||x&&(h??=gv(this.text)).has(p))&&s.push(Dc(f,c,o,s,_v(y,m,g&&l),!1));}Jl(d.codePointAt(0))||(c+=vc(d,this.getSection(f),i,n,e,a)),p+=d.length;}return Rd(Dc(this.length(),c,o,s,0,!0));}determineAverageLineWidth(e,r,i,n,a){let s=0,o=0;for(let u of this.graphemes()){let h=this.getSection(o);s+=vc(u,h,i,n,e,a),o++;}let l=Math.max(1,Math.ceil(s/r));return s/l;}};function Av(){return function(t){var e={R:"13k,1a,2,3,3,2+1j,ch+16,a+1,5+2,2+n,5,a,4,6+16,4+3,h+1b,4mo,179q,2+9,2+11,2i9+7y,2+68,4,3+4,5+13,4+3,2+4k,3+29,8+cf,1t+7z,w+17,3+3m,1t+3z,16o1+5r,8+30,8+mc,29+1r,29+4v,75+73",EN:"1c+9,3d+1,6,187+9,513,4+5,7+9,sf+j,175h+9,qw+q,161f+1d,4xt+a,25i+9",ES:"17,2,6dp+1,f+1,av,16vr,mx+1,4o,2",ET:"z+2,3h+3,b+1,ym,3e+1,2o,p4+1,8,6u,7c,g6,1wc,1n9+4,30+1b,2n,6d,qhx+1,h0m,a+1,49+2,63+1,4+1,6bb+3,12jj",AN:"16o+5,2j+9,2+1,35,ed,1ff2+9,87+u",CS:"18,2+1,b,2u,12k,55v,l,17v0,2,3,53,2+1,b",B:"a,3,f+2,2v,690",S:"9,2,k",WS:"c,k,4f4,1vk+a,u,1j,335",ON:"x+1,4+4,h+5,r+5,r+3,z,5+3,2+1,2+1,5,2+2,3+4,o,w,ci+1,8+d,3+d,6+8,2+g,39+1,9,6+1,2,33,b8,3+1,3c+1,7+1,5r,b,7h+3,sa+5,2,3i+6,jg+3,ur+9,2v,ij+1,9g+9,7+a,8m,4+1,49+x,14u,2+2,c+2,e+2,e+2,e+1,i+n,e+e,2+p,u+2,e+2,36+1,2+3,2+1,b,2+2,6+5,2,2,2,h+1,5+4,6+3,3+f,16+2,5+3l,3+81,1y+p,2+40,q+a,m+13,2r+ch,2+9e,75+hf,3+v,2+2w,6e+5,f+6,75+2a,1a+p,2+2g,d+5x,r+b,6+3,4+o,g,6+1,6+2,2k+1,4,2j,5h+z,1m+1,1e+f,t+2,1f+e,d+3,4o+3,2s+1,w,535+1r,h3l+1i,93+2,2s,b+1,3l+x,2v,4g+3,21+3,kz+1,g5v+1,5a,j+9,n+v,2,3,2+8,2+1,3+2,2,3,46+1,4+4,h+5,r+5,r+a,3h+2,4+6,b+4,78,1r+24,4+c,4,1hb,ey+6,103+j,16j+c,1ux+7,5+g,fsh,jdq+1t,4,57+2e,p1,1m,1m,1m,1m,4kt+1,7j+17,5+2r,d+e,3+e,2+e,2+10,m+4,w,1n+5,1q,4z+5,4b+rb,9+c,4+c,4+37,d+2g,8+b,l+b,5+1j,9+9,7+13,9+t,3+1,27+3c,2+29,2+3q,d+d,3+4,4+2,6+6,a+o,8+6,a+2,e+6,16+42,2+1i",BN:"0+8,6+d,2s+5,2+p,e,4m9,1kt+2,2b+5,5+5,17q9+v,7k,6p+8,6+1,119d+3,440+7,96s+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+1,1ekf+75,6p+2rz,1ben+1,1ekf+1,1ekf+1",NSM:"lc+33,7o+6,7c+18,2,2+1,2+1,2,21+a,1d+k,h,2u+6,3+5,3+1,2+3,10,v+q,2k+a,1n+8,a,p+3,2+8,2+2,2+4,18+2,3c+e,2+v,1k,2,5+7,5,4+6,b+1,u,1n,5+3,9,l+1,r,3+1,1m,5+1,5+1,3+2,4,v+1,4,c+1,1m,5+4,2+1,5,l+1,n+5,2,1n,3,2+3,9,8+1,c+1,v,1q,d,1f,4,1m+2,6+2,2+3,8+1,c+1,u,1n,g+1,l+1,t+1,1m+1,5+3,9,l+1,u,21,8+2,2,2j,3+6,d+7,2r,3+8,c+5,23+1,s,2,2,1k+d,2+4,2+1,6+a,2+z,a,2v+3,2+5,2+1,3+1,q+1,5+2,h+3,e,3+1,7,g,jk+2,qb+2,u+2,u+1,v+1,1t+1,2+6,9,3+a,a,1a+2,3c+1,z,3b+2,5+1,a,7+2,64+1,3,1n,2+6,2,2,3+7,7+9,3,1d+g,1s+3,1d,2+4,2,6,15+8,d+1,x+3,3+1,2+2,1l,2+1,4,2+2,1n+7,3+1,49+2,2+c,2+6,5,7,4+1,5j+1l,2+4,k1+w,2db+2,3y,2p+v,ff+3,30+1,n9x+3,2+9,x+1,29+1,7l,4,5,q+1,6,48+1,r+h,e,13+7,q+a,1b+2,1d,3+3,3+1,14,1w+5,3+1,3+1,d,9,1c,1g,2+2,3+1,6+1,2,17+1,9,6n,3,5,fn5,ki+f,h+f,r2,6b,46+4,1af+2,2+1,6+3,15+2,5,4m+1,fy+3,as+1,4a+a,4x,1j+e,1l+2,1e+3,3+1,1y+2,11+4,2+7,1r,d+1,1h+8,b+3,3,2o+2,3,2+1,7,4h,4+7,m+1,1m+1,4,12+6,4+4,5g+7,3+2,2,o,2d+5,2,5+1,2+1,6n+3,7+1,2+1,s+1,2e+7,3,2+1,2z,2,3+5,2,2u+2,3+3,2+4,78+8,2+1,75+1,2,5,41+3,3+1,5,x+5,3+1,15+5,3+3,9,a+5,3+2,1b+c,2+1,bb+6,2+5,2d+l,3+6,2+1,2+1,3f+5,4,2+1,2+6,2,21+1,4,2,9o+1,f0c+4,1o+6,t5,1s+3,2a,f5l+1,43t+2,i+7,3+6,v+3,45+2,1j0+1i,5+1d,9,f,n+4,2+e,11t+6,2+g,3+6,2+1,2+4,7a+6,c6+3,15t+6,32+6,gzhy+6n",AL:"16w,3,2,e+1b,z+2,2+2s,g+1,8+1,b+m,2+t,s+2i,c+e,4h+f,1d+1e,1bwe+dp,3+3z,x+c,2+1,35+3y,2rm+z,5+7,b+5,dt+l,c+u,17nl+27,1t+27,4x+6n,3+d",LRO:"6ct",RLO:"6cu",LRE:"6cq",RLE:"6cr",PDF:"6cs",LRI:"6ee",RLI:"6ef",FSI:"6eg",PDI:"6eh"},r={},i={};r.L=1,i[1]="L",Object.keys(e).forEach(function(N,J){r[N]=1<<J+1,i[r[N]]=N;}),Object.freeze(r);var n=r.LRI|r.RLI|r.FSI,a=r.L|r.R|r.AL,s=r.B|r.S|r.WS|r.ON|r.FSI|r.LRI|r.RLI|r.PDI,o=r.BN|r.RLE|r.LRE|r.RLO|r.LRO|r.PDF,l=r.S|r.WS|r.B|n|r.PDI|o,u=null;function h(){if(!u){u=new Map();var N=0;for(var J in e)if(e.hasOwnProperty(J))for(var Y=e[J],C="",lt=void 0,G=!1,j=0,H=0;H<=Y.length+1;H+=1){var Rt=Y[H];if(Rt!==","&&H!==Y.length)Rt==="+"?(G=!0,j=N=j+parseInt(C,36),C=""):C+=Rt;else{G?lt=N+parseInt(C,36):(j=N=j+parseInt(C,36),lt=N),G=!1,C="",j=lt;for(var vt=N;vt<lt+1;vt+=1)u.set(vt,r[J]);}}}}function c(N){return h(),u.get(N.codePointAt(0))||r.L;}function p(N){return i[c(N)];}var f={pairs:"14>1,1e>2,u>2,2wt>1,1>1,1ge>1,1wp>1,1j>1,f>1,hm>1,1>1,u>1,u6>1,1>1,+5,28>1,w>1,1>1,+3,b8>1,1>1,+3,1>3,-1>-1,3>1,1>1,+2,1s>1,1>1,x>1,th>1,1>1,+2,db>1,1>1,+3,3>1,1>1,+2,14qm>1,1>1,+1,4q>1,1e>2,u>2,2>1,+1",canonical:"6f1>-6dx,6dy>-6dx,6ec>-6ed,6ee>-6ed,6ww>2jj,-2ji>2jj,14r4>-1e7l,1e7m>-1e7l,1e7m>-1e5c,1e5d>-1e5b,1e5c>-14qx,14qy>-14qx,14vn>-1ecg,1ech>-1ecg,1edu>-1ecg,1eci>-1ecg,1eda>-1ecg,1eci>-1ecg,1eci>-168q,168r>-168q,168s>-14ye,14yf>-14ye"};function d(N,J){var Y=0,C=new Map(),lt=J&&new Map(),G;return N.split(",").forEach(function j(H){if(H.indexOf("+")!==-1)for(var Rt=+H;Rt--;)j(G);else{G=H;var vt=H.split(">"),nt=vt[0],Tt=vt[1];nt=String.fromCodePoint(Y+=parseInt(nt,36)),Tt=String.fromCodePoint(Y+=parseInt(Tt,36)),C.set(nt,Tt),J&&lt.set(Tt,nt);}}),{map:C,reverseMap:lt};}var y,m,g;function x(){if(!y){var N=d(f.pairs,!0),J=N.map,Y=N.reverseMap;y=J,m=Y,g=d(f.canonical,!1).map;}}function b(N){return x(),y.get(N)||null;}function v(N){return x(),m.get(N)||null;}function w(N){return x(),g.get(N)||null;}var _=r.L,A=r.R,S=r.EN,F=r.ES,z=r.ET,$=r.AN,B=r.CS,P=r.B,E=r.S,O=r.ON,R=r.BN,L=r.NSM,tt=r.AL,it=r.LRO,pt=r.RLO,st=r.LRE,ft=r.RLE,jt=r.PDF,Pe=r.LRI,pe=r.RLI,ze=r.FSI,Wt=r.PDI;function _r(N,J){for(var Y=125,C=new Uint32Array(N.length),lt=0;lt<N.length;lt++)C[lt]=c(N[lt]);var G=new Map();function j(Gt,se){var Xt=C[Gt];C[Gt]=se,G.set(Xt,G.get(Xt)-1),Xt&s&&G.set(s,G.get(s)-1),G.set(se,(G.get(se)||0)+1),se&s&&G.set(s,(G.get(s)||0)+1);}for(var H=new Uint8Array(N.length),Rt=new Map(),vt=[],nt=null,Tt=0;Tt<N.length;Tt++)nt||vt.push(nt={start:Tt,end:N.length-1,level:J==="rtl"?1:J==="ltr"?0:Qu(Tt,!1)}),C[Tt]&P&&(nt.end=Tt,nt=null);for(var hi=ft|st|pt|it|n|Wt|jt|P,tr=function(Gt){return Gt+(Gt&1?1:2);},Le=function(Gt){return Gt+(Gt&1?2:1);},Ve=0;Ve<vt.length;Ve++){nt=vt[Ve];var ot=[{_level:nt.level,_override:0,_isolate:0}],bt=void 0,Se=0,Oe=0,Za=0;G.clear();for(var Bt=nt.start;Bt<=nt.end;Bt++){var Pt=C[Bt];if(bt=ot[ot.length-1],G.set(Pt,(G.get(Pt)||0)+1),Pt&s&&G.set(s,(G.get(s)||0)+1),Pt&hi){if(Pt&(ft|st)){H[Bt]=bt._level;var Fu=(Pt===ft?Le:tr)(bt._level);Fu<=Y&&!Se&&!Oe?ot.push({_level:Fu,_override:0,_isolate:0}):Se||Oe++;}else if(Pt&(pt|it)){H[Bt]=bt._level;var Tu=(Pt===pt?Le:tr)(bt._level);Tu<=Y&&!Se&&!Oe?ot.push({_level:Tu,_override:Pt&pt?A:_,_isolate:0}):Se||Oe++;}else if(Pt&n){Pt&ze&&(Pt=Qu(Bt+1,!0)===1?pe:Pe),H[Bt]=bt._level,bt._override&&j(Bt,bt._override);var ku=(Pt===pe?Le:tr)(bt._level);ku<=Y&&Se===0&&Oe===0?(Za++,ot.push({_level:ku,_override:0,_isolate:1,_isolInitIndex:Bt})):Se++;}else if(Pt&Wt){if(Se>0)Se--;else if(Za>0){for(Oe=0;!ot[ot.length-1]._isolate;)ot.pop();var Ha=ot[ot.length-1]._isolInitIndex;Ha!=null&&(Rt.set(Ha,Bt),Rt.set(Bt,Ha)),ot.pop(),Za--;}bt=ot[ot.length-1],H[Bt]=bt._level,bt._override&&j(Bt,bt._override);}else Pt&jt?(Se===0&&(Oe>0?Oe--:!bt._isolate&&ot.length>1&&(ot.pop(),bt=ot[ot.length-1])),H[Bt]=bt._level):Pt&P&&(H[Bt]=nt.level);}else H[Bt]=bt._level,bt._override&&Pt!==R&&j(Bt,bt._override);}for(var Fr=[],fe=null,er=nt.start;er<=nt.end;er++){var Ka=C[er];if(!(Ka&o)){var Iu=H[er],Cu=Ka&n,Zy=Ka===Wt;fe&&Iu===fe._level?(fe._end=er,fe._endsWithIsolInit=Cu):Fr.push(fe={_start:er,_end:er,_level:Iu,_startsWithPDI:Zy,_endsWithIsolInit:Cu});}}for(var Ja=[],bn=0;bn<Fr.length;bn++){var wn=Fr[bn];if(!wn._startsWithPDI||wn._startsWithPDI&&!Rt.has(wn._start)){for(var Qa=[fe=wn],Mu=void 0;fe&&fe._endsWithIsolInit&&(Mu=Rt.get(fe._end))!=null;)for(var Dn=bn+1;Dn<Fr.length;Dn++)if(Fr[Dn]._start===Mu){Qa.push(fe=Fr[Dn]);break;}for(var Tr=[],ts=0;ts<Qa.length;ts++)for(var Bu=Qa[ts],es=Bu._start;es<=Bu._end;es++)Tr.push(es);for(var Hy=H[Tr[0]],Pu=nt.level,_n=Tr[0]-1;_n>=0;_n--)if(!(C[_n]&o)){Pu=H[_n];break;}var rs=Tr[Tr.length-1],Ky=H[rs],zu=nt.level;if(!(C[rs]&n)){for(var An=rs+1;An<=nt.end;An++)if(!(C[An]&o)){zu=H[An];break;}}Ja.push({_seqIndices:Tr,_sosType:Math.max(Pu,Hy)%2?A:_,_eosType:Math.max(zu,Ky)%2?A:_});}}for(var is=0;is<Ja.length;is++){var ns=Ja[is],q=ns._seqIndices,ci=ns._sosType,Jy=ns._eosType,kr=H[q[0]]&1?A:_;if(G.get(L))for(var Sn=0;Sn<q.length;Sn++){var Lu=q[Sn];if(C[Lu]&L){for(var as=ci,En=Sn-1;En>=0;En--)if(!(C[q[En]]&o)){as=C[q[En]];break;}j(Lu,as&(n|Wt)?O:as);}}if(G.get(S))for(var Fn=0;Fn<q.length;Fn++){var Vu=q[Fn];if(C[Vu]&S)for(var Tn=Fn-1;Tn>=-1;Tn--){var Ou=Tn===-1?ci:C[q[Tn]];if(Ou&a){Ou===tt&&j(Vu,$);break;}}}if(G.get(tt))for(var ss=0;ss<q.length;ss++){var Ru=q[ss];C[Ru]&tt&&j(Ru,A);}if(G.get(F)||G.get(B))for(var pi=1;pi<q.length-1;pi++){var os=q[pi];if(C[os]&(F|B)){for(var Ir=0,ls=0,us=pi-1;us>=0&&(Ir=C[q[us]],Ir&o);us--);for(var hs=pi+1;hs<q.length&&(ls=C[q[hs]],ls&o);hs++);Ir===ls&&(C[os]===F?Ir===S:Ir&(S|$))&&j(os,Ir);}}if(G.get(S)){for(var de=0;de<q.length;de++)if(C[q[de]]&S){for(var kn=de-1;kn>=0&&C[q[kn]]&(z|o);kn--)j(q[kn],S);for(de++;de<q.length&&C[q[de]]&(z|o|S);de++)C[q[de]]!==S&&j(q[de],S);}}if(G.get(z)||G.get(F)||G.get(B))for(var fi=0;fi<q.length;fi++){var $u=q[fi];if(C[$u]&(z|F|B)){j($u,O);for(var In=fi-1;In>=0&&C[q[In]]&o;In--)j(q[In],O);for(var Cn=fi+1;Cn<q.length&&C[q[Cn]]&o;Cn++)j(q[Cn],O);}}if(G.get(S))for(var cs=0,Nu=ci;cs<q.length;cs++){var Uu=q[cs],ps=C[Uu];ps&S?Nu===_&&j(Uu,_):ps&a&&(Nu=ps);}if(G.get(s)){for(var di=A|S|$,qu=di|_,Mn=[],Cr=[],Mr=0;Mr<q.length;Mr++)if(C[q[Mr]]&s){var yi=N[q[Mr]],ju=void 0;if(b(yi)!==null){if(Cr.length<63)Cr.push({char:yi,seqIndex:Mr});else break;}else if((ju=v(yi))!==null)for(var mi=Cr.length-1;mi>=0;mi--){var fs=Cr[mi].char;if(fs===ju||fs===v(w(yi))||b(w(fs))===yi){Mn.push([Cr[mi].seqIndex,Mr]),Cr.length=mi;break;}}}Mn.sort(function(Gt,se){return Gt[0]-se[0];});for(var ds=0;ds<Mn.length;ds++){for(var Gu=Mn[ds],Bn=Gu[0],ys=Gu[1],Xu=!1,ye=0,ms=Bn+1;ms<ys;ms++){var Yu=q[ms];if(C[Yu]&qu){Xu=!0;var Wu=C[Yu]&di?A:_;if(Wu===kr){ye=Wu;break;}}}if(Xu&&!ye){ye=ci;for(var gs=Bn-1;gs>=0;gs--){var Zu=q[gs];if(C[Zu]&qu){var Hu=C[Zu]&di?A:_;ye=Hu===kr?kr:Hu;break;}}}if(ye){if(C[q[Bn]]=C[q[ys]]=ye,ye!==kr){for(var gi=Bn+1;gi<q.length;gi++)if(!(C[q[gi]]&o)){c(N[q[gi]])&L&&(C[q[gi]]=ye);break;}}if(ye!==kr){for(var xi=ys+1;xi<q.length;xi++)if(!(C[q[xi]]&o)){c(N[q[xi]])&L&&(C[q[xi]]=ye);break;}}}}for(var Re=0;Re<q.length;Re++)if(C[q[Re]]&s){for(var Ku=Re,xs=Re,vs=ci,vi=Re-1;vi>=0;vi--)if(C[q[vi]]&o)Ku=vi;else{vs=C[q[vi]]&di?A:_;break;}for(var Ju=Jy,bi=Re+1;bi<q.length;bi++)if(C[q[bi]]&(s|o))xs=bi;else{Ju=C[q[bi]]&di?A:_;break;}for(var bs=Ku;bs<=xs;bs++)C[q[bs]]=vs===Ju?vs:kr;Re=xs;}}}for(var Zt=nt.start;Zt<=nt.end;Zt++){var Qy=H[Zt],Pn=C[Zt];if(Qy&1?Pn&(_|S|$)&&H[Zt]++:Pn&A?H[Zt]++:Pn&($|S)&&(H[Zt]+=2),Pn&o&&(H[Zt]=Zt===0?nt.level:H[Zt-1]),Zt===nt.end||c(N[Zt])&(E|P))for(var zn=Zt;zn>=0&&c(N[zn])&l;zn--)H[zn]=nt.level;}}return{levels:H,paragraphs:vt};function Qu(Gt,se){for(var Xt=Gt;Xt<N.length;Xt++){var $e=C[Xt];if($e&(A|tt))return 1;if($e&(P|_)||se&&$e===Wt)return 0;if($e&n){var th=t1(Xt);Xt=th===-1?N.length:th;}}return 0;}function t1(Gt){for(var se=1,Xt=Gt+1;Xt<N.length;Xt++){var $e=C[Xt];if($e&P)break;if($e&Wt){if(--se===0)return Xt;}else $e&n&&se++;}return-1;}}var Ar="14>1,j>2,t>2,u>2,1a>g,2v3>1,1>1,1ge>1,1wd>1,b>1,1j>1,f>1,ai>3,-2>3,+1,8>1k0,-1jq>1y7,-1y6>1hf,-1he>1h6,-1h5>1ha,-1h8>1qi,-1pu>1,6>3u,-3s>7,6>1,1>1,f>1,1>1,+2,3>1,1>1,+13,4>1,1>1,6>1eo,-1ee>1,3>1mg,-1me>1mk,-1mj>1mi,-1mg>1mi,-1md>1,1>1,+2,1>10k,-103>1,1>1,4>1,5>1,1>1,+10,3>1,1>8,-7>8,+1,-6>7,+1,a>1,1>1,u>1,u6>1,1>1,+5,26>1,1>1,2>1,2>2,8>1,7>1,4>1,1>1,+5,b8>1,1>1,+3,1>3,-2>1,2>1,1>1,+2,c>1,3>1,1>1,+2,h>1,3>1,a>1,1>1,2>1,3>1,1>1,d>1,f>1,3>1,1a>1,1>1,6>1,7>1,13>1,k>1,1>1,+19,4>1,1>1,+2,2>1,1>1,+18,m>1,a>1,1>1,lk>1,1>1,4>1,2>1,f>1,3>1,1>1,+3,db>1,1>1,+3,3>1,1>1,+2,14qm>1,1>1,+1,6>1,4j>1,j>2,t>2,u>2,2>1,+1",Je;function ui(){if(!Je){var N=d(Ar,!0),J=N.map;N.reverseMap.forEach(function(Y,C){J.set(C,Y);}),Je=J;}}function Ft(N){return ui(),Je.get(N)||null;}function Ae(N,J,Y,C){var lt=N.length;Y=Math.max(0,Y==null?0:+Y),C=Math.min(lt-1,C==null?lt-1:+C);for(var G=new Map(),j=Y;j<=C;j++)if(J[j]&1){var H=Ft(N[j]);H!==null&&G.set(j,H);}return G;}function Qe(N,J,Y,C){var lt=N.length;Y=Math.max(0,Y==null?0:+Y),C=Math.min(lt-1,C==null?lt-1:+C);var G=[];return J.paragraphs.forEach(function(j){var H=Math.max(Y,j.start),Rt=Math.min(C,j.end);if(H<Rt){for(var vt=J.levels.slice(H,Rt+1),nt=Rt;nt>=H&&c(N[nt])&l;nt--)vt[nt]=j.level;for(var Tt=j.level,hi=1/0,tr=0;tr<vt.length;tr++){var Le=vt[tr];Le>Tt&&(Tt=Le),Le<hi&&(hi=Le|1);}for(var Ve=Tt;Ve>=hi;Ve--)for(var ot=0;ot<vt.length;ot++)if(vt[ot]>=Ve){for(var bt=ot;ot+1<vt.length&&vt[ot+1]>=Ve;)ot++;ot>bt&&G.push([bt+H,ot+H]);}}}),G;}function Sr(N,J,Y,C){var lt=Er(N,J,Y,C),G=[].concat(N);return lt.forEach(function(j,H){G[H]=(J.levels[j]&1?Ft(N[j]):null)||N[j];}),G.join("");}function Er(N,J,Y,C){for(var lt=Qe(N,J,Y,C),G=[],j=0;j<N.length;j++)G[j]=j;return lt.forEach(function(H){for(var Rt=H[0],vt=H[1],nt=G.slice(Rt,vt+1),Tt=nt.length;Tt--;)G[vt-Tt]=nt[Tt];}),G;}return t.closingToOpeningBracket=v,t.getBidiCharType=c,t.getBidiCharTypeName=p,t.getCanonicalBracket=w,t.getEmbeddingLevels=_r,t.getMirroredCharacter=Ft,t.getMirroredCharactersMap=Ae,t.getReorderSegments=Qe,t.getReorderedIndices=Er,t.getReorderedString=Sr,t.openingToClosingBracket=b,Object.defineProperty(t,"__esModule",{value:!0}),t;}({});}var tu=Av(),Sv=/[\\u061c\\u200e\\u200f\\u202a-\\u202e\\u2066-\\u2069]/,Ev=new Set(["WS","FSI","LRI","RLI","PDI"]),Fv=new Set(["S","B"]);function Tv(t,e,r,i){let n=[],a=r;for(let s of Ho(t.slice(r,i)))n.push({index:a,text:s,level:e[a]}),a+=s.length;return n;}function kv(t,e){let r=!0;for(let i=t.length-1;i>=0;i--){let n=tu.getBidiCharTypeName(t[i].text[0]);Fv.has(n)?(t[i].level=e,r=!0):r&&Ev.has(n)?t[i].level=e:r=!1;}}function Iv(t,e){let r=e,i=1/0;for(let{level:a}of t)a>r&&(r=a),(a|1)<i&&(i=a|1);let n=t.slice();for(let a=r;a>=i;a--)for(let s=0;s<n.length;s++){if(n[s].level<a)continue;let o=s;for(;o+1<n.length&&n[o+1].level>=a;)o++;for(let l=s,u=o;l<u;l++,u--)[n[l],n[u]]=[n[u],n[l]];s=o;}return n;}function Cv(t){return t.level%2==0?t.text:tu.getMirroredCharacter(t.text)??t.text;}function Mv(t,e){return t.find(r=>e>=r.start&&e<=r.end)?.level??0;}function Bv(t,e,r,i,n){let a=Tv(t,e,i,n);kv(a,r);let s="",o=[];for(let l of Iv(a,r)){if(Sv.test(l.text))continue;let u=Cv(l);s+=u,o.push(...Array(u.length).fill(l.index));}return{text:s,sourceIndices:o};}function Pv(t,e){let r=e.filter(a=>a>0&&a<t.length),i=[...new Set([0,...r,t.length])].sort((a,s)=>a-s),n=[];for(let a=0;a+1<i.length;a++)n.push([i[a],i[a+1]]);return n;}function $d(t,e){let{levels:r,paragraphs:i}=tu.getEmbeddingLevels(t);return Pv(t,e.concat(i.map(n=>n.start))).map(([n,a])=>Bv(t,r,Mv(i,n),n,a));}function zv(t,e){return $d(t,e).map(r=>r.text);}function Lv(t,e,r){return $d(t,r).map(i=>[i.text,i.sourceIndices.map(n=>e[n]??0)]);}var Qo=4294967296,_c=1/Qo,Ac=typeof TextDecoder>"u"?null:new TextDecoder("utf-8"),eu=class{constructor(t){this.buf=ArrayBuffer.isView(t)?t:new Uint8Array(t),this.dataView=new DataView(this.buf.buffer,this.buf.byteOffset,this.buf.byteLength),this.pos=0,this.type=0,this._valueStart=-1,this.length=this.buf.length;}readFields(t,e,r=this.length){let i;for(;i=this.nextField(r);)t(i,e,this);return e;}readMessage(t,e){return this.readFields(t,e,this.readVarint()+this.pos);}readFixed32(){let t=this.dataView.getUint32(this.pos,!0);return this.pos+=4,t;}readSFixed32(){let t=this.dataView.getInt32(this.pos,!0);return this.pos+=4,t;}readFixed64(){let t=this.dataView.getUint32(this.pos,!0)+this.dataView.getUint32(this.pos+4,!0)*Qo;return this.pos+=8,t;}readSFixed64(){let t=this.dataView.getUint32(this.pos,!0)+this.dataView.getInt32(this.pos+4,!0)*Qo;return this.pos+=8,t;}readFloat(){let t=this.dataView.getFloat32(this.pos,!0);return this.pos+=4,t;}readDouble(){let t=this.dataView.getFloat64(this.pos,!0);return this.pos+=8,t;}readVarint(t){let e=this.buf,r=e[this.pos++];if(r<128)return r;let i=r&127,n;return n=e[this.pos++],i|=(n&127)<<7,n<128||(n=e[this.pos++],i|=(n&127)<<14,n<128)||(n=e[this.pos++],i|=(n&127)<<21,n<128)?i:(n=e[this.pos],i|=(n&15)<<28,Ov(i,t,this));}readSVarint(){let t=this.readVarint();return t%2==1?(t+1)/-2:t/2;}readBoolean(){return!!this.readVarint();}readString(){let t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=12&&Ac?Ac.decode(this.buf.subarray(e,t)):Jv(this.buf,e,t);}readBytes(){let t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e;}readPackedVarint(t=[],e){let r=this.readPackedEnd();for(;this.pos<r;)t.push(this.readVarint(e));return t;}readPackedSVarint(t=[]){let e=this.readPackedEnd();for(;this.pos<e;)t.push(this.readSVarint());return t;}readPackedBoolean(t=[]){let e=this.readPackedEnd();for(;this.pos<e;)t.push(this.readBoolean());return t;}readPackedFloat(t=[]){let e=this.readPackedEnd();for(;this.pos<e;)t.push(this.readFloat());return t;}readPackedDouble(t=[]){let e=this.readPackedEnd();for(;this.pos<e;)t.push(this.readDouble());return t;}readPackedFixed32(t=[]){let e=this.readPackedEnd();for(;this.pos<e;)t.push(this.readFixed32());return t;}readPackedSFixed32(t=[]){let e=this.readPackedEnd();for(;this.pos<e;)t.push(this.readSFixed32());return t;}readPackedFixed64(t=[]){let e=this.readPackedEnd();for(;this.pos<e;)t.push(this.readFixed64());return t;}readPackedSFixed64(t=[]){let e=this.readPackedEnd();for(;this.pos<e;)t.push(this.readSFixed64());return t;}readPackedEnd(){return this.type===2?this.readVarint()+this.pos:this.pos+1;}nextField(t=this.length){if(this.pos===this._valueStart&&this.skip(this.type),this.pos>=t)return 0;let e=this.readVarint();return this.type=e&7,this._valueStart=this.pos,e>>>3;}skip(t){let e=t&7;if(e===0)for(;this.buf[this.pos++]>127;);else if(e===2)this.pos=this.readVarint()+this.pos;else if(e===5)this.pos+=4;else if(e===1)this.pos+=8;else throw Error(`Unimplemented type: ${e}`);}},Vv=class{constructor(t=new Uint8Array(16)){this.buf=ArrayBuffer.isView(t)?t:new Uint8Array(t),this.dataView=new DataView(this.buf.buffer,this.buf.byteOffset,this.buf.byteLength),this.pos=0,this.length=this.buf.length;}writeTag(t,e){this.writeVarint(t<<3|e);}realloc(t){let e=this.length||16;for(;e<this.pos+t;)e*=2;if(e!==this.length){let r=new Uint8Array(e);r.set(this.buf),this.buf=r,this.dataView=new DataView(r.buffer),this.length=e;}}finish(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length);}writeFixed32(t){this.realloc(4),this.dataView.setInt32(this.pos,t,!0),this.pos+=4;}writeSFixed32(t){this.realloc(4),this.dataView.setInt32(this.pos,t,!0),this.pos+=4;}writeFixed64(t){this.realloc(8),this.dataView.setInt32(this.pos,t&-1,!0),this.dataView.setInt32(this.pos+4,Math.floor(t*_c),!0),this.pos+=8;}writeSFixed64(t){this.realloc(8),this.dataView.setInt32(this.pos,t&-1,!0),this.dataView.setInt32(this.pos+4,Math.floor(t*_c),!0),this.pos+=8;}writeVarint(t){if(t=+t||0,t>=0&&t<128){this.pos>=this.length&&this.realloc(1),this.buf[this.pos++]=t;return;}if(t>268435455||t<0){$v(t,this);return;}this.realloc(4),this.buf[this.pos++]=t&127|(t>127?128:0),!(t<=127)&&(this.buf[this.pos++]=(t>>>=7)&127|(t>127?128:0),!(t<=127)&&(this.buf[this.pos++]=(t>>>=7)&127|(t>127?128:0),!(t<=127)&&(this.buf[this.pos++]=t>>>7&127)));}writeSVarint(t){this.writeVarint(t<0?-t*2-1:t*2);}writeBoolean(t){this.writeVarint(+t);}writeString(t){t=String(t),this.realloc(t.length*4),this.pos++;let e=this.pos;this.pos=Qv(this.buf,t,this.pos);let r=this.pos-e;r>=128&&Sc(e,r,this),this.pos=e-1,this.writeVarint(r),this.pos+=r;}writeFloat(t){this.realloc(4),this.dataView.setFloat32(this.pos,t,!0),this.pos+=4;}writeDouble(t){this.realloc(8),this.dataView.setFloat64(this.pos,t,!0),this.pos+=8;}writeBytes(t){let e=t.length;this.writeVarint(e),this.realloc(e),this.buf.set(t,this.pos),this.pos+=e;}writeRawMessage(t,e){this.pos++;let r=this.pos;t(e,this);let i=this.pos-r;i>=128&&Sc(r,i,this),this.pos=r-1,this.writeVarint(i),this.pos+=i;}writeMessage(t,e,r){this.writeTag(t,2),this.writeRawMessage(e,r);}writePackedVarint(t,e){e.length&&this.writeMessage(t,qv,e);}writePackedSVarint(t,e){e.length&&this.writeMessage(t,jv,e);}writePackedBoolean(t,e){e.length&&this.writeMessage(t,Yv,e);}writePackedFloat(t,e){e.length&&this.writeMessage(t,Gv,e);}writePackedDouble(t,e){e.length&&this.writeMessage(t,Xv,e);}writePackedFixed32(t,e){e.length&&this.writeMessage(t,Wv,e);}writePackedSFixed32(t,e){e.length&&this.writeMessage(t,Zv,e);}writePackedFixed64(t,e){e.length&&this.writeMessage(t,Hv,e);}writePackedSFixed64(t,e){e.length&&this.writeMessage(t,Kv,e);}writeBytesField(t,e){this.writeTag(t,2),this.writeBytes(e);}writeFixed32Field(t,e){this.writeTag(t,5),this.writeFixed32(e);}writeSFixed32Field(t,e){this.writeTag(t,5),this.writeSFixed32(e);}writeFixed64Field(t,e){this.writeTag(t,1),this.writeFixed64(e);}writeSFixed64Field(t,e){this.writeTag(t,1),this.writeSFixed64(e);}writeVarintField(t,e){this.writeTag(t,0),this.writeVarint(e);}writeSVarintField(t,e){this.writeTag(t,0),this.writeSVarint(e);}writeStringField(t,e){this.writeTag(t,2),this.writeString(e);}writeFloatField(t,e){this.writeTag(t,5),this.writeFloat(e);}writeDoubleField(t,e){this.writeTag(t,1),this.writeDouble(e);}writeBooleanField(t,e){this.writeVarintField(t,+e);}};function Ov(t,e,r){let i=r.buf,n,a;if(a=i[r.pos++],n=(a&112)>>4,a<128||(a=i[r.pos++],n|=(a&127)<<3,a<128)||(a=i[r.pos++],n|=(a&127)<<10,a<128)||(a=i[r.pos++],n|=(a&127)<<17,a<128)||(a=i[r.pos++],n|=(a&127)<<24,a<128)||(a=i[r.pos++],n|=(a&1)<<31,a<128))return Rv(t,n,e);throw Error("Expected varint not more than 10 bytes");}function Rv(t,e,r){return r?e*4294967296+(t>>>0):(e>>>0)*4294967296+(t>>>0);}function $v(t,e){let r,i;if(t>=0?(r=t%4294967296|0,i=t/4294967296|0):(r=~(-t%4294967296),i=~(-t/4294967296),r^4294967295?r=r+1|0:(r=0,i=i+1|0)),t>=18446744073709552e3||t<-18446744073709552e3)throw Error("Given varint doesn\'t fit into 10 bytes");e.realloc(10),Nv(r,i,e),Uv(i,e);}function Nv(t,e,r){r.buf[r.pos++]=t&127|128,t>>>=7,r.buf[r.pos++]=t&127|128,t>>>=7,r.buf[r.pos++]=t&127|128,t>>>=7,r.buf[r.pos++]=t&127|128,t>>>=7,r.buf[r.pos]=t&127;}function Uv(t,e){let r=(t&7)<<4;e.buf[e.pos++]|=r|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=t&127|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=t&127|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=t&127|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=t&127|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=t&127)))));}function Sc(t,e,r){let i=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(Math.LN2*7));r.realloc(i),r.buf.copyWithin(t+i,t,r.pos);}function qv(t,e){let r=t.length,i=e.buf,n=e.pos,a=e.length;for(let s=0;s<r;s++){let o=t[s];if(o<0||n+10>a){e.pos=n,e.writeVarint(o),i=e.buf,n=e.pos,a=e.length;continue;}for(;o>127;)i[n++]=o%128|128,o=Math.floor(o/128);i[n++]=o;}e.pos=n;}function jv(t,e){for(let r=0;r<t.length;r++)e.writeSVarint(t[r]);}function Gv(t,e){for(let r=0;r<t.length;r++)e.writeFloat(t[r]);}function Xv(t,e){for(let r=0;r<t.length;r++)e.writeDouble(t[r]);}function Yv(t,e){for(let r=0;r<t.length;r++)e.writeBoolean(t[r]);}function Wv(t,e){for(let r=0;r<t.length;r++)e.writeFixed32(t[r]);}function Zv(t,e){for(let r=0;r<t.length;r++)e.writeSFixed32(t[r]);}function Hv(t,e){for(let r=0;r<t.length;r++)e.writeFixed64(t[r]);}function Kv(t,e){for(let r=0;r<t.length;r++)e.writeSFixed64(t[r]);}function Jv(t,e,r){let i="",n=e;for(;n<r;){let a=t[n],s=null,o=a>239?4:a>223?3:a>191?2:1;if(n+o>r)break;let l,u,h;o===1?a<128&&(s=a):o===2?(l=t[n+1],(l&192)==128&&(s=(a&31)<<6|l&63,s<=127&&(s=null))):o===3?(l=t[n+1],u=t[n+2],(l&192)==128&&(u&192)==128&&(s=(a&15)<<12|(l&63)<<6|u&63,(s<=2047||s>=55296&&s<=57343)&&(s=null))):o===4&&(l=t[n+1],u=t[n+2],h=t[n+3],(l&192)==128&&(u&192)==128&&(h&192)==128&&(s=(a&15)<<18|(l&63)<<12|(u&63)<<6|h&63,(s<=65535||s>=1114112)&&(s=null))),s===null?(s=65533,o=1):s>65535&&(s-=65536,i+=String.fromCharCode(s>>>10&1023|55296),s=56320|s&1023),i+=String.fromCharCode(s),n+=o;}return i;}function Qv(t,e,r){for(let i=0,n,a;i<e.length;i++){if(n=e.charCodeAt(i),n>55295&&n<57344){if(a){if(n<56320){t[r++]=239,t[r++]=191,t[r++]=189,a=n;continue;}n=a-55296<<10|n-56320|65536,a=null;}else{n>56319||i+1===e.length?(t[r++]=239,t[r++]=191,t[r++]=189):a=n;continue;}}else a&&=(t[r++]=239,t[r++]=191,t[r++]=189,null);n<128?t[r++]=n:(n<2048?t[r++]=n>>6|192:(n<65536?t[r++]=n>>12|224:(t[r++]=n>>18|240,t[r++]=n>>12&63|128),t[r++]=n>>6&63|128),t[r++]=n&63|128);}return r;}function tb(t){return typeof t?.renderWithWebGL=="function";}function ru(t){let e=0,r=0;for(let s of t)e+=s.w*s.h,r=Math.max(r,s.w);t.sort((s,o)=>o.h-s.h);let i=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(e/.95)),r),h:1/0}],n=0,a=0;for(let s of t)for(let o=i.length-1;o>=0;o--){let l=i[o];if(!(s.w>l.w||s.h>l.h)){if(s.x=l.x,s.y=l.y,a=Math.max(a,s.y+s.h),n=Math.max(n,s.x+s.w),s.w===l.w&&s.h===l.h){let u=i.pop();u&&o<i.length&&(i[o]=u);}else s.h===l.h?(l.x+=s.w,l.w-=s.w):s.w===l.w?(l.y+=s.h,l.h-=s.h):(i.push({x:l.x+s.w,y:l.y,w:l.w-s.w,h:s.h}),l.y+=s.h,l.h-=s.h);break;}}return{w:n,h:a,fill:e/(n*a)||0};}var Nd=class{constructor(t,{pixelRatio:e,version:r,isWebGLImage:i=!1,stretchX:n,stretchY:a,content:s,textFitWidth:o,textFitHeight:l}){this.paddedRect=t,this.pixelRatio=e,this.stretchX=n,this.stretchY=a,this.content=s,this.version=r,this.needsFirstWebGLRender=i,this.textFitWidth=o,this.textFitHeight=l;}get tl(){return[this.paddedRect.x+1,this.paddedRect.y+1];}get br(){return[this.paddedRect.x+this.paddedRect.w-1,this.paddedRect.y+this.paddedRect.h-1];}get tlbr(){return this.tl.concat(this.br);}get displaySize(){return[(this.paddedRect.w-2)/this.pixelRatio,(this.paddedRect.h-2)/this.pixelRatio];}},iu=class{constructor(t,e){let r={},i={};this.haveRenderCallbacks=[],this.patchedUpdateVersion=-1;let n=[];this.addImages(t,r,n),this.addImages(e,i,n);let{w:a,h:s}=ru(n),o=new Yt({width:a||1,height:s||1});for(let l in t){let u=t[l];if(u.isWebGLImage)continue;let h=r[l].paddedRect;Yt.copy(u.data,o,{x:0,y:0},{x:h.x+1,y:h.y+1},u.data);}for(let l in e){let u=e[l],h=i[l].paddedRect,c=h.x+1,p=h.y+1,f=u.data.width,d=u.data.height;Yt.copy(u.data,o,{x:0,y:0},{x:c,y:p},u.data),Yt.copy(u.data,o,{x:0,y:d-1},{x:c,y:p-1},{width:f,height:1}),Yt.copy(u.data,o,{x:0,y:0},{x:c,y:p+d},{width:f,height:1}),Yt.copy(u.data,o,{x:f-1,y:0},{x:c-1,y:p},{width:1,height:d}),Yt.copy(u.data,o,{x:0,y:0},{x:c+f,y:p},{width:1,height:d});}this.image=o,this.iconPositions=r,this.patternPositions=i;}addImages(t,e,r){for(let i in t){let n=t[i],a={x:0,y:0,w:n.data.width+2,h:n.data.height+2};r.push(a),e[i]=new Nd(a,n),n.hasRenderCallback&&this.haveRenderCallbacks.push(i);}}patchUpdatedImages(t,e){if(t.dispatchRenderCallbacks(this.haveRenderCallbacks),this.patchedUpdateVersion!==t.updateVersion){this.patchedUpdateVersion=t.updateVersion;for(let r in this.iconPositions)this.patchUpdatedImage(this.iconPositions[r],t.getImage(r),e);for(let r in this.patternPositions)this.patchUpdatedImage(this.patternPositions[r],t.getImage(r),e);}}patchUpdatedImage(t,e,r){if(!t||!e||!t.needsFirstWebGLRender&&t.version===e.version)return;t.needsFirstWebGLRender=!1,t.version=e.version;let[i,n]=t.tl,a=e.userImage?.data;if(!tb(a)){r.update(e.data,void 0,{x:i,y:n});return;}let{width:s,height:o}=e.data;r.context.setCustomLayerDefaults(),a.renderWithWebGL({gl:r.context.gl,texture:r.texture,x:i,y:n,width:s,height:o}),r.context.setDirty();}};I("ImagePosition",Nd),I("ImageAtlas",iu);var Ud=function(t){return t[t.none=0]="none",t[t.horizontal=1]="horizontal",t[t.vertical=2]="vertical",t[t.horizontalOnly=3]="horizontalOnly",t;}(Ud||{});function eb(t){for(let e of t)if(e.positionedGlyphs.length!==0)return!1;return!0;}function rb(t,e){let r=[],i=0;for(let n of e)r.push(t.substring(i,n)),i=n;return i<t.length()&&r.push(t.substring(i,t.length())),r;}var Ec=/^\\p{gc=M}$/u;function ib(t){let e=[],r=0;for(;r<t.length;){if(!Ec.test(t[r])){e.push(r),r++;continue;}let i=r;for(;i<t.length&&Ec.test(t[i]);)i++;let n=t[i];if(n!==void 0&&Vd(n.codePointAt(0))){e.push(i);for(let a=i-1;a>=r;a--)e.push(a);r=i+1;}else{for(let a=r;a<i;a++)e.push(a);r=i;}}return e;}function nb(t){let e=[],r=0;for(let i of t.graphemes())e.push(...Array(i.length).fill(t.sectionIndex[r])),r++;return e;}function ab(t,e){let r=e.map(a=>t.toCodeUnitIndex(a)),i=mr.isParsed()?mr:null;if(t.sections.length===1)return i?i.processBidirectionalText(t.toString(),r).map(a=>Fc(a,t.sections,[...a].map(()=>0))):zv(t.toString(),r).map(a=>tl([...a],t.sections,[...a].map(()=>0)));let n=nb(t);return i?i.processStyledBidirectionalText(t.text,n,r).map(([a,s])=>Fc(a,t.sections,s)):Lv(t.text,n,r).map(([a,s])=>{let o=[...a];return tl(o,t.sections,qd(o).map(l=>s[l]??0));});}function tl(t,e,r){let i=new Ql(t.join(""),e,[]),n=0;for(let a of i.graphemes())i.sectionIndex.push(r[n]??0),n+=[...a].length;return i;}function qd(t){let e=[],r=0;for(let i of t)e.push(r),r+=i.length;return e;}function Fc(t,e,r){let i=[...t],n=qd(i),a=ib(i);return tl(a.map(s=>i[s]),e,a.map(s=>r[n[s]]??0));}function Wn(t,e,r,i,n,a,s,o,l,u,h,c,p,f,d){let y=Ql.fromFeature(t,n);c===2&&y.verticalizePunctuation();let m=y.determineLineBreaks(u,a,e,i,f),g=Od(y.text)?ab(y,m):rb(y,m),x=[],b={positionedLines:x,text:y.toString(),top:h[1],bottom:h[1],left:h[0],right:h[0],writingMode:c,iconsInText:!1,verticalizable:!1};return db(b,e,r,i,g,s,o,l,c,u,p,d),!eb(x)&&b;}function jd(t){let e=.5,r=.5;switch(t){case"right":case"top-right":case"bottom-right":e=1;break;case"left":case"top-left":case"bottom-left":e=0;}switch(t){case"bottom":case"bottom-right":case"bottom-left":r=1;break;case"top":case"top-right":case"top-left":r=0;}return{horizontalAlign:e,verticalAlign:r};}function sb(t,e,r){let i=e.getMaxScale()*24,{maxImageWidth:n,maxImageHeight:a}=e.getMaxImageSize(t),s=Math.max(i,a*r);return{verticalLineContentWidth:Math.max(i,n*r),horizontalLineContentHeight:s};}function Gd(t){switch(t){case"top":return 0;case"center":return .5;default:return 1;}}function ob(t,e,r,i){if(t?.rect)return t;let n=e[r.fontStack]?.[i];return n?{rect:null,metrics:n.metrics}:null;}function lb(t,e,r){return!(t===1||!e&&!Xa(r)||e&&(Jl(r)||Ld(r)));}function oa(t){return /\\p{Nd}/u.test(String.fromCodePoint(t));}function Xd(t){return /\\p{Lu}/u.test(String.fromCodePoint(t));}function ub(t){return /[\\p{P}\\p{S}]/u.test(String.fromCodePoint(t));}function hb(t){let e=t.some(oa)&&t.every(i=>oa(i)||ub(i)),r=t.length<=3&&t.every(i=>Xd(i)||oa(i));return e||r;}function cb(t){return(oa(t)||Xd(t))&&!Ld(t);}function pb(t,e){let r=!1;for(let i=0;i<t.length;i++){if(e[i])continue;let n=Nr[t[i]];n&&(i===0||e[i-1])&&(i===t.length-1||e[i+1])&&(t[i]=n,e[i]=!0,r=!0);}return r;}function fb(t){let e=t.graphemes().slice(),r=e.map(a=>a.codePointAt(0)),i=r.map(Xa),n=a=>!i[a]&&!Jl(r[a])&&!("imageName"in t.getSection(a));for(let a=0;a<r.length;a++){if(!n(a))continue;let s=a;for(;s+1<r.length&&n(s+1);)s++;if(hb(r.slice(a,s+1)))for(let o=a;o<=s;o++)i[o]=cb(r[o]);a=s;}return pb(e,i)&&(t.text=e.join(""),t._graphemes=null),i;}function db(t,e,r,i,n,a,s,o,l,u,h,c){let p=0,f=0,d=0,y=0,m=o==="right"?1:o==="left"?0:.5,g=24/c,x=0;for(let w of n){w.trim();let _=w.getMaxScale(),A={positionedGlyphs:[],lineOffset:0};t.positionedLines[x]=A;let S=A.positionedGlyphs,F=0;if(!w.length()){f+=a,++x;continue;}let z=sb(i,w,g),$=l===2&&!h?fb(w):null,B=w.graphemes();for(let O=0;O<B.length;O++){let R=w.getSection(O),L=B[O],tt=L.codePointAt(0),it=$?$[O]:lb(l,h,tt),pt="fontStack"in R&&zd(L)&&!e[R.fontStack]?.[L]?[...L]:[L];for(let st of pt){let ft={glyph:st.codePointAt(0),grapheme:st,imageName:null,x:p,y:f+-17,vertical:it,scale:1,fontStack:"",sectionIndex:w.getSectionIndex(O),metrics:null,rect:null},jt;if("fontStack"in R){if(jt=yb(R,st,it,z,e,r),!jt)continue;ft.fontStack=R.fontStack;}else{if(t.iconsInText=!0,R.scale*=g,jt=mb(R,it,_,z,i),!jt)continue;F=Math.max(F,jt.imageOffset),ft.imageName=R.imageName;}let{rect:Pe,metrics:pe,baselineOffset:ze}=jt;if(ft.y+=ze,ft.scale=R.scale,ft.metrics=pe,ft.rect=Pe,S.push(ft),!it)p+=pe.advance*R.scale+u;else{t.verticalizable=!0;let Wt="imageName"in R?pe.advance:24;p+=Wt*R.scale+u;}}}if(S.length!==0){let O=p-u;d=Math.max(O,d),gb(S,0,S.length-1,m);}p=0;let P=(_-1)*24;A.lineOffset=Math.max(F,P);let E=a*_+F;f+=E,y=Math.max(E,y),++x;}let{horizontalAlign:b,verticalAlign:v}=jd(s);xb(t.positionedLines,m,b,v,d,y,a,f,n.length),t.top+=-v*f,t.bottom=t.top+f,t.left+=-b*d,t.right=t.left+d;}function yb(t,e,r,i,n,a){let s=a[t.fontStack]?.[e],o=ob(s,n,t,e);if(o===null)return null;let l;if(r)l=i.verticalLineContentWidth-t.scale*24;else{let u=Gd(t.verticalAlign);l=(i.horizontalLineContentHeight-t.scale*24)*u;}return{rect:o.rect,metrics:o.metrics,baselineOffset:l};}function mb(t,e,r,i,n){let a=n[t.imageName];if(!a)return null;let s=a.paddedRect,o=a.displaySize,l={width:o[0],height:o[1],left:1,top:-3,advance:e?o[1]:o[0]},u;if(e)u=i.verticalLineContentWidth-o[1]*t.scale;else{let c=Gd(t.verticalAlign);u=(i.horizontalLineContentHeight-o[1]*t.scale)*c;}let h=(e?o[0]:o[1])*t.scale-24*r;return{rect:s,metrics:l,baselineOffset:u,imageOffset:h};}function gb(t,e,r,i){if(i===0)return;let n=t[r],a=n.metrics.advance*n.scale,s=(t[r].x+a)*i;for(let o=e;o<=r;o++)t[o].x-=s;}function xb(t,e,r,i,n,a,s,o,l){let u=(e-r)*n,h=0;h=a===s?-i*l*s+.5*s:-o*i- -17;for(let c of t)for(let p of c.positionedGlyphs)p.x+=u,p.y+=h;}function vb(t,e,r){let{horizontalAlign:i,verticalAlign:n}=jd(r),a=e[0],s=e[1],o=a-t.displaySize[0]*i,l=o+t.displaySize[0],u=s-t.displaySize[1]*n;return{image:t,top:u,bottom:u+t.displaySize[1],left:o,right:l};}function Yd(t){let e=t.left,r=t.top,i=t.right-e,n=t.bottom-r,a=t.image.content[2]-t.image.content[0],s=t.image.content[3]-t.image.content[1],o=t.image.textFitWidth??"stretchOrShrink",l=t.image.textFitHeight??"stretchOrShrink",u=a/s;if(l==="proportional"){if(o==="stretchOnly"&&i/n<u||o==="proportional"){let h=Math.ceil(n*u);e*=h/i,i=h;}}else if(o==="proportional"&&l==="stretchOnly"&&u!==0&&i/n>u){let h=Math.ceil(i/u);r*=h/n,n=h;}return{x1:e,y1:r,x2:e+i,y2:r+n};}function Tc(t,e,r,i,n,a){let s=t.image,o;if(s.content){let m=s.content,g=s.pixelRatio||1;o=[m[0]/g,m[1]/g,s.displaySize[0]-m[2]/g,s.displaySize[1]-m[3]/g];}let l=e.left*a,u=e.right*a,h,c,p,f;r==="width"||r==="both"?(f=n[0]+l-i[3],c=n[0]+u+i[1]):(f=n[0]+(l+u-s.displaySize[0])/2,c=f+s.displaySize[0]);let d=e.top*a,y=e.bottom*a;return r==="height"||r==="both"?(h=n[1]+d-i[0],p=n[1]+y+i[2]):(h=n[1]+(d+y-s.displaySize[1])/2,p=h+s.displaySize[1]),{image:s,top:h,right:c,bottom:p,left:f,collisionPadding:o};}var kc=32640;function Ic(t,e){let{expression:r}=e;if(r.kind==="constant")return{kind:"constant",layoutSize:r.evaluate(new at(t+1))};if(r.kind==="source")return{kind:"source"};if(r.kind==="composite"){let{minZoom:i,maxZoom:n}=bb(r.zoomStops,t);return{kind:"composite",minZoom:i,maxZoom:n,interpolationType:r.interpolationType};}{let i=wb(r),n=r.evaluate(new at(t+1));return{kind:"camera",zoomStops:r.zoomStops,sizes:i,layoutSize:n,interpolationType:r.interpolationType};}}function bb(t,e){let r=0;for(;r<t.length&&t[r]<=e;)r++;r=Math.max(0,r-1);let i=r;for(;i<t.length&&t[i]<e+1;)i++;return i=Math.min(t.length-1,i),{minZoom:t[r],maxZoom:t[i]};}function wb(t){return t.zoomStops.map(e=>t.evaluate(new at(e===-1/0?t.zoomStops[1]-1:e)));}var Wr=class Wd extends M{constructor(e,r,i,n){super(e,r),this.angle=i,n!==void 0&&(this.segment=n);}clone(){return new Wd(this.x,this.y,this.angle,this.segment);}};I("Anchor",Wr);function Zd(t,e,r,i,n){if(e.segment===void 0||r===0)return!0;let a=e,s=e.segment+1,o=0;for(;o>-r/2;){if(s--,s<0)return!1;o-=t[s].dist(a),a=t[s];}o+=t[s].dist(t[s+1]),s++;let l=[],u=0;for(;o<r/2;){let h=t[s-1],c=t[s],p=t[s+1];if(!p)return!1;let f=h.angleTo(c)-c.angleTo(p);for(f=Math.abs((f+3*Math.PI)%(Math.PI*2)-Math.PI),l.push({distance:o,angleDelta:f}),u+=f;o-l[0].distance>i;)u-=l.shift().angleDelta;if(u>n)return!1;s++,o+=c.dist(p);}return!0;}function Hd(t){let e=0;for(let r=0;r<t.length-1;r++)e+=t[r].dist(t[r+1]);return e;}function Kd(t,e,r){return t?3/5*e*r:0;}function Jd(t,e){return Math.max(t?t.right-t.left:0,e?e.right-e.left:0);}function Db(t,e,r,i,n,a){let s=Kd(r,n,a),o=Jd(r,i)*a,l=0,u=Hd(t)/2;for(let h=0;h<t.length-1;h++){let c=t[h],p=t[h+1],f=c.dist(p);if(l+f>u){let d=(u-l)/f,y=new Wr(pr.number(c.x,p.x,d),pr.number(c.y,p.y,d),p.angleTo(c),h);return y._round(),!s||Zd(t,y,o,s,e)?y:void 0;}l+=f;}}function _b(t,e,r,i,n,a,s,o,l){let u=Kd(i,a,s),h=Jd(i,n),c=h*s,p=t[0].x===0||t[0].x===l||t[0].y===0||t[0].y===l;e-c<e/4&&(e=c+e/4);let f=a*2;return Qd(t,p?e/2*o%e:(h/2+f)*s*o%e,e,u,r,c,p,!1,l);}function Qd(t,e,r,i,n,a,s,o,l){let u=a/2,h=Hd(t),c=0,p=e-r,f=[];for(let d=0;d<t.length-1;d++){let y=t[d],m=t[d+1],g=y.dist(m),x=m.angleTo(y);for(;p+r<c+g;){p+=r;let b=(p-c)/g,v=pr.number(y.x,m.x,b),w=pr.number(y.y,m.y,b);if(v>=0&&v<l&&w>=0&&w<l&&p-u>=0&&p+u<=h){let _=new Wr(v,w,x,d);_._round(),(!i||Zd(t,_,a,i,n))&&f.push(_);}}c+=g;}return!o&&!f.length&&!s&&(f=Qd(t,c/2,r,i,n,a,s,!0,l)),f;}function Ab(t,e,r,i,n){let a=[];for(let s of t){let o;for(let l=0;l<s.length-1;l++){let u=s[l],h=s[l+1];u.x<e&&h.x<e||(u.x<e?u=new M(e,u.y+(h.y-u.y)*((e-u.x)/(h.x-u.x)))._round():h.x<e&&(h=new M(e,u.y+(h.y-u.y)*((e-u.x)/(h.x-u.x)))._round()),!(u.y<r&&h.y<r)&&(u.y<r?u=new M(u.x+(h.x-u.x)*((r-u.y)/(h.y-u.y)),r)._round():h.y<r&&(h=new M(u.x+(h.x-u.x)*((r-u.y)/(h.y-u.y)),r)._round()),!(u.x>=i&&h.x>=i)&&(u.x>=i?u=new M(i,u.y+(h.y-u.y)*((i-u.x)/(h.x-u.x)))._round():h.x>=i&&(h=new M(i,u.y+(h.y-u.y)*((i-u.x)/(h.x-u.x)))._round()),!(u.y>=n&&h.y>=n)&&(u.y>=n?u=new M(u.x+(h.x-u.x)*((n-u.y)/(h.y-u.y)),n)._round():h.y>=n&&(h=new M(u.x+(h.x-u.x)*((n-u.y)/(h.y-u.y)),n)._round()),(!o||!u.equals(o[o.length-1]))&&(o=[u],a.push(o)),o.push(h)))));}}return a;}function ty(t,e,r,i,n,a){let s=Cc(t,e,r,n,0);return s=Cc(s,e,i,a,1),s;}function Cc(t,e,r,i,n){switch(e){case 1:return Sb(t,r,i,n);case 2:return Mc(t,r,i,n,!1);case 3:return Mc(t,r,i,n,!0);}return[];}function Sb(t,e,r,i){let n=[];for(let a of t)for(let s of a){let o=i===0?s.x:s.y;o>=e&&o<=r&&n.push([s]);}return n;}function Eb(t,e,r,i,n){let a=i===0?Fb:Tb,s=[],o=[];for(let h=0;h<t.length-1;h++){let c=t[h],p=t[h+1],f=i===0?c.x:c.y,d=i===0?p.x:p.y,y=!1;f<e?d>e&&s.push(a(c,p,e)):f>r?d<r&&s.push(a(c,p,r)):s.push(c),d<e&&f>=e&&(s.push(a(c,p,e)),y=!0),d>r&&f<=r&&(s.push(a(c,p,r)),y=!0),!n&&y&&(o.push(s),s=[]);}let l=t.length-1,u=i===0?t[l].x:t[l].y;return u>=e&&u<=r&&s.push(t[l]),n&&s.length>0&&!s[0].equals(s[s.length-1])&&s.push(new M(s[0].x,s[0].y)),s.length>0&&o.push(s),o;}function Mc(t,e,r,i,n){let a=[];for(let s of t){let o=Eb(s,e,r,i,n);o.length>0&&a.push(...o);}return a;}function Fb(t,e,r){let i=(r-t.x)/(e.x-t.x);return new M(r,t.y+(e.y-t.y)*i);}function Tb(t,e,r){let i=(r-t.y)/(e.y-t.y);return new M(t.x+(e.x-t.x)*i,r);}function Bc(t,e,r,i){let n=[],a=t.image,s=a.pixelRatio,o=a.paddedRect.w-2,l=a.paddedRect.h-2,u={x1:t.left,y1:t.top,x2:t.right,y2:t.bottom},h=a.stretchX||[[0,o]],c=a.stretchY||[[0,l]],p=(E,O)=>E+O[1]-O[0],f=h.reduce(p,0),d=c.reduce(p,0),y=o-f,m=l-d,g=0,x=f,b=0,v=d,w=0,_=y,A=0,S=m;if(a.content&&i){let E=a.content,O=E[2]-E[0],R=E[3]-E[1];(a.textFitWidth||a.textFitHeight)&&(u=Yd(t)),g=Zn(h,0,E[0]),b=Zn(c,0,E[1]),x=Zn(h,E[0],E[2]),v=Zn(c,E[1],E[3]),w=E[0]-g,A=E[1]-b,_=O-x,S=R-v;}let F=u.x1,z=u.y1,$=u.x2-F,B=u.y2-z,P=(E,O,R,L)=>{let tt=Hn(E.stretch-g,x,$,F),it=Kn(E.fixed-w,_,E.stretch,f),pt=Hn(O.stretch-b,v,B,z),st=Kn(O.fixed-A,S,O.stretch,d),ft=Hn(R.stretch-g,x,$,F),jt=Kn(R.fixed-w,_,R.stretch,f),Pe=Hn(L.stretch-b,v,B,z),pe=Kn(L.fixed-A,S,L.stretch,d),ze=new M(tt,pt),Wt=new M(ft,pt),_r=new M(ft,Pe),Ar=new M(tt,Pe),Je=new M(it/s,st/s),ui=new M(jt/s,pe/s),Ft=e*Math.PI/180;if(Ft){let N=Math.sin(Ft),J=Math.cos(Ft),Y=[J,-N,N,J];ze._matMult(Y),Wt._matMult(Y),Ar._matMult(Y),_r._matMult(Y);}let Ae=E.stretch+E.fixed,Qe=R.stretch+R.fixed,Sr=O.stretch+O.fixed,Er=L.stretch+L.fixed;return{tl:ze,tr:Wt,bl:Ar,br:_r,tex:{x:a.paddedRect.x+1+Ae,y:a.paddedRect.y+1+Sr,w:Qe-Ae,h:Er-Sr},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:Je,pixelOffsetBR:ui,minFontScaleX:_/s/$,minFontScaleY:S/s/B,isSDF:r};};if(!i||!a.stretchX&&!a.stretchY)n.push(P({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:o+1},{fixed:0,stretch:l+1}));else{let E=Pc(h,y,f),O=Pc(c,m,d);for(let R=0;R<E.length-1;R++){let L=E[R],tt=E[R+1];for(let it=0;it<O.length-1;it++){let pt=O[it],st=O[it+1];n.push(P(L,pt,tt,st));}}}return n;}function Zn(t,e,r){let i=0;for(let n of t)i+=Math.max(e,Math.min(r,n[1]))-Math.max(e,Math.min(r,n[0]));return i;}function Pc(t,e,r){let i=[{fixed:-1,stretch:0}];for(let[n,a]of t){let s=i[i.length-1];i.push({fixed:n-s.stretch,stretch:s.stretch}),i.push({fixed:n-s.stretch,stretch:s.stretch+(a-n)});}return i.push({fixed:e+1,stretch:r}),i;}function Hn(t,e,r,i){return t/e*r+i;}function Kn(t,e,r,i){return t-e*r/i;}function kb(t,e,r,i,n,a,s,o){let l=i.layout.get("text-rotate").evaluate(a,{})*Math.PI/180,u=[];for(let h of e.positionedLines)for(let c of h.positionedGlyphs){if(!c.rect)continue;let p=c.rect||{},f=4,d=!0,y=1,m=0,g=(n||o)&&c.vertical,x=c.metrics.advance*c.scale/2;if(o&&e.verticalizable){let L=(c.scale-1)*24,tt=(24-c.metrics.width*c.scale)/2;m=h.lineOffset/2-(c.imageName?-tt:L);}if(c.imageName){let L=s[c.imageName];d=L.sdf,y=L.pixelRatio,f=1/y;}let b=n?[c.x+x,c.y]:[0,0],v=n?[0,0]:[c.x+x+r[0],c.y+r[1]-m],w=[0,0];g&&(w=v,v=[0,0]);let _=c.metrics.isDoubleResolution?2:1,A=(c.metrics.left-f)*c.scale-x+v[0],S=(-c.metrics.top-f)*c.scale+v[1],F=A+p.w/_*c.scale/y,z=S+p.h/_*c.scale/y,$=new M(A,S),B=new M(F,S),P=new M(A,z),E=new M(F,z);if(g){let L=new M(-x,x- -17),tt=-Math.PI/2,it=12-x,pt=c.imageName?it:0,st=new M(22-it,-pt),ft=new M(...w);$._rotateAround(tt,L)._add(st)._add(ft),B._rotateAround(tt,L)._add(st)._add(ft),P._rotateAround(tt,L)._add(st)._add(ft),E._rotateAround(tt,L)._add(st)._add(ft);}if(l){let L=Math.sin(l),tt=Math.cos(l),it=[tt,-L,L,tt];$._matMult(it),B._matMult(it),P._matMult(it),E._matMult(it);}let O=new M(0,0),R=new M(0,0);u.push({tl:$,tr:B,bl:P,br:E,tex:p,writingMode:e.writingMode,glyphOffset:b,sectionIndex:c.sectionIndex,isSDF:d,pixelOffsetTL:O,pixelOffsetBR:R,minFontScaleX:0,minFontScaleY:0});}return u;}var Jn=class{constructor(t,e,r,i,n,a,s,o,l,u){if(this.boxStartIndex=t.length,l){let h=a.top,c=a.bottom,p=a.collisionPadding;p&&(h-=p[1],c+=p[3]);let f=c-h;f>0&&(f=Math.max(10,f),this.circleDiameter=f);}else{let h=a.image?.content&&(a.image.textFitWidth||a.image.textFitHeight)?Yd(a):{x1:a.left,y1:a.top,x2:a.right,y2:a.bottom};h.y1=h.y1*s-o[0],h.y2=h.y2*s+o[2],h.x1=h.x1*s-o[3],h.x2=h.x2*s+o[1];let c=a.collisionPadding;if(c&&(h.x1-=c[0]*s,h.y1-=c[1]*s,h.x2+=c[2]*s,h.y2+=c[3]*s),u){let p=new M(h.x1,h.y1),f=new M(h.x2,h.y1),d=new M(h.x1,h.y2),y=new M(h.x2,h.y2),m=u*Math.PI/180;p._rotate(m),f._rotate(m),d._rotate(m),y._rotate(m),h.x1=Math.min(p.x,f.x,d.x,y.x),h.x2=Math.max(p.x,f.x,d.x,y.x),h.y1=Math.min(p.y,f.y,d.y,y.y),h.y2=Math.max(p.y,f.y,d.y,y.y);}t.emplaceBack(e.x,e.y,h.x1,h.y1,h.x2,h.y2,r,i,n);}this.boxEndIndex=t.length;}},Ib=class{constructor(t=[],e=(r,i)=>r<i?-1:+(r>i)){if(this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(let r=(this.length>>1)-1;r>=0;r--)this._down(r);}push(t){this.data.push(t),this._up(this.length++);}pop(){if(this.length===0)return;let t=this.data[0],e=this.data.pop();return--this.length>0&&(this.data[0]=e,this._down(0)),t;}peek(){return this.data[0];}_up(t){let{data:e,compare:r}=this,i=e[t];for(;t>0;){let n=t-1>>1,a=e[n];if(r(i,a)>=0)break;e[t]=a,t=n;}e[t]=i;}_down(t){let{data:e,compare:r}=this,i=this.length>>1,n=e[t];for(;t<i;){let a=(t<<1)+1,s=a+1;if(s<this.length&&r(e[s],e[a])<0&&(a=s),r(e[a],n)>=0)break;e[t]=e[a],t=a;}e[t]=n;}};function Cb(t,e=1){let r=ba.fromPoints(t[0]),i=Math.min(r.width(),r.height()),n=i/2,a=new Ib([],Mb),{minX:s,minY:o,maxX:l,maxY:u}=r;if(i===0)return new M(s,o);for(let p=s;p<l;p+=i)for(let f=o;f<u;f+=i)a.push(new Rr(p+n,f+n,n,t));let h=Pb(t),c=h;for(;a.length;){let p=a.pop();(p.d>c.d||!c.d)&&(c=p),!(p.max-c.d<=e)&&(n=p.h/2,a.push(new Rr(p.p.x-n,p.p.y-n,n,t)),a.push(new Rr(p.p.x+n,p.p.y-n,n,t)),a.push(new Rr(p.p.x-n,p.p.y+n,n,t)),a.push(new Rr(p.p.x+n,p.p.y+n,n,t)));}return h.d>0&&c.d-h.d<=e?h.p:c.p;}function Mb(t,e){return e.max-t.max;}var Rr=class{constructor(t,e,r,i){this.p=new M(t,e),this.h=r,this.d=Bb(this.p,i),this.max=this.d+this.h*Math.SQRT2;}};function Bb(t,e){let r=!1,i=1/0;for(let n of e)for(let a=0,s=n.length,o=s-1;a<s;o=a++){let l=n[a],u=n[o];l.y>t.y!=u.y>t.y&&t.x<(u.x-l.x)*(t.y-l.y)/(u.y-l.y)+l.x&&(r=!r),i=Math.min(i,Qf(t,l,u));}return(r?1:-1)*Math.sqrt(i);}function Pb(t){let e=0,r=0,i=0,n=t[0];for(let a=0,s=n.length,o=s-1;a<s;o=a++){let l=n[a],u=n[o],h=l.x*u.y-u.x*l.y;r+=(l.x+u.x)*h,i+=(l.y+u.y)*h,e+=h*3;}return new Rr(r/e,i/e,0,t);}var zb=function(t){return t[t.center=1]="center",t[t.left=2]="left",t[t.right=3]="right",t[t.top=4]="top",t[t.bottom=5]="bottom",t[t["top-left"]=6]="top-left",t[t["top-right"]=7]="top-right",t[t["bottom-left"]=8]="bottom-left",t[t["bottom-right"]=9]="bottom-right",t;}({}),nu=1/0;function ey(t,e){function r(n,a){let s=0,o=0;a<0&&(a=0);let l=a/Math.SQRT2;switch(n){case"top-right":case"top-left":o=l-7;break;case"bottom-right":case"bottom-left":o=-l+7;break;case"bottom":o=-a+7;break;case"top":o=a-7;}switch(n){case"top-right":case"bottom-right":s=-l;break;case"top-left":case"bottom-left":s=l;break;case"left":s=a;break;case"right":s=-a;}return[s,o];}function i(n,a,s){let o=0,l=0;switch(a=Math.abs(a),s=Math.abs(s),n){case"top-right":case"top-left":case"top":l=s-7;break;case"bottom-right":case"bottom-left":case"bottom":l=-s+7;}switch(n){case"top-right":case"bottom-right":case"right":o=-a;break;case"top-left":case"bottom-left":case"left":o=a;}return[o,l];}return e[1]===nu?r(t,e[0]):i(t,e[0],e[1]);}function ry(t,e,r){let i=t.layout,n=i.get("text-variable-anchor-offset")?.evaluate(e,{},r);if(n){let s=n.values,o=[];for(let l=0;l<s.length;l+=2){let u=o[l]=s[l],h=s[l+1].map(c=>c*24);u.startsWith("top")?h[1]-=7:u.startsWith("bottom")&&(h[1]+=7),o[l+1]=h;}return new be(o);}let a=i.get("text-variable-anchor");if(a){let s;s=t._unevaluatedLayout.getValue("text-radial-offset")===void 0?i.get("text-offset").evaluate(e,{},r).map(l=>l*24):[i.get("text-radial-offset").evaluate(e,{},r)*24,nu];let o=[];for(let l of a)o.push(l,ey(l,s));return new be(o);}return null;}function Lb(t){t.bucket.createArrays();let e=512*t.bucket.overscaling;t.bucket.tilePixelRatio=mt/e,t.bucket.compareText={},t.bucket.iconsNeedLinear=!1;let r=t.bucket.layers[0],i=r.layout,n=r._unevaluatedLayout._values,a={layoutIconSize:n["icon-size"].possiblyEvaluate(new at(t.bucket.zoom+1),t.canonical),layoutTextSize:n["text-size"].possiblyEvaluate(new at(t.bucket.zoom+1),t.canonical),textMaxSize:n["text-size"].possiblyEvaluate(new at(18))};if(t.bucket.textSizeData.kind==="composite"){let{minZoom:h,maxZoom:c}=t.bucket.textSizeData;a.compositeTextSizes=[n["text-size"].possiblyEvaluate(new at(h),t.canonical),n["text-size"].possiblyEvaluate(new at(c),t.canonical)];}if(t.bucket.iconSizeData.kind==="composite"){let{minZoom:h,maxZoom:c}=t.bucket.iconSizeData;a.compositeIconSizes=[n["icon-size"].possiblyEvaluate(new at(h),t.canonical),n["icon-size"].possiblyEvaluate(new at(c),t.canonical)];}let s=i.get("text-line-height")*24,o=i.get("text-rotation-alignment")!=="viewport"&&i.get("symbol-placement")!=="point",l=i.get("text-keep-upright"),u=i.get("text-size");for(let h of t.bucket.features){let c=i.get("text-font").evaluate(h,{},t.canonical).join(","),p=u.evaluate(h,{},t.canonical),f=a.layoutTextSize.evaluate(h,{},t.canonical),d=a.layoutIconSize.evaluate(h,{},t.canonical),y={horizontal:{},vertical:void 0},m=h.text,g=[0,0];if(m){let w=m.toString(),_=i.get("text-letter-spacing").evaluate(h,{},t.canonical)*24,A=xv(w)?_:0,S=i.get("text-anchor").evaluate(h,{},t.canonical),F=ry(r,h,t.canonical);if(!F){let P=i.get("text-radial-offset").evaluate(h,{},t.canonical);g=P?ey(S,[P*24,nu]):i.get("text-offset").evaluate(h,{},t.canonical).map(E=>E*24);}let z=o?"center":i.get("text-justify").evaluate(h,{},t.canonical),$=i.get("symbol-placement")==="point"?i.get("text-max-width").evaluate(h,{},t.canonical)*24:1/0,B=()=>{t.bucket.allowVerticalPlacement&&Ko(w)&&(y.vertical=Wn(m,t.glyphMap,t.glyphPositions,t.imagePositions,c,$,s,S,"left",A,g,2,!0,f,p));};if(!o&&F){let P=new Set();if(z==="auto")for(let O=0;O<F.values.length;O+=2)P.add(zc(F.values[O]));else P.add(z);let E=!1;for(let O of P)if(!y.horizontal[O])if(E)y.horizontal[O]=y.horizontal[0];else{let R=Wn(m,t.glyphMap,t.glyphPositions,t.imagePositions,c,$,s,"center",O,A,g,1,!1,f,p);R&&(y.horizontal[O]=R,E=R.positionedLines.length===1);}B();}else{z==="auto"&&(z=zc(S));let P=Wn(m,t.glyphMap,t.glyphPositions,t.imagePositions,c,$,s,S,z,A,g,1,!1,f,p);P&&(y.horizontal[z]=P),B(),Ko(w)&&o&&l&&(y.vertical=Wn(m,t.glyphMap,t.glyphPositions,t.imagePositions,c,$,s,S,z,A,g,2,!1,f,p));}}let x,b=!1;if(h.icon?.name){let w=t.imageMap[h.icon.name];w&&(x=vb(t.imagePositions[h.icon.name],i.get("icon-offset").evaluate(h,{},t.canonical),i.get("icon-anchor").evaluate(h,{},t.canonical)),b=!!w.sdf,t.bucket.sdfIcons===void 0?t.bucket.sdfIcons=b:t.bucket.sdfIcons!==b&&Mt("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),w.pixelRatio===t.bucket.pixelRatio?i.get("icon-rotate").constantOr(1)!==0&&(t.bucket.iconsNeedLinear=!0):t.bucket.iconsNeedLinear=!0);}let v=iy(y.horizontal)||y.vertical;t.bucket.iconsInText||=v?v.iconsInText:!1,(v||x)&&Vb(t.bucket,h,y,x,t.imageMap,a,f,d,g,b,t.canonical,t.subdivisionGranularity);}t.showCollisionBoxes&&t.bucket.generateCollisionDebugBuffers();}function zc(t){switch(t){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left";}return"center";}function Vb(t,e,r,i,n,a,s,o,l,u,h,c){let p=a.textMaxSize.evaluate(e,{});p===void 0&&(p=s);let f=t.layers[0].layout,d=f.get("icon-offset").evaluate(e,{},h),y=iy(r.horizontal),m=s/24,g=t.tilePixelRatio*m,x=t.tilePixelRatio*p/24,b=t.tilePixelRatio*o,v=t.tilePixelRatio*f.get("symbol-spacing"),w=f.get("text-padding")*t.tilePixelRatio,_=Hb(f,e,h,t.tilePixelRatio),A=f.get("text-max-angle")/180*Math.PI,S=f.get("text-rotation-alignment")!=="viewport"&&f.get("symbol-placement")!=="point",F=f.get("icon-rotation-alignment").constantOr("viewport")==="map"&&f.get("symbol-placement")!=="point",z=f.get("symbol-placement"),$=v/2,B=f.get("icon-text-fit"),P;i&&B!=="none"&&(t.allowVerticalPlacement&&r.vertical&&(P=Tc(i,r.vertical,B,f.get("icon-text-fit-padding"),d,m)),y&&(i=Tc(i,y,B,f.get("icon-text-fit-padding"),d,m)));let E=h?c.line.getGranularityForZoomLevel(h.z):1,O=(R,L)=>{L.x<0||L.x>=8192||L.y<0||L.y>=8192||Rb(t,L,R,r,i,n,P,t.layers[0],t.collisionBoxArray,e.index,e.sourceLayerIndex,t.index,g,[w,w,w,w],S,l,b,_,F,d,e,a,u,h,s);};if(z==="line")for(let R of Ab(e.geometry,0,0,mt,mt)){let L=or(R,E),tt=_b(L,v,A,r.vertical||y,i,24,x,t.overscaling,mt);for(let it of tt){let pt=y;(!pt||!$b(t,pt.text,$,it))&&O(L,it);}}else if(z==="line-center"){for(let R of e.geometry)if(R.length>1){let L=or(R,E),tt=Db(L,A,r.vertical||y,i,24,x);tt&&O(L,tt);}}else if(e.type==="Polygon")for(let R of Ma(e.geometry,0)){let L=Cb(R,16);O(or(R[0],E,!0),new Wr(L.x,L.y,0));}else if(e.type==="LineString")for(let R of e.geometry){let L=or(R,E);O(L,new Wr(L[0].x,L[0].y,0));}else if(e.type==="Point")for(let R of e.geometry)for(let L of R)O([L],new Wr(L.x,L.y,0));}function Ob(t,e){let r=t.length,i=e?.values;if(i?.length>0)for(let n=0;n<i.length;n+=2){let a=zb[i[n]],s=i[n+1];t.emplaceBack(a,s[0],s[1]);}return[r,t.length];}function Lc(t,e,r,i,n,a,s,o,l,u,h,c,p,f,d,y){let m=kb(e,r,o,n,a,s,i,t.allowVerticalPlacement),g=t.textSizeData,x=null;g.kind==="source"?(x=[128*n.layout.get("text-size").evaluate(s,{})],x[0]>32640&&Mt(`${t.layerIds[0]}: Value for "text-size" is >= 255. Reduce your "text-size".`)):g.kind==="composite"&&(x=[128*d.compositeTextSizes[0].evaluate(s,{},y),128*d.compositeTextSizes[1].evaluate(s,{},y)],(x[0]>32640||x[1]>32640)&&Mt(`${t.layerIds[0]}: Value for "text-size" is >= 255. Reduce your "text-size".`)),t.addSymbols(t.text,m,x,o,a,s,h,e,u.lineStartIndex,u.lineLength,f,y,l);for(let b of c)p[b]=t.text.placedSymbolArray.length-1;return m.length*4;}function iy(t){for(let e in t)return t[e];return null;}function Rb(t,e,r,i,n,a,s,o,l,u,h,c,p,f,d,y,m,g,x,b,v,w,_,A,S){let F=t.addToLineVertexArray(e,r),z=o.layout.get("symbol-height-offset").evaluate(v,{},A);z>t.maxHeightOffset&&(t.maxHeightOffset=z);let $,B,P,E,O=0,R=0,L=0,tt=0,it=-1,pt=-1,st={},ft=(0,To.default)("");if(t.allowVerticalPlacement&&i.vertical){let J=o.layout.get("text-rotate").evaluate(v,{},A)+90,Y=i.vertical;P=new Jn(l,e,u,h,c,Y,p,f,d,J),s&&(E=new Jn(l,e,u,h,c,s,m,g,d,J));}if(n){let J=o.layout.get("icon-rotate").evaluate(v,{}),Y=o.layout.get("icon-text-fit")!=="none",C=Bc(n,J,_,Y),lt=s?Bc(s,J,_,Y):void 0;B=new Jn(l,e,u,h,c,n,m,g,!1,J),O=C.length*4;let G=t.iconSizeData,j=null;G.kind==="source"?(j=[128*o.layout.get("icon-size").evaluate(v,{})],j[0]>32640&&Mt(`${t.layerIds[0]}: Value for "icon-size" is >= 255. Reduce your "icon-size".`)):G.kind==="composite"&&(j=[128*w.compositeIconSizes[0].evaluate(v,{},A),128*w.compositeIconSizes[1].evaluate(v,{},A)],(j[0]>32640||j[1]>32640)&&Mt(`${t.layerIds[0]}: Value for "icon-size" is >= 255. Reduce your "icon-size".`)),t.addSymbols(t.icon,C,j,b,x,v,0,e,F.lineStartIndex,F.lineLength,-1,A,z),it=t.icon.placedSymbolArray.length-1,lt&&(R=lt.length*4,t.addSymbols(t.icon,lt,j,b,x,v,2,e,F.lineStartIndex,F.lineLength,-1,A,z),pt=t.icon.placedSymbolArray.length-1);}let jt=Object.keys(i.horizontal);for(let J of jt){let Y=i.horizontal[J];$||=(ft=(0,To.default)(Y.text),new Jn(l,e,u,h,c,Y,p,f,d,o.layout.get("text-rotate").evaluate(v,{},A)));let C=Y.positionedLines.length===1;if(L+=Lc(t,e,Y,a,o,d,v,y,z,F,i.vertical?1:3,C?jt:[J],st,it,w,A),C)break;}i.vertical&&(tt+=Lc(t,e,i.vertical,a,o,d,v,y,z,F,2,["vertical"],st,pt,w,A));let Pe=$?$.boxStartIndex:t.collisionBoxArray.length,pe=$?$.boxEndIndex:t.collisionBoxArray.length,ze=P?P.boxStartIndex:t.collisionBoxArray.length,Wt=P?P.boxEndIndex:t.collisionBoxArray.length,_r=B?B.boxStartIndex:t.collisionBoxArray.length,Ar=B?B.boxEndIndex:t.collisionBoxArray.length,Je=E?E.boxStartIndex:t.collisionBoxArray.length,ui=E?E.boxEndIndex:t.collisionBoxArray.length,Ft=-1,Ae=(J,Y)=>J?.circleDiameter?Math.max(J.circleDiameter,Y):Y;Ft=Ae($,Ft),Ft=Ae(P,Ft),Ft=Ae(B,Ft),Ft=Ae(E,Ft);let Qe=+(Ft>-1);Qe&&(Ft*=S/24),t.glyphOffsetArray.length>=t.maxGlyphs&&Mt("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),v.sortKey!==void 0&&t.addToSortKeyRanges(t.symbolInstances.length,v.sortKey);let Sr=ry(o,v,A),[Er,N]=Ob(t.textAnchorOffsets,Sr);t.symbolInstances.emplaceBack(e.x,e.y,st.right>=0?st.right:-1,st.center>=0?st.center:-1,st.left>=0?st.left:-1,st.vertical||-1,it,pt,ft,Pe,pe,ze,Wt,_r,Ar,Je,ui,u,L,tt,O,R,Qe,0,p,Ft,Er,N,z);}function $b(t,e,r,i){let n=t.compareText;if(!(e in n))n[e]=[];else{let a=n[e];for(let s=a.length-1;s>=0;s--)if(i.dist(a[s])<r)return!0;}return n[e].push(i),!1;}function Vc(t,e,r){let i="never",n=t.get(e);return n?i=n:t.get(r)&&(i="always"),i;}var Nb=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function Qn(t,e,r,i,n,a,s,o,l,u,h,c,p,f){let d=o?Math.min(kc,Math.round(o[0])):0,y=o?Math.min(kc,Math.round(o[1])):0;t.emplaceBack(e,r,Math.round(i*32),Math.round(n*32),a,s,(d<<1)+ +!!l,y,u*16,h*16,c*256,p*256,f);}function Ub(t,e,r){t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r),t.emplaceBack(e.x,e.y,r);}function qb(t){for(let e of t.sections)if(Od(e.text))return!0;return!1;}var el=class{constructor(t){this.layoutVertexArray=new Hm(),this.indexArray=new mn(),this.programConfigurations=t,this.segments=new Jt(),this.dynamicLayoutVertexArray=new Km(),this.opacityVertexArray=new Jm(),this.hasVisibleVertices=!1,this.placedSymbolArray=new Of();}isEmpty(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0;}upload(t,e,r,i){this.isEmpty()||(r&&(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,q2.members),this.indexBuffer=t.createIndexBuffer(this.indexArray,e),this.dynamicLayoutVertexBuffer=t.createVertexBuffer(this.dynamicLayoutVertexArray,j2.members,!0),this.opacityVertexBuffer=t.createVertexBuffer(this.opacityVertexArray,Nb,!0),this.opacityVertexBuffer.itemSize=1),(r||i)&&this.programConfigurations.upload(t));}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy());}};I("SymbolBuffers",el);var rl=class{constructor(t,e,r){this.layoutVertexArray=new t(),this.layoutAttributes=e,this.indexArray=new r(),this.segments=new Jt(),this.collisionVertexArray=new Qm();}upload(t){this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=t.createVertexBuffer(this.collisionVertexArray,G2.members,!0);}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy());}};I("CollisionBuffers",rl);var ny=class{constructor(t){this.collisionBoxArray=t.collisionBoxArray,this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map(s=>s.id),this.index=t.index,this.pixelRatio=t.pixelRatio,this.sourceLayerIndex=t.sourceLayerIndex,this.hasDependencies=!0,this.hasRTLText=!1,this.maxHeightOffset=0,this.sortKeyRanges=[],this.collisionCircleArray=[],this.maxGlyphs=65535;let e=this.layers[0]._unevaluatedLayout._values;this.textSizeData=Ic(this.zoom,e["text-size"]),this.iconSizeData=Ic(this.zoom,e["icon-size"]);let r=this.layers[0].layout,i=r.get("symbol-sort-key"),n=r.get("symbol-z-order");this.canOverlap=Vc(r,"text-overlap","text-allow-overlap")!=="never"||Vc(r,"icon-overlap","icon-allow-overlap")!=="never"||r.get("text-ignore-placement")||r.get("icon-ignore-placement"),this.sortFeaturesByKey=n!=="viewport-y"&&!i.isConstant();let a=n==="viewport-y"||n==="auto"&&!this.sortFeaturesByKey;this.sortFeaturesByY=a&&this.canOverlap,r.get("symbol-placement")==="point"&&(this.writingModes=r.get("text-writing-mode").map(s=>Ud[s])),this.stateDependentLayerIds=this.layers.filter(s=>s.isStateDependent()).map(s=>s.id),this.sourceID=t.sourceID;}createArrays(){this.text=new el(new dr(this.layers,this.zoom,t=>t.startsWith("text"))),this.icon=new el(new dr(this.layers,this.zoom,t=>t.startsWith("icon"))),this.glyphOffsetArray=new Nf(),this.lineVertexArray=new Uf(),this.symbolInstances=new $f(),this.textAnchorOffsets=new jf();}calculateGlyphDependencies(t,e,r,i,n){let a=(i||this.allowVerticalPlacement)&&n,s=Ql.fromFeature(t,r),o=s.graphemes();for(let l=0;l<o.length;l++){let u=s.getSection(l);if("imageName"in u)continue;let h=e[u.fontStack]||={},c=o[l];zd(c)&&(h[c]=!0);for(let p of c){if(h[p]=!0,!a)continue;let f=Nr[p];f&&(h[f]=!0);}}}populate(t,e,r){let i=this.layers[0],n=i.layout,a=n.get("text-font"),s=n.get("text-field"),o=n.get("icon-image"),l=(s.value.kind!=="constant"||s.value.value instanceof Me&&!s.value.value.isEmpty()||s.value.value.toString().length>0)&&(a.value.kind!=="constant"||a.value.value.length>0),u=o.value.kind!=="constant"||!!o.value.value||Object.keys(o.parameters).length>0,h=n.get("symbol-sort-key");if(this.features=[],!l&&!u)return;let c=e.iconDependencies,p=e.glyphDependencies,f=e.availableImages,d=new at(this.zoom);for(let{feature:y,id:m,index:g,sourceLayerIndex:x}of t){let b=i._featureFilter.needGeometry,v=si(y,b);if(!i._featureFilter.filter(d,v,r))continue;b||(v.geometry=vr(y));let w;if(l){let F=i.getValueAndResolveTokens("text-field",v,r,f),z=Me.factory(F);this.hasRTLText||=qb(z),w=dv(z,i,v);}let _;if(u){let F=i.getValueAndResolveTokens("icon-image",v,r,f);_=F instanceof we?F:we.fromString(F);}if(!w&&!_)continue;let A=this.sortFeaturesByKey?h.evaluate(v,{},r):void 0,S={id:m,text:w,icon:_,index:g,sourceLayerIndex:x,geometry:v.geometry,properties:y.properties,type:gn.types[y.type],sortKey:A};if(this.features.push(S),_&&(c[_.name]=!0),w){let F=a.evaluate(v,{},r).join(","),z=n.get("text-rotation-alignment")!=="viewport"&&n.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes?.includes(2);let $=Ko(w.toString());this.calculateGlyphDependencies(w,p,F,z,$);for(let B of w.sections)B.image&&(c[B.image.name]=!0);}}n.get("symbol-placement")==="line"&&(this.features=mv(this.features)),this.sortFeaturesByKey&&this.features.sort((y,m)=>y.sortKey-m.sortKey);}update(t,e,r){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(t,e,this.layers,{imagePositions:r}),this.icon.programConfigurations.updatePaintArrays(t,e,this.layers,{imagePositions:r}));}addFeatures({options:t,canonical:e,glyphMap:r,glyphPositions:i,iconMap:n,iconPositions:a,showCollisionBoxes:s}){Lb({bucket:this,glyphMap:r,glyphPositions:i,imageMap:n,imagePositions:a,showCollisionBoxes:s,canonical:e,subdivisionGranularity:t.subdivisionGranularity});}isEmpty(){return this.symbolInstances.length===0;}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload;}upload(t){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(t),this.iconCollisionBox.upload(t)),this.text.upload(t,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(t,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0;}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy();}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData();}addToLineVertexArray(t,e){let r=this.lineVertexArray.length;if(t.segment!==void 0){let i=t.dist(e[t.segment+1]),n=t.dist(e[t.segment]),a={};for(let s=t.segment+1;s<e.length;s++)a[s]={x:e[s].x,y:e[s].y,tileUnitDistanceFromAnchor:i},s<e.length-1&&(i+=e[s+1].dist(e[s]));for(let s=t.segment||0;s>=0;s--)a[s]={x:e[s].x,y:e[s].y,tileUnitDistanceFromAnchor:n},s>0&&(n+=e[s-1].dist(e[s]));for(let s=0;s<e.length;s++){let o=a[s];this.lineVertexArray.emplaceBack(o.x,o.y,o.tileUnitDistanceFromAnchor);}}return{lineStartIndex:r,lineLength:this.lineVertexArray.length-r};}addSymbols(t,e,r,i,n,a,s,o,l,u,h,c,p){let f=t.indexArray,d=t.layoutVertexArray,y=t.segments.prepareSegment(4*e.length,d,f,this.canOverlap?a.sortKey:void 0),m=this.glyphOffsetArray.length,g=y.vertexLength,x=this.allowVerticalPlacement&&s===2?Math.PI/2:0,b=a.text&&a.text.sections;for(let v=0;v<e.length;v++){let{tl:w,tr:_,bl:A,br:S,tex:F,pixelOffsetTL:z,pixelOffsetBR:$,minFontScaleX:B,minFontScaleY:P,glyphOffset:E,isSDF:O,sectionIndex:R}=e[v],L=y.vertexLength,tt=E[1];Qn(d,o.x,o.y,w.x,tt+w.y,F.x,F.y,r,O,z.x,z.y,B,P,p),Qn(d,o.x,o.y,_.x,tt+_.y,F.x+F.w,F.y,r,O,$.x,z.y,B,P,p),Qn(d,o.x,o.y,A.x,tt+A.y,F.x,F.y+F.h,r,O,z.x,$.y,B,P,p),Qn(d,o.x,o.y,S.x,tt+S.y,F.x+F.w,F.y+F.h,r,O,$.x,$.y,B,P,p),Ub(t.dynamicLayoutVertexArray,o,x),f.emplaceBack(L,L+2,L+1),f.emplaceBack(L+1,L+2,L+3),y.vertexLength+=4,y.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(E[0]),(v===e.length-1||R!==e[v+1].sectionIndex)&&t.programConfigurations.populatePaintArrays(d.length,a,a.index,{imagePositions:{},canonical:c,formattedSection:b?.[R]});}t.placedSymbolArray.emplaceBack(o.x,o.y,m,this.glyphOffsetArray.length-m,g,l,u,o.segment,r?r[0]:0,r?r[1]:0,i[0],i[1],s,0,!1,0,h,p);}_addCollisionDebugVertex(t,e,r,i,n,a){return e.emplaceBack(0,0),t.emplaceBack(r.x,r.y,i,n,Math.round(a.x),Math.round(a.y));}addCollisionDebugVertices(t,e,r,i,n,a,s){let o=n.segments.prepareSegment(4,n.layoutVertexArray,n.indexArray),l=o.vertexLength,u=n.layoutVertexArray,h=n.collisionVertexArray,c=s.anchorX,p=s.anchorY;this._addCollisionDebugVertex(u,h,a,c,p,new M(t,e)),this._addCollisionDebugVertex(u,h,a,c,p,new M(r,e)),this._addCollisionDebugVertex(u,h,a,c,p,new M(r,i)),this._addCollisionDebugVertex(u,h,a,c,p,new M(t,i)),o.vertexLength+=4;let f=n.indexArray;f.emplaceBack(l,l+1),f.emplaceBack(l+1,l+2),f.emplaceBack(l+2,l+3),f.emplaceBack(l+3,l),o.primitiveLength+=4;}addDebugCollisionBoxes(t,e,r,i){for(let n=t;n<e;n++){let a=this.collisionBoxArray.get(n),s=a.x1,o=a.y1,l=a.x2,u=a.y2;this.addCollisionDebugVertices(s,o,l,u,i?this.textCollisionBox:this.iconCollisionBox,a.anchorPoint,r);}}generateCollisionDebugBuffers(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new rl(Nh,cc.members,Eo),this.iconCollisionBox=new rl(Nh,cc.members,Eo);for(let t=0;t<this.symbolInstances.length;t++){let e=this.symbolInstances.get(t);this.addDebugCollisionBoxes(e.textBoxStartIndex,e.textBoxEndIndex,e,!0),this.addDebugCollisionBoxes(e.verticalTextBoxStartIndex,e.verticalTextBoxEndIndex,e,!0),this.addDebugCollisionBoxes(e.iconBoxStartIndex,e.iconBoxEndIndex,e,!1),this.addDebugCollisionBoxes(e.verticalIconBoxStartIndex,e.verticalIconBoxEndIndex,e,!1);}}_deserializeCollisionBoxesForSymbol(t,e,r,i,n,a,s,o,l){let u={};for(let h=e;h<r;h++){let c=t.get(h);u.textBox={x1:c.x1,y1:c.y1,x2:c.x2,y2:c.y2,anchorPointX:c.anchorPointX,anchorPointY:c.anchorPointY},u.textFeatureIndex=c.featureIndex;break;}for(let h=i;h<n;h++){let c=t.get(h);u.verticalTextBox={x1:c.x1,y1:c.y1,x2:c.x2,y2:c.y2,anchorPointX:c.anchorPointX,anchorPointY:c.anchorPointY},u.verticalTextFeatureIndex=c.featureIndex;break;}for(let h=a;h<s;h++){let c=t.get(h);u.iconBox={x1:c.x1,y1:c.y1,x2:c.x2,y2:c.y2,anchorPointX:c.anchorPointX,anchorPointY:c.anchorPointY},u.iconFeatureIndex=c.featureIndex;break;}for(let h=o;h<l;h++){let c=t.get(h);u.verticalIconBox={x1:c.x1,y1:c.y1,x2:c.x2,y2:c.y2,anchorPointX:c.anchorPointX,anchorPointY:c.anchorPointY},u.verticalIconFeatureIndex=c.featureIndex;break;}return u;}deserializeCollisionBoxes(t){this.collisionArrays=[];for(let e=0;e<this.symbolInstances.length;e++){let r=this.symbolInstances.get(e);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(t,r.textBoxStartIndex,r.textBoxEndIndex,r.verticalTextBoxStartIndex,r.verticalTextBoxEndIndex,r.iconBoxStartIndex,r.iconBoxEndIndex,r.verticalIconBoxStartIndex,r.verticalIconBoxEndIndex));}}hasTextData(){return this.text.segments.get().length>0;}hasIconData(){return this.icon.segments.get().length>0;}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox;}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0;}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0;}addIndicesForPlacedSymbol(t,e){let r=t.placedSymbolArray.get(e),i=r.vertexStartIndex+r.numGlyphs*4;for(let n=r.vertexStartIndex;n<i;n+=4)t.indexArray.emplaceBack(n,n+2,n+1),t.indexArray.emplaceBack(n+1,n+2,n+3);}getSortedSymbolIndexes(t){if(this.sortedAngle===t&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;let e=Math.sin(t),r=Math.cos(t),i=[],n=[],a=[];for(let s=0;s<this.symbolInstances.length;++s){a.push(s);let o=this.symbolInstances.get(s);i.push(Math.round(e*o.anchorX+r*o.anchorY)|0),n.push(o.featureIndex);}return a.sort((s,o)=>i[s]-i[o]||n[o]-n[s]),a;}addToSortKeyRanges(t,e){let r=this.sortKeyRanges[this.sortKeyRanges.length-1];r?.sortKey===e?r.symbolInstanceEnd=t+1:this.sortKeyRanges.push({sortKey:e,symbolInstanceStart:t,symbolInstanceEnd:t+1});}sortFeatures(t){if(this.sortFeaturesByY&&this.sortedAngle!==t&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(t),this.sortedAngle=t,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(let e of this.symbolInstanceIndexes){let r=this.symbolInstances.get(e);this.featureSortOrder.push(r.featureIndex);let i=[r.rightJustifiedTextSymbolIndex,r.centerJustifiedTextSymbolIndex,r.leftJustifiedTextSymbolIndex];for(let n=0;n<i.length;n++){let a=i[n];a>=0&&i.indexOf(a)===n&&this.addIndicesForPlacedSymbol(this.text,a);}r.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,r.verticalPlacedTextSymbolIndex),r.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,r.placedIconSymbolIndex),r.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,r.verticalPlacedIconSymbolIndex);}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray);}}};I("SymbolBucket",ny,{omit:["layers","collisionBoxArray","features","compareText"]});function jb(t,e){return e.replace(/{([^{}]+)}/g,(r,i)=>t&&i in t?String(t[i]):"");}var Gb,Xb=()=>Gb||=new qt({"symbol-placement":new V(D.layout_symbol["symbol-placement"],"symbol-placement"),"symbol-spacing":new V(D.layout_symbol["symbol-spacing"],"symbol-spacing"),"symbol-avoid-edges":new V(D.layout_symbol["symbol-avoid-edges"],"symbol-avoid-edges"),"symbol-sort-key":new U(D.layout_symbol["symbol-sort-key"],"symbol-sort-key"),"symbol-z-order":new V(D.layout_symbol["symbol-z-order"],"symbol-z-order"),"icon-allow-overlap":new V(D.layout_symbol["icon-allow-overlap"],"icon-allow-overlap"),"icon-overlap":new V(D.layout_symbol["icon-overlap"],"icon-overlap"),"icon-ignore-placement":new V(D.layout_symbol["icon-ignore-placement"],"icon-ignore-placement"),"icon-optional":new V(D.layout_symbol["icon-optional"],"icon-optional"),"icon-rotation-alignment":new U(D.layout_symbol["icon-rotation-alignment"],"icon-rotation-alignment"),"icon-size":new U(D.layout_symbol["icon-size"],"icon-size"),"icon-text-fit":new V(D.layout_symbol["icon-text-fit"],"icon-text-fit"),"icon-text-fit-padding":new V(D.layout_symbol["icon-text-fit-padding"],"icon-text-fit-padding"),"icon-image":new U(D.layout_symbol["icon-image"],"icon-image"),"icon-rotate":new U(D.layout_symbol["icon-rotate"],"icon-rotate"),"icon-padding":new U(D.layout_symbol["icon-padding"],"icon-padding"),"icon-keep-upright":new V(D.layout_symbol["icon-keep-upright"],"icon-keep-upright"),"icon-offset":new U(D.layout_symbol["icon-offset"],"icon-offset"),"icon-anchor":new U(D.layout_symbol["icon-anchor"],"icon-anchor"),"icon-pitch-alignment":new V(D.layout_symbol["icon-pitch-alignment"],"icon-pitch-alignment"),"text-pitch-alignment":new V(D.layout_symbol["text-pitch-alignment"],"text-pitch-alignment"),"text-rotation-alignment":new V(D.layout_symbol["text-rotation-alignment"],"text-rotation-alignment"),"text-field":new U(D.layout_symbol["text-field"],"text-field"),"text-font":new U(D.layout_symbol["text-font"],"text-font"),"text-size":new U(D.layout_symbol["text-size"],"text-size"),"text-max-width":new U(D.layout_symbol["text-max-width"],"text-max-width"),"text-line-height":new V(D.layout_symbol["text-line-height"],"text-line-height"),"text-letter-spacing":new U(D.layout_symbol["text-letter-spacing"],"text-letter-spacing"),"text-justify":new U(D.layout_symbol["text-justify"],"text-justify"),"text-radial-offset":new U(D.layout_symbol["text-radial-offset"],"text-radial-offset"),"text-variable-anchor":new V(D.layout_symbol["text-variable-anchor"],"text-variable-anchor"),"text-variable-anchor-offset":new U(D.layout_symbol["text-variable-anchor-offset"],"text-variable-anchor-offset"),"text-anchor":new U(D.layout_symbol["text-anchor"],"text-anchor"),"text-max-angle":new V(D.layout_symbol["text-max-angle"],"text-max-angle"),"text-writing-mode":new V(D.layout_symbol["text-writing-mode"],"text-writing-mode"),"text-rotate":new U(D.layout_symbol["text-rotate"],"text-rotate"),"text-padding":new V(D.layout_symbol["text-padding"],"text-padding"),"text-keep-upright":new V(D.layout_symbol["text-keep-upright"],"text-keep-upright"),"text-transform":new U(D.layout_symbol["text-transform"],"text-transform"),"text-offset":new U(D.layout_symbol["text-offset"],"text-offset"),"text-allow-overlap":new V(D.layout_symbol["text-allow-overlap"],"text-allow-overlap"),"text-overlap":new V(D.layout_symbol["text-overlap"],"text-overlap"),"text-ignore-placement":new V(D.layout_symbol["text-ignore-placement"],"text-ignore-placement"),"text-optional":new V(D.layout_symbol["text-optional"],"text-optional"),"symbol-height-offset":new U(D.layout_symbol["symbol-height-offset"],"symbol-height-offset"),"symbol-height-anchor":new V(D.layout_symbol["symbol-height-anchor"],"symbol-height-anchor")}),Yb,Wb=()=>Yb||=new qt({"icon-opacity":new U(D.paint_symbol["icon-opacity"],"icon-opacity"),"icon-color":new U(D.paint_symbol["icon-color"],"icon-color"),"icon-halo-color":new U(D.paint_symbol["icon-halo-color"],"icon-halo-color"),"icon-halo-width":new U(D.paint_symbol["icon-halo-width"],"icon-halo-width"),"icon-halo-blur":new U(D.paint_symbol["icon-halo-blur"],"icon-halo-blur"),"icon-translate":new V(D.paint_symbol["icon-translate"],"icon-translate"),"icon-translate-anchor":new V(D.paint_symbol["icon-translate-anchor"],"icon-translate-anchor"),"text-opacity":new U(D.paint_symbol["text-opacity"],"text-opacity"),"text-color":new U(D.paint_symbol["text-color"],"text-color",{runtimeType:le,getOverride:t=>t.textColor,hasOverride:t=>!!t.textColor}),"text-halo-color":new U(D.paint_symbol["text-halo-color"],"text-halo-color"),"text-halo-width":new U(D.paint_symbol["text-halo-width"],"text-halo-width"),"text-halo-blur":new U(D.paint_symbol["text-halo-blur"],"text-halo-blur"),"text-translate":new V(D.paint_symbol["text-translate"],"text-translate"),"text-translate-anchor":new V(D.paint_symbol["text-translate-anchor"],"text-translate-anchor")}),Ns={get paint(){return Wb();},get layout(){return Xb();}},ay=class{constructor(t){if(t.property.overrides===void 0)throw Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=t.property.overrides?t.property.overrides.runtimeType:un,this.defaultValue=t;}evaluate(t){if(t.formattedSection){let e=this.defaultValue.property.overrides;if(e?.hasOverride(t.formattedSection))return e.getOverride(t.formattedSection);}return t.feature&&t.featureState?this.defaultValue.evaluate(t.feature,t.featureState):this.defaultValue.property.specification.default;}eachChild(t){if(!this.defaultValue.isConstant()){let e=this.defaultValue.value;t(e._styleExpression.expression);}}outputDefined(){return!1;}serialize(){return null;}};I("FormatSectionOverride",ay,{omit:["defaultValue"]});var Zb=class il extends ce{constructor(e,r){super(e,Ns,r);}recalculate(e,r){super.recalculate(e,r);let i=this.layout.get("icon-rotation-alignment");if((i.value.kind!=="constant"||i.value.value==="auto")&&(this.layout._values["icon-rotation-alignment"]=new ie(i.property,{kind:"constant",value:this.layout.get("symbol-placement")==="point"?"viewport":"map"},i.parameters)),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")==="point"?this.layout._values["text-rotation-alignment"]="viewport":this.layout._values["text-rotation-alignment"]="map"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")==="map"?"map":"viewport"),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment").constantOr("viewport")),this.layout.get("symbol-placement")==="point"){let n=this.layout.get("text-writing-mode");if(n){let a=[];for(let s of n)a.includes(s)||a.push(s);this.layout._values["text-writing-mode"]=a;}else this.layout._values["text-writing-mode"]=["horizontal"];}this._setPaintOverrides();}getValueAndResolveTokens(e,r,i,n){let a=this.layout.get(e).evaluate(r,{},i,n),s=this._unevaluatedLayout._values[e];return!s.isDataDriven()&&!Va(s.value)&&a?jb(r.properties,a):a;}createBucket(e){return new ny(e);}queryRadius(){return 0;}queryIntersectsFeature(){throw Error("Should take a different path in FeatureIndex");}_setPaintOverrides(){for(let e of Ns.paint.overridableProperties){if(!il.hasPaintOverride(this.layout,e))continue;let r=this.paint.get(e),i=new El(new ay(r),`layers[${this.id}].paint.${r.property.name}`,r.property.specification),n=null;n=r.value.kind==="constant"||r.value.kind==="source"?new Qi("source",i):new da("composite",i,r.value.zoomStops),this.paint._values[e]=new ie(r.property,n,r.parameters);}}_handleOverridablePaintPropertyUpdate(e,r,i){return!this.layout||r.isDataDriven()||i.isDataDriven()?!1:il.hasPaintOverride(this.layout,e);}static hasPaintOverride(e,r){let i=e.get("text-field"),n=Ns.paint.properties[r],a=!1,s=o=>{for(let l of o)if(n.overrides?.hasOverride(l)){a=!0;return;}};if(i.value.kind==="constant"&&i.value.value instanceof Me)s(i.value.value.sections);else if(i.value.kind==="source"||i.value.kind==="composite"){let o=u=>{if(!a)if(u instanceof Jr&&_t(u.value)===hn){let h=u.value;s(h.sections);}else u instanceof Sp?s(u.sections):u.eachChild(o);},l=i.value;l._styleExpression&&o(l._styleExpression.expression);}return a;}};function Hb(t,e,r,i=1){let n=t.get("icon-padding").evaluate(e,{},r)?.values;return[n[0]*i,n[1]*i,n[2]*i,n[3]*i];}var Kb,Jb=()=>Kb||=new qt({"background-color":new V(D.paint_background["background-color"],"background-color"),"background-pattern":new zf(D.paint_background["background-pattern"],"background-pattern"),"background-opacity":new V(D.paint_background["background-opacity"],"background-opacity")}),Qb={get paint(){return Jb();}};var tw=class extends ce{constructor(t,e){super(t,Qb,e);}};var ew=class extends ce{constructor(t,e){super(t,{},e),this.onAdd=r=>{this.implementation.onAdd&&this.implementation.onAdd(r,r.painter.context.gl);},this.onRemove=r=>{this.implementation.onRemove&&this.implementation.onRemove(r,r.painter.context.gl);},this.implementation=t;}is3D(){return this.implementation.renderingMode==="3d";}hasOffscreenPass(){return this.implementation.prerender!==void 0;}recalculate(){}updateTransitions(){}hasTransition(){return!1;}serialize(){throw Error("Custom layers cannot be serialized");}};function sy(t,e){if(t.type==="custom")return new ew(t,e);switch(t.type){case"background":return new tw(t,e);case"circle":return new Tg(t,e);case"color-relief":return new Ug(t,e);case"fill":return new Dx(t,e);case"fill-extrusion":return new Yx(t,e);case"heatmap":return new Pg(t,e);case"hillshade":return new Og(t,e);case"line":return new U2(t,e);case"raster":return new Nm(t,e);case"symbol":return new Zb(t,e);}}var rw=class{constructor(t){this._methodToThrottle=t,this._triggered=!1,this._channel=new MessageChannel(),this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle();};}trigger(){this._triggered||(this._triggered=!0,this._channel?.port1.postMessage(!0));}remove(){delete this._channel,this._methodToThrottle=()=>{};}},iw={once:!0},oy=class{constructor(t,e){this.target=t,this.mapId=e,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new rw(()=>this.process()),this.subscription=sh(this.target,"message",r=>this.receive(r),!1),this.globalScope=cr(self)?t:window;}registerMessageHandler(t,e){this.messageHandlers[t]=e;}unregisterMessageHandler(t){delete this.messageHandlers[t];}sendAsync(t,e){return new Promise((r,i)=>{let n=Math.round(Math.random()*1e18).toString(36).substring(0,10),a=e?sh(e.signal,"abort",()=>{a?.unsubscribe(),delete this.resolveRejects[n];let l={id:n,type:"<cancel>",origin:location.origin,targetMapId:t.targetMapId,sourceMapId:this.mapId};this.target.postMessage(l),i(new hl(e.signal.reason));},iw):null;this.resolveRejects[n]={resolve:l=>{a?.unsubscribe(),r(l);},reject:l=>{a?.unsubscribe(),i(l);}};let s=[],o={...t,id:n,sourceMapId:this.mapId,origin:location.origin,data:Ui(t.data,s)};this.target.postMessage(o,{transfer:s});});}receive(t){let e=t.data,r=e.id,i=["file://","resource://android","null"],n=[e.origin,location.origin],a=e.origin===location.origin,s=n.some(o=>i.includes(o));if((a||s)&&!(e.targetMapId&&this.mapId!==e.targetMapId)){if(e.type==="<cancel>"){delete this.tasks[r];let o=this.abortControllers[r];delete this.abortControllers[r],o&&o.abort();return;}if(cr(self)||e.mustQueue){this.tasks[r]=e,this.taskQueue.push(r),this.invoker.trigger();return;}this.processTask(r,e);}}process(){if(this.taskQueue.length===0)return;let t=this.taskQueue.shift(),e=this.tasks[t];delete this.tasks[t],this.taskQueue.length>0&&this.invoker.trigger(),e&&this.processTask(t,e);}async processTask(t,e){if(e.type==="<response>"){let n=this.resolveRejects[t];if(delete this.resolveRejects[t],!n)return;e.error?n.reject(Xi(qi(e.error))):n.resolve(qi(e.data));return;}if(!this.messageHandlers[e.type]){this.completeTask(t,null,null);return;}let r=qi(e.data),i=new AbortController();this.abortControllers[t]=i;try{let n=await this.messageHandlers[e.type](e.sourceMapId,r,i);this.completeTask(t,null,n);}catch(n){this.completeTask(t,Xi(n));}}completeTask(t,e,r){let i=[];delete this.abortControllers[t];let n={id:t,type:"<response>",sourceMapId:this.mapId,origin:location.origin,error:e?Ui(e):null,data:Ui(r,i)};this.target.postMessage(n,{transfer:i});}remove(){this.invoker.remove(),this.subscription.unsubscribe();}};function nw(t,e,r){return!(t<0||t>25||r<0||r>=2**t||e<0||e>=2**t);}var ly=class{constructor(t,e,r){if(!nw(t,e,r))throw Error(`x=${e}, y=${r}, z=${t} outside of bounds. 0<=x<${2**t}, 0<=y<${2**t} 0<=z<=25 `);this.z=t,this.x=e,this.y=r,this.key=Gi(0,t,t,e,r);}equals(t){return this.z===t.z&&this.x===t.x&&this.y===t.y;}url(t,e,r){let i=sw(this.x,this.y,this.z),n=ow(this.z,this.x,this.y);return t[(this.x+this.y)%t.length].replace(/{prefix}/g,(this.x%16).toString(16)+(this.y%16).toString(16)).replace(/{z}/g,String(this.z)).replace(/{x}/g,String(this.x)).replace(/{y}/g,String(r==="tms"?2**this.z-this.y-1:this.y)).replace(/{ratio}/g,e>1?"@2x":"").replace(/{quadkey}/g,n).replace(/{bbox-epsg-3857}/g,i);}isChildOf(t){let e=this.z-t.z;return e>0&&t.x===this.x>>e&&t.y===this.y>>e;}getTilePoint(t){let e=2**this.z;return new M((t.x*e-this.x)*mt,(t.y*e-this.y)*mt);}toString(){return`${this.z}/${this.x}/${this.y}`;}},aw=class{constructor(t,e){this.wrap=t,this.canonical=e,this.key=Gi(t,e.z,e.z,e.x,e.y);}},au=class ee{constructor(e,r,i,n,a){if(this.terrainRttPosMatrix32f=null,e<i)throw Error(`overscaledZ should be >= z; overscaledZ = ${e}; z = ${i}`);this.overscaledZ=e,this.wrap=r,this.canonical=new ly(i,+n,+a),this.key=Gi(r,e,i,n,a);}clone(){return new ee(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y);}equals(e){return this.overscaledZ===e.overscaledZ&&this.wrap===e.wrap&&this.canonical.equals(e.canonical);}scaledTo(e){if(e>this.overscaledZ)throw Error(`targetZ > this.overscaledZ; targetZ = ${e}; overscaledZ = ${this.overscaledZ}`);let r=this.canonical.z-e;return e>this.canonical.z?new ee(e,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new ee(e,this.wrap,e,this.canonical.x>>r,this.canonical.y>>r);}isOverscaled(){return this.overscaledZ>this.canonical.z;}calculateScaledKey(e,r){if(e>this.overscaledZ)throw Error(`targetZ > this.overscaledZ; targetZ = ${e}; overscaledZ = ${this.overscaledZ}`);let i=this.canonical.z-e;return e>this.canonical.z?Gi(this.wrap*+r,e,this.canonical.z,this.canonical.x,this.canonical.y):Gi(this.wrap*+r,e,e,this.canonical.x>>i,this.canonical.y>>i);}isChildOf(e){if(e.wrap!==this.wrap||this.overscaledZ-e.overscaledZ<=0)return!1;if(e.overscaledZ===0)return this.overscaledZ>0;let r=this.canonical.z-e.canonical.z;return r<0?!1:e.canonical.x===this.canonical.x>>r&&e.canonical.y===this.canonical.y>>r;}children(e){if(this.overscaledZ>=e)return[new ee(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let r=this.canonical.z+1,i=this.canonical.x*2,n=this.canonical.y*2;return[new ee(r,this.wrap,r,i,n),new ee(r,this.wrap,r,i+1,n),new ee(r,this.wrap,r,i,n+1),new ee(r,this.wrap,r,i+1,n+1)];}isLessThan(e){return this.wrap<e.wrap?!0:this.wrap>e.wrap?!1:this.overscaledZ<e.overscaledZ?!0:this.overscaledZ>e.overscaledZ?!1:this.canonical.x<e.canonical.x?!0:this.canonical.x>e.canonical.x?!1:this.canonical.y<e.canonical.y;}wrapped(){return new ee(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y);}unwrapTo(e){return new ee(this.overscaledZ,e,this.canonical.z,this.canonical.x,this.canonical.y);}overscaleFactor(){return 2**(this.overscaledZ-this.canonical.z);}toUnwrapped(){return new aw(this.wrap,this.canonical);}toString(){return`${this.overscaledZ}/${this.canonical.x}/${this.canonical.y}`;}getTilePoint(e){return this.canonical.getTilePoint(new ql(e.x-this.wrap,e.y));}normalizeCoordinates(e,r,i=mt){if(e>=0&&e<i&&r>=0&&r<i)return{tileID:this,x:e,y:r};let n=Math.floor(e/i),a=Math.floor(r/i),s=e-n*i,o=r-a*i,l=this.canonical.z,u=1<<l,h=this.canonical.y+a;if(h<0||h>=u)return null;let c=this.canonical.x+n,p=this.wrap;return c<0?(p-=Math.ceil(-c/u),c=(c%u+u)%u):c>=u&&(p+=Math.floor(c/u),c%=u),{tileID:new ee(this.overscaledZ,p,l,c,h),x:s,y:o};}};function Gi(t,e,r,i,n){t*=2,t<0&&(t=t*-1-1);let a=1<<r;return(a*a*t+a*n+i).toString(36)+r.toString(36)+e.toString(36);}var Us=Math.PI*6378137;function sw(t,e,r){e=2**r-e-1;let i=Oc(t*256,e*256,r),n=Oc((t+1)*256,(e+1)*256,r);return`${i[0]},${i[1]},${n[0]},${n[1]}`;}function Oc(t,e,r){let i=2*Us/256/2**r;return[t*i-Us,e*i-Us];}function ow(t,e,r){let i="";for(let n=t;n>0;n--){let a=1<<n-1;i+=(e&a?1:0)+(r&a?2:0);}return i;}I("CanonicalTileID",ly),I("OverscaledTileID",au,{omit:["terrainRttPosMatrix32f"]});var lw=class{constructor(t,e){this.feature=t,this.type=t.type,this.properties=t.tags?t.tags:{},this.extent=e,"id"in t&&(typeof t.id=="string"?this.id=parseInt(t.id,10):typeof t.id=="number"&&!isNaN(t.id)&&(this.id=t.id));}loadGeometry(){let t=[],e=this.feature.type===1?[this.feature.geometry]:this.feature.geometry;for(let r of e){let i=[];for(let n of r)i.push(new M(n[0],n[1]));t.push(i);}return t;}},nl="_geojsonTileLayer",uy=class{constructor(t,e){this.layers={[nl]:this},this.name=nl,this.version=e?e.version:1,this.extent=e?e.extent:4096,this.length=t.length,this.features=t;}feature(t){return new lw(this.features[t],this.extent);}};function su(t,e=""){let r=new Vv();return uw(t,r,e),r.finish();}function uw(t,e,r=""){for(let i in t.layers)e.writeMessage(3,(n,a)=>hw(n,a,r),t.layers[i]);}function hw(t,e,r=""){e.writeVarintField(15,t.version||1),e.writeStringField(1,t.name||""),e.writeVarintField(5,t.extent||4096);let i={jsonPrefix:r,keys:[],values:[],keycache:{},valuecache:{}};for(let s=0;s<t.length;s++)i.feature=t.feature(s),e.writeMessage(2,cw,i);let n=i.keys;for(let s of n)e.writeStringField(3,s);let a=i.values;for(let s of a)e.writeMessage(4,dw,s);}function cw(t,e){if(!t.feature)return;let r=t.feature;r.id!==void 0&&e.writeVarintField(1,r.id),e.writeMessage(2,pw,t),e.writeVarintField(3,r.type),e.writeMessage(4,fw,r);}function pw(t,e){for(let r in t.feature?.properties){let i=t.feature.properties[r],n=t.keycache[r];if(i==null)continue;n===void 0&&(t.keys.push(r),n=t.keys.length-1,t.keycache[r]=n),e.writeVarint(n),typeof i!="string"&&typeof i!="boolean"&&typeof i!="number"&&(i=t.jsonPrefix+JSON.stringify(i));let a=typeof i+":"+i,s=t.valuecache[a];s===void 0&&(t.values.push(i),s=t.values.length-1,t.valuecache[a]=s),e.writeVarint(s);}}function qs(t,e){return(e<<3)+(t&7);}function Rc(t){return t<<1^t>>31;}function fw(t,e){let r=t.loadGeometry(),i=t.type,n=0,a=0;for(let s of r){let o=1;i===1&&(o=s.length),e.writeVarint(qs(1,o));let l=i===3?s.length-1:s.length;for(let u=0;u<l;u++){u===1&&i!==1&&e.writeVarint(qs(2,l-1));let h=s[u].x-n,c=s[u].y-a;e.writeVarint(Rc(h)),e.writeVarint(Rc(c)),n+=h,a+=c;}t.type===3&&e.writeVarint(qs(7,1));}}function dw(t,e){let r=typeof t;r==="string"?e.writeStringField(1,t):r==="boolean"?e.writeBooleanField(7,t):r==="number"&&(t%1==0?t<0?e.writeSVarintField(6,t):e.writeVarintField(5,t):e.writeDoubleField(3,t));}var ou=class{constructor(t){this._stringToNumber={},this._numberToString=[];for(let e=0;e<t.length;e++){let r=t[e];this._stringToNumber[r]=e,this._numberToString[e]=r;}}encode(t){return this._stringToNumber[t];}decode(t){if(t>=this._numberToString.length)throw Error(`Out of bounds. Index requested n=${t} can\'t be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[t];}},yw=class{constructor(t,e,r,i,n){this.type="Feature",this._vectorTileFeature=t,this._x=r,this._y=i,this._z=e;for(let a in t.properties)typeof t.properties[a]=="string"&&t.properties[a].startsWith("__$json__:")&&(t.properties[a]=JSON.parse(t.properties[a].slice(10)));this.properties=t.properties,this.id=n;}projectPoint(t,e,r,i){return[(t.x+e)*360/i-180,360/Math.PI*Math.atan(Math.exp((1-(t.y+r)*2/i)*Math.PI))-90];}projectLine(t,e,r,i){return t.map(n=>this.projectPoint(n,e,r,i));}get geometry(){if(this._geometry)return this._geometry;let t=this._vectorTileFeature,e=t.extent*2**this._z,r=t.extent*this._x,i=t.extent*this._y,n=t.loadGeometry();switch(t.type){case 1:{let a=[];for(let o of n)a.push(o[0]);let s=this.projectLine(a,r,i,e);this._geometry=a.length===1?{type:"Point",coordinates:s[0]}:{type:"MultiPoint",coordinates:s};break;}case 2:{let a=n.map(s=>this.projectLine(s,r,i,e));this._geometry=a.length===1?{type:"LineString",coordinates:a[0]}:{type:"MultiLineString",coordinates:a};break;}case 3:{let a=yd(n),s=[];for(let o of a)s.push(o.map(l=>this.projectLine(l,r,i,e)));this._geometry=s.length===1?{type:"Polygon",coordinates:s[0]}:{type:"MultiPolygon",coordinates:s};break;}default:throw Error(`unknown feature type: ${t.type}`);}return this._geometry;}set geometry(t){this._geometry=t;}toJSON(){let t={geometry:this.geometry};for(let e in this)e!=="_geometry"&&e!=="_vectorTileFeature"&&e!=="_x"&&e!=="_y"&&e!=="_z"&&(t[e]=this[e]);return t;}},br=class{constructor(t,e,r){this._name=t,this.dataBuffer=e,typeof r=="number"?this._size=r:(this.nullabilityBuffer=r,this._size=r.size());}getValue(t){return this.nullabilityBuffer&&!this.nullabilityBuffer.get(t)?null:this.getValueFromBuffer(t);}has(t){return this.nullabilityBuffer?.get(t)||!this.nullabilityBuffer;}get name(){return this._name;}get size(){return this._size;}},Ya=class extends br{},lu=class extends Ya{getValueFromBuffer(t){return this.dataBuffer[t];}},uu=class extends Ya{getValueFromBuffer(t){return this.dataBuffer[t];}},hy=class extends br{constructor(t,e,r,i){super(t,e,i),this.delta=r;}},hu=class extends hy{constructor(t,e,r,i,n){super(t,n?Int32Array.of(e):Uint32Array.of(e),r,i);}getValueFromBuffer(t){return this.dataBuffer[0]+t*this.delta;}},cu=class extends br{constructor(t,e,r,i){super(t,i?Int32Array.of(e):Uint32Array.of(e),r);}getValueFromBuffer(t){return this.dataBuffer[0];}},mw=class{constructor(t,e,r,i,n=4096){if(this._name=t,this._geometryVector=e,this._idVector=r,this._propertyVectors=i,this._extent=n,t.length===0)throw Error("Missing layer name");}get name(){return this._name;}get idVector(){return this._idVector;}get geometryVector(){return this._geometryVector;}get propertyVectors(){return this._propertyVectors??[];}getPropertyVector(t){return this.propertyVectorsMap||=new Map(this.propertyVectors.map(e=>[e.name,e])),this.propertyVectorsMap.get(t);}get numFeatures(){return this.geometryVector.numGeometries;}get extent(){return this._extent;}getFeatures(){let t=[],e=this.geometryVector.getGeometries();for(let r=0;r<this.numFeatures;r++){let i;if(this.idVector){let s=this.idVector.getValue(r);s!==null&&(i=this.containsMaxSafeIntegerValues(this.idVector)?Number(s):s);}let n={coordinates:e[r],type:this.geometryVector.geometryType(r)},a={};for(let s of this.propertyVectors){if(!s)continue;let o=s.name,l=s.getValue(r);l!==null&&(a[o]=l);}t.push({id:i,geometry:n,properties:a});}return t;}containsMaxSafeIntegerValues(t){return t instanceof lu||t instanceof cu||t instanceof hu||t instanceof uu;}},Oi={FEATURE:0,VERTEX:1},rt={BOOLEAN:0,INT_8:1,UINT_8:2,INT_32:3,UINT_32:4,INT_64:5,UINT_64:6,FLOAT:7,DOUBLE:8,STRING:9},Ze={GEOMETRY:0,STRUCT:1,MAP:2},cy={ID:0},py=class{constructor(t){this.value=t;}get(){return this.value;}set(t){this.value=t;}increment(){return this.value++;}add(t){this.value+=t;}},Z;(function(t){t.NONE="NONE",t.DELTA="DELTA",t.COMPONENTWISE_DELTA="COMPONENTWISE_DELTA",t.RLE="RLE",t.MORTON="MORTON";})(Z||={});var ae;(function(t){t.NONE="NONE",t.FAST_PFOR="FAST_PFOR",t.VARINT="VARINT";})(ae||={});var pu=new Uint32Array(33);pu[0]=0;for(let t=1;t<=32;t++)pu[t]=t===32?4294967295:4294967295>>>32-t;var al=pu,fu=65536;function du(t,e){return t-t%e;}function gw(t){return du(t+31,32);}function fy(t){if(!Number.isFinite(t)||t<=0)return fu;let e=du(Math.floor(t),256);return e===0?256:e;}function xw(t){let e=t>>>0;return((e&255)<<24|(e&65280)<<8|e>>>8&65280|e>>>24&255)>>>0;}function vw(t,e,r,i){let n=i,a=t[e]>>>0,s=t[e+1]>>>0;r[n++]=a>>>0&3,r[n++]=a>>>2&3,r[n++]=a>>>4&3,r[n++]=a>>>6&3,r[n++]=a>>>8&3,r[n++]=a>>>10&3,r[n++]=a>>>12&3,r[n++]=a>>>14&3,r[n++]=a>>>16&3,r[n++]=a>>>18&3,r[n++]=a>>>20&3,r[n++]=a>>>22&3,r[n++]=a>>>24&3,r[n++]=a>>>26&3,r[n++]=a>>>28&3,r[n++]=a>>>30&3,r[n++]=s>>>0&3,r[n++]=s>>>2&3,r[n++]=s>>>4&3,r[n++]=s>>>6&3,r[n++]=s>>>8&3,r[n++]=s>>>10&3,r[n++]=s>>>12&3,r[n++]=s>>>14&3,r[n++]=s>>>16&3,r[n++]=s>>>18&3,r[n++]=s>>>20&3,r[n++]=s>>>22&3,r[n++]=s>>>24&3,r[n++]=s>>>26&3,r[n++]=s>>>28&3,r[n]=s>>>30&3;}function bw(t,e,r,i){let n=i,a=t[e]>>>0,s=t[e+1]>>>0,o=t[e+2]>>>0;r[n++]=a>>>0&7,r[n++]=a>>>3&7,r[n++]=a>>>6&7,r[n++]=a>>>9&7,r[n++]=a>>>12&7,r[n++]=a>>>15&7,r[n++]=a>>>18&7,r[n++]=a>>>21&7,r[n++]=a>>>24&7,r[n++]=a>>>27&7,r[n++]=(a>>>30|(s&1)<<2)&7,r[n++]=s>>>1&7,r[n++]=s>>>4&7,r[n++]=s>>>7&7,r[n++]=s>>>10&7,r[n++]=s>>>13&7,r[n++]=s>>>16&7,r[n++]=s>>>19&7,r[n++]=s>>>22&7,r[n++]=s>>>25&7,r[n++]=s>>>28&7,r[n++]=(s>>>31|(o&3)<<1)&7,r[n++]=o>>>2&7,r[n++]=o>>>5&7,r[n++]=o>>>8&7,r[n++]=o>>>11&7,r[n++]=o>>>14&7,r[n++]=o>>>17&7,r[n++]=o>>>20&7,r[n++]=o>>>23&7,r[n++]=o>>>26&7,r[n]=o>>>29&7;}function ww(t,e,r,i){let n=i,a=t[e]>>>0,s=t[e+1]>>>0,o=t[e+2]>>>0,l=t[e+3]>>>0;r[n++]=a>>>0&15,r[n++]=a>>>4&15,r[n++]=a>>>8&15,r[n++]=a>>>12&15,r[n++]=a>>>16&15,r[n++]=a>>>20&15,r[n++]=a>>>24&15,r[n++]=a>>>28&15,r[n++]=s>>>0&15,r[n++]=s>>>4&15,r[n++]=s>>>8&15,r[n++]=s>>>12&15,r[n++]=s>>>16&15,r[n++]=s>>>20&15,r[n++]=s>>>24&15,r[n++]=s>>>28&15,r[n++]=o>>>0&15,r[n++]=o>>>4&15,r[n++]=o>>>8&15,r[n++]=o>>>12&15,r[n++]=o>>>16&15,r[n++]=o>>>20&15,r[n++]=o>>>24&15,r[n++]=o>>>28&15,r[n++]=l>>>0&15,r[n++]=l>>>4&15,r[n++]=l>>>8&15,r[n++]=l>>>12&15,r[n++]=l>>>16&15,r[n++]=l>>>20&15,r[n++]=l>>>24&15,r[n]=l>>>28&15;}function Dw(t,e,r,i){let n=i,a=t[e]>>>0,s=t[e+1]>>>0,o=t[e+2]>>>0,l=t[e+3]>>>0,u=t[e+4]>>>0;r[n++]=a>>>0&31,r[n++]=a>>>5&31,r[n++]=a>>>10&31,r[n++]=a>>>15&31,r[n++]=a>>>20&31,r[n++]=a>>>25&31,r[n++]=(a>>>30|(s&7)<<2)&31,r[n++]=s>>>3&31,r[n++]=s>>>8&31,r[n++]=s>>>13&31,r[n++]=s>>>18&31,r[n++]=s>>>23&31,r[n++]=(s>>>28|(o&1)<<4)&31,r[n++]=o>>>1&31,r[n++]=o>>>6&31,r[n++]=o>>>11&31,r[n++]=o>>>16&31,r[n++]=o>>>21&31,r[n++]=o>>>26&31,r[n++]=(o>>>31|(l&15)<<1)&31,r[n++]=l>>>4&31,r[n++]=l>>>9&31,r[n++]=l>>>14&31,r[n++]=l>>>19&31,r[n++]=l>>>24&31,r[n++]=(l>>>29|(u&3)<<3)&31,r[n++]=u>>>2&31,r[n++]=u>>>7&31,r[n++]=u>>>12&31,r[n++]=u>>>17&31,r[n++]=u>>>22&31,r[n]=u>>>27&31;}function _w(t,e,r,i){let n=i,a=t[e]>>>0,s=t[e+1]>>>0,o=t[e+2]>>>0,l=t[e+3]>>>0,u=t[e+4]>>>0,h=t[e+5]>>>0;r[n++]=a>>>0&63,r[n++]=a>>>6&63,r[n++]=a>>>12&63,r[n++]=a>>>18&63,r[n++]=a>>>24&63,r[n++]=(a>>>30|(s&15)<<2)&63,r[n++]=s>>>4&63,r[n++]=s>>>10&63,r[n++]=s>>>16&63,r[n++]=s>>>22&63,r[n++]=(s>>>28|(o&3)<<4)&63,r[n++]=o>>>2&63,r[n++]=o>>>8&63,r[n++]=o>>>14&63,r[n++]=o>>>20&63,r[n++]=o>>>26&63,r[n++]=l>>>0&63,r[n++]=l>>>6&63,r[n++]=l>>>12&63,r[n++]=l>>>18&63,r[n++]=l>>>24&63,r[n++]=(l>>>30|(u&15)<<2)&63,r[n++]=u>>>4&63,r[n++]=u>>>10&63,r[n++]=u>>>16&63,r[n++]=u>>>22&63,r[n++]=(u>>>28|(h&3)<<4)&63,r[n++]=h>>>2&63,r[n++]=h>>>8&63,r[n++]=h>>>14&63,r[n++]=h>>>20&63,r[n]=h>>>26&63;}function Aw(t,e,r,i){let n=i,a=t[e]>>>0,s=t[e+1]>>>0,o=t[e+2]>>>0,l=t[e+3]>>>0,u=t[e+4]>>>0,h=t[e+5]>>>0,c=t[e+6]>>>0;r[n++]=a>>>0&127,r[n++]=a>>>7&127,r[n++]=a>>>14&127,r[n++]=a>>>21&127,r[n++]=(a>>>28|(s&7)<<4)&127,r[n++]=s>>>3&127,r[n++]=s>>>10&127,r[n++]=s>>>17&127,r[n++]=s>>>24&127,r[n++]=(s>>>31|(o&63)<<1)&127,r[n++]=o>>>6&127,r[n++]=o>>>13&127,r[n++]=o>>>20&127,r[n++]=(o>>>27|(l&3)<<5)&127,r[n++]=l>>>2&127,r[n++]=l>>>9&127,r[n++]=l>>>16&127,r[n++]=l>>>23&127,r[n++]=(l>>>30|(u&31)<<2)&127,r[n++]=u>>>5&127,r[n++]=u>>>12&127,r[n++]=u>>>19&127,r[n++]=(u>>>26|(h&1)<<6)&127,r[n++]=h>>>1&127,r[n++]=h>>>8&127,r[n++]=h>>>15&127,r[n++]=h>>>22&127,r[n++]=(h>>>29|(c&15)<<3)&127,r[n++]=c>>>4&127,r[n++]=c>>>11&127,r[n++]=c>>>18&127,r[n]=c>>>25&127;}function Sw(t,e,r,i){let n=i,a=t[e]>>>0,s=t[e+1]>>>0,o=t[e+2]>>>0,l=t[e+3]>>>0,u=t[e+4]>>>0,h=t[e+5]>>>0,c=t[e+6]>>>0,p=t[e+7]>>>0;r[n++]=a>>>0&255,r[n++]=a>>>8&255,r[n++]=a>>>16&255,r[n++]=a>>>24&255,r[n++]=s>>>0&255,r[n++]=s>>>8&255,r[n++]=s>>>16&255,r[n++]=s>>>24&255,r[n++]=o>>>0&255,r[n++]=o>>>8&255,r[n++]=o>>>16&255,r[n++]=o>>>24&255,r[n++]=l>>>0&255,r[n++]=l>>>8&255,r[n++]=l>>>16&255,r[n++]=l>>>24&255,r[n++]=u>>>0&255,r[n++]=u>>>8&255,r[n++]=u>>>16&255,r[n++]=u>>>24&255,r[n++]=h>>>0&255,r[n++]=h>>>8&255,r[n++]=h>>>16&255,r[n++]=h>>>24&255,r[n++]=c>>>0&255,r[n++]=c>>>8&255,r[n++]=c>>>16&255,r[n++]=c>>>24&255,r[n++]=p>>>0&255,r[n++]=p>>>8&255,r[n++]=p>>>16&255,r[n]=p>>>24&255;}function Ew(t,e,r,i){let n=i,a=t[e]>>>0,s=t[e+1]>>>0,o=t[e+2]>>>0,l=t[e+3]>>>0,u=t[e+4]>>>0,h=t[e+5]>>>0,c=t[e+6]>>>0,p=t[e+7]>>>0,f=t[e+8]>>>0;r[n++]=a>>>0&511,r[n++]=a>>>9&511,r[n++]=a>>>18&511,r[n++]=(a>>>27|(s&15)<<5)&511,r[n++]=s>>>4&511,r[n++]=s>>>13&511,r[n++]=s>>>22&511,r[n++]=(s>>>31|(o&255)<<1)&511,r[n++]=o>>>8&511,r[n++]=o>>>17&511,r[n++]=(o>>>26|(l&7)<<6)&511,r[n++]=l>>>3&511,r[n++]=l>>>12&511,r[n++]=l>>>21&511,r[n++]=(l>>>30|(u&127)<<2)&511,r[n++]=u>>>7&511,r[n++]=u>>>16&511,r[n++]=(u>>>25|(h&3)<<7)&511,r[n++]=h>>>2&511,r[n++]=h>>>11&511,r[n++]=h>>>20&511,r[n++]=(h>>>29|(c&63)<<3)&511,r[n++]=c>>>6&511,r[n++]=c>>>15&511,r[n++]=(c>>>24|(p&1)<<8)&511,r[n++]=p>>>1&511,r[n++]=p>>>10&511,r[n++]=p>>>19&511,r[n++]=(p>>>28|(f&31)<<4)&511,r[n++]=f>>>5&511,r[n++]=f>>>14&511,r[n]=f>>>23&511;}function Fw(t,e,r,i){let n=i,a=t[e]>>>0,s=t[e+1]>>>0,o=t[e+2]>>>0,l=t[e+3]>>>0,u=t[e+4]>>>0,h=t[e+5]>>>0,c=t[e+6]>>>0,p=t[e+7]>>>0,f=t[e+8]>>>0,d=t[e+9]>>>0;r[n++]=a>>>0&1023,r[n++]=a>>>10&1023,r[n++]=a>>>20&1023,r[n++]=(a>>>30|(s&255)<<2)&1023,r[n++]=s>>>8&1023,r[n++]=s>>>18&1023,r[n++]=(s>>>28|(o&63)<<4)&1023,r[n++]=o>>>6&1023,r[n++]=o>>>16&1023,r[n++]=(o>>>26|(l&15)<<6)&1023,r[n++]=l>>>4&1023,r[n++]=l>>>14&1023,r[n++]=(l>>>24|(u&3)<<8)&1023,r[n++]=u>>>2&1023,r[n++]=u>>>12&1023,r[n++]=u>>>22&1023,r[n++]=h>>>0&1023,r[n++]=h>>>10&1023,r[n++]=h>>>20&1023,r[n++]=(h>>>30|(c&255)<<2)&1023,r[n++]=c>>>8&1023,r[n++]=c>>>18&1023,r[n++]=(c>>>28|(p&63)<<4)&1023,r[n++]=p>>>6&1023,r[n++]=p>>>16&1023,r[n++]=(p>>>26|(f&15)<<6)&1023,r[n++]=f>>>4&1023,r[n++]=f>>>14&1023,r[n++]=(f>>>24|(d&3)<<8)&1023,r[n++]=d>>>2&1023,r[n++]=d>>>12&1023,r[n]=d>>>22&1023;}function Tw(t,e,r,i){let n=i,a=t[e]>>>0,s=t[e+1]>>>0,o=t[e+2]>>>0,l=t[e+3]>>>0,u=t[e+4]>>>0,h=t[e+5]>>>0,c=t[e+6]>>>0,p=t[e+7]>>>0,f=t[e+8]>>>0,d=t[e+9]>>>0,y=t[e+10]>>>0;r[n++]=a>>>0&2047,r[n++]=a>>>11&2047,r[n++]=(a>>>22|(s&1)<<10)&2047,r[n++]=s>>>1&2047,r[n++]=s>>>12&2047,r[n++]=(s>>>23|(o&3)<<9)&2047,r[n++]=o>>>2&2047,r[n++]=o>>>13&2047,r[n++]=(o>>>24|(l&7)<<8)&2047,r[n++]=l>>>3&2047,r[n++]=l>>>14&2047,r[n++]=(l>>>25|(u&15)<<7)&2047,r[n++]=u>>>4&2047,r[n++]=u>>>15&2047,r[n++]=(u>>>26|(h&31)<<6)&2047,r[n++]=h>>>5&2047,r[n++]=h>>>16&2047,r[n++]=(h>>>27|(c&63)<<5)&2047,r[n++]=c>>>6&2047,r[n++]=c>>>17&2047,r[n++]=(c>>>28|(p&127)<<4)&2047,r[n++]=p>>>7&2047,r[n++]=p>>>18&2047,r[n++]=(p>>>29|(f&255)<<3)&2047,r[n++]=f>>>8&2047,r[n++]=f>>>19&2047,r[n++]=(f>>>30|(d&511)<<2)&2047,r[n++]=d>>>9&2047,r[n++]=d>>>20&2047,r[n++]=(d>>>31|(y&1023)<<1)&2047,r[n++]=y>>>10&2047,r[n]=y>>>21&2047;}function kw(t,e,r,i){let n=i,a=t[e]>>>0,s=t[e+1]>>>0,o=t[e+2]>>>0,l=t[e+3]>>>0,u=t[e+4]>>>0,h=t[e+5]>>>0,c=t[e+6]>>>0,p=t[e+7]>>>0,f=t[e+8]>>>0,d=t[e+9]>>>0,y=t[e+10]>>>0,m=t[e+11]>>>0;r[n++]=a>>>0&4095,r[n++]=a>>>12&4095,r[n++]=(a>>>24|(s&15)<<8)&4095,r[n++]=s>>>4&4095,r[n++]=s>>>16&4095,r[n++]=(s>>>28|(o&255)<<4)&4095,r[n++]=o>>>8&4095,r[n++]=o>>>20&4095,r[n++]=l>>>0&4095,r[n++]=l>>>12&4095,r[n++]=(l>>>24|(u&15)<<8)&4095,r[n++]=u>>>4&4095,r[n++]=u>>>16&4095,r[n++]=(u>>>28|(h&255)<<4)&4095,r[n++]=h>>>8&4095,r[n++]=h>>>20&4095,r[n++]=c>>>0&4095,r[n++]=c>>>12&4095,r[n++]=(c>>>24|(p&15)<<8)&4095,r[n++]=p>>>4&4095,r[n++]=p>>>16&4095,r[n++]=(p>>>28|(f&255)<<4)&4095,r[n++]=f>>>8&4095,r[n++]=f>>>20&4095,r[n++]=d>>>0&4095,r[n++]=d>>>12&4095,r[n++]=(d>>>24|(y&15)<<8)&4095,r[n++]=y>>>4&4095,r[n++]=y>>>16&4095,r[n++]=(y>>>28|(m&255)<<4)&4095,r[n++]=m>>>8&4095,r[n]=m>>>20&4095;}function Iw(t,e,r,i){let n=i,a=t[e]>>>0,s=t[e+1]>>>0,o=t[e+2]>>>0,l=t[e+3]>>>0,u=t[e+4]>>>0,h=t[e+5]>>>0,c=t[e+6]>>>0,p=t[e+7]>>>0,f=t[e+8]>>>0,d=t[e+9]>>>0,y=t[e+10]>>>0,m=t[e+11]>>>0,g=t[e+12]>>>0,x=t[e+13]>>>0,b=t[e+14]>>>0,v=t[e+15]>>>0;r[n++]=a>>>0&65535,r[n++]=a>>>16&65535,r[n++]=s>>>0&65535,r[n++]=s>>>16&65535,r[n++]=o>>>0&65535,r[n++]=o>>>16&65535,r[n++]=l>>>0&65535,r[n++]=l>>>16&65535,r[n++]=u>>>0&65535,r[n++]=u>>>16&65535,r[n++]=h>>>0&65535,r[n++]=h>>>16&65535,r[n++]=c>>>0&65535,r[n++]=c>>>16&65535,r[n++]=p>>>0&65535,r[n++]=p>>>16&65535,r[n++]=f>>>0&65535,r[n++]=f>>>16&65535,r[n++]=d>>>0&65535,r[n++]=d>>>16&65535,r[n++]=y>>>0&65535,r[n++]=y>>>16&65535,r[n++]=m>>>0&65535,r[n++]=m>>>16&65535,r[n++]=g>>>0&65535,r[n++]=g>>>16&65535,r[n++]=x>>>0&65535,r[n++]=x>>>16&65535,r[n++]=b>>>0&65535,r[n++]=b>>>16&65535,r[n++]=v>>>0&65535,r[n]=v>>>16&65535;}function Cw(t,e,r,i){let n=i,a=e;for(let s=0;s<8;s++){let o=t[a++]>>>0;r[n++]=o>>>0&1,r[n++]=o>>>1&1,r[n++]=o>>>2&1,r[n++]=o>>>3&1,r[n++]=o>>>4&1,r[n++]=o>>>5&1,r[n++]=o>>>6&1,r[n++]=o>>>7&1,r[n++]=o>>>8&1,r[n++]=o>>>9&1,r[n++]=o>>>10&1,r[n++]=o>>>11&1,r[n++]=o>>>12&1,r[n++]=o>>>13&1,r[n++]=o>>>14&1,r[n++]=o>>>15&1,r[n++]=o>>>16&1,r[n++]=o>>>17&1,r[n++]=o>>>18&1,r[n++]=o>>>19&1,r[n++]=o>>>20&1,r[n++]=o>>>21&1,r[n++]=o>>>22&1,r[n++]=o>>>23&1,r[n++]=o>>>24&1,r[n++]=o>>>25&1,r[n++]=o>>>26&1,r[n++]=o>>>27&1,r[n++]=o>>>28&1,r[n++]=o>>>29&1,r[n++]=o>>>30&1,r[n++]=o>>>31&1;}}function Mw(t,e,r,i){let n=i,a=e;for(let s=0;s<8;s++){let o=t[a++]>>>0,l=t[a++]>>>0;r[n++]=o>>>0&3,r[n++]=o>>>2&3,r[n++]=o>>>4&3,r[n++]=o>>>6&3,r[n++]=o>>>8&3,r[n++]=o>>>10&3,r[n++]=o>>>12&3,r[n++]=o>>>14&3,r[n++]=o>>>16&3,r[n++]=o>>>18&3,r[n++]=o>>>20&3,r[n++]=o>>>22&3,r[n++]=o>>>24&3,r[n++]=o>>>26&3,r[n++]=o>>>28&3,r[n++]=o>>>30&3,r[n++]=l>>>0&3,r[n++]=l>>>2&3,r[n++]=l>>>4&3,r[n++]=l>>>6&3,r[n++]=l>>>8&3,r[n++]=l>>>10&3,r[n++]=l>>>12&3,r[n++]=l>>>14&3,r[n++]=l>>>16&3,r[n++]=l>>>18&3,r[n++]=l>>>20&3,r[n++]=l>>>22&3,r[n++]=l>>>24&3,r[n++]=l>>>26&3,r[n++]=l>>>28&3,r[n++]=l>>>30&3;}}function Bw(t,e,r,i){let n=i,a=e;for(let s=0;s<8;s++){let o=t[a++]>>>0,l=t[a++]>>>0,u=t[a++]>>>0;r[n++]=o>>>0&7,r[n++]=o>>>3&7,r[n++]=o>>>6&7,r[n++]=o>>>9&7,r[n++]=o>>>12&7,r[n++]=o>>>15&7,r[n++]=o>>>18&7,r[n++]=o>>>21&7,r[n++]=o>>>24&7,r[n++]=o>>>27&7,r[n++]=(o>>>30|(l&1)<<2)&7,r[n++]=l>>>1&7,r[n++]=l>>>4&7,r[n++]=l>>>7&7,r[n++]=l>>>10&7,r[n++]=l>>>13&7,r[n++]=l>>>16&7,r[n++]=l>>>19&7,r[n++]=l>>>22&7,r[n++]=l>>>25&7,r[n++]=l>>>28&7,r[n++]=(l>>>31|(u&3)<<1)&7,r[n++]=u>>>2&7,r[n++]=u>>>5&7,r[n++]=u>>>8&7,r[n++]=u>>>11&7,r[n++]=u>>>14&7,r[n++]=u>>>17&7,r[n++]=u>>>20&7,r[n++]=u>>>23&7,r[n++]=u>>>26&7,r[n++]=u>>>29&7;}}function Pw(t,e,r,i){let n=i,a=e;for(let s=0;s<8;s++){let o=t[a++]>>>0,l=t[a++]>>>0,u=t[a++]>>>0,h=t[a++]>>>0;r[n++]=o>>>0&15,r[n++]=o>>>4&15,r[n++]=o>>>8&15,r[n++]=o>>>12&15,r[n++]=o>>>16&15,r[n++]=o>>>20&15,r[n++]=o>>>24&15,r[n++]=o>>>28&15,r[n++]=l>>>0&15,r[n++]=l>>>4&15,r[n++]=l>>>8&15,r[n++]=l>>>12&15,r[n++]=l>>>16&15,r[n++]=l>>>20&15,r[n++]=l>>>24&15,r[n++]=l>>>28&15,r[n++]=u>>>0&15,r[n++]=u>>>4&15,r[n++]=u>>>8&15,r[n++]=u>>>12&15,r[n++]=u>>>16&15,r[n++]=u>>>20&15,r[n++]=u>>>24&15,r[n++]=u>>>28&15,r[n++]=h>>>0&15,r[n++]=h>>>4&15,r[n++]=h>>>8&15,r[n++]=h>>>12&15,r[n++]=h>>>16&15,r[n++]=h>>>20&15,r[n++]=h>>>24&15,r[n++]=h>>>28&15;}}function zw(t,e,r,i){let n=i,a=e;for(let s=0;s<8;s++){let o=t[a++]>>>0,l=t[a++]>>>0,u=t[a++]>>>0,h=t[a++]>>>0,c=t[a++]>>>0;r[n++]=o>>>0&31,r[n++]=o>>>5&31,r[n++]=o>>>10&31,r[n++]=o>>>15&31,r[n++]=o>>>20&31,r[n++]=o>>>25&31,r[n++]=(o>>>30|(l&7)<<2)&31,r[n++]=l>>>3&31,r[n++]=l>>>8&31,r[n++]=l>>>13&31,r[n++]=l>>>18&31,r[n++]=l>>>23&31,r[n++]=(l>>>28|(u&1)<<4)&31,r[n++]=u>>>1&31,r[n++]=u>>>6&31,r[n++]=u>>>11&31,r[n++]=u>>>16&31,r[n++]=u>>>21&31,r[n++]=u>>>26&31,r[n++]=(u>>>31|(h&15)<<1)&31,r[n++]=h>>>4&31,r[n++]=h>>>9&31,r[n++]=h>>>14&31,r[n++]=h>>>19&31,r[n++]=h>>>24&31,r[n++]=(h>>>29|(c&3)<<3)&31,r[n++]=c>>>2&31,r[n++]=c>>>7&31,r[n++]=c>>>12&31,r[n++]=c>>>17&31,r[n++]=c>>>22&31,r[n++]=c>>>27&31;}}function Lw(t,e,r,i){let n=i,a=e;for(let s=0;s<8;s++){let o=t[a++]>>>0,l=t[a++]>>>0,u=t[a++]>>>0,h=t[a++]>>>0,c=t[a++]>>>0,p=t[a++]>>>0;r[n++]=o>>>0&63,r[n++]=o>>>6&63,r[n++]=o>>>12&63,r[n++]=o>>>18&63,r[n++]=o>>>24&63,r[n++]=(o>>>30|(l&15)<<2)&63,r[n++]=l>>>4&63,r[n++]=l>>>10&63,r[n++]=l>>>16&63,r[n++]=l>>>22&63,r[n++]=(l>>>28|(u&3)<<4)&63,r[n++]=u>>>2&63,r[n++]=u>>>8&63,r[n++]=u>>>14&63,r[n++]=u>>>20&63,r[n++]=u>>>26&63,r[n++]=h>>>0&63,r[n++]=h>>>6&63,r[n++]=h>>>12&63,r[n++]=h>>>18&63,r[n++]=h>>>24&63,r[n++]=(h>>>30|(c&15)<<2)&63,r[n++]=c>>>4&63,r[n++]=c>>>10&63,r[n++]=c>>>16&63,r[n++]=c>>>22&63,r[n++]=(c>>>28|(p&3)<<4)&63,r[n++]=p>>>2&63,r[n++]=p>>>8&63,r[n++]=p>>>14&63,r[n++]=p>>>20&63,r[n++]=p>>>26&63;}}function Vw(t,e,r,i){let n=i,a=e;for(let s=0;s<8;s++){let o=t[a++]>>>0,l=t[a++]>>>0,u=t[a++]>>>0,h=t[a++]>>>0,c=t[a++]>>>0,p=t[a++]>>>0,f=t[a++]>>>0;r[n++]=o>>>0&127,r[n++]=o>>>7&127,r[n++]=o>>>14&127,r[n++]=o>>>21&127,r[n++]=(o>>>28|(l&7)<<4)&127,r[n++]=l>>>3&127,r[n++]=l>>>10&127,r[n++]=l>>>17&127,r[n++]=l>>>24&127,r[n++]=(l>>>31|(u&63)<<1)&127,r[n++]=u>>>6&127,r[n++]=u>>>13&127,r[n++]=u>>>20&127,r[n++]=(u>>>27|(h&3)<<5)&127,r[n++]=h>>>2&127,r[n++]=h>>>9&127,r[n++]=h>>>16&127,r[n++]=h>>>23&127,r[n++]=(h>>>30|(c&31)<<2)&127,r[n++]=c>>>5&127,r[n++]=c>>>12&127,r[n++]=c>>>19&127,r[n++]=(c>>>26|(p&1)<<6)&127,r[n++]=p>>>1&127,r[n++]=p>>>8&127,r[n++]=p>>>15&127,r[n++]=p>>>22&127,r[n++]=(p>>>29|(f&15)<<3)&127,r[n++]=f>>>4&127,r[n++]=f>>>11&127,r[n++]=f>>>18&127,r[n++]=f>>>25&127;}}function Ow(t,e,r,i){let n=i,a=e;for(let s=0;s<8;s++){let o=t[a++]>>>0,l=t[a++]>>>0,u=t[a++]>>>0,h=t[a++]>>>0,c=t[a++]>>>0,p=t[a++]>>>0,f=t[a++]>>>0,d=t[a++]>>>0;r[n++]=o>>>0&255,r[n++]=o>>>8&255,r[n++]=o>>>16&255,r[n++]=o>>>24&255,r[n++]=l>>>0&255,r[n++]=l>>>8&255,r[n++]=l>>>16&255,r[n++]=l>>>24&255,r[n++]=u>>>0&255,r[n++]=u>>>8&255,r[n++]=u>>>16&255,r[n++]=u>>>24&255,r[n++]=h>>>0&255,r[n++]=h>>>8&255,r[n++]=h>>>16&255,r[n++]=h>>>24&255,r[n++]=c>>>0&255,r[n++]=c>>>8&255,r[n++]=c>>>16&255,r[n++]=c>>>24&255,r[n++]=p>>>0&255,r[n++]=p>>>8&255,r[n++]=p>>>16&255,r[n++]=p>>>24&255,r[n++]=f>>>0&255,r[n++]=f>>>8&255,r[n++]=f>>>16&255,r[n++]=f>>>24&255,r[n++]=d>>>0&255,r[n++]=d>>>8&255,r[n++]=d>>>16&255,r[n++]=d>>>24&255;}}function Rw(t,e,r,i){let n=i,a=e;for(let s=0;s<128;s++){let o=t[a++]>>>0;r[n++]=o&65535,r[n++]=o>>>16&65535;}}function $w(t,e,r,i,n){let a=al[n]>>>0,s=e,o=0,l=t[s]>>>0,u=i;for(let h=0;h<8;h++){for(let c=0;c<32;c++)if(o+n<=32){let p=l>>>o&a;r[u+c]=p|0,o+=n,o===32&&(o=0,s++,c!==31&&(l=t[s]>>>0));}else{let p=32-o,f=l>>>o;s++,l=t[s]>>>0;let d=n-p,y=-1>>>32-d>>>0,m=(f|(l&y)<<p)&a;r[u+c]=m|0,o=d;}u+=32,o=0,h<7&&(l=t[s]>>>0);}}var sl=fy(fu),Nw=3*sl/256+sl|0;function dy(){let t=new Uint8Array(Nw);return{dataToBePacked:Array(33),dataPointers:new Int32Array(33),byteContainer:t,byteContainerI32:new Int32Array(t.buffer,t.byteOffset,t.byteLength>>>2),exceptionSizes:new Int32Array(33)};}function Uw(t=16){if(t<0)throw RangeError(`initialEncodedWordCapacity must be >= 0, got ${t}`);let e=Math.max(16,t|0);return{encodedWords:new Uint32Array(e),decoderWorkspace:dy()};}function qw(t,e){if(e<=t.encodedWords.length)return t.encodedWords;let r=new Uint32Array(Math.max(16,e*2));return t.encodedWords=r,r;}function jw(t,e,r,i){i.byteContainer.length<r&&(i.byteContainer=new Uint8Array(r*2),i.byteContainerI32=void 0);let n=i.byteContainer,a=r>>>2;if(n.byteOffset&3)for(let o=0;o<a;o=o+1|0){let l=t[e+o|0]|0,u=o<<2;n[u]=l&255,n[u+1|0]=l>>>8&255,n[u+2|0]=l>>>16&255,n[u+3|0]=l>>>24&255;}else{let o=i.byteContainerI32;(!o||o.buffer!==n.buffer||o.byteOffset!==n.byteOffset||o.length<a)&&(o=i.byteContainerI32=new Int32Array(n.buffer,n.byteOffset,n.byteLength>>>2)),o.set(t.subarray(e,e+a));}let s=r&3;if(s>0){let o=t[e+a|0]|0,l=a<<2;for(let u=0;u<s;u=u+1|0)n[l+u|0]=o>>>(u<<3)&255;}return n;}function Gw(t,e,r){let i=t[e++]|0,n=r.dataToBePacked;for(let a=2;a<=32;a=a+1|0){if(!(i>>>a-1&1))continue;if(e>=t.length)throw Error(`FastPFOR decode: truncated exception stream header (bitWidth=${a}, streamWordIndex=${e}, needWords=1, availableWords=${t.length-e}, encodedWords=${t.length})`);let s=t[e++]>>>0,o=gw(s),l=s*a+31>>>5;if(e+l>t.length)throw Error(`FastPFOR decode: truncated exception stream (bitWidth=${a}, size=${s}, streamWordIndex=${e}, needWords=${l}, availableWords=${t.length-e}, encodedWords=${t.length})`);let u=n[a];(!u||u.length<o)&&(u=n[a]=new Uint32Array(o));let h=0;for(;h<s;h=h+32|0)e3(t,e,u,h,a),e=e+a|0;let c=h-s|0;e=e-(c*a>>>5)|0,r.exceptionSizes[a]=s;}return e;}function Xw(t,e,r,i,n){switch(n){case 1:Cw(t,e,r,i);break;case 2:Mw(t,e,r,i);break;case 3:Bw(t,e,r,i);break;case 4:Pw(t,e,r,i);break;case 5:zw(t,e,r,i);break;case 6:Lw(t,e,r,i);break;case 7:Vw(t,e,r,i);break;case 8:Ow(t,e,r,i);break;case 16:Rw(t,e,r,i);break;default:$w(t,e,r,i,n);}return e+(n<<3)|0;}function Yw(t,e,r,i){if(r+2>e)throw Error(`FastPFOR decode: byteContainer underflow at block=${i} (need 2 bytes for [bitWidth, exceptionCount], bytePos=${r}, byteSize=${e})`);let n=t[r++],a=t[r++];if(n>32)throw Error(`FastPFOR decode: invalid bitWidth=${n} at block=${i} (expected 0..32). This likely indicates corrupted or truncated input.`);return{bitWidth:n,exceptionCount:a,bytePosIn:r};}function Ww(t,e,r,i,n,a){if(r+1>e)throw Error(`FastPFOR decode: exception header underflow at block=${a} (need 1 byte for maxBits, bytePos=${r}, byteSize=${e})`);let s=t[r++];if(s<i||s>32)throw Error(`FastPFOR decode: invalid maxBits=${s} at block=${a} (bitWidth=${i}, expected ${i}..32)`);let o=s-i|0;if(o<1||o>32)throw Error(`FastPFOR decode: invalid exceptionBitWidth=${o} at block=${a} (bitWidth=${i}, maxBits=${s})`);if(r+n>e)throw Error(`FastPFOR decode: exception positions underflow at block=${a} (need=${n}, have=${e-r})`);return{maxBits:s,exceptionBitWidth:o,bytePosIn:r};}function Zw(t,e,r,i,n,a,s,o,l){let{maxBits:u,exceptionBitWidth:h,bytePosIn:c}=Ww(n,a,s,r,i,l);if(s=c,h===1){let m=1<<r;for(let g=0;g<i;g=g+1|0){let x=n[s++];t[x+e|0]|=m;}return s;}let p=o.dataToBePacked[h];if(!p)throw Error(`FastPFOR decode: missing exception stream for exceptionBitWidth=${h} (bitWidth=${r}, maxBits=${u}) at block ${l}`);let f=o.dataPointers,d=f[h]|0,y=o.exceptionSizes[h]|0;if(d+i>y)throw Error(`FastPFOR decode: exception stream overflow for exceptionBitWidth=${h} (ptr=${d}, need ${i}, size=${y}) at block ${l}`);for(let m=0;m<i;m=m+1|0){let g=n[s++],x=p[d++]|0;t[g+e|0]|=x<<r;}return f[h]=d,s;}function Hw(t,e,r,i,n,a,s,o,l,u){let h=r|0,c=0;for(let p=0;p<s;p=p+1|0){let f=Yw(o,l,c,p);c=f.bytePosIn;let d=f.bitWidth,y=f.exceptionCount,m=a+p*256|0;switch(d){case 0:n.fill(0,m,m+256);break;case 32:for(let g=0;g<256;g=g+1|0)n[m+g|0]=t[h+g|0]|0;h=h+256|0;break;default:h=Xw(t,h,n,m,d);}y>0&&(c=Zw(n,m,d,y,o,l,c,u,p));}if(h!==i)throw Error(`FastPFOR decode: packed region mismatch (pageStart=${e}, packedStart=${r}, consumedPackedEnd=${h}, expectedPackedEnd=${i}, packedWords=${i-r}, encoded.length=${t.length})`);}function Kw(t,e,r,i,n,a){let s=r|0,o=t[s]|0;if(o<=0||s+o>t.length-1)throw Error(`FastPFOR decode: invalid whereMeta=${o} at pageStart=${s} (expected > 0 and pageStart+whereMeta < encoded.length=${t.length})`);let l=s+1|0,u=s+o|0,h=t[u]>>>0,c=h+3>>>2,p=u+1,f=p+c;if(f>=t.length)throw Error(`FastPFOR decode: invalid byteSize=${h} (metaInts=${c}, pageStart=${s}, packedEnd=${u}, byteContainerStart=${p}) causes bitmapPos=${f} out of bounds (encoded.length=${t.length})`);let d=jw(t,p,h,a),y=h,m=Gw(t,f,a);return a.dataPointers.fill(0),Hw(t,s,l,u,e,i|0,n/256|0,d,y,a),m;}function Jw(t,e,r,i,n,a){let s=i+du(n,256),o=i,l=r;for(;o!==s;){let u=Math.min(sl,s-o);l=Kw(t,e,l,o,u,a),o=o+u|0;}return l;}function Qw(t,e,r,i,n,a){if(a===0)return e;let s=0,o=e,l=e+r,u=n,h=n,c=n+a,p=0,f=0;for(;o<l&&h<c;){let d=t[o]>>>s&255;if(s+=8,o+=s>>>5,s&=31,p|=(d&127)<<f,d&128)i[h++]=p|0,p=0,f=0;else if(f+=7,f>28)throw Error(`FastPFOR VByte: unterminated value (expected MSB=1 terminator within 5 bytes; shift=${f}, partial=${p}, decoded=${h-u}/${a}, inPos=${o}, inEnd=${l})`);}if(h!==c)throw Error(`FastPFOR VByte: truncated stream (decoded=${h-u}, expected=${a}, consumedWords=${o-e}/${r}, vbyteStart=${e}, vbyteEnd=${l})`);return o;}function t3(t,e,r){let i=0,n=0,a=new Uint32Array(e),s=r??dy();if(t.length>0){let u=t[i]|0;if(i=i+1|0,u&255)throw Error(`FastPFOR decode: invalid alignedLength=${u} (expected multiple of 256)`);if(n+u>a.length)throw Error(`FastPFOR decode: output buffer too small (outPos=${n}, alignedLength=${u}, out.length=${a.length})`);i=Jw(t,a,i,n,u,s),n=n+u|0;}let o=t.length-i|0,l=e-n|0;return Qw(t,i,o,a,n,l),a;}function e3(t,e,r,i,n){switch(n){case 2:vw(t,e,r,i);return;case 3:bw(t,e,r,i);return;case 4:ww(t,e,r,i);return;case 5:Dw(t,e,r,i);return;case 6:_w(t,e,r,i);return;case 7:Aw(t,e,r,i);return;case 8:Sw(t,e,r,i);return;case 9:Ew(t,e,r,i);return;case 10:Fw(t,e,r,i);return;case 11:Tw(t,e,r,i);return;case 12:kw(t,e,r,i);return;case 16:Iw(t,e,r,i);return;case 32:for(let u=0;u<32;u=u+1|0)r[i+u|0]=t[e+u|0]|0;return;}let a=al[n]>>>0,s=e,o=0,l=t[s]>>>0;for(let u=0;u<32;u++)if(o+n<=32){let h=l>>>o&a;r[i+u]=h|0,o+=n,o===32&&(o=0,s++,u!==31&&(l=t[s]>>>0));}else{let h=32-o,c=l>>>o;s++,l=t[s]>>>0;let p=al[n-h]>>>0,f=(c|(l&p)<<h)&a;r[i+u]=f|0,o=n-h;}}function r3(t,e,r,i){if(e<0||r<0||e+r>t.length)throw RangeError(`decodeBigEndianInt32sInto: out of bounds (offset=${e}, byteLength=${r}, bytes.length=${t.length})`);let n=Math.floor(r/4),a=r%4!=0,s=a?n+1:n;if(i.length<s)throw RangeError(`decodeBigEndianInt32sInto: out.length=${i.length} < ${s}`);if(n>0){let o=t.byteOffset+e;if(o&3)for(let l=0;l<n;l++){let u=e+l*4;i[l]=t[u]<<24|t[u+1]<<16|t[u+2]<<8|t[u+3]|0;}else{let l=new Uint32Array(t.buffer,o,n);for(let u=0;u<n;u++)i[u]=xw(l[u])|0;}}if(a){let o=e+n*4,l=r-n*4,u=0;for(let h=0;h<l;h++)u|=t[o+h]<<24-h*8;i[n]=u|0;}return s;}function Ot(t,e,r){let i=new Uint32Array(r),n=0,a=e.get();for(let s=0;s<i.length;s++){let o=t[a++],l=o&127;if(o<128){i[n++]=l;continue;}if(o=t[a++],l|=(o&127)<<7,o<128){i[n++]=l;continue;}if(o=t[a++],l|=(o&127)<<14,o<128){i[n++]=l;continue;}if(o=t[a++],l|=(o&127)<<21,o<128){i[n++]=l;continue;}o=t[a++],l|=(o&15)<<28,i[n++]=l;}return e.set(a),i;}function yu(t,e,r){let i=new BigUint64Array(r);for(let n=0;n<i.length;n++)i[n]=i3(t,e);return i;}function i3(t,e){let r=0n,i=0,n=e.get();for(;n<t.length;){let a=t[n++];if(r|=BigInt(a&127)<<BigInt(i),!(a&128))break;if(i+=7,i>=64)throw Error("Varint too long");}return e.set(n),r;}function n3(t,e,r){let i=new Float64Array(r);for(let n=0;n<r;n++)i[n]=a3(t,e);return i;}function a3(t,e){let r,i;return i=t[e.get()],e.increment(),r=i&127,i<128||(i=t[e.get()],e.increment(),r|=(i&127)<<7,i<128)||(i=t[e.get()],e.increment(),r|=(i&127)<<14,i<128)||(i=t[e.get()],e.increment(),r|=(i&127)<<21,i<128)?r:(i=t[e.get()],r|=(i&15)<<28,s3(r,t,e));}function s3(t,e,r){let i,n;if(n=e[r.get()],r.increment(),i=(n&112)>>4,n<128||(n=e[r.get()],r.increment(),i|=(n&127)<<3,n<128)||(n=e[r.get()],r.increment(),i|=(n&127)<<10,n<128)||(n=e[r.get()],r.increment(),i|=(n&127)<<17,n<128)||(n=e[r.get()],r.increment(),i|=(n&127)<<24,n<128)||(n=e[r.get()],r.increment(),i|=(n&1)<<31,n<128))return i*4294967296+(t>>>0);throw Error("Expected varint not more than 10 bytes");}function o3(t,e,r,i){return l3(t,e,r,i,Uw(r>>>2));}function l3(t,e,r,i,n){let a=i.get();if(r&3)throw Error(`FastPFOR: invalid encodedByteLength=${r} at offset=${a} (encodedBytes.length=${t.length}; expected a multiple of 4 bytes for an int32 big-endian word stream)`);let s=r>>>2,o=qw(n,s);r3(t,a,r,o);let l=t3(o.subarray(0,s),e,n.decoderWorkspace);return i.add(r),l;}function et(t){return t>>>1^-(t&1);}function Lt(t){return t>>1n^-(t&1n);}function je(t){return t%2==1?(t+1)/-2:t/2;}function u3(t){let e=new Int32Array(t.length);for(let r=0;r<t.length;r++)e[r]=et(t[r]);return e;}function h3(t){let e=new BigInt64Array(t.length);for(let r=0;r<t.length;r++)e[r]=Lt(t[r]);return e;}function c3(t){for(let e=0;e<t.length;e++)t[e]=je(t[e]);}function ol(t,e,r){if(r===void 0){r=0;for(let a=0;a<e;a++)r+=t[a];}let i=new Uint32Array(r),n=0;for(let a=0;a<e;a++){let s=t[a],o=t[a+e];i.fill(o,n,n+s),n+=s;}return i;}function ll(t,e,r){if(r===void 0){r=0;for(let a=0;a<e;a++)r+=Number(t[a]);}let i=new BigUint64Array(r),n=0;for(let a=0;a<e;a++){let s=Number(t[a]),o=t[a+e];i.fill(o,n,n+s),n+=s;}return i;}function yy(t,e,r){let i=new Float64Array(r),n=0;for(let a=0;a<e;a++){let s=t[a],o=t[a+e];i.fill(o,n,n+s),n+=s;}return i;}function $c(t){let e=new Int32Array(t.length);e[0]=et(t[0]);let r=t.length/4*4,i=1;if(r>=4)for(;i<r-4;i+=4){let n=t[i],a=t[i+1],s=t[i+2],o=t[i+3];e[i]=et(n)+e[i-1],e[i+1]=et(a)+e[i],e[i+2]=et(s)+e[i+1],e[i+3]=et(o)+e[i+2];}for(;i!==t.length;++i)e[i]=et(t[i])+e[i-1];return e;}function Nc(t){let e=new BigInt64Array(t.length);e[0]=Lt(t[0]);let r=t.length/4*4,i=1;if(r>=4)for(;i<r-4;i+=4){let n=t[i],a=t[i+1],s=t[i+2],o=t[i+3];e[i]=Lt(n)+e[i-1],e[i+1]=Lt(a)+e[i],e[i+2]=Lt(s)+e[i+1],e[i+3]=Lt(o)+e[i+2];}for(;i!==e.length;++i)e[i]=Lt(t[i])+e[i-1];return e;}function p3(t){t[0]=je(t[0]);let e=t.length/4*4,r=1;if(e>=4)for(;r<e-4;r+=4){let i=t[r],n=t[r+1],a=t[r+2],s=t[r+3];t[r]=je(i)+t[r-1],t[r+1]=je(n)+t[r],t[r+2]=je(a)+t[r+1],t[r+3]=je(s)+t[r+2];}for(;r!==t.length;++r)t[r]=je(t[r])+t[r-1];}function f3(t,e,r){if(r===void 0){r=0;for(let a=0;a<e;a++)r+=t[a];}let i=new Int32Array(r),n=0;for(let a=0;a<e;a++){let s=t[a],o=t[a+e];o=et(o),i.fill(o,n,n+s),n+=s;}return i;}function d3(t,e,r){if(r===void 0){r=0;for(let a=0;a<e;a++)r+=Number(t[a]);}let i=new BigInt64Array(r),n=0;for(let a=0;a<e;a++){let s=Number(t[a]),o=t[a+e];o=Lt(o),i.fill(o,n,n+s),n+=s;}return i;}function y3(t,e,r){let i=new Float64Array(r),n=0;for(let a=0;a<e;a++){let s=t[a],o=t[a+e];o=je(o),i.fill(o,n,n+s),n+=s;}return i;}function mu(t){let e=t.length/4*4,r=1;if(e>=4)for(let i=t[0];r<e-4;r+=4)i=t[r]+=i,i=t[r+1]+=i,i=t[r+2]+=i,i=t[r+3]+=i;for(;r!==t.length;)t[r]+=t[r-1],++r;}function m3(t){let e=0;for(let r=0;r<t.length;r++)t[r]+=e,e=t[r];}function g3(t){if(t.length<2)return new Int32Array(t);let e=new Int32Array(t.length);e[0]=et(t[0]),e[1]=et(t[1]);let r=t.length/4*4,i=2;if(r>=4)for(;i<r-4;i+=4){let n=t[i],a=t[i+1],s=t[i+2],o=t[i+3];e[i]=et(n)+e[i-2],e[i+1]=et(a)+e[i-1],e[i+2]=et(s)+e[i],e[i+3]=et(o)+e[i+1];}for(;i!==t.length;i+=2)e[i]=et(t[i])+e[i-2],e[i+1]=et(t[i+1])+e[i-1];return e;}function my(t,e,r,i){if(t.length<2)return new Int32Array(t);let n=new Int32Array(t.length),a=et(t[0]),s=et(t[1]);n[0]=Ue(Math.round(a*e),r,i),n[1]=Ue(Math.round(s*e),r,i);let o=t.length/16,l=2;if(o>=4)for(;l<o-4;l+=4){let u=t[l],h=t[l+1],c=et(u)+a,p=et(h)+s;n[l]=Ue(Math.round(c*e),r,i),n[l+1]=Ue(Math.round(p*e),r,i);let f=t[l+2],d=t[l+3];a=et(f)+c,s=et(d)+p,n[l+2]=Ue(Math.round(a*e),r,i),n[l+3]=Ue(Math.round(s*e),r,i);}for(;l!==t.length;l+=2)a+=et(t[l]),s+=et(t[l+1]),n[l]=Ue(Math.round(a*e),r,i),n[l+1]=Ue(Math.round(s*e),r,i);return n;}function Ue(t,e,r){return Math.min(r,Math.max(e,t));}function x3(t){let e=new Int32Array(t.length+1);e[0]=0,e[1]=et(t[0]);let r=e[1];for(let i=2;i!==e.length;++i){let n=t[i-1],a=et(n);r+=a,e[i]=e[i-1]+r;}return new Uint32Array(e);}function v3(t,e,r){let i=new Int32Array(r+1);i[0]=0;let n=1,a=i[0];for(let s=0;s<e;s++){let o=t[s],l=t[s+e];l=et(l);for(let u=n;u<n+o;u++)i[u]=l+a,a=i[u];n+=o;}return i;}function b3(t,e,r){let i=new Uint32Array(r+1);i[0]=0;let n=1,a=i[0];for(let s=0;s<e;s++){let o=t[s],l=t[s+e];for(let u=n;u<n+o;u++)i[u]=l+a,a=i[u];n+=o;}return i;}function w3(t,e,r){let i=new Int32Array(r),n=0,a=0;for(let s=0;s<e;s++){let o=t[s],l=t[s+e],u=et(l);for(let h=0;h<o;h++)a+=u,i[n++]=a;}return i;}function D3(t,e,r){let i=new BigInt64Array(r),n=0,a=0n;for(let s=0;s<e;s++){let o=Number(t[s]),l=t[s+e],u=Lt(l);for(let h=0;h<o;h++)a+=u,i[n++]=a;}return i;}function Uc(t){let e=new Uint32Array(t.length);e[0]=et(t[0])>>>0;for(let r=1;r<t.length;r++)e[r]=e[r-1]+et(t[r])>>>0;return e;}function qc(t){let e=new BigUint64Array(t.length);e[0]=BigInt.asUintN(64,Lt(t[0]));for(let r=1;r<t.length;r++)e[r]=BigInt.asUintN(64,e[r-1]+Lt(t[r]));return e;}function _3(t){if(t.length<2)return new Uint32Array(t);let e=new Uint32Array(t.length);e[0]=et(t[0])>>>0,e[1]=et(t[1])>>>0;for(let r=2;r<t.length;r+=2)e[r]=e[r-2]+et(t[r])>>>0,e[r+1]=e[r-1]+et(t[r+1])>>>0;return e;}function A3(t,e,r,i){let n=my(t,e,r,i);return new Uint32Array(n);}function S3(t){return t[1];}function E3(t){return et(t[1]);}function F3(t){if(t.length===2){let e=et(t[1]);return[e,e];}return[et(t[2]),et(t[3])];}function T3(t){return t[1];}function k3(t){return Lt(t[1]);}function I3(t){if(t.length===2){let e=Lt(t[1]);return[e,e];}return[Lt(t[2]),Lt(t[3])];}var St;(function(t){t.PRESENT="PRESENT",t.DATA="DATA",t.OFFSET="OFFSET",t.LENGTH="LENGTH";})(St||={});var Nt;(function(t){t.NONE="NONE",t.SINGLE="SINGLE",t.SHARED="SHARED",t.VERTEX="VERTEX",t.MORTON="MORTON",t.FSST="FSST";})(Nt||={});var Ie;(function(t){t.VERTEX="VERTEX",t.INDEX="INDEX",t.STRING="STRING",t.KEY="KEY";})(Ie||={});var It;(function(t){t.VAR_BINARY="VAR_BINARY",t.GEOMETRIES="GEOMETRIES",t.PARTS="PARTS",t.RINGS="RINGS",t.TRIANGLES="TRIANGLES",t.SYMBOL="SYMBOL",t.DICTIONARY="DICTIONARY";})(It||={});var C3=[St.PRESENT,St.DATA,St.OFFSET,St.LENGTH],jc=[Z.NONE,Z.DELTA,Z.COMPONENTWISE_DELTA,Z.RLE,Z.MORTON],M3=[ae.NONE,ae.FAST_PFOR,ae.VARINT],B3=[Nt.NONE,Nt.SINGLE,Nt.SHARED,Nt.VERTEX,Nt.MORTON,Nt.FSST],P3=[Ie.VERTEX,Ie.INDEX,Ie.STRING,Ie.KEY],z3=[It.VAR_BINARY,It.GEOMETRIES,It.PARTS,It.RINGS,It.TRIANGLES,It.SYMBOL,It.DICTIONARY];function ht(t,e){let r=O3(t,e);return r.logicalLevelTechnique1===Z.MORTON?L3(r,t,e):(Z.RLE===r.logicalLevelTechnique1||Z.RLE===r.logicalLevelTechnique2)&&ae.NONE!==r.physicalLevelTechnique?V3(r,t,e):r;}function L3(t,e,r){let i=Ot(e,r,2);return{physicalStreamType:t.physicalStreamType,logicalStreamType:t.logicalStreamType,logicalLevelTechnique1:t.logicalLevelTechnique1,logicalLevelTechnique2:t.logicalLevelTechnique2,physicalLevelTechnique:t.physicalLevelTechnique,numValues:t.numValues,byteLength:t.byteLength,decompressedCount:t.decompressedCount,numBits:i[0],coordinateShift:i[1]};}function V3(t,e,r){let i=Ot(e,r,2);return{physicalStreamType:t.physicalStreamType,logicalStreamType:t.logicalStreamType,logicalLevelTechnique1:t.logicalLevelTechnique1,logicalLevelTechnique2:t.logicalLevelTechnique2,physicalLevelTechnique:t.physicalLevelTechnique,numValues:t.numValues,byteLength:t.byteLength,decompressedCount:i[1],runs:i[0],numRleValues:i[1]};}function O3(t,e){let r=t[e.get()],i=C3[r>>4],n={};switch(i){case St.DATA:n={dictionaryType:B3[r&15]};break;case St.OFFSET:n={offsetType:P3[r&15]};break;case St.LENGTH:n={lengthType:z3[r&15]};}e.increment();let a=t[e.get()],s=jc[a>>5],o=jc[a>>2&7],l=M3[a&3];e.increment();let u=Ot(t,e,2),h=u[0],c=u[1];return{physicalStreamType:i,logicalStreamType:n,logicalLevelTechnique1:s,logicalLevelTechnique2:o,physicalLevelTechnique:l,numValues:h,byteLength:c,decompressedCount:h};}var ut;(function(t){t[t.FLAT=0]="FLAT",t[t.CONST=1]="CONST",t[t.SEQUENCE=2]="SEQUENCE",t[t.DICTIONARY=3]="DICTIONARY",t[t.FSST_DICTIONARY=4]="FSST_DICTIONARY";})(ut||={});var he=class{constructor(t,e){this.values=t,this._size=e;}get(t){let e=Math.floor(t/8),r=t%8;return(this.values[e]>>r&1)==1;}set(t,e){let r=Math.floor(t/8),i=t%8;this.values[r]=this.values[r]|+!!e<<i;}getInt(t){let e=Math.floor(t/8),r=t%8;return this.values[e]>>r&1;}size(){return this._size;}getBuffer(){return this.values;}};function wr(t,e,r){if(!e)return t;let i=e.size(),n=t.constructor,a=new n(i),s=0;for(let o=0;o<i;o++)a[o]=e.get(o)?t[s++]:r;return a;}function R3(t,e,r){if(!r)return t;let i=r.size(),n=new he(t,e),a=new he(new Uint8Array(Math.ceil(i/8)),i),s=0;for(let o=0;o<i;o++){let l=r.get(o)?n.get(s++):!1;a.set(o,l);}return a.getBuffer();}function gy(t,e,r){for(let i=0;i<t;i++){let n=ht(e,r);r.add(n.byteLength);}}function oi(t,e,r,i,n){let a=$3(t,Math.ceil(e/8),r,i);return n?R3(a,e,n):a;}function $3(t,e,r,i){let n=new Uint8Array(e),a=0,s=i.get()+r;for(;a<e&&!(i.get()>=s);){let o=t[i.increment()];if(o<=127){let l=o+3,u=t[i.increment()],h=Math.min(a+l,e);n.fill(u,a,h),a=h;}else{let l=256-o;for(let u=0;u<l&&a<e;u++)n[a++]=t[i.increment()];}}return i.set(s),n;}function xy(t,e,r,i){let n=e.get(),a=n+r*Float32Array.BYTES_PER_ELEMENT,s=new Uint8Array(t.subarray(n,a)).buffer,o=new Float32Array(s);return e.set(a),i?wr(o,i,0):o;}function vy(t,e,r,i){let n=e.get(),a=n+r*Float64Array.BYTES_PER_ELEMENT,s=new Uint8Array(t.subarray(n,a)).buffer,o=new Float64Array(s);return e.set(a),i?wr(o,i,0):o;}function N3(t,e,r){let i=e.get(),n=r*Uint32Array.BYTES_PER_ELEMENT,a=new DataView(t.buffer,t.byteOffset,t.byteLength),s=new Uint32Array(r);for(let o=0;o<r;o++)s[o]=a.getUint32(i+o*Uint32Array.BYTES_PER_ELEMENT,!0);return e.add(n),s;}function U3(t,e,r){let i=e.get(),n=r*BigUint64Array.BYTES_PER_ELEMENT,a=new DataView(t.buffer,t.byteOffset,t.byteLength),s=new BigUint64Array(r);for(let o=0;o<r;o++)s[o]=a.getBigUint64(i+o*BigUint64Array.BYTES_PER_ELEMENT,!0);return e.add(n),s;}var q3=new TextDecoder();function gu(t,e,r){return r-e>=12?q3.decode(t.subarray(e,r)):j3(t,e,r);}function j3(t,e,r){let i="",n=e;for(;n<r;){let a=t[n],s=null,o=a>239?4:a>223?3:a>191?2:1;if(n+o>r)break;let l,u,h;o===1?a<128&&(s=a):o===2?(l=t[n+1],(l&192)==128&&(s=(a&31)<<6|l&63,s<=127&&(s=null))):o===3?(l=t[n+1],u=t[n+2],(l&192)==128&&(u&192)==128&&(s=(a&15)<<12|(l&63)<<6|u&63,(s<=2047||s>=55296&&s<=57343)&&(s=null))):o===4&&(l=t[n+1],u=t[n+2],h=t[n+3],(l&192)==128&&(u&192)==128&&(h&192)==128&&(s=(a&15)<<18|(l&63)<<12|(u&63)<<6|h&63,(s<=65535||s>=1114112)&&(s=null))),s===null?(s=65533,o=1):s>65535&&(s-=65536,i+=String.fromCharCode(s>>>10&1023|55296),s=56320|s&1023),i+=String.fromCharCode(s),n+=o;}return i;}function Da(t,e,r,i,n){return Z3(li(t,e,r),r,i,n);}function zt(t,e,r,i,n){return H3(li(t,e,r),r,i,n);}function Ge(t,e,r){return J3(li(t,e,r),r);}function li(t,e,r){let i=r.physicalLevelTechnique;switch(i){case ae.FAST_PFOR:return o3(t,r.numValues,r.byteLength,e);case ae.VARINT:return Ot(t,e,r.numValues);case ae.NONE:return N3(t,e,r.numValues);default:throw Error(`Specified physicalLevelTechnique ${i} is not supported (yet).`);}}function xn(t,e,r){let i=r.physicalLevelTechnique;switch(i){case ae.VARINT:return yu(t,e,r.numValues);case ae.NONE:return U3(t,e,r.numValues);default:throw Error(`Specified physicalLevelTechnique ${i} is not supported (yet).`);}}function G3(t,e,r){let i=li(t,e,r);return i.length===1?et(i[0]):E3(i);}function xu(t,e,r){let i=li(t,e,r);return i.length===1?r.logicalLevelTechnique1===Z.DELTA?et(i[0]):i[0]:S3(i);}function by(t,e,r){return F3(li(t,e,r));}function wy(t,e,r){return I3(yu(t,e,r.numValues));}function Dy(t,e,r,i){return Ay(xn(t,e,r),r,i);}function vu(t,e,r,i){return Sy(xn(t,e,r),r,i);}function X3(t,e,r,i){let n=Y3(t,e,r,!1);return i?wr(n,i,0):n;}function Y3(t,e,r,i){if(r.physicalLevelTechnique===ae.VARINT)return K3(n3(t,e,r.numValues),r,i);let n=xn(t,e,r),a=i?Ay(n,r):Sy(n,r);return Float64Array.from(a,Number);}function W3(t,e,r){let i=xn(t,e,r);return i.length===1?Lt(i[0]):k3(i);}function _y(t,e,r){let i=xn(t,e,r);return i.length===1?r.logicalLevelTechnique1===Z.DELTA?Lt(i[0]):i[0]:T3(i);}function Z3(t,e,r,i){let n;switch(e.logicalLevelTechnique1){case Z.DELTA:if(e.logicalLevelTechnique2===Z.RLE){let a=e;if(!i)return w3(t,a.runs,a.numRleValues);t=ol(t,a.runs,a.numRleValues),n=$c(t);}else n=$c(t);break;case Z.RLE:n=f3(t,e.runs,e.numRleValues);break;case Z.MORTON:mu(t),n=new Int32Array(t);break;case Z.COMPONENTWISE_DELTA:if(r&&!i)return my(t,r.scale,r.min,r.max);n=g3(t);break;case Z.NONE:n=u3(t);break;default:throw Error(`The specified Logical level technique is not supported: ${e.logicalLevelTechnique1}`);}return i?wr(n,i,0):n;}function H3(t,e,r,i){let n;switch(e.logicalLevelTechnique1){case Z.DELTA:if(e.logicalLevelTechnique2===Z.RLE){let a=e;n=Uc(ol(t,a.runs,a.numRleValues));}else n=Uc(t);break;case Z.RLE:n=ol(t,e.runs,e.numRleValues);break;case Z.MORTON:mu(t),n=t;break;case Z.COMPONENTWISE_DELTA:n=r&&!i?A3(t,r.scale,r.min,r.max):_3(t);break;case Z.NONE:n=t;break;default:throw Error(`The specified Logical level technique is not supported: ${e.logicalLevelTechnique1}`);}return i?wr(n,i,0):n;}function Ay(t,e,r){let i;switch(e.logicalLevelTechnique1){case Z.DELTA:if(e.logicalLevelTechnique2===Z.RLE){let n=e;if(!r)return D3(t,n.runs,n.numRleValues);t=ll(t,n.runs,n.numRleValues),i=Nc(t);}else i=Nc(t);break;case Z.RLE:i=d3(t,e.runs,e.numRleValues);break;case Z.NONE:i=h3(t);break;default:throw Error(`The specified Logical level technique is not supported: ${e.logicalLevelTechnique1}`);}return r?wr(i,r,0n):i;}function Sy(t,e,r){let i;switch(e.logicalLevelTechnique1){case Z.DELTA:if(e.logicalLevelTechnique2===Z.RLE){let n=e;i=qc(ll(t,n.runs,n.numRleValues));}else i=qc(t);break;case Z.RLE:i=ll(t,e.runs,e.numRleValues);break;case Z.NONE:i=t;break;default:throw Error(`The specified Logical level technique is not supported: ${e.logicalLevelTechnique1}`);}return r?wr(i,r,0n):i;}function K3(t,e,r){switch(e.logicalLevelTechnique1){case Z.DELTA:if(e.logicalLevelTechnique2===Z.RLE){let i=e;t=yy(t,i.runs,i.numRleValues);}return p3(t),t;case Z.RLE:return t6(t,e,r);case Z.NONE:return r&&c3(t),t;default:throw Error(`The specified Logical level technique is not supported: ${e.logicalLevelTechnique1}`);}}function J3(t,e){if(e.logicalLevelTechnique1===Z.DELTA&&e.logicalLevelTechnique2===Z.NONE)return x3(t);if(e.logicalLevelTechnique1===Z.RLE&&e.logicalLevelTechnique2===Z.NONE){let r=e;return b3(t,r.runs,r.numRleValues);}if(e.logicalLevelTechnique1===Z.NONE&&e.logicalLevelTechnique2===Z.NONE){m3(t);let r=new Uint32Array(e.numValues+1);return r[0]=0,r.set(t,1),r;}if(e.logicalLevelTechnique1===Z.DELTA&&e.logicalLevelTechnique2===Z.RLE){let r=e,i=v3(t,r.runs,r.numRleValues);return mu(i),new Uint32Array(i);}throw Error("Only delta encoding is supported for transforming length to offset streams yet.");}function Wa(t,e,r,i,n="int32"){let a=t.logicalLevelTechnique1;if(a===Z.RLE)return t.runs===1?ut.CONST:ut.FLAT;if(a!==Z.DELTA||t.logicalLevelTechnique2!==Z.RLE)return t.numValues===1?ut.CONST:ut.FLAT;let s=e instanceof he?e.size():e,o=t;if(o.numRleValues!==s)return ut.FLAT;if(o.runs===1)return ut.SEQUENCE;if(o.runs!==2)return t.numValues===1?ut.CONST:ut.FLAT;let l=i.get();if(t.physicalLevelTechnique===ae.VARINT)return Q3(r,i,n)?ut.SEQUENCE:t.numValues===1?ut.CONST:ut.FLAT;let u=i.get(),h=new Int32Array(r.buffer,r.byteOffset+u,4);return i.set(l),h[2]===2&&h[3]===2?ut.SEQUENCE:t.numValues===1?ut.CONST:ut.FLAT;}function Q3(t,e,r){let i=new py(e.get());if(r==="int64"){let a=yu(t,i,4);return a[2]===2n&&a[3]===2n;}let n=Ot(t,i,4);return n[2]===2&&n[3]===2;}function t6(t,e,r){return r?y3(t,e.runs,e.numRleValues):yy(t,e.runs,e.numRleValues);}var Ey=class extends Ya{getValueFromBuffer(t){return this.dataBuffer[t];}},Fy=class extends hy{constructor(t,e,r,i,n){super(t,n?BigInt64Array.of(e):BigUint64Array.of(e),r,i);}getValueFromBuffer(t){return this.dataBuffer[0]+BigInt(t)*this.delta;}};function bu(t,e,r){return{x:Gc(t,e)-r,y:Gc(t>>1,e)-r};}function Gc(t,e){let r=0;for(let i=0;i<e;i++)r|=(t&1<<2*i)>>i;return r;}var Vt;(function(t){t[t.POINT=0]="POINT",t[t.LINESTRING=1]="LINESTRING",t[t.POLYGON=2]="POLYGON",t[t.MULTIPOINT=3]="MULTIPOINT",t[t.MULTILINESTRING=4]="MULTILINESTRING",t[t.MULTIPOLYGON=5]="MULTIPOLYGON";})(Vt||={});var e6;(function(t){t[t.POINT=0]="POINT",t[t.LINESTRING=1]="LINESTRING",t[t.POLYGON=2]="POLYGON";})(e6||={});var Dr;(function(t){t[t.MORTON=0]="MORTON",t[t.VEC_2=1]="VEC_2",t[t.VEC_3=2]="VEC_3";})(Dr||={});function r6(t){let e=Array(t.numGeometries),r=1,i=1,n=1,a=0,s=0,o=0,l=t.mortonSettings,u=t.topologyVector,h=u.geometryOffsets,c=u.partOffsets,p=u.ringOffsets,f=t.vertexOffsets,d=!f||f.length===0,y=t.containsPolygonGeometry(),m=t.vertexBuffer;for(let g=0;g<t.numGeometries;g++){let x=t.geometryType(g);switch(x){case Vt.POINT:{let b,v;if(d)b=m[s++],v=m[s++];else if(t.vertexBufferType===Dr.MORTON){let w=m[f[o++]],_=bu(w,l.numBits,l.coordinateShift);b=_.x,v=_.y;}else{let w=f[o++]*2;b=m[w],v=m[w+1];}e[a++]=[[new M(b,v)]],h&&n++,c&&r++,p&&i++;}break;case Vt.MULTIPOINT:{let b=h[n]-h[n-1];n++;let v;if(d){v=Array(b);for(let w=0;w<b;w++){let _=m[s++],A=m[s++];v[w]=new M(_,A);}}else v=nr(t.vertexBufferType,m,f,o,b,!1,l),o+=b;e[a++]=v.map(w=>[w]),r+=b,i+=b;}break;case Vt.LINESTRING:{let b;y?(b=p[i]-p[i-1],i++):b=c[r]-c[r-1],r++;let v;d?(v=Pr(m,s,b,!1),s+=b*2):(v=nr(t.vertexBufferType,m,f,o,b,!1,l),o+=b),e[a++]=[v],h&&n++;}break;case Vt.POLYGON:{let b=c[r]-c[r-1];r++;let v=Array(b-1),w,_=p[i]-p[i-1];if(i++,d){w=Pr(m,s,_,!0),s+=_*2;for(let A=0;A<v.length;A++)_=p[i]-p[i-1],i++,v[A]=Pr(m,s,_,!0),s+=_*2;}else{w=nr(t.vertexBufferType,m,f,o,_,!0,l),o+=_;for(let A=0;A<v.length;A++)_=p[i]-p[i-1],i++,v[A]=nr(t.vertexBufferType,m,f,o,_,!0,l),o+=_;}e[a++]=[w].concat(v),h&&n++;}break;case Vt.MULTILINESTRING:{let b=h[n]-h[n-1];n++;let v=Array(b);for(let w=0;w<b;w++){let _;if(y?(_=p[i]-p[i-1],i++):_=c[r]-c[r-1],r++,d)v[w]=Pr(m,s,_,!1),s+=_*2;else{let A=nr(t.vertexBufferType,m,f,o,_,!1,l);v[w]=A,o+=_;}}e[a++]=v;}break;case Vt.MULTIPOLYGON:{let b=h[n]-h[n-1];n++;let v=Array(b);for(let w=0;w<b;w++){let _=c[r]-c[r-1];r++;let A,S=Array(_-1),F=p[i]-p[i-1];i++,d?(A=Pr(m,s,F,!0),s+=F*2):(A=nr(t.vertexBufferType,m,f,o,F,!0,l),o+=F);for(let z=0;z<S.length;z++){let $=p[i]-p[i-1];i++,d?(S[z]=Pr(m,s,$,!0),s+=$*2):(S[z]=nr(t.vertexBufferType,m,f,o,$,!0,l),o+=$);}v[w]=[A].concat(S);}e[a++]=v.flat();}break;default:throw Error(`The specified geometry type (${x}) is currently not supported.`);}}return e;}function nr(t,e,r,i,n,a,s){return t===Dr.MORTON?n6(e,r,i,n,a,s):i6(e,r,i,n,a);}function Pr(t,e,r,i){let n=Array(i?r+1:r);for(let a=0;a<r*2;a+=2){let s=t[e+a],o=t[e+a+1];n[a/2]=new M(s,o);}return i&&(n[n.length-1]=n[0]),n;}function i6(t,e,r,i,n){let a=Array(n?i+1:i);for(let s=0;s<i*2;s+=2){let o=e[r+s/2]*2,l=t[o],u=t[o+1];a[s/2]=new M(l,u);}return n&&(a[a.length-1]=a[0]),a;}function n6(t,e,r,i,n,a){let s=Array(n?i+1:i);for(let o=0;o<i;o++){let l=t[e[r+o]],u=bu(l,a.numBits,a.coordinateShift);s[o]=new M(u.x,u.y);}return n&&(s[s.length-1]=s[0]),s;}var Ty=class{constructor(t,e,r,i,n){this._vertexBufferType=t,this._topologyVector=e,this._vertexOffsets=r,this._vertexBuffer=i,this._mortonSettings=n;}get vertexBufferType(){return this._vertexBufferType;}get topologyVector(){return this._topologyVector;}get vertexOffsets(){return this._vertexOffsets;}get vertexBuffer(){return this._vertexBuffer;}getSimpleEncodedVertex(t){let e=this.vertexOffsets?this.vertexOffsets[t]*2:t*2;return[this.vertexBuffer[e],this.vertexBuffer[e+1]];}getVertex(t){if(this.vertexOffsets&&this.mortonSettings){let r=this.vertexOffsets[t],i=this.vertexBuffer[r],n=bu(i,this.mortonSettings.numBits,this.mortonSettings.coordinateShift);return[n.x,n.y];}let e=this.vertexOffsets?this.vertexOffsets[t]*2:t*2;return[this.vertexBuffer[e],this.vertexBuffer[e+1]];}getGeometries(){return r6(this);}get mortonSettings(){return this._mortonSettings;}};function a6(t,e,r,i,n){return new ky(t,e,Dr.VEC_2,r,i,n);}function s6(t,e,r,i,n,a){return new ky(t,e,Dr.MORTON,r,i,n,a);}var ky=class extends Ty{constructor(t,e,r,i,n,a,s){super(r,i,n,a,s),this._numGeometries=t,this._geometryType=e;}geometryType(t){return this._geometryType;}get numGeometries(){return this._numGeometries;}containsPolygonGeometry(){return this._geometryType===Vt.POLYGON||this._geometryType===Vt.MULTIPOLYGON;}containsSingleGeometryType(){return!0;}};function Iy(t,e,r,i){return new Cy(Dr.VEC_2,t,e,r,i);}function o6(t,e,r,i,n){return new Cy(Dr.MORTON,t,e,r,i,n);}var Cy=class extends Ty{constructor(t,e,r,i,n,a){super(t,r,i,n,a),this._geometryTypes=e;}geometryType(t){return this._geometryTypes[t];}get numGeometries(){return this._geometryTypes.length;}containsPolygonGeometry(){for(let t=0;t<this.numGeometries;t++)if(this.geometryType(t)===Vt.POLYGON||this.geometryType(t)===Vt.MULTIPOLYGON)return!0;return!1;}containsSingleGeometryType(){return!1;}},My=class{constructor(t,e,r,i){this._triangleOffsets=t,this._indexBuffer=e,this._vertexBuffer=r,this._topologyVector=i;}get triangleOffsets(){return this._triangleOffsets;}get indexBuffer(){return this._indexBuffer;}get vertexBuffer(){return this._vertexBuffer;}get topologyVector(){return this._topologyVector;}getGeometries(){if(!this._topologyVector)throw Error("Cannot convert GpuVector to coordinates without topology information");let t=new Uint32Array(this.numGeometries);for(let e=0;e<this.numGeometries;e++)t[e]=this.geometryType(e);return Iy(t,this._topologyVector,void 0,this._vertexBuffer).getGeometries();}[Symbol.iterator](){return null;}};function Xc(t,e,r,i,n,a){return new l6(t,e,r,i,n,a);}var l6=class extends My{constructor(t,e,r,i,n,a){super(r,i,n,a),this._numGeometries=t,this._geometryType=e;}geometryType(t){return this._geometryType;}get numGeometries(){return this._numGeometries;}containsSingleGeometryType(){return!0;}};function Yc(t,e,r,i,n){return new u6(t,e,r,i,n);}var u6=class extends My{constructor(t,e,r,i,n){super(e,r,i,n),this._geometryTypes=t;}geometryType(t){return this._geometryTypes[t];}get numGeometries(){return this._geometryTypes.length;}containsSingleGeometryType(){return!1;}};function h6(t,e,r,i,n){let a=ht(t,r),s=Wa(a,i,t,r),o,l,u,h;if(s===ut.CONST){let b=xu(t,r,a),v,w,_,A;for(let S=0;S<e-1;S++){let F=ht(t,r);switch(F.physicalStreamType){case St.LENGTH:switch(F.logicalStreamType.lengthType){case It.GEOMETRIES:v=Ge(t,r,F);break;case It.PARTS:w=Ge(t,r,F);break;case It.RINGS:_=Ge(t,r,F);break;case It.TRIANGLES:A=Ge(t,r,F);}break;case St.OFFSET:switch(F.logicalStreamType.offsetType){case Ie.VERTEX:o=zt(t,r,F);break;case Ie.INDEX:h=zt(t,r,F);}break;case St.DATA:if(Nt.VERTEX===F.logicalStreamType.dictionaryType)l=Da(t,r,F,n);else{let z=F;u={numBits:z.numBits,coordinateShift:z.coordinateShift},l=zt(t,r,F,n);}}}return h?v!==void 0||w!==void 0?Xc(i,b,A,h,l,{geometryOffsets:v,partOffsets:w,ringOffsets:_}):Xc(i,b,A,h,l):u===void 0?a6(i,b,{geometryOffsets:v,partOffsets:w,ringOffsets:_},o,l):s6(i,b,{geometryOffsets:v,partOffsets:w,ringOffsets:_},o,l,u);}let c=zt(t,r,a),p,f,d,y;for(let b=0;b<e-1;b++){let v=ht(t,r);switch(v.physicalStreamType){case St.LENGTH:switch(v.logicalStreamType.lengthType){case It.GEOMETRIES:p=zt(t,r,v);break;case It.PARTS:f=zt(t,r,v);break;case It.RINGS:d=zt(t,r,v);break;case It.TRIANGLES:y=Ge(t,r,v);}break;case St.OFFSET:switch(v.logicalStreamType.offsetType){case Ie.VERTEX:o=zt(t,r,v);break;case Ie.INDEX:h=zt(t,r,v);}break;case St.DATA:if(Nt.VERTEX===v.logicalStreamType.dictionaryType)l=Da(t,r,v,n);else{let w=v;u={numBits:w.numBits,coordinateShift:w.coordinateShift},l=zt(t,r,v,n);}}}let m,g,x;return p?(m=js(c,p,2),f&&d?(g=Wc(c,m,f,!1),x=p6(c,m,g,d)):f&&(g=c6(c,m,f))):f&&d?(g=js(c,f,1),x=Wc(c,g,d,!0)):f&&(g=js(c,f,0)),h&&!g?Yc(c,y,h,l):h?Yc(c,y,h,l,{geometryOffsets:m,partOffsets:g,ringOffsets:x}):u===void 0?Iy(c,{geometryOffsets:m,partOffsets:g,ringOffsets:x},o,l):o6(c,{geometryOffsets:m,partOffsets:g,ringOffsets:x},o,l,u);}function js(t,e,r){let i=new Uint32Array(t.length+1),n=0;i[0]=n;let a=0;for(let s=0;s<t.length;s++)n=i[s+1]=n+(t[s]>r?e[a++]:1);return i;}function Wc(t,e,r,i){let n=new Uint32Array(e[e.length-1]+1),a=0;n[0]=a;let s=1,o=0;for(let l=0;l<t.length;l++){let u=t[l],h=e[l+1]-e[l];if(u===5||u===2||i&&(u===4||u===1))for(let c=0;c<h;c++)a=n[s++]=a+r[o++];else for(let c=0;c<h;c++)n[s++]=++a;}return n;}function c6(t,e,r){let i=new Uint32Array(e[e.length-1]+1),n=0;i[0]=n;let a=1,s=0;for(let o=0;o<t.length;o++){let l=t[o],u=e[o+1]-e[o];if(l===4||l===1)for(let h=0;h<u;h++)n=i[a++]=n+r[s++];else for(let h=0;h<u;h++)i[a++]=++n;}return i;}function p6(t,e,r,i){let n=new Uint32Array(r[r.length-1]+1),a=0;n[0]=a;let s=1,o=1,l=0;for(let u=0;u<t.length;u++){let h=t[u],c=e[u+1]-e[u];if(h!==0&&h!==3)for(let p=0;p<c;p++){let f=r[s]-r[s-1];s++;for(let d=0;d<f;d++)a=n[o++]=a+i[l++];}else for(let p=0;p<c;p++)n[o++]=++a,s++;}return n;}var f6=class extends br{constructor(t,e,r){super(t,e.getBuffer(),r),this.dataVector=e;}getValueFromBuffer(t){return this.dataVector.get(t);}},d6=class extends Ya{getValueFromBuffer(t){return this.dataBuffer[t];}},By=class extends br{constructor(t,e,r,i){super(t,i?BigInt64Array.of(e):BigUint64Array.of(e),r);}getValueFromBuffer(t){return this.dataBuffer[0];}},wu=class extends br{constructor(t,e,r,i){super(t,r,i),this.offsetBuffer=e;}},Zc=class extends wu{constructor(t,e,r,i){super(t,e,r,i??e.length-1);}getValueFromBuffer(t){let e=this.offsetBuffer[t],r=this.offsetBuffer[t+1];return gu(this.dataBuffer,e,r);}},Zr=class extends wu{constructor(t,e,r,i,n){super(t,r,i,n??e.length),this.indexBuffer=e,this.indexBuffer=e;}getValueFromBuffer(t){let e=this.indexBuffer[t],r=this.offsetBuffer[e],i=this.offsetBuffer[e+1];return gu(this.dataBuffer,r,i);}};function y6(t,e){let r=0;for(let i=0;i<e.length;i++){let n=e[i];n===255?(r++,i++):r+=t[n];}return r;}function m6(t,e,r){let i=new Uint32Array(e.length);for(let s=1;s<e.length;s++)i[s]=i[s-1]+e[s-1];let n=new Uint8Array(y6(e,r)),a=0;for(let s=0;s<r.length;s++){let o=r[s];if(o===255)s++,n[a++]=r[s];else{let l=e[o],u=i[o];for(;l-->0;)n[a++]=t[u++];}}return n;}var Py=class extends wu{constructor(t,e,r,i,n,a,s,o){super(t,r,i,s??e.length),this.indexBuffer=e,this.symbolOffsetBuffer=n,this.symbolTableBuffer=a,this.sharedDictionaryCache=o;}getValueFromBuffer(t){this.decodedDictionary??(this.decodedDictionary=this.sharedDictionaryCache?.decodedDictionary,this.decodedDictionary??(this.decodedDictionary=this.decodeDictionary(),this.sharedDictionaryCache&&(this.sharedDictionaryCache.decodedDictionary=this.decodedDictionary)));let e=this.indexBuffer[t],r=this.offsetBuffer[e],i=this.offsetBuffer[e+1];return gu(this.decodedDictionary,r,i);}decodeDictionary(){return this.symbolLengthBuffer??=this.offsetToLengthBuffer(this.symbolOffsetBuffer),m6(this.symbolTableBuffer,this.symbolLengthBuffer,this.dataBuffer);}offsetToLengthBuffer(t){let e=new Uint32Array(t.length-1),r=t[0];for(let i=1;i<t.length;i++){let n=t[i];e[i-1]=n-r,r=n;}return e;}};function zy(t,e,r,i,n){let a,s,o,l,u,h=n,c,p;for(let f=0;f<i;f++){let d=ht(e,r);switch(d.physicalStreamType){case St.PRESENT:{let y=new he(oi(e,d.numValues,d.byteLength,r),d.numValues);h=n??y;break;}case St.OFFSET:s=zt(e,r,d,void 0,h);break;case St.LENGTH:{let y=Ge(e,r,d);It.DICTIONARY===d.logicalStreamType.lengthType?a=y:It.SYMBOL===d.logicalStreamType.lengthType?l=y:c=y;break;}case St.DATA:{let y=e.subarray(r.get(),r.get()+d.byteLength);r.add(d.byteLength);let m=d.logicalStreamType.dictionaryType;Nt.FSST===m?u=y:Nt.SINGLE===m||Nt.SHARED===m?o=y:Nt.NONE===m&&(p=y);break;}}}return g6(t,u,s,a,o,l,h)??x6(t,o,s,a,h)??v6(t,c,p,s,h);}function g6(t,e,r,i,n,a,s){if(e){if(!r||!i||!n||!a)throw Error(`Incomplete FSST dictionary string column "${t}"`);return new Py(t,r,i,n,a,e,s);}}function x6(t,e,r,i,n){if(e){if(!r||!i)throw Error(`Incomplete dictionary string column "${t}"`);return n?new Zr(t,r,i,e,n):new Zr(t,r,i,e);}}function v6(t,e,r,i,n){if(e&&r){if(i)return n?new Zr(t,i,e,r,n):new Zr(t,i,e,r);if(n&&n.size()!==e.length-1){let a=new Uint32Array(n.size()),s=0;for(let o=0;o<n.size();o++)n.get(o)?a[o]=s++:a[o]=0;return new Zr(t,a,e,r,n);}return n?new Zc(t,e,r,n):new Zc(t,e,r);}}function b6(t,e,r,i){let n,a,s,o,l=!1;for(;!l;){let f=ht(t,e);switch(f.physicalStreamType){case St.LENGTH:It.DICTIONARY===f.logicalStreamType.lengthType?n=Ge(t,e,f):s=Ge(t,e,f);break;case St.DATA:Nt.SINGLE===f.logicalStreamType.dictionaryType||Nt.SHARED===f.logicalStreamType.dictionaryType?(a=t.subarray(e.get(),e.get()+f.byteLength),l=!0):o=t.subarray(e.get(),e.get()+f.byteLength),e.add(f.byteLength);}}if(r.type!=="complexType")throw Error(`Shared dictionary column ${r.name} must be a complex (struct) column.`);if(!n||!a)throw Error(`Incomplete shared dictionary for column "${r.name}"`);let u=r.complexType.children,h=[],c=o?{}:void 0,p=0;for(let f of u){let d=Ot(t,e,1)[0];if(d===0)continue;let y=f.name?`${r.name}${f.name}`:r.name;if(i&&!i.has(y)){gy(d,t,e);continue;}if(f.type!=="scalarField"||f.scalarField.physicalType!==rt.STRING)throw Error("Currently only scalar string fields are implemented for a struct.");if(d>1&&!f.nullable||d===1&&f.nullable)throw Error(`The number of streams for the child field ${f.name} does not match its nullability. nullibilty: ${f.nullable}, numStreams: ${d}`);let m;if(f.nullable){let x=ht(t,e);m=new he(oi(t,x.numValues,x.byteLength,e),x.numValues);}let g=zt(t,e,ht(t,e),void 0,m);if(o){if(!s)throw Error(`Incomplete shared FSST dictionary for column "${y}"`);h[p++]=new Py(y,g,n,a,s,o,m,c);}else h[p++]=new Zr(y,g,n,a,m);}return h;}var Hc=class extends br{constructor(t,e,r){super(t,new Uint8Array(),r??e.length),this.values=e;}getValueFromBuffer(t){return this.values[t];}},Ce;(function(t){t[t.STRING=1]="STRING",t[t.INT32=2]="INT32",t[t.UINT32=4]="UINT32",t[t.INT64=8]="INT64",t[t.UINT64=16]="UINT64",t[t.FLOAT=32]="FLOAT",t[t.DOUBLE=64]="DOUBLE",t[t.PRESENCE=128]="PRESENCE";})(Ce||={});var lr;(function(t){t[t.FALSE=0]="FALSE",t[t.TRUE=1]="TRUE",t[t.START_MAP=2]="START_MAP",t[t.START_LIST=3]="START_LIST",t[t.COUNT=4]="COUNT";})(lr||={});function w6(t,e,r,i){let n=D6(r);if(i===0)return n.map(h=>new Hc(h,[]));let a=_6(t,e,i),s=(a.presentStream?a.presentCount:a.lengthStream.length)/n.length,o=[],l=0,u=0;for(let h=0;h<n.length;h++){let c=T6(a,h,s,l,u);o.push(new Hc(n[h],c.value,c.nullabilityBuffer)),l=c.countsEnd,u=c.valuesEnd;}return o;}function D6(t){let e=t.type==="complexType"?t.complexType.children:void 0;return!e||e.length===0?[t.name]:e.map(r=>t.name+(r.name??""));}function _6(t,e,r){let i=t[e.get()];e.add(1);let n=zt(t,e,ht(t,e)),a=r-1,s=[];i&Ce.STRING&&(a-=A6(t,e,s)),a-=S6(t,e,i,s),a-=E6(t,e,i,s);let o,l=0;if(i&Ce.PRESENCE){let h=F6(t,e);o=h.value,l=h.count,a--;}let u=new Uint32Array();if(a>0&&(u=zt(t,e,ht(t,e)),a--),a!==0)throw Error(`Unexpected number of remaining streams while decoding map column: ${a}`);return{lengthStream:n,dictionary:s,presentStream:o,presentCount:l,flattenedValues:u};}function A6(t,e,r){let i=t[e.get()];e.add(1);let n=zy("",t,e,i);if(n)for(let a=0;a<n.size;a++)r.push(n.getValue(a));return i;}function S6(t,e,r,i){let n=0;return r&Ce.INT32?(Ur(i,Da(t,e,ht(t,e))),n++):r&Ce.INT64&&(Ur(i,Dy(t,e,ht(t,e))),n++),r&Ce.UINT32?(Ur(i,zt(t,e,ht(t,e))),n++):r&Ce.UINT64&&(Ur(i,vu(t,e,ht(t,e))),n++),n;}function E6(t,e,r,i){let n=0;return r&Ce.FLOAT&&(Ur(i,xy(t,e,ht(t,e).numValues)),n++),r&Ce.DOUBLE&&(Ur(i,vy(t,e,ht(t,e).numValues)),n++),n;}function F6(t,e){let r=ht(t,e);if(r.physicalStreamType!==St.PRESENT)throw Error(`Expected PRESENT stream for map column but found: ${r.physicalStreamType}`);let i=r.numValues,n=e.get(),a=new he(oi(t,i,r.byteLength,e),i);return e.set(n+r.byteLength),{value:a,count:i};}function T6(t,e,r,i,n){let{lengthStream:a,flattenedValues:s,presentStream:o,dictionary:l}=t,u=e*r,h=r,c;if(o){c=new he(new Uint8Array(Math.ceil(r/8)),r),h=0;for(let x=0;x<r;x++)o.get(u+x)&&(c.set(x,!0),h++);}let p=i+h;if(p>a.length)throw Error("Merged map counts underflow while decoding child streams");let f=Array(r),d=i,y=n;for(let x=0;x<r;x++){if(o&&!o.get(u+x)){f[x]=null;continue;}let b=y+a[d++];if(b>s.length)throw Error("Map value stream underflow while decoding feature payload");let v=k6(s,y,b,l);f[x]=v.value,y=v.nextIndex;}let m=0;for(let x=i;x<p;x++)m+=a[x];let g=n+m;if(y!==g)throw Error("Unused flattened map values remain after decode");return{value:f,nullabilityBuffer:c,countsEnd:p,valuesEnd:g};}function k6(t,e,r,i){return r-e===1||t[e]===lr.START_LIST?Du(t,e,r,i):Ly(t,e,r,i);}function Ly(t,e,r,i){let n=Object.create(null),a=e;for(;a<r;){let s=Vy(t[a++],i);if(typeof s!="string")throw Error(`Map key dictionary index does not resolve to a string: ${s}`);let o=Du(t,a,r,i);n[s]=o.value,a=o.nextIndex;}return{value:n,nextIndex:a};}function Du(t,e,r,i){if(e>=r)throw Error("Unexpected end of map value stream");let n=t[e];if(n===lr.FALSE)return{value:!1,nextIndex:e+1};if(n===lr.TRUE)return{value:!0,nextIndex:e+1};if(n===lr.START_MAP){let a=Kc(t,e,r);return{value:Ly(t,e+2,a,i).value,nextIndex:a};}if(n===lr.START_LIST){let a=Kc(t,e,r),s=[],o=e+2;for(;o<a;){let l=Du(t,o,a,i);s.push(l.value),o=l.nextIndex;}return{value:s,nextIndex:a};}return{value:Vy(n,i),nextIndex:e+1};}function Kc(t,e,r){if(e+1>=r)throw Error("Missing length for nested map/list payload");let i=t[e+1];if(i<2)throw Error(`Invalid nested payload length: ${i}`);let n=e+i;if(n>r)throw Error("Nested payload exceeds containing payload bounds");return n;}function Vy(t,e){let r=t-lr.COUNT;if(r<0||r>=e.length)throw Error(`Scalar dictionary index out of range: ${t}`);return e[r];}function Ur(t,e){for(let r of e)t.push(r);}function I6(t,e,r,i,n,a){return r.type==="scalarType"?a&&!a.has(r.name)?(gy(i,t,e),null):C6(i,t,e,n,r.scalarType,r):r.complexType?.physicalType===Ze.MAP?w6(t,e,r,i):i===0?null:b6(t,e,r,a);}function C6(t,e,r,i,n,a){let s;if(t===0)return null;if(a.nullable){let l=ht(e,r),u=l.numValues,h=r.get(),c=oi(e,u,l.byteLength,r);r.set(h+l.byteLength),s=new he(c,l.numValues);}let o=s??i;switch(n.physicalType){case rt.UINT_32:case rt.INT_32:return L6(e,r,a,n,o);case rt.STRING:{let l=a.nullable?t-1:t;return zy(a.name,e,r,l,s)??null;}case rt.BOOLEAN:return M6(e,r,a,i,o);case rt.UINT_64:case rt.INT_64:return z6(e,r,a,o,n);case rt.FLOAT:return B6(e,r,a,o);case rt.DOUBLE:return P6(e,r,a,o);default:throw Error(`The specified data type for the field is currently not supported: ${n}`);}}function M6(t,e,r,i,n){let a=ht(t,e),s=a.numValues,o=e.get(),l=vn(n)?n:void 0,u=oi(t,s,a.byteLength,e,l);e.set(o+a.byteLength);let h=new he(u,s);return new f6(r.name,h,n);}function B6(t,e,r,i){let n=ht(t,e),a=vn(i)?i:void 0,s=xy(t,e,n.numValues,a);return new d6(r.name,s,i);}function P6(t,e,r,i){let n=ht(t,e),a=vn(i)?i:void 0,s=vy(t,e,n.numValues,a);return new uu(r.name,s,i);}function z6(t,e,r,i,n){let a=ht(t,e),s=Wa(a,i,t,e,"int64"),o=n.physicalType===rt.INT_64;if(s===ut.FLAT){let u=vn(i)?i:void 0,h=o?Dy(t,e,a,u):vu(t,e,a,u);return new Ey(r.name,h,i);}if(s===ut.SEQUENCE){let u=wy(t,e,a);return new Fy(r.name,u[0],u[1],a.numRleValues,o);}let l=o?W3(t,e,a):_y(t,e,a);return new By(r.name,l,i,o);}function L6(t,e,r,i,n){let a=ht(t,e),s=Wa(a,n,t,e),o=i.physicalType===rt.INT_32;if(s===ut.FLAT){let u=vn(n)?n:void 0,h=o?Da(t,e,a,void 0,u):zt(t,e,a,void 0,u);return new lu(r.name,h,n);}if(s===ut.SEQUENCE){let u=by(t,e,a);return new hu(r.name,u[0],u[1],a.numRleValues,o);}let l=o?G3(t,e,a):xu(t,e,a);return new cu(r.name,l,n,o);}function vn(t){return t instanceof he;}var kt={ID:0,ID_NULLABLE:1,ID_LONG:2,GEOMETRY:4,SCALAR_BASE:10,STRUCT:30,MAP:31};function Oy(t){switch(t){case kt.ID:case kt.ID|kt.ID_NULLABLE:case kt.ID|kt.ID_LONG:case kt.ID|kt.ID_LONG|kt.ID_NULLABLE:return{nullable:(t&kt.ID_NULLABLE)!==0,columnScope:Oi.FEATURE,type:"scalarType",scalarType:{longID:(t&kt.ID_LONG)!==0,type:"logicalType",logicalType:cy.ID}};case kt.GEOMETRY:return{nullable:!1,columnScope:Oi.FEATURE,type:"complexType",complexType:{type:"physicalType",physicalType:Ze.GEOMETRY,children:[]}};case kt.STRUCT:return{nullable:!1,columnScope:Oi.FEATURE,type:"complexType",complexType:{type:"physicalType",physicalType:Ze.STRUCT,children:[]}};case kt.MAP:return{nullable:!0,columnScope:Oi.FEATURE,type:"complexType",complexType:{type:"physicalType",physicalType:Ze.MAP,children:[]}};default:return N6(t);}}function V6(t){return t>=kt.SCALAR_BASE;}function Ry(t){return t===kt.STRUCT||t===kt.MAP;}function O6(t){if(t.type==="scalarType"){let e=t.scalarType;if(e.type==="physicalType")switch(e.physicalType){case rt.BOOLEAN:case rt.INT_8:case rt.UINT_8:case rt.INT_32:case rt.UINT_32:case rt.INT_64:case rt.UINT_64:case rt.FLOAT:case rt.DOUBLE:return!1;case rt.STRING:return!0;default:return!1;}if(e.type==="logicalType")return!1;}else if(t.type==="complexType"){let e=t.complexType;if(e.type==="physicalType")switch(e.physicalType){case Ze.GEOMETRY:case Ze.STRUCT:case Ze.MAP:return!0;default:return!1;}}return console.warn("Unexpected column type in hasStreamCount",t),!1;}function R6(t){return t.type==="scalarType"&&t.scalarType?.type==="logicalType"&&t.scalarType.logicalType===cy.ID;}function $6(t){return t.type==="complexType"&&t.complexType?.type==="physicalType"&&t.complexType.physicalType===Ze.GEOMETRY;}function N6(t){let e;switch(t){case 10:case 11:e=rt.BOOLEAN;break;case 12:case 13:e=rt.INT_8;break;case 14:case 15:e=rt.UINT_8;break;case 16:case 17:e=rt.INT_32;break;case 18:case 19:e=rt.UINT_32;break;case 20:case 21:e=rt.INT_64;break;case 22:case 23:e=rt.UINT_64;break;case 24:case 25:e=rt.FLOAT;break;case 26:case 27:e=rt.DOUBLE;break;case 28:case 29:e=rt.STRING;break;default:return null;}return{nullable:!!(t&1),columnScope:Oi.FEATURE,type:"scalarType",scalarType:{longID:!1,type:"physicalType",physicalType:e}};}var U6=new TextDecoder(),Jc="0-3(ID), 4(GEOMETRY), 10-29(scalars), 30(STRUCT), 31(MAP)";function _u(t,e){let r=Ot(t,e,1)[0];if(r===0)return"";let i=e.get(),n=i+r,a=t.subarray(i,n);return e.add(r),U6.decode(a);}function q6(t){let e=t.name,r=t.nullable;return t.type==="scalarType"?{type:"scalarField",scalarField:t.scalarType,name:e,nullable:r}:{type:"complexField",complexField:t.complexType,name:e,nullable:r};}function $y(t,e){let r=Ot(t,e,1)[0]>>>0,i=r>=kt.SCALAR_BASE?Oy(r):null;if(!i)throw Error(`Unsupported field type code ${r}. Supported: 10-29(scalars), 30(STRUCT), 31(MAP)`);let n={...i,name:_u(t,e)};if(n.type==="complexType"&&Ry(r)){let a=n.complexType,s=Ot(t,e,1)[0]>>>0;a.children=Array(s);for(let o=0;o<s;o++)a.children[o]=$y(t,e);}return q6(n);}function j6(t,e){let r=Ot(t,e,1)[0]>>>0,i=Oy(r);if(!i)throw Error(`Unsupported column type code ${r}. Supported: ${Jc}`);let n;if(V6(r))n=_u(t,e);else if(r<kt.GEOMETRY)n="id";else if(r===kt.GEOMETRY)n="geometry";else throw Error(`Unsupported column type code ${r}. Supported: ${Jc}`);let a={...i,name:n};if(a.type==="complexType"&&Ry(r)){let s=Ot(t,e,1)[0]>>>0,o=a.complexType;o.children=Array(s);for(let l=0;l<s;l++)o.children[l]=$y(t,e);}return a;}function G6(t,e){let r={};r.featureTables=[];let i={};if(i.name=_u(t,e),i.name.length===0)throw Error("Missing layer name");let n=Ot(t,e,1)[0]>>>0,a=Ot(t,e,1)[0]>>>0;i.columns=Array(a);for(let s=0;s<a;s++)i.columns[s]=j6(t,e);return r.featureTables.push(i),[r,n];}function X6(t,e,r=!0){let i=new py(0),n=[];for(;i.get()<t.length;){let a=Ot(t,i,1)[0]>>>0,s=i.get()+a;if(s>t.length)throw Error(`Block overruns tile: ${s} > ${t.length}`);let o=Ot(t,i,1)[0]>>>0;if(o!==1&&o!==2){i.set(s);continue;}let[l,u]=G6(t,i),h=l.featureTables[0],c=null,p=null,f=[],d=0;for(let m of h.columns){let g=m.name;if(R6(m)){let x=null;if(m.nullable){let v=ht(t,i),w=i.get(),_=oi(t,v.numValues,v.byteLength,i);i.set(w+v.byteLength),x=new he(_,v.numValues);}let b=ht(t,i);d=x?x.size():b.decompressedCount,c=Y6(t,m,i,g,b,x??d,r);}else if($6(m)){let x=Ot(t,i,1)[0];if(d===0){let b=i.get();d=ht(t,i).decompressedCount,i.set(b);}e&&(e.scale=e.extent/u),p=h6(t,x,i,d,e);}else{let x=O6(m)?Ot(t,i,1)[0]:1;if(x===0)continue;let b=I6(t,i,m,x,d,void 0);if(b)if(Array.isArray(b))for(let v of b)f.push(v);else f.push(b);}}let y=new mw(h.name,p,c,f,u);n.push(y),i.set(s);}return n;}function Y6(t,e,r,i,n,a,s=!1){let o=e.scalarType?.longID?rt.UINT_64:rt.UINT_32,l=typeof a=="number"?void 0:a,u=Wa(n,a,t,r,o===rt.UINT_64?"int64":"int32");if(o===rt.UINT_32)switch(u){case ut.FLAT:return new lu(i,zt(t,r,n,void 0,l),a);case ut.SEQUENCE:{let h=by(t,r,n);return new hu(i,h[0],h[1],n.numRleValues,!1);}case ut.CONST:return new cu(i,xu(t,r,n),a,!1);}switch(u){case ut.FLAT:return s?new uu(i,X3(t,r,n,l),a):new Ey(i,vu(t,r,n,l),a);case ut.SEQUENCE:{let h=wy(t,r,n);return new Fy(i,h[0],h[1],n.numRleValues,!1);}case ut.CONST:return new By(i,_y(t,r,n),a,!1);}throw Error("Vector type not supported for id column.");}var Gs=fy(fu);Gs/32*4,3*Gs/256+Gs|0;var W6=class{constructor(t,e){switch(this._featureData=t,this.properties=this._featureData.properties||{},this._featureData.geometry?.type){case Vt.POINT:case Vt.MULTIPOINT:this.type=1;break;case Vt.LINESTRING:case Vt.MULTILINESTRING:this.type=2;break;case Vt.POLYGON:case Vt.MULTIPOLYGON:this.type=3;break;default:this.type=0;}this.extent=e,this.id=Number(this._featureData.id);}loadGeometry(){let t=[];for(let e of this._featureData.geometry.coordinates){let r=[];for(let i of e)r.push(new M(i.x,i.y));t.push(r);}return t;}},Z6=class{constructor(t){this.features=[],this.featureTable=t,this.name=t.name,this.extent=t.extent,this.version=2,this.features=t.getFeatures(),this.length=this.features.length;}feature(t){return new W6(this.features[t],this.extent);}},Au=class{constructor(t){this.layers={};let e=X6(new Uint8Array(t));this.layers=e.reduce((r,i)=>({...r,[i.name]:new Z6(i)}),{});}},Su=class{constructor(t,e){this.tileID=t,this.x=t.canonical.x,this.y=t.canonical.y,this.z=t.canonical.z,this.grid=new ao(mt,16,0),this.grid3D=new ao(mt,16,0),this.featureIndexArray=new Xf(),this.promoteId=e;}insert(t,e,r,i,n,a){let s=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(r,i,n);let o=a?this.grid3D:this.grid;for(let l of e){let u=[1/0,1/0,-1/0,-1/0];for(let h of l)u[0]=Math.min(u[0],h.x),u[1]=Math.min(u[1],h.y),u[2]=Math.max(u[2],h.x),u[3]=Math.max(u[3],h.y);u[0]<8192&&u[1]<8192&&u[2]>=0&&u[3]>=0&&o.insert(s,u[0],u[1],u[2],u[3]);}}loadVTLayers(){return this.vtLayers||(this.encoding==="mlt"?this.vtLayers=new Au(this.rawTileData).layers:this.vtLayers=new Ul(new eu(this.rawTileData)).layers,this.sourceLayerCoder=new ou(this.vtLayers?Object.keys(this.vtLayers).sort():[nl])),this.vtLayers;}query(t,e,r,i){this.loadVTLayers();let n=t.params,a=mt/t.tileSize/t.scale,s=ei(n.filter,"queryRenderedFeatures filter",n.globalState),o=t.queryGeometry,l=t.queryPadding*a,u=ba.fromPoints(o),h=this.grid.query(u.minX-l,u.minY-l,u.maxX+l,u.maxY+l),c=ba.fromPoints(t.cameraQueryGeometry).expandBy(l),p=this.grid3D.query(c.minX,c.minY,c.maxX,c.maxY,(y,m,g,x)=>dg(t.cameraQueryGeometry,y-l,m-l,g+l,x+l));for(let y of p)h.push(y);h.sort(K6);let f={},d;for(let y of h){if(y===d)continue;d=y;let m=this.featureIndexArray.get(y),g=null;this.loadMatchingFeature(f,m.bucketIndex,m.sourceLayerIndex,m.featureIndex,s,n.layers,n.availableImages,e,r,i,(x,b,v)=>(g||=vr(x),b.queryIntersectsFeature({queryGeometry:o,feature:x,featureState:v,geometry:g,zoom:this.z,transform:t.transform,pixelsToTileUnits:a,pixelPosMatrix:t.pixelPosMatrix,unwrappedTileID:this.tileID.toUnwrapped(),getElevation:t.getElevation})));}return f;}loadMatchingFeature(t,e,r,i,n,a,s,o,l,u,h){let c=this.bucketLayerIDs[e];if(a&&!c.some(y=>a.has(y)))return;let p=this.sourceLayerCoder.decode(r),f=this.vtLayers[p].feature(i);if(n.needGeometry){let y=si(f,!0);if(!n.filter(new at(this.tileID.overscaledZ),y,this.tileID.canonical))return;}else if(!n.filter(new at(this.tileID.overscaledZ),f))return;let d=this.getId(f,p);for(let y of c){if(a&&!a.has(y))continue;let m=o[y];if(!m)continue;let g={};d&&u&&(g=u.getState(m.sourceLayer||"_geojsonTileLayer",d));let x=Ut({},l[y]);x.paint=Qc(x.paint,m.paint,f,g,s),x.layout=Qc(x.layout,m.layout,f,g,s);let b=!h||h(f,m,g);if(!b)continue;let v=new yw(f,this.z,this.x,this.y,d);v.layer=x;let w=t[y];w===void 0&&(w=t[y]=[]),w.push({featureIndex:i,feature:v,intersectionZ:b});}}lookupSymbolFeatures(t,e,r,i,n,a,s,o){let l={};this.loadVTLayers();let u=ei(n.filterSpec,"queryRenderedFeatures symbol filter",n.globalState);for(let h of t)this.loadMatchingFeature(l,r,i,h,u,a,s,o,e);return l;}hasLayer(t){for(let e of this.bucketLayerIDs)for(let r of e)if(t===r)return!0;return!1;}getId(t,e){let r=t.id;if(this.promoteId){let i=typeof this.promoteId=="string"?this.promoteId:this.promoteId[e];r=t.properties[i],typeof r=="boolean"&&(r=Number(r)),r===void 0&&t.properties?.cluster&&this.promoteId&&(r=Number(t.properties.cluster_id));}return r;}};I("FeatureIndex",Su,{omit:["rawTileData","sourceLayerCoder"]});function H6(t){return typeof t=="object"&&!!t&&"evaluate"in t;}function Qc(t,e,r,i,n){return _a(t,(a,s)=>{let o=e instanceof $a?e.get(s):null;return H6(o)?o.evaluate(r,i,void 0,n):o;});}function K6(t,e){return e-t;}var Ny=class{constructor(t){this.maxEntries=t,this.map=new Map();}get(t){let e=this.map.get(t);return e!==void 0&&(this.map.delete(t),this.map.set(t,e)),e;}set(t,e){if(this.map.has(t))this.map.delete(t);else if(this.map.size>=this.maxEntries){let r=this.map.keys().next().value;this.map.delete(r);}this.map.set(t,e);}clear(){this.map.clear();}};function Eu(t){let e=typeof t;if(e==="number"||e==="boolean"||e==="string"||t==null)return JSON.stringify(t);if(Array.isArray(t)){let n="[";for(let a of t)n+=`${Eu(a)},`;return`${n}]`;}let r=Object.keys(t).sort(),i="{";for(let n=0;n<r.length;n++)i+=`${JSON.stringify(r[n])}:${Eu(t[r[n]])},`;return`${i}}`;}function J6(t){let e="";for(let r of pp)e+=`/${Eu(t[r])}`;return e;}function Q6(t,e){let r={};for(let n=0;n<t.length;n++){let a=e&&e[t[n].id]||J6(t[n]);e&&(e[t[n].id]=a);let s=r[a];s||=r[a]=[],s.push(t[n]);}let i=[];for(let n in r)i.push(r[n]);return i;}var t5=class{constructor(t,e){this.keyCache={},t&&this.replace(t,e);}replace(t,e){this._layerConfigs={},this._layers={},this.update(t,[],e);}update(t,e,r){for(let n of t){this._layerConfigs[n.id]=n;let a=this._layers[n.id]=sy(n,r);a._featureFilter=ei(a.filter,`layers[${n.id}].filter`,r),this.keyCache[n.id]&&delete this.keyCache[n.id];}for(let n of e)delete this.keyCache[n],delete this._layerConfigs[n],delete this._layers[n];this.familiesBySource={};let i=Q6(Object.values(this._layerConfigs),this.keyCache);for(let n of i){let a=n.map(c=>this._layers[c.id]),s=a[0];if(s.isHidden())continue;let o=s.source||"",l=this.familiesBySource[o];l||=this.familiesBySource[o]={};let u=s.sourceLayer||"_geojsonTileLayer",h=l[u];h||=l[u]=[],h.push(a);}}},jy=class{constructor(t){let e={},r=[];for(let s in t){let o=t[s],l=e[s]={};for(let u in o){let h=o[u];if(!h||h.bitmap.width===0||h.bitmap.height===0)continue;let c={x:0,y:0,w:h.bitmap.width+2,h:h.bitmap.height+2};r.push(c),l[u]={rect:c,metrics:h.metrics};}}let{w:i,h:n}=ru(r),a=new Ga({width:i||1,height:n||1});for(let s in t){let o=t[s];for(let l in o){let u=o[l];if(!u||u.bitmap.width===0||u.bitmap.height===0)continue;let h=e[s][l].rect;Ga.copy(u.bitmap,a,{x:0,y:0},{x:h.x+1,y:h.y+1},u.bitmap);}}this.image=a,this.positions=e;}};I("GlyphAtlas",jy);var Gy=class{constructor(t){this.tileID=new au(t.tileID.overscaledZ,t.tileID.wrap,t.tileID.canonical.z,t.tileID.canonical.x,t.tileID.canonical.y),this.uid=t.uid,this.zoom=t.zoom,this.pixelRatio=t.pixelRatio,this.tileSize=t.tileSize,this.source=t.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=t.showCollisionBoxes,this.collectResourceTiming=!!t.collectResourceTiming,this.returnDependencies=!!t.returnDependencies,this.promoteId=t.promoteId,this.inFlightDependencies=[];}async parse(t,e,r,i,n){this.data=t,this.collisionBoxArray=new Ml();let a=new ou(Object.keys(t.layers).sort()),s=new Su(this.tileID,this.promoteId);s.bucketLayerIDs=[];let o={},l={featureIndex:s,iconDependencies:{},patternDependencies:{},glyphDependencies:{},dashDependencies:{},availableImages:r,subdivisionGranularity:n},u=e.familiesBySource[this.source];for(let S in u){let F=t.layers[S];if(!F)continue;F.version===1&&Mt(`Vector tile source "${this.source}" layer "${S}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let z=a.encode(S),$=[];for(let B=0;B<F.length;B++){let P=F.feature(B),E=s.getId(P,S);$.push({feature:P,id:E,index:B,sourceLayerIndex:z});}for(let B of u[S]){let P=B[0];P.source!==this.source&&Mt(`layer.source = ${P.source} does not equal this.source = ${this.source}`),!P.isHidden(this.zoom,!0)&&(Uy(B,this.zoom,r),(o[P.id]=P.createBucket({index:s.bucketLayerIDs.length,layers:B,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:z,sourceID:this.source})).populate($,l,this.tileID.canonical),s.bucketLayerIDs.push(B.map(E=>E.id)));}}let h=_a(l.glyphDependencies,S=>Object.keys(S));for(let S of this.inFlightDependencies)S?.abort();this.inFlightDependencies=[];let c=Promise.resolve({});if(Object.keys(h).length){let S=new AbortController();this.inFlightDependencies.push(S),c=i.sendAsync({type:"GG",data:{stacks:h,source:this.source,tileID:this.tileID,type:"glyphs"}},S);}let p=Object.keys(l.iconDependencies),f=Promise.resolve({});if(p.length){let S=new AbortController();this.inFlightDependencies.push(S),f=i.sendAsync({type:"GI",data:{icons:p,source:this.source,tileID:this.tileID,type:"icons"}},S);}let d=Object.keys(l.patternDependencies),y=Promise.resolve({});if(d.length){let S=new AbortController();this.inFlightDependencies.push(S),y=i.sendAsync({type:"GI",data:{icons:d,source:this.source,tileID:this.tileID,type:"patterns"}},S);}let m=l.dashDependencies,g=Promise.resolve({});if(Object.keys(m).length){let S=new AbortController();this.inFlightDependencies.push(S),g=i.sendAsync({type:"GDA",data:{dashes:m}},S);}let[x,b,v,w]=await Promise.all([c,f,y,g]),_=new jy(x),A=new iu(b,v);for(let S in o){let F=o[S];F.hasDependencies&&(Uy(F.layers,this.zoom,r),F.addFeatures({options:l,canonical:this.tileID.canonical,glyphMap:x,glyphPositions:_.positions,iconMap:b,iconPositions:A.iconPositions,patternMap:v,patternPositions:A.patternPositions,dashPositions:w,showCollisionBoxes:this.showCollisionBoxes}));}return{buckets:Object.values(o).filter(S=>!S.isEmpty()),featureIndex:s,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:_.image,imageAtlas:A,dashPositions:w,glyphMap:this.returnDependencies?x:null,iconMap:this.returnDependencies?b:null,glyphPositions:this.returnDependencies?_.positions:null};}};function Uy(t,e,r){let i=new at(e);for(let n of t)n.recalculate(i,r);}var Xy=class{constructor(){this.loading={},this.loaded={},this.parsing={};}startLoading(t,e){this.loading[t]=e;}finishLoading(t){delete this.loading[t];}abort(t){let e=this.loading[t];e?.abort&&(e.abort.abort(),delete this.loading[t]);}getParsing(t){return this.parsing[t];}setParsing(t,e){this.parsing[t]=e;}removeParsing(t){delete this.parsing[t];}markLoaded(t,e){this.loaded[t]=e;}getLoaded(t){let e=this.loaded[t];if(e)return e;}removeLoaded(t){delete this.loaded[t];}clearLoaded(){this.loaded={};}},Yy=class{constructor(t){this.start=`${t}#start`,this.end=`${t}#end`,this.measure=t,performance.mark(this.start);}finish(){performance.mark(this.end);let t=performance.getEntriesByName(this.measure);return t.length===0&&(performance.measure(this.measure,this.start,this.end),t=performance.getEntriesByName(this.measure),performance.clearMarks(this.start),performance.clearMarks(this.end),performance.clearMeasures(this.measure)),t;}},e5=class{constructor(t,e,r,i,n){this.type=t,this.properties=r||{},this.extent=n,this.pointsArray=e,this.id=i;}loadGeometry(){return this.pointsArray.map(t=>t.map(e=>new M(e.x,e.y)));}},r5=class{constructor(t,e,r){this.version=2,this._myFeatures=t,this.name=e,this.length=t.length,this.extent=r;}feature(t){return this._myFeatures[t];}},i5=class{constructor(){this.layers={};}addLayer(t){this.layers[t.name]=t;}};function n5(t,e,r){let{extent:i}=t,n=2**(r.z-e.z),a=(r.x-e.x*n)*i,s=(r.y-e.y*n)*i,o=[];for(let l=0;l<t.length;l++){let u=t.feature(l),h=u.loadGeometry();for(let c of h)for(let p of c)p.x=p.x*n-a,p.y=p.y*n-s;h=ty(h,u.type,-128,-128,i+128,i+128),h.length!==0&&o.push(new e5(u.type,h,u.properties,u.id,i));}return new r5(o,t.name,i);}var a5=class{constructor(t,e,r){this.actor=t,this.layerIndex=e,this.availableImages=r,this.tileState=new Xy(),this.overzoomedTileResultCache=new Ny(1e3);}loadVectorTile(t,e){try{return{vectorTile:t.encoding==="mlt"?new Au(e):new Ul(new eu(e)),rawData:e};}catch(r){let i=new Uint8Array(e),n=i[0]===31&&i[1]===139,a=`Unable to parse the tile at ${t.request.url}, `;throw a+=n?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${Xi(r).message}`,Error(a);}}async loadTile(t){let{uid:e,overzoomParameters:r}=t;r&&(t.request=r.overzoomRequest);let i=this._startRequestTiming(t),n=new Gy(t);this.tileState.startLoading(e,n);let a=new AbortController();n.abort=a;try{let s=await up(t.request,a);if(t.etag&&t.etag===s.etag)return this.tileState.finishLoading(e),this._getEtagUnmodifiedResult(s,i);let o=this.loadVectorTile(t,s.data);if(this.tileState.finishLoading(e),!o)return null;let{vectorTile:l,rawData:u}=o;r&&({vectorTile:l,rawData:u}=this._getOverzoomTile(t,l));let h=this._getExpiryData(s),c=this._finishRequestTiming(i);n.vectorTile=l,n.etag=s.etag,this.tileState.markLoaded(e,n);let p={rawData:u,cacheControl:h,resourceTiming:c};return this.tileState.setParsing(e,p),await this._parseWorkerTile(n,t);}catch(s){throw this.tileState.finishLoading(e),this.tileState.markLoaded(e,n),s;}}_getEtagUnmodifiedResult(t,e){let r=this._getExpiryData(t),i=this._finishRequestTiming(e);return Ut({etagUnmodified:!0},r,i);}async _parseWorkerTile(t,e){let r=this.tileState.getParsing(t.uid),i=await t.parse(t.vectorTile,this.layerIndex,this.availableImages,this.actor,e.subdivisionGranularity);if(r){let{rawData:n,cacheControl:a,resourceTiming:s}=r,o=e.overzoomParameters?"mvt":e.encoding;i=Ut({rawTileData:n.slice(0),encoding:o},i,a,s),this.tileState.removeParsing(t.uid);}else t.etag&&(i=Ut(i,{etag:t.etag}));return i;}_getExpiryData({expires:t,cacheControl:e,etag:r}){let i={};return t&&(i.expires=t),e&&(i.cacheControl=e),r&&(i.etag=r),i;}_startRequestTiming(t){if(t.request?.collectResourceTiming)return new Yy(t.request.url);}_finishRequestTiming(t){let e=t?.finish();return e?{resourceTiming:JSON.parse(JSON.stringify(e))}:{};}_getOverzoomTile(t,e){let{tileID:r,source:i,overzoomParameters:n}=t,{maxZoomTileID:a}=n,s=`${a.key}_${r.key}_${t.request?.url}`,o=this.overzoomedTileResultCache.get(s);if(o)return o;let l=new i5(),u=this.layerIndex.familiesBySource[i];for(let c in u){let p=e.layers[c];if(!p)continue;let f=n5(p,a,r.canonical);f.length>0&&l.addLayer(f);}let h={vectorTile:l,rawData:su(l).buffer};return this.overzoomedTileResultCache.set(s,h),h;}async reloadTile(t){let e=t.uid,r=this.tileState.getLoaded(e);if(!r)throw Error("Should not be trying to reload a tile that was never loaded or has been removed");if(r.vectorTile)return r.showCollisionBoxes=t.showCollisionBoxes,await this._parseWorkerTile(r,t);}async abortTile(t){this.tileState.abort(t.uid);}async removeTile(t){this.tileState.removeLoaded(t.uid);}},s5=class{constructor(){this.loaded={};}async loadTile(t){let{uid:e,encoding:r,rawImageData:i,redFactor:n,greenFactor:a,blueFactor:s,baseShift:o}=t,l=i.width+4,u=i.height+4,h=Aa(i)?new Yt({width:l,height:u},await np(i,-2,-2,l,u)):i,c=new $l(e,h,r,n,a,s,o);return this.loaded||={},this.loaded[e]=c,c;}removeTile(t){let e=this.loaded,r=t.uid;e?.[r]&&delete e[r];}},o5=class{constructor(t,e,r,i=l5){this.actor=t,this.layerIndex=e,this.availableImages=r,this.tileState=new Xy(),this._createGeoJSONIndex=i;}loadVectorTile(t){if(!this._geoJSONIndex)throw Error("Unable to parse the data into a cluster or geojson");let{z:e,x:r,y:i}=t.tileID.canonical,n=this._geoJSONIndex.getTile(e,r,i);if(!n)return null;let a=new uy(n.features,{version:2,extent:mt});return{vectorTile:a,rawData:su(a,ip).buffer};}async loadTile(t){let{uid:e}=t,r=new Gy(t);r.abort=new AbortController();try{let i=this.loadVectorTile(t);if(!i)return null;let{vectorTile:n,rawData:a}=i;r.vectorTile=n,this.tileState.markLoaded(e,r);let s={rawData:a};return this.tileState.setParsing(e,s),await this._parseWorkerTile(r,t);}catch(i){throw this.tileState.markLoaded(e,r),i;}}async _parseWorkerTile(t,e){let r=this.tileState.getParsing(t.uid),i=await t.parse(t.vectorTile,this.layerIndex,this.availableImages,this.actor,e.subdivisionGranularity);if(r){let{rawData:n}=r;i=Ut({rawTileData:n.slice(0),encoding:"mvt"},i),this.tileState.removeParsing(t.uid);}return i;}async abortTile(t){this.tileState.abort(t.uid);}async removeTile(t){this.tileState.removeLoaded(t.uid);}async loadData(t){this._pendingRequest?.abort();let e=this._startRequestTiming(t);this._pendingRequest=new AbortController();try{await this.loadAndProcessGeoJSON(t,this._pendingRequest),delete this._pendingRequest,this.tileState.clearLoaded();let r={};return t.request&&(r.data=t.data),this._finishRequestTiming(e,t,r),r;}catch(r){if(delete this._pendingRequest,!cl(r))throw r;return{abandoned:!0};}}_startRequestTiming(t){if(t.request?.collectResourceTiming)return new Yy(t.request.url);}_finishRequestTiming(t,e,r){let i=t?.finish();i&&(r.resourceTiming={[e.source]:JSON.parse(JSON.stringify(i))});}async reloadTile(t){let e=t.uid,r=this.tileState.getLoaded(e);if(!r)return await this.loadTile(t);if(r.vectorTile)return r.showCollisionBoxes=t.showCollisionBoxes,await this._parseWorkerTile(r,t);}async loadAndProcessGeoJSON(t,e){if(t.request&&(t.data=(await lp(t.request,e)).data),t.data){t.data=this._filterGeoJSON(t.data,t.filter,t.source),this._geoJSONIndex=this._createGeoJSONIndex(t.data,t);return;}if(t.dataDiff){this._geoJSONIndex??=this._createGeoJSONIndex({type:"FeatureCollection",features:[]},t),this._geoJSONIndex.updateData(t.dataDiff,this._getFilterPredicate(t.filter,t.source));return;}if(t.updateCluster&&this._geoJSONIndex.updateClusterOptions(t.geojsonVtOptions.cluster,Wy(t)),this._geoJSONIndex==null)throw Error(`Input data given to \'${t.source}\' is not a valid GeoJSON object.`);}_filterGeoJSON(t,e,r){if(t.type!=="FeatureCollection")return t;let i=this._getFilterPredicate(e,r);return i?{type:"FeatureCollection",features:t.features.filter(n=>i(n))}:t;}_getFilterPredicate(t,e){if(typeof t!="boolean"&&!t?.length)return;let r=Ke(t,`sources.${e}.filter`,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(r.result==="error")throw Error(r.value.map(i=>`${i.key}: ${i.message}`).join(", "));return i=>r.value.evaluate({zoom:0},i);}async removeSource(t){this._pendingRequest?.abort();}getClusterExpansionZoom(t){return this._geoJSONIndex.getClusterExpansionZoom(t.clusterId);}getClusterChildren(t){return this._geoJSONIndex.getClusterChildren(t.clusterId);}getClusterLeaves(t){return this._geoJSONIndex.getClusterLeaves(t.clusterId,t.limit,t.offset);}};function l5(t,e){let r=Ut(e.geojsonVtOptions||{},{updateable:!0,clusterOptions:Wy(e)});return new Id(t,r);}function Wy({geojsonVtOptions:t,clusterProperties:e,source:r}){if(!e||!t.clusterOptions)return t.clusterOptions;let i={},n={},a={accumulated:null,zoom:0},s={properties:null},o=Object.keys(e);for(let l of o){let[u,h]=e[l],c=Ke(h,`sources.${r}.clusterProperties.${l}[1]`),p=Ke(typeof u=="string"?[u,["accumulated"],["get",l]]:u,`sources.${r}.clusterProperties.${l}[0]`);i[l]=c.value,n[l]=p.value;}return t.clusterOptions.map=l=>{s.properties=l;let u={};for(let h of o)u[h]=i[h].evaluate(a,s);return u;},t.clusterOptions.reduce=(l,u)=>{s.properties=u;for(let h of o)a.accumulated=l[h],l[h]=n[h].evaluate(a,s);},t.clusterOptions;}async function qy(t){if(t.endsWith(".mjs")){await import(t);return;}let e=await fetch(t,{credentials:"same-origin"});if(!e.ok)throw Error(`Failed to load ${t}: ${e.status}`);let r=await e.text();if(/^[ \\t]*(import|export)\\s/m.test(r)){let i=URL.createObjectURL(new Blob([r],{type:"text/javascript"}));try{await import(i);}finally{URL.revokeObjectURL(i);}return;}globalThis.eval(r);}var u5=class{constructor(t){this.self=t,this.actor=new oy(t),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.globalStates=new Map(),this.self.registerWorkerSource=(e,r)=>{if(this.externalWorkerSourceTypes[e])throw Error(`Worker source with name "${e}" already registered.`);this.externalWorkerSourceTypes[e]=r;},this.self.addProtocol=ap,this.self.removeProtocol=sp,this.self.registerRTLTextPlugin=e=>{mr.setMethods(e);},this.self.makeRequest=Sa,this.actor.registerMessageHandler("LDT",(e,r)=>this._getDEMWorkerSource(e,r.source).loadTile(r)),this.actor.registerMessageHandler("RDT",async(e,r)=>{this._getDEMWorkerSource(e,r.source).removeTile(r);}),this.actor.registerMessageHandler("GCEZ",async(e,r)=>this._getWorkerSource(e,r.type,r.source).getClusterExpansionZoom(r)),this.actor.registerMessageHandler("GCC",async(e,r)=>this._getWorkerSource(e,r.type,r.source).getClusterChildren(r)),this.actor.registerMessageHandler("GCL",async(e,r)=>this._getWorkerSource(e,r.type,r.source).getClusterLeaves(r)),this.actor.registerMessageHandler("LD",(e,r)=>this._getWorkerSource(e,r.type,r.source).loadData(r)),this.actor.registerMessageHandler("LT",(e,r)=>this._getWorkerSource(e,r.type,r.source).loadTile(r)),this.actor.registerMessageHandler("RT",(e,r)=>this._getWorkerSource(e,r.type,r.source).reloadTile(r)),this.actor.registerMessageHandler("AT",(e,r)=>this._getWorkerSource(e,r.type,r.source).abortTile(r)),this.actor.registerMessageHandler("RMT",(e,r)=>this._getWorkerSource(e,r.type,r.source).removeTile(r)),this.actor.registerMessageHandler("RS",async(e,r)=>{if(!this.workerSources[e]?.[r.type]?.[r.source])return;let i=this.workerSources[e][r.type][r.source];delete this.workerSources[e][r.type][r.source],i.removeSource!==void 0&&i.removeSource(r);}),this.actor.registerMessageHandler("RM",async e=>{delete this.layerIndexes[e],delete this.availableImages[e],delete this.workerSources[e],delete this.demWorkerSources[e],this.globalStates.delete(e);}),this.actor.registerMessageHandler("SR",async(e,r)=>{this.referrer=r;}),this.actor.registerMessageHandler("SRPS",(e,r)=>this._syncRTLPluginState(e,r)),this.actor.registerMessageHandler("IS",async(e,r)=>{await qy(r);}),this.actor.registerMessageHandler("SI",(e,r)=>this._setImages(e,r)),this.actor.registerMessageHandler("UL",async(e,r)=>{this._getLayerIndex(e).update(r.layers,r.removedIds,this._getGlobalState(e));}),this.actor.registerMessageHandler("UGS",async(e,r)=>{let i=this._getGlobalState(e);for(let n in r)i[n]=r[n];}),this.actor.registerMessageHandler("SL",async(e,r)=>{this._getLayerIndex(e).replace(r,this._getGlobalState(e));});}_getGlobalState(t){let e=this.globalStates.get(t);return e||(e={},this.globalStates.set(t,e)),e;}async _setImages(t,e){this.availableImages[t]=e;for(let r in this.workerSources[t]){let i=this.workerSources[t][r];for(let n in i)i[n].availableImages=e;}}async _syncRTLPluginState(t,e){return await mr.syncState(e,qy);}_getAvailableImages(t){let e=this.availableImages[t];return e||=[],e;}_getLayerIndex(t){let e=this.layerIndexes[t];return e||=this.layerIndexes[t]=new t5(),e;}_getWorkerSource(t,e,r){if(this.workerSources[t]||={},this.workerSources[t][e]||={},!this.workerSources[t][e][r]){let i={sendAsync:(n,a)=>(n.targetMapId=t,this.actor.sendAsync(n,a))};switch(e){case"vector":this.workerSources[t][e][r]=new a5(i,this._getLayerIndex(t),this._getAvailableImages(t));break;case"geojson":this.workerSources[t][e][r]=new o5(i,this._getLayerIndex(t),this._getAvailableImages(t));break;default:this.workerSources[t][e][r]=new this.externalWorkerSourceTypes[e](i,this._getLayerIndex(t),this._getAvailableImages(t));}}return this.workerSources[t][e][r];}_getDEMWorkerSource(t,e){return this.demWorkerSources[t]||={},this.demWorkerSources[t][e]||=new s5(),this.demWorkerSources[t][e];}};cr(self)&&(self.worker=new u5(self));})();/*! Bundled license information:\n\nmaplibre-gl/dist/maplibre-gl-shared.mjs:\nmaplibre-gl/dist/maplibre-gl-worker.mjs:\n (**\n * MapLibre GL JS\n * @license 3-Clause BSD. Full text of license: https://github.com/maplibre/maplibre-gl-js/blob/v6.10.0/LICENSE.txt\n *)\n*/';
1676
+
1677
+ // src/Map/PureMap/mapWorker.ts
1678
+ var workerUrl;
1679
+ var ensureMapWorkerConfigured = () => {
1680
+ if (workerUrl) {
1681
+ return;
1682
+ }
1683
+ const blob = new Blob([maplibreWorkerBundle_default], { type: "text/javascript" });
1684
+ workerUrl = `${URL.createObjectURL(blob)}#maplibre-worker.cjs`;
1685
+ (0, maplibre_gl_exports.setWorkerUrl)(workerUrl);
1686
+ };
1687
+
1685
1688
  // src/Map/PureMap/MarkerLayer.tsx
1686
1689
  var svgFocusStyle = styled_components_exports.css`
1687
1690
  &:focus {
@@ -2076,35 +2079,67 @@ var Choropleth = react_exports.memo(
2076
2079
  const [mouseLng, setmouseLng] = react_exports.useState(centroidLng != null ? centroidLng : 0);
2077
2080
  const markerId = react_exports.useMemo(() => `choropleth-${shapeId}`, [shapeId]);
2078
2081
  const { activeChoroplethId, setActiveChoroplethId, setActiveTooltipId } = useMapContext();
2082
+ const pendingRetryRef = react_exports.useRef(null);
2083
+ const cancelPendingRetry = react_exports.useCallback(() => {
2084
+ var _a;
2085
+ if (pendingRetryRef.current) {
2086
+ (_a = map.current) == null ? void 0 : _a.off("styledata", pendingRetryRef.current);
2087
+ pendingRetryRef.current = null;
2088
+ }
2089
+ }, [map]);
2079
2090
  const updateLayers = react_exports.useCallback(() => {
2091
+ cancelPendingRetry();
2080
2092
  cleanupChoropleth(shapeId, sourceId, strokeId, map);
2081
- map.current.addSource(sourceId, {
2082
- type: "geojson",
2083
- data: formattedGeomData
2084
- });
2085
- map.current.addLayer({
2086
- id: shapeId,
2087
- type: "fill",
2088
- source: sourceId,
2089
- layout: {},
2090
- paint: {
2091
- "fill-opacity": opacity,
2092
- "fill-color": color
2093
- }
2094
- });
2095
- if (strokeColor !== "transparent") {
2093
+ try {
2094
+ map.current.addSource(sourceId, {
2095
+ type: "geojson",
2096
+ data: formattedGeomData
2097
+ });
2096
2098
  map.current.addLayer({
2097
- id: strokeId,
2098
- type: "line",
2099
+ id: shapeId,
2100
+ type: "fill",
2099
2101
  source: sourceId,
2100
2102
  layout: {},
2101
2103
  paint: {
2102
- "line-color": strokeColor,
2103
- "line-width": 1
2104
+ "fill-opacity": opacity,
2105
+ "fill-color": color
2104
2106
  }
2105
2107
  });
2108
+ if (strokeColor && strokeColor !== "transparent") {
2109
+ map.current.addLayer({
2110
+ id: strokeId,
2111
+ type: "line",
2112
+ source: sourceId,
2113
+ layout: {},
2114
+ paint: {
2115
+ "line-color": strokeColor,
2116
+ "line-width": 1
2117
+ }
2118
+ });
2119
+ }
2120
+ } catch (err) {
2121
+ if (err instanceof Error && err.message === "Style is not done loading.") {
2122
+ const retry = () => {
2123
+ pendingRetryRef.current = null;
2124
+ updateLayers();
2125
+ };
2126
+ pendingRetryRef.current = retry;
2127
+ map.current.once("styledata", retry);
2128
+ return;
2129
+ }
2130
+ throw err;
2106
2131
  }
2107
- }, [shapeId, sourceId, strokeId, map, formattedGeomData, color, opacity, strokeColor]);
2132
+ }, [
2133
+ shapeId,
2134
+ sourceId,
2135
+ strokeId,
2136
+ map,
2137
+ formattedGeomData,
2138
+ color,
2139
+ opacity,
2140
+ strokeColor,
2141
+ cancelPendingRetry
2142
+ ]);
2108
2143
  const registerEventHandlers = react_exports.useCallback(() => {
2109
2144
  var _a;
2110
2145
  const layer = (_a = map.current) == null ? void 0 : _a.getLayer(shapeId);
@@ -2154,7 +2189,13 @@ var Choropleth = react_exports.memo(
2154
2189
  map.current.setPaintProperty(shapeId, "fill-opacity", opacity * 0.3);
2155
2190
  }
2156
2191
  }, [activeChoroplethId, shapeId, opacity, map]);
2157
- react_exports.useEffect(() => () => cleanupChoropleth(shapeId, sourceId, strokeId, map), []);
2192
+ react_exports.useEffect(
2193
+ () => () => {
2194
+ cancelPendingRetry();
2195
+ cleanupChoropleth(shapeId, sourceId, strokeId, map);
2196
+ },
2197
+ []
2198
+ );
2158
2199
  if (isThemeChanged) {
2159
2200
  updateLayers();
2160
2201
  }
@@ -2267,7 +2308,7 @@ var ChoroplethLayer = (props) => {
2267
2308
  );
2268
2309
  const { handleKeyDown, handleFocus, handleBlur, setElementRef } = useRovingTabindex(map);
2269
2310
  const areaIdSliced = (_h = (_g = choroplethLayer == null ? void 0 : choroplethLayer.areaIds) == null ? void 0 : _g.slice(0, limit)) != null ? _h : [];
2270
- const uniqueAreaIdSliced = (0, lodash_exports.uniq)(areaIdSliced).length !== areaIdSliced.length ? areaIdSliced.map((id, i) => `${id}${i}`) : areaIdSliced;
2311
+ const uniqueAreaIdSliced = (0, lodash_exports.uniq)(areaIdSliced).length === areaIdSliced.length ? areaIdSliced : areaIdSliced.map((id, i) => `${id}${i}`);
2271
2312
  const additionalFields = (choroplethLayer == null ? void 0 : choroplethLayer.metadata) ? choroplethLayer.metadata.map((choroplethMetadata) => {
2272
2313
  if (choroplethLayer.additionalTooltipFields) {
2273
2314
  return choroplethLayer.additionalTooltipFields.map((field) => ({
@@ -2324,27 +2365,27 @@ var Message_exports = {};
2324
2365
  __export(Message_exports, {
2325
2366
  default: () => Message_default
2326
2367
  });
2327
- var defaultImport27 = __toESM(require("@splunk/visualizations-shared/Message"));
2368
+ var defaultImport26 = __toESM(require("@splunk/visualizations-shared/Message"));
2328
2369
  __reExport(Message_exports, require("@splunk/visualizations-shared/Message"));
2329
- var Message_default = "default" in defaultImport27 ? defaultImport27.default : defaultImport27;
2370
+ var Message_default = "default" in defaultImport26 ? defaultImport26.default : defaultImport26;
2330
2371
 
2331
2372
  // esm-externals:@splunk/visualization-context/GeoRegistry
2332
2373
  var GeoRegistry_exports = {};
2333
2374
  __export(GeoRegistry_exports, {
2334
2375
  default: () => GeoRegistry_default
2335
2376
  });
2336
- var defaultImport28 = __toESM(require("@splunk/visualization-context/GeoRegistry"));
2377
+ var defaultImport27 = __toESM(require("@splunk/visualization-context/GeoRegistry"));
2337
2378
  __reExport(GeoRegistry_exports, require("@splunk/visualization-context/GeoRegistry"));
2338
- var GeoRegistry_default = "default" in defaultImport28 ? defaultImport28.default : defaultImport28;
2379
+ var GeoRegistry_default = "default" in defaultImport27 ? defaultImport27.default : defaultImport27;
2339
2380
 
2340
2381
  // esm-externals:@splunk/visualization-context/GeoJsonProvider
2341
2382
  var GeoJsonProvider_exports = {};
2342
2383
  __export(GeoJsonProvider_exports, {
2343
2384
  default: () => GeoJsonProvider_default
2344
2385
  });
2345
- var defaultImport29 = __toESM(require("@splunk/visualization-context/GeoJsonProvider"));
2386
+ var defaultImport28 = __toESM(require("@splunk/visualization-context/GeoJsonProvider"));
2346
2387
  __reExport(GeoJsonProvider_exports, require("@splunk/visualization-context/GeoJsonProvider"));
2347
- var GeoJsonProvider_default = "default" in defaultImport29 ? defaultImport29.default : defaultImport29;
2388
+ var GeoJsonProvider_default = "default" in defaultImport28 ? defaultImport28.default : defaultImport28;
2348
2389
 
2349
2390
  // src/Map/PureMap/LocalChoroplethLayer.tsx
2350
2391
  var LocalChoroplethLayer = (props) => {
@@ -2380,7 +2421,7 @@ var LocalChoroplethLayer = (props) => {
2380
2421
  let isMounted = true;
2381
2422
  const geoRegistry = GeoRegistry_default.create();
2382
2423
  geoRegistry.addDefaultProvider(new GeoJsonProvider_default());
2383
- const loadGeoJson = () => __async(void 0, null, function* () {
2424
+ const loadGeoJson = () => __async(null, null, function* () {
2384
2425
  try {
2385
2426
  const geoJsonData = yield geoRegistry.getByURL(choroplethLayer.source);
2386
2427
  if (!isMounted) {
@@ -2392,7 +2433,7 @@ var LocalChoroplethLayer = (props) => {
2392
2433
  if (!isMounted) {
2393
2434
  return;
2394
2435
  }
2395
- setGeoJsonError(e);
2436
+ setGeoJsonError({ message: e instanceof Error ? e.message : "" });
2396
2437
  setValidGeoJson(false);
2397
2438
  }
2398
2439
  });
@@ -2429,13 +2470,13 @@ var LocalChoroplethLayer = (props) => {
2429
2470
  if (choroplethLayer.areaIds) {
2430
2471
  const lookupValue = choroplethData.name;
2431
2472
  const dataIdx = choroplethLayer.areaIds.indexOf(lookupValue);
2432
- if (dataIdx !== -1) {
2473
+ if (dataIdx === -1) {
2474
+ choroplethData.idx = choroplethLayer.areaIds.length;
2475
+ } else {
2433
2476
  choroplethData.color = colors[dataIdx];
2434
2477
  choroplethData.areaValue = choroplethLayer.areaValues[dataIdx];
2435
2478
  choroplethData.opacity = scaledOpacities[dataIdx];
2436
2479
  choroplethData.idx = dataIdx;
2437
- } else {
2438
- choroplethData.idx = choroplethLayer.areaIds.length;
2439
2480
  }
2440
2481
  }
2441
2482
  return choroplethData;
@@ -2579,30 +2620,31 @@ var StyledFitToDataButton = styled_components_default(ControlButton).attrs({
2579
2620
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="12" r="9" stroke="${(props) => props.controlIconColorEncoded.color}" stroke-width="2" stroke-linecap="round"/><path d="M12 3.5V6.5M12 20.5V17.5M3.5 12H6.5M20.5 12H17.5" stroke="${(props) => props.controlIconColorEncoded.color}" stroke-width="2" stroke-linecap="round"/></svg>');
2580
2621
  `;
2581
2622
  PureMapContainer_default.displayName = "PureMapContainer";
2582
- var PureMap = (props) => {
2583
- const {
2584
- width,
2585
- height,
2586
- backgroundColor,
2587
- baseLayerTileServer,
2588
- baseLayerTileServerType,
2589
- center,
2590
- controlBackgroundColor,
2591
- controlForegroundColor,
2592
- layers = [],
2593
- scaleUnit,
2594
- showScale,
2595
- showZoomControls,
2596
- showBaseLayer,
2597
- themeColorScheme,
2598
- zoom,
2599
- onMapLoad,
2600
- onMapClick,
2601
- onOptionsChange,
2602
- title,
2603
- showCoordinates,
2604
- hasEventHandlers = false
2605
- } = props;
2623
+ var DEFAULT_LAYERS = [];
2624
+ var DEFAULT_ON_MAP_LOAD = { exec: lodash_exports.noop };
2625
+ var PureMap = ({
2626
+ width = 800,
2627
+ height = 500,
2628
+ backgroundColor = "#0b0c0e",
2629
+ baseLayerTileServer,
2630
+ baseLayerTileServerType,
2631
+ center,
2632
+ controlBackgroundColor = DEFAULT_CONTROL_BACKGROUND_COLOR,
2633
+ controlForegroundColor = DEFAULT_CONTROL_FOREGROUND_COLOR,
2634
+ layers = DEFAULT_LAYERS,
2635
+ scaleUnit = DEFAULT_SCALE_UNIT,
2636
+ showScale = DEFAULT_SHOW_SCALE,
2637
+ showZoomControls = DEFAULT_SHOW_ZOOM_CONTROLS,
2638
+ showBaseLayer = DEFAULT_SHOW_BASELAYER,
2639
+ themeColorScheme = "dark",
2640
+ zoom,
2641
+ onMapLoad = DEFAULT_ON_MAP_LOAD,
2642
+ onMapClick = lodash_exports.noop,
2643
+ onOptionsChange = lodash_exports.noop,
2644
+ title,
2645
+ showCoordinates,
2646
+ hasEventHandlers = false
2647
+ }) => {
2606
2648
  const { defaultTileConfig, customTileConfig } = (0, react_exports.useContext)(MapContext_default);
2607
2649
  const basemapContainer = (0, react_exports.useRef)(null);
2608
2650
  const map = (0, react_exports.useRef)(null);
@@ -2677,6 +2719,7 @@ var PureMap = (props) => {
2677
2719
  }, []);
2678
2720
  const initializeMap = (0, react_exports.useCallback)(
2679
2721
  (mapStyle) => {
2722
+ ensureMapWorkerConfigured();
2680
2723
  map.current = new maplibre_gl_exports.Map(__spreadValues({
2681
2724
  container: basemapContainer.current,
2682
2725
  canvasContextAttributes: {
@@ -2921,7 +2964,7 @@ var PureMap = (props) => {
2921
2964
  showScale,
2922
2965
  showZoomControls
2923
2966
  },
2924
- showZoomControls && /* @__PURE__ */ react_exports.createElement(ZoomControlsContainer, { controlBackgroundColor }, /* @__PURE__ */ react_exports.createElement(Tooltip_default, { content: (0, i18n_exports._)("Zoom in"), contentRelationship: "label" }, /* @__PURE__ */ react_exports.createElement(
2967
+ showZoomControls && /* @__PURE__ */ react_exports.createElement(ZoomControlsContainer, { controlBackgroundColor }, /* @__PURE__ */ react_exports.createElement(Tooltip_default, { content: (0, i18n_exports._)("Zoom in"), contentRelationship: "label", defaultPlacement: "right" }, /* @__PURE__ */ react_exports.createElement(
2925
2968
  ZoomInButton,
2926
2969
  {
2927
2970
  onClick: handleZoomIn,
@@ -2929,7 +2972,7 @@ var PureMap = (props) => {
2929
2972
  controlForegroundColor,
2930
2973
  controlIconColorEncoded: formatColor(controlForegroundColor)
2931
2974
  }
2932
- )), /* @__PURE__ */ react_exports.createElement(Tooltip_default, { content: (0, i18n_exports._)("Zoom out"), contentRelationship: "label" }, /* @__PURE__ */ react_exports.createElement(
2975
+ )), /* @__PURE__ */ react_exports.createElement(Tooltip_default, { content: (0, i18n_exports._)("Zoom out"), contentRelationship: "label", defaultPlacement: "right" }, /* @__PURE__ */ react_exports.createElement(
2933
2976
  ZoomOutButton,
2934
2977
  {
2935
2978
  onClick: handleZoomOut,
@@ -2944,7 +2987,7 @@ var PureMap = (props) => {
2944
2987
  controlBackgroundColor,
2945
2988
  showZoomControls
2946
2989
  },
2947
- /* @__PURE__ */ react_exports.createElement(Tooltip_default, { content: (0, i18n_exports._)("Fit to data"), contentRelationship: "label" }, /* @__PURE__ */ react_exports.createElement(
2990
+ /* @__PURE__ */ react_exports.createElement(Tooltip_default, { content: (0, i18n_exports._)("Fit to data"), contentRelationship: "label", defaultPlacement: "right" }, /* @__PURE__ */ react_exports.createElement(
2948
2991
  StyledFitToDataButton,
2949
2992
  {
2950
2993
  onClick: handleResetClick,
@@ -2994,75 +3037,6 @@ var PureMap = (props) => {
2994
3037
  )
2995
3038
  );
2996
3039
  };
2997
- var isLatLng = (props, propName, componentName) => {
2998
- if (!props[propName]) {
2999
- return null;
3000
- }
3001
- const latAbs = Math.abs(props[propName][0]);
3002
- const lonAbs = Math.abs(props[propName][1]);
3003
- const latlon = props[propName];
3004
- if (latAbs > MAX_LATITUDE && lonAbs <= MAX_LATITUDE) {
3005
- throw new Error(`${componentName} ${propName} may have reversed [lat, lon] ranges.`);
3006
- }
3007
- if (!isValidLatLon(latlon)) {
3008
- throw new Error(`${componentName} ${propName} incorrect [lat, lon] ranges.`);
3009
- }
3010
- return null;
3011
- };
3012
- PureMap.propTypes = {
3013
- // eslint-disable-next-line react/no-unused-prop-types
3014
- mode: prop_types_exports.string,
3015
- width: prop_types_exports.oneOfType([prop_types_exports.string, prop_types_exports.number]),
3016
- height: prop_types_exports.oneOfType([prop_types_exports.string, prop_types_exports.number]),
3017
- backgroundColor: prop_types_exports.string,
3018
- baseLayerTileServer: prop_types_exports.string,
3019
- baseLayerTileServerType: prop_types_exports.string,
3020
- center: isLatLng,
3021
- controlBackgroundColor: prop_types_exports.string,
3022
- controlForegroundColor: prop_types_exports.string,
3023
- layers: prop_types_exports.arrayOf(
3024
- prop_types_exports.shape({
3025
- type: prop_types_exports.string,
3026
- latitude: prop_types_exports.arrayOf(prop_types_exports.oneOfType([prop_types_exports.string, prop_types_exports.number])),
3027
- longitude: prop_types_exports.arrayOf(prop_types_exports.oneOfType([prop_types_exports.string, prop_types_exports.number])),
3028
- label: prop_types_exports.string,
3029
- showInLegend: prop_types_exports.bool,
3030
- dataColors: prop_types_exports.oneOfType([prop_types_exports.string, prop_types_exports.arrayOf(prop_types_exports.string)]),
3031
- seriesColors: prop_types_exports.arrayOf(prop_types_exports.string),
3032
- additionalTooltipFields: prop_types_exports.arrayOf(prop_types_exports.string),
3033
- tooltipHeaderField: prop_types_exports.arrayOf(prop_types_exports.string),
3034
- resultLimit: prop_types_exports.number,
3035
- source: prop_types_exports.string,
3036
- choroplethEmptyAreaColor: prop_types_exports.string
3037
- })
3038
- ),
3039
- scaleUnit: prop_types_exports.string,
3040
- showScale: prop_types_exports.bool,
3041
- themeColorScheme: prop_types_exports.string,
3042
- zoom: prop_types_exports.number,
3043
- onMapLoad: prop_types_exports.shape({
3044
- exec: prop_types_exports.func
3045
- }),
3046
- onMapClick: prop_types_exports.func,
3047
- onOptionsChange: prop_types_exports.func
3048
- };
3049
- PureMap.defaultProps = {
3050
- mode: "view",
3051
- width: 800,
3052
- height: 500,
3053
- backgroundColor: "#0b0c0e",
3054
- controlBackgroundColor: DEFAULT_CONTROL_BACKGROUND_COLOR,
3055
- controlForegroundColor: DEFAULT_CONTROL_FOREGROUND_COLOR,
3056
- scaleUnit: DEFAULT_SCALE_UNIT,
3057
- showScale: DEFAULT_SHOW_SCALE,
3058
- showZoomControls: DEFAULT_SHOW_ZOOM_CONTROLS,
3059
- showBaseLayer: DEFAULT_SHOW_BASELAYER,
3060
- layers: [],
3061
- themeColorScheme: "dark",
3062
- onMapLoad: { exec: lodash_exports.noop },
3063
- onMapClick: lodash_exports.noop,
3064
- onOptionsChange: lodash_exports.noop
3065
- };
3066
3040
  var PureMap_default = PureMap;
3067
3041
 
3068
3042
  // esm-externals:@splunk/visualization-color-palettes/editors/PresetPalettes
@@ -3070,36 +3044,36 @@ var PresetPalettes_exports = {};
3070
3044
  __export(PresetPalettes_exports, {
3071
3045
  default: () => PresetPalettes_default
3072
3046
  });
3073
- var defaultImport30 = __toESM(require("@splunk/visualization-color-palettes/editors/PresetPalettes"));
3047
+ var defaultImport29 = __toESM(require("@splunk/visualization-color-palettes/editors/PresetPalettes"));
3074
3048
  __reExport(PresetPalettes_exports, require("@splunk/visualization-color-palettes/editors/PresetPalettes"));
3075
- var PresetPalettes_default = "default" in defaultImport30 ? defaultImport30.default : defaultImport30;
3049
+ var PresetPalettes_default = "default" in defaultImport29 ? defaultImport29.default : defaultImport29;
3076
3050
 
3077
3051
  // esm-externals:@splunk/visualization-icons
3078
3052
  var visualization_icons_exports = {};
3079
3053
  __export(visualization_icons_exports, {
3080
3054
  default: () => visualization_icons_default
3081
3055
  });
3082
- var defaultImport31 = __toESM(require("@splunk/visualization-icons"));
3056
+ var defaultImport30 = __toESM(require("@splunk/visualization-icons"));
3083
3057
  __reExport(visualization_icons_exports, require("@splunk/visualization-icons"));
3084
- var visualization_icons_default = "default" in defaultImport31 ? defaultImport31.default : defaultImport31;
3058
+ var visualization_icons_default = "default" in defaultImport30 ? defaultImport30.default : defaultImport30;
3085
3059
 
3086
3060
  // esm-externals:@splunk/visualization-icons/placeholders
3087
3061
  var placeholders_exports = {};
3088
3062
  __export(placeholders_exports, {
3089
3063
  default: () => placeholders_default
3090
3064
  });
3091
- var defaultImport32 = __toESM(require("@splunk/visualization-icons/placeholders"));
3065
+ var defaultImport31 = __toESM(require("@splunk/visualization-icons/placeholders"));
3092
3066
  __reExport(placeholders_exports, require("@splunk/visualization-icons/placeholders"));
3093
- var placeholders_default = "default" in defaultImport32 ? defaultImport32.default : defaultImport32;
3067
+ var placeholders_default = "default" in defaultImport31 ? defaultImport31.default : defaultImport31;
3094
3068
 
3095
3069
  // esm-externals:@splunk/visualizations-shared/configUtils
3096
3070
  var configUtils_exports = {};
3097
3071
  __export(configUtils_exports, {
3098
3072
  default: () => configUtils_default
3099
3073
  });
3100
- var defaultImport33 = __toESM(require("@splunk/visualizations-shared/configUtils"));
3074
+ var defaultImport32 = __toESM(require("@splunk/visualizations-shared/configUtils"));
3101
3075
  __reExport(configUtils_exports, require("@splunk/visualizations-shared/configUtils"));
3102
- var configUtils_default = "default" in defaultImport33 ? defaultImport33.default : defaultImport33;
3076
+ var configUtils_default = "default" in defaultImport32 ? defaultImport32.default : defaultImport32;
3103
3077
 
3104
3078
  // src/common/utils/configUtils.ts
3105
3079
  function enhanceConfig(vizConfig) {
@@ -3133,18 +3107,18 @@ var pick_exports = {};
3133
3107
  __export(pick_exports, {
3134
3108
  default: () => pick_default
3135
3109
  });
3136
- var defaultImport34 = __toESM(require("@splunk/themes/pick"));
3110
+ var defaultImport33 = __toESM(require("@splunk/themes/pick"));
3137
3111
  __reExport(pick_exports, require("@splunk/themes/pick"));
3138
- var pick_default = "default" in defaultImport34 ? defaultImport34.default : defaultImport34;
3112
+ var pick_default = "default" in defaultImport33 ? defaultImport33.default : defaultImport33;
3139
3113
 
3140
3114
  // esm-externals:@splunk/themes/variables
3141
3115
  var variables_exports = {};
3142
3116
  __export(variables_exports, {
3143
3117
  default: () => variables_default
3144
3118
  });
3145
- var defaultImport35 = __toESM(require("@splunk/themes/variables"));
3119
+ var defaultImport34 = __toESM(require("@splunk/themes/variables"));
3146
3120
  __reExport(variables_exports, require("@splunk/themes/variables"));
3147
- var variables_default = "default" in defaultImport35 ? defaultImport35.default : defaultImport35;
3121
+ var variables_default = "default" in defaultImport34 ? defaultImport34.default : defaultImport34;
3148
3122
 
3149
3123
  // src/common/ThemedDefaults.tsx
3150
3124
  var defaultBackgroundColor = (props) => pick_default({
@@ -3606,7 +3580,7 @@ var editorConfig = [
3606
3580
  label: (0, i18n_exports._)("Base layer tile server type"),
3607
3581
  option: "baseLayerTileServerType",
3608
3582
  editor: "editor.radioBar",
3609
- showEditor: ({ options }) => options.showBaseLayer === false ? false : !(typeof options.baseLayerTileServer === "undefined" || options.baseLayerTileServer === ""),
3583
+ showEditor: ({ options }) => options.showBaseLayer === false ? false : !(options.baseLayerTileServer === void 0 || options.baseLayerTileServer === ""),
3610
3584
  editorProps: {
3611
3585
  values: [
3612
3586
  { label: (0, i18n_exports._)("Vector"), value: "vector" },
@@ -3659,54 +3633,63 @@ var getSettingsFromThemedProps_exports = {};
3659
3633
  __export(getSettingsFromThemedProps_exports, {
3660
3634
  default: () => getSettingsFromThemedProps_default
3661
3635
  });
3662
- var defaultImport36 = __toESM(require("@splunk/themes/getSettingsFromThemedProps"));
3636
+ var defaultImport35 = __toESM(require("@splunk/themes/getSettingsFromThemedProps"));
3663
3637
  __reExport(getSettingsFromThemedProps_exports, require("@splunk/themes/getSettingsFromThemedProps"));
3664
- var getSettingsFromThemedProps_default = "default" in defaultImport36 ? defaultImport36.default : defaultImport36;
3638
+ var getSettingsFromThemedProps_default = "default" in defaultImport35 ? defaultImport35.default : defaultImport35;
3665
3639
 
3666
3640
  // esm-externals:@splunk/visualization-encoding/Options
3667
3641
  var Options_exports = {};
3668
3642
  __export(Options_exports, {
3669
3643
  default: () => Options_default
3670
3644
  });
3671
- var defaultImport37 = __toESM(require("@splunk/visualization-encoding/Options"));
3645
+ var defaultImport36 = __toESM(require("@splunk/visualization-encoding/Options"));
3672
3646
  __reExport(Options_exports, require("@splunk/visualization-encoding/Options"));
3673
- var Options_default = "default" in defaultImport37 ? defaultImport37.default : defaultImport37;
3647
+ var Options_default = "default" in defaultImport36 ? defaultImport36.default : defaultImport36;
3674
3648
 
3675
3649
  // esm-externals:@splunk/visualizations-shared/SanitizeProps
3676
3650
  var SanitizeProps_exports = {};
3677
3651
  __export(SanitizeProps_exports, {
3678
3652
  default: () => SanitizeProps_default
3679
3653
  });
3680
- var defaultImport38 = __toESM(require("@splunk/visualizations-shared/SanitizeProps"));
3654
+ var defaultImport37 = __toESM(require("@splunk/visualizations-shared/SanitizeProps"));
3681
3655
  __reExport(SanitizeProps_exports, require("@splunk/visualizations-shared/SanitizeProps"));
3682
- var SanitizeProps_default = "default" in defaultImport38 ? defaultImport38.default : defaultImport38;
3656
+ var SanitizeProps_default = "default" in defaultImport37 ? defaultImport37.default : defaultImport37;
3683
3657
 
3684
3658
  // esm-externals:@splunk/visualization-context/TimezoneContext
3685
3659
  var TimezoneContext_exports = {};
3686
3660
  __export(TimezoneContext_exports, {
3687
3661
  default: () => TimezoneContext_default
3688
3662
  });
3689
- var defaultImport39 = __toESM(require("@splunk/visualization-context/TimezoneContext"));
3663
+ var defaultImport38 = __toESM(require("@splunk/visualization-context/TimezoneContext"));
3690
3664
  __reExport(TimezoneContext_exports, require("@splunk/visualization-context/TimezoneContext"));
3691
- var TimezoneContext_default = "default" in defaultImport39 ? defaultImport39.default : defaultImport39;
3665
+ var TimezoneContext_default = "default" in defaultImport38 ? defaultImport38.default : defaultImport38;
3692
3666
 
3693
3667
  // esm-externals:@splunk/moment
3694
3668
  var moment_exports = {};
3695
3669
  __export(moment_exports, {
3696
3670
  default: () => moment_default
3697
3671
  });
3698
- var defaultImport40 = __toESM(require("@splunk/moment"));
3672
+ var defaultImport39 = __toESM(require("@splunk/moment"));
3699
3673
  __reExport(moment_exports, require("@splunk/moment"));
3700
- var moment_default = "default" in defaultImport40 ? defaultImport40.default : defaultImport40;
3674
+ var moment_default = "default" in defaultImport39 ? defaultImport39.default : defaultImport39;
3701
3675
 
3702
3676
  // esm-externals:@splunk/async-dynamic-options-evaluator
3703
3677
  var async_dynamic_options_evaluator_exports = {};
3704
3678
  __export(async_dynamic_options_evaluator_exports, {
3705
3679
  default: () => async_dynamic_options_evaluator_default
3706
3680
  });
3707
- var defaultImport41 = __toESM(require("@splunk/async-dynamic-options-evaluator"));
3681
+ var defaultImport40 = __toESM(require("@splunk/async-dynamic-options-evaluator"));
3708
3682
  __reExport(async_dynamic_options_evaluator_exports, require("@splunk/async-dynamic-options-evaluator"));
3709
- var async_dynamic_options_evaluator_default = "default" in defaultImport41 ? defaultImport41.default : defaultImport41;
3683
+ var async_dynamic_options_evaluator_default = "default" in defaultImport40 ? defaultImport40.default : defaultImport40;
3684
+
3685
+ // esm-externals:prop-types
3686
+ var prop_types_exports = {};
3687
+ __export(prop_types_exports, {
3688
+ default: () => prop_types_default
3689
+ });
3690
+ var defaultImport41 = __toESM(require("prop-types"));
3691
+ __reExport(prop_types_exports, require("prop-types"));
3692
+ var prop_types_default = "default" in defaultImport41 ? defaultImport41.default : defaultImport41;
3710
3693
 
3711
3694
  // src/common/interfaces/VizActionHandler.ts
3712
3695
  var DefaultVizActionHandler = class {
@@ -3845,7 +3828,10 @@ var useSortingParams = ({ requestParams, onRequestParamsChange }) => {
3845
3828
  onSort = (e, { sortKey, sortDir }) => {
3846
3829
  if (typeof sortKey === "string") {
3847
3830
  const nextSortDir = (0, lodash_exports.has)(nextSortDirMap, sortDir) ? nextSortDirMap[sortDir] : "none";
3848
- onRequestParamsChange(__spreadValues(__spreadValues({}, requestParams), { offset: 0, sort: { [sortKey]: nextSortDir } }));
3831
+ onRequestParamsChange(__spreadProps(__spreadValues({}, requestParams), {
3832
+ offset: 0,
3833
+ sort: { [sortKey]: nextSortDir }
3834
+ }));
3849
3835
  } else {
3850
3836
  onRequestParamsChange(requestParams);
3851
3837
  }
@@ -3971,7 +3957,7 @@ var Cover = styled_components_default.div`
3971
3957
  bottom: 0;
3972
3958
  `;
3973
3959
  var Blocker = styled_components_default.div.attrs({
3974
- "data-splunk-visualization-version": "28.8.0 - 633c53372"
3960
+ "data-splunk-visualization-version": "28.9.1 - fba477a41"
3975
3961
  })`
3976
3962
  position: relative;
3977
3963
  width: 100%;
@@ -4043,7 +4029,7 @@ var withFixedSizeContainer = (Viz) => {
4043
4029
  FixSizeItem,
4044
4030
  {
4045
4031
  "data-test": "fix-size-item",
4046
- "data-splunk-visualization-version": "28.8.0 - 633c53372",
4032
+ "data-splunk-visualization-version": "28.9.1 - fba477a41",
4047
4033
  width,
4048
4034
  height,
4049
4035
  backgroundColor
@@ -4064,6 +4050,14 @@ var shouldShowIconPlaceholder = (dataSources, loading = false) => {
4064
4050
  const noFields = fields === void 0;
4065
4051
  return loading || noData || noFields;
4066
4052
  };
4053
+ var PlaceholderContainer = styled_components_default.div`
4054
+ /* The inline token color wins when supported. Older browsers discard an
4055
+ unsupported oklch value and retain this inherited fallback instead. */
4056
+ color: ${(0, themes_exports.pick)({
4057
+ dark: "#fafafa",
4058
+ light: "#2c2c2c"
4059
+ })};
4060
+ `;
4067
4061
  var IconPlaceholder = (props) => {
4068
4062
  const {
4069
4063
  width = SplunkVisualization_default.defaults.width,
@@ -4078,7 +4072,6 @@ var IconPlaceholder = (props) => {
4078
4072
  style: {
4079
4073
  left: "50%",
4080
4074
  top: "50%",
4081
- color: iconColor,
4082
4075
  opacity: 0.15,
4083
4076
  position: "absolute",
4084
4077
  transform: "translate(-50%, -50%)"
@@ -4088,7 +4081,14 @@ var IconPlaceholder = (props) => {
4088
4081
  "data-test": "icon-placeholder"
4089
4082
  });
4090
4083
  }
4091
- return /* @__PURE__ */ react_exports.createElement("div", { style: { width, height, background: backgroundColor } }, content);
4084
+ return /* @__PURE__ */ react_exports.createElement(
4085
+ PlaceholderContainer,
4086
+ {
4087
+ "data-test": "icon-placeholder-container",
4088
+ style: { width, height, background: backgroundColor, color: iconColor }
4089
+ },
4090
+ content
4091
+ );
4092
4092
  };
4093
4093
  var IconPlaceholder_default = FixedSizeContainer_default(IconPlaceholder);
4094
4094
 
@@ -4180,7 +4180,7 @@ var largestTriangleThreeBuckets = (data, threshold, preferredDownsampleIndices)
4180
4180
  let avgY = 0;
4181
4181
  let avgRangeStart = Math.floor((i + 1) * every) + 1;
4182
4182
  let avgRangeEnd = Math.floor((i + 2) * every) + 1;
4183
- avgRangeEnd = avgRangeEnd < dataLength ? avgRangeEnd : dataLength;
4183
+ avgRangeEnd = Math.min(avgRangeEnd, dataLength);
4184
4184
  const avgRangeLength = avgRangeEnd - avgRangeStart;
4185
4185
  for (; avgRangeStart < avgRangeEnd; avgRangeStart++) {
4186
4186
  avgX += Number(data[avgRangeStart][0]);
@@ -4215,9 +4215,9 @@ var largestTriangleThreeBuckets = (data, threshold, preferredDownsampleIndices)
4215
4215
  };
4216
4216
  var strictlyCoerceYColumn = (column, options) => {
4217
4217
  const isNullCoercionEnabled = options.nullValueDisplay === "zero";
4218
- const canLooselyCoerceSomeValues = column.findIndex(
4218
+ const canLooselyCoerceSomeValues = column.some(
4219
4219
  (value) => (0, numberUtils_exports.startsWithNumber)(`${value}`) || isNullCoercionEnabled && value === null
4220
- ) >= 0;
4220
+ );
4221
4221
  const coercedColumn = [];
4222
4222
  const canDownsampleColumn = !column.some((value) => {
4223
4223
  const coercedValue = Number(value);
@@ -4236,7 +4236,7 @@ var strictlyCoerceYColumn = (column, options) => {
4236
4236
  };
4237
4237
  var strictlyCoerceXColumn = (column, fieldType) => {
4238
4238
  if (fieldType === "number") {
4239
- const coercedXColumn = column.map((xValue) => Number(xValue));
4239
+ const coercedXColumn = column.map(Number);
4240
4240
  if (isColumnStrictlyIncreasing(coercedXColumn, fieldType)) {
4241
4241
  return coercedXColumn;
4242
4242
  }
@@ -4541,10 +4541,10 @@ var FeatureFlags_default = "default" in defaultImport44 ? defaultImport44.defaul
4541
4541
 
4542
4542
  // src/common/utils/featureFlagUtils.ts
4543
4543
  var getFeatureFlag = (context, flagName) => {
4544
- if (context && Object.keys(context).find((key) => key === flagName)) {
4544
+ if (context && Object.keys(context).includes(flagName)) {
4545
4545
  return context[flagName];
4546
4546
  }
4547
- if (Object.keys(FeatureFlags_default).find((key) => key === flagName)) {
4547
+ if (Object.keys(FeatureFlags_default).includes(flagName)) {
4548
4548
  return FeatureFlags_default[flagName];
4549
4549
  }
4550
4550
  return false;
@@ -4657,9 +4657,9 @@ var shouldEnableSearchZoom = (eventHandlers = [], xField = "") => {
4657
4657
  const xAxisIsTime = xField === "_time";
4658
4658
  return !!rangeSelectEventHandler && xAxisIsTime;
4659
4659
  };
4660
- var canvasSupportedTimeSeriesCharts = ["splunk.line", "splunk.area"];
4660
+ var canvasSupportedTimeSeriesCharts = /* @__PURE__ */ new Set(["splunk.line", "splunk.area"]);
4661
4661
  var isTimeSeriesCanvasRenderSupported = (vizConfigKey) => {
4662
- return canvasSupportedTimeSeriesCharts.includes(vizConfigKey);
4662
+ return canvasSupportedTimeSeriesCharts.has(vizConfigKey);
4663
4663
  };
4664
4664
  var filterChartDataFromInternalFields = (chartData) => {
4665
4665
  const { fields, columns } = chartData;
@@ -4675,7 +4675,7 @@ var filterChartDataFromInternalFields = (chartData) => {
4675
4675
  return { fields: filteredFields, columns: filteredColumns };
4676
4676
  };
4677
4677
  var convert2DArrayToNumbers = (arr) => {
4678
- return arr.map((subArray) => subArray.map((element) => parseFloat(element)));
4678
+ return arr.map((subArray) => subArray.map((element) => Number.parseFloat(element)));
4679
4679
  };
4680
4680
  var parseAxisValue = (val) => {
4681
4681
  if (val === void 0 || val === null || val === "auto" || val === "") {
@@ -4713,6 +4713,7 @@ var getLegend = (props) => {
4713
4713
  return (0, visualization_canvas_exports.TopLegendFactory)(__spreadValues({
4714
4714
  wrap: true
4715
4715
  }, commonLegendProps));
4716
+ // Note: By default, use right legend
4716
4717
  default:
4717
4718
  return (0, visualization_canvas_exports.SideLegendFactory)(__spreadValues({}, commonLegendProps));
4718
4719
  }
@@ -4845,10 +4846,10 @@ var getSeriesOverrides = (opts) => {
4845
4846
  let spanGaps;
4846
4847
  if (nullValueMode === "gaps") {
4847
4848
  spanGaps = false;
4848
- } else if (nullValueMode != null) {
4849
- spanGaps = true;
4850
- } else {
4849
+ } else if (nullValueMode == null) {
4851
4850
  spanGaps = void 0;
4851
+ } else {
4852
+ spanGaps = true;
4852
4853
  }
4853
4854
  const replaceNullsWithZero = nullValueMode === "zero" ? true : void 0;
4854
4855
  const isAreaChart = type === "area";
@@ -5279,11 +5280,11 @@ var TimeSeriesChartWrapper = (props) => {
5279
5280
  y2AxisMajorUnitFromSimpleXML,
5280
5281
  y2AxisMajorTickInterval
5281
5282
  );
5282
- const xAxisMajorTickSizeNum = xAxisMajorTickSize != null ? Number(xAxisMajorTickSize) : void 0;
5283
- const yAxisMajorTickSizeNum = yAxisMajorTickSize != null ? Number(yAxisMajorTickSize) : void 0;
5284
- const y2AxisMajorTickSizeNum = y2AxisMajorTickSize != null ? Number(y2AxisMajorTickSize) : void 0;
5285
- const yAxisMinorTickSizeNum = yAxisMinorTickSize != null ? Number(yAxisMinorTickSize) : void 0;
5286
- const y2AxisMinorTickSizeNum = y2AxisMinorTickSize != null ? Number(y2AxisMinorTickSize) : void 0;
5283
+ const xAxisMajorTickSizeNum = xAxisMajorTickSize == null ? void 0 : Number(xAxisMajorTickSize);
5284
+ const yAxisMajorTickSizeNum = yAxisMajorTickSize == null ? void 0 : Number(yAxisMajorTickSize);
5285
+ const y2AxisMajorTickSizeNum = y2AxisMajorTickSize == null ? void 0 : Number(y2AxisMajorTickSize);
5286
+ const yAxisMinorTickSizeNum = yAxisMinorTickSize == null ? void 0 : Number(yAxisMinorTickSize);
5287
+ const y2AxisMinorTickSizeNum = y2AxisMinorTickSize == null ? void 0 : Number(y2AxisMinorTickSize);
5287
5288
  const areaOpacityForCanvas = getAreaOpacityForCanvas(areaOpacity);
5288
5289
  const seriesColors = seriesColorsStr ? JSON.parse(seriesColorsStr) : void 0;
5289
5290
  const seriesColorsByField = fieldColors ? JSON.parse(fieldColors) : void 0;
@@ -5695,6 +5696,76 @@ var buildEventCallbackProps = (supportedEvents, evaluatedOptionsToUse, onEventTr
5695
5696
  });
5696
5697
  return result;
5697
5698
  };
5699
+ var buildAllEventCallbackProps = (events, evaluatedOptionsToUse, onEventTrigger, { supportsEvents, hasEventHandlers, mode }) => {
5700
+ if (!supportsEvents) return {};
5701
+ const defaultEvents = {};
5702
+ const userEvents = {};
5703
+ Object.entries(events || {}).forEach(([eventKey, eventConfig]) => {
5704
+ (eventConfig.source === "default" ? defaultEvents : userEvents)[eventKey] = eventConfig;
5705
+ });
5706
+ const userProps = hasEventHandlers && mode === "view" ? buildEventCallbackProps(userEvents, evaluatedOptionsToUse, onEventTrigger) : {};
5707
+ return __spreadValues(__spreadValues({}, userProps), buildEventCallbackProps(defaultEvents, evaluatedOptionsToUse, onEventTrigger));
5708
+ };
5709
+ var applyContextTimezone = (localeContext) => {
5710
+ if (localeContext.serializedTimezone && !moment_default.getDefaultSplunkTimezone()) {
5711
+ moment_default.setDefaultSplunkTimezone(localeContext.serializedTimezone);
5712
+ }
5713
+ };
5714
+ var getAsyncOptionsEvaluationParams = ({
5715
+ visualizationID,
5716
+ props,
5717
+ optionsToEvaluate,
5718
+ downsampledDataSources,
5719
+ vizConfig,
5720
+ bypassCloneDeepOptionScope,
5721
+ lazyLoadingDataFrame
5722
+ }) => {
5723
+ return {
5724
+ visualizationID,
5725
+ props,
5726
+ options: __spreadValues({}, optionsToEvaluate),
5727
+ dataSources: downsampledDataSources,
5728
+ theme: vizConfig.themes,
5729
+ bypassCloneDeepOptionScope,
5730
+ lazyLoadingDataFrame
5731
+ };
5732
+ };
5733
+ var evaluateOptionsSync = ({
5734
+ optionsToEvaluate,
5735
+ downsampledDataSources,
5736
+ dataSourcesInState,
5737
+ dataFramesInState,
5738
+ setDataSourcesInState,
5739
+ setDataFramesInState,
5740
+ computeDataFrames,
5741
+ featureFlagContext,
5742
+ themeFunc
5743
+ }) => {
5744
+ let dataFrames = dataFramesInState;
5745
+ if (downsampledDataSources !== dataSourcesInState) {
5746
+ setDataSourcesInState(downsampledDataSources);
5747
+ dataFrames = Options_exports.Options.dataFrameFromDataSource(
5748
+ downsampledDataSources,
5749
+ getFeatureFlag(featureFlagContext, "visualizations_lazyLoadingDataFrame")
5750
+ );
5751
+ setDataFramesInState(dataFrames);
5752
+ }
5753
+ let mergedFrames = dataFrames;
5754
+ if (computeDataFrames && dataFrames) {
5755
+ const derivedFrames = computeDataFrames({
5756
+ dataSources: downsampledDataSources,
5757
+ options: optionsToEvaluate.options
5758
+ });
5759
+ mergedFrames = __spreadValues(__spreadValues({}, dataFrames), derivedFrames);
5760
+ }
5761
+ return Options_exports.Options.evaluate(
5762
+ optionsToEvaluate,
5763
+ downsampledDataSources,
5764
+ themeFunc,
5765
+ mergedFrames,
5766
+ getFeatureFlag(featureFlagContext, "visualizations_bypassCloneDeepOptionScope")
5767
+ );
5768
+ };
5698
5769
  var withDashboardViz = (opts) => {
5699
5770
  const {
5700
5771
  ReactViz,
@@ -5726,11 +5797,7 @@ var withDashboardViz = (opts) => {
5726
5797
  onRequestParamsChange = lodash_exports.noop
5727
5798
  } = props;
5728
5799
  const localeContext = react_exports.useContext(TimezoneContext_default);
5729
- if (localeContext.serializedTimezone) {
5730
- if (!moment_default.getDefaultSplunkTimezone()) {
5731
- moment_default.setDefaultSplunkTimezone(localeContext.serializedTimezone);
5732
- }
5733
- }
5800
+ applyContextTimezone(localeContext);
5734
5801
  const themeFunc = (themeVar) => {
5735
5802
  var _a2, _b;
5736
5803
  return (_b = (_a2 = vizConfig.themes)[themeVar]) == null ? void 0 : _b.call(_a2, props);
@@ -5758,7 +5825,12 @@ var withDashboardViz = (opts) => {
5758
5825
  featureFlagContext == null ? void 0 : featureFlagContext.visualizations_enableAcceleratedRender
5759
5826
  );
5760
5827
  const isAcceleratedRenderOn = isAcceleratedRenderFeatureFlagOn && isTimeSeriesCanvasRenderSupported(vizConfig.key) && (options == null ? void 0 : options.acceleratedRender) === true;
5761
- const isMounted = react_exports.useRef(true);
5828
+ const bypassCloneDeepOptionScope = Boolean(
5829
+ getFeatureFlag(featureFlagContext, "visualizations_bypassCloneDeepOptionScope")
5830
+ );
5831
+ const lazyLoadingDataFrame = Boolean(
5832
+ getFeatureFlag(featureFlagContext, "visualizations_lazyLoadingDataFrame")
5833
+ );
5762
5834
  const optionsToEvaluate = react_exports.useMemo(() => {
5763
5835
  var _a2;
5764
5836
  const legendDisplay = turnOffLegendDisplayWhenTrellisIsOn(isTrellisOn, options);
@@ -5797,63 +5869,74 @@ var withDashboardViz = (opts) => {
5797
5869
  threshold,
5798
5870
  isDownsamplingEnabled
5799
5871
  });
5800
- evaluatedOptions = useDeepMemo(() => {
5872
+ const asyncOptionsEvaluationParams = useDeepMemo(
5873
+ () => getAsyncOptionsEvaluationParams({
5874
+ visualizationID,
5875
+ props,
5876
+ optionsToEvaluate,
5877
+ downsampledDataSources,
5878
+ vizConfig,
5879
+ bypassCloneDeepOptionScope,
5880
+ lazyLoadingDataFrame
5881
+ }),
5882
+ [
5883
+ visualizationID,
5884
+ optionsToEvaluate,
5885
+ downsampledDataSources,
5886
+ vizConfig,
5887
+ bypassCloneDeepOptionScope,
5888
+ lazyLoadingDataFrame,
5889
+ currentThemeFamily,
5890
+ currentThemeColorScheme,
5891
+ currentThemeDensity,
5892
+ localeContext.serializedTimezone
5893
+ ]
5894
+ );
5895
+ react_exports.useEffect(() => {
5896
+ if (!useAsyncEvaluatedOptions) {
5897
+ return void 0;
5898
+ }
5899
+ let ownsEvaluation = true;
5801
5900
  try {
5802
- if (useAsyncEvaluatedOptions) {
5803
- const asyncDynamicOptionsEvaluatorParams = {
5804
- visualizationID,
5805
- props,
5806
- options: optionsToEvaluate,
5807
- dataSources: downsampledDataSources,
5808
- theme: vizConfig.themes,
5809
- bypassCloneDeepOptionScope: Boolean(
5810
- getFeatureFlag(featureFlagContext, "visualizations_bypassCloneDeepOptionScope")
5811
- ),
5812
- lazyLoadingDataFrame: Boolean(
5813
- getFeatureFlag(featureFlagContext, "visualizations_lazyLoadingDataFrame")
5814
- )
5815
- };
5816
- async_dynamic_options_evaluator_default.evaluate(asyncDynamicOptionsEvaluatorParams).then((results) => {
5901
+ async_dynamic_options_evaluator_default.evaluate(asyncOptionsEvaluationParams).then((results) => {
5902
+ if (ownsEvaluation) {
5817
5903
  setEvaluatedOptionsAsync(results.results);
5818
- }).catch(() => {
5819
- if (isMounted.current) {
5820
- setUseAsyncEvaluatedOptions(false);
5821
- }
5822
- });
5823
- } else {
5824
- let dataFrames = dataFramesInState;
5825
- if (downsampledDataSources !== dataSourcesInState) {
5826
- setDataSourcesInState(downsampledDataSources);
5827
- dataFrames = Options_exports.Options.dataFrameFromDataSource(
5828
- downsampledDataSources,
5829
- getFeatureFlag(featureFlagContext, "visualizations_lazyLoadingDataFrame")
5830
- );
5831
- setDataFramesInState(dataFrames);
5832
5904
  }
5833
- let mergedFrames = dataFrames;
5834
- if (computeDataFrames && dataFrames) {
5835
- const derivedFrames = computeDataFrames({
5836
- dataSources: downsampledDataSources,
5837
- options: optionsToEvaluate.options
5838
- });
5839
- mergedFrames = __spreadValues(__spreadValues({}, dataFrames), derivedFrames);
5905
+ }).catch(() => {
5906
+ if (ownsEvaluation) {
5907
+ setUseAsyncEvaluatedOptions(false);
5840
5908
  }
5841
- const result = Options_exports.Options.evaluate(
5842
- optionsToEvaluate,
5843
- downsampledDataSources,
5844
- themeFunc,
5845
- mergedFrames,
5846
- getFeatureFlag(featureFlagContext, "visualizations_bypassCloneDeepOptionScope")
5847
- );
5848
- return result;
5909
+ });
5910
+ } catch (e) {
5911
+ setUseAsyncEvaluatedOptions(false);
5912
+ }
5913
+ return () => {
5914
+ ownsEvaluation = false;
5915
+ async_dynamic_options_evaluator_default.reset(visualizationID);
5916
+ };
5917
+ }, [asyncOptionsEvaluationParams, useAsyncEvaluatedOptions, visualizationID]);
5918
+ evaluatedOptions = useDeepMemo(() => {
5919
+ try {
5920
+ if (useAsyncEvaluatedOptions) {
5921
+ return {};
5849
5922
  }
5923
+ return evaluateOptionsSync({
5924
+ optionsToEvaluate,
5925
+ downsampledDataSources,
5926
+ dataSourcesInState,
5927
+ dataFramesInState,
5928
+ setDataSourcesInState,
5929
+ setDataFramesInState,
5930
+ computeDataFrames,
5931
+ featureFlagContext,
5932
+ themeFunc
5933
+ });
5850
5934
  } catch (e) {
5851
5935
  if (e instanceof Error) {
5852
5936
  console.error(`unexpected error evaluating options: ${e.message}`);
5853
5937
  }
5854
5938
  return {};
5855
5939
  }
5856
- return {};
5857
5940
  }, [
5858
5941
  currentThemeFamily,
5859
5942
  currentThemeColorScheme,
@@ -5863,7 +5946,7 @@ var withDashboardViz = (opts) => {
5863
5946
  localeContext.serializedTimezone,
5864
5947
  useAsyncEvaluatedOptions
5865
5948
  ]);
5866
- const evaluatedOptionsToUse = !useAsyncEvaluatedOptions ? evaluatedOptions : evaluatedOptionsAsync;
5949
+ const evaluatedOptionsToUse = useAsyncEvaluatedOptions ? evaluatedOptionsAsync : evaluatedOptions;
5867
5950
  let dataSourceMetadata = {};
5868
5951
  const OptionKey = "paginateDataSourceKey";
5869
5952
  const optsKey = (0, lodash_exports.has)(evaluatedOptionsToUse, OptionKey) && evaluatedOptionsToUse[OptionKey];
@@ -5885,7 +5968,7 @@ var withDashboardViz = (opts) => {
5885
5968
  sortParams,
5886
5969
  paginatorParams
5887
5970
  };
5888
- if (vizConfig.supports.indexOf("page-and-sort" /* PAGE_AND_SORT */) === -1 && !(0, lodash_exports.has)(dataSources, paginateDataSourceKey)) {
5971
+ if (!vizConfig.supports.includes("page-and-sort" /* PAGE_AND_SORT */) && !(0, lodash_exports.has)(dataSources, paginateDataSourceKey)) {
5889
5972
  dataSourceMetadata = {};
5890
5973
  }
5891
5974
  const clonedEvaluatedOptions = __spreadValues({}, evaluatedOptionsToUse);
@@ -5895,14 +5978,6 @@ var withDashboardViz = (opts) => {
5895
5978
  react_exports.useEffect(() => {
5896
5979
  onComputedProps(clonedEvaluatedOptions);
5897
5980
  });
5898
- react_exports.useEffect(() => {
5899
- return () => {
5900
- if (useAsyncEvaluatedOptions) {
5901
- isMounted.current = false;
5902
- async_dynamic_options_evaluator_default.reset(visualizationID);
5903
- }
5904
- };
5905
- }, []);
5906
5981
  const { requiredProps = [], supports } = vizConfig;
5907
5982
  const missing = missingKeys(requiredProps, evaluatedOptionsToUse);
5908
5983
  if (missing.length > 0 && supports.includes("placeholder" /* PLACEHOLDER */) && vizConfig.key !== "splunk.singlevalue") {
@@ -5917,7 +5992,16 @@ var withDashboardViz = (opts) => {
5917
5992
  }
5918
5993
  );
5919
5994
  }
5920
- const eventCallbackProps = hasEventHandlers && mode === "view" && vizConfig.supports.includes("events" /* EVENTS */) ? buildEventCallbackProps(vizConfig.events, evaluatedOptionsToUse, onEventTrigger) : {};
5995
+ const eventCallbackProps = buildAllEventCallbackProps(
5996
+ vizConfig.events,
5997
+ evaluatedOptionsToUse,
5998
+ onEventTrigger,
5999
+ {
6000
+ supportsEvents: vizConfig.supports.includes("events" /* EVENTS */),
6001
+ hasEventHandlers,
6002
+ mode
6003
+ }
6004
+ );
5921
6005
  const computedVizProps = computeVizProps2(__spreadProps(__spreadValues(__spreadProps(__spreadValues(__spreadValues({}, props), evaluatedOptionsToUse), {
5922
6006
  // Align option transformation with the actual renderer selected below.
5923
6007
  // This prevents canvas-only option preservation from leaking into Highcharts mode.
@@ -5945,8 +6029,9 @@ var withDashboardViz = (opts) => {
5945
6029
  onEventTrigger: SplunkVisualization_default.defaults.onEventTrigger
5946
6030
  });
5947
6031
  DashboardViz.config = vizConfig;
5948
- return (0, styled_components_exports.withTheme)(
5949
- withPlaceholder_default(withEditModeCover_default(DashboardViz, disableEditModeCover), useIconPlaceholder2)
6032
+ return Object.assign(
6033
+ (0, styled_components_exports.withTheme)(withPlaceholder_default(withEditModeCover_default(DashboardViz, disableEditModeCover), useIconPlaceholder2)),
6034
+ { config: vizConfig }
5950
6035
  );
5951
6036
  };
5952
6037
  var withDashboardViz_default = withDashboardViz;
@@ -5975,20 +6060,18 @@ var columnsNullToZeros = (config2, dataSources, options) => {
5975
6060
  const latitudeField = (0, dsl_exports.getFieldsFromDSL)(mergedOptions.layers[0].latitude, dataSources)[0] || "";
5976
6061
  const longitudeField = (0, dsl_exports.getFieldsFromDSL)(mergedOptions.layers[0].longitude, dataSources)[0] || "";
5977
6062
  const stringsFields = (0, dsl_exports.getFieldsFromDSL)("> primary | frameBySeriesTypes('string')", dataSources);
5978
- const excludedFields = Array.from(
5979
- /* @__PURE__ */ new Set([
5980
- latitudeField,
5981
- longitudeField,
5982
- "geobin",
5983
- "name",
5984
- ...stringsFields,
5985
- ...GEO_LAT_AND_LONG_FIELD
5986
- ])
5987
- );
6063
+ const excludedFields = /* @__PURE__ */ new Set([
6064
+ latitudeField,
6065
+ longitudeField,
6066
+ "geobin",
6067
+ "name",
6068
+ ...stringsFields,
6069
+ ...GEO_LAT_AND_LONG_FIELD
6070
+ ]);
5988
6071
  const indicesToEvaluate = new Set(
5989
6072
  fields.reduce((arr, e, i) => {
5990
6073
  const field = typeof e === "string" ? e : e.name.toString();
5991
- if (!excludedFields.includes(field)) {
6074
+ if (!excludedFields.has(field)) {
5992
6075
  arr.push(i);
5993
6076
  }
5994
6077
  return arr;
@@ -6076,24 +6159,36 @@ var withTooltipFields = (Viz) => {
6076
6159
  const { fields } = dataSources.primary.data;
6077
6160
  if (Array.isArray(mergedOptions.layers[0].additionalTooltipFields) && Array.isArray(fields) && fields.length) {
6078
6161
  const { bubbleSizeFields = [] } = mergedOptions.layers[0];
6162
+ const fieldNames = new Set(
6163
+ fields.map(
6164
+ (field) => typeof field === "string" ? field : field.name
6165
+ )
6166
+ );
6079
6167
  mergedOptions.layers[0].additionalTooltipFields = mergedOptions.layers[0].additionalTooltipFields.filter(
6080
- (field) => (typeof fields[0] === "string" ? fields.includes(field) : fields.map((f) => f.name).includes(field)) && !bubbleSizeFields.includes(field)
6168
+ (field) => fieldNames.has(field) && !bubbleSizeFields.includes(field)
6081
6169
  );
6082
6170
  }
6083
6171
  }
6084
6172
  return /* @__PURE__ */ react_exports.createElement(Viz, __spreadValues({ dataSources, options: mergedOptions }, otherProps));
6085
6173
  };
6086
- VizWithTooltipFields.propTypes = Viz.propTypes;
6087
- VizWithTooltipFields.defaultProps = Viz.defaultProps;
6088
- VizWithTooltipFields.config = Viz.config;
6089
- return VizWithTooltipFields;
6174
+ return Object.assign(VizWithTooltipFields, { config: Viz.config });
6090
6175
  };
6091
6176
  var withoutInternalFields = (Viz) => {
6092
6177
  const VizWithoutInternalFields = (_a) => {
6093
- var _b = _a, { dataSources } = _b, otherProps = __objRest(_b, ["dataSources"]);
6178
+ var _b = _a, {
6179
+ dataSources,
6180
+ mode = "view",
6181
+ width = 800,
6182
+ height = 500
6183
+ } = _b, otherProps = __objRest(_b, [
6184
+ "dataSources",
6185
+ "mode",
6186
+ "width",
6187
+ "height"
6188
+ ]);
6094
6189
  var _a2;
6095
6190
  if (!((_a2 = dataSources == null ? void 0 : dataSources.primary) == null ? void 0 : _a2.data)) {
6096
- return /* @__PURE__ */ react_exports.createElement(Viz, __spreadValues({}, otherProps));
6191
+ return /* @__PURE__ */ react_exports.createElement(Viz, __spreadValues({ mode, width, height }, otherProps));
6097
6192
  }
6098
6193
  const { primary } = dataSources;
6099
6194
  const { columns, fields } = primary.data;
@@ -6120,16 +6215,27 @@ var withoutInternalFields = (Viz) => {
6120
6215
  })
6121
6216
  })
6122
6217
  });
6123
- return /* @__PURE__ */ react_exports.createElement(Viz, __spreadValues({ dataSources: modifiedDatasources }, otherProps));
6218
+ return /* @__PURE__ */ react_exports.createElement(
6219
+ Viz,
6220
+ __spreadValues({
6221
+ dataSources: modifiedDatasources,
6222
+ mode,
6223
+ width,
6224
+ height
6225
+ }, otherProps)
6226
+ );
6124
6227
  };
6125
- VizWithoutInternalFields.propTypes = Viz.propTypes;
6126
- VizWithoutInternalFields.defaultProps = Viz.defaultProps;
6127
- VizWithoutInternalFields.config = Viz.config;
6128
- return VizWithoutInternalFields;
6228
+ return Object.assign(VizWithoutInternalFields, { config: Viz.config });
6129
6229
  };
6130
6230
  var withNullToZeros = (Viz) => {
6131
6231
  const VizWithColumnsNullToZeros = (_a) => {
6132
- var _b = _a, { dataSources, options } = _b, otherProps = __objRest(_b, ["dataSources", "options"]);
6232
+ var _b = _a, {
6233
+ dataSources,
6234
+ options
6235
+ } = _b, otherProps = __objRest(_b, [
6236
+ "dataSources",
6237
+ "options"
6238
+ ]);
6133
6239
  var _a2;
6134
6240
  if (!((_a2 = dataSources == null ? void 0 : dataSources.primary) == null ? void 0 : _a2.data)) {
6135
6241
  return /* @__PURE__ */ react_exports.createElement(Viz, __spreadValues({ options }, otherProps));
@@ -6137,10 +6243,7 @@ var withNullToZeros = (Viz) => {
6137
6243
  const modifiedDatasources = columnsNullToZeros(config_default, dataSources, options);
6138
6244
  return /* @__PURE__ */ react_exports.createElement(Viz, __spreadValues({ dataSources: modifiedDatasources, options }, otherProps));
6139
6245
  };
6140
- VizWithColumnsNullToZeros.propTypes = Viz.propTypes;
6141
- VizWithColumnsNullToZeros.defaultProps = Viz.defaultProps;
6142
- VizWithColumnsNullToZeros.config = Viz.config;
6143
- return VizWithColumnsNullToZeros;
6246
+ return Object.assign(VizWithColumnsNullToZeros, { config: Viz.config });
6144
6247
  };
6145
6248
  function useIconPlaceholder(dataSources, loading) {
6146
6249
  return loading;