@grafana/scenes 6.8.0 → 6.9.0--canary.1093.14409340532.0

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 (321) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/dist/esm/components/VizPanel/VizPanelRenderer.js +4 -3
  3. package/dist/esm/components/VizPanel/VizPanelRenderer.js.map +1 -1
  4. package/dist/esm/index.js +1 -1
  5. package/dist/esm/index.js.map +1 -1
  6. package/dist/index.d.ts +1 -1
  7. package/dist/index.js +5 -4
  8. package/dist/index.js.map +1 -1
  9. package/package.json +2 -2
  10. package/dist/esm/components/layout/CSSGrid/SceneCSSGridItem.js +0 -33
  11. package/dist/esm/dist/esm/behaviors/CursorSync.js +0 -76
  12. package/dist/esm/dist/esm/behaviors/LiveNowTimer.js +0 -44
  13. package/dist/esm/dist/esm/behaviors/SceneQueryController.js +0 -14
  14. package/dist/esm/dist/esm/components/EmbeddedScene.js +0 -59
  15. package/dist/esm/dist/esm/components/NestedScene.js +0 -95
  16. package/dist/esm/dist/esm/components/SceneApp/SceneApp.js +0 -27
  17. package/dist/esm/dist/esm/components/SceneApp/SceneAppPage.js +0 -176
  18. package/dist/esm/dist/esm/components/SceneApp/SceneAppPageView.js +0 -104
  19. package/dist/esm/dist/esm/components/SceneApp/utils.js +0 -42
  20. package/dist/esm/dist/esm/components/SceneByFrameRepeater.js +0 -41
  21. package/dist/esm/dist/esm/components/SceneByVariableRepeater.js +0 -55
  22. package/dist/esm/dist/esm/components/SceneCanvasText.js +0 -32
  23. package/dist/esm/dist/esm/components/SceneControlsSpacer.js +0 -17
  24. package/dist/esm/dist/esm/components/SceneDebugger/DebugDetails.js +0 -82
  25. package/dist/esm/dist/esm/components/SceneDebugger/DebugTreeNode.js +0 -72
  26. package/dist/esm/dist/esm/components/SceneDebugger/SceneDebugger.js +0 -77
  27. package/dist/esm/dist/esm/components/SceneReactObject.js +0 -34
  28. package/dist/esm/dist/esm/components/SceneRefreshPicker.js +0 -205
  29. package/dist/esm/dist/esm/components/SceneTimePicker.js +0 -139
  30. package/dist/esm/dist/esm/components/SceneTimeRangeCompare.js +0 -240
  31. package/dist/esm/dist/esm/components/SceneToolbarButton.js +0 -33
  32. package/dist/esm/dist/esm/components/VizPanel/VizPanel.js +0 -406
  33. package/dist/esm/dist/esm/components/VizPanel/VizPanelExploreButton.js +0 -44
  34. package/dist/esm/dist/esm/components/VizPanel/VizPanelMenu.js +0 -59
  35. package/dist/esm/dist/esm/components/VizPanel/VizPanelRenderer.js +0 -285
  36. package/dist/esm/dist/esm/components/VizPanel/VizPanelSeriesLimit.js +0 -45
  37. package/dist/esm/dist/esm/components/VizPanel/colorSeriesConfigFactory.js +0 -72
  38. package/dist/esm/dist/esm/components/VizPanel/registerRuntimePanelPlugin.js +0 -11
  39. package/dist/esm/dist/esm/components/VizPanel/seriesVisibilityConfigFactory.js +0 -164
  40. package/dist/esm/dist/esm/components/layout/CSSGrid/SceneCSSGridLayout.js +0 -124
  41. package/dist/esm/dist/esm/components/layout/LazyLoader.js +0 -103
  42. package/dist/esm/dist/esm/components/layout/SceneFlexLayout.js +0 -135
  43. package/dist/esm/dist/esm/components/layout/grid/SceneGridItem.js +0 -30
  44. package/dist/esm/dist/esm/components/layout/grid/SceneGridLayout.js +0 -283
  45. package/dist/esm/dist/esm/components/layout/grid/SceneGridLayoutRenderer.js +0 -178
  46. package/dist/esm/dist/esm/components/layout/grid/SceneGridRow.js +0 -190
  47. package/dist/esm/dist/esm/components/layout/grid/constants.js +0 -7
  48. package/dist/esm/dist/esm/components/layout/grid/utils.js +0 -36
  49. package/dist/esm/dist/esm/components/layout/split/SplitLayout.js +0 -17
  50. package/dist/esm/dist/esm/components/layout/split/SplitLayoutRenderer.js +0 -29
  51. package/dist/esm/dist/esm/components/layout/split/Splitter.js +0 -386
  52. package/dist/esm/dist/esm/core/SceneComponentWrapper.js +0 -57
  53. package/dist/esm/dist/esm/core/SceneDataNode.js +0 -43
  54. package/dist/esm/dist/esm/core/SceneObjectBase.js +0 -286
  55. package/dist/esm/dist/esm/core/SceneObjectRef.js +0 -32
  56. package/dist/esm/dist/esm/core/SceneTimeRange.js +0 -231
  57. package/dist/esm/dist/esm/core/events.js +0 -11
  58. package/dist/esm/dist/esm/core/sceneGraph/getTimeRange.js +0 -10
  59. package/dist/esm/dist/esm/core/sceneGraph/index.js +0 -25
  60. package/dist/esm/dist/esm/core/sceneGraph/sceneGraph.js +0 -178
  61. package/dist/esm/dist/esm/core/sceneGraph/utils.js +0 -64
  62. package/dist/esm/dist/esm/core/types.js +0 -15
  63. package/dist/esm/dist/esm/querying/DataLayersMerger.js +0 -46
  64. package/dist/esm/dist/esm/querying/ExtraQueryProvider.js +0 -6
  65. package/dist/esm/dist/esm/querying/RuntimeDataSource.js +0 -6
  66. package/dist/esm/dist/esm/querying/SceneDataLayerSet.js +0 -100
  67. package/dist/esm/dist/esm/querying/SceneQueryRunner.js +0 -468
  68. package/dist/esm/dist/esm/querying/extraQueryProcessingOperator.js +0 -46
  69. package/dist/esm/dist/esm/querying/getEnrichedDataRequest.js +0 -12
  70. package/dist/esm/dist/esm/querying/layers/SceneDataLayerBase.js +0 -112
  71. package/dist/esm/dist/esm/querying/layers/SceneDataLayerControls.js +0 -51
  72. package/dist/esm/dist/esm/querying/layers/annotations/AnnotationsDataLayer.js +0 -130
  73. package/dist/esm/dist/esm/querying/layers/annotations/filterAnnotations.js +0 -85
  74. package/dist/esm/dist/esm/querying/layers/annotations/standardAnnotationQuery.js +0 -121
  75. package/dist/esm/dist/esm/querying/layers/annotations/standardAnnotationsSupport.js +0 -211
  76. package/dist/esm/dist/esm/querying/layers/annotations/utils.js +0 -77
  77. package/dist/esm/dist/esm/querying/registerQueryWithController.js +0 -41
  78. package/dist/esm/dist/esm/services/SceneObjectUrlSyncConfig.js +0 -30
  79. package/dist/esm/dist/esm/services/UniqueUrlKeyMapper.js +0 -45
  80. package/dist/esm/dist/esm/services/UrlSyncManager.js +0 -167
  81. package/dist/esm/dist/esm/services/useUrlSync.js +0 -29
  82. package/dist/esm/dist/esm/services/utils.js +0 -71
  83. package/dist/esm/dist/esm/utils/ControlsLabel.js +0 -107
  84. package/dist/esm/dist/esm/utils/LoadingIndicator.js +0 -19
  85. package/dist/esm/dist/esm/utils/SafeSerializableSceneObject.js +0 -39
  86. package/dist/esm/dist/esm/utils/compatibility/setWindowGrafanaSceneContext.js +0 -16
  87. package/dist/esm/dist/esm/utils/date.js +0 -15
  88. package/dist/esm/dist/esm/utils/evaluateTimeRange.js +0 -16
  89. package/dist/esm/dist/esm/utils/explore.js +0 -47
  90. package/dist/esm/dist/esm/utils/getCompareSeriesRefId.js +0 -4
  91. package/dist/esm/dist/esm/utils/getDataSource.js +0 -18
  92. package/dist/esm/dist/esm/utils/getMessageFromError.js +0 -24
  93. package/dist/esm/dist/esm/utils/metricTree.js +0 -53
  94. package/dist/esm/dist/esm/utils/parseUrlParam.js +0 -41
  95. package/dist/esm/dist/esm/utils/utils.js +0 -11
  96. package/dist/esm/dist/esm/utils/wrapInSafeSerializableSceneObject.js +0 -30
  97. package/dist/esm/dist/esm/utils/writeSceneLog.js +0 -12
  98. package/dist/esm/dist/esm/variables/VariableDependencyConfig.js +0 -150
  99. package/dist/esm/dist/esm/variables/VariableValueRecorder.js +0 -71
  100. package/dist/esm/dist/esm/variables/adhoc/AdHocFilterBuilder.js +0 -24
  101. package/dist/esm/dist/esm/variables/adhoc/AdHocFilterRenderer.js +0 -303
  102. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFilterPill.js +0 -162
  103. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersAlwaysWipCombobox.js +0 -20
  104. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js +0 -640
  105. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersComboboxRenderer.js +0 -65
  106. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/DropdownItem.js +0 -146
  107. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/MultiValuePill.js +0 -114
  108. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/useFloatingInteractions.js +0 -68
  109. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/utils.js +0 -146
  110. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersVariable.js +0 -289
  111. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersVariableUrlSyncHandler.js +0 -76
  112. package/dist/esm/dist/esm/variables/adhoc/getAdhocOptionSearcher.js +0 -13
  113. package/dist/esm/dist/esm/variables/adhoc/patchGetAdhocFilters.js +0 -47
  114. package/dist/esm/dist/esm/variables/components/VariableValueControl.js +0 -23
  115. package/dist/esm/dist/esm/variables/components/VariableValueInput.js +0 -33
  116. package/dist/esm/dist/esm/variables/components/VariableValueSelect.js +0 -228
  117. package/dist/esm/dist/esm/variables/components/VariableValueSelectors.js +0 -72
  118. package/dist/esm/dist/esm/variables/components/getOptionSearcher.js +0 -15
  119. package/dist/esm/dist/esm/variables/constants.js +0 -9
  120. package/dist/esm/dist/esm/variables/getEnrichedFiltersRequest.js +0 -12
  121. package/dist/esm/dist/esm/variables/groupby/GroupByVariable.js +0 -259
  122. package/dist/esm/dist/esm/variables/groupby/GroupByVariableUrlSyncHandler.js +0 -63
  123. package/dist/esm/dist/esm/variables/groupby/findActiveGroupByVariablesByUid.js +0 -13
  124. package/dist/esm/dist/esm/variables/interpolation/ScopedVarsVariable.js +0 -40
  125. package/dist/esm/dist/esm/variables/interpolation/defaults.js +0 -21
  126. package/dist/esm/dist/esm/variables/interpolation/fieldAccessorCache.js +0 -13
  127. package/dist/esm/dist/esm/variables/interpolation/formatRegistry.js +0 -296
  128. package/dist/esm/dist/esm/variables/interpolation/sceneInterpolator.js +0 -87
  129. package/dist/esm/dist/esm/variables/lookupVariable.js +0 -20
  130. package/dist/esm/dist/esm/variables/macros/AllVariablesMacro.js +0 -57
  131. package/dist/esm/dist/esm/variables/macros/contextMacros.js +0 -43
  132. package/dist/esm/dist/esm/variables/macros/dataMacros.js +0 -134
  133. package/dist/esm/dist/esm/variables/macros/index.js +0 -26
  134. package/dist/esm/dist/esm/variables/macros/templateProxies.js +0 -51
  135. package/dist/esm/dist/esm/variables/macros/timeMacros.js +0 -86
  136. package/dist/esm/dist/esm/variables/macros/types.js +0 -11
  137. package/dist/esm/dist/esm/variables/macros/urlMacros.js +0 -56
  138. package/dist/esm/dist/esm/variables/sets/SceneVariableSet.js +0 -254
  139. package/dist/esm/dist/esm/variables/types.js +0 -11
  140. package/dist/esm/dist/esm/variables/utils.js +0 -172
  141. package/dist/esm/dist/esm/variables/variants/ConstantVariable.js +0 -38
  142. package/dist/esm/dist/esm/variables/variants/CustomVariable.js +0 -60
  143. package/dist/esm/dist/esm/variables/variants/DataSourceVariable.js +0 -88
  144. package/dist/esm/dist/esm/variables/variants/IntervalVariable.js +0 -117
  145. package/dist/esm/dist/esm/variables/variants/MultiValueVariable.js +0 -295
  146. package/dist/esm/dist/esm/variables/variants/TestVariable.js +0 -117
  147. package/dist/esm/dist/esm/variables/variants/TextBoxVariable.js +0 -61
  148. package/dist/esm/dist/esm/variables/variants/query/QueryVariable.js +0 -139
  149. package/dist/esm/dist/esm/variables/variants/query/createQueryVariableRunner.js +0 -129
  150. package/dist/esm/dist/esm/variables/variants/query/guards.js +0 -28
  151. package/dist/esm/dist/esm/variables/variants/query/toMetricFindValues.js +0 -96
  152. package/dist/esm/dist/esm/variables/variants/query/utils.js +0 -124
  153. package/dist/esm/querying/DataProviderSharer.js +0 -39
  154. package/dist/esm/src/behaviors/ActWhenVariableChanged.js +0 -27
  155. package/dist/esm/src/behaviors/CursorSync.js +0 -76
  156. package/dist/esm/src/behaviors/LiveNowTimer.js +0 -44
  157. package/dist/esm/src/behaviors/SceneQueryController.js +0 -60
  158. package/dist/esm/src/behaviors/index.js +0 -5
  159. package/dist/esm/src/components/EmbeddedScene.js +0 -59
  160. package/dist/esm/src/components/NestedScene.js +0 -95
  161. package/dist/esm/src/components/SceneApp/SceneApp.js +0 -37
  162. package/dist/esm/src/components/SceneApp/SceneAppPage.js +0 -176
  163. package/dist/esm/src/components/SceneApp/SceneAppPageView.js +0 -104
  164. package/dist/esm/src/components/SceneApp/utils.js +0 -42
  165. package/dist/esm/src/components/SceneByFrameRepeater.js +0 -41
  166. package/dist/esm/src/components/SceneByVariableRepeater.js +0 -55
  167. package/dist/esm/src/components/SceneCanvasText.js +0 -32
  168. package/dist/esm/src/components/SceneControlsSpacer.js +0 -17
  169. package/dist/esm/src/components/SceneDebugger/DebugDetails.js +0 -82
  170. package/dist/esm/src/components/SceneDebugger/DebugTreeNode.js +0 -72
  171. package/dist/esm/src/components/SceneDebugger/SceneDebugger.js +0 -77
  172. package/dist/esm/src/components/SceneReactObject.js +0 -34
  173. package/dist/esm/src/components/SceneRefreshPicker.js +0 -205
  174. package/dist/esm/src/components/SceneTimePicker.js +0 -139
  175. package/dist/esm/src/components/SceneTimeRangeCompare.js +0 -240
  176. package/dist/esm/src/components/SceneToolbarButton.js +0 -33
  177. package/dist/esm/src/components/VizPanel/VizPanel.js +0 -406
  178. package/dist/esm/src/components/VizPanel/VizPanelExploreButton.js +0 -44
  179. package/dist/esm/src/components/VizPanel/VizPanelMenu.js +0 -59
  180. package/dist/esm/src/components/VizPanel/VizPanelRenderer.js +0 -285
  181. package/dist/esm/src/components/VizPanel/VizPanelSeriesLimit.js +0 -45
  182. package/dist/esm/src/components/VizPanel/colorSeriesConfigFactory.js +0 -72
  183. package/dist/esm/src/components/VizPanel/registerRuntimePanelPlugin.js +0 -56
  184. package/dist/esm/src/components/VizPanel/seriesVisibilityConfigFactory.js +0 -164
  185. package/dist/esm/src/components/layout/CSSGrid/SceneCSSGridLayout.js +0 -124
  186. package/dist/esm/src/components/layout/LazyLoader.js +0 -103
  187. package/dist/esm/src/components/layout/SceneFlexLayout.js +0 -135
  188. package/dist/esm/src/components/layout/grid/SceneGridItem.js +0 -30
  189. package/dist/esm/src/components/layout/grid/SceneGridLayout.js +0 -283
  190. package/dist/esm/src/components/layout/grid/SceneGridLayoutRenderer.js +0 -178
  191. package/dist/esm/src/components/layout/grid/SceneGridRow.js +0 -190
  192. package/dist/esm/src/components/layout/grid/constants.js +0 -7
  193. package/dist/esm/src/components/layout/grid/utils.js +0 -36
  194. package/dist/esm/src/components/layout/split/SplitLayout.js +0 -17
  195. package/dist/esm/src/components/layout/split/SplitLayoutRenderer.js +0 -29
  196. package/dist/esm/src/components/layout/split/Splitter.js +0 -386
  197. package/dist/esm/src/core/PanelBuilders/FieldConfigBuilder.js +0 -100
  198. package/dist/esm/src/core/PanelBuilders/FieldConfigBuilders.js +0 -75
  199. package/dist/esm/src/core/PanelBuilders/FieldConfigOverridesBuilder.js +0 -75
  200. package/dist/esm/src/core/PanelBuilders/PanelOptionsBuilder.js +0 -22
  201. package/dist/esm/src/core/PanelBuilders/PanelOptionsBuilders.js +0 -85
  202. package/dist/esm/src/core/PanelBuilders/StandardFieldConfigBuilders.js +0 -52
  203. package/dist/esm/src/core/PanelBuilders/VizConfigBuilder.js +0 -78
  204. package/dist/esm/src/core/PanelBuilders/VizConfigBuilders.js +0 -114
  205. package/dist/esm/src/core/PanelBuilders/VizPanelBuilder.js +0 -162
  206. package/dist/esm/src/core/PanelBuilders/index.js +0 -116
  207. package/dist/esm/src/core/SceneComponentWrapper.js +0 -57
  208. package/dist/esm/src/core/SceneDataNode.js +0 -43
  209. package/dist/esm/src/core/SceneObjectBase.js +0 -286
  210. package/dist/esm/src/core/SceneObjectRef.js +0 -32
  211. package/dist/esm/src/core/SceneTimeRange.js +0 -231
  212. package/dist/esm/src/core/SceneTimeRangeTransformerBase.js +0 -35
  213. package/dist/esm/src/core/SceneTimeZoneOverride.js +0 -63
  214. package/dist/esm/src/core/events.js +0 -11
  215. package/dist/esm/src/core/sceneGraph/getTimeRange.js +0 -10
  216. package/dist/esm/src/core/sceneGraph/index.js +0 -25
  217. package/dist/esm/src/core/sceneGraph/sceneGraph.js +0 -178
  218. package/dist/esm/src/core/sceneGraph/utils.js +0 -64
  219. package/dist/esm/src/core/types.js +0 -15
  220. package/dist/esm/src/index.js +0 -108
  221. package/dist/esm/src/querying/DataLayersMerger.js +0 -46
  222. package/dist/esm/src/querying/DataProviderProxy.js +0 -37
  223. package/dist/esm/src/querying/DataProviderSharer.js +0 -108
  224. package/dist/esm/src/querying/ExtraQueryProvider.js +0 -6
  225. package/dist/esm/src/querying/RuntimeDataSource.js +0 -49
  226. package/dist/esm/src/querying/SceneDataLayerSet.js +0 -100
  227. package/dist/esm/src/querying/SceneDataTransformer.js +0 -178
  228. package/dist/esm/src/querying/SceneQueryRunner.js +0 -468
  229. package/dist/esm/src/querying/extraQueryProcessingOperator.js +0 -46
  230. package/dist/esm/src/querying/getEnrichedDataRequest.js +0 -12
  231. package/dist/esm/src/querying/layers/SceneDataLayerBase.js +0 -112
  232. package/dist/esm/src/querying/layers/SceneDataLayerControls.js +0 -51
  233. package/dist/esm/src/querying/layers/annotations/AnnotationsDataLayer.js +0 -130
  234. package/dist/esm/src/querying/layers/annotations/filterAnnotations.js +0 -85
  235. package/dist/esm/src/querying/layers/annotations/standardAnnotationQuery.js +0 -121
  236. package/dist/esm/src/querying/layers/annotations/standardAnnotationsSupport.js +0 -211
  237. package/dist/esm/src/querying/layers/annotations/utils.js +0 -77
  238. package/dist/esm/src/querying/layers/index.js +0 -2
  239. package/dist/esm/src/querying/registerQueryWithController.js +0 -41
  240. package/dist/esm/src/services/SceneObjectUrlSyncConfig.js +0 -30
  241. package/dist/esm/src/services/UniqueUrlKeyMapper.js +0 -45
  242. package/dist/esm/src/services/UrlSyncContextProvider.js +0 -17
  243. package/dist/esm/src/services/UrlSyncManager.js +0 -167
  244. package/dist/esm/src/services/useUrlSync.js +0 -29
  245. package/dist/esm/src/services/utils.js +0 -75
  246. package/dist/esm/src/utils/ControlsLabel.js +0 -107
  247. package/dist/esm/src/utils/LoadingIndicator.js +0 -19
  248. package/dist/esm/src/utils/SafeSerializableSceneObject.js +0 -39
  249. package/dist/esm/src/utils/compatibility/setWindowGrafanaSceneContext.js +0 -16
  250. package/dist/esm/src/utils/date.js +0 -15
  251. package/dist/esm/src/utils/evaluateTimeRange.js +0 -16
  252. package/dist/esm/src/utils/explore.js +0 -47
  253. package/dist/esm/src/utils/getCompareSeriesRefId.js +0 -4
  254. package/dist/esm/src/utils/getDataSource.js +0 -18
  255. package/dist/esm/src/utils/getMessageFromError.js +0 -24
  256. package/dist/esm/src/utils/metricTree.js +0 -53
  257. package/dist/esm/src/utils/parseUrlParam.js +0 -41
  258. package/dist/esm/src/utils/utils.js +0 -11
  259. package/dist/esm/src/utils/wrapInSafeSerializableSceneObject.js +0 -30
  260. package/dist/esm/src/utils/writeSceneLog.js +0 -12
  261. package/dist/esm/src/variables/VariableDependencyConfig.js +0 -150
  262. package/dist/esm/src/variables/VariableValueRecorder.js +0 -71
  263. package/dist/esm/src/variables/adhoc/AdHocFilterBuilder.js +0 -24
  264. package/dist/esm/src/variables/adhoc/AdHocFilterRenderer.js +0 -303
  265. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFilterPill.js +0 -162
  266. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersAlwaysWipCombobox.js +0 -20
  267. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js +0 -640
  268. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersComboboxRenderer.js +0 -65
  269. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/DropdownItem.js +0 -146
  270. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/MultiValuePill.js +0 -114
  271. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/useFloatingInteractions.js +0 -68
  272. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/utils.js +0 -146
  273. package/dist/esm/src/variables/adhoc/AdHocFiltersVariable.js +0 -289
  274. package/dist/esm/src/variables/adhoc/AdHocFiltersVariableUrlSyncHandler.js +0 -76
  275. package/dist/esm/src/variables/adhoc/getAdhocOptionSearcher.js +0 -13
  276. package/dist/esm/src/variables/adhoc/patchGetAdhocFilters.js +0 -47
  277. package/dist/esm/src/variables/components/VariableValueControl.js +0 -23
  278. package/dist/esm/src/variables/components/VariableValueInput.js +0 -33
  279. package/dist/esm/src/variables/components/VariableValueSelect.js +0 -228
  280. package/dist/esm/src/variables/components/VariableValueSelectors.js +0 -72
  281. package/dist/esm/src/variables/components/getOptionSearcher.js +0 -15
  282. package/dist/esm/src/variables/constants.js +0 -9
  283. package/dist/esm/src/variables/getEnrichedFiltersRequest.js +0 -12
  284. package/dist/esm/src/variables/groupby/GroupByVariable.js +0 -259
  285. package/dist/esm/src/variables/groupby/GroupByVariableUrlSyncHandler.js +0 -63
  286. package/dist/esm/src/variables/groupby/findActiveGroupByVariablesByUid.js +0 -13
  287. package/dist/esm/src/variables/interpolation/ScopedVarsVariable.js +0 -40
  288. package/dist/esm/src/variables/interpolation/defaults.js +0 -21
  289. package/dist/esm/src/variables/interpolation/fieldAccessorCache.js +0 -13
  290. package/dist/esm/src/variables/interpolation/formatRegistry.js +0 -296
  291. package/dist/esm/src/variables/interpolation/sceneInterpolator.js +0 -87
  292. package/dist/esm/src/variables/lookupVariable.js +0 -20
  293. package/dist/esm/src/variables/macros/AllVariablesMacro.js +0 -57
  294. package/dist/esm/src/variables/macros/contextMacros.js +0 -43
  295. package/dist/esm/src/variables/macros/dataMacros.js +0 -134
  296. package/dist/esm/src/variables/macros/index.js +0 -35
  297. package/dist/esm/src/variables/macros/templateProxies.js +0 -51
  298. package/dist/esm/src/variables/macros/timeMacros.js +0 -86
  299. package/dist/esm/src/variables/macros/types.js +0 -11
  300. package/dist/esm/src/variables/macros/urlMacros.js +0 -56
  301. package/dist/esm/src/variables/sets/SceneVariableSet.js +0 -254
  302. package/dist/esm/src/variables/types.js +0 -11
  303. package/dist/esm/src/variables/utils.js +0 -172
  304. package/dist/esm/src/variables/variants/ConstantVariable.js +0 -38
  305. package/dist/esm/src/variables/variants/CustomVariable.js +0 -60
  306. package/dist/esm/src/variables/variants/DataSourceVariable.js +0 -88
  307. package/dist/esm/src/variables/variants/IntervalVariable.js +0 -117
  308. package/dist/esm/src/variables/variants/JsonVariable.js +0 -193
  309. package/dist/esm/src/variables/variants/LocalValueVariable.js +0 -56
  310. package/dist/esm/src/variables/variants/MultiValueVariable.js +0 -295
  311. package/dist/esm/src/variables/variants/TestVariable.js +0 -117
  312. package/dist/esm/src/variables/variants/TextBoxVariable.js +0 -61
  313. package/dist/esm/src/variables/variants/guards.js +0 -27
  314. package/dist/esm/src/variables/variants/query/QueryVariable.js +0 -139
  315. package/dist/esm/src/variables/variants/query/createQueryVariableRunner.js +0 -129
  316. package/dist/esm/src/variables/variants/query/guards.js +0 -28
  317. package/dist/esm/src/variables/variants/query/toMetricFindValues.js +0 -96
  318. package/dist/esm/src/variables/variants/query/utils.js +0 -124
  319. package/dist/esm/variables/variants/JsonVariable.js +0 -96
  320. package/dist/esm/variables/variants/json/JsonVariable.js +0 -95
  321. package/dist/esm/variables/variants/json/JsonVariableOptionProviders.js +0 -70
