@grafana/scenes 6.7.0--canary.1091.14350229100.0 → 6.8.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 (331) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/dist/esm/components/layout/CSSGrid/SceneCSSGridItem.js +33 -0
  3. package/dist/esm/dist/esm/behaviors/CursorSync.js +76 -0
  4. package/dist/esm/dist/esm/behaviors/LiveNowTimer.js +44 -0
  5. package/dist/esm/dist/esm/behaviors/SceneQueryController.js +14 -0
  6. package/dist/esm/dist/esm/components/EmbeddedScene.js +59 -0
  7. package/dist/esm/dist/esm/components/NestedScene.js +95 -0
  8. package/dist/esm/dist/esm/components/SceneApp/SceneApp.js +27 -0
  9. package/dist/esm/dist/esm/components/SceneApp/SceneAppPage.js +176 -0
  10. package/dist/esm/dist/esm/components/SceneApp/SceneAppPageView.js +104 -0
  11. package/dist/esm/dist/esm/components/SceneApp/utils.js +42 -0
  12. package/dist/esm/dist/esm/components/SceneByFrameRepeater.js +41 -0
  13. package/dist/esm/dist/esm/components/SceneByVariableRepeater.js +55 -0
  14. package/dist/esm/dist/esm/components/SceneCanvasText.js +32 -0
  15. package/dist/esm/dist/esm/components/SceneControlsSpacer.js +17 -0
  16. package/dist/esm/dist/esm/components/SceneDebugger/DebugDetails.js +82 -0
  17. package/dist/esm/dist/esm/components/SceneDebugger/DebugTreeNode.js +72 -0
  18. package/dist/esm/dist/esm/components/SceneDebugger/SceneDebugger.js +77 -0
  19. package/dist/esm/dist/esm/components/SceneReactObject.js +34 -0
  20. package/dist/esm/dist/esm/components/SceneRefreshPicker.js +205 -0
  21. package/dist/esm/dist/esm/components/SceneTimePicker.js +139 -0
  22. package/dist/esm/dist/esm/components/SceneTimeRangeCompare.js +240 -0
  23. package/dist/esm/dist/esm/components/SceneToolbarButton.js +33 -0
  24. package/dist/esm/dist/esm/components/VizPanel/VizPanel.js +406 -0
  25. package/dist/esm/dist/esm/components/VizPanel/VizPanelExploreButton.js +44 -0
  26. package/dist/esm/dist/esm/components/VizPanel/VizPanelMenu.js +59 -0
  27. package/dist/esm/dist/esm/components/VizPanel/VizPanelRenderer.js +285 -0
  28. package/dist/esm/dist/esm/components/VizPanel/VizPanelSeriesLimit.js +45 -0
  29. package/dist/esm/dist/esm/components/VizPanel/colorSeriesConfigFactory.js +72 -0
  30. package/dist/esm/dist/esm/components/VizPanel/registerRuntimePanelPlugin.js +11 -0
  31. package/dist/esm/dist/esm/components/VizPanel/seriesVisibilityConfigFactory.js +164 -0
  32. package/dist/esm/dist/esm/components/layout/CSSGrid/SceneCSSGridLayout.js +124 -0
  33. package/dist/esm/dist/esm/components/layout/LazyLoader.js +103 -0
  34. package/dist/esm/dist/esm/components/layout/SceneFlexLayout.js +135 -0
  35. package/dist/esm/dist/esm/components/layout/grid/SceneGridItem.js +30 -0
  36. package/dist/esm/dist/esm/components/layout/grid/SceneGridLayout.js +283 -0
  37. package/dist/esm/dist/esm/components/layout/grid/SceneGridLayoutRenderer.js +178 -0
  38. package/dist/esm/dist/esm/components/layout/grid/SceneGridRow.js +190 -0
  39. package/dist/esm/dist/esm/components/layout/grid/constants.js +7 -0
  40. package/dist/esm/dist/esm/components/layout/grid/utils.js +36 -0
  41. package/dist/esm/dist/esm/components/layout/split/SplitLayout.js +17 -0
  42. package/dist/esm/dist/esm/components/layout/split/SplitLayoutRenderer.js +29 -0
  43. package/dist/esm/dist/esm/components/layout/split/Splitter.js +386 -0
  44. package/dist/esm/dist/esm/core/SceneComponentWrapper.js +57 -0
  45. package/dist/esm/dist/esm/core/SceneDataNode.js +43 -0
  46. package/dist/esm/dist/esm/core/SceneObjectBase.js +286 -0
  47. package/dist/esm/dist/esm/core/SceneObjectRef.js +32 -0
  48. package/dist/esm/dist/esm/core/SceneTimeRange.js +231 -0
  49. package/dist/esm/dist/esm/core/events.js +11 -0
  50. package/dist/esm/dist/esm/core/sceneGraph/getTimeRange.js +10 -0
  51. package/dist/esm/dist/esm/core/sceneGraph/index.js +25 -0
  52. package/dist/esm/dist/esm/core/sceneGraph/sceneGraph.js +178 -0
  53. package/dist/esm/dist/esm/core/sceneGraph/utils.js +64 -0
  54. package/dist/esm/dist/esm/core/types.js +15 -0
  55. package/dist/esm/dist/esm/querying/DataLayersMerger.js +46 -0
  56. package/dist/esm/dist/esm/querying/ExtraQueryProvider.js +6 -0
  57. package/dist/esm/dist/esm/querying/RuntimeDataSource.js +6 -0
  58. package/dist/esm/dist/esm/querying/SceneDataLayerSet.js +100 -0
  59. package/dist/esm/dist/esm/querying/SceneQueryRunner.js +468 -0
  60. package/dist/esm/dist/esm/querying/extraQueryProcessingOperator.js +46 -0
  61. package/dist/esm/dist/esm/querying/getEnrichedDataRequest.js +12 -0
  62. package/dist/esm/dist/esm/querying/layers/SceneDataLayerBase.js +112 -0
  63. package/dist/esm/dist/esm/querying/layers/SceneDataLayerControls.js +51 -0
  64. package/dist/esm/dist/esm/querying/layers/annotations/AnnotationsDataLayer.js +130 -0
  65. package/dist/esm/dist/esm/querying/layers/annotations/filterAnnotations.js +85 -0
  66. package/dist/esm/dist/esm/querying/layers/annotations/standardAnnotationQuery.js +121 -0
  67. package/dist/esm/dist/esm/querying/layers/annotations/standardAnnotationsSupport.js +211 -0
  68. package/dist/esm/dist/esm/querying/layers/annotations/utils.js +77 -0
  69. package/dist/esm/dist/esm/querying/registerQueryWithController.js +41 -0
  70. package/dist/esm/dist/esm/services/SceneObjectUrlSyncConfig.js +30 -0
  71. package/dist/esm/dist/esm/services/UniqueUrlKeyMapper.js +45 -0
  72. package/dist/esm/dist/esm/services/UrlSyncManager.js +167 -0
  73. package/dist/esm/dist/esm/services/useUrlSync.js +29 -0
  74. package/dist/esm/dist/esm/services/utils.js +71 -0
  75. package/dist/esm/dist/esm/utils/ControlsLabel.js +107 -0
  76. package/dist/esm/dist/esm/utils/LoadingIndicator.js +19 -0
  77. package/dist/esm/dist/esm/utils/SafeSerializableSceneObject.js +39 -0
  78. package/dist/esm/dist/esm/utils/compatibility/setWindowGrafanaSceneContext.js +16 -0
  79. package/dist/esm/dist/esm/utils/date.js +15 -0
  80. package/dist/esm/dist/esm/utils/evaluateTimeRange.js +16 -0
  81. package/dist/esm/dist/esm/utils/explore.js +47 -0
  82. package/dist/esm/dist/esm/utils/getCompareSeriesRefId.js +4 -0
  83. package/dist/esm/dist/esm/utils/getDataSource.js +18 -0
  84. package/dist/esm/dist/esm/utils/getMessageFromError.js +24 -0
  85. package/dist/esm/dist/esm/utils/metricTree.js +53 -0
  86. package/dist/esm/dist/esm/utils/parseUrlParam.js +41 -0
  87. package/dist/esm/dist/esm/utils/utils.js +11 -0
  88. package/dist/esm/dist/esm/utils/wrapInSafeSerializableSceneObject.js +30 -0
  89. package/dist/esm/dist/esm/utils/writeSceneLog.js +12 -0
  90. package/dist/esm/dist/esm/variables/VariableDependencyConfig.js +150 -0
  91. package/dist/esm/dist/esm/variables/VariableValueRecorder.js +71 -0
  92. package/dist/esm/dist/esm/variables/adhoc/AdHocFilterBuilder.js +24 -0
  93. package/dist/esm/dist/esm/variables/adhoc/AdHocFilterRenderer.js +303 -0
  94. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFilterPill.js +162 -0
  95. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersAlwaysWipCombobox.js +20 -0
  96. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js +640 -0
  97. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersComboboxRenderer.js +65 -0
  98. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/DropdownItem.js +146 -0
  99. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/MultiValuePill.js +114 -0
  100. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/useFloatingInteractions.js +68 -0
  101. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/utils.js +146 -0
  102. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersVariable.js +289 -0
  103. package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersVariableUrlSyncHandler.js +76 -0
  104. package/dist/esm/dist/esm/variables/adhoc/getAdhocOptionSearcher.js +13 -0
  105. package/dist/esm/dist/esm/variables/adhoc/patchGetAdhocFilters.js +47 -0
  106. package/dist/esm/dist/esm/variables/components/VariableValueControl.js +23 -0
  107. package/dist/esm/dist/esm/variables/components/VariableValueInput.js +33 -0
  108. package/dist/esm/dist/esm/variables/components/VariableValueSelect.js +228 -0
  109. package/dist/esm/dist/esm/variables/components/VariableValueSelectors.js +72 -0
  110. package/dist/esm/dist/esm/variables/components/getOptionSearcher.js +15 -0
  111. package/dist/esm/dist/esm/variables/constants.js +9 -0
  112. package/dist/esm/dist/esm/variables/getEnrichedFiltersRequest.js +12 -0
  113. package/dist/esm/dist/esm/variables/groupby/GroupByVariable.js +259 -0
  114. package/dist/esm/dist/esm/variables/groupby/GroupByVariableUrlSyncHandler.js +63 -0
  115. package/dist/esm/dist/esm/variables/groupby/findActiveGroupByVariablesByUid.js +13 -0
  116. package/dist/esm/dist/esm/variables/interpolation/ScopedVarsVariable.js +40 -0
  117. package/dist/esm/dist/esm/variables/interpolation/defaults.js +21 -0
  118. package/dist/esm/dist/esm/variables/interpolation/fieldAccessorCache.js +13 -0
  119. package/dist/esm/dist/esm/variables/interpolation/formatRegistry.js +296 -0
  120. package/dist/esm/dist/esm/variables/interpolation/sceneInterpolator.js +87 -0
  121. package/dist/esm/dist/esm/variables/lookupVariable.js +20 -0
  122. package/dist/esm/dist/esm/variables/macros/AllVariablesMacro.js +57 -0
  123. package/dist/esm/dist/esm/variables/macros/contextMacros.js +43 -0
  124. package/dist/esm/dist/esm/variables/macros/dataMacros.js +134 -0
  125. package/dist/esm/dist/esm/variables/macros/index.js +26 -0
  126. package/dist/esm/dist/esm/variables/macros/templateProxies.js +51 -0
  127. package/dist/esm/dist/esm/variables/macros/timeMacros.js +86 -0
  128. package/dist/esm/dist/esm/variables/macros/types.js +11 -0
  129. package/dist/esm/dist/esm/variables/macros/urlMacros.js +56 -0
  130. package/dist/esm/dist/esm/variables/sets/SceneVariableSet.js +254 -0
  131. package/dist/esm/dist/esm/variables/types.js +11 -0
  132. package/dist/esm/dist/esm/variables/utils.js +172 -0
  133. package/dist/esm/dist/esm/variables/variants/ConstantVariable.js +38 -0
  134. package/dist/esm/dist/esm/variables/variants/CustomVariable.js +60 -0
  135. package/dist/esm/dist/esm/variables/variants/DataSourceVariable.js +88 -0
  136. package/dist/esm/dist/esm/variables/variants/IntervalVariable.js +117 -0
  137. package/dist/esm/dist/esm/variables/variants/MultiValueVariable.js +295 -0
  138. package/dist/esm/dist/esm/variables/variants/TestVariable.js +117 -0
  139. package/dist/esm/dist/esm/variables/variants/TextBoxVariable.js +61 -0
  140. package/dist/esm/dist/esm/variables/variants/query/QueryVariable.js +139 -0
  141. package/dist/esm/dist/esm/variables/variants/query/createQueryVariableRunner.js +129 -0
  142. package/dist/esm/dist/esm/variables/variants/query/guards.js +28 -0
  143. package/dist/esm/dist/esm/variables/variants/query/toMetricFindValues.js +96 -0
  144. package/dist/esm/dist/esm/variables/variants/query/utils.js +124 -0
  145. package/dist/esm/index.js +1 -1
  146. package/dist/esm/index.js.map +1 -1
  147. package/dist/esm/querying/DataProviderSharer.js +39 -0
  148. package/dist/esm/src/behaviors/ActWhenVariableChanged.js +27 -0
  149. package/dist/esm/src/behaviors/CursorSync.js +76 -0
  150. package/dist/esm/src/behaviors/LiveNowTimer.js +44 -0
  151. package/dist/esm/src/behaviors/SceneQueryController.js +60 -0
  152. package/dist/esm/src/behaviors/index.js +5 -0
  153. package/dist/esm/src/components/EmbeddedScene.js +59 -0
  154. package/dist/esm/src/components/NestedScene.js +95 -0
  155. package/dist/esm/src/components/SceneApp/SceneApp.js +37 -0
  156. package/dist/esm/src/components/SceneApp/SceneAppPage.js +176 -0
  157. package/dist/esm/src/components/SceneApp/SceneAppPageView.js +104 -0
  158. package/dist/esm/src/components/SceneApp/utils.js +42 -0
  159. package/dist/esm/src/components/SceneByFrameRepeater.js +41 -0
  160. package/dist/esm/src/components/SceneByVariableRepeater.js +55 -0
  161. package/dist/esm/src/components/SceneCanvasText.js +32 -0
  162. package/dist/esm/src/components/SceneControlsSpacer.js +17 -0
  163. package/dist/esm/src/components/SceneDebugger/DebugDetails.js +82 -0
  164. package/dist/esm/src/components/SceneDebugger/DebugTreeNode.js +72 -0
  165. package/dist/esm/src/components/SceneDebugger/SceneDebugger.js +77 -0
  166. package/dist/esm/src/components/SceneReactObject.js +34 -0
  167. package/dist/esm/src/components/SceneRefreshPicker.js +205 -0
  168. package/dist/esm/src/components/SceneTimePicker.js +139 -0
  169. package/dist/esm/src/components/SceneTimeRangeCompare.js +240 -0
  170. package/dist/esm/src/components/SceneToolbarButton.js +33 -0
  171. package/dist/esm/src/components/VizPanel/VizPanel.js +406 -0
  172. package/dist/esm/src/components/VizPanel/VizPanelExploreButton.js +44 -0
  173. package/dist/esm/src/components/VizPanel/VizPanelMenu.js +59 -0
  174. package/dist/esm/src/components/VizPanel/VizPanelRenderer.js +285 -0
  175. package/dist/esm/src/components/VizPanel/VizPanelSeriesLimit.js +45 -0
  176. package/dist/esm/src/components/VizPanel/colorSeriesConfigFactory.js +72 -0
  177. package/dist/esm/src/components/VizPanel/registerRuntimePanelPlugin.js +56 -0
  178. package/dist/esm/src/components/VizPanel/seriesVisibilityConfigFactory.js +164 -0
  179. package/dist/esm/src/components/layout/CSSGrid/SceneCSSGridLayout.js +124 -0
  180. package/dist/esm/src/components/layout/LazyLoader.js +103 -0
  181. package/dist/esm/src/components/layout/SceneFlexLayout.js +135 -0
  182. package/dist/esm/src/components/layout/grid/SceneGridItem.js +30 -0
  183. package/dist/esm/src/components/layout/grid/SceneGridLayout.js +283 -0
  184. package/dist/esm/src/components/layout/grid/SceneGridLayoutRenderer.js +178 -0
  185. package/dist/esm/src/components/layout/grid/SceneGridRow.js +190 -0
  186. package/dist/esm/src/components/layout/grid/constants.js +7 -0
  187. package/dist/esm/src/components/layout/grid/utils.js +36 -0
  188. package/dist/esm/src/components/layout/split/SplitLayout.js +17 -0
  189. package/dist/esm/src/components/layout/split/SplitLayoutRenderer.js +29 -0
  190. package/dist/esm/src/components/layout/split/Splitter.js +386 -0
  191. package/dist/esm/src/core/PanelBuilders/FieldConfigBuilder.js +100 -0
  192. package/dist/esm/src/core/PanelBuilders/FieldConfigBuilders.js +75 -0
  193. package/dist/esm/src/core/PanelBuilders/FieldConfigOverridesBuilder.js +75 -0
  194. package/dist/esm/src/core/PanelBuilders/PanelOptionsBuilder.js +22 -0
  195. package/dist/esm/src/core/PanelBuilders/PanelOptionsBuilders.js +85 -0
  196. package/dist/esm/src/core/PanelBuilders/StandardFieldConfigBuilders.js +52 -0
  197. package/dist/esm/src/core/PanelBuilders/VizConfigBuilder.js +78 -0
  198. package/dist/esm/src/core/PanelBuilders/VizConfigBuilders.js +114 -0
  199. package/dist/esm/src/core/PanelBuilders/VizPanelBuilder.js +162 -0
  200. package/dist/esm/src/core/PanelBuilders/index.js +116 -0
  201. package/dist/esm/src/core/SceneComponentWrapper.js +57 -0
  202. package/dist/esm/src/core/SceneDataNode.js +43 -0
  203. package/dist/esm/src/core/SceneObjectBase.js +286 -0
  204. package/dist/esm/src/core/SceneObjectRef.js +32 -0
  205. package/dist/esm/src/core/SceneTimeRange.js +231 -0
  206. package/dist/esm/src/core/SceneTimeRangeTransformerBase.js +35 -0
  207. package/dist/esm/src/core/SceneTimeZoneOverride.js +63 -0
  208. package/dist/esm/src/core/events.js +11 -0
  209. package/dist/esm/src/core/sceneGraph/getTimeRange.js +10 -0
  210. package/dist/esm/src/core/sceneGraph/index.js +25 -0
  211. package/dist/esm/src/core/sceneGraph/sceneGraph.js +178 -0
  212. package/dist/esm/src/core/sceneGraph/utils.js +64 -0
  213. package/dist/esm/src/core/types.js +15 -0
  214. package/dist/esm/src/index.js +108 -0
  215. package/dist/esm/src/querying/DataLayersMerger.js +46 -0
  216. package/dist/esm/src/querying/DataProviderProxy.js +37 -0
  217. package/dist/esm/src/querying/DataProviderSharer.js +108 -0
  218. package/dist/esm/src/querying/ExtraQueryProvider.js +6 -0
  219. package/dist/esm/src/querying/RuntimeDataSource.js +49 -0
  220. package/dist/esm/src/querying/SceneDataLayerSet.js +100 -0
  221. package/dist/esm/src/querying/SceneDataTransformer.js +178 -0
  222. package/dist/esm/src/querying/SceneQueryRunner.js +468 -0
  223. package/dist/esm/src/querying/extraQueryProcessingOperator.js +46 -0
  224. package/dist/esm/src/querying/getEnrichedDataRequest.js +12 -0
  225. package/dist/esm/src/querying/layers/SceneDataLayerBase.js +112 -0
  226. package/dist/esm/src/querying/layers/SceneDataLayerControls.js +51 -0
  227. package/dist/esm/src/querying/layers/annotations/AnnotationsDataLayer.js +130 -0
  228. package/dist/esm/src/querying/layers/annotations/filterAnnotations.js +85 -0
  229. package/dist/esm/src/querying/layers/annotations/standardAnnotationQuery.js +121 -0
  230. package/dist/esm/src/querying/layers/annotations/standardAnnotationsSupport.js +211 -0
  231. package/dist/esm/src/querying/layers/annotations/utils.js +77 -0
  232. package/dist/esm/src/querying/layers/index.js +2 -0
  233. package/dist/esm/src/querying/registerQueryWithController.js +41 -0
  234. package/dist/esm/src/services/SceneObjectUrlSyncConfig.js +30 -0
  235. package/dist/esm/src/services/UniqueUrlKeyMapper.js +45 -0
  236. package/dist/esm/src/services/UrlSyncContextProvider.js +17 -0
  237. package/dist/esm/src/services/UrlSyncManager.js +167 -0
  238. package/dist/esm/src/services/useUrlSync.js +29 -0
  239. package/dist/esm/src/services/utils.js +75 -0
  240. package/dist/esm/src/utils/ControlsLabel.js +107 -0
  241. package/dist/esm/src/utils/LoadingIndicator.js +19 -0
  242. package/dist/esm/src/utils/SafeSerializableSceneObject.js +39 -0
  243. package/dist/esm/src/utils/compatibility/setWindowGrafanaSceneContext.js +16 -0
  244. package/dist/esm/src/utils/date.js +15 -0
  245. package/dist/esm/src/utils/evaluateTimeRange.js +16 -0
  246. package/dist/esm/src/utils/explore.js +47 -0
  247. package/dist/esm/src/utils/getCompareSeriesRefId.js +4 -0
  248. package/dist/esm/src/utils/getDataSource.js +18 -0
  249. package/dist/esm/src/utils/getMessageFromError.js +24 -0
  250. package/dist/esm/src/utils/metricTree.js +53 -0
  251. package/dist/esm/src/utils/parseUrlParam.js +41 -0
  252. package/dist/esm/src/utils/utils.js +11 -0
  253. package/dist/esm/src/utils/wrapInSafeSerializableSceneObject.js +30 -0
  254. package/dist/esm/src/utils/writeSceneLog.js +12 -0
  255. package/dist/esm/src/variables/VariableDependencyConfig.js +150 -0
  256. package/dist/esm/src/variables/VariableValueRecorder.js +71 -0
  257. package/dist/esm/src/variables/adhoc/AdHocFilterBuilder.js +24 -0
  258. package/dist/esm/src/variables/adhoc/AdHocFilterRenderer.js +303 -0
  259. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFilterPill.js +162 -0
  260. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersAlwaysWipCombobox.js +20 -0
  261. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js +640 -0
  262. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersComboboxRenderer.js +65 -0
  263. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/DropdownItem.js +146 -0
  264. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/MultiValuePill.js +114 -0
  265. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/useFloatingInteractions.js +68 -0
  266. package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/utils.js +146 -0
  267. package/dist/esm/src/variables/adhoc/AdHocFiltersVariable.js +289 -0
  268. package/dist/esm/src/variables/adhoc/AdHocFiltersVariableUrlSyncHandler.js +76 -0
  269. package/dist/esm/src/variables/adhoc/getAdhocOptionSearcher.js +13 -0
  270. package/dist/esm/src/variables/adhoc/patchGetAdhocFilters.js +47 -0
  271. package/dist/esm/src/variables/components/VariableValueControl.js +23 -0
  272. package/dist/esm/src/variables/components/VariableValueInput.js +33 -0
  273. package/dist/esm/src/variables/components/VariableValueSelect.js +228 -0
  274. package/dist/esm/src/variables/components/VariableValueSelectors.js +72 -0
  275. package/dist/esm/src/variables/components/getOptionSearcher.js +15 -0
  276. package/dist/esm/src/variables/constants.js +9 -0
  277. package/dist/esm/src/variables/getEnrichedFiltersRequest.js +12 -0
  278. package/dist/esm/src/variables/groupby/GroupByVariable.js +259 -0
  279. package/dist/esm/src/variables/groupby/GroupByVariableUrlSyncHandler.js +63 -0
  280. package/dist/esm/src/variables/groupby/findActiveGroupByVariablesByUid.js +13 -0
  281. package/dist/esm/src/variables/interpolation/ScopedVarsVariable.js +40 -0
  282. package/dist/esm/src/variables/interpolation/defaults.js +21 -0
  283. package/dist/esm/src/variables/interpolation/fieldAccessorCache.js +13 -0
  284. package/dist/esm/src/variables/interpolation/formatRegistry.js +296 -0
  285. package/dist/esm/src/variables/interpolation/sceneInterpolator.js +87 -0
  286. package/dist/esm/src/variables/lookupVariable.js +20 -0
  287. package/dist/esm/src/variables/macros/AllVariablesMacro.js +57 -0
  288. package/dist/esm/src/variables/macros/contextMacros.js +43 -0
  289. package/dist/esm/src/variables/macros/dataMacros.js +134 -0
  290. package/dist/esm/src/variables/macros/index.js +35 -0
  291. package/dist/esm/src/variables/macros/templateProxies.js +51 -0
  292. package/dist/esm/src/variables/macros/timeMacros.js +86 -0
  293. package/dist/esm/src/variables/macros/types.js +11 -0
  294. package/dist/esm/src/variables/macros/urlMacros.js +56 -0
  295. package/dist/esm/src/variables/sets/SceneVariableSet.js +254 -0
  296. package/dist/esm/src/variables/types.js +11 -0
  297. package/dist/esm/src/variables/utils.js +172 -0
  298. package/dist/esm/src/variables/variants/ConstantVariable.js +38 -0
  299. package/dist/esm/src/variables/variants/CustomVariable.js +60 -0
  300. package/dist/esm/src/variables/variants/DataSourceVariable.js +88 -0
  301. package/dist/esm/src/variables/variants/IntervalVariable.js +117 -0
  302. package/dist/esm/src/variables/variants/JsonVariable.js +193 -0
  303. package/dist/esm/src/variables/variants/LocalValueVariable.js +56 -0
  304. package/dist/esm/src/variables/variants/MultiValueVariable.js +295 -0
  305. package/dist/esm/src/variables/variants/TestVariable.js +117 -0
  306. package/dist/esm/src/variables/variants/TextBoxVariable.js +61 -0
  307. package/dist/esm/src/variables/variants/guards.js +27 -0
  308. package/dist/esm/src/variables/variants/query/QueryVariable.js +139 -0
  309. package/dist/esm/src/variables/variants/query/createQueryVariableRunner.js +129 -0
  310. package/dist/esm/src/variables/variants/query/guards.js +28 -0
  311. package/dist/esm/src/variables/variants/query/toMetricFindValues.js +96 -0
  312. package/dist/esm/src/variables/variants/query/utils.js +124 -0
  313. package/dist/esm/variables/components/VariableValueSelect.js +13 -9
  314. package/dist/esm/variables/components/VariableValueSelect.js.map +1 -1
  315. package/dist/esm/variables/variants/ConstantVariable.js +22 -0
  316. package/dist/esm/variables/variants/ConstantVariable.js.map +1 -1
  317. package/dist/esm/variables/variants/CustomVariable.js +3 -2
  318. package/dist/esm/variables/variants/CustomVariable.js.map +1 -1
  319. package/dist/esm/variables/variants/DataSourceVariable.js +3 -2
  320. package/dist/esm/variables/variants/DataSourceVariable.js.map +1 -1
  321. package/dist/esm/variables/variants/JsonVariable.js +96 -0
  322. package/dist/esm/variables/variants/TestVariable.js +3 -2
  323. package/dist/esm/variables/variants/TestVariable.js.map +1 -1
  324. package/dist/esm/variables/variants/json/JsonVariable.js +95 -0
  325. package/dist/esm/variables/variants/json/JsonVariableOptionProviders.js +70 -0
  326. package/dist/esm/variables/variants/query/QueryVariable.js +3 -2
  327. package/dist/esm/variables/variants/query/QueryVariable.js.map +1 -1
  328. package/dist/index.d.ts +14 -6
  329. package/dist/index.js +35 -13
  330. package/dist/index.js.map +1 -1
  331. package/package.json +2 -2
@@ -0,0 +1,640 @@
1
+ import React, { forwardRef, useState, useRef, useId, useMemo, useCallback, useImperativeHandle, useEffect, useLayoutEffect } from 'react';
2
+ import { FloatingPortal, FloatingFocusManager } from '@floating-ui/react';
3
+ import { useStyles2, Spinner, Text } from '@grafana/ui';
4
+ import { cx, css } from '@emotion/css';
5
+ import { isMultiValueOperator } from '../AdHocFiltersVariable.js';
6
+ import { useVirtualizer } from '@tanstack/react-virtual';
7
+ import { LoadingOptionsPlaceholder, OptionsErrorPlaceholder, NoOptionsPlaceholder, DropdownItem, MultiValueApplyButton } from './DropdownItem.js';
8
+ import { fuzzySearchOptions, flattenOptionGroups, setupDropdownAccessibility, VIRTUAL_LIST_ITEM_HEIGHT_WITH_DESCRIPTION, VIRTUAL_LIST_ITEM_HEIGHT, VIRTUAL_LIST_OVERSCAN, generateFilterUpdatePayload, populateInputValueOnInputTypeSwitch, switchToNextInputType, switchInputType, generatePlaceholder, ERROR_STATE_DROPDOWN_WIDTH } from './utils.js';
9
+ import { handleOptionGroups } from '../../utils.js';
10
+ import { useFloatingInteractions, MAX_MENU_HEIGHT } from './useFloatingInteractions.js';
11
+ import { MultiValuePill } from './MultiValuePill.js';
12
+
13
+ var __defProp = Object.defineProperty;
14
+ var __defProps = Object.defineProperties;
15
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
16
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
17
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
18
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
19
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
20
+ var __spreadValues = (a, b) => {
21
+ for (var prop in b || (b = {}))
22
+ if (__hasOwnProp.call(b, prop))
23
+ __defNormalProp(a, prop, b[prop]);
24
+ if (__getOwnPropSymbols)
25
+ for (var prop of __getOwnPropSymbols(b)) {
26
+ if (__propIsEnum.call(b, prop))
27
+ __defNormalProp(a, prop, b[prop]);
28
+ }
29
+ return a;
30
+ };
31
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
32
+ const AdHocCombobox = forwardRef(function AdHocCombobox2({ filter, model, isAlwaysWip, handleChangeViewMode, focusOnWipInputRef, populateInputOnEdit }, parentRef) {
33
+ var _a, _b, _c, _d;
34
+ const [open, setOpen] = useState(false);
35
+ const [options, setOptions] = useState([]);
36
+ const [optionsLoading, setOptionsLoading] = useState(false);
37
+ const [optionsError, setOptionsError] = useState(false);
38
+ const [inputValue, setInputValue] = useState("");
39
+ const [activeIndex, setActiveIndex] = useState(null);
40
+ const [filterInputType, setInputType] = useState(!isAlwaysWip ? "value" : "key");
41
+ const [preventFiltering, setPreventFiltering] = useState(!isAlwaysWip && filterInputType === "value");
42
+ const styles = useStyles2(getStyles);
43
+ const [filterMultiValues, setFilterMultiValues] = useState([]);
44
+ const [_, setForceRefresh] = useState({});
45
+ const allowCustomValue = (_a = model.state.allowCustomValue) != null ? _a : true;
46
+ const multiValuePillWrapperRef = useRef(null);
47
+ const hasMultiValueOperator = isMultiValueOperator((filter == null ? void 0 : filter.operator) || "");
48
+ const isMultiValueEdit = hasMultiValueOperator && filterInputType === "value";
49
+ const operatorIdentifier = useId();
50
+ const listRef = useRef([]);
51
+ const disabledIndicesRef = useRef([]);
52
+ const filterInputTypeRef = useRef(!isAlwaysWip ? "value" : "key");
53
+ const optionsSearcher = useMemo(() => fuzzySearchOptions(options), [options]);
54
+ const isLastFilter = useMemo(() => {
55
+ if (isAlwaysWip) {
56
+ return false;
57
+ }
58
+ if (model.state.filters.at(-1) === filter) {
59
+ return true;
60
+ }
61
+ return false;
62
+ }, [filter, isAlwaysWip, model.state.filters]);
63
+ const handleResetWip = useCallback(() => {
64
+ if (isAlwaysWip) {
65
+ model._addWip();
66
+ setInputType("key");
67
+ setInputValue("");
68
+ }
69
+ }, [model, isAlwaysWip]);
70
+ const handleMultiValueFilterCommit = useCallback(
71
+ (model2, filter2, filterMultiValues2, preventFocus) => {
72
+ if (filterMultiValues2.length) {
73
+ const valueLabels = [];
74
+ const values = [];
75
+ filterMultiValues2.forEach((item) => {
76
+ var _a2;
77
+ valueLabels.push((_a2 = item.label) != null ? _a2 : item.value);
78
+ values.push(item.value);
79
+ });
80
+ model2._updateFilter(filter2, { valueLabels, values, value: values[0] });
81
+ setFilterMultiValues([]);
82
+ }
83
+ if (!preventFocus) {
84
+ setTimeout(() => {
85
+ var _a2;
86
+ return (_a2 = refs.domReference.current) == null ? void 0 : _a2.focus();
87
+ });
88
+ }
89
+ },
90
+ []
91
+ );
92
+ const handleLocalMultiValueChange = useCallback((selectedItem) => {
93
+ setFilterMultiValues((items) => {
94
+ if (items.some((item) => item.value === selectedItem.value)) {
95
+ return items.filter((item) => item.value !== selectedItem.value);
96
+ }
97
+ return [...items, selectedItem];
98
+ });
99
+ }, []);
100
+ const onOpenChange = useCallback(
101
+ (nextOpen, _2, reason) => {
102
+ setOpen(nextOpen);
103
+ if (reason && ["outside-press", "escape-key"].includes(reason)) {
104
+ if (isMultiValueEdit) {
105
+ handleMultiValueFilterCommit(model, filter, filterMultiValues);
106
+ }
107
+ handleResetWip();
108
+ handleChangeViewMode == null ? void 0 : handleChangeViewMode();
109
+ }
110
+ },
111
+ [
112
+ filter,
113
+ filterMultiValues,
114
+ handleChangeViewMode,
115
+ handleMultiValueFilterCommit,
116
+ handleResetWip,
117
+ isMultiValueEdit,
118
+ model
119
+ ]
120
+ );
121
+ const outsidePressIdsToIgnore = useMemo(() => {
122
+ return [
123
+ operatorIdentifier,
124
+ ...filterMultiValues.reduce(
125
+ (acc, item, i) => [...acc, `${item.value}-${i}`, `${item.value}-${i}-close-icon`],
126
+ []
127
+ )
128
+ ];
129
+ }, [operatorIdentifier, filterMultiValues]);
130
+ const { refs, floatingStyles, context, getReferenceProps, getFloatingProps, getItemProps } = useFloatingInteractions({
131
+ open,
132
+ onOpenChange,
133
+ activeIndex,
134
+ setActiveIndex,
135
+ outsidePressIdsToIgnore,
136
+ listRef,
137
+ disabledIndicesRef
138
+ });
139
+ useImperativeHandle(parentRef, () => () => {
140
+ var _a2;
141
+ return (_a2 = refs.domReference.current) == null ? void 0 : _a2.focus();
142
+ }, [refs.domReference]);
143
+ function onChange(event) {
144
+ const value = event.target.value;
145
+ setInputValue(value);
146
+ setActiveIndex(0);
147
+ if (preventFiltering) {
148
+ setPreventFiltering(false);
149
+ }
150
+ }
151
+ const handleRemoveMultiValue = useCallback(
152
+ (item) => {
153
+ setFilterMultiValues((selected) => selected.filter((option) => option.value !== item.value));
154
+ setTimeout(() => {
155
+ var _a2;
156
+ return (_a2 = refs.domReference.current) == null ? void 0 : _a2.focus();
157
+ });
158
+ },
159
+ [refs.domReference]
160
+ );
161
+ const filteredDropDownItems = flattenOptionGroups(
162
+ handleOptionGroups(optionsSearcher(preventFiltering ? "" : inputValue, filterInputType))
163
+ );
164
+ if (allowCustomValue && filterInputType !== "operator" && inputValue) {
165
+ filteredDropDownItems.push({
166
+ value: inputValue.trim(),
167
+ label: inputValue.trim(),
168
+ isCustom: true
169
+ });
170
+ }
171
+ const maxOptionWidth = setupDropdownAccessibility(filteredDropDownItems, listRef, disabledIndicesRef);
172
+ const handleFetchOptions = useCallback(
173
+ async (inputType) => {
174
+ var _a2;
175
+ setOptionsError(false);
176
+ setOptionsLoading(true);
177
+ setOptions([]);
178
+ let options2 = [];
179
+ try {
180
+ if (inputType === "key") {
181
+ options2 = await model._getKeys(null);
182
+ } else if (inputType === "operator") {
183
+ options2 = model._getOperators();
184
+ } else if (inputType === "value") {
185
+ options2 = await model._getValuesFor(filter);
186
+ }
187
+ if (filterInputTypeRef.current !== inputType) {
188
+ return;
189
+ }
190
+ setOptions(options2);
191
+ if ((_a2 = options2[0]) == null ? void 0 : _a2.group) {
192
+ setActiveIndex(1);
193
+ } else {
194
+ setActiveIndex(0);
195
+ }
196
+ } catch (e) {
197
+ setOptionsError(true);
198
+ }
199
+ setOptionsLoading(false);
200
+ },
201
+ [filter, model]
202
+ );
203
+ const rowVirtualizer = useVirtualizer({
204
+ count: filteredDropDownItems.length,
205
+ getScrollElement: () => refs.floating.current,
206
+ estimateSize: (index) => filteredDropDownItems[index].description ? VIRTUAL_LIST_ITEM_HEIGHT_WITH_DESCRIPTION : VIRTUAL_LIST_ITEM_HEIGHT,
207
+ overscan: VIRTUAL_LIST_OVERSCAN
208
+ });
209
+ const handleBackspaceInput = useCallback(
210
+ (event, multiValueEdit) => {
211
+ if (event.key === "Backspace" && !inputValue) {
212
+ if (filterInputType === "value") {
213
+ if (multiValueEdit) {
214
+ if (filterMultiValues.length) {
215
+ setFilterMultiValues((items) => {
216
+ const updated = [...items];
217
+ updated.splice(-1, 1);
218
+ return updated;
219
+ });
220
+ return;
221
+ }
222
+ }
223
+ setInputType("operator");
224
+ return;
225
+ }
226
+ focusOnWipInputRef == null ? void 0 : focusOnWipInputRef();
227
+ model._handleComboboxBackspace(filter);
228
+ if (isAlwaysWip) {
229
+ handleResetWip();
230
+ }
231
+ }
232
+ },
233
+ [
234
+ inputValue,
235
+ filterInputType,
236
+ model,
237
+ filter,
238
+ isAlwaysWip,
239
+ filterMultiValues.length,
240
+ handleResetWip,
241
+ focusOnWipInputRef
242
+ ]
243
+ );
244
+ const handleTabInput = useCallback(
245
+ (event, multiValueEdit) => {
246
+ var _a2;
247
+ if (event.key === "Tab" && !event.shiftKey) {
248
+ if (multiValueEdit) {
249
+ event.preventDefault();
250
+ handleMultiValueFilterCommit(model, filter, filterMultiValues);
251
+ (_a2 = refs.domReference.current) == null ? void 0 : _a2.focus();
252
+ }
253
+ handleChangeViewMode == null ? void 0 : handleChangeViewMode();
254
+ handleResetWip();
255
+ }
256
+ },
257
+ [
258
+ filter,
259
+ filterMultiValues,
260
+ handleChangeViewMode,
261
+ handleMultiValueFilterCommit,
262
+ handleResetWip,
263
+ model,
264
+ refs.domReference
265
+ ]
266
+ );
267
+ const handleShiftTabInput = useCallback(
268
+ (event, multiValueEdit) => {
269
+ if (event.key === "Tab" && event.shiftKey) {
270
+ if (multiValueEdit) {
271
+ event.preventDefault();
272
+ handleMultiValueFilterCommit(model, filter, filterMultiValues, true);
273
+ }
274
+ handleChangeViewMode == null ? void 0 : handleChangeViewMode();
275
+ handleResetWip();
276
+ }
277
+ },
278
+ [filter, filterMultiValues, handleChangeViewMode, handleMultiValueFilterCommit, handleResetWip, model]
279
+ );
280
+ const handleEnterInput = useCallback(
281
+ (event, multiValueEdit) => {
282
+ if (event.key === "Enter" && activeIndex != null) {
283
+ if (!filteredDropDownItems[activeIndex]) {
284
+ return;
285
+ }
286
+ const selectedItem = filteredDropDownItems[activeIndex];
287
+ if (multiValueEdit) {
288
+ handleLocalMultiValueChange(selectedItem);
289
+ setInputValue("");
290
+ } else {
291
+ model._updateFilter(
292
+ filter,
293
+ generateFilterUpdatePayload({
294
+ filterInputType,
295
+ item: selectedItem,
296
+ filter,
297
+ setFilterMultiValues
298
+ })
299
+ );
300
+ populateInputValueOnInputTypeSwitch({
301
+ populateInputOnEdit,
302
+ item: selectedItem,
303
+ filterInputType,
304
+ setInputValue,
305
+ filter
306
+ });
307
+ switchToNextInputType(
308
+ filterInputType,
309
+ setInputType,
310
+ handleChangeViewMode,
311
+ refs.domReference.current,
312
+ isLastFilter ? false : void 0
313
+ );
314
+ setActiveIndex(null);
315
+ if (isLastFilter) {
316
+ focusOnWipInputRef == null ? void 0 : focusOnWipInputRef();
317
+ }
318
+ }
319
+ }
320
+ },
321
+ [
322
+ activeIndex,
323
+ filteredDropDownItems,
324
+ handleLocalMultiValueChange,
325
+ model,
326
+ filter,
327
+ filterInputType,
328
+ populateInputOnEdit,
329
+ handleChangeViewMode,
330
+ refs.domReference,
331
+ isLastFilter,
332
+ focusOnWipInputRef
333
+ ]
334
+ );
335
+ const handleEditMultiValuePill = useCallback(
336
+ (value) => {
337
+ var _a2;
338
+ const valueLabel = value.label || value.value;
339
+ setFilterMultiValues((prev) => prev.filter((item) => item.value !== value.value));
340
+ setPreventFiltering(true);
341
+ setInputValue(valueLabel);
342
+ (_a2 = refs.domReference.current) == null ? void 0 : _a2.focus();
343
+ setTimeout(() => {
344
+ var _a3;
345
+ (_a3 = refs.domReference.current) == null ? void 0 : _a3.select();
346
+ });
347
+ },
348
+ [refs.domReference]
349
+ );
350
+ useEffect(() => {
351
+ if (open) {
352
+ handleFetchOptions(filterInputType);
353
+ }
354
+ }, [open, filterInputType]);
355
+ useEffect(() => {
356
+ var _a2, _b2;
357
+ if (!isAlwaysWip) {
358
+ if (hasMultiValueOperator && ((_a2 = filter == null ? void 0 : filter.values) == null ? void 0 : _a2.length)) {
359
+ const multiValueOptions = filter.values.reduce(
360
+ (acc, value, i) => {
361
+ var _a3;
362
+ return [
363
+ ...acc,
364
+ {
365
+ label: ((_a3 = filter.valueLabels) == null ? void 0 : _a3[i]) || value,
366
+ value
367
+ }
368
+ ];
369
+ },
370
+ []
371
+ );
372
+ setFilterMultiValues(multiValueOptions);
373
+ }
374
+ if (!hasMultiValueOperator && populateInputOnEdit) {
375
+ setInputValue((filter == null ? void 0 : filter.value) || "");
376
+ setTimeout(() => {
377
+ var _a3;
378
+ (_a3 = refs.domReference.current) == null ? void 0 : _a3.select();
379
+ });
380
+ }
381
+ (_b2 = refs.domReference.current) == null ? void 0 : _b2.focus();
382
+ }
383
+ }, []);
384
+ useEffect(() => {
385
+ if (isMultiValueEdit && filterMultiValues) {
386
+ setTimeout(() => setForceRefresh({}));
387
+ }
388
+ }, [filterMultiValues, isMultiValueEdit]);
389
+ useLayoutEffect(() => {
390
+ if (filterInputTypeRef.current) {
391
+ filterInputTypeRef.current = filterInputType;
392
+ }
393
+ }, [filterInputType]);
394
+ useLayoutEffect(() => {
395
+ var _a2, _b2;
396
+ if (activeIndex !== null && rowVirtualizer.range && (activeIndex > ((_a2 = rowVirtualizer.range) == null ? void 0 : _a2.endIndex) || activeIndex < ((_b2 = rowVirtualizer.range) == null ? void 0 : _b2.startIndex))) {
397
+ rowVirtualizer.scrollToIndex(activeIndex);
398
+ }
399
+ }, [activeIndex, rowVirtualizer]);
400
+ const keyLabel = (_b = filter == null ? void 0 : filter.keyLabel) != null ? _b : filter == null ? void 0 : filter.key;
401
+ return /* @__PURE__ */ React.createElement("div", {
402
+ className: styles.comboboxWrapper
403
+ }, filter ? /* @__PURE__ */ React.createElement("div", {
404
+ className: styles.pillWrapper
405
+ }, (filter == null ? void 0 : filter.key) ? /* @__PURE__ */ React.createElement("div", {
406
+ className: cx(styles.basePill, styles.keyPill)
407
+ }, keyLabel) : null, (filter == null ? void 0 : filter.key) && (filter == null ? void 0 : filter.operator) && filterInputType !== "operator" ? /* @__PURE__ */ React.createElement("div", {
408
+ id: operatorIdentifier,
409
+ className: cx(styles.basePill, styles.operatorPill, operatorIdentifier),
410
+ role: "button",
411
+ "aria-label": "Edit filter operator",
412
+ tabIndex: 0,
413
+ onClick: (event) => {
414
+ event.stopPropagation();
415
+ setInputValue("");
416
+ switchInputType("operator", setInputType, void 0, refs.domReference.current);
417
+ },
418
+ onKeyDown: (event) => {
419
+ handleShiftTabInput(event, hasMultiValueOperator);
420
+ if (event.key === "Enter") {
421
+ setInputValue("");
422
+ switchInputType("operator", setInputType, void 0, refs.domReference.current);
423
+ }
424
+ }
425
+ }, filter.operator) : null, /* @__PURE__ */ React.createElement("div", {
426
+ ref: multiValuePillWrapperRef
427
+ }), isMultiValueEdit ? filterMultiValues.map((item, i) => /* @__PURE__ */ React.createElement(MultiValuePill, {
428
+ key: `${item.value}-${i}`,
429
+ item,
430
+ index: i,
431
+ handleRemoveMultiValue,
432
+ handleEditMultiValuePill
433
+ })) : null) : null, /* @__PURE__ */ React.createElement("input", __spreadProps(__spreadValues({}, getReferenceProps({
434
+ ref: refs.setReference,
435
+ onChange,
436
+ value: inputValue,
437
+ placeholder: generatePlaceholder(filter, filterInputType, isMultiValueEdit, isAlwaysWip),
438
+ "aria-autocomplete": "list",
439
+ onKeyDown(event) {
440
+ if (!open) {
441
+ setOpen(true);
442
+ return;
443
+ }
444
+ if (filterInputType === "operator") {
445
+ handleShiftTabInput(event);
446
+ }
447
+ handleBackspaceInput(event, isMultiValueEdit);
448
+ handleTabInput(event, isMultiValueEdit);
449
+ handleEnterInput(event, isMultiValueEdit);
450
+ }
451
+ })), {
452
+ className: cx(styles.inputStyle, { [styles.loadingInputPadding]: !optionsLoading }),
453
+ onClick: (event) => {
454
+ event.stopPropagation();
455
+ setOpen(true);
456
+ },
457
+ onFocus: () => {
458
+ setOpen(true);
459
+ }
460
+ })), optionsLoading ? /* @__PURE__ */ React.createElement(Spinner, {
461
+ className: styles.loadingIndicator,
462
+ inline: true
463
+ }) : null, /* @__PURE__ */ React.createElement(FloatingPortal, null, open && /* @__PURE__ */ React.createElement(FloatingFocusManager, {
464
+ context,
465
+ initialFocus: -1,
466
+ visuallyHiddenDismiss: true,
467
+ modal: false
468
+ }, /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", {
469
+ style: __spreadProps(__spreadValues({}, floatingStyles), {
470
+ width: `${optionsError ? ERROR_STATE_DROPDOWN_WIDTH : maxOptionWidth}px`,
471
+ transform: isMultiValueEdit ? `translate(${((_c = multiValuePillWrapperRef.current) == null ? void 0 : _c.getBoundingClientRect().left) || 0}px, ${(((_d = refs.domReference.current) == null ? void 0 : _d.getBoundingClientRect().bottom) || 0) + 10}px )` : floatingStyles.transform
472
+ }),
473
+ ref: refs.setFloating,
474
+ className: styles.dropdownWrapper,
475
+ tabIndex: -1
476
+ }, /* @__PURE__ */ React.createElement("div", __spreadProps(__spreadValues({
477
+ style: {
478
+ height: `${rowVirtualizer.getTotalSize() || VIRTUAL_LIST_ITEM_HEIGHT}px`
479
+ }
480
+ }, getFloatingProps()), {
481
+ tabIndex: -1
482
+ }), optionsLoading ? /* @__PURE__ */ React.createElement(LoadingOptionsPlaceholder, null) : optionsError ? /* @__PURE__ */ React.createElement(OptionsErrorPlaceholder, {
483
+ handleFetchOptions: () => handleFetchOptions(filterInputType)
484
+ }) : !filteredDropDownItems.length && (!allowCustomValue || filterInputType === "operator" || !inputValue) ? /* @__PURE__ */ React.createElement(NoOptionsPlaceholder, null) : rowVirtualizer.getVirtualItems().map((virtualItem) => {
485
+ var _a2;
486
+ const item = filteredDropDownItems[virtualItem.index];
487
+ const index = virtualItem.index;
488
+ if (item.options) {
489
+ return /* @__PURE__ */ React.createElement("div", {
490
+ key: `${item.label}+${index}`,
491
+ className: cx(styles.optionGroupLabel, styles.groupTopBorder),
492
+ style: {
493
+ height: `${virtualItem.size}px`,
494
+ transform: `translateY(${virtualItem.start}px)`
495
+ }
496
+ }, /* @__PURE__ */ React.createElement(Text, {
497
+ weight: "bold",
498
+ variant: "bodySmall",
499
+ color: "secondary"
500
+ }, item.label));
501
+ }
502
+ const nextItem = filteredDropDownItems[virtualItem.index + 1];
503
+ const shouldAddBottomBorder = nextItem && !nextItem.group && !nextItem.options && item.group;
504
+ return /* @__PURE__ */ React.createElement(DropdownItem, __spreadProps(__spreadValues({}, getItemProps({
505
+ key: `${item.value}-${index}`,
506
+ ref(node) {
507
+ listRef.current[index] = node;
508
+ },
509
+ onClick(event) {
510
+ var _a3;
511
+ if (filterInputType !== "value") {
512
+ event.stopPropagation();
513
+ }
514
+ if (isMultiValueEdit) {
515
+ event.preventDefault();
516
+ event.stopPropagation();
517
+ handleLocalMultiValueChange(item);
518
+ setInputValue("");
519
+ (_a3 = refs.domReference.current) == null ? void 0 : _a3.focus();
520
+ } else {
521
+ model._updateFilter(
522
+ filter,
523
+ generateFilterUpdatePayload({
524
+ filterInputType,
525
+ item,
526
+ filter,
527
+ setFilterMultiValues
528
+ })
529
+ );
530
+ populateInputValueOnInputTypeSwitch({
531
+ populateInputOnEdit,
532
+ item,
533
+ filterInputType,
534
+ setInputValue,
535
+ filter
536
+ });
537
+ switchToNextInputType(
538
+ filterInputType,
539
+ setInputType,
540
+ handleChangeViewMode,
541
+ refs.domReference.current,
542
+ false
543
+ );
544
+ }
545
+ }
546
+ })), {
547
+ active: activeIndex === index,
548
+ addGroupBottomBorder: shouldAddBottomBorder,
549
+ style: {
550
+ height: `${virtualItem.size}px`,
551
+ transform: `translateY(${virtualItem.start}px)`
552
+ },
553
+ "aria-setsize": filteredDropDownItems.length,
554
+ "aria-posinset": virtualItem.index + 1,
555
+ isMultiValueEdit,
556
+ checked: filterMultiValues.some((val) => val.value === item.value)
557
+ }), /* @__PURE__ */ React.createElement("span", null, item.isCustom ? "Use custom value: " : "", " ", (_a2 = item.label) != null ? _a2 : item.value), item.description ? /* @__PURE__ */ React.createElement("div", {
558
+ className: styles.descriptionText
559
+ }, item.description) : null);
560
+ }))), isMultiValueEdit && !optionsLoading && !optionsError && filteredDropDownItems.length ? /* @__PURE__ */ React.createElement(MultiValueApplyButton, {
561
+ onApply: () => {
562
+ handleMultiValueFilterCommit(model, filter, filterMultiValues);
563
+ },
564
+ floatingElement: refs.floating.current,
565
+ maxOptionWidth,
566
+ menuHeight: Math.min(rowVirtualizer.getTotalSize(), MAX_MENU_HEIGHT)
567
+ }) : null))));
568
+ });
569
+ const getStyles = (theme) => ({
570
+ comboboxWrapper: css({
571
+ display: "flex",
572
+ flexWrap: "wrap"
573
+ }),
574
+ pillWrapper: css({
575
+ display: "flex",
576
+ alignItems: "center",
577
+ flexWrap: "wrap"
578
+ }),
579
+ basePill: css(__spreadProps(__spreadValues({
580
+ display: "flex",
581
+ alignItems: "center",
582
+ background: theme.colors.action.disabledBackground,
583
+ border: `1px solid ${theme.colors.border.weak}`,
584
+ padding: theme.spacing(0.125, 1, 0.125, 1),
585
+ color: theme.colors.text.primary,
586
+ overflow: "hidden",
587
+ whiteSpace: "nowrap",
588
+ minHeight: theme.spacing(2.75)
589
+ }, theme.typography.bodySmall), {
590
+ cursor: "pointer"
591
+ })),
592
+ keyPill: css({
593
+ fontWeight: theme.typography.fontWeightBold,
594
+ cursor: "default"
595
+ }),
596
+ operatorPill: css({
597
+ "&:hover": {
598
+ background: theme.colors.action.hover
599
+ }
600
+ }),
601
+ dropdownWrapper: css({
602
+ backgroundColor: theme.colors.background.primary,
603
+ color: theme.colors.text.primary,
604
+ boxShadow: theme.shadows.z2,
605
+ overflowY: "auto",
606
+ zIndex: theme.zIndex.dropdown
607
+ }),
608
+ inputStyle: css({
609
+ paddingBlock: 0,
610
+ "&:focus": {
611
+ outline: "none"
612
+ }
613
+ }),
614
+ loadingIndicator: css({
615
+ color: theme.colors.text.secondary,
616
+ marginLeft: theme.spacing(0.5)
617
+ }),
618
+ loadingInputPadding: css({
619
+ paddingRight: theme.spacing(2.5)
620
+ }),
621
+ optionGroupLabel: css({
622
+ padding: theme.spacing(1),
623
+ position: "absolute",
624
+ top: 0,
625
+ left: 0,
626
+ width: "100%"
627
+ }),
628
+ groupTopBorder: css({
629
+ "&:not(:first-child)": {
630
+ borderTop: `1px solid ${theme.colors.border.weak}`
631
+ }
632
+ }),
633
+ descriptionText: css(__spreadProps(__spreadValues({}, theme.typography.bodySmall), {
634
+ color: theme.colors.text.secondary,
635
+ paddingTop: theme.spacing(0.5)
636
+ }))
637
+ });
638
+
639
+ export { AdHocCombobox };
640
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWRIb2NGaWx0ZXJzQ29tYm9ib3guanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3ZhcmlhYmxlcy9hZGhvYy9BZEhvY0ZpbHRlcnNDb21ib2JveC9BZEhvY0ZpbHRlcnNDb21ib2JveC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgZm9yd2FyZFJlZiwgdXNlU3RhdGUsIHVzZVJlZiwgdXNlSWQsIHVzZU1lbW8sIHVzZUNhbGxiYWNrLCB1c2VJbXBlcmF0aXZlSGFuZGxlLCB1c2VFZmZlY3QsIHVzZUxheW91dEVmZmVjdCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEZsb2F0aW5nUG9ydGFsLCBGbG9hdGluZ0ZvY3VzTWFuYWdlciB9IGZyb20gJ0BmbG9hdGluZy11aS9yZWFjdCc7XG5pbXBvcnQgeyB1c2VTdHlsZXMyLCBTcGlubmVyLCBUZXh0IH0gZnJvbSAnQGdyYWZhbmEvdWknO1xuaW1wb3J0IHsgY3gsIGNzcyB9IGZyb20gJ0BlbW90aW9uL2Nzcyc7XG5pbXBvcnQgeyBpc011bHRpVmFsdWVPcGVyYXRvciB9IGZyb20gJy4uL0FkSG9jRmlsdGVyc1ZhcmlhYmxlLmpzJztcbmltcG9ydCB7IHVzZVZpcnR1YWxpemVyIH0gZnJvbSAnQHRhbnN0YWNrL3JlYWN0LXZpcnR1YWwnO1xuaW1wb3J0IHsgTG9hZGluZ09wdGlvbnNQbGFjZWhvbGRlciwgT3B0aW9uc0Vycm9yUGxhY2Vob2xkZXIsIE5vT3B0aW9uc1BsYWNlaG9sZGVyLCBEcm9wZG93bkl0ZW0sIE11bHRpVmFsdWVBcHBseUJ1dHRvbiB9IGZyb20gJy4vRHJvcGRvd25JdGVtLmpzJztcbmltcG9ydCB7IGZ1enp5U2VhcmNoT3B0aW9ucywgZmxhdHRlbk9wdGlvbkdyb3Vwcywgc2V0dXBEcm9wZG93bkFjY2Vzc2liaWxpdHksIFZJUlRVQUxfTElTVF9JVEVNX0hFSUdIVF9XSVRIX0RFU0NSSVBUSU9OLCBWSVJUVUFMX0xJU1RfSVRFTV9IRUlHSFQsIFZJUlRVQUxfTElTVF9PVkVSU0NBTiwgZ2VuZXJhdGVGaWx0ZXJVcGRhdGVQYXlsb2FkLCBwb3B1bGF0ZUlucHV0VmFsdWVPbklucHV0VHlwZVN3aXRjaCwgc3dpdGNoVG9OZXh0SW5wdXRUeXBlLCBzd2l0Y2hJbnB1dFR5cGUsIGdlbmVyYXRlUGxhY2Vob2xkZXIsIEVSUk9SX1NUQVRFX0RST1BET1dOX1dJRFRIIH0gZnJvbSAnLi91dGlscy5qcyc7XG5pbXBvcnQgeyBoYW5kbGVPcHRpb25Hcm91cHMgfSBmcm9tICcuLi8uLi91dGlscy5qcyc7XG5pbXBvcnQgeyB1c2VGbG9hdGluZ0ludGVyYWN0aW9ucywgTUFYX01FTlVfSEVJR0hUIH0gZnJvbSAnLi91c2VGbG9hdGluZ0ludGVyYWN0aW9ucy5qcyc7XG5pbXBvcnQgeyBNdWx0aVZhbHVlUGlsbCB9IGZyb20gJy4vTXVsdGlWYWx1ZVBpbGwuanMnO1xuXG52YXIgX19kZWZQcm9wID0gT2JqZWN0LmRlZmluZVByb3BlcnR5O1xudmFyIF9fZGVmUHJvcHMgPSBPYmplY3QuZGVmaW5lUHJvcGVydGllcztcbnZhciBfX2dldE93blByb3BEZXNjcyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzO1xudmFyIF9fZ2V0T3duUHJvcFN5bWJvbHMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzO1xudmFyIF9faGFzT3duUHJvcCA9IE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHk7XG52YXIgX19wcm9wSXNFbnVtID0gT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZTtcbnZhciBfX2RlZk5vcm1hbFByb3AgPSAob2JqLCBrZXksIHZhbHVlKSA9PiBrZXkgaW4gb2JqID8gX19kZWZQcm9wKG9iaiwga2V5LCB7IGVudW1lcmFibGU6IHRydWUsIGNvbmZpZ3VyYWJsZTogdHJ1ZSwgd3JpdGFibGU6IHRydWUsIHZhbHVlIH0pIDogb2JqW2tleV0gPSB2YWx1ZTtcbnZhciBfX3NwcmVhZFZhbHVlcyA9IChhLCBiKSA9PiB7XG4gIGZvciAodmFyIHByb3AgaW4gYiB8fCAoYiA9IHt9KSlcbiAgICBpZiAoX19oYXNPd25Qcm9wLmNhbGwoYiwgcHJvcCkpXG4gICAgICBfX2RlZk5vcm1hbFByb3AoYSwgcHJvcCwgYltwcm9wXSk7XG4gIGlmIChfX2dldE93blByb3BTeW1ib2xzKVxuICAgIGZvciAodmFyIHByb3Agb2YgX19nZXRPd25Qcm9wU3ltYm9scyhiKSkge1xuICAgICAgaWYgKF9fcHJvcElzRW51bS5jYWxsKGIsIHByb3ApKVxuICAgICAgICBfX2RlZk5vcm1hbFByb3AoYSwgcHJvcCwgYltwcm9wXSk7XG4gICAgfVxuICByZXR1cm4gYTtcbn07XG52YXIgX19zcHJlYWRQcm9wcyA9IChhLCBiKSA9PiBfX2RlZlByb3BzKGEsIF9fZ2V0T3duUHJvcERlc2NzKGIpKTtcbmNvbnN0IEFkSG9jQ29tYm9ib3ggPSBmb3J3YXJkUmVmKGZ1bmN0aW9uIEFkSG9jQ29tYm9ib3gyKHsgZmlsdGVyLCBtb2RlbCwgaXNBbHdheXNXaXAsIGhhbmRsZUNoYW5nZVZpZXdNb2RlLCBmb2N1c09uV2lwSW5wdXRSZWYsIHBvcHVsYXRlSW5wdXRPbkVkaXQgfSwgcGFyZW50UmVmKSB7XG4gIHZhciBfYSwgX2IsIF9jLCBfZDtcbiAgY29uc3QgW29wZW4sIHNldE9wZW5dID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbb3B0aW9ucywgc2V0T3B0aW9uc10gPSB1c2VTdGF0ZShbXSk7XG4gIGNvbnN0IFtvcHRpb25zTG9hZGluZywgc2V0T3B0aW9uc0xvYWRpbmddID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbb3B0aW9uc0Vycm9yLCBzZXRPcHRpb25zRXJyb3JdID0gdXNlU3RhdGUoZmFsc2UpO1xuICBjb25zdCBbaW5wdXRWYWx1ZSwgc2V0SW5wdXRWYWx1ZV0gPSB1c2VTdGF0ZShcIlwiKTtcbiAgY29uc3QgW2FjdGl2ZUluZGV4LCBzZXRBY3RpdmVJbmRleF0gPSB1c2VTdGF0ZShudWxsKTtcbiAgY29uc3QgW2ZpbHRlcklucHV0VHlwZSwgc2V0SW5wdXRUeXBlXSA9IHVzZVN0YXRlKCFpc0Fsd2F5c1dpcCA/IFwidmFsdWVcIiA6IFwia2V5XCIpO1xuICBjb25zdCBbcHJldmVudEZpbHRlcmluZywgc2V0UHJldmVudEZpbHRlcmluZ10gPSB1c2VTdGF0ZSghaXNBbHdheXNXaXAgJiYgZmlsdGVySW5wdXRUeXBlID09PSBcInZhbHVlXCIpO1xuICBjb25zdCBzdHlsZXMgPSB1c2VTdHlsZXMyKGdldFN0eWxlcyk7XG4gIGNvbnN0IFtmaWx0ZXJNdWx0aVZhbHVlcywgc2V0RmlsdGVyTXVsdGlWYWx1ZXNdID0gdXNlU3RhdGUoW10pO1xuICBjb25zdCBbXywgc2V0Rm9yY2VSZWZyZXNoXSA9IHVzZVN0YXRlKHt9KTtcbiAgY29uc3QgYWxsb3dDdXN0b21WYWx1ZSA9IChfYSA9IG1vZGVsLnN0YXRlLmFsbG93Q3VzdG9tVmFsdWUpICE9IG51bGwgPyBfYSA6IHRydWU7XG4gIGNvbnN0IG11bHRpVmFsdWVQaWxsV3JhcHBlclJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgaGFzTXVsdGlWYWx1ZU9wZXJhdG9yID0gaXNNdWx0aVZhbHVlT3BlcmF0b3IoKGZpbHRlciA9PSBudWxsID8gdm9pZCAwIDogZmlsdGVyLm9wZXJhdG9yKSB8fCBcIlwiKTtcbiAgY29uc3QgaXNNdWx0aVZhbHVlRWRpdCA9IGhhc011bHRpVmFsdWVPcGVyYXRvciAmJiBmaWx0ZXJJbnB1dFR5cGUgPT09IFwidmFsdWVcIjtcbiAgY29uc3Qgb3BlcmF0b3JJZGVudGlmaWVyID0gdXNlSWQoKTtcbiAgY29uc3QgbGlzdFJlZiA9IHVzZVJlZihbXSk7XG4gIGNvbnN0IGRpc2FibGVkSW5kaWNlc1JlZiA9IHVzZVJlZihbXSk7XG4gIGNvbnN0IGZpbHRlcklucHV0VHlwZVJlZiA9IHVzZVJlZighaXNBbHdheXNXaXAgPyBcInZhbHVlXCIgOiBcImtleVwiKTtcbiAgY29uc3Qgb3B0aW9uc1NlYXJjaGVyID0gdXNlTWVtbygoKSA9PiBmdXp6eVNlYXJjaE9wdGlvbnMob3B0aW9ucyksIFtvcHRpb25zXSk7XG4gIGNvbnN0IGlzTGFzdEZpbHRlciA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGlmIChpc0Fsd2F5c1dpcCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICBpZiAobW9kZWwuc3RhdGUuZmlsdGVycy5hdCgtMSkgPT09IGZpbHRlcikge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfSwgW2ZpbHRlciwgaXNBbHdheXNXaXAsIG1vZGVsLnN0YXRlLmZpbHRlcnNdKTtcbiAgY29uc3QgaGFuZGxlUmVzZXRXaXAgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKGlzQWx3YXlzV2lwKSB7XG4gICAgICBtb2RlbC5fYWRkV2lwKCk7XG4gICAgICBzZXRJbnB1dFR5cGUoXCJrZXlcIik7XG4gICAgICBzZXRJbnB1dFZhbHVlKFwiXCIpO1xuICAgIH1cbiAgfSwgW21vZGVsLCBpc0Fsd2F5c1dpcF0pO1xuICBjb25zdCBoYW5kbGVNdWx0aVZhbHVlRmlsdGVyQ29tbWl0ID0gdXNlQ2FsbGJhY2soXG4gICAgKG1vZGVsMiwgZmlsdGVyMiwgZmlsdGVyTXVsdGlWYWx1ZXMyLCBwcmV2ZW50Rm9jdXMpID0+IHtcbiAgICAgIGlmIChmaWx0ZXJNdWx0aVZhbHVlczIubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlTGFiZWxzID0gW107XG4gICAgICAgIGNvbnN0IHZhbHVlcyA9IFtdO1xuICAgICAgICBmaWx0ZXJNdWx0aVZhbHVlczIuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgICAgIHZhciBfYTI7XG4gICAgICAgICAgdmFsdWVMYWJlbHMucHVzaCgoX2EyID0gaXRlbS5sYWJlbCkgIT0gbnVsbCA/IF9hMiA6IGl0ZW0udmFsdWUpO1xuICAgICAgICAgIHZhbHVlcy5wdXNoKGl0ZW0udmFsdWUpO1xuICAgICAgICB9KTtcbiAgICAgICAgbW9kZWwyLl91cGRhdGVGaWx0ZXIoZmlsdGVyMiwgeyB2YWx1ZUxhYmVscywgdmFsdWVzLCB2YWx1ZTogdmFsdWVzWzBdIH0pO1xuICAgICAgICBzZXRGaWx0ZXJNdWx0aVZhbHVlcyhbXSk7XG4gICAgICB9XG4gICAgICBpZiAoIXByZXZlbnRGb2N1cykge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICB2YXIgX2EyO1xuICAgICAgICAgIHJldHVybiAoX2EyID0gcmVmcy5kb21SZWZlcmVuY2UuY3VycmVudCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9hMi5mb2N1cygpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtdXG4gICk7XG4gIGNvbnN0IGhhbmRsZUxvY2FsTXVsdGlWYWx1ZUNoYW5nZSA9IHVzZUNhbGxiYWNrKChzZWxlY3RlZEl0ZW0pID0+IHtcbiAgICBzZXRGaWx0ZXJNdWx0aVZhbHVlcygoaXRlbXMpID0+IHtcbiAgICAgIGlmIChpdGVtcy5zb21lKChpdGVtKSA9PiBpdGVtLnZhbHVlID09PSBzZWxlY3RlZEl0ZW0udmFsdWUpKSB7XG4gICAgICAgIHJldHVybiBpdGVtcy5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0udmFsdWUgIT09IHNlbGVjdGVkSXRlbS52YWx1ZSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gWy4uLml0ZW1zLCBzZWxlY3RlZEl0ZW1dO1xuICAgIH0pO1xuICB9LCBbXSk7XG4gIGNvbnN0IG9uT3BlbkNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgIChuZXh0T3BlbiwgXzIsIHJlYXNvbikgPT4ge1xuICAgICAgc2V0T3BlbihuZXh0T3Blbik7XG4gICAgICBpZiAocmVhc29uICYmIFtcIm91dHNpZGUtcHJlc3NcIiwgXCJlc2NhcGUta2V5XCJdLmluY2x1ZGVzKHJlYXNvbikpIHtcbiAgICAgICAgaWYgKGlzTXVsdGlWYWx1ZUVkaXQpIHtcbiAgICAgICAgICBoYW5kbGVNdWx0aVZhbHVlRmlsdGVyQ29tbWl0KG1vZGVsLCBmaWx0ZXIsIGZpbHRlck11bHRpVmFsdWVzKTtcbiAgICAgICAgfVxuICAgICAgICBoYW5kbGVSZXNldFdpcCgpO1xuICAgICAgICBoYW5kbGVDaGFuZ2VWaWV3TW9kZSA9PSBudWxsID8gdm9pZCAwIDogaGFuZGxlQ2hhbmdlVmlld01vZGUoKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtcbiAgICAgIGZpbHRlcixcbiAgICAgIGZpbHRlck11bHRpVmFsdWVzLFxuICAgICAgaGFuZGxlQ2hhbmdlVmlld01vZGUsXG4gICAgICBoYW5kbGVNdWx0aVZhbHVlRmlsdGVyQ29tbWl0LFxuICAgICAgaGFuZGxlUmVzZXRXaXAsXG4gICAgICBpc011bHRpVmFsdWVFZGl0LFxuICAgICAgbW9kZWxcbiAgICBdXG4gICk7XG4gIGNvbnN0IG91dHNpZGVQcmVzc0lkc1RvSWdub3JlID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIFtcbiAgICAgIG9wZXJhdG9ySWRlbnRpZmllcixcbiAgICAgIC4uLmZpbHRlck11bHRpVmFsdWVzLnJlZHVjZShcbiAgICAgICAgKGFjYywgaXRlbSwgaSkgPT4gWy4uLmFjYywgYCR7aXRlbS52YWx1ZX0tJHtpfWAsIGAke2l0ZW0udmFsdWV9LSR7aX0tY2xvc2UtaWNvbmBdLFxuICAgICAgICBbXVxuICAgICAgKVxuICAgIF07XG4gIH0sIFtvcGVyYXRvcklkZW50aWZpZXIsIGZpbHRlck11bHRpVmFsdWVzXSk7XG4gIGNvbnN0IHsgcmVmcywgZmxvYXRpbmdTdHlsZXMsIGNvbnRleHQsIGdldFJlZmVyZW5jZVByb3BzLCBnZXRGbG9hdGluZ1Byb3BzLCBnZXRJdGVtUHJvcHMgfSA9IHVzZUZsb2F0aW5nSW50ZXJhY3Rpb25zKHtcbiAgICBvcGVuLFxuICAgIG9uT3BlbkNoYW5nZSxcbiAgICBhY3RpdmVJbmRleCxcbiAgICBzZXRBY3RpdmVJbmRleCxcbiAgICBvdXRzaWRlUHJlc3NJZHNUb0lnbm9yZSxcbiAgICBsaXN0UmVmLFxuICAgIGRpc2FibGVkSW5kaWNlc1JlZlxuICB9KTtcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZShwYXJlbnRSZWYsICgpID0+ICgpID0+IHtcbiAgICB2YXIgX2EyO1xuICAgIHJldHVybiAoX2EyID0gcmVmcy5kb21SZWZlcmVuY2UuY3VycmVudCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9hMi5mb2N1cygpO1xuICB9LCBbcmVmcy5kb21SZWZlcmVuY2VdKTtcbiAgZnVuY3Rpb24gb25DaGFuZ2UoZXZlbnQpIHtcbiAgICBjb25zdCB2YWx1ZSA9IGV2ZW50LnRhcmdldC52YWx1ZTtcbiAgICBzZXRJbnB1dFZhbHVlKHZhbHVlKTtcbiAgICBzZXRBY3RpdmVJbmRleCgwKTtcbiAgICBpZiAocHJldmVudEZpbHRlcmluZykge1xuICAgICAgc2V0UHJldmVudEZpbHRlcmluZyhmYWxzZSk7XG4gICAgfVxuICB9XG4gIGNvbnN0IGhhbmRsZVJlbW92ZU11bHRpVmFsdWUgPSB1c2VDYWxsYmFjayhcbiAgICAoaXRlbSkgPT4ge1xuICAgICAgc2V0RmlsdGVyTXVsdGlWYWx1ZXMoKHNlbGVjdGVkKSA9PiBzZWxlY3RlZC5maWx0ZXIoKG9wdGlvbikgPT4gb3B0aW9uLnZhbHVlICE9PSBpdGVtLnZhbHVlKSk7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdmFyIF9hMjtcbiAgICAgICAgcmV0dXJuIChfYTIgPSByZWZzLmRvbVJlZmVyZW5jZS5jdXJyZW50KSA9PSBudWxsID8gdm9pZCAwIDogX2EyLmZvY3VzKCk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIFtyZWZzLmRvbVJlZmVyZW5jZV1cbiAgKTtcbiAgY29uc3QgZmlsdGVyZWREcm9wRG93bkl0ZW1zID0gZmxhdHRlbk9wdGlvbkdyb3VwcyhcbiAgICBoYW5kbGVPcHRpb25Hcm91cHMob3B0aW9uc1NlYXJjaGVyKHByZXZlbnRGaWx0ZXJpbmcgPyBcIlwiIDogaW5wdXRWYWx1ZSwgZmlsdGVySW5wdXRUeXBlKSlcbiAgKTtcbiAgaWYgKGFsbG93Q3VzdG9tVmFsdWUgJiYgZmlsdGVySW5wdXRUeXBlICE9PSBcIm9wZXJhdG9yXCIgJiYgaW5wdXRWYWx1ZSkge1xuICAgIGZpbHRlcmVkRHJvcERvd25JdGVtcy5wdXNoKHtcbiAgICAgIHZhbHVlOiBpbnB1dFZhbHVlLnRyaW0oKSxcbiAgICAgIGxhYmVsOiBpbnB1dFZhbHVlLnRyaW0oKSxcbiAgICAgIGlzQ3VzdG9tOiB0cnVlXG4gICAgfSk7XG4gIH1cbiAgY29uc3QgbWF4T3B0aW9uV2lkdGggPSBzZXR1cERyb3Bkb3duQWNjZXNzaWJpbGl0eShmaWx0ZXJlZERyb3BEb3duSXRlbXMsIGxpc3RSZWYsIGRpc2FibGVkSW5kaWNlc1JlZik7XG4gIGNvbnN0IGhhbmRsZUZldGNoT3B0aW9ucyA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChpbnB1dFR5cGUpID0+IHtcbiAgICAgIHZhciBfYTI7XG4gICAgICBzZXRPcHRpb25zRXJyb3IoZmFsc2UpO1xuICAgICAgc2V0T3B0aW9uc0xvYWRpbmcodHJ1ZSk7XG4gICAgICBzZXRPcHRpb25zKFtdKTtcbiAgICAgIGxldCBvcHRpb25zMiA9IFtdO1xuICAgICAgdHJ5IHtcbiAgICAgICAgaWYgKGlucHV0VHlwZSA9PT0gXCJrZXlcIikge1xuICAgICAgICAgIG9wdGlvbnMyID0gYXdhaXQgbW9kZWwuX2dldEtleXMobnVsbCk7XG4gICAgICAgIH0gZWxzZSBpZiAoaW5wdXRUeXBlID09PSBcIm9wZXJhdG9yXCIpIHtcbiAgICAgICAgICBvcHRpb25zMiA9IG1vZGVsLl9nZXRPcGVyYXRvcnMoKTtcbiAgICAgICAgfSBlbHNlIGlmIChpbnB1dFR5cGUgPT09IFwidmFsdWVcIikge1xuICAgICAgICAgIG9wdGlvbnMyID0gYXdhaXQgbW9kZWwuX2dldFZhbHVlc0ZvcihmaWx0ZXIpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChmaWx0ZXJJbnB1dFR5cGVSZWYuY3VycmVudCAhPT0gaW5wdXRUeXBlKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHNldE9wdGlvbnMob3B0aW9uczIpO1xuICAgICAgICBpZiAoKF9hMiA9IG9wdGlvbnMyWzBdKSA9PSBudWxsID8gdm9pZCAwIDogX2EyLmdyb3VwKSB7XG4gICAgICAgICAgc2V0QWN0aXZlSW5kZXgoMSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc2V0QWN0aXZlSW5kZXgoMCk7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgc2V0T3B0aW9uc0Vycm9yKHRydWUpO1xuICAgICAgfVxuICAgICAgc2V0T3B0aW9uc0xvYWRpbmcoZmFsc2UpO1xuICAgIH0sXG4gICAgW2ZpbHRlciwgbW9kZWxdXG4gICk7XG4gIGNvbnN0IHJvd1ZpcnR1YWxpemVyID0gdXNlVmlydHVhbGl6ZXIoe1xuICAgIGNvdW50OiBmaWx0ZXJlZERyb3BEb3duSXRlbXMubGVuZ3RoLFxuICAgIGdldFNjcm9sbEVsZW1lbnQ6ICgpID0+IHJlZnMuZmxvYXRpbmcuY3VycmVudCxcbiAgICBlc3RpbWF0ZVNpemU6IChpbmRleCkgPT4gZmlsdGVyZWREcm9wRG93bkl0ZW1zW2luZGV4XS5kZXNjcmlwdGlvbiA/IFZJUlRVQUxfTElTVF9JVEVNX0hFSUdIVF9XSVRIX0RFU0NSSVBUSU9OIDogVklSVFVBTF9MSVNUX0lURU1fSEVJR0hULFxuICAgIG92ZXJzY2FuOiBWSVJUVUFMX0xJU1RfT1ZFUlNDQU5cbiAgfSk7XG4gIGNvbnN0IGhhbmRsZUJhY2tzcGFjZUlucHV0ID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50LCBtdWx0aVZhbHVlRWRpdCkgPT4ge1xuICAgICAgaWYgKGV2ZW50LmtleSA9PT0gXCJCYWNrc3BhY2VcIiAmJiAhaW5wdXRWYWx1ZSkge1xuICAgICAgICBpZiAoZmlsdGVySW5wdXRUeXBlID09PSBcInZhbHVlXCIpIHtcbiAgICAgICAgICBpZiAobXVsdGlWYWx1ZUVkaXQpIHtcbiAgICAgICAgICAgIGlmIChmaWx0ZXJNdWx0aVZhbHVlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgc2V0RmlsdGVyTXVsdGlWYWx1ZXMoKGl0ZW1zKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgdXBkYXRlZCA9IFsuLi5pdGVtc107XG4gICAgICAgICAgICAgICAgdXBkYXRlZC5zcGxpY2UoLTEsIDEpO1xuICAgICAgICAgICAgICAgIHJldHVybiB1cGRhdGVkO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBzZXRJbnB1dFR5cGUoXCJvcGVyYXRvclwiKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgZm9jdXNPbldpcElucHV0UmVmID09IG51bGwgPyB2b2lkIDAgOiBmb2N1c09uV2lwSW5wdXRSZWYoKTtcbiAgICAgICAgbW9kZWwuX2hhbmRsZUNvbWJvYm94QmFja3NwYWNlKGZpbHRlcik7XG4gICAgICAgIGlmIChpc0Fsd2F5c1dpcCkge1xuICAgICAgICAgIGhhbmRsZVJlc2V0V2lwKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICAgIFtcbiAgICAgIGlucHV0VmFsdWUsXG4gICAgICBmaWx0ZXJJbnB1dFR5cGUsXG4gICAgICBtb2RlbCxcbiAgICAgIGZpbHRlcixcbiAgICAgIGlzQWx3YXlzV2lwLFxuICAgICAgZmlsdGVyTXVsdGlWYWx1ZXMubGVuZ3RoLFxuICAgICAgaGFuZGxlUmVzZXRXaXAsXG4gICAgICBmb2N1c09uV2lwSW5wdXRSZWZcbiAgICBdXG4gICk7XG4gIGNvbnN0IGhhbmRsZVRhYklucHV0ID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50LCBtdWx0aVZhbHVlRWRpdCkgPT4ge1xuICAgICAgdmFyIF9hMjtcbiAgICAgIGlmIChldmVudC5rZXkgPT09IFwiVGFiXCIgJiYgIWV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAgIGlmIChtdWx0aVZhbHVlRWRpdCkge1xuICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgaGFuZGxlTXVsdGlWYWx1ZUZpbHRlckNvbW1pdChtb2RlbCwgZmlsdGVyLCBmaWx0ZXJNdWx0aVZhbHVlcyk7XG4gICAgICAgICAgKF9hMiA9IHJlZnMuZG9tUmVmZXJlbmNlLmN1cnJlbnQpID09IG51bGwgPyB2b2lkIDAgOiBfYTIuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgICBoYW5kbGVDaGFuZ2VWaWV3TW9kZSA9PSBudWxsID8gdm9pZCAwIDogaGFuZGxlQ2hhbmdlVmlld01vZGUoKTtcbiAgICAgICAgaGFuZGxlUmVzZXRXaXAoKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtcbiAgICAgIGZpbHRlcixcbiAgICAgIGZpbHRlck11bHRpVmFsdWVzLFxuICAgICAgaGFuZGxlQ2hhbmdlVmlld01vZGUsXG4gICAgICBoYW5kbGVNdWx0aVZhbHVlRmlsdGVyQ29tbWl0LFxuICAgICAgaGFuZGxlUmVzZXRXaXAsXG4gICAgICBtb2RlbCxcbiAgICAgIHJlZnMuZG9tUmVmZXJlbmNlXG4gICAgXVxuICApO1xuICBjb25zdCBoYW5kbGVTaGlmdFRhYklucHV0ID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50LCBtdWx0aVZhbHVlRWRpdCkgPT4ge1xuICAgICAgaWYgKGV2ZW50LmtleSA9PT0gXCJUYWJcIiAmJiBldmVudC5zaGlmdEtleSkge1xuICAgICAgICBpZiAobXVsdGlWYWx1ZUVkaXQpIHtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIGhhbmRsZU11bHRpVmFsdWVGaWx0ZXJDb21taXQobW9kZWwsIGZpbHRlciwgZmlsdGVyTXVsdGlWYWx1ZXMsIHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIGhhbmRsZUNoYW5nZVZpZXdNb2RlID09IG51bGwgPyB2b2lkIDAgOiBoYW5kbGVDaGFuZ2VWaWV3TW9kZSgpO1xuICAgICAgICBoYW5kbGVSZXNldFdpcCgpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW2ZpbHRlciwgZmlsdGVyTXVsdGlWYWx1ZXMsIGhhbmRsZUNoYW5nZVZpZXdNb2RlLCBoYW5kbGVNdWx0aVZhbHVlRmlsdGVyQ29tbWl0LCBoYW5kbGVSZXNldFdpcCwgbW9kZWxdXG4gICk7XG4gIGNvbnN0IGhhbmRsZUVudGVySW5wdXQgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQsIG11bHRpVmFsdWVFZGl0KSA9PiB7XG4gICAgICBpZiAoZXZlbnQua2V5ID09PSBcIkVudGVyXCIgJiYgYWN0aXZlSW5kZXggIT0gbnVsbCkge1xuICAgICAgICBpZiAoIWZpbHRlcmVkRHJvcERvd25JdGVtc1thY3RpdmVJbmRleF0pIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRJdGVtID0gZmlsdGVyZWREcm9wRG93bkl0ZW1zW2FjdGl2ZUluZGV4XTtcbiAgICAgICAgaWYgKG11bHRpVmFsdWVFZGl0KSB7XG4gICAgICAgICAgaGFuZGxlTG9jYWxNdWx0aVZhbHVlQ2hhbmdlKHNlbGVjdGVkSXRlbSk7XG4gICAgICAgICAgc2V0SW5wdXRWYWx1ZShcIlwiKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBtb2RlbC5fdXBkYXRlRmlsdGVyKFxuICAgICAgICAgICAgZmlsdGVyLFxuICAgICAgICAgICAgZ2VuZXJhdGVGaWx0ZXJVcGRhdGVQYXlsb2FkKHtcbiAgICAgICAgICAgICAgZmlsdGVySW5wdXRUeXBlLFxuICAgICAgICAgICAgICBpdGVtOiBzZWxlY3RlZEl0ZW0sXG4gICAgICAgICAgICAgIGZpbHRlcixcbiAgICAgICAgICAgICAgc2V0RmlsdGVyTXVsdGlWYWx1ZXNcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgKTtcbiAgICAgICAgICBwb3B1bGF0ZUlucHV0VmFsdWVPbklucHV0VHlwZVN3aXRjaCh7XG4gICAgICAgICAgICBwb3B1bGF0ZUlucHV0T25FZGl0LFxuICAgICAgICAgICAgaXRlbTogc2VsZWN0ZWRJdGVtLFxuICAgICAgICAgICAgZmlsdGVySW5wdXRUeXBlLFxuICAgICAgICAgICAgc2V0SW5wdXRWYWx1ZSxcbiAgICAgICAgICAgIGZpbHRlclxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHN3aXRjaFRvTmV4dElucHV0VHlwZShcbiAgICAgICAgICAgIGZpbHRlcklucHV0VHlwZSxcbiAgICAgICAgICAgIHNldElucHV0VHlwZSxcbiAgICAgICAgICAgIGhhbmRsZUNoYW5nZVZpZXdNb2RlLFxuICAgICAgICAgICAgcmVmcy5kb21SZWZlcmVuY2UuY3VycmVudCxcbiAgICAgICAgICAgIGlzTGFzdEZpbHRlciA/IGZhbHNlIDogdm9pZCAwXG4gICAgICAgICAgKTtcbiAgICAgICAgICBzZXRBY3RpdmVJbmRleChudWxsKTtcbiAgICAgICAgICBpZiAoaXNMYXN0RmlsdGVyKSB7XG4gICAgICAgICAgICBmb2N1c09uV2lwSW5wdXRSZWYgPT0gbnVsbCA/IHZvaWQgMCA6IGZvY3VzT25XaXBJbnB1dFJlZigpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgW1xuICAgICAgYWN0aXZlSW5kZXgsXG4gICAgICBmaWx0ZXJlZERyb3BEb3duSXRlbXMsXG4gICAgICBoYW5kbGVMb2NhbE11bHRpVmFsdWVDaGFuZ2UsXG4gICAgICBtb2RlbCxcbiAgICAgIGZpbHRlcixcbiAgICAgIGZpbHRlcklucHV0VHlwZSxcbiAgICAgIHBvcHVsYXRlSW5wdXRPbkVkaXQsXG4gICAgICBoYW5kbGVDaGFuZ2VWaWV3TW9kZSxcbiAgICAgIHJlZnMuZG9tUmVmZXJlbmNlLFxuICAgICAgaXNMYXN0RmlsdGVyLFxuICAgICAgZm9jdXNPbldpcElucHV0UmVmXG4gICAgXVxuICApO1xuICBjb25zdCBoYW5kbGVFZGl0TXVsdGlWYWx1ZVBpbGwgPSB1c2VDYWxsYmFjayhcbiAgICAodmFsdWUpID0+IHtcbiAgICAgIHZhciBfYTI7XG4gICAgICBjb25zdCB2YWx1ZUxhYmVsID0gdmFsdWUubGFiZWwgfHwgdmFsdWUudmFsdWU7XG4gICAgICBzZXRGaWx0ZXJNdWx0aVZhbHVlcygocHJldikgPT4gcHJldi5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0udmFsdWUgIT09IHZhbHVlLnZhbHVlKSk7XG4gICAgICBzZXRQcmV2ZW50RmlsdGVyaW5nKHRydWUpO1xuICAgICAgc2V0SW5wdXRWYWx1ZSh2YWx1ZUxhYmVsKTtcbiAgICAgIChfYTIgPSByZWZzLmRvbVJlZmVyZW5jZS5jdXJyZW50KSA9PSBudWxsID8gdm9pZCAwIDogX2EyLmZvY3VzKCk7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdmFyIF9hMztcbiAgICAgICAgKF9hMyA9IHJlZnMuZG9tUmVmZXJlbmNlLmN1cnJlbnQpID09IG51bGwgPyB2b2lkIDAgOiBfYTMuc2VsZWN0KCk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIFtyZWZzLmRvbVJlZmVyZW5jZV1cbiAgKTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAob3Blbikge1xuICAgICAgaGFuZGxlRmV0Y2hPcHRpb25zKGZpbHRlcklucHV0VHlwZSk7XG4gICAgfVxuICB9LCBbb3BlbiwgZmlsdGVySW5wdXRUeXBlXSk7XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgdmFyIF9hMiwgX2IyO1xuICAgIGlmICghaXNBbHdheXNXaXApIHtcbiAgICAgIGlmIChoYXNNdWx0aVZhbHVlT3BlcmF0b3IgJiYgKChfYTIgPSBmaWx0ZXIgPT0gbnVsbCA/IHZvaWQgMCA6IGZpbHRlci52YWx1ZXMpID09IG51bGwgPyB2b2lkIDAgOiBfYTIubGVuZ3RoKSkge1xuICAgICAgICBjb25zdCBtdWx0aVZhbHVlT3B0aW9ucyA9IGZpbHRlci52YWx1ZXMucmVkdWNlKFxuICAgICAgICAgIChhY2MsIHZhbHVlLCBpKSA9PiB7XG4gICAgICAgICAgICB2YXIgX2EzO1xuICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgLi4uYWNjLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbGFiZWw6ICgoX2EzID0gZmlsdGVyLnZhbHVlTGFiZWxzKSA9PSBudWxsID8gdm9pZCAwIDogX2EzW2ldKSB8fCB2YWx1ZSxcbiAgICAgICAgICAgICAgICB2YWx1ZVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdO1xuICAgICAgICAgIH0sXG4gICAgICAgICAgW11cbiAgICAgICAgKTtcbiAgICAgICAgc2V0RmlsdGVyTXVsdGlWYWx1ZXMobXVsdGlWYWx1ZU9wdGlvbnMpO1xuICAgICAgfVxuICAgICAgaWYgKCFoYXNNdWx0aVZhbHVlT3BlcmF0b3IgJiYgcG9wdWxhdGVJbnB1dE9uRWRpdCkge1xuICAgICAgICBzZXRJbnB1dFZhbHVlKChmaWx0ZXIgPT0gbnVsbCA/IHZvaWQgMCA6IGZpbHRlci52YWx1ZSkgfHwgXCJcIik7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIHZhciBfYTM7XG4gICAgICAgICAgKF9hMyA9IHJlZnMuZG9tUmVmZXJlbmNlLmN1cnJlbnQpID09IG51bGwgPyB2b2lkIDAgOiBfYTMuc2VsZWN0KCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgKF9iMiA9IHJlZnMuZG9tUmVmZXJlbmNlLmN1cnJlbnQpID09IG51bGwgPyB2b2lkIDAgOiBfYjIuZm9jdXMoKTtcbiAgICB9XG4gIH0sIFtdKTtcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNNdWx0aVZhbHVlRWRpdCAmJiBmaWx0ZXJNdWx0aVZhbHVlcykge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiBzZXRGb3JjZVJlZnJlc2goe30pKTtcbiAgICB9XG4gIH0sIFtmaWx0ZXJNdWx0aVZhbHVlcywgaXNNdWx0aVZhbHVlRWRpdF0pO1xuICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChmaWx0ZXJJbnB1dFR5cGVSZWYuY3VycmVudCkge1xuICAgICAgZmlsdGVySW5wdXRUeXBlUmVmLmN1cnJlbnQgPSBmaWx0ZXJJbnB1dFR5cGU7XG4gICAgfVxuICB9LCBbZmlsdGVySW5wdXRUeXBlXSk7XG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgdmFyIF9hMiwgX2IyO1xuICAgIGlmIChhY3RpdmVJbmRleCAhPT0gbnVsbCAmJiByb3dWaXJ0dWFsaXplci5yYW5nZSAmJiAoYWN0aXZlSW5kZXggPiAoKF9hMiA9IHJvd1ZpcnR1YWxpemVyLnJhbmdlKSA9PSBudWxsID8gdm9pZCAwIDogX2EyLmVuZEluZGV4KSB8fCBhY3RpdmVJbmRleCA8ICgoX2IyID0gcm93VmlydHVhbGl6ZXIucmFuZ2UpID09IG51bGwgPyB2b2lkIDAgOiBfYjIuc3RhcnRJbmRleCkpKSB7XG4gICAgICByb3dWaXJ0dWFsaXplci5zY3JvbGxUb0luZGV4KGFjdGl2ZUluZGV4KTtcbiAgICB9XG4gIH0sIFthY3RpdmVJbmRleCwgcm93VmlydHVhbGl6ZXJdKTtcbiAgY29uc3Qga2V5TGFiZWwgPSAoX2IgPSBmaWx0ZXIgPT0gbnVsbCA/IHZvaWQgMCA6IGZpbHRlci5rZXlMYWJlbCkgIT0gbnVsbCA/IF9iIDogZmlsdGVyID09IG51bGwgPyB2b2lkIDAgOiBmaWx0ZXIua2V5O1xuICByZXR1cm4gLyogQF9fUFVSRV9fICovIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwge1xuICAgIGNsYXNzTmFtZTogc3R5bGVzLmNvbWJvYm94V3JhcHBlclxuICB9LCBmaWx0ZXIgPyAvKiBAX19QVVJFX18gKi8gUmVhY3QuY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgY2xhc3NOYW1lOiBzdHlsZXMucGlsbFdyYXBwZXJcbiAgfSwgKGZpbHRlciA9PSBudWxsID8gdm9pZCAwIDogZmlsdGVyLmtleSkgPyAvKiBAX19QVVJFX18gKi8gUmVhY3QuY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgY2xhc3NOYW1lOiBjeChzdHlsZXMuYmFzZVBpbGwsIHN0eWxlcy5rZXlQaWxsKVxuICB9LCBrZXlMYWJlbCkgOiBudWxsLCAoZmlsdGVyID09IG51bGwgPyB2b2lkIDAgOiBmaWx0ZXIua2V5KSAmJiAoZmlsdGVyID09IG51bGwgPyB2b2lkIDAgOiBmaWx0ZXIub3BlcmF0b3IpICYmIGZpbHRlcklucHV0VHlwZSAhPT0gXCJvcGVyYXRvclwiID8gLyogQF9fUFVSRV9fICovIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwge1xuICAgIGlkOiBvcGVyYXRvcklkZW50aWZpZXIsXG4gICAgY2xhc3NOYW1lOiBjeChzdHlsZXMuYmFzZVBpbGwsIHN0eWxlcy5vcGVyYXRvclBpbGwsIG9wZXJhdG9ySWRlbnRpZmllciksXG4gICAgcm9sZTogXCJidXR0b25cIixcbiAgICBcImFyaWEtbGFiZWxcIjogXCJFZGl0IGZpbHRlciBvcGVyYXRvclwiLFxuICAgIHRhYkluZGV4OiAwLFxuICAgIG9uQ2xpY2s6IChldmVudCkgPT4ge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBzZXRJbnB1dFZhbHVlKFwiXCIpO1xuICAgICAgc3dpdGNoSW5wdXRUeXBlKFwib3BlcmF0b3JcIiwgc2V0SW5wdXRUeXBlLCB2b2lkIDAsIHJlZnMuZG9tUmVmZXJlbmNlLmN1cnJlbnQpO1xuICAgIH0sXG4gICAgb25LZXlEb3duOiAoZXZlbnQpID0+IHtcbiAgICAgIGhhbmRsZVNoaWZ0VGFiSW5wdXQoZXZlbnQsIGhhc011bHRpVmFsdWVPcGVyYXRvcik7XG4gICAgICBpZiAoZXZlbnQua2V5ID09PSBcIkVudGVyXCIpIHtcbiAgICAgICAgc2V0SW5wdXRWYWx1ZShcIlwiKTtcbiAgICAgICAgc3dpdGNoSW5wdXRUeXBlKFwib3BlcmF0b3JcIiwgc2V0SW5wdXRUeXBlLCB2b2lkIDAsIHJlZnMuZG9tUmVmZXJlbmNlLmN1cnJlbnQpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgZmlsdGVyLm9wZXJhdG9yKSA6IG51bGwsIC8qIEBfX1BVUkVfXyAqLyBSZWFjdC5jcmVhdGVFbGVtZW50KFwiZGl2XCIsIHtcbiAgICByZWY6IG11bHRpVmFsdWVQaWxsV3JhcHBlclJlZlxuICB9KSwgaXNNdWx0aVZhbHVlRWRpdCA/IGZpbHRlck11bHRpVmFsdWVzLm1hcCgoaXRlbSwgaSkgPT4gLyogQF9fUFVSRV9fICovIFJlYWN0LmNyZWF0ZUVsZW1lbnQoTXVsdGlWYWx1ZVBpbGwsIHtcbiAgICBrZXk6IGAke2l0ZW0udmFsdWV9LSR7aX1gLFxuICAgIGl0ZW0sXG4gICAgaW5kZXg6IGksXG4gICAgaGFuZGxlUmVtb3ZlTXVsdGlWYWx1ZSxcbiAgICBoYW5kbGVFZGl0TXVsdGlWYWx1ZVBpbGxcbiAgfSkpIDogbnVsbCkgOiBudWxsLCAvKiBAX19QVVJFX18gKi8gUmVhY3QuY3JlYXRlRWxlbWVudChcImlucHV0XCIsIF9fc3ByZWFkUHJvcHMoX19zcHJlYWRWYWx1ZXMoe30sIGdldFJlZmVyZW5jZVByb3BzKHtcbiAgICByZWY6IHJlZnMuc2V0UmVmZXJlbmNlLFxuICAgIG9uQ2hhbmdlLFxuICAgIHZhbHVlOiBpbnB1dFZhbHVlLFxuICAgIHBsYWNlaG9sZGVyOiBnZW5lcmF0ZVBsYWNlaG9sZGVyKGZpbHRlciwgZmlsdGVySW5wdXRUeXBlLCBpc011bHRpVmFsdWVFZGl0LCBpc0Fsd2F5c1dpcCksXG4gICAgXCJhcmlhLWF1dG9jb21wbGV0ZVwiOiBcImxpc3RcIixcbiAgICBvbktleURvd24oZXZlbnQpIHtcbiAgICAgIGlmICghb3Blbikge1xuICAgICAgICBzZXRPcGVuKHRydWUpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBpZiAoZmlsdGVySW5wdXRUeXBlID09PSBcIm9wZXJhdG9yXCIpIHtcbiAgICAgICAgaGFuZGxlU2hpZnRUYWJJbnB1dChldmVudCk7XG4gICAgICB9XG4gICAgICBoYW5kbGVCYWNrc3BhY2VJbnB1dChldmVudCwgaXNNdWx0aVZhbHVlRWRpdCk7XG4gICAgICBoYW5kbGVUYWJJbnB1dChldmVudCwgaXNNdWx0aVZhbHVlRWRpdCk7XG4gICAgICBoYW5kbGVFbnRlcklucHV0KGV2ZW50LCBpc011bHRpVmFsdWVFZGl0KTtcbiAgICB9XG4gIH0pKSwge1xuICAgIGNsYXNzTmFtZTogY3goc3R5bGVzLmlucHV0U3R5bGUsIHsgW3N0eWxlcy5sb2FkaW5nSW5wdXRQYWRkaW5nXTogIW9wdGlvbnNMb2FkaW5nIH0pLFxuICAgIG9uQ2xpY2s6IChldmVudCkgPT4ge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBzZXRPcGVuKHRydWUpO1xuICAgIH0sXG4gICAgb25Gb2N1czogKCkgPT4ge1xuICAgICAgc2V0T3Blbih0cnVlKTtcbiAgICB9XG4gIH0pKSwgb3B0aW9uc0xvYWRpbmcgPyAvKiBAX19QVVJFX18gKi8gUmVhY3QuY3JlYXRlRWxlbWVudChTcGlubmVyLCB7XG4gICAgY2xhc3NOYW1lOiBzdHlsZXMubG9hZGluZ0luZGljYXRvcixcbiAgICBpbmxpbmU6IHRydWVcbiAgfSkgOiBudWxsLCAvKiBAX19QVVJFX18gKi8gUmVhY3QuY3JlYXRlRWxlbWVudChGbG9hdGluZ1BvcnRhbCwgbnVsbCwgb3BlbiAmJiAvKiBAX19QVVJFX18gKi8gUmVhY3QuY3JlYXRlRWxlbWVudChGbG9hdGluZ0ZvY3VzTWFuYWdlciwge1xuICAgIGNvbnRleHQsXG4gICAgaW5pdGlhbEZvY3VzOiAtMSxcbiAgICB2aXN1YWxseUhpZGRlbkRpc21pc3M6IHRydWUsXG4gICAgbW9kYWw6IGZhbHNlXG4gIH0sIC8qIEBfX1BVUkVfXyAqLyBSZWFjdC5jcmVhdGVFbGVtZW50KFJlYWN0LkZyYWdtZW50LCBudWxsLCAvKiBAX19QVVJFX18gKi8gUmVhY3QuY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgc3R5bGU6IF9fc3ByZWFkUHJvcHMoX19zcHJlYWRWYWx1ZXMoe30sIGZsb2F0aW5nU3R5bGVzKSwge1xuICAgICAgd2lkdGg6IGAke29wdGlvbnNFcnJvciA/IEVSUk9SX1NUQVRFX0RST1BET1dOX1dJRFRIIDogbWF4T3B0aW9uV2lkdGh9cHhgLFxuICAgICAgdHJhbnNmb3JtOiBpc011bHRpVmFsdWVFZGl0ID8gYHRyYW5zbGF0ZSgkeygoX2MgPSBtdWx0aVZhbHVlUGlsbFdyYXBwZXJSZWYuY3VycmVudCkgPT0gbnVsbCA/IHZvaWQgMCA6IF9jLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmxlZnQpIHx8IDB9cHgsICR7KCgoX2QgPSByZWZzLmRvbVJlZmVyZW5jZS5jdXJyZW50KSA9PSBudWxsID8gdm9pZCAwIDogX2QuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuYm90dG9tKSB8fCAwKSArIDEwfXB4IClgIDogZmxvYXRpbmdTdHlsZXMudHJhbnNmb3JtXG4gICAgfSksXG4gICAgcmVmOiByZWZzLnNldEZsb2F0aW5nLFxuICAgIGNsYXNzTmFtZTogc3R5bGVzLmRyb3Bkb3duV3JhcHBlcixcbiAgICB0YWJJbmRleDogLTFcbiAgfSwgLyogQF9fUFVSRV9fICovIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgX19zcHJlYWRQcm9wcyhfX3NwcmVhZFZhbHVlcyh7XG4gICAgc3R5bGU6IHtcbiAgICAgIGhlaWdodDogYCR7cm93VmlydHVhbGl6ZXIuZ2V0VG90YWxTaXplKCkgfHwgVklSVFVBTF9MSVNUX0lURU1fSEVJR0hUfXB4YFxuICAgIH1cbiAgfSwgZ2V0RmxvYXRpbmdQcm9wcygpKSwge1xuICAgIHRhYkluZGV4OiAtMVxuICB9KSwgb3B0aW9uc0xvYWRpbmcgPyAvKiBAX19QVVJFX18gKi8gUmVhY3QuY3JlYXRlRWxlbWVudChMb2FkaW5nT3B0aW9uc1BsYWNlaG9sZGVyLCBudWxsKSA6IG9wdGlvbnNFcnJvciA/IC8qIEBfX1BVUkVfXyAqLyBSZWFjdC5jcmVhdGVFbGVtZW50KE9wdGlvbnNFcnJvclBsYWNlaG9sZGVyLCB7XG4gICAgaGFuZGxlRmV0Y2hPcHRpb25zOiAoKSA9PiBoYW5kbGVGZXRjaE9wdGlvbnMoZmlsdGVySW5wdXRUeXBlKVxuICB9KSA6ICFmaWx0ZXJlZERyb3BEb3duSXRlbXMubGVuZ3RoICYmICghYWxsb3dDdXN0b21WYWx1ZSB8fCBmaWx0ZXJJbnB1dFR5cGUgPT09IFwib3BlcmF0b3JcIiB8fCAhaW5wdXRWYWx1ZSkgPyAvKiBAX19QVVJFX18gKi8gUmVhY3QuY3JlYXRlRWxlbWVudChOb09wdGlvbnNQbGFjZWhvbGRlciwgbnVsbCkgOiByb3dWaXJ0dWFsaXplci5nZXRWaXJ0dWFsSXRlbXMoKS5tYXAoKHZpcnR1YWxJdGVtKSA9PiB7XG4gICAgdmFyIF9hMjtcbiAgICBjb25zdCBpdGVtID0gZmlsdGVyZWREcm9wRG93bkl0ZW1zW3ZpcnR1YWxJdGVtLmluZGV4XTtcbiAgICBjb25zdCBpbmRleCA9IHZpcnR1YWxJdGVtLmluZGV4O1xuICAgIGlmIChpdGVtLm9wdGlvbnMpIHtcbiAgICAgIHJldHVybiAvKiBAX19QVVJFX18gKi8gUmVhY3QuY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgICAgIGtleTogYCR7aXRlbS5sYWJlbH0rJHtpbmRleH1gLFxuICAgICAgICBjbGFzc05hbWU6IGN4KHN0eWxlcy5vcHRpb25Hcm91cExhYmVsLCBzdHlsZXMuZ3JvdXBUb3BCb3JkZXIpLFxuICAgICAgICBzdHlsZToge1xuICAgICAgICAgIGhlaWdodDogYCR7dmlydHVhbEl0ZW0uc2l6ZX1weGAsXG4gICAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWSgke3ZpcnR1YWxJdGVtLnN0YXJ0fXB4KWBcbiAgICAgICAgfVxuICAgICAgfSwgLyogQF9fUFVSRV9fICovIFJlYWN0LmNyZWF0ZUVsZW1lbnQoVGV4dCwge1xuICAgICAgICB3ZWlnaHQ6IFwiYm9sZFwiLFxuICAgICAgICB2YXJpYW50OiBcImJvZHlTbWFsbFwiLFxuICAgICAgICBjb2xvcjogXCJzZWNvbmRhcnlcIlxuICAgICAgfSwgaXRlbS5sYWJlbCkpO1xuICAgIH1cbiAgICBjb25zdCBuZXh0SXRlbSA9IGZpbHRlcmVkRHJvcERvd25JdGVtc1t2aXJ0dWFsSXRlbS5pbmRleCArIDFdO1xuICAgIGNvbnN0IHNob3VsZEFkZEJvdHRvbUJvcmRlciA9IG5leHRJdGVtICYmICFuZXh0SXRlbS5ncm91cCAmJiAhbmV4dEl0ZW0ub3B0aW9ucyAmJiBpdGVtLmdyb3VwO1xuICAgIHJldHVybiAvKiBAX19QVVJFX18gKi8gUmVhY3QuY3JlYXRlRWxlbWVudChEcm9wZG93bkl0ZW0sIF9fc3ByZWFkUHJvcHMoX19zcHJlYWRWYWx1ZXMoe30sIGdldEl0ZW1Qcm9wcyh7XG4gICAgICBrZXk6IGAke2l0ZW0udmFsdWV9LSR7aW5kZXh9YCxcbiAgICAgIHJlZihub2RlKSB7XG4gICAgICAgIGxpc3RSZWYuY3VycmVudFtpbmRleF0gPSBub2RlO1xuICAgICAgfSxcbiAgICAgIG9uQ2xpY2soZXZlbnQpIHtcbiAgICAgICAgdmFyIF9hMztcbiAgICAgICAgaWYgKGZpbHRlcklucHV0VHlwZSAhPT0gXCJ2YWx1ZVwiKSB7XG4gICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlzTXVsdGlWYWx1ZUVkaXQpIHtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgIGhhbmRsZUxvY2FsTXVsdGlWYWx1ZUNoYW5nZShpdGVtKTtcbiAgICAgICAgICBzZXRJbnB1dFZhbHVlKFwiXCIpO1xuICAgICAgICAgIChfYTMgPSByZWZzLmRvbVJlZmVyZW5jZS5jdXJyZW50KSA9PSBudWxsID8gdm9pZCAwIDogX2EzLmZvY3VzKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbW9kZWwuX3VwZGF0ZUZpbHRlcihcbiAgICAgICAgICAgIGZpbHRlcixcbiAgICAgICAgICAgIGdlbmVyYXRlRmlsdGVyVXBkYXRlUGF5bG9hZCh7XG4gICAgICAgICAgICAgIGZpbHRlcklucHV0VHlwZSxcbiAgICAgICAgICAgICAgaXRlbSxcbiAgICAgICAgICAgICAgZmlsdGVyLFxuICAgICAgICAgICAgICBzZXRGaWx0ZXJNdWx0aVZhbHVlc1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApO1xuICAgICAgICAgIHBvcHVsYXRlSW5wdXRWYWx1ZU9uSW5wdXRUeXBlU3dpdGNoKHtcbiAgICAgICAgICAgIHBvcHVsYXRlSW5wdXRPbkVkaXQsXG4gICAgICAgICAgICBpdGVtLFxuICAgICAgICAgICAgZmlsdGVySW5wdXRUeXBlLFxuICAgICAgICAgICAgc2V0SW5wdXRWYWx1ZSxcbiAgICAgICAgICAgIGZpbHRlclxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHN3aXRjaFRvTmV4dElucHV0VHlwZShcbiAgICAgICAgICAgIGZpbHRlcklucHV0VHlwZSxcbiAgICAgICAgICAgIHNldElucHV0VHlwZSxcbiAgICAgICAgICAgIGhhbmRsZUNoYW5nZVZpZXdNb2RlLFxuICAgICAgICAgICAgcmVmcy5kb21SZWZlcmVuY2UuY3VycmVudCxcbiAgICAgICAgICAgIGZhbHNlXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pKSwge1xuICAgICAgYWN0aXZlOiBhY3RpdmVJbmRleCA9PT0gaW5kZXgsXG4gICAgICBhZGRHcm91cEJvdHRvbUJvcmRlcjogc2hvdWxkQWRkQm90dG9tQm9yZGVyLFxuICAgICAgc3R5bGU6IHtcbiAgICAgICAgaGVpZ2h0OiBgJHt2aXJ0dWFsSXRlbS5zaXplfXB4YCxcbiAgICAgICAgdHJhbnNmb3JtOiBgdHJhbnNsYXRlWSgke3ZpcnR1YWxJdGVtLnN0YXJ0fXB4KWBcbiAgICAgIH0sXG4gICAgICBcImFyaWEtc2V0c2l6ZVwiOiBmaWx0ZXJlZERyb3BEb3duSXRlbXMubGVuZ3RoLFxuICAgICAgXCJhcmlhLXBvc2luc2V0XCI6IHZpcnR1YWxJdGVtLmluZGV4ICsgMSxcbiAgICAgIGlzTXVsdGlWYWx1ZUVkaXQsXG4gICAgICBjaGVja2VkOiBmaWx0ZXJNdWx0aVZhbHVlcy5zb21lKCh2YWwpID0+IHZhbC52YWx1ZSA9PT0gaXRlbS52YWx1ZSlcbiAgICB9KSwgLyogQF9fUFVSRV9fICovIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIsIG51bGwsIGl0ZW0uaXNDdXN0b20gPyBcIlVzZSBjdXN0b20gdmFsdWU6IFwiIDogXCJcIiwgXCIgXCIsIChfYTIgPSBpdGVtLmxhYmVsKSAhPSBudWxsID8gX2EyIDogaXRlbS52YWx1ZSksIGl0ZW0uZGVzY3JpcHRpb24gPyAvKiBAX19QVVJFX18gKi8gUmVhY3QuY3JlYXRlRWxlbWVudChcImRpdlwiLCB7XG4gICAgICBjbGFzc05hbWU6IHN0eWxlcy5kZXNjcmlwdGlvblRleHRcbiAgICB9LCBpdGVtLmRlc2NyaXB0aW9uKSA6IG51bGwpO1xuICB9KSkpLCBpc011bHRpVmFsdWVFZGl0ICYmICFvcHRpb25zTG9hZGluZyAmJiAhb3B0aW9uc0Vycm9yICYmIGZpbHRlcmVkRHJvcERvd25JdGVtcy5sZW5ndGggPyAvKiBAX19QVVJFX18gKi8gUmVhY3QuY3JlYXRlRWxlbWVudChNdWx0aVZhbHVlQXBwbHlCdXR0b24sIHtcbiAgICBvbkFwcGx5OiAoKSA9PiB7XG4gICAgICBoYW5kbGVNdWx0aVZhbHVlRmlsdGVyQ29tbWl0KG1vZGVsLCBmaWx0ZXIsIGZpbHRlck11bHRpVmFsdWVzKTtcbiAgICB9LFxuICAgIGZsb2F0aW5nRWxlbWVudDogcmVmcy5mbG9hdGluZy5jdXJyZW50LFxuICAgIG1heE9wdGlvbldpZHRoLFxuICAgIG1lbnVIZWlnaHQ6IE1hdGgubWluKHJvd1ZpcnR1YWxpemVyLmdldFRvdGFsU2l6ZSgpLCBNQVhfTUVOVV9IRUlHSFQpXG4gIH0pIDogbnVsbCkpKSk7XG59KTtcbmNvbnN0IGdldFN0eWxlcyA9ICh0aGVtZSkgPT4gKHtcbiAgY29tYm9ib3hXcmFwcGVyOiBjc3Moe1xuICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgIGZsZXhXcmFwOiBcIndyYXBcIlxuICB9KSxcbiAgcGlsbFdyYXBwZXI6IGNzcyh7XG4gICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBmbGV4V3JhcDogXCJ3cmFwXCJcbiAgfSksXG4gIGJhc2VQaWxsOiBjc3MoX19zcHJlYWRQcm9wcyhfX3NwcmVhZFZhbHVlcyh7XG4gICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICBiYWNrZ3JvdW5kOiB0aGVtZS5jb2xvcnMuYWN0aW9uLmRpc2FibGVkQmFja2dyb3VuZCxcbiAgICBib3JkZXI6IGAxcHggc29saWQgJHt0aGVtZS5jb2xvcnMuYm9yZGVyLndlYWt9YCxcbiAgICBwYWRkaW5nOiB0aGVtZS5zcGFjaW5nKDAuMTI1LCAxLCAwLjEyNSwgMSksXG4gICAgY29sb3I6IHRoZW1lLmNvbG9ycy50ZXh0LnByaW1hcnksXG4gICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgd2hpdGVTcGFjZTogXCJub3dyYXBcIixcbiAgICBtaW5IZWlnaHQ6IHRoZW1lLnNwYWNpbmcoMi43NSlcbiAgfSwgdGhlbWUudHlwb2dyYXBoeS5ib2R5U21hbGwpLCB7XG4gICAgY3Vyc29yOiBcInBvaW50ZXJcIlxuICB9KSksXG4gIGtleVBpbGw6IGNzcyh7XG4gICAgZm9udFdlaWdodDogdGhlbWUudHlwb2dyYXBoeS5mb250V2VpZ2h0Qm9sZCxcbiAgICBjdXJzb3I6IFwiZGVmYXVsdFwiXG4gIH0pLFxuICBvcGVyYXRvclBpbGw6IGNzcyh7XG4gICAgXCImOmhvdmVyXCI6IHtcbiAgICAgIGJhY2tncm91bmQ6IHRoZW1lLmNvbG9ycy5hY3Rpb24uaG92ZXJcbiAgICB9XG4gIH0pLFxuICBkcm9wZG93bldyYXBwZXI6IGNzcyh7XG4gICAgYmFja2dyb3VuZENvbG9yOiB0aGVtZS5jb2xvcnMuYmFja2dyb3VuZC5wcmltYXJ5LFxuICAgIGNvbG9yOiB0aGVtZS5jb2xvcnMudGV4dC5wcmltYXJ5LFxuICAgIGJveFNoYWRvdzogdGhlbWUuc2hhZG93cy56MixcbiAgICBvdmVyZmxvd1k6IFwiYXV0b1wiLFxuICAgIHpJbmRleDogdGhlbWUuekluZGV4LmRyb3Bkb3duXG4gIH0pLFxuICBpbnB1dFN0eWxlOiBjc3Moe1xuICAgIHBhZGRpbmdCbG9jazogMCxcbiAgICBcIiY6Zm9jdXNcIjoge1xuICAgICAgb3V0bGluZTogXCJub25lXCJcbiAgICB9XG4gIH0pLFxuICBsb2FkaW5nSW5kaWNhdG9yOiBjc3Moe1xuICAgIGNvbG9yOiB0aGVtZS5jb2xvcnMudGV4dC5zZWNvbmRhcnksXG4gICAgbWFyZ2luTGVmdDogdGhlbWUuc3BhY2luZygwLjUpXG4gIH0pLFxuICBsb2FkaW5nSW5wdXRQYWRkaW5nOiBjc3Moe1xuICAgIHBhZGRpbmdSaWdodDogdGhlbWUuc3BhY2luZygyLjUpXG4gIH0pLFxuICBvcHRpb25Hcm91cExhYmVsOiBjc3Moe1xuICAgIHBhZGRpbmc6IHRoZW1lLnNwYWNpbmcoMSksXG4gICAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgICB0b3A6IDAsXG4gICAgbGVmdDogMCxcbiAgICB3aWR0aDogXCIxMDAlXCJcbiAgfSksXG4gIGdyb3VwVG9wQm9yZGVyOiBjc3Moe1xuICAgIFwiJjpub3QoOmZpcnN0LWNoaWxkKVwiOiB7XG4gICAgICBib3JkZXJUb3A6IGAxcHggc29saWQgJHt0aGVtZS5jb2xvcnMuYm9yZGVyLndlYWt9YFxuICAgIH1cbiAgfSksXG4gIGRlc2NyaXB0aW9uVGV4dDogY3NzKF9fc3ByZWFkUHJvcHMoX19zcHJlYWRWYWx1ZXMoe30sIHRoZW1lLnR5cG9ncmFwaHkuYm9keVNtYWxsKSwge1xuICAgIGNvbG9yOiB0aGVtZS5jb2xvcnMudGV4dC5zZWNvbmRhcnksXG4gICAgcGFkZGluZ1RvcDogdGhlbWUuc3BhY2luZygwLjUpXG4gIH0pKVxufSk7XG5cbmV4cG9ydCB7IEFkSG9jQ29tYm9ib3ggfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pUVdSSWIyTkdhV3gwWlhKelEyOXRZbTlpYjNndWFuTWlMQ0p6YjNWeVkyVnpJanBiSWk0dUx5NHVMeTR1THk0dUx5NHVMM055WXk5MllYSnBZV0pzWlhNdllXUm9iMk12UVdSSWIyTkdhV3gwWlhKelEyOXRZbTlpYjNndlFXUkliMk5HYVd4MFpYSnpRMjl0WW05aWIzZ3VkSE40SWwwc0luTnZkWEpqWlhORGIyNTBaVzUwSWpwYkltbHRjRzl5ZENCU1pXRmpkQ3dnZTF4dUlDQm1iM0ozWVhKa1VtVm1MRnh1SUNCMWMyVkRZV3hzWW1GamF5eGNiaUFnZFhObFJXWm1aV04wTEZ4dUlDQjFjMlZKWkN4Y2JpQWdkWE5sU1cxd1pYSmhkR2wyWlVoaGJtUnNaU3hjYmlBZ2RYTmxUR0Y1YjNWMFJXWm1aV04wTEZ4dUlDQjFjMlZOWlcxdkxGeHVJQ0IxYzJWU1pXWXNYRzRnSUhWelpWTjBZWFJsTEZ4dWZTQm1jbTl0SUNkeVpXRmpkQ2M3WEc1cGJYQnZjblFnZXlCR2JHOWhkR2x1WjBadlkzVnpUV0Z1WVdkbGNpd2dSbXh2WVhScGJtZFFiM0owWVd3c0lGVnpaVVpzYjJGMGFXNW5UM0IwYVc5dWN5QjlJR1p5YjIwZ0owQm1iRzloZEdsdVp5MTFhUzl5WldGamRDYzdYRzVwYlhCdmNuUWdleUJUY0dsdWJtVnlMQ0JVWlhoMExDQjFjMlZUZEhsc1pYTXlJSDBnWm5KdmJTQW5RR2R5WVdaaGJtRXZkV2tuTzF4dWFXMXdiM0owSUhzZ1IzSmhabUZ1WVZSb1pXMWxNaXdnVTJWc1pXTjBZV0pzWlZaaGJIVmxJSDBnWm5KdmJTQW5RR2R5WVdaaGJtRXZaR0YwWVNjN1hHNXBiWEJ2Y25RZ2V5QmpjM01zSUdONElIMGdabkp2YlNBblFHVnRiM1JwYjI0dlkzTnpKenRjYm1sdGNHOXlkQ0I3SUVGa1NHOWpSbWxzZEdWeVYybDBhRXhoWW1Wc2N5d2dRV1JJYjJOR2FXeDBaWEp6Vm1GeWFXRmliR1VzSUdselRYVnNkR2xXWVd4MVpVOXdaWEpoZEc5eUlIMGdabkp2YlNBbkxpNHZRV1JJYjJOR2FXeDBaWEp6Vm1GeWFXRmliR1VuTzF4dWFXMXdiM0owSUhzZ2RYTmxWbWx5ZEhWaGJHbDZaWElnZlNCbWNtOXRJQ2RBZEdGdWMzUmhZMnN2Y21WaFkzUXRkbWx5ZEhWaGJDYzdYRzVwYlhCdmNuUWdlMXh1SUNCRWNtOXdaRzkzYmtsMFpXMHNYRzRnSUV4dllXUnBibWRQY0hScGIyNXpVR3hoWTJWb2IyeGtaWElzWEc0Z0lFMTFiSFJwVm1Gc2RXVkJjSEJzZVVKMWRIUnZiaXhjYmlBZ1RtOVBjSFJwYjI1elVHeGhZMlZvYjJ4a1pYSXNYRzRnSUU5d2RHbHZibk5GY25KdmNsQnNZV05sYUc5c1pHVnlMRnh1ZlNCbWNtOXRJQ2N1TDBSeWIzQmtiM2R1U1hSbGJTYzdYRzVwYlhCdmNuUWdlMXh1SUNCRlVsSlBVbDlUVkVGVVJWOUVVazlRUkU5WFRsOVhTVVJVU0N4Y2JpQWdabXhoZEhSbGJrOXdkR2x2YmtkeWIzVndjeXhjYmlBZ1puVjZlbmxUWldGeVkyaFBjSFJwYjI1ekxGeHVJQ0JuWlc1bGNtRjBaVVpwYkhSbGNsVndaR0YwWlZCaGVXeHZZV1FzWEc0Z0lHZGxibVZ5WVhSbFVHeGhZMlZvYjJ4a1pYSXNYRzRnSUhCdmNIVnNZWFJsU1c1d2RYUldZV3gxWlU5dVNXNXdkWFJVZVhCbFUzZHBkR05vTEZ4dUlDQnpaWFIxY0VSeWIzQmtiM2R1UVdOalpYTnphV0pwYkdsMGVTeGNiaUFnYzNkcGRHTm9TVzV3ZFhSVWVYQmxMRnh1SUNCemQybDBZMmhVYjA1bGVIUkpibkIxZEZSNWNHVXNYRzRnSUZaSlVsUlZRVXhmVEVsVFZGOUpWRVZOWDBoRlNVZElWQ3hjYmlBZ1ZrbFNWRlZCVEY5TVNWTlVYMGxVUlUxZlNFVkpSMGhVWDFkSlZFaGZSRVZUUTFKSlVGUkpUMDRzWEc0Z0lGWkpVbFJWUVV4ZlRFbFRWRjlQVmtWU1UwTkJUaXhjYm4wZ1puSnZiU0FuTGk5MWRHbHNjeWM3WEc1cGJYQnZjblFnZXlCb1lXNWtiR1ZQY0hScGIyNUhjbTkxY0hNZ2ZTQm1jbTl0SUNjdUxpOHVMaTkxZEdsc2N5YzdYRzVwYlhCdmNuUWdleUIxYzJWR2JHOWhkR2x1WjBsdWRHVnlZV04wYVc5dWN5d2dUVUZZWDAxRlRsVmZTRVZKUjBoVUlIMGdabkp2YlNBbkxpOTFjMlZHYkc5aGRHbHVaMGx1ZEdWeVlXTjBhVzl1Y3ljN1hHNXBiWEJ2Y25RZ2V5Qk5kV3gwYVZaaGJIVmxVR2xzYkNCOUlHWnliMjBnSnk0dlRYVnNkR2xXWVd4MVpWQnBiR3duTzF4dVhHNXBiblJsY21aaFkyVWdRV1JJYjJORGIyMWliMkp2ZUZCeWIzQnpJSHRjYmlBZ1ptbHNkR1Z5UHpvZ1FXUkliMk5HYVd4MFpYSlhhWFJvVEdGaVpXeHpPMXh1SUNCcGMwRnNkMkY1YzFkcGNEODZJR0p2YjJ4bFlXNDdYRzRnSUcxdlpHVnNPaUJCWkVodlkwWnBiSFJsY25OV1lYSnBZV0pzWlR0Y2JpQWdhR0Z1Wkd4bFEyaGhibWRsVm1sbGQwMXZaR1UvT2lBb1pYWmxiblEvT2lCU1pXRmpkQzVOYjNWelpVVjJaVzUwTENCemFHOTFiR1JHYjJOMWMwOXVVR2xzYkZkeVlYQndaWEpQZG1WeWNtbGtaVDg2SUdKdmIyeGxZVzRwSUQwK0lIWnZhV1E3WEc0Z0lHWnZZM1Z6VDI1WGFYQkpibkIxZEZKbFpqODZJQ2dwSUQwK0lIWnZhV1E3WEc0Z0lIQnZjSFZzWVhSbFNXNXdkWFJQYmtWa2FYUS9PaUJpYjI5c1pXRnVPMXh1ZlZ4dVhHNWxlSEJ2Y25RZ2RIbHdaU0JCWkVodlkwbHVjSFYwVkhsd1pTQTlJQ2RyWlhrbklId2dKMjl3WlhKaGRHOXlKeUI4SUNkMllXeDFaU2M3WEc1Y2JtVjRjRzl5ZENCamIyNXpkQ0JCWkVodlkwTnZiV0p2WW05NElEMGdabTl5ZDJGeVpGSmxaaWhtZFc1amRHbHZiaUJCWkVodlkwTnZiV0p2WW05NEtGeHVJQ0I3SUdacGJIUmxjaXdnYlc5a1pXd3NJR2x6UVd4M1lYbHpWMmx3TENCb1lXNWtiR1ZEYUdGdVoyVldhV1YzVFc5a1pTd2dabTlqZFhOUGJsZHBjRWx1Y0hWMFVtVm1MQ0J3YjNCMWJHRjBaVWx1Y0hWMFQyNUZaR2wwSUgwNklFRmtTRzlqUTI5dFltOWliM2hRY205d2N5eGNiaUFnY0dGeVpXNTBVbVZtWEc0cElIdGNiaUFnWTI5dWMzUWdXMjl3Wlc0c0lITmxkRTl3Wlc1ZElEMGdkWE5sVTNSaGRHVW9abUZzYzJVcE8xeHVJQ0JqYjI1emRDQmJiM0IwYVc5dWN5d2djMlYwVDNCMGFXOXVjMTBnUFNCMWMyVlRkR0YwWlR4QmNuSmhlVHhUWld4bFkzUmhZbXhsVm1Gc2RXVThjM1J5YVc1blBqNCtLRnRkS1R0Y2JpQWdZMjl1YzNRZ1cyOXdkR2x2Ym5OTWIyRmthVzVuTENCelpYUlBjSFJwYjI1elRHOWhaR2x1WjEwZ1BTQjFjMlZUZEdGMFpUeGliMjlzWldGdVBpaG1ZV3h6WlNrN1hHNGdJR052Ym5OMElGdHZjSFJwYjI1elJYSnliM0lzSUhObGRFOXdkR2x2Ym5ORmNuSnZjbDBnUFNCMWMyVlRkR0YwWlR4aWIyOXNaV0Z1UGlobVlXeHpaU2s3WEc0Z0lHTnZibk4wSUZ0cGJuQjFkRlpoYkhWbExDQnpaWFJKYm5CMWRGWmhiSFZsWFNBOUlIVnpaVk4wWVhSbEtDY25LVHRjYmlBZ1kyOXVjM1FnVzJGamRHbDJaVWx1WkdWNExDQnpaWFJCWTNScGRtVkpibVJsZUYwZ1BTQjFjMlZUZEdGMFpUeHVkVzFpWlhJZ2ZDQnVkV3hzUGlodWRXeHNLVHRjYmlBZ1kyOXVjM1FnVzJacGJIUmxja2x1Y0hWMFZIbHdaU3dnYzJWMFNXNXdkWFJVZVhCbFhTQTlJSFZ6WlZOMFlYUmxQRUZrU0c5alNXNXdkWFJVZVhCbFBpZ2hhWE5CYkhkaGVYTlhhWEFnUHlBbmRtRnNkV1VuSURvZ0oydGxlU2NwTzF4dUlDQmpiMjV6ZENCYmNISmxkbVZ1ZEVacGJIUmxjbWx1Wnl3Z2MyVjBVSEpsZG1WdWRFWnBiSFJsY21sdVoxMGdQU0IxYzJWVGRHRjBaVHhpYjI5c1pXRnVQaWdoYVhOQmJIZGhlWE5YYVhBZ0ppWWdabWxzZEdWeVNXNXdkWFJVZVhCbElEMDlQU0FuZG1Gc2RXVW5LVHRjYmlBZ1kyOXVjM1FnYzNSNWJHVnpJRDBnZFhObFUzUjViR1Z6TWloblpYUlRkSGxzWlhNcE8xeHVJQ0F2THlCamIyNTBjbTlzSUcxMWJIUnBJSFpoYkhWbGN5QjNhWFJvSUd4dlkyRnNJSE4wWVhSbElHbHVJRzl5WkdWeUlIUnZJR052YlcxcGRDQmhiR3dnZG1Gc2RXVnpJR0YwSUc5dVkyVWdZVzVrSUdGMmIybGtJRjkzYVhBZ2NtVnpaWFFnYldsa0lHTnlaV0YwYVc5dVhHNGdJR052Ym5OMElGdG1hV3gwWlhKTmRXeDBhVlpoYkhWbGN5d2djMlYwUm1sc2RHVnlUWFZzZEdsV1lXeDFaWE5kSUQwZ2RYTmxVM1JoZEdVOFFYSnlZWGs4VTJWc1pXTjBZV0pzWlZaaGJIVmxQSE4wY21sdVp6NCtQaWhiWFNrN1hHNGdJR052Ym5OMElGdGZMQ0J6WlhSR2IzSmpaVkpsWm5KbGMyaGRJRDBnZFhObFUzUmhkR1VvZTMwcE8xeHVJQ0JqYjI1emRDQmhiR3h2ZDBOMWMzUnZiVlpoYkhWbElEMGdiVzlrWld3dWMzUmhkR1V1WVd4c2IzZERkWE4wYjIxV1lXeDFaU0EvUHlCMGNuVmxPMXh1WEc0Z0lHTnZibk4wSUcxMWJIUnBWbUZzZFdWUWFXeHNWM0poY0hCbGNsSmxaaUE5SUhWelpWSmxaanhJVkUxTVJHbDJSV3hsYldWdWRENG9iblZzYkNrN1hHNWNiaUFnWTI5dWMzUWdhR0Z6VFhWc2RHbFdZV3gxWlU5d1pYSmhkRzl5SUQwZ2FYTk5kV3gwYVZaaGJIVmxUM0JsY21GMGIzSW9abWxzZEdWeVB5NXZjR1Z5WVhSdmNpQjhmQ0FuSnlrN1hHNGdJR052Ym5OMElHbHpUWFZzZEdsV1lXeDFaVVZrYVhRZ1BTQm9ZWE5OZFd4MGFWWmhiSFZsVDNCbGNtRjBiM0lnSmlZZ1ptbHNkR1Z5U1c1d2RYUlVlWEJsSUQwOVBTQW5kbUZzZFdVbk8xeHVYRzRnSUM4dklIVnpaV1FnZEc4Z2FXUmxiblJwWm5rZ2IzQmxjbUYwYjNJZ1pXeGxiV1Z1ZENCaGJtUWdjSEpsZG1WdWRDQmthWE50YVhOeklHSmxZMkYxYzJVZ2FYUWdjbVZuYVhOMFpYSnpJR0Z6SUc5MWRITnBaR1VnWTJ4cFkydGNiaUFnWTI5dWMzUWdiM0JsY21GMGIzSkpaR1Z1ZEdsbWFXVnlJRDBnZFhObFNXUW9LVHRjYmx4dUlDQmpiMjV6ZENCc2FYTjBVbVZtSUQwZ2RYTmxVbVZtUEVGeWNtRjVQRWhVVFV4RmJHVnRaVzUwSUh3Z2JuVnNiRDQrS0Z0ZEtUdGNiaUFnWTI5dWMzUWdaR2x6WVdKc1pXUkpibVJwWTJWelVtVm1JRDBnZFhObFVtVm1QRzUxYldKbGNsdGRQaWhiWFNrN1hHNGdJR052Ym5OMElHWnBiSFJsY2tsdWNIVjBWSGx3WlZKbFppQTlJSFZ6WlZKbFpqeEJaRWh2WTBsdWNIVjBWSGx3WlQ0b0lXbHpRV3gzWVhselYybHdJRDhnSjNaaGJIVmxKeUE2SUNkclpYa25LVHRjYmx4dUlDQmpiMjV6ZENCdmNIUnBiMjV6VTJWaGNtTm9aWElnUFNCMWMyVk5aVzF2S0NncElEMCtJR1oxZW5wNVUyVmhjbU5vVDNCMGFXOXVjeWh2Y0hScGIyNXpLU3dnVzI5d2RHbHZibk5kS1R0Y2JseHVJQ0JqYjI1emRDQnBjMHhoYzNSR2FXeDBaWElnUFNCMWMyVk5aVzF2S0NncElEMCtJSHRjYmlBZ0lDQnBaaUFvYVhOQmJIZGhlWE5YYVhBcElIdGNiaUFnSUNBZ0lISmxkSFZ5YmlCbVlXeHpaVHRjYmlBZ0lDQjlYRzVjYmlBZ0lDQnBaaUFvYlc5a1pXd3VjM1JoZEdVdVptbHNkR1Z5Y3k1aGRDZ3RNU2tnUFQwOUlHWnBiSFJsY2lrZ2UxeHVJQ0FnSUNBZ2NtVjBkWEp1SUhSeWRXVTdYRzRnSUNBZ2ZWeHVJQ0FnSUhKbGRIVnliaUJtWVd4elpUdGNiaUFnZlN3Z1cyWnBiSFJsY2l3Z2FYTkJiSGRoZVhOWGFYQXNJRzF2WkdWc0xuTjBZWFJsTG1acGJIUmxjbk5kS1R0Y2JseHVJQ0F2THlCeVpYTmxkQ0IzYVhBZ1ptbHNkR1Z5TGlCVmMyVmtJSGRvWlc0Z2JtRjJhV2RoZEdsdVp5QmhkMkY1SUhkcGRHZ2dhVzVqYjIxd2JHVjBaU0IzYVhBZ1ptbHNaWElnYjNJZ2QyaGxiaUJ6Wld4bFkzUnBibWNnZDJsd0lHWnBiSFJsY2lCMllXeDFaVnh1SUNCamIyNXpkQ0JvWVc1a2JHVlNaWE5sZEZkcGNDQTlJSFZ6WlVOaGJHeGlZV05yS0NncElEMCtJSHRjYmlBZ0lDQnBaaUFvYVhOQmJIZGhlWE5YYVhBcElIdGNiaUFnSUNBZ0lHMXZaR1ZzTGw5aFpHUlhhWEFvS1R0Y2JpQWdJQ0FnSUhObGRFbHVjSFYwVkhsd1pTZ25hMlY1SnlrN1hHNGdJQ0FnSUNCelpYUkpibkIxZEZaaGJIVmxLQ2NuS1R0Y2JpQWdJQ0I5WEc0Z0lIMHNJRnR0YjJSbGJDd2dhWE5CYkhkaGVYTlhhWEJkS1R0Y2JseHVJQ0JqYjI1emRDQm9ZVzVrYkdWTmRXeDBhVlpoYkhWbFJtbHNkR1Z5UTI5dGJXbDBJRDBnZFhObFEyRnNiR0poWTJzb1hHNGdJQ0FnS0Z4dUlDQWdJQ0FnYlc5a1pXdzZJRUZrU0c5alJtbHNkR1Z5YzFaaGNtbGhZbXhsTEZ4dUlDQWdJQ0FnWm1sc2RHVnlPaUJCWkVodlkwWnBiSFJsY2xkcGRHaE1ZV0psYkhNc1hHNGdJQ0FnSUNCbWFXeDBaWEpOZFd4MGFWWmhiSFZsY3pvZ1FYSnlZWGs4VTJWc1pXTjBZV0pzWlZaaGJIVmxQSE4wY21sdVp6NCtMRnh1SUNBZ0lDQWdjSEpsZG1WdWRFWnZZM1Z6UHpvZ1ltOXZiR1ZoYmx4dUlDQWdJQ2tnUFQ0Z2UxeHVJQ0FnSUNBZ2FXWWdLR1pwYkhSbGNrMTFiSFJwVm1Gc2RXVnpMbXhsYm1kMGFDa2dlMXh1SUNBZ0lDQWdJQ0JqYjI1emRDQjJZV3gxWlV4aFltVnNjem9nYzNSeWFXNW5XMTBnUFNCYlhUdGNiaUFnSUNBZ0lDQWdZMjl1YzNRZ2RtRnNkV1Z6T2lCemRISnBibWRiWFNBOUlGdGRPMXh1SUNBZ0lDQWdJQ0JtYVd4MFpYSk5kV3gwYVZaaGJIVmxjeTVtYjNKRllXTm9LQ2hwZEdWdEtTQTlQaUI3WEc0Z0lDQWdJQ0FnSUNBZ2RtRnNkV1ZNWVdKbGJITXVjSFZ6YUNocGRHVnRMbXhoWW1Wc0lEOC9JR2wwWlcwdWRtRnNkV1VoS1R0Y2JpQWdJQ0FnSUNBZ0lDQjJZV3gxWlhNdWNIVnphQ2hwZEdWdExuWmhiSFZsSVNrN1hHNGdJQ0FnSUNBZ0lIMHBPMXh1SUNBZ0lDQWdJQ0J0YjJSbGJDNWZkWEJrWVhSbFJtbHNkR1Z5S0dacGJIUmxjaUVzSUhzZ2RtRnNkV1ZNWVdKbGJITXNJSFpoYkhWbGN5d2dkbUZzZFdVNklIWmhiSFZsYzFzd1hTQjlLVHRjYmlBZ0lDQWdJQ0FnYzJWMFJtbHNkR1Z5VFhWc2RHbFdZV3gxWlhNb1cxMHBPMXh1SUNBZ0lDQWdmVnh1SUNBZ0lDQWdhV1lnS0NGd2NtVjJaVzUwUm05amRYTXBJSHRjYmlBZ0lDQWdJQ0FnYzJWMFZHbHRaVzkxZENnb0tTQTlQaUJ5WldaekxtUnZiVkpsWm1WeVpXNWpaUzVqZFhKeVpXNTBQeTVtYjJOMWN5Z3BLVHRjYmlBZ0lDQWdJSDFjYmlBZ0lDQjlMRnh1SUNBZ0lDOHZJR1Z6YkdsdWRDMWthWE5oWW14bExXNWxlSFF0YkdsdVpTQnlaV0ZqZEMxb2IyOXJjeTlsZUdoaGRYTjBhWFpsTFdSbGNITmNiaUFnSUNCYlhWeHVJQ0FwTzF4dVhHNGdJR052Ym5OMElHaGhibVJzWlV4dlkyRnNUWFZzZEdsV1lXeDFaVU5vWVc1blpTQTlJSFZ6WlVOaGJHeGlZV05yS0NoelpXeGxZM1JsWkVsMFpXMDZJRk5sYkdWamRHRmliR1ZXWVd4MVpUeHpkSEpwYm1jK0tTQTlQaUI3WEc0Z0lDQWdjMlYwUm1sc2RHVnlUWFZzZEdsV1lXeDFaWE1vS0dsMFpXMXpLU0E5UGlCN1hHNGdJQ0FnSUNCcFppQW9hWFJsYlhNdWMyOXRaU2dvYVhSbGJTa2dQVDRnYVhSbGJTNTJZV3gxWlNBOVBUMGdjMlZzWldOMFpXUkpkR1Z0TG5aaGJIVmxLU2tnZTF4dUlDQWdJQ0FnSUNCeVpYUjFjbTRnYVhSbGJYTXVabWxzZEdWeUtDaHBkR1Z0S1NBOVBpQnBkR1Z0TG5aaGJIVmxJQ0U5UFNCelpXeGxZM1JsWkVsMFpXMHVkbUZzZFdVcE8xeHVJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2NtVjBkWEp1SUZzdUxpNXBkR1Z0Y3l3Z2MyVnNaV04wWldSSmRHVnRYVHRjYmlBZ0lDQjlLVHRjYmlBZ2ZTd2dXMTBwTzF4dVhHNGdJR052Ym5OMElHOXVUM0JsYmtOb1lXNW5aU0E5SUhWelpVTmhiR3hpWVdOclBFNXZiazUxYkd4aFlteGxQRlZ6WlVac2IyRjBhVzVuVDNCMGFXOXVjMXNuYjI1UGNHVnVRMmhoYm1kbEoxMCtQaWhjYmlBZ0lDQW9ibVY0ZEU5d1pXNHNJRjhzSUhKbFlYTnZiaWtnUFQ0Z2UxeHVJQ0FnSUNBZ2MyVjBUM0JsYmlodVpYaDBUM0JsYmlrN1hHNGdJQ0FnSUNBdkx5QmphR0Z1WjJVZ1puSnZiU0JtYVd4MFpYSWdaV1JwZENCdGIyUmxJSFJ2SUdacGJIUmxjaUIyYVdWM0lHMXZaR1VnZDJobGJpQmpiR2xqYTJWa1hHNGdJQ0FnSUNBdkx5QWdJRzkxZEhOcFpHVWdhVzV3ZFhRZ2IzSWdaSEp2Y0dSdmQyNWNibHh1SUNBZ0lDQWdhV1lnS0hKbFlYTnZiaUFtSmlCYkoyOTFkSE5wWkdVdGNISmxjM01uTENBblpYTmpZWEJsTFd0bGVTZGRMbWx1WTJ4MVpHVnpLSEpsWVhOdmJpa3BJSHRjYmlBZ0lDQWdJQ0FnYVdZZ0tHbHpUWFZzZEdsV1lXeDFaVVZrYVhRcElIdGNiaUFnSUNBZ0lDQWdJQ0F2THlCamIyMXRhWFFnYlhWc2RHa2dkbUZzZFdVZ1ptbHNkR1Z5SUhaaGJIVmxjeUJ2YmlCbGMyTmhjR1VnWVc1a0lHTnNhV05yTFdGM1lYbGNiaUFnSUNBZ0lDQWdJQ0JvWVc1a2JHVk5kV3gwYVZaaGJIVmxSbWxzZEdWeVEyOXRiV2wwS0cxdlpHVnNMQ0JtYVd4MFpYSWhMQ0JtYVd4MFpYSk5kV3gwYVZaaGJIVmxjeWs3WEc0Z0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUNBZ2FHRnVaR3hsVW1WelpYUlhhWEFvS1R0Y2JpQWdJQ0FnSUNBZ2FHRnVaR3hsUTJoaGJtZGxWbWxsZDAxdlpHVS9MaWdwTzF4dUlDQWdJQ0FnZlZ4dUlDQWdJSDBzWEc0Z0lDQWdXMXh1SUNBZ0lDQWdabWxzZEdWeUxGeHVJQ0FnSUNBZ1ptbHNkR1Z5VFhWc2RHbFdZV3gxWlhNc1hHNGdJQ0FnSUNCb1lXNWtiR1ZEYUdGdVoyVldhV1YzVFc5a1pTeGNiaUFnSUNBZ0lHaGhibVJzWlUxMWJIUnBWbUZzZFdWR2FXeDBaWEpEYjIxdGFYUXNYRzRnSUNBZ0lDQm9ZVzVrYkdWU1pYTmxkRmRwY0N4Y2JpQWdJQ0FnSUdselRYVnNkR2xXWVd4MVpVVmthWFFzWEc0Z0lDQWdJQ0J0YjJSbGJDeGNiaUFnSUNCZFhHNGdJQ2s3WEc1Y2JpQWdMeThnWjJWdVpYSmhkR1VnYVdSeklHWnliMjBnYlhWc2RHa2dkbUZzZFdWeklHbHVJRzl5WkdWeUlIUnZJSEJ5WlhabGJuUWdiM1YwYzJsa1pTQmpiR2xqYXlCaVlYTmxaQ0J2YmlCMGFHOXpaU0JwWkhOY2JpQWdZMjl1YzNRZ2IzVjBjMmxrWlZCeVpYTnpTV1J6Vkc5SloyNXZjbVVnUFNCMWMyVk5aVzF2S0NncElEMCtJSHRjYmlBZ0lDQnlaWFIxY200Z1cxeHVJQ0FnSUNBZ2IzQmxjbUYwYjNKSlpHVnVkR2xtYVdWeUxGeHVJQ0FnSUNBZ0xpNHVabWxzZEdWeVRYVnNkR2xXWVd4MVpYTXVjbVZrZFdObFBITjBjbWx1WjF0ZFBpaGNiaUFnSUNBZ0lDQWdLR0ZqWXl3Z2FYUmxiU3dnYVNrZ1BUNGdXeTR1TG1Gall5d2dZQ1I3YVhSbGJTNTJZV3gxWlgwdEpIdHBmV0FzSUdBa2UybDBaVzB1ZG1Gc2RXVjlMU1I3YVgwdFkyeHZjMlV0YVdOdmJtQmRMRnh1SUNBZ0lDQWdJQ0JiWFZ4dUlDQWdJQ0FnS1N4Y2JpQWdJQ0JkTzF4dUlDQjlMQ0JiYjNCbGNtRjBiM0pKWkdWdWRHbG1hV1Z5TENCbWFXeDBaWEpOZFd4MGFWWmhiSFZsYzEwcE8xeHVYRzRnSUdOdmJuTjBJSHNnY21WbWN5d2dabXh2WVhScGJtZFRkSGxzWlhNc0lHTnZiblJsZUhRc0lHZGxkRkpsWm1WeVpXNWpaVkJ5YjNCekxDQm5aWFJHYkc5aGRHbHVaMUJ5YjNCekxDQm5aWFJKZEdWdFVISnZjSE1nZlNBOUlIVnpaVVpzYjJGMGFXNW5TVzUwWlhKaFkzUnBiMjV6S0h0Y2JpQWdJQ0J2Y0dWdUxGeHVJQ0FnSUc5dVQzQmxia05vWVc1blpTeGNiaUFnSUNCaFkzUnBkbVZKYm1SbGVDeGNiaUFnSUNCelpYUkJZM1JwZG1WSmJtUmxlQ3hjYmlBZ0lDQnZkWFJ6YVdSbFVISmxjM05KWkhOVWIwbG5ibTl5WlN4Y2JpQWdJQ0JzYVhOMFVtVm1MRnh1SUNBZ0lHUnBjMkZpYkdWa1NXNWthV05sYzFKbFppeGNiaUFnZlNrN1hHNWNiaUFnTHk4Z2NHRnpjeUJoWW1sc2FYUjVJSFJ2SUdadlkzVnpJRzl1SUdsdWNIVjBJR1ZzWlcxbGJuUWdZbUZqYXlCMGJ5QndZWEpsYm5SY2JpQWdMeThnSUNBZ0lIQmhjbVZ1ZEZKbFppQnBjeUJqYjIxcGJtY2dabkp2YlNCQlpFaHZZMFpwYkhSbGNuTkRiMjFpYjJKdmVGSmxibVJsY21WeVhHNGdJSFZ6WlVsdGNHVnlZWFJwZG1WSVlXNWtiR1VvY0dGeVpXNTBVbVZtTENBb0tTQTlQaUFvS1NBOVBpQnlaV1p6TG1SdmJWSmxabVZ5Wlc1alpTNWpkWEp5Wlc1MFB5NW1iMk4xY3lncExDQmJjbVZtY3k1a2IyMVNaV1psY21WdVkyVmRLVHRjYmx4dUlDQm1kVzVqZEdsdmJpQnZia05vWVc1blpTaGxkbVZ1ZERvZ1VtVmhZM1F1UTJoaGJtZGxSWFpsYm5ROFNGUk5URWx1Y0hWMFJXeGxiV1Z1ZEQ0cElIdGNiaUFnSUNCamIyNXpkQ0IyWVd4MVpTQTlJR1YyWlc1MExuUmhjbWRsZEM1MllXeDFaVHRjYmlBZ0lDQnpaWFJKYm5CMWRGWmhiSFZsS0haaGJIVmxLVHRjYmlBZ0lDQnpaWFJCWTNScGRtVkpibVJsZUNnd0tUdGNiaUFnSUNCcFppQW9jSEpsZG1WdWRFWnBiSFJsY21sdVp5a2dlMXh1SUNBZ0lDQWdjMlYwVUhKbGRtVnVkRVpwYkhSbGNtbHVaeWhtWVd4elpTazdYRzRnSUNBZ2ZWeHVJQ0I5WEc1Y2JpQWdZMjl1YzNRZ2FHRnVaR3hsVW1WdGIzWmxUWFZzZEdsV1lXeDFaU0E5SUhWelpVTmhiR3hpWVdOcktGeHVJQ0FnSUNocGRHVnRPaUJUWld4bFkzUmhZbXhsVm1Gc2RXVThjM1J5YVc1blBpa2dQVDRnZTF4dUlDQWdJQ0FnYzJWMFJtbHNkR1Z5VFhWc2RHbFdZV3gxWlhNb0tITmxiR1ZqZEdWa0tTQTlQaUJ6Wld4bFkzUmxaQzVtYVd4MFpYSW9LRzl3ZEdsdmJpa2dQVDRnYjNCMGFXOXVMblpoYkhWbElDRTlQU0JwZEdWdExuWmhiSFZsS1NrN1hHNGdJQ0FnSUNCelpYUlVhVzFsYjNWMEtDZ3BJRDArSUhKbFpuTXVaRzl0VW1WbVpYSmxibU5sTG1OMWNuSmxiblEvTG1adlkzVnpLQ2twTzF4dUlDQWdJSDBzWEc0Z0lDQWdXM0psWm5NdVpHOXRVbVZtWlhKbGJtTmxYVnh1SUNBcE8xeHVYRzRnSUM4dklHOXdaWEpoZEdsdmJpQnZjbVJsY2lCdmJpQm1aWFJqYUdWa0lHOXdkR2x2Ym5NNlhHNGdJQzh2SUNBZ0lHWjFlbnA1SUhObFlYSmphQ0F0UGlCbGVIUnlZV04wSUdsdWRHOGdaM0p2ZFhCeklDMCtJR1pzWVhSMFpXNGdaM0p2ZFhBZ2JHRmlaV3h6SUdGdVpDQnZjSFJwYjI1elhHNGdJR052Ym5OMElHWnBiSFJsY21Wa1JISnZjRVJ2ZDI1SmRHVnRjeUE5SUdac1lYUjBaVzVQY0hScGIyNUhjbTkxY0hNb1hHNGdJQ0FnYUdGdVpHeGxUM0IwYVc5dVIzSnZkWEJ6S0c5d2RHbHZibk5UWldGeVkyaGxjaWh3Y21WMlpXNTBSbWxzZEdWeWFXNW5JRDhnSnljZ09pQnBibkIxZEZaaGJIVmxMQ0JtYVd4MFpYSkpibkIxZEZSNWNHVXBLVnh1SUNBcE8xeHVYRzRnSUM4dklHRmtaR2x1WnlCamRYTjBiMjBnYjNCMGFXOXVJSFJvYVhNZ2QyRjVJSE52SUhSb1lYUWdkbWx5ZEhWaGJHbHpaWElnYVhNZ1lYZGhjbVVnYjJZZ2FYUWdZVzVrSUdOaGJpQnpZM0p2Ykd3Z2RHOWNiaUFnYVdZZ0tHRnNiRzkzUTNWemRHOXRWbUZzZFdVZ0ppWWdabWxzZEdWeVNXNXdkWFJVZVhCbElDRTlQU0FuYjNCbGNtRjBiM0luSUNZbUlHbHVjSFYwVm1Gc2RXVXBJSHRjYmlBZ0lDQm1hV3gwWlhKbFpFUnliM0JFYjNkdVNYUmxiWE11Y0hWemFDaDdYRzRnSUNBZ0lDQjJZV3gxWlRvZ2FXNXdkWFJXWVd4MVpTNTBjbWx0S0Nrc1hHNGdJQ0FnSUNCc1lXSmxiRG9nYVc1d2RYUldZV3gxWlM1MGNtbHRLQ2tzWEc0Z0lDQWdJQ0JwYzBOMWMzUnZiVG9nZEhKMVpTeGNiaUFnSUNCOUtUdGNiaUFnZlZ4dVhHNGdJQzh2SUdOaGJHTjFiR0YwWlNCM2FXUjBhQ0JoYm1RZ2NHOXdkV3hoZEdVZ2JHbHpkRkpsWmlCaGJtUWdaR2x6WVdKc1pXUkpibVJwWTJWelVtVm1JR1p2Y2lCaGNuSnZkeUJyWlhrZ2JtRjJhV2RoZEdsdmJseHVJQ0JqYjI1emRDQnRZWGhQY0hScGIyNVhhV1IwYUNBOUlITmxkSFZ3UkhKdmNHUnZkMjVCWTJObGMzTnBZbWxzYVhSNUtHWnBiSFJsY21Wa1JISnZjRVJ2ZDI1SmRHVnRjeXdnYkdsemRGSmxaaXdnWkdsellXSnNaV1JKYm1ScFkyVnpVbVZtS1R0Y2JseHVJQ0JqYjI1emRDQm9ZVzVrYkdWR1pYUmphRTl3ZEdsdmJuTWdQU0IxYzJWRFlXeHNZbUZqYXloY2JpQWdJQ0JoYzNsdVl5QW9hVzV3ZFhSVWVYQmxPaUJCWkVodlkwbHVjSFYwVkhsd1pTa2dQVDRnZTF4dUlDQWdJQ0FnYzJWMFQzQjBhVzl1YzBWeWNtOXlLR1poYkhObEtUdGNiaUFnSUNBZ0lITmxkRTl3ZEdsdmJuTk1iMkZrYVc1bktIUnlkV1VwTzF4dUlDQWdJQ0FnYzJWMFQzQjBhVzl1Y3loYlhTazdYRzRnSUNBZ0lDQnNaWFFnYjNCMGFXOXVjem9nUVhKeVlYazhVMlZzWldOMFlXSnNaVlpoYkhWbFBITjBjbWx1Wno0K0lEMGdXMTA3WEc1Y2JpQWdJQ0FnSUhSeWVTQjdYRzRnSUNBZ0lDQWdJR2xtSUNocGJuQjFkRlI1Y0dVZ1BUMDlJQ2RyWlhrbktTQjdYRzRnSUNBZ0lDQWdJQ0FnYjNCMGFXOXVjeUE5SUdGM1lXbDBJRzF2WkdWc0xsOW5aWFJMWlhsektHNTFiR3dwTzF4dUlDQWdJQ0FnSUNCOUlHVnNjMlVnYVdZZ0tHbHVjSFYwVkhsd1pTQTlQVDBnSjI5d1pYSmhkRzl5SnlrZ2UxeHVJQ0FnSUNBZ0lDQWdJRzl3ZEdsdmJuTWdQU0J0YjJSbGJDNWZaMlYwVDNCbGNtRjBiM0p6S0NrN1hHNGdJQ0FnSUNBZ0lIMGdaV3h6WlNCcFppQW9hVzV3ZFhSVWVYQmxJRDA5UFNBbmRtRnNkV1VuS1NCN1hHNGdJQ0FnSUNBZ0lDQWdiM0IwYVc5dWN5QTlJR0YzWVdsMElHMXZaR1ZzTGw5blpYUldZV3gxWlhOR2IzSW9abWxzZEdWeUlTazdYRzRnSUNBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnSUNBdkx5QnBaaUJwYm5CMWRDQjBlWEJsSUdOb1lXNW5aV1FnWW1WbWIzSmxJR1psZEdOb0lHTnZiWEJzWlhSbFpDQjBhR1Z1SUdGaWIzSjBJSFZ3WkdGMGFXNW5JRzl3ZEdsdmJuTmNiaUFnSUNBZ0lDQWdMeThnSUNCMGFHbHpJR05oYmlCallYVnpaU0J5WVdObElHTnZibVJwZEdsdmJpQmhibVFnY21WMGRYSnVJR2x1WTI5eWNtVmpkQ0J2Y0hScGIyNXpJSGRvWlc0Z2FXNXdkWFFnZEhsd1pTQmphR0Z1WjJWa1hHNGdJQ0FnSUNBZ0lHbG1JQ2htYVd4MFpYSkpibkIxZEZSNWNHVlNaV1l1WTNWeWNtVnVkQ0FoUFQwZ2FXNXdkWFJVZVhCbEtTQjdYRzRnSUNBZ0lDQWdJQ0FnY21WMGRYSnVPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0FnSUhObGRFOXdkR2x2Ym5Nb2IzQjBhVzl1Y3lrN1hHNGdJQ0FnSUNBZ0lHbG1JQ2h2Y0hScGIyNXpXekJkUHk1bmNtOTFjQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lITmxkRUZqZEdsMlpVbHVaR1Y0S0RFcE8xeHVJQ0FnSUNBZ0lDQjlJR1ZzYzJVZ2UxeHVJQ0FnSUNBZ0lDQWdJSE5sZEVGamRHbDJaVWx1WkdWNEtEQXBPMXh1SUNBZ0lDQWdJQ0I5WEc0Z0lDQWdJQ0I5SUdOaGRHTm9JQ2hsS1NCN1hHNGdJQ0FnSUNBZ0lITmxkRTl3ZEdsdmJuTkZjbkp2Y2loMGNuVmxLVHRjYmlBZ0lDQWdJSDFjYmlBZ0lDQWdJSE5sZEU5d2RHbHZibk5NYjJGa2FXNW5LR1poYkhObEtUdGNiaUFnSUNCOUxGeHVJQ0FnSUZ0bWFXeDBaWElzSUcxdlpHVnNYVnh1SUNBcE8xeHVYRzRnSUdOdmJuTjBJSEp2ZDFacGNuUjFZV3hwZW1WeUlEMGdkWE5sVm1seWRIVmhiR2w2WlhJb2UxeHVJQ0FnSUdOdmRXNTBPaUJtYVd4MFpYSmxaRVJ5YjNCRWIzZHVTWFJsYlhNdWJHVnVaM1JvTEZ4dUlDQWdJR2RsZEZOamNtOXNiRVZzWlcxbGJuUTZJQ2dwSUQwK0lISmxabk11Wm14dllYUnBibWN1WTNWeWNtVnVkQ3hjYmlBZ0lDQmxjM1JwYldGMFpWTnBlbVU2SUNocGJtUmxlQ2tnUFQ1Y2JpQWdJQ0FnSUdacGJIUmxjbVZrUkhKdmNFUnZkMjVKZEdWdGMxdHBibVJsZUYwdVpHVnpZM0pwY0hScGIyNGdQeUJXU1ZKVVZVRk1YMHhKVTFSZlNWUkZUVjlJUlVsSFNGUmZWMGxVU0Y5RVJWTkRVa2xRVkVsUFRpQTZJRlpKVWxSVlFVeGZURWxUVkY5SlZFVk5YMGhGU1VkSVZDeGNiaUFnSUNCdmRtVnljMk5oYmpvZ1ZrbFNWRlZCVEY5TVNWTlVYMDlXUlZKVFEwRk9MRnh1SUNCOUtUdGNibHh1SUNBdkwxeHVJQ0F2THlCTFpYbGliMkZ5WkNCcGJuUmxjbUZqZEdsdmJuTmNiaUFnTHk5Y2JseHVJQ0JqYjI1emRDQm9ZVzVrYkdWQ1lXTnJjM0JoWTJWSmJuQjFkQ0E5SUhWelpVTmhiR3hpWVdOcktGeHVJQ0FnSUNobGRtVnVkRG9nVW1WaFkzUXVTMlY1WW05aGNtUkZkbVZ1ZEN3Z2JYVnNkR2xXWVd4MVpVVmthWFE2SUdKdmIyeGxZVzRwSUQwK0lIdGNiaUFnSUNBZ0lHbG1JQ2hsZG1WdWRDNXJaWGtnUFQwOUlDZENZV05yYzNCaFkyVW5JQ1ltSUNGcGJuQjFkRlpoYkhWbEtTQjdYRzRnSUNBZ0lDQWdJR2xtSUNobWFXeDBaWEpKYm5CMWRGUjVjR1VnUFQwOUlDZDJZV3gxWlNjcElIdGNiaUFnSUNBZ0lDQWdJQ0JwWmlBb2JYVnNkR2xXWVd4MVpVVmthWFFwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJR2xtSUNobWFXeDBaWEpOZFd4MGFWWmhiSFZsY3k1c1pXNW5kR2dwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnYzJWMFJtbHNkR1Z5VFhWc2RHbFdZV3gxWlhNb0tHbDBaVzF6S1NBOVBpQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ2RYQmtZWFJsWkNBOUlGc3VMaTVwZEdWdGMxMDdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdkWEJrWVhSbFpDNXpjR3hwWTJVb0xURXNJREVwTzF4dVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2NtVjBkWEp1SUhWd1pHRjBaV1E3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJSDBwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0J5WlhSMWNtNDdYRzRnSUNBZ0lDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdJQ0FnSUhObGRFbHVjSFYwVkhsd1pTZ25iM0JsY21GMGIzSW5LVHRjYmlBZ0lDQWdJQ0FnSUNCeVpYUjFjbTQ3WEc0Z0lDQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ0lDQXZMeUJtYjJOMWN5QmlZV05ySUc5dUlHRnNkMkY1SUhkcGNDQnBibkIxZENCM2FHVnVJSGx2ZFNCa1pXeGxkR1VnWm1sc2RHVnlJSGRwZEdnZ1ltRmphM053WVdObFhHNGdJQ0FnSUNBZ0lHWnZZM1Z6VDI1WGFYQkpibkIxZEZKbFpqOHVLQ2s3WEc1Y2JpQWdJQ0FnSUNBZ2JXOWtaV3d1WDJoaGJtUnNaVU52YldKdlltOTRRbUZqYTNOd1lXTmxLR1pwYkhSbGNpRXBPMXh1WEc0Z0lDQWdJQ0FnSUdsbUlDaHBjMEZzZDJGNWMxZHBjQ2tnZTF4dUlDQWdJQ0FnSUNBZ0lHaGhibVJzWlZKbGMyVjBWMmx3S0NrN1hHNGdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lIMWNiaUFnSUNCOUxGeHVJQ0FnSUZ0Y2JpQWdJQ0FnSUdsdWNIVjBWbUZzZFdVc1hHNGdJQ0FnSUNCbWFXeDBaWEpKYm5CMWRGUjVjR1VzWEc0Z0lDQWdJQ0J0YjJSbGJDeGNiaUFnSUNBZ0lHWnBiSFJsY2l4Y2JpQWdJQ0FnSUdselFXeDNZWGx6VjJsd0xGeHVJQ0FnSUNBZ1ptbHNkR1Z5VFhWc2RHbFdZV3gxWlhNdWJHVnVaM1JvTEZ4dUlDQWdJQ0FnYUdGdVpHeGxVbVZ6WlhSWGFYQXNYRzRnSUNBZ0lDQm1iMk4xYzA5dVYybHdTVzV3ZFhSU1pXWXNYRzRnSUNBZ1hWeHVJQ0FwTzF4dVhHNGdJR052Ym5OMElHaGhibVJzWlZSaFlrbHVjSFYwSUQwZ2RYTmxRMkZzYkdKaFkyc29YRzRnSUNBZ0tHVjJaVzUwT2lCU1pXRmpkQzVMWlhsaWIyRnlaRVYyWlc1MExDQnRkV3gwYVZaaGJIVmxSV1JwZEQ4NklHSnZiMnhsWVc0cElEMCtJSHRjYmlBZ0lDQWdJQzh2SUdOb1lXNW5aU0JtYVd4MFpYSWdkRzhnZG1sbGR5QnRiMlJsSUhkb1pXNGdibUYyYVdkaGRHbHVaeUJoZDJGNUlIZHBkR2dnVkdGaUlHdGxlVnh1SUNBZ0lDQWdMeThnSUhSb2FYTWdhWE1nYm1WbFpHVmtJR0psWTJGMWMyVWdkWE5sUkdsemJXbHpjeUJ2Ym14NUlISmxZV04wY3lCMGJ5QnRiM1Z6WldSdmQyNWNiaUFnSUNBZ0lHbG1JQ2hsZG1WdWRDNXJaWGtnUFQwOUlDZFVZV0luSUNZbUlDRmxkbVZ1ZEM1emFHbG1kRXRsZVNrZ2UxeHVJQ0FnSUNBZ0lDQnBaaUFvYlhWc2RHbFdZV3gxWlVWa2FYUXBJSHRjYmlBZ0lDQWdJQ0FnSUNBdkx5QmpiMjF0YVhRZ2JYVnNkR2tnZG1Gc2RXVWdabWxzZEdWeUlIWmhiSFZsY3lCdmJpQjBZV0lnWVhkaGVWeHVJQ0FnSUNBZ0lDQWdJR1YyWlc1MExuQnlaWFpsYm5SRVpXWmhkV3gwS0NrN1hHNGdJQ0FnSUNBZ0lDQWdhR0Z1Wkd4bFRYVnNkR2xXWVd4MVpVWnBiSFJsY2tOdmJXMXBkQ2h0YjJSbGJDd2dabWxzZEdWeUlTd2dabWxzZEdWeVRYVnNkR2xXWVd4MVpYTXBPMXh1SUNBZ0lDQWdJQ0FnSUhKbFpuTXVaRzl0VW1WbVpYSmxibU5sTG1OMWNuSmxiblEvTG1adlkzVnpLQ2s3WEc0Z0lDQWdJQ0FnSUgxY2JseHVJQ0FnSUNBZ0lDQm9ZVzVrYkdWRGFHRnVaMlZXYVdWM1RXOWtaVDh1S0NrN1hHNGdJQ0FnSUNBZ0lHaGhibVJzWlZKbGMyVjBWMmx3S0NrN1hHNGdJQ0FnSUNCOVhHNGdJQ0FnZlN4Y2JpQWdJQ0JiWEc0Z0lDQWdJQ0JtYVd4MFpYSXNYRzRnSUNBZ0lDQm1hV3gwWlhKTmRXeDBhVlpoYkhWbGN5eGNiaUFnSUNBZ0lHaGhibVJzWlVOb1lXNW5aVlpwWlhkTmIyUmxMRnh1SUNBZ0lDQWdhR0Z1Wkd4bFRYVnNkR2xXWVd4MVpVWnBiSFJsY2tOdmJXMXBkQ3hjYmlBZ0lDQWdJR2hoYm1Sc1pWSmxjMlYwVjJsd0xGeHVJQ0FnSUNBZ2JXOWtaV3dzWEc0Z0lDQWdJQ0J5WldaekxtUnZiVkpsWm1WeVpXNWpaU3hjYmlBZ0lDQmRYRzRnSUNrN1hHNWNiaUFnWTI5dWMzUWdhR0Z1Wkd4bFUyaHBablJVWVdKSmJuQjFkQ0E5SUhWelpVTmhiR3hpWVdOcktGeHVJQ0FnSUNobGRtVnVkRG9nVW1WaFkzUXVTMlY1WW05aGNtUkZkbVZ1ZEN3Z2JYVnNkR2xXWVd4MVpVVmthWFEvT2lCaWIyOXNaV0Z1S1NBOVBpQjdYRzRnSUNBZ0lDQnBaaUFvWlhabGJuUXVhMlY1SUQwOVBTQW5WR0ZpSnlBbUppQmxkbVZ1ZEM1emFHbG1kRXRsZVNrZ2UxeHVJQ0FnSUNBZ0lDQnBaaUFvYlhWc2RHbFdZV3gxWlVWa2FYUXBJSHRjYmlBZ0lDQWdJQ0FnSUNBdkx5QmpiMjF0YVhRZ2JYVnNkR2tnZG1Gc2RXVWdabWxzZEdWeUlIWmhiSFZsY3lCdmJpQnphR2xtZENCMFlXSWdZWGRoZVZ4dUlDQWdJQ0FnSUNBZ0lHVjJaVzUwTG5CeVpYWmxiblJFWldaaGRXeDBLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ2FHRnVaR3hsVFhWc2RHbFdZV3gxWlVacGJIUmxja052YlcxcGRDaHRiMlJsYkN3Z1ptbHNkR1Z5SVN3Z1ptbHNkR1Z5VFhWc2RHbFdZV3gxWlhNc0lIUnlkV1VwTzF4dUlDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lHaGhibVJzWlVOb1lXNW5aVlpwWlhkTmIyUmxQeTRvS1R0Y2JpQWdJQ0FnSUNBZ2FHRnVaR3hsVW1WelpYUlhhWEFvS1R0Y2JpQWdJQ0FnSUgxY2JpQWdJQ0I5TEZ4dUlDQWdJRnRtYVd4MFpYSXNJR1pwYkhSbGNrMTFiSFJwVm1Gc2RXVnpMQ0JvWVc1a2JHVkRhR0Z1WjJWV2FXVjNUVzlrWlN3Z2FHRnVaR3hsVFhWc2RHbFdZV3gxWlVacGJIUmxja052YlcxcGRDd2dhR0Z1Wkd4bFVtVnpaWFJYYVhBc0lHMXZaR1ZzWFZ4dUlDQXBPMXh1WEc0Z0lHTnZibk4wSUdoaGJtUnNaVVZ1ZEdWeVNXNXdkWFFnUFNCMWMyVkRZV3hzWW1GamF5aGNiaUFnSUNBb1pYWmxiblE2SUZKbFlXTjBMa3RsZVdKdllYSmtSWFpsYm5Rc0lHMTFiSFJwVm1Gc2RXVkZaR2wwUHpvZ1ltOXZiR1ZoYmlrZ1BUNGdlMXh1SUNBZ0lDQWdhV1lnS0dWMlpXNTBMbXRsZVNBOVBUMGdKMFZ1ZEdWeUp5QW1KaUJoWTNScGRtVkpibVJsZUNBaFBTQnVkV3hzS1NCN1hHNGdJQ0FnSUNBZ0lDOHZJSE5oWm1WbmRXRnlaQ0JtYjNJZ2JtOXVJR1Y0YVhOMGFXNW5JR2wwWlcxelhHNGdJQ0FnSUNBZ0lDOHZJRzV2ZEdVNklHTjFjM1J2YlNCcGRHVnRJR2x6SUdGa1pHVmtJSFJ2SUdacGJIUmxjbVZrUkhKdmNFUnZkMjVKZEdWdGN5QnBaaUJoYkd4dmQyVmtYRzRnSUNBZ0lDQWdJR2xtSUNnaFptbHNkR1Z5WldSRWNtOXdSRzkzYmtsMFpXMXpXMkZqZEdsMlpVbHVaR1Y0WFNrZ2UxeHVJQ0FnSUNBZ0lDQWdJSEpsZEhWeWJqdGNiaUFnSUNBZ0lDQWdmVnh1SUNBZ0lDQWdJQ0JqYjI1emRDQnpaV3hsWTNSbFpFbDBaVzBnUFNCbWFXeDBaWEpsWkVSeWIzQkViM2R1U1hSbGJYTmJZV04wYVhabFNXNWtaWGhkTzF4dVhHNGdJQ0FnSUNBZ0lHbG1JQ2h0ZFd4MGFWWmhiSFZsUldScGRDa2dlMXh1SUNBZ0lDQWdJQ0FnSUdoaGJtUnNaVXh2WTJGc1RYVnNkR2xXWVd4MVpVTm9ZVzVuWlNoelpXeGxZM1JsWkVsMFpXMHBPMXh1SUNBZ0lDQWdJQ0FnSUhObGRFbHVjSFYwVm1Gc2RXVW9KeWNwTzF4dUlDQWdJQ0FnSUNCOUlHVnNjMlVnZTF4dUlDQWdJQ0FnSUNBZ0lHMXZaR1ZzTGw5MWNHUmhkR1ZHYVd4MFpYSW9YRzRnSUNBZ0lDQWdJQ0FnSUNCbWFXeDBaWEloTEZ4dUlDQWdJQ0FnSUNBZ0lDQWdaMlZ1WlhKaGRHVkdhV3gwWlhKVmNHUmhkR1ZRWVhsc2IyRmtLSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdabWxzZEdWeVNXNXdkWFJVZVhCbExGeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNCcGRHVnRPaUJ6Wld4bFkzUmxaRWwwWlcwc1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUdacGJIUmxjam9nWm1sc2RHVnlJU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdjMlYwUm1sc2RHVnlUWFZzZEdsV1lXeDFaWE1zWEc0Z0lDQWdJQ0FnSUNBZ0lDQjlLVnh1SUNBZ0lDQWdJQ0FnSUNrN1hHNWNiaUFnSUNBZ0lDQWdJQ0J3YjNCMWJHRjBaVWx1Y0hWMFZtRnNkV1ZQYmtsdWNIVjBWSGx3WlZOM2FYUmphQ2g3WEc0Z0lDQWdJQ0FnSUNBZ0lDQndiM0IxYkdGMFpVbHVjSFYwVDI1RlpHbDBMRnh1SUNBZ0lDQWdJQ0FnSUNBZ2FYUmxiVG9nYzJWc1pXTjBaV1JKZEdWdExGeHVJQ0FnSUNBZ0lDQWdJQ0FnWm1sc2RHVnlTVzV3ZFhSVWVYQmxMRnh1SUNBZ0lDQWdJQ0FnSUNBZ2MyVjBTVzV3ZFhSV1lXeDFaU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lHWnBiSFJsY2l4Y2JpQWdJQ0FnSUNBZ0lDQjlLVHRjYmx4dUlDQWdJQ0FnSUNBZ0lITjNhWFJqYUZSdlRtVjRkRWx1Y0hWMFZIbHdaU2hjYmlBZ0lDQWdJQ0FnSUNBZ0lHWnBiSFJsY2tsdWNIVjBWSGx3WlN4Y2JpQWdJQ0FnSUNBZ0lDQWdJSE5sZEVsdWNIVjBWSGx3WlN4Y2JpQWdJQ0FnSUNBZ0lDQWdJR2hoYm1Sc1pVTm9ZVzVuWlZacFpYZE5iMlJsTEZ4dUlDQWdJQ0FnSUNBZ0lDQWdjbVZtY3k1a2IyMVNaV1psY21WdVkyVXVZM1Z5Y21WdWRDeGNiaUFnSUNBZ0lDQWdJQ0FnSUM4dklIQnlaWFpsYm5ScGJtY2dabTlqZFhNZ2IyNGdabWxzZEdWeUlIQnBiR3dnYjI1c2VTQjNhR1Z1SUd4aGMzUWdabWxzZEdWeUlHWnZjaUJpWlhSMFpYSWdZbUZqYTNOd1lXTmxJR1Y0Y0dWeWFXVnVZMlZjYmlBZ0lDQWdJQ0FnSUNBZ0lHbHpUR0Z6ZEVacGJIUmxjaUEvSUdaaGJITmxJRG9nZFc1a1pXWnBibVZrWEc0Z0lDQWdJQ0FnSUNBZ0tUdGNiaUFnSUNBZ0lDQWdJQ0J6WlhSQlkzUnBkbVZKYm1SbGVDaHVkV3hzS1R0Y2JpQWdJQ0FnSUNBZ0lDQnBaaUFvYVhOTVlYTjBSbWxzZEdWeUtTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNCbWIyTjFjMDl1VjJsd1NXNXdkWFJTWldZL0xpZ3BPMXh1SUNBZ0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUNBZ2ZWeHVJQ0FnSUNBZ2ZWeHVJQ0FnSUgwc1hHNGdJQ0FnVzF4dUlDQWdJQ0FnWVdOMGFYWmxTVzVrWlhnc1hHNGdJQ0FnSUNCbWFXeDBaWEpsWkVSeWIzQkViM2R1U1hSbGJYTXNYRzRnSUNBZ0lDQm9ZVzVrYkdWTWIyTmhiRTExYkhScFZtRnNkV1ZEYUdGdVoyVXNYRzRnSUNBZ0lDQnRiMlJsYkN4Y2JpQWdJQ0FnSUdacGJIUmxjaXhjYmlBZ0lDQWdJR1pwYkhSbGNrbHVjSFYwVkhsd1pTeGNiaUFnSUNBZ0lIQnZjSFZzWVhSbFNXNXdkWFJQYmtWa2FYUXNYRzRnSUNBZ0lDQm9ZVzVrYkdWRGFHRnVaMlZXYVdWM1RXOWtaU3hjYmlBZ0lDQWdJSEpsWm5NdVpHOXRVbVZtWlhKbGJtTmxMRnh1SUNBZ0lDQWdhWE5NWVhOMFJtbHNkR1Z5TEZ4dUlDQWdJQ0FnWm05amRYTlBibGRwY0VsdWNIVjBVbVZtTEZ4dUlDQWdJRjFjYmlBZ0tUdGNibHh1SUNCamIyNXpkQ0JvWVc1a2JHVkZaR2wwVFhWc2RHbFdZV3gxWlZCcGJHd2dQU0IxYzJWRFlXeHNZbUZqYXloY2JpQWdJQ0FvZG1Gc2RXVTZJRk5sYkdWamRHRmliR1ZXWVd4MVpUeHpkSEpwYm1jK0tTQTlQaUI3WEc0Z0lDQWdJQ0JqYjI1emRDQjJZV3gxWlV4aFltVnNJRDBnZG1Gc2RXVXViR0ZpWld3Z2ZId2dkbUZzZFdVdWRtRnNkV1VoTzF4dUlDQWdJQ0FnYzJWMFJtbHNkR1Z5VFhWc2RHbFdZV3gxWlhNb0tIQnlaWFlwSUQwK0lIQnlaWFl1Wm1sc2RHVnlLQ2hwZEdWdEtTQTlQaUJwZEdWdExuWmhiSFZsSUNFOVBTQjJZV3gxWlM1MllXeDFaU2twTzF4dUlDQWdJQ0FnYzJWMFVISmxkbVZ1ZEVacGJIUmxjbWx1WnloMGNuVmxLVHRjYmlBZ0lDQWdJSE5sZEVsdWNIVjBWbUZzZFdVb2RtRnNkV1ZNWVdKbGJDazdYRzRnSUNBZ0lDQnlaV1p6TG1SdmJWSmxabVZ5Wlc1alpTNWpkWEp5Wlc1MFB5NW1iMk4xY3lncE8xeHVJQ0FnSUNBZ2MyVjBWR2x0Wlc5MWRDZ29LU0E5UGlCN1hHNGdJQ0FnSUNBZ0lISmxabk11Wkc5dFVtVm1aWEpsYm1ObExtTjFjbkpsYm5RL0xuTmxiR1ZqZENncE8xeHVJQ0FnSUNBZ2ZTazdYRzRnSUNBZ2ZTeGNiaUFnSUNCYmNtVm1jeTVrYjIxU1pXWmxjbVZ1WTJWZFhHNGdJQ2s3WEc1Y2JpQWdMeTljYmlBZ0x5OGdSV1ptWldOMGMxeHVJQ0F2TDF4dVhHNGdJSFZ6WlVWbVptVmpkQ2dvS1NBOVBpQjdYRzRnSUNBZ0x5OGdabVYwWTJnZ2IzQjBhVzl1Y3lCM2FHVnVJR1J5YjNCa2IzZHVJR2x6SUc5d1pXNWxaQzVjYmlBZ0lDQnBaaUFvYjNCbGJpa2dlMXh1SUNBZ0lDQWdhR0Z1Wkd4bFJtVjBZMmhQY0hScGIyNXpLR1pwYkhSbGNrbHVjSFYwVkhsd1pTazdYRzRnSUNBZ2ZWeHVJQ0FnSUM4dklHVnpiR2x1ZEMxa2FYTmhZbXhsTFc1bGVIUXRiR2x1WlNCeVpXRmpkQzFvYjI5cmN5OWxlR2hoZFhOMGFYWmxMV1JsY0hOY2JpQWdmU3dnVzI5d1pXNHNJR1pwYkhSbGNrbHVjSFYwVkhsd1pWMHBPMXh1WEc0Z0lDOHZJSGRvWlc0Z2JtOTBJR2x1SUhkcGNDQnRiMlJsSUhSb2FYTWdhWE1nZEdobElIQnZhVzUwSUc5bUlITjNhWFJqYUdsdVp5Qm1jbTl0SUhacFpYY2dkRzhnWldScGRDQnRiMlJsWEc0Z0lDOHZJQ0FnSUdGdVpDQnBiaUIwYUdseklHTmhjMlVnZDJVZ1pHVm1ZWFZzZENCMGJ5QW5kbUZzZFdVbklHbHVjSFYwSUhSNWNHVWdZVzVrSUdadlkzVnpJR2x1Y0hWMFhHNGdJSFZ6WlVWbVptVmpkQ2dvS1NBOVBpQjdYRzRnSUNBZ2FXWWdLQ0ZwYzBGc2QyRjVjMWRwY0NrZ2UxeHVJQ0FnSUNBZ2FXWWdLR2hoYzAxMWJIUnBWbUZzZFdWUGNHVnlZWFJ2Y2lBbUppQm1hV3gwWlhJL0xuWmhiSFZsY3o4dWJHVnVaM1JvS1NCN1hHNGdJQ0FnSUNBZ0lHTnZibk4wSUcxMWJIUnBWbUZzZFdWUGNIUnBiMjV6SUQwZ0tHWnBiSFJsY2k1MllXeDFaWE1nWVhNZ2MzUnlhVzVuVzEwcExuSmxaSFZqWlR4QmNuSmhlVHhUWld4bFkzUmhZbXhsVm1Gc2RXVThjM1J5YVc1blBqNCtLRnh1SUNBZ0lDQWdJQ0FnSUNoaFkyTXNJSFpoYkhWbExDQnBLU0E5UGlCYlhHNGdJQ0FnSUNBZ0lDQWdJQ0F1TGk1aFkyTXNYRzRnSUNBZ0lDQWdJQ0FnSUNCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUd4aFltVnNPaUJtYVd4MFpYSXVkbUZzZFdWTVlXSmxiSE0vTGx0cFhTQjhmQ0IyWVd4MVpTeGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ2RtRnNkV1U2SUhaaGJIVmxMRnh1SUNBZ0lDQWdJQ0FnSUNBZ2ZTeGNiaUFnSUNBZ0lDQWdJQ0JkTEZ4dUlDQWdJQ0FnSUNBZ0lGdGRYRzRnSUNBZ0lDQWdJQ2s3WEc0Z0lDQWdJQ0FnSUM4dklIQnZjSFZzWVhSbElHWnBiSFJsY2lCdGRXeDBhU0IyWVd4MVpYTWdkRzhnYkc5allXd2djM1JoZEdVZ2IyNGdjR2xzYkNCbFpHbDBJR1Z1ZEdWeVhHNGdJQ0FnSUNBZ0lITmxkRVpwYkhSbGNrMTFiSFJwVm1Gc2RXVnpLRzExYkhScFZtRnNkV1ZQY0hScGIyNXpLVHRjYmlBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnTHk4Z2NHOXdkV3hoZEdVZ2FXNXdkWFFnZDJobGJpQnpaV3hsWTNScGJtY2djR2xzYkNCbWIzSWdaV1JwZEZ4dUlDQWdJQ0FnTHk4Z0lDQjBhR2x6SUdGMmIybGtjeUJ3YjNCMWJHRjBhVzVuSUdsdWNIVjBJR1IxY21sdVp5QmtaV3hsZEdVZ2QybDBhQ0JpWVdOcmMzQmhZMlZjYmlBZ0lDQWdJR2xtSUNnaGFHRnpUWFZzZEdsV1lXeDFaVTl3WlhKaGRHOXlJQ1ltSUhCdmNIVnNZWFJsU1c1d2RYUlBia1ZrYVhRcElIdGNiaUFnSUNBZ0lDQWdjMlYwU1c1d2RYUldZV3gxWlNobWFXeDBaWEkvTG5aaGJIVmxJSHg4SUNjbktUdGNiaUFnSUNBZ0lDQWdjMlYwVkdsdFpXOTFkQ2dvS1NBOVBpQjdYRzRnSUNBZ0lDQWdJQ0FnY21WbWN5NWtiMjFTWldabGNtVnVZMlV1WTNWeWNtVnVkRDh1YzJWc1pXTjBLQ2s3WEc0Z0lDQWdJQ0FnSUgwcE8xeHVJQ0FnSUNBZ2ZWeHVYRzRnSUNBZ0lDQnlaV1p6TG1SdmJWSmxabVZ5Wlc1alpTNWpkWEp5Wlc1MFB5NW1iMk4xY3lncE8xeHVJQ0FnSUgxY2JpQWdJQ0F2THlCbGMyeHBiblF0WkdsellXSnNaUzF1WlhoMExXeHBibVVnY21WaFkzUXRhRzl2YTNNdlpYaG9ZWFZ6ZEdsMlpTMWtaWEJ6WEc0Z0lIMHNJRnRkS1R0Y2JseHVJQ0F2THlCMGFHbHpJR2x6SUhKbGNYVnBjbVZrSUc5dWJIa2dkMmwwYUNCdGRXeDBhU0IyWVd4MVpTQnpaV3hsWTNRZ2FXNGdiM0prWlhJZ2RHOGdkWEJrWVhSbElIQnZjMmwwYVc5dVhHNGdJQzh2SUNBZ0lHOW1JSFJvWlNCdGRXeDBhU0IyWVd4MVpTQmhjSEJzZVNCaWRYUjBiMjVjYmlBZ2RYTmxSV1ptWldOMEtDZ3BJRDArSUh0Y2JpQWdJQ0JwWmlBb2FYTk5kV3gwYVZaaGJIVmxSV1JwZENBbUppQm1hV3gwWlhKTmRXeDBhVlpoYkhWbGN5a2dlMXh1SUNBZ0lDQWdjMlYwVkdsdFpXOTFkQ2dvS1NBOVBpQnpaWFJHYjNKalpWSmxabkpsYzJnb2UzMHBLVHRjYmlBZ0lDQjlYRzRnSUgwc0lGdG1hV3gwWlhKTmRXeDBhVlpoYkhWbGN5d2dhWE5OZFd4MGFWWmhiSFZsUldScGRGMHBPMXh1WEc0Z0lDOHZJSE41Ym1Ob0lHWnBiSFJsY2tsdWNIVjBWSGx3WlZKbFppQjNhWFJvSUdacGJIUmxja2x1Y0hWMFZIbHdaU0J6ZEdGMFpWeHVJQ0IxYzJWTVlYbHZkWFJGWm1abFkzUW9LQ2tnUFQ0Z2UxeHVJQ0FnSUdsbUlDaG1hV3gwWlhKSmJuQjFkRlI1Y0dWU1pXWXVZM1Z5Y21WdWRDa2dlMXh1SUNBZ0lDQWdabWxzZEdWeVNXNXdkWFJVZVhCbFVtVm1MbU4xY25KbGJuUWdQU0JtYVd4MFpYSkpibkIxZEZSNWNHVTdYRzRnSUNBZ2ZWeHVJQ0I5TENCYlptbHNkR1Z5U1c1d2RYUlVlWEJsWFNrN1hHNWNiaUFnZFhObFRHRjViM1YwUldabVpXTjBLQ2dwSUQwK0lIdGNiaUFnSUNBdkx5QjBhR2x6SUdseklHNWxaV1JsWkNCMGJ5QnpZM0p2Ykd3Z2RtbHlkSFZoYkNCc2FYTjBJSFJ2SUhSb1pTQndiM05wZEdsdmJpQnZaaUJqZFhKeVpXNTBiSGtnYzJWc1pXTjBaV1JjYmlBZ0lDQXZMeUFnSUNCa2NtOXdaRzkzYmlCcGRHVnRJSGRvWlc0Z2JtRjJhV2RoZEdsdVp5QjNhWFJvSUdGeWNtOTNJSFZ3TDJSdmQyNGdhMlY1Y3lCMGJ5QmxibVF2YzNSaGNuUWdiMllnYkdsemRGeHVJQ0FnSUdsbUlDaGNiaUFnSUNBZ0lHRmpkR2wyWlVsdVpHVjRJQ0U5UFNCdWRXeHNJQ1ltWEc0Z0lDQWdJQ0J5YjNkV2FYSjBkV0ZzYVhwbGNpNXlZVzVuWlNBbUpseHVJQ0FnSUNBZ0tHRmpkR2wyWlVsdVpHVjRJRDRnY205M1ZtbHlkSFZoYkdsNlpYSXVjbUZ1WjJVL0xtVnVaRWx1WkdWNElIeDhJR0ZqZEdsMlpVbHVaR1Y0SUR3Z2NtOTNWbWx5ZEhWaGJHbDZaWEl1Y21GdVoyVS9Mbk4wWVhKMFNXNWtaWGdwWEc0Z0lDQWdLU0I3WEc0Z0lDQWdJQ0J5YjNkV2FYSjBkV0ZzYVhwbGNpNXpZM0p2Ykd4VWIwbHVaR1Y0S0dGamRHbDJaVWx1WkdWNEtUdGNiaUFnSUNCOVhHNGdJSDBzSUZ0aFkzUnBkbVZKYm1SbGVDd2djbTkzVm1seWRIVmhiR2w2WlhKZEtUdGNibHh1SUNCamIyNXpkQ0JyWlhsTVlXSmxiQ0E5SUdacGJIUmxjajh1YTJWNVRHRmlaV3dnUHo4Z1ptbHNkR1Z5UHk1clpYazdYRzVjYmlBZ2NtVjBkWEp1SUNoY2JpQWdJQ0E4WkdsMklHTnNZWE56VG1GdFpUMTdjM1I1YkdWekxtTnZiV0p2WW05NFYzSmhjSEJsY24wK1hHNGdJQ0FnSUNCN1ptbHNkR1Z5SUQ4Z0tGeHVJQ0FnSUNBZ0lDQThaR2wySUdOc1lYTnpUbUZ0WlQxN2MzUjViR1Z6TG5CcGJHeFhjbUZ3Y0dWeWZUNWNiaUFnSUNBZ0lDQWdJQ0I3THlvZ1JtbHNkR1Z5SUd0bGVTQndhV3hzSUhKbGJtUmxjaUFxTDMxY2JpQWdJQ0FnSUNBZ0lDQjdabWxzZEdWeVB5NXJaWGtnUHlBOFpHbDJJR05zWVhOelRtRnRaVDE3WTNnb2MzUjViR1Z6TG1KaGMyVlFhV3hzTENCemRIbHNaWE11YTJWNVVHbHNiQ2w5UG50clpYbE1ZV0psYkgwOEwyUnBkajRnT2lCdWRXeHNmVnh1SUNBZ0lDQWdJQ0FnSUhzdktpQkdhV3gwWlhJZ2IzQmxjbUYwYjNJZ2NHbHNiQ0J5Wlc1a1pYSWdLaTk5WEc0Z0lDQWdJQ0FnSUNBZ2UyWnBiSFJsY2o4dWEyVjVJQ1ltSUdacGJIUmxjajh1YjNCbGNtRjBiM0lnSmlZZ1ptbHNkR1Z5U1c1d2RYUlVlWEJsSUNFOVBTQW5iM0JsY21GMGIzSW5JRDhnS0Z4dUlDQWdJQ0FnSUNBZ0lDQWdQR1JwZGx4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0JwWkQxN2IzQmxjbUYwYjNKSlpHVnVkR2xtYVdWeWZWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNCamJHRnpjMDVoYldVOWUyTjRLSE4wZVd4bGN5NWlZWE5sVUdsc2JDd2djM1I1YkdWekxtOXdaWEpoZEc5eVVHbHNiQ3dnYjNCbGNtRjBiM0pKWkdWdWRHbG1hV1Z5S1gxY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnY205c1pUMWNJbUoxZEhSdmJsd2lYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lHRnlhV0V0YkdGaVpXdzlYQ0pGWkdsMElHWnBiSFJsY2lCdmNHVnlZWFJ2Y2x3aVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUhSaFlrbHVaR1Y0UFhzd2ZWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNCdmJrTnNhV05yUFhzb1pYWmxiblFwSUQwK0lIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmxkbVZ1ZEM1emRHOXdVSEp2Y0dGbllYUnBiMjRvS1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCelpYUkpibkIxZEZaaGJIVmxLQ2NuS1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCemQybDBZMmhKYm5CMWRGUjVjR1VvSjI5d1pYSmhkRzl5Snl3Z2MyVjBTVzV3ZFhSVWVYQmxMQ0IxYm1SbFptbHVaV1FzSUhKbFpuTXVaRzl0VW1WbVpYSmxibU5sTG1OMWNuSmxiblFwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0I5ZlZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0J2Ymt0bGVVUnZkMjQ5ZXlobGRtVnVkQ2tnUFQ0Z2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHaGhibVJzWlZOb2FXWjBWR0ZpU1c1d2RYUW9aWFpsYm5Rc0lHaGhjMDExYkhScFZtRnNkV1ZQY0dWeVlYUnZjaWs3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tHVjJaVzUwTG10bGVTQTlQVDBnSjBWdWRHVnlKeWtnZTF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2MyVjBTVzV3ZFhSV1lXeDFaU2duSnlrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnpkMmwwWTJoSmJuQjFkRlI1Y0dVb0oyOXdaWEpoZEc5eUp5d2djMlYwU1c1d2RYUlVlWEJsTENCMWJtUmxabWx1WldRc0lISmxabk11Wkc5dFVtVm1aWEpsYm1ObExtTjFjbkpsYm5RcE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMWNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ2ZYMWNiaUFnSUNBZ0lDQWdJQ0FnSUQ1Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnZTJacGJIUmxjaTV2Y0dWeVlYUnZjbjFjYmlBZ0lDQWdJQ0FnSUNBZ0lEd3ZaR2wyUGx4dUlDQWdJQ0FnSUNBZ0lDa2dPaUJ1ZFd4c2ZWeHVYRzRnSUNBZ0lDQWdJQ0FnUEdScGRpQnlaV1k5ZTIxMWJIUnBWbUZzZFdWUWFXeHNWM0poY0hCbGNsSmxabjArUEM5a2FYWStYRzRnSUNBZ0lDQWdJQ0FnZTJselRYVnNkR2xXWVd4MVpVVmthWFJjYmlBZ0lDQWdJQ0FnSUNBZ0lEOGdabWxzZEdWeVRYVnNkR2xXWVd4MVpYTXViV0Z3S0NocGRHVnRMQ0JwS1NBOVBpQW9YRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdQRTExYkhScFZtRnNkV1ZRYVd4c1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnJaWGs5ZTJBa2UybDBaVzB1ZG1Gc2RXVjlMU1I3YVgxZ2ZWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhWFJsYlQxN2FYUmxiWDFjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdsdVpHVjRQWHRwZlZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FHRnVaR3hsVW1WdGIzWmxUWFZzZEdsV1lXeDFaVDE3YUdGdVpHeGxVbVZ0YjNabFRYVnNkR2xXWVd4MVpYMWNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2hoYm1Sc1pVVmthWFJOZFd4MGFWWmhiSFZsVUdsc2JEMTdhR0Z1Wkd4bFJXUnBkRTExYkhScFZtRnNkV1ZRYVd4c2ZWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOCtYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDa3BYRzRnSUNBZ0lDQWdJQ0FnSUNBNklHNTFiR3g5WEc0Z0lDQWdJQ0FnSUR3dlpHbDJQbHh1SUNBZ0lDQWdLU0E2SUc1MWJHeDlYRzVjYmlBZ0lDQWdJRHhwYm5CMWRGeHVJQ0FnSUNBZ0lDQjdMaTR1WjJWMFVtVm1aWEpsYm1ObFVISnZjSE1vZTF4dUlDQWdJQ0FnSUNBZ0lISmxaam9nY21WbWN5NXpaWFJTWldabGNtVnVZMlVzWEc0Z0lDQWdJQ0FnSUNBZ2IyNURhR0Z1WjJVc1hHNGdJQ0FnSUNBZ0lDQWdkbUZzZFdVNklHbHVjSFYwVm1Gc2RXVXNYRzRnSUNBZ0lDQWdJQ0FnTHk4Z1pIbHVZVzFwWXlCd2JHRmpaV2h2YkdSbGNpQjBieUJrYVhOd2JHRjVJRzl3WlhKaGRHOXlJR0Z1WkM5dmNpQjJZV3gxWlNCcGJpQm1hV3gwWlhJZ1pXUnBkQ0J0YjJSbFhHNGdJQ0FnSUNBZ0lDQWdjR3hoWTJWb2IyeGtaWEk2SUdkbGJtVnlZWFJsVUd4aFkyVm9iMnhrWlhJb1ptbHNkR1Z5SVN3Z1ptbHNkR1Z5U1c1d2RYUlVlWEJsTENCcGMwMTFiSFJwVm1Gc2RXVkZaR2wwTENCcGMwRnNkMkY1YzFkcGNDa3NYRzRnSUNBZ0lDQWdJQ0FnSjJGeWFXRXRZWFYwYjJOdmJYQnNaWFJsSnpvZ0oyeHBjM1FuTEZ4dUlDQWdJQ0FnSUNBZ0lHOXVTMlY1Ukc5M2JpaGxkbVZ1ZENrZ2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnYVdZZ0tDRnZjR1Z1S1NCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUhObGRFOXdaVzRvZEhKMVpTazdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxkSFZ5Ymp0Y2JpQWdJQ0FnSUNBZ0lDQWdJSDFjYmx4dUlDQWdJQ0FnSUNBZ0lDQWdhV1lnS0dacGJIUmxja2x1Y0hWMFZIbHdaU0E5UFQwZ0oyOXdaWEpoZEc5eUp5a2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQm9ZVzVrYkdWVGFHbG1kRlJoWWtsdWNIVjBLR1YyWlc1MEtUdGNiaUFnSUNBZ0lDQWdJQ0FnSUgxY2JpQWdJQ0FnSUNBZ0lDQWdJR2hoYm1Sc1pVSmhZMnR6Y0dGalpVbHVjSFYwS0dWMlpXNTBMQ0JwYzAxMWJIUnBWbUZzZFdWRlpHbDBLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHaGhibVJzWlZSaFlrbHVjSFYwS0dWMlpXNTBMQ0JwYzAxMWJIUnBWbUZzZFdWRlpHbDBLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHaGhibVJzWlVWdWRHVnlTVzV3ZFhRb1pYWmxiblFzSUdselRYVnNkR2xXWVd4MVpVVmthWFFwTzF4dUlDQWdJQ0FnSUNBZ0lIMHNYRzRnSUNBZ0lDQWdJSDBwZlZ4dUlDQWdJQ0FnSUNCamJHRnpjMDVoYldVOWUyTjRLSE4wZVd4bGN5NXBibkIxZEZOMGVXeGxMQ0I3SUZ0emRIbHNaWE11Ykc5aFpHbHVaMGx1Y0hWMFVHRmtaR2x1WjEwNklDRnZjSFJwYjI1elRHOWhaR2x1WnlCOUtYMWNiaUFnSUNBZ0lDQWdiMjVEYkdsamF6MTdLR1YyWlc1MEtTQTlQaUI3WEc0Z0lDQWdJQ0FnSUNBZ1pYWmxiblF1YzNSdmNGQnliM0JoWjJGMGFXOXVLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ2MyVjBUM0JsYmloMGNuVmxLVHRjYmlBZ0lDQWdJQ0FnZlgxY2JpQWdJQ0FnSUNBZ2IyNUdiMk4xY3oxN0tDa2dQVDRnZTF4dUlDQWdJQ0FnSUNBZ0lITmxkRTl3Wlc0b2RISjFaU2s3WEc0Z0lDQWdJQ0FnSUgxOVhHNGdJQ0FnSUNBdlBseHVJQ0FnSUNBZ2UyOXdkR2x2Ym5OTWIyRmthVzVuSUQ4Z1BGTndhVzV1WlhJZ1kyeGhjM05PWVcxbFBYdHpkSGxzWlhNdWJHOWhaR2x1WjBsdVpHbGpZWFJ2Y24wZ2FXNXNhVzVsUFh0MGNuVmxmU0F2UGlBNklHNTFiR3g5WEc0Z0lDQWdJQ0E4Um14dllYUnBibWRRYjNKMFlXdytYRzRnSUNBZ0lDQWdJSHR2Y0dWdUlDWW1JQ2hjYmlBZ0lDQWdJQ0FnSUNBOFJteHZZWFJwYm1kR2IyTjFjMDFoYm1GblpYSWdZMjl1ZEdWNGREMTdZMjl1ZEdWNGRIMGdhVzVwZEdsaGJFWnZZM1Z6UFhzdE1YMGdkbWx6ZFdGc2JIbElhV1JrWlc1RWFYTnRhWE56SUcxdlpHRnNQWHRtWVd4elpYMCtYRzRnSUNBZ0lDQWdJQ0FnSUNBOFBseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBOFpHbDJYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjM1I1YkdVOWUzdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQzR1TG1ac2IyRjBhVzVuVTNSNWJHVnpMRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZDJsa2RHZzZJR0FrZTI5d2RHbHZibk5GY25KdmNpQS9JRVZTVWs5U1gxTlVRVlJGWDBSU1QxQkVUMWRPWDFkSlJGUklJRG9nYldGNFQzQjBhVzl1VjJsa2RHaDljSGhnTEZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2RISmhibk5tYjNKdE9pQnBjMDExYkhScFZtRnNkV1ZGWkdsMFhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRDhnWUhSeVlXNXpiR0YwWlNna2UyMTFiSFJwVm1Gc2RXVlFhV3hzVjNKaGNIQmxjbEpsWmk1amRYSnlaVzUwUHk1blpYUkNiM1Z1WkdsdVowTnNhV1Z1ZEZKbFkzUW9LUzVzWldaMElIeDhJREI5Y0hnc0lDUjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQW9jbVZtY3k1a2IyMVNaV1psY21WdVkyVXVZM1Z5Y21WdWREOHVaMlYwUW05MWJtUnBibWREYkdsbGJuUlNaV04wS0NrdVltOTBkRzl0SUh4OElEQXBJQ3NnTVRCY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5Y0hnZ0tXQmNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnT2lCbWJHOWhkR2x1WjFOMGVXeGxjeTUwY21GdWMyWnZjbTBzWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlgxY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCeVpXWTllM0psWm5NdWMyVjBSbXh2WVhScGJtZDlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdZMnhoYzNOT1lXMWxQWHR6ZEhsc1pYTXVaSEp2Y0dSdmQyNVhjbUZ3Y0dWeWZWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIUmhZa2x1WkdWNFBYc3RNWDFjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdQbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRHhrYVhaY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lITjBlV3hsUFh0N1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2hsYVdkb2REb2dZQ1I3Y205M1ZtbHlkSFZoYkdsNlpYSXVaMlYwVkc5MFlXeFRhWHBsS0NrZ2ZId2dWa2xTVkZWQlRGOU1TVk5VWDBsVVJVMWZTRVZKUjBoVWZYQjRZQ3dnTHk4Z1ptRnNiR0poWTJzZ2RHOGdNemh3ZUNCbWIzSWdiRzloWkdsdVp5OWxjbkp2Y2k5dWJ5QnZjSFJwYjI1eklIQnNZV05sYUc5c1pHVnljMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlgxY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIc3VMaTVuWlhSR2JHOWhkR2x1WjFCeWIzQnpLQ2w5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCMFlXSkpibVJsZUQxN0xURjlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdQbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZTI5d2RHbHZibk5NYjJGa2FXNW5JRDhnS0Z4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQThURzloWkdsdVowOXdkR2x2Ym5OUWJHRmpaV2h2YkdSbGNpQXZQbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnS1NBNklHOXdkR2x2Ym5ORmNuSnZjaUEvSUNoY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdQRTl3ZEdsdmJuTkZjbkp2Y2xCc1lXTmxhRzlzWkdWeUlHaGhibVJzWlVabGRHTm9UM0IwYVc5dWN6MTdLQ2tnUFQ0Z2FHRnVaR3hsUm1WMFkyaFBjSFJwYjI1ektHWnBiSFJsY2tsdWNIVjBWSGx3WlNsOUlDOCtYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FwSURvZ0lXWnBiSFJsY21Wa1JISnZjRVJ2ZDI1SmRHVnRjeTVzWlc1bmRHZ2dKaVpjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0tDRmhiR3h2ZDBOMWMzUnZiVlpoYkhWbElIeDhJR1pwYkhSbGNrbHVjSFYwVkhsd1pTQTlQVDBnSjI5d1pYSmhkRzl5SnlCOGZDQWhhVzV3ZFhSV1lXeDFaU2tnUHlBb1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRHhPYjA5d2RHbHZibk5RYkdGalpXaHZiR1JsY2lBdlBseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdLU0E2SUNoY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjbTkzVm1seWRIVmhiR2w2WlhJdVoyVjBWbWx5ZEhWaGJFbDBaVzF6S0NrdWJXRndLQ2gyYVhKMGRXRnNTWFJsYlNrZ1BUNGdlMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHTnZibk4wSUdsMFpXMGdQU0JtYVd4MFpYSmxaRVJ5YjNCRWIzZHVTWFJsYlhOYmRtbHlkSFZoYkVsMFpXMHVhVzVrWlhoZE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdOdmJuTjBJR2x1WkdWNElEMGdkbWx5ZEhWaGJFbDBaVzB1YVc1a1pYZzdYRzVjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQXZMeUJ5Wlc1a1pYSWdaM0p2ZFhBZ2JHRmlaV3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBaaUFvYVhSbGJTNXZjSFJwYjI1ektTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnlaWFIxY200Z0tGeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQThaR2wyWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2EyVjVQWHRnSkh0cGRHVnRMbXhoWW1Wc2ZTc2tlMmx1WkdWNGZXQjlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWTJ4aGMzTk9ZVzFsUFh0amVDaHpkSGxzWlhNdWIzQjBhVzl1UjNKdmRYQk1ZV0psYkN3Z2MzUjViR1Z6TG1keWIzVndWRzl3UW05eVpHVnlLWDFjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCemRIbHNaVDE3ZTF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhR1ZwWjJoME9pQmdKSHQyYVhKMGRXRnNTWFJsYlM1emFYcGxmWEI0WUN4Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSFJ5WVc1elptOXliVG9nWUhSeVlXNXpiR0YwWlZrb0pIdDJhWEowZFdGc1NYUmxiUzV6ZEdGeWRIMXdlQ2xnTEZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMTlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRDVjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBOFZHVjRkQ0IzWldsbmFIUTlYQ0ppYjJ4a1hDSWdkbUZ5YVdGdWREMWNJbUp2WkhsVGJXRnNiRndpSUdOdmJHOXlQVndpYzJWamIyNWtZWEo1WENJK1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I3YVhSbGJTNXNZV0psYkNGOVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdQQzlVWlhoMFBseHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQThMMlJwZGo1Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNrN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlZ4dVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdibVY0ZEVsMFpXMDZJRk5sYkdWamRHRmliR1ZXWVd4MVpUeHpkSEpwYm1jK0lId2dkVzVrWldacGJtVmtJRDFjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR1pwYkhSbGNtVmtSSEp2Y0VSdmQyNUpkR1Z0YzF0MmFYSjBkV0ZzU1hSbGJTNXBibVJsZUNBcklERmRPMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHTnZibk4wSUhOb2IzVnNaRUZrWkVKdmRIUnZiVUp2Y21SbGNpQTlJRzVsZUhSSmRHVnRJQ1ltSUNGdVpYaDBTWFJsYlM1bmNtOTFjQ0FtSmlBaGJtVjRkRWwwWlcwdWIzQjBhVzl1Y3lBbUppQnBkR1Z0TG1keWIzVndPMXh1WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjbVYwZFhKdUlDaGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJR3RsZVNCcGN5QnBibU5zZFdSbFpDQnBiaUJuWlhSSmRHVnRVSEp2Y0hNb0tWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0x5OGdaWE5zYVc1MExXUnBjMkZpYkdVdGJtVjRkQzFzYVc1bElISmxZV04wTDJwemVDMXJaWGxjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRHhFY205d1pHOTNia2wwWlcxY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2V5NHVMbWRsZEVsMFpXMVFjbTl3Y3loN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdhMlY1T2lCZ0pIdHBkR1Z0TG5aaGJIVmxJWDB0Skh0cGJtUmxlSDFnTEZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lISmxaaWh1YjJSbEtTQjdYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCc2FYTjBVbVZtTG1OMWNuSmxiblJiYVc1a1pYaGRJRDBnYm05a1pUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I5TEZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHOXVRMnhwWTJzb1pYWmxiblFwSUh0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2xtSUNobWFXeDBaWEpKYm5CMWRGUjVjR1VnSVQwOUlDZDJZV3gxWlNjcElIdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1pYWmxiblF1YzNSdmNGQnliM0JoWjJGMGFXOXVLQ2s3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCcFppQW9hWE5OZFd4MGFWWmhiSFZsUldScGRDa2dlMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmxkbVZ1ZEM1d2NtVjJaVzUwUkdWbVlYVnNkQ2dwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JsZG1WdWRDNXpkRzl3VUhKdmNHRm5ZWFJwYjI0b0tUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FHRnVaR3hsVEc5allXeE5kV3gwYVZaaGJIVmxRMmhoYm1kbEtHbDBaVzBwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0J6WlhSSmJuQjFkRlpoYkhWbEtDY25LVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjbVZtY3k1a2IyMVNaV1psY21WdVkyVXVZM1Z5Y21WdWREOHVabTlqZFhNb0tUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgwZ1pXeHpaU0I3WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJRzF2WkdWc0xsOTFjR1JoZEdWR2FXeDBaWElvWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWm1sc2RHVnlJU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JuWlc1bGNtRjBaVVpwYkhSbGNsVndaR0YwWlZCaGVXeHZZV1FvZTF4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1ptbHNkR1Z5U1c1d2RYUlVlWEJsTEZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FYUmxiU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdacGJIUmxjam9nWm1sc2RHVnlJU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUhObGRFWnBiSFJsY2sxMWJIUnBWbUZzZFdWekxGeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMHBYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDazdYRzVjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdjRzl3ZFd4aGRHVkpibkIxZEZaaGJIVmxUMjVKYm5CMWRGUjVjR1ZUZDJsMFkyZ29lMXh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEJ2Y0hWc1lYUmxTVzV3ZFhSUGJrVmthWFFzWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYVhSbGJTeGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQm1hV3gwWlhKSmJuQjFkRlI1Y0dVc1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2MyVjBTVzV3ZFhSV1lXeDFaU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0JtYVd4MFpYSXNYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lIMHBPMXh1WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSE4zYVhSamFGUnZUbVY0ZEVsdWNIVjBWSGx3WlNoY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCbWFXeDBaWEpKYm5CMWRGUjVjR1VzWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnYzJWMFNXNXdkWFJVZVhCbExGeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHaGhibVJzWlVOb1lXNW5aVlpwWlhkTmIyUmxMRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSEpsWm5NdVpHOXRVbVZtWlhKbGJtTmxMbU4xY25KbGJuUXNYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdMeThnWlhod2JHbGphWFJzZVNCd2NtVjJaVzUwYVc1bklHWnZZM1Z6SUc5dUlHWnBiSFJsY2lCd2FXeHNJR1IxWlNCMGJ5QmhNVEY1SUdWeWNtOXlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdabUZzYzJWY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnS1R0Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJSDFjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNCOUxGeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQjlLWDFjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnWVdOMGFYWmxQWHRoWTNScGRtVkpibVJsZUNBOVBUMGdhVzVrWlhoOVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHRmtaRWR5YjNWd1FtOTBkRzl0UW05eVpHVnlQWHR6YUc5MWJHUkJaR1JDYjNSMGIyMUNiM0prWlhKOVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDOHZJSFpwY25SMVlXd2dhWFJsYlNCd2IzTnBkR2x2Ym1sdVp5QmhibVFnWVdOalpYTnphV0pwYkdsMGVWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnpkSGxzWlQxN2UxeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJR2hsYVdkb2REb2dZQ1I3ZG1seWRIVmhiRWwwWlcwdWMybDZaWDF3ZUdBc1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdkSEpoYm5ObWIzSnRPaUJnZEhKaGJuTnNZWFJsV1Nna2UzWnBjblIxWVd4SmRHVnRMbk4wWVhKMGZYQjRLV0FzWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUgxOVhHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lHRnlhV0V0YzJWMGMybDZaVDE3Wm1sc2RHVnlaV1JFY205d1JHOTNia2wwWlcxekxteGxibWQwYUgxY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ1lYSnBZUzF3YjNOcGJuTmxkRDE3ZG1seWRIVmhiRWwwWlcwdWFXNWtaWGdnS3lBeGZWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQnBjMDExYkhScFZtRnNkV1ZGWkdsMFBYdHBjMDExYkhScFZtRnNkV1ZGWkdsMGZWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQmphR1ZqYTJWa1BYdG1hV3gwWlhKTmRXeDBhVlpoYkhWbGN5NXpiMjFsS0NoMllXd3BJRDArSUhaaGJDNTJZV3gxWlNBOVBUMGdhWFJsYlM1MllXeDFaU2w5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0ErWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUR4emNHRnVQbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUh0cGRHVnRMbWx6UTNWemRHOXRJRDhnSjFWelpTQmpkWE4wYjIwZ2RtRnNkV1U2SUNjZ09pQW5KMzBnZTJsMFpXMHViR0ZpWld3Z1B6OGdhWFJsYlM1MllXeDFaWDFjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnUEM5emNHRnVQbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0I3YVhSbGJTNWtaWE5qY21sd2RHbHZiaUEvSUR4a2FYWWdZMnhoYzNOT1lXMWxQWHR6ZEhsc1pYTXVaR1Z6WTNKcGNIUnBiMjVVWlhoMGZUNTdhWFJsYlM1a1pYTmpjbWx3ZEdsdmJuMDhMMlJwZGo0Z09pQnVkV3hzZlZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnUEM5RWNtOXdaRzkzYmtsMFpXMCtYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0tUdGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnZlNsY2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDbDlYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdQQzlrYVhZK1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUR3dlpHbDJQbHh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQjdhWE5OZFd4MGFWWmhiSFZsUldScGRDQW1KaUFoYjNCMGFXOXVjMHh2WVdScGJtY2dKaVlnSVc5d2RHbHZibk5GY25KdmNpQW1KaUJtYVd4MFpYSmxaRVJ5YjNCRWIzZHVTWFJsYlhNdWJHVnVaM1JvSUQ4Z0tGeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lEeE5kV3gwYVZaaGJIVmxRWEJ3YkhsQ2RYUjBiMjVjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUc5dVFYQndiSGs5ZXlncElEMCtJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2FHRnVaR3hsVFhWc2RHbFdZV3gxWlVacGJIUmxja052YlcxcGRDaHRiMlJsYkN3Z1ptbHNkR1Z5SVN3Z1ptbHNkR1Z5VFhWc2RHbFdZV3gxWlhNcE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdmWDFjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUdac2IyRjBhVzVuUld4bGJXVnVkRDE3Y21WbWN5NW1iRzloZEdsdVp5NWpkWEp5Wlc1MGZWeHVJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ0lDQWdiV0Y0VDNCMGFXOXVWMmxrZEdnOWUyMWhlRTl3ZEdsdmJsZHBaSFJvZlZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0FnSUNBZ2JXVnVkVWhsYVdkb2REMTdUV0YwYUM1dGFXNG9jbTkzVm1seWRIVmhiR2w2WlhJdVoyVjBWRzkwWVd4VGFYcGxLQ2tzSUUxQldGOU5SVTVWWDBoRlNVZElWQ2w5WEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJQ0FnTHo1Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnS1NBNklHNTFiR3g5WEc0Z0lDQWdJQ0FnSUNBZ0lDQThMejVjYmlBZ0lDQWdJQ0FnSUNBOEwwWnNiMkYwYVc1blJtOWpkWE5OWVc1aFoyVnlQbHh1SUNBZ0lDQWdJQ0FwZlZ4dUlDQWdJQ0FnUEM5R2JHOWhkR2x1WjFCdmNuUmhiRDVjYmlBZ0lDQThMMlJwZGo1Y2JpQWdLVHRjYm4wcE8xeHVYRzVqYjI1emRDQm5aWFJUZEhsc1pYTWdQU0FvZEdobGJXVTZJRWR5WVdaaGJtRlVhR1Z0WlRJcElEMCtJQ2g3WEc0Z0lHTnZiV0p2WW05NFYzSmhjSEJsY2pvZ1kzTnpLSHRjYmlBZ0lDQmthWE53YkdGNU9pQW5abXhsZUNjc1hHNGdJQ0FnWm14bGVGZHlZWEE2SUNkM2NtRndKeXhjYmlBZ2ZTa3NYRzRnSUhCcGJHeFhjbUZ3Y0dWeU9pQmpjM01vZTF4dUlDQWdJR1JwYzNCc1lYazZJQ2RtYkdWNEp5eGNiaUFnSUNCaGJHbG5ia2wwWlcxek9pQW5ZMlZ1ZEdWeUp5eGNiaUFnSUNCbWJHVjRWM0poY0RvZ0ozZHlZWEFuTEZ4dUlDQjlLU3hjYmlBZ1ltRnpaVkJwYkd3NklHTnpjeWg3WEc0Z0lDQWdaR2x6Y0d4aGVUb2dKMlpzWlhnbkxGeHVJQ0FnSUdGc2FXZHVTWFJsYlhNNklDZGpaVzUwWlhJbkxGeHVJQ0FnSUdKaFkydG5jbTkxYm1RNklIUm9aVzFsTG1OdmJHOXljeTVoWTNScGIyNHVaR2x6WVdKc1pXUkNZV05yWjNKdmRXNWtMRnh1SUNBZ0lHSnZjbVJsY2pvZ1lERndlQ0J6YjJ4cFpDQWtlM1JvWlcxbExtTnZiRzl5Y3k1aWIzSmtaWEl1ZDJWaGEzMWdMRnh1SUNBZ0lIQmhaR1JwYm1jNklIUm9aVzFsTG5Od1lXTnBibWNvTUM0eE1qVXNJREVzSURBdU1USTFMQ0F4S1N4Y2JpQWdJQ0JqYjJ4dmNqb2dkR2hsYldVdVkyOXNiM0p6TG5SbGVIUXVjSEpwYldGeWVTeGNiaUFnSUNCdmRtVnlabXh2ZHpvZ0oyaHBaR1JsYmljc1hHNGdJQ0FnZDJocGRHVlRjR0ZqWlRvZ0oyNXZkM0poY0Njc1hHNGdJQ0FnYldsdVNHVnBaMmgwT2lCMGFHVnRaUzV6Y0dGamFXNW5LREl1TnpVcExGeHVJQ0FnSUM0dUxuUm9aVzFsTG5SNWNHOW5jbUZ3YUhrdVltOWtlVk50WVd4c0xGeHVJQ0FnSUdOMWNuTnZjam9nSjNCdmFXNTBaWEluTEZ4dUlDQjlLU3hjYmlBZ2EyVjVVR2xzYkRvZ1kzTnpLSHRjYmlBZ0lDQm1iMjUwVjJWcFoyaDBPaUIwYUdWdFpTNTBlWEJ2WjNKaGNHaDVMbVp2Ym5SWFpXbG5hSFJDYjJ4a0xGeHVJQ0FnSUdOMWNuTnZjam9nSjJSbFptRjFiSFFuTEZ4dUlDQjlLU3hjYmlBZ2IzQmxjbUYwYjNKUWFXeHNPaUJqYzNNb2UxeHVJQ0FnSUNjbU9taHZkbVZ5SnpvZ2UxeHVJQ0FnSUNBZ1ltRmphMmR5YjNWdVpEb2dkR2hsYldVdVkyOXNiM0p6TG1GamRHbHZiaTVvYjNabGNpeGNiaUFnSUNCOUxGeHVJQ0I5S1N4Y2JpQWdaSEp2Y0dSdmQyNVhjbUZ3Y0dWeU9pQmpjM01vZTF4dUlDQWdJR0poWTJ0bmNtOTFibVJEYjJ4dmNqb2dkR2hsYldVdVkyOXNiM0p6TG1KaFkydG5jbTkxYm1RdWNISnBiV0Z5ZVN4Y2JpQWdJQ0JqYjJ4dmNqb2dkR2hsYldVdVkyOXNiM0p6TG5SbGVIUXVjSEpwYldGeWVTeGNiaUFnSUNCaWIzaFRhR0ZrYjNjNklIUm9aVzFsTG5Ob1lXUnZkM011ZWpJc1hHNGdJQ0FnYjNabGNtWnNiM2RaT2lBbllYVjBieWNzWEc0Z0lDQWdla2x1WkdWNE9pQjBhR1Z0WlM1NlNXNWtaWGd1WkhKdmNHUnZkMjRzWEc0Z0lIMHBMRnh1SUNCcGJuQjFkRk4wZVd4bE9pQmpjM01vZTF4dUlDQWdJSEJoWkdScGJtZENiRzlqYXpvZ01DeGNiaUFnSUNBbkpqcG1iMk4xY3ljNklIdGNiaUFnSUNBZ0lHOTFkR3hwYm1VNklDZHViMjVsSnl4Y2JpQWdJQ0I5TEZ4dUlDQjlLU3hjYmlBZ2JHOWhaR2x1WjBsdVpHbGpZWFJ2Y2pvZ1kzTnpLSHRjYmlBZ0lDQmpiMnh2Y2pvZ2RHaGxiV1V1WTI5c2IzSnpMblJsZUhRdWMyVmpiMjVrWVhKNUxGeHVJQ0FnSUcxaGNtZHBia3hsWm5RNklIUm9aVzFsTG5Od1lXTnBibWNvTUM0MUtTeGNiaUFnZlNrc1hHNGdJR3h2WVdScGJtZEpibkIxZEZCaFpHUnBibWM2SUdOemN5aDdYRzRnSUNBZ2NHRmtaR2x1WjFKcFoyaDBPaUIwYUdWdFpTNXpjR0ZqYVc1bktESXVOU2tzWEc0Z0lIMHBMRnh1SUNCdmNIUnBiMjVIY205MWNFeGhZbVZzT2lCamMzTW9lMXh1SUNBZ0lIQmhaR1JwYm1jNklIUm9aVzFsTG5Od1lXTnBibWNvTVNrc1hHNGdJQ0FnY0c5emFYUnBiMjQ2SUNkaFluTnZiSFYwWlNjc1hHNGdJQ0FnZEc5d09pQXdMRnh1SUNBZ0lHeGxablE2SURBc1hHNGdJQ0FnZDJsa2RHZzZJQ2N4TURBbEp5eGNiaUFnZlNrc1hHNGdJR2R5YjNWd1ZHOXdRbTl5WkdWeU9pQmpjM01vZTF4dUlDQWdJQ2NtT201dmRDZzZabWx5YzNRdFkyaHBiR1FwSnpvZ2UxeHVJQ0FnSUNBZ1ltOXlaR1Z5Vkc5d09pQmdNWEI0SUhOdmJHbGtJQ1I3ZEdobGJXVXVZMjlzYjNKekxtSnZjbVJsY2k1M1pXRnJmV0FzWEc0Z0lDQWdmU3hjYmlBZ2ZTa3NYRzRnSUdSbGMyTnlhWEIwYVc5dVZHVjRkRG9nWTNOektIdGNiaUFnSUNBdUxpNTBhR1Z0WlM1MGVYQnZaM0poY0doNUxtSnZaSGxUYldGc2JDeGNiaUFnSUNCamIyeHZjam9nZEdobGJXVXVZMjlzYjNKekxuUmxlSFF1YzJWamIyNWtZWEo1TEZ4dUlDQWdJSEJoWkdScGJtZFViM0E2SUhSb1pXMWxMbk53WVdOcGJtY29NQzQxS1N4Y2JpQWdmU2tzWEc1OUtUdGNiaUpkTENKdVlXMWxjeUk2V3lKQlpFaHZZME52YldKdlltOTRJaXdpYlc5a1pXd2lMQ0ptYVd4MFpYSWlMQ0ptYVd4MFpYSk5kV3gwYVZaaGJIVmxjeUlzSWw5aElpd2lYeUlzSW05d2RHbHZibk1pTENKZllpSmRMQ0p0WVhCd2FXNW5jeUk2SWpzN096czdPenM3T3pzN096czdPenM3T3pzN096czdPenM3T3pzN096dEJRWEZFVHl4TlFVRk5MR0ZCUVdkQ0xFZEJRVUVzVlVGQlFTeERRVUZYTEZOQlFWTkJMR05CUVVGQkxFTkJReTlETEVWQlFVVXNUVUZCUVN4RlFVRlJMRXRCUVU4c1JVRkJRU3hYUVVGQkxFVkJRV0VzYjBKQlFYTkNMRVZCUVVFc2EwSkJRVUVzUlVGQmIwSXNiVUpCUVc5Q0xFVkJRVUVzUlVGRE5VWXNVMEZEUVN4RlFVRkJPMEZCZUVSR0xFVkJRVUVzU1VGQlFTeEZRVUZCTEVWQlFVRXNSVUZCUVN4RlFVRkJMRVZCUVVFc1JVRkJRU3hGUVVGQkxFTkJRVUU3UVVGNVJFVXNSVUZCUVN4TlFVRk5MRU5CUVVNc1NVRkJRU3hGUVVGTkxFOUJRVThzUTBGQlFTeEhRVUZKTEZOQlFWTXNTMEZCU3l4RFFVRkJMRU5CUVVFN1FVRkRkRU1zUlVGQlFTeE5RVUZOTEVOQlFVTXNUMEZCVXl4RlFVRkJMRlZCUVZVc1EwRkJTU3hIUVVGQkxGRkJRVUVzUTBGQmVVTXNSVUZCUlN4RFFVRkJMRU5CUVVFN1FVRkRla1VzUlVGQlFTeE5RVUZOTEVOQlFVTXNZMEZCUVN4RlFVRm5RaXhwUWtGQmFVSXNRMEZCUVN4SFFVRkpMRk5CUVd0Q0xFdEJRVXNzUTBGQlFTeERRVUZCTzBGQlEyNUZMRVZCUVVFc1RVRkJUU3hEUVVGRExGbEJRVUVzUlVGQll5eGxRVUZsTEVOQlFVRXNSMEZCU1N4VFFVRnJRaXhMUVVGTExFTkJRVUVzUTBGQlFUdEJRVU12UkN4RlFVRkJMRTFCUVUwc1EwRkJReXhWUVVGQkxFVkJRVmtzWVVGQllTeERRVUZCTEVkQlFVa3NVMEZCVXl4RlFVRkZMRU5CUVVFc1EwRkJRVHRCUVVNdlF5eEZRVUZCTEUxQlFVMHNRMEZCUXl4WFFVRkJMRVZCUVdFc1kwRkJZeXhEUVVGQkxFZEJRVWtzVTBGQmQwSXNTVUZCU1N4RFFVRkJMRU5CUVVFN1FVRkRiRVVzUlVGQlRTeE5RVUZCTEVOQlFVTXNhVUpCUVdsQ0xGbEJRVmtzUTBGQlFTeEhRVUZKTEZOQlFYbENMRU5CUVVNc1YwRkJRU3hIUVVGakxGVkJRVlVzUzBGQlN5eERRVUZCTEVOQlFVRTdRVUZETDBZc1JVRkJUU3hOUVVGQkxFTkJRVU1zYTBKQlFXdENMRzFDUVVGdFFpeERRVUZCTEVkQlFVa3NVMEZCYTBJc1EwRkJReXhYUVVGQkxFbEJRV1VzYjBKQlFXOUNMRTlCUVU4c1EwRkJRU3hEUVVGQk8wRkJRemRITEVWQlFVMHNUVUZCUVN4TlFVRkJMRWRCUVZNc1YwRkJWeXhUUVVGVExFTkJRVUVzUTBGQlFUdEJRVVZ1UXl4RlFVRkJMRTFCUVUwc1EwRkJReXhwUWtGQmJVSXNSVUZCUVN4dlFrRkJiMElzUTBGQlNTeEhRVUZCTEZGQlFVRXNRMEZCZVVNc1JVRkJSU3hEUVVGQkxFTkJRVUU3UVVGRE4wWXNSVUZCUVN4TlFVRk5MRU5CUVVNc1EwRkJSeXhGUVVGQkxHVkJRV1VzUTBGQlNTeEhRVUZCTEZGQlFVRXNRMEZCVXl4RlFVRkZMRU5CUVVFc1EwRkJRVHRCUVVONFF5eEZRVUZCTEUxQlFVMHNaMEpCUVcxQ0xFZEJRVUVzUTBGQlFTeEZRVUZCTEVkQlFVRXNTMEZCUVN4RFFVRk5MRXRCUVUwc1EwRkJRU3huUWtGQlFTeExRVUZhTEVsQlFXZERMRWRCUVVFc1JVRkJRU3hIUVVGQkxFbEJRVUVzUTBGQlFUdEJRVVY2UkN4RlFVRk5MRTFCUVVFc2QwSkJRVUVzUjBGQk1rSXNUMEZCZFVJc1NVRkJTU3hEUVVGQkxFTkJRVUU3UVVGRk5VUXNSVUZCUVN4TlFVRk5MSEZDUVVGM1FpeEhRVUZCTEc5Q1FVRkJMRU5CUVVFc1EwRkJjVUlzVFVGQlVTeEpRVUZCTEVsQlFVRXNSMEZCUVN4TFFVRkJMRU5CUVVFc1IwRkJRU3hOUVVGQkxFTkJRVUVzVVVGQlFTeExRVUZaTEVWQlFVVXNRMEZCUVN4RFFVRkJPMEZCUTNwRkxFVkJRVTBzVFVGQlFTeG5Ra0ZCUVN4SFFVRnRRaXg1UWtGQmVVSXNaVUZCYjBJc1MwRkJRU3hQUVVGQkxFTkJRVUU3UVVGSGRFVXNSVUZCUVN4TlFVRk5MSEZDUVVGeFFpeExRVUZOTEVWQlFVRXNRMEZCUVR0QlFVVnFReXhGUVVGTkxFMUJRVUVzVDBGQlFTeEhRVUZWTEUxQlFXdERMRU5CUVVFc1JVRkJSU3hEUVVGQkxFTkJRVUU3UVVGRGNFUXNSVUZCVFN4TlFVRkJMR3RDUVVGQkxFZEJRWEZDTEUxQlFXbENMRU5CUVVFc1JVRkJSU3hEUVVGQkxFTkJRVUU3UVVGRE9VTXNSVUZCUVN4TlFVRk5MR3RDUVVGeFFpeEhRVUZCTEUxQlFVRXNRMEZCZFVJc1EwRkJReXhYUVVGQkxFZEJRV01zVlVGQlZTeExRVUZMTEVOQlFVRXNRMEZCUVR0QlFVVm9SaXhGUVVGTkxFMUJRVUVzWlVGQlFTeEhRVUZyUWl4UlFVRlJMRTFCUVUwc2EwSkJRVUVzUTBGQmJVSXNUMEZCVHl4RFFVRkhMRVZCUVVFc1EwRkJReXhQUVVGUExFTkJRVU1zUTBGQlFTeERRVUZCTzBGQlJUVkZMRVZCUVUwc1RVRkJRU3haUVVGQkxFZEJRV1VzVVVGQlVTeE5RVUZOTzBGQlEycERMRWxCUVVFc1NVRkJTU3hYUVVGaExFVkJRVUU3UVVGRFppeE5RVUZQTEU5QlFVRXNTMEZCUVN4RFFVRkJPMEZCUVVFc1MwRkRWRHRCUVVWQkxFbEJRVUVzU1VGQlNTeE5RVUZOTEV0QlFVMHNRMEZCUVN4UFFVRkJMRU5CUVZFc1JVRkJSeXhEUVVGQkxFTkJRVUVzUTBGQlJTeE5RVUZOTEUxQlFWRXNSVUZCUVR0QlFVTjZReXhOUVVGUExFOUJRVUVzU1VGQlFTeERRVUZCTzBGQlFVRXNTMEZEVkR0QlFVTkJMRWxCUVU4c1QwRkJRU3hMUVVGQkxFTkJRVUU3UVVGQlFTeExRVU5PTEVOQlFVTXNUVUZCUVN4RlFVRlJMR0ZCUVdFc1MwRkJUU3hEUVVGQkxFdEJRVUVzUTBGQlRTeFBRVUZQTEVOQlFVTXNRMEZCUVN4RFFVRkJPMEZCUnpkRExFVkJRVTBzVFVGQlFTeGpRVUZCTEVkQlFXbENMRmxCUVZrc1RVRkJUVHRCUVVOMlF5eEpRVUZCTEVsQlFVa3NWMEZCWVN4RlFVRkJPMEZCUTJZc1RVRkJRU3hMUVVGQkxFTkJRVTBzVDBGQlVTeEZRVUZCTEVOQlFVRTdRVUZEWkN4TlFVRkJMRmxCUVVFc1EwRkJZU3hMUVVGTExFTkJRVUVzUTBGQlFUdEJRVU5zUWl4TlFVRkJMR0ZCUVVFc1EwRkJZeXhGUVVGRkxFTkJRVUVzUTBGQlFUdEJRVUZCTEV0QlEyeENPMEZCUVVFc1IwRkRReXhGUVVGQkxFTkJRVU1zUzBGQlR5eEZRVUZCTEZkQlFWY3NRMEZCUXl4RFFVRkJMRU5CUVVFN1FVRkZka0lzUlVGQlFTeE5RVUZOTERSQ1FVRXJRaXhIUVVGQkxGZEJRVUU3UVVGQlFTeEpRVU51UXl4RFFVTkZReXhOUVVGQlFTeEZRVU5CUXl4UFFVTkJReXhGUVVGQlFTeHJRa0ZCUVVFc1JVRkRRU3haUVVOSExFdEJRVUU3UVVGRFNDeE5RVUZCTEVsQlFVbEJMRzFDUVVGclFpeE5RVUZSTEVWQlFVRTdRVUZETlVJc1VVRkJRU3hOUVVGTkxHTkJRWGRDTEVWQlFVTXNRMEZCUVR0QlFVTXZRaXhSUVVGQkxFMUJRVTBzVTBGQmJVSXNSVUZCUXl4RFFVRkJPMEZCUXpGQ0xGRkJRVUZCTEd0Q1FVRkJRU3hEUVVGclFpeFBRVUZSTEVOQlFVRXNRMEZCUXl4SlFVRlRMRXRCUVVFN1FVRnVTRFZETEZWQlFVRkRMRWxCUVVGQkxFZEJRVUZCTEVOQlFVRkJPMEZCYjBoVkxGVkJRVUVzVjBGQlFTeERRVUZaTEUxQlFVdEJMRWRCUVVFc1IwRkJRU3hKUVVGQkxFTkJRVXNzVlVGQlRDeEpRVUZCUVN4SFFVRkJRU3hIUVVGQlFTeEhRVUZqTEV0QlFVc3NTMEZCVFN4RFFVRkJMRU5CUVVFN1FVRkRNVU1zVlVGQlR5eE5RVUZCTEVOQlFVRXNTVUZCUVN4RFFVRkxMRXRCUVVzc1MwRkJUU3hEUVVGQkxFTkJRVUU3UVVGQlFTeFRRVU40UWl4RFFVRkJMRU5CUVVFN1FVRkRSQ3hSUVVGQlNDeE5RVUZCUVN4RFFVRk5MR05CUVdORExFOUJRVk1zUlVGQlFTeEZRVUZGTEdGQlFXRXNUVUZCVVN4RlFVRkJMRXRCUVVFc1JVRkJUeXhOUVVGUExFTkJRVUVzUTBGQlFTeERRVUZCTEVWQlFVa3NRMEZCUVN4RFFVRkJPMEZCUTNSRkxGRkJRVUVzYjBKQlFVRXNRMEZCY1VJc1JVRkJSU3hEUVVGQkxFTkJRVUU3UVVGQlFTeFBRVU42UWp0QlFVTkJMRTFCUVVFc1NVRkJTU3hEUVVGRExGbEJRV01zUlVGQlFUdEJRVU5xUWl4UlFVRkJMRlZCUVVFc1EwRkJWeXhOUVVGSE8wRkJNMGgwUWl4VlFVRkJSU3hKUVVGQlFTeEhRVUZCUVN4RFFVRkJRVHRCUVRKSWVVSXNWVUZCUVN4UFFVRkJMRU5CUVVGQkxFZEJRVUVzUjBGQlFTeEpRVUZCTEVOQlFVc3NXVUZCWVN4RFFVRkJMRTlCUVVFc1MwRkJiRUlzWjBKQlFVRkJMRWRCUVRKQ0xFTkJRVUVzUzBGQlFTeEZRVUZCTEVOQlFVRTdRVUZCUVN4VFFVRlBMRU5CUVVFc1EwRkJRVHRCUVVGQkxFOUJRM0pFTzBGQlFVRXNTMEZEUmp0QlFVRkJMRWxCUlVFc1JVRkJRenRCUVVGQkxFZEJRMGdzUTBGQlFUdEJRVVZCTEVWQlFVMHNUVUZCUVN3eVFrRkJRU3hIUVVFNFFpeFhRVUZaTEVOQlFVRXNRMEZCUXl4WlFVRXdReXhMUVVGQk8wRkJRM3BHTEVsQlFVRXNiMEpCUVVFc1EwRkJjVUlzUTBGQlF5eExRVUZWTEV0QlFVRTdRVUZET1VJc1RVRkJTU3hKUVVGQkxFdEJRVUVzUTBGQlRTeExRVUZMTEVOQlFVTXNTVUZCUVN4TFFVRlRMRXRCUVVzc1MwRkJWU3hMUVVGQkxGbEJRVUVzUTBGQllTeExRVUZMTEVOQlFVY3NSVUZCUVR0QlFVTXpSQ3hSUVVGQkxFOUJRVThzVFVGQlRTeE5RVUZQTEVOQlFVRXNRMEZCUXl4VFFVRlRMRWxCUVVzc1EwRkJRU3hMUVVGQkxFdEJRVlVzWVVGQllTeExRVUZMTEVOQlFVRXNRMEZCUVR0QlFVRkJMRTlCUTJwRk8wRkJRMEVzVFVGQlR5eFBRVUZCTEVOQlFVTXNSMEZCUnl4TFFVRkJMRVZCUVU4c1dVRkJXU3hEUVVGQkxFTkJRVUU3UVVGQlFTeExRVU12UWl4RFFVRkJMRU5CUVVFN1FVRkJRU3hIUVVOSUxFVkJRVWNzUlVGQlJTeERRVUZCTEVOQlFVRTdRVUZGVEN4RlFVRkJMRTFCUVUwc1dVRkJaU3hIUVVGQkxGZEJRVUU3UVVGQlFTeEpRVU51UWl4RFFVRkRMRkZCUVZWRExFVkJRVUZCTEVWQlFVRkJMRVZCUVVjc1RVRkJWeXhMUVVGQk8wRkJRM1pDTEUxQlFVRXNUMEZCUVN4RFFVRlJMRkZCUVZFc1EwRkJRU3hEUVVGQk8wRkJTV2hDTEUxQlFVRXNTVUZCU1N4VlFVRlZMRU5CUVVNc1pVRkJRU3hGUVVGcFFpeFpRVUZaTEVOQlFVVXNRMEZCUVN4UlFVRkJMRU5CUVZNc1RVRkJUU3hEUVVGSExFVkJRVUU3UVVGRE9VUXNVVUZCUVN4SlFVRkpMR2RDUVVGclFpeEZRVUZCTzBGQlJYQkNMRlZCUVRaQ0xEUkNRVUZCTEVOQlFVRXNTMEZCUVN4RlFVRlBMRkZCUVZNc2FVSkJRV2xDTEVOQlFVRXNRMEZCUVR0QlFVRkJMRk5CUTJoRk8wRkJRMEVzVVVGQlpTeGpRVUZCTEVWQlFVRXNRMEZCUVR0QlFVTm1MRkZCUVVFc2IwSkJRVUVzU1VGQlFTeEpRVUZCTEVkQlFVRXNTMEZCUVN4RFFVRkJMRWRCUVVFc2IwSkJRVUVzUlVGQlFTeERRVUZCTzBGQlFVRXNUMEZEUmp0QlFVRkJMRXRCUTBZN1FVRkJRU3hKUVVOQk8wRkJRVUVzVFVGRFJTeE5RVUZCTzBGQlFVRXNUVUZEUVN4cFFrRkJRVHRCUVVGQkxFMUJRMEVzYjBKQlFVRTdRVUZCUVN4TlFVTkJMRFJDUVVGQk8wRkJRVUVzVFVGRFFTeGpRVUZCTzBGQlFVRXNUVUZEUVN4blFrRkJRVHRCUVVGQkxFMUJRMEVzUzBGQlFUdEJRVUZCTEV0QlEwWTdRVUZCUVN4SFFVTkdMRU5CUVVFN1FVRkhRU3hGUVVGTkxFMUJRVUVzZFVKQlFVRXNSMEZCTUVJc1VVRkJVU3hOUVVGTk8wRkJRelZETEVsQlFVOHNUMEZCUVR0QlFVRkJMRTFCUTB3c2EwSkJRVUU3UVVGQlFTeE5RVU5CTEVkQlFVY3NhVUpCUVd0Q0xFTkJRVUVzVFVGQlFUdEJRVUZCTEZGQlEyNUNMRU5CUVVNc1IwRkJRU3hGUVVGTExFbEJRVTBzUlVGQlFTeERRVUZCTEV0QlFVMHNRMEZCUXl4SFFVRkhMRWRCUVVFc1JVRkJTeXhEUVVGSExFVkJRVUVzU1VGQlFTeERRVUZMTEV0QlFWTXNRMEZCUVN4RFFVRkJMRVZCUVVFc1EwRkJRU3hEUVVGQkxFTkJRVUVzUlVGQlN5eERRVUZITEVWQlFVRXNTVUZCUVN4RFFVRkxMRk5CUVZNc1EwRkJZeXhEUVVGQkxGZEJRVUVzUTBGQlFTeERRVUZCTzBGQlFVRXNVVUZEYUVZc1JVRkJRenRCUVVGQkxFOUJRMGc3UVVGQlFTeExRVU5HTEVOQlFVRTdRVUZCUVN4SFFVTkRMRVZCUVVFc1EwRkJReXhyUWtGQmIwSXNSVUZCUVN4cFFrRkJhVUlzUTBGQlF5eERRVUZCTEVOQlFVRTdRVUZGTVVNc1JVRkJUU3hOUVVGQkxFVkJRVVVzVFVGQlRTeGpRVUZuUWl4RlFVRkJMRTlCUVVFc1JVRkJVeXh0UWtGQmJVSXNaMEpCUVd0Q0xFVkJRVUVzV1VGQlFTeExRVUZwUWl4MVFrRkJkMElzUTBGQlFUdEJRVUZCTEVsQlEyNUlMRWxCUVVFN1FVRkJRU3hKUVVOQkxGbEJRVUU3UVVGQlFTeEpRVU5CTEZkQlFVRTdRVUZCUVN4SlFVTkJMR05CUVVFN1FVRkJRU3hKUVVOQkxIVkNRVUZCTzBGQlFVRXNTVUZEUVN4UFFVRkJPMEZCUVVFc1NVRkRRU3hyUWtGQlFUdEJRVUZCTEVkQlEwUXNRMEZCUVN4RFFVRkJPMEZCU1VRc1JVRkJiMElzYlVKQlFVRXNRMEZCUVN4VFFVRkJMRVZCUVZjc1RVRkJUU3hOUVVGSE8wRkJOVXd4UXl4SlFVRkJSQ3hKUVVGQlFTeEhRVUZCUVN4RFFVRkJRVHRCUVRSTU5rTXNTVUZCUVN4UFFVRkJMRU5CUVVGQkxFZEJRVUVzUjBGQlFTeEpRVUZCTEVOQlFVc3NXVUZCWVN4RFFVRkJMRTlCUVVFc1MwRkJiRUlzWjBKQlFVRkJMRWRCUVRKQ0xFTkJRVUVzUzBGQlFTeEZRVUZCTEVOQlFVRTdRVUZCUVN4SFFVRlRMRVZCUVVFc1EwRkJReXhKUVVGTExFTkJRVUVzV1VGQldTeERRVUZETEVOQlFVRXNRMEZCUVR0QlFVVnNSeXhGUVVGQkxGTkJRVk1zVTBGQlV5eExRVUUwUXl4RlFVRkJPMEZCUXpWRUxFbEJRVTBzVFVGQlFTeExRVUZCTEVkQlFWRXNUVUZCVFN4TlFVRlBMRU5CUVVFc1MwRkJRU3hEUVVGQk8wRkJRek5DTEVsQlFVRXNZVUZCUVN4RFFVRmpMRXRCUVVzc1EwRkJRU3hEUVVGQk8wRkJRMjVDTEVsQlFVRXNZMEZCUVN4RFFVRmxMRU5CUVVNc1EwRkJRU3hEUVVGQk8wRkJRMmhDTEVsQlFVRXNTVUZCU1N4blFrRkJhMElzUlVGQlFUdEJRVU53UWl4TlFVRkJMRzFDUVVGQkxFTkJRVzlDTEV0QlFVc3NRMEZCUVN4RFFVRkJPMEZCUVVFc1MwRkRNMEk3UVVGQlFTeEhRVU5HTzBGQlJVRXNSVUZCUVN4TlFVRk5MSE5DUVVGNVFpeEhRVUZCTEZkQlFVRTdRVUZCUVN4SlFVTTNRaXhEUVVGRExFbEJRV3RETEV0QlFVRTdRVUZEYWtNc1RVRkJjVUlzYjBKQlFVRXNRMEZCUVN4RFFVRkRMRkZCUVdFc1MwRkJRU3hSUVVGQkxFTkJRVk1zVFVGQlR5eERRVUZCTEVOQlFVTXNWMEZCVnl4TlFVRlBMRU5CUVVFc1MwRkJRU3hMUVVGVkxFbEJRVXNzUTBGQlFTeExRVUZMTEVOQlFVTXNRMEZCUVN4RFFVRkJPMEZCUXpOR0xFMUJRVUVzVlVGQlFTeERRVUZYTEUxQlFVYzdRVUV4VFhCQ0xGRkJRVUZCTEVsQlFVRkJMRWRCUVVGQkxFTkJRVUZCTzBGQk1FMTFRaXhSUVVGQkxFOUJRVUVzUTBGQlFVRXNSMEZCUVN4SFFVRkJMRWxCUVVFc1EwRkJTeXhaUVVGaExFTkJRVUVzVDBGQlFTeExRVUZzUWl4blFrRkJRVUVzUjBGQk1rSXNRMEZCUVN4TFFVRkJMRVZCUVVFc1EwRkJRVHRCUVVGQkxFOUJRVThzUTBGQlFTeERRVUZCTzBGQlFVRXNTMEZEY2tRN1FVRkJRU3hKUVVOQkxFTkJRVU1zUzBGQlN5eFpRVUZaTEVOQlFVRTdRVUZCUVN4SFFVTndRaXhEUVVGQk8wRkJTVUVzUlVGQlFTeE5RVUZOTEhGQ1FVRjNRaXhIUVVGQkxHMUNRVUZCTzBGQlFVRXNTVUZETlVJc2JVSkJRVzFDTEdWQlFXZENMRU5CUVVFc1owSkJRVUVzUjBGQmJVSXNSVUZCU3l4SFFVRkJMRlZCUVVFc1JVRkJXU3hsUVVGbExFTkJRVU1zUTBGQlFUdEJRVUZCTEVkQlEzcEdMRU5CUVVFN1FVRkhRU3hGUVVGSkxFbEJRVUVzWjBKQlFVRXNTVUZCYjBJc1pVRkJiMElzUzBGQlFTeFZRVUZCTEVsQlFXTXNWVUZCV1N4RlFVRkJPMEZCUTNCRkxFbEJRVUVzY1VKQlFVRXNRMEZCYzBJc1NVRkJTeXhEUVVGQk8wRkJRVUVzVFVGRGVrSXNTMEZCUVN4RlFVRlBMRmRCUVZjc1NVRkJTeXhGUVVGQk8wRkJRVUVzVFVGRGRrSXNTMEZCUVN4RlFVRlBMRmRCUVZjc1NVRkJTeXhGUVVGQk8wRkJRVUVzVFVGRGRrSXNVVUZCVlN4RlFVRkJMRWxCUVVFN1FVRkJRU3hMUVVOWUxFTkJRVUVzUTBGQlFUdEJRVUZCTEVkQlEwZzdRVUZIUVN4RlFVRkJMRTFCUVUwc1kwRkJhVUlzUjBGQlFTd3dRa0ZCUVN4RFFVRXlRaXh4UWtGQmRVSXNSVUZCUVN4UFFVRkJMRVZCUVZNc2EwSkJRV3RDTEVOQlFVRXNRMEZCUVR0QlFVVndSeXhGUVVGQkxFMUJRVTBzYTBKQlFYRkNMRWRCUVVFc1YwRkJRVHRCUVVGQkxFbEJRM3BDTEU5QlFVOHNVMEZCT0VJc1MwRkJRVHRCUVd4UGVrTXNUVUZCUVVFc1NVRkJRVUVzUjBGQlFVRXNRMEZCUVVFN1FVRnRUMDBzVFVGQlFTeGxRVUZCTEVOQlFXZENMRXRCUVVzc1EwRkJRU3hEUVVGQk8wRkJRM0pDTEUxQlFVRXNhVUpCUVVFc1EwRkJhMElzU1VGQlNTeERRVUZCTEVOQlFVRTdRVUZEZEVJc1RVRkJRU3hWUVVGQkxFTkJRVmNzUlVGQlJTeERRVUZCTEVOQlFVRTdRVUZEWWl4TlFVRkJMRWxCUVVsRkxGZEJRVEJETEVWQlFVTXNRMEZCUVR0QlFVVXZReXhOUVVGSkxFbEJRVUU3UVVGRFJpeFJRVUZCTEVsQlFVa3NZMEZCWXl4TFFVRlBMRVZCUVVFN1FVRkRka0lzVlVGQlFVRXNVVUZCVlN4SFFVRkJMRTFCUVUwc1MwRkJUU3hEUVVGQkxGRkJRVUVzUTBGQlV5eEpRVUZKTEVOQlFVRXNRMEZCUVR0QlFVRkJMRk5CUTNKRExFMUJRVUVzU1VGQlZ5eGpRVUZqTEZWQlFWa3NSVUZCUVR0QlFVTnVReXhWUVVGQlFTeFJRVUZCUVN4SFFVRlZMRTFCUVUwc1lVRkJZeXhGUVVGQkxFTkJRVUU3UVVGQlFTeFRRVU5vUXl4TlFVRkJMRWxCUVZjc1kwRkJZeXhQUVVGVExFVkJRVUU3UVVGRGFFTXNWVUZCUVVFc1VVRkJWU3hIUVVGQkxFMUJRVTBzUzBGQlRTeERRVUZCTEdGQlFVRXNRMEZCWXl4TlFVRlBMRU5CUVVFc1EwRkJRVHRCUVVGQkxGTkJRemRETzBGQlNVRXNVVUZCU1N4SlFVRkJMR3RDUVVGQkxFTkJRVzFDTEZsQlFWa3NVMEZCVnl4RlFVRkJPMEZCUXpWRExGVkJRVUVzVDBGQlFUdEJRVUZCTEZOQlEwWTdRVUZEUVN4UlFVRkJMRlZCUVVFc1EwRkJWMEVzVVVGQlR5eERRVUZCTEVOQlFVRTdRVUZEYkVJc1VVRkJRU3hKUVVGQkxFTkJRVWxHTEVkQlFVRkZMRWRCUVVGQkxGRkJRVUZCTEVOQlFWRXNRMEZCVWl4RFFVRkJMRXRCUVVFc1NVRkJRU3hIUVVGQkxFdEJRVUVzUTBGQlFTeEhRVUZCUml4SlFVRlpMRXRCUVU4c1JVRkJRVHRCUVVOeVFpeFZRVUZCTEdOQlFVRXNRMEZCWlN4RFFVRkRMRU5CUVVFc1EwRkJRVHRCUVVGQkxGTkJRMWdzVFVGQlFUdEJRVU5NTEZWQlFVRXNZMEZCUVN4RFFVRmxMRU5CUVVNc1EwRkJRU3hEUVVGQk8wRkJRVUVzVTBGRGJFSTdRVUZCUVN4bFFVTlBMRU5CUVZBc1JVRkJRVHRCUVVOQkxGRkJRVUVzWlVGQlFTeERRVUZuUWl4SlFVRkpMRU5CUVVFc1EwRkJRVHRCUVVGQkxFOUJRM1JDTzBGQlEwRXNUVUZCUVN4cFFrRkJRU3hEUVVGclFpeExRVUZMTEVOQlFVRXNRMEZCUVR0QlFVRkJMRXRCUTNwQ08wRkJRVUVzU1VGRFFTeERRVUZETEZGQlFWRXNTMEZCU3l4RFFVRkJPMEZCUVVFc1IwRkRhRUlzUTBGQlFUdEJRVVZCTEVWQlFVRXNUVUZCVFN4cFFrRkJhVUlzWTBGQlpTeERRVUZCTzBGQlFVRXNTVUZEY0VNc1QwRkJUeXh4UWtGQmMwSXNRMEZCUVN4TlFVRkJPMEZCUVVFc1NVRkROMElzWjBKQlFVRXNSVUZCYTBJc1RVRkJUU3hKUVVGQkxFTkJRVXNzVVVGQlV5eERRVUZCTEU5QlFVRTdRVUZCUVN4SlFVTjBReXhqUVVGakxFTkJRVU1zUzBGQlFTeExRVU5pTEhGQ1FVRnpRaXhEUVVGQkxFdEJRVUVzUTBGQlFTeERRVUZQTEdOQlFXTXNlVU5CUVRSRExFZEJRVUVzZDBKQlFVRTdRVUZCUVN4SlFVTjZSaXhSUVVGVkxFVkJRVUVzY1VKQlFVRTdRVUZCUVN4SFFVTllMRU5CUVVFc1EwRkJRVHRCUVUxRUxFVkJRVUVzVFVGQlRTeHZRa0ZCZFVJc1IwRkJRU3hYUVVGQk8wRkJRVUVzU1VGRE0wSXNRMEZCUXl4UFFVRTBRaXhqUVVFMFFpeExRVUZCTzBGQlEzWkVMRTFCUVVFc1NVRkJTU3hMUVVGTkxFTkJRVUVzUjBGQlFTeExRVUZSTEZkQlFXVXNTVUZCUVN4RFFVRkRMRlZCUVZrc1JVRkJRVHRCUVVNMVF5eFJRVUZCTEVsQlFVa3NiMEpCUVc5Q0xFOUJRVk1zUlVGQlFUdEJRVU12UWl4VlFVRkJMRWxCUVVrc1kwRkJaMElzUlVGQlFUdEJRVU5zUWl4WlFVRkJMRWxCUVVrc2EwSkJRV3RDTEUxQlFWRXNSVUZCUVR0QlFVTTFRaXhqUVVGQkxHOUNRVUZCTEVOQlFYRkNMRU5CUVVNc1MwRkJWU3hMUVVGQk8wRkJRemxDTEdkQ1FVRk5MRTFCUVVFc1QwRkJRU3hIUVVGVkxFTkJRVU1zUjBGQlJ5eExRVUZMTEVOQlFVRXNRMEZCUVR0QlFVTjZRaXhuUWtGQlVTeFBRVUZCTEVOQlFVRXNUVUZCUVN4RFFVRlBMRWxCUVVrc1EwRkJReXhEUVVGQkxFTkJRVUU3UVVGRmNFSXNaMEpCUVU4c1QwRkJRU3hQUVVGQkxFTkJRVUU3UVVGQlFTeGxRVU5TTEVOQlFVRXNRMEZCUVR0QlFVTkVMR05CUVVFc1QwRkJRVHRCUVVGQkxHRkJRMFk3UVVGQlFTeFhRVU5HTzBGQlEwRXNWVUZCUVN4WlFVRkJMRU5CUVdFc1ZVRkJWU3hEUVVGQkxFTkJRVUU3UVVGRGRrSXNWVUZCUVN4UFFVRkJPMEZCUVVFc1UwRkRSanRCUVVkQkxGRkJRVUVzYTBKQlFVRXNTVUZCUVN4SlFVRkJMRWRCUVVFc1MwRkJRU3hEUVVGQkxFZEJRVUVzYTBKQlFVRXNSVUZCUVN4RFFVRkJPMEZCUlVFc1VVRkJRU3hMUVVGQkxFTkJRVTBzZVVKQlFYbENMRTFCUVU4c1EwRkJRU3hEUVVGQk8wRkJSWFJETEZGQlFVRXNTVUZCU1N4WFFVRmhMRVZCUVVFN1FVRkRaaXhWUVVGbExHTkJRVUVzUlVGQlFTeERRVUZCTzBGQlFVRXNVMEZEYWtJN1FVRkJRU3hQUVVOR08wRkJRVUVzUzBGRFJqdEJRVUZCTEVsQlEwRTdRVUZCUVN4TlFVTkZMRlZCUVVFN1FVRkJRU3hOUVVOQkxHVkJRVUU3UVVGQlFTeE5RVU5CTEV0QlFVRTdRVUZCUVN4TlFVTkJMRTFCUVVFN1FVRkJRU3hOUVVOQkxGZEJRVUU3UVVGQlFTeE5RVU5CTEdsQ1FVRnJRaXhEUVVGQkxFMUJRVUU3UVVGQlFTeE5RVU5zUWl4alFVRkJPMEZCUVVFc1RVRkRRU3hyUWtGQlFUdEJRVUZCTEV0QlEwWTdRVUZCUVN4SFFVTkdMRU5CUVVFN1FVRkZRU3hGUVVGQkxFMUJRVTBzWTBGQmFVSXNSMEZCUVN4WFFVRkJPMEZCUVVFc1NVRkRja0lzUTBGQlF5eFBRVUUwUWl4alFVRTJRaXhMUVVGQk8wRkJNVlE1UkN4TlFVRkJRU3hKUVVGQlFTeEhRVUZCUVN4RFFVRkJRVHRCUVRaVVRTeE5RVUZCTEVsQlFVa3NTMEZCVFN4RFFVRkJMRWRCUVVFc1MwRkJVU3hMUVVGVExFbEJRVUVzUTBGQlF5eE5RVUZOTEZGQlFWVXNSVUZCUVR0QlFVTXhReXhSUVVGQkxFbEJRVWtzWTBGQlowSXNSVUZCUVR0QlFVVnNRaXhWUVVGQkxFdEJRVUVzUTBGQlRTeGpRVUZsTEVWQlFVRXNRMEZCUVR0QlFVTnlRaXhWUVVFMlFpdzBRa0ZCUVN4RFFVRkJMRXRCUVVFc1JVRkJUeXhSUVVGVExHbENRVUZwUWl4RFFVRkJMRU5CUVVFN1FVRkRPVVFzVlVGQlFTeERRVUZCUVN4SFFVRkJMRWRCUVVFc1NVRkJRU3hEUVVGTExGbEJRV0VzUTBGQlFTeFBRVUZCTEV0QlFXeENMR2RDUVVGQlFTeEhRVUV5UWl4RFFVRkJMRXRCUVVFc1JVRkJRU3hEUVVGQk8wRkJRVUVzVTBGRE4wSTdRVUZGUVN4UlFVRkJMRzlDUVVGQkxFbEJRVUVzU1VGQlFTeEhRVUZCTEV0QlFVRXNRMEZCUVN4SFFVRkJMRzlDUVVGQkxFVkJRVUVzUTBGQlFUdEJRVU5CTEZGQlFXVXNZMEZCUVN4RlFVRkJMRU5CUVVFN1FVRkJRU3hQUVVOcVFqdEJRVUZCTEV0QlEwWTdRVUZCUVN4SlFVTkJPMEZCUVVFc1RVRkRSU3hOUVVGQk8wRkJRVUVzVFVGRFFTeHBRa0ZCUVR0QlFVRkJMRTFCUTBFc2IwSkJRVUU3UVVGQlFTeE5RVU5CTERSQ1FVRkJPMEZCUVVFc1RVRkRRU3hqUVVGQk8wRkJRVUVzVFVGRFFTeExRVUZCTzBGQlFVRXNUVUZEUVN4SlFVRkxMRU5CUVVFc1dVRkJRVHRCUVVGQkxFdEJRMUE3UVVGQlFTeEhRVU5HTEVOQlFVRTdRVUZGUVN4RlFVRkJMRTFCUVUwc2JVSkJRWE5DTEVkQlFVRXNWMEZCUVR0QlFVRkJMRWxCUXpGQ0xFTkJRVU1zVDBGQk5FSXNZMEZCTmtJc1MwRkJRVHRCUVVONFJDeE5RVUZCTEVsQlFVa3NTMEZCVFN4RFFVRkJMRWRCUVVFc1MwRkJVU3hMUVVGVExFbEJRVUVzUzBGQlFTeERRVUZOTEZGQlFWVXNSVUZCUVR0QlFVTjZReXhSUVVGQkxFbEJRVWtzWTBGQlowSXNSVUZCUVR0QlFVVnNRaXhWUVVGQkxFdEJRVUVzUTBGQlRTeGpRVUZsTEVWQlFVRXNRMEZCUVR0QlFVTnlRaXhWUVVFMlFpdzBRa0ZCUVN4RFFVRkJMRXRCUVVFc1JVRkJUeXhOUVVGVExFVkJRVUVzYVVKQlFVRXNSVUZCYlVJc1NVRkJTU3hEUVVGQkxFTkJRVUU3UVVGQlFTeFRRVU4wUlR0QlFVTkJMRkZCUVVFc2IwSkJRVUVzU1VGQlFTeEpRVUZCTEVkQlFVRXNTMEZCUVN4RFFVRkJMRWRCUVVFc2IwSkJRVUVzUlVGQlFTeERRVUZCTzBGQlEwRXNVVUZCWlN4alFVRkJMRVZCUVVFc1EwRkJRVHRCUVVGQkxFOUJRMnBDTzBGQlFVRXNTMEZEUmp0QlFVRkJMRWxCUTBFc1EwRkJReXhOUVVGUkxFVkJRVUVzYVVKQlFVRXNSVUZCYlVJc2IwSkJRWE5DTEVWQlFVRXNORUpCUVVFc1JVRkJPRUlzWjBKQlFXZENMRXRCUVVzc1EwRkJRVHRCUVVGQkxFZEJRM1pITEVOQlFVRTdRVUZGUVN4RlFVRkJMRTFCUVUwc1owSkJRVzFDTEVkQlFVRXNWMEZCUVR0QlFVRkJMRWxCUTNaQ0xFTkJRVU1zVDBGQk5FSXNZMEZCTmtJc1MwRkJRVHRCUVVONFJDeE5RVUZCTEVsQlFVa3NTMEZCVFN4RFFVRkJMRWRCUVVFc1MwRkJVU3hQUVVGWExFbEJRVUVzVjBGQlFTeEpRVUZsTEVsQlFVMHNSVUZCUVR0QlFVZG9SQ3hSUVVGSkxFbEJRVUVzUTBGQlF5eHpRa0ZCYzBJc1YwRkJZeXhEUVVGQkxFVkJRVUU3UVVGRGRrTXNWVUZCUVN4UFFVRkJPMEZCUVVFc1UwRkRSanRCUVVOQkxGRkJRVUVzVFVGQlRTeGxRVUZsTEhGQ1FVRnpRaXhEUVVGQkxGZEJRVUVzUTBGQlFTeERRVUZCTzBGQlJUTkRMRkZCUVVFc1NVRkJTU3hqUVVGblFpeEZRVUZCTzBGQlEyeENMRlZCUVVFc01rSkJRVUVzUTBGQk5FSXNXVUZCV1N4RFFVRkJMRU5CUVVFN1FVRkRlRU1zVlVGQlFTeGhRVUZCTEVOQlFXTXNSVUZCUlN4RFFVRkJMRU5CUVVFN1FVRkJRU3hUUVVOWUxFMUJRVUU3UVVGRFRDeFZRVUZOTEV0QlFVRXNRMEZCUVN4aFFVRkJPMEZCUVVFc1dVRkRTaXhOUVVGQk8wRkJRVUVzV1VGRFFTd3lRa0ZCTkVJc1EwRkJRVHRCUVVGQkxHTkJRekZDTEdWQlFVRTdRVUZCUVN4alFVTkJMRWxCUVUwc1JVRkJRU3haUVVGQk8wRkJRVUVzWTBGRFRpeE5RVUZCTzBGQlFVRXNZMEZEUVN4dlFrRkJRVHRCUVVGQkxHRkJRMFFzUTBGQlFUdEJRVUZCTEZkQlEwZ3NRMEZCUVR0QlFVVkJMRlZCUVc5RExHMURRVUZCTEVOQlFVRTdRVUZCUVN4WlFVTnNReXh0UWtGQlFUdEJRVUZCTEZsQlEwRXNTVUZCVFN4RlFVRkJMRmxCUVVFN1FVRkJRU3haUVVOT0xHVkJRVUU3UVVGQlFTeFpRVU5CTEdGQlFVRTdRVUZCUVN4WlFVTkJMRTFCUVVFN1FVRkJRU3hYUVVORUxFTkJRVUVzUTBGQlFUdEJRVVZFTEZWQlFVRXNjVUpCUVVFN1FVRkJRU3haUVVORkxHVkJRVUU3UVVGQlFTeFpRVU5CTEZsQlFVRTdRVUZCUVN4WlFVTkJMRzlDUVVGQk8wRkJRVUVzV1VGRFFTeExRVUZMTEZsQlFXRXNRMEZCUVN4UFFVRkJPMEZCUVVFc1dVRkZiRUlzWlVGQlpTeExRVUZSTEVkQlFVRXNTMEZCUVN4RFFVRkJPMEZCUVVFc1YwRkRla0lzUTBGQlFUdEJRVU5CTEZWQlFVRXNZMEZCUVN4RFFVRmxMRWxCUVVrc1EwRkJRU3hEUVVGQk8wRkJRMjVDTEZWQlFVRXNTVUZCU1N4WlFVRmpMRVZCUVVFN1FVRkRhRUlzV1VGQlFTeHJRa0ZCUVN4SlFVRkJMRWxCUVVFc1IwRkJRU3hMUVVGQkxFTkJRVUVzUjBGQlFTeHJRa0ZCUVN4RlFVRkJMRU5CUVVFN1FVRkJRU3hYUVVOR08wRkJRVUVzVTBGRFJqdEJRVUZCTEU5QlEwWTdRVUZCUVN4TFFVTkdPMEZCUVVFc1NVRkRRVHRCUVVGQkxFMUJRMFVzVjBGQlFUdEJRVUZCTEUxQlEwRXNjVUpCUVVFN1FVRkJRU3hOUVVOQkxESkNRVUZCTzBGQlFVRXNUVUZEUVN4TFFVRkJPMEZCUVVFc1RVRkRRU3hOUVVGQk8wRkJRVUVzVFVGRFFTeGxRVUZCTzBGQlFVRXNUVUZEUVN4dFFrRkJRVHRCUVVGQkxFMUJRMEVzYjBKQlFVRTdRVUZCUVN4TlFVTkJMRWxCUVVzc1EwRkJRU3haUVVGQk8wRkJRVUVzVFVGRFRDeFpRVUZCTzBGQlFVRXNUVUZEUVN4clFrRkJRVHRCUVVGQkxFdEJRMFk3UVVGQlFTeEhRVU5HTEVOQlFVRTdRVUZGUVN4RlFVRkJMRTFCUVUwc2QwSkJRVEpDTEVkQlFVRXNWMEZCUVR0QlFVRkJMRWxCUXk5Q0xFTkJRVU1zUzBGQmJVTXNTMEZCUVR0QlFXeGhlRU1zVFVGQlFVRXNTVUZCUVVFc1IwRkJRVUVzUTBGQlFVRTdRVUZ0WVUwc1RVRkJUU3hOUVVGQkxGVkJRVUVzUjBGQllTeExRVUZOTEVOQlFVRXNTMEZCUVN4SlFVRlRMRXRCUVUwc1EwRkJRU3hMUVVGQkxFTkJRVUU3UVVGRGVFTXNUVUZCY1VJc2IwSkJRVUVzUTBGQlFTeERRVUZETEVsQlFWTXNTMEZCUVN4SlFVRkJMRU5CUVVzc1RVRkJUeXhEUVVGQkxFTkJRVU1zVTBGQlV5eEpRVUZMTEVOQlFVRXNTMEZCUVN4TFFVRlZMRXRCUVUwc1EwRkJRU3hMUVVGTExFTkJRVU1zUTBGQlFTeERRVUZCTzBGQlEyaEdMRTFCUVVFc2JVSkJRVUVzUTBGQmIwSXNTVUZCU1N4RFFVRkJMRU5CUVVFN1FVRkRlRUlzVFVGQlFTeGhRVUZCTEVOQlFXTXNWVUZCVlN4RFFVRkJMRU5CUVVFN1FVRkRlRUlzVFVGQlFTeERRVUZCUVN4SFFVRkJMRWRCUVVFc1NVRkJRU3hEUVVGTExGbEJRV0VzUTBGQlFTeFBRVUZCTEV0QlFXeENMR2RDUVVGQlFTeEhRVUV5UWl4RFFVRkJMRXRCUVVFc1JVRkJRU3hEUVVGQk8wRkJRek5DTEUxQlFVRXNWVUZCUVN4RFFVRlhMRTFCUVUwN1FVRjRZWFpDTEZGQlFVRkJMRWxCUVVGQkxFZEJRVUZCTEVOQlFVRkJPMEZCZVdGUkxGRkJRVUVzUTBGQlFVRXNSMEZCUVN4SFFVRkJMRWxCUVVFc1EwRkJTeXhaUVVGaExFTkJRVUVzVDBGQlFTeExRVUZzUWl4blFrRkJRVUVzUjBGQk1rSXNRMEZCUVN4TlFVRkJMRVZCUVVFc1EwRkJRVHRCUVVGQkxFOUJRelZDTEVOQlFVRXNRMEZCUVR0QlFVRkJMRXRCUTBnN1FVRkJRU3hKUVVOQkxFTkJRVU1zUzBGQlN5eFpRVUZaTEVOQlFVRTdRVUZCUVN4SFFVTndRaXhEUVVGQk8wRkJUVUVzUlVGQlFTeFRRVUZCTEVOQlFWVXNUVUZCVFR0QlFVVmtMRWxCUVVFc1NVRkJTU3hKUVVGTkxFVkJRVUU3UVVGRFVpeE5RVUZCTEd0Q1FVRkJMRU5CUVcxQ0xHVkJRV1VzUTBGQlFTeERRVUZCTzBGQlFVRXNTMEZEY0VNN1FVRkJRU3hIUVVWRExFVkJRVUVzUTBGQlF5eEpRVUZOTEVWQlFVRXNaVUZCWlN4RFFVRkRMRU5CUVVFc1EwRkJRVHRCUVVreFFpeEZRVUZCTEZOQlFVRXNRMEZCVlN4TlFVRk5PMEZCTjJKc1FpeEpRVUZCTEVsQlFVRkJMRWRCUVVGSExFVkJRVUZCTEVkQlFVRkJMRU5CUVVGQk8wRkJPR0pKTEVsQlFVRXNTVUZCU1N4RFFVRkRMRmRCUVdFc1JVRkJRVHRCUVVOb1FpeE5RVUZCTEVsQlFVa3NNa0pCUVhsQ1NDeEhRVUZCTEVkQlFVRXNUVUZCUVN4SlFVRkJMRWxCUVVFc1IwRkJRU3hMUVVGQkxFTkJRVUVzUjBGQlFTeE5RVUZCTEVOQlFWRXNUVUZCVWl4TFFVRkJMRWxCUVVFc1IwRkJRU3hMUVVGQkxFTkJRVUVzUjBGQlFVRXNTVUZCWjBJc1RVRkJVU3hEUVVGQkxFVkJRVUU3UVVGRGJrUXNVVUZCVFN4TlFVRkJMR2xDUVVGQkxFZEJRWEZDTEU5QlFVOHNUVUZCYjBJc1EwRkJRU3hOUVVGQk8wRkJRVUVzVlVGRGNFUXNRMEZCUXl4SFFVRkxMRVZCUVVFc1MwRkJRU3hGUVVGUExFTkJRVWNzUzBGQlFUdEJRV3BqTVVJc1dVRkJRVUVzU1VGQlFVRXNSMEZCUVVFc1EwRkJRVUU3UVVGcFl6WkNMRmxCUVVFc1QwRkJRVHRCUVVGQkxHTkJRMnBDTEVkQlFVY3NSMEZCUVR0QlFVRkJMR05CUTBnN1FVRkJRU3huUWtGRFJTeFRRVUZQUVN4SFFVRkJMRWRCUVVFc1RVRkJRU3hEUVVGUExGZEJRVkFzUzBGQlFTeEpRVUZCTEVkQlFVRXNTMEZCUVN4RFFVRkJMRWRCUVVGQkxFbEJRWEZDTEVOQlFVMHNRMEZCUVN4TFFVRkJMRXRCUVVFN1FVRkJRU3huUWtGRGJFTXNTMEZCUVR0QlFVRkJMR1ZCUTBZN1FVRkJRU3hoUVVOR0xFTkJRVUU3UVVGQlFTeFhRVUZCTzBGQlFVRXNWVUZEUVN4RlFVRkRPMEZCUVVFc1UwRkRTQ3hEUVVGQk8wRkJSVUVzVVVGQlFTeHZRa0ZCUVN4RFFVRnhRaXhwUWtGQmFVSXNRMEZCUVN4RFFVRkJPMEZCUVVFc1QwRkRlRU03UVVGSlFTeE5RVUZKTEVsQlFVRXNRMEZCUXl4NVFrRkJlVUlzYlVKQlFYRkNMRVZCUVVFN1FVRkRha1FzVVVGQll5eGhRVUZCTEVOQlFVRXNRMEZCUVN4TlFVRkJMRWxCUVVFc1NVRkJRU3hIUVVGQkxFdEJRVUVzUTBGQlFTeEhRVUZCTEUxQlFVRXNRMEZCVVN4VlFVRlRMRVZCUVVVc1EwRkJRU3hEUVVGQk8wRkJRMnBETEZGQlFVRXNWVUZCUVN4RFFVRlhMRTFCUVUwN1FVRnNaSHBDTEZWQlFVRkJMRWxCUVVGQkxFZEJRVUZCTEVOQlFVRkJPMEZCYldSVkxGVkJRVUVzUTBGQlFVRXNSMEZCUVN4SFFVRkJMRWxCUVVFc1EwRkJTeXhaUVVGaExFTkJRVUVzVDBGQlFTeExRVUZzUWl4blFrRkJRVUVzUjBGQk1rSXNRMEZCUVN4TlFVRkJMRVZCUVVFc1EwRkJRVHRCUVVGQkxGTkJRelZDTEVOQlFVRXNRMEZCUVR0QlFVRkJMRTlCUTBnN1FVRkZRU3hOUVVGQkxFTkJRVUZITEVkQlFVRXNSMEZCUVN4SlFVRkJMRU5CUVVzc1dVRkJZU3hEUVVGQkxFOUJRVUVzUzBGQmJFSXNaMEpCUVVGQkxFZEJRVEpDTEVOQlFVRXNTMEZCUVN4RlFVRkJMRU5CUVVFN1FVRkJRU3hMUVVNM1FqdEJRVUZCTEVkQlJVWXNSVUZCUnl4RlFVRkZMRU5CUVVFc1EwRkJRVHRCUVVsTUxFVkJRVUVzVTBGQlFTeERRVUZWTEUxQlFVMDdRVUZEWkN4SlFVRkJMRWxCUVVrc2IwSkJRVzlDTEdsQ1FVRnRRaXhGUVVGQk8wRkJRM3BETEUxQlFVRXNWVUZCUVN4RFFVRlhMRTFCUVUwc1pVRkJRU3hEUVVGblFpeEZRVUZGTEVOQlFVTXNRMEZCUVN4RFFVRkJPMEZCUVVFc1MwRkRkRU03UVVGQlFTeEhRVU5ETEVWQlFVRXNRMEZCUXl4cFFrRkJiVUlzUlVGQlFTeG5Ra0ZCWjBJc1EwRkJReXhEUVVGQkxFTkJRVUU3UVVGSGVFTXNSVUZCUVN4bFFVRkJMRU5CUVdkQ0xFMUJRVTA3UVVGRGNFSXNTVUZCUVN4SlFVRkpMRzFDUVVGdFFpeFBRVUZUTEVWQlFVRTdRVUZET1VJc1RVRkJRU3hyUWtGQlFTeERRVUZ0UWl4UFFVRlZMRWRCUVVFc1pVRkJRU3hEUVVGQk8wRkJRVUVzUzBGREwwSTdRVUZCUVN4SFFVTkdMRVZCUVVjc1EwRkJReXhsUVVGbExFTkJRVU1zUTBGQlFTeERRVUZCTzBGQlJYQkNMRVZCUVVFc1pVRkJRU3hEUVVGblFpeE5RVUZOTzBGQk0yVjRRaXhKUVVGQkxFbEJRVUZJTEVkQlFVRkhMRVZCUVVGQkxFZEJRVUZCTEVOQlFVRkJPMEZCT0dWSkxFbEJRVUVzU1VGRFJTeG5Ra0ZCWjBJc1NVRkRhRUlzU1VGQlFTeGpRVUZCTEVOQlFXVXNTMEZEWkN4TFFVRkJMRmRCUVVFc1NVRkJRU3hEUVVGalNDeE5RVUZCTEdOQlFXVXNRMEZCUVN4TFFVRkJMRXRCUVdZc1NVRkJRVUVzUjBGQlFVRXNTMEZCUVVFc1EwRkJRVUVzUjBGQlFVRXNSMEZCUVVFc1EwRkJjMElzWVVGQldTeFhRVUZqUnl4SlFVRkJRU3hEUVVGQlFTeEhRVUZCUVN4SFFVRkJMR1ZCUVdVc1MwRkJaaXhMUVVGQkxFbEJRVUVzUjBGQlFTeExRVUZCTEVOQlFVRXNSMEZCUVVFc1NVRkJjMElzVlVGRGNrWXNRMEZCUVN4RFFVRkJMRVZCUVVFN1FVRkRRU3hOUVVGQkxHTkJRVUVzUTBGQlpTeGpRVUZqTEZkQlFWY3NRMEZCUVN4RFFVRkJPMEZCUVVFc1MwRkRNVU03UVVGQlFTeEhRVU5ETEVWQlFVRXNRMEZCUXl4WFFVRmhMRVZCUVVFc1kwRkJZeXhEUVVGRExFTkJRVUVzUTBGQlFUdEJRVVZvUXl4RlFVRkJMRTFCUVUwc1VVRkJWeXhIUVVGQkxFTkJRVUVzUlVGQlFTeEhRVUZCTEUxQlFVRXNTVUZCUVN4SlFVRkJMRWRCUVVFc1MwRkJRU3hEUVVGQkxFZEJRVUVzVFVGQlFTeERRVUZSTEZGQlFWSXNTMEZCUVN4SlFVRkJMRWRCUVVFc1JVRkJRU3hIUVVGdlFpeE5RVUZSTEVsQlFVRXNTVUZCUVN4SFFVRkJMRXRCUVVFc1EwRkJRU3hIUVVGQkxFMUJRVUVzUTBGQlFTeEhRVUZCTEVOQlFVRTdRVUZGTjBNc1JVRkJRU3gxUWtGRFJ5eExRVUZCTEVOQlFVRXNZVUZCUVN4RFFVRkJMRXRCUVVFc1JVRkJRVHRCUVVGQkxFbEJRVWtzVjBGQlZ5eE5RVUZQTEVOQlFVRXNaVUZCUVR0QlFVRkJMRWRCUVVFc1JVRkRjRUlzZVVKQlEwVXNTMEZCUVN4RFFVRkJMR0ZCUVVFc1EwRkJRU3hMUVVGQkxFVkJRVUU3UVVGQlFTeEpRVUZKTEZkQlFWY3NUVUZCVHl4RFFVRkJMRmRCUVVFN1FVRkJRU3hIUVVWd1FpeEZRVUZCTEVOQlFVRXNUVUZCUVN4SlFVRkJMRWxCUVVFc1IwRkJRU3hMUVVGQkxFTkJRVUVzUjBGQlFTeE5RVUZCTEVOQlFWRXNkVUpCUVU4c1MwRkJRU3hEUVVGQkxHRkJRVUVzUTBGQlFTeExRVUZCTEVWQlFVRTdRVUZCUVN4SlFVRkpMRk5CUVZjc1JVRkJRU3hGUVVGQkxFTkJRVWNzVFVGQlR5eERRVUZCTEZGQlFVRXNSVUZCVlN4UFFVRlBMRTlCUVU4c1EwRkJRVHRCUVVGQkxFZEJRVWtzUlVGQlFTeFJRVUZUTEVsQlFWTXNTVUZGZEVZc1JVRkJRU3hEUVVGQkxFMUJRVUVzU1VGQlFTeEpRVUZCTEVkQlFVRXNTMEZCUVN4RFFVRkJMRWRCUVVFc1RVRkJRU3hEUVVGUkxGTkJRVThzVFVGQlVTeEpRVUZCTEVsQlFVRXNSMEZCUVN4TFFVRkJMRU5CUVVFc1IwRkJRU3hOUVVGQkxFTkJRVUVzVVVGQlFTeERRVUZCTEVsQlFWa3NaVUZCYjBJc1MwRkJRU3hWUVVGQkxHMUNRVU55UkN4TFFVRkJMRU5CUVVFc1lVRkJRU3hEUVVGQkxFdEJRVUVzUlVGQlFUdEJRVUZCTEVsQlEwTXNSVUZCU1N4RlFVRkJMR3RDUVVGQk8wRkJRVUVzU1VGRFNpeFhRVUZYTEVWQlFVY3NRMEZCUVN4TlFVRkJMRU5CUVU4c1VVRkJWU3hGUVVGQkxFMUJRVUVzUTBGQlR5eGpRVUZqTEd0Q1FVRnJRaXhEUVVGQk8wRkJRVUVzU1VGRGRFVXNTVUZCU3l4RlFVRkJMRkZCUVVFN1FVRkJRU3hKUVVOTUxGbEJRVmNzUlVGQlFTeHpRa0ZCUVR0QlFVRkJMRWxCUTFnc1VVRkJWU3hGUVVGQkxFTkJRVUU3UVVGQlFTeEpRVU5XTEU5QlFVRXNSVUZCVXl4RFFVRkRMRXRCUVZVc1MwRkJRVHRCUVVOc1FpeE5RVUZCTEV0QlFVRXNRMEZCVFN4bFFVRm5RaXhGUVVGQkxFTkJRVUU3UVVGRGRFSXNUVUZCUVN4aFFVRkJMRU5CUVdNc1JVRkJSU3hEUVVGQkxFTkJRVUU3UVVGRGFFSXNUVUZCUVN4bFFVRkJMRU5CUVdkQ0xGVkJRVmtzUlVGQlFTeFpRVUZCTEVWQlFXTXNTMEZCVnl4RFFVRkJMRVZCUVVFc1NVRkJRU3hEUVVGTExHRkJRV0VzVDBGQlR5eERRVUZCTEVOQlFVRTdRVUZCUVN4TFFVTm9SanRCUVVGQkxFbEJRMEVzVTBGQlFTeEZRVUZYTEVOQlFVTXNTMEZCVlN4TFFVRkJPMEZCUTNCQ0xFMUJRVUVzYlVKQlFVRXNRMEZCYjBJc1QwRkJUeXh4UWtGQmNVSXNRMEZCUVN4RFFVRkJPMEZCUTJoRUxFMUJRVWtzU1VGQlFTeExRVUZCTEVOQlFVMHNVVUZCVVN4UFFVRlRMRVZCUVVFN1FVRkRla0lzVVVGQlFTeGhRVUZCTEVOQlFXTXNSVUZCUlN4RFFVRkJMRU5CUVVFN1FVRkRhRUlzVVVGQlFTeGxRVUZCTEVOQlFXZENMRlZCUVZrc1JVRkJRU3haUVVGQkxFVkJRV01zUzBGQlZ5eERRVUZCTEVWQlFVRXNTVUZCUVN4RFFVRkxMR0ZCUVdFc1QwRkJUeXhEUVVGQkxFTkJRVUU3UVVGQlFTeFBRVU5vUmp0QlFVRkJMRXRCUTBZN1FVRkJRU3hIUVVGQkxFVkJSVU1zVFVGQlR5eERRVUZCTEZGQlExWXNRMEZEUlN4SFFVRkJMRWxCUVVFc2EwSkJSVWdzUzBGQlFTeERRVUZCTEdGQlFVRXNRMEZCUVN4TFFVRkJMRVZCUVVFN1FVRkJRU3hKUVVGSkxFZEJRVXNzUlVGQlFTeDNRa0ZCUVR0QlFVRkJMRWRCUVRCQ0xFZEJRMjVETEdkQ1FVTkhMRWRCUVVFc2FVSkJRVUVzUTBGQmEwSXNTVUZCU1N4RFFVRkRMRWxCUVVFc1JVRkJUU3h6UWtGRE1VSXNTMEZCUVN4RFFVRkJMR0ZCUVVFc1EwRkJRU3hqUVVGQkxFVkJRVUU3UVVGQlFTeEpRVU5ETEVkQlFVRXNSVUZCU3l4RFFVRkhMRVZCUVVFc1NVRkJRU3hEUVVGTExFdEJRVk1zUTBGQlFTeERRVUZCTEVWQlFVRXNRMEZCUVN4RFFVRkJMRU5CUVVFN1FVRkJRU3hKUVVOMFFpeEpRVUZCTzBGQlFVRXNTVUZEUVN4TFFVRlBMRVZCUVVFc1EwRkJRVHRCUVVGQkxFbEJRMUFzYzBKQlFVRTdRVUZCUVN4SlFVTkJMSGRDUVVGQk8wRkJRVUVzUjBGRFJpeERRVU5FTEVOQlEwUXNSMEZCUVN4SlFVTk9MRWxCUTBVc1NVRkZTaXhyUWtGQlFTeExRVUZCTEVOQlFVRXNZVUZCUVN4RFFVRkRMREJEUVVOTExHbENRVUZyUWl4RFFVRkJPMEZCUVVFc1NVRkRjRUlzUzBGQlN5eEpRVUZMTEVOQlFVRXNXVUZCUVR0QlFVRkJMRWxCUTFZc1VVRkJRVHRCUVVGQkxFbEJRMEVzUzBGQlR5eEZRVUZCTEZWQlFVRTdRVUZCUVN4SlFVVlFMRmRCUVdFc1JVRkJRU3h0UWtGQlFTeERRVUZ2UWl4TlFVRlRMRVZCUVVFc1pVRkJRU3hGUVVGcFFpeHJRa0ZCYTBJc1YwRkJWeXhEUVVGQk8wRkJRVUVzU1VGRGVFWXNiVUpCUVhGQ0xFVkJRVUVzVFVGQlFUdEJRVUZCTEVsQlEzSkNMRlZCUVZVc1MwRkJUeXhGUVVGQk8wRkJRMllzVFVGQlFTeEpRVUZKTEVOQlFVTXNTVUZCVFN4RlFVRkJPMEZCUTFRc1VVRkJRU3hQUVVGQkxFTkJRVkVzU1VGQlNTeERRVUZCTEVOQlFVRTdRVUZEV2l4UlFVRkJMRTlCUVVFN1FVRkJRU3hQUVVOR08wRkJSVUVzVFVGQlFTeEpRVUZKTEc5Q1FVRnZRaXhWUVVGWkxFVkJRVUU3UVVGRGJFTXNVVUZCUVN4dFFrRkJRU3hEUVVGdlFpeExRVUZMTEVOQlFVRXNRMEZCUVR0QlFVRkJMRTlCUXpOQ08wRkJRMEVzVFVGQlFTeHZRa0ZCUVN4RFFVRnhRaXhQUVVGUExHZENRVUZuUWl4RFFVRkJMRU5CUVVFN1FVRkROVU1zVFVGQlFTeGpRVUZCTEVOQlFXVXNUMEZCVHl4blFrRkJaMElzUTBGQlFTeERRVUZCTzBGQlEzUkRMRTFCUVVFc1owSkJRVUVzUTBGQmFVSXNUMEZCVHl4blFrRkJaMElzUTBGQlFTeERRVUZCTzBGQlFVRXNTMEZETVVNN1FVRkJRU3hIUVVORUxFTkJja0pHTEVOQlFVRXNSVUZCUVR0QlFVRkJMRWxCYzBKRExGTkJRVUVzUlVGQlZ5eEZRVUZITEVOQlFVRXNUVUZCUVN4RFFVRlBMRlZCUVZrc1JVRkJRU3hGUVVGRkxFTkJRVU1zVFVGQlR5eERRVUZCTEcxQ1FVRkJMRWRCUVhOQ0xFTkJRVU1zWTBGQlFTeEZRVUZuUWl4RFFVRkJPMEZCUVVFc1NVRkRiRVlzVDBGQlFTeEZRVUZUTEVOQlFVTXNTMEZCVlN4TFFVRkJPMEZCUTJ4Q0xFMUJRVUVzUzBGQlFTeERRVUZOTEdWQlFXZENMRVZCUVVFc1EwRkJRVHRCUVVOMFFpeE5RVUZCTEU5QlFVRXNRMEZCVVN4SlFVRkpMRU5CUVVFc1EwRkJRVHRCUVVGQkxFdEJRMlE3UVVGQlFTeEpRVU5CTEZOQlFWTXNUVUZCVFR0QlFVTmlMRTFCUVVFc1QwRkJRU3hEUVVGUkxFbEJRVWtzUTBGQlFTeERRVUZCTzBGQlFVRXNTMEZEWkR0QlFVRkJMRWRCUTBZc1EwRkJRU3hEUVVGQkxFVkJRME1zYVVOQlFXdENMRXRCUVVFc1EwRkJRU3hoUVVGQkxFTkJRVUVzVDBGQlFTeEZRVUZCTzBGQlFVRXNTVUZCVVN4WFFVRlhMRTFCUVU4c1EwRkJRU3huUWtGQlFUdEJRVUZCTEVsQlFXdENMRTFCUVZFc1JVRkJRU3hKUVVGQk8wRkJRVUVzUjBGQlRTeERRVUZMTEVkQlFVRXNTVUZCUVN4clFrRkRha1lzUzBGQlFTeERRVUZCTEdGQlFVRXNRMEZCUVN4alFVRkJMRVZCUVVFc1NVRkJRU3hGUVVORkxIZENRVU5GTEV0QlFVRXNRMEZCUVN4aFFVRkJMRU5CUVVFc2IwSkJRVUVzUlVGQlFUdEJRVUZCTEVsQlFYRkNMRTlCUVVFN1FVRkJRU3hKUVVGclFpeFpRVUZqTEVWQlFVRXNRMEZCUVN4RFFVRkJPMEZCUVVFc1NVRkJTU3h4UWtGQmNVSXNSVUZCUVN4SlFVRkJPMEZCUVVFc1NVRkJReXhMUVVGUExFVkJRVUVzUzBGQlFUdEJRVUZCTEVkQlFVRXNORVZCUld4R0xFdEJRVUVzUTBGQlFTeGhRVUZCTEVOQlFVRXNTMEZCUVN4RlFVRkJPMEZCUVVFc1NVRkRReXhMUVVGQkxFVkJRVThzYVVOQlEwWXNZMEZFUlN4RFFVRkJMRVZCUVVFN1FVRkJRU3hOUVVWTUxFdEJRVUVzUlVGQlR5eERRVUZITEVWQlFVRXNXVUZCUVN4SFFVRmxMREJDUVVFMlFpeEhRVUZCTEdOQlFVRXNRMEZCUVN4RlFVRkJMRU5CUVVFN1FVRkJRU3hOUVVOMFJDeFhRVUZYTEdkQ1FVTlFMRWRCUVVFc1EwRkJRU3hWUVVGQkxFVkJRVUVzUTBGQlFTeERRVUZoTEVWQlFYbENMRWRCUVVFc2QwSkJRVUVzUTBGQlFTeFBRVUZCTEV0QlFYcENMRzFDUVVGclF5eHhRa0ZCZDBJc1JVRkJRU3hEUVVGQkxFbEJRVUVzUzBGQlVTeERRVU0xUlN4RFFVRkJMRWxCUVVFc1JVRkJRU3hEUVVGQkxFTkJRVUVzUTBGQlFTeEZRVUZCTEVkQlFVRXNTVUZCUVN4RFFVRkxMR0ZCUVdFc1QwRkJiRUlzUzBGQlFTeEpRVUZCTEVkQlFVRXNTMEZCUVN4RFFVRkJMRWRCUVVFc1JVRkJRU3hEUVVFeVFpeDNRa0ZCZDBJc1RVRkJWU3hMUVVGQkxFTkJRVUVzU1VGQlN5eFhRVVZ5UlN4alFVRmxMRU5CUVVFc1UwRkJRVHRCUVVGQkxFdEJRM0pDTEVOQlFVRTdRVUZCUVN4SlFVTkJMRXRCUVVzc1NVRkJTeXhEUVVGQkxGZEJRVUU3UVVGQlFTeEpRVU5XTEZkQlFWY3NUVUZCVHl4RFFVRkJMR1ZCUVVFN1FVRkJRU3hKUVVOc1FpeFJRVUZWTEVWQlFVRXNRMEZCUVN4RFFVRkJPMEZCUVVFc1IwRkJRU3hyUWtGRlZDeExRVUZCTEVOQlFVRXNZVUZCUVN4RFFVRkJMRXRCUVVFc1JVRkJRU3hoUVVGQkxFTkJRVUVzWTBGQlFTeERRVUZCTzBGQlFVRXNTVUZEUXl4TFFVRlBMRVZCUVVFN1FVRkJRU3hOUVVOTUxFMUJRVkVzUlVGQlFTeERRVUZCTEVWQlFVY3NZMEZCWlN4RFFVRkJMRmxCUVVFc1JVRkJhMElzU1VGQlFTeDNRa0ZCUVN4RFFVRkJMRVZCUVVFc1EwRkJRVHRCUVVGQkxFdEJRemxETzBGQlFVRXNSMEZCUVN4RlFVTkpMR3RDUVVwTUxFTkJRVUVzUlVGQlFUdEJRVUZCTEVsQlMwTXNVVUZCVlN4RlFVRkJMRU5CUVVFc1EwRkJRVHRCUVVGQkxFZEJRVUVzUTBGQlFTeEZRVVZVTEdOQlEwTXNiVUpCUVVFc1MwRkJRU3hEUVVGQkxHRkJRVUVzUTBGQlF5eDVRa0ZCTUVJc1JVRkJRU3hKUVVGQkxFTkJRVUVzUjBGRGVrSXNLMEpCUTBRc1MwRkJRU3hEUVVGQkxHRkJRVUVzUTBGQlFTeDFRa0ZCUVN4RlFVRkJPMEZCUVVFc1NVRkJkMElzYTBKQlFVRXNSVUZCYjBJc1RVRkJUU3hyUWtGQlFTeERRVUZ0UWl4bFFVRmxMRU5CUVVFN1FVRkJRU3hIUVVGSExFbEJRM1JHTEVOQlFVTXNjVUpCUVVFc1EwRkJjMElzVjBGRGVFSXNRMEZCUXl4blFrRkJRU3hKUVVGdlFpeHZRa0ZCYjBJc1ZVRkJZeXhKUVVGQkxFTkJRVU1zVlVGRGVrUXNRMEZCUVN4dFFrRkJRU3hMUVVGQkxFTkJRVUVzWVVGQlFTeERRVUZETERCQ1FVRnhRaXhEUVVWMFFpeEhRVUZCTEdOQlFVRXNRMEZCWlN4cFFrRkJhMElzUTBGQlFTeEhRVUZCTEVOQlFVa3NRMEZCUXl4WFFVRm5RaXhMUVVGQk8wRkJlRzFDTVVVc1NVRkJRVWdzU1VGQlFVRXNSMEZCUVVFc1EwRkJRVUU3UVVGNWJVSnpRaXhKUVVGTkxFMUJRVUVzU1VGQlFTeEhRVUZQTEhOQ1FVRnpRaXhYUVVGWkxFTkJRVUVzUzBGQlFTeERRVUZCTEVOQlFVRTdRVUZETDBNc1NVRkJRU3hOUVVGTkxGRkJRVkVzVjBGQldTeERRVUZCTEV0QlFVRXNRMEZCUVR0QlFVY3hRaXhKUVVGQkxFbEJRVWtzUzBGQlN5eFBRVUZUTEVWQlFVRTdRVUZEYUVJc1RVRkJRU3gxUWtGRFJ5eExRVUZCTEVOQlFVRXNZVUZCUVN4RFFVRkJMRXRCUVVFc1JVRkJRVHRCUVVGQkxGRkJRME1zUjBGQlFTeEZRVUZMTEVOQlFVY3NSVUZCUVN4SlFVRkJMRU5CUVVzc1MwRkJVeXhEUVVGQkxFTkJRVUVzUlVGQlFTeExRVUZCTEVOQlFVRXNRMEZCUVR0QlFVRkJMRkZCUTNSQ0xGTkJRVmNzUlVGQlFTeEZRVUZCTEVOQlFVY3NUVUZCVHl4RFFVRkJMR2RDUVVGQkxFVkJRV3RDTEU5QlFVOHNZMEZCWXl4RFFVRkJPMEZCUVVFc1VVRkROVVFzUzBGQlR5eEZRVUZCTzBGQlFVRXNWVUZEVEN4TlFVRkJMRVZCUVZFc1IwRkJSeXhYUVVGWkxFTkJRVUVzU1VGQlFTeERRVUZCTEVWQlFVRXNRMEZCUVR0QlFVRkJMRlZCUTNaQ0xGTkJRVUVzUlVGQlZ5eGpRVUZqTEZkQlFWa3NRMEZCUVN4TFFVRkJMRU5CUVVFc1IwRkJRU3hEUVVGQk8wRkJRVUVzVTBGRGRrTTdRVUZCUVN4UFFVRkJMR3RDUVVWRExFdEJRVUVzUTBGQlFTeGhRVUZCTEVOQlFVRXNTVUZCUVN4RlFVRkJPMEZCUVVFc1VVRkJTeXhOUVVGUExFVkJRVUVzVFVGQlFUdEJRVUZCTEZGQlFVOHNUMEZCVVN4RlFVRkJMRmRCUVVFN1FVRkJRU3hSUVVGWkxFdEJRVTBzUlVGQlFTeFhRVUZCTzBGQlFVRXNUMEZETTBNc1JVRkJRU3hKUVVGQkxFTkJRVXNzUzBGRFVpeERRVU5HTEVOQlFVRXNRMEZCUVR0QlFVRkJMRXRCUlVvN1FVRkZRU3hKUVVGTkxFMUJRVUVzVVVGQlFTeEhRVU5LTEhGQ1FVRnpRaXhEUVVGQkxGZEJRVUVzUTBGQldTeExRVUZSTEVkQlFVRXNRMEZCUVN4RFFVRkJMRU5CUVVFN1FVRkROVU1zU1VGQlRTeE5RVUZCTEhGQ1FVRkJMRWRCUVhkQ0xGbEJRVmtzUTBGQlF5eFJRVUZCTEVOQlFWTXNVMEZCVXl4RFFVRkRMRkZCUVVFc1EwRkJVeXhYUVVGWExFbEJRVXNzUTBGQlFTeExRVUZCTEVOQlFVRTdRVUZGZGtZc1NVRkhSU3gxUWtGQlFTeExRVUZCTEVOQlFVRXNZVUZCUVN4RFFVRkRMQ3REUVVOTExGbEJRV0VzUTBGQlFUdEJRVUZCTEUxQlEyWXNSMEZCUVN4RlFVRkxMRU5CUVVjc1JVRkJRU3hKUVVGQkxFTkJRVXNzUzBGQlZTeERRVUZCTEVOQlFVRXNSVUZCUVN4TFFVRkJMRU5CUVVFc1EwRkJRVHRCUVVGQkxFMUJRM1pDTEVsQlFVa3NTVUZCVFN4RlFVRkJPMEZCUTFJc1VVRkJRU3hQUVVGQkxFTkJRVkVzVVVGQlVTeExRVUZUTEVOQlFVRXNSMEZCUVN4SlFVRkJMRU5CUVVFN1FVRkJRU3hQUVVNelFqdEJRVUZCTEUxQlEwRXNVVUZCVVN4TFFVRlBMRVZCUVVFN1FVRXpiMEl6UXl4UlFVRkJRU3hKUVVGQlFTeEhRVUZCUVN4RFFVRkJRVHRCUVRSdlFqaENMRkZCUVVFc1NVRkJTU3h2UWtGQmIwSXNUMEZCVXl4RlFVRkJPMEZCUXk5Q0xGVkJRVUVzUzBGQlFTeERRVUZOTEdWQlFXZENMRVZCUVVFc1EwRkJRVHRCUVVGQkxGTkJRM2hDTzBGQlEwRXNVVUZCUVN4SlFVRkpMR2RDUVVGclFpeEZRVUZCTzBGQlEzQkNMRlZCUVVFc1MwRkJRU3hEUVVGTkxHTkJRV1VzUlVGQlFTeERRVUZCTzBGQlEzSkNMRlZCUVVFc1MwRkJRU3hEUVVGTkxHVkJRV2RDTEVWQlFVRXNRMEZCUVR0QlFVTjBRaXhWUVVGQkxESkNRVUZCTEVOQlFUUkNMRWxCUVVrc1EwRkJRU3hEUVVGQk8wRkJRMmhETEZWQlFVRXNZVUZCUVN4RFFVRmpMRVZCUVVVc1EwRkJRU3hEUVVGQk8wRkJRMmhDTEZWQlFVRXNRMEZCUVVFc1IwRkJRU3hIUVVGQkxFbEJRVUVzUTBGQlN5eFpRVUZoTEVOQlFVRXNUMEZCUVN4TFFVRnNRaXhuUWtGQlFVRXNSMEZCTWtJc1EwRkJRU3hMUVVGQkxFVkJRVUVzUTBGQlFUdEJRVUZCTEZOQlEzUkNMRTFCUVVFN1FVRkRUQ3hWUVVGTkxFdEJRVUVzUTBGQlFTeGhRVUZCTzBGQlFVRXNXVUZEU2l4TlFVRkJPMEZCUVVFc1dVRkRRU3d5UWtGQk5FSXNRMEZCUVR0QlFVRkJMR05CUXpGQ0xHVkJRVUU3UVVGQlFTeGpRVU5CTEVsQlFVRTdRVUZCUVN4alFVTkJMRTFCUVVFN1FVRkJRU3hqUVVOQkxHOUNRVUZCTzBGQlFVRXNZVUZEUkN4RFFVRkJPMEZCUVVFc1YwRkRTQ3hEUVVGQk8wRkJSVUVzVlVGQmIwTXNiVU5CUVVFc1EwRkJRVHRCUVVGQkxGbEJRMnhETEcxQ1FVRkJPMEZCUVVFc1dVRkRRU3hKUVVGQk8wRkJRVUVzV1VGRFFTeGxRVUZCTzBGQlFVRXNXVUZEUVN4aFFVRkJPMEZCUVVFc1dVRkRRU3hOUVVGQk8wRkJRVUVzVjBGRFJDeERRVUZCTEVOQlFVRTdRVUZGUkN4VlFVRkJMSEZDUVVGQk8wRkJRVUVzV1VGRFJTeGxRVUZCTzBGQlFVRXNXVUZEUVN4WlFVRkJPMEZCUVVFc1dVRkRRU3h2UWtGQlFUdEJRVUZCTEZsQlEwRXNTMEZCU3l4WlFVRmhMRU5CUVVFc1QwRkJRVHRCUVVGQkxGbEJSV3hDTEV0QlFVRTdRVUZCUVN4WFFVTkdMRU5CUVVFN1FVRkJRU3hUUVVOR08wRkJRVUVzVDBGRFJqdEJRVUZCTEV0QlEwUXNRMEUzUTBZc1EwRkJRU3hGUVVGQk8wRkJRVUVzVFVFNFEwTXNVVUZCVVN4WFFVRm5RaXhMUVVGQkxFdEJRVUU3UVVGQlFTeE5RVU40UWl4dlFrRkJjMElzUlVGQlFTeHhRa0ZCUVR0QlFVRkJMRTFCUlhSQ0xFdEJRVThzUlVGQlFUdEJRVUZCTEZGQlEwd3NUVUZCUVN4RlFVRlJMRWRCUVVjc1YwRkJXU3hEUVVGQkxFbEJRVUVzUTBGQlFTeEZRVUZCTEVOQlFVRTdRVUZCUVN4UlFVTjJRaXhUUVVGQkxFVkJRVmNzWTBGQll5eFhRVUZaTEVOQlFVRXNTMEZCUVN4RFFVRkJMRWRCUVVFc1EwRkJRVHRCUVVGQkxFOUJRM1pETzBGQlFVRXNUVUZEUVN4blFrRkJZeXh4UWtGQmMwSXNRMEZCUVN4TlFVRkJPMEZCUVVFc1RVRkRjRU1zWlVGQlFTeEZRVUZsTEZsQlFWa3NTMEZCVVN4SFFVRkJMRU5CUVVFN1FVRkJRU3hOUVVOdVF5eG5Ra0ZCUVR0QlFVRkJMRTFCUTBFc1QwRkJRU3hGUVVGVExHdENRVUZyUWl4SlFVRkxMRU5CUVVFc1EwRkJReXhSUVVGUkxFZEJRVWtzUTBGQlFTeExRVUZCTEV0QlFWVXNTMEZCU3l4TFFVRkxMRU5CUVVFN1FVRkJRU3hMUVVGQkxFTkJRVUVzYzBOQlJXaEZMRTFCUTBVc1JVRkJRU3hKUVVGQkxFVkJRVUVzU1VGQlFTeERRVUZMTEZGQlFWY3NSMEZCUVN4dlFrRkJRU3hIUVVGMVFpeEpRVUZITEVkQlFVVkJMRVZCUVVGQkxFTkJRVUZCTEVkQlFVRkJMRWRCUVVFc1NVRkJTeXhEUVVGQkxFdEJRVUVzUzBGQlRDeFBRVUZCUVN4SFFVRmpMRWRCUVVFc1NVRkJRU3hEUVVGTExFdEJRMnhGTEVOQlEwTXNSVUZCUVN4SlFVRkJMRU5CUVVzc09FSkJRV1VzUzBGQlFTeERRVUZCTEdGQlFVRXNRMEZCUVN4TFFVRkJMRVZCUVVFN1FVRkJRU3hOUVVGSkxGZEJRVmNzVFVGQlR5eERRVUZCTEdWQlFVRTdRVUZCUVN4TFFVRnJRaXhGUVVGQkxFbEJRVUVzUTBGQlN5eFhRVUZaTEVOQlFVRXNSMEZCVXl4SlFVTjZSaXhEUVVGQkxFTkJRVUU3UVVGQlFTeEhRVVZJTEVOQlJVd3NRMEZEUml4RFFVTkRMRVZCUVVFc1owSkJRVUVzU1VGQmIwSXNRMEZCUXl4alFVRkJMRWxCUVd0Q0xFTkJRVU1zV1VGQlFTeEpRVUZuUWl4eFFrRkJjMElzUTBGQlFTeE5RVUZCTEcxQ1FVTTFSU3hMUVVGQkxFTkJRVUVzWVVGQlFTeERRVUZCTEhGQ1FVRkJMRVZCUVVFN1FVRkJRU3hKUVVORExGTkJRVk1zVFVGQlRUdEJRVU5pTEUxQlFUWkNMRFJDUVVGQkxFTkJRVUVzUzBGQlFTeEZRVUZQTEZGQlFWTXNhVUpCUVdsQ0xFTkJRVUVzUTBGQlFUdEJRVUZCTEV0QlEyaEZPMEZCUVVFc1NVRkRRU3hsUVVGQkxFVkJRV2xDTEV0QlFVc3NVVUZCVXl4RFFVRkJMRTlCUVVFN1FVRkJRU3hKUVVNdlFpeGpRVUZCTzBGQlFVRXNTVUZEUVN4WlFVRlpMRWxCUVVzc1EwRkJRU3hIUVVGQkxFTkJRVWtzWTBGQlpTeERRVUZCTEZsQlFVRXNTVUZCWjBJc1pVRkJaU3hEUVVGQk8wRkJRVUVzUjBGRGNrVXNRMEZEUlN4SFFVRkJMRWxCUTA0c1EwRkRSaXhEUVVWS0xFTkJRMFlzUTBGQlFTeERRVUZCTzBGQlJVb3NRMEZCUXl4RlFVRkJPMEZCUlVRc1RVRkJUU3hUUVVGQkxFZEJRVmtzUTBGQlF5eExRVUV3UWl4TlFVRkJPMEZCUVVFc1JVRkRNME1zYVVKQlFXbENMRWRCUVVrc1EwRkJRVHRCUVVGQkxFbEJRMjVDTEU5QlFWTXNSVUZCUVN4TlFVRkJPMEZCUVVFc1NVRkRWQ3hSUVVGVkxFVkJRVUVzVFVGQlFUdEJRVUZCTEVkQlExZ3NRMEZCUVR0QlFVRkJMRVZCUTBRc1lVRkJZU3hIUVVGSkxFTkJRVUU3UVVGQlFTeEpRVU5tTEU5QlFWTXNSVUZCUVN4TlFVRkJPMEZCUVVFc1NVRkRWQ3hWUVVGWkxFVkJRVUVzVVVGQlFUdEJRVUZCTEVsQlExb3NVVUZCVlN4RlFVRkJMRTFCUVVFN1FVRkJRU3hIUVVOWUxFTkJRVUU3UVVGQlFTeEZRVU5FTEZWQlFWVXNSMEZCU1N4RFFVRkJMR0ZCUVVFc1EwRkJRU3hqUVVGQkxFTkJRVUU3UVVGQlFTeEpRVU5hTEU5QlFWTXNSVUZCUVN4TlFVRkJPMEZCUVVFc1NVRkRWQ3hWUVVGWkxFVkJRVUVzVVVGQlFUdEJRVUZCTEVsQlExb3NWVUZCUVN4RlFVRlpMRXRCUVUwc1EwRkJRU3hOUVVGQkxFTkJRVThzVFVGQlR5eERRVUZCTEd0Q1FVRkJPMEZCUVVFc1NVRkRhRU1zVFVGQlVTeEZRVUZCTEVOQlFVRXNWVUZCUVN4RlFVRmhMRXRCUVUwc1EwRkJRU3hOUVVGQkxFTkJRVThzVFVGQlR5eERRVUZCTEVsQlFVRXNRMEZCUVN4RFFVRkJPMEZCUVVFc1NVRkRla01zVTBGQlV5eExRVUZOTEVOQlFVRXNUMEZCUVN4RFFVRlJMRXRCUVU4c1JVRkJRU3hEUVVGQkxFVkJRVWNzVDBGQlR5eERRVUZETEVOQlFVRTdRVUZCUVN4SlFVTjZReXhMUVVGQkxFVkJRVThzUzBGQlRTeERRVUZCTEUxQlFVRXNRMEZCVHl4SlFVRkxMRU5CUVVFc1QwRkJRVHRCUVVGQkxFbEJRM3BDTEZGQlFWVXNSVUZCUVN4UlFVRkJPMEZCUVVFc1NVRkRWaXhWUVVGWkxFVkJRVUVzVVVGQlFUdEJRVUZCTEVsQlExb3NVMEZCUVN4RlFVRlhMRXRCUVUwc1EwRkJRU3hQUVVGQkxFTkJRVkVzU1VGQlNTeERRVUZCTzBGQlFVRXNSMEZETVVJc1JVRkJRU3hMUVVGQkxFTkJRVTBzVjBGQlZ5eFRRVlpTTEVOQlFVRXNSVUZCUVR0QlFVRkJMRWxCVjFvc1RVRkJVU3hGUVVGQkxGTkJRVUU3UVVGQlFTeEhRVU5VTEVOQlFVRXNRMEZCUVR0QlFVRkJMRVZCUTBRc1UwRkJVeXhIUVVGSkxFTkJRVUU3UVVGQlFTeEpRVU5ZTEZWQlFVRXNSVUZCV1N4TlFVRk5MRlZCUVZjc1EwRkJRU3hqUVVGQk8wRkJRVUVzU1VGRE4wSXNUVUZCVVN4RlFVRkJMRk5CUVVFN1FVRkJRU3hIUVVOVUxFTkJRVUU3UVVGQlFTeEZRVU5FTEdOQlFXTXNSMEZCU1N4RFFVRkJPMEZCUVVFc1NVRkRhRUlzVTBGQlZ5eEZRVUZCTzBGQlFVRXNUVUZEVkN4VlFVRkJMRVZCUVZrc1MwRkJUU3hEUVVGQkxFMUJRVUVzUTBGQlR5eE5RVUZQTEVOQlFVRXNTMEZCUVR0QlFVRkJMRXRCUTJ4RE8wRkJRVUVzUjBGRFJDeERRVUZCTzBGQlFVRXNSVUZEUkN4cFFrRkJhVUlzUjBGQlNTeERRVUZCTzBGQlFVRXNTVUZEYmtJc1pVRkJRU3hGUVVGcFFpeExRVUZOTEVOQlFVRXNUVUZCUVN4RFFVRlBMRlZCUVZjc1EwRkJRU3hQUVVGQk8wRkJRVUVzU1VGRGVrTXNTMEZCUVN4RlFVRlBMRXRCUVUwc1EwRkJRU3hOUVVGQkxFTkJRVThzU1VGQlN5eERRVUZCTEU5QlFVRTdRVUZCUVN4SlFVTjZRaXhUUVVGQkxFVkJRVmNzVFVGQlRTeFBRVUZSTEVOQlFVRXNSVUZCUVR0QlFVRkJMRWxCUTNwQ0xGTkJRVmNzUlVGQlFTeE5RVUZCTzBGQlFVRXNTVUZEV0N4TlFVRkJMRVZCUVZFc1RVRkJUU3hOUVVGUExFTkJRVUVzVVVGQlFUdEJRVUZCTEVkQlEzUkNMRU5CUVVFN1FVRkJRU3hGUVVORUxGbEJRVmtzUjBGQlNTeERRVUZCTzBGQlFVRXNTVUZEWkN4WlFVRmpMRVZCUVVFc1EwRkJRVHRCUVVGQkxFbEJRMlFzVTBGQlZ5eEZRVUZCTzBGQlFVRXNUVUZEVkN4UFFVRlRMRVZCUVVFc1RVRkJRVHRCUVVGQkxFdEJRMWc3UVVGQlFTeEhRVU5FTEVOQlFVRTdRVUZCUVN4RlFVTkVMR3RDUVVGclFpeEhRVUZKTEVOQlFVRTdRVUZCUVN4SlFVTndRaXhMUVVGQkxFVkJRVThzUzBGQlRTeERRVUZCTEUxQlFVRXNRMEZCVHl4SlFVRkxMRU5CUVVFc1UwRkJRVHRCUVVGQkxFbEJRM3BDTEZWQlFVRXNSVUZCV1N4TFFVRk5MRU5CUVVFc1QwRkJRU3hEUVVGUkxFZEJRVWNzUTBGQlFUdEJRVUZCTEVkQlF6bENMRU5CUVVFN1FVRkJRU3hGUVVORUxIRkNRVUZ4UWl4SFFVRkpMRU5CUVVFN1FVRkJRU3hKUVVOMlFpeFpRVUZCTEVWQlFXTXNTMEZCVFN4RFFVRkJMRTlCUVVFc1EwRkJVU3hIUVVGSExFTkJRVUU3UVVGQlFTeEhRVU5vUXl4RFFVRkJPMEZCUVVFc1JVRkRSQ3hyUWtGQmEwSXNSMEZCU1N4RFFVRkJPMEZCUVVFc1NVRkRjRUlzVDBGQlFTeEZRVUZUTEV0QlFVMHNRMEZCUVN4UFFVRkJMRU5CUVZFc1EwRkJReXhEUVVGQk8wRkJRVUVzU1VGRGVFSXNVVUZCVlN4RlFVRkJMRlZCUVVFN1FVRkJRU3hKUVVOV0xFZEJRVXNzUlVGQlFTeERRVUZCTzBGQlFVRXNTVUZEVEN4SlFVRk5MRVZCUVVFc1EwRkJRVHRCUVVGQkxFbEJRMDRzUzBGQlR5eEZRVUZCTEUxQlFVRTdRVUZCUVN4SFFVTlNMRU5CUVVFN1FVRkJRU3hGUVVORUxHZENRVUZuUWl4SFFVRkpMRU5CUVVFN1FVRkJRU3hKUVVOc1FpeHhRa0ZCZFVJc1JVRkJRVHRCUVVGQkxFMUJRM0pDTEZOQlFWY3NSVUZCUVN4RFFVRkJMRlZCUVVFc1JVRkJZU3hMUVVGTkxFTkJRVUVzVFVGQlFTeERRVUZQTEUxQlFVOHNRMEZCUVN4SlFVRkJMRU5CUVVFc1EwRkJRVHRCUVVGQkxFdEJRemxETzBGQlFVRXNSMEZEUkN4RFFVRkJPMEZCUVVFc1JVRkRSQ3hsUVVGcFFpeEZRVUZCTEVkQlFVRXNRMEZCU1N4aFFVTm9RaXhEUVVGQkxHTkJRVUVzUTBGQlFTeEZRVUZCTEVWQlFVRXNTMEZCUVN4RFFVRk5MRmRCUVZjc1UwRkVSQ3hEUVVGQkxFVkJRVUU3UVVGQlFTeEpRVVZ1UWl4TFFVRkJMRVZCUVU4c1MwRkJUU3hEUVVGQkxFMUJRVUVzUTBGQlR5eEpRVUZMTEVOQlFVRXNVMEZCUVR0QlFVRkJMRWxCUTNwQ0xGVkJRVUVzUlVGQldTeExRVUZOTEVOQlFVRXNUMEZCUVN4RFFVRlJMRWRCUVVjc1EwRkJRVHRCUVVGQkxFZEJRemxDTEVOQlFVRXNRMEZCUVR0QlFVTklMRU5CUVVFc1EwRkJRVHM3T3pzaWZRPT1cbiJdLCJuYW1lcyI6WyJBZEhvY0NvbWJvYm94IiwibW9kZWwiLCJmaWx0ZXIiLCJmaWx0ZXJNdWx0aVZhbHVlcyIsIl9hIiwiXyIsIm9wdGlvbnMiLCJfYiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXFETyxNQUFNLGFBQWdCLEdBQUEsVUFBQSxDQUFXLFNBQVNBLGNBQUFBLENBQy9DLEVBQUUsTUFBQSxFQUFRLEtBQU8sRUFBQSxXQUFBLEVBQWEsb0JBQXNCLEVBQUEsa0JBQUEsRUFBb0IsbUJBQW9CLEVBQUEsRUFDNUYsU0FDQSxFQUFBO0FBeERGLEVBQUEsSUFBQSxFQUFBLEVBQUEsSUFBQSxF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