From 2c4cc12b988ccbb8f8e2baf030331d27ad18a6d7 Mon Sep 17 00:00:00 2001 From: Corey Robertson Date: Tue, 7 Apr 2020 11:55:06 -0400 Subject: [PATCH 01/36] Removes Pitch Presentation Template from Canvas (#62688) * Removes Pitch Presentation Template from Canvas * Fix test * Keep translation to not fail i18n --- .../canvas_plugin_src/templates/index.ts | 4 ++-- .../canvas/i18n/templates/template_strings.ts | 19 +++++++++++-------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/x-pack/legacy/plugins/canvas/canvas_plugin_src/templates/index.ts b/x-pack/legacy/plugins/canvas/canvas_plugin_src/templates/index.ts index eba0b47f7dc1..88d2b904e6cb 100644 --- a/x-pack/legacy/plugins/canvas/canvas_plugin_src/templates/index.ts +++ b/x-pack/legacy/plugins/canvas/canvas_plugin_src/templates/index.ts @@ -7,7 +7,7 @@ import { applyTemplateStrings } from '../../i18n/templates'; import darkTemplate from './theme_dark.json'; import lightTemplate from './theme_light.json'; -import pitchTemplate from './pitch_presentation.json'; +// import pitchTemplate from './pitch_presentation.json'; import statusTemplate from './status_report.json'; import summaryTemplate from './summary_report.json'; @@ -15,7 +15,7 @@ import summaryTemplate from './summary_report.json'; export const templateSpecs = applyTemplateStrings([ darkTemplate, lightTemplate, - pitchTemplate, + // pitchTemplate, statusTemplate, summaryTemplate, ]); diff --git a/x-pack/legacy/plugins/canvas/i18n/templates/template_strings.ts b/x-pack/legacy/plugins/canvas/i18n/templates/template_strings.ts index 5ab6a908641d..d8e4d51706be 100644 --- a/x-pack/legacy/plugins/canvas/i18n/templates/template_strings.ts +++ b/x-pack/legacy/plugins/canvas/i18n/templates/template_strings.ts @@ -37,14 +37,6 @@ export const getTemplateStrings = (): TemplateStringDict => ({ defaultMessage: 'Light color themed presentation deck', }), }, - Pitch: { - name: i18n.translate('xpack.canvas.templates.pitchName', { - defaultMessage: 'Pitch', - }), - help: i18n.translate('xpack.canvas.templates.pitchHelp', { - defaultMessage: 'Branded presentation with large photos', - }), - }, Status: { name: i18n.translate('xpack.canvas.templates.statusName', { defaultMessage: 'Status', @@ -62,3 +54,14 @@ export const getTemplateStrings = (): TemplateStringDict => ({ }), }, }); + +export const getUnusedTemplateStrings = (): TemplateStringDict => ({ + Pitch: { + name: i18n.translate('xpack.canvas.templates.pitchName', { + defaultMessage: 'Pitch', + }), + help: i18n.translate('xpack.canvas.templates.pitchHelp', { + defaultMessage: 'Branded presentation with large photos', + }), + }, +}); From 406d7550be4c5b0ae6127bdc3f05398ca59ba1a4 Mon Sep 17 00:00:00 2001 From: Alison Goryachev Date: Tue, 7 Apr 2020 12:36:13 -0400 Subject: [PATCH 02/36] [Remote Clusters] Update callout and move server_name field (#62352) --- .../remote_cluster_form.test.js.snap | 246 +++++++++--------- .../remote_cluster_form.js | 84 +++--- 2 files changed, 177 insertions(+), 153 deletions(-) diff --git a/x-pack/plugins/remote_clusters/public/application/sections/components/remote_cluster_form/__snapshots__/remote_cluster_form.test.js.snap b/x-pack/plugins/remote_clusters/public/application/sections/components/remote_cluster_form/__snapshots__/remote_cluster_form.test.js.snap index 4c109c557fdb..1e6c2c4d289a 100644 --- a/x-pack/plugins/remote_clusters/public/application/sections/components/remote_cluster_form/__snapshots__/remote_cluster_form.test.js.snap +++ b/x-pack/plugins/remote_clusters/public/application/sections/components/remote_cluster_form/__snapshots__/remote_cluster_form.test.js.snap @@ -350,7 +350,7 @@ exports[`RemoteClusterForm proxy mode renders correct connection settings when u description={ @@ -367,7 +367,7 @@ exports[`RemoteClusterForm proxy mode renders correct connection settings when u data-test-subj="remoteClusterFormConnectionModeToggle" label={ @@ -443,11 +443,11 @@ exports[`RemoteClusterForm proxy mode renders correct connection settings when u className="euiTextColor euiTextColor--subdued" > - Use seed nodes by default, or switch to a single proxy address. + Use seed nodes by default, or switch to proxy mode. @@ -534,11 +534,11 @@ exports[`RemoteClusterForm proxy mode renders correct connection settings when u onClick={[Function]} > - Use a single proxy address + Use proxy mode @@ -686,120 +686,6 @@ exports[`RemoteClusterForm proxy mode renders correct connection settings when u - - } - label={ - - } - labelType="label" - > -
-
- - - -
-
- - -
-
- - - - -
-
-
-
- -
- - The number of socket connections to open per remote cluster. - -
-
-
-
-
+ + } + label={ + + } + labelType="label" + > +
+
+ + + +
+
+ + +
+
+ + + + +
+
+
+
+ +
+ + The number of socket connections to open per remote cluster. + +
+
+
+
+
@@ -1447,7 +1447,7 @@ Array [
- Use seed nodes by default, or switch to a single proxy address. + Use seed nodes by default, or switch to proxy mode.
- Use a single proxy address + Use proxy mode
diff --git a/x-pack/plugins/remote_clusters/public/application/sections/components/remote_cluster_form/remote_cluster_form.js b/x-pack/plugins/remote_clusters/public/application/sections/components/remote_cluster_form/remote_cluster_form.js index c98bd73bf83a..a392cc960778 100644 --- a/x-pack/plugins/remote_clusters/public/application/sections/components/remote_cluster_form/remote_cluster_form.js +++ b/x-pack/plugins/remote_clusters/public/application/sections/components/remote_cluster_form/remote_cluster_form.js @@ -405,30 +405,6 @@ export class RemoteClusterForm extends Component { /> - - } - helpText={ - - } - fullWidth - > - - this.onFieldsChange({ proxySocketConnections: Number(e.target.value) || null }) - } - fullWidth - /> - + + + } + helpText={ + + } + fullWidth + > + + this.onFieldsChange({ proxySocketConnections: Number(e.target.value) || null }) + } + fullWidth + /> + ); } @@ -498,14 +499,14 @@ export class RemoteClusterForm extends Component { <> } checked={mode === PROXY_MODE} @@ -519,15 +520,38 @@ export class RemoteClusterForm extends Component { <> } - iconType="pin" - size="s" - /> + > + + + + ), + searchString: ( + + + + ), + }} + /> + ) : null} From d70718426fa8a0a7f2bde2cb0e251a9f9d86c01d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cau=C3=AA=20Marcondes?= <55978943+cauemarcondes@users.noreply.github.com> Date: Tue, 7 Apr 2020 17:39:52 +0100 Subject: [PATCH 03/36] [APM] Change custom link from EuiListGroupItem to EuiLink (#62742) --- .../CustomLink/CustomLinkSection.tsx | 37 ++++++++++++------- 1 file changed, 24 insertions(+), 13 deletions(-) diff --git a/x-pack/legacy/plugins/apm/public/components/shared/TransactionActionMenu/CustomLink/CustomLinkSection.tsx b/x-pack/legacy/plugins/apm/public/components/shared/TransactionActionMenu/CustomLink/CustomLinkSection.tsx index 52befe37ffda..bd00bcf600ff 100644 --- a/x-pack/legacy/plugins/apm/public/components/shared/TransactionActionMenu/CustomLink/CustomLinkSection.tsx +++ b/x-pack/legacy/plugins/apm/public/components/shared/TransactionActionMenu/CustomLink/CustomLinkSection.tsx @@ -3,14 +3,26 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ -import React from 'react'; +import { EuiLink, EuiText } from '@elastic/eui'; import Mustache from 'mustache'; +import React from 'react'; +import styled from 'styled-components'; import { CustomLink } from '../../../../../../../../plugins/apm/common/custom_link/custom_link_types'; import { Transaction } from '../../../../../../../../plugins/apm/typings/es_schemas/ui/transaction'; -import { - SectionLinks, - SectionLink -} from '../../../../../../../../plugins/observability/public'; +import { px, truncate, units } from '../../../../style/variables'; + +const LinkContainer = styled.li` + margin-top: ${px(units.half)}; + &:first-of-type { + margin-top: 0; + } +`; + +const TruncateText = styled(EuiText)` + font-weight: 500; + line-height: ${px(units.unit)}; + ${truncate(px(units.unit * 25))} +`; export const CustomLinkSection = ({ customLinks, @@ -19,7 +31,7 @@ export const CustomLinkSection = ({ customLinks: CustomLink[]; transaction: Transaction; }) => ( - +
    {customLinks.map(link => { let href = link.url; try { @@ -28,13 +40,12 @@ export const CustomLinkSection = ({ // ignores any error that happens } return ( - + + + {link.label} + + ); })} - +
); From 8ffc08f2f7bf1a017d4d875e9de869ecd2339d0d Mon Sep 17 00:00:00 2001 From: Chris Roberson Date: Tue, 7 Apr 2020 13:44:34 -0400 Subject: [PATCH 04/36] [REVERT THE REVERT] [Monitoring] Cluster state watch to Kibana alerting (#62793) * Revert "Revert "[Monitoring] Cluster state watch to Kibana alerting (#61685)"" This reverts commit f1bd3bdacb263b2754c04000070fe0f79ab5ed72. * Fix i18n error * Fix test --- .../plugins/monitoring/common/constants.ts | 8 +- .../public/components/alerts/alerts.js | 44 +- .../public/components/alerts/status.test.tsx | 8 +- .../public/components/alerts/status.tsx | 2 +- .../cluster/overview/alerts_panel.js | 81 ++- .../monitoring/public/views/alerts/index.js | 30 +- x-pack/plugins/monitoring/common/constants.ts | 8 +- .../server/alerts/cluster_state.test.ts | 186 ++++++ .../monitoring/server/alerts/cluster_state.ts | 134 ++++ .../plugins/monitoring/server/alerts/enums.ts | 16 + .../server/alerts/license_expiration.test.ts | 570 +++++------------- .../server/alerts/license_expiration.ts | 127 ++-- .../monitoring/server/alerts/types.d.ts | 80 ++- .../lib/alerts/cluster_state.lib.test.ts | 70 +++ .../server/lib/alerts/cluster_state.lib.ts | 88 +++ .../lib/alerts/fetch_cluster_state.test.ts | 39 ++ .../server/lib/alerts/fetch_cluster_state.ts | 53 ++ .../server/lib/alerts/fetch_clusters.test.ts | 46 +- .../server/lib/alerts/fetch_clusters.ts | 41 +- .../server/lib/alerts/fetch_licenses.test.ts | 67 +- .../server/lib/alerts/fetch_licenses.ts | 16 +- .../server/lib/alerts/fetch_status.test.ts | 122 ++++ .../server/lib/alerts/fetch_status.ts | 102 ++-- .../lib/alerts/get_prepared_alert.test.ts | 163 +++++ .../server/lib/alerts/get_prepared_alert.ts | 87 +++ .../lib/alerts/license_expiration.lib.test.ts | 23 +- .../lib/alerts/license_expiration.lib.ts | 52 +- .../lib/cluster/get_clusters_from_request.js | 12 +- x-pack/plugins/monitoring/server/plugin.ts | 12 + .../server/routes/api/v1/alerts/alerts.js | 53 +- 30 files changed, 1574 insertions(+), 766 deletions(-) create mode 100644 x-pack/plugins/monitoring/server/alerts/cluster_state.test.ts create mode 100644 x-pack/plugins/monitoring/server/alerts/cluster_state.ts create mode 100644 x-pack/plugins/monitoring/server/alerts/enums.ts create mode 100644 x-pack/plugins/monitoring/server/lib/alerts/cluster_state.lib.test.ts create mode 100644 x-pack/plugins/monitoring/server/lib/alerts/cluster_state.lib.ts create mode 100644 x-pack/plugins/monitoring/server/lib/alerts/fetch_cluster_state.test.ts create mode 100644 x-pack/plugins/monitoring/server/lib/alerts/fetch_cluster_state.ts create mode 100644 x-pack/plugins/monitoring/server/lib/alerts/fetch_status.test.ts create mode 100644 x-pack/plugins/monitoring/server/lib/alerts/get_prepared_alert.test.ts create mode 100644 x-pack/plugins/monitoring/server/lib/alerts/get_prepared_alert.ts diff --git a/x-pack/legacy/plugins/monitoring/common/constants.ts b/x-pack/legacy/plugins/monitoring/common/constants.ts index 9a4030f3eb21..3a4c7b71dcd0 100644 --- a/x-pack/legacy/plugins/monitoring/common/constants.ts +++ b/x-pack/legacy/plugins/monitoring/common/constants.ts @@ -239,11 +239,15 @@ export const ALERT_TYPE_PREFIX = 'monitoring_'; * This is the alert type id for the license expiration alert */ export const ALERT_TYPE_LICENSE_EXPIRATION = `${ALERT_TYPE_PREFIX}alert_type_license_expiration`; +/** + * This is the alert type id for the cluster state alert + */ +export const ALERT_TYPE_CLUSTER_STATE = `${ALERT_TYPE_PREFIX}alert_type_cluster_state`; /** * A listing of all alert types */ -export const ALERT_TYPES = [ALERT_TYPE_LICENSE_EXPIRATION]; +export const ALERT_TYPES = [ALERT_TYPE_LICENSE_EXPIRATION, ALERT_TYPE_CLUSTER_STATE]; /** * Matches the id for the built-in in email action type @@ -254,7 +258,7 @@ export const ALERT_ACTION_TYPE_EMAIL = '.email'; /** * The number of alerts that have been migrated */ -export const NUMBER_OF_MIGRATED_ALERTS = 1; +export const NUMBER_OF_MIGRATED_ALERTS = 2; /** * The advanced settings config name for the email address diff --git a/x-pack/legacy/plugins/monitoring/public/components/alerts/alerts.js b/x-pack/legacy/plugins/monitoring/public/components/alerts/alerts.js index 11fcef73a4b9..95c1af554919 100644 --- a/x-pack/legacy/plugins/monitoring/public/components/alerts/alerts.js +++ b/x-pack/legacy/plugins/monitoring/public/components/alerts/alerts.js @@ -6,10 +6,15 @@ import React from 'react'; import chrome from '../../np_imports/ui/chrome'; -import { capitalize } from 'lodash'; +import { capitalize, get } from 'lodash'; import { formatDateTimeLocal } from '../../../common/formatting'; import { formatTimestampToDuration } from '../../../common'; -import { CALCULATE_DURATION_SINCE, EUI_SORT_DESCENDING } from '../../../common/constants'; +import { + CALCULATE_DURATION_SINCE, + EUI_SORT_DESCENDING, + ALERT_TYPE_LICENSE_EXPIRATION, + ALERT_TYPE_CLUSTER_STATE, +} from '../../../common/constants'; import { mapSeverity } from './map_severity'; import { FormattedAlert } from 'plugins/monitoring/components/alerts/formatted_alert'; import { EuiMonitoringTable } from 'plugins/monitoring/components/table'; @@ -21,6 +26,8 @@ const linkToCategories = { 'elasticsearch/indices': 'Elasticsearch Indices', 'kibana/instances': 'Kibana Instances', 'logstash/instances': 'Logstash Nodes', + [ALERT_TYPE_LICENSE_EXPIRATION]: 'License expiration', + [ALERT_TYPE_CLUSTER_STATE]: 'Cluster state', }; const getColumns = (kbnUrl, scope, timezone) => [ { @@ -94,19 +101,22 @@ const getColumns = (kbnUrl, scope, timezone) => [ }), field: 'message', sortable: true, - render: (message, alert) => ( - { - scope.$evalAsync(() => { - kbnUrl.changePath(target); - }); - }} - /> - ), + render: (_message, alert) => { + const message = get(alert, 'message.text', get(alert, 'message', '')); + return ( + { + scope.$evalAsync(() => { + kbnUrl.changePath(target); + }); + }} + /> + ); + }, }, { name: i18n.translate('xpack.monitoring.alerts.categoryColumnTitle', { @@ -148,8 +158,8 @@ const getColumns = (kbnUrl, scope, timezone) => [ export const Alerts = ({ alerts, angular, sorting, pagination, onTableChange }) => { const alertsFlattened = alerts.map(alert => ({ ...alert, - status: alert.metadata.severity, - category: alert.metadata.link, + status: get(alert, 'metadata.severity', get(alert, 'severity', 0)), + category: get(alert, 'metadata.link', get(alert, 'type', null)), })); const injector = chrome.dangerouslyGetActiveInjector(); diff --git a/x-pack/legacy/plugins/monitoring/public/components/alerts/status.test.tsx b/x-pack/legacy/plugins/monitoring/public/components/alerts/status.test.tsx index 258a5b68db37..d3cf4b463a2c 100644 --- a/x-pack/legacy/plugins/monitoring/public/components/alerts/status.test.tsx +++ b/x-pack/legacy/plugins/monitoring/public/components/alerts/status.test.tsx @@ -8,7 +8,7 @@ import React from 'react'; import { shallow } from 'enzyme'; import { kfetch } from 'ui/kfetch'; import { AlertsStatus, AlertsStatusProps } from './status'; -import { ALERT_TYPE_PREFIX } from '../../../common/constants'; +import { ALERT_TYPES } from '../../../common/constants'; import { getSetupModeState } from '../../lib/setup_mode'; import { mockUseEffects } from '../../jest.helpers'; @@ -63,11 +63,7 @@ describe('Status', () => { it('should render a success message if all alerts have been migrated and in setup mode', async () => { (kfetch as jest.Mock).mockReturnValue({ - data: [ - { - alertTypeId: ALERT_TYPE_PREFIX, - }, - ], + data: ALERT_TYPES.map(type => ({ alertTypeId: type })), }); (getSetupModeState as jest.Mock).mockReturnValue({ diff --git a/x-pack/legacy/plugins/monitoring/public/components/alerts/status.tsx b/x-pack/legacy/plugins/monitoring/public/components/alerts/status.tsx index 072a98b12345..5f5329bf7fff 100644 --- a/x-pack/legacy/plugins/monitoring/public/components/alerts/status.tsx +++ b/x-pack/legacy/plugins/monitoring/public/components/alerts/status.tsx @@ -142,7 +142,7 @@ export const AlertsStatus: React.FC = (props: AlertsStatusPro ); } - const allMigrated = kibanaAlerts.length === NUMBER_OF_MIGRATED_ALERTS; + const allMigrated = kibanaAlerts.length >= NUMBER_OF_MIGRATED_ALERTS; if (allMigrated) { if (setupModeEnabled) { return ( diff --git a/x-pack/legacy/plugins/monitoring/public/components/cluster/overview/alerts_panel.js b/x-pack/legacy/plugins/monitoring/public/components/cluster/overview/alerts_panel.js index 8455fb8cf308..d87ff98e79be 100644 --- a/x-pack/legacy/plugins/monitoring/public/components/cluster/overview/alerts_panel.js +++ b/x-pack/legacy/plugins/monitoring/public/components/cluster/overview/alerts_panel.js @@ -6,14 +6,12 @@ import React, { Fragment } from 'react'; import moment from 'moment-timezone'; -import chrome from '../../../np_imports/ui/chrome'; import { FormattedAlert } from 'plugins/monitoring/components/alerts/formatted_alert'; import { mapSeverity } from 'plugins/monitoring/components/alerts/map_severity'; import { formatTimestampToDuration } from '../../../../common/format_timestamp_to_duration'; import { CALCULATE_DURATION_SINCE, KIBANA_ALERTING_ENABLED, - ALERT_TYPE_LICENSE_EXPIRATION, CALCULATE_DURATION_UNTIL, } from '../../../../common/constants'; import { formatDateTimeLocal } from '../../../../common/formatting'; @@ -31,6 +29,37 @@ import { EuiLink, } from '@elastic/eui'; +function replaceTokens(alert) { + if (!alert.message.tokens) { + return alert.message.text; + } + + let text = alert.message.text; + + for (const token of alert.message.tokens) { + if (token.type === 'time') { + text = text.replace( + token.startToken, + token.isRelative + ? formatTimestampToDuration(alert.expirationTime, CALCULATE_DURATION_UNTIL) + : moment.tz(alert.expirationTime, moment.tz.guess()).format('LLL z') + ); + } else if (token.type === 'link') { + const linkPart = new RegExp(`${token.startToken}(.+?)${token.endToken}`).exec(text); + // TODO: we assume this is at the end, which works for now but will not always work + const nonLinkText = text.replace(linkPart[0], ''); + text = ( + + {nonLinkText} + {linkPart[1]} + + ); + } + } + + return text; +} + export function AlertsPanel({ alerts, changeUrl }) { const goToAlerts = () => changeUrl('/alerts'); @@ -58,9 +87,6 @@ export function AlertsPanel({ alerts, changeUrl }) { severityIcon.iconType = 'check'; } - const injector = chrome.dangerouslyGetActiveInjector(); - const timezone = injector.get('config').get('dateFormat:tz'); - return ( @@ -96,14 +122,7 @@ export function AlertsPanel({ alerts, changeUrl }) { const alertsList = KIBANA_ALERTING_ENABLED ? alerts.map((alert, idx) => { const callOutProps = mapSeverity(alert.severity); - let message = alert.message - // scan message prefix and replace relative times - // \w: Matches any alphanumeric character from the basic Latin alphabet, including the underscore. Equivalent to [A-Za-z0-9_]. - .replace( - '#relative', - formatTimestampToDuration(alert.expirationTime, CALCULATE_DURATION_UNTIL) - ) - .replace('#absolute', moment.tz(alert.expirationTime, moment.tz.guess()).format('LLL z')); + const message = replaceTokens(alert); if (!alert.isFiring) { callOutProps.title = i18n.translate( @@ -118,22 +137,30 @@ export function AlertsPanel({ alerts, changeUrl }) { ); callOutProps.color = 'success'; callOutProps.iconType = 'check'; - } else { - if (alert.type === ALERT_TYPE_LICENSE_EXPIRATION) { - message = ( - - {message} -   - Please update your license - - ); - } } return ( - -

{message}

-
+ + +

{message}

+ +

+ +

+
+
+ +
); }) : alerts.map((item, index) => ( diff --git a/x-pack/legacy/plugins/monitoring/public/views/alerts/index.js b/x-pack/legacy/plugins/monitoring/public/views/alerts/index.js index 7c065a78a8af..62cc985887e9 100644 --- a/x-pack/legacy/plugins/monitoring/public/views/alerts/index.js +++ b/x-pack/legacy/plugins/monitoring/public/views/alerts/index.js @@ -18,25 +18,37 @@ import { Alerts } from '../../components/alerts'; import { MonitoringViewBaseEuiTableController } from '../base_eui_table_controller'; import { FormattedMessage } from '@kbn/i18n/react'; import { EuiPage, EuiPageBody, EuiPageContent, EuiSpacer, EuiLink } from '@elastic/eui'; -import { CODE_PATH_ALERTS } from '../../../common/constants'; +import { CODE_PATH_ALERTS, KIBANA_ALERTING_ENABLED } from '../../../common/constants'; function getPageData($injector) { const globalState = $injector.get('globalState'); const $http = $injector.get('$http'); const Private = $injector.get('Private'); - const url = `../api/monitoring/v1/clusters/${globalState.cluster_uuid}/legacy_alerts`; + const url = KIBANA_ALERTING_ENABLED + ? `../api/monitoring/v1/alert_status` + : `../api/monitoring/v1/clusters/${globalState.cluster_uuid}/legacy_alerts`; const timeBounds = timefilter.getBounds(); + const data = { + timeRange: { + min: timeBounds.min.toISOString(), + max: timeBounds.max.toISOString(), + }, + }; + + if (!KIBANA_ALERTING_ENABLED) { + data.ccs = globalState.ccs; + } return $http - .post(url, { - ccs: globalState.ccs, - timeRange: { - min: timeBounds.min.toISOString(), - max: timeBounds.max.toISOString(), - }, + .post(url, data) + .then(response => { + const result = get(response, 'data', []); + if (KIBANA_ALERTING_ENABLED) { + return result.alerts; + } + return result; }) - .then(response => get(response, 'data', [])) .catch(err => { const ajaxErrorHandlers = Private(ajaxErrorHandlersProvider); return ajaxErrorHandlers(err); diff --git a/x-pack/plugins/monitoring/common/constants.ts b/x-pack/plugins/monitoring/common/constants.ts index 9a4030f3eb21..3a4c7b71dcd0 100644 --- a/x-pack/plugins/monitoring/common/constants.ts +++ b/x-pack/plugins/monitoring/common/constants.ts @@ -239,11 +239,15 @@ export const ALERT_TYPE_PREFIX = 'monitoring_'; * This is the alert type id for the license expiration alert */ export const ALERT_TYPE_LICENSE_EXPIRATION = `${ALERT_TYPE_PREFIX}alert_type_license_expiration`; +/** + * This is the alert type id for the cluster state alert + */ +export const ALERT_TYPE_CLUSTER_STATE = `${ALERT_TYPE_PREFIX}alert_type_cluster_state`; /** * A listing of all alert types */ -export const ALERT_TYPES = [ALERT_TYPE_LICENSE_EXPIRATION]; +export const ALERT_TYPES = [ALERT_TYPE_LICENSE_EXPIRATION, ALERT_TYPE_CLUSTER_STATE]; /** * Matches the id for the built-in in email action type @@ -254,7 +258,7 @@ export const ALERT_ACTION_TYPE_EMAIL = '.email'; /** * The number of alerts that have been migrated */ -export const NUMBER_OF_MIGRATED_ALERTS = 1; +export const NUMBER_OF_MIGRATED_ALERTS = 2; /** * The advanced settings config name for the email address diff --git a/x-pack/plugins/monitoring/server/alerts/cluster_state.test.ts b/x-pack/plugins/monitoring/server/alerts/cluster_state.test.ts new file mode 100644 index 000000000000..6a9ca8843734 --- /dev/null +++ b/x-pack/plugins/monitoring/server/alerts/cluster_state.test.ts @@ -0,0 +1,186 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ +import { Logger } from 'src/core/server'; +import { savedObjectsClientMock } from 'src/core/server/mocks'; +import { getClusterState } from './cluster_state'; +import { AlertServices } from '../../../alerting/server'; +import { ALERT_TYPE_CLUSTER_STATE } from '../../common/constants'; +import { AlertCommonParams, AlertCommonState, AlertClusterStatePerClusterState } from './types'; +import { getPreparedAlert } from '../lib/alerts/get_prepared_alert'; +import { executeActions } from '../lib/alerts/cluster_state.lib'; +import { AlertClusterStateState } from './enums'; + +jest.mock('../lib/alerts/cluster_state.lib', () => ({ + executeActions: jest.fn(), + getUiMessage: jest.fn(), +})); + +jest.mock('../lib/alerts/get_prepared_alert', () => ({ + getPreparedAlert: jest.fn(() => { + return { + emailAddress: 'foo@foo.com', + }; + }), +})); + +interface MockServices { + callCluster: jest.Mock; + alertInstanceFactory: jest.Mock; + savedObjectsClient: jest.Mock; +} + +describe('getClusterState', () => { + const services: MockServices | AlertServices = { + callCluster: jest.fn(), + alertInstanceFactory: jest.fn(), + savedObjectsClient: savedObjectsClientMock.create(), + }; + + const params: AlertCommonParams = { + dateFormat: 'YYYY', + timezone: 'UTC', + }; + + const emailAddress = 'foo@foo.com'; + const clusterUuid = 'kdksdfj434'; + const clusterName = 'monitoring_test'; + const cluster = { clusterUuid, clusterName }; + + async function setupAlert( + previousState: AlertClusterStateState, + newState: AlertClusterStateState + ): Promise { + const logger: Logger = { + warn: jest.fn(), + log: jest.fn(), + debug: jest.fn(), + trace: jest.fn(), + error: jest.fn(), + fatal: jest.fn(), + info: jest.fn(), + get: jest.fn(), + }; + const getLogger = (): Logger => logger; + const ccrEnabled = false; + (getPreparedAlert as jest.Mock).mockImplementation(() => ({ + emailAddress, + data: [ + { + state: newState, + clusterUuid, + }, + ], + clusters: [cluster], + })); + + const alert = getClusterState(null as any, null as any, getLogger, ccrEnabled); + const state: AlertCommonState = { + [clusterUuid]: { + state: previousState, + ui: { + isFiring: false, + severity: 0, + message: null, + resolvedMS: 0, + lastCheckedMS: 0, + triggeredMS: 0, + }, + } as AlertClusterStatePerClusterState, + }; + + return (await alert.executor({ services, params, state } as any)) as AlertCommonState; + } + + afterEach(() => { + (executeActions as jest.Mock).mockClear(); + }); + + it('should configure the alert properly', () => { + const alert = getClusterState(null as any, null as any, jest.fn(), false); + expect(alert.id).toBe(ALERT_TYPE_CLUSTER_STATE); + expect(alert.actionGroups).toEqual([{ id: 'default', name: 'Default' }]); + }); + + it('should alert if green -> yellow', async () => { + const result = await setupAlert(AlertClusterStateState.Green, AlertClusterStateState.Yellow); + expect(executeActions).toHaveBeenCalledWith( + undefined, + cluster, + AlertClusterStateState.Yellow, + emailAddress + ); + const clusterResult = result[clusterUuid] as AlertClusterStatePerClusterState; + expect(clusterResult.state).toBe(AlertClusterStateState.Yellow); + expect(clusterResult.ui.isFiring).toBe(true); + expect(clusterResult.ui.resolvedMS).toBe(0); + }); + + it('should alert if yellow -> green', async () => { + const result = await setupAlert(AlertClusterStateState.Yellow, AlertClusterStateState.Green); + expect(executeActions).toHaveBeenCalledWith( + undefined, + cluster, + AlertClusterStateState.Green, + emailAddress, + true + ); + const clusterResult = result[clusterUuid] as AlertClusterStatePerClusterState; + expect(clusterResult.state).toBe(AlertClusterStateState.Green); + expect(clusterResult.ui.resolvedMS).toBeGreaterThan(0); + }); + + it('should alert if green -> red', async () => { + const result = await setupAlert(AlertClusterStateState.Green, AlertClusterStateState.Red); + expect(executeActions).toHaveBeenCalledWith( + undefined, + cluster, + AlertClusterStateState.Red, + emailAddress + ); + const clusterResult = result[clusterUuid] as AlertClusterStatePerClusterState; + expect(clusterResult.state).toBe(AlertClusterStateState.Red); + expect(clusterResult.ui.isFiring).toBe(true); + expect(clusterResult.ui.resolvedMS).toBe(0); + }); + + it('should alert if red -> green', async () => { + const result = await setupAlert(AlertClusterStateState.Red, AlertClusterStateState.Green); + expect(executeActions).toHaveBeenCalledWith( + undefined, + cluster, + AlertClusterStateState.Green, + emailAddress, + true + ); + const clusterResult = result[clusterUuid] as AlertClusterStatePerClusterState; + expect(clusterResult.state).toBe(AlertClusterStateState.Green); + expect(clusterResult.ui.resolvedMS).toBeGreaterThan(0); + }); + + it('should not alert if red -> yellow', async () => { + const result = await setupAlert(AlertClusterStateState.Red, AlertClusterStateState.Yellow); + expect(executeActions).not.toHaveBeenCalled(); + const clusterResult = result[clusterUuid] as AlertClusterStatePerClusterState; + expect(clusterResult.state).toBe(AlertClusterStateState.Red); + expect(clusterResult.ui.resolvedMS).toBe(0); + }); + + it('should not alert if yellow -> red', async () => { + const result = await setupAlert(AlertClusterStateState.Yellow, AlertClusterStateState.Red); + expect(executeActions).not.toHaveBeenCalled(); + const clusterResult = result[clusterUuid] as AlertClusterStatePerClusterState; + expect(clusterResult.state).toBe(AlertClusterStateState.Yellow); + expect(clusterResult.ui.resolvedMS).toBe(0); + }); + + it('should not alert if green -> green', async () => { + const result = await setupAlert(AlertClusterStateState.Green, AlertClusterStateState.Green); + expect(executeActions).not.toHaveBeenCalled(); + const clusterResult = result[clusterUuid] as AlertClusterStatePerClusterState; + expect(clusterResult.state).toBe(AlertClusterStateState.Green); + expect(clusterResult.ui.resolvedMS).toBe(0); + }); +}); diff --git a/x-pack/plugins/monitoring/server/alerts/cluster_state.ts b/x-pack/plugins/monitoring/server/alerts/cluster_state.ts new file mode 100644 index 000000000000..9a5805b8af7c --- /dev/null +++ b/x-pack/plugins/monitoring/server/alerts/cluster_state.ts @@ -0,0 +1,134 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import moment from 'moment-timezone'; +import { i18n } from '@kbn/i18n'; +import { Logger, ICustomClusterClient, UiSettingsServiceStart } from 'src/core/server'; +import { ALERT_TYPE_CLUSTER_STATE } from '../../common/constants'; +import { AlertType } from '../../../alerting/server'; +import { executeActions, getUiMessage } from '../lib/alerts/cluster_state.lib'; +import { + AlertCommonExecutorOptions, + AlertCommonState, + AlertClusterStatePerClusterState, + AlertCommonCluster, +} from './types'; +import { AlertClusterStateState } from './enums'; +import { getPreparedAlert } from '../lib/alerts/get_prepared_alert'; +import { fetchClusterState } from '../lib/alerts/fetch_cluster_state'; + +export const getClusterState = ( + getUiSettingsService: () => Promise, + monitoringCluster: ICustomClusterClient, + getLogger: (...scopes: string[]) => Logger, + ccsEnabled: boolean +): AlertType => { + const logger = getLogger(ALERT_TYPE_CLUSTER_STATE); + return { + id: ALERT_TYPE_CLUSTER_STATE, + name: 'Monitoring Alert - Cluster Status', + actionGroups: [ + { + id: 'default', + name: i18n.translate('xpack.monitoring.alerts.clusterState.actionGroups.default', { + defaultMessage: 'Default', + }), + }, + ], + defaultActionGroupId: 'default', + async executor({ + services, + params, + state, + }: AlertCommonExecutorOptions): Promise { + logger.debug( + `Firing alert with params: ${JSON.stringify(params)} and state: ${JSON.stringify(state)}` + ); + + const preparedAlert = await getPreparedAlert( + ALERT_TYPE_CLUSTER_STATE, + getUiSettingsService, + monitoringCluster, + logger, + ccsEnabled, + services, + fetchClusterState + ); + + if (!preparedAlert) { + return state; + } + + const { emailAddress, data: states, clusters } = preparedAlert; + + const result: AlertCommonState = { ...state }; + const defaultAlertState: AlertClusterStatePerClusterState = { + state: AlertClusterStateState.Green, + ui: { + isFiring: false, + message: null, + severity: 0, + resolvedMS: 0, + triggeredMS: 0, + lastCheckedMS: 0, + }, + }; + + for (const clusterState of states) { + const alertState: AlertClusterStatePerClusterState = + (state[clusterState.clusterUuid] as AlertClusterStatePerClusterState) || + defaultAlertState; + const cluster = clusters.find( + (c: AlertCommonCluster) => c.clusterUuid === clusterState.clusterUuid + ); + if (!cluster) { + logger.warn(`Unable to find cluster for clusterUuid='${clusterState.clusterUuid}'`); + continue; + } + const isNonGreen = clusterState.state !== AlertClusterStateState.Green; + const severity = clusterState.state === AlertClusterStateState.Red ? 2100 : 1100; + + const ui = alertState.ui; + let triggered = ui.triggeredMS; + let resolved = ui.resolvedMS; + let message = ui.message || {}; + let lastState = alertState.state; + const instance = services.alertInstanceFactory(ALERT_TYPE_CLUSTER_STATE); + + if (isNonGreen) { + if (lastState === AlertClusterStateState.Green) { + logger.debug(`Cluster state changed from green to ${clusterState.state}`); + executeActions(instance, cluster, clusterState.state, emailAddress); + lastState = clusterState.state; + triggered = moment().valueOf(); + } + message = getUiMessage(clusterState.state); + resolved = 0; + } else if (!isNonGreen && lastState !== AlertClusterStateState.Green) { + logger.debug(`Cluster state changed from ${lastState} to green`); + executeActions(instance, cluster, clusterState.state, emailAddress, true); + lastState = clusterState.state; + message = getUiMessage(clusterState.state, true); + resolved = moment().valueOf(); + } + + result[clusterState.clusterUuid] = { + state: lastState, + ui: { + message, + isFiring: isNonGreen, + severity, + resolvedMS: resolved, + triggeredMS: triggered, + lastCheckedMS: moment().valueOf(), + }, + } as AlertClusterStatePerClusterState; + } + + return result; + }, + }; +}; diff --git a/x-pack/plugins/monitoring/server/alerts/enums.ts b/x-pack/plugins/monitoring/server/alerts/enums.ts new file mode 100644 index 000000000000..ccff588743af --- /dev/null +++ b/x-pack/plugins/monitoring/server/alerts/enums.ts @@ -0,0 +1,16 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +export enum AlertClusterStateState { + Green = 'green', + Red = 'red', + Yellow = 'yellow', +} + +export enum AlertCommonPerClusterMessageTokenType { + Time = 'time', + Link = 'link', +} diff --git a/x-pack/plugins/monitoring/server/alerts/license_expiration.test.ts b/x-pack/plugins/monitoring/server/alerts/license_expiration.test.ts index 0773af6e7f07..92047e300bc1 100644 --- a/x-pack/plugins/monitoring/server/alerts/license_expiration.test.ts +++ b/x-pack/plugins/monitoring/server/alerts/license_expiration.test.ts @@ -6,42 +6,31 @@ import moment from 'moment-timezone'; import { getLicenseExpiration } from './license_expiration'; -import { - ALERT_TYPE_LICENSE_EXPIRATION, - MONITORING_CONFIG_ALERTING_EMAIL_ADDRESS, -} from '../../common/constants'; +import { ALERT_TYPE_LICENSE_EXPIRATION } from '../../common/constants'; import { Logger } from 'src/core/server'; -import { AlertServices, AlertInstance } from '../../../alerting/server'; +import { AlertServices } from '../../../alerting/server'; import { savedObjectsClientMock } from 'src/core/server/mocks'; import { - AlertState, - AlertClusterState, - AlertParams, - LicenseExpirationAlertExecutorOptions, + AlertCommonParams, + AlertCommonState, + AlertLicensePerClusterState, + AlertLicense, } from './types'; -import { SavedObject, SavedObjectAttributes } from 'src/core/server'; -import { SavedObjectsClientContract } from 'src/core/server'; +import { executeActions } from '../lib/alerts/license_expiration.lib'; +import { PreparedAlert, getPreparedAlert } from '../lib/alerts/get_prepared_alert'; -function fillLicense(license: any, clusterUuid?: string) { - return { - hits: { - hits: [ - { - _source: { - license, - cluster_uuid: clusterUuid, - }, - }, - ], - }, - }; -} +jest.mock('../lib/alerts/license_expiration.lib', () => ({ + executeActions: jest.fn(), + getUiMessage: jest.fn(), +})); -const clusterUuid = 'a4545jhjb'; -const params: AlertParams = { - dateFormat: 'YYYY', - timezone: 'UTC', -}; +jest.mock('../lib/alerts/get_prepared_alert', () => ({ + getPreparedAlert: jest.fn(() => { + return { + emailAddress: 'foo@foo.com', + }; + }), +})); interface MockServices { callCluster: jest.Mock; @@ -49,428 +38,169 @@ interface MockServices { savedObjectsClient: jest.Mock; } -const alertExecutorOptions: LicenseExpirationAlertExecutorOptions = { - alertId: '', - startedAt: new Date(), - services: { - callCluster: (path: string, opts: any) => new Promise(resolve => resolve()), - alertInstanceFactory: (id: string) => new AlertInstance(), - savedObjectsClient: {} as jest.Mocked, - }, - params: {}, - state: {}, - spaceId: '', - name: '', - tags: [], - previousStartedAt: null, - createdBy: null, - updatedBy: null, -}; - describe('getLicenseExpiration', () => { - const emailAddress = 'foo@foo.com'; - const getUiSettingsService: any = () => ({ - asScopedToClient: (): any => ({ - get: () => new Promise(resolve => resolve(emailAddress)), - }), - }); - const monitoringCluster: any = null; - const logger: Logger = { - warn: jest.fn(), - log: jest.fn(), - debug: jest.fn(), - trace: jest.fn(), - error: jest.fn(), - fatal: jest.fn(), - info: jest.fn(), - get: jest.fn(), + const services: MockServices | AlertServices = { + callCluster: jest.fn(), + alertInstanceFactory: jest.fn(), + savedObjectsClient: savedObjectsClientMock.create(), }; - const getLogger = (): Logger => logger; - const ccrEnabled = false; + + const params: AlertCommonParams = { + dateFormat: 'YYYY', + timezone: 'UTC', + }; + + const emailAddress = 'foo@foo.com'; + const clusterUuid = 'kdksdfj434'; + const clusterName = 'monitoring_test'; + const dateFormat = 'YYYY-MM-DD'; + const cluster = { clusterUuid, clusterName }; + const defaultUiState = { + isFiring: false, + severity: 0, + message: null, + resolvedMS: 0, + lastCheckedMS: 0, + triggeredMS: 0, + }; + + async function setupAlert( + license: AlertLicense | null, + expiredCheckDateMS: number, + preparedAlertResponse: PreparedAlert | null | undefined = undefined + ): Promise { + const logger: Logger = { + warn: jest.fn(), + log: jest.fn(), + debug: jest.fn(), + trace: jest.fn(), + error: jest.fn(), + fatal: jest.fn(), + info: jest.fn(), + get: jest.fn(), + }; + const getLogger = (): Logger => logger; + const ccrEnabled = false; + (getPreparedAlert as jest.Mock).mockImplementation(() => { + if (preparedAlertResponse !== undefined) { + return preparedAlertResponse; + } + + return { + emailAddress, + data: [license], + clusters: [cluster], + dateFormat, + }; + }); + + const alert = getLicenseExpiration(null as any, null as any, getLogger, ccrEnabled); + const state: AlertCommonState = { + [clusterUuid]: { + expiredCheckDateMS, + ui: { ...defaultUiState }, + } as AlertLicensePerClusterState, + }; + + return (await alert.executor({ services, params, state } as any)) as AlertCommonState; + } afterEach(() => { - (logger.warn as jest.Mock).mockClear(); + (executeActions as jest.Mock).mockClear(); + (getPreparedAlert as jest.Mock).mockClear(); }); it('should have the right id and actionGroups', () => { - const alert = getLicenseExpiration( - getUiSettingsService, - monitoringCluster, - getLogger, - ccrEnabled - ); + const alert = getLicenseExpiration(null as any, null as any, jest.fn(), false); expect(alert.id).toBe(ALERT_TYPE_LICENSE_EXPIRATION); expect(alert.actionGroups).toEqual([{ id: 'default', name: 'Default' }]); }); it('should return the state if no license is provided', async () => { - const alert = getLicenseExpiration( - getUiSettingsService, - monitoringCluster, - getLogger, - ccrEnabled - ); - - const services: MockServices | AlertServices = { - callCluster: jest.fn(), - alertInstanceFactory: jest.fn(), - savedObjectsClient: savedObjectsClientMock.create(), - }; - const state = { foo: 1 }; - - const result = await alert.executor({ - ...alertExecutorOptions, - services, - params, - state, - }); - - expect(result).toEqual(state); - }); - - it('should log a warning if no email is provided', async () => { - const customGetUiSettingsService: any = () => ({ - asScopedToClient: () => ({ - get: () => null, - }), - }); - const alert = getLicenseExpiration( - customGetUiSettingsService, - monitoringCluster, - getLogger, - ccrEnabled - ); - - const services = { - callCluster: jest.fn( - (method: string, { filterPath }): Promise => { - return new Promise(resolve => { - if (filterPath.includes('hits.hits._source.license.*')) { - resolve( - fillLicense({ - status: 'good', - type: 'basic', - expiry_date_in_millis: moment() - .add(7, 'days') - .valueOf(), - }) - ); - } - resolve({}); - }); - } - ), - alertInstanceFactory: jest.fn(), - savedObjectsClient: savedObjectsClientMock.create(), - }; - - const state = {}; - - await alert.executor({ - ...alertExecutorOptions, - services, - params, - state, - }); - - expect((logger.warn as jest.Mock).mock.calls.length).toBe(1); - expect(logger.warn).toHaveBeenCalledWith( - `Unable to send email for ${ALERT_TYPE_LICENSE_EXPIRATION} because there is no email configured.` - ); + const result = await setupAlert(null, 0, null); + expect(result[clusterUuid].ui).toEqual(defaultUiState); }); it('should fire actions if going to expire', async () => { - const scheduleActions = jest.fn(); - const alertInstanceFactory = jest.fn( - (id: string): AlertInstance => { - const instance = new AlertInstance(); - instance.scheduleActions = scheduleActions; - return instance; - } - ); - - const alert = getLicenseExpiration( - getUiSettingsService, - monitoringCluster, - getLogger, - ccrEnabled - ); - - const savedObjectsClient = savedObjectsClientMock.create(); - savedObjectsClient.get.mockReturnValue( - new Promise(resolve => { - const savedObject: SavedObject = { - id: '', - type: '', - references: [], - attributes: { - [MONITORING_CONFIG_ALERTING_EMAIL_ADDRESS]: emailAddress, - }, - }; - resolve(savedObject); - }) - ); - const services = { - callCluster: jest.fn( - (method: string, { filterPath }): Promise => { - return new Promise(resolve => { - if (filterPath.includes('hits.hits._source.license.*')) { - resolve( - fillLicense( - { - status: 'active', - type: 'gold', - expiry_date_in_millis: moment() - .add(7, 'days') - .valueOf(), - }, - clusterUuid - ) - ); - } - resolve({}); - }); - } - ), - alertInstanceFactory, - savedObjectsClient, + const expiryDateMS = moment() + .add(7, 'days') + .valueOf(); + const license = { + status: 'active', + type: 'gold', + expiryDateMS, + clusterUuid, }; - - const state = {}; - - const result: AlertState = (await alert.executor({ - ...alertExecutorOptions, - services, - params, - state, - })) as AlertState; - - const newState: AlertClusterState = result[clusterUuid] as AlertClusterState; - + const result = await setupAlert(license, 0); + const newState = result[clusterUuid] as AlertLicensePerClusterState; expect(newState.expiredCheckDateMS > 0).toBe(true); - expect(scheduleActions.mock.calls.length).toBe(1); - expect(scheduleActions.mock.calls[0][1].subject).toBe( - 'NEW X-Pack Monitoring: License Expiration' + expect(executeActions).toHaveBeenCalledWith( + undefined, + cluster, + moment.utc(expiryDateMS), + dateFormat, + emailAddress ); - expect(scheduleActions.mock.calls[0][1].to).toBe(emailAddress); }); it('should fire actions if the user fixed their license', async () => { - const scheduleActions = jest.fn(); - const alertInstanceFactory = jest.fn( - (id: string): AlertInstance => { - const instance = new AlertInstance(); - instance.scheduleActions = scheduleActions; - return instance; - } - ); - const alert = getLicenseExpiration( - getUiSettingsService, - monitoringCluster, - getLogger, - ccrEnabled - ); - - const savedObjectsClient = savedObjectsClientMock.create(); - savedObjectsClient.get.mockReturnValue( - new Promise(resolve => { - const savedObject: SavedObject = { - id: '', - type: '', - references: [], - attributes: { - [MONITORING_CONFIG_ALERTING_EMAIL_ADDRESS]: emailAddress, - }, - }; - resolve(savedObject); - }) - ); - const services = { - callCluster: jest.fn( - (method: string, { filterPath }): Promise => { - return new Promise(resolve => { - if (filterPath.includes('hits.hits._source.license.*')) { - resolve( - fillLicense( - { - status: 'active', - type: 'gold', - expiry_date_in_millis: moment() - .add(120, 'days') - .valueOf(), - }, - clusterUuid - ) - ); - } - resolve({}); - }); - } - ), - alertInstanceFactory, - savedObjectsClient, + const expiryDateMS = moment() + .add(365, 'days') + .valueOf(); + const license = { + status: 'active', + type: 'gold', + expiryDateMS, + clusterUuid, }; - - const state: AlertState = { - [clusterUuid]: { - expiredCheckDateMS: moment() - .subtract(1, 'day') - .valueOf(), - ui: { isFiring: true, severity: 0, message: null, resolvedMS: 0, expirationTime: 0 }, - }, - }; - - const result: AlertState = (await alert.executor({ - ...alertExecutorOptions, - services, - params, - state, - })) as AlertState; - - const newState: AlertClusterState = result[clusterUuid] as AlertClusterState; + const result = await setupAlert(license, 100); + const newState = result[clusterUuid] as AlertLicensePerClusterState; expect(newState.expiredCheckDateMS).toBe(0); - expect(scheduleActions.mock.calls.length).toBe(1); - expect(scheduleActions.mock.calls[0][1].subject).toBe( - 'RESOLVED X-Pack Monitoring: License Expiration' + expect(executeActions).toHaveBeenCalledWith( + undefined, + cluster, + moment.utc(expiryDateMS), + dateFormat, + emailAddress, + true ); - expect(scheduleActions.mock.calls[0][1].to).toBe(emailAddress); }); it('should not fire actions for trial license that expire in more than 14 days', async () => { - const scheduleActions = jest.fn(); - const alertInstanceFactory = jest.fn( - (id: string): AlertInstance => { - const instance = new AlertInstance(); - instance.scheduleActions = scheduleActions; - return instance; - } - ); - const alert = getLicenseExpiration( - getUiSettingsService, - monitoringCluster, - getLogger, - ccrEnabled - ); - - const savedObjectsClient = savedObjectsClientMock.create(); - savedObjectsClient.get.mockReturnValue( - new Promise(resolve => { - const savedObject: SavedObject = { - id: '', - type: '', - references: [], - attributes: { - [MONITORING_CONFIG_ALERTING_EMAIL_ADDRESS]: emailAddress, - }, - }; - resolve(savedObject); - }) - ); - const services = { - callCluster: jest.fn( - (method: string, { filterPath }): Promise => { - return new Promise(resolve => { - if (filterPath.includes('hits.hits._source.license.*')) { - resolve( - fillLicense( - { - status: 'active', - type: 'trial', - expiry_date_in_millis: moment() - .add(15, 'days') - .valueOf(), - }, - clusterUuid - ) - ); - } - resolve({}); - }); - } - ), - alertInstanceFactory, - savedObjectsClient, + const expiryDateMS = moment() + .add(20, 'days') + .valueOf(); + const license = { + status: 'active', + type: 'trial', + expiryDateMS, + clusterUuid, }; - - const state = {}; - const result: AlertState = (await alert.executor({ - ...alertExecutorOptions, - services, - params, - state, - })) as AlertState; - - const newState: AlertClusterState = result[clusterUuid] as AlertClusterState; - expect(newState.expiredCheckDateMS).toBe(undefined); - expect(scheduleActions).not.toHaveBeenCalled(); + const result = await setupAlert(license, 0); + const newState = result[clusterUuid] as AlertLicensePerClusterState; + expect(newState.expiredCheckDateMS).toBe(0); + expect(executeActions).not.toHaveBeenCalled(); }); it('should fire actions for trial license that in 14 days or less', async () => { - const scheduleActions = jest.fn(); - const alertInstanceFactory = jest.fn( - (id: string): AlertInstance => { - const instance = new AlertInstance(); - instance.scheduleActions = scheduleActions; - return instance; - } - ); - const alert = getLicenseExpiration( - getUiSettingsService, - monitoringCluster, - getLogger, - ccrEnabled - ); - - const savedObjectsClient = savedObjectsClientMock.create(); - savedObjectsClient.get.mockReturnValue( - new Promise(resolve => { - const savedObject: SavedObject = { - id: '', - type: '', - references: [], - attributes: { - [MONITORING_CONFIG_ALERTING_EMAIL_ADDRESS]: emailAddress, - }, - }; - resolve(savedObject); - }) - ); - const services = { - callCluster: jest.fn( - (method: string, { filterPath }): Promise => { - return new Promise(resolve => { - if (filterPath.includes('hits.hits._source.license.*')) { - resolve( - fillLicense( - { - status: 'active', - type: 'trial', - expiry_date_in_millis: moment() - .add(13, 'days') - .valueOf(), - }, - clusterUuid - ) - ); - } - resolve({}); - }); - } - ), - alertInstanceFactory, - savedObjectsClient, + const expiryDateMS = moment() + .add(7, 'days') + .valueOf(); + const license = { + status: 'active', + type: 'trial', + expiryDateMS, + clusterUuid, }; - - const state = {}; - const result: AlertState = (await alert.executor({ - ...alertExecutorOptions, - services, - params, - state, - })) as AlertState; - - const newState: AlertClusterState = result[clusterUuid] as AlertClusterState; + const result = await setupAlert(license, 0); + const newState = result[clusterUuid] as AlertLicensePerClusterState; expect(newState.expiredCheckDateMS > 0).toBe(true); - expect(scheduleActions.mock.calls.length).toBe(1); + expect(executeActions).toHaveBeenCalledWith( + undefined, + cluster, + moment.utc(expiryDateMS), + dateFormat, + emailAddress + ); }); }); diff --git a/x-pack/plugins/monitoring/server/alerts/license_expiration.ts b/x-pack/plugins/monitoring/server/alerts/license_expiration.ts index 93397ff3641a..2e5356150086 100644 --- a/x-pack/plugins/monitoring/server/alerts/license_expiration.ts +++ b/x-pack/plugins/monitoring/server/alerts/license_expiration.ts @@ -5,24 +5,20 @@ */ import moment from 'moment-timezone'; -import { get } from 'lodash'; import { Logger, ICustomClusterClient, UiSettingsServiceStart } from 'src/core/server'; import { i18n } from '@kbn/i18n'; -import { ALERT_TYPE_LICENSE_EXPIRATION, INDEX_PATTERN_ELASTICSEARCH } from '../../common/constants'; +import { ALERT_TYPE_LICENSE_EXPIRATION } from '../../common/constants'; import { AlertType } from '../../../../plugins/alerting/server'; import { fetchLicenses } from '../lib/alerts/fetch_licenses'; -import { fetchDefaultEmailAddress } from '../lib/alerts/fetch_default_email_address'; -import { fetchClusters } from '../lib/alerts/fetch_clusters'; -import { fetchAvailableCcs } from '../lib/alerts/fetch_available_ccs'; import { - AlertLicense, - AlertState, - AlertClusterState, - AlertClusterUiState, - LicenseExpirationAlertExecutorOptions, + AlertCommonState, + AlertLicensePerClusterState, + AlertCommonExecutorOptions, + AlertCommonCluster, + AlertLicensePerClusterUiState, } from './types'; -import { getCcsIndexPattern } from '../lib/alerts/get_ccs_index_pattern'; import { executeActions, getUiMessage } from '../lib/alerts/license_expiration.lib'; +import { getPreparedAlert } from '../lib/alerts/get_prepared_alert'; const EXPIRES_DAYS = [60, 30, 14, 7]; @@ -32,14 +28,6 @@ export const getLicenseExpiration = ( getLogger: (...scopes: string[]) => Logger, ccsEnabled: boolean ): AlertType => { - async function getCallCluster(services: any): Promise { - if (!monitoringCluster) { - return services.callCluster; - } - - return monitoringCluster.callAsInternalUser; - } - const logger = getLogger(ALERT_TYPE_LICENSE_EXPIRATION); return { id: ALERT_TYPE_LICENSE_EXPIRATION, @@ -53,54 +41,50 @@ export const getLicenseExpiration = ( }, ], defaultActionGroupId: 'default', - async executor({ - services, - params, - state, - }: LicenseExpirationAlertExecutorOptions): Promise { + async executor({ services, params, state }: AlertCommonExecutorOptions): Promise { logger.debug( `Firing alert with params: ${JSON.stringify(params)} and state: ${JSON.stringify(state)}` ); - const callCluster = await getCallCluster(services); + const preparedAlert = await getPreparedAlert( + ALERT_TYPE_LICENSE_EXPIRATION, + getUiSettingsService, + monitoringCluster, + logger, + ccsEnabled, + services, + fetchLicenses + ); - // Support CCS use cases by querying to find available remote clusters - // and then adding those to the index pattern we are searching against - let esIndexPattern = INDEX_PATTERN_ELASTICSEARCH; - if (ccsEnabled) { - const availableCcs = await fetchAvailableCcs(callCluster); - if (availableCcs.length > 0) { - esIndexPattern = getCcsIndexPattern(esIndexPattern, availableCcs); - } - } - - const clusters = await fetchClusters(callCluster, esIndexPattern); - - // Fetch licensing information from cluster_stats documents - const licenses: AlertLicense[] = await fetchLicenses(callCluster, clusters, esIndexPattern); - if (licenses.length === 0) { - logger.warn(`No license found for ${ALERT_TYPE_LICENSE_EXPIRATION}.`); + if (!preparedAlert) { return state; } - const uiSettings = (await getUiSettingsService()).asScopedToClient( - services.savedObjectsClient - ); - const dateFormat: string = await uiSettings.get('dateFormat'); - const timezone: string = await uiSettings.get('dateFormat:tz'); - const emailAddress = await fetchDefaultEmailAddress(uiSettings); - if (!emailAddress) { - // TODO: we can do more here - logger.warn( - `Unable to send email for ${ALERT_TYPE_LICENSE_EXPIRATION} because there is no email configured.` - ); - return; - } + const { emailAddress, data: licenses, clusters, dateFormat } = preparedAlert; - const result: AlertState = { ...state }; + const result: AlertCommonState = { ...state }; + const defaultAlertState: AlertLicensePerClusterState = { + expiredCheckDateMS: 0, + ui: { + isFiring: false, + message: null, + severity: 0, + resolvedMS: 0, + lastCheckedMS: 0, + triggeredMS: 0, + }, + }; for (const license of licenses) { - const licenseState: AlertClusterState = state[license.clusterUuid] || {}; + const alertState: AlertLicensePerClusterState = + (state[license.clusterUuid] as AlertLicensePerClusterState) || defaultAlertState; + const cluster = clusters.find( + (c: AlertCommonCluster) => c.clusterUuid === license.clusterUuid + ); + if (!cluster) { + logger.warn(`Unable to find cluster for clusterUuid='${license.clusterUuid}'`); + continue; + } const $expiry = moment.utc(license.expiryDateMS); let isExpired = false; let severity = 0; @@ -123,31 +107,26 @@ export const getLicenseExpiration = ( } } - const ui: AlertClusterUiState = get(licenseState, 'ui', { - isFiring: false, - message: null, - severity: 0, - resolvedMS: 0, - expirationTime: 0, - }); + const ui = alertState.ui; + let triggered = ui.triggeredMS; let resolved = ui.resolvedMS; let message = ui.message; - let expiredCheckDate = licenseState.expiredCheckDateMS; + let expiredCheckDate = alertState.expiredCheckDateMS; const instance = services.alertInstanceFactory(ALERT_TYPE_LICENSE_EXPIRATION); if (isExpired) { - if (!licenseState.expiredCheckDateMS) { + if (!alertState.expiredCheckDateMS) { logger.debug(`License will expire soon, sending email`); - executeActions(instance, license, $expiry, dateFormat, emailAddress); - expiredCheckDate = moment().valueOf(); + executeActions(instance, cluster, $expiry, dateFormat, emailAddress); + expiredCheckDate = triggered = moment().valueOf(); } - message = getUiMessage(license, timezone); + message = getUiMessage(); resolved = 0; - } else if (!isExpired && licenseState.expiredCheckDateMS) { + } else if (!isExpired && alertState.expiredCheckDateMS) { logger.debug(`License expiration has been resolved, sending email`); - executeActions(instance, license, $expiry, dateFormat, emailAddress, true); + executeActions(instance, cluster, $expiry, dateFormat, emailAddress, true); expiredCheckDate = 0; - message = getUiMessage(license, timezone, true); + message = getUiMessage(true); resolved = moment().valueOf(); } @@ -159,8 +138,10 @@ export const getLicenseExpiration = ( isFiring: expiredCheckDate > 0, severity, resolvedMS: resolved, - }, - }; + triggeredMS: triggered, + lastCheckedMS: moment().valueOf(), + } as AlertLicensePerClusterUiState, + } as AlertLicensePerClusterState; } return result; diff --git a/x-pack/plugins/monitoring/server/alerts/types.d.ts b/x-pack/plugins/monitoring/server/alerts/types.d.ts index ff47d6f2ad4d..b689d008b51a 100644 --- a/x-pack/plugins/monitoring/server/alerts/types.d.ts +++ b/x-pack/plugins/monitoring/server/alerts/types.d.ts @@ -5,41 +5,79 @@ */ import { Moment } from 'moment'; import { AlertExecutorOptions } from '../../../alerting/server'; +import { AlertClusterStateState, AlertCommonPerClusterMessageTokenType } from './enums'; export interface AlertLicense { status: string; type: string; expiryDateMS: number; clusterUuid: string; - clusterName: string; -} - -export interface AlertState { - [clusterUuid: string]: AlertClusterState; } export interface AlertClusterState { - expiredCheckDateMS: number | Moment; - ui: AlertClusterUiState; -} - -export interface AlertClusterUiState { - isFiring: boolean; - severity: number; - message: string | null; - resolvedMS: number; - expirationTime: number; -} - -export interface AlertCluster { + state: AlertClusterStateState; clusterUuid: string; } -export interface LicenseExpirationAlertExecutorOptions extends AlertExecutorOptions { - state: AlertState; +export interface AlertCommonState { + [clusterUuid: string]: AlertCommonPerClusterState; } -export interface AlertParams { +export interface AlertCommonPerClusterState { + ui: AlertCommonPerClusterUiState; +} + +export interface AlertClusterStatePerClusterState extends AlertCommonPerClusterState { + state: AlertClusterStateState; +} + +export interface AlertLicensePerClusterState extends AlertCommonPerClusterState { + expiredCheckDateMS: number; +} + +export interface AlertCommonPerClusterUiState { + isFiring: boolean; + severity: number; + message: AlertCommonPerClusterMessage | null; + resolvedMS: number; + lastCheckedMS: number; + triggeredMS: number; +} + +export interface AlertCommonPerClusterMessage { + text: string; // Do this. #link this is a link #link + tokens?: AlertCommonPerClusterMessageToken[]; +} + +export interface AlertCommonPerClusterMessageToken { + startToken: string; + endToken?: string; + type: AlertCommonPerClusterMessageTokenType; +} + +export interface AlertCommonPerClusterMessageLinkToken extends AlertCommonPerClusterMessageToken { + url?: string; +} + +export interface AlertCommonPerClusterMessageTimeToken extends AlertCommonPerClusterMessageToken { + isRelative: boolean; + isAbsolute: boolean; +} + +export interface AlertLicensePerClusterUiState extends AlertCommonPerClusterUiState { + expirationTime: number; +} + +export interface AlertCommonCluster { + clusterUuid: string; + clusterName: string; +} + +export interface AlertCommonExecutorOptions extends AlertExecutorOptions { + state: AlertCommonState; +} + +export interface AlertCommonParams { dateFormat: string; timezone: string; } diff --git a/x-pack/plugins/monitoring/server/lib/alerts/cluster_state.lib.test.ts b/x-pack/plugins/monitoring/server/lib/alerts/cluster_state.lib.test.ts new file mode 100644 index 000000000000..81e375734cc5 --- /dev/null +++ b/x-pack/plugins/monitoring/server/lib/alerts/cluster_state.lib.test.ts @@ -0,0 +1,70 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ +import { executeActions, getUiMessage } from './cluster_state.lib'; +import { AlertClusterStateState } from '../../alerts/enums'; +import { AlertCommonPerClusterMessageLinkToken } from '../../alerts/types'; + +describe('clusterState lib', () => { + describe('executeActions', () => { + const clusterName = 'clusterA'; + const instance: any = { scheduleActions: jest.fn() }; + const license: any = { clusterName }; + const status = AlertClusterStateState.Green; + const emailAddress = 'test@test.com'; + + beforeEach(() => { + instance.scheduleActions.mockClear(); + }); + + it('should schedule actions when firing', () => { + executeActions(instance, license, status, emailAddress, false); + expect(instance.scheduleActions).toHaveBeenCalledWith('default', { + subject: 'NEW X-Pack Monitoring: Cluster Status', + message: `Allocate missing replica shards for cluster '${clusterName}'`, + to: emailAddress, + }); + }); + + it('should have a different message for red state', () => { + executeActions(instance, license, AlertClusterStateState.Red, emailAddress, false); + expect(instance.scheduleActions).toHaveBeenCalledWith('default', { + subject: 'NEW X-Pack Monitoring: Cluster Status', + message: `Allocate missing primary and replica shards for cluster '${clusterName}'`, + to: emailAddress, + }); + }); + + it('should schedule actions when resolved', () => { + executeActions(instance, license, status, emailAddress, true); + expect(instance.scheduleActions).toHaveBeenCalledWith('default', { + subject: 'RESOLVED X-Pack Monitoring: Cluster Status', + message: `This cluster alert has been resolved: Allocate missing replica shards for cluster '${clusterName}'`, + to: emailAddress, + }); + }); + }); + + describe('getUiMessage', () => { + it('should return a message when firing', () => { + const message = getUiMessage(AlertClusterStateState.Red, false); + expect(message.text).toBe( + `Elasticsearch cluster status is red. #start_linkAllocate missing primary and replica shards#end_link` + ); + expect(message.tokens && message.tokens.length).toBe(1); + expect(message.tokens && message.tokens[0].startToken).toBe('#start_link'); + expect(message.tokens && message.tokens[0].endToken).toBe('#end_link'); + expect( + message.tokens && (message.tokens[0] as AlertCommonPerClusterMessageLinkToken).url + ).toBe('elasticsearch/indices'); + }); + + it('should return a message when resolved', () => { + const message = getUiMessage(AlertClusterStateState.Green, true); + expect(message.text).toBe(`Elasticsearch cluster status is green.`); + expect(message.tokens).not.toBeDefined(); + }); + }); +}); diff --git a/x-pack/plugins/monitoring/server/lib/alerts/cluster_state.lib.ts b/x-pack/plugins/monitoring/server/lib/alerts/cluster_state.lib.ts new file mode 100644 index 000000000000..ae66d603507c --- /dev/null +++ b/x-pack/plugins/monitoring/server/lib/alerts/cluster_state.lib.ts @@ -0,0 +1,88 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ +import { i18n } from '@kbn/i18n'; +import { AlertInstance } from '../../../../alerting/server'; +import { + AlertCommonCluster, + AlertCommonPerClusterMessage, + AlertCommonPerClusterMessageLinkToken, +} from '../../alerts/types'; +import { AlertClusterStateState, AlertCommonPerClusterMessageTokenType } from '../../alerts/enums'; + +const RESOLVED_SUBJECT = i18n.translate('xpack.monitoring.alerts.clusterStatus.resolvedSubject', { + defaultMessage: 'RESOLVED X-Pack Monitoring: Cluster Status', +}); + +const NEW_SUBJECT = i18n.translate('xpack.monitoring.alerts.clusterStatus.newSubject', { + defaultMessage: 'NEW X-Pack Monitoring: Cluster Status', +}); + +const RED_STATUS_MESSAGE = i18n.translate('xpack.monitoring.alerts.clusterStatus.redMessage', { + defaultMessage: 'Allocate missing primary and replica shards', +}); + +const YELLOW_STATUS_MESSAGE = i18n.translate( + 'xpack.monitoring.alerts.clusterStatus.yellowMessage', + { + defaultMessage: 'Allocate missing replica shards', + } +); + +export function executeActions( + instance: AlertInstance, + cluster: AlertCommonCluster, + status: AlertClusterStateState, + emailAddress: string, + resolved: boolean = false +) { + const message = + status === AlertClusterStateState.Red ? RED_STATUS_MESSAGE : YELLOW_STATUS_MESSAGE; + if (resolved) { + instance.scheduleActions('default', { + subject: RESOLVED_SUBJECT, + message: `This cluster alert has been resolved: ${message} for cluster '${cluster.clusterName}'`, + to: emailAddress, + }); + } else { + instance.scheduleActions('default', { + subject: NEW_SUBJECT, + message: `${message} for cluster '${cluster.clusterName}'`, + to: emailAddress, + }); + } +} + +export function getUiMessage( + status: AlertClusterStateState, + resolved: boolean = false +): AlertCommonPerClusterMessage { + if (resolved) { + return { + text: i18n.translate('xpack.monitoring.alerts.clusterStatus.ui.resolvedMessage', { + defaultMessage: `Elasticsearch cluster status is green.`, + }), + }; + } + const message = + status === AlertClusterStateState.Red ? RED_STATUS_MESSAGE : YELLOW_STATUS_MESSAGE; + return { + text: i18n.translate('xpack.monitoring.alerts.clusterStatus.ui.firingMessage', { + defaultMessage: `Elasticsearch cluster status is {status}. #start_link{message}#end_link`, + values: { + status, + message, + }, + }), + tokens: [ + { + startToken: '#start_link', + endToken: '#end_link', + type: AlertCommonPerClusterMessageTokenType.Link, + url: 'elasticsearch/indices', + } as AlertCommonPerClusterMessageLinkToken, + ], + }; +} diff --git a/x-pack/plugins/monitoring/server/lib/alerts/fetch_cluster_state.test.ts b/x-pack/plugins/monitoring/server/lib/alerts/fetch_cluster_state.test.ts new file mode 100644 index 000000000000..642ae3c39a02 --- /dev/null +++ b/x-pack/plugins/monitoring/server/lib/alerts/fetch_cluster_state.test.ts @@ -0,0 +1,39 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { fetchClusterState } from './fetch_cluster_state'; + +describe('fetchClusterState', () => { + it('should return the cluster state', async () => { + const status = 'green'; + const clusterUuid = 'sdfdsaj34434'; + const callCluster = jest.fn(() => ({ + hits: { + hits: [ + { + _source: { + cluster_state: { + status, + }, + cluster_uuid: clusterUuid, + }, + }, + ], + }, + })); + + const clusters = [{ clusterUuid, clusterName: 'foo' }]; + const index = '.monitoring-es-*'; + + const state = await fetchClusterState(callCluster, clusters, index); + expect(state).toEqual([ + { + state: status, + clusterUuid, + }, + ]); + }); +}); diff --git a/x-pack/plugins/monitoring/server/lib/alerts/fetch_cluster_state.ts b/x-pack/plugins/monitoring/server/lib/alerts/fetch_cluster_state.ts new file mode 100644 index 000000000000..66ea30d5f2e9 --- /dev/null +++ b/x-pack/plugins/monitoring/server/lib/alerts/fetch_cluster_state.ts @@ -0,0 +1,53 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ +import { get } from 'lodash'; +import { AlertCommonCluster, AlertClusterState } from '../../alerts/types'; + +export async function fetchClusterState( + callCluster: any, + clusters: AlertCommonCluster[], + index: string +): Promise { + const params = { + index, + filterPath: ['hits.hits._source.cluster_state.status', 'hits.hits._source.cluster_uuid'], + body: { + size: 1, + sort: [{ timestamp: { order: 'desc' } }], + query: { + bool: { + filter: [ + { + terms: { + cluster_uuid: clusters.map(cluster => cluster.clusterUuid), + }, + }, + { + term: { + type: 'cluster_stats', + }, + }, + { + range: { + timestamp: { + gte: 'now-2m', + }, + }, + }, + ], + }, + }, + }, + }; + + const response = await callCluster('search', params); + return get(response, 'hits.hits', []).map((hit: any) => { + return { + state: get(hit, '_source.cluster_state.status'), + clusterUuid: get(hit, '_source.cluster_uuid'), + }; + }); +} diff --git a/x-pack/plugins/monitoring/server/lib/alerts/fetch_clusters.test.ts b/x-pack/plugins/monitoring/server/lib/alerts/fetch_clusters.test.ts index 78eb9773df15..7a9b61f37707 100644 --- a/x-pack/plugins/monitoring/server/lib/alerts/fetch_clusters.test.ts +++ b/x-pack/plugins/monitoring/server/lib/alerts/fetch_clusters.test.ts @@ -6,21 +6,51 @@ import { fetchClusters } from './fetch_clusters'; describe('fetchClusters', () => { + const clusterUuid = '1sdfds734'; + const clusterName = 'monitoring'; + it('return a list of clusters', async () => { const callCluster = jest.fn().mockImplementation(() => ({ - aggregations: { - clusters: { - buckets: [ - { - key: 'clusterA', + hits: { + hits: [ + { + _source: { + cluster_uuid: clusterUuid, + cluster_name: clusterName, }, - ], - }, + }, + ], }, })); const index = '.monitoring-es-*'; const result = await fetchClusters(callCluster, index); - expect(result).toEqual([{ clusterUuid: 'clusterA' }]); + expect(result).toEqual([{ clusterUuid, clusterName }]); + }); + + it('return the metadata name if available', async () => { + const metadataName = 'custom-monitoring'; + const callCluster = jest.fn().mockImplementation(() => ({ + hits: { + hits: [ + { + _source: { + cluster_uuid: clusterUuid, + cluster_name: clusterName, + cluster_settings: { + cluster: { + metadata: { + display_name: metadataName, + }, + }, + }, + }, + }, + ], + }, + })); + const index = '.monitoring-es-*'; + const result = await fetchClusters(callCluster, index); + expect(result).toEqual([{ clusterUuid, clusterName: metadataName }]); }); it('should limit the time period in the query', async () => { diff --git a/x-pack/plugins/monitoring/server/lib/alerts/fetch_clusters.ts b/x-pack/plugins/monitoring/server/lib/alerts/fetch_clusters.ts index 8ef7339618a2..d1513ac16fb1 100644 --- a/x-pack/plugins/monitoring/server/lib/alerts/fetch_clusters.ts +++ b/x-pack/plugins/monitoring/server/lib/alerts/fetch_clusters.ts @@ -4,18 +4,21 @@ * you may not use this file except in compliance with the Elastic License. */ import { get } from 'lodash'; -import { AlertCluster } from '../../alerts/types'; +import { AlertCommonCluster } from '../../alerts/types'; -interface AggregationResult { - key: string; -} - -export async function fetchClusters(callCluster: any, index: string): Promise { +export async function fetchClusters( + callCluster: any, + index: string +): Promise { const params = { index, - filterPath: 'aggregations.clusters.buckets', + filterPath: [ + 'hits.hits._source.cluster_settings.cluster.metadata.display_name', + 'hits.hits._source.cluster_uuid', + 'hits.hits._source.cluster_name', + ], body: { - size: 0, + size: 1000, query: { bool: { filter: [ @@ -34,19 +37,21 @@ export async function fetchClusters(callCluster: any, index: string): Promise ({ - clusterUuid: bucket.key, - })); + return get(response, 'hits.hits', []).map((hit: any) => { + const clusterName: string = + get(hit, '_source.cluster_settings.cluster.metadata.display_name') || + get(hit, '_source.cluster_name') || + get(hit, '_source.cluster_uuid'); + return { + clusterUuid: get(hit, '_source.cluster_uuid'), + clusterName, + }; + }); } diff --git a/x-pack/plugins/monitoring/server/lib/alerts/fetch_licenses.test.ts b/x-pack/plugins/monitoring/server/lib/alerts/fetch_licenses.test.ts index dd6c074e68b1..9dcb4ffb82a5 100644 --- a/x-pack/plugins/monitoring/server/lib/alerts/fetch_licenses.test.ts +++ b/x-pack/plugins/monitoring/server/lib/alerts/fetch_licenses.test.ts @@ -6,28 +6,28 @@ import { fetchLicenses } from './fetch_licenses'; describe('fetchLicenses', () => { + const clusterName = 'MyCluster'; + const clusterUuid = 'clusterA'; + const license = { + status: 'active', + expiry_date_in_millis: 1579532493876, + type: 'basic', + }; + it('return a list of licenses', async () => { - const clusterName = 'MyCluster'; - const clusterUuid = 'clusterA'; - const license = { - status: 'active', - expiry_date_in_millis: 1579532493876, - type: 'basic', - }; const callCluster = jest.fn().mockImplementation(() => ({ hits: { hits: [ { _source: { license, - cluster_name: clusterName, cluster_uuid: clusterUuid, }, }, ], }, })); - const clusters = [{ clusterUuid }]; + const clusters = [{ clusterUuid, clusterName }]; const index = '.monitoring-es-*'; const result = await fetchLicenses(callCluster, clusters, index); expect(result).toEqual([ @@ -36,15 +36,13 @@ describe('fetchLicenses', () => { type: license.type, expiryDateMS: license.expiry_date_in_millis, clusterUuid, - clusterName, }, ]); }); it('should only search for the clusters provided', async () => { - const clusterUuid = 'clusterA'; const callCluster = jest.fn(); - const clusters = [{ clusterUuid }]; + const clusters = [{ clusterUuid, clusterName }]; const index = '.monitoring-es-*'; await fetchLicenses(callCluster, clusters, index); const params = callCluster.mock.calls[0][1]; @@ -52,54 +50,11 @@ describe('fetchLicenses', () => { }); it('should limit the time period in the query', async () => { - const clusterUuid = 'clusterA'; const callCluster = jest.fn(); - const clusters = [{ clusterUuid }]; + const clusters = [{ clusterUuid, clusterName }]; const index = '.monitoring-es-*'; await fetchLicenses(callCluster, clusters, index); const params = callCluster.mock.calls[0][1]; expect(params.body.query.bool.filter[2].range.timestamp.gte).toBe('now-2m'); }); - - it('should give priority to the metadata name', async () => { - const clusterName = 'MyCluster'; - const clusterUuid = 'clusterA'; - const license = { - status: 'active', - expiry_date_in_millis: 1579532493876, - type: 'basic', - }; - const callCluster = jest.fn().mockImplementation(() => ({ - hits: { - hits: [ - { - _source: { - license, - cluster_name: 'fakeName', - cluster_uuid: clusterUuid, - cluster_settings: { - cluster: { - metadata: { - display_name: clusterName, - }, - }, - }, - }, - }, - ], - }, - })); - const clusters = [{ clusterUuid }]; - const index = '.monitoring-es-*'; - const result = await fetchLicenses(callCluster, clusters, index); - expect(result).toEqual([ - { - status: license.status, - type: license.type, - expiryDateMS: license.expiry_date_in_millis, - clusterUuid, - clusterName, - }, - ]); - }); }); diff --git a/x-pack/plugins/monitoring/server/lib/alerts/fetch_licenses.ts b/x-pack/plugins/monitoring/server/lib/alerts/fetch_licenses.ts index 31a68e8aa9c3..5b05c907e796 100644 --- a/x-pack/plugins/monitoring/server/lib/alerts/fetch_licenses.ts +++ b/x-pack/plugins/monitoring/server/lib/alerts/fetch_licenses.ts @@ -4,21 +4,16 @@ * you may not use this file except in compliance with the Elastic License. */ import { get } from 'lodash'; -import { AlertLicense, AlertCluster } from '../../alerts/types'; +import { AlertLicense, AlertCommonCluster } from '../../alerts/types'; export async function fetchLicenses( callCluster: any, - clusters: AlertCluster[], + clusters: AlertCommonCluster[], index: string ): Promise { const params = { index, - filterPath: [ - 'hits.hits._source.license.*', - 'hits.hits._source.cluster_settings.cluster.metadata.display_name', - 'hits.hits._source.cluster_uuid', - 'hits.hits._source.cluster_name', - ], + filterPath: ['hits.hits._source.license.*', 'hits.hits._source.cluster_uuid'], body: { size: 1, sort: [{ timestamp: { order: 'desc' } }], @@ -50,17 +45,12 @@ export async function fetchLicenses( const response = await callCluster('search', params); return get(response, 'hits.hits', []).map((hit: any) => { - const clusterName: string = - get(hit, '_source.cluster_settings.cluster.metadata.display_name') || - get(hit, '_source.cluster_name') || - get(hit, '_source.cluster_uuid'); const rawLicense: any = get(hit, '_source.license', {}); const license: AlertLicense = { status: rawLicense.status, type: rawLicense.type, expiryDateMS: rawLicense.expiry_date_in_millis, clusterUuid: get(hit, '_source.cluster_uuid'), - clusterName, }; return license; }); diff --git a/x-pack/plugins/monitoring/server/lib/alerts/fetch_status.test.ts b/x-pack/plugins/monitoring/server/lib/alerts/fetch_status.test.ts new file mode 100644 index 000000000000..a3bcb61afacd --- /dev/null +++ b/x-pack/plugins/monitoring/server/lib/alerts/fetch_status.test.ts @@ -0,0 +1,122 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { fetchStatus } from './fetch_status'; +import { AlertCommonPerClusterState } from '../../alerts/types'; + +describe('fetchStatus', () => { + const alertType = 'monitoringTest'; + const log = { warn: jest.fn() }; + const start = 0; + const end = 0; + const id = 1; + const defaultUiState = { + isFiring: false, + severity: 0, + message: null, + resolvedMS: 0, + lastCheckedMS: 0, + triggeredMS: 0, + }; + const alertsClient = { + find: jest.fn(() => ({ + total: 1, + data: [ + { + id, + }, + ], + })), + getAlertState: jest.fn(() => ({ + alertTypeState: { + state: { + ui: defaultUiState, + } as AlertCommonPerClusterState, + }, + })), + }; + + afterEach(() => { + (alertsClient.find as jest.Mock).mockClear(); + (alertsClient.getAlertState as jest.Mock).mockClear(); + }); + + it('should fetch from the alerts client', async () => { + const status = await fetchStatus(alertsClient as any, [alertType], start, end, log as any); + expect(status).toEqual([]); + }); + + it('should return alerts that are firing', async () => { + alertsClient.getAlertState = jest.fn(() => ({ + alertTypeState: { + state: { + ui: { + ...defaultUiState, + isFiring: true, + }, + } as AlertCommonPerClusterState, + }, + })); + + const status = await fetchStatus(alertsClient as any, [alertType], start, end, log as any); + expect(status.length).toBe(1); + expect(status[0].type).toBe(alertType); + expect(status[0].isFiring).toBe(true); + }); + + it('should return alerts that have been resolved in the time period', async () => { + alertsClient.getAlertState = jest.fn(() => ({ + alertTypeState: { + state: { + ui: { + ...defaultUiState, + resolvedMS: 1500, + }, + } as AlertCommonPerClusterState, + }, + })); + + const customStart = 1000; + const customEnd = 2000; + + const status = await fetchStatus( + alertsClient as any, + [alertType], + customStart, + customEnd, + log as any + ); + expect(status.length).toBe(1); + expect(status[0].type).toBe(alertType); + expect(status[0].isFiring).toBe(false); + }); + + it('should pass in the right filter to the alerts client', async () => { + await fetchStatus(alertsClient as any, [alertType], start, end, log as any); + expect((alertsClient.find as jest.Mock).mock.calls[0][0].options.filter).toBe( + `alert.attributes.alertTypeId:${alertType}` + ); + }); + + it('should return nothing if no alert state is found', async () => { + alertsClient.getAlertState = jest.fn(() => ({ + alertTypeState: null, + })) as any; + + const status = await fetchStatus(alertsClient as any, [alertType], start, end, log as any); + expect(status).toEqual([]); + }); + + it('should return nothing if no alerts are found', async () => { + alertsClient.find = jest.fn(() => ({ + total: 0, + data: [], + })) as any; + + const status = await fetchStatus(alertsClient as any, [alertType], start, end, log as any); + expect(status).toEqual([]); + }); +}); diff --git a/x-pack/plugins/monitoring/server/lib/alerts/fetch_status.ts b/x-pack/plugins/monitoring/server/lib/alerts/fetch_status.ts index 9f7c1d5a994d..bf6ee965d3b2 100644 --- a/x-pack/plugins/monitoring/server/lib/alerts/fetch_status.ts +++ b/x-pack/plugins/monitoring/server/lib/alerts/fetch_status.ts @@ -4,81 +4,53 @@ * you may not use this file except in compliance with the Elastic License. */ import moment from 'moment'; -import { get } from 'lodash'; -import { AlertClusterState } from '../../alerts/types'; -import { ALERT_TYPES, LOGGING_TAG } from '../../../common/constants'; +import { Logger } from '../../../../../../src/core/server'; +import { AlertCommonPerClusterState } from '../../alerts/types'; +import { AlertsClient } from '../../../../alerting/server'; export async function fetchStatus( - callCluster: any, + alertsClient: AlertsClient, + alertTypes: string[], start: number, end: number, - clusterUuid: string, - server: any + log: Logger ): Promise { - // TODO: this shouldn't query task manager directly but rather - // use an api exposed by the alerting/actions plugin - // See https://github.com/elastic/kibana/issues/48442 const statuses = await Promise.all( - ALERT_TYPES.map( + alertTypes.map( type => new Promise(async (resolve, reject) => { - try { - const params = { - index: '.kibana_task_manager', - filterPath: ['hits.hits._source.task.state'], - body: { - size: 1, - sort: [{ updated_at: { order: 'desc' } }], - query: { - bool: { - filter: [ - { - term: { - 'task.taskType': `alerting:${type}`, - }, - }, - ], - }, - }, - }, - }; - - const response = await callCluster('search', params); - const state = get(response, 'hits.hits[0]._source.task.state', '{}'); - const clusterState: AlertClusterState = get( - JSON.parse(state), - `alertTypeState.${clusterUuid}`, - { - expiredCheckDateMS: 0, - ui: { - isFiring: false, - message: null, - severity: 0, - resolvedMS: 0, - expirationTime: 0, - }, - } - ); - const isInBetween = moment(clusterState.ui.resolvedMS).isBetween(start, end); - if (clusterState.ui.isFiring || isInBetween) { - return resolve({ - type, - ...clusterState.ui, - }); - } - return resolve(false); - } catch (err) { - const reason = get(err, 'body.error.type'); - if (reason === 'index_not_found_exception') { - server.log( - ['error', LOGGING_TAG], - `Unable to fetch alerts. Alerts depends on task manager, which has not been started yet.` - ); - } else { - server.log(['error', LOGGING_TAG], err.message); - } + // We need to get the id from the alertTypeId + const alerts = await alertsClient.find({ + options: { + filter: `alert.attributes.alertTypeId:${type}`, + }, + }); + if (alerts.total === 0) { return resolve(false); } + + if (alerts.total !== 1) { + log.warn(`Found more than one alert for type ${type} which is unexpected.`); + } + + const id = alerts.data[0].id; + + // Now that we have the id, we can get the state + const states = await alertsClient.getAlertState({ id }); + if (!states || !states.alertTypeState) { + log.warn(`No alert states found for type ${type} which is unexpected.`); + return resolve(false); + } + + const state = Object.values(states.alertTypeState)[0] as AlertCommonPerClusterState; + const isInBetween = moment(state.ui.resolvedMS).isBetween(start, end); + if (state.ui.isFiring || isInBetween) { + return resolve({ + type, + ...state.ui, + }); + } + return resolve(false); }) ) ); diff --git a/x-pack/plugins/monitoring/server/lib/alerts/get_prepared_alert.test.ts b/x-pack/plugins/monitoring/server/lib/alerts/get_prepared_alert.test.ts new file mode 100644 index 000000000000..1840a2026a75 --- /dev/null +++ b/x-pack/plugins/monitoring/server/lib/alerts/get_prepared_alert.test.ts @@ -0,0 +1,163 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { getPreparedAlert } from './get_prepared_alert'; +import { fetchClusters } from './fetch_clusters'; +import { fetchDefaultEmailAddress } from './fetch_default_email_address'; + +jest.mock('./fetch_clusters', () => ({ + fetchClusters: jest.fn(), +})); + +jest.mock('./fetch_default_email_address', () => ({ + fetchDefaultEmailAddress: jest.fn(), +})); + +describe('getPreparedAlert', () => { + const uiSettings = { get: jest.fn() }; + const alertType = 'test'; + const getUiSettingsService = async () => ({ + asScopedToClient: () => uiSettings, + }); + const monitoringCluster = null; + const logger = { warn: jest.fn() }; + const ccsEnabled = false; + const services = { + callCluster: jest.fn(), + savedObjectsClient: null, + }; + const emailAddress = 'foo@foo.com'; + const data = [{ foo: 1 }]; + const dataFetcher = () => data; + const clusterName = 'MonitoringCluster'; + const clusterUuid = 'sdf34sdf'; + const clusters = [{ clusterName, clusterUuid }]; + + afterEach(() => { + (uiSettings.get as jest.Mock).mockClear(); + (services.callCluster as jest.Mock).mockClear(); + (fetchClusters as jest.Mock).mockClear(); + (fetchDefaultEmailAddress as jest.Mock).mockClear(); + }); + + beforeEach(() => { + (fetchClusters as jest.Mock).mockImplementation(() => clusters); + (fetchDefaultEmailAddress as jest.Mock).mockImplementation(() => emailAddress); + }); + + it('should return fields as expected', async () => { + (uiSettings.get as jest.Mock).mockImplementation(() => { + return emailAddress; + }); + + const alert = await getPreparedAlert( + alertType, + getUiSettingsService as any, + monitoringCluster as any, + logger as any, + ccsEnabled, + services as any, + dataFetcher as any + ); + + expect(alert && alert.emailAddress).toBe(emailAddress); + expect(alert && alert.data).toBe(data); + }); + + it('should add ccs if specified', async () => { + const ccsClusterName = 'remoteCluster'; + (services.callCluster as jest.Mock).mockImplementation(() => { + return { + [ccsClusterName]: { + connected: true, + }, + }; + }); + + await getPreparedAlert( + alertType, + getUiSettingsService as any, + monitoringCluster as any, + logger as any, + true, + services as any, + dataFetcher as any + ); + + expect((fetchClusters as jest.Mock).mock.calls[0][1].includes(ccsClusterName)).toBe(true); + }); + + it('should ignore ccs if no remote clusters are available', async () => { + const ccsClusterName = 'remoteCluster'; + (services.callCluster as jest.Mock).mockImplementation(() => { + return { + [ccsClusterName]: { + connected: false, + }, + }; + }); + + await getPreparedAlert( + alertType, + getUiSettingsService as any, + monitoringCluster as any, + logger as any, + true, + services as any, + dataFetcher as any + ); + + expect((fetchClusters as jest.Mock).mock.calls[0][1].includes(ccsClusterName)).toBe(false); + }); + + it('should pass in the clusters into the data fetcher', async () => { + const customDataFetcher = jest.fn(() => data); + + await getPreparedAlert( + alertType, + getUiSettingsService as any, + monitoringCluster as any, + logger as any, + true, + services as any, + customDataFetcher as any + ); + + expect((customDataFetcher as jest.Mock).mock.calls[0][1]).toBe(clusters); + }); + + it('should return nothing if the data fetcher returns nothing', async () => { + const customDataFetcher = jest.fn(() => []); + + const result = await getPreparedAlert( + alertType, + getUiSettingsService as any, + monitoringCluster as any, + logger as any, + true, + services as any, + customDataFetcher as any + ); + + expect(result).toBe(null); + }); + + it('should return nothing if there is no email address', async () => { + (fetchDefaultEmailAddress as jest.Mock).mockImplementation(() => null); + + const result = await getPreparedAlert( + alertType, + getUiSettingsService as any, + monitoringCluster as any, + logger as any, + true, + services as any, + dataFetcher as any + ); + + expect(result).toBe(null); + }); +}); diff --git a/x-pack/plugins/monitoring/server/lib/alerts/get_prepared_alert.ts b/x-pack/plugins/monitoring/server/lib/alerts/get_prepared_alert.ts new file mode 100644 index 000000000000..83a9e26e4c58 --- /dev/null +++ b/x-pack/plugins/monitoring/server/lib/alerts/get_prepared_alert.ts @@ -0,0 +1,87 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { Logger, ICustomClusterClient, UiSettingsServiceStart } from 'kibana/server'; +import { CallCluster } from 'src/legacy/core_plugins/elasticsearch'; +import { AlertServices } from '../../../../alerting/server'; +import { AlertCommonCluster } from '../../alerts/types'; +import { INDEX_PATTERN_ELASTICSEARCH } from '../../../common/constants'; +import { fetchAvailableCcs } from './fetch_available_ccs'; +import { getCcsIndexPattern } from './get_ccs_index_pattern'; +import { fetchClusters } from './fetch_clusters'; +import { fetchDefaultEmailAddress } from './fetch_default_email_address'; + +export interface PreparedAlert { + emailAddress: string; + clusters: AlertCommonCluster[]; + data: any[]; + timezone: string; + dateFormat: string; +} + +async function getCallCluster( + monitoringCluster: ICustomClusterClient, + services: Pick +): Promise { + if (!monitoringCluster) { + return services.callCluster; + } + + return monitoringCluster.callAsInternalUser; +} + +export async function getPreparedAlert( + alertType: string, + getUiSettingsService: () => Promise, + monitoringCluster: ICustomClusterClient, + logger: Logger, + ccsEnabled: boolean, + services: Pick, + dataFetcher: ( + callCluster: CallCluster, + clusters: AlertCommonCluster[], + esIndexPattern: string + ) => Promise +): Promise { + const callCluster = await getCallCluster(monitoringCluster, services); + + // Support CCS use cases by querying to find available remote clusters + // and then adding those to the index pattern we are searching against + let esIndexPattern = INDEX_PATTERN_ELASTICSEARCH; + if (ccsEnabled) { + const availableCcs = await fetchAvailableCcs(callCluster); + if (availableCcs.length > 0) { + esIndexPattern = getCcsIndexPattern(esIndexPattern, availableCcs); + } + } + + const clusters = await fetchClusters(callCluster, esIndexPattern); + + // Fetch the specific data + const data = await dataFetcher(callCluster, clusters, esIndexPattern); + if (data.length === 0) { + logger.warn(`No data found for ${alertType}.`); + return null; + } + + const uiSettings = (await getUiSettingsService()).asScopedToClient(services.savedObjectsClient); + const dateFormat: string = await uiSettings.get('dateFormat'); + const timezone: string = await uiSettings.get('dateFormat:tz'); + const emailAddress = await fetchDefaultEmailAddress(uiSettings); + if (!emailAddress) { + // TODO: we can do more here + logger.warn(`Unable to send email for ${alertType} because there is no email configured.`); + return null; + } + + return { + emailAddress, + data, + clusters, + dateFormat, + timezone, + }; +} diff --git a/x-pack/plugins/monitoring/server/lib/alerts/license_expiration.lib.test.ts b/x-pack/plugins/monitoring/server/lib/alerts/license_expiration.lib.test.ts index 1a2eb1e44be8..b99208bdde2c 100644 --- a/x-pack/plugins/monitoring/server/lib/alerts/license_expiration.lib.test.ts +++ b/x-pack/plugins/monitoring/server/lib/alerts/license_expiration.lib.test.ts @@ -39,17 +39,26 @@ describe('licenseExpiration lib', () => { }); describe('getUiMessage', () => { - const timezone = 'Europe/London'; - const license: any = { expiryDateMS: moment.tz('2020-01-20 08:00:00', timezone).utc() }; - it('should return a message when firing', () => { - const message = getUiMessage(license, timezone, false); - expect(message).toBe(`This cluster's license is going to expire in #relative at #absolute.`); + const message = getUiMessage(false); + expect(message.text).toBe( + `This cluster's license is going to expire in #relative at #absolute. #start_linkPlease update your license.#end_link` + ); + // LOL How do I avoid this in TS???? + if (!message.tokens) { + return expect(false).toBe(true); + } + expect(message.tokens.length).toBe(3); + expect(message.tokens[0].startToken).toBe('#relative'); + expect(message.tokens[1].startToken).toBe('#absolute'); + expect(message.tokens[2].startToken).toBe('#start_link'); + expect(message.tokens[2].endToken).toBe('#end_link'); }); it('should return a message when resolved', () => { - const message = getUiMessage(license, timezone, true); - expect(message).toBe(`This cluster's license is active.`); + const message = getUiMessage(true); + expect(message.text).toBe(`This cluster's license is active.`); + expect(message.tokens).not.toBeDefined(); }); }); }); diff --git a/x-pack/plugins/monitoring/server/lib/alerts/license_expiration.lib.ts b/x-pack/plugins/monitoring/server/lib/alerts/license_expiration.lib.ts index 41b68d69bbd2..cfe9f02b9bd6 100644 --- a/x-pack/plugins/monitoring/server/lib/alerts/license_expiration.lib.ts +++ b/x-pack/plugins/monitoring/server/lib/alerts/license_expiration.lib.ts @@ -6,7 +6,13 @@ import { Moment } from 'moment-timezone'; import { i18n } from '@kbn/i18n'; import { AlertInstance } from '../../../../alerting/server'; -import { AlertLicense } from '../../alerts/types'; +import { + AlertCommonPerClusterMessageLinkToken, + AlertCommonPerClusterMessageTimeToken, + AlertCommonCluster, + AlertCommonPerClusterMessage, +} from '../../alerts/types'; +import { AlertCommonPerClusterMessageTokenType } from '../../alerts/enums'; const RESOLVED_SUBJECT = i18n.translate( 'xpack.monitoring.alerts.licenseExpiration.resolvedSubject', @@ -21,7 +27,7 @@ const NEW_SUBJECT = i18n.translate('xpack.monitoring.alerts.licenseExpiration.ne export function executeActions( instance: AlertInstance, - license: AlertLicense, + cluster: AlertCommonCluster, $expiry: Moment, dateFormat: string, emailAddress: string, @@ -31,14 +37,14 @@ export function executeActions( instance.scheduleActions('default', { subject: RESOLVED_SUBJECT, message: `This cluster alert has been resolved: Cluster '${ - license.clusterName + cluster.clusterName }' license was going to expire on ${$expiry.format(dateFormat)}.`, to: emailAddress, }); } else { instance.scheduleActions('default', { subject: NEW_SUBJECT, - message: `Cluster '${license.clusterName}' license is going to expire on ${$expiry.format( + message: `Cluster '${cluster.clusterName}' license is going to expire on ${$expiry.format( dateFormat )}. Please update your license.`, to: emailAddress, @@ -46,13 +52,37 @@ export function executeActions( } } -export function getUiMessage(license: AlertLicense, timezone: string, resolved: boolean = false) { +export function getUiMessage(resolved: boolean = false): AlertCommonPerClusterMessage { if (resolved) { - return i18n.translate('xpack.monitoring.alerts.licenseExpiration.ui.resolvedMessage', { - defaultMessage: `This cluster's license is active.`, - }); + return { + text: i18n.translate('xpack.monitoring.alerts.licenseExpiration.ui.resolvedMessage', { + defaultMessage: `This cluster's license is active.`, + }), + }; } - return i18n.translate('xpack.monitoring.alerts.licenseExpiration.ui.firingMessage', { - defaultMessage: `This cluster's license is going to expire in #relative at #absolute.`, - }); + return { + text: i18n.translate('xpack.monitoring.alerts.licenseExpiration.ui.firingMessage', { + defaultMessage: `This cluster's license is going to expire in #relative at #absolute. #start_linkPlease update your license.#end_link`, + }), + tokens: [ + { + startToken: '#relative', + type: AlertCommonPerClusterMessageTokenType.Time, + isRelative: true, + isAbsolute: false, + } as AlertCommonPerClusterMessageTimeToken, + { + startToken: '#absolute', + type: AlertCommonPerClusterMessageTokenType.Time, + isAbsolute: true, + isRelative: false, + } as AlertCommonPerClusterMessageTimeToken, + { + startToken: '#start_link', + endToken: '#end_link', + type: AlertCommonPerClusterMessageTokenType.Link, + url: 'license', + } as AlertCommonPerClusterMessageLinkToken, + ], + }; } diff --git a/x-pack/plugins/monitoring/server/lib/cluster/get_clusters_from_request.js b/x-pack/plugins/monitoring/server/lib/cluster/get_clusters_from_request.js index c5091c36c3bb..1bddede52207 100644 --- a/x-pack/plugins/monitoring/server/lib/cluster/get_clusters_from_request.js +++ b/x-pack/plugins/monitoring/server/lib/cluster/get_clusters_from_request.js @@ -29,6 +29,7 @@ import { CODE_PATH_BEATS, CODE_PATH_APM, KIBANA_ALERTING_ENABLED, + ALERT_TYPES, } from '../../../common/constants'; import { getApmsForClusters } from '../apm/get_apms_for_clusters'; import { i18n } from '@kbn/i18n'; @@ -102,15 +103,8 @@ export async function getClustersFromRequest( if (isInCodePath(codePaths, [CODE_PATH_ALERTS])) { if (KIBANA_ALERTING_ENABLED) { - const { callWithRequest } = req.server.plugins.elasticsearch.getCluster('monitoring'); - const callCluster = (...args) => callWithRequest(req, ...args); - cluster.alerts = await fetchStatus( - callCluster, - start, - end, - cluster.cluster_uuid, - req.server - ); + const alertsClient = req.getAlertsClient ? req.getAlertsClient() : null; + cluster.alerts = await fetchStatus(alertsClient, ALERT_TYPES, start, end, req.logger); } else { cluster.alerts = await alertsClusterSearch( req, diff --git a/x-pack/plugins/monitoring/server/plugin.ts b/x-pack/plugins/monitoring/server/plugin.ts index 24d8bcaa4397..784226dca66f 100644 --- a/x-pack/plugins/monitoring/server/plugin.ts +++ b/x-pack/plugins/monitoring/server/plugin.ts @@ -47,6 +47,7 @@ import { PluginSetupContract as AlertingPluginSetupContract, } from '../../alerting/server'; import { getLicenseExpiration } from './alerts/license_expiration'; +import { getClusterState } from './alerts/cluster_state'; import { InfraPluginSetup } from '../../infra/server'; export interface LegacyAPI { @@ -154,6 +155,17 @@ export class Plugin { config.ui.ccs.enabled ) ); + plugins.alerting.registerType( + getClusterState( + async () => { + const coreStart = (await core.getStartServices())[0]; + return coreStart.uiSettings; + }, + cluster, + this.getLogger, + config.ui.ccs.enabled + ) + ); } // Initialize telemetry diff --git a/x-pack/plugins/monitoring/server/routes/api/v1/alerts/alerts.js b/x-pack/plugins/monitoring/server/routes/api/v1/alerts/alerts.js index 56922bd8e87e..d5a43d32f600 100644 --- a/x-pack/plugins/monitoring/server/routes/api/v1/alerts/alerts.js +++ b/x-pack/plugins/monitoring/server/routes/api/v1/alerts/alerts.js @@ -8,8 +8,12 @@ import { schema } from '@kbn/config-schema'; import { isFunction } from 'lodash'; import { ALERT_TYPE_LICENSE_EXPIRATION, + ALERT_TYPE_CLUSTER_STATE, MONITORING_CONFIG_ALERTING_EMAIL_ADDRESS, + ALERT_TYPES, } from '../../../../../common/constants'; +import { handleError } from '../../../../lib/errors'; +import { fetchStatus } from '../../../../lib/alerts/fetch_status'; async function createAlerts(req, alertsClient, { selectedEmailActionId }) { const createdAlerts = []; @@ -17,7 +21,21 @@ async function createAlerts(req, alertsClient, { selectedEmailActionId }) { // Create alerts const ALERT_TYPES = { [ALERT_TYPE_LICENSE_EXPIRATION]: { - schedule: { interval: '10s' }, + schedule: { interval: '1m' }, + actions: [ + { + group: 'default', + id: selectedEmailActionId, + params: { + subject: '{{context.subject}}', + message: `{{context.message}}`, + to: ['{{context.to}}'], + }, + }, + ], + }, + [ALERT_TYPE_CLUSTER_STATE]: { + schedule: { interval: '1m' }, actions: [ { group: 'default', @@ -86,4 +104,37 @@ export function createKibanaAlertsRoute(server) { return { alerts, emailResponse }; }, }); + + server.route({ + method: 'POST', + path: '/api/monitoring/v1/alert_status', + config: { + validate: { + payload: schema.object({ + timeRange: schema.object({ + min: schema.string(), + max: schema.string(), + }), + }), + }, + }, + async handler(req, headers) { + const alertsClient = isFunction(req.getAlertsClient) ? req.getAlertsClient() : null; + if (!alertsClient) { + return headers.response().code(404); + } + + const start = req.payload.timeRange.min; + const end = req.payload.timeRange.max; + let alerts; + + try { + alerts = await fetchStatus(alertsClient, ALERT_TYPES, start, end, req.logger); + } catch (err) { + throw handleError(err, req); + } + + return { alerts }; + }, + }); } From 879dadff31f7b44f61334ce952b00f450764e41c Mon Sep 17 00:00:00 2001 From: Zacqary Adam Xeper Date: Tue, 7 Apr 2020 12:55:42 -0500 Subject: [PATCH 05/36] [Metrics Alerts] Dynamically fetch index pattern (#62708) * Fetch index pattern dynamically from alert executor * Fix fetching of non-default pattern --- .../alerting/metrics/expression.tsx | 79 +++++++++---------- .../alerting/metrics/validation.tsx | 5 +- .../metric_threshold_executor.test.ts | 22 +++++- .../metric_threshold_executor.ts | 41 ++++++++-- .../register_metric_threshold_alert_type.ts | 2 +- .../alerting/metric_threshold/test_mocks.ts | 19 +++++ .../lib/alerting/metric_threshold/types.ts | 2 +- .../infra/server/lib/sources/sources.ts | 2 +- 8 files changed, 117 insertions(+), 55 deletions(-) diff --git a/x-pack/plugins/infra/public/components/alerting/metrics/expression.tsx b/x-pack/plugins/infra/public/components/alerting/metrics/expression.tsx index cd3ba43c3607..0903787dd05c 100644 --- a/x-pack/plugins/infra/public/components/alerting/metrics/expression.tsx +++ b/x-pack/plugins/infra/public/components/alerting/metrics/expression.tsx @@ -17,6 +17,11 @@ import { import { IFieldType } from 'src/plugins/data/public'; import { FormattedMessage } from '@kbn/i18n/react'; import { i18n } from '@kbn/i18n'; +import { + MetricExpressionParams, + Comparator, + // eslint-disable-next-line @kbn/eslint/no-restricted-paths +} from '../../../../server/lib/alerting/metric_threshold/types'; import { euiStyled } from '../../../../../observability/public'; import { WhenExpression, @@ -36,16 +41,6 @@ import { MetricsExplorerSeries } from '../../../../common/http_api/metrics_explo import { useSource } from '../../../containers/source'; import { MetricsExplorerGroupBy } from '../../metrics_explorer/group_by'; -export interface MetricExpression { - aggType?: string; - metric?: string; - comparator?: Comparator; - threshold?: number[]; - timeSize?: number; - timeUnit?: TimeUnit; - indexPattern?: string; -} - interface AlertContextMeta { currentOptions?: Partial; series?: MetricsExplorerSeries; @@ -57,14 +52,35 @@ interface Props { criteria: MetricExpression[]; groupBy?: string; filterQuery?: string; + sourceId?: string; }; alertsContext: AlertsContextValue; setAlertParams(key: string, value: any): void; setAlertProperty(key: string, value: any): void; } -type Comparator = '>' | '>=' | 'between' | '<' | '<='; type TimeUnit = 's' | 'm' | 'h' | 'd'; +type MetricExpression = Omit & { + metric?: string; +}; + +enum AGGREGATION_TYPES { + COUNT = 'count', + AVERAGE = 'avg', + SUM = 'sum', + MIN = 'min', + MAX = 'max', + RATE = 'rate', + CARDINALITY = 'cardinality', +} + +const defaultExpression = { + aggType: AGGREGATION_TYPES.AVERAGE, + comparator: Comparator.GT, + threshold: [], + timeSize: 1, + timeUnit: 'm', +} as MetricExpression; export const Expressions: React.FC = props => { const { setAlertParams, alertParams, errors, alertsContext } = props; @@ -87,18 +103,6 @@ export const Expressions: React.FC = props => { } }, [alertsContext.metadata]); - const defaultExpression = useMemo( - () => ({ - aggType: AGGREGATION_TYPES.AVERAGE, - comparator: '>', - threshold: [], - timeSize: 1, - timeUnit: 'm', - indexPattern: source?.configuration.metricAlias, - }), - [source] - ); - const updateParams = useCallback( (id, e: MetricExpression) => { const exp = alertParams.criteria ? alertParams.criteria.slice() : []; @@ -112,7 +116,7 @@ export const Expressions: React.FC = props => { const exp = alertParams.criteria.slice(); exp.push(defaultExpression); setAlertParams('criteria', exp); - }, [setAlertParams, alertParams.criteria, defaultExpression]); + }, [setAlertParams, alertParams.criteria]); const removeExpression = useCallback( (id: number) => { @@ -179,11 +183,10 @@ export const Expressions: React.FC = props => { 'criteria', md.currentOptions.metrics.map(metric => ({ metric: metric.field, - comparator: '>', + comparator: Comparator.GT, threshold: [], timeSize, timeUnit, - indexPattern: source?.configuration.metricAlias, aggType: metric.aggregation, })) ); @@ -201,6 +204,7 @@ export const Expressions: React.FC = props => { setAlertParams('groupBy', md.currentOptions.groupBy); } + setAlertParams('sourceId', source?.id); } }, [alertsContext.metadata, defaultExpression, source]); // eslint-disable-line react-hooks/exhaustive-deps @@ -325,17 +329,22 @@ const StyledExpression = euiStyled.div` export const ExpressionRow: React.FC = props => { const { setAlertParams, expression, errors, expressionId, remove, fields, canDelete } = props; - const { aggType = AGGREGATION_TYPES.MAX, metric, comparator = '>', threshold = [] } = expression; + const { + aggType = AGGREGATION_TYPES.MAX, + metric, + comparator = Comparator.GT, + threshold = [], + } = expression; const updateAggType = useCallback( (at: string) => { - setAlertParams(expressionId, { ...expression, aggType: at }); + setAlertParams(expressionId, { ...expression, aggType: at as MetricExpression['aggType'] }); }, [expressionId, expression, setAlertParams] ); const updateMetric = useCallback( - (m?: string) => { + (m?: MetricExpression['metric']) => { setAlertParams(expressionId, { ...expression, metric: m }); }, [expressionId, expression, setAlertParams] @@ -384,7 +393,7 @@ export const ExpressionRow: React.FC = props => { )} '} + thresholdComparator={comparator || Comparator.GT} threshold={threshold} onChangeSelectedThresholdComparator={updateComparator} onChangeSelectedThreshold={updateThreshold} @@ -411,16 +420,6 @@ export const ExpressionRow: React.FC = props => { ); }; -enum AGGREGATION_TYPES { - COUNT = 'count', - AVERAGE = 'avg', - SUM = 'sum', - MIN = 'min', - MAX = 'max', - RATE = 'rate', - CARDINALITY = 'cardinality', -} - export const aggregationType: { [key: string]: any } = { avg: { text: i18n.translate('xpack.infra.metrics.alertFlyout.aggregationText.avg', { diff --git a/x-pack/plugins/infra/public/components/alerting/metrics/validation.tsx b/x-pack/plugins/infra/public/components/alerting/metrics/validation.tsx index 0f5b07f8c0e1..55365c3d4c2b 100644 --- a/x-pack/plugins/infra/public/components/alerting/metrics/validation.tsx +++ b/x-pack/plugins/infra/public/components/alerting/metrics/validation.tsx @@ -6,15 +6,14 @@ import { i18n } from '@kbn/i18n'; // eslint-disable-next-line @kbn/eslint/no-restricted-paths - -import { MetricExpression } from './expression'; +import { MetricExpressionParams } from '../../../../server/lib/alerting/metric_threshold/types'; // eslint-disable-next-line @kbn/eslint/no-restricted-paths import { ValidationResult } from '../../../../../triggers_actions_ui/public/types'; export function validateMetricThreshold({ criteria, }: { - criteria: MetricExpression[]; + criteria: MetricExpressionParams[]; }): ValidationResult { const validationResult = { errors: {} }; const errors: { diff --git a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/metric_threshold_executor.test.ts b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/metric_threshold_executor.test.ts index 09f170234954..38cd0cec145f 100644 --- a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/metric_threshold_executor.test.ts +++ b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/metric_threshold_executor.test.ts @@ -16,7 +16,8 @@ const executor = createMetricThresholdExecutor('test') as (opts: { const alertInstances = new Map(); const services = { - callCluster(_: string, { body }: any) { + callCluster(_: string, { body, index }: any) { + if (index === 'alternatebeat-*') return mocks.changedSourceIdResponse; const metric = body.query.bool.filter[1]?.exists.field; if (body.aggs.groupings) { if (body.aggs.groupings.composite.after) { @@ -55,6 +56,13 @@ const services = { }, }; }, + savedObjectsClient: { + get(_: string, sourceId: string) { + if (sourceId === 'alternate') + return { id: 'alternate', attributes: { metricAlias: 'alternatebeat-*' } }; + return { id: 'default', attributes: { metricAlias: 'metricbeat-*' } }; + }, + }, }; const baseCriterion = { @@ -62,15 +70,15 @@ const baseCriterion = { metric: 'test.metric.1', timeSize: 1, timeUnit: 'm', - indexPattern: 'metricbeat-*', }; describe('The metric threshold alert type', () => { describe('querying the entire infrastructure', () => { const instanceID = 'test-*'; - const execute = (comparator: Comparator, threshold: number[]) => + const execute = (comparator: Comparator, threshold: number[], sourceId: string = 'default') => executor({ services, params: { + sourceId, criteria: [ { ...baseCriterion, @@ -134,6 +142,14 @@ describe('The metric threshold alert type', () => { expect(mostRecentAction.action.thresholdOf.condition0).toStrictEqual([0.75]); expect(mostRecentAction.action.metricOf.condition0).toBe('test.metric.1'); }); + test('fetches the index pattern dynamically', async () => { + await execute(Comparator.LT, [17], 'alternate'); + expect(alertInstances.get(instanceID).mostRecentAction.id).toBe(FIRED_ACTIONS.id); + expect(alertInstances.get(instanceID).state.alertState).toBe(AlertStates.ALERT); + await execute(Comparator.LT, [1.5], 'alternate'); + expect(alertInstances.get(instanceID).mostRecentAction).toBe(undefined); + expect(alertInstances.get(instanceID).state.alertState).toBe(AlertStates.OK); + }); }); describe('querying with a groupBy parameter', () => { diff --git a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/metric_threshold_executor.ts b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/metric_threshold_executor.ts index 60bba61b75ef..c5ea65f7a4d1 100644 --- a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/metric_threshold_executor.ts +++ b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/metric_threshold_executor.ts @@ -5,6 +5,8 @@ */ import { mapValues } from 'lodash'; import { i18n } from '@kbn/i18n'; +import { convertSavedObjectToSavedSourceConfiguration } from '../../sources/sources'; +import { infraSourceConfigurationSavedObjectType } from '../../sources/saved_object_mappings'; import { InfraDatabaseSearchResponse } from '../../adapters/framework/adapter_types'; import { createAfterKeyHandler } from '../../../utils/create_afterkey_handler'; import { getAllCompositeData } from '../../../utils/get_all_composite_data'; @@ -15,6 +17,7 @@ import { getIntervalInSeconds } from '../../../utils/get_interval_in_seconds'; import { getDateHistogramOffset } from '../../snapshot/query_helpers'; const TOTAL_BUCKETS = 5; +const DEFAULT_INDEX_PATTERN = 'metricbeat-*'; interface Aggregation { aggregatedIntervals: { @@ -165,18 +168,42 @@ export const getElasticsearchMetricQuery = ( }; }; +const getIndexPattern: ( + services: AlertServices, + sourceId?: string +) => Promise = async function({ savedObjectsClient }, sourceId = 'default') { + try { + const sourceConfiguration = await savedObjectsClient.get( + infraSourceConfigurationSavedObjectType, + sourceId + ); + const { metricAlias } = convertSavedObjectToSavedSourceConfiguration( + sourceConfiguration + ).configuration; + return metricAlias || DEFAULT_INDEX_PATTERN; + } catch (e) { + if (e.output.statusCode === 404) { + return DEFAULT_INDEX_PATTERN; + } else { + throw e; + } + } +}; + const getMetric: ( services: AlertServices, params: MetricExpressionParams, + index: string, groupBy: string | undefined, filterQuery: string | undefined ) => Promise> = async function( - { callCluster }, + { savedObjectsClient, callCluster }, params, + index, groupBy, filterQuery ) { - const { indexPattern, aggType } = params; + const { aggType } = params; const searchBody = getElasticsearchMetricQuery(params, groupBy, filterQuery); try { @@ -189,7 +216,7 @@ const getMetric: ( response => response.aggregations?.groupings?.after_key ); const compositeBuckets = (await getAllCompositeData( - body => callCluster('search', { body, index: indexPattern }), + body => callCluster('search', { body, index }), searchBody, bucketSelector, afterKeyHandler @@ -204,7 +231,7 @@ const getMetric: ( } const result = await callCluster('search', { body: searchBody, - index: indexPattern, + index, }); return { '*': getCurrentValueFromAggregations(result.aggregations, aggType) }; } catch (e) { @@ -236,16 +263,18 @@ const mapToConditionsLookup = ( export const createMetricThresholdExecutor = (alertUUID: string) => async function({ services, params }: AlertExecutorOptions) { - const { criteria, groupBy, filterQuery } = params as { + const { criteria, groupBy, filterQuery, sourceId } = params as { criteria: MetricExpressionParams[]; groupBy: string | undefined; filterQuery: string | undefined; + sourceId?: string; }; const alertResults = await Promise.all( criteria.map(criterion => (async () => { - const currentValues = await getMetric(services, criterion, groupBy, filterQuery); + const index = await getIndexPattern(services, sourceId); + const currentValues = await getMetric(services, criterion, index, groupBy, filterQuery); const { threshold, comparator } = criterion; const comparisonFunction = comparatorMap[comparator]; return mapValues(currentValues, value => ({ diff --git a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/register_metric_threshold_alert_type.ts b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/register_metric_threshold_alert_type.ts index 2ab3a3322661..8808219cabaa 100644 --- a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/register_metric_threshold_alert_type.ts +++ b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/register_metric_threshold_alert_type.ts @@ -29,7 +29,6 @@ export async function registerMetricThresholdAlertType(alertingPlugin: PluginSet ]), timeUnit: schema.string(), timeSize: schema.number(), - indexPattern: schema.string(), }; const nonCountCriterion = schema.object({ @@ -89,6 +88,7 @@ export async function registerMetricThresholdAlertType(alertingPlugin: PluginSet criteria: schema.arrayOf(schema.oneOf([countCriterion, nonCountCriterion])), groupBy: schema.maybe(schema.string()), filterQuery: schema.maybe(schema.string()), + sourceId: schema.string(), }), }, defaultActionGroupId: FIRED_ACTIONS.id, diff --git a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/test_mocks.ts b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/test_mocks.ts index e87ffcfb2b91..66e0a363c898 100644 --- a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/test_mocks.ts +++ b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/test_mocks.ts @@ -26,6 +26,17 @@ const bucketsB = [ }, ]; +const bucketsC = [ + { + doc_count: 2, + aggregatedValue: { value: 0.5 }, + }, + { + doc_count: 3, + aggregatedValue: { value: 16.0 }, + }, +]; + export const basicMetricResponse = { aggregations: { aggregatedIntervals: { @@ -108,3 +119,11 @@ export const compositeEndResponse = { aggregations: {}, hits: { total: { value: 0 } }, }; + +export const changedSourceIdResponse = { + aggregations: { + aggregatedIntervals: { + buckets: bucketsC, + }, + }, +}; diff --git a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/types.ts b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/types.ts index 557a071ec917..abed691f109c 100644 --- a/x-pack/plugins/infra/server/lib/alerting/metric_threshold/types.ts +++ b/x-pack/plugins/infra/server/lib/alerting/metric_threshold/types.ts @@ -28,7 +28,7 @@ export type TimeUnit = 's' | 'm' | 'h' | 'd'; interface BaseMetricExpressionParams { timeSize: number; timeUnit: TimeUnit; - indexPattern: string; + sourceId?: string; threshold: number[]; comparator: Comparator; } diff --git a/x-pack/plugins/infra/server/lib/sources/sources.ts b/x-pack/plugins/infra/server/lib/sources/sources.ts index 5b9207a88e6e..c7ff6c963820 100644 --- a/x-pack/plugins/infra/server/lib/sources/sources.ts +++ b/x-pack/plugins/infra/server/lib/sources/sources.ts @@ -231,7 +231,7 @@ const mergeSourceConfiguration = ( first ); -const convertSavedObjectToSavedSourceConfiguration = (savedObject: unknown) => +export const convertSavedObjectToSavedSourceConfiguration = (savedObject: unknown) => pipe( SourceConfigurationSavedObjectRuntimeType.decode(savedObject), map(savedSourceConfiguration => ({ From a8f84f87afa90c635d4acbf6dfa2aaa562cb219c Mon Sep 17 00:00:00 2001 From: Yuliia Naumenko Date: Tue, 7 Apr 2020 10:56:48 -0700 Subject: [PATCH 06/36] Improve UX for index document code editor to have similar UX as webhook (#62724) * Improve UX for index document code editor to have similar UX as webhook's * Fixed jest tests * Fixed codestyle issue --- .../builtin_action_types/es_index.test.tsx | 9 +- .../builtin_action_types/es_index.tsx | 87 +++++++++++++++---- .../components/builtin_action_types/types.ts | 2 +- .../public/application/lib/use_x_json_mode.ts | 25 ++++++ 4 files changed, 103 insertions(+), 20 deletions(-) create mode 100644 x-pack/plugins/triggers_actions_ui/public/application/lib/use_x_json_mode.ts diff --git a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/es_index.test.tsx b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/es_index.test.tsx index 6ce954f61bcd..d83396f20082 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/es_index.test.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/es_index.test.tsx @@ -134,7 +134,7 @@ describe('IndexParamsFields renders', () => { ActionParamsProps >; const actionParams = { - documents: ['test'], + documents: [{ test: 123 }], }; const wrapper = mountWithIntl( { .find('[data-test-subj="actionIndexDoc"]') .first() .prop('value') - ).toBe('"test"'); + ).toBe(`{ + "test": 123 +}`); + expect( + wrapper.find('[data-test-subj="indexDocumentAddVariableButton"]').length > 0 + ).toBeTruthy(); }); }); diff --git a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/es_index.tsx b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/es_index.tsx index d631882e1f58..56d9f40e4002 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/es_index.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/es_index.tsx @@ -14,6 +14,10 @@ import { EuiSelect, EuiTitle, EuiIconTip, + EuiPopover, + EuiButtonIcon, + EuiContextMenuPanel, + EuiContextMenuItem, } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; import { i18n } from '@kbn/i18n'; @@ -31,6 +35,7 @@ import { getIndexOptions, getIndexPatterns, } from '../../../common/index_controls'; +import { useXJsonMode } from '../../lib/use_x_json_mode'; export function getActionType(): ActionTypeModel { return { @@ -271,9 +276,29 @@ const IndexParamsFields: React.FunctionComponent { const { documents } = actionParams; - + const { xJsonMode, convertToJson, setXJson, xJson } = useXJsonMode( + documents && documents.length > 0 ? documents[0] : null + ); + const [isVariablesPopoverOpen, setIsVariablesPopoverOpen] = useState(false); + const messageVariablesItems = messageVariables?.map((variable: string, i: number) => ( + { + const value = (xJson ?? '').concat(` {{${variable}}}`); + setXJson(value); + // Keep the documents in sync with the editor content + onDocumentsChange(convertToJson(value)); + setIsVariablesPopoverOpen(false); + }} + > + {`{{${variable}}}`} + + )); function onDocumentsChange(updatedDocuments: string) { try { const documentsJSON = JSON.parse(updatedDocuments); @@ -291,27 +316,55 @@ const IndexParamsFields: React.FunctionComponent setIsVariablesPopoverOpen(true)} + iconType="indexOpen" + title={i18n.translate( + 'xpack.triggersActionsUI.components.builtinActionTypes.indexAction.addVariableTitle', + { + defaultMessage: 'Add variable', + } + )} + aria-label={i18n.translate( + 'xpack.triggersActionsUI.components.builtinActionTypes.indexAction.addVariablePopoverButton', + { + defaultMessage: 'Add variable', + } + )} + /> + } + isOpen={isVariablesPopoverOpen} + closePopover={() => setIsVariablesPopoverOpen(false)} + panelPaddingSize="none" + anchorPosition="downLeft" + > + + + } > 0 ? documents[0] : {}, null, 2)} - onChange={onDocumentsChange} - width="100%" - height="auto" - minLines={6} - maxLines={30} - isReadOnly={false} - setOptions={{ - showLineNumbers: true, - tabSize: 2, + aria-label={i18n.translate( + 'xpack.triggersActionsUI.components.builtinActionTypes.indexAction.jsonDocAriaLabel', + { + defaultMessage: 'Code editor', + } + )} + value={xJson} + onChange={(xjson: string) => { + setXJson(xjson); + // Keep the documents in sync with the editor content + onDocumentsChange(convertToJson(xjson)); }} - editorProps={{ - $blockScrolling: Infinity, - }} - showGutter={true} />
diff --git a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/types.ts b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/types.ts index fd35db430427..84d8b6e8caed 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/types.ts +++ b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/types.ts @@ -39,7 +39,7 @@ export interface PagerDutyActionParams { } export interface IndexActionParams { - documents: string[]; + documents: Array>; } export enum ServerLogLevelOptions { diff --git a/x-pack/plugins/triggers_actions_ui/public/application/lib/use_x_json_mode.ts b/x-pack/plugins/triggers_actions_ui/public/application/lib/use_x_json_mode.ts new file mode 100644 index 000000000000..b677924724ff --- /dev/null +++ b/x-pack/plugins/triggers_actions_ui/public/application/lib/use_x_json_mode.ts @@ -0,0 +1,25 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ +import { useState } from 'react'; +import { XJsonMode } from '../../../../../../src/plugins/es_ui_shared/console_lang/ace/modes/x_json'; +import { + collapseLiteralStrings, + expandLiteralStrings, +} from '../../../../../../src/plugins/es_ui_shared/console_lang/lib'; +// @ts-ignore +export const xJsonMode = new XJsonMode(); +export const useXJsonMode = (json: Record | null) => { + const [xJson, setXJson] = useState( + json === null ? '' : expandLiteralStrings(JSON.stringify(json, null, 2)) + ); + + return { + xJson, + setXJson, + xJsonMode, + convertToJson: collapseLiteralStrings, + }; +}; From 20dc67df71ebe90ddb501da9be1fc6d36be68ed3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cau=C3=AA=20Marcondes?= <55978943+cauemarcondes@users.noreply.github.com> Date: Tue, 7 Apr 2020 19:18:35 +0100 Subject: [PATCH 07/36] [APM] Agent span_frames_min_duration configuration input cannot handle 0 or -1 (#62777) * changing duration min value for span_frames_min_duration * adding min property to number field --- .../SettingsPage/SettingFormRow.tsx | 1 + .../agent_configuration/amount_and_unit.ts | 3 +- .../runtime_types/duration_rt.test.ts | 52 +++++++++++++++---- .../runtime_types/duration_rt.ts | 44 +++++++++------- .../__snapshots__/index.test.ts.snap | 1 + .../setting_definitions/general_settings.ts | 5 +- .../setting_definitions/types.d.ts | 1 + 7 files changed, 75 insertions(+), 32 deletions(-) diff --git a/x-pack/legacy/plugins/apm/public/components/app/Settings/AgentConfigurations/AgentConfigurationCreateEdit/SettingsPage/SettingFormRow.tsx b/x-pack/legacy/plugins/apm/public/components/app/Settings/AgentConfigurations/AgentConfigurationCreateEdit/SettingsPage/SettingFormRow.tsx index b1959e4d68aa..30c772bf5f63 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/Settings/AgentConfigurations/AgentConfigurationCreateEdit/SettingsPage/SettingFormRow.tsx +++ b/x-pack/legacy/plugins/apm/public/components/app/Settings/AgentConfigurations/AgentConfigurationCreateEdit/SettingsPage/SettingFormRow.tsx @@ -90,6 +90,7 @@ function FormRow({ onChange( setting.key, diff --git a/x-pack/plugins/apm/common/agent_configuration/amount_and_unit.ts b/x-pack/plugins/apm/common/agent_configuration/amount_and_unit.ts index 447e529c9c19..d6520ae15053 100644 --- a/x-pack/plugins/apm/common/agent_configuration/amount_and_unit.ts +++ b/x-pack/plugins/apm/common/agent_configuration/amount_and_unit.ts @@ -10,7 +10,8 @@ interface AmountAndUnit { } export function amountAndUnitToObject(value: string): AmountAndUnit { - const [, amount = '', unit = ''] = value.match(/(\d+)?(\w+)?/) || []; + // matches any postive and negative number and its unit. + const [, amount = '', unit = ''] = value.match(/(^-?\d+)?(\w+)?/) || []; return { amount, unit }; } diff --git a/x-pack/plugins/apm/common/agent_configuration/runtime_types/duration_rt.test.ts b/x-pack/plugins/apm/common/agent_configuration/runtime_types/duration_rt.test.ts index a83ee9262cad..98d0cb5f028c 100644 --- a/x-pack/plugins/apm/common/agent_configuration/runtime_types/duration_rt.test.ts +++ b/x-pack/plugins/apm/common/agent_configuration/runtime_types/duration_rt.test.ts @@ -10,25 +10,57 @@ * you may not use this file except in compliance with the Elastic License. */ -import { durationRt } from './duration_rt'; +import { durationRt, getDurationRt } from './duration_rt'; import { isRight } from 'fp-ts/lib/Either'; describe('durationRt', () => { describe('it should not accept', () => { - [undefined, null, '', 0, 'foo', true, false, '100', 's', 'm', '0h'].map( - input => { - it(`${JSON.stringify(input)}`, () => { - expect(isRight(durationRt.decode(input))).toBe(false); - }); - } - ); + [ + undefined, + null, + '', + 0, + 'foo', + true, + false, + '100', + 's', + 'm', + '0ms', + '-1ms' + ].map(input => { + it(`${JSON.stringify(input)}`, () => { + expect(isRight(durationRt.decode(input))).toBe(false); + }); + }); }); - describe('It should accept', () => { - ['1000ms', '2s', '3m'].map(input => { + describe('it should accept', () => { + ['1000ms', '2s', '3m', '1s'].map(input => { it(`${JSON.stringify(input)}`, () => { expect(isRight(durationRt.decode(input))).toBe(true); }); }); }); }); + +describe('getDurationRt', () => { + const customDurationRt = getDurationRt({ min: -1 }); + describe('it should not accept', () => { + [undefined, null, '', 0, 'foo', true, false, '100', 's', 'm', '-2ms'].map( + input => { + it(`${JSON.stringify(input)}`, () => { + expect(isRight(customDurationRt.decode(input))).toBe(false); + }); + } + ); + }); + + describe('it should accept', () => { + ['1000ms', '2s', '3m', '1s', '-1s', '0ms'].map(input => { + it(`${JSON.stringify(input)}`, () => { + expect(isRight(customDurationRt.decode(input))).toBe(true); + }); + }); + }); +}); diff --git a/x-pack/plugins/apm/common/agent_configuration/runtime_types/duration_rt.ts b/x-pack/plugins/apm/common/agent_configuration/runtime_types/duration_rt.ts index 383fd69be9a7..b691276854fb 100644 --- a/x-pack/plugins/apm/common/agent_configuration/runtime_types/duration_rt.ts +++ b/x-pack/plugins/apm/common/agent_configuration/runtime_types/duration_rt.ts @@ -10,24 +10,28 @@ import { amountAndUnitToObject } from '../amount_and_unit'; export const DURATION_UNITS = ['ms', 's', 'm']; -export const durationRt = new t.Type( - 'durationRt', - t.string.is, - (input, context) => { - return either.chain(t.string.validate(input, context), inputAsString => { - const { amount, unit } = amountAndUnitToObject(inputAsString); - const amountAsInt = parseInt(amount, 10); - const isValidUnit = DURATION_UNITS.includes(unit); - const isValid = amountAsInt > 0 && isValidUnit; +export function getDurationRt({ min }: { min: number }) { + return new t.Type( + 'durationRt', + t.string.is, + (input, context) => { + return either.chain(t.string.validate(input, context), inputAsString => { + const { amount, unit } = amountAndUnitToObject(inputAsString); + const amountAsInt = parseInt(amount, 10); + const isValidUnit = DURATION_UNITS.includes(unit); + const isValid = amountAsInt >= min && isValidUnit; - return isValid - ? t.success(inputAsString) - : t.failure( - input, - context, - `Must have numeric amount and a valid unit (${DURATION_UNITS})` - ); - }); - }, - t.identity -); + return isValid + ? t.success(inputAsString) + : t.failure( + input, + context, + `Must have numeric amount and a valid unit (${DURATION_UNITS})` + ); + }); + }, + t.identity + ); +} + +export const durationRt = getDurationRt({ min: 1 }); diff --git a/x-pack/plugins/apm/common/agent_configuration/setting_definitions/__snapshots__/index.test.ts.snap b/x-pack/plugins/apm/common/agent_configuration/setting_definitions/__snapshots__/index.test.ts.snap index 4b74b07fc8e2..bc435179762a 100644 --- a/x-pack/plugins/apm/common/agent_configuration/setting_definitions/__snapshots__/index.test.ts.snap +++ b/x-pack/plugins/apm/common/agent_configuration/setting_definitions/__snapshots__/index.test.ts.snap @@ -118,6 +118,7 @@ Array [ }, Object { "key": "span_frames_min_duration", + "min": -1, "type": "duration", "units": Array [ "ms", diff --git a/x-pack/plugins/apm/common/agent_configuration/setting_definitions/general_settings.ts b/x-pack/plugins/apm/common/agent_configuration/setting_definitions/general_settings.ts index 152db37a1bff..f1d11c5c70c2 100644 --- a/x-pack/plugins/apm/common/agent_configuration/setting_definitions/general_settings.ts +++ b/x-pack/plugins/apm/common/agent_configuration/setting_definitions/general_settings.ts @@ -8,6 +8,7 @@ import { i18n } from '@kbn/i18n'; import { getIntegerRt } from '../runtime_types/integer_rt'; import { captureBodyRt } from '../runtime_types/capture_body_rt'; import { RawSettingDefinition } from './types'; +import { getDurationRt } from '../runtime_types/duration_rt'; /* * Settings added here will show up in the UI and will be validated on the client and server @@ -143,6 +144,7 @@ export const generalSettings: RawSettingDefinition[] = [ { key: 'span_frames_min_duration', type: 'duration', + validation: getDurationRt({ min: -1 }), defaultValue: '5ms', label: i18n.translate('xpack.apm.agentConfig.spanFramesMinDuration.label', { defaultMessage: 'Span frames minimum duration' @@ -154,7 +156,8 @@ export const generalSettings: RawSettingDefinition[] = [ 'In its default settings, the APM agent will collect a stack trace with every recorded span.\nWhile this is very helpful to find the exact place in your code that causes the span, collecting this stack trace does have some overhead. \nWhen setting this option to a negative value, like `-1ms`, stack traces will be collected for all spans. Setting it to a positive value, e.g. `5ms`, will limit stack trace collection to spans with durations equal to or longer than the given value, e.g. 5 milliseconds.\n\nTo disable stack trace collection for spans completely, set the value to `0ms`.' } ), - excludeAgents: ['js-base', 'rum-js', 'nodejs'] + excludeAgents: ['js-base', 'rum-js', 'nodejs'], + min: -1 }, // STACK_TRACE_LIMIT diff --git a/x-pack/plugins/apm/common/agent_configuration/setting_definitions/types.d.ts b/x-pack/plugins/apm/common/agent_configuration/setting_definitions/types.d.ts index 6b584fc7e204..282ced346dda 100644 --- a/x-pack/plugins/apm/common/agent_configuration/setting_definitions/types.d.ts +++ b/x-pack/plugins/apm/common/agent_configuration/setting_definitions/types.d.ts @@ -91,6 +91,7 @@ interface BytesSetting extends BaseSetting { interface DurationSetting extends BaseSetting { type: 'duration'; units?: string[]; + min?: number; } export type RawSettingDefinition = From 5e1708f8844b4388894f1d1c7a20402f5c7cf47b Mon Sep 17 00:00:00 2001 From: Brandon Morelli Date: Tue, 7 Apr 2020 11:27:02 -0700 Subject: [PATCH 08/36] [APM] docs: add service map information (#62671) --- docs/apm/images/service-maps-java.png | Bin 0 -> 537050 bytes docs/apm/images/service-maps.png | Bin 0 -> 494889 bytes docs/apm/service-maps.asciidoc | 48 ++++++++++++++++++++++++++ docs/apm/using-the-apm-ui.asciidoc | 2 ++ 4 files changed, 50 insertions(+) create mode 100644 docs/apm/images/service-maps-java.png create mode 100644 docs/apm/images/service-maps.png create mode 100644 docs/apm/service-maps.asciidoc diff --git a/docs/apm/images/service-maps-java.png b/docs/apm/images/service-maps-java.png new file mode 100644 index 0000000000000000000000000000000000000000..e1a42f4c76e12f57f19ebf85628b4eff89168430 GIT binary patch literal 537050 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 - } - body={ -

- -

- } - actions={ - - - - } - /> - - - + + + + + + + + } + body={ +

+ +

+ } + actions={ + + + + } + /> +
+
+
+
); }; diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc.ts b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc.ts index 459dcfb30d17..092e3c79b100 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc.ts +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc.ts @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -import { getAngularModule, wrapInI18nContext, getServices } from '../../kibana_services'; +import { getAngularModule, getServices } from '../../kibana_services'; // @ts-ignore import { getRootBreadcrumbs } from '../helpers/breadcrumbs'; import html from './doc.html'; @@ -30,7 +30,7 @@ const { timefilter } = getServices(); const app = getAngularModule(); app.directive('discoverDoc', function(reactDirective: any) { return reactDirective( - wrapInI18nContext(Doc), + Doc, [ ['id', { watchDepth: 'value' }], ['index', { watchDepth: 'value' }], diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/pager/index.ts b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/pager/index.ts index f21f3b17c695..7e155a6b82ca 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/pager/index.ts +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/pager/index.ts @@ -16,14 +16,13 @@ * specific language governing permissions and limitations * under the License. */ -import { wrapInI18nContext } from '../../../../../kibana_services'; import { ToolBarPagerText } from './tool_bar_pager_text'; import { ToolBarPagerButtons } from './tool_bar_pager_buttons'; export function createToolBarPagerTextDirective(reactDirective: any) { - return reactDirective(wrapInI18nContext(ToolBarPagerText)); + return reactDirective(ToolBarPagerText); } export function createToolBarPagerButtonsDirective(reactDirective: any) { - return reactDirective(wrapInI18nContext(ToolBarPagerButtons)); + return reactDirective(ToolBarPagerButtons); } diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/pager/tool_bar_pager_text.tsx b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/pager/tool_bar_pager_text.tsx index 608dadd36b4b..84338d817c86 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/pager/tool_bar_pager_text.tsx +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/pager/tool_bar_pager_text.tsx @@ -17,7 +17,7 @@ * under the License. */ import React from 'react'; -import { FormattedMessage } from '@kbn/i18n/react'; +import { FormattedMessage, I18nProvider } from '@kbn/i18n/react'; interface Props { startItem: number; @@ -27,12 +27,14 @@ interface Props { export function ToolBarPagerText({ startItem, endItem, totalItems }: Props) { return ( -
- -
+ +
+ +
+
); } diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/table_header.ts b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/table_header.ts index 84d865fd22a9..5e7ad6a1d1ea 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/table_header.ts +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/table_header.ts @@ -17,13 +17,13 @@ * under the License. */ import { TableHeader } from './table_header/table_header'; -import { wrapInI18nContext, getServices } from '../../../../kibana_services'; +import { getServices } from '../../../../kibana_services'; export function createTableHeaderDirective(reactDirective: any) { const { uiSettings: config } = getServices(); return reactDirective( - wrapInI18nContext(TableHeader), + TableHeader, [ ['columns', { watchDepth: 'collection' }], ['hideTimeColumn', { watchDepth: 'value' }], diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/components/doc/doc.tsx b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/doc/doc.tsx index 28a17dbdb67b..f3ceaef57d70 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/components/doc/doc.tsx +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/doc/doc.tsx @@ -17,7 +17,7 @@ * under the License. */ import React from 'react'; -import { FormattedMessage } from '@kbn/i18n/react'; +import { FormattedMessage, I18nProvider } from '@kbn/i18n/react'; import { EuiCallOut, EuiLink, EuiLoadingSpinner, EuiPageContent } from '@elastic/eui'; import { IndexPatternsContract } from 'src/plugins/data/public'; import { ElasticRequestState, useEsDocSearch } from './use_es_doc_search'; @@ -65,83 +65,85 @@ export function Doc(props: DocProps) { const [reqState, hit, indexPattern] = useEsDocSearch(props); return ( - - {reqState === ElasticRequestState.NotFoundIndexPattern && ( - - } - /> - )} - {reqState === ElasticRequestState.NotFound && ( - - } - > - + + {reqState === ElasticRequestState.NotFoundIndexPattern && ( + + } /> - - )} - - {reqState === ElasticRequestState.Error && ( - - } - > - {' '} - + } > - - - )} + + )} - {reqState === ElasticRequestState.Loading && ( - - {' '} - - - )} + {reqState === ElasticRequestState.Error && ( + + } + > + {' '} + + + + + )} - {reqState === ElasticRequestState.Found && hit !== null && indexPattern && ( -
- -
- )} -
+ {reqState === ElasticRequestState.Loading && ( + + {' '} + + + )} + + {reqState === ElasticRequestState.Found && hit !== null && indexPattern && ( +
+ +
+ )} + + ); } diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/components/fetch_error/fetch_error.tsx b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/fetch_error/fetch_error.tsx index 1aad7e953b8d..f8fc966dec35 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/components/fetch_error/fetch_error.tsx +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/fetch_error/fetch_error.tsx @@ -17,9 +17,9 @@ * under the License. */ import React, { Fragment } from 'react'; -import { FormattedMessage } from '@kbn/i18n/react'; +import { FormattedMessage, I18nProvider } from '@kbn/i18n/react'; import { EuiFlexGroup, EuiFlexItem, EuiCallOut, EuiCodeBlock, EuiSpacer } from '@elastic/eui'; -import { getAngularModule, wrapInI18nContext, getServices } from '../../../kibana_services'; +import { getAngularModule, getServices } from '../../../kibana_services'; interface Props { fetchError: { @@ -72,26 +72,28 @@ const DiscoverFetchError = ({ fetchError }: Props) => { } return ( - - + + + - - - - {body} + + + + {body} - {fetchError.error} - - - + {fetchError.error} + + + - - + + + ); }; export function createFetchErrorDirective(reactDirective: any) { - return reactDirective(wrapInI18nContext(DiscoverFetchError)); + return reactDirective(DiscoverFetchError); } getAngularModule().directive('discoverFetchError', createFetchErrorDirective); diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/components/sidebar/discover_sidebar.tsx b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/sidebar/discover_sidebar.tsx index 5984df9c76e6..0adda0e48484 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/components/sidebar/discover_sidebar.tsx +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/sidebar/discover_sidebar.tsx @@ -20,7 +20,7 @@ import React, { useCallback, useEffect, useState, useMemo } from 'react'; import { i18n } from '@kbn/i18n'; import { EuiButtonIcon, EuiTitle } from '@elastic/eui'; import { sortBy } from 'lodash'; -import { FormattedMessage } from '@kbn/i18n/react'; +import { FormattedMessage, I18nProvider } from '@kbn/i18n/react'; import { DiscoverField } from './discover_field'; import { DiscoverIndexPattern } from './discover_index_pattern'; import { DiscoverFieldSearch } from './discover_field_search'; @@ -162,165 +162,175 @@ export function DiscoverSidebar({ } return ( -
- o.attributes.title)} - /> -
-
- - -
-
- {fields.length > 0 && ( - <> - -

- -

-
-
    - {selectedFields.map((field: IndexPatternField, idx: number) => { - return ( -
  • - -
  • - ); - })} -
-
- + +
+ o.attributes.title)} + /> +
+
+ + +
+
+ {fields.length > 0 && ( + <> +

-
- setShowFields(!showFields)} - aria-label={ - showFields - ? i18n.translate( - 'kbn.discover.fieldChooser.filter.indexAndFieldsSectionHideAriaLabel', - { - defaultMessage: 'Hide fields', - } - ) - : i18n.translate( - 'kbn.discover.fieldChooser.filter.indexAndFieldsSectionShowAriaLabel', - { - defaultMessage: 'Show fields', - } - ) - } - /> -
-
- - )} - {popularFields.length > 0 && ( -
- - - -
    - {popularFields.map((field: IndexPatternField, idx: number) => { - return ( -
  • - + {selectedFields.map((field: IndexPatternField, idx: number) => { + return ( +
  • + +
  • + ); + })} +
+
+ +

+ - - ); - })} - -

- )} + + +
+ setShowFields(!showFields)} + aria-label={ + showFields + ? i18n.translate( + 'kbn.discover.fieldChooser.filter.indexAndFieldsSectionHideAriaLabel', + { + defaultMessage: 'Hide fields', + } + ) + : i18n.translate( + 'kbn.discover.fieldChooser.filter.indexAndFieldsSectionShowAriaLabel', + { + defaultMessage: 'Show fields', + } + ) + } + /> +
+
+ + )} + {popularFields.length > 0 && ( +
+ + + +
    + {popularFields.map((field: IndexPatternField, idx: number) => { + return ( +
  • + +
  • + ); + })} +
+
+ )} -
    - {unpopularFields.map((field: IndexPatternField, idx: number) => { - return ( -
  • - -
  • - ); - })} -
-
-
+
    + {unpopularFields.map((field: IndexPatternField, idx: number) => { + return ( +
  • + +
  • + ); + })} +
+ + + ); } diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/components/sidebar/discover_sidebar_directive.ts b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/sidebar/discover_sidebar_directive.ts index 9dcb459f8361..624ec0f75789 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/components/sidebar/discover_sidebar_directive.ts +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/sidebar/discover_sidebar_directive.ts @@ -16,11 +16,10 @@ * specific language governing permissions and limitations * under the License. */ -import { wrapInI18nContext } from '../../../kibana_services'; import { DiscoverSidebar } from './discover_sidebar'; export function createDiscoverSidebarDirective(reactDirective: any) { - return reactDirective(wrapInI18nContext(DiscoverSidebar), [ + return reactDirective(DiscoverSidebar, [ ['columns', { watchDepth: 'reference' }], ['fieldCounts', { watchDepth: 'reference' }], ['hits', { watchDepth: 'reference' }], From cc9c4113b2b889044ea216b3c8734244ec058420 Mon Sep 17 00:00:00 2001 From: Larry Gregory Date: Wed, 8 Apr 2020 07:15:31 -0400 Subject: [PATCH 17/36] Document sub-feature privileges (#62335) * documenting sub-feature privileges * Apply suggestions from code review Co-Authored-By: gchaps <33642766+gchaps@users.noreply.github.com> * address PR feedback Co-authored-by: gchaps <33642766+gchaps@users.noreply.github.com> --- ...pment-plugin-feature-registration.asciidoc | 82 +++++++++++++++++- .../authorization/kibana-privileges.asciidoc | 7 +- .../images/assign_feature_privilege.png | Bin 507672 -> 651165 bytes 3 files changed, 87 insertions(+), 2 deletions(-) diff --git a/docs/developer/plugin/development-plugin-feature-registration.asciidoc b/docs/developer/plugin/development-plugin-feature-registration.asciidoc index ca61e5309ce8..4702204196bf 100644 --- a/docs/developer/plugin/development-plugin-feature-registration.asciidoc +++ b/docs/developer/plugin/development-plugin-feature-registration.asciidoc @@ -45,10 +45,15 @@ Registering a feature consists of the following fields. For more information, co |An array of applications this feature enables. Typically, all of your plugin's apps (from `uiExports`) will be included here. |`privileges` (required) -|{repo}blob/{branch}/x-pack/plugins/features/server/feature.ts[`FeatureWithAllOrReadPrivileges`]. +|{repo}blob/{branch}/x-pack/plugins/features/common/feature.ts[`FeatureConfig`]. |See <> and <> |The set of privileges this feature requires to function. +|`subFeatures` (optional) +|{repo}blob/{branch}/x-pack/plugins/features/common/feature.ts[`FeatureConfig`]. +|See <> +|The set of subfeatures that enables finer access control than the `all` and `read` feature privileges. These options are only available in the Gold subscription level and higher. + |`icon` |`string` |"discoverApp" @@ -192,3 +197,78 @@ server.route({ } }); ----------- + +[[example-3-discover]] +==== Example 3: Discover + +Discover takes advantage of subfeature privileges to allow fine-grained access control. In this example, +a single "Create Short URLs" subfeature privilege is defined, which allows users to grant access to this feature without having to grant the `all` privilege to Discover. In other words, you can grant `read` access to Discover, and also grant the ability to create short URLs. + +["source","javascript"] +----------- +init(server) { + const xpackMainPlugin = server.plugins.xpack_main; + xpackMainPlugin.registerFeature({ + { + id: 'discover', + name: i18n.translate('xpack.features.discoverFeatureName', { + defaultMessage: 'Discover', + }), + order: 100, + icon: 'discoverApp', + navLinkId: 'kibana:discover', + app: ['kibana'], + catalogue: ['discover'], + privileges: { + all: { + app: ['kibana'], + catalogue: ['discover'], + savedObject: { + all: ['search', 'query'], + read: ['index-pattern'], + }, + ui: ['show', 'save', 'saveQuery'], + }, + read: { + app: ['kibana'], + catalogue: ['discover'], + savedObject: { + all: [], + read: ['index-pattern', 'search', 'query'], + }, + ui: ['show'], + }, + }, + subFeatures: [ + { + name: i18n.translate('xpack.features.ossFeatures.discoverShortUrlSubFeatureName', { + defaultMessage: 'Short URLs', + }), + privilegeGroups: [ + { + groupType: 'independent', + privileges: [ + { + id: 'url_create', + name: i18n.translate( + 'xpack.features.ossFeatures.discoverCreateShortUrlPrivilegeName', + { + defaultMessage: 'Create Short URLs', + } + ), + includeIn: 'all', + savedObject: { + all: ['url'], + read: [], + }, + ui: ['createShortUrl'], + }, + ], + }, + ], + }, + ], + } + }); +} +----------- diff --git a/docs/user/security/authorization/kibana-privileges.asciidoc b/docs/user/security/authorization/kibana-privileges.asciidoc index 6a0b7cefab01..21fcb9bdccb8 100644 --- a/docs/user/security/authorization/kibana-privileges.asciidoc +++ b/docs/user/security/authorization/kibana-privileges.asciidoc @@ -43,6 +43,10 @@ Assigning a feature privilege grants access to a specific feature. `all`:: Grants full read-write access. `read`:: Grants read-only access. +===== Sub-feature privileges +Some features allow for finer access control than the `all` and `read` privileges. +This additional level of control is available in the Gold subscription level and higher. + ===== Assigning feature privileges From the role management screen: @@ -62,7 +66,8 @@ PUT /api/security/role/my_kibana_role { "base": [], "feature": { - "dashboard": ["all"] + "visualize": ["all"], + "dashboard": ["read", "url_create"] }, "spaces": ["marketing"] } diff --git a/docs/user/security/images/assign_feature_privilege.png b/docs/user/security/images/assign_feature_privilege.png index e7d000d4554ad3e80b4eecc46bd5cfc2c67c1d54..26fbbf20b39ad665a3ab5d2dc7ab3f65c8922ae4 100644 GIT binary patch literal 651165 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

d0!vkfZsAcqo2DY6BJ?AR(5Q z_Glwamli)D^M2$@hK~Bdb-Mk? zM45j4Em~Z{Hx}TyS3;bsgv>bxyiDJZ2BIm#WCVpqPHSzkdgcs0+E1p@1Mf#n%{j*_ zjHNbPl0dCg3PvvBhzR6nZ@qyc(^Rj4V8!yT42PC@5mI*psy5sLF25PPLaFHG1)JNB zX>ul)yPe6Mh zo6rfbA@0)1-GQJ-_N6a!-AjZ79*7aVwFDQ=BG-mZ?UfF9dN~3y*VxU$T|AN7%=vgj zcJ@9U*&lJ$-=lKO&8DhpnJ*F5V_$9OE5vS2CfBbQvoVUI_ZEo_w;43##bZpmnTH0@ z*dt^ptMTp4FDT{aShSM7Q3Q2wljIWt-f^xY=E}YMuBp46)PH#zt|Eg*MtQg0Uu%S6!dWIT@ot$1PFSX?&7LTC&*we+t_on0ZYev zCPTp**sQLrtAv~lX=&D!I(jY}ercgx>Y)p<8ec*SV&}@hJpY+BZEE^Q@&3ER_HS~e ze`_yfu%bRddaDS4ud<~$12uj2ZhvpPsQxa1(*mS|it*^#l*&U_VtwnX4V(KXVC>*x z^|&C(rSN z+U)FV`)l}dEUg3Ngnyz2JYY>8zFPC2yY$)!t?uIysxD?7CN^Z)yMF36WQNvvG&*~! zdNek)Sj+dWfRUPn5qUZ@ktY-a76IMUZ$;FaH}3;ZGqg|qLeH)6c$t+MM+^=Khom_32_E{M?6I_2j+m&#Fa)Uzh^Y+r_6!+5 zN0NuB#xIO=Iu`5G4${TR?JI#AM%=hUUKMZRR`~YX-S>aPFl$cVKt5R77(M`6Z1iU> z_hjKGp6SJP#JH;+)*d04FE67$D@*a!yJq)~696#Dz$jN&t-)5}?1t~dT&~L(-{3^u ziP%CoooEu^(XJSzqkVkHKy!mS>lVU6xHhp2%n$S6yAAs|DMndaH{$+Vd+l zwo=t51T*~S895lMWQInSxN1*5yO-AbaUOR->46U3fCg7?{d1StGjZJK6m8x9`k5=X z&lSW#m6Z#127RsNrKPE}2|nI5#yjOd%}o&A64L#5hmNozX75_`k-vU3$m#e}}ol-=i^1<%kC!)Bl?M zA|md^y_S-c+-HibzbG+|%Zu1>>=o?%Hpt-6(xhw*?|CK?5%qOw=3}06|K}{@tgYqV zLV?%B4jv4tgaC^t8zkU>1Ziq&RCnWRUjKa!sbwv(cQdS6_g$wDxkquvZibffjVq() zgkN!S%F4>{&o1pSkvG&M9m+?l<`dMJu|tudB)sB@?;Mm_Xu01;6cON)?Dfti0;uQA zyAzl{JhlGo4MsH^LO-%(FZ{9ZuC?+W*OESesN9!d@G&LMGm&p5=EeyU#qXEP0o6n} zOXvsH=FOp8@JscrvK*Ajj)6ScYjSt<5M4kdna|m+$hBE&@cHMj1eFcJK>iP4JW^n-a#tv|N`2hxycM0pq zx%$3cdJvP!wl^$|E8B%YT{{QzPb{%Ej}MgSn|n&+1-2EY_ZaTXUJN7GJk8TY4Vtc7 zoahWjAQgyj4cGN=K8-h*d(qa8f%<(0KZiXv7&FpB4Zl2^SqHyw7Cn0hN>*1_|I&d@!e&4LRF?aa|J*GE_R7@BpupvJ<_;-cjGh>w02Cz^P8af>RW>a()*^5$k|0tZ`(EFG2m&qYz%tuhtu-FwS7@C-n;4R3q+WTF7 zSBIqf?1Yk)&_OqGhcXII(WAOgWn}CmSKsO~o^BV&I>ztsN%$@=czz{Jr@Z#k@|0Y0 z54*blDiU+~fb)@wdnaeQzGNopF~NY65(P@7kPLHndTghep?aG-n{GhO&FpqqLBT-c zw+&8~*4B9`L5+3NB?|^jPn@I3v^#wKl`+v0D?o6|5%T||pk0t+39^~f5S&|ra!r)b?#nIE#uAr=9IKp7Bw@CpL=T%aWgIN zTNpmnI!=UsWwipP8A?IFYTE9h39c1ydGdXsu3cw%V>y#eVonE1ZK{)5-KvvZPmXg( zz$vTzJ9Z18y6rv?Q#HXu-!i1WTSf1EM{^t#LV~Wi!Z4gF5qk>M}!+BpIb#wU@nlmt90maUa7yUs;{eK_ESEl$`BU`+bi}+pc}M&A{s>OV|}!c zpD-CrQCYEpD}ZJ`UwA%2U^xa`Tv+vN3xbtfI=(S^bn>yk$jOFdTw-uvXX~I?z`&&t z(WlJ%yN-Q=j(K%nT*g;10Dtei>t0iH^PnG>hMyXjWA(V<&65dF3$_z-;F8V*qP(U0 zvOa(5Uw;^5_KNFd49%f5o36bbYRvZ4UxNC%i)LN5w6yY8eK?%oVU!76>rEZHTe%8~ znj6xWGM?wS>Q2i~4-opeItTYqPqrusza(LU<<^2+^JN7dL@hRQjzGp23u`<~3WbI< zYCV@)7L~7@;cN_%N zjqz_|ZlMHDc7=?jN^UU5#hV#0Gvg}147hd4y;+TakcZJ>#sT6saGzgdo80{v-2Sy9 zyn^9zCF8@Hq$FozNtMcW_IAX3R06kli#RUL z+HXCW0>(ZUV|uwB3=h5KX8l(uC1%@ucegj(W+IgK^el z^m#pnKL~4*FbZlpGRv%98yShC+5W*yPXK}7eXO!=J}OY#5u>l_vd1TxqPXw76+(~c zR+oRy_Rpm@bkUaFcHX1tk2&1HvII+v*J|fUjkM;+Q2RE|_?`=6PS@NR9jGd_*OpDk zk&w5NBsykR`#;p{#{$R5pS?MRxFF9 z9Cx%oB%(~F_G5oJ)wWMkis^55juw`dxKC!kIjId^(OU|Ss4lE-4lE*ZmgC2TeFn8Lr$6y3*`ucf@#L(5CZ2I}Ow31L#wu5dm1ok;QO)c!aYG7c|>Dr zQvI9KahVRMK$8*XH}OaLd)f;^HWfuzpB$bD&FTE&awL1?Rj~mfz8z+W8O@#HQPlC5 zW^Cnva*b2bd0g#bJll-sM&}QR^BTl}=uiLxzX$xgGYEPTJCh^<=;L zrA7qkElc!~l%*I~TXnX(rLK(xFY%6>53&s2=US;J0;S&MS z_q&q|$CHf- z?c$;Q<2~vBNFuYju$eg5=0@6HHWw6_#*G?_8h1P~bFp?ab5RqD&j6gSsBEJ~$*)Q-+@^402axiCcQ- z{KU*#NjnK2IAafFjZ^mbuc=k~T551bgiBdD6m`7qZI9r+&~98b4eM#XRS`A@vA%xzKqA@(PFDjUnS z^e@gl;)0Zfm@=#w_ z!4c03v$yiNBVrA$2`$K_lx_dEdi6jqZ&NO0$Hv61W7F~sjkT5*5)yJfi0zLK;=lVx zi9BHK-%P&>aQkF6ilbmA;1Xs?hGEpdm=(`<-xqi=F<$q&|K1SfA0dhCaf7&{(MjjS zrdl*7*;>EG`*u8k(xO{W=33hOgPPazd}E1DI-qtL6HNmTyrb!r2kGjK~8 z0vnAlEx*JWujgeYSK!?~GxlJ$iyP&tB-I-BMSA(MYUXdk{xnpQc>igzr8cWuF$3rc zDQ9L$InPc14%>6XRL^~_E0SRLP-eMWN@2DSf~uWjuE%C8di5CHHAw==S73ri>yhYv zR5yWubTIHJM6Bjt0%aZqe*B*Zl#pcZ!;s($x|6(M zBC{87okqveznQkG5rJ0C^K6*`m@xGA#Dw8BPbkJu=l>AnYCZF>x1+Y?qSyR{Cm>Edo6K zuXSuK5*p>7s=P6cko0l)J!_!nl7xRD3uVAX9BHJd!!a0j8b1MzW@l{jM*#)8gL{11 z7dt6vyD5D{?Pz<%c%>7?Ahly%T_GmBc;3+|D z0-u9J966Sdr^=6jICTgLN0RMyP@4}aDf#z<%1V=@Q-#S-wgp~}e=4URz@Tv)e?kmI zPGip%3Wg^vwL7p(i@Vwbaa!rWabDz$5)yInsZR7)OLC$Rw_ya<@`z8na`yq*-yRL$ z3&1#@j*O1Y^Pj&z=q^YkI z&gc`djRYnjNaAa^#@z7K(ciJd?0pEdsWK};pkYtk{*ERd0qK~iKz&uMi~RlQ>?*2D zXN+*|R3m)-Bd{8_-iM)7xq}xiLj`#qb(8~xO0NHjapAebajZcol2t5_=PU1a)Sr^t*xN@FfUtR55 zY39dMe&byg%xAyr7bZjH+2l9DcAiTJkhB6wNO-QXyp}tD!N@BeimHD(vUDuxTw*Vb zaSmv`Q*r*e!uKLvoh}-qDWxlw@)h`x+A`jk_srs#@1S>9w6q4lUV8>Rr(YH#6w{Xh zqPDMHQb_&^)7{pk2>yM6?Y|eOJDa)hsT3CjhdP=$DTuqSLd7KR3zDiS3cDF+m{(B> zOHQe&!EUT3cF24ky0JS0FDHD67s;XFCox!B(tMuZSWh2#tQ1#21JNx^zH&IUmrMz}v(q z-KO1*xko0`K9YP*tfW$Cy2a?y@&e>+CQ*c%Y76w{)N7AioTY*>X9*I61WBV3{Ve9} zV~1~KYL*AyxtaM=_zq)Qehk=N`ye;K!8e5kbb>O-orSBbqC0ZBIe3SUa=VA)1&NP(d9~jKkoe)RM7Zq4DhV5 zV!+jRymak=p?oJPZg1&p1z~~R>X&cli<;)KO|L^8C4jnpV>m6=((zvKFiOlh(1*3;~S2Z&-Or8ccKz?t5xABPVuc^ny z88RjR$QI$-QxK!uj6`%g3RNi_RgA=(9;i?@%BeM zM(zz5`uE~NF#y1fjw86LojKL>)teDnF)=Rew3UIEcbOQ?gw8}#y_ZT3CPmn}f5adF zIw9RjUtGtklc+j4o_xYauHb=#$J3yzhWVxW`b15KYSupHFn|46=qsVh;dn9To-*g4 z+xxqdz+4I(kkLUi0E{}o%k>pb^Y0!0=Fg13uTWzaUtRfa&2hrsX0a@zm|{Z5C*09B zSHAFG9nspL|8evE%e_ydem7_u&G=d8`0rV{V#CdBb*pcGse`dIxeUboa9M$n@(Z#{ z*R7#h{)Y0v@9w<4mWO!`N6{XtkX8!L$)3c{-x$+(W+EpcPRtgO;78DL=D*E8|FzMk z6WTeln17k9c=cmmuS4CSVEN}ywG)QiW69Jr^8m<0Y+`x=r>GUXw+u7z0M+GFQ#u;cIsBj3la?${ zT%1<5OKepa<8fn(*(M6Q{X$gqaF}Bnh9WbtHIG#{fr&daNF!s5EH*wPnW`tkr0+qu z&_bGrUxIpW5ZD);3&X2jd2PULTZ&Z~yYZ$SpDX1tozGaY7S??Tt z2OfN1E-U*5KT#|mt7v`ex!*Q|;+cMnT67@xs#lP0*73ZEeW* zt9>sI|I|1S$oxEIvuHpm;*-w?ZXnt2?8X(^FD!6opbf6LZ!hgqc(O{#f9m;M_uC92 z0r0NobLBF|u^4@J);p|pBFhNu=AGHCp0p@BC{WN{dUGp68+5%JUF=8Vks^9y9Q;0a zArGM@{e()P>wRNELE!fJS##TG9qCypYBu%l0-n6cEoDN}%rZ(*Cksw#L;Ruk(CchN zhvi69S8aA6K?ha|6yGcM8`Wabf(KnRyvub1HLjlb@U9QAF|GR9q1Jg5_bgQsI{fzR zjV~^DpyULA)Ad?^WZSqqS_ch!>X7YcSRhJyP`EE^fBbrWW5Sj)OkUgqA()@Vq7dl1BIaOeN4 zJ$diuwpWD>9aOm#@U5&P!Bf%W*Oo-bGF*2SOm-1Cv2bYLaBd1;_&i~34m!OFR{-`* zPZms4pPwD&e;B&(|D|)XXeg3E9XNV69$EKF|H3fB{Ar{AC`7@I%|1}kVBEj7>b*b* zq8n(3YV;?a^4tvs7dke+d0&sLUmJL?4x53mqD>$Ju>h}46?SyS1PYt6@-R7q&tr!D zu4&SZ)M%TIn;|feFRo#8Z=gqNRt_1!ROHmiwE7!FcPn3+U`a}|cNMwz23;@1Dm~?S ziUPK)&l;2VKKY&~cH>WB${KW+f3mtC32)u3k+E-E@^5@$ruYI6gS`3>;r^r~9e{0r zp)1+fa=nQwA4?3gUTC*C%XXLOoO@TcEAn5P{-pDrI4r*N*HSN;St-y#`>Uab6(JsG zTr%ioRiU}6Pipv6?K|-0uDx{M@n6AEOgq|)Y$y2hC+*VTd;!U{U615Ht!}bfW@(T(nl=cn{#=dJ~lNEPKf)Ch}A)7Pe32t zEIw1OpY=RD`hgtYhi7ax7hW~EcumSlc?6G^G;kH12R5>;+Im^{16ndA77j#%iFc7O zFEOgu@A$KJ(Dn)Q3vCxF@;W0;_m*c0@0jvhevz=fr z{f9aoPlA}ph<7y4{OTRp?nOaoFL!#Tt*x+FCQGHiF4(?V(a^<*QrBFI`(jXzCXDW( zlU6RcacMBZju*w9DTQZeu;+c2#Pum03jOxgOlbkB3mcp}JLO|dgD1MW0Qooc zmpsdAu;|8i08qPZJWvt)4L`Pe(89t}KTbfAj^Hfi(&>x6Adj>t)EW|(2yyK9pQg(7q3z+pdQ-4zWec_g`q zg2IkwgCA!tc|Zh?x=~{iqLK9}8(I7DV`}M`xN>TF*9B)q^i!`Z%Zi&B>b5iQGT@5; zU|%X8U>6=a1eo>$b){YdCgBP0?!^LnFr>7z!LDTb_9EUXRAgNVw9JD~y~msgnRo1`qN$5Rp*Z`=w=4!EuTz5@$rK|z z3wh;l74A_l+XO4_htd`;tK0JRU^atYuiK2dL2R4Y>V43}wexGQKsL1Y?|}|)OuReL zNlys_+CgLll>rN@#-x-xaGqNUwZ^imqJFPx7J*JFU3HDdbQPk!AGV3 zo3Z5C)gN}u0|%3>nm}dMOeOjCAccT;K^xwRpP)@giTcOqxfg)Pke{D3?}ZeI(+p8O zyN8AQZ!aOo*lg%+M^STn&-Q>(SUM{`TOuMDrT^L4BDYd=h3}^G9i#LV691Gfq`+g~ zXDXHSXGQ^1u7Bl-E9GaP*X0FIE|ODwo)#I*L#ZDRjLs$`^A<$fXYw;op^wLMqzv2@0@2#SjIsDEmEhx;k6%Sm-MpuJnkYZ)xzc2@=)fsz5DyO- zjJj%Vv~OXeOdvh;u}t(!=q&XRD`EU%0T-i33d{H6(?S2#?2WPkm!Kd8*CLPoSirkH zgHBfA#!Vha6_9KtZ*IeP%N6yksbtrl0?!m#hE|}$w#dZI%z#zERPw=TAz~Tm!^deR z7HD=yFK^G9d&Hk_@5pkw(%I$eJ{2q;zGd_{P`lgsey)bBygUtK8;?m@%@w)gb;Sy9 ze;uX!l#vW*T=7JX%v|1lZ$~qNvAfn_3R-*jLK}U3#@m8^j1HKjKCF)?VDsQ8S$ZHH z6UjOxFLc%{U6xmyG64XRl!mkru=-3K_+1yi6_`m*K0DjbCKBuC4ZPlV=V$#$0-dH# zwHZ0@0VO2(gtL8eyc)@`$L%v=p%#&f)s;#LPQ`%Qhqa)h;f^ z33sQbbxS!fmSe+F#z-josuTtd!2mP)ID82xG4IILC-l{yZ@y#O&MKq^J8yOk_xzK@ zw&dT+J(!rEw^M&Sjd1|i`{iKym94&whsJm=8uj|@7RZ0DaI<_4QgUiDViVdi7BDp$ z_7^}gisqsfJZG*I^7b-RzpKYYnomm~iGI}_*NSMcjCl`bS} z;0T@ik0&=UW-?5&Dr=8aw7V6YM!fNvf`5=jTbFjcoLW}j-Ye8uX!9=HI8!l49^42? z#r$X|$JiC#_a46$@Hn1v*zmE#3zTmJaczBlxbInb+PeSogfV3j_0A5t_s6zi%hN!e z;FyEOR3BxE(qcKQ|5Gz8DACbKw~x&JI9wTAP|&k=Gv7pfpIdgunyp7{OJb@W#P4WtN9Y5!@=JoffrC%tT{6#0Q|BOydp6PB)CX=37 zy_ZjXq1*ZLX>>sA(hPM}jo<7Ccja$DlG#r>uzf2=89(hWgg?CJC@Y&h-#~VmB2T+>i>4wf-Q`=h1Fg4d!ijzL- zWp406uj1Xc{Yg5lP}@h0&ONKe+si8h@lsTk>dj(-_i2Xxp<4Xu*)!dk@_u#Qpivlf zFxyw>J9O{>xC@a2)uPcQ13%LcRu@NQy3s?8NS%Y3fk@zX>6Pi|ULG)|>?%hhfiy>U zWL?F4fxo&83eJo)+EY19R|0zqZp9qIrT08T<0U- zu5)!hM1c+SL&O8Mcl=LvPSCIREokl6Apo zRIxW46=xf{$7%tMg5@@12y^4qxAV0P4fi?3MxDg$qQO?h%<%4sfsvN^rK4 z)V?Y?5PP+A>;$?Z+=1zhP)%*4=8y&&&q2dGCM?!7Y zHL-UWfxhD%OG5Co?H)IuCpVn*?Pe7i!2dbbQvToZ0|rhsQQ*IhYOf8^?Lazq`=gjZ=3MHTa0JPxR{PCv#vRC{?G32FZn_6 z;%}Yek<_ZQ`)9JIemmTfDGfp*UM|I_yO-qhr&ar184T~W)oDH`|2K-Ujk|}eXIyWh zu1F#76fahcuG0|-Pd2e?eU&dg)n;_A0@WmDe$FU3q6*XX_)TN`7t3uPeeUag1*09& zNRxCa{E+_cjT_cldAS|^f;KK7lSvvq zS!~L!h{{%P#YsDM_YKr{3b+wS3 zh`W_9d>g9pkZzv##RGLCa#&PKTJEGLA+zIrqM>Iv7qs^#bxygzK&I|J^NNB*)^`4lcxu^)AZu`fnxEhu~+D|pUm#0wO zd9V7hRDCYDyFb2{D1V!m+YVYz0UIeMuC|6|DB#l#E^{|ty~Sg6*5>xbvqGW9zeX_( zQdEblM?tAUUP3BQ|Xh|P9=#PbDNubn3Cgfv!e zjh+DVv7Gd$2a1lUJIpVhKZk1PD)=L_m&P{rRovz`T&(VXeLup=f1#}2esH2au|3M; zGE*MisaI=dNB950axC2QtY_9@{K(7J1jklm_-U;(Ik1V35fW?rZm61?jzrz5W6 z0bL>=LL6KheP%H);evMjc|Kl)h`y>Zax%Xh%1zf7t37Tozr#4Q4h`GeaaNB7qU6~@ zH$~=&J=6Nf0PpK}AAQB{6EYW-VL<+|J+<^Pl|T!(%Nxbh?zQ}8SnHK&J`B>*(sG~I z;a%(2azzIi%t;)J;C%YSfJe^FC$m#e^((_a^MP#&ro})%OgBi|>^(|W;%aMan}Wl6 zmzI|D4FHDk--~c$)LS$IS_%q~!V+p0P6u@xBhl`A_Io^4$jS+M+itWvfZ1sT-xlv* zA4Ss_JReZKB3Y1tQV#lDjxk`O;UACK%Tzvq2bV3^Yonlu&cq`T%~%sioP+8L-&xnx zpUy<5)8Mv0n#b9^CfO}F$h&ymp)el82S5z|`HM~NK80$U`}=U1%r3LB{Yh-RJ*;roz}CLXJ&iyubL3u(Q!8cNj&W1t97lqh^nNO1{TS##vt6(C?%TH`tB=>11k+t| z&0Us?j{DgHLMxaAgD-0<)4G6ympR7mnYIWzGZ$?$zjd1E<8inYFX*c5=|;H-p)UM# z+s-#{er&vL&%NOSp?z;xy<_i}OX@G=6}w*ZL?USVPgSB9uv2d~@*B;+HFkeL#T9HC zpA{zF4Y6D;a*D5-X18!4-N>%3#?eF~In(8f;Om3!?X7mX0RLnnKGUF`L>IkTRL9+w z`D3wKcTsV1KBUi;^DK+(RMq5o`|fN_UELG?t+nCcI~1~_MYq2E*$SU&e5YQ^aOES+ zLvxom(Q5?>`2KcyW`3SyT0iphdr#fU+7CM4va_BhZ~L2@gP7%3DmT&$HL(6w0$vqk z9vWG!(Ot&JQR1dH5Jw(T zP(z+%jRyc;6~=Dn9t6xeUFp#!44U68dUKgw!aAShrW+Q(`=J=)KPKj<>z}XV?OjX+W7bGPLPPu95sr*+P`aQPMOo1&EG+xy zy9ss*SF<5E|9q<!2Xyg6;+{UQI-9aJH8I1$DTNsxOAew`Ge*;jIiO-p;L;Pe1H_Gh2BQXrFja{nn)G z-RiI`Tos%dgrKzJg~;D5^a%)++c|}zF^4R?&4C%tIu69fzEU7hQ>MyQfk)RiX^r21 z!Q}S~Ad|16OotamyY>D&3%Aaqkw#Y+2WO2uDaX&t?g%=Y-q`Ia$P zOr&L&7iI_DE?c^dPU?Ms+Q^g8JZHLb;E8PJ+Flm`b-V`v$bUz6oK}HX<-K8Er;+5m zm!XOmb4$nSY#j?@3R_98mz!)pU=ycqjd>HZ+ck4!GW>2Ex-ZJIvyB64o>!2pxA+%; z9LDfot3M7O9JrTuCPJY1piCo@plrrO=TV_y(DfPJW*K=-{mUhn(Uj}uyEB&apnemQ zqsxxlBlcIPbpy<4Y{C7F^XotM>}(&)eSA}Zt={6w_T+vfAmDvjw;GHbTm4t(|NP(n z#Vipz2p#4nEc2Y$j60f7&O{N!ihC3$<40aUAmhBOdEH1bpuXV?ze#x=%P$C>j552d zRTM(O?<_{SSoW>vG`v$VfN8Z-++_pmf!A9*`GE6BL4(d z|Aa$N`6zIWj3AL4a3v+Sq*w|2oa; z1z+tJYjrSG4C)T=W&MAwy>~p-{Tn}CMi~jIWLIW{va^dEWQLSo_C9g!l_Xh*V}^u| zJT$v`2`9L!(o?LV(?>_(5Y%iO4Xr znnBQTj;>3*Gg((?Wai`MO4{9Ny5x^&Ae#M_8AxkiZ*4g|sb4xFzw~K;U3;l{>O$R$ zdFdKI$*k4aH>Er6PD^}wjvXPTo3tSI=l?nq0617}y!Z92V8C37Aho&OP^ifTypH~* zf{3|Y=r9BSv}{otba>K=)&5P<>aOP51<4cTWf8^MOf$yQ^ii-)G)Bg_KJ5R5newD5xs>%-mY zaTus{&CPg}inz#|%w-arHdX24vO?R$!lgD*ta1lZc*P{PP#Unt!^(g)ZURmVoDPN1 z)B7O}&1zpIL?CT#E%@;jbvECe&>#(bj2#&8kWghQ3l8c?3JR{G`1P*NP95;NY3ui; zrLth++||eiy{yclOvaws_|4EP)@l#}uxU*LE&S^OPxCXnPTC?5>Unv6BjiI@aLJh4 z=5*@0`0CdRr2}9FP~qM_K9l16La<`IWmfHT8To3B>3tnzogLOYK}{37i~YCq(pIf% zB3Q*>txijA(LEZnHhEDwd7EiPsn;`9hzFE+-I3c}LtRWxlGWQOQ`0o)hDxT=QIRg+L8MDp0*{a#Qi(Nt z=f!jxsyJBKac}kY+;~|_%G+Ir&AvXWpuAl-+{L23yMCd>PTSP8HXKcRIexXXBjIOW z6WRzq7Mq=#pJgE9QR%6!Ep=Rd;rMm1&0>A=t{rsE@p+-*@FXUk!Lk_9M~R3}uE_68 z5mYXUgKHJCXNh~Z_m?^XmxT6@yOTOh|8~)INs_3jHHpv_IU%%p&TbiB;AZXx z1eM)(!f1-#d4|Z6?_{k0>2Pbil&AZA-!c?zV`)|8HWt6K3SKw2U5KL z6aIQa%R0zoRf5)zgs)nqII{_52uh?8uq;}W*j+kkEKW^QYZ*e*vIzq|pI@bpH$CF* z*IOdA^ZltIH`Tm`)z}4R&9%?WuE=qUcz_QekbPHm$BmboTEt>)_DQTZDH<=wt;cmM zxba!I-kAjj7n6wIPH|}VOHqX1xDvSr{eZW3ojISW0SswRRW0{QSbB6Tx#H}60{Cdpr$s;xUvXKi6ow^<`$97AFWLX5cj8rp>C7gMA(CuU zw*zj`-qyyp)j?*hDluum?d}V!LV1NfNp#4b16+WJr(nHgo7P4npSd<+kIiw6xvnhIqi!`-G*#DHp)^`6ZVbV2E4+9SW*tYR;z4y*Mv7_tvA*4&L z$g@QLZ3stL1n+%6LG0DVVR~jE6UwGVxu)5EL%w80MuJnj=~S*&ENx_OU!RWsv_GhY z(6Z*X32AYijpYgI=~SeS}$q}oC8wEGvnKMTi(T_h{O?)_y+^h^S*#yp#U_N z&fIwjka$u1@nf59QBKJ_W2J*kQD6)R`TTC_#+m$n41~pIT00?}gLT7)+ldG3g1RM4 z@$KqIZ$Vp6}7O+(4m z`V1ih7&Uphl3Gz3rn!}=^!S9jEo7$P z@_q9g0f+5{8yHVuE+;QhoTq5`4I8(24? zqo>D$wS5L3ul7C3V$H3OWBQG6@Sa18!Ho9DZ;dOHF7dRo@!b!^HeS8(N#$|f$I56D zLc{upJTuIX9`e(J_r=_9>kWbTx3>+L*0tY(gsW)UD0h-wlB@d=?Ogoewn+c&zx~s% zn2q5Yh?0U*!8^C-m$#ta2SIPnxyr9}&v6az;^c*4=c*=7{AOmR=z}Ab_VsIbh9`}y zh(|qKCN$F;iCFj;H0{4jLHAL4Zm}jKbme=P?&hH8{>L;+gKXKo#hj*qw=6baxtY~& zAjt&ge5rElX7I>&S5uIVOnf)Xm?Bmm(ScbsA2tY^BWYlRV^MN}Yi`>r6?C4zrRq;HRJ*E*i zkuf9Z?LbOezmoCHXi1)j=kc!&SgpG)<@1$ZY-hHDxJh!W*`&6Q6x4l-LFSdLHsm&R z70>(X`NMVdK^bRseQ>dlO{Y;}XbSLrTZDz82mr1h-M6}h4j-C^vHC@Tt@hZq#MC1Uk-;Lob_OcC9(@Idc zRO^+Rni^Ks>VIaXFeTo7{fU)TN30yNX$x>y<<;UU1ZR6Dv2H7P&{d@LZih*Ic@fed zdYjiL@}<{Kc2Ut2Hy+-M#|hbUGX`S3Pvl%&GO#CBHk9V(tX-*zmmYnv`qsCGHzv(6 zHJX$^T&Ik8a&>KEP81yyNJ@YcvU#!JwEL=)>bQ4NAp7kNi3)KybaaFmOpzuHso*G@ zWS@4G?8&KLCi5pq5eQ#ax_mBHBCTcelc);)Mo|HD?)~RefyOk+=ljH27$2P*viZ$_ zCDN?IuQzMw5~D%9mRpDNmF5NKOCpvYnr|cM>l*w7jPwCK3i} zzURXCl)k>wt@_<1)%{7a$s}$l>}U1S!ro9_!{Ck#6WOCeJc^ph;GyM2t-_(*5Wi{= zFGcSEa8ze7>sEfKFVZw`U8`cD2&HoBRa)x4*YCc_*7HVfJ=`VR%4#K6)nzrmb>PvC z;6_A3=%~B-_6v2&vsl55c^7bnoJZ%P0x|?)osCXkxiv1Uk2{RpWl=TRwh5i?*ej(f zmU+8(iTi3GoP0GjsziBjo!JJnj*O6J$@N|Kd&H1`Mw=JPF=jL}9}NKHG=^Qx-}pB< z&ex4Gg~hS%n>XQ3zo-x^xk1Uh_048zggCgUc#4mbK2%f1nPxG7N%`Yta$cN_%m|Ql zv!X%1A{B}>4Tr^r*t<@OTAL0VSXwH;qj;{7>2U;FFJDQAH?~HdTWePD628x4t2hc> z=YVkl83ZfPN`u&4JA)Gn8~q-HH{0IJj`y)4@@-y96@&rD!$cDEC9Lury-W`)H|HfA zo|T8{HyBKx4P6Vaw zTtW?2M(|qb4vL;g+qvBeq#riBsn}uwO}hgxWcV@rhddV;=U_2v&%G@8TKck zjNOu|8Y^Y#Y85*AsJ-56b`w?eXM0V6FpX?y$H{WZOQ?w1V0&G|*{vVCdWCQQ11nW% zSIIW+TFHD>%G+%NG8W##>?`~BT@rTt`lW=a>z>>Ks%Ouxo?8Ao+_BF8^=b=YP|5DJ z#4R?i%W==|#?`usHAH5YAz1dkW$%jI^~={$i?7-m+f$erD}Q8jQhG?H*p-@!hLMy`1X?XCM2Jhv-9MOuIa#o%_FnC8-4aJuRla#P}0II19ke@`8- zxwbnu#jda8G=K?*Q$}(TCrCNs8uPyihEK;nzA4mUJl6O1;>1oh?iwu27(Y9!eub ze|F1XO(#zklo1o6eZ>to!!~%$1OYu*;K`W&tW4f+;Q?!hcCIoSBt-PJsf+F!^+jHal zYip;+O!wvXyfVz4Yly}+WeaHf2SiVZ6C1sn_AvXHdd-#Ebl+vaO?`=YKYWD@)GR^; zR&ngAJWAs`V&9gvc+A6GGbKNXS!<7b;8PS&RZ7rnCJd^gK~`}x1&^SHn)rcZdw2WY z15`BhqrPZnp=|DrqRWy1T~<2Ly;z1g#mS+TZE{D9Hvj>D61#5IitwbPr=Jt2n<|XB zUOYj$ev;J{8Qb8@YN#=6aIdpoT(z!_$$Euie^g@mIx$apINOzo#+Bjz`q?)dH&pmf zSncfuykXxT2|Q&6-kPnWr6p`Hi4j%{^tk6gg!Q!L_U!Em-nt=paY$5W(C=mY;Go`f zLBUuh?cu~1cLiLj=S&11AR=}D!<$6+>yIWewX44tp8+IwxgzVuaX6&Bx*wyeYH)p7 z)f&$Qk-^Mf>no$umGf9%w{BlQBw{8fOgA3B8Dq5+pAI8~3|1?(C%DJKf!zZd>omSJiOI zBB!9j3YloQ={UmbSk@@CS&MBq!DMzOWGYgK+civR^Rqy?I7G#|f>Qw`N|b@2`+KE5 z%`K?PQF+&3s<-4zo7qpze%yO=#A70wfR6jT9eX7)Y7f~rio2e_5D(*cXR})`UEWKz z^ND**J!*&bmSE|*ps7fD^_y2%UB)|>bSxvdiYJEVLxnhJBGm`qd;cms-Kh~&=KItV zS-N>=>c)`oW(~iTs9!@Q{+kdWTY-fwdaE-pNAVQs{09E_h?AG*YFyPoKqy2>qzhfvUc#U6Pn4z3i%Vi3D6f?wzb;;ev(8A)*mpp9Y7c<-2hI58cL;C`rb6y#RM0tXW z@2GnwLpir9oJ7@kqV4Ioa;S29d;l6rG}cFPBIiG{UK^1iEddj2-#@;h-Unwk?90t?;?2r7s}P|W=W7=M1n<|974OYTGCtGJwy828VkToTTD(hcdrZ5x6{DvRULKRY(RK}0Cbg9vG2@2Y` zybCe0B{qKnu6KFTLG)=moY+Er&K)AvN|CA?M5CVZh{zSGSL4M&4b8Tle{-GrLPl&n zH3;?A#BFRsVb-wlqK6T9Ukxrn5aX$$xC>P;u`X zJBm@isEq=E#(^4f<#9E`!Uv_BIZ(QB#ylw9eC~R>Jf-U0F0J?!69ZoBkY}GnnT2}| z+HN#dTvFVireRh*6I-;9dwL92-rKjG*Y2;R#pR2q<|!VD%&Uo9FC=_3Ld`$7y4$r! z#M6rpK{)*#p`LJkfa?ebe%9>tSV|Af{!AI;lKQ&6eNoynBcLr?+APZdsIWbVOTPK6 zwL@7mnB{%lJ>d8jPH<8~IoSD#eKf!b7&$N~hlr1W@>*h#D{}Hno{pWa(#4DYtXGOv z`amTf!3ef(tFmX2D8Xdc;1xsbi^v*1X&%Eb?tvU8R@FYji>n9 z{b2&J*rLxl3@?ysg#3WOho!TYRY)xzv*+Km7q;ze7Bjh?uIAzpv$qwb<8=*(oZn-w zYgp~9XUi%95C|J3>GR5O(6tO`n4rlsG;64A;9`IDs7}X(x=Yg`^{d~r2b_tN7;u%i z;`Lni((Efk+cQ*w!M>?;JHCEz0w&ZQJjpN3BK9}F6z$Y0%Ty0k5zl4bqdPU~mQifC zFgMC2KnKmnBk(=~7bjfLySi7>ZdTI^f$@wDL2;|Zt1Ga&b^cv@5;BV9(hp9ZXs*Z= zbQPe(&M5vy{ew;p4RLarO@m8vQ20cjdqjf)e@9t=0W+MCr?o0!(^-O-m$yDq(8G%i zcYx1kujq}?0%e6S&}T9T%;eOazMkI$(d1Y;>d3~L~xJ3bl{8&2$) zb})As;xDE_DKeHG5eaT(lJr!|c9ByAR|$+fD;gPx)Iv2wSqGJYnr*G)tB(GW6+~B} z@wT>eQhsjn}$_LJ+>S2IqJrt3Z?#dkeEcX4ZC?!HHWk^c)YPsbvhS zA@FYe_J~tYIphF2sVyQ*rZ*ZhHWqx@Bz6zjo_k(~>t)l@JOW-7P1Vo~?9={&VOG-% z3xVk0wAV`ZKd29j&oEzS3EzE~laig6*VC-29O_J%No%Y}cJCgOb=cnP8!_~yPRbu0 zKxn6e$yY;hlq>zQd9DFyh|AJ7D!yv|AO(WZOR{8=vB;B8DKc*p{!xzfA`hU5YS9)O zHmJg{cspIz+8dv0sy9}ql>vLb(7m=TI&4r%^>_{cmwg`^zRDG7l}kUf&A_gfdW8Ki z)onT#%Zp$X1v>^PSZ7l-h{n6Sc@g6x`grhJ{}o%ZLStc*Q0f%PP5ypFG|fY4>B4I@$>bq9xfA3 z{b@dZH}#I9$FjduKnPL-h;ic|LXbtPe#foOt5%@Uf6^7XG?=E5 zT;)?HpVHAYsB!KxG&>Z2(dkH5?!Ys z7V0+InJF|ppmEj|#~VF^hgaP^{Ok=sr+%LSY`EHdzdxV0WtV-(>Mk7xLL9u*NCfcURe!xR%Qq=vff%s$91*X2&UH0z zO#jb1=x-2~Ra{IXJZ!*9!Mx@5>zfY$gu`uNOHBNz*TG>uc43;$%O90#6)s^Q`_87`Ha(Z-x+C%hojaIT6NUsW%;#{eB>-*1UYR`YZdS(ibJ9!1v@J$tzsRUIN z0)tO^GNvgj&`&=Ev>JsiU(s}kNsXRf8{E3RrRR!zr23jfd$QToT2@c$s8qKYk?4TB zdh6ieU~|JvovRsjR8vHnCx~ps^(O|m$J%jHUVdu3bR<{$vHJHA43(Xn0C|a6D=%e7 zDV9txKqq`Uro!^5*cF+vzgI_78rHMu6oZb%p%Pu3qDr~hwqOX$%Jw+2F#ytq+b{r9 zw*eISNWdfM@=WgN_WcI@?TmnWZSNIVnxSpw#em~DuZ=ujD|n7cZAnB<c%Yt`Z)6PQ}Z9HKImj)(Xrgk zsY>Q8C`_^da!vgGHuLJu)AQZZg?BXx3|^IeAM2{EY}&1SnSGb~x8)q3Fjn>*)UjEB zV=J|e*!r&1yU0Ij&FL`=zugw6BY#f9L^EM{e}4i!diY<*&D{R$op7r zFB}iVek!zHBFr0?WnvBb!n6wA!~e;_3E{c4=7yL8daH0~HrINzwagf>kqV|qVFd`^l=l+@zH{(xoA$r%DmcY`Y+%Vk z@gP86VPEE2)&(g0FTG<&%}6*9^SSW7z&r($5`y?^7e()I#*7S`S@>$nLlZ)FU;S3P zy7ZNShrDnEPRWi2DIAe&#y(~#(Pk&Xw!JvM4dh=IQGp6QUgo{+)Vi7`GMrfU84F?v z+6(Hi$UDrc!jJyK!O@kO5nYA`Ig2vlkx%K5Z~1|{a466|)=LoxN7tZXz`e>EuadlK zB_&J{y&%TJ$TiY!3*R0sEk!Zu^BO-)Zq z4S74Mfz?n^safM4zZxeNaILd-G=c7CBvA;2?ht_U#c9XT#vlvdcpQy>j4=p{p!S0O zfI7|NN7c33GQ)fPV+H}o#c{n@UA=^r7^P9b9l4Pec+7WzC!M|LD()Xo>i{?{pdI@- zvAp^G?r)TqFDjq=b&XZ;Z!}#uXIGM5eiy@#7RYTir!vkJ+91Id71$pS@;Y7iz~CII zFI*M?<#CGp9Jo=HWq#>Ry863jT@e0!g#1r1`jB3rqx zA6p(2KH)mRd?1OFCJw+hXF`$uH&SAZbI1PbLDPgp~tuk z*K??Cdkmb+<^mbG4*z4oGF+-efaWK4yxy$juwGY2Na(tgV`f3a9(q?+0 zcxDn`QGt;nXM^|4ciA$7?K#F_eQI3vJ&rOK5dd6+8>B$sOww1q+C|B)N`Li#_K?%JhYc1exb2TKs333!&Uc{LAmgctaX>*jOGi;d+hI?*{#NPzZjsXG zP^W1m)MIi*ib#b3#Z7cF%99(FpMHAvZeJrtA9FkGklOZvW;5H>F-<;gd!|Ge!C9VM zG-|;D4Q}%fp-Zn{3Ob`!w_S7U7_2yn;q%PdEJeAQZQmw4Pr|{W5C(hg5;@m8&|^5! z2iwHt;52$cEem+Rd)bpAW%Az9J!g)I?NHCdp@xdqY-bGd=t{B9po*hp4D#fL{Qs&> zbw~)A{!lk2_1&QEg|E~wgT9A78#RAVJt99GIrVx_|6dwaegvxBw@x+?_7ovD+dK8V z>iy0V@fdNtBGb9W$q(5PogboP`%VRT*It0+KKcoFk*|Ihp8(u-HHyM@EB)T97xKZ5`@(Jr zS_|Qn8=>D?3+01CCSM%#&AD^GEacK;ew)6IHnoDh_P~HT+pVW%YQE{k@3w-KdjrfV zgmhDYE)bBSS{`(F$`>bn6r04zm+FxE zV7Q=aOWNibkOE2Iv-b$TR*;QsP=hu`?Xy}u(Ds&?+gI0V!7QbmI8EofZC<=1Eu*8i z4b2TEUzGt7<`@3AhKF6Ee`UJeOlWEN8s~-f*ToKuHTYbmvz5b9Yei)p<{`)0CZOf4 z(7+i@t&@|EJb8hf-kC|49!@m7(SU&g|B6_psro~~(H zIS><5f~JHOu78F7h`7Ig_xB&=B85Tgmvf2_bd**Fc5gWGW;00FVaA}VBD1K-h}&_p z`320zik25KR9okjl!d4f=ZeUwaIvzsmUPj~Fi4~mh*eY_7T*qRGMA8*%{z1U49(U% z%!r5x3unU~7BWiGpme#Y&`@O)A-;x08EWbZJ&c4msj2CbU)BWlAr8}1T&DPE#lcj5 zqwUr6W~AW7bGQ0LL6j1bnx0k{zL^leHI^J+ushHFWy-0}L{GunMe%8=Dn zt7Y?w`8<~QRq>^=TlTBnL2qFZ#(L^GJ>Auxw{B?pSx)6V`oYx*1J;f-N9E1jU!k)i zE7(WHQhPjOnpR#PsG?l`AH3Xv{#jFZ+)UH31qN8_KNZ^5t7h?bEpkCWiQ9;}aT;Tm zjgSN8)V#_9V`5~0Y1T5)@_UPm>MRoAqk>G|d=b-Gwx@ zTvPZ+8a3FZRTop^+5L(qu0q6nqOqp6)hnG*L4l~XV+x|gSPV~7+mM$S78l{;T?*K5 z&CJTGco`4-jQrj{+1z67iezS2Y4^b<+l=;GYx8T4^>Y~-;>r?sQyc7CzeUc|3dF^? zr(#!Ed4OJT&(_cm0x85kOW{RMhIcKJpOYvlVP-m)LuUu&Qn%0J~K&XPG3 z$^g$kDsRbVgzA(?Fnm0ptGeN@zWti~t2l%++2jSX2o4Rhp$0D~oLJ&jcbU8CQ1>t0 z9EVQUpcu8?TNKaVmdXNeU*!+5zYOGZn}n{gy1>BGaS1n);qXuF?CiuZKquHKU0a=M zQQLlEvx1%au&mqP6Z7&QbZ05C=7gud%YpfPCDg!i=4v`)#G9}%O*AssOizcWy^~$3 zX!E!)X0XJpXrl_aEL|`bwY$1ojI-JDdztNfQ>U-DZ03uuhsh_vTHiOfU!l-V9B7>J zgAP{{!+paMNvBTZWT|GF^+rVrk&zc($uengUu>(LPJSa$XrRBny{*&lW75$%p8Hs4 zD7VTAG_JA8lC9R}Rs59eHe3)F^W@61BjWOc6TIf3Ps)#cXZ810twojFbd9-;9xt(e zL&c}o$m82J^sfC!h^|QA3CTFq%gR2cw-$uzK-OfcJdR#l+PZC1CtXU*Mf<>;}UF>u!goA)_FrnhPo3o=gj5(mOlI|V*nH2|`|)Qc>lfQlTW61je) z2z&@a(P0PCfejXl>1X$QAlZijzb|LRfO8rSM6GTu#@R_}X+?OwI&7eQik#UG9zbm| zGJ360t?8Q;^@+P8*9zb=DaOWn9Fdp~E?UBnI+CpQRontpthZ1F5i;rk3lN*=>F*Ch zsUux@aasYo+$o(YyhhB!t1U*MqN31;0~!X^f&HgX$wrkmo+A+m;Oo! zSMxVuv~YA1D2@~=B=8wMKlt{g=L2PRFakB?(;SrQ;6YqFaYZY{oOP)2E`cgM0f*7< z$;aNmyKE3DUO-vrg>(hY98m50DE{#4))UY1<8}I+xPKqgZ}D05DOWK}_)h#G;cy1V z167ppuBZ@Ud$PAFkz^t_Lc~`GOuI+Tqc-ns*OlFrJp&!t}kmt{}>rUj?VR0iq?Xq}I+ZHi}9k>vB0|pyTcTjK0?oHs1D{SLGR)0hmCFRdKqePoR2${+PW+JQC~Fsp);%J{PG{6 z41qyD%4zUodFr77o~zR1z-d%G4wy=kAYw4WC+(C+L#dKjYt>rH(Z98Jb&*}~;v=I= zWK+gUJ`*NaH#sS;W9RtA?@OCr$>TPJLx1)*IwZ?7L7G9o&3b)Oo_$2_Yu)FKJtcNc z7U)XaH+oZrK3~$fU>L?#3QzHbBoW}wJ9HO3&>?*k5m3#5@(;|9R5TEAak}i&0h~utyBl)*J|A~xv)@56(*4(YP%x7+2TJk6A}($q1yU- z!@`GdYNV4(3Y>ko9x-roL7j8{W}+UTr=8^LlBz`>kcwL9IhQw{!3!Ji7Pp5=Z5KUG zPybj_@^~-p^kWY7#bMW*MB+1+cuPb-kSQMbGa5vXOIwV(y|sjL-#KO~QtL>yt^GO} zYb8E$J;0SAjqs@?kb?5s`$yu`ed}2HWQ4F*n;WKgMLv7})2#oZAAkI)1vuHcMGsJ* z{z6^`@}(`z{u%}LcSwpUj)Sof=;dFmHW!IlHi+;DF_oV4^`v6cH++QN2g+FT@HY(C znJ6e3DR|Bi@mL^F-0j2R(qDKZ$ZlS7lUIQS3Y4GCJ};Xo)bnrT?w8p8%n(4%oaYjiVB=bH{7+K>1n*h3G49 z93sJeY(&35H;n;LzHl$26sXy{R5TtT+}$m6PvSKhoS-9*#`b%!U=|dynT4BKF#YKo zlA5laZB&Fg2NUktEC!+AwcxpR2jPsJWVKT3&I_=8b#?VMp?xbvAIIY<04ZHZlXlLB z;}hfYB*g}uz8dGje2b2dP~Vw%mJ}o;0bgUTl!|}qBj@NNXZp|(+@W;K!MY`#n2LfC z#LqZ!ca%sIc@4#qmRR-L6arhpSkS(9LSGmdJb>?aR+l)O>g$aVK`uD?+cocxKiqz_ zCt4+#h5(e)L`jCEho1i+f{ivrN$lEk&zbQcI+bxK3k`Uf@|$rTr}}#(=MI3o@#bVt1yo$Lj`K5K$}Masxw2B9#Pw=|uROQsm^JKq(cSZ_?;Z5{la;zML_|M&E3C*ffC#LZWOEYuy7F;X~ zOey~f<>6NdaLF&|k$g=g>CE>0(+r!hqgb{_WS-eGf9JPUmE&7 zs>?iVL21^-Zk@vQR~?iw-#fuX;;;~EEVw*WucK>4t?iUiy7usM*ng@ZB892ZAzTVt z&Z13@CIcmE{;Hs}@^yvAqhWEW%evByFVIEwf{^gFCy54+pUMM5(KG=T8$rnaTwYl@ zG;ApIaY$TTaCAk@cPUd>Wbg&{f~MzW0}!%>X$$0c9cei|C#M0&rxPXB%T4tFPJW`CzbP_F2|JLo|?0a zp~2gFBUGxhF5lPI@($LX`29RS`BWwxZp{~PU)d%>hl}ejM7(t(Ac~G&DmppgQX-B= zL3R}HCxwhh>0e0i<7|UL1hv90rRH9$KXYjY0;j$?XJvDVFK^x;70mrgPX9JV@h4ww zgPXl)95<=ooJ@o&ON;=br|i^`2pUiqgZ~53vnAlM2Wn8i5obUemc|b>@h=qmU)|A0 z$V|SvGc!Ym$lR#!?tTT>oX=jyAfTiEDp*N+0k3*8_hM6Io;PY_zhb-~(dZ*}b#HFM zdSg{XBs%7W`}32*I33*Nlb*_L2sb)RBs*nGNSlVP{#-3@j{gQ%i-F$*W%HxRCs7JO?R* z{~7YB99M3j=Wl);|5sca&MY^-+&gZ<2kyV~TEssSCx55zKz-;I&GAA@Kr%+6y!oaX z!9PSW;AY6k$moRGsZ2J$f1PB2Y{d=bFHcCn*R6DvAW_V+f$30CtTH%Zyy-=USVz#w zWfz?rh=%}5bh>H&z3Lt(`5n8Rc*q7v<($J|(px@?A_JdP`cX68aC5?N$ z-AV21YI(--?EG7M`+~8ujn^bri9GieZSzYrw&Rf`V-_u|oD6Z)Y`)>qa*i+>b#8JV zQZkC0Na|HEtV^HhBme~9#4(ea4i7)>MfC`07~}^|BG4+i zN!Q+P-X2awlw`aAb@_2nm;VBpRKAvCvxlgEl~p1T>E``=;p2b6&>>3#p5(^Tc`)#I zn$AQ8eJi%v-|Ljg3eB(#QR39>tV!>hV?~czr-rY5p0Wf_wI4jToB}8iV(FRm*+^<4 zpt2s=Bd{=M<<^h|k$lzFZjgShtyxdavdzUi=Bt`HaW;%uT%%t>;7+_zcp>zh64EC<%~iuS7ZS;>&7WC^pKbz=fscraTXhBdK^Y>v`G9J z(7R@$oLNt}uL=+vb+djnnW?!u1_nm_ntCK7`g7_LLgdqbRS4U!p$bdZ?q%|kr(=6N zu*sE}#CAV|0e>H{mVd6`0%`?g;w^s#`L3;~6-*i7sez_lP)C{^|3m6D&+hquDs}4c z{h^BC{NCMm{=X;_Y7}MS?9r@OavkJlzRu{=pb&my1QVrk!reJpb}()bYxXf};Tyv( zf3Y{N&r#BtuvfS>FSv$E)q8^Zr>H3i<9`(9x&MQI6prRS$c`TzX2*mp zf`eyVkxq`#9!}JWxjL}`fprv>mi3>C{EwGWV)u~Qr(g)o8C+W8o&$zH_fNqj7Wv(? z*zCV05`TxoatWy1YR};;Q29~%8!3Zsm$XZ(-_QU(A5dc=3ChP(n;cL`D8AJPf$Ik!71vpe5Yn5Vw z@(e2^VD~ph1T29?=Ro8~fSO!FD>R5w z;0Lr{w*OuhmFWbc*O>jbV}RcwM)f?mo%8&0R_dj*-Y?#sQGzGbJ`bm2aDXb3l~tJN6jY%lQxk>wcFKAvcZ@~ckI zZqtR)l(BufbY8wF`>WaV;QZWt{j9S2s-mn_cw`v(Z@^*NnQuU8wNq6|cJ;-~yh|y; zvlAFzbi=qRUS^Ms&}C`9<*ro`q_OE?SEhTvxj`=%F7$0Zf^&Iku^7{Ynoi>+A$(~$ z{vsOc*Djwpi6wmE=ttKPtRMv_O&2c#`GqQ%j!rE217CvEhrgi}c}^IbEkg`{Eb`Yc zKNGopIreESQy!W8%;@JkEsX3wFGk7;?u9`<`iA-~Fl&+BT*M(D#|(LK=GZ@eu%r|k zIhJyHxeN}*FhylagG&YVhQ^C6&so*tL>3iw+Y9o0)G=z_Kplx*u-mFwNy>!;>@*b>gvp`!?`VtAgk|CbLpR z5`Dna!sY)5hnnh8-V##*X`ih(d78x%nDYwozo%S=X;F90Om=2BM{T}vZ9+iFL z>N9_v2sqy)9QZ30dislA55fp(&z}}kt>yn@TIA?xezNbCr}DF5hW9k|O5+=gw^qTR zMG*=Cdntj{Ys5(ue7PA$dlp6NyHrAQrJD^o(;55IAEw`~7gZ(iv|Rd+t?i^oZR}`~ zrMh}#vi%EWgjqqQ|4@!`f)RLGb1h?iLqih!>9a}p6a$m>0{V(^O|dcrK=n3mrb<57VbdcYWp`&qxGMv?3ta&DUoOyY79Rx_GgxYPPS)M&^#@MGodr zb`1>^0jjqZy1}~%Gpn4U>Ir=_#Q#6$($kVQ)FA7!X1SWgBuK<}GC$X@$zfJ$y`W2= zV{;-hp|@AEuygb6dWq)lvWK9_7Jt$HdD6Tmz@=T{wnU$J^ZdDX4TxpxHwv? z8gCX(V}{@irv}|=@M5~fxo+40xW2x3wJNaSje^_t$>}~9c$Er=zS9tryLar2$ko7-Fqk%5T{ZwD;C)On{(R9G?~UN;D-YbN{xy=wQnH{1GPjA{47 zvL$B{8%*^ra{h!`F&2$;kXzJm0#>0g>LsxB-v=xxGvFt`VFvZ>P9zqY49k(Q1 zUY?7Yd?~c&XJlaTy$+{GBB70UX*Hm?$j;Xlu! zOyYL5+H-2xocQNR^+M}YGPcSVtD`zwuIL_$P9nv;mQ5tVvqpD^fFlrnaq{r#yQ47( z$W5Ewbya@bMASzaMzoUXIHRmJQ8qK1y-V+uzFd##wn7k%V@NLR?>J}aX$Y3&Jv06M znd$N;dFMf6C9;d;16Ea0irU(8QY$TfPIrpu<`$MbHjq@#nvqVOVW96?Wp`G;^v0Og z>gx1OKj+whNfDvVrl_RC`GR|M#oGfNZd5zM#V*3?F1vVN(o<6IsYA=reFj)vHkpPd zoYsdRtE+2Uc7@Bu3!0{)ngK&O4xwvy&e59JTt=y>9)D3w9G(mj+LhRC+TYQ@!}m*! zI>sjFJQ_}=%m zEhZKm?cRO%usawK1qFra{^f-+zfFPt4VhJ+1R9}WYCCuT`&L(SXwindvxfD2(K5^G zGhE8q(Bf}%=JLcs6ORzi<|T{xl3OYgP?}ZNk`>))h|rejLfibx+FBx$(DF5A8ZWW5 zg2gWp?OAV^`8hc_Od1;2uHZZSlQdoYIwm=7o&8V16-666N8WQb zndQLq8`yTg8E%~1HKHXXTU}pIIYlvMz)bWUnG-8JbZDwt%qSOoZ)*kb2qIlUAyU;C zj>gr4>-^;J>)hOQ<%m}j!L^Ds%h3ExhcuODDwa-YWek=`SqT`7S1>ZX88?3MqHo~t z_PddwS!h>7JVAL&Yij`S>Pptmt>XEd40+bw2x7qYCk zgyjexht|NTdC2L4_2PxNlHIh7O{eNcdOl}EpC(Dx%3e`E7g!{8P}7M3j|*ogcfp=nMI*1DVn>z zuiR!YWo%6ockIsR30>X!uqq4Qpk&k*Pq+F;Uq~U+Vg8oqb0n+F*id^4>$XFml=}Km z>HWT3)8%Di!NqIS-1}B(HTO7Tnw-{fvZ&yxim!$z7c{r+S2tN5Yu1_HCE>EzJ|m@~ zQeN0E^Jur~+HK6(-d#vnI=3j^`i-?nT-{;Le7B%VaIIy!#n1i)n166T)MbPEq-*e{ z{O8E~+bew9$HVCfjHPoZUugY&xH=%Q^yZgQ!;oyxWZ#qeUAA#(ugSGpO8_G37A<&t>lffe}NzYL!_`U7{(QG zRYk0w7YqLXvGk-aqsOGpXb@{^S|HseA>MePuRH@>>2;h2D^)$S6rn30EDMK&La>DUpFUqFBK1)%0rLM z17Xz2l*7Qgwl+4Sde7MU^kBYhPKOJ)yI`o!;n-ddqs<-Xh1b2hz}FSH_R6Zs=h)3^ z>!`gj!Xz5JvuC&rR2_R_3clfB1ah90iDz8nT5wx(J)PeJ5zf(_TJCITSuHg?n}&;) z?QGNERhF>)m?(J#B<`FhJJw$xE5`qBGUOHTz;m0 z+*uHAGZ{mwTDzZ*{&WK$?T}%AKbfTXI|%%m|BbnW%x2SfTCv^XtwRdpln6(a#KVJ& zY4p2eZ)YdO++W;m8@yspNp-U}bl*7Bt`Q3=s1-zArRDsyzy6W_6 zr(dtQ3Gkus2*eW(2KAT*Oe|2FI=?&IC;QYW*axp#4R_p4jXmBsm_<~8^ncXuWZgM0 z*!V1g@C3$jG&Mh*ng3sH&cGA*go2WF74!VQ&uH(BBF)BzW`{$%NMoy|mha*P3n6TN z?&Zr$41iON$$!}R7o4Km%Q^ij5!qa>>Y+xAUhq>v^5V9(zC8$eTkQ37TXFoUKb`S0 z^Wkbyf9l(Me)_18Hfo_ajDi$``xwQx9&Dg`eX%pT?nM96VsN}t&Uvv#jX@h3EPgod z@_qZzuut1(4QG{N3=9kh#sP<-=y=XMRDUcii?W`}eR)y1TmKPgmO4 zvZ}VCUFB&VnuMJL2~|#1t=G!t_w5G{YH_MFUu^B2_0tyoR~rRF0C`|jSXJNST7RrN zSAoPv zi%-!DUZjs>ei9=!2QiucS^1&B-AK~HMHI}e`te<*e0^_S@udYjWbz4Ig9t;HBpQci zdJ%faJ&sMt9eH`@Rb0}uPxGAc%GE4Wv{I2JCJ;@!+e%X3ajy7R`TZG8cDC{@kN2Yt z^it&`nM`+EOeObxK-x$}M^N}%E?E2#j z4-dW~ed$2(zIU~EmI~|BYVR8F)1mZXxeejqA%UDcP0c)+<)x*b**pmY?L=7xsG<&CPHf<;^qMMdtXv=Vn2(G~zfnJ!76x zx;nR3wK>icF9l(-+S}*tIN99}mEBd-QH+h1Ef*{4r_~7TEKUvvX`Fs=bE2$+plLTn zQDK;r<>9C7#FL|4hi`owhSVVMir6?CEK$SvVG-ZTGF8!zzg6bxgN5gHHkz`!p~}8D zrJGUm>EM>q%bDvL$atJUxMgSE?{=9qzMF*BuBv>c*VPc=A#D>oS%UGjhm7k~()#RZ zU4CnetmkO#?D@`yxKndZC_WW4Wl{Spdb*z`_Dco+=f@AB+$>k%7WnFIDDVo0Lm5L$ z%dsY***{%Z?=o(CJKl)NikDd-v^enFOM8|Cot?nG84Z5QU^*Q3rDa^1f-(xZ@p~2a zfd&Rftc#^VmbE^@J_b5-rAkUlUGKZ=t)-0lbmZ)v5 zr3XvuzHj-|(d=cUt9b!-{in@)eMkH9F^{nCzWQu%y{BqIPeX$TpWUkTqn8OGo&wf1nCv(w7;jJP=U>a}IHBk%Hc=iTt*{^||to&3=1t{i3k1~f!nb`Pig(rbs` zBf>A)_IK1EVSxFv%;YS&C-6>d8tlHYrB{FIGt}Faezl?`f)o|u{itNaSl5qGJ}^-F z@YOf2{_O1Ay@Q?pgUsROj2111vOfRHYSC{a6*t8t#>^`Db zfuuK?6A9M2^L|MHxl4IPg^Z(eWUSgUJ_~|`Vc|xZsHo&c%`89Htbue7(u%zNQBi0NJ>m;1exjbE0!K~e-|KAa}Zk@vIfnZ6|OVy9U?Rla%&%Z;un2+AB_L%2Wj zu7|5~{dIn1*o)JA;okA;xqR-EziK7|^1$~n_VR5KTB&vW^`jG3c{5^{YWggoSDbU>g!R*4JkX%cOq zj%1pTTBuaQ!lTx^*rX?iT10@NpFJUf!dEkGHwe3GQ6pTJW(;NZhBTDg^p5-C;59M7 zeG3;sp}v2#TjO#PRR4DA4sBe+>vxE-2VPNq<2Zz!2_X%!PpG{gU2scBZ*-2$#;NHH zcl;(nx)OC-8@hfnIH-6sYX6vfb;R=9t}8AIrFY{)X39(0$-kXX-;ewyI1lzC$sU<~ zAn<)s?&h3J5<8U?@|-H zkgl|=|Kvw)ysHB*abW@ni|&rY{ylDKcX<7~`sqxAd8Zu3{d`&q*DA%*M9u3Z zL2;LI25I#gf0>}6l=UF|f3QT)9|dpan1pqW9>(&Xd8qCz7% z=mUL&R=#T=Zs5@$)(E(J~+a{G<}bcat@LNjs*6 z#^PckywQ{6t?gU;8 z98}qetw+`NIzAiLhQkm7gJDz2Nuf^U>Jl`{bEYg>O<5D?R&4g#MRF0DIE zhR_b?wXnZ=XV%1Y>Qt5b`X_?$Ilosb;%pAvsSyz|a`&B8^^SI*_YMw*+g=ze3tF)E$#Fi3T$;_X3m)J7Hf)M; zexgL-d?+^fPtd&r5=rv1EbDUvO(M%#w9pW#xnzN|r(Gk46w2MIGX~PLSMx5ixA?|D z-*z_S3R3Z31p$vn(8`& zpP#>{aY3@gtGe2ndtT02q1WxbJk zY9*;k^+s@FG_K;4kyuZ!dNR_w5pmVSx#-af+wgJKl5z8QY9_W`o>f?K4=1O-cYJ*kjGKFkhj1Xg9EC2p`00tc^E>i8CN@)=o?MXlknFP)ncUVWtM_nghBP=9Dr+2u!VCqdu za&qtXdz?ieE-wmSUfdk^%;h)nHa61hkPKjLt5U&aG1sUWXcUc%jw9Pk=}KGaUX>;- z7k759EK4g;^)W_+*m|PEO)!H~MtokSKi{KfO0_90AwhH0da@{@6x~r9b7j;-(oeC@ zaPIm(Yi%IAYBe53L6qdXJ9mz^Rw9Nm4?JFkGeAjNkSAECN+5s&6g0N3%sHw$ONS>urTE3NgfbrQCRkc)4Tk_M-|~ z$!l}HpEzlVo85`a%*z#h>|t8LnEtvN7F{sz4?xHBadenk2j`q9CN$g@(1#5=A=l-E zK&xeDKe$mkAmEC9Mywx9F<@GvPG^%KV452N4;MF7_QAN-60Mp)k@{i!`IOt6{^xx! z0}(=<@%Q_+{n$zxMo#ltv->5+9HET?KBt?b`TEiYRg#|=Hpc?3VgR@8T=!ok#uM z@*$|G`pt6;u?Y(YbVx8{nmmrV!)u)gFaj{nm2L<2(#nn~Go>!I7_phzmAfUU6EnwO zE}uOuw}xil;XS8? z?+}JaEa!cXD=VI;T4rXS6`;(N7Y42}u{dcBpyFyp43{kH@$KBA`Zj=7*VEshhCh7m zgpu*Vdrucw)KgA^PvJ5s zH;{nx6GO5CoeHpVxA%7HWwB&!j!W5{$2IRF0wycA_yq z^iE_pp?KWPppj{lj5XmpPCY2>Uss z_Mo|qM2@d4hH9Uf>QiK?6{Qxl9NR0Nn2RqguwA=@zspv2bTA)&_H6%(gRYa4N|UKW zq|IU~r?S(0vk{lkWDK5UNKt_(a?lOW<5r{9Z8nw=KMdO}**MS3j2PlW z+_ayRB?^UwrV7!yKpy$(lQIfwJ%V5eqwSGtWDrmXg^n|V2~7=J_j#KWCJv6QEBTgE zS^@7n5hSgO^-q|Y^<3DRP2=O@9=Q@gyRgl1ek-}SS+2_*6YJoR<*^K_yJmiRBi@;V_fA>W5+hM(&Fp2p;>DllHbAcUvOkh zK4c4RSicwKIab}&$?KqLxgTNvc#3gGKH2daKVib7Dx2CdSvhq8I zlkXC9@21K?clli)cS?CKl$ooUEMY?2ebb2=X2OUB0v5^UlTA;94@~KpE(%BE+gd!stzPtIgL>w6 zMjswIilW3~;m$ryO`J%@q$z0dqk_mbT~Whzd)_D6#}j~RHR36!LAI=8{FQ%2+j-`# zddrJuAdJq-;}=!R50l-67G%b5lQsBe7Og5f5hrP&z|lDx(4>gndE4dI=ZrQ~vky=& zQ;qo_4D3B84XlU*|ND&~ZvuT5ULg3lbSCyWLwjD#L6Mo-_(p|Lia<_2J6$3} zmi(|o&H1$i2oe!8DUM6&_>nC0a;B)z%pMw99qAHYx=Vh|ZDc-Su$#7shM9G>XLL*# z5mV(fkKZr(=nGHy);Ep@Cjx^0@tl%Tmv?t4@vH@4&uo`)rHqCumocfgcjIx(Yw_gG ztSWZN#)ku7bwnBjO!(}n3AYyo+yh{rDjfG{N?7yPcZq@>3-2}Xdj_qCIq;_wL; zLXXbw9H>5{r%$N9fh}_K4WI3JTz}FAeN`}?QxI*>_S>ND0n^|cA|`8FL&;7t@d;v1 z(@%?}X9cP*kt-};j;bZX3fQhKO1s#OTC~J!^(TUNn<@WFTtK2K+-WE?XODYDYqqqy zO1R#FCaV%?vJO=FaqFLooFi7v&WjqaqKEa&Yi1v>%=gMyS;%tR5qBcKv8}6sOom;R zW8&go#_07YbpN^hzzssu5O!G`BCh|Skhq67dIuTdqQI{t41ajLwZ%Hs7`BIbVBu+q z65vQwJyWrLD+`}>NhI3dB3^}khvwAdD|Kb1vaCEB(~Ute3@y zaLk+h;~<(eJl7$7r92q&66gpaB1wNEEj(I>52(AJ%(bnyqvIwMTzXR6+^WJ->1=|i zOy9kQx8BN*w>3*B$sC~@iw|&5=ruF%rytLoLCb|bERY?)Yt%2wDMDg^P>oFOAR^0# zutG8Y1q62Ibjo^1vNhQ&Rni=t-VklfWPalCLVcQGiWZ8A_$c%3z!SXFq%X7d8yf*m zD7I+O6RHkx{`bvKDOAh~Gl?$y9`P_wj--sc?hG#Iw6xqOLJ4ZWCiuL%g_I`*Yo^g| zCV7pN8nduTdw8f^F{e{bdDip}!DhTYY<@a&Kb9o_n@JswS1U0jWkr`)7hbW{)7kT> z{a%vk3-L$+Avrrtyy|(bV-~DaCx2A2%|X5OJu?sKGD!Zli>R5@ZX>r8b;PTC$|v+l zUJP5KbiKg;D$pf)f~yDm%PT$~w^j<`tM`zgD3^sFj4K}^qN7*wm&9SMCYYr1%rm=W znp~@e(kG`gwvBCwCjxbt02i*Bs(uHTY?Brh+4E`$%6q==RsSv26= z9!AZUM8Pzn&(Gt5ZNKuyKo;JA z?V`O||4dJi{fEe?jEBE{-!Ev@tItD7!jFK?LnKR4)}DIys#6(c^r$iyzkz%M#?SO7!iJNSw(EKanKv0NT7G}uLz00^SgOp{S7SFAJMatiCR5l-vTA$WtHXMP4M@_v9$Xs*|vj$y7Lz2ofkbY^LNpA;4KMb3#iY zm`hw+L&S^j(S$+#<_d3!@BTsuq^HzLEO~M9K10$OF$sQmUkEkI!(40>M#O|b z9W(TTfh`KR?cxHTG^@9NVm1xFv7Y?1p$^Ci?({$yPM)Mo4oGn;?mNndfsQLQ@zbn$ zNyH(K+M3I${hX~$K;^I>m0kWWh7!!_d&i?lS;uvks%ly`^jSUrv#|irP|L##5*m{0 zh?P%9xDcvQyY4nd!#Z)Odwvs^S(!UgXhBh1$!Kww8vI+}x+wbjQ0%sOH+Md#c{=MZ zZRaxC4|neDaIP)!8RyfuSey0HH%s2}GZe?u0DD$c(DR>Z2~mc8m?<${ zmX3^wFp?e1@_Ztt1oNluHJps}9U!uiQ^@OL-#V~b26u*Xblg7nFD-yzpZ7U;Yy5Ga z>vLP03Qf?6f5*MQ6Mq+lsC}l6L68SKRJO_)po9(LFCQx<26RCRiFpvPu6zo$#LV7r z@WXo@wS-JkA6Dgy=?e-BEV?Q-*vV&Fo?frMv*P&lG4lg3K0KG-=|h|^*(Hr0x_$I4 z$#eqyX}~@s#&O+Ts4xWez5utPT?#GfrT=S zN5ax|&!Ol6J;U7z#ioRXvZppOu6?)t>^ccXQF*fOHlkT37uhX}QEO0=Mmv6E5qgs* zNRdt0&j`BM<5|~k<2@TU&UPMgX>w2CaBQ^=-3cdVwqQ{nb{ei4BfuA=EXO_=k^t`V zm+XxDAt9h7k;bYIF2&F9BYloY4#03A2ft%D+-5lk_BrhIoU>$QQ=8c6I+=T_SX?vGFv2|~o zh|^^Vv4DW3X~TE3l4CR-3}E+)tpZQv|9W`<>ynk#!U9yaa{=1N`EnTsHRlu7pn|+% zWgU{uhFwUJ4?T|j`hjGa(Y%e*|^y$tf6cRX7L8b;MCqAhBsz;?RBZtH_o%{Qx zr%oJGkWSfq!geJ+2?3=mrp{A$Y{em|d{T_t+>=LCsNV@C%FHKLX3n>qN@A{m(L2mKL zu8J00Ryjb=dLpAY;=2c)W99?Zh#v7df+xxE>Kl4iuG2b*JTlG_l^4!6DDnff|#f z2cV+N@DI+3MnZQ0(gUZtFB>khrlW0G2-=!n&mL-`!F4Sfj90%5=T0mDYzKQ#tMyg| z`l5DG8c3+5${M54Ab4JOL}u!x7w+W~3?Cllhcrz^TvE9r;tj#uSt94Qz_4Ntw&bj_ zf9ojqHWI5E#W?Vf8}g;Wps;@i9fD|EBGqQtQx{qdt$@1=hs&nlk1B>2Q^Lmulg)SeoV*n*NhXVp1AF|k#L@9a z%^RX!tcc{vwTH`GsHm9(QeB~D0X^BSOflJIZvr!ek4bOBmv0RF|4pF&129H&(`XM3 z>4N8qB1=wP+$=g#4DZV(|EGZmF+g%#2JIaI*iGIqUk=}{vjle@c@RTzo7y~gz2+KA=)mIE|#J^zOJ{kw2 zkf(DT1-Z8%c0cA)`w*b1WsR!xYw0X&vC%n*j2Fhx@vW|Ar91lg<_8r}&O1d|TV~efMCT{YAYPIR9-O50i%Q%dh#6U_@Gr`MBYuR=QV47Ow`q~X2 zOvlWp)jF8^{FaLRXDUkq6B4{cX(FVf5pzKp$6pVy9hty|(gznxiTK0OT{_1@ZI0`R zHw$^14cqfUI7OnH=+-97a^f9aTwFP)po=SI)YZ3UQe-)QJF-`Doqxx+H#L?ERFSOB zlJA--+@nvcI2k_p=Gx6i+fp2y1`FPGeM4y}u3}CQv;0Fc zCDP^3vWGdtj+{cy`bQjwSNlBD3n$21?fWTG7RG(c*0CY;;}NRY4o*k&oZl_2Y%?Fd z{=M<{nGzMap^Wd+cHI;97WzL}_ameLyx#uz;Pp=)$N7H7U$h^@4`R7%mHk3d)r5b= zR$gh|OVvvkQQ#!pHyHeR<)E(`{i%4|@DJY}mw$Ld)fCoH`OtEmjR;4uOYirG;FJfWiaCG>SPPgg=k&aodqVFx5@u~v zcod)63+()=8l+pGnRb92A^galh-pZ~)z!t^_x?v0f4xgA{&M-H^+P!2w@?up@kV70 z(fjW)e1Kzmt}bhZ4G8SFZrL-1T;pSH5(yadSt}h)WV=CEM4HfIOP5z>0* zMckKaT4$1K`oy=szUYH2oGU;ESYXQ|u~&Mm+iDg@T2aFV{wIm7UcTcp>kt3FQG>?2 z+bs?lculTQlkx){E~zNbgLamABd*%1n%D1o>Shw}sKr0@x+?%<*>wC&>VH4U1br~h)8@#MoLT=kBSt0jUb3K_&T{!~Wj%8(I8CQ~^d z;X@{GY^k!eE_b2>YNv^b=W2Q+&bHP7YYL~Hvz;x(P8lYbG51d%$;-cUJ_Y)Sd8xNL z6H{{eA#*cL)G^nnvfnRLEwwL%6~Ed2!8Vy?_c%ydo;~!j$$?>#Fy1#_j&4_wTa-~s zqSFuVlZ>1_p6}8S;v(*-5X*BNACtOGHS}w)b-vz1hER#CKe*6wG90!3tNU7`0O)OR zCd9?_Xt&G&w#(S;w zSw^iy$|`r(NDG^GY2Y(=wLzDpCUMzHtp+tyL>C2{cGcjGgyf_>I(jz1gGmu3t)6Jq zPqdYvlJcBr^k%Qy664@>e9kx^U8N$%ou5BI980JTWfu{(=gG}_>Q1EZECb(wKq3;q zo6~5|M)^UG7d2&2ARECv4~69C5W{=1*Eqxmz<&*1+ok+&baNB;>YsaauDk5FD3q0CoNWV%zFn#m7o6gSqtKs$1?v1;nSdaGC zMk_9HCdeHeL5_%PBo+2Ccd4OrkW(SxyaW#KezP634vpxH&u|iislu3=;hwDLl5TM0 zHeCajk{1r($X)||A(;EibtZJ{Iu19(J;$;(HTa*r)dly2DZAb%2KR)`$6i#J5WnH# zoitI=CZjtM zU)vst$kz#cSL28`+~$_gDvVoVvWebemmEaEU`;W{F(-Joq}3^UkojBaj!WOElf9HK+O zLA#1gz|S09bl6Y(-NbOlEK# zq|yfMFRqxl}a}|^X&_==#d3072Xy?pP{*jZU!MZ+wM_!aoq4N++a}aZT&9U-!d84|ffnD9$c`>BaW9_D zWP?`Hn~{mBB|COxy4C0IT&3&Crk(m={^|R$?+M9XUx4d|QEXPRCvkEP$#(6N(A6t2 z)bjCo&%~8ezs*d1o&I1&Pp@&1_<-?NJ}oLj<-rQ?M{FdoE;XuWhF%)R z04)t^r$0CiYX96zyg|Y_`#N9p$f%WHTE(|rV_4{Hvyynqde5?4fonFuBx=?+(W$?A zJ&mVMes+nF>smoc~YJDKLO%;`~NX%Tp6BHN}cTdG5x!<8JURArqvPnM-jnN`LDhVkRpa8=ElP7qg`8 ziqy{n$e98XX(5bdO!4JY56UKsD=T|(=At@Q5$$b9?umVU*jsO$Hb_o}7K8$D%-{F; zgu&*>oMSpV{fve@2MQO?wa>3vD;fUgWJJRYlM&=_FyW%rL7J3QB)JvO20cQU$0r)y6r zV3kgCQiVZq!mNksST zr;4us8yYz?&G^C_`|2jik9mM_3B2!9|92l@lmlbVCr&TqGn0AI0cB-%Fk*jbBCzzl zjs^M&6}|vD0=}Tcg-?Namr)~t+O`DxS-|@ZJ)J`Sn_jfsko${wh-e)!nYYMYYk8Su0k zB}z2X-Sh@ZXJr(4SOQBrI=Z67Wc@TITzI1tv8ANh&QFVnSf3;-&g-+MT}+fybC zuqhRrN+0i(ZAJ7&Bkl2@c=l-?=e_c8#`%#MnO8Ph-#*|4c6lbNOvJ3jP^)ka>J8}> zU>5T7lqGieM7_((He@~AD9bUO^8xo@6w$pH6cHA+n-E=U4U(D8c2fLR5*jZ70|Nto zI4>&!WW%o0S;-0(M#IsypuqS22?GOuc*-^rG%0IT8U4r?S2#|4QDg|!T}M~DwJb6z zsnSysX4lo(iS31_eNw^Wt5=BIE)-AUB~Z_g8z2RF)fkoN2RHk*s%4i$Dnm91Zy(IE?DBgz{j>rMG+@JozS>7m+w$^_iU46tqPW|lO^5P<6 zXZ46n^HahNw&aA{Wsu^;J1ik2OOo)4PwTZ5;ewCW`B-lAk&{|l1;UsE^?0N4@lEoo zX(c}pYlN!mDnDunM-9>`RPzcTrVukDo<+A7t~1SUGg7aZCAg=5ab)2Wp?Vbo^ot*08chpjj0SO%f#JF{-rA3{y^EW)jzSim z(v6#8hQ;H*ec5W9 zi4^~&AW-Uc4{q`ihai}XboM0BH#^afZ!xE1ny=4ZU%%`Ym8bMIm#*^oO2*h&M!{ zE|E^jg!qr`|2cFQ7t5=sM5Fts+Q;Tg%q{W$<#*UitfMcgJw^G4Bjg++`#R^P?*p+u zxUpE$ucNX^Ixr`boY}LE@iI=b&#C`VvwXgLk06>+83kT*IbPz&peh#%{J9HO`y=Lb zW(`(Q6jKU;AH%mX1q3MuCXhqx->>L6{C4zWXnzc?@BEiT>ykbbdeo`iWWRgepVhhB zCYXN0Y%c^$GWI<`?;`OCjDS+2V3z>muHbVZqav8sDuRCgs6JmM17pZC+Sz~%FZLKS zi;hT${Pz3eAp7&l^-Dnm=Ih-}K=k zA$-4_HyE<4n0+6Lqul;(-b_*ZZ1IrQIDM1~!sqqpVT&cnQU=N`l7RW>9)N1JQ9ph_ zcC@#e)hsEQ1|&mdy&t>$=W~_`1$C+2myhd(d)$7Zl4viF%s|78tVkT56KcS7s? zKcFg}W-U5JY(;*D=^Veo68rTiSoG#f$T|6y<-)YTkSar^MPt@rxik@_q|j}~XenVI z3Wkzgy{MJ(5~lJu%c&?eovcca-~Nl@$Io>=1kz;i4Kp-Ankc#``2Qd0Pxt!gaVor@ z5XiO$2m8Og=13!bb+RP-hkQZm@A3t|s*#jt=AT(PM>F>R7qigWE=~O%m)#Q>-iY`A zJi~thAe#k%uVrrqIk3g8=Ris2t7WDFg?oZ`+}Ec+U1h2{as=MV?H<9;M}JaFFu6bD z6k@(qCcpq{H;0@5qvle!O;+aM!*NIR@zl!p^SLMS1{9bPpRiW1l zeB8+5ru#XdL0JA<8U%8g_rWx~^gk^y_z_^j#~8-B6FEj-27B1x9Skh_o)X^A=~=f2 zWD>*f315?}e77|1&Yi(${ztiKY3d0gvx!mfDnH9qHo<#X%NAe&3d{sh;D>+hh-tOa z=j#9m=XC$xFKNMVAKmirf*|IX2ZC5($krSxVv0pB6SGG0Ysb{zicvkxz>XQJxNqJ$ z7s67}!DHD=s&OX3(V^`?tbiyPz{4;7U!Ba(7hyop`Bf9FW>y)_GU+yc^*r%x{1GSO&3|&Zvlp2licdzJvnjf5&pj=KyR90np|% z3GKK!f>S7C`~U=y)o+Bnh0S3km=!b@wNZcx_-1#aA{Unp!rDxfeY6WJxF-L8g}|(QY43hHKQcop0v>x@ly7oI24+s8KXoJc zkz?h?|2kHlY0uwxv!*kG_VVRF4en>8`uloIU<2!%dWucSoDUc|is-UK;2NUqmH%De zGr+-LZKJ+^+5OzlNk^txvgY!c1whkFqp}q7ha3|7?+)m{&`(*`)Bd+{g{^$2WG=LC}!J6aiMK`Bey{3pc3|Ka(DA zUyw7(Oy8*ce(u7!p&=iuf0nf%1Sw%s`~M{WW*Fnoz-v}G*Yf$ox$il*Q$Zfci}(H? zt>VACb4bmrwcigpwT0hD>8~yqn5mA<&gowLFNOXnJFmMZ2uXbXhvd5GhqH79XI#c8 zp{C|HK~A7Ki`-5GbDpQws&J42&;8RuaQtCn;-rV_>;T- z6>*KK?mA{x*v3(tlEYsx_A6946*MQ^E%QDEk?tM!?cDdB+g6$P$ZahI_H1Mb{eNja z(cGAX{atHt<$;Kif64q!I1JRqfi+7~XQF8SXKT)NKw9&CY$E1>|E>Ri0xm4pRTYxG zi;qNQ58wZLiN1ImTxtWB>DjM+Tazp*a)YkrRbX!Zzep$KW>ZsPWVImDku*;I=MtKG z2btRHzDNbR&@C{ULd5Ldpil;~{$NcX-JdDG#4s}J-#vWtTUV?LnfXSTSsx#{hb&p8 zI5v6fN1guQ!OHUFP1m5AU*e(O67c>rWz?1oUbs-I8(tUX&$rQ6m9Q9{zlU^iUtuk&D8z{mOa+RiCoYXBlV` zT!(F#Q?I%ddSo>j{~oGm`x3Bswc7ds+vDVH&-F~~WS@*n_T6oK@Cru)se*!r-eO~C z12Z!Tj)~JfSs?azp?7##`bO!!%fDw=Kb^f>1aNfZF80Xu?AMC$&)+8#4(>4J<&^Vc zV;}3m4^Gd!LSfDfE`%4Sw;}c)0loG2szH@espl`fyFW8blbrve5TrJ-H*8e0%MAV@ zT9L)M9p@^0t*}uqY5TChnxA8?(@&u(GkNJ`TFNh7>^9AB#MEER@Q1_1yi*F&mZ<*V zt+M}BZSk=dc|P~df=4Q9-IlEGW0CCx8d~@xptbpS`FHFZIEDjz`3ku{BWe`5+F@69 zS_{{4XMFNeA{obv%9SKqIZ;tjz9Qut(}p>fVwF>-XWy)x$B)*e3GL1*`ZextU;ky< z=RQVhfn|K9Wd`1ahC$kUBK24}FSj&REQ&b}8z*#oJl@42whKq$fvn{gY40cfKm&b! z3fC0e&(nE%=36qgZIO|(y6}dpVUot;&too7w2~ApY35f}W=&j7*$IR;G>}<}C*Lf} z%*ok9*gChG(&69`$>;D=H~y%0KM#StuaI$M5$oLjPsKte?%E`BOo&$>bgZ+{jPN>lM)pMKk_f7Ui0#(ODKe81sGc7?G zeIL-*`WOnt`3fV#Ib!-3=h`A=#M|Y7{!(oJ+Dy6%Fq>Q96fGV|eFTQ^Do-=)&=8Sv zQD0x6534R(FX=1Ry;#Uf_e`T4&>LlyD@rg&R;Rk+AKYh=%XJ3tl7ui|jeJCVOV+I< zf00ZTtYkR^n2U9V)y=;JPm${*zXANGc1`J=7!oCWPYTL>jwlKx?SD$nG9%oHAQ08# z5uAgqwZ8sarw6asWx+UOx!T;?dtcwQlIrQoC8p}KK3bQW8#Hq5j%x+SPSk6_F2BmE zi~O2y{Nkzx_K`OUyfxRIh((vi^=A@q-$6sG+q2O56r;D%0le0+!{0YTgfUo%Lfu#z z^xDAaa>f;E-{J-0@xHecdg|&mnF){i<>edRA_`@II&gH=ZB?~(w1N=PM9LF;0s-X` z6G`K&EVulk)+iCf%8;lhRoi_*gMR`42$D3 z#OIvjg-gLe2`3d@CS#o*sRgkIDZ1^R@YvSABd~}~ftSO44T?}!cqX>HKD^AL{4S?9LCHPgy^hm{rCO><<&F)nP#wR#%iMIj zt;e-G!3w6z#Z{nJcq$(I-L`s*fn+r!SnH-mTS8h|uA#~7UA(5D$BWknjE4%-9(M;B zdV0K9%Qk+-)Ng~5mVcq<`hW1dj1Q3+ppOy=WlAk&ir_OIl^if^cDs zwI5gmiblGq=xo{k92>RywHisU2|ZvjMo%t{wXxGtAQ>xA=AoB9tybqU7dLirGiKci z5a}~hQr3Y$=lE#*zpA+vi%{VGYOV?8Gaj@%Df?A>mBOQ@XU@k?Rncr~pM*K4@3(J> zj&0ZXr@`5$)Ll-OGF(%uj)OBqPMdI4Qwerb-yK;`;`i@L`Z<+4YzETaj0`&_JT*uKY%ICoSToJ;FY{G9%$LuYZt%+p4_8Fa$EsQP zDLNjXq;Sp(y5${VIm}Pgd|6r^-w!#=IXg792GcR&>2fC@i#QzDk_omJ;HmF8Rvyg_ z#SYi6jRV^0QkJP>Nz>^;?6?}onSHxl_1Otw53S1vm33Q=i}7(2^O|k-QTjEG@0YCS z!gcQ{vs^u$zQ!dtemqy=TZ!4s-p;u!veT-|DLcCSV(*C!ay0qhnc+(!3_Bplm;{tM zz+C%|oF!*Ap5;k*tci4v^C)ibZp}sOgV}YecP&`X$gDyJ+>vjgeTyl9kN$#xW}iE1 z=_%as+D_Q9dT?){Uwq2X)mw?*=LzDbZ{y`X5mxQ_k7NAVEB3);y;J~eptVi90=MA= zQZWWPyQNKiQa$7-a2t;S;NQuZ{%9MDtr58m{#r*(XpsOJD$PtMWHm{_*S>g!jC?;- zrvD}K0k`Wi)|(y7kP$MmuzAN-#(7crOefhc*7*$X{QdPhg+ck*_qQeKglGFH$!#9u z`&8D0+Bx5cT^C#A7jNvI8EirW%C<>D_pK+RgN;0zfR3;1j=!H1`^d8o)$7iCi;;K6 z&^@ni=TY=Glf6jJ7rUD+DuJI*b#sp2uui}4?ggrj6xOr4)%Q{@>DygTE#KQU zQEP%B#$O!f-yd;(KV!u1TQRWHrGt@x-dRG2@pL{ol+j_ZMa`H%>{)J>n)9k*)BHqp z6FR6g+W_oU%-~KW94`d=5wjPazjr{UQ{&>EQ{k7)TC*}RWC51uy+|-SadzDhdLg{W zIskmFjI?y1l7fN^nb_lnRd>l5K}BWd3814_z_ zR9*to^74fGl$xwDzWfD66~bU*d-|}}=l%0zff>@p>V!&B22#}YOzEnPz8%=&&Se1lC)O3Tq|;K z@Wlk2YG(pEdA-~mRa#zNP047X;M}N5vyZ)C(l+z6ZkcA~Ym&0f%tPA`1m0wn+5;7U zge?|SaYeW(yRn1lgU#Cw778jVbe4g|K-DH=cUP{>YS44M&h5!)I_(>*2<%Yo-p0nK znlYG@jfVl68{a3@1A}+g*O!ZA-LmjAoJgA-Yg(lVO{dfl6;6Wj6wzT^aoF4J9{#hB z8ytm&g+J;q8dhe`SrKj>iuWm^*) zA-_nQ=zQr_PV18L)#BmH{yqe!-`}M(RWF_$CWoGkF82-$gn7x#p!or^+P3)m(T78j z0?!`#N3RZFvrddN!4F^f=IObJL3ozSy8g-X(r)%dYISwH3R|uw^J?L!5W$$vfiQ2L zKe=S=(MaffLa)R^$2|&%<7oq{ZN1NXDLMP87V~#giT_4A&j*HE+@E1Y4y(A$P*#ht z{F@!IchpW@h_uqLl7g@m1VD@?7E8bcz--UcNJ2$4zuxVbBs#pX>$Ez+IpO2!y+Okh zm;i4O35>~7E*u~u6GA;&TrrXdgC>(2fw3{+lHJ|(r*^gc(E5SCaa@SGh}fdQGx`_A z5pHgr&Yc=OH+-cg=SXSe6R4G8L71XYJb!!74houHaM7RRU!f!qxsHZVDiY9QcT}fZ z0a01fOF|fh!d!5Ui-7?{Ub|VT5H+bp*YKkYk6I%{T|latEXd1{h)@TNy+0)(fjqlq zwCsZ_Tf6*(l~o5tUY#o+!ND=g&yATKc-*sH$a!05I{jwFi%}b`9*kSENSZw}V2V0@ zZW&tdz?rPoPhv0(ofh@6*7`O{ydJ69Q15$Y7CrODP`+8o=cB&XOe!{yy<}_cNn-X3tPI>=&CyhnG~fqJW3OE)eSgzTo+Mg+(8a1B#~7m&O)d>ipe4V zBP)L!0&u|Me=9kGtXVQ2xD(lb=zmQRg>mns+SFNgXKDG#tPqu#=ZMSZAOSNdDR=a7 zj^^5(>ZN-;a88RJ-1|;|LVhRbC?3%@!_Rftn!<(c#cTz{8PnvCSI6&jp4~m8rSqq zoxRU4QXlG@L1#*NaP&2=@ZP$$GY92Ya3YqpDBt0`%hdEWiir1%n|bp-NxB~@h0&Qh z#B*c}%w>KsC$TKT;Y>2sr;>c3lJ^dF4ZTy6xv6`i9`E@(V_Jyiic{kM!`gR-MU^(& zj$A3N%fV8xW8vA~|OX4WoiUBaP$?LX&e&O;B>iCTB!)lLQ)&d^gTF zIDX%mbI-lc`7_TmKiKx(?^{)?R;{WE#?h{!{xrC@HOEvFj)V0ba|jjdbg!dl8ef>8Wf{BVx$!TkU%)uP zfpPTikVrDBg<;J@(#J{hi_T@VM3rMNmVk9&ZEP;v^~5Q`@$)ehJ#cKA-Z*?2jJTg& zx=BuSIJ(R3njh^_mSV&yP|_AceLkK5F0PrbLiE043&X??OkHyoQ{!rj`Zkl(;zw5$ z&d^ppigGQn?e||dTuWR3@~i>zI3w}LwatV7>wW{?6^|wOg04F!lV7>W0`+ha-6G%F zaVKZoAu<+3QuGgM?u422dh6o9=ifh32rwUsZc*$MS7kSIzsvCWbAs7EzGii}iVUf1 zV&C3%$?wG;1MxFPaS3kI)ff`m2C>P>`LokOC|*73mx`T&V17`lzDMe z64*8|lv(gSuP4V$VkaBZAFcOwX}uRfkT813uv!_p!^Wk;q9?yjiusw?78&8@$vT$} zKc|063bwVkbjRyLs90oKP=$$hf23xOY3h}ZrtVcx@FWF zNP=(rSxvGiec@Hw)MJ zU6%btzBE|U8vQNW20>y^<>F7i@zgFaBQ@-U`a*S`8Vqbz!wp=Yy%5@ccC*e`;Mu#WH zR~-&g6JilB&nqLUw=QjpLV+R5-jD4yZVA2n#XtYKET>glPFO{2YCdtm>1UdSe>N-o zs*#Kbn1(KTq0h`kRN$12WB$h9{k7mzU=9xjd=mX$;7tft&0Hl1l#m-G9h^DUoEUKca4R>MX7P zWPLOCq_lS&DFJH%!zPNjh#n+5v`!s+pqx%_3R;E^D%fc1y9|+czgaqdz1ADx{c?=t zfmfX2aZvJ^YH2`i@rlPjI$bDE1f59E)#A`^V0%&@Qh=5T^Zd3zV?*~>A$U6l*rIeZ zz#-2p@HPXHBLh58#t7734v_OK?}ateg%^D`Q3XH316zf7)%>(+$rbU%v`ADt^B^yT>V&B(TKlDBVQwO&Y^+DUh9qC|T6)#`o6* z9jIN1MDqi~FhX7~cyBE+?ZzD&Q9)w$klUJLID&wimDbiU1?(r$zKjJB*1oO;K#mQs z54*7#&ph>YwL22Gy_$RzTNpV>DTGZe=jaH>OnH=rnev{ou<+o+9S+MLb(6(BrNtj_ z%epNG!NZRtpr+y3yn3*W16C&Xe5w+NWoYERo5_BK?M1$RafDtLFz@a5xBDA@hJdnIBJ?w`f`Us=zJvswQtPuGd`Z-ez|>E{+imR!0Tp)cXRm-ksZGB! zQ=_*4U~3a#g6)fbVkdx(KU^0^t?l^HNe5O0#6<8BHq7Mx{Vu`_x^$x22aW&Hu!P$umfa|ciz^G!ReI@B#5 zp?terUVsl|U#n6lK6}%bABC+IZ2E+ox%T%ePrgJ&I}0p7oJ}jWetktQ>K3tfYx^A| zT{`VA4IiJq#=Um`QdoP`qZcn;Um?C0bdSF1O6woNCPf|n>2;_cQBh(4je~~GT<@Vm zseNp>^FB7>2rl^7EP!tB=_%zQ&s{Z`LC=Pw77U{WVdy`p@cEvdOg(b+&0pfn##qbM zA7A)qqIi)$ez`+38st34RuUR@d6wlYHSdYgc0Lh8ERe~D2!X-ZL7Ob*34NhYP4m>c zLfU~-6Z>8{#a=_{D^7Y+sTso~hV&%o1|tI~et|*VEWDpbfu%<7y&6MwZ5pNCh~1E2>E9Wg6}Nk?Db?MOtWgSo$#WEzdi6y;{eX4J5 zG9j{LSZ^yUGODpW3nT^EuT1t5QWlYdRuNcavr%<*3DjitCM3ZL54O#1!la()b!_-j z5ztYAr1T9x?;?Wg(>AZt27|9N9?41VjKJyk^cslrpX%u0i#Va+%W0de<>GD?UN(9t zZ~CZMCY$Em4K=<3=c8J$s%w$+JRmI{-JpUcdE$gaf~y5s58uYnv@BH*yd{_Qn)*z5 zy3?SC>Be^yCMZb3^wTL+9(>^F=XLH;i41Df=S59&oC|f$hTS@Bb*WMBdCV$dB#m$?v`g z)rf=Y8r0{Kck)GE!Es?ov2b^9*%dZH-g0r#^md9*rCG^v|AZ&3yB9K#D@hwj2Os^a z&Qg;GqB3l=tNSh0>kh7kiOCS0W2ZhYNRECbt1>e))tuf1}PvBH(fw_i5yjjIe&FAFlO5VSq93|0Nw={bs4V%i!Ju^y*<4!74} zA=M|me0fhyS#~MqwLLWxb1R!{%QjJ>6mF(Dy*BIbQT?`GhYk;Gf+hG?F*Gtlj?`=0 zAg8ZyY=k3*w*G6 z51bZFl6Q!A4wCn)_tIa!nFTJH=Iru}_qt%LI%*$J|(vV^|Uxc~00b0Z!bv5{8}NNUR^*Uqhb{O~PFQ`ur5 zWp(!3AzvUpcVJ&}PS=qc6AJ}F{cNY>T*(fPj=Hl$LnkZPCdVsW><(*~t*1J}6lzHH zjVo=ZAmmGnO)hxszE-!RHY;ci?5?tFPnCt{!&|m5@6^NG+@gaGObP{$T$^gMq{{Qk zLvE+<5hv!PKcwhi86e3hr6<0$Gt4@rQf0ehJhUw>EzmjgS+$&v>Rdcig#T)LCfT;n z8_L(5pa1&A64aY??DNKTrOeh}a9u2-X07kmzt<#!fku%*oSdG`(($Fj;8>;BVOF1O z3F7k^swqO;btehnU#^clM@NcT*^ld!YE+g$d-$m`Zb^Jo9pie6g2>E1Dj(DbrV?#> z&J@NO9&t55p<*IVi)9DXm33o!HO|~?)9WK_RCTB94Xwuq$!Fl2o?kxmRID41+X`T_J4aG+200NkxJY+pN`MS_vNdNay)`9q! z15=3bQ0&Pp@_QBhQ?&J!^f$QRp(T;kBAC-H8nBG_fnT!mMeMBkX}$QFTGQqw;P!|qOXDi1*tKD z_SAg2(z7A#@W|F&kkEM1sw=9@w%`p#!;MjX8eBT(q0x7i=l^HIWkvqz=4dy*muKuPaDyKK3$YOn`fuARZiXu?1r}WTa>5kNxf&l zS~I)FzSGS!CmV?slCvcD4h0EzTf-okdG@n;mAbCuwZ7BZF7GY!hH0KmaoVA$r|RkLiJeH7qa)dy-L?#s=@injBb?1Tu;MZHLkf zfq$bvklooyjjXu~>>7s&e1%33Fi~+9=8aMc;TPmuqEj^PM~L=A{{RA4>Vf7dg`);1 zt}ta*q&5g24Da+%kJh1LB+Mbj`rS(daKTwV>Nif z!csl-QQqwJ9ZBRaYROT^8-lg88EhVSQN?VmSo|!S;aDf~((qQE6Sr$D(efFBSRuF2Kjj{J(@Gc$H!OB z8tUW9RM86ABNu$0nSI67j2^8oIiaGc$me2x?Wb0-?G~(J3IIfO5R_irJ>-H-cu1+kI5ae9kmlseSPQ{a4rRfnny6iybDfZdm?{@&aiv$E3Lshxt==)(aYDrl_crnO6$^=WuNd}-l6)*Vfw zSWs!7wzW&RUwh)I27xB_j#ihAoq6G1t-ep0q3Yv5%nSJ%dS{6q5JltVub)*pGGw|eF!jjmX=+Xg^ zD+PMh7@B3ZD?LY>4TUaDt%?_z<|EPlKkS`lZd*oMV0OwEGq#r!yeD50j7b;B`#qnT zw3(A2P9Nf35r9hgl*vpfMrQpsnOIT4>R^WG6W%UuO8Z2@W>eTU?6TtB4B>AVV`-C4*? zw9p2x&$sJ7FX~rj&aOv`8ySAv&pkVsBHO3~aq?xfY64mj3-6PY&0s^{xAvsmU)lcy z%Kdq1H%tL!dXQ_FYd^1BS!SpM40A)Rv@w;V;|}Zc!c)b9KFvD z!O)>)8X+QnVW4sxFtH5XQ%0u|G{T5}P7xgHfPIFPxsgnYmP4D6LbD46DT`%8?FtM~ zD>-1}mzUcBX;sx49K%YLEzMPBE_oLu&$!?`1rI+IRmvu640Vy~aiLt0 zON|Xny>s(s)Ix!MPr~~bb_DXB9SR=oDFsW@(;N3{(1>776MFNp)%;DF!V?LWLgXfW zM4YnrCmX)olh$duUqlMZh67zNm7!T{HydlqN@^@k&5-T4;HrEQ0u)+1t578&wS{k+ zepr{gZl-R0b{!gZdtR1ACyfhY;jmY{{j9|cVIoq)-xcngGWt07P1^mH+ue;C!!((P80kh#WglV z!phpV(;IQO@4jcdQofYK^Kl2-z|lA`_1m_URWe8 zFF;6ZwVG@mqiK1Pzv1=;?~J3XfqPolRlBO+a4R~~4=L!qv>$V}C3!kp_i_$3eZ0Qt z$8}s*Wm~m_-|)R_5$uCy)`KRgVtr2gl4AwEc1KWi#DS+1o2Rm)V$&lh1>~^BuCK>I z23SBzWe2~KR#jAn^lUNwrea7!-f)P27US(6~FaJu*6Mr1*=&`J%cA1xid;`rh+zm>?r~^&?tEF0lwXP< z6l+XR`}97mqKD{I{sekrKm2*?CtvztZeCF{J01`^+<8Z#|7|)Ifn7_HJEf7uP-J?a zp&xOE?R0``o2N$&XB&5ALo}BG6{N6mQyLwdkx#X_`D#R02#=l|;wTIo@6^i1(MXX) zy7Nm3sWqeogtyV_m9p?e`XPUMXihEGU~c;wvs|*6Px+Bd_QQrmS>fdk`Fw zSkkYqmZqKvY}RU9y({l)sgY|>nv_|f1QOo%5tKoKN0#z+2e!1s!;LdM35htoB!3hQ zB5)&U+Z{dk@Ef7Az0h&d0Q9&szwcGa!4lJmG)-_OClxCUD6YIc$)u zW42`Xa7gFu%Whb*QBK3TpS7*RYYEJ5hB3(Jn)TbHdYzgF*2JwuEncvXv6svM(=au8Lv?W^_nE#4^PUcJKk=<*^+m&m)7->}H2B$ZQ2l4GAuU+7)m#I|=#d2% zY;5T$&wW*Q=7q#AZT-Doe^JSuQpwH5#jbiFEARCBMDFGN^{ORia|U)&8PjmO+ORd$ zeKdWvvlYbtB*2~&Y4lIqe%v^LZ}tNvs9C{mr^6aU84#3$c5$h}*LcLlUeJC??i8P( z6nGvWpa%Rt>-iurA_EnG`lb(M4Io&-f2^`x=sa1Z|but87;>|`V zBTv3M!hTT1>eB`65Q+ofHDa+Q-7LQkFFu~90&#SsujjsJmJZ;fkAy>hIOxEC;SH8z z2LB{<9KX6yKklj%#_oHookBY=Tl5#FKJle>aeqWNH+6Cm7usV&cgC8=>zlU;FDvIp z*6U{aDO8oMj~h5&kh<+D-UW4kM`?xCL}gPRRof^S(9Igtc#}rH@tzL z_VC*#GvaK?@StV#sK#(_;mlABK{4rbR<|+TtmSoJ)w7ed&+0&{yLURhT90K9mSIXx z+DW+HjqLMjo(@@dg(7`+N4%$K9VZHp#sy=v>T)==vw^L;uL5rT6Znun2OnMapc|K7=Guw#(V)?_O`?0y%eg0*O6UR( zc$W@kY^%~IRGb+_6JDY;`1M0$=yPJlnOG&c+bh*_RO4f;BD3jn05ffD!3uAV*pPPb zxCKv5i)S@b8@vO8%1>6^V2{{id>imsm#Sy+OJitF)FAyQdeYqfCIt#8_6~&8-Qp7- zLzrA6Lm(Cta+)uv)F7`)cNyWnHk-x%s$kJb$wS#!73 zNzs=az%EbvzvX#uC)8l>(-zF-s;fz$Y3OlBPOXw*%U*9rGc?*1sK2bX5FWZeT15&g zq}rA)-7nT{baZpu#VG|H@qSCyCk*_qs~f+kQ~A1vtgHNi&b|QUY_sMrQCTgwkLy}7R!4MM_Ym=KBPVV;*+})k!-gRFX-J?Sv9lC&i}a%&2pX>=N-48XYc%xQ=ZdF22u+p~?3wRN5Vo1#7Pl*-L&IW?*}k`fPrE@*^0Zz( zR;RJ`FCTN9+EUdVJoY%QV=SMRE1F#U5}jJT?#5^LfN-%Wj^+^EEwqA zsz=$3dLTo}Mg&YZA@w&%do~l5l2WkfeN$Ig33|e8T3o8cy-Pi{Wp#DychZo{Sp_n< z;;JI=-M>^w0A|55dR={Kk$kEttJ5EH%)ej8LN<)9r`a3a&mniku6?U6HR~T@TV!-$ zWkW>cH^IZINmrI?f~C?1ac1RCFrS925BzRiKLLsI@K~SGtnz9V$lBdh?0dYPo33>9 zzMz?h@kCsxCMe*pY<*{VJf9Y5R7XFUPSwwN^+HuU$P=_7FFV8G~CEu!k z++(C>IER^tle081lSWNKSj^nNuh*`yF_Z>7a=`Lj=j)~4c5P83(E?NFa(aaivU zI&&@f(SiTfbJGiML<7prs-_Hbd=`r7vPjnf2%2EC+Wyn2wJKkqgeT*vyF^~5$WmW& zke@235#@DYp#^%~;fKG}gb6%RU4x1b%_xj33F$o5=hiCJ3qlQw?V3JMx3p<;*ROF# z>(zO1?oSSd(9GX0J2PEM9|Gp9l{VQhvo26;jXgaojq+~83-_+LZI@oU)EkrDVsf`$y8b??K7(qt&=AaO&3nB_WfU$LwVOXp~wUhikyE=CRF1P@TErAVM}}14Yq{& zYXfAs6ea{D_jfi0Hr@M<)=vHys^Y5qwpCtuLc9a-gT=b{ah<@o8qt8NnX7x%+FgXT zAI)|8l`CHIsPrsaV%~t};CRUg9{OE<#R+d_IXm+~d?jp?Ft*`)P{TGzc6*TU^rPvn=Lvi5VvwPY#4Je?GrPzX_&_nw(I zhs5m-K)Myz2Wug32KgL=Y2o_=qFmpvC*LK9eV3*!YM3yS6bxW5`UmmiB^)Y|a|Fkj zbzXaoe?SGpB15W+8Sl6gwX0-6b;So4TGIS!Jc^)AgM(a+P^FkXJqRHwCU}iFWIUho z-t1#SJON(T@y``??nnn0*rq_eFCp!aTq9J=jP#P+40%|<`1+d|5By`>lkZLu&Pd8V zkM?3DpZ~Y~vw8z$g-1}`Vx2Ml?e@X<&xW9IMb*`qIMlEjVal+_w9(8)%6dQLvFO_O z=i`dk;(`_%OoZDX4N&O_vmpxZ!ukSGhNa3~5-Rh!!d4B>kV;uL=!z$0SM+ns%XUr% zYldqwCXcO~T-iTEYT3bk2lVawqzq(}o|}yO zyidJ=G%o-WB6*tDwK5ZVw1IlD&#U5{9?!U)^2Kozm`g5X;vh@-O-_D`H6mC;Gv9`V z3NpF(x{z*;g|$&VW;>1kgyR4^(8nOOVm2VrrGkEo{fJPp7-J(vG|r4LyjYo;$um_OV5fkExFrPz1<+2unNt1l1pdsga)8qyd~6sv6M zL4LrpRFv~fj>^xT<+j8hRQ>FqRQ+l1?Q`Sm$pVb4;=eI2b-=iCXJ{E4Cu`li>dbAL z>zA#(yt?b0(IaE4nkPLyJ+bPU%45-KiIXE{Go__Yny1z4i)k~+-Pm^9FzB?{?wGH) z;K*jTx;ja9^2~SFLveksyuqL+r0LpRQDRP}oe5&@{aQx&KPx!@7Mkuw0}<)LZFPV( z+H~U67xGx!VqUw90quOeyg%VTHLU*v7sS#3#=!&FKYA)*MEkv8+DIO*UGi)uC*QxO zmM;y5R(vl7HJg(1eI2Tx&}BL#ac^;T<&yBw4mupm#2yJEBwcK>l4Wg#^0LqdbF<-s z!Nz;te+{U41+4WJ!tf~c-%5=0}0uCE{1l6L7xbjX*?2J87=1ul{1 z?;L@(@139bm7Mpbq@9)XJDgg>u5@U>3w`#WUIG(}P{`Vb@Pwu+x);lO@xM)O@J)z+ zd?aSnxnCY_)2^}p*2cF7_voIcuvAL@KK9`Z!o;gd{;Vr!kp|xXMyWo@8Qi86%g46wt4K^M<0f&x@}B8UH_@j{iqN6ZFc!3 zM`gpO!P?RepeAI#0HohK=cs79&;3_O)Eq|TA!{{^*N9Ge^XwnG63&x*#HDi=2Lj|J zKay1E+2tJA#BK@f<0^I~`*K|%`x$mef&6x=Ki=-gDdD4!(?(3b$fmRz9b3bSD&3DBRE3_fZX(5d4BvLz>TgkWMv1y@H23$23*af)sQ_Njt`7D!ki{eP z@X6VV^Dc(}NOqD;i>gy<#bXF?2*6A~Y0p*xw5U~U#C$t;MzgBU~D4MQbC7Y=n+#KrPzq=Pk7)x*iD+*!fvV3v}CQlqy zK$s}a!+3zX+3#^wsuJmoEZTha>XNAcKm}wmP|9iD1AA0-*cEhZq3v(>g(I zZfFK;X2i*u$hkTo9_shC+4`SJ==)Us@gj5o-0p9F19+%cfhQ4SP zkj9u^*alTuT3KE`maqBIR)3*;Dnnjh)m!mA(ue!a^Zkn;=O<|=M+j8n75LXDIg-Z3 zq4JDDk|71XEOE-zD1w@CZeR`W+ykzZ#rmU-n+OmJ{`wGbwl&=yM3k@0QmJ0GX&LC~ zIEGqAXkEF7OC#ae-!q9+U1w^Cv2M zYJ(-xombShYt&;^W_QK;`7I0^xz`Abf6no6yZYl?y8k?vIv?WyiGRL@h*L`3x~MYz zhlqmjE#N#QMgTR>^WtTL#YyMcELE1c^D;)yX^KBhw`7n=wD&n)pxND9Mz<@(= zIGMFF5u7wzZslDt1Fz7-<-J`Kcat$al*iPC=+XJcqpmHz0mtC;`V zeL(}jp!B}}V^!yWXixx!T<^`^D{~jold|0y(H3*?z3ZvdE zB56b$6+T*hS9skdT1#`vw^df<>D_`*^c9_@+Sq?JXnxrMSZUxhH8n|_T3WI>2?MNL zf74?Xv8^;TQsC0w~2E`+@A$xICR|>KnDi@!eHZcZ;zFDGRx)@Xw`XRWEMaFtFgt4yla_kRoz$ zpYm!7)u;oigVE84L4Z`j-F?j3R#r`8nu_8+ReJ2(IZO=;DPHU1E&97FNUo?NWlSne719O>CvmQ z?@bVLpgU8PPp7T(9$FW7Uer_C)nLs-)znxf!S-^fGy8xJ4@=q}p#b~A8=dbiU4R*# zP{96ped+U$*8wLmIa!OsImc}t9v(dv!5cgC;nDg})0gEpp4~K*vS87#D=h3wko4*8 zl#0#l&>JeU(Ln%}xFxZrOS+N`gf66b-1{>=g^?rl_htLvr%FPq0NqOBka}T!te35eoX_ zmLmaDeXR8#Np)!-U{hi{ z-KDl2Dr0hCbH>J+kK#({`peiw-A?mXB+(6<3Um=~NkJ>!vAm1p<*TMv?C`~N4Ir>; zVtx;})?M5w_Rh(X0XZP~{(}{<$l8RmQgyx%@jV$aTNRZMVRy$-h^)T;l!Huxk*4@y6>*ob{7`Qq?`P37Hw*Pq zrY%`yZ9MPZK7j~r!&b%mCRTH!7+CX5OLPC*`z<5H<}lJzZ!RwXZjH%+wsLa^ZANU9 zPOiH~imb)R!epp7V)}jds-}@CZcpXlYKf`&t2$#gMyO{ML08pBOLQqs+^n1?@@%bZ zlxbk|vl)71!FOcDZXqZhM@jsHlnMaie97nWV@Jo2ex_!n5#8Tk;(4dAt^Vmze~ag_ z7@O^mFS51-PCa@#I@!C`dbIN82r)EUM{-x_t-S^z9Q)G{5OlAWjc9trJRX53s7ozq zd!d+BVZE)7eaPI>rk+f0L)Y$e!eiCr<;!+OB_)%$z#jF7(Oi;qoo%hMJ~xM|!%0sG+H<1_6rZhqa)Mo9 z<>ljxu(VJdt%$QvV}V2>KSc@4E;%Jrnz`5v=@p~(Bd=Y*o{z&=zlU3_5k|FuyfLIM z6c-!I?FNJpG!qkZcY8;8c4*{OF_-Vle(^kjy=(81iUZvtlRt3w*zU-**2uHbTJw8g z;zfIZKT8b$HTR^be*15dx>r0vT;~Zw){^6MDv1WJZSwzM3G>c1QdIk)Ecr>0zsaOz z{*q(jfO|4}f1P^vOLV7@{teKuS#{xqJ$_U2!G8O2>dUIakWwdscTwRA1Rc0K>0Y)IL+I=T#VxK64z%f!I>}^z3RQK+x;MW2! zz)hK?O$!w!%G>VwrAaU*`GgM zVM%1D7S{}`cg{;{gbJNKWK$LLe|V??1l{VTB>dS~*t(W6h3g&J>Ks>U4$cXe+S~ba zpFe+yY*TKV(f}gvYJQk?hB5;;Bu3OBwT}fu`m;xM(&oID(FSJ*98iK<>o7!St0P{j z0#q^V-Ag~k)VUNAl@*^&Om>gTWMtu?LYXNJ*uVPscQ-G5@xP;_58l87x1SE5Q=K~% z6#@fT9B`imW!-@=*SKoFBedM3ar<+u6Rt>ZZtmjKqm0d0pDsBSG)j90Uc1?SkBa}+ z1O1C`@>fv+0WqjJYwqdUC3Y~s&`svB6&5TvI2F!1qwtvjlZl7Ncz17a^@fP3XfWM9 zRtkj5(D>U%1ZD{$4G`3e*_lauQ?U<;`^U%QPU@E6q5=}!w#vcpns-wZshQb;Z{E59 z_!_AdS-Mc))Q4nvSDh9xPslCg7kX|Z`bT`dnb%iEiImZ}j{%!mr+c{as9oy-fSyrx z(@AXlcI)fw%4wJlWjv6mC}`g^JB>XZLU|SQ!j_c9Er#pDD}T`jZiom?*Pm+hySmqB zvzqI)Iij>9?u;qbO4!aUA^RBCY#xs|X5LwNB8Z{KsB&f7pN-A!(WHu-PE2s+sF%6u zv!ghz$-7;PpWz8u?zkFFSligf4+SfYbRa{-^x~$_69Ly7(P&*k(;NSIH1|RPw?jh) ztkLEm2lBq4H)2~sX-_K4750K3h$OPx!m~7Ly1FwD;UCMM0+#7yUSXfcO{Tw$8L}GZCw?OfR;lJ! zGkCY5*eA3icd)g^-E|h>I;Q~?;Ez-fp=I%2h#DEhenB zezRV|b)tQ<@+I3(;lZmYKvp!!qu}r%uvx0>mB*OE-12^Q5$HTPYXM4(QP9(F2vCS< zo{P!>U6djK?dsCh8d3-76EIab`;XDF=aKnO5+)dUdPHBj=4^YVt%omC)XntW>ANxi zLM*f55FNQ6G1Q>0C>iTr&OP8lnaJD-MdA)f{`I%F%%1?kJ~X7`TI1033Ct(v9zhPPivP0B>JeC_^%zAt^ks<#wL~uc&M3uZEtLR9rQecMbU)e z@H>krU@v9$K(@wXbR~W8a|R04g(rS>-*s)e-oUBP4}XQtvscSFZsaNFyJjCpN1lON zAVPGOWAi=S(UBU;|3sXPikLiQ`HMLFtAzTO#w9{KOuEk;P|_2??#5hv#S8nosIt@m zX+vk5cCLL|U-xe2pMkX+&_1CjTDbHT>-EKccyd~>hR4B*S@&BQvVsQFPgz08d!LG$ z3D){^l%qcc(23oiHMg=F5ZfIbuuZWfLi8qy8ecoS?nqvt&2gUU(Mg;upj%(}?(J0s zo0rni=9*;Y=1$=8PG#Kw#Q1IxS>Kl&;!U1C3_$e_)TRMBk-5hqBHXF*0P;-jMUp() zf#C(@7%lu3l8Of61|G zA8sf&=||JcpKeIMVPAF?`uv69)?pPaIYc7doEj@H06GuycdOmc^RVL>*m9vZOB_I`tBwf`v5`N?&FpP7m%A#8py9FJG#4b4 zu=f!gHd+TBe%rnEXL|3i1f0|u`v*B`AmfUlbbV(3F+tpkDXH=JxVGA5)it5e#O%d< z8ks4RWwuV6h^Xef@ghQdGR4eb(?JvZE9I5tBZCdSKE_T1L+iz_6+|f1loHoa{fM#g zah~`+6|kp2iS_uz&JygURqC0JDZE37Ltc8JyU!2Hzao+}n#fYMI#AUmd5m zH;?;U>;e+Q!4iei%)l0@t|T4mG{-$N><`V%2LRqf{!=ppOa=VWXmqy`TAI!KA7gF* zLifMDYCXT_OFBR9`NY~p2LVXPV{eSz)WwC9#33tA4$vVFVQ>|+-CSIT#E#aUP>y8* znUqAb4v7L0A`T}$Dl?~w%=*UVBIlYoOYF8;C zku|bsUKc;fUK>ChaS#Kv3DA5sP8tNF9LsE)bepN$2*&p&@O%D=)H<<_VRvAX<*{e% z6gt04hiaHtj_JhBn}lD!Oj8d;WAjamzpw6UHpk`xuvEu1e0NvWTRVY=nQE&$U zX2JiOHK_$ETPKT z#hagd&W{g(w|BkdEJLumsOAKel^LgTz>)21g;cZVK9lBGFUWzVGgQ&YrvDE~T|)*2>9AJODp(liI4X7Z5+tH~-9l z?e)&ZXz*zq>ltF}vxzdh%bJ+g6_G)b{hejZn$Vy-)r)VDLu5|7o#is*moHylTpJsx z;5hn2CzbB*#RWKzsvl;7*PuXDv0eraj~mRf?K7ij-wCwuk&3sc_is7#SL+9QcS@tg zeUYT^FPpZ+;efCE$~pb=jK2cOk5}fD0x|)g`#J_fA~z0}9x`MeFK}O*%_6?rc>(=D zI-F<7%VY+6I(%*!W|I#S6BA9%Uw*zpcr(7D0!yzOoP>LF;Shd2)gAbi+gVg~C6>P{ z8uv0CiR%AI`27Hnu+s9sknrRAy|%Ek6I2SZ$Bxda#5_+i2VzfHq+Lb#+GH(YRrW{X zb>bP7nQb6R5wu&QvvXN|`hrPmMUAPZrk1{VVg+V5S;z=mu}#8!sQ78GvZex)dMAIp z1_P|}7B^Z=pb)mGsj2A>S21ukIrqsD)l89eRQ$MnO+VdJ6g}`&92FXUf4MQQGJx=7 z$+q$KX4EYU3IX|12cQ88e9}SVc$1yfKQZc0Wk;X*-!hK>4>(n0k41+_EVf2nVc^cX z%SyEh(6QF7@5$PLhP;5cmoIMqml&Y_B(jL#z49yjjsjfk_|?xu!U;f>4K8?i}4KB4R| zACu)*OQT~1Jp}#>;sti121jU^S-7{@kWoWe^;LMz=L{UpwPX|*Ly?mHu>cYZmoUD# zSpaqiRPZs_yTGixpD6Q|kQd-r{Tr_B#yplv%LeTb0eTs)4CBNN%GDnW<;eOQU;N1z zq4UG(&F!lG^_i&iE`mffG>Ztx`Qxn_I((a2oZ4v|huBE{^&?sm&U-M$Y_oMPx-jqk zB}1kEABWU=U0OiKcD;eJ5(n%ym*doX@v9yIrdvhu>zzi$|KLl{{^Cpj*FbC)AgD`@ zr>9zQvepJls7;^ye@?zP2PWTxIqM%O{yHk%{2}m_uU)oP+dr>$7@JyC`yz?=pBHOC z{{`UjLhBNrM`%rDg=95RAC-{)KzO<1e1Grscl(DxsK_~-L`chG%KKgL#{0x{zM=N)RQ2Pa7(JhL(9w2odm zUW*aA2{$v)noSa-n{)f3IU5km{waX}AD3+CXDDXd!_E6|&t^eB-2J(cu#D=}_T{H& z%2(^Uuh)Iz_iR3%C&2z9#^(hygmmKdHy8Hy!@}Eu0y;pIPyE+M|2v=VmA_^I{G!+Y zf6irq^8DXE;YRjcPrlLsdfG@tl^t|1SQFgZRamat;wQ%-Qi91ydsOaKFl9J2@3>-_DvT_dx-{ngK z=IsWXj(wlRk@FHZS>FdvhLlAbT&Yk$%+vqr%JsNB%Pw3wAom1d>N)_4E7mHCY$^mQ zdn{LydH@P(G9ot>`sO85{KUkbSWt#)KySl6)89W(Dvl|XKnGF`{~0LV%94GQJb}4v zbL8WH6P|L9$)mRxSvuuBvE&=s5T8nk`=k!&<=k;BmKMr!y(IAE4xn880QB+4#U~4P zb>-U9%^7DZ+S%E`m_S@)xM_aKjg1Gq!rTVM-iIGC;{a(K8x-`TFJvwBBft+;i;K_c z0K7+B%BN4_dyibsf7tc=A7*S*=Yb9!@tl9L;45$fntm*zJ_)p`{oGkqIzhn4H`p}g&RYe(P^B(XL&>`Bh-Hb zz;H+SGQ)J)TUP+}uB@0izmZ73u#Q5Fi|05{--B9c&;sm)R}*O5RGS2+mU%G!LiIjbf@y;jwO^Rf+vvYw zW~Ty~RNO0#^5<9hTju>AZ+i*+h;~Y+Sk4w2?@QlcmySez7R<5orQZSxS#IwGNiFOT zS`DF`K91#d&EMS{(ZFKoyTZb?R^$^C6N{}q6M-H$U|gyfdw|0-CoIYW%Hw>0{BhEg z5iyx`^4fkru;^#jfBtX(GLV7Q>Sgn}wez04HJktXjbgy%-st4z9ZJFIez0g@xp+5( zN8o~1`Nr}|U+ zwgi!Mp6Pd&MYeD7h1Ay@xSbreYk0_cHyI??3_IsrDxuczyt#ZCZ=D3u5|yV;_}_Nrf=`YYhMMI0b85-gu;4n8fNE*hRHGE|wBs|8?) z*U(>go=c{au+ zl#Ip(4o~^&kF1w3zpHH22#MA?7m4)Q~1qHt(!|LBf_SU z)^^E<(EDyNv07GMVSVZ47j<#iL{eB`-?Uf^flO%sP}1?2gZP31L_WJ_%$!EMV@@+$ z#RFTxV1oZ^OEMc@Iwv(&$>6!VepdJWUoz|8egBJw=o6jvS%IEiGr zaeTaQ7MH>;C4Cy@U0h-bXfF`twvQtdlY6|cC7tD)W1rE}J&kE;S*{Sj7Eh52kC%HC z9fi%zo7(=g?%?^#&Sgf);|FN|Pnel)^Rjx)O>B}Cn5z+Km7l0twZY_iCsVPGc$0SU z1?Zqrz{yAw^G8U_1o@6kRT&3IG^?9ZxU0G3x>UG3ZNIz)!YiDrcwG?5T1M@z`t_=m z7Way>_LXm~E6OoY)(?Cva$s${XuD8z5qO`pLEDhk*kDsx9P`glN^3Rj#32aj8yiCr7^)U(_dnc$KS5J)u@9>~9{%B;(K9z35K z4|E~6ZK5IvLFAD>;4f_3tW=qulp@bJHp5s{49HqFgCwQwldMws$jGTt!?biIUS3o; zgzy{H-^w5&UCvLjz4o1d;}$}KL;eRCpdaDB_Beu(#1TL`_g1sl~9p3Id% ztbtYEdEv!7tu7OcfTpKYUH+&KSoIdHrR*Vp+dO^Tp9%FF2=jLz7wCZoHp*4@rdyyGCme8hUqT8U zFM->U>yx|Sym({3aqujmh}QnLquHft>PZ$LY=h&`Zf0&79m}4s!NdXPLebK!LL^5jGL@H9ADx#}0DH zSWbELSXNSSN!lLm`C-R8^gOO7!b1NiAH~^WN2;OK{v)PX{;(z)N^o< zRm=93IXT2syWU$to(jQu2he*v80j7!_FgXnM+_SGYU*~Sn!adj{TLuJ1 zI3GPm96Q7g@P)$x1kocJO<$Z3IV1%9fss~PD&DOSol^bgvMs&f)|z(c_+$h3MVefY zlvpUd4}@o4hSx_Stlpv#1sNm=TnYaNRL>nG>bepH`^yQGpaR&0GC<|*BPSl*s*mL@ z=^o?SH{42f#L>U#ENfSyJ_YkC6_UB_{9UPm#02qwxHFKB3y`1yZ$2`s@``(czpaac zI0!wz_T;G395~I~oSaw0dJT^iBsd11yB&(F$tghNGT4Vh5Xec1DghxOxieVEr8j_g zzY(AIZX8m@O9cdD$f>;skMYW<#ZhGdHM=6P7Lz06`{-~-B(75%*>e};`HV@?R{z$L zuaNlUW*nl_*3)OeBDk^&#E(DVXxMN$+yp?wRm|}^Dc0B6lO8Ebup#)wN+v6n?l)11 zBw3+}ehvLhDo@Ff+5$+usi~@#j#`o_rb3u~+_s|#Y_}&KyD(3`non=*kiU7`{zR5S zp_W!9zk1^WMtCt@k)v&o3o*a%sA8S(>a;v>*4D5K{24Gql$?VUreph&_*u~PObNJV z>-2e4qv;dbEcneLB;XuA-vCau(HBnmD>MKR2A~0|T;=6T3gMW}k&U-xmz<8@;Ajhg zWf}LcEK5t!U;MCN4*1V=Dqz1mk*f??u>|3;GGJ14Z`%j@SXlxwlSP4w{)Ke#q&SmC zUY6ct2|UTWwe;%j$?eet@}Q@XcG^&4n$+XcU=B$cY=BJ+%JN5k6CP_vhR=X#Y}SE$ z|2}10_`nE8yzWfg2IFasds7j>8_>t0oA7(yl{euROu?cJfj>tVv8h^5!R}B5j}4X? z0y}|a`VeaB+G7}pQ3-vHl>*@%Z*|;`N zXx+ei5ML^mn-9TsFZcX-ThH8Tm|r(KwBLv|ls8`J6w_-pndy#v!2H zvT}BA4X{PE;hH)P;a|ZKheCiDo-a;l);dh*N~OXI%^w4QKikyQAPs$_QzP=4ve5$V z5&=QV8oh82ziD^61MZU7#HYSysimZ(Af*ac%&D0QAo#_I0l0=!&ObUjBN3n~%B`Sr zNesIUvfZUWog~rSY)&jjozM6O*hhPBvM>>eHZzZJXapha^-Nts=e1$Trmc=k`*$|m z(%nGUeWzBVB+<=sJeLnZ*?WL2Wm7RqqdbXC z|2Xx~%va4rz4EfM99Sj|TQ@E1@5O7S89?<8ltYumGM=Z}Y6?lpZ4OLGuo$u=4?%OQ zrSV4^)!nf+#Bez9hCD+BEkz9}hFNa{(+Ot&`n7|A6G#TXq$XKM;Oj-2vB`MTO+0|_ z+7dt>yNs7T(9k?8*(jfovVgbYurZPy;X~@LK&wm>T0xO_Ly>DqWFa(fbkR#dJ0{Go zE7U-dvwOM=?1ll`^pTG@KaA$*t9PATaf%=Z5W%1T28_0uOp_h_BA zBlR2Xh(>w=F;3|~V6(3OHB@T4=i-n83TeKPt+>^-OT|IjJ{9y*#}qEm#nOE{UC|9m#+PDAb&6b5{>{5-KYZiJZ#A z>nB|UOan0#H%v^-obaL~GYWf0$LRe+`Jov?xR=LKE(RZ!o&)VAO%fUN8`7^w;Ur&y zfnt{^NdRFTpNqj@FKfV8Kr&-c%OuqLo8%fgwFHXW5pRZ)<-GXe2JLRPU_ zI0b5e&AE9Vhw<)8onpw1N=t$RK7Y2xA)>Q4zI1W@Wdz$xG<(-e;CTS`PHR1eSrz)p z!a~Kge3j5RMp&^@WC$YgiBCX-K3EM;Jc=gxr9QC2hqZHj3F>vj@7=9P6cS7^?(8ry zi$CZ}`yW#q;{V+F`*vtw?g5w|0rK1%b}<01fcN%ljUEb*Pw*4w&R?&4oXKpBLJfAgddAfCnRlI^X%#g@+?v^~{T zp15Pc+wK&DBLOz~IHzUQD}zr8(e7Up|(JTVqy3fK!eqh?mKNgV2nq za~u?bT0hm3M(3obx7pd-PwXH6Arc$t3T)cv)44AOJNEWI4>*s8Hs|G{o725s%%mp4A88B$ z#KQ!#?Sc~FY2+3o=G3`;?hcUU{fY z6qRzIa^6^k!fyv(M+cTyF# zZ!(go%Po7ulI{#I7FvBLX!JpWjJ)ueM3uuGdzmuGs-&R82)IX0W5mQXKelQ?pMgCR zSg@#ZADU|9RGK_}bXSJt=T~paE+RcfjGCXHNU5=^o986K_t6^z+FKB!=b+Y{L*utF z5+!|U1yazGRfV#D;JYVs+gj1)yCrk93lx}*df0#N&3#Y090$r3m;fiI3rVI>U)o^(FBGy19!Ua}&Uv zTy%}g$lI!<(3o^{3PiH$jq+}gS+jJ&iws2d7>Qazij2YsY?wx2eiV^+<@e{+x1Z5ych+!6JLdcx07hyS9`djKpoHMx8O zVod-p^g&VlXtF7{5d`Y|+zPx>>aPlP1{KICGHs~veZWcR+J z;p8b_3!2WI;LDc;xRN@n6vYE1VW;`_L<6UjI`2E3v%h_so~}^KvT=4bWcbDmtIS*8;L2^$5q#*3)DUYSw%yWosD3O6Gss^P9U5}fIROsrD01Bb zB~P$Wauo+&tkc&NvT3N}+AW@NKpg~H>H;d*eX6|K3JkHp&?B;Q>iEV@;X!cgekK@D zA%Jb;11QTu387IDHA94&fofg0hO%w;p`hH#_btbDxyA84Iq?NR8H!-Al$Tu*u z36CHE*8Rny%~N5;Zmw+gAqPiptUvdQzGvnGxUoL_(8P=IRLIrCa6)pZyRj*ntfn+B z)Bmyc^8Z!@+a(Gyp#7SesSJ-!PxY5VkEno2*c}T4LnRCo-ANp5a1|^d5&$k4c+-+p zdTdX5gbptr?cqTt@-6w7BKa`Nan$COFpVD*5OHRI{LJQ-$IP84>2 zz{`?W9H=`%Tq8A?TUX?{8I~R5RX5?l#SQV{i%h8uFwrh!vNP_i^Ww)sC?Zb&6rskA zYiu<66!-uG*RB^ez*_;bwxqN{q@U$@#551xv1`grkFk z0^=eauN~9~W7z@#Dt1+Dps87XP)JDYEEY|+k7o#3M4h`^Vv+!+gb3-)$4fqBN)Hff z_J@ZsuUQJrT|k>BE@t}Vp)12iRt2+h_)i0EN9r6GpKtYAtR{&|-CP#*iQqOS7 z{bJuN49c{c9}25s;y>iSQKbZbj){LQ>%ONe&-Jr+lg)f7of}|#Wh@{m zp@GPj#m5H96hg@s^&_1{IR@W`#xyg8#|$3Aw#g!hWznjN6$M333~tLJB5_)`ixo)% zFV-8kFk6q&OMJj1#FbQ>W`s?)Axy#Q(M1g#YV==WoaL?OSb2 z=nX*Tj?Wk16l@3IdYY2r6JRH8eg?wC!;e=$mw?EI3h*D^^Dbc)9z(n7*>+RHahuQZ};oGy;LL4_xGF48#G)s0dU-Guem2tZ`be5_6im;zKvEfaHy-|6 zcsCR7ik$gpb@Ukr8kIzv`QeM&C~=@?%hh|fgw1c2vLxOd0-0=t->Oa=QBFK;2=VYy?bY| zL1P0>CXpb+#pBfnNW5swqq$S#<4(m@RV$s<)z#fg&2N(tzcVGMWSQrkJ z$O!b+D!Gb}y&;l-VmA#q>DN0*{toH_;oZvdTO3{|{?Q(Mqb1Jyp#WlfcT9u*9CCE( z33)L?Ul;YI&W)@@&Vq?iDb|Paz!;PaHTW%x{)m~q%azunX#y< z;*u_p2m(@a(2pfNj)1$zTgYPkd4Kwk>?(fucpXBIJN3=tZH5zprEOn;-Fm*g%JZv0 zq>e=Uza`V3HMEt$H!P6_`Nzd4G0-t@o>)DC-HIYWn|A1(3g&xg*hYQ#9u;_SN`TBD zyPKu#=rpX4?axh)9|@XN^a=4Gi~i1dpV+tY!T-4GV}@KyplSQ3tgA zkjc~YHD>>^LE5~(SeVDCbib@#{BL3&o+EWX^Z$PAmv_E8$P0Z9a4iF>Z(snx?(cx` zmjU2*0y~zk{;K~(`~+B`3i}mu6*NL3^kP2ueH+9n`z(BhVOSswaOeS6piD&nwgR;s z5C@N(A*pR(@bzlX!`1hE`LwRD2DrnVRqOggJ`+IdS1f%Db1JG0G+C~Dj_#wtf{i{i zFR!_%s7#FQYHxJkMK@Lqu+vm)FKYf@q$7ar4O9Z>{y+1||II%J>`J>2h~+&A>bvRB zzb`s&GXDG8!eAEp=H})~IsaMpN#AZ%IM`-!K-dZf~f^ zAB|EC=x~;6>Q?D3nRm~?M1g(V%M2dT=lhOzq`l=Ez3MX;wJYm}3Bl>7Yln%3H_P>J zrQ<9k;*s3ePP<2Msx6-ZOR;)sM??I_x+_GrOD)kh@V}eg4?}Ju2VAy&b`?n82hITT z8i%9lFOKY=TWbx%|NQ6Lv(Q(M)7%^jRzG~-`ziS6`r*V2CCfjz53Sn5Z;IO{&0bE{ zg3(jCMAS!1izXW#8qBZ|(hBs;e}FdZY#NjydZfIwN= zt?&%xpJq44?)l1S+!4ve99x3vP4+hzQ1e+R2rP;U0~U?_+vr~g{&ge69dvtH5Mp6z z8EbiQI%`6PKN9os;YAO($I1!(mboa=$gHQ|6qQtXZ9HLu$So4|Fw7M=FM4%JOAmcVuafj z%bTyRCsKTrj9aod&D=d*nirwMIKM7O{HVo&06j&2H~RDk*jQot_}&nT`-U8U{cro3 zfRL_cKph49&rq@zD)9FS7G%^IZ?|ja(fvI3I)k%xuxUA$?Bg ztI@Zos~+GAe2Je0y`ZUFO|KV{+W2b+`s`{%C%#$@277LBAowE2l-_`_q&H|^9uiS z0q7TImpv73%RjugvqdywBf zIlB*8>5Y#T))3*k7z(*!fSA*!E>hr^qE6O!FH^yat#i7!rhCMkw`jc`)s!iwwg*@# zUeVA0>FwW78-#rKS=@yCe``tut%k|^AN|C=)$Rl-yXfK2elBGGh%mfpem?MN|)N=FDq zPR?ws1&Smf*-lO##idPBQK=x1B!B?APz7DS&~p%u+?z$=>G?{0kC}nP=~Kr_DH~72 zGw^h@Q~H*N!Rd*`>bT?98aO;WTrZ`^<&r?{VyMqSP0fTR7~8#;K!saXRh7kZ##QZj zx4y(-nu~^tD#gKkQlZ+xd@X#YcJ1B$6O}ZZ%LCf{0V0nZ2_mNNZd}RkxI^n$d5Mj>j&h;?1?dp@a_6N(edzTw{2`}*0S^K zlgOp`uwLAzxt)&3g4P{aj@NAiTw~KT*8>@91wF2>%j27MZMXZg^=nE>!gp#eHMtq0 z;-C5w$+%r6Y%neJ^|-k3(QDn%=BgGeuap}P#eg^#tTt>-EG01((Iu?{oGub=F?qSp ziB)gg5HL~uB10EYCrtA}b}KmPLvMTuOqBTbH|!?JR^Gu&_)D-jbc2chB zFH)Gf7?7Zq(vY`2KkU0detZej-h%}t+w1i+Apddi*DudGxD1#V4Uw>;gQ;IL(Ge<( z^>p1sgF#BG9C7+N6^^DKa=V%(-_5mShi3SjO_cZ}axWOEczn7(;?>t^!eqSovXkO(*^S%-X;rOo*XS>1)Aew zew?yiU)^TOC%}Bob2HX7oFai1?Y1($Dwz}#nJc+DUJS#_Zu=pi^Dt;KhC-OY zvk{>DS`3W~^Jn8-XilCh+JG|Ui`!L6A>zG#s z(jkPDgGZUNl6?yJtIw?ZkuUZjA-R5M)%D2I^k-|lI1F@jDYd89iSbz7y>qlMgUyo^ z*lBc7c+T68MPrx`_JmG{&Q~j2)MU6ZPEqj*sG-eu+on@q1kv}U`V!XkVHQk1b4BlQ z(#?BwxV##e`5t*~&9jC7y02PXHqbzgT&xBrk&;{YcZmlwolHkLt&cgb@DEUe|DBU!f^Cb~Vxdd>2sU_YSdc4l%| z6?THe8qv9Dv(mDTVx{d^bXK*!+;u!e!LQjZ%b#<}K1cliKaTk4j}*w%4Je~6eOymC zbWlsNpKxS}j2XfIG^*r)KcL0rS@G8%{j{AQMkG)Qi!B&qGJ_|o2jt@ zyX%6ahNw_QtLB;aQ2yo>3M=g90n4nN*;-X%^dtT*-i{E;gt)9^n@dmRxdJijd^v)K zfelvEwIg>!7<9bMva#5aoYlm_T2Eln3B^ppv9yNeH%U4K|@ke-cOa6d* z^5@rp1aKev8a~$1-;VP~uy}$FRrZ-YT=31f8VODjD3~`^g)wZ z_|y4G_3nC3ai493VWG_H*KtyMjURTqUEaTXr|{AW9+Xw2a^BY)CsXU3@PeG2+)jJ7 zDad+lI-9b`)gXo`ViHYugT59ivl&Ein$pLok&&FY-5bxno&gC7Ti2Wk7=FF(WP`MB zPGx#%z;)Pdt3kqe(mhfoZF;dBsTIU$(^CGT0-Q(4^r}prra4ffnqU=G-I^O_tDc|! ze9P82{Z_t__9WbX8xt*^w)TzwNUzCtfYTWJKO0r@E6cO&;5r1AmiQ> z5=T=TFj1=>=8DiEcKl@4BwIA#ZVzfwZ4GcKHyEpWkpm423L^H8Y0nr~T#HcAV!tRp zYO~C6DmD;RqXGk-rTKPWAD8{c0HS&VZ+D_<*v@hyGqkv*_;|lUk3tBsPJGs_Q83Ls&TfOCMXb=0k4>b_b8cr`_*vxdh?9!(HB8H%qgoq%5H4e zWq}QkUe%+?-TEO7$JteCOdNiTN5@;^@9WUK68G6<`eQ#{YPpvAos2==Pa%!z9whch6|&=Yh!KqYXu2GW5F40K4TW$g!Q{TK>@0hO(j8cw2)U1RmH6WF za@S*RuB!~w^HThog)?{?fUZKy$TtaSz?3L=!!a@~)RZ;=p0XLI@b zBHCf7r+o0RSo7I|%5|~V!s4R-M3w#KdV5|Q?)hRX2vsvGk9F`$B+gB59v5Nk=-K=y z|D!G2;v+Jrt8Pyr85zXsXF4oySJtWR{vn6HyLF$E85wp(%cq^0HCW$%q)SZH5|{?@ zHbhbKVBMZwV@3CQxL6Jvx1d3sM#=Dz~N6J&d6ng?Q2 zr8X$^ShoREuFYLRxa7?u8X*J3|9GFfAFWWId9(C(4}&;;7%RXP{Y zhn}C#-un4aP-jwy$Ak(>$E5h*N^dbWz=8~Tc*7`W+|xBaIPO%RKCN0>KnN}gWT=e8 z^r&hUzdSf>8BP*%k!?V6@zar&r{TF6L$kZRpZ0FK#`bcE6iEd>x^>nLp(o)wnTDi1 zA3~9K|28LuFFpRv+Zn*L#E81nG3nLBX&EdP=#Jhrgb?0kY7M)6 zeP`6`<2D;fNlB)`IF$4#-^2JBFg!f`T7Odr(?y2^t-F>ebw|h1G5hQw=QYC|8TXpm zE0(qePF_0Ins+A?*^q=K$JueQ^ttw~u0i`zO=)%z`zj#IRkqh^S255VH>#No3E7d{ z@-aDFp>JjzAD^UVX9$s5pH{46eTjk1XhT3`w(PEf02$D=llym6C-CMRj1o z;;^8*rb8oyZ)SuhP~SOW>OJC)>&K%y+y3V;61$8~g}}%`b88oPqJwyr%JABsw^EwHrgxc)ZJB zHMg2YEVMp-%2&`u2(&;)4K6D+Wz4(|ac*|-pjQ?4uBTzaq3H>Ou|Vk8CJiP9epL!_ zob%j`%UUu*pX2!USmFDMnGw^k{V}YYYXE4+#$%HSwKea@OJJR0+A!c9+lDYO`!dV) zq%3Xq<23UBRr|X?L_tHl-vEAZ87xN3k!9U%^tU=9Ib1-yL0-^RC}4gRhV-wl;O932 z=xFceGHk5qFlT0$AIm&NqxGzX>5v2OvMfeMU>_^7(Vsryu=&GZ?x?qVCzV<;9j}xc z>dO-d&*XZSE_-gJzVKcA_Z}DKRvxZJ%Y@7Ij`XyN<&$YcBDJFq-{u+LleLP(_+DK!`2|e=S`N_6k%t$rz=xV&D|<_uTx{sr$Z+XMSZ4)>*%L$8W85#p;IkR z)Psy{;QJN_VVqj@6xc_AsLEOnlz6em!Ts16@%MS^ioEX{Q55PEF?z zitUiqm! z=knH|L%g&+HsMOYeIQy%RCgJwR%T|L@*sfYat$4y{&j`l(^^-#&ooyn`}p&fjfClW zxHj~66&Ama0Tc`#L_7= zk6(pIOTyEeFN<-FN5svi?Mx7O8%rRa;e9n6HKWy48-W9J{=nw-Q?|H`awr1xOC zey~v%b6`}}vcZKLp!$`cEx@4QR35x>HZ&vPZ0lo^40hj>!`Kj}%hVune`YV_JvR|q*cq2?cOj*uC%9;y zQJZm0H-tYmbS+93ls2mAGysArUi{{YLw#KtyT)m-mU|KR{VSC*5XU?`);j_oXwyO4 zK3uULmKRe4H8<{v&sHEjC~yH6tv!piHb#69NqXHosrrM|!NF6^#U zy1FE-e@#oni(lAov|V+qM1iT<>c?JdXrL!9D=MkftV32dUSywbK2#>X={&y;>qWX6 zE{gy2R2?XxEE-T|qap(?XP63uQP|h4tqX0cx#b%QfB((HL{J|-rYTo#D{Kl_DK*4v z>F5NDJs>SCY!lnbt~hq_eoIFs^(j)-x~z1gfQAmsQWShETzBR#xa5DZfHb+ci&+#t zcHv#VGRQPvSb5hvD=EB|d?38c>xvB=Hv!eE(o$NiW$LP7 z?dN10Zky)EEG8+-@gEMyM3Ks6YkczX?R?^ul$3!nG=%Et;ZcWC-EQcoT zK3h$Uu)E882S6|f3!+Dy{RrhM@|AAOspEE2)@|+Ap6@^O`x3dCt?t%)P^#?>xH!Z) zD(9TNcRu175npUy5Fr}ibJ^XNT=hOboP`jNzBXKP+aD*H&<#NpRkJ6RVMH1&b{$6w z2dMZ;9bSZ(Cu{SQ`TXf@3zZe{G6RS%<`=pxiASqi9@J>gXGxdqSBEb^4rz%5hD7mR z5b0R9fj46K=Hbd-%%qG0&Fj*EEm~5T44;7lZ!9>qo@c1z%(V|B-=aHfZz+UtwDt z;kRn%&nij=s=8**uSGa}GzTo0TvDPmUz@?%0zUv&+4J{_2C&-juwo(jurqUc$?zq8 zqQ}O__##bIpOO9+Jyf7`9`H_8m5Te8FC_Zy=@4}Fp~wqa-*%mTp%W1NS&IEt_j?+V zXd|eZ804+REDKxcW>JElwg6q;g#x9 zF#BxsrX{wq(jvLQw=U5e%>~z?w>`i9it2LZ1roaB$pAISLXk`Z@~P##*C{n4<3L`F zkL+rKBRGz`JKcE5u4<$6x!pkrb?bf>F$SY6c*72pdLdKSNQn|2uLn0Q=p+VGvxn zn(Py~?7K9STe5XyV0PLNPwuirIlh*w;S0v)SfJBwsa0n-)1XimG=~G>zRKrCxe2D3 zSY}W3`{HKj!hyQ}+?j($7fDS2lP^SJKlY)oMoSa8ZxwRLfG==|kMlgu=cg;^=;}J{ zL{0ekVX&eQvR!j~qb@xS+O}vrCU7U*KyS`))v&T#)i@mt&m4OBX{v}l7J-2yBu3w0 z&~f&5?jX6@?e+d7lR6o*^s-mhL*Qno zayJ*4sI;Y&j=d=%MxTfG)o^?qOvEnwl_2ODB#jq;-}+I-5xm;L_-gCEO^Rir;%no$ zFA4TLQF?Gad4ya+Gft}-O?f~KlKRX~+_wOe|W*s|lg z4F|zcE*>x~NzFDd!*OqVhRf{i%~W1aS79AsqhzqF$!omAJfy_3mRlU6=>-{Qs1aVY zjMEG2b1|;HiW99^ho?QlhtrrAbCFw(b9KLrbphm*#CNpyyoTZv?|HU!h z+K$T(JI^a>Aq}e%b9FWXyS;guu9+f%9P7nayHkxYJvG3lv{y=}?-eSB0sS4!|LpI= zf&Pwo?=}M!e|cqP0Dv@>@jzqbwFhR+>p(kcY&amZe(vWZ5*;m_`o(X)Af43x{VNFx ze>>vDP=#~Mrv#cTTS8Xok0I~)e&$gD4b%e6V=JWaHE}1-Q1*2ld0Ew##>A>E@`;Ck z1*)IlFhE^RmpZ(c$|WVT>foy=h9bwC&g-@2=z3+nD}(*B>UrAebfb!@fZh;i|M08q+h9Rq&RZbC?KR~&$vRLL->8dxvsmPtZ$lUK? zkW&21)fT{VA@M%4vOH|#m=i#5$}nyiSWWbx7S@ei^L@3<7pTvN=0%JM1Zle|INqy( z&KepQy91$S!N@EibSOsft{NH`^oO<}G)r+0yDt?G*Cg?s5_djJ&6@oq-| zP?@n=bI6cvS$Ey5#hPa~9SDy6qxa<((&s=7C>v4?)%32lC{!UwoKJY)&}~|~9TO+y z%smG4^RxK}`VxOvn!Kju-}Iwt03Rp~*Elg>`tp+t4iaa$oftGPkRo24+!dz8PNE9O z!z-9xkcpJwvY!K?Cu(p?PkR+MOU_na!-X`*SJ8{=s4Aq|mk=UdJoqh-6;vYwKu@Vn z|I<=LXfcc_`d#6x?B_r0k}j_UE3z3o5>xHTq64NIoW=l^tA{8#zNCqJR!fI)NMhs* z^=~SUl_gy&@>DHP*fF<-Ox1As75tG=c0>~8<48NvqlMm}NB8AuW0 z09qR6!0m`B!5{{gJe82_TJjJUM8eEe>ExvJs$!^^DPhdo`Z4wMt5@+Kk!2Yf3lki~ zbEKe_ZLSUu5Hf)Bh3Df@2LdX;_8enzYj4%Vx5q`F3;NxkL`H)_j3-{+EZ>aP(^=rN z4r|C-W^F;bj<4lc{k+b8P+C#=CqIpU81vna8RSq`!0Oq1xn2&hX&A>(B}ZXq!#bmH zfSJQL|NlO5kW(iFo#|8H1HtNn2!2J#6bx(1m8r1PeVIjHKVcH7o#F!jTE;E~olP`N zX~{0{F#t=F^qI>jsR$2f*}cMdU~NDlLL<60O!RopPTjsb@a(qI}AkyC?BBA>oBkUR7voFoDRBVfP~{js-!wVJCwX+oP)-tROCqMop^< zB#7vg01ScMXWB%xGjdP}?><=%vibV+)3lU9RXY}7!tA`Cs-hHHtA8m4^IGtIevKD^ zz-`;j?4ufVC$NSABi?FrECA42)vuRJtTPlY!+zlvdj}EdE8X-e6n?fpq``IR2$9xE=W3`ayX7*J?a+4H{~T># z-;FjDB19wRj9LQt_3OFpCsd9@lqNJ?wvFp?r2GSQbaaho-Do^szbtchs!paF_nf0* zx(_aOLcqYlfO)Cv>Wa^5`H7ei)B>$vpN-Su>$WgY1$(qsK5V-K34v9Q-#3G5jD+{!o1S^VnW}mq7gD}`W<}|S1WP9xtpkX8zJMXYKGFWT*Z1{ zrNe=|7sPK8Ea5?&j~e6wyc7ej;hwLCyp`TS;mxOjReB)flvpo{2KWc3V)n!;78^th z3J=J!XWJxdHJ3STbL}U$yfPUtN|o}K*MHFX?y|^!6LX#5Ln8l9sfw7%1PgCe^5BQn zH3Q;zo#Tb?nPLo}>8fp4WvshnjTY0S4^pkCR#$prJ8od6wRzd~W@4N74{vqmsRJIU zer;rV%-jwjFDlXp;;qMg8PGl3E4HEC;ex_K*v=2zLeEha2spu zzpxbtdMKdE-M4JN;s;=MkDKH2t9?5nVv+z1ekdC`l4RgTzJ181R&tG^H@bNfQiHsn zs4y13s%`3lu|}oqnf}u`{SdL9SVM(w3o5P!7!huVC5b(HH5SNOMHSj=fnjp4dU3D> zGTM*;pWmWy%#~0z;n{P%z?L|qjpUbB=+Zg%pdY!{&j4zLHxQM;I>gB{grG!&`!V;w z)ygp6Yh|tT%X*XEo%h^QF=rCWEz4i?n#3RDTmM9DlK5aj6(KS}VJt`oap9n$J{gc9 zMx86jMgT$eAuo9eY@@dK_NGxt$MnncU%yB{=AJZ)^O5X|yf&)uA8Hqd{#nfb%;n#~ zTkS}4U|6MusT`*;w(bL1$MF8k>J(Sv=1t zFE1#yTIXDF8X{9n8PIYXu-G-oZz|Kjwv=0ZPzB(RM(QUHI*hn5Cs9Lm%%n^N8Dgcv zfv{;QCBilGX2sGV5p7`3A`jq`+`&X&4r1HhP7QmRVv>~_Pb-Wm@qvBj+C@JQd`|`% zAKqnBg)%Z5M{+9Q!~W(#0@oDUu*N3Kax@-z%01(5R)!L2{2f^pQxpGeScg>_z_K+w zFR<_<;CH!vT9EM{B=ELB@N7q&GhDpfa{N3inJ()VdU3)#V#&w!&rj)ZK(~W5RCURm zQPYQDp!75=o@k-#)dUOqs~L6aUF%ZAqHfk=1L*=;2G_^lj|muw9Ixb2k_PiMP$ zdP=kKBmjWpJ@|pnJ5WQ-z?1F{YixY6e)hXf9s9i_PRWdLul5ityPWF{~H1VUp-!dDH;Gg`;8v9 zH8;yCIRW-ao#b(&N-k!VUwcxbQB%C;r_s1eN0ZDnpZkFqPaj^ERYF2y@T*p(5kQ6p z3`WTd1K-+o9GJdpYI>Sghy)s-6Jf1x2&+2bEF;7wFX#~4P)AUT#T7`QH%5sD<5q5Q zddenm3qENhCQoH-VKo!?Y0Mr3ChVE7YC0H*`4Vu+*+Lg$9%7KBD`;i58^)51gG_{a z^i`u1`KQXSuAo%&a&lfc+b`%!$XIM0>@~mKYVV1FO4M#bV3$ek~-{Xjs?{7C~!h@+}1=YAmt zyM8m*QVU7viW4xciiB2^m+w*d^0MVN|5Qv)0`TY&0uMU{YfcAoX zL4&D$B6lB}Vu}fz;AZhDdj)ZOa_Dlm2aVzEh3zu&@4w(LC(s_Hyo(tm7=U%}gdZq1 zLp?gtMt||@c-KRT40CHU0qjMsg2e`$^ap1uFGx*|D=}9m_;GrAdZjQGo!NMee)f^q z(g-(Zo*s*Ixer(8hX+=%w9t$=(y?-RM!r6xy&t36XIz2EBjIlm$2KK;Xn;d9empFn z5+PNH7#M!#Lm{m|P0l&qK2u;FhFthckdzcc68h;ANi!R@sIt8(cEnrZGK;QHjkvuw z&a?;5%EQNG3F-NWT7y!3pHDwpaJ4qgX0gF~Es96_z~W0mYMXPYmlqiyw7~N4kvNfJG#Z$d3MdZW}Y^4ksol3k)pypo&4;1 z{DhgFwPnu=9T7p*=^el6Xl`Usi^O|{Dpw-k$iR!JL>%ZIQt5qxUzNY1VXSRxCAGJ;1FDb1()C+pmFyQ+=4rVpuq|5 z5Zql7q;Yp^yz$2Q51G01?z?kmrv6veMKz}?Rpgw#zrDWot+h_!SGFBat0wC|1WfI> zR^t*yFZ63P^-TW7UbUA{a?!>q1FAAD1W`lZzZwMm>-reBw*+!T%q`hAFA+1>+1gR* z!TZh(fa)Bvj|$_uU0d7zOcKTQwM%Sw_~i`zBk`!`833hMAD_H2z)JHrNSy0HvP{n) zZterG3X-j&62a`Zr)j0iuDC1A6-UuD4D2fV$E4clZFacFY&LN;q7+0-)YR$4v(?8X z#2?Y5jn<7~=o&|Nr=qBiHEc)T_dD^G$%h~)5vhlbG`c+QVh^j3K|w(^+nKO@vmiu7 z8ftLzxxyfDUMv)MfEpBZoJ_8TJ9v5GT*oz7wZrlAWv&U?JY&pFA~w<1LPF7@6sC3s z$!#2RsR$v5bv5K&U)(_0AyNQ4DV5upB1z$S{Wx1wFm{F=iGZK+L#4Oglq{iuFMwr^iSvfziuVK5#a-vDLhI^31bH)+vNDi zbAt1scXow4qm1}6((5sa(?78bcuL4Qy$~}~ zWo2b@4BzOm!;tZe$~8EcOB=6_tBYpP-ODG_R>StqEu5RIz8+p+cQ}@R?W_4Tv!N|^ z8m{*Z*1kkGB+?em3G@1;Z{KvDQk5%E0NN6^ZY@$&uOd{Z{VWFH*pqT;RDYDa5wq}x zzbA>aFWv8vwER}8(|{GtOn^>$dwF_)I9U)!wxd6xA*G~lm??k7g}1z;;CFmQY*a8ay&3}o{z z7gNeQ@0i99zYB?|Mq(nn77%mxG+Qi5*=q~p^DP2Z1pIV2iuwAL{H{XXY+z!bvLefG zMW0a7Sjt=(C6bH_#j5?PVxkNG#}CPBwHMVUkv!Qed#+t8R<1@X4DPg9oRXPqYu&W8 zUA*+$dgb!79I-+#XVdk?VJu^c&Pa->h98#$1(>5iaZOWf*8K|~`qSMq%;xL;6RzT% zUor`#eXp?3Vuk@$AL5^8Hv#m3qJt&LU#`477A{6tu`1%`OIZlax6XB$ahWB*s3T>av&&`o zkD-pB?HV5Y-(lb1U~$1OCAjBc+ue?`ZA?SO=kLcyd4foo$`T=R=^JJ;c?w#|?`F#M zGEW?{M8uQxI>pS)@<$q?Xp@vaGx#m@Ow^JZRjG6k^05n?LSWIG~kl9KLNsd$9e*vM9A0?!a#txULjcATg+J^Q0Xplfj`)^me9k)5<{`1V21(z}35Z zF=;wv(I3k{r|y>)6;OS)QhAXeQ6_(LFcXJ_vD7V-WTg5Xy*CRHz1KMwCRHfe7R89P zQmyeW?!_aWL*&EM)S#1Fm99jqNt-Fd(2n<&y~P4O zKoH*zHWk-$tw4nUv)(pbgSte3#Zez;=IQ>ADc7=1sDMe6`0id41@42hi4 zU)%cMs7Q15eA{lt{kt3a5g2HTf%D2e;@{^UajH7S?fL^?HgKH#*}s(#GA@>YN58?X zzoH)jr$-trgs+ zmii$|3W}63m{@z3e5L+*RQ!yCgR3bLWv^*Zf;Lz3aREfd&%e;|Go{mmiI(=&nesRr zpLSSw7r$29aKxO}&mZL*;>J1XS;%M>3mIA=&CW&Bv)C|Ew81(x91F$<>zl`0e8F96 z0|>xgf`6E<*Tv4908IEyOnX+e5f%UDjypR2l4$5E-&U6YdLIqV& zt=w1UKrL;U{u-%K??a9zgw<1I`r?Gb#>*5%vU!mZ2qu9BTk0W(6Lr~=gyZyW#|pji z0E8J4(pV6}9zR`6)5oY23!$xc3eeq1sR&bREHF5v_5E!=@E1G%e$eF8kv-uZn2EB# zySzXUi6W+N5E(hAcKAW#+uJUi-E||?WUFGHB9y-Tm9$<6o_Fweu&9Ei(kn|NnqT0s zvR}LzvmB>oJsvw=QLp^8y#x@yO#Unqr1Q9rRJ9zp94vOI|M{BdgeXtEtyL(m2JS6k1DAt1yB z=2nhjOX1w9Aid;LB=I}fGfkRc2xo>IxgQ!3mPfT=6U8bi*dgN}+lU2AhCd;XHe%@Z zfXL1?8YP9j3g(WA8df$!=z32YDM)lq&fr$7kET_hPMhFj;y~SKP>zQ3-w4k??pQiT z83M!m_XGR&UUCOZ0Q21ZRZmEXf% z?qFZFH!PWPcY?Oq&zArdxN}Kauc%A6l#EOc8@YrMxlVtn)ogViHLB}WpTfI$*<``2 zQc}{Uqd5cBT-lY>Hqqn`Jqzufz#J!qT^*ZwTLtKGq4Kzo(fX71}Rw>zJw9u%THgdoln2*9XLAvP7& zX{c_bId>h)OqL{Vc92CRN?V!n;ml)AGO-T}U0o`!rYrS7yBusX6P(PoPVG>Q7wm|a zNl+)f|9DXU?Tai>$-2L4P}m)F8d|sC)7EFLfDhzN!!rtY+s^-G1^NGYdSGsIZQIVk zdyMEOSl8M9;#s*6TMQ%aUM{CBE{P#60x3Pg{gJ#vLCO0Cp_3GspuD$N=c^^T`jJXd zEP(G(+7zVxbtT8;IW>VD*1^ZshJlR6>|ZGwq{dZNk{x^SAC=imY(FS!OumHK)6 zw=BPN=Zms0{=^qAN{jkG_!}V0PxXDqxqp0gT>5q>sB&Y-eIyP9s0s>Un-=+C@i&e^ z$9bJRk$`<8&*k_Xc`pNNK-{LfK`fdIXt zRS8i9YWo&DsB4V#6zxcdp}ZU_LhlK#XR z0(|*KxYl2H8NZcf?;#`rYjqYMRYdS$5akOSFJrhdD=vfp+Yb2g8xDxV1aLs0dSmAc ziV`{GaQadSNd-nr~X!upoScIz8?6ToDRa(;UvIX1s(rtpgl$%Fav2xYo{R>zVtOg^9g{X~O zxKIsAu|_`uDj@kr^iSNv0DU{VZLm+@w@~!O|C5=UtUs)xKS%L%)^4&sS?vDYcPbiO z6mH?NBKxjW^DDCWhbxQrR5x_gfcHkgI$4H4arHsa=;#*$ zX}u^V=d7Q345$Da!$kd}tec@=EJaI6`7$pn?_MbWH3Lc1wv)u*JBLjbq4oUC$%oF! z-Vc7~FPTcykKStev%AIXL3zyDkMAoW72)7BvGa^jspNKyaq_e74v-61C5DH6b;p+b z6Z+43Om7BTNqiEsvI$ZhlR4bOrl+~v?Vpim#sWJ_eJC?<`}@!il5tB`mY?I=#`A>; zW$rVH&QyP3I?St4rVTL6o)WY@Yyyk?AjY1aIkqNb927b6eqZ1HWrM;b z^B6!4FL?9*ep=QiQG3-U6a@^9$Zye0cd@*i2+GAX9~be2d}(dR-lqtB+zv0VCA^%T3M|N0XcqXMR^ zh}^FBD^4rlXuz4R3w_I?y!K|`96?`o&Rjchg}Iv2Yb6qozg<^my);iuCK?x_xSEoZ$}aQi z!cpvL*ZjKW9+oBbHyYVLpxN+Svd<54j9oW9J@xN}hYd@B@G$j1g@7)dGAbJ^!;S13V`#zFxkg_=1US? zG>eiVZ6om(?x_K(Pv#}F>?Y;kQK|Rv>C-(qWM?ud7$RK^@RbNgo>L}4sgG#g+}D~z z;`=b4N+75F?!=2z>S|#*>=x3aEug{`EtmOP7MtBUp|+hl!a{l>1$>jD?8;VF*P^G} zn#r~og_ixboACEtm}hmrfAT#i3EQH!Z9Nu&P=Q5p^qaqyF8%s<-t+OF7)fCvL?i6Qd8s}jFB z1v21qCX)5}nQSQTD2Mn1I%%4Fmh=DqID^vc*-VE%0jy~ML*yzh;LpMI<@=|HCs_GQ zU^hbZn_YhYf7|8zjF1o2<*obr{^$7#L@}k3hwv(ZuJwL*QkIU1XB+V!#Re6Z#z=)o z=a<#0tBzDjn-sEK|Kn}Ta{wyEIL}cp2NJ+^yL{vL$J;hT@k?ATDg82&)8u}a4qU(7 zQBg**zbA(q=22Mx5A-k~W*evFC8EKssstokae|r8|MAZV!UB$FjMDi+A%I>|q+c8S zf^#kjgunhS8vWg-4p3+>gZ_h#{`0SXlE37102@lqg<>x#!~oDkd7Zjwf13LJ2b4x< z_{A1}{0a1|OL;zSfNlpN^xu2dhZ>H5w5(m3!aHfbHe~NaPdmR+SJSK_hFZR=ZdN3X zjl1XtIP7LcS{lae_7!~%$w|hP;-3fqSmDwq?pd);;=rZ6iNHuCpG=-l5wHFcRlE>t z#jO;{s@A0~7h$Q-zQ>Df$I(S<3N-!90FANhNZ0>Ac^-kk%`Y3^ya$qM?u8`|n?sB% zfyZEhLTbJyWOl1WlEZoha->hKCE}kZ3*2EhXeWTVT3&U+*ly2M3UK^LU+p!3OPtEM zz7bG<0;dsl5#q!$>D&@B+?_gI!dk{-rt&a|T{qi4Ufa!o`)0E#@)4bynm+69R$Jz3 zuZF3sv$pv_Oq^;sG#%;Oo&Wt|k4~jp4_`hYJxTxBigbUtZ^L`*LQQM^>H!6z>%Zb? z?fAM)aU-I5Rwe_38%&U}s-vJOA1D!jTP){{$bf zM`&p*u14|;iW58d%|R@{d(r#Z`pXVsql251ocdN1fg#2No?ii@OLQW8UlvA3X)&61 z$@j>Hs{~bKq{nYDdKa2gy2D$-Jul6^>VY9Y{P9jWN6_N;5dR8K|eRpUobz`v!a44bv_LTc-`xtD?>I`Ibq3cL7c0=wulCTUIW z<_2m^{q4RzBxzDiYW;E!jXlJ(;UumHj5uA6oK$51Pt9|c97^dg{A}ypXf8j2!iz=s zV?H2)NLvGv7u7*ck!dEfgO>eW{FQ*@HJta&n>}&($6Dx8!|%)ID``Rj8&Kkjl=~pJ zN$-vp_0tN@Ra7Pti9*#Is*-p~HrN0jO_OA_e8K1HxxlA{9Ev*=#hdjOr6_g0ctIk> zXE#%Fl;C=VZPQ~bUJBA=Ll1Gn5(`+(dJRWwes z;TdCKlWo-W#E208sK8f0z3GW{UvO zN%vP#;nNFJ!Xq_lZAprqWE*e$kmm|7O!uQD>PuUvR?d zZ2HFZdJ5x18s1aKy$Jw0PQbA1Pvh(`EGqbw*-q-CPHtcTN0*DXSo28ZG-J{GvbG`8 zjEtifHMKRN9BXrwQl}QBKk164%6xnz7KDe~s2(qDZjQ1yoZ+GUF=JxJeRaU)&t+mmY?(LWraz?^Mb$Q=?W$9M4`2+JLL4YgyNm28l5} zW%W>uo8+JgumkR()l{vd;ny>}kGnRWN#dW*+m)`j_l`Cv2;n*|A1)>op{c#{GTBqH=u2a5+z2t+LkCWQP( zV0NS777MM>ohq1pjdZ8f-}x;N0eeCDzFE|;-nk+LLM|VPpL($El-vQS6zt*nMoo3G zcwA_;FF)9brtw(48gO^4=B>?FdIjWLknl_qezYeA9H zRQ!aLIYPA*WWm{kN;ZomM~Hynf3joK(&v9bTM?LG;3S(USYBREi#&@0*HJ<$yy$+_ z6jtuMyhcK$_|Ec47fNZ`aC<1U_?#rP)Ff1(ym3kQfkpfSRJ=jHI~E#GhtNt%OeRedcWkv!*oh)aLdXjzB7+j6^2PjmegNA+c=P*fhp zn5X#9W`6gQmXo6$wu|B1HS(6Dk&3bMRg#j9#rYQL`cGsT3%@Ud`bQWti&20%s_(0O zQ#A!3HZB&n&5{@!0ZbC_;lhpoYcKWh7hlNUpPh}yUN|W0p%hd1T19E#h+z2B5dkP+ z5}dR*05BYX;#6F1Z*TAa8mvYE`d)24|7zjgd=LSr?Dvel{m@P_uJ5^Uj)JYP4tmnO zhCfM{emV5Kxg7FK>Yj2LuEdfF-7-&<_E1kC3i6(W$dO$o4vz9UJ3u{&!k>Hi_9gwO zS-cShf~L&f5R;vE!pCyuN)z|rHx=rn1P&x|W?tB|;KtqrE>ZIY_)iL0PuIr+)HBB6 zv$wX`yd$=JMEP+OrHf=u$|`E=_{in*FSq4;lxAly59$B}WCcd4REvM))0Boh!AKB6 zNdWo@wIE_;Hx@!WZQi*dQS;6I_7 zo7Oi<1fNXP=g21%$^a}4&w{q-&@K+$E??OTcj3jJ0SBSjdiq#}>=uXw5a!E5l0C$f zNxa`5;5`Ly6M;N%o3uusyioB1eDvGXvx%c_`_taW0s<)j*~bTDGktviv~J_^*U7!j z%&ZzFxsG`*g_OWugzZ%7Q?|!#!zBW50sQ9~1}qGeW>K3yi6H+M3V}{gbN(t|fdS>< z`1k>X2-@#QO&^7lM_2$<0@!5h@A5#iKo@k;85*PS*P{e9lnY$S4cL#w$HfAD{t9mV zaoyqFJ?@aw(J}|-3beJyFFp#Nyp*3_rGTk4YQ>of;`SY}&<$3r607>JD<8_OaiZsZ zbJhQ)iqX`N`Ztd0H_xwsSJ(e|egTqs!3|1rZ)2gM$fS8%y9Ni)|8xx6m#jC`w|6k8 z`MqiOq~*@xo08m?q)HQceR|nv{%c$Eo6A{frO~k}ATP;+N8|nU3oGztRp299^kd7A zRBW-PW(p}p97pn8kwXxN>X(7Ax9+8ZE~kd)UX=&};l-b-YRw?W^be zMWxLN&F*QV6Jn43L&AaR=xDRFrZ*!Pfuv%AB=1jMl4Gkh!UhmeV2gCYJ^5b~u*6AR zxK8&Sz8}=b==P6d$#SXM%q*bQpgD@p$i60tNEpV`@st6;Ra3&~j?q@r*^E-E6IF_H z<4$AvSVF#afGhuF)||%2%d<8uRA+|A0N@@POc5QEN@hxVa~J7)y8ZUh&aU9%bIsgs zypE@^j@NO@nu?aUaAnln364G3d9$;A(P|6 zj}_iohVd>Y?4^0#%E*i)$%~U)ZqDX%R$0$WF>TlBq}1*2cAV{TpRB7b4&mwSH&dMb zD+|C~22cc#wxytD6+YH^8ypX1@tdU}Pov1)0{?t=#=oAE1NMe2eMBa&3LC4I{W@_RfrgZ@9Rb}R50K-bS1 zAYkd?TthpV1^dXem5Mx0pphBWn8Sg50REG)*U5vJlWVVJM%ExkP!QD*u)EqrhUJ#K zi6OASoeqpiWVVoi+^c!VRO=fCcV`|>XpM`r8yd<{VbPJoXB|5%}&4*6J{gr1rlqysTTs( zpj|KCu8`!Tb#<|y>?TQttu?N3!)~ug`wE%{g$HXt3>lSNeY3qn|Jk^He31_TF(|n^ z-|7xQU??N6n)L;^3op&aty&S{>QIVv$qNB{>z1^Q*GNh3FO_Y zR9b_aMM`^pgEn6&fDE2pFFyRhc*IAlW5WGf=@!)1-dMFW5e%;5+sw<1NMDWEdv$y& zaOu7XBw+4ZR9kmkjW_84aW^ciET&)28QWI~npG)L(9+yOuO^hbZt6!nFx^;JuW-H6 zJczrTf<0HRsd~kic*VGAl z2go96@b6E%rDnCj3?8x53(~Et5nF*t0gXzLK|B6t`$2ABK%>{ukouMw)g;y4v4yq; zujOK6w$gRry^F`POPe>u0(JRELd47YY$Y`rnkI|ANQK6?wnRI7sX_C^OEp%>OcJ;znDRXuY?k|S&yEkbgtAV z*^mgsGZt$h6~n$BLmQmFXz>>07J7iV?B>gcKRis58m(zWGHsVJ2m%bD=}Zq+M5`J< z?T$|_C{KTQa~+Uzw$jH!PLlMor|D$jiu5@LZF^|FctovikO;kZh?JTp=%e!;eDpe; zVeH1-0#ih}8*DZChcdm0DVm(;7iaJ2mV=Wps%u8~Q9LV`Scv~dytZqG4%1_h5!V2> z=j7t+2~gz{{c*1_EU2qXJA6&PyS47YXFS;hpK1Qw)0)|9!#4LxIMDb~GUtZmEm6zH zHr-RbPxjwtNlx46QR<^^c-#k#jp3(xDQB&B#Gw#7dADW~O} zp^mS!I}k*YU&ssYqbtD|T05w6b>D^a)e(8ecEaZ65c~35>aA6>P6^EF=j8vQ%C9 z6#RU&E$pztu&71?v}C0nRioz>5l~?+Keyr`h|BBArGgEabhkoV=vS);GZCI>m#sHW zBXf07XOMxqGwbq3xuRiKqnFuuulD{`iqo7qed;8nq2+48b|25-mTAy4alan&mgbw? zS@m zkVYhHNhEv4lK+NO?@r|&lOKJi_`Gfy<*c$p^8w^4Z~5K>8UL z>K>j<$veO;{Bj!!sHWYC^-SZX!Q&TNURQfSQ`zrlj zjhY|A^H_(y9}0UkNczT@>u_#qiMJ+l%MttVCQD7XZF;^Pi)1m{#ox9h6m+^}Mn6Qv z>gaQm@*ceEaqF?t>}Jim4?eZ`FAb${b>DM1uEAD8TSQy1>v<$4^-fvxEUt7ql8=8J z>e3zHE^u^ifOhG@?8~pS8&XAlyYDrfjaN6Q!jV4+(z=Y!Xt@ zs^e=;yZHD6a!;7Rvy%>Akyz&y9JgIu>Eta&)rQ-aL}{f$&WN4nnRG%r?M#-y?{5;9 zPTjs%gpo|PBsBvKDgpn8WQfP>_`2f=%}&%WvLm5=i|OYJJ{?$*0@VK30dGb9bVBTh zDSZuhgD9TG!p1<34blWagYTXN#Iix)gZBTylF(}Xt7$+9d|aY>PgQ0W10#Qu|0>@o z>C?J-dmc#IU)9uOn>MCTxd7>6zYZASuzHWtLLR>u1Mq>W-c7XcJl8-#3ifsNNGN07 z2#C59wQ33r*)8o-%$Y{P8_)OHhoNdnROdm~jIkzTOW=XuLFqvm8!Q}ePgDR1SV{r7 zOAQtAM)Zg#>g&@s`w6nLtW5jT>wvOd#EzlaXvv ztXVrQ5$9PTxwZoGC|-rA>5=&IS)2LzRVjfE6EhrBdfomdbAYWM-m40e*JnZs^76WB zmuH%#ihzS+&-rC{Q9Z;Uoq3%f#=WPN2^A-Hc~ph&VNy!qPGXPbV8;-z$HWYs3!-1nVlfQlnrd+_d~1p3n#C z4_Z-MPg+4f&U)#reyo$H{M4RW0x)mLkt9{B;I%PCQ15J4ty7&LK6T3z6Qs;#dvS(C zvNA=nSS5@&tKw(BSG@0hVDh7Ki`9sfA7|l&>)^0}v(E&{yW_l^!jR`q;W)&qQN-U8 zD-1aPD?A5}9W0^`_U%H|oxuz6+|m592O^)bg6R@Bc|ulUydS~iXK=KPx~HSORDY9i3RE{==NbX z0Vm1=vw}#gT(Hc|ap2Pe&0K94c1Lw=*AwR0v`iq6>PKl!Y(aqz1uysa&sqadjlZ`X z@MydotSfD~9b_DwoDTG-)_@6R=@g#Y$3bx2utuTK^Jby>(J}@dlc~Zm^LRpiG^Lt( zo&{?qz>D5!2sNXZSWfQ-381a|#W!l&Jhx#=ewK?io>JqU_F+{9%ZRiEYf`ss`_Zyw zh_G)0e!T)xK;0rydz0$su@QksQUTq)Bw z!b5lW-D0scsAcA2&j+nEC}5zxV#?t{}=e1^FwJcat>yHU%G{imG` z|GuAuL~cgvWx7#|;O5MTZT(QXT1%C;$Pp(ltsZ)EFB{1~^A>h|$+y=PN_)+l4r(xd z`O*#x9g_i=MuEWfd_dFu4dWw;ZPtLkH$7iQ;Zm4fZ!G(~p=r_nRQwJ$Z9N0tVCm)! zZUphDJl`F(d-z)-9&Yp!D&29T1s)j4CgHoXgRME8Ic+qV2N@X#oOh5ko@Y}MU7qex z=*YjIcz9cO9@|w{*y+U|&vgJ3SRa4^QI*Fhwpm=|e334i%MQVOBs(qe&M9}6r27t0 zI|q1E4ftMis@@PCPCFQ`$Vnr4o;8bo$9oNN@CRoA zEM`M9n!pQC!O;<&z4GygzO)^8xpXi7!%%7U&&yBJP$Od~#1{>zSWTLtMj4T}9&4)_Sdv0^Ud}wM_$7&vSV8;VS+)x^adS!TuuQ;~X zi5=NYQHU*UVp2Kn&4}Ix!@_f4i%*moAsdfbO zA6KdCpx3NcKrV8BzXl6;G8AFZb;p7im|`}=R)J{jDqbvrWHeebefAIH6G1Zl`w3#F z`BUX6>0;quVO=i(LXqN6gyOw+3z#{z0W$K)M$=F{Up7w4;f zfS0D+u{4SuCP}-zjalhH4eJg?$Te^4=+8}yc|kqysG{jn{(Samg$&f2j;mE(gO6)Q z16Jq{5Y;j#*QPc|XEGnbgKaI~Uo(iTh|-v(dPMOO@!!(O@#zyKHlr))92CRAbr0y( z=mlH!huF{N44|qeCp#7`I7tZhzzYWYaFxo$!=)Md7pRoqPKFasZ!mipRtj<0wG4L=i+%G^A2rbsdK~_Tl)LD@-cu#>s5Fev4+2b_>vgc1qus3~U(MaukDVBS3XSM} zkFcCGn7qUax-RKA4fHB_ta0^a>R0(McaNEj9NeKjlk5(6xn8&5A4bx+eX>v^KhUf& zX3(Z-d`DgWYWBe4%GJ)RD>O!ft4m+3>hqUlJol68<&=^f2xX1NxC_2DX?se|oH*ss zvK#9>JOLyheZNX54WgCXVqsf5d1<@eNks5W;yaK+Wr#ccqcqvs*5PR*%%2 zUMA1j?Rip8GvbE_sX(N`Il0(xf~ctR0#j)K17tk z@(m~m7+?OlUFe>~1v%fGuuiO47}uIEyJvdc4&pTn7&Bo=Wwn!(KYrRccDB^F@~C-I z85TMxm%Bub>0sNm%%a@W>tGkO=0P)w7Ysf{URk)xj1*YjUJE4!5?%8KTS1?v2r&cA zlt`-lg=F89)-s}au4kKM_ja4*rp+ezq#3!(bsxX?r%dxObG~%l8;9(<8CE01>hop} zYdj7zdaS@A^sjW8sJGqMEa2}VGB$RTR@~fyummHOL3@9!>Cq_6k^(&2&4osQ5lcN! zR`W(+=nz*9@xJI{pzoECkof#cv&K3aj(?r_OnX^I97fRp;!v8YK}v+cqBSh|U2Q}gJ zpeuuntrC7enj(T{_@?=wm@~H)m1}x^BKM~9k$Av!1n~e7N-G+!f|o$QbpMDqBN4C>W}>GniI-j?i%&g?#fk8B!9*XM8g6 z%KkChq`G<-@rnEXa|PoQo1Y?9RtBs=FLim%p2WN(#%Fng&(*1|H-(F8?L&aj`C9+Q zDC3iNkqSao2Ix0!Zme0>^YuK0lWZl=AK^>tIJfCG*|fBhUA2-J(Met*h)ee9!f>i> z21|9q9@q%LgX;vH_f*gFjPsM>>SN%V_gbmGRUtml1!I71(l^k$g3) z%|MD=$4fUKAmsRkKT|02gP)SlFDqnW9YXizGx!0mYj zCcBdoDB4j)=#|N>xlYpAmE0GOJ!Z)FNXXh=2h_2ta>{DyYvds`n^&#MYPNguXm|By z7=KMXctN+<{W`d54kj_%k$F=j*5Pd3UYJF^dx7Dn#Rc8qn~14UGlHQ$r@O50#Alfg zlbB=;K-5k>@t&es|T7j)x~}s>XF1>ZmEj(|`^9wwHS@G&Ap3J?3#MTIt9)XdFLr zE|3JCj6J?X?=bK*Ur5^fpm0@(6hT(Im^~}&{mKejdTXLK0?|)r)e(vmju?h^=)w3x zRu+0pCbVNGyPL)#Y2D$3Te!P!2*@?mNk zZ?Ewri$RMVs)^rJi=JW~U9;QA5xLFfC;BX^1A)_W6NQitvfcIgRL5|y zo8Gc|hEBq#gzPbU)i=3=-F2^1Wv{!n96gFy!VLs#SB^4fLc>#R&dNieEoeMagbZz~ zsEw4dRQSGfV=i~|&t3gJcV}+`i@73L^d6EpKBGGgi^)&L2srnr)Z3deJGkO!xhnXg)wOjkN3fq3PJ$!}%$hMiibkbz06h5*GNim8Bv z>b4p_{uXclL*s|WN>p-TZ1NTUrp78p&bL!{i-9{92$TCK`B?DXRaWvK?TE7zrT!ur5xa(096SR!+!05h25Zt|Ey z^6q)<*T>W#@22~Dk8*ltrt|Q{oEJ1@hE+)2O}*>tb4SFuh9?wpLyL?x-o!}VYh5PP zRm{k|r@1A9_ej3(=qOaEu=NZc{Lxvf!-Lu2QhMM1^;VU2^!|1+c#GFgrr)Jr4ebNq_a-%A?z-{X>eo(v=-Pz z>Nn16R&7_#uu>I?@!0FNJd7|ZiQ`)HYNm40>r3Splwy)A%#YO5xzVD3#|AMqa*$+* zlkAZYx0@%&R#z@xs{gJdFew*is1_l3LZ*iltSeC1b`mQYF(hpg*E|JfK1g@~M!wZ; zF_}umvuws;7jIWz+3)yCAUx(^q5jnbIkh2nd6|0udGd*dO&ataWSq#0L(}aU0p+Xj z5I2SHuCwc{aWkfR5E4+IQf+eBbt=GUbwdWrF_u394oNU!RN4@ zBHlL7YBA)LJ-0XgZ@z6ockVpsJir85nFmPDGx>w5$IR~qrP%U-hpV0icfLufxQ%tcgvdXB`Zoz+#)PyLXyAcJO5)VhqtGHm@`RT0*zvhbO56G!M|#~Cpcmi%vjC}6A#nu=?sR4xko_5G znX^5-u2rsU!}u}fQEz}`yrqxv!x8IJoJCFu7o%ozro^y~Q_g^2U!Hj5|ZE9$-_Ue^I0kLWrl~?682>6Z_hu{nJ5}AQ%~~qM%acim`n@W0`Js4S!ldbd=w^K$^CwTN zI+iWL4++Y`6R&+TDW&6nzC|Q0zB(i%nkFfE_NFpW%lVWdbem}9DO!40O8uTu&#RB0$;;AMlr;q+Y==~!W?-d@!@cq33u+dGdGP9U{(B7Y zg4Uq;D+8XeNiDTow>cuz>NB^`i)5ThmpE-5B&26n9fo&TzAZ&o4+ugF5o<&cZl(OIv$!+B{VQ zp9_8qySXJ<*XwA$wJgPObQK+ldfi=nRral0K6MAzpvbaKVT^UE8TZ3i&1Lmn2+qp% z;8z6>#wq(D>bFOzOwBKV6w^R!!8l-S*d=4Nkps-ercf;U^k&I@9Tc5+|8xBY^S+o$yZb1F%Tz5$LD;5{Og7WJU{yL`#*4>F9Kz7}R>L`(U(3UI!Mulkl-a&mV&H4sZRJU_QlI ztc_D?bsuhc2`ByMJx9P^UsL1lR)c=hLAA)O`3+zgYK&WrJ*heyM>lEDP3G_wUTv|C zoc(kdoHqHf)g;TIjaXfc$a<`;kS;Ic(^RIEW0HVjo~Vrdgx2Hg@W^d;(4CzXvE0Y7mU zt`OF5t!VQNdxth2NYzWdXNd-cX@+h^3f&&JmuDf3w~e*u;-rnshprX!&lx-Nkh@O+ z4Uw0f3ZD-Jw)@6(aEWPG36k)J$Jv6?GhSOS@3)D>AWx%$Ios7eM@7{uJ38wt!rtzw z{;}uIXBS7n{@&W`A#KihT2{e_m}f}H?*BYS$904-kn-;8VD5o$k&f4m_O1N~8|}tPGpZly_Lrinz-t^M zh~`I`70d5?D)i}$SiQm0yW3s6UgnbFCKX;sPD_VHtwD{EE9UKF{R8LHy4@p-`JG<= zbgSy=_h(9}O3xHw?}0Gs-J-Co0K9#*qFZ7->qeJ^cZqDGc;%(5dG>lWIHyIGeVuz$ zE@E9(7K=KoB!pPbs?!dnuFlE4uQxDKPJnlI_Ho=@2WHt7&l;3L?HZt#FxKbVxu?4_ zuKX;|N0*%|>Pjr(Z?ztYn;izd5vbPtkc`J%c?bxbf0ivrgCELN8m zaOEbRo}Pv^xAoOda1EHLX>Pj<+QE@$|Bte-4ydYK-W35U5m3677U`4@=?>|T?(UXG zVk6Ss-Q6u+(%rG??z{`XPrq}H=XZbi{7(|&WWlE{~Cizqnrk> zbXAL5$@4`E3-w0&A~9Q32ZAgnKjKNMPNgj`qU4enIy}Ow%Axkwu?*=NYTb-50`tf4 zpieckb#|2VW@BebovtW&-#HCVpNMLjF7pZ?fNnL=cdb4V*p%J9ux#*bdxgxEOh}vv zvn{BtQTBc^=l&YUV&^^4c{v&`R%zs75XsCT41>cd0%+thu$k^B_|`8r>a1DKxjc=Z ze|Y~Q3O2S#;Gvf82>7$6bg4$|rgUI$Ep9I=R?(eW!)v%%zNx93eoyCNR1Yq$X03a# z3rW?_0oLb@)~#3GYusdP8Y*{Yg!diM50Ma%{+k6hFi2nJq}~rx`GFUKe$5o4S&gKC z*gUV1S%gL^634>2Y3FdLXRcGnzMm6aj`%Cuxf8Q=4r6PD=5X>u+Vw>?St8~4 z0fXJ9m0ps>i>VW_8xx<3J_e-QC%PkhW~A+}>))Lt0z?Xz^n`}Y)im5{hRG!2*Mvw~;xAeT*hA!; zKfYqz+&dp1`B!v(`Kry<<8B@sxj9-hu}3FgvDD4wm$Uj@tU9^TC;`c4zN7F7zFp|- zs@PjrQEz|Fq!PDT+G#Zwt@W?WdfWLkUy*Ox&Fgv3rwycb;e*|Vuv}Bm#Bfi7Padlw^}RmX_~Sa_Y)E4v zKtj`|NQM)mHOvWr3K)%)iupQA(=tL3$B4FH|Ng74MqKAjotDcZhj)SCx{*Y8N0O^p zT%-Z@-7%*Qh|JcyiIA8&$`=&;mdFRd+H;<~pPBBD;OLKhMN+*80`w2B4AP5m>ISAR zL=#wO4@JN~@fX@cbH7Gu0QF{x9n6<2Bw41bEHILKvieo4O{qqSXuWj#>Iva?I6uen{Se9W+hXK8i^`ql{$ltAtJ*YR`8a5EX4MpNW;V@T!F}FsXf#qGqM&ZOH7DY7)M{J?%u*^*g~?YT zusKCJ4)rk2eQwAm0!SI{lFZgHNLlF-Tk4;15WC%-Rrjin#3zjh?4gA%OY~sMs#_l+ zPwPb|O1vtatumVt*3j^tq9+~2jDLMUs5+{>gJ-kb<6J;{-j=roJDmg>Q5h1~1|@Vk zf7yaBWHcP542QRX@u@o)xfD|%xfPNZC4LeG=ll)Jzd z%>=Wi^#|44DST=GqW%g2OmIAj78ArUJ%K?xwDqEE?vNx+CX+>lWZcnzga0JYNJ0I< zxWWS_H5Vnj*>n39%>k~0CJ}~)U6aMNt7?oFjeLaP`5fIkiH&9|au-6`FxbjZNfg@$ zE0Sf-V@fO*H7`OM`0MO$qMHM7s)r8bq&VKio7a{8bnQ8Yz`Yn)sDO#W>F`nvY}D^g zM`^5kjoi-O_ja_)$l~vJpp@(2kj^IAx8?B=dhbBAGD|bP`wDWYoHTj}GpoMJHmw-; zn?VrSo2gv4TTex{!SD~AC~+gZNgk*ddTa1L~8W*Fd=X?g=-k$w!iDpMdicc+|@#)+$Ue68h@GX2rb z56dZ(VX*=XSL;gMZq?~)I>@vQ2KvF;a|Ilr+0PF+QC~v~8C8Tm<3HIw@(?VU-e98< zz%gnljxU{ROF?m%e_MZ0l`kayX{cHv(X`6GUW)rFz_hGK(9?LjAv*P&*`b9;QgHxS z`_os2r-Rc&&9`~n53c7|ip~o@;`YfrbF`cblWS|;2< z#3;C0T8V(Z31)@`&fpY_{BR`baQUVf8hx40hIef>c8ZWj>czHI#r-{GQW62a3qcts zswX3~&=XO>lWQsfPMzM;Ug#g!J)ZPgQP78gGI0E1rjiz0){k@C{T7!H?kkT3$x;mV z#MrRS+&|u*=jlg*7PJcanI~QhiVn|P-*M&z=ne(UGjrq~p?Kht;V;Bzo2CSWODp4p zjDbGiOYopWUvGF!qUWNb>6z9<0l{Uja3g^!aI(a{qL%VdcHiJpagCn8)GLtx8EDyk zrCwv{v^MT+);D6=;Z;Ms{>(YLv_{@DtD68?C zal%sfK91?9Lwz3sWZMS%EiCo5KAPsJd&r^D8}Fel8f1WlH(iai3gseHrI3=)YGqEL zDdsIT8e%qve}$Vm7f^qIfoVp_BY!v|79I)Xmu-tnnXcn|T7s+>fMpjlHK}p2KfjiQ zQti)#6RWQ|%4$Hv@sOcm#$NEWGxTF9%1?XXbG9zU0G_lEXFc3KSwEp^8tG_%u5i2e zy`#_NF=HYFW;74(_Fmora!=u8Nw)jN;(T=Vob4z^quEV_OIT?Af#=;1m+dSShA1~# zh!3?qNpR?{t$jz)*cv>-6#YtRxo1=75gAI2>0`|#m>s%?fz zuRDC`_R%hUC!QewyZIT)@-8^g?b#!{U2D0yUNreRTEkJ4&3-o}Xx-VYvvTX8nd9gS zO~bo#{h^7ElAP-wjHcgQJNfce<;)%W;7#JY;N{GgaE5O}E%xnB+pKLSk?qL4d_4Pi zOOT->yi>;{m}Mn6ERu{itp+yY*l~-FCc|biI7fZ{MVA4l5Vke!t|@896~#Xs(IX;X zycOlz<>ahqq{fP9_gS06;vHf31%Art>;0}dg4bId(kw4ez75n0o&f>P`K{CT8n`ls z$&}n#=^;4&5ib;UJ5j_CyJ=R}QY)26zhGZ+O!P4^>UJ{dYeuq$qKW-b zYR`V}rb;d?e>*;Z83RKQ zR*DodYBeiY;KmsW4Bx7n)3&JwO_w&#OnDL2KWJnp5_=DB8RY3!R^EW(APvT)KfJaH zC9HqL{UBg_K$^{@7!W^HlbD-WV=V&aJilA=V4l(Gt^mGiOyWAYg1e9R1I)p!%yQk1 zMP!d$)+01XuMyxhwelEqfIClvcWm}8LAK%kNneAwwk;cnqE7)QhnO0rk{J955Ayzi z2YFPUDG@m(IUl}+;6mat?0%N`*0U7#4}AE|66SsWEF>&PaR^|lFK^6hc?NR=55 z1v&Xw?-yKx2qd3)5L+eO*7Zo=wX~$<9ygTFSIvHRrZ}Et0wZnR+vr653a{?F2yPM2 z5|RTELtvGROvKVAP>vL#VQ@Nm_Z-(Ui-U97$!uxwf;<&Li3W%jtX9iIERtgnV@${F z`13o;)E(2?w#V4_D$;ib;AASuk)y3k%W*-E+Icq`{TPe>?n7kg;cDEg;#@lY!N$I0^g1REbb}r8aQBg2?qTrP9u=76< z`4p-oo=(S4T+w#gD)kUhUi(8gu%vSPkn;}#N(R9N#}hntQjAsrbJVRqrvXwKA6|`S zOGZ3H^h&yRzglN`4@^C-V^U4IIT>p1?a5Bc9laY;t~Vj-=ZOOnm2}|h#rtH}>;-R0 z*3@i`u*D*OH_Vx~CG_PioZ=|RhsNZE&^qSuid>w*qmCxhK|Br~LbgEoDiq3IOeCSH zYOsM7{_=i}O@_Fm{+m3<=h&-B<8>v@B5zppf_Gl7GG4rf0<%O9at~aFgI;ghnRIGt zPRa;Qp4)}>mA~0$W6`0V%^12?1NUb=*z#zGgaI=|lfJb(JrwoGnYQ~a7BU2P5qVshuAJZAFZ=IDo84c9 z@>H5G^hs0nwxb;HmV%FCUzvS?cD2708SrdUNWyejbW_}Oo7O}R66ZW47YZ5Et3UEF<3g zjm`G;GOmz_b?8}T-CquDpl>Ir{>%Fe;k1`l^?{A@JY3mH6E^E}-_bj%FORS;Do<%%SNK)q}5MB2Mu z1D6-l6U@eeFL6^71`w>EFa=wA-oE{SrQI2V^z4%MyU>(-z1i9zyLnWWM7(p|=g;dE z8h2{#y=2Lb!pyU_uhcs=YVqKZ@$ga`Mm|N#`MkH;Fh1(J;J(dRbv(jpBg6Bawfqix z-|XHxoKSnRmXnSbs$8Rw@1`ryV_B&`fW59|62Oz-X}Q$_78^<$G+w#i@3r|01C23X zw$e2o-oAp6`cTz6k?N02JgH$5`ykD?TEntj+wB7*I8VjCUz7M{o9erASF&TBOW_>5 zbOPNLc)#*sP4Y&+k(LAZKkX6};rDFVS$xsBJo1x1(%)K@*ktbF6dLkksyLXQH3&P1yryID+Yf4r*EHew?Cj)o0Sy3oy! zO^6@>Lx?!VG_6(vMyz-FZok21$bJza>=}^|Y=r9`+5UCA=7o1a@YmMz7xJ2M{#L=$rRe=KCJV7( zicHiNVWqf=HYnoXpP+^pk49by2M{7#J1Kln2iNiLkZhGNBuPa$44NVmmBbI=R;2w5 z$I90U$XMgvn^c{0oTCmr3nGhw#(i2sPmJja5x5*ndwq`rfs|1^=-7U?5NLgAs=YBK z0`@edp?+j+xG`FX2|R8yH=G;i_PaPNLw8H=s?2fO?H>Yed@&!xwf4Y-=#`rArs8x& z_RC_5wdL!0fPYi=*sq*zzmK3O?yVH<_Od(@;9slJ@lIwcccS5UyRiw-O!#(M8*rZP zb;sEvY3vzrGxn5v!v#vN3%yO#ZoOmwDfzt#+DZt(EmM~`_N*(afd@TqlfDk(S(mz= z4re>Rpk0qNIGZ>PqT+&Smt#a<<|%;|3YcBtcsF4gdAx5-Q{r_s=>*nHyWw$ijN7;R z0WlR>!9BDsSQy=VeQRKcRTn>@_IeZ$eJ16qeRD#(7Jf{;=wuBE8*vbs4Zq{i4y`$1 z9%_WPkeJkPDR;5>WD3N=IUaojlf4i(2j1!|OE=`JbVy(B4>0GvjKLGL2j9NDBAXU@ z$>ec{sxtHjU|vv zX3-u@40Iahx4zrU0iVnC(W-0MJ|_A{?$J*7^_dV3xN^hFpG{41|4P&F;6fPCn~P!& z2_j>T=PUa25kdN?{vlQIG!|;PZIO3^w0S1vpj!_|RdqzHi(+*{MYZ$2 z-Q^?#5!LD?Icx7zXEd~2VI(0|V$2WRr-!U=wzRn09tsxId`_5NVO=fB$-@$|X) zqiE=po;DQjjZv>EZ!{uXpVt+_y4X6J(e0{K{0hA#kEU7oDyi-iU8lZ19W30^Kz2!r z^n%*~WQRwc3Gvzm^2a2bPdH2+a3E6)QGK;yNtfYO_3n&#Gk_?{I?{@?E?@+u6gRrN z=>}0Tk9OUUdo)J@{Jj-4>R}V~sv`SmB!w*|h-Z`Wl>C~G}f8IW8iX}uOif|Pr45@Bxy!-HKn&wPIhreGx0@}RJfCUG!oLCX%gaA zLsbCk>v=?dduZWS#kjc~fo9p?bq}S_a_c5FT#d?HsF3RSo=qDhb8>c}U|b!hOPw|b z&@Wl(Cy$=m@KE$eJXyiOx@&2_j`h8@8RY6ycf+yrsj*p(=vKFkIK|St4xO2~h^DaV zZiU%4Ff88~SX&L{mZKz>ayW=24>c7j0uW*3YgW;p61*uv9mo6K=0&dU8IzpF=6wURRu5n11gP5_EJhY80UOj*S>8PoL$b1JZwTCO zbAz$(zRF2Ag7B-VECqk{0$}26^fx`|1R!RXv}~)4fMztN0craz5Y}4HV}q(*a}AEd zbzO`pcfDP`x<1?9y2}^}%-NX>Ze1XCnjnj1nAJHvFaUyF@>Z12Z?;V_R1ZKq;7+Ul zQnLDk@xyN=p4S|uXWUg|C+=$ouYj%IyUMw->uHc@U-j)u)D>|!{VsO<_BD8Oh|7Lf zWW&>*UF&8#!DOsYz|zOLisxz9!fMK$-a+H}j{~7ioXKW9KnhVYBivi^2As*-$+$3S z2Fh26bfRF|s+v>}S4g7bBEYqhkHz3|eKu(FmF#A}I(lcCDgJ`~6pM_N&;1+t&9)G9 z0}NJZH#wvg#D-M7d0FW_2-4;hh(_zj_pW^0iesK$-ufK8WtLAfcKlMxjg%I=$RAGS z+EwWe$lUXWG#(<>`xLq-A8rJJ%)v~ecUqICM-L5eC!58)~fjWw?UU5p`6WQi>k5;!TIn4U* z9_g;7d?HLJnv=lN0@rrw-kB=|OylFa!Oq4|l;K5G;SI({hiG}je9-ui>dwuysC5nP zk)>IFSA1-1uh85|npeG!7oL60h7Aa5pg1liqaOoj=||g(>y<7LguWwqs3%H!)*&i? z>2jof)-m#yrJmp4Ubfg=oyGiMNk2xp?ix8_D3RT+qTFVtE6-g(prg**`}%CmyVPEC z?}MTWrN@A+g1FZbd4Ht3t@_6Aw7EPUMDY|Xr6g*Njb9xq&d2#LT0?)LT;<24dKr0g zLjciW>8w>3a{oxjn{RuhS;XpqNw^|PD^Y4`r!rwsenRwDIf4P;dxfU^c9cQ>UaS#g$trg<}Bo2vo2q6Vw zJ8}AFEhHoT5KnBcfXR!7G!UIi@AFU!L|sQi6k&n`qiHl>yWJpKBNnD_x3_H0n9w+c zh^6;VZ=GLxLv;8U;97{<4v|pN412i!GD*6u!fP9%WPg@!XnJ zNr#z{JM$e+kq&cKE(QZ-YX>14IiYkOO;7JfOQ_{Ol4$ikXEiubi}IBAy%%(xM9dO- z2=fn%mwsrRG!lSXc<8({-rtD>UI-`?nhXkR4^KWiHRzpQgw{RL@NF~T+x#|kc&0&Y~#ieS-m%%NmvTx=F?e1!5pVF8+q?V8Q z1nV?eqBg^(SgrYi!L{rzIARU!OH;|^Ff>06%exf3JUIKN7L}vgm`h4N5c)ZnY zW?xhfedZ@Y!^I}ETKC-mlj?V&Ug`Acb3}hd$)0f^S}0lR7ecmy==l4vo$-jLWx=0j zW9Kyl<_mdq*k1of1b6xa$jGYYvG@;BuH$IFuVvEJqS+4*PZ>CfrPu?QN%mg?H`uJzB9Mj=3VYvG{LuEh!?xp3Sm zZC}$>H^{wKn~5mnNU&QZOk(8K)yV3Sj%^}sD+>JxCjTetx2=Gh!;5IlGX@#V*)RPZ zztD04m}f*-;3TEuG=%jQY|X9DmTj{!7%oKMruK<-7m0SPmGgy_dJ#mMu%j*met|eU ztq=S9+N)EK7%ekq@Eag9TNOSIrtdmx?T)3Bh+f_ z+|!x<$h4V~E*HJI0&A|X$qkL^{Yn9aoqgkQ8D%BlzP${evmK=!y1VKh4eb@gu{#UK zx;RpISUhm@XmcUs5UY?+vI4PPbJw}PY(>EqZfj@wr1_m$+}&y={F=3>epzAil|RJ` zEwcxAw>QZm$aorV0}{s}$0PbMbIH-UHtJ%HLTxpetu(BB*bUY^5zEcZM;axQ8udNC zV5Aq0vwgN^8zZC}SdRKFH(JbTs=@OFpMsd2dKsyZPn)ZOo-O{f7S)9<>HG;tZ)UI_ zF6AI-ptBGiyJn@FP zvR|v3A}*jFy-AMKt{Nfs7{yXuYnJKe&bjX39Z#qpyvb`{k5`G4_l=f8sDFdYK_pep}E=(kj$!5cETJ0bwe8-he z^&YT0n2;O!7Yi(%Zp|$xdxb2dM3niTpo9(+?2mq&=w9LxMZ$<2Bp?i_aRB3VZ8EM+ zUtS&_oQL;u{3ygN4F~cL;{e9Z2?D?2V*hl%`=AC?_d6zI+wMyP%qHvkaw#ZVb&TmX zUMyiR1YruQhhhWWO=&KPRJ^XO?%;2&82EOn%)Ir-EKFi_IlQZJsj9E;>T+J zwh73eIBpLe?~=A?f&?V|p1)UpOfg7BJ!nj8IPo=XZ{y5E%ZqEl`Yko0o%EJGftW9> zp5Hn$)$eV+IbQZBc;}Djo*)UNx?V#r=yr15#t2FK*>WV?PwSB}Jz!^WYZ6ht%Q$ml zE-=gZxCU;{;kw%r0mDxZ8kA8*>n?cf0C`F7c#%h(iabv30>u)x2QGkrw2;|_L&TBECPo6*A^crQ~3pv5Ce~e=^!kq{v+xu03 zWpru&G^l{q5iWy-we1G7$s=>AyRW)UCx)jLI_9LfuDxlW$+=B=**i}Qum7XwCvPIY zY{|V$$-NXUYEt2HaQ_LeasoyQiCA=AB#*-OaiL1(*UoK34kJKXNWnYtH=XEd7xsCQ z9HG?9>rJI|iLm$esd)u;k`?}|U*YgCaYTU$6bE0N==++b1G0TgFJx~zeUiVUg?etJ7U!CCvof!MepP^+_v*N44J1LbpXwY`L=&(q;09vVjvo2rqybv zb7?~qm5S~-(sKuon>(aNuba-^P4+?Q$wk8FA&0XIKunqm;%W*hqsOJ)Yk_^``bkMe zl}d1m7fuyu)Aq`w-(cI%tUY*uRy67Hb7W(?Z~{~m_CO7{kzLdgA>A7Wtp_YVuOGURT)KbS4K`L znS|7FF#HaC{|~I^gnluc2B33im}Q*=@}WiZkAV3q)qN!e1c2x(#7!EI9yS>IqXY{x;T@`WEorUT3oCo?FkUDKEk7e4BxzQNNaRW4mXNhTu^U(Lo z=~RCIf<-bbvsEY9VI)xbjv$Vx>X}9i@!AOKc7e2D@Oo`=T4#-8&&$~SUEfc*Geu@N zo|8?-O~tb(40FwUkygatE5|A1C+x5s`b9b)ORaR;oZ^^Vsu=tGUSXDKbG<@;yQ3WT z6At0p&yBw?anVFc4C1*&eT`WEvrYG^+Z~l;+rnV1O`|!FTIWPvs z?=0M2g;y)JUx822(sZQai)jrnhMB8clKY4u$A+#*eXVtMe$MGcw`V1DL}b8&E#HOCnD=G#5-frQ z;Ziwml8{p`FU0=3DVWDm|Ka{7`MO-OzRFCm9g&5cMX2B52yejn?EQ=6Vm62Eh_hQn zo#O7H@*2Usc5pKgHGPUy5T-w9#oWEpqh5T71T)AMEk0-^I1VK+xq#xhClz1tvSrY7 z3)SC$2Dd*79}cuwVYdpn9x#Wt?#r}}!Y;T{(BU0b3_=K4NC_FA=a&P$5J_0+=g3*< ziQgIp`9GqZPqQm26Qa0KcE#KUYOypP`7}DapNAsV$JY3A8+LUYErMd$C{g70kWu7P zWc`35P5LL=%zq!if@mmLFCsK5=@b48W>aa4M&dSa(%-3oUl%#bP>1O@>wZfP*FO)Z zA#gag>i_HE>?iRIBt#}<%?og!7-u#Zh)Y+r*&n?b6V@pb3D4>dVL=*&rEa`*-I_k> zwnKvnHNhhRKCL2z6zMPUw=g32)sicnU52S8C$Z(dZ*&ik_{#{zO>*ih-|TV@pj>?| z1P7v5&;@SJ(^%vQLJ_X@ROt-=OLUBw!?E;n>x7S-Ie_NkFLf4IIw~#+%nJ;g6O4Bw zh)l*~(kl7mRkvEHvdSx|UY|cMwcw??-7p)IWM4ZkHWa95 zs1a4jjYLlI5;T-dx!`WbhJtgX8yef{hv3U6E6(Rgqd4jmc?E&}k^t+4lITn}4Vx)Z0-KQ7X`n3L~9d)$F2`CedRw7uqK` z=u~kcjdj2*z=T?opDU%b2p55+x5ar@CfI1OqRs|j*0Z~nrK9j)R`&0(mnVd931vjS zH^6(*?0-uvGekqZ^?Cv=R4eD(it~ICx#Z2M0RIp|0oTn=akE%*6WA~vDPr|)c}k1) zC@cWHM+Y&x#C|TMv^uP1lal%%RF_ORoa^xxnBMSE+70&Rpc*J5=(A(Gvdrt40(I+;Nt2n3(wE(g z4kxeiflt-$_eoUPFBRsw)iaAK$&u#7rmKzf$DpFMbxNzr7R)1~V?_HXj|gm5p>WvfizyIW6uT+)(o&jm1t3v;<60p8blj_jGCaEn(ER3BJn`u3N_Nfa zf--9nqv0sT{mhsH6pxsD3yWFmf`WdPEo4GE1JOm9zJ#ZFfn3)){%i5n;}?t$`>u&F zNFS&oKO0V%c6rO(U7tnpcnrRziW1V@xR#kdmT}S;%kYeQGmq|6|@^nsI^vju+alDkEMub zYZ$z&z!XX2VZ3bw=muum~ORx9Iv4O`) zk$#T{dAv%3l7!j%yO_yjRQDSaXO&9h%AyrC#7H>MSGZOwV8|e+c9tti9G}}Owj8S| zjcM&`iYIi`aGVI1NnWRC<4T#%l1H2S$s(k!JVFA}C5xh&1 z@xmdzzq2Vy&9FXjpo!kNHtjp}*vXWBot5hjU!lK@)9)n(E~LZ%N?{)^IrRT;*z>1* zd%|Dz*uoaDGo*@|b|M0{rGwSA06=sy8qsyS3#ncQa0}`!{+C6a>M3o8Y1zAj#!38< z!rA5trxzS8cF`@tlM4|>qZ*?yj$4@+Ig1CX#q}_KM8C)dc*2$|ZD=07@Et}^6o*Bc zLsO{PA4NFkFvjoX+vvl1!oPvVs7dhO_S*z>|Z8BlS3%vbE=BiZErtdyO89I=M6`RN@HI@oZ& zjdZdFiaKVOQghFRKg*8*>myX^{g_ z3A%B!8*^4{#cmzmu*UuO@M6hH3m(v44iJ4_Y(8QqbEnk(_eyeZh(V0I519WVmk1=` zX_e_XE9=DwwvZfX%kwQyHn1>l*Q!?Cn>!84C?b^X0>v;cp?5m6j$v*`OJ_ zIg}scD^&3-F&=-ro@-dTAcTEfhDeK?^xg(Utx>F@PUjYTJq-&&r=StJ%3KIqnkJ|D zKm2OLO z;?+XwcWU<$_Mp*7Ys5?qd4V@0+E{m1f`h$e1SsZ|0wXVBo~C>hC6||eg7Wo9atyeC zoK_SLjMjM^^xN%`+VE`m4dGazh;4AKSW&*9fp@^FftN`pDMlsAS-Y%}otGB+KuAXG zERU&ZDaURnsyAPrUwsT6x6&{bN>!o^!&Km`!}gZ}aR7{I#eR}1KGv_7_6tZAaQ_vq z?tWJB#|MeluDZB~Zi=K@4}~tUSb^EUsAL9#3aPCAQt=1)%A6+mb{(MqTmOJ@3lag6 z?TeS|l~~QZsOYF7_i<0>g)hu!KlXlXmHe#%{GTqophjNeF0(-0%2}f7s-;o@(8!-f z(}_$)emgNouWw@{!%9cFO3i6SdE0TtXtJo1F=w%5&$6{mpv?IU8_%C58L+-VD7PP+ zV7)#Ybp*OnQMVx(%cPpmvx%O{ySIiBd8y=omu48w?6%z%pw<=vAcpR_sZhXZj!aU8`FJk_t7^kq4^Ms` zq$9NG_VQ+NY`NX2VLtzj{k=K;_i(^zprUr)UV&J0p5r-{#WNbcqf%v@G(yF7`a#S0 zcaVYwxX}m*)r;J2s$`orIDy7A{c)T^H*_))uMt#`U!>1kK||#&XqFL#jcNz@Ya&Kf1pkB7p4C9uWK&doTv|6qp*ENCFQ6+GhN0m_h6z z;rVQ|an@e%bIrd<;{OvE|K+Hqb04>REU%oUuCV;bM1aoHYZwj3!<7Ohux549w`cP0 z^~z!f9WF7ABv^y=m7EL0K+f7B{z#=Y|Z61Ql{~?y&NAr zMx(UTIMJ8LjJ-zktE9J?z^$xHS$oGy??q9uN5Egg?IB9visBC2afw2hW4u^Y*z6r_ z1w_wpw0|v839t!tTbHQ++~J6iPGR~>`ci;bdRe}w%YT2Y-zY@-?62dD3>;_q9&m(L zx~*q1g%Z&Tm}Vq|@4KG+=I&T&;#jU6%a7?55;0xiyh>fs9((|z+6bo1{3AQSSAPk^ z4HdNaHkrt2!eDjtuhep3HJ+@h1V+cT6ct_U(IX4b%X6U*v>(z6Mo_dO1(9b}bqI(W%FDj%@I}SFl7vhD-(GCy z&yC}qvef-GCxZ&8Q}L!gq1RO@0-`(H?WxueoU?!mr_amR!(}AyZK@PP@{g|b1XNP= zw+h@DkF&{~#NJMr`NDw|$dN=kS7lE&dc|Z%Q=*9j95?zC4?x+4FG<(0d_<~p9$kL# ztCt`|Zgx@(+`|5$=;jBF6@17B+^dd{z5>46N*GHl9{`%rf(WQknY=llQmHT`m567w zfIP&IVK(0!0@D6$^mo-)Ou{ zz)gSY&dBMF%69r4rKeua9|{5IIWNV=U4l z7=i;hZ@p(7`3i;Ke1p*Ib@*!ioDeHs(;pw7DAsBx>kq^UpXd*W_5m*}HMJusaxyzo zPb2w<5Rkb)dmDg^S}5;Cl9`V;k*}!8R$&1KMS2loKs)@}iU^Ne5#o!$?;ZI2BJVv! z=+`XSPHgF&&4XgQ$<~4zK$L3p{>5XJ3>WOrej1)$L_-u>KEK}lFBtjzJAVC@*PcMf zG|T>{LZqjb5r;kz)ojp0>m*UNw}AQ3?fIr>-U_%FidM-aoQs40_+}n>czC5`Hm6Z3hvrP3_ z<}khJcj}~+5h)_?1&@6=);(c0A_&R7veNVU_B+?+0R5VkmYg^OD ziwNn3;IAcu^enqjYRuL+#8;D6D##piLhR)r)He*6{x8NsS`X@W@wMVD&r{>XvV&4@ zWoK4^%uM~yIN<+rZvdYD<&GNHYfQ2OSP{w#f8*f03= z3I7vN?fzEYiwK}?pX2=#?fl-Rc?>_d`ZHjw195#X9zu-MzZ8>-jE#sTR1C>eQ zNP1s}@I2(Yz7zC28zv0oi+%ZV;)+YB5H)|1E>LvL0&AN+ByHsl#XItEk7Dew{rRf= zhmqZ!VK}*YL>!43l(&X~I7zD~}GMD+UJA_NP??Ue&5xXX@`q z{QY%Mur*#$Jdy$=(w3+KQC{if^y2?SS^sr^dY*+ph86t9D)69<0Zqc72aSTRsl1P3 z0NyRcDmI8WdoPvw76iPP4zkbl|3FNhNECon>HSfz^9T3>cu3&mej{2as2@^&{N;dh zx+e#`Y!MqbK@{113-$>k`;^c^)bRVjZ5QxE1qKDJ-w?QelVF)v0uXYBv+h;CLJvXn z1BI%2t?yXTp2v393>wbgk^P?!;raIU*DN3!x07dY9R~WgLOs|6vxq8}7GF$9mG8*= zyTOC<+Lf1nd0)UtrM!K-LA0@HvOhcmPu*isVjB-Kq%uU_e{=}50YIC^ga2AE#K02Q zQgbBL15g#@X0ugcC;kbq)M@<_iXSctIqptv>NWr^BZ)ejLvL#2T>jDm(2`s=GbM$` ze%{XD{dRY|wM8(K2`&UIg%n$6=>We=f;@8dx*tAC-t~%9ye&W(*SF(H5x0RRE zhUrDJN=oGAV;CNlJ7ZB)%!~atNo7>vTzSMdz{c_pZ+ZQDKYir^IQXR;(UNkxKbKh^ z4yanlt->8w;whBdI3tV6#Q7q8Zu_;*>fifWa%B62StGN${D3~5HqaF9i=xuK9>eIB zVXzqnlQj`n&vWr%;9hJ(mW?Z@>J~+4!@)|{9k_osKRRrG5tUzDN8B+nEpJCgYcQzx zemf?7PHVxj{iF2{&zt%qV)paO5PJ=GBd-dJMM;*c?sTc{oMD}_`;#F~YM|1n;Nt36 zu<@rIV+wiP`8IRol9s2l2OiyV<0c$l>CbvUUU!Oq*7Y~-o3_hq=Ykd*Uw&u#FJ&9j zXpj6a{Pu46Kd1AT6;*$%O0Sa;szCo~N<`t?p8tDHyHcX2y7FCS!l>Oyy71%XZSJi~ zUXHQGPfJpu8=!5hswV$VfTTlKEeAkpvP#m#S0?bbMDz7#V8+f#_(w$SyP~)HQTWMF zru*GcKW&yH*0DNff9$6&eA(_lPWs`s(VctP6jBy@=i1Dm3C>J>DNq+L-mx zEp1%*8I!T9)L4cA2ghut0{wRO^{lmh;&zEttBf5h0xsk~+e{uBu-SQDY&U-q;Q#9H zgrh%Sc~Z6?wGi{zG97RU;BYWc|F4g;?< zP`^FF&btLDxU9HHWwYDPaOSxzbYD&r7%Am!@I@wr39)B0NppTBwQri@2@aofm(}|QiYi+Got#v zs-WFU@cy^xNy6do$J~gMT_?^lIGN$m4Bj7wQt8c_RY!4NOiA3|yOaid+#1aTg<}No z;?3&5%qlVi9Vx4kxGt5rt}o?c-`iB7qM{2&4<_2(z}&k$beD2-ACc7VoukwhKUPM^ zTQuc1oK4gp4^%JqAaUOlOT;mTg|N&>zu?U9x81ArWY5aM8*@2mL>kA`@41CW$OJ~A zmTi&Zh=qEeM~5(PW9Rr;0V10xiSCzLFn!~S>MzN|DYSaNWgc%CXm%q3)k6Y zLRJ=R%JSH?VeD*g4k0U1An5)@$^GT(&|3b(y_6-$c)W;2on?;ae9?no+I-d{&Nyt= z>13m?Vyn1E(_<2kP%dspQtwMT{b;Z?l);90gmLTW1r{O_O!1SHiqwDzX zxxsJieNj6mj^zW)QQj{&cpg(4RTx#?CO7JKG_IG!Wb|T*@c{2Jtsh^gx9E29&BMGg za%%NidJb6Z8=X%`kkOx8^{=1opg-EAOD@F4OoiAb!@-qiy{$Y~H~Tmi(+nS8stn1! zncRdz?K8dk+f1?E8AY#j5S2>Si2aBlK<$WrJ^P1IO38X@8SF&s+{FVkTPd3pY=eA^ zEl)F);4JO>`cEtYK>(rnV@0gE#_$L2;v?ioB6>5;@Zpc_(~ou;j)S~G-$VViMjc}A z#VgKH?xZLx)$S=eB0X=!y36viK>jgruC}K>$o_Z}{Lc{a^U4qER?(+*Lif#w#l46E z-d`heNV(taAytDK0aA^K^L&7r@)cbyz|Gq}G&=OIN{RnyLk_pFkmA~MeD84hgd_#- zzLOnrg0*g!^D5HXlcg6@@2{ZVAIy2$e?#vF8Y}QtSPggl1;$XkyRnJ=|3fV$w z$p8&bN5n0qILa?7+lBREB09jr zrywo8nmy~kZ-H=IKh+@f4~&YURwo5IK;t+qRLj1J7o(}=`4U}4KcH7B;T=k~>9n>i zV?CIHz>&R=_dwU@W9+<|L*l>TX%I4A!dC~o1 z)*}C6^}Ff$Ws=9f)pUxOfz%0!sHx)}Vs&psZn5)-1k{i>!XQD0k1a@PFe9ESi3sx9 zi?D-8Sn7Ar8xPf#Yw0x~yZDrACew+)#l$%WlHz%1)BTES{_u4Z%8!WXdCFT9+yOc5 zlnzQoVY7A5|HIl_hefrwQNxFlQbG`v4(SpQ8M+0frKLlWX6POnx}^jpm2Ls)7`j8G zyE}&Nc=ve9^PJ~-zwi34@4wCHMeP0CcdWJUb?11ZxluvUGhMrVUIiVb4VQumMl`VP zr`0Ne1o6)jH^&HQnAP?%4Nm`kbeRzJ^Q(6p_5=Vu(h;Jld2JA8kgF5k@=w}QkYj`n zjlz??;mCZzc0MQrfJ`T`yROc$9rS9QtXB5HxaP$|Db0^)_H>>e%%Tfs);Pmg-CD)& zv{FA$Qle-Y+#Inm*{haVf$2lirvg5pKttTRdvIGp&jV4sQ3W5CYjl{PYwtmqxI1bV z{B<*o18@%Z8B!ABzig5uvWDsP2Y|*pv3aAc<&oh6TYuBeQS`o zTtdzc@7z`Dk@EGY_rlH^o}0C`~Yon-e&kK>UsYyR*|$9(kzk+wFXet9=A)M0&I2yUJE z0dQZ9VWHIi?z6--2I$D0M~vqnFi(@cw40h!gaFpo8XS(V=eEGKF<#;`TdDsse{1VK zO2qdUAP7i(Ntt-4hy4WB-r4U>FI%WOA^JHR(Eg*Su z(Wv??DnHga9e3K{$@@6E%gIvsIUwne;;bUK5BR%k_^XpdTo@!XeE2xudDX8>2Tj*s z?Tc+*q?yREa_`F5C}F8CR@Z-b+hC9~oUfws%!=~rM@eb%L%{Sj5p?-?hvU5|4pa@B zcJv^ef0y0UnDLbHb~c~ucmSOPR`^T&W|vu7w^upShv}#C)8`6bK0f>$O(3n6eJ@+g z#b^}L9WDLe&5ueBCUr8r;4HuNsw{BKBBvE%R?Qs2+@xKsr+1Fv>1|Aa;BLs+?<+9% zyK5_yJZ(3`W7mju`PP%n26otR(&&SQ*V;JM54$P%AH|xk=v&>ux$#}y8YObzX z%p=u-v)`&O)olO3)=^|SOFk$8D|Q2}6Jlk^B^~3Or+HWO{Ncm^B?m_JGL7XdCD9=E6Hb^Qt=_Ii~AgjhLn>VthAIy7Ka?UB%V;n%vA->ssmu0D0N) z)K)USgRCfx5O{Zya1xpj(79;)W6vpEVEO8>iKjw|G-M-HaN|P6%KEIx} zAXuAm=?2E2>(73$T+B*%!j$frVW?#H0WV9v7JO-TXXx^2eMDT9MGr-)zU|Q;&Uuak zRi@U!>Vt`#Er07;#7K&D)xHyX$MwN9_tNx|_#)sJ<2=z)OSszwbboU06V27`i(RJQ zOj#?%$^oqo9l6iUv(vwG=s&~gs1+iHiek>`s{v+wmlOTO)!L4m_uVR1bJd!NZtFGI z7DAK?@Cb2!G#Q!?)NcUxAeiLC= zvsUUR*0)8B4bjm?2^CiT3xuOUEKX2k7euW;9~F3A^%bb>EDU`htN<_=jp7cXuu~A& z5#c%`>);N7>1bY65h&P8ap19USHktYjZ!@>s_&8r4$BXy+nS8|d{_(GH!jcVvXa@E zpY$b820DBh23-E^)FVJzQW*%`>Z9n0cN`+t-anE%Qsd`?AD>LxJ69W@$y-OJLeA9? zwQz_nRnDY=&%6y__QL%Vn@y>UNCOD3(>OFvZe(_$CrKzaasxu#!b(`;*}&EuF$5|w z;a)710aRx-q54V$bTpU12;_1db=*2X-bcAaF6EHtAHLcy&>)KF%_`H*N2W=e_}Cj* zn`ji)RIkPNQil+JI`t1{gchG6syT#BFt+yg)-GUJ5#zn4lNKWW7_Hka%m{(_tUn(3oc*mE=rwh;=kt;8oJn`+|+`El5tx@1 zxFvR;_$VPjNH+1bTJaAC5s`$Icu>3VmI5vLC+`bqccI;)OPYE1y^_Zpmb-x5DGmnpvGuf~oa^{WiA!%x(Va;9P#nOQ~az~;qe z%WJ8SkqMgy;fV)(zOkp-O;b36Fe(J5v;Ea)i5wW7TeNAR6j>dQeluFY$M4##5@C+3 zaKmK?)>cB{#AtnK2qhn`KdI5yfvZOdalJ*|HV){2XA z%|UR;N+&JOJ~3ukc2ft@QDg1>I#wyaoGsE74%i~U>&|hdgW7EgyI!3n6~9E|vF}zl z&L4;1sAhAEYlNZsK^$&udbmTYv{UVP0C53?(jn$V6b)AeVUNIWB8S%stCoT|i^VVx2l- z+4C7_ZlCe({tZ$B{LVcDRN*h+{)dL}my%y58gK@Re%lghg*MC&&^D#b5uOx-(c&v9 zl=U`?{m%ExTMaQwkdeFjtw8sh3CeC%&dXJmN9yiBi&^KQ%PS~*-~F2DkG5D{FEJ!I zB;#wE%)uDp`turRdr4Y_5I|)FsI0zycr$x-?sj>DPFYO>t(bLVaXng4)*|1Yg4b~n z>w09e3%GnZfZF9Pq0to_v_yo)4dMzGl$AapI|jVDJ#JeRYx>>c4a~<|QtrbQJq@?J zcM;~0MW)!{MGc$x`L4eDwD@NaS$YqhfsIXi*q%kOVk>gkulB|wdQQaHIj|VyOFjPQ zX22EOtXN_^g20bTgnhi3G-hk!P=@d7I|TxHlbNaM-}f7-MB`ydb*Q_`2jBi`#D5RU zPR85pIHt#r*nTjJ>#o({QQiA#hm5=R?U26b%!7BwfUEfnU_zcNs4yb+&SCKb>AG6^rYyNp^>m(k``&WS+vwyviK5$D4Kr zVBANGEJufi`E0y#;E1rn3A_<8oq!Kr`NNH6191bevzKw@2pi)x(&fKYJAcBXf8a2U zZW4elA`(e`2UQxD%b`71ptpoi#?xs*MaqH{MPAAl0Gy7A<*NUPIb_BZM>`MK4Qkbc zwnL6>4@e|Q->deyOtAbHpa&HbfaML;(K1o*t<50D*d797Y)kh4Vi|vqv29NOnL&V} zTNmN264}BO0qmH-=IAM`PfqMR&`<&OBP{Olop7VpA;_@}( zi~zJ+>m(eQ1K-jq4Re{DsoFpQ1WB+C8 zx=SVJ>A{~C!Q<6F=$*OQN$W%{<06+=vYs=dG5+@W4=kGoGvczl!+2+kLMB^gn3?k=!McBUEFZ-n)m!7G%nL@h(2X?si-h# ze}bY=FzijB$59ih`SI9myA?Iw&V26KK(gqWP*254L_qm^IWPQQo&w@|H`XXp0ppEc zTRBe9bU$-PmaD1H@`_zhjltjQP`C%KIWRMXT`R+ox&S+4q~R>0i&q4IjoqRgj_67ea-?~#1!v-P|GWWf* z=-81k7kB~i0nB(3RCoXIPB<0@c14-)`5jEzK-Q~n(I^ZKGz#tfbSgUO5m|2Y4!0$NrByQZxAXCl zrPoeV>(`e0y{-clg595Sk7DIzd=z8S7zz-+0o`++1B|Xf0qUT(q=lVQ77pshhcs;w z)+wG#OqW045q5dZeOd#nulmzexhFGDm)554Je>UkSPNw&WHmw2^3%ewH7wfoe`XSj z-!n-eFp)f>XzQ!u&+!@IPcxu*xY~zoL~H-Lj7_>JlDeJkm!l&(f?&Be$IDFrRhN2y zLnvO&cu1xce)pi|xEf!>7h+P~Js-TJ-}PWnmL>aWA)5sH&-@`u=!ZxjMVSD=-}VY2 z!|1lKR|ZG^qF)apB4QGU>n$G@*Huo^Ct% z2;W+gLJGm^U0URHow^IxmHViu-5O@1|CWZO&Ey|{e#!3hM;U!QLwbeWqwsHW&TSypa9 zPtY{T+psTx>_6ucVvQ??>Wi)PPvlX*+oH5wYeE0POlkVDfa5K z$$^}Y*#I5Zv;lUw*BUu2Q`h?ozZ?8gIE`vpwA7F5`4gyJ?+V|*jnr|PfI_}R08UOt zh59vJc^^$2lr}Ud=4B?KPTp?)sTY|1g2Qir`zV&f^L2Se#X60)(%~0kVU7BAzkxCd zq00)qZNTD^+3|Enarl_>A|Iv>_nbqY8P66vwsstA@lqw{bJKKmbj<4x#^Rx#^A@?m zR2<|4eEN3}t!zA_-Hy_|+IJYb!ujBMJl7kkb=)rq)aZ=j`}@NsOR5(RITsF*gl6X; zo5drd5dG!x)eG+`c)tFP992J&r_d?ifGUUkM#%8o)y`bL$W^-Ymgc2fDe2N}X@JOL zWX(Ee1f;<2Fi{V#4h-E`;(reiITBWb+soSt?Cl(#9(UiS)6qP>R5^A|bqHT5OTDSu z+}YWe$|~c4tZWTCHyjG-8o(IJk|o?wcmK`!{+`4H@i3NO+L~xSNNR~p&}6S9BwLB1 zzohx4+8HMW3Zawsu)=>}6+eq)tf2QS@4BWk$Rb09k^}+_VsSzkD{5u1?FBRUA30Aa zKVhI0{>1PMZ;|l(0%OW)U*7e+5T!EwHUxKLLH}?wE+4qf#Kd!s~x zTh7}>y!3c{L7%2Mnm@1YU<6pht}`z3-O0q7tkIF0S_Xt~y3F6cRS&qCne);l=Xas{ zez!=F!)2jo`XB?E9sya5-i)|i9&oH(6FSw}%;a$WJQYxXI52lbe0-trUdHa$YfOsV^>oD`XF0PO)Xa2#))0G=1a&%=q_Q`Q_c=r?5NUs-nt)3AbURUBeWFzOISGEH>hHGt$Z?y4VN!A zkBi+iXMrk~@yQ~Su30@RD{D@+;11vJ`Q^o!@LF)L*M%uXaT^VT;&hhqfni5Nw|SoP z&f($JnviV$a$EoT#Q3;sgj;X4PD#*A@eI18ip}}XoHA2&xR-c1{;seL-!OYzy$js!_BJ7X2i{z zP|Z0hWXW;U%I4Oy-i9o~q5ZTJ@EEH+!F|~zU=BKhe0PtiGIX=Bj^SVujgzE0JAD}Nrp~O9oZn(X^ z)vv!Ow{d7=U{quVL5=Z~Lgd_T-ESqY*CS@lO5LyryHrwdbSiJ1ZzpPpBW8}3c-sLV z)4fNqGs5HGIG8Fb;Rd#=r>8D<5f!_*+X9D>^mQ?@kUl(p7j`>rd~~CD)!K4A?bz;i z-b@Vp;&oXFTl=^yZfg>fL%|IFbXs?bD`ekp@a&See&2C(EoHCF4aZBYkM?FNB7g2W zxiV+d96p!orQ7;W|F)gikrXx*0nUKRY{}}MWi*c}*v`4`%j#{|RRX4NK1z3?j~@p% z&OW9g(T<1Ss_54X&)y_%Mn+tjZM)rXRm2mczE;eI1hgiYggk@*-iyNmv-{e4>Gkp&OLblcDyhow z3m*~g1vd-qa63-)Kr&8Pbv55{h$1AI-{UOJRPgP;6VLCTSd$}H*3G|jG?tKO>&^EY zd7!4Rn|`64EK(tr+`JV{VD9QE&m&{0Es>sA^uaH%L9!_l7o+Ugkjd)}98o+XE1TZn zigz!tLreLA^;@xB&0(edgVZCYBM(S_g#>;-+>aT6@y*9JAEiuQFB|ZK*YFB{P~*2{ zRnOLVy1ZQCzImn~?D165lB$&nm=i=KJt6zmB)8o|{el1+Gc$EX$mGnXA+CEMb8G;{ zEQcfBvQD*KU$R~nAUV7$JFV0AJW7Wwogl46&(2ct2nv3oA`$1eP1Dzf3Fn+fV};{g z?ZB^U-P&06i>Jgq4rDo8Dr#g`BLb-O>Revb!>>=PjO(^DIqY=p98g^MvBQ;ahD5HT zH}^#@-;L1I1i?Mwmzym5*EK!Ag$iHiM&#Did}~}CDL%h<%yE0cHnTEt6_NU5$40u9r*kMPL$qW#vs}J>U};px$uxpjge;P#lVJZ)~;+1%<|1p!jAZ^;Sf~()V!F zIR&assFN<|Hi(^?O+jM>81eHTOMrVz*CI|*Zv$ZW9N}C$J67yx%dc&H&nMWmIyQtM&1*^G1Ufak94=VL^TG7P!g zuO&=U{=kJ#Mtx(SdRt1?0ypO65<1^y$Q^_2#(KK}WX;9grDsPN6CNWPUQykp;@k%K zo%pop;+Mlxeb;hngC(2WdGxsrtS5HVAn{wT!7zwi^lc$8OiXAO9Pv!+4Yqm8;kM~J zLw|hlDzVZ2so4wq<8|rlP_-|Ft&GKZ%9u%^U!pvFIb3eaMnWLxXer&g9>_0EIi@=S%7a=l5Cv_W!@G@d{jNxgPP zHYdxsih5#!b9`pGx|h!ZDZBupe*gs$dAdAOql$*@HI#0MxK(;cHsnGaG%;0N$$N;V zn9Ur?5XdLOMX(w%PrD}t#`zekP%C$ z=Xzf!!6H142(V}{VSCG_l$VUh-5L$5^_s0Hw)~SJ^POa*(=qcp+@Plgc`MYRo}Tra zVl)O9`;?IQ3z6G3{SgcOTYBb3Mu?YWyGp@Lb+x&%eRz)a9mrR%1pSYP7Yk=rrt zqQYSoFHC-hqnQbqVMEo(p{zc{sU4ru*V0mhUAjZo!L^*R96+=kAxPQNJU(L(lp+SE z7L+*o`HO^Y2Le!xo(4*KZFf-Q>0RgP5BBqC>E9C3B;i7qmp(UVGYH<4Ob#+{CY@h$ zo$KsP;5OkW`A}R|)y|x*Yrw7^`E9W)@!3*Lf!^5o z#@Lu(vHfXoA`cI5ZpvMrE_<2YB@OE#~W-Ry;=nbd$0(39Xc<@%KO;QeI<5^$-2%H!nuWGzR zU~cRwk($4o!mh@$X3fDg=5fLmAa0IQNt2Y=)<&nMp}~Os6=&oJ8JojP{!@Ko>9XPw zgS#7vw^y0thvjj61;xcIRr$bw+u%I=MZ)*%>;2f);(llBJO)I6lwP1TTJJob;jOWK znfcoe#~dl0@S0DhwSK zs1b_1--(&jBUPKqjfH|fMwPx+do@B=^rb2Ln5Y$%5A*LQ|Hrt3IP&@JYbHiHTSRdr zNgFKmZAKUY3H+mvBpkR@FS?#Ry-{hUTI$BoZVo@LoIMcOl-0laRCLkWv8yZ{L4kv9 ztc8OiiD_>4{g`bK?cBtfg!?4=#x0Yd%F>0Xvq4v z9O4%k<0m<&i#XXPcWRh$q#t^iynWqQ$hzg)IFVCU@*-ABP_0|;*~YW-^33+NwQocC zlTSy6^HM&JX7ru%ghSIk+j{!{CJEEtV@@wZ(+kzg%lT=TnWaV5o-lmLP?eOP`NEgS z7S9Bx`NuOsu#LS4*td>M1_1p6(#dzV4?N?gj~@T7zL-5vlnk=dwC-7Se%#9M2_j!? zV!TKlj+4o8CLLs-w|(H&w>6v7aF`4?bN(jcGB!0LL3v=H7_G{jd9xldmwvMwojSO3JD_;&>$V0L zfI}3ixc~ES{A;S|!+X&pK!%5dB*H6i>ua2>t@p~<-u{5D?c=6}mCC&l_cHLQy|$*V zvc!-|o+=Ts6Aup)#wRQ~V8oQs6ngkKtLyDSQ00gwJwG;;ocK_Fe-b(Hg=?T#!q^U~WL)`pxlapU= z$5+)~3xL7V*oS#~sB$9@9;k;T!epBU`$W)_kN`>WE95D2`IMJhT3XbK8m#h@f#Bb7 zQ6#FhJP?pCzD>@?hYN0s=P~BKQ=^OZTks%hdm|xCSy)u`T+LKhkGZJS(Xk1gYu;=` zR#w*fHZ$|heQ6Cw;!X;uMh7o1F%j~*+!AGPAp%T7W^W)~Y1y(w6wkeIfw}=1xy$aC zF*gc?a5(!dj0>q;;WaB^!H?)b#uGVPj*f+Y6bpjc%Sf^3hz8<%lSQv~ixUQDSaT>2 z*QIw!I^J(%C@B#PM0hNoKhFINI&AYlIX=#rbM4RuGF)X_dr8zUw9B8|{qGIpBF3~G zuuHBCUmtW{mc(Jto%nzYWw;n)l_^SO{PhFF&ygK2BK9>q`0Dz~wteTfV?1fifGU1P8zGB)amMgD#>^^z(g%w#> zPjAq;qT=aR^|mWA?gxL(bw0ioR%lUSuJZA56I#Xj^OCPsIqK?3eyvr{vF$nG6(kgo zqAeU`Tc5u?c5nta88&bbh6A&>w%GTpj)9>!9%!vHXJ%CJTYU0z;_VpIx27Xuq&}C= zM5bXBupP}b2u5;$lF%9x>`=_v<)HU5!+ZA=7LB5unCXyD4o95}N+of*Yadaq>AlO= z`ty&E9i6eHBgmM(4>0W#R{yoo)|LPsHko$3EK}`l1 zwxy8G-LU&|ezKf&lRNdg?&8GxMpsxuZ)l(GUg>JwR%ILT_+mpB`r3|(k zKOP*f!LQ%%u5T#9w6Di?ar+vEv~$o8y860&?I%oc7qB;hZSKzGVK`*#V~~6SYMOM0 zx$6w*83i}5bdTQu#0iKH09Km)d-kO)0kU(k6qv2DRTuIpz#DWEKV)*ezDQ$cW4Xr~ zEK9NmzkR#L1nQo7)Tp6NK%g?|O_w*ex%m<;u7Jx`{8I17^i`c;tOsYQnXz$w^HBF` z)SUqTl@Jj+n($X6Q$xu)AsY#gTo3AKL7SVF#D;2bzBu77Q(c*&FWkNFD}-l0GySd5 z-(Py=mUj(%My?+symk*f)45(HU?M9UorepSutnh-*NQ{yJA;zwTS?Su^EPu)mat?jlV0aYJI+H`;z&!q{Fgjns;vP z#FY4bGNJYGq0+`)tx%`3YQm{Az*^pUB;N@ebC%_y9bG%AZ&>wZb zs4|`{8k=jP)t>#&Qa?ovz=7MXDG?zQ7WU5o>a7|Azq?n@Na5BY37p+6g2vOhvszN} z5}RxLKH7hedHhVn9t4PB*IPS}Dy>nZr(&^4kJ5ynQY!TLODHoqijUP*fG(_Tim(|N zp{eG_rg`=$Nj=}LFy167j4I~+ROAa=yv>c>7|VH5A%gog$qC6r{V%dg3jp6yhQeZ- zccwHdI2}nJSLvhW>j1M0&b$I-YxH=6zb*yv!y%@N5_ z?Gsj5hN;l>=_EAmyS@QM&Yj1G0-2%?s3q^gkzK>dXhxNTC78~oJ63FYSy}CU#RUa9 zUAd2V=VnGeGc$A9(*d*EZI#6We)PaM{-n;rlAmJCes_&-AZGgRtSsKn8|HC)0gMSI zB5K8wUT##*5a6Z5`q;=u1DbrTrp@AmCd;?ciZ!wV6o13Bqo0nxI)$-t6e}eslY4`v zZ&Uc(`&Dj4oj}b(->*&k-CU-@7bmTX$>a|fPR=AR4pI4`hvpFd)NIAKGHFVPoA*mK z;Jt`2PFsG{4al+V5S1l&Fyl$@=uV3YN$P$j_+TO3)d+=J0SPg2t@TSP`gfIp_~gSQ zL{I>*&Z9=OHCtaTF}bHe+0QUOJp2%kbR+ogqMQe{B@hX2Sm$MHJ}=;(iw|z(m$k4w z_{fb+4)=D)*9pBc1A||Po%yP2Yo|||AQ{pJ zLDS{l?FdzTK$V`F(l)n!r%HL3tn5PoBMy$Zr{~OK(}S~7S2(&}BU^}6rwZ#K>%2-| zE`Sf9VoW1L(|2M5!-`nwri>KmR*v&B@@lDY0ef0z7B;nPsrAyiASf-z!V`)FjPUPX zn!;s`beOp%pT&+(P6Cb1Go7hcWzs|uH9vrCnKl#LA9xB1*o zO5!9*jR!pn!FxPC^F}*Fx;M_>vwkKh)g_$Mo(=R`SKB@UsK;LnxSF|Y6&4n1bQ;RUMH8zoLJ+7#!c`1%E*FM=d^7iFq zPu12Ishc(4;jpR(AWK!pcJr5Rckrl-{$4?pP}nKRNtqEGZ09-su5yaZ!ADn*C{8lt z*;3%}ClXQo?ZGXNBVANoJ z+i&&EU*Iu^wJf_b*wsZDbz-g0bj zcjNvaO;1`CMm#KN&1SR-hWj&inE|mYYy1Cm>=I=MY$A(*CBD69rsRO@!6=3lVQE2D zmZ_uky?e)bT9RzaW?H`NDk|JHB#Y4>S66eCDyOXpIFyuW(mHj%o80LxpMU3Mt-!_# z!hT;{D{ur}a>JIzBj=IEkiiq-;VJwmHGKag)qGBIzDo3cpJigZu<$SoLkuFdXF=~x z+}3mw8Z09p-Vh*5EYZI)+O~3aP1xMs40OnDR#{qGBi^Ck6<+;~dSEPyp@~Y zS~EAs_Of3Dd5ZXD~-`<|1$np4*5Uw(C=S%M*VF0Qcy$yV+dDq zE-Qs5<*Zideg)M#-X?r9uh4nAm!S)khKAt52MiA1DueMdCMg$JsRQHjkT71^+oxBd zkJLKW?rZ~&Cp6?BH0q{%cW`*T_LXCPvrtG1StYJRrU>+%zcAJ@qiW<-w1~J*7PKFJ z#SoqK{u$o5D3wuC78P_qBZ@g>7D`F+803-42#4*I)LcizT9AmRo6`1-Bzv4_F$IrAB zFM2_oJ{wJZ1uH9Axauz|vhzZx-(?^0*6tZIX(n~0;NfkFjTs5dkG$GtW3p@q0ps^} z_Wfl$Xs4v6{V9hI_8l8jLZ>fNUIHn!6Y$VdU1s<&^rs`VAVSl8z*PZk(g^sOLk;oU zoQMx9JC4>I6s6?;gGz0D``~Y6=-;3);uF#KpX>$-!W(GWOtwk+ByDVTOm{&%2CpsD z2>Z2VWI!(NRDXZ4%J;=^l@FjTRaHq2xi)dhC8e@Niw}^3YeF(ZRt&azC*xJz!F#Bh z6+^Pwpl;Qm_brd7gs`AQ7@|~F(1)mIQmE>-BBii^Fu;jOIFW=@Rl>NQITE6&&c@>D z7|TW`;Y};qteIIuK|>b!I`nHsWwuHy<4O$<$20e3PKA09ub6=^DnJf|g^pvqF@&ZE zbupFK)cBk4a1BrX*bdg)^ZUBf_-*PqOCZRlBsu^_Yt!%M?k}W()O_47Sv9W2U?b?fTbBUyL)K%!l zDwfn&oI%}LiVoJTFRKbJF5PDKe+W$32`&{q#4>6k;^TO*vT8QD%x<}9w^M3%(DKh+rBU}~I81)HAG~4(>Vq(?@_ONf zBT*YKofp;6P8qRxs?1YA)-S6QMYP~|89@gJRa$&l;nqa1;qGNXE#OerX|MAKXve7V zQ}cn-be>o$6!VvcCv9Hl-Fw;_f9spo2$;$`MEjss+&j?JRgBOto(Jz*LUNh8^@aR85!T*dI-dFgDCcuLjfRAtblPQ22Y1?~g zk(`7A4EqhcCJ|&j-uyU5)MRjKsC)~RUP`H~v@~z&!foL!ipcbgGWIw!~S{O;gyXE?@>6S5PqD}RQGP|UI$j>_fqnOSG&oh-uIpJzk5n!yj0>sT1$lef>10 zk8!rbpGlazsK-|+p!a_pVoG=caYg_A;kJ*vGeZd=Q5a?Eju#uR}D-L?g1b=4&c zp&sE=Xi)Ax{XR!q>}`X5 zOqLY)?JKp)X(ABo+JaK|+5?n~E!HsoJnMzrI7x^m9#v+|gugLy=ygop$Mz1DLG!RQ z3`1kvXP11sM4-ao@cFX>Py|+6h5d%UM!DpR`3g@^h&x?Me*6?W+;Z@hb7%FnA41WB`Z`csQ^$cEHYsVKu|+VRa8s6? z&CSs8lf=QuAU4?$a&0Q}=3O>xlo?U$y0IB+@~D1;Ntiy5aT*tL;O=PdHtA>`DjVF zgN!X;HVwfBlKAq`9%U^a?PPP^FG-6q!}pI+%t)q`*T1py)J+D7S9I2!52eJ5gSgOA zntw~pT)eNtUCUql4du-H#hH9Nk|eya9R9te#KfWSLR;+_ zHbX&=eqR>`GZGS#Q8)^L$oIMI0qldSfRqpDj~a8inGJiry>D{N(cZ43?B;?o*DyTG zgR$TJ2%u}l45t$H8Dg7V0(YJFhFPT3v4=YT)o)h*1~BgQ932E#)ARk*nwh4A%G(Kr z|CKWRe|G|bRA~ZO;4P&(0v799w9^{~+VX)tI4MPz_la1<8Os_PK94vsa?Tce%mKJj=3u6QCZ>4R_%8E;o<37sP{C0eQ$X0 zGr4K*jIW6%S%3vv7Y7JHHSJURaRU-_d^!9(I>;BIVG%jcoX(GW3s|2x=wvqchwVIE zCRR`IvIG-$Q!!iQ6syG27+~4I;o8|VxriJDN5@JPWx9bmh-P8M&*%a%MhYNul5z-W=ZwP2!HF>_w!rbKyz$G8Xd2&-xO+?m& zx!Q0!;NssUY5SCuFSmW=AvJ3E;{}QmSTP4}<`<#`=#`n__BbWI` zhb}q4`SRHc^gW$GPLZ4JAK=Jo`rH&6fp09@J2Eu}Fild!$zlrZD@s1(mILNS>R!?OpEk>BFr%6;}fqtvHyW?@U32Xabtm!n_&wQPQr?gcy zha@S)!8%R@8mtF~(*6eK7(rMm#2^2Az4prp%Xab~1^bpfBWUundR#>o(2V-BeZwb1 zqHn#v)9mxrH`_`=l8bAR^|>4~VM!bH^H73Ok#5TcsUJ7;`j`UB2ppRPDx7lYX5X$xl-z=gkG^#|Hs2|slZ07tu zr(ym+k0955wd9!`^Y07|^+XDqAxSR| z6Ld&lT$+&mS)Yp<;sss`?B4V~NgMq<{|@~r#o|g*1o`t)Fv1nrbVn#owgN?o z0;NL0nR~?z!|@sSvlQ>&lnIS09;;VISz+P&N5QnRTgzR!%X6QNt{@o+%#8?M6$zZK zaTyf<71jRNMJUzP8cCkPpYe` zYG(GcPkY$TF8oIHku2P{eDd7r^~oZt^tv&J=NDaItJL)UufM6YM~gNS&uBglwYS*3 zYzr%Bb)=OQAXBy_Z0tY=K;y)hRM)AW%0$tf*%#;OL+n4~**wRN>)-DRXrc5E>4l?nrC7Nhig4UNE%(NTJu zi*9C5O5e-gurSA+Cy(f-bBpp`0TQ(1Kn`1dT;+xrw!=pus{FJ%M)Oe^NR`Pai?+V* z^;;nVg+DUh8ehOD~lVj+)MzN*s?@b=4Rc# zHS>4)ziBlAUlyCuzryVQ3Z5pf2kb=x(4PkDj@Wr!N2=(IDUzd?q^zV8KYsSk}!kyr2av>IEWQjNoRca?zN&#$ZO z!1vtGk4`n$2_Ju?ljds<>gR#(?z|#@Y(k5I-jE+vwm#3ilS##4ZE)i(i1_}Q`}gv*r zV-Y7B)-j!LbMdcw(0`qBmaXmY$EocsgE1N<_fQ)p&$LT27+~$=?N;s#k51-YT)6Gf z3?LT0=EmHWwAir|PCuL6SMH@c+1T9-C5&zoay0S~rwCoBs+;s&v{!L3?bu%st69_5YKU^uzy$v&a|(x@*NhUj*iUd8+D zk`g_#xOsJglx^43lVFe(Dw$@e+4QGH9mDVG_@M@KBF^?YwLz+KWEbzp(L>~}&E$zP z!r`Dt6HwZ#H6GB@FD?7N)=5)2zS+=$etyLVK+m(ycXW!a*fYbB2b1gGvA;uM8y+l+ z$I$h;%T>)zZuXFL3OX`DGt~QOMo|v@>}+Nr(&claA=z!E9n5g3WWefm~oGhu)_8z zCuWYID&U>D`44MWKdws4RpqzMZrI?Aq0fYdy)M$*jvRy<&f>t#1VkM@1Vipt z(ufSH;|Cs{o}yhOCnPBIN(R1R2y~`ed=cgE?~lAIQ5j^RI&4~&zv#b0oFG;=l(?5d zj7)XpZEuzhGA+O+=5Xuhn-tT*jr?@Y*S$M1+i~l?)}QJOFOkk`IW72B*49e zLPiIHV;QD|`bh6InvplIZ#awO(W5bx(NXmfW4VJi-HH#NWm})bQX4&FZ6}$+Z&6iO z&nb$}wg@2SA&O>a=U03kL7*02ad?PruHf~d*;ffDCh)^WeF@HphGB(i)T&>4>@M|JsS%GAJR~lP=IC1-Mw**;ukO8AvbJ9R6jOsMU%o{5y-p%dD zqT|q55~xJ)@LK==1B*#ttA&2og+)5W2T5WP{y&#n_j{esDZgi_VNx!jSDt0=Kk)$w0UQWR+kNbhP zD+%{sN*ARMKlOLLPtKgJopAuFBORbREdQ%8F|quwSo^;&5)kMmhDGGw6VqQh@?r8& zMY-U;HmzwQddBynCYF}3LRi03$^9SN-a0DEc5NRP1Sv%tgh9GXL0|}JB&0(cM7oC- z5Re9ep+Q>dF6l05kQ%zALqJLC?}kV8;d%G_TYK&Oe*d_T#oTk<*V)HePY?zWM0iyf z$HvBhQWNWYcx%$qy{pBfGiz8sq@C2N`W8N~xeFaT;-R02a$3IZk&#>m*HZWk5r{lj zeU1O7>$p4)(=Q1qxT>gl;l#?>%H{xYB5h$|p(2L-7>d=KN}^b&lf+Q-k4ShWO<|ci zIbEBtL=%iMS|yN#$RbYLA5tki{$Xg=3W8LvZDJPtTY1pqvB-2dap)Z(ij}`dvh|U> zBO?twRFoFbuSNa#`ooy%x(_jekMM^C=Qy}IzH+Ovv$JQlA;=E4zxG8uXekhkob1GF z6!7--DHVt8#U&-dPE`BR9;+sZXI51W;NmyoqOA~TYxNmP+n3F7vK+9(K>;=B8h^yI zwDvi5d@sQItN+V{_U6i$#hb0Ikx3~RgfJg++PKI=8j+XOn|^b~6;5%*SG(0b77+#; z1oo3^1q7;!!v?jKR1kgYJ5Tyt7x(sp!1uTdLaMf1-JSFB2AD)BKPS8s1T>p5c&(8N z>5xuB>-Fi1ft{Tah-0W30h|qb>fB0_f%t>J_K;8ZD6GYA(T!76Y7?cD_1Rrd7x$?z z?C;*DYJwD76oBHBPryF&#EvAS1m8Juq)GGBks~yG-rhT{U$aCLpx^A&yd?tX3H7nI zylSwjiDEenXTVmFI8z))yrq&}LMwkshDktTXo?+Z~_rcY%_nG4;m^EK##*;}| zTR@ph+|r${?itMwhLUILvU774w>EjC%Z$tl9@i9Q);tICu<^vW8Dg9#;Cv-`I1*~& z3BgImm2Pffu;jPz(x1+Ems0Z9;<5DdCw^1U=eU({a)hEwyt%pK#557bk&^4mlBBJw zn9I}P#Y6bxrQc#or)x3@=@$_3%;Oe^aC>sbJQ#_C*2Mn{n3?>G?7q6Y1w zn7@7LEit^U0xNS`-muv>u__d3vXhQe+TR8;Gcu|AFc~AGqD%*#SG#EhdKA6KLP??E zeOgnJqHwG;dPXz=UFi2hH1e>zYd={TW1#kdtBitD5QI0aTMTlW8-X9_jq_&-62AWm zG;r5jWah^yuxwl?$mg}c6KP-LYk)4)$gZboXBkF@u)*+!T5moKKRtv%yGaF=))JMb zFs3^~7Z^B#QwVT(p%360C^(vVfhREb`+7xPfM6X%;{!+qa2lbWe86ub$LCoW$%f%M zAGPrI-=C=vSH*rn4IPZCkGZEd46ddyMAg=*f62LF9}6^N50cYsb_=&qFyGfCId+cR zaMMZ%fh0U@^eQkPWr=6&V+X$qqZ!O8)d*i;^Q7DxABocrBBZ+1{Xv1B^V!(?Qp7ZM zUP8Tn8s4YQ)*?hZ(;@UiO5udwUuZCiA{=S7eTw0D#lxkz&Y!gZOVE_#3<1cl#yfYl z6T5x7cD#w;aN501e;>~ick0j}yl3V1#hH~Vi7xLJ*tMo!>~7#;j8E?o0LBWbY1KLO z?rPumTc{v@&KvFi4Vaj00tJ0=0WJj7gnQW|4x zbll3t%kT=%)*ZS7h6^=8!jz&$*UTU;2fTarQvI$Jkf$68HTWI(b_V|iN6@&oH-ENd>twOlT)CUuZ_Km&VH08dU*cbZq>YiSYl2g z9pl$+X^&>XUnLBrWN@}tiH~@ZbY~iTQiZShUK^-wWB%`4m2Ga?KfX%;=1U0?v>~1p z#ESlk1!USH0k-cJN$sw8gu;P7g8<2P-5;Q&N=p{QU3(Tw@X~}2wPjdhLok0sIXWkP z<(+hVvJ*Y28Ha+$28KXGBq8DYaI?^Hz!G(vd2vU{r&MWg^(GpR7PF@9hk6sbXkW#G zk!|jt0Pac=vaR`>LEO9JdhcDov!9*;67Z6Ywl54*DAwViTrH`Tk3n`$4A_MHamwMj z5FdThk4}I4lvh$!u6%?<>&g*56u?$Ko$~l_9Rge!zGi;VTcpPjV|b&M$2r8RExO&> zk3fGhX7Yrj$>ZpY+OKg>&`2T@uz3?*ZHF)sn`5&@M4V+NqCa<2ICJ*ESDm#RKow+)8tec655pn=m1Fgya>MG&H>SUswn;?*5&vv9xoO*Z_usSZh z^f?yx3M&?MkpwwdlGRe_uJ<%Pi`I_P?9m4vUZ;pEU=w>8TXyH+;eHO_4o37IaRjxy zAw!$JC2pUcsRi_W|Nb^TT{H#-#CwJ=HfrU+5nOrkewgtv6zR?#DGsB_;$rJ6e0z}S zfJtPaGWG4_lUCPn*%35sYvie80i6;~{Y_bu84?M_=+D5}fF!wKP6P#bVNbo3?mGDS zoeR5tj;~ID+Y%2m?&8x29S9D!5}WOW1=`^!BJyEYx=Fo9XN%52I=mpDg#XIp^+3Y% zpmgu|y4nOc{FuY$*I!P0WUW@A$h$Gj5;~0)|(a_xt2PDvIq~O-vCI z$u1;|q>7B};XAvDAcWxmyr_|ZUKeh2crQrX5jIBaiJ=Bwmc@9{(;-wF6~#V^c;_(& z0c==_&L3xx9LarS@krXbr3qaAJb0QAt&}t&0J~-kK4xnRo#|05-XZ0en7BbY1cLXD zPEJ)%MP8B!Wu>R%V%nLn(@d&}^CsATr*s1Me6UIbn6V%44Vfh>kEMSGVe65hs%B7V zGlCdxJGt}QZLH;%tKCaxpVA#ZD#1mP?c$VSxnqZvO~LWVLTCo}`{8!58e#Le}_Z_wzeh z)rHJ#;JCfZ^kJYXscG{GTfDc+Jg{cyb@iC6Aw_EH&Rb;6Z{O0um|;2qj4?ekqdoLw zVB`y<4DI`@7H`3GYnR1~ekc^`onNO58L6X{(Qufsf=hk+V$c=H28X}8hJz7MeqJnt zf;#La1o9)!YaELt?>__}g0cS`BIu9;wx0--%L3(n2S`uqE4?1wk*x0Ode=%$x`M`E zd~A~_pR$7VwP_hBmdDo>Q!`Psdx^)6;X6m@;eW^0Yf@?uFv_X#Y{WobpTl1&(z^;i zi3}!+;3{=e1EIp9DY$3^;*rHx*O`~qv>f~LZLwlTyxhXLYY-0E;#>qHCJ2!%8T|0f z$*Sj6Y}V1VZ6xU-wWN~QcaZ`R(?KD)1PF(vVlq1cjhR>a1uh6o)9Fu+z2Hb!uEE2Q#B z|KvPigD1xR@1t5?f52>CMB}tSJem6%?R*S5XylR2qt<96B<9H zTr=uKx}m?LhYlE`;?|eQU-S;(8SVmWZs_^?o)tt^}PjapxOyLu&l+KLYJ8r z!s*!^CJ~FOBvn&qex?`CmqX9+nXXinJ>W#2gZ!a?SD%`UNM*DvT8k!S1DIMv9=$K7 z{+V@tSMAr7QpS|LGK`oCAV+@`>!Hj%<0tVRDfZz&L6gM9vEKJkuahqc`#45B=RcnG zJo1_?^eC&vbOpfAX85m~{@XS%*;d`6_rE$(EK#o#zii0ozK;J#h04JAjS*>Jiq3CM z?|>mlitm~FK<%4<=4%QdIHP6E*v?UzQ#+vo>t zEtge89iFMSE6m324X=3bV+x znBVbby?WPOM${=gC!1cy;vUea!#ed5z)*5>v*p+V%}gESTf=zHfB<9lK)Ng{C!2YE zzoEV=Jp+GacyK*KeG(HlCOSH6{T(YzQzx6y?6V0TNrtP5v80G4&ku`WWmG-i^r|I$ zcJ_vh-2UE=eRl}Pd^2+O0!^Qv-|`p457VYl z9_jvWGZPnTRQnz%UPr^?!w9Z^{iDR;sg#Yr51yiqPUf*_rF>BK7=oCp04FwplF{aKf1GRVR1 znLzTm*{FI0k4>`y&N%otoC3z(gnt^Tz=8L%9Pn8>~U zav^+eAc&VOz`qNe_|M%z)!?~u(7^a#N(p#k#81h(csLwg6V}?EL zd;F@`mGk{`Pf=2`yHn9De{`N_j8)ZmOkKBRAY8&i2tUUC5Zo`Ws^Pzqzk8}^eeylB z&FIu3;muFuq%i@1MId$Y?9sc*0pesigei1#DnOJJObgx@q9_v=%6;P~O;x)uMq^ zWk;NJ#KjS^bMS3($=0AiG439I`0)dU{pr)hFgEE=;5j=-$H3>ZK1Mx7m-ITEc5GN7 z06^%xaqnJ}hOQ!HEJhld%whFAD_E}xkX`2}aicRbGGP7RA*#xK-E-9wBO`dL`0X5Y zo|TwYGHlWqDzMQ}GauTS7-}Fl3&>z{1+;@bEJVp1*s(F$of=p`5vr@CsGRZLy{Dv- zSTIyyLDnqa6w{H62Y~QPHPoK-lnCA}rQ78EoZlg{84Sz$#6_zu)YH);DNuxvnQntg zkZ)n`wCwe>g&fBdEkXifTulxYp-v<;My*8Y*3D((92}*1m5QJov72l9W(1QTHX50G zo80ErFE01c#01c18<>eXKTyRy5yq*S?gBK11eE~mRc>^JBq=uEy-t_^OOG1(r9kxc z@P&_awB6X@Cbobjq-y(_h7cVM1eSv(=vFbAE-_J2R2GE(E%4n(h-$TE<+M;Js)1|Te)l9quoGtN?ssxcY00I)2G>rIyN zwlaWO0c=mjEIjIH|G6pUVxn4o^Szp~8l6zGq_URQW)cx{6sb*-B34saKs(ZesP(eP zcQ-f78H%aLk98-3;)B*7S#)__Ox=L@3M984R%8H~-5Dh$dEPg-cvrlQ6v))XT;kW) z)~v^46V))+H1Q89d0?Xc5#Qd|eRFhlMD$kw$!NQ@UZxdtdz7kGv5#GyYBbk2G46{Z z8ynkt+gvD5K42Mp``)zx+wK`~W?0&-Qd`2%W+!5`)Kyv(`&M*t4$EOVzHz9SL|kZ& zXIo+r-0J)a`KYcH^$2rdRO6iH@U%i|+{R#Y8Z0=HFi!ITIllkCw}^wf=D6JImo(>C zwBwx8`MFjEF=`5LArdhc!YQt=GjmgO2^#K2pR}8lJ7q8ww8}&zvbn8b_P0CR-E7vnx7dSJu-*Bb3=KM`c^gx#I2}k6!X_pZ%!eFSG=MbG$B(+~R8X)k z$~T~d`Dt@X5jYYUcE59o=Fz#cQ=*QAdEPwlDb}$NGA%t8!O}F4{yYX2-ZP$de$EG* zP#_rH2Br-pO_sP7HH9N%5NG1Bsklsz4-`zNeq;4-nu|2VLNLyhowY1Ess2pD)0fVWhWMJtm6 zvr(YI6wi_2^f9H$&S6?Lr*xWFTk^Ey@skpJh)AR!WqRzAyt^Ij!9M{B2S7nvx zYzlH2)=oT1W#vc{BuYg;CIlrj)`tqY$Weedv{$c#fXJENB++i2E!hS(4gN^<-RGB2 zTS5u+jOmZ7lq@%$a9;T}27q4!{?GlI%b`fA3fFA|NdmS6eK6I=^Xh}qF+N8pooW4uVyUTmaB#9#vK0<-MLK3&$^bE=KbBR8Oee@2z5T>iF|$XaE(FuT^_{dYm(mjB>q@ z?pGQ>#H%lQ)Hp*DQ^lZJ)zuJPf0{?#J)Z+(;8$D<^@NLjH)hfRRp`UU!`PGJ^T<$p z+%ixa@`S4)r_E?ch98N0U8$~;z#!bbDQwoHWA@A9XV+lh6$T-Xv?pJk>EO`j){*d#=+=X5LkRdQ<) zYYYpQ`LE`*V`+`cNcgwh$Npu^7Q-)9UN@BD1U1Y4s)T=w3Yg8~`Ck;80?W-^&`*I) zVGl0yQUNE1kc{V7-r#ap0XfxWO57i{FZr-K0tf47NeQd6nsPP}Y$->8qlbs52m`ax zv>hH!d8A)}I}ekir|h8`(sH%^aZG!!o~<+;Fm0Guu+zP$&z`a{YF~c(!n0 z=a>tH9y|@^dGZA49m||9zjQ1~50kl4IXH=th!%M!CY3|{j}LfoX;t(Ap#0$t48$-yK|a3&RY7yG3zzij*4 z>AjL@T0_pR$bZ2;s=V$B=588C$<{!S#o$XMN>J2*Skp7e(;Uay5o`C|>&;f`s@i_* zg_RKb{+EIxjk)wQH61|XDu1=wGrVzd>}yA-7_VFr+m5fbwUSFosI;i^6A;Q9@*Dd2 z#(woQ!kNHpo&rZi-roZZY+1LE+*0GLP@pd(n;g!#>bIDG6}b1kX3LIy;a?38zX=!4 zT+KeAmbuQ$IKlVo{!yME=8(aGPLG(3JkZN0$;}~n(JCqi%RO=szjl-*Z-I|!&^{et ze1XbP0r}HuE%L?Hv7zFVY1jS$ouZOVCIPOq^QEf{f ztZu6?G4&qUu}=8e4$serPiEBDYr{sinBPK(D5qkRb>vhEwRS~j-PY6m)4QfibghNr z5+nodP0dV)i}l2&kI%*=(iPS(%WSi? z7kRN|QMuLYIjCUW?Lnc5@*+h2GQ4?T&D2LnL0oCtnk~p8O_&ez`*xv=^0!wq1udQF&Pi!3-F(ma6|@$o}18Ghhr` z&ud&wpxPVJQ4&n{M?rRA0}#y)LUooOon2FyPUNFUr1S5Wdp>iM`eA9nUntH{>P%^RPqkcB>!C~VWu0v+82P^PY-Q{pDfRzVDu&FF$) zmYj6hcaC^EYXXo>!lI->AB5SH@7p(MynGdyi+I~&Sa>Xjq4HtbyN!X!?*#E`1N$AR z2?4*Xo{jY7a4P$ik7rKqAr!5b17!{|^d*vLo$21`oC&dAk+*? zs;rf%0Sui=fu=HAU?6iu0pLi&U`xvpTR%VZXCwl%42k*t zS&Ph!4E1S;Z>q*8j|L>)i&K;q?dJo>nmb?RzvbpdO_uTz02a8sWaIjrd3JB)#8kK+od2yiSH;qt zOWHk{9{fPD^sb8&+kBw-0=$4B&~KKzx?$ zCEWJ>+egRM-1dtdy5Fc}R6&kgr%p}{Tu^f3v8kyv^t*Sx4?KXG_%*YNj^F3tV8g4p zjIZJIq^NR|4J25B%B%JDGP9(94ot=UfUGVV zphtB-VFP;L@St!KecaytnFu$hNZx|%2@|;awXSEaA?A1!F+KK5?xTvd=x9Us{@HDQ zMkXb%m%VAPtii0i`&OJB6~l|CIqgTQ;<8>j1>!Y9OOlW$95pE!%cFZZaX`m?e7HNG z10PkOZ z`N_cinG}K;!4oNQubou#yc}!~SDy4u@+P$2&`yV!WzaY8k}P=uuG9V&^$^F{5k+L9&K& z#E#dng3j8zJVG-DC3lyS3;s7PY}a!^YOny%$RW5-RN&Y#d9C+qQkV!%{Ic_ZK8)p3 zq+k29ViEu8(9%cxQ$Hq`b~$Ee5Ibhn1iyL?nS>H(Ya_yVEMPZ0Fz_*@l|t3nPtS{% zni&`z**xXj-)^Z#ZYY`%*4EZ`yMP}TcWHew0K2$3n21xPl-#x)8-e#Jc|lH=cunBg zz9GM26XpbEL2o7O|8rV^#k=l#6*f{Xn~eQpRlRh1g8OLet15dBJ@!) z#^Bz;K~`6nq$19krMY=lXD1yyS%K)e-TY6BoE&t`}m%hfeC@Jlak1QUu+QOG|TVm=c^ahPL8e5^e7Bes5r4BV_L-vcBD zM9fF?*Ed>xC|@^7$;xhQ%&>5v+Iq3JD+8-cEAfMS^0GuRk4XjR6y+Z>b64{f(^^C2 zGCx(RmvO#`7k&XWU0QTrSQ%NR5eLqD^KGym29kTSX6F}6+OvQv(8va1#d9YOh50XpQ)qsL#y zuoqy2|It1?Y$uS0@U^dFH7he2aNyuGGL44k)w^Se<-~}&JtNJqH8Z<<_{!q zjMagFgm}Hgm;0N%CUo0%ELT!R82qzy^I^>(5D9cQv~p$47&TV4* zoR8E@cs)SnrmL)f3x=E2Iv!{Gi*9L@CAwG^1UUvXI_wN+fNBn_5FqjJ%;=KW*`6Yj%b@OzfVAJ}yJOsC_xyj&TBy+PT7T~@`6q70 z0EYkGl#WGyn>RbFC0f#m|2 z$DTa*5&&iNu18g(976BOprGlgx;CHQZA})i4%Du0Y&^%Qp-p*+?9uEk6Tm%&Vrpux zgoJ+A8+Bfa|E1H~jsd1*x+rM|^V&hjS7G&^b}cr`UBGmYT}_OEsi@r1a2c*A1(G5! zfH|K7LIwS|=okSKLUrFbC`NaluMu->;T1S0Xbh`OFL0Wfd6AmUMo^5`cotL>P4c!t zTerW}hlLXV3Cjh-ur6n}n3^iyV`0Iib1|C8pGO~JETHyDcn9_(j!FTOeh7$CQivk7ky5j`e7JCr^sIx7 zEPJXy8_d736VeQ99?Yxcx~E|&BXN9x!_VNC(F~2ewWYQjU)#|BxcpMKlGFjjapJ$I z)dOa~K1-kL2<;e(_DtpVSbp?3>kI)BG$ngUwH<7?^glK%_{wQ1%R|@>WR2e#s4-b) z5aXQge-5>xEtDf>FGJ*kAzHr$RONboA4|_yS}D?9U=PtYJ*Aqqn!Fx4ujG8k?XSXO zVl|%Mk${$HPu1n&&WM_aJj>iq*(hFRq5$J29k2sTRW%e-)z#zJ@Y=@CnqrO2%{7?< zzEd#n2c*iyFVW((?E*EH4!EvkuELCLbSV`6c@DM+o?g;{;CoH5tS7=WER3EB@yVmS z5tVRXd7H>`>gt}3JZ|TUE;<9|c5>BAJatg5)4BtPQ9%4?MjEVF!FB=^G@EJ`#K2&s z6wvHX6@6f0R+(HLs19V9KH-D{ln4n93J$5!a&WY#Lr$}ansa!<$A{@eJh9Lyc(+|% zB?hl~eEvEKvulUYIK&GJQ-4QNftm&miEnv8sdH#sGl9eFCPr}$8=q!`^#Vx@lRtK)R+ zw^G)3zhHnrIN3ka4x}qrMR>EE09LxIh%-wDzyNPluboVQy(*aDj2_>Ieo_12WdZbK z6jd4{%H56BzA1w!8iq{lKK+`)Km;cte?w<`cq)YfL6PeD}%`da+m z=;>`3a$5W**sb5F>CA>c{_%-IF3Z^ z7p5&_u_ zuI3OAn@de~RUMB+=Fl4D#R!R+qoI+JVFLq}n&TH~kzf_gDN#vDEF?nBQc%uMNgWMxv;GctYi6k6Z@_CTrNxM~@Hkw=g2ixhMzZuRjxj0k&wcj$`( z(mOi>Y4`0_NZfh-z)AF-?5T6T!{hUuT+STGyWOX$4Sv;G=Yj94-~X@!(_k;OLdWsi zC)$s4lcKmso{`zh`mDQ8?pdppO+=&1T1dvDgVy?k&o4&d_xr}?Q%~Tx0mLpLa~lEU>ZAYaA7c-J40thT@iTQKk5s%lqZB%i zR4Lj)BzR=fx3_?Q`Y{o?-R8t|k%nmqHu~ikrtMmd$P~uYRh{uFw8Yc&avqu8c=`tu zI0o?{yWP8`-_z~$l;2?8n`>yErB6KZZ)l^VdDv^ZVK%RX0p8)qH~rraB|z%xA$143 z$A}C{zhE4!4sVoKH`nyOJkRB!?BG4x{GnV5I@}YeVq3yvA6}5F$*XMO@hsMh#bB+; zYfh1^^riiEUBBMh;{d0~^NCulKTE#w9PN66ib$D|?7J=(zU46{o`#4HY|hoiNPCUU z`gWqx$lOkJ-I>_g}$zq%!gg!HcQgF#=!z4XF`A0_X1P8rZ6T;N%WU z4(G~hep+S6H=eE-<$e1SX1Q7U471)(Liv`%fv{jkY}8+rxgyV70b9gcf#%)pj;07CL+#>p5GT=)GTjm)kprFr80ynLY5`1WBlROwuY(@oxgdtrfF9#Ha^ zh$bbhCOYbwj~N&F4GbgGCgLo(4>8??6=itiU?Zcg*`yHtr&u>%=K70%v7V%d6e4tL zlnWVDw&PK{X9F+Bgq!;GH)pCLaO=#8^FOHT3e(=qqA>Rk=5AJe1^xT=gl@oZp-GL$ zXI_#09Z7&l3Z6Vg*=|w@mqT~oHswyM$tZ?(S9Shn#zH$_{8WBrS4k08w<;HDi7ju@ zt87XFP#p*5xoZ9d2-T0009iuXwb72%WZwImtJx#0>$Cie3sr@WMFp+N>~A0=KpAJs zSunt+E_%;?vxSY~2irT)(tY2T0xyPP%hWD*FP>K8JP(-hgZI<;K+y(eL;%0TNMp+3_t$#soxc0R4IS)E&&IHQaoU@o z`#YK53NRo7Z1+xtJUlsBb}lRGOX}wsY_RF$2l&4~lqmAyvA-U4IOfhi4Z+>`69&4i zpC0dvP>Gld^TQ?}v@}U-CW0P&Oq=wGPW6rsORcBx5pIwN&}4a}(l0C`nm7H!Hb!EutvG2aX%dbq5C%nK1@|t$)aOyrQ|z#72)%JRfHk+ zqj7R_BS`D%9N(sLtG?cKqf;WO$@6-)B&tQJ!)n& ziHw3p?CbxSOUhahpv_Z<(a!(Y+S(}(X^PN&5mYsiIe&uGYO zp@5ba^>h`kFGBzifupxkp3$5XE85=U?QqU5g{-J#7r76fq6R*q>sBA_lwCNkjmTdN z5-}= z8*2OephkG45S$Y`Vbe~SbJ@JS7MK#w9`pi^^2{*LUwvPKWJ9`8GfjnY&>d}eCtaLr zAm_rNlO>cH5wUpMI_M_3L#Y7wAtLIrs|hi@nEavt@nI>hvx3sh?&EgL@gqlvq)I`W zO!ISM%S%CEcpT3kc1QjK2j5=Oj#e@Rd*H%yw0D>fg!)|EHB0&-*7m;HeRhWD=%+2&opfx zm?D=ZlkbqG!k?3!&3<2`&{>IHUtGo)iVQM1Yj|+yw{+WxG&-?`Bn9o>A+EEM%XRea zJ(YZ?mQEw~5NGJOA^1ykh?C7Bsw?D!z8 zq@*NLorpuJ8`vZ>9M9pEqQXPS^-84A2RL~88}EeQ=jJZH<&i3L3aMhh!Co&TFfVdhKvZT|mNKHbky5&p)F`j9KFE13jG^7|2vD1&wMU#c4spw4`BGgj zYYle2s4qqLNX;^)#0pRs2_EkI$A}n7mEmFp= zlI;q{iI$^e)Gaf$r3Hn*B&B5Eha2il3&2)Cs;vUu)MqzT^&oDC(wumM?}v+J{W)Wx zdnV-q4;QzyNLN^+R#M)4HOp~ZJLO`z>)9NwN)p2EZz7j43Cz(>&IkG3b~uMq8QzS+2^kmvjsaX0dXm_R`Y9jGC3IJ7_xwi~g8Q=uGMC#%#>w zkm0+OalfCFsPMK?KJ!i96wZzBDhjx~_`Inami!?Cyq#oLHc17GUXFiy_9YKd5N}fK z#(f&6UwOm!(AwJCDKt>NMum1XqnhapPC_o5*SVE=?iXH4R$0+-w~wETiXOh$kID`N zEUaX>+iwdCr52dWN`3lx`5#`+96rFE=R+293(q$&!0+hA$iuQkhs8Iq%_z!#$%m>E zviZN<{FXZb=khBsGynC3YHim63-X-&D#^{3k44_(x+q96z8h?j@=5O>l)G{J<9Gm9 zbR;_V7G<>h?I^9Fl0An@As4JZ~zlVyd?2h z_U3(gEM8hrr--}B)a>e54wxV%<$KY9K8RjxEh|tw>rpww zjlt>ut}DFIS1udYD1TDPMt@EG{&PSOCoUd5`bQY)F@g&4!-&I3-iGTh-*4@)L>asK zf9B?!ENadfw*{#gTE<&&v?c209>i`HDo4oU1AbsW=_tkZjT0*a+$rX2(?fKFuLM5G z1Agd}7ZqQ_u6+F*;{T_wf1D?@62hIF8JDvq>X%{{?|)7yJT3LV(LbT@=ewJddwrTK zYodlfrVlR$^iIX3q@;K^c8}yotygo~7SyJR9KTSaHqT^00a2xY{o{@byg&qOMO1v# zHB`QNS6=uU)5;4lsvkv(4UB$mv?3(-Wlm9;$%pzhRAMHLdLie-bt*)}BgELU#qD7Tm?klmvH(zM|J4`@;=7|Zx z-FUy>q`i_Mbvl66!+3%d&_Gq#Lnq7L!BYp>LSmNjnq%1DE}zUs(6y*}9AJ<_h99m6 z1>BVAP_;|Xa~!b6%UAY8a!nS$^nbyKE{#XP6Y(U|9R6ClEA?S&R-kYKp=JCiuG%aJ z#A1Jozq~2Ggqhyd@Hbw>*z5}H+Cb(a0-H*Vb%<^wf24pH+ZuWma(zN`Q$PiCl+pB^ z-3;UscvX}`XeHc`-WTgVdf>D8W_-(jlj$! zqlh@fjiPpiWu20e9cTOInGc{5_~F|Au;}wk9ns0g{0|mgzGTtm zYUzQ9zbp&xe`Q&;U6Eft!U&H$e!HeW*oq=!^hWerMy^@(4|{mzq3P2@7VBq16+KcR zU~)8krtqYv&adIfh`H526|28cQHh5^6#_PtgPk2VsGn9ld}@C7Jeo18mxCx`eK0SP z0%)o?y(4t}4K`B1D?*=QWcyiQJ=W_sn^0wQeI4ArKiwVwkI8);M&-?vz z;wbpoyP&n~MZibnGY8^1e;k~}itw(gghu&i1ZxO?{tyO;qPny=(m&XGllcnqB+^m$ zYm^^;n!=a&1@$Q%{r1s&y^3$AGUT#TA0iY-EH2lO5m6rBz?U&$Bbw<4U*%MV!iv1T z0K`$^Z~UQlRPYkxTBxqc__r7Ne#szdI>H@_EO@0Zb6HF+&*DNF!!F|e34ed;|Dp1L z@MGLkac>z2KZsucpM)Qd!w&aAW%gs@vy>hbhw`6(ix-Bm4&d)@ZhTq&$JNDN`V6tF zMV)-t7~&ce;4>)vXFkIy*8~$JGPo$LoEkFRwGC$ebAXOeAg;YDIC$?L0?vb4$@0j+ z3iT?Uq;>m$#*={EPwiXD&d6~Y_((fVoiY)Zdj&YqVnsvbHe1M0{-6zHF0+I|zmpcf z!>d1UAAK1LRV$ux3)LV(mwRj!%cJek0p#iP}QY@0@wgP8n^nH=Ra>&L%IEUE z0pf0MZYN0432tPOxh&f^3%2;zln`jg2V8<5$z+Z<&r5nK(#>E04KS@VpmB2hRQBPU z)iA?-Ed@=+!ztHH96Y=yxle=t2rGApKu$7IcUPDGMm}{1$D}!vhGnsj-KKidxWB#XRUoQtdWZ`^I>pUlC%qlN(b?50Kyh&&?k;WpIS}xZhqUk&ejoi8;^ug^ z{P^$KGs+=uwy*ym#dQg#jBXreto<`V0?s=48j5h6EIa%Ddl?`p786}&9} zZo=u-)NcHw=5kLGHPB?*Ynhzwd&vJibXe?yXTm-vQNNq1qC;tP?~hUHzv~fwI`wln zBBWb}XLBq_dy|?b7o-0zcb;mRh-BleX?ePn1=^ly}^`V zHuSY_4*gErz7=3YR6n*|h;VmRau|2YG(6aPa`Nrdm!(C;FQHV=qr1vRHL2Pk+A0MW zgjm%Y_7ZX}S7M7Ex~zUg>b9tuGL8fAlNcLu6jM` zv-`Pb`pMlFde95UmU;#Gk1qVu54$7opT=mgS&;VZbk zJAMB+wKs4zHc3qJ3=?cB>A(A15lo`CUQGR*h>S@q%911h>d&ZAuX%nl%enZ`k7S?v zqY7=@K`*|7oZK9YeT5W+o_jy-uA!Z>H1Q*P2D7{M7~qm*?_)VPu5Z2-B1o#|Hf`u7 zEtT~SUU-q~@VZAowzVIr@P71sj_tc|+yr}K5zy$zrqa>rSZ~C9v|ez#?)kQ}b@kNY zy42Cy^4Vh2P{rYTq3be((|Tf+Oda)qtt zK$giVCwpBRz}EknWE$tf`4?_V90SHh+W_LOVQ!=R?ktWvunioTa#i1>QzRhtG1R;a zhA?j0{CeYFV!(3A%dbL5r@JgmC)*92RzNWuz(-5Jz;s#4xzVl9(Z_cVIB_B`dnCHc5BlhtL! zT&>P9-<;2qZQOYyKMjC#wTaNLm8C}?ZGS>C(S^7@s`No1AJK$Q%E(6v$Gq#2>;O z(d32HT@Kid7T+$Mx(kot(b4V^4GXGC%bK!0tr{7=pL4?7)xaYdbo=?I zAJ;*Lz^@%ASh>!U?)R)eb3Zv_HreZcjpC8|EU=u<)MUHDn0L-C@gmmb)FExk3F5s7tXi%ofnn_3nl5OONI4-}{;4e|aElXp67X-ZYNgbX^5GBQi?{!)*F0tN= z=f2oZ*iEZ;PA%*V69Z9?YVV5ayf)ciXSX>=#1E|J7;xAd5bJ`eXnn0a+G*4wrstN5 zG}kDd86U&)?K#)uXcaQj9VbGtQECvSYWoT zJ=Au|;qI!$qZnx)Qp-!6CTH>=e)}*lGE(WWV*tJ^Ni6A0~RHAFnL@c|d9eQF2#=CNbh=~g4tQsvWUWhpe6@M8J%W&@v@ z?t#|<cA6j-1a4xm2ER=xH3~X*^LQ{OgTF^{&FYQLdfg%!uM<`Dl_yKs}2W8|c~t z31x%7HzH*>CvN5Ovg3^qgwBHk$@`xfH!h~DNJ;VE$Rd>n2-wbmbSYI zW!KMrc?)-zpPVZLJ_lE=cXd;7+}*kZwKMX|N#>aiDL_y2nqfIT*`6Udo;yc+7|yTh zRHkxxWJD4h#kSxj(~AOHQ|1Zb{}Jh}OW}Cy%ywb+{P;aeZjJr%is;#=EnrQ+6ulXL zX^!L`eexC_5m?eus-ke@TZ4AdGidD(i=qFIwYLt7s{6u*6+sCp0hI=kMo?*xk{Ia* z0Rg3@8)+#)kS^&MI;25zKt;M4Lb@9yhK}zHDDvnNzxRE=>*9}r(V27hUi)5a-RoZK z)c4$4rJA~`e0P}<%eV0wb41Ih8A51Q0(zl}qL-l>?MTZqCb~Z+kw57-!C9uU=LnKU z*;gJ`xt1HVSJ*W}ZQNg!WXyI{ML; zw5h*^z340>$VUMZgvD{pxLVn3uCFCXe|oJaYGgL!86U;TA>YM@BG7*GUWJsWhLds9 zMh+Ljw7v^bP%DD%=L3bZzjB3eTHH+n`3rD@NBPDmy@b6`D&s$n*ynN_?skt_t#iy~PZnq)Y&;mTMTbK96G1Cq& z8Gze0cB?~qe4#+!$=+m3p3diebjty3kmKBz4d0LnyZq?ObmBH%9D1ViEA!I1Cs2WF zjaiD>GhYcm$eU%nYpgjSrYX|vV3XY1YhkJs`Wk?Lk6FJ>X~)`s=WF)>``3!2f^&%F z^58%0@JE|%+jgH>J*xNaPLO}Gyi%4h4Wwl&)Y7~{6}Wg!1r0=$fCprJIX({{L%3B( zWo@+t@4@tyh5oz*PPGq_x}u zW>`Mc$6ck!YICL9Fzt9y#%x_+?`UVNAF&^J+%~n{s7)YVe)o#@70^OJ=E2LA?E%8E zCdrds5o?aQYQk;#Z14SJH^zik4ca*#7DXkqj2(2l!53;RNqoe!(1xo4t9(|V@+q&E zdcwqcZd{!&A_)T%XmAw2)3`X!^we9n@Ik_Ljf|$Gn?BIVSWlUi7JYhTIxo_3(q&~E zp>5_2V(atDF@o7Bla}N%5v3AVe_y{-KKC>0_DMn;Z6dl0P!3L8(!a=(ek2Dz9a4ksQ29UZvXUiWYkCm zf}mAYP?F5kPgyb4jg8vPxdpG3pb@S?3X{Tk1h&w zAzA~8!*=_E2M|iSxQ=oz%I`{-jXpY<0Fk!Tc@xe0?<}@-wCt{{Ip`7#eOu9Ybe!o= ztI`?0zock>o+$%j%-saSsVktKG|5ODX|6Wadi}oZcsdKJvuH#s<#Vf+bHrt0_Uzot zLB?L-5~Kd+n^R>lT(g=5X?PmXs#~4hsWc?9)xO|j^Xi!y;DUfQ;ikr}7)NLIJ@1z3 zFE}n!;V|F0%C&W?HIlsYeKF3}0kH1TKJ1~XUv9OnL#i}SVAcHM0|yw`q^!t;)O4H% z2zlyM?afy`EBHbmP>`IDHc(AKJnw3}Jfd5-VOXRUWSVghZ3!J!LY@b!&`+muk8bXdJkAYZ5mDdS zE)%cL?>WZtZY*gyZZw(#oP!s4d`;v=$epgEdm80k#XQDy*p}L!U{~UNc>RZYpE*GQf*W6)YH#fKySZkO7@3Pt6tXTT`R<+xirpxd zf@Sy-Q2p>g1T`j5ArfP-g(j|@-PLP@1r_}INZzldVC`%pFsb}Vv$ zCL86IH{(uu@X2e~3zQC9qLpQqN#Eq?Mz?;y5U!m5zO-_!Cg#z0qsQ!S`P?zNe!^5v zMkc+U)X6u`Ntngq$JKIRN*O*+=>z`bFH@K;rj@IAG@aH{mv{U;wo>&Dc0b#tCMSQo z7kxCcbEvZVag)T#sg}u=93XxwRn$fE3a3p2A2~sm%NtfryOuHeHf|RYWT-7%4d^EB zSxGNB;9-i>`oszubS{py3ObVL>qnd!HyXP?*MOcG#x1q?b}O5KRj{wuds?gHVG!Y? zZZ{(0s<(i7zOjqr615#Igs@9i`*t8Q>@H9Na`iuc$KW*+{WP{*UXt&FpB zM4~(@oVvEyG9pF{C_FTI3=AwAzkaTcm=1f*XP)9p)1Od`BYWTkqm>aBM$$`=@6mhs zGhP2#9uqnhb}BfXYR2r2$f?>leF!q+ew1xVgQ=w|ufp`GsuxZbL5oGGaeRwa$BBk# zI$yA>*$bd}m#>=3i7QLbmd(!Y_2~kQYv7t(*u$)eZNTTY%N`K#)V;oVFl4`}ahMap zx&I_Hiy)b|+L_+0Bx#rJZF2|jk@Db+YjZdwHn$fNP8>A0vIG*GHZoh|xS6^ryGh(A zsttoRfX9<^?}hcuq(*A`=SivZt_`1rS{<+Dq|9-;{k$h@Avmnck9_W0ocn47UF6%_ zYwrkOuS>x1sR`TIu++Sji2!1PJQSAV+GANGV1I;5DAY}lHexepq7k!eF=7;g6hLCX zWl=ueO<%PX!_}FT4Kzr-w4a{<%@nreZAD8T%vx#6EOfY*OMj@Db;$ES4M6k2N+c4y zD-a3HIbs%#fI;UJ=uiw@hShd8X>>*8aen&sw^!|lMdvEHruz--8$fLGRs(yXBi$^orXy~Q@?(Fy zrqVsg;gqZ7ItpHF^!=)IN4kX?07*k?gO^;#Q<5y9vO{;{aH!8x{rT3jBnN9ND*|qp zBY)cE<{J_o$~j3chrHtqcbB4oqW0h?N&8=t5n#&Kf(Cvv20w$^M#@u?Pjv6ZWchz0 z`2b|Ccs^=O%TTPm`<7V0Et<7(#`7!GPpgBH+XYBXb=Ru5!^~>-l%%+)a#F~_14}~` z=EX22oaxkCaqQ2&w(AB~Z-+1R=zmd4ebkqfOV0>l(Iu2RFPsrek{!=|-Q5ek{otAH zfJ?~XQ!jHDo6gI#{*k6JI(4KwRh80s9PsQ)R+~V1+|Em;KSh*tL2z;d$Xu1Y38;Ao^*Az{&E#8E2;-_)QzTA-VZt6k4aWWwE@n5*y?*z zzTCkj%%kCLV`_8PBa5M?nj!Skipr(>1laiX25010+ zdqdn-y2>`I7|^s#$-Lq%h*@N_a3B}G?`WoyJsq^md^%02}X4wTQnCv9SKdGy7^bOp0~ z6+H@egt_IIJ6K2mIFFd(1r z={0-Y?fQ8Z$7AK~!Dy&XLfY?DAV2^F*P@GTpR}CTTF*rD8l(Ux^7w*o{*Ia(_|crU zbnm`Mmj#SEAw#mG3-T#A%WM`EgkAkf_KV5{O-iJo93eds{?(f4ApS!_Pz=y@kZD%Z zCZtks8D5T79o=EeCq~Tw4XB?i^i-C`x_lknSew)QzUtD!W5+I#QlKr;GT#N(sU%$+ z&yDSkuI)l;Af;ATw=ZW8;N9&(XKy058`WNP*jc62bm4^(HPmpjsEp6YT6IL~$J@6T zpX~8Ewg72}Za}Cr{{2MAI|5x-E~moM-gB0OSQu_^(&;W_NL`5zFGVxw6D14pseGrd zahB(ciQ73qn=zB-(PoT+6MZ{#jx81t&ZaQfE}SpH#ly27p(11lzA;KaA=JvnuBKe$ zM8a;VjorbSl8ffvz3`RNAteo`bzRPx;xPwFjhKxP zX~s}iWy$wu|qWO$m@RyQxWfLIn*U=r4uYL(ee;1a03r?N*W)mbU1cx zS;U~SA2ATTwiFc9U*?vQ8niPuwp!aAw3}-oP1yg0N>u-*xFP~qEYP%G<6yv}o}N8= z62&nfxCnFL(Y8YOl*C9SA#P8HJYWCr%3^v=nEq%SHFtnKJxg4H;Ni>WAJp89pFpJv z1bfG&|FisHgq?wMVzTzMv5DzvsSUo?wp27bhJ>BJ(B?r`2GQUEfkYm3`nk><J#n%Fe3K> z18*o^`{$h`f>Ba7t-y|fP40ZF_I6_m zI(`MkGga10Fdp7b;7NFO_+rqcUtQ;Gt4iSk$-yh<*64Nref+#u`Xvv4LZg&KGEFft zv8sJetJ&uE%GHVRypM-BIQLS%Lf>t@9Y_G#45AaIa;L3=OVo^CQFWn$4vr^SyXvA^ zFvnCe1}&Zzy(vNf&8^%4SpVp9_;lf-NL-E)&Nb z5~Dh?{%9tlzCPJ2Y+0bHC>nTDCwUOVCf?WEJQ^t}I>0MClf;b?*@7`f*F~Gn7`ij6 zFz$mFz~FG!NfncEich3}i%;oD1Y@x?HPYe`>?U-QOgkz27k7!p4UOY^*z2c%b6aee zPm_TISgH*&k?=?y^zD`zda{V&91p40azxx1!$*3eOlhtMJoBZ&Z+wnfJ>>(AF_O#a ziM*hwpox6d37U-KH!2g2veQN%fUWu3b+G38~qzfZp7Bu3kH!!iZfP! z3iDP{Y~njUF5WYf&U-#>iaC6u-<6G2uI7}m4xB5+aExQ9n`OgF*~iG}BjLzrRDnF( z%6Y4W;!GjnfJcw3v5TMP8e5kQJGHEgmIIbkbGT?UXa~7cwX{}#V9Plk3Hjcv>9iNV zTz2A?mcxf~vTu|Z!Lz*^Wfy-gYE5KDKDD5+a|@!uMQsVBlG;!jvd-%{a6Q@NEczy6 ztbXeJtWN~J1Gg)7+bkLy!(Bg0AiYDC82MIW1nuy;*6i+u*5)fk9rwz89*++O;qkss zJfoieSq5`>=hom0Z&5ilHEQ-ThnQizF^^Gu=ke2|U@-^J3k7l%S-xN8@wMeaBlD7(0zSA9pu^U_5|8&sQnkjQ}NRqD7_5p15 z88bFV#dxsvbhz}*mUTm<I&2z_pOg|qhlr>T zx~q#DpCv3;edyS#W(V5;lH=zqanC?4sW0yaUnxpZdjB4!>xjZD0WTjhN#HQYvtM()*;FhhN8IB<_@y8# zngP%#sB!(&DEJ!Zny0MxwGIFY4}b9J77>i7YD|2-RyO{FkxX`}kAr-aAvgdQ)3RmQ z3U7VNX3zAxLuZ_V03yfZKt+0d1KC?LA(Tq$zGDqp5Iw>|l?D7s7nYrMp}MQX_M;|5 zR;|Gg6J1^RmN%KEOZqi-7Dw>hwp^uSOn3!=PTpuMuJ>R*FAZ;3-s4@Iy&?IISN-!I zyS1{*s3QA^03Xsk@Blmm5Kn!=dpny04XHbhpj+KLA~{a#m&T)m$`}`4v!wdWAL{tB6(mn*9QT%$%4UX;jB;v& z<7;W{s?C(tDqd|USq`*+Zi`jjr0jvCSfly~Z5Ojyo3r`7vw8xtDA3LT&fl+gb#bWy zI#(kScz-K56d|<7I1Vo?Xf7_aRXJ1F6<9_5UTr`w&O5DnDlD_t&y!cfJG$@zfvMgS z>;<5V`Jy>>u4=O+H=oW4nI0}Xj`Q5Z!Qqg53r2JU`v3-&RV(XEqr(L_*nLNzqQP5F zcKpG7hxtM-_TzPZgp5=Ac^*9bp|jrTgoaW_GouGHfy$b<##+N{hAJw!m_Fi=a){le zi9Q&yre$PgJ0T`9?@Zbl)K56r?WbLLEXMP98bzzfAY3 z;j{At&Rd0bgY|*9o$C+sEV8K*;Do#2I~wj~$F>Sn*(g81XHN9D5%Op@wU2q4W? z^?MGfq}6dSzqXk#)eY~pcUmC4&uAj~)}v?_@gjLYzI5FQ8$O!6UcLjx@0M>{Po>}9 z%6-1|Ig6nDdzZ9M%tZC{cmhUf7O#4>5e~7={-``sz+*$$j7f*fsKgYYX@|3NccX9E zoS~4l!)dvk1_AUzC}JB(>k!-S|HLPLZ>%RoT;1~Qbrd@!%X+5w{-|LVo@x6kPUWAA ztDat4Ocz|CCc|CTi41^z!w{~|Gsl%pFuYy)N%lTgM8)&YR^M7#rDO2(pqt3Wv;JV< zNjX7FW*U93+=cg3G>{gevrovV6P(_( zM)M36Lk>O+&D365W)IUNnu2{-D=zVT+>5nvT_vj(0UjdXkmzaP6hw z=q_}pS~kCgu)_9nzQgE*9E{pyR3!yrsldrM{kU+`9-xYI_LesJ#`MiNmvWeO+*R%0 zqW{cV=iedZ?v+0PqV&Hb_l70c!*`a!1jeBkkc3M}w12lF0vqK}E zw;6@@RU3AC9_KP0k7tJi)DM>qU}OhbZiU`u*H!qc=>oeo6vS97D8%XF;L&cs%3 z0gQkm--Ay8?k_JtbUu$!B@vf}f@ud8O&-$4ooC}e%&=1qU%l(>k2Hen$^5Zs7C_khl2_|H$$5mFmYym}G%u$Rsg?3HCME8-C7%y784g&>!(#d_xi}wv9B?%=RPfX+?T7#gpF5&4+uEs z6YS(oU@#bptH{v--!Y|r+!6O$_nwtL)u9S&+=FVV9*$kTIs(qguVroF(wh0%?+E2y z!U~hvXc{sU-_0_Nj6;_$wSVQ($J11|pUVu@i8R2X9jOgool6GshDY+Mq+qtCDPwgf zkyO`{=+gmbE&G<{)~5q_lAB+D1hWp8;zw5NexX0g`A;`x|_0ucy-IlTd3x15%$N*t`R>{Ns~J2t@OjDcmrp@?!p~@8lW`I(;$6ju}5jSAxiz!W<}+v zu13c%iD%jjGDf+euw@7mSL%=66g;pEpG=<4j;2~k!KeO2hsa{4QqtRtB%H^RqReg> zxYATM*9_}$(VhLiLAou$<;4nx6)JcYJ~kXZq7zS*-nk)aH<4IcWyjM{%^0JFpm0*{ zKw2d2ARl|y`;r)XDo=F12{i4`nBD$s#V7GI8W!*3_rM^+zc$Kn1)qjPaJ4*K0v7z_ zt|2z79QO~Mx+%GItS$PY5u^&)hiJY!3#ys`Q6#vy0E9X8O%UYnO&6yE_???2qlHj~ux<-PbNBD&0gbf3<jPImD(Eu!;Y+Os*HF2|HH6=0sl=q!0!iRZS3`VIdV)(k zD#-#gpmadXigUk_LZ^YatV1-mAM)(Z-0(@T%FKMzrmd)>SA1+$IbvvZ&8xV>{eAYf zs9exim>)(Q84zGAlM-~3B{-GIY3#lVuG(nQvN{fsr)v5zbwE9zI;C)wpCz(gKFO!| z>7??7W+u&2w*^&)#F=Ws;0iqA8P3G!u%s+3rZx|wGS_zL%44$w#$m=a{zW zZq9bY$^)@xUo?iszCW#gNCpja{)Of{#a9ZX1Z~BM0WV1`6Gg^~(tUX5Z03R5^3i zN;sZlg`k%(XDe-p%lUmW%SYGVz5i(9gT}ONeMJQYP-_0BN5L{MbA#tZk?D*PWe|0` zZ1!Hqo~~>X$vXsb<9)IB!p0vLZ&rM5wLT<|PuKHjgvXT&SNRjXgh@`H0=^6FBm0B0cCY=PCJc4wSxsjqK6C>|?3DrD2&{zDeVz}WOA9Wv zJ%pa377@Hb1p4-;_DAynu1OI6EDI>V$${Fc`C|21UPz`=dokM%EN@`{i;ZdSkhfS- zCZ9t~9!kgA(;Vw*;?zI`K5DKRWTM7X@rRphOpq~tJ>IUL8zd_J+| z52GUEJ{^ICFBv!~z64~^xO_L>3f=p~0@D<$A`(7sY`w2Mg@cPyFbq*)zi}FMhPN_V(t98=` zU^9-3o-8%DlW;WCH%30jV{4|TlW0jVzg2SATtQQlX{;?uJNH>iLuO7+5V^;-Y>GLr z>gO~x%zCZGY4^>?FD*ceA~Pw>b-HB!arp-jPs?1ZW2azj)6cZ6l0+>$b4no-w&K}$ z^$VVlH8KvGC$-^~R?n-rMeN)C_wyJ^+|HUNy9NvX+2Aj^8J{*yw#NV+gu$uK`j|uu z`LZsek!=0O0Cx)MgpDk(e?>aIOC78-QOyZ5h&us5}&CmZao8)PuuhC<8S=qTa z>I%rqxtS7TB&s9?6jTfid>X6lH+8io{aMo))qQn(8-wL!f?nZK?cf}tqQ)i$J3atd zefRVEXTQT_Z5q50e7%YL<}rVm=?l(1V7!t8jI2nwqk&yMZ))&}BeyyaG2jvExu*S3 z`{3tCIc+EOXzb_!VuqEqtabtpy7?|eRJ!KEuY=a(83H%&X)pi}S1g)Mfh>Rm324O8LNV15BCN(03~*+UEXMcBGE4n z;4{2OA<$fI`EeRZ$`jOsrAvWp;e|@vtWbf%+F%WG zgZAO_nwEo|C2HsWt#xRF(p}Uw7CesbY>fI3PjH7cmo4neOdlE#$S6V$@Lu{fJ}OBL zsYH-9KG11!P)q_^7#)u8Mi-eDspd-b_Oc~HP|;wepC1Dp%Em}6r(Sqk+6TK1OxYJ% zVtCKB{t@!#58<6q^kqZ4jy85@O&0&e903{cf6WX5KtxxAv%dmJkT-l$B?f5n5);+m z;UERT%IBb&5ic#2iUt!Cds}J|V?yQSqXZBxK%2>*`1~_;a*Ke2;B-Lq8HxaLVl<~!MA$U9TWI&;9dKfc zR|u1r{T_Qq!zNXhS9`_0ko8eS5P$4S&piT)N@<#UDe^?QUNy?U^^5VVFMBG4- z%>COz_|5b#JxTE|4ByG&;R5x$9R`i6rvQOw#(Gb#E*|LF&tBYU^-JnWlP+`T-`m@J zsJBIfx4bZ^UM7X)1Rq5f4y&sL4uUe1zHYLRRiBBq!OMJA`;3ntpWaG!&@N$6{n&Wx zCIOpu#{B)@QQ+~$iqDM#IBg*YeAN%-Yj&zT$@myl?f{<7Hs<|NMleP7L7CJ)d+&LL z)Ah8Q^|aFRJ{2tgXeut&`J<`$e;b;3I$Z*Yo}yf{)#kLuX$B?3GcU>63lz*dFDng{ zRZd583PcR-8=tcOf9yyYhIQjHRTHmVL5TuNtMoOY`L7g z+LBU~v-bV;x*Shjnai2{)%)4o;o;%QS9l9zjssbE-z&&=sb{_6*amN%57aSAbU8!1oXgF=!?Xn8JgXg)ket4!d^HL;F( z9_{R(?IM3;c%G*VwKE5F3cvCCf6Gqd-?-#@)XLJ6J`rbHdjfROj{+n$*Q?%p5Wlc3 zr59jJ?q^e_EweS{z@V@6fliq$PAb&3FB&lhUSMFFAkf|Qc3%?rJANkw0(6$;NQKQu z?^f_9YRqPg%h3>ROWE9`55=Ysd2gA_xw8nB&vj?%G+HB>KN*MYZL5_TY*#zNLM~sq z`qV}ekIi_1Z1WaFel%=pNO?aC@}nc{H_(Ou8mD&Zf|P!?5DREs5MY|#SDt>`bDm%b z9=$LG@{0?Tm;P>aO71=ubG79E(ZD_gfd6vwBz|B%eFL_v#OQprgduiPBWA%_91uP) z11cx+NXATMT`}CzmjH8I`B>(VN2J%!WK1f?RB=c41^AfG8W*xqT4Feps9JJI4w#XJ z=q`{c-%ubxu@eo{JFY0c&WJ?4LHTWR#357h?bR&k+Z!fHK@M&*ZAqmc`qaEcJ7gjG zw;|XZzPFNon`(F-s#!~&Y5|9=fbmYB?f?Iox1eyA&JwelD`-5UyW)+$9`+a=yNjN* zr2i&qti_zHs+?AcH7gwrPGxv_M6*vYMX&zOo(6O?Iu(Z_D~sR`-Uxja?<8hT99tXe z{8mOz7|>kXat{ENpq70v&P$5Dbyp{J!h&N3Dd8a!ix=F`#AFt9v!d-61**Eq~a3YL*umH)&c zGAwG!*hLhVgMigAB`kvDa)u2ZOObikov|>HfZOD{x^L%Vq{a=#YcF?a>oWmb(mOZa z`e;nh*e;D^M_#{upFj5@ZctQ_UVZ#V0F3TQs&1;>aOzXBUSCOvlB5AF88xJUz7Oj3 zem9x6XD3MJ$&^#0L*vCQ3YgOunDw5zeMtNC%vAID&f=fG^D-h==_yr{`?JT`2KmA~ zfoQ4I0iHPk`Nl!Kh)KoldS?*_P4VZ%<*o#sjF{8uj6n|7G(-xHFmfCC94+V)$tl|~ zXxGa$)_$A>mWs3g$1w0N)_~SlEn-Pr8Blz^=2}WjYaW)TAxV&>G_@e7s?`hg6ZK;= z{r*X06-* zWYiSx!hi}kCi*HLzgVRmGcK2Laj`A9H(NSKyja&U6+DX=u*JT|P~t1|WJR03+P!nU z&O(q<>?$h<7%)df#9nuY z-&JG$-2!utqd|6UaA{Vc3qleJM0#zs8{+C}M>h&Ql~F^lEq)~&cG-=>&*L|y`5aa{ zU!L&_-I09-O6#I5NdMUQfBs+2A^6;XEuaBx*uE{Ng)Rt%2)5KEPIs`q(Ha4TK9QuE z2gs;X9H~!zE2UfYffMky2C%P&QS4?lW`}eomh!^FUWy5(;~7AB`v#qm4#_Z;+D@&& z(u+a8qV-;MwbZT&uW9Ub=KcO|U2*uxl2QBWjqZWAuUR&p%gV&cIWk8KMF%glYrA4O zty0oT`(osipGRQu-+K??XH!siT-o~H7T~zLoTU5zG1&p;Dz(zjsoHtg%0hhOT z`ekxn{%kDRY?g$WG%Ncj%W>D7aD@*VNV{>m1?kj%2e4#ug@x)-Gpe4-08tm-;Sjx6 z9?i}C#O^T08utN5fr2Z^On15ko>2O4O|Nbw=x^Ja?QE}FqQr@MD*ceV)PC;-fM+}>PEOwWcCg0l%wGTXi_GK4kA#sghqmbfqrMR680a4Enu7}v zK?lstnTd(D_cgs!?)tv0toBU<$wG!7(u-LIQn&L zmT2yky5P{t&lBc_<_~XNGjY{XH|cN2UKH#wBo>Qt4!A1eT2(V@?ur?uz?Zj}e&7461zcd* zMC*unlaET#x`G`=rNzM*#9_u#=-5Oy3*Awcg;p8Od(*r-yTcf0XsN3s6>qgaCROe} zf3PxgkXJW5>T_c-0H|5c^ViS|%4?$pyjpF|k!ZdZ74C%B?w}wm`=W6Yu`ZZNYyQeV z+s-AoKEYbD6qLr7QN3Jm7Tvc?&+P$G&yo6Z`Iqz!0g5@=$Y0ysZ>O)w^3ylk&}tpginG*JMcCZKh8+ ze#sXO8cu)kGV7#4nXF`qKV2-Q9wA4f8UHBWd&K`*-&zU4?yxll$Mb*%UW8_!@^<$2 zNQz2|vOw2@2%z3m(#aMLnZ#}zXr*hDHOIZ}hUb&5A}fcu>Vuvi(^a3noAR?|SVloZ0|#Ms+)3rXG-Fi& z?QLXzn}8$dbCZOGvHzye-h*rZiVXalcN0-m5lSDWzZYRofS{&90|``Gzn z<|!I;2J7w=c%*27mX@2v??AMfO=0hY5^dRIw5@Q6!trj(A9!;3cN}lXW$_9X1QRfD z-U&$-{M1Vo@NWis3V-)vUpu(bny0^zTMB|N`m=~zMK79EuX{l4K0CiVUve^zjW)vS z|NJx<#q;oSAN?64;#?8)6s>7vkc!G+VN`s)h=oOgp>h!i8+%u!uOzxrs2S(WogbI=4Z6P}^Lht^nNg!;~Kp zdm`k@Jwf;TS;EXK>h}SUh_FK0vNAqI2wcUOUwTH2@t@!AM)f>(+^2tZ5fS7h=g=kF z5P*-1gVQ#vCkud8Mn**lYIZh*elO3raGs`(ab)CQp2g(NYfB257*6$Anm_EHzlieG z<{t~+1t&CpSmT26BnIpDgQ`_(^g{rvOKUeuD`fEzj^#kf28o?2;^mAryNSPn>7Snib& zhp@1SY(5sUJsr30ax&o67kkpn(oF+Poe!8Zi&MfTC$(sKc-p|yiT-d9Gr0O5^8z&1 z;#@}deVp^WUs<8~?_-0~T$hoYOhYhOqH_S3okoCU~y1Zvwd-rd5<<}p_J>W4A z%t0^|HQ-U4zO@8Py%0z|ILMJt|DKqHggLvT$A+LR7`N3`39~kI3=S+1h+*bl*;tok`CbIr4tP zbJ$4dtW5>2Nknp@8}HfxpLpVG=SH9965H)%11gxPwV}Dq7wN&&=R$ zG!FWG{1DOEDI@meUHTWq6C{zvr$_6xZcdX-Hy_$8zE4^+4BkE1-L<(P!BM~!DlCyY`##0F>N=LeyFxus7znY@n|79p41 z=%g_A=|P#v5TiG25gO|5;ju{gNzN5HfT8~F^Isd^>5lR~Rfv_%8;g(@axI%$uYy{1 zr55|wj-E%7(XUUzZm-Q1-w4>bv!j(=fB&g7`)~uz&wab>PBB*1^-v%J1oDuHrZQ?zuCp4q^bKH9B89y-c_f+uK1 zbhr$g5$a^+yBmft+(s<&Z6pwMGP4$A4(E-a=aYD^4S^L2ySuFEIJK(h_i+B=8`))# zAS$vsv*V$s|KbzfZV+Yeg_c|g-SNP_r2*#r9Nbv3tpA3BTc4wl9zUQtJ4;tWha=?n zcZA>ZFXG0yQ4?iqxPppqsB4P~0a4xgck?GkVH;4dM)@IQCcU3WMnyw6)yp$V{|R`H-@Mnr0Q>f@ ztpZLLc;HE!@fQTJ%sS|Xr^r16`T~Uurg|Dg8)%>9T9u-?Qx)aS!<5R?^~O(41l#}W zT^|~w{7o=Pf}B45 zxOGaw0dGZd35evVKLMTf-zx1$g#jRqWQ<$dGLyK596%7tsO51E!2IH5&v6NXGw6|R zVq5QG`z%rFd~+JmPCS=e`e<7Ce+KujuOaMt=_<&oP{ePLigk5O z;NDms6a2>G>5g(?MG-H@j0mKrD&DEoMi&yl}BcI-hRobVm{+$+?3$QxsD57x_ir_BHx z{qlI0k<$YRXSd(PdSCDj{N_3XH(1V>`258qtk>g>S8#uwvu}u(fx}YT2FFgWYx?gE zgYg5l=C?^2!5fQozR2jQrcIgqjDp1O6jw0*@_Esouf@&p8cn8(AqVWTfsv5|qIE#` zY5#CE{71+@iU=e8#&32OgNS9f$_@GBL6%~ybdj(&5e%}d7IJRb!S5kz&@1)q$gTbDyi%hn=T+fIWK>Vrl=tfe&* zNgaYkWS@*cc;WW=$B}QJ^eUTnyN%PBA3ngj@YWgbyv9Rh5%9ySJM>Kgf|C#52wK&< z+x%2WKT)}^&(2?ja z9v{iawV~q~5m{fnFFVD^3cWH2%|X2ohW+vd&Zh>6Kk!`h%pk>oGssW_YCbnCwjZ2@ z%rh>9K~N)oNGaSsyN7W#Ft7@xx5m(Q28b%Wfl?93Abfolk8F=a3*od5heE#>Vo61E?!&&H|pm%iPm$u4!5w6 zJy6`iwQI2s0Q8ePNkS*8b7dv;gXhH7TUu<0U0SzuY6w@g!%F7{uh&rB zs(*bQRAUdm^#^>uMs}yDLOVm1_xwp%L`kptji`ez)df?k83WmIo>ei9G&S0*Hx%KI z0iOj_Xk;xc9)w3KKVjB?BnEJL$QIU2HYfoDeCZ#3P+P=klbl&nzt$5z25_s^?P4ay zUyJe)5!8(1R*!Ruj01I-@ozxUO_1U_RyUC<4Ie1xjIeWm4|-osU`cY}R)A}>*L;5Q z5S*>W{Tl!xHeR_0hgySdL^2M;Z0@nrc0zXwqwOJp)2xW5!Xe5;8`rkC=bV|Il?}%t zw@+Zt%FvQE7V!6Jfra@EC=sMCxr1L*G{fNx&n49@HEjF~m^_C!b zrcCn1khSwJd@29xnSXepS~-O1#QN@x8h6?|_|@L0*0-tE=WUK+bzNx;PJ_jqb232_ zjqGMyzmln+rx;7X+|%yz8RP=@fV}2W$`4?^k?r8=mg!M&$lWS7bEOK82$NF)szM9h zqO741cW~_F9Xba3RE!4&8{+7IN&K~n;Fd;ysZO@Xydme$y;8aX>{ZV7W!4BF%DsUW zRjGpuWM$XUIWc!0oWnR^O8JxqfAVLq$bj#%$&p{q&-|>Y|*$Ip)8Ak2jN&mtSGh;e*-tPK#1_Q zyK&V0j7E~>yhtOJZbS)j%N_o#ew-!!E1ucN(hR;@q~71d!GMoFH7Q4bAp2L4Hvw;C z8RF}Vzpfc&yJ7oBNaA)Ch$%8IciulGYgNess8gLtn+%fx4B#R8%b+@7M@CH36BEe{ zZSe!%H@jWg+n{G;jOgy^xl7}U1e#G)EN15mO#bvKQ`}nz{UIWV09D~UU;$o4djjs{ zuQ~NkGk7Y-k5l}V0IGZ+2;+7-`<}0cm}<1{V==x60O}Y?ZA;ej=Y;*kGd2?Wt{baS zU$@=Z37~2lRFG2@Q!6u#?Aa_?yuM!F&?7}CbQH)Pp{134rJSV|=>n8@enkQDqpxF^ zIGo{YU=H90vYFRk&5o8MD<>y;q;f~bz<>re-=+Qms#%B4U1VlnNwydspA=6mV4jl1 zf3a+kD2fbx?A?I}e}+!4Q-QpSK%Bx6P47pjhyTTI@V>y`CRSMH2n>wT?5^0kd#3lo z!@~A?PJAZjy1t-H6<^ce=fV0bP1<=0IPa{N2;RVLm7gANk@Uj~u_14PrKY-z{;(LO z4m;H17ILOLcwc5Iv`f^=E->8&@uQr)HrRIM8zWX^+r>`?cf4-zJMHm=`NB)DGDRw#hTO@Ne}vos1-L1~gv>(a20Z(&Ta8}H z@G)4U+M#nnP%3pw=qg3K0gGktZO)@b#TFWQ#Vwc2`jqMDYbaqEg0H{V}P>l$FK(G9%M@!$u(vlot8i^R2uZt(NU8kT#5 z2sk?BiF#2JKFYIr9wS&1$20kSz2nD)eu+hn9d{S7Ja^0R0biz-^RE>Y?P+5^|U1*6XoIq18G z?a>y%fqbFcqt%Yx%aI9Y3SC`}Ypz0&!@~A_j1p{YY=M_AX~RN7BpPO=u?Bt3WVk6OXEzs*(> zyHN5Qed}hhK9a}Isf2~xS#6kS)uFnDpgV0m<1M7aK4H<`} zr5y*6)J-Xo$;6ewoNSXB=C`&fyHKt$wqL3A5Q;K({8QX|Ahn?fy#X(3=GZx9zEwd zKIgpe_x;zmmdiDZwPs-MYhU}?`xpBH80X(l?+3?a0LJ=C|2`wz<#3k~N5yDyd9z)w zW-w@DjmUOfTeHZlcAL`!PC7+*__De>V220$^4N$8LNw&G=^qX56KL zept(PRD$a}W)cCt2m%iCXDx^GDwg>Fl@SJGffal|^LdZYWt1k}o03L$SUOi$@=3WP z__XaV(&rk&4RIZ;AH^YA(3`qA*qh#9CQmN?2%qiAdjb`4?)H0tG$HZkXw0>s;5B#&|S~|tB+TFogcFF`%ZlcGM_FJfL_jXn~zgZhjY3vxTENL^hpn@ zmmZ#OKe)JvO^Yu|`Yq;wdbAtZl#jn}Gz;3Y+ALP;ChtZg?q{6WYn1L4R$lrKZzXdI z^_La8E=mJCzH$hCzkY9D%J`;NPylinY$Sjdh=#B&@oq`wdhs|PmG=UnaTknoZEq7V z7@AO;<4klLYvl=!_M~m}R;|)8%fO$EN03TpvCx~drU(69!U{7`X3Wob&`?={9}+}p&ETy%{qx~upkcgX zdGT;x75LO{LO)7d<2Q)+@ZXn|SQGNy@)|0Q?5d~buU^3%ow>fmt7!;pSFv04VoF(I z0=hM6mAB2hwd&7u{Yh2>O6aK4fS?JkZv9V+4;mKAz;=WQ-4z2yrJa=JM zmfsVhX8cs&#Tl)1t(Bdbw%f*t+nL7j+uJKLpqlx#IbL_5w|v$U0Ddtb5TmP$qL!%1%5ldy4G5a`G9Fxst<(z?4&TdUJ{Aq{pLzRx8@{nC3i zJvR2UbV6k7=SQepwuC4T{@(28vOw7SzT})gxFYk(bzQva#d!CSBy!$25Ri@lX(bhD zHvFY9E^(K5T|O|sX^un9*_rbOdg7sVv$Cm0or4mXE-y9=np~TkM*{$%#mrh}kRiPp zNwTC0i;FjDHqAqzBbOW~6|*xQT-2lj2$jQ4{r{&U1vpA1WMH;QjGtgXt$)N8?&r zRTsX{eG-_GhiF#&Qhx*V{SE`j&|vVQgJnvzoBg4j|&6aLxWHjHj1~972tBQi$rxoP%^dV_pU=iN+wHW?0TP%v~ zyC#SNJqru$$C4CMj-LC4dq{Bb)Fn^x_!rECR|W>r)!sMjfjCTWTTfIMH7`g7*p2db zle{{_8#lHYIP1V*f2Resx{)&7CeGy6Z;nfz!+Xl0+`1k22qI4&HRSh`kMn=Xo;IDv z({XHs$WH#w`oFS;_pU^mEr@cyF16n^`X4ko?bCLh=(O$B?i9vg)Os=iYeo6M(+Hyg zAclq-E)Hy_57gAr-TlwMaWq2N|rpFpc~@60=wcMMO;fh{7rmjZi3K^5^*k0+2JijP#xF)74mz5`0I7`t6z$VcHNKJ z*ejo#)|W`d_%s2}pj~lfsL)C|zHm#M zN5ERzJUI|Akq*J9fxj@7> z(>OnDFlx}x`9C66Owe`6oE8RxM8ZEp^4T(=yUO>0_9e#ZzoM<|d^CEZC?vf%n<$u) z<>yCnxgV%+>@t(}%}@r%_W_XBBp*Z^$U-bkSp%==Y?dlQr)=lN-5V}C(d~mQ$s|bF zl`Tg4Xo9kjVewZ_YX*H~Z7_`P=Aqo{AxADv{vJ*Tat{=?qy(Pq$Y2l`=7dQhMc|M| zue1XviwZ3r_52?Nf_~Y@^hDlObb+C=(i)LuxVVproXU77&0Cj5seoM(6#h(01BQCC|)R$4XEXNMrk2KpNX2zV=1>-zzQPK#jAZ zRY3gv?EiJ5%|8Fhi6VUG7B~OD5WI7u2kz)T3W-1!flWZ)B@#%_YgjRgKyFB1SdfWI z4!VSnI?mpgEZ?j*9n@;PT0|^VFDI=w9@Q!LN#m8FXV_|LyUTK4@*)>ExOkK>gH5e+ zw=aOoRbxL{|FYU91p!IJu1A$f9X;?dEV4k>^(Rf;rOA>I2d&RXd9#{;LK8MA)gw&tcwF%Qd2 z$I1mI{(HAG1d*Z1os9!rcl>LNDk(QXD5183w}&Kv?lFEZE6cFa^c#-+h|~C;E(`np z!W*wu!pIw+y~r{B!PmKqFX}vDq>a1B#U@J`A`c)B$)z1w5)(C(p6;IC-fT_Iut?+U z%~3`wOjoj@@!b(OUgQz2g}dy2HO!eQ9~$q}PD!=cKpC$&^hmQ_bM!pVEOa{lik*uN zJ3;fI{Ts@%qXo)IUK|hS$eZO=maT#EX_+3@gm4_cKqJWhRayq&5ucs8G?Ku{8b^8C zxQLx9x4xT(R0a@$JQN+H`V`}s30DUV!JlIIp5h&MsV|KNrqlW^5%8vjx96ux<3Hh( zG9KU*0wu7oGV3%d^Mgd)X#?_)XhIIM8Cb~H3qv*5xUJ6a(+g^VD||aI%#>Udm`mp} z_;J9&Qu~?aF!7+U#_%#0{#O^>(pN9-n@{fuk^Wu=m6b~a`uJ?1 zYgn#D0x1(2eGb8#Fo3pOas9*!{}0tG(AY1;zY+QS0si8M|G0lj4V11Eo=#$qw#o?k z0^z;=OLPDYT>Bq2Wlc=bers_@p9*oHB_JYMWR1X^_b9?)t9cl)I20{G&*+rMVb3q0 z@?tSLxqV19yUtfj*7oL5AWk)Yptbsgct3`I%1XhVfq=zX4foUTEuxbRmYjwYyifEY zqcG0uMT~Y#vz>PwHj6QWTREiJCa8xVkM!tJXJ24+cw%p(MrG4>0!(Hm{sN73S$1) z3;R{#gwq}0{66kQ<{dErTpLgK5XTmMnSBxvV726P)nd)`8TOb27?M?4w%PZ{JKgE) zZ(0=%IHrs8>=Ma-NlX#@PGMj@ktRPlhG zP5u57DI(3+o_TMkNs)Q;&xXmyB1O}D1&fN3ndpKXnSdf&>8Rabm4XeSc>Tkzx5e(~ z(8)ahN{j>hXv~rVX-u6j(LJsQv%&ogMYIfjQYS)J-^a~6zhr79Ga$;!Kt^fwqWlDF z`~$ohgAAiF@4~xsTQHs$E+xQI_-yTRP?vxXebFvq)EqOvpJd92lGPO@2rMUF_gyCp2yttzz~--#af zybY&Ov1~pTep((;TJQiKz2iXd<&g@1dDeA63urCFAOF_TkMzS~#eOcF{0F~bm_Gy9 z=F?9(Bn`kH|KH@0O{Gu=t}H9FGF(L|rnh!^ltJPAZQ9g|4dGnZw}^v2>+awZE@xak zqSTx72T9uH&1iD&pd2q`aQ?>bt}ycR5N;8>kwbxM{IoGSG7@>8$w9F zuiPoWzpC-2+Wkam?7L<@7Is{+%dO*499xqTfc3YuU8YXP{51>Uk_j*&*pt!ESxw)H z*DblHmqa#zl^cONGHIzu?O+^g7F!}QzTXtX+&Dt@&M==F%Q-4I$`d-Y5hQW#{x;0) zZAMG;%?aLZV-fFtr^`*=yfMXKs>s-!H)5v+6_9vev{}``#ox zAubuajNHajWKrN3v8p?J3@<&t0D=%bv^%el0Qv*yI)R`0WcyM6-P={O0c}7{C0f_N z%5ULhIMjgf;oUDU2;b6H*>2!(I71c*ozGt++Z!gHyI`MI^Z+vYfh^iHdnA1xnZMZH zzf`sKu8To{u5RgFGlSOL^FRt-zaPC4h_qJK@Y|H%#P>*<=ldlds?c0w$`VXS~{v#YgCZD(_s&bo=(W+ZfgzTpENvB_! zUmB^mD;c-4AN0vu~?O6|YNC$$Lf zt(%ex(yc!t5u8%4IXC(wYwT9Q5B?qG`pc`6#10VsSYIR_uZL=n!r8Gj0Mw-YSCs;1 zSr2Nb<}gMvJ0)9}sAy8X^4eDt(p$NzPtk_na%|7!7vxl?m@0lQ2@d~Z*6%lM4s@E% zrrbrtUY89!Mcm?c&~^gv@@$ z1g`5Q;WHfpnmfYz{nX2-+OtT(a~3KZ*Qgty8p`5vT#7nP(D#T}Ahv7f0&cFp6AK6^ zBMPp5LWYZH2#34JI`9?A$VYx7^iC-N(yPVpV$Zs2W~=NfEh_7JBnrdhGWZGrmo$jV z@v(J}(^oj$MuGucZ1hU5MJ0%44Ce^pF0B`g!Q9IBywDy1YkiRl{IUUVllP`N22BhY zxk|@f{to0H-TFl%NJ32K+%`Qh{T1o)NYk`|)9UH!Y1v0!GZC=Hb<5E%6cN?ine&_) zHr%E|xd6?|vu(QyUi7|Gu@Exbvf#MB&LkDX#YHw4TV*x?zzAkJ4B}K#lQ^!%v-NaT zf_D?BqOAy07gTCaGhqk1FC=W*AnS zmQ+Ui;XK+2)K4fck6eISONzt_A^ZAsxM*B88F6j$o*yGRM&XA+u`4`llP54 zU8ahk`SH~DM}06J^F=u^|MIyJq=-S1;QspB+Gq^BUVJUITD1|TK;>Vsi0nrxfHpyt z{Ei-UY?gL-_=1pc!;p8QKrjiooZ(u+mf1(U77>jUhIN1vX4e@ ztZPQp@d=9g@S-=Hl}0!QaIuuj^}5q8D=@o9@MIK++=W*sD6JXSn>w#?1BRE)ISU;6 zf}!U|uH*~MY?u%fvp)c+**C9z^t=6DhdD4}w(qQQ@4{&~YpJHSgRgsRcV|#k*`?ln zkyk7}yQh3tiiWI=f1*>@j^m*F{e%FgR_H+71H@u;Xce=4j1S34+Yga})}`Ew^l71v zs0Hc0WjSefA-mxCAzrTVJUy@K*@dD=I9S^9lWi2X%lU*f0_eP~gvl7`GW+}Kqo;sT zm&#e7N1E96q)O)x)*gTpo-<$Plx>+)QRxYYas*oizp7GKRrN?|O8ui>rZXz)jk`i- zW^eT}CQjI&ZQRH+IP;A}^a###{`Wr)hMyqa>%1UGsLF3%0`tCqdI^4N(&sG8g|dK( z_}bG|hx09#&0MYjYdGvaM8oSz!~@j7bWLBrMs)#%CcBV(dadbxez4eZZm?O(o=v^! zaDRVZbawZvayW^YGL?P0rVm1!|b02H;W1Dvc_(mE_+f&K$SnY2|B6uz)<)PXm&IAV-1wS)ZR~ zON$9XPu)W;PU82*0CYAK6+x;jFunP9hRfp$aor4rz5QuEEsbC)of$>}y@0~xl8*LG z(Wp_p_X*u|rl!!^J;$>^APp{5DBE=&So}`*q(?NkBL?}}uY8J5vvk9X z8-9=HGP~!}|GhsNbFMBjOZ-T+B>ok2cUy~vVIhX^IkHHC!%-FU-6d3gdZJgKi^svO z{zyp2n>cwvk}Fv^>05_rvbav3KKfr$zY#ll45yGt{>>`=70Ddgv`$vhR2U?uG~oqOu1!brE?}-=cTM}7sVNTv}B1~ z=()L%zOwB5em8TWcb$$~PS_Yx=GZ=0dlvLe2v>!8|uiUVC06ZzOsr0V-Ro z;u@`7jGetI=W{5@#}uw0Q~s0sKG%(snQH5Xbmf} zN75(qFwMTu)`gmM{8bu1-fsobH5CBkx8+>J80eU?ugK06?aCwtcD}1X{0zDSF@Q`n z*3OE7pxUk!=Jw+Dfr>4sT!Z)K+az}1LQ_v@J0Bf0m!y^B`uK2LuA<;w_nVV^R>&-? z6Er$dcKTbEp~u^eoz5k(G#M{1#-k;76O;Z23{bype7z*8CfGGYpa9>^y~k+CM>wLh z0OTy=YqLndgF)Qz0x%-16Qj&x=mPKsNz1wTp&Hjr@U=r&GKs>S?~A7y%hT&jmldwU8&zjJO??G(A-Q`ZI5LI2z>TFsyc zC!f3wv=?hZH1TTc(@6I)m1vG8UfAZIFN^THeNlDE&!bj(TFLA#_K@#q5*4nZS-uo{ zJ=G~&dalkiw(Jm$if(ge_U_@o1N5io2ZOk5_{$`un)7p0PAGmAuMX+I+)Z#*jH~v6 zGd{^+^ZxVTwJDx94A`IG8GV;Hn4QY@AP%_BAW87@oE;F#`~uL3#+5=$_)b7!Cno{DczX7f4YXa;Cnch;u+&Ik|OU8O;%Q6e_lF7R#| zAhs583eJ0x{c^s9ry90&GluU+87$HYtSuHXYt)`5mD5deTm2smlfZW2^j#mzX1JZ; zSJ+;7pVr)e(qS<#Au`S^kTk?kEgvDE+CC~vb}LrwtMg1$ZntGfuMzkRrBws+nE9FsrjFm3_|3LL#%WDCp=$ zXYWdYgKMd^o#-cXk--V?SvhwphW@3So#p+>WV`^R3S;m-is9IhtK@a4!I#Uo|2-4{ zkV_}zeA${!w1TAHbUh-*AR@4HvnkQ6ir;UAiEJ-4(J<+Oda{>3>hhWQdr=WZZGTOS zpiZ;r0z%fjEkJVnM{&1&md%{Y2>Uo$F1eV3+F+m)RLTyxq)noHSTn=q85mhAyfJFO z<%+9gei4BU@yQyTVwGMhC;<2(aB@G?xyfPoIlKV2 zUUKh|cbdt~hKd!|pFh)exo~s8iRN4MbmhqnB^s+Qx!6Z++}Xb}N!|3anju;fq@(I2nx^6F8lXxD&u;P5{}>GPxl5PCAl07cFx4lhYH4g(zB~RZi$369pKvc zejcTS1^btQn=YWlY_kA`tpodYB7=IGcNqTonQiu5RV%Zv#J?d z25qJ6I&6y|UT3*Fr%~WNA=vG|=rt|4cSoy}%OLvS6onw%z#%A5y3L^nT`%}4Xi^3k z3cvqFeTaKMWzhUAP$CW>POGx+t>?**(kSrNNC^icI2q0Cj(g^opZ^$BmR8wD}{_5(i zA5E7_8*OjqgvAD1G()$^g@^)G@Dv9a^mau@&o=f3Min(`MhFfQ#*YA{UxtK9@PHwc zZKZR<#YH2(Bo{S|LB*iSwnae%|gFN<^*of=Kz0((S%1 zBuZT6;8rLRvrnMA5zTiDY{J0F4p&(NY#Sq}66O7f4a(HGzGtXTMha)ka?lNP>X86$ z0-Y$AOM{C!dZUB1Ye&7S&kxyhpFA&gdnseL7p1MPNC60lFWba$i5tvJWMqSKxZm<7 zeiMy7-!|mhr_YgC+Rs`0fg}?in$fxdhI~kSY3W-0lTSYT#V41L14_F8Fc@kx#c^K@5Qp_D#;c#Y?Hfv}%Biad%qJ zSRy0{34j0cq&U~_o1r^vz4C6bp#LXAZb4>AyC<3cR8*ZyER%*TJk0nCgMFS~C4$Mw zcP{azO8xs~2G%{_O?O-HiiwGJwFZQqe!g*MJg|v&t0YYL{P_&rf-Q=Ri>s=qL^u8Q z>MNa)n3(ALReJ~w{|;jVMwL!heAF;Fe@>j;6+m%&FZ`FuVq_Lh@65X3Z2p_xi3ViH z*cg9o49nC2_0=z>$>cwsJwVR2UEF$jj{%AQ^2a!Iv?qP^&|q`SAAQ~k3D5=z-?{I< zgM@poE8ob+U_v3vWc3}V$QN71wUz&#Ky*&9|E_M(+i0OYOfykkY+dz z362k1T5qhAWUS!p6cG&buW}^aPEcyisjT~>3uX3@`gW@%w4YrTS8ajFC6$5POppAx z)RQmNkl{JimL10MH{oVIqghj0nt9_C%;bfeS7&} zEbt(+Wv8_#x5Y6Zwee(XXY$Le{h+JRXc0_ka@M0A^X|q8=B@ZDygol>ATb|3D^xNi z`@$jj%aamaV4>azoW4<&x6lz!RM`EcsA1r>IZqUE3m4Lw_~8WamY24vfxpGv54KAC;q zse;~eim0Ya2a`Yf%qL0uvg6Xsu4WP+UJw}q|E>Hm1{AWDk6Ktp_LfB~v@hMeQc#){wKhH8nGJfdqSFS{_AQ#XLdjCPXI~^RFdUgJ3Oqrfu z`2#4W{UxR}onCY6{Ua38(8A_80Gg4JmB#}UNO%tzo$U=DZ!qs|UmTA=SIvyhzh^J{ zd5yW-u;TUNd$0DPaU_W^fTS-YI9|0}hBP68CHZKQ+m&(GRVXZS^Tfr+ z>t4`9JrR+RdKq1sKdDfr)OR~Vw3^r~HDG<`@MARP)7>NZqsi?q7!@WxCy@>sADwMa?SBPmhsf}Cdpc++1 z@kNL}N1%u5Uy@A0L%Y+Wb*)D!9v=?3w`J`*30&FO#tMxj2~%BWp8=Xi@{c?2`yxA7 zy@#g_+)Fy52W7V--n6H?GyY|yLf!exo5OcE5{{d#FWasghh7L$Q6+v%l`4XW^V{CMVH~g@i;8jT2IASq%dQY-#OR~@H1vlhmH;iVhx;@QSW(@IS zyV%xZCCj9GJ>ABmswDEMPa1}OcxIU{AJOGD*uqZoH`6qsG{9m$@;iAEcK6!s2t$ZC zX`lnPq=2l)X0RRD#%soEGt;P>)UEGKcY5GjT_R?elmEfP2>VdVuG326Xy^*MI=r*) z0E!u@_OzXf@6O63U};upaCaZ;hRLLPPC;VhHtE+kx$el(K!xHPUHUS1cOO6#+>p8e{4@8$0RV--XSO@H8C15V;37udCMPV` z%l0;sem^kgVfClRc@{8Fg=9(8x!uj(W}jX`E?~D) z*9~BRvOqvqESnc!x@PHF-YjL^3c~R)hq5Y%1}wH(y`bu<-@h{zx^3Gi32apk z{5%z{uPnhmtSvPY(Ct~yll)1~IOow829ZLjEs1fzU(Q)wEhW4KF97g!XU^Wgfz2zd z!2&;wwBV}FLv&j_JG--|wcCm!-|HKjYs&FtE;IxBK-ZFE`J;RmVUHO-SHS_ee=&#exuo6+ zIigv!7CNtOwmJaAPxMVYDvADda!Ndf4{`y(*PpiIaLG4|*8y-?3Eox>`dqlnb_q9| z<8g+Q_@=sPys5?Ml1q8fIyyx4>OBKJeHWS$4>)PyxT{D~>TkABk5^Syt=DKZEijj_=QZjwoO0g2x&n!PYVKxu+qvqfh&_#zO+ksy z$=LlH0_qPJ8NPAKd#_!)pP|0V_~|SR%F(zP(ML_D_y|v_x#8SqrfbF!WQ7Xk>JKoz0@=c)-krcdkRwrSh?x5NP(5-kYQz z>owdpKZf7Q%o0fxY7+(7b3*8!fNk5#M{00NVxl`y#d7CUYa7Y4uuNPqJ zr`)lS`ujLB@a}#joO`6wvDg zB?9Wd`x>jeWq9cwvM~x#Gm$z|Q@Z{D-g#347%!%I&QX37p8PD|!T>Rg2zb?qj+$31 zR9#c^CE_s(N4r#IuMT$Rz>7|b1ncNHX(mSN;E1;@0ixDM1}J7+$`UWEPo9IuLj5Qx zz6G-*RQw1)@jZc5J%C8?jEOXF4YP{S_GQo2CFpwChfzoxw#Py&a|yehCVEUT!yBn% zvR`ZsiyUa{DT!QA+~jFtX@=ntWClB)clh2u)5A40L3*$FMf(x;zFAlE$Wx{K2m(vm zaiw$%dNpI&V<%RB7zG2L`do}gg;@pbp7RbSLBJCnb8z{OALb#U;gcI<>?V|ErrS}m zw4Hj}0obkY%3cUgz|<2lVsL}<@7V>1gy0;6f^1S5dwHKt6^8Udub2^+f1!>U0oZm6 zQGZJO&*Kd*{@J08Jo+^`&-Y|=>1TH)0WhC>8?52r^80Tt14uP3i18uc>Dxk38FZL0hV2OXx5V50<~m#KT;;uW znz(JcV_?`z2Y?4(|9sgP^B!Qs$YL$ z&8DQWI6|s`(+hhSN}u{x&pu4pRI8wGp<71l&aKj!fx(zbf{w7ro}c;Aah$_vns!Xr z>*s7Qybt>lI>9vF5bDZ)g+>=t?~79ybTEm`WO_VuiH20p_WQGJvhnzB8@djq#di9} z>zRX^Jzx?TCZEGb#u3YHfeG^QbC6+Mh$Y_*EKs2Oa@w1^9o>we(fEyekI z+!2Tw7!YayF$>rA$?N-DdOV@y$2ComRcD#07rOXIypri-;mrJn*j*BZFxDLbEn8ro zh1J;p#geT`$Kn*&Pq>VhSl=+2uX`k9WDvz9NjNiZ`ISE$(&^B6RnFNci&M5L20Y6p zF)_{w(eIw^b5|o*Ou|^M7iYCpU6Q&<@xY9}DgdVb)0G(VnH@qtN0&7mUL?fF1?!*F zKW{s0{4P}#BPgq)tn3Hr(|`RKP)dYwcC|Epme!5Ter=4`|2f#yha2 z9_#IpnmhLTpm1#NH1QE`({WMViFs|&YMgn$mG_=y)N(!T;|Nz1>xmw5l7Gs4g}({` zq(iu`*ptzL>x4|Wp*v*&mlIwx*e=iq6ku5E)DMFQM9mcJ%&QeUMMUrioZW$%QX?$M0ewW5x zqBV`<;={+mlW9krUU(?wG5U!`DN1i*H7z)J^*A6T3+%6hi%*|LD{hReJjcp9ibJ;9 zKSr5)?RL}^VY^dWF;ggN{DPkOHG(EFo1`&HNMz^XF9{-0{j%}uP1-A>aXx*xbJbp+GU)q9G8+tocbri*i9!dH|2J?HAEAW$ z>$eO*4@xZ|1vr$TUvFIDj1#AM65Qx%6e%PI*s_(aq1y~B(&Q@seg+u-Mbn$`G>qgSh z5JKA{@R6}GG8;ERy&GtZ@Ye($VXERK09G zAheXk{BBdqrt_k*3S=euhBwPmEsXIpL6O|3@Duc;ayba)Kr`#r4^M_TTs19I2Jb1V zmgU}5-u-B0jG1IfJU_gaAKs_=+b?m0e^Gyk1V*8o}uN)!VM9Qf*0zky5h zmIph=Zm5CfTPpD4{nJ$d_@xx*r(6M}0h&sSdAC4lG(D11ml{?wlDO@#I9% zcPXAUcCrRUHq)0OSel=7MDaOgKV3c5x4}!x$$OrxQ`D8@kYc6Gr=raJ%1z_*Y{|6J za9P>=G>KQ+1zJTI7Ob+e13@ZQgv@D0%tJ;-k0YR-8(gKsrqj3lv|2;4AcYFJB-D31~gIgNh&mA?ckb8R*nG2Mo zgglmEDL$t~Cg7EKJkcyq%@)?-h#Dn6x2e|b9YsoVz;INQ}G3L*a zEn0YRe0a*opazW+_yQgE4Uv_=M7ZvNzjw$K3KuY+SWR7BMPdJ5L+?}j%x8jvLpy#p z6fuggUCMS{@i(rUSjKliwj_*PD=1I*b8F+-&)3ZTNQb0>*}{^*aX+tnW4SY9f0p&k zJA@LG4@CRfuS<)9lA_skeg!2LC<1{=))D-185u4(#KdyfKAU5o{j%vR%o>ISPO9;2 zxmqz|m*H}7`xS!Ly~KX zD`7n3?HeUr0TNxaW)@(_WygxS zz1YM!N-?fH;9@+p=8xxYR8~s5n^?p+&(EY9Ev*Z;~Qq1 z4yn}{tNs%x$&mP!R1ANOPjda&_@qr$^U07Me4QWa!I=na!*pvxqr=1W*ek&jO1r>N z(f&<>8soZ|zKt(2x?Xt(e-5nyJHBOpfCyFdTfs%pdJ3P>@pxqvJvJ_miIh-XX0CQG z%50=q9X%vCBAy`XlFXG6jljVYg^!)__vu6#xj>K<MvXlnFHP&ER>m280s;k+PoIoa zS<3e2%70uChYxEe9%$w0??*n1~KQOG`!KSLL za$>;5R9XIyeK?AssyW=F$fo6jUy^}Xu~(vA#1c|<3C=KlpJROqiQMl`a0tO^ zlNs@qm5zPXX*j)9bgXH>P*FN=#lE6WKiZ-F&P`1?ir8ik;Db1dg3lXB_5Aa*%$5Q0 z%!m&~3C|tV1hVRetqC8?w=2hIXMK%)o8nTNiH#klBaRewE z(~SKwGIA!s1ezE$PS0uuVzijZqL}q=e_qk#$S3ln|FtVFqsBM`iGY|8w$X>Hn7Se?K69zDAI8L;v+dxHan= zUnUbgVv}@%Y(f|zj|X=tjr_!jGCu;RR$?ef(!(P}B;^}m)^E21;;%Cc4-duOKmfyR z!5+W;%a`YTG>X_bU0q$TtmVRpJ6Hg-3UJYwcr~RDV5L z)%WP>+L9hgatV2412f^r$4{h{u;v7iBaWY}$*!Qm@Wb&6>1bRGezx35twOAIB~SsSKEyuJ>Lf>UwAu z;n=+NKgrelGSH`1sU;!)LB#=)>MDK_(HUOPoco?Ft~G@lU!9;}u?yR!y&No}Z&5#( zEE_7UQTJAW>5nDv2PEiuKmuBh?u^J-nqBS|8RBHb)Ly1+B0rbBSd=rSkirndqG(s# z3QEMZUzO~nQC7WAu+)soF;6=DY3w%jQ$oB-;~&P#;Sk`7XsPamOtb< z*h>HlKy?9;m3x4Unxb|yR@suMcDd??YN zGenp?B+s4ekv=Jj9KmcNw%r%Z^jx`H0f!b>*PXlRk!Ha{&L0f%kGqL*x7XGtboA6p z$StoR5V{y_%oqn{kWfqA91whSZ32rxo;maISfb?`&(8 z5d|(Zi`UTOhVFxS-UCnckN1HJ8CB7JyfI`ROG?Gur66B%5TTE^%6jul78iv14o~8i zz?gBBlZzAly4BcuzT5NFrG@JkG#=?kS6Ard_#Wj~+v~DR0-p(QPN&TrJxrI%E%Xk? z(}aBU@-uU?Aa!jmCvkTtWI`XkE>U~`TF76kf&S^;$pUoi5g9OPX(>{htbp}+2 zLSxc)E*HT@?sS{pPG(>@wI06A?@<7M^H)WnrcFoWfv<059MF;UG#*DVCbP~6VMcsOvm1yu#idWRTs`+dMNi|DSfRCMt=*4hp5p8?)YqxAFi3_{_ zc)U%Cuvphhtd)(g6PC^l<=+w$Ar^HCiqO5I9-E4Ykk_hF&nv0Y<#qCin(DdQ9dL~- za7d+MaZ9F~Lp+E@)MA$lW-OC*gYV-SH#b+m2~KDhY~fEire$6%cp0I4_*q6i$t1WS zRv~wxNJ#=T_GC|5mhh&q3NlX;v?g=Bhuv!43;7VfOwT0nqns-v-GMlgw z^vrJ`9B%#SF9w;~*ib1ufpJ&94=E%cPsHwI&%NY!S(tse)9PcBC>Ffzp&UO2Nm5iy7>o^z1C$;>bgfEe zocLk`UvS!mBAIKZMw8M2BgXj}t$6_`=??@Jea~tA&V~dM6yzU*%k^817eaYeoj9vi9a49MKqq|;r&W|e=Woxz+<;Z`?-(a$^X%gss7FA8Bn7qswn_n#xM_*<+r79 zwnf!G#yfAc9#hSgmB~VOr(A`y_exe7B!%alqT8}j`E*XNbs7sX@8_0=cx_{azkI0G zPZKi~R8IqiR`2{cO^AN`VbTTSM05N~mC}kSM^QJh-p5I9yL`r4lUcQMd{D3`T`9KE zyqJ0VL)Tk}vDsZB?tG=NK*67ZvRnp4N+ZfQ?Bly;NiOBlQBY3C2n`hsN$B<*_C7xk zMnER$gB5)qJ{-6hTJ(c9dGNA7HLUh(y3Ne*J-Uh-@LrHV~zikG&$OV-ijagvG4L2Bx*qX13?a%tyK1`v_94ROAnSdmcYu zVj{HerfB6B4~%2h;E2HY?pGsnJGH_jt(FUoya9eP^7q!%CNf3eZ3|52Mq~6Tm8e;rbQn@Z^8_gH_pjxKZAbbd{B1mW%@Y7Qx_(_e zX*z299MRRg#F568D*-nKu=ng z6(CRU{eP@|by(Eh+U~1@0tSMBN=lc2(v2c8G|~+UN|&UxbjbkHjSQXA(t>mf2uKdy zAq_*FHK^$O?tQ*%@9&&{xZt{GnBT1RtS9d0x$lKbG^Q|%`e>6Zsf&>!J%Sts`E}BG z$wLA+%dJICQi>j1uzri70(OXXj}za7=(3sDguydwR-onh)5tL69?ipQjzyl?UwU)Y zW6_M5q)lueT|Q70AR3L`NKLy+RsF!myeV|%5zt;4w#C4A4Qscy!WT+>Xv=Dcc zEUcZJOlnL_edbCFYV`2%@C0YYaKX#`DO`U2d*nx2oSr3+cg;j|Jti_btNV>gREzJn z)@hO~kG77$#aeV9XU`5s#4D?h_^dwFeyejF;$ZJhW7DhUlJUb9o!B~m+G1n|Ys{ud zzuISoEVlMmCV|th#6(xlpYrFS7Ig=?2?fp6rJvrz%}4aFx}Im*5n&T8i}7fX8-7?s zScHLStYg0&oFfFhR* zs>qAD*j%*X;=!edENnJHP;ffdPEBao!iN)OR;sak4h& z9|`u;eB=pRtIG5`H^raUpj&F&ozqEiY0 zqGoGFW_DILz$D-7>ofi?)Z3 zTc7vHqT1Akj2Gn(`T4nCWswJY36AIF=0#^_%Dr%A@`6PfGfjW`9ZeohY}`Eak4-=P zqth|(vwTQw2;t~XL05d$aXbnZRK%{o_tyE+oW%^c6g0wkjp*griq?7NG~V#g+l$vv zt}$djoV@ZoP*J*x6uo3*%AQM8<3P24yi-3qacHz=8MoJOC+AKcpU7|Z$bxk$T*QJ^ zXTloDa{jczwd=s=c`$m3xQXR=Mu{C@JCF9=bB7W5C2dW9ZVnFCx3z8J9U8qRJhm7< z+0_N*y6F}idKs6H4gdPqpmt(se-={`;X{Q`vaf#YdOzPT_ zu%49?oNCpdl3s9h_~ghNB?P<(@&C=%ws%Y?Oj)?n)Ho2P|nxHnlj0;DFQD|Qb|ie zYAOEFJ9qL`+&bCym0Ja%SU?kr`+W|tAdhNNK!j=nduZwi>OBuct;{L{m(cLV`#lnV z&jz->*+To>mBmjwluHJ>Rzaa?en{L11fZi;v?vw0z#1_;Z+$lEcPS zIW1m5LhpCOrxx2_lqc51!$Td0@5MJnNmqzi+c6Gp-KNSRnAMnWlH~fm*`KB<0K8VT z#vbtDo;ZV3oFJ8Loig=BlS+OADyAFThl|#xKnM@xFVd^$`**eo&m_?^78a&9MaDPb z3ka@PlIh*WzmDze7bpq_Vcn^e6}rR)J%1S|g5o#vv1A)R9SY>q{rU$|;3Pc>Dm{1D z6Qs9*p|mWe&NAR;F4o_ZB6$((0;XBH7OI6nVi&>@E=036)o8VRDY2{yzLk`e3P*#S z?r*HmjjgXgnU0N4VD}QNdr_onELx)0uaK7?D6;G)zHFSW2NcS)+LTMn%FK6n_nco! zr_mfs$wUfwgt9G44zp4sLi){x5!GmW*;6FAH*Eqqac~Gh{^Wz`ZY2yzO>UjvipY;a z`(S3472>?4qEDIJ*Ox96_q>@H!Z-NM4ao1G+r@X9GtWX#r-DKiz86&# z>iC(*F|TjT%{8s8tqJ?T(yDcNslbX8$;iai*(~GgnUyY1Sw!X>A+&ufGA}Q$V_=}P z3M+4kMK!oZoB;bdEh8!_M2jczU2#Fdb3J|is>U_@YAp`!8k5%81;#Pv`I*Lm`AzQ# zT51Armw4 zyOE+(fDA+*$V+-_1iQqNb1p^R**!Oo z+6U-#dmLxI_YYJMO(hM5^{%hOW0#i+wEIU#bB1twWHbo!3ot&qIPP^V%(I#I(n#Us zbJBrZZ4~Zr&$Q~vEGN0&$5pit%>&#V*V{a6<`0$E_y3l_zL61S!6uySzHk=Z&eEHI ziEd!qdCZNF3Fo>0_?KT7f*t{{J0_EQm=|oYnt<&}&x9_lQ3}1|?p1V(p!htu$+HN*$Q8NF$wCYSMRod&8cb zygZSL{C*=5R8Cn#7nd&V6QTabaOa_6=H_PVnk6Yec2*`?ANNHBV)*Ff#3TQ;p58F8 zBjT&FtvVH*WiaBYwk$13heHBg_9qV$8bqMom?Zo$+2W0@YR&5u$?~LR$$e!p+2$7T z2UeP6?q@ALA#B$3wCo?)VNp=r}WZc_+rC5@8APX<% z`v-QP^BfrsyQ*zA2|mQ#6A_j*>cdvg4kwHaOfxKwNmGr~EqcCG;+?5r91*JRa$-oK zj2i!cU)!^Mk_ve=H{MRPkUmT%cZXrQr4gKOhs8SD+u8{l40{)5(=<6%`IruI4GKqH z`LK9-_Gqctj^Uh;r{dB*Fz#_GP7MDyI8c8LR)h?HqD+|Lhy2GV5bo02<5ek>u%wR{ zmi0=@YLE5s3;jC9=+Yd>brLdC+|&E|Sgf2Z$q3;1bB=yD!&+Y?OIAjp!mi}z+>Z^P zoo!*4btexrVdbD7G$&aEC%o$LxH`YFC|yQq0f(XD5YKAodR|b+hH(FA%Vi-ci9Y*K ztb#8|i+$r><$1$E-Y-DU%*f(ZJXEYXEi+6aHoAAB=5jpd>TlokglYmqO@!U=`}`BT zYrw%N00)Ov$?udp#_|W8cCY^5!8?D?%D#}e6#xs}wB0`Wu&sAIC$&9SJg!Eq>oq}h z7y9}PHas(K%%D%xIE40tnGd218X&@4B7Q+s6h?j`>@hccdUU16P#{;XT+!3FWAdCU z@eTBE)X8xA=1zeEAy_und;a`+(tAP@l2|77k(yFEine*nn!;ykv^tcy+}GdLIEA!` zlc`zux(g``1Lr17OT*dwYH|Ov7>R%jbELAeSzmuRZc$a$%-poJ2;1Pt6Lb30<%u>8 ztwDyObO}lp#RYAYw7`60sV&33`c=l*Xx99}WOA8u5lv}pNp5y2ZYm-I^mCJalw=2N zR%*S|`@^+N8z)((WI`Wx&)mz=kPm_JL2I4*1k43jZxVV9dSRa%)W1FIm#KjXiY8h~ zN=inVV^0Du+#BV61g}`oz|KvFVb*;`!QXYvUv7>d!3Zg$$@CLriEmSNt*$4>C6K}+ zwo3`&tm|oQ%{(}o4e#q2TeiC@|Gu9jwmZ!AWE!$u)O~Nd2Q#;}#(6owvbeOu zC?W#y%Bw;7SdY(7K&7@k+$AX!tKXeaVZSc+)Pj|R!#Kgj%t6Y5AO53k&8rp>>opLw zi$+8*CryijOYPnnPmT?g8tpH2_PK*CeY0^#Y#hStlfdB2%Toh)`pq_j+ThjyaCVH2WH;B>N`I=sB9irMw#Al?HWVD_(HqX-+F}Dw zaOw7s{9q#F7804NCrcT4`2QscI(NNy#rhEg$q26p-n?>dWD{=KVCzdPwo(gKT?+9O zcWBxjum~ACx?|CYVr^erujne!;dQo0GNmvUhj!`@8tbXl_1NWWM+?6HVr&;;TcXx! zKtXDbXby7a2n`J#Pp;{T?M#!cEpZt8nx$w(?n<%R5F;Y77Bov--eVHwkW0F^yemQIa&SOBa#!GgPT1~nxq;(}xb|4v>6iuuLav?4 z2q595i$1^GiVp@*RyujPg&jSh#3cC>G>L6d`uT~?BGcs|*Ci^VGo#j|RG1kfr8(+k z3sfF3X;)dm4!=?gc30Zf`k=7Nuyb^bj*fm2^~NQ=I|0?0U0qMc95>D9q=|*8wCB={Sp{q22gUYanW=so%0^_?SjX=nsmZygZK<=2P$_iiFeVG(I7^}SW7CTS5$G?FE7<+ym&?x%C>bN zcu3R%_1WNSLWf!o<=F2mg^Q&h%W5KP9-p8@!AEAdWIAid6Sn- zbU{Tc8J}$?ckw#b&g;G@>+$>DbJfBF<%5wJp6>22Z{I-v6)hDk->N_uqE!suZ|j-L zSr_6T!N1nJ{(d(WPLw#*k>Yza6S#)G*b=KWFKkVrLxp|*RY98!iH=HgrVMNdZ}{O0 zeiZ&@6m0+Ze%otJn%_y)xhMR?Q#`Y{cm|64oCsU6?yFtZ9Q zTUFRl2@vag!o<*v5GJ~PGiewh#=~Klv~=u7Ej?mfSTwmf{#1Nii#UO+4?&Vo1{)+} zZ}VTEp(7$Dj#+)vB7({auRdXO z{#^NALXypp5ep-C==@i7Lv6f-zGm?k%^a!>rW#lb%2+86_pjS7zM3k!IGzSsKwXCTbXI zVJp^Z^bwLu4Up-$WYDz`qDKJsNypGoIi{2<*)Ff^i6pyU2}i<#k$E>bAr1hNEFjAq zaV%r7mLG9FT88s)aR?mUb73)y*5X(nKW4--=GM8DE{7@;5D=gwM3MiYB@>f)9cUk_ zce1r)4pxD)Vw%7p6aCKD);*JPDjr_OGq^sd(<*tJ$2ezKOZ)MU1EKNJY`&dK;@b?~ zYw6M;`nl~wt6U*aXNPUies43~QE1B5fj#Sm&$_M!JXmbPqgsrzS)n*j6d$aiY}Z&9 z(;h`P5j_FugBm~|zU5(R8}3Q|k%aqNe2wQQ`FCgJ_i@<<__?fWmD2#S)z$KcdwLu8 zNdL)zE-qniCsR!H?19QsB^i5GOKixroH&X^#6kv9AXV2IY2+1D2whZ<=;N}~G&HO6 z(-VG*3RNvN*6i%;GPa-`fZC+UM*BA|h$@8;iQpJDB$w45G@6~>Bo0kz5qlgGJU!PM zD#gOX(ib^Fx3F9z%!vUtSFo}{EbcAfqK{EEZD6=5QE>OvTXzk{4=O*ku(q((-Of+b zpn9p5BV8U6=p;?iXHeQvnG5|0it%mL29evVqN4Ox%y?K28Yu%iw%;?@_M%Cfv+GYu z(*EwW={`A&l{tb&MA|rs8Kj>7`wAvw$VAPtxJJwqHj=gu8l8gotmX4#1#aw0GR8k- zicmINMszLvSy<2eF8*HjQTdBO>K4T+2@eAZHuk1{I0omc#{Ial%X~vkdt}Wdg&`go z&@kl^HMUx@l*DHayW4)zSd&tRR#Q7Eu;bPhsZGpsc&04KQ_Mz>R*dXqn1xfr= zu|7;PPI15QzJK`EXe0pi&d+;2AKAhCpZd-4h~g;*TIAm+!*=9aUr@^@^loqxiCCndbai!gB)U4^sM|lOT$ki0 zAxWkD`UnH$88)|;g?4T$?t+0Hm}H#7eVmTv!Th)!o1?+n6I0gu(9i*jOu7-(;S|oIPP>hX3Vi3=agN}eZ1$m?eCdz zKU}gr*w5w_-NhtRtc!**v28IW_O;JCmg#9Y5vI!>tg*Z6-_qOV_2?3zs}Oo9W0u}} z10DweF4?edRNuZ35*neu)n&M{v0tc%Z(7&06;3PPVY4nU0LJjo%MrJmXN~f?U^O2! zi0K-`!Tp(AeCTvPI?8Y+nU;A&DQ$IIEmKpH($D#6$7c;?0i#SBaZ@!N^@!ucsvkpww56oj=MCs)rZ}e5FT?knN6OYO<3A=1W$V`B3o=zV{MtEg z)2N4SjGHIg-jyCGH56dF93R4K5e-7w^z?f6_N_Zf?;TGm*~hmL{Sxx`5sh@?2($Th3c;^|LjIP$ z&e(*`?d9CO2tM0e=%~)1kJbxMuRZC=CJEcsicFp>AM4!FZU z2Ux*eSu%_5OA3cc7I_Lmdld4lF<0v=g57c`l4j~HdeO%R=0ue{Dv{UosHycMTDPr- zW~`2@cdBE}m)5*LHO{7%*OZdqyU(zMZwHrrJwlUJ_ zson03)G9+X?4fZsy|d{};+}gyhd~fz-}g}fMAJ?Hm@T0}ZS%Ff`&(!=A=UE-k+!L(Ue7lj_2yGJY zdGDzV0l!7kNcGprMbv%8 z2QoL8wuN`NQ__RxXr{g_0we7~-;IABQ(k_TMUk%DUi$3oOps!~)&O#bzV3+v&N|Fq z29NEYG)$?Ju^VNnIr%E!$o6IVLYpWlfxIT31JlOZ9(>jS^2KsLC-1(5XVOdRk)0@T zm(RK}yz1b+`DAg8p5?yq?jULxjNTk%Z?$ zeD|%TZGLoU&8&v=o5Pm3f)**C?GI-qwH`e`Wwfthe(7IsJt#}8timH=O=nbkmPIiZF1?UJcPk3a^O^}+B}}0GNLrWmssAi<4`Y%x%{${squ^-{>(l^SDxRP9XTI!I1i?~{%h1c1wfYMZ{sI2XfgSu^B8km zMEuS3SYImX>3ycCl?68%S6-^EEHg*1h$FTv&r#J{I$_^Aq~b&zHM)2>GU?jQ9ejf# z=Kx6;2X^x?Cp#pEhEpyYEZwT|4_Fa;BZ$kTvOQLCZ2=ysdraf-<; z^#cG}rcCE6&|w$M>l)B8B?z$0ZmyE~19*A(;Ak{%Xmk`U5T;%S^ttEuXBzaeZ!;_o zmYF*zUW%Yd?u`*rTB42@)lN+9epUh4{X`>WF~-3X`3JHfU%i(iNGfH#h3fYJhr!w! zWUb`5M1~j`(3rx4O%ALFT#KD^Z%2JbVwvNap}%8N!7U3^2J%Z-H6&I@NJs=1Ktcuo z0tt~3+RRHaoR^2cBHHgP3LLm&EaZ0svwZ6+;Fh-+3b}()sY-16g_(Jb=JI{k@CFfX zDinw~=>g8$%hTH*fSQ$2g)b|ps8fi$9*WiV%=U+KaV?rqDPUwOh&S-j+ucY3eY6{b z`K#7yULxEd`yIxUQ#Zs*sjRB;X{x-fXr_qilUBG%4p)BJXy(r1S}i z>jJGwvsL)7{e;}%%MgSOlv@ag9;)ttg2rDXL*_zi*bY6|`aK1(83^E50WuW2~#pD;0 zZz(?tW0#3cZiI5X1bS|p9gcDv@dM<)aF1u6>~aZeNNfNli{=U=nkj2-j5VE;X%^G( zQu_|%tnWm1r)JRdYzJ__4&?sJ4xs#JaR!Y4RgW8k?5xElC|Y6oes@QdWz84!KAtj& zg*At-%*)V;#>Vhj4cH~cY_{d2QUf+L=$aniTCXvfC@@#ZF=5v=Dyd-G4iBdc?X-p~ zaIO$K0+43}bM*{!n&8KJP3R5_kG5wi!y|cVd0L^vNU(caE|w?lpwnw2ZY>{}w;e3s z>rVc18c1jM8kA0qw-SW#~<>4Wqm6Mwmff?SoaYJy5Dj$YC z%}Q1~%!~6*3huD>SnmVl(_W(CVJF#SLgA}RP@$+|>Wh@r!syT&UFIEii-9lSVUzaQ z8TS>)LK*XyMdqWWWnvZuo9=hc%%`i`d<-X*gv)pi(QjNH#_H1h$ptQSz zZ99|ns|o0(1?MAh?*Dc|=)6KiMzJITBoY!gPpC`I*_O&e#dOgvQ*crXBQWlz2*8>| zcR!X?>sG&4+l$N-vyNF^<;%V_w(zkOpCmU;xlZ=U_$OC;`)F}+^9Y{Lmc7xI$=Kt}x;U~Y(OYIFEhTO-6X>6+16y1y z+oibMWk4;TYbTq)ZAZ;d zx?VzsmT4z{Ib1qD_n{>Edd7~N0Cc@LC)ezxpRKBp8 zrc_g=@!GofFb3w2$y&-ENoy9RHl>Ba7k*;0eJymccZ#1Z3T@wwu zJ-&7969k5P8ImlhnCY1eUn92tLa!6~;1X5?`OK}6O1lBR;=%H9ecTzV*jvvtsRljA z+fjsNrDJDPg^MaGmR^ttf%b%Q%2TmJm8itf8cRK9HbeAYBW$9*%}r(;Trr~j`%D3% zM)1|?8g!`jv!AGv2qot`b-ArqdxB&n9Aj8DDh#oL1E=K+GlfRBP#zs}HYheB+f32O zVff;e5Te8pZ0@j`K?z}w!z+*oUEGER?|P5Vw^6QlY6(f!=j@Tpjm||EQeQoA~@;W9+4|8){;V^QjaRC!v)%WufBNjMY!DTk8dQB?!*S ztms_w)AgJ}#H}7#3I4wf6jF^kT}h5!WWH#_p8XSGh(7}uTD@!2ZT{Z_7Y?CeHyRW% zEl>>X?md<_;cN17PCqJDm1%BKa&97I_30*_ZoCum=!M_4b4wK`5Vp5 zlxUG}FU*NT_McznQ_^@JpgXeqS}`+fdRjiwPsCU5bg7aucAGVGT@foJg_jJQ36g7P z0^Hwi({DUeFi^OwDXlhd@x4^pEyS$wE9=_{17pX*9oQ6EAd0n<<&sFM znnoOl*CS7|?7m&hz>6u#MEY7?CGU;1PrKq%rZv@X^#tw@2G$(sl#pY{-2g?YvR_Uy zy$-p4XZ%Tt_A0!5yg1i?&E1`}xokK)aCmt*Gk(+N$f#ONo4#GbVTr0_Xk6AULj8qi z(Xf`6N*7yFGCeNekILy0y0wd;n*OG)2Dth`p^4Xd=l<^aw1`j^PdGiMTV*9#;il_) znvj}929lc7_QY$}_2@t!t+V|$(|s)G4`hG~gZO$#wK|9uc;(Qq-8?5h;6a5I38DUc zn6ZGi(ESuLgo~VbUUVdrwu)?|w6yeE^@Qj=`%?Mt=RRW|@w$**N3G0QCLiT-QqL|n z@t!t~@uL#+5ir73JelbWExnWs3;t|dhY;-Ph$wv3ANJ%|HtAMCHsQ3#Ss~{2m3wV3 z@zwfUj54$!+y8z0VeO&o2Y2%M>&xcjPOkKwE+*zS>?s%AVWbx>$1HnQfzazmtZ@JR zMVt^B6-)wH+oev*ieRA(KR=6@Gbm1DxT2QqNL2}%cl#w1(H8QB|g{VHQW#w7Z zopI~e))eL`WiYbEIMyX;#*v{9^MRr>#RLi#3b|qmInF$E5qXPK_3pEUbjE8!h}L;4 zJ;NSGJA@UKu5<`X3;NyADC-+u$aam@OPQaXuvyy(!S%KcQ?6i=x`*QitW>I2uU=9@I_AGQq8ibC>@yY=R*$jX zsuHoZ9B`CgO5+_2nD#&>P;SkTq+B(Nv^N1AC5Nc^aO#j z*Y#v)U0buZQLwJc<+!bL`M7m$Ef1Hdm*Fj^>_&I;==9QY^d3J)J!|QLLc`JFl`ED^ z*d$mA1jgDD5)u&^t&0H7i-}ywj3poladzJSE=%TUOEyvEa3Hr95)e{ahHFHT0f)O< zbc#17gYI2wY!J`gevN5FZLUV60NusjZH461jE~fe_Kkd7vvI2N^!t*IJ2vF9KFIV^ zxKcYm^ez@kt{*&0hyzh1PS`NouDDRmkz=|yO*+sN%Vzv>lsAh)OT82ZXbv? zFja&wM^y<%Cr#ATx2X6VuH$B)z&^c3h169{aK;^(l7&fN1#@Cq&duuwnh9N_iZ8>E z@NcX_vptgabT5_Gg3W3u=H)K%(_QXuk*G_-@+~bhEeJJBiA#*Nk*XqO>+KpI_NP~} zd|MpEV3?1o+OKD&JC<2UCc-61$DpC9$sBF{nkBhr<8-sIDAVd`UC7=rnh5iz2*3YU zzHyTAdqZ)R4to_9uT2=0Z2T_8#Sp5oPZf-kRg0x1O6v3Y*D#=Yiq|OIiKXa@)zt%` zdb5GvsTT`}q7AbHPb{34?NyWCbar(uWHK4zc(NR18|tN*q_xKzU;%U{FG+NM&ZO6d zFyqeh!v434%ZkA`Z$Hd@dxb>&zJElsW`6;|+=@;b67p~5Om7LXYVCMKHxm&>fl{Hd zn^!Lp#-<(B)-r(GW=5~PWlnveAw$s?0u8dRMO)yjPxZ}G7}bvS6&jKp$k^BPno~W< z-doWM*?s^Uyp6KJr(P{<4jDb7JANrdnD6}Z{sm__=j$w86vO;!<-2X!Jz*`dz%*YX zMGf}ntc5)fYOz?|^`(+W*@bdaXyX%D?_%v{oBv@lCO?|9{7&6xWa2ZvmD>M<#hfv! zf=<7H&Xc#uf>o02i#Qr4dU}b0%Yx0H=-vGScBe}=kU+xXE5~M+EyprZj^Ria?}+~4N~l*}ZmLnX({Ela@@#+eWwR09+ov{!P4ultEx0kvl8#yhjV?(TyTBE%InrSNYg zIFk0w6SJwZ0IFoY7!^+lj|srOW>{|4H8xfvET8&L(4m8F)c4=x(@TOrhf2;5Qx`-M6X6uci z_4K-v>+<&E8OOT;ho>_a_P?*>|2bYW_?Y9NmuX7t2+(!VPJ3Q z1_$RB78(lUW9ZsOx<7|_5<>L#Z=0pu&i|{4UPBf4p@PVGnu~gclxJ^n*{AiDVL_Um zR5EN_hm0uNJJ07zYs|6-eT5Jr-_y1;%@dW~ByyF?Vp98P>9e5IpW7eaL2oYTfpIW@ zSz0O-dMK{m514`2nv28S+G=WOepWgDyO{Y;o7zW=`&LIQOCMtemTvi*xYyI=4wh{$ z+oaM)w#R_lX}JncQkGkSu$sdM=^iUh^$DA)Sx&1Bk%O9P|6&lQI!JPOhgO7Qd#ggX z1^k%QOIvcDwnR62p{BR_d)t6~YK~3(jaC3%4t}KQg|!(@M^qqBW&t}H|rE7chKSRBMehVKM z7e7Bh+?=%^AJFagr0DoWFBYoL$Hm2KeS zQB3C!+XhlBM4!t$#O84&={BFrie@S>mz%JwjLFw1rc!h73Wc?x6Erk>n}|)35&#^2?P~8G zkAc-QH#V8AD;qqAnvt>Yn)E%;dNe|} z&gTX!yFs0#2r!jUk2hqXZ`aLAaZx5;Ojryg#{65Hb+U08&4Zj|MISlMF%GH}r*98Z zP;<)74{~rsd~fmN#32;7&w8P-PaaeMOwnYVegXqOlSUYJ%y~@7z`2Q`Y!>is8u!aK zJ*QDg40gN$6K8eafuY|p3k&T2szPpm$H~e2aM`-vm5#Ua{e!RW)P?l1(_NIexQXwz zu#}~P>qu@2F#LCq?B}L7+cY#Z#2Zo#+=f9tON%#6?uptgK@9q%pI+a(gIU*OU1Kni zXx_xwUyc@qX};3pRUks1)zWq)p;JyJj6Zqp4-W6yvVKzeLAd?=eQ)&t%UEOj;1woL zORC=Xjn3G0$A^{j1SpW!i5-#X#pdY>q1R$1QiqFvxHknpB@zX zXg(4KW|Fq;OmoMJDeCPHT=)3X%go`??m|}`5S!7X>z=mas!wXoSUc8s!aJ5uQg)Js zShq({#}Y#x{&UhAGxV%Vru7u?s6bBLlKTS;ao~T8A^ub?IN8TE4MdK*MtFpR`F+|D zMOMSGyVP01iZ}OPDVE!kS4ql96vr$|7sqe{m-FVy3B(XaI#_s|xaK;vu!COoS z-+!H%@f=do4q(3?mVhA>r~ot6t1wBMHRp6@(=N5WPbvm*T=UZ{Y%EBlbkAb85RF_< zXmwz@c3lVu-GICAGdb*?dyI>0X{TCj3`|T>8tnS<%S_U=h8CZ+>OtaW_P<=8##f}H+ac%NELE0`(K=ODwzUp;?y0I(8;7g} zU+<%EGZO+O3FI(mGh84>pD7_a3@r#ICq;&CrmY#X5M?LJAR^DsK$h9aTR+(ICG9sA z90|EjJp9pZpA1%m)TEoaHr@Cy7eDq*O~WQ2qG^ebEjUqKz5$%y4_^ct;}vCGi4w7! z3R>@;fgActT~l;@6!MOdd^N89E* z9_e`@a{R@p9TE$Bqc+-IA|g^hygV_XbZboWZMXnuadMwQEGJfwh}^IMr(9?QIiNR? zhKj{1`dPlnQNdKQTMH6T)d5Y*F{e=#%}d>W9CS)gAIv_qlBt%>1IjR}QHfT|Rk9v< zx97=G%`4oF9=+zOHSv&rOIRm6s%EU;rFL2PvHtx0+|f}lzD${@l5+j>$4>gh?&#D; zRJ$9mYBVo#EmCpz`ikIp(!@(cx=)SU5q4Q82&`KB!+AoauiM8mF!z4vr>eg>O^Oa( z8dMCW{dRG5VwiPiuf{(Rzsoy6sg9#V;z(>OXA~>W_4E5LZ09Tfqw7;}?@U2KgtP>D z=yY$&_=T|$h$3$PB*Xo?C^A8vqyt0pD)pbcvYn}~oW+?3r6|^?+r9NT$uNFpP7qo8 z7=97tysxYV@`ts*lzQ5N)$c)`_oX6yRyed%kAWrs%S&6^Vd^O^ZvKb3e$bRwytt0G z=+n$3&VZAX4@%PU@ z(j7QJ>02BsFaP)f^?thqb|>{bTyiwb7uC_xM+8+S#@#*M3|umI5Pd)Pt*_$B%*4 zJNRv_atDWknNh7PBRq}~nT4wA*CDD|{YHA`r(X)u{o|{gEs%rd6R)sde{+X@Ea|!Aaj)Rd@Ky?j3b0JLSJR+1dW#)rjX!rOG!(%`3N80PUR>J z^naR`=AZXvMkGqZ?~%ALB*tCVUWX^#-$*L?_UZ^>mCH_ueu)|j{%SgHZB=|&)kI6n zH=dr?#Uz18Fym}Oqn!$&?eY(v3SD=$zg13%k}IuNtPT#=U%Z>IJ%2Ruy~TeDcHrg3 zC4V0$j?T)`f$lU~F{g?-7L-(6ScQuv?*-WcPo`67um-`Nn^yX{=jG>jPWJfqd-=Pt zPAS$r3xF!DOwZy{PAtuh+_j6F5M8d8P1tt$;;L+qm9==Z15bx`WAW@D*1s-Bp5Zzh zln)ZzVPkFKnZ93k_|q+^j3YMVPn*}bRPGY|W2X;)48cEpViez{9{>5jQdoFqyw`ys ztl|`)JRH19Abc+w?dLd|+e3;k2E`qd8>zVWb#zOL1YEDB$LxmzGQy(OjWKc=Pgp}_ zMkUaf8#@?PI#f*Vax#R(%Z_vgDwYSEpWf?#hsLKqA}thw?ng|qI@4_$Vy{pItG|~2 zjmqdPzM&!DW(K~2v3r2*dU|8GsN4|3(|ch2^$rAOwqzqATNKh9DxO-^sM%E;*tIy zx;kJbXj`YQbI5}sBYVL1#;;-yCNnrA$jHyis52i z-3_=YpoOlOTK_QcFB^4kAeI1=?doimlgM+~}Sv$d6 z1`QN>GO#on$T^oQDYieixMa0 zmRBBNu0_X^eaWJl_$A#=09NqzN^=EXglJYZp4RhTQ`kq-Tyx|6oq>`sc$rfE->BoI zF)6s0Q}dGoPewirWIIEO-BB*}K~sU`;pM%7?cUZN6*w*yJ@AHkDaJ#kO)MyMK zbsyw>mbRL?G6mVxCG|i{Zruos#w+Yb-v3~2O`KqzO`KMNvfJU)OBT%~MltGoJ}nsh<^vLQx0qGiWUAtN2I~CV6~=nrD}MX-^2%@gR>m;RmL~-BL|(oTx>*5>(kDeZzil#uzpr4 zdk3rrcfZt;aQnLfCL+*Dg2QV8Bw@@`Kx&1 ztutDY8!=!nE?toG6a&^QVM2ik7_`EVYTC)bSghD>`0w4|zx9D*YXNQbI=91-ku!SE zi1TK7hchv+t_L`wKTCz5mZXBB@wmO^^*6G+=5}W!B~{6SL19SLG?*j-B&FD)KS)ad zZk)6UD2zyV)9qU6-+K%MG8W3Hi&z>T#uN4Zcw#N&6MM;hqXHT1^xe9UCptn9!27x= z#qs-T$FYDY@p^>kg)^D0Kc4Ur9Em2^sAKlt`zeK_bOlhbyRQ6$MSKw9`FB-I@D+t_ z`raap_nq)XaeGDmz-Pi>G&1S{`2h>!fXkrFTM&NE|G^1Bn9Uo z=UAIudS?#er^)52O8;NzbN8@-9b?z|hF$@W-E&Ek)B8He zZ10gGt@~0mQu2uCzh6|1#}aUcE2hr^UR32G1>gQx5?bG*fM}FMM|Srpa{TI!$ArO$ zY^0|cU6TSgu3M9z!IGPW+ zX28d4UP2CKjbr@|Sk}KK>eh(BOZLpf?%X_I;h+C;Tj~>T@%EVIm&>K1O(Vm|xWF7h zyIZkY2b(1P^=H~#tC-L6O@PmcB@@86@rKOayKS?{5T0C7N;bN2ne^)1-c4>ABr zbgK7g{j~Yi@Ff5A@bsa>iT25sEA#1b?Xj{vqYNd#$lsoMf*m}n8M)9gl6lYCmEAsy z{M1q8!>qndzK>KxtT}c4>#x5~Pqq4@iGQg(t&Cl9qIh}SyrJz-PGML6j(+mSQ(E^p zn$?@ZR7AKJu1aAA(_y&AytxPHdr$qXQ4BG91GdxN_`acuU(SqlpskEO-EyR2i5?mn zqloPsr#k4UX5^8H*N2CCRIa$}wJx*xSiF!*D&rutx3@p8?R>d2sx@{HQ{rVoigNQ2 zus!g@?f%tkMuqY zP=-d#W}?->3dKnN_Ea4>e$h3yVfJrDlCk}SDUDpxu>3?) z%BacW$M|gDp~iLusZ$E0D8+wr*CsY+I%(sIyk?9=onRfqdpH{4_ONobA~eorSj?@W zKqVvJJh-bXyb!Tu)jYN7Q!>{TPCwfx!yjrhpsK#PHGO)OCns~^?XPc_Bj+Y8q5N&R zJ1Y|-2UecS@-z)#;y4)z8vMkGc-`p8b$aG|v3*I+w7XwV=I#_)Mdqg`K_?894Q4#% zk%eRMjC}H$Xr``gj1#;rh}4@;JsCaB4}Yy)@btw?uB*1=NxI|3x-M9pZ5ty^o4=O- zY!5D=T)a5ss!DrA^~(JEBvs`AML)R<@wm;QzGa(VKHdVs(v-qYPK;4(473*-_r^Z; z=*99debjdDPqmeT5bwCksj8C7@Si+t8jLckFFQGgj@r-jm9|Hyn=n?cRp@4|xs^Ju zRcnvGo|aNCgS)^ZcLvp!6JBo`a_vOw4^<=*S|%OM1e2gPy=|<&%2ah9Q(*I>CZe_W z%b|i{_iY9(GRL)&L_WC1=L5^t_53>lGC^$QzidP4%_l54+AUS^rG;t^c>y>1(Id}K zvJP<6Xbi%|WkN(O_+yWBRTc%>o2Gm3*P=XVLPaAC+#qP##QJH7KUd=IqkE#ExFJu~ z^q(P@BAKG!tv_vx_fHc;BSbYrM@3;~3^toEI3%i}U0o%b!X#Xrl0KakD;zQ7dFd42 zN~KYnBVAL{yk}}MB;EC(ie5|%PileXlRyQl*+UAkY`5V!dYPnV}@MFtK;YdfB`TV_8F}<#wjkdV+ zBcdw?7C@y!J%_FDA_|n5q0I@L93V-0&mwI6xJ_ZArJCD~T$xNF2nAY*()se&_PfR1 z0?NG1&t-H|vWKyC@2BK=egy>)5fv4sD^ipuy%#}>^dcZ#rHc@xg&t!86$#R%OA`<&Ql%q^ z^xjJdO0S^>2n6!2sMz-2=YIFxbN=xGA5HRGYpgNn9COSS<ao^d_sY#C)Eks<~|v5G|F8~n112JXO(H|E#s zmqINje~`nKFND2ZDt>_N@GV)-!3QI)!6!{U-p9H`c!Ja@o7=8EW3?&vDB@Fil3w<6~C>qL*OA!NO8k+4mm0y|9+kV1)PW=f<&-qS;beSj^GabHAP-FDNQ(&VrTe-|0;6 z$rdu&!1Zy(Wod*PLvgp8>H(ierDb6DO3lvX? zD90e+`?ObmmYT^?;4_4&S@Anv{y^#RD@04=s)MzMQ(Z|2Y}l-wq54AVGKEg4;5l<<3-j+u}C42AOp_Wf}agVUzD(>u6ZkSNR1Sf^c# zaC4Vs8!ZWPtaFFa+opbI3ke-IKwz=KR>FzTUr0tOGWf{)x_tMu8#X2-#D8{5Tp zWYHcr9SX$4OPzgvtS8nK;^r>tjJ)ODeZ}dRqM>XS39-315h!oIeJtPo2jOcTAW}@; z@mWUIWjRd?;vQm1M1gb!*?+ndwP zee?PAZ%Fw*Q4uK;Yu3lRzxj0MJ^cA8YomLW@4X>8kT)~I!)i2q9*cp+3m4iY*Dhwf zx)DE2ZsnSMA=k0-bd*I_vv!|Ichk^cF z{eyqt$?Fc-m7eO(uGHp)_#G6fwifSo?$YIZgEN`5tj0kk zA-IppTk147#C8ipzh-uGL*3k(goYQb>h<+Cg8doG6^|T=)lk(Cu+`Tu_V$U1v)A$P zD3Mqh*wwyq<5l|nhjf+GA~e(*FWKPxapvr|wYPU{HAgp_@c7b{Hk6+Wo%ozAOxe4` zahMJ(s4yK1(4Q&oC}64VSo{vLp*|aU5IQ^LGEQNMLZi=ncqB5aQm95JTOUL?t$()g zFj#>n<8a>C-b?k$xJ?)??=W3mz>7sbu!Kuyti+0?ME|#_hBK+@U8{jSUnZcMgMjKR zVa3-%uIK**_FahKiL)8inna52QacZ0eU{{t#7|`v_DxUTp%Uss29SsgxVvnKQV%-l zo4IEANUWyg^UG)@v0KECC>Zs2qO47rC?#>P=+}l(#us87^0c~EGR_E&G^ ziYl}hdRHUfd(IYn@5>!qJNr<*-8)8?H< zrPs<@S664~@`ZlJLYcnUC~s07B1N)6KEvx{HV?Wf=yangn?$BxP?6GXw|jbePE6{X zMpj8|eJG~tDs~&bT7+_I)@ooiazn|7=~C6|Wq#0r%&iyX$3<$YLo@U87_O366Su>{exb){sY?X$uA?X1+SI5{3g|iO7xWOdln38ybg4(tr zJugqT@~#_im$Rgcb&`3I=-r!FgIk4AZ3ql0!o@!&Eq*IAtGy?(3P0|Oo$ah2o~_)? zGMVhrQCAWxTM4sGg64*rC+Cf4yQPil$B z6Qk4aBUUk46E$n?N6Ry;b48J4ZQ}U;)yN&jf;#GWnDO&~=Oe70!gVIt7*w+f6hD|5 zAdOwc@iaoR%daV`Jo=bm0Z+ck$x2>XR1v3;kOu3|FpIk%FR?m9wGydh=)0ZaZ_$;t2n-j5P8Vj$*sY0(b75|(y|7>{o-n3826lL+?SDMWBaPuIkPxdtYATRjb zl10<|gcW2>hc*X%*aqEVa#$*a;K?Zh=6P_ygT-8gKs9#|Vf>6!@}x-9NrA|#`$5S` z9fYzrj;~SMAiDmRm|A1n<5ST6Ka$H3G6RvV zCTff8I%&pk4OV$ecSHH_ERQCg5#89_`VMg6)M0u?O#k((P2Wk5KvVRuhnD~L96t9(CR zyb!iF)f(=#RLXM2=dEMMFr7U|N4;Y|0Tj6F01`Q+?d#R#}W4gjL=OnhGo5&_E9v-Fq*?y@SEReP<6MxUrb< z)lZ=sq*E)@Uy1eGrFU#@`6r`HU9(1<=IKXYMn|7>gTC8D;Wg*x<|;gqTz2zWY#Rwz zDIZb&I3#C-K`c74l1k@2ON!_ zJk3dUDihLZA9i#UGD%$Dt@-X$duL>ynSN#YM{4Bl>x_!q(^qCcji(d9Da`-BnMJ8K z)NogMj*uWOH$T58Vv~}{OhHS3M^@FI!^;vuMknbsg`n!{_2~lP@S6C^S#?EF4LuOI zxEbVDpW@8DE~`4b5F*e+Zn|4GKlvsGQjFv&9pmgo`h5)|-P?W|YwqUQHEylQ$i0K! z+?9#E@#VD&_io^bYrjtsKFT`wg7{Ky+^JKi2J%Rv1YWEUT9eyjE4?7XkoYL`cAZvR z@pahsGa{a|llqgd%wb<#dtbIaJQU-8AmQ_8R?*e8`o?-j*qt4T^)X34^KF3~7^nmw zjt@h#vmNrudpbANWQV-l2Gb14i|2PKB`!|KL!WVFmrT((eK};^1SrBeW-^CT>VkE` z_y{p_R!Pn*JUrY~ob7M&@mAHi$m(Uf_3qsQ!ZQvcX+U`;t^sYy;K7&FbX z_uw#*B13n29H9Q!^y*_XhWWLf;#O(QlD-~YoqXn>*Wu4v2B|b8*(jw}Z@g|Z8@Su7 zHfdD0WFz(X&Ml~6aYbe2Rfo!5Q-cpS&x}rcj`Tdfva$0qKG8GF=AKOmM|R~^!IM=ZEQWV?uCy@TZYv$>+2}FC8qN3|# zyD90pSA3rpNes|v?~1C5d=bgI2+FO%)*E9=IoUa`$3YmBN|AhCtu^Fw^x8gEe*OSX zHLowRfz*C2`n~dcaN_Vm+q?@W0Z+aI<(7U}idgQDOT6NrwN^D()XPI#sZwFjDvzZn-3gJvd@`frD>;y=Z?!#l!?KhIH{o`J4Jm&; zC^<+>^_a*QsRLEePkmkt$lZ?i277ugSq8@gPwovSwaIZY~TIDU5^6J?%X z;ZT&tcxQjR72Xxf;7Qn=ssWFLBSC@=$TS%Q5iCc;$91{ zI89+ek+PAOzkbevAmR;VGspaO$i)lO#*R1A zL%Dk8ykpC;DE70PQIjwf`H`cHjT!4a)5fdCKt`7e zP2)c&(slZO346JRkbyH}9HuYv+z#&#B+kQ%QjbE@m}?ZCRr!1+RwT$_#k9fVvQQR6 z*)noxj5m@~Vjr#OA!N$c(tx zB3l5pc!K(Fnz%!VV85}XfRvW}ThZNJfH<5_NSxikZ1p2VZmS}lZ!T`&VCV>QC_I@| zwPS{kN~FuY0@D|62ZKGq3ZU<7YOnU_v^M}<#kM&u-l^Ps$LOOleF;7D6oor#U}ae7 zb-_Hhc+yzU*d;o#=kzGziJwWR={i_L)$b z&stnOxwhxe*z78d>m=8rbKQdHZBX~EZ=>$_n@xmQ;kzT6l~r1oxOSpV%%(lZrExPl zC0z@qDgH%fj_S)OxxKhZf!FuP_E3f6YpbgZ?K^wh%b}ykgxpT9J*f`n;9X%DCsw3+ z04}?VbmrO4^1t7rK^Y;~|7toMb5R$3`(-_Br!1y?&mZT`ICyKJaxSPEHsY1Cn91l*2r2Kyon#cb%MU3P+leJ#a@)!HA4DJq)>I?l9*j1m$2D92;_A3YV01Ug9erx}ol)8x`CkJ-qpWa7TO5ueO|60lfJ z(PyT347*Y}dU4v+F|{Wu&I%&}bgBmGe(b~ksd#T(qqP$jg1;5uY}FnTig1?tN0vk2 zpVb-_{7ZcKCY?cxGQ)|sz%k~<2 z@)>=n0KMn$o)~K#?|ZYUIaXMCJ3$vz5zkL^t&TqmT6Ys&4H~`^a42ur&8XRJ*w;kh z#ke$p6gmbqOt;iJDZPv~D z1n<709XYkVmko$vn2Fo4<<4X0cQ#5*<>;AXa|;V$Mv$G*ki`@3$o&+aIS~#97JdX6>e}I<;Ljt{xm|>f76fO=eu;P^8CFL45IzWNdrd@jwrQfhxeveTf$x`qE$Ef%?y6 zDi*Me$jhUrG)gBER)5{qAIVKtm+ml7whQ`O!nH^7! zoed{~Cm+xgb`;PI#l1^O86deLbQ5Nh1MaEDAVyr~O^V9v9tK)CuZa(?RLf~J;YXpe z&_{=S1!S~P9h^W*6Z&U$h!z6!syk^?Gm6qLc_7R3UP~zKj1rZbVg2Ly5c)m(TO?(^ zd7|lzJ46{EWiaoHVwFk5XZMf4WJEJBZF=QZchW*Cxr9+}#fw##e(HvJ)KFbK+xA!d z+A4-iIJ9D8pw|u5o_#lcvgy3mtGQeDJVt#ttDKM&umW8%z3GlxX$UKxZm6+-76k2C zT~PG7&-hk?cFi+&V~fHTvDt$6aE? zKlLf0xakvric^j%?Ca!5SzN9S*w~=B2anKMI})5N=|M| zk6h?Cg(hc}Z5Ky2eWr!6obS-Az1nGW161S89y^QB);2jvla7WY)hl$TKRPr+C(|CO zIW4h5oz~3XE&-`8U&f7V8&7y|bp;9|S*vz-8OyO%n-!9lp@Eeb5_WLWe9l&Zi~6Vz z_Oivw;>FO}>Q2{w6lcE)EHuummSVaYon3n4$dQMT3$E1AkMfa?KAV!a0)$apUK#1{ z9AmVl?%ul0!?P~^FwETMXAOe`899!ISsHQ|9gH?zH@=l*URjde5_@ulWqra3e{RNk zdsFyjR)4~|-|*81G=RHSEib7Mk^<`=N%!deNUZ2_3)YGZ7YXu#X+5a@J2g9-b1Jz5 zB01NH7)?o0&!in)dIg2O&cAW?b$xi_&6aSlU_a_Ix^fd9_pCaY(&b^?n5hs?s zb)_+Ol@4Q){ovgo3bGtgsLIXbe-?GsxrYE;ZU?Db%WSC)jneGvUz<~hd){#WDS;_3 zN(LM0JV6|$rPviWmmooumX%qinQWXw2HGH9`$A$Mr3xD(UND1l_h&ai4?vNjwBL8m z=0a+s-=nYf+(vqApmcv<+}uHs3<&!1;+w>jN5@2);u(P!J@H@{c3gVI?;3Q}RRhw0 z5jHlnUjZUYFcEf^afSUy0`X}4Xe6<(dwN#8#n?<8wOO!vkoaJmk*O&+6y+L#ZN=9CaHHkWJZak}0EKN@CF4`ehjNF~_B&6I$dm-fN zR1{Ayif31Rar2l);s>pW6dS`n!**}MnNKgna^B^GRzX9p?<)bv2|T~!_Xf~W{LvcS z#TnyEX|cX=uI#c6>WQavakn~^h!yt)KlIZyCF9$_Xl@6kNf9U`2K?dN90mHyd@znu zFVB?BOcfxSx1t%=j(?7cLW+F)H^zk_ zJBH*Fvy0D^(y%T@l4tJmp`u>oFrRr!NpG?d+PV;1Z@T%`W>~B+bdpjUr40lv1@EjC zv5)RY>1HcRmy?<&M|YNrix=0s)kE^zDm&uq{qNsPMXP`o#gfhX9w}p^5u}34Y-h+S zNqqGaBh8U6$CnIVi&%Tn*=y6S_IpVGqP^`iPAl@$pD4pATSj)4V7dBeN;>;|q=TvZ zTtrL`W_wFx&%GY$ggvc4{FagNLjq`RoHtzq{N>=LR5}`gu9y}gbi5_|@eW*DLmM03 zn@G1auB(iM2FmU+kx!;Z^RCv(fh}#y8Hi#OHi*t;Ik-qANfh}$Sm_#r``B&lSL*&? zS5&q5>ARjP05Be(Qn7%L2VZ0r6pOJT*MdqMPGHShgdaK&l% z0%pEGb%m>gHFZTwV-31d?m|TQPRf`_3_?)5xXCgB27I^ z_FRJUomYyXD6OJlEAnBs&d4CCy&Ksdny?)wkYv}P*Sh3jqpx9SFiO_`$*MTf0_p@A zGf-7Q^Z8GUboC#1nRamdO{XFw*=T%zI_r9O*V2Qot~*ge_HQSqS89#>A1nT--)^1; zYq7U>UIh}nG*3Io9LAz>t#)ssYtn=&K>Z?Kp z%lWQ$cRZCw-Vc3OGBuazS$yFe#m7g6`ra>HEb7!34$JiQ%J2xixh!qGIpS4i?6NXh z)NWfPp;cM3!@VJ4Mf9A!a?1Vg6B2}g`vgNmv__89+{}1NcJ^r2Nx+BJ^|9Y1U zRKpmYGmHha64Y!4EF;ZWpd%hZS$IEN>Gt*UpB58^3xNABdVYK#5F<9}A6a$k9i77L z2g$xrlPa;}9c+#QN6Q7uKuPz2meaAIVZqyL#j@X>SY2w5JxVb1Ge_0V=#En>rg(65 zW7y#mYRH~6$DW;yW=3SC$JxF=uS;7LLoH2(w7;~sj2;7)6r>lvc6DSeXJ~217e+aF zFEr;9WuYa73+`*dTE#zP@Z`s;R7p(UkCmul0Nt7Z|H?yh8(_ZMVtJ-Vhlj*q!?Nbw}1O1*Rbn zf~ffNY(CQts+6;dj!s zE#3Hs+#ZQKeR7!3&F?&3dG)j1m=b;`Z+dj6`OcaZ-{#H!g_O{H{!GOhdDU7P8bJ#m z)}ZB@L4FoRgH{~aa%|Wfp;2S%gAw$Y`BFb(JMkkIt5{{Js?=U8-Dx-V=r?f-8yXtS zvuNb&yrKhIM-(S#lNt7^gJGK&e2$@TQ`z9#T(-OVhPWZSJN6}$ec~0avjeIJ5p9y_ zJ0++EnF$7e`fYQn+{=yuiS_i*fi@{d`$okxSy-0FoQCfzVMUzlKT=>$zCI6`De_uS}+IY-~dN` z!pQb|y;FC$x~9o+Ww}+M@%DINxx+z(#B(k2^Ns>C;y1^XyntV4akZ@spZ}srITK(Vaeq`^SghDo)Hqf zPbPfEw950xMdqmcs6P-VvdK*%8NHSw;u5Y;JTo7(cAM>x+YxgXq1w2P=jo2OE{&d* zm(vC=~^HPu%_O#=QA#agsT`cQ(OjwDW7~8Zv?Cn$61M zwDnhb1>EEwseLFYs6WOf#F!vl*pe;k{b<`FK_{+Rh;eM9$q8(g4CrKFM4I06%9HR%RFtgQ*v@zd1Bq%X9SroynEOV zs2D3vjp_vRP##(erPik^xxZ>xEI^(t_lBlmoHED#`Wa!dtL}^51=uV8l0q>tE+cHN z^iInVvttFQ`y&zB{3ShoCq#~PyikT$cm6XE%pPiitxi+ewxt3wZJ=^WI0eN(%8W+c z*X)gY=uJ0wA2m*C7n&NXpI*?`Ka zZ=C=wnel4gC1?^D8mn&27>0c7*04~7cnyxO2OE`dlf&mNBuQXAKUJe(1Gi;t^2ZFcyj_qXGFMk>R4uv|ukm6f)O?n}b# zH`~Rz&>N)LQ>`b`)l8l;j)zg1adimy)MbDM_7Ah)3Z00dg`4n@bIz_rQauCKxkh6W zBlarv2Ap|ulMtIOfpkL+>rKjzDN(N`;Bord z_*yOyi+D;@Fbu+@TbWK{K^x&}!soUoymEr~`{y!D6aa0uuUXEne#sLOU7s66xuPX} zIij?5Ltbyn=z1&7F30snpdEPI-9Sb@CSVABO(YinCq=qO_u@=l*b;SMEBug?6ci@j zgM!-nW{~+edKwXNmG1*RD3^}f-ZQ){b@VH7ClDj=m0|iVf*?y1XD0jgjX4syjPEtu zW%KF_?af76VmzEJ2J=Wf>T%-W>ux;j=QG(rREWT@3{_1OiKDx9yxvJc1o`W|^SxR) z2@)BwfwU_@@%}>}d=ArPId8n_HIt` z_oQM|RN`SPx{%1+kdQl~*vARVn6Snrmvdx<;G9_e>Nn}s)Z|Z%jEES?MNNL>h(+5% z6uf9lRz)S##T7by7x_g=r{8m?O_4)2h9NvWH04A308Yj$buklvwLiJzU=(Xq)_D~b zZG5flj$4eKOY}-P0e;@3th{zVYx5Ew`aC79+?5AM*YSHyp8c}Roq-Z@O;IEz#PR% zY=2=l`^dqE0tN;a>{;e!V|kIsgj3%hd$%vhm|oj=3jslf>E(SmfNhgV1Vk2GSUI>l znU_=|Kh@JF1i?iwR#eW-M=akkv+kipa9-vNImiEoV%}B3ClC_~jN99OBpDe|=hvp% z3Ui>W<(h~aMTLcf)0sId>U=q5?XjY@F5$_O|KZ?3)cTnVoMTvXtQZY8rx5K`w z744N@a+*9(>osY?RxG*peq^hdvSLcmTCV}4$dzje`bf<`8sngkg!ge8GKd`5d_6bA z2&%Dr7H<4blt{@LTmX#2{*BpNIjDjdu7i<8hg4UMb>q6s{CQJe>)0SqVy{1VfkG8=&cm`7aSE z0Lt2VxdF00+wMaob7^iRWoK+l2PsY*5~I-Wc&X-7u|^$ZtCKd6i|}(hNncmjMp?JE z7MmMV6|}cp_C90K&lQK+Te}|GWO3KEuOgs-Tmy0pzOY=r*MFT`?$&bGEWr<@z+GjW|3x7_}o zU{q!!UF6W%TlDbQHn3J4BySg$S5_fKU8$C)oF12BimMJLdDvF9br(XN1G+W6opI6V zGW-dT`Nd7yn`={jO{QK87q)lL!Yn|uVhu6Tej8W%+4);OCH$xT>*)GwsVC2vj%oJo z_)9`pg<}Un(fshCH&1S8LV`6^Xl`*4BdaC`xqTbn60d9CMq+xdhx%wFcV>PWQAxkh zRjErt;^edVo9n)1in_W_RI|G}G?zO}f@x@DDwNfT=9aFBNu7M=iP?^1MJ6`FW-z@q zFnS;EZE8sh*^)#~`eeI)`WT!)N^4#)Hs#A@pQWY3Ub$il)%8e4ym9OgHLCg+*g+Di zBrwFZZ+R#D#I#As+TL+O$E;VECd&mM$J~p&*t_JoGxIMY4{Y~PjNUuP#W6XbSg)nz6pC*7W6nJ*xxV5}5@YNn2gIa-!r?L)7Z%x!pj+FY?N#U`jdBU|{8 znBtHhplyQZRvt1Hw=P{*N1MKubF42?*2EPn z20gX${%QVusVa~3X=u9S@DJv<&7+1ufIk5jJa~E93@g#NvP6tCyUP z0$m>Gev|HHgusk|rB009WHcx+jmwzdkpdtzWP@MU%YhQ&l%ozD8x38|@Z^@O#f8Pq zKm3k5Ve}eSJthWE(eqM9<#ZNv4|3|)lT10&L`HA!ymgAU2U4>#w5_wJ%c6m1N7I6n<}@yqdj!1Q zEnPBTK+%W?Wtf8~KQKU9LF6Hj9E#Qt@aU~U@|H7D!0R4mXRyP&aAxbxM1wb?>u(e2 zzoM?Ezfpkl(s*vYNiEbhG#Xx%;D4hbD1IV*XiZ7rf=XoH;2Ka?qXhFmgVs;d7Xaq; z+}w`gFG{sC;49Zx#2K;E9b6odo9HB9VGqBdCo;V2>f-W>{$(tXFA*t52b}ifv&|7; zLQ^xDQuqsLh;JgSiXY73+tkZ{)du`F^}-CLq|1UFkW_LjZd>4}k^il54*)#!eGB6sR)rR^0YG95?IqhYug7taa|o*0W&6l=Tt!_X~_4A+>~gY_DA0i{nVDYk5Km z8}{gXi(WX(kG}fy_PQ)#Oz0qjNca&EQS!y*1=wgrs6&-)m=&Y1NB?w6WD{n3=7*a@2~6L`;cVKMR6L+@nE|!={tB zG=rrbZ|Le?3T;JOC`Jz6POnUC6w=q#eO0Mzs$XI1Pj=e%)%+|%g%uUL4va2CL&KJJ z&-I4;%@SN3jcbA5^bya^&xLH4&rnl0wnU#Z)v?PY(~d%|DEj(VhJ}YWq+AbeaZs;Y zX$||)CuHJ+!>cY1@UNw| zPyOL)|9DIhZX|mEu63fLqcg$O_v&7;#rpzi7G1dA#h9>aExvPe`~ArS2mOG=V1FE<)KHqs85^orXd+QSN(mgT3)e& zA*YpEod{}f!;m~lE%R@IU68+{pzCpl3)eF@zb-`ETJHnhnbV!s5~qGFz^yBU{Uqz$ zA4m8Bo|ijBgh`JG+P%R7f|h5Z6*5Jl5%J=AmuBQjyaK5!zne&-YcW z?`M}ucI+wo;WJL~_!m$<@#3H$0Dr|^fqn=&x+6GZ@!#s^0#c#qYOSK`J;RS#-Q|mr6{YlO6*pmbgXkMPCp+7xh8;Pl_ zl$mMN^w_MAFSDGsKIyT`$k}IYYV<=)np1Dth_vnRmsrp55jd6VbLUMCy(L3(aQd}7 zTF;_QVwgLhu5VmR=`JsNUH?#RN<4JsG$Hx6*peVIOq`0Kcf9Oyfx6l$*Yq%njB6Ag0DRX;MxQScR^+`*ivCzAHeMLgx&Y*mg zH|lX0LYtZwOTZ~KHonMjXLT{|jfZ?dK{0e-!`2Gn#II;(rh10U)M{Q}o!?6@kPL6r z!0x^UFql*b8Ana zh^dUga(t@9OL&1-25;esB8~#>F+2KkkQCoeZa>3akOxY^aO0!&U|bJPi;{j@yCBrl zQ#IUi>*{&>;__@$&J?cl{}{7L?Vu3`(@xXp|Q;9-Vt z5!B|WvX5?Rr_UZSh8Y$Dni=HXCe?&q;-lPfoOV?vHe(KcDj*;8*D#no?fH}jMP7Vl@{zshd zkR-brCphR-^S*2M07b#w!7nQpLFYh2tMdIg^1RFhHQ`$=2kEo)@kmh^#5z=e;3rx);#hsQ_c`?)#V zl(MpV({@J3E@_#7GdvW%!_W74>=zf^C>-Ko{>)i+cO4=Si0~o<;;Y?hYJ&Zgm8&z9 zoVxlkw>mGf-AuWflG;4CaFaesT;TNSL&Q3zx$-s zEEuD_GpMj8|42zCl1n&fO8V3kQD$!&U*X5X5}%(ZIq@*aBc7l1`2&In4muI$XB(Te zYo#MM{?DUqzr**y!GSMN(eP(nfZy(*VDSX)6o~m1XgGo1GJ^uDwY&!!e4I+oid}G= z7>x^-6v_d9t7~zi7YVwHsi_sQ@HUZ&1|$dBTTd}$qX-*NXkLLcXK`?HzHDkb!mp7? zan98(`&5OsU8iow{#^h|ymnSsdd4Y<34UWi8}{qX)dh)qWDUwuAmO*`iBI__SW zVFJG@{zVOE9MB+bT&U$lLlo|H85 zf~(NkHHto1tYt{hCB=V8JqFCNWA|GX|1ql|*s&}P5(|!r(_zZy+n4`T)iJR2n+e$0 zypjckhIpdy%a~nD>8GmFuUgi5%?dPH)(ewc%zL~W41Or<-zWKZ8Apn4g<{(*yybr* z3W^q za^=`9_eI=`&4ztmx7F6veEE(X^COa8xd<{48xcqcFJ4-x%CjZLc|A)fmE~jH5q|-e zxW7<&ydm$w4w23Vx5^l3D8iF1_3~zZvOHdt@CEBJ+ycGHf zjXmm`L_`Q5w~WE$o-%raFyE)&-~aft%NV=VJpss)u?K#a^4)@=ozGP%qYoVAG3J_VatwVNCNOiqA67 zgUV54A-R7pa9ug+KF!Ilmmzy~#qVvOnCK-{2Mb-haAHS7FFNiC&VNZ6gc(kq%(Pd? z$RoRI@HGVDn60gSq>TVgdjG>EcL7VMaOCc#N-a4>E-w2nhtKu?Sv?w1p|0sA-?`g3 z_on?dq=Um5H$mGKLF@A?!TPp#PK3GoYNR7)4V-=PgyRu#!-UHwlh=B2J+wPvm~`sC zr&X$ zVd5$y{?HxP^6u_#J2M;y-~HZRJ+<4t=3=V7KwQrTjAw^qWf3P~vY8 zOd^yb=(Zoxg@jWSSV&)M$r;6v(YijiIQeZnr8S!`@MM)2s0dQ1uyTrph0ZB?U1Z^p zxkFNq5GfiwWT>$O22{T*Vcb7Z@IZ!!P?5=)gUfz?REgh0rVN7Yo5XCyp2eR#udy#0 z&PoLRsTdMccfzOp#Vky48DN`n>+R6ehhFpaY9+nFc2?yyk-3@-?2fjDo6u#hOBe46 z^f@rh6X;0cDk0TKCzLq)?NQa8^{&mS;$3!7^9)X|@aK7amw1H8CQp_1*o>u@mJZ?S z?%X1c+yd@XEed+qXp>Mq*8!z|&>%VOG!9@zy9w9*{t#F0A0+YpWCw%+q-AbBZdo5@ zqi3isaG%}%%^#2X50N>ba}cxgfkXN*;N1E}H^T{6vz~++BhPJv9DGv6i z`)~oF*2m@tnZs4dMIck1264hOGeE~t<=|)hb0@23j(p&`61b#`%NIX?4i-qLJQgET zhNSCcuCRd#<1v%ss+eE*C(!?=;)CeNF271A0H$n>AjS29o1SAq%dY+ep<{PXR_zXW zkY^_8`=70oAQBqpwFLZG%)FHRmUl%`09SgA?0gYOsdz<8!jM z^hAogci-Q9he|>)EHI zlZ%2u->a4UvU>GA5ToTjq`CYYFaG}IXWz=0JNv&|m<#U;xsdUWJ@_G!tfE|D^8PNr zP=hOhFBn=xcJ(6dMp0%LyWjH12%n3&ENA9QXjcr$`11&%7rMiU#Rc`@JAu8;20 z74pU&Fix%$((-73{g_@FfX$1-SP1=bod1FAo+nfmZui+Pj#tJ0chJ*iF13(Y`Cc*$ zR{zz1|LtB_9zY^(J{KIh#C`c}vj+3L9T0^YOtvl$ewoSl^PF9njhGGB-6$@5r3xl) znjT+p{zXp~rhqi2)S`ZlFny;Vrr~e(H8%s8CM<8f{9lX{CjMFfFulAcBd2J;Xfma< z$4rc8Rqu+tyT1sx-jUmMq!*-gEG*qr9$*iQiE0F$>b_u1wH8F+0wcE>E7k+MijB(e z8bY$)EpEIU*%+EB`}iP2_Tr6SpLpUiKvV1o3eIoY#4obEbq##v)~8l9b7SE0ov~Kk zFRbFWKovOjFGUDZ@nfPt5BB~_etVY}noK(1rt7g->>wqbU}3R}$^4NhV?FNt%(P=M zadgPUnc9mD;v{8Jq|5vNzETOfL zDB4N>R~8a^2-rLN&dffxz(uYRicw_9jh(c!ho=a4rz zeRD%0HY?S|>ynS;b;iY}*c{RKN@srFOT%>K2#BK!2f{D?^~QOe-)3@#zVvH+Yx_JW z2s!irBINvN(ftt~|5$>v@iO1r)q8E8V>9{fXOyj{l{2#9n1ReqmQW$>GU2Awi(2gN z>*EF%<6!XRrBT9=Y@;|Ga4Uw>oLlbMeFkI-03S5(X>00V@1<~^&{0XXJD5g@<8Ew6 zga;GBH5c9g{^GE|{_}6Yo=qft(9)wmS-Ij8lR$PfYz(QSFP4xatfgU3G8$Z7O-*%3`v}a8S*KxS;^h$euV=yz; zGXWT*b=oLW^xlAT@d8fuf<~;b4{zE#pE%K2vR3QUVpXbM@w0c|P*cd;CcN?uNp#~6 z>QuUM;eGlwuU2z`3l)+lW*3&;hjI>BRPvuQ`)dRDKM!FynC1z{8O#m#c+UhLj?fdG z2-RSzVltD$m$YApd#Jh<6ch}-Nqiib)cMMLt5fkLe-QBcM1%W`!tM>}8fuK$gs(c^ z-`|T{r$G^5_+-nN=8wIWVUi;tQGc8{rh$`EdpM?z6y3F|3P+M8K6S4 zO!?PoL~zmE@2mJLUVhupZ+HPdj6G8pcye2tI+d8A#ihQR=B}5xxXzsjSc+aBta;)F zO;&9YPO3Y~_o}*+Nk-u3q{cY7Jg@UZMWF=mAMbIC=v%?#F$%;Nc(U*2P0l_@C&YrG ze8;>UnYYIOOyd4FrY<&b!*$A$Re*>7PmEONrXyR-1x|)5abE5;T{|17^ji&pR{gC1 z$9w(xJPoA;{4dq$Uk8g_31rmhnCR3`j{~P#<2Vi-!Y)PoVa^7Ao~R9y%DbIBm(k0Y zZ}mC%vvnCiJo#RLv*i9OGwBloUQ^sH`d@M9+fTEEfVZA@c1np5@FxBT0-oBK(j(bY z4z1$BI3+nn;02`FP*>cG3v6m`wiqohsqHpCR6$0UMdZT0ufHDt|CazUah`I>3uVnX zW_;z}O_%-3r~c)q>cfZlPK!KONDfIz;K{t_&+NMFk0_Av*%rvi&Sr2aW~T2S8R1l$ zg0{rk4Wt(pxpmz44Ak`jhp89(VE!jKGL->1-iAz<{$}Cv5*b>U+{}_+KXd z18lp0FvzT(VpP4&#mm7rZzNR!>ud0DIgoT+Mas9!F8>6@PYzSi0f`+mG%ynk?Qq}m zFsTp_7976gd$sb0-VG&r%O_zGVM-xC#6#chgZyAdi1>CQ@W3Yk4?OhW-1|3i z?MvKdsw`u5u+Pj+-HMflIUl%vP6gC0@V7mqN8mO}LxcT-hFZB5wDKDq zbo!D%9Sk_Kx|UkA;CsW?P1*@6wHicEJ`K8#H70ig_u)}(Lr}sgbfOf;d4e{6pC=ihvL9hqZffGyr-HIg-M z@l5}}a|K^vZLp~>!Fnkmfj_ay3NA91W&H{6KZNJsGQkHLAXKdM294SR`RVu>kXcw> z%s9r$``;pku71&VU>G_v`tr*$Fl=JXyUl$3)YG~o~`sJMhPLT9|x0{a=3GKPKS<)d+HNb-k{kk%L7h z=eSo7|aR0P4YFkIpN1h@`h= zEkI)*+^nQzV32X+hH40|92eH#vBIJ67WMzJ_SIokZr{2ph#-Q5!lq+Mmy(Na7L9a+ z(%qe+bS$K$yGy!33F$6r>F!0>{m|`p@9poLbDwkX^DKGr50~GZbHqE|@y_vKQy=O9 zWINRbxyjc0cGPnBrn$Veby!b9Y*-GS{SSj%%6W5WK&Y8;h(O@J6+w8og701@V=N{M zEsEFwSH>rPP7F{72zerBJ-6nx@c+S_0MU~6>feoN4&J>~M>rqpv)$=Nb9QEC8>9K; z2!G4-`7qrkpv$I@5%R^1(g+aw8uO&`7@JsxL7{z-i$}w#6v~QX`uf5{9`;8ltRFK7 zR*G0DjGOdO=n4ymCMS1T#`|K81!V4PIV&aub8dLoWwoj4si;&(yXVipZ^VB+bOGo# z41au(#Z4SJhJ%Rg6ThW+3*q1Q9sXTa4)|y_*-yd1e~SIDylJlz)2|0#xTq z4Nsry{D_((+mL1`^S~1CZH}H)n31A_J)ei6j734K~fp=RAWib~l;IXJ>%M z@q#;dK7Z82k0?iNS?10C@A)?P_L`C`f`QA=kp1Jay=W0{sp4v_v}6`QM}PCj7M>MELToW1OG$)_!g`D+<>0oi^-R2 zYNUW%3K@p8>jNwp7dKvSxr;tDH!n|snugl!Ye(UTRm^NCFqzsSN-{}<3h2OSO>pBF z1FtI|#5QJGQ&9QfI{yN|Ux_Q<=_KM3V3Do#Bfl!+A8RN3PFW%Yt>UlqIdj~-{%#4T zh|Vi*z--aii?W5l;0GKnHqrF5-Z({&uvjz2i^I3$;hEjN$Yy=^z?F}w1X$DFibBX{ zagjVfzgJHzx2;OQy}oh`^M_B-gy+p^z7^u);^BRRvx6kPy>wcxX&2$Z)pAEKd@kUt z-?90S-MTV6*}x4pMj81k3di|Z3hou)T{Be?Ll}nHUlP<9gZ@QS@)1jaLN0F|4b^&a z$>jdM0TK+rd$Qlh+W?}k+c}oMVYt5{-*c`XZC{L^x6YXckg@4XFj2@vhlhr!fx^48 z$=ARRl5r~NxNf|=7AcxBe#vTi&VqzD!*3|(96N*4NhG(iz8+S2jLIqOteOi54BBLX zaX_^M23p)*y&C$NnOgC-LxzqBY7?X8MR+BOKpWYiDhp6#OR>YK^(9Ntw zz}b%zX*%X2-CtMHyb-+z>5d)`@MzkQ<<>6+qUS>mPTADlnh7p#!)%ay<8YSJgIb`? znMRJ5#R*zJKRVmIqNS%V9jESKKn%7=1_U)*6wH9KO`uj&T^Se^y z|BYbS*~Ev3`mXXW%mQVgq!EQmxl=%usqA)wDw3d(U`_Zn|G=FfU#)NgAD{b-rYnya z^wRjl^nt|UXdcf^bJoXy{iZhr-;oRmEYRoX-RAtgtu8}5vgr~65`S_dWvkN z0&6e;-#@em)VK~5&k8?q=YQFeTx2;;Zq<=K6$v^!b58qA$>x^sc?x5%=0r431_bSR z2}1EMVK-k{5V{`tivH3lkd=h$UeJeeiwhE-$&+1fd1lx*30FVo z+1|dxu~imhxtc0e;52AhdeT3~y}fqLS}8O)pRHi|n$9U&!@8os1YC15b~0Ws<>=4s za^qFNIjOIAb9JAo5YwFIQ#x%tns8vF&D;Sp>``O#NChBBDA1VDUzI3t3CHsuwl7xV zY(EaVN#o>OSF7lMgsFDm7YK}nsNW0skm-+QVtNu7m>kM@8-IWo7Xz>@dI!t&&*tFI zd?$L#cRt$*pI4(uSWF)I?k5s*+sQh_e z2Do?-IgEU7w|P-94ilv$GWOd`XVusz*uV}hz+B9(j03M%!JOK+SD0gs zoF~goI9G4V90~Vi6*P%>GETJCMbTwt(Vqz47ZUavSNspG}=(?k4VCZ1LRu``?R(jJN+5?OhtC7HPSdDF2m6CGk znuzGn7Vt&a5oLuiFp?|s%nub5*gbqKPf9U5HYyv2rVTC`X>Ja&%^)Zm?q)w1?17gA-^w`hTcZ&QOVbq0J7&;o+BAe z(ioc-aPb_8Ap6+1IM}3|1rS`N;zL2UnOV>B1x+Cynzk9BWfpw0 zuEY~1(?CqLJ9p9UcsW4sG|SdaG1C44&v)mapHD)3?w+FxCH)V3cEe0epDTANR#UPT zyu@pHxxuqI4e3)hBi5R9-zgIuf{~iXQEg4TK#?DrKPsHa|`E$1Ce;)p?k` zxA(lOOV3$Ytc@&FL0+DQsqbop)y)iT(Bc3&P)}A)?p|AaTc@qN-LnS&XEgTOF!Y4_ zr%+h43>(R^6R2S=9agQoLJL}tw)mFa!5iBCKu`~ zPuJ>ZhP|frtNOes1B?B70$EEcd+088aZEYJ!lDo?2fi?ue`rY9eF%3=+U9sEP*kof zWMZb)!J?=H3+gnd0$yl+t1KR@G@m`N^kL$ntywOHHl>jeX9102u5aXZeE7$)4-yDYh(ao&Z z(GqhsP?SY+lqDn7?FlBPR4!Ggbox%_WUWhHUS7003eg>o3Og+5@sL&*xl2{EGP7_QjNMACG>|Zq)bKfTQsQ&tUw^^T^u% z+btd|!xy`-gjD>l3Jp> z%lnfeC_XbY>t%VQVWgHzK#uyjnXJ)yq@popBi2)FWNXQZ_`Zo)8-`XU660|TGLwiT zb9cda{s@X0M@KMkeah%Guyf1k=qa$h(=q8rQ86*5E-0NhCmxwgNk!g6gzPw{WBoH& z13St`0#LZwU3naN`BlzWDW=cifdK#G<8>_Z<{el_*jLs~L zp!Pl=*o1&r+XWkW9=PKaFcy&%Eg&n4&+VHdiAWR`H9Gko|84*oRy23BK#LG8QChER z%2>vt(M*>Np9OJ{tVz{wzJr;nQ%pfimP#*Ce1d|GMHP{4a1!4wO`MOGxg=vrY@uQ= z4xD=>9EO&|QMX+r&OG}N;^O6(zN44nS}A>Xemc!w8=(cZ5fvJXc^@CcutZl^VAmlw z)*M#06cw2vL{~~UA&X1xo%9}U`9WA$)Jdj&XsrY*9$)c%@=68I~?1L5e~#pFTD5 z1Ub>*TT>{0nm?2z5fS!ZlcLMa+c2S~ql@V+5F%@^iX>kuUNboB<|-1T)q!f(<=lIp zu0b^K-;}!DCre6H@;o{=%!07g2ZMW@K9Pw9J=e#=*Tm8XBxo3xTU?yo49KET-fk5< zA|a$oi?vl>`r+V{pu6oTst1y86ExR*c&(RH0t$LguJx1!IKOQ_aR=gU7SyQQ=XOYv zQ-4<@UeqC6^15R34_~&HoNLZeel%OY$#apS555=%dX~YLVzfcw^QN| z`lsVq>lJvPI#K1an?#kBGNL=@iwD$4g(rxXl#CTWUiIjB_dVT}KL7yAWDEW4kl*cl z2S6yeCsJ1mrlt18_$(3TCV)g`utyZX{3>kKM9W!5!2QnTEIC=fdDM%@yJw#%4?=UW z`|n}er!}26o5u;MPe|ZzvvN+vZRue@mYwfs#KkjH0L@;kFxz$T=|6Y-{WSNGy%Oqe z&O95+BftpIO6% z+o*1aJ`Hi%6s{)R;WV8g+A}Y18Rgolz}6v}yf??j-?oP1IfRXxmKNjYwY<1SCwJeb z?1iC0U=H8>N)8`w-O|d_4g)SW$f9+$u8L%5H^UR1V9iPi$>5l`4-IkggqKKVv$J3@ zg?)Hr-NbbWC5hi9#jjZnQTv%petO`YyJ<5uT~{wvagaXU{gul2g^7##knRn!a8l(I z)m30`GR*t)u6}C*9Ig(eb?j%gMD`rJ_cq&#Dx{D4`uWL9N|r~yK834AAXy$68#8W3 zWgC&;Oc;lh&m;2DJ`sLs?Uy{#E^DQtFyv{mAr4+BQE(3EXRml7o0CEp)Q)tiwj$vmADI&12xw1cU)+75~0~x}lWt{7z zsX$X4B>h%cKmcD@M5tr`gG5D+sfmXTsL23q62UVX=uTxb8Dmt!;C7_Zz9}!e_cZ|N z%T0%Jz?yny?_iaRs9d^o?qINr4h(C6^BX5ssh! z2Z$id=YGR#rEFemUw-o5zW*H~ZTob~OFE`T4ZnX@5A_U`cYht#pNIDxz{`3|Uid!& zFW(;88>^)$tqTC)PMnpYB0?Is-}N^DFgLg_cTtO^_z5z5_UGJb4%4S%e)>4k#;0r4 zC6Q@?ygS|?ELCyutu%7O8Zo+YBAWa>J$Q2W*imN}wZJEVFna(q6gQ=&%4(Z|4ZQ-2 zL&kUWtyZ!I*fMf>FJL*&{AjVLo`!>sC|8 zXD7|*Rl^V*8yHj4{#P6v<0n|S1_fv}fnDO%48_b*o5(8f#ihieU!TL4kI6Zg1J)Gt zMl#0q{V5e_%dBmpmq%F7LEUoe>r?{Kj3PxtRiFO^wyw9pmU{#_p$eR0 z4yf#cQ#cNvF`$Td;+>wQggW4{uztrQjRPK>!JO`8iJ@g6*IL|>-0fzr?S z(@D7?_`saVZRh@choN0G0sDresmyk-V~UF_v-r z>8VN}c9`Gs5>^MJV>5baL>YyQ+xu+0-Gs#T!N=Do=;%NK?2>cQc}+?6f?vdZ2rH9w z-m?`yvy&YIlTCIkPSp9#M-KcD898&SKvL6kSK66AI**#VaJ)-LNkD+B4G|sEs%OJq ztp(l~Vps3t1}bV?whCP{v-0X=A!O@ZeIO_t&|()OLEp4(j!|5{VP<7j5+V;Q3;vW* zsh_p1qj^b^$5WEiDjRglvP@lK*E*OFW5nOpb#qG?^JzCM=~P`@VLC~Sohaz-8edbrSi0%!lf5`Vq@{N9aSDuT%hygRDaXb7eLCa~iXy^{NMSDy@ z=DRn_z*#x_NSJN`6%GMfbC@_O9|RF{fxsL@a`}Wi-YHMZ|063YDJiYq({bCw-o_A8 zHMAR2TG5b?p|@Rf>BD58jiIraeX$AW0P9!u@bz^@P;mQ<#s+wKc_+ z6LU_y2(9u9!=$Q+_qAYgw5g!R>;?sfuWT<|t+(s1rRj?jPmE7?G}xaatKv&_DlSy^ z2uHc7U>#T#PHS_e$`(k_iq?}i*Skuw>>`&TVY(NF*X~~Gb@=aDU8Wh`N7BD_kbzW0 zKJdoNseqt=hZZklGQe@}HGjIiE~`YajnW7U(rGdIJ(YNaPU>Zme{;J#^N7WF(LR#C z)Rbo++A&e|V?;CRhbI-vNdNkwW(*P&gvY9RQ>Fy48ZTlpI5cepl%|5 zP+~q56qHEqm(RpnTZQCJ#2It`Ea>?-NdZ?UFvp61_}l;a?d==>4C}!!O>N}r?dUVJ z8f4iHKn)Q6e_I2f&3D{;82C1cPt_SE4e$O{ev0nBZ;mJt7`hxQZS#42pKcMB+Z*!Q zTaaStXO$6-IDp!-sFD{IMI>nsv%L6b%YX>sNf&G}>9Nbqx?-LvzydO|$#AxjWFC$A`La#HQ# zW900$4@LmzvG#J@?@v!e!~z!hRzKT1@!y9y5cZvK)X3=^^RgQ0X~+e}g$Xl(tOt%E zN%_vp+yT-V&XCA88Q@T9pzDa%CXuXNVPkIHD*@##%H z^>d`}X8E_Z!6V;AgnTX?u9mh0V#R?k)?_8yZKW{6=eH#3@L07q84VNuG*{XlLINr|~tEV~^+2Y;V!(WPNY% z|BP2j5g|@b-@J(ho`MN8(heVZE{;B}1#vat9KtLgU6JAMw{(F2VH!V(gzsKyvP>(wVVLS@Ldf8Yx+=Tz`Ke zf)Bv*Q0r@|nUj$Kv%n$XsD!(H^3UY21MY%=g|dxYKLPj>_`e}gRDxd{osx(N_+lR$ zTK9wBKrI?Pb1K;@<|kqzyotBD$804{h1XkVJhgX}fD>RdUGKpdKJa9f+Y64r9gXJg0(WL#eNUbL?2aU107sMLV4}zw zQMmZtr$^C-9N_vCPi+YPUU&WV#8$8u6kRW{dH0D4*w?I@LM>Uo^>4Bb!19YC216Pz zFX8gZDdGOHFU7ac_YfQR0TSSj{H25ZF0tR2VLcHISh1>(amj#oa~KDJV4{THK+&N0 z;Bkk4k>Gssz>(zinj>NT#;X&5V*zY^(cV&<3C6Dy>CtqWmi{MN^r0pm7@LT*l6j@ zHT}{q+sX6=v7(~lATfz&BKLKZ7DH}9K?0%E+KV%8e~>5&9_z^F3l1GWU=n$7#7fdk+M|^k9d^w>>oj`oJT>Q#%46f`O?1qIiYC-i@|JV^*izM2rCW~M zJ^5?EJN1rTf}vmM=OI|brOI=WF_jBJkA>_CPoYk+)#QH~J)+62nY&zA@6!V-w7HAW zM)3C5V@pD+5qW_$xP&L_i3H)|{N8D*a^I`L_68*nrh@)v?zXq)eukiP_IJPk@%t^( zLPA6bY+dCqrtd$d$~SXJr|Oscc3#&>$_)5N8>11Vpyp*cvt#nfGKv_0hLV(sx9(+* zv--?VsusJB_deI0_#rX=HfI+a^q4?B_-8?9?gKphr>)jw0?*;>?xyGnfZ59^>&G8n zXyv^*z;i#jk|~|Z#7>4-TbCRp%we838ETQo7lxq{S`jCLbyR|MQ@tGF-%5d9PFv^{ zWT)0JUQjpAW6>BSN~ylogZ) zCAw#`$m>h71H-a$mXhY&_iEY!o+ZF*}>Piuerr z8t@`tASJKw;=W)LhCT3#`RVq>w%x|3o5a493eVy4@ zu{Kd)Xiz$)^dBNEZF5^&wD~(cQT*Tor1*`vtF58oUTPIxq= zwTmyMD{Ibt^C@X)1d|STo5uTU1(P1H&G{95U>w{A=fINqJ|aODchrTKM^Om90-=vG z*Rzk)JeVj6~*t9*vTwrTi1}9VKz+njf^Dt5%eX6gFG;z zC+LclkRNOlFk$($qQc&8xZd^AVhD~qX`;=6m0+wbLUR~X*r#O@{E8lzax|zxB1_7$ zuldLO-svA$t7*Kn!^^CmU|rknwMwN6uN7|7adZR==`*;y}ia{L9r$q$ZBg>k9kBa>-V8O2O&j8 zt=VytYUf*J48|A71m&EDkGIVyCDzxC?Rs872KUBdgP1pS@ zcn5c8Tys)OWQ*np1Ro4^QY5Y&pF4By^oOCaUe}7j`q9TNN=4O~ zWgHYFv6dO59kHz2o+Pds8(Xf_(8-(&y`p?68m5i=ZW5d#`{qg;J1XX5@OOK&A`1u?b7}w^-b{x@qp(8IV^9tVN?g!U~)E;)Y z`Hoo8ZwH_0@d+k4eMnmb$@bz9IJfEZveE)wh7oA1*Q{_S8G03F$B>Ef`N0e0Ib~L@ z`ZH}e7sYi3dBN4q&iR0&1&UwLy|XI!JdwUifCGx=le@qVFI|pb7|n?37LMOmoWBh1 zXJ6TkJjLVF(%~H~N9G9*G-w>ofz%qpx>(B4ubSthUhW&rD#b4^5vC=2|16UkEWTNW z|FeH#`2~JHT0OPn(b!S-3)Yr zheO#Y0v~HH15Nb?xfgJ?U6$=9>z#udk+_>+VpJH`uRT2OYPw$0$%!yBoAgaHZ>mk! zn6lBi9!aT|0-!-dt4z@|@-I%JT=ESFx3|eO)$D7PrDd)Cju{nR&1UD&V4{HAT&206 z8LQ zlhw!(A<-(6<|N+fS55Yp?DxFW@9e?>Kj7N!exZ>80|45XFsXa_{5^yI`2AFp4^z#J z@beTj@LBq9=KoE7>BFaQ4(fGv=61g_Eu#H{{dxR~HnaaidI-ASr~E~XJteRX#(54~ zD0itpl*i>G!dkp#W2P$GOy2UDclv>zzQI6o)0Oo7`#z=6w$vDHH{bAZjEYKH%0!-H z{C7EaFxhuhG&JwVuIjyPgfgBiF^oEDGW1U4P~<+|;>2<%3kOrgV{1RsypZu)?@A2cRK8hqYp z!%m9cRt@CXeJjDNq|xDy%Jq@q>U?u|@^YrmF+Gvfv6BZ4`V7JCXQ|tSKF}>9pDmdN z2>6^?j)A0Qvh9)>IM1R((tskoW|T%^bZ{S!)DVN zbJuj~maNOeI}5lajc6PnZMg{O(q0gJCG+|oq++02VDYE2-a!)L70M&MY#L;9K?4u% zC;$NhSzBiLMja8Ap$ssIK3d*PAWVfJli&jx@4u^*`s#O>iRw6*7r-fleHcNb6 zeO=`{PxLYYeEr2&5d3hDhY$Slxs~MKNHlX_0PwPwJyk*cg~rw0(E)_;BnE0Zl(U z#~}Nv)R0~jO>uSbm(U9aGIH{cb6;PC+KZ$Iz(3%PagO#?A(R_d)-Fzqw@?yFJM1HX z0CVy(*VZUi&C4d%pl2sT2g@{i*F|TCYmpH$k*hBA{>Ul`^OPd^y`ob2jaN{MYHMg* zCYzS0m&@^5(ehDqn3_}jcGZA!b`ouwLtUZ=_TXFac{nvlljlgzT6eF_#1^N-ys!T3 zwzMkUdS-3THfNWJ_0*rY+jG869|mLU?>yIPaOo0-?C)DM&OIajq{*sZixuS$`lGkn zC9WEWQhn?Y8%k(D*X*Z%y|sS>czEB)2H=X=gsgjLaZIZs+Z?d~+o8Dalzs0{5Xtld%yofjJ8K2q3Z&bYO#kGKoWoY(Zsz2uO@Q~sL7>kHAEEc$ndP= zjg>VaKyAxx*+(mpx|ZsfoHDNEseajr4q-ql0dsP8Z?*x*8aGy%fah`v`TQV%w6x#b zwm*_Bw7*vWE=%B?WlKx5(fo{U`P^W_17E8p$!Av1h!8+!b6R{a(QYcnH^gZtPB*6x zEnq}p?yFE$V{O=&IfGJ=WP1c^cNUKB0Bv06Paa0#I!}DR@`Yje;KGAf8N7;$UTjo3$vmx~c z&FVH-F*^2ba1W!52xo7e8#4{q~_dmKgv3AKh$2bmrf%b5VQ=E$F34kuH+wm`L84PkOpPE}K}kt`!r%Vv$c3th z?`W^*6k~?lFd5#jYMd;F@(v&LE2DL*2Vu<$17Q4o=fJI5SY9s!gyl2hFRYOYq`X>} z%@Ays2{B&L04I~f-0aZdz*&z?{f)7TplD^8q{}8U*z{r7@JY=hpaenq$=Vum-@R^F zU6hHIpKEN;AA#hfAE5{PCO;3xnq`~I!_l;N4GEj+9dd%{x5JUZCmQw3uqIFtQ+$d#* zm->noN_}agtw@U%ZqJhd@Pt=~3NZ8+ztQyNIJe|akJ2lWUvTRuf5C(K4G->Ke9!s& z?~TDYpfOnbdt>lcV?xkV(N{WHMjD5XERq189MnTULL8FqE`FbC`?N%Ff616RM|l^E zv*5<{ft2U582XH;D7Ecwfflt`;{+3-hp2xyAdQc&|D|_Xt=RxUlp!)<& zThCOVJM9sxU7o_JEjJ549#*$(VmLhS5L1K0rU0^taI)i^gDB%Uy^HGF#*HRFCIg3d z{unZZ7K!c#Mqtg9v-pLjFcs|l?Q{Fu5!-B-uuIMQtk2^?&RsX+ZfxFbViZC*@5Xos zEe#EU>=0Rtwe{g_05>}aD6MvOR*cUTAW4`uUI}0(0f|9El9ov|^D*yv zo=b4IgL;)k%wTx+L4#woGr=-qa~PRY)03Uk3vCxzK&DN>yT= z>Mg^vFIXq`*SZj|ISn~9WhsFepB)nk zS`XBM3n&m~t&e-wD4%+6q_VWQ>r9<_tSRu#r}o*nua^$hTn%%X4Q1%LD^H!JaCK4x z+Q?bfeL(cO>qcEONt;wQ-eQ`VrnWy&ivo2bt`d%tAd))aWPl&p`^LS6$6P3xWXzuK7q%e+cZP_d&2 zibBc&MR{MOQzKtljbH8HZI~opfLHCMG?UJU+LvFYH3RW~c-M14KO(#PHG3^Ogxw}; zV{?;=f+FSs`QegvuOqKfY0sOxSL4(cz@R-U7EJ zMvx&Op%KzXl5y(&5JBC3u(FaSrB1sE<}P%8vN#_GNzPD?ZXiL9;W`APaKT>b!f8T5s@6g@(r8e-S5`k; z^@YTH8>W_nEupmJj!Oa9V zR9a;`EGLfM9p=g+LHne^ao7rHIY+F=y0>g|EmU(^ z?J7cjJU$ID9Z6FM^vaDjy3I$m*ZxQ>W&Fh*Bbcdb&rC~6_};g>`!yYYrl zBiZ0DNe&o^TwUm@s@qNW7jv-I8}4EQWmRl|-L(8t)tqKE(XK03TAUAn?rd zLmR=7h5IKw;`fEyN_V<)G1pVzdUeXQ+_n=Eh0BWBAUV-+@SlOU{e@%18B0HUH2{U2 zi2iqY$f(r56;n0-Ce*wr9IlR%RWk2C8+UL;QiljNwkU)eX&j>6O0>$;=R97aCiV)^=~` zs-Xg^)H}FTdTH{~JYkGXOplIS<~tH;6`omCv%44Az!h=M8*M~N0Dr`M*|d9-=k{x^Ya;WN47{E7(Xy&EyhN??Kid~fyzqPQWDBrFU!iUhKM;z9Rs6RtCqX+@Nz0YOD78JJ#$|;*gs*v zZt7?rg4l|5k=JBa*bNGr!g`I@N84Y9!c+t&iqddvmj-tq=>zv^z;DSH#lbpv9`l?( zx~h{87-Iq8{lXf=#D)z2DR$IAq5yayGAvrWs;4oI!=AChnr2hmd0X?`dIrI{PxlZ% z0X8?M>QH+DohY3?>+Z7jOmUpOQNWU^-!sE?YfS}uH4)YBUI(sxO^pu*6qT#5xdo%5 zPYp+|PWo(srT#A9%Y7F!|V0|h4Dlt!;riTFU5leBLRFxQ7OyDBSN}b?V8Ubbn>B{onnk} zsJ!mUm=Zz~FiC>fOr@pcw0D-J-A&qkyXO6N6X9ztC|Cy*Vqp^n z))`h^r0Cc{!cG8zkgQg6QbGC?Vee2a_eJK~lbzzU+}0H*u6xI|GYGkBI}f!zFA|Gl zUjzaDG(D{wGLh+atCu$(u=eOewX3dT-q9rA;!vw4X>gqVa3QRhZLTX-J+L(cJDnJR z-4Sl}r&V)$G4qlb)W1}olu~| z%+wIhW@hN@jnmHjblvA+O*qSSnA$8YC)8R3tBiN?&)~bJy-X zrO%{dUPWt|5`^_Ma$Hv08l`YT&dC2&Yl!l+bNJTbArvF-sM)3PhJOZQeLq*Qy#9JA zj%-s%D2uTW08hT8InvWe5PhI_@`q~iYbF!V1zfI<6ci5~l#IxRr0qBA}sD>f*vl#ErEtBs* zZ~R>vaeR1-4Sxt%|Dp3)u&w_k4UbAL4>)dV3zr>! zpUjot0i*C|NJFISnp?j!g%=?SE zAgzY^?P9X^QObC&elJwX>dryUgEgxO!fYCzAs$q|hZUydgQH9qk@^60L;{U&T`$G=1@X_h9hK199xb2atqfGbIq8BFf2MAa#AP+{vEI#iG&ke{{(yXvx_gOQwj$>*LflFE+nTO) zWJnXB$OsG#WwM6}gYyas(juhU1)&wk7sZmgwKPC49SYsG52e!*pSn3$MtyE`S~5~4 z!!Z1+zhRGqB~Vl}!J@$!Av23Tt=#D#b-5H z7=pqo(Pr~}A9yFWKNhW}&WDMO7F7s=D zVj9^%{Y*dYqF4_cfSB;}E96vSy2Ty5XH4)=_^}nA^ywiC>f*xGj*nJ>*p^n4ZMUQ4b@UTM&LeJi?Hc<-QqhW_;@-Ur8v~B zwHY;tv#-;lYB(pN|NX&B37~t+&@IwW>+I#^A$`NWXcuQ2M0$0q4(2fXMgr>@?h4^O zXUSRZ)^d*^^w2Bm*#IF)-OL@8TgG}5rRKCV1GP3~hp7E>_K-e)3MXDxmqz}VbIT{R5oA76$gv{UEUETc3~ zx2EE=w5?y%U_f~;F7eJ`hsF9+fA;2S`U@L@3o}D>RkJkt=Rs@U!}Q6N{pvLM>*KFj zit|fzW29095matmtw*!dBL%^eO`M&{w&lq4M%_ukfZ4f%z9+aCr2RqEH2ybVgoNZy z%3)U$L*0Pf(i!Pd@82|MEw}Q~*OeI9f72-bFfo3~+hFSr2Jx_b7O(?Phe=dfgjeH9!_4 z72%HXXicV{L2-$U{#(2|YoL)xEDjE{UI($c#!*IPCDb>ROUj_m-=BB4@hXt(q{^!G zUE^u<@QAjMfsJ&%Z$Jcn40>Gk&ee%lI*^VhBpFDpM?g>yy{N|P742k& z)n|H(#qmZP%gWu;^L~#rD3YB9n5 z3z#ne2YqAkRuk;9_+^obg-4FD*wQQwnNY*rUrUedP~)=0F;ZS5eS5fYm4JGuleNJ( zb2OhqQ%)yG*#LhzW^@q#MJSIob0#K&-q5Ecu?4Lim5o?*$m(oU7xA-Pbm*8FRfc+u z`AF?!?&pbE8crXg$CG<7w;M6HN8xWL9B4pfywh<>5M~;`@#k4W8$GTk3||_nveVtz zWO`>}2Q^;I8@gQ4k;UzKwkHWtK>t|5Skv~rkqG4~Q5ds*_6+LZnp@F4=r~uLK0bH- z63TL1E^D{;`D)o&Li^N2$B zR}dx-R#{aGu%Us0f$Ojm!|ns1(@llR4ndr3ykdy68q}LufelNiPFdEeChZ~vgBkF- zDbv^hT}UVU2*U}zoBymcq{gd*9RmY$Z=plj#ATxsvgQv$$WwKu1+-4KeeoG$>Y=<2 zyaX&uqN*pGmQBNvxi=B3OhvIG*wR+PZ9Z;^fV}X|_Yx7sb6*&|U@eWulq4?Ey#!X4 zN*0fxPf7{tr0~(<&5~+T!pyIJ)Qm3A_e0Wu$7>ApTXG5hgcVScGV32atAcZ(#;0>W z{y*G(by(Hi(zbz07&KB+N+aE!n-u8|>F#b2q&FfVjdX*wv>?)*l2Xzk-SDk#J&!); zocDb1_5Jl-m)CY1o4tN(X3g9)bI+_B*mrDxgn%}jnYNF7Neqb#dck$zBy)#3sO){9 z+$tp&i17H9`}{^2Ic)>qh?ecJ{!oq5y#gA*;CPzx+s_4BHS<-NP4P?foTuuc5nqeH z&9Sbnde~{nP=p2D+qg+!O)iE0`BEdpQt49EvhJ`rpJ#so#cq5#e5V%Z^G}FSEE38E z?YTeiq#c-74(G}a3iqdoGoZ1@`=1NiU(=2;cP~yB)!A6J4r%W zi~hkI=CV8AVDwWryX-TR{kb$u8M2dL+R4m7UgZS?K$aeBAJHSLd3Uwh0LGh^;-Y>F zW6TF^x47%;x!DVAmjqapLAW%IQgR@tG&m>{kWrq}XfOsNKuolNWG0wvL4v?B52Wa@ zq-(u&bfa*a%;t7$Jujz(Cwv!n0ng+93sBwCHNH5jQq{vR-+|GU#9nJslu{!lI&QMz za5*9S1$geo3r|f54E2X)U_sxZL8MO{_8m)jM-%A}m~hCOlijSZFG{bC47zT4<_B^F zZ^lc1@TV%`zu;lm`y^BH`4fE>D&(+O+$E=-{aXJ4zJNjX)9~1#`Z||=bmE>HLwSbx zD8$_Nhs9M-=Q+w%MGWWcR|gMy&qNswD0fTQn2$>WnS|(OEZrt5x87X3notzSG`Fkl zSwl6MW_@h+K1*(^td0~+tOR3d4aPC^E@$nEvCUmoEL4|b?MccCWj^zL#$>aAFjNY0 zEMDSVxYN1HF)V@%#zV0EXl3PFgReaqSKIqa5*+Ax@ff{f@SOxG$Cozu?nmW~^mSnm zuK4U~e4a6522@ol%KF#Vd%1vsLVZhA>`D5>qWY2pojX%do-IC5&ZQ;>5a!aJeS8XCWZ~{&SS4H@9`&=b0xp+Yu1V2$!U^FD+uhVw#*

Hk7@ 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 E0CRj)@&Et; literal 507672 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

%i{%dnVwf(}40 z?x#eB#CzU&eQ#zW;6X-Nc0X~;qoO9DmvYt#1}o^2LA5f~krSNGSwWNZS48JQZotsmiv>_uIc>#UgijSE0)%|2s1)y%Uq^e8QXo&CIwRiDtTPJ{~m zr!PM>W&UZ^TsThA6unu=<<}OuXXh2z1(XS*3by()dlJ9a1W76WFCp^7gl5rFNW+=! zznVk+s~WQDl@|A_wM-zj7)wcYyH2Ve<)isb8fIv8^f%uWz~buCL2_r~ZEW08b6!#zoW) zB3g?KzCltr8Cu9!B%!zWb+Wst8zV-C60==At7ut*$S}#{p&eG2|S2M==nAp6QZ4(4)h?%<86ijt>O&&aIz7EJaXY-F8 zD$61+bG26fG@YFf3HN}ms)MZ#C{CW99#PX2&PjXd#(L)1)4EN(I_Cs6H5oTQ@AJr& zYw|(W*kIShy@Ltkf&RY!iaXE{KHA(wE-!kU;!@TkEm zS;o`QJ6(dYp;hZ61}*^!n$NHDPnQh5B^84ftVM)&bKvo_c>g~7%B*K_Se_dKvEv+@ zpRynz3wBTJ=m{mIZW)*u5lf;!m@#IwhM?ra5=2n6gYoh4BbB~V@Ea4}sj4Ym1SkK8IO|-jny}@w9P=6u%&SYjF#14 z%O_my{ev=<(5~sQHzx%#z6+pp_FqnUZq+bDezk3Wt~~zvX>c_!ckS-UoT#0S(YR0? z=~!?;{>c7Axt1frCj8u8CG{OBr}ams1uEA^fs|b5n+8*A0|hD+S%w!aHx;|%nzs4K zEDlV&SZv}Mvh0&#%T`sNU)k_Kl>@)YVOM?HgrR4U!H}_lfrXHtW3S(S`=2uVkDt~| zTq-0`u7uOeBf@^VH~x17>5oJF__tu7X^KC0?LSjYe(v-Ge)Q^eZb2SQ-;jqgc>it? zx;ou3r1)o}9i=gjq+~2Ni-f7Bo}vnV@xl*eW;R#)3vc3&+bv5_j3{doke9SMXj z0i!ORRiXTaT)0g;F2~D%URVKer_C=eKakB?vb`tjfpbp^0K z*Z^z@X8(B%1y~HPs3T)n{{N%fQ!r7C9XuyU_nyd=`6ZSDG>fwN7%k2PT-Qd`_py6| zuI0loGD?4Y?w_yMZ=V)gQRaJJn{i?)$WyhhF0Cxqcp&^UKRq1zDUq|`BIyC?>zZ+gboWg&$ z)+FrRH}PUoO*A(BMe-L?6=pUsge3T$AgsiI$%)Mlkpez>SE0 za-8nh0O3zX=s)M12DfnRug%-f*QZc~hTC=QOq;^RUkSaRKmH#+4VDJ~g@^t1gKkj; z4}rDm{y%e3gXVGFS)TzL2-E#WDEYJH$MOO4%PbkM3j062(*;QiA6I!-jr+lW3P_~Y zKIZ4Qa7g>r!(cE}Ll!Txta3sR+mG9AtQ^)Kdti;O7#w{6R_f0rnEFS7)5ZCfExI6G z6p$VR(lMGj&wkz*NFC|%#!%NXmUD&beSZDx$paLV3ExL9seHWh+ZVfjNIlewJvM(N zsUE*II8fLj93Q^?ClkRff3z7}{c;374C_*+AT8P-nh@@sMnYfE;5Lw=|E56v*-VE= z1yKSVbSRnKfu<_tlJZ+mW@KxmfA_-*e(l0zf7m1c)@J5fw0GMFXR1w3sc*`{@26B|7oo3_OGlIDAR zTSas8Rf6mlDW^+=ViNM0ae1k+uC7_YSe@ivKBHg`6sEn2ibBoI#0q`#)J#7oVfTFT zJQh0~qpL4eTU_Pd%JX(igu+`RRKINf+oC#S!Au;fL`X!0|F*4Q&e@K^y9@@Np0P^= z!blFYv^Z{Z^1Vn7=f^wa1rf}Pf;WAS8R;8)z=VVjeB}4KD32Lvcp{+CVJQn+Ogu#X zdgh6rz5NA>BGJe~uEXo@uJ(#5zZMC`Q#FO^$w= zI4z8-QH<=7n+p}|W5}D~vsisbQnlkfR?{<|A zR-p*|^kAF1##G0$vDS3h_mrQ)vEkD+lUw*YH;#WF&Hp9Ew-|y$c1MIcaU?CS&pf?X`Ix`9sQH^XwUiXgcyxSk2l5CFxHL^Oni}~{T(rDza!L=PWhHG9pcfl13g(fSKLbPYkj^7c17{@z2lQ)c<8~VbH zc>W(Us^B(-^co?-z2}+)`utVU`N4KO=`-gIvF;`eb6>?p$F>6=ME}}L_m8dZufjdj zM=*^Gt-AP-A{g+d@e}a1JdW{CWZ95QNmb?ErAQQzLXnAF3k$m^(s;^k(3b!DZ84`5 zrqPudR*37zF+^$U-AS(o=uMX$;>t_fA+cKSf$!>;igzS!QT~*Ri;Kn(GdQUbZp`a$ zW@IsnCA9O!M`kWsqc`(TjF_aZtWUmm ziQn1r#SRXx|&vqsbS2y{bR9xVP zL?SD)8+$2_rn@FWq^@cB_Q&VJZ3r>Jw*_oYcEz}+aE--aI~MxTS(mgfU#?8 zWOh^n886|(}b81(H>TgVyvx=1}Jiw!URDw*Y`1U8uZ(48l`V%ceL^}s$h>|ycO z(vbkk3)uoXpg#iBD=`WQ+#K&|nI%t-l6{}I_L`y)5(js`jq$VbAyw*+A+t@~@wmBEaf0Kx>F-e=An`Lq`wc4?! z!$rV9s&g|j_=A+ag z4&-e0EY)NzTR9eB#cT`l&sxklkh$^BP~#4(u9@Cpzrd0GeOV(tJ(}fWC*%^tP7B_# zE~0)h>FqmMhj7x_fB;K(HTHsp5OPCV?&;Z1!Xinm>ShzzgrcMu;)?os}}P=a|}@+_&u3sgiWAGE%0{d*DBf4KJYW2`P0#H6Nv5-q4%7&Lk9*gHKxYh;FTT#eH;Z%}V*1$<`cJ zqy9qVFfWg;DN_@5jQ6@ePWTQiG?VF`8jny+If%2VgtiQbAp6~Lc%bE*%b5>)DG#t; zMV&a68DU&~eQQzwrLAeY?x7!H-vG;li?1=ABr_LMtK z@~ymwO+j4UJyUFhv7$}Ha~peQM3{P7zm-low9!UMcPRq?``KWR<#PX5O zftB)1T&}cp_|VY#u~YWSCRoJ8J80l%VDR)d5qA0y}%m5Mv<_G-l;dU~MldVGug%TA@Ch`?KmfD3dFkY_4k+K>-nx9X){ zb5$0o+)|x#HTXOhCI#gx7*yum$WniRIj>ms2b@`mr0hO`z4u~li6vT>>ko+^G`W3H zG}L@bt<8-|CRyHez0g8f(ptB6=RYS`6caeA9MQ4_&qk*W?xpd{Ms=^PEyE8~&e|jm zAR`Ydv;I}iox1J(wO~meV6i>xAQyLt%x+&og`V8^H|8RnDjo`(4emKVtg!qERQa7A zVA1**kY%yv%XEx_^&;cl6jk-KZo#Jq$ZKka8P#nF1Ttxkk2ZujrK`w&?FLbQdZZeO z9BxQM@_vX7GLe7YmL%~s!o^B!oGA_9%P%03h}pE(A$C3u@i_|v^n1(MZ}o|Izz45g zTBXk4!fSC5`w43LT4b%dytmJp;A!&IMl_<#hRH%A;bow_(N$xfD_CXxRqaak(Ya?D zC*EF{qM6_gB$VkMdtPWDACwP!u1pB1vkZ%sG)x;!PD&Cl%HGA!M!a%lyTm|TbSToz zm%GCs$#}_flX2jFc-(&D5W^!y@Cs?k%W+-ESLJ z^*a`?pCVO6@f=RcRACmzK;XQR5?QB!uFw$fNsyG`Ab0QO zD1SVDiBlCB+vjO@{wim;$TP}cg5&>%vHoS9k>4t)_8}SQmEUo{jSjjyS!*vL>l{9% z>Nu=1FzQS}`oMb^B^CGfwtjeo4#3*lj_vF7)%Ii5(9+cOzv!o{i-_i1bGklr`fhjg zGbblgoIuBTTie3qJ|hTwQ#Md-dU&|UW^~vNoJdEs=UQ*W9Vd*nIADe~pBY^5S_MFI z6SqYPpBN9H9M3l%$|aLoghQKuXMCZ4-Oh^_9wMv38FvR4u#ffyL$7*E+d)r!AE1mh z7ivp7@vcx6tGr(dEfM7*Ac>yDw4Tn+muEa2Y>xVhh}d;EJV)GlLQT6xy~~@RRn#M! z9dRrkeu7NPM+X&G!CC2+6)T{6tZ7np*hBqqvKYs(-@1D5^L|!VtZSv^Fn}t}gn6$7 zgTrI_#Yaj6urq>|WfMzDS|3MknQu-ui>gA4in_GA-bHUE(!KW7xO?kWq0;+Hb-ckt?W7BxY9n1bcw;xU}?zrPG1qeV@;p-&<8wP zeBSRTn57ryz#np}4(xBG-`0-blvHhMD#5UBj62&5tO}BO_2?sI%drELOG)`BjcmHn zH;N&F!owu)pQi%-4?xX2tuStSUcwT8jAGs6!WTbk%9X^=U2o&7lBfv)5gg)nHCU|* z*WGPx`teM_W7@)G3981T#z&kOs|mMnIXNi7ng2ECXe$*3Sx3%F8~b#R z)Bcw-&)P|+mmA{DVg-F-NjG56z9jh=QILI@URLd3@29m08gR`FkERLtodd;88kvB~nGg}w6lPd zH@-bX)#J0T7SbvsXolgbFS7amT+>_RE;?aCnkF zvP(u1S?;%SJXOsDw!Lo1aktUUZw)PD$#w3+gEYF&YsQ?_?~jsdHS>(=get3|0i|0o z6Wi-135OL>kq-w^3^m^h)>jUdZF>DjO#G|G&kld+WO7Wpc#(yj;`lLf&3Q&k?zgMq zj~{U>C{mogz>|V zi)~R7v|;Lpd!nA0Dck!wE#4OC^N^cqzltK zP?gI`jvu-G^Vk?ln>um|A$cTvjcYVQ#t|1~M*Wc$@Y`=R8uMZaw4uYK(UP{8|LifX z@XKD@|Ng?9KtIjo>JRzy+BKTCJ|s22tP03@WR=!_C|kXHVY07pYWON{Xt0Y@SHFKp zFra{eYAHEccfYz%Onmxzt;Lv$2?yH~)0fYS^H0DT5HDVYhRr8~?`=Oix?h;C>WqkX z2#2WL^n6|CeW7s0!2x+H7 z2RIL!9J zkzWincAp{F1BP>ViClKJElvRf*QM*Aiqv&N=SX8-d6)LYN+WLQ2t9hKf7F}fa-yoC zxd#btI)Gbry84)YW~)TQzfO9_@%x z`nu9tdxz^0R#CSr3ejRvA#wc0puo&k2 z+i5;F>o|kym8b4^pRB2HSq%C)fAxiXezzolx9)cK@wsJ~1y|8{-4)BU$V?Qs$ZChP zbFh=(q+F}m6=1FbBE$yo^fdy#Va|;n0hX6DBYC5ypU#c^^|SfI$E;8Tj+ecdqB%oB z#~>&vEAKMlMK7kQ)$y36CJphitW4X%*%Y#B$eN}^KS5Y6U-k0ky-+aYX_KE0edMR6 z7J2BZ_s-wes~spi+8t>#(672ao+hpN#-Y%)K#oNYG_&xot0>nG`TWoc#twHJ8|q#b z{J!L~u6wq;9~9f3TD$0fPD1X+f*{7h#KgPZ!E+4vp7D5x-n^cwr)RFW+g0}Q4kz73 zQ=-Y{g{&SG`5gs#a0{Q#2Pq89q@bouV9TL9WT?LW!_rb)`Zw*iwJVMVb3!uVVHxy& z(}*gx9Q!4aWu1koZQq=ptMm{M8gu>V-6nfSN7sF?*bvK(40Kf4=ddHyTh&!5sgjQt zC7Z1U46|hi*f#&t(LVYwIWX{s0)bk~l;o!rV10tD@q7{!)8qW~O=qrv zBmn5bGy*)==I?}gvvBIo_=xEWXf@>P*u~q*3$9Ard|K@^w6yS}dTuv2`=!O#89bk3 zj#ONrgAq-#vc-tF`rj zIVQ%7HALs&a=@F$F|J#_8T#cWpyw~OjIWaHMTmy9Rzg*MltHV+O!(<)$OrqF8zn$C z@S~Bfoptw)cDWpj?Y}AofZx?Ty{1sJe=87R71XtG_JF}ER_F3`zG|{|L?U?UU!+U= z3ecGeDipNLEjiKUiNh&1S(iCD&y|>bIb~=IO|XMr7pzKsU>!0kHQM~if{P7g(>O7z>qo8Lt)Rmb6zN$v;aup;>((8*2Lv*0EyS-Q%mAYkBs8|1+RI&)`J#u zCDrvb2)H^>G!*X4`^x&d5AaD&KOeCe##d_e@-M$SQUQPCdN0Uz&pz7D-M&R}A1avM z%1zlQb|Z68pw%V2p~K(SwqNL)Ews0ZlxNe^Q*xksd{>H&wR6gh&>RbgZ+q?fwFH{X zhzJF+2=pz9eZ=nj83sIR&(%0fYc{tAo|koONB8$xvq3ng_RGz<3(+~B&8;~9jwq&C zW(#(Vm>+Q$Pobt@XPjSI+^n6mzB$7p2~zO_(AzQ75ul@!XA> zuV}w0`e9oWmgCrs%nj`J{rgP;Grk&(Pn_-7!()_OT#yj(!iCKg=RS(1Zf`F_Reu3vUi-Ig5`y?K#E)g zH$o>2ICAfwqEm+|dOskv_Y?u@*$5IwLgRAb)73p>%t`LFyp?&v<0Psp6EWp#e~NvOUx56!`r?-etZ zIU9Xtc(xCH6|CaA%phIT9r~3sFM3&3R|o_lDNVfcCm%fOy?u9BlMqQi7Q?`Kp|r*$ znc>5ktv+9YdKt+98WTqHb^WNt#vF4@rSieZ~=%j}Um0$m(88thIi)wM3OU)FnLpq2T&IQGT7sPGh0 z!+^@sY545}mXmlk>BGlTGlF+=oW2m*9JRLHoI4!&tKA)|Ux=B8Z9xZ1A-YYVm*x5| zD{w{POP{%YhD@a$IHVI*rDR?F*kOo`4@yq494&83hL-vz(q2n@&Cx>W=*k=@o+shr z;^LNd@l{Rz7(OB~2F3}8b8*1Cv5{$W*CXyQYttQD3RG|i==LF+>ew-xiWgU#N(10J zuqqM4;e;pmomY~2qc?Z3Gf5cauTB>h8urga%r^GLq-ti=y5;{~02Fpmy30=t)NF84 zzWhx8wdLeU+%Cd(^xZlq3upFnOYXC(cnn;tt8QMiSKgl=QZdG}<=}`BPaWowj@xr8 z?RT+D$Ai2DqdlOu4#kJ$v88R3CAabz`~ce63QB6`q+OpWM$4}C-j$ssV0zRd)lr*M0%Oucs=*?l1dk=jm5-*@W)P1 zaeb8RW$oOGi`wYLXL+Jsl;L;5b&wB>I`$Qco1P~eAZ7?F+m0j9tC)c>*yKE9$L>f+9z z6n|Lg1IiR9PtwW{xuT+9v_Cxk7vKM1Bbi46n#1MvHPk&|sI4-EH|!VY$A*=xJ$}FU z{=z#J;wccrfp<^+*AsgBD8Rl5c4GAcV^K7=ZH+sCdv}6qQC}W=|4988mG5&R2^!qgmZlUtJHg0NWMmWVG z^Kd7zoB8j|-0xhFTJ*gu3tcxP|I5edx&Pw?@b_Hxws-Gt6Be%gFk%Mn11cT*8}CbW z4lXR>(S~AMMg49D(SIsxes^yF^LK^7Hq)y$nb^wPsd!a~|NM}~bRS{zq;EiZ;0*G= zTxn^+LMv9B9oy{ww~j@;w~$^U7$$BPI~pBz%BX=9mg^w4bsGO#`oA4r;K%4aiLbeQ zcqhC(PwYQh@SxOt1HLOgb?U!7DN%IG`ZZu><+j?tsfd1CXrMB4zd-u3Ce3fVWZ)PD zP`Tpl;ZZvOz~0{8Sjj5H!SRU)P?aM5?g0xP`7VrKE6szRJ~FVUy+9M-w?VucDLnZ% z9>4JN5Agtp!aValhT4RLE8`j)#i-$d_CrxG6c_;#4>usQWx`?X+w>pekNa4xF zI)KQqiYPO1lH%OqUfcKf3hSE-kMcfjeCmjuyGF*v20{{&)4fGSO9HvU)gv-ZsEMmH z7Z??|nI7=PkM#CF-YmzZDuth_M5EE}CIY58qz0gvdJL17mp6%@|Dz7A(WL!8M4*=6 z?TW6Lcz2rgS`hAPm*VzBC+B^$HO@|+>`THQqH9gIGR>ZmFo*l%2zl}Qzs=_#<@aJ`bwHM@FhmOynEs7N&X)9`R68syn$!G7R#AXuf}t z{hsZTmT$)Wl7Xk;Sy{Z~kiG=9;k)rZJzVLVRbh)?0jZ%mLA0EMfq8pBy8QX8!Q~X-b$p$B=We z97mO;GUZlejqlvZ*BAK&opX@BSLaZ4&3QT%5rN(#p7Be|%d3Piazm)w9{|pBU~mk- zR^?Iw3OyZhfQ5i>8j@VN4nCr`C&TYW3s!HGq#wvE?v|t<;tp|DiDOiwUc*jZ2Oe|t zT~^vPfL|XYY)Gn_lT8lt&#dM6g=jS=(Jbp5mX1;^g;(Z1s`NLd%Q;LuacUCl&4MXvbyGvhWWSBwHFGj$TuiI)#Ma%;>*8YuwT;3{Ms4uz72^8`!-AfH@#kh^Dphw5P`sVtXUV2vu7TbAt^@4KI)YJ7OKDv4G z{r-}RL+Y(SD%)PT;%OlvfD?A{;k2ft_ZuZn_d)fKpTAxF15jOl8f<4wR409cfPs?h z%Oa*&NjQ2}VuXY~1ba``tB{%?o7Bk%2Ft~*Y4dWsMbRh%m_S}x(1PRxR}c%6IVHPa zO#YGJRMvr_AaeVuJQXNFD>B> zSaTnni&CD}IvKrPlleUQ*#><9(5v@Hl*=4W<1xhQG1 z?{p#Q;H}eK!Xn0?m9@^!x9sPobW2+k?b0Uv`~;GNd?xE@xj3;=?J^tcs7EdOruTMT zgTC5vc#U|S+xF4fHl8~TH|H{g7w%4cwcD-n*EjX4s;ID#5Ep0DBOCd0-gb{;s2=lk z2t>$vO1heN7EIrKi+sa5KXx48T2j`w1Ixb`y+hJYn=?n*SkBAkhH<0Bpe{rGFJ`isGfW363;a#^VEIl?Wl3MCida90^gjlBS-Q8t?Oj|v zX`xKgF1k~!j~?3$-iJOJo`!ZA&Wy$`PBlO7?uT}KmXCt#J2d4^M+-?I9a)Dnd$`^` zMwnVXb#M^cRn7n^Ld_}yo6G2(EG=&?4p%-xNPMA3vKP?|$5r(WKZQ{B7NaNuS|d1fTKuwl*^Mjj6YNz9SqPWr}RzvtmK7EW$pQ2*^7y1-&kb zU6WoWCithq?XDg0Yy!LC;G7eQ~I2$fHFkeuE4@ z7IrHYkfy12@?19XOy63nIkG(-(3vm%N0tt|jpkKNi{DKjL~mz_0E9I1_OX40slXXf;NXZ`lQwCJ>#&~GGd&Y25|}_B5#bQg_3HW0 z^d^{n@W(>%u4uYvUM%KDicQQHU6^d3F%dKUzUkhaaXGlC35i?RA%$@5b*9SrcBejN z1_)+@sJELt8g?7w_xI+Im2k*D`vIwygc$>;J}2**EK6W^V7bG*@iJxe9r5h4wxw1p z|F&2E^UD8$c@xEo5?kRTeMEOQ<6dUiOWn1N*GklaBd-H#?ozCMggjALcd)+E{oT&#BViS-$k*xLKLYKq z9tw;XG*e7eI23)v@SU$8eqPOY|GP0kdM!JGeyE_xtv?Np-tfNM+Zs}ndor(Npj>EwrDear}J^12`j$0v9Sra ztuO8xh&A!9IG$|Yiekzo}`0U8J#;1kQggi30c=X55_&#wZ{uuJ8P;d#o9ePNCblXFof^%i)^dVApcJ# ze2a?~!M||&i(#AkvHPo9ns)=*_rhm?{I%~PnS>e1SmU-N$GG&J|K`GTPaX1aQ6K2`1uO3$qS@JV^JnFCL5dSfIrnk3A;+|Nx3=XxAh`UsT>EmviLH$dwz#sIu_~&qUVxn*EU9I& z(CP8|DS7D1i9Cn>1gdowYX%K6h}9$2pGH|rUEN?CB@8bvr--*Hh*|_ z6CQU@vSS-Y5n(?G5*t$;4z3MWMd`uP8Ft{0qp+Hu?Q{Vx8cQF1u^UWm+Z zxO=|LDs)b(scY$y3|#63#g}|@$ZCy3SBvJ5EiR43SO-U_>RU_(wJSSawpwFfr#(uU zFYqyc+K-_NTgJEaeTWQ}Nq~hQ;8p4K`;R^?c0Q&Rd8`Xcw?(}QJ$MPvCgBGM&*jj0 z&kPNy2AP1Rq@;0x!anUu0!0>X(A7Rm#rjdK40Xw_xH)g`+nJl!>`(Jc?2@j-lFh!M z50}uRIj1;fo-q5e?UU2nl?eX!l{a5J-}WQuBqyf}o_EDoZnUG6Z{1M&7#m{EjdbbK8pNP`yecy4S=MUS7{e!n=t3qKS z_UhM;_^@jtz6-7EY$m=9JsIivb-jTQ(RRsc&h@v{%6%R3#D$J8bmfo(dhCqT);7O! z63IuFVe^?)9uUVDwQSHXs9ML4gv)OpHA|FT_J8u^o9tA+-7e9>puGAZ(#$<6!8G4# zGa+lM$^9323cx^si7HF!BuI;-m)?6WLz%YK!dxR+ro|l!^}MV5K7p*o6}cUsVq}Sik2#TaHRMZ|H~K6YN|-Nq>v`_iH(LX$DF(%`4Z#ARq{IDb(KNSv`nsE2Pqo0REUt$@w*nWC z;sy7RkPz)LEu(qaTe@moh0t`T((2tlNF1nQKl)&v1be^tb$@!(p`fCFVOs#VQO|F( z61W{gkkrW4Bg3E&>D?VrGz5?3Byd6&cmpX&!((gSdgXJuK(`S<19znsG5#K6{0>hJ zC{a{=AaI^%QM$t|{PE#f{q$oNp8v<$cLp?-ZQ&})sGwp4Y=DlVC{J4RvofUd<#cu*wWOj*~q)tct-84ruiTH#p!I#}DY z(04DZb~1MIWDUk(F{id;fg#2M=DB!N7ko~=z>}+N=)Mr^#QDa;#;W7JQZ_uO_bEUG^ zu}LOAWb2WF-5Vo^;tpSEQAwakd0?9EWYs?&cX;Eu!vAISaGggee4Ri6jWJ>q=2#0( z3%p=fC&vU&H0#ovTnnU5Juuqd{L}Dw)=G!-5GE|^CiI|NXte{plB5@Z`lFIN5HCEz z3CbvhBx$#Wag_l{bHsACoHR{JSv>yLThZam-{Tqckon+AMd1;XF#-qgMH!zTITN=A z=CFxy>w3rz91wR^K?n-vELFrpi^`L+^B=h+D&Z)72si^<-tuVpY&0A`ZwET;!5-=t zyaCR+bZH&L{8d1VlizFjwty?-6EhyQ!HJ85-n7Y~p8J5KBZrQx|@{YksXtmw#X`qaDSy(K3vUJJcd|3Zw%S|0yxwrBI>oS!A1 zNSGL(Z2lgwn=WJe^tbm?+bMUED?xJP(sL1H`X@^v?3Nj z_@X;Gr|l6D=ws_j;y@5Iu$l0G5U;o~={zwbis7njJiKNq3qCS$|cPDRwD{Rq`Vkt*!&;oyR%L`7U-51aX zL-$4tN|U)CA8HR#_P&181jZ?!*8?UjVuG^hzT6^}GrT6%&V*j%4Lac2&KaqI75H;+-v0&9O-Q?-Ui>`yr{w#_nIj zJJeO_X*}=@AI$o4N{1IIKk>DoBZLiP>^|ymwfFM2?%HOo=vIu+6#9Fp>FSR1XwCPtPT6BK{KQE>Ms8j41w@%S6U}@P z`NO^0`wi~`WR`?i%WExxN|aIGuFnSxE?Ky2GJk05(Wg)h+4DNT*!5$+`K*q+G`o&L z*`*n1U!xaP=~^OoB17}S{cxQ~cB<*|<*BKv>QC=W?`=|klCDuOTcz=AOO~7CxMErM zDt9H;1JAEpP%OP&I@VzTKDLtQs*a$T-DT}C3h>m(c zvhr-NJo#HxF10qt8ah!DC@jdEHxFl@3NbP57PJ8YboFUor(@&W=2@{|#moXp51&&Z zS7jKu!V$5HVoOnIwtIb{IOpTD%~=4(S+Na$nA)4b=j0@|x3=Rl_{+|O=o4?!d>RfI zLmp>+Pe&64Eq+Z+F_M{ZkPa$uY0KJ|EO*A;Mgrn-gVx4eP^Q36Q3G(DE9qj?+r0jvQ~ zN?qGffjPZ98C55Vz9`!lMcSBRvtNWM_L3U9q%8G;Rpu3a-t$552~`V1!szB0_H?No z{H~T#AScS@a`_3L%KYf4?Q$Z_3~o;@bm+w6C|G@WhB-UneU@D%iAP}(I$impf|@P5 z_Py<4#l?Pvn&*hb?TmCz^^xI~ay#BoKSXpGwD>Y^YGs=Q5aAT){HT6eV=MI~Cxo+j z@&Jh-IpgBB^y$LJcXuC(Z)uyf1bF;nnB#MMCE=gZFQ*ya;<7VyqFKty&X1X+KBJ5x z(GmUVIAtZpfI}=ISZcw3%O2m9K8#@ss|Cj@r&=$<0;3>-FF)mY-Fn?+5Jy43~WOdn$044=yji!#=C2Uv(Gk& z_-qs%1WT%%1G~z}wn2w%BuUy@zI(Cz#2_6yvYuWKANpL6O`XI(-^(_gGl!3Z2PN|$ zHG<#4uc9GFUgfMbI6T3q`jmg3ZwpVHo$sglpm$uq0$+d%sf2sL(oXD5^I!F*9G{Sv zmnS#H%kw8hbmX&S$`GS?ZKZLk@4cyg$Yz!5c|D$GX}{d9gf8KDw(x+=Do_&GPo~bK z`2ny^wUKZx2I)ae`pUnh=}>PfyY$+SOm4^LY6~NH6&l3Je1h=8bSlHEF1OrfNuAS+ zMUcJFOQ8(A>Q7|vx`5ibYEq2sSugpEe?&2Vb?4u3(GMFoa&)+#)$;PfBHYr_D!oVE zMWW8Wu^F+Xfx$LLqqBjc%XC@a3~-Y_4Az&^RS9yR=<_7wy(_I{j#|g)nl9V7NSUQ( zw3{#YRvd&hfb;y`-7u$D(^&F3p%14EKH2-P^A8)78ZwWp}uM%EK&1a;) zITb9sfXHD%yp(d{J{<(;P9MS)${IJ3#e$+hnKb@lUhz&q=|S-J(;S6j8vvYfyyvV0 zS-S*^q%SaM6k7U>Sk;#GSn4&X2m{9q-FYdxU|$izo=)|HQ7THGDd6NT@P3Wtl2$s( zhZ0x^Mi(A#ZkvL2&sZ92-%m76wIFM+HeVw-4Q$Pjh9 zY~MEsqpCPImG*f48*~>+yq5tyb@zDp4t)1~|KU=P6!dTQJ^m|a=*xZy5k(P?d}ZAa zd16ddq7DG^YdK2#kcO=Ce`Y>m>8NQ<0e$fhQQkgZS=j@nnI-;*G9EpC496VpEKqKU z*%3oX$GgNr~N}PzSU2$O5e{KMJVo zlw<+1zTAY_>oc3Fb(JnZf0~)8kf@Dv(jpq9L?kDdWKQ2|1nA;LM#U#kbFw-aS7Dmk z8glp(Q&ZFA@J|94QiqPM5i#qGu=Msbf3)bu-1iUGnJ4nByt5g{UVbqy+uC^hG%_%- z2gI`K130v1R}nfM#g3Nkg)`9`MAk&eWU{f`WHN=<1`<}kg6bu3Hf{Nd|3oH|Dp}jd zyE@8yFwj&vJq1Yh`IV{$tPMSF3s>p7Dvgv#`?KA$QE93oe5g~KPMArUwbL7_?G z+_@{GzVJBR!1)nWYqN}rECR+#zW%u?Y)D@`8uHw_oTZja?p@` zRa)nyRp^>&x;wG)upc(4mG;(YG!~HoXsFsT1XD&{+oBgeHG;oZr_KK$JJ~hxScGP% z#<;xUX^GrsSDOGx?xDhhlA#jO;gzV!U3%snfj4_UJ5PuHwz~T4D7tItfn>)arNe1H z;sjrwjry=BNq)}?zy#ySyJ!5Q^m~A>%Rol^atZild1eSY=5m5Zywq*89G^&Puh~li zS`ku8Q7th6>inY^Kn%Fd-f_r_+BHPqvodJE0<-ww%c=%n%qZSfnSA2#E$iOwM5(mv zc<>h!>(lTil3^3>eNTMO7}5K@%eg7sNadZ&_fu(g88%3huCf45cIvgQW~Fn!N0~3*T+?fE zt;p-UNY@?&=x*q8*pTD6l|Is22hc))`YtlIAq`SJHi^m2CGqP()$*tTSvF6c=q<-7 zO2U8sRxNsZwUgmRm|tT$NWg#PaWx3D1i^~eDpiL9e48&3(R+5d5D4xN^-TBW*Y)gr zweNoQ&%Fg;$sUU^$aw&6Rw}rkWhrVd`EC)QJzLuZPu^OTbzd4x(~Z(Te{l~OK)1aM z+;6icI!>XRlb0X6mEI08xeSJamt&(6qfhnp_EvpkBiJRS9D2K<8s&~YWkK--`-rFL zt)Qwgebj!(qf_r|RXp88Yg?_p*yayd?BmL6oiB35t%`_BN*pc_TQ>JEvpA%6p1x^l z!C!2tQE|wPd`)?b2c-!ndd$o|RohU3-jK62<%4vyNk36R?>XkK9tmDFXc~ZFdyj`n z?w4pc%+OI4tBHEw%s?F>ns-k;yO%JjSel+**xzu4U3!OU5s6JPunllPrpOo$NR)4- ztAr1O?ACR7@6eV?%Fgn0ZG!iXXh^97P(Z;JXa56Ngf>UjP(PeoymT!NVSKAh{+br9Q!0}xw&o(txAlteXxSD@2lsg~iuPcEmWVt)e-9>oQKnKCnw4qTv%sbs?zFdP2!|PtGvUvvVw!=s-w??o4wrJe6~nz-?yV&n)Kd#5XicWG&}r~iPykg zU`b*_?NUy%LIx*kp>M4T2Xu$=@_MZH{%n>;Fq3pjL#IABdVbQM8QG$tomk6X*#CXF z^LOJ8$17zjD(&34^II_?3O5q5WcZXcJvB9ah`M@$^9_P!!Z_l?TXg5KK}t*JSH|%G zA)$$Qr||`>;fKT&3Gv&X;8E!|3Kgtfp`uaX$sB-)g;xEDLzSWL;ZO`# zVxmFL`h~gBeO<;qwDmp>JEy^h53Z(@4P|gC6f9wJ%GW$__}cqXaQ<=An|6_C3ThbJ zZxDahh3vX^=aGX&WtO!>tX?QJE+eNGhyX^!^h-;3W0+66CNF?U@P~hfrP~noHTwWGN|QS9rNF2&UB~n z7;|rkK|CNpa|Ymvn9I-YW$(7GXkns;0zN*cCZxNnzk?DuY|Ea3z&S?t`kMQL{D}2K z9{#0MZOWIrM(&5Lh$5xoY=k_uIs!S%2 zgB0G__o#mr+{y>g{-lt;vq-WI-9dt^`pb(SQA!6&fMC~XZ_%b7INfg+I)D{{LZQq6 z#B@2ov8(G<%InlefU-0OAl4FJo%Z~}C+$rE!nsC$W5d7Qihtb8CG*UztWN-ot}grs zdv>H?TlkQXd&~R(^ff>F?6(CrGYSg}={-5P``_Edzbxwi^|t20H~RmzIFBFHWB;82 z{Po{ZK<6>u^>_LoY|S5~9siPr{Nt_t*>9_u-B|WN-adFQK-)iW0Q+CN1`YsC2PvJ7 z)<4+fKTqd>`zjo@ZI?Ip;BoE$m6!eku+G+*LI9inzc%JS?fE~gt9SDpx=j8rH$Nf@ zv?KlY{T3)lefbxyrKQp@RqYiZX$bg5VL!-%c_UD&^}ZU0>P8p>|X zM>8Fi1KW@NOZn-K1!QN{ECB3Q^c~Yrd|-Tmrse;%X!b0zUEWk&yYeypAMT93zQ~(f z5A;ceKYY?_n39@M1jn!j&LKS2Jo~?0i5+0lREUYj<8S>y-&w~0*IO7CFljPx*!#i% zWYRT+JwT%cHr?|lAlLgJzJYEFJkU5!<>=QRU;4oA@LMN}k2Owa{_qE^<-M!cnMq;1 zKKxGuKQzS+BDp!2jEq_z22oPa{pe~hJq+)j3?ObEHUvfG{m6=be6fEsw1I2DU6Fom z&H8`*-5*x@FMnqs-jifoe{eGlTQj^~odWdi$PWy5G69`h!*u%C*js=*#iju>ilBh< zV-vyZ3?Sr?n3M#UTj^ED;bUIJRsy{^$;k(y*F$)oAZVM!|Cc3vcMaih0Y4vIR51T& zmxYbZV(tZP4LkJ_U2P2jK=&v}y;XGuzL11C5&tY=36SyxZ!4EKy_t0D{d%Rk`Y+$q zmNzXO_$Efnu`@LtKfDI>`Xv8f+h%yTN#@W^QnyLiSzTq(jq=<>j>@n#1p`i_7Awg0m# zWnv);3BDg6mFWeK?&4ROX?giLjOY;5WD#Djp3kvk09XFMKL*?jfd@|crw1Hs`Hr5R z{fyAUE0Uah4($4?;L!Ffqz2Y!o<<{Ej#UT$uU8D%=7EFZ?%U}3gBl@M?F~hfQ<8y6 zczK|PYSCe9D=TvuFNDKUtM|`YEiE^b3f+0YKs&b^=dREm$;aR1tyI|ogB4ueXpb~p zA6kRXo^^vKLe<_B2@U`vfYVlaT_J{s#psVs8LDdMbr_uTl9GK4$9wm>ys|~}%Z%b< z9Q<2=2|hu&XO73;Bvut>eL8IDMq#bx_jyR6A)}+$=^6(QT{~ky6zCk8VZNvQ!+9F07f+B5*sMWsocr< zHMZ_Y*~NeIfMP)Zr}Xpr)so#VB{i@Zr&39aIEZbW#1ZR!vgHk21Hkvdb$0p?t@z@b znBviuN2+R<7Ty^djdf9-8PQRdc-#fW9+4e&?k@<%)&jM2K(UpFD#{B4pEp~rVy|6=E zBsbv_APLhv<%+tC+2vn->QS1pHJ6+mF<}%F(>WJ}R%+DKU4&iTvkNVh{TVkXiLS#r>GXTgS4}WjZR76C1}f{LJ@Y^^oVZBar8CWWD&|y8;p0zRziPoUlj&pYAK;l)u$t zJUlArg|9@1$Bn}M4}AC=YYML;R_!I*Rf@jr7ke)w>v#^#;k|=#K^TlHDJ$SWcFgoetdR42*IBO;3mCp%|r7W)R>m%}gO5ssR;4RSCGh z9I-M0daQl%}h3t&2X#XL;&Ocqfg6Tmjm4do@( z6X*=Zud=lxXf2O>mj|4oP?aZym*kHkKrPAiokBJD{oRi)d*5u|5pyN3g=}elJP0jj z^1s-Nl?d*{2%>vI8-4!$TVCZz$D6B3#q-P3F0Nm}Hjvx+{L=F%6s9`BQD2{OMDkaO zaCT(<@mv)1=mfdvcM@d4#Wi@y$k;e4DyUrScl5oru2+$GjZVEuj_<}5BRYZpes+g> z8l*n-AC(1d<${WmnK_RL3n&@0=FBjT_YVE;0Jk^UIur1oy4J=auh^{@;Q(xH7|5Nh zcE7UJ&>Z;IYC9v#?T8*erh<44%nK&(9e3LG!|>w5##fgvh%?jPivSZub?;;5#>Fts zbmA^eujNtBI%=xb$jEcph}+2(%sx7|c*0uROI%z$XcQJXYHe)=G-THHTIZ}ON z|3Z8UijHYs5PK1o312^4#zmy9MZOP1LLk=zE!gS==wNK#mA{=cnJ;SS!+9yGuNQTG zQhIlr7@NuM_-N`G8d~cWvO0f&ty6Vgs|)D+0J@Qj6-#?69&eGj(o$I*vbmw5VVy_@ zdg+F1YHFAl&a`d*tBt{IMgU+j5y$otQlf^$O{U67OmFUL)k;uz3NUwgagG{b61YAt zhGWb%W{o^E_LYC0PIoz!Mxg>7uzdh#`)`r`OZ1-DGKB?ZiWIu=0dxcZ#?|MU(++=(_WD9IYU(xAo_hH#RpAE8NngnbfY?cM_F= zei_8tx}1FtJeTDdl~`7Qe5<=#*7xt(PEDftOh`T^@ogW~3(WDQCiY!qPuy4EkBvRs zeKu$#XK>Jx#Ck#9vXOKCRKUB(CyoH~8rHMxV=`EQkosvh zS7SW}H#=oL+=Aq}Dn2RVA}MkS+k>y3!0`1ot7>#i1bdVbF!4>U?F0 zq`H+$fRuES(ul0xT`uB;xw0+9`J z+#ZH5!ig|lvyg?ZtQ}=`q65AA);-<73de6Wqw?cojaFB3bn73F0MkIw>@0?rwbk(N zq9j0A@Ijgg%Sg1*s=#{Dw*<2ZB|W z!4a@MynLtAL&~euGJG121}xOc&83G9?j5F4=1*`KUeu9(VY_hsiylkZs3Qz&Z>F{X z5L5+Hts|gM!Q3>E^NX72ms(LHf$@<8hNZQcRossXK@QQ7Fge)+euRiB(N=I%sH^J` z(4c88x@tE1ASiBJ^6?4zT=MGYcPS+bOMn|O2b2T2!MHkojf)rOc*;sj6+yiHhvWi| zNvTLETN_dK@WHNP1LdV+xO-k&XBs1dsfO^NSi4TD<=x^EL%y>IIV%SZ^VMu6k+qn+7K7v zYC5NCVPR49rXJOmJU5(_6yG}py~?}OnRs0B{at{PwnpQO{m6dowKv0zL^-DiTp?D} zx#s!N>Pm9ZM$sl|DPN*JL~{9VenT@}RwxDA89RicO*>KM#5O!K@0k((W^@F7ZJ z&Vee{>!db&a$P1d$~v-tyzy=%j7oomyjKbE?NyCdZS-~M5Hlrd?U)@lXyh8NrWzNb_;(2w-aAAnYTZ^H)!; zjurpglUBa}aHBmoKHkV6j#l zSA+mn4p2*HCFm|ede?2v%2|Ve)C<1M`t=E4TXEH$xxUEBcbucTCx036gaylV{N*IL z1Yn!1O)(mk8GL%5%Mm139yx+!|0?x+MYbZ8Fe2Ix>xT++J~WmKdD_fZjXGMv>u=f- zpZFxAFbWwu*{vFoWXm0JfsUpHQVmsu@^FjKTf}jzjY1v~1heB0X$;3`Q0RmuGK=TL z<u-K3x(+s)_VKobV!jZV_ge}QPp$8BYLHcgTz!^y95|&M(b)UtAT2U&mE7IEv z9Rn)k1k>`vNYbh&jmZaHBq=u1=M&3jlV7EI|9L{K8*6rV5)*3&60@87y7S8jait64()lQm(1e zsmOGo43jY`J0HedL;Op_&p%eqURAt$JpkFBR`B){lHWk|4$z(k*lA#5F^>;gH4S(V zEnM{QYLygzXl~3QYGRTZ!V*o z)<(^Um=r7YxLTo;`Z$6ncCPK~*R|h5EHKtaBDZS_i?fx*3>y0VHQOK|=2 ziY(qGf%G)$`rG)9M+(sMR~$x;Ij2n$v4?enzlwBKD*mde!J={+o&Mv%pm(%y3A2vbF5YWq*I{0Cs(Ic*J^@K-rlU}Bo{*7J(qvTemcH)O{{!~`Xvr|c!*g~Cr8YW z4qI8JkOu}T;K+8q_EnwpXD&fp4(y*PN19AvCSH-E{r0klQ;Vic=c%G|*{s18^_k+> z!l1__y||L zg?*2VlG%TF*@0ugzApDyr#XNZv0EQY%8tj)Unb7TE{=$2H@cAlPU|t|ow(q4I02Uq z=*Pxw83uRqr&5q}0e&P#!0%*eHMT9g;M6=HE5`*f(~ulyEtue2UCZQFe2Yei0(Acr zU+Gb|QTZxWLfUhGn^8+NIHUiJa1t-~2xV+HaPFwhWqS4pZ!aCNjDR#&TU3xyL$2o`{*ZE}i3&sRsx zb1jVLd`sV)ykb$2rAPPhP*!qYtk(BkpGImz(8~ei_!Aq$y_H_27sKQJk0XpneQ|;N%Hfv z?V-9_1Atpp?BpA;sz?2iQ^Pa`27UqI6}(i+1m!0ORnIzu`M20h8PqvuS9?;Q*&Dtp zbybQp1QL#aplxCz?KIT1=8$c@?YOLuzQHc2Sla=LZ!3um@IRha*EZ-Lv&3zbTVHkt1pw#6RB0E$1pn0tlm1n_pSZ{o44CW*6mHR_ zhs-)J98<3h?m00;a~|lRESa$UB#;C8Hlf=cWWM7W`~h^)MK?Mf!N5t>3N%(A6A&et z7`k9+H!2XMd6B)pKu2K={YqIUBTVHKmMzkq_#!-vmsn8LjaSIL^hQ^`d*22dT(8A# zGzFPQF6Zj(d(<9V%H=(X`&;bTD}DR7ih@_1uEkf{!Hs9+)OJc@&v&ATM5I&g-G&c6jvBA!j?&pp?!aX`l&wvb6g zp`$ibp(-^d-PX#QdQZrKz3_xTLD!UQWX)}+yf^)_P!)8 zPhzVy)+bZmX7b!@mww`Wl30(=*kI?LaWqr#yF929KckW12IBayp@R?&Cl0LF(~6Vy z%rka*3du>t&pP~BlZE)?QczmAB9hhHi2==jLi%BmoFZyafZ2rz8=6?I;w?-+XqUvs+6W8Wv&&Hecn|7T6l|cjMXNtX-AKjslI{~yshsE_5alvZ zrv~{7zwVNY<1Vjoxaed+HEk7L`nir_h20f~dX8>YyKgia@cJ6`SMa-jcCSlO=Y@%=uHyLp zX5qSKEC@J6RBMdCtVJvBH=hS51b{c^y?aQFHy!M^39(Me*#BEfpndmA^9Ib#Ew0Hm zciM=r9J{_F+Q5wMt4Ewg`AUU{NUa*ebNlb-g8!)npq0-X=GiiHRD`)76i)hjZcQ>Y=#k)Y5B0Dz7O>A_yC<*#K39C}Q^6ClB}b%mwQ z<^=6HI2~IB!7okfz+5hB)o>MD|mOG2Xm`fjE^B+dx9o z{pOEvXKvGrk|NZt{)T&Y0z{Cu0bu2A3(;KHUyDwRyoK)%ce#JslFKebZ z|Agv`(>gkPX|K{Yc+b~t3|Reo*3g}01OM520q)??38{`|9H}A=4!)E&mQdX1>lGtP zAOEx^%_|D5(q9O^K(H{~s(Vg`IFwHkSJLCund1s`e5s$^m$ zsh=>_%Z%=aH$#^aiN2ibk@bQ=a=C`(M!Cpd{g4<&c|B&Qd7jSLZV5k=(6O9ORC_2} zypw+~VBcrR5n_SP#8K%f<=`T4kZPaovZ2HaDJqO4^I$iIEvY>9@92g#LPwTyO==61 z+m@lAd>nkU6oNMlz~LBWpB!Qy$Gizje{*U7>A?BzujO~$5ZPO{WxKjV%Z4}hAxG3- zw>o~6+Vo(Lv+S*>yAthR+wb?jrrzp7Su<|kkC6{2ahVw*HWB+A%`5UH2l zjITX{x)f;9y``$-9Fcv2u^Wrxi@Yef*#6IZ`1T-puZfOD=lgG5aq_70vvLtjC-R)B zjv2dCq@PDUKpI#KE%4ULTI*e&~B zAv?w8;;tXB+dH1$yW~Z!O1Krh<)HL2jmG&mc@IDB`ZvYqniZ+rr=c7DMSByxZhwJp zWE&fG6GnGX=caqrK-@ODpNA>i&>o@L6Zc79T9(z!e)(vw4RMwTPye)Y6w^`yS{D5$ zhN|fiuK5L#Op`r$cu|tPEVNQYqdo84``MB|XHXmwP-$k+ka2&6!r#&~CPtCiC)PxZ z-+n*87GADyKl-?tiOI-$aMTxUF5%Ix&!l2a?fwxUn{qG4y{hrMzf4cj?cIzelFb7TOJXR44>wnH*syrl>0@t6ey;T*c zagc%*Bx8sb0ZYZSt16v{))A~aHhJf6gzNSu-Oo~1QBRT>5B&GqhT+}2Z{LO<4FEeq z!l2-xaRVlDJ_<>1jP&MdQx`TpA;sOG;!`JgLmKFRK5zYo_JM%|z_3(anibSKz;u%+ z?=3=SuxXUPAyjQ_^Cr|!f(|l{xi-yOdp?&Ubvh$0rC2PmTiycgCw9yEY?`na zkVJ)zN|MDIoJ$xpwQ7JSN~Yyj(YMuq1vD0}WvSWc<7)#zJ_4gvppU3;( zUxmkt9GwvC@B%WRED3&&LM6j7OGV4{*FAX@-gYx%dF{ZT zOfK)oo5dm{Oy_MRhariO;hu>n)|Su}5!BDR=K_Pvjqg^#Ya%8jbV4;MCvmmoS80zU z*o_{N;swrIwE13MAD{^rSQr>PFRu=GzuyS`n*A2Y8)KjMPcw$j4pZSwUp=3m@|ygVv7`*INWr@;C^b?JV2k1jh$m4#<^! zF%U_yTS>5E62|2C`kYY-(5zs&T`!6uNJ;qu^?cW05iAr{*u1>NdZz=UBKhrRyJfhe~{b&rc3 z=3Gx6rJ|~;PxnF)-kAoqwDiH@S{)N^-T%(GFu&J03(|;b%N%JT8CwBNvYuFR*mUSn z3e$rsgmGGk>u!QG8XDB18=+Yq*T+HRCEp)bCXF<-S{ z6L9wBRa!|r@$Te$hnWr$KMOOLc#z!q7S6RKdOi^xvbMCacw}we`h3ZOB$i1fQt6Hr zw|~CHTDFN5;Y&Ptz+i6NvWX7FBs#)%9pt+1;zYM+P*7#}-2U(MNg$U-x^)?n%J@(c z2{F)1!$X_UmqI_JViH1!6s`M#mg_fpJfHzV;ee-HhjW~8Jws^7n@Q}Si&v>Nc0=_n za|o;AUDHNtv(`=TJABmUd7^C znq}E0h)sJ4{fA3DBL@Lp&7fizvlU41=i=&tx7K!VzRwSiWr|%FPLKpXMMc8Z3`9GA zG9P3g;O;uSTj5QI`n(&92dFAmFUh|u6#HAK5#N8X!f)Dqk!vEPx0B`g3mLy)>%t;v zEWse>Nz%u50KBpuc1HBM4Z9KN4aqztE#U5S=NIYfk(c+aLIW_T)dW@J?V#l(hvo2T zpuNrXl@IsgGTw`qHQ~<-Q`sO$FAqhkaf?B;v(OXqH*L@U0WJO2Qv$)N&G~S}-QL8I z>9PRuSH5W6MY=7wP<25f(p7I+=c`}u&JFxOXvCO^nlJO-h8iLH4dkMZmv+mQxBxF4 zU68a`#R%o)Pf1uisigRu#_vUx0n7>Ur=V#$pf>8+j><$!=2`L5NUb%G8&(EE3!1Ii zT^t~y8%M9?W4&C|Aukm2dAoC$^`&>ccyaD)Z+qpMDCg_-jFqhQ187%5v8m5mXxph_ zhV^R3nCTEg6@B2~L4z0jt^h}QfC-3yM|gXZeR~bz{^&DmA&yhjd_O%a>u!-}Olmp5 zzp$GN?uB>P3bJ$-=b?T_Dt2G|YxFUK604qCvSsK_dhuJ|@rdh+#3{m*n;lDcUJmry z<|6u8Rd#~zq0s&mL1oC2P|$ZDu_JW+5CJn;YWrDwdTu2kbovlkZhchFtwV#HFc(5( zMGd!C^Xww;d~By3I&?EqEttlT-A*e@hjzEYLFwt~ zi&avc4onc62lOTFWoMl|y<Wm7P&fwF0KU=;P=XsJ)nR6;*Q4NV61@XHjDygADFW&5EqZ@JLyu<0BKIb=q+Cz5W zwDw6~rW=7PS7{QXP%eB-6xK7#5xjuZh$UChIy<1sE`;h;0YS{Q@STssZPz1_Jj14{ z^YhBo8%mbzoZ0z9!o%88Mzs7snGOzsf$DTX2V61zor9jNxZBd+Uj{o z3uPZ|l>G;5Qo}H_9qw*$ykg+e(Z#x{I~MB&K_zX$_ygM^70^#h9ew@%a4>LWB~AN? z@401S!V6n;=*5dmoiL$gC(=sjWLyAr-Cr;>^Wjjb!B~|}wZdEHeBlM~B^C{#e{8LK z=BjFmSh&sGuWg02z65*~ROs_|11Km2lli*2)bpI8WEnvtNbXBbp)Rcd|o9 zp&TR_a8!;?pRjPbO1@>Sz7M}&C5c>+wpXk_3dImBcUDf#GFVL;ItFuoUuQMgmmk#! z49%t~O0r2+lIxoE0huz-_kV3ltC`$;duIJQWr5Gkr}7>%;Y5MltDOqBF$E!3JTvhS z;#v%Kuyku%(mI|<+Ow}e80bDbR-#cYaATZ}qV4wq(m{+0pRljUL`-VF@+77Q0dS0rB_cvnVkN#y1Y!P_LouL^G?agn4DOUH|G3bWEBp4vZcTFaKf1?p`7 z^GAU3ev{H2)1@q~GnI*8J0oiGTt5)bF$yfowRU~ZwXb)W#`dO7R#2!aa*O%WCq z3G^D7Pmekm%Y|4fov<2BC~&f#1DXuFRM&pyJO<560ZrC$U*0c5D;l@Dop+dX7Q}aC z)|*tH^p}kZU2CzMqAaOWCv_M0f(TCO#C5bpd39g(F0QaaqgrJ}#I1FSD$u|_0@$4VjwQ) z>(>ZPGR!&3`BEn#Gec0YnJas1ZA~IPcqiBpO6yw=UsLhD;uO%nVtKhmmp3Zx^fL@^ zNtBiz1eeA9?I&uE?{g8bqUDO@s&Ix*<#Rl%!xaOn_Z4{w1j$AGPNUx9|HIyQhc%gI zZwtbRAjOe@N>#^3wNRuZj9oyKBoLZ_^e%)JiXcTrz%qc+0wOJ;w*&%&A|N82&_YKD z5E6O#bX0GW_tsqGevD^_qRpPSNEN{ZcbRI62>;XHAb_)=w$vP7$Sf+k!b@kNVv3vJkyL_Nh{f0Bw zfslI>XE?`rym8T`fNT(){C3a?V-?UXMmJxpZ{8Nk_A^!goTU;qmtV%&J65BXyj6Yu z4aULy7hKS8a1Z?~5E!^Td{`gd=8Ur%w0jfwBe1MEczm=P5m@!Gzj-s!ZvH0X@Fsc@ z5!7E{#zb{oPfpPhL9m3Vf^YBY5Jv*@T;gIZty?mwN zwgqG52Ja6iY%;ryPOa%j&Ug5w<>uk4uwH=GG7R90jZKXKxn}QS7wi6g{h(~W4GXk@ z704rHbG9TfDX!J%4KoGo3}qK=OYda7XTGdddjwDBJ;nIlF-?lAo#~4+Ha2!OGOaLp zXqA3KddlaAEY|Nhh)J2X8Jt+hX8!BQVz;d&H>Lf#8tc713N_|$y}ao(Y3Ojl$3Sx5 zZzFM@eb4}Ctp3QU@;ir@f;WQwcjS@{1^=;)xuvst5?B3YNOU9bjw7OHaW5^xhzytC z_Nx3dvGASSf4k%FVI@hr&9PD~=%716+eOz#0NMM*lAF{rSlhbshFbo|lp^ET^JU1s zF;XT)AS28DR%hqFlz*@!gA*mrnTUG%{Q(N}k0|l`A^M)+Reo$K3;j`QtzU)7LpoK% zEiuu!2F94|euV_YRVm1Q`y#2-WTFhl+*(em^*>O|{%QID{ar2LAa;$#TVDdZGs`9F z-YO~S;$_nwb{}!7#}!P>8lIi~NI004_3vN&-QNADj>}<%9v>I=QwI_UH#1)0TnWPj zsv&{qbn4Kl)gNhn{jt~o?Z$3l?D+<@rtO@i8Y@fM&^Jl>-|irP>Z$(zoA39pWko#@ z{>L2oPtEwZhX5`nNduK=s~QJI|F<8|L;;*D1A(jmA_w$e8vpx4CSicDuL{^A;%}xF z8@m%6*6*%AZU3|1{^mNjd+f!E@aDlq^0C758ftlYIkWw??sGs5X|!O_(9q-|FzFbr z(G`|OK5BPlmd%`;U2$b)@Ue!S9rY}$8I!S>epNL^FNHBq3R6wZP0^*Q7ytTrn0%#N z#?uEnOGMfDUB(7;Hk8Qge!REjYzK!NLW%M=4Ixyv;Y0;n`BEG%QCQYlyLr)$3da-| z&pVVg6^#Bd?I!o(_yk0O&`_zSKL>_hd0_R}i&LqQ(lavx+g4T{7o7!~ ze)oO9H(&n!vs!kJJ9SLf&cQF!e20ZZ;0@Eo0LtEj$uuFmAH0@vcMy(1AY>dtr3ib+ zYX?5ii*;xII{6c;%KF|4JOKXoN4h*cZrk`lgwV;=l-^U_+#leJBFT*vx4C^{44$8oTYfjn1x%SP^oGM7yJiw)SHg z*N%}PDmA|+5aPtZ;i4#Lm|u>Z=WKEF90F70nUHBE9z=m+%FAm;ogdE2y)7Va(P;)} zYvwU&OtGU<3A>M^J=_w>0@(iLPeYsMEScTQ14E;<9hiB0TnF!$Y76sEEAH1ks}wNh z+eHNsM@IA5cEr(U`4sxN+laG^%iszz&{wD5H>-yCz=4gaqwQnMMF)wPHFE6aDh7hy z+##(fjYa5s%h)M)`tl#>jj=2m@7TTLi>J=JG`H&|J1RrrQmf@r0Aq6&@u0w=`QvAJ z;3wFkc5?sYa-?!c4{UpsP(vhkyBaSZOeP141TwU3Mz?DE0zZO@oI24%HLzLlH%))l zwkLgMP_M4rIL2SUkIG^^9WEo8kQp-R#utm=;B?azm ziDTA-;P8>CXdXr?!tl6i^H0ip>*`MuX%>TdmByG;0UV}RDTMU~C1s`aqsx}jgfjV{ zz-BUJm*2p=Y!xbK`QCK9b7wR;+0^XhJ~GshZvc#kbtW5 z5_m}ikp$M-ivkBA>ttPL`-;JctJ51Mw_X?>vkvPb5UFS*!$mGKrSe zs@K}otk(mwbamzIcdT|FHzxL0q+1T8! z8Y&Ri&ybQc<#=Z`m}k%6#6(P6Svh;xZHYyUH89Sk=n)T)uB8_TVWcno(>?w#p3?sr z_V&A}Z_8C%^9o(q^4~mS?N77BhE(5!I$fi71w5iQ>1asq3dC$U{Ki*}dPta7lJ)&&nZmR0gz(bJ8_Ib|+;fu~*A$>66j zonsro#AUi|6xED!NK3A%$ji_Dw9-}sWP;TUP9iaZ!_|mZzrd{k-hjEa+)pGdW&KMGazjx0~Ilog)UEKjp<9ZoHh>k&}_ivZORWC5gDP#jp z7`T1v*(gdhzY}wTIL|0I1!_nfzAivm?sNzDR9sY2ve;2V5YF|n?>}Z(u*aKG1Wi>5 zodRV;V|V>MxA~v-H}1C(3eB)a79QI}%^ar1)VWa~A4qjvA*Q zV9hPeNf_3R`Sf-@)9kcDZ23Xz)jNZEmy(Sy^r2h1K%*;sd8M_xO-cS zgg~V9gjbZofN7d@SV%KJXS9HNTg^2z<9{@n(XDtRn!QX#-W1ChL6kSIs~>ki46~qMV{blo`N%rR8K-wz zP*5%w)GK;aV(SY3I8XD<6Z|l!HNBHRI;Megv_P|pbuc+WBZw|rbEkHvZ_VHq*0j|g z>1l?V+onJ+2R(S71h_$XiPBbi7tZVmH(V2$c|l<)>9jDu@U}^8z$cl}GehhgKqVR9 z2k!%Tr2{p>-6xDD{7l*S#H>tJ)6~NRWDau__!1uPN7gf$JyDRsS&Ka_4Mc*x1cTOS{k()HCEGJaOtC{tA@I{7FNYMU_QP*s&t&LYoKqo3idLV{M<~wx5tF2XB;zg zZ;!fkm1ySN(0+gr<#^0wR9!kSNPhIh2qSBna7~F^<>Hzw!`kUTPfV#m-&Oys<~u)J zleD%#nANEMb-b4yMX-@y)14UA6^e=n+xgho)b!*^PkDnc?m0S`QU*E26UM3^%tD`!J!euiu!JN)}2K zaB-0`DMqcj2MJlJFmrKv6cG#n2=nriP!}JuZ`Yl|4PJA~iIjX(;IJXo7bHR~G{R%Z8Nbm+9ku|jTTE9Uk2M7C$ zBk5Y4GZBz-iM47u%G7rKJ9G1)Z4_I9b7ojW&y2?WC3dW>4auYocFWX&$OCF2+CI@k zy3|o<)06$nn?f-fPKHGF$+^G*iF;Z7F-AH}EXmg4^x>zqN}LN`6_NEyUXOLY4Jv9+ z3ffiB4O=5SmwR7Y9RCAS?e~E8|3cE*GC;g1FpuZ7ipNn_PH`1m5FziZTflD;)VDi< z_@uxyrE1E`NmWz@KG}Zfn)KVPMq!IBPxo`(>-Pt(I-?)dl$A}>Z;*2gyaMUcMW#2t4a)eg5T(Nn@ z{E7+7PIa{!KE@rpRmI4Ewt9q19X-F<*H_*{>+hSIr(~pf!(zv^6H`)dqv|5u{Q$Gw z-aMsiWhi(k^wScGKd2cso5jAW64o>2;p&JW#@?D^NFz;E6nkJ*JhqJ^G7UggDhv|(7&9)2@DN9BG9w4eFQk>A3@d4x4|3}O*s);+K;85<7LBC1W1P^X(_ zY%U!njt@Hcs76GCk!h79J4x7GkK$HzT1?g@OaY}W+wKV3eQ{2)nWpzpt*Z~s*thrze9GLZ^l-Ro0%ccZsS{Q=X8-dQyGW<WW^tIO(AcG>W3;>WAN6{+SAnE^-`a1y zb4{&_R7xeV3a(!FwQn4$l%HFvSUcxcWg^=USzgoDCavMvCh;I9Dq7g^cI=#X>$PJ` zkqZnU`uo|DjIH$XUwcDLoG>#7$vF(~%O}!VkUbYS&!BO{G_x~xwu1td1gqS|ycbkg~s1Z||L9DO!(Y4ARNszHHty&0FVQn@!tIcbX-+9QP(j!LD>6Z$!g$^+fL|iwgH;(rRrro zZSFpK)neUkM?y0n$344E2+H__`vhld!+h4k{M9mgtB%(Y9 zRfsR@!d}-7=u`?AN*gy(u*J)6`F}KH@iu+_s)X)7TEBw|(bFC;Wm`kkMGTi|G4KBK zeEDy~mL={6-r4Zy#C?*GG1Md_?1WzckkhEagjNW{6g=UDm|d0Gq;aWhI{g5l#b5u@+icn++%)$(W)!`~)Vdf;EPq_}>o{uvhu{I-0H}4E8Bls5S5GGjH#o?S zmk0}<(sVNnQb=@veQ0XJdPUWSW%TMD@8+PclH%ex04B|El2WRZY8h?1P~=1_=ooe%_il9I`1JI{Khrf!`n|Z?a}?J2@p`>9TLsqUVl7 zf=tcqv|5_49(ry#lCFO_aKu+UFQ;-FK+X)kKNKSwdvk|}8}?Fb_gOE=`ytz~o>VL6 z5PSXZVFekdN%XFlnAx`pT+IU3tp<;R)eB;*rv;Y;ofwaB5?cceJAIk5mp!5CV0XQv zV(>$pKY(WK3FZPlskwG%oyO+?{b)LN{!BCf4h@mUT(Fp88%Aha#wDIT_d=}j1tZkh z%uIG-<`j*pR+4I@AyVFqr^TE>67H-I#NvOklo_kS>_}xo=?80@X*3tDW&&9?)-xH z;_wO!O&W&>=C$9hzdt=wBBJ)A!yDiTT6xyKJ`^}4M2fK8wXrHJl$>*Y8Ur8HtTaoM6 z*^_VYzO0R6%YRXnfU+XDCYdF=^rEe`K`vnD4x8egH}uNr*Pk)aGH2tkg@kItYQ=Eu zJmUtqTQk29F5@Lw(a#7FW+3nQE zB=2bV<`5i|gDAq;1QR5CYl+v6=(I4kbhPKFx#H<{z2+PE!_)88Q{up~%--_p6M|uj z_R!0zn|Rs4kAbsl=7VLcA7Sp|-XO0K^*^4Yn0-CZHY=~<(9Ai}@WD#Wd#l8)H4bK0 z>Y7RZ@LLeKxA^m&%A>MBGmjAUqPU(g?DJaf)B=?lgJ%>(^)M4n_?<-s zi{eGfMbRQ6>*P7AJ=vs17GhErbWI2P`gDu0Zkg7w=}> zt5b^&d&yDCd1lRTShFxt|BRtCdx`A(v$qSH-G{EwnU?~htkysqAY*p_lO zRQz}M%k3rW);sMwTB)q+8b)y}oAB^u#1rRlt;4qoPMzRvnWx2JX>f+I>l;$Bnwadm z-ykhy=c_B%uc>J+fVzM~)sQu00E3x-=S=Cs+j>f5WGe&oVK^+j-dMSb>pQ-2u;W=E zrPAQG-T1L=*xrltM}7E=RXeixMIKz-}f1f~e|3neDrz?z-|PA(LiB1HaWsr}76$6g9X)25pnZxmU7=jpya z&G-t32?0;}*$uBs;#2#2Kr=irn>{jI(UF(u>cb88=ufX+r_(E1TJ~oxsr=QTm=7!S zH2`RR`9K4>)ey(?=xD5#MQy||V8-tj0g2zS>4!$>`4sPl=~q3DKRV(6*C^}vVRK6c zq?^sN(pzc(@J-plGyI$a4`nx)IXIy5DAaL#?eX@Xh*AD{Nq!pOWjgxY89d3xhc#mj zU?Udvvsk-+W0C%N{rCTonywkteD?OAx%7L<;c;O=S`m3dA@P4yRi2dsB&kcd?|uK_ zzIVqzeAcf2=n+H7vgGU!=FA^1{`Y$Xw*zCYLOl0773!~b!~bvm{~!7PGQ)mgMrWnm zPVS|m9UXOl2p0OGDf#<9YS#~bG%GWGYi{V~;lY*Pp=|ax7u(YE6kX1>CisK9{+HP; zer5a<+c0^(66d`bTmV#B&+@@}0P3qQwpo+Z(Q3*TtvO@iMEbukqd#@K{71F199SqC zOkXJJ01|=D@ohFECwMi!*dqg|zG6OO0XF?=D<8FGUbmRAJgoe&(D&~)^?N<^;#4P6 zVdX*;KoWM>Q)52o#Rzh-(>JDKDgk4zA(!jUS>u>;GvndgN?r5+u_4joZaI6YWU>%- z&Q^UMfJY4jj-}ex>ufW}|M*3{JOU3Eyx)X~!$s*?ZOt4h*|eWlXQ zUrR~=+cAG|WzUG*{Q8i-fTh`AwU6V#Y03#%_nTaw+uCrOVOQ`9U`w$hN6MR@w30li zJIsA9)^O>;?(O;zV{>!wFs(Y!Gj>HoDOhKBMIJ>OQ+%;u>8465}YXIX2C+wn6}RHTj0D&HNrxVnXA1M^V9x^7C?7G zNUV^+3?aS0+$q>gZ8B55y1cBaN~=~aykfEe4*e=~ETCFYy6}{>Eegd{5%_7$b85;; zrUz;NHmhIoDQUG1J2?ign1sM? z9>LBlyc5D*jr#@1=Dl?DDiTIAv~&b@Oqw3yWDa*N-Y;tkyF$#D^HdhxXW-@Syeoal zmE6~OJig2{HqZ>Bu@&|o7uoNV^dGroeKr}X=|S6(F#-<5z#8ZDN?-oOrd5T4RfrK=Ms^OdfR55 zSMSw@YKWKCG;$N$`S`j${+Rl+pI6N+gDVq}=C?yy=k2nAL~&t#g#(cYQdCiKC1hn$ zVkb+hF(+~2TE}Rep8DZbxm4WVP#o)-?flf0f!XVCqHNhJIcFy$0l}Q-oG;1sVgBl4 z@QT%x>_`?*Zv+0Z@n4)7c)XYrEcUz-!-tU#xX zt6!3vMGF?>72uYO&O>G5E2%Y^WOoKFPiFP3Pm*`Kh*lG7IA1}|aG{vzlxD8n?Bk+V>_D zJRrek;<;Y?UQJDZ)ZR$Tbe{rL9P`yji^gz%vS()ld%1ocqQC6_)8^;@MpjcXc*o^X z$3xg4sss%vJRqlSV13n9-5gl-1yu^La`UwCsP%|Gpy0F*7+C`Z-;#Rd^-rHrAXxyJNT~iYN5k&KSkWU zpP6F_2ZYKQaUCR>1g4phd!L#Lri>NN50t@1oQ)dkb>*pkszHbQl+tU9V94Z48Qu5a z^seMCx2j({yb1@@6VZtWW~b6Q;32q4S?5GBSSNkKtz1i(|}9IxKWlvuS!@G5Av zI!oFiD(>0mx_WzeQ~@EP#B<&QU)nr7!Dujk5%%6h^x>w7x)BUS@sng;Zm3UY?AB&Hu^b2U2SR|GAacE-hi%3n;Z zpK8=fn<|PFi26yWS)cTDD?P5&nif_H76EF$o^MT$3-d>VaGw0B8Ttz ztS=;#r)5&kaNNXgu@aa|MYJ!4tJfwV!099Z3(Cpye2xxMP=bhjd{Sx%w&@bFj8 zAZbJA{v*FQkD$noX6!K~0>{lvOms8tH3gGGAK^lpB5$>}R8AfN${FrFC^_QIh(j%B znI9-AuAGNJjTbr6UR2S*6UzV=!lx{!fitS(^Jk+=HD#ahTZKhM(-0@-p{ewU6xSTd zn5*F)`ssim3X6Aj9Hp+XEK@GAy=ZguirCMt(Qx%b8FX;)SE$wzy_JTCkQb^3F}xRN zFU{5O9nrUPaHt0j1&T#j<%}g$Sm^2b_bg~WyV_#)O6Y!N*{P)JcKc*8O7j(b9|j}o zHQYap6%k|~Fg6}(Uu|NT1;nqetT?nvO$-QdCVE9bKfN1pNms)d@;TB2)EPvOB~|mb z#|B6Jl@-~qC9ZbX&kR?Nya;`EtCsX zzYJXj%}_FOlzr_U3yf0xCg+wPj>IX&*mGWvV1mmW!RYA3kTH~7avvmDA^?Fkja^|d zgj`M7-^Is4y9Jz&KubD(gk7NHrWR8hx}5fan)$65w>KaNGTGS9$lE8araXdJRxo5M zFY;QcWVX*U`t#t{6d(K?S3sv>i!VShr8Fq zestdUQWilG+}nReI1S0UUH~LQ4I3AR{Q=|%aM*Hcb}|^)ZnQC!h|T)dm;LrkXN__g z^l(M(Rm96UWMGV^Rx8-%-R_CC7{F_R0ayAp8Sjta()VM%W=iv-&{=|yyMb6 zdcIeOOSGAQ13xtuJP>-5GSu|hDIHY_DCa-1z0hWETB)Kvi{3(0e#>RWQh!d%Jh%0E zVLJ@~1Z6ig?%~vniHSOO*^$})M0*1j66omnsbDu-!yrvf4qVHt6FaP33v13YkqEmX z-Lbr4Wpx5_#T?u!6j%9XeCM$ezCcpaQN1dqRUwexa-NM0vg=nmh{SMyaC{5PD=I+Q z1RAQeE5o-RCr6{V-g`(rcO0=9kswHZ9y^R)V!RQFH!1hs*2c>>hmXjoR&V(mB5Ai4 z!}b#kW>n!p79TzZ7MhY?QvFgr7VVe^j3+iH*^e%=uczCb)(yhWPfe;^<^4;h&5s{j z2o!g(-8#vh zE+ox{ZXjn&6VA=sc2CV*@_c(*S_e z`riRpImygnnHtFydNA=fJ$O}b$-AjW~mm&Qar^6x3eYfPOw?Rmcbk&uvx`w@f) z%uu%gE;Z?f6NAbS!+5R)xocJo9~h08?n&veOwJ?Dtu~u6(jDmcyi6wD5VPJsLDU5~ zi78Be`sOF|?DOY3g)MB~OVzs**uc-TOhLgj6=L*Dp+i%s-DS`4zl2Jc!PJJa4=XBQ zs&2yohjM(&{#@LrsAnHhx;nrfN|SiU5Zuq6@H^@tWaVu zZPGJ2-94k$;eG}8=vS7-QU!pIAqjJYVM~I;!3Wh0Dxd?#!K>|ly1ziXU!-l;mTcM*WQ~FA`@9>MeBC|3=s`Ap0d~i*^$TI}}JeRE# zz?)_qhMHQv37!K@LhhaP1*hmaPAKmcNiS7DVE72(@bF#6v+BM>aXoHTcs~HxI?ma| z`(=vH=Z)Xerc~cx4an3ajad=kSUFuE;Zx%lI9r|Nz_8cptK_;2>tXy-s#cO^svpcW zr%ZTno0ZMTI^fUf}Wb1}?l70}X7GOGOg95vW@GR(n6Y<%br- zSJZf~){W5AXIWXmUSmb{ca;Thh4o9E*a(PSj+aQ20upq<%$R5wef>zcSG2>srE&>- zC`G@h*4aRbu)US{t?Ydp3%mlX8c^{u!ULgNL&s9pFJ2^h9{7}TEFM$qpLM?m@@^bq z=Z7E0?bgOp-icMLZKZIuMvzJjZ4JFiq)H7%fb_X@e2<7qb-#Ac`I{abg1n)dlcbH~ zFP0F;Q`(mZKQG}u7U##tZ%(BU#EO?V3t7pP#(Sk8w_dDh%2^b7!%E-jr(>s`(t09Yh7_J`? z$935WT*wPvus(Oma4mL;C@XR23E}~E0RrjYRS}sqbh~A; zv^Yc7(?w#b;66Tt(rnME=IxN2p54kW~}U`VvUyP37r0p)ocr_PG%Q&p3nXedCv7|G5x zrGwC1VJzlp%A-WHy|aV2PZ>#t;$I(h-kTr_t1>z4t=|#B?mfllX>vqujoyiBj&K&w z&2B9zSHTzB;kk}3cF>H#0p`t8d6s^|q@9{}L2poENSjo-Zx^j$Jg#42K zI=knGbj7%8&P90G5ZcQ{@=J}apy%x6KMD!Tpfy`h10@C0n!ld>O{qoj_Bh|dIOR-V zAwG9THVcTBimZr{8@B~XV+)S!6SUvDaQpJqCC^d&ic3ktP^Jsge4^bYuNaqjn~FJ? zoxs|gCIXRW6wX!L_rBEv@1P$bH-}ihI1nu@e#+66xrHd>`_O!_WR#G_A9?jCNJXe ztmi-Fa&nk}g1HW0d0|V%W6nnG-eG5BjtWrNwgEr?)~QCqFlfVo-P-xyWxF9jf>u+} zr1S;AGitOXaS8VI^}QB>9LB_FK7!i`3CM}c#5c6=?fCmz>8BVGS{%!+f={!@?!zra z^rd?!<=f=*`D8(g#se_SktkMbT5*6s%cD^wC%?A?=XGRhBT(3+6=de(iqH?+_JPfo zG&P=DR<*cPb4L6*SI5NRGhgzbji<4Cz6tEM-DTL~wW?AHm4 z6=sdnlOz%2BL`-3sA+g?MNyMoq4lAmYrC`Ov@Zk%on=VEi>v5^K}TkKKKLP#mO%yf zpXZUzh8?tny&7^k=b=`jf&U?|T-(K_eA+6eJjJRFP^k#0H9a<5D$&>svyTYlcOk?B z5z-(}I;cSjpC6Gw)sCkBM7XeH3`=ZXd zBYHOOw3q5{hGmj@37)wj%RXVFRJ?3A8_t+ypNM_2AWF$rGM z6;%Eps8m{TYX)GUMT#r*DXN5T!DXBW!!DrC1^qT9Ec2n$3%>7ZL*N)_;rIdPYeptv zZ4s{`AAaS5HH)aoTv3T9GE&`kWKPEYatgb+G50zfvQW#fy5VRfte zZ*V3u6#(rCUxji2{DA4n&Vs&zQu*%}%N(YODwK2s6eU=ph;c9Jw zuXQ65N=e(PWY#1k8ef;;JbdJ=ciz01w|M?i!H#I(O@$bsNDE8>s6woO8Gc7ePY7AW zQ2ZAJI6H`qoM~!r-mcd8<%#p-rlo13A^obr@ao<}N^_0uzP%}xh#wrFv~RXj*IB1UYi>CIT!w@> z`Bn%`e9lOimHi~h=bj-X%^bX&X&S%+Mnm=(>kt4TZc-92A5l;jwNqsud>?!qdM}oG z=^Xjm5HEXzqN0$6W%6qPHpTOLI90mD>9RR{5PbBr;dP%*i5q0<-q?|6=0R9HEzn2# zU47$Iui-$tNj)jg8ngzWuA3rq!8+ArA=}EX;PYxc_Kq6HkLTu$A>wA>Zh3r2C8w^d zi^~?X>t{dN(tXqGFv18ZKW;3S9Vd^Zoi~(=qv&b%%o%I==c3Xak?=SCZ)9SB3V36N zKT+B-zq@nnwy6=2kY(B69+O>PuX}71^xUAul-#MrS3j8}S@@FEU+?zw%|g!-G3}bW zxX-=3d8ZAk`WIi_Ia1xD+^}IFF^cZK)?uep6YyK zrt&i@XD*N)!8T@q#&p6=C1ac1hF!xRfsO+N5&v9!&R zL(3}Cn6Z#h8$9&pf<4(u#1>z$ki;E3wl1tSHZ>I`UNZyTP#dmGh5M4wG;&C2r)Sn4 zky}dh+uc`K0C=ZSD=OZr8$K@#E3)dogqgpw2Y>F|xa`9_=Zr{x*_{QE2LO#CBgEn_ zf?}n5s$u=W(DEzPN$Bc`Z}YgkKg2I_rw3ibwpj@haEz=pVN9Z%@{PTgAVg1B$ypw;FhDC^9JSF0T;AEtU5NH4-fSiFz1&eEIyvFC$z$&pT|UrX7d-U-Xj&sh#O)$ z1Bi3ul53I%8V;mi8Hm(-NWDs3a0WgAF$8UodAv1Lz`|95o_mvRi5nf`tZ&v?T-?vK zU9gGc7d}wayqfX=8y}eRfGLF#V7>XXT!$c1a)4J*t~sUA%jopKj9|t7UyrTWoeNlv z_{IR-J3s!}l1|5MIzv=YWz#8$IT5q* z3@7V1F$D?sX=cqp3%HDw-?484NvS4c+^mZ3gWgHIy)EJ^Vtq@51Pnl>@(uj=@hcG0 z4bN;jG;_X3X%+QNNkWKz7msj>6aB&?B1RsyFK1y3Y+lzZ>4D z*VezwXf~ULmy}i6McZVfAL-h%7lD0MksWXCUDH;Zh?i#bD~NTqyh?wJ^X$OlkWwlertf8&@S<``^?VAND!*-=IVQwZOA;H| z@*3*duCNQpeH-7-E7EUvGqlBM@el77S*2Mo51eS6DyH&sg&jFyg+ol@=ANJ~6^VN~rk53AQ zab?xh=(32L3#jM!49aMhT~I41!3)S>OJj;^CIAAD|GIEgD{Rk0AM8SSczAAtXB}%L zIO|y-8Xy^UpmtGFQPCT=z~g9E)^@KvGse*45+v?($G7gYS@Q-Dj4n@6r2SDAb9;rX z*uElM99Z24n7xos&;DiY=7;SOykZ{N@KN`NEi>``nl01Q)2VnRp>6Erb^m^9hJ9bdHLpi{qw(uN%))pA^tPA^AVz#_osuJ^}fdMAdZD&sM3QS1-q-D$&F{NanvpQvWiZ-~V%53V_ri!z9SRj>9bNA#tm+4>Ed->azkF5g$q^?VKw*7x0HU3Y}A-MGyfO2|4gnKLG z2b1E56Zmic7`_k4`6zCTmyrL5ApwBM)?YcGZ=-(-_}`lEQV1ZBh5VNW;olnZZ+)SE zHuXF2#xLyWbHm@h_87oK|1Zr~Gz7rE-0B+(%75JZ|KxAEz5NQw&P>1jzX1V*g#hR> z^CvNXFOl!G?Yo}-AFjjR2BwZ|Pgkn!|2B5q0>Ick=2gc<|H=0Lv5!qoeN}>*v+ET6 z-^T7IU_s;S_90Dw#LD~rqWwp|$h_91U4V!Gmys7Xy$_Uqsb*3Z-8ATFVWeQU$rXDV>Hn#%t-YeC=sbPt1TU^*TLnpV8LJs_S333m z2?pfJIIv=Ekrh8)yx1;QB9TZ9SY&Y1Ys`1K>1#b5*sK)4PYBhWjVbC$*}!^0TRtd` zv8K1XI5Ivy9_6LHm<$w3@sDTZAOkUD3y3j>>+sA>CgZ7C5Xskj>LU?BHXfTv37mQR zpaPJGl^l)_+SIshW*!$jw%ta@xo*w4daSN;?WHQpIbbFyRmg zbW#mLE1XG$-Ji)Fj6M~#vl)LE29vO`u!!DhQdr&DCw3Fk=Z7}ZfB7;>cRV^^I^<<~ zu7ck_zjftK71ZUKt{jV&S9pTpHLFQ-o{O11*UP;3^9EPwfC&*;&hW z^XAPjamI^$9K&cU^u-GgKHkutt{|nv?KIQSx-b1YR+kzMSr0*b@}|A0!#8S@6w@tU%84Ib@qgb8{^``Yxu;nuX%|JEuz31v2mX4B zpTnyIDolezZT2Du4=b&xK7IN$uH!cn%_>^y=G7#Gu86dK2b$I_7Pw+G7jK^MPHl(u zWoG03`4G12kACnHKgY_C-PaV8apOl<{QdL$m{Uu@GkiRxcbjI^+}q1v@#U3%cgZ#0 zr_s@IS0V*lzqE9GoM|%__H_jco*wbs)_fWh((=KVkE`plSoxB2ZXrcw z@imnhyCZUT03aNe(3N_7s{T8k4*34*{% zua~{z^QIZuemtuk(Nb*Pn&;#5aChUi-gMPL(U{4g?TYK_TeF8GMS>Gus&p-_tVG7XUn8+Ex22c7G8QDcR&4oOA>P@~cn;nf z49vd!Pa{3@_kMC6t1(USS+Tzc?thNE>1!PGlASB?rIH7!#XLy*rFw*@1anIyuR0_m zENpHYSYa>3f|6ucYnZwhM;r@Wy6I0Ete3_Q{qoB%AM{DauDeJn^PK`vgtNyqD1L79 z)vKQ?g6g#)FgR;9uaaS2&r@}yu2V~9RU5KKuixhM5X+qoHV=Q1zC}t&JnqHf=j8N!2$}EwrS7)A{>%SI+IxpZv2E$Y zil87$6p<_$M6!Tn6cNdiGl=AzGYyhKaz?TQ$vKAx6p);AXqud%N!<-J;VWnExo7Uo z@!a`+^AArw)zws2?Y-Xhu6M1qx6t7dZRFWhsTQ!GrtV4zH+NoM9+&+JT`xORbV&)E zK}+FAvu3g0^ie zTe)b>E1zZZjKdy(Hec$_n)e26Cyx@~+5@;KMDQ(xoS>L9~E6I zcK3JIkV5Vo?Evh^INAKlKkT#2M8D)H`&02ZSIXQ&uA@W5OmiVNGOe?-#ro3s!sn`bA?X2=8|b$_lwQ}b46Cn*n`(KFngsQOHk;cTDy zs)#NBI&rrJ;Y5VEB#xg{HC#k@Nnm9WCrOC(d8QH6l2=foBdtn$oltasT*bxwT>(pr zTDq$l`jI|2kYWmTOW3;4hu3Q6DHum&z?A6va#dYQN(vDw*$MSwPguPx5ICBjE})X( zeSwwkvm;a91963JGBvx6+Q!DmuZ1-46j`q2M6m=MQq0vSQF$j@uKRv)zdXCQwyv&M zy|RFI6}6u))UOcR+4&|NSQy#V!k|%GkC4x9>6SY@q0mGPMg^ecdp);h36>$&!;RGP zzRIgedpcIF8V&iEM@EthNa$e9Zdse+#<2cUNcTV&afHgQbJTO)i>L=L570B6-aL3R zqW`VsFdUI)%cUb^5l$d6%u!txMX>F|ZJ3fVJUpCK20_%06%jTVopw143%d$by`J&z zN@z`gu=j=1XAhqrwa2}$m=J`!4Qdb<^Zr>ezBVEf+$YBe+0nv5jTuG>TVZ|cj%b!& zyjh}^T%>Bvq@@sWvg>?h<^A(ZhWulO+Z4Bet(r}^caznUW~09|_Qf*~YZ;F=t`1ZW z9g+05_hq4d@Z2rs)7<@_kSd7OZoCdkC70dX#xz7Jq@6`SE;hWLw{1&W-b@SrkjJ~< zuV8$0z4g(d8C796s>6rfo{lxqU&Q^*w z6WDxuu+#dQryq<-rN|Ka{Bx(SncEF*FKEz3xD)fXZM@YDcM!`q%mV(t=W;=z;^ zvhdYe3>;NgT%H?F?eRM-OC({U_t(}+GK%QsHBdNbx-JGL*6;Nt!k5IO8a~e}-rYT2 zmZa+MB91!J?i%<~jh@lJJKkRT%wBNL5d!DyRc6z>DW0E#`J9cG1K-aYzf%XU{MuLC zTn|D)a2FN1OoxOrU+(39uL%$5QT;q$*+QJ(T2jy6(m8L9NNaRB2*D;tv-fPmGDJ~1 zPgF+65XfqY%XdR>J^?%3i0sPBEa>T@-ivcBRsGI8`H2G#V#&^k_1{o{ih2AVo#rXi z^t(7hLySX$E9ZdozX78X;htOHQQ&Iy7j14w`p2`T`ezfPu;d)$t&unky`25J58v63 z*K4)~o^e(-=6?G&6IaTya>Tv37;}sIJWfHxdY#jk*IEnp{GNG!y7#yCW@lr>`KG>F z;&a1pJr;mzJR9Ubs+97W_$1A}FZ}=;yI7uAG9!^yTkAyh<}xhJ=UQT_1?zNgRvchJ zJp)?f!BiPcZC7<8Ddkd6Su8;bv)^I6Y%GO?^05w zW^&y0TJ7)zz*A%0l2q)ffX@)##&weqJAHR+(YfX5r?$ZT?0tg{c~?4xOcC+VpFfv0 z)LKrTy9tV(JTN6;IVlr!a;m8n&Eocl1f_cyCGgr4w*fA8E?*f9(FI^G3#<(pc`0<` zN%GR}6PVQf;GDQb{yx+jnI45aX@)iFvTvr>L!*svF4wCw2NWrx1~Ymywx(YD^Y$NO z=aL4!BSwjK=IqFqH97@yuI^E~ebO@m!Ni@x86}y&;eJ^*Snrqg>b*1te}h7Qgbgn= z(NcM>5$2v@6DpYv7m*>DxJXU9Hv{za^a3Ib3~v{`QO^6XyyucK`+gz)oLkJzK-c(1 zy6Ykv*pn(diI9}^nYylfW4mJuWU1E!zB7qnl00j_gGll`XjJw%olzJP*nQA=mW@rZ zo&4%@rnoHnz!OHlndw?~oF(#uak$BO*K6fcqMZfQ|Cp7$Ep3my5xIC2NrRUpirh28 zf_6PwJXSB!*zUPA`eM$e#B!SLI4ddXT0!Jo7NBjiiKKG+?&lKwB$OGOtnwXwFFN)t7O#L;k&O}l|(%$OYrz=m3+b)?Rp!oNK z1A>;do5WX*J&dps?a)A)`vwQ$#Q5zykqMHN zpaFcovraT|kJ~8gxyftQS{O?Ju73u2jZ|$n z%sw~ZiGdyS1GdUWVFyUlbKf&C!(H}Oum{B&69E|+3+>x97WS6IY+7&KDS=r*1NLoD z&-b}ze)QF!8$(xW1KwPgQ{;rD`9NS9&890LxPtbjw?|{O_H45@szWHH2X3yjQOL%G|s#9DJcgHN1yh00p0JkI#?BKP2N7*x>x-U_|U~ z@Kbqh%PQN!s723aReDe7-5tU<=YBPcdkQeqOy_Un@2}zEwrc=P61b_~tn`~lRvkuC z$<8K(i#gB~9{oFC>Wtc5aW9MAGDu9L2Mb;}=62<&)LS%h27F#OI9 zq~K$gYPxJN{C!Y+n_xy6v&Ld}%v6<_U2lbOli~;k^TF)g6uo|-@11f}{aoj)*){Rg zCe(YE2f%}vgsD3Uv*m5q-yTp3sU%)kmyEU8gf=!dMw;=#CVG|_-b246Z8FU#n=mln zhKG}IQ^*ONuTgV(oOVUN99YAspmY~ZUt9(~a}CABcD!*SqM+E1YtE_|`7F4d`(5pc zuW^5(OyW+~;jS$<#ZfYe*UHn(1~D3o>I@V2AaieDE986kB~NhIq@vOS1=N*aYHRUhHYrHWqEB#JX-&^^kNyr@7 z+WBpe&|!PW@r5P3JEN)qw8@!86Oe5ZOd(CqYBQ8G6{FMr?f{5;CcY&M;yaOw%W$Z< zN4do)a#0Zw5b$z^GcF}%g^+Lg+LQjpgl>q<@It9JAIhrs$Kel{30|?Mwu3_z(PXtL z?)FG4_=7eX3Na5eTJKW@kPd|qeyvq+vmb)(#L#7|t)DG`-QbQu>P@wx4svq7$%7;| z22n$Tnimv~HK+W0?|n^C`aV~3fLO+#DfB(0V31P-vOa|rQGvK{QvLSL{vsQz5MC>i zKdul<$73pw)6!)A2F zDjAK$H}E7Lea$S%s4Mg~dxwPhgaoWPWN&_E?`o9jHWRPo#`FCMAzt1oeEnJ3=2It0 zuFey@Q6vyc(|Ql>HAcD*)L5r(5KfQa%OqXX8vfK-9uEiP8X90LYLTOmcQPlsQQlXP zF_9F44I8*G9EKL$n;iXJgM)`fZ+_(OOvK+m67D=V&ES`15K*hV8B7tDygoW!5Z!Y! z-Neq6w!|NO>l|>%i#a_EI8~Tg+sSxa#`3!kL^7Z2w;BsoMWnuus<4M&4uL55caghS z&wqX{gMoUqIPUyzw#p@nO&;*1>=jim|9Q!+uYSlVmA@o?7Oy`{bP-<|`JBacuYG1I zPyA(NKy)v!Uu#htPUf24f|w%{IUg3Ne!Vqc1`^D4ir1`Kv!%!cR2G{?IL;AbO;<(7 zD4}^{j%+P}P$7{v^5t8^!J>F1nOnBlBi!;8-Da1V-SXzQcX7x+tn>M%rI8b!9*N-? zc*)C`B}BF#b>lh>7;aQ{XGE{8d}N`d?9g|I^H@^e4vAZ?ZRI2pTFG?14iu5|SUxw+ z)vhlSIbz7Rg?7k|q{ye7=Ef(jrpp9^&PKaEv_GUiAmLJZ8~$Yb@S9#t_09+&%hTlL zWnA5F6g@jMJim$(rNCG&g)|d>?`6cbUpwEcWY1siKC&WmPiYeVti;HGA|=7jlPIv;pW4={N*_F z-vJS1rZh{aSqP{gc7r4IcT^4w@6b7J44rh4A@&aoh!$H%PovUc8SYp43)H@Kd;Hbh z2*=3=$+!sYu}g8s#AHqWW~S(Ck(-YxmuIUAkwoWfal`1MPtYNUHU}o^QDCLH+Tz22 z#XLvGOe?%3Tp{m@8uM{2EYLJ6*HaP*j(V~s!b;6T+`4rg!D-x=R_3ELs*j(aNtg^I zo9EGf;;jP&)6X)FM-|?4+opZ3D5vR+`Y55Qa&qr80};x-WrNE!NA~FN{tD54muT(= zePJTI-lKuE^jutHT596=MzC&E5G>4iUuVH&PDUX`x z@KsY9R_*Sv4vVXP#4(B z-?S+B2I|~SW9~V9Ij?9)|6?rxgmi^1Y~pqlJU`vzGbQT>fbY03eGk4WOVTWW%r}R2 zyt_+M%uUB8qDPr*ml=uklhbUce5eK>f;%-~?tf`bz)4c}+xHj9V08xl|GdINq8$_W z8M_WxCt>>g{}^A)yS_ngB1iSIK1a2>3Z5W@o!pK%zo({W0|Wf5-*Ttpg^@Z#fLu$P zgQt?0hDNdwd~MaCZ)98-W9-AS!h&}PeEOL$Oygb|4uyc(*Q3*IZt|mK&TRbv7Q*IC z&OImhgGS~a6B6_p7yP<}3KqM4p4HBS<)&_Ll!xgk+Q*QbIAtYtH00qShdc6S@mSL} zLcslwkmm7TqFugnzn@l~Y| zu+ag*Yo}UVKb##_qj%rgTk`kpwQXaqsai@F@H}&$@^VJ&?Uh2~b@?jP_f;J2K{xF& z`s$MjqNybX@jY=KGs@~e4d|bi^dAQ=xB#h~uj=8CjeqiV^w;goqD(9-NlI`Q7WVNz zbW@9`{RW!<-P|xKZ+BOJHvIX#gJ+Cx%0}xzFQ0aba}}H{O;|dB&=Ck1Rm&x+IQB#v za?|ac(n~L*JPA+OePK$HyX~;UPKjlW4G&PwmRC2Hv-cE!*TGHiu>DIGB*@EnDP*~# zZ(jJBl_ieg^0N%OURBtnt!qt94e#+_xH*^0UM-glR(i1^ArljWBJW^VWzSrN@>civU;l4_Xi8foK12Ihc+(+=-Z9JJ1E=KoxCYkyw8#gi_$t z$bBEqN0I$8?lxs_gaHJKf(kkSV&EBOupA{f1xHq!tha@d*bf_Jb&mWQ^*fwytv*Od zz42O4Sh3Nk^#zytK?gvVv#5P%<$0)IXVqxw?zWP7{KIjq#oclGlv?~Qil_kzgAUiq za?p&DtORamCdjZi|Dbk2s`It;^a`w^w{A{S#`xvzCe=sq5FdBY%gQ=J=S_T7$-xf67bk5uYSKd{AI! zV~(Stf5xOrb0>r-+W+leX>ad6(SQWZaSA~~+tt)Am(gLUH;bS8&afz|2T;Q>mR|uY z*_rkOu#PC)9Ft*>!9qfJ31JksInP@fxf8Z7ykK;~xC&Eu?%_n2e*-Z9^kVIBG4cUE zKK}7sF?%mPTShyu4ko#?%g%%%zym?QkWI4Xi*NmTs%`5lthCH2c#50P_+dy2it2Mn z3Eo-rWEi|sJD%0YNM+r4fBiBLSLlP!7oHQ#MvuLOIhh7+5i12N6ia!-0BfU`J?H4? z@irq>&zC;J=6d&?8;y(8?frD4!Fqt3q~Lr9Sy`1Nlr#7yCnsAN+X6^_oiBhU#IYeF4Df33t@W@1t;UPiHGk_%a~~-*C^?=QXf9VE&t-yTvMaM#mzl=;@MDR18GuQ z93BO9KweAObXQl`Se^{Al)QWquj8I1AhpC&2vz~&O5Ru%1_p*jI$w_m{o|kza%-E} zsz3`LjoPH?32r~W&apEh=0&`-dPVX*zx@v-w29RpyYBO3zy6Y&pO4*AuikCbaP-(6 z$l_9HLfux0wtcKbC3SR%tyEAGKOd6O13?7^8SA5b-btD8p!-~J|Ks1c!8J~22kkg!+7Eu{@;S~MvO#2^bC}xM{bu?Kb%|h<*+GpD7{(^4h z1c(mfzR7Mq*o$$X5Qr0$sozUbbjtnK4pwU>!;TRHujy>PpPNu>H!*V>!5ZP|b3KmX@}nb)s8v)6n8 zE6pDvdBNk``AC=H!y`)AzJc_T{9iv35TbKq4rFjoJ4*=G*s>EcEbONIeD~*@`R}*# z{VDUb<%ltds$pQ4;# zY~2VLBkd3co1&tkoY(%0*KhASbAtJPsddxZv5fN{Z)?v5J-iMg>)K4Tc0cA{{q{e- z^%=e0tZ@>i_lw{DUqDFn7u!0hB-O$G;~HP#uv>Y1o>Pd8x!)0kf8OAK9_%rrrv%(X z0;zb<@e5qe8{8X8QN)5cN;1~L91bImVno5Wkt$MoJ&K)C>KskW4gN<1x<=|6`9 z@d!<&5yq^Yvik>~{tlD>;(P^)z-$5yxtB)Xt5vVp7k>{~QNbZ4B_F%BWd=V9nW46W zR?-5pL4v6(kzVaH@v*Tvv#5h+7{hAHKZmISKdS{2aewunzv%zrAj=%ztOgC)(&D9= z-?_goy^w)N#b`ZOGezSnxadX{r7tBFYE-71FLAJ2Rh8@LBpDhKQekSG{KvHXz(+4; zfU;>aXw>?Pr~6lz^gl1~r1O2tVi)|LVg<1=NKm7W=&O@=b8D!votEd~ntBI}wUM!P zG-7|8h2_T!b~K4%UiU6^SKjBGYCi~8{j`}a|1_FEtn|Oz*WaF>DaCvt?d$2{Qul~B z>7AQfGGf6dWD`j0uxi&y8yI|z1o9BE6B95(;) z%?-$-o0zTomG=kg3)HS=a8vjcYBnHff-Y9XdkQ$p&6=rG)+&;r@0nRxfJal8nl1AH zv{YuG;Argm*Dq{JN?J5zQ?_=G6y)U-larrFlK(mH{~u=Af3Z7@w^@q!7qIW&Kh^5& z?$)-vGrV76f^{^OEm4GHtMnSNm!`80BuXAP&=MFwwHsDnanGG{_}6E|Ab4g%JBITYfq_BWja=)@^BV8ogIGTy4}ST z%MVRpQ9pMx3APgkTWi;55TVrHxCP|q=D(f?HW40id(=}0 z4}YIAA0{K6ThO5K@rTeyB-47WFuSNeukGSCmf17nRg+!qEYejj{utY*eMxvz7}_`pG)?y z0*il#I)CC2o)=n#(h_BPi^b;px(p)HDl{~5$}&AR_PP5POL{>@^_xAWr*C-^)6+}+ z@z}?AGQ~8M(gJ=0>!)3@L##vBV;fyc_ZAw*W1bYf*-aO4R#|br3BL9AHs+fJ90PEw z+u~^SGm}0Qimz;Fm(M<*%i*-htt;v2Q674nTR$cI|7Sq|`7MMQ+Vv#(VF*2tSGQ7H zoUONpQUg$pR_Wp8mG%o2wCk*5e*B<;G!+yu`5sc3S7c|?%+^^qt3 z@?%WTRM%AMA)sIj93UC63!ir0Sl|9=rVIp0zu>Yupf8G$-ZV*PvJibY5b@~o;~jyK zS5LJle6X;visYm$glSt+JKg`_6#sR;{jZM;IDOwT+XYYWnMl8ErWKT&GA>Puq?p?! z@{fju%tEFfx%aE01$5fmN647%Pc1^2*~@*0Fz{FKe|j0zKA*{a zZ#_0M6ZY=yW+(tbhZY%Mz7z&7A^d=lBQ^(Nc$vay%eK9}O+ZR&F`V6DY;0U*GDylA ziIh^o$4gob#-aRWX^U*SQtK?8$2QggbWff0Su(dI`PJ>Dpg(=gh2Slc}?XZX|ZT{J#x3?=O0R ziyQnN9HAGpKkv$ff1uXJfp2L~Xz&Oq84R=*4t8$~WqrQG z^uTtPMZNU6keZ)gQ>(^onUE?R(@mZ4F$oDXCnu-L6z5=Xuj1>o{m2I3IV=>mBH!`c zVLxFmWF`PoWa)GnT=MKEi(jIm*HOs*km&bV>TMy> z9HB~WTO)Q9bzF03)YQ~-j-DY@%QdW)U=BZalPz1t=^$oOGTb+mWRW6bK@)hK>67AzP zb9^s}a9d28^V3r&pw4hCv{BH}IO5m}#%czzD)sKvZfu`duUez{+z)qWD*XeBKzF9p zDs}Q(>O4Jtf=8g44f@1uRR6cB5+IgC&_K+hco&ESeSY30K~ReRgIT&J6>tAQPFwwl zC=OcJy0M>rtBTucq{?e#!w9AnX4u$@tMaXkdGTx-U?Hqajz|0uVKOsLNFefH^L#pezoks;dC;hrA5N6(%;Q#qmZ1-1f?+z|8`nVd=d*huDu)Rm(HVrHCfMW;2C*LZvFf% zR;-M)3>}xy>p3QS)_`3>7o+~UTFtSq;-2e+!YXQ}M)zBc7@5lt09iRBTbgr0h)rJF zK{`(?bYa>CLZeuOg9%CP>P*?;FTL%XeXPW+l#W}M@c5mVS?&wmsMv;yH&_vHH;nRE zst*%+wD$!87p0sr?z+$T$_A??bG~c;+Xdcwo^Y*1kx_}u{XW+sd2&i>w~$UIMIrA5 z&C0nX@yS+QlYSK?ol&gskF7D{;@>Z_+3;cE^?Pb7DpnF<7>Ee9t*U={RRFVI%vc7G z^DF$HNJj#`8HcYY3Hq+PU~L8Xox53ZU{HYcN2@eCW`#ZcK2!~4Y_29ziN0!R5W@WB zi>1VN5ZtSUpt_^EhVyLeEyZ9$GAQ`i4ouIdeP8CYF{G}vidj$_8)~ZIy zIre|1#P^d2Sn>j}bPeC&;}6=e{Y+JE*L!eQeX2hv^h-)e_!UqeA7-!z zVgxGX2J8bnQ8u?-F2d(FbFvqv2{ZO+X=pmx-b>yi@Ch=`5k4bfKQYUJq_(tGg){!I zUGHD`Am0=`;57)6V#!%+eo@vSBPGoiR&6eQ<1zn2Gf&8Xm}!~)xqyK5*!cKD)qRV= zkj1k3z_-S$&i9_w0v9tD}p2w0a&oOD}6%_Z! zB-8Ed=PzE!zE%x>*!*-syFw4}q?($$^xDopFcZHMHjCa#Eqcz!r(Vk}Lt%@dYHTd< zhlud^So@n#(F4W&0j%IvP|GMi>K_`8D{bUgdav_5)v+pJ8cx0+C`>Q%>W6j40(GA? zlucKyv~PrR0Uz;rCowU>y!=o*;bpySXt_aUpP_425sQd`0MiI!LVAUUCQmNd$r6qY z*bs|P{tNY^Ud4#+98VxjcG{YG1<%6Mtn+FV*TDIX`WBIz3#5vtJYKwMKi~xQC$d%n zLTQj$&@Pv1JzlR0#cjZ;9;6KYjT-g87}5e3w1*6K_2uuYlQq7xmsh;UhB#tl*SrIv zhSJBL^Qt{{ic-lo)<`C3skepU*U?&)G}NdhK{D!<0d?6eP%@o~jA$9!T*o|YzK)*# zx`STMo=;6h?HQR$H~LKE3e7&NsH(fG?SrXGWy#Q)b;VziN^j453L2|AgO0nQ>J%&= zCtHc0vnYP_@lpFGpgRMur=@yx_KV*FGy~vHp`j5mOp~u@wVa1O@xd?f(qS{L9nSn_ zjzCauBcl?ZFXzLqyHjoB(RCL5hm7%G0@VM?%3Cn4=4vz}T2k041ZqyCvAhsK(Ui23 zQZ~?AgP})a2~6yneJnsb=<(C{PN4U>p(RUjEQwz;+Mb5JoAoTWX})T5#PFB-G@ZG0 zY!zP1s@3x5`eN5svsOU-t~Z<`0gwYtMKXPXfX4BjCwl4gnkg@R6;Pg zqOPKp-L)eaU%yWwT@k7OS~fiQC*Sx-IA-bxa7C_0-P)QN`(eSojAg>rmD&o(!4>4W z|9A=^rn2n#TwP3sZuTD6r0-K1>o~54cTi(~3&BU5o6^NwFToFGy+8^8rzoR*#?sPj zD53}+S!^BLjv&uQf+w(xMn*o%6ZqB;Wh^VlD(e*YsN-@kKBhd-w5cPlY@Z(+8>5o~ zf5Lr;d-O#Ei^DLhoX(NKddBklb0xx58V^!fQeVdvTdiia$`zw` zKA5Dbkc;@}b;9b}{{wpCv}QZ?+!yecF&AIX9Y^(#hi<^-#4bS3$UBeunhQ-kyu=mQ z1z|wZowDqb5}jXFSqGh!M!llaS>QK<>Vh9`GO84i;I$>ad(!nbx@dYs2RgR{$`s_i z7w1F=o63fIa@!&8ODbH`WpU#{5hHXs0(L%MjxXb0aWEqw2e3~+Cemc76lxO zE1tr=BgPDTCk;qGYSH2Qd55J^joz`%Ood{G#|4IO-A1^9INZIA0sC#E;}97=i+b4< z4!7v_A*+;<{8LK{GjX7w%sh4KZCR6ptX$ac<@bUdHEf*MU%z?j)|ZQ92vWLj+4l|( zPNE19%%oT^B+w?onT0m3-+Hpx<}RmW^Nu&PVLL_a!1@s&A6>}0S4r9K$s}Bui%aPM zjGEecJa2fyliW^0vu(A0n_O>B0xOSNI=I^zb7Hv^?EEpd#%xN*(*at<_LyIqE?i$n zr6!l*#WvEZH@tW88hrToEz^ULFwc~B(DfxopE&%rlv?B`7e-%HMvGi2MY``NOj)-N z*-;G?LD3o9!wf7{DIfx=Bk6lLWf1e5^NH%dF+ ziI9!DLYR-#?G<9*NI`5##Jib8O0;V&%(Kxlu1nvNat?n~*Adb3nxs=@N7IV)nKYBE z0IK+9!Y1Y>Xr#?<@}^3G5S|B6R;Ml=9>c>mJ%mw|qml}i$M@!OR$QJWvuYfsl8aXO z$Q6yax1p{jbpeBDp43{R3>UCiIDATEc7NL0X`=laZ61gfrd`QL$hYJo2o=25cxuCE%xqUqstdT{(HEzrY>L@iu~kZ% zZJ<;um5dx}F+gkfbH03Pq7bPtqPIZp1l82Y@-dlw8l(^@6TML>U1Q^U=!ZwPat?U! zChxVV`%!pAa>ciOdHY!0b+YrtZ-2IaHV~IBEfm@j=NUrKnE%Ed{fI|HCEfU;GG)(v ztt}&qx|_|+pkJN!JOdV%1yoUQ(cj?kJ``xh!on_oS;A{QM>i{&rZ=~YFU$rkdXpgP z#Lm9I^$>&8Gen&@d~he%jCku_4)}WK7JG9eE3x&Ps6VqCzo8x~!M8-tzTmob$P4BP zNED@Srd0>`%9OW!J(+$RptO&{NsARN7RUHLH%(zM9SPQp(tv}`d!=xDuZ2C|`Ci=p1;)ewE8Q_~%!3jQ_O}>xHE(#gm$SZ}Z9VlpX&|%?|A^nSi9K%Wi(w7|P zUx?B7JI}2So<}9Y?%Iq|)}I+h?y$sVW@KZGzMS%7w!wWopjyn;siSTKJ{RD>s)_Sg zh1;kq0E*JD>gygVAGRrqH@Lgwp7mOyWwIE)<&#?<6@<=9BHfVt>bZ`akwl>nV%lxq zW;G$XCkLma-3DsIhu=MHB--(rC6Zq7(Bl=V6(5MC5^59=(aUPFupR16WPO(Qgp83{ zdWN!$GB=ty+x2oO0wg0JNpQD=%+rtVjiCOE_-9A(y7a~(k#*yi7TI!DE2H=!vT_fV z(ISPXJYO4M*eZ@XIx4@)SetFhLKQPNH@sU>G4(S`9hui(y!afYj*_>qD6(4IJN=dc z2!`G>jwda8<8@!}Z33N@35*yD!MEIALJK9C?4|;!b7W1!lb>vgU=1Jts&tZaR}NKU zAAQOOZ89zv3)k0wTsmijd>m!G8u-@l7!N-$=x4jf*Uchf1yF57KlR`8H?tJvcw-Nua{w&H=tpu-ygUU@z z0c;Z?wa_}>zIaD17nl-HXSi1oK#gT=s?C$l)zb4#jJCcAK4@MWGW%pU285eL?H>ib zQ>QVgW`8~0wuJ_yQ=;R7(%x797yx(UnE}-htzWJ~trn{!=9qk6lx`DziZtDc@2#@Y zO*|-Qj}(=2)vj6xWLhHhB2Q6eh!+tL_Zu|0c-D9H1H`1|V?vg*b>`*g0SApm!9s6# z4%-)H;V%M5C^F^@@M=86=J54P^g^=t5H0C_GR@s`f;(?!3qmlBzD|A;`zV{1`%QJh z%aoW{y6kvJPj@~`fVDuqYFm4c{4v8yPOd=b!xSFY1;M@$u6T1L9`Iiwk897yuicaFeJb~=;7!pNTc^{ae&3M0Sc0m?%1 zWcT^6VBADTO3(K{bwuPDLBfWQF%A}^txizLg<;6jhOO#hr&qF4$ z6ShbxAjVTKSGba`@yFj#^j~!SS95h&l72rI ze27OiG;CPZw!umXrbWzlDekS@1|UkVayL#D)ElziNqBcBhK9vICV!DnK2t>bTI;wT zp!gDC!iX43VMGEb{?<{}9c2C6pD&!-X9wen^@-xeFBByy+1joV%|Kb_@bNs%M_SsU zD$NnWu?=ZXV$RM7!U+cGKpHEF<&?C%OQelqQdzpuNc-*BXgpZYuCVgAw=wB_Fi&Bt zD)&a@ZF`wL$fmA|zXt&YuqGiTqsp6bwR&G9Jr zo-1V3)co$eQPSvf{Uc^mt#|BM1Iq^}a;cJ2K0;)n)Y5btWXI0Gm30NKMh)05G)Re{ zR#?uFP$CN`qy!lXv|B&-j}(=6Pl$5Z%fE``AIle_L9_O^%$p496uG*>7420x@lnL_ zo!TbQZE_mx*1a)|Lh#%8*AB{#qw!P9Q7n$HtPuDj8+|4Untg7rq8z+b3ZjzkAfO77 zqTZk0++BLo-(lIhQY&`yObt3R2lQV9Q(oQu4y?Ss-qn)>1}edDD03=?c4Bx$a=~Zv z5v#k$GLlke8U+JN-SY%pF0)lW@Pbafv5XgP(JGR7YN;Sd^TYXiSTvP)8aotp6K4e^ z7jb6Vg2NlvXpSiPXIm*VK_YV3SGIXeZaj#*rl3;AX*7+GCmRkxU9D^^&%?C^?eTrz zli_9<$cUB97dqi=9edpKFzh`}JwT|#aaN;d%Q+mnl1GWPju5vHK53?$9(RXiB*_=M zrFqu}dC0pTlzkN~plUV6+42b=cIU^VoboHi%qp$k^eQe-G9w)7O&6$3qGrU21#)1j zidsgMO+(&DNR;31i@ABB%0?&E>HgIySb6z*f@*~aoD`_2me>&h%c_;>lp_caU!Go=~7tPlbHS#dy2_s5WH0J_wW9Yoxh3`GY1k$vzQE-yK>c>&K6rVDAwZ4zA zvZKV6qV({n8i))wUmrD>?@iPf86JthewK-5fl}z zHw7l1t9%b>ySnbqw3ug~+}x)`?bGI`328i~EF17^)c=@?a+rJ2y|UL$O~6LNGq%~v zG{QS!)Yip$ymz9UZ~|6xrn=6wVR@_1w|W0f8sCalzhfK!l%;1`1#GhcM`e>-C)E+G z7o+P_F)+8tJ-_>E#v9lDSc>soQy#S$N=yaMWt>icS;-ziK*PWHpDwB4}_ zh!<6motCvjs}&-_1)CAHPEA))ARkz(D<4Q_c3ke|6J%Hci)fpeXxL@tu1+9+cvBHd zZK2%LGrHUCA@qg=YQK-tfmD|bY2>5^nqmnBPfXc)qvRoyY--&|K=nQawSNcW#NWPi zp}Ol`%yw{Rf7fsKP+um|LT@JXK6co|iLxaBP66!%IMuT|VTYW3rmgK_hYY0G-=|eR z9Hs$#wIkra*}S8{vD5Bg(J@kz(|A2S2`XHEKfZfWGJA5$D}K%$^f19?o9Kc^IsZ$F z^QgOmXkOpu3a-ed3iw{n#3r$FcNjaE;Ys10DcBY*3+S4A+NlNhX;n$6S z(?fV7;oyRB%Y9TY$@R(RI!0T8V~WS{C)bA!HY-}7+$Q4oE2_7Q6{$$~O3S373wOLt zqJ`Dfxy4qHAc%bnrcpUvZ_x4f3-1+~vwnIZly)hDd>F$mLujl0PLYveTTphj9+0du zY6BtFU=I+4LaAyd8NeRWqQh!xN!ls-*X@}%MUI*KbzYu2atB0!bFX%RG~I24RZ`)q zf^Ukqxnt8ct%qV3*X^lV1Zb71P8t>|r}FF1Jj)H)wc|Jts9DFO%W4(1@}cOdzR(jr zPv?ZVNzB(kW8q2R&g3*S(R#j)#dL_qu)Jwv6C438+?)XjF)E7q4Xc=Teuj z4p#qeUm~0CGeEvqgAY#j=L6|4?GqbcAeq{G0pA71Ho3ye*pBfpFot94Wypbq;r0$j z&}Ij^o*Em_*-s00+#I^dBatrx6m7>`gKrXHk7J8O90GzHMZI7u;d~{~rDu;7RK#mv zi?vBSG{?XPS2i@fgfHh*XLLO@Ft+A39&kE8UdK^DFf%iIkT8ICtYH*8cQMoUykaOx zAAh3?0&>L6K=Y1M4GAAf$bTfD#2|zP4Q$)d7ygdwik00cdD%yjwuLC`cKZJ&|D%VA zbrD7ujdB_$E|HoOSn|M;S~Hb&-QmcO&*W;j<{h^=t~FxR+WTNwFIS!M=Pj+$cieSL zsy(N=H1A?HrCsd0*IFs48w~phlNOYb0&9g7TWON?EtxA{DSzjJ=eInLf*ofJz_=sh->x^O=3%P9>YW}ut=BuW!ER@ti_4U$l!)(l zlDjT==cKv53OpQYU3}-W_7zp5(MxIj-cK+QcQQ}kv!EbowEhif?VmgX3>rg z!{MNG5YY~Qg!(Mn;W3mB4@|H^u=sSp~nieV2G?&>g#!po;!@Qx@wwZ ziuIhIbz-UMJQXUD)^&I8FN5VS_$NA}y?gn8eTNt45*1;6E4 zU=x#o_fp!U5LM@akI?VDCkIc>MAcX4lCs{~xo^x8gHrtD@07Qmmh27mt0OTDYng@w z36F*H6PJgTTR}HRY+>$B*9E=8N~-X$L*|)nP^gOxn6Y#?YL5Uzxr4 zt({B7O@%eGHt(an_0k>fR8bEPcCR4X7#_oWcRRgt1&(4+>m5-dj>6qyTcFK-zQUm< zAFUiRx9Q+Ig(p5q;w9!#=oQ5Fu0xyI<_&^OdHwnx<1_0XCD^xZcgHAe0{yg$l*um> zowNBGnfDkMtfPuvc*)*SUtEOkb`**S_rUoU4^pU*+6qF~(Y3f9rbYXpELY*h6NL4{ z$9TNg!^Nw~%y*VgBc`Jqtz>dlom-YJyde+k1rNk!(;MU!ypQo4Z+s=;S2RO0wk^C} zblT$|Ch#%Et0SGA^({mhr#70dd-L@zf^G$&9xt>tXofmu2riv{ovKUb^VG^qr*H-t z{=5Lmi(L%z>E%ekF+Hi~K~Y;dncUGE)>})5p9B)^6gEtJ(}*EE)!kpkM)Al|#qH1<}Z-O&jp^mLGobV;LHlIrhf?{$)PqLxeUpg$zKIpQ6%Kf4+ z)LRg39!U(l;EXc80StH7v4p0Scet8KT^D=mMBn+Kn#EGt8gOJQpVybYO@>-v&p^{g z#~8b<_u#6VZWV36TpB?leh)vvdZlet=3$6eUYcD4Nf{F1=r@nzs&`-*y0*HwZZ7X{ z*tKy1VeG;T(WRRXIKy@S?!8W&E_ zvbUzFZXXAwjX-&X_b83am?NGNEY2*C3QNKJaMZK4++5h-uY6pcq&SILULK?Q+L%jE zkKGAd1V@s7w`kzKy#m6VBMWN>RTC&k1_VhpdAJjPOa37}k(B9tJ7iw*p2$UK;BJ4T2Osd4flc$o>jL}#XZ1^g zI9f(`+YW0MgS$141-KbRxvU$*AQ!eW`C!q1WtCARYYD=Ro>g&LR|>Bwyzw>N1F9ak zCqE@2p1==AW{CCWlbm;_`c2%f)fUy3i3+UedB=9M?wktBg~%Da3+~P#RCqb`sP>y3 zxx*2?x+c{(>IW~^mhRMcR|0_-WnSf_rsGC$FJpQEMM4(GnF46rSr=C*koCRZD+4BI zsW$OG1$nmT>L~G#XCb)}uiS1A!+uo}vd`hz+5;`;&nOb|HJZPto+tO0k7j(36PhBV zsyWQ?*`2Z$@c7ABUCYO4I}GA0z#SS-m}WG@BW!p45bsg{z}A$*EkFbwPc5B$;FXVq z+vU2bOU==F@qN|2;kYjdw~Ql%ZYd9W*x|8zzH`kv&#vI^mj<|QxFR{#*SHB!3oAZD zGf|;7V>}r z3TtB@quk~2L1^a7IKt)0Ol+wVH}{SEJ)zGJMAP{_}|79V$4n*#SAzNt=b^p(lh_U5zU9m~OI=8G>gKfHjZ zrRjj%eEHFJc{s`Sr*&Mz5FsHB8!v&1y&Os`v`t)&)Y2j9CxhQTJMUDpw%62c_Vvw? zZSfaXHSKp33vsY3(U3lQlRsl>_mBhFf>O#nR7CR2OYVn8`t|jc$; zxmu@1v2fQAcE7H2Fss!IZ8czuI-z(QxRuu;^CPFGQfvrZ3!!wEUTfBj2=GI+i!(iV zT?lMTA=mk}R1zV)@Iuku4yof0iL{Ty(yN4?w;|zs)c2_9fHfXI#FiX4+?^5hStboc zrO0&a&{4!A2j|%5!aFn^ot~bwpxt!j+Guyi@go%<`>0#Eh{FuCx~?cu))9DK z5v=6r9_riGh5zZ?l=)8CV9l3{4MDi^Fc`ng@X#ad#KZal<)I`Cb=I~QCc{kd*hIZ8 z_sYE?^TS7B_|Jd*cwO2xGd$TKnTp)U6?lkJOJYke-S`y5Ckkhq(w@)L26(K2?=Q_si8yZ?nWAhuA#ezp$8b^8{a3t zz29U18~!jH-1oJvwa#^hvD=7JOAkKn$;!45q4GDk3Zu_@RDTwho$(+NP+GNR|LUw- z6yN3NNvdj6Lp4I414QUwdW=I(11{0oCzEApkrXcOm(pG_!VL)Z=Hieq@prJeOH_w6 zb#r#gc7k8xZ4qK|R2?VS7E9^Ja};3B$!J!rq^33c4{)fptqFYtdZBN?ww0OXv)W!y z0;oP5R-e!@mRTuBmEu-h zgc_GC+qd4M0^de@h*Z6EBX%m?`?Qsh-Cf9(;k~ze8Dc5=sjldG#6sXYLoZ+Vm>}>T zp0~ufa^o3+-ef6>RxrX+#lcD%3chwOAp71vsV(UTSbcY;TK*8qig$j&sBHB;gYU;9 zc85NVMJ_WR&xZnUNm%#U3)uQwQJStFYZ-ZXrabMJJRtibrRVj^l^HtECqs!r`G0Q3 zAlPsmXH=7+Dvsbs5=iXOIX;qgaH`Ocli#zEBX|h@r)RlS)fJu^1EqSLqD0Cf$J(BJZo5j&HvfD7duf% zl00691$W1TmxoKi=If?A(jLpdUoM60nT4JX;m$@+g&=0!eb_>Dv6nWE{rjkbW{_NE z-Q~CmNNv0a%w&OC>z(!y11bk#w0qx;^u<6 zmKYl723nu@qaWJLRJY(-G7>IJrA@}-Edim@S9q3OQX#W8QKLm5^kUnBs3Y0rT?=$tozs-JL zs6m@^i7yJOmh)S*`S+QmsgT&4S7W0w$dcbQ*vB32oq^GM^p9~eK+O>v46&<6I5-vU z!cdi`2O8zLjJ}^BX=gD+>uQ-W-k9|1uAMefxypLxFF-e zqa9s0I)zMK`mP2n^GF>Kon_t9m-L#F@TorfvR}-dMxf)Ti?6XzQ*SjO7spn1iCU>H zd0hKqglBY{+68SAY2nP?9SwbH3e0PrxL%<8z>Wz!G#EN2|6D^&5b1UVaNBup^Xx)s zTC82{_rQuGO|To4=kcZ#@TS;Arc;;=>&qdb8CXsbTOg%;DTKbLpk-3BjAO~oEsN$( z2xAMqa^|s2lhHIXEoay|bzlP8%s%mv?mEBW+I;ANXldMCBVj}D=%T;C=#jgg5y1iL zB%f_fHS(K3yUD%4twuNfIRjv+56sa%O>Orbz4LKRT;aPRj6T0DnJYc-=3alCv>9K0 zcp30mV5-Wh>wd{|s*xxa=rGY(IAJe&A+f;t$!99>WO71a#|q?e^U=*1a2lbpNirqL z{~^-CkUsF4%|ShFi3|5$cc{eH9cFerdcx*i=6f4^W@nw(7M#N9&?n)pbzp zhu@9@wcO}%=7Z-C>qg0cx?mrYJ7axbaAP7e(3ZEpS9o2Ahh$boD1ZAI7k zfYmvCsEkE5Mv${_w~!;jjN?QYnRB!Z(9okkdY(NImMv9eP^!eyxuYY&xpFlx!%YLJ zfT#aChUDH?D5vhZDIW}$)@x_Hbz*c{?IRt}3M^PR&xBS@%imxHT;1qQ`P61`=#JI2 z==@{xpM_QdA}23yjZ`vXF{G8((jg79e`+qWa3`J1Ab=sCGw5UA1X{<|w~YGJ!H<}} z+5$>-Byd!4MO`5scx+n+)Jw}}hl_(W>g34h5}d0GK`yJ2dy+)*9!;wfSFTBM_}z>- zbSffRF774P7`6{zfO{$U@)T^|euo9tx6E@xgz%5GBlWHtK4?ZJz0iIr`%qM_Y$M?b z>b1GZ|C2=6eklI{V#s_^9-g|QcQi1ltY37w?5FA|jc7$>ovY(9@(SHlUonNtA9;B| z)1R_@_EQ*QMRY53>Y}Ahw9WvTXR07$mh9^K)w%v?z0P;^zwYEj{MOHP_Vv7(t}jia zIVE1ot$1AJ<(xHkOsrpm9qL|^HGaLu%)*yx?4Ur9ecq=&w?yw`Q!*nYkh~%F^!Szp zw7(Ti|5BzD)EMkG6;~>HGitXAfcLo<{C3-zLa23ePF+vKwCmqbORXPt`c0a5!=DjD z)zOx_@_u$*z}a?iyzFTm;mxM9cR>_AFEsY@sKvfXSdJ!L?_c~>T@(kf`f3q9CajMJRR<}2|ZzA5Lt8I=-4S0kTF^%oQ+UxsBTK)Og3BFkLxq%oZPL#n1r69=(lPqpBrosT zx|E*jC%?fvqtnt`bg(8tz`g;FGKpd-rJhlrUTjbe`P>$=M#sSH=n2Z-xwMK861&p$ zHPp4%DQE863`93wf00BDO_bO=SrvW>ta-c2fJdz1r;-nq7Vamj%b}BEAOs%j`jm>D zH{V9}^0Xw&zKA3dKDlu@s{x&mM_c(f`m}u&?>?OrrNS9w#S-gbk`tW?)KHb`V0KVu z06DduUZjd-*!CLys@LSJC=8cU0T-pL8Jf=S7U<47*(-(=w<^<@wU{at+9DrWqi?+> zw0Yq$zWUC)uj+CKNX8>yFw~$GUrXxpOoN=y8NkBi8uD|I3TXJ5vHR*t zusQwoHVGetsOR*rC{y<$#O-*i9XU}oq5nZ$J|Q{;=YWoGr$HtLytVhG-6!2(A?k}R zXOl5~df@>*ziC2}W}56f&JUq4m}!dsSt=u*1fi%|9h7OLd>1@J3WV{tm~l#pyQH5& zG7h$J78vE;I~-;>LmM>R$ewE_A^k0=EgmWDOh$mw11S%rfr%|BOPcCwuGB?Ww5purlFLW+Phh6O57%1#F0lcryNZR zjEYj)9>lau-)T9;vGu+2@sL2jLzISb$_B2jHF!YWS-#QJ>=ypIqXqA$Jk&bk}^s<(cVPcT_9d-Cg@{!<#g}X<))*jD06%BmWOWVv{)-PL#{mI zp1TQpF@eR?D746f<+V&cg!H3eDw7i&i7op*vfp!bK+H*_v=9Y~@D1>h(Y26@K^K9& zZ>JB_GKK*-#WU5`!o`YfUKUG{%!Kr+EpUOU3flA_<9cYv?K_Q{-x;kbdnpx*qAW2n zADo$CnlY45oSUrMM?O4SAbhO){~)lvGWKA1`hDUHw+LbMEqt1u+%Wx!_2^Iat``GF z&?&U&D9Rp+wR*l^*2)x@;jQ^t>cE;KBKo(I>*uwhC-NAkBx7hzj|G*?QmEpczB+Sv zNINkL52zM={Y$w9)KTJHq|N6h0*vj*sj4V6U@iFUJAKf=F)#EdWc965biB{S9PE2Y zNY%Ht`(N8??;#z`R?fnpdQo{ZM0AhC)$JdH+}T-dZVtvZrUPLy+lxAmouAsZgmlyf z7OLv>1QCBpPWT@+SbLO$kfR&g`7}8BDoAg-paho zz{?Hcb37q*7=h(?$^4^F_+36@=ncU3D`8=hkwud>+4roH_0%r`Xe+$q*L(9daZho} zDoG|h^^^FYdZNvv zyb3f^z%C%_*R2eF4wa^PN25`-0Pa%U;>Zhh>RKd`}9R)^gi*6|3wt=Ufd62Z_X#7q!SrlwcNPRK;*dIucz6ht+ zJ~G5cTKomGmD3#d-n>>7d!bi*W5h!+RzgkxSl&zcQAUD^&V%ev5p>@?UMLNPv!N<9 zVcU8L^SSN7+na5K46OB?-)hg7GLi@s#JJ`DwD-}mKZJFr_?JYY({gka#32}r-HiD- zI4iF7cCKS`_cp4d)rbX}`Jy+ucs{&Iw2H?VL1%^#*+?(r8bZmii+t0rigZ&l2CMsT z;LNRiL59)VA&Je5OD_j$<`Yz39zQN_& zg8_!<@>^D3neur>`z6n~A1V99n>=eeu3)gSJ0@wr*uhtk&LS`zTIL%T)d@9o}Kc~CrXe}ZJZXO~1arEyaJ!OVL9%%LMd-+zr_ zq2|wG)}Q&$eEjz;*xxDn4&yOM*C1(|3y8bZ^rks+N5|!+f+UZAWKuJ1ac(XaI)8BJ z;Y+?N6W)7e^$5qg8@<0SrW6Vi4@wIu9D6FZY*)z|Bjntbe3v`oXqxIUzkfWz3)28` zbt^l#e(4Z;>|fVFG<%GZj`S~0xTwt<32}*hB&yOKm;{pxZdBEV9IwI|X1)&$y!orJ z)@9s(nxl-(E&r}_-5DM^a~Jyhn-kA;2XgO4kZlsux z9gKMRH!H2v9GG+UbE!J{E?aS_$}PWB%5WkMudR13kACaXP)=9&JjiRoE5TZ@6T=|T z)VU z{;rLF%{lr6N$6ThXciY=IQ?@mmIDHpi_1t>rIH;Px=5X;r>CW*MU@~Ql|!%2r}cYz zz7xUTxJ3||RlH)ICRktOk34IQQdPrctS$YjHMw&$D+p__n&B_Wjzt^TBEi+(|e(dV}f_ z-I^?c$|1!KHVl^|Qchz-+B}KAX2xeAfCKz%lq&kGnFR+lN=F&~(7EfMG6*S9?3h z$mE)WsZqR_G#~;*eoD3a5Q6Vqnmk59!tkBiP{IhF)!$NU(5AK$<%Xu#e2Fq87yn_K zH|L&dojX(LKVCCK+)cEU$m|r7)kWBiwwIb_C86EN_;$&uJ+ss?%gC(F_1mgqjnszu z&6|MeQo*skQEh$w?Ib%}+tj_;lL|6WGb`F9J#d1wU*N;nZ$)J{foZNMdR}}{izvp+ zrn}X&MeVR&Cm(+*&NQ$AaGc=%O=ib>Pt;gWnDNWlk8TE?c$5Oom)}|Y8sJe)HA$wE zq!c64{5(7w(FO_3j?73Fi?E|0!lZwY2YgiuQ%g02@=*Qtp3m<#$V&4jM~dU4pi2I^YE zMzf)XJJ<8nJGd`a28uJ-m&+Kw-DZ3h)W}ad|LCGMdgC^}1)Ae?PZ^@4Y@W_i4{f~5{fHelEcA1f;9yQt9&SQya)fZddz{{1} zF0bHY?yfze$2UD5Zb=bW#8UpeQ*XVzwH-eBKB*(VJ~RvdhuwuO+rv%a;wp8ok4djQ z1~Ej-45NZr92i5ff$bjCZ`EMWcO4*QL8p7HWhDWOR^ZbAMcwI-hgV&D1q978kg~qw z-r-PDQF$?g`*F@X(*3&Y-uH(B5kULS6=~GX=g`~x85C73OGE79#vpq$8n`Kdyj2fd z_wGt!H3EhEto2)N{#;j$4Y|Llr?yPg3G+7VxvOD@MP~B_0y3NuheJl3YW;gf z>l7=YpPgkI2Tc;kcGtFO%VGxwnqGxRzmv$9a6~j99?t1_THHaEGvqSo0W~2F2?huS?6xnl(hub$aenH z$#pjEU`=aQj=KoFG`glEbf%TmTyBFg0`;+q&VWZ3AZpT^^SM1Pu4C>~%*0auu z%6nh%m14)${hqDkz!jw-H>JUsJcihI0r{A3pj>LUrWozb?ah9F+ykEIyW6raJ=POx z_IC(I0jX1W6t9k(9Bp5OT%|clnP;HSCoiE;Me1y6hn9hw#!i+^lX>m@h1lxk;o2~< zNJX&F*q+${`MZ@!39Gnd()^FbmMNfGOqIDcQBh<*YEX5X(DLHv?f0>#z{>`LN!-sHg6qoEk5# z_0bPfZ7Qc>cK_hYe;(;;UnZ6@@hL*v?Yu_3KiSeK7xrc=xj&b%Y(oFm;&IipuJc!? zE#Z76tsWE|QaKW|O%@BD4ccISFKMWklBPe$?Mu+z+xS}f+}Le$U)`&*Ja#z5KWpCK-eUU!B zkNhov>-xx5EB2vd>aL^TznwiOs(GSYijy@cXVI zl9``NU?iN`J~8FTxPT!Wig*6B!if3PLn^n`_FLpw+aI){y9?pc;EL90=y(3+%P$Sv zrTXTnC4TGk^Wd?g6dBV*4=f(n!)EM}55E2gnr*Be6AtZ}!uQ{62fAo~wJZXQ?nbUY zhuyJCE+3rXn##=EB8(5C--ATFTvhSS0py$?893747t~0Jm8@--UH4)SwTN%~HqOs;^h)v2s7HJY_<6_7kRsab)% z!U(U^@uGs`MC5_5FuAx-zT1;-VF19@%ZWHn+b;Q)7OFuxCZODbMyif)&!!#u}d?A zO_-WZcl=ZRbiI>0Mt(Vf2wDU@v}%wa@UswKJaW@bNOyDeQ1U#U+-&}J?<2_ESOpSo zP3obfC0}r@KrE}eIB5<(symku8?#etbr zLSi1SY(mriTV4H+&(p3Lo{56+f{gs$l19a8r?&KgQ&7Fa&wHRxutx2o`=Xvh{oy0E zEVn{Ni(?bV5P02G+k~pL`d@&v;bvgpjR9S-YFVA?zU>XG@R=mRxLiYpPqzeO2*q`w z!eUsd7OytcH}fFQ*@W*@RX-S-BV*A~)T+MPot=u|NqvCCnO`jz3)1tvY4Fp>C+Syv zdwb<`G>$c|Hmaa)<4aiTz5;<(ql4%hMkggJI3Y29=QhmeqoMYmCotrP_Wzt8q4+P! z5<6c5mM5h>;#@|gv>3cDg*;Do{dT4#5b{s!14(tMD-v7oRSYepT(rwZ$p`0{L6;&h zMd8SEQEpv5rj)ragTt6g$h;e#>_V-UIuHg&HFXkd-k`9{8L3} zS-O*KMWfD57N~hdrB5p*UK< z?0HIgN4<9U`bS2a)VWFFv3z$h^Z3Q*?5X~E+<-X_(MokDL~Sk8v;%7HG!~eYe52Dl zS)DP)P+VGyKl=-po)=S(cbv+GfVH6vc5^XnPs!(`JlnQ>B_{@{j-_z^?70VN`mTQv zcJ#6W^ocTXiV!XbYUxGP;W9F9Lwp(+oF?EWXeH48u;8Mt&AsIwwXio-z;Jh6+FuBD zi8>i{d{+*>i!=`;}F;lFV6PR^5xJg7iDDYJUmHPr9~erlIVK(=}1C_r01D4fmDflBX3Af08+>U`??hv3V;@OORKUObS<&v<5L=lwEZDq3h~HVsD+2-!9rFZSa;E z1}|z90X=y$0prvAyS_NXqH5(PtAUkdt5E-=BlDq)M$68jC%tQE7C=6L_NO3HWWk35 zezh~QY^YQas$&G!XuaOk2k1h(s#du;GggAoCiP`h)A)GLt8U$461Ewh7oL_&(tmSO zB^dzB_0(c^KLKw(CFZm!ebad6O42SmH|SJKr8Yxb+*Z1=wY6h425~g>{3FaeZ|hi$ zRCaNB+rF2mPaie(jP|fE!~41c@T_>#$}=b-`TNb}1k_q>%@8)MzVvuiksik+ez!c> zWtr-5!f?&K`2LdtqJ;pd`iUHZ&O*v<$;mN_kL0v}7IJsN#7P%`^hcjBqIk~f`{&>& z;9YmsH4^=m*o#=^-M7QK&PE|}u7=Oy!gvlcsGGOsdCQZn9P`LTUs6*#!N2G0IEPQ6 zy0@h1os|n#qYQCR4GYDL7lpO1ppiTuYA(0D;p3HrXy1As#+Uh3$3f-uUR)_7!FKRq3)vy9Z7_tCGBayA^jM5q8Iho)1#i)#>+V^d0FrQ)b=|kaU?g$%(<^t2Wn`jksnO zol*-z8JCEYc(v#k5;|BX`eIqnz2Cg~eozP1lqQCnA#XRC)mF(~*6ciRLX*q;Az;P> zYGuyn?HM|E=fU20ie(<+0B+!iWgn zl0s0wmxFuz9T>1Gz5r@s7?{J~N$tShtQu+1JzezK^Y`lWAm8=~p|`WBv20E<@-*=B z@}{RGVOV4I74O-J)|{L3>+Ci3_moGCGG1rT3M@SCj%6yaKh`rW-nTDrwjl4oNN-jYzYwcPVLVtLFIpH&WS(E2j^|Q~Brvlp-HTZ< z4|Fb(YrSwLe+}av7pu}qCuirSfdA2*WG^V2pdLr3c^ImdkL9D#P?i*{+^luWEdqHX z<%bUA)E?Ob)nKL*tVvW2jsT>7$=)D)v5}T_%m-YeG+IpIiZlw5CTvJI@iw1}L%42) z6R@d$RJ9V}DJ2*o>)FttdO$5~@wdW#=!klJq93)w{>NAO!Cv0IMT45t2&C-F- z5u!CSdRR&}f<#nKbg=E>mf`oQYBV<37M}lEej2NAJa{Mx%;)jg#n)BY)M~YFIC-|r z-Sxp+A%xxdg&y1gWi02YR5~>L+49mSD7YPILf}3bW`03HeAnA_S3J?WHn6`Dx_qlGwtS=Wk>D0B zdfW3>*O}E6HIo>yJxHrko65HFp8S@i2~w8XD(uS3{v5xiktcg5-)?b$CWxG!2|7*_ zi%6pu!Z$apd;2NcmfnTo1F8!abohwNQQRH3!4%Q{ZkrFK$g6diLh+eqjq05$s?w#&?Wqr{JCj2sR@6L}c(;u}ze<<0LKry< z-T@57V0M*e78V21Z%FWouPvV0;ZX(>(lU<7gkN|QXsQwH5{_X5N!AoZ_G;V6lGPy1 z6=}oi%ZTd9um~-A%v)Ls;) zG5h5#HU#kNg_G%sU+Ao#-|kd^i}#`%$DZlaZQ15joXQsD(gdl^`lW-t?G&;@erlEA zvtpJ|N)6cusP^7UphyRbykCx%f3o zhEo-w5gxVb?5642a3Zgl*W3(E(3#w!b63usPy_V8#uNs?>(eJ>_EokCB+oa<%{qge z#}}vgGJK8`GFek9WEVZ-HuU9f$r+%##*9gZZejTZV+?iqK$u-i-h_7RB~qtvHRQs* z9q`g1WR>r!nC{GXtFrU4>SV&`m#ID3EmYxBkqla;2xz^|dgG6T1a{NOQ>=jycR#jZ z+pc5IbY{ym-yd@CLoL}pwH;Xgemnxu_)=MwzOg<<6Z=Ckbwywj0+d& zec(Yu?~^&_5V$5vQsJ)Xka8#U>Corcp7&-{hdztLqadH!uCe4NIczU&^lz?pM)K>H ze3KeEr{8?ENjaz-BpSgJQVn`$fu@7t40-{kJiDt;otE1^wb;s`EZ2gLy!{9s$&M!iF3g-}ed;3Uz>JVbaQrYW9;ji1R9OtC{ zvq!6}XM=oIL)MpA?N7QU&I|n-BqiS*2mx3g&59X&u|d5R+8~TEh|Iq^%gA?5v2sj__NC@@W#xwk1O%|rXPUnYUmfcMiGJY( z-8ES55bJONxwu}(hy(Sym}~?)amaBs;)n49Lc-K?iH;GR8NOM6oC}SZRxz=xFEh<) zWvrHb_s_qKb6HxOFph`FEf21w?-u3|oqiNGrs@tL5$q!0N8>H|eut4_TJo!>P(T+w z-Kn{^M74B}!jqV!?bC9~K?3Oe02%4(>XU5t;Ney-e%2v-``ey z_!f8LdWUXCuKuiF8xK!g9|?j@pqrzDrz5~%x4J^0?Z`eg<@NEPsV>7`T&{c%`UHApf zQ&m0YfNzCQ*F^Q(EymkxHZJrXNj^0#)HX)Bc}U9ZMWK`5if$|F$UJCcJJHb7cEp3q zZH6W(1ho@?y63gXb}NQSj1T{MdN-QkQG|VxH3@j1W(C4}BmDjnjYXr^f6(`?L+m@v5>tSEfIkiIb@t#*tIO+W2fhRi}QaflPvZ-v| zs-<_%-bUc5JPV;6krWY19>>VqtT@#|3=h!DKQgk%8^Y-$T2v-jvH}wrrLv3MxAJ|RNu1EU#(}L=`@IH!h<~8xC!F8P)#jmF^`hnhxTXin zu8G~g&(pcb9E9Op9gW(V@5Vmu=U5BVGK5L|1-~iIuNO^1Bp57>ysos;+2$2u@fMI; z*$q#5#{7=}{@a!UT|Nip3dDPL+=lRWU+O>1D`2gEFWTiB6VK|EH0w~p(BTOk((Q!mTKpQI}AN7Hr`m^;I z8l6bML^3S|j#W?wkMQ^_6*Vc<7-7_~9}%rdvd{jhns}=-8YcY7zwt~0`i*P*d*aeAnATR4t@lf6@oM{HK5qM+Q+-gh zH2JTdX_$F*!cdy68y*Z&vrIqPY8~h0*mwf@ew58+*v9@g$!of)sAy0CD(SKX>M=F8 z!b(ZiH@iNg-rMYv*Q<7lJz+t{8Q}(uelX!BqXJ@tC-ELP;Z)bw5*ls|{Z~j|@Uw>? z-GEUF$ctmr9($4<;N?scI~fA*{&Bw)pw8g8;S1lKA`(A68ok{HC*Uou2a25p<63%q zf1&MGP?Nn9msM}3=j7wlI;@A|Y|<|@`5w6w2we2R_H%@T{`j>bM|{zw6^7ZnleYqs zjCGL(s#W}HyV!f{bU{BHx@2Bl9r=%5wC_Yw7Hwu{%lnIeFg-q#!bZT1L%i0z8ep!A zY9Ck$fS|I>Plh-M|FYH_zj<46ncD1}b|K|^RYY{iVVnM=a3wGMt)M^I1gf7+Mluh? zmq9glnM&`Do`Vkj?(P|8Ad4;2spYRO^hCCE`e&rSd5kMhN&1fZqZ)N~&Aq9DCDuD1 zk5Gihbk*D$8&mYp=$O|uF#^D-q3Y6&yN8Cn#FXMrSZ??iud#W&u?F!Ug5O~`N(WJ4$Cq_X* z80~bjtnJ3(`Q8BF?C3%(^<`D2wZDh9L8qV1O~7|AECe{SdeeNHxW7@zis^v?Sg*GJ zvM8ElO$AxLtbU2L;khKjVna4+G;X-G9xBqXhDXm{RGj&J{3>A;rtUwBwzg z--#sEfY)CO>gk=GMhx?%tkd21!XR+rT<6p^8oMCkT=Kpj@#TDUZx2tE92|vpd-Ku@ zz%nV%UxF91d1sf^r0-%54rr3irUj~Qzf1jXD@xDDYLjod>9#O}5?6oD98=k$tYG0C z<3w(Y2qM{+rEM2q+E9P$mam$HLsE#=USN4A(J=4Ju@AV=mIB(^E`bf#1F{nIl?%>m zV??goq|xShC5Yx*j;UDFlx;WC^t{s6N{?>F4TM`-Hw$5|v?i63myt5PJv7 z52Hpr{T1_2rUF&>;sqcSJv#-Ln}gJ|8~BOh$zLw{fp=u)+*3<{IoagW^KqzymXK{P ztSDM>rCy=*?1NB}!gambeZy#%+YS_h6clywJdIO)$thumo09-RdFKsHZ^R5FpA`?h z4FJQ|f0tAq=MpX!oqs8YSW1)Y_=g?+tpf6y*NS8eDowaoil{q*Ny}WTvRHs!Tcqz{ z`LYVNVf`HtHMwk#IrVy4mkmKVR68*VD0s^+HG}wQHodw?HX>Z+@r{EhA5Gp7mey?{ z56ge&J|8A1Tdb_d^2E%ZM**x{;PvdlM=*$!a$&UmK)4OtNO1e#nEsQ8MyHCVVt9P@P_;0O`B=lv^bAM6l?U%sr zF$ICW3NdKgyi~hl7}%X^TYCxvAmTAw%rh*Dp)@YIJzUk9 zLp5y{TJ*E(hwwiaccaSf$eid#9GLa~l0J_=WwrKIOfAxwd1$-NjD*g_r0u$|$-yJFcfPc^6jOL<{>LTZ*d1 zJvB8-vi(^88lwBg$uH3~&V}T%=e(nHb9oRIK>9`dv_4U*_*<=ZW_$YY%O{(Id97LM zJ`vQ+AZd&yRm&vDFM#IR$D&Z78vavx^y;eXXsXPtU#slzPvv;jLZrdm@SfKJ?@SSR+jMeUtDN7Wiv1cAN9wUUwU8Mkf&$?h49$# zLGZJ@(LQ5+$k%DhTVA1F@@L<`CL$ECQ)csDM3PaBcs?zR0I9Wl&pmP*{ym*u!%?Uz z_3PI!|7>tD3@)73#{RpDv3Z%}2jR3cb@9kpJaY;fh`~qUM|qAI*mi)|G} zX0EMZLx$(78|6;(;T46rhfhI7+#l$L?42Fitk>%^gj^CG6gv0qJw5g0Oqz7AkF9XM zHp%zP-Oq2@%=$kJlLkPAp5{!oZ~z&rDqdlp({K~8wv^>WG5Xvjud7_GJ%%3B(LXq5 z5n6Cb;x{N=K8}AvseF4wSxoS^tH=v?b8|c2Gw6EstE6NCo}s??iNN)p@BQ+9e}4fa zC+=kdfva8csvfA;%U4mEAZ;+K*57FuBJP(p-}>fz_;*d^mha_~*)2_)Ejb-7bdWNo zgrtxKUxhgp6dwb$N(^KjD*)8Kh7?HLrr6nLObgGVQA!4*86Iw~u6BBUEq79h?~h_GnLe_kbnPaKdGeI0#!oeMRO8FpGBDKfmjP z(m?q}fLxJ|z6ADR5us08#QxrX&1`S+vuDrn^p2uOFm^;%YWw5FopGI$vB(0@dGq)c zw7PhIK^rtW>#Zj7d&l>2J~zbQ!u+L%ciQpuw)bt=9tW8`>3#0J($TW2nZoPci1cIP znN;1)DO)Zl521Ay{Fh4YZ&w)f-q>zyzfI(w=&H;Bb&fs!gDKE<@;_T9no&l6Nh2aj z(0vU#g{`z1J_vsy#LisT>7QT`l^KSe0MT%W1&y{uYQOuR?eg8 ztXhlXbAKmK9J>gGC0aacdeN*@A*9x||51I}FC8G^dkK-*BU?-=i3g{rE!+``I z`0!MCQTP7)RUJA0|HH}${bTVl7E}4xQ4AbML#hw+a0A=Jg{u=Z+;mVr3o=DyO{L?d z{by)M$>_S*N`ueFfAInr7f5gS*gy;~ufqVX!_%DAD2^FAL{?W;4ZoYd$ z^Ywfx#_FFDfV}{^2*({BI$RwW?4DfHIs)_%)$8u~k}s<@xF==VMroBkZp!BSc-t%1}D=?+(WE-!=s4`QCX38(BNHY)ZX;`}X{? zJ~_oRCnNF;mi>PTlGy~S@myz0fHG1Hx)|Du%wBqMq9=#O8N5-@J5pA|eRbTXmK1 z-4{#%fA`-x10l3=?R#v3Uak!X<+rtsc<5qYRP}5q^`GxdFx|si%8&(qQ-AWWa{BsB z48zp&!xg4IeI_9cZ2FEhiWu>B!_Va1wG$^=1^D?t3UmMY7}Ngo<%6h)adAJ=_BS?E z#1hw|q~&|K3jA%e3HQ}&Ikb7l_9vIdxVnPFuDSfF?o56s`fSy$Jl>-F7bNnPWyQ92 zNAkQt`PLS(bAFTtNl6=xZ`7vUa zgf9}p*;+0w1CILjzh^|Yw`2W?yV|ukeiQNHKX1CN0Q!BHS@MCV{8QKP06$3itK(ef z`k&cop+{nltL^>X5fmXQ8tFTwFhXr15guq!i~@R3|1< zr0bx!=O@50(vaY=eqv8%s6PSBjR%p?vl7;A4~Nqa1cLpdFODjsGhl*46uv$3Tp?k$ zYOApmz10fCb^B5r?Cd;=uYW)wrOgL_4oUG*r8PBLRU&j=k}Pe8kczVdVx`vgJOc#o zBp*BWRUTgOmxvnbd@6o2&p?5TtbSop(LXL3M4Ch(8TjD^+~t6>ZpLq8W_ZqPhX&RYeAOUk)h==Db`r2X_5D;g{C*ju7(fR)-`1N}rG{;I`Utetg zG2k@S)%qzeGntx72GsbYx~xoXtXlEou`FK32X2$F4*6Oju+b*wf#0(Znbx@&5k=5cGJyTlppHZ|e8mu>*`Xj0NNM7*UZ{TI~`R!i3G1hq?CMISz z7N8Zj&XdULeY$@ar&EZW`BsLAQ}frnf}bZYOEsbIsvj9^C5&KDjE>S|kL4#B?e49a z1~4gH=PJeCQb{1LJOum$@$U?!inkyyfkRyLoyQj3xQl1bCBPhZHFQ73JPiIikyOTz zpRv2{ff_J*msZonXq48~>3Dd58v|H%e6ii}7ZG=PgvtZ=NuIRxNcIJJee2awrKsGD{>j@tw1UAa)O`0j+-AspRv#B(_BEF(IF5Sh|Ewnd=R2}F~61qr?j8uhEZ1-ovWg#J$;Wo*HKfM49&?G@NJ_|X|%)*h|PYetVEc<5~ zv4UsXw!RfRFnYX!fx}yJeZDPvLMwQAdG~wxs__qZ9qI~;ijr;;QQ?`In|rCVrfF=&kZgdXo7_^=BOGe%$Hhe~%?z^?%#C|7&sm_0rUVMV55u zT~CJ9KZ2Vn;$-FJgQyfCcOLy(c+sg6BgQh zFRdaYBQId8AP~qFJ%Q;2oGCMmD+KX5>(do0ya+y0KYGJ-)y=@xwf@6EN2f=Wwz%7LRM#H(gNO(Q?OHnYRvL3hFCj>eZ?V6 zif))rUtJr@P5dl9U;%x}TgAuCJ<14oP#=Cybl*0tA^NG_n^&*wscQ8md80xIq+h#K z#B0z9?$&ItyzkS*Pq^#TblU?*3+z-+{C*``cv>T}e%rY>mogx^p$T|Quj2mz`S*-% zYN!#+Iso|8NZ@Tb8$K6^j!x2|@%@w(R63oqib`#$KbWGPxYcQkX)9h9k8ct12HmRn z&XTOe`us@0>UHFqD)z2ktar>kZO8X`Y2Q1x*Vr`mM2Fon8z?s|$4zE3^2LJ^xUGOk z+K%d>tF3K{xmIEO`jrPhX>gz|=ZcjGK*{h`^GeS(GMbI(+xJ7<6i>){_)X;hCNcb9 zXC9!78rww*HT9P;{aJF{AiT|uMPO>(dts?@aGRr=ZTT53Dp*VFRYI1yE+m!28qyh^ zCJXE@e#WqokrB&_6BnFYpapVzxwV@_)Ms86BE}_xf`U>+I{IUCL?Zh^99yP%3umIs z>yVw9Mn7!lFc6SeyU49as`Kbr9K2f=Q4wQ`7kfxV&AV?AA<5ho!awBzXmd7JU7&h| z7c6NcR=dV1p52|HRyRuORv&^b7kY3?@@GclFLN#yhlW?%zg3%?%B`|Uu61u`j8Hb)VpybqCP zg#(##Tdv1_niyn9Wbz?TH&6o0m9fI?bUB?cw6s?lgA0YtfZE?=S`=j8=7|Gr04K|K z*VzXF4rF~0TG(f()JPkT6z-5Qs-!_V%Nf;vZ9a&f?tK+eGNQ~qfJ;eqm_GH1%663OGCj7_7dpCDx7ig2Or)Sds{@h%# zUryRPPyPR2k#Cg`WCI~3;Q~^BcSg?SHV&%xfl#A2UDL%y?-F!(pUHiKsy>iD09u5v zu=la!#$}&yB(>xf7-N7C(VtzPu23bj@88BVVr(IXQ2o)7l9Gq;xv7#e;;3IpMHXc_Hwm5`L0%Nkc<}i8Xb(?;W)- zdl82E6Wo#9sfXoF)e^>2{6>GDi~o6}{i{a^tPPeOHh8736aP0-phFkv{4A}wG)t#* zSDZ8(qG?wCamqmGt@VPf&(LDWV=n(@im4Eu+sEBB=E(Q&eJv~$+i>Fc%xg+nPZrGB2O5aK68DIwKOLe;5;21tGuDasf)uBSHjH|uPjSUhg zWylLMY!LL|8PG)N-yMEJKd}9L5Lm0o=fGwJ&=E$TQ+I0kxjQ>U=0!I9?rhE?qV=im zBl;gTNSD0PUsrGgeRI|+SxE^=BC&NqOHsQD#A_0)chaEx*psTuf&nE}) ztxQq@vf#nt^`R6BP__ISF|jEt;T&5ltC0OgAY;oA>|IZ6JjjyMuahosZd=Q3gj9@) z@^k+%GxJ6!P(pl3K`<`BNV@z~ZNg>Rg0Q1$5ord*vSZAjA2?ch+5P%pb2}Y7B60QH z87NYPW>nKo90MgV+kNqgOj3zOE%T?D9&<=wO;qCq~z)}B(*MiSDe0lW8v4t0c6)yjLB#LzsJ>x^NbjOS+K zC}?L(ccuVn?^IwXN8NOi-L}x}@o^nnJG)yPv|JDA3p*yB_t31cbcb-#8<(-*lIUvK z4;vV1L8UoyHUwz!NYSQv1KV}HK($j;R8%W+JTpV@0$HqEB6)(QN?+288M}J%LUoUF zfVJGFyXeERsG>_rQ9pI*#>C9%!?iH-bYh}+ZX$yAX`jev==}9)gUM;nd0rW&XG|}c znuwLghIJ;`BV%HzP}4_qPwDKtG|BxrtwG=-TOIdJM{XJZ9wuI zrgqRPsFpO8+imgXN;W(@Xh~>dHYXFOe%g*m%=y|EZ#sB$f*Bi3?c6@ZQD}|1d6u%0 zN1YjW!KqXr0H!Kl9S44je)Td@Zi)|@$@CMP*hehd$fuu1S3GS7$bi|V}J@Js3BZ0X|=^V((f=#-w`W{qXTf`=Sg-~2Jd-X45tUe9Nm`Cqvn{1LhH zdj$u!v+Ql&fye` zv;lC1or{EWAPC3A_ox(*r6hd5v*G4}qWMF>=9QRmXEO^Z_QVmFv<2$9EwcfO{{gB0 zqi8lABnZZMcn?OjMg9H0X&)>98!z;>j`63^oP{MZ2WJA=8Vw^OUZL9B;pyRf6E9f~ zO{`}<-u}3_In4vpwc^C_OH6Ef2h`2A1+HLLQl+%*L{G`qX^H8}IEI%`rS}b-nmjCr za-Izj4kDknl=ItRrBeZL&LQb0Gk8F2F?A*_4NEE#+A%#TZ7kXf%s-tSu|7)w;Y_s{t!vmU5Q!eV6oF zRs3tz>V+MlK>wB5yA%%P@uc}C9?iw)ksaY_0L z4L<&aB)2x~r1>tm9!M4NI{q4XFemRef0Hs~`We0|g@z%=Q z?0TV`kmYV=-tUah`H9gpC%jtAy*)jN!@~mX?&|bI&bkF~4p(py)61YPpiOuAVyUfN z+X8{`2hBIVszi{c<10pUlXAMF-N$(KzV8`?lF)pk#`rhjxp?V#Ch3UE)5y@QNN2c| z4Z;ZBi+v@m^_wOchsi1LI}!}CD2w35uI^??3vlcY@ivd}r-DD|0tu6^mBcd_}?8?2gA7xPV3?&|`)va!q6s+yYFu!HfQS9#*d zWG)t||J^fEgab3c@EQ?4s=pptLUAo&3-VfegpZknduvX}*LHS(<3il!bHq;tf8cKc zqlg#U3?#3#v}*7@z!M_Ig-9f_4H%ute>K$6DQe$f9|j&^0KiGuj&XFUfI5eT&P`TY zu!)E~jv*(Q-gX6foWgjaJxt}61f+^F^o9Oww=0Uu)HX()vSNtBBp?|2z=kY9a&59V z_@dKcZIX=i;9f13`K8yvDyd%V9S?iClFTpfEozSSo_Q+9rbLZ8xIk?EzW=hy7rpOT4?0ft;El^nA6Dmgj1$5>q)6=Vvd<)Ie&+Sm3XMOH*)xJd_n6{_`~d z_X_w-nbjh-@;rt4@1Jl2AQGEa?4}HMc$KB(8l<&Vq>1~F4C^Gb8k(}QWWy0|?Nn8W zVq-EZYisLGru~4d#>PhdFJHcRoX$JU^f31`6~K~Kf4zm2GLBZsR>(h8lF#2XeRh4oDpYoV+-46+v16h=Mn&=Ob2&5$J%|Ir+ zMGNq+1A;1*0cwS`TJ%RL#}9<8W+K)7F<0g*{Bef4xx$8W=!=p&TonrI-$Y@Fx_2zQ z`BXM)ISzYA*))CK*!1Rj+d)L#BV(RR%2k%YCJ<`v1}UIuC=l)WtZ%RcHEDeZ*a$dI8i?p64y*`eZfhLBY6rBlk^{bB9{?L`!7s;4-?2(Kp8KFD83>1ZHdBnV^5>J$! zpL6v38VUmcVS5jp_>w-{UHkKuRCE_#QP2v2@@hk~lt801o~d(PBuJ;?=?~2$j-Q;r zNc-l)00qd~AFUnlV_}y)D#Vzn>q~i$IvMvC5LU(TpyzBN+&^IrD zWNr_?6s{U`@+-}h-*PW5es@-R1^o79`1NJxMG1y{+Sa1;byt~|=c|hcQ>otl7VVWH zC~qYyUW1aDR7>wW0t9shTUELCfWXYdJA)2$^ZiJ1c@w+aYM)km*k&Tf0Yys9&{-8g zVH~XC3|8zu)-9ggsRarKcu#ircqQ3q%U(!+UjD8!WrHMq(zA7Xpwn^ZopcIqzcLw*Wym zceUwi(re+(v}W;qW;b$0gML6+Hwb#EL9O4HXBlovOgM>&cJsj0yu2|Fw_BIm=F1iyF{c?Ot3=3ObU0o9q zewoy^^?G#g@A;g7LM_hq=z{Nx>dfk7w?FjihREQahT8z~OE>ovbCN(F0$X*Dm^-20 zp^{{u%ZnwyLO-nRfc5${e#oZ4n zSO>w$r{2r@vjk(C3A!LwX9Q-q#&KMTI}nQO6%S@D{hsg1aMLm<0QH%H&$gZaDZ{^K z_-qw*6yU3l}}>6-mZc8P$rlzP`5&LLu-6C9YBQp72A<~@bO48)DB=t zvVSNzu)fS&KPmYzPy!cKkmgs`n_AzZ2AKZCOPRTmb6#LjZ!`C=`P-f6}JEwiAb2ln@iKGrKt<^@+kUQ(QeN^8Cv>Og_ zBO^}Dm&WQ$uUb!u`ejrwGZwn=BP*=*4RxtY$=QY0V6%vAfCOdRc+%?TUH}2eN$!h} zFJnFd9QxHBufOl^e>BH|?W`?))#3H(diVeQia?<#Sp&OrrKxNU-sjp%F%LghD#Mf` z`2r0{U9co4e^45UE_x>($yPgMK@atmFbs(|eF7tKmaae#jseDQn7wBFSCI8WzMBu(f|@B??`@8P`+-+=m! zrI@AKnQVoXAWP$3=B%tEj*m%On=f%5gM6!xEAK`$FciwqGxokJy|5oxo5XwXVPVU~ z$|lGQHt6tbK7SXw4a_nP6@2b#9QLmLf>S+%qJggZ<~G5*if#q;b_hkmzkrQ* ztXKpUECO}N*Sj?^WSNADi_0fPY^)<&YvU{lL`csX;d06>uj8E6CU0WskwE$=ozs4tP~p_<5SePB%|@G-<3h9$m?Ti1r5Ap z=34pAw3K&=$)U(;ZH@_*E9b;az=!pQj6^g?=2hrCHP886tW3`fj?CpSq-q8PT^o8} zAL@JFDq}+Uc^QZFYL>j-!o&hTIq(6v#)WBaJM0^cqws_K6fiU&=@Df;9p*vw_0?|f z8$iO9aoPs0=XDHip*tte0bBStUYj*ug&6kb2!3d|0wl8QTc8qIe7s#@ueQ`n7mkca zJ<0fUXtf+h!J*y9KaHFh^7VT=rBo!rK+7p&gq)a9z;K|eL?3<< zPCeh@{FTDKT+J=h8t`lC?(x!{Ouva&O=9B|%_yWi{Teb(b!%*F?DQ^<`8N56WbIAX z-J+O<^(6;K^tPp?CHX4y@pA;%=Kxy2-5JM{=H{n~zBV;uswwyux15&8h?_Tu7K^L^ z5^RoCmUSNcyH8%g5H>+XNbE#Vf1hB^yT=PwW(O6wj($2X{c+0NtNlZmRO3L~ne(!T zv{ByBFe>!{tbzLN@vUI{*qz-&$H;v;!^`pljKJdXzjrxP2R03TeRf?FP^6XzIPq%x z2mZHJ1U&;D%N`IpT-Z@Y^J#6dO7Ja2_08McOTYD7MAVPQ z@9zU$<}0bp1c|-AUcTzpjVTF7=+nra$^cK{&#kFa8J7I9-b|irPpt%J$!}z|Mb83~ zCW97x1?1XG$eBL14b~Z=o6g5lyY|lAvkaa}IA6n>Ky{<^qkN!Vs+RQad?>aZb>MMT z-h7or??0ot;Z-YF9%}7M9}fhd1{sHBUB6k@pNo1OYJnN>_nq7e@B=hX3DE0b5}oNU zyGyjatHUK3WCF1Pa!7-J=42K&~t| z(%v}Ddbo4gZ9xlObC80sNImUV3D&I{O7G(eXB_f?hFNfVyK{ms zdIf*_VgBY`>sZ2%9<8@81tZPOPj=0_86HlZohdGJJ$UB-CSX@;91r~rtRI`uhafJO z6i>7^2pcsmiriSf9HzCFcG8Bm_uLw`)K`tvx+Q5?YG*$ogKNjPs!SkLrOv#g zaQHcV<rNt|$Z>U2H9-byJ8yv+dI zvTZVy17?juBWJ~9c!TQ?79{`Oyp^ou4$>ZzCZ}=i=19A=g2mQ@EiQ_pVk)T9K>163 zUT0A$W`r|Ap537xb7iu{mdIj_>s8S!B%7%IJ;lg-U+5FujjYCOf7+e ze!^2YhqHCECQ6f*gt{sZSNbA^)!YHTC^@PiE0ZPd!~ zm+w#$3UJ8xt1mr?AdJ7=3QZo@N5DyZEC!ID?3TP&BLK2YYSY|M=p!rt^YbOwH78Q{ zX$0BBO#dC)vj(w+lU&Qy^txje##}_Y?+TXzTkKuI#H?AWhPiA>FdY7FxcW#1PmlqO>dM6ERI^13(0BquH4vYd{R zIhzWtCzOOt5~mDxb2^c*ZEGU;Fvc!m;l@+#v!XVYf5lpKIXD@l)BmoRjyEcj_tJcp zR6%Ro&T5y-C<$$AUlRmw$)wX2Q0ZJ<-joTj^?$wL+!>*kfmj5Xo@$E0Z2N-SHZ0L z%<0q9(;tg&nK`PcM84M5?E%_YhHS^@bcUZ^y|xxaioXu6b?zllY@4#mY9P~-4RAz8 zB=X!ZV;$CS_W5we3-U|UPW0UOX3V&@OLX>LAI|fBo9#y~N8o(W{=m^pOi{OjnCbA7 z(~}TMjVsv|X+`n@s#*N$ejZq3A;-j)NoWHytHm&=0%btXKb@R|M96lr=CYqEec3n{aU55i5XD zR7h+A+2bREF}m}xQ=%Gtmy#edujF*lZo~ul)c(ZuNcCzrb0C_le7y4!eAHydv6bap z(_&R*Uk>bOT%sQav9i{dHk@%Rm)Q@Kw**w-Ys}yR#q*&_aY~LZedXTE!+3wn`i9wd zF7Ey4H6iPMNlN;$Cr#x+k6<>8P zE7MF_7%6f~H(pBWFts6DP3Ce-g@YTm0`1tgVuy8DDBw+|H8wAuQugFt{MNZ~0DJ*+ zyI4HaP{2}7pkZX`pTN{#JHkgNml7!Z`4xOwYhyD8$=lc^%c&u2@;tkF4EuRqXhkG zs~(8&{P$}iW4h>C90vcfYmC)(c?|zW;Ew=*$s_Wo7=O!2IwVmMbCb-uXz>tAOs`%g-Keq~v1!Wrq&eW~ar*iZ=F=XpP^D9(U>;@wVkolVcYT5Qi> z%FKaJ zS>~w-MV>rSc5!jhGe$Ds2;jhI+%|s`mb~XOrRU+HItj?FkIIURMP95G@Anu{BCSw2$DmTi z&mvwM$Qr_BV})NMge+uYY>fC0@5-j;)$lL{+zpoj*SWvt-GlK^JD?*esESC>)*hD9+KdLnpyP$F-lhUwN(V|Tn*L%!=6;_d z*}gOt1}YzG4~J5Jx(1+o2AU1Te*Qk$^)^W6L@HH`t^>UCD?WzOU0T)}can&&ImiF= zoFBB*a)L|37QN9qBHTKw1H=aZu)jE|?6-sX-zOW0HSs@4hh@j4s%wkQYf9cJF5HWL zWhIjvT*bTi`7-8|HAb8;9?Jm`Cg;Fq{N zdct@teh&d9**)ldPEW7>AeVSdOE`(5ZL3>#rHcjPv;M&P+R$_ibKj(OJS3j#ZQP#pDURE;kE3RB)qu4akGLiy4FOS_W`}4(%xVSGlxZ)`S zFE5F#(v8xUVWVFqbv)PHnMIX#QTM8=yhA5%*OfY@?+1T_QP&bXv>U0(F_dFW=W|SQIA|XtJJd zsKVi^y*n9>ws!X8h#TE_q{?JAdBs(@6r)dfYl_q>lGD=*W764x=k6yf_AL?P)ct+e z(aQLe*ib!s6Vr$#ilZRw2M>b`xnoq>JBgIQmM6~t(q-^JA&`|d^}j$MY{C*%ROBfg zWD_KvP!|>4MCHMCEewlW%Uy0aK85_mJudt}M14w_QTa$hqDNs}q(h44Sa>Ejy7V>U zt)aT`BVQ7)Xhtc6m4QsBs^Jk}vfBlqNHv4APR{~v5@c;|UOu}3;L30dT5`h(!@NGe`We9~#xz* zY9cyBS!+62s3x%8bf>wLPlyM01gXYs(K~vxgA`1G5FLZKQK6%{^93nJbGLe3Pbk=< zuPFx-{FE}G2sQ{M&X|a9X?ogGUn{R~3oN6$AnN1kPSi#6#EIm973X7_;Ojr<fpED7wvAwU+$C%BjCB=HPS_297yr-yP^jgmbAJV^C zNS+OZ) zBkGb5)g@2;_ZMYM_9#F5U;JEsKgSv?#STLG<>FG%k+#p4_m6kI1!sB#Z7Sze_<#!3 zC|NVN`|aU3%|EOq=NH<15UMK0u`(#H(05kw&}s(p14Z*s`{8VS&qM^l9sL;zguk7+wwvvzOUo4vWNyvvyy`OiDQ7Z-T7>b>^YUkK^3ql6Cbqw z=R*9?V~W^-V`O$a4~L2Zwi%_(Yd(WL3I@KOr* zqA%MlogoN!f}f_gg@u<2+GHqsPRED3;jK%*IZOugF*TY_=N$swp`>`mOuia2!5r+- z8m*1@*&nQ5J`dy;ItoAD-k-L8%d?O$?IF$xMurH`1f9(B>M5<>0K2TqTjy+4<>q3y zFR>EspNF@IC+zkou&8zvI({27_l>_H-LP)lc_p?@f*ZN&L2dXf55H0R5XZ7Q+A6yf-NTVjDlak`&c^j46H4B30>i}QJ2MZ3B z70z#E>o_O&mw8^FSNuS|9%!R%K+ZQZqIw@!K3N~(;s!-V^5u|Mjp}@!{&Y%`Z5Q7%qseBa3~FW*1Cq}h$WMAhg-7= zFgB$T*J;5K$3U{wZrQ-I9gUCV?*&-~eqK2FoI71KSso}k+=gU>)h#vD4`?MYq!Z6L z4E`w6dUy~B!gOdCwb?_QAdvJb`sJxnj)zqTat-0u8Jb&1m7gaV$9zc`Jf=Dm!JsT# zEk@LWK8hxI%b4QOo!vWBw8_wDbv|)c&#vko*Hf>LHN1v-X1F_@7E5P6HR_U z-ak{*Xg;z(Y1bM!3rCX59GXsO}05$yfL$-zpS`-9fzztRyiTq=f zFXVY@8@VbQ6<6l-{aZDCqlHl0K#6hqK|j91{MB#U(4k}0J5p=uX^PR^PA~8 z@{bR;oSb4o%wSKFx5li+EM@76Y?cHGOl|*j4~_gyL8z6{`yxsfKy&lHIZa4Quqd7R zUDhw1-e3~GJu-?hu1bxj9ycP~u}MaAk95yOCmN&jMfr=s3kMeo$;*~DP6b7~S~csu z2%N{&7-#3JdzD<6{Jz0Z!yW)<7m}4FzjjKR}Zj!G|3j1Oh~+o ze~2=H78yGQ)ws;ixJY+f7=A@iZ&dl5D)%A2hPs+x%V)*1815Apm1#5Z<6-zMhvxyx z2J;@_XfZim(X`Kdm;&D(frqM^wp7e3ZR^x09+@vl=cRatHUsw;zFYzhM~Iqll%u-` z>+9>}dEpSL_S#)4M>^@<)@lg_60*TXRKPjojtiNo1;d89Apnd&G#r=s1!LIBP|5&w zPCFbiN*O0Vfv+si<7lD95nt*FlL%!;vOL35Crp4R>jRME*QJmhE;-)6mJvnQoxh|ai8PmnF zg&!qM%35G0ksOZ%h>J)3OU~^%+q(ShK0aduJ0EdVxiI68>D*nU<1_iw7?09d37hCz z%8XfRoij+x!`?lof=%4BD_Kz|$+lEy-h2@v-;tNgg|j`J&c`{e{C||lfwkc+fFC3J z^)X;V@TrYNs!Ly35Uf~uZ(gbp&^Zoe2xF#JO$a4b@vEGgPah2y1uQIc`x49yVcH-s z!KtKgcYPcl8rFVlvX8No*%7zoDAyLZ$834^i?dQ8!g5S}XAM0G%9#9rVLe5>sn;&< zPuzP_<1xgA1)pQ|2}pxr)?M3F>m?XR7hcRpUPsYNKQdlUwT>pSjJdOQg%wIQgVwT9~8y z35T>IP|UqDbqIGu=MQFX(Fiv-{VYj3OHQX##oIBYhCB&+B#VAvH}osU9wknfuW^wQ z=AaUUc%G$8>(*jQtXdt1uMfQ|5wemPa}z^|;kwNf;aVkFx-WZyg34$JgP#xd{alaU zI*athVKK<2puUF|=x!?I(LtNDA#@|fuU?7?3JiN#ZW z=QpDA9v;hFeXUoO;3~L*|1swET?KN92)zd3_V+nC_c4B_$h&v%64h;XpwP7zPX{CK z>)_&QMhuhpzfki=|GYkJN=@l?^c+z`{_-)I+}i4u*cMDpJ0(l*sZY5pP_hw}HluWdqqv3OE#9eF? z_0^$wIh~#-8lp|lZoRk#o%3-j*M9j{I@(LZo)liKyIs4Omegx}>f-d-yCA zp~~VZbaSTGx3Fj`-uI&E8Qe*$it9#s#MbE-?2QBL9qkm3Zad>9j-h5AJ*L|IVe{)Z z_d(j{-$;)Mm;-KL6O?!aO6)Z7pgP`Q*{EKu$~Y0RxDu=LE?w>bx_o+RzA@{s@P;j2 zOdK`51#`edX(^)3pnJowahse&`XNcO|EhnpQ@Qu@lo)lk-NX>2LM!8>0ahLhKiWo5 zMfUqR_Q$_kK7`I)KYnO}was~Qjy~UsohWqnDRYL3UwGX-r{)ty1fY0kJkQfTm!hvL zLS-(p>+0e4F90(!`{fR6DH)Q6xiz!JHwfMHufAazj>afIfA~=w(-j+|NAHkQXPf5O zg*@qt(2XU+@W6LXaXzDm(n5Bmk{1=b=^y3#P0l+(u*FL^x9^1kT@ci9_HJVZX0L== zn(yHvIY)-+P&jR}k>3ZY)6to`y+@2Er2gNh885OdTz5=rq=;tAN3F9h%id0ps6!%r zFXA(a=R_{HR+FbnuOtdFH3b>p<>%m%hbN(vtJmi}W>Yd3L+aaItR$puQ!;x9n^IqH|XYkqsw@Qr~+#HwWW1^yLmcyC~=4n*h58}IV3i}J^n z`RmgM4h`qI;c@Q(JyjFSO`OTcq_1v!wdgWEL3tcEE#T-A^N^{?n-*ew8?(1$8f%<~c;&@?%iN?_}>DkJr1}%HN7RL=B1ym;~)c1J?m|WjA_6Bybp)A(k*tFus z+r0A-ypn-px)IN)mVDLJ5_Ux5+oURYZ40NP`4d;eYW&UP?pq=ct!axW%356atM(%M z%DEkG9rBIu`vx{m`b>=+eODcuk58PfI)8YmSB{05^Y@pTa@cbie-VyPzZ+08K}^Ie z<@Uu`a2>qXSTUNUoYyLTx5C8s-BB?PFO}m&m1X1g)%odWbK``^J$ORCuf$pw&ZWZ8 z%w7KEswjrBf^m~`Ch$BKkF>49fJtBZG1j|62m6w`qLPR$&E>-~KN%Jta>w$A$MH(A zR>+QShlJv@^0wL-0n#KThgSJ*DMnXa%i}F)D0jWJE;x22az~4CTwS;cUbOG~bF8Yk z7TwG5Uv?x&f`v;adm~Wpj_9cTnkICj{8#*}``unr-;<@O++^Ti6Eg9{=)276rX7fD zeU_RkJL=vp_uDp%%T1EJI6+8>@0^d7`}UNPx|{-hn$uv>Ot0zJ4>8w(9AIoz1DoF^D;@)!98~SJ}W{bJq(4KQ)n3K4a)B z8|&t^Wz0~lZ+HK7i_)q?wT|7yn36PC%|`)y7}JO+v`EXCUu$ZpL=Vuep@-t!w!Jq+m^@)hD3VQi#ek*@qVeX<1G>tC}&X!uz=i|Rwq&uy%SUv2q zoQmFy^?xb3e#vz59I!N%F|$yrYa^8yonzXeqbgk8zBY2P?C_4niSuSNT>qb={iUMDZm<=JYf=G`jo4uc<4Ks+uFuHVr@g=5j%64H;_{(fJ7qVMPHSg~Iawpzw)YZ~j<}iD! zQyq22F5hbq^1i3>OGZzTWSQ_zB5%C*u=d^??M}#LL1F;YAr9UJSl2Wfq&gMHd_>!9YXofYQ-I#m1p6t=YM(uXwn_TlN%OY{L06cl0G|j1wFYWHc=aa8`3q| z)pOg{*VnF=h-NfN-gLM-^XPb@x6z=?A6a#7OG`{lyzo^_TW7$JH(}N!_U}Ar3ND8y!F`*-Uc~YC*phZ_6Tnn8?l}1MU8rQjEZQ$8 z<^6V#Sdx%mV!Ax36dOz@-rBSFVC!hDGA3R!^>XeaF*x6&HNSO9oTZ_>2wV} zqL)6I4{AlHwBGqyjQ`6p$xpq8NxW0V*76FVk8Xo>Mh?7{gn1p|;|81ec6r`-Wl2et zbK0)ysG@(;ESM>5S2r=pj1 zkRIOa8uayU-1e<7>CKdasqs4D^D~hvj$kztS4?s1>J`Lc+UD44>YlF7+}6`Q2s)jq zB39%PBA{93WRye3zTEc`**ZFLj>)`?6WnI0MwatDzD(B5jZv%d9c$#PUW$b{$FTQB zzhXZry+UpORQG-lPjae)zi~@9@;trnz&oQqxj6t)lMF)Db6u1w&)uqoZ^J-H3r62K zhF=`&MFM9+6IWx+=S@raO0sj<^Hu!MOIfBP%~f2@eLXMQ{g#uae4E&pXd7W z-iDgb3E`eIriH1g`;@2Ow@C^eWj$pDZyk|w{NCYrHs~%x;~x5&03qQz@Yx0PqqyJK>ziDegYI3-IeN}+U~e@;ZTNCk z=Gqc|)u-*E?Z3U6%XAb5etZk+zi7c!C33PiE}n6jMm^PYsSsfiE5!{fyAI7%$livZ zt{ApSez_*(kP*)CZ^Yr*(+AScHs=-xo@tkU?26R{%jl27n`3@oYDyoh5 zyLZpMQOLQ?fo++opNthIXb#Oykg~4f;9c6B{G}v&wBM?K2+!2|>46BmwWUzqONXGZ znE6wgIGGgR{$)Qp%;BV!8g4gt{e#`C`q1YDBLYvDQ3xUbeN+5#XZ-!?maOUVS3jyr z7vGP1i`mTDj=EY|!n8%&?6x<}LzEQd=0T>;gT*%G1K(~}wJfI8gx>l^gk}qJ(p+{T zS5;U4z~2~hx9o+^#CXG7EmH}T79$Qz1=Yk>1jh=a(vnAJ$$jaCz|Acny3!&@UY=1h zwd%)@#va!s@NRCiH0YxQgqBDORaHBC>{6x_a}nlG`)ZjZadg0=TaXPwD5G!M?X=X) zHxxRwQ5JC3Z)f1-ep^LFr8OK|ML)StNS8oE`+d@M()q=(D-RF%>;qql4{FAPb5B0Z zXqWnmnSIZ5WW6Ml&DzC%-QnwQGyDLwIMKo3xSId}MAcH|7ge@~muH z@e*1QceEkY0hIpK?^nE|B^Js-<(ruVjSK)+&U_2f4$%_TN9%RpYHpb$(jBCvG<-)O>SG* zsDcPa0SkzT6bqt61W`ahiXfsOMInTmh=}we9YP4Gh=rokYe1xh5_<0_NRb{&0z^PM zgqj2r0{8XQ?Kyj&@9cAb+%fL>{$+&lmbGSi=A6%(bMP_E(-c~A-&%gyU_RFLWhv@8 z>nSeByUQ8c$%$;c)1h=6+qIhhrfEnmX^|`vT{M)>q{z-r9#1D*3!c@h2?bLI9r1$? zWJbr_h0BB)Nj9!tq*-!CXvzRsKJj7ZOlZDhJK7dD3i1v@UBOkD*b>K6E&N~nqGyeEDIta0llIzA^9tM=TjtsS0( z&WG0|@UL#RW++}c`+etUjB)n3yc2Jw3c*UzJw;);qo}D^6Sb<@Ck90{Ep(Pxgm!M* zrxzABqI5dTT(>{7vfyzapvSr=cd2M6P$abuxlG+~h7rabHmP;XVbR{ZQKiGw0L@)( zp`_S1AaZ;NqDDz7VLgwI3J+IZGhS)b`&O zgna0La{KK_9v3Lmt$mP^8YxjE}(1cmAhv9N4#!}J9MvZM>wZQ)%w8=OVFFLVs3W2A|;HI9bW9(PvWnrtpI^IKttP{9lddP~W}{Ipdq= z$jiHtSU>QK;_&@CYeMUMFqC6vZzBH#EsBY?p~yhZU1Db$c;Pm zZ0PlorX|h-FhE)hJYMjW`re#i_gF4B}wz&eGw+u;~zz`@~Ca+isvQg+rPm*o>&Mt}yXA z=nI67TYkEeFk-Zn{G1~ni<(-e1d1aSOcR9=3M~ph4CNQpy1Ec*`}he?zDpA;)!Xgx zy!C9U;;or+h(`>ZcjV69(jFio=|;PcGUyMI&-6PV|PO1L632E7pcxBr(djXo?@}Ty!}lZuH5M zbO!aK0>`_BtwNi={n+&K!j-$d+PLAX03<5Ze4}}990}q1mRHN`5bwt-UsYK{n>V~B zIthc{%W|>Sk5r7rB=HQ{p%w0{(TmDZ=8;(P7LmoQ*1&;5I}WDmnikGsI0;X}j9j)K zHC<8z1xVZ%a-J<4m2D00y?Fj4JaVFEj=$xyMnVFxbXplxWD^k+k*~c|s zS6n%C+F#lDA!$nU#G2q7*z%K(M;7MmHsAfPw#+b_3JbSS?_{3#IM`jn=HF%_y_M_P z`%g0y;LGH?>|Cwh{MGmo(nIfAQSy@W_;fv=|o zpWO8g=1d|b2uq`VLVryoAPkPg;dPjD?(-G;%-C9cVSeTnTxG-wh*IbRJkFAu| z5!zv^`24#7cq6E=pcH`qQiX)&Zbc}~s*f)>O_t$Jdql|V>Rzs-!_akoK(jRa^=V`y zF8p}BxUAXDA7Um1`^S&3`NHZ3)3w@N7FL#zZWwL6;5pe-fd5Vu$^80N10PB;YL({d zy}@8+F2#j~y!k#WYDnAmQ%@+zf~9Xk`8SuGE}N}*tN2~I*L;TvKc&&ZN5hYX^@|iR=S-xoi7rDsz8?)3dyubDP?8i`y4bGg^}_T z&x;a_gGVg(eFz|}CUE0sE~KZ=hz50qXmQR}WOLqeC*muM!^JnMJ8?e1tS;xObb6nn zFK=cr_?5X~iCWv11+>e(7i!Vt2osj1P_%7V$MwX~zV@YF2sv}y|4 z@p0+GH8eZRB6j3Ub?&qEfbS@cbH9UpGfM*64UKQw0$r+V8lFP+<3gCYz|Fz9#^SU=ijQg>?*6ddZE9j z|FB=JyA&eXtZYg;Q91d|NM&yE+^sjvoQ7N5qM^k_2hZj9Tcw>3ltg0+7E1fmm+$#) zOrr4(tb*3+H13lwQi)tg7@Z44;vSNXE@d|te%Qh)e((nUd!m6WRQcxq5$?-*Ysrf% zE3eo&*e}x>4E2|cPg6axpUg-%!I0kc)A@IIIH3=!3@W`Yyh z#=9E$awru-J|=}ckV+^HI!%`Uur}kP_Jx!s@!?PzxE_8VrszaHukgJVY`hlJnx5lE z)^~~uD}|OtK+Ah5R0?^xTetG#`a3}@CQ{Xe(Pz2CLr5kq7{hdMa@NT5v}fRYJkZZ% z$)0Lc^yF7l9H4TveDf{5MBI1P&OBT{k#5v=L(F$4cBHu-Vmbl z9s-gKqDORb8!~ldeoBTC{8--3%IZO-hn#-hS9ndZA7#`1@--sk&X`bu2U3di%DM|zPV^LmKiuZCZrfqWl`S8^N9PU_GSzdvn zz6o)lhr8LGR;=YG3vpP_bHsf7nC|Qiq`uR$PHsJj6YX7C>l7G=15+I738Tfkm{Zte z9B%O|ZFEb^3RRMYg@s?m?A`2*NxcWv+im3G1z4*E#D4GqliX?wrcl!2h+Jz%k9gQA zApc);ZQo%-Iuqs@Y!TI7*&IdjboG3j=^_tEHr?IpGlza zNA#c7IW##?R%(bq1nshycaZ8(cGVW*iVG~O63qXa2m6^8Lxd_f>>q);uyMHvu89s} zPK@GkHGSeT6(1ZPC*jT}XYbjdP=eS=^Q4jxzV?~G6grLWU~B6)B!_Q5i9O#>M01p9 zpYc>v+p6v+cXSlHdl@2KB+cfkYZcdBk{ANXVd)p^b3tmhxFV>m?jE>^$2Bh@AE*q= zSMKxZq$H3C(}kEsdka{IWy-NV{W7v)QIX4q$*n?_QSsTfHQGY66pOThITZ6ofS1eG zN$f*!b*pIf;Ym&(nmvOy?Tlm9B0#jbt?_ud#(6i`vmFm%aJQYxTHD^OdmcDSp}@Yw zL+(uEDeluh#$@G=YHtm@+rh@-<`qW9ZcS09QhNCQ=>&g%63VE*8|D>*qCmTYAP> zI|y{>PF}owY^?Fh$JrZ7M9bhlPk?qpWh9)5{&mDzHAz&*sB>9{_B);LeJ1niaDHe#&J z^$ zA|yLO**>(GD4>)fBuJ~NR>OK`8`8|dp?MiQz%3O!`VcOc-k) z;O%nrE^}kr+im*GY`$iw5k84BrUZINa9ZY+Onh~zrHOjR+>1ADZ{9dR3k}WAJ9$_t zu|rvPPk@4Y^1$xpNIFg!ufF}MW|q?+V9~DtZm9|(=y~V8yDt>q`s81dwKq(PNZ{W){!+{WeoPz6Y=l>1iWBE>$hBcFQ`JY4fp9&X1m9aqkph9Qu9Aq^92!)NaeSr(Y=F;;E(2Ipw-JR(0t` zNl%TpkqsIH4L5#IS+Y%%zpA1!7N+lVU6YA!;I&;1ZZ>khb1ZRC-@w=*36laE7z1i% zr~Ru3(?bLtbH%_>zgE_ODvWJxUPGCj$SG+G zp2rIh9yD#_4BRC!UK|~ru>-wV$9>hyvbD4Sx)HlJzbxl1L?|ywvw=lYKB*VinqCIA zsi$mZ!YN4Lh_@o;b9DT;OacWY~Et|lbEbK*aVb*5JW zpmh1W3M1xaeUgX-)l>G+7AHeX5PfG?0fV_!7(~#d{D)N`e8GPYPS0P)#QX%O#R(GV-Hn46Iu(0s;&krr z3M$4Qcsnp@Ei`IDSr@G#Z0!2dig#lUKwT3GF78(A?q;zy1*6U@WW}SRGF6V#7NKe< z`n9i>GEfG4_A4*zONeyToT`<3bz2M>~d zgzI?Qch0dS>S}!3k0h%#ya=j#*?c?K)9Wi~nN*0VlCy8jHnEaHZsM-n^m!>FuhPebQFz}Pm0~afc_ZT`QTOpo z(FdR62dvZ%^9%Srt$+ORxJPOTj2$-i&l?LYSt__S!w z^yLd|?e%DF2H?{0lsgfF~z|%k5m9>xX7aKFOlh@c+G5zLTMF=UE7A*IVMlkjRHz!zftK8$Ikf@%67KU3^1 z6}m1)VKJcXi;i_ZwU(<+_%xOEAu3K~QqFOUCSL3y?}`tOJ`%q&b1Q%SaJF{Ng<^-1 zSbA6C5yM#j=+1Zt^E;80?Ya{E1_gZGte^9v5ua@h0HE|f@0m^Xz}`Wcc?U|-LhA0y zhs3h{rcQNu-}Kn{W>YZh5#7%BJ)gNpGqNMQ&{7s!yqtyf%h#`v5*E2%lFth8a(-s? zF~?3eUD~O*-`}W9n@o}rHS$)NPo)DQ|LGaxL7@4si0-!%>XBHl0WRm+CM)Q{t`v7= zmxcw0#WyZOrltnIYuA%n&KkEIH7Vp~Nxw<&G_gWwoz7k}Fxi9C0z%{s4DEu@(p)&Akb)JfqZ* zQr(gINppmnw%N_Pci%vgGA3uljc+ZSL1Vc0yh2NqT#XZL8AN2(bPhrmn*b5}oy7R> zfAa!IlEB3&=?Lb z7O62@8mi5=u_Dj@_suf2W3t?d%N)kKSr}OAUG0;WlbR~K%SWZp#q!q0YQ>X~_3>l61py8JD zA~~qX*OQ_!T7lyYDJfp3eiz*SeS?27K)>RPz>B)Nd#Ph%ihP2CoRNciS#H`Njc zH=Vk(%V+Ggq)N;msH0FL!jYH*P0wN6NiYAy#s0(nbcdK&jya=aV+%q%-N=-vs3%}i z(Kk~Xni@IP#U1@tUiOy+(5EtUF@+N!AH~PS75BV;Es>R8i3jEjIgAK`uj{D(iS_%9 zkX|qicy^%Nle#hV<3|Lr%uSLH~2uLqkh=~Lw5u~S1Q|B=nz*+Csix4xI`4_b>(pRKxCd0#J>7PWwjhj8M zSMzTu-0^0io~aY$6}ZAO_YZadlN%U#F`vLp3J=#C7#%(4Hh^_9)4hn9P`obpp$N^i z0&2`wL%w;7GsWR2MPnfLVY-vE_v7x2C)Xq-r_@vl^O1yD)PL8Rr_2uu1 zab<8!q3AunQ;7@V8fm?g`&rjJTlW2rcNqoen=q4(9XmEaAXuq6cH{BYnYS=!`27V1 z1d9M3aRS3GyBE2?WtxdpQgXjO5k!*hIq~{WF48K)<(cP@b=&0dfXrN%yQmQ31BAO5pG!Yb}?$X(E=YM`f-O4Hh zB{?};2J>@svO-Nwx=C%RIWk*HTKYw6R-1+%3sp?P%&%QW-Df))n_78>|CLUft$hw+ zWIrowZe^wIIB)Em|LKi|^4nQFOjxKCii75uQDARsxsRlDDqli&Tr!xFZ`&TujHH%qsEBhml;wFb)f?4?Ti`421nPka7jXL`pF#)0FrJ$7TUc2v;YS{ z&MDU;x%n?iOQGw7$rK7=*2fwaMi!RwsJ2< zptbT>2S)p>0Nk~HJjHV1{PNDu-fV1k5gy-P?bpK=NZ@`4x8dXEeQkx4%gD&M@fdzI zj4;X!`kvkB``+n}8jwLAJ2e0hI{#0O{a2%sb21>X{Sr2A^r0$MKOi>N#*R1;d&E&( zObdDxD)kiN9EP8r1dUwcCr2HoqDvkD?u=7Q#hgiu!SkTp%mmlhXUETP26UJ&IYvoRJM-(!|Ib#^4*KviqsoK&Ucsb^ ziNUOzVq5M}P+mS17e8pE=Iz}qpyMUA6x!*?S*jB#I*Cyk>m7;c31U5X5NKxK+&OOq zjV{FNi^izCYHMp7qoGcM0@_gMV2!p!W_E5!DYvA=8&+<1ti7$xzKJ$nK0%$GjR_l-jr=khVx-D^ z7HFC&DS47|2hwL^5|>k(cNqxuUxVUga_x$nn`vIlK(^1m@%gfRD)&}15K8kFUOM*Q z+upyb8Bi05P#i;2a=cmD?rCWSrA0(U7!ETqTY84ojpQYprJQup zAJ0{rq-ABt%Pw+$$x!W=!a)p-jK*tbrg;Sg%K{qQ>T4@8y+F6`!YFB~?gIZB&~t}g zh!F+PoPU`TtGngQu`6FoUTn3fwR{>G%(CR- z7VbI{cg2ifnZU)bDp;IHO7d!8CzsSZ#iBgi1NSN@J(j-me(W~?)g?rQ6Zjv|+3)(p ze>F|OZVZL*lMIhS^d=Qy?NpSxzi^*Pii=z8rfpPXCR!77u-Kvs{6ym2LbX1g=@MhHY{+z>GE6#GCbDh^z_Id_ZbB`HlvJT7)e025%68+1nayf!p zJwDt=mlp&#{Jm7i9&Tkq4S{3(92`B>m4n;N&z}#Bj6|HO$r%R#^Wn;Yd!R(HTTR5k zkglM;n|&{i2)Ux8=&y0?hYlG# zP3(JStq5?9Akb(KZY^~c;G`-$?gavVIPdQjIsecq)z9O=MN-6q-uMgL_ z*EU7R0@btYx${fFvW*S;xQf9e>*VFGHZApR8waTjCJL+#NauWF4-0NC!u9{a>I!o%>EAHDm!f;Nt+^x@0gU$iZlBYfQ`uD2&spMv^Dnl_LO2Jg6sf(!;D zsr#vD^+aE+?@w_vXJjIqNTE#SBi;2j^5XtT( z24-e+xRGONg*=9{D_`%JzBU^j@GjYy$F!9{sA8H1NrJm`FtZq2*nJW}15w>jrE37OSHv&J*-aH$ z6I9+ukiL4Azj66sVEbh3`k`~GWQb#7Li&!JfUVr#@m>^ zyLcRzu9FRnM+yA{j~nF^?OWLQOc4!_9C^E4H@o@i`SP*xbAi^Tk66ql@G^;CyL)@> zxu;x36fgAW`PUd{I4z`WEi|n)vH1Z7b|xlQ6g-2$Q+!=c&pJRh=EWaM^t*RY`!m51Xs&j|5eiihAy?<+ zu_x|9$Rq*8MM4q?UnNRJ8`(wEM<%3d>ZKC(N0Hvr_xC^-_{hij^+S}ZTGd)g z@XRX}rKhWu!j240vOGaSQp0u5Gn@)B<$Zrj-wmRb=jQRIrN;wCn1DzdmRl{muZ{bK zf&2Oe!#r6o#pQVtS@e5T3TEq3fH`CjIwqm`VqFMgQ2NGoBHzb z8*L{m$%w?9vAnFF8z&7|R##tFe6Ma+6EiaNJ#*x<_RG0;tL$p^^>fSFqTq1OXsLul zjygJBpCRqh#qVzAUxRzW+p{p8bx64aWphZbiO8i(18yT9=a(?GNjFYEO!0QlA)k8i zR&*n~9x=t_VVNdpZf=QEfvCYs=av#z!5qa#q7Z)V{8yzGDNB}s5&Xf^-6|&c`qsDy z<6D2LT5Gt*T30LApMlx|Du)e?NH`Pwcj7oE1O!>EA|tUx78C6(Ahthy1GTWim9VNZ5`C$iAne7 z+6)avi#BA_d}^aiGoIzPyRb+0igA1u$)?Ph5Glbi zGAT0yk3=l&yQC$=nd~0a?+QdmY!a(mc{wWENnWi!jw`CIPz-c!K1U_iEd~?E0*LZxQGtZHa?2pJx2Tg$FMY1zQ z=vi{!?(UK7>>)3lH-8`e*H{b3Pr$(|>eEUC677lr+F`zzh zqxpY^b$7J-`?EZi%xo5b@bo*-@UP!JoMPHH0(ERj$i9<| z&vp&d4~c7Bvc<5$jI!p3p8ORZ1md{wh*O=P+T69t%*<{3ZcVXX!SR`_{s8@X8!(P%C+WCz3%sP}raPLn4 zrr+ffwSjr;n;%_Ois5Hh;2IJlFoVSM)O&4){%7nz6%PtKVy zT!G=LZ?=~gH|*I|j_mtWm`~aK;9+O+#mS}tF(C;_xq0*NJ>99zs&m}1BZw3O18J%o z6hh1t2A6@Y^X3f?5SC8?lQK&>xEz>Fd}`b45rbg3H~kJ&1seY#~a zatVt?-OktQT;f3%GY4Pm+|#~P9K({)dIsdX@W~$_ism8Basa-=H-mDGAOa6Y@@Jg` z;`qMm+h_A-w{oRV2Ckmug1gL+Dsiw_J3)r{;wwai<(`ht*3Jx})K}AR$IDDhS>)L4 zfG&K-oO)$pc98?p#N{z~_mEF$H$XLsR*nEVkyG5jUY~-=(u^8%3>NdOQdoSWdhhZS)%E+4AtBkHrsbgbz(gpXShqpfZ#YyUM zrEgmK&H0Uw1-WAn9+{us%^(J)SFQY~m@w+1@*|hnhi>Ah0&FNAdyd}cB7`<1@h3lGuIN+aM4LLW7oW_M^%`Tg%<&p zc)at`&m;PYT)O5Mn&47hX{0~m!7KB9g)Gw_nL%8$p5h5y$4E0lpbvHL=L}USYhJ;> zz`Pt}zz;;~k1^6L^=|8wa8USyslDO4@CdcO=)Nzi9vrgZ8P1tnY?G8{u2HY|0jbO@9w7V3YCeg zJ7lPn6N>GIT@m?QMcvdEj-1?ew$n#_;|JS@YHsleOt` z{I3S@1g3#S+hzg_xL=TFXWwMU3=R&yR4$(G*=A;*+q0R>`UA*`kmt2$iMli@#hLEdn>{Bv1Hw^v&-Sqf|g`r1I40Ez`1~Kl2 zLZ`MqrD_WqYV^4#S5?WlL4@EUijM{L#Hvz@z%_{q$WlLKQDk%)xKAYPZIT{-$29MK zjp&F7xW(>EE7@kZFni3CE(e)|Yei1D2F^l;6>W#t)h8>|_W)>yCNCH`LU!`kmVB`C z@cj1I1oc#ae({^sP(A7R5Wo5CXhA3ce0741+d*>37#MW!pssIzL6F>|*(*jR}as`mN z`g+a}Sb;9&f)jCIjv#xL&t;j7j`{BS^zPG41N4&V#AN)yRGuihh9C4P%v){!!XYeD z!(b%Zu2yt;xcz}LawJ;n`n6MwrS=YGK)7)|>m~us!QgCZDbC5c#!+TxBzO6npQ#+9 zJacXzbKrFLw)e;7>*}{}KXTR5LF*qure$3@PO)%vyL1SAM=;Ur2+%@da<)7T4Zmu> zIB+nEX*a++=J(^{VtK zPoK&j6Zi&Qf(&MyOrOx00?98#WlPEAwzExVcU3m~a6Z*(-ir)u3~z8I-}i^pOCy$` zyQW%u7XV9TZ=!C+R-PTE4eAzy>Is=a#==F8{+Q30pGi4dv%LO}wb#Af5#(h@jP5(h z$7kP5H9GAYh+kI_X)IKzMvv;V*VX!wDk7H4FTBHc`*`$i*4FOmCYo{M>2y|Ap2Wk+ z;UaD<0Y6%Kw@8>RrYN zVkJ(Ji=+#~MQMT}D2&egy5;`z%rc_-^X#KhA%7fwJ){DTmdI%F7aO`9aK_HTh67T9 zP|!UEk=MEW;Iu7E9``MS^6OPuwv=Xev6M%i`tI_>8KtGowlx!!s9eH_R96mQw!Dw9 zH>X~wA8!D@%IZn>#xJLt=O!b0$jkM3cCe zq6u*d<$3QaM7O~|lI&eFSHq9Y*Ayb2KE3Pm;6~1jW&xeD<&hPKD!h0CE4oks?qP&c)Dc zI4hp5oR#&cX#eypXV+i(=7Emdu0Cnu{jN?EXZWYbZgz@+gX0s$;}k~JCqGaXbGlq7 zOh~y8Fa3u!@umC8U!S8}yOyJ`^Np55AC7=SGU`@zLj=t#4a$BzxGHc?M55Z?|Jm1Y zz3|hsu*Kvl*hPfw_$)8yEp0D0qnqm=dOsXi9*d0T8YtD#(hgMiC}3UIMDlSJ!ZiA@ zg_w$VWqMBj7C`dVG-_O)49Yw$+oLoakMr|TT%W8(CbKV0%j|tS442r71Qy2r`<>Un*fhOnA->CyyN^- zn`ILcZmneZCoAkdQ+5CF`?yO7e`{zxs+F6oqJmj_DqTW@&*#l55?dO1?b^KF)x@!g zG$)4FH0Jw#K06suj`9(5^^Fl;z2XrQm#O~lpDezxf+vD=ux}ZkfKw(-z$uf0Cv2{1 zsQEVElc3$LWW}o31L!N?h9Y$OP_z!4+vvOV(pQcss`pye9h;m3YbQC6^cY|G9ut&G2bp_^n+G`zEX4iI=p3-aezd$pjLJ=7~n!@v;OU2RqjrqM25M-Kaq?SMud` z=Z!pD5IQ>*oGq3zY*vIhXF5B+EBF0pt_UqZ>#IXlU?K?~9zD z3_A4l=Wp50HId%BSxWwT*?NKV^>=#^Lwl_}e>qn1mmRvU$>j3)UI2gFGLXK%KO#Wj zgfy^+(+4jMjS&dwD=C#2(a9^E{~?U|gZRb(tGqft>Q;IRIQf1pAS){?*enl=E$MyG z+1IK(zW3Kh{Uf9QPj8U_hUL!7you*6>1XpZ4qWJf85ubO865+NnI-qs6yoGw`mdzJ ze_O_XzeSD>;8E;oD}}CXIbs3&S|M|{|HX0raqRYwmo|)N`eNr=HU$1Nxru-3NC56U zPzx;Kzf#Kc&oBSPC&N@Ah8&y?uq^xYI|Tg4|GoYHw~Mc9{FQHHp!A!M52ES3wDh&1 zm+ZN+GM-rsm(Gs=l@0Uk@P#1|2~?^+?s3leYCY-SVzzc|)xN0B z1$^#GqiA+C3jJBz@K-CLycZO4{JV6ZmPVRwPF2Prsdk3AdOqFOc4FN6VHV@#4p4&n z@89}2i^Y|$tbZO^<}|wb@#{f*Y=gg(Gc?~CB^!?#( zEN=gWh5Egp3<)z;l{}*Z)zZ;HoXrxl=JW^*Ze}6H9Vu_$Vh0B2=3(%~Nu{*{RoJSl zhnDlX^M(FL`^JC%C;QAnz+UhaU&)zWC%s8I!cg}K(X!>t8a;PUG0*2w3%l&0p)VyE zp~i~sH~(Q+fA6vX@VlX>Olk6t_uJvU-)HZ{*tojBg+xZrnAUG@-Z}w?!J=G!uDPW6 zvBP+4KNfe8=0=XIka}+X_wt}S%LLFaD9;7AyXEBMmx5;!91%+;HdWHzPo4nNCAOg+ zWO!adUlN5&emW+#%+9;xHz|brP_Ciez0|C^xqR`hMqn@kAt$3uX2ZtbI-i}-*p)!kUxqlsy%oa4k5vhO-w71=8*XlH zZuC&3-48p|kSgqSjsKtEh2j!&&onD^pLUKQz0bVdMTnc;cLc^8MxdzDeM`9*vrm6-&hp*C1iWv^Rp5TmFY-L~0n zkNEZ*)YX?^tD8teat|{E%E}Zr>!)#bs*8Vn0lPcN<+{|gq9U+8-jD8B3LGKgXzD5d zA+0`nd?7j^$ow}O@Nd>n=xF&$V;CVwapS#n70}t{)os_`&~WNGc&<-Yh)Y0x;g0e% z3DLtqv(-lX-R0^s2WYw3LD{9^4E%EeH+#deA~fTk{CwuwCJ7};7C%ZfiXek>4Pube zfum%3H%1iY6fLbxSK^(k$}BFp3g5t|FbxuWxD(LSaq!hB`Y3UfyBW2KkZGO-w`ts) zBr-zknkP^EO{W4H4;yY}CCGcz-@c8gL9fNb*DfG&XThSEMFI=3Ul0x_W$~+b!C; z57u&j>(D5aPu~ZU{+^_PGxXHKjv~A2EE4sALtVu!8i1jYh6NUUzHNe!CX zxtEj}m_D%2P@IeChEHSL++0m9Fwu8yvT+4CUgsb) z8o}|oxU>|%+M@KCR7)4AT5BWX-?6^d_WAspH&T+@zj8WmVX>6pxW0VHXK|&8qsSsu z77rX{{0MpaPl3({?c)F%Zf&|RrvwQ+3iIi|TRNCtv&fi1N!ZuGP{3(9evjGHtR^T_ zotZmsxyg&$&vz|Lr%(VTw#kS3=G8Syr7e6pyLctcyLi;Kt7g@%oksJKpZj!7wN7b! zT&Lixs-RDGN%6H7paugs^{CL&!hHQSJpGOSVlcUtY`c9i((MMi@oeUIRtEoW($Cw$iNz@3vq{G^W zU#WL+XFnhS1!-&$w7K02yE87ND#ij#rLuXoH4ww6&kr=nzcnR&dDxADPwLV~{g&xU`EM`N?w#2E zERtl8s+c}W?+#KtDzFgLjNH=X32Fh+637!pOP%t|Z!*-GF#}sTtnU@Br>~oTD;$;k zlISCSlm1nu+m#DDCz(it@Ld_i7g_8Z&uMj~?IZ;TZ&#>b_R6Hvj$e&1+(h(*U+>*$ zFEaUkus3m)vc4FJ_4U4i-S75nYS;>WER0^iwamVkx=7wxA3((nlo;xLp}NAhPX2T& zT??4OMmQZGt?I0Rm;k1z*;>`Ed?|IeGimp4$rC&Qc$VMwV<@$@2yzST(({^>fr^BvIWhT)6?z-@7)iWm?dSW77^0Z)3>FUAWpQL zKwFvYb^jvVZ=mLHFnGQ?Tc(eN`$D2iL}{zw`VXLd{V0Rca@BSJ=hUsb z)exsxP^#%>&%uxPs}^ApQE>o`@Gc+*ijs~1UaXAZ+Ud1Zov+hxgd0bb7q2cNhzt(g z$XPDZ-@R%8e)D+^1^<{6HFSW|GCV&My)#kh zy_X7S5V?7a5@|m~EN{R%nQNjtc^n5_D^S);Oq z0i2Sp7&+2oVtirgUCqLbyVC-1fzsHB(TG z^PJSWe23uvh23Nk=6L}uR(g!XpP8XX>AeIz=_LA`vJJhr?yef?PDy`$T;NQ&tP%9G) zpEI$Q{%vCLReiTE?b{2F3>>&9IPETGC;5&uU_+vWW&sfKUme$d`&n`a9qa-eGV{0atc5Q$*kCY^8b>Ds( ztIE*%dmDmr%LQS`dtRB1qVgDaj&!9i14z5o4Te%qc6PhK%))(%-Qbxd-XMY$!))0n zh~H)9CNKhX^vN=UxOJLsLtN0W=Pm4!((ab9yluE4$3H^6`paD96#RnZ0OcVnF+N+3 zyHiJrVI&}Qx#()=bp>dd*T_}$*2eYkdB@IjpNH4^A#X5v1bo8cFll9_mrmJ+(xxj> zbOJH*eg&g?eQZARhoJfB=qP1149=D3^J%a~2Z_Jh2npH18!U0pRLh+m*@?(Vum$`g z*TT|Li4JPo)uT&+I&ExrqO8|_+U)yLk?pxChZHNDr|7$-jYRw>)|GHAI(gVt(2+fB?Z>Rd z_7ZqGpA$)K4qkq-$#Ws3a>QB=q8lqx6zE{w+hTI!?3-XfYBr zj>n%wJvS7n)zu{eY#|94yu80(-^B7uqty^*J*G=$5q@X((jy0S?VgKZaEZQ_))>&$ zN#hCXp0?IYO_KJ#do&O2Afz6I_NHwu-=Vd3J;+K0_wfklsvX1DxNLfmB7S^+P|=QF zLUcKhxAU@MKwLH5{Eze@Ux5jGeFoxfwYx*zZ4nsQ(5>3&t=Oa8rWC(D=2_=sIJH4JvmSvsQaJlgIoo`Nld_fbC`;7T)?CTj6?W*?M zplEr(XxI|B2RtVLpflziUy1n@#NWdu!v3>EWA;U_EUXkcNa4@&7j+j?5jV~wm z?M_~!1EJKBLgkZLOQ`PWI_!jK zggnqHY73gd9(*rmnqI#<_D~Qxx4K#=l}rY@YqL6Giqb1Js(PqPC$aXZ>}5nP<+;)b ze-L5njFJ>2Y*3Eqyo#e(a!v|*I=j}YJq{)&A-fE_&v5D=*ag>Big{sFcKjBiDfF_h zk7EBGtP@WE%yf;fURe-0#a3ld^g{P(36=LGUkM#i>5#}8o88XCdB!P-uju$I|4z$p z%XqG4gA=|fwsK^$yY%kIdryuD>=P6aIDpWH7?}edJys{JWwRG5RaE7?8>obWhg=VciYDWOd_BmKoH~5s4p;{<0gIB%3G>CleiNRMG_cCy(x5-aj z_&Yi#@#Y_d91n+?2EB2unF`e48Lum0S=W8@R&~4@TX(MVJ3}up00>w3+)8zBxWNtS zh}ex1qv&xCo-^y%xmy!M+z(J3A^&XZgi#0ivf%g%v`G5-QlHI+4QCBjw*s! z7-SkBTY1Z)zmzBbf^PyZI@4T}?1W*jbcmD0r!9%Rxb~7S;yyjGMQZcYPIcONQ`>U0 z|A)OdkB55i|A$K`Nh(Q2Bt`a}Boswi%f3_gWsq$!#u8BxMY8W1S!QG%jIow|9}H&3 zzB7aD%kcYj&gp#5Ip6E*cU|}6{_no$KW6*P`}2OkmgnpFdcNEiTkmV!o_@VaTVohC zoK;hP=XAN5_q20E`CJo&`hdfHOsSDG*`_hv(8fK=R%{%Q>g$)?nC}V+^2??M4j z!I!Fp7wd<6sgbW6HXBT34)9$EJqVNxIA*P8cYDj1m+VKHvXC5l$(j`TMx$&iBG_XD zBW&rs8gM8m=c3#RqT@{=7jkUMR8+kTDJ^({+89Ms;yF(J5&sRo{n4bXSL@l#t3)3W zF&HokyOW=%)>HTb3ytNKhDK)s;mGa%Dk^SeZ z1-Dw~Pmb{3M8MK2c+#=h4uAE$1&9b9F`J)T;NS-h%!I9=KlY12E)@v%`rDGPJSDru zqItNvPY3!#11F;!%Iug+i9@kRMh1E=N!!N{E56(*UGAwwRaQbrHfU4sp8@?GtninR z`VX8~ATYLODNA=Mb#&G~w+PXtP*A+xUbq+f zT{wUL&53Jot`6E>$X%~YyNOl_eM#g;BjZ0TSJ}8alS8|9Keq%oyv6wKy|?3q@_ED(oFCQy=iMBBQ2K%T~^ zLd4!qv?dPE?aWsYLnyo1uS0{=PlD8UX6k;J+44_bG`yWTAo8viOXhTx)^8KLH{oq%rD?%qE}5A2g?fs4*pS#@^P>K;dp5|A z!Z5}ph%j7IU#ZL7)zuc0pMPpi-fv|&(e^AC9ud=7TvV@Tv#DI*p5W)8T5DAEKzxN@ znVUWvKY2^7VZ-o&X<~J)fbh|EcZM@y`IY3E2|Bu12Mli(v@9c1 z31Hu3>_$IlFro?T);CrWvX>0AaFbuZ1UreQCMU~%u-!%@s_Wp&1u?^IZM&n_=gO1A zDEDV_2}Qlp^mzYFJx^U<$z&tfo*#R-KLmn8p{k6{ zfx8$FpX16P=NfWE((@UqM~wE!V~cxAv}<1-+Vt{YA#aTr!C(hpRO;XA|Br^xJ8g=! z*{*2xCcYuK9vnRxA!A)z59NMNx+yo<;`^OpPs#E7s7=ayG7t~Yp%+^LmG0Zm63099 z4bj&6sJ=wsKne8Ke!I(Gx;ltmhPT>~gU`}MFRk9`wNP{yc@h6ECzwAzH1u06A*^I*$K>q#7UBzgbwa>lE9bSA}eXDi&AX*gi7GC|koJ#@f)rw8)Ybo;UM zi$Ui^o+Wi7o7{pX+VbUU{jgh#5_IX(ASfsg*qnE(%aWNcw7sw^G~ zjr((!Ac&%S?WIGPq$hW5-b-1>(?scsdp0XACQ{RtFCsE!z+L0VliG#S{cBqGY|Cp3 z#l^ zdt)QLETi5RI1GEA;ts9imRlw=qbeyD@`>u zEt?#f;`~d_RYjNtEhQ)4W46ZDq9Yy|0i9{k0sr-+B=f3bp{}ZmzLly7JwcWy(Q_MToxQ89I+>neZx}A~fm1Rg7fnd(O>6g0 zp1*KmnBtna__+C3a5c1gsi>{<*lD{qekR-o*2G`oemQw8i2j2Dy_Eh1!4dfj{DwCH zM>_kZVQuv^e&E6ZBnWI`WfcSV)W_hQP;YIgJwd6rmmW(^e~3Pg_a82Ka}-;A?$4^b z`2>|IblQ6jx#eF_`

O7+eIK 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

EiIiA&MailnCjO( zem_j>U00fQ^y4|^54uiR7gV+5LyfgW+9^#MBo~$`yyu_rx)9${ezA;u8#h$SK3o!o z(O-1JMwH%0>3WXZ=iPYTAR2U~>htHv)*T7)E~7xfSj*8;5ntP34yCt3N0>zx%t||t z7}paO?pZMZS-J{*&eV;6Y3f_~?LwF(fcbEpLN30{jx{?_ky@CWv^;phKRsY{cv*O0 zbJMe89%h8MGQ1?)^YW8|3=B7Plhe~w|C*a}F^FEHhEc$0j)=G_t>#4TJScK7%L1Fs z2A6xtnapa-Z;>RU=0{V}u`Ea|3s?{S4gs=${t>@P&=|BME7AH(b)??@KJm(MeaTY~Bb`mDctKr^bv`kA?IDDhuQ?L3s0;tp*WEp(Yl;=xS+`?!Y9<)nGui9mAz5X8 z<8&W6tT&6*)4@KpF`K^OoCSt^mUE!MwF`7*=F4O$vHY^ULrqoJ>rL4PFHjCxNG_PvXMfx#`i8;jG0O(`z1i(fVT zzjFYb+JXmsiJ#-SOwG7PcN`!2R!O_VS&U-j#~OGbU4> z)^9VuG;liF94vi9zmU6&OtR5yeF^h9_$azI-O0xK&YY6(kJik<_b0wE)*ePy z(rjUj{1=FdpnecTZhtpiAk0aDAmAf6!&MWY+X6g9>NZ^Zzwd@9+6g1ycC@yZ99=eL zXg?hyzX|!AC%E+4COI~CF$6csZTrf&VGJ1d4r8mKD@B%;h9NakrjFxcbWn#elPydr z^|;5WO4Y6Txj8XpJzXd^8JdwwOM7yux^vSoOUBn1Q$W*?jOYCb1c4!g#cGG@7<<`o z-(G4O895(b%(m!iX^}u8)R40|$nD-qY3j-vh6t=|-O#yFN@ebtwlhi zmm|Fm(@kR;oRGKngN{%<;!b08w8bn?2IHc?t9(uSUySL$k%(dM0<3uuI~y^s6HL|D z^K{{5Hr2j6KnJzE^kTbnvtG5U^7;f#qMU8$B~849Dmh;Su(`i>=O;^Hn-LOqC zryN+(Zj=GpJ4Vf;O3BoK7c5t-i4cvM#O%NS#=bGJoW;3a09uA$3;UoLsdQ}Hg0X&7 zdltcjJls406T7>ltrzFC%zx&DoR6>C9V6{h=sDL(=`$~Q25mI#ws5EE;Ka|9v~{ub zjg2$GTw2=N=Jn$SG*}xOn|L9wM7kg>Rc_(W^{o7p zNP2{V;hK<5CyV!X`rZ`4QHjPamt*KE7tKo&_6CfcZ*ZlqQw>3u(VUjPuTR@wyX;Ep zF=~l)^49V5#u~YfZDN#+1Ml<*M}c;j+ZLxF{(eKJ7t6z9TfdnN8>VHAb4lfHk~1X>Nl=G&;N)Y4=* z)Y*oeGst2e5b0iUh^Z0wjGL-WU{@^94?f_XrDWP9#ubYj0$vFZt)>OQ&6Imz17r@`CH6z8Uq?gI&?69wWtONx|3 zzb9y!mTHMpfWrMRcC)!M?fE!qTq<~EX!GnTYBhFN1MU2(r%u_(g7d~*1y-~0VBH(ZMqxQaV3*JxTrkId!7w3i^XeUx)WZpg^yvyu9s zbG5I1Y+cwF^-VXc{oil1szl&LOJPly2+W9 zjci(CD(de(#u-kM+)F4ZA-a7&yfxe7;Pi4zROeM`>iBv(H34?A>cDGHQ;T@fm$O+` ze=)|?f@wsrh8;r@c#llI7`*{pW-W|i&Y#92yIn3B3T|yyrFX1s=oS6jJ{4-DATK+q zHk}pi44e>f*NvEy>S?M!tMn%BwQPF;FX1iPXvmJ-WHP5-jtk|w7K<~v!)Adi9cT6$ z>S&lfR}qQ$vKQ~)(c}Sj+s*IDr#T$;^Rq?`c-vg7dRd_ohYK>WAzijUm=_PECRE_^ zF^3+BJEmk+O}6xRWMfUaJvv|@tv${HOC*XO{?%3emT1OP9&F4|SIiE@e6Qcr={>vP z&j8eYHEx@yCw)2GZ*jjJ&iKcM;Cwumu9SLtWlo93^DcfvL1n3t5cBfH_0)inA&jpb zXPnG#VOD~xy4fD-Xk>g8~gaPOJ?cIw`m@s~dg8=9$uvys;Y5hjM zy9(6*!MKFL!VB9|o|yY=K6P8UxfdSMZ-1&1(khSM)K|f<{jt>7&t3GRka(iO_orq* zr*c5m-u)Ig<6rIPA9i|Bl}c0d{>;Z&N0?2M-H%cqa9{6=&~8V0yM+Hl7S3F(Ji@(| zZdCXa?EU9T{%>mp9IPauxixxivHtTh$VZ=7e4^@zh$Bw=rS_C{~`rEsHZ7T0Zop?8+79~j85O*sOC}w?# zjZw!Rx%H3!>tBDy&u8_IvYq}fzWV3eep|omL4c5#XSF z|A*IqJNnuAQxv~&@=?lT$ySTe_IFNE|GQV2yHgkmCdgKvZnSgeDUW0j3;in=|L@-Q z*K_;F*}A9?NEg-0=0Ers&;18G`BdVIwLbvD+n(l8=piO=KpebNMR*r|2@m_)7i+baDrqI2-$*?yN6KD`1$Nox} zy#Nl6?Twmv&9-v=VxU~VpeRg3)RPd5vZ$)*ljl_e{B5s{%b5#QlHsSO4ok1*&n~rP@-nQR#Yg{oR5} z%+eB{ot<5@X*7sFL78M1c(?ro#0T=J-w|`^l(L>)?6$8gO&n1~v={VP*7|ty-MmCe zF^M6aii#oFsF#EL%BD_;60rM2BO}xmq}$lQfP@jjbQaS~ z5tSG{nIE+qLJe#tqO@Nb>dvm$LK+ktH<@En8!n~RloSmT5PkT3D@?MdpI}uj0UuD= zdn7*l&Q3tJxrHXRKs4mknn!bI>l-Xp+kbaHe=MBDF~HO$)-k=;x|ndcc9hMQKH&(& zz1D;mrHAbsK2n8j>g-ITGjph|D*xOaQh;7m;B1EnJ_lV6c6M^|m`x@EWFwrdS5--g zzAugZ0zrnLX|FM87Q43#kR34^hF^V>?d(9M>>hNXd&m58@*G|b zDsEu|P}JSYtGAimJv*$E9gEtMD z^6x=6Zi>z(eLh(gfvT<+er9$hvQiRRGPu@H%TQt`?oB~DtKI$|`OCj<&%_uYX6smJ z119KR?*>r}t7Fnikapiz=UgDQ!Cy;#DnsCykh{k=GGdA~l=eLf=tjrDBI|s zr$fqYAl{ZGm|a;{TS79hld<2zQ@PWbVU4%G?6cYPhFcLBOtdmj_lWBMqF#PO5Uw;wu-Kc~}ja4~6^9RB{@RV{1HQHvjMGmAor@0;2* zj9ngZvbX=ZUv&p1u*=4kWNNH^6&OCyo%%XUB|9gZPMus3EbZ%v1Fuo1HK_5->9UsfkeTog$ z%?H;{N=XfsRicooCr^IA6Epfv`^~aTmq8HuvUS(PW%{nrN_l_}JR{97Cx?w_ zld?h2-R;uq_}vb_rUFVp#V^e^)UB{=yg^K@coA|FBh0w`B7az~_ zSHAF4v(y&7Jl7=K>donE0gRa7%O*GJjE<}3V)8u2qLTpjdxne$+Ggz0( zkO79$-zlKD9~4ka%ZJaOq@z@{+`^>c3`EW&1&kA=^V?Ox`(RB1H=B_$SP#>n^&aS) zYxcai?PIgZD^8uo#oq>HXA=T^oz%5<;6HH2ID-K z(I?XJ+PT@k<$Tv;@7jA-ZijIkCZ-y5Sc?4@KR2H0^O$UWjZe6Yd|FP0)U`N3d5XjE ztVvM6j0`z&-DP9rpcd?4R9=J%X%@$`7VM~sZ&l%0?8KgWflSf`Xef6TzIV!AR`2RO zt>*;(DAg4oAI~{AV$G8X9_Cp}u2W|yq1O|027%lpqOUOoZ&9NOjMnl&%ZrlQ!w*0p zkmftKnkZlQK|HPr7S|~*v1(|ot5_4C(>yZj^DXCd0hVs=!O>O2T)}=HALse&loab@q)OTIORmRAb>@f9MSC04x4fXAV6cQY z-*aFuAV~NGqJKWQ^?T>$?bMrBmmNh1x^Ba~I-GMyr8}Mv>^Mz2g*YYN_Tilgjomy< zjEQHb#P7+({U9xIDqsD!pHecu`L$+-)83ZlzmTJn;0QcepSO0`Ogc%?Lt%Ks*YH6F zT_^-=_ZV--t`&nWDr$_svLf~Ao|o2pnaUmVvBQU1-nrGlfI2oDjlYAC%YkmgL}mB^i=O^H`2hX{np)BGbZDM-qq!f`oZBiL`8N{P1t2T0k+A9=a` zMqyG%(Em+n0HrvV{rsuC`8gWZyqls&HxI^4G&Bkv2lefEUpkb!z@t*)FB#ZXHF0yu zwy*V7Pm0s^()Veq1`zDfDY7N!P!h}A$;6CQbpH^D?S1xnw6|*~1P`sg*B!NX>LMc$ z1qx+R?q_l0Q&{6PXWLtTd1)MHZI@3x(o#W{fI~ht+^M1(Q|x8i`+Y0DJ4Jyt0YgPj z1qomMVsLV5#9bYMr_DC6lA%Xe<^X=`}EeQ6Xo=J;lya&yLoM}PwU5d{`GJ$L1;qKfwo0)reytmd!LW9g&MmuQdu z0k98Ar9Plh^QxevlA)oYqnB~REI%9+6`f3Et!FMF0TFS4zk9!3P+b}hT=n|#XSrI^ zR&bREi;Rp(*|0B?#vRhcNQjiATwdEa{w))!GUM%BUQ=9*NdgyC+)6*JKejw5efu`L zSoJraaCl}w%~ci6HIb&(R~C?)=$rYOnGG1bHx=9bO`>v@kBB(Pcs#}km=S~@b*O}f zd22-_CtC?rsx0LeJTf#gN+vB8o0cg3o!$O-r#Ho@Uy9H*9Ip2t6=>~}7z%c85dt^U zZF9|zZba)Pyl21qy|ZZJp5o^%FiP_!*1 zeq!kEb_XKAKCI+$p`?VwBTrqJ(Yy&ZJB#Z2#ZyC}A$=5q+w5SvXAb3eI7AgR87SLI zQy<69bErSA&d$aK_YWH@z%MSBsA6nx_C2#Ho$!77G_aUwqM{Vu5whWt4nBPKR#7PP z=-R3yY@qr|O$fHs6&gmfI-MY7?v4paHBAGCd;dVs`~&+~*7kssT*jAGwz|2<&oyQP z`KFVepP1f(&>Om>eOu099L{Q}DDqilb8G84x^g9CzcmZpjFX6ZTU%Rnh1=|{;2bw$~Tv2_}WqfAU*Q`Ah6+_w+B_%muA!@Kd{6;9u$$2!~ z{?g%BP;VTbf_Q~JC*Q7!OBgPe>asU=;3~3v{X+M|+p>Vn>{pp6zSm71-Dl#KDE5=o zHVdv!rnXZUwm|zAN~3qqD~fM^Di}ksV*#4tyx6@AbDPIvQ;8QIiXI&o>&e9$&Ku^r zV9q?`dw1<6)lSAyH&6%X7-HNd`y`|+rzCgO=rZ5(!otT5W}XKP*!dZVs{cK3Tr1Jg zo8S#)Ik8RLGS8T_V+7M#&(6%m*{}G`i$Q^EWa3Gp2}$6=6UJe3jvqI-fP2&Ddl0xS zqJN^)?wvX>O4_2kT2$?olbBjw`<^d%*^A1ECy|#{65UiJ<%}|yAU7wKHB@3JGAMGy znJ8^B?@+pf*oDf45yF+~hqbe7-_UdBH=E3VqY(s-({A_fpS#({d=Q~!Ne=~8`hGjP z2FaD42;Vp@v^LXGTGMn*H!j|j!6gz~aYj%-mc0Z;atY;X{N!ti?lY`?{^bt^lKmr-rSn5_Vu@gnhS68ZIg%a1<;93)!ty z`{qlBbil0XN@wqob2ur@ZUUG<=d~XkdLWZazx$@*bF;3KB-7oVXH;T+2%w@b)QQ`l zp(v!HooOPI5xD8;#)6R4SV@VRF0{qd%fCRh8a3`J_!E=aA+#Nd2O7cL7Z2dT1 ze1#GYR+dN??srV^KVv)`Zu z`o=1$M~w_i3?YZK<|f&aG~LT}zFI?sS(W|=&l7bW0VY&TLPF)Mv@)ms#gpw9MS2-( za{6-yC^1J`mOhM*}RO)B`xCci9drqu~N?exNd|=*3u{Z#7Stiv%??I0>tWcuZ`4*U+XuL5aicLM_M981+ia&e)6>&_s3+(%T4tz)Wnfl| zbpMF^*V@8=pR5Kx5=cwkSR6f*G~tmz3$(7)!p?T5ii36wL_xD1FU}W7)Sz>y=>iLx zT>P*bOHlreZx4FSc^t~tVsqz9bi@f0jExP>6em&r>x25+O%QrXxxP%0p#)`j>m_OZ3FmX( zuf5NA0*?uS&L1nY5<UF%fKlg&yrxrZxLM`{wG8{&E)eK1tIV6ta&?g9Aexo<6 z@L#9Ge^Tdute~UjQD}#q$SI5Du)$9jtU;a8*TxWa?^|1W>_~alDJkz|Gqf-ZUHou( zkuSN+N0NVcG8I?#>cLk=PTDPFU z`CaAiZJLBHTX)qI_I!@sEv!IAvHE`|PENOR?2fp$eUtc9u!l^?3S@Y=G}QW>fc)E9Rqd{f4z zlTW_s(e_)U6diYm_6naQyZCT3rEj%%OIKGhJ@K9bM2o1L`M#x)=|^@fa+K`sn8v54 zx!+JwBvZtpjzE{ldsVqW?%fNd(}-Mm6uT~a0S>52nYIu0_KMhoecC-12jXcT@me*8 z&(DB~E2NN&nrH{rSAGp42j&On$NR(jb5*xZ*H$R;Rn=**}KGD|wKEPe4r zQ;)|crd5S3ZcGG@v+9jX=bNB(`@BBGtE)$X4;R%w%PIlQ0#2h{r##Hcev!fbZS7tO z3Z=IIQf@Gp8!B2d?l2lcd!n=waC$p8xlBckZ1`!w$kYVX^abNEp{53q@2RWZT~{xjN(fkg6PG*Z?d>h%Fwjm@ zb3~)-Wymy?<_hv)I=eu2Q)2%Tam-AS)YB<^a_X|&DEufq<{?i})kWc6-BVJsr z_^CqHD;i{1vZ#?*lI%ydJZLL7V~+js;cNbyK(_^4q{$ux+7R%}-iR|WFqnxu+9O@)?(y~lH(BuN94n;|_kG(B)b7`n2 z@7YXgJ=DWPt=-imtqDWxa%?6-#;<17bU&>LE2#Tjzwo_vOt0 z?1n(@tKCCG++DI;8FvcT&1Pi2-Ub+IC14e0p#AIV)9UkaTkJrJ5fgNJKX|Eh)(Kzg zane`A<;}l#2STM(oP1*=wiN6#oOhy~d7edhloNKME-*6Qj{e=#{76c)3~SBa-N^Bd z*BZXs)8a5^6x4E$p?6b)PP0oKeDV7Z=Q>Qu^C1wUotxu@(U^4?#tB2wT?3bA( zbsK}fU<*dC8gQ1R#>8(!?nUqUt~H=W|D6T3W^^6K+VjD{er{* z8lPF|=}!PWJo!P8tiv4M4oIIfmg@Z`)a%e zdb+yb@;h5v-n&jFCMPo%cN(NI9mzLBjs!35DUdJc>w&Kb{>cyeky=nQeU@ZGnu5t} z)9;mH6KHLuCrMwPTf}%Lo7`CT|I+Tb73`gy!mo72JI;5qMC-V32P;za!oLOBR8I!d z(3T^&bik_T-D#*5gaeZb&+&6}v*sb@{-o($EUW$A>4S>w!nZcYMqSI9k?PmZT1!-_ zmDRim=}=fe(R#sb>n$^55J$_;nywcexnDLD9L)MmO;W5r_1^Ky3;1_2>v z5zuhSt5wCWTjRd)XRId4zGxaNL46@PCmkQUFi69+dX1<}=evxIYc>)jw>LYc1GK88 z8T&<6Y!4hW`v)1&q{u-bdrknm1L*Nm<{piAubT5nbw=kd*bkLIwYX2eI8YG%&B*cW zma#_z-4onmk-Xb!QJeOM<&jRAY6{}COakxdWw(Vgiu^zz_|C5O^=~iFj=%pd_?OCb z3s)M`w-MjP(P>!XAy4P%$qNZv+^K{9Y(qYI{8lYd-&_aJrWPLapQ=Mmk+P;7?N?CVfms>c~z$1phY*_TM4_!7+Zhw{bJrXF) z)Lj#aUkR-#C$k<7X(ZNM;&Yunp5S%xGIpvZJEbgfsb+MfXjvBW!0`uP8;7D;B$(B# z!QH6$r4_$Mv|kmvN3mSBSG~VBa-8~(4~+XjM^~4pxP6ogJPOs@ldL%kj{C|R%fF}Z zRI|nkp_V3=qgf7e6gXFhgw`$34MMS3roRMj6)P+(oodm+;%~BRT?c(8PBBDA@2pu5 zb)-TM0F|5qn~+Lg96JEAs_NIGdCwozsY#Bfd-0z?sqCQ!s?y0cRjh^f1-t)@mo2V# zbD%dPBsO)PIQxHd$abKsvWZKBga}@Zm#v|x$-bQzvcJ@(%HVHDdWTH4XAa@@msCnB z^SdZDN(tML8cGOhKTeB;H09$wfvPt(P}6yOu)Dik9=Ori$Y~?GWsvut{(=)&Qi35K zcDqW~ZA(`Xt2}Q=@Vx~ytbl%TL2Z>=!76>-w2E!5JhJU{{NP^@7H^!0oR2f;o!caJ zW^6i==1s)LN_4ld!U6!M^h_Eakm{Vf#O3BdoQnz=<+7W(_ZP!&eupZd-6W;+aFc$j zLvpk*RA#CB*mOw&bf~&4Lh>~Ejz7@6UJ~h?Uoiq>`7pH%xkIH}RfsAtOY!|WNm zu2LleEMfGP+;u=dT)AreHT98J-qug};3J+RcA>$u<4aWo#_qmLHr2K^VEj|*iq$Rb ztvs*4P9_QzKJT?&nDs+s0VT6Adh=izGK*R}rp9Mh*h)ZNm6PKf^V^cyLZMPU8nMT# z67x~)3@2360xm$mAKW=*b(0G^?v}CK0EkG37VUf*hV|lmhF3qs;T&VKIn_QbGK2A= zJfGUn=erGG%1-91sX!b)76hOzErq+t7~o$romS33aMhBmsL|! zlQ1Xc16|Fl@{5;QT3TB_goG$EzrfPxPk?6Eqvt9pC|f=0tOn_qeRe7)@Ppt|y-U^=vO#q=`>!ehgum(b6TIi3^F*7JN+Rb4%TILiDH z`tR*c4M%+N3Hnoip=9Xu`@bxJG;4sCtSgg~kc z1h&6#Bloe31zfVfUaz87OQw?A`GA>1V)uKixGo+*VCBbO8-5<&%+ffJwzu0ipsPsT z+z<@Y4G6=UdaYW4R~MbD>_(;MAJqR10ljE+6#cj#$Lj5#E?B+(2Jb=^H~#wm#Ovu3r>=b&q#OX_td4un$4F8SMFFzAXEe;`XrjF!k_Gx*;jvai{mj zw|&9Nthm24(+%n*fVmd2_$gQ_d zUzh>5;|Er}si_wXu@u|_B&A@M&HAoO$KuVFc6S-rDknQ45<|uL123p4m;Z{)7KvDW zZr+8a!_O%db2CAraKD8?Lue;|M8@cP9Mb}7NnpZg?n`1d4|n`D@`7Y&0}n-qusN_iWO@QmKHV7Ju$LF#O)9sF9PN_k;)beK3P!d@YyY7uyfUHiAEDg>vkQ~cl)HUcG|}_ z^vor|-lS|`jXVtiuDE`>o5r<9c-g9W2>kkqH8IBe_Z&2@;e^+1t8`;`L#E6mr?_xm@XEa3EPTiDsd!dB~0_E2BjZM*C2 z_QHANm>yl-7)gK7;>eT_K|+EIe2;!C`B^A4QqVfxiuiX=)70$h;MW5J9sA1VMdzje z9sZrS1$mousWUn8$z1@hKeN`Qd~Ar5I^Vy>ZTIkDV*3~#;N<5ToQRdVhs z$im8*T@|SPtC6cAZ#aDJRr@vZTVQ&p8q6HzBk~cAT}r2T?0F6Nm9XJ!w;FRh@2Te( zmL^|ehy;}R{W{LrsY-NO%*aD9{;QsxEvPmx+ur$hIjtYpKTi)~q%6{CNfL^dVqsSl ztxDcsi&+LFJ!k zby=Gmy0r2b+*T5B|M5i7tg#k68lhfnOurx@nR~N9mo`s2EspXZntN9(v|Fds=qGRPH)_` zy}Nw;EUhwbDZqldMum|R)|WIt=~{m6cztxhm5zZXlVC&$^RtbgmpY1oU5(cqy{6g& z?Uz`>5Ix_{ClPt~rFwu}JC4hIM;`h)Fz|cedfKourC0%_hM|3%o`zNcp4eYc%xQ9q z(xiqAU0PZCG8&(;w&>;8&cNgTF2$_o9+r~mc$vw6y`j2auPU;y8{=&+;K>gd88Cta^gUh%>D^6wI~`(4={o@%Uo{WiN+diSHSQv1 zP6NK+j>|$3&2etL?YdRy8*53mYqc3_kU4%R{n;#h-I(?mI_4q7$+&}$jc$CrXMRpM zY>wXD?T?tAKP~p2z-QImBfRd3vOLoo6}Vk)+%6eAJL>%``e*e*fK`$GX&8x9R-~Fq z{o50~Nwc~82rRdl=!IZO1_!<0oX#duEUbhsLY8S%o~2JP^HBAhZOgf`eY^K-+w+GJaFFdjSI#>?_|w*R;uYg^*Nq=7 z27i!-1S7*1Jlodx8D2!H8?>6WzCJ%d$DTpLH#|b!dOYj+XmH%TSFDocSR+%PA7NO+ z=Vt!mP&kjivscr$I^~^$chbc5nBTT3EWFg*1ADm4b{m-TASP(=Kuqhd@%5)qK-=@D z?A{oJb+gEpr^2aq;ormD zt{YL^(it+ES0~OB+(ehXPVno!kZ0;<#Xp!0bRyyn*w5u34LVDCID_Tnh&D2-+oec8 z;ob;tKv@^a+K#m*jEwx92cOonkqxqz75F`E@48VrIz7DH+Lhu%GZo zb@l4*_lI5hvwh?~dBR#>={J_~<%T`Vi?~vvz!6 zkdzbiwDxk}vnk&^5l!Es_m#cenx0c(nm3!X^I;b(KJu@@c!CV;d=2NL>Ka$24 zWli!ly+@pfSxEoslC&p#=}Xh^WDOia4i2PQ)1`?WFgSxWJnUOgfg0_Mv`vSrNsJkX ziA`5K83SZZuzTXw^x>ePC*haW8E4*&&5GswiQW9ByKP|1pe{t-lW#Xm_&m;h-r`_4 zpg>KZWTe=9QcCeyRr!0kG#qYn8wid%GctsH-K~cE+zQJ|FVZoZJ+03b*kMpQTik zpNz07cvhpH*v>e`pU6$m^o+~i!Qy}-tb6t6qwdf1ek0Z?C5vsIP8y$ED&f0a zt%U>Qc1>+xTbI?CNL@9b(aQ&Kb;RT3jAgduVc>M@N~putT1-*Vprsih_K@0#EGkz# zX>^4!!zMfUt+rjRMbOwPUZKCdn}5MwE>cit><`b*aDU(e= z{^EdN!2JrqcDCwcb*WXm2l3i;bRbblvvW#Gvi0}^Pe}G9fIDaCTRi%Rn;uSeuE&Cc z#{|Kct7|=!$EMVH8e|QO0Y!j_P(}|beMs+g**}6+ z@7bz&+$j#Nx=`Qj{$*?guhO`Ky7$VQ(b4YJHd*D&5kLG3({*}%`Yb~Nvy_QyBw@qp zXGceE*78#Q;zta^W`o*fJm^z-UDYZ|fqAe7mZW0pBZEwKk@iM9OYblS?cRiqRoP6k zn`jy} zIx0}CQ#vHad{)tKnFSL66jELMb5Qb?)`zW&$#Kpo?|n5yXZCnt5K+@<(=wPWs$N8U zK4o;)T^7)#5{rOf9RvS)lWbNeMx&0kG^*p3X9J5|;Sv8>H@*}uzF&UgJINSShj2Zv(H?mnw zD`60LwCmwsusKYwJcU=4l5?+hNR6f--JWvH zW?-T$r=WF!O=g0RS)aQU^+9=iL43Td#hq?13EwyShqZfeH<6Fjr;6R)SrIF#RK_^= zf`r6jW)}E*UUMMLQoFsi=zF(L?6)$c4Cwl>nZj;A4ZJ?uQvhM{kJlb+7XDfv$AU@Db@GIxd`+FU>)3i&wE?Q8+VMDj6X#qf8DVKa$Hdj zWsz9aNklkRlooC<29`<3n7uAzi;Igh$yVGS*u3Fbd-pxBlN-Ub z2B#WQSoz_Plxt&Z%e<+s(ymU3SB(Di(aPK|9)~tb%eyv4tK;9Se|abMs0t%AC& zYmXZ<-_v&P;-H{WQZ%y!9(_H_U?D(A4@$2j+4R7daA3exx^xL2eVk+u~pK8Ql!p zqr8l;3TaT-YAq5S=KKJ_o+EoZPaFVw0@wbLtNrasxSu70TtjN;l`zCVl{Hve!p8I%h_J%q znyN~?9_Q(xrkYmaxLfh^oSNVIrj=883vhNto-S6V18xLPRh61Hzd`ldPVN|hf3&`E zAx32&OSWgu9Jm})9tNgr?@IVH3IB6GD={k_%DfW;sZ5jcx=R3ka`UpOq%L9#g=v zu1*OE%XrI3>L{XGed% z2jvA;!K{I|sC2(q^J`xY8OU4&`CTvUq-^11NCAr)@k;Qq-DBz0kY&c)HH5Mz;bFK` zHyv+#p5q>6AKLR~tv4K04_E)BTVx;DT0J`liyBBg9?@uU0G#vt1z6eh_q9fcwj8U- z4~a?bw=8VF6Yp~KH>5uD4oXv7zRNW@sQ#O2cgu4J+*K8B8}((~Aw(8_iFCFWon3q_ zjBTkF{j>sGeXai1JiI_dbQhp%CG6UH*JV#dWhF^Ckemo01(zf+XiV%6cs+4fT-)bs zF{pIU2r{<%Qf4&9%j-1w$eM4?z_Evf#f_PnnM+;w8l4^%9P+K~8Lnvkd~H_QRAP1= zUVH2c6VahY0Z3R-#AdelNZI|y`(IO73R|<#0N1m%;Go>lXIN*fH=swZc-WD2sjGYL z*ROrGeCyJEDX-?nIz?1n3r7Vj+^=VNYb!dRzq**`m2~X>r4Q1ZVPn@YCY(i!EVQ+O+}3!`1Exn@fd;lDE1N)sTE( z3_aveD4_k{vEUW4Xd>YFO^s_srtN%Q?EAjM(7GhY9y38 zEfP-GbhZLEwaO*%%6M}`ql`v>=RxyUcDAEd8Z8vbXAa=Mzdo;`N#I>{Aokl%v`_QR5v7${sw&GztfL1y{T`&L>3-;HkY*Dr-G^*9_c{GW=^hZZ*?Zwp>t zz}%GBQTj?kMB&BE6y$?fskPyb1N(2^_K;fQ8>LGli$MW@Ds;}8-e{w zmMm8AAo}!pqYsKAK^_OLu$D;<4SDXkWeDbBriFUToc#pYyScrEgig4G$cUTB%6 z(~WcEWC_#!dLI-kn0QGOn_K&Rt&$VdU>v~uF;f5}TZ3SpMc>)a_e=gK3n0Cypr8V< zLEC}yZONmf9>A+#v&EQeTaPxgho1KXB68|LTMXl>mlMw(1fS8?UIhsSFS20de`F7z zJAa<(W`B3$^5ptUM?rJ^fe^>}8(Q#B5r@C^xnx&WeP2JOa_eZ>3tQji$+`iPqM~yu zzLnRMgAI_^Q!v=~xYJWC7O)kWz==2yM`?8_!8@je}oYk#zf@2K~c>E%H3m=>h3gqu#=RJ~y z_(=RbAY{^7a-kMEO;&C*__9FQ}Q0(|w-c7$MKA8WxhN&E!s5;noM}{*hZQaR!&t ztRk5NM`R1dVDW`f@s}@jRJvOx+#t>T}@+im77t>Ps?MjIM?r-}ZOx-?Emh2F-;=t0n z;PWzbdmc@LH5K{u<}$)BmV|Mj(!KK%y>Bm+5i-zGE>H2%lP^Sf=0Bx2Mf^_S8Y=X9 zmO8od>;Ukww!YxrhM4%aqwtD3Oz^QdczHjX8;6Y>nQY#7;zG0lY&;Z4Z5Y@nalc$- z)Q(0`egOQSS2!&yc>sU|&=^hS(v>_gpYo*3fvQkJ$IK~DUgA(I(GGJ8RdQY?NkH|I z&T+y77JN5GqB=!2H)dMBY&{81;plV5O#%iE`putzUg)*d9CH36n2>?I$kWaJ?pm8Z zDzN%8DZsmb2HW7h;4aQ8`z~nu?}xxJSNNXQt@2j|^77(HSFhNRFW&}BI%!?0sXj?p zXv*!W@}}7{pFeMA`Bu1Os)ol^SJ$KzgbSI1HvvU?Cj@lEQT@b6zoHVzWpa8V{HjuU z7}_$)y2H^)?2LwBgB!Z?e10?cq36-nZ0eFcXQ?C zS?MqB`MSr}f2S`f`biPgfUx`QKrsVAqh3cI6myj=EYpa~QH2+x6KIk+~ zmNmei`{v?aO|B4+U0>dfAhZXkFh|buXu;D^y3S@8PFo`8B`i*obe**#FY`bDNm)s2}b3lCi z@v3{8&bci2)uJnnbG$lIp;pDI zA1t@u0TvYGb;RF1f>*H9rcY9Nq}yz3D(`9PKc$MNS|v16brl!%USB=2|Ko)nFo-uH z>ffjTu)cBd{iRgPLli{~&x#-ETe(A!ZP{<@A4TdoH)&rj-(Eh+ioEsIL%YCCAFv9n zbrv?ALl%Qb5^qcWC+FUfZ0%zN({sK5HpOHgva1qCW9@CxH7X-np$w5VxM0Khcs9~| zesS^E_;_u7`s2kb)Nvs8&7er7Vqj~{Sxww=2Mf49J_{ud>7E)I5VAe{ad>15hBK89 zNn{J{5ud5M0RQK{uYD`aS-;+L#uV~g-1b^WBS!7jT2O@Ge(wJ4T(jN+$^TLqeykPP ziOIaBSCEHjQ#Oy?9}&nSb*zA82qYU5uE)OONz z)EP&?oNQ7=mk+c@UGq5vU;TM51KID?t4|k)4woVyacGrpwY*1!m-_C4M$0m!VY1|T zPvLy=;d{jw~OFHao_>N-!sNVnJrx2K-1NP|ayEq!VuINMz$fsXYo8jpJ3>Ti$k7 ziQI-Dq)hs8u~HigkQk~KAB_X^r&gdkJAo+|+FI?|Y_pE;!?5(7k+>PLaAvt&^Xh`w zxeFi?Ym1>F9egK*oO`lNeit+S2ZTWO&eY;r~&{EGAk;3Wwt}rLT*x68cV0# z#E#EvF(X6;Xh83}yxS1NUCT6dCp=R^Eovp_^0sqC!BQ|z)udW)S`OFP*zuwRxqbZP ze-4NX*}FPLUU~l*$BJ*i)Wwn0S97x~O9g_anDbOwm`jvM9bQ4cdV9G$|Cg-#4R!m8 zr-vBh$sl?|rIxQG2@oJ(qg6qp0;b#8*AqBdcIrN3FEj=Q4;Q|cDf&{Yg}nqbHs-hW zJPMkt2lC4}?R^;!;Y~GdEg@A`a6ni^?j!3-s1k7@tlh8M@~x)-yspYYVc1c|N%g4C zXSrG1&ZgPS*_vN6o;rt`*OyKWOJwQ;)x;RitSw@d1s_=M?Hp^@f!m`mBEF% za(4I|Z3~R+YPTu}%;;v}i8@ryMPtx{ib=8(YR;jIo5I(dQ|KbeWIW{}v0E~_tYxP$ zS)c%cUYnqLG_u<%DvjX$=~zM4oODc11kr7`yEo2zKDp(wqcygc@W$UmzP3F9J@I|7Cxj z@9r62jYm(%P5%?Fcn`${W6kyhiw-}fFmY$km6 zY(|sL5j@~syEaiS$MZo`D-x8(BCwP*5Pgap-eDOSQIGpe1qHDYDEj;@I%`3LB?IZZ zH}6+vhu}3*hD2*HlaCJUwo@69i#Md?Akt(ljEr&?uKcSnyX26irAc|D@-g*&b}OX2 zB=(-8iMGqbE9ZZay@Tu_n`t-jW9{dU>VCUP9dMv?ZLLz2$H<5|8M~@hNiO0;e6Q+Q z3(!WKE4)n-9e`VM(HGTRDrT#c{z6oHW zk^MrV%DA;-xORP(!T#OjZuhKW3i~~XZr$@}8M7M~FSvGo@b4@v#U2ooleRvpEy^vj z;p(3Mwm5Q8`8#3;Lip6Yzn)IVagQ;gE<9H(8`teaxcCQ*b6ZN{$11o zt%U-R^$q0^*ERD#=}m0P@z<-0t?N2HAN3ybH#mFh?Op+pF3$+snn;LFFT`_6QPBRV zIi@aCp0;d%nds3bv&{5E>ep(|hd?cBdeU{}(#(mm(L{)iV|oq>Nq}k~d5?GuA6|4X z4bUiT4B|5PCX4Q7+NjNY7YD?Wjt=eSm^oAHLz<@S0VsZ#a_wg6Ml1+PeEMWF2K@Mg zK4-gYC#@?i`RJapLABoIywJka*A9I8Wc#$$m}*+yU^T7V1Slo}=FlVWFWmkl$ux5)1rk&+NVV%ODo@})#&YM< zQQU@5ZEffmkp^T0o$C`8O7Zw;QPOVuc&T`#f_*Z=LXA5jdk+|{!E2M^xfp5T=lnK^ zmz6U-*@1irm4+zdH_w4xE;n+W%-6Z!ey<@!;DDH#!!6^jK3-Yx82dfbA-9$wh@Wl- z+yKy9tNqTI7*xmZtPEok-X$0)^a)?xf~ZbdgivR?Ss6uh|gShQ4lv^iLq@Y4xTko zr5%{tukT{(IVHz)gOmxPk-q1EsOkxXW)MK+qxTXPc{4|Z^%1Z90YhfxK@dQ4Y= z#kOxQF@bxU{HSa=D=OJhW<~4ci^ki#e)u$EzI^#!GaA;FeO!d`TYi32zHfl&l1>{` zEw^CgCSL8jAt!b$^5yxg&c#am)|%t2oS=%~ndW*$yHuaQ@B9=)i3$F4la%8(pBROz z-cJ)Cr}}6R9O3Kg7Lc{9{Lk#gp~7OFyJu8BYFHA0ZA$|(EbXbT8&y~BT_xY(XnlmA zt*NQWW8M$*IchevNu$ZyRX#Ee4x0AW+I%8Ix(F%5*V1hJZ6j$Qpk*;@PjK-ZU`zr3l>T7{5e01c#>oq4m06 zse&bU@-sMUM{x1Vvo;wY;mo{&;iCM?Y2MNygk{vI-zHHaw=<-_W)Pw+K8A)pwz}YM zho;<>^eL~yY_O#_GTky!eDp@x?}<$$&&!$1-p%PSM;^6I;`cWUv@C$M*n2?!gcl&* z{66$zrwPZ$jx{+%u%{>Y^Qb7NKqqcV4!%EDN~K&xdE2G-4GR=vt#w>RYd(uhJ#Hm& zn`-5j;X?F5Rrh2{QM9v3>1G^h3Ol1zxO58(AIm3Ow)_F^cI@)SP(de~?-(EVG?q!( z#<*!ENLw!;G`Cu=CA05n^0^uUv^&S6Rc#I3X4sWWM`VKk(&mgaeDM0vHyn5%np(5> zjU!@4-L5XMx+g7#ed~cRPD2xA{a{t;4Z-H{)7-eT`7P9?=D)%(Aen3oPy}a&oM?)n z*1AwKE8Zq=%p}=yc)nK&Ef)l&EetQOAi<0Vj9c3XOmAqQFhZSqkF!#mms#0DM&UAx zj<*L zcd~Pj9kBh7zC@fdMtMZPVc1KlL~5ZvWXUISDG?JqDr{F15ru3h@^e=c96x(=X?Za? zkM6KwU_V$VKA9lrta)d9)O?plQe)BLQA_K)AA*Axcc7c2h>$4wm*TJJuHhQgn_%?> z-_WS+1c;Z@f|&MwxRvBs<+^Sx1Cu#oY`{KBbmO;7 zHB$>-@rFv%K5Qt@GZ$>H7k~ZQYR1hRp!yLg%U72CJ}H#)H_{l???u1+DjfQl zN9Q!%0M+}~%+O)_vXJsOURhxkYgX?mu37^NTD>}C#ilR)dFK_m)uWYB;QGqa8g?5d*4CK~&x&$)mZ zVN6t${N7swOpBK0)4;I2w8*`Cyst)@@WYDL(W=oxrj*q$o{Hlv$No_8c2iDK#b>>R z<)|pZjV*kHT3T*HBSQsykSyC183S4p8C9IeF7?8Zpo6GNXP!N05@uFiiCl+sR#{kI zIvHEqa%-w#{JNn)N7s`F&l-10x*gKZNKUhcD>cnkGKJmr_;ewbF=p_eof1 z?hOtO{$w`rIrseBU!_ZMk!#U|J06%iz-!~2-w%J~SSIh53RF>1tbTRaPvEI*ba*j* z-X9V$v}W&q337%UJnQA-BLd5*tn3mxk^uQC>h=JDc+aLacFPYG1>al~Kl7@pG;ngm zj0JP88XJp)Dnb(*M8-WPJm3OhDi?{6ekaNNq`drs8z}dF$(Dj`5^94Pv$(WGTDo2% za%%8P^;>~e+p}YbnIAQLY=b|5hL>WlPzuIntInAG1RI1X*jIZd$}{y3*ye{9JK0fC zr3K$h3ii9YE8A6mfEPn$v%ju4khS9UV(#W(Ce_l7nN#m5_XNUMqETt$KZ< zF&00Hp6fxyQ>$@QR1Z{Mv8Yw)<5aZ5x24LCNkFD)KzZGR2NgWjwAS7Ff*;KTuLpEN z=`k@sv4}0|m)E1RY?1jgYS9nPH5)in?!zzf zp`!Vmp6~q|QF!DSgkw`s!yXpKlqGEj!~-*?B~{&=|f^Zjfkx8!t~u%Ecv1)%4I2ymq> ztZ`VaSO&3<2>kg4-Cq+sm+{EDpRn4bHbE)-DcxgIQtJ{AIn2EvR34A}dM*rTE2GMR zIf-y;p&Yu%berxC+n)AyI^d`Zbe3D%`A#PHgN4^<7?v!QLGfcvD`S7*d6oAcM9;n| zEUBiT;YYqvx5+X-fO7P{1WOgMB~1(~yv7Tab)eNR`3d7sNy^|a2&CRL94%ugZ&#*6 z7o`T+X3J1387?kPdz@aP^Ku(cFz~}^EeRl#o=+SBOo3D+mc3O=|FOG(DSKXXd?^OR zO_qWGI%zo{xW_Y-JrbZ1;^~UJNfVw%uK&V6Z`1Z!`~Wz@Xd5=Zfg-PaG#e6#uXCj5 z1auN_RjJnzbB_AQm!wX;&|K3A7T%vq*;p#!heZT zW6t58?%?%9JxL2Tg9-|rY)q55q^TPgAY?%8R)%1$B*?XE-YNsA2ZF~(mvyQef`&Co2X_xd-{U=6JWomAUHC_=5%34(22Is3n89kRr$(# z*s)UVaC+-inXiv}KTZ}NJWI?qqm(#bsaTu>bT?vPwd=`4$u|ZH^N4FVUO2U}fXW1p zKhncv@vq35yql}im7f9UM~tfd3=Qwz=&;mR-kYx5Ca9v2aLhwCB=Fu5$K;NY&R9lE zUznXSs@TKb^_GM^RvJRh-X)x&` zulUigvd40xEf!xHtBmc=*qp;niDi$$$-486+~p4m=C{~3cQg0$Sxmo?w7N?8HGPOh zyoL{lA(!FY-?`eq(0@N&-8-HHy9nvA&|Q0Bl#`GkhU0&0DQ=HCbNF+gJnayX6R+28 zwmH~#>+;`!lu&;OL^hggu0ui$W_KFro>vA`tQdn%jJc>zA~~WsM6EtAtNXY>@1U600XHQvD*p|2}^0i0#xBRme3 z3Pvr!jNoVOF*-a}6&_LVCu8di(1&6>X^UUr{GH-Nz;of5>W6LQ59e2gE7{dtsT3Pw zhA*}{3vW$*Rb>R0I+{l9-m>qnU<-KK3lxLdui$zkbG&~@GwPxrEj{1 zj}6~fpTd!SJh(AV)z7`T;He|htb$zgv8(s~T1X>L^?tE-4kAtKj@@~PQDlaZL{Xyk zw8`GATTN$@9etb(7Ixu;;cZM_i+F{R*a*=Q9g(&M3mRuVx^`_fYAC6GZez(0t2*9O zVIK`7wd3FF>R5SE&32C{~;!_-fb8J!M5)CtB}72m$+;^W}w{(;`}A`*)_ zLdK8A4$tuR3|Ci=F+WdoPk<#kYL3JC3bf+hT&2L>Z!}nA<-rS=h~AauoOf_GbD`uQ zXRNHA9mYEITG?V;X!sNiEZ>+tJgKmj+uNd_Mls{t`VOU%5qLtB}akC`x6A2v}D<%rCaZ zjA6__F2-dy!t8GkT?q#=pV~Zg^xdpWP ztEo@vUdJ9Zt(JAAbCsxG5=kG`o*O@#Dv*v#Tw(tL>aaoTT(a&uzo#W*s zi1?~om`rx^N?+8{x3(Ax7nC$ue;HrzQ_8$%$iz(VW7!1$c)i#p8J~)vjh1^Z2b>nF z3s||#NmX7P!Q9L=C5`HZB=w}wjENH$6KY>I=^dJz)A$dJ0yJs^sa5NmEy4pj3XpW! zn-+6DPU)d>PFH30K(PDcK#Ob8xk6{hU1y7*2rTQIZcgBbje(}4kedlILCkjnnM%0z zp3*H#J)@iO@$4e1MWk1^D|n;a-NJZT%HEZw=#U6iFP^4_(^$##5rB>N znc|fpSG+#|L2&SRS+Dg*mnz~RMF&G?04`H~ci@dt!0=Ip8vJStoQzBlaADn>u$3~T z+~@fGWScD!-1tq92yh3Sawyzj0mZ2c@_bL@+a}9vO?NXA%%pqX0pgi@?o8(rH36ir zasKbTGVY@ww=<+}PZkNE;^y=r_}J+KFN9y4rgY3p9=Yy(T3Ah8Gse#1iMIPo2-XC36kH1_Sf$q*@i zL|*kJPH?i7Soe}^*V(A(veep+`S(GZw2{+)@hwThT zGLQJGobw0W(u0R9kJpdl)u6^RKjEE1u0{0^K^w{u2_X5waAQFr;gP|R!#r_mV8OPh5*oJ?!E?vqhQx=WvP+m#2z#f6UAUGf`#(ie){oehdv!w{n z-w;;7z-LW^^^R%kSfL6d^G?pRdJ*NUId?1>fI{K=u4OC{ImB2mhm>MzX(_3kkv!!s zQZRzpa#F6~ItV2_qyo~i3KJD=ih{#|^T!0HO()VQe0iE~<%zkZ+RS780ViHBtzqt@ zQ-eA{^cEVfw8R^DQ1~5w=OMm#uZczv+@%r@nH%{09=F1m($5669Uw)&>hZ)OBYxBk zFX$Ba?LTtsL>GKZH;nSPc#V2)jDQR+{)K?Fa4wr4EF(4X0)0Tat+7#{%l=zoULL`2 zxVAvKE4fXLX^ zsygceh5Po>ija1tBO#|^2!irqaY{qHh_(h$PjZtiQ922h81PK$66A@Jyz*LJZ*kC& zS2dz~l*T+$@lReg`o#R=Pzb`3+U5*N^CS#zxe(w6J&=@}!%S-rs02AgL4sse&XLD! zOVx5t@~RYU9fu~X>0$fk1?^1Zd$JZwngd)*bbRX>TN1U%ryNI6#rl!GwyELA1^w>k zn&tb)?^Jy=;PSbJT1g{}Xqb#++l17gh3q0c(^uIJ`cbS(D7JtkzE}6Li}%6wzl*FX zZ40vTcnLDA**CrahEgAEqgA{P8Abw_!g9@tYl0no%UnmwkMuQQna&+|zHgS%LwSHj za{tjtxH6|``-#*a2k(L*UFJS8;dd@<*c~S+&C_$PbX*>wq*H5%8nxP=mv+OBm7*NJ z>6I(l*Iw|5VgfF_P2u3C?Sd~E3f?8SeihvI%?pJ{emS+KydXLZ6Uw2&BG#Y!N2~3= z7m66G^6=Cg+L_8abgYIor<}) zL;EyG5^JLN*ILd5LA0$>Eg;@At@)IMA6ULTSqm#l$S&{aaGqC@i5L5o%&*B-- zu4laset03knvjo`j3eG1fAhU(pVq}RZJlJ$FnF@v|3n&CV?UUza&YSy(VV(q_c!$X zYL|O~Q!jT3+dS%TLh$sxxs2pvQk<%Ng?5%}Z^L{(_4DU)3lBm|IVEP(^(2-*+nhpL zuczbdg99jSAt80AL}RZEc#{aDeM2A!}2cyX=B68lgw~-m*0=Ty+ox?)d3pamiyZcBPYW5 zIl$@~n!Nl7VNu0Wy(>1NuHo*fmRThw0Ezp!THY_mjHp^r2ycZ-wB1B`j9NK{_VBN3 zBgv06V3pcNv=tfeLb8Og#i}xQqkuw_tT+3`hR16JM^3EM3MreDeNvBJUX;3>$n2Rt zCw`&Twf&g)OT`PT8@eW%5d`hoRP*{BGg4CBnO>D%kLp#m4%ex!7ngtSvK*Js)>N8>vvDazCx-^-U6Y+Y>jb8?)@v51@lGjgNxVYrACH8CQ+g5 zEqC)ck@65NJ*_K(&4gM_dmgID`3u_e1gamR1Q91cG)+{rb2y><*r@nzK*2<{!c(Cg z)U=9C{~E;GJ5O|N%;f|>r`mt4|MI0hs`AiI0tWGE!_;qV{bX2rc+)G5;>xYNPl`2yzhGI(+y!yt9yTo-?}zus-BiUxdo(!MF{o8(6kjNqhMxcHfl%KJ;oPZ zg8gqEMj%Sn=yMTgij_`|o`$Mdg0WvLh>H6I&j}nxUdg~QT z?Av~fdplKQsxe49_kFXyRFz8khNw*JZrxlDS3%2P0xMp_C>smAHS(tI9P`x`Mdce@ z>!aSfxBm3S9Ki_)XE<$gC?i%pjvaK)fmLso`(`5n1a}*W493J*&1~dlB8DH;fdKO# zi_qdo*o3&?|4a-2^V7#80y^O%xA7;E9zX0{+?Pc7$Nub)j|BF3(WYyG>(Thes|SJg zt#08`#-}xRK;B-Dd!5I9;B+?Qua3xdHFtR~i8=TZHS9 zGeYqFVNZ*5Hk_>7xAo2UBuZfSD{@~I_Vkoz;bsRep3{S>js7S`5SH? zeNeS{g3OlthMBbV5OJ^c~@kwvkXVsQ@dO`1eHcMP5wfzRK#8Y>uq~fWv684#6 zEG4esZb43JO*U>05Hf9iCkUkXIwl8?%_>)cZA~Y)Be(DR7~hw67<}22*^yf~fU{h$ z7yF>os|S;mc1ZqvppU;jTfN^MouQmccO8damHRaG5UOYBv9@0kcf(V?_e)Ye6XpfwUP zLbVjNOOV9gA+duPzfXVnp0?-SbMCp{`=12K=ly;^&+~rf>qR*b6RNnU64PH2T1hC9 z>B}2$avyGo--1^3CP-5Df*Pr9m$SN?V&?oU^Kbvmd(=-J?Q*_{u?%_%ZI8hVMvUKp z>|bcc0WB+c1*rpZ)GU~PDuI3Jn7(Sb&52f~;MjKYVsyV(&7AT69yE@>vJA-IH$^)4 z#akRu_*b$2fi}=ot8O#yk0*;M-&c1#5aW4d!Pro4{R+>*9YZZQdN6kfNZS3T<4Wtq z`$)1mCf=s_UA>7AE8Keny?RW1r?|@x4zxOO_?X;R;k9N@xh<{4xF)u6qR6Hfi+-rd z#8o(V%*eB%KIUE2%{eBEb0>=Px(gLCYc=FRT(ujPk)>aIaO%5PuJH5YKL4~ zU$gDo10ynux4xBU>Sf#+rSaFWz|=L6gUe|`r6sb6=XpMf2Wx2aSEtv2bZy3(2PRI} zswY>LjBdwT1tvIp)t({w9xdb;At06@U$0Q|$vUMkFGdM)p|6r}#VoY7jf?l@E88eF z^M8E}-&C4v`*sdq#D_Cc5r}@crIa1pbZsBSp3=Sha!zB0G3(0BK5BHc=UONyKDgmS zLj_Be52Tp61f*ZWB*>GljWcSd_tZ>$Dn>!Q{ocba2kHgd;5>!RdR@ufUgUrhZNBPr zrXyX0caygY8b9zsat5q*)W-s|^t|n5=?4N^?&Z0yX)1#3L|#my4XPzy_Z@LCkqfr^ z(dY`)SVVKlA0^RCmQ*4Du$3cOi!ZL523Jp``81RXgd`Q--~$?terzk4tB_qYLKm%C)8 zpvz*pJ`j#e2{9#hcO5~8LEQTEh1|IyX^TD`u8i>0hoXAnH-RLu5f2TC`LZ~Nr3y41 z=tEIrc_&(|33|^x3W~IXS<^$JBZH+&X!pW6%&*rZ-=|q6WV?fvtpC zmR_8_%25P43*dt|)~$HByJy(wP&w~ySBxjg8@!|n4IMEu$+d(*D}?R~e0@Em)g{~*tmM-s3bB5- z65drMY$}gpD+;t=d(e4kH@CoX-BePNw2x=$ZtjR?~jnTm!H8JVZ#7 zlm}UibbE12jt)~&p@xfxa6h|D{=ag+V4>MAo(D#d?iCJ)zp+}1QyW?g#(Po-`%f^Z z1xCUdPH-yR962Wd^wtKg@TfT(a@CO^W<2Hl{b2v?#JP-x0w4N+6gaG${eVWd*bdxv z^X7Qrqxm2MMa$JQtf=bW!n%&oB*cb9FEc$5ci^XcMQx(6x>~@mA@Y2D%v{6HSc8Jt z)1$t1r{tuPX(phs)!A~}OT26(AMU;+{zp+CTbkVYnS2-yP$YT8`sMr3mVL`YUy1}% z4>vA`i%=31noY<-wTGg_hSQI3x|zPD7~S;(?Xxw0%gO?BbjBKnE|)Lh1@!#y&OW8X z2MUUHA=o&HmRg&mFDk-gssp=s^Gm7E0Xs?9-*XvWGVQiM4gC3nb0v}ErQ5Q`=P)zT zAXCO^f+-emlv6Z!Ebu(MzW5=j`)I8V=(bwl>Xn9dqs~Xy)j0PrJ;>%38Zfq7QvKdU zmv&OR;?38*zE3%QC&3GWi=O?@mUiOxMvgVY$A>53s8r7o!oV?{!@urql8yR-b#mq& zE42xWu}i$XeUA`GfmS-S$WRCbutl{oz2b+W9;kkP+fHc4pauiU8A7gr^pF=tFh{lj ziipi20brW?T2&&t`1ByCAutkNmz`s(OA#{6RiywV!&Nu?o{=b zVa2P{eIu_|uhEj2%Cu=o{9b$nf=c+t$B$9Z`>?Nx#Gr;%JrmA496cY-YEy~#lChAY znW4H0=uvDBh+fsDyOr>ufohvQs+6X|k&eAwOTw`6MCtU)O1N}C9J#%p3x`PCteGE( z;I|1FoLviu;~vFo;Xt-lFv_RW>ZnclW--%*hT+skF1Q-LPE^&+FEHQBV?)hUxh)o? zXDcY}&DvjCZ6ZiXuI0ebKy>IGEE{y|Vk-hbgEU;a{Gs&i=Jpa_rbuWc`O&0{UWPTSFXt1c{MbGCo z=`e$WPj1!SL|++z$7g47LDDO(!jXVU^HwuW{YV*7i<#h-)O&iD-ANyuRnr>e(O>lD z)(ht0;5fsBOjqJAo?)R2=dE??OTSmp;(e{LS7XV>pY2E&Hh|E4iWTLq;>MI^Vmy0? z#QF`E`@TSN%|I^LQ|g_PKwyt5%bclIF2u0%JhtT&=+^p+LnN#z2Xu5QTJQ7&T$jIo zGAY_^16_hexG(W!dFH-*SAP?~`d;Wp#m=WdUp`oih(TtCcNx!D-B43RvH#cf%DRh| zZ!&#P>COgZg$?0}=3@Xg$m4P|`M+fs|7lE)i>TMDG?JEDLQqW647$P_Lvrg4?QgK@ zY8OTY=vuf@{6$qjLtn#c&oeuqy$5WbZh^qZK>DJD>OOwbDvpBK8HRxS=7&mKA>#ot z@t_J7Mt)H}!Is70>vEJLS(d}dWO#bmcvv^Cd*Z%iPL_d{8ah7KFy=ki4Bx!x7W_j9 zfMBdl?-wm6FHZ%@%FD+bpk$B2WIiQ}8ebC}AJ6dE81><{7QE5xFVqQ&^mcJ!QBHS( zf>~s%XYNZn7WZm9I#%&1fAD!Theo5t5L&M_)?J#T^nwK^t6S#_%*!8w z;i1>$Rog%TCDI^&lL}vun~CG@d7hfi2lw`wtwdu?g&<1^tyI1+((=VP5>HGQgMvx( zqk#zkWS@uoC^~^ZCfsUqak0OD_$~s081sW?mL#wl<{9Og(@$`|Frq1Q!kQ*fso6z= zRTxDe+l3Gv{G@wX?*Ik9+p!7q;>A&qNEGLS7dMz`75+JT&q) znewCuYF$n|rfl$9_o|0}phpREATnw0_LIS|-%OB66&=ML4zDMgwwM+rCyOJ?KT^y^ z28x}|pF8&;!$#pquJIFdUE$^Qv_2AgUzJ5bcBAmvidt0_G=k~df%G>Ut)9pz`WK(-`v)A6Z+X7q@o|xy_Ty*JHwmrhSxCUPyzvi zY&Yf3dDXy67<6%W2CQ^pV-91BLiplPqXVjDD63w8FEl`I9wDSQ0y>+BFs9;qlWN53 zK2C|7AU0A1iF_Y-&x*|xO}p^l4kzfJnDt9u<;zG9n^jXnNPh_XdMQ-SN0H6=+-3Ce zY$?rK-qi!bJzacJyfJ~YbGK+L1rNNJ>EU&jG zODZeyt+KwauTApw>~0onXZwr2uy4AO^avGsUObRrH6VpXj(`NmcX51ifF&a& z`p1;I;%E9ZuQ``2*X%Fw{U~4j-L5gldw(a!Vl^u zrWF;{sU>%JFuTvsTb-?r-~fTBfZ;H!E!3$C+Y%$rEW3#$*9~^hi=**Ap8bCmNN5Q5|&VYOF9F zu6Lg9@B0sRwY>Ix;oS43oSHQ8FFxvzDD>a;95#07Q|mOFw^_;++axC0s+)L?Tihqu z^BAz{`WhB;5^8<)-F-)-P3o23mDe@J1aaT*M|tp|flArS*_Y)#J$CLc_e;#P+|;65 zN12$2AJ9RMM=Iel;!6l00O3w^Fz)47<+mStyp;#C#VS&(;FJ$@K7C&;%q<#)%0A4V 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

;Oysp%Wq47RZM%+5e$tBa6WBz6nds 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 Date: Wed, 8 Apr 2020 15:14:07 +0200 Subject: [PATCH 18/36] skips 'Sorts by activated rules' (#62924) --- .../siem/cypress/integration/signal_detection_rules.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/x-pack/legacy/plugins/siem/cypress/integration/signal_detection_rules.spec.ts b/x-pack/legacy/plugins/siem/cypress/integration/signal_detection_rules.spec.ts index 1559285d508e..2d2db9e70255 100644 --- a/x-pack/legacy/plugins/siem/cypress/integration/signal_detection_rules.spec.ts +++ b/x-pack/legacy/plugins/siem/cypress/integration/signal_detection_rules.spec.ts @@ -32,7 +32,7 @@ describe('Signal detection rules', () => { esArchiverUnload('prebuilt_rules_loaded'); }); - it('Sorts by activated rules', () => { + it.skip('Sorts by activated rules', () => { loginAndWaitForPageWithoutDateRange(DETECTIONS); goToManageSignalDetectionRules(); waitForLoadElasticPrebuiltDetectionRulesTableToBeLoaded(); From 4d7cc6dfb787b10dd3c32b8f90b95bd948920076 Mon Sep 17 00:00:00 2001 From: Maja Grubic Date: Wed, 8 Apr 2020 14:32:13 +0100 Subject: [PATCH 19/36] Removing unused import (#62917) Co-authored-by: Elastic Machine --- .../embeddable/public/lib/embeddables/error_embeddable.test.tsx | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/plugins/embeddable/public/lib/embeddables/error_embeddable.test.tsx b/src/plugins/embeddable/public/lib/embeddables/error_embeddable.test.tsx index 816001ba42ff..715827a72c61 100644 --- a/src/plugins/embeddable/public/lib/embeddables/error_embeddable.test.tsx +++ b/src/plugins/embeddable/public/lib/embeddables/error_embeddable.test.tsx @@ -20,8 +20,6 @@ import React from 'react'; import { ErrorEmbeddable } from './error_embeddable'; import { EmbeddableRoot } from './embeddable_root'; import { mount } from 'enzyme'; -// @ts-ignore -import { findTestSubject } from '@elastic/eui/lib/test'; test('ErrorEmbeddable renders an embeddable', async () => { const embeddable = new ErrorEmbeddable('some error occurred', { id: '123', title: 'Error' }); From 6b52ce7341e52bdb1cce4b1fb90181c03fc74f5e Mon Sep 17 00:00:00 2001 From: James Gowdy Date: Wed, 8 Apr 2020 15:09:56 +0100 Subject: [PATCH 20/36] [ML] Adding configurable file size to file data visualizer (#62752) * [ML] Adding configurable file size to file data visualizer * updating translated strings --- .../ml/common/constants/file_datavisualizer.ts | 2 ++ x-pack/plugins/ml/common/types/ml_config.ts | 16 ++++++++++++++++ x-pack/plugins/ml/public/application/app.tsx | 7 ++++++- .../datavisualizer/datavisualizer_selector.tsx | 6 +++++- .../components/about_panel/welcome_content.tsx | 6 +++++- .../file_datavisualizer_view.js | 13 +++++++------ .../file_error_callouts.tsx | 7 +++---- .../file_based/components/utils/index.ts | 2 ++ .../file_based/components/utils/utils.ts | 15 +++++++++++++++ .../public/application/util/dependency_cache.ts | 11 +++++++++++ x-pack/plugins/ml/public/index.ts | 4 ++-- x-pack/plugins/ml/public/plugin.ts | 13 ++++++++++++- x-pack/plugins/ml/server/config.ts | 15 +++++++++++++++ x-pack/plugins/ml/server/index.ts | 2 ++ .../plugins/translations/translations/ja-JP.json | 2 -- .../plugins/translations/translations/zh-CN.json | 2 -- 16 files changed, 103 insertions(+), 20 deletions(-) create mode 100644 x-pack/plugins/ml/common/types/ml_config.ts create mode 100644 x-pack/plugins/ml/server/config.ts diff --git a/x-pack/plugins/ml/common/constants/file_datavisualizer.ts b/x-pack/plugins/ml/common/constants/file_datavisualizer.ts index d72e4d63cc47..81d51bfa2581 100644 --- a/x-pack/plugins/ml/common/constants/file_datavisualizer.ts +++ b/x-pack/plugins/ml/common/constants/file_datavisualizer.ts @@ -5,6 +5,8 @@ */ export const MAX_BYTES = 104857600; +export const ABSOLUTE_MAX_BYTES = MAX_BYTES * 5; +export const FILE_SIZE_DISPLAY_FORMAT = '0,0.[0] b'; // Value to use in the Elasticsearch index mapping meta data to identify the // index as having been created by the ML File Data Visualizer. diff --git a/x-pack/plugins/ml/common/types/ml_config.ts b/x-pack/plugins/ml/common/types/ml_config.ts new file mode 100644 index 000000000000..8fd9fd22bad8 --- /dev/null +++ b/x-pack/plugins/ml/common/types/ml_config.ts @@ -0,0 +1,16 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { schema, TypeOf } from '@kbn/config-schema'; +import { MAX_BYTES } from '../constants/file_datavisualizer'; + +export const configSchema = schema.object({ + file_data_visualizer: schema.object({ + max_file_size_bytes: schema.number({ defaultValue: MAX_BYTES }), + }), +}); + +export type MlConfigType = TypeOf; diff --git a/x-pack/plugins/ml/public/application/app.tsx b/x-pack/plugins/ml/public/application/app.tsx index e9796fcbb0fe..f1facd18b9da 100644 --- a/x-pack/plugins/ml/public/application/app.tsx +++ b/x-pack/plugins/ml/public/application/app.tsx @@ -15,10 +15,14 @@ import { KibanaContextProvider } from '../../../../../src/plugins/kibana_react/p import { setDependencyCache, clearCache } from './util/dependency_cache'; import { setLicenseCache } from './license'; import { MlSetupDependencies, MlStartDependencies } from '../plugin'; +import { MlConfigType } from '../../common/types/ml_config'; import { MlRouter } from './routing'; -type MlDependencies = MlSetupDependencies & MlStartDependencies; +type MlDependencies = MlSetupDependencies & + MlStartDependencies & { + mlConfig: MlConfigType; + }; interface AppProps { coreStart: CoreStart; @@ -74,6 +78,7 @@ export const renderApp = ( http: coreStart.http, security: deps.security, urlGenerators: deps.share.urlGenerators, + mlConfig: deps.mlConfig, }); const mlLicense = setLicenseCache(deps.licensing); diff --git a/x-pack/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx b/x-pack/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx index a8bb5a0a8fe1..2d6505f5ce1f 100644 --- a/x-pack/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx +++ b/x-pack/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx @@ -26,6 +26,7 @@ import { isFullLicense } from '../license'; import { useTimefilter, useMlKibana } from '../contexts/kibana'; import { NavigationMenu } from '../components/navigation_menu'; +import { getMaxBytesFormatted } from './file_based/components/utils'; function startTrialDescription() { return ( @@ -59,6 +60,8 @@ export const DatavisualizerSelector: FC = () => { licenseManagement.enabled === true && isFullLicense() === false; + const maxFileSize = getMaxBytesFormatted(); + return ( @@ -102,7 +105,8 @@ export const DatavisualizerSelector: FC = () => { description={ } betaBadgeLabel={i18n.translate( diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/about_panel/welcome_content.tsx b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/about_panel/welcome_content.tsx index c56ab021e2f2..49b2396aeca1 100644 --- a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/about_panel/welcome_content.tsx +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/about_panel/welcome_content.tsx @@ -19,6 +19,7 @@ import { } from '@elastic/eui'; import { ExperimentalBadge } from '../experimental_badge'; +import { getMaxBytesFormatted } from '../utils'; export const WelcomeContent: FC = () => { const toolTipContent = i18n.translate( @@ -28,6 +29,8 @@ export const WelcomeContent: FC = () => { } ); + const maxFileSize = getMaxBytesFormatted(); + return ( @@ -117,7 +120,8 @@ export const WelcomeContent: FC = () => {

diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/file_datavisualizer_view/file_datavisualizer_view.js b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/file_datavisualizer_view/file_datavisualizer_view.js index 02f14a9e4553..d1b615a878b2 100644 --- a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/file_datavisualizer_view/file_datavisualizer_view.js +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/file_datavisualizer_view/file_datavisualizer_view.js @@ -19,14 +19,15 @@ import { FileCouldNotBeRead, FileTooLarge } from './file_error_callouts'; import { EditFlyout } from '../edit_flyout'; import { ExplanationFlyout } from '../explanation_flyout'; import { ImportView } from '../import_view'; -import { MAX_BYTES } from '../../../../../../common/constants/file_datavisualizer'; import { + getMaxBytes, readFile, createUrlOverrides, processResults, reduceData, hasImportPermission, } from '../utils'; + import { MODE } from './constants'; const UPLOAD_SIZE_MB = 5; @@ -57,6 +58,7 @@ export class FileDataVisualizerView extends Component { this.overrides = {}; this.previousOverrides = {}; this.originalSettings = {}; + this.maxFileUploadBytes = getMaxBytes(); } async componentDidMount() { @@ -93,7 +95,7 @@ export class FileDataVisualizerView extends Component { }; async loadFile(file) { - if (file.size <= MAX_BYTES) { + if (file.size <= this.maxFileUploadBytes) { try { const fileContents = await readFile(file); const data = fileContents.data; @@ -105,7 +107,6 @@ export class FileDataVisualizerView extends Component { await this.loadSettings(data); } catch (error) { - console.error(error); this.setState({ loaded: false, loading: false, @@ -181,8 +182,6 @@ export class FileDataVisualizerView extends Component { fileCouldNotBeRead: isRetry, }); } catch (error) { - console.error(error); - this.setState({ results: undefined, explanation: undefined, @@ -287,7 +286,9 @@ export class FileDataVisualizerView extends Component { {loading && } - {fileTooLarge && } + {fileTooLarge && ( + + )} {fileCouldNotBeRead && loading === false && ( diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/file_datavisualizer_view/file_error_callouts.tsx b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/file_datavisualizer_view/file_error_callouts.tsx index 3dbc20f16012..7333c96a0d8e 100644 --- a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/file_datavisualizer_view/file_error_callouts.tsx +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/file_datavisualizer_view/file_error_callouts.tsx @@ -11,8 +11,7 @@ import { EuiCallOut, EuiSpacer } from '@elastic/eui'; import numeral from '@elastic/numeral'; import { ErrorResponse } from '../../../../../../common/types/errors'; - -const FILE_SIZE_DISPLAY_FORMAT = '0,0.[0] b'; +import { FILE_SIZE_DISPLAY_FORMAT } from '../../../../../../common/constants/file_datavisualizer'; interface FileTooLargeProps { fileSize: number; @@ -81,7 +80,7 @@ interface FileCouldNotBeReadProps { } export const FileCouldNotBeRead: FC = ({ error, loaded }) => { - const message = error.body.message; + const message = error?.body?.message || ''; return ( = ({ error, loaded }; export const Explanation: FC<{ error: ErrorResponse }> = ({ error }) => { - if (!error.body.attributes?.body?.error?.suppressed?.length) { + if (!error?.body?.attributes?.body?.error?.suppressed?.length) { return null; } const reason: string = error.body.attributes.body.error.suppressed[0].reason; diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/utils/index.ts b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/utils/index.ts index 6f670359586b..0f0036a7c461 100644 --- a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/utils/index.ts +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/utils/index.ts @@ -10,4 +10,6 @@ export { processResults, readFile, reduceData, + getMaxBytes, + getMaxBytesFormatted, } from './utils'; diff --git a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/utils/utils.ts b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/utils/utils.ts index 5048065ae60f..0d2016b71ed8 100644 --- a/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/utils/utils.ts +++ b/x-pack/plugins/ml/public/application/datavisualizer/file_based/components/utils/utils.ts @@ -5,8 +5,14 @@ */ import { isEqual } from 'lodash'; +import numeral from '@elastic/numeral'; import { ml } from '../../../../services/ml_api_service'; import { AnalysisResult, InputOverrides } from '../../../../../../common/types/file_datavisualizer'; +import { + ABSOLUTE_MAX_BYTES, + FILE_SIZE_DISPLAY_FORMAT, +} from '../../../../../../common/constants/file_datavisualizer'; +import { getMlConfig } from '../../../../util/dependency_cache'; const DEFAULT_LINES_TO_SAMPLE = 1000; @@ -54,6 +60,15 @@ export function reduceData(data: string, mb: number) { return data.length >= size ? data.slice(0, size) : data; } +export function getMaxBytes() { + const maxBytes = getMlConfig().file_data_visualizer.max_file_size_bytes; + return maxBytes < ABSOLUTE_MAX_BYTES ? maxBytes : ABSOLUTE_MAX_BYTES; +} + +export function getMaxBytesFormatted() { + return numeral(getMaxBytes()).format(FILE_SIZE_DISPLAY_FORMAT); +} + export function createUrlOverrides(overrides: InputOverrides, originalSettings: InputOverrides) { const formattedOverrides: InputOverrides = {}; for (const o in overrideDefaults) { diff --git a/x-pack/plugins/ml/public/application/util/dependency_cache.ts b/x-pack/plugins/ml/public/application/util/dependency_cache.ts index d5605d3bca65..934a0a5e9ae3 100644 --- a/x-pack/plugins/ml/public/application/util/dependency_cache.ts +++ b/x-pack/plugins/ml/public/application/util/dependency_cache.ts @@ -23,6 +23,7 @@ import { } from 'kibana/public'; import { SharePluginStart } from 'src/plugins/share/public'; import { SecurityPluginSetup } from '../../../../security/public'; +import { MlConfigType } from '../../../common/types/ml_config'; export interface DependencyCache { timefilter: DataPublicPluginSetup['query']['timefilter'] | null; @@ -42,6 +43,7 @@ export interface DependencyCache { security: SecurityPluginSetup | null; i18n: I18nStart | null; urlGenerators: SharePluginStart['urlGenerators'] | null; + mlConfig: MlConfigType | null; } const cache: DependencyCache = { @@ -62,6 +64,7 @@ const cache: DependencyCache = { security: null, i18n: null, urlGenerators: null, + mlConfig: null, }; export function setDependencyCache(deps: Partial) { @@ -82,6 +85,7 @@ export function setDependencyCache(deps: Partial) { cache.security = deps.security || null; cache.i18n = deps.i18n || null; cache.urlGenerators = deps.urlGenerators || null; + cache.mlConfig = deps.mlConfig || null; } export function getTimefilter() { @@ -202,6 +206,13 @@ export function getGetUrlGenerator() { return cache.urlGenerators.getUrlGenerator; } +export function getMlConfig() { + if (cache.mlConfig === null) { + throw new Error("mlConfig hasn't been initialized"); + } + return cache.mlConfig; +} + export function clearCache() { console.log('clearing dependency cache'); // eslint-disable-line no-console Object.keys(cache).forEach(k => { diff --git a/x-pack/plugins/ml/public/index.ts b/x-pack/plugins/ml/public/index.ts index 8070f94a1264..4697496270ed 100755 --- a/x-pack/plugins/ml/public/index.ts +++ b/x-pack/plugins/ml/public/index.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { PluginInitializer } from 'kibana/public'; +import { PluginInitializer, PluginInitializerContext } from 'kibana/public'; import './index.scss'; import { MlPlugin, @@ -19,6 +19,6 @@ export const plugin: PluginInitializer< MlPluginStart, MlSetupDependencies, MlStartDependencies -> = () => new MlPlugin(); +> = (context: PluginInitializerContext) => new MlPlugin(context); export { MlPluginSetup, MlPluginStart }; diff --git a/x-pack/plugins/ml/public/plugin.ts b/x-pack/plugins/ml/public/plugin.ts index 2472c343d051..b51be4d24868 100644 --- a/x-pack/plugins/ml/public/plugin.ts +++ b/x-pack/plugins/ml/public/plugin.ts @@ -5,7 +5,13 @@ */ import { i18n } from '@kbn/i18n'; -import { Plugin, CoreStart, CoreSetup, AppMountParameters } from 'kibana/public'; +import { + Plugin, + CoreStart, + CoreSetup, + AppMountParameters, + PluginInitializerContext, +} from 'kibana/public'; import { ManagementSetup } from 'src/plugins/management/public'; import { SharePluginStart } from 'src/plugins/share/public'; import { UsageCollectionSetup } from 'src/plugins/usage_collection/server'; @@ -19,6 +25,7 @@ import { LicenseManagementUIPluginSetup } from '../../license_management/public' import { setDependencyCache } from './application/util/dependency_cache'; import { PLUGIN_ID, PLUGIN_ICON } from '../common/constants/app'; import { registerFeature } from './register_feature'; +import { MlConfigType } from '../common/types/ml_config'; export interface MlStartDependencies { data: DataPublicPluginStart; @@ -34,7 +41,10 @@ export interface MlSetupDependencies { } export class MlPlugin implements Plugin { + constructor(private readonly initializerContext: PluginInitializerContext) {} + setup(core: CoreSetup, pluginsSetup: MlSetupDependencies) { + const mlConfig = this.initializerContext.config.get(); core.application.register({ id: PLUGIN_ID, title: i18n.translate('xpack.ml.plugin.title', { @@ -57,6 +67,7 @@ export class MlPlugin implements Plugin { usageCollection: pluginsSetup.usageCollection, licenseManagement: pluginsSetup.licenseManagement, home: pluginsSetup.home, + mlConfig, }, { element: params.element, diff --git a/x-pack/plugins/ml/server/config.ts b/x-pack/plugins/ml/server/config.ts new file mode 100644 index 000000000000..7cef6f17bbef --- /dev/null +++ b/x-pack/plugins/ml/server/config.ts @@ -0,0 +1,15 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { PluginConfigDescriptor } from 'kibana/server'; +import { MlConfigType, configSchema } from '../common/types/ml_config'; + +export const config: PluginConfigDescriptor = { + exposeToBrowser: { + file_data_visualizer: true, + }, + schema: configSchema, +}; diff --git a/x-pack/plugins/ml/server/index.ts b/x-pack/plugins/ml/server/index.ts index 175c20bf49c9..6e638d647a38 100644 --- a/x-pack/plugins/ml/server/index.ts +++ b/x-pack/plugins/ml/server/index.ts @@ -9,3 +9,5 @@ import { MlServerPlugin } from './plugin'; export { MlPluginSetup, MlPluginStart } from './plugin'; export const plugin = (ctx: PluginInitializerContext) => new MlServerPlugin(ctx); + +export { config } from './config'; diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 2ae29202ede4..d07026c0883b 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -9732,7 +9732,6 @@ "xpack.ml.datavisualizer.selector.dataVisualizerTitle": "データビジュアライザー", "xpack.ml.datavisualizer.selector.experimentalBadgeLabel": "実験的", "xpack.ml.datavisualizer.selector.experimentalBadgeTooltipLabel": "実験的機能。フィードバックをお待ちしています。", - "xpack.ml.datavisualizer.selector.importDataDescription": "ログファイルからデータをインポートします。最大 100 MB のファイルをアップロードできます。", "xpack.ml.datavisualizer.selector.importDataTitle": "データのインポート", "xpack.ml.datavisualizer.selector.selectIndexButtonLabel": "インデックスを選択", "xpack.ml.datavisualizer.selector.selectIndexPatternDescription": "既存の Elasticsearch インデックスのデータを可視化します。", @@ -9983,7 +9982,6 @@ "xpack.ml.fileDatavisualizer.welcomeContent.logFilesWithCommonFormatDescription": "タイムスタンプの一般的フォーマットのログファイル", "xpack.ml.fileDatavisualizer.welcomeContent.newlineDelimitedJsonDescription": "改行区切りの JSON", "xpack.ml.fileDatavisualizer.welcomeContent.supportedFileFormatDescription": "ファイルデータビジュアライザーはこれらのファイル形式をサポートしています:", - "xpack.ml.fileDatavisualizer.welcomeContent.uploadedFilesAllowedSizeDescription": "最大 100 MB のファイルをアップロードできます。", "xpack.ml.fileDatavisualizer.welcomeContent.visualizeDataFromLogFileDescription": "ファイルデータビジュアライザーは、ログファイルのフィールドとメトリックの理解に役立ちます。ファイルをアップロードして、データを分析し、 Elasticsearch インデックスにインポートするか選択できます。", "xpack.ml.fileDatavisualizer.welcomeContent.visualizeDataFromLogFileTitle": "ログファイルのデータを可視化 {experimentalBadge}", "xpack.ml.formatters.metricChangeDescription.actualSameAsTypicalDescription": "実際値が通常値と同じ", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index 7f5df15dec83..7e64ff6301fa 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -9735,7 +9735,6 @@ "xpack.ml.datavisualizer.selector.dataVisualizerTitle": "数据可视化工具", "xpack.ml.datavisualizer.selector.experimentalBadgeLabel": "实验性", "xpack.ml.datavisualizer.selector.experimentalBadgeTooltipLabel": "实验功能。我们很乐意听取您的反馈意见。", - "xpack.ml.datavisualizer.selector.importDataDescription": "从日志文件导入数据。您可以上传最大 100 MB 的文件。", "xpack.ml.datavisualizer.selector.importDataTitle": "导入数据", "xpack.ml.datavisualizer.selector.selectIndexButtonLabel": "选择索引", "xpack.ml.datavisualizer.selector.selectIndexPatternDescription": "可视化现有 Elasticsearch 索引中的数据。", @@ -9986,7 +9985,6 @@ "xpack.ml.fileDatavisualizer.welcomeContent.logFilesWithCommonFormatDescription": "具有时间戳通用格式的日志文件", "xpack.ml.fileDatavisualizer.welcomeContent.newlineDelimitedJsonDescription": "换行符分隔的 JSON", "xpack.ml.fileDatavisualizer.welcomeContent.supportedFileFormatDescription": "File Data Visualizer 支持以下文件格式:", - "xpack.ml.fileDatavisualizer.welcomeContent.uploadedFilesAllowedSizeDescription": "您可以上传最大 100 MB 的文件。", "xpack.ml.fileDatavisualizer.welcomeContent.visualizeDataFromLogFileDescription": "File Data Visualizer 可帮助您理解日志文件中的字段和指标。上传文件、分析文件数据,然后选择是否将数据导入 Elasticsearch 索引。", "xpack.ml.fileDatavisualizer.welcomeContent.visualizeDataFromLogFileTitle": "可视化来自日志文件的数据 {experimentalBadge}", "xpack.ml.formatters.metricChangeDescription.actualSameAsTypicalDescription": "实际上与典型模式相同", From 67536e4b3cda294dae60e4f5e013e3afcfc4d1fd Mon Sep 17 00:00:00 2001 From: Aaron Caldwell Date: Wed, 8 Apr 2020 08:12:37 -0600 Subject: [PATCH 21/36] =?UTF-8?q?Fix=20issue=20with=20license=20not=20gett?= =?UTF-8?q?ing=20obtained=20&=20passed=20to=20server=E2=80=A6=20(#62883)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- x-pack/legacy/plugins/tilemap/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/x-pack/legacy/plugins/tilemap/index.js b/x-pack/legacy/plugins/tilemap/index.js index 767a0fe72985..d4105519ee0a 100644 --- a/x-pack/legacy/plugins/tilemap/index.js +++ b/x-pack/legacy/plugins/tilemap/index.js @@ -15,7 +15,7 @@ export const tilemap = kibana => { require: ['xpack_main', 'vis_type_vislib'], publicDir: resolve(__dirname, 'public'), uiExports: { - visTypeEnhancers: ['plugins/tilemap/vis_type_enhancers/update_tilemap_settings'], + hacks: ['plugins/tilemap/vis_type_enhancers/update_tilemap_settings'], }, init: function(server) { const thisPlugin = this; From d94d7cc7195870c9c7379062684c0adbf2a5e73b Mon Sep 17 00:00:00 2001 From: Poff Poffenberger Date: Wed, 8 Apr 2020 09:20:25 -0500 Subject: [PATCH 22/36] [Canvas] Fix Canvas-specific storybook after new platform changes (#61876) * Fix Canvas storybook webpack config * Temporarily disable workpad export example * Mock out lib/notify and download_workpad Co-authored-by: Elastic Machine --- .../canvas/.storybook/webpack.config.js | 27 ++++++++++++++++--- .../canvas/tasks/mocks/downloadWorkpad.js | 13 +++++++++ 2 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 x-pack/legacy/plugins/canvas/tasks/mocks/downloadWorkpad.js diff --git a/x-pack/legacy/plugins/canvas/.storybook/webpack.config.js b/x-pack/legacy/plugins/canvas/.storybook/webpack.config.js index 85cb6d45c595..cc74faeac6a9 100644 --- a/x-pack/legacy/plugins/canvas/.storybook/webpack.config.js +++ b/x-pack/legacy/plugins/canvas/.storybook/webpack.config.js @@ -6,6 +6,7 @@ const path = require('path'); const webpack = require('webpack'); +const { stringifyRequest } = require('loader-utils'); const CopyWebpackPlugin = require('copy-webpack-plugin'); const { DLL_OUTPUT, KIBANA_ROOT } = require('./constants'); @@ -73,7 +74,20 @@ module.exports = async ({ config }) => { path: path.resolve(KIBANA_ROOT, 'src/optimize/postcss.config.js'), }, }, - { loader: 'sass-loader' }, + { + loader: 'sass-loader', + options: { + prependData(loaderContext) { + return `@import ${stringifyRequest( + loaderContext, + path.resolve(KIBANA_ROOT, 'src/legacy/ui/public/styles/_styling_constants.scss') + )};\n`; + }, + sassOptions: { + includePaths: [path.resolve(KIBANA_ROOT, 'node_modules')], + }, + }, + }, ], }); @@ -86,8 +100,9 @@ module.exports = async ({ config }) => { loader: 'css-loader', options: { importLoaders: 2, - modules: true, - localIdentName: '[name]__[local]___[hash:base64:5]', + modules: { + localIdentName: '[name]__[local]___[hash:base64:5]', + }, }, }, { @@ -159,7 +174,11 @@ module.exports = async ({ config }) => { // what require() calls it will execute within the bundle JSON.stringify({ type, modules: extensions[type] || [] }), ].join(''); - }) + }), + + // Mock out libs used by a few componets to avoid loading in kibana_legacy and platform + new webpack.NormalModuleReplacementPlugin(/lib\/notify/, path.resolve(__dirname, '../tasks/mocks/uiNotify')), + new webpack.NormalModuleReplacementPlugin(/lib\/download_workpad/, path.resolve(__dirname, '../tasks/mocks/downloadWorkpad')), ); // Tell Webpack about relevant extensions diff --git a/x-pack/legacy/plugins/canvas/tasks/mocks/downloadWorkpad.js b/x-pack/legacy/plugins/canvas/tasks/mocks/downloadWorkpad.js new file mode 100644 index 000000000000..3571448c11aa --- /dev/null +++ b/x-pack/legacy/plugins/canvas/tasks/mocks/downloadWorkpad.js @@ -0,0 +1,13 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ +export const downloadWorkpad = async workpadId => console.log(`Download workpad ${workpadId}`); + +export const downloadRenderedWorkpad = async renderedWorkpad => + console.log(`Download workpad ${renderedWorkpad.id}`); + +export const downloadRuntime = async basePath => console.log(`Download run time at ${basePath}`); + +export const downloadZippedRuntime = async data => console.log(`Downloading data ${data}`); From 1af82c709fe403cb6a3dccda5e29b0d4589a433f Mon Sep 17 00:00:00 2001 From: eyalkoren <41850454+eyalkoren@users.noreply.github.com> Date: Wed, 8 Apr 2020 17:34:04 +0300 Subject: [PATCH 23/36] [APM] Agent remote configuration: general settings descriptions (#62276) * Updates general remote config descriptions I removed `log_level` from here because it seems it doesn't fit at least the Java, Go and Node agents - see #61821, and it is already deactivated for most others (this doesn't have to be included in this PR though). * Update general_settings.ts * Restore log_level definition * Remove extra spaces Co-authored-by: Nathan L Smith --- .../setting_definitions/general_settings.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/x-pack/plugins/apm/common/agent_configuration/setting_definitions/general_settings.ts b/x-pack/plugins/apm/common/agent_configuration/setting_definitions/general_settings.ts index f1d11c5c70c2..e73aed35e87f 100644 --- a/x-pack/plugins/apm/common/agent_configuration/setting_definitions/general_settings.ts +++ b/x-pack/plugins/apm/common/agent_configuration/setting_definitions/general_settings.ts @@ -63,7 +63,7 @@ export const generalSettings: RawSettingDefinition[] = [ 'xpack.apm.agentConfig.captureBody.description', { defaultMessage: - 'For transactions that are HTTP requests, the agent can optionally capture the request body (e.g. POST variables).' + 'For transactions that are HTTP requests, the agent can optionally capture the request body (e.g. POST variables).\nFor transactions that are initiated by receiving a message from a message broker, the agent can capture the textual message body.' } ), options: [ @@ -87,7 +87,7 @@ export const generalSettings: RawSettingDefinition[] = [ 'xpack.apm.agentConfig.captureHeaders.description', { defaultMessage: - 'If set to `true`, the agent will capture request and response headers, including cookies.\n\nNOTE: Setting this to `false` reduces network bandwidth, disk space and object allocations.' + 'If set to `true`, the agent will capture HTTP request and response headers (including cookies), as well as message headers/properties when using messaging frameworks (like Kafka).\n\nNOTE: Setting this to `false` reduces network bandwidth, disk space and object allocations.' } ), excludeAgents: ['js-base', 'rum-js', 'nodejs'] @@ -117,7 +117,7 @@ export const generalSettings: RawSettingDefinition[] = [ }), description: i18n.translate('xpack.apm.agentConfig.recording.description', { defaultMessage: - 'When recording, the agent instruments incoming HTTP requests, tracks errors, and collects and sends metrics. When inactive, the agent works as a noop, not collecting data and not communicating with the APM Server except for polling for updated configuration. As this is a reversible switch, agent threads are not being killed when inactivated, but they will be mostly idle in this state, so the overhead should be negligible. You can use this setting to dynamically control whether Elastic APM is enabled or disabled.' + 'When recording, the agent instruments incoming HTTP requests, tracks errors, and collects and sends metrics. When set to non-recording, the agent works as a noop, not collecting data and not communicating with the APM Server except for polling for updated configuration. As this is a reversible switch, agent threads are not being killed when set to non-recording, but they will be mostly idle in this state, so the overhead should be negligible. You can use this setting to dynamically control whether Elastic APM is enabled or disabled.' }), excludeAgents: ['nodejs'] }, @@ -215,7 +215,7 @@ export const generalSettings: RawSettingDefinition[] = [ 'xpack.apm.agentConfig.transactionSampleRate.description', { defaultMessage: - 'By default, the agent will sample every transaction (e.g. request to your service). To reduce overhead and storage requirements, you can set the sample rate to a value between 0.0 and 1.0. We still record overall time and the result for unsampled transactions, but no context information, labels, or spans.' + 'By default, the agent will sample every transaction (e.g. request to your service). To reduce overhead and storage requirements, you can set the sample rate to a value between 0.0 and 1.0. We still record overall time and the result for unsampled transactions, but not context information, labels, or spans.' } ) } From 5d34697ea57f444ffa7ba5b1ff2e00f1e85ee0e1 Mon Sep 17 00:00:00 2001 From: Yara Tercero Date: Wed, 8 Apr 2020 10:46:06 -0400 Subject: [PATCH 24/36] [SIEM][Detection Engine] - Update list values in REST interfaces (#62320) Summary - #60022 - Follow up on #60171 - Modifies boolean filters to enum of "included" and "excluded" - Adds operator types of enum "match", "match_all", "list", and "exists" - Adds values properties to include those for "list" - DOES NOT FILTER ON THE VALUES JUST YET (That will be a follow on PR) --- .../routes/__mocks__/request_responses.ts | 28 ++-- .../routes/__mocks__/utils.ts | 28 ++-- .../routes/rules/validate.test.ts | 28 ++-- .../add_prepackaged_rules_schema.test.ts | 28 ++-- .../schemas/create_rules_schema.test.ts | 28 ++-- .../schemas/import_rules_schema.test.ts | 28 ++-- .../routes/schemas/patch_rules_schema.test.ts | 53 ++++--- .../schemas/response/__mocks__/utils.ts | 28 ++-- .../routes/schemas/response/schemas.ts | 39 +++-- .../routes/schemas/schemas.ts | 32 +++- .../schemas/types/lists_default_array.test.ts | 137 ++++++++++++++++-- .../schemas/types/lists_default_array.ts | 8 +- .../schemas/update_rules_schema.test.ts | 25 ++-- .../rules/get_export_all.test.ts | 28 ++-- .../rules/get_export_by_object_ids.test.ts | 56 ++++--- .../scripts/rules/patches/update_list.json | 27 ++-- .../rules/queries/query_with_list.json | 32 ++-- .../scripts/rules/updates/update_list.json | 27 ++-- .../signals/__mocks__/es_results.ts | 28 ++-- .../signals/build_bulk_body.test.ts | 112 ++++++++------ .../signals/build_rule.test.ts | 84 ++++++----- 21 files changed, 583 insertions(+), 301 deletions(-) diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request_responses.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request_responses.ts index 3b24b722f735..77c1641d073c 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request_responses.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request_responses.ts @@ -450,25 +450,31 @@ export const getResult = (): RuleAlertType => ({ lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/utils.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/utils.ts index 63fe51f2c81c..c929b0718207 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/utils.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/utils.ts @@ -141,25 +141,31 @@ export const getOutputRuleAlertForRest = (): Omit< lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/validate.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/validate.test.ts index 77e05796fbcb..7537401e5a36 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/validate.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/validate.test.ts @@ -74,25 +74,31 @@ export const ruleOutput: RulesSchema = { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/add_prepackaged_rules_schema.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/add_prepackaged_rules_schema.test.ts index b10627d151fa..8c741c937bf1 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/add_prepackaged_rules_schema.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/add_prepackaged_rules_schema.test.ts @@ -1561,25 +1561,31 @@ describe('add prepackaged rules schema', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/create_rules_schema.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/create_rules_schema.test.ts index 08bd01ee9a1a..e56e8e5fe34d 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/create_rules_schema.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/create_rules_schema.test.ts @@ -1526,25 +1526,31 @@ describe('create rules schema', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/import_rules_schema.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/import_rules_schema.test.ts index c8e5bb981f92..40f7b19ea12b 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/import_rules_schema.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/import_rules_schema.test.ts @@ -1747,25 +1747,31 @@ describe('import rules schema', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/patch_rules_schema.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/patch_rules_schema.test.ts index 45b5028f392b..e01a8f40fcea 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/patch_rules_schema.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/patch_rules_schema.test.ts @@ -1229,25 +1229,31 @@ describe('patch rules schema', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, @@ -1263,25 +1269,28 @@ describe('patch rules schema', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + ], }, ], }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/response/__mocks__/utils.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/response/__mocks__/utils.ts index 46cd1b653b5b..d5ea950d163f 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/response/__mocks__/utils.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/response/__mocks__/utils.ts @@ -66,25 +66,31 @@ export const getBaseResponsePayload = (anchorDate: string = ANCHOR_DATE): RulesS lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/response/schemas.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/response/schemas.ts index 538c8f754fd6..faae1dde8354 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/response/schemas.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/response/schemas.ts @@ -154,13 +154,34 @@ export const note = t.string; // NOTE: Experimental list support not being shipped currently and behind a feature flag // TODO: Remove this comment once we lists have passed testing and is ready for the release -export const boolean_operator = t.keyof({ and: null, 'and not': null }); -export const list_type = t.keyof({ value: null }); // TODO: (LIST-FEATURE) Eventually this can include "list" when we support lists CRUD -export const list_value = t.exact(t.type({ name: t.string, type: list_type })); -export const list = t.exact( - t.type({ - field: t.string, - boolean_operator, - values: t.array(list_value), - }) +export const list_field = t.string; +export const list_values_operator = t.keyof({ included: null, excluded: null }); +export const list_values_type = t.keyof({ match: null, match_all: null, list: null, exists: null }); +export const list_values = t.exact( + t.intersection([ + t.type({ + name: t.string, + }), + t.partial({ + id: t.string, + description: t.string, + created_at, + }), + ]) ); +export const list = t.exact( + t.intersection([ + t.type({ + field: t.string, + values_operator: list_values_operator, + values_type: list_values_type, + }), + t.partial({ values: t.array(list_values) }), + ]) +); +export const list_and = t.intersection([ + list, + t.partial({ + and: t.array(list), + }), +]); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/schemas.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/schemas.ts index 16e419f389f0..c17ae8466a86 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/schemas.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/schemas.ts @@ -126,12 +126,28 @@ export const note = Joi.string(); // NOTE: Experimental list support not being shipped currently and behind a feature flag // TODO: (LIST-FEATURE) Remove this comment once we lists have passed testing and is ready for the release -export const boolean_operator = Joi.string().valid('and', 'and not'); -export const list_type = Joi.string().valid('value'); // TODO: (LIST-FEATURE) Eventually this can be "list" when we support list types -export const list_value = Joi.object({ name: Joi.string().required(), type: list_type.required() }); -export const list = Joi.object({ - field: Joi.string().required(), - boolean_operator: boolean_operator.required(), - values: Joi.array().items(list_value), +export const list_field = Joi.string(); +export const list_values_operator = Joi.string().valid(['included', 'excluded']); +export const list_values_types = Joi.string().valid(['match', 'match_all', 'list', 'exists']); +export const list_values = Joi.object({ + name: Joi.string().required(), + id: Joi.string(), + description: Joi.string(), + created_at, }); -export const lists = Joi.array().items(list); +export const list = Joi.object({ + field: list_field.required(), + values_operator: list_values_operator.required(), + values_type: list_values_types.required(), + values: Joi.when('values_type', { + is: 'exists', + then: Joi.forbidden(), + otherwise: Joi.array() + .items(list_values) + .required(), + }), +}); +export const list_and = Joi.object({ + and: Joi.array().items(list), +}); +export const lists = Joi.array().items(list.concat(list_and)); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/types/lists_default_array.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/types/lists_default_array.test.ts index 14df1c3d8cd5..e8a9c7b0886a 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/types/lists_default_array.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/types/lists_default_array.test.ts @@ -23,27 +23,129 @@ describe('lists_default_array', () => { const payload = [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', - }, - { - name: 'mothra', - type: 'value', }, ], + and: [ + { + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], + }, + ], + }, + ]; + const decoded = ListsDefaultArray.decode(payload); + const message = pipe(decoded, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual([]); + expect(message.schema).toEqual(payload); + }); + + test('it should not validate an array of lists that includes a values_operator other than included or excluded', () => { + const payload = [ + { + field: 'source.ip', + values_operator: 'included', + values_type: 'exists', + }, + { + field: 'host.name', + values_operator: 'excluded', + values_type: 'exists', + }, + { + field: 'host.hostname', + values_operator: 'jibber jabber', + values_type: 'exists', + }, + ]; + const decoded = ListsDefaultArray.decode(payload); + const message = pipe(decoded, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual([ + 'Invalid value "jibber jabber" supplied to "values_operator"', + ]); + expect(message.schema).toEqual({}); + }); + + // TODO - this scenario should never come up, as the values key is forbidden when values_type is "exists" in the incoming schema - need to find a good way to do this in io-ts + test('it will validate an array of lists that includes "values" when "values_type" is "exists"', () => { + const payload = [ + { + field: 'host.name', + values_operator: 'excluded', + values_type: 'exists', + values: [ + { + name: '127.0.0.1', + }, + ], + }, + ]; + const decoded = ListsDefaultArray.decode(payload); + const message = pipe(decoded, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual([]); + expect(message.schema).toEqual(payload); + }); + + // TODO - this scenario should never come up, as the values key is required when values_type is "match" in the incoming schema - need to find a good way to do this in io-ts + test('it will validate an array of lists that does not include "values" when "values_type" is "match"', () => { + const payload = [ + { + field: 'host.name', + values_operator: 'excluded', + values_type: 'match', + }, + ]; + const decoded = ListsDefaultArray.decode(payload); + const message = pipe(decoded, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual([]); + expect(message.schema).toEqual(payload); + }); + + // TODO - this scenario should never come up, as the values key is required when values_type is "match_all" in the incoming schema - need to find a good way to do this in io-ts + test('it will validate an array of lists that does not include "values" when "values_type" is "match_all"', () => { + const payload = [ + { + field: 'host.name', + values_operator: 'excluded', + values_type: 'match_all', + }, + ]; + const decoded = ListsDefaultArray.decode(payload); + const message = pipe(decoded, foldLeftRight); + + expect(getPaths(left(message.errors))).toEqual([]); + expect(message.schema).toEqual(payload); + }); + + // TODO - this scenario should never come up, as the values key is required when values_type is "list" in the incoming schema - need to find a good way to do this in io-ts + test('it should not validate an array of lists that does not include "values" when "values_type" is "list"', () => { + const payload = [ + { + field: 'host.name', + values_operator: 'excluded', + values_type: 'list', }, ]; const decoded = ListsDefaultArray.decode(payload); @@ -57,11 +159,11 @@ describe('lists_default_array', () => { const payload = [ { field: 'source.ip', - boolean_operator: 'and', + values_operator: 'included', + values_type: 'exists', values: [ { name: '127.0.0.1', - type: 'value', }, ], }, @@ -70,7 +172,10 @@ describe('lists_default_array', () => { const decoded = ListsDefaultArray.decode(payload); const message = pipe(decoded, foldLeftRight); - expect(getPaths(left(message.errors))).toEqual(['Invalid value "5" supplied to ""']); + expect(getPaths(left(message.errors))).toEqual([ + 'Invalid value "5" supplied to ""', + 'Invalid value "5" supplied to ""', + ]); expect(message.schema).toEqual({}); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/types/lists_default_array.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/types/lists_default_array.ts index 0e0944a11b41..85a38e296494 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/types/lists_default_array.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/types/lists_default_array.ts @@ -7,10 +7,10 @@ import * as t from 'io-ts'; import { Either } from 'fp-ts/lib/Either'; -import { list } from '../response/schemas'; +import { list_and as listAnd } from '../response/schemas'; export type ListsDefaultArrayC = t.Type; -type List = t.TypeOf; +type List = t.TypeOf; /** * Types the ListsDefaultArray as: @@ -18,9 +18,9 @@ type List = t.TypeOf; */ export const ListsDefaultArray: ListsDefaultArrayC = new t.Type( 'listsWithDefaultArray', - t.array(list).is, + t.array(listAnd).is, (input): Either => - input == null ? t.success([]) : t.array(list).decode(input), + input == null ? t.success([]) : t.array(listAnd).decode(input), t.identity ); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/update_rules_schema.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/update_rules_schema.test.ts index 6f6beea7fa5f..e8f9aad620ca 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/update_rules_schema.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/update_rules_schema.test.ts @@ -1552,25 +1552,28 @@ describe('create rules schema', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + ], }, ], }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/get_export_all.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/get_export_all.test.ts index ca6fb15e1fad..dd004e3685b1 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/get_export_all.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/get_export_all.test.ts @@ -82,25 +82,31 @@ describe('getExportAll', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/get_export_by_object_ids.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/get_export_by_object_ids.test.ts index 175c906f7996..715cb23e8444 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/get_export_by_object_ids.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/get_export_by_object_ids.test.ts @@ -90,25 +90,31 @@ describe('get_export_by_object_ids', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, @@ -212,25 +218,31 @@ describe('get_export_by_object_ids', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/patches/update_list.json b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/patches/update_list.json index 8c86f4c85af1..4db8724db4e1 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/patches/update_list.json +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/patches/update_list.json @@ -3,21 +3,28 @@ "lists": [ { "field": "source.ip", - "boolean_operator": "and", - "values": [ - { - "name": "127.0.0.1", - "type": "value" - } - ] + "values_operator": "excluded", + "values_type": "exists" }, { "field": "host.name", - "boolean_operator": "and not", + "values_operator": "included", + "values_type": "match", "values": [ { - "name": "rock01", - "type": "value" + "name": "rock01" + } + ], + "and": [ + { + "field": "host.id", + "values_operator": "included", + "values_type": "match_all", + "values": [ + { + "name": "123456" + } + ] } ] } diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/query_with_list.json b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/query_with_list.json index f6856eec5996..997d03369a69 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/query_with_list.json +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/queries/query_with_list.json @@ -9,25 +9,31 @@ "lists": [ { "field": "source.ip", - "boolean_operator": "and", - "values": [ - { - "name": "127.0.0.1", - "type": "value" - } - ] + "values_operator": "included", + "values_type": "exists" }, { "field": "host.name", - "boolean_operator": "and not", + "values_operator": "excluded", + "values_type": "match", "values": [ { - "name": "rock01", - "type": "value" - }, + "name": "rock01" + } + ], + "and": [ { - "name": "mothra", - "type": "value" + "field": "host.id", + "values_operator": "included", + "values_type": "match_all", + "values": [ + { + "name": "123" + }, + { + "name": "678" + } + ] } ] } diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/updates/update_list.json b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/updates/update_list.json index 6704c9676fa5..66b198974f57 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/updates/update_list.json +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/rules/updates/update_list.json @@ -9,21 +9,28 @@ "lists": [ { "field": "source.ip", - "boolean_operator": "and", - "values": [ - { - "name": "127.0.0.1", - "type": "value" - } - ] + "values_operator": "excluded", + "values_type": "exists" }, { "field": "host.name", - "boolean_operator": "and not", + "values_operator": "included", + "values_type": "match", "values": [ { - "name": "rock01", - "type": "value" + "name": "rock01" + } + ], + "and": [ + { + "field": "host.id", + "values_operator": "included", + "values_type": "match_all", + "values": [ + { + "name": "123456" + } + ] } ] } diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/__mocks__/es_results.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/__mocks__/es_results.ts index 6d7d7e93d7e6..7a211c5631da 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/__mocks__/es_results.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/__mocks__/es_results.ts @@ -47,25 +47,31 @@ export const sampleRuleAlertParams = ( lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_bulk_body.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_bulk_body.test.ts index f2c2b99bdac8..f1729e35ce1f 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_bulk_body.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_bulk_body.test.ts @@ -93,25 +93,31 @@ describe('buildBulkBody', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, @@ -213,25 +219,31 @@ describe('buildBulkBody', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, @@ -331,25 +343,31 @@ describe('buildBulkBody', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, @@ -442,25 +460,31 @@ describe('buildBulkBody', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_rule.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_rule.test.ts index e360ceaf02f4..e5183ed4df7b 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_rule.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/build_rule.test.ts @@ -82,25 +82,31 @@ describe('buildRule', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, @@ -159,25 +165,31 @@ describe('buildRule', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, @@ -235,25 +247,31 @@ describe('buildRule', () => { lists: [ { field: 'source.ip', - boolean_operator: 'and', - values: [ - { - name: '127.0.0.1', - type: 'value', - }, - ], + values_operator: 'included', + values_type: 'exists', }, { field: 'host.name', - boolean_operator: 'and not', + values_operator: 'excluded', + values_type: 'match', values: [ { name: 'rock01', - type: 'value', }, + ], + and: [ { - name: 'mothra', - type: 'value', + field: 'host.id', + values_operator: 'included', + values_type: 'match_all', + values: [ + { + name: '123', + }, + { + name: '678', + }, + ], }, ], }, From 90e6f2ca6de48858e9faa8a802905abf3aa23e8f Mon Sep 17 00:00:00 2001 From: Peter Pisljar Date: Wed, 8 Apr 2020 16:57:23 +0200 Subject: [PATCH 25/36] fixing multiple metrics (#62929) --- .../options/metrics_axes/__snapshots__/index.test.tsx.snap | 3 +++ .../public/components/options/metrics_axes/index.test.tsx | 1 + .../public/components/options/metrics_axes/index.tsx | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/__snapshots__/index.test.tsx.snap b/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/__snapshots__/index.test.tsx.snap index 442bc826d51f..09e0753d592e 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/__snapshots__/index.test.tsx.snap +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/__snapshots__/index.test.tsx.snap @@ -54,6 +54,7 @@ exports[`MetricsAxisOptions component should init with the default set of props } vis={ Object { + "serialize": [MockFunction], "setState": [MockFunction], "type": Object { "schemas": Object { @@ -126,6 +127,7 @@ exports[`MetricsAxisOptions component should init with the default set of props } vis={ Object { + "serialize": [MockFunction], "setState": [MockFunction], "type": Object { "schemas": Object { @@ -169,6 +171,7 @@ exports[`MetricsAxisOptions component should init with the default set of props setCategoryAxis={[Function]} vis={ Object { + "serialize": [MockFunction], "setState": [MockFunction], "type": Object { "schemas": Object { diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/index.test.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/index.test.tsx index a3f150e71881..524792d1460f 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/index.test.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/index.test.tsx @@ -95,6 +95,7 @@ describe('MetricsAxisOptions component', () => { schemas: { metrics: [{ name: 'metric' }] }, }, setState: jest.fn(), + serialize: jest.fn(), }, stateParams: { valueAxes: [axis], diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/index.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/index.tsx index c7b4562b1087..114305d653dd 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/index.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/index.tsx @@ -299,7 +299,7 @@ function MetricsAxisOptions(props: ValidationVisOptionsProps) }, [stateParams.seriesParams]); useEffect(() => { - vis.setState({ type: visType } as any); + vis.setState({ ...vis.serialize(), type: visType }); }, [vis, visType]); return isTabSelected ? ( From 202366310483f51f614b3b1f2001917547803e2b Mon Sep 17 00:00:00 2001 From: Nathan Reese Date: Wed, 8 Apr 2020 10:03:37 -0600 Subject: [PATCH 26/36] [Maps] Add date-fields to metrics selection (#62629) Co-authored-by: Elastic Machine --- x-pack/plugins/maps/public/components/metric_editor.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/x-pack/plugins/maps/public/components/metric_editor.js b/x-pack/plugins/maps/public/components/metric_editor.js index 530f402592b2..d1affe2f4219 100644 --- a/x-pack/plugins/maps/public/components/metric_editor.js +++ b/x-pack/plugins/maps/public/components/metric_editor.js @@ -24,8 +24,13 @@ function filterFieldsForAgg(fields, aggType) { return getTermsFields(fields); } + const metricAggFieldTypes = ['number']; + if (aggType !== AGG_TYPE.SUM) { + metricAggFieldTypes.push('date'); + } + return fields.filter(field => { - return field.aggregatable && field.type === 'number'; + return field.aggregatable && metricAggFieldTypes.includes(field.type); }); } From 3457dde6f55c606a3f693ef75fe237ab07b56904 Mon Sep 17 00:00:00 2001 From: nnamdifrankie <56440728+nnamdifrankie@users.noreply.github.com> Date: Wed, 8 Apr 2020 12:10:00 -0400 Subject: [PATCH 27/36] [Endpoint] EMT-146: add host status info to the metadata API response (#62876) [Endpoint] EMT-146: add host status info to the metadata API response --- x-pack/plugins/endpoint/common/types.ts | 28 ++++++++++++++++++- .../endpoint/store/hosts/action.ts | 4 +-- .../endpoint/store/hosts/index.test.ts | 2 +- .../endpoint/store/hosts/middleware.test.ts | 2 +- .../store/hosts/mock_host_result_list.ts | 7 +++-- .../endpoint/store/hosts/reducer.ts | 4 +-- .../server/routes/alerts/details/handlers.ts | 2 +- .../endpoint/server/routes/metadata/index.ts | 15 +++++++--- .../server/routes/metadata/metadata.test.ts | 9 +++--- .../api_integration/apis/endpoint/metadata.ts | 17 +++++------ 10 files changed, 64 insertions(+), 26 deletions(-) diff --git a/x-pack/plugins/endpoint/common/types.ts b/x-pack/plugins/endpoint/common/types.ts index e8e1281a8892..a614526d92a3 100644 --- a/x-pack/plugins/endpoint/common/types.ts +++ b/x-pack/plugins/endpoint/common/types.ts @@ -86,7 +86,7 @@ export interface AlertResultList { export interface HostResultList { /* the hosts restricted by the page size */ - hosts: HostMetadata[]; + hosts: HostInfo[]; /* the total number of unique hosts in the index */ total: number; /* the page size requested */ @@ -252,6 +252,32 @@ export type AlertData = AlertEvent & AlertMetadata; export type AlertDetails = AlertData & AlertState; +/** + * The status of the host + */ +export enum HostStatus { + /** + * Default state of the host when no host information is present or host information cannot + * be retrieved. e.g. API error + */ + ERROR = 'error', + + /** + * Host is online as indicated by its checkin status during the last checkin window + */ + ONLINE = 'online', + + /** + * Host is offline as indicated by its checkin status during the last checkin window + */ + OFFLINE = 'offline', +} + +export type HostInfo = Immutable<{ + metadata: HostMetadata; + host_status: HostStatus; +}>; + export type HostMetadata = Immutable<{ '@timestamp': number; event: { diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/action.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/action.ts index dee35aa3b895..4dafa68ddb64 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/action.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/action.ts @@ -5,7 +5,7 @@ */ import { HostListPagination, ServerApiError } from '../../types'; -import { HostResultList, HostMetadata } from '../../../../../common/types'; +import { HostResultList, HostInfo } from '../../../../../common/types'; interface ServerReturnedHostList { type: 'serverReturnedHostList'; @@ -14,7 +14,7 @@ interface ServerReturnedHostList { interface ServerReturnedHostDetails { type: 'serverReturnedHostDetails'; - payload: HostMetadata; + payload: HostInfo; } interface ServerFailedToReturnHostDetails { diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/index.test.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/index.test.ts index 9aff66cdfb75..614893434363 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/index.test.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/index.test.ts @@ -52,7 +52,7 @@ describe('HostList store concerns', () => { }); const currentState = store.getState(); - expect(currentState.hosts).toEqual(payload.hosts); + expect(currentState.hosts).toEqual(payload.hosts.map(hostInfo => hostInfo.metadata)); expect(currentState.pageSize).toEqual(payload.request_page_size); expect(currentState.pageIndex).toEqual(payload.request_page_index); expect(currentState.total).toEqual(payload.total); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/middleware.test.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/middleware.test.ts index a1973a38b653..8c8578426aa2 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/middleware.test.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/middleware.test.ts @@ -58,6 +58,6 @@ describe('host list middleware', () => { paging_properties: [{ page_index: 0 }, { page_size: 10 }], }), }); - expect(listData(getState())).toEqual(apiResponse.hosts); + expect(listData(getState())).toEqual(apiResponse.hosts.map(hostInfo => hostInfo.metadata)); }); }); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/mock_host_result_list.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/mock_host_result_list.ts index db39ecf44831..d4c2602e3438 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/mock_host_result_list.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/mock_host_result_list.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { HostResultList } from '../../../../../common/types'; +import { HostResultList, HostStatus } from '../../../../../common/types'; import { EndpointDocGenerator } from '../../../../../common/generate_data'; export const mockHostResultList: (options?: { @@ -27,7 +27,10 @@ export const mockHostResultList: (options?: { const hosts = []; for (let index = 0; index < actualCountToReturn; index++) { const generator = new EndpointDocGenerator('seed'); - hosts.push(generator.generateHostMetadata()); + hosts.push({ + metadata: generator.generateHostMetadata(), + host_status: HostStatus.ERROR, + }); } const mock: HostResultList = { hosts, diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/reducer.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/reducer.ts index fd70317a9f37..ad6741dab7be 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/reducer.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/hosts/reducer.ts @@ -34,7 +34,7 @@ export const hostListReducer: Reducer = ( } = action.payload; return { ...state, - hosts, + hosts: hosts.map(hostInfo => hostInfo.metadata), total, pageSize, pageIndex, @@ -43,7 +43,7 @@ export const hostListReducer: Reducer = ( } else if (action.type === 'serverReturnedHostDetails') { return { ...state, - details: action.payload, + details: action.payload.metadata, }; } else if (action.type === 'serverFailedToReturnHostDetails') { return { diff --git a/x-pack/plugins/endpoint/server/routes/alerts/details/handlers.ts b/x-pack/plugins/endpoint/server/routes/alerts/details/handlers.ts index 725e362f91ec..0f32deb4fad9 100644 --- a/x-pack/plugins/endpoint/server/routes/alerts/details/handlers.ts +++ b/x-pack/plugins/endpoint/server/routes/alerts/details/handlers.ts @@ -41,7 +41,7 @@ export const alertDetailsHandlerWrapper = function( id: response._id, ...response._source, state: { - host_metadata: currentHostInfo, + host_metadata: currentHostInfo?.metadata, }, next: await pagination.getNextUrl(), prev: await pagination.getPrevUrl(), diff --git a/x-pack/plugins/endpoint/server/routes/metadata/index.ts b/x-pack/plugins/endpoint/server/routes/metadata/index.ts index ef01db9af98c..450469914bc5 100644 --- a/x-pack/plugins/endpoint/server/routes/metadata/index.ts +++ b/x-pack/plugins/endpoint/server/routes/metadata/index.ts @@ -8,7 +8,7 @@ import { IRouter, RequestHandlerContext } from 'kibana/server'; import { SearchResponse } from 'elasticsearch'; import { schema } from '@kbn/config-schema'; -import { HostMetadata, HostResultList } from '../../../common/types'; +import { HostInfo, HostMetadata, HostResultList, HostStatus } from '../../../common/types'; import { EndpointAppContext } from '../../types'; import { getESQueryHostMetadataByID, kibanaRequestToMetadataListESQuery } from './query_builders'; @@ -87,7 +87,7 @@ export function registerEndpointRoutes(router: IRouter, endpointAppContext: Endp export async function getHostData( context: RequestHandlerContext, id: string -): Promise { +): Promise { const query = getESQueryHostMetadataByID(id); const response = (await context.core.elasticsearch.dataClient.callAsCurrentUser( 'search', @@ -98,7 +98,7 @@ export async function getHostData( return undefined; } - return response.hits.hits[0]._source; + return enrichHostMetadata(response.hits.hits[0]._source); } function mapToHostResultList( @@ -113,7 +113,7 @@ function mapToHostResultList( hosts: searchResponse.hits.hits .map(response => response.inner_hits.most_recent.hits.hits) .flatMap(data => data as HitSource) - .map(entry => entry._source), + .map(entry => enrichHostMetadata(entry._source)), total: totalNumberOfHosts, }; } else { @@ -125,3 +125,10 @@ function mapToHostResultList( }; } } + +function enrichHostMetadata(hostMetadata: HostMetadata): HostInfo { + return { + metadata: hostMetadata, + host_status: HostStatus.ERROR, + }; +} diff --git a/x-pack/plugins/endpoint/server/routes/metadata/metadata.test.ts b/x-pack/plugins/endpoint/server/routes/metadata/metadata.test.ts index e0fd11e737e7..9bd251735cc0 100644 --- a/x-pack/plugins/endpoint/server/routes/metadata/metadata.test.ts +++ b/x-pack/plugins/endpoint/server/routes/metadata/metadata.test.ts @@ -18,7 +18,7 @@ import { httpServiceMock, loggingServiceMock, } from '../../../../../../src/core/server/mocks'; -import { HostMetadata, HostResultList } from '../../../common/types'; +import { HostInfo, HostMetadata, HostResultList, HostStatus } from '../../../common/types'; import { SearchResponse } from 'elasticsearch'; import { EndpointConfigSchema } from '../../config'; import * as data from '../../test_data/all_metadata_data.json'; @@ -230,7 +230,7 @@ describe('test endpoint route', () => { expect(message).toEqual('Endpoint Not Found'); }); - it('should return a single endpoint', async () => { + it('should return a single endpoint with status error', async () => { const mockRequest = httpServerMock.createKibanaRequest({ params: { id: (data as any).hits.hits[0]._id }, }); @@ -257,8 +257,9 @@ describe('test endpoint route', () => { expect(mockScopedClient.callAsCurrentUser).toBeCalled(); expect(routeConfig.options).toEqual({ authRequired: true }); expect(mockResponse.ok).toBeCalled(); - const result = mockResponse.ok.mock.calls[0][0]?.body as HostMetadata; - expect(result).toHaveProperty('endpoint'); + const result = mockResponse.ok.mock.calls[0][0]?.body as HostInfo; + expect(result).toHaveProperty('metadata.endpoint'); + expect(result.host_status).toEqual(HostStatus.ERROR); }); }); }); diff --git a/x-pack/test/api_integration/apis/endpoint/metadata.ts b/x-pack/test/api_integration/apis/endpoint/metadata.ts index ad495d450540..887be6b85b10 100644 --- a/x-pack/test/api_integration/apis/endpoint/metadata.ts +++ b/x-pack/test/api_integration/apis/endpoint/metadata.ts @@ -139,7 +139,7 @@ export default function({ getService }: FtrProviderContext) { .expect(200); expect(body.total).to.eql(2); const resultIps: string[] = [].concat( - ...body.hosts.map((metadata: Record) => metadata.host.ip) + ...body.hosts.map((hostInfo: Record) => hostInfo.metadata.host.ip) ); expect(resultIps).to.eql([ '10.192.213.130', @@ -164,7 +164,7 @@ export default function({ getService }: FtrProviderContext) { .expect(200); expect(body.total).to.eql(2); const resultOsVariantValue: Set = new Set( - body.hosts.map((metadata: Record) => metadata.host.os.variant) + body.hosts.map((hostInfo: Record) => hostInfo.metadata.host.os.variant) ); expect(Array.from(resultOsVariantValue)).to.eql([variantValue]); expect(body.hosts.length).to.eql(2); @@ -182,17 +182,17 @@ export default function({ getService }: FtrProviderContext) { }) .expect(200); expect(body.total).to.eql(1); - const resultIp: string = body.hosts[0].host.ip.filter( + const resultIp: string = body.hosts[0].metadata.host.ip.filter( (ip: string) => ip === targetEndpointIp ); expect(resultIp).to.eql([targetEndpointIp]); - expect(body.hosts[0].event.created).to.eql(1579881969541); + expect(body.hosts[0].metadata.event.created).to.eql(1579881969541); expect(body.hosts.length).to.eql(1); expect(body.request_page_size).to.eql(10); expect(body.request_page_index).to.eql(0); }); - it('metadata api should return the endpoint based on the elastic agent id', async () => { + it('metadata api should return the endpoint based on the elastic agent id, and status should be error', async () => { const targetEndpointId = 'fc0ff548-feba-41b6-8367-65e8790d0eaf'; const targetElasticAgentId = '023fa40c-411d-4188-a941-4147bfadd095'; const { body } = await supertest @@ -203,11 +203,12 @@ export default function({ getService }: FtrProviderContext) { }) .expect(200); expect(body.total).to.eql(1); - const resultHostId: string = body.hosts[0].host.id; - const resultElasticAgentId: string = body.hosts[0].elastic.agent.id; + const resultHostId: string = body.hosts[0].metadata.host.id; + const resultElasticAgentId: string = body.hosts[0].metadata.elastic.agent.id; expect(resultHostId).to.eql(targetEndpointId); expect(resultElasticAgentId).to.eql(targetElasticAgentId); - expect(body.hosts[0].event.created).to.eql(1579881969541); + expect(body.hosts[0].metadata.event.created).to.eql(1579881969541); + expect(body.hosts[0].host_status).to.eql('error'); expect(body.hosts.length).to.eql(1); expect(body.request_page_size).to.eql(10); expect(body.request_page_index).to.eql(0); From 8d8c41153afa90d53004ab872a4ea86ca30a7b37 Mon Sep 17 00:00:00 2001 From: Tim Sullivan Date: Wed, 8 Apr 2020 09:22:06 -0700 Subject: [PATCH 28/36] Reporting/fix listing pagination (#62881) * [Reporting] Fix report table pagination * update snapshot * nice little comment --- .../report_listing.test.tsx.snap | 524 ------------------ .../public/components/report_listing.tsx | 60 +- 2 files changed, 31 insertions(+), 553 deletions(-) diff --git a/x-pack/plugins/reporting/public/components/__snapshots__/report_listing.test.tsx.snap b/x-pack/plugins/reporting/public/components/__snapshots__/report_listing.test.tsx.snap index 75bc1f9eea69..271d61c22421 100644 --- a/x-pack/plugins/reporting/public/components/__snapshots__/report_listing.test.tsx.snap +++ b/x-pack/plugins/reporting/public/components/__snapshots__/report_listing.test.tsx.snap @@ -2,525 +2,6 @@ exports[`ReportListing Report job listing with some items 1`] = ` Array [ - -
- - -
- -
- - - -
-
- - - - -
- - -
-
- - - -
- -
- - - -
- - -
-
- -
- -
- -
- - -
- -
- -
- - -
- - -
- -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
- - -
- -
-
- - -
-
-
- - Report - -
-
-
- - Created at - -
-
-
- - Status - -
-
-
- - Actions - -
-
-
- - Loading reports - -
-
-
-
-
- -
- , { throw error; } } + + // Since the contents of the table have changed, we must reset the pagination + // and re-fetch. Otherwise, the Nth page we are on could be empty of jobs. + this.setState(() => ({ page: 0 }), this.fetchJobs); }; return ( @@ -476,34 +480,32 @@ class ReportListingUi extends Component { onSelectionChange: this.onSelectionChange, }; - const search = { - toolsRight: this.renderDeleteButton(), - }; - return ( - + + + {this.state.selectedJobs.length > 0 ? this.renderDeleteButton() : null} + ); } } From 18c3f75bfbcf95bc531b0c752c887a0e502b720a Mon Sep 17 00:00:00 2001 From: Phillip Burch Date: Wed, 8 Apr 2020 11:38:23 -0500 Subject: [PATCH 29/36] The theme doesn't exist on props when used from the alerting management screen (#62811) --- .../infra/public/components/alerting/metrics/expression.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/x-pack/plugins/infra/public/components/alerting/metrics/expression.tsx b/x-pack/plugins/infra/public/components/alerting/metrics/expression.tsx index 0903787dd05c..2e43ede2480c 100644 --- a/x-pack/plugins/infra/public/components/alerting/metrics/expression.tsx +++ b/x-pack/plugins/infra/public/components/alerting/metrics/expression.tsx @@ -320,11 +320,11 @@ interface ExpressionRowProps { const StyledExpressionRow = euiStyled(EuiFlexGroup)` display: flex; flex-wrap: wrap; - margin: 0 -${props => props.theme.eui.euiSizeXS}; + margin: 0 -4px; `; const StyledExpression = euiStyled.div` - padding: 0 ${props => props.theme.eui.euiSizeXS}; + padding: 0 4px; `; export const ExpressionRow: React.FC = props => { From 730dcbf6382acb50b0c7664ca2b86fb22d5dba7a Mon Sep 17 00:00:00 2001 From: Yuliia Naumenko Date: Wed, 8 Apr 2020 09:54:42 -0700 Subject: [PATCH 30/36] Implemented actions server API for supporting preconfigured connectors (#62382) * Implemented actions server API for supporting preconfigured connectors defined in kibana.yaml * Fixed type check * Fixed due to comments and extended functional tests * Fixed tests and renamed connectors * fixed jest tests * Fixed type checks * Fixed failing alert save * Fixed alert client tests * fixed type checks * Fixed language check error * Fixed jest tests * Added missing comments and docs * fixed due to comments * Fixed json config for preconfigured * fixed type check, reverted config * config experiment with json stringify * revert experiment * Removed the spaces from connector names in config --- .../__snapshots__/step1.test.tsx.snap | 1 + .../alerts/configuration/configuration.tsx | 2 +- .../alerts/configuration/step1.test.tsx | 2 + .../public/containers/case/configure/api.ts | 4 +- .../case/configure/use_connectors.tsx | 2 +- .../configure_cases/__mock__/index.tsx | 2 + .../routes/__mocks__/request_responses.ts | 2 + .../scripts/get_action_instances.sh | 2 +- x-pack/plugins/actions/README.md | 11 +- x-pack/plugins/actions/common/types.ts | 1 + .../actions/server/actions_client.mock.ts | 2 +- .../actions/server/actions_client.test.ts | 94 ++++++-- .../plugins/actions/server/actions_client.ts | 116 +++++---- x-pack/plugins/actions/server/config.test.ts | 38 +++ x-pack/plugins/actions/server/config.ts | 12 + x-pack/plugins/actions/server/index.ts | 8 +- ...configured_action_disabled_modification.ts | 24 ++ x-pack/plugins/actions/server/mocks.ts | 1 + x-pack/plugins/actions/server/plugin.test.ts | 33 ++- x-pack/plugins/actions/server/plugin.ts | 30 ++- .../plugins/actions/server/routes/delete.ts | 13 +- .../actions/server/routes/find.test.ts | 152 ------------ x-pack/plugins/actions/server/routes/find.ts | 95 -------- .../actions/server/routes/get_all.test.ts | 117 +++++++++ .../plugins/actions/server/routes/get_all.ts | 42 ++++ x-pack/plugins/actions/server/routes/index.ts | 2 +- x-pack/plugins/actions/server/types.ts | 5 + .../alerting/server/alerts_client.test.ts | 1 + .../plugins/alerting/server/alerts_client.ts | 52 +++- .../server/alerts_client_factory.test.ts | 2 + .../alerting/server/alerts_client_factory.ts | 5 + x-pack/plugins/alerting/server/plugin.ts | 1 + .../case/common/api/cases/configure.ts | 7 - .../api/cases/configure/get_connectors.ts | 10 +- .../builtin_action_types/email.test.tsx | 4 + .../builtin_action_types/webhook.test.tsx | 2 + .../lib/action_connector_api.test.ts | 25 +- .../application/lib/action_connector_api.ts | 24 +- .../action_form.test.tsx | 15 ++ .../action_connector_form/action_form.tsx | 2 +- .../connector_edit_flyout.test.tsx | 1 + .../connector_reducer.test.ts | 1 + .../actions_connectors_list.test.tsx | 125 ++++------ .../components/actions_connectors_list.tsx | 2 +- .../components/alerts_list.test.tsx | 28 +-- .../triggers_actions_ui/public/types.ts | 1 + .../alerting_api_integration/common/config.ts | 24 ++ .../actions/builtin_action_types/email.ts | 2 + .../actions/builtin_action_types/es_index.ts | 4 + .../actions/builtin_action_types/pagerduty.ts | 2 + .../builtin_action_types/server_log.ts | 2 + .../builtin_action_types/servicenow.ts | 2 + .../actions/builtin_action_types/slack.ts | 2 + .../actions/builtin_action_types/webhook.ts | 2 + .../tests/actions/create.ts | 1 + .../tests/actions/delete.ts | 30 +++ .../security_and_spaces/tests/actions/get.ts | 35 +++ .../tests/actions/{find.ts => get_all.ts} | 222 +++++++++--------- .../tests/actions/index.ts | 2 +- .../tests/actions/update.ts | 40 ++++ .../actions/builtin_action_types/es_index.ts | 4 + .../spaces_only/tests/actions/create.ts | 1 + .../spaces_only/tests/actions/delete.ts | 11 + .../spaces_only/tests/actions/find.ts | 92 -------- .../spaces_only/tests/actions/get.ts | 13 + .../spaces_only/tests/actions/get_all.ts | 116 +++++++++ .../spaces_only/tests/actions/index.ts | 2 +- .../tests/actions/type_not_enabled.ts | 2 + .../spaces_only/tests/actions/update.ts | 21 ++ 69 files changed, 1051 insertions(+), 702 deletions(-) create mode 100644 x-pack/plugins/actions/server/lib/errors/preconfigured_action_disabled_modification.ts delete mode 100644 x-pack/plugins/actions/server/routes/find.test.ts delete mode 100644 x-pack/plugins/actions/server/routes/find.ts create mode 100644 x-pack/plugins/actions/server/routes/get_all.test.ts create mode 100644 x-pack/plugins/actions/server/routes/get_all.ts rename x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/{find.ts => get_all.ts} (57%) delete mode 100644 x-pack/test/alerting_api_integration/spaces_only/tests/actions/find.ts create mode 100644 x-pack/test/alerting_api_integration/spaces_only/tests/actions/get_all.ts diff --git a/x-pack/legacy/plugins/monitoring/public/components/alerts/configuration/__snapshots__/step1.test.tsx.snap b/x-pack/legacy/plugins/monitoring/public/components/alerts/configuration/__snapshots__/step1.test.tsx.snap index 94d951a94fe2..cb1081c0c14d 100644 --- a/x-pack/legacy/plugins/monitoring/public/components/alerts/configuration/__snapshots__/step1.test.tsx.snap +++ b/x-pack/legacy/plugins/monitoring/public/components/alerts/configuration/__snapshots__/step1.test.tsx.snap @@ -25,6 +25,7 @@ exports[`Step1 editing should allow for editing 1`] = ` "actionTypeId": "1abc", "config": Object {}, "id": "1", + "isPreconfigured": false, "name": "Testing", } } diff --git a/x-pack/legacy/plugins/monitoring/public/components/alerts/configuration/configuration.tsx b/x-pack/legacy/plugins/monitoring/public/components/alerts/configuration/configuration.tsx index 0933cd22db7c..eaa474ba177b 100644 --- a/x-pack/legacy/plugins/monitoring/public/components/alerts/configuration/configuration.tsx +++ b/x-pack/legacy/plugins/monitoring/public/components/alerts/configuration/configuration.tsx @@ -61,7 +61,7 @@ export const AlertsConfiguration: React.FC = ( async function fetchEmailActions() { const kibanaActions = await kfetch({ method: 'GET', - pathname: `/api/action/_find`, + pathname: `/api/action/_getAll`, }); const actions = kibanaActions.data.filter( diff --git a/x-pack/legacy/plugins/monitoring/public/components/alerts/configuration/step1.test.tsx b/x-pack/legacy/plugins/monitoring/public/components/alerts/configuration/step1.test.tsx index 650294c29e9a..19a1a61d00a4 100644 --- a/x-pack/legacy/plugins/monitoring/public/components/alerts/configuration/step1.test.tsx +++ b/x-pack/legacy/plugins/monitoring/public/components/alerts/configuration/step1.test.tsx @@ -27,6 +27,7 @@ describe('Step1', () => { actionTypeId: '1abc', name: 'Testing', config: {}, + isPreconfigured: false, }, ]; const selectedEmailActionId = emailActions[0].id; @@ -83,6 +84,7 @@ describe('Step1', () => { actionTypeId: '.email', name: '', config: {}, + isPreconfigured: false, }, ], selectedEmailActionId: NEW_ACTION_ID, diff --git a/x-pack/legacy/plugins/siem/public/containers/case/configure/api.ts b/x-pack/legacy/plugins/siem/public/containers/case/configure/api.ts index ed47cdc62a1b..c24081c777a9 100644 --- a/x-pack/legacy/plugins/siem/public/containers/case/configure/api.ts +++ b/x-pack/legacy/plugins/siem/public/containers/case/configure/api.ts @@ -6,7 +6,7 @@ import { isEmpty } from 'lodash/fp'; import { - CasesConnectorsFindResult, + Connector, CasesConfigurePatch, CasesConfigureResponse, CasesConfigureRequest, @@ -18,7 +18,7 @@ import { ApiProps } from '../types'; import { convertToCamelCase, decodeCaseConfigureResponse } from '../utils'; import { CaseConfigure } from './types'; -export const fetchConnectors = async ({ signal }: ApiProps): Promise => { +export const fetchConnectors = async ({ signal }: ApiProps): Promise => { const response = await KibanaServices.get().http.fetch( `${CASES_CONFIGURE_URL}/connectors/_find`, { diff --git a/x-pack/legacy/plugins/siem/public/containers/case/configure/use_connectors.tsx b/x-pack/legacy/plugins/siem/public/containers/case/configure/use_connectors.tsx index d31dcdbee2a1..30108ecf3387 100644 --- a/x-pack/legacy/plugins/siem/public/containers/case/configure/use_connectors.tsx +++ b/x-pack/legacy/plugins/siem/public/containers/case/configure/use_connectors.tsx @@ -31,7 +31,7 @@ export const useConnectors = (): ReturnConnectors => { const res = await fetchConnectors({ signal: abortCtrl.signal }); if (!didCancel) { setLoading(false); - setConnectors(res.data); + setConnectors(res); } } catch (error) { if (!didCancel) { diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/__mock__/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/__mock__/index.tsx index a3df3664398a..135f0f2a7e26 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/__mock__/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/__mock__/index.tsx @@ -21,6 +21,7 @@ export const connectors: Connector[] = [ id: '123', actionTypeId: '.servicenow', name: 'My Connector', + isPreconfigured: false, config: { apiUrl: 'https://instance1.service-now.com', casesConfiguration: { @@ -48,6 +49,7 @@ export const connectors: Connector[] = [ id: '456', actionTypeId: '.servicenow', name: 'My Connector 2', + isPreconfigured: false, config: { apiUrl: 'https://instance2.service-now.com', casesConfiguration: { diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request_responses.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request_responses.ts index 77c1641d073c..e400360a5a5b 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request_responses.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request_responses.ts @@ -383,6 +383,7 @@ export const createActionResult = (): ActionResult => ({ actionTypeId: 'action-id-1', name: '', config: {}, + isPreconfigured: false, }); export const nonRuleAlert = () => ({ @@ -518,6 +519,7 @@ export const updateActionResult = (): ActionResult => ({ actionTypeId: 'action-id-1', name: '', config: {}, + isPreconfigured: false, }); export const getMockPrivilegesResult = () => ({ diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/get_action_instances.sh b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/get_action_instances.sh index 7804439ce073..750c5574f4a7 100755 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/get_action_instances.sh +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/scripts/get_action_instances.sh @@ -13,5 +13,5 @@ set -e # https://github.com/elastic/kibana/blob/master/x-pack/legacy/plugins/actions/README.md#get-apiaction_find-find-actions curl -s -k \ -u ${ELASTICSEARCH_USERNAME}:${ELASTICSEARCH_PASSWORD} \ - -X GET ${KIBANA_URL}${SPACE_URL}/api/action/_find \ + -X GET ${KIBANA_URL}${SPACE_URL}/api/action/_getAll \ | jq . diff --git a/x-pack/plugins/actions/README.md b/x-pack/plugins/actions/README.md index d217d26e8483..82cc09f5e9ec 100644 --- a/x-pack/plugins/actions/README.md +++ b/x-pack/plugins/actions/README.md @@ -28,7 +28,7 @@ Table of Contents - [RESTful API](#restful-api) - [`POST /api/action`: Create action](#post-apiaction-create-action) - [`DELETE /api/action/{id}`: Delete action](#delete-apiactionid-delete-action) - - [`GET /api/action/_find`: Find actions](#get-apiactionfind-find-actions) + - [`GET /api/action/_getAll`: Get all actions](#get-apiaction-get-all-actions) - [`GET /api/action/{id}`: Get action](#get-apiactionid-get-action) - [`GET /api/action/types`: List action types](#get-apiactiontypes-list-action-types) - [`PUT /api/action/{id}`: Update action](#put-apiactionid-update-action) @@ -92,6 +92,7 @@ Built-In-Actions are configured using the _xpack.actions_ namespoace under _kiba | _xpack.actions._**enabled** | Feature toggle which enabled Actions in Kibana. | boolean | | _xpack.actions._**whitelistedHosts** | Which _hostnames_ are whitelisted for the Built-In-Action? This list should contain hostnames of every external service you wish to interact with using Webhooks, Email or any other built in Action. Note that you may use the string "\*" in place of a specific hostname to enable Kibana to target any URL, but keep in mind the potential use of such a feature to execute [SSRF](https://www.owasp.org/index.php/Server_Side_Request_Forgery) attacks from your server. | Array | | _xpack.actions._**enabledActionTypes** | A list of _actionTypes_ id's that are enabled. A "\*" may be used as an element to indicate all registered actionTypes should be enabled. The actionTypes registered for Kibana are `.server-log`, `.slack`, `.email`, `.index`, `.pagerduty`, `.webhook`. Default: `["*"]` | Array | +| _xpack.actions._**preconfigured** | A list of preconfigured actions. Default: `[]` | Array | #### Whitelisting Built-in Action Types @@ -174,11 +175,13 @@ Params: | -------- | --------------------------------------------- | ------ | | id | The id of the action you're trying to delete. | string | -### `GET /api/action/_find`: Find actions +### `GET /api/action/_getAll`: Get all actions -Params: +No parameters. -See the [saved objects API documentation for find](https://www.elastic.co/guide/en/kibana/master/saved-objects-api-find.html). All the properties are the same except that you cannot pass in `type`. +Return all actions from saved objects merged with predefined list. +Use the [saved objects API for find](https://www.elastic.co/guide/en/kibana/master/saved-objects-api-find.html) with the proprties: `type: 'action'` and `perPage: 10000`. +List of predefined actions should be set up in Kibana.yaml. ### `GET /api/action/{id}`: Get action diff --git a/x-pack/plugins/actions/common/types.ts b/x-pack/plugins/actions/common/types.ts index f3042a701211..61b338d47b9f 100644 --- a/x-pack/plugins/actions/common/types.ts +++ b/x-pack/plugins/actions/common/types.ts @@ -20,4 +20,5 @@ export interface ActionResult { actionTypeId: string; name: string; config: Record; + isPreconfigured: boolean; } diff --git a/x-pack/plugins/actions/server/actions_client.mock.ts b/x-pack/plugins/actions/server/actions_client.mock.ts index 8a39d68f40bb..431bfb1e99c3 100644 --- a/x-pack/plugins/actions/server/actions_client.mock.ts +++ b/x-pack/plugins/actions/server/actions_client.mock.ts @@ -12,9 +12,9 @@ const createActionsClientMock = () => { const mocked: jest.Mocked = { create: jest.fn(), get: jest.fn(), - find: jest.fn(), delete: jest.fn(), update: jest.fn(), + getAll: jest.fn(), }; return mocked; }; diff --git a/x-pack/plugins/actions/server/actions_client.test.ts b/x-pack/plugins/actions/server/actions_client.test.ts index 0df07ad58fb9..955e1569380a 100644 --- a/x-pack/plugins/actions/server/actions_client.test.ts +++ b/x-pack/plugins/actions/server/actions_client.test.ts @@ -51,6 +51,7 @@ beforeEach(() => { savedObjectsClient, scopedClusterClient, defaultKibanaIndex, + preconfiguredActions: [], }); }); @@ -83,6 +84,7 @@ describe('create()', () => { }); expect(result).toEqual({ id: '1', + isPreconfigured: false, name: 'my name', actionTypeId: 'my-action-type', config: {}, @@ -178,6 +180,7 @@ describe('create()', () => { }); expect(result).toEqual({ id: '1', + isPreconfigured: false, name: 'my name', actionTypeId: 'my-action-type', config: { @@ -226,6 +229,7 @@ describe('create()', () => { savedObjectsClient, scopedClusterClient, defaultKibanaIndex, + preconfiguredActions: [], }); const savedObjectCreateResult = { @@ -305,6 +309,7 @@ describe('get()', () => { const result = await actionsClient.get({ id: '1' }); expect(result).toEqual({ id: '1', + isPreconfigured: false, }); expect(savedObjectsClient.get).toHaveBeenCalledTimes(1); expect(savedObjectsClient.get.mock.calls[0]).toMatchInlineSnapshot(` @@ -314,9 +319,44 @@ describe('get()', () => { ] `); }); + + test('return predefined action with id', async () => { + actionsClient = new ActionsClient({ + actionTypeRegistry, + savedObjectsClient, + scopedClusterClient, + defaultKibanaIndex, + preconfiguredActions: [ + { + id: 'testPreconfigured', + actionTypeId: '.slack', + secrets: { + test: 'test1', + }, + isPreconfigured: true, + name: 'test', + config: { + foo: 'bar', + }, + }, + ], + }); + + const result = await actionsClient.get({ id: 'testPreconfigured' }); + expect(result).toEqual({ + id: 'testPreconfigured', + actionTypeId: '.slack', + isPreconfigured: true, + name: 'test', + config: { + foo: 'bar', + }, + }); + expect(savedObjectsClient.get).not.toHaveBeenCalled(); + }); }); -describe('find()', () => { +describe('getAll()', () => { test('calls savedObjectsClient with parameters', async () => { const expectedResult = { total: 1, @@ -327,6 +367,7 @@ describe('find()', () => { id: '1', type: 'type', attributes: { + name: 'test', config: { foo: 'bar', }, @@ -339,31 +380,50 @@ describe('find()', () => { scopedClusterClient.callAsInternalUser.mockResolvedValueOnce({ aggregations: { '1': { doc_count: 6 }, + testPreconfigured: { doc_count: 2 }, }, }); - const result = await actionsClient.find({}); - expect(result).toEqual({ - total: 1, - perPage: 10, - page: 1, - data: [ + + actionsClient = new ActionsClient({ + actionTypeRegistry, + savedObjectsClient, + scopedClusterClient, + defaultKibanaIndex, + preconfiguredActions: [ { - id: '1', + id: 'testPreconfigured', + actionTypeId: '.slack', + secrets: {}, + isPreconfigured: true, + name: 'test', config: { foo: 'bar', }, - referencedByCount: 6, }, ], }); - expect(savedObjectsClient.find).toHaveBeenCalledTimes(1); - expect(savedObjectsClient.find.mock.calls[0]).toMatchInlineSnapshot(` - Array [ - Object { - "type": "action", + const result = await actionsClient.getAll(); + expect(result).toEqual([ + { + id: '1', + isPreconfigured: false, + name: 'test', + config: { + foo: 'bar', }, - ] - `); + referencedByCount: 6, + }, + { + id: 'testPreconfigured', + actionTypeId: '.slack', + isPreconfigured: true, + name: 'test', + config: { + foo: 'bar', + }, + referencedByCount: 2, + }, + ]); }); }); @@ -420,6 +480,7 @@ describe('update()', () => { }); expect(result).toEqual({ id: 'my-action', + isPreconfigured: false, actionTypeId: 'my-action-type', name: 'my name', config: {}, @@ -524,6 +585,7 @@ describe('update()', () => { }); expect(result).toEqual({ id: 'my-action', + isPreconfigured: false, actionTypeId: 'my-action-type', name: 'my name', config: { diff --git a/x-pack/plugins/actions/server/actions_client.ts b/x-pack/plugins/actions/server/actions_client.ts index 129829850f9c..8f73bfb31ea4 100644 --- a/x-pack/plugins/actions/server/actions_client.ts +++ b/x-pack/plugins/actions/server/actions_client.ts @@ -11,9 +11,16 @@ import { SavedObject, } from 'src/core/server'; +import { i18n } from '@kbn/i18n'; import { ActionTypeRegistry } from './action_type_registry'; import { validateConfig, validateSecrets } from './lib'; -import { ActionResult, FindActionResult, RawAction } from './types'; +import { ActionResult, FindActionResult, RawAction, PreConfiguredAction } from './types'; +import { PreconfiguredActionDisabledModificationError } from './lib/errors/preconfigured_action_disabled_modification'; + +// We are assuming there won't be many actions. This is why we will load +// all the actions in advance and assume the total count to not go over 10000. +// We'll set this max setting assuming it's never reached. +export const MAX_ACTIONS_RETURNED = 10000; interface ActionUpdate extends SavedObjectAttributes { name: string; @@ -29,35 +36,12 @@ interface CreateOptions { action: Action; } -interface FindOptions { - options?: { - perPage?: number; - page?: number; - search?: string; - defaultSearchOperator?: 'AND' | 'OR'; - searchFields?: string[]; - sortField?: string; - hasReference?: { - type: string; - id: string; - }; - fields?: string[]; - filter?: string; - }; -} - -interface FindResult { - page: number; - perPage: number; - total: number; - data: FindActionResult[]; -} - interface ConstructorOptions { defaultKibanaIndex: string; scopedClusterClient: IScopedClusterClient; actionTypeRegistry: ActionTypeRegistry; savedObjectsClient: SavedObjectsClientContract; + preconfiguredActions: PreConfiguredAction[]; } interface UpdateOptions { @@ -70,17 +54,20 @@ export class ActionsClient { private readonly scopedClusterClient: IScopedClusterClient; private readonly savedObjectsClient: SavedObjectsClientContract; private readonly actionTypeRegistry: ActionTypeRegistry; + private readonly preconfiguredActions: PreConfiguredAction[]; constructor({ actionTypeRegistry, defaultKibanaIndex, scopedClusterClient, savedObjectsClient, + preconfiguredActions, }: ConstructorOptions) { this.actionTypeRegistry = actionTypeRegistry; this.savedObjectsClient = savedObjectsClient; this.scopedClusterClient = scopedClusterClient; this.defaultKibanaIndex = defaultKibanaIndex; + this.preconfiguredActions = preconfiguredActions; } /** @@ -106,6 +93,7 @@ export class ActionsClient { actionTypeId: result.attributes.actionTypeId, name: result.attributes.name, config: result.attributes.config, + isPreconfigured: false, }; } @@ -113,6 +101,20 @@ export class ActionsClient { * Update action */ public async update({ id, action }: UpdateOptions): Promise { + if ( + this.preconfiguredActions.find(preconfiguredAction => preconfiguredAction.id === id) !== + undefined + ) { + throw new PreconfiguredActionDisabledModificationError( + i18n.translate('xpack.actions.serverSideErrors.predefinedActionUpdateDisabled', { + defaultMessage: 'Preconfigured action {id} is not allowed to update.', + values: { + id, + }, + }), + 'update' + ); + } const existingObject = await this.savedObjectsClient.get('action', id); const { actionTypeId } = existingObject.attributes; const { name, config, secrets } = action; @@ -134,6 +136,7 @@ export class ActionsClient { actionTypeId: result.attributes.actionTypeId as string, name: result.attributes.name as string, config: result.attributes.config as Record, + isPreconfigured: false, }; } @@ -141,6 +144,18 @@ export class ActionsClient { * Get an action */ public async get({ id }: { id: string }): Promise { + const preconfiguredActionsList = this.preconfiguredActions.find( + preconfiguredAction => preconfiguredAction.id === id + ); + if (preconfiguredActionsList !== undefined) { + return { + id, + actionTypeId: preconfiguredActionsList.actionTypeId, + name: preconfiguredActionsList.name, + config: preconfiguredActionsList.config, + isPreconfigured: true, + }; + } const result = await this.savedObjectsClient.get('action', id); return { @@ -148,36 +163,56 @@ export class ActionsClient { actionTypeId: result.attributes.actionTypeId, name: result.attributes.name, config: result.attributes.config, + isPreconfigured: false, }; } /** - * Find actions + * Get all actions with preconfigured list */ - public async find({ options = {} }: FindOptions): Promise { - const findResult = await this.savedObjectsClient.find({ - ...options, - type: 'action', - }); + public async getAll(): Promise { + const savedObjectsActions = ( + await this.savedObjectsClient.find({ + perPage: MAX_ACTIONS_RETURNED, + type: 'action', + }) + ).saved_objects.map(actionFromSavedObject); - const data = await injectExtraFindData( + const mergedResult = [ + ...savedObjectsActions, + ...this.preconfiguredActions.map(preconfiguredAction => ({ + id: preconfiguredAction.id, + actionTypeId: preconfiguredAction.actionTypeId, + name: preconfiguredAction.name, + config: preconfiguredAction.config, + isPreconfigured: true, + })), + ].sort((a, b) => a.name.localeCompare(b.name)); + return await injectExtraFindData( this.defaultKibanaIndex, this.scopedClusterClient, - findResult.saved_objects.map(actionFromSavedObject) + mergedResult ); - - return { - page: findResult.page, - perPage: findResult.per_page, - total: findResult.total, - data, - }; } /** * Delete action */ public async delete({ id }: { id: string }) { + if ( + this.preconfiguredActions.find(preconfiguredAction => preconfiguredAction.id === id) !== + undefined + ) { + throw new PreconfiguredActionDisabledModificationError( + i18n.translate('xpack.actions.serverSideErrors.predefinedActionDeleteDisabled', { + defaultMessage: 'Preconfigured action {id} is not allowed to delete.', + values: { + id, + }, + }), + 'delete' + ); + } return await this.savedObjectsClient.delete('action', id); } } @@ -186,6 +221,7 @@ function actionFromSavedObject(savedObject: SavedObject): ActionResul return { id: savedObject.id, ...savedObject.attributes, + isPreconfigured: false, }; } diff --git a/x-pack/plugins/actions/server/config.test.ts b/x-pack/plugins/actions/server/config.test.ts index 67b7553c4a73..51e87dbd75b4 100644 --- a/x-pack/plugins/actions/server/config.test.ts +++ b/x-pack/plugins/actions/server/config.test.ts @@ -14,6 +14,44 @@ describe('config validation', () => { "enabledActionTypes": Array [ "*", ], + "preconfigured": Array [], + "whitelistedHosts": Array [ + "*", + ], + } + `); + }); + + test('action with preconfigured actions', () => { + const config: Record = { + preconfigured: [ + { + id: 'my-slack1', + actionTypeId: '.slack', + name: 'Slack #xyz', + config: { + webhookUrl: 'https://hooks.slack.com/services/abcd/efgh/ijklmnopqrstuvwxyz', + }, + }, + ], + }; + expect(configSchema.validate(config)).toMatchInlineSnapshot(` + Object { + "enabled": true, + "enabledActionTypes": Array [ + "*", + ], + "preconfigured": Array [ + Object { + "actionTypeId": ".slack", + "config": Object { + "webhookUrl": "https://hooks.slack.com/services/abcd/efgh/ijklmnopqrstuvwxyz", + }, + "id": "my-slack1", + "name": "Slack #xyz", + "secrets": Object {}, + }, + ], "whitelistedHosts": Array [ "*", ], diff --git a/x-pack/plugins/actions/server/config.ts b/x-pack/plugins/actions/server/config.ts index 9e4795be6c20..1f04efd1941b 100644 --- a/x-pack/plugins/actions/server/config.ts +++ b/x-pack/plugins/actions/server/config.ts @@ -21,6 +21,18 @@ export const configSchema = schema.object({ defaultValue: [WhitelistedHosts.Any], } ), + preconfigured: schema.arrayOf( + schema.object({ + id: schema.string({ minLength: 1 }), + name: schema.string(), + actionTypeId: schema.string({ minLength: 1 }), + config: schema.recordOf(schema.string(), schema.any(), { defaultValue: {} }), + secrets: schema.recordOf(schema.string(), schema.any(), { defaultValue: {} }), + }), + { + defaultValue: [], + } + ), }); export type ActionsConfig = TypeOf; diff --git a/x-pack/plugins/actions/server/index.ts b/x-pack/plugins/actions/server/index.ts index eee2ae352fe3..88553c314112 100644 --- a/x-pack/plugins/actions/server/index.ts +++ b/x-pack/plugins/actions/server/index.ts @@ -11,7 +11,13 @@ import { ActionsClient as ActionsClientClass } from './actions_client'; export type ActionsClient = PublicMethodsOf; -export { ActionsPlugin, ActionResult, ActionTypeExecutorOptions, ActionType } from './types'; +export { + ActionsPlugin, + ActionResult, + ActionTypeExecutorOptions, + ActionType, + PreConfiguredAction, +} from './types'; export { PluginSetupContract, PluginStartContract } from './plugin'; export const plugin = (initContext: PluginInitializerContext) => new ActionsPlugin(initContext); diff --git a/x-pack/plugins/actions/server/lib/errors/preconfigured_action_disabled_modification.ts b/x-pack/plugins/actions/server/lib/errors/preconfigured_action_disabled_modification.ts new file mode 100644 index 000000000000..884353e132b9 --- /dev/null +++ b/x-pack/plugins/actions/server/lib/errors/preconfigured_action_disabled_modification.ts @@ -0,0 +1,24 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { KibanaResponseFactory } from '../../../../../../src/core/server'; +import { ErrorThatHandlesItsOwnResponse } from './types'; + +export type PreconfiguredActionDisabledFrom = 'update' | 'delete'; + +export class PreconfiguredActionDisabledModificationError extends Error + implements ErrorThatHandlesItsOwnResponse { + public readonly disabledFrom: PreconfiguredActionDisabledFrom; + + constructor(message: string, disabledFrom: PreconfiguredActionDisabledFrom) { + super(message); + this.disabledFrom = disabledFrom; + } + + public sendResponse(res: KibanaResponseFactory) { + return res.badRequest({ body: { message: this.message } }); + } +} diff --git a/x-pack/plugins/actions/server/mocks.ts b/x-pack/plugins/actions/server/mocks.ts index 75396f2aad89..bc4268bb6987 100644 --- a/x-pack/plugins/actions/server/mocks.ts +++ b/x-pack/plugins/actions/server/mocks.ts @@ -21,6 +21,7 @@ const createStartMock = () => { execute: jest.fn(), isActionTypeEnabled: jest.fn(), getActionsClientWithRequest: jest.fn().mockResolvedValue(actionsClientMock.create()), + preconfiguredActions: [], }; return mock; }; diff --git a/x-pack/plugins/actions/server/plugin.test.ts b/x-pack/plugins/actions/server/plugin.test.ts index 383f84590fbc..6215b08df81d 100644 --- a/x-pack/plugins/actions/server/plugin.test.ts +++ b/x-pack/plugins/actions/server/plugin.test.ts @@ -31,7 +31,34 @@ describe('Actions Plugin', () => { let pluginsSetup: jest.Mocked; beforeEach(() => { - context = coreMock.createPluginInitializerContext(); + context = coreMock.createPluginInitializerContext({ + preconfigured: [ + { + id: 'my-slack1', + actionTypeId: '.slack', + name: 'Slack #xyz', + description: 'Send a message to the #xyz channel', + config: { + webhookUrl: 'https://hooks.slack.com/services/abcd/efgh/ijklmnopqrstuvwxyz', + }, + }, + { + id: 'custom-system-abc-connector', + actionTypeId: 'system-abc-action-type', + description: 'Send a notification to system ABC', + name: 'System ABC', + config: { + xyzConfig1: 'value1', + xyzConfig2: 'value2', + listOfThings: ['a', 'b', 'c', 'd'], + }, + secrets: { + xyzSecret1: 'credential1', + xyzSecret2: 'credential2', + }, + }, + ], + }); plugin = new ActionsPlugin(context); coreSetup = coreMock.createSetup(); @@ -160,7 +187,9 @@ describe('Actions Plugin', () => { let pluginsStart: jest.Mocked; beforeEach(() => { - const context = coreMock.createPluginInitializerContext(); + const context = coreMock.createPluginInitializerContext({ + preconfigured: [], + }); plugin = new ActionsPlugin(context); coreSetup = coreMock.createSetup(); coreStart = coreMock.createStart(); diff --git a/x-pack/plugins/actions/server/plugin.ts b/x-pack/plugins/actions/server/plugin.ts index ce31e62bc9b8..34c9e7aa9e8b 100644 --- a/x-pack/plugins/actions/server/plugin.ts +++ b/x-pack/plugins/actions/server/plugin.ts @@ -30,7 +30,7 @@ import { LICENSE_TYPE } from '../../licensing/common/types'; import { SpacesPluginSetup, SpacesServiceSetup } from '../../spaces/server'; import { ActionsConfig } from './config'; -import { Services, ActionType } from './types'; +import { Services, ActionType, PreConfiguredAction } from './types'; import { ActionExecutor, TaskRunnerFactory, LicenseState, ILicenseState } from './lib'; import { ActionsClient } from './actions_client'; import { ActionTypeRegistry } from './action_type_registry'; @@ -44,7 +44,7 @@ import { getActionsConfigurationUtilities } from './actions_config'; import { createActionRoute, deleteActionRoute, - findActionRoute, + getAllActionRoute, getActionRoute, updateActionRoute, listActionTypesRoute, @@ -67,6 +67,7 @@ export interface PluginStartContract { isActionTypeEnabled(id: string): boolean; execute(options: ExecuteOptions): Promise; getActionsClientWithRequest(request: KibanaRequest): Promise>; + preconfiguredActions: PreConfiguredAction[]; } export interface ActionsPluginsSetup { @@ -97,6 +98,7 @@ export class ActionsPlugin implements Plugin, Plugi private eventLogger?: IEventLogger; private isESOUsingEphemeralEncryptionKey?: boolean; private readonly telemetryLogger: Logger; + private readonly preconfiguredActions: PreConfiguredAction[]; constructor(initContext: PluginInitializerContext) { this.config = initContext.config @@ -113,6 +115,7 @@ export class ActionsPlugin implements Plugin, Plugi this.logger = initContext.logger.get('actions'); this.telemetryLogger = initContext.logger.get('telemetry'); + this.preconfiguredActions = []; } public async setup(core: CoreSetup, plugins: ActionsPluginsSetup): Promise { @@ -151,8 +154,14 @@ export class ActionsPlugin implements Plugin, Plugi // get executions count const taskRunnerFactory = new TaskRunnerFactory(actionExecutor); - const actionsConfigUtils = getActionsConfigurationUtilities( - (await this.config) as ActionsConfig + const actionsConfig = (await this.config) as ActionsConfig; + const actionsConfigUtils = getActionsConfigurationUtilities(actionsConfig); + + this.preconfiguredActions.push( + ...actionsConfig.preconfigured.map( + preconfiguredAction => + ({ ...preconfiguredAction, isPreconfigured: true } as PreConfiguredAction) + ) ); const actionTypeRegistry = new ActionTypeRegistry({ taskRunnerFactory, @@ -197,7 +206,7 @@ export class ActionsPlugin implements Plugin, Plugi createActionRoute(router, this.licenseState); deleteActionRoute(router, this.licenseState); getActionRoute(router, this.licenseState); - findActionRoute(router, this.licenseState); + getAllActionRoute(router, this.licenseState); updateActionRoute(router, this.licenseState); listActionTypesRoute(router, this.licenseState); executeActionRoute(router, this.licenseState, actionExecutor); @@ -226,6 +235,7 @@ export class ActionsPlugin implements Plugin, Plugi kibanaIndex, adminClient, isESOUsingEphemeralEncryptionKey, + preconfiguredActions, } = this; actionExecutor!.initialize({ @@ -271,8 +281,10 @@ export class ActionsPlugin implements Plugin, Plugi actionTypeRegistry: actionTypeRegistry!, defaultKibanaIndex: await kibanaIndex, scopedClusterClient: adminClient!.asScoped(request), + preconfiguredActions, }); }, + preconfiguredActions, }; } @@ -289,7 +301,12 @@ export class ActionsPlugin implements Plugin, Plugi private createRouteHandlerContext = ( defaultKibanaIndex: string ): IContextProvider, 'actions'> => { - const { actionTypeRegistry, adminClient, isESOUsingEphemeralEncryptionKey } = this; + const { + actionTypeRegistry, + adminClient, + isESOUsingEphemeralEncryptionKey, + preconfiguredActions, + } = this; return async function actionsRouteHandlerContext(context, request) { return { getActionsClient: () => { @@ -303,6 +320,7 @@ export class ActionsPlugin implements Plugin, Plugi actionTypeRegistry: actionTypeRegistry!, defaultKibanaIndex, scopedClusterClient: adminClient!.asScoped(request), + preconfiguredActions, }); }, listTypes: actionTypeRegistry!.list.bind(actionTypeRegistry!), diff --git a/x-pack/plugins/actions/server/routes/delete.ts b/x-pack/plugins/actions/server/routes/delete.ts index cddebb3a8e31..ffd1f0faabba 100644 --- a/x-pack/plugins/actions/server/routes/delete.ts +++ b/x-pack/plugins/actions/server/routes/delete.ts @@ -17,7 +17,7 @@ import { IKibanaResponse, KibanaResponseFactory, } from 'kibana/server'; -import { ILicenseState, verifyApiAccess } from '../lib'; +import { ILicenseState, verifyApiAccess, isErrorThatHandlesItsOwnResponse } from '../lib'; import { BASE_ACTION_API_PATH } from '../../common'; const paramSchema = schema.object({ @@ -46,8 +46,15 @@ export const deleteActionRoute = (router: IRouter, licenseState: ILicenseState) } const actionsClient = context.actions.getActionsClient(); const { id } = req.params; - await actionsClient.delete({ id }); - return res.noContent(); + try { + await actionsClient.delete({ id }); + return res.noContent(); + } catch (e) { + if (isErrorThatHandlesItsOwnResponse(e)) { + return e.sendResponse(res); + } + throw e; + } }) ); }; diff --git a/x-pack/plugins/actions/server/routes/find.test.ts b/x-pack/plugins/actions/server/routes/find.test.ts deleted file mode 100644 index 1b130421fa71..000000000000 --- a/x-pack/plugins/actions/server/routes/find.test.ts +++ /dev/null @@ -1,152 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - -import { findActionRoute } from './find'; -import { mockRouter, RouterMock } from '../../../../../src/core/server/http/router/router.mock'; -import { licenseStateMock } from '../lib/license_state.mock'; -import { verifyApiAccess } from '../lib'; -import { mockHandlerArguments } from './_mock_handler_arguments'; - -jest.mock('../lib/verify_api_access.ts', () => ({ - verifyApiAccess: jest.fn(), -})); - -beforeEach(() => { - jest.resetAllMocks(); -}); - -describe('findActionRoute', () => { - it('finds actions with proper parameters', async () => { - const licenseState = licenseStateMock.create(); - const router: RouterMock = mockRouter.create(); - - findActionRoute(router, licenseState); - - const [config, handler] = router.get.mock.calls[0]; - - expect(config.path).toMatchInlineSnapshot(`"/api/action/_find"`); - expect(config.options).toMatchInlineSnapshot(` - Object { - "tags": Array [ - "access:actions-read", - ], - } - `); - - const findResult = { - page: 1, - perPage: 1, - total: 0, - data: [], - }; - const actionsClient = { - find: jest.fn().mockResolvedValueOnce(findResult), - }; - - const [context, req, res] = mockHandlerArguments( - { actionsClient }, - { - query: { - per_page: 1, - page: 1, - default_search_operator: 'OR', - }, - }, - ['ok'] - ); - - expect(await handler(context, req, res)).toMatchInlineSnapshot(` - Object { - "body": Object { - "data": Array [], - "page": 1, - "perPage": 1, - "total": 0, - }, - } - `); - - expect(actionsClient.find).toHaveBeenCalledTimes(1); - expect(actionsClient.find.mock.calls[0]).toMatchInlineSnapshot(` - Array [ - Object { - "options": Object { - "defaultSearchOperator": "OR", - "fields": undefined, - "filter": undefined, - "page": 1, - "perPage": 1, - "search": undefined, - "sortField": undefined, - "sortOrder": undefined, - }, - }, - ] - `); - - expect(res.ok).toHaveBeenCalledWith({ - body: findResult, - }); - }); - - it('ensures the license allows finding actions', async () => { - const licenseState = licenseStateMock.create(); - const router: RouterMock = mockRouter.create(); - - findActionRoute(router, licenseState); - - const [, handler] = router.get.mock.calls[0]; - - const actionsClient = { - find: jest.fn().mockResolvedValueOnce({ - page: 1, - perPage: 1, - total: 0, - data: [], - }), - }; - - const [context, req, res] = mockHandlerArguments(actionsClient, { - query: { - per_page: 1, - page: 1, - default_search_operator: 'OR', - }, - }); - - await handler(context, req, res); - - expect(verifyApiAccess).toHaveBeenCalledWith(licenseState); - }); - - it('ensures the license check prevents finding actions', async () => { - const licenseState = licenseStateMock.create(); - const router: RouterMock = mockRouter.create(); - - (verifyApiAccess as jest.Mock).mockImplementation(() => { - throw new Error('OMG'); - }); - - findActionRoute(router, licenseState); - - const [, handler] = router.get.mock.calls[0]; - - const [context, req, res] = mockHandlerArguments( - {}, - { - query: { - per_page: 1, - page: 1, - default_search_operator: 'OR', - }, - }, - ['ok'] - ); - expect(handler(context, req, res)).rejects.toMatchInlineSnapshot(`[Error: OMG]`); - - expect(verifyApiAccess).toHaveBeenCalledWith(licenseState); - }); -}); diff --git a/x-pack/plugins/actions/server/routes/find.ts b/x-pack/plugins/actions/server/routes/find.ts deleted file mode 100644 index 45b967629a2a..000000000000 --- a/x-pack/plugins/actions/server/routes/find.ts +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - -import { schema, TypeOf } from '@kbn/config-schema'; -import { - IRouter, - RequestHandlerContext, - KibanaRequest, - IKibanaResponse, - KibanaResponseFactory, -} from 'kibana/server'; -import { FindOptions } from '../../../alerting/server'; -import { ILicenseState, verifyApiAccess } from '../lib'; -import { BASE_ACTION_API_PATH } from '../../common'; - -// config definition -const querySchema = schema.object({ - per_page: schema.number({ defaultValue: 20, min: 0 }), - page: schema.number({ defaultValue: 1, min: 1 }), - search: schema.maybe(schema.string()), - default_search_operator: schema.oneOf([schema.literal('OR'), schema.literal('AND')], { - defaultValue: 'OR', - }), - search_fields: schema.maybe(schema.oneOf([schema.arrayOf(schema.string()), schema.string()])), - sort_field: schema.maybe(schema.string()), - sort_order: schema.maybe(schema.oneOf([schema.literal('asc'), schema.literal('desc')])), - has_reference: schema.maybe( - // use nullable as maybe is currently broken - // in config-schema - schema.nullable( - schema.object({ - type: schema.string(), - id: schema.string(), - }) - ) - ), - fields: schema.maybe(schema.arrayOf(schema.string())), - filter: schema.maybe(schema.string()), -}); - -export const findActionRoute = (router: IRouter, licenseState: ILicenseState) => { - router.get( - { - path: `${BASE_ACTION_API_PATH}/_find`, - validate: { - query: querySchema, - }, - options: { - tags: ['access:actions-read'], - }, - }, - router.handleLegacyErrors(async function( - context: RequestHandlerContext, - req: KibanaRequest, any, any>, - res: KibanaResponseFactory - ): Promise> { - verifyApiAccess(licenseState); - if (!context.actions) { - return res.badRequest({ body: 'RouteHandlerContext is not registered for actions' }); - } - const actionsClient = context.actions.getActionsClient(); - const query = req.query; - const options: FindOptions['options'] = { - perPage: query.per_page, - page: query.page, - search: query.search, - defaultSearchOperator: query.default_search_operator, - sortField: query.sort_field, - fields: query.fields, - filter: query.filter, - sortOrder: query.sort_order, - }; - - if (query.search_fields) { - options.searchFields = Array.isArray(query.search_fields) - ? query.search_fields - : [query.search_fields]; - } - - if (query.has_reference) { - options.hasReference = query.has_reference; - } - - const findResult = await actionsClient.find({ - options, - }); - return res.ok({ - body: findResult, - }); - }) - ); -}; diff --git a/x-pack/plugins/actions/server/routes/get_all.test.ts b/x-pack/plugins/actions/server/routes/get_all.test.ts new file mode 100644 index 000000000000..6499427b8c1a --- /dev/null +++ b/x-pack/plugins/actions/server/routes/get_all.test.ts @@ -0,0 +1,117 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { getAllActionRoute } from './get_all'; +import { mockRouter, RouterMock } from '../../../../../src/core/server/http/router/router.mock'; +import { licenseStateMock } from '../lib/license_state.mock'; +import { verifyApiAccess } from '../lib'; +import { mockHandlerArguments } from './_mock_handler_arguments'; + +jest.mock('../lib/verify_api_access.ts', () => ({ + verifyApiAccess: jest.fn(), +})); + +beforeEach(() => { + jest.resetAllMocks(); +}); + +describe('getAllActionRoute', () => { + it('get all actions with proper parameters', async () => { + const licenseState = licenseStateMock.create(); + const router: RouterMock = mockRouter.create(); + + getAllActionRoute(router, licenseState); + + const [config, handler] = router.get.mock.calls[0]; + + expect(config.path).toMatchInlineSnapshot(`"/api/action/_getAll"`); + expect(config.options).toMatchInlineSnapshot(` + Object { + "tags": Array [ + "access:actions-read", + ], + } + `); + + const actionsClient = { + getAll: jest.fn().mockResolvedValueOnce([]), + }; + + const [context, req, res] = mockHandlerArguments({ actionsClient }, {}, ['ok']); + + expect(await handler(context, req, res)).toMatchInlineSnapshot(` + Object { + "body": Array [], + } + `); + + expect(actionsClient.getAll).toHaveBeenCalledTimes(1); + + expect(res.ok).toHaveBeenCalledWith({ + body: [], + }); + }); + + it('ensures the license allows getting all actions', async () => { + const licenseState = licenseStateMock.create(); + const router: RouterMock = mockRouter.create(); + + getAllActionRoute(router, licenseState); + + const [config, handler] = router.get.mock.calls[0]; + + expect(config.path).toMatchInlineSnapshot(`"/api/action/_getAll"`); + expect(config.options).toMatchInlineSnapshot(` + Object { + "tags": Array [ + "access:actions-read", + ], + } + `); + + const actionsClient = { + getAll: jest.fn().mockResolvedValueOnce([]), + }; + + const [context, req, res] = mockHandlerArguments({ actionsClient }, {}, ['ok']); + + await handler(context, req, res); + + expect(verifyApiAccess).toHaveBeenCalledWith(licenseState); + }); + + it('ensures the license check prevents getting all actions', async () => { + const licenseState = licenseStateMock.create(); + const router: RouterMock = mockRouter.create(); + + (verifyApiAccess as jest.Mock).mockImplementation(() => { + throw new Error('OMG'); + }); + + getAllActionRoute(router, licenseState); + + const [config, handler] = router.get.mock.calls[0]; + + expect(config.path).toMatchInlineSnapshot(`"/api/action/_getAll"`); + expect(config.options).toMatchInlineSnapshot(` + Object { + "tags": Array [ + "access:actions-read", + ], + } + `); + + const actionsClient = { + getAll: jest.fn().mockResolvedValueOnce([]), + }; + + const [context, req, res] = mockHandlerArguments({ actionsClient }, {}, ['ok']); + + expect(handler(context, req, res)).rejects.toMatchInlineSnapshot(`[Error: OMG]`); + + expect(verifyApiAccess).toHaveBeenCalledWith(licenseState); + }); +}); diff --git a/x-pack/plugins/actions/server/routes/get_all.ts b/x-pack/plugins/actions/server/routes/get_all.ts new file mode 100644 index 000000000000..c70a13bc01c9 --- /dev/null +++ b/x-pack/plugins/actions/server/routes/get_all.ts @@ -0,0 +1,42 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { + IRouter, + RequestHandlerContext, + KibanaRequest, + IKibanaResponse, + KibanaResponseFactory, +} from 'kibana/server'; +import { ILicenseState, verifyApiAccess } from '../lib'; +import { BASE_ACTION_API_PATH } from '../../common'; + +export const getAllActionRoute = (router: IRouter, licenseState: ILicenseState) => { + router.get( + { + path: `${BASE_ACTION_API_PATH}/_getAll`, + validate: {}, + options: { + tags: ['access:actions-read'], + }, + }, + router.handleLegacyErrors(async function( + context: RequestHandlerContext, + req: KibanaRequest, + res: KibanaResponseFactory + ): Promise> { + verifyApiAccess(licenseState); + if (!context.actions) { + return res.badRequest({ body: 'RouteHandlerContext is not registered for actions' }); + } + const actionsClient = context.actions.getActionsClient(); + const result = await actionsClient.getAll(); + return res.ok({ + body: result, + }); + }) + ); +}; diff --git a/x-pack/plugins/actions/server/routes/index.ts b/x-pack/plugins/actions/server/routes/index.ts index 33191132bece..94f9ec1c9436 100644 --- a/x-pack/plugins/actions/server/routes/index.ts +++ b/x-pack/plugins/actions/server/routes/index.ts @@ -6,7 +6,7 @@ export { createActionRoute } from './create'; export { deleteActionRoute } from './delete'; -export { findActionRoute } from './find'; +export { getAllActionRoute } from './get_all'; export { getActionRoute } from './get'; export { updateActionRoute } from './update'; export { listActionTypesRoute } from './list_action_types'; diff --git a/x-pack/plugins/actions/server/types.ts b/x-pack/plugins/actions/server/types.ts index 999e739e7706..92e38d77314f 100644 --- a/x-pack/plugins/actions/server/types.ts +++ b/x-pack/plugins/actions/server/types.ts @@ -55,6 +55,11 @@ export interface ActionResult { actionTypeId: string; name: string; config: Record; + isPreconfigured: boolean; +} + +export interface PreConfiguredAction extends ActionResult { + secrets: Record; } export interface FindActionResult extends ActionResult { diff --git a/x-pack/plugins/alerting/server/alerts_client.test.ts b/x-pack/plugins/alerting/server/alerts_client.test.ts index 0e929ff457fb..a9ff5ee8ecdc 100644 --- a/x-pack/plugins/alerting/server/alerts_client.test.ts +++ b/x-pack/plugins/alerting/server/alerts_client.test.ts @@ -30,6 +30,7 @@ const alertsClientParams = { invalidateAPIKey: jest.fn(), logger: loggingServiceMock.create().get(), encryptedSavedObjectsPlugin: encryptedSavedObjects, + preconfiguredActions: [], }; beforeEach(() => { diff --git a/x-pack/plugins/alerting/server/alerts_client.ts b/x-pack/plugins/alerting/server/alerts_client.ts index 5538b44b69fc..6f8478df58a5 100644 --- a/x-pack/plugins/alerting/server/alerts_client.ts +++ b/x-pack/plugins/alerting/server/alerts_client.ts @@ -13,6 +13,7 @@ import { SavedObjectReference, SavedObject, } from 'src/core/server'; +import { PreConfiguredAction } from '../../actions/server'; import { Alert, PartialAlert, @@ -53,6 +54,7 @@ interface ConstructorOptions { getUserName: () => Promise; createAPIKey: () => Promise; invalidateAPIKey: (params: InvalidateAPIKeyParams) => Promise; + preconfiguredActions: PreConfiguredAction[]; } export interface FindOptions { @@ -123,6 +125,7 @@ export class AlertsClient { private readonly invalidateAPIKey: ( params: InvalidateAPIKeyParams ) => Promise; + private preconfiguredActions: PreConfiguredAction[]; encryptedSavedObjectsPlugin: EncryptedSavedObjectsPluginStart; constructor({ @@ -136,6 +139,7 @@ export class AlertsClient { createAPIKey, invalidateAPIKey, encryptedSavedObjectsPlugin, + preconfiguredActions, }: ConstructorOptions) { this.logger = logger; this.getUserName = getUserName; @@ -147,6 +151,7 @@ export class AlertsClient { this.createAPIKey = createAPIKey; this.invalidateAPIKey = invalidateAPIKey; this.encryptedSavedObjectsPlugin = encryptedSavedObjectsPlugin; + this.preconfiguredActions = preconfiguredActions; } public async create({ data, options }: CreateOptions): Promise { @@ -659,18 +664,37 @@ export class AlertsClient { private async denormalizeActions( alertActions: NormalizedAlertAction[] ): Promise<{ actions: RawAlert['actions']; references: SavedObjectReference[] }> { - // Fetch action objects in bulk - const actionIds = [...new Set(alertActions.map(alertAction => alertAction.id))]; - const bulkGetOpts = actionIds.map(id => ({ id, type: 'action' })); - const bulkGetResult = await this.savedObjectsClient.bulkGet(bulkGetOpts); const actionMap = new Map(); - for (const action of bulkGetResult.saved_objects) { - if (action.error) { - throw Boom.badRequest( - `Failed to load action ${action.id} (${action.error.statusCode}): ${action.error.message}` - ); + // map preconfigured actions + for (const alertAction of alertActions) { + const action = this.preconfiguredActions.find( + preconfiguredAction => preconfiguredAction.id === alertAction.id + ); + if (action !== undefined) { + actionMap.set(action.id, action); + } + } + // Fetch action objects in bulk + // Excluding preconfigured actions to avoid an not found error, which is already mapped + const actionIds = [ + ...new Set( + alertActions + .filter(alertAction => !actionMap.has(alertAction.id)) + .map(alertAction => alertAction.id) + ), + ]; + if (actionIds.length > 0) { + const bulkGetOpts = actionIds.map(id => ({ id, type: 'action' })); + const bulkGetResult = await this.savedObjectsClient.bulkGet(bulkGetOpts); + + for (const action of bulkGetResult.saved_objects) { + if (action.error) { + throw Boom.badRequest( + `Failed to load action ${action.id} (${action.error.statusCode}): ${action.error.message}` + ); + } + actionMap.set(action.id, action); } - actionMap.set(action.id, action); } // Extract references and set actionTypeId const references: SavedObjectReference[] = []; @@ -681,10 +705,16 @@ export class AlertsClient { name: actionRef, type: 'action', }); + const actionMapValue = actionMap.get(id); + // if action is a save object, than actionTypeId should be under attributes property + // if action is a preconfigured, than actionTypeId is the action property + const actionTypeId = actionIds.find(actionId => actionId === id) + ? actionMapValue.attributes.actionTypeId + : actionMapValue.actionTypeId; return { ...alertAction, actionRef, - actionTypeId: actionMap.get(id).attributes.actionTypeId, + actionTypeId, }; }); return { diff --git a/x-pack/plugins/alerting/server/alerts_client_factory.test.ts b/x-pack/plugins/alerting/server/alerts_client_factory.test.ts index 4c74ca54a0d2..951d18a33b35 100644 --- a/x-pack/plugins/alerting/server/alerts_client_factory.test.ts +++ b/x-pack/plugins/alerting/server/alerts_client_factory.test.ts @@ -28,6 +28,7 @@ const alertsClientFactoryParams: jest.Mocked = { getSpaceId: jest.fn(), spaceIdToNamespace: jest.fn(), encryptedSavedObjectsPlugin: encryptedSavedObjectsMock.createStart(), + preconfiguredActions: [], }; const fakeRequest: Request = { headers: {}, @@ -67,6 +68,7 @@ test('creates an alerts client with proper constructor arguments', async () => { createAPIKey: expect.any(Function), invalidateAPIKey: expect.any(Function), encryptedSavedObjectsPlugin: alertsClientFactoryParams.encryptedSavedObjectsPlugin, + preconfiguredActions: [], }); }); diff --git a/x-pack/plugins/alerting/server/alerts_client_factory.ts b/x-pack/plugins/alerting/server/alerts_client_factory.ts index fd480658e236..734417e72733 100644 --- a/x-pack/plugins/alerting/server/alerts_client_factory.ts +++ b/x-pack/plugins/alerting/server/alerts_client_factory.ts @@ -4,6 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ +import { PreConfiguredAction } from '../../actions/server'; import { AlertsClient } from './alerts_client'; import { AlertTypeRegistry, SpaceIdToNamespaceFunction } from './types'; import { KibanaRequest, Logger, SavedObjectsClientContract } from '../../../../src/core/server'; @@ -19,6 +20,7 @@ export interface AlertsClientFactoryOpts { getSpaceId: (request: KibanaRequest) => string | undefined; spaceIdToNamespace: SpaceIdToNamespaceFunction; encryptedSavedObjectsPlugin: EncryptedSavedObjectsPluginStart; + preconfiguredActions: PreConfiguredAction[]; } export class AlertsClientFactory { @@ -30,6 +32,7 @@ export class AlertsClientFactory { private getSpaceId!: (request: KibanaRequest) => string | undefined; private spaceIdToNamespace!: SpaceIdToNamespaceFunction; private encryptedSavedObjectsPlugin!: EncryptedSavedObjectsPluginStart; + private preconfiguredActions!: PreConfiguredAction[]; public initialize(options: AlertsClientFactoryOpts) { if (this.isInitialized) { @@ -43,6 +46,7 @@ export class AlertsClientFactory { this.securityPluginSetup = options.securityPluginSetup; this.spaceIdToNamespace = options.spaceIdToNamespace; this.encryptedSavedObjectsPlugin = options.encryptedSavedObjectsPlugin; + this.preconfiguredActions = options.preconfiguredActions; } public create( @@ -100,6 +104,7 @@ export class AlertsClientFactory { result: invalidateAPIKeyResult, }; }, + preconfiguredActions: this.preconfiguredActions, }); } } diff --git a/x-pack/plugins/alerting/server/plugin.ts b/x-pack/plugins/alerting/server/plugin.ts index 90e274df3a5e..172a10622634 100644 --- a/x-pack/plugins/alerting/server/plugin.ts +++ b/x-pack/plugins/alerting/server/plugin.ts @@ -218,6 +218,7 @@ export class AlertingPlugin { getSpaceId(request: KibanaRequest) { return spaces?.getSpaceId(request); }, + preconfiguredActions: plugins.actions.preconfiguredActions, }); taskRunnerFactory.initialize({ diff --git a/x-pack/plugins/case/common/api/cases/configure.ts b/x-pack/plugins/case/common/api/cases/configure.ts index 9b210c2aa05a..d92af587d0e9 100644 --- a/x-pack/plugins/case/common/api/cases/configure.ts +++ b/x-pack/plugins/case/common/api/cases/configure.ts @@ -61,13 +61,6 @@ export type CasesConnectorConfiguration = rt.TypeOf action.actionTypeId === CASE_SERVICE_NOW_ACTION + ); + return response.ok({ body: results }); } catch (error) { return response.customError(wrapError(error)); } diff --git a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/email.test.tsx b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/email.test.tsx index a7d479f922ed..af9e34071fd0 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/email.test.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/email.test.tsx @@ -39,6 +39,7 @@ describe('connector validation', () => { id: 'test', actionTypeId: '.email', name: 'email', + isPreconfigured: false, config: { from: 'test@test.com', port: 2323, @@ -66,6 +67,7 @@ describe('connector validation', () => { }, id: 'test', actionTypeId: '.email', + isPreconfigured: false, name: 'email', config: { from: 'test@test.com', @@ -117,6 +119,7 @@ describe('connector validation', () => { }, id: 'test', actionTypeId: '.email', + isPreconfigured: false, name: 'email', config: { from: 'test@test.com', @@ -144,6 +147,7 @@ describe('connector validation', () => { }, id: 'test', actionTypeId: '.email', + isPreconfigured: false, name: 'email', config: { from: 'test@test.com', diff --git a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/webhook.test.tsx b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/webhook.test.tsx index fdb60bd2d914..c4489a316d2c 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/webhook.test.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_action_types/webhook.test.tsx @@ -39,6 +39,7 @@ describe('webhook connector validation', () => { id: 'test', actionTypeId: '.webhook', name: 'webhook', + isPreconfigured: false, config: { method: 'PUT', url: 'http:\\test', @@ -106,6 +107,7 @@ describe('WebhookActionConnectorFields renders', () => { }, id: 'test', actionTypeId: '.webhook', + isPreconfigured: false, name: 'webhook', config: { method: 'PUT', diff --git a/x-pack/plugins/triggers_actions_ui/public/application/lib/action_connector_api.test.ts b/x-pack/plugins/triggers_actions_ui/public/application/lib/action_connector_api.test.ts index ee68b7e269c3..e9cf2a270d18 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/lib/action_connector_api.test.ts +++ b/x-pack/plugins/triggers_actions_ui/public/application/lib/action_connector_api.test.ts @@ -43,27 +43,14 @@ describe('loadActionTypes', () => { }); describe('loadAllActions', () => { - test('should call find actions API', async () => { - const resolvedValue = { - page: 1, - perPage: 10000, - total: 0, - data: [], - }; - http.get.mockResolvedValueOnce(resolvedValue); + test('should call getAll actions API', async () => { + http.get.mockResolvedValueOnce([]); const result = await loadAllActions({ http }); - expect(result).toEqual(resolvedValue); + expect(result).toEqual([]); expect(http.get.mock.calls[0]).toMatchInlineSnapshot(` Array [ - "/api/action/_find", - Object { - "query": Object { - "per_page": 10000, - "sort_field": "name.keyword", - "sort_order": "asc", - }, - }, + "/api/action/_getAll", ] `); }); @@ -73,6 +60,7 @@ describe('createActionConnector', () => { test('should call create action API', async () => { const connector: ActionConnectorWithoutId = { actionTypeId: 'test', + isPreconfigured: false, name: 'My test', config: {}, secrets: {}, @@ -86,7 +74,7 @@ describe('createActionConnector', () => { Array [ "/api/action", Object { - "body": "{\\"actionTypeId\\":\\"test\\",\\"name\\":\\"My test\\",\\"config\\":{},\\"secrets\\":{}}", + "body": "{\\"actionTypeId\\":\\"test\\",\\"isPreconfigured\\":false,\\"name\\":\\"My test\\",\\"config\\":{},\\"secrets\\":{}}", }, ] `); @@ -98,6 +86,7 @@ describe('updateActionConnector', () => { const id = '123'; const connector: ActionConnectorWithoutId = { actionTypeId: 'test', + isPreconfigured: false, name: 'My test', config: {}, secrets: {}, diff --git a/x-pack/plugins/triggers_actions_ui/public/application/lib/action_connector_api.ts b/x-pack/plugins/triggers_actions_ui/public/application/lib/action_connector_api.ts index 26ad97f05849..e82d268accdd 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/lib/action_connector_api.ts +++ b/x-pack/plugins/triggers_actions_ui/public/application/lib/action_connector_api.ts @@ -8,32 +8,12 @@ import { HttpSetup } from 'kibana/public'; import { BASE_ACTION_API_PATH } from '../constants'; import { ActionConnector, ActionConnectorWithoutId, ActionType } from '../../types'; -// We are assuming there won't be many actions. This is why we will load -// all the actions in advance and assume the total count to not go over 100 or so. -// We'll set this max setting assuming it's never reached. -const MAX_ACTIONS_RETURNED = 10000; - export async function loadActionTypes({ http }: { http: HttpSetup }): Promise { return await http.get(`${BASE_ACTION_API_PATH}/types`); } -export async function loadAllActions({ - http, -}: { - http: HttpSetup; -}): Promise<{ - page: number; - perPage: number; - total: number; - data: ActionConnector[]; -}> { - return await http.get(`${BASE_ACTION_API_PATH}/_find`, { - query: { - per_page: MAX_ACTIONS_RETURNED, - sort_field: 'name.keyword', - sort_order: 'asc', - }, - }); +export async function loadAllActions({ http }: { http: HttpSetup }): Promise { + return await http.get(`${BASE_ACTION_API_PATH}/_getAll`); } export async function createActionConnector({ diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/action_form.test.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/action_form.test.tsx index 89d37c4d00a1..41564146bb84 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/action_form.test.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/action_form.test.tsx @@ -11,6 +11,10 @@ import { act } from 'react-dom/test-utils'; import { actionTypeRegistryMock } from '../../action_type_registry.mock'; import { ValidationResult, Alert, AlertAction } from '../../../types'; import { ActionForm } from './action_form'; +jest.mock('../../lib/action_connector_api', () => ({ + loadAllActions: jest.fn(), + loadActionTypes: jest.fn(), +})); const actionTypeRegistry = actionTypeRegistryMock.create(); describe('action_form', () => { let deps: any; @@ -73,6 +77,17 @@ describe('action_form', () => { let wrapper: ReactWrapper; async function setup() { + const { loadAllActions } = jest.requireMock('../../lib/action_connector_api'); + loadAllActions.mockResolvedValueOnce([ + { + secrets: {}, + id: 'test', + actionTypeId: actionType.id, + name: 'Test connector', + config: {}, + isPreconfigured: false, + }, + ]); const mockes = coreMock.createSetup(); deps = { toastNotifications: mockes.notifications.toasts, diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/action_form.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/action_form.tsx index 3ade4e6368f9..6b011ac84bc6 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/action_form.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/action_form.tsx @@ -129,7 +129,7 @@ export const ActionForm = ({ async function loadConnectors() { try { const actionsResponse = await loadAllActions({ http }); - setConnectors(actionsResponse.data); + setConnectors(actionsResponse); } catch (e) { toastNotifications.addDanger({ title: i18n.translate( diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/connector_edit_flyout.test.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/connector_edit_flyout.test.tsx index f9aa2cad8bfc..2c063ea6b4fa 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/connector_edit_flyout.test.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/connector_edit_flyout.test.tsx @@ -47,6 +47,7 @@ describe('connector_edit_flyout', () => { actionTypeId: 'test-action-type-id', actionType: 'test-action-type-name', name: 'action-connector', + isPreconfigured: false, referencedByCount: 0, config: {}, }; diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/connector_reducer.test.ts b/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/connector_reducer.test.ts index df7e5d8fe9a7..e469a5010891 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/connector_reducer.test.ts +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/action_connector_form/connector_reducer.test.ts @@ -15,6 +15,7 @@ describe('connector reducer', () => { actionTypeId: 'test-action-type-id', name: 'action-connector', referencedByCount: 0, + isPreconfigured: false, config: {}, }; }); diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/actions_connectors_list/components/actions_connectors_list.test.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/actions_connectors_list/components/actions_connectors_list.test.tsx index 9331fe170469..4fa1e7e4c6e4 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/actions_connectors_list/components/actions_connectors_list.test.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/actions_connectors_list/components/actions_connectors_list.test.tsx @@ -29,12 +29,7 @@ describe('actions_connectors_list component empty', () => { const { loadAllActions, loadActionTypes } = jest.requireMock( '../../../lib/action_connector_api' ); - loadAllActions.mockResolvedValueOnce({ - page: 1, - perPage: 10000, - total: 0, - data: [], - }); + loadAllActions.mockResolvedValueOnce([]); loadActionTypes.mockResolvedValueOnce([ { id: 'test', @@ -111,27 +106,22 @@ describe('actions_connectors_list component with items', () => { const { loadAllActions, loadActionTypes } = jest.requireMock( '../../../lib/action_connector_api' ); - loadAllActions.mockResolvedValueOnce({ - page: 1, - perPage: 10000, - total: 2, - data: [ - { - id: '1', - actionTypeId: 'test', - description: 'My test', - referencedByCount: 1, - config: {}, - }, - { - id: '2', - actionTypeId: 'test2', - description: 'My test 2', - referencedByCount: 1, - config: {}, - }, - ], - }); + loadAllActions.mockResolvedValueOnce([ + { + id: '1', + actionTypeId: 'test', + description: 'My test', + referencedByCount: 1, + config: {}, + }, + { + id: '2', + actionTypeId: 'test2', + description: 'My test 2', + referencedByCount: 1, + config: {}, + }, + ]); loadActionTypes.mockResolvedValueOnce([ { id: 'test', @@ -214,12 +204,7 @@ describe('actions_connectors_list component empty with show only capability', () const { loadAllActions, loadActionTypes } = jest.requireMock( '../../../lib/action_connector_api' ); - loadAllActions.mockResolvedValueOnce({ - page: 1, - perPage: 10000, - total: 0, - data: [], - }); + loadAllActions.mockResolvedValueOnce([]); loadActionTypes.mockResolvedValueOnce([ { id: 'test', @@ -289,27 +274,22 @@ describe('actions_connectors_list with show only capability', () => { const { loadAllActions, loadActionTypes } = jest.requireMock( '../../../lib/action_connector_api' ); - loadAllActions.mockResolvedValueOnce({ - page: 1, - perPage: 10000, - total: 2, - data: [ - { - id: '1', - actionTypeId: 'test', - description: 'My test', - referencedByCount: 1, - config: {}, - }, - { - id: '2', - actionTypeId: 'test2', - description: 'My test 2', - referencedByCount: 1, - config: {}, - }, - ], - }); + loadAllActions.mockResolvedValueOnce([ + { + id: '1', + actionTypeId: 'test', + description: 'My test', + referencedByCount: 1, + config: {}, + }, + { + id: '2', + actionTypeId: 'test2', + description: 'My test 2', + referencedByCount: 1, + config: {}, + }, + ]); loadActionTypes.mockResolvedValueOnce([ { id: 'test', @@ -384,27 +364,22 @@ describe('actions_connectors_list component with disabled items', () => { const { loadAllActions, loadActionTypes } = jest.requireMock( '../../../lib/action_connector_api' ); - loadAllActions.mockResolvedValueOnce({ - page: 1, - perPage: 10000, - total: 2, - data: [ - { - id: '1', - actionTypeId: 'test', - description: 'My test', - referencedByCount: 1, - config: {}, - }, - { - id: '2', - actionTypeId: 'test2', - description: 'My test 2', - referencedByCount: 1, - config: {}, - }, - ], - }); + loadAllActions.mockResolvedValueOnce([ + { + id: '1', + actionTypeId: 'test', + description: 'My test', + referencedByCount: 1, + config: {}, + }, + { + id: '2', + actionTypeId: 'test2', + description: 'My test 2', + referencedByCount: 1, + config: {}, + }, + ]); loadActionTypes.mockResolvedValueOnce([ { id: 'test', diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/actions_connectors_list/components/actions_connectors_list.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/actions_connectors_list/components/actions_connectors_list.tsx index fc07171347e5..81693e1d2d9d 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/actions_connectors_list/components/actions_connectors_list.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/actions_connectors_list/components/actions_connectors_list.tsx @@ -110,7 +110,7 @@ export const ActionsConnectorsList: React.FunctionComponent = () => { setIsLoadingActions(true); try { const actionsResponse = await loadAllActions({ http }); - setActions(actionsResponse.data); + setActions(actionsResponse); } catch (e) { toastNotifications.addDanger({ title: i18n.translate( diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/alerts_list/components/alerts_list.test.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/alerts_list/components/alerts_list.test.tsx index 108cc724aa40..66aa02e1930a 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/alerts_list/components/alerts_list.test.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/alerts_list/components/alerts_list.test.tsx @@ -72,12 +72,7 @@ describe('alerts_list component empty', () => { }, ]); loadAlertTypes.mockResolvedValue([{ id: 'test_alert_type', name: 'some alert type' }]); - loadAllActions.mockResolvedValue({ - page: 1, - perPage: 10000, - total: 0, - data: [], - }); + loadAllActions.mockResolvedValue([]); const mockes = coreMock.createSetup(); const [ @@ -196,12 +191,7 @@ describe('alerts_list component with items', () => { }, ]); loadAlertTypes.mockResolvedValue([{ id: 'test_alert_type', name: 'some alert type' }]); - loadAllActions.mockResolvedValue({ - page: 1, - perPage: 10000, - total: 0, - data: [], - }); + loadAllActions.mockResolvedValue([]); const mockes = coreMock.createSetup(); const [ { @@ -286,12 +276,7 @@ describe('alerts_list component empty with show only capability', () => { }, ]); loadAlertTypes.mockResolvedValue([{ id: 'test_alert_type', name: 'some alert type' }]); - loadAllActions.mockResolvedValue({ - page: 1, - perPage: 10000, - total: 0, - data: [], - }); + loadAllActions.mockResolvedValue([]); const mockes = coreMock.createSetup(); const [ { @@ -405,12 +390,7 @@ describe('alerts_list with show only capability', () => { }, ]); loadAlertTypes.mockResolvedValue([{ id: 'test_alert_type', name: 'some alert type' }]); - loadAllActions.mockResolvedValue({ - page: 1, - perPage: 10000, - total: 0, - data: [], - }); + loadAllActions.mockResolvedValue([]); const mockes = coreMock.createSetup(); const [ { diff --git a/x-pack/plugins/triggers_actions_ui/public/types.ts b/x-pack/plugins/triggers_actions_ui/public/types.ts index 7dfaa7b918f7..31c77833cc0e 100644 --- a/x-pack/plugins/triggers_actions_ui/public/types.ts +++ b/x-pack/plugins/triggers_actions_ui/public/types.ts @@ -66,6 +66,7 @@ export interface ActionConnector { name: string; referencedByCount?: number; config: Record; + isPreconfigured: boolean; } export type ActionConnectorWithoutId = Omit; diff --git a/x-pack/test/alerting_api_integration/common/config.ts b/x-pack/test/alerting_api_integration/common/config.ts index 5fb1afa7d584..4d32a5ae9f53 100644 --- a/x-pack/test/alerting_api_integration/common/config.ts +++ b/x-pack/test/alerting_api_integration/common/config.ts @@ -77,6 +77,30 @@ export function createTestConfig(name: string, options: CreateTestConfigOptions) `--xpack.actions.enabledActionTypes=${JSON.stringify(enabledActionTypes)}`, '--xpack.alerting.enabled=true', '--xpack.eventLog.logEntries=true', + `--xpack.actions.preconfigured=${JSON.stringify([ + { + id: 'my-slack1', + actionTypeId: '.slack', + name: 'Slack#xyz', + config: { + webhookUrl: 'https://hooks.slack.com/services/abcd/efgh/ijklmnopqrstuvwxyz', + }, + }, + { + id: 'custom-system-abc-connector', + actionTypeId: 'system-abc-action-type', + name: 'SystemABC', + config: { + xyzConfig1: 'value1', + xyzConfig2: 'value2', + listOfThings: ['a', 'b', 'c', 'd'], + }, + secrets: { + xyzSecret1: 'credential1', + xyzSecret2: 'credential2', + }, + }, + ])}`, ...disabledPlugins.map(key => `--xpack.${key}.enabled=false`), `--plugin-path=${path.join(__dirname, 'fixtures', 'plugins', 'alerts')}`, `--plugin-path=${path.join(__dirname, 'fixtures', 'plugins', 'actions')}`, diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/email.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/email.ts index e228f6c1f81c..6001dd531cfa 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/email.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/email.ts @@ -39,6 +39,7 @@ export default function emailTest({ getService }: FtrProviderContext) { createdActionId = createdAction.id; expect(createdAction).to.eql({ id: createdActionId, + isPreconfigured: false, name: 'An email action', actionTypeId: '.email', config: { @@ -58,6 +59,7 @@ export default function emailTest({ getService }: FtrProviderContext) { expect(fetchedAction).to.eql({ id: fetchedAction.id, + isPreconfigured: false, name: 'An email action', actionTypeId: '.email', config: { diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/es_index.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/es_index.ts index 01eaf92da33f..612eba858ea0 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/es_index.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/es_index.ts @@ -40,6 +40,7 @@ export default function indexTest({ getService }: FtrProviderContext) { expect(createdAction).to.eql({ id: createdAction.id, + isPreconfigured: false, name: 'An index action', actionTypeId: '.index', config: { @@ -57,6 +58,7 @@ export default function indexTest({ getService }: FtrProviderContext) { expect(fetchedAction).to.eql({ id: fetchedAction.id, + isPreconfigured: false, name: 'An index action', actionTypeId: '.index', config: { index: ES_TEST_INDEX_NAME, refresh: false, executionTimeField: null }, @@ -79,6 +81,7 @@ export default function indexTest({ getService }: FtrProviderContext) { expect(createdActionWithIndex).to.eql({ id: createdActionWithIndex.id, + isPreconfigured: false, name: 'An index action with index config', actionTypeId: '.index', config: { @@ -96,6 +99,7 @@ export default function indexTest({ getService }: FtrProviderContext) { expect(fetchedActionWithIndex).to.eql({ id: fetchedActionWithIndex.id, + isPreconfigured: false, name: 'An index action with index config', actionTypeId: '.index', config: { diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/pagerduty.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/pagerduty.ts index cfc04663c6a4..eeb0818b5fba 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/pagerduty.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/pagerduty.ts @@ -50,6 +50,7 @@ export default function pagerdutyTest({ getService }: FtrProviderContext) { expect(createdAction).to.eql({ id: createdAction.id, + isPreconfigured: false, name: 'A pagerduty action', actionTypeId: '.pagerduty', config: { @@ -65,6 +66,7 @@ export default function pagerdutyTest({ getService }: FtrProviderContext) { expect(fetchedAction).to.eql({ id: fetchedAction.id, + isPreconfigured: false, name: 'A pagerduty action', actionTypeId: '.pagerduty', config: { diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/server_log.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/server_log.ts index f4ea568cf08c..e9d3e6c54244 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/server_log.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/server_log.ts @@ -31,6 +31,7 @@ export default function serverLogTest({ getService }: FtrProviderContext) { serverLogActionId = createdAction.id; expect(createdAction).to.eql({ id: createdAction.id, + isPreconfigured: false, name: 'A server.log action', actionTypeId: '.server-log', config: {}, @@ -44,6 +45,7 @@ export default function serverLogTest({ getService }: FtrProviderContext) { expect(fetchedAction).to.eql({ id: fetchedAction.id, + isPreconfigured: false, name: 'A server.log action', actionTypeId: '.server-log', config: {}, diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/servicenow.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/servicenow.ts index 48f348e1b834..054f8f614181 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/servicenow.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/servicenow.ts @@ -101,6 +101,7 @@ export default function servicenowTest({ getService }: FtrProviderContext) { expect(createdAction).to.eql({ id: createdAction.id, + isPreconfigured: false, name: 'A servicenow action', actionTypeId: '.servicenow', config: { @@ -117,6 +118,7 @@ export default function servicenowTest({ getService }: FtrProviderContext) { expect(fetchedAction).to.eql({ id: fetchedAction.id, + isPreconfigured: false, name: 'A servicenow action', actionTypeId: '.servicenow', config: { diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/slack.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/slack.ts index 8afa43bfea21..e00589b7e85b 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/slack.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/slack.ts @@ -47,6 +47,7 @@ export default function slackTest({ getService }: FtrProviderContext) { expect(createdAction).to.eql({ id: createdAction.id, + isPreconfigured: false, name: 'A slack action', actionTypeId: '.slack', config: {}, @@ -60,6 +61,7 @@ export default function slackTest({ getService }: FtrProviderContext) { expect(fetchedAction).to.eql({ id: fetchedAction.id, + isPreconfigured: false, name: 'A slack action', actionTypeId: '.slack', config: {}, diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/webhook.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/webhook.ts index da83dbf8c47e..fd996ea4507b 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/webhook.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/builtin_action_types/webhook.ts @@ -92,6 +92,7 @@ export default function webhookTest({ getService }: FtrProviderContext) { expect(createdAction).to.eql({ id: createdAction.id, + isPreconfigured: false, name: 'A generic Webhook action', actionTypeId: '.webhook', config: { @@ -108,6 +109,7 @@ export default function webhookTest({ getService }: FtrProviderContext) { expect(fetchedAction).to.eql({ id: fetchedAction.id, + isPreconfigured: false, name: 'A generic Webhook action', actionTypeId: '.webhook', config: { diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/create.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/create.ts index 43a386149146..922315eba5a5 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/create.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/create.ts @@ -55,6 +55,7 @@ export default function createActionTests({ getService }: FtrProviderContext) { objectRemover.add(space.id, response.body.id, 'action'); expect(response.body).to.eql({ id: response.body.id, + isPreconfigured: false, name: 'My action', actionTypeId: 'test.index-record', config: { diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/delete.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/delete.ts index 6fca330887c3..011e47cf11b3 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/delete.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/delete.ts @@ -137,6 +137,36 @@ export default function deleteActionTests({ getService }: FtrProviderContext) { throw new Error(`Scenario untested: ${JSON.stringify(scenario)}`); } }); + + it(`shouldn't delete action from preconfigured list`, async () => { + const response = await supertestWithoutAuth + .delete(`${getUrlPrefix(space.id)}/api/action/my-slack1`) + .auth(user.username, user.password) + .set('kbn-xsrf', 'foo'); + + switch (scenario.id) { + case 'no_kibana_privileges at space1': + case 'global_read at space1': + case 'space_1_all at space2': + expect(response.statusCode).to.eql(404); + expect(response.body).to.eql({ + statusCode: 404, + error: 'Not Found', + message: 'Not Found', + }); + break; + case 'superuser at space1': + case 'space_1_all at space1': + expect(response.body).to.eql({ + statusCode: 400, + error: 'Bad Request', + message: 'Preconfigured action my-slack1 is not allowed to delete.', + }); + break; + default: + throw new Error(`Scenario untested: ${JSON.stringify(scenario)}`); + } + }); }); } }); diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/get.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/get.ts index bed4c805aaf5..c84b089d48c8 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/get.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/get.ts @@ -59,6 +59,7 @@ export default function getActionTests({ getService }: FtrProviderContext) { expect(response.statusCode).to.eql(200); expect(response.body).to.eql({ id: createdAction.id, + isPreconfigured: false, actionTypeId: 'test.index-record', name: 'My action', config: { @@ -115,6 +116,40 @@ export default function getActionTests({ getService }: FtrProviderContext) { throw new Error(`Scenario untested: ${JSON.stringify(scenario)}`); } }); + + it('should handle get preconfigured action request appropriately', async () => { + const response = await supertestWithoutAuth + .get(`${getUrlPrefix(space.id)}/api/action/my-slack1`) + .auth(user.username, user.password); + + switch (scenario.id) { + case 'no_kibana_privileges at space1': + case 'space_1_all at space2': + expect(response.statusCode).to.eql(404); + expect(response.body).to.eql({ + statusCode: 404, + error: 'Not Found', + message: 'Not Found', + }); + break; + case 'global_read at space1': + case 'superuser at space1': + case 'space_1_all at space1': + expect(response.statusCode).to.eql(200); + expect(response.body).to.eql({ + id: 'my-slack1', + actionTypeId: '.slack', + name: 'Slack#xyz', + isPreconfigured: true, + config: { + webhookUrl: 'https://hooks.slack.com/services/abcd/efgh/ijklmnopqrstuvwxyz', + }, + }); + break; + default: + throw new Error(`Scenario untested: ${JSON.stringify(scenario)}`); + } + }); }); } }); diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/find.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/get_all.ts similarity index 57% rename from x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/find.ts rename to x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/get_all.ts index 89c5b4f451f8..80b512f3fb5e 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/find.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/get_all.ts @@ -10,11 +10,11 @@ import { getUrlPrefix, getTestAlertData, ObjectRemover } from '../../../common/l import { FtrProviderContext } from '../../../common/ftr_provider_context'; // eslint-disable-next-line import/no-default-export -export default function findActionTests({ getService }: FtrProviderContext) { +export default function getAllActionTests({ getService }: FtrProviderContext) { const supertest = getService('supertest'); const supertestWithoutAuth = getService('supertestWithoutAuth'); - describe('find', () => { + describe('getAll', () => { const objectRemover = new ObjectRemover(supertest); afterEach(() => objectRemover.removeAll()); @@ -22,7 +22,7 @@ export default function findActionTests({ getService }: FtrProviderContext) { for (const scenario of UserAtSpaceScenarios) { const { user, space } = scenario; describe(scenario.id, () => { - it('should handle find action request appropriately', async () => { + it('should handle get all action request appropriately', async () => { const { body: createdAction } = await supertest .post(`${getUrlPrefix(space.id)}/api/action`) .set('kbn-xsrf', 'foo') @@ -40,11 +40,7 @@ export default function findActionTests({ getService }: FtrProviderContext) { objectRemover.add(space.id, createdAction.id, 'action'); const response = await supertestWithoutAuth - .get( - `${getUrlPrefix( - space.id - )}/api/action/_find?search=test.index-record&search_fields=actionTypeId` - ) + .get(`${getUrlPrefix(space.id)}/api/action/_getAll`) .auth(user.username, user.password); switch (scenario.id) { @@ -61,90 +57,47 @@ export default function findActionTests({ getService }: FtrProviderContext) { case 'superuser at space1': case 'space_1_all at space1': expect(response.statusCode).to.eql(200); - expect(response.body).to.eql({ - page: 1, - perPage: 20, - total: 1, - data: [ - { - id: createdAction.id, - name: 'My action', - actionTypeId: 'test.index-record', - config: { - unencrypted: `This value shouldn't get encrypted`, - }, - referencedByCount: 0, + expect(response.body).to.eql([ + { + id: createdAction.id, + isPreconfigured: false, + name: 'My action', + actionTypeId: 'test.index-record', + config: { + unencrypted: `This value shouldn't get encrypted`, }, - ], - }); + referencedByCount: 0, + }, + { + id: 'my-slack1', + isPreconfigured: true, + actionTypeId: '.slack', + name: 'Slack#xyz', + config: { + webhookUrl: 'https://hooks.slack.com/services/abcd/efgh/ijklmnopqrstuvwxyz', + }, + referencedByCount: 0, + }, + { + id: 'custom-system-abc-connector', + isPreconfigured: true, + actionTypeId: 'system-abc-action-type', + name: 'SystemABC', + config: { + xyzConfig1: 'value1', + xyzConfig2: 'value2', + listOfThings: ['a', 'b', 'c', 'd'], + }, + referencedByCount: 0, + }, + ]); break; default: throw new Error(`Scenario untested: ${JSON.stringify(scenario)}`); } }); - it('should handle find action request with filter appropriately', async () => { - const { body: createdAction } = await supertest - .post(`${getUrlPrefix(space.id)}/api/action`) - .set('kbn-xsrf', 'foo') - .send({ - name: 'My action', - actionTypeId: 'test.index-record', - config: { - unencrypted: `This value shouldn't get encrypted`, - }, - secrets: { - encrypted: 'This value should be encrypted', - }, - }) - .expect(200); - objectRemover.add(space.id, createdAction.id, 'action'); - - const response = await supertestWithoutAuth - .get( - `${getUrlPrefix( - space.id - )}/api/action/_find?filter=action.attributes.actionTypeId:test.index-record` - ) - .auth(user.username, user.password); - - switch (scenario.id) { - case 'no_kibana_privileges at space1': - case 'space_1_all at space2': - expect(response.statusCode).to.eql(404); - expect(response.body).to.eql({ - statusCode: 404, - error: 'Not Found', - message: 'Not Found', - }); - break; - case 'global_read at space1': - case 'superuser at space1': - case 'space_1_all at space1': - expect(response.statusCode).to.eql(200); - expect(response.body).to.eql({ - page: 1, - perPage: 20, - total: 1, - data: [ - { - id: createdAction.id, - name: 'My action', - actionTypeId: 'test.index-record', - config: { - unencrypted: `This value shouldn't get encrypted`, - }, - referencedByCount: 0, - }, - ], - }); - break; - default: - throw new Error(`Scenario untested: ${JSON.stringify(scenario)}`); - } - }); - - it('should handle find request appropriately with proper referencedByCount', async () => { + it('should handle get all request appropriately with proper referencedByCount', async () => { const { body: createdAction } = await supertest .post(`${getUrlPrefix(space.id)}/api/action`) .set('kbn-xsrf', 'foo') @@ -172,6 +125,13 @@ export default function findActionTests({ getService }: FtrProviderContext) { id: createdAction.id, params: {}, }, + { + group: 'default', + id: 'my-slack1', + params: { + message: 'test', + }, + }, ], }) ) @@ -179,11 +139,7 @@ export default function findActionTests({ getService }: FtrProviderContext) { objectRemover.add(space.id, createdAlert.id, 'alert'); const response = await supertestWithoutAuth - .get( - `${getUrlPrefix( - space.id - )}/api/action/_find?filter=action.attributes.actionTypeId:test.index-record` - ) + .get(`${getUrlPrefix(space.id)}/api/action/_getAll`) .auth(user.username, user.password); switch (scenario.id) { @@ -200,29 +156,47 @@ export default function findActionTests({ getService }: FtrProviderContext) { case 'superuser at space1': case 'space_1_all at space1': expect(response.statusCode).to.eql(200); - expect(response.body).to.eql({ - page: 1, - perPage: 20, - total: 1, - data: [ - { - id: createdAction.id, - name: 'My action', - actionTypeId: 'test.index-record', - config: { - unencrypted: `This value shouldn't get encrypted`, - }, - referencedByCount: 1, + expect(response.body).to.eql([ + { + id: createdAction.id, + isPreconfigured: false, + name: 'My action', + actionTypeId: 'test.index-record', + config: { + unencrypted: `This value shouldn't get encrypted`, }, - ], - }); + referencedByCount: 1, + }, + { + id: 'my-slack1', + isPreconfigured: true, + actionTypeId: '.slack', + name: 'Slack#xyz', + config: { + webhookUrl: 'https://hooks.slack.com/services/abcd/efgh/ijklmnopqrstuvwxyz', + }, + referencedByCount: 1, + }, + { + id: 'custom-system-abc-connector', + isPreconfigured: true, + actionTypeId: 'system-abc-action-type', + name: 'SystemABC', + config: { + xyzConfig1: 'value1', + xyzConfig2: 'value2', + listOfThings: ['a', 'b', 'c', 'd'], + }, + referencedByCount: 0, + }, + ]); break; default: throw new Error(`Scenario untested: ${JSON.stringify(scenario)}`); } }); - it(`shouldn't find action from another space`, async () => { + it(`shouldn't get actions from another space`, async () => { const { body: createdAction } = await supertest .post(`${getUrlPrefix(space.id)}/api/action`) .set('kbn-xsrf', 'foo') @@ -240,11 +214,7 @@ export default function findActionTests({ getService }: FtrProviderContext) { objectRemover.add(space.id, createdAction.id, 'action'); const response = await supertestWithoutAuth - .get( - `${getUrlPrefix( - 'other' - )}/api/action/_find?search=test.index-record&search_fields=actionTypeId` - ) + .get(`${getUrlPrefix('other')}/api/action/_getAll`) .auth(user.username, user.password); switch (scenario.id) { @@ -261,12 +231,30 @@ export default function findActionTests({ getService }: FtrProviderContext) { case 'global_read at space1': case 'superuser at space1': expect(response.statusCode).to.eql(200); - expect(response.body).to.eql({ - page: 1, - perPage: 20, - total: 0, - data: [], - }); + expect(response.body).to.eql([ + { + id: 'my-slack1', + isPreconfigured: true, + actionTypeId: '.slack', + name: 'Slack#xyz', + config: { + webhookUrl: 'https://hooks.slack.com/services/abcd/efgh/ijklmnopqrstuvwxyz', + }, + referencedByCount: 0, + }, + { + id: 'custom-system-abc-connector', + isPreconfigured: true, + actionTypeId: 'system-abc-action-type', + name: 'SystemABC', + config: { + xyzConfig1: 'value1', + xyzConfig2: 'value2', + listOfThings: ['a', 'b', 'c', 'd'], + }, + referencedByCount: 0, + }, + ]); break; default: throw new Error(`Scenario untested: ${JSON.stringify(scenario)}`); diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/index.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/index.ts index c6960a4eedd2..d7ec2e78ccb3 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/index.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/index.ts @@ -19,7 +19,7 @@ export default function actionsTests({ loadTestFile }: FtrProviderContext) { loadTestFile(require.resolve('./create')); loadTestFile(require.resolve('./delete')); loadTestFile(require.resolve('./execute')); - loadTestFile(require.resolve('./find')); + loadTestFile(require.resolve('./get_all')); loadTestFile(require.resolve('./get')); loadTestFile(require.resolve('./list_action_types')); loadTestFile(require.resolve('./update')); diff --git a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/update.ts b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/update.ts index a792efede07e..6cafbeb8c6ea 100644 --- a/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/update.ts +++ b/x-pack/test/alerting_api_integration/security_and_spaces/tests/actions/update.ts @@ -69,6 +69,7 @@ export default function updateActionTests({ getService }: FtrProviderContext) { expect(response.statusCode).to.eql(200); expect(response.body).to.eql({ id: createdAction.id, + isPreconfigured: false, actionTypeId: 'test.index-record', name: 'My action updated', config: { @@ -307,6 +308,45 @@ export default function updateActionTests({ getService }: FtrProviderContext) { throw new Error(`Scenario untested: ${JSON.stringify(scenario)}`); } }); + + it(`shouldn't update action from preconfigured list`, async () => { + const response = await supertestWithoutAuth + .put(`${getUrlPrefix(space.id)}/api/action/custom-system-abc-connector`) + .auth(user.username, user.password) + .set('kbn-xsrf', 'foo') + .send({ + name: 'My action updated', + config: { + unencrypted: `This value shouldn't get encrypted`, + }, + secrets: { + encrypted: 'This value should be encrypted', + }, + }); + + switch (scenario.id) { + case 'no_kibana_privileges at space1': + case 'space_1_all at space2': + case 'global_read at space1': + expect(response.statusCode).to.eql(404); + expect(response.body).to.eql({ + statusCode: 404, + error: 'Not Found', + message: 'Not Found', + }); + break; + case 'superuser at space1': + case 'space_1_all at space1': + expect(response.body).to.eql({ + statusCode: 400, + error: 'Bad Request', + message: `Preconfigured action custom-system-abc-connector is not allowed to update.`, + }); + break; + default: + throw new Error(`Scenario untested: ${JSON.stringify(scenario)}`); + } + }); }); } }); diff --git a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/builtin_action_types/es_index.ts b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/builtin_action_types/es_index.ts index 3713e9c24419..874d42ac0473 100644 --- a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/builtin_action_types/es_index.ts +++ b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/builtin_action_types/es_index.ts @@ -38,6 +38,7 @@ export default function indexTest({ getService }: FtrProviderContext) { expect(createdAction).to.eql({ id: createdAction.id, + isPreconfigured: false, name: 'An index action', actionTypeId: '.index', config: { @@ -55,6 +56,7 @@ export default function indexTest({ getService }: FtrProviderContext) { expect(fetchedAction).to.eql({ id: fetchedAction.id, + isPreconfigured: false, name: 'An index action', actionTypeId: '.index', config: { index: ES_TEST_INDEX_NAME, refresh: false, executionTimeField: null }, @@ -77,6 +79,7 @@ export default function indexTest({ getService }: FtrProviderContext) { expect(createdActionWithIndex).to.eql({ id: createdActionWithIndex.id, + isPreconfigured: false, name: 'An index action with index config', actionTypeId: '.index', config: { @@ -94,6 +97,7 @@ export default function indexTest({ getService }: FtrProviderContext) { expect(fetchedActionWithIndex).to.eql({ id: fetchedActionWithIndex.id, + isPreconfigured: false, name: 'An index action with index config', actionTypeId: '.index', config: { diff --git a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/create.ts b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/create.ts index efd707b59cd3..c70c289194ab 100644 --- a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/create.ts +++ b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/create.ts @@ -37,6 +37,7 @@ export default function createActionTests({ getService }: FtrProviderContext) { objectRemover.add(Spaces.space1.id, response.body.id, 'action'); expect(response.body).to.eql({ id: response.body.id, + isPreconfigured: false, name: 'My action', actionTypeId: 'test.index-record', config: { diff --git a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/delete.ts b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/delete.ts index 283e51352c27..26a811d2cc51 100644 --- a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/delete.ts +++ b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/delete.ts @@ -76,5 +76,16 @@ export default function deleteActionTests({ getService }: FtrProviderContext) { message: 'Saved object [action/2] not found', }); }); + + it(`shouldn't delete action from preconfigured list`, async () => { + await supertest + .delete(`${getUrlPrefix(Spaces.space1.id)}/api/action/my-slack1`) + .set('kbn-xsrf', 'foo') + .expect(400, { + statusCode: 400, + error: 'Bad Request', + message: `Preconfigured action my-slack1 is not allowed to delete.`, + }); + }); }); } diff --git a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/find.ts b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/find.ts deleted file mode 100644 index acbc9edc1f2f..000000000000 --- a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/find.ts +++ /dev/null @@ -1,92 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - -import { Spaces } from '../../scenarios'; -import { getUrlPrefix, ObjectRemover } from '../../../common/lib'; -import { FtrProviderContext } from '../../../common/ftr_provider_context'; - -// eslint-disable-next-line import/no-default-export -export default function findActionTests({ getService }: FtrProviderContext) { - const supertest = getService('supertest'); - - describe('find', () => { - const objectRemover = new ObjectRemover(supertest); - - afterEach(() => objectRemover.removeAll()); - - it('should handle find action request appropriately', async () => { - const { body: createdAction } = await supertest - .post(`${getUrlPrefix(Spaces.space1.id)}/api/action`) - .set('kbn-xsrf', 'foo') - .send({ - name: 'My action', - actionTypeId: 'test.index-record', - config: { - unencrypted: `This value shouldn't get encrypted`, - }, - secrets: { - encrypted: 'This value should be encrypted', - }, - }) - .expect(200); - objectRemover.add(Spaces.space1.id, createdAction.id, 'action'); - - await supertest - .get( - `${getUrlPrefix( - Spaces.space1.id - )}/api/action/_find?search=test.index-record&search_fields=actionTypeId` - ) - .expect(200, { - page: 1, - perPage: 20, - total: 1, - data: [ - { - id: createdAction.id, - name: 'My action', - actionTypeId: 'test.index-record', - config: { - unencrypted: `This value shouldn't get encrypted`, - }, - referencedByCount: 0, - }, - ], - }); - }); - - it(`shouldn't find action from another space`, async () => { - const { body: createdAction } = await supertest - .post(`${getUrlPrefix(Spaces.space1.id)}/api/action`) - .set('kbn-xsrf', 'foo') - .send({ - name: 'My action', - actionTypeId: 'test.index-record', - config: { - unencrypted: `This value shouldn't get encrypted`, - }, - secrets: { - encrypted: 'This value should be encrypted', - }, - }) - .expect(200); - objectRemover.add(Spaces.space1.id, createdAction.id, 'action'); - - await supertest - .get( - `${getUrlPrefix( - Spaces.other.id - )}/api/action/_find?search=test.index-record&search_fields=actionTypeId` - ) - .expect(200, { - page: 1, - perPage: 20, - total: 0, - data: [], - }); - }); - }); -} diff --git a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/get.ts b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/get.ts index 0f896bfaa0af..a4a13441fb76 100644 --- a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/get.ts +++ b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/get.ts @@ -38,6 +38,7 @@ export default function getActionTests({ getService }: FtrProviderContext) { .get(`${getUrlPrefix(Spaces.space1.id)}/api/action/${createdAction.id}`) .expect(200, { id: createdAction.id, + isPreconfigured: false, actionTypeId: 'test.index-record', name: 'My action', config: { @@ -71,5 +72,17 @@ export default function getActionTests({ getService }: FtrProviderContext) { message: `Saved object [action/${createdAction.id}] not found`, }); }); + + it('should handle get action request from preconfigured list', async () => { + await supertest.get(`${getUrlPrefix(Spaces.space1.id)}/api/action/my-slack1`).expect(200, { + id: 'my-slack1', + isPreconfigured: true, + actionTypeId: '.slack', + name: 'Slack#xyz', + config: { + webhookUrl: 'https://hooks.slack.com/services/abcd/efgh/ijklmnopqrstuvwxyz', + }, + }); + }); }); } diff --git a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/get_all.ts b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/get_all.ts new file mode 100644 index 000000000000..517c64f178af --- /dev/null +++ b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/get_all.ts @@ -0,0 +1,116 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { Spaces } from '../../scenarios'; +import { getUrlPrefix, ObjectRemover } from '../../../common/lib'; +import { FtrProviderContext } from '../../../common/ftr_provider_context'; + +// eslint-disable-next-line import/no-default-export +export default function getAllActionTests({ getService }: FtrProviderContext) { + const supertest = getService('supertest'); + + describe('getAll', () => { + const objectRemover = new ObjectRemover(supertest); + + afterEach(() => objectRemover.removeAll()); + + it('should handle get all action request appropriately', async () => { + const { body: createdAction } = await supertest + .post(`${getUrlPrefix(Spaces.space1.id)}/api/action`) + .set('kbn-xsrf', 'foo') + .send({ + name: 'My action', + actionTypeId: 'test.index-record', + config: { + unencrypted: `This value shouldn't get encrypted`, + }, + secrets: { + encrypted: 'This value should be encrypted', + }, + }) + .expect(200); + objectRemover.add(Spaces.space1.id, createdAction.id, 'action'); + + await supertest.get(`${getUrlPrefix(Spaces.space1.id)}/api/action/_getAll`).expect(200, [ + { + id: createdAction.id, + isPreconfigured: false, + name: 'My action', + actionTypeId: 'test.index-record', + config: { + unencrypted: `This value shouldn't get encrypted`, + }, + referencedByCount: 0, + }, + { + id: 'my-slack1', + isPreconfigured: true, + actionTypeId: '.slack', + name: 'Slack#xyz', + config: { + webhookUrl: 'https://hooks.slack.com/services/abcd/efgh/ijklmnopqrstuvwxyz', + }, + referencedByCount: 0, + }, + { + id: 'custom-system-abc-connector', + isPreconfigured: true, + actionTypeId: 'system-abc-action-type', + name: 'SystemABC', + config: { + xyzConfig1: 'value1', + xyzConfig2: 'value2', + listOfThings: ['a', 'b', 'c', 'd'], + }, + referencedByCount: 0, + }, + ]); + }); + + it(`shouldn't get all action from another space`, async () => { + const { body: createdAction } = await supertest + .post(`${getUrlPrefix(Spaces.space1.id)}/api/action`) + .set('kbn-xsrf', 'foo') + .send({ + name: 'My action', + actionTypeId: 'test.index-record', + config: { + unencrypted: `This value shouldn't get encrypted`, + }, + secrets: { + encrypted: 'This value should be encrypted', + }, + }) + .expect(200); + objectRemover.add(Spaces.space1.id, createdAction.id, 'action'); + + await supertest.get(`${getUrlPrefix(Spaces.other.id)}/api/action/_getAll`).expect(200, [ + { + id: 'my-slack1', + isPreconfigured: true, + actionTypeId: '.slack', + name: 'Slack#xyz', + config: { + webhookUrl: 'https://hooks.slack.com/services/abcd/efgh/ijklmnopqrstuvwxyz', + }, + referencedByCount: 0, + }, + { + id: 'custom-system-abc-connector', + isPreconfigured: true, + actionTypeId: 'system-abc-action-type', + name: 'SystemABC', + config: { + xyzConfig1: 'value1', + xyzConfig2: 'value2', + listOfThings: ['a', 'b', 'c', 'd'], + }, + referencedByCount: 0, + }, + ]); + }); + }); +} diff --git a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/index.ts b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/index.ts index fb2be8c86f4e..75544b7fd416 100644 --- a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/index.ts +++ b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/index.ts @@ -11,7 +11,7 @@ export default function actionsTests({ loadTestFile }: FtrProviderContext) { describe('Actions', () => { loadTestFile(require.resolve('./create')); loadTestFile(require.resolve('./delete')); - loadTestFile(require.resolve('./find')); + loadTestFile(require.resolve('./get_all')); loadTestFile(require.resolve('./get')); loadTestFile(require.resolve('./list_action_types')); loadTestFile(require.resolve('./update')); diff --git a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/type_not_enabled.ts b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/type_not_enabled.ts index 18a0ecc23c1e..2593f342a8a8 100644 --- a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/type_not_enabled.ts +++ b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/type_not_enabled.ts @@ -63,6 +63,7 @@ export default function typeNotEnabledTests({ getService }: FtrProviderContext) actionTypeId: 'test.not-enabled', config: {}, id: 'uuid-actionId', + isPreconfigured: false, name: 'an action created before test.not-enabled was disabled', }); }); @@ -89,6 +90,7 @@ export default function typeNotEnabledTests({ getService }: FtrProviderContext) actionTypeId: 'test.not-enabled', config: {}, id: 'uuid-actionId', + isPreconfigured: false, name: 'an action created before test.not-enabled was disabled', }); }); diff --git a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/update.ts b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/update.ts index fb0c5e13c072..05d26aaaed2e 100644 --- a/x-pack/test/alerting_api_integration/spaces_only/tests/actions/update.ts +++ b/x-pack/test/alerting_api_integration/spaces_only/tests/actions/update.ts @@ -48,6 +48,7 @@ export default function updateActionTests({ getService }: FtrProviderContext) { }) .expect(200, { id: createdAction.id, + isPreconfigured: false, actionTypeId: 'test.index-record', name: 'My action updated', config: { @@ -99,5 +100,25 @@ export default function updateActionTests({ getService }: FtrProviderContext) { message: `Saved object [action/${createdAction.id}] not found`, }); }); + + it(`shouldn't update action from preconfigured list`, async () => { + await supertest + .put(`${getUrlPrefix(Spaces.space1.id)}/api/action/custom-system-abc-connector`) + .set('kbn-xsrf', 'foo') + .send({ + name: 'My action updated', + config: { + unencrypted: `This value shouldn't get encrypted`, + }, + secrets: { + encrypted: 'This value should be encrypted', + }, + }) + .expect(400, { + statusCode: 400, + error: 'Bad Request', + message: `Preconfigured action custom-system-abc-connector is not allowed to update.`, + }); + }); }); } From 9d89a4fb4900a372c2445f0359374da8d9030515 Mon Sep 17 00:00:00 2001 From: Larry Gregory Date: Wed, 8 Apr 2020 13:03:15 -0400 Subject: [PATCH 31/36] Support multiple reserved feature privileges (#61980) * support multiple reserved feature privileges * update reserved privilege ids * additional testing * Add ml_user and ml_admin reserved privileges * prrevent reserved privilege ids from sttarting with 'reserved_' * address pr feedback: dedicated reserved privilege type * re-enable ML test suites Co-authored-by: Elastic Machine --- x-pack/plugins/features/common/feature.ts | 3 +- .../common/reserved_kibana_privilege.ts | 12 + .../features/server/feature_registry.test.ts | 254 +++++++++++++----- .../features/server/feature_registry.ts | 4 +- .../plugins/features/server/feature_schema.ts | 16 +- x-pack/plugins/ml/server/plugin.ts | 35 ++- x-pack/plugins/monitoring/server/plugin.ts | 23 +- .../security/server/authorization/index.ts | 5 +- .../privileges/privileges.test.ts | 51 ++-- .../authorization/privileges/privileges.ts | 10 +- .../validate_feature_privileges.test.ts | 17 +- .../validate_reserved_privileges.test.ts | 181 +++++++++++++ .../validate_reserved_privileges.ts | 20 ++ x-pack/test/api_integration/apis/ml/index.ts | 5 +- .../apis/security/privileges.ts | 2 +- .../apis/security/privileges_basic.ts | 2 +- .../functional/apps/machine_learning/index.ts | 5 +- 17 files changed, 512 insertions(+), 133 deletions(-) create mode 100644 x-pack/plugins/features/common/reserved_kibana_privilege.ts create mode 100644 x-pack/plugins/security/server/authorization/validate_reserved_privileges.test.ts create mode 100644 x-pack/plugins/security/server/authorization/validate_reserved_privileges.ts diff --git a/x-pack/plugins/features/common/feature.ts b/x-pack/plugins/features/common/feature.ts index 82fcc33f5c8c..ef32a8a80a0b 100644 --- a/x-pack/plugins/features/common/feature.ts +++ b/x-pack/plugins/features/common/feature.ts @@ -7,6 +7,7 @@ import { RecursiveReadonly } from '@kbn/utility-types'; import { FeatureKibanaPrivileges } from './feature_kibana_privileges'; import { SubFeatureConfig, SubFeature } from './sub_feature'; +import { ReservedKibanaPrivilege } from './reserved_kibana_privilege'; /** * Interface for registering a feature. @@ -122,8 +123,8 @@ export interface FeatureConfig { * @private */ reserved?: { - privilege: FeatureKibanaPrivileges; description: string; + privileges: ReservedKibanaPrivilege[]; }; } diff --git a/x-pack/plugins/features/common/reserved_kibana_privilege.ts b/x-pack/plugins/features/common/reserved_kibana_privilege.ts new file mode 100644 index 000000000000..0186011382e8 --- /dev/null +++ b/x-pack/plugins/features/common/reserved_kibana_privilege.ts @@ -0,0 +1,12 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { FeatureKibanaPrivileges } from '.'; + +export interface ReservedKibanaPrivilege { + id: string; + privilege: FeatureKibanaPrivileges; +} diff --git a/x-pack/plugins/features/server/feature_registry.test.ts b/x-pack/plugins/features/server/feature_registry.test.ts index 5b4f7728c9f3..2039f8f6acda 100644 --- a/x-pack/plugins/features/server/feature_registry.test.ts +++ b/x-pack/plugins/features/server/feature_registry.test.ts @@ -110,19 +110,24 @@ describe('FeatureRegistry', () => { ], privilegesTooltip: 'some fancy tooltip', reserved: { - privilege: { - catalogue: ['foo'], - management: { - foo: ['bar'], + privileges: [ + { + id: 'reserved', + privilege: { + catalogue: ['foo'], + management: { + foo: ['bar'], + }, + app: ['app1'], + savedObject: { + all: ['space', 'etc', 'telemetry'], + read: ['canvas', 'config', 'url'], + }, + api: ['someApiEndpointTag', 'anotherEndpointTag'], + ui: ['allowsFoo', 'showBar', 'showBaz'], + }, }, - app: ['app1'], - savedObject: { - all: ['space', 'etc', 'telemetry'], - read: ['canvas', 'config', 'url'], - }, - api: ['someApiEndpointTag', 'anotherEndpointTag'], - ui: ['allowsFoo', 'showBar', 'showBaz'], - }, + ], description: 'some completely adequate description', }, }; @@ -264,13 +269,18 @@ describe('FeatureRegistry', () => { privileges: null, reserved: { description: 'foo', - privilege: { - ui: [], - savedObject: { - all: [], - read: [], + privileges: [ + { + id: 'reserved', + privilege: { + ui: [], + savedObject: { + all: [], + read: [], + }, + }, }, - }, + ], }, }; @@ -278,7 +288,7 @@ describe('FeatureRegistry', () => { featureRegistry.register(feature); const result = featureRegistry.getAll(); - const reservedPrivilege = result[0]!.reserved!.privilege; + const reservedPrivilege = result[0]!.reserved!.privileges[0].privilege; expect(reservedPrivilege.savedObject.all).toEqual(['telemetry']); expect(reservedPrivilege.savedObject.read).toEqual(['config', 'url']); }); @@ -520,14 +530,19 @@ describe('FeatureRegistry', () => { privileges: null, reserved: { description: 'something', - privilege: { - savedObject: { - all: [], - read: [], + privileges: [ + { + id: 'reserved', + privilege: { + savedObject: { + all: [], + read: [], + }, + ui: [], + app: ['foo', 'bar', 'baz'], + }, }, - ui: [], - app: ['foo', 'bar', 'baz'], - }, + ], }, }; @@ -546,14 +561,19 @@ describe('FeatureRegistry', () => { privileges: null, reserved: { description: 'something', - privilege: { - savedObject: { - all: [], - read: [], + privileges: [ + { + id: 'reserved', + privilege: { + savedObject: { + all: [], + read: [], + }, + ui: [], + app: ['foo', 'bar'], + }, }, - ui: [], - app: ['foo', 'bar'], - }, + ], }, }; @@ -666,15 +686,20 @@ describe('FeatureRegistry', () => { privileges: null, reserved: { description: 'something', - privilege: { - catalogue: ['foo', 'bar', 'baz'], - savedObject: { - all: [], - read: [], + privileges: [ + { + id: 'reserved', + privilege: { + catalogue: ['foo', 'bar', 'baz'], + savedObject: { + all: [], + read: [], + }, + ui: [], + app: [], + }, }, - ui: [], - app: [], - }, + ], }, }; @@ -694,15 +719,20 @@ describe('FeatureRegistry', () => { privileges: null, reserved: { description: 'something', - privilege: { - catalogue: ['foo', 'bar'], - savedObject: { - all: [], - read: [], + privileges: [ + { + id: 'reserved', + privilege: { + catalogue: ['foo', 'bar'], + savedObject: { + all: [], + read: [], + }, + ui: [], + app: [], + }, }, - ui: [], - app: [], - }, + ], }, }; @@ -840,18 +870,23 @@ describe('FeatureRegistry', () => { privileges: null, reserved: { description: 'something', - privilege: { - catalogue: ['bar'], - management: { - kibana: ['hey-there'], + privileges: [ + { + id: 'reserved', + privilege: { + catalogue: ['bar'], + management: { + kibana: ['hey-there'], + }, + savedObject: { + all: [], + read: [], + }, + ui: [], + app: [], + }, }, - savedObject: { - all: [], - read: [], - }, - ui: [], - app: [], - }, + ], }, }; @@ -874,18 +909,23 @@ describe('FeatureRegistry', () => { privileges: null, reserved: { description: 'something', - privilege: { - catalogue: ['bar'], - management: { - kibana: ['hey-there'], + privileges: [ + { + id: 'reserved', + privilege: { + catalogue: ['bar'], + management: { + kibana: ['hey-there'], + }, + savedObject: { + all: [], + read: [], + }, + ui: [], + app: [], + }, }, - savedObject: { - all: [], - read: [], - }, - ui: [], - app: [], - }, + ], }, }; @@ -896,6 +936,78 @@ describe('FeatureRegistry', () => { ); }); + it('allows multiple reserved feature privileges to be registered', () => { + const feature: FeatureConfig = { + id: 'test-feature', + name: 'Test Feature', + app: [], + privileges: null, + reserved: { + description: 'my reserved privileges', + privileges: [ + { + id: 'a_reserved_1', + privilege: { + savedObject: { + all: [], + read: [], + }, + ui: [], + app: [], + }, + }, + { + id: 'a_reserved_2', + privilege: { + savedObject: { + all: [], + read: [], + }, + ui: [], + app: [], + }, + }, + ], + }, + }; + + const featureRegistry = new FeatureRegistry(); + featureRegistry.register(feature); + const result = featureRegistry.getAll(); + expect(result).toHaveLength(1); + expect(result[0].reserved?.privileges).toHaveLength(2); + }); + + it('does not allow reserved privilege ids to start with "reserved_"', () => { + const feature: FeatureConfig = { + id: 'test-feature', + name: 'Test Feature', + app: [], + privileges: null, + reserved: { + description: 'my reserved privileges', + privileges: [ + { + id: 'reserved_1', + privilege: { + savedObject: { + all: [], + read: [], + }, + ui: [], + app: [], + }, + }, + ], + }, + }; + + const featureRegistry = new FeatureRegistry(); + expect(() => featureRegistry.register(feature)).toThrowErrorMatchingInlineSnapshot( + `"child \\"reserved\\" fails because [child \\"privileges\\" fails because [\\"privileges\\" at position 0 fails because [child \\"id\\" fails because [\\"id\\" with value \\"reserved_1\\" fails to match the required pattern: /^(?!reserved_)[a-zA-Z0-9_-]+$/]]]]"` + ); + }); + it('cannot register feature after getAll has been called', () => { const feature1: FeatureConfig = { id: 'test-feature', diff --git a/x-pack/plugins/features/server/feature_registry.ts b/x-pack/plugins/features/server/feature_registry.ts index 73a353cd2747..6140b7ac87ce 100644 --- a/x-pack/plugins/features/server/feature_registry.ts +++ b/x-pack/plugins/features/server/feature_registry.ts @@ -39,9 +39,9 @@ export class FeatureRegistry { function applyAutomaticPrivilegeGrants(feature: FeatureConfig): FeatureConfig { const allPrivilege = feature.privileges?.all; const readPrivilege = feature.privileges?.read; - const reservedPrivilege = feature.reserved?.privilege; + const reservedPrivileges = (feature.reserved?.privileges ?? []).map(rp => rp.privilege); - applyAutomaticAllPrivilegeGrants(allPrivilege, reservedPrivilege); + applyAutomaticAllPrivilegeGrants(allPrivilege, ...reservedPrivileges); applyAutomaticReadPrivilegeGrants(readPrivilege); return feature; diff --git a/x-pack/plugins/features/server/feature_schema.ts b/x-pack/plugins/features/server/feature_schema.ts index fdeceb30b4e3..403d9586bf16 100644 --- a/x-pack/plugins/features/server/feature_schema.ts +++ b/x-pack/plugins/features/server/feature_schema.ts @@ -18,6 +18,7 @@ const prohibitedFeatureIds: Array = ['catalogue', 'managem const featurePrivilegePartRegex = /^[a-zA-Z0-9_-]+$/; const subFeaturePrivilegePartRegex = /^[a-zA-Z0-9_-]+$/; const managementSectionIdRegex = /^[a-zA-Z0-9_-]+$/; +const reservedFeaturePrrivilegePartRegex = /^(?!reserved_)[a-zA-Z0-9_-]+$/; export const uiCapabilitiesRegex = /^[a-zA-Z0-9:_-]+$/; const managementSchema = Joi.object().pattern( @@ -118,8 +119,17 @@ const schema = Joi.object({ }), privilegesTooltip: Joi.string(), reserved: Joi.object({ - privilege: privilegeSchema.required(), description: Joi.string().required(), + privileges: Joi.array() + .items( + Joi.object({ + id: Joi.string() + .regex(reservedFeaturePrrivilegePartRegex) + .required(), + privilege: privilegeSchema.required(), + }) + ) + .required(), }), }); @@ -209,7 +219,9 @@ export function validateFeature(feature: FeatureConfig) { privilegeEntries.push(...Object.entries(feature.privileges)); } if (feature.reserved) { - privilegeEntries.push(['reserved', feature.reserved.privilege]); + feature.reserved.privileges.forEach(reservedPrivilege => { + privilegeEntries.push([reservedPrivilege.id, reservedPrivilege.privilege]); + }); } if (privilegeEntries.length === 0) { diff --git a/x-pack/plugins/ml/server/plugin.ts b/x-pack/plugins/ml/server/plugin.ts index 7d3ef116e67a..c7add12be142 100644 --- a/x-pack/plugins/ml/server/plugin.ts +++ b/x-pack/plugins/ml/server/plugin.ts @@ -79,19 +79,36 @@ export class MlServerPlugin implements Plugin { - validateFeaturePrivileges(featuresService.getFeatures()); + const features = featuresService.getFeatures(); + validateFeaturePrivileges(features); + validateReservedPrivileges(features); await registerPrivilegesWithCluster(logger, privileges, applicationName, clusterClient); }, diff --git a/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts b/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts index 3d25fc03f568..b023c12d35b7 100644 --- a/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts +++ b/x-pack/plugins/security/server/authorization/privileges/privileges.test.ts @@ -409,13 +409,18 @@ describe('features', () => { }, privileges: null, reserved: { - privilege: { - savedObject: { - all: ['ignore-me-1', 'ignore-me-2'], - read: ['ignore-me-1', 'ignore-me-2'], + privileges: [ + { + id: 'reserved', + privilege: { + savedObject: { + all: ['ignore-me-1', 'ignore-me-2'], + read: ['ignore-me-1', 'ignore-me-2'], + }, + ui: ['ignore-me-1'], + }, }, - ui: ['ignore-me-1'], - }, + ], description: '', }, }), @@ -591,13 +596,18 @@ describe('reserved', () => { }, privileges: null, reserved: { - privilege: { - savedObject: { - all: [], - read: [], + privileges: [ + { + id: 'foo', + privilege: { + savedObject: { + all: [], + read: [], + }, + ui: [], + }, }, - ui: [], - }, + ], description: '', }, }), @@ -627,13 +637,18 @@ describe('reserved', () => { app: [], privileges: null, reserved: { - privilege: { - savedObject: { - all: ['savedObject-all-1', 'savedObject-all-2'], - read: ['savedObject-read-1', 'savedObject-read-2'], + privileges: [ + { + id: 'foo', + privilege: { + savedObject: { + all: ['savedObject-all-1', 'savedObject-all-2'], + read: ['savedObject-read-1', 'savedObject-read-2'], + }, + ui: ['ui-1', 'ui-2'], + }, }, - ui: ['ui-1', 'ui-2'], - }, + ], description: '', }, }), diff --git a/x-pack/plugins/security/server/authorization/privileges/privileges.ts b/x-pack/plugins/security/server/authorization/privileges/privileges.ts index b25aad30a342..9a8935f80a17 100644 --- a/x-pack/plugins/security/server/authorization/privileges/privileges.ts +++ b/x-pack/plugins/security/server/authorization/privileges/privileges.ts @@ -110,10 +110,12 @@ export function privilegesFactory( }, reserved: features.reduce((acc: Record, feature: Feature) => { if (feature.reserved) { - acc[feature.id] = [ - actions.version, - ...featurePrivilegeBuilder.getActions(feature.reserved!.privilege, feature), - ]; + feature.reserved.privileges.forEach(reservedPrivilege => { + acc[reservedPrivilege.id] = [ + actions.version, + ...uniq(featurePrivilegeBuilder.getActions(reservedPrivilege.privilege, feature)), + ]; + }); } return acc; }, {}), diff --git a/x-pack/plugins/security/server/authorization/validate_feature_privileges.test.ts b/x-pack/plugins/security/server/authorization/validate_feature_privileges.test.ts index ac386d287cff..cd2c7faa263c 100644 --- a/x-pack/plugins/security/server/authorization/validate_feature_privileges.test.ts +++ b/x-pack/plugins/security/server/authorization/validate_feature_privileges.test.ts @@ -26,13 +26,18 @@ it('allows features with reserved privileges to be defined', () => { privileges: null, reserved: { description: 'foo', - privilege: { - savedObject: { - all: ['foo'], - read: ['bar'], + privileges: [ + { + id: 'reserved', + privilege: { + savedObject: { + all: ['foo'], + read: ['bar'], + }, + ui: [], + }, }, - ui: [], - }, + ], }, }); diff --git a/x-pack/plugins/security/server/authorization/validate_reserved_privileges.test.ts b/x-pack/plugins/security/server/authorization/validate_reserved_privileges.test.ts new file mode 100644 index 000000000000..26af0dadfb28 --- /dev/null +++ b/x-pack/plugins/security/server/authorization/validate_reserved_privileges.test.ts @@ -0,0 +1,181 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { Feature } from '../../../features/server'; +import { validateReservedPrivileges } from './validate_reserved_privileges'; + +it('allows features to be defined without privileges', () => { + const feature: Feature = new Feature({ + id: 'foo', + name: 'foo', + app: [], + privileges: null, + }); + + validateReservedPrivileges([feature]); +}); + +it('allows features with a single reserved privilege to be defined', () => { + const feature: Feature = new Feature({ + id: 'foo', + name: 'foo', + app: [], + privileges: null, + reserved: { + description: 'foo', + privileges: [ + { + id: 'reserved', + privilege: { + savedObject: { + all: ['foo'], + read: ['bar'], + }, + ui: [], + }, + }, + ], + }, + }); + + validateReservedPrivileges([feature]); +}); + +it('allows multiple features with reserved privileges to be defined', () => { + const feature1: Feature = new Feature({ + id: 'foo', + name: 'foo', + app: [], + privileges: null, + reserved: { + description: 'foo', + privileges: [ + { + id: 'reserved-1', + privilege: { + savedObject: { + all: ['foo'], + read: ['bar'], + }, + ui: [], + }, + }, + ], + }, + }); + + const feature2: Feature = new Feature({ + id: 'foo2', + name: 'foo', + app: [], + privileges: null, + reserved: { + description: 'foo', + privileges: [ + { + id: 'reserved-2', + privilege: { + savedObject: { + all: ['foo'], + read: ['bar'], + }, + ui: [], + }, + }, + ], + }, + }); + + validateReservedPrivileges([feature1, feature2]); +}); + +it('prevents a feature from specifying the same reserved privilege id', () => { + const feature1: Feature = new Feature({ + id: 'foo', + name: 'foo', + app: [], + privileges: null, + reserved: { + description: 'foo', + privileges: [ + { + id: 'reserved', + privilege: { + savedObject: { + all: ['foo'], + read: ['bar'], + }, + ui: [], + }, + }, + { + id: 'reserved', + privilege: { + savedObject: { + all: ['foo'], + read: ['bar'], + }, + ui: [], + }, + }, + ], + }, + }); + + expect(() => validateReservedPrivileges([feature1])).toThrowErrorMatchingInlineSnapshot( + `"Duplicate reserved privilege id detected: reserved. This is not allowed."` + ); +}); + +it('prevents features from sharing a reserved privilege id', () => { + const feature1: Feature = new Feature({ + id: 'foo', + name: 'foo', + app: [], + privileges: null, + reserved: { + description: 'foo', + privileges: [ + { + id: 'reserved', + privilege: { + savedObject: { + all: ['foo'], + read: ['bar'], + }, + ui: [], + }, + }, + ], + }, + }); + + const feature2: Feature = new Feature({ + id: 'foo2', + name: 'foo', + app: [], + privileges: null, + reserved: { + description: 'foo', + privileges: [ + { + id: 'reserved', + privilege: { + savedObject: { + all: ['foo'], + read: ['bar'], + }, + ui: [], + }, + }, + ], + }, + }); + + expect(() => validateReservedPrivileges([feature1, feature2])).toThrowErrorMatchingInlineSnapshot( + `"Duplicate reserved privilege id detected: reserved. This is not allowed."` + ); +}); diff --git a/x-pack/plugins/security/server/authorization/validate_reserved_privileges.ts b/x-pack/plugins/security/server/authorization/validate_reserved_privileges.ts new file mode 100644 index 000000000000..0915308fc0f8 --- /dev/null +++ b/x-pack/plugins/security/server/authorization/validate_reserved_privileges.ts @@ -0,0 +1,20 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import { Feature } from '../../../features/server'; + +export function validateReservedPrivileges(features: Feature[]) { + const seenPrivilegeIds = new Set(); + + for (const feature of features) { + (feature?.reserved?.privileges ?? []).forEach(({ id }) => { + if (seenPrivilegeIds.has(id)) { + throw new Error(`Duplicate reserved privilege id detected: ${id}. This is not allowed.`); + } + seenPrivilegeIds.add(id); + }); + } +} diff --git a/x-pack/test/api_integration/apis/ml/index.ts b/x-pack/test/api_integration/apis/ml/index.ts index bcba156a64f0..4e21faa610bf 100644 --- a/x-pack/test/api_integration/apis/ml/index.ts +++ b/x-pack/test/api_integration/apis/ml/index.ts @@ -9,10 +9,7 @@ import { FtrProviderContext } from '../../ftr_provider_context'; export default function({ getService, loadTestFile }: FtrProviderContext) { const ml = getService('ml'); - // ML tests need to be disabled in orde to get the ES snapshot with - // https://github.com/elastic/elasticsearch/pull/54713 promoted - // and should be re-enabled as part of https://github.com/elastic/kibana/pull/61980 - describe.skip('Machine Learning', function() { + describe('Machine Learning', function() { this.tags(['mlqa']); before(async () => { diff --git a/x-pack/test/api_integration/apis/security/privileges.ts b/x-pack/test/api_integration/apis/security/privileges.ts index 77293ddff3f9..9bec3fd076e8 100644 --- a/x-pack/test/api_integration/apis/security/privileges.ts +++ b/x-pack/test/api_integration/apis/security/privileges.ts @@ -41,7 +41,7 @@ export default function({ getService }: FtrProviderContext) { }, global: ['all', 'read'], space: ['all', 'read'], - reserved: ['ml', 'monitoring'], + reserved: ['ml_user', 'ml_admin', 'monitoring'], }; await supertest diff --git a/x-pack/test/api_integration/apis/security/privileges_basic.ts b/x-pack/test/api_integration/apis/security/privileges_basic.ts index 0b29fc1cac7d..1f9eac148b30 100644 --- a/x-pack/test/api_integration/apis/security/privileges_basic.ts +++ b/x-pack/test/api_integration/apis/security/privileges_basic.ts @@ -39,7 +39,7 @@ export default function({ getService }: FtrProviderContext) { }, global: ['all', 'read'], space: ['all', 'read'], - reserved: ['ml', 'monitoring'], + reserved: ['ml_user', 'ml_admin', 'monitoring'], }; await supertest diff --git a/x-pack/test/functional/apps/machine_learning/index.ts b/x-pack/test/functional/apps/machine_learning/index.ts index 143899a61ffb..47c699e30949 100644 --- a/x-pack/test/functional/apps/machine_learning/index.ts +++ b/x-pack/test/functional/apps/machine_learning/index.ts @@ -8,10 +8,7 @@ import { FtrProviderContext } from '../../ftr_provider_context'; export default function({ getService, loadTestFile }: FtrProviderContext) { const ml = getService('ml'); - // ML tests need to be disabled in orde to get the ES snapshot with - // https://github.com/elastic/elasticsearch/pull/54713 promoted - // and should be re-enabled as part of https://github.com/elastic/kibana/pull/61980 - describe.skip('machine learning', function() { + describe('machine learning', function() { this.tags('ciGroup3'); before(async () => { From 3e4469c99c28f8bb1b517bf2ed41539af73f4ffa Mon Sep 17 00:00:00 2001 From: Melissa Alvarez Date: Wed, 8 Apr 2020 13:13:40 -0400 Subject: [PATCH 32/36] [ML] Analytics: ensure both keyword/text types are excluded for selected excluded field (#62712) * exclude keyword and text types of field selected for exclusion * only show keyword type fields of accepted fields for depVar * make excludes field logic generic * fix regex to ensure escaped dot. reset regex and mainfield * ensure cloned jobs get correct excluded fields * add clarifying comments --- .../create_analytics_form.tsx | 2 +- .../form_options_validation.ts | 2 +- .../hooks/use_create_analytics_form/state.ts | 52 ++++++++++++++++++- 3 files changed, 53 insertions(+), 3 deletions(-) diff --git a/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_form/create_analytics_form.tsx b/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_form/create_analytics_form.tsx index e5f30a50ed8f..0c83dfb6a234 100644 --- a/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_form/create_analytics_form.tsx +++ b/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_form/create_analytics_form.tsx @@ -250,7 +250,7 @@ export const CreateAnalyticsForm: FC = ({ actions, sta dependentVariableOptions: [] as State['form']['dependentVariableOptions'], }; - await newJobCapsService.initializeFromIndexPattern(indexPattern); + await newJobCapsService.initializeFromIndexPattern(indexPattern, false, false); // Get fields and filter for supported types for job type const { fields } = newJobCapsService; diff --git a/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_form/form_options_validation.ts b/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_form/form_options_validation.ts index 9c0bc69f4b41..4bd03fec7cc7 100644 --- a/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_form/form_options_validation.ts +++ b/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_form/form_options_validation.ts @@ -10,7 +10,7 @@ import { ANALYSIS_CONFIG_TYPE } from '../../../../common/analytics'; import { AnalyticsJobType } from '../../hooks/use_create_analytics_form/state'; import { BASIC_NUMERICAL_TYPES, EXTENDED_NUMERICAL_TYPES } from '../../../../common/fields'; -const CATEGORICAL_TYPES = new Set(['ip', 'keyword', 'text']); +const CATEGORICAL_TYPES = new Set(['ip', 'keyword']); // List of system fields we want to ignore for the numeric field check. export const OMIT_FIELDS: string[] = ['_source', '_type', '_index', '_id', '_version', '_score']; diff --git a/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/state.ts b/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/state.ts index 01a39d2ef9f3..e121268e65e8 100644 --- a/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/state.ts +++ b/x-pack/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/state.ts @@ -8,6 +8,7 @@ import { EuiComboBoxOptionOption } from '@elastic/eui'; import { DeepPartial, DeepReadonly } from '../../../../../../../common/types/common'; import { checkPermission } from '../../../../../privilege/check_privilege'; import { mlNodesAvailable } from '../../../../../ml_nodes_check'; +import { newJobCapsService } from '../../../../../services/new_job_capabilities_service'; import { isClassificationAnalysis, @@ -158,6 +159,55 @@ export const getInitialState = (): State => ({ estimatedModelMemoryLimit: '', }); +const getExcludesFields = (excluded: string[]) => { + const { fields } = newJobCapsService; + const updatedExcluded: string[] = []; + // Loop through excluded fields to check for multiple types of same field + for (let i = 0; i < excluded.length; i++) { + const fieldName = excluded[i]; + let mainField; + + // No dot in fieldName - it is the main field + if (fieldName.includes('.') === false) { + mainField = fieldName; + } else { + // Dot in fieldName - check if there's a field whose name equals the fieldName with the last dot suffix removed + const regex = /\.[^.]*$/; + const suffixRemovedField = fieldName.replace(regex, ''); + const fieldMatch = newJobCapsService.getFieldById(suffixRemovedField); + + // There's a match - set as the main field + if (fieldMatch !== null) { + mainField = suffixRemovedField; + } else { + // No main field to be found - add the fieldName to updatedExcluded array if it's not already there + if (updatedExcluded.includes(fieldName) === false) { + updatedExcluded.push(fieldName); + } + } + } + + if (mainField !== undefined) { + // Add the main field to the updatedExcluded array if it's not already there + if (updatedExcluded.includes(mainField) === false) { + updatedExcluded.push(mainField); + } + // Create regex to find all other fields whose names begin with main field followed by a dot + const regex = new RegExp(`${mainField}\\..+`); + + // Loop through fields and add fields matching the pattern to updatedExcluded array + for (let j = 0; j < fields.length; j++) { + const field = fields[j].name; + if (updatedExcluded.includes(field) === false && field.match(regex) !== null) { + updatedExcluded.push(field); + } + } + } + } + + return updatedExcluded; +}; + export const getJobConfigFromFormState = ( formState: State['form'] ): DeepPartial => { @@ -175,7 +225,7 @@ export const getJobConfigFromFormState = ( index: formState.destinationIndex, }, analyzed_fields: { - excludes: formState.excludes, + excludes: getExcludesFields(formState.excludes), }, analysis: { outlier_detection: {}, From 56fa9a5776631ad1699393ae323f9e0ebabb117f Mon Sep 17 00:00:00 2001 From: spalger Date: Wed, 8 Apr 2020 10:17:05 -0700 Subject: [PATCH 33/36] skip flaky suite (#59030) --- .../components/load_mappings/load_mappings_provider.test.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/x-pack/plugins/index_management/public/application/components/mappings_editor/components/load_mappings/load_mappings_provider.test.tsx b/x-pack/plugins/index_management/public/application/components/mappings_editor/components/load_mappings/load_mappings_provider.test.tsx index da4b8e6f6eef..95630a698184 100644 --- a/x-pack/plugins/index_management/public/application/components/mappings_editor/components/load_mappings/load_mappings_provider.test.tsx +++ b/x-pack/plugins/index_management/public/application/components/mappings_editor/components/load_mappings/load_mappings_provider.test.tsx @@ -51,7 +51,8 @@ const openModalWithJsonContent = ({ find, waitFor }: TestBed) => async (json: an }); }; -describe('', () => { +// FLAKY: https://github.com/elastic/kibana/issues/59030 +describe.skip('', () => { test('it should forward valid mapping definition', async () => { const mappingsToLoad = { properties: { From bfdccfdbc54f98e0c41cfc22665c5e424ec462a0 Mon Sep 17 00:00:00 2001 From: Nathan Reese Date: Wed, 8 Apr 2020 11:22:52 -0600 Subject: [PATCH 34/36] [Maps] Show create filter button for top-term tooltip property (#62461) * [Maps] Show create filter button top-term tooltip property * add missing imports * update import for NP migration Co-authored-by: Elastic Machine --- .../maps/public/layers/fields/es_agg_field.ts | 2 +- .../layers/tooltips/es_agg_tooltip_property.ts | 18 +++++++++++++++++- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/x-pack/plugins/maps/public/layers/fields/es_agg_field.ts b/x-pack/plugins/maps/public/layers/fields/es_agg_field.ts index 65f952ca0103..34f7dd4b9578 100644 --- a/x-pack/plugins/maps/public/layers/fields/es_agg_field.ts +++ b/x-pack/plugins/maps/public/layers/fields/es_agg_field.ts @@ -90,7 +90,7 @@ export class ESAggField implements IESAggField { async createTooltipProperty(value: string | undefined): Promise { const indexPattern = await this._source.getIndexPattern(); const tooltipProperty = new TooltipProperty(this.getName(), await this.getLabel(), value); - return new ESAggTooltipProperty(tooltipProperty, indexPattern, this); + return new ESAggTooltipProperty(tooltipProperty, indexPattern, this, this.getAggType()); } getValueAggDsl(indexPattern: IndexPattern): unknown | null { diff --git a/x-pack/plugins/maps/public/layers/tooltips/es_agg_tooltip_property.ts b/x-pack/plugins/maps/public/layers/tooltips/es_agg_tooltip_property.ts index 24011c51ddba..acd05475f976 100644 --- a/x-pack/plugins/maps/public/layers/tooltips/es_agg_tooltip_property.ts +++ b/x-pack/plugins/maps/public/layers/tooltips/es_agg_tooltip_property.ts @@ -4,9 +4,25 @@ * you may not use this file except in compliance with the Elastic License. */ import { ESTooltipProperty } from './es_tooltip_property'; +import { AGG_TYPE } from '../../../common/constants'; +import { ITooltipProperty } from './tooltip_property'; +import { IField } from '../fields/field'; +import { IndexPattern } from '../../../../../../src/plugins/data/public'; export class ESAggTooltipProperty extends ESTooltipProperty { + private readonly _aggType: AGG_TYPE; + + constructor( + tooltipProperty: ITooltipProperty, + indexPattern: IndexPattern, + field: IField, + aggType: AGG_TYPE + ) { + super(tooltipProperty, indexPattern, field); + this._aggType = aggType; + } + isFilterable(): boolean { - return false; + return this._aggType === AGG_TYPE.TERMS; } } From 8cacbdfaa5242c3b251ac334c1a31a98da6933a2 Mon Sep 17 00:00:00 2001 From: Shahzad Date: Wed, 8 Apr 2020 19:23:16 +0200 Subject: [PATCH 35/36] [Uptime]Alerting UI text in case filter is selected (#62570) Co-authored-by: Elastic Machine --- .../alerts/uptime_alerts_flyout_wrapper.tsx | 4 ++-- .../functional/alerts/alert_monitor_status.tsx | 16 +++++++++++++++- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/x-pack/legacy/plugins/uptime/public/components/connected/alerts/uptime_alerts_flyout_wrapper.tsx b/x-pack/legacy/plugins/uptime/public/components/connected/alerts/uptime_alerts_flyout_wrapper.tsx index b547f8b076f9..a49468ad3dd0 100644 --- a/x-pack/legacy/plugins/uptime/public/components/connected/alerts/uptime_alerts_flyout_wrapper.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/connected/alerts/uptime_alerts_flyout_wrapper.tsx @@ -17,7 +17,7 @@ interface Props { export const UptimeAlertsFlyoutWrapper = ({ alertTypeId, canChangeTrigger }: Props) => { const dispatch = useDispatch(); - const setAddFlyoutVisiblity = (value: React.SetStateAction) => + const setAddFlyoutVisibility = (value: React.SetStateAction) => // @ts-ignore the value here is a boolean, and it works with the action creator function dispatch(setAlertFlyoutVisible(value)); @@ -28,7 +28,7 @@ export const UptimeAlertsFlyoutWrapper = ({ alertTypeId, canChangeTrigger }: Pro alertFlyoutVisible={alertFlyoutVisible} alertTypeId={alertTypeId} canChangeTrigger={canChangeTrigger} - setAlertFlyoutVisibility={setAddFlyoutVisiblity} + setAlertFlyoutVisibility={setAddFlyoutVisibility} /> ); }; diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/alerts/alert_monitor_status.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/alerts/alert_monitor_status.tsx index 5143e1c96390..b86e85f35b17 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/alerts/alert_monitor_status.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/alerts/alert_monitor_status.tsx @@ -268,7 +268,21 @@ export const AlertMonitorStatusComponent: React.FC = pr /> } data-test-subj="xpack.uptime.alerts.monitorStatus.numTimesExpression" - description="any monitor is down >" + description={ + filters + ? i18n.translate( + 'xpack.uptime.alerts.monitorStatus.numTimesExpression.matchingMonitors.description', + { + defaultMessage: 'matching monitors are down >', + } + ) + : i18n.translate( + 'xpack.uptime.alerts.monitorStatus.numTimesExpression.anyMonitors.description', + { + defaultMessage: 'any monitor is down >', + } + ) + } id="ping-count" value={`${numTimes} times`} /> From 3598b8c44c84165e282aeff234f51417c3c54f96 Mon Sep 17 00:00:00 2001 From: Nathan Reese Date: Wed, 8 Apr 2020 11:24:04 -0600 Subject: [PATCH 36/36] [Maps] fix attribution overflow with exit full screen button (#62699) * [Maps] fix attribution overflow with exit full screen button * use margin-left instead of padding-left Co-authored-by: Elastic Machine --- .../attribution_control/_attribution_control.scss | 4 ++++ .../widget_overlay/attribution_control/index.js | 2 ++ .../widget_overlay/attribution_control/view.js | 7 ++++++- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/x-pack/legacy/plugins/maps/public/connected_components/widget_overlay/attribution_control/_attribution_control.scss b/x-pack/legacy/plugins/maps/public/connected_components/widget_overlay/attribution_control/_attribution_control.scss index 9ebaee57fba4..e319535b4a45 100644 --- a/x-pack/legacy/plugins/maps/public/connected_components/widget_overlay/attribution_control/_attribution_control.scss +++ b/x-pack/legacy/plugins/maps/public/connected_components/widget_overlay/attribution_control/_attribution_control.scss @@ -4,3 +4,7 @@ pointer-events: all; padding-left: $euiSizeM; } + +.mapAttributionControl__fullScreen { + margin-left: $euiSizeXXL * 4; +} diff --git a/x-pack/legacy/plugins/maps/public/connected_components/widget_overlay/attribution_control/index.js b/x-pack/legacy/plugins/maps/public/connected_components/widget_overlay/attribution_control/index.js index e73a51ffa2ce..8bad536b3924 100644 --- a/x-pack/legacy/plugins/maps/public/connected_components/widget_overlay/attribution_control/index.js +++ b/x-pack/legacy/plugins/maps/public/connected_components/widget_overlay/attribution_control/index.js @@ -7,10 +7,12 @@ import { connect } from 'react-redux'; import { AttributionControl } from './view'; import { getLayerList } from '../../../selectors/map_selectors'; +import { getIsFullScreen } from '../../../selectors/ui_selectors'; function mapStateToProps(state = {}) { return { layerList: getLayerList(state), + isFullScreen: getIsFullScreen(state), }; } diff --git a/x-pack/legacy/plugins/maps/public/connected_components/widget_overlay/attribution_control/view.js b/x-pack/legacy/plugins/maps/public/connected_components/widget_overlay/attribution_control/view.js index 161b5b81c125..8f11d1b23376 100644 --- a/x-pack/legacy/plugins/maps/public/connected_components/widget_overlay/attribution_control/view.js +++ b/x-pack/legacy/plugins/maps/public/connected_components/widget_overlay/attribution_control/view.js @@ -7,6 +7,7 @@ import React, { Fragment } from 'react'; import _ from 'lodash'; import { EuiText, EuiLink } from '@elastic/eui'; +import classNames from 'classnames'; export class AttributionControl extends React.Component { state = { @@ -86,7 +87,11 @@ export class AttributionControl extends React.Component { return null; } return ( -
+
{this._renderAttributions()}

&%3;cZTYaU}5&3LV*?qDac`_MRlIDB- z0s-nBn181txF5r`G&8bXY5JgX4N3o5mT>Y>x7qyJC6Sx01~t76#R_a+l!0t}FZ&4! zPh}tAYi@PR1mALc7e`fsU*AZ9VxZRjk^~XnM4^cke9A!jt23;J2*~B1dT&{9mX%X1 zsl3En*^QZat|ZU{)td>6rcu85$eA!>#Qtb4$EIbduT|#Q48F2o=F`)nrcYwXB5cUfoVm3Q zY!(NCqOSAlYCp)E2>Ed5M0HcWEnh2)6KFrsOI9i#wRmud9m8~}58fC}Yy@c!CM9Y} z&wF}JzBasn+gyZHNN8xji%%dH&@~!&-2E=Jsryw6-T-*KJiymQU0$#_S2`5h9o zc68`ayDlTS`P?G;-tB(H6HMgR$3yEiYlEQq?(W!--WzNqM3*n{%&6VF;2hFR^mFp= zKca$`2b3bUwG-Gg7pF_8Q#{1PIVS*VL zSERXu*nmfWB#_XMitY5WHfKN0N9+Odhd9XQlU34-CZ~e#ipt8TK@-C6Lu3U6tH9bA z*%KS~`v&_igKOUyvz?CK_?L03M~C+fOtkn2wo5srSo?yKE0(#LB%^Ql!_(AjTGL-> z|HuZtE@%lP;LrgRlat(X@vr-uax%)5bV~}{3O%MQVbDYhk}FE`5Rz2Hx}#r&19V*L zoYdR{$>ovCqi0j2^NEE5!dWKw>J@;n`VE0e`}DXt+U7LW;Qg!h-ZvxaKnZN5@G`!r zwayo%Uqmf>cjtOqe`z!by*yV8^;VQ7l-FM{h6rpF&MhoFZ(MFD#l2TFcOVtnGg3@( z?c(=8tOT*m0eS?7%_qL|e!Er0-1OvnBK6Pw?x$>hQEa@LAmQHUTIb3(X|-E~OUc!I zRNj>`_6lhV>rTM{0rK?nL)wFhY3C3J)V-YUu4!9tK;?9XLPv?^*AXA!$F~fS_=JGR z*q2%=oFW-ykM`r{MWZcCs@x1_zRE5_F%H%fy(Dqc2?L^aCTxZ~Pv%MxYc?U#eRv9O znzb8T_2PGZW`ugJ#NQ6->4L0L%foq+(U}Rjkn{csG%R@1 zF&5UnD~*xcKu+Rpy>Myse(K>)SrQRXe8#X2)PdnAR=!0@^>m3VSJyDACA`59J)JEXr`!kcb^ma+`* zU5JUN*^c^YUA}j0TQe30+wN|QqkTFAA}Giukm+lyB}Z?1{0|JgfM%8s9px3;t4Q5>Ld&7-Jr>DQF zpKNrO&i7Ob?sOY2+)!0kj-nQi=fe2mgAg*x-on&U>j$u1)Z)i%v;{@AsasErBPDsY zz)#J++pd;%t53b!fG$o?+e^;An|&sQ_dIONJ|}Aq@%jddAgRtG4tymrlQcRZsk?|z z>;pesTdzGr8_eO2bw**dl~$T3+bsA4{td|eN;!>G<0Y|GEcTYTb2Enq=%}HAfIj1R zB+nxqkwdj-_!uGXy*sExumXt5Y&)Bd6bGnrh#^aE|a`GI|xZk(x&zP zQ*D~suLrB8i)3{nR5EN2%6#6hFD)YR+xT(+#SptOYm|AE?9K!Q6?av@iFhrA?|WwE z->l5*Sa~>w7$9YdkTa=xP?L;KQY$ZA2TSwA(Qsox33V<~kqt`oIE-J+HBWT77UD$c zlXidzSAc6=dPA`!!6$Ps&2|zdOoF;;ByIc&*Z9l?%o5Uf`+*?$X&P*TdPVl+naVui zWw1{<3L{awPU?H64QEF;Dk@xR4J)5W-4lKmljJ*gYUjA?NpyKXZ-N1uquR)5YHp9V z->JYdxBekv_U^g2-#wQ^C6GmLji3LvgI{SN;=?JPiV7iAtYvpskPsc5s#ihnjkpb_ zHr)2lye80Y8qmm3ITVv{ZCv)-_U-LKc~cQj6Fy}4eW0{iSPWr<^DOOQ>o;!K=Z^?_5lK2Y=xf4xZo6w)5|8J1fanV&!&+J7;9 z42c_?-&(TJfKLreGjSaEg_uO;_PzCp}YLf*&td-rJ zfYC^Opkt$#BXL2=ks<7<=^ywF!ey}|8e%-@l^l)|9D0uDWeiH%1ZXmCRtfUk*#o$ znHk5yNs*B3y$NMxZ%3)@oq3LPWX~h>#4&zP*Y&=xdcQx_@49{a>!ote>-Bm*AJ50U z-|ynXMF_NrL3N&`>QWgsA&uIEwF(oT-(gD@Hf*43e}S)Nu4tmKMX0OQLTmKF26G!b zZQ5MtHvS^xIbJ0tU6eKD_FgjCaqQZOF*Eb1klrmO zZN@%d?fM?#(_Qz}$QHEL>aIy~ccd^Ck?s5J`W_rOZ@BxiifmS;bcUi2Q#XfWXCk=d zL06~ok6j(stIpU1(hyD#W!Zb*1HOoeZPpbQMBhoMI^dCTO(WWMkTPYM|K!0rm4cnp z4*wpEDdIE!!tlLeRTjF->k1KhjH(g9SP|yILLkbAA1v*9dOD&CtI++P5e?~&`-5A8 zX(kTVI2+z?`ceelpA9*LS@C~(IE!fN@9)1FE^`oVBxBuu9$QYb=eN0*>v52FxEr4A z`*8kJwHb7u*P!A}ef+>{&a7EWs;ZCj)Qjq1*8px5{^qEZ&9Ba944yji;B>vd$9U75aqI3X77>1QHidX zTi-4G&b0fRLQ1owau6AXDISWj#x`OZ8%WWYJ5C<%xoJj+Zn@F1d}U>|XPzBz7!?s+ z+GTcZXy$`{%RqE^AUk7tE5ApSy@3@K6hvZ-VGTx}69o9$fig(ps+RuK*8U>8!D7VP z8ONjyt$F9Ki4wQUI_++?H2WP^UBri^?YQgPnuZ%`Dl4A+ugho}Icbk@SoOr-Hm`nWaGJkq zv%T=*#a*3SujYo1Yt3J=0wSnj26wSabqTN$30Gm`v%*i(piGxY-qmq`*XSI5;Oe=< z;MB+)bnsmsr)--B@zBA|fQJ5w0tgfQHf^u`H*!DsO4Q>hfQDx5lJCK7-W6NhS+;#Z ztSL*0MfF5R=3wWp<5Bhln!AhMg^N{UYJ|xQ8fY&Z(FP{e>puQ%vC}IsXN)*3dTIiH zM#T$^_Xc9`qV#_s`5%b}`0>=8iB&(pkH$|oAW=*6%dc|O@q(<<0pzcda zEOqMcExJL9AS7nG-BO3t5|hsrmH3Gt2Ch3H_Dz}at9$8<$=iwf>Uh}F3Xr_PxpwW6 zCQPg{C$Ox?aEurUXUVNi3v0QK4q74@+A?W%w685_NX*izj4m6~k9=!?>(olh?7Qr^ zUGJ*pnd^R;pI_e*KSkj(Btbj6>)I)p{H-HPN%-~K_u#gsyXy`oA@Ah&%W15zL#`-U zu`%aLDHxCndqL9tHtn?0Ve=XCt}deDV8~rFB(+1Sm#NFzj>~(cIAqa*PfNr4pgso3 zvSZl>UZ3wc1CbNeMMPQoI#jjn{s?syX|5y+srBnX10a~kOXCFYo1GiQ)$kQ2?a<|S zgsDpK4+$s+t)5!OE^Vtt8>GpRRLe8l4R$b)II9r+DFw{ zZsUyQ6*pPpJCj_!QG|Es-2*}C>bU2)fiI}TR0bblT^xCaUWA5jHr*ZH+1Y^lE!D=z z(nzh=2kgxuw8s*0=tET|ze!t$Y3#tq6ra7|TofkRk)7s5Xhf6tX_=9i*XNSeA1QB= zS4bHcBnUZS^{`%X|2p*7dq^GLJvPU0zdT*@g~zjfb3s>$nf3Pehy$(HbYF|Z@NWHK zBQ)3-tr&Ce95)c)+3)A;?_1wQkS-OAv)<8Nq`;&s7at#W*H96ys72>-Ka2~yCbwhQ%+EqN#BZa^Gc)|wj4I7F1R%_RYAC|v zo}1$GWN!&`Sn~e6zNx!Ot1N%beEln0kt$IGBtK&Fdd)28st7JZ+3rYm8c$PnCSunf zPxqT0-YnW5*Yt?-+uOL^r()hmp8rxaniz2!zM|N*`hbw_r5x6#<`5pVGIk1{CUAAhKi!Lsw!*Xt)W8 zdq_W*KBqqFpw46<4iwMFC)HG-yyjq~!>M&@IuA0JoRN!j=3u-bZ>}8U znIrqUwj|dfh9n=c*UpeBeo|W$;Tgwo zb_t{o-^7vp;WA?jA7t&s9&$FB^pJwa4U*%EN6|i`-hCk%KcHu#W7_z^Ddm>%u91dQ z_Q4EUL)LS~jSk(FE5;0t0_qR#mH<6#qnjV6R;ux}bYDe>5J}=dBYBm&y3NRqnf{LA zg{q~(S^G;zb-0}#3p5pZs^8ahJKvhMEty?qxnyKC6B84c=e--#l1w^x$QvG6WxtRa zwvzP=+TW!0pxMQQf)&44IkKlxS|Xtx6(4;C5cxfW>V}pvt1x=S&s#@4k-tXJUH)v~ zKHZ<3mD)s#C%S5B95%;n)xj&aRCR_Cy$4ht0WIimHl{LbbfVU-_$=&{ejkr}V!|G9 zz>(ktMikiB9O=St+J4F;*f2cU?;+hq8Q)iE+}oYpm_e0k(>6?)8Qitvf1s5nt2z0= zLa`{9mO;)NahOEm(s^qGRxxlXizsf~b-1v!wo(ts%dnL|kWnYe+2rK-r)7!t9#S@% znw!*=_A>?W4PRQ=`o2qkc9`c|Pp98UNGU&;!PUe<*WL2`%&cQJ61e4o<>v11du2Ni zpaK)nGx;j2HoR`N5~yO`z68iP#|oa&Z!*!&b!~fr0zED4)=z<_zWG~T@iL4;N@3$> zds6qbf9jmv#uJ8#B1|6+2^IHR4z?yO=L@5ZpC_bmYTVK@YE@zOgPggm!ZeT+22(Mr zJ5tT6+_LdnMxc{?MY+pJ@`JAK8sWN;PUjm8#;TSZk=^SRZOhou&Ky|%Ui;GaSELq^ z6_}8j=_qboE8I>(yG4af2QC#whVU%_Y3)Tjrx&t59l)#1T#RxsC35CE5lTxSqmr3* z$)?HMZ)VT6hjM|ckBY3^M!sf)?xeA2__${TH$U?Zt`^F&* zp04`BLf_R|1Sd-DYbSGLp1))psMa7L=eZ;SiN__tNUF}1BQh#GI$Pi2(+Nn4C>%X2 zb4ciczTSyl5CPPHB+S|bHe|oLd(e-2NrS@H`BcAlZ*}gv`WiXv+&t>&jCbDB{%NW< zfOf<^cLfzwTU$H5f|GTdBNZy?MA?i1;IUYW-4m~r{-GhPMj$9;@o=5caDxkL%Z;v5 zrkES%>NsgMe*fS)^P0hL=^)iJc1QMba-Maj&rjxx#+Gx21j z2V|Jn#D_?+(Z1V!wcjq*tnI#Csfliyk(6`Yr*i?F(bkG#CgVg1xa}!oUj4m+=<@lx&~z^ z?KilVJ=ds3j(2Et;&2wePg@%XGa9wsZz*)+L~WzV4!!GM^w`?hmDhQmTP^usoTa|v zJ&R#N4tdrjY#(4Cuu7Aqdf^htIM&fb#m^z}Frm$HLt8t}V~EuRl5kMm(TQ{ORL_-_ zl++L_;oCr#>y8Z*E83U29~yLM2GLa7H*^(kj}Vsm21!jcxzCzxb0hZxFzB<6q6jNR zgO*|<$Pc5Wyx{MD5I8S}IPUA!?nPvyNkdF|feem7xrfX@zf13@L}vtFT%;GiK73X9 zx_-qx#psTg*LL9S_wU~cR^yBC`#AFK!a~j0n!K@@lU$082}WhAadG@{+uI&$>grK+ zvm}oQACm6rd>3^)K*OpY=M<(%@aju*TpQg%N%Z(~3kp9Z1mNq^524@mEo1{0AeQxn z!a}BSIuj=zvp5geRJTv-Ck<*I#)yblse-AA9jEI>^R4jc_hdc|<~1hw1L$^^HZgV9 zseYo%@Kr>Q%(etCDyi)ClO6|^#Ps)5 zyBDYm<`Dg5Tb?~hC^k3O`>;HAu>mi1K5h1iAjUc`oi4(Aa2jo zH;}e{Tgj2B(QNKrUF!>xN~JTKTgi*EX%#8wO~U^McBavv$bdRA>XUkQ23v=}-M?@B zpCyC4oA@8Yx$mE|Jp3(_1m%SwLeO(#1yucs$u46x0b^1oJzTECN$mWvotk9t!xXJS z|5SIGAIao@10H=#f!;(DmvgC;&u!`BH%OG%G6= zvI3!VhkREA(#JbSLce{9CfEpFdN8fVeeY zmcaDJX@dWh*iNv59Pq-$^M61=fEEO3^Gv_t=BFELw;O8zE9b9R42b#d`x)Ye&%4`s zk~UT`GBReK`R!}?$6NWwk4?3g1TGPwfP1mBT@b?e+WxQ(M z3`>tbO+Bz^o5nsA00g-|ui5|jfk&T3HNkWNCF}68gj*IEl1)<`#Kp|8R->HvN67hq zhbaED>;JPMetK&2J+e^bF`Ng@b5jE|&Kc1`9i5t+zV}L`vs0a%>mYW+6CUBY;sJG9 zb}1w^RaKsp(@Z)Mf0(WP(^oAY_hx%+~+S z$S$Z6&`cL)@ZFyEgRa(u*q47Th(OW9e%!pqE%?iqe0@#Z=VIJT?UlmHJ>72J)Tz&A zYZ+Zl6swmcjCv0Jytp;Ayb@N(EA~!?pBJWD*M~;)@$&LUrplIY1(n~{`)OhRxPhME zgI`HIl}PWLt;VP=wQ$Yr;M4H*!klU7J=)V3;eF@7L%yDL%?hsRx*_-cEQnyJ2)Zs5 zhR@qL@y#4(k6|rklvFwfH-#63vZ<+smSF^8haZ*3Fm;0D&Q1dFR}4j<(9Xoe?^})1 z``Ydv9ye`m6Xspr+(JRxwTYnS{pZH|=@k0=UEfnD;A~P&6P@Shc&)NMW?`LBb8u>B zFN8nG$LkqSao(%XpI=v?sNb^s%VP+MD{&6Z)Wm_h{yk&P5Bq5e;emSm?>NK`-IULmu&BRqLpFRV0@MJpP z{J0-{RbK?JzbTx{oc(mfM(t&I#AfydsZ-bG-oCr=xApz)GsII8CU)tm--#xZej%3N z0L}a~wFYueB^_fCgW9^f93!O7EK*cuxu6UZ%SlW*58(3=mYQ`oG|RcccT#R4`8IYI z`+E%atE!&)PNTGq>x}?g^Z@ zmQ%c&Q{tv?Zu$F_K6(_EQAPowBDwT*3ehO?6(4`DK2;DNnGG)N8Ncq2Tb*S=hq=8XulmY z%rTy8O{y_*nlBZ1FWkY?2H%@$=I7>)19YQm-`c(vneBD7w`W%rcD=?7Pi&8j zJn}k0wPm^}B+hu}ONF|fb=7q4r?ABm{rIo-B3XWZ?4M~YFzRG$Yj$Ye-MP5G1(m;d z+@~~~+FFYUDg`;dX|obIP^KrWiqVaWj_3tAiynK`ip-!ZJ5MNc?}80k_Z*cVusK1r12@ayoh2qsF ztjD%q$m#E}er0?w`0}a0_=C@QuKu0~lKqAB6KHuO8cRD_S3&wsYdJgg5NiqZW-tJC zT_dR4CGAT3G|mu`k8|B}OG;AbQC+nb?)SN7N*t)zgeMb{NszPHO(=Vhon^M3rnY9- zO%bN zpC-&G2nYMEnRR0SV?w$SgT0+Bbau+hX+mf`NzNUujZEx8f3uG;rF?El02ck^wfD;h z7(vznNN47&I9~23WtwtXt93RtP0h7|VOr&Yk&d|HSAfvOpt1e~-!MO@m1;&#Pk&3O zLXIIF@PH-&;hR9m2!9j!@)6?%_DXb2ocaTu%#WV}naG-K#hKDl_-CgcVMf3i_1m-V zzyEMqt%>YLzr}WvSi)b^-JRoJuuAu#zPZnV%2G*@k;_J1n^(x(JhoI#)aT-fYjWe0*iVw5 z9A_Pr5|)yZRKi#v@lrKtxp}&SR}^-3n)dsk@bCMdKf*b1bxN;^?79n4lty}_uJ}l! zP53dw_k@jPm$F1Zz%+xGzsae%vFYjPh`B)1%JgP>ZcZ(P@hjNtNyJJB}t90pWTx zMTqj9^!!3Q4MLPfrUe^d)HxjKw14>UO@qV(FujDZ08s8^r^g#$h0^=0eGc26Yn2c8GyOn2teVl0@^4T@5wjC`3Afu9IY~d z@=cmUAXP|=u#j=wqU@`Hk*1p3IYx=}nwn9E!Lj~DEmG~xk6W&^ zU9yc-a_8~TNsvIR6lCcQCL-PvjjQpkz>iMO zA7e-`q9@5IZ$2T3i!AvIo3zO-@S19ZJ|1ZUR@48UusvsD`qv6BdVgbw-Tuh9xH2)5 z60G4#H@Ad4b5rkb94C%w`TRK$)zRI3+Mu@l3;zYQZ63i~7$o`_tiYI#`_rdSV$Ns- zEFRU{%aYR(tLCX6=TwnWxi6CF+i9`$;+&Af;vF?HamY2LfYlW9$GP2JL-Jm^Zf=i> zR^3g@n)Si1xq9_#@+aS(+Em%a#YHv=_D}X@)tF;2#Oe6oH)Z}Fc>ULqLE(k?_@1tE z_(b4!_mo$Z{Gg-A!KR-LIBl+5y*XWBnpgYsr4|=2FHINF<4Cxan4kE>zgWJGjMz!& z{d6NhBJ_Ce{!5$k)(=LZ0ML<*K0Hib+)>dBqA<4`spdhGxh}p-`LgTZra&Z zhpxlzj`#3$n+#byL(T0ft_UjZof;F2OzisWNdt{-u{&h@lpv={ULXVDG z5q-h8-(x(T2bz+x(L6DyqYRA7n&#%_p4oMm-llvW7EJ%F@RSb?FK<`rmwFXKbw@`> z`McrKF~>3XU)LV9v9cj%c1fb2M)%%Y6`7&?mEQn; zR2y4c!MS$5ksvMIKOMPnXTnrxauo{$09(=E@gTw4U*qNK|aWc17mc4G5O+*XO@vBBGY)aPipscAST1?l>_T(2*W zprrcJ4cat^+;ZokN7hE@l-%pT#WmYNO>4b9n)_vNP~Ad4){_D#NqI$nydkyP!jvz# zTH_+T=&$Rx2?x|B8|bc*y8r@xnm&SspWmsgixxfMH+}$G_j{$4;vypPIG6An35S}g z%P@XBGb^iuVr_u+?w!lZ=eicM2ZsNg9CzotbmVON*>=7LG4E{`9uXn-=Sl^A5dKBo zr0E*fy@uMMR3tTY+x5H0&7QW|X-jpta@<8zKt*{CJ|{W$x`oEBr|)#j`3fh^(-}(m zqM|pkwz|15IIPlty^H=j_cMq;OE;N#-sI0adrmU~i1?_5)!69T^10m6A6C72^936x z=jf@SM~^uC$D)Bj*g84IL82B^0^shZ&Ckj-oc&)?>Fj;Oj3yxli8_7I&r z=vYD0AVq)$;RtmaCI5=U%J%*n__mjaB^=$kJ(jyo6Te_Wv`#Y_Q1-EoVbS7xz%r4# zeZirMu@gO4sv(bNm?kv?gB??9I?G{`Z2YgdXfH6pYj-8{#mVRbrJ78_IRMRVB=D$k z+y3YDuCjU|BpG&X?d|1i7wTOV535SwT(z0G>Ut1&499Z*>L0eMd6>W7=F)|->7--k z6gI^L1+jWG(?(8&Fjvx1;W@ctCqU%t;n{Fhe+p@ZJTUVDgQQ~F*N>r*& z7o? z3mFK_%*DLNO&3aq+5owmrEA%9$g|&U{Hcp)|@JrHa*lMq6KTEZgk3EwCp`Cu1&i4fU>F}fxr zjHGyt6(GQra7;kUUqIN0ap6vVfBtlw$tk>RvS`(6{0t*pzO39%e$P2}dV0cUmm>;h7wmN-sdGh)TmM1i z{xVzQvawbZ-Wf{-`(?p*g8NleltXuO%#I#lKzWIg7XI7$`L~FN#oxcUshZr`(?ct$ z#XYdqeep5VA>mpum(HswThH>AQ#QtZV{8&@YLOR&C7ncJJsJr@?8JA%zYGnwmFm!Z z!Rorn+InP?-3-T(`+FwZ2-M1w7}gVD(VI)&dvERZIspIh0(Oz!hE~xr?$s-E;ck6B zJ(8^q|*llRO{KK1XZXo-P2b85tNe!7R zH!YvMhKo*2yei1?RiU~cv+lff8e-t>T`O~V$D%uG;kISMZK?sC0g{2^4lTDPmX3F{ zI4{}L|8Bj_tB;GNO4wG{U5q$T=3IPy!y`qjB}v{#=ZyycRcB8-ccZs%iI<+gMH*V( zjD*}}?vP)+l9Vs==3cf4OKU@Z{wPT`Zj;#B((??&pJrSJ9TJw3!dPml*7nZYcGXGz z*@#6-N`3Q^n27Y|P+UyR zC>wdBI;ZB+VhFRj%@gk&Ce3bLIFq5mU0faVM;Q zZUH-Snf?nBMvOKK|IXu{}(*2#!M5qpVu$r2hk+woA z&rYs)cXTY_9;B~sPfj(ABJ~p|)`o`kFiIYVWd%#0q#bh4bgef!zyFZ#VW*qX5(z}7 zz9;u;pc+0;vg7YZZj=rTor+l=4OyeowI5LYkxsw90)5Dlo&O_txh zMS#_kuO09(?~wt5eN)4C@Sreq`edw=t?infxUsNzGT`~%&VW5sE}D&nIAYEioLIa@`qaJYO$)Cc1j{_4Rqwc_3$vjmmd0W9L`ufUaP&l(0-f5J#4(#`7v< zf1^8o*G4>8TBJ?I-Z(j%jXhzZ*9a>XEW0fEx~F=ix;HHEC+(hp26}Mc<0qU~iTxvh3h_G?H6Z3LmWN^3cI<9UNSPPw zhyuK-c{ZgO4lo#%-Og5@SM)|q{Fs}1kc8Ydt5QD(#JNAk)$pT{xuBW*U*(BKs%uAy z?+%wIh29*8$0gOvl)HPL&VEZ}mqj}TB6Uk8C8b_5>MkX&TuVzxYx|3s?g9}J5mlg4 zXK8I+=PudjAk@##Yw%D=x?*?GseVnF`W$2O2d+E4(A+kU3Ky%@%00>T1hT<2lFxV( zViEn3^Ly`_ta)AK;BDEWc0&c}At8N&c4_17PKupBPR$=z8rKLkv)@@h3N{mZev8!L z?p>>%I?Xg$Udtyzx0Xgi7YN8jGMeAqjhQWJ=OKf=>@!dj&ROyjWmJ09umvf&`>Jjr zcLRk+-w)Uowe!h~OkPfdHD+Yoj!p94(<;*j8T}7~_{Y@+CeQ&6Y7xxzUJ#>AlJu_4 z=_0nNidT8-wMjLMt(}+5x-Ig2zizd00~rmuby8nQSa|%CL4pAw3z>p<@9E};sPWo`f0q^Kxe4d%Xn0G?^M1>rlp ztuOM{#~fI6MD&-l!D5Q6v}ezbgajEF7;I;z4(Np&A#-wblQgiw9)1k;4B17M-L?H``bgopVRcZK7h|5cCYtt-0IN$ya6y+TZ3%&4J1`@@s`wy4KM+vsyfRy z>ay{L?PR3+(8}9Fl5V@w(8imFhEB6yjQfv1y*Qw`w>e1rw`Q*YdMXm;BP6#5NOV z*f|q^PR?PI0)?5Fm>8^26=S!=HE2DOrSmCCx=K<;Y{eN&zfGy4Ef_l}BfutFnU?A8 zoM$971TayB`wG>ccz(rB{ahZtyNh2C)_koX3TveF#@|B zWPwX!q7u(q?9BqYx1{4pV(_t*l^(8I_7&5!yWvgqNQl4yeC~W!Ru(&lnDUq*l3kQt zX;V5K5r3e?(R=8cUZ0Mbf2ExG5+eJA!pYl)c7~i?W))C7~UelTX zg=a-KBt%2(4Rvn&Y7Hn?n9i%Ks=lHVhO|z83fYgviDuzVjE(I}+wo`KqV%DQKe|dk z_Qz#)ma)(q*GAc%x3;!^lX9l87(fh{5`1smvJ)=M;+#!#rv7WwzjGp3F(`3!mriu-mRE_ z_ZhAoIu9M#gXx-{_C>61tb)~q4d;FmDHNMg2yn~SF!n0}=>Y}aF>MKwHf@XAC z@J!N7b|s?S#mC(S2pFH3Y9!0TY8SGgU5%UZUlU{$6c%fpyahFhM!;Z1&cL##wRPP1 z++&)F;`hH<*bihjuRQa>xEdpci?(XsSLg>c4?@e>jW3uA0&Tc7*vX zZ5Szc`Xv-d02~Ey=EKZqR<9XW+JtBwYHJM?V|$bHo54n#)1N44$Z3~FxyD7 z!^!00jbg@B2^mKQ5sZo_y@nZv^5R6QMQM8w{qfRp$GqQ96&-^M9C_#W_xr}kEkClW zJ~-u6RuPx|Ye6JsZF813rt1}CF<}je1}#7uN$xzn4Pdm}83~iR13H?O-=E%BXQ6WR z6S=Kaoyp2h5_>IbOGZ*M@fc42!tAe(gnu6n7c!4Uv?xBcsQ5;hSR>PHN%xxGXDaAh15GMYM3y4N9|XBN$0ovRIV z&UyP**yhpoy$PWqQg``3Ay~hYZTiK0D3%aDvB^InNDFtFq-jH;<<9-OY5V*!0maoc zN%uF=v9ULyP-q$x0L1A48W{K4OXHV;69tN`)45{A-0+)?g zd?XWFE5FW@UZG?>$Ns2KFp`>q+lx$1h@I=%#5TcL->F|GXE%VvisfwQ7Q48(K1rmE zX_v?n9@HE)Z}~XS;`&5Z7U;SPOL%|(%^Z!#=un&ocGBsr$*GaD=^now!BD;~FI+== zb~;HVRYY7|-NGUZR^()}?CP45k|MT&_g>PByAt)>A{!tkY08704dw#qb^kQxvwxCu z0?kiF@xxL4<4ReVg^NpVGb0C?t?K095ChVU{5Nk-kA+oMirGGV2uRY9_4-9pQh3wjv#OeEv29T&E!(57CzS1QfOfc-GNuG z+^^olE;qip_`4VQ?(~T}`uZL1G2HvxB1ig0E-rhEK0q1fNg1=ZbV;M8vYVu+=-oH^ z!@CYy85s)HlT$|(^5WFL#gfl2!gFQ@`)!_#RaoY5s^4^}-$|k5E=i4VRhUqvy1))E zrsb(J8hbpOeS7S3(!Wdk09}ykv&$|VX&apE(a*2!lr`n7Zt2V%#DB8x>EGkU|28;o zJdyYIb{5+_$9*-ss8M$MD-fnvS9<0rUoWPis(ND7m+fj)WF(v5$L*`!+&O)gV;Mi6 z{_@jgHlIBx9K*xHA~HW{aCNH3eVHbHf@EDSY@!N(BHwexK0x!|zaTI~Xy#YPGAUdW z^&VD$d1lZ2Ya6C~ehdCMYD=0+LM<^Vai92RT zR7N*ggowX~Dt%t+y#3M)u8sI^czH{ih7i@VijS1}RXBc>WpUK|Lms6GT6njz;G9W| z6=nf}0!`P1?0I%x-n%bCLT&^s|HSM7WSkQS={JY_hwh(|WtWf@qPq5wSlI*&a+nYu zB)8 z(|Toq8}y^QF_LNFCeEx6!T-8(oSr_({xITu)yrczDwtiL#D7k^pZ4&-U4Z##PykA!1BY$6`NPnFDv*(pvW?3kVJNkJ9wk5bIW^dVY%_>a9%ryg|Uk zn7?x8W&b8a@_Fkp;EpWVCs6a}Y!$G57RS3iejf$>qa<)|7+}k?+#L|3X2cv%C*XOkMc*UOK@_X^T-Hb3U^HF{k?7v;3cPPl53E?S94U$iKBI0`;4G=R`0vtc8Hy z!?yTZ%m1p#4CXzrPzdy^X0?V0)0fh5|L|F-Zp$NF6IWBWrRFK??$PSAHo;7M21l%a zV;BFYBv*2d)#&(FQK#n#jeQylLk7q#)}Mz z*(Ld(*q~vN+1bPZ0uo`X^h~I*`qt!w8hi2c#b=Pes<2-0BTVLE@GB;R{?2#&`(S_f zl3b*!yq(sJKibLfN<>i+Ha#o}TjkBeMWBhPb@i=XPPtEx&(6x_9mn@N zqp(~F9T5q?dPZveFNZ&x@&N0L?87hiCw_OTfx9IbJ%}3~qh6#8^Z%MQ-m-bxWOI_o*m#zt%1OZW4aFUhu^) zgG+TlnPKc0ex3>#8{5aW-GSWAI=-J`)hEY+s^l~l%Ir*g(RbvM5OhexQx^3Ry6ShO zxPCX#p>#tF+3`}!er|Ygm*LP{d2!)vcnd2+a#aJrd{jgGoX|83=t#ol*6xfn+|*Eg zRbOumIK~WSyO2lvr5`HI;%NEqy;D8dpZ8n2WMA_MQi^GW7Ip+RH-@vqy^NeL;g@To z#BD0TXBQ4^L z?DuQa^z_GGnZ4rN;W%O59h(GH25K2X_dbLa-$TA4mGp17E2?$tB!U8!z)nq?VRb09 zj;wX$=4lC=LxSa!0h=)V1_#EwgiL9pZl+p%>ztHu&p#w7dO=917mg)0#al zl45pzum(5-YUvgh6bP{4`<{(;y9>FgSAgW_Q5YYp0tb;G3b!ebTRjB$*JPJnIgxf*=0>QQLSPHw7OIm$z2wM%cG@qIypFdMh< zxLA^*bPZybN5%XDIk2CvW)J?$F8_aH1Na(i`ui2m6rV~8M-ZtbqTE}UEsJ5k(&>yo z6a1b)N?Sq&TQ{d287o%$9zl;fSm!Q2V{<6dx}QxGey;0SRZ+~dkl0h- zuPHJj@9LXUzwy4aB+|4$I%isr{E~D=S*mG2ss}+c9t3b9qmXWnOW`oJg_HUB?pnmb z@Xb1)lWhIWVb-3fqh0@|g>Hz?`X^i|Udu=#rcz*ZxS>2_Q7CRb$4od*3&nOL?5W0RKwK z(geG9cHvLttt4#Ua^=Q(+11ro-p%>d;CdpHlSR_Ez>GH}5Cz3KtZ!s#zhY-spBa)H z=ZZ7){^~z$h71&btsPZeeGjRruU{1n@W7y{=2(^Hvs;twvnb&L0OjpH;gZIgnVBf7 zDcJS0DJKCaq}NeQM68Bx8^rqA)mPj|O7imN)7@F~Gjl35MIM`&ZH#*+vkD4k$Z*h3 zSFeU}MY$+adr1qHB2T+o9*{%IpX78{A!GH_Zfcwujr{=#0sN;&j1WM9a_{^+Zo3NO zrM*1@qeXZ_D4&bKrG*JcHN}mmJVzK)QcBw`MfruZ3S@RiqC5;4ct9)kvs|Cw++@a5l)T!?@=Go&;y$Zy8&u=>v?egm74jz{8iELFK2k0CeOfx8?ZFJ zAfpbCO7intNq>S&Nznjeub8BewH7A7MCrp19WL7mxi24|_q0ZOj_;5HWj<$!LnXEy z49o!9bd>8V(fW)&X2hxr?UDO2$wGSXog%7o3O3mS7{Yf?@N{VSH)jOxrxl{1#pBb% zv}w#EPrX>v;q!(rWx{MN(z{nj4HjJH38auX6&D?h!qSeHL1bJM*V{LG>T0&n>_wo4 zW+pmdi14q_ijpNAA#pv%Iu!;#hPx&3MJd`JeXa3pU>RO|metQY9_7~Ius*$K?ZCj; zx13G$G6pmmwrft415Fqw0x%Dm4BO?O8Dnr-t)o&uQUQ>k-=w;f^k)#?DU*r5Luoz` zvXQFR_n2ZWz-7wj^W~Hx3{3H z(3xWW-~l-g-x^8v+#F;Jnr=X6OU+k3zRpl{ zKErMzSL^u)2Sxu?OQ7U=1*XjAQlNp13S9=fi%U+DQTwu0RaH17goUC!Ej2Y2E<%BX zRBv-GE8lxAFGm=4a>J^4+;cH^aEw>$=1t?e(>_B(8z#YIFiiC7fXK3CK?^I>MmmeY z9RjqBVvL2%?+<^<3(-xSX+Dm~)$%Ei07L#eQ;e0EAxmdJCE4A1U5SJ0EJabe!P*N^ z5lc^}{4Q0vyRWaR9N1Ou_nIAE0$Lik)9`C6o^q{#0f(alOd7*r0f0>O?vRmR?Q+8$ zHZn1BvdT1yu6-9s(UiOEa%i7SVl)l#IM}W78?6K+Bte~>*x?<49yd?Vj=EJ}mQ~od z2)aq%nuh%QrK5Aq4z&@>H7$;r1T_0Gv$5yB`Yh3V;00Ojte*rb8Z;{w_?6kV`Whp3 zH@7=}CQprv2(+1fzL)qMHWTh_BUf`ODl|`$lUtTCJMchPD(ZlQW1w*{qCIhNt5VI> z5z_iP&1bE_XBV-$AG^}9WXzSSGoe2xWr5$-%dUOhU6uG_(ixOZSCdxL!SPc04Dtr; zhiI6|&rORvVpb@G?hFpklI!=;2+fH3xn~MMZ@%DokF+vb*1P0h?n9ULsYx=GGBa zNu8W9L}STSF8TP%?CV{9jiH^Ew8vw6SfhDtPppw6-x2NiN{elWFd-{f`W&;QloY#Q zAHx;j-UDc>wV4ll%-v?!th-tsuP+`PQbTiM*IJwJ|(jI>%$<4lclah1&} zc4<4Fn-nos+BL~kv(ABJnA`oGUc55;ua$6WJ#jJ{sJH8VxoAWS0OtnCGlOz7jzIBGvM8sDo7(TjR5ou7 zr%{zo6;_RkTEg;ff|(znj&k+Oq~KdAY0bd;TRyzU}t9^HCV>&jV(E~$sO$E z6-uo{)9l5DZE83;q#XH*(#LASfFncoD=QDZhV6?VYCG*uiu}(JN@T!yRYr9pkfxD1LH&sd3y3XEvSYS7+AWuM-f9)9<^_ zXK2UO+Ob%iUssQ?e7a-zWJap47Ulj^=yHO80?&v~C&CGfD=T;S;#X!!s_j_#2(Vu% z3|{!3)JPR-dzM$Qc@XQ#J)}_&1Wy1r5D>FlS{(w!IIXfwP@hI)pRZmX(`8LtDLeRs zb^RKADrvF-Vh)f)uJ<+{mWP8_?9LHE9Ac(X_}sa-)0<`8aZUa{<7si4y>+q&xS8S7 z@yZP!eG7Ux6;&_Qi36V=vzfgzt@8JC^!~ov3yA2BqFUR+swxb+uKfVNe7-bo{iaVQS6Po~wJ5h5ZRJbP&Oh!IKO#{+H#Ds@v-&WN)1e}hZ82)$g#Y6)8 zbfqfjh<5lIxnr8RC%44+^nH8C;}z?e8iJ`>21h!ZINy~A50cd#GlV;OM(rz;A8#tS zbVlH7mli%@o!PIpBds?R=bRl3eu!zYc-Fn4b^g?b~%S8F$3YQ=P&DjdxKB`r$R z^dZjgA~NH0^LK}RwkpJrI?r95yGFfS^y$8{qqHNp%abKBb358Hv}aMK#?qe-NWLT` z!8&I2P3@k{%54_9}a~Gu|^&!U$Fk2+OW6RwU{5x6F558Z4aW+ zOlMn7@4ey-N^l6es-_m~(ls-8{CJg}8C-lt`)X&LSqjW0&oNJtMYW0Mj^dwsHY@^! zgx>Gp78NPFRl8!=`|!m(-KT9NA89g^k)bnENz41Mh$c$7!aUW_ojYh&kP|$lOY+iU z=!}=ubgVwOnjls&;&Aw7pr>sR(a_gz212jWnb@QR@~7y~N$6@r9SS7d9;4*^jnqP} zH$B=b_7uA;vBxrl?J99Z8nl=CEJuI8N4_ z=(}h~8pK6gG@&Uua}?7fjlVALiU*i>9ywug@@tBQpz@sLfMNj}SVc$i^LpKqVXbIfOYrHQ%8X2Hu`349}szvEpq+DmcJ!HZ7 z2wG$Z$YhP|&~|w)IJ2ItNfCg{6O;RV@8iVwX(!&9&{}#*61C(coU4&)e1-O4(SFpY zOw+-+j-5QU8|m173X-Si|1d`?^n43l#dsrIz`|u7x;Uab;i6iYTJyj@XzD zQA&jp(X=0IXK=ks95cEjH||?S=9^Xrv0WWtcB*S;T+^`Yxwg+HWf<@>@O92>NX6d4 zEOOaN*3qSeZBO_n;i0!%qkZj~eVc$^NcnR0_|W=$l{B@s{!)cig-3mCqh2izsIA)0 z=T3(yhxPRbvv|jGRH4}a$KIRAL)o_f;}N1F-I9={6qQ0*Gucu^S<1eX-PpIWjU`1z zgpfVivJBamF_wgcu?z-dW{75NGb7tzEZ?io=X)>D^W69S+`qqm|9t=OdKqS3b6(eV zoX2sT$MHVi@1#67rSX1b%XdP?TM|^v3c7~C2z#Cf=&6`$T7Qhuenvi@NDLKc>v+?% z6^mUH15qS&2uf=Q%h)5~XYIGUe-MKxsqhP_M;VxNRp${9y1VSoFQuG^Rqn9gJ=Lxx z$gGxM$~>&fe62=#{w^~E{W*j=1+j}KVlyTt;Mme&NN_#gNE`%$Dpq%pNc%WP%f!M$ zLbw5tu*M%ITYhNYCt8JQwHQ~8l;1Dy%z|n6B5=1w^Z7g z<-T8N`~9^0C%;AM3(AUgmxuMI*GA%yJREalDXAHtdB11Dj5zUwjhL_^XU-qIp%gf$ z-@~ChjcekvN1kH*T7=@|^u^$F^zi3~-eHTy#LP~6fU1YgwRa33q<-a!DApMnZaCzV zUJh=U1bFIPBk7wI6zag`Eq$!@OL7RljRhrz3BwXJvA4xcOy?G7K*sXHt<9%$6|AgZ zazch#073NBA?snk)|O!ylM)1X%>AuZ5q0FWnE9Oce(^;7n^R%k%&f-d4xi5OxU>Rv zOZKHOhsL!{KS6P{(a<1ELA0s1hXz@S6}mo>>G$1^*1|w>wk-S|-}~I@qEiu{pPhB` zgese2TbdmqLxkt(PlX)M2qFRDba)Xt!Uq{ga@WLDr)cjm5puF3X5^MN!(ggdkvDuF zTfOIx`J#HF&#SZ%{9(7aXfF)E`0}eL5YF7{>y}3BDGekYGQQbAe_Op{4Q)lcPb@|p zQ`K-zqnRJ^#ZKA)?8O3*vdo~>_|Gi$OIrZgp>d`j{pDn|z_-3GA^HwsPfQlIG1m*B zh*VfR_2LyN%$Hh|6z9`HXj-Ext{W>iSac((?M17pa0*(bKFjyh5ZUuX#KA7rByhPW zkQ}-gBHp~)#99ODop14w!dm64bn8g+>B-=nN+e?%`CF4RJTio00G%icBLlxzQ=TY3 z|8&XO2pZ|6=PUWyz&mZCg9oLb;ZlFl7WzX;`~SAMlm!^qkJ-CfU1hP5E{QKq?2Kux zsg_?_Uh?j^ZUq1i;oLAya!oxKf_VI=Pr8KLo?>yB9=DD2RXv0k1Gs}V;#QxIWgUHk z<0dE^B+`6y5LD0T=%6;NyPq+{%KJ3^mm-syfA`)_sp@d&?Hqv=3?|@9 zoq4cUcmQp=qqyzsHF!4_TK@- z`*IUd8pC!aUbKRDY!|LJN1-G4%8VN|y&teEW2(gHsC!fl#zNgl9f6gqev_6Q|*DuS-S{3br@i*K; zEm(z2)FXf4$@H9LmBpRsvhYrJ;tYY62*epmox_(qbe8x%GO*zFPOc;zGcQ`8TIQM> zXl0d|BXHW;ciI$Aam@bKmNA-s#RajvwW z3RO;H++A+!j_@8C68VxwG(V%uVgU`MWmu(YqV`*D6=}=IsFX{r9|tBMukmyLq^*Yl zd%Fbm-bXo-lqA9!<$zdo9oN0u*?E!tp**Y`v7K@dXVD!(dCp&YJDxXHJeuG89bAlw z{ft<|ws?z!eBvp12F9T@t!lI^yFvisAo+0#31Tqx2%A>I^VekR@rwH+IOMidHS!)9j4t(2PaN3U7h*J*z+=f@?pK5fcJsFwtzcdS)02LPs^Dac`*i9i0cIN6fw=jf`d&A}8$3<`Z@0O-)QgY}Y26EL$fd`kZ;Sa?TU8{a&s~&D*9F zy=#Bd!x4$>xW{l7;9K?-FD|c|*_87secks)A7qXh7qqV(P0V~N$lY@pdHu&9=wE)d zlK&f74$+^y^g1U;V=^@}1F-W$7IV)#PSnvs_$sGsW#_hL<7y2W3CQ4f zWS*6LkZ2107~70;;N1cXnw(EuFnGemgnV^lgVn#GvUrHE=-fUooj;Fhig(92!omXz zon=M$Ncs?a^5PX244cp-r)ZYF#=W@Ko@-%EDw~r&^*9*;-=?S$fnbLSeSO29ouSL{ zWw}yJ$bM5aR=80Jx9wS}uRr=${FSYJg~eVw1j6(O*;aaned+{}ZZu0eoCc7&Gxg=^ zG)2(?jIOz7{pVG%1X~7rTZ=Z9lAw6hc7}Ghn@vd--iwygoP?bj9`=S9ix%Uz(XH?S z+KrDm{f}Z-R`E6}pbu9AHv9tp$svKkLvX0c-L_jiZ>eNjO|c$5u)7}VvKvRpkKc+_ zwZ6o#PWC$pUFN@1l*4miG52|m zrTSs#O5xtpoO(Ge)h(Q0i=^U69#yhhcTGaEiBaut8=_yoc6gZjHyy6|3r% zEQnO}*gXR%A02f*l+S1VFP%o-ooRq4RKn(4XO+ta&vs|0QBNk^J$Y-Z1!^$_aGAF@ z%xjvsxo2f2Cp(w)WN~?^V@F0#u@_FbgTjywSRLNDY%w_&Whq^8*v!Um~A`-9bPw%6)I z6{B%iOFYmPZVcIYMcJZGxPdh87qsc=URC?8b82!SMk8#TSM?BGdeu z(LZbrtbKgcVbT0=QKS{Zluzp}cFIc&!)0|fVSp>_vKcac!mWisAh^%&NPdDhN4a?H z&gKAg+JtB3&!T2F%FWiS0xr(q+M(vw2OjLN#yOsexOdWcovdE9woJ0?>Ow7xIghR> zKr*fYU53zj_!$A>!E#w+K|yz5){9pJ$ty+9B0HY-cl6!{Nx&*{j<7lKUIjHV?pEwD zE5_CNTb)R_$gi$zF{7viBrpV2`*tNOp zfz!S5p&?D?e&0K*5F*U{$LIH`N{JcnE&WkBwdvbgVT~qT@#4%fOV8ti0YyaYqSw#k zHtRPKNXp&3Me-7i5VPBp^m2;0$31w|NyFHVe@$=Z$7-PP#1U_To|j@?G%-!m(}Q++4$K%l?iTL~gt-NG}29%pnp7VWMrw z^)Re%5MM{0czp~B>SemgzmLxI=c~9H09B@gSOg?3B;~hHneJwtINh6AAZj-{`FJ8M zo-hBSV14(VS$(el>E`W(5!tOP6BPO2`x8!+ZI%KG?$2NRxlE9f!wqp} z&g2gSk~z7L2rUC@ii-AUfVu02CCZ5&f%4YjDcArP`@sw~{xy(%=6COXC@J?ZB5uwg zA@V*EMT589+zg_S+6IR&W9+i9?juu&u#*M(7vNS>z8ROlJZJKOF1i`iI2)YBU%R_oe}Sdy zUj4&bfEEs6Dy;X#9!stSrdnL-IZb z;Xjq6qX;e?Wb7NFJn^Q})Z^t^W4UgQaQv@reY`R_f3lCmkw zeZGO;U!5o@FIUM9w8^zgBXS&Fv%9U5{UGzTM@#GcYd_wvc2KW0Xj#c7G`pPb$Z~Do zgY+|jS+YSlU4?%m>JmEtaRqjl4ujZC7p2cW66~ECs6%cRf&M69^j_>yIx53E%l`aI z#QM4v4KkJE-iYO=cIWI4>_Y3l>}J)0!&QNrE3G*<*G4xiqjjyELJ6^$0W#*x=>5f` zLwn3)z)}0jtGd~v$GUqUS&*ZsZk+sJg?Xd=T+`d|Hcw_LY3W`Cs?vESr8PVF&Alli z7jdtqTPrnryMnI&$3}s@y?sM<@`;DtYzU4>y%z}VQ!H251TAZCD(f*o*~I{aErqeE z^6Mhkw7$B4?e03iuq({hjA4O;+Z4KX#YJEq^()JrPkQpql{*FjCQ;#7z5u};frqRb zAQk7m6A*`}10`I9PyBAR;o79T+Xl8)uxEYv<@GF(TDjlz&6?rDdM&>z3+wh_rhPEo z_0&pK4N65*Gt9kU@|=Oe=%#9@g*tfYp1hoT`>fNc!8kD_Ebx~;So!R?-TK4)uev)F zf4kGa`UU_(c31iE;)$u?)M9q(hbf0E9SFoc_H{JjDMq|;D+K7v*-q*DeqoFXd=eVB zQ-71%MCXj%rN%300w|a6aD|D-1VYu&y0c8%-m=e{eLdDcow6Nv)eCuO}ujg#+Vn(~|TD_rYnJ@B)t*Ie0=2blFmmc4l%;Dad&^kXNN zHHt6Kc`u*P1`KEQN0`4EWl7f(eDj;o5`}cZGFRxD`XyEm;$!Q zU*h}$T47O_P*bxXlEUxe7W>;Q@O#zi#z66gBSD{Sj`W_4rtXIZ>_t6Z+uu`!Pe~3S zg{H|zZ?Kc-gNi;L;oqsp(9Mlu4qW8(D5qXmzm*0T_SXD7(uG33;vq(;DZ{MGhUsbC zZ%2oJ1aUDIIjbiP&TMMRwvqcN&?y_Z8+M_hwNf`uf$-&Z4)1(R9~60jXQc$4QL~m~ zlw#f=63OY^#Ox?WUXp<9p}Tqti`Bf!dr^U%$YQpEO8Pv2M`gcaB1_Y(oEhTd#)duy$ zR<$h&!cU?Qxke&(Y!nuZbjgS_zXc$M?& z%B`@V!@ zXw5mU%rO7@YYSL0kG-{5?hQL7rD3+EAYyv11NN#w-Vbnm0FiTGwkSq_K0K>d0=mw zy9%|;H?{3&4ICR%bN1Fxfy$fTKMLKc_JQ>nS&7#s?^6&5HjOLqMX~n#lob4ZZT~vj zt&wnCw&lQ!x}Y`gnY#{nAOLfN%Qt!Y4kprw@E8jC%8{r%XWhNQJxGEO+oVMuK1k9m zSpg)94QW3sVp?nwEs~)N*G2{UT7DwUymsXKznhl*8vSI#L;S!^(sbkrPp06ITb>6{ z?1E`e;190*Q^ezf?EUlrk+pYwpkpIL5Y&n2>cQ){-!f@KbHhHA#fD^n&blgt>?mP_ z54{(41`>`41bxoByJp^abH9}cApNJDEskUd5*o|%=(B@CisC^;Xy9sbBOMB%lN|zJ zg(;6H0Z}Ib=4Bdx(1XPXGnPdQM7!Kcc~shG5amQ`*wbzEbCUDRJv|!UT{@w2+9(iX z=zgaWdCimUs`=cB3Gg7ah;Q!zI^UGFfD-QYGqSo+k6Q;f?x)AtXTWy(9GZ~5J`DQS z`WHGdlapFHAC1#qX9)!^a6dwiT&gTA@eA^-W@dabV}ZQy2Sv= zH1sSlh9$e`@!icZL|qoGcoQ<<<};PXedd=40^u}f?Q7#j4G-Sp1xLY_`i<*+e;&Kp z&yhtelgd3;q$7vq&(ulniPe%L@l`y5xo{b|G6sQ2iN=dZSe=;8evbQNp~u{$#8}Y zscA1Dyxs|O`rV7qa0YxIMPoS^u}}v}Ll&*MC;})9_MSF#CAWxVddR0EZwxpy3krGz zQa)b+iHBZ)X2W8Z?ae^1t9nT?2Q0U&NNw|R+TA~#vNfWNo-xI zf-zS}F5;~-+?rlks2vOmQuu?HuK>NKW9&9=Otg>y&Q^lxwk?cCi>$N!BGZ6`=1|Q7wL6ihjt$Yo0j>_NiD9JmR zo>wJ_fkhJTi``P)_w2RU6k|bpUATDh>qV|i8_*bNHmGEs+$TBM{mdgwP@OOI-35`0 z69$>y-zpO`GO(~jc+?MZIid*Ji}0PmuuN61AMmy{6a03V9E5rHUDWVidZ3W0v9Wb& ztw>iYo%aKH`ZDDrqYAKIb?B<-4Mt~O>Sns3T4MMX*H!3tN>kV`0{ zHZShhNXY4&3kMCJvO1bG#XF~%=3vM`jC&0)>oM?nwmoRTH zw-U%;$IKr32fO|ExVwZ9~In3$-JmLFr+9J0Zj@f8WF8$se>@G}r%7 z>hpTs!up5oPXknL-9$fmaJ*KGn~NhDaqKOs=5ez>eNN+cp^Vw)kD{DLbjZV@r;0GN z30FMx@d5zQ0iFYdxDue7leOsn=A9i(6$XikG1NpC=2Y+gs5kn$D7~cRM-8F{_SvoN zY!c3umVoD4b&yMb*uz;WYpK*J>hnyXALh@w(}+xnCW{{-!=q27zR}S0scy`}1`NIL z#MMojWAInaX81ZK=&=mv6{pMVIfmbXgM(r7q-()Vtg7{Swx8c}4PL?X7@|`W6HiG^ zkuw%)vOOVN*$LTVqgkWvwI#v+hAU=MHFdR`Fc!P|nwln+fIVAbY3a^&&(*MZ6pL15 z#lgck+1%}`sHJ-chjD}BPNH34Cs2EHuBH?se;9?j(6u{&DFM4I*QNKbYNJ+K){cqv zyBZzdnRNZwS~AJzXqTTx>da^hjU34sY#~=5YMuQZlsSVF*n%^FcAzjQ-k*O6Bm|6s zXf$nq>YRwPSYY4NGcxkl0&U~oGZK&WqOI3qRCtqh)l+$EilW6E6 zn-cDAWDdDiX7ByIfxyHC?3h!W7OCbt!7lB9jj7e=S<9xcqDA!P3JPs@`|%TL-FR!* z`>NqSj17L;N&P(5(3S``JUBEc%XOLHN4#3Gw9${U+s90~TFFkX=~R^BkW0$t#pT`Q z=wLKSB;B@80sa;3_JPw-lNT=^e89S~>G)NPWSEwpX&|qB|U986Sef zDlx-DBF6~*rO9uJL>zJ^to42RPPRm&Hl;-V59ot&6|`-``W7Ar$3$zr@})P9pOCLa^Ld>(sVn5XlX5>NF%2fk>Nd- z(RH7`>`jCEgI-bbgcz|~=%|an`1R^t06lop;pnrk0l#iG!P|@}q1Amb2^jnXMTv&0 z>6p`!#XE2fX(vNNP$#f*8-cv3F(So>+zHa;r=F2BQpR+Nza1=_8)aOd}h0+!lus zwSFzi%~736S`rNn+^R#kxxAd1@hxfTbthv-0zAW`?HN_QCD~RqfzXPd03q#A3HQ(Snqhn(kFEuU`Se3QWckLyJ zy(SaZbrnm4ZCgQW7vp80!e%#W-?N#daS!8$$k`sSa1Z0A8n(5I4;!J-Adzvw`apz% zQAXU^!j8zOy~AeF8$(_$ur+Ye$)W`x1S%ps@(1C*kb>-z>?w?LGlU-@R^t;L+IXrY z@3V5nWhhC$VxzCm*GDVaq`Dk~244{u?~eMB<=kY2tU}5`uhrJ=l=DfWtrh$;EAKlR))(t5o6#JQ1^u(Otl+4wnYOKWp zg+m7rUfBH%Eze4=Xx=^V!$-0cZ4Ubh2a%$*T^7j^{MqWh=DNgJ(UE?=asE?I@5tq( z?;bwn+KIyQwao2m)ZB=k&YNDb)~>8mB@)Gku3!*d$`8u;R*VgEbS5lesY)pa zw-jXs9lu*xq07=CraB$DoA>MM9Y{epXBvd;C*Nq0y#mk$CM{^L7SVxQ)WrVWz@qE1 z$`TQ0IE8au2?Bm^HubSLy-ul)tMb^3{=gY_`PU+7A@llk}tz}mjr|A&ksrLGF4mQL@kJ@qccqkltc44@mJjVkzy|KHPcUJg zs%$x%khaH*aCfMevYdJ2`uND;O|GWbQF+xjBoC(u^lcAwvij3Z4ZL~{h5b0mcYtZ6+v+u>H1+5#l-;VD>=o<2o;OwwFUW1_Lk5W z(x+SH^h@WR_R)2GHx7K?9!S@3$h33 zEli6Pj&$7l(Es4a9zN9F+6Xp~MTb92Si1;ebx6OgZ@s_pk@13je*Xj1!Ga?v-%exB zzHew(M88Zj2uUC%FK~lu1-=E3gKMXoBNOddon$Y#{Ix80E*F2Dle`q|t zw32!1wd!J^fZs$#i>XU>B&tw5p-1>ahSTb~!_MgiCV=W^&zw|7pKhV6oxB_cP@JDcio zRa&4vs9&BpTp&$>XU`0=M_5wZpumX)@%bMY&W3&oRVh+`zzAWjuP{Y)wI*eYU#j`$ z@1fN}D(yX7YA^fNO1Jc@ru`%LmV6O)%P)v}+s8oz^tg`=E!U5#qhzJE+0D>JS)z{~ zNv)8Ah03zTHT!vQ?0Mf8RV^wiNVn9*DK~_PucyKd`!@}rkGYIAHK*CB_VegN=)X5+ zan6^Pl)81gS?HCs3{p4MwCXto1RSZOc-4okA*iu)1%&<_cb$yQ@nKCWi?Am}%7fja z<2!O+4%PAF16^3rOE^=abTbK$Zo4+}_TaSKHH8i?Pe?WdI)eEi*Y3e;2R^ZMf#dUL zcEvYj+@T%(+j2SxWoIY2#do6J-3tEzG~=%jJ!x~hV_VzD@)+{E{463qNS0n?s(i+c z^mMv*bRn70A5(V}~O?APUA)w z*u2gK>HgQy#yMUZhX$>)C03En>b3;^rdhC;bFY-m<}2BBhcI8`3?|=TuxX=(nVR=Y zSA7ZG{`^N7$8_i?C0n&N-kn#noJAc&Ql85-UfVqG=;`Lx)S{>f={uyFuUGI($Uri5 zWN{Yf3DilBF5^65QDH|gO;L%^C7;ckT~DEsZuV}lqvhRmK&!sFNr@+RY;5Gz?wGLu zH^Bq1az~3-QRR`f4jdo+uXuycC@CTZKA(^Y3koX9Pt#^Db-&crwG+2l@30fVV$W7;u=deVFx8ge6c-_(8 z*QGy<9@IMPA_@Tk1Z{B%&Rs~z*<#|I*Xew|?X!&GtGJp15RQf^88(#drhsPEZ}!G9?qFvt~= zjmm?XsJxN;YCP3AZqwN3_hl?)tv+-^w4@|QV3H|;=c5o9`$yX}Nye#D43BX&R` zqcX;6W1(FJ=0t+M#ri>cl*e+i({WGKMXkZ}lf`pb)b8Q5!YoFqrzHK>fu2pH8UHaN zt5x)>4`H1;3NC3oA3RMn@8Y zXf;|^s4Ro|=%w`Gy|F<=i+_ig*3ItDKfA;K0WkQ(jyT?`{Fz~Dk2B&()bufn^mXBD zE(|s4H7NN97nj=W3LU~$WC8pqLxif45yY~B=fmigNgUK`Q%HY&+$_1d=;b$LP*Ctl z$=Dv4ukfpXDGPo5gv3Xt4TM1jC|}6wd1DxcSq2gdQv;|Dz)!wBE=>(CO@jE=+*geh zUx(Q&o#H6uzgL~>;^WFwGv>3%nz*!mbo7&7%T5#2W6&J*;HgWKRZv`{U!l|L6rD10 zi6mXxE#RuqM6#aohwBK-k!$1zq=~Vp?lV3unFLNYsx)T_N4UFL>DCh16r}ryMDGtN zUrrmcwW$UujFKttWK>AsU(PT~1TpSp#PU@Mjh2jW2u}f1_g7}SzGF!9AM47>9;C_H zH1n}-=)7kMmw5{ibo$lC_V!g(FMO2AQsWJ#$0=7C3JAEO7Qbtk!eFun)lkmjEU#RC zvj=yV^Yhyz>NvtrG{q_%JL|iu8#`iK3M;L)@nEHk*T1iGpM$jlTv`mPjes~>xhyTZ ztyts~0W5Q2G^T>~EqOgw1oCPH@qP4hcy+OReB@25!`M(bk&S_cW&g?o)*l)BTozKm zeEI>k#i94>l_%FG-7-D6StF?Z^_ZhO*FV9-A`ykY)i^;Y8aw~vtbbM-@eda9CqD8& z{>xrTe==zo32@TyjDmsLpRxUb&ei@JoT+6{VVRhCa(WjNZ8poQXs9bY+|bqER8LP& z*?5v0pVJ*jXBg@(aPNJS5=iDtAnz+JXJ?ba>H5>eu@&FaVt?}4F5Rx|TD{v<#eKN( zal2ACFrznV>OHKm5UDU6yRHvuD57K4^|&OKpv!mGH&{D)FMCXK&^dCVWfq1ZUv9vn zT3FZF4mG*y*lcFYT>s!~yOGXw>gcgQX&NyzaK5_{tb6)*aKXP_=flhF*XgK0qb}`M z@x8BrDhR*}KB;9uXc(7smZlpkxuTbhs4fZqQ2i!5^J%4I zNp7@7?@{7~I-k}c%&T8GrXZh4JmYoU4kZgBZ*AAIQqP!8Ae!G-)f=!n?O4|dcpjnG zGq3{jJaviFLNB!V)r=1T%*tK;_=UWsW*o7@fE04oQqNL7>Nn8euLuAC9K8R1TLFND zUHV*(WM59J^p?0)%crNf-u^9s$D*6ZPNa`K|7uU2bwN182RCT_i6lH% zZnMxA8*6!@xxA%aEKf2>bs6`r$uL{{xz4Tpm$0{LNWQ*tp{7J8hiOK*iKZPT=eruTh@sj@ff+JRruEVB00_rD- zwHHN1G_s4yuHG3{4kT0Fr=+z{eP=l7xwF|$8W>0qpFPjKZ0&T(gu*;s^FU8)%2`7= z0A|ouJ32O+HrU*<`lP<8X$NTy4PN2?Bvse(G~)=WncunivPuWZbi1W-Lf{=6bR=>j zsm;FjB^(84Crq&&F-lZjBCMK4!6BYFiJ~cH305!NUUuWc1Z{KbXbi3HJ zwzzaZav11|Fj7}vYD$hM95*+z@+eA92OTRjfh*46YKn`fYcLM8rwCUML^|VU!EWGV zRV8db(NA9r&PMy|o4S<1Bf=L+-1{K82Fa&q?%i848b4t$(_C05BiJnP*x)da!Z>MZ z)zrW$qXjqSF^G1UzBxP{tkdpiVOcr@Mu9Ayx?`+i&CSEU%O4WHeY3^6w(&pZLkhU!Dt$40n9|$aJAdC&Q&gvRe~g++u+lywvXo z`-O``v`08IbD5=)t%LmW1@oydJ;ip0jH9+iZSq?Pydc!r-f| zt?dO_SvY2Bj$juPRZuGr0p>+b%1vs%!lM$T1pz#J1bTG)@cKgClaK(A<$Tt$%);C` zfGhKbG+L#EWmV)eO%;p0rJx{B=aN;_)HG&Xlg1ua^*KXxVKLVRT5(@z=_pYOk*%k7 zH&EI?ebY)qXYB|+>qjpCMl0*&_Fbw~*vtExBzeEgY$eu^V6=dX!eKsvI8uD?Kr(A* zfq&S>RGCG6JJXmSmd79R@)hP_pAkk75MrEN)sk!ZY#5H#=ALX9>X)1JakcDaCA6lw z%+&Pt9e4CJ<`RzQsHBi03C7 zmT=&P>UM@#MyaWqW~r|o4PDY7d_gY!5KNP+V|@I;G5W`|+5G&PDHyUW*VDt^vm%`7 z-I~_NakIA54U z^`Ks-=$D_Kcop&lR7qZ$ekiH}o;OzQA)Sn3&Uq%^3x#4S9Yk&|jGY7D^| zvDTHUzi;Hd-H;KrltoZrb2NW^`+adNg<_kRyc$`X9h>yP7(VFhJ~%r+>3b74EZ~B$ zAPRh0^K`Yc^576TrI|fp1aqmV(1U%eu<=!py? z8`s?7OP(LsI9bs8DaGbFNlBcZeDheIKlB&>ExiBvOLi0beP3rgl2IGZX>>D1#)^^f zsqE@d328Es;}<&%`)4E4(wc?E`wvtFFW#Imv?I^YzaFcTS&*pUV@10pFYVU=Z8i=$ zWb#y||Iih(n}bEV3|i2yIn5!P!2-MW>B+lUgpl->Lg4Tn$_Mujc^!A{x;%`$te0Fh?_#K&wJgHH=I7lIGe)Y94@r-P<2O@3WCB-*-;LViB+l5G27uckuD zkuWW;prI*c6Nb8;hd}hVIAHq0N@`X#!dVb;!sOXOC3UT|8;t>98*Q$8B(kxKpN_E9 zn;^7q@1V? z4P0n1ca##N==7n;j z0OF56FXbajtt#(seHH+2{&R!;!%;c>@@InRTO%|4Q>H(>*@pA2T&_gf60ephZ^(-! z8@b7+4FNAC&u!Li`kR%QbfA|9p}^jZorS<#s)BnR-c)b%-zCgt@U45c8ETbLjq4LEV!U)VxRRUBWL~1 zg`RsN9XI6kQ-0@0@nopOI;1=g9N>QC2EZOSKA&>1@11<Tg_oDq2&hCR+3D@c-Hd2+tZ6pBsm;*!UKyC2{;BTrI@rgj+N=@)&()qk zcMhlTr}L&S)^~{bdyD$Fc=hjDCBW45kxnSdNA{ri-u*XSg%^rp9*N0IUoVP-v>s_m zQ{Ut>tRXzipDs(le`l(cFlCU*s!Uj}rj~Ca3j1roM|v-T^Mt3%iFZ4e87A|VIls=F zXJ@4E>FE)kBg3_Tbl3g+k}ao#0_^?tDWB*6?U_nMG1Pb$!oIo3X&hFsB;-t$ozej6 zU8^NQmrKj4m2Br<-#o>jrr*|x^A(xIU@nRw(Oz~vRjfiyR<36woY)7K27+1DIJAG*ggE_5WU&R?UUf4gVTUFk%u z^W%fm$qfx`8d`CwPq%!XUEPz%>e%!~5qBpiCxvLr;~)mL1m*S7a=yDF(H4BO^mA!l zTP%bXHDf`5)v${zHtEOgF}vPtGD*dHFZ+UfjcNRPc(A;ZP;*8{OCUYDLmSETPftH; z)!};mGQz@!j~|0B)Cn1Wo0X12xs5qp;4la9z5V*W9uWD&w=w-;ovg&{s%s2gDdE=!C(@iD<#66|L?3_t zzV@0WWH*l2jF_Frtr!uG_nNdBCP^&>>lE`{vVAN)<&M)yFQf=%*++SZtNY()m{K3h zf&JOZ_diksz=Ox$pbKmJ(81)MbqY{~s_*VfZ-cR5UD$he@w-l(kP>`cm0llNEjFBK z=fRf&^V>n#g*=Vjw6MO;Q35a8Ms4ynEUD(zTd1Qt`l52Uur zTTxO07#p(rCrZP^kkE+@=9A33d_=hD>k4nU|9n+elYH30-7jn>mfYDr1q|I~exKm~ zga7-JI3sbIA@k)jPtz;Ob|o$PN%nVvIQJ_};BSVd8sI~NirmMJ^j{a0=%bg>1(yo} zwM@4RPq?LH9mk6(R}83cqY%x#uxXf;=Qi{%KTv<2DM35g} z!0ngE(6h0fj5x=>;x{#n_aoEp`D86f6OYw{Ws{KLe)E{2G3Ew!3^y_0pV|!5wRi1G zBKlxea;4Ys$-HDYzh<>bl9CL=8E8Vj%32jYLs@u~(}v6NT#ltW&kic%{MM5?VLNbn zqa5qrO>`zwTlG+c$}zbJv%P18(r@JuZFY_(=~OfLg8Ac|?Fud08(^UGofUnH=$EUH zLtiaO7quc?qsx(?R5?+U*U&hy+*uRi+kd{?>8DfBb|Kgex7%S^$@$O|EzHyJWIrEe zf9_AmK}H4SupUkicY_yC@pIYAC;QIFQ{=0&G~Z)i%&H4M09Juy!K8x+%pK|ur<$~G z8xW5*KrDl8CNGq#2)<+tnek`z{IncFxt^C46&~!H4T<|pg`MBr!2gbP3m&J}X4f#{ zlyJSGg}GyWrmh{(muh2n`ht+uSeqUaOpe!~)fcX8JnS7bXQhu!TIB5Xn4- zkN_ANpd1S>UZZCCAQnvh5~BDNDiH{FXj_gzu>U7cRJK{?93=Vk|Ill=B=F>y+oL1 zX;7z$hR^=f3IucMq4xZb-c>gk%9KAYX?EXiSAP3H)fXHv^>}vwTBRDpd!ul$=vE^z z8Z-5*^6#$TKep6KF=YvfPde=I|J6=tJH)U{b>VLNboK9uqyO$3lp7eB8=~(gZv2_k z`3HYHt{EOqd$(o$59O5qebisjoStE-<6=+HzvTx1^d-|puPXW%N7g>MC2>Rbw)zxx{bEx&x)G=dOwu~-!lTfbA7>v_)iV! zU)~one^PLoUxAn|^f!u2zb^Gp?&*2c@bLe4@&E71|C?3*_m}^_oBi|nY}N1g{(9^G zo3Wpf2T1l$7ni%ejw(FuETsetm#fxaANyY~+$O=YyHNpQMWu`%rymk|oscbjm!rEk zUxULg+O7W0<)oPRC(eC2$>Dk8$)~@ea{ZT`Nyo4wq-$y^%KNp1R?WQj+rTOFoknFX zx2&t%J7%=C)hEw>GR?e++{BB1HMj$Kg1!5P4*f$%0?3w>8S4qxZfN;)HkvpmW~W@} z(O^kr7m$5BT6LA4nc<{yvoDMf1n&AQsK@>6e}Y2W{ON!o^8MBR`rhwE$Lt$TC+uDa z3xK|SH#z$^UgBRaEaC&_CD@1B89=r{F74Jib>UNX8fvCDW;Q=S?|M$FULL&uM${4e zzv1c5^R{o|sb6C%noph!mb?L1X@lBLOmHK43!%btdbyl3ILB$A2vV{rZfpzc5IxqX$PGqjR!Tr0g&@oy>yM zoGVAB-0o758c#hDYR84x`RRx}KKvckhGRfP-2*gd9iSurg!fN^!z?fN{ZsaE_6>TT zO;k=7GCbJ((e06pL*Z?@N9E9&jmz|Aj`q~Hgj>K7;3JFYt7oqgInPP3M*s?L6V%M1 z@u8>TG-b={SN~9C`;hc1r_ajKt6rOax+8@lA77Gj8^`X> zn#Zdm1j+;=oH#zBQyROP{I0%`VUFX9IC<(rF|67wz6;br=5A4X&0GuBR2W zPP!Q!+cwYne4%d1qPG!}5pfb&&uO~y+K&=dzc4UeVuw*cEDa}C7&{*S(*$ZrWEv*O z2UQ<9DI`%vUzoD~g?z~De^YDgrws2&3YX}pCxZa$53jHT>JoFV>I*%# z^}k+U#E_6R-Y1=!Jv8=n&>w-Y(CqzsJDWG_w3`CQ?Z*;y|8RQ(_VifFI$tAizL%Rd z?Xu|ac^>n*ca)p`!8$a4sn1t!y?jIR1@yJFU_W_LuEAi5IjLNL(5B|s{Hphwz|{Af z_4S%}YZAZw!>|2mIl7+|T;G)aPFpVcG@NA24OI{ol9|R$P6{uL!ICDMcGw-Sde$&a z8^J7vxVaZ@w0zVBDAnm5rzhS48#fft9@IB9oUr@?P)8)DrCqM9%=@NxC{i)h@L$r{ zfBNuLMcESocut*+Nu_szlx+RI$G4vV4D#z5D#X#36hK52P&YsIB1UKqC(>Z);Ns-; z`fCZGr+$6k87=ygMnRY;j8Pdt?2(^;Cr!ppGe@B)JuoRLak)ygPu|y}CW7UI zMd00MS848z3$7nEOG--I8Wb*He+ba3F2}Rg*F(mg`@b3)8M_xPlCLC@HE*nW&8XbiS^m|?TOV_KEi*IP z*u(|-r*gm3DgV06|B0jXG0Ffrc^}T+YJ2~L&O+}pKx-L4zJ1_@SB0h@s4FRAk*&Z; zXAZ$p_^);Wz@GfP;V2oP;29p7y87Y;OWo06S695`){nx+w2|T@t-+vY7SZM4Pfvd& zK$*_FP~-uP7?qMMTD6;#rn1cCAH8gt2{6srPjLSApXgM$--+y0I^P-S~ z#ZRg9YX+rF-3`6RN0kAUB%qh5z1SBDaU%(r;UAOf-$jtT*Y0X2E-*aQ*S{mZTCQu6 zy%b2AEYadT0Q$;ed7!3S0y}G1`^a1W-;?PxLI5k2r-!u4+!c;@uU@@K&=3xv%JGEz zDEg+ofB&LtNyQv1RM@B}DXgxC{(b2-i`h5WXF>c))g`J&^B785zjJ_m6-2fx@-@mL^ z_!io`xb*m;td*&0I-rilbQa>`;?lNuRIf4&5KX0^xIMH4Ba*4R(&g;XnK|!nP*?E<=8L~%wxQc z3|{^E1WmdcOsR$coSmnuKA0&y;OL+H+}+(UV=H10lEn;6om}4~}ay8DLcwO@T z{jeeHK;MYw%!|Y3G55T^69G~o%*T+s_62jq@2mk9w$OHIFj~{?Rq+@u@LiAa$86`@ zBoo5f^&;DFrf(>%QU5(>Nj}aJt-DlBJr>K-AE|Fr(%$)|0{AkjHSh`V@dpO{NO;dF<|NsAA zj+IcU6p2zwIUi#&B}5LDoDGE`hdIufq>_Xphhd129CK!7q;j6KIc+0nv(0ISVc%z; z&-?ZMe15;n=l!3*Y-Z2L<9@i^uD6WP5hH^)(uLBM@!tZKPN&pebab2puJ_@wm=z@Q ziGt0s-*YHXAQo}0iyTh#ukpV2>fEUBZ|#KinVX{^KfOn9>(9k%Y#zDyq#51RMCdGV z`og_?+_}%Ps0D{Z_?`0PT`Cm*;o8;FQIj;1n8+c#HDVV6vUp-afR5~>c(w^6 zM(k|It2Mr#o3=9G@1y^5v~(^4M>M}K-Bi_Feans+>QJV}TBO>*$0@TqVnuDQpeA?C zr}qF;mqVBqsfx{X$8{h@U~Kp=btU2QK7;b5rpB<8i5CW}s)XZ{XN(tJVvoiENF6QE z!OIP7LSk4* z|9wy1%V{?5z0F^4)!Q3x5$4s>>)zk};wbR+M`W|`GD(jD>1f_rm_J_oT3q(s_xG~> zBYO1h02gv?5?y`!3mt&~;sP3u{{7UefBAzrN-ke424u@5yWGgQ2XZEp)wG4Pym!n_ zUlrxzx*L9CXSiY5^l9bM#Fx)E6(GTDXU?7-e-YgGnp5R*(a+#?QvqVYOf0~~4(EIU zn3DMjy*0ygn0>f~MmxGwf+$C-$u1uWd}=}kS9E*^a9 z)|Qfw)g$ijoRk#UWS@JA;(uC1~{d|!i_Q|X;2P5QHv+>~OmJ#x7p zTd2U6W09S0mod55M&vl*+*CUHM9~%<6nlGXdk}8!)Q81jn5~lDGu$|i?p{8&6N{+k zc%xh6dt_$y(DTnw0hS}14@7cUD2C_ME<}vq5*#|?qKJ9nVsEU$ItJ;5L800jb@<>} zFE3yrnFY9oi`U}LlFdKYejtx;j#QYKnAEU@0=FSb5~(aHX;4vV;7pi=exo-BNA0ki zT$`Jl+iE4v&qGm#pFW+|Rjd^qZaZE{T!S(jYD|hu+1b|p(u0n-jPKG&c{L+uA8iXr zkmJAOg<(!6MUGt|NtPLofEmh7T_(Od$@E5#S50m8m@dKsAs0B{;Nt8oQ`-z#==NaU z8O%3O?E2ZYex|F$$}AkYGXcYpk9Wr4&Cr=KF)?`BqDDmFN&@2Jc^Pcrvp>vrnJ+L%hkCpQ@UVk` z2p0XG3g?~8Xe=ka+e0( z9N|Wlj~-onHG$-7|3{^MuSz3E+FmXJZz?AtwW>L6BFAE3AEK(1<5P z_NRQ0G&=)y{pZRh9a4~j(HTBIKJUyX{Uf-8O-HNlNR8_e(R|0|viIo;{I-FjLlTh} zv(nO@sSYqI-bO+YHvS#Dx&wCaSa|cV{%lKsTzk6k;`^sn(t?iwU0O-b;c)=Dz&C3k zFjVjLqjqin@@MWR*_t<&_s+EV-D-Ox#cy1B`;?`%TSlnpOol7|T1l17)#~>9L?URiK%w3aiT`mArn*-r?gzvs+J{ya4$q>8=c;|0zvybs8#vQ_9vMRb z*!6$fF37xN^JtorUSFA9a9@i%FR!HJAG2q8F<_Ah^hq~xw)C#Iw-R`a4Q30mH{d~0 zSX-OGXhF~L-Lb$>o;ugm@PoaSxeb6)Sxp*wkgzl08AYy5isT(PI@Tj36Ire5bCaY( zpM(L7@3iY}`%{Z{m1AB45yP>7 znWY@|#4P}3Vf^(fR^Fd}2V&D|5OWso6mJ_d>{dN@Hb>}e&FHfY3fHFBdsDjqH~@th zu>Wd5;a;1d$*a;A0=K!w*UgXroEC&x{c*EmJ4V`(JWiY6*isk+-kZY~&qNn|!X57} zTf)N}nV_bDijwOF=hc;MO^dA^vq&oH%k7$ZWgAO(2|kz|sQgM8=q8is6f>8^UN%v% zkm1)Lo;fH6MDQR&Hv0?a&#u@;n}%mS-J*XL<>f&m!sU}dV-PSBEa0*uAwT9)tKK9i+`#q|e(1&(T0gd5ZrG^lLLu%{$E_?N08 z;=A-J7Db%^%`JX>p10h}3mV-+$`YGk!(P(T0S0kkin-8V5cH9Vp--n(R{A1mr^D5r zFPPVR`@L1s`euM#b{Q<3b=>f80T}OOS^S#Y6>IVKUin1OYz>H-2q;v&*Q47yixFa+V~G0UUZdwd3y-AH>-iD^ z`{aj3$IfAJfMHgKnVG-s-oV&-Pce2hNxDtnV+myDGTHy$?LnvBe%4S1I^o$6j^Nq&yqlIi z4KMjos&=OOalI7DU7$Ei#V4Qf;0H)@vbE(0xgoY`@~#=)k64|O3%{|dgq+{Z^j)d! ziTX`=fx?#A{&rqPyB5h|x*JOhzR?IfU(enX`-cT^?ti9B|9jjX(GNs(yK>h$L7|;9 z@#@at0trdUMBxkJ-)@7MSAi=4%p=fnks>Pe(^u( zM&2>&0A>QglO+Ir<(^d2=5u;ikkdSXzrM+=qh8wSa&KBrzy>Tl!YCtP5*f#W1mZ@@ zeaiDq=9n~U+sc=$to_Ot79)tM)xR78R>EPvZaxSlGg$c3--g6Gphe|yB5lJ9nQwsU z?UxpVZSVIS-jMjq^l4`!4bP_8LM}z;AJQuapk0~CV1ln}t*()p8ZK@yRGs#TkBrww zVZS`xmhWxqW1C6g)PD?i7iex;eix(3F|6!%Jvl~dC-10!h+uhRW(q@iFU2}=N9*tm zW8+Hw#sgQ#yzxe!pOFDrhgvf8rip-6V-9$fol!Fi$1EIH0U8K5$6sDsTrR{BUlg|9 zzlMoey8jtG?t7lQj_#)p`5jD&zrFVX*kMNrhyC#|0zs?;`jh6dHF%6uKkgT`6r&C8 zCD@pamAE)XXYH*_dbE8LI=R_UN9$GY1S;b4r~GPdK)taW`YQ{DHvS7h^dOC#^q*AG zIas5E99#z@Uj8GNvA41#Y)Ch7enqZ4v$vlsZ{_i3r3n1IIz>4p`$FS>M2;>W-o?^Q z!Q2XH|GitJOBa=NnI6L!UfROiwJh0iC&;9|j`P0N2H;R9)m#+%4((B$*nxnWnOn+c z=@@0+BdS?()|e)9EPCqHhO(}mh%J4=kuL}*Og@bQsDM${oB&=o<;8(y=t2hPTml!i z+(LE#!qnel3bSi4+RuL+^V+8ORq9h z7a5b#y=^b=U6*UAaZfD{Z!A+Ea(@eFE^0c~Lf{_+JsMiWv`@$wFYxWZUtaF&t=#ZO zmNLF%K{DX$Ufz9&gF7JM;q4(!XHrkDG#u|e`7nYqm#EXHRfKc~LNG3F+C1?$jTo_# z?z_wNGmYu_oV4gnRWf!&mjy9q8@+PC<2Ojl4Lu7;f_u*S>Eeko)AB$L)l$!pr+qSY zZ%V5lcbeITO4^1M+TJRbJxmf1?4!C^0m1bH9+b;d?f_${_RM(9yLbA-Yq}Ln`RVV< zI_txwN_Gi$H)3uXfbFOPizAr^mT2hj_vh!i;tDHv=F@dOK1|s7aj$?#7v8m*8~@Ud z*VUv|LIK2Ws+&WY7maX9Lvr&RV0c84M`k+`$qLBKq&Y@jfvujO`}2`%MMcH&zDEDQ zT{K<%KXB`1IM|b=ZJ)+Jr>gn;#CXo8OE+yPn3Pw$c-}rWzQ=C^_n(=H+^TKm6rN>z z@4rs5@hadH?CTtHV(#U>O?ET%LMiuq0reQt6ZIyRPH^=Xmou3| z<_|JAvf7XZhvO|334lPWGpu0`n0qW?={OYiBk_O|Pw{cm(Ckiuco_ib|9xK~lA2oO zO)mtiwQ&e$%w@CzDQqfpRh2Bj*|-mIhsaXQsPqHr<~EBO>3ASQ%iD>u8J;zPJx_TX z#u0Rp&c=7^*()9+)X>pKZTV;1|s#;~|xBW+*}AUZ?a3M)%Bt!x)6<>_l#5A@r( z0oQGPU-R2aNr*M;)s!?JGvgTsr32NuzJ5%F$)7?Gfb9MGQ{-miPxU5D-z;rV0{-%{ z2WX!N9O*B|EruG9V*ihL1<>?CUvH`<4DzV<(QN{VXu7ZVSZAN5P#W+It8qOE`cYtb z(1!X6piGVcZ3F0*N_f`Np1?yO%cM(Rk(NjJg`Wmu-6D_ z&YSdrIeeqYH3^CF;KsobrgwW7kaAO#hqK-6w|aASw&OFD*z)f8qK*Hr9if*K)v@_6 z%)6gLPoubc)zr-8B{Z`mHA14Ux_U-H<3`>~3@cVEncw<#+`r;RUQG?wnyu&zHy-Q3 zRSrpl=R6hU_VkcN)TO6e>1Wr4heyqyWrlwl5?vL(14$m&)u^f|$*a6{$30K#;9Y!7 zEn<*g%6jyY%(#o5e5`9<-GTFmdJcWkhg2`96|7$)M2Pa+ii7u}+snEM@a&>08KK}d zDii#9I33;C?M7;Z`l*(`KM&G=oG@WKC@cFNdcTJy(Y`l}7huDG-!`KU7;dLJi2 zLqFQA$MK>FD=VrcNY0;4#-YL7@TZ{Bs9C}-?eYIxR1=|iZEDiZW-?g_uX5^IIizf< zbSX!fo{w3pQ9G_i;5HaIA!+DYZ8H(-KA!H~soTccbGvlH*1y#qF1Vj(QDvmER98d# zqT1k&w)VmIgdJA#n5&6KZ;kgrD@Vp^otpR+e2^U4ps@zU=77=i&mQu;>F)ys4wY)L z4!|0wZ&>&vtI2*aNWR6Q;w|g07-=+AzJ3Dn!uF==>9IqH@q~`I_-7RH#?^tF-i%Md zZe$cS^ga)0)6R#xL9Or|h0(~xoUVa)8Q|K19G*oibFZt+gY(6bm=*nKn=l#r6PKQ& zJgM-jr?DR3Y<1Q<87Uog3DJE#L~r7}=vNs{^z8!Am4ZCr6C=^Vl;HNB7iD*NQf#;U z6Nla0({&9dvUa;SY7EPd&xUcoPVIM{{##Hl*1OiPFAF-(gDT&*-l_O?HvM(Cv+!t! z%}wxx!yR7=zqKd9;x9z5p*4*k5$s}ysKM+l3o=3u81?*fskx!b#nm&f4+65fTAAK& zFL;+Txi{~V*e_bu1@?Rk2U3RKL8tzr5!7q~`p?uDM`Xq~mHOV}C|KNpPiv*bH04)a z2xwOKu4t0he<>QHppUE4dwXH zRBAW7xtQ*R(#bnqG1FG&xKLRk=N^R_1G=FFr?lPyfmaWJiC`a#ZOBeF%6n8Mmg*uc zpdZ%bM@A+@@e1GIhXj z@#N3eDWngVuv$Jy+#hRmldk4RM-(FKmFw`euQ|HfI_@X-Ytd)+98$yk%yc?r`S;N+ zWHh>WWyK8xQApFjL*QX)kn59FQ-hqkd;BR0cTWEQ-m3PMv5!EU8sA@#wN@ZiL(gI8 zO;O}rj@zyxTd%lBtY#JpG>bsE2*q1!N~VJ=Z|mQjmu8SrDaa8)I&ps?7$me!N;JZh zkCphEO$4(35#a)Yj7>o=t_ z?Nn7X;l3JmQhstje0^!bBO9ZX({eoRe4n`T_|(A~1*otn;gjEWw%Kh#eyH_;sx`*O zCC<9^#SLFdU`jh2wBo{AZyPq}=acm;52Zf(bAt(_`C9gi9EkETD}nb-^E0PTz)%DS zvkizphLp*vMGY@rs>nO~2e;6CRHT2VpXaO@B=CE%GX}fggB*#D*Vhg&(0l_|t-DX; zcW)s#5a>;H1445eDeTF;7-!zbN8vC})QH+y>cUsud?MWC{z-S; zH*RJGQeV8lFcP=M@oI%GWte(BSzQlSeG!>vc0zzp{zSdGkzY)YG7U7NBOE@yA686! zaIukU2zr;8SPwk(?lnulPssiB0!cwu4g zb#d3RERAO`%NF#}9Uo4bdmB82!=E?&MCi|WiMiGrErS{Wf7-EHO=&;xFfPKe zuzp(|7>;FwBlxqC8^=cswY3+sY5Ml6zKaj(POI515mEg&H(FRI!HzoavCveWYY{>x zZm22iZ2m#fclvrNCZw?Rd9Qw@|6As?$sLjI(Wtkn`Ul|LUokS+uMHjga!VN!?wEC} zSy^A(t6=3j@Eg8_PWr?{@PXHkOhEdSJ}=CD>SB6*wuRnws<$DjPuJyUjAh4j2D}_W z9{)rD&~>yp5DExeM-8fe-?E%>JBtce+xTkG^ryDM{dc-#IH7S%FrLtms~ua_a*W`J z-2_6}N&4@gRQNj%rYk3hWSWJ#`ENByK??^R?}M7OXAx{XylVsQ`N@By5ZiH0sHkT& zXY3GieeD`~tos1^vbxUfC_?R2F>37T1tj6F=+AKJ2X;M6G*wcWYdj*${2QUZaw_3KbUymCid7;4s zezDxJXCJ;Oj|cvFHKU1nnV7W zS~YA~;uvV3PO`Gzoja@N)b=lCBjLy#3p`p2BdESN1(72sg?Gstfmd)xC#_(ciyz^q zWt|Yv5A@`*%7wa0`?k0mVlbXP^XPsP{P%34+Jn@4cC;hKGD7%*-qbmYgrcIBq000T zfAxf;E7PR)g+2MJgvR_@!SZxXr3NG+f$kk>qS6?tq@%1Si5tXYJH;TT! z_bYKobsIals=Z!WL5^p76Rj<*Jh$6h>fsU4z_P+3(nFIh9Z7MhEgG^Z-1L6)I777c zr!U<3!}_{+A|mgnVKANetYTlEa%IOI@SwrLY)Xktx#5)!f#x#sM$djJuYUQj3yFo3M^|xV#Y)tHweNJj_vmLb zVhGS5;aA8&87Udwoh9t;A7u1HJnfKPr22?Mf3VNzcLc_uM#Z0JO#K+l!T815G9j6} zNs_gT+i9N5hNWSTMTuBE5fBUwp2~(R41IKH)M90= zmY>^HhK~M9`>Z;;U`SQc7nM1|9=1cY9($g?WjKyR&iLW1DRFlBeoO{2Yp{ ze8SMze>%k0kH5;`xRB+Ex^|cirfiw+UT`b7NM%DfbgxieoKv{YHi|k!(Ubp-Y@laW zMKvnsqJ8T8)dr7jCO5xF2)Cb2_i!ln*?BexMEr%0IsXV+Ckls0JEu(OPfnH@@5~sf z3Byqf`r2FMTKoVWS|C)D%x~~!%g(X?8S~^e3+YKJ31rwtdl_O|{1xz%`;B;u%`un< zD~6ouedma0w0`}ml7)BQ-FRyz4 z^7qQS@@USp1@7GWws@_mD?n&=wXor4PPt9@NHe?uSPsSplE38T`MXpda$@kryQ^Jb zO(C%dzUyfBP}L7$oupNN7UHU6)zH#(%vJZXZbc1sb@fg1`5wCxWp2fDx6J$RT}DwV za=U|=n!y)T$G;}}?V~L!@djH2P@O#lg6=->j62E}hVvEMCUEO}D!;e8OC5W4Lsbt} z{`m3ZWvPqmlMY{(o_V?XRf@)|tK^iR?~re*MGWT}aO`?IzEWvw?tVGF9A%{p-MpTj zWGlbns&lkQVtb%#@Lr@|)npI@BIo=tj$D_$k(Wm{%nDyiy5KdW+fX-{Lm#LidXNlB zH0Wzjdcevu09#?jp)O5?YErFa?$5 za<2ek?pym`8QK3jQkt7jJG;0fnc1XMGAEnzE1k+K=wI;oL;ga6x*$RA0dZh}DxqnY z&80v2oJ)lXbAm5Up^MA=)MyR693Yl-lt}xl#1acLmx2{2U+tM27w_An4pK4ABUX(L z(d73fqA@_-Ll=>(mA;{XtU=1bSI#-f&CaOK;4U|-ec`zoWIR>M$oe2y+Rzuun-Q`% z?cI^29Ai_oRDA2sv}GAk{sFtP8TPkLo?MV}u{X$f7DBl>SVB%7Gw8V*w;sJ5{* zzs|bvxwGAa@jlQu1hC&WtVoz-(D=|uE^$@A;pkgfoyeX_w~d;)DZN!7t3g* zP;#ZAbO=aI>*cV$g-*n2`B!-yc{qdw$)LyJlrV1X>Sx4QbunltJ+Re5&&cp&XM?5J zh%3@}FtZkj9Z3s+L0VCNtiPWrA&^mOVVRM0z9VshWee#@j+agFkQ^YD8#j7mJ`CxMupX z#2&mA0QN^${&T1Q&!PWcKWTtZ_g(4*Gxlx<&!)}(3CCd1aI^86Wg<2ro*+n_x?+8d zpGY{DnMqhW9mOp$qL&3kvRtTRs(V1cl?%eX=Bk!p^;WkKwRrYBVhVx|b}vwgPo>c0 z-_JhuOlqyoPqroj`FmYJ);Q8aIOO`@zQy2=+=-;-68_+NpxUtTXMOlO$Y z^?TFQWIR^P1LwyU<`Rv-{z~7=<_ddnU)%NBExgvLd+j1AC3K*q{U5r(rfUS1$%wSo zxy9YQkKwmj@-&QSc`?4`1LTjcJd9^Qa@;qD8{f;r!4rIk?^Nuos;2?#0nijOt;E1p;x{b;5}jT6IHf zMiCtyu6Tqf_?BpquGxJ(=rr4pqrUHCXR8PBHxjHILyk8SDue!^tpTE=g zpz_Tpgqw`!o8!@`xgsE)Q{VpN{balD+5t2TV}(m$6Di5b6NlyGE9LeNWH*Yc-pOle zY2~xtV?>F$LtD9(kE62e_`&Jp2N7|~;W8{SP&jXmft?yPq#XF{#{~cv{hFyy0f|J) zYm$7>B=tTvx*9;Sk@s1%H)8YYCgnNG(cdPtWslS}l}W_NBH4%TWPu764N6`GFw+&k zi?tfPS^A*ye=9j74sK>gOT~enR&-P;^=94!qz@N-CSAN2vv@znFb`_WuWkM0q;}4# zZShz+bqditeR?soBlXk2C+3K~=@CWg1FF9b|Ac__(H zx6EupbAc9kLfC)h@mH|AT#)4oqWZ*331iN5VM$>0w64S zt_zE|5G3@6(ZUjq&!&HjXp0q`>4pbLh>MfTi?8uJ*HrQWLMdoJ4$F}yX+u2&BqAVQ z$&i(c=|um8jDSC~C&{XlvCD4-%r%n~S{vYB&8q@*M@9S6$ygHT$uG&;(I=Za)WH4K zR-<(w`K%K(Pg`-L_lX*%GGw{E=WUIS4zqRrO9z>qb!>6*9%21wVsDU>rlC=|J;!0n zB|mf7hwN4Mm0>U*3E-~#a(jKz82&ws^I*Cy%dzz+iPKabkt?VwLF#0oZtbct^Q{iV z%M60$9ry%}V}Kegm1;y~FUdW;PB+{BXGG@>sg5S`kQn(mu#9@l#{O!B! z39gI?iywXnK5JxJ!nevWt%85bU)nAiv{_1Dw& ziUuUK2)_g7S6A&VcCNFdTsTAgarxs>&~)6XbJk^dR$^nhp@BKZcy&|LUDfm3lGd8? z0RG#$L#}lph;{Pj%^L=9!kN4&LAj#88=J2GhZ$5jd%pTcBezFycl!s3KmL)z*PRXN zreuEGAOj$0v@Bb>Q&i0gJyzO64&wGBMO&q1Pw59z_j%{&#D%V*LS}NJ(J}A^?=Ou0 zAbBEU&J++x=vKsz*?yJly3lG2Wm*zsCxrZFpLz_l$R8`=7=Qi-^~|TooV7DD>6iPR z<(3hZuFbT~J7RD5ZJA*$97I>oRTQ;}TAYlgkGCS>V!m}GY0U0#?DG%XgGRTVPfbB_^4yo0k)Tp?l{E=vV&}jzt)Wh2P}uWZZq9dp(&aMXXe9T%wD~!?W^`WOuQ-J% zH(XL%ifteyS%T&#cWZvJ^_Sp~aIp|~g@46T*>y{CQJv!{7mP#>I{!RFNsQL8I*xt) z*y{cQ1z+x4xca2#moTcY;~w50(DyQOsbh3#PjXjj9X0{IGosHj$=MkbwejDJ`fLLY z@Iuq(dX>rg_IeS_(PG;ByyXXs-bCd|7FOM1(Y z_uHq2W4?*tj=Yo%YBzlM>vyQAPMjxc>7cQNoHl6+a)S+xoCFa=;^C_0{AbQ|;fNs% z9whxm`rq_BDXTi?@4Bnwgt5uOh0vi}D!`Hccq&3Czq1EtbJ_64w(UV z{xzr}GOL)wz926z?f8^p4*vti6R2zNc>KQczpQreQ5_h(I(i}}hF>~4dE~55|E)G? zn%7og%hs>?0Mp{d)HA;Y^-BifA-+YMQiGB2Pe}@}{nG>e|3%;jk}~%B(lLMd;_=eC+B+V0 z;O)Md^-(_KxmaZ)#q?9gZ5H@#fe zv?UfC{&d3qTIbO=AxC=oKHLfwmR1iVhHf2iSh&o0{os2?HXv6@-)4`3eg6f$%nN>6 z+mAg7BG(~_w4j3TD#GC-E*zl+9#gq-rrEtEXSpjzMCcE-U@WdRAqBH@yV|3}Q?c%~ zi0i7ynhWOZkMM8q+a~5&gW}x2@8l;4%{Mf_zrFo(&r&*}=5k487Z&s`%{6c@+G%#Y zh_=kzJ zuWg5I%i0wpnV4CxC=0vIAKpOU1M@rg^OUru_vW8w%YlffsrA4)(C(f1033o~x_MRo4R_KAuBd?1~(y+S*3kwUK z!r>C-U7KE&2FhDj!nZ0tr~fo-b&Hl;vM-Yafi$3;^Hk=^Q(u~0u7NA_2v7=4aK(3@~s@q^kU$(x-~k@XGF9r9-PGUjn5cp zCUxnb^`}0RDf%{GSMlD}YCOLNFL-r~tq0VyMA%A6Tag4a*JF03)}tgWtJ)pFJDOp; zkEGY7=%$r}2n2!xE^iP~F0-%M3f!3Qc%0~!*Vx#7u(;Vs+y{p1Rxm2&j!NX-_%Ll) z%rlHKSzqBcCKoJ$IoK_7H^T+SDBrq$_3AHFr=javx^4H4ixqf(b3=g30~dMp>*Ua$x=&~OJ~yKz2miyB0A@>;l2kx^J>~fG?NiF(cwtO3QcA(% z6v{Y*+*U?*HJY#lwvFzI4_Fi8eVxETnwX!~q>&1el-Tv#`oP>={Caz3#IR}!qJ9C3 zEC4nSB4x%GL-$;EC}5@^6t4r>D(>jKsB009_S0{R_*k>d%Bwzqap8braI9fxu?Apa zKbFUH-W(*RPICxyS`m?sX(m*=#OPk}T7&wc*8L+ryM8kOB3A=mO@|Ily4NC+26KR- zuOfm-d0BJRpxAr*msvZIpDq=3A?UrWn32$cP37U|{WS&ZjF1UaGOw1{BP>Mh!SuJ} zXe;+=4^#dFZBo%ks<_s1DlUB`nkz5OH6jde$MFm7z;^GeBtb;4L zw|T3n#)crB1CLC)YZ+$v{o_^lsOM=@E*%4o@cJeW4ql$Dp6{Bh68{o>MW{<=Bb|^H zS?9%{V?wX_?fR_VVW_0HSK)vK3qnI=oZa_}40X}UpAd?1Uj0_94~&68j4tMU+U#ec z#Mp*2-LE`sA3a(ECRTp+^bHhT;i%B0%{)iBzjM39XvmN!zw<@pI`TCpSpmVIcD+k46B|UQ5U6Gm-X=4gBQWq5!bCU zQ$Ji!^J^T=sO8Bj+%6lg* z8X_O*Y8P0ZGr=vaJ_$1kvTQi|gzl)jR(f3tK?Xzt4&lC*6ZEq^gv_Te=a4z)?`Q|S z8S+Y2R#NKhOuFeV76{|;aS9C!Yw9>Rs9ydO+Sgwbd8X$wRgDK`7gD~9{;n@w*OunP zEn$*mGT-X*8szq9YPYz!xLJ$RD7_6qX+Qk`IJN(Mqhy1*fKyUT=|$l0i6(uDK-DhX zYM$0(@Oz2!sYf5~A(?iysj#ra&?sHKRsFdVDf5PaC+T!g>P6i#C+b%BAH%c3cn@F* z9d;hyt42M=*RA%8qNq2pKTm(plqV~d83t<_-dZZ#Qh#Ap7{fQ=j;an08<+j_ z#Tfeu5S#a~8FhbvVfG17PBb+_XHHt@f^;Q#Z`6IiEYS#F;CB~foZ-3G4<8F}V&36l zbb0+X@pSQm58NgK_d1+b>Q&F01Iq-M{_DUP_)>u!Us>{GdD4QMSPMw|pe~*~@df83Wc-~>1WrA)5Yi%P! zft`d`ueH2N6zRmGsRK*I^%H&6*uPqa;QZZ#0DMT+TJq$jNIX@o!5SnIb#weuaIG3| zc@{M*b2r1v1e2?R{NVSr?onYrg6cZmX_!fkQ$00uv&@j!Vn4~umiK(`X>U&h@z+36AP$nVgTu2u9u-(Q{aR0M*%W>71~cxyjBo-B`WJ+0ZX6#nPG(S zO&3&Bu&o)-LAOQ&&+N06)Q{dY$Au1Lt&KR&#;eJ#@lkLTqPd}4G@FI|u`1vmT7&Z8 zQVx2^_sDz4*RSQ=7W+)(ET9!L&VstS(a^VTgr1k5Tc&`m$j4t|Ky2V8<%GzQY%gvP z|2J)`9>y|N&1~*%oyX*hovr{0<`C_80r!ew1~a1Le(wia``>S&3h`eS*A`c+fo;Sa zZb4{eKSc{$h29*^c8W{De29_=0M8qmS6yWOvl|F*{D>amOfK6;dbVckHDu;Ja_GQ!=ORm z{`o{B*=U21=(}QB@C0<`H|0s%ZXv;!w{flX@Vb`PO#?9$OchVG5qrTXMG1S7TzowyY4TzXRUt0YkQy&iQ=%_t4j0 z{ym;O89?11qjW4fy^*YaTU=QLSI65$(k8JV<@MV}jzTj5$Ij)y(dV~mn-~WQ3}Y3? z*}dROzMYYl@MqmQY7!WEV6i~)$Hx%bp7c2we>x;jenJkZ9l*9@+g%$zbF6z{_LZQg zU)Q>U#v?2+R25L89ThIxd17I%&`MjJ5E&YXqZ*M)K!m1Vr0VYWpRO`L*C8pG zmA+^nAB&`>I4{_npfs3yw5~RX5m8_7foGYlPE9v*@E#pATC-_(q?g@`W>=ux=0`J4Iwno0a zKC9WlZ3tgpd;7vHd*5UQ(&_u;*djPcwCCaXjRol{&DKTEH+zkZQWg@n-+!=KnCWJ? zyVmV+7ScJ7-q+Jht{xG%mLz5z-2W~o`_3R%*ZE1gK zSLoN1wf}35s>>&HBDHSrCtuuI?w4Rv24-TnMO&u&=6Kj#+H}$1BxYsOP7`Bg4uXGb z841rs?!L7S9Of2c=~DcibuG41$YqZ?E!soM@=D$x;sG zMsE%%I6dmSr$Xrz;oBV#ql~oyy`|Gz=#8PN&1ShUa`inT*WcZD{Zcw#-8j~@ybUac zZf2W|{}2wQKZ}A7Ed!>KBp`~qO7leY;MB<|<`_JnZlNg(e|(;ps=pp_bs#8Wf;PL? zFt6TjHE8<*L2ZJu_H5cDT9(!lRC5q(iVqyV<{*|lFtnh+E!*C%!QR`%>CimH%3nRN z${eu7VC#DIJaO({EkGZb%_g`+t!U#8CuJfJLt`L%vDihhs=&~glTq@|SFaAd{#>}q zg1(-;X1|cJZzliz6E(Onte~HIW!z#^+{$S3E|01w7<4K{YEXpcPfT~$nI7P|@*qX3 zl4xv}dP@qXvh-?8$#>^xNsTA#q@S;(5JVr8Lh`SLsJ&^BSgE~+K{VrEL6%InMk)q(yC92( zb+k~vgD$dIX4fd({Q*O)$!CqIjT%q(=GaqDw)s4{nY# zyB%Ui6mfID7L^tS%q71DQ=k2E-SF;eOnyFe17D>p(0wGuvWDPo&uEwaxWjc;FHSe; zq^=!9-bejIFjPOKBX~vf8l}prAmq%vHbmE@@cntUZ-Wh?g?A$Zd;Sj4ukaMsAb#s0 zNXr8E%Nz6z+)MVLa_hsm;q;S6QF?bG&f^toNVq_oZNKzOK`0vyu(591j;4bJhMbWWIQgd5g=9jaF;^ zxRq!kQz%(v@r5yv{!8_4i{9WHg3&^>)v?_S3cpV^J5ypV?zQHn)EXKTWLf@A;=k=+*%K_gLU(75hV6vb zySx6_ev0=<1V>f%Co(?lbu}*hI73z_W%y_x3SNu=0eB0LjZgo_PQZfn z&C?(n8pKTRPzne1expIEox?&^x@u^Y;I(J3D?Tf^b|N_kL-2koXQ7bpZt36acw#FCPqQ z^Noxi__YN|KP6ZHE?Jj#Zmv5h*85JE*SEuP(CN_rIH6s>z^^84x&7U)qWWjO_brBV zBCZqcK0PG=*Y~oh!kQ{=5IV22)Af|os>se=!o0k_r&}GEtC!z^BcL8Dr6%pa|2@eI z)tj1$2m8hAfCrbHwIJe}-A7~z{U6l#7VUwJh`4x2o6i0P!CL~xW?Kdjw%y3)F{eza zzs;7~5Wj7hfgzZ7&))_dZ0p@0I3HS-)U$d3ge%vR8u@?;=qtcNekma(g#>XcprNn; zmE%&bPVA?si(!qe?IxB>RmO%NfEU+02txKC$ZYyh8v(84IfrRZ#(%T~#WO0x?xc{dDd@nsOIs_Qh zSp^>CE!D`|l*6kcJHCB-*p|nzs;GJxcgrpOyuEfV*T~ve!WDLe+Jettk+XY;w&~oF zQL!|(T`dl}ZL(C{qKXA<^zGYa+H1W~l}OYKka_I%CKmFnB3t=E@zT<*(U3aad&+mQ zhgJ__bVHw5J{AK^NlL*V!#vNcJPSyXkH5v3@v`GmP*NQ4HrZ7bR~-BF?p+Al1zCyh z?pDzJU0R>6g7sPj?ECv#*~4lNL5^WA^S9;dP!j)YTmKtXp#eVS%zR_dGYALi z0|!!sC}WjUi<@?+w3dD6M0UfjPxeO1FN?SI&5)G0$Bu}U|7JgnU_5ln3jQe6qaj~O z3~4oyQxJIpc<1%7s&wl5pb=(t2EF>S()~rZ062i>zdAUPW%i8sH4dKfyD2P(itaSm z$9;}>@U-QgDk|p^;(lHqm+x@OCjZNo2Vpjux?j_9dAH>7Tj9*~n>4ZWMet9;E-xLb zeYU@SI+ZwNqVxYaJMXZjvhD9n7ZE`b7(kjJC{?;hS3yvUqBN1B^p3R91EL_(1Vnm~ zj+D>?gsLdLOHJsV0HK$J@@{7C+$ndQ*XQ>SPe@LZlXLc7d+k*|Ull7rL`a+xS}}h@ z|3GcA%4c&o^z5o0T$fQdm|k32A=dbtAIW@7@CtRY`MSDL#MG1sy=+oKf^o#n;P;br zI4?`fw{%{189bsbA4Er>{Suvb$)1FfmIvy)8b~yH!H)&gQVKtMc ziv5!#&Qe5w-V147ZFi^F8HD;=GcLFR*|0e zJZ{CY>Lx{XQPIPtrKOjv>V8PFGaG&dMy&sADu3OIp0)N(PiL>(oz}^l$Io@EfZLBCZT^@0@#8mxUnj*T>*LXNqZinge?9I8ugZ!Mowmntu*Cle3iS8) z-N}*#efU!A{@*ee2q*IX2;aG@u&_zx500#&$*CsB29sGsDgI_Te)MmO+8OpMd-y0c z12~mPHA<4-kgH%uZW;MbemR3(?}1>tN$oL7%(_2)nmMu#>Mx}>KgD6MQcslr=``;f z4s{=lSypwyLB=8(`u2wG|4hk$wtk?*1n?&5q)exdb%rJM5HZJNAt1j zI~-SF@%jJWWZ9JZT8|YjP}V>#kSs3JJnBtMo+s=xPioIxuf~`4dn5Ya@7~{sNH<6h zHS0xMe2Y02?7eVBN<@i1KF(ya_`)?|-&Jakcn>2ZNB-p)jz6v+SaWVpH??$1*ci!J zjS#MmGzhld^L(GkpY^jmRiAn;vPM@ybIbaNdHW()x#cfVO{J$-E4*#{w9>_e@gYAi zTd!6hUsRrvAwM-WwTw0JHdxgPqXUE|H$1Onw{btII+7=MPG~ez5adIbQ8x)3T^}(V zuF>6<()0MVeORVhyyMT32p7tIsDO$I&;sI^DA!ProW8;;t+zxUm!4Cpv9!dHQCXRR z#HE6vyGDA)VD(9o8zJ_stP@fH4z+VAn>%4|uX+Xxzt)*E8^&MA2cmk?{NuYm6zvFQ zdJi~xr`~OZWD){F3Zc&Ze^?9u@#Z+)uWvDBprYayD9XQpq~~5=r}ytO2Av^6rm?Cj zZ>b}9G!s&un#J3$#DtuGa~TiLri2u4iZiUc(f6^D){=p(BcHd|dd!Mf_3njDQ!8kb z{P~MnZ)GXSV(gz-c%%hx)*>c9)gfyZ#)UDs(7G2=!D@~V*(P?yR3((F5;?q*uayy) zDCZHwes;?3niHSCili%zN^P2j%`;gq|CBLu-uZ0hr=zA_oTL>d{X00on( zep&X-y8RxWRpYvq^RD!PxA4dpgyg*G?W{_MmXJz*hwbsX!|=R*9=Ke&YP!uut{1JR zw<=_HgMkW4ahWeX(=U*?7CkOZUTq`77QH4`(9~~neTnek_}jh$(T0ib;5ohWM_S17 zy6iLoPGuhtVQF-N(0?b)ucfI!{38n|ObA}4cVaNZKNj{MCB}=}r-|&*W3v^BFC{)T z5^K8>0W8xvAdw7lN98^YrCvDFOV18ScqW6ypqq40yY$7XO$SymRA-=EM9)( zAiQrv*Q+j8Ea@n)1cUg6>g6XW8U$Ahx$xsY>dD-~y1yUl3ZL`J#E2W%BXn%<37gst zZgSM?QU4$U`wwfGlbkHUaYD)yh8ZRX&U}HmVa;eOMZ}@Wmm|+fB|YsC{VLQ zdHLRrGZ`T~EHjDNk=na;3Q@yGf0FGMp6L2z$WWHb5cymX-t;v_^-4Z=+9Nq!{^p1Q zdjeGL%-+}wj@1ETBtZST#Sfo*YRWmMmdIaUvr;n{iOb*xu<3eQRKffzVF?cUEm)Nr zI8~c&^M6{P{>dHs<2iTPdeS?+nFpCF91w={Lj<@KQbNk>`1IyTniByN>%<9}zOqK* zIwN54rML|x-p6nx?#4-vNcMJm^hm0M&>IQiR?YXF-43@pi`<)x9VbhG_l`K^2TQ=; z=FBNyrt|hM-=XT+sj_Ey(BX{0pL)nQVQi`8uN`7<$KAttG=FvNjcga$4Giz0?%a`0 z-{{(I{(O;zz$c=FI=jw!g?WKb58GR)CYV-Wr#hK`dae?kR$h9jN`Jfl455d?q9EsW zN`RsTmKKBSlo;LgNR>a)Fxk~yn@>8mJHf~Evv&2@HFRMbpOAQGo%79?-$Gr6)Py5V zmO8IPh6#W2{Ql=MC0zjCVivmv$^Y#GQgng02nh-c`C~=+QGTTw9|ZryrmoSrpoQP zD!I61k~={L#KScD`%|}t6{VzE_3zzlP0-kRxVu7FVO8(-LMcaz$?nRiKEV_>cP_ga zq>!ESikp^D$X`$7-*3!sugWIVoKCt|rN%5s5+I8qH80=({F&OjVTF`q2ow|!6PDtN z%i*P^t*ukNDI^copR9rf6v-afzS3DvAER%%^my<);ix`sd8sgt2yRu6Fb(c%R)oNH z9+vj1(&mVVyr2d<(%F2nePMrfq`=HE1(CL zc-A;}!ofi1ou+{Aip}sa8qIJ=s30pVqmo2hN8?I=e{KDCMTK??qoDSM3l|OsqN6m1 z+{hi&lm=4vL%oy}4uNK{qJn8vW6W{mvhH%4B9Md>78V|H5l)ffhrH>)+S0}tP)9|n z>+4&*MCxXwmn!?8Wtz#GI{&{m_y0GsKqX(dKvlUKv+X>|pz%v6dTB}JorCUshxzyi z1bA90nVAELot>>tpwjaraU2EHd$yLAz|@9$fV;HS>o`~?gjtpE98^CA4gC2r;Yqge zJ_|1|P0*rh+#O+oj}+>V_H0;r@-v|(h;6(P3U!Z&0<8LhFG9Yy`_ zz_Xu~YWuVKsJ+^qC0H@|{kx*Pe1^HpG8XF|>02cq5fRBQaz$QUxxRq-bW>v~3HD}+ zXnc7~Qa;|7IA7f$&HI9Q&Emtu5s8Vjk7v*O7UI(jYKeR3VgcMrD6$zl9t$s+xiKpy6uO! zC-g~7xV#I&J;G5M>2GRpXKj7vsmZ*vSA~~F6M5Exm1m9{g*i*D3n6Ly-0Jt~|H}|M z0#SAXl*o10qXQxiU60(BJBgS5h$#ept8zH%2cwk`m6h_Ja&t{gUKD+g&0DQIE|T@9 z;4Un`AI(ck?l71#28^GQnp%lmt*C27j*_K{i`A%VN!3X=EGXJCd5NOJecAjhP{8V2 zTKYIgl#O&D`_z-tP5BouauP$s!b)KL`Bco9$Au4C;$a z>jx(E4}0o&skz^#HyZmGn7>3d1=G!%`d|u$XjlvhHylWi5AnFTbFJ4Z{CdBC=b<)@ zJvz(uo;N24Fjo8I(!M6Hw!R7#Hqw-y`?>Xc*C!^W=N~Zwg8R!v_-F zV?Op?UQRp$JKNceeDv}3Hln*#Rqi=LYbLm#afBvrLf*ceOEC zE3lZ$@aeKP!X|JO55)~%+;b>i2y?lZBbLSh#?xk5S(%G4Vg3^x4VzH7hJ!;fLAf!_ zzy7*E8IeDZ^R2yB_zfS$&BYB`vCneG@qE`Kt?%~%W%b>;86^`g{BCk`Nq|zUR7Q%m zv9=b}K@AS&cu)i_+Ma0yD@o}f@V$I6opIj>6CX`Yf2linVT$Sw6tr_&f7mJBaENEr zgTo4PoC#1hO&@QQEr{mkn%mcyM#AZ49gCN*l4NAey6lQ@Ow@2=VExYR%RjS4@b$g= zKzHyewMLn`?zs7dei3ZQB^k=DXvbf@u{Y;@aTqAeP1W}$cMQo-1HYkV?HQ5a^Tr3m zo{{7x-xVWV(S4LUaf|w{pDmT`3qRzwxAVcJJ@>BnBp1+h>=lq!v?+5yTI(ql?C42aiH1@Xo^{n%_`x8&?wrhZZTVUWiQp53nP-C2lZ`&bPY;16_la9{Q z=LCL^jsb)PrnSsxK!WD})2Dfd>e&sb*RQ$nBqJLMkL#VK%IK*s>Oburt7HYs{?v1% zP`%ZJ>$7L!8r{)D-7h`+TyXAsABT? zWiaGS{%3Tdy<2z(2h7Hj*xk;)hR;d>Ln1}Xi%oh%af1Z$5`;2-!fEO@!YBK1@qQGk z<)GkI?hf{>`w=tjj3Q$)t0_$`inmYSDXI^1j2&^!J2cif##r&x>pk%r&Lt2shqYR0ejj*4Y8Sm+T3Q%yMQqD!gE*%f9d&q@ z1=4JI;!+X1z(7p83OZ(L=WQhvzAO?; zHHpwnFj*Db-cK8PKl%OrWD$>lBJwwOOC2UU!{#5q>Fv$Ij^d{Msr*7gXf4}w45U4PY3 zr}lY9KCEGR%*Vx!EjD&h)P4-X)4QlFbitPxX(j4Lo(ap#E0^&_aaTe zlx%oH;Si4vG0x(sJ~jUzzYc{<>@T`MT~=|ka!aW&-C!-y#_{I zhM0gR1Yb%lYLHPz6)ed;+aVyCuZfUv_jaS$$yGws^$cjs zbKKQ-mJ6wMhB1V~ICnYk0=g;g{w*W>n}U1E3JHskKjMvpo$48SR6!Zll!&%8oOiSG zc;{x8&CHB(%Yqkz+QEAgD90}Q@#q0W5Kieom@mz<&y6_03=2vi`^0I?Hj>a zySmUYFc_6o&Bt#(p#8Z_(pI$(@u9}!eTA3I@1qp#J-Vp+F5?&YP*HsEonl^C<$-Vu zf<2)WSG`BxU2%)EzIJmuL9wZk!U;HljoI_4cM$WomM9ajDc}CJNsJ0@MX& z2F`07t~UzbYiJ>Ygd;tks4pZH&d$~{mE>GIOEjBGouIGw|Q}eSiDQ=ZGY3ZVKWpi>dzxcWxGUhwlp31uqH~Q@*0eCD{*2MkjgC-5|v{CLAu=-ATs<*f+W6`qTzbP=QmTDgWZ$c zOSWu5dn>PRcgxO1aR+5oRNN^pF19vBKR{gjbQP}FJ%sYCOJtYqCGZ;8V>Ib!6_X%;1F_g!NXD1r!O zH^pd`nkEi1|J=>ZW5VMcf)()AONj^Kc5?3~)!fPTsh#(f!Ncb;ZO=Qc-3(+Bw_;9V zikQ;USqU}e4O=2iY>9Wx(d{OwkU`}ho<91SB+%4e{3Jm7EV-fGbvg7l$BmlmOetLi zQ<+e*ghsXiF=$)y4Q7hb$XJtzk^K=F8b^8h)OZ#Qe22wrfPWr+0{2N7< zCo&NKP@b?i`5sZ9iOQ|oW<^ALhfwTF>!cB}5nLU-yy{OE$y{LtFfnx86#+hd^$S#2 zSou_YBO+}0YlN8^7qH^*sU4kKv1W5?Wb1v69-_+UpAQ37LKPd=liFe zy)5j^f|)86%2vj2XDJk`Ic>$`hx=swfZ1BGGP?iqeU;la8sF=8hqRA>IV{@@*x`K^ zO8ggx>c?RM!wJ$mIy4==yMzu3zn`V73}xXpR2s}I1M1|;3{85jLNNp|1G`sC`g&0o z96vn={`#$0xNPz{dw#xa;h@%5<{7!ATCm!?#tK&@73B@xEa&_8?jL>-_*ps1zd1{w zgnSCO^z6g?_pNWKxj_T#t#83hSBi>OiuQ5dmNH5YxH;?X0vnP8UWh{94+M9HzTmnRl4-TC=S#1*yexEf=7=M(*la-+{ z52MEzafT;_^SyZSLe$V}eJZ1OWMqlynWcKfOnL@lvq}|h4w|qdKP1f+7~%iR4Z~*E zzn55z5*v>jwy;Mq)ezTP>5cmTX@LCU_MAMrZcl`@Cf;p)MMx*&@CtO*KLE{K#*4kT z=%hWfamtO2jTL<--~9o|M8Pxu#qpFKr`g+^?pnr^-l|V59?oP4kQxGQF{&KNFOodh zX9u65i+%^v{&pp=ay_|5A+_;}?8VSWl9noTFl7FViYIoMc4I7WxV%+W!j@CQx-Q>f zJKnD5HVBxqOH1qXNgi9{7PNfn2(dBsVKRr8Vbxgop|pESsvoMWpMs*q3T5H6tc-N_ zfc)`ft2=5fZI_xTBqrYq}9(JrfRpsp=fH04V4GYerT|7G4L zCbu`B*Qi(Xc&`sOJGwi6r|Q}^y#UOlEHX0E_|<+|rFqZuob0^!uTlwH+8C#H z@8oGeG#<35$2Et4SrPT7j`_Egg7mcqk94iVa={idzZCSs4^_?1Qt!NQK6D3-z_amo z$3~IMPhSknTg^z{0g%_H&}o~U_Yl-G-C>Vjrd;$EqAXb}tA;fhdZf`U3PdxFyHn(V zR>#$Hq>B}u)Chz?%-n=#=WRXcj^yUAk?bf>jElP*t>^yHD-mL1CN$=)WeVLZ8Z}<% z#uuN@>q8WaJO7?O^3|v6?m9t}^w}8r_3&3NNJ6AhjTk78J-nl{b%}Cf)ziOMwDSO+ z6A>QHR3JXU3d$)z@NzpD^o29E3*0@F=ScRB000*GDy6y{II5B1=CL%G6d+4vmsD8` zO=0t=-TMkZ+AcMkUBw|Kbe&y@(ZS4|eh$UfWuV#sqM5jT`mC$3G~+}87R1v8fh?&` zm2vC>^Tm$Nq{I~uDuCNjDx!;c>{uCgeR%ZIBX!~fs&Aw}4%u9PK*XW%{jB>D?f{GQ z<1=6+6R9`^Q?w9K1xh>z6@5Hz8~J&h{o+rZ7uvTP?ggfo5p6+(#A=m+%eakM<<3$Y zJL|`JJH5jroM+Cbg7O9=s9u+u`Dp&33xwWQu+HCLH3~`ScO-*k+<@V+uzRrJSlBV3 zD_@-j25(DwL`|EB~%J)KFl9)zY1m$`=)xgjlbj0NYtraH5ptlxosE?TW1M`aIVYX zDrd6$2b*8Jnr@#PtAn`Q$^CUPdC0c5*>xNVlzniCFqiDO&GoEuqm1!0rj&04eI_%>4rB+T#$N`We0Od~&7kZ_u9t5QI z8M<_g*&f0BZvT>65GJjAiRMS^&WZg8AI8e6Up{J@DtV-cQyGiJw4bTLvvSv)03ZKrkapsb@Uk{HUno^&r!Gy@B&S?9UCfzYoO@R2_MYr4Lma=yYPk`ND?KxF zOB*L3AP^CefLhtPFg1N;?BD^VwuZ0w?h+u=@OPMMzmJL0?y>kc&;RUM-@s^tU$*XG zElqdD#uBcbfRs%cWq@>FdUNnC+zR|S+^)UrV4uunIi^SO*=KhE;*(Qh0QoxUqZy(7hp=Hh8lqwf|sXkHe(Q=72b3G_&`?aHnnMSJPs^M3KmKpAnFeQ3C+X z2m8B@{P&bBV$IjK3ZLDUD6R3_KjVg8ftd89esw7w2SH+8wJw`J710kvL%%@cO@+AD z4k@I$R8%_V#N*7OL9(Nn5i*Jy5C@c?6~zW%@KtEyM4{Fack|bpjntI%^$YS5py{kF zGybS$v@;ecYe&Jyz16%A7R?;nUq>V*aah5mRLfDGB`Mp^66D$L*w}e%DjY^k>CDDv z$L4m1=SIuC;4a)v&=#eA(u-$2^JcO)62?CtBjMq>o}o4SYC4Q&#gnq2TG~sYqF-)s z(aO9tLCvIR>dKBtfl~f};5=eJ2{E#JuQ0^D*HB{zb1AYGE-lz}v}k59w5u6esZ|Le zSk0Xh7#6^kQ9J2#|8@1p8mP(W2w%Oby?+7)7~LHcgH2vhfB4X%%Ok(6sa4-&nS+jQ zu|afk?WT62VL09X1j9aPmtFC2KOsLsxy$W^FzBMg-GJm7B&PNly0eO37{X>Xu_si* z7?9ZbQB=vpM3D}L%5*iE;}#Nf#6_{LP-9xP{NL}lwyVUKDqT_#!o`bies6vTqk^ywYIm50K=w2DxSaY-m=tQ=`3-e8YTm?jv zFW1TJK&s5wpSx|en5}q>w#+#eAwmPr@rLIg*S==#TIgXrMBI5=091kD$^-kLeL~3_ z*jzhFD_BjYbybUhdGZ?x^+4GKBB#$$-qL;Jdgj9>S^2YQJLvT~iML&Ma*qz*n!rXO z5k*D{v0ZC)97&>U66d8>zsqEScF&s2CUX$#9-!2~#7|)3ut-xm8%ko_iQ0GQKJsYh z;tpGX*}Gk0Z=z9Fy*@y)vE#84KT|u*fsQvkQpxD{{N`Lo)+fNLUwlX3d)sFJAh*72 z+I%{d39n9ed0cg0cPC}``#LOM)DwT08=(5+A=k9)Q|MEVF(cWzhm+S-NBj!!kdH(j~k zI=f(`D(ag9^)KBYZ%Q6 zQ!1|79b^}|n0!`6B2VpVg*3p&4<|mYq>Ug_8|EhQR_S@X0Q|^Rj<#S$0^`lHJGT4I zx~88-6#a25amYZp0vRG#bFwV;1QHhG_kEEK z&@zJH!ex7zSMH9Hte{O0Ht=Hf5%hpKw_rm|96JDN=m17zP#@yh?9E5HRxYs`o)#wg_?)<_OiO$FS&Plt=yBKi zS|Fd<(vp?L*7t91MANw(%|nw`8bLLhE>N`VDPO(fdqbNx(VpXUxYdP3Q(#@50)X zq_je17M(V|g@suRn$j@w+xI!MmJ%DUo_2!!jQLK422!*wax$9ub%~rhoSCMGCgZF5 z*cLGM0>NvNwQ|f<#GF`IAcvWcJ+(t2ja6oXV!yswdD~7n11EAI(<8fz zjk?*T;_b>`D6&-A)^YIIe<#=Wlm6m|6glPG{?=F4aa4;y(}4T(OH&)x%n}_RD%vBY&FCxgU}{>zLg{Vi7MBjf z5=9o4*0=W&6RF(bM~Y-azmR|PfJxQZj(N{Z9or*$#@z;MSQ}Qbp6EnM)OI?a80}N1 z*VVYO0Gl0WYD@dKZYmZpaEQUW0Sm*P*R%!}e#kQYrUj@9+RS zl3m@VcjJUhV)ZgK`4ip}XOd@TOQy8=6rO?WdcP?6HPR2qyO!qJpgp??`p3*U3!}y7 z#Fvw8fKU^~ZmsTapVACud=sXq_aHzPMI;=F4FI_MZC&eCbRyh#yphQz^CyaqO!w|)CFBrmMuaVb7tn|nrCT~ z2Ef~J=4Wv=&F>=Q9KN+22Y)AbK3#hL%@ISEs7lTc*NKxCrZ^uwetb2~?PDR<561l z^Ug5aurgD!!B#Y^21R_cLKkI4`Q-&?f~_A;L=iG}KqShoT}4_|3&dEgWwPQ@3`aBN zXbL(dd~|LcRirI{l8HRhF-zb{yBoG8R?q$;=ggMd=imakvRzKu|1XO=2hv1+`QqW80f`oK8NW7ddgd6 z;?M6`H0mAVtx2d2HJF+N4|P9Q71sHsUoJ@Xr~=y>WP%!^ULhpR?>hxebp0rg>sMaw zxo38^%KZS@zMVt2Qnt|Ox7jJ)Vfl8@Ey z#NDr%*G20C7FFf)TeQ=|g4#I+(5xs@jlnDL-3_Zh)K#}8h`Y2f zN+X=22J5#fr~(sat?7M^!`OcGuvL1Vb*AUeaCC7C2ZMW!WlFd{TLJ0?l6(hOgovs( zeKe>fI#TD&+|xqpzU!+fk6|equk~ns(R69iq-YRhWR~Fkk(B-5i@q3ElG$Ye&jr$< z4Kp|zY>@WAupW`phKJt%PoS`e@F22NSax7EQBmgh0wEV9I&#ne+NOM!kujfP2{f0S z22{c5q%ZGS{c23~y1Sm;bnA`!c>DexncIu=dWWbCOw{&f25~wXr^p+v?-C+;Fd>zi z-2XK8<~F~hR&Kq=v;02v&c^*tirB4Oyp8$T-D+Eh!rHsz_I}$>X~zJ$ZftQhQJGuq z#*w)P+<$qQ2WdL_Sw1!L(YBOON{#UR@==4Bzte~kQsE} zA#fk9-EH99*m8uqH>@CSYATnjr!~hgm7?RuUT%}KV(A5ZPE%U~cP~*o!1>9Sq1)S# z*(?JNWUa970cq2v%OHc8k)18;l3188dEAShy#0*Pm(urD`vj8%ao)cLFK?a66Z2-2 zSTzcj(D-IoXwuGallFDRNXxxjrsW@*{rliQ&(JBoJip$7u}x&yDx zlE}t5+`FL5Tyf+`A~<@7m1AMAHW0q_{CleJF|3+?&o6~|<*8GHj=o{;>igK(YgtL2 z3FhA%c1U_><;A=yq(Y7e#Xla*AS`V2C3c*zi6_p9kpmg);${kk55}R;m1c zN8aE#s(gf+oMT|!YM{mnR{OYo$dl>?SfUh43X|N0?Y-sJ*QRDOw5b2RCA zr~`R`+T?d@J9>TX(NQUtdZ{X>!k!Q-7FlVMSooq@4mT`u0p+q;X1eiN8T+He{lldpN<@-RE0zTEN$$>fxwtZ0VIB)h3qcVi$bg3xrYS3uxc)Q zoE!Pt;KU2D*andSCH$L}@|+{*iwTJT(d*!W8jU=!uzM$Ek=tT`a2va&I-WYp>VQ1vW4(+B@mU zZQRgT+Qb!+Lz@lEm>}72`HMzfSs^(@aa-p{9aH$YEl_#YcU_N)fsCxv7yHOYoT)x& zMUSytUeN{|$y@9vUanm)%)6ix7aG69=!2TS=LO444q$dOPu$%`D`Z|ba zm^5yra@7OJI~V{23u}nG3|!XTs?39S(lGsp@@UkIb^f>+OloV5oB%<5d&U3U*QhOQHrHh zt#c@`J-6}Pv%0QRi?p*jW(Moua^ejH*_wZucx8_m-k3-cQB zFLaO=bv?yyINV}$u_;}jvZuQT5VVo}jCAIwTEOtrFV`M>dkoi~CeIFijNM*AYd|1t z%b*9{A}mAh5)MNvj&!wE4P8G+EQNMc;G!Q|PVT163CTq-pxagk!<)9h!B&X!WHwRv zfq>1R>F&JB^%(BsAtPG&FWWD^QY#<_yV8zp)$ZL7khc~yl!d~iJuke0H}E)pOW|%h zUPue8`I7ts8z@@%Eq9G~q4B->ER-2KXLEDw-QjHxJ6DGGm!>?B2HCh5Qcu>+^dUC> zvGs0R{uKOWc(b;nQla!By}Ye?!;aM^I2h~}@|QgHApuum5k!O$in20c*g7Zm zf?Bl$tW`&q_v@z)!~IGA#4)hCF;_c1WbKCKL`k0Jm@6P5xUR|CA)s>O1WS#ES||@S zcmc$rPw4}{BrfIvHyNm|ej)DKSXp0J+EGhcoZOhfm!e}BT$8ZzVQ>#z2k{PuwNfoOwa8a(2rQ@`;|22R7Abp>=A+p#w)-(S*uca&nRikSWmS*VSz z<<7{Vh)o=PnMT-kZ&ph`(oO{$7t$3az+J#X5_4*^;DZf(e3WdWzgD=!*|kS@2LK&e zs;fGxZgwV!>w+i|_oL&3`}$C+y}MH*BO{_K(;5$TbY@NLn2iM6)DAbhvi0Ka&)XrL zgo;>u34Ilv$5fw@F?xBuUKuOUAm16X8<(2>po=N)>Ox|w%{Zef60IyPYl4H~LOe&E z2VCNBZe`2$mzWYI)s1`OMok|$Grk(1L-nJLs?Uyi9OOWWVUczD)e+FEtZg?*&lWEazJg9o6E@y~A~L@pBYV z?re-|skL6BSH5WF>E7nfOHY|SXqetY_a#mFdH12yOTSfwp`3ZS%BaF`X)zWieAxaN zRY4K~LmHW1ZPcRWdRn<fl_P$`dBZt9u@NHt^md z>gu_1uj3N4e!W*pgc9+uJw2IiId5x3X#&aH%x;5)}2&R%GU3iH8?Rz;a9<#&7f-ORsYfzY=~z z%pK&}HJp{~#R^0?ToIwz!P3RzmTwHD77W+=oZ}TTQ-xqK#lzAp+bl+S8Q$v1PGD9N zIjKDq1gL9dBfNIU*w~w|XpYB`9@Xs1yjSAD9cpo~8Rrekm3mh_?;f7+67$_F0Fsd? zUIoufqSlIyry%5+klF7-osK~Q%pw!npdmTL&c({dtvwN0)N_n@44rEuVLAv~(DG;v zUNqT&pY~NA79V~H2^-uE&n7V>I7ws3s*^2rb($qZTZD!znpUb!jz6D6+N}^()NL%G z9R}z)?}Mm!9cddVSmP=@a!0pXWL@G<`y$BG6(@xh`jnp=9l+$)4mQ3M#Ug0Yn)sNp z4(^e85I`2bL22eT2*L1u&5#vQoP2-9Th$hA;&S@0;_^7c+*M)C6H(&leX;Uak zDBPWBxI4?*CGhtE%bU9TJ@WF>MDL>(iFHhMz?Qa_)_e%NjLf)hXz9D~r1Lo=0~QK1 zp)?&#%sD5uK}QX}+c`QPfvhV{jzs`knB^uiTK;B-F&Y0VvI(W{;nPA``(a_Fm@UfR zUjgittd#Aybi+l1OfN8-)(THNy>EHXve9KdJFg&T@v&I{97SuOx-i2&Ar<9L1Zv|B z)9);RmN|fzuX{tR3lp{tW;~(-gx|z(C-Q&1O;5U6)~D4ZZ)YkW3OyHEL5vvtC!2EM zIo(}sUEdBpT`<#l8Z{u=^Aeu>>C;nMMt5s#>v!$#vfsAOtqe7MOY~CF(txZ!S(sQe z|BbUDiy*4S9R<8w?xgp@rN`#c>VNjbbH1SOF+TWe_v=mkKpsj9{2bh+?D>pHI=i}U z?3=6`(4$*0eNNcei}{){cMlrVt|TkzrYKhx=a+BCq?W!$bF>^wAAQfY!@MMJ$2HZK zw&aZ1Axe`9UWaw3J(VYrCx<7S9C8dt@f+@7%MIRwcQU! zybIe)_^6;WWND)P=xiZ*4B>ooHB4^rNcJFOdw3i*9R5<42Q)z%Ef$jhCt!9#QT7Xx zAfxiD@r`?=1qgShzu#|A)s%F(JL~FRK#NSKa)>w&bZ%|UpMFA5Q?!rRecYwZc`}}@ zz)YSr!E0^u?rnSmVeQGJK#JxZPG;Jobs3%9IhwbgPb`oAa!#U9&#Mv3=76}V4J0M=p}^1!OS95)PwG=o9Q@5MIlRbVKBQ#gW+e6kLVwJY?q0(Z1PuMC?g~H zH?Zlid+o`$B{p!%4GQ{DHetoVvSCzvpdiHfaNVjUhFW2y$YNkqMU0-G`2e#SW2B-+ z=8qi^6K=FdiwosA)aUTTNfLCgO(J{f6JvlpEh4}Um($7tRgNG zi=Eg3^-W5%epa6)RuR0+DAgCb8m&k-9u(x)Fjl8>#KxhLcWSSJqgfZ| zv{@;(7-B>R1tfwC*LP(yo4t#Ak}D!lI{H&H=j*H(*gd}9uIuSZ61?jHoftf>;;e8d|I$DgKk>f0RbpN@_}w?u*P z&J&l>D-J#gRl@xp1hZb>yCyt>m%bAr9IjbeHKqr?OZ{^nHl=JlS!4dQGpCf7h0dWp zK6G9@q?57Qxpa+AGFu2yLV;g%&+yo5H{w_l`+fnZ%L^ZKfh$+zK8VgQ9P=Os;&K5o zJYgVHrSweAw5El{8s9T_NvJ)-n`YE`FtL5Ut3F*@EJp{V^Xz;*_xr_css_#u-HaUw z@fg{nn@TnxF(r9aWd5QF^NJ>id5Ll%uU>Cg`tsmYm(WT_Ef!f%3{?3Y#(VFIDdc{u zpAHhYL&~A@rmRnPym6(qb#Gix6-o?``Gqn1>*1`DU7JB)>vQsJ#z@I=M%G)Rg)e1u zPvNarU%c?d@Y?~G#hLiPc~wQK-OP+k#j04Z_sNlbZaP?pL7(QmXd>z|bsee-jSQw- z138xiid$j74w@dKC)1;kI(82;GifY@@m6o*-t(;Xv<&@kMOT{^OP}$>LF<-e@157= z?8h^G{KkIUNK>@|nTyicp}vPC2(ZArLT8e0X>Idk&Pkfkx5C0N63es&s}u~reWzi#B3nk@r}Rs zEU~yST=*_yEU~1ye|>3bhS^qbL5@XVm}$_s`Iqfk=r>^RrK4qz<2V52#ja14yY_gJ zGgio~phI*#D-r4%I@IIv3FUzqoo&svExZezYB8%$q4HwV+(+J9q3_?KYml+D+urTC zOboZWoBT`L>Qz0dqf7?7t8kQiG-I4;3F;XxUu8|sH2$NdY$91E>3H_w-smpME;kwM zle4Mh=@}UE*T*%PIH!Y)Ov?>uOrkV2H(vTWUHAf!yXV(0IrGF>7;s+As~!0S8Ug!l zz66;L+mNIi{aQx)igs@;E$nvZW^DMQybrXr_;;oDDlS2` zDJy;oeOgtA|iV^D66W9drlSf_Dr=jtxI3yxkIU-w#G4Q?||*;F5mHKR}xb^ zU%t~k@#CRR&wQ5O%JTTWjU&z}unOMO&_G_D?I$lTOjXV7$d70dYRhOKlyte9BiiIJ zot=H?f@HkJRU$jvv2Ero6XxjCzVN-7V0UpAT;?SZmI z)*<98_aeAW)~BwFRq47euV>kC*ua^ND*82bT{Q+r?SsgxcDSCWB9TzaVK2Ql^O!A&R&RYOsMv772FqR>7=1~s znQY%1>j1Jrt)fT_M;xO}PiwiZ-6HvZk_YqJhZFv=otp(2n?H$=kZSCPS>qh2uuuZT z$jCRyswcz!(_z0nw8ZGAOn0BEm{z@^H`ie>L4KbzS#tfmkOO*U*VTEF465sPg-*&c zJ>R=0A(uGtF4stt$lzh}CC?!NhojfgcP)E)o#_kfHeapSjJwmm0Xw-tReVyJA&{{( zH0WwdcJ;T0PcxlIzQXi{Z+}j`1=|mk`P%tpLBtsESD(RG^Vhs}Nlf9ii{P`Ym1t}k z&X%g$3q-M~?P5U$K+jMtQp#(h9*^k@2` zRGz>f5AEeS3RVPEgJ<3*k$XFpFTa&cNgFDVzU;?J(U_E1FuD3UZ#?)|ygbX{St&h2*Snt=6ayPmDw)`BisY=~v=?zoUjN}VcwHw^3V|E>>26%8M} ziZdTr1tG+z2eI|XwX>!U3#=qVhqZ^RB*Ru1KY7m62W!(^8z2VKa!7H6bVmq;7(i@v zUcByMZBlwg?Uh(Tdd{}`34B|#p&p{eyzHt?JjF9u5|vS?wmX8M(sN%G;jNT8wmuzbk!CCYx<#s#@HnQ^`; z7m`rDpP5^OR^*g=>bcl2nho8+JeuiOvTK%)erjS6R^Vq3(Hhqa<4jyr^DrY>F@OdA zKgzB;uE~CVOG=80fPkb5BBi8&lqeykNJxy3W(<&;FlwS0pmaA9(w!qk1*CJpV1RUO z2qVYf_wb%K&w1Z-{Qc)Xb3EVY{?;AWeO;}g(kIR~0ZO-JnOuc#!IHvXPT|2P;@O1zngYbEX}0 zeFxRenpB}{ zFH$`+!U-iXPy3z0Inni;`E!~5ydLLVq-OhDnGdg{oh%pGKTQ0%KBvmXKlAEMZ9jO; z**bQcqjCm9wjbW2?b@m<=u5I)xbt()g!V;bia zYRyT$n1MIdy}+)yo_`z@GN>J~B~;U;Z-2Zy1%pil8c+VaT0ej&AfjB0kn@?!2^#1Fldu z+j5nexutKK?ud!z4s`wd_TJ2KV;IPDT)C{g%rW*fw&@ja9i_q(UwRNsKAY;kW`XwF zSv9^S;^c1}bIt__xk~eA&cR6;+Qpj8dwP59L=TQ$8tPP~8GXwqi3iFQ&Jf>nE8Cz( zE{F2V0HhYUIw&uPJy9Nia(t8e!0xDDa*K~=y4l(pd6x8V@TPr(q(CL0Luq%)y8PuU z+xS68Pupa#w~n=6vP}bE%HF7{z*VXB+ZLzkeUdCm&WWA9UB6a8xa0b|qrRZ!cF{@M z_WSc%@r%YJ8m+9LK&`DCcP%kU;@ZVE+u+XS|qmBCD&dVt+B)o(KMqwIFg_IH=- z)sVg@=M&fctWXhil+mJx$5!X8Rbx}mvro@BSJ%f5`ob?SH_H1Up4u;X`ES&c*Qi`y zUhY4h_y~V;>@{avyY!uZ9?#)NH3mvWx%J9v>U3d$Opv||BY*n%P1}!cDWAD?*cymI z4!@?(mndbtx#?;(AN{ps@5gF;9D|DRwidPJ*8)yDd6()5eDN#DsRw(x_SwfubYo^C zq6Cj@tHe`5J2vS<0XrKRk%mr9>*Tdl6AUxFLE)0U2g= zq@V_m2cb*KZ9xFfti#KU@0@u>j_>nM4p}3f@Hqbwy=?!178%K)fAK2dO_f4%eEf;? zSnls-emu1shvjn{mqT}}I9&HiGoaH(URkAO&w!f7_yk|KrUSEd#b*saQ|~5ITLI3# zcf^C)fLs8F54W*n)r?N)W)JK*^4*A;vDl+JMgnj=%`dixl#THqV3kW()^)ZHc8+hG z=$LW=(E4vWc#LCUb~aBf7Tz}h!tzWhXbG#~iMHS$v+2~d!qk)L7?=sS2GKZ)TKEOk zlKZD_8rafx`l)e;Jt-SFi>Ic`&$%rAjcC`AAfnap&zg&bEl2p`WYzs(!cVBw@fNCf~`_+2S zbP;-12K-eQdta!Sp2|rwbF_O606y!U{K|0R=z|he8xvlMeU*A9) zmRrp>Y|hxmBhRgc?pP_Fu(TH3hnC5}ZVoxZ*v=t@-rmqTS9ZJCUIdUi1dG;Jh+VmC z21n%fG`%E&5;0W@H z66W3g8%D-&^>{#gKO z4_)UchnUGmousIyhwmBp?YcuJ{VWqHzaDt408)$LD&68t`AeUTWm6KxV7(y8&T()h zAvqX*b7jp<`2BFSUH0yyuE|a-bZ?lVvifVk_wd`WsBlq^`XJm}; zU^AFH0K%1*DyA?y(8~{H z942od578@mtC(r6IQ76yNYi$Zdc@`;2p2^qcZuDRg2nKGDbq+r2l*h_ zT1!6xAi$9n!J3_)Bc2y4B0`?&G(F@u9U9)|0(W#h{(! z0Dt4pjXsdePP^BYU{uGbXK$U$R|ou##AvtskLSTF+dag@>*v}f{U2YF^wfYQe03BB zYVG~SXnisMRGZF`;vU9^d%NxDT4U=Frh_am8Y(h~np-tI!Gw&@jD2d1`NdWD*OVt~ zDn;9n9a=#AlM%v($S9~{9VycyK`Mf2|t{N+RvTq^)S?P zn2wTv=3vMcJNt`UbtR@*g~NA^_VHBpaZfu3NqV@hj0updF zKee1*=f|&As(hxL02b;{WN75MR`vOmH@oV4lcg1@zhIVcLS>}43aA^LL^CEJilSA= zKo#C~iV)h4XhcA3*#Nu>zv#l?Tyax&?REBZOE-zDC!RK)L?EUCHRSCo*NyzYR91Hs z(N{%xOB$MS6S@XE2te;a*@4+*w%(mdur0Ga=9#U(GmB>c zz{BH(ZPlKC89Q~ORQ8ZuJml3d1)wz$8c-&X*FMe8F~4Kug8ZPFQu~?uY;Uhx?7-1J znlquRV1*6fZ^4_R@TBt0o?2c0+F2d&k z?>u5fU}*dH2BjV5w{O9$x;BDwp7OrPeiEl;Q4J-cKBhh$A(L3r3>PqC4b#7e?MQ z)0#F$n14_vb6DNNB0WSR9wnZZGVqjWcMA}gV5>G}gwY7Iaksvry&3r;7--IMjhC~` zKHNu!%(E!4$K3*5S5hZWM7Yk!A!vGHnXStmPaT%sSboqPH@zx z#IyUf0-Vf;M^chvGTtZAY`nq`_sH#rj5TKh3Z>dI~S*hU)n? z(wL}0eooMh5qW-^J>v`Df?o*@(4wL85gu|I@w&s3X1=+&EYDIjEr?IJN=Ik=_AgD% zI0+)c#ZmP6e8|R!Ov2$3b|5zJlRnDHh<~!`LgWZ2w!3&Gb4*~#HFNFmkzXWa|Jc;e z6ul=G_ho(9xv`>!!eGtK{O((f6UUD<-IE5>bEG1oqSjf_U&jF+tUm9qr#WxQONt#= z$j@9de-2&fP%o~x3ACBOykcY7hb5wVF8?Vd)u6}84xM2(#}uTQ{kY~EjDPL-@a)n$ z;PLfdAgrimRaI&E9nC}W!;xRVJU*|T=6kO04b(K`B9V4lc4I$jmH}+FZo0R*ag;O+ zDM|WBZdk zTlosJl+2uwIL-rU)Vue#C6rH~{uFL4*t*hN@{bM{PTNX2RPE42Zu^ecUl+B!saGaC z_*^lml>CbXuujtqs74=`?2qhpvn`0bsM+}4|@x;u_aYHB9 zOg||QmaBG%z%fv5pJoX!Aa1|g^r^EiU1=^MUno5K>pRM+&(eRg?eA5!U+6nYSr9l4 z_!m8ojFz<`JN>O7WjFBj$l5}YDM^bstd9SPW_j73PozY<3NK_ZpC287jz`NWt)bV?b54BQiT%>wI&QPcRF9T%G}TST!;* zN%nR3I8rIU)INbexaf63%{VdLQ0|Vi4)b6J0@Zf=7AsKwg;Nj%y`UupwF@hoK;aa? zsT{6ZJ95a?>wbN2sQ5KLZAW%@RBv-@i+fFz;qMG%OZxm_WAa#{@7X0q;&+;Y3nNu6 zr*>79Iz`|sStNJ-TOJ!v&4~|pVG=y}bO1_op=MC^svomdDaizZXtyqu{OhVgW`^M; z=te#H0wN+Ynnyj4Wc3}-$0H=OdS+x^nRsxP`|bgCnxq`xc? zB2w>H3LB5i7JGR23~#!36u#WSI!uCR|lEOq? ziRO!RNTxqT7vTELbREcdv!a8(_R0Hq$C*`DfYv-|t)SNCsh9YQ?a!KVKQlBjbZ)B9 z%w{%tXqt@^Z08=GO#cCB7g4;R*bAh)(mF8gjlcWc!4{+{c!u!GIkXBhB`hnbr!T-46;GX?l~)A` z0%$MSebEs{hPsBlm&q3r1E7ATEZx!Gz+UDQE0lZ+(UTH0<-5=F5B^ z>DNOp3KPo_buVFhgNnv_!7Hr3f>*Ar!tQAX4h2Ez#GJyVf*tPcbaohdpRJYuP>-oE z$&kyWs~)f-9_(b)?Wn&ho?+SNA(-In_f#*r%h2TVpk`X5jmvIq0Zxp0KoV)jV13A? z`S?G|b^qI#X)06zb;IRUMsfyiqVDe);qq4E;ovP%LL!8-mOKVA@I$K%+yx22btKlX2hbIhA((2&U2$t>w34} zj3rWnr2;GLHO73T7xSM$m;X6J)r)Z43uZo&dufrxfM=0mHtYdc*cd+H@Uzn^?4b38KS$$i(pZE?` z-FqW`R6M_aXV9E@*~5e<2+eO)Y&j4C8DG9-;?h9gVt^Dp$NJgHGp_)GD{BD5Ac+>w zSAL$c=l2~%aV6tac*&c+f}0CxsPFcCXAilKjf}lYpe|QB7*5;V0J_yUIpl6MfyPiE z+Y>enhX;*7hkVWTT(Dil7rkvAYvLh7%Q{PvoTEYt5LMsr_P+08z#7o>c@6QI6d@T; zgDuKTG(WW9i969Q{>PpC4__!`0F$5cvG>w!74cCs_VJa3n+-Q4TfqZ%A~|3QcYo#w zQGzTK#qjUp_kp7_WJqB<>yp^Of;)Xpks^ky@#bD=Ivyw7714i{EW(NSI{~o0rv5d) z3$lKh8St$-P1KSXAT;p*-O^`Ob>X=zwKUn9l_B<;Icc-U5k;mGmeHRh0cu{M@ ze3|0+<*NX+(nsjSp(ASeA-C_Pq+)3%O?4k?nsGf=#>jwYv{6Xmzez9y&d|RQo zfNCPIK@QVTH~OSfzW-fj3MU6oS0dkSjC5FJ{vzHCDhE|B!Pn*2FDYs}*_?L(Ye8tQ zXX6CmsX4+JLy{GX4~DfBg!pyXXdm;L|9H$FOZ4}D0h#gSXf8eRZ5=}pFPYaErKl76 z9}ail7Fkdf&B}h@TK2iGSMODlS4m2qbXz)N1zXmsoO@MWrxCQ7^5gams-L+!A~Y2&tsT?C)yU(cqlE~;Th>Pz_v6K#-(+2D z=Z%DwHSpXr`|a;=qKRc7yHGwh{qw4~Qxcw>_vAI8af=nH;Z=7*!1|W~32?42dMA>H ze|e>U`WWUzEYaNlxi;~bYE$H@yren{OQO|y!AlVoX~>#0+aPjTi-r%FH0UnE=L4`to#<M7HfTLuSM*LtrW)xtgmF7IF z`aH=8UdhIp!AJa*Y1A{ndk$;t=s0CLKD{$?c?s5Mbv^lv%Wl(CRh}EN2C}Q!fMV?E)`|_m`Q#QlM}5s^%q;|mWoIwgfgXecj3XB~KUW2s zi>Yur5qB`?vPw!w-$_d*_VTI~c{Y8D`S!E4f`jU(B2V@nY@tPl8{39<6EOM7liLY4 zd_0d4kL2-*9@SdwW7KO#wo{(-8UUYdcd%A@%W8Mt1a;rkW%&z-ECPSn|4%CxNJ!uD z>t+Em5x0KLL^Ls;`7fCWEE2Ghu-p|Fp>({Ryr=w@b1-Ce$|;8A7-hv%1qMN>3-J*diw5QxQ`QHoylmzLp~NGx!TERktLxg#1DTg zwFd2G-=cwDYRzuVoh`VZvYn%2MQ4Jw^jYH%sqDmG)(7!ow=R>`sVL0mRn%O|)1_aF zwc&}X8RywbZ&E83mkj@G;@HAp1p9ionBq!cz*o^a>Ru4kz7YB0NMp+kdKjV}WI(z& z%0|p3KijpP1tq1@NYIGJ;oJdCs3OKb*Ir`eaohCH^7|jS&vG)!Et9a_N&4PAL|f)m z^rTDJ70}po%ZXWP3n6}2_sTd#MGS96J(ussLV_G|)9f471D@GxbeVbGy zj`Y0UO(I{OkDysdxBS618<5gi7T*Kplk1SMLIN*b>s>l`UnChWL3CFAX5@Xx=|aki z;btfyK3lOyaG~ewVaRHSHm9XJ4ZJV)sZjHz+zQ)scO8S(-losDQup4MZ4qI9u$^xB zuZ&55n4f|(>;|#WWd!-8Ly+b>(h9`@n}*si1z;D%k;)w8)9oCZibcxN03$cHv1w1X z6iO%LYL^ywKc}%3ODo_US6DN#_vG?+Ohlf+6HbKtH0FxU`B*7of>a#$ z@{TQtIF(09#axOij=xijr}UTW+iQM*9gvYw5;04ua_y~0mg!#hUbv;5EOSbsIR zI|z_py7PSE(O~A)d!i@@U(OoPyD)M3==C_V<5%44n%tf~ec;j$?bCaZw- ziFjQr1c z0v482$z&ppFyuTtQA8{hCySG{aUBQTprl?I+n?2}ID49i>2)UPr9h&_pal1gGi_ZRT2>S~~ zlIz3AjUs1M)M|t%T(oO)LWq8P0bEx~6Ec>_oYQ2Du91^+$ndN>^tk6@b?GKmPEauh75$w(kS!Kj_i7EEvh>> zBwS!%xZmXG3*k_DMH?P(U7lH%_l>+ZHs(y^T0wz??}PuQIh0N;ua&}V)WY&lqXyc^ z3PfyF?}YdR;Eih4;Hd5-`*J{GCZ{8e3qI``t*)jP4m4Vf6=$jKEDx&S`0MS`>UX59 zS9I+G<$@NBsP)iNxWt}pz2NHKzxn^%44nq%z@x#Z4*Iy1fKn;5#3|pMwJ{x_Vbmbp zFk2g-RoA2?MXcWZZ*lTjW6p;n`=8~gtN!uIx{{!xyY{-2FXKkMCm(dI{PUaTj7pxYag}juijfjZgE@u?J0Et9N ziZz2+cd*D_zuM#s>-SL9Z)zxT^yLSSrmm^ytpGXHhb##RSy@@TNvyWdo68t)I3uoJ z7S!7;>;61cuhG$Ag5kItBTm%zQcE{Tat~Z(|_T#{s~*aGnrI1 zNr}1{bF;o2GBtc2XY>`W`gLLzu=H^f#Szmx=-moeWm$mdb7I@*!%xrpS#9_W3YXsd zy(Nn#AOqyW1PG+BY?BE2ZQTGUZM%h?JR{6ngir5n+xpvpD>Ddw|I_&=g?iF~+2Mz_ z`2Fqb4o_rP2o0ZrK$sulpmI6S*$=KOTo741uYRJN<_drSS!tb84IVnh;uq$t$F%tY z;0mYux6Z6|xI*=7g8&cOM{WZclR)Ew@ro45zd)<1UXCpc>2OC!q?yi+T}zLI5Gx zx@!0&VOKuCLL1!1lTkP9 z)e%0=K5Ysp?TLQ-cCxIfs5i4dmfUd4xOeZK4$!)bANkXT(kDYkk-whY%WoTfi`XRa z&6decou8Y)G+ydV;og=?)nK5%Q9U8i_=>EoCOIAZrQI1CfZ=?F?-3xNWB9GB6mVwv z_!i`U-Z}bl;bSf&Z1WpSZZ0^?Xe;Z-^Fz2@GNYS#(5WNBm0qZLoeF}uP#(E+v)nP8P!bjsbG@~zl)@=gRrTt>+>|%M3I|J{ z{m)1R0=OJ-m{;Z-!X=TDBGlhb4P1z_%j_|q8)FnSm(KGK<_1+EI3OFeKVL1shD>z! zzlP8nRj!(JD4)CY+NG)!$aJkV*a`61bO7WWK+~DkMOtlu98xthN;ugq1zj4&Y}Eg} zAph;G{H!!xTt)_@MQsr)#!qV)Hi@V^c8-#_+w z!1sf%LtJ3WL2Av9bp)=G1ZQ#zCrXBXb_{aLyNM~q z5U-u9LRz!x;^yk=7zVq4|1H3#yw0*#6hB$nSd!M90x+ukCW?aX>`FWg;|;6UfhH0O zOT z1&pDrrb6MaoL1l%D0MaVnDYqWx-AhEGm6?k)LE-<}ttB*M5$m$oh%lWSU%sUO z!_oO~<^f<9aE1GCJEqapJ%Nw@n9-$v;vLx>FKoOcpyq7_`zrN&J>!2&I$Vo7(=H%f zndPck(!-qY(LXdHfwJpC%3%F&1y)gJ>>f8pIRM5j2M%HWj}iU-$j$eu!an)#AGo>y zHuId!q!Bn-ULs7##`lFwKfN6Pcu8PSkOK0=vP3CYf_}FC@_P{Ti_NbDDtL<|U0MA7 z*8;+Dzn6vsyuyzL26ayKTy?q>a6O8e-GVwGB1uUvg9TsfZ6hIXK zlDV1zN1h8=@s!GcjQhVW163Nh*6AAXvjCgV>R<2J-4&5rO%nZ=wC%< z#kt@pE?>=sAFAb6+-pjIMnt{g3|nI!S?o>}9v&7K0az!wZ-drZEIl;e9d0j*F-tlX zG`N8fo*6)1_V>%OQ$blU>9$nAaG>Gv=E6tUvT|#n5BG#$p`hvLSw~05 z`!Tt2Nv)K_S0^3AI~PVw!L(yfUqR^i-7muE&Oi1)G%6!VB#xZ}2HgIxT0;!F?c}&i zK{xJ9$1Hn&1NI?Q?nnpiv)Jm1RaYYQ{%|t+fP1g5j-_cf8mHF`>lk=3`YT7uCRNDA zH~?#r?pz9lx7H8uH4F_&ChTf+@7uuMQ||0kcYafiELEbi-t5|Z&72Zx5GAU@SxUAb zP!#@>!Gnu8JyP~<_h-fi%$Kf|!a`>eqIJ!(k0PT*^>r;n2JIhP$Rh5C!CrIl|6w}{ z0d=?xwoyA~qQ`ZVfsU11C9vt-qH&;H=&5nYQA0R*HHFFqo@P zedk7aeBMZZX!P)%!Y0KFWiyYBdhs6au_qI61ed3SUo8B~3Rl8`eotl9zPglykbS)j zc;1l?L_`$aA<EEa^$s%oVf4r27q8V70KLng5_&K^6E=h;*z@h zLM;rJ?RBE~2a0c~+jQkej0f?+zHYzk7IA)BNOQeM?Ez8HpGp%7A5Z9jXbN9%jRRaW z^o#8G}hyk``a^~7u&7S5n_rM zmascJJ7*eIe9^~o75f``MeK7D5##+jUs)TaOlRq^lH=alrNe9Z zbt%o{q`s6z&hb)do#L_j*h*iOuPVm8eNT96YQ%jBMGwx`kANDEA2!j2up~M2)at%T zq$uyR@<2B4;zqFNj&>liB&prsx8v`b*@C*+ot3R##b@NMARgc_7C)qmg=hjne;m#c z56rvXe#oljyFoeZe=w+_zq_*HV4PL$f;FCKYZ?;@y?CxBtDz`ExFwZow*2>sdNuElUAG*X1yKUoSp2==cEv}bI01SQ?erXw8;TJw*-wQ;T6=u@` zzR*aZA3*bZK5>(Z!*NOlAnPVXR>N;rMp}zf5Mt8%viiF+7zO=OWGeG{A1SCBq-)yq z7*ozT(!N3DWvVyzT%cdt06-syY0%?}=8L7GB}{Y!m&-NCpBaeN7?G@q&z3jYnMvG| z5FZW^F1bf?k2S%_DusDABG21@>tiQDGoWxMdSO+CRWg3ofnz*Y2(Rv>Uq{1n@s_ZE zn4_O(P=PK>O<_!xaH5$YgLt|j1|YMBP(LeE1X4OQ5@Tf`eP2j%c2lna z-I!jlt$C^=3O%Kd&vkYzW1oq~D@iXkzt!@-IK z_L9`PNO83fwLK;$xVgmk?3+}ZOw0mu0I#Q5aNH76=H)v~EwA!2pW^G7OL4LSk3D% zXC&b`ajiR1yig6GLjNO!KjaF36WK`P^Y>(fiWuwG^OLqthH4MJ1Jw zqZgkm(&L9r+w@XxMf-iwE6tQ*l;xQ!9nL1nr@CGBuX>7tJEa)zg|@g=T?=WWI;u=l zp|Vex3Yrk4(4eW5!y+=wk&JA#&!d%r#r8KD)LR(Qg0QyNTfvWwmC|;w6&VaTXGz*O z4yt~s3-%d$)2-sP9~>xdx4uyGkgq2!N!PK_rh^#{rl|(&w0rzc?_xEoLv3oO^&jFn zCY(2F$~o#9hB6<6Gg{G%V%J%2O*QFxKb)3#G2HH_rZW=PI@fT6YqS&PY#)TO$$WbR z6gP^ih1vA6%3n=)@9nFDCdA&4yxTChr-Mxk8f<7fUA4%-Xl&3r8$4n)cKt^! zPbP-8di9gEe_`$3OtCoXZMU2B;B?IqreB6(2^-3=THP5`z(&-hUhx*@bfjfiYJn&a zgYT(o#)9gc64zDu`($Q3K`PZ*Jp7vS`I7T-dv)@M922%FwW?M#c>;)IZ%Jz22@LK7 zljqVs-n!!R>8aCx%zxs9HFu^S0@RwtXFS_PgoI*T5P?8p`8O9pq4MmtYuBQ*RYKi% z=Nn;8Zm)9uWgba5P0YO)1#XouWasJW=K%6y>Y7JmQN>MsjplKD`}B{LSW)QZXv&8G5n877Pjk&Y;dv+@Xf2Nn}SXp_Lt zWNMbV(H$)H!_7V)*W11hg^%!jTnCxr2mA8;qNZt|uU3f(6sPOb);gf<@09nrY&6~) z^pJ9<&~M{+IIb)%s~CCrNJ*&isd0)7NNEF-aKTI~ROR^mj?pqW!!p>L3o?1;GL4-A z8eiwiI85h?!#d^U8nDtoH>+^~E8G~1@0~@TYybAc|Cxb&mV0z>11yh8;syA?+c+g2 zBv4ZXkn@9;u-p&aS;kM{%eo*7w~^FBhsBB0jpFX6=69B~2B|Hnx|7{%+d{=Jy#g5w&{}a$>TPP=FvBXJo4|P#p*Ap~ zXsJ7i`ms5G!n!<|Bon*4HFAtDM~v;hu$&JIq;rLOP3);{E`GW8*-@ zQ_m4Zy$V`RMLtLSu_913N16Awk(%aqA*x|@W+1CGJ>{x8`_OLAWiv0Oie8c(?6sUE zpC|3n?nhT1DZ2HTOi9q6|DI*t$>^$EoU%|;hvHUB*QfC`Y_j;!l|slrbo7f60tv07 zDxi2Py?$d0ZwP2rS>CMB*$y}&SgqO8uTS+#Ki!Nfo6}Qg_(2Id=^F+aMLk3cl{@dQG zJbXkmJ0_3Ryc%-dlag2Si3?jiXnP%MK#4`E59J?mj)Dj;ytlfWa{m=7~^lc#Sr%QB5%63K_ugYs}T&wJ@IK+K{NLKI#HI58i!$)6KSmV z-oDeAm`MCKZ5)=(5Fzo1eA1E2k z^Ii_YNiR5@mfij3#8&f$EZX$gudO2>GL&vC6b;c3yo~xvTwVvds+APM zUvB@{JBzYL+Crx=WbH*yq(<{NWyGqS-8J8iI!DQgqCxkuCXFoXRc>>h?4Q7;Ps~ zT_l=;bzgX`51B$Q1U(q++qc;|a5o~^N^ph<)wq0Gmj($3*jpT^z1}h=HKVEclJp4O zxcxjL$exnOkHrdWj$u59UAFD!Irf@fBl#C^;x7l(uyGpxT-%%79JAwc>vodRxB60a zNcR+>51rn~;hFIPK(_PRapS%g>=rY#X6Eig6;)T)GT1W~mKtb#s{~-k(Ayb^ikom~ zj(v3f=^#0wbf>09@9l&qGdo4u-jf!u*w+f2nwFY69Q_x2-tL^$?W-GZYppVnEVr^0jY9s1n+l;nrMG^|uq zkMpq=TbuQ=OcdH#eF=4oIseJu`pp=wa5E}NV)CIBg@FGs?QSgH1d`yeM ztCb*oiVO4`yzFngpAi4yBifUG55ArrYcnPb;_20;N2a;eWT)%r*xxWxTAoP=n%f0O zJ7ttKX16@!CC%p=`NBh5oIZw&stMR|aPc<^Z-D1=7HTRLzy_{69Cwz}u~cmbfdlcX zqKalY_I+lpg!F_UltBX3AVeeDCr4a_3sfiuO33E&XlQP>57xJ>g~MzUwrcv<+>{=z zPf|X}x%%ae{%+1XhzR?V6TMi*y_5G|%2M0~oiXFoaT9905i}ZzMeePpYwUhT=JiSXXOF!=j!ycGU}`4T?D&#+jD zhG4jpq;5HRwsgH|{Rd4pyWg(TQ^exN=7ZVY8G4M=U69WlUQ3N(r?=+(QzC_V{25$L zAqgM3ws}*ZJ${cF>|`IQf{eNDHqeddLF40BA&*t~E97_D2?He-B#17v;MjH$RQ_6U ztU$D0zJ4d2{Na^`ZU{0t+t@gwKS1nbtl!EArtspE|gw>OtuYO!ck z@TB0kW#jyH+M8Raao9znt*te)c|e?~47KOW`x=l^VY&Z)w`pb}*1A%5W7=|agjHDGu|U44#;QYv`C#Kl4y)TaC_l6J@gxzG zI9TCGXshuVx_;jikmZAoy_ka4tllC4=s2I}QZ#&Fj$S3Ft$>16HE_P6g{iW)f6R&Q z_=+>t)@ab^!kb|n@57a(*M+yco9>Mt;8ujDdJ_cIV+#egMo<+JOh>y?pFrBd7eZJ> zA2uG@WXlw)RJYE3a_e=;FXuq-o0m73S@qPDVMJO;C@FvJ)F(?rvVCyNq>>ZpV(d*< zqhtDs-Y4&uCm($c!Qa{3Bo^gIn(Wh+%lfC>2_(?-_zG?<2v_*pSMIGA)#{2(6bS+- zf}UI3SC|Q7nbRPPOYl=f{`>U-9U;HxuPLJRn-iBu%%53TP1LvR4b@v9Ay-M0#ZRR= zKhM)r*LwYwd{TuL4C5C?h`uEkt53XuJwAKKIlq#(Fk`n#0AD6}=OvgH18zpz#~WWZ z2siRda z3-&0R7cYN`a;-%&#?BA>jDPI3K{s9HnZZ9wNqM2o1@UHYb{Dgljx3=)_<64lv>(0@ z8(bG_<|AzmTF;RXrzO2L<0)Gt=Ek~&aw0&RxzPSoY)&;G+qJ>;h6$fR4~z)EX8R-x zeQX|;YhL|Hi^Yc^?%J~N@7B65U8**#EOPkfl}1+4foJ@=-o`60U&1`Omhl|#%Pe5) zC0NR~Z(o=|(?KYY1oDuzrxzewst5`jIV13NKJ7zIh2jDr#q`NUP)+bDC^_Syt4F}(+;RbrX-kCi;?N z&o{e8Wh=etc0nnLiL$pS4DmY0cu~McQ&>Y=nGo`f(=$dRCyPeUoVNryCVqBbVGLTs zXl|ob%RUAD*qDG++!yc4f!bLL-XFVa5%5sq3sv%+^io&yHFfTUzQ@H&;I*xu&J=y-RA+)`+yl*G}$Pde72$CgY8` z3{y(xA!P=e6;Y89LO{=UJ}p+j;<8_F4lK+nt(EgM?(?`;ORrQge=iArE76MruYbH= zTHt0%(SA}5m&8<|KpB~q8D}bLy!eYj z%_Di{G?qQuWwrtW`l8_GMELgVnBp`GSZ>R-sNm=cr;FZA17j2Ct zPN?^hpHO3xaBF^XR6HK^O>N&nckLNScCp=>?A7VfN{5Rjh9>mdVEyfF7O%ZsR6?(5 zSaIFAq#6iPXd~_EE)-PGUwM-L^xBE{LePm-_z#1eqm62v1~8F9Cz<*LbC)X1?963t zu7YmHuv$aDefUCwW76%+NxnKuTc|v0e0PJ-l%zVUY(3BOc~^11HdLaAxrnZ?GFkVW zY?yYhlqb}&#RR3Q7EEJ&Wu+R7E}^-R-bYn8NOU*TPprFE4DVZcQh(gdaXiXWafR!g zrH~p}$$dbz!m3AMk1PlFux_55mNf7#;Dm>_)QzC!50RO(vDhZwdeHqSbFrvjsx4CV zk6T@+^Af=p#=QXFpP!wX8MayexZ!3*at{57p#6Ozui1sO%V+ONi^tDOO}9`6&X1$zR3E zN4AxnMS7*@MUc^jypQro{vOL|Zv8Wbn&@;0>T2)g^)qWU9VR83-Yi~qFoolaitN=q z6GgQRBw3*pZ%FowQ?G}c9w5DIHy8!?+F7?xy`-rGwHFvf^8%Jn;sfx0*Gp?`mlO4D zfrxs@BZk_$5no-}T6x-Dz9EL!BZL8cme%(b&?Z31&BFLzPBFtr%opA@Kf?Sd* zy%EmuaNC)Yv`Ua0pVXunQ#&H-dZ_HYXN4`Q=!j(`Zlq{JuM5;t9;;SCZFKhjp~d96 zj#29AIEFI`F_*TT?<#nW&RfncF-#&p59-d&{;b-r+phcudMztMwPyylFt-Fg~G9;c-+f>j!?? zI9t(7QAV@dD>*M?zjOt-)caN3Ye_1XF@kAScGmthIFD(+mp4`LdF3{Hxa?h4gGTfN z-0Uhf6L`Iw>1WuZ1xzj>!=x@x2~S!$jLu*!nxUYV1|8}eYHA;Jc0_Yh20IkQ=4l2r zH%v_fO$yj;B(r|T4hI~_4(pd9dXsC8N~XZ%z{4P?wpJ+GZ-3`_#7w0Dwd%clGx$$+ z%Ob(@qQ^H^det2E2po&2wV!%*j#daZh1U6e_u$drG%3_8EE1~#b8f_1uk zxYRAy$YC~5r_`cTe|Nc<3m|%)(lkQ!55>(U4AnzHme*INeOU>YCfIZXE=KZRpL&Iw zoxD_4J>M7^og@SvC&a7_KX9r4eEiiiadw_D1`nrE9oH$$NwScI^q$XszP}_EduD&M zUIs;5eKfhjn=H0ps@#$DMN$3di?q8jINp~%Srw$BSC<$qOb2LAJB95e_u`xe6CPe((-Ea5LYN zzt@&)ZNdq`mQL+n*4cfkzgYMF(9m^(TXAA*dV#Kc{L5xaIN0MVqrP=ac!>pCtfyF~ zhO^>|)*;5){5TdTdN?GImz@~jpf%(uaA^C~Qj@{Xa$i~(DgRI**opyWZ%{QKEjdvy z2?Cm()cV?(7Kq;2f?iK4Moc(C9{L2YnwYpU*@1l-&Ev6L{6mf?LB2vSA!1L+Ld{ub z{JznnsF1JJMk)REk9SUlrS1th&hBVJZ~Vf;0w28+9$~OYc#oOxx?$oMRkhkOHd&mf3g-!m$pQJdFV5ftesc@_+nW-^l`_cwWFM05cBaUuXM> z>3sDSe^3vkg+a)23Z@tW4uYt(zh@}cGEqQOfq_1t%T=rsi# z`#UPM>>JR%z(#>-)jlJa)p!M6m(@yu1%)6OpxJWb&7rnRxMR zYTm@(kh}V|z8!Bv7|qB<`ZGD?@QYZ|H5ml>ZRmb^nL&TvJk;AAumm~-tG9+PkiaEC z$o)*Ty9KUgL(e~qmv4BXBmZ^t&Q7D@-N*aEAzSQPk5T5k3#TU-&a!rksQif$jJ#Ij zJa$TAqA1=5eMN_8SW%&EFbGU(B^Tm={e;zPU5f3|KD9g07r9exxz>Zz`O zQ8O^kv`ZsSK%$MOB4@o0e0ZnHJuojKKtC&OTTUAb5f;E|XKwrBnX|a!CcHd`1uMww zH>4L7ByXk8l<>!0)aR1xHRMQDQ(X7{sIazSW_kV)$k-L;edND1dW!Ta>s7j^5 z)a#~T%R5Q80x@I?_}3|9V5k77*bI4<`i<8**x~o*#kDc{8czBXnkh- zftf-lpYvz|yJdS^#d3yMSr(UIJNdBz4|s!#Q_%qy#2%p`H^o zRA27f)vVbFjZf%3%f396%U@_veaNW|CksoLLDOy;ju;)g^1e6UHax+k1s?O zW3PUXKO>4nQW#1iA|lX-#`UI|q7E#(-1g6`HcRq|nv`TLE#oJ4dF?rtU^+3mQ?d?I=N?!3=zN}D>oUaG zaJ~dfH66Q2PC3qc{73x~T;_Do(icGIs@CR?7O3$v;m6XFt{Io9iS}G9vaUumYYsYD z>ORmE9hZ8WMO0ns)>YWd)sy75*^8L7x?vOWyf6yi>&hu?wVB9T;ji8!eTAw z_ITdm2$KWq1R7B5bTxt0FFtYZmk@UDqbl{KHvqeE3AQS2x@f9XZg&egDs2v@(J;9g;hmgJn1~)-^AlbSG7d0+$_~>P zbgR^5y>oYR-{?YJp;)}j_=YmYYREEIZIG3m`i>EdeG&iFNoU-h*}KAmq zl&#N-jl!p)1yo8?t6|*Lnk&CLK^jAeUI`V3g&y zJgT%5y&lx32}z%PE{lY;mM>ykr?^zjzjmahiTgP&vmA9 zk6Ek5i@yb`6i1#yrR&7(65>o>^xM&?66CfW;`6)Z7ZGe{M zXJxq6a33=@ii6-=xO6vS^Rr(`nSYd6c<#p;>RfnasGj{X)@Oo+I1BpFEsTGmdHOSJ zyGr))a($PvU~RBV!iXNe9+Ka(?0oYh6by7u`8al}^T6?S-Ny5P3ci|tHv?X74z@fX zD<7}~(a0_ofg3p5T0d_~{dDLJG;H&R7=Ki68z~fV<@?1Z3o?WbdSTl+ zz3q9qCiWXJ{4TM`BPzG|Xf2}$F}QypVE|p2;Jq?x53VK`>W^{0Vw1iop9+?B!@Otu~vEIlBfO+j#d zF)sz%7IIY-sBG>R?nE;r3{`A=?0PcX{56D$az$^LDi-c{W-VJ_;^)2^HiKs_lk->F zx<93@W*@GtXX%kb6BnG~xpUKQIc8fAxMu>Hr6=whasCPw?2hf%$K+CUYH8DL&A%OX zuK5b64LWL=>Qkg+QVLGlnyB}u)Zt(ddMof=j}s!B#)cUz5VJb!gBaq(bX9e3&`p711amolvFpMFIOfJCNpd;B{ zap)*n*q+on_2Sl$$#Ny7{~D+L3oo5Zn%ToOMU$?ymZT4+`PcLlxd4<+tB*+CXUaY# z61xGPl0N}Xznqm1car`McN=hxiWl^}ilm_VV+3PZrNh;wd?v1fX z66#c+4e*$mca6(E+g`!WR7encP;~X3$V3RiA)vi}-|gzYzqBoj>*fQXTSxRTFOx&V zRNgJ&r&Elj6Wy=Yo7rhr#E)V<0}x+fNj{%_-WXtiO-~(x_Z_nvE_sjz1N9q~1MJ&4 zrwll~##%#F&%G|!`OdKNn;WNJGr@OuJZmOv^U>3T8)hrjZ*bM8M6Ji~)Ux5|-qSJ5 zUVh@c))FLisHc8&(XD1P&~_F`L%Uioe_5er-oYMKu8kOuxiLMyr9kT`6f=Z~hORGK zrk*eBm)&(M*e6P?D0IlD1X3Eq_7z8xrb(eDFP0}qnOtwY0gr4DJ@N)L=vZHC+`k_V zGxkj#(*gK!J7TLES&LiXiy{^^=n4QwklL)Rye60J`I zc7$S%8%H@)YBwh5eWLhb{5%Px5~V~s=|s_5P=mAJI*vKxvBkFr8t!up8jK9b>Lsbr zwiXNKIjj^E4~A5Xdb%hS6mG8GM>YGT7xe04e%r=Ri^OzV8K>T~slk!+={vu~h*F+jJHGH`mX)w&vUxBSRD4gpNX{=`)eD=h z5l>7!3H5x`f_SBN;8R)$^eC*H_L@_87n!fSD{e~6$I=sU&s3bgR==t!F%!C9iMza)q*ui_F3TjQuPnX)aP8UGGsCvz`U8_S(U@RQ6dArtEoQR< zl*jmHTzV(@-Mh1%Dr+xade-dv!|oX-kPvg$*j>d1hocOl*AEfw<^j70UDnYDhjx;? z8D@zO2oIWeBn%-nGK8%I$AJ>~0xN^nvD;_Y8Ui^5zWgj5hCigSdSb-ShZ33WJ4rvV zse6^+k(N5MGEQ#LITB&EE%;Eh0N%Bxx8(omqyIhdxs~^GwC}F8QWh(Up^4n|(w*a_ zoC9{u)u^6we_gZt^0L*|Uz}+BP&YR8MNj(lpQ|ef6_SX|6007)E^sMj9pYjdd`EYJ zi761>e@M6TVd`sn;HHPxq-+zVZN-#ZPF7@f#XWGf6Jj)SV7+65kX`dg!M@@-f_nT# z{C258cB5`<(P$w0Bjl6k6*6RuB7QVH-sCECCGM)nhk&vo%wVeTy*kl6%dWS_=If}j z1Z!gr-MD)s?<7hI+VCoy_m}tfhHZ@5C-rk^96kvwC$deU;E9EdUJFLln->)A^@NV} zroc9+TQ9+~Z;tg~&j6NmDQ0uJ&<5XuQb9*ySQXiS2|m~Pd zOjt1P^PPP_&iw(5wgwXK4=4IgO1ex^&EG+mi{cAh==LkUg34{seY%S@7*gmyj+0ck z^iUEvEIW&#=Kq=ExLwt_&`ZqgvP`-mZ)(~BR?oEab}pp%W8E0JT|?Zny;6UISSd7% z`*49Aq9(6cCSeFGL@pSD6|izk`z`!J4a4YcPH&G0k?xy1vaGB5?`17kC}R(1wI#P> zFlmh81;$9_@^{{VtqW#lt)3Ewu}fh9pkA+gMM(1XyY)#@M&7I=irXXE$O0pTy6=H? zWz7@skVN)Hxep&cxZu%MBZvUWcIz*m$n+8T(G?zpO1sFB1|lwL1Bkx}=`^UDNMF{B zC2!X&c$eF6(e^=QUufr86|y+Xmj~(1CaBMA6px{r{FVxi2~rt~Tf#}EMUEN7qpAql zrozW#GwB*%1D0LFvhm|JTE@^rnHpT2s=djcSC4ge0tXKp%0L+9_`dGI$9ga=_6ipl zwViFIWEG=;@%if^XDFXj-Jzfiy8fdARy*8J_ZfmZ?fk!oi+i$aU+B(B@Uk~-j`J}QPzl7D*)R`yGbzMwqKI+}Yj)XdBp$Akb`ZHVFRK^)CbQArk`wik# z5HSm0aIaGvG~mFRt61%sVlxxf5107j0>(hd>NI5T$znL$yw4EIUl&Hu-H|J)APt3n zgi`4l(k0OZl?o(LPq)Uv|=|H@B7MlOirh8GtDoN z`VLG_DiXJKVJj_Fa}axI8+2RB0q=71rzfFZ=;uF*1yZBZTbmo}UuKG*El?0%`{u6L z?-9%bj~jplWQ~P(1bn{~`+kJt!vkgrk{c@r8{MF>$C>xoG^Dd1JiZb|E#x-lpO@?JYx>-dEfSB}3Yq?Uf9>aTcO)v(!ZD;(5glnHUd0Rc1i1 z4&9*tnIpD&)%Zy%NC}pZrIX#>x2e$nv`J-HXVbJJmOB{YmTYXk_}u(VP6avB6BOuj z$DVVg%vYd8o?4eQ)KAoAphsqI%#qbjq1=5I2wJR&%7lq#u;nc(4GP5(>O148>gl8> zcg&s@<(3mebNh%aBt%rZ3C0w9Y*s&ZYWOuB<>FhHx9CCKW2CPMb}Tb|0CqOHx(-^(jY&3m7vyT{aL zZ#@fT8rgY?Nt!Ke9bb?CMkN`!>A zkKXE%XsRcT2^rX-q;MzC6)w{l#cyrFEC3)+G8$A-hTcAYY=kquA!YFORCyG`xn#Un0AFHwr*S@2Ow&r6Su45KmezFIZ@H(^2iTYDHP344sGtmPwt z-8qps@2#b~N408RBhhb!kX5jt%XIiN; zU0wanA0-TJQJ2Pz`+;85>_7a)pODV)SI2}Jp`fO*>i|vWPp$HoE4~LQ4rr7 zw?D|QexF28l1eD~f1AJm_1|*70a*dt1FaUazl`u--c~3A+ilg8P4ZvSSpOXMA6F?~ zfz)*IH;qe2|Lf@fdF;Sn2TqZZ<0_`TX0HB^NB^gQ{|o~DdIe_^l5a$Qm3zhVzrN|e z&W9!lfKQ-8=ijFP`qY1#^c++8@bCr1mxJe@_%OopKT5#9pUu{}ycLJ1o7eyqQ6k#$ zZ=Wd7Q75mEAT*H_tdiM6_}Clq!|27wGa2U79fFPf|YhZ)GGU52$^cTH!8p zUC;CGx1;+pqLirbb#CQR>`!-^I49UJ{y@#+zg)SO=X11F9=@Aety43oY_D8lO^r6= z`$gzyPcQg9;yJS+VJRw3j_chiaP9cF&z?OyjD%DPSv_Mrd)745`Gxjacifi2@tSDW z_mMxR<2e=eCdgR7%0|$XI5!ZEIAj*}Ox2fGZ$zG#t6}*GF8gOu001&E;fVA71!lzP zsIx-3t;Zi~R%=BSk6f`;>yc^Kb``oh{P;L?mg*0c10NMEF=;;KvH~PP8^r9%z{p17 zHhsJItU>|5wdVOZ^Cw?JwdBcXWiydew5!pyc?CFl->Mn7KAVnO-Oe6oexd}Z@Y8F$ z1?URf=+B=&5ASX;7SlWmJwtgq$CFHkR5$NufjM&(Dev~mMiu|*-7)Q8 z`Fr(cmQS2(w+(1@Iq)?4BILt@@@geRO< zY(!FWT5xJ!B=^Sk{#@w4UcKff%Z{^8lyc8hN24Et!A5UF1}~_m=2l+h*Eg4v{CMtl zZ(Ehp^)9L2na>|Cm++9|UR_a291wfjaKZJ~8zCD56%QPS3)ERt*p7}8I}jSk|5!nBsC-n%c^ zRHOBrG)bXuL%bwi+o3o>^A2r%!Tbrm`YlynY7V*ek}Kxb5%S1ODf4Wjs*t5+U}^nGBZH;16U1WWI(-A}6)wbs3l zkVawgeh9vvKRz>Mj%J6L6%oAm=HU~EThS4gf+(QwR6g^>6`s$-uIgCZk>q=5ro^A& zh`%aAO(do0&iqRo`xc}_@Jdm7q`iBs^5`ne?pVn}e!-Iakri5UF?o5#a&K{lFC@DK z4adLpc z7;J4ESW*t#@WzoHD(-?HuU(s$|;ApBC$1R8vV6WkNVY$TLGHOKqVz=UqAe zBO}?k!G5#HnH({4rX7)^W=($FPY~_e4q>@wf_x)|a`nJMX+N|*6+?0B3I4=R*Ub&J z656pi*X{(1ZF0dfgSliWlSbsi_!t7xHgqP3mb|_$g6$2x1>FI2nK+BtNEqA?GSd0z z&pbz7svkjL>5x<7MOE&bSET|~njSNFQ62Q|S_zY^{mMgH`qx3ZoNvC}co%h!zxDWs zdODGg8wg>u42_YkVDdoEO!`AR6E9Y_|?PnY<*V( z822pNh&Msgf{XVjeiozr)u4groN-dPv$wGCdyl_%W5jEq?#RuadyGze70dohHlL6= z&QX$QfoSIk@~)a$ABmNu7u>Jg8yp#I)f{^TCK3#~yk@19s{)Ua5v*WTP6xlw&A?@{ z`OZjsHD-u8dn*?Cn* zK4vT(9+ZH^v^WO5GW!#rJn59?+h&3<2~5b~>zW23#Umg}o2Vo6x(o9`eh@3htUonj z2z}4%LSwE1x;Z((vvxup$~SdgmC8vgfrNl=djR36OA|8Sj_s|G$RrEz(#3RGWn!M| zFPX{zy3X3MM?N<4rCTWe{#W3ZjPUc8Lvxp$sYKvJ%~;4Td6l@|GB4VJzgCafRYFB+ z^GaUc4jp=v3=Cnt+k1ohnht+x{ENTSW`CWGVGv+q6GA~hq7L`ydr}II*VvLA=7v~H z3}{)(B6fg6?)S3IwJa0m82&y6qoaDgXTGIjrA(g655u2Y-Bo{2em#>PwGfevpp+i;vUR zg4YhZH4F>G36Kv*y*!^o8=|Ai?Z9Tv-7~G0|+VD?r`OA^|^A>ph z>yXmvS*M?DIsfB1Dd)&t8H)tJJiPX^WccT@{C1_OMJeTO_khzQ@&rz7%G#9YA0GGD z?fuKgj0(w95k^TYt}p+qVE?un?;odRX|MBcz(4#fUi^<40RV0l=Tn|TDtx_%CI62W zg~R(hSiIY{^X<=k(7%v`A3qt?2PF0Xz5f4A{@;uGPoe+MtN-go&oq5rQ}SQ3IRn$n zr@;YMfj={!zvo~KU%4&^0^{=PLVEwO1a+>geWDT4?Ts2fN#4s79u;?4z(6!Yw=hl> z)pb-gen=pl?$YNo^iFi}Pgnl6rf9od@>Hv`U@S%_O6Sq}AIk?+Ayt|?M(@Ii<}hxJ zSb%%bJ1xQOQ}2VK%L% z@0$2(scl=}SE$Jd$muTKf2;Lvs^xK^%7#EJW1>I|Vw@HWN?mV6(xNOY z8nt89(en&VQvZuY{*c@U{1e(im>Qr(*6W~d*ZEkK=qoniGXVlnsDjqJ8(x=6`GKX*$5An6CF_JlLEKZnOUy_;a3S&-FA& zc4CvZ9eZ3n9?5K|fsiCX`g`HePye^l z{=3LCaR6avYU#Txm;dG3{-@=3nwI=SuTwb7ueh?GBmVtL8wRg?PVR+ASg-E~X1;q+ zT)&C$(>djUuH3`lg#4}LuK5(O_4$L}h5mz{NU0;|7k3C>HikVOau`|h`1Xws+dA94 z9cjClw4!eIw+o-*@jbYY?iNxB_|NhDVkOImoc1JcIE#;CIJk7wr8CM3#%h(ah&NP> zN#3O_J!z3Fke-iXQ#Xh2{<$9CUpKr@zKn7Vk2di_qu;uAOKNRni_<}D)=$18>)Uy? zRxdZRK;LgJqWPbEYxX}>IYC3iB`&V(P_yX0f1%_E=P_*&cnwg*!;>5uQmuFQ&6{^` zdv61gVO|-CM|4KU=hyA1nOGV|A{QQZvyJW3q|vDefM82If-V4BtW5sBbSFYXdKCA- z*cdJ?X_|2^1}1cGOt5~F4`Xo zM7|SXR_lCQJa;JQzBKSQx~NunRLt52OpJYFHcQIVi0t+yrjAmMySliVAH2LP>^gVt z@dwk$0;6c&++5ziQYBZ(_1A2DRrn9$r!`$SoA8TLu6EthgwmDK3e~RNv5S3MYh9C! z7QgmV9lY~oYCghzGv*tP&HBP&=$M0BGbime0hh!>1wx=-$g|& z0gQO^?<rSrqQa39b^2HVGR*$NS>&moH!T6+JYIGKj9hYzK*0QYBMGxB{~ZomYH#52GV^<6_ATYM1bmAPef9k5R)A;h_F2HKy23j5x7k9# z^~$6X&Btm!JbTuBHY=pm?NCZ$M%JDvjaa47UqR>TAi(%2%Vc(5M-m=+B00N=c7#HPU64Z+C6F*W(f6qiU-U3;Sa#>}+RCq&a^p zqk|bbWp(UNYqVmLwDuw&oh73zI6?+CKK3_~`(30<^r+6N9Xm)!Le6wLX0?bF*I(sf z@reO8@?+5nHfDNG*s|AvF}mS~84u;lv2H*dU0S~|-gBjQ0LM{VU`P}6249S_tr-Y) zKtb)3mc*{h(!ctb@(joBCv2Lx6b3VsB*_Tj!uNx@;r_Hs?eL>G_U&+?nIJFv**vTgA2*hhR7$F!;jgcn=s z1}RD#SuTCYRrL52TwET$+A_&jXT5vx{`fQzu#CBe4th>sEk075wBGiC?eEkNu!!2P z8v(K&V59R965Nvv`{r-PesF?k#0vF!ufkHSTA+@V50XO}3cHF{ft-7LtYrd|Gx$6H z6u=YdCqaqki1FsRZ5#?LLX&b6FyZQm&;N(*l zAi1{U2BL#Q2vUA&sF2fsv^=8re=PV28S}c%~lKo`&S$L%X!^D2B0(8D5k2-T5SBfWcFDN}DQqmxu2* z?hKZZ{=TCi$9ISI0l$3Cb9gABVsgll*2+&PA* z7ctw25?F`V@B<};FmZec6C9%f5J(^8?(0ze{#mbQizuI40C5CrU=JEw1T1 ze5gUO^qm}VRheQ*k=<8eF1Dw-A7DMRBA2j~OkeNsZfGgtQEmb1=Frw%jTu5&EfFLy z^(4=gTaw$uvR%*i7tme60bQnZ4S<4bHwv5bJzA;%YYAfNj5E^gh93&-$j0E8q6q`PC;|&-CPES5cdXybzdK?i+lf90tru#hE8}NgC!qrc=I?uM zRaDK)zAXl&lZEB$7QU6h`l5&@p%V_0H6~cUUCi4GTM_dfS_xGr4ikc9>2c(8w_`(h zq_N8OX3^K{^2><*@U9efS)1Q=oHQt7X1++-4Ir&O| z{oyUlzLj0eY~OO`T_2x>MAV;@e~HX}6j6gPMX?-Wm59b$V->f^fB+fB?XDAm3E@Jp zM~%!Fy4JL z$vF=6`BA2qY}BsqPkwPqs!=e{WCrWjjs}Q10fMg>p-qi&;82|Q057u=MuZm8$8S+E zoda0+Y7;rb76gG#1-OSy4;!AY*_XP`tAq8|8UZ4rRsS(M(B>1#xrOxG`!1s@+%0mx zpXR%+{#rS%UE_yYyhBl--j86l2H`G{zNF}1)Q177gwv0o1o8O9C9z%b9u&*=*-~q9 zf&k3<=*;n&Urw&!Q8?18?4)F~9Z35-$4n{#qYeBw zC<8TgXdul?tH#`E@x+~%qv!k6RQ*oidbfOB%YQw7{#>o!|4o}2E=MxF;uw3+PXEhN zZ-76g&v9c`4;Qo)EV4G;TgT^>MB(M^r{5sBdY#buZf=SgUsGHSzEPK&E!rjZ`+p0WiLJGxY+{ zooS`Sx3{<|jBZeLp?H6vp?R>eSm2)YQE^X7t45GX+fYX$56s51!c!eqJANM?1P z!Fli1bmZKipIvsesO|T51Kk&tCY-F2+Mi6M6Cc}Gn(Hu_5Tut54?pclv8t8b`94fG z5#aXP-;z;QUxq#3m+ZcQgtWyto7^!r_LXP+jhPMU37A;>JooqX=Q>TS_WNwUp^RK} zt*VU-yuITRoR{tj?}?C%^u{AE$~SV#Q-SHIU;MqGaA}|;z z6p;w_m9+zzj3!r&YFYHB{Ii8(cqmM~)YUx~*!I(#L>T=^&x<~vQhoFUU{}SRRf`k# z2;jF#dHP~+eIO#N8W3nbM^ZuOGve%Me)0Q$>V#`D5Vwe)!G3&4ZThe>6B23C2;De~`?~)_f^>$xOa6)uh z4VS=y!ZBmX!Mf(GOPYhF|a@)8Z(QSX!23NAaRx-aLZTXQt4A1HmD%J0GyOCeM5uN|>`ajuxGd34>d}NR>>u;Mb zdy(I6d%EXxHBPH#{uNC5spp*2U0eEb=?=0;uZBjtYT?T(S`IP zto91ib^J&=0#wu4?{j7DKT)-Qv1XN-2S z2Ar8*8;$qAb(I2CVNt;+u@IBQ^9O8@rGdq+w7z<%fdLYoIB~IurtSX+S6I7HL)Q>FMa{>5(kPVn@7;Wbiyyd3Gbh4=e6*RVB!l zfw8`^BCrR0HU>#j&`=~zN?ECcp#YC<^n8rGI}fXr&uxr1!7MxG>Fy+t$>Cqey}^Ck-JVoMb+Mm-J~B%6 zn8x?H*6LiM3ER=(#|%zhy4l+fhk1iAgqI`tqbG=di~ViZQnP0D>;)V) zH%7z}9ucW3xWu?g?rfg{wgi#tT+RDt$~mB5GvQXb(6tmt=|&J@ zR!Upb^a3~enI)vYw6?LU>Q?W{$2M^v@onxxJFsspe`)QTr2<=il{ZT%aytI(fZuYG zNiO{#qQ7tjjuM+le9#KWvElL3V4;~xffub4>1mgb_1NT!pUMZT$@>NkHu;VgYas9K zC~qBTS(CLf#W-qp{EX9BovyBU)phVYusAro>v0sX)@bXTRc@J%d89|IL9xc6umAmc z*>*?ewt~uyA_8>^WI3^}%V|DiQ)E(d3*fSFD!mvLOVw>@b^q5^>buv%-@W5YZw>}S zR>!id;t3XAa(EVrMkAp$pP5wn!%^1<`Beg5l%I@Jpa}8xM!9{}7t~t^S1TRH=Ay#B z@U*<{u6JsO3-j{wI&6(rEGr3(pW43o5WijNf%fk8h!=MR{HCf_EUXw{v_(}zDckHs zRui-vd}Vl;-9~aIc`2)p4n9@7b>gJ2V|CqThayhWX*oo%)r{n=6v`UZ?NWtlTz~oU z_FYl1Rtw)^@RE5Lsgtkl;&_!^=KeBDQ0YQrd@Xb+wy zDQ7W?%G9%DDt<@6D$oCDa{6Bn^K&usZuf&*deduga#9f&TU^oB=b3f$-it5qv8zVi zP2PY|jhlXMR$N_0Bl+2({~u@98PMdiv?T%t5d~2ZsY>rEO+cEW^dg{0SLq$8LTCZS z0s_)IsPrx%0YXz$dO{J95{mSa1nHe`Ip-ebcn)6g_wP;M-R#cJ&dkov^Xw*djEGfG zF6T{78`cMQaXItl=nZ0t(7P_87?lm{_R<$Qx7VVO5?3IHn$vgYFKl^LN{fH{rtO^> z>ji7v(}8#;xMU>vQXEG6pnWyHh-hs{`=NuV?Yp+EE34E(X%P51X0^V2Le&d2m*bc?St?m&ahFRIIFSpk`w?wIh zJfHQuq1;Mh#sx+A%locKY@3^#I(JApY_)r}k6O&n`5o-nE@{Vq5~D$))K*4Rt4o!$ zZe@NQFN$mHLE2Vs86ezhHB?_H^5WQ(W8+!hT6KmWKIvg-UA6rw#OIwD&Y!i&)letd z7ctO~Z&=;d5bMQHELzIduxBSn?h66;L@dyB&Z%xsXdS(ETJr8i0^B?M48B6hb5$$$ zr01t2hgbbQ7oU2pwn25PJ=PRJ@cJlzAV=Qcg@lBJdfGvK7-QgPY3Q}23<9cqt-J!K ztJbEJP3FU=2>Q%@Dul1e%DM%NQb0xEM3UQ_*uIib|MbsAMjhH{q?09=<2YZVQ%>6r ziZP>&*|B;^t|pzZsqH2A;hxXc_;&MmHLj6Gz@kH9v>ADQzGKX zrU10$$@8UN8_UghOt}d;dS#7RF171+1o)J!n~wB>c%dj@siUcO52 zJqtf#<9k!)x{QLJo{j5U9Ga#-kH5*#>4qU?>wwa9Ou%UN&480zdU+NTD9kRIby=S% zbpk=#my0)x_-db0+jIIZZxsy;(K7BzQ?suruMK=lfCWLa*9!>y^q5N7*OV zb~3dE#~EwHa}sTj{y6ym9&-O@YT#i^t!0j~Yv^R}ra9FeHmk0ju-CG|@?{PtCi!J# z>#I*SQg$#16VU=xx?qHGUiG!>&538NT&#<1R5Nes3(VS%flgct#CP;QuI7#C?_?%X5|A8$_J zqY<`=EbV=JF-O9FE;(?XknpW_+vTe?e_kd0=VU=|g43Z>t7O=ibcQ9aL!3vphKzdN z7^UkAE^Sadj4X8%T3)Av++|TqQ?l47)59N6v-oD`T_0aYni8%S(2yoHmlGj7ysTyKd~q4T5C!9y;^_e zm^?EU2oVoCLlPr{=X`3vW8IRA){7S}=Fu>_1}6m4H9g@V@NxCUxkZH@YlSMemW}Vb zN+Rwa<#%TzHe+2rK{;Dx{n1cl7CsIoqyqC&N@n$!68=!f?@vGz1nTt}RMuzmI~}%^ zT^paMN=5;So}RuSu^9-DU`QpSU(Z48Lg0AI=)59dsNMDFZ?f$ww!aPPp{_m}(Y-xV(!j|-`5ZCU z8I{y@K5nxqzk&nSe2qA^+zDsQCt9Dy*R`jhnw%3t+5E9kWx6{Zu{aaAv|;Dzz4fkO z*rn*r2=cv4#{0?xqq%4C^65d?P2N)5uAHYc#q;Q!AQ(TIX&~N} ztC-X_)Lr{H*myN3bIF~Gh;8Z->pQ=`l`?`^6&Sv7mn3ezN3uCWvE|YDlw`gb)|q>R zEoIBQHq-2B&C^q@Qgephx}0VumoYfeuKpXUW>=3zdKpy6pk_KTd0m5e-h|%9__Y9E z!6;MZGiC6JUh{8uO}-^9P0#4Yafb!1R&fv8duf|MxONenr!e-c&~8V%O`b*$YRp0& zbMxTdVgEfpvumb_&L&Iu?-JZ^LGa($l8TDTsXlnk_fAx9;X^*93l?K&MI2=4-A6gf z)_ZkFYlE-XyBe_pE8@i{Jm7#>oN_G#*5di0%5`7O9JRArNW0!q0axU^tNxAN#MNw$ z6FlJ{V5xujRAcPjaLdEGJbfTVRQvVoBt1^M{wWEjCp znkVn)1*86l4PMMQvo#~T%u1YQ7FEn*QeWbCk``y3Uv4#TPMH~&D?5LhRyf%q!Kam> zHlQCR!QbV9LvcILboJ<0-Wfhey@h!IHZ1(>$osF7X5^s{eQV~>*BghKWHB!Zk>{_{ zSPN2xJ?Jw4wk=bwDju0Dtno_be%aQzRX-;gt6}-3Dk459ri`@RcUG{qQa`SEM>1tl zb<6$!{A}1tlWzW&VxsptfkoS8tZ&Ss4F?mb@Gf0|{d01D#5ioqLqUCZyVfOTL7R@5 zQ*=7zIa3i`6tBL5f2E`hN(iCk+737cjlaky)hq7MGq1C3IjE`yqWZU&hq_a3`uG#Z zMGU5~2}vGb&$=Sf)u%ZCZFQ+043j%QyTFHpUj|%lE`2gjb^_;7hZ9It>r#w7rVaTT z$%F@4&OA&;#JjdD@?GXxn(n&)jC;=>4C)5Bh0KsfpI49oTjS6aV=~?KoD#n=*$`HZ z&Jmd*hjM}BqloUA#NHb5@t0R6Lz!edAok85m4&x!^(D=49&W>_-J><{{A?4#VlJD+ zCQukOt-Cn^200X`SZ(>rQ9E~nGSqaU#1`7)lvj7)*`m*B&Wf3a)p>oRV_JiY8-ci- zR@N2s2n>RPd+5KVZzA#N2=ur%QQ5V zGWk{zo!C}Mw@-X};)5^!I-U+Se7MTzGo9H?J6lfCWVRrfw2HgMgAUmSKvN#n9Oif* zlFn`KLejp|99^uPz*m)#FLTXg$G6AJ(;bO_T^E$Zy@GL#IuY=cWUSW28X8YdKo(19 zKZtP{ta*&xUY^CU8G5We?{{BV!flHc+Zjo&cnN!{?Kdc$^&Q#HrKdjt9s?enA zR$I*H4)37Kv9w}|;-Y12?-Sc>i?1n}7p<1{rar$(h<8x%>?yH9u5DJ{7P1?#>^57z z%17?K-XJ>~*|&~tS>&}6N8vaDYk8>W#&Xlw!Kl&+k6azW!p{6YYHGs6YIkZswOoXu zu1pQQHHw7Ah`_3xEWOhvm8N1Bd7=4LbJ1lFjN@W3TTdpNvG>PU`ZnB4cWR{9Ocy_J zZ=h@rR-PYwJ#5%m>54H&whk?kqVOCOi5P8{*?yjHBqZucQ|GqoY_|?pN85aZq5<7& z^zb8KahfrL48$Hm{^ayjQlw%orkXVPFU`;G_%{vIKHhZkygTDEKgy!D-kFed#n|{^ zu~lEM#Nsjv)JujYAYB4bK{wx8-sGpb>DDF`lN!kr+w|%YKfl#iM4r)Omy362yI)BY z&2;4=irhQ%wX`^6V)6tql5_MMbA9Ym(q;_|-@d8!n0!L6=n$l-#wLlx3CFhOSTs_Pte1k9U&RC483S zLtHRJM{#Pa;tT!A27?E;J3-0H6&y&8n){kFjrH9yvY`P?Aader?PAOM46) z@7Fc?4Um@dN^)s!mgz`rd4%hEx3IYQyI^(wurnVzkCevIjpHr+2F{$ar;C6-AUan` zH2=ef{__cVUpZyv2(zlSequxvufdhPN&868aE=>SK5fs3De2B{Jf&BU+~}bGYWX?C zw#vtvHC@osy!v4?XQ_CT3cp2ikwZdH)}vyHqEwpxMEQl}?5t=X7qVNe)P4Mc^v6&Na}+7O878Cr5T^fvEoEgLY1_d zAy>(gurrs83cVC_y}xxLOr{q_jx!_;Ay6F5tgH?FYXPH%d=(rZS8zXTD^hg9 z-B!Ke{uZe7sF?qxrj7J^J$V1Y%FB^XkXoK6mlvSQ4I!^rV0^#Xc1bY%dJftfPPiaR z;rK1E@*c~TW=V}!2c3DYl$&AyzR`l8V;NdGq*Lwd7)`*H5K*Q>yirszn7Da($~A0C z0r3VA(K2%k(cV&u^`zc$M?RfEe{r!<=w+=k`ZjpIyBFJx*6iy-4vc#4^z5={=(t?0 zLnzC)*)%V&qm4D1gFhQ%xo?KHh;Bt$H)e8hgr)?4kl~NJT{t=DMcI<;D(Gz9_nvp{ z#aka#uh&2my4PPdrl*(hd{K$jnVp$)Zg)Rx9aktS?Sr56WvGtn%OCWbI3U(;mguFq zz9gPc9vFM}d!5N6St-e@DbZ*MSGP67&$jFQ9CzxYi6^HyATPOwHtDWL$+NOMc9ti& z6g;QV6Nmh~OHXDe0WP;)JpN>yuxY&(hb}6Y>BqGrKZROq#YEBXD$OOU zY3csax$hqSET7uzdn}o^%L8Y{J>(MCr>h+RE4EAXYj2%9Q8s7d&&=16TOQ=rEeUj* z>Tfv8B~)UWK^FY&`};qcA88_}{V|2wUy&PJx&c{PDU(ZF8+Yt+p7Ze#Fv>#qIik%u zJaymRZ!#`qvsVCzUE|47h27D&ero=&k5W()@*(;ws>E0KuiIwSBXUQWvp8pIz9{p~ z3xWEnrCN(vXck2Zp)5G*;)N0T5@-YveJ2^gxp^p+Ix!f z$9KbAhA(BjYrCx|~(yOL< zJTW?2?||4|qKa3%tr>R@P7UO~_RP0nv+pM5uI0Y=xaXTg>0a&l%l?KV`o&J9$2w=FA=%*m+Jf%vBNKuULv?& z9vB!XK!C_p&yp$rAQSb%h(ta#Jf5@eD1Ic5F=#XmQ=XuZI9J8={Jd88T(9@>#HEKH zmFhC$^$D&37(BExh8Dj zzJ%}-m`~REJ4!+yH|5^KIWj}7yQU<`H01^P>sY3kF5CzW4ZXIr92Xsud^O~#jqVo~ z$-PT8d6MK(QugA)6$gdFEsx|R3h?jN24*o`Xo_|C6-j+_hmvm*t6=?TlbBzQU}by8 z*-p4|ErwJfzSnr+rKC1maN^2w@v(k>-s}Nwz#Z_8P$02QQ(h7lWj#0$7(8VFFCWCXvxdn#@Mgv zIC0znocTM}+6IL9>{!K94%tSzKW41Vm|2}Mq!697W;jfM>q&cc_PeS4rI7(kNP@uZ zx(iu(C$*5EKZckf)p@q)~@J6G8rnP|3r?l@VY zpsRL~tNucQxd<+aj9iMb)F;u^z3Q6Gbj)O&ey^+RaYu@%9woy=Ow7GiT}1dtf}oO3 zuO?o5`QGutlPt@gDa3E%98pyLw$sXm6R|=^ie!9X(c;6jyuaCTsR1H^IW%9r_(cVE zCMQ$f+!Z2(6=5yS|UfQYoxE~kZh^G6n!LseRr3`XX&T9$`7cS$YU`Z}-=3XpEf zjyS!qrIRp}y%KQ5BSokSzw3xcwQEQmR*2}QxI0)U@vBPhRgd@x&!fe_s(%mY)3yWQ zWW)jlB^;*X%Nbza<+CI_CSnFIz#krftT7FVjVSf!l9dQfB#Knd66vMEo;xGV`o1~x zc`wWHK_3?R@RjNl#ouw+S&1IDxatFYAc3ddm+$N+jgXRnUV_W@Mi>q>3)nD07Va`Q z0pVPiI%pGo=yNPdDt0aH9d^9^IL&4d1q3>p??e1%<`K()l&)BCu_JFR3kdv{b|W?)r6CHa>;KON>cc?n z>-N>i=r`TgPlJMQ?uKvG%u~PO=G$w}e;Na$DhOUDo(4bve+7?VS`yjPi{^>@%qIGlP96vx^Gh_X^+V68{smxoay2|akzQNfIX3w z_;-WBzlS;}JPAzg`PR`FWcP*B`A7v39d1&R5Ro`9^wU6oe1uwnc8*P@KYsTks{9_d z{f65cW&$zv>g8_QzsRuumzRM*Xy4t;321g>ZBym6YmcQ{rh{x^}lmt_?7I2!T$GoL&}7(}lae(-TnW812Xh$($T0|ya;-~CThI7CQN zu`0!a4QCoByfE6h~I&guo0BO@9ON~vYIxdr-h!~1h5l= zS&>l=CJLwKneMGZAExc@-zRG~?GH_Ml?fVy_`90u5_(=Ye4D(!$_F)C z2jm<+B&r?#U6-9aL?keYuX*{}MHXzDONvUUHVt|XLWViWDJbq9yUfDEQ=`unzdolq zoI%0TD^brapAY1OJdox0SV|iBhu#)5e^hAn}BPs?I!qX-7V5&opg8(<~z{KsU8|@U3 zGKw!1ZrPq_>L99E5IV#So-X;_$P21VU{*3YI(ov2oRaQj$tl`Pppa&WaLK|N8P@ID zd&hO5R)m4nofhygl>W)XK+VfdBD~AP5XNpl*LoMZV(*d5RI|mr{q>F2Z>~A`d$yrw zR{hoMs3#Qc6%Yz)|3oj*l_O*sAnWBpF{IZ-bzM}NF$yxgUKMs=MQ{6k0rmG~`D?2M ztil7ckfYVRJPeo0Af~)iVPXfC|HH!|e;kTfNhT~!N--30`EA|=Igs6Aj=0o!WqtI5 z^wfh%+pXj+jbkUj9QF3NuLfUI2J9w(cVgc^ zvT6BH_p9bf!u~Z+v?t=)XNZ@0YmVSHIls5}&mWS4lZ;MS&k%`ldB6!;FYML2czbw) zm}|o!hNG@4u#aO@O%~v~z_I3wq^Gu-JItC(l*^sP6+uzfX!j;4+hUTJmp@KN$8${F zK1qLFFxf}y2?@7umHKsWVcw1#5!^Sf+%w8n(8KEN;v6`%3uV%~oY}coN5<_Iu-SF^uRdL}#G;?fsz--z~ewpT(&%s446FjTe z(puurCyw1tf`cf$fZ58xBEX0`b0P=O?fQir=t$iima^H6W!P!lspSeekTHRTuP&(Cx7# z@7z$;>mIl~uj!|cQ=O*NZDaNxhdt82Gaqho(R5a3<-EY@tv9kbS5Q#Xm7|Zh)qUx) zc7y;o7<6XFc3=nBmkMwdyDz_FFL0g_T5%Ocjv#TpTw{4+b}x1h30=dkbl7eLCFIqC zV??Mup8#5K@>sD;?(}ipx6i~{k@!*r|B5J=HxbBla%neeiPbajxgkqz6Lh3?Zan|J zNO+C${Kn(5i=c4PR&`==mRBFSik_a#TQnA^8LxlAlo-p{;~j9M0?%89W6&}&FYw;+ zs`l&_Dw;yz^&0kcTsLv{t^60>)${%po9+BwSPpk?j9i^J;qPwr$Oxb2;U_CQfQLBIiJ1Ltjlk@ z&A73QjRJMsh!-eJNwVqgF!c2!O|43PwgL~fmxTSlINMb%oD9@LFqTRc$5h<8v!gqj+C4xr@MJfKsK$8l4o}1n z@%{4&n1s#MuZ(SV4N4l-NyE4Sng@B(I5*`~g@{nD{8AYM?=d$77nuQ?bBY_+BhSH+ zIlm-4Xp+uhvuD=X!y!+f%Fkn>NpN3wmOeAtdf_S_6~b2N5lVo(^5Wre_8WTir8@>~ zQV-Z#q9eA@NKk!_GIi6jl+4V`bep~^jLQEu>c;3q-nDxG6b23vPGv}Es&)JC+*xF!hpCyOVvWc? z1;(*Q88}E+J#Z2RB^%uMUHDj%w|2ZqQuWRo&09N_*Hy$*rPFM@LETtSg_~lU&Fwuo z2dTTKZm*7(7!dAc{1ehV`JCB$FKE%;3vZffaSE^LD6p$3ww5E(8pu@buD zwf)wn;BIYN4Vf|)?sv!}uq?y4H?XJB7DEi%o+@+gwIEBiiQ~s!>;D))b*#Ly=pMex zbAGA&wMiSgx)GEW^)Hm(%01(t5{z@XOm^n8W9%V)R%X^lC;pkuN&KfKVDnt+9LHmL zQWYnHN|KUkiXgiMqy0&;%hN;YQ%SL4a3#fa-U=Tf5u=u=>lldU)Rk8H1 zpdKsYm_M28Gq0wWI7B0WAQc3Ii>lf^h$ZXnDiH;szIjS=NLrpDB!48v)OTR%TV1G0 zd!`W#Z#qiBPEL@(JdC-U)aZB67V&Q4jE_XY4$u5&N4IMJyGa9Pih~R8gtV?oO2uUE z-tP$u&@n4v9&0V7KG?=6F0PNyK7MiT%+`v~wJYz{JAG>)Kex)?GI`yEDv2*av^X-# z0LC_%aI!I+gGW`uA>Rhy{gh)edJ(T9tndA3Q8YdK$krTxPm!zlx@kB?JtKL{OaEUL zQb-LELMOQ=A8{xrUTmSW#T$s*RJrCC^L3|tNMiJpx&v2)rav|->A~Bz6M7YMb*hs6 z@~h~_Q1(`zvw^D$9K-rq3qIVIDZa5M4XXQTB=0_>d*vnKJ|5v%?Q@=pM=0z!<~Y6`r&}V*&eI>{*XG9{E~)$$`i@H` z7eQS=b{(JI5*omJWYc5>*tC8L-s;(N+DMm5UDiEyJyJKwqXBRWc6xp7)!kYRYwbZ* z*BST7=Iy(QJgNzz`U21>aQ^a+$V+E209k0-GHq+Xe@1D$pESSR`K@JVh%EgXcEDJP zND3Cra0X`c331BI$FA5!*!Ib_#js<{qM|%{HzcE~=Gv`nCEW+A=4Qj%i!F>0DhEfC z9;~~;x&?AQHWH30&B4T6E5qEZ>S3nWCp}ee;IQ700fhhQ@sBo`L~+>IuHOx~Q(FJg zgXR;;j?GAHd$pGuU9%~;*F029o*vd91|p)|HVSMiXm*w#i{#+xvcu4AN_ zau*w&dO{+3LWFp>Zx)nS%u-tZwQp?Ypl(ijJ@)z zG;Uta#0eRbLz%&b0Ir$wi|iI0LX}~dpNFYyl-%K*^Bi+NF)q$tct^~VXaFoZJUpD)FqqaxYf8x-4D{&d zK+(OS2PnuR#HNt)%~j7WR18?S8k`ZcePyo32o8B5q)O43I*BvHton*=$BeP_z`i+4 zGH7MpmLBk4;Q__Rm12%C8JUNZW<4MRa-0#!*hF5S+*}8CB){0w%|EvTorOQ*g#jmT zTIO?`3+T(kw&`25{crnttgg=hW*%IZzVpY_U6jrf%Kkhq&YM~6e3f&>Ynxt)eW0w3 zP2tWQvKEtkUtDq*1-OP(M_qNbE5{uc{-Rg6{mqPN%eU_>4uqyrKmsyFw&l3#0E|aL zv({i>*o)U}D@IcB^{BB^jZ9;Wlga!H3;;6XIE?zgDE zZZF5j5x_{+6ZJiU1(m%OsO3Auz zYS&Gd(6?Y+y|o0QKHbDi9Ii#GALDf8XJ(yus5cWU0QSSydm<_7)RU20?ia_Jxo@L# zu-UhEcmM~>O3sqW1WI=jW$cO-j0zwg`wv0tAE_F41qh9>?L3Un!xoM6dfdI16J)Dx z=C%!ZnffnM6TVlLGP}JZvG{5-x38q>>qpU<^?*O{2+U{hfGfLn5ji$&D(eG0)fXlQ zcZ(%-mrVs$J%>D9%WjHhBZc3B!rLP-?}9+Otw)zZ31xg+JT{=2#MZ~Bp z?=W@sleEcubL(5MYR_S|(3y^rR$aCsA`4y)&(uq-sWWv_Lv>Y>dXRS2%`w&No^OF^ zk&s=ia8<{Y>Zo+_qA$RwRYaXupHwX2>QpY&&ey6|0lhw>2o7UR_?S@li5+sRQWfoMzg(?VzaHxq-%R1GfQ``$R5jc=hO4(pfKO zjH~JL%6Pi)lGXBVz~QhS!;Lvs{gXrdt=>v ze!!E`*PBm9MEG9%&R9}*ihf;jKyi`iI0zvcEB#_h^b3v424}G?u|lZgfFjYiuH7@& zdf@5>H7@DcWvo~~GTuUe9gTJz=dq7%WT9GWT3mS0nRRn?a{(10AJ*Z!h*GPk+QK&-?LD+$|pl7A6{Q{-oYO{mylY|5Rd7zd-N zdk>~Qk1HX}a+x_wdzsn&-Ltgm&URj*Hiwbx>67o%BqMX|3kjkgD<9YlN`n zZRn9NkqU&G0O#y=Y>ym%N;*mnr9i_0@Mim4FxMDBM19fzdfj8Q%3MDqm73qn{;_6@ z#|tWRaCiI}L8t0nVEW~6sA-(-Y(vVu(4ptE$an9Bw$h{mwPIMbb3#J*oz@xk8`nCZ*nRHg!p3G)u{t? z4J7v6VtnGjYlm!Z4hx$fhQ>3)0sf-?;LdE)Fa!@4SQ(S(sU*f-L>tec#!E$lGoqDN z+71qdGS{vVS#mx;N*DQdrmOE~v^k+QUeosfhc;hq&Z4&l*Ev^O$F#dRoAQ_1^^`N+ zrYhN<8-8u;16yCv;$w7F_gi;P*+~$-^wFnjeq80DN*1M7M?;|uV={=y3A8hQwbP|M zYmbr43(Xuvhb+wqH`WG=^Vn6cJp(uv5eg(~S>jVr(r8J7nBB`srlOQ0Y130f23eXM zW%JJzH_Ka%@-#DFea^b6(OYcG(bguiad;w&i!Wlr;6dkdCV!j0XQzo!K7XUwRG}iD zQ{i6F6Z=JoH@Eh*fpylQRDx3At`de<|Ad_9Es9iY`MYQ`s(mJkkBP3VE8B&ffBCE@ zvxN%j#uN$zVmf+629<5~#=v7>ZDMTtT%ysH7OuBjNi|KI<9S9tsYb4mdNr$1dD#fu z84z1`cb-|zJ*N5O`BD;GRE=huoE-}HGi6=myB-uVlefI3%+AWH^LNyF$nxJ%=M!AoYujNVn9zCh{(N4QkCugyGL#VpE;*|UHByWE8 zx01@68&QVA7YP=l6s}zH4cv4I#OhSnbW^YHEfqc?2yf6xTcd0L4}83}r=P_BSlU(3 z8z)O<1EXsNFL*RC z4S+FoU%y$BLoh#Zf{yNi%L6-_c_?5I*oz&nZQX+%zx_Atcz|jgwFD<;dnO8D^5&jf zT=Kc}FtO3TnyHLdXv$U>RqR=QwLJmLo>lvoKRg579#oYKuS@b!*^NT=?k_!ekgi@x zF$oxFZ53Am^b2ezL4)dRG7Jb5FFpkjnOqYsv70%;&u!Mc`L0rYW5pB+=UNkJJz-il-Gj#RrmzaoJaO z78maE_ig+;Qk>dh4^sRjSE+NZPU6{M$z>m16elG$1;_pS7F0zu+ZFGyqD7n6#vN@I zI^yIj-JMfn%P#eo)%Kwhkl2a-#f?_#f+b!H(YT5ehEqXL!f`O7vYO}Fvy@5fIKS}TIpE&WGa&axP`Y^ML{S@c=Xxh%_?B>R@)8qX1KRsd;AOf&DD?9jhXMNi|3RycF z)jz;juKFnhRE-*kv)vwl*2EX-VA4cPrvS1`{Rdp>Hl7}_@0J!Jz{N5My60FAR$VO; z0%QwKz(Va2Y(2C&0a1g$o#?iHquL?)ed{raNIEf>-ka{yGk|!8GK1O~`Y^)BKr_$v z3~cN9+2vBIo#n^PF-R$p37?!$D|28$cq~rd$OIv@F3Q4mI9ReQ&IvzoEzxbdEtv`d zHu2pyaS|H2IyZOsJh@$CF}XS^c3-sy3hss(#y}u!I*bw$(h}>Vie(c)GuS-mE56#9YZx!qdQ5>v8a(P7pQn%ZPjgV*>myJn{auq|;Vs5BQ9D#>b^>k3(s z@zbgVVG675eGrZq_mvcrW@An!2HJWL)kv#8=ga<%&BpboB{d}+a7nLp?J1AIJC=5} zY~RgGxY3Ioh?DeKeG-@yvb;lv7X@|!TyaLYvxG>+@fu~{y5NoEn278!1K{irx$V_S z&Qm8gkNWi%Xop?59V&~Y+9^?@T1#|^Msi)sbZ+WMux>SpXgs;~>16R)F7orBykfy> zp97meLcg;tYOmb|%ht1+Mwhe(zhWyqu_RH~ViwtU z$AL{bQM9EYv0!X0N67UU_KW-C?!}p-EZY9X)sL=}R zH3g9MgxjBD2Zt9&N>@~(q|m|lDOr&wE#N4lr?Nn|DWB|2PC&B7x#`c^~k1;w3uN?&bYVzOg8ri0ZRbL5j(%tA}#yZ<`h5Eoe%* zzB}i-5i6J_j})??iZA5~GTRN(%#tb$2i&oS^P3&V4T+?>7=??_hnY2H z6Y)G`sy0LPTdgk{8eY7%ASf;WnntrToR`G!S_Md>tsI8#eA4b^Q;lKW4aG|IZF!k{ zirtEk3B>a*xc)XC@71;^K1oSCD<9?D{(*NsfiYZPY{|HAaTUALp`~$sD1{^?C8b^r zA6&nfcW~gHa;#_*&-Ar($BtHD`j-mAb<<J-V9Vd3U z>%NX)25d{0)kX5PToJRz0;j!eFv0Y)Dv1jPvpWUv+slUwJ|Bnr}g=E{azSNV$fz)9_ z*$V(C9g&eyywa#mR%VzqV0&Qpw&UGt&lL>I$9wk*djprCC*1ZTncqxL^zv10Ubn4W zb6@!afXqx(hM!fdXhz~VJZDSgFWRhIw~1MdbbQ7Qq8k;aY)imCsi(PN_l982d>QI$9hv@Gbv`ORtv~mfV zEnv|vw~X!M3-C7lnz#V6O!c>_ZOuUXP6`g3V$-Y$X)3I{m{h_SYdb!>)}FZ)^NK&! zsvXH#vHsp@{Ob!FQ&m_a-I%<%TXLt}Am7L=C=XT%UofS`1~ZH{kj0BKvS zZ$7t9G_exyh{kb)t!?D$L&8k`qVjNV?e}(6am{6w?k(=sqKBa=yVM<(P?KLQ7f@J{ zK;qf|C%DbR$&B zs*$7g@w&di>g760DwNzkxGqIsw!@owf77GgXTG#o5F#{a#fy93)(Ru&9y1$zCaKkw zo)jDk4wFBiP3L@N` zlhC-SG7S=tP-SUma?^zV$y8z@tQM+OPnf%BXhF<5C55~V1ZCczqh<{PX;K^uy2fup^hp!NqYmDTX zaiO6cwIvlb+VGa7W5u)(al_l)0Key4@Ict%v8F>h%5=MU>^UTZA}C1`^9QtH!uS^R zt$_S09*uPLi`7*^Jg0C{bTqT$1Yf9k66;r42rT&yVBkT9u?zxRUe_80V zb-j9I4tKRKdjyaioDDVS)j4}MBtq(;2uC~WS&mMT#314E<{g>lkNnHeBA^#`l%$(1 z8uCMKDeqH4_$=IKkimTGFzPOGj?=AiOX^wldoLJ35f3V-abZ3U+!D%{>{k#TDOoYu zoWZgtN*eXO<**u1rP(BpI_RLB1dHhhxM_%tvOz~o}GA<09-N^Z_(I}TWjHSS1%JdIT%Zq>tdOY#vMQfC>X#j+( zRl9xWbDjmRK<&mdPK*)I6ukg^ghXT)`Q`{>=q6{efQ3&!_e^K1W@c!iXB{u_M%mT_ zg;<%{Dmk1{eX?2Y{1R`uoJ8C&DCc?sf~2{!?mx+L-r{=g3lelL%cHg?{~zjbU#-A ziwoep>ikfmpPv|w0YF*YIOz;AxL0V8eE&WM&bg5QKcAo9{oXv3a<@1(`fRMUmU^wZ3Iwx_~azJSl+`ADIv5Bem}ARppej{DV(>$4?R*(VvlBG{OwBF zhv`z^P8<5bJRqP}dX1*$#`h9iA~v;b(GwbWO@@10{o@aCJ(85Pv~|ey=2s8CnP;lM z3B;PsptcChCKSS-|8N5Bq>EV0)vuP_eX(#_(G_RrA#eM#3B`B2_T0b2k$O8Yp@R0SDDB`0c;$Pi}vhD--;i5sC| z8uJx=qF|nqq*hz>oA`sJGN2E&)NC>`_=Dys0CRY_W^gWNXLeoVl(K4AxwB==O5}@W z@wBRLC;DNguVU>`M`yD9Ew*88RXL@3OqPQ8+G5fc%i__8R7Cm2d%2T-%xWbEL%Ir1{MX`sYM3a1m6fTdQF8lg_0M2p~G z1tkTq$AYWpA3P^blM{!;kgisKidj&^Lr0P37u5lj-v(S`Q6_usde3bmY)cR8LSg_) z2SAxb(JcETrhYPW_7K8$NT9k+O)jMd4F!dbZ#=B$NEo*fVxkUX$ud+E;s6dbFY}Ic-96DJ^tUf|C5ChnPudgYO5Qr;7Meqf2R? z4aaAWzdug)URltUcUTa|EG|4-0wr0k{sa-_JH!B>g|&+{ZPvT2j-2=4UmvquCeL`0zCGlxhPpYRY+XbrofSJts{FPT&EB!fx z+n~DP9Z_?P2_Ne>{TufNWi8c^A`>3(uxSI#usn;}^NPT$_E4gRf4AeK0GztB>D$lr znpyCQSxKk6p*`~Y0ZZ~btB;t+Fj4g6Y6Rlm@kMfICbD&YO1VDj6b+^8=rVS)bw`v) zUm^ogBP{|la|EBknGd!QTPAD*gXu z72Z?i+!Uz;o?@_y%9Wv`!w(L*u6U8UiiwHwi*58FR(ie77CLNn3Si6ex5^#m8(1pG zb3V%ZzJbUL*tY{NX|uYDCdL~AE^kkC?} zk!aI|*zNqCQ+ITup7#%=YPj40cWPK%LbuaVDiK08Ws`>ko4(pE-07R`Z&JzMgyiL{ zotQ~XvgtroPFvsLBDB;_K3ghI67Ji>WoXou_WZy~?`7O_?0@focBTk(mqnGArPB%qR*xW6(%Nh58I-7c^do%sVNxM^x-EyB=T}|94l_Ad%>F! z(9TRgv?6*&hOnMB4oW8pnC9Z`XT`_cxmSL(s+d3E*&>%>z^Pf4pH1ml~8 z-`0|qNul<39gk%veywT$kPqMshv-|GY5kr8!Mi9|t>2HXu7;t%7Cj9!y0XmgY^gtE zqtx`ryxid>iNF6T#?eAi=xXvZ;W)lSjQHs7bCG(5-Z@3%S#Lfk!{0t`{Xh@A4dmLX zeFw8gYVaP42j2Z`-v+(}o25T1{671FymQs6pXwa>D&lwgJ!a~^IH%_t#qkK|-j9G1 z-~@Nb5Bzha|NQ1W8zevY3{8@U=moob!&Q~9Rq?pC*Wl9buD4C`0@=VHD*s_3-EhDV z3cR`XXP3fck_ zdGyM=y6S>Ap5C|5YMJ70ovuc5l_1UkvG?9lO>JA;s3M4piVaYZq8vfGN>jQbg7n^- zARxWh00HbEAkw4;rHM4@JwcIPLJtrENUw>65|WVQZO*+%kLMom@qXjIzuq?(jIk5g zYp*@mEWb6|LWuoNo(G&%8nQ&Iaj(ua=PdD!92US9MAjAl3VW1$hQhg2qi_?H>yr`W zh^Cs;A5$!Xdh`fG#U$+yXpPXjI($ zQTd1)#*%gr{VVFM94dE&Km-^AdrV-w%2&n#wBkC%cxW(3E>}Gb%UYc8c+^efT=wpm zZV7_g*rM^qFrlSV&eE1DT8iw|L}M<@H+U1_y_P|=srn@rE>GTjp40SfJxQjau4>Fj zL^VXNM$S3}B=eS7t{3Lk8JTq$z>{84@$*CWdVJJ}x}q9QGA9a0BWhku$w)?@vH2A> z?O@J9L(GO89-tZrd13T7xb__?&yib7?NqPpupetf$0sEKmNq%Wv%n#a`C{*>P_4{~ zb_>tp>Bn4D<0jZ=T2Ft0Co*hllrt4H(u@;XyjI4tZ3R}ZhYmAdrrF9K+18eD7N+-s z2gmoc4x^uLA0AAW3wE(t7&*$6Fv$Ffbm6g$j>2Tbg zSQoG~!kTK$AY7*E1PY@|6BiFuk`zH}^(M zf*o|ecY3WPc^_`uZ*cQh5T)hBk+YwICJ0E0e?LEik=kKX6d;zdpBqx~ALsPP6#lK0 z$`1f`d~J$j>Eb`X&X2b`+ysn`zcYg!*vwR!azo3V7M9PKj6y(wUJBgoYsJHXvmn`UvR^e*{f8~A`V^R+r}>PC`Hb2; zJzGB8$mpu5@Fxm87y!+;aWku)aG`zMyZtUDpRn=~b4i!b4VcjCxnW7{#T4gS_oI{d zGsCA_)4qbQ+H}M%j#W6GC(j(%@K@MRM?LnsaR4sGWMJ;ytqK|{Q;go7-q@509Qm;I z)(*}lEHIgF0Nt7HTrXBBZu7mjRx$jHwQ@2?8WRPrx)6GArH}#X++aVE`TR6@YkO|` z>DaP`2&1%Z!Wdgg*UOv!>vh0Mf-X?!*#dpND7mL+01$M6K0oc^-!993DrX(bov)G8 zufV3vDnini$zIFP@ek0zDY~}x>+>e-z&Rl;P0><}Os1Q-UAqO=s)&d5gqxddb#f`A zNx%$Rz^+gMbp1-Y-%4SX^&k@SS^MF^mgW3nX1?NbD=~}gZt8i64`Fn@M-tQ0xSuqm zNV|%#J?j1F+v>?V(v9yxQf8J94kI5f&G+pmsyV`A~@t-7-y`8j*U`*Tn7z}E*w-YgU(kpntRkGV_Q!2^2-Hi}zh`Y(2eD9T+JOJPv z7cG%`e_HYHymNx%N-@o_vFFy}K(23A#x|k0_G~4&7O#;9v{e48o$A(~x4v^)qgfPz zI$Je)<65xKY_#=CVdZ6pB)g3iGRX0~=W6@+Z=%w{RlCIH*b@xP<;e_bTp9w}+vfM&X znsw%}rwT_HH8L~6TYMG;@2YpPoz4CWyFBRX4fOT7a$&4iKX^SqbLJtv%nKn*4M<_M zrp9f;LNL4xUU=TyG3mlX>&B2vrF{#EbDVvNgjlLgNC06}>WalawY$y0A;JG9Y~%Pz zzwOb5GQ@(bo)f=WmIM|Jvd$L}FK(-n%NV96Y?<(@OOO}CQRz}P$}f8Eh=NxNwcMBH z3>KDjrwX;gGW&rh%>xp{A4UES_n!7#vTyvLbN#ZiWwy1Oi=z z1WI%MyoTQ;!P5K?AgE1&Wxi4Mxue~#l}jz|qcFjahhr-%D>I*CH6qG-$c|-mCY}mM zT7>9bCWETdraL-?o`Xp`gF8yf5Ec>Q-fMnM&N*a+F}Q6kGI5gB2PF!Q;rRHA{ioZ}#lW1b2sQrnWU96$)vALi13@i+sRuM3% zw@T6VM5t0R2KXltp_k}e+cWauGdw4tBB%gjTK4Qh4{!w4W{r()wwwdE*{V#gP6a_Y zm!t`+q&c{0Ayql*F`%yiJlJk%Oan5ywc2MLgeT4QO=AE0FqK1(6v;@79-qd!Lo zHE5@{9-!ThE`)yYpMcmToZI#9{+!hwJCoovi03P=6-x(y$$l&AXora(K+X0CCmrfK z7V7nJD2_)5uwYN**3EpzdD((?^UiJrdkdBud&NAqf}?z2%soB++yzxTci?UoNf{Zm zRUtl8nqL&HY?6nA(RCt$AP>*$Ea>@aooJX zu&Qx}s)@c`v$LJzrAu5*rIzF`C34&T+RW7#)$%mhgEzHIeVYo`r#Lm@m=d|J=m1bh zc&-HKF8%jP;K8v_&mIZygcLPSMZlFTf;B#Jh|*jf73Ek&Fj&9zgQum z@c`69xyK9Iik4Jlc9x-Ov51eHp3n^eF+V5ooL09lO`{VefCAm4&8FKR=d}ZG-U#~m zl--{{IB-WOT!^Hyf~mog1Cd~ftw-AWWgE4%gzL+TGadujTX}0DX&^KWzAXr8yB`Mx z*#B7mwVNCb7MIoPR_o=x(Bn6JM((9tY?P*%KH?^HIO+5QbIYk$k-h>f!nUfhG#CJY zTwi?2X=j*-zVCwxqMw&dw779GIN)=%^}~DJ7Fod)7D9lQz5#yXquugO3-kFg6NQs< zgYeGcvk%f`=zdKc9$l9?6Y}tQ#L@w*4%nq9Y+?X@T0@4F#rb-{s8|7qra-6{ZI~>? zQ|r7>FAfX$>9;eXW&hy1i+vY6?{`|#sZL?F8pV|ClxtE|^%XiQ*R`cB#AFxrELeE5>#LerI1N+5?%U#;wOpYsboExP-&ZJd z`hBNR(wh-h-wCsm<1$_~HXB;22*aSEx2tmoFP?c)Jnog40*B16b6Zo`*^Ez)r;iyr zb`Nb>@q8dRK8$|mJIP{Z?)+r)oL#!f$?=KeNvo3f7M9z|xjZ!ccd-aqG!k?6hP>Ii zZ);6GmMmAxqIJYlKn>}HIu`quRsf z*)PL+`>k7}A{qeDa4rm~!;+1w&T|VW4jLW>^DN&z@jxw9LqPbnuZvZX# zEE#|GIlT^ZMcxf`BnNWE-74!OqBHjkOELT8D3Nc@NG%6e->R><6U%cb@-F z5I_og$<+OYkuZE@@n`#72rC7;+A)GdPIlc%NiH7pnQiEc+&|6YTpp}fxiPB)|NKR9 zxAegZ94x^zY~h+_g&#tgN6XU_{l%0~NO!b9Q_HCcAvQpof=Xn9+Wj`Kax-??qkM5B z{Y?z)cDnezPoD#Ix3P`sZ{3Wh-=9RxaZY6y*gQEJH4`n#dr+uBS8F=i(e>FRiTo%K zKQf~pRe><)B);_^TQyLB)`%C4Y3Z@9*0JQ7`K#Leb5w!s|anvcE zLkJ)+vOz^Jwc}Re(HQasmy-SBjB4;;Uuzi=eHoRg!ZPv1iaw!Zn(_CS)}iZ@@pMz8@<~8NvW? zD7|xo92dm);mbi`sI2TBe2XYoVE}tI2IEo80h^2Ic9AT&o2h1sV zu(`xVeG{9$^%~`ha-SfWJJtCq{7jOT>#&Iwrvu>ysXw8)>?el-FiHDAxL3@ zuu^o=0_lmc^4hLIn2I7Ntk(yH;Y>C;8eSL~3%1_iRx@0)jR8uNy2`a~$hKtTxCx^# z)3{UYy{pr;l$OuWV|kNDD3X)!b^--ywkO>N*4Dc`h31{J`=-I=l!=%yn2t0vO$1jGR4^~?f4;<(WEk2L?NZXv&*8dKZ3kk3SBzDa3NIC`O8f@+) zTOmA8Drxpm&Z=jjc&fzU;-zuV8gK+-GPydg=IbZAIZV9on0uXe!i~@xF1KX}Tqvw% z0Po%yJQ?1TW+&_A3vopoQK#hgP`0L308;5p0DBKMu*6DO9Dj~$uy@r(l<723-*7t7 z+&`!fu8WoxpNyd`Ph8G|3JGVqyFH4NyyB$lAoec!*`9X;hq~SgJ<36WT#!3(sbO{ef(>( z6WPv?2m<=|<1JpKU&B;e-!E}#dzsA{IWaL9H^E17qhLfTl-WY{8O}=2ld88{Od^~& z0j&9dPFN5xVD|SxSnul+}n4?PId!6$<1iu^@Xc5 zr;A=@_cFS6;UgDf(yP-fria*HzL^o4eP3phmrhqm4f28_qK@CNP>B%kf;UV-vQ9*y{J6i!Q;IGOdu76;Eoxc5zxlW4O8Uk4qonhFcz8#Zu!V}LPN z(6JxfxRGWafRBIs{9e;=;aTr|!>a-%XbH!b=24lPrN>O>;c8D^<8mzm*XIJ$g9Tu_ z9tr`3&jcf4w;Eg;cdNvq?=e$U5>2sC9L;Z8L12Xt&^@ki`|sXuYO<$}^^|38N?*u+ z5}!m8)q#PwZiKn7bvoqEJ9BV@H*bd_hbA2rT$*B40Qu(S(vz$1pG>{gK)sVrf zHZQK_7t~vo6y<$xVL8TEY7v;XPI8J#x{{4MQGF90zz8(^VV4$c z?ekfVo8(S=X2HyNij#(kc48NaTr7nKgQHG62i=XtZh>?LfE@-(*Cz(&?!(mV^-(!F z!LWYaDz?0S8rzv;BqO~(Tb6x4c4OUW-|pg7>j<$YN7>G3NN)tj+Sr^@0=zEL$NvDm zKL7w=ZyV~*btN!cZ#wxY`!nvzKr~&S@ zI60yTHUF-C8tYFf73%=JKW4QdiT>amBdFm7L+LAo5Vyp~&nTV`cH0!Jdsk6kAQEcK zw6_6WpOHWQ%qEBB9zM-?Qs4oXYU&v#^WA8xn!MZg<@4p}Ap?u(yiwNiTCb&k-M*dK z*!A^g$Kr*#31(5=3I7F@AAZhYra6&Wh|%@^be&O6zsUWzDeclxJXSuDVQQivilLCl zZTZ|n>s8o|`s=jNGMvG5E=)#{OZD|mO^N_LKSaddLsgJPuc4;H{`MB0xY=U>ccR8s zO`b!Up7tm2tV0;~qk;3pm#9kn%e!7?PlsT@`Q;&=q5yMr(h9038g!;lyi!X zzqgt^0B2r_zw>@Yc#W9?u25& zehf^uNGTVW3znG~xANCNg@H;+96at+-*l^1Zf+Qfe&$%za23D?WFz~xZ&i=H7Q%q= z&C?7tos5L7{PUr;PVv71N_EFV>=Z#(koDx`u0s>Y@ujko1KULX)WER?h$5ZPpdaoN zy)3~mfsoXL&<+7jmco;Aic@9472=?b7FI3b#7+r9I7z`7}0FSSE zN-N6zk0{1p#0rq6uSD6@vx=m7JN&lz+1guPop)S8%iZGBO&YDOVGYc85|sIL$UKt- zmsQVs9{2V(q;-Q$V#KkhV&mk%0bsKxOEA=x2eiz0{QQZ`I}NOG*jMcmXx?qWL9g&q!#_!cD%ieuakuO(d^borLO9LWk;^hT zC%ynUHR<2bueXCroV+j}E|3cTc!{C2TL3r`HIiyPr733e9u448eP9~+<%aO;+R&bwAhJK-bI8jlvZnfSMh3_PW^PRvf!I>*t7?7h zk8Y)j_+wQ&6ZF+zk6gbNm?$_z8Fzx>li3X4l#}2o@YSA25Ca5Z?8Jk>K|~9AOyxT! z_)!O1vK<)@CYrgEj)^x1PolWlD+(1EMH;qW&Q0$@8c;e|%*W6X6+Y2DS!TCug%fI} zCwthY2G4i{%ID<;l~%yM%&b*SK7Yy{%s*`6x)vTVWT?bx?+mCXcRT|pmIJrv)`4y| zo5@x!Nn+|HwMRwPYCDfB;IUfM=KgaP7h!py9Y>uPxI! z75u+~v@WaE$J2Zi7Z=bUo`~bmu+AjQo2qP$!AGlJsJO8Mm(N`Zh~L^)ky>x*+Nd+k5@otd(3SBP~=0PR&t{$)AfzL&L3Q-La}9V4}{ zDPu)a-+8u-_sTVpkfsc2-as)yNGwT47$hJSu=zR=rABEG-JV!+R7;4xn~^|G*j!?z z-JPm)2Q=?o9cj^8O+@P@F=pert7_4u_)1#nj>Fn}A4< z)HQ9{UrG^0*>|d09)QqLy2BWp@5RVK)i_W4xHUOlWLv}{m`-Ok45u0HWU>V#hG2Dw6vrw zbnfjzFM@ZtSmu@_OHU4%I4a*#%&aDj&)Oz+v%L3iZn&V!G>RVJ?w6u)q7Vq8| zDBd6kXi07F#5Q~I#9#$^=w1rVCC=}K;`oK{yFvZBy~SI)tH#rFb1B|qOLnd9+`ATm ze8^mj-Q~q40~4-q`t%B%rl=0OPWq@W>BJ(rR*hO9uR@XP3NS@e&!CtD4$T#+C6WU^ ztyTTT+6$$R`Evuj`31WCIk-Z=4%QmF@Ww2Ich@PlhVj?|vop#%wY^#Rscrg*ecRf2 zEMCH~(1?G+eW5Mz_R>Y`+Rp&cXsJMml2NZ+Dio+Z)i`LvWU(VU&D;GbBBQZesFgqA zvwXBzFgf;)Dm%0{p5VL_$-)AMq1@_byoY%@yS5<-e{=B ziL4DyvomHg*>x|oB~#*aPOD2)#5s8c&l`cC3sj9>+MdACy7x6x_&c&r=Br@t>dXVy zUtm}bau#s*ES2#lh$Ee1t?&~>wikfisWeQNai7ye%rd2FKwOg=>rY&#OsiP$=0X@! z)I(Rg)iC#&V&f7?SSH_a8lo8MiOEbw+|EQ5OkX4(-HY3EGj$HBzNp82d|R`h#1y@S zaNZ?q7Q9XX0xO!k+e}Yec(`{Zf^qrmt<3qN=2wJ+j5?`b0o|dZ4}4c%KN{SOAsX@) zhRsTDiR&lD;mQSk7jlXO0%(cGnL;Y^s z>hMybXtvNn_;pfr$xuQHQ;Je%IV3HzJe{h4KxvsrsX@fK`eVR4E&|?(tB5m5&ea+R z`mwyTqTV_)YknkZ(v|XXBLuHoX;5tL4j|2zw?!mzOXf%+d< zNiIX}(6|SZRYA6YWdR5SFi2aD&;GR(xG?_ zZ;mD$?h+35Vrm+I*Sh8SvR=lF9}`EJ^XI@nAD7$#jW*IZ?1d&Lf}qz|GcXE3R$Ihw z9oqirEum}qacBME@>lOoe|}rx8Wa>g;*!!GF{gczW`=$9q3gmzumpw4$nTAkukMwT zuao3vGW~3`3x1wyRIbSpbZ;whgOY%d*=Z!DI9;Ntwg^NxySEB!G+#hs`c;$krk}L3 zJ&%FQvJhQLyv=O^72mvP>(Cuk<9j}95u;+}B%U@BJ&fYLT0#`Wx6Lo9>|*oIXbL-# zyvwdhDkk!Cz-sKtc;e?Jz-iqhjS1sYOi&?il1SUnFFa&{WeB51+WPT zHNC{|n={MwBc?&#Gw*up)@o-|Egou2_5tZGm4`xD-Pa=BEw^PZnZ0nh2q<`-2iqA3 zz$a+g#=i!8jMK8uV?tpYYYj(|k3A`50dCeY_4aO3S^~li7l3$m)QA+zU1>A9SLo7& zJKF5h0jgTum$p&4C6VQ+6SBFr_R36VlfkWRBM+Lktbx>;&vh6m6TS5AgBQ$O>d;_Y zSgp?*GmOxDvIOHxe>pt+k$3p;gxE4g*QZ3H$@W?BqJuWk7%V(X zhOh&6AB{(dBWBMp0L?^2dn754^-L132dVsVMbZ^!dV z{J;P{$tsJ0xh*WeJ(Vz!dkqP_eejzV`OAf-S}2`h{ckMs_JIXZ0&mI3@|f0KS8!xD zts;a?dU}n%rI`g2{XCn|%!zQZHrGT7ROKy>8p4us=3#x07(jREDy<(RxZ{Go`RQ3t3Cq&3)Q@VRUhEsgnYi zNjb5kg5N*dwj7jF)9i&m*so;D^OD3ex#O|jyo{j~Kk zcUrQ+-Qp!oXPCPiS&I2z}Dz04az@z%3c1K;qcTHUDg!?t{ad!e_XEWGmeYN@EKnPffMzEWz*T4ce zm)erFL2#euv1>i~6wOY`4LTk#lh0g!pTdwaCr%WqR{~yo=Qh^<4#7 zOl@JC28O{8_BI72(?{fKs^CYGuYI#`8>&-4rjbBpnt5VzDK@+rTksoWx8QZuht+AM zB&N3R-EadjP@y*O_K{)HlZ%T~v}|8V;b!%#;rV=kM|x~8J?r|?qsavfC!cQ6;&} zv#W0zPKUxzFX}?nAO>xOWjfUk^0WJpp#_5iukcli%9jZ&x#5pnoOu2Y3`oSuHPe*k*)l@`p9r119gWRsOC;g4PbFW+^+^W%bE zq!kxB7W97*iudjxt2f`SlMyn3%BYC%!eLJBDe9fspUZ2#z4O%dWl5c{yhn=(d3hy- z*U5z{lpNd6EhEjXI6&Av#F9q_l^`Vb9+!rcoMXc#oDc+|crX3Q)PJaA4`j5KwC>vG zoEMi~f3UkenfO_vlb>nN`5kLR@rS3agAvisgbGRn&J!zK=WGPq?|>xd28AyM83k=> z!JJCdRlmRZ5Rg`PpbSKG%ZoAOqd37iI#dlM%R;M2n+<`oI~X4c`-YH-v0&)}7vm||;@u^H&w`vsOp>ToEpm1DjXly`~t zzOSL-Wtp9?Gl0XWYNi4)=^)ltKO`CF%n>;ubN_3`+1IG-4+h2Q>l2H(nL;41;a$~a z8cPc1CGz@O*5vT)h8g0xzsTB|zbNT%$QRh_Oav3t_B=j#rYp2;A0`*J?K0;KIyz+t zV|?rFj}G_cDn_4McB<`v4|p!6g`^T`&v*mr7?mSVu~LmeK$;PQzp!rHH_!gRM=lR< zycofsN;4uTrRXe_fHJy3(zP}Q62DSd8KBH-jt}KbP6FAkRh*>qZ2M1-p0BTZ3eCwn z=UEW?$M`Ttx*0VB>o8C}MVE@qj z>8f8zv-PLhyX#7fhafqF+f&(z;d}NZT9&LEyY(l9&hd>FK-nPi#Fa1*@w$2da3uQQ zK7TB}u?*gDqG~)qablsfs9K_5!*gISmKLVDXt$cG8&GgZnh5C z)~s-rWo-7B10Iz4R}e{d{I0MJ0Z+GBZsCx5?xZ(0(k#E|4t5h3ZNcRf-OM)C)E4tMl_iL zaNL$XorwC0szpd8plN0g~VMBfmze(8|3^N@rI3hX1vc5-5TJYUM`dU0c7$*#Ca{ zetbzF{iG5o1*H!5Q-|kscuq4YgAXN z^|*&Pet~Lo0*AaX!$1kB`zs*N|N6vs%)e)MMVtmGbh2`BDN=J*0cyV_&P)6Xv-O%& z2Y6u;e79mXxGNI{SGfO}gPi2av%TPTpZ(MWiQPe?Cx;ylKm z&dh)zs*8&tC(1V-oPXO0q_CWd`5#NVdoP9(2!tncnNGtEAcUdU8ySB|%nQ8IOHjmZ zy>D6Uugxu6ona>)Cakgp4^X{{#yj>d(RokV>_@ZiOaV>5zR~`t7oqwm+QP;MER)kp z!5g@AA;RV|TWqdsr1-=+CX8(;n%yq5Mk8ISfzIxQPp6CHhjiMPrPGjv7|CG$+Z^W1j)0+qIg0%cj_ijbBO`ql+mfr*fCpf3GT zT(qHyfdLcHjk6sgi|YU}%<-S#&4o!wJ9zFpO0H{EV6mo*PlbMC-T_E}# z4F?Oe_iE=^or%9vhq_lgzb{h+GhXA#=w`y+5a1Q*Vn+P@=&p`c#~=ad*Xf~}W-Q){ z><8HH7*&P1Pa&s9M&Y4BeNAT*EkyL#$wgG10e_!siJ{f=;F9GIzR&$C$GXf-e0nUb za}dedkg=2YBLnKAL!#-#g^yYg5r5^T!uS0Tg-D(3kLFm{vown?{7o!BBlC!EpqxpG z=GY9EunM1vh%4IqOSpg@zbY&#sfhnbVq(X@l0l5oZ{gTu&pUSOl}B4g@MEPrFP{YE z6~vCUuh_s=HcIDK%DkE=ftz{tOXa4@s`(}ciOcu524MU~iKO@N13Jsr4wZr=l~CTT z(KdITe)w!VP^a-b%1RgE@xCBt=o%S_X8J=y01B{bWNbot8!TQMi;IH6FDE!vldfIT z$koajAU@lCaD46lp}=&x@LXjbp78gcjH`%Cbs1T4lA@piSnFDTF}Ow`N=UMz2fAhlJUbJfkt zrn2~_#OP|(_OBhgieBnKYCl7pE~cvO#bUOMK#Gf}f z;s#$>I(~EMZIL}3%=#eL&fkE#8h$N4?5BeHC#q93Q!8_p=4K#8KG}xfgFoC?Hdjk< zxp`b^8 zPe$*l^MZOWr}lh)(wEJGR)1yoIbKf%{xI#WBiR%Y$TtkA`+7Ma+c~CK5mT*Kuqf4= zYoj+1C&ts~>~w;Qvcp8h4!aeX9B}z1NuM|6pdsr~*Z87OZKd_MRr0`qP7(_HayS~t z=Y zrTC!r>>`XWXm(N^`?z*D<4l)1p1DlS8K|$GcdtVH3Jd6+xJ+{~JBPO)NPF?WZOKsi z1}KTR7JBA^q(Fuki>8F^q_!K#$NnzcZqKuQq02|IIJUj+-Sy9KmWlFOGVPiNvZ>#5 zyzI%ghr4EP2viu8YfF!q*!!vhkjeL{>eFA*+CXA1&!IfvM0%=tWq;?wVuE~z^pUtb z4jMt2)QjV}YPXzJPR&!l=hKv^>i0BSA5Rebf-kJ?HO}`B?cXq2^0u}&U%3LT1?i+E zYdsC1^t0m^AOO0pvSKa zxwpz0k#vWSI?d23;eKCpIXY@)%us(=$NOKyLVpH5p$-7#EKbPs`3oEU7Y_UPpDd#Q zLG+kk|KWfB|I@sqRzLs3+D{jSRdH&GX%c;1(puy1sn4N*P9nqX^4X6KX6L!m zzUN5%c>#aEP;#wIzz(KWwq^U}zwzc@@9V0R1D$KPtMpa30N*Pcn)T%SVKTeiIif!+Q8OY4+dD@~V|ETpL@FSlY zvhfk$yYt{Ht`9#I=q4j_S{a5LojJu~~Ubl^dIe*&iP z2EXw}=ZQ{DWuMx61{yB4^iydP3flubSg?J%fVesXUF4|tpO@*6UBB1m&~W+(e2mI< zqxWs?f%6NxgZNELvcn%Qi3<_DQAq==^_s64m#URl;oD+neeURo)&*wWFl-nuGkl1NtTPFPu4 zwo)b}N!%y z6#}ZNHvZKQGx@7D{GFTv!3m%q|D?gd-`}Z;q}tlrx)E~Y>89M*>w7C}#FIQQ=7C&sY-hR|HDj^XNv`v3`%w z|8eiXo-e=vC~1|s!JmgOfAaj$_j|q&-rSbIw;kWa=07hoviF#pH}_v{xW1F&$BF$N zH|pvEE+4%cqIdpt(0}+w0Pu-T{FjQ)pHe*IJuun)j=Zb?s~tJmiO6bV@9x(lf zIevR%y*&q>o_gf}+HWXCPGwI;>8eZr&y#)k9+>QV4~G{&lZ&4&lQA#gOw0CI{@*7H zw0WyG*lY9lzj9EoHejL!;&r0`=g9(qxUpdm5dSl;{mAyA2>`dd=A{Pw&y&^E1176C zH+c4^EcP?DDAxtJ{r`&QPwDo5Me`r{|Nn~Sf7dLUdZ9&n&T9XI0+LHPIk~k0fPgax zEH{2xfn-$BM8Q_utEbZuCLrOlJp&%dclSgPjh zVkBDe-{1GoN-uPq!>#QGj?TrEo>rM1fV7%6p=V~((+`Xxe`{=LV7*HE^*(uJmtWp- zf#GVdmKhrVZYLKXP%YiykY*~+1>DFW31h;qxRL)gJ6o-(c7)6o4EICUtYVAWa?@Ay&caACS z?IJQb>9Q6cZJ(TAyU^IcDSK*-<)_N-FGgZ8RZixXtC%uouy*@YhoR@ww&Osw&$5Va z7JhgXnA_QAvk;;w*e_0O@v%J6o%J6y#W%ir&-b$VO7ia?!JxWBW{guZ#MVk>Q3*AKI?=CD6=5Io zs|4&lNHf-Xxxx9Rdg9)K-UB{)J_I`4;7_PtMGv&rz&pt!|7t+@53I3A<#NYRDZi`i z^{7MWHGhRuY&mzR4|W{D9LJ>J<|(EE80>%Ml)*n;|tSp?b-;w z04!w8Jk_{B`Iz!`e#w$96E;Jwd4)P|rfTQd ziVgqwsz>d<9ZcJiFBtyCeh* zF6pW0!-untF_jApKaTrrFMQ&i2^9m?_``bx=9eo3+?u059v3`X@Pa?8t2W%9n0(D` za>czlvqWxZ@x5hlo%5I2OAcI=!VjgNs0vxC_(yNgtvvKj`ah#J)+FOr2uS1|imH-y zbk#=C6q(O(;~HH{(MmRNtK}86-|5o{`(@7l#(vbtSCnL+xFn<`de2#ruN9v=mOl6A zV-^0=eg5YkM2IH_l)Bsr%r=u^HaFE%y~umik|9$jPDi^`*UUXGlG)JE#P@ zxh7~?8?^~l_tH_5M&3SAOH%{tIO!nHa$K+KMpeskvHD8&^D=4QkDK^KIXTe=3LWld z>Exk3`l@Ixd7->mv;vaKMjg4Jo1s^CPLYK|5L8J?sty8G^{qDt$lb;rFZlLr0e< zj0Giv-yKDd>W?kr&|Hz>BGZMcVlIL){wj!e;nTLAut~hS7*k@7{bN0#J-$llT0m7S z*sK=z;B~%f;3v(RSyy&{M0aTeykpz5<&FI8VgtdiE=ZvmiQ1Y@97R*D4ebwA3IWYY z``jBA6ho@0qs2VwoG0|WR+h&c!>vo`ix_*10; zq6>b$4jDI()RRZ4YL@csOFdBYM_OTlYqlj2p@qU%APcgx;B{MCd^?oHH)wrxp2}6t zY}UXWR$@3-=`;-&4*l^&9!)S!tv%x+5zcbyKy5{l+e;c|TEts>PN7B8EB0fto>3#} z>ZA?7q!Kr^$F*DbH{a0R8hpsB#-w2gIi75tcbaP9JhYIhX;}h9xbV>P)Rg&X@RKb^ zp`f~QZ0%JKVi9$9-Rb^D^M=i{Xy2^I>L6J{w15hEu}phz!{rlIg|iW!@wtIPyU9Ji zm9HA%)_3^@TYHo4S4?@;nALEwG-+$yvsj;lIUm23(>^IwiD zx*kdtc|gJ{$~-^j;_Dq&TqQ-UF@W%U++@i4>oGw}LLW9lj$`{V$D@w9L?cVRH(IcR z4743r=aPUXgo9f)YbK&G?Y`_Yl)-f1h*$3Zb8 zhUS3@N5FK26}Rbwis5(F{RuTk`YPOqGQF|>P^&n9e90Yp{;RG--IvRa{Pn67jFMzL z8Q)oUo<=@?IEKPri8gU4c9AfBc;mlV5G5fuqNhdM=^48xyvNu_wA4rHAe)#mW&VgU zL~>2g*eU~d@X@HYwgX~Tfq$k>0KEArD67UcG4nrEh@3;{O_WLJq|i8mn7-yP>btrw z@d>d4>A{tj(=UzQ*&eTqc+m@qa!w8yS_R>~bJ4s9K;LfWn2aa^H`waxv9_ez20DX#4Txl zzSc%3KV;poo0Pt}C%7g(Bk~gE>f?`!9A-KZPOmIvuV@*II{xMh5q|qV#h`{fXvBBx zXQwIsg%!9<)Gdbi#4%V`lI%?d&hlG0cS;)RxqSFVhEC`x$J}*l*+gr23TsHb~?#2N*p}&T(UEIdkIra#D^l=bTB=yj3$e> z60ZWnSHo1jkS)|4>|y5MAX_7Id<>o@cQ48O@iwK*9;0}mSiZP&TtH=zXNU&fx}2~) zp!bHoO6EhoYVO8*ZfP(w0CN^~b;^b_)Vi!?9c7ReGAL(Cj!`PTM^lrDBNeNp?u?ng0V$sVti#u04d?Ui}@VE zM`NanUISZIHnq(ygo532tFyStU0dl`G&;Y1vhypt12%zIPjHwN=J5gF^K`f8(&H=4 zMB&&jzbm)8#1O91v0Jbiud7x!7S&0(ee*APgoF3WeA`-fL~yRp+{0pM;%V2jOh;UN zSH@Q`S#^hILocGt^MyZ8>SBXo3Gt_unMSy~*UPRWtRD^1%80>O?d8(a$K zFrJP$hH)q$y&p$Y)lwWg`6KTq7RppP$D~S7MMx^cFm`5uCnOkff$mVCR%xAXX4Ovs-; zzAFkrQ5rT18tV6L`F9S3is@6ud1qA7g4ID^!jJXmThrB$x}@`w@h_@~o5;D+``*`1 zP?)=qA_{}BwxIV7GgGc+&(@-Z&%vq&RT%bkZ)$12aF0vWx!u#11^$eGc38XtXrY`E4O% z?OKRS;Vd}#L*#0MJYuRyM;-ii=oFsFB0QUd&$sDr`P@Y9GXOTE952Ofo7rrBaN()) z=Btd0>xekL&=HI2dR5ao+&(XmZPhxIDNi^0##QnL@q@E4)@yA&{6B0-Skef>l{dix zwGn)WR&slQrqmK2fT_!IKEdkVouF2~rF1M<=;bkq_v26|*l&t!ql$YrnCXSXN@3S< z0Y=eOSnR3}xtQiH1l)Dp<1<@Omfpr~w>s%+XHrVt{X*01$@aCIo3ez*XJDH;~K*&Qtm&An!vp? ze|Rnz5y;C|Bg16yKB=L&P)cN*MJR=!;pO#E=lJ>GP+Jl&K+l@)$nV^5xrT3&m5m(@ zVC5}(jZ(|Sd?_s5SdTzX#HfHpRMmSuoo*uZS5xb+yGNOB!Yjs#wM`KHG`^&?tCrW$cM^qVtZvHgM;ZyL5U3sRq3v&K1`W@q14( zS%P6*i18R5Qs4~>)~TW-f4Y)~5BFJ~n?#RvCi`oz(-AEA{LHB=Pj|PJx07MRkr`M?AtEA`yxl3{Z zsBtBHE_Pu{ow3c)7s@mb@^ibyoq1)DSwMwQD_@u8Kf=cB#lrX)zR={5SDcsjZVKi; z)n`j`8!3fupK^qA61Np}r>}YXxokw?*S3IMq*^`jUO6R^7RS~-Fpixd$v}Q;-{)w)vl1NkU zohw(vEgH%X`7?9DBJWK+CVe0?8S+j8ny@%>>4*IwBab#u(vjj4xADn%Vl2-kkUQ$* zO#|kOFk-echsU5LcwRn;9}DK!JZn&P>m>JSnBCJMN4pOGwV9Jz95xM-6IaJ-qD1*k zWfO9Wuc^_YL@m!%MIPOA>W@+-_X50X85=S|c+#Z0vM09m{`rb;*Wxr)44g>Fkxnn2CbIz* zK9g!FmFwM`zA5f*U0}h8Fcem}j%CxWX-k_|1lVSLh?MOAAa`rA9(~`p2|H})-z_KT z*0$#^56C22`>mZB)ozOioVGesjh1TkA1ZWi+Ia0)p}4&WYo#5|UNGx^;@7V|CrS@P zv1~a(C>xz4mY;T<_`1&hgI}qPEORCaE7z%(eW{};BEQdnY_rW)5>Y!d)p3WB!p%eKlwRCm|oT&vWPrb4jADMYn zFbvhsO68(_LpLly1!B3R8D@g#P@NGd7cKP?rBhn%K-dF!$tEzzqOZzPcYlM4=uCr1 zd`F2~;Hd~FwfpQPi?S6Sp8!12G6EiBAfseyKte(m3ixGys*UH@eI{s)OP`!8OjFuL z@La%i$;<=t$>LHlqT=|;(+|DsmsJlj}qu|LY*SP_i zN-WE#s95o?zroI1O{^WNn1eBiK2WfZLx~ZFisx>JqtKvb=wsDbv~cx$E8Ege1y~XG z8oDq>CO-|0dZ=id#Y_)tg@Cs)jpJ+gDVYAgGOF=8b~q8b7lJSKE67-Qdl{WpOwg?)1nX4PEywYjD#?sTj4~LO`{9R|SLyO=?d>pOy^2Zmy~F~^Y_uAeUXAM9(RajPOK+p$Yr2pVS^65z1oNDqH6_zbg= zn@5GzqY4v?Vv|}iyEIN@{r2PT_m7iDii|VAI5!4gsX(BE;q&h_-!&4gFx_5!leMXg z6J}*I1LDkyd`C(32O&i?G|C^67>Rm6ot8I4t)aN%1zLLhoiph{T7m5ibnAtWUQp78CtD_Kx2 zUW#9hMGW0g5fyChPBa-_O?@!cEKJ^5$4s?j_s}Q;ur=)Q0RaR4P-3}RT8?adIjN49 z9&GGffi++dre?sYfNFX7gS8OKCdJ3+Gi?K;nEFb385mtK!j%DrK)H_rn+PH?0z%v? zRdnzO>xEjqNMv;$Gs2D9yy3p3xRAnIcW}O=LBlsyy9*;W`j`mok=8Y^!@1j|p!Q;f2_w;Gp{GJ)C;PrJqGJyd3w>?|qF zBEEt}83p?F+N+&~Kl?;~yGTMgw0;Bq5%kbh2$#P54P4WGT;H@`0S4f+SZTKqgVHXx zE<00PVL)}VK74e%?Jxg2cDw@ir^Cu;={N9gDTvNPl7DqP;oHFFhBAK)52*d>xz|lt zXc5Db6|rKbm`Cy}_`!5ULDAa=AH?+{dANmwjlOElb`ofZI%*=~ZT%e}7u&I8oRn%t zI(j749q5?&h}pj_@5BYq#G$6x05DF!If`J?3qlW~;4R=H&?wUA$LK}q-leZ)`%NxN zwfDmuVRxEnbz^G@zBN{YP$*MPQLr*3K~NtO%J`Cz?vc3G_E0Q%mI-D?j(sc^PnHPj zn3_yP?>Ed?`;l;PH|>q_&&rY^m*g?(a}w2PXxSP@gtAifwS4Xlp~7HDLY`vluNpA+ za(hW}FC`{pQ3`>QLK;Fo3r?;}Ynxf)@eedD<=cIhNZ8Ttl3Gh?qfDQ?6(vs8YBL;F^yMf^u?nX6h?GTdyeO9#kPXT7-Q}!b zFzt?mY*pF$zNxkMfDcvK!K@)hvrgZ4mO844Z z7)eo3HFnuBrzg4&B);0et4xuXSqV+|79~u#V|&5H=T^XT-6&N*_tlNewKb|qJ}O%d zmJBiZ5>nepBzxgHtMfS%#}qR2j+``CcvKSl@iO7-6H!9rZD=$D5pJs~^0IDGHqhm> z+d&hnGzr@rKmY0AzVDDd^S%~|?`4&pai5yGUCGxytL{y^kyhI&{sQ}7 zY=t9M57QE?qeZE$v@eSs1lH9lyO&L6fc;_zdJBrY7i3t5ffkz6bp@!emejisAEhln z)u4*#Lqvo@@0snAL|i{4-#gGa*Bw##_q)_T8Y<dutB?1okQE2@I zz6?c)cJRZ%MmR&g*`d0jvRYY_#AV&_Vi{-i<*CztNa*4aV39Ieo=skf^onGSB%=h` zw8qjLg1sEd9It2@t=*Z<2z|0+jqYo%)nw}4S$vMnz%7cKC5Vd4?1Xf^Le-3YEpR}U z*P{Z<1Vx*=f_lMMP$iHQ#${B<+;g;ARiSb5{XQ`u$4}H7ap^1c_68~60pH`WJFyj*^bH6kIGU+ghU<$5$QHW|uZEI&e*HK@LFw35K^*}SfEvmbAhUl_FFx{tS>WQY8pt8lbe*##FVaxm>EgkE(gS>INE$t z!n<}TZ^iq>T9WpGI{V2FLB=ftm2a!AB|C=PVBs@S?e4Bk0-@esW_1 zZqGW*;e0F?a&5|ZO1*eAmu^g~i6B0C-~?{JFhrVrCI9%DMXJxjll0GQkJhT(rFdFj zFccsn8O_ntn6qRHLOY*ySoG!l2eVmC6e-ZDX>J%|u2(}uB6wOI(sB!VQZ-mN$BA>% zKxkJYEc*_F6oTOqS&hi6eA@3fuWS!-v~QW($fm}k3me~?UNSrL#OiXLQ`~oRcD=l2 z#L)x3Jrv>T_tE*`MnsWWVvG@d*Og|)Pw#TE@$}A8MLbX0FyL9kRSXmzsJ55d7fvf* zv&2+hh$56=bWz2|i#v`%de;rgX4(#XSDf%mz$LtRqWk1?mZj_BU#F&7W~!l34BD_l zTb5v$uw2F{jcOfw%=359vgMM@r9+3LVl;2v(Et9e8kys;<2Ebfm8DsyskdqS6h8L` z_vkN*uT7+O2oG6&w2j1+pv+&OB?R1!^=UaS`!tDM6k)8&!YflQ$kZ2Ec5ZKvZP{!X zx1@Ss@IEC#XuaBQx>_22u;l%EL`+O~;v~oDGv7X2o>6R0dAV9qnEM@!86Q5Re$?uE zB@hG|*B7ecz5ctNGD?7vbESyV@aE0MR`7+aH4O{Cc^LZ#5mOJl>-uaG5 z|Bs(~pQ1_-DNX5;!6(f1ZT9LL>9~tz*aPxkF&7o-vuWx($+U)vOrX*9jb`T2a=bO3ub{lO~#>w7>NB2$zQObR(ktr`92FPve+3rSs6g3b{a&?k<8%1pb3|F5`kJI4UuAVpu^K?kyKP zSr5#)93FJOBGZhYxrLk=4%IY3n+fbs!clVR`xxH77%>m9B)A=HR8$dz%W)+w+TK{; zGEXZyxdsWn!#lZIaKbqi+Balg7P+1(C-GX_?B2xtdsdkT)-TO{_I1nLi`K4ISJXj} zuTuDfWA5*4fC4q8TXc#(KXad2mVMRP`39eeq*1y+JDAEyJ1_@D6&sn2d7~tx^h>3CgZ{}6I+p15WFzLNXzlK zyw~)icnAIQcP#l=>_!m6;EF*(-*w&YVMvM4Z1G#Y(%^N2(W})xpRhD<6H<~9cGD^5r4NveOH(I}^oL8P z@oiXAC9_Sc*OK6KACwB(UvgqCXg=wGe+ABLgzQ&Qij~g{}9iF@*6}6rE zT%9MS{GFXi66I>hr#czu4EwnVn=5k`278a?dBaI;lPv}Jl(Y=pj~PJBBb$rwC098W ztrg4fUHU1q&Z1?#o6_B1VRtr5W)EB^eBnLMs0Lu<<2^W$_Q4c0(Cc$+H zD4<}q+n0@g*7VNqLzI8fBXuQ$yNF<~apE^Q%$8|~1DnokKAkDFV0sS$WflGe+g9#{ zIvgnI?6K*q6PzMfP>c1kw6CnGeinvT3#eR-Pq8h!E}(L$GOLz{DpN{)g#`iPon;$tsUIt-`8i zU0cM9CJjBs%Z~k%JAd%QLhmyet{#U=fI$A;x%SOuQ(=EIM~q80J?#a#HByNkl{*YsbFO~`J8Y}xq?L@4X)`CT5UJRpnZdDA~SVz9BZNUa|VA< zJhW9*Zij!;umUh*=-em9({7rsVm$3u`aK-#wcYEd$unV@-&e=AZ+ddqQot?y@_;rk z(8B3)fy?QGg3PX@>|!3#OegC)ew|90;X^(k-RY;Utgrjj;kS(<7sH$C-*JW}YrlFi z8x#Gy&8?|Pay2BRR4evP6E^YPVA3Hni)+ z6Hv07P;h1D&V$^~!YuDyc3>Xi*XDy2+gl

*8;$-fZ*AFtK2 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

(828n8JOV)eGCt}gXoZ`=YhJ19VjKf4( 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⁣&rpbX>mxkLZxk}))J^OZZYdNsCCgatmxsm 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[%)ARDU3 z@#CqI5eD;^;Hp1wU|4}oU5I5F&ym6~&oW0=@-^Umf|vp{XtonvHKPo$jwoJ*lZiE- zI!O4pf<)AJktrK57$n;#8~iYz87+Abvg^Rp?|0-{&F~!$N%dx}mCj5|=X}|$0QDx* z5y>2L_ES+fjJ<7|RxEaoiqI`p5@+X`UVjj3M+31fel=DyS5}w54`bO47__OQU6i8My3*a?JQuAQ*K6Fb6szEct-C&?YaVXy(6t`f&^N6ZfN&(voG zB$s32LI*wV74?JP^fqf%EZ`j6XKQ#L2THy8v;*AZ`d=WOrh?siK)9}*0IsX)fAr=S zufhVf`)OGhVmZ44yg(zSJ~t+VXP#aO#{gyzA-4}W9_tSdWL+%?fpZeyh$2;hUjh2X zx2j@nz!CNnq7;?I2Zm{@K#Z1p`v}8N1jeq1(&~SK_cb$0zmfd4ENtWd6=NAx^Mj2c z^Zs$AG=Oua&sCdG%d73XzyfUmLNzTV<3vsNPt5`?<~VsuUECE71~tD^XGLqL90w(c z5dZ=;fg2M909V-wudJid?%lmyx86p(C(ox;9z}`sihVRjCJjbYDar0@O$IA|pQ-U^ zZMAo1)8m#wAr1cg10za&$cdnIl$fpuq6;|CVN&x$%)ucE<@s3nY)(Jbaqov5Rb!ny z*hjWTtrR^n`m%3G&Tk>A2g=j*QGM3v)vJqz>1dDrRJTg*&FwUc?q&~gx=`dhwI@+V zSico%M)+`gMm8S$BKr8z$F>DX^XMGFL|tUG-p4OWr8L28VRayi^YMEdB_Jbkz;E8=}C~ADn(P_Z*46!lD$* zO_A-W2eJ+vu(Cen;&7z3pM{18q-(b01}ZQK3uj~zCQ2dZz}b^;ZmCKMYl@s`Pot96 z&U!1NxVRX(xjS*UC2ir5i5E?ryu%R)U9FI)^PPHtfR+XrlZC(JWQez7EOkK63OK&c zcICrKf9Sp=V3qN0L+|FI8P9eM$@BsLOVB`j0znkmJ})2 zPc}8+Gc>KP?*-fKl&#oo5iGwl!@+LZvo5?Q&%OxujS!eWb4+faZa< zT6^`bpocLU7t z6OD#h=pC8i%M}?uuKk3CW^kBQ8U_w1TA8K>9&t*H9bcqsr9TI40qZ3D#NhtQ|6du==P(b zuol|l5aKZCA>$3T z^i(Egz0CxnHyq(<^Sx#*F{M5zAh9M+G>!CEjCf5E31(2t%N3PlCRmIbA*;S*Wy=Xe zxlxu(8lPjq&W@e!SPn^sGmL4nbVdnxqdJH-Xz8{+mrnI-liQZ0mcGAphOjsW@_g8b zKBlh5vfvzDPvEJSzo0PFPH|UxbNP7MqLiYTw5!o>$SJhv%iW{7Q?g>?dBEGLQFfQ= z{x9GCU((aiA7tp6286c-irL~6zf~>FwSK3MA)V=sdZrUYti0OGufQ`_5@UG)-abCS zyvWH>d#0;@-#^h@R|4+b=l@PG)pd%}!u*$pWQ!`z47w5Sqq$?Ie!0Xr_Eyb|GQXV? z$Z=LA+ABMwH4=55RJ^ZUBU%AI8i$+^L%m4(vjWr5RU-yhMJ34aQW&9cbi!2Y`nsCF zn*70s_#v(qlae0{QFpi{E#CO6ef6$;Ctl0`0aANwS_ws!W0!-KrE8e;C%p8bOGY;C zBuq?=m9P4)Z{lMJ>L>NZNI-`+qFd_VzlP- z)iO1+XOCmanl}8xcALuYbN-b9Nci#h6Q1ITdJqZNO-cu9YJbJ3~Hy%|-%7&9)U z%^HATXTA6laO05uK+z})b|hm?be|L0iM_Tt8~gA;=yFHV`v>pm;|+a#=VO8m^$|(~ zKi%At3iRfSo&Xzwk96$VHOO%zO8EA)2$W)L;p;Wha=k0Vs+m=Q%RaK!*Vcr9)ob?j zJbhZlhJ%BPz*knv+Y-Ia*^O8}9)w0U*ju3~hS^c9=1E7>iT%vxQ7|U? z&@jtq!k2h{=Tr4{sok}4YFQ#pqt!B0;?L5bzqE@|$eE2M3lI&c93HIz>>hFfKE(8O z%Ly#FXI@0`H8JZ9HvY2~S&o|9_?~%xdiF5+GG_fI3uG1MF@v0?BUQ-%1y>q&?%O@3=X z1U}bSuO=J=%PFX^$bI}t40YO~y!5ya?K;Nwr-&w?$928=33@SkxPbz^oz-l43~1E( z5=x3%0eSz}mCGp!XDaZrNfQQSbpj22f>GkhZ&pEmY^6j{U&$TNcj#j!Fkkdd1AQlS z$;d_Vag_LR`v)K?EEBj(y%MCj^(`*X>-nX`J-!P{ZFpXDs&iZKtpWqxW zVO&Hlm)sZK?@n9B`8O{1d&gEpiL5$9{pwrqvvz{ClY>CBEF$)@8d+q05SY60o|a?- z!Ld@{xVY)uNdSUCztSdtYjS1Irt+&{V)l#)ADe0b6W#EFTi!+ zaRGxO=?5GSOslziM~Q_d50C9o6LE2Bnfvpv6p|~932A!dazt8u#=l#ocg3s^JHZ+e zfIp`3_X>}nzD;}Cg&MyWO07H_k2-2S!Zzzq#Pw5ZGb!Jm8Ihva-!-8wXb=gS@-$&V zo>tM~#_oM4V9|7Xa@c(|HM2B!w3U3ONel?mCm&)L(Z52JOo28FvkE3oMPIL>?M|O2 z9u-I2tN&6JOZj%0lW@sDH_n<~7ty}(K;`lTQIwY#vi>bq*(l&J<5S^deGfPr|0tzT zh_veRUp~dMUck+7*x4_*w4)wz8*Pe^+mC|#< z7n_}1?^U%_EiDTS41hpE)+bza`4zv3JTKp3iDR|aWZ-bWUn7pb5x}mO{2Zl#E{>)w zI|SV|Tsjcs6Ug>2lRZr{Z>mEIDBZ>^EJrSVO;0 z82<%aZ3l|k!Le|by|IUK0QrIL0Ojncv@*s3Kkw6=g@-3*CaQY2lZ*-R0=fqN;z1FX z8{Z6MMX!#ylbq>{!p++Ny8W0OZ8Qew7UA%2(}=O4-K@V-OBWLR`etJ&d9ex#6sW+2 zWsnw2kkh%PqrXu5Jdk?rAcV6lh*n>k5hHs2UgYYhLdJwnVV0~9)}npW=PVnpgH+!A z2CXd)!lVAntqTx)ffB%BY0RcXf#@MSzV`Y62wnQw^W&GXYL`19`E>OPS9L zQ0H9fPi*Y#&-S2d8Ys{u|I_;mzJnQ8!dlWzE_J7e!@`k`o^bgg0n?_$@@2+-y!;bD zfPXCRWWf_n_-c89`qlX5Za~Q5`N$=?P8)B_4J`7)fLT<8#Cc_F2hKq1wH@xZ0M>eu zSuxn3JqGCU8r5#7Rb~oXcZ6_G=DR*CY-RTV4t6oOiT{_$58QKOy{9T107p770%57^ zgc4>Q%v$v))F+j(IBz^lTyJ1>F{m1vOXMQ=aL1fX;^0cLMnZwM!>u6lCT=mmFFU!DTz z$&CgonQhmcX;e|I@wpF)ToRXF5xgs?z6X(tv?Moyih^wxxbk8$;>@bew_GmFru7ke zUGGK?4loEUc~yQ`#q4GPg~%fFWX-D*(NHQUD1uZ3WnCV=OkOjhX>-BKT*H0=HPyw@l(ttlu%=Mn3>HzR71LN#~8Ju)Gr~>H2H;9 zzl%S)A7_j~$<@zmE~k3`$y_}v@5_alL}m4LpKoywKOFH}OmEnK;asJhwp2{x%Xaqs z7%}kG9P{{TRXP6IdfMK3?J*U>s^{itrl5zlOyS3uGKBlOan1 zLWs#=k?SK&@9U^~uyQl>?o#RQ?igSgkQ|zK&;5ID@B8^4-uH{+`-fvQY-aC$?dw|C zTIX8pJOjKCsaY?-;N_=x?LlIiKtBbUXf>ct6X~0B5#}ajKJDu=&+$o$kj#^H=nBjO zK0kr$H8~IMy}U~JnL>AfW!a_V@gXSIQ(#YcO{%C){d0#+m)lc(nV1fQCY#>`qK}v8)9+NuE0ek{ zw{WC#J-g?ysZZS9a*~dhbzxGQegLH+b@e_r5LOkQMamYb6gl7!IoOY9us32S`G!DTt@2rd#Mm1 zfvc_8u)^TExqYuMJhs!>BJ-jv#KcB9HjN&z=}xGgKl6`KJkj&etVK``Is6$X5?e~->!gV5&Sg( zK@;R@riv_}>6`_qJr@RRe#j@t&{lJEBMuj`;=|oq(my(A5`wQnnbhJ$;thRjLOq+W z{uPB8rry$fq$Y*mKZgT zl5it-w97so&We8LXd*(A;!O(U`4-8;%*vXjZFGxw-TBp>nThG-Eaa@7#`#MF5lc$n z+EI;j-f2^--dwk1gtk9(;PvH%`@2r|R%jiFstSqy>Gyk&Ufg$}$&i)s_wGtKIPS?a zwyruD5(P)rtdk5kc^;i(;P-7)-56|?$yv|U;Nm_WjueGoNQFy?c%K?H>?Dz$IJ-v* zqnGowmW0~*rJf67?dkXv01Uz66-4_D7V*ii0}`_&Im+KT$}q>b=a$_3^1CCOW9I*#^kN zXjee=fcEhYKyf#N-@GU4!al2ewY*02esw_qkUwfoJi`AfFijB9Bg~R#7m}xXVn6rU z!n?~5uiSs)aIJJs`amf8qpSC6(9~9>D8$+`a?kMH)?#3R?h)O1l`Ky>*9OaXLs>x3 zDq~PF^H2`eLU6Q1@Wtram;`mSL5OfBcaky z)!fq&Q`+j@YmP6@9&P#wp;6A!89yrF9ppw{`q|*Mxmi-C?R+2r8JPO3&tV~q+5TUB z4kQ2Ra{#(n+NsJepLyCF+lyoaTe0Qs{-^{r-1+2eExE+rnd2aMWQotiM0topcnB5`T7mZC;3n=!@y9>6t=YDg38v7VFS_ zQ!db!(KP6JR4q*M)58e9+Dm5JQ`N&K zhx>p&$gRn8c+p8I3thuaQdprywoXtbfh4?j->*KgGYFkb9OR%l4aNn7B$C^?2VuG533~X=7D!Khp*sZn4eNn^+nfz* z8R9n;+2LfoW2x?ZiY#@Ezx&<$;1_)zS^ay``{>Oz&RS4)WL}%e z9HJDMqF2M7LerjIdvQ6k$l|QDwv2aw`wh@!1oSQm-<-XL&Kcm`Jm(~NREy~CYPJ$u zs!w3TO+nPU8Xf)V6Do3L`?zL8TGR=&91VF>pKajQ5TwfM`2FJ{|}ycEkgg z0bZ9ds}1Fcq*|r?MO48HkOM?cU4Ll;Zk1{@LA0h$WPLxwx|DZtf-B9wre&aGS()0I z!!ZnAmpGf;d6XJfFxu9GcvfzE1j|JNqUQHwJqAv_a^t101wLvW3)@#hLx1MX`A|STVxVUrOOReD^X3#< z$z|xYlGu>G6{gSEIP_&<`^%fx6wyBve}z&Lr~Vu<@Vhm8fGriKq2WB@nWqj2V)EH7 zxUGg@>BXZMB+e<;E@U}(cgy7Uu?d7p%h<0(R5d$p zX88J^s@_illcq7RDmu6caAXnv>cMshHkpg{O8ct5ZuO5gF$O&{OCc-~*EWMFC5`?7 zt(lGSLM?P3yk+Ifaz)BYhUjxIv7uiWTIsG^+w&bKP;;(YP-RhyUn62{27GDb1GYv3L4WPak3cj?|ieQ0|?7o_l~S{S*r2M6KgVYr-Yl zj%cJDwJl3q*e>iFtS%y$Z3wCa_!_fn?DR2URomONE^D78VY>jCWCanmrL!ucU3W5AaGY#T(9@=Z%XRvl>h zUD)|K+6BA&HF|`JU|&d`*U##BhhI|1VPd|N3e9C5j~TwvcwmZkIJtk0P{>f|52lw)n#==$KsIs;uPIX8=qcYLm%H> z9@Xd#_3C{6(e0*8bzHDk<_RT$wMCTZ`VHjB4(W@WLi?zXu-{WV^Gm^nem|E+D>XR) zGdEa`TPRhn0_2+72c?g9hOXJ%PMkkuxDm4&$wdm?q-+9qn#lOMS9vy@VZsJ?dF8m0 z2XX)`M$8V_-en{ljo^@xsT=@Dj zCuE$Dxev732!@F6k7Pv(mxwPhv$Y1(Y^7zww99nm`{JEZU2Y<_`qK-5pyR=#tP9f8 zO*u@5q9+Xf|C19DC=#>fMU;nu9?;UEpxp7kmx1cc(&Uex#vi^ z&NF@_2CWnq)MHX%IBASFpOR; z!D#icckxETnNoGv-XjEhZTPB^w)!eM`KEIKnNCEKj)MN-k>(2~H`9v^B!gyV% zfViIwp*l?0dL_WB^P9KCxYdZJyJmf;W5JC~EH6cfdXvgdf}$#v=;5*!K6%64FB*<` z(R+9tbO7zi|EL!hq(iKE!Mz_)AUMjdsBl8SZ+n#9W-_R=XT@mxjX{;v-(kJ@!V9vf z1q8a^Ik2DU*IE~xd_`3P31U#ajFG|-owuXgx#1dW5wC>wPhAw1@uhp6Zjn}()UG}v zwvcntktIp>6Tsb?nwyh2Dr-HbL@;nKv|5eluxQxrS3Sa?qVgNeXx(Iaia!Qg4KCS3 zP3J5SXrdt1&JCJl>8N)iVEY1PWNiZ6GdbiOI| z&ufw3iL%iEfozbTFCew@QHpYMbh$6xZy+mVsI?FcguI6!8~*`TMkVX4qaSgi^4l7G ztp6ys;@v6m?4zgD!OiaTTfyLGP73cNO!Fp4L(L6|5!{G1dEp*rBvFV8TJz(ri%4Z02WPW#4K|&Fv4gh9LuVs%f2Kg&mTH4Tykx%}0uXWb&TxwoM*14=p%pElgtENWZ(msP-HrMs(W zRFDT5e<(pcDs;cfkYJ=@!-j$0{tsC7%`SeAh!SFgyn}+`x}AXJ^lWR5F@l@w!t#KV;xr0-FxwaG9?=s7 z6m4+J<-Y_?)eylN;U;*H{|{_>Os3kC02x zXfFNO^>!t`+s)N*r-Co;?;2xN(@^(Y8hfPDEa|m`<-6xm8WsSW@iB3WUjVvloe#;f z#(tNNq#LR;*?=ABhg^be!^NR<0YquRRdh5g_>-gr3&0CFuqIRNj!IqLTSwr@m;1~9 z1NhS}zPh^AbDvUDZmC*ofADcY`I|^Rc4p=*fZ;xb__|U9#?u2ThFC(iSQ%1j_OS5q zoyv5|lNK+Rx$M@${h5R0<4eC`P^RXeG<&(_6|o7%qcs<81B{;|@C_y5h8JZ=uRBTb zkJq)AMnrPA`k?%32MGswHgkno4zxe^#~#rag?kLT!u&}dPDk7y&qdOHk>=7nQ)N5j zM0){b+Q)O`^YUG8;jNKY^B*p&Z+e;8aw`YPpH!FlY%2P0;3n}MpxunfKUwJh>Z;85 zhA#{(zim$G3~O+$f-icH0D?jpqACfT8x#nX5CFB})4Wf6^4)AIP*CQRva#p>r!fLP znd3x&IU89ROLu}fnFJ1~6{`9&XsC4{p(S6@@WqRvPkQ6dc_1byyXo%%jk3S4YZuS` zeK95c7m_7wXq2&}Zk(|l6jwWfJMRVgRsKF4p-&r2kq|`e{l@L3FXz8IJ_@(sF!!vd z4Q{zCO=f6x)N0EFK&<#BLDNA*#U>~fj6#}PC;$X!Xvj8gP_^-W zv8V)1p|3D@U(-|iW%B?EHB?&*aM1}c{u{YeiHC7A?Tn0!5k0cx^*m8X@GRxl+(?mg zxj6~}TTy|%>E*2P)WHCXTK{R*Hda>Fv3I41M%JU*99*pM)iStyWJav z9oE9~W7eC>OAjiE!*YbrQH|+H_7XEKYw7lkOVRVvZulZ)xJ_)01R?OvUTDM2RXRGqb&> zWRaUQXI9_C5DcrK_D1hyzH`6wgwr5^8{}#rt1Jt@3!@byRVpBL$?rBAM8%ahS!yW# ziQMVog3nm>c%7r!wQA?KWlCO2XJn&c)lE3rgyWbEX@@*T$ZdwK~z=U=SdcUZL%n6X! zzTboAtgo-tx%k>}zzn)3`tO$Hp{T)2u zI@PgB(CJF_`bzL(d5yhF?nCWb=lr*$!v)Q z>Mmp4Ba^)$xaTF)(G=w_-DcRIIr0f5a|Fo8jk;pBF7Mii({g46JjRP&sFA7<^fMP6x0Y#$pog6*;Xf6X@#=9T z&iP6R0Y6=h`8ylZJ{5Le-KauWHs70z2@c#qpryGEVoJ(hy0$Ky6f!UYP|z$2CWYYs z++ZtDb2fs0Y%z*hZ0a)j;mk1&PcO1$qtpL*(U2O3QM~<_Y|~We(<;o~dLLQ_;R{lX zg+4l)#}Wk587rQI^mo*QY=Qx+X4d2FZSv^n+|4=v@VCZ2kR5+ zCS97hh4DGh`5?rj@mwG4pZm=J_>1N+bp}BM8W4WV4?%+s(DP{TJ05H{XC+RL?-<}1 zJW2~|Z@D!P?&>h_Q!%b}K1c&d7lSmN!6;LHozDGzy~*&4N2fC@AeBnz`~P{EfcoHt z-|MOJDfkY$zq_>`SZnPT?XxIUeXOvF(s;}m&h-3{i3$R+Z!&{D&j4jN@VIcR8d{ia zhm@l(W9(s89yWH^_^H2dvy1*5`)Z%1v9I*)sEKoWGyGe|CC-B|a^}^cCEs*K zb-y&(qs?2O5zL}|IEN%%F`Sc&d_n+LZuL z5>auGZh56d#tV8|?jTC)tKdO6o1S|uSEg8=nfhRr2a*adO!9&(M0z|>cfI{fg(yF? z6gM4cbdi<81cZo2CGeSz0PC>ZeJ z3o3!k?NH)?p_^sj?%T>|&-Q)N8{Ib*_#ugn?(E6#LyO*U*71zy$^?1N?VAILXwyyE z4tZ2W1j;&w?EWZlZO(Gr%INJFS-K(Rj2O`9N?3Iq29$N zE1D>UHtH=`mMG2Burj|)R(*Fh1qH%tyM-vW)?M)~w$3$vDnHpitzxz7y)}=aiPeSg zj?9Y5R())Y-o9NWrKVf1P~H(~=hinIj!8*f(MZ~-im0vB{&B@WsIQ19A@1+wZ{4Q` zK;UZtff+x4-YJE<e42&-1#UaiIZ z;6|u+NuDno`ICufSoHliRL#GLl49_4l-|31eI_sX%+seVCSE?{{Jq5+rrPEmHkMzL zk!QX#7kZMr#NHE~P2@0~FZ+3i^eYc)T56yrb`Q84xl_j~an|sa?39S=L30B9+;hz6 zjk_g#-cOGW3b74wzk@87Wk&PPcOo3gK*49bnxwz^Y9Dfj5KFDV;r|uGp_!;rT2N<6Kp;0q1A{Wf>#I-=`Z|RFlX@x?#iJmM!CPsiM&k%{`3N zEF<_-yjYhr%OHxu0`mBs{-M~n4+LNE02``|%r<1DXp?SS_0*d2=9?tz*3&i%#}L9H zU_oqb5|aU*KGSN4G6XDLG&L=e6U!77jmZujFO@B4xw!wPy*wB*@+M!aG!{^A%(i%wKJ& z#)eN2nAU(MK7$%E=rt{CCNE8}Ust^()%T!rR+Z|I5UtEX`s;DV$A>*~nseL<* znn!&B^YHa99MHw1m4~Vlf7zRDPLC_qku4~oH_vB^0GN$*eo_y@AwE*Nx-)W*0op;c zLV`ynzMVn!!rhi>3E%E!d?aJYT^aUmi8? zMn!1U@>G5L)xAAmo^GUi%c?gszHkUjgf|P~j@5n07@?@maKg-?{o-e&H*Oz#|61`g0DBa zd@UclLqDg7?;*6@So=)%l>x%idoi)Ej7u#u?|*5`d?@eVM*W78Z z*wDr~*gAUL@Dt|_*anD{L;!Dh%2H$NE>!2KN)+ZaT7^;SN2Do=w0jt9+hwisqo#v{ z*0I6Ca)dp%A;FTr@~o_^+*YiL;uJOG4DgrYMtsv6U!c`hauEu`~#IG6g=# zW`5&zez+0ySoeYt%R#bD5E5OsJEIVk5&Th7#WN+SQno8<8+GVej^SLKi+-yJ%U((L z&h|DvK#VOSxy~Y4F{l+1k?X_~C+xe58fF>2MR=*g&!l!=B_|Si^R}P;*p1o~b#H6n zUwr|kPt8nK{!(3QL0)M z59IL|c~9%(f_~&xK4lJEdA0h4cU!aCo?3+xzWb1VC3Y8*$6^#){6o#0%CtyBm1Qik z@~YTdPOgw(y|3xIJeyLhxi+ElhEwpCe{V=_X2ZaE&@r}7vZ!IlUD#Ew94X-F zu=5!UGlmnT{o(S>*_sb27pNk2JxrZW4bsO}Gd0Hl6E@CkIa<4P-91&W;5tyCn}y!G zFY!BGHEQc=t8s5NPYPEnp2s@!&IGWB6ERJ9>0?L}5WG7J=BV<$mLk63%?)`Zt$yv5 z$5kjVS|5k=L?DWo-AInxS_2>gp3Seny>=(^!+##M*L0*sdbSlf86$atgADq*+G%=c zxK0}kbYs)Lt6XNft8mAEAC(0;7mg1U7q8Mh(W4cF=CaQ5%kQwodTQ)5XLd|Nek;3G z2CJZ!?s4|B>Yh@8kGH3+-@!rJDnonP+hb>jOSQL8SvNlyL3wOdGv(bM1rJw)8z)_Q zf*_8QZ949TKGu)E!j^7}zX79f(q61MZG~$)T8He~Sjcr*o)}cxr+E~daZlr|M$u5q zy-)8(GA&q47m6#A^k9?D<`Sr`yVDVDd}XNwM|!ZsCNKmW5Bj5-69}Rz2@A(to&E(b-ovkS%=qAphvycyL#&-vfCS6w5ioUzgt# z;6Hn(ZD#s@E2q1ge~bz^gq&k*9=Qsa<=T|C%a#B+$M-tcML|&`T?*ymkdR7AP9G?T9tyKN{e_ z5j`EgRZSJ(PK`TXkQIwG|Li72nviBtg z(1H=E(K-Yf%)K~Cl`Koznkjd%^~Bq z#7g%%gL`vTAW6g0h7{1&SRZ3n$=Y-ErIc5d5T75^w@xoX{bS=fVV5>zQl}7D?NSaP z(KS7V@3@~6Zy?#7u4WPez^n zWY)~qOUd}I`qN8p-YYohyPAYQqbXw-wdq^@I67L|qT+f^W5P>@+aPV6Ji2gbkwQ&` zS@BvR%hl}9C)(t|N(PxPVl83+2gfxlXFKom#q3tVeq&6L)VY1m{ zq^*m^39o1g&X-&kbe^QQo}SP)l$wI?Y;p!QrTrqoC(L`ESJ>ZN&yrN4lF_86E>U}; z`;(OvQ+a7S){wr-G->-cdj46)p*!w}|{Bh0kpTDZ6py_ZTV@u;dvR|xt9bTke z#xqd@V{vdzaX_b75e93y==s3X?6B}zs zvJBulfl@;J08yisRvbaK{N!?P$}62gqOQ*)KXfFz8&7x5zPdc|dV3~DyIZa7fA1l~ z2I}*%U3Xv!GmIDMe;O1lYyKJxB&Y0WaxV~Mg=_-{U`e;vpn zi0$M@LG5=@WFsM`-wzJ%F!+Kz)!#k&T0)MR+~S%w=;KGGl^nsZQDsL&TCEBPVO*h1 z&uGKcC2^h%&b*Oa*O-)fD+C7`e$?<*U%uG~17TX{Z<5>wY zR#S);YqHmFi}RF`*ZD~z5Ekm1dF`&;I&U+V(XQl@;4ik^Y_ia<+Vz?4+%7mL4?#YO zkn8{p^9H}Wzh7ga40%L9ep%vE{(O3hH~RMB zauR0ygS)&M6+M6?LSN6F((#V$M4PUX*e~Wy6y(xGe6JV@6sMcpYL6!+x|OOHD!U7n z%oEPhU>(#PE=#b&C;sSCLj2F64#x_y=|Ighm9O5nUvJ$P-R`;Wceo2O z^>4)VCw?f~b9z#3Ki4bykY4=v3>Eklu-j;v0iQA&`YmuP9eEUX`!*jf(x-%bJPLE} z8*P)`%lU}ARkO%i@JQMv7H`wo`9>hih_#; zpjezGaU**%pzk*9S2U@rr1aqS1315TS-%Wqmp&iUU$36mJT&vQa;rj~?OU?_ZULw9 z#mmR3hz0Sq8$eKTIZYJs?tFEo_xZ3LXt{81Kc_;d6U~}tgd<(56E-=g63?37 zB70hK^b_Tmv8~}k(Fl{@fJlsAvNRZ$*(~&!ox_S+q5)w=%wWcGP5^)l zW*obLRwZI)9O1krW$73Iey5|@a%RU{Orm1@vHtpGV(Er01^1@z*xmL;_{46&g*7SF za0_22ZCBDh+uIuNOZTE4?dXN7mc7WShG)cMdH|N^7JsgIm#(%pTLa2XJ3vA~qkRgQsG(@oI*c$D$3wurCNrqLOz!8{{ezxnMwn8_=kcfqS{Py1l#$0wrMd9+j+PSo4eE^57s zV^MC&Agql7x!8B1%jqA7EGD}m)4u_M-vpGOiSvDffhULI%(*G?>c#2UF%Tc;PT24k zB(OJT(`Xiv>Z@pT{KZg(mFn+}48jbGWButanQ;|_?7PlRneUx3tb*0E=AF}I5F22a z@)cS?|D#B-?xDVDi-#H}ygGC`XKDL~+r*UhSMR(l*}9%d?FD~b3Lz1}A!upxVSj4- zBpt7VQj3+LYopOr10>qPiZumY6nKT!6?1MAVNi6xrq3=L<_Uf4Hs9RLij4wCK6kJZ z2Z|=a2Q|lZ0vDFR94GAKV5f-jla%q@2750)&_eI7r(kUQQc%yp39eg;iJ_2A1bEjZ;{DJUlsFO7_qEmyP`9wzt1 zi@_wHgjtn{M|QMLmVrkF$u>`UiPilc2`&h??)Y{BG}q?5ou_Al!WnTuE4n(v!P!O0Cy_i*UhRA=2j)-M6v@(Jh>5&>MXi&vi$xMrPM(&$zSbO+uPO_2SY3=Or-RW z2qH%_{j`Q>U6UD}ar9WJ9&m7G5=;PFKHKhefL{98XD)c0`_5X4)8RT}Z+E}Bl`f`c zDfxB@vn|4RQ&~ry$9B;5(2wh=0b>6vjKX1`fD!{5NweIWdCU6_^{XCWl14Mb_v6s> zT74$p#I3zW0$NgXyz~0I(n^^nRPv1J7yh=(ieBTe2}--n5X+$c5)-38*Oj(cmm zl1~AMnSvBGfbQ4zK>eLAJ zg8%Qq8$eHyO62v=zU5C3>~vn#fq!j#|1<^tCw&qyiV&I^^+kW`dq--8PafFWz2iVE zKmJgB{{OOX(*H9vJg9+^C3?=sI=PKXrTn*H8P zo>ZSS)Wj`aW{0zn7q)9-)ikRFawrh*>L?tM%`gO4DgGlu^>2^K{pTPDj&& zuDv<)yX2t0tk1hFy}kXJ$H(f{26K}G<6M;gc+tQ-cVKVB%^0q*I9sHT5kEI#s8V2P z?177CWDsWV#X8kDe|8f7aNF|CZ&k(J<5`WblR9B$gxyGp;YBLjpqtfD>w=o0Em*T} z`x#|K3gl$C$ENad-WjjHeawel#Ls4IVbav`U}4yp7uW}KxcP8_T{-OWE^^mSg~>xQ zIaQWUXBo?kslYm1Hg#Yqb}h&FA#joH-!FL@>Q$h*)$i@t$4zjepO_w8lE3V?{7r`# zSHz2(P`u;CO%b@Vz6f|#>?Y0zG5Kb@%Z0Hbb~Mo84wfxx1@WYfvE4&?hdCVYZ-(3E z+WLvqR5;m`Bki>ScJm(ZJQ8{WaQz&wbeDcovW0$EMSo~6M$$h+^{;?K>>DZpW&~1v zQ01W~Hp%4`HG`_%9zgXo2#5z#_YMRhO?@Pc{1X*-d;zvxHf;O8is{KLB;H8ioSN$U zHil?*HEzrX+Q_Aqh8G)4pn_+T%x%?8zqtNcIRExX`4FgLB8K&!ul@Id<$Z)bvJr}E z<}p_76Q6CqTxER57-X7BoiBBwgH@)pXjOGw-5?kdh%|No5!0W4wZsP^r=iRN35Gu( z{reyYVI##mLVE5Tg-~q7MT=hlWd#33`C@Q6Y=9m zC8AP|qGVV;F{ zz?RQK)MKK(FHUG%LWerayU&>*C7SExUz{`e;y(AY2zc%sd)oyazIlF2)D@MQ`kH=J zxpnGeP;7=AQ5Xa&|3Q$k3-Q6nk184x2VihcMOpm=`$l6=w$D<;-&q zHF6aWe84M4le0NLz@5#uD~B#AxbTXImstCc;T1t$YUzwR@CpE6?e#9XUJAWRBcp{^ z`1qN4Uk=dB8QNiPY%cBhRx8ONyl}_lD~NROKwOPMZ}(s(OG~=Ea_u!)wjK1X z0NuYlvE|PX8LW{@PwI1YpYm1JF}G0}HKpI4EZN<|y;O%(@sE`3Lsw3~UL}w0#(7VHb3TPIjXsZ@Mz*se9(h<2)YvHN`b-gUV9!QWAH|eZX$$WaG4wEU= zD3#DGk^tWH_S3-Dm){}Fs*Un1EDws+X*!MAK^Xe(9dm{R9KLH_hZjs~7VsMhdR3b> zuZhr-tvwZS&K`_0t%3oFn2Gqva&t>WPPVG}sAHdIA?c%6nwd1aCqG0PJXj7RBd!l* z-Qw5#Xt>uhVJE9DPgfIR-VxJ=OkJic=&pq`z&ta7EYjpjzS=byL!SsMX}fM)F?&vR zs+VI_!o)(#o@U(J)?8dIkLG#mQ_|LK`^w{j2OXFW=e+297GS|!tWjp*Jx#WXHeWtp z)vecZTv4~&Z}Di!lgmiR$1DUK$Mq%T2n*g@G9j8v%?C>gR~ zT`5M)8?#E#+<1KW5i>g9q|iqY8V?54sHW|K=ab+ei@+m$NnrYHWMj8|7_zwMZ}~WM z$f6lJ3Lf{~kQv|{>lPW!r#Z5drBDQPwvkP} zZ=Di1TMoA|;Q?mPntLZ8T3#gO=+?QKc&*XOAMsXnZF*@{N3P{vhL_{7LZ4AdY+PM` zeS^y0hDCB|k~xKLw#=Y+#LJyAILM{JY?3~@2J$^E{1JeJ*Fpb_k|pvmOns6!gz?Tl zHUf=^Ys0#m`QoC$&IWNoJepxNS{u>6&hwwq>N>dZl|nI^%R6{%D%sjPfR);W>cFng zN4_xd-dopQ1I7Mlv+XjD@W4ah0UEzgj{PVUet`_KyFppc_<+LtHsWtCfak=^Y0Gef zE}S}^SHb3uu~8(}eg1s~4iu<$DagFioGY7-T4%PsE4QSRB^ej5{fk~KBmZqjzde4) z2fQt)v#zVQMPqgEZH1$6M;j)}{FuK1THTq!>C4pjR4dLi?<;l5# z>x>O=<99edmK*lU+Q@7#(Qi0irl?5oA?|w&t!@&ybuJ9ck0xL?G8}tg=y3`q>f&)9 zXwUbde=6$NBj2}p*5+EdRLAdjFXu~=gR_Cm(`qXR=VD~WY$i|y_WkT+;J00Lxo0m| zHtYT}2E1LMZ-i>}JR zbCh{P;^p45(dm}DZIOFydCh{;*d-#x`HW-=C-v}XA&;|S7xD@#Wi8VqJ#HZXn6b?y8Cps5UF{liAd!*c+ zo1Nwh4vJ-ct%~0PKXE;tcHFeSN7g&U(ed)AASJ%1pIh43m$&togl6XO@Yoc3Q8S-V z9|ql%#FAg2&O~7j`H9ww%D@DxU!8Oy~K0<3)J(n za!Qq#dUP*iGP6Q0iT!45&ZX5#8N3g}%wIil%O$a4^-GUT=aWs;y)sI^JuK^=ny&CE zVU0iotk4Y6f2K#M_ssHlU`068^%l1`#N&Ph+V^cXmaqzcdzbpuIR5TdB|rw9SdVBl zTjMOTe=MJzoTQ)X_3xW;JOYHKYh?vR)j&1DPR@)pf?*Y$l?=kyF-fFP9PEM*{$z_C zHt!QwBTZcx@I1dg5(no0iIwz?G-b_@fRf+MO1Rp0QIh+U&Be6|Sk^xw6=<{&Fu6$l z$za|$Egv?06{k(dGlR+g{HMa-I2bUwmpaAFmdWV-ykD6uvvVw6=mREnsRdZJOHw3Y zcEmIBzeI0Ga8@FoX!tQ|XH7S1T|j-v$R9KK-wu|k0!%O+ER>*)Y)(E*G|{JB^y2=| zrO9u+e|xQB_o-FJQ4Fxd*-}_bQ4IQwh3-I%kuYNr`ZRGZ!qUI~+xP#c4MK$p;q)=p zJbCpe#6?X60>M}4pSSP!%n%BV^1GAmj(>Y*e<}wN2lj|{B!$8A&mVt>17FwTD9--R zNB@M)0i)80fVmbD{P=Hc^v8ciLX|^9T&shJM&|GT4R{Lp=Dgkh9KwGO!XK;yI1md# z#QGr%0(^HO>&u8cS=?&-7e?Izs76ikDs7?N3FlrQ#^&Ob9RH4S6)Sj(aK5MCqTc`e ze;*=5P0^pc$o*qh{&`RUA}>co-{txkU3ZRa6XH(DD5n3o&th%7z}H=L-f#ZrqkoSL z6|$m#au=$&941(F3n&6q#u#(=gRl*h zCz!(HE#90?fyba1dUTD8q6x0i?CmueTs+{tN=9N~p5{IK;@q2yD@k3%ISuT8pA#?} zxZT+5OcOWuOMyiRj&t+1hXjZYUGWgn;h$@O_r$>5;ZswB(XPNCgP1`_DlhB+cJ?Cw~XPj9ozZf+&C6)hL#6dwpsvuCQ)95L=xaTv^m@Ye^59$9E zUE5mq<@{fQYaeWae~kH7+ku1m)ad&z&F{~gx;Suy?6 zHdHcFvFwrzP^S^`Q~l35VSk_V&8>1j3290QN%+pmA@=S0!@r|uT#{rY-e|PC5F*1oOdGbH>SCx=)7adKSnWM`HKwu7C>>YuazHS2(@xd5|rM?&S!InKun ztQc=CTblPs0R)O-rLPY@J<`C@G|epVId`HJpfpZ#|IE+H`JS37=#mo$418NC2e8D$ z4mR7k|6bz%HYWjGh_IL|lq&3w6^Mk18U`%ro9Kb=?r&Mrkuw;R#kva{kZ&+4c8pJ} zkt#-@(jELKM6zG;W1EgY-bWoYLeZ~*Wuy7AXd$0Aoyrv&mkrL4+4`E-U(MbwXL-6D znxl7Uh2;8zy@|F2oF)Us{f+LE^ErH}aCXv250;B%;He3nx`|WmBp31d@L*R|2B;n) zRHyw|s1=?wTWw9;>*;ZIc7JxLrGqLo4~vM2q1Ae#@D)BjejGMs`q-HAXbbpqTSlC^ zL$gTEb!ReHZeuXz@u(#DtG8Y4V*QtopK}YIVZVUJ`GmBxvdtd$UU)0ppw%@4{^u)_a zG?6`dB5OC7_8O=a$RM340u<+`p3!dbfkpP2XB*wAXlW_3%zAnN!O%|Q7a=NT(7h?Q zoCpd*m6-~Q1>C%nIk(|1D!)!+C)v!HagET>P}2ht&Vr-9sP$z3HFRyd+}!I;ZxOjP z-9(vjJSD~Nr`Qg!7Y3)c6JC(#L%KLp2F!7Kl$n{CmsW@J#{gl&+-2CA z+w}0O(+1zC`*7@A1BpsYKXEc1(C9#+Q4rTkjm=yVIv%MQxAhtQ52BIX&p;LL`=#4# z4dS5&<`TW?Z%{8IdEUk8Ioh#O^KuH&6*RpD+aS`}I@Q;+<<9W}d*j&){oujABOxWtpK@TwS6NRwU`8g8L1IFBIJ)kk)A}lwD&KFhB0R@}nM$xQGRNBgF z`&3o|WnMBYZg_6Y(lKrZmf~7ZZs@sTp-~2+@P$dLikngc^vg5X7!L~1ftikhOTqbt zNrS;YeQEBMo|k}P;vs36JxQTLRaD98{Ha}m7QpVITgnTX7x!bil2=qso|6(0ju{kP z;)h;d8T;i~N`-5KDSfwm5!&Z=3l-suUY8UTr}OI^;~Twwsq;D&F8tvX@RZ(~xk?Ck zFXXqw(qdRD9aAEQs>3A*%1 zLM~sB0NlS2F(z@S)Nc%%Mc z&}leTLZpLHln!@>VxZnX(vIk@+n%V%^4zTsDiaoX+?B&-gF(})>sWg06~F6q=whT8 z?BP;!>{iEI;KTn=7fey#bb z;6$}`rAG7g?k?CpCiq&RfQaAXETJ65e?}Htan$v|YO`d`1tz@c!Flt3$?G7Xe{+{@ zu#_IxFWIY?W@#$`QtI_v*#w*$+7C7@X3n(uduYjq`GhoBH#s(B>ccG_4S_*Izr%7u#eT z*apa{8`GY+0>GaBK@69O@}OCH>3{-`7J7Xsl-8Aw!JboAUukx!md*1KH=iCA;rKaE zD=2G2!{j+Td$6~oxR!fTLJRUjNB&>+zArJrDUUtc;xdPFfipprS&oKDy_0%m9sG z80YVaVlhE;2r)*#k$CfVWlvpIHB61LEG#f^$wevbczD(_wmzaDc%4~U6>!b6e3nuV zwbH{rN|`=mSq(6~M>vnu$R#OU`4OD!XuG*D*l$L=x-`~LliPF7)2`m?M#U_3GC1TV ze8Stu0rRiwrBTU^KvFTb-TCkXkh4GNr0TnaGBo&hs)Ne{gJTbumvYs}=nTUdp0esN z@mGz(KCnzFXJqE0QWA-ldt%Fwq@7I|C-H1=ts)JzDQ~3BFv5my(V2?sg8IGD7b`*h zJB*xeQpS5$jG$)(=MhrHs*sr1vx_cY0#f zUj~Nfrz$y7Qyh9#112{ESh)-DLcwO?HUNchYe<~i6pur|6Iij>X#TvwYXAt>63?S%CC+lv43 zlvr^3O_K!y{~yUe^rFTW0kuG1hx8R!_8Y)AmlRGILfVjH{U6zH8!1jHOewk!T?i-m zY+RXG{yo>t**Os(gVuqWUg&vg5Fl?g!1wXd)o+|Xh2l0WxCiriz5*x7pM`Gh4cUX0?;OIt2eCU59CG9$$bPx8R zxkT?Y-E-aP0h%lQEg1*_>W+?1K@|Xmnm-Ke0p_>WMzZy{$dIg`#m+3G zEcL6VQ3mC|^{KT&8|v12@n)9FD&zI3KC?>wrYDj(8SgD!S2^hdzF1-#F)Xwszskpd z>^jhJUVA4B5m5l@nBPcHqlIdboO4_040UhCygq9d=_*I)?49mAgEW_OTr5#}N)(2F zUYkid*FF?Te*a-X_(TOt9&UO&$iJogYe`P=qY>k9joOzS(LY9~Kgoc(fDF|+WZc{N z)c!LGBkOfrYrf<4@n~_(!X1A7FC|qo&?GJ2ttt1}lCfTj@I= zJxtF9IJ(-sOnP`<6g^Il-Vu@Y=FrVLPnx`ZB%Ga@PpL0xJ@#ACEG8;Afk`cazXa_~wc#nwAxD z+g+^he7CA61nQHPlHNl$S81-U*TKEiS5=*z$&NR?q9?0c!}vE}s)+8ku_VjjjWZ-h zirI{(QFTlYFVg)^`je`1va&va%(qT3)Bf@DL+?A#-CBw-kdhbnLn}6k`%WU5#9U~2 zkV3WNGFgDRB25Wc@xb4_QVMbAC7#k^kvE8qXL}yQ>)^rKz@@Knhlo~XB}mxiS9{3D zWNqLp*Osipx=UB#t{eJ7RZ>2W=nQ>%p`+P{{WcOou@~~S=q)Xio!`eE%-}6jcOiQ+ z2J|X>gosNMi4b5+0do!NZX-Eny%*l~S)I%fl1R?|Rjyv9WYyW7+;yt(+5rYL>B<#sKM zU}=wk@6g?7=t=)MyA)oF%f@i2GT3-YTep$Qak9cjf)`R}Yu9kNbLS%)1hYMmP7~tp z`o$7wGC#}bFc@@^{4?)Ma~R=iN{#r$out&8=qnz0j9Ez`^L0*KN#A*CKpjy~qbBxk zFUg!^n+heHYe&tOJk*Fmv`4Y^8Tm~L7@dUM&%c&dUNu6lDk;JDY5)3bz|$&!ZDSg8 z*PixF(7e$G@Xp)JmgvPHAwZ05+C9=lD|XS&`!sq5cM@x9*KJa@9CrMyk$hlfArn{f z+?8Yd!vKUS2=_={sQ=ki@dpFTku(;U>ID)C;{J3$ncN)$n&He!_6hy+PeQcvO6J@- zios9E#Z631fQ|t2(K(0zBn>BBSyduOWSAb7K-fTWC!3Q!HZS#wK{!6|C)*#0jo&P& z$WV-w1jCKsl?MYVQy*Q*FQUX56bvqBbs1k)_9La)t?5oX#rRwY^PRV}0|T9a`Hd0)yGrPA8@E@ng8YZPqZ9pxU$>GcCi-(q=D#T$j$4#?cLxbE& zjihb!@v>!HQK}i6<{$#Q&rVrkW?d;P`*qmE#VY*U=jjsd{aI?p&ogar1lcA__%)Lm zMe_E3mnggC^^Si$j);m<0AJMkxb95!c!n>T#$aQd<}GJ-0b^%YYet2oW_ET!wR!ba zsS7j5h1I?7@miyMWwgvBP3~6_B$nOi#99VCbk(Ck@Eg(;ZwZ2YwOS@I{-qDGhg!kR zN*M!H;LG-A+)d{n{+^+$nPbcR?;=gspk23y*FQUDzKzzQ?*)AHsQg75_^y%xXM^DE z!o{AK1&BvO7v)5WPd4FOQu&2q2~X!c|Mg^ z{D}n6U>pQa>LZc+WHm>FK_9#ENppfFq&2F|b#AYGGu{7nrZ9pa3EOZ`5YX z4FqOW_(OCnEI-5zQxHiGTig?2^gMoh`PnDx3MjUDAhO$^Ma4Ute)lq>c^GAs0c74C zD^EF&ob01Z7*|{7i>!hE^WMzu2M5R;W2?LpELqEIrqRWAOfS zdHY`lN#d)E9PuO`^IxaM1>^gBkLtq!8$)WhO zhngK|yi(m|vx%fq?gRxC?4p{C{{UWMmF4d6a@;FXoSUpmNIockLh3GMf1FDKzm04) zd+S8YA#+KCs$|_bE;K=K5n`oLMK?G&^pm(CVX%)Di#(K& z%+{;id1w3W(=npf&a7nIVn5GxGzmK(8ttGdtWogJ*V5tS!#tx-BqM3Q=@9vTw&^nj zHfA&F4S-`^sXvX-bU4u`&I?@Q;4EStnLlo;O!2oWO<}kOWD>*ys|)6Ye#yFJ*6F3m zA9q+5jbVV>biJenX~sx8b3Txo<5*~0ic%lR zetcspDr%9>u@~PGIx@z}w-VR1K}qy@PIhild39hocSxwr?d5TO2@wGupUEaKh1dsTFd9_l0 z9U^ys@ni>$ois$}vk2Gl06h)JE)QPcj6Ybg0w@mPoMR?MN<|8zsjg{fNCp8=as)!T z|0Rh0&%1imwX2emkK*T`zm|+HudGAf=0Nb=^Bk@Ax!YS%zL1P~$+fx}mZjL$&Y~lf zS#CKVRaAZM=&>B)ralcMrg-84eO_GJf8KaXrIS!rTp_1WPI4`)RQ9dpSNu!uj4yDP z&EbpyoEt@ugEB;_;!7dV>$X7h9A%{KMdU2I;RASM+KlPB)c}ufl~-B3kz^9X<)(uT zMP6UpfWEDwf}q@{wsx)ancRrXh1Zhr<;IxD!;(#|hRa;&!_+KO*XRdnwbB}D^kKz@Y3I$ln+b|Ty7j#WdbJO=>2 zC>VHp$3c3gG=^1iNxxpNHDeU~mPrU)57_~k;pqTmMs{h5=P3#$3mERMU&$$?k z2>FC$RjWQ&ejeABk3W7wkDtVNiC`D5Pdk)yRW|Pj67B_)85#dsw8J87TL#9ylC>l5x4MjSP=3XT_>&`&QT% z#iEtPF<(JkXIgP~4Vgp+(D^e?1GlXSi6QgedG=;1xpL0ctW!OI|FvbEwWMY+xZ#VD zr+h42)darnaqD=)AzB#Jg!$41XZui4Oxd(>O5OX0i$S}x9iMBQm&LKDYmc(L50@3!ZI(Yjm2bKNeV_KHi`3wl)?5T{em?+^7`S$T=ZD&3f@ z-2Ii>BJIGmB5|Q>)v06Maad9Jl2#nr`n-|+`esYmnB+84nJ%A47n#!F0}uahS$DU$ z=kS`&0!+{F*7SNI!04 z1TIfuFc!X3x2T!D8B_7@c7ypUY@eeqiOuMZpfUg9F*ww=VG#scN2kq#*wt@Lm6tn{ zfOi|<;0F4ytjWzcVvSOAH-Kfb0edL`!%joZc0U=4)D*3b$l>KuAJ9vF z5pkPwD>vVk9&to%3mhnqrC9AQJhvwQurQ)!xUn>uEQYb@&L7&w+HEqw={!tqEs@dw zBC>ymiq7GUxK+t;ULI&_LW`T)WHm`G*ZHg}<4{-*Hw)kOEL+WEFJSlybNq8tE`#kQ zOQ@GzqL#jExSp>jVUVoR`_Y)6ZhI!^+Ph%js?vzzHrNih>lOfBuc5EhFrdem@DXuc zU~}Ey9aE7Iv~nmPdJ}O=OLB;tJZ4U9pR632#{8kc2fvrq@a_$S=yCjI$Nz^wY=t<@^6aR@EuXXtF=<#ovXR8dXW z=6qsIpZ-@_(7Z;zK=DsIc=y-wZ{mX8q%b8USb7!slaL(EzCcrQWpK*R@0Rnuz`)57~7 zBf2l^U>&yn(scJ38lxSQ!@OoVPm%;(DK%Ul4hGR?9+CVwbUqsUeuUZeX1Qx316G`_ zoh((tFf=CNHg}JDbM`H*tBMRh4rOta+u^Qj*a7gU<^5QY>(-RnovH9LBq4O`2~e=j zt?!#`Iu@9czC+ZeW&pwyupaZd)G1XkTPIJw3JzI-;n9hSX<0uuX9}y1GDU0~fP#C? zeF!6Fy8&02ArU~RX1t)1*S!np*KwXLS#*!Gf95M4{761R1AU_?%*$0!BVThQ!Ai>3 z?^;!7xXJ6k4t|n1fTTrIs$&1w?l_I$8w|R@OK)f!_n?dYwxy z)b{#63&st_YlbS9eER4OWys7({IxNXmg_M>$#_3XAyd`S$wqw1e^1ahvIMXvZ(qn( zj}OMkQ;q9HwKX>!IZq;+s%*Ad$J9t~pS`A-tF)U8ycM)Npaen%?m0L5VTG(dk}`8i zzF=)uA^y?crjePQ{OPBE#Qu^Zke<-$qGNLkr4)W;cIh0?*HG$-6!+L4p~`dpkWJ{k zS|~79tJAC*XRpNwOhNjmG z6|G%63Q>{YvX9y88K?_exiuFaG=xeSaz&h-O6me?l-}gqyEey>!7X5%n47}R#yucxH`zVsr|Wk8FzLM*^ru? zo}T`(c`elz<8BF^U$%g92<7y)oLv+x&O>$?F@<{(KOdEe=pC9nw9hF9~wxO0>VeoCC08|1NGeo z8S2sf+&e;RIF1nn_KjmgUJOQ%RvKK(~(KOtXyasn! zo4ZR;Kcc%smtn*TiHku&h5B7#fn{D{DSJ1t=aclTH%~IYr{}g*Z%+}3rQ1B5OIEqi ze)Jzj`hRN8zbJvzR28Kiq5fZc|2!AGPCWAyAMbZ)u=DjD_ti=js<+_NJ*SaE#ZA!B z9L!CS@QI9y32>*?a8>K#+W?x&M7O0i&o4&(mHy6Eh4Jw=BXK#m;reyBX2Z5 z7C`n0Wo&vHrSoj%1ttV=Ou7!z*wtsV16^-2I_RrWGd%}oJVETtrPok;;akOv+8^VS zl3ErD?o#s}-1B5=vj&-jCY`d^=g${;KKp7W63PgX>Td^mjgijXxXE~YcvDoxmC=tzg zXA8TcAIJSPa>vq|4c_`4nJo*N{$y4Q+&{=o+?-@5r;rV0WnSymDx7ajlovB#Kr%>4 zK|$5vS$?Uh*2`$p#0oU!uJ?WX!!I(H8~6HOLZf0hjWQ*_9O$}ZGfPe^)Z3S0g-m!l zo-XWvV28rhYO|)rH~p&19gjUU8nV5?5vWo!Vyw83@n_&nly-M$y52Rz?=E4Ahk1lB zeWu~N>pSICPO^ASs<+GLs!HxO!8d#YR3+vfr_@S(6<1_<55$y04HJ37XLak0HG4?rQlb{-1pH?l8Q zj_`hLJktZ;vb7^z+jCEiumiMXQm`8~&zWu2ubbWla6owZ1IW zr|g>6<%>2Q2~kjFl2g?l9$kP4%>$UC)vd`Lk{|)^`tfI$e$x+wE}H%f-I))}6*q*7 z_z7SZ2WLy36l<&J(RVoYUX{R&H`i)WNFq5GaG7snl$0LchQdAe=&bbQtRY>T#< z4b)=?qJQn?lzL+rk~OHI$v{6#Y@Tgi48$HON4$~in32>-K^}+!ur-%9fG98_w0e6oR9jwCLO7K8Gzs?t}J=>TIXTi5Y@kxL`uXHu$63$9;#C zlhs8B91Ayp0-%{Qkp0UgxFB0;RFRfTmN>glEQ3>U+}?d&@!V4JFfWfEV)-9$ z;QMuyzS5SH=wDzN|56_fd8WsS{~(i0-DmUpZ92g@L(6umOcgnS>%?t{i|&M@vpP80 zx279Jdgq3n9;)#S<1lAy^&#e}Ls zUSx1OEHM*ZD$kV#ktWoL8-*axzEs*yE6Ie>nfbz=H>|d+VgT`fwohQpzs;8UfpPjj z!CgmJH!pP~yt~U>0iA$bd~EfH=%olTz|9fTr)YYF)b8y=~>AyDPu{%ThUx5`wAof`CvL^8( zA@G!6wJ#7maVt*W`6Zykf#09b0hjnqc$#4_CN?00}{14%I{B$ z!EJpVX-O}JlgPoywy9h~T=#Y22 z2JNW9{R>xTfM}F!(y>*B>qtcIz6ZJG`koQ_15`dIuftK=L`6qlo8^LrefAuHF8D-M z6234gl_V^9udQ--tdGhcXTEP+*A2A_AstZ8l$$5(qxx*-#U@dhe$8z@MgHRq3Y_;u zVET_=(HbFdxYuxlPb}!xL6wd+j2%dzq{ZA05v5K^M$)b zuu?WQHDddUr6aVt`*P)Hr;fQYhSAuyE1vBQdOMMpFTnre{EUlK*jxcLkIo^!N$x}( z8swwj4crK`FWrtbIu7Pe&qcD$cs+po_SQ?cJE7xHd;lG7GJz@gN7AqWI1L}_mpPlZ zEalM*H*oAa?Z#to*+rEz@r9FRNZZ5GK7tNJKt@0bs6Q$DOC66=>1zMk`>!%jKCnV! zcLp|@x°Dsk2uGh<>Dr(7fxYv5J5!F8-<S%s*&B4s@9C@QwaM-}xqBhsa8?Zg5@OX>6y&PFZ#bzH&yMYHzzgMDt zJLq6Pc4`hal?|eQyPX823?8kQMV)$4LPqQN+h^EM`qC2I`&wi||431|q-}Z_^cYch zrd2yN`~uj3KZ-pdE9zl~w}$|C`ipgA+rN!k-v|Yu1`$!`xkvlAdspLAU`UIl?SI?@ zWX>47zMnS8yO_rMDz?`PY<9gF`uzub*{+Jw<2>vI1@V&!Kn44U+*j4OG9Jk7q)w_g z_^SUJq~uT5;P{uCMeZbNx?b{{W4Y`vq6hyC(@_JKm7tW9{Z^f(9)$J0J z6sgT#z8aw|TgbajPk&PS?%Y2%D|ZH{MFX}nMB8>JfL~6&)Gb#SS8(W|OBM`or?Lqf zN^Oz(I9;RoY+Ngo&tl5wwwOnXFzCa!6IXp^s8r(QYK<-62IL@lVhg~4EMo&2D7dn( zpfD~n*LV7-J=d2}=6NUQiQiAUUK4#HLvqd+^wKXw%tnFBk`Yi@v%hV~;yBZFMiI3)myXA9XwN5#f*1_Gq7G{=Y2niV_)f?Jw zK!2cN?#b=tSOZz0EcTjVRNRHtFVEq&LD$Syryw)4O#S7v{GxAAnXpF%rQ0=vodoyp z$-FH+3#3=Q&)P`a&Ye+Ktlzz~-y&9&Ej*X1{_yu)GuyU94407-EVX6khxg;SHV%~r zzPDM{EJR>u@G&6ey8vuP@tU)k%Z=YIo0@!^NdhA!wEz(_u7AZLK|vJgx) z{KjHXG5^EsJ1ZQM+i57_3adZBSzkj(xA3?SLd=H{Smo8NH&3@5l*&h(TJ)KT$!Cpe z&3uy40Bj6W%iaD1f!?T`^F?+`o9+coZ~6N{rZS-=W)QLuE4(dtRO5Ke60^b;DoBO& zEZ!JLSh@vE@$kxl)QBfWi!>y@7t!A7*;G6^atEDtI|zXS>-o;88141C)5eGnrAi!= zj{xbvaL;CR3%Em%c<=)!fGc}Awb-Q@V|!$84-syc6C^C)sBcKyqukRVd~7gLi;RiZ zp_ud9KUO~KNWtYGV1l)FS_0#+w&%?aIL$&6U)!j_3K9tINj7wUBJ zB>k^M^!#ycJ?nujt=tj-P@&VqfvnMkWG=8+L$Z|NOQ^Xwa5V2)oz2TFT3$4qh7V?& zN$(c_LB@of3iqo+`$l4GkHW>G9@KkZ+K`&a2YdzsOUWH6j|#t>15C=)*kqbz$C+yO z(6435jrC}vcX0;ww^$eS*f7?B`6cIrgx=Rzxpg!s~nFX-r2cyNs5YsE4tQ%fi&j1@uHE)Cw^q@ztc z@5fjZPHyHbdSB{D`z2Erg*KdRr~$x}8WjDD`sny3<<&3h1s_ZuI?nFU9j>2Pou z&xqL8`{t>CcXgJ+vRB<@swDjt_&8G7qQ-63}bY^#xHXwKL-#BcQH>wu) zWOH)ZNF*Y)P5v@k!gBZ*9pvkl0!M;CNsv$&6K(pemyx6+p&lG&09e+LUi}#&661`d zy9QOWIXuUCZ)xdFL;cx*5kTf`j(=O)VqMmD9G@>tUztiKxDb1yHCPbp6EkA(Hm$I; z7Y8`k2l9LBb1GR&!3$5D$ zcj6AQLMiz%KYw;RkC4aaIlV5mk|Um9oDGT{*u}@Cl3q|(0R&TW-(u4_@>!rhc1a!M z;7AyjaFiGS=F8;MuY|=}Elw;^O!?wT!b!?*Gaq^;rgJ{r z%+uUH;y+2S^UnAlnU&*3VdQ+Bz%1Mv@V+Fi#2g#KupASmW(k(`+|av_oNZtWvu^-e zi8ChKjF(n-J6f5gDhay=CsQ8q*#JH1jZO0ZVA03fG26C@Cr&7{U{;;`@m>Z@b`#Z#8pHt!WAF!SGD|9p^;?XogQG)Jf*h- z)^GITh5r#&8UInh4-wzgw?3Z1-uLzK;;uN$I`)%^L!T$gZC~?iZ)wN0)iX>?_JKJN z-)_amT{z9Fp3e@%atb!o!?xe!+nc3=afWh$sO+b!=5={-B@zP&-(2HQw-|pW%#P zZCNs$r6`}*oyJ3aK_~c7*=p4088Mw+n~IO;(Hb`hg=oJ~_NW3vVinm=pfjfvT?Wn? zXp-2MW3RVuG3VEBt!F5RVHnq8#Mmk+aZ1T(typ)_=Gt!SvKJIxk)PeSKJ@R^#-D71 zGtPSe?tI9<5zk39#&E5wm~JIK1k|0;Lw@-|6hO6B(}^fdDMa1+4dANTHL=~CmNrv4 z;uYfALi`0rvCRNxGb6(^y3MU?FgohfaLldKW_;m4Nmb(uKU`oeGVaL(i#Fr@{<~Lo zt{Wm&7qPP!8F)piV7LU$l|2pO9=fP|_j|DmDdasUwZN1yW*;! z8Jz3baTBKCNHFcge%#Rl6jY{>XP$!vZzZB%t5dgfZuTI)YwMjT0#oA3>jHqZMEpy~ zstgh|oqPIFxn7|}fb&GjX%&_ozmymr-1z+Q9KLT$q79}-{N;d6LxSBe=70yzBJ9!d zCoNyY(xTaHbeaLII}3oL^`+*wd_{H9_IZ2KZEzL{cT7}NZcS(zI#3b74jeAuNEF1| z^^9)wxgP{Mzqot>IVqAdNv8dP6lJ3Yv1`jdl@8T_NsUcbSW#Gx7JR2}@Wx&DqAk>d zse>%NIIi3$HAa&f$0&NBv*K%$4lx;-v-3e9t-%*%a-WE($}RFAl=b;E)-L-JYp1sB z3$GIf%zx*1@Wb*4P)1%`Q3NyMf}MB%e`h_>FM$RDrNMHV+Qd9^;q1N=cfc8~KSFuq z@qQ1w5kN$-fxJ^prNwH2ci%ALe|(OstGb&fd5uNKEc4sX!*+30>8s+jydJ-+?SO~= zlq~AnHJ0VKlCRb0x~Ul?FHQoCG&D7GwQ}AiZxmn4*FSr~C>gSQ~V|NNIaskV73_Iq(P;avJjj#l5ZgfgWJxQ1k5B0B`7Ti#b4pJI=|iR zmyApQDGz1%Vu&!Vh#v;1YH;Qc`HidhLDKNHhG-JF>o;rEL8QE98UB)c-Ey{nr&}xKzv1(2AXr)SfOmv&Kj^% zwL&y-jqbfO1}b(lg0p+)|8S&@usOXo*R-e^MGD4%Z87y+(s9LH2>lF`e|Ie+l<}~P zV>AD*vt50)8{&ng3wr%EUOpfyZ*`@nK4EX9?cEnnp@>lVv{InF1(SS0Ny?#PFEMNg zL`~Ee#((^H=S6GkK|a^LxnCVSlh(qnS{Z0MP3};aU5aaba(;|%SZ|2l+%k}~W|O*z zJygUi+Y~xn9Z2uWn+86Ix|B!UzPCbO`a;!BpD9ucC>%RM?a5%^PdM6V#-3yk_xyd} zz-_>a3SVzF{)EtG!W#4WHQ*M376zwVUph8D0gcivqAH@~IjesF5hHQS(em$kJuPA2 z{wl~s^!dLD*fA0sga3`d&M^#foX!IX*j*KiK+w)R{F&jsWk!<|9~rt|hV`fQd2eo6 z{l=cjzPUj_&;4~2KHItZFZ?yEKW0;VN%y7cnyhZ!Czg>Ml_a1wPWs9vdR7BkD4Qy> zTNiy>{QTGA4+fF1fSUczYd^RYIx|_bI>`L9ecL+`imo#LIXSDXfQ3yl6Mu^fN};lsT8qVv2lR4{zd_TB zcP})Ns@LoCX~3yl;?|p^9={vykM0eJa&+Q%rHe9>JoD-|5kaxUItnG^^hSm!N$KE_ zGjZ3tToTdP1hH#d3u82oUz0F95Z@v4!Q)aRk=B_;#RbbRg}xs;SNc7P`l_B#k$oaV|`d)(X11o%EuQw`h9n zgghX#y*mlhMij+|=dfuk;_}$j&coyKP>ei*kRU`b7QH1W<~p(K?Ji$eKn!WXQs8>{ z&%cLxE3|<{$_U>h5PN;#*ry#cju^#Xr|ZgCr;rGp1Px9#AIuQ=*zjylxdGf`8+VT! zhB(vAe)K2DpIHg9{Y7#9O+J6kh99dn%n@f8auFM-Nf~vvjP#l*;U&(IqU?+H+7>`8 z(GeNKRa_blM2tGMBoRj`DQ+steWw-h3r!`epo{a3&48u7fvVQD;;)h4zlIE5cF>LH z6pe?8Rh9DY^G;W%P9Zz3$ zvoh7E8S0}!Z8C}u9rueALS@>P!50Hz(}Y2I)(i)L{Qf1(qII7BV!B7TJ(gF|cCx*N zffF~kYv|a#VoYpb*zAT|2{_R5##RBSd2&*3L#c**^~c)mag=8n(#5dVE%$W|hx)T} z$z7vuRt6)tS+UaHaIpg!?+cDpE?sG!-aS@iI*N01oPoRUdb~=8;XIdGz?js6Zr5m+XEGlIP3=a2X~h*=rVz^H_rS)o;GqbI~By|m{lojFa-{7g>@FoiRRyxW>G z=nQIy?X^lP?vJT^R+_c$K|;s_-6^HxHkV)Tz88xnB6C-T3Q$k;ZUVn9@w#s=lOz_$d;ZU zy?7mRN5t@VeZ)a3;vAY=UY~*Z3PrA0b!XMaSCy0jqt59ce>C+cAY^e=enH{{ig(nh&*xt`4O)-G3yo#Y_S zH&&0@7L`MBaU!BFFhrCkIvTmI2i$CJl#QS^0Wkd4mH_lPtOLJFOI3VWD}^f>=s8_> z>o=pz*XD;l*YE(W#@$zd%l1D%K1Sdv6s#&U-nXyl`=w(w%kbT>W>inxCx3xN-v8Eb zP_+}!%NzQn8VK0Q=RPZx2VG8$W!>#N}NvRhcETjr-7Uy!?Nl<1?A+Hdffs&An-Oz)@b zW=aH8(-h=s1g2Ic3*r>@qQ(wcDYsQX0xpwdI!og#SxgqgT0ve`%_ykFUb`ZN`zS-N zE}t1G6j%qYh!^0h&;vm&p0_YFnuJ(Yji2kxGLPpnBKnWUlS)Lfg8V z*Ne^$HgP*ft4?jSv;AhI+LP`O6>~*sjeh!JWhGzj;Y;@O{>gW~NwIL}E<4=Lq0-Vt zV`$+)uJYv@rMDtD<@{e`Nm{J7l}=W<$w-dw!O(h*TWuYDs^vjE`NCz{bVzS6-4+mc z&Eb)b+XK=>aOG}l;^Ok;2ULKRUS$cNuWM4^x+b-}7(ABKfYsm$X4SnoxBecjhLg`_lNDyGFYevoW&EMQw2XtIF-50X)-{3fd@cjvJMjK9 zu#WeeX|BR_AdVw`D+ai@w0u1lQVh0;nu;~_l2S1B47>c+{H17~K3bdcaP_w|yy9CG z%%gt#x4T3eF2sXKj}hoL9<@DLxmNG&u7qg{rO=?XM%UNW2%qJq01d|wH}qEWrzvIz zJBJ|1jr!Mc#i08Q<}Lx&vk1kPb`w8zoRz8$@$EG}>17*FzPX`~z0vI@`kn=7t!g(H z*F5&<`i`?0s_}@vcC~hQ?}$+YwH;Rp^6C;*npf5SzX$!*_LUgQ@>(D*X4X zP``eiwB(fZhCVpGJGQulCw%_f{X}-vVkzR69}4e9FGRI>bZA@%F_3Pge|KkJ*o0;V7!bU#u}Od8wpd#A{dRv%I%u&?YTjAx$I~i7`nP58e1pu*f#P)l&!id|36eKN&i494gZ8l&BR!F#K zwL)Q_ZlLuO{4nRm_1a{+sk-&h!D4H3G$nI$N>fD&!tglYn(MCh$DH0{%Z_T7%^1?+ z39Jhfx>L?r%17^QO*z5;UT6OK$oWZuazWznFKsyH_Gh&-d9odmU5?rCtW9TMx5ZeGUAw4=u(pv zXpD;#=fKTD#9!FK1T)2PO#+w0QZcZL5}Box%Zq^3zS!QIdKsI$xIM<|obX`u_Vm+T z?DvkOPLZbbIW;%`TGQsFP_Iz#s*lAHxA?yIB4#lkE7QIDwM~mv^UBShQJN0Nz z3k%zbt}d4K5t-(c4X6wuo%l{#sV?7)H-;@G5tWm_xJY_X2*#v1&dqU$L{uw?r!Rg) zAl-z$=OduUXB4dr#Bkl}H?F%AoM^k5Iqgx4jLD{^ghBUn8zJb?m#I4Uo@&fM7*sad z-2)e_U*)-rGCGa9pDJR|uzgX_d>fk_en|HD8r}iPE1v`ke32*r*Zy+#z56_FTz>YS z4d=gS*{k=jffv<24sdC5?PdtQ+|g>_>NmeaxLCMkNc^88w@ zOSrTR3^-1P_LQ2*XI50`Xs)G?Gi&TwycyU@7BAVHk<3IQcHg?s@+$X>RIzE*CjOiN zF2MWsj%b7YB;4WI>dE#K?$?KI4QL69BvflR?Y2!R)IEKXKVx-v#LA#wQ%j2tDOzFV zbx;j4T@GC4b)4*9Zn)SXN^GnuEYz7fJX#bQ2!sqj^nZNKckJOSADV>JM&kdqo&M|H z8A}85VDD`_x4$er&xwH4*z&wAo0G&Z+_?{QzRGL%p6vEFHm!mm^8?HwHX+s^#gtkBG-Bobmw_3}1dP)O1Un@6%$I z$dMyCKFaFLxZpF=am2+2jU%8xRom~Yp4Z_+%f8h!b;GP@{SNm0L^5+NG~OQ|%ulLc z`wu!$-hmI10bfuc@O|i!5lR2$ErGawg-GWno}${1ynn$L>S86gC{O&dYD+1j&Y7TDM7qfi@mF8v zo|w^&m%0IBJofs?$;TW6Tu$sBZy%}kA7_TEZyb9+iWF-e?Du;-GCJHD!MJ~##=ggL z$bWb~xJzp`K1gX~%?8z61l?D$J&3U?r~D} zb*b2|LpaV@#r4E&M|DHt71E1P7DX%x2ZKuZmJWqHz!_3jA7<8xkfrq8>Xb=TgPh$uTkF%#Xil)QGAXP~-=X6vu zy^y1?)N5L-#GobaHN|Q{rz}q{x{i(2d?)flJ^BF=Q7r~_Kpt`)2g#KtFa*V#$%nv$c$P0%%7WHVRrSzJyz1Eo0=Tt)mwEt2_1ip@YrnbBei9KHd z*p{}6!qHsWs;ltWkS8|lh$w?D34+nADvVgs2=Ns{=I?6L)xy&G>jfjT9i}yYUlvY2 zbm`bK@YYi@-_b$L~h!m9l2b0|A12F@k5_0qT2 zK9g%()ue@_8eJqOO?z;Z*$L}O6ou{RPH2(x+8Ux#&y3MGX7>mCqG5{{nKK3S!q%!r zLHEZ4gVnmLyN{PGkv>y((Il_ON_KRH7Rq$tOIL=o!6T&O#C`P$FOb-JLIb~;ZA z`&2;UY^d1Od6jDCZKc+{=$_cF>HLH;l^A{j4C3dfm2LcK3%e~D$&=)F7w2*m@J8u< zL}L9|(s6n)2hHfG);n$ghqSj2i)#D+#{p45r3Iu!K|rLD?gmK-=@LYxV+d(bI;9%~ zq+yVp8DcAQ z7ZBp)ob|3UvM7I6t-+)9^difk$*S-NHp#0>nh~`N^rn@S0->V>i(x&Tz6^Sv2cHRW z7RY88KFP`io+2)iYGe^~HnvdkU4dq?2)-fY^eDEAE+=;_vVnGIl5+zm8gqg?2| z)H^>-&IlkAW&w@UE=x#QdS9b>PiqinAjVV?&~E`0hXs|{hcp|M;sLjpOI&-!^P_Ui zh-IO3Oe}gjLvV!@EmGncEmZD1ENs=t)RF#?H9IN|??Fj@Dnn<{MWx8+ckUqWkg{59 zmOnS3d$0`LXnkc`!=FbrC|P;aUOyY#o*B{oec>%k7GApy_Piw@zn2x40AlQTY#(KD zlYQUT2qIXcmf8|K?{PqdEhiCnYbhytjf@`GoTjME3Sa@SNOYM zYOO!u|CVBGLg_ocI1@W}QmbL=pmALx%}=y|44aYWV6Ac1^{6#;?ROScJxaXM$$kzV*{7bl~Aph zZ2EWlOCoyAHC6~_`cCg;)BdqSv-8D6tTZcNEQ$N-n z7mmqcj+=eNf}18brM(qC+bX!0ni=8@CEZKZ%@rFj4Qp8Lf+$`X@?t$5clpew&l{(U zTh5jmkYh~_ym%m2{sZnC0`grI*CHfzIhMGa4gUIJs{@Bye$QQz+`Yt=`C^ zL&YfmJVGx|!^@`4DyyaZ6Uq+mtf-2OHEN~0non>QA47`%H`z-IBU|W4Z717Cx zcGoU_BfmUf#mUS2K;(k&8yl;kI=c-k^S2YIjlrNC4687Y;eo3&H`e%A!vt3C&Q3^` zG4L^$&h(RO`^y%Fv=+J?K=x6620e&e9UTZpK?TxWdcmx9?Q=;nr*DVg>yU5YagpvV zLkFdr0?*Rd_c!&@Mb#agJx+i_DwJ$PvfBM0m6XD~+Fe`X^<#AvXa$OwPdgoGG5W@Tou?SNFc{=2Z>6};7*@eX$zT8%Uawd*OCBep zc&|jUI4NuP%qT;`3aH&pwCIJqR3T9eNTSY;&3Kr#xh!UcggG>uv*5P26-k5ycg+KI zFspGAO9e$tKce6e_L2aAv@ZCM+Lr73?=8avymHuI(1K!*9FE49+q;vg+m@}y?)CL= zJOXJvzCzm$X^TWqMsc23P*>EPN1-#2q*-iSB&ODN=E*d&#Z1$NDEJAC9eN$wpC~MO z!KJIUza6O~BPYm=FVrtW)TfpeH9hW3E0pRNmE|U|k7PO~L;-13-U40+)r))dMU$@Q zuqyT?`0=S|r9*)~nyaOyx{pqZo>2LrT+CCLQ)yW+8p0nMLW_aIIg%P#I8F**jfxB0 zmwTRYxG}M2bOQ8x_yw9Rr8aF~LSs+gpXn{v;#eGHLdi33?xPa=a)@k&MuaM{-XT9W z&eo5(Myx1yEgfRE-GT=qnRGsX{KChFi)=Z0hui=D!PRTKF#Y#yAGS0gPhtpKQ$T#`l~7-yfabBbqs7eunWk zr1-aor+Lk<3)?_*OtIz*+8M1D^7m1{Ie3ANLkN9K^E5=8!MB%W z<_7J=FyTCFQ?Fcr7lDp2=Ej~Xpk3>|kNrdK&l;#9R^G~T#lm^CC`ak$gL@zTJ@8UA z;8wf&_hN?WtA&? z9b$GW9kmhn;jo6mZDaO6k!?*p)gJ--mrLsxAc=;)B}xAD6#WmA{BirlNrCZn`8)q0 zu70|N;=V%6)|&5{-rXNSh&?K!_EfChlZM+^TYs=g-Hu(1=w4`w)`(Gx3_MNyFtW+I zdki;}ZpMv%aO)qBXQ8?xyieyF@o&!jGbkD+7l26g`hH>fLunE{Ku0B}91pf8CwiDC zauQ^SN3$LWrrNQQ)B?ZxV2I@VddRx|($rMFFRg(kC@M1{`XyH}B1AgEsj9jY9t08M zv`vWq7sBCpT^x9IjJwjc|KaqDvjIcGl*azvItuhas+Xo|T#)zy@yaI6higG9^4h9C zDz7Oh6TbG@P?{fIOU+CU|iS;VBRf~?e2~6XZ{AJMKJ>WuWzNH;<52B9N}3n z0OM)xt;`DjdD*{zaUBOJ!4iA}s6PLTz$8w9s3)>A64;s|z&u!GBU?ID6kVq}ArTc; zL9*}$pY-98kyi%@e@K46kz=%d3oVKw!oRLIN9LZ}2YIOOz~4*x*K#~p1w8!`{0G#3 z5Bi(6#P8DpgPjz7#{a{iaaXv2Mg1dOKTCR(%*@kMti=er`~^K%y8=oa-6^P&i?t!U zhrt5UddKG380~CE-P`9zLT@Dl0I{6t;b=-%9_rqT zyat)I_4PJdIo*`Bsw30r!qzyYRnZF-edBzT_XTt8e2txY%)A*FuONezR3Ure5g-=V zcCh{s(8CA3>z)Wkys+rHZ2TvEWgFyj;?~r<pTQ^ZEPOx+CVdZ$U{pj zwCQGDs`!G6***&+5EzutYJajxIbD;7%|;+*5GesVxJ>;9F*ecnj`91A%3cwr}wm!o5Tcb6}Om#oIu{cn!0-G2ib`%BZkT@(rLomW| zA4f$*)X783XhfM>TCUU1ZcP@_q7pvdEc^YOUt6{)29PF2RJ>_{|2KBhBnPBkMG?6C z*?}{RKz)+_U?PG7EsWU5@Xf8&#P@P4PgSQ6(rim~rXG3R8)HF2N)jg~Qm8!2sh@f^ zcOYN0f0ZCP)YC-uXvP*q^Az(CZAl4zYN%!!YUTaIw|{Y$Ul9N%LW%-!z5Wl$mc(?$ z+4M33e~5XO1W?{={aO5D3XYPBO3{jocqH6S54@rwQlTNK#bWn?S|8C3-c0=j2J<3? zTTlg|_WedsT05%E9!eZYX|?X5)kD;XbaVOxwNRit(Em(~108^B+S0xIV}tyWZ|K-@ z0l=^oCZGP`Vx$59Wnt%-AJ1;Z_=s04I5b~m@EQ(tz};Hv9u=q(^QIEZKA zURxER_Nt50&B{u0&0d;xvo(Y`eBqJ8|Coqp*RQtxm;1ASo4SARzT7K_S@4PFABy}q zfZ<=zE3d=(H&r)Yo`?WJgatg=n*cRZL8q=Qe(~WYmK`yHO zgSOZGZ!D+yyns7*FXHPJ%dKB8Qe*%oCt#!b*O52!)`|mmI@@#}%jgB%( z+k?Z8HyqZkh-pYUQ_q0+MxgOAC4vvW&djjt4h^zcP3V7u!;M&q;&O+rB=d-_Ag}#1 zTd#DWCST&yWGaYPYz!4mEN8?`9&YZrwaxMBk%ry>l`($fIQERWd3mES+h)Owd=SmW z4Fwv$?HVWbxCxbmz6~w5CjooEJ@;5$`fV3zdVN6XmQw~96Jbrzo=j0+-Ph&fe$j2} zPWvX{B4bcu~dj}ce9Ix^u*=;##k-f8d#b~v0pje&QSCM zC8D>ZK8c>8m|_8o;1ysIP*(_2zU?>dp5T>@){pPwpSs>~!J>G=#Aq(f{noKbIdVuzMoVTs5yl8)N{G44R`y z2=v~u@0y|ey@%YedsKXdasfMRUx~PB>8AZPLYp<;9nzU4zh*XUz?+!*A>np0qwhvH z&1<=U1WbdqOJ((~PRI*QGqZWe!)6k<&4G|Kd8qsA4|o@9^TcN^IDn#D=#=`Wi~taS zzQ~++s((oP`)g?i;5#l!iodt*JG8`DG>j4DCK>o9j4deAd5LhE;pO5@;%VEMP5sg5 zEW0*IA7z?F%%bh1(ywfjZtKBvp@~%UX(Y@G!pIK!LFyrvE!Hp~P_suh0-atolQ`oS6MrQt(V<#t!rd_G7T%0q#Jpq&xj z9dMzY?d!F-zw?iIFd@B?M;H{(|0Tn&L|3pFAjfuS=!E@$DYpARfFHN}gnuW%c!6=K zTLAHShIdbd9#QKqwdBuYXTX4OjpU#{aq(`2_-T;h9G$ln@2-6z<`U*2+E8h%f$(2vrbpQnmzV@|oqBBvn|;Z6Jd2DWZvog@9S!(+p;=|In&)OZQ{ zwv)Jolnn`)Q;L?Z!z8b?6l85dqfcgUej*Vuv4y3j0yQ7cV)%=R_KqD<0hg4c zuiihNY7kf0g>DezIfe_pdHGU_8j|H6(NRBGlxDk@FL%TveX1p6h+r z<_U=z0Zr7BgQruAErAXJ<^qqxYgZa-LH9sCWSx@0_#+XKfKjlK>^cJc@%Z?y##vjb zAQiC_ygc4W#3@u(F1;)aMc38eot3UXs`j99N%E>y?*IPt(|KUB2XyGG6Sw6PE|KW! z4IihZ9X+()8tlmpdyd$uA0h7Zy$H|!Dnq8&1Y23!Bev{RPJ#8plGYPWc;*$ZKDF@6;_mQ}$3=G{u>!qH8t4=zIPolc~0;sJ5JEGr@rSqQ$-MdctbY z=Hd8zmhyhyLRLc$O%P7B74R2x)`gaixB_Io#|dvG$Fq_Z6T@;1pBO#LvWyz(v56cp zfP|NkvuF3S@1d4znRE=D8Nl3$H>a9SibA@*K-C?Is9K+0d7ZlKbx%nmnHzOL0+T zOZfp3UN&gfYy67&xQXOT$=*~j(M;rcA*=xjL351>fO?j-U0rmfM&ba)AnY11&WN2p zgHzkv886hO{%)SRkNxRk+mJc)-fE_;zN?xvbm}^krB*rkh_z`E|884v@R>9kvzMLolxRKo6YOor!+64jHjshcg;f1v_&{|DL|$t8b=L?{ zoy85qGpe#~<(wP3JZ-k*GDG(?U^?&kHnG{r+zbb&#-+~iGxNY(Mng%`FZ+Hni?+`)4;BOjHzx-rNJBQnRb5XKMXD z`z)4jFf zYh5I91dG!TGJsY{K#qYX!rt$YMqqOihmSAS#kw?)mVb8bMK;zyn+S-v0!=?C9a@wA zS%X0Q=f@dSKq0tp4QGl>C}jQ^_vWAOqbC2|99n!BCzyB(FDEu|JI*c#gIV*yF`>yd&(!2-St|sK#vIb$-`}?# zK9(-yudhEXi4~b~u;!o2r~=g=Ex*gRZ5kAM^5@w!n<9H7so8>jm{7I0h_B)%eV7XeDu76Ba9Md6 zX79n;Vg4ys&3WV|=`>r;@iD*RndcbiR?(bfRcn{VbFzic4_%lZ;%tg zpPl}*Ll}_rd<6v=Xnw-{FYP6ciN1yE!<`*V=U$jp)2=2-} zZe3H*2DtCT&&+5ElAfSDz&A|>H)qW@JduMof_<`co^@bH^5>;&`6o-BRtkXukU4*( z5?0j6TZiUqH3=g;o4S&lD$rN<1^;SDBOL&=^-=p0{`B7~{?`mms{Y5JyYA?Z@T<_d1w)N;-R}TK>8raIGkG%fA0;ZIqLfrWY#-7b9pBjd+3J0XwN znZYMUtq|U>u9wTm&_&I{G`snOYkfKQ=KS?R@MJt{5k)hXI=Ka2eJT>tg@IA!=L+HL zgTXidO@j0X-+Z)0YSm-2A$a~!b*$&aSpUvFy7g1b3FmVEiF?o3?uED&N(+z~Zar8e zT{3VgUz^BD4r5DrhHObuOhSD1)LM5OS;`LSHxpGhHe`8WhiIKA^!P~9JLb2Py-qXg z%(YCR!$uqaeO)@MTLuB{9ieLUn2Zav1@n9l4H;;crvQ7Z+0J@%aLpJ$;HHAt4X#!WENK7UX{D z3)!URSqLOZrM~)79Bg#LsI08C3%96H5K|o<5}bUCZ;Joq`}hU#qv$# zh39X!@Z%ul-@VX3*`@8f>^|Y>rEdX*@x&vx2N`9db8&b1*+e5fcAu+Lb@22e6g<5M z$+quYe)STA9ee~2@Y`0mAtb*c9(~(#@cF>5jzTWpb;f0QZ|`uJUdZoya=yw5Mi@Qj zDr2?GH{f{c3lD`&8bGM>llz}`IS!*--n8?!1)f#dYARc!^j`7uSc~8d9E?<*h2$3J zXBwH2jUD#cMv>>nwD&>g-1U36AUkUU7OPy_u1eq6^Yt*+xnrz^VPhM&iyI;94Ep$$QVhd1I_@Rug8A$rQimQLFXI zbTE8$=E}_$(&B?$QK!_gaelEm+GcjIKj$8xktvF|jz2FEnb_VlfMx?$8o2k@y4C75 zPk}=^=nlo1Q_8RP${@r_)?fDVd^WIWU2kV!a0XE_5A%!yOI}AW+Uqu-kz%e7vMwl3 ziQ+?Ci|F_^?Io84a72+6q$Jj(B+E9{aiooC)unGl!|GH1+pI`Hzs1 zc2HdCXb)Z)K0m|fvC%}d#A)BqRKhWZG@>H+upR=S zJimyyg=?AO@ltJVk)x4bZ&j}*H!P)N&`ItIcI!j*6JKMG*HMl>n=5OaZEtdV!nyT~ ztKU7=N>pnOKb{=6_@cRaPEnEvPR6?@WJNgJzO$Y5m+ey?L+t<}Q|gn){O9Z5ce&Ep zbyn{?|5JEM-k%{FJ*B>eVF2_|%DDgLS21+IBsu^beb5(x#>*IS1rO@AX7`uEG+#{~3iAR2zqe;&1MWdn+K z99YqXFNjguACwGS`!z?VSBeGjY`b8={Ise~tDZW}Lvtak(xZ_d%>9P9TArl0MU&GG&&w?W+MnKar?M7?h z7vx#L4YF1W;DrDisv1PJBOT~#Q0!Wfts3nzeDUt^gYk-67)?x zuZhUW@(rxoCV2$}bZxpt9m+{wlzJqmrD=j;#KgqhqN3m$Ia%4bRPaf4GL^BRp|b0= z7vH1{(nj;yvl-FhGzfJhPLZ8;t~P#pcC?zRoDum$F~Cs#OlL!>HPJ6-VJUg29PQN% zG|{!EAa{UU)B_$dC(}=79>swrhK;-3kH9o}N#<@^6&@a!?~w()cCV;m5R_ zlXZ#4LI-tt#8{|wA=hsWM^lP*E}M><_%Ef>?E6P}hR}Ufps8axi89bfe=Nb@G$F)<64K#KcZ@S#odN5FbGr{h zzFMeR{fhj#Hfug6Y0C`_Bacm<(^f{&ENSSRY@O4pIz7}2iJX$vHgt|B8oTiXyp;r; z8FgRHO%Ni|B!BNc6W~`k!DrtQv3P)*d(9Y8e>w9$ zChF4d|M#8PFx2kMR1Ae7&y31{%(Y)A3m$N>1R96KIvz91vQ)~H%(}0ow9hgoB8Qms z`q4vB7sB?U)uuuygffgJAMA5wLc3_#g&QS}L3VUK`Fm*P?)qN_j(Qov=ZIT~ ziY#^*f^ccb%~z*^?Zt}F4usb!P*k=_VEtsG1&d*dItfiX%_icEvRMa}Fyp(P%BJ^6 z#x$$Wr~_bwbHZ7J&bZdm$}8Jp0VHaB;$&$Np%+LFXaF|pj4<3!?)MC=sH}`&BlNnX zjS8aiPTFd`^j=KT*VTPm=enIIv<0PGaqDQqfxrU}p9l&0XoPr_kIx-bDmq#qm#X73 z$&#sd>YCEu@mCdm+qI*Knt6Q{_@rm(fjm%8ZiM5?89NlU7cs zZ!DJ>3rq05vl>_#_RGL9_;J0-mD@9_z)Bk;R!=iMA|x;3)dDUL+pT=W$lUuJV!g5y zYH~L4{jTB43Me2hJ-N&HL2{e(HVh_siu#Z$?j4EyfUKkSVY=O#Q*T;Kn!I_g+YiKG zzaZ?!E{sr*jpty~lX|(Hi6MVtZP)a&d~HmcBQbB(mVz4Oy%;&8Qv>yli6Qcgoz=OR z>I^esqn^Ar%*QboT3W@C+UWggGleRw*^myIa{`cDlqy;i?3k zGyGD{@bLKLlXt=LOYBBwJ)yHV_MIm@O+?@4<_r{6_s%IywP`B|ElX&Ru`ye|8)|EUj)tn6ZOiig1i^Su0L7SX8V@P_5YVCy~}C#b2iLb$dM z@ww5H6J17xxG0~beqwDqUP_Xa_hPkDxx21||D~wK+(9y{41=we?GA*Y=sbVK+sY7^{zl zunQ(bQ|U5d<}lex_k;u*Z0u9*a_}8dfVV?gE8ux~U)zhM*g#4?Ii|6j_HOx3YT%Q( z$<;y&?;L&66&@Ll^ID_1D!|bFVs|$xoWD$jPqS<%m`j}`S^q~1I-j~fC)+O{!#`8p z8r$CHPRG&SF=H6o3FCBB9D<3L6muf)q}IVb^hjX)=&Kh9CR1$G_8D8nW~chYK2K;B zTn31%x+Ot@;UU-k_2huPu<6~XR^&~I5X7bMw(??Hpsy96AYD|+a&sL|N?2nzT zz+o{fA<6ixksEwdlDwrsD=lav$+ z_nkH}i~bCe;jyt5!J_PJNgVs_`aKl{+=N%!UmrOj377@+#wt*uF&qf=!?a@coy&e2 zpQAeSN2tVzp1oT~=2A0j%SRMj-If{K3DfvnLgzGLXBE)`uN{m>@wIzBuGcmiLlbcQ zO3%t}4DoW`@P?kAoPFXrwFqi&a>{noytwrGcEQ$EZH>KLg1SZSs?>E;x;}|LQf43} zeO1nvawphR)dUFg*r&-T_^zKNg^kP|%)M3n(RNc#s0=`m@}wmu-m|G=?X~Uf(qBJk zuzbTuP8%Nz9Oj9WqJ0(CW(wo)dx35X7DL}^>u!b)T1kJ%NKp!lM?;Je>qjMo%~xcP z-5g-0*o&Borz#E(G%LRv+&{g2S(1gcJHm(*64og~8g>*mpQdyBIZXWRO?%=u$-!KfzzXNk z0w^M3b%j*CDmq)3;-_QMnb4fAJDAW=BJV%iswd!z&2-#|?of84aF z_)yA(S>TL#hT_P4+TWE*-b^ z#cm6Wth-zO5dV32NxchU2NHpovAgQ2Z&(eibc+M~BukSsBdsaWsexNTRW-l9Ubv{J zDBF2`bg(O)`Kf=!HwII~O8u>Y0fKZfAEOW(83TP|V^yF;YVLeTl!mb}4K6-zB>GsAVPF-Qd;E0$&%0{BCIbTdG^ zRHF|PzU$W&l3XNwDH%TGy|~}RgN~y?f`Q`j+vn=ZeVc>075I7kW=F)-XRJjtaRaI| zG~&QXC_mmcX?Cd@*)p<6FUA5W8(#RXm|>$<4$v7|C!vFswBlkxa%-~em{9MJ{oFWo zC-_(fBFy{0kaqxczw!yD($(fIN!txqidQK#LBMLhzbOkE047`u6N)eD5R)N<`ucA0 zWv#P5Q-FRj<(ikS1Kfse8EN+VWUy{;v$ktdv$|IJ<+A?#9Zn#-N>|sZmj^L$xQSd% zex0FaIvyE0Zg=g;Y0$b_Yr|Yoo!j24S|I!yPjFe8c~L@ixHZ*~D(T$BGglQxymj(Q z(5a;TYI+-!Ia6y4Yes{J!JG;vQBZcuyJfJ$cCT?*%*_&-t?nD`%pazJyV#|$qc-4f z<;^Nau=zE5UdRt1#ulORu>qLkxG~h(yq?QeN&P{13YxZ&=OJD=)bvAHTVI#F^N5*+ z+1p{2O~Y&84;5VMrlVP)ca23A<<5u9^|7%;C+mY|LlVz?GnUKJ`KHj~Q;p^xQx-2u z%F#rOQ-i-RSd|l>Fjt$FJ00K+HVqUoSIwQXD5!=h2laiKMGR7~|c2FnTJu|H@cS1E0rb zN|aLDHy!lfE&XH8&OZD+a~=BR$UNeV99SqF=cb6^YHR*}a-+N2o4b$k`Ac+Xy
-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 literal 0 HcmV?d00001 diff --git a/docs/apm/images/service-maps.png b/docs/apm/images/service-maps.png new file mode 100644 index 0000000000000000000000000000000000000000..454ae9bb720fbd69560ecb3b3cfa90ddad1a06cc GIT binary patch literal 494889 zcmeFZWmH^S(f~>b2?PR!5FmJhgy6y5gIj{T1{!PJ2@ss%?h@R+aS!fp-82OE#@${s z_s%z&neWY8bJu$RzFzBaigQk#UAuPKuBz_upX9{RQ3+5H5D?HMB|a)3AfSQ~5T3wL zp2Dx}>syMzFZ?nU5&0x3BJ$>wt(CE%tIy?hq85QqAen0Ajc<{rI3T!0Xjd=E_-lucnA=q+?(+zu1J?h2nqxjr@cjDVg!42d1CguS~z@+2S zDoDV`$H#b)IO!RGu8lx2QM=b|aC?1xPm{#k5`%^i6Jkvx-#;W)hoj!1Rq^pD!ZwNl zhc*Rv_#v@x!OLtxU*v91ckk8^n{CdlsUCNOOf{6`N8hMyIHT+lBrpO~(*|V4mm|oq z9A6yzlKCEEoh_kq^7=+L>A5#?tb4KASX{?hEO_6wko%1-S~Fhzv#$F~~DE}rKsc>dJtG2A=`QGQJ}_cpk_A_i26 zv__P&%;DHCa_5uTc)mtW_zGDV5#jR~M_rD$ZA!+`g($2`MVBW;4@SzY#R9r%_7M3s z@de~xU<>rs|E!yfrW*>uNIuf1-h1g1Q|Zz2e%6!5Dx&h-VoUc5r!v;f$UEVM(SAz7 z)g{@wl8mW$B|C}08|!{5l`Y1&OIo|{Rb;VuH^q86+DU{Z^Ryxu8)V?*NMvpChj;_sN&57!7$Z?8o-lJ`*V}yM*6gfKmvgeU7M5F> zy-nqOX=S={{xVZLwX&r2QQNhza0Vxr5nA)Jwy{?Tf#{0tMJ@>W=Z~!~U#T+mrIu&( z+$q>f*Ful?SjAVa5&U>cP&@;Blxq`p@)_SZ*B?Tg=qLDM?Gy>9 zgl)J7&l4W8EWyV~L(c2qvL?|&DGL}_qPci6kCN_F*6y@qc|pnRjrbnt6}nMKr3lj} zIwd5UXR-cKKU97MeKyLcQ6esUG8NVkx-EvD!JkoKf|?XoBjT1JGFoB6z>VCD*o>j= z#sAInqpskh*!houvBeKxLioFJSH9~TzWlJ2AeulXgP%(<@vT0vK6tC6smGv#wU~06 zn9y6c(^xOwU`F4`V5g#FR?dRa5h%znW_V4sb&RZX?WRk>B^e)kj9z3 z37a1!-4|~O?ZD{5=Yr)z^TOliy-=#2+yTYM7tX$vzUaR0zPLZpg-P{e@`XSYuGofw z_?^m~wg$w9WQRr7V7~X|ARWL?&P;WY9Q~o~4M*%|z}4AOUT#HnBF@v%DM>SgU3@_Jv8W zz_71ou&TKFtA%LIQFVVsVP%71Xtl8#Kw}@&V)__T2S%}=0b0)ftg);ShNRY{PB2aI zTJ#L-hjKN{q`#d)>>%09O8BeX4q%SEMb-}Yq@KMoLJ6Z zofE^(Un_}G7!t2kB6oKz8s_v+hs&o~rZJBgrg=Kgxfr<;pAaONazzW+Ee`5fVOxcr zlk8iPHpmB!g!4mNx?6}AX%+z2cb{Zs{sAD#J`6lNhh0fr;G4#7Nu_p@hcbFXZ}foWB)5CKVVMev-%ZkrnP(fZU08NeUEdiRN%C~{0wWH4uTUq%T*UZL>vCeH&uJjijg?!%ITpaa((=7$6px*G0?GU)j8|u&8lcoz=jV8=aN|Ho<%E3zun?BtqKWx zE;X~Ja{fzcuL7GJ>Gw)%g@x?i?mBCBAj8kJt zZ9W9sA6rCg-B;Uba=Zpxbu}#)QDRUUQR+_H%xK@X9|jzezS^0XcCxUBl$(<~W|v~1Z_<=7c-Bx<(Q4nr~O+_x~UhpQW_ z_8lF&9HFi8U(2rf_wU+#ijm7m*ZGOuWA0xc*Ij(SimuGNk}vY8zN>D5lw8}(3yz!u z#zsg^ZQXS5-rep=>n_Hlb zY-}F?!1!#Kg;j*}jl8$A7g=x!^IJv5`)iYQ9@$Q^w-c1>S;B|Y2nbqe z2)dN0U7K=#%RBtpv&aabb(z6aLxaGthJ#ZGoZ%Bbd-NXR@!zf^A|M2q zA|U*6EA4mBkAjAKA2|t{FApZSnRPc|-e}|vI;P()O6h$N@;b%od zTO%V&I}s8-p<9+Uf-GC(vJL(m;C)bAC2q`ZB4E1O|2~7JiJ%mz{`A^h8| ze+>Btsi-y%iH+%>#{BKppQyZy4|D&G7k@DN zZ&%@*=11ja{GV0hN7XuN#DXs*k?BWyCHNUGW)C04bNHY4f1Kg)V?SN~A`>kH1VIGJ zk3ve$k9Jd$n^cZTds;;^$ug8)-AYD+qJ>TOg~le|;G^Tb921M2T0qJ1Qc5BKfmqpm zgZyKr;*Rd!N9;W1H+au^N8Dk}BS05VH-{0fRtJxb+hP{}))B_3#UA+^S|p@52#-(% z5fEQ|L-_B&UvDE&GfD!G3IA)%KL@l%c>`Jt{fna`JR(Iz0lNQ)K>BOcBRul0X+r+X za~DC#D8YOc^;hw~jmDk-m+bxrpT5HRcIqYk^1oZIf8f6WACdgGi~V=(ZR+;kzRnW1m8aU?-k__d=#Jy=3h~> z2kf>01Yu3m_Y^{ZmHG_&{lBUvC>JjTO?DppQT!z%0jD0WwmFJNTSMxsTb{j($ZB_Q`J-BYf=_5O~w4+mUWS95;BR(W4$cyE(Q#E+Co zWj$qNx>kRUCV@}hz=wyJu~&aUGba8YX8RCYym;~m2b{}k2yj<{vajcMv2U&$6?B*NYzM zwkQ9>yniu`DdKP!okq-<8)Sh=%>PckwBOm$K2YbMCHfGBLe<3WVpc$*XaleE9zm|= z@K+Rq*ZXH$rYS&y9R)c!bM<4`hGm$1YXJT{ZhrqCfesVZw^8PMEdE!-za)(@xBK;O>cWRYydx<3zz7GY;wCp!$(*k&h;BDy_Ws82`kSe~-^T z$|Ga|Pl^>PDTE<0+0u~Tc@c>2wTcQ%Zo12{n7tFX;1;2Mae;~5>jYh6&h3B#*x)f6 z;B-J_<9E9L7ndw}0%xGu2o0q)8Aw*L0fhdWsCdo3kO&(+TlBn-jgt3d=m|>?lm(bP zLA=*TG@a0T6RcZ8Q=pK;ZBG3L#AgmqX*~T6_kROlio>U~?3|-y>RUrC8t3@-H+o+1 zAogK_(^!QeneuYqwE-s25btdeX%~v$7GQzzdKRC+1@k{og%kZj6rT2e-bKs+zKVE{ z_!|jcEHZBjgf+7&Vm!I#u(#HCFVqgj99B${!8Zat;m^b&RmTn)s=u@O z-xo#j%@};3cLeG|N`fZIWNN0beqTi<$_V?6y;j?!)mDY#$HI_=mN%?t>F>&KPPe1D z9caiwd_1u=D8Ty(D|rl(-x2?9P_N_f2*Qx6l_|KeI5uINApZVzBnpMNiQDq3B=v&6 zM)rE24+7FlA-%bssa5aEZIj?pcC6X=sJ}7be+47d;M*x|X*#2Ra*!;3Dd=|uFSVC~ zCWO*SpeJ6dSnzrBdVHSZw^{bJ-@E`3@wrYa-nF>xNOT3^@S0YDHz&^7E|&sGqvo~z zpW{=QPZzCi)2-i6sZ+R}?M5*!(s$o+Iz&Mxg9te+V>lMKNy|dJLkaq|ouK%PxAs)L zi)*5DwN~kX+O_@#^7BRAk?8KH|9Q2)Kd9j0phD(TxMuv2O8%XDf%INqo&n`wi$lUV z!QE##8P)g9UPiYeS$j`7!MU4mdWXxD^Dov+_3<^TA4blB;3sOb3`Am#?Su=Y=T0*R7Fs^h~H)eN{0>}g_k#i}_c`J`ae<+Dfq3F#0 z&@qwcJe1jOI>dR4;-8Jr@02|VQv~M&(|c%hq~J`at_1yVo4sb?tS01%10i{>!r7m! z<^6fmGglFSFW}*A)pvQ^8nIK>ILyJw^&MWGbvVy+tu7pIbdv8&V9Mg*YCp9W)-2&P zyi)2*=CJYxW-EDFmtn)%LnhbwuSEQ&cn7-V-$u`Nox9-LM_l%}`FDXAq=3^(KK2$9 zF)to2i?7z*FAlKkDRuA4-L^)TBuyc?4zoAe#@V1zmFrj*00us<$&b|mC+SIO2n7f@ zo?UUWJ4U}E(R>-S2e9 z!0AX>&SpZP2!=ynmZa;BVyG2!WFb@?xJnh<-j{Zi%7se$0~C}U@+O*1YE1PPQNh?2 zu!E(JN}H8;T=tuvyp5{cM&J5mE93-yjt!*%O+B41xfNq*J{ivk2N`8xk&8)|EihjG z|3Ip3)jDS1%_SNcZVIbS(<^EPPJ_fw53;L&2iQy>^Wigh9X(@-AII znZd5*g3Ll22Tj*Wd$|0Po&0SEaD)V!BN;7Lb788U#%UuAYpMe6E>!h6dBSre6%i=^ ztE&IG;1aBGxA0vojtu7oI2T2Q;CD|aDD&(MD3n@`z(=qWzJZg)ZRw3Yhe2t(tQhg@ zBl>_~(0BX&X|{IT@6<2QGJu7vW(b?$d<;PIty$`g!1#|85+2?m++ZS~DbJj*CK+jtPb z;Sq;OIG4M2bT)=lv!}@ES8^J$U%mvJ%~g=LFgneD{;5qbI-|)usjxnriswj*0_@0q z`}lXW`>%2f_cCy0_M`1Wg)1`?i1qnzQ}arAP-d1GRwS=44-#$RyF{3;mD6AW2K6Zl zLN$;v2n^vMD9dlLe;@x}34ieryL`@)8uLa0D!yV275OdLee(|Pd%KayLk0hY3~$7)TCS3w zGY?n8HW!+USl!FN-yDw!DE!dFf-8Fjk7kQ{wJ@_$!+dnyWM~X7*sN9Kj|JY?GKhW` znga;8Ok+J40|`UU_8^jtHNbgg!2* zoL7M|+=>Kl#RU6ba9Xd{6@wde*UKQ}Jm;iw+O4E<&{kqc$GE*9`zSs|?)vq9dxdwN zD%4+BVr{o5O%-y<|H;$-E;0|kVI-^;@xkvq{J{I2Gl3uB!4n1ds?e{K2iJhuB%i|h z7OtDr*XR4^pu5xYF5A;7^%PKAvrbebxwy-bu4_R&tHr0qhj~xD1!*^&m=`Smh|CLi zIbM&&pU86^pC|MXh6Iq9VTE_as_IZnhZX^oSgEP5u2v`d##`LQozAmO#>i}M_E##6 z_rQAG!jLyXNUBl-JW%S1{F8fLBLTGopKNC8W8H#fNdR0?B=8Ywa*5dugTK~Th&K_> z$M9u+k%$+=AmL}wbiCc_D^usq<5jqP_Zf@f(QniK4fKk60~bch{C6#~a5Df9L;v0Q zr&vB{+q<+4a7g7PpzQ4Jl19uo!Q}^2z*~i6PN&oKk$~N7ncC?b>eT19ABK@zqSGv9 zHdD`7S3>KDiW4KxpSCF}z1_X_0t|yT&S1T2yiVYEcbzNu2<7Rkf>D8pc}>1OCt_8b zE?fLX&10?SS)jtU=9^e;2HnA$+#YsF@9@Vs&n5?*Hqq&GEjo zgh90v%5f!`3a<7xy}!FIi(ybyaooM2PROM_-tc@oqwADPMNdtbCt^}`+wWxl=s~;k zf)_2-sJ6znmnEwRmwao)!$@K=h|?;&Qj87_x}Nt`q=D3c#oD!UX4Azhro#=J(3t>`>qCEJ`IE*70>ZC>O(IV*u{l}Fd^LS8^0=KE-A z#_tRGT2GG4+?#YTNcb2;E$gJN__XLgpBj29f&O=&XWfD&A(>GUWbEL`MyS|w*Oz#@ zwdH0Nn_Svw63sV2&vPH6I>cAO`|h4vahO>2XP_O_Xn5*W4F!lv!u!6%KRhm)>OK}+ zUDy}Ov0z=g99Xz`eYO|BHlW%MuHG@~s3oKX3==8j>ph~@%Kow1z;82h7DmKHCgL9w zgH0vReeJP37C`BKwFw}Al{L2=Ar8JnAubxNVq< zdMol&{z}v8Jf360c_4Z^qa%8}M%G+jLxEi`estPOAhPo(Tn3E#W8yNqq&l(phEtei zk5>DlUm;=b*t?!_U2bL_rZMk9YNH*25Q+Q=`mh=jnWI9Rfg9LH>uM711pbnR;HOlm z49ntF-Q4v1IK>7wn$40IwNraOQ_Mz}7+aQFKqvgAl5W^ySg+i%i1S2sd`_KP?!xA^ z>Ehct3(KUtx{V)Nsar4YR!*4f-|iUMeomUSY36mpjgE&!V1}BT-tDkRUTa)Z+;-um z@ucSEF;V>>gFG!`_>f-E29SoDOvSQOGYxWn%^wI5V?UlFxwhYWg#&@z9_L#yO>k}k zj-!GZVw$*^lY)l^Rx9nt(0rq9Q#K4!9Uva@t@m8|81z$~XNWfz?%J2b{F=J>S5JPk zZhr#--hxsnK;`%50GFUsCbr4BbYY~riiMs;6GmKN$R5N=!pDCo6?VP{k%rMZ^dxe| zAe|T7-dt{I+g`5WQ|h)PW7F-c>J7w|99>}VtsN{~V4hch4JTogxU@C8DZI)(CH?TR zJB-f=%;M1hv3@y7rp4&?C6(Njl8$F{D^rUkm7THtA+0dM-*;GfiQo9E+z)T9zT7qN z>7Q$Dgr$rZSb9h%uOrGQ3Ihe~Y8rVz3BqV&>mKo@`42CJ3Sg4PGmpqQh3U0rQD(}p+E-3<;-`@% z^{$iIts-&hNsePgOm^Da|I7sZN+B=bFUvYQfCLjGYwmq*zt?_Cd2AdB!pm_?8}X=K zivPv5HsDg<1X*IJe{)K${X$riDXgUe4}5n!B3a+up%mbrZY-K@uw?FC)=^)1r27I~ z=(DF8J`Y2&a5#h3n>!|t4Dnxb4Y#wG_08O~S&eKpStN%>sy3^xbL~)5f|QBnL|A;R zg>8CKfS$8BX+_>gw0_)>(~^A1tIC`$|@zS8KHu~^0QYAb=$2nKl^mv;Uaxg&x_Y+aDY zL;m&9Pd!sQG%XZOy4qldd*|kIA8V7-wjLj+9&%~1Et$uoWKqOqwP(roA__2|ZN@)A z!#;CiF;@_&+fb731gw&|vl!pcxOn^uBx4}bwQuElRuYnU?yjV)YpL<^q$=WNg~^Hz z0QDKL5g4kOJu9o4(`hNEnG9$gRcVEs@GvymeB7TX-ZWi_isD)3;i23bXaBnu{CljO zQifze52Bxkv25^9gDlrp&~Zr%*RhPxa`k~yl4Bnf4+>wO!vn9u=R&G|)^_1wV(xFv z8ns-*e3i#QJr-fjb6R4T+cj04Xllh=9$3YGGly0sV1S_b2S#l;|Fm3<<*krq3s-mu z5!3sGjau8~&Sx%lYuNA|ms6UBZw(2N#h>}3VXlW5Qiwm$?QX95bB6QdHl>4t5eb2W zdmlTCjzJdy6U$mNx-UGLxaaoP-lYW%Xdd57%@?vRYS_DxOhoLZ6L9HA5XiA8Q?~V+nZaMFo6i@nj|^rk)0*DN5=f7b zEU?OZy=RvT7(HwAdK`6MBYfyuwbyenoDu0;10L75_BzA`hB);?iQf^JAdLm{Fw~Iuo zUY4PV7%AT^$aHLO^$V_#ntlZ`;f&W5evN*0wHRyLm18<&lHY2y7v4&k2iZ>rcb9s4}86GQn-53UZ!2$pt@8c_LzlIoipCoYA}5LB$j8b+ag{n zHEKpO2~FXeO&shZ*XH3^jL@>!Lr8QUI@;kl&lzF|)VHgMqmq+paoNzV><>Y_9^`}; z(u$kp4~X};9dqrA<3PH%tM11ys+n!ZYJR~qR2n4vae5h4bv-JGcszt_VEk`ZTCP6h zHi$WFZ&o)RX%iP?7sZaK-q2}x7uzPem54HpQKJs8aYFoRVjG9!nmvgkcPhU`$fq&7 zF=Sz!rS9*(K~?$p)c9xYz?@N)A!33P?O(J}Qy6>f7!o|50?YH*RaM-6j!LA<+s&2I zjP;{4D49n0U178^HI}U8;XC`5&N&JYpX*7&E|f4~{JgNJ)E=p1%zE0j(Qz+ofT2;Q zw2mw~TW+se-s5Oh@^T~Ha}|2dA2ZfHr9uo8xY3K5urE|9pp;EQ%bE*SD)LBQ(SYQh zW{v+4YIb%|DORHdLiqNwJ?}1iY+YWn5YT^sWqm(7gZQLY(vw=g>j<4F6)X0w*{*ck zon`7X?rg);`jr|5o{JnI<+!I)uk7u@%R8mUkx)qMSB9LK>*l%NZlr(vKqi~SnugB{ z-?&)iVI`N2?0VeTB+o5&+3r=(T)^N7f%_=;>$Bh%MrLCf{H#}t#L<6l8YC#Zz|HI2 zU?et9*IRwh$63+vsu)hg;LFs*s?x-Yv&(BMG+39sNzw9r`k?*6_RZ_zUfNl~`Jg$! zi90LgaLL@~cw7y>lNq=Pxx0thRBMaT1|B1dE-4N`H}=I8=1VgyrEnWExnYOT1p8bG zK=SdUe4C|t!{Ld0w)@h7l=hUKoFMR+O1RCvS5{`XIsSw$g)07Sz%(ZM8h{mGtD3hZ zr^3jRZ06@ZmwJjeWOF?=CgU(OZ$9Y5AfGN)+CcZKVM|HsS2#&DceycZuAQp?mLj6; zg>m`_ys|bJ#*C=o9?b4(myxdsG+41m0oKBI7wL3!B)i}z>kZ^R%3GAG)6Z=or>f3c z#t!VuUEK$?(-pg+1h##mUdL{1hRH_8FZfj-X8`+~Z8u^@9Zxo$vfaXUNC;$;*&|`l zhKD@DQfGaU3PUu=v_rSI0dk-zKr9TY-kFvhN^;7K=3Bp^Cnk{A%dc(U|Y_Sm0TA7S55JdqvZiMlx;I z#y~Z(yqx_Tm{eX!P{RU?BI5;AVk(;0L0zkXOK)kR>8quw;>vm;kcyIJS{Raj;>Eo| z`p6-1dPJj0%4Ic@#wF$P?peE8_^iq?K>{`U&BDEg5Gh3n8#z_L@H`PxHkl@^D`{>i z={tFW0aAW#ZnbyRw2h%?j@7U{5AyD$vy;_1#;3_+W{#_|a_P*uD^QQFs966|cJ+&w z+Lx_#AX!#AntxCJ4;vy@yaJ2aW`*Ji(}F@*gLY~eo2}xZ^E(($y2E91*{sdsc|IOl z%^M^I^g}!o@KyW5pwaYEEYy`Tt#K#SY2htqwF!;O(drprNVq^6UG(5RsVDDgIgfUO z{dl(IW7F|Ek5AS`-YPgXSE8)2DvkYL?LOnVdx~<{@(vbMmq%Tm9zWI@P6=7<`kxaY z)vS)BkEmnbR+*oZ6lm5)Mi+ZSA;EaDR1hcInrL!R>fI$3v)->y>L8QvSS0%xu(Jhj zwzV;F(x~V7%t#aSw3;;*v624ws=D;HRMLG>l&ebtBr#1ckIz$}iEFfzFB}ftuePXi zmvGc#h%j#YQOHL@0w7tZ zCq=NaKGl^SfWEl%-3zrw0X$0TrsI`fb7|#-U8RV@}#qp443JJCSll*UZw>6TIRbV z;87$~)Rq2-mtNfT1ozOu;%k*rLb{Z;{!2QLGCA)Q@|2sAjyIX+6wZaV=2Qb;-XwEr zojX-Y@cDuS0W=G6_}@Wl6wZERV`phW(OXPCU7p1Q)_?%sp#!j+H;521{j-3 zEA>T?rQxMN;b5_5cW&RBW?ffxe@xP?Eye0W!c(h)ksRO?hm zGM@jrLr)O}==0v2w#);b9HYMwYG9+IU<;u&&Mr5C8fhrAlL;ORD9A9CCPDdcy2)RM zDDh`Bd2q9J-0Y_s+@4bG8t+RcG~S(e3n_Zmv7th(b3!aM`%{UnZhzEg6l4{#+J2E^ zG@bAz#VO6oKJj0o#h&R0tbbHAG@CiH74-)VUy0)7I?5HFh#%~)P#NXbf7Te`JT#kR z$(jYvpw353j45eM`-i=$BJX4fBdpGJsUg;uH|&RCOG2lU%LBsh$hojLtKu92YU<(L z62me3>LEM%Zj*5&$s}3+jij(EM{TIo=}#dSQ=YBCKFUaYL=}WG%j&DN$_$Qq^Vh1Y zkGuWYlSYb500KVoIw@kg31{2RyrL{C5+2PQe%bhdMpN>#~aHeDPYr5NAdoBwG z3AVT<75XE<&{vPM*R_)(>vgBX6Hw2*M>C|r>pGXk!Z)prHp$b@^`=4`^sef4>{x07ewA!-bbLwpNrTsvu|8GD3Q&m*2; z3p~4K&bL+(E#jDupj8vw7eC*;tQ<@_75zYOpCg;xlPz@HAa|r`g&7sjpY%$jb1qE9 zWJi;W;`5V?5vMI!wp=o|B)p8koBdI*%CKj+^2-)8-1b$4+**T*HEY{dW47TB+bn0x zubs|Z^T1ly`eWm$6%pltZ@Y*pj(V|t2KjmwNAN&{XL~%W83E}isM;bsTW4s{8WwCiCbaioRf(hYJC9FbWgrffR{MRE`v%B3Q$13vO^LT2fWQvbd_5gl-S`{ z>2~LZI9x%YV#0HstbH`NiL;c%UR9-IkQTeRmsqdHwYgg`q3Y{|yQfB#&f2o!U%n?6 zZPS7Zj2&P(UyFa+{mne$l9XEM3(wM=+fUpvd{^4$4+Bj2XqxXM@yAes)#_9D1()gm z+iX(&Y(wgp=i-a(0a;VZ7%?rw6`IIU$w}I$wUveBjm##x) zn*UThop#4<0%}~KSsG`N$Pn3;eAdsf(y)t%&mc)&o5a86q80!wrnGhj0TdXLP&0z7rKh_BIYjsEU(Dh=1AcTq5BG@fjTYVHFU@0IC_Nwg`3aR z&z|{W!}s}2VFYa8`S)9UT=Uygh5g?iS-FkBY|P+5mx`w*ECXLT6!B%bJY=CLj%Q$z zVOeop9FGGC#39y*?9DcHMlSzLkoTNhLzCU(+gmq?=A{V03#pzDSZvvb#=n$I-rCI!B+i@s*0u z@n*?XTAl_n-9(v|pz1joRFl3;P1rEjm9hynm%CUd+{gJRQ!jR29(K4;dcshxY_wy@D43l|G!o@HB~qvfNhV*W-Jm)k%ty zINE2rYr4jz+qj1spcd7>vQCZTuIB!Wm6ml&;ODZKi&37#*`kmfc)y$6dh|NWv0gpl zEn0WZ_T&rCq-ZHVQEG!0#bUuJZPP3+$%*sLlqs)~#-WMxtqvS3TcjP!_WE@JeX(SE zCaTD#Oob(LqNS1{MtG_KP~CQ48ZliYdQ^d+S=~@Okh3a!atVx_j$2Bfg=Q-&_69c*4HgGag}gX< zdI@VRVfOghBlM^gC$O-7;Be)>chjl6H-X8J((TOR=q@2r&K>aSR`kxNI2G~p-IzP8 z)nPvQbLE~Xo0Wyr60VKl%cJFBzSJgv_Q^=7L)ttnt;y*c93DYbN@+M@h(}idC0}N5hO~w>f*m>kU z?r$;0Kk&Lvz7T(HLE9s2QUruLLQ2BSZH7~3xNplD+DJV(7i>1Bm}!z)2I>fP9j26z zhPK(5EoR^M+^XsJFzutqOEWC-$J&zpEer5#_su~CR?is`o-;<_2=!^AOyZ3?-&4*= zS2MpF4YBkt-upJ7LN718rE6I?vE>Nh;-K)$N&8r-cgG{{ywpYIY8~*XMCj6cE?c95 z$e8G6NQMUQKG4=)#8Ml`HXAlF=ca@g#;by^P&Teg2vzMe966i)ycn zA%nbz48Yk1`ynH-7Z=H2^<-A!ES~dTyWbZyiUOpkK4n#9b=yk}rLwxRQSb5^PCDQ` z*}nYI-2iMI@G0|LE5>6TJWbSEA}qE3*xWC#ZOK;ns##3OwLGw@)N?x7gJTOXKaXsY zd%g8cvW%3U)x8pN{!@l+xz~HuVbzS1hB+NGnSe~3-og*(%;d|@(Q%UGbQ;KW$uyzj z2EH{KI;YIj2is>Dia!1ZNdS@1Gkf;sPmdYclnM9^gP*gFI72gBGm&A#YjQ!g{I=7$ zE_SxRj`wlPaZOm}uZ|9AV#>!v4TgJ~#8te>xzad0!`jW7X>2Ut z&F_Eukxbm?hT}7|j4FP7(tg#P-w-%zeO@&=F+sE<=0MrP+leIIYEDAh)XCJ33S5x^ zl7m9AE?df4-uXOz!f*qO20}n_@cJt#Sw9{bgDB#r7AGkFey9*fU%a`SmMAJBN*Llf z6i^`4(Oqf3HIvqyE1#~TQljl?Il(%F9}VcKl)3|;pX~Pq~2FJdv7w5ASMtIXFdqp@FVO;dd(5 zf(4;sYhmB_>v>9VQ&=Q;OU~jaY-g?fQRzq;r3&yxwh)k!XGWwKgYA^Yq{&(sLB&BPr;Qw}yKYL0joWg(@ciQ_S^J(fnbYm93D2(i z$d3@coI0Fa-q0;)CvS|#jMG{Fe~Y#2o@M)vvd1ARIq5ny!}Eld%^iPTnedRHXNPK^$)nnmF`NkNW zRCfiyVRMn9;J2%j=2|Hc^1G^x5xaN-az;W*nS119M_~TjAx)c~I&2-^S&y?zvixOK ztY`X6D7FIvk*8ke$(7X$^=Q9b=>2gXkPGY`J zo%_m$r#O}+_E0d(bm0>gNv|k0EJd}Sa%ON3)ccgK+rq1#swk^1UD5}6lePbv-!6Cs zfnXc8m~4?soGyB|TU1Hg^O!(ppW-M#Sr$?n`XGtB&fSb7>Aczlt>cs@}o_$Y08%V}*k7?*TYCBZ9^hc|J zu;>yw%{9ClSU-pSchTw;hXG~0d25GTu=M*O`pt>TaHU~#`oZ`rIY`>5RFEZC+C=w8LRDNnbzSF)4rI_X z^=Dg{z2fKeu=*J+Q(qs_@A}+t;(w*q7U^YE|{cW8MyR0ivALou4UunN~gM3cc?8=9Eax?s4`g` zX2Tko?^vk>&g*iSK7H2PaJ^hB9FY62r`<(fy4{r;rc;@b9^W_^gFKUrCUQ%+1&|Yv zC)j>BrshCB zwWeVgRYER#-XLZg#)M}IWp@(&{;D3$?-u)+GBWC-l0UV zg`+8q)Im25k1lI*;Cyw&_$<0F(Q=j8?ooC+Vd%QQCn34_yMHeaNm3rbtMoMFwXq8B)Kp!iejS`oEQPst7|Q zu>~S5<|_SR(}4=Qwpt#_v)o?}G}~{kPLun?(mikmyh`a=t$%&E{M8Xobaq8B8|XKB z78~!@3w4UGly!~U1~uBO7z0|dyIUDe$F(;59$F3`+SRRVutx!w9U&|^Zqq^#08TN# z2Bmz{25*v;UyTE-mzt6N0K|0$y*Z?QCx0g8fa$qqQ!(=EBHJgEZ1PSgyhF z5=hZV^Z-2DObx>w179^L`BVon4%(*inL`>dL+=#X`}5~i-!H>|h~kgm0$AkQQEA(? z=)4$#n^I*bFaS2NzbSduIrN;+(4x~;&)fhTGV$Wk3mYu<(yojHtZ=y~eUhild<&*2vkh8XTY*G7-?UTZnnY)fK z36*LEO()_Aj(1kpl_bn8d;F&JCO{(Qk);{SYgu;Kg`(wf;%7?^79|LNzcY>Ds ztdc~mnw&9x(|mTR^mInGR&mGIOO4#-McuvYY@0j+v*NPHJ9%cQaaNa8iQlyVCd~`H z8#NV!gRgEzH30!{2s29Dm7^-Onw-D0T1<9M2ro3b7joPl}p?D5e+8^%G09Uw9uA8p#Zr;-!4vABOYTl{S z?v8Ovv>{Ok!H|_c8NHQgc`E7aGh)6RshB$GeBfnUbS@zZaOLf@clooW9*a-H+#7=q zEYxgtIeRqd0mN3ylZhKiidha14U1}Z;Vg*Sw78(XcTRJsK2|9OV?Z7n-a>WW0P=BUO=oS($WmuAypZ3XC2P^9E*!uV@L1vvdZ_3 zQIW=T@xee>n#<|%7Zd2On>>K4+h0DJXe-HLW~g0hL55wL-607+iM^Qvk51OhX_TaV zAq{(`>~3>+*`@jd$m|(CaL`s^%)mD`fL?`?XA9Z&#+ucW?Ws?^H917b&^1Ft?kJrk3!=dxJ)y3AhCE(pWJ&vC`;17(^ivYIus$jbI`wU z*Y)%uD0n#5J>$u#gLS$SbUi5yXX7;hGq`VtrD0nDGyEzLTk)_cYj6Clt^BMf&=M z@!U#fv4B#Xlp5u0Y?wuQi~_C=HlLuhn-%P=l6yqO0# zQUdb-!^?HCbXT206Qg8DwW=W@F3d)wX<6 zlfGwXPa+EDkd5%SQaM#VfnK7;5Cg^w9oLVW#ukH3QkWC)ImCLaEUp{$V=$Pfh0u-K zCZYHxSQN>*Xd7Ll3fLY915IpzDqlzwfoiHnEb0L)LzUe@5@hVR4+EaEdtZ)Not z%VBqu+)9V&N+dr}2R?VIr{(?Sg9-HgUd{PdvqMpyw6adtshiQhaYqZD4 z&Ehf(a{yr>k?PYYfNq}9_=;)%h@h`U^03QO(XR$De+Uya7K@9A~ z?fcIOnZ2;lG7)CY`E3jrvR;=fHm%cbSkAHWSZLC*?MtOAp9p>;59EGc#l7z&*g~QJ zdMea}3|bXc(+>)jS1fd8g#O;5IhKc67X0FeYr>h#ei=TS-1mGJ`2@7WB7sL~5`HoH zUB~(#u{?xXWdzKVi>z}xc4Y$molL4eVZG9DO-Od2U*BV2As318euw29Yg@;OnB=TC z1MGT5L*+mdImf@3Cpgy6D6Gk`QcHzcYT=p9wZ!I zfAWPiqdBHv2C4a(0#xYjbs4h5!_1Q>NrMyFH_9&!yI!Vi4jXZERpF^7XiH`-KKjxB z)KR%8aZPZDSvdQ6CTh#-NhJbh(c2hFN$Gd`=FbcQ}My3@&k z^b!3sCW>{}A&NRz2=P_pn*zfFjymX5L?L0fWCET#%i@87G#vc>8ndLALc^x_q;I%B z+(fN2zKO@&yfhRcd$gV>HCO^4a%FfI%_448)+F(3Y<99vhUCBgBQe^iRxad7@b!0A z_KG5Kcd9;6s+;Xik#1?k{W@HyTWen&u=JFS0(tUuQd^jYD3G9DxE-LrWCKHJzjY?U*Xlxysbw#M_!lD? zU{42T3j1Tqer@>@N^!;@B)lKg;t=#e`0&3Aa%qxRBsmNkr)3%8Lp+34lkv#qcy> z|HH%=f#3#EBJWA(i=i)k=6+w_m*G)e^=r`^^bS)^8P!g>);PwVu&n;wiZ=EH*zbb8 zkHf7MR&BH49KrExh=7MqBV|$g!yQgLs_IJ5If$jxzzen8 zTT#%JeB~Z&rarXo*l+1BppUSx*9%B1Wp6rmr9E^axjWcp{df7%PRGi1&a!U*?k?Fs$`IW%E zu?Z2E7UwHanoUU-mvQ%BjF&v7?jIjZ>FhsEvs5M3QO3kw;N1 zFJr{@Z_hJg*=5~yhp$Y9Wv;@q#|fY9w~QV{y*YkSTwl#l49-sF!F2LzOOruN1N6pkJ z^9a?1HD+(%3Q=sbLVlrf7;P2SQR>J<3^`9VW~wAK5O!$bZR$Xvy~$7=;|%6D(k$E? zpfRRB*0^=}Ol?3X;{OIU&(>9JRWnf+qqe)Iuc<^aDxNwvPJ0{l|z9_wT-d? z2pdlMo8@)T#2%+3V~ng((+UY@)4BO(M*H3qm+M|^<((HNL; zT^A!2++UXX~`nj=o-yNO@!UwHckU@IlZ3}*PA{tu*V(sgy#17 zIbl zwlroGSZUl!BfclN@jk03j$-(#4OB2zwv;;FUp3++GEbB;3VF~^)lZ&odw*L@JztaV zUO>$?5)`r3Et%tA!r)3I4W5_Zz#zpQK!hF?bVD0H7TO zEkXbQ_wzKwWZHQ(x_6FZ0Cbg$`!iJKj8;-XM^N_AA(SmVtcEVMIi8V;lIDBTl(n! zguT{G5uMU{59>Y89qDAy@gn4!823*+3fljo*K?1!`xCxGJ@H%!vin8Dzh`^3{@qY7 zZWF3*ww6vm?r*ew+rH33d*h4d&^0deCyZ+>Inm*%UcjvG=~_q>eR+6voOwZaZO#`f z;+CYR(j%BrD7iH7!pt?)!{i50g@z!7%3M}Dkf=wDqGeaPBVXJQ6hS54$$i*ANR@BM z{4gp9-l)kUVbJy?ug&J9%V1V_MkXWqspUle&Q9NJHx?Bmmlc!qt}ka~N{6s*g4^$3 z6lxm3nuy9M){A^R$#y7n%Vk1gqPH7pM02rrZ){476hy54KB(h%lzbNh5D8 zqyU5rQW7l*z^92gtW(766eH=7y)3mUo&2U-N41r{RA0j^h`&HJW4o{G|RAHr67wF!?#y}a+9rjGHvy&3S&$TR^xroitiw;{p>yo9G zL&%G%i34;cB*XhF6v4&XIi;pv<6JMB!(7Fl1C*|e0NETkX)O4}w~$xtEyjC_q`ga| zeR^Md^nk0_yz%+BWQK;4BK?+pwJ6z>eMR=b>Wmp}807NJbre1StO))!(yU1#>Vr!o zvC^y2ZRT)u--?f5J7%LBiU>Z2%5fVO6RL6LQ(f*VAAdKIjOsR7w~n^B9U* z$Xt2>Yn0;x_b?HL-q;19eDAd;O%$M)4cyvbsV~n%=`VQ@`*+-^;}a5x&13^buaooE z4L^%9ciw-6PKEE@M6BySD|D0pdNJt%I?FAxW~jA1ph~%)AOk3{tQ4_uXG0}s4y`Ea z_NL|nPo4&}GPY4{I|||E+P(6>`t6Bp!hHn{6T1KyH0eZw8$e>a4|$suVxKeEnT;KLumiu8yA!MEH}7j4P=Ya%u87Q4w@ zf*1%00?4Ch8e7Ya*Zbl35@J%tFb&d$L(vE(7|@f;bI=R@-P66AE7@~7N3=|sQe`VD zCo3#SrTeheLff$m$BZ!e2F{(~vXbo4D(y$aKe?oT9Am*N6z1#~`ub;3$N@dS z)#V*P>*;$(U6+&-;_mM=ZVW+Ev$4G9;||a&7Z_P}w@n%+src*}Bl{5(TSAduUFcF4 z6^6dJ@p0txP5u4ge|an09*!>uTTDJCzBOw+y5;6(XSv!#t;~4cd}1Qrf7d5MEA^>) z1U=WPnz}t_K9HzUNqV;52Ed)F3T7L#50&j<3>Lx18ou?X=d@URQe__DQH_ggG{_vz z6dDG876H;q{-?mgjWb&Q%=9HxZ%JCdWN3f+C@Rvq+9t3{X`4r@@KmGd%T7O@Eo884C2y#zMqvgF` z(9DWuU%J8#)H+#m+StmX zHDW;a^|LjOKjL13NBJeu^}3!CG*Q|)5O>)jyR`lhLS(5JWu--I@2d}fDW*B_`l}qW zhM+RBJeTIsh(Tz4o-%PY>7&FA+&2XHz-=P6VGLCDLgz5Cn8JUBQENSDt?4+Fy7<4T)iw zeqhsO0F7SF2~X`*@#a=VK7yMrAXVF_VIB z{HE?&nW*}!JJr$w``~>2O4cZ_PDMtlh{Jn{PM5H2dvvH+ zoGiv?tUIS<4}FdM{5^}vQI@C`wE`1)w;|-iEDVXeoK@H2(7{&?$Q)E%7VWKKk*KmN z%K7XlOAN9_-4e7F0(eg4!aR3D?Tf;;C$(mtZ8CZ$!{nU;+u|8nA54Zs6t;%R%Z|2$ zGGr12k~Pd}g>F<#H7N}Bs^q}gXS&%LGE)3`yfg0CoBkf|pNXl4kNOC`kd#m?$Dp5a zXC*gi=fIl^h}s*)fgG@n(MC53R&QpEMkDTo-&wmZ)|k_S$^#LTBZlgqwz_?K$No%@`w1@Zl7+AnI&VYFWzF`e#9 z`Gv|%D#V`R2_VAtCQfkW6L|wmLTYPvRzT`um#14EA$}I= za0X?rZJ$7TGu+qz%D||UuCNHFyZ*OQI__#rb#S-vmF4K-^7813%}=UtEzz4_DX12E z_QU3LAEeP;1c)U8*FMSI?2ipw{y^7bHv+28l5b2Y&s9WbH=*d#S2~u$ZCU6T2D75I zlW@xAfy@&Ln$ngk2KNo@C5b75xmOLG)2RV`v9di_;%&cIIURP{^EwOQ3qYj!^uF!! z2h~u??M$vSR}g3M=%IMo^YY|CMc3=}fr7WIF*J!Em7ltB0w4p(ik8QZyeSI5JjILF z`z_#@XHD|6hT+10YG3@LX7eWPZ2n)t$S==_G(^3$6-~>Xzf;K2gWWc8#R!v)9=B4x ziq-hiPf9>ULpY5dr||d%YneG?-Y6*caHGWdeXvAy2GFtFm{DHTDX8@5?(U5+gO0pT=ui`&Tl4f`^b5@DoJMpN90&7j-?+R5+{gNqR1- z7EZi95V{8tuYO1jl-g%y1s(bt+opSnpu7S#xea)eEHQ9!@Mo)F4jQma^I_EHJorLJ z05r+KaOy>hpxUnU^u=Xd>le;y!asl^(yy<&&wh}1-|F#ouIkk#9a|11_WF%i=I0ys z>CKC2$s9yB-vKBun;T!RHfsLG8hK-b^ZdhC@N}abLJSU}o+VQ*>Cz_9IIPhbzZ-G= z%B`oj6Syx<_|Rb`1g-}E6B@^RXZ;iNul&9r!ozORUsm@6?7T5Q%&u;yti|gMELXLX zcPj&t(sH(A*4j!{%P5D8jkz^0h}f7Q7}%m|C!~KH)|WM00Wx!hRF`EMvX}TcCOSwX z*vz7YEPv^fe`H z+cN$xkL(|bV1?iXx}96KqD+X+K;mgY<&;$(%AN$b=%sqKvrluzad`Z0Qa5~6&dvnl zoC$V1X=dD9zXIK9&uLF-rXn_7X9gx(dc!? z1vRt*`W>t>hCMtnsiy!-ghoP1#aQIWE0-Js*_H&7yxEx8RHJ{_&4grT;OEOeF2GM*y_K;w+>9h#0Q9gew#Fr{MXYKWP;gD*RJk(X;8|(Y^WqMPw3j%6Vt4}MZxJd+a!_Pj-`g-hnnlc*v1 zo#guClfA@83yY^=hv9eV|%4{3GItxm$hU6`_aON*)&{r1dQuxLmN|?N~(Kb%I1Lb zb4hI2E@ws7Qan8tyGH1jSw`Sp7jJ(!(Q8T=nEz?2sM5?J%GCBTYE}Y^B7Oe+21BR} zQkmrK)nLI*8Bs$Z{wV#6RvD948?B9-vA$Pv+R+jcPdr*bL9VO+AMYcV`;Xd7gq>j! zQedn+wN*~R%&{=wIBs#LAqr%$`2jT*WJ{Teee{YbU;JqFOv?&F`q-G{vU1;>+376v zk-0}f^B$c9)xmzc=bHJ(awbL7?ADJ`RKCpUfdiNJZL}|?SFH1szBbCM>~~-w_!ag{ z2CSn3=}KQGfb)7r-zS69d7i*~C&?mHM-(!7cc`#05n#lv4zC=(vMbhKiWmP8!2tUT zsV~fsg1&;A)O;}wa5Jgf#X6-|s|I_Dc9xm>cQJV^NVaq)@L9cYg8l@Z>0{{Bz-W2F z2!%}NsSbxOzUQ>KS{_bu1)N#^o@!U3)`#9pDfiWFeaD{CBt6oZsMXC+ysw_r0hFF^ zwSgIiqS;0Mk`j<=ap+F25cFxMDtvg>l8cc&`Cu(v{v%by$)^4Do8)n?p}-es%sJa0 zu(&ZtgRHLm9BR_o`&8V0yJ)ybr_b&F$X-}e^ugAGM+879k#B8~)dZCtwT@>BZ(P_q z5_~CNSsys^uPlp8EgS#MCVEkKFGuJG0_OW^R+Lii3^z(Q#fRU9HAvf7eWN*C)l;ey z{Q|6nhsPTAdA7j|!cdEj6#&)i6y@RkV0?dzLojfzHyg-h0EL}GVw3|Jm|D_eoJKLAbho)-@zM1n?X-?WuB4*5PvV6}o zbGk#TTbY*)l7!Y#@dmqJP->-Qq(sR%y>lpo{#11yE(Q5R$g9+fvuR3Ni( z|E!aK+V)#F1Xi+YOa{vSrwj^=<%5eD!ip~gVX1Tw6C^A z+K@Q#+3*T~Nw_ZF(_#0c$XEBV96*HU7vZngi=-i}w0cePRo0|$&+2nLpnsC}WM#30 z^MN6td?oWt`$?dE(HP=g-G`!=6K+>;dQTVy>_V$&f8?D$%{yn|_w8GerGW0DFd0Yp z=_J=6(pQJe;&FY|2|yMSwA>mQtbL0MHMHyYT1w z3G?4VfVmY$>AYDWP7}9oQ7|Fi^2~VB0NC?Hdzm57x}RC%sNF2R&EkmrYA4f2TR_?pe~a4=Ku($Pl&Xsi0`4^I2Pp15ix8*o;lE*lXM#p z_2nY&m1yjw<@<)NUr1$i*;m3|Az_!mMO2da-y>Y8xKRe@Yc>6I2ZkELcOKCGmnzYv zkh3b$bM#M)nnMnx_PD^)4`_c;?-(kjoVD-iJ!oDWFBiA#DrEzKIiWx!Ex$!EhGalp zz`&)ede|_isDICKW~{=>eJzmo9mLVEDFE5N{_+?S`>l)i4nO=QO{>i?46K4h%FZpb z6gQ;31IM!zNB5{l_k(cS3l`9G(e%yXw2#wWcIkE6rVnXTJ0}~_euIS88(LC#FI>Fh zA&PIKkLm~UXkxxU;2it?Wt*H6SY4>rGh2x&FDu`ZXCD9cOW{q1?5+^uc9$mjM2BeL5iV<0s* z%z*GLT#`qQzl21pKJC5DRSj3g9hwqOk`^xFsQJKCAMAIGi_ho*cfYG>oF=k1=f2K4 zma+b;0l+w!1pWRAkw5+bm!176`BrbxDRr6AueIl`bJu%*4p^!R`;!NTqWS{UnK_t( z`XugxpsKmk@%pRh9(HcW%*1#a`KkCNO!}{Be9LIe%WO;w+?2aa8Tw>80#<~k7| z!(RGXX>#jDGeSLv5qC+LDxfUHp6}Jy*eA5QDkxJ+*%axkOw|}0fyW7^jS0m9Vx;WQ zng&7}lU5b3xO|9lw9w+_Vg~!tYpHjL8yw7!7}N`y40O@M^J%4@eO({kG-j#;t=kHB4fmLpNl zkibxXneL-kb?v5nMTD#c#ACD(=5pPKAj{>`J}V@b@7jpV;8$B_NwnB)80O_p(u5^n z&qU?SPDR((MBm1x@Z`<=$2_n7NCVkO%BFWBYhJ-_t{lZWckVYkPp-S#%7e{bcV9Su z+w`D1VwX8abF==guB_=Z>~-eqs5U1o1w^R+^_|pg_#Wfuy{su+&85#9`+<%!PwR30 zXC*#1rD-&S?JqHG5)-OjJ*ETG% zbRPNZo)-5PzH|RFrp1;$K7DXxIay_xhNHm;I9hdZ%*OCeTHWBMU&Xzqye4<o?pq=7zXp<-{jRWmx3Xk2BBTOx*oY}q8NKb!h3g?^C@_JckU)8Nq4)0>-C2_td; zUaob}YkM9-mcn%5gM_{R2(x=v%ROR&^i1j}>w;~hKs(VauqwXx;ukX@H~j^HC> zbH4-VfQqZr@Z!BXA`12u3S*ocXqp}#hHrLP33Pr{(<3~k74a5iaH|<~O|8St?u<@3 zw#6Lm(r_79zGvG7%s=g5QJ8twAo}P+>P&!1Teax_fO92TczxU^;+tKiwEk(nc78IF zM)HdbX#!CvB8tiSXbvZHSmaTl+yzpg-Y?PmYN zObD7^fX8vLKBCxK=z6SmkF$DtVWwd5Gbnin0lS!SFKMq_fZ%d~jlOdEC%fR(khDWk zlDEMtd}V6A&#$+Mo5a5uL}lGd4x~?lZmiQdX9Xio%#RKYr}n;?xIO(w)n_;_^gal= z3NM8n+lRjDF((hpgQiY~8pP~*YPl%1844bJ7}988zvR*IE^w`2>lxPFqaQ@OEqNH6 zKK|kbxzc1-!_Sk#A2>@5*sqfr*Pej#*ffhQ&N#;W1>3hhSqW~j+=DrFQR;=J_W_Rc(~eq=F?`ADKqQFF2=`e zbTpZgEn$(+fV8xx>w#H=%KamP_hwZPv{;#wzvAY1Mau747b-$gmOrGpzz?LY=^fd{ z&U`C0>x4A5H|@(ZS(1~7<|75fia0Wu#>uyzG=C`_3rwD2d|1>dRohu=gY6N$T!m7z| zDtf_8$IS>)1#pN&tn8?Tpa?nI8Gi*GDs1hKKG4q5un6{RNKCbOGvcCNZjS41;D4TM zCGl5)(V&HD4gU0p0`+B_=+lb$z@X5;AmhvIjkGbWAZ2}N0*ea!0;X?A{ z+h&S7ks@jA5!tfLd;8na_2U^O3jr*<(DAmbfyg&j|DYw`0u2kTyp!=Z*GzGBu`Usn z^4?(q?d_5hOTv#B#!jZHq2^AAhQY7GGW!LgA-QjvZ5&z_OJHHseuQ3ggy2ynf>|NM zWWzhM4v@+@wgC%V?}x45g#d@&-F_(>b+le4nTF2!q*6VoekLr${u;Of2!o z-zQpI162oNCvVrtT)m84e!Awr^k&3h&f>vqLSs~DP}r_hht?In4?9Ojb^FcVKje7HI;gOI0{s|B03mE!vZk)T6z6jM zTWgI4n!g~L7(#J*La^*A(pfV&Qbh^pbJKaM$qaP5QAp3H`^<5;h+iqfx`9f3%+HHB z0Sq{oGsz@%po|j`(rdZp*X97l^`s$HfsiBLXCpE=YqK}aFihlqdMZleNsrSVt0T~(t*bjfWEqXa}OQ#`l|wTH^;niKP<+oi+fKvVSiY6n{@LgF{ z#vxmE5PG5M;+4@X&?qMNmC3cTl7q5}w_MfqJ$uD|-qzAG3>w;xji45MPZ7SPAXfL` z=}w!7=XKYoM=P2Gf*S|u*T%gc_t1y%+{ur&<@rg_x;NzE5BRL={dh*nLCGD*lb4g5 ze1hZT_M@pD&(c8JBfi@@eJM8cuR7Y4kLdTFmwMT#1V3Y`#?)`h%ycwQkfta$=hCf0 z`+EuIZRGZ8IP;x!R11AI&E<{(yTjnz(P zojRB67MTAa@cu10(t}L~x ziJAU9^{D7=&;`GmSjwZ39TG4ox5M6xv=3vC3gw$UqRn-3w|tsk zZj=F%4F0agWqmbuCDkU4qaroKSE;cL^0=B}f19F*M))CpDWXf6Z81dVSrMk&Li9i( z9<^FH&#{QIW#JP&e{8eW@UQ@T)d|~7nBVax@bg32GdPS2$73tKj7h2E4Kr_eMM7R4w+v<&N=%`91T0zJZX>>5vzcNv`0D-X zMh_-LX_Y{*O97|9ARQRpJR10fYyU2K61bRB=+1bBG$iOA2MnC?vUlT=Z~q^@?e7M)TdrSL*Jztub~+81W^w)zhu2av`f>G zgPuU8to_Q-zv9Qk9=EPp+4%@f$YIc6U%;X&m+p6cOxXhI4TnZQsE;InD#2Jg5>#`^ zJ7_E18~!Y>tq1p(0NgFYs{M z%}Ikvmm6y3r}hLMmruFRA48GjGL7v@$mW`)vZZ@$tf1Fg1S`-xL`Zp|kVgLE?)JA2bFG>)XVk33&U<$s}tnqP2A1QKmFI4C%dM6n^_+BIPDt7`Yl4o?TOHzF77X# z+XCbewj_}GNJKA7E$vA4_c4DJ*d%2dd!Jh@B?Ovba<3RWa98i}*rgCR$Rkuw*Z|dF z+|*ytp;OdFBN%V44Ay?>dFb;=-a%9zowtMVp@h^-`D++}T`AR?*A6qb*I2#Oaffr= z!E=N?j0m1UCJs?H@!>g*5Sp6H7LooTf4lK6@OJIjFN|rdg6P?<iY1ATGCVjJh6&tK-lGX{=vIr`5ccM@GvIGcRM5$+GOf!A$aSj1%Io)MS zeeM5k9{!ot8O7>tj6QV7cSHpkTGwqH?oSx1cf+3rZAD*)KP6>3NgPJ`@6Rahf&_v% zV`K(K-%U2nzPfRDB+2kf?m$O9nxFYdzWij6=0fh-8orFM-VuR^48D|)KCVZ4 z#@Wt;#Id>5*yW>?My(}JT89-r+dm5nZ2UBrEBj0b%&{Wv z`>xMGlU4YzZqXm>P8KJ<(zFKvAfrb~@mmNVOdi~LxM#s}^m+Ps-1nWu76z@9y->yn zx3m=hcN!&k8x#Tzx1Cqu#&eBP2jG#F`NYJJ_WbrRrmtE0HTri!Zl;Ib{0xwouHGu$ zKN2wa4|3+0uqee`2E&?1pBXy_3otRkPblz-ewTjL`QF&MsnL%x$Z+4B!l4dC=jL34 z5|W}Bvj<~sBA62Uh{XF0FYeF1)>spUc}vndZ(PATo|dQd^`}NrjWWU~xS3={@St+& zR;Df4z*VzhEbwf#?lb)2!TZAC_@16;{Ud6Bojw6mLR`@^n#@mr3!xhucd@WJ4(|z~ z7(b5|5G!!?fUTwO6u!v3UE_$kgoCs1Z*Ts z1a!fh79{%NPKLf~jowGCp?(VeqVX^0XKH?Df@&HazpJ^=Wyc-adNByrq{0&~YS|9K z_$M>A(`c_!g3H4SHJ7x_$`+@-gNiSU#zYU{Y=dn&>(P=9p%x;VVrUTZ)(El*-n-ID zA;bRE(!FFfCQ*K| z^Tv%7&uk&YO1{l#@itoleELfO1@7mNK163 zbOaV*+>4t=JVRb6=|+jNratM{@;p=AWX*YV&lwZzr!ri5)(&k2FK9T%BSLgd)P?GL5BMEt@q|NAIh9y(nY+sOQ#=x+Upc&OTmm*Pe#v$TxB|B6L9s> z@B0*ff^084O<0joC*A%5k{sBw`Vpb;J2BDu>Hw9|RAKUD5160UuW^pJ+%o_QJ1F&nywoec5jqEwQTA*l6cJ@|$ zgZ)%+FOT1B?VYDx#Y8ecNTu_G(FXD@9qa>9@w=W^Z99$LrP9GW$9p}j_4_@AFTwEA zquuvYe}U^v?FL7mCABiZ6)lx4(3(DP|Bjshu_Z@N2Beb9%iCo7$C6{CdwWs)xm#4C zL%q4d9Bl5VdvZ_TH5wB zu8(?Td#i|_snk{M)X2jd#H2}lMO=k3cr=Uj=$XE33g=JIebij)=RJ0{pp=T`2$SM3 zQhwJv1JjMvbiJ4w!vbmA8+oM_!Z%15{%wzsVU%cCsuADqZ4U{&Pdb<=)I@lXNl(AO z@uhM3!$=b0Ey917m;gwj+l}qJqM7eUv50g&mf_(nt0z)2ANL@G%qHBsG~9=x#P*|T zcJGM+tE}uh!YGfxsS4#4DaLg1<4B>oa1O@9iiV9t*dWrC1MQZR38cFBZv+Lz)Hg8% z@(esroh&#n6Q>hbJP#UbgE_phAKE=eEE5sS7{?bB_QhD*vkJSr;a+cq^>R40|+>W>Y`O~I{f!~j2ZFQvA zHy}b_LiBW8?=9#u2BL}g{hkV$^5{?eP;Of$*O?^Xf6^R>kF*+Rhu=M3Ms`^bH^>U| z5=&g{Yhu2OR-4h*IcmSV95V6!;P;NHg%-|>;~L&vy6+Psw`JcJ%RJP$TKl93lvnN) zXhsx7^A^x^Sz3TuN+S!FL{~-7ydYk)zbI)G`CtnbVGy3wZ@%}+j{%oJ6SEw8Zl&8l zr0Jpk{nvrA?Oc4Y@}+m-(d}8q{;L%wMkV&`d(rk%)rYm2>iIq4=Nh>mCr&|jqzz^N zT9r(;B^8_BQQA}*(2<&~@=k;FpKEY=7xb&-mBQwst6XKOxl!ehhD6b{V4b=xMuQJ_Lo{D@)@VPLCbRYtq6!4wA_nZA2>cOg zwW++xCTzHA4V&!LFFX)Y$JOW4i>6Q=H`Mv;c%?yAhb1_dkY4%M2fz7oak)l>LBz&C z-FHHCMeNkyHP+`&xohNi5!_?pKxx_fMI(s8nREGGc=xk@(asAZj>Dtw%~4_`J_B@+ zG_$Nr6Rc^;6Xl(t=UA!$b8ESI`OTz%T9rimqt`J#6==? zmFC}XLC%HYwtX5nhL@CZgMtdH>^scQ=2ZtkXE3hC^~A$)(?Co@(9G|RSwLue5T)Ti zUS$_!;hhz={|xx@6+w)DUCo6S%P!@kEdeDyC@wAzsxOtdqm??HI>mEx9IsiS9lY_r zz*%+-f@TE$fi+l&tzeEKBnt$I15YM9@p$b*d~=VsCK#DZyc|WQfR#ev1|uAKPZ4Vn zcTu4GD3D8FtRjYr{Kjn{PYiYYUzLb6fBM;w;x}70G}>?AV6a9KKU6D~sb6DV*7!6d z8)B+SCn5iLcyv35j2v>KQ+40T{h;I7{-a z$`3f$WNr;-kp}{e%QIUM-%FzE=OUPFvDt8vA#!F4a(rT>VN`;^-ckP^CW)C zCa$ig)`??kTyHtcXi$0%c%M?hT}t1)eD{x%%Rd*6OeR(Re$l>WWoqE=pFg%$`TNm+ zJ*B!K<4arBG$2prbGp1>9VOUq%=_?!~pi~U^4M)aS&d&?Lh?+mpJ9qAn zIP;%1>viCMcPwwU$-hOk(PbI@vqtleC%%?*P98^%@@%=cIJoz0bU^daBI zTCnWhg$(~_U@psu17J`kue(5CAi;>*lT%+;hM3tx;YhNTko4N{bddxxm9 z>x=d1tG_)=#BH3(Uze){rYuSQcyJvk?Eb86;Qt2MlUKvnSwt{!-A;JHfIB+SY+t#z zD*Nv_{rB~Ot-o#qqlL1XoEMmT=Zic){=HK!9e6#h%<;r)?QhR)zQG>+Tg~@i&hTiS zh%1a~*a!r? z4see*4gHjEGoIa4QBS(KI)Cl@@5>(i#z%4VJdA;#g%nljB7No(4CgA^!bv^jB?jsT z0kc$SH=>$36_$vtQBM_do%0%B+gOH`#h*FVsajQ_Odq8maqve2>^}{q2^h-L{9|fb zHYC@2iRlkR?VlMc>%R1z&jx4rL^T=ImH`M@*#&uI`p!?yc1*{RqSR;OWKWDZ@&4PL z-y*o;9;yN}Krph8Mjnh`BCQ2$Px|hmnRkOb<3H-cY-zoqKm6t2?&Tj_ zxBY;N4W!+FMg11>Q9EDjk2(FD2N+{bncHD(iOcV#-I8y7`^HEkB^nc9`3Ak?7LY7^fCX3@&5cZWDK~c z)_KOYeBd8&{K+3C|9}SG`+nLWCt1ZMz@!GzbARmo^Bn&&e(rT(5;GY7w0&To_Si&1 z`ELu|b^#{(jIx>vm9;VO-V&*o{@(ZBwr*bsj2Zjreh@ogOfg&9Kh`yC1K#|KErGd+W0f zaAoDVnI~aDSf*{4@yAU)dkCCBLSSC`b}Vqt8^!8Vf9(8^F!1bG8Q}3`B4#Ay`gdzL ztK9z>D|gRqNOwc%&S!ey7`2zS_y7OTbmm#bfs6a!x`-hAV-j?eSF%(Syhf4kzxrdl zK|h4auYHiqe*Ggr@VG)AXyM9;1KG!2qq_%H>95!Or_o=~CL|by&xr{ z0eltY<|rXoh>0^-Su4{k7(B?JfU>mkNCM9D(ZAFcNv^Z;b98~NHHWWaZu zsoj54KeX<`Kb`)S(;RHm#b=fGhk5?%EbIqb+FSN&)L--2V$T*R zZi7e6n6fmbZg-X0{^@4-U*GSfRNH4r$@435K zkgNF}C+{xWtn>y7y6>{2)H|n@ssZxrwZl!3M^umP%;_H4^Is}6M|`Mu)mH9ZG&1W< zW#Ksq5rN`mzFpm*-fojce6toQx&t~KAXlAPz9v!DI!zJHrjo{}!|`3Wk;{oSqW zrtWH(gkykbQUBRu{i^l7^L^4oq@=yggrP zxy+20xx#U(3Jvn7b>TBAPMhJ2(4dT4LNJw99EdZucf)r88|_aKpWh|kZ=ZgBG&vGm zgX8mfIojI(+2W6cjhH?$pzX^<7FZqS4s~P=<#TkP2#aeZOf`qL=+#uPA-|oOOY(fs zSie&40tOfh3d>i>J$|Lg6Q4(-;9)_Q*qKmK3W0Uq@r@W6BB z?5*VgazX#ki?1JQA+0!r(|K{@3x5#wmA07Kw!sx%g`$xzA7fF6Iwf^IW|4+tK;PmBk<1Gbyb%7^7 zKl5gPGiBS!M=KoOzqVr*al$bUx^TbvU4jBNkI|g(-&mDo@wk_sbyzgfap#7|{rEfQe?r-8a8 z1v#$KCBAv9&de9_QJ?>VBELV=e||crZiYulW~2uf9tTs=ckykl#pfFc9(Re8iPvgz z8KEz${?{^T3@@$bV|X}6FO+xpK}q(f41QNO_wW_fI<7n?5+d+(AdM%+!p^%PLg*fe1AP9awf8$32PsRes-G!{Gx%asf zw!2Fg=Cc5V!G=4an_5T{H9HqA@a@ONW+PtlM}Ee0|GHt|@?myBoaF>!$`i;eNt&z` z{>U~3jvU^kL`AQU3=EgxckQ``sk2HP&oC5HFV}S_(94@-$V4qB0{!N?0fkZZKATuO zo$T=;W&C_nZN5VjfX#Jvc}bmS8RPGNCum$^os6% zWReK(9jmyz^4%!8YH|Y7re+67G_H}w*+#s0>t~MMHf=~^H7Q@vg(zxN;+kq?!3%@1RIsv8_{*&KZ^^{wnxLQLKS?;!9Yfz>SiHG_2wHktG3l+-x(&b?mDmuUH$5A zeeSz67z3Km*`ZLIkq$(%c=`MMn`!QKqpfOrrB2QCO5-)g?gZQuxpXU)Sblxc=om4f z0%ah!7>>@q0j?LA=YAh_@~qPMC@Sk=MTfHikuAU}LUiK5a>srmJ8!7af5tt9I0#cufc?2csS+U*wC)dOI30nbwuE^I_L&A6+BQep|QHQ)f@@VCAHeipp#J z7PHeaJ-7+iI>Ww2(2SFbAHmHQ+a)=Bm*(iio5ZW$&JRm0l#5y8&!nIda+o^7qX=1$* z;M~A#5UhK_uTI;xTK8TnHuD4#g5x*R%Vym(r+sl+mfNfWAdf$ z<2P#+gV(GwZP18*?i9j2YTc%#Lz>{OCti}VCG+?m7UEjYd}-;D{XM_Y!V`$vl<`sJ zU>B_SaxHk+xnis8;r-OrdS8=?&7a#zd$JOts=@J(k4Ak#U9Ty+_;E>1- z`X**2LtYW+c@i#qmj6Iq6B9%GgE9VEoP@<5=FeyN>Srz(RDC^J`!(pS)b*SsZ+l19 zk|Ae0ML>YGzhmd$cwc6TMGzYHP_N3LH0&8sUc5EQJkNT?7LPLfQ3wFkHy#Iv8ysg< zw(QeuwhE=m!t_~6IK7hsWRF3me^j}{_yc>?y}Jwh*DW$buD7Yi-7t*T1~vF@WxBMu z0O@{nZH#;9@<=sSKTk`}&Ck0$mOo47riFH?eCo?noKCn>weo>n1TQN{Ig8S&tfisV zft`j;ikn?Qt#n+-!AOHiIG42uUZy6U9%gQGc67hSF>AMcM#Lv6L9mePt$IEWuVW&Z z#)KDh&hKphIxOQf-h()BGj^G-_77Dbe-b>u92Gqj7LE#pxkN}Lkc-C#r}{40En+Jn z0DazT0Ekpjmpv#NGcRO69AT5{*CWF7=-6k<(VotWc;Cz&@_VR!b0Eo7!N|thT zmMPMIuC`*g1o}x!Dp0pT@3UP_ibX2A&_KIk*Zw`kFoPnJuH0|t9f#$H$dfG9_yPW< z0*%>aSKb&Xepn?HCpnuQx^;@wyQacmjD3M-id3dYd)nBG+pd;aaIXk;j2lQoZYDfq>%qg!@a-_nih(*G)eZ>cmDfeOb0j{wqShl}1LMp;$(}i?K z^RT+Hk%`h~J7_G7frqJvXeJAyj&u^*i&eaRQ~uROnrh>CHANM1M-GNt=eC<8osgFU zj6;D2lFF`a>ZEM^-QdtYsrPoe7T_BynGeQt#KX34e(0p*zO*|`YySbiyM)biXMM{& z{4QzTU4TD)oE?sJUBD?@p|n%@;v3 zY#JFIW|zLq)rBFd(UW6a(w&CdFG1nWw}ZU5YgU=I9wrKE{GSF)eL7XA|-`N|yRz^BXOg+iwLTbH}ej$?I$z6Ws=V_=kTN&JiKi4p*S zqKU$YL{k)~hHUHiDqr-t>y!e3RkR~upe&0lIJf(swUt|GF?t9A`5=2%%=q1SsDsJ-r#-6!R#^ zxYiwLU!>zNe1e7>&xvR6A&_Tik3C$dnf5wU?lX=<73hCv%t>`ZXUk&Wr3RRXCKvf# zm}dhTE>{F5s5ckIKRIpPU`XZDH-=W%?W~+!TXKM4oS(G$n)ik`8nfFn-}>l!XhsEk zo^pJQl;y2ow$C#yf=g^K9Gja+`(m)pp9&LUwE9yo7#PW{t+;%YH^GX^8; z1&KC}WX7%vS?q0r28Q}*-@0QZFDbuTyDPs*zNg}zU{<)Fu~n&k|D>%);<;sa+L10B zsb7*F-XBL4(Z&AgzU#87m7pAszx1Sh$Arypc6wIxfY%`VL*%YSM6tdR@spp$^ zijUHSe{*@hH#tzKroJ-KUD;JiS723=*NVUYR7`fWqVDvJ`%2$6 zxo1PnI^5bdFLtXutCt0?8lwd#hx5JU@{G&!nd!*RDogJ15|WY9_T z=xy)^|H=NPCIVKlg01Ew{8Lx)!n{@KawSUmg@~Kx*?4m&AtV&5J`sAK@L}|2bfz)> zrvDKs$OPGwo4@Tz_`zzQrey&=wO^Blv32-qReu4e5D#bM6avPiu$&p#ni{)%lS^-Z zaWh>F|%9Wbk;g)gY<&(x5#o2Jf5(7{;FF4a8xU>P2AxQ+RoUZ4H?euSz z(GJU7Ialo=DtBd*5ubCpw)<@eE2-X`ltA)t z8%~}EgM>bxV`u|gI9y>a*l2L;*;;kl;KOY14XB<{XVOXz^G(||`tx|g2@YhR9Qhu9X{^qCU^!Jb6*m$gp6!MUCtT$l&DI}yiYT+6Z}W%J2~J%GzhUt;}1prFHWSBUb#X1@Y}Ojl;v`euV@ z+Zn^dHD0?JaaAr<5io(qmIzN`dy;*3B&?V3c>$x=fhq1cvCd+0$o;)pcN~^&|vLNMaDc6 zxlJ2B?(dMlP-(P{=?m6A1e`X#49-#eIJKa(oa8aCF8T)|UaLi1j^_%j%D($W{X8tw zV>l4fA-Bw$#QA756Gd4;nM0+00-q*_wbuHO5U}l=cRG0A_G5Z{#Z7AbD?KHWFvCr5 zC(a-W3O76|&nc)_>|kKFz)^F!w$S5ofjoHyXQCV}L4VZUFP00`L9tV}?h`8HSb%?( z8BF;kKbGR5aSO)GPoC-4kX68)z}X3Z(q%4J)i&lJWa(5-j9r}&YA!U7(wIlx_2;y90fk{cZtRKbUgx8S<&kh}IK zy>0I0Y#kN!jNDr^!8vf(44XYIIFplto2(GA1tC;#gH8($tu@`puI!?Iu`}xv9>dE9 zg&f;)C!a`=gXy;gi2GZI+(9IoZgw)4qavy)9?1#8)UlN|Cy}2`&}K#JE6E_0tXFMP z8#_F{8!z>GS*5qck-zv%`WlOscRihw;U?O=bA+6xjX*ss6{dddfgcik>S}oq7{tG1 z3$>Nx+qhIqCLDj_#H)CUzMR^_F{mDGhn$LeJqMi9F`o!t{UMz>a)=?cMtD31kT$RN zr{kQ8aA0g|3j_^jl8^sLYz*qIIvO{mnpWm8zoT1HlX@`tkB|MCd!*+t( z!brc!&WqEuGi0n&MQ=q%eu!R0FwneO2SPZm2Ad0AlJM%#0r`=qLfImFAHFHxJHE3D zcxH+_WP)Fmk*%JB8(|d1&_n7rqhJ!Uzs~0S?Ol;!kw-j&F#36Oec-i{SL_ygZ?p5* z9MX&+H>f{-Q_VN(g4Y?h8`Yw=KI`2F5!LH+iN#OVwkG!~eY0atongCcomzIdy1crz zHP?n!r)O!fsLAhr7gumcnIh`EZQpvF_AJk=TAeAgu*HC^YZFX15pqnW5d%&7P0vLp51@BlQcX~gL|TJSLmwYAeyfrHB*+06)yyA#L1pC5+$c2B5^yKQUK>MFHtNNo!2KN=hLZY;aQ$N`ID(7caVc*( zPo}v6%~%AKS-7(cLq#YK;e<+;M^3kP=OJnes3yIeVeWJ1q>b9U)rPNR0A_9{$=Y~= zZ@0yNVQ>)`xf^SrZ2@;+QXX1rH6&?=hf=^vaSO$ISYuL~*hGmIAN7vipmLL4wtX&z zRmEa8HqFF4y6P;u|QPAv6p9OTUhsf#o~EBGm`@V!^4S{_mPDB(lFdQ2nKXi z+%0MrLL?y62ba28yG0ih(7J7l!XhF>6|2tof=AZswNQ>eRph<1D!x75D+@J3<+XFY z)WXk-bVH!Ep=TDH;CIxKLh6OUp?4z2oz6BStVoipybDk@e*Ld1y_Jq0&$Cj1IQfI%ha%MUB^wAuv>NM2CV&Qvd0$3 zvR%U!_5hh^tEmkz40Fj{n%yp_642ZpKy7}gp2 z3k5!e4BEel=8CQiRDrap5hcV5qaB4c1f&0T|>l}O(877HmHWFR1$NXQ7CsFOqeq-euXuH`RIdwM78@elWzPnH~l=iCK`goBwhjf)rb#W{=l^Th*>1tC^Qnm`N= zR3QwUXGxFex?Uvsg!r<_S*FL5Pi)zU*Fkw+W0}O|dw$ZQUNR!JNL>8G@I+p~{;T{@ zUQ@0YIXnkNfmtnLP-f18-MWIq=;8*wdbNUK^;A+&HJ!R0Gu*A{;PFK7wQ=0+O_qkf z7oRE?MGNNPm7?K|oLyq!RBtKt%Asw-qnl!tMiRZJiC&qqE9wN$H+Ky_y>GjCC2~a} zdwr9aNR+ts?YZYvFnhcqH}QN;p}^pjS#;Dfu37tNZ&-@jpV0vRko*knI#KG=M?Tmm z@|vcRS89pCq;k==N;x8OGlehCYrVU&J*zonOSc@w$mad+JfoOfuCaA<2sQsxnShBk zNCOE`Za3JfL$@d2BQ8>JO6{qhB#7~6a0l8s7BL@c`Qo-o3lP;yr3uDTk!geqv@wUi z(W=LU$CGV8J2Y>y-=5^!!UvbN&vK3dVuS<-cnoGDD}ZBjldI@G9$t%6Uk|a?5GCn& z0bM-Ho;A zAV|A=U*o>Zpc;DAiniG6YVCDf=E$3V_cNX&R${*5o>|AKy|i8H5`C@u)g`Ll*wcDy z_*b#lE;p%P`5~XaX&T% z(GtftHG)c+#5$Mhmj;obE6lARn=m$yLZpuwNCmpr-A?73GXlnFQt{9Uw;53FUe zR!CTkyfk0gYp>0IZ1`nq$*@sDO*q}V3NK?Q$SpAgY#Nqg!AZVcI$uC>OXv&>yn6lS zq4!#;Z_1S#Ac+yfw;c06ALxLazUa8eE4U=dSJ(Mq-DKXFH)a0CrerRpmqvJOiLAkv z(`{%L4x@3ese z#i65aw{@3BHd_t-+=1RWFdNedY7$<#=)Op{bHKur>sDJ6-A9-c{75Ktrd->TU^^49 zSu3yE*;s@ExZPGBRWQsz3OWe z#!=8SE>HT%W3GJfq=$EJx4fc@awrnji^pu$zCzG(=|#Lt^|Nd^D;YBdMDyQ!J~)&+ zisg;XXQi)BgfZG2D+`y}epc>;y0*ZXqmg(!eAlN6W?66*>qFdA=-av=8JPyYH1*&F zxS}Qn=TcKvT>;f~eU0}N((l&fnxz+v<_K39Oq+TY9Wbg~;LQw$4EB9#Y)A$dKWbyU z_f)fC+dV%yOC6T4m0lMxt5#VULMddMXyB>5qb#I*(<6S%4M$?G9NDi340fNEa_F4LS8pm9`)orT`+D_^PpwMXz^c7Iz*r+}U%^X5=#_r^be&)P! z?vqRQzLVa9nl)goI>w5uv~m~QY@wo8#- z%c0tG7ULP6<9vvB@m?9agL+c&DxbnAs9w0PD9CoAHv@yS6PWL8?FJEqb6@)e3}}{y zL;>JpH&0THwr-om=DL2|x$HJ6Fsd!y%#}NIc)eJtn$f zB9gwZ=8T{Fi+1&YXT1kbl)Co0cgA!NRQ8r+$i}ml0mz2&qIhv+8u%D3@7|{us`Z4x z9b#;+G@G4*R}cbHPs)}!7;|;s6+)YE0TI!PGi>`We82j8>!N*#wHiGV0`=RuJr@D& z8$j?Zdt(n{H!fmu52DoChCr_;M<fW~x0bAf}6{8pYLK1)ylSZ6!<0V@}b75W~oIJ~HC zH%SnJ8xmmy&~r~5`yRYfI``BZWQ+p5;j2K5_$vr6GVw+T1qsDEw+UDlFw67}6Z$ZqR8`Zw2#g zt(Ww}3Mfu>Rk%F2^Ao#m0Vp8p+nUIodHm%_aRVEbDzON%Fv5 z$r9mawXcJNXOD6P5zX((;ml0Pocpo08Tt=8F^k!}L^?tdQQ_c~!|RF1;E zx7eD2iKJKlmQ>ICX#PRf=9NlZBf1oe>FUXOjAKtSD6z;cg&y=p!;D9;JH$ln&C5S2 z1-tS=#+_!==`j+glO##M*2h^KF9bVR>x-z^RXSBn-_(fbwCZ@j3X_USBgEZ(G6NSM*S;g4;?RokdtYT zgZ(a^`5s2St~5EVAw|2lsgfw-h^NNjJg0?RdN2Vh1N0|Msb#T~ybUEU=c{sG|AqxX zIl4q?L^7amvA-u=0Pc80v|5h=XV7tw5L1{uyDB%pDE_2d1=Y0>`X&fzvZ&2tvM1pp zuZ)oA#jmEG5vr_4ZK*=p;+oJU#=^zB%uk$J;4tXxhgy~H z+o1!1iBhp$tT(qIJU)>j|0<4)OS>zyc|3#8JScd54F52k#3<*3^?G>d#!NNccP&Zr zNPqr5y|u`|;bZ6eKy#-PQt*vo)zhoDA4#-?4Omrp1(o7nAy`KRqnS_zBVI=XJa>pF zSTbxNfBiVsXb*o;XvG}MApK{r%r?`VHe$ubqeE|2$a$+axt;na#`H>}5 zZ@q&MB@O5sOG&3TFJE-%6CU0?WkWA)EAIV@MZ&F}ct7$C2NnBocE(>AAdMUm$w7#k zclAD`jbP(8jksHMoH}2@KE;8LfrdnMR;}BU1p!p{Nyy@3yPSVgdL~#(N8H zm|Bk_AkHp-Ibd1VhdXGm>L5_TYOLy|R^j8jTi!#bZd<(CvIX)|s;_@wcf6$k8e)I) ztTJ+PF%i->it=u*e2EL|+6J%_;=|%&+5t^vWp}GQ_4GSBLDZ!u;7V5-l&2jh;@;fwn6Q2dY~r#`1mQ00d<^~z2l{MqqFT#t1itZOEe>eoeX zx{l~~dOS?Zd66x9F;CN*fWFKgZE@FhGh~>6*O%c%>Pasfbf2>X*Qoc-usJmrZc>KR zxv;Mt#-dboZLC<9$8NaFf3lDgB6;FyzgQ2y9a=Q}+BNBx26=hwcvm7Q4iXUv~Z35Thg&kw!%NRxt#491@ zkRblO+7o22Hbi%(cSQ%BdFK+|i-A*-(Y}rJ}(41Q>BsAUuvJM_zk@pVQ)w>Q$Q7g9qDZV)VQ%BFdgqT{{tL5c*PJ(qLrSSpc(qhnp<1XI6@2N zp50_X-4|jn&11rg7pw?zof3n6^?H@(!aO3J z;}ms!5Lx-*17P|U$SnykB2Ea`!*)kWi@H)=Ku{jO!D(T0nqFsv7f|6@fAjS5A_lEo2c9RlU8qG3R)OG^*ZtA|17^D~odwS@a6~q<0>C-0A3>)S0 z-}wrdm%?D64kljHE|YMU7MJWQSck>wJcTi4J}1Gmuoznc%nID);HW7?~LF#MusNkR+9Q6$|)r431};>*_<0l%p;Do z3pZO{Wg}bb)|W-D5+5nZ;SMWu0PnagDyZ5!_O;vNqU|Bj^l@QGU-ez_G-}975zQ;h#KOV2%LxB81ex0yN z<@GrpOVX0=S}VS&Gc_Q40=%B_nl}dPgp>rD|G`*JIc2C?S!1vpf!a$W0?anR$yao7Zlu=F;MS!2h{#Kl(sDp@UDop#H;c5>|TuzDA6KUb@QkZi`(O0(wY`g zkXm=bbq$IA;$$$UbfT-l)GAck^FS>R7;(aSc@@L3wlT;zLRm%I8eTg6?MJDTOx+20 z!YB_g9;tlX9!kD&WB0XFtB+s*22hyl(3{}#beB&?>C@WoVr zBtrLJMQrBeTl-PQjaqVVg0`XW-dpS=m+?%SE8~1mIJzUt%bO7vxfGX-T?3JtoemKz ziK_z3d?iAv(0(9Mg_W;x$<&J&;zaEEc({yjT{iyJK;Z$9L$fNspB|z^b+Mffu<;Ybl`&nGtqvz7_NYh zeUnB2OcsJyA=k=i2~aM#Y?|yDb^3#vB-2A}E+JR7V+l-}L)mRrL3!7i?FNh23q@Zq zFW1*p(8BDOz=l&EUxup5k3)XcApuaO>gepYdT*5SK#6hdGlxRJ!MkEryov)5#Y%)C z2w-njB%??(F5jdr6fn00{WSVEDIkYM5&QvDeC|3oXn9v~vm@2COS{mblhkuGLPaNS zX19%z=A8#+9t=VM@cGM&BQob6OMCb2SY~d)cljB^bf0_cIyK@ zJsQ!hh%X`Ik>fY3Gd^unK zc9zjRF;6@9T$xm;!rNralrqDcV~!ua-<$tg)$Y?PfcA10U|Gf7-`k|BCC}#>RTeTvBZX!kzTLgA9L;$fFt{KSbGuIzrjg{fBqYq#pkdTVvDpf0uP-35O;_^V z8H*rBl9)w0pUZcudOo7^I`(GeN@h=ocY=`k6I2IX;g!_5czNhtPrcrVUTgx2OQo5D zBOXdkX>X>npe=`no?kbd&Y0>gwNj3AHmq~Y z;;yvTLbWjea)v=iFc`+hNC%AdT24!b7x++jrkMr$0u{g32A18I3(aMXmr$_V9B7#N zF#FzDz&NTVFBjwd@p}d7iqv^a_fj4g zZJshxn-bjZBj!o6my0b*<^?d`XP|cKF)jY&#haH-u@6-u9v%qPe7+QZSsv+;Zf%YT z$EH7m^aQpfgYt2 zt(P1zrScTi+o|#6=oHvDSmgu_|7qLDXAaL|*v=G(*IfL(TETXGzkY(?=>zPqgzST@ zdEe^2u$?aJ-juT{p=5>=$HAfg`*}LB1SVmGO*zk_jH);LD_pgdQa?=9c446C*e^s( z;5lOSxL-+<6dpo*W(b@dSXxEm%6|=-f_-Uu6&K(ZP&Mlr3LYA=PCxW?CS3Y}mnnm?VgX=HvmD+<01es;s7Rf% z;4-`9)bFssoxftrahW&Q7X1#W8Lz;@3?2j|g7sO~%4GI^Z>q+NKvE*w#>MyUI~fWa z_34FYS+Vq%v`)})FNu;fWYwsj)i6*eJ9v&kN}3a;sxGR2|M|x>|mN#nMymp3DKID~A;n%Hp!i;6xmRZG~ zxYiEaoRrZ2SUozQIV-@khtl*YE7Lfe%gZxy>^sv#rB%w0M03SNm-X77>!aTcVLfy& zDpb8wpx!2iZ!)Smc2i^l`q+yTc2v=FJmk&KJ8z1+1&taG8jo&-$R z3!%IK7qCr0E**8G-Naa+2{*q9i>k=bLJSys1}bjUMVohc>^ zfNTpUGdg&`I`k7F4k11LTKUU@5bmymg0-WR7&}jw-V{IU%AS?QN|xSY*f;{1g3{@Z z*S8~sd0wL|3=-Bd6o-Kn@HVV-%Lhw=3>wKaM2K-lB?(Z=|GicKNGH$b_fiKt`uJ)@xn z=kj8qFgxRNwqc{};SmP@z?$-uoLK~T!j6R!G_6zjxL+{z&4=m`V`1E8vLEZ7x@{c4 zM#`Ah022t3JH*SdqD`E5n}~?>`S2^^gl&;wQg2mx7kx^Ky9>?#t_c0i4KyvqE5tTz0qr~_+AsHh z{MA4MDB0?bV<}35X_Q^N+(T)O{gry=%8wsUUpdEVoA^t2_RHTLxIcfg^g8k!Vc`F( ztr-ho&9$D7&Hte|evSGCi1Lp-I5TP=J7$g@6)H$Dr6msP()>$CJyQX0OckX2FH!RE zOvmp5Jbq1pPbe(3bUy-5tX6gPL(`9YKSq+o9oT2?J^lLC8ElaOpkY5I6a%$BKC=U_ zdpk$j)$l*oXtw}3t8C<1AItx`M_}e55RjmplET1Y10kzz(ho$SMrV2;Qz!7tOO|pJ zoVDcPByHm|C_CTU-{8@MB3LGN{48Oiy`lSba`7I1K2|f=oTM7`D^p&-G{Fl4J?(e_ zpqc(3;`~FLzh=UJIOnhF^4*~P{}XWvWw9)x4}j@Ei`tQYOY~fsE0+U ze|fpfrby>d(!r{$;>y@=z;1-h^7qn>@2aZ(T%cU&Mm_1*_gvb7a!arEZ-~;cNI2G; zup#Ax5Zpf@;qQidM9I+-prHV9W9Sb(;WD0pz?=f#`+L}Q2C6bP&5{7zH_-9D9S+aQ zWO?_V{kFPFIR1@^I@jah0gKz0j*1#lcg3^k%yh-e0YtIdBfl65a2wyYqBQUpT@e_y zwqs=q{i#g-@#HeX7yC@7d;mhx6;~XHTKL2Gj$j=<1^TRhQ?pl&9T!wdY*rq!?-RCB zryiRtKUyi;-EbyX3a$&Z5_9oI|3qc}`w1dEj{pi(%2lYSg0%!sjX^Y2=!2 z{Fa>wynarRdMJC&o|eP1;47d%CdnVD{?3+ul56a;?36&Pre&%Bn;OhinG|5!6M!+3 z@#Z4ocNY2!ljnEi=MSISbpVct@91v%!*_r4+6#w}ga6$1x2^asHu`5m{zKuP1d@Lz z)<4|ze=*Vz)$q@G{X2B}hnxNmmCpSmoBokazl-4SpZ+;H|D2pZ8GzrVghDk?2V{xL zN38*=yBXwcXOo#HySl3vmcXGq2 z0W~_@28x{TxhID{Q~sT}(hs})S71yRj6y^D+vJli$FF_Gn{uyR6P0>X!WH{7%;CNa8@>nYHIW7l75tV*3Ev3T+`P)el=ed@AC`6jW# zaNB<`))7-JZOP%F&&}Bjb-Gni*!#fr=3ce><=v+>gKy0x4PTM@9?`QFm>fHJny|By zY}07~?YxJzGcYK1&vEl!waHlsV%3Q0f!T{<3;z(C``yX=%TF@GXGfi|2(=X7{P5k? zHpdB{bVm&Tz~=0HrXDPz!K%z9&})4^Qk+;bVfUpt{U8b`s|IdhX?z%K^>DmUZ$(~) z2l<;sX2a{AK4G^*-ziCDb}fuIswE{ZZFqd5g=Hx(-tTeOGhL+s_lj3Muk&_|%1wZ! zFZFWpKzpv*;x&u^o`VTc{~3D(*aq;#9E*_YiG@bh9cH!>2)tTymTb_rR;lG_OoLzO zuFwHw%dv01bQw8IGx94WR0Wt(orDIY5-2hNA~M)3t~^)6yz z1oijB)SSxIU$(3cnwm>T61LnH-dpiQ_q}sek=UO1bEFPY?8~aP@i)=@KC9MtkC1gq zKFV7!mY$2)7QAKKQ3c%w)yX7mm)IO!wHx+Rl`(jZIKtxix3|vhcqtfw{rZ+Vo0qe5 z=>?}QXJ_a!+`Es#R42#jfj;Zll=_qiMggs3VZgc418OB=(p;8hCOs*A#lMIzVmG0K zFD{R>MbfbHN~Ls9jh?<_a+W;KV{2T{r}Y)kh?3lJB!UtnO^9dddc>P;olTj zej3Q?%yf+%dJ60D+*uKayx=J~d051RM?>ydaq7cw0SI8PAMZ~#$z=#EFFp9MQra0? z6mf_WS7EQ4rTFd|Fh%4@zk!41WZr))bo5w{Fw}!}Wmb*hi4_2%bRO=Lq}!%_Ls0^||OI zQ5bWtp)dsJ*!{K6kW;VlideI2u6*x!m2;FMrbhRb;ihFgf7Y=TjOM)OCT8;mu8qm1 zH<~N9QgMX9KK!;8jCIEpJAb&y`B;-v=N21k%diA@0K7o?Xfk@EOeV0r`xhp}qtpIo zUsCZi>1T5iP29lRpcQa{*2ra6M2a+zw?Cg4b3QM!-lb%wlh%KihDG%q6ie<{@jIF2 zvUp!B^I5NJr?)k$l<#$t!9xBfl2mKClX6U}-st>o!#m+Dr5&uL9gC6DkZ*XrGkCp8 zF0c1vUA3#&X6@xcj5o<3cjAa7yDz#Q9~9BJS;Z(?e0iKQ*tkGM?dQ*Pl`Cw&-F!g2$g;tSIKoo9Vx)=9W1QW2B2u9uh)S13o?~_O@q+hi z50uW9V3ZknjjpHq@+)TVuO%9P+Hwr|9PBa<)la;FC=>Yf3O5}@L4A7L-_~<)AdJ8s zme<2AX))t5=eyH@;7h-{eiu+B~0dS+Z}+a&e$W?-P!v^kY1BljY)D8OPEn zI-o_-r`fw(6MAJ1kHcfMYAwF~vLBV&%@4JmY8X#Y#8c2M=Vwmsv3Gk1G2NJr+DR1M z8Ruepxc99sAZR-SJycUu0pof19JW~TwDRhZcWxRi#)l9ikZHBImagth-mCB}aPtDc z!tloNRnjJfT`V6j_DempYgghcb^GhihiJh9eRVkGkz7w9ElVGplvRA)H>)LAU)#+X ztt+Oyivo`Du5bSjd*2z>)V8j>ETDpj4Un!PAX1_tAYDK}MS8DMDWN2Q^p1dlQbn3{ zP>Ph$6MC@#QbG@qgd)9!gdR!=+{s#d?X%B%&fUkgpZoLv%FL`|e4~8*{UEUe9H!#i zaqCX_T}00K8Sdkxihl$o_tAQMlN=12t6=&hm}4zMat zt;~@pIxws(Y7KbesV=K;1M0C=<6dYP3mHlvlBJ-2H=*u$_nN)+{c`se-V?{`jd=8E zr4K3eGIz5ct%!`_ya;;p2*;I4R$kh(M_wd=!L=(a{PY4v%~SEOv_v-hz5M(a1V#SAy5IjA)t z#@;&3E4q%M@8iAc*%ET2quh{rjXp8frGsYsKsrRp2#;931V)HseFKp1W@b}ZRPsLt z2#4BD8VJanbs+#E>joX0KDeXYQ~tGhW!x26Xt8R$(lh@|Aa#5$GY#w8l>0iW6+Bq;#ke?QuJ(eVJ{*@xAP?(2mWoic0RD{_BuGl6e5cuBut zqTlhMY*o#4mNbfxIsEHGO+3Er9&6*Gf(^rsK~;O#2_zpKFvtZ z%e4TM6HXoSEbaIOylnM|>^=8RZ+wXl2eQga?s$BKD z!-Z^lQOW7%!COnzsG@w!`p!QjJLA+bhlbsPGsh$(i{kwc3&@knq?cspiAG9)Ao#wh0Q%fqs-D(Rev=5IMtr5aDd7An8+UN$T z^TVC#r@k3J`;Dm{F9heYwd+7Cbh~hmj04HkTb0+2dQkFs6l6FO$h!hEqccsgYwzE= zh>iB5YB=w`@goz&PQ?u{zo~PrQ(y!=rns(~Hy!GQUFMsLGi>w;HgWgWhmc#C(i!MJ z)+J&p<~yXfWh~rm-nn%xl)zWaI4XeBd)A(dv%_7rAq7XW4J6mJ?py*We*C9#Wj!Z(Z+otA^FAI%B2K7b%I%s)0bmKWtDCdMkvS+EhP1omnXv5U z*)d99y92G*2WOF)g6H}xQ^hMm-rX^+2$fTp&oEV@8%+*7EDUSy^Z5L6RIW3kc0(hn z;?X%kDSL^lgbenTlNzCJ4t%_Nw`@BguN5CCC_sVX!@++eTml$8w}Y*z3K8$<1kBSA zH8UQN|5l#38<-qBvs`OAi*1bUas#vp{)v5V1)f~LCK2d9DGl;?e6;Q0Y44>m%X^!+ zE|EgGm^E(Zd;j{ADxPE8aa$ts92wo0>6GwVRZe%9*KZ0Zu%7k%Rn3XbJpjsHiGH@I z%t;>y2t~ncZy4uAV>gTt@8*|lK#Vt*)L)zMlk70Lu4DajZ!>BAr-F3X8Z8!quxgeTWzEOfP);*dy7urC3i~x; zRv5@}uX@&|{S)%iiRPrSQGyb`HKwHq^18(`5zNIZ3ca^Qx##EdX!~(&?jt%o(%`Ll zeyU1-Nr&o{l7A>^=Q`KW!(20n;qiNI#t2)!h78~9P(!-@13+oNl-)45q;^bBfqY{d zG2w?75vOcYld@i6EF9|KDWfB^Uh^NkTYSNI-@NS%A+d3f!b?-^qMQC&;$0tP*DM^8 zZa@DhKL3e+BEHsD8-hSHCzn*OOH_a%1YbN{A5}{ZrT*!E=$nfsYUg;YO%W9^wv;+% z{@L~(tI*|&5E#xVz<_Q%fsb*|@cwRz>w5F6#kqa{6y4Z1i8Pk-;ubr%AG#pbdu{a< z*xI17LwDU1H6ItxT*LRK5i=LJ1noM$C8B9>;?rujLLoi$wf+E0=KbCDaT@_*IqQ2! z?47i8XC+qm(o7o#n3&%EdOcJ4n&{~8kYi!U8=RC(_ep=+xlX}pa%Jqkr!!S*(hF`Q zNmBaNLa`N5vj2i_BXqn>_C>EAt&kDIG`9;3(ibTaQlzC0ElxBDm{9}mLzn6YoT|4z z2N74PVQn%4dM=DFRz6OL4W8?~VbWDXy?>6n6oL9W@)>WE4>k9;omhRKFVLBPOvm9N4s`1h(m~ z&Z-J4l{4Nx+eDcl@aCm^J?X89akF^c;=3*TA~4O1Jxy+_mDQp2D>9&hq-3k$COvnq zPU%vm@A_M_{$kUV4moY&hk={OW?X$v%~@&c1fVzA!^@PhGJ7Dj!>TuanhXbIEL=pcaI$< zkxHzB$(nkWdX6$t^1Lah)h)GXaqaW zJfdt(0>DM_qA<{%P!Vfy0M&9tQNa&e@h08q@bcnBQ-*dcdu7_{z?JqykWcA7?%6jc zzN!$z3M;tyVH>AX(z_D-g|iKCqr4DL5jLqQ+~l>Orb(;HhS{Myi!XtSx#MqTqvNGK z10h29PATmFxJgTQ#?D~GY;bG6Q{n@&8Xy*m7i8v|D!c7Gb?8Ncn;QG8H65==#wCq| z0b@nnEWh3dvN|N3;(c%&(rPF@KN-4G(OURPe9Twha3hnXa0wtj|6wYL?TkCK{i&z4W*woMD8xDH9F>Gd3wgUA+N|Tg(phb! z9NKa7#tA|>on(L=Xv{Z>w8Z^h%w26hwX&$XN4+F?!d0FMmgq3TohU8#CDo|O=nV7D zvyE4_UOp1qeyI(u%L8k6I)yqqa>flHJs4K7b7Y zic(!^%INb9(9GjSJ&;sU!Axn3XCjb z#B}9=XMhoQ4^j2c|+nDd4H1j2jS7lxg(d9>Odto;>DOt2y9Fo`&-VHVR zM)P>MKtpGoZL3P04H%$WhDz9lYu0sNXik6~@0|sLfD2Kgzi5VRUIUU#Qm8%CEVsh= zOXBHRwIFBqZT7FUXUJwO19^r*)wf;UaC4}Xj&P7vN(eSE{GsG0_>kl982yjY8vo>u z)`$Zor}=Kd`6@dHq`E|Yl+XR2rWG7Z%GH^$Dtq@IAN{o;MX5U*)t}{ym@Ow^D?lM& z%l7w{>%;rI>tml+(nvNnID0&gm|M-b_Y>r3lya}zkxEpHQjCIpQp)Re9X8|UP1Dg2 zV^E<}TKd8)3~4_>FJ;>yy}n8TAaB^a_KHpGvd5^{QC@$Tke<*Lrm)-Wtl>)rX8MSS zkSF8*hht8xPV zP)qT##gyER(H!Hh#>%+@+K<`Z1^V;%yxIW*x(j~QYPBNtSS#>7dTWNHAuZeF9KTPZDHR8+s`~uPm z-+aN2)X`_&+CdAd2QWIQ!nn}!&^90yH%%ClKI+>O6!Ii!1|)SDu~j%1^evWXR|h!A zE)l%tA=KJCV&XA(M8>vGIjGP*2;b)>7*1alalA;M zowiho2G|HICCpcMWC%9^w?c%frLw<(VU@N-!)gU)J()hE{HfXg-7Qe?!j6=;g2HzG zF}wmVC^oU_iC|&CcnWs#-2LufcRjQzTs5YK0a@<+Fs#{>2R-xt+f+w+T?nqO{6))? z8d7aa>X6<|_ z9r1gGcvKX0?;E=tp^tKHv3GK+^di_-THef?pz2)zhd5VS!Qm2G<4y7~z*fnM*1_w5 za!BcMeA<3@>gwfiiC{ldB|vpyt0NO}sEBH!GhquTf%M@#!XCf902u5(JlmSpXG?j! z7e1Ns7_hl5Yaf?^ppvzAOdo{%0cRiWfX%WNwnvma3^lh}W8kD0KN%Z24yFJ_1Wx^dzpKLiK zX;=}nw49U0nD)}Ox!OP52=lccFbinaTKnZ0cm*Q8%IoOe%?x<0LyYH-ryntrGXEk* zx~us9&6)D`Ap*p+`{`Kf<}i@>>r#xV&a$NAy^?%^@fv6W%gkq8_na(K)6BwaY8wZ- z&hUis9r$4U8B*52GI%iGXSpX7NHBJPvm2-sKeHrsEo1h9*G4C3{)%w%8CRE2m{zk zZ<-w%T_I3G^~MBSrXa9SC|W zY!RLpYY_r@)En7}Gcek&iw+(-Q?T!=nt zRgbhB{P(Au)&T+HDJS5%&O5&e)T>)s55AdWaZSD+qjnT1YMweoKypGLZ28m8{l&t z!Uj@V9PCrwwVAry*IeA-0ht4IMz??1#g=VR^C}=xf)%R!%*gy0U>8F>sU!%*0*0um z)Q`fOfGb@mj0t2F*e<)j6MN}9+>CH?ce!Hle73K=0HcI4fkEGFeh@tW9orAMB%C_< zwk!x(*SqF(oa>bB{EB-^TO7Wday6CHWl3)dq84pEfHWL!aIKESUhE=|X3>$(TQt;a z@Deesc@f{0Dz38W=LiDek2%OdKnPHeK}D?$0Jb$^Nd?fmBwQXH1tZC-ewcY};TkeS zCN>Q4c>{bB?^my@S8QTQvN>O6H{5*`)FbY(3KTt)9)67?{B)1M6>nMUs*bH-vwP4u zpeuHNYq4Q;GqoZ+*>&Z>+?O{G@QL_QT$7#mE95wn4#XwPzl4Q6k!%uGOmG;P-9!== z8D=Y&xZzi!a+qr0CIO=gQ=TqU{Oc!(pR{74@7?H51XU7~Ob|~~s2Q?#gTl0mJ^Xgv zQRjADCzX<*sN;4Z35A00I9t$>pRW{QSu&W^La4RBUy>{3Vk7M>JOcp)3`R33V!I%b zM`GUQ)n@(PY|g_;pS#l&k$1i3YiMp z_BiJUjr+5*kXBP^nV;jidLwml#pS zs8;keUXA79OhJP__x7=81(pI7;E?e#kO1)LFTEZVjbf%CX4+$UM`uw7zy>au2?*Dm zGNN`4pF042?24cS5LoD^V-chOVZ#Ia215EP2?dzTvg2E+)#kDHVh-aPp%r6|z>H#e z*%1fMhLrGf0om|F%sjUXgE>5R{A!lV&&kaKaK+lYGXrvRP^qu#( zB;)sUx``o56V+Q!^EJvJ^aB3Rz*`&3t3Xu-XeGP1`a5)rdy24Y$i$j2mJ0O<4=lsq zNWkFEy$+K`-A++e7s8*k1iXbScK+q{;!7(Uy7$SoU`=qbcvWo$>emD0+KjInpMo*? z59FfmTKu@pEV^I#&OB=pedG%|(qOt=Sj*obv?1o~(q2VpkxS)}37154lA+{;BYd!c zflbXDz=}vqlH=XKrv#**&dZ2Q?Rl^G-VBl+qw7&O3uLpw(?e9mdxwCXMPwb6^R-n|4NQyw7TgZQDkBGY=M(^m6fkB;iuMGa}c6{SotNHYX7*>`mUn^GC9ZY{s1)H34E0 zrM5>^js*Q2_a-_5*72_}#Kk7&kaYCc@k0MLP>e5`(5PBoK4yCf794{JxV{~NM9Z*;5Z#ots`l&^p zbg07Z9*1jpoHG5!oTE@NaU1qfn0m70*@G`BNy131D3QC?K z#%4&MekI!YhBF*vJf_lqeK#AO&oC1Z#Ty=C@J(;)xeC}-{IlyrQ_{^)z8%@Tf?$6X(4*Pl9u0naA;)|z=;rOFK zku>IDV1`Z9k=gik?`24duF?yCE2~TQ(hX1fxn<}YM4l9CllVoo{I}ytg6{}HNYU!< zb9FDLc?_%U8=ycWV;H00EtVTaMu@Nty9Gjdj7+pa#cA7j8iz+d%$d*;f6HiFK^(}%R@M>hKaU(&XL0O_mrT@wYjGE>v;t10qK)CsR@Iankf_u- z$%2Yod9GH|0Jy>rC45~CjC?NNVk=9lg+`ClNeLZl0VLZZaFLYlH{JEd zSr&564iBlGJpW})`0isMpNmJ%nfZ?=%2OTyDxRBjX48L*iTO8@?^}MreEG61D&dbj zx_3E1&c4;+WY!<}lfUp58z6x?h5AO=KUm3w&7#QU&8Z$;qP4oU>vD~wAg=n)&1F_2Tnkmy=v6U zY^FcY{F~AK%Pq`D5D-Cf`RD#u^XOmWYOabO4O83we%ilJrn3N+Ldus+onOf<{qKEw z$99yvZ_c(z_4mm{O$*GEXBq|nrsl){g$j?(0bZi^J5igzm-+ga0sp_;|1Y$<8g#Ur zZr?=zN&@P?sGvZ%Z-fH#aOR4#*DpuD{gYPjz5rwrz7n_e3lr}zx4c&X=AlyrSHr(_ z;um}T;~79E=Ce;+|1!yb;cxqq4@JB+#_X5n(SOqF|1Z~H8L9tQ%k?3D@9IHJU%I>} zP+~r|xyX-wN=F#|@5|c$*O=b;2u$gRY$8|y;NiJwfozn86NQcV)b0);#>4Hqwoh8Y0vupjJQE$H~qzRUY_3k z7TpPHP^vL{*gF*b@!JR1z?{x99SQ%nwtWX6Y+!(F@<&1V|9yM- zmz5Q8pN4Il8Sr*WI?cTC7AE4wfnTyn^{;*SzsPg-)q@u_7Dm0IbLU}R3T2uh?q?== z<|3aK{<0_RAM+_7g7J-aujtKZDdWw{ed&3w=dhpWTer^4Tx>=y7)S5@W#jl?{{|EZ zo=?n#gR4d1&oN!uw9H*}mm0ZUQj)m7A^z8g|3b=uX|D6mK-+W*DXU#ZDGWgfn@JMw z#KmgW@avX;`(@uRp9bQPl1!wZW15NVF`4aV(Fqgfuqr675yxkiYw?`VC_A%)y>hBn z??-Pj-lMmsmMdi1o5bKMLifqn zGwQs?^e|P2ncB5aTHe1GQ@4jmTDO$I{o2eII&%djEy>*tYCsB*(5+zFS$AZR-ahtX z+q9$`AwDw29RQ^>tIUkMl{Hb~s50|1Y_`t6_)1m@nV#*vu3goAI{pu`B|10tyRcEK zzHU!Kjn)>!C#273!MzaNonrTyQ1SeEfb;xTr(cs^G3NTIa~w`sZ~0lR_mcWTN3F

<(f!^u*&emsmU#V*3A1CYVPjj)&n-00gQo)rD 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

x#XQ&2#DQ{1JgSrU@}=Q9c8wG}H$-;hQbhP}LS! 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

oOowp0-RyD3X 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 literal 0 HcmV?d00001 diff --git a/docs/apm/service-maps.asciidoc b/docs/apm/service-maps.asciidoc new file mode 100644 index 000000000000..e0d84f33b4dc --- /dev/null +++ b/docs/apm/service-maps.asciidoc @@ -0,0 +1,48 @@ +[[service-maps]] +=== Service maps + +beta::[] + +A service map is a real-time diagram of the interactions occurring in your application’s architecture. +It allows you to easily visualize data flow and high-level statistics, like average transaction duration, +requests per minute, errors per minute, and metrics, allowing you to quickly assess the status of your services. + +Our beta offering creates two types of service maps: + +* Global: All services and connections are shown. +* Service-specific: Selecting a specific service will highlight it's connections. + +[role="screenshot"] +image::apm/images/service-maps.png[Example view of service maps in the APM app in Kibana] + +[float] +[[visualize-your-architecture]] +=== Visualize your architecture + +Select the **Service Map** tab to get started. +By default, all services and connections are shown. +Whether your onboarding a new engineer, or just trying to grasp the big picture, +click around, zoom in and out, and begin to visualize how your services are connected. + +If there's a specific service that interests you, select that service to highlight its connections. +Clicking **Focus map** will refocus the map on that specific service and lock the connection highlighting. +From here, select **Service Details**, or click on the **Transaction** tab to jump to the Transaction overview. +You can also use the tabs at the top of the page to easily jump to the **Errors** or **Metrics** overview. + +While it's not possible to query in service maps, it is possible to filter by environment. +This can be useful if you have two or more services, in separate environments, but with the same name. +Use the environment drop down to only see the data you're interested in, like `dev` or `production`. + +[role="screenshot"] +image::apm/images/service-maps-java.png[Example view of service maps with Java highlighted in the APM app in Kibana] + +[float] +[[service-maps-legend]] +=== Legend + +Nodes appear on the map in one of two shapes: + +* **Circle**: Instrumented services. Interior icons are based on the language of the agent used. +* **Diamond**: Databases, external, and messaging. Interior icons represent the generic type, +with specific icons for known entities, like Elasticsearch. +Type and subtype are based on `span.type`, and `span.subtype`. diff --git a/docs/apm/using-the-apm-ui.asciidoc b/docs/apm/using-the-apm-ui.asciidoc index 1361dc046e3b..b1b7ed730798 100644 --- a/docs/apm/using-the-apm-ui.asciidoc +++ b/docs/apm/using-the-apm-ui.asciidoc @@ -31,6 +31,8 @@ include::transactions.asciidoc[] include::spans.asciidoc[] +include::service-maps.asciidoc[] + include::errors.asciidoc[] include::metrics.asciidoc[] From eacdbcd4f5a6ad92db988a0d5c8ba7e0be141112 Mon Sep 17 00:00:00 2001 From: Paul Tavares <56442535+paul-tavares@users.noreply.github.com> Date: Tue, 7 Apr 2020 16:37:15 -0400 Subject: [PATCH 09/36] [Endpoint] new AppRootProvider + Policy details tests (#62319) * Refactor of mocks into own dir ++ added `createAppContextTestRender` * new AppRootProvider component * Refactor application `index.tsx` to use `AppRootProvider` * Add `generatePolicyDatasource()` to EndpointDocGenerator * Test for policy details --- .../plugins/endpoint/common/generate_data.ts | 38 +++ .../public/applications/endpoint/index.tsx | 81 ++---- .../endpoint/mocks/app_context_render.tsx | 70 +++++ .../dependencies_start_mock.ts} | 2 +- .../applications/endpoint/mocks/index.ts | 8 + .../endpoint/store/policy_details/reducer.ts | 6 +- .../endpoint/view/app_root_provider.tsx | 58 +++++ .../endpoint/view/policy/agents_summary.tsx | 2 +- .../view/policy/policy_details.test.tsx | 239 ++++++++++++++++++ .../endpoint/view/policy/policy_details.tsx | 8 +- 10 files changed, 454 insertions(+), 58 deletions(-) create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/mocks/app_context_render.tsx rename x-pack/plugins/endpoint/public/applications/endpoint/{mocks.ts => mocks/dependencies_start_mock.ts} (96%) create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/mocks/index.ts create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/app_root_provider.tsx create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/policy/policy_details.test.tsx diff --git a/x-pack/plugins/endpoint/common/generate_data.ts b/x-pack/plugins/endpoint/common/generate_data.ts index 0ec105129b7a..7c24bd9d7714 100644 --- a/x-pack/plugins/endpoint/common/generate_data.ts +++ b/x-pack/plugins/endpoint/common/generate_data.ts @@ -7,6 +7,11 @@ import uuid from 'uuid'; import seedrandom from 'seedrandom'; import { AlertEvent, EndpointEvent, HostMetadata, OSFields, HostFields } from './types'; +// FIXME: move types/model to top-level +// eslint-disable-next-line @kbn/eslint/no-restricted-paths +import { PolicyData } from '../public/applications/endpoint/types'; +// eslint-disable-next-line @kbn/eslint/no-restricted-paths +import { generatePolicy } from '../public/applications/endpoint/models/policy'; export type Event = AlertEvent | EndpointEvent; @@ -452,6 +457,39 @@ export class EndpointDocGenerator { } } + /** + * Generates an Ingest `datasource` that includes the Endpoint Policy data + */ + public generatePolicyDatasource(): PolicyData { + return { + id: this.seededUUIDv4(), + name: 'Endpoint Policy', + description: 'Policy to protect the worlds data', + config_id: this.seededUUIDv4(), + enabled: true, + output_id: '', + inputs: [ + { + type: 'endpoint', + enabled: true, + streams: [], + config: { + policy: { + value: generatePolicy(), + }, + }, + }, + ], + namespace: 'default', + package: { + name: 'endpoint', + title: 'Elastic Endpoint', + version: '1.0.0', + }, + revision: 1, + }; + } + private randomN(n: number): number { return Math.floor(this.random() * n); } diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/index.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/index.tsx index fa9055e0d9bb..89a6302351a5 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/index.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/index.tsx @@ -7,13 +7,9 @@ import * as React from 'react'; import ReactDOM from 'react-dom'; import { CoreStart, AppMountParameters, ScopedHistory } from 'kibana/public'; -import { I18nProvider, FormattedMessage } from '@kbn/i18n/react'; -import { Route, Switch, Router } from 'react-router-dom'; -import { Provider } from 'react-redux'; +import { FormattedMessage } from '@kbn/i18n/react'; +import { Route, Switch } from 'react-router-dom'; import { Store } from 'redux'; -import { useObservable } from 'react-use'; -import { KibanaContextProvider } from '../../../../../../src/plugins/kibana_react/public'; -import { RouteCapture } from './view/route_capture'; import { EndpointPluginStartDependencies } from '../../plugin'; import { appStoreFactory } from './store'; import { AlertIndex } from './view/alerts'; @@ -21,7 +17,7 @@ import { HostList } from './view/hosts'; import { PolicyList } from './view/policy'; import { PolicyDetails } from './view/policy'; import { HeaderNavigation } from './components/header_nav'; -import { EuiThemeProvider } from '../../../../../legacy/common/eui_styled_components'; +import { AppRootProvider } from './view/app_root_provider'; /** * This module will be loaded asynchronously to reduce the bundle size of your plugin's main bundle. @@ -49,54 +45,31 @@ interface RouterProps { } const AppRoot: React.FunctionComponent = React.memo( - ({ - history, - store, - coreStart: { http, notifications, uiSettings, application }, - depsStart: { data }, - }) => { - const isDarkMode = useObservable(uiSettings.get$('theme:darkMode')); - + ({ history, store, coreStart, depsStart }) => { return ( - - - - - - - - - ( -

- -

- )} - /> - - - - - ( - - )} - /> - - - - - - - + + + + ( +

+ +

+ )} + /> + + + + + ( + + )} + /> +
+
); } ); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/mocks/app_context_render.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/mocks/app_context_render.tsx new file mode 100644 index 000000000000..af34205e2310 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/mocks/app_context_render.tsx @@ -0,0 +1,70 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import React from 'react'; +import { createMemoryHistory } from 'history'; +import { render as reactRender, RenderOptions, RenderResult } from '@testing-library/react'; +import { appStoreFactory } from '../store'; +import { coreMock } from '../../../../../../../src/core/public/mocks'; +import { EndpointPluginStartDependencies } from '../../../plugin'; +import { depsStartMock } from './dependencies_start_mock'; +import { AppRootProvider } from '../view/app_root_provider'; + +type UiRender = (ui: React.ReactElement, options?: RenderOptions) => RenderResult; + +/** + * Mocked app root context renderer + */ +interface AppContextTestRender { + store: ReturnType; + history: ReturnType; + coreStart: ReturnType; + depsStart: EndpointPluginStartDependencies; + /** + * A wrapper around `AppRootContext` component. Uses the mocked modules as input to the + * `AppRootContext` + */ + AppWrapper: React.FC; + /** + * Renders the given UI within the created `AppWrapper` providing the given UI a mocked + * endpoint runtime context environment + */ + render: UiRender; +} + +/** + * Creates a mocked endpoint app context custom renderer that can be used to render + * component that depend upon the application's surrounding context providers. + * Factory also returns the content that was used to create the custom renderer, allowing + * for further customization. + */ +export const createAppRootMockRenderer = (): AppContextTestRender => { + const history = createMemoryHistory(); + const coreStart = coreMock.createStart({ basePath: '/mock' }); + const depsStart = depsStartMock(); + const store = appStoreFactory({ coreStart, depsStart }); + const AppWrapper: React.FunctionComponent<{ children: React.ReactElement }> = ({ children }) => ( + + {children} + + ); + const render: UiRender = (ui, options) => { + // @ts-ignore + return reactRender(ui, { + wrapper: AppWrapper, + ...options, + }); + }; + + return { + store, + history, + coreStart, + depsStart, + AppWrapper, + render, + }; +}; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/mocks.ts b/x-pack/plugins/endpoint/public/applications/endpoint/mocks/dependencies_start_mock.ts similarity index 96% rename from x-pack/plugins/endpoint/public/applications/endpoint/mocks.ts rename to x-pack/plugins/endpoint/public/applications/endpoint/mocks/dependencies_start_mock.ts index e1a90b4a416d..00cf0bca57e6 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/mocks.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/mocks/dependencies_start_mock.ts @@ -7,7 +7,7 @@ import { dataPluginMock, Start as DataPublicStartMock, -} from '../../../../../../src/plugins/data/public/mocks'; +} from '../../../../../../../src/plugins/data/public/mocks'; type DataMock = Omit & { indexPatterns: Omit & { diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/mocks/index.ts b/x-pack/plugins/endpoint/public/applications/endpoint/mocks/index.ts new file mode 100644 index 000000000000..65e78f27943b --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/mocks/index.ts @@ -0,0 +1,8 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +export * from './dependencies_start_mock'; +export * from './app_context_render'; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_details/reducer.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_details/reducer.ts index af9b49cea18a..fb3e26157ef3 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_details/reducer.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_details/reducer.ts @@ -74,8 +74,12 @@ export const policyDetailsReducer: Reducer = ( ...state, location: action.payload, }; + const isCurrentlyOnDetailsPage = isOnPolicyDetailsPage(newState); + const wasPreviouslyOnDetailsPage = isOnPolicyDetailsPage(state); - if (isOnPolicyDetailsPage(newState)) { + // Did user just enter the Detail page? if so, then set the loading indicator and return new state + if (isCurrentlyOnDetailsPage && !wasPreviouslyOnDetailsPage) { + newState.isLoading = true; return newState; } return { diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/app_root_provider.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/app_root_provider.tsx new file mode 100644 index 000000000000..ca27831ee90b --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/app_root_provider.tsx @@ -0,0 +1,58 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import React, { memo, ReactNode, useMemo } from 'react'; +import { Provider } from 'react-redux'; +import { I18nProvider } from '@kbn/i18n/react'; +import { Router } from 'react-router-dom'; +import { History } from 'history'; +import { CoreStart } from 'kibana/public'; +import { useObservable } from 'react-use'; +import { EuiThemeProvider } from '../../../../../../legacy/common/eui_styled_components'; +import { KibanaContextProvider } from '../../../../../../../src/plugins/kibana_react/public'; +import { appStoreFactory } from '../store'; +import { RouteCapture } from './route_capture'; +import { EndpointPluginStartDependencies } from '../../../plugin'; + +/** + * Provides the context for rendering the endpoint app + */ +export const AppRootProvider = memo<{ + store: ReturnType; + history: History; + coreStart: CoreStart; + depsStart: EndpointPluginStartDependencies; + children: ReactNode | ReactNode[]; +}>( + ({ + store, + history, + coreStart: { http, notifications, uiSettings, application }, + depsStart: { data }, + children, + }) => { + const isDarkMode = useObservable(uiSettings.get$('theme:darkMode')); + const services = useMemo(() => ({ http, notifications, application, data }), [ + application, + data, + http, + notifications, + ]); + return ( + + + + + + {children} + + + + + + ); + } +); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/policy/agents_summary.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/policy/agents_summary.tsx index d0751cf9fb88..a3e30eb891db 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/view/policy/agents_summary.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/policy/agents_summary.tsx @@ -61,7 +61,7 @@ export const AgentsSummary = memo(props => { }, []); return ( - + {stats.map(({ key, title, health }) => { return ( diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/policy/policy_details.test.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/policy/policy_details.test.tsx new file mode 100644 index 000000000000..2ecc2b117bf0 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/policy/policy_details.test.tsx @@ -0,0 +1,239 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +import React from 'react'; +import { mount } from 'enzyme'; +import { createAppRootMockRenderer } from '../../mocks'; +import { PolicyDetails } from './policy_details'; +import { EndpointDocGenerator } from '../../../../../common/generate_data'; + +describe('Policy Details', () => { + type FindReactWrapperResponse = ReturnType['find']>; + + const sleep = (ms = 100) => new Promise(wakeup => setTimeout(wakeup, ms)); + const generator = new EndpointDocGenerator(); + const { history, AppWrapper, coreStart } = createAppRootMockRenderer(); + const http = coreStart.http; + const render = (ui: Parameters[0]) => mount(ui, { wrappingComponent: AppWrapper }); + let policyDatasource: ReturnType; + let policyView: ReturnType; + + beforeEach(() => jest.clearAllMocks()); + + afterEach(() => { + if (policyView) { + policyView.unmount(); + } + }); + + describe('when displayed with invalid id', () => { + beforeEach(() => { + http.get.mockReturnValue(Promise.reject(new Error('policy not found'))); + history.push('/policy/1'); + policyView = render(); + }); + + it('should show loader followed by error message', () => { + expect(policyView.find('EuiLoadingSpinner').length).toBe(1); + policyView.update(); + const callout = policyView.find('EuiCallOut'); + expect(callout).toHaveLength(1); + expect(callout.prop('color')).toEqual('danger'); + expect(callout.text()).toEqual('policy not found'); + }); + }); + describe('when displayed with valid id', () => { + let asyncActions: Promise = Promise.resolve(); + + beforeEach(() => { + policyDatasource = generator.generatePolicyDatasource(); + policyDatasource.id = '1'; + + http.get.mockImplementation((...args) => { + const [path] = args; + if (typeof path === 'string') { + // GET datasouce + if (path === '/api/ingest_manager/datasources/1') { + asyncActions = asyncActions.then(async (): Promise => await sleep()); + return Promise.resolve({ + item: policyDatasource, + success: true, + }); + } + + // GET Agent status for agent config + if (path === '/api/ingest_manager/fleet/agent-status') { + asyncActions = asyncActions.then(async () => await sleep()); + return Promise.resolve({ + results: { events: 0, total: 5, online: 3, error: 1, offline: 1 }, + success: true, + }); + } + } + + return Promise.reject(new Error('unknown API call!')); + }); + history.push('/policy/1'); + policyView = render(); + }); + + it('should display back to list button and policy title', () => { + policyView.update(); + const pageHeaderLeft = policyView.find( + 'EuiPageHeaderSection[data-test-subj="pageViewHeaderLeft"]' + ); + + const backToListButton = pageHeaderLeft.find('EuiButtonEmpty'); + expect(backToListButton.prop('iconType')).toBe('arrowLeft'); + expect(backToListButton.prop('href')).toBe('/mock/app/endpoint/policy'); + expect(backToListButton.text()).toBe('Back to policy list'); + + const pageTitle = pageHeaderLeft.find('[data-test-subj="pageViewHeaderLeftTitle"]'); + expect(pageTitle).toHaveLength(1); + expect(pageTitle.text()).toEqual(policyDatasource.name); + }); + it('should navigate to list if back to link is clicked', async () => { + policyView.update(); + const backToListButton = policyView.find( + 'EuiPageHeaderSection[data-test-subj="pageViewHeaderLeft"] EuiButtonEmpty' + ); + expect(history.location.pathname).toEqual('/policy/1'); + backToListButton.simulate('click'); + expect(history.location.pathname).toEqual('/policy'); + }); + it('should display agent stats', async () => { + await asyncActions; + policyView.update(); + const headerRight = policyView.find( + 'EuiPageHeaderSection[data-test-subj="pageViewHeaderRight"]' + ); + const agentsSummary = headerRight.find('EuiFlexGroup[data-test-subj="policyAgentsSummary"]'); + expect(agentsSummary).toHaveLength(1); + expect(agentsSummary.text()).toBe('Hosts5Online3Offline1Error1'); + }); + it('should display cancel button', async () => { + await asyncActions; + policyView.update(); + const cancelbutton = policyView.find( + 'EuiButtonEmpty[data-test-subj="policyDetailsCancelButton"]' + ); + expect(cancelbutton).toHaveLength(1); + expect(cancelbutton.text()).toEqual('Cancel'); + }); + it('should redirect to policy list when cancel button is clicked', async () => { + await asyncActions; + policyView.update(); + const cancelbutton = policyView.find( + 'EuiButtonEmpty[data-test-subj="policyDetailsCancelButton"]' + ); + expect(history.location.pathname).toEqual('/policy/1'); + cancelbutton.simulate('click'); + expect(history.location.pathname).toEqual('/policy'); + }); + it('should display save button', async () => { + await asyncActions; + policyView.update(); + const saveButton = policyView.find('EuiButton[data-test-subj="policyDetailsSaveButton"]'); + expect(saveButton).toHaveLength(1); + expect(saveButton.text()).toEqual('Save'); + }); + describe('when the save button is clicked', () => { + let saveButton: FindReactWrapperResponse; + let confirmModal: FindReactWrapperResponse; + let modalCancelButton: FindReactWrapperResponse; + let modalConfirmButton: FindReactWrapperResponse; + + beforeEach(async () => { + await asyncActions; + policyView.update(); + saveButton = policyView.find('EuiButton[data-test-subj="policyDetailsSaveButton"]'); + saveButton.simulate('click'); + policyView.update(); + confirmModal = policyView.find( + 'EuiConfirmModal[data-test-subj="policyDetailsConfirmModal"]' + ); + modalCancelButton = confirmModal.find('button[data-test-subj="confirmModalCancelButton"]'); + modalConfirmButton = confirmModal.find( + 'button[data-test-subj="confirmModalConfirmButton"]' + ); + http.put.mockImplementation((...args) => { + asyncActions = asyncActions.then(async () => await sleep()); + const [path] = args; + if (typeof path === 'string') { + if (path === '/api/ingest_manager/datasources/1') { + return Promise.resolve({ + item: policyDatasource, + success: true, + }); + } + } + + return Promise.reject(new Error('unknown PUT path!')); + }); + }); + + it('should show a modal confirmation', () => { + expect(confirmModal).toHaveLength(1); + expect(confirmModal.find('div[data-test-subj="confirmModalTitleText"]').text()).toEqual( + 'Save and deploy changes' + ); + expect(modalCancelButton.text()).toEqual('Cancel'); + expect(modalConfirmButton.text()).toEqual('Save and deploy changes'); + }); + it('should show info callout if policy is in use', () => { + const warningCallout = confirmModal.find( + 'EuiCallOut[data-test-subj="policyDetailsWarningCallout"]' + ); + expect(warningCallout).toHaveLength(1); + expect(warningCallout.text()).toEqual( + 'This action will update 5 hostsSaving these changes will apply the updates to all active endpoints assigned to this policy' + ); + }); + it('should close dialog if cancel button is clicked', () => { + modalCancelButton.simulate('click'); + expect( + policyView.find('EuiConfirmModal[data-test-subj="policyDetailsConfirmModal"]') + ).toHaveLength(0); + }); + it('should update policy and show success notification when confirm button is clicked', async () => { + modalConfirmButton.simulate('click'); + policyView.update(); + // Modal should be closed + expect( + policyView.find('EuiConfirmModal[data-test-subj="policyDetailsConfirmModal"]') + ).toHaveLength(0); + + // API should be called + await asyncActions; + expect(http.put.mock.calls[0][0]).toEqual(`/api/ingest_manager/datasources/1`); + policyView.update(); + + // Toast notification should be shown + const toastAddMock = coreStart.notifications.toasts.add.mock; + expect(toastAddMock.calls).toHaveLength(1); + expect(toastAddMock.calls[0][0]).toMatchObject({ + color: 'success', + iconType: 'check', + }); + }); + it('should show an error notification toast if update fails', async () => { + policyDatasource.id = 'invalid'; + modalConfirmButton.simulate('click'); + + await asyncActions; + policyView.update(); + + // Toast notification should be shown + const toastAddMock = coreStart.notifications.toasts.add.mock; + expect(toastAddMock.calls).toHaveLength(1); + expect(toastAddMock.calls[0][0]).toMatchObject({ + color: 'danger', + iconType: 'alert', + }); + }); + }); + }); +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/policy/policy_details.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/policy/policy_details.tsx index 2dba301bf453..bc56e5e6f632 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/view/policy/policy_details.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/policy/policy_details.tsx @@ -149,7 +149,10 @@ export const PolicyDetails = React.memo(() => { - + @@ -157,6 +160,7 @@ export const PolicyDetails = React.memo(() => { 0 && ( <> Date: Wed, 8 Apr 2020 00:44:38 +0100 Subject: [PATCH 10/36] chore(NA): removes server imports from canvas src plugin (#62783) * chore(NA): remove server imports from canvas src plugin * chore(NA): correctly import types for demodata --- .../functions/server/demodata/demo_rows_types.ts | 10 ++++++++++ .../functions/server/demodata/get_demo_rows.ts | 6 +----- .../functions/server/demodata/index.ts | 3 ++- .../plugins/canvas/i18n/functions/dict/demodata.ts | 2 +- 4 files changed, 14 insertions(+), 7 deletions(-) create mode 100644 x-pack/legacy/plugins/canvas/canvas_plugin_src/functions/server/demodata/demo_rows_types.ts diff --git a/x-pack/legacy/plugins/canvas/canvas_plugin_src/functions/server/demodata/demo_rows_types.ts b/x-pack/legacy/plugins/canvas/canvas_plugin_src/functions/server/demodata/demo_rows_types.ts new file mode 100644 index 000000000000..e92dc79fba8c --- /dev/null +++ b/x-pack/legacy/plugins/canvas/canvas_plugin_src/functions/server/demodata/demo_rows_types.ts @@ -0,0 +1,10 @@ +/* + * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one + * or more contributor license agreements. Licensed under the Elastic License; + * you may not use this file except in compliance with the Elastic License. + */ + +export enum DemoRows { + CI = 'ci', + SHIRTS = 'shirts', +} diff --git a/x-pack/legacy/plugins/canvas/canvas_plugin_src/functions/server/demodata/get_demo_rows.ts b/x-pack/legacy/plugins/canvas/canvas_plugin_src/functions/server/demodata/get_demo_rows.ts index 02f8efcfde95..58a2354b5cf3 100644 --- a/x-pack/legacy/plugins/canvas/canvas_plugin_src/functions/server/demodata/get_demo_rows.ts +++ b/x-pack/legacy/plugins/canvas/canvas_plugin_src/functions/server/demodata/get_demo_rows.ts @@ -6,14 +6,10 @@ import { cloneDeep } from 'lodash'; import ci from './ci.json'; +import { DemoRows } from './demo_rows_types'; import shirts from './shirts.json'; import { getFunctionErrors } from '../../../../i18n'; -export enum DemoRows { - CI = 'ci', - SHIRTS = 'shirts', -} - export function getDemoRows(arg: string | null) { if (arg === DemoRows.CI) { return cloneDeep(ci); diff --git a/x-pack/legacy/plugins/canvas/canvas_plugin_src/functions/server/demodata/index.ts b/x-pack/legacy/plugins/canvas/canvas_plugin_src/functions/server/demodata/index.ts index 826c49d328f2..5cebae5bb669 100644 --- a/x-pack/legacy/plugins/canvas/canvas_plugin_src/functions/server/demodata/index.ts +++ b/x-pack/legacy/plugins/canvas/canvas_plugin_src/functions/server/demodata/index.ts @@ -8,7 +8,8 @@ import { sortBy } from 'lodash'; import { ExpressionFunctionDefinition } from 'src/plugins/expressions'; // @ts-ignore unconverted lib file import { queryDatatable } from '../../../../common/lib/datatable/query'; -import { DemoRows, getDemoRows } from './get_demo_rows'; +import { DemoRows } from './demo_rows_types'; +import { getDemoRows } from './get_demo_rows'; import { Filter, Datatable, DatatableColumn, DatatableRow } from '../../../../types'; import { getFunctionHelp } from '../../../../i18n'; diff --git a/x-pack/legacy/plugins/canvas/i18n/functions/dict/demodata.ts b/x-pack/legacy/plugins/canvas/i18n/functions/dict/demodata.ts index caedbfdec5be..35a5b86f752d 100644 --- a/x-pack/legacy/plugins/canvas/i18n/functions/dict/demodata.ts +++ b/x-pack/legacy/plugins/canvas/i18n/functions/dict/demodata.ts @@ -8,7 +8,7 @@ import { i18n } from '@kbn/i18n'; import { demodata } from '../../../canvas_plugin_src/functions/server/demodata'; import { FunctionHelp } from '../function_help'; import { FunctionFactory } from '../../../types'; -import { DemoRows } from '../../../canvas_plugin_src/functions/server/demodata/get_demo_rows'; +import { DemoRows } from '../../../canvas_plugin_src/functions/server/demodata/demo_rows_types'; export const help: FunctionHelp> = { help: i18n.translate('xpack.canvas.functions.demodataHelpText', { From 5218e3048706236d0a0baddb0d32cf9f0d7536a8 Mon Sep 17 00:00:00 2001 From: Frank Hassanabad Date: Tue, 7 Apr 2020 19:37:47 -0600 Subject: [PATCH 11/36] [SIEM][Detection Engine] Fixes TypeScript types and adds format to time range query ## Summary * Fixes the Type Script types so we don't have to use non-null-assertions * Adds null checks where needed * Changes the time range query to have a format of epoch to avoid mapping issues ### Checklist - [x] [Unit or functional tests](https://github.com/elastic/kibana/blob/master/CONTRIBUTING.md#cross-browser-compatibility) were updated or added to match the most common scenarios --- .../detection_engine/rules/types.ts | 2 +- .../rules/create/helpers.test.ts | 10 +++++----- .../detection_engine/rules/create/helpers.ts | 2 +- .../pages/detection_engine/rules/helpers.tsx | 2 +- .../notifications/build_signals_query.test.ts | 1 + .../notifications/build_signals_query.ts | 1 + .../rules_notification_alert_type.ts | 6 +++--- .../schedule_notification_actions.ts | 2 +- .../detection_engine/notifications/utils.ts | 2 +- .../routes/rules/patch_rules_bulk_route.ts | 6 +++--- .../routes/rules/patch_rules_route.ts | 6 +++--- .../lib/detection_engine/routes/utils.ts | 2 +- .../create_rule_actions_saved_object.ts | 9 +++++++-- .../delete_rule_actions_saved_object.ts | 2 +- .../get_rule_actions_saved_object.ts | 8 +++++++- ...ate_or_create_rule_actions_saved_object.ts | 2 +- .../update_rule_actions_saved_object.ts | 9 +++++++-- .../detection_engine/rule_actions/utils.ts | 19 +++++++++++++++---- .../rules/update_rule_actions.ts | 8 ++++++-- .../rules/update_rules_notifications.ts | 5 +++-- .../signals/signal_rule_alert_type.test.ts | 2 +- .../signals/signal_rule_alert_type.ts | 9 ++++++--- .../lib/detection_engine/signals/types.ts | 2 +- .../siem/server/lib/detection_engine/types.ts | 9 +++++++-- 24 files changed, 84 insertions(+), 42 deletions(-) diff --git a/x-pack/legacy/plugins/siem/public/containers/detection_engine/rules/types.ts b/x-pack/legacy/plugins/siem/public/containers/detection_engine/rules/types.ts index bc559c5ac497..f89d21ef1aeb 100644 --- a/x-pack/legacy/plugins/siem/public/containers/detection_engine/rules/types.ts +++ b/x-pack/legacy/plugins/siem/public/containers/detection_engine/rules/types.ts @@ -70,7 +70,7 @@ const MetaRule = t.intersection([ }), t.partial({ throttle: t.string, - kibanaSiemAppUrl: t.string, + kibana_siem_app_url: t.string, }), ]); diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/create/helpers.test.ts b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/create/helpers.test.ts index efb601b6bd20..8d793f39afa9 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/create/helpers.test.ts +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/create/helpers.test.ts @@ -515,7 +515,7 @@ describe('helpers', () => { actions: [], enabled: false, meta: { - kibanaSiemAppUrl: 'http://localhost:5601/app/siem', + kibana_siem_app_url: 'http://localhost:5601/app/siem', }, throttle: 'no_actions', }; @@ -533,7 +533,7 @@ describe('helpers', () => { actions: [], enabled: false, meta: { - kibanaSiemAppUrl: mockStepData.kibanaSiemAppUrl, + kibana_siem_app_url: mockStepData.kibanaSiemAppUrl, }, throttle: 'no_actions', }; @@ -566,7 +566,7 @@ describe('helpers', () => { ], enabled: false, meta: { - kibanaSiemAppUrl: mockStepData.kibanaSiemAppUrl, + kibana_siem_app_url: mockStepData.kibanaSiemAppUrl, }, throttle: 'rule', }; @@ -599,7 +599,7 @@ describe('helpers', () => { ], enabled: false, meta: { - kibanaSiemAppUrl: mockStepData.kibanaSiemAppUrl, + kibana_siem_app_url: mockStepData.kibanaSiemAppUrl, }, throttle: mockStepData.throttle, }; @@ -631,7 +631,7 @@ describe('helpers', () => { ], enabled: false, meta: { - kibanaSiemAppUrl: mockStepData.kibanaSiemAppUrl, + kibana_siem_app_url: mockStepData.kibanaSiemAppUrl, }, throttle: 'no_actions', }; diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/create/helpers.ts b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/create/helpers.ts index 151e3a9bdf4d..7ad116c31336 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/create/helpers.ts +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/create/helpers.ts @@ -155,7 +155,7 @@ export const formatActionsStepData = (actionsStepData: ActionsStepRule): Actions enabled, throttle: actions.length ? throttle : NOTIFICATION_THROTTLE_NO_ACTIONS, meta: { - kibanaSiemAppUrl, + kibana_siem_app_url: kibanaSiemAppUrl, }, }; }; diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/helpers.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/helpers.tsx index db1f2298b5ea..58a1b0fd3133 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/helpers.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/helpers.tsx @@ -64,7 +64,7 @@ export const getActionsStepsData = ( actions: actions?.map(transformRuleToAlertAction), isNew: false, throttle, - kibanaSiemAppUrl: meta?.kibanaSiemAppUrl, + kibanaSiemAppUrl: meta?.kibana_siem_app_url, enabled, }; }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/build_signals_query.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/build_signals_query.test.ts index 189c596a7712..c6923283bec1 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/build_signals_query.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/build_signals_query.test.ts @@ -41,6 +41,7 @@ describe('buildSignalsSearchQuery', () => { '@timestamp': { gt: from, lte: to, + format: 'epoch_millis', }, }, }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/build_signals_query.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/build_signals_query.ts index b973d4c5f4e9..be0943c01422 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/build_signals_query.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/build_signals_query.ts @@ -32,6 +32,7 @@ export const buildSignalsSearchQuery = ({ ruleId, index, from, to }: BuildSignal '@timestamp': { gt: from, lte: to, + format: 'epoch_millis', }, }, }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/rules_notification_alert_type.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/rules_notification_alert_type.ts index 546488caa5ee..ced81098c9f8 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/rules_notification_alert_type.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/rules_notification_alert_type.ts @@ -53,7 +53,7 @@ export const rulesNotificationAlertType = ({ from: fromInMs, to: toInMs, index: ruleParams.outputIndex, - ruleId: ruleParams.ruleId!, + ruleId: ruleParams.ruleId, callCluster: services.callCluster, }); @@ -61,14 +61,14 @@ export const rulesNotificationAlertType = ({ from: fromInMs, to: toInMs, id: ruleAlertSavedObject.id, - kibanaSiemAppUrl: ruleAlertParams.meta?.kibanaSiemAppUrl as string, + kibanaSiemAppUrl: ruleAlertParams.meta?.kibana_siem_app_url, }); logger.info( `Found ${signalsCount} signals using signal rule name: "${ruleParams.name}", id: "${params.ruleAlertId}", rule_id: "${ruleParams.ruleId}" in "${ruleParams.outputIndex}" index` ); - if (signalsCount) { + if (signalsCount !== 0) { const alertInstance = services.alertInstanceFactory(alertId); scheduleNotificationActions({ alertInstance, signalsCount, resultsLink, ruleParams }); } diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/schedule_notification_actions.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/schedule_notification_actions.ts index 749b892ef506..9f145af79ca9 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/schedule_notification_actions.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/schedule_notification_actions.ts @@ -8,7 +8,7 @@ import { mapKeys, snakeCase } from 'lodash/fp'; import { AlertInstance } from '../../../../../../../plugins/alerting/server'; import { RuleTypeParams } from '../types'; -type NotificationRuleTypeParams = RuleTypeParams & { +export type NotificationRuleTypeParams = RuleTypeParams & { name: string; id: string; }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/utils.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/utils.ts index 5dc7e7fc30b7..c91c4490e8eb 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/utils.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/notifications/utils.ts @@ -10,7 +10,7 @@ export const getNotificationResultsLink = ({ from, to, }: { - kibanaSiemAppUrl: string; + kibanaSiemAppUrl?: string; id: string; from?: string; to?: string; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_bulk_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_bulk_route.ts index 85255594ee48..8c0fceb7a5f2 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_bulk_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_bulk_route.ts @@ -121,15 +121,15 @@ export const patchRulesBulkRoute = (router: IRouter) => { anomalyThreshold, machineLearningJobId, }); - if (rule != null) { + if (rule != null && rule.enabled != null && rule.name != null) { const ruleActions = await updateRulesNotifications({ ruleAlertId: rule.id, alertsClient, savedObjectsClient, - enabled: rule.enabled!, + enabled: rule.enabled, actions, throttle, - name: rule.name!, + name: rule.name, }); const ruleStatuses = await savedObjectsClient.find< IRuleSavedAttributesSavedObjectAttributes diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_route.ts index f553ccd2c6f8..9c5000d70e5f 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_route.ts @@ -117,15 +117,15 @@ export const patchRulesRoute = (router: IRouter) => { anomalyThreshold, machineLearningJobId, }); - if (rule != null) { + if (rule != null && rule.enabled != null && rule.name != null) { const ruleActions = await updateRulesNotifications({ ruleAlertId: rule.id, alertsClient, savedObjectsClient, - enabled: rule.enabled!, + enabled: rule.enabled, actions, throttle, - name: rule.name!, + name: rule.name, }); const ruleStatuses = await savedObjectsClient.find< IRuleSavedAttributesSavedObjectAttributes diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/utils.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/utils.ts index 8d7360bae8eb..e4015ad8bafa 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/utils.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/utils.ts @@ -309,7 +309,7 @@ export const validateLicenseForRuleType = ({ }: { license: ILicense; ruleType: RuleType; -}) => { +}): void => { if (isMlRule(ruleType) && !license.hasAtLeast(MINIMUM_ML_LICENSE)) { const message = i18n.translate('xpack.siem.licensing.unsupportedMachineLearningMessage', { defaultMessage: diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/create_rule_actions_saved_object.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/create_rule_actions_saved_object.ts index 23c99b36cb4a..97cfc1d2d9ea 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/create_rule_actions_saved_object.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/create_rule_actions_saved_object.ts @@ -14,7 +14,7 @@ interface CreateRuleActionsSavedObject { ruleAlertId: string; savedObjectsClient: AlertServices['savedObjectsClient']; actions: RuleAlertAction[] | undefined; - throttle: string | undefined; + throttle: string | null | undefined; } export const createRuleActionsSavedObject = async ({ @@ -22,7 +22,12 @@ export const createRuleActionsSavedObject = async ({ savedObjectsClient, actions = [], throttle, -}: CreateRuleActionsSavedObject) => { +}: CreateRuleActionsSavedObject): Promise<{ + id: string; + actions: RuleAlertAction[]; + alertThrottle: string | null; + ruleThrottle: string; +}> => { const ruleActionsSavedObject = await savedObjectsClient.create< IRuleActionsAttributesSavedObjectAttributes >(ruleActionsSavedObjectType, { diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/delete_rule_actions_saved_object.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/delete_rule_actions_saved_object.ts index 4e8781dd4569..864281da5baf 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/delete_rule_actions_saved_object.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/delete_rule_actions_saved_object.ts @@ -16,7 +16,7 @@ interface DeleteRuleActionsSavedObject { export const deleteRuleActionsSavedObject = async ({ ruleAlertId, savedObjectsClient, -}: DeleteRuleActionsSavedObject) => { +}: DeleteRuleActionsSavedObject): Promise<{} | null> => { const ruleActions = await getRuleActionsSavedObject({ ruleAlertId, savedObjectsClient }); if (!ruleActions) return null; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/get_rule_actions_saved_object.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/get_rule_actions_saved_object.ts index 3ae9090526d6..61b544db5a18 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/get_rule_actions_saved_object.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/get_rule_actions_saved_object.ts @@ -4,6 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ +import { RuleAlertAction } from '../../../../common/detection_engine/types'; import { AlertServices } from '../../../../../../../plugins/alerting/server'; import { ruleActionsSavedObjectType } from './saved_object_mappings'; import { IRuleActionsAttributesSavedObjectAttributes } from './types'; @@ -17,7 +18,12 @@ interface GetRuleActionsSavedObject { export const getRuleActionsSavedObject = async ({ ruleAlertId, savedObjectsClient, -}: GetRuleActionsSavedObject) => { +}: GetRuleActionsSavedObject): Promise<{ + id: string; + actions: RuleAlertAction[]; + alertThrottle: string | null; + ruleThrottle: string; +} | null> => { const { saved_objects } = await savedObjectsClient.find< IRuleActionsAttributesSavedObjectAttributes >({ diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/update_or_create_rule_actions_saved_object.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/update_or_create_rule_actions_saved_object.ts index 3856f7525526..adc87150f89a 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/update_or_create_rule_actions_saved_object.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/update_or_create_rule_actions_saved_object.ts @@ -15,7 +15,7 @@ interface UpdateOrCreateRuleActionsSavedObject { ruleAlertId: string; savedObjectsClient: AlertServices['savedObjectsClient']; actions: RuleAlertAction[] | undefined; - throttle: string | undefined; + throttle: string | null | undefined; } export const updateOrCreateRuleActionsSavedObject = async ({ diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/update_rule_actions_saved_object.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/update_rule_actions_saved_object.ts index 56bce3c8b67a..a15005110c56 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/update_rule_actions_saved_object.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/update_rule_actions_saved_object.ts @@ -15,7 +15,7 @@ interface DeleteRuleActionsSavedObject { ruleAlertId: string; savedObjectsClient: AlertServices['savedObjectsClient']; actions: RuleAlertAction[] | undefined; - throttle: string | undefined; + throttle: string | null | undefined; } export const updateRuleActionsSavedObject = async ({ @@ -23,7 +23,12 @@ export const updateRuleActionsSavedObject = async ({ savedObjectsClient, actions, throttle, -}: DeleteRuleActionsSavedObject) => { +}: DeleteRuleActionsSavedObject): Promise<{ + ruleThrottle: string; + alertThrottle: string | null; + actions: RuleAlertAction[]; + id: string; +} | null> => { const ruleActions = await getRuleActionsSavedObject({ ruleAlertId, savedObjectsClient }); if (!ruleActions) return null; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/utils.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/utils.ts index 3c297ed84855..554c2b4a3dd9 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/utils.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rule_actions/utils.ts @@ -5,16 +5,27 @@ */ import { SavedObjectsUpdateResponse } from 'kibana/server'; +import { RuleAlertAction } from '../../../../common/detection_engine/types'; import { IRuleActionsAttributesSavedObjectAttributes } from './types'; -export const getThrottleOptions = (throttle = 'no_actions') => ({ - ruleThrottle: throttle, - alertThrottle: ['no_actions', 'rule'].includes(throttle) ? null : throttle, +export const getThrottleOptions = ( + throttle: string | undefined | null = 'no_actions' +): { + ruleThrottle: string; + alertThrottle: string | null; +} => ({ + ruleThrottle: throttle ?? 'no_actions', + alertThrottle: ['no_actions', 'rule'].includes(throttle ?? 'no_actions') ? null : throttle, }); export const getRuleActionsFromSavedObject = ( savedObject: SavedObjectsUpdateResponse -) => ({ +): { + id: string; + actions: RuleAlertAction[]; + alertThrottle: string | null; + ruleThrottle: string; +} => ({ id: savedObject.id, actions: savedObject.attributes.actions || [], alertThrottle: savedObject.attributes.alertThrottle || null, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/update_rule_actions.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/update_rule_actions.ts index ac10143c1d8d..e6ee1e6a2976 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/update_rule_actions.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/update_rule_actions.ts @@ -4,7 +4,11 @@ * you may not use this file except in compliance with the Elastic License. */ -import { AlertsClient, AlertServices } from '../../../../../../../plugins/alerting/server'; +import { + AlertsClient, + AlertServices, + PartialAlert, +} from '../../../../../../../plugins/alerting/server'; import { getRuleActionsSavedObject } from '../rule_actions/get_rule_actions_saved_object'; import { readRules } from './read_rules'; import { transformRuleToAlertAction } from '../../../../common/detection_engine/transform_actions'; @@ -19,7 +23,7 @@ export const updateRuleActions = async ({ alertsClient, savedObjectsClient, ruleAlertId, -}: UpdateRuleActions) => { +}: UpdateRuleActions): Promise => { const rule = await readRules({ alertsClient, id: ruleAlertId }); if (rule == null) { return null; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/update_rules_notifications.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/update_rules_notifications.ts index f70c591243a7..bb66a5ee1342 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/update_rules_notifications.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/update_rules_notifications.ts @@ -9,13 +9,14 @@ import { AlertsClient, AlertServices } from '../../../../../../../plugins/alerti import { updateOrCreateRuleActionsSavedObject } from '../rule_actions/update_or_create_rule_actions_saved_object'; import { updateNotifications } from '../notifications/update_notifications'; import { updateRuleActions } from './update_rule_actions'; +import { RuleActions } from '../rule_actions/types'; interface UpdateRulesNotifications { alertsClient: AlertsClient; savedObjectsClient: AlertServices['savedObjectsClient']; ruleAlertId: string; actions: RuleAlertAction[] | undefined; - throttle: string | undefined; + throttle: string | null | undefined; enabled: boolean; name: string; } @@ -28,7 +29,7 @@ export const updateRulesNotifications = async ({ enabled, name, throttle, -}: UpdateRulesNotifications) => { +}: UpdateRulesNotifications): Promise => { const ruleActions = await updateOrCreateRuleActionsSavedObject({ savedObjectsClient, ruleAlertId, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/signal_rule_alert_type.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/signal_rule_alert_type.test.ts index 11d31f180544..3d6f443ce60d 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/signal_rule_alert_type.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/signal_rule_alert_type.test.ts @@ -47,7 +47,7 @@ const getPayload = ( interval: ruleAlert.schedule.interval, name: ruleAlert.name, tags: ruleAlert.tags, - throttle: ruleAlert.throttle!, + throttle: ruleAlert.throttle, scrollSize: 10, scrollLock: '0', }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/signal_rule_alert_type.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/signal_rule_alert_type.ts index 417fcbbe42a5..faac4a547fc1 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/signal_rule_alert_type.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/signal_rule_alert_type.ts @@ -24,7 +24,10 @@ import { signalParamsSchema } from './signal_params_schema'; import { siemRuleActionGroups } from './siem_rule_action_groups'; import { findMlSignals } from './find_ml_signals'; import { bulkCreateMlSignals } from './bulk_create_ml_signals'; -import { scheduleNotificationActions } from '../notifications/schedule_notification_actions'; +import { + scheduleNotificationActions, + NotificationRuleTypeParams, +} from '../notifications/schedule_notification_actions'; import { ruleStatusServiceFactory } from './rule_status_service'; import { buildRuleMessageFactory } from './rule_messages'; import { ruleStatusSavedObjectsClientFactory } from './rule_status_saved_objects_client'; @@ -246,7 +249,7 @@ export const signalRulesAlertType = ({ if (result.success) { if (actions.length) { - const notificationRuleParams = { + const notificationRuleParams: NotificationRuleTypeParams = { ...ruleParams, name, id: savedObject.id, @@ -259,7 +262,7 @@ export const signalRulesAlertType = ({ from: fromInMs, to: toInMs, id: savedObject.id, - kibanaSiemAppUrl: meta?.kibanaSiemAppUrl as string, + kibanaSiemAppUrl: meta?.kibana_siem_app_url, }); logger.info( diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/types.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/types.ts index 543e8bf0619b..d4469351de54 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/types.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/signals/types.ts @@ -162,5 +162,5 @@ export interface AlertAttributes { } export interface RuleAlertAttributes extends AlertAttributes { - params: RuleAlertParams; + params: Omit & { ruleId: string }; } diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/types.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/types.ts index efa0a92cc573..d3fa98fd73d3 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/types.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/types.ts @@ -29,6 +29,11 @@ export interface ThreatParams { // We don't have the input types defined through io-ts just yet but as we being introducing types from there we will more and more remove // types and share them between input and output schema but have an input Rule Schema and an output Rule Schema. +export interface Meta { + [key: string]: {} | string | undefined | null; + kibana_siem_app_url?: string | undefined; +} + export interface RuleAlertParams { actions: RuleAlertAction[]; anomalyThreshold: number | undefined; @@ -51,7 +56,7 @@ export interface RuleAlertParams { query: string | undefined | null; references: string[]; savedId?: string | undefined | null; - meta: Record | undefined | null; + meta: Meta | undefined | null; severity: string; tags: string[]; to: string; @@ -60,7 +65,7 @@ export interface RuleAlertParams { threat: ThreatParams[] | undefined | null; type: RuleType; version: number; - throttle: string; + throttle: string | undefined | null; lists: ListsDefaultArraySchema | null | undefined; } From d212102bf56e18813efd6fc993b6f175ed0407ef Mon Sep 17 00:00:00 2001 From: Peter Pisljar Date: Wed, 8 Apr 2020 07:44:23 +0200 Subject: [PATCH 12/36] fixing region map click filter (#61949) --- .../core_plugins/region_map/public/region_map_visualization.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/legacy/core_plugins/region_map/public/region_map_visualization.js b/src/legacy/core_plugins/region_map/public/region_map_visualization.js index 25641ea76809..72f9d66e7d2b 100644 --- a/src/legacy/core_plugins/region_map/public/region_map_visualization.js +++ b/src/legacy/core_plugins/region_map/public/region_map_visualization.js @@ -164,7 +164,8 @@ export function createRegionMapVisualization({ serviceSettings, $injector, uiSet } this._choroplethLayer.on('select', event => { - const rowIndex = this._chartData.rows.findIndex(row => row[0] === event); + const { rows, columns } = this._chartData; + const rowIndex = rows.findIndex(row => row[columns[0].id] === event); this._vis.API.events.filter({ table: this._chartData, column: 0, From 028313a8fe9a03ec79182a9bd510245c872c4d6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20Fern=C3=A1ndez=20Haro?= Date: Wed, 8 Apr 2020 09:08:59 +0100 Subject: [PATCH 13/36] [Telemetry] Add possibility of registering exclusive collectors for each collection (#62665) * [Telemetry] Add posibility of regitering exclusive collectors for collections * [Telemetry] Filter unwanted fields from the kibana.os telemetry payload * Filter the collectors properly in bulkFetch * Move "kibana" usage collector from Monitoring to OSS Telemetry * Remove exclusivity of the "kibana_settings" collector * Unify "kibana_stats" collector from Monitoring and Legacy * Remove unused legacy constants * Proper type for UsageCollectionSetup in monitoring * Missed one undo * Add unit tests to the migrated collectors Co-authored-by: Elastic Machine --- .../collectors/get_ops_stats_collector.js | 56 -------- src/legacy/server/status/index.js | 2 - src/plugins/telemetry/common/constants.ts | 11 ++ .../telemetry/server/collectors/index.ts | 2 + .../kibana/get_saved_object_counts.test.ts | 61 ++++++++ .../kibana/get_saved_object_counts.ts | 82 +++++++++++ .../server/collectors/kibana/index.test.ts | 76 ++++++++++ .../server/collectors/kibana/index.ts} | 2 +- .../kibana/kibana_usage_collector.ts | 65 +++++++++ .../__snapshots__/index.test.ts.snap | 43 ++++++ .../server/collectors/ops_stats/index.test.ts | 132 ++++++++++++++++++ .../server/collectors/ops_stats/index.ts} | 2 +- .../ops_stats/ops_stats_collector.ts | 71 ++++++++++ src/plugins/telemetry/server/plugin.ts | 19 ++- .../server/telemetry_collection/get_kibana.ts | 4 + x-pack/plugins/monitoring/common/constants.ts | 6 - .../collectors/get_kibana_usage_collector.ts | 86 ------------ .../collectors/get_ops_stats_collector.ts | 46 ------ .../kibana_monitoring/collectors/index.ts | 14 +- x-pack/plugins/monitoring/server/plugin.ts | 7 +- 20 files changed, 568 insertions(+), 219 deletions(-) delete mode 100644 src/legacy/server/status/collectors/get_ops_stats_collector.js create mode 100644 src/plugins/telemetry/server/collectors/kibana/get_saved_object_counts.test.ts create mode 100644 src/plugins/telemetry/server/collectors/kibana/get_saved_object_counts.ts create mode 100644 src/plugins/telemetry/server/collectors/kibana/index.test.ts rename src/{legacy/server/status/constants.js => plugins/telemetry/server/collectors/kibana/index.ts} (90%) create mode 100644 src/plugins/telemetry/server/collectors/kibana/kibana_usage_collector.ts create mode 100644 src/plugins/telemetry/server/collectors/ops_stats/__snapshots__/index.test.ts.snap create mode 100644 src/plugins/telemetry/server/collectors/ops_stats/index.test.ts rename src/{legacy/server/status/collectors/index.js => plugins/telemetry/server/collectors/ops_stats/index.ts} (91%) create mode 100644 src/plugins/telemetry/server/collectors/ops_stats/ops_stats_collector.ts delete mode 100644 x-pack/plugins/monitoring/server/kibana_monitoring/collectors/get_kibana_usage_collector.ts delete mode 100644 x-pack/plugins/monitoring/server/kibana_monitoring/collectors/get_ops_stats_collector.ts diff --git a/src/legacy/server/status/collectors/get_ops_stats_collector.js b/src/legacy/server/status/collectors/get_ops_stats_collector.js deleted file mode 100644 index b733e2e721e3..000000000000 --- a/src/legacy/server/status/collectors/get_ops_stats_collector.js +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Licensed to Elasticsearch B.V. under one or more contributor - * license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright - * ownership. Elasticsearch B.V. licenses this file to you under - * the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import { KIBANA_STATS_TYPE } from '../constants'; -import { getKibanaInfoForStats } from '../lib'; - -/* - * Initialize a collector for Kibana Ops Stats - * - * NOTE this collector's fetch method returns the latest stats from the - * Hapi/Good/Even-Better ops event listener. Therefore, the stats reset - * every 5 seconds (the default value of the ops.interval configuration - * setting). That makes it geared for providing the latest "real-time" - * stats. In the long-term, fetch should return stats that constantly - * accumulate over the server's uptime for better machine readability. - * Since the data is captured, timestamped and stored, the historical - * data can provide "real-time" stats by calculating a derivative of - * the metrics. - * See PR comment in https://github.com/elastic/kibana/pull/20577/files#r202416647 - */ -export function getOpsStatsCollector(usageCollection, server, kbnServer) { - return usageCollection.makeStatsCollector({ - type: KIBANA_STATS_TYPE, - fetch: () => { - return { - kibana: getKibanaInfoForStats(server, kbnServer), - ...kbnServer.metrics, // latest metrics captured from the ops event listener in src/legacy/server/status/index - }; - }, - isReady: () => true, - ignoreForInternalUploader: true, // Ignore this one from internal uploader. A different stats collector is used there. - }); -} - -export function registerOpsStatsCollector(usageCollection, server, kbnServer) { - if (usageCollection) { - const collector = getOpsStatsCollector(usageCollection, server, kbnServer); - usageCollection.registerCollector(collector); - } -} diff --git a/src/legacy/server/status/index.js b/src/legacy/server/status/index.js index df02b3c45ec2..5bd1efa99eb2 100644 --- a/src/legacy/server/status/index.js +++ b/src/legacy/server/status/index.js @@ -20,7 +20,6 @@ import ServerStatus from './server_status'; import { Metrics } from './lib/metrics'; import { registerStatusPage, registerStatusApi, registerStatsApi } from './routes'; -import { registerOpsStatsCollector } from './collectors'; import Oppsy from 'oppsy'; import { cloneDeep } from 'lodash'; import { getOSInfo } from './lib/get_os_info'; @@ -28,7 +27,6 @@ import { getOSInfo } from './lib/get_os_info'; export function statusMixin(kbnServer, server, config) { kbnServer.status = new ServerStatus(kbnServer.server); const { usageCollection } = server.newPlatform.setup.plugins; - registerOpsStatsCollector(usageCollection, server, kbnServer); const metrics = new Metrics(config, server); diff --git a/src/plugins/telemetry/common/constants.ts b/src/plugins/telemetry/common/constants.ts index babd009143c5..fd3286289652 100644 --- a/src/plugins/telemetry/common/constants.ts +++ b/src/plugins/telemetry/common/constants.ts @@ -80,3 +80,14 @@ export const APPLICATION_USAGE_TYPE = 'application_usage'; * The type name used within the Monitoring index to publish management stats. */ export const KIBANA_STACK_MANAGEMENT_STATS_TYPE = 'stack_management'; + +/** + * The type name used to publish Kibana usage stats. + * NOTE: this string shows as-is in the stats API as a field name for the kibana usage stats + */ +export const KIBANA_USAGE_TYPE = 'kibana'; + +/** + * The type name used to publish Kibana usage stats in the formatted as bulk. + */ +export const KIBANA_STATS_TYPE = 'kibana_stats'; diff --git a/src/plugins/telemetry/server/collectors/index.ts b/src/plugins/telemetry/server/collectors/index.ts index 6eeda080bb3a..a874f8dd6202 100644 --- a/src/plugins/telemetry/server/collectors/index.ts +++ b/src/plugins/telemetry/server/collectors/index.ts @@ -22,3 +22,5 @@ export { registerUiMetricUsageCollector } from './ui_metric'; export { registerTelemetryPluginUsageCollector } from './telemetry_plugin'; export { registerManagementUsageCollector } from './management'; export { registerApplicationUsageCollector } from './application_usage'; +export { registerKibanaUsageCollector } from './kibana'; +export { registerOpsStatsCollector } from './ops_stats'; diff --git a/src/plugins/telemetry/server/collectors/kibana/get_saved_object_counts.test.ts b/src/plugins/telemetry/server/collectors/kibana/get_saved_object_counts.test.ts new file mode 100644 index 000000000000..a7681e176642 --- /dev/null +++ b/src/plugins/telemetry/server/collectors/kibana/get_saved_object_counts.test.ts @@ -0,0 +1,61 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { getSavedObjectsCounts } from './get_saved_object_counts'; + +describe('getSavedObjectsCounts', () => { + test('Get all the saved objects equal to 0 because no results were found', async () => { + const callCluster = jest.fn(() => ({})); + + const results = await getSavedObjectsCounts(callCluster as any, '.kibana'); + expect(results).toStrictEqual({ + dashboard: { total: 0 }, + visualization: { total: 0 }, + search: { total: 0 }, + index_pattern: { total: 0 }, + graph_workspace: { total: 0 }, + timelion_sheet: { total: 0 }, + }); + }); + + test('Merge the zeros with the results', async () => { + const callCluster = jest.fn(() => ({ + aggregations: { + types: { + buckets: [ + { key: 'dashboard', doc_count: 1 }, + { key: 'timelion-sheet', doc_count: 2 }, + { key: 'index-pattern', value: 2 }, // Malformed on purpose + { key: 'graph_workspace', doc_count: 3 }, // already snake_cased + ], + }, + }, + })); + + const results = await getSavedObjectsCounts(callCluster as any, '.kibana'); + expect(results).toStrictEqual({ + dashboard: { total: 1 }, + visualization: { total: 0 }, + search: { total: 0 }, + index_pattern: { total: 0 }, + graph_workspace: { total: 3 }, + timelion_sheet: { total: 2 }, + }); + }); +}); diff --git a/src/plugins/telemetry/server/collectors/kibana/get_saved_object_counts.ts b/src/plugins/telemetry/server/collectors/kibana/get_saved_object_counts.ts new file mode 100644 index 000000000000..804c8b0ed202 --- /dev/null +++ b/src/plugins/telemetry/server/collectors/kibana/get_saved_object_counts.ts @@ -0,0 +1,82 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/** + * Moved from /x-pack/plugins/monitoring/server/kibana_monitoring/collectors/get_kibana_usage_collector.ts + * + * The PR https://github.com/elastic/kibana/pull/62665 proved what the issue https://github.com/elastic/kibana/issues/58249 + * was claiming: the structure and payload for common telemetry bits differs between Monitoring and OSS/X-Pack collections. + * + * Unifying this logic from Monitoring that makes sense to have in OSS here and we will import it on the monitoring side to reuse it. + */ + +import { snakeCase } from 'lodash'; +import { APICaller } from 'kibana/server'; + +const TYPES = [ + 'dashboard', + 'visualization', + 'search', + 'index-pattern', + 'graph-workspace', + 'timelion-sheet', +]; + +export interface KibanaSavedObjectCounts { + [pluginName: string]: { + total: number; + }; +} + +export async function getSavedObjectsCounts( + callCluster: APICaller, + kibanaIndex: string // Typically '.kibana'. We might need a way to obtain it from the SavedObjects client (or the SavedObjects client to provide a way to run aggregations?) +): Promise { + const savedObjectCountSearchParams = { + index: kibanaIndex, + ignoreUnavailable: true, + filterPath: 'aggregations.types.buckets', + body: { + size: 0, + query: { + terms: { type: TYPES }, + }, + aggs: { + types: { + terms: { field: 'type', size: TYPES.length }, + }, + }, + }, + }; + const resp = await callCluster('search', savedObjectCountSearchParams); + const buckets: Array<{ key: string; doc_count: number }> = + resp.aggregations?.types?.buckets || []; + + // Initialise the object with all zeros for all the types + const allZeros: KibanaSavedObjectCounts = TYPES.reduce( + (acc, type) => ({ ...acc, [snakeCase(type)]: { total: 0 } }), + {} + ); + + // Add the doc_count from each bucket + return buckets.reduce( + (acc, { key, doc_count: total }) => (total ? { ...acc, [snakeCase(key)]: { total } } : acc), + allZeros + ); +} diff --git a/src/plugins/telemetry/server/collectors/kibana/index.test.ts b/src/plugins/telemetry/server/collectors/kibana/index.test.ts new file mode 100644 index 000000000000..91ede686ded3 --- /dev/null +++ b/src/plugins/telemetry/server/collectors/kibana/index.test.ts @@ -0,0 +1,76 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { UsageCollectionSetup } from '../../../../../plugins/usage_collection/server'; +import { pluginInitializerContextConfigMock } from '../../../../../core/server/mocks'; +// eslint-disable-next-line @kbn/eslint/no-restricted-paths +import { CollectorOptions } from '../../../../../plugins/usage_collection/server/collector/collector'; + +import { registerKibanaUsageCollector } from './'; + +describe('telemetry_kibana', () => { + let collector: CollectorOptions; + + const usageCollectionMock: jest.Mocked = { + makeUsageCollector: jest.fn().mockImplementation(config => (collector = config)), + registerCollector: jest.fn(), + } as any; + + const legacyConfig$ = pluginInitializerContextConfigMock({}).legacy.globalConfig$; + const callCluster = jest.fn().mockImplementation(() => ({})); + + beforeAll(() => registerKibanaUsageCollector(usageCollectionMock, legacyConfig$)); + afterAll(() => jest.clearAllTimers()); + + test('registered collector is set', () => { + expect(collector).not.toBeUndefined(); + expect(collector.type).toBe('kibana'); + }); + + test('fetch', async () => { + expect(await collector.fetch(callCluster)).toStrictEqual({ + index: '.kibana-tests', + dashboard: { total: 0 }, + visualization: { total: 0 }, + search: { total: 0 }, + index_pattern: { total: 0 }, + graph_workspace: { total: 0 }, + timelion_sheet: { total: 0 }, + }); + }); + + test('formatForBulkUpload', async () => { + const resultFromFetch = { + index: '.kibana-tests', + dashboard: { total: 0 }, + visualization: { total: 0 }, + search: { total: 0 }, + index_pattern: { total: 0 }, + graph_workspace: { total: 0 }, + timelion_sheet: { total: 0 }, + }; + + expect(collector.formatForBulkUpload!(resultFromFetch)).toStrictEqual({ + type: 'kibana_stats', + payload: { + usage: resultFromFetch, + }, + }); + }); +}); diff --git a/src/legacy/server/status/constants.js b/src/plugins/telemetry/server/collectors/kibana/index.ts similarity index 90% rename from src/legacy/server/status/constants.js rename to src/plugins/telemetry/server/collectors/kibana/index.ts index 3bb23749bae8..695d972346b8 100644 --- a/src/legacy/server/status/constants.js +++ b/src/plugins/telemetry/server/collectors/kibana/index.ts @@ -17,4 +17,4 @@ * under the License. */ -export const KIBANA_STATS_TYPE = 'oss_kibana_stats'; // kibana stats per 5s intervals +export { registerKibanaUsageCollector } from './kibana_usage_collector'; diff --git a/src/plugins/telemetry/server/collectors/kibana/kibana_usage_collector.ts b/src/plugins/telemetry/server/collectors/kibana/kibana_usage_collector.ts new file mode 100644 index 000000000000..ccf6f7b1033c --- /dev/null +++ b/src/plugins/telemetry/server/collectors/kibana/kibana_usage_collector.ts @@ -0,0 +1,65 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { Observable } from 'rxjs'; +import { take } from 'rxjs/operators'; +import { SharedGlobalConfig } from 'kibana/server'; +import { UsageCollectionSetup } from 'src/plugins/usage_collection/server'; +import { KIBANA_STATS_TYPE, KIBANA_USAGE_TYPE } from '../../../common/constants'; +import { getSavedObjectsCounts } from './get_saved_object_counts'; + +export function getKibanaUsageCollector( + usageCollection: UsageCollectionSetup, + legacyConfig$: Observable +) { + return usageCollection.makeUsageCollector({ + type: KIBANA_USAGE_TYPE, + isReady: () => true, + async fetch(callCluster) { + const { + kibana: { index }, + } = await legacyConfig$.pipe(take(1)).toPromise(); + return { + index, + ...(await getSavedObjectsCounts(callCluster, index)), + }; + }, + + /* + * Format the response data into a model for internal upload + * 1. Make this data part of the "kibana_stats" type + * 2. Organize the payload in the usage namespace of the data payload (usage.index, etc) + */ + formatForBulkUpload: result => { + return { + type: KIBANA_STATS_TYPE, + payload: { + usage: result, + }, + }; + }, + }); +} + +export function registerKibanaUsageCollector( + usageCollection: UsageCollectionSetup, + legacyConfig$: Observable +) { + usageCollection.registerCollector(getKibanaUsageCollector(usageCollection, legacyConfig$)); +} diff --git a/src/plugins/telemetry/server/collectors/ops_stats/__snapshots__/index.test.ts.snap b/src/plugins/telemetry/server/collectors/ops_stats/__snapshots__/index.test.ts.snap new file mode 100644 index 000000000000..678237ffb6ea --- /dev/null +++ b/src/plugins/telemetry/server/collectors/ops_stats/__snapshots__/index.test.ts.snap @@ -0,0 +1,43 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`telemetry_ops_stats should return something when there is a metric 1`] = ` +Object { + "concurrent_connections": 20, + "os": Object { + "load": Object { + "15m": 3, + "1m": 0.5, + "5m": 1, + }, + "memory": Object { + "free_in_bytes": 10, + "total_in_bytes": 10, + "used_in_bytes": 10, + }, + "platform": "darwin", + "platformRelease": "test", + "uptime_in_millis": 1000, + }, + "process": Object { + "event_loop_delay": 10, + "memory": Object { + "heap": Object { + "size_limit": 0, + "total_in_bytes": 0, + "used_in_bytes": 0, + }, + "resident_set_size_in_bytes": 0, + }, + "uptime_in_millis": 1000, + }, + "requests": Object { + "disconnects": 10, + "total": 100, + }, + "response_times": Object { + "average": 100, + "max": 200, + }, + "timestamp": Any, +} +`; diff --git a/src/plugins/telemetry/server/collectors/ops_stats/index.test.ts b/src/plugins/telemetry/server/collectors/ops_stats/index.test.ts new file mode 100644 index 000000000000..92e0e40776eb --- /dev/null +++ b/src/plugins/telemetry/server/collectors/ops_stats/index.test.ts @@ -0,0 +1,132 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { Subject } from 'rxjs'; +import { UsageCollectionSetup } from '../../../../../plugins/usage_collection/server'; +// eslint-disable-next-line @kbn/eslint/no-restricted-paths +import { CollectorOptions } from '../../../../../plugins/usage_collection/server/collector/collector'; + +import { registerOpsStatsCollector } from './'; +import { OpsMetrics } from '../../../../../core/server'; + +describe('telemetry_ops_stats', () => { + let collector: CollectorOptions; + + const usageCollectionMock: jest.Mocked = { + makeStatsCollector: jest.fn().mockImplementation(config => (collector = config)), + registerCollector: jest.fn(), + } as any; + + const metrics$ = new Subject(); + const callCluster = jest.fn(); + + const metric: OpsMetrics = { + process: { + memory: { + heap: { + total_in_bytes: 0, + used_in_bytes: 0, + size_limit: 0, + }, + resident_set_size_in_bytes: 0, + }, + event_loop_delay: 10, + pid: 10, + uptime_in_millis: 1000, + }, + os: { + platform: 'darwin', + platformRelease: 'test', + load: { + '1m': 0.5, + '5m': 1, + '15m': 3, + }, + memory: { + total_in_bytes: 10, + free_in_bytes: 10, + used_in_bytes: 10, + }, + uptime_in_millis: 1000, + }, + response_times: { avg_in_millis: 100, max_in_millis: 200 }, + requests: { + disconnects: 10, + total: 100, + statusCodes: { 200: 100 }, + }, + concurrent_connections: 20, + }; + + beforeAll(() => registerOpsStatsCollector(usageCollectionMock, metrics$)); + afterAll(() => jest.clearAllTimers()); + + test('registered collector is set', () => { + expect(collector).not.toBeUndefined(); + expect(collector.type).toBe('kibana_stats'); + }); + + test('isReady should return false because no metrics have been provided yet', () => { + expect(collector.isReady()).toBe(false); + }); + + test('should return something when there is a metric', async () => { + metrics$.next(metric); + expect(collector.isReady()).toBe(true); + expect(await collector.fetch(callCluster)).toMatchSnapshot({ + concurrent_connections: 20, + os: { + load: { + '15m': 3, + '1m': 0.5, + '5m': 1, + }, + memory: { + free_in_bytes: 10, + total_in_bytes: 10, + used_in_bytes: 10, + }, + platform: 'darwin', + platformRelease: 'test', + uptime_in_millis: 1000, + }, + process: { + event_loop_delay: 10, + memory: { + heap: { + size_limit: 0, + total_in_bytes: 0, + used_in_bytes: 0, + }, + resident_set_size_in_bytes: 0, + }, + uptime_in_millis: 1000, + }, + requests: { + disconnects: 10, + total: 100, + }, + response_times: { + average: 100, + max: 200, + }, + timestamp: expect.any(String), + }); + }); +}); diff --git a/src/legacy/server/status/collectors/index.js b/src/plugins/telemetry/server/collectors/ops_stats/index.ts similarity index 91% rename from src/legacy/server/status/collectors/index.js rename to src/plugins/telemetry/server/collectors/ops_stats/index.ts index 92d9e601bbb3..443a25749d20 100644 --- a/src/legacy/server/status/collectors/index.js +++ b/src/plugins/telemetry/server/collectors/ops_stats/index.ts @@ -17,4 +17,4 @@ * under the License. */ -export { registerOpsStatsCollector } from './get_ops_stats_collector'; +export { registerOpsStatsCollector } from './ops_stats_collector'; diff --git a/src/plugins/telemetry/server/collectors/ops_stats/ops_stats_collector.ts b/src/plugins/telemetry/server/collectors/ops_stats/ops_stats_collector.ts new file mode 100644 index 000000000000..4967e20006dd --- /dev/null +++ b/src/plugins/telemetry/server/collectors/ops_stats/ops_stats_collector.ts @@ -0,0 +1,71 @@ +/* + * Licensed to Elasticsearch B.V. under one or more contributor + * license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright + * ownership. Elasticsearch B.V. licenses this file to you under + * the Apache License, Version 2.0 (the "License"); you may + * not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import { Observable } from 'rxjs'; +import { cloneDeep } from 'lodash'; +import moment from 'moment'; +import { OpsMetrics } from 'kibana/server'; +import { UsageCollectionSetup } from 'src/plugins/usage_collection/server'; +import { KIBANA_STATS_TYPE } from '../../../common/constants'; + +interface OpsStatsMetrics extends Omit { + timestamp: string; + response_times: { + average: number; + max: number; + }; +} + +/** + * Initialize a collector for Kibana Ops Stats + */ +export function getOpsStatsCollector( + usageCollection: UsageCollectionSetup, + metrics$: Observable +) { + let lastMetrics: OpsStatsMetrics | null = null; + metrics$.subscribe(_metrics => { + const metrics = cloneDeep(_metrics); + // Ensure we only include the same data that Metricbeat collection would get + delete metrics.process.pid; + const responseTimes = { + average: metrics.response_times.avg_in_millis, + max: metrics.response_times.max_in_millis, + }; + delete metrics.requests.statusCodes; + lastMetrics = { + ...metrics, + response_times: responseTimes, + timestamp: moment.utc().toISOString(), + }; + }); + + return usageCollection.makeStatsCollector({ + type: KIBANA_STATS_TYPE, + isReady: () => !!lastMetrics, + fetch: () => lastMetrics, + }); +} + +export function registerOpsStatsCollector( + usageCollection: UsageCollectionSetup, + metrics$: Observable +) { + usageCollection.registerCollector(getOpsStatsCollector(usageCollection, metrics$)); +} diff --git a/src/plugins/telemetry/server/plugin.ts b/src/plugins/telemetry/server/plugin.ts index 77036b4ea7dd..1df6a665e4d7 100644 --- a/src/plugins/telemetry/server/plugin.ts +++ b/src/plugins/telemetry/server/plugin.ts @@ -32,6 +32,8 @@ import { SavedObjectsClient, Plugin, Logger, + SharedGlobalConfig, + MetricsServiceSetup, } from '../../../core/server'; import { registerRoutes } from './routes'; import { registerCollection } from './telemetry_collection'; @@ -41,6 +43,8 @@ import { registerTelemetryPluginUsageCollector, registerManagementUsageCollector, registerApplicationUsageCollector, + registerKibanaUsageCollector, + registerOpsStatsCollector, } from './collectors'; import { TelemetryConfigType } from './config'; import { FetcherTask } from './fetcher'; @@ -61,6 +65,7 @@ export class TelemetryPlugin implements Plugin { private readonly logger: Logger; private readonly currentKibanaVersion: string; private readonly config$: Observable; + private readonly legacyConfig$: Observable; private readonly isDev: boolean; private readonly fetcherTask: FetcherTask; private savedObjectsClient?: ISavedObjectsRepository; @@ -71,6 +76,7 @@ export class TelemetryPlugin implements Plugin { this.isDev = initializerContext.env.mode.dev; this.currentKibanaVersion = initializerContext.env.packageInfo.version; this.config$ = initializerContext.config.create(); + this.legacyConfig$ = initializerContext.config.legacy.globalConfig$; this.fetcherTask = new FetcherTask({ ...initializerContext, logger: this.logger, @@ -78,15 +84,15 @@ export class TelemetryPlugin implements Plugin { } public async setup( - core: CoreSetup, + { elasticsearch, http, savedObjects, metrics }: CoreSetup, { usageCollection, telemetryCollectionManager }: TelemetryPluginsSetup ) { const currentKibanaVersion = this.currentKibanaVersion; const config$ = this.config$; const isDev = this.isDev; - registerCollection(telemetryCollectionManager, core.elasticsearch.dataClient); - const router = core.http.createRouter(); + registerCollection(telemetryCollectionManager, elasticsearch.dataClient); + const router = http.createRouter(); registerRoutes({ config$, @@ -96,8 +102,8 @@ export class TelemetryPlugin implements Plugin { telemetryCollectionManager, }); - this.registerMappings(opts => core.savedObjects.registerType(opts)); - this.registerUsageCollectors(usageCollection, opts => core.savedObjects.registerType(opts)); + this.registerMappings(opts => savedObjects.registerType(opts)); + this.registerUsageCollectors(usageCollection, metrics, opts => savedObjects.registerType(opts)); } public async start(core: CoreStart, { telemetryCollectionManager }: TelemetryPluginsStart) { @@ -153,11 +159,14 @@ export class TelemetryPlugin implements Plugin { private registerUsageCollectors( usageCollection: UsageCollectionSetup, + metrics: MetricsServiceSetup, registerType: SavedObjectsRegisterType ) { const getSavedObjectsClient = () => this.savedObjectsClient; const getUiSettingsClient = () => this.uiSettingsClient; + registerOpsStatsCollector(usageCollection, metrics.getOpsMetrics$()); + registerKibanaUsageCollector(usageCollection, this.legacyConfig$); registerTelemetryPluginUsageCollector(usageCollection, { currentKibanaVersion: this.currentKibanaVersion, config$: this.config$, diff --git a/src/plugins/telemetry/server/telemetry_collection/get_kibana.ts b/src/plugins/telemetry/server/telemetry_collection/get_kibana.ts index 86c6731e11d3..a17f1b8232a2 100644 --- a/src/plugins/telemetry/server/telemetry_collection/get_kibana.ts +++ b/src/plugins/telemetry/server/telemetry_collection/get_kibana.ts @@ -55,6 +55,10 @@ export function handleKibanaStats( ...kibanaStats.os, }; const formattedOsStats = Object.entries(os).reduce((acc, [key, value]) => { + if (typeof value !== 'string') { + // There are new fields reported now from the "os" property like "load", "memory", etc. They are objects. + return acc; + } return { ...acc, [`${key}s`]: [{ [key]: value, count: 1 }], diff --git a/x-pack/plugins/monitoring/common/constants.ts b/x-pack/plugins/monitoring/common/constants.ts index 3a4c7b71dcd0..edd6142455df 100644 --- a/x-pack/plugins/monitoring/common/constants.ts +++ b/x-pack/plugins/monitoring/common/constants.ts @@ -28,12 +28,6 @@ export const KIBANA_STATS_TYPE_MONITORING = 'kibana_stats'; // similar to KIBANA * @type {string} */ export const KIBANA_SETTINGS_TYPE = 'kibana_settings'; -/** - * The type name used within the Monitoring index to publish Kibana usage stats. - * NOTE: this string shows as-is in the stats API as a field name for the kibana usage stats - * @type {string} - */ -export const KIBANA_USAGE_TYPE = 'kibana'; /* * Key for the localStorage service diff --git a/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/get_kibana_usage_collector.ts b/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/get_kibana_usage_collector.ts deleted file mode 100644 index 2c40ac56e19e..000000000000 --- a/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/get_kibana_usage_collector.ts +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - -import { get, snakeCase } from 'lodash'; -import { CallCluster } from 'src/legacy/core_plugins/elasticsearch'; -import { KIBANA_USAGE_TYPE, KIBANA_STATS_TYPE_MONITORING } from '../../../common/constants'; - -const TYPES = [ - 'dashboard', - 'visualization', - 'search', - 'index-pattern', - 'graph-workspace', - 'timelion-sheet', -]; - -/** - * Fetches saved object counts by querying the .kibana index - */ -export function getKibanaUsageCollector(usageCollection: any, kibanaIndex: string) { - return usageCollection.makeUsageCollector({ - type: KIBANA_USAGE_TYPE, - isReady: () => true, - async fetch(callCluster: CallCluster) { - const savedObjectCountSearchParams = { - index: kibanaIndex, - ignoreUnavailable: true, - filterPath: 'aggregations.types.buckets', - body: { - size: 0, - query: { - terms: { type: TYPES }, - }, - aggs: { - types: { - terms: { field: 'type', size: TYPES.length }, - }, - }, - }, - }; - - const resp = await callCluster('search', savedObjectCountSearchParams); - const buckets: any = get(resp, 'aggregations.types.buckets', []); - - // get the doc_count from each bucket - const bucketCounts = buckets.reduce( - (acc: any, bucket: any) => ({ - ...acc, - [bucket.key]: bucket.doc_count, - }), - {} - ); - - return { - index: kibanaIndex, - ...TYPES.reduce( - (acc, type) => ({ - // combine the bucketCounts and 0s for types that don't have documents - ...acc, - [snakeCase(type)]: { - total: bucketCounts[type] || 0, - }, - }), - {} - ), - }; - }, - - /* - * Format the response data into a model for internal upload - * 1. Make this data part of the "kibana_stats" type - * 2. Organize the payload in the usage namespace of the data payload (usage.index, etc) - */ - formatForBulkUpload: (result: any) => { - return { - type: KIBANA_STATS_TYPE_MONITORING, - payload: { - usage: result, - }, - }; - }, - }); -} diff --git a/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/get_ops_stats_collector.ts b/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/get_ops_stats_collector.ts deleted file mode 100644 index 85357f786ddc..000000000000 --- a/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/get_ops_stats_collector.ts +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one - * or more contributor license agreements. Licensed under the Elastic License; - * you may not use this file except in compliance with the Elastic License. - */ - -import { Observable } from 'rxjs'; -import { cloneDeep } from 'lodash'; -import moment from 'moment'; -import { OpsMetrics } from 'kibana/server'; -import { UsageCollectionSetup } from 'src/plugins/usage_collection/server'; -import { KIBANA_STATS_TYPE_MONITORING } from '../../../common/constants'; - -interface MonitoringOpsMetrics extends OpsMetrics { - timestamp: string; -} - -/* - * Initialize a collector for Kibana Ops Stats - */ -export function getOpsStatsCollector( - usageCollection: UsageCollectionSetup, - metrics$: Observable -) { - let lastMetrics: MonitoringOpsMetrics | null = null; - metrics$.subscribe(_metrics => { - const metrics: any = cloneDeep(_metrics); - // Ensure we only include the same data that Metricbeat collection would get - delete metrics.process.pid; - metrics.response_times = { - average: metrics.response_times.avg_in_millis, - max: metrics.response_times.max_in_millis, - }; - delete metrics.requests.statusCodes; - lastMetrics = { - ...metrics, - timestamp: moment.utc().toISOString(), - }; - }); - - return usageCollection.makeStatsCollector({ - type: KIBANA_STATS_TYPE_MONITORING, - isReady: () => !!lastMetrics, - fetch: () => lastMetrics, - }); -} diff --git a/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/index.ts b/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/index.ts index e41b1512f1b2..dcd35b0d323e 100644 --- a/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/index.ts +++ b/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/index.ts @@ -3,20 +3,14 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ -import { Observable } from 'rxjs'; -import { OpsMetrics } from 'kibana/server'; -import { getKibanaUsageCollector } from './get_kibana_usage_collector'; -import { getOpsStatsCollector } from './get_ops_stats_collector'; + +import { UsageCollectionSetup } from 'src/plugins/usage_collection/server'; import { getSettingsCollector } from './get_settings_collector'; import { MonitoringConfig } from '../../config'; export function registerCollectors( - usageCollection: any, - config: MonitoringConfig, - opsMetrics$: Observable, - kibanaIndex: string + usageCollection: UsageCollectionSetup, + config: MonitoringConfig ) { - usageCollection.registerCollector(getOpsStatsCollector(usageCollection, opsMetrics$)); - usageCollection.registerCollector(getKibanaUsageCollector(usageCollection, kibanaIndex)); usageCollection.registerCollector(getSettingsCollector(usageCollection, config)); } diff --git a/x-pack/plugins/monitoring/server/plugin.ts b/x-pack/plugins/monitoring/server/plugin.ts index 784226dca66f..920accd17ec8 100644 --- a/x-pack/plugins/monitoring/server/plugin.ts +++ b/x-pack/plugins/monitoring/server/plugin.ts @@ -177,12 +177,7 @@ export class Plugin { // Register collector objects for stats to show up in the APIs if (plugins.usageCollection) { - registerCollectors( - plugins.usageCollection, - config, - core.metrics.getOpsMetrics$(), - get(legacyConfig, 'kibana.index') - ); + registerCollectors(plugins.usageCollection, config); } // If collection is enabled, create the bulk uploader From 267f22c2ee174af6026773b04d782faf565d654c Mon Sep 17 00:00:00 2001 From: Mikhail Shustov Date: Wed, 8 Apr 2020 10:21:06 +0200 Subject: [PATCH 14/36] 2Mb --> 53kB (#62781) --- x-pack/plugins/watcher/public/plugin.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/x-pack/plugins/watcher/public/plugin.ts b/x-pack/plugins/watcher/public/plugin.ts index 9bee7e60273e..6de21bc27d48 100644 --- a/x-pack/plugins/watcher/public/plugin.ts +++ b/x-pack/plugins/watcher/public/plugin.ts @@ -12,7 +12,6 @@ import { FeatureCatalogueCategory } from '../../../../src/plugins/home/public'; import { LicenseStatus } from '../common/types/license_status'; import { ILicense } from '../../licensing/public'; -import { TimeBuckets } from './legacy'; import { PLUGIN } from '../common/constants'; import { Dependencies } from './types'; @@ -41,6 +40,7 @@ export class WatcherUIPlugin implements Plugin { const [core] = await getStartServices(); const { i18n: i18nDep, docLinks, savedObjects } = core; const { boot } = await import('./application/boot'); + const { TimeBuckets } = await import('./legacy'); return boot({ // Skip the first license status, because that's already been used to determine From 314c4f782f434dc799a732036f273bbc9d5c5f3a Mon Sep 17 00:00:00 2001 From: Daniil Suleiman <31325372+sulemanof@users.noreply.github.com> Date: Wed, 8 Apr 2020 12:00:13 +0300 Subject: [PATCH 15/36] [NP] Vis Default Editor plugin (#62475) * Move the default_editor to NP * Fix paths * Import styles through the visualize * Other fixes * Fix ip_ranges exhaustive-deps array * Fix filters and extend bounds * Other fixes * Fix date_ranges tests * Use useMount on first render Co-authored-by: Elastic Machine --- .eslintrc.js | 20 ---- .i18nrc.json | 2 +- .../public/components/editor/controls_tab.tsx | 2 +- .../public/components/editor/options_tab.tsx | 2 +- .../kibana/public/visualize/_index.scss | 3 + .../public/visualize/kibana_services.ts | 2 +- .../kibana/public/visualize/plugin.ts | 2 +- .../public/components/region_map_options.tsx | 2 +- .../region_map/public/region_map_type.js | 2 +- .../public/components/tile_map_options.tsx | 2 +- .../tile_map/public/tile_map_type.js | 2 +- .../core_plugins/vis_default_editor/index.ts | 42 -------- .../vis_default_editor/package.json | 4 - .../public/markdown_options.tsx | 2 +- .../vis_type_markdown/public/markdown_vis.ts | 2 +- .../public/settings_options.tsx | 2 +- .../public/components/metric_vis_options.tsx | 2 +- .../public/metric_vis_fn.test.ts | 4 - .../public/metric_vis_type.test.ts | 4 - .../vis_type_metric/public/metric_vis_type.ts | 2 +- .../public/components/table_vis_options.tsx | 2 +- .../vis_type_table/public/table_vis_type.ts | 2 +- .../public/components/tag_cloud_options.tsx | 2 +- .../public/tag_cloud_type.ts | 2 +- .../public/components/timelion_interval.tsx | 2 +- .../public/timelion_options.tsx | 2 +- .../public/timelion_vis_type.tsx | 2 +- .../public/components/vega_vis_editor.tsx | 2 +- .../vis_type_vega/public/vega_type.ts | 3 +- .../vis_type_vislib/public/area.ts | 2 +- .../components/common/basic_options.tsx | 2 +- .../public/components/common/color_ranges.tsx | 5 +- .../public/components/common/color_schema.tsx | 2 +- .../components/common/validation_wrapper.tsx | 2 +- .../public/components/options/gauge/index.tsx | 2 +- .../components/options/heatmap/index.tsx | 2 +- .../options/heatmap/labels_panel.tsx | 2 +- .../metrics_axes/category_axis_panel.tsx | 2 +- .../public/components/options/pie.tsx | 2 +- .../options/point_series/grid_panel.tsx | 2 +- .../vis_type_vislib/public/gauge.ts | 2 +- .../vis_type_vislib/public/goal.ts | 2 +- .../vis_type_vislib/public/heatmap.ts | 2 +- .../vis_type_vislib/public/histogram.ts | 2 +- .../vis_type_vislib/public/horizontal_bar.ts | 2 +- .../vis_type_vislib/public/line.ts | 2 +- .../vis_type_vislib/public/pie.ts | 2 +- .../public/utils/common_config.tsx | 2 +- src/plugins/vis_default_editor/README.md | 16 ++++ .../vis_default_editor/public/_agg.scss | 0 .../public/_agg_params.scss | 0 .../vis_default_editor/public/_default.scss | 0 .../vis_default_editor/public/_sidebar.scss | 0 .../__snapshots__/agg.test.tsx.snap | 0 .../__snapshots__/agg_group.test.tsx.snap | 0 .../public/components/agg.test.tsx | 0 .../public/components/agg.tsx | 3 +- .../public/components/agg_add.tsx | 2 +- .../public/components/agg_common_props.ts | 0 .../public/components/agg_group.test.tsx | 0 .../public/components/agg_group.tsx | 3 +- .../components/agg_group_helper.test.ts | 0 .../public/components/agg_group_helper.tsx | 0 .../public/components/agg_group_state.tsx | 0 .../public/components/agg_param.tsx | 0 .../public/components/agg_param_props.ts | 0 .../public/components/agg_params.test.tsx | 4 +- .../public/components/agg_params.tsx | 4 +- .../components/agg_params_helper.test.ts | 0 .../public/components/agg_params_helper.ts | 2 +- .../public/components/agg_params_map.ts | 7 +- .../public/components/agg_params_state.ts | 0 .../public/components/agg_select.tsx | 2 +- .../extended_bounds.test.tsx.snap | 0 .../__snapshots__/metric_agg.test.tsx.snap | 0 .../controls/__snapshots__/size.test.tsx.snap | 0 .../__snapshots__/top_aggregate.test.tsx.snap | 0 .../components/controls/agg_control_props.tsx | 0 .../components/controls/agg_utils.test.tsx | 0 .../components/controls/auto_precision.tsx | 0 .../controls/components/from_to_list.tsx | 74 ++++++++------- .../controls/components/input_list.tsx | 95 +++++++++++-------- .../controls/components/mask_list.tsx | 72 +++++++------- .../__snapshots__/number_list.test.tsx.snap | 0 .../__snapshots__/number_row.test.tsx.snap | 0 .../controls/components/number_list/index.ts | 0 .../number_list/number_list.test.tsx | 0 .../components/number_list/number_list.tsx | 4 +- .../number_list/number_row.test.tsx | 0 .../components/number_list/number_row.tsx | 0 .../components/number_list/range.test.ts | 1 - .../controls/components/number_list/range.ts | 0 .../components/number_list/utils.test.ts | 0 .../controls/components/number_list/utils.ts | 0 .../components/controls/date_ranges.test.tsx | 4 +- .../components/controls/date_ranges.tsx | 35 ++++--- .../components/controls/drop_partials.tsx | 0 .../controls/extended_bounds.test.tsx | 0 .../components/controls/extended_bounds.tsx | 0 .../public/components/controls/field.test.tsx | 0 .../public/components/controls/field.tsx | 8 +- .../public/components/controls/filter.tsx | 2 +- .../public/components/controls/filters.tsx | 9 +- .../controls/has_extended_bounds.tsx | 19 +++- .../public/components/controls/index.ts | 0 .../components/controls/ip_range_type.tsx | 0 .../public/components/controls/ip_ranges.tsx | 28 ++++-- .../controls/is_filtered_by_collar.tsx | 0 .../components/controls/metric_agg.test.tsx | 0 .../public/components/controls/metric_agg.tsx | 0 .../components/controls/min_doc_count.tsx | 0 .../components/controls/missing_bucket.tsx | 9 +- .../components/controls/number_interval.tsx | 2 +- .../public/components/controls/order.tsx | 2 +- .../components/controls/order_agg.test.tsx | 0 .../public/components/controls/order_agg.tsx | 4 +- .../public/components/controls/order_by.tsx | 10 +- .../components/controls/other_bucket.tsx | 0 .../components/controls/percentile_ranks.tsx | 0 .../components/controls/percentiles.test.tsx | 0 .../components/controls/percentiles.tsx | 0 .../public/components/controls/precision.tsx | 2 +- .../controls/radius_ratio_option.tsx | 7 +- .../components/controls/range_control.tsx | 0 .../public/components/controls/ranges.tsx | 67 +++++++------ .../public/components/controls/raw_json.tsx | 0 .../components/controls/rows_or_columns.tsx | 0 .../components/controls/scale_metrics.tsx | 0 .../public/components/controls/size.test.tsx | 0 .../public/components/controls/size.tsx | 2 +- .../public/components/controls/string.tsx | 2 +- .../public/components/controls/sub_agg.tsx | 5 +- .../public/components/controls/sub_metric.tsx | 9 +- .../public/components/controls/switch.tsx | 0 .../public/components/controls/test_utils.ts | 0 .../components/controls/time_interval.tsx | 4 +- .../controls/top_aggregate.test.tsx | 0 .../components/controls/top_aggregate.tsx | 4 +- .../public/components/controls/top_field.tsx | 0 .../public/components/controls/top_size.tsx | 0 .../components/controls/top_sort_field.tsx | 0 .../components/controls/use_geocentroid.tsx | 0 .../components/controls/utils/agg_utils.ts | 0 .../public/components/controls/utils/index.ts | 0 .../controls/utils/inline_comp_wrapper.tsx | 0 .../strings/comma_separated_list.test.ts | 0 .../utils/strings/comma_separated_list.ts | 0 .../controls/utils/strings/index.ts | 0 .../controls/utils/strings/prose.test.ts | 0 .../controls/utils/strings/prose.ts | 0 .../components/controls/utils/use_handlers.ts | 0 .../public/components/sidebar/controls.tsx | 2 +- .../public/components/sidebar/data_tab.tsx | 4 +- .../public/components/sidebar/index.ts | 0 .../public/components/sidebar/navbar.tsx | 0 .../public/components/sidebar/sidebar.tsx | 7 +- .../components/sidebar/sidebar_title.tsx | 4 +- .../components/sidebar/state/actions.ts | 0 .../components/sidebar/state/constants.ts | 0 .../sidebar/state/editor_form_state.ts | 0 .../public/components/sidebar/state/index.ts | 2 +- .../components/sidebar/state/reducers.ts | 2 +- .../public/components/utils/editor_config.ts | 0 .../public/components/utils/index.ts | 0 .../public/default_editor.tsx | 4 +- .../public/default_editor_controller.tsx | 6 +- .../vis_default_editor/public/editor_size.ts | 0 .../vis_default_editor/public/index.scss | 0 .../vis_default_editor/public/index.ts | 2 + .../vis_default_editor/public/schemas.ts | 2 +- .../vis_default_editor/public/types.ts | 0 .../vis_default_editor/public/utils.test.ts | 0 .../vis_default_editor/public/utils.ts | 0 .../public/vis_options_props.tsx | 0 .../public/vis_type_agg_filter.ts | 2 +- .../self_changing_editor.tsx | 2 +- 176 files changed, 367 insertions(+), 360 deletions(-) delete mode 100644 src/legacy/core_plugins/vis_default_editor/index.ts delete mode 100644 src/legacy/core_plugins/vis_default_editor/package.json create mode 100644 src/plugins/vis_default_editor/README.md rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/_agg.scss (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/_agg_params.scss (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/_default.scss (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/_sidebar.scss (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/__snapshots__/agg.test.tsx.snap (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/__snapshots__/agg_group.test.tsx.snap (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg.test.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg.tsx (98%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_add.tsx (98%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_common_props.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_group.test.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_group.tsx (97%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_group_helper.test.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_group_helper.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_group_state.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_param.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_param_props.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_params.test.tsx (96%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_params.tsx (98%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_params_helper.test.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_params_helper.ts (99%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_params_map.ts (96%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_params_state.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/agg_select.tsx (98%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/__snapshots__/extended_bounds.test.tsx.snap (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/__snapshots__/metric_agg.test.tsx.snap (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/__snapshots__/size.test.tsx.snap (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/__snapshots__/top_aggregate.test.tsx.snap (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/agg_control_props.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/agg_utils.test.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/auto_precision.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/from_to_list.tsx (68%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/input_list.tsx (75%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/mask_list.tsx (62%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/number_list/__snapshots__/number_list.test.tsx.snap (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/number_list/__snapshots__/number_row.test.tsx.snap (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/number_list/index.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/number_list/number_list.test.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/number_list/number_list.tsx (98%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/number_list/number_row.test.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/number_list/number_row.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/number_list/range.test.ts (98%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/number_list/range.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/number_list/utils.test.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/components/number_list/utils.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/date_ranges.test.tsx (95%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/date_ranges.tsx (90%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/drop_partials.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/extended_bounds.test.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/extended_bounds.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/field.test.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/field.tsx (97%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/filter.tsx (99%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/filters.tsx (96%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/has_extended_bounds.tsx (73%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/index.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/ip_range_type.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/ip_ranges.tsx (79%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/is_filtered_by_collar.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/metric_agg.test.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/metric_agg.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/min_doc_count.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/missing_bucket.tsx (93%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/number_interval.tsx (99%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/order.tsx (98%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/order_agg.test.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/order_agg.tsx (97%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/order_by.tsx (94%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/other_bucket.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/percentile_ranks.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/percentiles.test.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/percentiles.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/precision.tsx (95%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/radius_ratio_option.tsx (95%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/range_control.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/ranges.tsx (91%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/raw_json.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/rows_or_columns.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/scale_metrics.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/size.test.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/size.tsx (98%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/string.tsx (98%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/sub_agg.tsx (97%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/sub_metric.tsx (96%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/switch.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/test_utils.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/time_interval.tsx (98%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/top_aggregate.test.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/top_aggregate.tsx (97%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/top_field.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/top_size.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/top_sort_field.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/use_geocentroid.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/utils/agg_utils.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/utils/index.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/utils/inline_comp_wrapper.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/utils/strings/comma_separated_list.test.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/utils/strings/comma_separated_list.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/utils/strings/index.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/utils/strings/prose.test.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/utils/strings/prose.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/controls/utils/use_handlers.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/sidebar/controls.tsx (98%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/sidebar/data_tab.tsx (97%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/sidebar/index.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/sidebar/navbar.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/sidebar/sidebar.tsx (96%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/sidebar/sidebar_title.tsx (97%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/sidebar/state/actions.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/sidebar/state/constants.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/sidebar/state/editor_form_state.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/sidebar/state/index.ts (96%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/sidebar/state/reducers.ts (99%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/utils/editor_config.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/components/utils/index.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/default_editor.tsx (94%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/default_editor_controller.tsx (92%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/editor_size.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/index.scss (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/index.ts (97%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/schemas.ts (96%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/types.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/utils.test.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/utils.ts (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/vis_options_props.tsx (100%) rename src/{legacy/core_plugins => plugins}/vis_default_editor/public/vis_type_agg_filter.ts (97%) diff --git a/.eslintrc.js b/.eslintrc.js index 3c173e524400..2ce6d279d93a 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -69,26 +69,6 @@ module.exports = { 'jsx-a11y/no-onchange': 'off', }, }, - { - files: ['src/legacy/core_plugins/expressions/**/*.{js,ts,tsx}'], - rules: { - 'react-hooks/exhaustive-deps': 'off', - }, - }, - { - files: [ - 'src/legacy/core_plugins/vis_default_editor/public/components/controls/**/*.{ts,tsx}', - ], - rules: { - 'react-hooks/exhaustive-deps': 'off', - }, - }, - { - files: ['src/legacy/ui/public/vis/**/*.{js,ts,tsx}'], - rules: { - 'react-hooks/exhaustive-deps': 'off', - }, - }, { files: ['src/plugins/es_ui_shared/**/*.{js,ts,tsx}'], rules: { diff --git a/.i18nrc.json b/.i18nrc.json index c293b3103a39..3b0b40b40792 100644 --- a/.i18nrc.json +++ b/.i18nrc.json @@ -43,7 +43,7 @@ "tileMap": "src/legacy/core_plugins/tile_map", "timelion": ["src/legacy/core_plugins/timelion", "src/legacy/core_plugins/vis_type_timelion", "src/plugins/timelion"], "uiActions": "src/plugins/ui_actions", - "visDefaultEditor": "src/legacy/core_plugins/vis_default_editor", + "visDefaultEditor": "src/plugins/vis_default_editor", "visTypeMarkdown": "src/legacy/core_plugins/vis_type_markdown", "visTypeMetric": "src/legacy/core_plugins/vis_type_metric", "visTypeTable": "src/legacy/core_plugins/vis_type_table", diff --git a/src/legacy/core_plugins/input_control_vis/public/components/editor/controls_tab.tsx b/src/legacy/core_plugins/input_control_vis/public/components/editor/controls_tab.tsx index 029e1f149d05..b7114f1029ef 100644 --- a/src/legacy/core_plugins/input_control_vis/public/components/editor/controls_tab.tsx +++ b/src/legacy/core_plugins/input_control_vis/public/components/editor/controls_tab.tsx @@ -30,7 +30,7 @@ import { EuiSelect, } from '@elastic/eui'; -import { VisOptionsProps } from 'src/legacy/core_plugins/vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { IIndexPattern } from 'src/plugins/data/public'; import { ControlEditor } from './control_editor'; import { diff --git a/src/legacy/core_plugins/input_control_vis/public/components/editor/options_tab.tsx b/src/legacy/core_plugins/input_control_vis/public/components/editor/options_tab.tsx index 95b14619c341..cdff6cabad8b 100644 --- a/src/legacy/core_plugins/input_control_vis/public/components/editor/options_tab.tsx +++ b/src/legacy/core_plugins/input_control_vis/public/components/editor/options_tab.tsx @@ -23,7 +23,7 @@ import { EuiForm, EuiFormRow, EuiSwitch } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; import { EuiSwitchEvent } from '@elastic/eui'; -import { VisOptionsProps } from 'src/legacy/core_plugins/vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; interface OptionsTabParams { updateFiltersOnChange: boolean; diff --git a/src/legacy/core_plugins/kibana/public/visualize/_index.scss b/src/legacy/core_plugins/kibana/public/visualize/_index.scss index 0632831578bd..079d82936bb5 100644 --- a/src/legacy/core_plugins/kibana/public/visualize/_index.scss +++ b/src/legacy/core_plugins/kibana/public/visualize/_index.scss @@ -1,2 +1,5 @@ // Visualize plugin styles @import 'np_ready/index'; + +// should be removed while moving the visualize into NP +@import '../../../../../plugins/vis_default_editor/public/index' diff --git a/src/legacy/core_plugins/kibana/public/visualize/kibana_services.ts b/src/legacy/core_plugins/kibana/public/visualize/kibana_services.ts index addc608efd57..d5440c4677d8 100644 --- a/src/legacy/core_plugins/kibana/public/visualize/kibana_services.ts +++ b/src/legacy/core_plugins/kibana/public/visualize/kibana_services.ts @@ -36,7 +36,7 @@ import { VisualizationsStart } from '../../../../../plugins/visualizations/publi import { SavedVisualizations } from './np_ready/types'; import { UsageCollectionSetup } from '../../../../../plugins/usage_collection/public'; import { KibanaLegacyStart } from '../../../../../plugins/kibana_legacy/public'; -import { DefaultEditorController } from '../../../vis_default_editor/public'; +import { DefaultEditorController } from '../../../../../plugins/vis_default_editor/public'; export interface VisualizeKibanaServices { pluginInitializerContext: PluginInitializerContext; diff --git a/src/legacy/core_plugins/kibana/public/visualize/plugin.ts b/src/legacy/core_plugins/kibana/public/visualize/plugin.ts index 81d8458010f1..4ffbc307c69a 100644 --- a/src/legacy/core_plugins/kibana/public/visualize/plugin.ts +++ b/src/legacy/core_plugins/kibana/public/visualize/plugin.ts @@ -51,7 +51,7 @@ import { HomePublicPluginSetup, } from '../../../../../plugins/home/public'; import { UsageCollectionSetup } from '../../../../../plugins/usage_collection/public'; -import { DefaultEditorController } from '../../../vis_default_editor/public'; +import { DefaultEditorController } from '../../../../../plugins/vis_default_editor/public'; export interface VisualizePluginStartDependencies { data: DataPublicPluginStart; diff --git a/src/legacy/core_plugins/region_map/public/components/region_map_options.tsx b/src/legacy/core_plugins/region_map/public/components/region_map_options.tsx index 4219e2e71515..61cfbf00ded9 100644 --- a/src/legacy/core_plugins/region_map/public/components/region_map_options.tsx +++ b/src/legacy/core_plugins/region_map/public/components/region_map_options.tsx @@ -23,7 +23,7 @@ import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; import { FileLayerField, VectorLayer, ServiceSettings } from 'ui/vis/map/service_settings'; -import { VisOptionsProps } from 'src/legacy/core_plugins/vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { NumberInputOption, SelectOption, SwitchOption } from '../../../vis_type_vislib/public'; import { WmsOptions } from '../../../tile_map/public/components/wms_options'; import { RegionMapVisParams } from '../types'; diff --git a/src/legacy/core_plugins/region_map/public/region_map_type.js b/src/legacy/core_plugins/region_map/public/region_map_type.js index 4faa3f92abb5..9174b03cf843 100644 --- a/src/legacy/core_plugins/region_map/public/region_map_type.js +++ b/src/legacy/core_plugins/region_map/public/region_map_type.js @@ -22,7 +22,7 @@ import { mapToLayerWithId } from './util'; import { createRegionMapVisualization } from './region_map_visualization'; import { RegionMapOptions } from './components/region_map_options'; import { truncatedColorSchemas } from '../../../../plugins/charts/public'; -import { Schemas } from '../../vis_default_editor/public'; +import { Schemas } from '../../../../plugins/vis_default_editor/public'; // TODO: reference to TILE_MAP plugin should be removed import { ORIGIN } from '../../tile_map/common/origin'; diff --git a/src/legacy/core_plugins/tile_map/public/components/tile_map_options.tsx b/src/legacy/core_plugins/tile_map/public/components/tile_map_options.tsx index 168f56b771b7..9169647aa2ae 100644 --- a/src/legacy/core_plugins/tile_map/public/components/tile_map_options.tsx +++ b/src/legacy/core_plugins/tile_map/public/components/tile_map_options.tsx @@ -21,7 +21,7 @@ import React, { useEffect } from 'react'; import { EuiPanel, EuiSpacer } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -import { VisOptionsProps } from 'src/legacy/core_plugins/vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { BasicOptions, RangeOption, diff --git a/src/legacy/core_plugins/tile_map/public/tile_map_type.js b/src/legacy/core_plugins/tile_map/public/tile_map_type.js index 39d39a4c8f8f..fe82ad5c7352 100644 --- a/src/legacy/core_plugins/tile_map/public/tile_map_type.js +++ b/src/legacy/core_plugins/tile_map/public/tile_map_type.js @@ -22,7 +22,7 @@ import { i18n } from '@kbn/i18n'; import { convertToGeoJson } from 'ui/vis/map/convert_to_geojson'; -import { Schemas } from '../../vis_default_editor/public'; +import { Schemas } from '../../../../plugins/vis_default_editor/public'; import { createTileMapVisualization } from './tile_map_visualization'; import { TileMapOptions } from './components/tile_map_options'; import { MapTypes } from './map_types'; diff --git a/src/legacy/core_plugins/vis_default_editor/index.ts b/src/legacy/core_plugins/vis_default_editor/index.ts deleted file mode 100644 index ee7b5ee4a62f..000000000000 --- a/src/legacy/core_plugins/vis_default_editor/index.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Licensed to Elasticsearch B.V. under one or more contributor - * license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright - * ownership. Elasticsearch B.V. licenses this file to you under - * the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -import { resolve } from 'path'; -import { Legacy } from 'kibana'; - -import { LegacyPluginApi, LegacyPluginInitializer } from '../../../../src/legacy/types'; - -const vidDefaultEditorPluginInitializer: LegacyPluginInitializer = ({ Plugin }: LegacyPluginApi) => - new Plugin({ - id: 'vis_default_editor', - require: [], - publicDir: resolve(__dirname, 'public'), - uiExports: { - styleSheetPaths: resolve(__dirname, 'public/index.scss'), - }, - init: (server: Legacy.Server) => ({}), - config(Joi: any) { - return Joi.object({ - enabled: Joi.boolean().default(true), - }).default(); - }, - } as Legacy.PluginSpecOptions); - -// eslint-disable-next-line import/no-default-export -export default vidDefaultEditorPluginInitializer; diff --git a/src/legacy/core_plugins/vis_default_editor/package.json b/src/legacy/core_plugins/vis_default_editor/package.json deleted file mode 100644 index 77dcaff41da6..000000000000 --- a/src/legacy/core_plugins/vis_default_editor/package.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "vis_default_editor", - "version": "kibana" -} diff --git a/src/legacy/core_plugins/vis_type_markdown/public/markdown_options.tsx b/src/legacy/core_plugins/vis_type_markdown/public/markdown_options.tsx index 8a4297d3b814..a6349793619a 100644 --- a/src/legacy/core_plugins/vis_type_markdown/public/markdown_options.tsx +++ b/src/legacy/core_plugins/vis_type_markdown/public/markdown_options.tsx @@ -30,7 +30,7 @@ import { } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; -import { VisOptionsProps } from 'src/legacy/core_plugins/vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { MarkdownVisParams } from './types'; function MarkdownOptions({ stateParams, setValue }: VisOptionsProps) { diff --git a/src/legacy/core_plugins/vis_type_markdown/public/markdown_vis.ts b/src/legacy/core_plugins/vis_type_markdown/public/markdown_vis.ts index b84d9638eb97..57ea6d9c9bb3 100644 --- a/src/legacy/core_plugins/vis_type_markdown/public/markdown_vis.ts +++ b/src/legacy/core_plugins/vis_type_markdown/public/markdown_vis.ts @@ -22,7 +22,7 @@ import { i18n } from '@kbn/i18n'; import { MarkdownVisWrapper } from './markdown_vis_controller'; import { MarkdownOptions } from './markdown_options'; import { SettingsOptions } from './settings_options'; -import { DefaultEditorSize } from '../../vis_default_editor/public'; +import { DefaultEditorSize } from '../../../../plugins/vis_default_editor/public'; export const markdownVisDefinition = { name: 'markdown', diff --git a/src/legacy/core_plugins/vis_type_markdown/public/settings_options.tsx b/src/legacy/core_plugins/vis_type_markdown/public/settings_options.tsx index ac1d4bcc82ce..552fd6337355 100644 --- a/src/legacy/core_plugins/vis_type_markdown/public/settings_options.tsx +++ b/src/legacy/core_plugins/vis_type_markdown/public/settings_options.tsx @@ -21,7 +21,7 @@ import React from 'react'; import { EuiPanel } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -import { VisOptionsProps } from 'src/legacy/core_plugins/vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { RangeOption, SwitchOption } from '../../vis_type_vislib/public'; import { MarkdownVisParams } from './types'; diff --git a/src/legacy/core_plugins/vis_type_metric/public/components/metric_vis_options.tsx b/src/legacy/core_plugins/vis_type_metric/public/components/metric_vis_options.tsx index 661f16d6497b..5c3032511f09 100644 --- a/src/legacy/core_plugins/vis_type_metric/public/components/metric_vis_options.tsx +++ b/src/legacy/core_plugins/vis_type_metric/public/components/metric_vis_options.tsx @@ -29,7 +29,7 @@ import { import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; -import { VisOptionsProps } from 'src/legacy/core_plugins/vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { ColorModes, ColorRanges, diff --git a/src/legacy/core_plugins/vis_type_metric/public/metric_vis_fn.test.ts b/src/legacy/core_plugins/vis_type_metric/public/metric_vis_fn.test.ts index 22c32895d680..4094cd4eff06 100644 --- a/src/legacy/core_plugins/vis_type_metric/public/metric_vis_fn.test.ts +++ b/src/legacy/core_plugins/vis_type_metric/public/metric_vis_fn.test.ts @@ -23,10 +23,6 @@ import { functionWrapper } from '../../../../plugins/expressions/common/expressi jest.mock('ui/new_platform'); -jest.mock('../../vis_default_editor/public', () => ({ - Schemas: class {}, -})); - describe('interpreter/functions#metric', () => { const fn = functionWrapper(createMetricVisFn()); const context = { diff --git a/src/legacy/core_plugins/vis_type_metric/public/metric_vis_type.test.ts b/src/legacy/core_plugins/vis_type_metric/public/metric_vis_type.test.ts index 459da4755630..706693eff100 100644 --- a/src/legacy/core_plugins/vis_type_metric/public/metric_vis_type.test.ts +++ b/src/legacy/core_plugins/vis_type_metric/public/metric_vis_type.test.ts @@ -22,10 +22,6 @@ import { MetricVisComponent } from './components/metric_vis_component'; jest.mock('ui/new_platform'); -jest.mock('../../vis_default_editor/public', () => ({ - Schemas: class {}, -})); - describe('metric_vis - createMetricVisTypeDefinition', () => { it('has metric vis component set', () => { const def = createMetricVisTypeDefinition(); diff --git a/src/legacy/core_plugins/vis_type_metric/public/metric_vis_type.ts b/src/legacy/core_plugins/vis_type_metric/public/metric_vis_type.ts index f29164f7e540..3bbb8964122e 100644 --- a/src/legacy/core_plugins/vis_type_metric/public/metric_vis_type.ts +++ b/src/legacy/core_plugins/vis_type_metric/public/metric_vis_type.ts @@ -24,7 +24,7 @@ import { MetricVisOptions } from './components/metric_vis_options'; import { ColorModes } from '../../vis_type_vislib/public'; import { ColorSchemas, colorSchemas } from '../../../../plugins/charts/public'; import { AggGroupNames } from '../../../../plugins/data/public'; -import { Schemas } from '../../vis_default_editor/public'; +import { Schemas } from '../../../../plugins/vis_default_editor/public'; export const createMetricVisTypeDefinition = () => ({ name: 'metric', diff --git a/src/legacy/core_plugins/vis_type_table/public/components/table_vis_options.tsx b/src/legacy/core_plugins/vis_type_table/public/components/table_vis_options.tsx index 30a952627316..d01ab31e0a84 100644 --- a/src/legacy/core_plugins/vis_type_table/public/components/table_vis_options.tsx +++ b/src/legacy/core_plugins/vis_type_table/public/components/table_vis_options.tsx @@ -23,7 +23,7 @@ import { EuiIconTip, EuiPanel } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; -import { VisOptionsProps } from 'src/legacy/core_plugins/vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { search } from '../../../../../plugins/data/public'; import { NumberInputOption, SwitchOption, SelectOption } from '../../../vis_type_vislib/public'; import { TableVisParams } from '../types'; diff --git a/src/legacy/core_plugins/vis_type_table/public/table_vis_type.ts b/src/legacy/core_plugins/vis_type_table/public/table_vis_type.ts index d26e860e5127..43816121bc23 100644 --- a/src/legacy/core_plugins/vis_type_table/public/table_vis_type.ts +++ b/src/legacy/core_plugins/vis_type_table/public/table_vis_type.ts @@ -19,7 +19,7 @@ import { i18n } from '@kbn/i18n'; import { AggGroupNames } from '../../../../plugins/data/public'; -import { Schemas } from '../../vis_default_editor/public'; +import { Schemas } from '../../../../plugins/vis_default_editor/public'; import { Vis } from '../../../../plugins/visualizations/public'; import { tableVisResponseHandler } from './table_vis_response_handler'; // @ts-ignore diff --git a/src/legacy/core_plugins/vis_type_tagcloud/public/components/tag_cloud_options.tsx b/src/legacy/core_plugins/vis_type_tagcloud/public/components/tag_cloud_options.tsx index a9e816f70cf5..80e4e1de7dda 100644 --- a/src/legacy/core_plugins/vis_type_tagcloud/public/components/tag_cloud_options.tsx +++ b/src/legacy/core_plugins/vis_type_tagcloud/public/components/tag_cloud_options.tsx @@ -20,8 +20,8 @@ import React from 'react'; import { EuiPanel } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { ValidatedDualRange } from '../../../../../../src/plugins/kibana_react/public'; -import { VisOptionsProps } from '../../../vis_default_editor/public'; import { SelectOption, SwitchOption } from '../../../vis_type_vislib/public'; import { TagCloudVisParams } from '../types'; diff --git a/src/legacy/core_plugins/vis_type_tagcloud/public/tag_cloud_type.ts b/src/legacy/core_plugins/vis_type_tagcloud/public/tag_cloud_type.ts index 5a8cc3004a31..b7dfa62c93fb 100644 --- a/src/legacy/core_plugins/vis_type_tagcloud/public/tag_cloud_type.ts +++ b/src/legacy/core_plugins/vis_type_tagcloud/public/tag_cloud_type.ts @@ -19,7 +19,7 @@ import { i18n } from '@kbn/i18n'; -import { Schemas } from '../../vis_default_editor/public'; +import { Schemas } from '../../../../plugins/vis_default_editor/public'; import { TagCloudOptions } from './components/tag_cloud_options'; diff --git a/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_interval.tsx b/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_interval.tsx index 6e29b111d422..8a8e1b22fb78 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_interval.tsx +++ b/src/legacy/core_plugins/vis_type_timelion/public/components/timelion_interval.tsx @@ -23,7 +23,7 @@ import { i18n } from '@kbn/i18n'; import { search } from '../../../../../plugins/data/public'; const { isValidEsInterval } = search.aggs; -import { useValidation } from '../../../vis_default_editor/public'; +import { useValidation } from '../../../../../plugins/vis_default_editor/public'; const intervalOptions = [ { diff --git a/src/legacy/core_plugins/vis_type_timelion/public/timelion_options.tsx b/src/legacy/core_plugins/vis_type_timelion/public/timelion_options.tsx index b7c40e15c11f..afffcf7ccaf7 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/timelion_options.tsx +++ b/src/legacy/core_plugins/vis_type_timelion/public/timelion_options.tsx @@ -20,9 +20,9 @@ import React, { useCallback } from 'react'; import { EuiPanel } from '@elastic/eui'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { VisParams } from './timelion_vis_fn'; import { TimelionInterval, TimelionExpressionInput } from './components'; -import { VisOptionsProps } from '../../vis_default_editor/public'; function TimelionOptions({ stateParams, setValue, setValidity }: VisOptionsProps) { const setInterval = useCallback((value: VisParams['interval']) => setValue('interval', value), [ diff --git a/src/legacy/core_plugins/vis_type_timelion/public/timelion_vis_type.tsx b/src/legacy/core_plugins/vis_type_timelion/public/timelion_vis_type.tsx index 667955300409..5be77b3e51a6 100644 --- a/src/legacy/core_plugins/vis_type_timelion/public/timelion_vis_type.tsx +++ b/src/legacy/core_plugins/vis_type_timelion/public/timelion_vis_type.tsx @@ -21,7 +21,7 @@ import React from 'react'; import { i18n } from '@kbn/i18n'; import { KibanaContextProvider } from '../../../../plugins/kibana_react/public'; -import { DefaultEditorSize } from '../../vis_default_editor/public'; +import { DefaultEditorSize } from '../../../../plugins/vis_default_editor/public'; import { getTimelionRequestHandler } from './helpers/timelion_request_handler'; import { TimelionVisComponent, TimelionVisComponentProp } from './components'; import { TimelionOptions } from './timelion_options'; diff --git a/src/legacy/core_plugins/vis_type_vega/public/components/vega_vis_editor.tsx b/src/legacy/core_plugins/vis_type_vega/public/components/vega_vis_editor.tsx index 707a6830b5ba..31144065d7b4 100644 --- a/src/legacy/core_plugins/vis_type_vega/public/components/vega_vis_editor.tsx +++ b/src/legacy/core_plugins/vis_type_vega/public/components/vega_vis_editor.tsx @@ -24,11 +24,11 @@ import compactStringify from 'json-stringify-pretty-compact'; import hjson from 'hjson'; import { i18n } from '@kbn/i18n'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { getNotifications } from '../services'; import { VisParams } from '../vega_fn'; import { VegaHelpMenu } from './vega_help_menu'; import { VegaActionsMenu } from './vega_actions_menu'; -import { VisOptionsProps } from '../../../vis_default_editor/public'; const aceOptions = { maxLines: Infinity, diff --git a/src/legacy/core_plugins/vis_type_vega/public/vega_type.ts b/src/legacy/core_plugins/vis_type_vega/public/vega_type.ts index b0ec90d2c378..5d9ed5c8df91 100644 --- a/src/legacy/core_plugins/vis_type_vega/public/vega_type.ts +++ b/src/legacy/core_plugins/vis_type_vega/public/vega_type.ts @@ -18,8 +18,7 @@ */ import { i18n } from '@kbn/i18n'; -// @ts-ignore -import { DefaultEditorSize } from '../../vis_default_editor/public'; +import { DefaultEditorSize } from '../../../../plugins/vis_default_editor/public'; import { VegaVisualizationDependencies } from './plugin'; import { VegaVisEditor } from './components'; import { defaultFeedbackMessage } from '../../../../plugins/kibana_utils/common'; diff --git a/src/legacy/core_plugins/vis_type_vislib/public/area.ts b/src/legacy/core_plugins/vis_type_vislib/public/area.ts index e79555470298..68decacaaa04 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/area.ts +++ b/src/legacy/core_plugins/vis_type_vislib/public/area.ts @@ -24,7 +24,7 @@ import { palettes } from '@elastic/eui/lib/services'; import { euiPaletteColorBlind } from '@elastic/eui/lib/services'; import { AggGroupNames } from '../../../../plugins/data/public'; -import { Schemas } from '../../vis_default_editor/public'; +import { Schemas } from '../../../../plugins/vis_default_editor/public'; import { Positions, ChartTypes, diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/common/basic_options.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/common/basic_options.tsx index 1138f66d21cf..baf3e8ecd1b2 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/common/basic_options.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/common/basic_options.tsx @@ -20,7 +20,7 @@ import React from 'react'; import { i18n } from '@kbn/i18n'; -import { VisOptionsProps } from '../../../../vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { SwitchOption } from './switch'; import { SelectOption } from './select'; diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/common/color_ranges.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/common/color_ranges.tsx index 2c9b1b543e8c..84c70f10b12d 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/common/color_ranges.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/common/color_ranges.tsx @@ -22,7 +22,10 @@ import { last } from 'lodash'; import { i18n } from '@kbn/i18n'; -import { RangeValues, RangesParamEditor } from '../../../../vis_default_editor/public'; +import { + RangeValues, + RangesParamEditor, +} from '../../../../../../plugins/vis_default_editor/public'; export type SetColorRangeValue = (paramName: string, value: RangeValues[]) => void; diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/common/color_schema.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/common/color_schema.tsx index 06ce0a2b4af6..35d7f7b13235 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/common/color_schema.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/common/color_schema.tsx @@ -22,7 +22,7 @@ import { i18n } from '@kbn/i18n'; import { EuiLink, EuiText } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; -import { VisOptionsProps } from '../../../../vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { SelectOption } from './select'; import { SwitchOption } from './switch'; import { ColorSchemaVislibParams } from '../../types'; diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/common/validation_wrapper.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/common/validation_wrapper.tsx index c069d4c93566..718056fd8549 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/common/validation_wrapper.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/common/validation_wrapper.tsx @@ -19,7 +19,7 @@ import React, { useEffect, useState, useCallback } from 'react'; -import { VisOptionsProps } from '../../../../vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; export interface ValidationVisOptionsProps extends VisOptionsProps { setMultipleValidity(paramName: string, isValid: boolean): void; diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/options/gauge/index.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/options/gauge/index.tsx index 706035a7b814..6109b548f941 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/options/gauge/index.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/options/gauge/index.tsx @@ -20,7 +20,7 @@ import React, { useCallback } from 'react'; import { EuiSpacer } from '@elastic/eui'; -import { VisOptionsProps } from '../../../../../vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { GaugeVisParams } from '../../../gauge'; import { RangesPanel } from './ranges_panel'; import { StylePanel } from './style_panel'; diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/options/heatmap/index.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/options/heatmap/index.tsx index 452b9ed9bdbb..715b5902b69d 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/options/heatmap/index.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/options/heatmap/index.tsx @@ -23,7 +23,7 @@ import { EuiPanel, EuiSpacer, EuiTitle } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; -import { VisOptionsProps } from '../../../../../vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { BasicOptions, ColorRanges, diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/options/heatmap/labels_panel.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/options/heatmap/labels_panel.tsx index c74f0ef765c8..38811bd83645 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/options/heatmap/labels_panel.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/options/heatmap/labels_panel.tsx @@ -23,7 +23,7 @@ import { EuiColorPicker, EuiFormRow, EuiPanel, EuiSpacer, EuiTitle } from '@elas import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; -import { VisOptionsProps } from '../../../../../vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { ValueAxis } from '../../../types'; import { HeatmapVisParams } from '../../../heatmap'; import { SwitchOption } from '../../common'; diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/category_axis_panel.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/category_axis_panel.tsx index 049df0cdd77b..915885388640 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/category_axis_panel.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/category_axis_panel.tsx @@ -23,7 +23,7 @@ import { EuiPanel, EuiTitle, EuiSpacer } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; -import { VisOptionsProps } from 'src/legacy/core_plugins/vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { Axis } from '../../../types'; import { SelectOption, SwitchOption } from '../../common'; import { LabelOptions, SetAxisLabel } from './label_options'; diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/options/pie.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/options/pie.tsx index 2182edafb3eb..4c0be456aad6 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/options/pie.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/options/pie.tsx @@ -22,7 +22,7 @@ import { EuiPanel, EuiTitle, EuiSpacer } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; -import { VisOptionsProps } from '../../../../vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { BasicOptions, TruncateLabelsOption, SwitchOption } from '../common'; import { PieVisParams } from '../../pie'; diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/options/point_series/grid_panel.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/options/point_series/grid_panel.tsx index db9acafac305..bb2b3f8fddb4 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/options/point_series/grid_panel.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/options/point_series/grid_panel.tsx @@ -22,7 +22,7 @@ import { EuiPanel, EuiTitle, EuiSpacer } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; -import { VisOptionsProps } from '../../../../../vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { SelectOption, SwitchOption } from '../../common'; import { BasicVislibParams, ValueAxis } from '../../../types'; diff --git a/src/legacy/core_plugins/vis_type_vislib/public/gauge.ts b/src/legacy/core_plugins/vis_type_vislib/public/gauge.ts index 4610bd37db5f..7ad821dbf2f3 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/gauge.ts +++ b/src/legacy/core_plugins/vis_type_vislib/public/gauge.ts @@ -19,7 +19,7 @@ import { i18n } from '@kbn/i18n'; -import { RangeValues, Schemas } from '../../vis_default_editor/public'; +import { RangeValues, Schemas } from '../../../../plugins/vis_default_editor/public'; import { AggGroupNames } from '../../../../plugins/data/public'; import { GaugeOptions } from './components/options'; import { getGaugeCollections, Alignments, ColorModes, GaugeTypes } from './utils/collections'; diff --git a/src/legacy/core_plugins/vis_type_vislib/public/goal.ts b/src/legacy/core_plugins/vis_type_vislib/public/goal.ts index c918128d01f1..6c311bebe071 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/goal.ts +++ b/src/legacy/core_plugins/vis_type_vislib/public/goal.ts @@ -25,7 +25,7 @@ import { createVislibVisController } from './vis_controller'; import { VisTypeVislibDependencies } from './plugin'; import { ColorSchemas } from '../../../../plugins/charts/public'; import { AggGroupNames } from '../../../../plugins/data/public'; -import { Schemas } from '../../vis_default_editor/public'; +import { Schemas } from '../../../../plugins/vis_default_editor/public'; export const createGoalVisTypeDefinition = (deps: VisTypeVislibDependencies) => ({ name: 'goal', diff --git a/src/legacy/core_plugins/vis_type_vislib/public/heatmap.ts b/src/legacy/core_plugins/vis_type_vislib/public/heatmap.ts index 39a583f3c964..88b4f0fcaf87 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/heatmap.ts +++ b/src/legacy/core_plugins/vis_type_vislib/public/heatmap.ts @@ -19,7 +19,7 @@ import { i18n } from '@kbn/i18n'; -import { RangeValues, Schemas } from '../../vis_default_editor/public'; +import { RangeValues, Schemas } from '../../../../plugins/vis_default_editor/public'; import { AggGroupNames } from '../../../../plugins/data/public'; import { AxisTypes, getHeatmapCollections, Positions, ScaleTypes } from './utils/collections'; import { HeatmapOptions } from './components/options'; diff --git a/src/legacy/core_plugins/vis_type_vislib/public/histogram.ts b/src/legacy/core_plugins/vis_type_vislib/public/histogram.ts index 15ef369e5150..54ec8f98203e 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/histogram.ts +++ b/src/legacy/core_plugins/vis_type_vislib/public/histogram.ts @@ -24,7 +24,7 @@ import { palettes } from '@elastic/eui/lib/services'; import { euiPaletteColorBlind } from '@elastic/eui/lib/services'; import { AggGroupNames } from '../../../../plugins/data/public'; -import { Schemas } from '../../vis_default_editor/public'; +import { Schemas } from '../../../../plugins/vis_default_editor/public'; import { Positions, ChartTypes, diff --git a/src/legacy/core_plugins/vis_type_vislib/public/horizontal_bar.ts b/src/legacy/core_plugins/vis_type_vislib/public/horizontal_bar.ts index 8b5811628855..dc47252ccd44 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/horizontal_bar.ts +++ b/src/legacy/core_plugins/vis_type_vislib/public/horizontal_bar.ts @@ -24,7 +24,7 @@ import { palettes } from '@elastic/eui/lib/services'; import { euiPaletteColorBlind } from '@elastic/eui/lib/services'; import { AggGroupNames } from '../../../../plugins/data/public'; -import { Schemas } from '../../vis_default_editor/public'; +import { Schemas } from '../../../../plugins/vis_default_editor/public'; import { Positions, ChartTypes, diff --git a/src/legacy/core_plugins/vis_type_vislib/public/line.ts b/src/legacy/core_plugins/vis_type_vislib/public/line.ts index ac4cda869fe2..885ab295d11e 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/line.ts +++ b/src/legacy/core_plugins/vis_type_vislib/public/line.ts @@ -24,7 +24,7 @@ import { palettes } from '@elastic/eui/lib/services'; import { euiPaletteColorBlind } from '@elastic/eui/lib/services'; import { AggGroupNames } from '../../../../plugins/data/public'; -import { Schemas } from '../../vis_default_editor/public'; +import { Schemas } from '../../../../plugins/vis_default_editor/public'; import { Positions, ChartTypes, diff --git a/src/legacy/core_plugins/vis_type_vislib/public/pie.ts b/src/legacy/core_plugins/vis_type_vislib/public/pie.ts index 0f1bd93f5b5b..2774836baa38 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/pie.ts +++ b/src/legacy/core_plugins/vis_type_vislib/public/pie.ts @@ -20,7 +20,7 @@ import { i18n } from '@kbn/i18n'; import { AggGroupNames } from '../../../../plugins/data/public'; -import { Schemas } from '../../vis_default_editor/public'; +import { Schemas } from '../../../../plugins/vis_default_editor/public'; import { PieOptions } from './components/options'; import { getPositions, Positions } from './utils/collections'; import { createVislibVisController } from './vis_controller'; diff --git a/src/legacy/core_plugins/vis_type_vislib/public/utils/common_config.tsx b/src/legacy/core_plugins/vis_type_vislib/public/utils/common_config.tsx index 6da40686a8b5..de867dc72bba 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/utils/common_config.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/utils/common_config.tsx @@ -20,7 +20,7 @@ import React from 'react'; import { i18n } from '@kbn/i18n'; -import { VisOptionsProps } from '../../../vis_default_editor/public'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public'; import { PointSeriesOptions, MetricsAxisOptions } from '../components/options'; import { ValidationWrapper } from '../components/common'; import { BasicVislibParams } from '../types'; diff --git a/src/plugins/vis_default_editor/README.md b/src/plugins/vis_default_editor/README.md new file mode 100644 index 000000000000..8607dfe486ac --- /dev/null +++ b/src/plugins/vis_default_editor/README.md @@ -0,0 +1,16 @@ +# Visualization Deafult Editor plugin + +The default editor is used in most primary visualizations, e.x. `Area`, `Data table`, `Pie`, etc. +It acts as a container for a particular visualization and options tabs. Contains the default "Data" tab in `public/components/sidebar/data_tab.tsx`. +The plugin exposes the static `DefaultEditorController` class to consume. + +```ts +import { DefaultEditorController } from '../../vis_default_editor/public'; + +const editor = new DefaultEditorController( + element, + vis, + eventEmitter, + embeddableHandler +); +``` \ No newline at end of file diff --git a/src/legacy/core_plugins/vis_default_editor/public/_agg.scss b/src/plugins/vis_default_editor/public/_agg.scss similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/_agg.scss rename to src/plugins/vis_default_editor/public/_agg.scss diff --git a/src/legacy/core_plugins/vis_default_editor/public/_agg_params.scss b/src/plugins/vis_default_editor/public/_agg_params.scss similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/_agg_params.scss rename to src/plugins/vis_default_editor/public/_agg_params.scss diff --git a/src/legacy/core_plugins/vis_default_editor/public/_default.scss b/src/plugins/vis_default_editor/public/_default.scss similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/_default.scss rename to src/plugins/vis_default_editor/public/_default.scss diff --git a/src/legacy/core_plugins/vis_default_editor/public/_sidebar.scss b/src/plugins/vis_default_editor/public/_sidebar.scss similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/_sidebar.scss rename to src/plugins/vis_default_editor/public/_sidebar.scss diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/__snapshots__/agg.test.tsx.snap b/src/plugins/vis_default_editor/public/components/__snapshots__/agg.test.tsx.snap similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/__snapshots__/agg.test.tsx.snap rename to src/plugins/vis_default_editor/public/components/__snapshots__/agg.test.tsx.snap diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/__snapshots__/agg_group.test.tsx.snap b/src/plugins/vis_default_editor/public/components/__snapshots__/agg_group.test.tsx.snap similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/__snapshots__/agg_group.test.tsx.snap rename to src/plugins/vis_default_editor/public/components/__snapshots__/agg_group.test.tsx.snap diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg.test.tsx b/src/plugins/vis_default_editor/public/components/agg.test.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg.test.tsx rename to src/plugins/vis_default_editor/public/components/agg.test.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg.tsx b/src/plugins/vis_default_editor/public/components/agg.tsx similarity index 98% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg.tsx rename to src/plugins/vis_default_editor/public/components/agg.tsx index 83fbf70c9099..c7e3e609490f 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/agg.tsx +++ b/src/plugins/vis_default_editor/public/components/agg.tsx @@ -28,14 +28,13 @@ import { } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -import { IAggConfig } from 'src/plugins/data/public'; +import { IAggConfig, TimeRange } from 'src/plugins/data/public'; import { DefaultEditorAggParams } from './agg_params'; import { DefaultEditorAggCommonProps } from './agg_common_props'; import { AGGS_ACTION_KEYS, AggsAction } from './agg_group_state'; import { RowsOrColumnsControl } from './controls/rows_or_columns'; import { RadiusRatioOptionControl } from './controls/radius_ratio_option'; import { getSchemaByName } from '../schemas'; -import { TimeRange } from '../../../../../plugins/data/public'; import { buildAggDescription } from './agg_params_helper'; export interface DefaultEditorAggProps extends DefaultEditorAggCommonProps { diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_add.tsx b/src/plugins/vis_default_editor/public/components/agg_add.tsx similarity index 98% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_add.tsx rename to src/plugins/vis_default_editor/public/components/agg_add.tsx index 9df4ea58e0f0..f2c2f8b4d0b9 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/agg_add.tsx +++ b/src/plugins/vis_default_editor/public/components/agg_add.tsx @@ -29,7 +29,7 @@ import { } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; import { i18n } from '@kbn/i18n'; -import { IAggConfig, AggGroupNames } from '../../../../../plugins/data/public'; +import { IAggConfig, AggGroupNames } from '../../../data/public'; import { Schema } from '../schemas'; interface DefaultEditorAggAddProps { diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_common_props.ts b/src/plugins/vis_default_editor/public/components/agg_common_props.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_common_props.ts rename to src/plugins/vis_default_editor/public/components/agg_common_props.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_group.test.tsx b/src/plugins/vis_default_editor/public/components/agg_group.test.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_group.test.tsx rename to src/plugins/vis_default_editor/public/components/agg_group.test.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_group.tsx b/src/plugins/vis_default_editor/public/components/agg_group.tsx similarity index 97% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_group.tsx rename to src/plugins/vis_default_editor/public/components/agg_group.tsx index 792595fd421f..ecbc41f28003 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/agg_group.tsx +++ b/src/plugins/vis_default_editor/public/components/agg_group.tsx @@ -30,7 +30,7 @@ import { } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -import { AggGroupNames, search, IAggConfig } from '../../../../../plugins/data/public'; +import { AggGroupNames, search, IAggConfig, TimeRange } from '../../../data/public'; import { DefaultEditorAgg } from './agg'; import { DefaultEditorAggAdd } from './agg_add'; import { AddSchema, ReorderAggs, DefaultEditorAggCommonProps } from './agg_common_props'; @@ -42,7 +42,6 @@ import { } from './agg_group_helper'; import { aggGroupReducer, initAggsState, AGGS_ACTION_KEYS } from './agg_group_state'; import { Schema } from '../schemas'; -import { TimeRange } from '../../../../../plugins/data/public'; export interface DefaultEditorAggGroupProps extends DefaultEditorAggCommonProps { schemas: Schema[]; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_group_helper.test.ts b/src/plugins/vis_default_editor/public/components/agg_group_helper.test.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_group_helper.test.ts rename to src/plugins/vis_default_editor/public/components/agg_group_helper.test.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_group_helper.tsx b/src/plugins/vis_default_editor/public/components/agg_group_helper.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_group_helper.tsx rename to src/plugins/vis_default_editor/public/components/agg_group_helper.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_group_state.tsx b/src/plugins/vis_default_editor/public/components/agg_group_state.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_group_state.tsx rename to src/plugins/vis_default_editor/public/components/agg_group_state.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_param.tsx b/src/plugins/vis_default_editor/public/components/agg_param.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_param.tsx rename to src/plugins/vis_default_editor/public/components/agg_param.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_param_props.ts b/src/plugins/vis_default_editor/public/components/agg_param_props.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_param_props.ts rename to src/plugins/vis_default_editor/public/components/agg_param_props.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_params.test.tsx b/src/plugins/vis_default_editor/public/components/agg_params.test.tsx similarity index 96% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_params.test.tsx rename to src/plugins/vis_default_editor/public/components/agg_params.test.tsx index 1c49ebf40640..cac1b0851b92 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/agg_params.test.tsx +++ b/src/plugins/vis_default_editor/public/components/agg_params.test.tsx @@ -25,8 +25,8 @@ import { DefaultEditorAggParams as PureDefaultEditorAggParams, DefaultEditorAggParamsProps, } from './agg_params'; -import { KibanaContextProvider } from '../../../../../plugins/kibana_react/public'; -import { dataPluginMock } from '../../../../../plugins/data/public/mocks'; +import { KibanaContextProvider } from '../../../kibana_react/public'; +import { dataPluginMock } from '../../../data/public/mocks'; import { EditorVisState } from './sidebar/state/reducers'; const mockEditorConfig = { diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_params.tsx b/src/plugins/vis_default_editor/public/components/agg_params.tsx similarity index 98% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_params.tsx rename to src/plugins/vis_default_editor/public/components/agg_params.tsx index b1555b76500d..3674e39b558d 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/agg_params.tsx +++ b/src/plugins/vis_default_editor/public/components/agg_params.tsx @@ -22,7 +22,7 @@ import { EuiForm, EuiAccordion, EuiSpacer } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import useUnmount from 'react-use/lib/useUnmount'; -import { IAggConfig, IndexPattern, AggGroupNames } from '../../../../../plugins/data/public'; +import { IAggConfig, IndexPattern, AggGroupNames } from '../../../data/public'; import { DefaultEditorAggSelect } from './agg_select'; import { DefaultEditorAggParam } from './agg_param'; @@ -40,7 +40,7 @@ import { import { DefaultEditorCommonProps } from './agg_common_props'; import { EditorParamConfig, TimeIntervalParam, FixedParam, getEditorConfig } from './utils'; import { Schema, getSchemaByName } from '../schemas'; -import { useKibana } from '../../../../../plugins/kibana_react/public'; +import { useKibana } from '../../../kibana_react/public'; import { VisDefaultEditorKibanaServices } from '../types'; const FIXED_VALUE_PROP = 'fixedValue'; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_params_helper.test.ts b/src/plugins/vis_default_editor/public/components/agg_params_helper.test.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_params_helper.test.ts rename to src/plugins/vis_default_editor/public/components/agg_params_helper.test.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_params_helper.ts b/src/plugins/vis_default_editor/public/components/agg_params_helper.ts similarity index 99% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_params_helper.ts rename to src/plugins/vis_default_editor/public/components/agg_params_helper.ts index 073cb7d5ac66..a32bd76bafa5 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/agg_params_helper.ts +++ b/src/plugins/vis_default_editor/public/components/agg_params_helper.ts @@ -34,7 +34,7 @@ import { AggParamEditorProps } from './agg_param_props'; import { aggParamsMap } from './agg_params_map'; import { EditorConfig } from './utils'; import { Schema, getSchemaByName } from '../schemas'; -import { search } from '../../../../../plugins/data/public'; +import { search } from '../../../data/public'; import { EditorVisState } from './sidebar/state/reducers'; interface ParamInstanceBase { diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_params_map.ts b/src/plugins/vis_default_editor/public/components/agg_params_map.ts similarity index 96% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_params_map.ts rename to src/plugins/vis_default_editor/public/components/agg_params_map.ts index 4517313b6fd6..5af3cfc5b092 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/agg_params_map.ts +++ b/src/plugins/vis_default_editor/public/components/agg_params_map.ts @@ -18,12 +18,7 @@ */ import * as controls from './controls'; -import { - AggGroupNames, - BUCKET_TYPES, - METRIC_TYPES, - search, -} from '../../../../../plugins/data/public'; +import { AggGroupNames, BUCKET_TYPES, METRIC_TYPES, search } from '../../../data/public'; import { wrapWithInlineComp } from './controls/utils'; const { siblingPipelineType, parentPipelineType } = search.aggs; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_params_state.ts b/src/plugins/vis_default_editor/public/components/agg_params_state.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_params_state.ts rename to src/plugins/vis_default_editor/public/components/agg_params_state.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_select.tsx b/src/plugins/vis_default_editor/public/components/agg_select.tsx similarity index 98% rename from src/legacy/core_plugins/vis_default_editor/public/components/agg_select.tsx rename to src/plugins/vis_default_editor/public/components/agg_select.tsx index 7ee432946f3c..6cb76b18e24a 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/agg_select.tsx +++ b/src/plugins/vis_default_editor/public/components/agg_select.tsx @@ -24,7 +24,7 @@ import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; import { IAggType, IndexPattern } from 'src/plugins/data/public'; -import { useKibana } from '../../../../../plugins/kibana_react/public'; +import { useKibana } from '../../../kibana_react/public'; import { ComboBoxGroupedOptions } from '../utils'; import { AGG_TYPE_ACTION_KEYS, AggTypeAction } from './agg_params_state'; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/__snapshots__/extended_bounds.test.tsx.snap b/src/plugins/vis_default_editor/public/components/controls/__snapshots__/extended_bounds.test.tsx.snap similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/__snapshots__/extended_bounds.test.tsx.snap rename to src/plugins/vis_default_editor/public/components/controls/__snapshots__/extended_bounds.test.tsx.snap diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/__snapshots__/metric_agg.test.tsx.snap b/src/plugins/vis_default_editor/public/components/controls/__snapshots__/metric_agg.test.tsx.snap similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/__snapshots__/metric_agg.test.tsx.snap rename to src/plugins/vis_default_editor/public/components/controls/__snapshots__/metric_agg.test.tsx.snap diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/__snapshots__/size.test.tsx.snap b/src/plugins/vis_default_editor/public/components/controls/__snapshots__/size.test.tsx.snap similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/__snapshots__/size.test.tsx.snap rename to src/plugins/vis_default_editor/public/components/controls/__snapshots__/size.test.tsx.snap diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/__snapshots__/top_aggregate.test.tsx.snap b/src/plugins/vis_default_editor/public/components/controls/__snapshots__/top_aggregate.test.tsx.snap similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/__snapshots__/top_aggregate.test.tsx.snap rename to src/plugins/vis_default_editor/public/components/controls/__snapshots__/top_aggregate.test.tsx.snap diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/agg_control_props.tsx b/src/plugins/vis_default_editor/public/components/controls/agg_control_props.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/agg_control_props.tsx rename to src/plugins/vis_default_editor/public/components/controls/agg_control_props.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/agg_utils.test.tsx b/src/plugins/vis_default_editor/public/components/controls/agg_utils.test.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/agg_utils.test.tsx rename to src/plugins/vis_default_editor/public/components/controls/agg_utils.test.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/auto_precision.tsx b/src/plugins/vis_default_editor/public/components/controls/auto_precision.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/auto_precision.tsx rename to src/plugins/vis_default_editor/public/components/controls/auto_precision.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/from_to_list.tsx b/src/plugins/vis_default_editor/public/components/controls/components/from_to_list.tsx similarity index 68% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/from_to_list.tsx rename to src/plugins/vis_default_editor/public/components/controls/components/from_to_list.tsx index e52b2c85b63f..b874459a8e7d 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/from_to_list.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/components/from_to_list.tsx @@ -17,11 +17,11 @@ * under the License. */ -import React from 'react'; +import React, { useCallback } from 'react'; import { EuiFieldText, EuiFlexItem, EuiIcon } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -import { Ipv4Address } from '../../../../../../../plugins/kibana_utils/public'; +import { Ipv4Address } from '../../../../../kibana_utils/public'; import { InputList, InputListConfig, InputModel, InputObject, InputItem } from './input_list'; const EMPTY_STRING = ''; @@ -44,38 +44,42 @@ interface FromToListProps { setValidity(isValid: boolean): void; } -function FromToList({ showValidation, onBlur, ...rest }: FromToListProps) { - const fromToListConfig: InputListConfig = { - defaultValue: { - from: { value: '0.0.0.0', model: '0.0.0.0', isInvalid: false }, - to: { value: '255.255.255.255', model: '255.255.255.255', isInvalid: false }, +const defaultConfig = { + defaultValue: { + from: { value: '0.0.0.0', model: '0.0.0.0', isInvalid: false }, + to: { value: '255.255.255.255', model: '255.255.255.255', isInvalid: false }, + }, + validateClass: Ipv4Address, + getModelValue: (item: FromToObject = {}) => ({ + from: { + value: item.from || EMPTY_STRING, + model: item.from || EMPTY_STRING, + isInvalid: false, }, - validateClass: Ipv4Address, - getModelValue: (item: FromToObject = {}) => ({ - from: { - value: item.from || EMPTY_STRING, - model: item.from || EMPTY_STRING, - isInvalid: false, - }, - to: { value: item.to || EMPTY_STRING, model: item.to || EMPTY_STRING, isInvalid: false }, + to: { value: item.to || EMPTY_STRING, model: item.to || EMPTY_STRING, isInvalid: false }, + }), + getRemoveBtnAriaLabel: (item: FromToModel) => + i18n.translate('visDefaultEditor.controls.ipRanges.removeRangeAriaLabel', { + defaultMessage: 'Remove the range of {from} to {to}', + values: { from: item.from.value || '*', to: item.to.value || '*' }, }), - getRemoveBtnAriaLabel: (item: FromToModel) => - i18n.translate('visDefaultEditor.controls.ipRanges.removeRangeAriaLabel', { - defaultMessage: 'Remove the range of {from} to {to}', - values: { from: item.from.value || '*', to: item.to.value || '*' }, - }), - onChangeFn: ({ from, to }: FromToModel) => { - const result: FromToObject = {}; - if (from.model) { - result.from = from.model; - } - if (to.model) { - result.to = to.model; - } - return result; - }, - hasInvalidValuesFn: ({ from, to }: FromToModel) => from.isInvalid || to.isInvalid, - renderInputRow: (item: FromToModel, index, onChangeValue) => ( + onChangeFn: ({ from, to }: FromToModel) => { + const result: FromToObject = {}; + if (from.model) { + result.from = from.model; + } + if (to.model) { + result.to = to.model; + } + return result; + }, + hasInvalidValuesFn: ({ from, to }: FromToModel) => from.isInvalid || to.isInvalid, + modelNames: ['from', 'to'], +}; + +function FromToList({ showValidation, onBlur, ...rest }: FromToListProps) { + const renderInputRow = useCallback( + (item: FromToModel, index, onChangeValue) => ( <> ), - modelNames: ['from', 'to'], + [onBlur, showValidation] + ); + const fromToListConfig: InputListConfig = { + ...defaultConfig, + renderInputRow, }; return ; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/input_list.tsx b/src/plugins/vis_default_editor/public/components/controls/components/input_list.tsx similarity index 75% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/input_list.tsx rename to src/plugins/vis_default_editor/public/components/controls/components/input_list.tsx index cc80d0073c90..639b69cd3d33 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/input_list.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/components/input_list.tsx @@ -17,7 +17,7 @@ * under the License. */ -import React, { useState, useEffect, Fragment } from 'react'; +import React, { useState, useEffect, Fragment, useCallback } from 'react'; import { isEmpty, isEqual, mapValues, omit, pick } from 'lodash'; import { EuiButtonIcon, @@ -70,7 +70,10 @@ interface InputListProps { } const generateId = htmlIdGenerator(); -const validateValue = (inputValue: string | undefined, config: InputListConfig) => { +const validateValue = ( + inputValue: string | undefined, + InputObject: InputListConfig['validateClass'] +) => { const result = { model: inputValue || '', isInvalid: false, @@ -80,7 +83,6 @@ const validateValue = (inputValue: string | undefined, config: InputListConfig) return result; } try { - const InputObject = config.validateClass; result.model = new InputObject(inputValue).toString(); result.isInvalid = false; return result; @@ -91,47 +93,60 @@ const validateValue = (inputValue: string | undefined, config: InputListConfig) }; function InputList({ config, list, onChange, setValidity }: InputListProps) { + const { defaultValue, getModelValue, modelNames, onChangeFn, validateClass } = config; const [models, setModels] = useState(() => list.map( item => ({ id: generateId(), - ...config.getModelValue(item), + ...getModelValue(item), } as InputModel) ) ); const hasInvalidValues = models.some(config.hasInvalidValuesFn); - const updateValues = (modelList: InputModel[]) => { - setModels(modelList); - onChange(modelList.map(config.onChangeFn)); - }; - const onChangeValue = (index: number, value: string, modelName: string) => { - const { model, isInvalid } = validateValue(value, config); - updateValues( - models.map((range, arrayIndex) => - arrayIndex === index - ? { - ...range, - [modelName]: { - value, - model, - isInvalid, - }, - } - : range - ) - ); - }; - const onDelete = (id: string) => updateValues(models.filter(model => model.id !== id)); - const onAdd = () => - updateValues([ - ...models, - { - id: generateId(), - ...config.getModelValue(), - } as InputModel, - ]); + const updateValues = useCallback( + (modelList: InputModel[]) => { + setModels(modelList); + onChange(modelList.map(onChangeFn)); + }, + [onChangeFn, onChange] + ); + const onChangeValue = useCallback( + (index: number, value: string, modelName: string) => { + const { model, isInvalid } = validateValue(value, validateClass); + updateValues( + models.map((range, arrayIndex) => + arrayIndex === index + ? { + ...range, + [modelName]: { + value, + model, + isInvalid, + }, + } + : range + ) + ); + }, + [models, updateValues, validateClass] + ); + const onDelete = useCallback( + (id: string) => updateValues(models.filter(model => model.id !== id)), + [models, updateValues] + ); + const onAdd = useCallback( + () => + updateValues([ + ...models, + { + id: generateId(), + ...getModelValue(), + } as InputModel, + ]), + [getModelValue, models, updateValues] + ); useEffect(() => { // resposible for setting up an initial value when there is no default value @@ -139,15 +154,15 @@ function InputList({ config, list, onChange, setValidity }: InputListProps) { updateValues([ { id: generateId(), - ...config.defaultValue, + ...defaultValue, } as InputModel, ]); } - }, []); + }, [defaultValue, list.length, updateValues]); useEffect(() => { setValidity(!hasInvalidValues); - }, [hasInvalidValues]); + }, [hasInvalidValues, setValidity]); useEffect(() => { // responsible for discarding changes @@ -155,7 +170,7 @@ function InputList({ config, list, onChange, setValidity }: InputListProps) { list.length !== models.length || list.some((item, index) => { // make model to be the same shape as stored value - const model: InputObject = mapValues(pick(models[index], config.modelNames), 'model'); + const model: InputObject = mapValues(pick(models[index], modelNames), 'model'); // we need to skip empty values since they are not stored in saved object return !isEqual(item, omit(model, isEmpty)); @@ -166,12 +181,12 @@ function InputList({ config, list, onChange, setValidity }: InputListProps) { item => ({ id: generateId(), - ...config.getModelValue(item), + ...getModelValue(item), } as InputModel) ) ); } - }, [list]); + }, [getModelValue, list, modelNames, models]); return ( <> diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/mask_list.tsx b/src/plugins/vis_default_editor/public/components/controls/components/mask_list.tsx similarity index 62% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/mask_list.tsx rename to src/plugins/vis_default_editor/public/components/controls/components/mask_list.tsx index f6edecbbcbd7..560213fc08ff 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/mask_list.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/components/mask_list.tsx @@ -17,12 +17,12 @@ * under the License. */ -import React from 'react'; +import React, { useCallback } from 'react'; import { EuiFieldText, EuiFlexItem } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { InputList, InputListConfig, InputObject, InputModel, InputItem } from './input_list'; -import { search } from '../../../../../../../plugins/data/public'; +import { search } from '../../../../../data/public'; const EMPTY_STRING = ''; @@ -42,36 +42,40 @@ interface MaskListProps { setValidity(isValid: boolean): void; } +const defaultConfig = { + defaultValue: { + mask: { model: '0.0.0.0/1', value: '0.0.0.0/1', isInvalid: false }, + }, + validateClass: search.aggs.CidrMask, + getModelValue: (item: MaskObject = {}) => ({ + mask: { + model: item.mask || EMPTY_STRING, + value: item.mask || EMPTY_STRING, + isInvalid: false, + }, + }), + getRemoveBtnAriaLabel: (item: MaskModel) => + item.mask.value + ? i18n.translate('visDefaultEditor.controls.ipRanges.removeCidrMaskButtonAriaLabel', { + defaultMessage: 'Remove the CIDR mask value of {mask}', + values: { mask: item.mask.value }, + }) + : i18n.translate('visDefaultEditor.controls.ipRanges.removeEmptyCidrMaskButtonAriaLabel', { + defaultMessage: 'Remove the CIDR mask default value', + }), + onChangeFn: ({ mask }: MaskModel) => { + if (mask.model) { + return { mask: mask.model }; + } + return {}; + }, + hasInvalidValuesFn: ({ mask }: MaskModel) => mask.isInvalid, + modelNames: 'mask', +}; + function MaskList({ showValidation, onBlur, ...rest }: MaskListProps) { - const maskListConfig: InputListConfig = { - defaultValue: { - mask: { model: '0.0.0.0/1', value: '0.0.0.0/1', isInvalid: false }, - }, - validateClass: search.aggs.CidrMask, - getModelValue: (item: MaskObject = {}) => ({ - mask: { - model: item.mask || EMPTY_STRING, - value: item.mask || EMPTY_STRING, - isInvalid: false, - }, - }), - getRemoveBtnAriaLabel: (item: MaskModel) => - item.mask.value - ? i18n.translate('visDefaultEditor.controls.ipRanges.removeCidrMaskButtonAriaLabel', { - defaultMessage: 'Remove the CIDR mask value of {mask}', - values: { mask: item.mask.value }, - }) - : i18n.translate('visDefaultEditor.controls.ipRanges.removeEmptyCidrMaskButtonAriaLabel', { - defaultMessage: 'Remove the CIDR mask default value', - }), - onChangeFn: ({ mask }: MaskModel) => { - if (mask.model) { - return { mask: mask.model }; - } - return {}; - }, - hasInvalidValuesFn: ({ mask }) => mask.isInvalid, - renderInputRow: ({ mask }: MaskModel, index, onChangeValue) => ( + const renderInputRow = useCallback( + ({ mask }: MaskModel, index, onChangeValue) => ( ), - modelNames: 'mask', + [onBlur, showValidation] + ); + const maskListConfig: InputListConfig = { + ...defaultConfig, + renderInputRow, }; return ; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/__snapshots__/number_list.test.tsx.snap b/src/plugins/vis_default_editor/public/components/controls/components/number_list/__snapshots__/number_list.test.tsx.snap similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/__snapshots__/number_list.test.tsx.snap rename to src/plugins/vis_default_editor/public/components/controls/components/number_list/__snapshots__/number_list.test.tsx.snap diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/__snapshots__/number_row.test.tsx.snap b/src/plugins/vis_default_editor/public/components/controls/components/number_list/__snapshots__/number_row.test.tsx.snap similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/__snapshots__/number_row.test.tsx.snap rename to src/plugins/vis_default_editor/public/components/controls/components/number_list/__snapshots__/number_row.test.tsx.snap diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/index.ts b/src/plugins/vis_default_editor/public/components/controls/components/number_list/index.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/index.ts rename to src/plugins/vis_default_editor/public/components/controls/components/number_list/index.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_list.test.tsx b/src/plugins/vis_default_editor/public/components/controls/components/number_list/number_list.test.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_list.test.tsx rename to src/plugins/vis_default_editor/public/components/controls/components/number_list/number_list.test.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_list.tsx b/src/plugins/vis_default_editor/public/components/controls/components/number_list/number_list.tsx similarity index 98% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_list.tsx rename to src/plugins/vis_default_editor/public/components/controls/components/number_list/number_list.tsx index a43c66c2e08c..b4683e47979c 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_list.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/components/number_list/number_list.tsx @@ -79,7 +79,7 @@ function NumberList({ if (!numberArray.length) { onChange([models[0].value as number]); } - }, []); + }, [models, numberArray.length, onChange]); const isValid = !hasInvalidValues(models); useValidation(setValidity, isValid); @@ -109,7 +109,7 @@ function NumberList({ }) ); }, - [numberRange, models, onUpdate] + [models, onUpdate] ); // Add an item to the end of the list diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_row.test.tsx b/src/plugins/vis_default_editor/public/components/controls/components/number_list/number_row.test.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_row.test.tsx rename to src/plugins/vis_default_editor/public/components/controls/components/number_list/number_row.test.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_row.tsx b/src/plugins/vis_default_editor/public/components/controls/components/number_list/number_row.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_row.tsx rename to src/plugins/vis_default_editor/public/components/controls/components/number_list/number_row.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/range.test.ts b/src/plugins/vis_default_editor/public/components/controls/components/number_list/range.test.ts similarity index 98% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/range.test.ts rename to src/plugins/vis_default_editor/public/components/controls/components/number_list/range.test.ts index e9090e5b38ef..a19034d3c8e9 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/range.test.ts +++ b/src/plugins/vis_default_editor/public/components/controls/components/number_list/range.test.ts @@ -108,7 +108,6 @@ describe('Range parsing utility', () => { }; forOwn(tests, (spec, str: any) => { - // eslint-disable-next-line jest/valid-describe describe(str, () => { const range = parseRange(str); diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/range.ts b/src/plugins/vis_default_editor/public/components/controls/components/number_list/range.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/range.ts rename to src/plugins/vis_default_editor/public/components/controls/components/number_list/range.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/utils.test.ts b/src/plugins/vis_default_editor/public/components/controls/components/number_list/utils.test.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/utils.test.ts rename to src/plugins/vis_default_editor/public/components/controls/components/number_list/utils.test.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/utils.ts b/src/plugins/vis_default_editor/public/components/controls/components/number_list/utils.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/utils.ts rename to src/plugins/vis_default_editor/public/components/controls/components/number_list/utils.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/date_ranges.test.tsx b/src/plugins/vis_default_editor/public/components/controls/date_ranges.test.tsx similarity index 95% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/date_ranges.test.tsx rename to src/plugins/vis_default_editor/public/components/controls/date_ranges.test.tsx index 6b1a4dca7b84..b844fdfb8225 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/date_ranges.test.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/date_ranges.test.tsx @@ -20,8 +20,8 @@ import React from 'react'; import { mountWithIntl } from 'test_utils/enzyme_helpers'; import { DateRangesParamEditor } from './date_ranges'; -import { KibanaContextProvider } from '../../../../../../plugins/kibana_react/public'; -import { docLinksServiceMock } from '../../../../../../core/public/mocks'; +import { KibanaContextProvider } from '../../../../kibana_react/public'; +import { docLinksServiceMock } from '../../../../../core/public/mocks'; describe('DateRangesParamEditor component', () => { let setValue: jest.Mock; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/date_ranges.tsx b/src/plugins/vis_default_editor/public/components/controls/date_ranges.tsx similarity index 90% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/date_ranges.tsx rename to src/plugins/vis_default_editor/public/components/controls/date_ranges.tsx index 15e864bfd026..57f4c7d04019 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/date_ranges.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/date_ranges.tsx @@ -17,7 +17,7 @@ * under the License. */ -import React, { Fragment, useState, useEffect } from 'react'; +import React, { Fragment, useState, useEffect, useCallback } from 'react'; import { htmlIdGenerator, EuiButtonIcon, @@ -36,8 +36,9 @@ import dateMath from '@elastic/datemath'; import { FormattedMessage } from '@kbn/i18n/react'; import { i18n } from '@kbn/i18n'; import { isEqual, omit } from 'lodash'; +import { useMount } from 'react-use'; -import { useKibana } from '../../../../../../plugins/kibana_react/public'; +import { useKibana } from '../../../../kibana_react/public'; import { AggParamEditorProps } from '../agg_param_props'; const FROM_PLACEHOLDER = '\u2212\u221E'; @@ -72,12 +73,26 @@ function DateRangesParamEditor({ ({ from, to }) => (!from && !to) || !validateDateMath(from) || !validateDateMath(to) ); - // set up an initial range when there is no default range - useEffect(() => { + const updateRanges = useCallback( + (rangeValues: DateRangeValuesModel[]) => { + // do not set internal id parameter into saved object + setValue(rangeValues.map(range => omit(range, 'id'))); + setRanges(rangeValues); + }, + [setValue] + ); + + const onAddRange = useCallback(() => updateRanges([...ranges, { id: generateId() }]), [ + ranges, + updateRanges, + ]); + + useMount(() => { + // set up an initial range when there is no default range if (!value.length) { onAddRange(); } - }, []); + }); useEffect(() => { // responsible for discarding changes @@ -87,18 +102,12 @@ function DateRangesParamEditor({ ) { setRanges(value.map(range => ({ ...range, id: generateId() }))); } - }, [value]); + }, [ranges, value]); useEffect(() => { setValidity(!hasInvalidRange); - }, [hasInvalidRange]); + }, [hasInvalidRange, setValidity]); - const updateRanges = (rangeValues: DateRangeValuesModel[]) => { - // do not set internal id parameter into saved object - setValue(rangeValues.map(range => omit(range, 'id'))); - setRanges(rangeValues); - }; - const onAddRange = () => updateRanges([...ranges, { id: generateId() }]); const onRemoveRange = (id: string) => updateRanges(ranges.filter(range => range.id !== id)); const onChangeRange = (id: string, key: string, newValue: string) => updateRanges( diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/drop_partials.tsx b/src/plugins/vis_default_editor/public/components/controls/drop_partials.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/drop_partials.tsx rename to src/plugins/vis_default_editor/public/components/controls/drop_partials.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/extended_bounds.test.tsx b/src/plugins/vis_default_editor/public/components/controls/extended_bounds.test.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/extended_bounds.test.tsx rename to src/plugins/vis_default_editor/public/components/controls/extended_bounds.test.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/extended_bounds.tsx b/src/plugins/vis_default_editor/public/components/controls/extended_bounds.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/extended_bounds.tsx rename to src/plugins/vis_default_editor/public/components/controls/extended_bounds.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/field.test.tsx b/src/plugins/vis_default_editor/public/components/controls/field.test.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/field.test.tsx rename to src/plugins/vis_default_editor/public/components/controls/field.test.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/field.tsx b/src/plugins/vis_default_editor/public/components/controls/field.tsx similarity index 97% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/field.tsx rename to src/plugins/vis_default_editor/public/components/controls/field.tsx index fc1cbb51b70a..42086004a12d 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/field.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/field.tsx @@ -18,7 +18,8 @@ */ import { get } from 'lodash'; -import React, { useEffect, useState, useCallback } from 'react'; +import React, { useState, useCallback } from 'react'; +import { useMount } from 'react-use'; import { EuiComboBox, EuiComboBoxOptionOption, EuiFormRow } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; @@ -84,8 +85,7 @@ function FieldParamEditor({ const showErrorMessage = (showValidation || !indexedFields.length) && !isValid; useValidation(setValidity, isValid); - - useEffect(() => { + useMount(() => { // set field if only one available if (indexedFields.length !== 1) { return; @@ -98,7 +98,7 @@ function FieldParamEditor({ } else if (indexedField.options.length === 1) { setValue(indexedField.options[0].target); } - }, []); + }); const onSearchChange = useCallback(searchValue => setIsDirty(Boolean(searchValue)), []); diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/filter.tsx b/src/plugins/vis_default_editor/public/components/controls/filter.tsx similarity index 99% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/filter.tsx rename to src/plugins/vis_default_editor/public/components/controls/filter.tsx index e2e7c2895093..16aaff47f49c 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/filter.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/filter.tsx @@ -21,7 +21,7 @@ import React, { useState } from 'react'; import { EuiForm, EuiButtonIcon, EuiFieldText, EuiFormRow, EuiSpacer } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -import { IAggConfig, Query, QueryStringInput } from '../../../../../../plugins/data/public'; +import { IAggConfig, Query, QueryStringInput } from '../../../../data/public'; interface FilterRowProps { id: string; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/filters.tsx b/src/plugins/vis_default_editor/public/components/controls/filters.tsx similarity index 96% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/filters.tsx rename to src/plugins/vis_default_editor/public/components/controls/filters.tsx index be4c62ab08aa..d4e698f655c5 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/filters.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/filters.tsx @@ -21,9 +21,10 @@ import React, { useState, useEffect } from 'react'; import { omit, isEqual } from 'lodash'; import { htmlIdGenerator, EuiButton, EuiSpacer } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; +import { useMount } from 'react-use'; import { Query } from 'src/plugins/data/public'; -import { useKibana } from '../../../../../../plugins/kibana_react/public'; +import { useKibana } from '../../../../kibana_react/public'; import { FilterRow } from './filter'; import { AggParamEditorProps } from '../agg_param_props'; @@ -40,10 +41,10 @@ function FiltersParamEditor({ agg, value = [], setValue }: AggParamEditorProps ({ ...filter, id: generateId() })) ); - useEffect(() => { + useMount(() => { // set parsed values into model after initialization setValue(filters.map(filter => omit({ ...filter, input: filter.input }, 'id'))); - }, []); + }); useEffect(() => { // responsible for discarding changes @@ -53,7 +54,7 @@ function FiltersParamEditor({ agg, value = [], setValue }: AggParamEditorProps ({ ...filter, id: generateId() }))); } - }, [value]); + }, [filters, value]); const updateFilters = (updatedFilters: FilterValue[]) => { // do not set internal id parameter into saved object diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/has_extended_bounds.tsx b/src/plugins/vis_default_editor/public/components/controls/has_extended_bounds.tsx similarity index 73% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/has_extended_bounds.tsx rename to src/plugins/vis_default_editor/public/components/controls/has_extended_bounds.tsx index 90b7cb03b7a5..a316a087c8bc 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/has_extended_bounds.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/has_extended_bounds.tsx @@ -17,22 +17,32 @@ * under the License. */ -import React, { useEffect } from 'react'; +import React, { useEffect, useRef } from 'react'; import { i18n } from '@kbn/i18n'; -import { search } from '../../../../../../plugins/data/public'; +import { search } from '../../../../data/public'; import { SwitchParamEditor } from './switch'; import { AggParamEditorProps } from '../agg_param_props'; const { isType } = search.aggs; function HasExtendedBoundsParamEditor(props: AggParamEditorProps) { + const { agg, setValue, value } = props; + const minDocCount = useRef(agg.params.min_doc_count); + useEffect(() => { - props.setValue(props.value && props.agg.params.min_doc_count); - }, [props.agg.params.min_doc_count]); + if (minDocCount.current !== agg.params.min_doc_count) { + // The "Extend bounds" param is only enabled when "Show empty buckets" is turned on. + // So if "Show empty buckets" is changed, "Extend bounds" should reflect changes + minDocCount.current = agg.params.min_doc_count; + + setValue(value && agg.params.min_doc_count); + } + }, [agg.params.min_doc_count, setValue, value]); return ( ) { !props.agg.params.min_doc_count || !(isType('number')(props.agg) || isType('date')(props.agg)) } - {...props} /> ); } diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/index.ts b/src/plugins/vis_default_editor/public/components/controls/index.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/index.ts rename to src/plugins/vis_default_editor/public/components/controls/index.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/ip_range_type.tsx b/src/plugins/vis_default_editor/public/components/controls/ip_range_type.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/ip_range_type.tsx rename to src/plugins/vis_default_editor/public/components/controls/ip_range_type.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/ip_ranges.tsx b/src/plugins/vis_default_editor/public/components/controls/ip_ranges.tsx similarity index 79% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/ip_ranges.tsx rename to src/plugins/vis_default_editor/public/components/controls/ip_ranges.tsx index c4b90649aaaa..5ffa8088a954 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/ip_ranges.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/ip_ranges.tsx @@ -17,7 +17,7 @@ * under the License. */ -import React from 'react'; +import React, { useCallback } from 'react'; import { EuiFormRow } from '@elastic/eui'; import { FromToList, FromToObject } from './components/from_to_list'; @@ -38,12 +38,22 @@ function IpRangesParamEditor({ setValidity, showValidation, }: AggParamEditorProps) { - const handleChange = (modelName: IpRangeTypes, items: Array) => { - setValue({ - ...value, - [modelName]: items, - }); - }; + const handleMaskListChange = useCallback( + (items: MaskObject[]) => + setValue({ + ...value, + [IpRangeTypes.MASK]: items, + }), + [setValue, value] + ); + const handleFromToListChange = useCallback( + (items: FromToObject[]) => + setValue({ + ...value, + [IpRangeTypes.FROM_TO]: items, + }), + [setValue, value] + ); return ( @@ -52,7 +62,7 @@ function IpRangesParamEditor({ list={value.mask} showValidation={showValidation} onBlur={setTouched} - onChange={items => handleChange(IpRangeTypes.MASK, items)} + onChange={handleMaskListChange} setValidity={setValidity} /> ) : ( @@ -60,7 +70,7 @@ function IpRangesParamEditor({ list={value.fromTo} showValidation={showValidation} onBlur={setTouched} - onChange={items => handleChange(IpRangeTypes.FROM_TO, items)} + onChange={handleFromToListChange} setValidity={setValidity} /> )} diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/is_filtered_by_collar.tsx b/src/plugins/vis_default_editor/public/components/controls/is_filtered_by_collar.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/is_filtered_by_collar.tsx rename to src/plugins/vis_default_editor/public/components/controls/is_filtered_by_collar.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/metric_agg.test.tsx b/src/plugins/vis_default_editor/public/components/controls/metric_agg.test.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/metric_agg.test.tsx rename to src/plugins/vis_default_editor/public/components/controls/metric_agg.test.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/metric_agg.tsx b/src/plugins/vis_default_editor/public/components/controls/metric_agg.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/metric_agg.tsx rename to src/plugins/vis_default_editor/public/components/controls/metric_agg.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/min_doc_count.tsx b/src/plugins/vis_default_editor/public/components/controls/min_doc_count.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/min_doc_count.tsx rename to src/plugins/vis_default_editor/public/components/controls/min_doc_count.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/missing_bucket.tsx b/src/plugins/vis_default_editor/public/components/controls/missing_bucket.tsx similarity index 93% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/missing_bucket.tsx rename to src/plugins/vis_default_editor/public/components/controls/missing_bucket.tsx index 7010f0d53e56..7d4d2230bd76 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/missing_bucket.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/missing_bucket.tsx @@ -21,20 +21,22 @@ import React, { useEffect } from 'react'; import { i18n } from '@kbn/i18n'; import { SwitchParamEditor } from './switch'; -import { search } from '../../../../../../plugins/data/public'; +import { search } from '../../../../data/public'; import { AggParamEditorProps } from '../agg_param_props'; function MissingBucketParamEditor(props: AggParamEditorProps) { const fieldTypeIsNotString = !search.aggs.isStringType(props.agg); + const { setValue } = props; useEffect(() => { if (fieldTypeIsNotString) { - props.setValue(false); + setValue(false); } - }, [fieldTypeIsNotString]); + }, [fieldTypeIsNotString, setValue]); return ( ) { } )} disabled={fieldTypeIsNotString} - {...props} /> ); } diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/number_interval.tsx b/src/plugins/vis_default_editor/public/components/controls/number_interval.tsx similarity index 99% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/number_interval.tsx rename to src/plugins/vis_default_editor/public/components/controls/number_interval.tsx index 6ab5ee2d260a..02bf68073452 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/number_interval.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/number_interval.tsx @@ -61,7 +61,7 @@ function NumberIntervalParamEditor({ useEffect(() => { setValidity(isValid); - }, [isValid]); + }, [isValid, setValidity]); const onChange = useCallback( ({ target }: React.ChangeEvent) => diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/order.tsx b/src/plugins/vis_default_editor/public/components/controls/order.tsx similarity index 98% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/order.tsx rename to src/plugins/vis_default_editor/public/components/controls/order.tsx index 8f63662d928c..e609bf9adf79 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/order.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/order.tsx @@ -39,7 +39,7 @@ function OrderParamEditor({ useEffect(() => { setValidity(isValid); - }, [isValid]); + }, [isValid, setValidity]); // @ts-ignore return ( diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/order_agg.test.tsx b/src/plugins/vis_default_editor/public/components/controls/order_agg.test.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/order_agg.test.tsx rename to src/plugins/vis_default_editor/public/components/controls/order_agg.test.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/order_agg.tsx b/src/plugins/vis_default_editor/public/components/controls/order_agg.tsx similarity index 97% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/order_agg.tsx rename to src/plugins/vis_default_editor/public/components/controls/order_agg.tsx index 41672bc192fa..c5a35cbbd7ab 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/order_agg.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/order_agg.tsx @@ -20,7 +20,7 @@ import React, { useEffect } from 'react'; import { EuiSpacer } from '@elastic/eui'; -import { AggParamType, IAggConfig, AggGroupNames } from '../../../../../../plugins/data/public'; +import { AggParamType, IAggConfig, AggGroupNames } from '../../../../data/public'; import { useSubAggParamsHandlers } from './utils'; import { AggParamEditorProps } from '../agg_param_props'; import { DefaultEditorAggParams } from '../agg_params'; @@ -47,7 +47,7 @@ function OrderAggParamEditor({ if (orderBy !== 'custom' && value) { setValue(undefined); } - }, [orderBy]); + }, [agg, aggParam, orderBy, setValue, value]); const { onAggTypeChange, setAggParamValue } = useSubAggParamsHandlers( agg, diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/order_by.tsx b/src/plugins/vis_default_editor/public/components/controls/order_by.tsx similarity index 94% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/order_by.tsx rename to src/plugins/vis_default_editor/public/components/controls/order_by.tsx index 9f1aaa54a8ca..47b12f4340d4 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/order_by.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/order_by.tsx @@ -17,9 +17,10 @@ * under the License. */ -import React, { useEffect } from 'react'; +import React from 'react'; import { EuiFormRow, EuiSelect } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; +import { useMount } from 'react-use'; import { isCompatibleAggregation, @@ -28,7 +29,7 @@ import { useValidation, } from './utils'; import { AggParamEditorProps } from '../agg_param_props'; -import { search } from '../../../../../../plugins/data/public'; +import { search } from '../../../../data/public'; const { termsAggFilter } = search.aggs; const DEFAULT_VALUE = '_key'; @@ -58,8 +59,7 @@ function OrderByParamEditor({ const isValid = !!value; useValidation(setValidity, isValid); - - useEffect(() => { + useMount(() => { // setup the initial value of orderBy if (!value) { let respAgg = { id: DEFAULT_VALUE }; @@ -70,7 +70,7 @@ function OrderByParamEditor({ setValue(respAgg.id); } - }, []); + }); useFallbackMetric(setValue, termsAggFilter, metricAggs, value, DEFAULT_VALUE); diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/other_bucket.tsx b/src/plugins/vis_default_editor/public/components/controls/other_bucket.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/other_bucket.tsx rename to src/plugins/vis_default_editor/public/components/controls/other_bucket.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentile_ranks.tsx b/src/plugins/vis_default_editor/public/components/controls/percentile_ranks.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/percentile_ranks.tsx rename to src/plugins/vis_default_editor/public/components/controls/percentile_ranks.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentiles.test.tsx b/src/plugins/vis_default_editor/public/components/controls/percentiles.test.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/percentiles.test.tsx rename to src/plugins/vis_default_editor/public/components/controls/percentiles.test.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentiles.tsx b/src/plugins/vis_default_editor/public/components/controls/percentiles.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/percentiles.tsx rename to src/plugins/vis_default_editor/public/components/controls/percentiles.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/precision.tsx b/src/plugins/vis_default_editor/public/components/controls/precision.tsx similarity index 95% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/precision.tsx rename to src/plugins/vis_default_editor/public/components/controls/precision.tsx index df71e72ee6c6..ad2011513b17 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/precision.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/precision.tsx @@ -22,7 +22,7 @@ import React from 'react'; import { EuiRange, EuiFormRow } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -import { useKibana } from '../../../../../../plugins/kibana_react/public'; +import { useKibana } from '../../../../kibana_react/public'; import { AggParamEditorProps } from '../agg_param_props'; function PrecisionParamEditor({ agg, value, setValue }: AggParamEditorProps) { diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/radius_ratio_option.tsx b/src/plugins/vis_default_editor/public/components/controls/radius_ratio_option.tsx similarity index 95% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/radius_ratio_option.tsx rename to src/plugins/vis_default_editor/public/components/controls/radius_ratio_option.tsx index c64b079e4f80..86c4431b6d5e 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/radius_ratio_option.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/radius_ratio_option.tsx @@ -17,10 +17,11 @@ * under the License. */ -import React, { useEffect, useCallback } from 'react'; +import React, { useCallback } from 'react'; import { EuiFormRow, EuiIconTip, EuiRange, EuiSpacer } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; +import { useMount } from 'react-use'; import { AggControlProps } from './agg_control_props'; @@ -44,11 +45,11 @@ function RadiusRatioOptionControl({ editorStateParams, setStateParamValue }: Agg ); - useEffect(() => { + useMount(() => { if (!editorStateParams.radiusRatio) { setStateParamValue(PARAM_NAME, DEFAULT_VALUE); } - }, []); + }); const onChange = useCallback( (e: React.ChangeEvent | React.MouseEvent) => diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/range_control.tsx b/src/plugins/vis_default_editor/public/components/controls/range_control.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/range_control.tsx rename to src/plugins/vis_default_editor/public/components/controls/range_control.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/ranges.tsx b/src/plugins/vis_default_editor/public/components/controls/ranges.tsx similarity index 91% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/ranges.tsx rename to src/plugins/vis_default_editor/public/components/controls/ranges.tsx index 27de9dfe68ee..5c6438b40040 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/ranges.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/ranges.tsx @@ -17,7 +17,7 @@ * under the License. */ -import React, { Fragment, useState, useEffect } from 'react'; +import React, { Fragment, useCallback, useState, useEffect } from 'react'; import { htmlIdGenerator, EuiButtonIcon, @@ -76,37 +76,25 @@ function RangesParamEditor({ validateRange, }: RangesParamEditorProps) { const [ranges, setRanges] = useState(() => value.map(range => ({ ...range, id: generateId() }))); + const updateRanges = useCallback( + (rangeValues: RangeValuesModel[]) => { + // do not set internal id parameter into saved object + setValue(rangeValues.map(range => omit(range, 'id'))); + setRanges(rangeValues); - // set up an initial range when there is no default range - useEffect(() => { - if (!value.length) { - onAddRange(); - } - }, []); - - useEffect(() => { - // responsible for discarding changes - if ( - value.length !== ranges.length || - value.some((range, index) => !isEqual(range, omit(ranges[index], 'id'))) - ) { - setRanges(value.map(range => ({ ...range, id: generateId() }))); - } - }, [value]); - - const updateRanges = (rangeValues: RangeValuesModel[]) => { - // do not set internal id parameter into saved object - setValue(rangeValues.map(range => omit(range, 'id'))); - setRanges(rangeValues); - - if (setTouched) { - setTouched(true); - } - }; - const onAddRange = () => - addRangeValues - ? updateRanges([...ranges, { ...addRangeValues(), id: generateId() }]) - : updateRanges([...ranges, { id: generateId() }]); + if (setTouched) { + setTouched(true); + } + }, + [setTouched, setValue] + ); + const onAddRange = useCallback( + () => + addRangeValues + ? updateRanges([...ranges, { ...addRangeValues(), id: generateId() }]) + : updateRanges([...ranges, { id: generateId() }]), + [addRangeValues, ranges, updateRanges] + ); const onRemoveRange = (id: string) => updateRanges(ranges.filter(range => range.id !== id)); const onChangeRange = (id: string, key: string, newValue: string) => updateRanges( @@ -120,6 +108,23 @@ function RangesParamEditor({ ) ); + // set up an initial range when there is no default range + useEffect(() => { + if (!value.length) { + onAddRange(); + } + }, [onAddRange, value.length]); + + useEffect(() => { + // responsible for discarding changes + if ( + value.length !== ranges.length || + value.some((range, index) => !isEqual(range, omit(ranges[index], 'id'))) + ) { + setRanges(value.map(range => ({ ...range, id: generateId() }))); + } + }, [ranges, value]); + const hasInvalidRange = validateRange && ranges.some(({ from, to, id }, index) => { diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/raw_json.tsx b/src/plugins/vis_default_editor/public/components/controls/raw_json.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/raw_json.tsx rename to src/plugins/vis_default_editor/public/components/controls/raw_json.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/rows_or_columns.tsx b/src/plugins/vis_default_editor/public/components/controls/rows_or_columns.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/rows_or_columns.tsx rename to src/plugins/vis_default_editor/public/components/controls/rows_or_columns.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/scale_metrics.tsx b/src/plugins/vis_default_editor/public/components/controls/scale_metrics.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/scale_metrics.tsx rename to src/plugins/vis_default_editor/public/components/controls/scale_metrics.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/size.test.tsx b/src/plugins/vis_default_editor/public/components/controls/size.test.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/size.test.tsx rename to src/plugins/vis_default_editor/public/components/controls/size.test.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/size.tsx b/src/plugins/vis_default_editor/public/components/controls/size.tsx similarity index 98% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/size.tsx rename to src/plugins/vis_default_editor/public/components/controls/size.tsx index 824ec4aeb253..9f55eb9212de 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/size.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/size.tsx @@ -48,7 +48,7 @@ function SizeParamEditor({ useEffect(() => { setValidity(isValid); - }, [isValid]); + }, [isValid, setValidity]); return ( { setValidity(isValid); - }, [isValid]); + }, [isValid, setValidity]); const onChange = useCallback(ev => setValue(ev.target.value), [setValue]); diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/sub_agg.tsx b/src/plugins/vis_default_editor/public/components/controls/sub_agg.tsx similarity index 97% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/sub_agg.tsx rename to src/plugins/vis_default_editor/public/components/controls/sub_agg.tsx index c9f53a68b3e8..ee0fbd8532ce 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/sub_agg.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/sub_agg.tsx @@ -20,7 +20,7 @@ import React, { useEffect } from 'react'; import { EuiSpacer } from '@elastic/eui'; -import { AggParamType, IAggConfig, AggGroupNames } from '../../../../../../plugins/data/public'; +import { AggParamType, IAggConfig, AggGroupNames } from '../../../../data/public'; import { useSubAggParamsHandlers } from './utils'; import { AggParamEditorProps } from '../agg_param_props'; import { DefaultEditorAggParams } from '../agg_params'; @@ -29,7 +29,6 @@ function SubAggParamEditor({ agg, aggParam, formIsTouched, - value, metricAggs, state, setValue, @@ -44,7 +43,7 @@ function SubAggParamEditor({ } else if (!agg.params.customMetric) { setValue(aggParam.makeAgg(agg)); } - }, [value, metricAggs]); + }, [metricAggs, agg, setValue, aggParam]); const { onAggTypeChange, setAggParamValue } = useSubAggParamsHandlers( agg, diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/sub_metric.tsx b/src/plugins/vis_default_editor/public/components/controls/sub_metric.tsx similarity index 96% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/sub_metric.tsx rename to src/plugins/vis_default_editor/public/components/controls/sub_metric.tsx index ead3f8bb0062..361eeba9abdb 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/sub_metric.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/sub_metric.tsx @@ -17,11 +17,12 @@ * under the License. */ -import React, { useEffect } from 'react'; +import React from 'react'; import { EuiFormLabel, EuiSpacer } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; +import { useMount } from 'react-use'; -import { AggParamType, IAggConfig, AggGroupNames } from '../../../../../../plugins/data/public'; +import { AggParamType, IAggConfig, AggGroupNames } from '../../../../data/public'; import { useSubAggParamsHandlers } from './utils'; import { AggParamEditorProps } from '../agg_param_props'; import { DefaultEditorAggParams } from '../agg_params'; @@ -48,13 +49,13 @@ function SubMetricParamEditor({ const aggTitle = type === 'customMetric' ? metricTitle : bucketTitle; const aggGroup = type === 'customMetric' ? AggGroupNames.Metrics : AggGroupNames.Buckets; - useEffect(() => { + useMount(() => { if (agg.params[type]) { setValue(agg.params[type]); } else { setValue(aggParam.makeAgg(agg)); } - }, []); + }); const { onAggTypeChange, setAggParamValue } = useSubAggParamsHandlers( agg, diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/switch.tsx b/src/plugins/vis_default_editor/public/components/controls/switch.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/switch.tsx rename to src/plugins/vis_default_editor/public/components/controls/switch.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/test_utils.ts b/src/plugins/vis_default_editor/public/components/controls/test_utils.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/test_utils.ts rename to src/plugins/vis_default_editor/public/components/controls/test_utils.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/time_interval.tsx b/src/plugins/vis_default_editor/public/components/controls/time_interval.tsx similarity index 98% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/time_interval.tsx rename to src/plugins/vis_default_editor/public/components/controls/time_interval.tsx index 971a62faf7d7..4af41f67bc52 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/time_interval.tsx +++ b/src/plugins/vis_default_editor/public/components/controls/time_interval.tsx @@ -23,7 +23,7 @@ import { EuiFormRow, EuiIconTip, EuiComboBox, EuiComboBoxOptionOption } from '@e import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; -import { search, AggParamOption } from '../../../../../../plugins/data/public'; +import { search, AggParamOption } from '../../../../data/public'; import { AggParamEditorProps } from '../agg_param_props'; const { parseEsInterval, InvalidEsCalendarIntervalError } = search.aggs; @@ -161,7 +161,7 @@ function TimeIntervalParamEditor({ useEffect(() => { setValidity(isValid); - }, [isValid]); + }, [isValid, setValidity]); return ( { setValidity(isValid); - }, [isValid]); + }, [isValid, setValidity]); useEffect(() => { if (isFirstRun.current) { @@ -102,7 +102,7 @@ export function TopAggregateParamEditor({ if (filteredOptions.length === 1) { setValue(aggParam.options.find(opt => opt.value === filteredOptions[0].value)); } - }, [fieldType]); + }, [aggParam.options, fieldType, filteredOptions, setValue, value]); const handleChange = (event: React.ChangeEvent) => { if (event.target.value === emptyValue.value) { diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/top_field.tsx b/src/plugins/vis_default_editor/public/components/controls/top_field.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/top_field.tsx rename to src/plugins/vis_default_editor/public/components/controls/top_field.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/top_size.tsx b/src/plugins/vis_default_editor/public/components/controls/top_size.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/top_size.tsx rename to src/plugins/vis_default_editor/public/components/controls/top_size.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/top_sort_field.tsx b/src/plugins/vis_default_editor/public/components/controls/top_sort_field.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/top_sort_field.tsx rename to src/plugins/vis_default_editor/public/components/controls/top_sort_field.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/use_geocentroid.tsx b/src/plugins/vis_default_editor/public/components/controls/use_geocentroid.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/use_geocentroid.tsx rename to src/plugins/vis_default_editor/public/components/controls/use_geocentroid.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/agg_utils.ts b/src/plugins/vis_default_editor/public/components/controls/utils/agg_utils.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/agg_utils.ts rename to src/plugins/vis_default_editor/public/components/controls/utils/agg_utils.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/index.ts b/src/plugins/vis_default_editor/public/components/controls/utils/index.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/index.ts rename to src/plugins/vis_default_editor/public/components/controls/utils/index.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/inline_comp_wrapper.tsx b/src/plugins/vis_default_editor/public/components/controls/utils/inline_comp_wrapper.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/inline_comp_wrapper.tsx rename to src/plugins/vis_default_editor/public/components/controls/utils/inline_comp_wrapper.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/strings/comma_separated_list.test.ts b/src/plugins/vis_default_editor/public/components/controls/utils/strings/comma_separated_list.test.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/strings/comma_separated_list.test.ts rename to src/plugins/vis_default_editor/public/components/controls/utils/strings/comma_separated_list.test.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/strings/comma_separated_list.ts b/src/plugins/vis_default_editor/public/components/controls/utils/strings/comma_separated_list.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/strings/comma_separated_list.ts rename to src/plugins/vis_default_editor/public/components/controls/utils/strings/comma_separated_list.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/strings/index.ts b/src/plugins/vis_default_editor/public/components/controls/utils/strings/index.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/strings/index.ts rename to src/plugins/vis_default_editor/public/components/controls/utils/strings/index.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/strings/prose.test.ts b/src/plugins/vis_default_editor/public/components/controls/utils/strings/prose.test.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/strings/prose.test.ts rename to src/plugins/vis_default_editor/public/components/controls/utils/strings/prose.test.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/strings/prose.ts b/src/plugins/vis_default_editor/public/components/controls/utils/strings/prose.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/strings/prose.ts rename to src/plugins/vis_default_editor/public/components/controls/utils/strings/prose.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/use_handlers.ts b/src/plugins/vis_default_editor/public/components/controls/utils/use_handlers.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/controls/utils/use_handlers.ts rename to src/plugins/vis_default_editor/public/components/controls/utils/use_handlers.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/controls.tsx b/src/plugins/vis_default_editor/public/components/sidebar/controls.tsx similarity index 98% rename from src/legacy/core_plugins/vis_default_editor/public/components/sidebar/controls.tsx rename to src/plugins/vis_default_editor/public/components/sidebar/controls.tsx index 18b445b4a26d..db9d7d9e3316 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/controls.tsx +++ b/src/plugins/vis_default_editor/public/components/sidebar/controls.tsx @@ -30,7 +30,7 @@ import { FormattedMessage } from '@kbn/i18n/react'; import { i18n } from '@kbn/i18n'; import { useDebounce } from 'react-use'; -import { Vis } from '../../../../../../plugins/visualizations/public'; +import { Vis } from 'src/plugins/visualizations/public'; import { discardChanges, EditorAction } from './state'; interface DefaultEditorControlsProps { diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/data_tab.tsx b/src/plugins/vis_default_editor/public/components/sidebar/data_tab.tsx similarity index 97% rename from src/legacy/core_plugins/vis_default_editor/public/components/sidebar/data_tab.tsx rename to src/plugins/vis_default_editor/public/components/sidebar/data_tab.tsx index 0c967723db8e..0466c64541e2 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/data_tab.tsx +++ b/src/plugins/vis_default_editor/public/components/sidebar/data_tab.tsx @@ -26,7 +26,8 @@ import { IAggConfig, IMetricAggType, search, -} from '../../../../../../plugins/data/public'; + TimeRange, +} from '../../../../data/public'; import { DefaultEditorAggGroup } from '../agg_group'; import { EditorAction, @@ -39,7 +40,6 @@ import { } from './state'; import { AddSchema, ReorderAggs, DefaultEditorAggCommonProps } from '../agg_common_props'; import { ISchemas } from '../../schemas'; -import { TimeRange } from '../../../../../../plugins/data/public'; import { EditorVisState } from './state/reducers'; export interface DefaultEditorDataTabProps { diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/index.ts b/src/plugins/vis_default_editor/public/components/sidebar/index.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/sidebar/index.ts rename to src/plugins/vis_default_editor/public/components/sidebar/index.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/navbar.tsx b/src/plugins/vis_default_editor/public/components/sidebar/navbar.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/sidebar/navbar.tsx rename to src/plugins/vis_default_editor/public/components/sidebar/navbar.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar.tsx b/src/plugins/vis_default_editor/public/components/sidebar/sidebar.tsx similarity index 96% rename from src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar.tsx rename to src/plugins/vis_default_editor/public/components/sidebar/sidebar.tsx index b24486a12fd2..9dfeae1815d1 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar.tsx +++ b/src/plugins/vis_default_editor/public/components/sidebar/sidebar.tsx @@ -23,16 +23,15 @@ import { i18n } from '@kbn/i18n'; import { keyCodes, EuiButtonIcon, EuiFlexGroup, EuiFlexItem } from '@elastic/eui'; import { EventEmitter } from 'events'; -import { Vis } from 'src/plugins/visualizations/public'; +import { Vis, PersistedState } from 'src/plugins/visualizations/public'; +import { SavedSearch } from 'src/plugins/discover/public'; +import { TimeRange } from 'src/plugins/data/public'; import { DefaultEditorNavBar, OptionTab } from './navbar'; import { DefaultEditorControls } from './controls'; import { setStateParamValue, useEditorReducer, useEditorFormState, discardChanges } from './state'; import { DefaultEditorAggCommonProps } from '../agg_common_props'; import { SidebarTitle } from './sidebar_title'; -import { PersistedState } from '../../../../../../plugins/visualizations/public'; -import { SavedSearch } from '../../../../../../plugins/discover/public'; import { Schema } from '../../schemas'; -import { TimeRange } from '../../../../../../plugins/data/public'; interface DefaultEditorSideBarProps { isCollapsed: boolean; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx b/src/plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx similarity index 97% rename from src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx rename to src/plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx index fb63a598a4fa..c9f83e5b474a 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx +++ b/src/plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx @@ -35,8 +35,8 @@ import { import { FormattedMessage } from '@kbn/i18n/react'; import { i18n } from '@kbn/i18n'; -import { Vis } from '../../../../../../plugins/visualizations/public'; -import { SavedSearch } from '../../../../../../plugins/discover/public'; +import { Vis } from 'src/plugins/visualizations/public'; +import { SavedSearch } from 'src/plugins/discover/public'; interface LinkedSearchProps { savedSearch: SavedSearch; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/state/actions.ts b/src/plugins/vis_default_editor/public/components/sidebar/state/actions.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/sidebar/state/actions.ts rename to src/plugins/vis_default_editor/public/components/sidebar/state/actions.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/state/constants.ts b/src/plugins/vis_default_editor/public/components/sidebar/state/constants.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/sidebar/state/constants.ts rename to src/plugins/vis_default_editor/public/components/sidebar/state/constants.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/state/editor_form_state.ts b/src/plugins/vis_default_editor/public/components/sidebar/state/editor_form_state.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/sidebar/state/editor_form_state.ts rename to src/plugins/vis_default_editor/public/components/sidebar/state/editor_form_state.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/state/index.ts b/src/plugins/vis_default_editor/public/components/sidebar/state/index.ts similarity index 96% rename from src/legacy/core_plugins/vis_default_editor/public/components/sidebar/state/index.ts rename to src/plugins/vis_default_editor/public/components/sidebar/state/index.ts index d39d6d07b32d..1bfa100cbd0f 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/state/index.ts +++ b/src/plugins/vis_default_editor/public/components/sidebar/state/index.ts @@ -24,7 +24,7 @@ import { Vis } from 'src/plugins/visualizations/public'; import { createEditorStateReducer, initEditorState, EditorVisState } from './reducers'; import { EditorStateActionTypes } from './constants'; import { EditorAction } from './actions'; -import { useKibana } from '../../../../../../../plugins/kibana_react/public'; +import { useKibana } from '../../../../../kibana_react/public'; import { VisDefaultEditorKibanaServices } from '../../../types'; export * from './editor_form_state'; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/state/reducers.ts b/src/plugins/vis_default_editor/public/components/sidebar/state/reducers.ts similarity index 99% rename from src/legacy/core_plugins/vis_default_editor/public/components/sidebar/state/reducers.ts rename to src/plugins/vis_default_editor/public/components/sidebar/state/reducers.ts index b9f89cebd8bf..4e7a2904584d 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/state/reducers.ts +++ b/src/plugins/vis_default_editor/public/components/sidebar/state/reducers.ts @@ -20,7 +20,7 @@ import { cloneDeep } from 'lodash'; import { Vis } from 'src/plugins/visualizations/public'; -import { AggGroupNames, DataPublicPluginStart } from '../../../../../../../plugins/data/public'; +import { AggGroupNames, DataPublicPluginStart } from '../../../../../data/public'; import { EditorStateActionTypes } from './constants'; import { getEnabledMetricAggsCount } from '../../agg_group_helper'; import { EditorAction } from './actions'; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/utils/editor_config.ts b/src/plugins/vis_default_editor/public/components/utils/editor_config.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/utils/editor_config.ts rename to src/plugins/vis_default_editor/public/components/utils/editor_config.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/utils/index.ts b/src/plugins/vis_default_editor/public/components/utils/index.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/components/utils/index.ts rename to src/plugins/vis_default_editor/public/components/utils/index.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/default_editor.tsx b/src/plugins/vis_default_editor/public/default_editor.tsx similarity index 94% rename from src/legacy/core_plugins/vis_default_editor/public/default_editor.tsx rename to src/plugins/vis_default_editor/public/default_editor.tsx index 899b9c1b5fd6..f1963b94dcf9 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/default_editor.tsx +++ b/src/plugins/vis_default_editor/public/default_editor.tsx @@ -19,8 +19,8 @@ import React, { useEffect, useRef, useState, useCallback } from 'react'; -import { EditorRenderProps } from '../../kibana/public/visualize/np_ready/types'; -import { PanelsContainer, Panel } from '../../../../plugins/kibana_react/public'; +import { EditorRenderProps } from 'src/legacy/core_plugins/kibana/public/visualize/np_ready/types'; +import { PanelsContainer, Panel } from '../../kibana_react/public'; import './vis_type_agg_filter'; import { DefaultEditorSideBar } from './components/sidebar'; diff --git a/src/legacy/core_plugins/vis_default_editor/public/default_editor_controller.tsx b/src/plugins/vis_default_editor/public/default_editor_controller.tsx similarity index 92% rename from src/legacy/core_plugins/vis_default_editor/public/default_editor_controller.tsx rename to src/plugins/vis_default_editor/public/default_editor_controller.tsx index 58e67b5064da..798da09f8e30 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/default_editor_controller.tsx +++ b/src/plugins/vis_default_editor/public/default_editor_controller.tsx @@ -23,9 +23,9 @@ import { i18n } from '@kbn/i18n'; import { EventEmitter } from 'events'; import { EditorRenderProps } from 'src/legacy/core_plugins/kibana/public/visualize/np_ready/types'; -import { Vis, VisualizeEmbeddableContract } from '../../../../plugins/visualizations/public'; -import { Storage } from '../../../../plugins/kibana_utils/public'; -import { KibanaContextProvider } from '../../../../plugins/kibana_react/public'; +import { Vis, VisualizeEmbeddableContract } from 'src/plugins/visualizations/public'; +import { Storage } from '../../kibana_utils/public'; +import { KibanaContextProvider } from '../../kibana_react/public'; import { DefaultEditor } from './default_editor'; import { DefaultEditorDataTab, OptionTab } from './components/sidebar'; diff --git a/src/legacy/core_plugins/vis_default_editor/public/editor_size.ts b/src/plugins/vis_default_editor/public/editor_size.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/editor_size.ts rename to src/plugins/vis_default_editor/public/editor_size.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/index.scss b/src/plugins/vis_default_editor/public/index.scss similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/index.scss rename to src/plugins/vis_default_editor/public/index.scss diff --git a/src/legacy/core_plugins/vis_default_editor/public/index.ts b/src/plugins/vis_default_editor/public/index.ts similarity index 97% rename from src/legacy/core_plugins/vis_default_editor/public/index.ts rename to src/plugins/vis_default_editor/public/index.ts index 156d50f451b5..6c58c6df26b0 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/index.ts +++ b/src/plugins/vis_default_editor/public/index.ts @@ -17,6 +17,8 @@ * under the License. */ +import './index.scss'; + export { DefaultEditorController } from './default_editor_controller'; export { useValidation } from './components/controls/utils'; export { RangesParamEditor, RangeValues } from './components/controls/ranges'; diff --git a/src/legacy/core_plugins/vis_default_editor/public/schemas.ts b/src/plugins/vis_default_editor/public/schemas.ts similarity index 96% rename from src/legacy/core_plugins/vis_default_editor/public/schemas.ts rename to src/plugins/vis_default_editor/public/schemas.ts index 4e632da44afc..05ba5fa9c941 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/schemas.ts +++ b/src/plugins/vis_default_editor/public/schemas.ts @@ -21,7 +21,7 @@ import _, { defaults } from 'lodash'; import { Optional } from '@kbn/utility-types'; -import { AggGroupNames, AggParam, IAggGroupNames } from '../../../../plugins/data/public'; +import { AggGroupNames, AggParam, IAggGroupNames } from '../../data/public'; export interface ISchemas { [AggGroupNames.Buckets]: Schema[]; diff --git a/src/legacy/core_plugins/vis_default_editor/public/types.ts b/src/plugins/vis_default_editor/public/types.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/types.ts rename to src/plugins/vis_default_editor/public/types.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/utils.test.ts b/src/plugins/vis_default_editor/public/utils.test.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/utils.test.ts rename to src/plugins/vis_default_editor/public/utils.test.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/utils.ts b/src/plugins/vis_default_editor/public/utils.ts similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/utils.ts rename to src/plugins/vis_default_editor/public/utils.ts diff --git a/src/legacy/core_plugins/vis_default_editor/public/vis_options_props.tsx b/src/plugins/vis_default_editor/public/vis_options_props.tsx similarity index 100% rename from src/legacy/core_plugins/vis_default_editor/public/vis_options_props.tsx rename to src/plugins/vis_default_editor/public/vis_options_props.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/vis_type_agg_filter.ts b/src/plugins/vis_default_editor/public/vis_type_agg_filter.ts similarity index 97% rename from src/legacy/core_plugins/vis_default_editor/public/vis_type_agg_filter.ts rename to src/plugins/vis_default_editor/public/vis_type_agg_filter.ts index 3ff212c43e6e..bf5661f42a9f 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/vis_type_agg_filter.ts +++ b/src/plugins/vis_default_editor/public/vis_type_agg_filter.ts @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ -import { IAggType, IAggConfig, IndexPattern, search } from '../../../../plugins/data/public'; +import { IAggType, IAggConfig, IndexPattern, search } from '../../data/public'; const { aggTypeFilters, propFilter } = search.aggs; const filterByName = propFilter('name'); diff --git a/test/plugin_functional/plugins/kbn_tp_custom_visualizations/public/self_changing_vis/self_changing_editor.tsx b/test/plugin_functional/plugins/kbn_tp_custom_visualizations/public/self_changing_vis/self_changing_editor.tsx index d3f66d708603..6c430e34d5e2 100644 --- a/test/plugin_functional/plugins/kbn_tp_custom_visualizations/public/self_changing_vis/self_changing_editor.tsx +++ b/test/plugin_functional/plugins/kbn_tp_custom_visualizations/public/self_changing_vis/self_changing_editor.tsx @@ -20,7 +20,7 @@ import React from 'react'; import { EuiFieldNumber, EuiFormRow } from '@elastic/eui'; -import { VisOptionsProps } from '../../../../../../src/legacy/core_plugins/vis_default_editor/public/vis_options_props'; +import { VisOptionsProps } from 'src/plugins/vis_default_editor/public/vis_options_props'; interface CounterParams { counter: number; From 3d6fd68eb2117290451abe223afd5de19a55cb19 Mon Sep 17 00:00:00 2001 From: Maryia Lapata Date: Wed, 8 Apr 2020 12:48:41 +0300 Subject: [PATCH 16/36] Get rid of ui/i18n in Discover (#62799) --- .../public/discover/get_inner_angular.ts | 1 - .../kibana/public/discover/kibana_services.ts | 2 - .../components/action_bar/action_bar.tsx | 146 ++++---- .../action_bar/action_bar_directive.ts | 4 +- .../np_ready/angular/directives/index.js | 10 +- .../np_ready/angular/directives/no_results.js | 46 +-- .../angular/directives/uninitialized.tsx | 70 ++-- .../public/discover/np_ready/angular/doc.ts | 4 +- .../doc_table/components/pager/index.ts | 5 +- .../components/pager/tool_bar_pager_text.tsx | 18 +- .../doc_table/components/table_header.ts | 4 +- .../discover/np_ready/components/doc/doc.tsx | 148 ++++---- .../components/fetch_error/fetch_error.tsx | 32 +- .../components/sidebar/discover_sidebar.tsx | 318 +++++++++--------- .../sidebar/discover_sidebar_directive.ts | 3 +- 15 files changed, 414 insertions(+), 397 deletions(-) diff --git a/src/legacy/core_plugins/kibana/public/discover/get_inner_angular.ts b/src/legacy/core_plugins/kibana/public/discover/get_inner_angular.ts index 607d79b81618..6ccbc13aeeb5 100644 --- a/src/legacy/core_plugins/kibana/public/discover/get_inner_angular.ts +++ b/src/legacy/core_plugins/kibana/public/discover/get_inner_angular.ts @@ -201,7 +201,6 @@ function createDocTableModule() { .directive('docTable', createDocTableDirective) .directive('kbnTableHeader', createTableHeaderDirective) .directive('toolBarPagerText', createToolBarPagerTextDirective) - .directive('toolBarPagerText', createToolBarPagerTextDirective) .directive('kbnTableRow', createTableRowDirective) .directive('toolBarPagerButtons', createToolBarPagerButtonsDirective) .directive('kbnInfiniteScroll', createInfiniteScrollDirective) diff --git a/src/legacy/core_plugins/kibana/public/discover/kibana_services.ts b/src/legacy/core_plugins/kibana/public/discover/kibana_services.ts index 55f369eaecd2..e6421142f666 100644 --- a/src/legacy/core_plugins/kibana/public/discover/kibana_services.ts +++ b/src/legacy/core_plugins/kibana/public/discover/kibana_services.ts @@ -50,8 +50,6 @@ export const [getUrlTracker, setUrlTracker] = createGetterSetter<{ setTrackedUrl: (url: string) => void; }>('urlTracker'); -// EXPORT legacy static dependencies, should be migrated when available in a new version; -export { wrapInI18nContext } from 'ui/i18n'; import { search } from '../../../../../plugins/data/public'; import { createGetterSetter } from '../../../../../plugins/kibana_utils/common'; export const { getRequestInspectorStats, getResponseInspectorStats, tabifyAggResponse } = search; diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/context/components/action_bar/action_bar.tsx b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/context/components/action_bar/action_bar.tsx index 57ad8e0b1040..8fcfcba08955 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/context/components/action_bar/action_bar.tsx +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/context/components/action_bar/action_bar.tsx @@ -18,7 +18,7 @@ */ import React, { useState } from 'react'; import { i18n } from '@kbn/i18n'; -import { FormattedMessage } from '@kbn/i18n/react'; +import { FormattedMessage, I18nProvider } from '@kbn/i18n/react'; import { EuiButtonEmpty, EuiFieldNumber, @@ -88,77 +88,83 @@ export function ActionBar({ }; return ( -
- {isSuccessor && } - {isSuccessor && showWarning && } - {isSuccessor && showWarning && } - - - { - const value = newDocCount + defaultStepSize; - if (isValid(value)) { - setNewDocCount(value); - onChangeCount(value); - } - }} - flush="right" - > - - - - - - { - setNewDocCount(ev.target.valueAsNumber); - }} - onBlur={() => { - if (newDocCount !== docCount && isValid(newDocCount)) { - onChangeCount(newDocCount); + + + {isSuccessor && } + {isSuccessor && showWarning && ( + + )} + {isSuccessor && showWarning && } + + + { + const value = newDocCount + defaultStepSize; + if (isValid(value)) { + setNewDocCount(value); + onChangeCount(value); } }} - type="number" - value={newDocCount >= 0 ? newDocCount : ''} - /> - - - - - {isSuccessor ? ( - + + + + + + { + setNewDocCount(ev.target.valueAsNumber); + }} + onBlur={() => { + if (newDocCount !== docCount && isValid(newDocCount)) { + onChangeCount(newDocCount); + } + }} + type="number" + value={newDocCount >= 0 ? newDocCount : ''} /> - ) : ( - - )} - - - - {!isSuccessor && showWarning && } - {!isSuccessor && } - +
+
+ + + {isSuccessor ? ( + + ) : ( + + )} + + +
+ {!isSuccessor && showWarning && ( + + )} + {!isSuccessor && } + + ); } diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/context/components/action_bar/action_bar_directive.ts b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/context/components/action_bar/action_bar_directive.ts index 697b039adde8..b705b4e4faeb 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/context/components/action_bar/action_bar_directive.ts +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/context/components/action_bar/action_bar_directive.ts @@ -16,9 +16,9 @@ * specific language governing permissions and limitations * under the License. */ -import { getAngularModule, wrapInI18nContext } from '../../../../../kibana_services'; +import { getAngularModule } from '../../../../../kibana_services'; import { ActionBar } from './action_bar'; getAngularModule().directive('contextActionBar', function(reactDirective: any) { - return reactDirective(wrapInI18nContext(ActionBar)); + return reactDirective(ActionBar); }); diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/directives/index.js b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/directives/index.js index 5482258e0656..5a999235bf9a 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/directives/index.js +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/directives/index.js @@ -20,16 +20,12 @@ import { DiscoverNoResults } from './no_results'; import { DiscoverUninitialized } from './uninitialized'; import { DiscoverHistogram } from './histogram'; -import { getAngularModule, wrapInI18nContext } from '../../../kibana_services'; +import { getAngularModule } from '../../../kibana_services'; const app = getAngularModule(); -app.directive('discoverNoResults', reactDirective => - reactDirective(wrapInI18nContext(DiscoverNoResults)) -); +app.directive('discoverNoResults', reactDirective => reactDirective(DiscoverNoResults)); -app.directive('discoverUninitialized', reactDirective => - reactDirective(wrapInI18nContext(DiscoverUninitialized)) -); +app.directive('discoverUninitialized', reactDirective => reactDirective(DiscoverUninitialized)); app.directive('discoverHistogram', reactDirective => reactDirective(DiscoverHistogram)); diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/directives/no_results.js b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/directives/no_results.js index ba02068590c1..ad81d5252a25 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/directives/no_results.js +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/directives/no_results.js @@ -18,7 +18,7 @@ */ import React, { Component, Fragment } from 'react'; -import { FormattedMessage } from '@kbn/i18n/react'; +import { FormattedMessage, I18nProvider } from '@kbn/i18n/react'; import PropTypes from 'prop-types'; import { @@ -247,29 +247,31 @@ export class DiscoverNoResults extends Component { } return ( - - + + + - - - - } - color="warning" - iconType="help" - data-test-subj="discoverNoResults" - /> + + + + } + color="warning" + iconType="help" + data-test-subj="discoverNoResults" + /> - {shardFailuresMessage} - {timeFieldMessage} - {luceneQueryMessage} - - - + {shardFailuresMessage} + {timeFieldMessage} + {luceneQueryMessage} + +
+ + ); } } diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/directives/uninitialized.tsx b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/directives/uninitialized.tsx index f40865800098..b308607bbfbb 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/directives/uninitialized.tsx +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/directives/uninitialized.tsx @@ -18,7 +18,7 @@ */ import React from 'react'; -import { FormattedMessage } from '@kbn/i18n/react'; +import { FormattedMessage, I18nProvider } from '@kbn/i18n/react'; import { EuiButton, EuiEmptyPrompt, EuiPage, EuiPageBody, EuiPageContent } from '@elastic/eui'; @@ -28,38 +28,40 @@ interface Props { export const DiscoverUninitialized = ({ onRefresh }: Props) => { return ( - - - - - -