@grafana/scenes 6.8.0 → 6.9.0--canary.1093.14409340532.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +20 -0
- package/dist/esm/components/VizPanel/VizPanelRenderer.js +4 -3
- package/dist/esm/components/VizPanel/VizPanelRenderer.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +5 -4
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/dist/esm/components/layout/CSSGrid/SceneCSSGridItem.js +0 -33
- package/dist/esm/dist/esm/behaviors/CursorSync.js +0 -76
- package/dist/esm/dist/esm/behaviors/LiveNowTimer.js +0 -44
- package/dist/esm/dist/esm/behaviors/SceneQueryController.js +0 -14
- package/dist/esm/dist/esm/components/EmbeddedScene.js +0 -59
- package/dist/esm/dist/esm/components/NestedScene.js +0 -95
- package/dist/esm/dist/esm/components/SceneApp/SceneApp.js +0 -27
- package/dist/esm/dist/esm/components/SceneApp/SceneAppPage.js +0 -176
- package/dist/esm/dist/esm/components/SceneApp/SceneAppPageView.js +0 -104
- package/dist/esm/dist/esm/components/SceneApp/utils.js +0 -42
- package/dist/esm/dist/esm/components/SceneByFrameRepeater.js +0 -41
- package/dist/esm/dist/esm/components/SceneByVariableRepeater.js +0 -55
- package/dist/esm/dist/esm/components/SceneCanvasText.js +0 -32
- package/dist/esm/dist/esm/components/SceneControlsSpacer.js +0 -17
- package/dist/esm/dist/esm/components/SceneDebugger/DebugDetails.js +0 -82
- package/dist/esm/dist/esm/components/SceneDebugger/DebugTreeNode.js +0 -72
- package/dist/esm/dist/esm/components/SceneDebugger/SceneDebugger.js +0 -77
- package/dist/esm/dist/esm/components/SceneReactObject.js +0 -34
- package/dist/esm/dist/esm/components/SceneRefreshPicker.js +0 -205
- package/dist/esm/dist/esm/components/SceneTimePicker.js +0 -139
- package/dist/esm/dist/esm/components/SceneTimeRangeCompare.js +0 -240
- package/dist/esm/dist/esm/components/SceneToolbarButton.js +0 -33
- package/dist/esm/dist/esm/components/VizPanel/VizPanel.js +0 -406
- package/dist/esm/dist/esm/components/VizPanel/VizPanelExploreButton.js +0 -44
- package/dist/esm/dist/esm/components/VizPanel/VizPanelMenu.js +0 -59
- package/dist/esm/dist/esm/components/VizPanel/VizPanelRenderer.js +0 -285
- package/dist/esm/dist/esm/components/VizPanel/VizPanelSeriesLimit.js +0 -45
- package/dist/esm/dist/esm/components/VizPanel/colorSeriesConfigFactory.js +0 -72
- package/dist/esm/dist/esm/components/VizPanel/registerRuntimePanelPlugin.js +0 -11
- package/dist/esm/dist/esm/components/VizPanel/seriesVisibilityConfigFactory.js +0 -164
- package/dist/esm/dist/esm/components/layout/CSSGrid/SceneCSSGridLayout.js +0 -124
- package/dist/esm/dist/esm/components/layout/LazyLoader.js +0 -103
- package/dist/esm/dist/esm/components/layout/SceneFlexLayout.js +0 -135
- package/dist/esm/dist/esm/components/layout/grid/SceneGridItem.js +0 -30
- package/dist/esm/dist/esm/components/layout/grid/SceneGridLayout.js +0 -283
- package/dist/esm/dist/esm/components/layout/grid/SceneGridLayoutRenderer.js +0 -178
- package/dist/esm/dist/esm/components/layout/grid/SceneGridRow.js +0 -190
- package/dist/esm/dist/esm/components/layout/grid/constants.js +0 -7
- package/dist/esm/dist/esm/components/layout/grid/utils.js +0 -36
- package/dist/esm/dist/esm/components/layout/split/SplitLayout.js +0 -17
- package/dist/esm/dist/esm/components/layout/split/SplitLayoutRenderer.js +0 -29
- package/dist/esm/dist/esm/components/layout/split/Splitter.js +0 -386
- package/dist/esm/dist/esm/core/SceneComponentWrapper.js +0 -57
- package/dist/esm/dist/esm/core/SceneDataNode.js +0 -43
- package/dist/esm/dist/esm/core/SceneObjectBase.js +0 -286
- package/dist/esm/dist/esm/core/SceneObjectRef.js +0 -32
- package/dist/esm/dist/esm/core/SceneTimeRange.js +0 -231
- package/dist/esm/dist/esm/core/events.js +0 -11
- package/dist/esm/dist/esm/core/sceneGraph/getTimeRange.js +0 -10
- package/dist/esm/dist/esm/core/sceneGraph/index.js +0 -25
- package/dist/esm/dist/esm/core/sceneGraph/sceneGraph.js +0 -178
- package/dist/esm/dist/esm/core/sceneGraph/utils.js +0 -64
- package/dist/esm/dist/esm/core/types.js +0 -15
- package/dist/esm/dist/esm/querying/DataLayersMerger.js +0 -46
- package/dist/esm/dist/esm/querying/ExtraQueryProvider.js +0 -6
- package/dist/esm/dist/esm/querying/RuntimeDataSource.js +0 -6
- package/dist/esm/dist/esm/querying/SceneDataLayerSet.js +0 -100
- package/dist/esm/dist/esm/querying/SceneQueryRunner.js +0 -468
- package/dist/esm/dist/esm/querying/extraQueryProcessingOperator.js +0 -46
- package/dist/esm/dist/esm/querying/getEnrichedDataRequest.js +0 -12
- package/dist/esm/dist/esm/querying/layers/SceneDataLayerBase.js +0 -112
- package/dist/esm/dist/esm/querying/layers/SceneDataLayerControls.js +0 -51
- package/dist/esm/dist/esm/querying/layers/annotations/AnnotationsDataLayer.js +0 -130
- package/dist/esm/dist/esm/querying/layers/annotations/filterAnnotations.js +0 -85
- package/dist/esm/dist/esm/querying/layers/annotations/standardAnnotationQuery.js +0 -121
- package/dist/esm/dist/esm/querying/layers/annotations/standardAnnotationsSupport.js +0 -211
- package/dist/esm/dist/esm/querying/layers/annotations/utils.js +0 -77
- package/dist/esm/dist/esm/querying/registerQueryWithController.js +0 -41
- package/dist/esm/dist/esm/services/SceneObjectUrlSyncConfig.js +0 -30
- package/dist/esm/dist/esm/services/UniqueUrlKeyMapper.js +0 -45
- package/dist/esm/dist/esm/services/UrlSyncManager.js +0 -167
- package/dist/esm/dist/esm/services/useUrlSync.js +0 -29
- package/dist/esm/dist/esm/services/utils.js +0 -71
- package/dist/esm/dist/esm/utils/ControlsLabel.js +0 -107
- package/dist/esm/dist/esm/utils/LoadingIndicator.js +0 -19
- package/dist/esm/dist/esm/utils/SafeSerializableSceneObject.js +0 -39
- package/dist/esm/dist/esm/utils/compatibility/setWindowGrafanaSceneContext.js +0 -16
- package/dist/esm/dist/esm/utils/date.js +0 -15
- package/dist/esm/dist/esm/utils/evaluateTimeRange.js +0 -16
- package/dist/esm/dist/esm/utils/explore.js +0 -47
- package/dist/esm/dist/esm/utils/getCompareSeriesRefId.js +0 -4
- package/dist/esm/dist/esm/utils/getDataSource.js +0 -18
- package/dist/esm/dist/esm/utils/getMessageFromError.js +0 -24
- package/dist/esm/dist/esm/utils/metricTree.js +0 -53
- package/dist/esm/dist/esm/utils/parseUrlParam.js +0 -41
- package/dist/esm/dist/esm/utils/utils.js +0 -11
- package/dist/esm/dist/esm/utils/wrapInSafeSerializableSceneObject.js +0 -30
- package/dist/esm/dist/esm/utils/writeSceneLog.js +0 -12
- package/dist/esm/dist/esm/variables/VariableDependencyConfig.js +0 -150
- package/dist/esm/dist/esm/variables/VariableValueRecorder.js +0 -71
- package/dist/esm/dist/esm/variables/adhoc/AdHocFilterBuilder.js +0 -24
- package/dist/esm/dist/esm/variables/adhoc/AdHocFilterRenderer.js +0 -303
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFilterPill.js +0 -162
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersAlwaysWipCombobox.js +0 -20
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js +0 -640
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersComboboxRenderer.js +0 -65
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/DropdownItem.js +0 -146
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/MultiValuePill.js +0 -114
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/useFloatingInteractions.js +0 -68
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersCombobox/utils.js +0 -146
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersVariable.js +0 -289
- package/dist/esm/dist/esm/variables/adhoc/AdHocFiltersVariableUrlSyncHandler.js +0 -76
- package/dist/esm/dist/esm/variables/adhoc/getAdhocOptionSearcher.js +0 -13
- package/dist/esm/dist/esm/variables/adhoc/patchGetAdhocFilters.js +0 -47
- package/dist/esm/dist/esm/variables/components/VariableValueControl.js +0 -23
- package/dist/esm/dist/esm/variables/components/VariableValueInput.js +0 -33
- package/dist/esm/dist/esm/variables/components/VariableValueSelect.js +0 -228
- package/dist/esm/dist/esm/variables/components/VariableValueSelectors.js +0 -72
- package/dist/esm/dist/esm/variables/components/getOptionSearcher.js +0 -15
- package/dist/esm/dist/esm/variables/constants.js +0 -9
- package/dist/esm/dist/esm/variables/getEnrichedFiltersRequest.js +0 -12
- package/dist/esm/dist/esm/variables/groupby/GroupByVariable.js +0 -259
- package/dist/esm/dist/esm/variables/groupby/GroupByVariableUrlSyncHandler.js +0 -63
- package/dist/esm/dist/esm/variables/groupby/findActiveGroupByVariablesByUid.js +0 -13
- package/dist/esm/dist/esm/variables/interpolation/ScopedVarsVariable.js +0 -40
- package/dist/esm/dist/esm/variables/interpolation/defaults.js +0 -21
- package/dist/esm/dist/esm/variables/interpolation/fieldAccessorCache.js +0 -13
- package/dist/esm/dist/esm/variables/interpolation/formatRegistry.js +0 -296
- package/dist/esm/dist/esm/variables/interpolation/sceneInterpolator.js +0 -87
- package/dist/esm/dist/esm/variables/lookupVariable.js +0 -20
- package/dist/esm/dist/esm/variables/macros/AllVariablesMacro.js +0 -57
- package/dist/esm/dist/esm/variables/macros/contextMacros.js +0 -43
- package/dist/esm/dist/esm/variables/macros/dataMacros.js +0 -134
- package/dist/esm/dist/esm/variables/macros/index.js +0 -26
- package/dist/esm/dist/esm/variables/macros/templateProxies.js +0 -51
- package/dist/esm/dist/esm/variables/macros/timeMacros.js +0 -86
- package/dist/esm/dist/esm/variables/macros/types.js +0 -11
- package/dist/esm/dist/esm/variables/macros/urlMacros.js +0 -56
- package/dist/esm/dist/esm/variables/sets/SceneVariableSet.js +0 -254
- package/dist/esm/dist/esm/variables/types.js +0 -11
- package/dist/esm/dist/esm/variables/utils.js +0 -172
- package/dist/esm/dist/esm/variables/variants/ConstantVariable.js +0 -38
- package/dist/esm/dist/esm/variables/variants/CustomVariable.js +0 -60
- package/dist/esm/dist/esm/variables/variants/DataSourceVariable.js +0 -88
- package/dist/esm/dist/esm/variables/variants/IntervalVariable.js +0 -117
- package/dist/esm/dist/esm/variables/variants/MultiValueVariable.js +0 -295
- package/dist/esm/dist/esm/variables/variants/TestVariable.js +0 -117
- package/dist/esm/dist/esm/variables/variants/TextBoxVariable.js +0 -61
- package/dist/esm/dist/esm/variables/variants/query/QueryVariable.js +0 -139
- package/dist/esm/dist/esm/variables/variants/query/createQueryVariableRunner.js +0 -129
- package/dist/esm/dist/esm/variables/variants/query/guards.js +0 -28
- package/dist/esm/dist/esm/variables/variants/query/toMetricFindValues.js +0 -96
- package/dist/esm/dist/esm/variables/variants/query/utils.js +0 -124
- package/dist/esm/querying/DataProviderSharer.js +0 -39
- package/dist/esm/src/behaviors/ActWhenVariableChanged.js +0 -27
- package/dist/esm/src/behaviors/CursorSync.js +0 -76
- package/dist/esm/src/behaviors/LiveNowTimer.js +0 -44
- package/dist/esm/src/behaviors/SceneQueryController.js +0 -60
- package/dist/esm/src/behaviors/index.js +0 -5
- package/dist/esm/src/components/EmbeddedScene.js +0 -59
- package/dist/esm/src/components/NestedScene.js +0 -95
- package/dist/esm/src/components/SceneApp/SceneApp.js +0 -37
- package/dist/esm/src/components/SceneApp/SceneAppPage.js +0 -176
- package/dist/esm/src/components/SceneApp/SceneAppPageView.js +0 -104
- package/dist/esm/src/components/SceneApp/utils.js +0 -42
- package/dist/esm/src/components/SceneByFrameRepeater.js +0 -41
- package/dist/esm/src/components/SceneByVariableRepeater.js +0 -55
- package/dist/esm/src/components/SceneCanvasText.js +0 -32
- package/dist/esm/src/components/SceneControlsSpacer.js +0 -17
- package/dist/esm/src/components/SceneDebugger/DebugDetails.js +0 -82
- package/dist/esm/src/components/SceneDebugger/DebugTreeNode.js +0 -72
- package/dist/esm/src/components/SceneDebugger/SceneDebugger.js +0 -77
- package/dist/esm/src/components/SceneReactObject.js +0 -34
- package/dist/esm/src/components/SceneRefreshPicker.js +0 -205
- package/dist/esm/src/components/SceneTimePicker.js +0 -139
- package/dist/esm/src/components/SceneTimeRangeCompare.js +0 -240
- package/dist/esm/src/components/SceneToolbarButton.js +0 -33
- package/dist/esm/src/components/VizPanel/VizPanel.js +0 -406
- package/dist/esm/src/components/VizPanel/VizPanelExploreButton.js +0 -44
- package/dist/esm/src/components/VizPanel/VizPanelMenu.js +0 -59
- package/dist/esm/src/components/VizPanel/VizPanelRenderer.js +0 -285
- package/dist/esm/src/components/VizPanel/VizPanelSeriesLimit.js +0 -45
- package/dist/esm/src/components/VizPanel/colorSeriesConfigFactory.js +0 -72
- package/dist/esm/src/components/VizPanel/registerRuntimePanelPlugin.js +0 -56
- package/dist/esm/src/components/VizPanel/seriesVisibilityConfigFactory.js +0 -164
- package/dist/esm/src/components/layout/CSSGrid/SceneCSSGridLayout.js +0 -124
- package/dist/esm/src/components/layout/LazyLoader.js +0 -103
- package/dist/esm/src/components/layout/SceneFlexLayout.js +0 -135
- package/dist/esm/src/components/layout/grid/SceneGridItem.js +0 -30
- package/dist/esm/src/components/layout/grid/SceneGridLayout.js +0 -283
- package/dist/esm/src/components/layout/grid/SceneGridLayoutRenderer.js +0 -178
- package/dist/esm/src/components/layout/grid/SceneGridRow.js +0 -190
- package/dist/esm/src/components/layout/grid/constants.js +0 -7
- package/dist/esm/src/components/layout/grid/utils.js +0 -36
- package/dist/esm/src/components/layout/split/SplitLayout.js +0 -17
- package/dist/esm/src/components/layout/split/SplitLayoutRenderer.js +0 -29
- package/dist/esm/src/components/layout/split/Splitter.js +0 -386
- package/dist/esm/src/core/PanelBuilders/FieldConfigBuilder.js +0 -100
- package/dist/esm/src/core/PanelBuilders/FieldConfigBuilders.js +0 -75
- package/dist/esm/src/core/PanelBuilders/FieldConfigOverridesBuilder.js +0 -75
- package/dist/esm/src/core/PanelBuilders/PanelOptionsBuilder.js +0 -22
- package/dist/esm/src/core/PanelBuilders/PanelOptionsBuilders.js +0 -85
- package/dist/esm/src/core/PanelBuilders/StandardFieldConfigBuilders.js +0 -52
- package/dist/esm/src/core/PanelBuilders/VizConfigBuilder.js +0 -78
- package/dist/esm/src/core/PanelBuilders/VizConfigBuilders.js +0 -114
- package/dist/esm/src/core/PanelBuilders/VizPanelBuilder.js +0 -162
- package/dist/esm/src/core/PanelBuilders/index.js +0 -116
- package/dist/esm/src/core/SceneComponentWrapper.js +0 -57
- package/dist/esm/src/core/SceneDataNode.js +0 -43
- package/dist/esm/src/core/SceneObjectBase.js +0 -286
- package/dist/esm/src/core/SceneObjectRef.js +0 -32
- package/dist/esm/src/core/SceneTimeRange.js +0 -231
- package/dist/esm/src/core/SceneTimeRangeTransformerBase.js +0 -35
- package/dist/esm/src/core/SceneTimeZoneOverride.js +0 -63
- package/dist/esm/src/core/events.js +0 -11
- package/dist/esm/src/core/sceneGraph/getTimeRange.js +0 -10
- package/dist/esm/src/core/sceneGraph/index.js +0 -25
- package/dist/esm/src/core/sceneGraph/sceneGraph.js +0 -178
- package/dist/esm/src/core/sceneGraph/utils.js +0 -64
- package/dist/esm/src/core/types.js +0 -15
- package/dist/esm/src/index.js +0 -108
- package/dist/esm/src/querying/DataLayersMerger.js +0 -46
- package/dist/esm/src/querying/DataProviderProxy.js +0 -37
- package/dist/esm/src/querying/DataProviderSharer.js +0 -108
- package/dist/esm/src/querying/ExtraQueryProvider.js +0 -6
- package/dist/esm/src/querying/RuntimeDataSource.js +0 -49
- package/dist/esm/src/querying/SceneDataLayerSet.js +0 -100
- package/dist/esm/src/querying/SceneDataTransformer.js +0 -178
- package/dist/esm/src/querying/SceneQueryRunner.js +0 -468
- package/dist/esm/src/querying/extraQueryProcessingOperator.js +0 -46
- package/dist/esm/src/querying/getEnrichedDataRequest.js +0 -12
- package/dist/esm/src/querying/layers/SceneDataLayerBase.js +0 -112
- package/dist/esm/src/querying/layers/SceneDataLayerControls.js +0 -51
- package/dist/esm/src/querying/layers/annotations/AnnotationsDataLayer.js +0 -130
- package/dist/esm/src/querying/layers/annotations/filterAnnotations.js +0 -85
- package/dist/esm/src/querying/layers/annotations/standardAnnotationQuery.js +0 -121
- package/dist/esm/src/querying/layers/annotations/standardAnnotationsSupport.js +0 -211
- package/dist/esm/src/querying/layers/annotations/utils.js +0 -77
- package/dist/esm/src/querying/layers/index.js +0 -2
- package/dist/esm/src/querying/registerQueryWithController.js +0 -41
- package/dist/esm/src/services/SceneObjectUrlSyncConfig.js +0 -30
- package/dist/esm/src/services/UniqueUrlKeyMapper.js +0 -45
- package/dist/esm/src/services/UrlSyncContextProvider.js +0 -17
- package/dist/esm/src/services/UrlSyncManager.js +0 -167
- package/dist/esm/src/services/useUrlSync.js +0 -29
- package/dist/esm/src/services/utils.js +0 -75
- package/dist/esm/src/utils/ControlsLabel.js +0 -107
- package/dist/esm/src/utils/LoadingIndicator.js +0 -19
- package/dist/esm/src/utils/SafeSerializableSceneObject.js +0 -39
- package/dist/esm/src/utils/compatibility/setWindowGrafanaSceneContext.js +0 -16
- package/dist/esm/src/utils/date.js +0 -15
- package/dist/esm/src/utils/evaluateTimeRange.js +0 -16
- package/dist/esm/src/utils/explore.js +0 -47
- package/dist/esm/src/utils/getCompareSeriesRefId.js +0 -4
- package/dist/esm/src/utils/getDataSource.js +0 -18
- package/dist/esm/src/utils/getMessageFromError.js +0 -24
- package/dist/esm/src/utils/metricTree.js +0 -53
- package/dist/esm/src/utils/parseUrlParam.js +0 -41
- package/dist/esm/src/utils/utils.js +0 -11
- package/dist/esm/src/utils/wrapInSafeSerializableSceneObject.js +0 -30
- package/dist/esm/src/utils/writeSceneLog.js +0 -12
- package/dist/esm/src/variables/VariableDependencyConfig.js +0 -150
- package/dist/esm/src/variables/VariableValueRecorder.js +0 -71
- package/dist/esm/src/variables/adhoc/AdHocFilterBuilder.js +0 -24
- package/dist/esm/src/variables/adhoc/AdHocFilterRenderer.js +0 -303
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFilterPill.js +0 -162
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersAlwaysWipCombobox.js +0 -20
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersCombobox.js +0 -640
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/AdHocFiltersComboboxRenderer.js +0 -65
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/DropdownItem.js +0 -146
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/MultiValuePill.js +0 -114
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/useFloatingInteractions.js +0 -68
- package/dist/esm/src/variables/adhoc/AdHocFiltersCombobox/utils.js +0 -146
- package/dist/esm/src/variables/adhoc/AdHocFiltersVariable.js +0 -289
- package/dist/esm/src/variables/adhoc/AdHocFiltersVariableUrlSyncHandler.js +0 -76
- package/dist/esm/src/variables/adhoc/getAdhocOptionSearcher.js +0 -13
- package/dist/esm/src/variables/adhoc/patchGetAdhocFilters.js +0 -47
- package/dist/esm/src/variables/components/VariableValueControl.js +0 -23
- package/dist/esm/src/variables/components/VariableValueInput.js +0 -33
- package/dist/esm/src/variables/components/VariableValueSelect.js +0 -228
- package/dist/esm/src/variables/components/VariableValueSelectors.js +0 -72
- package/dist/esm/src/variables/components/getOptionSearcher.js +0 -15
- package/dist/esm/src/variables/constants.js +0 -9
- package/dist/esm/src/variables/getEnrichedFiltersRequest.js +0 -12
- package/dist/esm/src/variables/groupby/GroupByVariable.js +0 -259
- package/dist/esm/src/variables/groupby/GroupByVariableUrlSyncHandler.js +0 -63
- package/dist/esm/src/variables/groupby/findActiveGroupByVariablesByUid.js +0 -13
- package/dist/esm/src/variables/interpolation/ScopedVarsVariable.js +0 -40
- package/dist/esm/src/variables/interpolation/defaults.js +0 -21
- package/dist/esm/src/variables/interpolation/fieldAccessorCache.js +0 -13
- package/dist/esm/src/variables/interpolation/formatRegistry.js +0 -296
- package/dist/esm/src/variables/interpolation/sceneInterpolator.js +0 -87
- package/dist/esm/src/variables/lookupVariable.js +0 -20
- package/dist/esm/src/variables/macros/AllVariablesMacro.js +0 -57
- package/dist/esm/src/variables/macros/contextMacros.js +0 -43
- package/dist/esm/src/variables/macros/dataMacros.js +0 -134
- package/dist/esm/src/variables/macros/index.js +0 -35
- package/dist/esm/src/variables/macros/templateProxies.js +0 -51
- package/dist/esm/src/variables/macros/timeMacros.js +0 -86
- package/dist/esm/src/variables/macros/types.js +0 -11
- package/dist/esm/src/variables/macros/urlMacros.js +0 -56
- package/dist/esm/src/variables/sets/SceneVariableSet.js +0 -254
- package/dist/esm/src/variables/types.js +0 -11
- package/dist/esm/src/variables/utils.js +0 -172
- package/dist/esm/src/variables/variants/ConstantVariable.js +0 -38
- package/dist/esm/src/variables/variants/CustomVariable.js +0 -60
- package/dist/esm/src/variables/variants/DataSourceVariable.js +0 -88
- package/dist/esm/src/variables/variants/IntervalVariable.js +0 -117
- package/dist/esm/src/variables/variants/JsonVariable.js +0 -193
- package/dist/esm/src/variables/variants/LocalValueVariable.js +0 -56
- package/dist/esm/src/variables/variants/MultiValueVariable.js +0 -295
- package/dist/esm/src/variables/variants/TestVariable.js +0 -117
- package/dist/esm/src/variables/variants/TextBoxVariable.js +0 -61
- package/dist/esm/src/variables/variants/guards.js +0 -27
- package/dist/esm/src/variables/variants/query/QueryVariable.js +0 -139
- package/dist/esm/src/variables/variants/query/createQueryVariableRunner.js +0 -129
- package/dist/esm/src/variables/variants/query/guards.js +0 -28
- package/dist/esm/src/variables/variants/query/toMetricFindValues.js +0 -96
- package/dist/esm/src/variables/variants/query/utils.js +0 -124
- package/dist/esm/variables/variants/JsonVariable.js +0 -96
- package/dist/esm/variables/variants/json/JsonVariable.js +0 -95
- package/dist/esm/variables/variants/json/JsonVariableOptionProviders.js +0 -70
|
@@ -1,640 +0,0 @@
|
|
|
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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
|