@@ -1,72 +0,0 @@
1
- import { FieldMatcherID, FieldColorModeId } from '@grafana/data';
2
-
3
- var __defProp = Object.defineProperty;
4
- var __defProps = Object.defineProperties;
5
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
- var __spreadValues = (a, b) => {
11
- for (var prop in b || (b = {}))
12
- if (__hasOwnProp.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- if (__getOwnPropSymbols)
15
- for (var prop of __getOwnPropSymbols(b)) {
16
- if (__propIsEnum.call(b, prop))
17
- __defNormalProp(a, prop, b[prop]);
18
- }
19
- return a;
20
- };
21
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
22
- const changeSeriesColorConfigFactory = (label, color, fieldConfig) => {
23
- const { overrides } = fieldConfig;
24
- const currentIndex = fieldConfig.overrides.findIndex((override) => {
25
- return override.matcher.id === FieldMatcherID.byName && override.matcher.options === label;
26
- });
27
- if (currentIndex < 0) {
28
- return __spreadProps(__spreadValues({}, fieldConfig), {
29
- overrides: [...fieldConfig.overrides, createOverride(label, color)]
30
- });
31
- }
32
- const overridesCopy = Array.from(overrides);
33
- const existing = overridesCopy[currentIndex];
34
- const propertyIndex = existing.properties.findIndex((p) => p.id === "color");
35
- if (propertyIndex < 0) {
36
- overridesCopy[currentIndex] = __spreadProps(__spreadValues({}, existing), {
37
- properties: [...existing.properties, createProperty(color)]
38
- });
39
- return __spreadProps(__spreadValues({}, fieldConfig), {
40
- overrides: overridesCopy
41
- });
42
- }
43
- const propertiesCopy = Array.from(existing.properties);
44
- propertiesCopy[propertyIndex] = createProperty(color);
45
- overridesCopy[currentIndex] = __spreadProps(__spreadValues({}, existing), {
46
- properties: propertiesCopy
47
- });
48
- return __spreadProps(__spreadValues({}, fieldConfig), {
49
- overrides: overridesCopy
50
- });
51
- };
52
- const createOverride = (label, color) => {
53
- return {
54
- matcher: {
55
- id: FieldMatcherID.byName,
56
- options: label
57
- },
58
- properties: [createProperty(color)]
59
- };
60
- };
61
- const createProperty = (color) => {
62
- return {
63
- id: "color",
64
- value: {
65
- mode: FieldColorModeId.Fixed,
66
- fixedColor: color
67
- }
68
- };
69
- };
70
-
71
- export { changeSeriesColorConfigFactory };
72
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3JTZXJpZXNDb25maWdGYWN0b3J5LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9jb21wb25lbnRzL1ZpelBhbmVsL2NvbG9yU2VyaWVzQ29uZmlnRmFjdG9yeS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaWVsZE1hdGNoZXJJRCwgRmllbGRDb2xvck1vZGVJZCB9IGZyb20gJ0BncmFmYW5hL2RhdGEnO1xuXG52YXIgX19kZWZQcm9wID0gT2JqZWN0LmRlZmluZVByb3BlcnR5O1xudmFyIF9fZGVmUHJvcHMgPSBPYmplY3QuZGVmaW5lUHJvcGVydGllcztcbnZhciBfX2dldE93blByb3BEZXNjcyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzO1xudmFyIF9fZ2V0T3duUHJvcFN5bWJvbHMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzO1xudmFyIF9faGFzT3duUHJvcCA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7XG52YXIgX19wcm9wSXNFbnVtID0gT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZTtcbnZhciBfX2RlZk5vcm1hbFByb3AgPSAob2JqLCBrZXksIHZhbHVlKSA9PiBrZXkgaW4gb2JqID8gX19kZWZQcm9wKG9iaiwga2V5LCB7IGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUsIHZhbHVlIH0pIDogb2JqW2tleV0gPSB2YWx1ZTtcbnZhciBfX3NwcmVhZFZhbHVlcyA9IChhLCBiKSA9PiB7XG4gIGZvciAodmFyIHByb3AgaW4gYiB8fCAoYiA9IHt9KSlcbiAgICBpZiAoX19oYXNPd25Qcm9wLmNhbGwoYiwgcHJvcCkpXG4gICAgICBfX2RlZk5vcm1hbFByb3AoYSwgcHJvcCwgYltwcm9wXSk7XG4gIGlmIChfX2dldE93blByb3BTeW1ib2xzKVxuICAgIGZvciAodmFyIHByb3Agb2YgX19nZXRPd25Qcm9wU3ltYm9scyhiKSkge1xuICAgICAgaWYgKF9fcHJvcElzRW51bS5jYWxsKGIsIHByb3ApKVxuICAgICAgICBfX2RlZk5vcm1hbFByb3AoYSwgcHJvcCwgYltwcm9wXSk7XG4gICAgfVxuICByZXR1cm4gYTtcbn07XG52YXIgX19zcHJlYWRQcm9wcyA9IChhLCBiKSA9PiBfX2RlZlByb3BzKGEsIF9fZ2V0T3duUHJvcERlc2NzKGIpKTtcbmNvbnN0IGNoYW5nZVNlcmllc0NvbG9yQ29uZmlnRmFjdG9yeSA9IChsYWJlbCwgY29sb3IsIGZpZWxkQ29uZmlnKSA9PiB7XG4gIGNvbnN0IHsgb3ZlcnJpZGVzIH0gPSBmaWVsZENvbmZpZztcbiAgY29uc3QgY3VycmVudEluZGV4ID0gZmllbGRDb25maWcub3ZlcnJpZGVzLmZpbmRJbmRleCgob3ZlcnJpZGUpID0+IHtcbiAgICByZXR1cm4gb3ZlcnJpZGUubWF0Y2hlci5pZCA9PT0gRmllbGRNYXRjaGVySUQuYnlOYW1lICYmIG92ZXJyaWRlLm1hdGNoZXIub3B0aW9ucyA9PT0gbGFiZWw7XG4gIH0pO1xuICBpZiAoY3VycmVudEluZGV4IDwgMCkge1xuICAgIHJldHVybiBfX3NwcmVhZFByb3BzKF9fc3ByZWFkVmFsdWVzKHt9LCBmaWVsZENvbmZpZyksIHtcbiAgICAgIG92ZXJyaWRlczogWy4uLmZpZWxkQ29uZmlnLm92ZXJyaWRlcywgY3JlYXRlT3ZlcnJpZGUobGFiZWwsIGNvbG9yKV1cbiAgICB9KTtcbiAgfVxuICBjb25zdCBvdmVycmlkZXNDb3B5ID0gQXJyYXkuZnJvbShvdmVycmlkZXMpO1xuICBjb25zdCBleGlzdGluZyA9IG92ZXJyaWRlc0NvcHlbY3VycmVudEluZGV4XTtcbiAgY29uc3QgcHJvcGVydHlJbmRleCA9IGV4aXN0aW5nLnByb3BlcnRpZXMuZmluZEluZGV4KChwKSA9PiBwLmlkID09PSBcImNvbG9yXCIpO1xuICBpZiAocHJvcGVydHlJbmRleCA8IDApIHtcbiAgICBvdmVycmlkZXNDb3B5W2N1cnJlbnRJbmRleF0gPSBfX3NwcmVhZFByb3BzKF9fc3ByZWFkVmFsdWVzKHt9LCBleGlzdGluZyksIHtcbiAgICAgIHByb3BlcnRpZXM6IFsuLi5leGlzdGluZy5wcm9wZXJ0aWVzLCBjcmVhdGVQcm9wZXJ0eShjb2xvcildXG4gICAgfSk7XG4gICAgcmV0dXJuIF9fc3ByZWFkUHJvcHMoX19zcHJlYWRWYWx1ZXMoe30sIGZpZWxkQ29uZmlnKSwge1xuICAgICAgb3ZlcnJpZGVzOiBvdmVycmlkZXNDb3B5XG4gICAgfSk7XG4gIH1cbiAgY29uc3QgcHJvcGVydGllc0NvcHkgPSBBcnJheS5mcm9tKGV4aXN0aW5nLnByb3BlcnRpZXMpO1xuICBwcm9wZXJ0aWVzQ29weVtwcm9wZXJ0eUluZGV4XSA9IGNyZWF0ZVByb3BlcnR5KGNvbG9yKTtcbiAgb3ZlcnJpZGVzQ29weVtjdXJyZW50SW5kZXhdID0gX19zcHJlYWRQcm9wcyhfX3NwcmVhZFZhbHVlcyh7fSwgZXhpc3RpbmcpLCB7XG4gICAgcHJvcGVydGllczogcHJvcGVydGllc0NvcHlcbiAgfSk7XG4gIHJldHVybiBfX3NwcmVhZFByb3BzKF9fc3ByZWFkVmFsdWVzKHt9LCBmaWVsZENvbmZpZyksIHtcbiAgICBvdmVycmlkZXM6IG92ZXJyaWRlc0NvcHlcbiAgfSk7XG59O1xuY29uc3QgY3JlYXRlT3ZlcnJpZGUgPSAobGFiZWwsIGNvbG9yKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbWF0Y2hlcjoge1xuICAgICAgaWQ6IEZpZWxkTWF0Y2hlcklELmJ5TmFtZSxcbiAgICAgIG9wdGlvbnM6IGxhYmVsXG4gICAgfSxcbiAgICBwcm9wZXJ0aWVzOiBbY3JlYXRlUHJvcGVydHkoY29sb3IpXVxuICB9O1xufTtcbmNvbnN0IGNyZWF0ZVByb3BlcnR5ID0gKGNvbG9yKSA9PiB7XG4gIHJldHVybiB7XG4gICAgaWQ6IFwiY29sb3JcIixcbiAgICB2YWx1ZToge1xuICAgICAgbW9kZTogRmllbGRDb2xvck1vZGVJZC5GaXhlZCxcbiAgICAgIGZpeGVkQ29sb3I6IGNvbG9yXG4gICAgfVxuICB9O1xufTtcblxuZXhwb3J0IHsgY2hhbmdlU2VyaWVzQ29sb3JDb25maWdGYWN0b3J5IH07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaVkyOXNiM0pUWlhKcFpYTkRiMjVtYVdkR1lXTjBiM0o1TG1weklpd2ljMjkxY21ObGN5STZXeUl1TGk4dUxpOHVMaTh1TGk5emNtTXZZMjl0Y0c5dVpXNTBjeTlXYVhwUVlXNWxiQzlqYjJ4dmNsTmxjbWxsYzBOdmJtWnBaMFpoWTNSdmNua3VkSE1pWFN3aWMyOTFjbU5sYzBOdmJuUmxiblFpT2xzaWFXMXdiM0owSUh0Y2JpQWdRMjl1Wm1sblQzWmxjbkpwWkdWU2RXeGxMRnh1SUNCRWVXNWhiV2xqUTI5dVptbG5WbUZzZFdVc1hHNGdJRVpwWld4a1EyOXNiM0pOYjJSbFNXUXNYRzRnSUVacFpXeGtRMjl1Wm1sblUyOTFjbU5sTEZ4dUlDQkdhV1ZzWkUxaGRHTm9aWEpKUkN4Y2JuMGdabkp2YlNBblFHZHlZV1poYm1FdlpHRjBZU2M3WEc1Y2JtVjRjRzl5ZENCamIyNXpkQ0JqYUdGdVoyVlRaWEpwWlhORGIyeHZja052Ym1acFowWmhZM1J2Y25rZ1BTQW9YRzRnSUd4aFltVnNPaUJ6ZEhKcGJtY3NYRzRnSUdOdmJHOXlPaUJ6ZEhKcGJtY3NYRzRnSUdacFpXeGtRMjl1Wm1sbk9pQkdhV1ZzWkVOdmJtWnBaMU52ZFhKalpWeHVLVG9nUm1sbGJHUkRiMjVtYVdkVGIzVnlZMlVnUFQ0Z2UxeHVJQ0JqYjI1emRDQjdJRzkyWlhKeWFXUmxjeUI5SUQwZ1ptbGxiR1JEYjI1bWFXYzdYRzRnSUdOdmJuTjBJR04xY25KbGJuUkpibVJsZUNBOUlHWnBaV3hrUTI5dVptbG5MbTkyWlhKeWFXUmxjeTVtYVc1a1NXNWtaWGdvS0c5MlpYSnlhV1JsS1NBOVBpQjdYRzRnSUNBZ2NtVjBkWEp1SUc5MlpYSnlhV1JsTG0xaGRHTm9aWEl1YVdRZ1BUMDlJRVpwWld4a1RXRjBZMmhsY2tsRUxtSjVUbUZ0WlNBbUppQnZkbVZ5Y21sa1pTNXRZWFJqYUdWeUxtOXdkR2x2Ym5NZ1BUMDlJR3hoWW1Wc08xeHVJQ0I5S1R0Y2JseHVJQ0JwWmlBb1kzVnljbVZ1ZEVsdVpHVjRJRHdnTUNrZ2UxeHVJQ0FnSUhKbGRIVnliaUI3WEc0Z0lDQWdJQ0F1TGk1bWFXVnNaRU52Ym1acFp5eGNiaUFnSUNBZ0lHOTJaWEp5YVdSbGN6b2dXeTR1TG1acFpXeGtRMjl1Wm1sbkxtOTJaWEp5YVdSbGN5d2dZM0psWVhSbFQzWmxjbkpwWkdVb2JHRmlaV3dzSUdOdmJHOXlLVjBzWEc0Z0lDQWdmVHRjYmlBZ2ZWeHVYRzRnSUdOdmJuTjBJRzkyWlhKeWFXUmxjME52Y0hrZ1BTQkJjbkpoZVM1bWNtOXRLRzkyWlhKeWFXUmxjeWs3WEc0Z0lHTnZibk4wSUdWNGFYTjBhVzVuSUQwZ2IzWmxjbkpwWkdWelEyOXdlVnRqZFhKeVpXNTBTVzVrWlhoZE8xeHVJQ0JqYjI1emRDQndjbTl3WlhKMGVVbHVaR1Y0SUQwZ1pYaHBjM1JwYm1jdWNISnZjR1Z5ZEdsbGN5NW1hVzVrU1c1a1pYZ29LSEFwSUQwK0lIQXVhV1FnUFQwOUlDZGpiMnh2Y2ljcE8xeHVYRzRnSUdsbUlDaHdjbTl3WlhKMGVVbHVaR1Y0SUR3Z01Da2dlMXh1SUNBZ0lHOTJaWEp5YVdSbGMwTnZjSGxiWTNWeWNtVnVkRWx1WkdWNFhTQTlJSHRjYmlBZ0lDQWdJQzR1TG1WNGFYTjBhVzVuTEZ4dUlDQWdJQ0FnY0hKdmNHVnlkR2xsY3pvZ1d5NHVMbVY0YVhOMGFXNW5MbkJ5YjNCbGNuUnBaWE1zSUdOeVpXRjBaVkJ5YjNCbGNuUjVLR052Ykc5eUtWMHNYRzRnSUNBZ2ZUdGNibHh1SUNBZ0lISmxkSFZ5YmlCN1hHNGdJQ0FnSUNBdUxpNW1hV1ZzWkVOdmJtWnBaeXhjYmlBZ0lDQWdJRzkyWlhKeWFXUmxjem9nYjNabGNuSnBaR1Z6UTI5d2VTeGNiaUFnSUNCOU8xeHVJQ0I5WEc1Y2JpQWdZMjl1YzNRZ2NISnZjR1Z5ZEdsbGMwTnZjSGtnUFNCQmNuSmhlUzVtY205dEtHVjRhWE4wYVc1bkxuQnliM0JsY25ScFpYTXBPMXh1SUNCd2NtOXdaWEowYVdWelEyOXdlVnR3Y205d1pYSjBlVWx1WkdWNFhTQTlJR055WldGMFpWQnliM0JsY25SNUtHTnZiRzl5S1R0Y2JseHVJQ0J2ZG1WeWNtbGtaWE5EYjNCNVcyTjFjbkpsYm5SSmJtUmxlRjBnUFNCN1hHNGdJQ0FnTGk0dVpYaHBjM1JwYm1jc1hHNGdJQ0FnY0hKdmNHVnlkR2xsY3pvZ2NISnZjR1Z5ZEdsbGMwTnZjSGtzWEc0Z0lIMDdYRzVjYmlBZ2NtVjBkWEp1SUh0Y2JpQWdJQ0F1TGk1bWFXVnNaRU52Ym1acFp5eGNiaUFnSUNCdmRtVnljbWxrWlhNNklHOTJaWEp5YVdSbGMwTnZjSGtzWEc0Z0lIMDdYRzU5TzF4dVhHNWpiMjV6ZENCamNtVmhkR1ZQZG1WeWNtbGtaU0E5SUNoc1lXSmxiRG9nYzNSeWFXNW5MQ0JqYjJ4dmNqb2djM1J5YVc1bktUb2dRMjl1Wm1sblQzWmxjbkpwWkdWU2RXeGxJRDArSUh0Y2JpQWdjbVYwZFhKdUlIdGNiaUFnSUNCdFlYUmphR1Z5T2lCN1hHNGdJQ0FnSUNCcFpEb2dSbWxsYkdSTllYUmphR1Z5U1VRdVlubE9ZVzFsTEZ4dUlDQWdJQ0FnYjNCMGFXOXVjem9nYkdGaVpXd3NYRzRnSUNBZ2ZTeGNiaUFnSUNCd2NtOXdaWEowYVdWek9pQmJZM0psWVhSbFVISnZjR1Z5ZEhrb1kyOXNiM0lwWFN4Y2JpQWdmVHRjYm4wN1hHNWNibU52Ym5OMElHTnlaV0YwWlZCeWIzQmxjblI1SUQwZ0tHTnZiRzl5T2lCemRISnBibWNwT2lCRWVXNWhiV2xqUTI5dVptbG5WbUZzZFdVZ1BUNGdlMXh1SUNCeVpYUjFjbTRnZTF4dUlDQWdJR2xrT2lBblkyOXNiM0luTEZ4dUlDQWdJSFpoYkhWbE9pQjdYRzRnSUNBZ0lDQnRiMlJsT2lCR2FXVnNaRU52Ykc5eVRXOWtaVWxrTGtacGVHVmtMRnh1SUNBZ0lDQWdabWw0WldSRGIyeHZjam9nWTI5c2IzSXNYRzRnSUNBZ2ZTeGNiaUFnZlR0Y2JuMDdYRzRpWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJanM3T3pzN096czdPenM3T3pzN096czdPenM3TzBGQlVVOHNUVUZCVFN3NFFrRkJhVU1zUjBGQlFTeERRVU0xUXl4TFFVTkJMRVZCUVVFc1MwRkJRU3hGUVVOQkxGZEJRM05DTEV0QlFVRTdRVUZEZEVJc1JVRkJUU3hOUVVGQkxFVkJRVVVzVjBGQll5eEhRVUZCTEZkQlFVRXNRMEZCUVR0QlFVTjBRaXhGUVVGQkxFMUJRVTBzV1VGQlpTeEhRVUZCTEZkQlFVRXNRMEZCV1N4VFFVRlZMRU5CUVVFc1UwRkJRU3hEUVVGVkxFTkJRVU1zVVVGQllTeExRVUZCTzBGQlEycEZMRWxCUVVFc1QwRkJUeXhUUVVGVExFOUJRVkVzUTBGQlFTeEZRVUZCTEV0QlFVOHNaVUZCWlN4TlFVRlZMRWxCUVVFc1VVRkJRU3hEUVVGVExGRkJRVkVzVDBGQldTeExRVUZCTEV0QlFVRXNRMEZCUVR0QlFVRkJMRWRCUTNSR0xFTkJRVUVzUTBGQlFUdEJRVVZFTEVWQlFVRXNTVUZCU1N4bFFVRmxMRU5CUVVjc1JVRkJRVHRCUVVOd1FpeEpRVUZCTEU5QlFVOHNhVU5CUTBZc1YwRkVSU3hEUVVGQkxFVkJRVUU3UVVGQlFTeE5RVVZNTEZOQlFVRXNSVUZCVnl4RFFVRkRMRWRCUVVjc1YwRkJRU3hEUVVGWkxGZEJRVmNzWTBGQlpTeERRVUZCTEV0QlFVRXNSVUZCVHl4TFFVRkxMRU5CUVVNc1EwRkJRVHRCUVVGQkxFdEJRM0JGTEVOQlFVRXNRMEZCUVR0QlFVRkJMRWRCUTBZN1FVRkZRU3hGUVVGTkxFMUJRVUVzWVVGQlFTeEhRVUZuUWl4TFFVRk5MRU5CUVVFc1NVRkJRU3hEUVVGTExGTkJRVk1zUTBGQlFTeERRVUZCTzBGQlF6RkRMRVZCUVVFc1RVRkJUU3hYUVVGWExHRkJRV01zUTBGQlFTeFpRVUZCTEVOQlFVRXNRMEZCUVR0QlFVTXZRaXhGUVVGTkxFMUJRVUVzWVVGQlFTeEhRVUZuUWl4VFFVRlRMRlZCUVZjc1EwRkJRU3hUUVVGQkxFTkJRVlVzUTBGQlF5eERRVUZOTEV0QlFVRXNRMEZCUVN4RFFVRkZMRTlCUVU4c1QwRkJUeXhEUVVGQkxFTkJRVUU3UVVGRk0wVXNSVUZCUVN4SlFVRkpMR2RDUVVGblFpeERRVUZITEVWQlFVRTdRVUZEY2tJc1NVRkJZeXhoUVVGQkxFTkJRVUVzV1VGQlFTeERRVUZCTEVkQlFXZENMR2xEUVVONlFpeFJRVVI1UWl4RFFVRkJMRVZCUVVFN1FVRkJRU3hOUVVVMVFpeFpRVUZaTEVOQlFVTXNSMEZCUnl4VFFVRlRMRlZCUVZrc1JVRkJRU3hqUVVGQkxFTkJRV1VzUzBGQlN5eERRVUZETEVOQlFVRTdRVUZCUVN4TFFVTTFSQ3hEUVVGQkxFTkJRVUU3UVVGRlFTeEpRVUZCTEU5QlFVOHNhVU5CUTBZc1YwRkVSU3hEUVVGQkxFVkJRVUU3UVVGQlFTeE5RVVZNTEZOQlFWY3NSVUZCUVN4aFFVRkJPMEZCUVVFc1MwRkRZaXhEUVVGQkxFTkJRVUU3UVVGQlFTeEhRVU5HTzBGQlJVRXNSVUZCUVN4TlFVRk5MR05CUVdsQ0xFZEJRVUVzUzBGQlFTeERRVUZOTEVsQlFVc3NRMEZCUVN4UlFVRkJMRU5CUVZNc1ZVRkJWU3hEUVVGQkxFTkJRVUU3UVVGRGNrUXNSVUZCWlN4alFVRkJMRU5CUVVFc1lVRkJRU3hEUVVGQkxFZEJRV2xDTEdWQlFXVXNTMEZCU3l4RFFVRkJMRU5CUVVFN1FVRkZjRVFzUlVGQll5eGhRVUZCTEVOQlFVRXNXVUZCUVN4RFFVRkJMRWRCUVdkQ0xHbERRVU42UWl4UlFVUjVRaXhEUVVGQkxFVkJRVUU3UVVGQlFTeEpRVVUxUWl4VlFVRlpMRVZCUVVFc1kwRkJRVHRCUVVGQkxFZEJRMlFzUTBGQlFTeERRVUZCTzBGQlJVRXNSVUZCUVN4UFFVRlBMR2xEUVVOR0xGZEJSRVVzUTBGQlFTeEZRVUZCTzBGQlFVRXNTVUZGVEN4VFFVRlhMRVZCUVVFc1lVRkJRVHRCUVVGQkxFZEJRMklzUTBGQlFTeERRVUZCTzBGQlEwWXNSVUZCUVR0QlFVVkJMRTFCUVUwc1kwRkJRU3hIUVVGcFFpeERRVUZETEV0QlFVRXNSVUZCWlN4TFFVRnpReXhMUVVGQk8wRkJRek5GTEVWQlFVOHNUMEZCUVR0QlFVRkJMRWxCUTB3c1QwRkJVeXhGUVVGQk8wRkJRVUVzVFVGRFVDeEpRVUZKTEdOQlFXVXNRMEZCUVN4TlFVRkJPMEZCUVVFc1RVRkRia0lzVDBGQlV5eEZRVUZCTEV0QlFVRTdRVUZCUVN4TFFVTllPMEZCUVVFc1NVRkRRU3hWUVVGWkxFVkJRVUVzUTBGQlF5eGpRVUZsTEVOQlFVRXNTMEZCU3l4RFFVRkRMRU5CUVVFN1FVRkJRU3hIUVVOd1F5eERRVUZCTzBGQlEwWXNRMEZCUVN4RFFVRkJPMEZCUlVFc1RVRkJUU3hqUVVGQkxFZEJRV2xDTEVOQlFVTXNTMEZCYzBNc1MwRkJRVHRCUVVNMVJDeEZRVUZQTEU5QlFVRTdRVUZCUVN4SlFVTk1MRVZCUVVrc1JVRkJRU3hQUVVGQk8wRkJRVUVzU1VGRFNpeExRVUZQTEVWQlFVRTdRVUZCUVN4TlFVTk1MRTFCUVUwc1owSkJRV2xDTEVOQlFVRXNTMEZCUVR0QlFVRkJMRTFCUTNaQ0xGVkJRVmtzUlVGQlFTeExRVUZCTzBGQlFVRXNTMEZEWkR0QlFVRkJMRWRCUTBZc1EwRkJRVHRCUVVOR0xFTkJRVUU3T3pzN0luMD1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRTyxNQUFNLDhCQUFpQyxHQUFBLENBQzVDLEtBQ0EsRUFBQSxLQUFBLEVBQ0EsV0FDc0IsS0FBQTtBQUNoQixFQUFBLE1BQUEsRUFBRSxXQUFjLEdBQUEsV0FBQSxDQUFBO0FBQ3RCLEVBQUEsTUFBTSxZQUFlLEdBQUEsV0FBQSxDQUFZLFNBQVUsQ0FBQSxTQUFBLENBQVUsQ0FBQyxRQUFhLEtBQUE7QUFDakUsSUFBQSxPQUFPLFNBQVMsT0FBUSxDQUFBLEVBQUEsS0FBTyxlQUFlLE1BQVUsSUFBQSxRQUFBLENBQVMsUUFBUSxPQUFZLEtBQUEsS0FBQSxDQUFBO0dBQ3RGLENBQUEsQ0FBQTtBQUVELEVBQUEsSUFBSSxlQUFlLENBQUcsRUFBQTtBQUNwQixJQUFBLE9BQU8sYUFBQSxDQUFBLGNBQUEsQ0FBQSxFQUFBLEVBQ0YsV0FERSxDQUFBLEVBQUE7QUFFTCxNQUFBLFNBQUEsRUFBVyxDQUFDLEdBQUcsV0FBQSxDQUFZLFdBQVcsY0FBZSxDQUFBLEtBQUEsRUFBTyxLQUFLLENBQUMsQ0FBQTtLQUNwRSxDQUFBLENBQUE7QUFBQSxHQUFBO0FBR0ksRUFBQSxNQUFBLGFBQUEsR0FBZ0IsS0FBTSxDQUFBLElBQUEsQ0FBSyxTQUFTLENBQUEsQ0FBQTtBQUMxQyxFQUFBLE1BQU0sV0FBVyxhQUFjLENBQUEsWUFBQSxDQUFBLENBQUE7QUFDekIsRUFBQSxNQUFBLGFBQUEsR0FBZ0IsU0FBUyxVQUFXLENBQUEsU0FBQSxDQUFVLENBQUMsQ0FBTSxLQUFBLENBQUEsQ0FBRSxPQUFPLE9BQU8sQ0FBQSxDQUFBO0FBRTNFLEVBQUEsSUFBSSxnQkFBZ0IsQ0FBRyxFQUFBO0FBQ1AsSUFBQSxhQUFBLENBQUEsZ0JBQWdCLGFBQUEsQ0FBQSxjQUFBLENBQUEsRUFBQSxFQUN6QixRQUR5QixDQUFBLEVBQUE7QUFFNUIsTUFBQSxVQUFBLEVBQVksQ0FBQyxHQUFHLFFBQUEsQ0FBUyxVQUFZLEVBQUEsY0FBQSxDQUFlLEtBQUssQ0FBQyxDQUFBO0tBQzVELENBQUEsQ0FBQTtBQUVBLElBQUEsT0FBTyxhQUFBLENBQUEsY0FBQSxDQUFBLEVBQUEsRUFDRixXQURFLENBQUEsRUFBQTtNQUVMLFNBQVcsRUFBQSxhQUFBO0tBQ2IsQ0FBQSxDQUFBO0FBQUEsR0FBQTtBQUdGLEVBQUEsTUFBTSxjQUFpQixHQUFBLEtBQUEsQ0FBTSxJQUFLLENBQUEsUUFBQSxDQUFTLFVBQVUsQ0FBQSxDQUFBO0FBQ3RDLEVBQUEsY0FBQSxDQUFBLGFBQUEsQ0FBQSxHQUFpQixlQUFlLEtBQUssQ0FBQSxDQUFBO0FBRXRDLEVBQUEsYUFBQSxDQUFBLGdCQUFnQixhQUFBLENBQUEsY0FBQSxDQUFBLEVBQUEsRUFDekIsUUFEeUIsQ0FBQSxFQUFBO0lBRTVCLFVBQVksRUFBQSxjQUFBO0dBQ2QsQ0FBQSxDQUFBO0FBRUEsRUFBQSxPQUFPLGFBQUEsQ0FBQSxjQUFBLENBQUEsRUFBQSxFQUNGLFdBREUsQ0FBQSxFQUFBO0lBRUwsU0FBVyxFQUFBLGFBQUE7R0FDYixDQUFBLENBQUE7QUFDRixFQUFBO0FBRUEsTUFBTSxjQUFBLEdBQWlCLENBQUMsS0FBQSxFQUFlLEtBQXNDLEtBQUE7QUFDcEUsRUFBQSxPQUFBO0lBQ0wsT0FBUyxFQUFBO0FBQ1AsTUFBQSxFQUFBLEVBQUksY0FBZSxDQUFBLE1BQUE7TUFDbkIsT0FBUyxFQUFBLEtBQUE7QUFBQSxLQUFBO0lBRVgsVUFBWSxFQUFBLENBQUMsY0FBZSxDQUFBLEtBQUssQ0FBQyxDQUFBO0FBQUEsR0FBQSxDQUFBO0FBRXRDLENBQUEsQ0FBQTtBQUVBLE1BQU0sY0FBQSxHQUFpQixDQUFDLEtBQXNDLEtBQUE7QUFDckQsRUFBQSxPQUFBO0lBQ0wsRUFBSSxFQUFBLE9BQUE7SUFDSixLQUFPLEVBQUE7QUFDTCxNQUFBLElBQUEsRUFBTSxnQkFBaUIsQ0FBQSxLQUFBO01BQ3ZCLFVBQVksRUFBQSxLQUFBO0FBQUEsS0FBQTtBQUNkLEdBQUEsQ0FBQTtBQUVKLENBQUE7Ozs7In0=
@@ -1,11 +0,0 @@
1
- import { getPluginImportUtils } from '@grafana/runtime';
2
-
3
- const runtimePanelPlugins = /* @__PURE__ */ new Map();
4
- function loadPanelPluginSync(pluginId) {
5
- var _a;
6
- const { getPanelPluginFromCache } = getPluginImportUtils();
7
- return (_a = getPanelPluginFromCache(pluginId)) != null ? _a : runtimePanelPlugins.get(pluginId);
8
- }
9
-
10
- export { loadPanelPluginSync, runtimePanelPlugins };
11
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXJSdW50aW1lUGFuZWxQbHVnaW4uanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvbXBvbmVudHMvVml6UGFuZWwvcmVnaXN0ZXJSdW50aW1lUGFuZWxQbHVnaW4uanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2V0UGx1Z2luSW1wb3J0VXRpbHMgfSBmcm9tICdAZ3JhZmFuYS9ydW50aW1lJztcblxudmFyIF9fZGVmUHJvcCA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eTtcbnZhciBfX2RlZlByb3BzID0gT2JqZWN0LmRlZmluZVByb3BlcnRpZXM7XG52YXIgX19nZXRPd25Qcm9wRGVzY3MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycztcbnZhciBfX2dldE93blByb3BTeW1ib2xzID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scztcbnZhciBfX2hhc093blByb3AgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O1xudmFyIF9fcHJvcElzRW51bSA9IE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGU7XG52YXIgX19kZWZOb3JtYWxQcm9wID0gKG9iaiwga2V5LCB2YWx1ZSkgPT4ga2V5IGluIG9iaiA/IF9fZGVmUHJvcChvYmosIGtleSwgeyBlbnVtZXJhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUsIHdyaXRhYmxlOiB0cnVlLCB2YWx1ZSB9KSA6IG9ialtrZXldID0gdmFsdWU7XG52YXIgX19zcHJlYWRWYWx1ZXMgPSAoYSwgYikgPT4ge1xuICBmb3IgKHZhciBwcm9wIGluIGIgfHwgKGIgPSB7fSkpXG4gICAgaWYgKF9faGFzT3duUHJvcC5jYWxsKGIsIHByb3ApKVxuICAgICAgX19kZWZOb3JtYWxQcm9wKGEsIHByb3AsIGJbcHJvcF0pO1xuICBpZiAoX19nZXRPd25Qcm9wU3ltYm9scylcbiAgICBmb3IgKHZhciBwcm9wIG9mIF9fZ2V0T3duUHJvcFN5bWJvbHMoYikpIHtcbiAgICAgIGlmIChfX3Byb3BJc0VudW0uY2FsbChiLCBwcm9wKSlcbiAgICAgICAgX19kZWZOb3JtYWxQcm9wKGEsIHByb3AsIGJbcHJvcF0pO1xuICAgIH1cbiAgcmV0dXJuIGE7XG59O1xudmFyIF9fc3ByZWFkUHJvcHMgPSAoYSwgYikgPT4gX19kZWZQcm9wcyhhLCBfX2dldE93blByb3BEZXNjcyhiKSk7XG5jb25zdCBydW50aW1lUGFuZWxQbHVnaW5zID0gLyogQF9fUFVSRV9fICovIG5ldyBNYXAoKTtcbmZ1bmN0aW9uIHJlZ2lzdGVyUnVudGltZVBhbmVsUGx1Z2luKHsgcGx1Z2luSWQsIHBsdWdpbiB9KSB7XG4gIGlmIChydW50aW1lUGFuZWxQbHVnaW5zLmhhcyhwbHVnaW5JZCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEEgcnVudGltZSBwYW5lbCBwbHVnaW4gd2l0aCBpZCAke3BsdWdpbklkfSBoYXMgYWxyZWFkeSBiZWVuIHJlZ2lzdGVyZWRgKTtcbiAgfVxuICBwbHVnaW4ubWV0YSA9IF9fc3ByZWFkUHJvcHMoX19zcHJlYWRWYWx1ZXMoe30sIHBsdWdpbi5tZXRhKSwge1xuICAgIGlkOiBwbHVnaW5JZCxcbiAgICBuYW1lOiBwbHVnaW5JZCxcbiAgICBtb2R1bGU6IFwicnVudGltZSBwbHVnaW5cIixcbiAgICBiYXNlVXJsOiBcInJ1bnRpbWUgcGx1Z2luXCIsXG4gICAgaW5mbzoge1xuICAgICAgYXV0aG9yOiB7XG4gICAgICAgIG5hbWU6IFwiUnVudGltZSBwbHVnaW4gXCIgKyBwbHVnaW5JZFxuICAgICAgfSxcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlwiLFxuICAgICAgbGlua3M6IFtdLFxuICAgICAgbG9nb3M6IHtcbiAgICAgICAgbGFyZ2U6IFwiXCIsXG4gICAgICAgIHNtYWxsOiBcIlwiXG4gICAgICB9LFxuICAgICAgc2NyZWVuc2hvdHM6IFtdLFxuICAgICAgdXBkYXRlZDogXCJcIixcbiAgICAgIHZlcnNpb246IFwiXCJcbiAgICB9XG4gIH0pO1xuICBydW50aW1lUGFuZWxQbHVnaW5zLnNldChwbHVnaW5JZCwgcGx1Z2luKTtcbn1cbmZ1bmN0aW9uIGxvYWRQYW5lbFBsdWdpblN5bmMocGx1Z2luSWQpIHtcbiAgdmFyIF9hO1xuICBjb25zdCB7IGdldFBhbmVsUGx1Z2luRnJvbUNhY2hlIH0gPSBnZXRQbHVnaW5JbXBvcnRVdGlscygpO1xuICByZXR1cm4gKF9hID0gZ2V0UGFuZWxQbHVnaW5Gcm9tQ2FjaGUocGx1Z2luSWQpKSAhPSBudWxsID8gX2EgOiBydW50aW1lUGFuZWxQbHVnaW5zLmdldChwbHVnaW5JZCk7XG59XG5cbmV4cG9ydCB7IGxvYWRQYW5lbFBsdWdpblN5bmMsIHJlZ2lzdGVyUnVudGltZVBhbmVsUGx1Z2luLCBydW50aW1lUGFuZWxQbHVnaW5zIH07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWNtVm5hWE4wWlhKU2RXNTBhVzFsVUdGdVpXeFFiSFZuYVc0dWFuTWlMQ0p6YjNWeVkyVnpJanBiSWk0dUx5NHVMeTR1THk0dUwzTnlZeTlqYjIxd2IyNWxiblJ6TDFacGVsQmhibVZzTDNKbFoybHpkR1Z5VW5WdWRHbHRaVkJoYm1Wc1VHeDFaMmx1TG5SeklsMHNJbk52ZFhKalpYTkRiMjUwWlc1MElqcGJJbWx0Y0c5eWRDQjdJRkJoYm1Wc1VHeDFaMmx1TENCUWJIVm5hVzVOWlhSaFNXNW1ieUI5SUdaeWIyMGdKMEJuY21GbVlXNWhMMlJoZEdFbk8xeHVhVzF3YjNKMElIc2daMlYwVUd4MVoybHVTVzF3YjNKMFZYUnBiSE1nZlNCbWNtOXRJQ2RBWjNKaFptRnVZUzl5ZFc1MGFXMWxKenRjYmx4dVpYaHdiM0owSUdOdmJuTjBJSEoxYm5ScGJXVlFZVzVsYkZCc2RXZHBibk1nUFNCdVpYY2dUV0Z3UEhOMGNtbHVaeXdnVUdGdVpXeFFiSFZuYVc0K0tDazdYRzVjYm1WNGNHOXlkQ0JwYm5SbGNtWmhZMlVnVW5WdWRHbHRaVkJoYm1Wc1VHeDFaMmx1VDNCMGFXOXVjeUI3WEc0Z0lDOHFLbHh1SUNBZ0tpQlFiR1ZoYzJVZ2MzQmxZMmxtZVNCaElIQnNkV2RwYmtsa0lIUm9ZWFFnYVhNZ2RXNXNhV3RsYkhrZ2RHOGdZMjlzYkdsa1pTQjNhWFJvSUc5MGFHVnlJSEJzZFdkcGJuTXVYRzRnSUNBcUwxeHVJQ0J3YkhWbmFXNUpaRG9nYzNSeWFXNW5PMXh1SUNCd2JIVm5hVzQ2SUZCaGJtVnNVR3gxWjJsdU8xeHVmVnh1WEc0dktpcGNiaUFxSUZCeWIzWnBaR1Z6SUdFZ2QyRjVJSFJ2SUhKbFoybHpkR1Z5SUhKMWJuUnBiV1VnY0dGdVpXd2djR3gxWjJsdWN5NWNiaUFxSUZCc1pXRnpaU0IxYzJVZ1lTQndiSFZuYVc1SlpDQjBhR0YwSUdseklIVnViR2xyWld4NUlIUnZJR052Ykd4cFpHVWdkMmwwYUNCdmRHaGxjaUJ3YkhWbmFXNXpMbHh1SUNvdlhHNWxlSEJ2Y25RZ1puVnVZM1JwYjI0Z2NtVm5hWE4wWlhKU2RXNTBhVzFsVUdGdVpXeFFiSFZuYVc0b2V5QndiSFZuYVc1SlpDd2djR3gxWjJsdUlIMDZJRkoxYm5ScGJXVlFZVzVsYkZCc2RXZHBiazl3ZEdsdmJuTXBJSHRjYmlBZ2FXWWdLSEoxYm5ScGJXVlFZVzVsYkZCc2RXZHBibk11YUdGektIQnNkV2RwYmtsa0tTa2dlMXh1SUNBZ0lIUm9jbTkzSUc1bGR5QkZjbkp2Y2loZ1FTQnlkVzUwYVcxbElIQmhibVZzSUhCc2RXZHBiaUIzYVhSb0lHbGtJQ1I3Y0d4MVoybHVTV1I5SUdoaGN5QmhiSEpsWVdSNUlHSmxaVzRnY21WbmFYTjBaWEpsWkdBcE8xeHVJQ0I5WEc1Y2JpQWdjR3gxWjJsdUxtMWxkR0VnUFNCN1hHNGdJQ0FnTGk0dWNHeDFaMmx1TG0xbGRHRXNYRzRnSUNBZ2FXUTZJSEJzZFdkcGJrbGtMRnh1SUNBZ0lHNWhiV1U2SUhCc2RXZHBia2xrTEZ4dUlDQWdJRzF2WkhWc1pUb2dKM0oxYm5ScGJXVWdjR3gxWjJsdUp5eGNiaUFnSUNCaVlYTmxWWEpzT2lBbmNuVnVkR2x0WlNCd2JIVm5hVzRuTEZ4dUlDQWdJR2x1Wm04NklIdGNiaUFnSUNBZ0lHRjFkR2h2Y2pvZ2UxeHVJQ0FnSUNBZ0lDQnVZVzFsT2lBblVuVnVkR2x0WlNCd2JIVm5hVzRnSnlBcklIQnNkV2RwYmtsa0xGeHVJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lHUmxjMk55YVhCMGFXOXVPaUFuSnl4Y2JpQWdJQ0FnSUd4cGJtdHpPaUJiWFN4Y2JpQWdJQ0FnSUd4dloyOXpPaUI3WEc0Z0lDQWdJQ0FnSUd4aGNtZGxPaUFuSnl4Y2JpQWdJQ0FnSUNBZ2MyMWhiR3c2SUNjbkxGeHVJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lITmpjbVZsYm5Ob2IzUnpPaUJiWFN4Y2JpQWdJQ0FnSUhWd1pHRjBaV1E2SUNjbkxGeHVJQ0FnSUNBZ2RtVnljMmx2YmpvZ0p5Y3NYRzRnSUNBZ2ZTQmhjeUJRYkhWbmFXNU5aWFJoU1c1bWJ5eGNiaUFnZlR0Y2JseHVJQ0J5ZFc1MGFXMWxVR0Z1Wld4UWJIVm5hVzV6TG5ObGRDaHdiSFZuYVc1SlpDd2djR3gxWjJsdUtUdGNibjFjYmx4dVpYaHdiM0owSUdaMWJtTjBhVzl1SUd4dllXUlFZVzVsYkZCc2RXZHBibE41Ym1Nb2NHeDFaMmx1U1dRNklITjBjbWx1WnlrZ2UxeHVJQ0JqYjI1emRDQjdJR2RsZEZCaGJtVnNVR3gxWjJsdVJuSnZiVU5oWTJobElIMGdQU0JuWlhSUWJIVm5hVzVKYlhCdmNuUlZkR2xzY3lncE8xeHVYRzRnSUhKbGRIVnliaUJuWlhSUVlXNWxiRkJzZFdkcGJrWnliMjFEWVdOb1pTaHdiSFZuYVc1SlpDa2dQejhnY25WdWRHbHRaVkJoYm1Wc1VHeDFaMmx1Y3k1blpYUW9jR3gxWjJsdVNXUXBPMXh1ZlZ4dUlsMHNJbTVoYldWeklqcGJYU3dpYldGd2NHbHVaM01pT2lJN096czdPenM3T3pzN096czdPenM3T3pzN096dEJRVWRoTEUxQlFVRXNiVUpCUVVFc2RVSkJRVEJDTEVkQlFYbENMRWRCUVVFN1FVRmpla1FzVTBGQlV5d3dRa0ZCTWtJc1EwRkJRU3hGUVVGRkxGRkJRVlVzUlVGQlFTeE5RVUZCTEVWQlFYRkRMRVZCUVVFN1FVRkRNVVlzUlVGQlNTeEpRVUZCTEcxQ1FVRkJMRU5CUVc5Q0xFZEJRVWtzUTBGQlFTeFJRVUZSTEVOQlFVY3NSVUZCUVR0QlFVTnlReXhKUVVGTkxFMUJRVUVzU1VGQlNTeExRVUZOTEVOQlFVRXNRMEZCUVN3clFrRkJRU3hGUVVGclF5eFJRVUZ6UXl4RFFVRkJMRFJDUVVGQkxFTkJRVUVzUTBGQlFTeERRVUZCTzBGQlFVRXNSMEZETVVZN1FVRkZRU3hGUVVGUExFMUJRVUVzUTBGQlFTeEpRVUZCTEVkQlFVOHNZVUZEVkN4RFFVRkJMR05CUVVFc1EwRkJRU3hGUVVGQkxFVkJRVUVzVFVGQlFTeERRVUZQTEVsQlJFVXNRMEZCUVN4RlFVRkJPMEZCUVVFc1NVRkZXaXhGUVVGSkxFVkJRVUVzVVVGQlFUdEJRVUZCTEVsQlEwb3NTVUZCVFN4RlFVRkJMRkZCUVVFN1FVRkJRU3hKUVVOT0xFMUJRVkVzUlVGQlFTeG5Ra0ZCUVR0QlFVRkJMRWxCUTFJc1QwRkJVeXhGUVVGQkxHZENRVUZCTzBGQlFVRXNTVUZEVkN4SlFVRk5MRVZCUVVFN1FVRkJRU3hOUVVOS0xFMUJRVkVzUlVGQlFUdEJRVUZCTEZGQlEwNHNUVUZCVFN4cFFrRkJiMElzUjBGQlFTeFJRVUZCTzBGQlFVRXNUMEZETlVJN1FVRkJRU3hOUVVOQkxGZEJRV0VzUlVGQlFTeEZRVUZCTzBGQlFVRXNUVUZEWWl4UFFVRlBMRVZCUVVNN1FVRkJRU3hOUVVOU0xFdEJRVThzUlVGQlFUdEJRVUZCTEZGQlEwd3NTMEZCVHl4RlFVRkJMRVZCUVVFN1FVRkJRU3hSUVVOUUxFdEJRVThzUlVGQlFTeEZRVUZCTzBGQlFVRXNUMEZEVkR0QlFVRkJMRTFCUTBFc1lVRkJZU3hGUVVGRE8wRkJRVUVzVFVGRFpDeFBRVUZUTEVWQlFVRXNSVUZCUVR0QlFVRkJMRTFCUTFRc1QwRkJVeXhGUVVGQkxFVkJRVUU3UVVGQlFTeExRVU5ZTzBGQlFVRXNSMEZEUml4RFFVRkJMRU5CUVVFN1FVRkZRU3hGUVVGdlFpeHRRa0ZCUVN4RFFVRkJMRWRCUVVFc1EwRkJTU3hWUVVGVkxFMUJRVTBzUTBGQlFTeERRVUZCTzBGQlF6RkRMRU5CUVVFN1FVRkZUeXhUUVVGVExHOUNRVUZ2UWl4UlFVRnJRaXhGUVVGQk8wRkJMME4wUkN4RlFVRkJMRWxCUVVFc1JVRkJRU3hEUVVGQk8wRkJaMFJGTEVWQlFVMHNUVUZCUVN4RlFVRkZMSFZDUVVGM1FpeEZRVUZCTEVkQlFVa3NiMEpCUVhGQ0xFVkJRVUVzUTBGQlFUdEJRVVY2UkN4RlFVRkJMRTlCUVVFc1EwRkJUeXcyUWtGQmQwSXNVVUZCVVN4RFFVRkJMRXRCUVdoRExFbEJRWEZETEVkQlFVRXNSVUZCUVN4SFFVRkJMRzFDUVVGQkxFTkJRVzlDTEVsQlFVa3NVVUZCVVN4RFFVRkJMRU5CUVVFN1FVRkRPVVU3T3pzN0luMD1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUdhLE1BQUEsbUJBQUEsdUJBQTBCLEdBQXlCLEdBQUE7QUE0Q3pELFNBQVMsb0JBQW9CLFFBQWtCLEVBQUE7QUEvQ3RELEVBQUEsSUFBQSxFQUFBLENBQUE7QUFnRFEsRUFBQSxNQUFBLEVBQUUsdUJBQXdCLEVBQUEsR0FBSSxvQkFBcUIsRUFBQSxDQUFBO0FBRXpELEVBQU8sT0FBQSxDQUFBLEVBQUEsR0FBQSx3QkFBd0IsUUFBUSxDQUFBLEtBQWhDLE9BQXFDLEVBQUEsR0FBQSxtQkFBQSxDQUFvQixJQUFJLFFBQVEsQ0FBQSxDQUFBO0FBQzlFOzs7OyJ9
@@ -1,164 +0,0 @@
1
- import { isSystemOverrideWithRef, FieldMatcherID, ByNamesMatcherMode, FieldType, getFieldDisplayName, fieldMatchers } from '@grafana/data';
2
- import { SeriesVisibilityChangeMode } from '@grafana/ui';
3
-
4
- var __defProp = Object.defineProperty;
5
- var __defProps = Object.defineProperties;
6
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
7
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
- var __hasOwnProp = Object.prototype.hasOwnProperty;
9
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
10
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
11
- var __spreadValues = (a, b) => {
12
- for (var prop in b || (b = {}))
13
- if (__hasOwnProp.call(b, prop))
14
- __defNormalProp(a, prop, b[prop]);
15
- if (__getOwnPropSymbols)
16
- for (var prop of __getOwnPropSymbols(b)) {
17
- if (__propIsEnum.call(b, prop))
18
- __defNormalProp(a, prop, b[prop]);
19
- }
20
- return a;
21
- };
22
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
23
- const displayOverrideRef = "hideSeriesFrom";
24
- const isHideSeriesOverride = isSystemOverrideWithRef(displayOverrideRef);
25
- function seriesVisibilityConfigFactory(label, mode, fieldConfig, data) {
26
- const { overrides } = fieldConfig;
27
- const displayName = label;
28
- const currentIndex = overrides.findIndex(isHideSeriesOverride);
29
- if (currentIndex < 0) {
30
- if (mode === SeriesVisibilityChangeMode.ToggleSelection) {
31
- const override3 = createOverride([displayName, ...getNamesOfHiddenFields(overrides, data)]);
32
- return __spreadProps(__spreadValues({}, fieldConfig), {
33
- overrides: [...fieldConfig.overrides, override3]
34
- });
35
- }
36
- const displayNames = getDisplayNames(data, displayName);
37
- const override2 = createOverride(displayNames);
38
- return __spreadProps(__spreadValues({}, fieldConfig), {
39
- overrides: [...fieldConfig.overrides, override2]
40
- });
41
- }
42
- const overridesCopy = Array.from(overrides);
43
- const [current] = overridesCopy.splice(currentIndex, 1);
44
- if (mode === SeriesVisibilityChangeMode.ToggleSelection) {
45
- let existing = getExistingDisplayNames(current);
46
- const nameOfHiddenFields = getNamesOfHiddenFields(overridesCopy, data);
47
- if (nameOfHiddenFields.length > 0) {
48
- existing = existing.filter((el) => nameOfHiddenFields.indexOf(el) < 0);
49
- }
50
- if (existing[0] === displayName && existing.length === 1) {
51
- return __spreadProps(__spreadValues({}, fieldConfig), {
52
- overrides: overridesCopy
53
- });
54
- }
55
- const override2 = createOverride([displayName, ...nameOfHiddenFields]);
56
- return __spreadProps(__spreadValues({}, fieldConfig), {
57
- overrides: [...overridesCopy, override2]
58
- });
59
- }
60
- const override = createExtendedOverride(current, displayName);
61
- if (allFieldsAreExcluded(override, data)) {
62
- return __spreadProps(__spreadValues({}, fieldConfig), {
63
- overrides: overridesCopy
64
- });
65
- }
66
- return __spreadProps(__spreadValues({}, fieldConfig), {
67
- overrides: [...overridesCopy, override]
68
- });
69
- }
70
- function createOverride(names, mode = ByNamesMatcherMode.exclude, property) {
71
- property = property != null ? property : {
72
- id: "custom.hideFrom",
73
- value: {
74
- viz: true,
75
- legend: false,
76
- tooltip: false
77
- }
78
- };
79
- return {
80
- __systemRef: displayOverrideRef,
81
- matcher: {
82
- id: FieldMatcherID.byNames,
83
- options: {
84
- mode,
85
- names,
86
- prefix: mode === ByNamesMatcherMode.exclude ? "All except:" : void 0,
87
- readOnly: true
88
- }
89
- },
90
- properties: [
91
- __spreadProps(__spreadValues({}, property), {
92
- value: {
93
- viz: true,
94
- legend: false,
95
- tooltip: false
96
- }
97
- })
98
- ]
99
- };
100
- }
101
- const createExtendedOverride = (current, displayName, mode = ByNamesMatcherMode.exclude) => {
102
- const property = current.properties.find((p) => p.id === "custom.hideFrom");
103
- const existing = getExistingDisplayNames(current);
104
- const index = existing.findIndex((name) => name === displayName);
105
- if (index < 0) {
106
- existing.push(displayName);
107
- } else {
108
- existing.splice(index, 1);
109
- }
110
- return createOverride(existing, mode, property);
111
- };
112
- const getExistingDisplayNames = (rule) => {
113
- var _a;
114
- const names = (_a = rule.matcher.options) == null ? void 0 : _a.names;
115
- if (!Array.isArray(names)) {
116
- return [];
117
- }
118
- return [...names];
119
- };
120
- const allFieldsAreExcluded = (override, data) => {
121
- return getExistingDisplayNames(override).length === getDisplayNames(data).length;
122
- };
123
- const getDisplayNames = (data, excludeName) => {
124
- const unique = /* @__PURE__ */ new Set();
125
- for (const frame of data) {
126
- for (const field of frame.fields) {
127
- if (field.type !== FieldType.number) {
128
- continue;
129
- }
130
- const name = getFieldDisplayName(field, frame, data);
131
- if (name === excludeName) {
132
- continue;
133
- }
134
- unique.add(name);
135
- }
136
- }
137
- return Array.from(unique);
138
- };
139
- const getNamesOfHiddenFields = (overrides, data) => {
140
- var _a;
141
- let names = [];
142
- for (const override of overrides) {
143
- const property = override.properties.find((p) => p.id === "custom.hideFrom");
144
- if (property !== void 0 && ((_a = property.value) == null ? void 0 : _a.legend) === true) {
145
- const info = fieldMatchers.get(override.matcher.id);
146
- const matcher = info.get(override.matcher.options);
147
- for (const frame of data) {
148
- for (const field of frame.fields) {
149
- if (field.type !== FieldType.number) {
150
- continue;
151
- }
152
- const name = getFieldDisplayName(field, frame, data);
153
- if (matcher(field, frame, data)) {
154
- names.push(name);
155
- }
156
- }
157
- }
158
- }
159
- }
160
- return names;
161
- };
162
-
163
- export { seriesVisibilityConfigFactory };
164
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VyaWVzVmlzaWJpbGl0eUNvbmZpZ0ZhY3RvcnkuanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2NvbXBvbmVudHMvVml6UGFuZWwvc2VyaWVzVmlzaWJpbGl0eUNvbmZpZ0ZhY3RvcnkuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNTeXN0ZW1PdmVycmlkZVdpdGhSZWYsIEZpZWxkTWF0Y2hlcklELCBCeU5hbWVzTWF0Y2hlck1vZGUsIEZpZWxkVHlwZSwgZ2V0RmllbGREaXNwbGF5TmFtZSwgZmllbGRNYXRjaGVycyB9IGZyb20gJ0BncmFmYW5hL2RhdGEnO1xuaW1wb3J0IHsgU2VyaWVzVmlzaWJpbGl0eUNoYW5nZU1vZGUgfSBmcm9tICdAZ3JhZmFuYS91aSc7XG5cbnZhciBfX2RlZlByb3AgPSBPYmplY3QuZGVmaW5lUHJvcGVydHk7XG52YXIgX19kZWZQcm9wcyA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzO1xudmFyIF9fZ2V0T3duUHJvcERlc2NzID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnM7XG52YXIgX19nZXRPd25Qcm9wU3ltYm9scyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM7XG52YXIgX19oYXNPd25Qcm9wID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTtcbnZhciBfX3Byb3BJc0VudW0gPSBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlO1xudmFyIF9fZGVmTm9ybWFsUHJvcCA9IChvYmosIGtleSwgdmFsdWUpID0+IGtleSBpbiBvYmogPyBfX2RlZlByb3Aob2JqLCBrZXksIHsgZW51bWVyYWJsZTogdHJ1ZSwgY29uZmlndXJhYmxlOiB0cnVlLCB3cml0YWJsZTogdHJ1ZSwgdmFsdWUgfSkgOiBvYmpba2V5XSA9IHZhbHVlO1xudmFyIF9fc3ByZWFkVmFsdWVzID0gKGEsIGIpID0+IHtcbiAgZm9yICh2YXIgcHJvcCBpbiBiIHx8IChiID0ge30pKVxuICAgIGlmIChfX2hhc093blByb3AuY2FsbChiLCBwcm9wKSlcbiAgICAgIF9fZGVmTm9ybWFsUHJvcChhLCBwcm9wLCBiW3Byb3BdKTtcbiAgaWYgKF9fZ2V0T3duUHJvcFN5bWJvbHMpXG4gICAgZm9yICh2YXIgcHJvcCBvZiBfX2dldE93blByb3BTeW1ib2xzKGIpKSB7XG4gICAgICBpZiAoX19wcm9wSXNFbnVtLmNhbGwoYiwgcHJvcCkpXG4gICAgICAgIF9fZGVmTm9ybWFsUHJvcChhLCBwcm9wLCBiW3Byb3BdKTtcbiAgICB9XG4gIHJldHVybiBhO1xufTtcbnZhciBfX3NwcmVhZFByb3BzID0gKGEsIGIpID0+IF9fZGVmUHJvcHMoYSwgX19nZXRPd25Qcm9wRGVzY3MoYikpO1xuY29uc3QgZGlzcGxheU92ZXJyaWRlUmVmID0gXCJoaWRlU2VyaWVzRnJvbVwiO1xuY29uc3QgaXNIaWRlU2VyaWVzT3ZlcnJpZGUgPSBpc1N5c3RlbU92ZXJyaWRlV2l0aFJlZihkaXNwbGF5T3ZlcnJpZGVSZWYpO1xuZnVuY3Rpb24gc2VyaWVzVmlzaWJpbGl0eUNvbmZpZ0ZhY3RvcnkobGFiZWwsIG1vZGUsIGZpZWxkQ29uZmlnLCBkYXRhKSB7XG4gIGNvbnN0IHsgb3ZlcnJpZGVzIH0gPSBmaWVsZENvbmZpZztcbiAgY29uc3QgZGlzcGxheU5hbWUgPSBsYWJlbDtcbiAgY29uc3QgY3VycmVudEluZGV4ID0gb3ZlcnJpZGVzLmZpbmRJbmRleChpc0hpZGVTZXJpZXNPdmVycmlkZSk7XG4gIGlmIChjdXJyZW50SW5kZXggPCAwKSB7XG4gICAgaWYgKG1vZGUgPT09IFNlcmllc1Zpc2liaWxpdHlDaGFuZ2VNb2RlLlRvZ2dsZVNlbGVjdGlvbikge1xuICAgICAgY29uc3Qgb3ZlcnJpZGUzID0gY3JlYXRlT3ZlcnJpZGUoW2Rpc3BsYXlOYW1lLCAuLi5nZXROYW1lc09mSGlkZGVuRmllbGRzKG92ZXJyaWRlcywgZGF0YSldKTtcbiAgICAgIHJldHVybiBfX3NwcmVhZFByb3BzKF9fc3ByZWFkVmFsdWVzKHt9LCBmaWVsZENvbmZpZyksIHtcbiAgICAgICAgb3ZlcnJpZGVzOiBbLi4uZmllbGRDb25maWcub3ZlcnJpZGVzLCBvdmVycmlkZTNdXG4gICAgICB9KTtcbiAgICB9XG4gICAgY29uc3QgZGlzcGxheU5hbWVzID0gZ2V0RGlzcGxheU5hbWVzKGRhdGEsIGRpc3BsYXlOYW1lKTtcbiAgICBjb25zdCBvdmVycmlkZTIgPSBjcmVhdGVPdmVycmlkZShkaXNwbGF5TmFtZXMpO1xuICAgIHJldHVybiBfX3NwcmVhZFByb3BzKF9fc3ByZWFkVmFsdWVzKHt9LCBmaWVsZENvbmZpZyksIHtcbiAgICAgIG92ZXJyaWRlczogWy4uLmZpZWxkQ29uZmlnLm92ZXJyaWRlcywgb3ZlcnJpZGUyXVxuICAgIH0pO1xuICB9XG4gIGNvbnN0IG92ZXJyaWRlc0NvcHkgPSBBcnJheS5mcm9tKG92ZXJyaWRlcyk7XG4gIGNvbnN0IFtjdXJyZW50XSA9IG92ZXJyaWRlc0NvcHkuc3BsaWNlKGN1cnJlbnRJbmRleCwgMSk7XG4gIGlmIChtb2RlID09PSBTZXJpZXNWaXNpYmlsaXR5Q2hhbmdlTW9kZS5Ub2dnbGVTZWxlY3Rpb24pIHtcbiAgICBsZXQgZXhpc3RpbmcgPSBnZXRFeGlzdGluZ0Rpc3BsYXlOYW1lcyhjdXJyZW50KTtcbiAgICBjb25zdCBuYW1lT2ZIaWRkZW5GaWVsZHMgPSBnZXROYW1lc09mSGlkZGVuRmllbGRzKG92ZXJyaWRlc0NvcHksIGRhdGEpO1xuICAgIGlmIChuYW1lT2ZIaWRkZW5GaWVsZHMubGVuZ3RoID4gMCkge1xuICAgICAgZXhpc3RpbmcgPSBleGlzdGluZy5maWx0ZXIoKGVsKSA9PiBuYW1lT2ZIaWRkZW5GaWVsZHMuaW5kZXhPZihlbCkgPCAwKTtcbiAgICB9XG4gICAgaWYgKGV4aXN0aW5nWzBdID09PSBkaXNwbGF5TmFtZSAmJiBleGlzdGluZy5sZW5ndGggPT09IDEpIHtcbiAgICAgIHJldHVybiBfX3NwcmVhZFByb3BzKF9fc3ByZWFkVmFsdWVzKHt9LCBmaWVsZENvbmZpZyksIHtcbiAgICAgICAgb3ZlcnJpZGVzOiBvdmVycmlkZXNDb3B5XG4gICAgICB9KTtcbiAgICB9XG4gICAgY29uc3Qgb3ZlcnJpZGUyID0gY3JlYXRlT3ZlcnJpZGUoW2Rpc3BsYXlOYW1lLCAuLi5uYW1lT2ZIaWRkZW5GaWVsZHNdKTtcbiAgICByZXR1cm4gX19zcHJlYWRQcm9wcyhfX3NwcmVhZFZhbHVlcyh7fSwgZmllbGRDb25maWcpLCB7XG4gICAgICBvdmVycmlkZXM6IFsuLi5vdmVycmlkZXNDb3B5LCBvdmVycmlkZTJdXG4gICAgfSk7XG4gIH1cbiAgY29uc3Qgb3ZlcnJpZGUgPSBjcmVhdGVFeHRlbmRlZE92ZXJyaWRlKGN1cnJlbnQsIGRpc3BsYXlOYW1lKTtcbiAgaWYgKGFsbEZpZWxkc0FyZUV4Y2x1ZGVkKG92ZXJyaWRlLCBkYXRhKSkge1xuICAgIHJldHVybiBfX3NwcmVhZFByb3BzKF9fc3ByZWFkVmFsdWVzKHt9LCBmaWVsZENvbmZpZyksIHtcbiAgICAgIG92ZXJyaWRlczogb3ZlcnJpZGVzQ29weVxuICAgIH0pO1xuICB9XG4gIHJldHVybiBfX3NwcmVhZFByb3BzKF9fc3ByZWFkVmFsdWVzKHt9LCBmaWVsZENvbmZpZyksIHtcbiAgICBvdmVycmlkZXM6IFsuLi5vdmVycmlkZXNDb3B5LCBvdmVycmlkZV1cbiAgfSk7XG59XG5mdW5jdGlvbiBjcmVhdGVPdmVycmlkZShuYW1lcywgbW9kZSA9IEJ5TmFtZXNNYXRjaGVyTW9kZS5leGNsdWRlLCBwcm9wZXJ0eSkge1xuICBwcm9wZXJ0eSA9IHByb3BlcnR5ICE9IG51bGwgPyBwcm9wZXJ0eSA6IHtcbiAgICBpZDogXCJjdXN0b20uaGlkZUZyb21cIixcbiAgICB2YWx1ZToge1xuICAgICAgdml6OiB0cnVlLFxuICAgICAgbGVnZW5kOiBmYWxzZSxcbiAgICAgIHRvb2x0aXA6IGZhbHNlXG4gICAgfVxuICB9O1xuICByZXR1cm4ge1xuICAgIF9fc3lzdGVtUmVmOiBkaXNwbGF5T3ZlcnJpZGVSZWYsXG4gICAgbWF0Y2hlcjoge1xuICAgICAgaWQ6IEZpZWxkTWF0Y2hlcklELmJ5TmFtZXMsXG4gICAgICBvcHRpb25zOiB7XG4gICAgICAgIG1vZGUsXG4gICAgICAgIG5hbWVzLFxuICAgICAgICBwcmVmaXg6IG1vZGUgPT09IEJ5TmFtZXNNYXRjaGVyTW9kZS5leGNsdWRlID8gXCJBbGwgZXhjZXB0OlwiIDogdm9pZCAwLFxuICAgICAgICByZWFkT25seTogdHJ1ZVxuICAgICAgfVxuICAgIH0sXG4gICAgcHJvcGVydGllczogW1xuICAgICAgX19zcHJlYWRQcm9wcyhfX3NwcmVhZFZhbHVlcyh7fSwgcHJvcGVydHkpLCB7XG4gICAgICAgIHZhbHVlOiB7XG4gICAgICAgICAgdml6OiB0cnVlLFxuICAgICAgICAgIGxlZ2VuZDogZmFsc2UsXG4gICAgICAgICAgdG9vbHRpcDogZmFsc2VcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICBdXG4gIH07XG59XG5jb25zdCBjcmVhdGVFeHRlbmRlZE92ZXJyaWRlID0gKGN1cnJlbnQsIGRpc3BsYXlOYW1lLCBtb2RlID0gQnlOYW1lc01hdGNoZXJNb2RlLmV4Y2x1ZGUpID0+IHtcbiAgY29uc3QgcHJvcGVydHkgPSBjdXJyZW50LnByb3BlcnRpZXMuZmluZCgocCkgPT4gcC5pZCA9PT0gXCJjdXN0b20uaGlkZUZyb21cIik7XG4gIGNvbnN0IGV4aXN0aW5nID0gZ2V0RXhpc3RpbmdEaXNwbGF5TmFtZXMoY3VycmVudCk7XG4gIGNvbnN0IGluZGV4ID0gZXhpc3RpbmcuZmluZEluZGV4KChuYW1lKSA9PiBuYW1lID09PSBkaXNwbGF5TmFtZSk7XG4gIGlmIChpbmRleCA8IDApIHtcbiAgICBleGlzdGluZy5wdXNoKGRpc3BsYXlOYW1lKTtcbiAgfSBlbHNlIHtcbiAgICBleGlzdGluZy5zcGxpY2UoaW5kZXgsIDEpO1xuICB9XG4gIHJldHVybiBjcmVhdGVPdmVycmlkZShleGlzdGluZywgbW9kZSwgcHJvcGVydHkpO1xufTtcbmNvbnN0IGdldEV4aXN0aW5nRGlzcGxheU5hbWVzID0gKHJ1bGUpID0+IHtcbiAgdmFyIF9hO1xuICBjb25zdCBuYW1lcyA9IChfYSA9IHJ1bGUubWF0Y2hlci5vcHRpb25zKSA9PSBudWxsID8gdm9pZCAwIDogX2EubmFtZXM7XG4gIGlmICghQXJyYXkuaXNBcnJheShuYW1lcykpIHtcbiAgICByZXR1cm4gW107XG4gIH1cbiAgcmV0dXJuIFsuLi5uYW1lc107XG59O1xuY29uc3QgYWxsRmllbGRzQXJlRXhjbHVkZWQgPSAob3ZlcnJpZGUsIGRhdGEpID0+IHtcbiAgcmV0dXJuIGdldEV4aXN0aW5nRGlzcGxheU5hbWVzKG92ZXJyaWRlKS5sZW5ndGggPT09IGdldERpc3BsYXlOYW1lcyhkYXRhKS5sZW5ndGg7XG59O1xuY29uc3QgZ2V0RGlzcGxheU5hbWVzID0gKGRhdGEsIGV4Y2x1ZGVOYW1lKSA9PiB7XG4gIGNvbnN0IHVuaXF1ZSA9IC8qIEBfX1BVUkVfXyAqLyBuZXcgU2V0KCk7XG4gIGZvciAoY29uc3QgZnJhbWUgb2YgZGF0YSkge1xuICAgIGZvciAoY29uc3QgZmllbGQgb2YgZnJhbWUuZmllbGRzKSB7XG4gICAgICBpZiAoZmllbGQudHlwZSAhPT0gRmllbGRUeXBlLm51bWJlcikge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG5hbWUgPSBnZXRGaWVsZERpc3BsYXlOYW1lKGZpZWxkLCBmcmFtZSwgZGF0YSk7XG4gICAgICBpZiAobmFtZSA9PT0gZXhjbHVkZU5hbWUpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICB1bmlxdWUuYWRkKG5hbWUpO1xuICAgIH1cbiAgfVxuICByZXR1cm4gQXJyYXkuZnJvbSh1bmlxdWUpO1xufTtcbmNvbnN0IGdldE5hbWVzT2ZIaWRkZW5GaWVsZHMgPSAob3ZlcnJpZGVzLCBkYXRhKSA9PiB7XG4gIHZhciBfYTtcbiAgbGV0IG5hbWVzID0gW107XG4gIGZvciAoY29uc3Qgb3ZlcnJpZGUgb2Ygb3ZlcnJpZGVzKSB7XG4gICAgY29uc3QgcHJvcGVydHkgPSBvdmVycmlkZS5wcm9wZXJ0aWVzLmZpbmQoKHApID0+IHAuaWQgPT09IFwiY3VzdG9tLmhpZGVGcm9tXCIpO1xuICAgIGlmIChwcm9wZXJ0eSAhPT0gdm9pZCAwICYmICgoX2EgPSBwcm9wZXJ0eS52YWx1ZSkgPT0gbnVsbCA/IHZvaWQgMCA6IF9hLmxlZ2VuZCkgPT09IHRydWUpIHtcbiAgICAgIGNvbnN0IGluZm8gPSBmaWVsZE1hdGNoZXJzLmdldChvdmVycmlkZS5tYXRjaGVyLmlkKTtcbiAgICAgIGNvbnN0IG1hdGNoZXIgPSBpbmZvLmdldChvdmVycmlkZS5tYXRjaGVyLm9wdGlvbnMpO1xuICAgICAgZm9yIChjb25zdCBmcmFtZSBvZiBkYXRhKSB7XG4gICAgICAgIGZvciAoY29uc3QgZmllbGQgb2YgZnJhbWUuZmllbGRzKSB7XG4gICAgICAgICAgaWYgKGZpZWxkLnR5cGUgIT09IEZpZWxkVHlwZS5udW1iZXIpIHtcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb25zdCBuYW1lID0gZ2V0RmllbGREaXNwbGF5TmFtZShmaWVsZCwgZnJhbWUsIGRhdGEpO1xuICAgICAgICAgIGlmIChtYXRjaGVyKGZpZWxkLCBmcmFtZSwgZGF0YSkpIHtcbiAgICAgICAgICAgIG5hbWVzLnB1c2gobmFtZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHJldHVybiBuYW1lcztcbn07XG5cbmV4cG9ydCB7IHNlcmllc1Zpc2liaWxpdHlDb25maWdGYWN0b3J5IH07XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247Y2hhcnNldD11dGYtODtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaWMyVnlhV1Z6Vm1semFXSnBiR2wwZVVOdmJtWnBaMFpoWTNSdmNua3Vhbk1pTENKemIzVnlZMlZ6SWpwYklpNHVMeTR1THk0dUx5NHVMM055WXk5amIyMXdiMjVsYm5SekwxWnBlbEJoYm1Wc0wzTmxjbWxsYzFacGMybGlhV3hwZEhsRGIyNW1hV2RHWVdOMGIzSjVMblJ6SWwwc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYkltbHRjRzl5ZENCN1hHNGdJRUo1VG1GdFpYTk5ZWFJqYUdWeVRXOWtaU3hjYmlBZ1EyOXVabWxuVDNabGNuSnBaR1ZTZFd4bExGeHVJQ0JFWVhSaFJuSmhiV1VzWEc0Z0lFUjVibUZ0YVdORGIyNW1hV2RXWVd4MVpTeGNiaUFnUm1sbGJHUkRiMjVtYVdkVGIzVnlZMlVzWEc0Z0lFWnBaV3hrVFdGMFkyaGxja2xFTEZ4dUlDQm1hV1ZzWkUxaGRHTm9aWEp6TEZ4dUlDQkdhV1ZzWkZSNWNHVXNYRzRnSUdkbGRFWnBaV3hrUkdsemNHeGhlVTVoYldVc1hHNGdJR2x6VTNsemRHVnRUM1psY25KcFpHVlhhWFJvVW1WbUxGeHVJQ0JUZVhOMFpXMURiMjVtYVdkUGRtVnljbWxrWlZKMWJHVXNYRzU5SUdaeWIyMGdKMEJuY21GbVlXNWhMMlJoZEdFbk8xeHVhVzF3YjNKMElIc2dVMlZ5YVdWelZtbHphV0pwYkdsMGVVTm9ZVzVuWlUxdlpHVWdmU0JtY205dElDZEFaM0poWm1GdVlTOTFhU2M3WEc1Y2JtTnZibk4wSUdScGMzQnNZWGxQZG1WeWNtbGtaVkpsWmlBOUlDZG9hV1JsVTJWeWFXVnpSbkp2YlNjN1hHNWpiMjV6ZENCcGMwaHBaR1ZUWlhKcFpYTlBkbVZ5Y21sa1pTQTlJR2x6VTNsemRHVnRUM1psY25KcFpHVlhhWFJvVW1WbUtHUnBjM0JzWVhsUGRtVnljbWxrWlZKbFppazdYRzVjYm1WNGNHOXlkQ0JtZFc1amRHbHZiaUJ6WlhKcFpYTldhWE5wWW1sc2FYUjVRMjl1Wm1sblJtRmpkRzl5ZVNoY2JpQWdiR0ZpWld3NklITjBjbWx1Wnl4Y2JpQWdiVzlrWlRvZ1UyVnlhV1Z6Vm1semFXSnBiR2wwZVVOb1lXNW5aVTF2WkdVc1hHNGdJR1pwWld4a1EyOXVabWxuT2lCR2FXVnNaRU52Ym1acFoxTnZkWEpqWlN4Y2JpQWdaR0YwWVRvZ1JHRjBZVVp5WVcxbFcxMWNiaWs2SUVacFpXeGtRMjl1Wm1sblUyOTFjbU5sSUh0Y2JpQWdZMjl1YzNRZ2V5QnZkbVZ5Y21sa1pYTWdmU0E5SUdacFpXeGtRMjl1Wm1sbk8xeHVYRzRnSUdOdmJuTjBJR1JwYzNCc1lYbE9ZVzFsSUQwZ2JHRmlaV3c3WEc0Z0lHTnZibk4wSUdOMWNuSmxiblJKYm1SbGVDQTlJRzkyWlhKeWFXUmxjeTVtYVc1a1NXNWtaWGdvYVhOSWFXUmxVMlZ5YVdWelQzWmxjbkpwWkdVcE8xeHVYRzRnSUdsbUlDaGpkWEp5Wlc1MFNXNWtaWGdnUENBd0tTQjdYRzRnSUNBZ2FXWWdLRzF2WkdVZ1BUMDlJRk5sY21sbGMxWnBjMmxpYVd4cGRIbERhR0Z1WjJWTmIyUmxMbFJ2WjJkc1pWTmxiR1ZqZEdsdmJpa2dlMXh1SUNBZ0lDQWdZMjl1YzNRZ2IzWmxjbkpwWkdVZ1BTQmpjbVZoZEdWUGRtVnljbWxrWlNoYlpHbHpjR3hoZVU1aGJXVXNJQzR1TG1kbGRFNWhiV1Z6VDJaSWFXUmtaVzVHYVdWc1pITW9iM1psY25KcFpHVnpMQ0JrWVhSaEtWMHBPMXh1WEc0Z0lDQWdJQ0J5WlhSMWNtNGdlMXh1SUNBZ0lDQWdJQ0F1TGk1bWFXVnNaRU52Ym1acFp5eGNiaUFnSUNBZ0lDQWdiM1psY25KcFpHVnpPaUJiTGk0dVptbGxiR1JEYjI1bWFXY3ViM1psY25KcFpHVnpMQ0J2ZG1WeWNtbGtaVjBzWEc0Z0lDQWdJQ0I5TzF4dUlDQWdJSDFjYmx4dUlDQWdJR052Ym5OMElHUnBjM0JzWVhsT1lXMWxjeUE5SUdkbGRFUnBjM0JzWVhsT1lXMWxjeWhrWVhSaExDQmthWE53YkdGNVRtRnRaU2s3WEc0Z0lDQWdZMjl1YzNRZ2IzWmxjbkpwWkdVZ1BTQmpjbVZoZEdWUGRtVnljbWxrWlNoa2FYTndiR0Y1VG1GdFpYTXBPMXh1WEc0Z0lDQWdjbVYwZFhKdUlIdGNiaUFnSUNBZ0lDNHVMbVpwWld4a1EyOXVabWxuTEZ4dUlDQWdJQ0FnYjNabGNuSnBaR1Z6T2lCYkxpNHVabWxsYkdSRGIyNW1hV2N1YjNabGNuSnBaR1Z6TENCdmRtVnljbWxrWlYwc1hHNGdJQ0FnZlR0Y2JpQWdmVnh1WEc0Z0lHTnZibk4wSUc5MlpYSnlhV1JsYzBOdmNIa2dQU0JCY25KaGVTNW1jbTl0S0c5MlpYSnlhV1JsY3lrN1hHNGdJR052Ym5OMElGdGpkWEp5Wlc1MFhTQTlJRzkyWlhKeWFXUmxjME52Y0hrdWMzQnNhV05sS0dOMWNuSmxiblJKYm1SbGVDd2dNU2tnWVhNZ1UzbHpkR1Z0UTI5dVptbG5UM1psY25KcFpHVlNkV3hsVzEwN1hHNWNiaUFnYVdZZ0tHMXZaR1VnUFQwOUlGTmxjbWxsYzFacGMybGlhV3hwZEhsRGFHRnVaMlZOYjJSbExsUnZaMmRzWlZObGJHVmpkR2x2YmlrZ2UxeHVJQ0FnSUd4bGRDQmxlR2x6ZEdsdVp5QTlJR2RsZEVWNGFYTjBhVzVuUkdsemNHeGhlVTVoYldWektHTjFjbkpsYm5RcE8xeHVJQ0FnSUdOdmJuTjBJRzVoYldWUFpraHBaR1JsYmtacFpXeGtjeUE5SUdkbGRFNWhiV1Z6VDJaSWFXUmtaVzVHYVdWc1pITW9iM1psY25KcFpHVnpRMjl3ZVN3Z1pHRjBZU2s3WEc1Y2JpQWdJQ0JwWmlBb2JtRnRaVTltU0dsa1pHVnVSbWxsYkdSekxteGxibWQwYUNBK0lEQXBJSHRjYmlBZ0lDQWdJR1Y0YVhOMGFXNW5JRDBnWlhocGMzUnBibWN1Wm1sc2RHVnlLQ2hsYkNrZ1BUNGdibUZ0WlU5bVNHbGtaR1Z1Um1sbGJHUnpMbWx1WkdWNFQyWW9aV3dwSUR3Z01DazdYRzRnSUNBZ2ZWeHVYRzRnSUNBZ2FXWWdLR1Y0YVhOMGFXNW5XekJkSUQwOVBTQmthWE53YkdGNVRtRnRaU0FtSmlCbGVHbHpkR2x1Wnk1c1pXNW5kR2dnUFQwOUlERXBJSHRjYmlBZ0lDQWdJSEpsZEhWeWJpQjdYRzRnSUNBZ0lDQWdJQzR1TG1acFpXeGtRMjl1Wm1sbkxGeHVJQ0FnSUNBZ0lDQnZkbVZ5Y21sa1pYTTZJRzkyWlhKeWFXUmxjME52Y0hrc1hHNGdJQ0FnSUNCOU8xeHVJQ0FnSUgxY2JseHVJQ0FnSUdOdmJuTjBJRzkyWlhKeWFXUmxJRDBnWTNKbFlYUmxUM1psY25KcFpHVW9XMlJwYzNCc1lYbE9ZVzFsTENBdUxpNXVZVzFsVDJaSWFXUmtaVzVHYVdWc1pITmRLVHRjYmx4dUlDQWdJSEpsZEhWeWJpQjdYRzRnSUNBZ0lDQXVMaTVtYVdWc1pFTnZibVpwWnl4Y2JpQWdJQ0FnSUc5MlpYSnlhV1JsY3pvZ1d5NHVMbTkyWlhKeWFXUmxjME52Y0hrc0lHOTJaWEp5YVdSbFhTeGNiaUFnSUNCOU8xeHVJQ0I5WEc1Y2JpQWdZMjl1YzNRZ2IzWmxjbkpwWkdVZ1BTQmpjbVZoZEdWRmVIUmxibVJsWkU5MlpYSnlhV1JsS0dOMWNuSmxiblFzSUdScGMzQnNZWGxPWVcxbEtUdGNibHh1SUNCcFppQW9ZV3hzUm1sbGJHUnpRWEpsUlhoamJIVmtaV1FvYjNabGNuSnBaR1VzSUdSaGRHRXBLU0I3WEc0Z0lDQWdjbVYwZFhKdUlIdGNiaUFnSUNBZ0lDNHVMbVpwWld4a1EyOXVabWxuTEZ4dUlDQWdJQ0FnYjNabGNuSnBaR1Z6T2lCdmRtVnljbWxrWlhORGIzQjVMRnh1SUNBZ0lIMDdYRzRnSUgxY2JseHVJQ0J5WlhSMWNtNGdlMXh1SUNBZ0lDNHVMbVpwWld4a1EyOXVabWxuTEZ4dUlDQWdJRzkyWlhKeWFXUmxjem9nV3k0dUxtOTJaWEp5YVdSbGMwTnZjSGtzSUc5MlpYSnlhV1JsWFN4Y2JpQWdmVHRjYm4xY2JseHVablZ1WTNScGIyNGdZM0psWVhSbFQzWmxjbkpwWkdVb1hHNGdJRzVoYldWek9pQnpkSEpwYm1kYlhTeGNiaUFnYlc5a1pTQTlJRUo1VG1GdFpYTk5ZWFJqYUdWeVRXOWtaUzVsZUdOc2RXUmxMRnh1SUNCd2NtOXdaWEowZVQ4NklFUjVibUZ0YVdORGIyNW1hV2RXWVd4MVpWeHVLVG9nVTNsemRHVnRRMjl1Wm1sblQzWmxjbkpwWkdWU2RXeGxJSHRjYmlBZ2NISnZjR1Z5ZEhrZ1BTQndjbTl3WlhKMGVTQS9QeUI3WEc0Z0lDQWdhV1E2SUNkamRYTjBiMjB1YUdsa1pVWnliMjBuTEZ4dUlDQWdJSFpoYkhWbE9pQjdYRzRnSUNBZ0lDQjJhWG82SUhSeWRXVXNYRzRnSUNBZ0lDQnNaV2RsYm1RNklHWmhiSE5sTEZ4dUlDQWdJQ0FnZEc5dmJIUnBjRG9nWm1Gc2MyVXNYRzRnSUNBZ2ZTeGNiaUFnZlR0Y2JseHVJQ0J5WlhSMWNtNGdlMXh1SUNBZ0lGOWZjM2x6ZEdWdFVtVm1PaUJrYVhOd2JHRjVUM1psY25KcFpHVlNaV1lzWEc0Z0lDQWdiV0YwWTJobGNqb2dlMXh1SUNBZ0lDQWdhV1E2SUVacFpXeGtUV0YwWTJobGNrbEVMbUo1VG1GdFpYTXNYRzRnSUNBZ0lDQnZjSFJwYjI1ek9pQjdYRzRnSUNBZ0lDQWdJRzF2WkdVNklHMXZaR1VzWEc0Z0lDQWdJQ0FnSUc1aGJXVnpPaUJ1WVcxbGN5eGNiaUFnSUNBZ0lDQWdjSEpsWm1sNE9pQnRiMlJsSUQwOVBTQkNlVTVoYldWelRXRjBZMmhsY2sxdlpHVXVaWGhqYkhWa1pTQS9JQ2RCYkd3Z1pYaGpaWEIwT2ljZ09pQjFibVJsWm1sdVpXUXNYRzRnSUNBZ0lDQWdJSEpsWVdSUGJteDVPaUIwY25WbExGeHVJQ0FnSUNBZ2ZTeGNiaUFnSUNCOUxGeHVJQ0FnSUhCeWIzQmxjblJwWlhNNklGdGNiaUFnSUNBZ0lIdGNiaUFnSUNBZ0lDQWdMaTR1Y0hKdmNHVnlkSGtzWEc0Z0lDQWdJQ0FnSUhaaGJIVmxPaUI3WEc0Z0lDQWdJQ0FnSUNBZ2RtbDZPaUIwY25WbExGeHVJQ0FnSUNBZ0lDQWdJR3hsWjJWdVpEb2dabUZzYzJVc1hHNGdJQ0FnSUNBZ0lDQWdkRzl2YkhScGNEb2dabUZzYzJVc1hHNGdJQ0FnSUNBZ0lIMHNYRzRnSUNBZ0lDQjlMRnh1SUNBZ0lGMHNYRzRnSUgwN1hHNTlYRzVjYm1OdmJuTjBJR055WldGMFpVVjRkR1Z1WkdWa1QzWmxjbkpwWkdVZ1BTQW9YRzRnSUdOMWNuSmxiblE2SUZONWMzUmxiVU52Ym1acFowOTJaWEp5YVdSbFVuVnNaU3hjYmlBZ1pHbHpjR3hoZVU1aGJXVTZJSE4wY21sdVp5eGNiaUFnYlc5a1pTQTlJRUo1VG1GdFpYTk5ZWFJqYUdWeVRXOWtaUzVsZUdOc2RXUmxYRzRwT2lCVGVYTjBaVzFEYjI1bWFXZFBkbVZ5Y21sa1pWSjFiR1VnUFQ0Z2UxeHVJQ0JqYjI1emRDQndjbTl3WlhKMGVTQTlJR04xY25KbGJuUXVjSEp2Y0dWeWRHbGxjeTVtYVc1a0tDaHdLU0E5UGlCd0xtbGtJRDA5UFNBblkzVnpkRzl0TG1ocFpHVkdjbTl0SnlrN1hHNGdJR052Ym5OMElHVjRhWE4wYVc1bklEMGdaMlYwUlhocGMzUnBibWRFYVhOd2JHRjVUbUZ0WlhNb1kzVnljbVZ1ZENrN1hHNGdJR052Ym5OMElHbHVaR1Y0SUQwZ1pYaHBjM1JwYm1jdVptbHVaRWx1WkdWNEtDaHVZVzFsS1NBOVBpQnVZVzFsSUQwOVBTQmthWE53YkdGNVRtRnRaU2s3WEc1Y2JpQWdhV1lnS0dsdVpHVjRJRHdnTUNrZ2UxeHVJQ0FnSUdWNGFYTjBhVzVuTG5CMWMyZ29aR2x6Y0d4aGVVNWhiV1VwTzF4dUlDQjlJR1ZzYzJVZ2UxeHVJQ0FnSUdWNGFYTjBhVzVuTG5Od2JHbGpaU2hwYm1SbGVDd2dNU2s3WEc0Z0lIMWNibHh1SUNCeVpYUjFjbTRnWTNKbFlYUmxUM1psY25KcFpHVW9aWGhwYzNScGJtY3NJRzF2WkdVc0lIQnliM0JsY25SNUtUdGNibjA3WEc1Y2JtTnZibk4wSUdkbGRFVjRhWE4wYVc1blJHbHpjR3hoZVU1aGJXVnpJRDBnS0hKMWJHVTZJRk41YzNSbGJVTnZibVpwWjA5MlpYSnlhV1JsVW5Wc1pTazZJSE4wY21sdVoxdGRJRDArSUh0Y2JpQWdZMjl1YzNRZ2JtRnRaWE1nUFNCeWRXeGxMbTFoZEdOb1pYSXViM0IwYVc5dWN6OHVibUZ0WlhNN1hHNGdJR2xtSUNnaFFYSnlZWGt1YVhOQmNuSmhlU2h1WVcxbGN5a3BJSHRjYmlBZ0lDQnlaWFIxY200Z1cxMDdYRzRnSUgxY2JpQWdjbVYwZFhKdUlGc3VMaTV1WVcxbGMxMDdYRzU5TzF4dVhHNWpiMjV6ZENCaGJHeEdhV1ZzWkhOQmNtVkZlR05zZFdSbFpDQTlJQ2h2ZG1WeWNtbGtaVG9nVTNsemRHVnRRMjl1Wm1sblQzWmxjbkpwWkdWU2RXeGxMQ0JrWVhSaE9pQkVZWFJoUm5KaGJXVmJYU2s2SUdKdmIyeGxZVzRnUFQ0Z2UxeHVJQ0J5WlhSMWNtNGdaMlYwUlhocGMzUnBibWRFYVhOd2JHRjVUbUZ0WlhNb2IzWmxjbkpwWkdVcExteGxibWQwYUNBOVBUMGdaMlYwUkdsemNHeGhlVTVoYldWektHUmhkR0VwTG14bGJtZDBhRHRjYm4wN1hHNWNibU52Ym5OMElHZGxkRVJwYzNCc1lYbE9ZVzFsY3lBOUlDaGtZWFJoT2lCRVlYUmhSbkpoYldWYlhTd2daWGhqYkhWa1pVNWhiV1UvT2lCemRISnBibWNwT2lCemRISnBibWRiWFNBOVBpQjdYRzRnSUdOdmJuTjBJSFZ1YVhGMVpTQTlJRzVsZHlCVFpYUThjM1J5YVc1blBpZ3BPMXh1WEc0Z0lHWnZjaUFvWTI5dWMzUWdabkpoYldVZ2IyWWdaR0YwWVNrZ2UxeHVJQ0FnSUdadmNpQW9ZMjl1YzNRZ1ptbGxiR1FnYjJZZ1puSmhiV1V1Wm1sbGJHUnpLU0I3WEc0Z0lDQWdJQ0JwWmlBb1ptbGxiR1F1ZEhsd1pTQWhQVDBnUm1sbGJHUlVlWEJsTG01MWJXSmxjaWtnZTF4dUlDQWdJQ0FnSUNCamIyNTBhVzUxWlR0Y2JpQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ1kyOXVjM1FnYm1GdFpTQTlJR2RsZEVacFpXeGtSR2x6Y0d4aGVVNWhiV1VvWm1sbGJHUXNJR1p5WVcxbExDQmtZWFJoS1R0Y2JseHVJQ0FnSUNBZ2FXWWdLRzVoYldVZ1BUMDlJR1Y0WTJ4MVpHVk9ZVzFsS1NCN1hHNGdJQ0FnSUNBZ0lHTnZiblJwYm5WbE8xeHVJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQjFibWx4ZFdVdVlXUmtLRzVoYldVcE8xeHVJQ0FnSUgxY2JpQWdmVnh1WEc0Z0lISmxkSFZ5YmlCQmNuSmhlUzVtY205dEtIVnVhWEYxWlNrN1hHNTlPMXh1WEc1amIyNXpkQ0JuWlhST1lXMWxjMDltU0dsa1pHVnVSbWxsYkdSeklEMGdLRzkyWlhKeWFXUmxjem9nUTI5dVptbG5UM1psY25KcFpHVlNkV3hsVzEwc0lHUmhkR0U2SUVSaGRHRkdjbUZ0WlZ0ZEtUb2djM1J5YVc1blcxMGdQVDRnZTF4dUlDQnNaWFFnYm1GdFpYTTZJSE4wY21sdVoxdGRJRDBnVzEwN1hHNWNiaUFnWm05eUlDaGpiMjV6ZENCdmRtVnljbWxrWlNCdlppQnZkbVZ5Y21sa1pYTXBJSHRjYmlBZ0lDQmpiMjV6ZENCd2NtOXdaWEowZVNBOUlHOTJaWEp5YVdSbExuQnliM0JsY25ScFpYTXVabWx1WkNnb2NDa2dQVDRnY0M1cFpDQTlQVDBnSjJOMWMzUnZiUzVvYVdSbFJuSnZiU2NwTzF4dVhHNGdJQ0FnYVdZZ0tIQnliM0JsY25SNUlDRTlQU0IxYm1SbFptbHVaV1FnSmlZZ2NISnZjR1Z5ZEhrdWRtRnNkV1UvTG14bFoyVnVaQ0E5UFQwZ2RISjFaU2tnZTF4dUlDQWdJQ0FnWTI5dWMzUWdhVzVtYnlBOUlHWnBaV3hrVFdGMFkyaGxjbk11WjJWMEtHOTJaWEp5YVdSbExtMWhkR05vWlhJdWFXUXBPMXh1SUNBZ0lDQWdZMjl1YzNRZ2JXRjBZMmhsY2lBOUlHbHVabTh1WjJWMEtHOTJaWEp5YVdSbExtMWhkR05vWlhJdWIzQjBhVzl1Y3lrN1hHNWNiaUFnSUNBZ0lHWnZjaUFvWTI5dWMzUWdabkpoYldVZ2IyWWdaR0YwWVNrZ2UxeHVJQ0FnSUNBZ0lDQm1iM0lnS0dOdmJuTjBJR1pwWld4a0lHOW1JR1p5WVcxbExtWnBaV3hrY3lrZ2UxeHVJQ0FnSUNBZ0lDQWdJR2xtSUNobWFXVnNaQzUwZVhCbElDRTlQU0JHYVdWc1pGUjVjR1V1Ym5WdFltVnlLU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQmpiMjUwYVc1MVpUdGNiaUFnSUNBZ0lDQWdJQ0I5WEc1Y2JpQWdJQ0FnSUNBZ0lDQmpiMjV6ZENCdVlXMWxJRDBnWjJWMFJtbGxiR1JFYVhOd2JHRjVUbUZ0WlNobWFXVnNaQ3dnWm5KaGJXVXNJR1JoZEdFcE8xeHVYRzRnSUNBZ0lDQWdJQ0FnYVdZZ0tHMWhkR05vWlhJb1ptbGxiR1FzSUdaeVlXMWxMQ0JrWVhSaEtTa2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ2JtRnRaWE11Y0hWemFDaHVZVzFsS1R0Y2JpQWdJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlYRzRnSUgxY2JseHVJQ0J5WlhSMWNtNGdibUZ0WlhNN1hHNTlPMXh1SWwwc0ltNWhiV1Z6SWpwYkltOTJaWEp5YVdSbElsMHNJbTFoY0hCcGJtZHpJam9pT3pzN096czdPenM3T3pzN096czdPenM3T3pzN08wRkJaVUVzVFVGQlRTeHJRa0ZCY1VJc1IwRkJRU3huUWtGQlFTeERRVUZCTzBGQlF6TkNMRTFCUVUwc2IwSkJRVUVzUjBGQmRVSXNkMEpCUVhkQ0xHdENRVUZyUWl4RFFVRkJMRU5CUVVFN1FVRkZhRVVzVTBGQlV5dzJRa0ZEWkN4RFFVRkJMRXRCUVVFc1JVRkRRU3hKUVVOQkxFVkJRVUVzVjBGQlFTeEZRVU5CTEVsQlEyMUNMRVZCUVVFN1FVRkRia0lzUlVGQlRTeE5RVUZCTEVWQlFVVXNWMEZCWXl4SFFVRkJMRmRCUVVFc1EwRkJRVHRCUVVWMFFpeEZRVUZCTEUxQlFVMHNWMEZCWXl4SFFVRkJMRXRCUVVFc1EwRkJRVHRCUVVOd1FpeEZRVUZOTEUxQlFVRXNXVUZCUVN4SFFVRmxMRk5CUVZVc1EwRkJRU3hUUVVGQkxFTkJRVlVzYjBKQlFXOUNMRU5CUVVFc1EwRkJRVHRCUVVVM1JDeEZRVUZCTEVsQlFVa3NaVUZCWlN4RFFVRkhMRVZCUVVFN1FVRkRjRUlzU1VGQlNTeEpRVUZCTEVsQlFVRXNTMEZCVXl3eVFrRkJNa0lzWlVGQmFVSXNSVUZCUVR0QlFVTjJSQ3hOUVVGTlFTeE5RVUZCUVN4VFFVRkJRU3hIUVVGWExHVkJRV1VzUTBGQlF5eFhRVUZCTEVWQlFXRXNSMEZCUnl4elFrRkJkVUlzUTBGQlFTeFRRVUZCTEVWQlFWY3NTVUZCU1N4RFFVRkRMRU5CUVVNc1EwRkJRU3hEUVVGQk8wRkJSWHBHTEUxQlFVRXNUMEZCVHl4cFEwRkRSaXhYUVVSRkxFTkJRVUVzUlVGQlFUdEJRVUZCTEZGQlJVd3NVMEZCVnl4RlFVRkJMRU5CUVVNc1IwRkJSeXhYUVVGQkxFTkJRVmtzVjBGQlYwRXNVMEZCVVN4RFFVRkJPMEZCUVVFc1QwRkRhRVFzUTBGQlFTeERRVUZCTzBGQlFVRXNTMEZEUmp0QlFVVkJMRWxCUVUwc1RVRkJRU3haUVVGQkxFZEJRV1VzWlVGQlowSXNRMEZCUVN4SlFVRkJMRVZCUVUwc1YwRkJWeXhEUVVGQkxFTkJRVUU3UVVGRGRFUXNTVUZCVFVFc1RVRkJRVUVzVTBGQlFVRXNSMEZCVnl4bFFVRmxMRmxCUVZrc1EwRkJRU3hEUVVGQk8wRkJSVFZETEVsQlFVRXNUMEZCVHl4cFEwRkRSaXhYUVVSRkxFTkJRVUVzUlVGQlFUdEJRVUZCTEUxQlJVd3NVMEZCVnl4RlFVRkJMRU5CUVVNc1IwRkJSeXhYUVVGQkxFTkJRVmtzVjBGQlYwRXNVMEZCVVN4RFFVRkJPMEZCUVVFc1MwRkRhRVFzUTBGQlFTeERRVUZCTzBGQlFVRXNSMEZEUmp0QlFVVkJMRVZCUVUwc1RVRkJRU3hoUVVGQkxFZEJRV2RDTEV0QlFVMHNRMEZCUVN4SlFVRkJMRU5CUVVzc1UwRkJVeXhEUVVGQkxFTkJRVUU3UVVGRE1VTXNSVUZCUVN4TlFVRk5MRU5CUVVNc1QwRkJUeXhEUVVGQkxFZEJRVWtzWVVGQll5eERRVUZCTEUxQlFVRXNRMEZCVHl4alFVRmpMRU5CUVVNc1EwRkJRU3hEUVVGQk8wRkJSWFJFTEVWQlFVa3NTVUZCUVN4SlFVRkJMRXRCUVZNc01rSkJRVEpDTEdWQlFXbENMRVZCUVVFN1FVRkRka1FzU1VGQlNTeEpRVUZCTEZGQlFVRXNSMEZCVnl4M1FrRkJkMElzVDBGQlR5eERRVUZCTEVOQlFVRTdRVUZET1VNc1NVRkJUU3hOUVVGQkxHdENRVUZCTEVkQlFYRkNMSE5DUVVGMVFpeERRVUZCTEdGQlFVRXNSVUZCWlN4SlFVRkpMRU5CUVVFc1EwRkJRVHRCUVVWeVJTeEpRVUZKTEVsQlFVRXNhMEpCUVVFc1EwRkJiVUlzVTBGQlV5eERRVUZITEVWQlFVRTdRVUZEYWtNc1RVRkJWeXhSUVVGQkxFZEJRVUVzVVVGQlFTeERRVUZUTEU5QlFVOHNRMEZCUXl4RlFVRkJMRXRCUVU4c2JVSkJRVzFDTEU5QlFWRXNRMEZCUVN4RlFVRkZMRWxCUVVrc1EwRkJReXhEUVVGQkxFTkJRVUU3UVVGQlFTeExRVU4yUlR0QlFVVkJMRWxCUVVFc1NVRkJTU3hSUVVGVExFTkJRVUVzUTBGQlFTeERRVUZCTEV0QlFVOHNWMEZCWlN4SlFVRkJMRkZCUVVFc1EwRkJVeXhYUVVGWExFTkJRVWNzUlVGQlFUdEJRVU40UkN4TlFVRkJMRTlCUVU4c2FVTkJRMFlzVjBGRVJTeERRVUZCTEVWQlFVRTdRVUZCUVN4UlFVVk1MRk5CUVZjc1JVRkJRU3hoUVVGQk8wRkJRVUVzVDBGRFlpeERRVUZCTEVOQlFVRTdRVUZCUVN4TFFVTkdPMEZCUlVFc1NVRkJRU3hOUVVGTlFTeFpRVUZYTEdOQlFXVXNRMEZCUVN4RFFVRkRMRmRCUVdFc1JVRkJRU3hIUVVGSExHdENRVUZyUWl4RFFVRkRMRU5CUVVFc1EwRkJRVHRCUVVWd1JTeEpRVUZCTEU5QlFVOHNhVU5CUTBZc1YwRkVSU3hEUVVGQkxFVkJRVUU3UVVGQlFTeE5RVVZNTEZOQlFWY3NSVUZCUVN4RFFVRkRMRWRCUVVjc1lVRkJRU3hGUVVGbFFTeFRRVUZSTEVOQlFVRTdRVUZCUVN4TFFVTjRReXhEUVVGQkxFTkJRVUU3UVVGQlFTeEhRVU5HTzBGQlJVRXNSVUZCVFN4TlFVRkJMRkZCUVVFc1IwRkJWeXh6UWtGQmRVSXNRMEZCUVN4UFFVRkJMRVZCUVZNc1YwRkJWeXhEUVVGQkxFTkJRVUU3UVVGRk5VUXNSVUZCU1N4SlFVRkJMRzlDUVVGQkxFTkJRWEZDTEZGQlFWVXNSVUZCUVN4SlFVRkpMRU5CUVVjc1JVRkJRVHRCUVVONFF5eEpRVUZCTEU5QlFVOHNhVU5CUTBZc1YwRkVSU3hEUVVGQkxFVkJRVUU3UVVGQlFTeE5RVVZNTEZOQlFWY3NSVUZCUVN4aFFVRkJPMEZCUVVFc1MwRkRZaXhEUVVGQkxFTkJRVUU3UVVGQlFTeEhRVU5HTzBGQlJVRXNSVUZCUVN4UFFVRlBMR2xEUVVOR0xGZEJSRVVzUTBGQlFTeEZRVUZCTzBGQlFVRXNTVUZGVEN4VFFVRlhMRVZCUVVFc1EwRkJReXhIUVVGSExHRkJRVUVzUlVGQlpTeFJRVUZSTEVOQlFVRTdRVUZCUVN4SFFVTjRReXhEUVVGQkxFTkJRVUU3UVVGRFJpeERRVUZCTzBGQlJVRXNVMEZCVXl4alFVTlFMRU5CUVVFc1MwRkJRU3hGUVVOQkxFbEJRVThzUjBGQlFTeHJRa0ZCUVN4RFFVRnRRaXhUUVVNeFFpeFJRVU13UWl4RlFVRkJPMEZCUXpGQ0xFVkJRVUVzVVVGQlFTeEhRVUZYTEZGQlFWa3NTVUZCUVN4SlFVRkJMRWRCUVVFc1VVRkJRU3hIUVVGQk8wRkJRVUVzU1VGRGNrSXNSVUZCU1N4RlFVRkJMR2xDUVVGQk8wRkJRVUVzU1VGRFNpeExRVUZQTEVWQlFVRTdRVUZCUVN4TlFVTk1MRWRCUVVzc1JVRkJRU3hKUVVGQk8wRkJRVUVzVFVGRFRDeE5RVUZSTEVWQlFVRXNTMEZCUVR0QlFVRkJMRTFCUTFJc1QwRkJVeXhGUVVGQkxFdEJRVUU3UVVGQlFTeExRVU5ZTzBGQlFVRXNSMEZEUml4RFFVRkJPMEZCUlVFc1JVRkJUeXhQUVVGQk8wRkJRVUVzU1VGRFRDeFhRVUZoTEVWQlFVRXNhMEpCUVVFN1FVRkJRU3hKUVVOaUxFOUJRVk1zUlVGQlFUdEJRVUZCTEUxQlExQXNTVUZCU1N4alFVRmxMRU5CUVVFc1QwRkJRVHRCUVVGQkxFMUJRMjVDTEU5QlFWTXNSVUZCUVR0QlFVRkJMRkZCUTFBc1NVRkJRVHRCUVVGQkxGRkJRMEVzUzBGQlFUdEJRVUZCTEZGQlEwRXNUVUZCVVN4RlFVRkJMRWxCUVVFc1MwRkJVeXhyUWtGQmJVSXNRMEZCUVN4UFFVRkJMRWRCUVZVc1lVRkJaMElzUjBGQlFTeExRVUZCTEVOQlFVRTdRVUZCUVN4UlFVTTVSQ3hSUVVGVkxFVkJRVUVzU1VGQlFUdEJRVUZCTEU5QlExbzdRVUZCUVN4TFFVTkdPMEZCUVVFc1NVRkRRU3hWUVVGWkxFVkJRVUU3UVVGQlFTeE5RVU5XTEdsRFFVTkxMRkZCUkV3c1EwRkJRU3hGUVVGQk8wRkJRVUVzVVVGRlJTeExRVUZQTEVWQlFVRTdRVUZCUVN4VlFVTk1MRWRCUVVzc1JVRkJRU3hKUVVGQk8wRkJRVUVzVlVGRFRDeE5RVUZSTEVWQlFVRXNTMEZCUVR0QlFVRkJMRlZCUTFJc1QwRkJVeXhGUVVGQkxFdEJRVUU3UVVGQlFTeFRRVU5ZTzBGQlFVRXNUMEZEUml4RFFVRkJPMEZCUVVFc1MwRkRSanRCUVVGQkxFZEJRMFlzUTBGQlFUdEJRVU5HTEVOQlFVRTdRVUZGUVN4TlFVRk5MSGxDUVVGNVFpeERRVU0zUWl4UFFVRkJMRVZCUTBFc1YwRkRRU3hGUVVGQkxFbEJRVUVzUjBGQlR5eHRRa0ZCYlVJc1QwRkRSeXhMUVVGQk8wRkJRemRDTEVWQlFVMHNUVUZCUVN4UlFVRkJMRWRCUVZjc1VVRkJVU3hWUVVGWExFTkJRVUVzU1VGQlFTeERRVUZMTEVOQlFVTXNRMEZCVFN4TFFVRkJMRU5CUVVFc1EwRkJSU3hQUVVGUExHbENRVUZwUWl4RFFVRkJMRU5CUVVFN1FVRkRNVVVzUlVGQlRTeE5RVUZCTEZGQlFVRXNSMEZCVnl4M1FrRkJkMElzVDBGQlR5eERRVUZCTEVOQlFVRTdRVUZEYUVRc1JVRkJRU3hOUVVGTkxGRkJRVkVzVVVGQlV5eERRVUZCTEZOQlFVRXNRMEZCVlN4RFFVRkRMRWxCUVVFc1MwRkJVeXhUUVVGVExGZEJRVmNzUTBGQlFTeERRVUZCTzBGQlJTOUVMRVZCUVVFc1NVRkJTU3hSUVVGUkxFTkJRVWNzUlVGQlFUdEJRVU5pTEVsQlFVRXNVVUZCUVN4RFFVRlRMRXRCUVVzc1YwRkJWeXhEUVVGQkxFTkJRVUU3UVVGQlFTeEhRVU53UWl4TlFVRkJPMEZCUTB3c1NVRkJVeXhSUVVGQkxFTkJRVUVzVFVGQlFTeERRVUZQTEU5QlFVOHNRMEZCUXl4RFFVRkJMRU5CUVVFN1FVRkJRU3hIUVVNeFFqdEJRVVZCTEVWQlFVOHNUMEZCUVN4alFVRkJMRU5CUVdVc1VVRkJWU3hGUVVGQkxFbEJRVUVzUlVGQlRTeFJRVUZSTEVOQlFVRXNRMEZCUVR0QlFVTm9SQ3hEUVVGQkxFTkJRVUU3UVVGRlFTeE5RVUZOTEhWQ1FVRkJMRWRCUVRCQ0xFTkJRVU1zU1VGQk5rTXNTMEZCUVR0QlFXcEtPVVVzUlVGQlFTeEpRVUZCTEVWQlFVRXNRMEZCUVR0QlFXdEtSU3hGUVVGQkxFMUJRVTBzUzBGQlVTeEhRVUZCTEVOQlFVRXNSVUZCUVN4SFFVRkJMRWxCUVVFc1EwRkJTeXhQUVVGUkxFTkJRVUVzVDBGQlFTeExRVUZpTEVsQlFYTkNMRWRCUVVFc1MwRkJRU3hEUVVGQkxFZEJRVUVzUlVGQlFTeERRVUZCTEV0QlFVRXNRMEZCUVR0QlFVTndReXhGUVVGQkxFbEJRVWtzUTBGQlF5eExRVUZCTEVOQlFVMHNUMEZCVVN4RFFVRkJMRXRCUVVzc1EwRkJSeXhGUVVGQk8wRkJRM3BDTEVsQlFVRXNUMEZCVHl4RlFVRkRMRU5CUVVFN1FVRkJRU3hIUVVOV08wRkJRMEVzUlVGQlR5eFBRVUZCTEVOQlFVTXNSMEZCUnl4TFFVRkxMRU5CUVVFc1EwRkJRVHRCUVVOc1FpeERRVUZCTEVOQlFVRTdRVUZGUVN4TlFVRk5MRzlDUVVGQkxFZEJRWFZDTEVOQlFVTXNVVUZCUVN4RlFVRnZReXhKUVVFclFpeExRVUZCTzBGQlF5OUdMRVZCUVVFc1QwRkJUeXgzUWtGQmQwSXNVVUZCVVN4RFFVRkJMRU5CUVVVc1RVRkJWeXhMUVVGQkxHVkJRVUVzUTBGQlowSXNTVUZCU1N4RFFVRkZMRU5CUVVFc1RVRkJRU3hEUVVGQk8wRkJRelZGTEVOQlFVRXNRMEZCUVR0QlFVVkJMRTFCUVUwc1pVRkJRU3hIUVVGclFpeERRVUZETEVsQlFVRXNSVUZCYlVJc1YwRkJiVU1zUzBGQlFUdEJRVU0zUlN4RlFVRk5MRTFCUVVFc1RVRkJRU3gxUWtGQllTeEhRVUZaTEVWQlFVRXNRMEZCUVR0QlFVVXZRaXhGUVVGQkxFdEJRVUVzVFVGQlZ5eFRRVUZUTEVsQlFVMHNSVUZCUVR0QlFVTjRRaXhKUVVGWExFdEJRVUVzVFVGQlFTeExRVUZCTEVsQlFWTXNUVUZCVFN4TlFVRlJMRVZCUVVFN1FVRkRhRU1zVFVGQlNTeEpRVUZCTEV0QlFVRXNRMEZCVFN4SlFVRlRMRXRCUVVFc1UwRkJRU3hEUVVGVkxFMUJRVkVzUlVGQlFUdEJRVU51UXl4UlFVRkJMRk5CUVVFN1FVRkJRU3hQUVVOR08wRkJSVUVzVFVGQlFTeE5RVUZOTEVsQlFVOHNSMEZCUVN4dFFrRkJRU3hEUVVGdlFpeExRVUZQTEVWQlFVRXNTMEZCUVN4RlFVRlBMRWxCUVVrc1EwRkJRU3hEUVVGQk8wRkJSVzVFTEUxQlFVRXNTVUZCU1N4VFFVRlRMRmRCUVdFc1JVRkJRVHRCUVVONFFpeFJRVUZCTEZOQlFVRTdRVUZCUVN4UFFVTkdPMEZCUlVFc1RVRkJRU3hOUVVGQkxFTkJRVThzU1VGQlNTeEpRVUZKTEVOQlFVRXNRMEZCUVR0QlFVRkJMRXRCUTJwQ08wRkJRVUVzUjBGRFJqdEJRVVZCTEVWQlFVOHNUMEZCUVN4TFFVRkJMRU5CUVUwc1MwRkJTeXhOUVVGTkxFTkJRVUVzUTBGQlFUdEJRVU14UWl4RFFVRkJMRU5CUVVFN1FVRkZRU3hOUVVGTkxITkNRVUZCTEVkQlFYbENMRU5CUVVNc1UwRkJRU3hGUVVGcFF5eEpRVUZuUXl4TFFVRkJPMEZCYmt4cVJ5eEZRVUZCTEVsQlFVRXNSVUZCUVN4RFFVRkJPMEZCYjB4RkxFVkJRVUVzU1VGQlNTeFJRVUZyUWl4RlFVRkRMRU5CUVVFN1FVRkZka0lzUlVGQlFTeExRVUZCTEUxQlFWY3NXVUZCV1N4VFFVRlhMRVZCUVVFN1FVRkRhRU1zU1VGQlRTeE5RVUZCTEZGQlFVRXNSMEZCVnl4VFFVRlRMRlZCUVZjc1EwRkJRU3hKUVVGQkxFTkJRVXNzUTBGQlF5eERRVUZOTEV0QlFVRXNRMEZCUVN4RFFVRkZMRTlCUVU4c2FVSkJRV2xDTEVOQlFVRXNRMEZCUVR0QlFVVXpSU3hKUVVGQkxFbEJRVWtzWVVGQllTeExRVUZoTEVOQlFVRXNTVUZCUVN4RFFVRkJMRU5CUVVFc1JVRkJRU3hIUVVGQkxGRkJRVUVzUTBGQlV5eExRVUZVTEV0QlFVRXNTVUZCUVN4SFFVRkJMRXRCUVVFc1EwRkJRU3hIUVVGQkxFVkJRVUVzUTBGQlowSXNXVUZCVnl4SlFVRk5MRVZCUVVFN1FVRkROMFFzVFVGQlFTeE5RVUZOTEVsQlFVOHNSMEZCUVN4aFFVRkJMRU5CUVdNc1IwRkJTU3hEUVVGQkxGRkJRVUVzUTBGQlV5eFJRVUZSTEVWQlFVVXNRMEZCUVN4RFFVRkJPMEZCUTJ4RUxFMUJRVUVzVFVGQlRTeFBRVUZWTEVkQlFVRXNTVUZCUVN4RFFVRkxMRWRCUVVrc1EwRkJRU3hSUVVGQkxFTkJRVk1zVVVGQlVTeFBRVUZQTEVOQlFVRXNRMEZCUVR0QlFVVnFSQ3hOUVVGQkxFdEJRVUVzVFVGQlZ5eFRRVUZUTEVsQlFVMHNSVUZCUVR0QlFVTjRRaXhSUVVGWExFdEJRVUVzVFVGQlFTeExRVUZCTEVsQlFWTXNUVUZCVFN4TlFVRlJMRVZCUVVFN1FVRkRhRU1zVlVGQlNTeEpRVUZCTEV0QlFVRXNRMEZCVFN4SlFVRlRMRXRCUVVFc1UwRkJRU3hEUVVGVkxFMUJRVkVzUlVGQlFUdEJRVU51UXl4WlFVRkJMRk5CUVVFN1FVRkJRU3hYUVVOR08wRkJSVUVzVlVGQlFTeE5RVUZOTEVsQlFVOHNSMEZCUVN4dFFrRkJRU3hEUVVGdlFpeExRVUZQTEVWQlFVRXNTMEZCUVN4RlFVRlBMRWxCUVVrc1EwRkJRU3hEUVVGQk8wRkJSVzVFTEZWQlFVRXNTVUZCU1N4UFFVRlJMRU5CUVVFc1MwRkJRU3hGUVVGUExFdEJRVThzUlVGQlFTeEpRVUZKTEVOQlFVY3NSVUZCUVR0QlFVTXZRaXhaUVVGQkxFdEJRVUVzUTBGQlRTeExRVUZMTEVsQlFVa3NRMEZCUVN4RFFVRkJPMEZCUVVFc1YwRkRha0k3UVVGQlFTeFRRVU5HTzBGQlFVRXNUMEZEUmp0QlFVRkJMRXRCUTBZN1FVRkJRU3hIUVVOR08wRkJSVUVzUlVGQlR5eFBRVUZCTEV0QlFVRXNRMEZCUVR0QlFVTlVMRU5CUVVFN096czdJbjA9XG4iXSwibmFtZXMiOlsib3ZlcnJpZGUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFlQSxNQUFNLGtCQUFxQixHQUFBLGdCQUFBLENBQUE7QUFDM0IsTUFBTSxvQkFBQSxHQUF1Qix3QkFBd0Isa0JBQWtCLENBQUEsQ0FBQTtBQUVoRSxTQUFTLDZCQUNkLENBQUEsS0FBQSxFQUNBLElBQ0EsRUFBQSxXQUFBLEVBQ0EsSUFDbUIsRUFBQTtBQUNiLEVBQUEsTUFBQSxFQUFFLFdB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
@@ -1,124 +0,0 @@
1
- import { css } from '@emotion/css';
2
- import React, { useMemo } from 'react';
3
- import { SceneObjectBase } from '../../../core/SceneObjectBase.js';
4
- import { config } from '@grafana/runtime';
5
- import { LazyLoader } from '../LazyLoader.js';
6
-
7
- var __defProp = Object.defineProperty;
8
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
9
- var __hasOwnProp = Object.prototype.hasOwnProperty;
10
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
- var __spreadValues = (a, b) => {
13
- for (var prop in b || (b = {}))
14
- if (__hasOwnProp.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- if (__getOwnPropSymbols)
17
- for (var prop of __getOwnPropSymbols(b)) {
18
- if (__propIsEnum.call(b, prop))
19
- __defNormalProp(a, prop, b[prop]);
20
- }
21
- return a;
22
- };
23
- class SceneCSSGridLayout extends SceneObjectBase {
24
- constructor(state) {
25
- var _a, _b;
26
- super(__spreadValues({
27
- rowGap: 1,
28
- columnGap: 1,
29
- templateColumns: "repeat(auto-fit, minmax(400px, 1fr))",
30
- autoRows: (_a = state.autoRows) != null ? _a : `320px`,
31
- children: (_b = state.children) != null ? _b : []
32
- }, state));
33
- }
34
- isDraggable() {
35
- return false;
36
- }
37
- }
38
- SceneCSSGridLayout.Component = SceneCSSGridLayoutRenderer;
39
- function SceneCSSGridLayoutRenderer({ model }) {
40
- const { children, isHidden, isLazy } = model.useState();
41
- const style = useLayoutStyle(model.state);
42
- if (isHidden) {
43
- return null;
44
- }
45
- return /* @__PURE__ */ React.createElement("div", {
46
- className: style
47
- }, children.map((item) => {
48
- const Component = item.Component;
49
- if (isLazy) {
50
- return /* @__PURE__ */ React.createElement(LazyLoader, {
51
- key: item.state.key,
52
- className: style
53
- }, /* @__PURE__ */ React.createElement(Component, {
54
- key: item.state.key,
55
- model: item,
56
- parentState: model.state
57
- }));
58
- }
59
- return /* @__PURE__ */ React.createElement(Component, {
60
- key: item.state.key,
61
- model: item,
62
- parentState: model.state
63
- });
64
- }));
65
- }
66
- class SceneCSSGridItem extends SceneObjectBase {
67
- }
68
- SceneCSSGridItem.Component = SceneCSSGridItemRenderer;
69
- function SceneCSSGridItemRenderer({ model, parentState }) {
70
- if (!parentState) {
71
- throw new Error("SceneCSSGridItem must be a child of SceneCSSGridLayout");
72
- }
73
- const { body, isHidden } = model.useState();
74
- const style = useItemStyle(model.state);
75
- if (!body || isHidden) {
76
- return null;
77
- }
78
- return /* @__PURE__ */ React.createElement("div", {
79
- className: style
80
- }, /* @__PURE__ */ React.createElement(body.Component, {
81
- model: body
82
- }));
83
- }
84
- function useLayoutStyle(state) {
85
- return useMemo(() => {
86
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
87
- const style = {};
88
- const theme = config.theme2;
89
- style.display = "grid";
90
- style.gridTemplateColumns = state.templateColumns;
91
- style.gridTemplateRows = state.templateRows || "unset";
92
- style.gridAutoRows = state.autoRows || "unset";
93
- style.rowGap = theme.spacing((_a = state.rowGap) != null ? _a : 1);
94
- style.columnGap = theme.spacing((_b = state.columnGap) != null ? _b : 1);
95
- style.justifyItems = state.justifyItems || "unset";
96
- style.alignItems = state.alignItems || "unset";
97
- style.justifyContent = state.justifyContent || "unset";
98
- style.flexGrow = 1;
99
- if (state.md) {
100
- style[theme.breakpoints.down("md")] = {
101
- gridTemplateRows: (_c = state.md) == null ? void 0 : _c.templateRows,
102
- gridTemplateColumns: (_d = state.md) == null ? void 0 : _d.templateColumns,
103
- rowGap: state.md.rowGap ? theme.spacing((_f = (_e = state.md) == null ? void 0 : _e.rowGap) != null ? _f : 1) : void 0,
104
- columnGap: state.md.columnGap ? theme.spacing((_h = (_g = state.md) == null ? void 0 : _g.rowGap) != null ? _h : 1) : void 0,
105
- justifyItems: (_i = state.md) == null ? void 0 : _i.justifyItems,
106
- alignItems: (_j = state.md) == null ? void 0 : _j.alignItems,
107
- justifyContent: (_k = state.md) == null ? void 0 : _k.justifyContent
108
- };
109
- }
110
- return css(style);
111
- }, [state]);
112
- }
113
- function useItemStyle(state) {
114
- return useMemo(() => {
115
- const style = {};
116
- style.gridColumn = state.gridColumn || "unset";
117
- style.gridRow = state.gridRow || "unset";
118
- style.position = "relative";
119
- return css(style);
120
- }, [state]);
121
- }
122
-
123
- export { SceneCSSGridItem, SceneCSSGridLayout };
124
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2NlbmVDU1NHcmlkTGF5b3V0LmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9jb21wb25lbnRzL2xheW91dC9DU1NHcmlkL1NjZW5lQ1NTR3JpZExheW91dC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9jc3MnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBTY2VuZU9iamVjdEJhc2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL1NjZW5lT2JqZWN0QmFzZS5qcyc7XG5pbXBvcnQgeyBjb25maWcgfSBmcm9tICdAZ3JhZmFuYS9ydW50aW1lJztcbmltcG9ydCB7IExhenlMb2FkZXIgfSBmcm9tICcuLi9MYXp5TG9hZGVyLmpzJztcblxudmFyIF9fZGVmUHJvcCA9IE9iamVjdC5kZWZpbmVQcm9wZXJ0eTtcbnZhciBfX2dldE93blByb3BTeW1ib2xzID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scztcbnZhciBfX2hhc093blByb3AgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O1xudmFyIF9fcHJvcElzRW51bSA9IE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGU7XG52YXIgX19kZWZOb3JtYWxQcm9wID0gKG9iaiwga2V5LCB2YWx1ZSkgPT4ga2V5IGluIG9iaiA/IF9fZGVmUHJvcChvYmosIGtleSwgeyBlbnVtZXJhYmxlOiB0cnVlLCBjb25maWd1cmFibGU6IHRydWUsIHdyaXRhYmxlOiB0cnVlLCB2YWx1ZSB9KSA6IG9ialtrZXldID0gdmFsdWU7XG52YXIgX19zcHJlYWRWYWx1ZXMgPSAoYSwgYikgPT4ge1xuICBmb3IgKHZhciBwcm9wIGluIGIgfHwgKGIgPSB7fSkpXG4gICAgaWYgKF9faGFzT3duUHJvcC5jYWxsKGIsIHByb3ApKVxuICAgICAgX19kZWZOb3JtYWxQcm9wKGEsIHByb3AsIGJbcHJvcF0pO1xuICBpZiAoX19nZXRPd25Qcm9wU3ltYm9scylcbiAgICBmb3IgKHZhciBwcm9wIG9mIF9fZ2V0T3duUHJvcFN5bWJvbHMoYikpIHtcbiAgICAgIGlmIChfX3Byb3BJc0VudW0uY2FsbChiLCBwcm9wKSlcbiAgICAgICAgX19kZWZOb3JtYWxQcm9wKGEsIHByb3AsIGJbcHJvcF0pO1xuICAgIH1cbiAgcmV0dXJuIGE7XG59O1xuY2xhc3MgU2NlbmVDU1NHcmlkTGF5b3V0IGV4dGVuZHMgU2NlbmVPYmplY3RCYXNlIHtcbiAgY29uc3RydWN0b3Ioc3RhdGUpIHtcbiAgICB2YXIgX2EsIF9iO1xuICAgIHN1cGVyKF9fc3ByZWFkVmFsdWVzKHtcbiAgICAgIHJvd0dhcDogMSxcbiAgICAgIGNvbHVtbkdhcDogMSxcbiAgICAgIHRlbXBsYXRlQ29sdW1uczogXCJyZXBlYXQoYXV0by1maXQsIG1pbm1heCg0MDBweCwgMWZyKSlcIixcbiAgICAgIGF1dG9Sb3dzOiAoX2EgPSBzdGF0ZS5hdXRvUm93cykgIT0gbnVsbCA/IF9hIDogYDMyMHB4YCxcbiAgICAgIGNoaWxkcmVuOiAoX2IgPSBzdGF0ZS5jaGlsZHJlbikgIT0gbnVsbCA/IF9iIDogW11cbiAgICB9LCBzdGF0ZSkpO1xuICB9XG4gIGlzRHJhZ2dhYmxlKCkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuU2NlbmVDU1NHcmlkTGF5b3V0LkNvbXBvbmVudCA9IFNjZW5lQ1NTR3JpZExheW91dFJlbmRlcmVyO1xuZnVuY3Rpb24gU2NlbmVDU1NHcmlkTGF5b3V0UmVuZGVyZXIoeyBtb2RlbCB9KSB7XG4gIGNvbnN0IHsgY2hpbGRyZW4sIGlzSGlkZGVuLCBpc0xhenkgfSA9IG1vZGVsLnVzZVN0YXRlKCk7XG4gIGNvbnN0IHN0eWxlID0gdXNlTGF5b3V0U3R5bGUobW9kZWwuc3RhdGUpO1xuICBpZiAoaXNIaWRkZW4pIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICByZXR1cm4gLyogQF9fUFVSRV9fICovIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwge1xuICAgIGNsYXNzTmFtZTogc3R5bGVcbiAgfSwgY2hpbGRyZW4ubWFwKChpdGVtKSA9PiB7XG4gICAgY29uc3QgQ29tcG9uZW50ID0gaXRlbS5Db21wb25lbnQ7XG4gICAgaWYgKGlzTGF6eSkge1xuICAgICAgcmV0dXJuIC8qIEBfX1BVUkVfXyAqLyBSZWFjdC5jcmVhdGVFbGVtZW50KExhenlMb2FkZXIsIHtcbiAgICAgICAga2V5OiBpdGVtLnN0YXRlLmtleSxcbiAgICAgICAgY2xhc3NOYW1lOiBzdHlsZVxuICAgICAgfSwgLyogQF9fUFVSRV9fICovIFJlYWN0LmNyZWF0ZUVsZW1lbnQoQ29tcG9uZW50LCB7XG4gICAgICAgIGtleTogaXRlbS5zdGF0ZS5rZXksXG4gICAgICAgIG1vZGVsOiBpdGVtLFxuICAgICAgICBwYXJlbnRTdGF0ZTogbW9kZWwuc3RhdGVcbiAgICAgIH0pKTtcbiAgICB9XG4gICAgcmV0dXJuIC8qIEBfX1BVUkVfXyAqLyBSZWFjdC5jcmVhdGVFbGVtZW50KENvbXBvbmVudCwge1xuICAgICAga2V5OiBpdGVtLnN0YXRlLmtleSxcbiAgICAgIG1vZGVsOiBpdGVtLFxuICAgICAgcGFyZW50U3RhdGU6IG1vZGVsLnN0YXRlXG4gICAgfSk7XG4gIH0pKTtcbn1cbmNsYXNzIFNjZW5lQ1NTR3JpZEl0ZW0gZXh0ZW5kcyBTY2VuZU9iamVjdEJhc2Uge1xufVxuU2NlbmVDU1NHcmlkSXRlbS5Db21wb25lbnQgPSBTY2VuZUNTU0dyaWRJdGVtUmVuZGVyZXI7XG5mdW5jdGlvbiBTY2VuZUNTU0dyaWRJdGVtUmVuZGVyZXIoeyBtb2RlbCwgcGFyZW50U3RhdGUgfSkge1xuICBpZiAoIXBhcmVudFN0YXRlKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwiU2NlbmVDU1NHcmlkSXRlbSBtdXN0IGJlIGEgY2hpbGQgb2YgU2NlbmVDU1NHcmlkTGF5b3V0XCIpO1xuICB9XG4gIGNvbnN0IHsgYm9keSwgaXNIaWRkZW4gfSA9IG1vZGVsLnVzZVN0YXRlKCk7XG4gIGNvbnN0IHN0eWxlID0gdXNlSXRlbVN0eWxlKG1vZGVsLnN0YXRlKTtcbiAgaWYgKCFib2R5IHx8IGlzSGlkZGVuKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgcmV0dXJuIC8qIEBfX1BVUkVfXyAqLyBSZWFjdC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIHtcbiAgICBjbGFzc05hbWU6IHN0eWxlXG4gIH0sIC8qIEBfX1BVUkVfXyAqLyBSZWFjdC5jcmVhdGVFbGVtZW50KGJvZHkuQ29tcG9uZW50LCB7XG4gICAgbW9kZWw6IGJvZHlcbiAgfSkpO1xufVxuZnVuY3Rpb24gdXNlTGF5b3V0U3R5bGUoc3RhdGUpIHtcbiAgcmV0dXJuIHVzZU1lbW8oKCkgPT4ge1xuICAgIHZhciBfYSwgX2IsIF9jLCBfZCwgX2UsIF9mLCBfZywgX2gsIF9pLCBfaiwgX2s7XG4gICAgY29uc3Qgc3R5bGUgPSB7fTtcbiAgICBjb25zdCB0aGVtZSA9IGNvbmZpZy50aGVtZTI7XG4gICAgc3R5bGUuZGlzcGxheSA9IFwiZ3JpZFwiO1xuICAgIHN0eWxlLmdyaWRUZW1wbGF0ZUNvbHVtbnMgPSBzdGF0ZS50ZW1wbGF0ZUNvbHVtbnM7XG4gICAgc3R5bGUuZ3JpZFRlbXBsYXRlUm93cyA9IHN0YXRlLnRlbXBsYXRlUm93cyB8fCBcInVuc2V0XCI7XG4gICAgc3R5bGUuZ3JpZEF1dG9Sb3dzID0gc3RhdGUuYXV0b1Jvd3MgfHwgXCJ1bnNldFwiO1xuICAgIHN0eWxlLnJvd0dhcCA9IHRoZW1lLnNwYWNpbmcoKF9hID0gc3RhdGUucm93R2FwKSAhPSBudWxsID8gX2EgOiAxKTtcbiAgICBzdHlsZS5jb2x1bW5HYXAgPSB0aGVtZS5zcGFjaW5nKChfYiA9IHN0YXRlLmNvbHVtbkdhcCkgIT0gbnVsbCA/IF9iIDogMSk7XG4gICAgc3R5bGUuanVzdGlmeUl0ZW1zID0gc3RhdGUuanVzdGlmeUl0ZW1zIHx8IFwidW5zZXRcIjtcbiAgICBzdHlsZS5hbGlnbkl0ZW1zID0gc3RhdGUuYWxpZ25JdGVtcyB8fCBcInVuc2V0XCI7XG4gICAgc3R5bGUuanVzdGlmeUNvbnRlbnQgPSBzdGF0ZS5qdXN0aWZ5Q29udGVudCB8fCBcInVuc2V0XCI7XG4gICAgc3R5bGUuZmxleEdyb3cgPSAxO1xuICAgIGlmIChzdGF0ZS5tZCkge1xuICAgICAgc3R5bGVbdGhlbWUuYnJlYWtwb2ludHMuZG93bihcIm1kXCIpXSA9IHtcbiAgICAgICAgZ3JpZFRlbXBsYXRlUm93czogKF9jID0gc3RhdGUubWQpID09IG51bGwgPyB2b2lkIDAgOiBfYy50ZW1wbGF0ZVJvd3MsXG4gICAgICAgIGdyaWRUZW1wbGF0ZUNvbHVtbnM6IChfZCA9IHN0YXRlLm1kKSA9PSBudWxsID8gdm9pZCAwIDogX2QudGVtcGxhdGVDb2x1bW5zLFxuICAgICAgICByb3dHYXA6IHN0YXRlLm1kLnJvd0dhcCA/IHRoZW1lLnNwYWNpbmcoKF9mID0gKF9lID0gc3RhdGUubWQpID09IG51bGwgPyB2b2lkIDAgOiBfZS5yb3dHYXApICE9IG51bGwgPyBfZiA6IDEpIDogdm9pZCAwLFxuICAgICAgICBjb2x1bW5HYXA6IHN0YXRlLm1kLmNvbHVtbkdhcCA/IHRoZW1lLnNwYWNpbmcoKF9oID0gKF9nID0gc3RhdGUubWQpID09IG51bGwgPyB2b2lkIDAgOiBfZy5yb3dHYXApICE9IG51bGwgPyBfaCA6IDEpIDogdm9pZCAwLFxuICAgICAgICBqdXN0aWZ5SXRlbXM6IChfaSA9IHN0YXRlLm1kKSA9PSBudWxsID8gdm9pZCAwIDogX2kuanVzdGlmeUl0ZW1zLFxuICAgICAgICBhbGlnbkl0ZW1zOiAoX2ogPSBzdGF0ZS5tZCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9qLmFsaWduSXRlbXMsXG4gICAgICAgIGp1c3RpZnlDb250ZW50OiAoX2sgPSBzdGF0ZS5tZCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9rLmp1c3RpZnlDb250ZW50XG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gY3NzKHN0eWxlKTtcbiAgfSwgW3N0YXRlXSk7XG59XG5mdW5jdGlvbiB1c2VJdGVtU3R5bGUoc3RhdGUpIHtcbiAgcmV0dXJuIHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IHN0eWxlID0ge307XG4gICAgc3R5bGUuZ3JpZENvbHVtbiA9IHN0YXRlLmdyaWRDb2x1bW4gfHwgXCJ1bnNldFwiO1xuICAgIHN0eWxlLmdyaWRSb3cgPSBzdGF0ZS5ncmlkUm93IHx8IFwidW5zZXRcIjtcbiAgICBzdHlsZS5wb3NpdGlvbiA9IFwicmVsYXRpdmVcIjtcbiAgICByZXR1cm4gY3NzKHN0eWxlKTtcbiAgfSwgW3N0YXRlXSk7XG59XG5cbmV4cG9ydCB7IFNjZW5lQ1NTR3JpZEl0ZW0sIFNjZW5lQ1NTR3JpZExheW91dCB9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lVMk5sYm1WRFUxTkhjbWxrVEdGNWIzVjBMbXB6SWl3aWMyOTFjbU5sY3lJNld5SXVMaTh1TGk4dUxpOHVMaTh1TGk5emNtTXZZMjl0Y0c5dVpXNTBjeTlzWVhsdmRYUXZRMU5UUjNKcFpDOVRZMlZ1WlVOVFUwZHlhV1JNWVhsdmRYUXVkSE40SWwwc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYkltbHRjRzl5ZENCN0lHTnpjeXdnUTFOVFQySnFaV04wSUgwZ1puSnZiU0FuUUdWdGIzUnBiMjR2WTNOekp6dGNibWx0Y0c5eWRDQlNaV0ZqZEN3Z2V5QkRiMjF3YjI1bGJuUlVlWEJsTENCRFUxTlFjbTl3WlhKMGFXVnpMQ0IxYzJWTlpXMXZJSDBnWm5KdmJTQW5jbVZoWTNRbk8xeHVYRzVwYlhCdmNuUWdleUJUWTJWdVpVOWlhbVZqZEVKaGMyVWdmU0JtY205dElDY3VMaTh1TGk4dUxpOWpiM0psTDFOalpXNWxUMkpxWldOMFFtRnpaU2M3WEc1cGJYQnZjblFnZXlCVFkyVnVaVU52YlhCdmJtVnVkRkJ5YjNCekxDQlRZMlZ1WlV4aGVXOTFkQ3dnVTJObGJtVlBZbXBsWTNSVGRHRjBaU3dnVTJObGJtVlBZbXBsWTNRZ2ZTQm1jbTl0SUNjdUxpOHVMaTh1TGk5amIzSmxMM1I1Y0dWekp6dGNibWx0Y0c5eWRDQjdJR052Ym1acFp5QjlJR1p5YjIwZ0owQm5jbUZtWVc1aEwzSjFiblJwYldVbk8xeHVhVzF3YjNKMElIc2dUR0Y2ZVV4dllXUmxjaUI5SUdaeWIyMGdKeTR1TDB4aGVubE1iMkZrWlhJbk8xeHVYRzVsZUhCdmNuUWdhVzUwWlhKbVlXTmxJRk5qWlc1bFExTlRSM0pwWkV4aGVXOTFkRk4wWVhSbElHVjRkR1Z1WkhNZ1UyTmxibVZQWW1wbFkzUlRkR0YwWlN3Z1UyTmxibVZEVTFOSGNtbGtUR0Y1YjNWMFQzQjBhVzl1Y3lCN1hHNGdJR05vYVd4a2NtVnVPaUJCY25KaGVUeFRZMlZ1WlVOVFUwZHlhV1JKZEdWdElId2dVMk5sYm1WUFltcGxZM1ErTzF4dUlDQXZLaXBjYmlBZ0lDb2dWSEoxWlNCM2FHVnVJSFJvWlNCcGRHVnRJSE5vYjNWc1pDQnlaVzVrWlhKbFpDQmlkWFFnYm05MElIWnBjMmxpYkdVdVhHNGdJQ0FxSUZWelpXWjFiQ0JtYjNJZ1kyOXVaR2wwYVc5dVlXd2daR2x6Y0d4aGVTQnZaaUJzWVhsdmRYUWdhWFJsYlhOY2JpQWdJQ292WEc0Z0lHbHpTR2xrWkdWdVB6b2dZbTl2YkdWaGJqdGNiaUFnTHlvcVhHNGdJQ0FxSUVadmNpQnRaV1JwWVNCeGRXVnllU0JtYjNJZ2MyTmxaVzV6SUhOdFlXeHNaWElnZEdoaGJpQnRaQ0JpY21WaGEzQnZhVzUwWEc0Z0lDQXFMMXh1SUNCdFpEODZJRk5qWlc1bFExTlRSM0pwWkV4aGVXOTFkRTl3ZEdsdmJuTTdYRzRnSUM4cUtpQlVjblZsSUhkb1pXNGdkR2hsSUdsMFpXMXpJSE5vYjNWc1pDQmlaU0JzWVhwNUlHeHZZV1JsWkNBcUwxeHVJQ0JwYzB4aGVuay9PaUJpYjI5c1pXRnVPMXh1ZlZ4dVhHNWxlSEJ2Y25RZ2FXNTBaWEptWVdObElGTmpaVzVsUTFOVFIzSnBaRXhoZVc5MWRFOXdkR2x2Ym5NZ2UxeHVJQ0F2S2lwY2JpQWdJQ29nVlhObFpuVnNJR1p2Y2lCelpYUjBhVzVuSUdFZ2FHVnBaMmgwSUc5dUlHbDBaVzF6SUhkcGRHaHZkWFFnYzNCbFkybG1lV2x1WnlCb2IzY2diV0Z1ZVNCeWIzZHpJSFJvWlhKbElIZHBiR3dnWW1VdVhHNGdJQ0FxSUVSbFptRjFiSFJ6SUhSdklETXlNSEI0WEc0Z0lDQXFMMXh1SUNCaGRYUnZVbTkzY3o4NklFTlRVMUJ5YjNCbGNuUnBaWE5iSjJkeWFXUkJkWFJ2VW05M2N5ZGRPMXh1SUNBdktpcGNiaUFnSUNvZ1ZHaHBjeUJ2ZG1WeWNtbGtaWE1nZEdobElHRjFkRzlTYjNkeklIZHBkR2dnWVNCemNHVmphV1pwWXlCeWIzY2dkR1Z0Y0d4aGRHVXVYRzRnSUNBcUwxeHVJQ0IwWlcxd2JHRjBaVkp2ZDNNL09pQkRVMU5RY205d1pYSjBhV1Z6V3lkbmNtbGtWR1Z0Y0d4aGRHVlNiM2R6SjEwN1hHNGdJQzhxS2x4dUlDQWdLaUJFWldaaGRXeDBjeUIwYnlCeVpYQmxZWFFvWVhWMGJ5MW1hWFFzSUcxcGJtMWhlQ2cwTURCd2VDd2dNV1p5S1NrdUlGUm9hWE1nY0dGMGRHVnliaUIxY3lCMWMyVm1kV3dnWm05eUlHVnhkV0ZzYkhrZ2MybDZaV1FnYVhSbGJYTWdkMmwwYUNCaElHMXBiaUIzYVdSMGFDQnZaaUEwTURCd2VGeHVJQ0FnS2lCaGJtUWdaSGx1WVcxcFl5QnRZWGdnZDJsa2RHZ2djM0JzYVhRZ1pYRjFZV3hzZVNCaGJXOXVaeUJqYjJ4MWJXNXpMbHh1SUNBZ0tpOWNiaUFnZEdWdGNHeGhkR1ZEYjJ4MWJXNXpPaUJEVTFOUWNtOXdaWEowYVdWeld5ZG5jbWxrVkdWdGNHeGhkR1ZEYjJ4MWJXNXpKMTA3WEc0Z0lDOHFLaUJKYmlCSGNtRm1ZVzVoSUdSbGMybG5iaUJ6ZVhOMFpXMGdaM0pwWkNCMWJtbDBjeUFvT0hCNEtTQWdLaTljYmlBZ2NtOTNSMkZ3T2lCdWRXMWlaWEk3WEc0Z0lDOHFLaUJKYmlCSGNtRm1ZVzVoSUdSbGMybG5iaUJ6ZVhOMFpXMGdaM0pwWkNCMWJtbDBjeUFvT0hCNEtTQWdLaTljYmlBZ1kyOXNkVzF1UjJGd09pQnVkVzFpWlhJN1hHNGdJR3AxYzNScFpubEpkR1Z0Y3o4NklFTlRVMUJ5YjNCbGNuUnBaWE5iSjJwMWMzUnBabmxKZEdWdGN5ZGRPMXh1SUNCaGJHbG5ia2wwWlcxelB6b2dRMU5UVUhKdmNHVnlkR2xsYzFzbllXeHBaMjVKZEdWdGN5ZGRPMXh1SUNCcWRYTjBhV1o1UTI5dWRHVnVkRDg2SUVOVFUxQnliM0JsY25ScFpYTmJKMnAxYzNScFpubERiMjUwWlc1MEoxMDdYRzU5WEc1Y2JtVjRjRzl5ZENCamJHRnpjeUJUWTJWdVpVTlRVMGR5YVdSTVlYbHZkWFFnWlhoMFpXNWtjeUJUWTJWdVpVOWlhbVZqZEVKaGMyVThVMk5sYm1WRFUxTkhjbWxrVEdGNWIzVjBVM1JoZEdVK0lHbHRjR3hsYldWdWRITWdVMk5sYm1WTVlYbHZkWFFnZTF4dUlDQndkV0pzYVdNZ2MzUmhkR2xqSUVOdmJYQnZibVZ1ZENBOUlGTmpaVzVsUTFOVFIzSnBaRXhoZVc5MWRGSmxibVJsY21WeU8xeHVYRzRnSUhCMVlteHBZeUJqYjI1emRISjFZM1J2Y2loemRHRjBaVG9nVUdGeWRHbGhiRHhUWTJWdVpVTlRVMGR5YVdSTVlYbHZkWFJUZEdGMFpUNHBJSHRjYmlBZ0lDQnpkWEJsY2loN1hHNGdJQ0FnSUNCeWIzZEhZWEE2SURFc1hHNGdJQ0FnSUNCamIyeDFiVzVIWVhBNklERXNYRzRnSUNBZ0lDQjBaVzF3YkdGMFpVTnZiSFZ0Ym5NNklDZHlaWEJsWVhRb1lYVjBieTFtYVhRc0lHMXBibTFoZUNnME1EQndlQ3dnTVdaeUtTa25MRnh1SUNBZ0lDQWdZWFYwYjFKdmQzTTZJSE4wWVhSbExtRjFkRzlTYjNkeklEOC9JR0F6TWpCd2VHQXNYRzRnSUNBZ0lDQmphR2xzWkhKbGJqb2djM1JoZEdVdVkyaHBiR1J5Wlc0Z1B6OGdXMTBzWEc0Z0lDQWdJQ0F1TGk1emRHRjBaU3hjYmlBZ0lDQjlLVHRjYmlBZ2ZWeHVYRzRnSUhCMVlteHBZeUJwYzBSeVlXZG5ZV0pzWlNncE9pQmliMjlzWldGdUlIdGNiaUFnSUNCeVpYUjFjbTRnWm1Gc2MyVTdYRzRnSUgxY2JuMWNibHh1Wm5WdVkzUnBiMjRnVTJObGJtVkRVMU5IY21sa1RHRjViM1YwVW1WdVpHVnlaWElvZXlCdGIyUmxiQ0I5T2lCVFkyVnVaVU5UVTBkeWFXUkpkR1Z0VW1WdVpHVnlVSEp2Y0hNOFUyTmxibVZEVTFOSGNtbGtUR0Y1YjNWMFBpa2dlMXh1SUNCamIyNXpkQ0I3SUdOb2FXeGtjbVZ1TENCcGMwaHBaR1JsYml3Z2FYTk1ZWHA1SUgwZ1BTQnRiMlJsYkM1MWMyVlRkR0YwWlNncE8xeHVJQ0JqYjI1emRDQnpkSGxzWlNBOUlIVnpaVXhoZVc5MWRGTjBlV3hsS0cxdlpHVnNMbk4wWVhSbEtUdGNibHh1SUNCcFppQW9hWE5JYVdSa1pXNHBJSHRjYmlBZ0lDQnlaWFIxY200Z2JuVnNiRHRjYmlBZ2ZWeHVYRzRnSUhKbGRIVnliaUFvWEc0Z0lDQWdQR1JwZGlCamJHRnpjMDVoYldVOWUzTjBlV3hsZlQ1Y2JpQWdJQ0FnSUh0amFHbHNaSEpsYmk1dFlYQW9LR2wwWlcwcElEMCtJSHRjYmlBZ0lDQWdJQ0FnWTI5dWMzUWdRMjl0Y0c5dVpXNTBJRDBnYVhSbGJTNURiMjF3YjI1bGJuUWdZWE1nUTI5dGNHOXVaVzUwVkhsd1pUeFRZMlZ1WlVOVFUwZHlhV1JKZEdWdFVtVnVaR1Z5VUhKdmNITThVMk5sYm1WUFltcGxZM1ErUGp0Y2JseHVJQ0FnSUNBZ0lDQnBaaUFvYVhOTVlYcDVLU0I3WEc0Z0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUNoY2JpQWdJQ0FnSUNBZ0lDQWdJRHhNWVhwNVRHOWhaR1Z5SUd0bGVUMTdhWFJsYlM1emRHRjBaUzVyWlhraGZTQmpiR0Z6YzA1aGJXVTllM04wZVd4bGZUNWNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ1BFTnZiWEJ2Ym1WdWRDQnJaWGs5ZTJsMFpXMHVjM1JoZEdVdWEyVjVmU0J0YjJSbGJEMTdhWFJsYlgwZ2NHRnlaVzUwVTNSaGRHVTllMjF2WkdWc0xuTjBZWFJsZlNBdlBseHVJQ0FnSUNBZ0lDQWdJQ0FnUEM5TVlYcDVURzloWkdWeVBseHVJQ0FnSUNBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUNBZ2NtVjBkWEp1SUR4RGIyMXdiMjVsYm5RZ2EyVjVQWHRwZEdWdExuTjBZWFJsTG10bGVYMGdiVzlrWld3OWUybDBaVzE5SUhCaGNtVnVkRk4wWVhSbFBYdHRiMlJsYkM1emRHRjBaWDBnTHo0N1hHNGdJQ0FnSUNCOUtYMWNiaUFnSUNBOEwyUnBkajVjYmlBZ0tUdGNibjFjYmx4dVpYaHdiM0owSUdsdWRHVnlabUZqWlNCVFkyVnVaVU5UVTBkeWFXUkpkR1Z0VUd4aFkyVnRaVzUwSUh0Y2JpQWdMeW9xWEc0Z0lDQXFJRlJ5ZFdVZ2QyaGxiaUIwYUdVZ2FYUmxiU0J6YUc5MWJHUWdjbVZ1WkdWeVpXUWdZblYwSUc1dmRDQjJhWE5wWW14bExseHVJQ0FnS2lCVmMyVm1kV3dnWm05eUlHTnZibVJwZEdsdmJtRnNJR1JwYzNCc1lYa2diMllnYkdGNWIzVjBJR2wwWlcxelhHNGdJQ0FxTDF4dUlDQnBjMGhwWkdSbGJqODZJR0p2YjJ4bFlXNDdYRzRnSUM4cUtseHVJQ0FnS2lCVmMyVm1kV3dnWm05eUlHMWhhMmx1WnlCamIyNTBaVzUwSUhOd1lXNGdZV055YjNOeklHMTFiSFJwY0d4bElISnZkM01nYjNJZ1kyOXNkVzF1YzF4dUlDQWdLaTljYmlBZ1ozSnBaRU52YkhWdGJqODZJRU5UVTFCeWIzQmxjblJwWlhOYkoyZHlhV1JEYjJ4MWJXNG5YVHRjYmlBZ1ozSnBaRkp2ZHo4NklFTlRVMUJ5YjNCbGNuUnBaWE5iSjJkeWFXUlNiM2NuWFR0Y2JuMWNibHh1Wlhod2IzSjBJR2x1ZEdWeVptRmpaU0JUWTJWdVpVTlRVMGR5YVdSSmRHVnRVM1JoZEdVZ1pYaDBaVzVrY3lCVFkyVnVaVU5UVTBkeWFXUkpkR1Z0VUd4aFkyVnRaVzUwTENCVFkyVnVaVTlpYW1WamRGTjBZWFJsSUh0Y2JpQWdZbTlrZVRvZ1UyTmxibVZQWW1wbFkzUWdmQ0IxYm1SbFptbHVaV1E3WEc1OVhHNWNibWx1ZEdWeVptRmpaU0JUWTJWdVpVTlRVMGR5YVdSSmRHVnRVbVZ1WkdWeVVISnZjSE04VkQ0Z1pYaDBaVzVrY3lCVFkyVnVaVU52YlhCdmJtVnVkRkJ5YjNCelBGUStJSHRjYmlBZ2NHRnlaVzUwVTNSaGRHVS9PaUJUWTJWdVpVTlRVMGR5YVdSSmRHVnRVR3hoWTJWdFpXNTBPMXh1ZlZ4dVhHNWxlSEJ2Y25RZ1kyeGhjM01nVTJObGJtVkRVMU5IY21sa1NYUmxiU0JsZUhSbGJtUnpJRk5qWlc1bFQySnFaV04wUW1GelpUeFRZMlZ1WlVOVFUwZHlhV1JKZEdWdFUzUmhkR1UrSUh0Y2JpQWdjSFZpYkdsaklITjBZWFJwWXlCRGIyMXdiMjVsYm5RZ1BTQlRZMlZ1WlVOVFUwZHlhV1JKZEdWdFVtVnVaR1Z5WlhJN1hHNTlYRzVjYm1aMWJtTjBhVzl1SUZOalpXNWxRMU5UUjNKcFpFbDBaVzFTWlc1a1pYSmxjaWg3SUcxdlpHVnNMQ0J3WVhKbGJuUlRkR0YwWlNCOU9pQlRZMlZ1WlVOVFUwZHlhV1JKZEdWdFVtVnVaR1Z5VUhKdmNITThVMk5sYm1WRFUxTkhjbWxrU1hSbGJUNHBJSHRjYmlBZ2FXWWdLQ0Z3WVhKbGJuUlRkR0YwWlNrZ2UxeHVJQ0FnSUhSb2NtOTNJRzVsZHlCRmNuSnZjaWduVTJObGJtVkRVMU5IY21sa1NYUmxiU0J0ZFhOMElHSmxJR0VnWTJocGJHUWdiMllnVTJObGJtVkRVMU5IY21sa1RHRjViM1YwSnlrN1hHNGdJSDFjYmx4dUlDQmpiMjV6ZENCN0lHSnZaSGtzSUdselNHbGtaR1Z1SUgwZ1BTQnRiMlJsYkM1MWMyVlRkR0YwWlNncE8xeHVJQ0JqYjI1emRDQnpkSGxzWlNBOUlIVnpaVWwwWlcxVGRIbHNaU2h0YjJSbGJDNXpkR0YwWlNrN1hHNWNiaUFnYVdZZ0tDRmliMlI1SUh4OElHbHpTR2xrWkdWdUtTQjdYRzRnSUNBZ2NtVjBkWEp1SUc1MWJHdzdYRzRnSUgxY2JseHVJQ0J5WlhSMWNtNGdLRnh1SUNBZ0lEeGthWFlnWTJ4aGMzTk9ZVzFsUFh0emRIbHNaWDArWEc0Z0lDQWdJQ0E4WW05a2VTNURiMjF3YjI1bGJuUWdiVzlrWld3OWUySnZaSGw5SUM4K1hHNGdJQ0FnUEM5a2FYWStYRzRnSUNrN1hHNTlYRzVjYm1aMWJtTjBhVzl1SUhWelpVeGhlVzkxZEZOMGVXeGxLSE4wWVhSbE9pQlRZMlZ1WlVOVFUwZHlhV1JNWVhsdmRYUlRkR0YwWlNrZ2UxeHVJQ0J5WlhSMWNtNGdkWE5sVFdWdGJ5Z29LU0E5UGlCN1hHNGdJQ0FnWTI5dWMzUWdlMzBnUFNCemRHRjBaVHRjYmlBZ0lDQXZMeUJ2Ym14NUlHNWxaV1FnWW5KbFlXdHdiMmx1ZEhNZ2MyOGdZV05qWlhOemFXNW5JSFJvWlcxbElHWnliMjBnWTI5dVptbG5JR2x1YzNSbFlXUWdiMllnWTI5dWRHVjRkQ0JwY3lCdmExeHVJQ0FnSUdOdmJuTjBJSE4wZVd4bE9pQkRVMU5QWW1wbFkzUWdQU0I3ZlR0Y2JpQWdJQ0JqYjI1emRDQjBhR1Z0WlNBOUlHTnZibVpwWnk1MGFHVnRaVEk3WEc1Y2JpQWdJQ0J6ZEhsc1pTNWthWE53YkdGNUlEMGdKMmR5YVdRbk8xeHVJQ0FnSUhOMGVXeGxMbWR5YVdSVVpXMXdiR0YwWlVOdmJIVnRibk1nUFNCemRHRjBaUzUwWlcxd2JHRjBaVU52YkhWdGJuTTdYRzRnSUNBZ2MzUjViR1V1WjNKcFpGUmxiWEJzWVhSbFVtOTNjeUE5SUhOMFlYUmxMblJsYlhCc1lYUmxVbTkzY3lCOGZDQW5kVzV6WlhRbk8xeHVJQ0FnSUhOMGVXeGxMbWR5YVdSQmRYUnZVbTkzY3lBOUlITjBZWFJsTG1GMWRHOVNiM2R6SUh4OElDZDFibk5sZENjN1hHNGdJQ0FnYzNSNWJHVXVjbTkzUjJGd0lEMGdkR2hsYldVdWMzQmhZMmx1WnloemRHRjBaUzV5YjNkSFlYQWdQejhnTVNrN1hHNGdJQ0FnYzNSNWJHVXVZMjlzZFcxdVIyRndJRDBnZEdobGJXVXVjM0JoWTJsdVp5aHpkR0YwWlM1amIyeDFiVzVIWVhBZ1B6OGdNU2s3WEc0Z0lDQWdjM1I1YkdVdWFuVnpkR2xtZVVsMFpXMXpJRDBnYzNSaGRHVXVhblZ6ZEdsbWVVbDBaVzF6SUh4OElDZDFibk5sZENjN1hHNGdJQ0FnYzNSNWJHVXVZV3hwWjI1SmRHVnRjeUE5SUhOMFlYUmxMbUZzYVdkdVNYUmxiWE1nZkh3Z0ozVnVjMlYwSnp0Y2JpQWdJQ0J6ZEhsc1pTNXFkWE4wYVdaNVEyOXVkR1Z1ZENBOUlITjBZWFJsTG1wMWMzUnBabmxEYjI1MFpXNTBJSHg4SUNkMWJuTmxkQ2M3WEc0Z0lDQWdjM1I1YkdVdVpteGxlRWR5YjNjZ1BTQXhPMXh1WEc0Z0lDQWdhV1lnS0hOMFlYUmxMbTFrS1NCN1hHNGdJQ0FnSUNCemRIbHNaVnQwYUdWdFpTNWljbVZoYTNCdmFXNTBjeTVrYjNkdUtDZHRaQ2NwWFNBOUlIdGNiaUFnSUNBZ0lDQWdaM0pwWkZSbGJYQnNZWFJsVW05M2N6b2djM1JoZEdVdWJXUS9MblJsYlhCc1lYUmxVbTkzY3l4Y2JpQWdJQ0FnSUNBZ1ozSnBaRlJsYlhCc1lYUmxRMjlzZFcxdWN6b2djM1JoZEdVdWJXUS9MblJsYlhCc1lYUmxRMjlzZFcxdWN5eGNiaUFnSUNBZ0lDQWdjbTkzUjJGd09pQnpkR0YwWlM1dFpDNXliM2RIWVhBZ1B5QjBhR1Z0WlM1emNHRmphVzVuS0hOMFlYUmxMbTFrUHk1eWIzZEhZWEFnUHo4Z01Ta2dPaUIxYm1SbFptbHVaV1FzWEc0Z0lDQWdJQ0FnSUdOdmJIVnRia2RoY0RvZ2MzUmhkR1V1YldRdVkyOXNkVzF1UjJGd0lEOGdkR2hsYldVdWMzQmhZMmx1WnloemRHRjBaUzV0WkQ4dWNtOTNSMkZ3SUQ4L0lERXBJRG9nZFc1a1pXWnBibVZrTEZ4dUlDQWdJQ0FnSUNCcWRYTjBhV1o1U1hSbGJYTTZJSE4wWVhSbExtMWtQeTVxZFhOMGFXWjVTWFJsYlhNc1hHNGdJQ0FnSUNBZ0lHRnNhV2R1U1hSbGJYTTZJSE4wWVhSbExtMWtQeTVoYkdsbmJrbDBaVzF6TEZ4dUlDQWdJQ0FnSUNCcWRYTjBhV1o1UTI5dWRHVnVkRG9nYzNSaGRHVXViV1EvTG1wMWMzUnBabmxEYjI1MFpXNTBMRnh1SUNBZ0lDQWdmVHRjYmlBZ0lDQjlYRzVjYmlBZ0lDQnlaWFIxY200Z1kzTnpLSE4wZVd4bEtUdGNiaUFnZlN3Z1czTjBZWFJsWFNrN1hHNTlYRzVjYm1aMWJtTjBhVzl1SUhWelpVbDBaVzFUZEhsc1pTaHpkR0YwWlRvZ1UyTmxibVZEVTFOSGNtbGtTWFJsYlZOMFlYUmxLU0I3WEc0Z0lISmxkSFZ5YmlCMWMyVk5aVzF2S0NncElEMCtJSHRjYmlBZ0lDQmpiMjV6ZENCemRIbHNaVG9nUTFOVFQySnFaV04wSUQwZ2UzMDdYRzVjYmlBZ0lDQnpkSGxzWlM1bmNtbGtRMjlzZFcxdUlEMGdjM1JoZEdVdVozSnBaRU52YkhWdGJpQjhmQ0FuZFc1elpYUW5PMXh1SUNBZ0lITjBlV3hsTG1keWFXUlNiM2NnUFNCemRHRjBaUzVuY21sa1VtOTNJSHg4SUNkMWJuTmxkQ2M3WEc0Z0lDQWdMeThnVG1WbFpHVmtJR1p2Y2lCV2FYcFFZVzVsYkZ4dUlDQWdJSE4wZVd4bExuQnZjMmwwYVc5dUlEMGdKM0psYkdGMGFYWmxKenRjYmx4dUlDQWdJSEpsZEhWeWJpQmpjM01vYzNSNWJHVXBPMXh1SUNCOUxDQmJjM1JoZEdWZEtUdGNibjFjYmlKZExDSnVZVzFsY3lJNlcxMHNJbTFoY0hCcGJtZHpJam9pT3pzN096czdPenM3T3pzN096czdPenM3T3pzN08wRkJLME5QTEUxQlFVMHNNa0pCUVRKQ0xHVkJRV2RGTEVOQlFVRTdRVUZCUVN4RlFVY3ZSaXhaUVVGWkxFdEJRWGxETEVWQlFVRTdRVUZzUkRsRUxFbEJRVUVzU1VGQlFTeEZRVUZCTEVWQlFVRXNSVUZCUVN4RFFVRkJPMEZCYlVSSkxFbEJRVTBzUzBGQlFTeERRVUZCTEdOQlFVRXNRMEZCUVR0QlFVRkJMRTFCUTBvc1RVRkJVU3hGUVVGQkxFTkJRVUU3UVVGQlFTeE5RVU5TTEZOQlFWY3NSVUZCUVN4RFFVRkJPMEZCUVVFc1RVRkRXQ3hsUVVGcFFpeEZRVUZCTEhORFFVRkJPMEZCUVVFc1RVRkRha0lzVVVGQlFTeEZRVUZCTEVOQlFWVXNSVUZCVFN4SFFVRkJMRXRCUVVFc1EwRkJRU3hSUVVGQkxFdEJRVTRzU1VGQmEwSXNSMEZCUVN4RlFVRkJMRWRCUVVFc1EwRkJRU3hMUVVGQkxFTkJRVUU3UVVGQlFTeE5RVU0xUWl4UlFVRlZMRVZCUVVFc1EwRkJRU3hGUVVGQkxFZEJRVUVzUzBGQlFTeERRVUZOTEZGQlFVNHNTMEZCUVN4SlFVRkJMRWRCUVVFc1JVRkJRU3hIUVVGclFpeEZRVUZETzBGQlFVRXNTMEZCUVN4RlFVTXhRaXhMUVVOS0xFTkJRVUVzUTBGQlFTeERRVUZCTzBGQlFVRXNSMEZEU0R0QlFVRkJMRVZCUlU4c1YwRkJkVUlzUjBGQlFUdEJRVU0xUWl4SlFVRlBMRTlCUVVFc1MwRkJRU3hEUVVGQk8wRkJRVUVzUjBGRFZEdEJRVU5HTEVOQlFVRTdRVUZxUW1Fc2EwSkJRVUVzUTBGRFJ5eFRRVUZaTEVkQlFVRXNNRUpCUVVFc1EwRkJRVHRCUVd0Q05VSXNVMEZCVXl3d1FrRkJRU3hEUVVFeVFpeEZRVUZGTEV0QlFVRXNSVUZCTUVRc1JVRkJRVHRCUVVNNVJpeEZRVUZCTEUxQlFVMHNSVUZCUlN4UlFVRlZMRVZCUVVFc1VVRkJRU3hGUVVGVkxFMUJRVThzUlVGQlFTeEhRVUZKTEUxQlFVMHNVVUZCVXl4RlFVRkJMRU5CUVVFN1FVRkRkRVFzUlVGQlRTeE5RVUZCTEV0QlFVRXNSMEZCVVN4alFVRmxMRU5CUVVFc1MwRkJRU3hEUVVGTkxFdEJRVXNzUTBGQlFTeERRVUZCTzBGQlJYaERMRVZCUVVFc1NVRkJTU3hSUVVGVkxFVkJRVUU3UVVGRFdpeEpRVUZQTEU5QlFVRXNTVUZCUVN4RFFVRkJPMEZCUVVFc1IwRkRWRHRCUVVWQkxFVkJRVUVzZFVKQlEwY3NTMEZCUVN4RFFVRkJMR0ZCUVVFc1EwRkJRU3hMUVVGQkxFVkJRVUU3UVVGQlFTeEpRVUZKTEZOQlFWY3NSVUZCUVN4TFFVRkJPMEZCUVVFc1IwRkRZaXhGUVVGQkxGRkJRVUVzUTBGQlV5eEhRVUZKTEVOQlFVRXNRMEZCUXl4SlFVRlRMRXRCUVVFN1FVRkRkRUlzU1VGQlFTeE5RVUZOTEZsQlFWa3NTVUZCU3l4RFFVRkJMRk5CUVVFc1EwRkJRVHRCUVVWMlFpeEpRVUZCTEVsQlFVa3NUVUZCVVN4RlFVRkJPMEZCUTFZc1RVRkJRU3gxUWtGRFJ5eExRVUZCTEVOQlFVRXNZVUZCUVN4RFFVRkJMRlZCUVVFc1JVRkJRVHRCUVVGQkxGRkJRVmNzUjBGQlFTeEZRVUZMTEV0QlFVc3NTMEZCVFN4RFFVRkJMRWRCUVVFN1FVRkJRU3hSUVVGTkxGTkJRVmNzUlVGQlFTeExRVUZCTzBGQlFVRXNUMEZCUVN4clFrRkRNVU1zUzBGQlFTeERRVUZCTEdGQlFVRXNRMEZCUVN4VFFVRkJMRVZCUVVFN1FVRkJRU3hSUVVGVkxFZEJRVUVzUlVGQlN5eExRVUZMTEV0QlFVMHNRMEZCUVN4SFFVRkJPMEZCUVVFc1VVRkJTeXhMUVVGUExFVkJRVUVzU1VGQlFUdEJRVUZCTEZGQlFVMHNZVUZCWVN4TFFVRk5MRU5CUVVFc1MwRkJRVHRCUVVGQkxFOUJRVThzUTBGRGVrVXNRMEZCUVN4RFFVRkJPMEZCUVVFc1MwRkZTanRCUVVOQkxFbEJRVUVzZFVKQlFWRXNTMEZCUVN4RFFVRkJMR0ZCUVVFc1EwRkJRU3hUUVVGQkxFVkJRVUU3UVVGQlFTeE5RVUZWTEVkQlFVRXNSVUZCU3l4TFFVRkxMRXRCUVUwc1EwRkJRU3hIUVVGQk8wRkJRVUVzVFVGQlN5eExRVUZQTEVWQlFVRXNTVUZCUVR0QlFVRkJMRTFCUVUwc1lVRkJZU3hMUVVGTkxFTkJRVUVzUzBGQlFUdEJRVUZCTEV0QlFVOHNRMEZCUVN4RFFVRkJPMEZCUVVFc1IwRkRMMFVzUTBGRFNDeERRVUZCTEVOQlFVRTdRVUZGU2l4RFFVRkJPMEZCZFVKUExFMUJRVTBzZVVKQlFYbENMR1ZCUVhWRExFTkJRVUU3UVVGRk4wVXNRMEZCUVR0QlFVWmhMR2RDUVVGQkxFTkJRMGNzVTBGQldTeEhRVUZCTEhkQ1FVRkJMRU5CUVVFN1FVRkhOVUlzVTBGQlV5eDNRa0ZCZVVJc1EwRkJRU3hGUVVGRkxFdEJRVThzUlVGQlFTeFhRVUZCTEVWQlFUaEVMRVZCUVVFN1FVRkRka2NzUlVGQlFTeEpRVUZKTEVOQlFVTXNWMEZCWVN4RlFVRkJPMEZCUTJoQ0xFbEJRVTBzVFVGQlFTeEpRVUZKTEUxQlFVMHNkMFJCUVhkRUxFTkJRVUVzUTBGQlFUdEJRVUZCTEVkQlF6RkZPMEZCUlVFc1JVRkJRU3hOUVVGTkxFVkJRVVVzU1VGQlFTeEZRVUZOTEZGQlFWTXNSVUZCUVN4SFFVRkpMRTFCUVUwc1VVRkJVeXhGUVVGQkxFTkJRVUU3UVVGRE1VTXNSVUZCVFN4TlFVRkJMRXRCUVVFc1IwRkJVU3haUVVGaExFTkJRVUVzUzBGQlFTeERRVUZOTEV0QlFVc3NRMEZCUVN4RFFVRkJPMEZCUlhSRExFVkJRVWtzU1VGQlFTeERRVUZETEZGQlFWRXNVVUZCVlN4RlFVRkJPMEZCUTNKQ0xFbEJRVThzVDBGQlFTeEpRVUZCTEVOQlFVRTdRVUZCUVN4SFFVTlVPMEZCUlVFc1JVRkJRU3gxUWtGRFJ5eExRVUZCTEVOQlFVRXNZVUZCUVN4RFFVRkJMRXRCUVVFc1JVRkJRVHRCUVVGQkxFbEJRVWtzVTBGQlZ5eEZRVUZCTEV0QlFVRTdRVUZCUVN4SFFVTmtMR3RDUVVGQkxFdEJRVUVzUTBGQlFTeGhRVUZCTEVOQlFVTXNTMEZCU3l4VFFVRk1MRVZCUVVFN1FVRkJRU3hKUVVGbExFdEJRVThzUlVGQlFTeEpRVUZCTzBGQlFVRXNSMEZCVFN4RFFVTXZRaXhEUVVGQkxFTkJRVUU3UVVGRlNpeERRVUZCTzBGQlJVRXNVMEZCVXl4bFFVRmxMRXRCUVdkRExFVkJRVUU3UVVGRGRFUXNSVUZCUVN4UFFVRlBMRkZCUVZFc1RVRkJUVHRCUVhwSmRrSXNTVUZCUVN4SlFVRkJMRVZCUVVFc1JVRkJRU3hGUVVGQkxFVkJRVUVzUlVGQlFTeEZRVUZCTEVWQlFVRXNSVUZCUVN4RlFVRkJMRVZCUVVFc1JVRkJRU3hGUVVGQkxFVkJRVUVzUlVGQlFTeEZRVUZCTEVWQlFVRXNSVUZCUVN4RlFVRkJMRVZCUVVFc1JVRkJRU3hGUVVGQkxFTkJRVUU3UVVFMFNVa3NTVUZCUVN4TlFVRk5MRkZCUVcxQ0xFVkJRVU1zUTBGQlFUdEJRVU14UWl4SlFVRkJMRTFCUVUwc1VVRkJVU3hOUVVGUExFTkJRVUVzVFVGQlFTeERRVUZCTzBGQlJYSkNMRWxCUVVFc1MwRkJRU3hEUVVGTkxFOUJRVlVzUjBGQlFTeE5RVUZCTEVOQlFVRTdRVUZEYUVJc1NVRkJRU3hMUVVGQkxFTkJRVTBzYzBKQlFYTkNMRXRCUVUwc1EwRkJRU3hsUVVGQkxFTkJRVUU3UVVGRGJFTXNTVUZCVFN4TFFVRkJMRU5CUVVFc1owSkJRVUVzUjBGQmJVSXNUVUZCVFN4WlFVRm5RaXhKUVVGQkxFOUJRVUVzUTBGQlFUdEJRVU12UXl4SlFVRk5MRXRCUVVFc1EwRkJRU3haUVVGQkxFZEJRV1VzVFVGQlRTeFJRVUZaTEVsQlFVRXNUMEZCUVN4RFFVRkJPMEZCUTNaRExFbEJRVUVzUzBGQlFTeERRVUZOTEZOQlFWTXNTMEZCVFN4RFFVRkJMRTlCUVVFc1EwRkJRU3hEUVVGUkxFVkJRVTBzUjBGQlFTeExRVUZCTEVOQlFVRXNUVUZCUVN4TFFVRk9MRmxCUVdkQ0xFTkJRVU1zUTBGQlFTeERRVUZCTzBGQlF6bERMRWxCUVVFc1MwRkJRU3hEUVVGTkxGbEJRVmtzUzBGQlRTeERRVUZCTEU5QlFVRXNRMEZCUVN4RFFVRlJMRVZCUVUwc1IwRkJRU3hMUVVGQkxFTkJRVUVzVTBGQlFTeExRVUZPTEZsQlFXMUNMRU5CUVVNc1EwRkJRU3hEUVVGQk8wRkJRM0JFTEVsQlFVMHNTMEZCUVN4RFFVRkJMRmxCUVVFc1IwRkJaU3hOUVVGTkxGbEJRV2RDTEVsQlFVRXNUMEZCUVN4RFFVRkJPMEZCUXpORExFbEJRVTBzUzBGQlFTeERRVUZCTEZWQlFVRXNSMEZCWVN4TlFVRk5MRlZCUVdNc1NVRkJRU3hQUVVGQkxFTkJRVUU3UVVGRGRrTXNTVUZCVFN4TFFVRkJMRU5CUVVFc1kwRkJRU3hIUVVGcFFpeE5RVUZOTEdOQlFXdENMRWxCUVVFc1QwRkJRU3hEUVVGQk8wRkJReTlETEVsQlFVRXNTMEZCUVN4RFFVRk5MRkZCUVZjc1IwRkJRU3hEUVVGQkxFTkJRVUU3UVVGRmFrSXNTVUZCUVN4SlFVRkpMRTFCUVUwc1JVRkJTU3hGUVVGQk8wRkJRMW9zVFVGQlFTeExRVUZCTEVOQlFVMHNTMEZCVFN4RFFVRkJMRmRCUVVFc1EwRkJXU3hKUVVGTExFTkJRVUVzU1VGQlNTeERRVUZMTEVOQlFVRXNSMEZCUVR0QlFVRkJMRkZCUTNCRExHZENRVUZCTEVWQlFVRXNRMEZCYTBJc1JVRkJUU3hIUVVGQkxFdEJRVUVzUTBGQlFTeEZRVUZCTEV0QlFVNHNTVUZCVlN4SFFVRkJMRXRCUVVFc1EwRkJRU3hIUVVGQkxFVkJRVUVzUTBGQlFTeFpRVUZCTzBGQlFVRXNVVUZETlVJc2JVSkJRVUVzUlVGQlFTeERRVUZ4UWl4RlFVRk5MRWRCUVVFc1MwRkJRU3hEUVVGQkxFVkJRVUVzUzBGQlRpeEpRVUZWTEVkQlFVRXNTMEZCUVN4RFFVRkJMRWRCUVVFc1JVRkJRU3hEUVVGQkxHVkJRVUU3UVVGQlFTeFJRVU12UWl4TlFVRlJMRVZCUVVFc1MwRkJRU3hEUVVGTkxFVkJRVWNzUTBGQlFTeE5RVUZCTEVkQlFWTXNTMEZCVFN4RFFVRkJMRTlCUVVFc1EwRkJRU3hEUVVGUkxFVkJRVTBzUjBGQlFTeERRVUZCTEVWQlFVRXNSMEZCUVN4TFFVRkJMRU5CUVVFc1JVRkJRU3hMUVVGT0xFbEJRVlVzUjBGQlFTeExRVUZCTEVOQlFVRXNSMEZCUVN4RlFVRkJMRU5CUVVFc1RVRkJRU3hMUVVGV0xFbEJRVzlDTEVkQlFVRXNSVUZCUVN4SFFVRkJMRU5CUVVNc1EwRkJTU3hIUVVGQkxFdEJRVUVzUTBGQlFUdEJRVUZCTEZGQlEycEZMRk5CUVZjc1JVRkJRU3hMUVVGQkxFTkJRVTBzUlVGQlJ5eERRVUZCTEZOQlFVRXNSMEZCV1N4TFFVRk5MRU5CUVVFc1QwRkJRU3hEUVVGQkxFTkJRVkVzUlVGQlRTeEhRVUZCTEVOQlFVRXNSVUZCUVN4SFFVRkJMRXRCUVVFc1EwRkJRU3hGUVVGQkxFdEJRVTRzU1VGQlZTeEhRVUZCTEV0QlFVRXNRMEZCUVN4SFFVRkJMRVZCUVVFc1EwRkJRU3hOUVVGQkxFdEJRVllzU1VGQmIwSXNSMEZCUVN4RlFVRkJMRWRCUVVFc1EwRkJReXhEUVVGSkxFZEJRVUVzUzBGQlFTeERRVUZCTzBGQlFVRXNVVUZEZGtVc1dVRkJRU3hGUVVGQkxFTkJRV01zUlVGQlRTeEhRVUZCTEV0QlFVRXNRMEZCUVN4RlFVRkJMRXRCUVU0c1NVRkJWU3hIUVVGQkxFdEJRVUVzUTBGQlFTeEhRVUZCTEVWQlFVRXNRMEZCUVN4WlFVRkJPMEZCUVVFc1VVRkRlRUlzVlVGQlFTeEZRVUZCTEVOQlFWa3NSVUZCVFN4SFFVRkJMRXRCUVVFc1EwRkJRU3hGUVVGQkxFdEJRVTRzU1VGQlZTeEhRVUZCTEV0QlFVRXNRMEZCUVN4SFFVRkJMRVZCUVVFc1EwRkJRU3hWUVVGQk8wRkJRVUVzVVVGRGRFSXNZMEZCUVN4RlFVRkJMRU5CUVdkQ0xFVkJRVTBzUjBGQlFTeExRVUZCTEVOQlFVRXNSVUZCUVN4TFFVRk9MRWxCUVZVc1IwRkJRU3hMUVVGQkxFTkJRVUVzUjBGQlFTeEZRVUZCTEVOQlFVRXNZMEZCUVR0QlFVRkJMRTlCUXpWQ0xFTkJRVUU3UVVGQlFTeExRVU5HTzBGQlJVRXNTVUZCUVN4UFFVRlBMRWxCUVVrc1MwRkJTeXhEUVVGQkxFTkJRVUU3UVVGQlFTeEhRVU5zUWl4RlFVRkhMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVUVzUTBGQlFUdEJRVU5hTEVOQlFVRTdRVUZGUVN4VFFVRlRMR0ZCUVdFc1MwRkJPRUlzUlVGQlFUdEJRVU5zUkN4RlFVRkJMRTlCUVU4c1VVRkJVU3hOUVVGTk8wRkJRMjVDTEVsQlFVRXNUVUZCVFN4UlFVRnRRaXhGUVVGRExFTkJRVUU3UVVGRk1VSXNTVUZCVFN4TFFVRkJMRU5CUVVFc1ZVRkJRU3hIUVVGaExFMUJRVTBzVlVGQll5eEpRVUZCTEU5QlFVRXNRMEZCUVR0QlFVTjJReXhKUVVGTkxFdEJRVUVzUTBGQlFTeFBRVUZCTEVkQlFWVXNUVUZCVFN4UFFVRlhMRWxCUVVFc1QwRkJRU3hEUVVGQk8wRkJSV3BETEVsQlFVRXNTMEZCUVN4RFFVRk5MRkZCUVZjc1IwRkJRU3hWUVVGQkxFTkJRVUU3UVVGRmFrSXNTVUZCUVN4UFFVRlBMRWxCUVVrc1MwRkJTeXhEUVVGQkxFTkJRVUU3UVVGQlFTeEhRVU5zUWl4RlFVRkhMRU5CUVVNc1MwRkJTeXhEUVVGRExFTkJRVUVzUTBGQlFUdEJRVU5hT3pz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