From 56ba753db0090b7e1109fc14b35eecfaf08719a3 Mon Sep 17 00:00:00 2001 From: Rudolf Meijering Date: Fri, 28 Feb 2020 22:32:58 +0100 Subject: [PATCH 001/120] Don't start pollEsNodesVersion unless someone subscribes (#56923) * Don't start pollEsNodesVersion unless someone subscribes By not polling until subscribed to, we prevent verbose error logs when the optimizer is run (which automatically skips migrations). * Test pollEsNodeVersions behaviour * Cleanup unused code * PR Feedback * Make test more stable Co-authored-by: Elastic Machine --- .../elasticsearch_service.test.ts | 133 +++++++++++++----- .../elasticsearch/elasticsearch_service.ts | 49 +++---- .../saved_objects/saved_objects_service.ts | 8 ++ 3 files changed, 127 insertions(+), 63 deletions(-) diff --git a/src/core/server/elasticsearch/elasticsearch_service.test.ts b/src/core/server/elasticsearch/elasticsearch_service.test.ts index 022a03e01d37df..2667859f303d44 100644 --- a/src/core/server/elasticsearch/elasticsearch_service.test.ts +++ b/src/core/server/elasticsearch/elasticsearch_service.test.ts @@ -33,6 +33,9 @@ import { ElasticsearchService } from './elasticsearch_service'; import { elasticsearchServiceMock } from './elasticsearch_service.mock'; import { duration } from 'moment'; +const delay = async (durationMs: number) => + await new Promise(resolve => setTimeout(resolve, durationMs)); + let elasticsearchService: ElasticsearchService; const configService = configServiceMock.create(); const deps = { @@ -42,7 +45,7 @@ configService.atPath.mockReturnValue( new BehaviorSubject({ hosts: ['http://1.2.3.4'], healthCheck: { - delay: duration(2000), + delay: duration(10), }, ssl: { verificationMode: 'none', @@ -125,21 +128,21 @@ describe('#setup', () => { const config = MockClusterClient.mock.calls[0][0]; expect(config).toMatchInlineSnapshot(` -Object { - "healthCheckDelay": "PT2S", - "hosts": Array [ - "http://8.8.8.8", - ], - "logQueries": true, - "requestHeadersWhitelist": Array [ - undefined, - ], - "ssl": Object { - "certificate": "certificate-value", - "verificationMode": "none", - }, -} -`); + Object { + "healthCheckDelay": "PT0.01S", + "hosts": Array [ + "http://8.8.8.8", + ], + "logQueries": true, + "requestHeadersWhitelist": Array [ + undefined, + ], + "ssl": Object { + "certificate": "certificate-value", + "verificationMode": "none", + }, + } + `); }); it('falls back to elasticsearch config if custom config not passed', async () => { const setupContract = await elasticsearchService.setup(deps); @@ -150,24 +153,24 @@ Object { const config = MockClusterClient.mock.calls[0][0]; expect(config).toMatchInlineSnapshot(` -Object { - "healthCheckDelay": "PT2S", - "hosts": Array [ - "http://1.2.3.4", - ], - "requestHeadersWhitelist": Array [ - undefined, - ], - "ssl": Object { - "alwaysPresentCertificate": undefined, - "certificate": undefined, - "certificateAuthorities": undefined, - "key": undefined, - "keyPassphrase": undefined, - "verificationMode": "none", - }, -} -`); + Object { + "healthCheckDelay": "PT0.01S", + "hosts": Array [ + "http://1.2.3.4", + ], + "requestHeadersWhitelist": Array [ + undefined, + ], + "ssl": Object { + "alwaysPresentCertificate": undefined, + "certificate": undefined, + "certificateAuthorities": undefined, + "key": undefined, + "keyPassphrase": undefined, + "verificationMode": "none", + }, + } + `); }); it('does not merge elasticsearch hosts if custom config overrides', async () => { @@ -213,6 +216,45 @@ Object { `); }); }); + + it('esNodeVersionCompatibility$ only starts polling when subscribed to', async done => { + const mockAdminClusterClientInstance = elasticsearchServiceMock.createClusterClient(); + const mockDataClusterClientInstance = elasticsearchServiceMock.createClusterClient(); + MockClusterClient.mockImplementationOnce( + () => mockAdminClusterClientInstance + ).mockImplementationOnce(() => mockDataClusterClientInstance); + + mockAdminClusterClientInstance.callAsInternalUser.mockRejectedValue(new Error()); + + const setupContract = await elasticsearchService.setup(deps); + await delay(10); + + expect(mockAdminClusterClientInstance.callAsInternalUser).toHaveBeenCalledTimes(0); + setupContract.esNodesCompatibility$.subscribe(() => { + expect(mockAdminClusterClientInstance.callAsInternalUser).toHaveBeenCalledTimes(1); + done(); + }); + }); + + it('esNodeVersionCompatibility$ stops polling when unsubscribed from', async done => { + const mockAdminClusterClientInstance = elasticsearchServiceMock.createClusterClient(); + const mockDataClusterClientInstance = elasticsearchServiceMock.createClusterClient(); + MockClusterClient.mockImplementationOnce( + () => mockAdminClusterClientInstance + ).mockImplementationOnce(() => mockDataClusterClientInstance); + + mockAdminClusterClientInstance.callAsInternalUser.mockRejectedValue(new Error()); + + const setupContract = await elasticsearchService.setup(deps); + + expect(mockAdminClusterClientInstance.callAsInternalUser).toHaveBeenCalledTimes(0); + const sub = setupContract.esNodesCompatibility$.subscribe(async () => { + sub.unsubscribe(); + await delay(100); + expect(mockAdminClusterClientInstance.callAsInternalUser).toHaveBeenCalledTimes(1); + done(); + }); + }); }); describe('#stop', () => { @@ -229,4 +271,27 @@ describe('#stop', () => { expect(mockAdminClusterClientInstance.close).toHaveBeenCalledTimes(1); expect(mockDataClusterClientInstance.close).toHaveBeenCalledTimes(1); }); + + it('stops pollEsNodeVersions even if there are active subscriptions', async done => { + expect.assertions(2); + const mockAdminClusterClientInstance = elasticsearchServiceMock.createCustomClusterClient(); + const mockDataClusterClientInstance = elasticsearchServiceMock.createCustomClusterClient(); + + MockClusterClient.mockImplementationOnce( + () => mockAdminClusterClientInstance + ).mockImplementationOnce(() => mockDataClusterClientInstance); + + mockAdminClusterClientInstance.callAsInternalUser.mockRejectedValue(new Error()); + + const setupContract = await elasticsearchService.setup(deps); + + setupContract.esNodesCompatibility$.subscribe(async () => { + expect(mockAdminClusterClientInstance.callAsInternalUser).toHaveBeenCalledTimes(1); + + await elasticsearchService.stop(); + await delay(100); + expect(mockAdminClusterClientInstance.callAsInternalUser).toHaveBeenCalledTimes(1); + done(); + }); + }); }); diff --git a/src/core/server/elasticsearch/elasticsearch_service.ts b/src/core/server/elasticsearch/elasticsearch_service.ts index 9eaf125cc006fc..6616b42f136c04 100644 --- a/src/core/server/elasticsearch/elasticsearch_service.ts +++ b/src/core/server/elasticsearch/elasticsearch_service.ts @@ -17,8 +17,17 @@ * under the License. */ -import { ConnectableObservable, Observable, Subscription } from 'rxjs'; -import { filter, first, map, publishReplay, switchMap, take } from 'rxjs/operators'; +import { ConnectableObservable, Observable, Subscription, Subject } from 'rxjs'; +import { + filter, + first, + map, + publishReplay, + switchMap, + take, + shareReplay, + takeUntil, +} from 'rxjs/operators'; import { CoreService } from '../../types'; import { merge } from '../../utils'; @@ -47,13 +56,8 @@ interface SetupDeps { export class ElasticsearchService implements CoreService { private readonly log: Logger; private readonly config$: Observable; - private subscriptions: { - client?: Subscription; - esNodesCompatibility?: Subscription; - } = { - client: undefined, - esNodesCompatibility: undefined, - }; + private subscription: Subscription | undefined; + private stop$ = new Subject(); private kibanaVersion: string; constructor(private readonly coreContext: CoreContext) { @@ -69,7 +73,7 @@ export class ElasticsearchService implements CoreService { - if (this.subscriptions.client !== undefined) { + if (this.subscription !== undefined) { this.log.error('Clients cannot be changed after they are created'); return false; } @@ -100,7 +104,7 @@ export class ElasticsearchService implements CoreService; - this.subscriptions.client = clients$.connect(); + this.subscription = clients$.connect(); const config = await this.config$.pipe(first()).toPromise(); @@ -164,18 +168,7 @@ export class ElasticsearchService implements CoreService).connect(); - - // TODO: Move to Status Service https://github.com/elastic/kibana/issues/41983 - esNodesCompatibility$.subscribe(({ isCompatible, message }) => { - if (!isCompatible && message) { - this.log.error(message); - } - }); + }).pipe(takeUntil(this.stop$), shareReplay({ refCount: true, bufferSize: 1 })); return { legacy: { config$: clients$.pipe(map(clients => clients.config)) }, @@ -195,12 +188,10 @@ export class ElasticsearchService implements CoreService { + if (!isCompatible && message) { + this.logger.error(message); + } + }); + await this.setupDeps!.elasticsearch.esNodesCompatibility$.pipe( filter(nodes => nodes.isCompatible), take(1) From d55ddd23a149567f98880207d1c8c57ed8a90fae Mon Sep 17 00:00:00 2001 From: spalger Date: Fri, 28 Feb 2020 14:58:32 -0700 Subject: [PATCH 002/120] disable failing suite (#58942) --- .../lib/request_interceptors/on_request_interceptor.test.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/x-pack/plugins/spaces/server/lib/request_interceptors/on_request_interceptor.test.ts b/x-pack/plugins/spaces/server/lib/request_interceptors/on_request_interceptor.test.ts index 448bc39eb606e0..1b673d3418983f 100644 --- a/x-pack/plugins/spaces/server/lib/request_interceptors/on_request_interceptor.test.ts +++ b/x-pack/plugins/spaces/server/lib/request_interceptors/on_request_interceptor.test.ts @@ -18,7 +18,8 @@ import { import * as kbnTestServer from '../../../../../../src/test_utils/kbn_server'; import { elasticsearchServiceMock } from 'src/core/server/mocks'; -describe('onRequestInterceptor', () => { +// FAILING: https://github.com/elastic/kibana/issues/58942 +describe.skip('onRequestInterceptor', () => { let root: ReturnType; beforeEach(async () => { From 100c570219becb3727e31746d957820170881656 Mon Sep 17 00:00:00 2001 From: Patrick Mueller Date: Fri, 28 Feb 2020 17:23:56 -0500 Subject: [PATCH 003/120] change to have kibana --ssl cli option use more recent certs (#57933) * change to have --ssl cli option use more recent certs * also configure 'server.ssl.certificateAuthorities' per PR review * delete theoretically now-unused ssl creds --- src/cli/dev_ssl.js | 22 ---------------------- src/cli/serve/serve.js | 12 +++++------- test/dev_certs/server.crt | 20 -------------------- test/dev_certs/server.key | 27 --------------------------- 4 files changed, 5 insertions(+), 76 deletions(-) delete mode 100644 src/cli/dev_ssl.js delete mode 100644 test/dev_certs/server.crt delete mode 100644 test/dev_certs/server.key diff --git a/src/cli/dev_ssl.js b/src/cli/dev_ssl.js deleted file mode 100644 index 110f44ee57b7d7..00000000000000 --- a/src/cli/dev_ssl.js +++ /dev/null @@ -1,22 +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'; -export const DEV_SSL_CERT_PATH = resolve(__dirname, '../../test/dev_certs/server.crt'); -export const DEV_SSL_KEY_PATH = resolve(__dirname, '../../test/dev_certs/server.key'); diff --git a/src/cli/serve/serve.js b/src/cli/serve/serve.js index be3fc319389d71..29d0fe16ee126a 100644 --- a/src/cli/serve/serve.js +++ b/src/cli/serve/serve.js @@ -28,8 +28,6 @@ import { getConfigPath } from '../../core/server/path'; import { bootstrap } from '../../core/server'; import { readKeystore } from './read_keystore'; -import { DEV_SSL_CERT_PATH, DEV_SSL_KEY_PATH } from '../dev_ssl'; - function canRequire(path) { try { require.resolve(path); @@ -90,7 +88,7 @@ function applyConfigOverrides(rawConfig, opts, extraCliOptions) { if (opts.ssl) { // @kbn/dev-utils is part of devDependencies - const { CA_CERT_PATH } = require('@kbn/dev-utils'); + const { CA_CERT_PATH, KBN_KEY_PATH, KBN_CERT_PATH } = require('@kbn/dev-utils'); const customElasticsearchHosts = opts.elasticsearch ? opts.elasticsearch.split(',') : [].concat(get('elasticsearch.hosts') || []); @@ -104,6 +102,7 @@ function applyConfigOverrides(rawConfig, opts, extraCliOptions) { ensureNotDefined('server.ssl.key'); ensureNotDefined('server.ssl.keystore.path'); ensureNotDefined('server.ssl.truststore.path'); + ensureNotDefined('server.ssl.certificateAuthorities'); ensureNotDefined('elasticsearch.ssl.certificateAuthorities'); const elasticsearchHosts = ( @@ -121,10 +120,9 @@ function applyConfigOverrides(rawConfig, opts, extraCliOptions) { }); set('server.ssl.enabled', true); - // TODO: change this cert/key to KBN_CERT_PATH and KBN_KEY_PATH from '@kbn/dev-utils'; will require some work to avoid breaking - // functional tests. Once that is done, the existing test cert/key at DEV_SSL_CERT_PATH and DEV_SSL_KEY_PATH can be deleted. - set('server.ssl.certificate', DEV_SSL_CERT_PATH); - set('server.ssl.key', DEV_SSL_KEY_PATH); + set('server.ssl.certificate', KBN_CERT_PATH); + set('server.ssl.key', KBN_KEY_PATH); + set('server.ssl.certificateAuthorities', CA_CERT_PATH); set('elasticsearch.hosts', elasticsearchHosts); set('elasticsearch.ssl.certificateAuthorities', CA_CERT_PATH); } diff --git a/test/dev_certs/server.crt b/test/dev_certs/server.crt deleted file mode 100644 index c7a39de4b517a8..00000000000000 --- a/test/dev_certs/server.crt +++ /dev/null @@ -1,20 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIDMDCCAhgCCQCkOD7fnHiQrTANBgkqhkiG9w0BAQUFADBZMQswCQYDVQQGEwJB -VTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50ZXJuZXQgV2lkZ2l0 -cyBQdHkgTHRkMRIwEAYDVQQDEwlsb2NhbGhvc3QwIBcNMTYwMTE5MjExNjQ5WhgP -MjA4NDAyMDYyMTE2NDlaMFkxCzAJBgNVBAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0 -YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxEjAQBgNVBAMT -CWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALR63SnR -LW/Dgl0Vuy8gB6KjWwvajRWeXNgvlf6LX56oNsUFREHBLQlC2uT5R26F3tOqCDbs -MFNoyDjMBinXRRFJJ2Sokue7GSsGvBv41LMTHnO/MeCCbEOqghJS/QI89cV+u+Aw -9U+v426KAlCa1sGuE2+3/JvqdBQyheiukmGLiJ0OofpfgpYuFmKi2uYBKU3qzjUx -D01wQ4rCpq5nEnksGhgBeBDnheYmmDsj/wDvnz1exK/WprvTiHQ5MwuIQ4OybwgV -WDF+zv8PXrObrsZvD/ulrjh1cakvnCe2kDYEKMRiHUDesHS2jNJkBUe+FJo4/E3U -pFoYOtdoBe69BIUCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAQhjF91G0R662XJJ7 -jGMudA9VbRVCow8s68I/GWPZmpKxPAxwz0xiv1eFIoiP416LX9amnx3yAmUoN4Wr -Cq0jsgyT1AOiSCdxkvYsqQG3SFVVt5BDLjThH66Vxi7Bach6SyATa1NG588mg7n9 -pPJ4A1rcj+5kZuwnd52kfVLP+535lylwMyoyJa2AskieRPLNSzus2eUDTR6F+9Mb -eLOwp5rMl2nNYfLXUCSqEeC6uPu0yq6Tu0N0SjThfKndd2NU1fk3zyOjxyCIhGPe -G8VhrPY4lkJ9EE9Tuq095jwd1+q9fYzlKZWhOmg+IcOwUMgbgeWpeZTAhUIZAnia -4UH6NA== ------END CERTIFICATE----- diff --git a/test/dev_certs/server.key b/test/dev_certs/server.key deleted file mode 100644 index 5a6dfea9dc7e41..00000000000000 --- a/test/dev_certs/server.key +++ /dev/null @@ -1,27 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIEowIBAAKCAQEAtHrdKdEtb8OCXRW7LyAHoqNbC9qNFZ5c2C+V/otfnqg2xQVE -QcEtCULa5PlHboXe06oINuwwU2jIOMwGKddFEUknZKiS57sZKwa8G/jUsxMec78x -4IJsQ6qCElL9Ajz1xX674DD1T6/jbooCUJrWwa4Tb7f8m+p0FDKF6K6SYYuInQ6h -+l+Cli4WYqLa5gEpTerONTEPTXBDisKmrmcSeSwaGAF4EOeF5iaYOyP/AO+fPV7E -r9amu9OIdDkzC4hDg7JvCBVYMX7O/w9es5uuxm8P+6WuOHVxqS+cJ7aQNgQoxGId -QN6wdLaM0mQFR74Umjj8TdSkWhg612gF7r0EhQIDAQABAoIBADNwfU6o3vFm4OYV -BofU8jgppQ6I2QNbYoz/axnksXkv6oRXDvBK1cI4+tieL/zRTQQ5ByRYRyHO0JpX -lD4iq/3UQtUOsug3TGIWBlFWp5DulxRYXyflJGRY2b/NRW144HfMulGYwqJWuFTO -IwDEUQdczQ9fejEaLsF+8Omzr+b6+mEDewqoHb4mbr7gXMdkK85FU2tjWRHlUR+N -GMXRhQQE7o76UyYwNRbI418LaZitHcVYMKSsyU/+Uo/ivzD793OFzk5sDR9eThgi -B50yK2ClB+1bUfis18TXMtC4mZZeypTWifJpBzIiVLMBuN7/Y0HrSomIzyPC7ytW -5jZWCOECgYEA4k+AEmYOiIfPajT3YfG3y0Dptoup9x6zkzVNZnde3LgGRfezzJ7S -+lGbLNnIiuxAeHwZnyrptO0cgm0+SOCRwGXqySkl14WzD1P684nRwlQkzKv/50mZ -ZMUjM83SuIzh8mLv3F5xQ9td5R/y2kCw4YgyYHvhp1nLxEdwPbjtttkCgYEAzCgr -wlP0Uu5PlaSMKSbtmC6tHGv+kgTLM89V6o71+HiUTG6TWGmM+6XlT1cfVWE+27np -MsYoFTKI/meAeJwm+0pxEwemHgrgffkdmsWpTByLaOY1t/eNHagaLCGm2ZRu/WK7 -oltV18kPijnmFs1uZLvlBkxmkadrVAj/cw5uZ40CgYBFZt/9xHJ8iDmhdnDPBpO4 -r0V9B8Ot1yp24IfF/qGGyqCR4G6xN5u3zELsNDV99QmoaVZqK3zUUUrG7L2HF+da -u2aPHiFOwN+yuaxh90fucmN+qNinkziJYLN09Y/DrOC1toWcbRILH0DiPTP6npAf -+eaJFDSVX8JPhSD0rLupsQKBgEzILuz/NjyadEQLhstTYLiDlYfC9hNkyifKKr30 -1n2EnAHC9Jej2uoqEnwsgBRUZpes7A+0hw6x2uQTeTXjRKXt8Wj+z3MtFBFMx92V -yX5ene/t5PYznFczCeTfIylhsfyKTZdaUoa9j6Kk8+xPht1L7W7Y/Rp6pNsOJ0TW -gJ9hAoGBAOJDNPkmH1hY64bvR6P0zEyedClhxIclPHgCrntFTlspkMj/QY48K6IP -R8SZ5jDpxAquQDgvpiuZRDYMHBRJkUe2VpHJFYGl1MLTfoBYn1IH401ixUSBYxAW -yfE7/zMDZUov2Uu8Muto5R/yNHEKBMOLGjadkADhRIHbW4WG1yVr ------END RSA PRIVATE KEY----- From 3f1930ae63a7495c52ca018f09488f6b120db3ad Mon Sep 17 00:00:00 2001 From: Maryia Lapata Date: Sat, 29 Feb 2020 12:53:06 +0300 Subject: [PATCH 004/120] Move dev tools styles to NP (#58855) --- src/legacy/core_plugins/kibana/public/dev_tools/README.md | 1 - src/legacy/core_plugins/kibana/public/index.scss | 3 --- .../_index.scss => plugins/dev_tools/public/index.scss} | 0 src/plugins/dev_tools/public/plugin.ts | 2 ++ 4 files changed, 2 insertions(+), 4 deletions(-) rename src/{legacy/core_plugins/kibana/public/dev_tools/_index.scss => plugins/dev_tools/public/index.scss} (100%) diff --git a/src/legacy/core_plugins/kibana/public/dev_tools/README.md b/src/legacy/core_plugins/kibana/public/dev_tools/README.md index 0234830d6071c0..199ddcc754d041 100644 --- a/src/legacy/core_plugins/kibana/public/dev_tools/README.md +++ b/src/legacy/core_plugins/kibana/public/dev_tools/README.md @@ -1,4 +1,3 @@ This folder is just a left-over of the things that can't be moved to Kibana platform just yet: -* Styling (this can be moved as soon as there is support for styling in Kibana platform) * Check whether there are no dev tools and hide the link in the nav bar (this can be moved as soon as all dev tools are moved) \ No newline at end of file diff --git a/src/legacy/core_plugins/kibana/public/index.scss b/src/legacy/core_plugins/kibana/public/index.scss index 324458c0814d9f..3eef84c32db790 100644 --- a/src/legacy/core_plugins/kibana/public/index.scss +++ b/src/legacy/core_plugins/kibana/public/index.scss @@ -10,9 +10,6 @@ // vis_type_vislib UI styles @import 'src/legacy/core_plugins/vis_type_vislib/public/index'; -// Dev tools styles -@import './dev_tools/index'; - // Discover styles @import 'discover/index'; diff --git a/src/legacy/core_plugins/kibana/public/dev_tools/_index.scss b/src/plugins/dev_tools/public/index.scss similarity index 100% rename from src/legacy/core_plugins/kibana/public/dev_tools/_index.scss rename to src/plugins/dev_tools/public/index.scss diff --git a/src/plugins/dev_tools/public/plugin.ts b/src/plugins/dev_tools/public/plugin.ts index 2a2ae6385875fe..9ebfeb5387b264 100644 --- a/src/plugins/dev_tools/public/plugin.ts +++ b/src/plugins/dev_tools/public/plugin.ts @@ -21,6 +21,8 @@ import { App, CoreSetup, Plugin } from 'kibana/public'; import { sortBy } from 'lodash'; import { KibanaLegacySetup } from '../../kibana_legacy/public'; +import './index.scss'; + export interface DevToolsSetup { /** * Register a developer tool. It will be available From 61c9dc4022d1629513c4450d9a3c2482268d98e1 Mon Sep 17 00:00:00 2001 From: Tyler Smalley Date: Sat, 29 Feb 2020 16:34:54 -0800 Subject: [PATCH 005/120] Skips failing Ingest Manager integration tests https://github.com/elastic/kibana/issues/58969 https://github.com/elastic/kibana/issues/58968 https://github.com/elastic/kibana/issues/58967 https://github.com/elastic/kibana/issues/58966 https://github.com/elastic/kibana/issues/58961 https://github.com/elastic/kibana/issues/58960 https://github.com/elastic/kibana/issues/58959 https://github.com/elastic/kibana/issues/58958 https://github.com/elastic/kibana/issues/58958 https://github.com/elastic/kibana/issues/58957 https://github.com/elastic/kibana/issues/58956 https://github.com/elastic/kibana/issues/58955 https://github.com/elastic/kibana/issues/58954 Signed-off-by: Tyler Smalley --- .../ingest_manager/server/integration_tests/router.test.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/x-pack/plugins/ingest_manager/server/integration_tests/router.test.ts b/x-pack/plugins/ingest_manager/server/integration_tests/router.test.ts index 38976957173f42..c874aa7d22abc3 100644 --- a/x-pack/plugins/ingest_manager/server/integration_tests/router.test.ts +++ b/x-pack/plugins/ingest_manager/server/integration_tests/router.test.ts @@ -23,7 +23,7 @@ function createXPackRoot(config: {} = {}) { } describe('ingestManager', () => { - describe('default. manager, EPM, and Fleet all disabled', () => { + describe.skip('default. manager, EPM, and Fleet all disabled', () => { let root: ReturnType; beforeAll(async () => { root = createXPackRoot(); @@ -50,7 +50,7 @@ describe('ingestManager', () => { }); }); - describe('manager only (no EPM, no Fleet)', () => { + describe.skip('manager only (no EPM, no Fleet)', () => { let root: ReturnType; beforeAll(async () => { const ingestManagerConfig = { From 420ded8eb2c46615116518bee328c9eebcdd646a Mon Sep 17 00:00:00 2001 From: Tyler Smalley Date: Sat, 29 Feb 2020 16:39:47 -0800 Subject: [PATCH 006/120] Skips additional failing Ingest Manager integration tests https://github.com/elastic/kibana/issues/58969 https://github.com/elastic/kibana/issues/58968 https://github.com/elastic/kibana/issues/58967 https://github.com/elastic/kibana/issues/58966 Signed-off-by: Tyler Smalley --- .../ingest_manager/server/integration_tests/router.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/x-pack/plugins/ingest_manager/server/integration_tests/router.test.ts b/x-pack/plugins/ingest_manager/server/integration_tests/router.test.ts index c874aa7d22abc3..3a13359cdf782f 100644 --- a/x-pack/plugins/ingest_manager/server/integration_tests/router.test.ts +++ b/x-pack/plugins/ingest_manager/server/integration_tests/router.test.ts @@ -87,7 +87,7 @@ describe('ingestManager', () => { // https://github.com/jfsiii/kibana/blob/f73b54ebb7e0f6fc00efd8a6800a01eb2d9fb772/x-pack/plugins/ingest_manager/server/plugin.ts#L84 // adding tests to confirm the Fleet & EPM routes are never added - describe('manager and EPM; no Fleet', () => { + describe.skip('manager and EPM; no Fleet', () => { let root: ReturnType; beforeAll(async () => { const ingestManagerConfig = { From 5b532ff50f66d16ec61d87c34f5e1172700c4260 Mon Sep 17 00:00:00 2001 From: Christos Nasikas Date: Sun, 1 Mar 2020 13:29:18 +0200 Subject: [PATCH 007/120] Restores [SIEM][CASE] Init Configure Case Page (#58121) (#58924) * [SIEM][CASE] Init configure cases * [SIEM][CASE] Translate header title * [SIEM][CASE] Add back link * [SIEM][CASE] Add default options to header page * [SIEM][CASE] Create configure cases page redirections and links * [SIEM][CASE] Add configure cases button * [SIEM][CASE] Change translation variable * [SIEM][CASE] Create wrappers * [SIEM][CASE] Create section wrapper * [SIEM][CASE] Switch to new wrapper * [SIEM][CASE] Add translations * [SIEM][CASE] Add connectors dropdown component * [SIEM][CASE] Add connectors component * [SIEM][CASE] Show connectors * [SIEM][CASE] Create add new connector button * [SIEM][CASE] Change values * [SIEM][CASE] Use state for connectors dropdown * [SIEM][CASE] Remove unnecessary attribute * [SIEM][CASE] Remove timeline in configuration page * [SIEM][CASE] Remove text from gear button * [SIEM][CASE] make show timeline more generic so we can re-use if need it Co-authored-by: Xavier Mouligneau <189600+XavierM@users.noreply.github.com> Co-authored-by: Elastic Machine --- .../siem/public/components/link_to/index.ts | 2 + .../public/components/link_to/link_to.tsx | 11 +++- .../components/link_to/redirect_to_case.tsx | 4 ++ .../plugins/siem/public/pages/case/case.tsx | 27 +++++---- .../components/case_header_page/index.tsx | 22 ++++++++ .../case_header_page/translations.ts | 16 ++++++ .../pages/case/components/case_view/index.tsx | 13 +---- .../components/configure_cases/connectors.tsx | 52 +++++++++++++++++ .../connectors_dropdown/index.tsx | 56 +++++++++++++++++++ .../configure_cases/translations.ts | 37 ++++++++++++ .../pages/case/components/wrappers/index.tsx | 22 ++++++++ .../public/pages/case/configure_cases.tsx | 54 ++++++++++++++++++ .../siem/public/pages/case/create_case.tsx | 10 +--- .../plugins/siem/public/pages/case/index.tsx | 5 ++ .../siem/public/pages/case/translations.ts | 20 ++++--- .../plugins/siem/public/pages/home/index.tsx | 5 +- .../utils/timeline/use_show_timeline.tsx | 31 ++++++++++ 17 files changed, 345 insertions(+), 42 deletions(-) create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/case_header_page/index.tsx create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/case_header_page/translations.ts create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors.tsx create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors_dropdown/index.tsx create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/translations.ts create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/wrappers/index.tsx create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/configure_cases.tsx create mode 100644 x-pack/legacy/plugins/siem/public/utils/timeline/use_show_timeline.tsx diff --git a/x-pack/legacy/plugins/siem/public/components/link_to/index.ts b/x-pack/legacy/plugins/siem/public/components/link_to/index.ts index c93b415e017bb7..a1c1f78e398e33 100644 --- a/x-pack/legacy/plugins/siem/public/components/link_to/index.ts +++ b/x-pack/legacy/plugins/siem/public/components/link_to/index.ts @@ -17,6 +17,8 @@ export { getCaseDetailsUrl, getCaseUrl, getCreateCaseUrl, + getConfigureCasesUrl, RedirectToCasePage, RedirectToCreatePage, + RedirectToConfigureCasesPage, } from './redirect_to_case'; diff --git a/x-pack/legacy/plugins/siem/public/components/link_to/link_to.tsx b/x-pack/legacy/plugins/siem/public/components/link_to/link_to.tsx index c08b429dc4625e..08e4d1a3494e06 100644 --- a/x-pack/legacy/plugins/siem/public/components/link_to/link_to.tsx +++ b/x-pack/legacy/plugins/siem/public/components/link_to/link_to.tsx @@ -20,7 +20,11 @@ import { RedirectToHostsPage, RedirectToHostDetailsPage } from './redirect_to_ho import { RedirectToNetworkPage } from './redirect_to_network'; import { RedirectToOverviewPage } from './redirect_to_overview'; import { RedirectToTimelinesPage } from './redirect_to_timelines'; -import { RedirectToCasePage, RedirectToCreatePage } from './redirect_to_case'; +import { + RedirectToCasePage, + RedirectToCreatePage, + RedirectToConfigureCasesPage, +} from './redirect_to_case'; import { DetectionEngineTab } from '../../pages/detection_engine/types'; interface LinkToPageProps { @@ -43,6 +47,11 @@ export const LinkToPage = React.memo(({ match }) => ( component={RedirectToCreatePage} path={`${match.url}/:pageName(${SiemPageName.case})/create`} /> + ; +export const RedirectToConfigureCasesPage = () => ( + +); const baseCaseUrl = `#/link-to/${SiemPageName.case}`; export const getCaseUrl = () => baseCaseUrl; export const getCaseDetailsUrl = (detailName: string) => `${baseCaseUrl}/${detailName}`; export const getCreateCaseUrl = () => `${baseCaseUrl}/create`; +export const getConfigureCasesUrl = () => `${baseCaseUrl}/configure`; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/case.tsx b/x-pack/legacy/plugins/siem/public/pages/case/case.tsx index 1206ec950deed1..15a6d076f10095 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/case.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/case.tsx @@ -6,30 +6,29 @@ import React from 'react'; -import { EuiButton, EuiFlexGroup } from '@elastic/eui'; -import { HeaderPage } from '../../components/header_page'; +import { EuiButton, EuiButtonIcon, EuiFlexGroup, EuiFlexItem } from '@elastic/eui'; +import { CaseHeaderPage } from './components/case_header_page'; import { WrapperPage } from '../../components/wrapper_page'; import { AllCases } from './components/all_cases'; import { SpyRoute } from '../../utils/route/spy_routes'; import * as i18n from './translations'; -import { getCreateCaseUrl } from '../../components/link_to'; - -const badgeOptions = { - beta: true, - text: i18n.PAGE_BADGE_LABEL, - tooltip: i18n.PAGE_BADGE_TOOLTIP, -}; +import { getCreateCaseUrl, getConfigureCasesUrl } from '../../components/link_to'; export const CasesPage = React.memo(() => ( <> - + - - {i18n.CREATE_TITLE} - + + + {i18n.CREATE_TITLE} + + + + + - + diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/case_header_page/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/case_header_page/index.tsx new file mode 100644 index 00000000000000..ae2664ca6e839d --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/case_header_page/index.tsx @@ -0,0 +1,22 @@ +/* + * 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 { HeaderPage, HeaderPageProps } from '../../../../components/header_page'; +import * as i18n from './translations'; + +const CaseHeaderPageComponent: React.FC = props => ; + +CaseHeaderPageComponent.defaultProps = { + badgeOptions: { + beta: true, + text: i18n.PAGE_BADGE_LABEL, + tooltip: i18n.PAGE_BADGE_TOOLTIP, + }, +}; + +export const CaseHeaderPage = React.memo(CaseHeaderPageComponent); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/case_header_page/translations.ts b/x-pack/legacy/plugins/siem/public/pages/case/components/case_header_page/translations.ts new file mode 100644 index 00000000000000..9fcad926c03b84 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/case_header_page/translations.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 { i18n } from '@kbn/i18n'; + +export const PAGE_BADGE_LABEL = i18n.translate('xpack.siem.case.caseView.pageBadgeLabel', { + defaultMessage: 'Beta', +}); + +export const PAGE_BADGE_TOOLTIP = i18n.translate('xpack.siem.case.caseView.pageBadgeTooltip', { + defaultMessage: + 'Case Workflow is still in beta. Please help us improve by reporting issues or bugs in the Kibana repo.', +}); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/index.tsx index 5cd71c5855d34f..df3e30a698b56e 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/index.tsx @@ -34,6 +34,7 @@ import { UserActionTree } from '../user_action_tree'; import { UserList } from '../user_list'; import { useUpdateCase } from '../../../../containers/case/use_update_case'; import { WrapperPage } from '../../../../components/wrapper_page'; +import { WhitePageWrapper } from '../wrappers'; interface Props { caseId: string; @@ -52,14 +53,6 @@ const MyWrapper = styled(WrapperPage)` padding-bottom: 0; `; -const BackgroundWrapper = styled.div` - ${({ theme }) => css` - background-color: ${theme.eui.euiColorEmptyShade}; - border-top: ${theme.eui.euiBorderThin}; - height: 100%; - `} -`; - export interface CaseProps { caseId: string; initialData: Case; @@ -279,7 +272,7 @@ export const CaseComponent = React.memo(({ caseId, initialData, isLoa - + @@ -305,7 +298,7 @@ export const CaseComponent = React.memo(({ caseId, initialData, isLoa - + ); }); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors.tsx new file mode 100644 index 00000000000000..561464e44c7032 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors.tsx @@ -0,0 +1,52 @@ +/* + * 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 { + EuiDescribedFormGroup, + EuiFormRow, + EuiFlexGroup, + EuiFlexItem, + EuiLink, +} from '@elastic/eui'; + +import styled from 'styled-components'; + +import { ConnectorsDropdown } from './connectors_dropdown'; +import * as i18n from './translations'; + +const EuiFormRowExtended = styled(EuiFormRow)` + .euiFormRow__labelWrapper { + .euiFormRow__label { + width: 100%; + } + } +`; + +const ConnectorsComponent: React.FC = () => { + const dropDownLabel = ( + + {i18n.INCIDENT_MANAGEMENT_SYSTEM_LABEL} + + {i18n.ADD_NEW_CONNECTOR} + + + ); + + return ( + {i18n.INCIDENT_MANAGEMENT_SYSTEM_TITLE}} + description={i18n.INCIDENT_MANAGEMENT_SYSTEM_DESC} + > + + + + + ); +}; + +export const Connectors = React.memo(ConnectorsComponent); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors_dropdown/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors_dropdown/index.tsx new file mode 100644 index 00000000000000..c00baa04d78a0b --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors_dropdown/index.tsx @@ -0,0 +1,56 @@ +/* + * 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, { useState, useCallback } from 'react'; +import { EuiSuperSelect, EuiIcon, EuiSuperSelectOption } from '@elastic/eui'; +import styled from 'styled-components'; + +import * as i18n from '../translations'; + +const ICON_SIZE = 'm'; + +const EuiIconExtended = styled(EuiIcon)` + margin-right: 13px; +`; + +const connectors: Array> = [ + { + value: 'no-connector', + inputDisplay: ( + <> + + {i18n.NO_CONNECTOR} + + ), + 'data-test-subj': 'no-connector', + }, + { + value: 'servicenow-connector', + inputDisplay: ( + <> + + {'My ServiceNow connector'} + + ), + 'data-test-subj': 'servicenow-connector', + }, +]; + +const ConnectorsDropdownComponent: React.FC = () => { + const [selectedConnector, selectConnector] = useState(connectors[0].value); + const onChange = useCallback(connector => selectConnector(connector), [selectedConnector]); + + return ( + + ); +}; + +export const ConnectorsDropdown = React.memo(ConnectorsDropdownComponent); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/translations.ts b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/translations.ts new file mode 100644 index 00000000000000..54d256b143f603 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/translations.ts @@ -0,0 +1,37 @@ +/* + * 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'; + +export const INCIDENT_MANAGEMENT_SYSTEM_TITLE = i18n.translate( + 'xpack.siem.case.configureCases.incidentManagementSystemTitle', + { + defaultMessage: 'Connect to third-party incident management system', + } +); + +export const INCIDENT_MANAGEMENT_SYSTEM_DESC = i18n.translate( + 'xpack.siem.case.configureCases.incidentManagementSystemDesc', + { + defaultMessage: + 'You may optionally connect SIEM cases to a third-party incident management system of your choosing. This will allow you to push case data as an incident in your chosen third-party system.', + } +); + +export const INCIDENT_MANAGEMENT_SYSTEM_LABEL = i18n.translate( + 'xpack.siem.case.configureCases.incidentManagementSystemLabel', + { + defaultMessage: 'Incident management system', + } +); + +export const NO_CONNECTOR = i18n.translate('xpack.siem.case.configureCases.noConnector', { + defaultMessage: 'No connector selected', +}); + +export const ADD_NEW_CONNECTOR = i18n.translate('xpack.siem.case.configureCases.addNewConnector', { + defaultMessage: 'Add new connector option', +}); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/wrappers/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/wrappers/index.tsx new file mode 100644 index 00000000000000..772d78f948b798 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/wrappers/index.tsx @@ -0,0 +1,22 @@ +/* + * 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 styled, { css } from 'styled-components'; + +export const WhitePageWrapper = styled.div` + ${({ theme }) => css` + background-color: ${theme.eui.euiColorEmptyShade}; + border-top: ${theme.eui.euiBorderThin}; + height: 100%; + min-height: 100vh; + `} +`; + +export const SectionWrapper = styled.div` + box-sizing: content-box; + margin: 0 auto; + max-width: 1175px; +`; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/configure_cases.tsx b/x-pack/legacy/plugins/siem/public/pages/case/configure_cases.tsx new file mode 100644 index 00000000000000..018f9dc9ade52a --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/configure_cases.tsx @@ -0,0 +1,54 @@ +/* + * 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 styled, { css } from 'styled-components'; + +import { WrapperPage } from '../../components/wrapper_page'; +import { CaseHeaderPage } from './components/case_header_page'; +import { SpyRoute } from '../../utils/route/spy_routes'; +import { getCaseUrl } from '../../components/link_to'; +import { WhitePageWrapper, SectionWrapper } from './components/wrappers'; +import { Connectors } from './components/configure_cases/connectors'; +import * as i18n from './translations'; + +const backOptions = { + href: getCaseUrl(), + text: i18n.BACK_TO_ALL, +}; + +const wrapperPageStyle: Record = { + paddingLeft: '0', + paddingRight: '0', + paddingBottom: '0', +}; + +export const FormWrapper = styled.div` + ${({ theme }) => css` + padding-top: ${theme.eui.paddingSizes.l}; + padding-bottom: ${theme.eui.paddingSizes.l}; + `} +`; + +const ConfigureCasesPageComponent: React.FC = () => ( + <> + + + + + + + + + + + + + + +); + +export const ConfigureCasesPage = React.memo(ConfigureCasesPageComponent); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/create_case.tsx b/x-pack/legacy/plugins/siem/public/pages/case/create_case.tsx index 9bc356517cc686..2c7525264f71be 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/create_case.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/create_case.tsx @@ -9,7 +9,7 @@ import React from 'react'; import { WrapperPage } from '../../components/wrapper_page'; import { Create } from './components/create'; import { SpyRoute } from '../../utils/route/spy_routes'; -import { HeaderPage } from '../../components/header_page'; +import { CaseHeaderPage } from './components/case_header_page'; import * as i18n from './translations'; import { getCaseUrl } from '../../components/link_to'; @@ -17,15 +17,11 @@ const backOptions = { href: getCaseUrl(), text: i18n.BACK_TO_ALL, }; -const badgeOptions = { - beta: true, - text: i18n.PAGE_BADGE_LABEL, - tooltip: i18n.PAGE_BADGE_TOOLTIP, -}; + export const CreateCasePage = React.memo(() => ( <> - + diff --git a/x-pack/legacy/plugins/siem/public/pages/case/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/index.tsx index 9bd91b1c6d62dd..1bde9de1535b52 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/index.tsx @@ -11,10 +11,12 @@ import { SiemPageName } from '../home/types'; import { CaseDetailsPage } from './case_details'; import { CasesPage } from './case'; import { CreateCasePage } from './create_case'; +import { ConfigureCasesPage } from './configure_cases'; const casesPagePath = `/:pageName(${SiemPageName.case})`; const caseDetailsPagePath = `${casesPagePath}/:detailName`; const createCasePagePath = `${casesPagePath}/create`; +const configureCasesPagePath = `${casesPagePath}/configure`; const CaseContainerComponent: React.FC = () => ( @@ -24,6 +26,9 @@ const CaseContainerComponent: React.FC = () => ( + + + diff --git a/x-pack/legacy/plugins/siem/public/pages/case/translations.ts b/x-pack/legacy/plugins/siem/public/pages/case/translations.ts index 4e878ba58411e4..265af0bde547f2 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/translations.ts +++ b/x-pack/legacy/plugins/siem/public/pages/case/translations.ts @@ -57,15 +57,6 @@ export const LAST_UPDATED = i18n.translate('xpack.siem.case.caseView.updatedAt', defaultMessage: 'Last updated', }); -export const PAGE_BADGE_LABEL = i18n.translate('xpack.siem.case.caseView.pageBadgeLabel', { - defaultMessage: 'Beta', -}); - -export const PAGE_BADGE_TOOLTIP = i18n.translate('xpack.siem.case.caseView.pageBadgeTooltip', { - defaultMessage: - 'Case Workflow is still in beta. Please help us improve by reporting issues or bugs in the Kibana repo.', -}); - export const PAGE_SUBTITLE = i18n.translate('xpack.siem.case.caseView.pageSubtitle', { defaultMessage: 'Case Workflow Management within the Elastic SIEM', }); @@ -102,3 +93,14 @@ export const NO_TAGS = i18n.translate('xpack.siem.case.caseView.noTags', { export const TITLE_REQUIRED = i18n.translate('xpack.siem.case.createCase.titleFieldRequiredError', { defaultMessage: 'A title is required.', }); + +export const CONFIGURE_CASES_PAGE_TITLE = i18n.translate( + 'xpack.siem.case.configureCases.headerTitle', + { + defaultMessage: 'Configure cases', + } +); + +export const CONFIGURE_CASES_BUTTON = i18n.translate('xpack.siem.case.configureCasesButton', { + defaultMessage: 'Configure cases', +}); diff --git a/x-pack/legacy/plugins/siem/public/pages/home/index.tsx b/x-pack/legacy/plugins/siem/public/pages/home/index.tsx index 7c5fd56bf1e911..605136a190c547 100644 --- a/x-pack/legacy/plugins/siem/public/pages/home/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/home/index.tsx @@ -21,6 +21,7 @@ import { AutoSaveWarningMsg } from '../../components/timeline/auto_save_warning' import { UseUrlState } from '../../components/url_state'; import { WithSource, indicesExistOrDataTemporarilyUnavailable } from '../../containers/source'; import { SpyRoute } from '../../utils/route/spy_routes'; +import { useShowTimeline } from '../../utils/timeline/use_show_timeline'; import { NotFoundPage } from '../404'; import { DetectionEngineContainer } from '../detection_engine'; import { HostsContainer } from '../hosts'; @@ -68,6 +69,8 @@ export const HomePage: React.FC = () => { windowHeight, }); + const [showTimeline] = useShowTimeline(); + return ( @@ -77,7 +80,7 @@ export const HomePage: React.FC = () => { {({ browserFields, indexPattern, indicesExist }) => ( - {indicesExistOrDataTemporarilyUnavailable(indicesExist) && ( + {indicesExistOrDataTemporarilyUnavailable(indicesExist) && showTimeline && ( <> { + const currentLocation = useLocation(); + const [showTimeline, setShowTimeline] = useState( + !hideTimelineForRoutes.includes(currentLocation.pathname) + ); + + useEffect(() => { + if (hideTimelineForRoutes.includes(currentLocation.pathname)) { + if (showTimeline) { + setShowTimeline(false); + } + } else if (!showTimeline) { + setShowTimeline(true); + } + }, [currentLocation.pathname]); + + return [showTimeline]; +}; From 45f804c43c0716ac24bccde906dad229a0a8950d Mon Sep 17 00:00:00 2001 From: Nic Date: Sun, 1 Mar 2020 16:30:44 -0600 Subject: [PATCH 008/120] [SIEM] Detection Fix typo in Adobe Hijack Persistence rule (#58804) Fixes https://github.com/elastic/kibana/issues/58803 --- .../rules/prepackaged_rules/eql_adobe_hijack_persistence.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/prepackaged_rules/eql_adobe_hijack_persistence.json b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/prepackaged_rules/eql_adobe_hijack_persistence.json index 387726168cb10c..8b8c5100932600 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/prepackaged_rules/eql_adobe_hijack_persistence.json +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/prepackaged_rules/eql_adobe_hijack_persistence.json @@ -6,7 +6,7 @@ "language": "kuery", "max_signals": 100, "name": "Adobe Hijack Persistence", - "query": "file.path:(\"C:\\Program Files (x86)\\Adobe\\Acrobat Reader DC\\Reader\\AcroCEF\\RdrCEF.exe\" or \"C:\\Program Files\\Adobe\\Acrobat Reader DC\\Reader\\AcroCEF\\RdrCEF.exe\") and event.action:\"File created (rule: FileCreate)\" and not process.name:msiexeec.exe", + "query": "file.path:(\"C:\\Program Files (x86)\\Adobe\\Acrobat Reader DC\\Reader\\AcroCEF\\RdrCEF.exe\" or \"C:\\Program Files\\Adobe\\Acrobat Reader DC\\Reader\\AcroCEF\\RdrCEF.exe\") and event.action:\"File created (rule: FileCreate)\" and not process.name:msiexec.exe", "risk_score": 21, "rule_id": "2bf78aa2-9c56-48de-b139-f169bf99cf86", "severity": "low", @@ -32,5 +32,5 @@ } ], "type": "query", - "version": 1 + "version": 2 } From 37d18a7d58a96bc033e6177dde9c510d55c028b5 Mon Sep 17 00:00:00 2001 From: DziyanaDzeraviankina <54894989+DziyanaDzeraviankina@users.noreply.github.com> Date: Mon, 2 Mar 2020 12:22:39 +0300 Subject: [PATCH 009/120] [data] Clean up QueryStringInput unit tests (#58704) Co-authored-by: Elastic Machine --- .../language_switcher.test.tsx.snap | 593 --- .../query_string_input.test.tsx.snap | 3919 ----------------- .../language_switcher.test.tsx | 11 +- .../query_bar_top_row.test.tsx | 2 +- .../query_string_input/query_bar_top_row.tsx | 15 +- .../query_string_input.test.tsx | 10 +- .../query_string_input/query_string_input.tsx | 8 +- 7 files changed, 21 insertions(+), 4537 deletions(-) delete mode 100644 src/plugins/data/public/ui/query_string_input/__snapshots__/language_switcher.test.tsx.snap delete mode 100644 src/plugins/data/public/ui/query_string_input/__snapshots__/query_string_input.test.tsx.snap diff --git a/src/plugins/data/public/ui/query_string_input/__snapshots__/language_switcher.test.tsx.snap b/src/plugins/data/public/ui/query_string_input/__snapshots__/language_switcher.test.tsx.snap deleted file mode 100644 index 6432f8049641ae..00000000000000 --- a/src/plugins/data/public/ui/query_string_input/__snapshots__/language_switcher.test.tsx.snap +++ /dev/null @@ -1,593 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`LanguageSwitcher should toggle off if language is lucene 1`] = ` - - - - - - } - closePopover={[Function]} - display="inlineBlock" - hasArrow={true} - id="popover" - isOpen={false} - ownFocus={true} - panelPaddingSize="m" - withTitle={true} - > - -
-
- - - -
-
-
-
-
-
-`; - -exports[`LanguageSwitcher should toggle on if language is kuery 1`] = ` - - - - - - } - closePopover={[Function]} - display="inlineBlock" - hasArrow={true} - id="popover" - isOpen={false} - ownFocus={true} - panelPaddingSize="m" - withTitle={true} - > - -
-
- - - -
-
-
-
-
-
-`; diff --git a/src/plugins/data/public/ui/query_string_input/__snapshots__/query_string_input.test.tsx.snap b/src/plugins/data/public/ui/query_string_input/__snapshots__/query_string_input.test.tsx.snap deleted file mode 100644 index 58f00ff9ed6578..00000000000000 --- a/src/plugins/data/public/ui/query_string_input/__snapshots__/query_string_input.test.tsx.snap +++ /dev/null @@ -1,3919 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`QueryStringInput Should disable autoFocus on EuiFieldText when disableAutoFocus prop is true 1`] = ` - - - - - - - - -
-
-
- - } - aria-autocomplete="list" - aria-label="Start typing to search and filter the test page" - autoComplete="off" - autoFocus={false} - data-test-subj="queryInput" - fullWidth={true} - inputRef={[Function]} - onChange={[Function]} - onClick={[Function]} - onKeyDown={[Function]} - onKeyUp={[Function]} - placeholder="Search" - role="textbox" - spellCheck={false} - type="text" - value="response:200" - > - - } - fullWidth={true} - > -
-
- - - - -
- - - - - } - closePopover={[Function]} - display="inlineBlock" - hasArrow={true} - id="popover" - isOpen={false} - ownFocus={true} - panelPaddingSize="m" - withTitle={true} - > - -
-
- - - -
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-`; - -exports[`QueryStringInput Should pass the query language to the language switcher 1`] = ` - - - - - - - - -
-
-
- - } - aria-autocomplete="list" - aria-label="Start typing to search and filter the test page" - autoComplete="off" - autoFocus={true} - data-test-subj="queryInput" - fullWidth={true} - inputRef={[Function]} - onChange={[Function]} - onClick={[Function]} - onKeyDown={[Function]} - onKeyUp={[Function]} - placeholder="Search" - role="textbox" - spellCheck={false} - type="text" - value="response:200" - > - - } - fullWidth={true} - > -
-
- - - - -
- - - - - } - closePopover={[Function]} - display="inlineBlock" - hasArrow={true} - id="popover" - isOpen={false} - ownFocus={true} - panelPaddingSize="m" - withTitle={true} - > - -
-
- - - -
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-`; - -exports[`QueryStringInput Should render the given query 1`] = ` - - - - - - - - -
-
-
- - } - aria-autocomplete="list" - aria-label="Start typing to search and filter the test page" - autoComplete="off" - autoFocus={true} - data-test-subj="queryInput" - fullWidth={true} - inputRef={[Function]} - onChange={[Function]} - onClick={[Function]} - onKeyDown={[Function]} - onKeyUp={[Function]} - placeholder="Search" - role="textbox" - spellCheck={false} - type="text" - value="response:200" - > - - } - fullWidth={true} - > -
-
- - - - -
- - - - - } - closePopover={[Function]} - display="inlineBlock" - hasArrow={true} - id="popover" - isOpen={false} - ownFocus={true} - panelPaddingSize="m" - withTitle={true} - > - -
-
- - - -
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-`; diff --git a/src/plugins/data/public/ui/query_string_input/language_switcher.test.tsx b/src/plugins/data/public/ui/query_string_input/language_switcher.test.tsx index e3ec5212abfd2c..f8f576c4b6e971 100644 --- a/src/plugins/data/public/ui/query_string_input/language_switcher.test.tsx +++ b/src/plugins/data/public/ui/query_string_input/language_switcher.test.tsx @@ -22,6 +22,7 @@ import { QueryLanguageSwitcher } from './language_switcher'; import { KibanaContextProvider } from 'src/plugins/kibana_react/public'; import { coreMock } from '../../../../../core/public/mocks'; import { mountWithIntl } from 'test_utils/enzyme_helpers'; +import { EuiButtonEmpty, EuiPopover } from '@elastic/eui'; const startMock = coreMock.createStart(); describe('LanguageSwitcher', () => { @@ -47,8 +48,9 @@ describe('LanguageSwitcher', () => { }, }) ); - - expect(component).toMatchSnapshot(); + component.find(EuiButtonEmpty).simulate('click'); + expect(component.find(EuiPopover).prop('isOpen')).toBe(true); + expect(component.find('[data-test-subj="languageToggle"]').get(0).props.checked).toBeFalsy(); }); it('should toggle on if language is kuery', () => { @@ -60,7 +62,8 @@ describe('LanguageSwitcher', () => { }, }) ); - - expect(component).toMatchSnapshot(); + component.find(EuiButtonEmpty).simulate('click'); + expect(component.find(EuiPopover).prop('isOpen')).toBe(true); + expect(component.find('[data-test-subj="languageToggle"]').get(0).props.checked).toBeTruthy(); }); }); diff --git a/src/plugins/data/public/ui/query_string_input/query_bar_top_row.test.tsx b/src/plugins/data/public/ui/query_string_input/query_bar_top_row.test.tsx index 70d0c96b4733f3..f579adbc0c7e27 100644 --- a/src/plugins/data/public/ui/query_string_input/query_bar_top_row.test.tsx +++ b/src/plugins/data/public/ui/query_string_input/query_bar_top_row.test.tsx @@ -104,7 +104,7 @@ function wrapQueryBarTopRowInContext(testProps: any) { return ( - + ); diff --git a/src/plugins/data/public/ui/query_string_input/query_bar_top_row.tsx b/src/plugins/data/public/ui/query_string_input/query_bar_top_row.tsx index ad9c8401389fac..433cb652ee5ce6 100644 --- a/src/plugins/data/public/ui/query_string_input/query_bar_top_row.tsx +++ b/src/plugins/data/public/ui/query_string_input/query_bar_top_row.tsx @@ -20,6 +20,8 @@ import dateMath from '@elastic/datemath'; import classNames from 'classnames'; import React, { useState } from 'react'; +import { i18n } from '@kbn/i18n'; + import { EuiButton, EuiFlexGroup, @@ -31,7 +33,7 @@ import { } from '@elastic/eui'; // @ts-ignore import { EuiSuperUpdateButton, OnRefreshProps } from '@elastic/eui'; -import { FormattedMessage, InjectedIntl, injectI18n } from '@kbn/i18n/react'; +import { FormattedMessage } from '@kbn/i18n/react'; import { Toast } from 'src/core/public'; import { IDataPluginServices, IIndexPattern, TimeRange, TimeHistoryContract, Query } from '../..'; import { useKibana, toMountPoint } from '../../../../kibana_react/public'; @@ -48,7 +50,6 @@ interface Props { disableAutoFocus?: boolean; screenTitle?: string; indexPatterns?: Array; - intl: InjectedIntl; isLoading?: boolean; prepend?: React.ComponentProps['prepend']; showQueryInput?: boolean; @@ -64,7 +65,7 @@ interface Props { timeHistory?: TimeHistoryContract; } -function QueryBarTopRowUI(props: Props) { +export function QueryBarTopRow(props: Props) { const [isDateRangeInvalid, setIsDateRangeInvalid] = useState(false); const kibana = useKibana(); @@ -285,7 +286,6 @@ function QueryBarTopRowUI(props: Props) { function handleLuceneSyntaxWarning() { if (!props.query) return; - const { intl } = props; const { query, language } = props.query; if ( language === 'kuery' && @@ -294,8 +294,7 @@ function QueryBarTopRowUI(props: Props) { doesKueryExpressionHaveLuceneSyntaxError(query) ) { const toast = notifications!.toasts.addWarning({ - title: intl.formatMessage({ - id: 'data.query.queryBar.luceneSyntaxWarningTitle', + title: i18n.translate('data.query.queryBar.luceneSyntaxWarningTitle', { defaultMessage: 'Lucene syntax warning', }), text: toMountPoint( @@ -357,10 +356,8 @@ function QueryBarTopRowUI(props: Props) { ); } -QueryBarTopRowUI.defaultProps = { +QueryBarTopRow.defaultProps = { showQueryInput: true, showDatePicker: true, showAutoRefreshOnly: false, }; - -export const QueryBarTopRow = injectI18n(QueryBarTopRowUI); diff --git a/src/plugins/data/public/ui/query_string_input/query_string_input.test.tsx b/src/plugins/data/public/ui/query_string_input/query_string_input.test.tsx index 4435bd87cd2d71..738c9cfb393986 100644 --- a/src/plugins/data/public/ui/query_string_input/query_string_input.test.tsx +++ b/src/plugins/data/public/ui/query_string_input/query_string_input.test.tsx @@ -102,8 +102,8 @@ describe('QueryStringInput', () => { indexPatterns: [stubIndexPatternWithFields], }) ); - - expect(component).toMatchSnapshot(); + expect(component.find(EuiFieldText).props().value).toBe(kqlQuery.query); + expect(component.find(QueryLanguageSwitcher).prop('language')).toBe(kqlQuery.language); }); it('Should pass the query language to the language switcher', () => { @@ -114,8 +114,7 @@ describe('QueryStringInput', () => { indexPatterns: [stubIndexPatternWithFields], }) ); - - expect(component).toMatchSnapshot(); + expect(component.find(QueryLanguageSwitcher).prop('language')).toBe(luceneQuery.language); }); it('Should disable autoFocus on EuiFieldText when disableAutoFocus prop is true', () => { @@ -127,8 +126,7 @@ describe('QueryStringInput', () => { disableAutoFocus: true, }) ); - - expect(component).toMatchSnapshot(); + expect(component.find(EuiFieldText).prop('autoFocus')).toBeFalsy(); }); it('Should create a unique PersistedLog based on the appName and query language', () => { diff --git a/src/plugins/data/public/ui/query_string_input/query_string_input.tsx b/src/plugins/data/public/ui/query_string_input/query_string_input.tsx index f1f055160a3ca5..018c2927031d00 100644 --- a/src/plugins/data/public/ui/query_string_input/query_string_input.tsx +++ b/src/plugins/data/public/ui/query_string_input/query_string_input.tsx @@ -31,7 +31,7 @@ import { EuiLink, } from '@elastic/eui'; -import { InjectedIntl, injectI18n, FormattedMessage } from '@kbn/i18n/react'; +import { FormattedMessage } from '@kbn/i18n/react'; import { debounce, compact, isEqual } from 'lodash'; import { Toast } from 'src/core/public'; import { IDataPluginServices, IIndexPattern, SuggestionsComponent, Query } from '../..'; @@ -44,7 +44,6 @@ import { PersistedLog, getQueryLog, matchPairs, toUser, fromUser } from '../../q interface Props { kibana: KibanaReactContextValue; - intl: InjectedIntl; indexPatterns: Array; query: Query; disableAutoFocus?: boolean; @@ -356,8 +355,7 @@ export class QueryStringInputUI extends Component { if (notifications && docLinks) { const toast = notifications.toasts.add({ - title: this.props.intl.formatMessage({ - id: 'data.query.queryBar.KQLNestedQuerySyntaxInfoTitle', + title: i18n.translate('data.query.queryBar.KQLNestedQuerySyntaxInfoTitle', { defaultMessage: 'KQL nested query syntax', }), text: toMountPoint( @@ -584,4 +582,4 @@ export class QueryStringInputUI extends Component { } } -export const QueryStringInput = injectI18n(withKibana(QueryStringInputUI)); +export const QueryStringInput = withKibana(QueryStringInputUI); From ac5e7aa81ee5cbe0074398500bf7c1fef2f5d23e Mon Sep 17 00:00:00 2001 From: Jean-Louis Leysens Date: Mon, 2 Mar 2020 11:08:19 +0100 Subject: [PATCH 010/120] [Upgrade Assistant] Remove "boom" from reindex service (#58715) * Removed Boom from reindex-service The reindex service had logic inside it for mapping errors to HTTP. This has been moved to the route handlers and also removed Boom. There is one more instance of Boom use inside of reindex-actions but that comes from Saved Objects which should probably be removed at a later stage. * Fix import path Specify the full relative import path to the kibana's core server folder * Remove unnecessary if statement Co-authored-by: Elastic Machine --- .../server/lib/reindexing/error.ts | 35 +++++++++++ .../server/lib/reindexing/error_symbols.ts | 15 +++++ .../server/lib/reindexing/reindex_service.ts | 24 ++++--- .../server/routes/reindex_indices.ts | 62 +++++++++++++------ 4 files changed, 106 insertions(+), 30 deletions(-) create mode 100644 x-pack/plugins/upgrade_assistant/server/lib/reindexing/error.ts create mode 100644 x-pack/plugins/upgrade_assistant/server/lib/reindexing/error_symbols.ts diff --git a/x-pack/plugins/upgrade_assistant/server/lib/reindexing/error.ts b/x-pack/plugins/upgrade_assistant/server/lib/reindexing/error.ts new file mode 100644 index 00000000000000..b7bc197fbd162b --- /dev/null +++ b/x-pack/plugins/upgrade_assistant/server/lib/reindexing/error.ts @@ -0,0 +1,35 @@ +/* + * 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 { + AccessForbidden, + IndexNotFound, + CannotCreateIndex, + ReindexTaskCannotBeDeleted, + ReindexTaskFailed, + ReindexAlreadyInProgress, + MultipleReindexJobsFound, +} from './error_symbols'; + +export class ReindexError extends Error { + constructor(message: string, public readonly symbol: symbol) { + super(message); + } +} + +export const createErrorFactory = (symbol: symbol) => (message: string) => { + return new ReindexError(message, symbol); +}; + +export const error = { + indexNotFound: createErrorFactory(IndexNotFound), + accessForbidden: createErrorFactory(AccessForbidden), + cannotCreateIndex: createErrorFactory(CannotCreateIndex), + reindexTaskFailed: createErrorFactory(ReindexTaskFailed), + reindexTaskCannotBeDeleted: createErrorFactory(ReindexTaskCannotBeDeleted), + reindexAlreadyInProgress: createErrorFactory(ReindexAlreadyInProgress), + multipleReindexJobsFound: createErrorFactory(MultipleReindexJobsFound), +}; diff --git a/x-pack/plugins/upgrade_assistant/server/lib/reindexing/error_symbols.ts b/x-pack/plugins/upgrade_assistant/server/lib/reindexing/error_symbols.ts new file mode 100644 index 00000000000000..9e49d280d1be22 --- /dev/null +++ b/x-pack/plugins/upgrade_assistant/server/lib/reindexing/error_symbols.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. + */ + +export const AccessForbidden = Symbol('AccessForbidden'); +export const IndexNotFound = Symbol('IndexNotFound'); +export const CannotCreateIndex = Symbol('CannotCreateIndex'); + +export const ReindexTaskFailed = Symbol('ReindexTaskFailed'); +export const ReindexTaskCannotBeDeleted = Symbol('ReindexTaskCannotBeDeleted'); +export const ReindexAlreadyInProgress = Symbol('ReindexAlreadyInProgress'); + +export const MultipleReindexJobsFound = Symbol('MultipleReindexJobsFound'); diff --git a/x-pack/plugins/upgrade_assistant/server/lib/reindexing/reindex_service.ts b/x-pack/plugins/upgrade_assistant/server/lib/reindexing/reindex_service.ts index 8f1df5b34372b3..b274743bdf2791 100644 --- a/x-pack/plugins/upgrade_assistant/server/lib/reindexing/reindex_service.ts +++ b/x-pack/plugins/upgrade_assistant/server/lib/reindexing/reindex_service.ts @@ -3,8 +3,6 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ - -import Boom from 'boom'; import { APICaller, Logger } from 'src/core/server'; import { first } from 'rxjs/operators'; @@ -24,6 +22,8 @@ import { import { ReindexActions } from './reindex_actions'; import { LicensingPluginSetup } from '../../../../licensing/server'; +import { error } from './error'; + const VERSION_REGEX = new RegExp(/^([1-9]+)\.([0-9]+)\.([0-9]+)/); const ML_INDICES = ['.ml-state', '.ml-anomalies', '.ml-config']; const WATCHER_INDICES = ['.watches', '.triggered-watches']; @@ -284,7 +284,7 @@ export const reindexServiceFactory = ( const flatSettings = await actions.getFlatSettings(indexName); if (!flatSettings) { - throw Boom.notFound(`Index ${indexName} does not exist.`); + throw error.indexNotFound(`Index ${indexName} does not exist.`); } const { settings, mappings } = transformFlatSettings(flatSettings); @@ -298,7 +298,7 @@ export const reindexServiceFactory = ( }); if (!createIndex.acknowledged) { - throw Boom.badImplementation(`Index could not be created: ${newIndexName}`); + throw error.cannotCreateIndex(`Index could not be created: ${newIndexName}`); } return actions.updateReindexOp(reindexOp, { @@ -363,7 +363,7 @@ export const reindexServiceFactory = ( if (taskResponse.task.status.created < count) { // Include the entire task result in the error message. This should be guaranteed // to be JSON-serializable since it just came back from Elasticsearch. - throw Boom.badData(`Reindexing failed: ${JSON.stringify(taskResponse)}`); + throw error.reindexTaskFailed(`Reindexing failed: ${JSON.stringify(taskResponse)}`); } // Update the status @@ -380,7 +380,7 @@ export const reindexServiceFactory = ( }); if (deleteTaskResp.result !== 'deleted') { - throw Boom.badImplementation(`Could not delete reindexing task ${taskId}`); + throw error.reindexTaskCannotBeDeleted(`Could not delete reindexing task ${taskId}`); } return reindexOp; @@ -414,7 +414,7 @@ export const reindexServiceFactory = ( }); if (!aliasResponse.acknowledged) { - throw Boom.badImplementation(`Index aliases could not be created.`); + throw error.cannotCreateIndex(`Index aliases could not be created.`); } return actions.updateReindexOp(reindexOp, { @@ -520,7 +520,7 @@ export const reindexServiceFactory = ( async createReindexOperation(indexName: string) { const indexExists = await callAsUser('indices.exists', { index: indexName }); if (!indexExists) { - throw Boom.notFound(`Index ${indexName} does not exist in this cluster.`); + throw error.indexNotFound(`Index ${indexName} does not exist in this cluster.`); } const existingReindexOps = await actions.findReindexOperations(indexName); @@ -533,7 +533,9 @@ export const reindexServiceFactory = ( // Delete the existing one if it failed or was cancelled to give a chance to retry. await actions.deleteReindexOp(existingOp); } else { - throw Boom.badImplementation(`A reindex operation already in-progress for ${indexName}`); + throw error.reindexAlreadyInProgress( + `A reindex operation already in-progress for ${indexName}` + ); } } @@ -547,7 +549,9 @@ export const reindexServiceFactory = ( if (findResponse.total === 0) { return null; } else if (findResponse.total > 1) { - throw Boom.badImplementation(`More than one reindex operation found for ${indexName}`); + throw error.multipleReindexJobsFound( + `More than one reindex operation found for ${indexName}` + ); } return findResponse.saved_objects[0]; diff --git a/x-pack/plugins/upgrade_assistant/server/routes/reindex_indices.ts b/x-pack/plugins/upgrade_assistant/server/routes/reindex_indices.ts index a910145474061f..72c2f2c29b72ea 100644 --- a/x-pack/plugins/upgrade_assistant/server/routes/reindex_indices.ts +++ b/x-pack/plugins/upgrade_assistant/server/routes/reindex_indices.ts @@ -5,7 +5,12 @@ */ import { schema } from '@kbn/config-schema'; -import { Logger, ElasticsearchServiceSetup, SavedObjectsClient } from 'src/core/server'; +import { + Logger, + ElasticsearchServiceSetup, + SavedObjectsClient, + kibanaResponseFactory, +} from '../../../../../src/core/server'; import { ReindexStatus } from '../../common/types'; import { versionCheckHandlerWrapper } from '../lib/es_version_precheck'; import { reindexServiceFactory, ReindexWorker } from '../lib/reindexing'; @@ -13,6 +18,16 @@ import { CredentialStore } from '../lib/reindexing/credential_store'; import { reindexActionsFactory } from '../lib/reindexing/reindex_actions'; import { RouteDependencies } from '../types'; import { LicensingPluginSetup } from '../../../licensing/server'; +import { ReindexError } from '../lib/reindexing/error'; +import { + AccessForbidden, + IndexNotFound, + CannotCreateIndex, + ReindexAlreadyInProgress, + ReindexTaskCannotBeDeleted, + ReindexTaskFailed, + MultipleReindexJobsFound, +} from '../lib/reindexing/error_symbols'; interface CreateReindexWorker { logger: Logger; @@ -33,6 +48,29 @@ export function createReindexWorker({ return new ReindexWorker(savedObjects, credentialStore, adminClient, logger, licensing); } +const mapAnyErrorToKibanaHttpResponse = (e: any) => { + if (e instanceof ReindexError) { + switch (e.symbol) { + case AccessForbidden: + return kibanaResponseFactory.forbidden({ body: e.message }); + case IndexNotFound: + return kibanaResponseFactory.notFound({ body: e.message }); + case CannotCreateIndex: + case ReindexTaskCannotBeDeleted: + return kibanaResponseFactory.internalError({ body: e.message }); + case ReindexTaskFailed: + // Bad data + return kibanaResponseFactory.customError({ body: e.message, statusCode: 422 }); + case ReindexAlreadyInProgress: + case MultipleReindexJobsFound: + return kibanaResponseFactory.badRequest({ body: e.message }); + default: + // nothing matched + } + } + return kibanaResponseFactory.internalError({ body: e }); +}; + export function registerReindexIndicesRoutes( { credentialStore, router, licensing, log }: RouteDependencies, getWorker: () => ReindexWorker @@ -94,7 +132,7 @@ export function registerReindexIndicesRoutes( return response.ok({ body: reindexOp.attributes }); } catch (e) { - return response.internalError({ body: e }); + return mapAnyErrorToKibanaHttpResponse(e); } } ) @@ -150,15 +188,7 @@ export function registerReindexIndicesRoutes( }, }); } catch (e) { - if (!e.isBoom) { - return response.internalError({ body: e }); - } - return response.customError({ - body: { - message: e.message, - }, - statusCode: e.statusCode, - }); + return mapAnyErrorToKibanaHttpResponse(e); } } ) @@ -201,15 +231,7 @@ export function registerReindexIndicesRoutes( return response.ok({ body: { acknowledged: true } }); } catch (e) { - if (!e.isBoom) { - return response.internalError({ body: e }); - } - return response.customError({ - body: { - message: e.message, - }, - statusCode: e.statusCode, - }); + return mapAnyErrorToKibanaHttpResponse(e); } } ) From d7601cc7431e1fdf9a1d4bc39640b10c897c6f3d Mon Sep 17 00:00:00 2001 From: Rudolf Meijering Date: Mon, 2 Mar 2020 13:15:29 +0100 Subject: [PATCH 011/120] Retry migration operations which fail due to snapshot in progress (#58884) Co-authored-by: Elastic Machine --- .../server/elasticsearch/retry_call_cluster.test.ts | 13 +++++++++++++ src/core/server/elasticsearch/retry_call_cluster.ts | 13 +++---------- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/core/server/elasticsearch/retry_call_cluster.test.ts b/src/core/server/elasticsearch/retry_call_cluster.test.ts index b5a5185ab39d91..4f391f0aba34b3 100644 --- a/src/core/server/elasticsearch/retry_call_cluster.test.ts +++ b/src/core/server/elasticsearch/retry_call_cluster.test.ts @@ -89,6 +89,19 @@ describe('migrationsRetryCallCluster', () => { }); }); + it('retries ES API calls that rejects with snapshot_in_progress_exception', () => { + expect.assertions(1); + const callEsApi = jest.fn(); + let i = 0; + callEsApi.mockImplementation(() => { + return i++ <= 2 + ? Promise.reject({ body: { error: { type: 'snapshot_in_progress_exception' } } }) + : Promise.resolve('success'); + }); + const retried = migrationsRetryCallCluster(callEsApi, mockLogger.get('mock log'), 1); + return expect(retried('endpoint')).resolves.toMatchInlineSnapshot(`"success"`); + }); + it('rejects when ES API calls reject with other errors', async () => { expect.assertions(3); const callEsApi = jest.fn(); diff --git a/src/core/server/elasticsearch/retry_call_cluster.ts b/src/core/server/elasticsearch/retry_call_cluster.ts index ea3cc0b90c0778..901b801159cb6a 100644 --- a/src/core/server/elasticsearch/retry_call_cluster.ts +++ b/src/core/server/elasticsearch/retry_call_cluster.ts @@ -64,7 +64,8 @@ export function migrationsRetryCallCluster( error instanceof esErrors.AuthenticationException || error instanceof esErrors.AuthorizationException || // @ts-ignore - error instanceof esErrors.Gone + error instanceof esErrors.Gone || + error?.body?.error?.type === 'snapshot_in_progress_exception' ); }, timer(delay), @@ -85,15 +86,7 @@ export function migrationsRetryCallCluster( * * @param apiCaller */ - -// TODO: Replace with APICaller from './scoped_cluster_client' once #46668 is merged -export function retryCallCluster( - apiCaller: ( - endpoint: string, - clientParams: Record, - options?: CallAPIOptions - ) => Promise -) { +export function retryCallCluster(apiCaller: APICaller) { return (endpoint: string, clientParams: Record = {}, options?: CallAPIOptions) => { return defer(() => apiCaller(endpoint, clientParams, options)) .pipe( From 810a6b474817a19e19e49d144f17014f16221c8d Mon Sep 17 00:00:00 2001 From: Mikhail Shustov Date: Mon, 2 Mar 2020 13:37:20 +0100 Subject: [PATCH 012/120] merge only plain objects (#59011) --- src/core/utils/merge.test.ts | 24 ++++++++++++++++++++++++ src/core/utils/merge.ts | 4 ++-- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/src/core/utils/merge.test.ts b/src/core/utils/merge.test.ts index c857e980dec21a..7ef07a83399ac4 100644 --- a/src/core/utils/merge.test.ts +++ b/src/core/utils/merge.test.ts @@ -17,6 +17,7 @@ * under the License. */ +// eslint-disable-next-line max-classes-per-file import { merge } from './merge'; describe('merge', () => { @@ -62,6 +63,29 @@ describe('merge', () => { expect(merge({ a: 0 }, { a: 1 }, {})).toEqual({ a: 1 }); }); + test('does not merge class instances', () => { + class Folder { + constructor(public readonly path: string) {} + getPath() { + return this.path; + } + } + class File { + constructor(public readonly content: string) {} + getContent() { + return this.content; + } + } + const folder = new Folder('/etc'); + const file = new File('yolo'); + + const result = merge({}, { content: folder }, { content: file }); + expect(result).toStrictEqual({ + content: file, + }); + expect(result.content.getContent()).toBe('yolo'); + }); + test(`doesn't pollute prototypes`, () => { merge({}, JSON.parse('{ "__proto__": { "foo": "bar" } }')); merge({}, JSON.parse('{ "constructor": { "prototype": { "foo": "bar" } } }')); diff --git a/src/core/utils/merge.ts b/src/core/utils/merge.ts index 8e5d9f4860d955..43878c27b1e199 100644 --- a/src/core/utils/merge.ts +++ b/src/core/utils/merge.ts @@ -16,7 +16,7 @@ * specific language governing permissions and limitations * under the License. */ - +import { isPlainObject } from 'lodash'; /** * Deeply merges two objects, omitting undefined values, and not deeply merging Arrays. * @@ -60,7 +60,7 @@ export function merge>( ) as TReturn; } -const isMergable = (obj: any) => typeof obj === 'object' && obj !== null && !Array.isArray(obj); +const isMergable = (obj: any) => isPlainObject(obj); const mergeObjects = , U extends Record>( baseObj: T, From c9ebeb7cff9a8b1f25623ee4950074f7c7bc24c5 Mon Sep 17 00:00:00 2001 From: Liza Katz Date: Mon, 2 Mar 2020 13:07:02 +0000 Subject: [PATCH 013/120] explicit ui exports from data plugin (#57764) * explicit ui exports * Fix imports in data plugin Co-authored-by: Elastic Machine --- src/plugins/data/public/index.ts | 15 ++++++++++++++- .../ui/query_string_input/query_string_input.tsx | 3 ++- .../data/public/ui/search_bar/search_bar.tsx | 4 +--- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/plugins/data/public/index.ts b/src/plugins/data/public/index.ts index 5dcf51ecc81eb6..a5f4ce2ce3c581 100644 --- a/src/plugins/data/public/index.ts +++ b/src/plugins/data/public/index.ts @@ -286,6 +286,19 @@ export { export { IRequestTypesMap, IResponseTypesMap } from './search'; export * from './search'; +/* + * UI components + */ + +export { + SearchBar, + SearchBarProps, + StatefulSearchBarProps, + FilterBar, + QueryStringInput, + IndexPatternSelect, +} from './ui'; + /** * Types to be shared externally * @public @@ -310,7 +323,7 @@ export { TimefilterContract, TimeHistoryContract, } from './query'; -export * from './ui'; + export { // kbn field types castEsToKbnFieldTypeName, diff --git a/src/plugins/data/public/ui/query_string_input/query_string_input.tsx b/src/plugins/data/public/ui/query_string_input/query_string_input.tsx index 018c2927031d00..a51362d0ba92ef 100644 --- a/src/plugins/data/public/ui/query_string_input/query_string_input.tsx +++ b/src/plugins/data/public/ui/query_string_input/query_string_input.tsx @@ -34,13 +34,14 @@ import { import { FormattedMessage } from '@kbn/i18n/react'; import { debounce, compact, isEqual } from 'lodash'; import { Toast } from 'src/core/public'; -import { IDataPluginServices, IIndexPattern, SuggestionsComponent, Query } from '../..'; +import { IDataPluginServices, IIndexPattern, Query } from '../..'; import { QuerySuggestion, QuerySuggestionTypes } from '../../autocomplete'; import { withKibana, KibanaReactContextValue, toMountPoint } from '../../../../kibana_react/public'; import { fetchIndexPatterns } from './fetch_index_patterns'; import { QueryLanguageSwitcher } from './language_switcher'; import { PersistedLog, getQueryLog, matchPairs, toUser, fromUser } from '../../query'; +import { SuggestionsComponent } from '..'; interface Props { kibana: KibanaReactContextValue; diff --git a/src/plugins/data/public/ui/search_bar/search_bar.tsx b/src/plugins/data/public/ui/search_bar/search_bar.tsx index 66ad4dfb12e977..5083a1e68c6dd3 100644 --- a/src/plugins/data/public/ui/search_bar/search_bar.tsx +++ b/src/plugins/data/public/ui/search_bar/search_bar.tsx @@ -33,12 +33,10 @@ import { IIndexPattern, FilterBar, SavedQuery, - SavedQueryMeta, - SaveQueryForm, - SavedQueryManagementComponent, } from '../..'; import { QueryBarTopRow } from '../query_string_input/query_bar_top_row'; import { SavedQueryAttributes, TimeHistoryContract } from '../../query'; +import { SavedQueryMeta, SavedQueryManagementComponent, SaveQueryForm } from '..'; interface SearchBarInjectedDeps { kibana: KibanaReactContextValue; From b5dd99c4667e4ebf452073eee922c4bd34da6cce Mon Sep 17 00:00:00 2001 From: Uladzislau Lasitsa Date: Mon, 2 Mar 2020 16:50:44 +0300 Subject: [PATCH 014/120] Converted terms_other_bucket_helper to TS. Migrated tests to jest. (#58143) * Converted terms_other_bucket_helper to TS. Migrated tests to jest. * Fixed some remarks * fix PR comments * Fixed tests * Fixed types Co-authored-by: Elastic Machine Co-authored-by: Alexey Antonov --- .../_terms_other_bucket_helper.test.ts} | 218 ++++++++++++------ ...elper.js => _terms_other_bucket_helper.ts} | 135 +++++++---- .../data/public/search/aggs/buckets/terms.ts | 1 - 3 files changed, 233 insertions(+), 121 deletions(-) rename src/legacy/core_plugins/data/public/search/aggs/{__tests__/buckets/_terms_other_bucket_helper.js => buckets/_terms_other_bucket_helper.test.ts} (54%) rename src/legacy/core_plugins/data/public/search/aggs/buckets/{_terms_other_bucket_helper.js => _terms_other_bucket_helper.ts} (65%) diff --git a/src/legacy/core_plugins/data/public/search/aggs/__tests__/buckets/_terms_other_bucket_helper.js b/src/legacy/core_plugins/data/public/search/aggs/buckets/_terms_other_bucket_helper.test.ts similarity index 54% rename from src/legacy/core_plugins/data/public/search/aggs/__tests__/buckets/_terms_other_bucket_helper.js rename to src/legacy/core_plugins/data/public/search/aggs/buckets/_terms_other_bucket_helper.test.ts index 749dad377f2e25..976ab57c00b631 100644 --- a/src/legacy/core_plugins/data/public/search/aggs/__tests__/buckets/_terms_other_bucket_helper.js +++ b/src/legacy/core_plugins/data/public/search/aggs/buckets/_terms_other_bucket_helper.test.ts @@ -17,39 +17,73 @@ * under the License. */ -import expect from '@kbn/expect'; -import ngMock from 'ng_mock'; import { buildOtherBucketAgg, mergeOtherBucketAggResponse, updateMissingBucket, -} from '../../buckets/_terms_other_bucket_helper'; -import { start as visualizationsStart } from '../../../../../../../core_plugins/visualizations/public/np_ready/public/legacy'; -import FixturesStubbedLogstashIndexPatternProvider from 'fixtures/stubbed_logstash_index_pattern'; +} from './_terms_other_bucket_helper'; +import { AggConfigs, CreateAggConfigParams } from '../agg_configs'; +import { BUCKET_TYPES } from './bucket_agg_types'; +import { IBucketAggConfig } from './_bucket_agg_type'; +import { mockDataServices, mockAggTypesRegistry } from '../test_helpers'; -const visConfigSingleTerm = { - type: 'pie', +const indexPattern = { + id: '1234', + title: 'logstash-*', + fields: [ + { + name: 'field', + }, + ], +} as any; + +const singleTerm = { aggs: [ { - type: 'terms', - schema: 'segment', - params: { field: 'machine.os.raw', otherBucket: true, missingBucket: true }, + id: '1', + type: BUCKET_TYPES.TERMS, + params: { + field: { + name: 'machine.os.raw', + indexPattern, + filterable: true, + }, + otherBucket: true, + missingBucket: true, + }, }, ], }; -const visConfigNestedTerm = { - type: 'pie', +const nestedTerm = { aggs: [ { - type: 'terms', - schema: 'segment', - params: { field: 'geo.src', size: 2, otherBucket: false, missingBucket: false }, + id: '1', + type: BUCKET_TYPES.TERMS, + params: { + field: { + name: 'geo.src', + indexPattern, + filterable: true, + }, + size: 2, + otherBucket: false, + missingBucket: false, + }, }, { - type: 'terms', - schema: 'segment', - params: { field: 'machine.os.raw', size: 2, otherBucket: true, missingBucket: true }, + id: '2', + type: BUCKET_TYPES.TERMS, + params: { + field: { + name: 'machine.os.raw', + indexPattern, + filterable: true, + }, + size: 2, + otherBucket: true, + missingBucket: true, + }, }, ], }; @@ -183,28 +217,36 @@ const nestedOtherResponse = { status: 200, }; -describe('Terms Agg Other bucket helper', () => { - let vis; +jest.mock('ui/new_platform'); - function init(aggConfig) { - ngMock.module('kibana'); - ngMock.inject(Private => { - const indexPattern = Private(FixturesStubbedLogstashIndexPatternProvider); +describe('Terms Agg Other bucket helper', () => { + const typesRegistry = mockAggTypesRegistry(); + const getAggConfigs = (aggs: CreateAggConfigParams[] = []) => { + return new AggConfigs(indexPattern, [...aggs], { typesRegistry }); + }; - vis = new visualizationsStart.Vis(indexPattern, aggConfig); - }); - } + beforeEach(() => { + mockDataServices(); + }); describe('buildOtherBucketAgg', () => { - it('returns a function', () => { - init(visConfigSingleTerm); - const agg = buildOtherBucketAgg(vis.aggs, vis.aggs.aggs[0], singleTermResponse); - expect(agg).to.be.a('function'); + test('returns a function', () => { + const aggConfigs = getAggConfigs(singleTerm.aggs); + const agg = buildOtherBucketAgg( + aggConfigs, + aggConfigs.aggs[0] as IBucketAggConfig, + singleTermResponse + ); + expect(typeof agg).toBe('function'); }); - it('correctly builds query with single terms agg', () => { - init(visConfigSingleTerm); - const agg = buildOtherBucketAgg(vis.aggs, vis.aggs.aggs[0], singleTermResponse)(); + test('correctly builds query with single terms agg', () => { + const aggConfigs = getAggConfigs(singleTerm.aggs); + const agg = buildOtherBucketAgg( + aggConfigs, + aggConfigs.aggs[0] as IBucketAggConfig, + singleTermResponse + ); const expectedResponse = { aggs: undefined, filters: { @@ -223,13 +265,19 @@ describe('Terms Agg Other bucket helper', () => { }, }, }; - - expect(agg['other-filter']).to.eql(expectedResponse); + expect(agg).toBeDefined(); + if (agg) { + expect(agg()['other-filter']).toEqual(expectedResponse); + } }); - it('correctly builds query for nested terms agg', () => { - init(visConfigNestedTerm); - const agg = buildOtherBucketAgg(vis.aggs, vis.aggs.aggs[1], nestedTermResponse)(); + test('correctly builds query for nested terms agg', () => { + const aggConfigs = getAggConfigs(nestedTerm.aggs); + const agg = buildOtherBucketAgg( + aggConfigs, + aggConfigs.aggs[1] as IBucketAggConfig, + nestedTermResponse + ); const expectedResponse = { 'other-filter': { aggs: undefined, @@ -267,54 +315,84 @@ describe('Terms Agg Other bucket helper', () => { }, }, }; - - expect(agg).to.eql(expectedResponse); + expect(agg).toBeDefined(); + if (agg) { + expect(agg()).toEqual(expectedResponse); + } }); - it('returns false when nested terms agg has no buckets', () => { - init(visConfigNestedTerm); - const agg = buildOtherBucketAgg(vis.aggs, vis.aggs.aggs[1], nestedTermResponseNoResults); - expect(agg).to.eql(false); + test('returns false when nested terms agg has no buckets', () => { + const aggConfigs = getAggConfigs(nestedTerm.aggs); + const agg = buildOtherBucketAgg( + aggConfigs, + aggConfigs.aggs[1] as IBucketAggConfig, + nestedTermResponseNoResults + ); + + expect(agg).toEqual(false); }); }); describe('mergeOtherBucketAggResponse', () => { - it('correctly merges other bucket with single terms agg', () => { - init(visConfigSingleTerm); - const otherAggConfig = buildOtherBucketAgg(vis.aggs, vis.aggs.aggs[0], singleTermResponse)(); - const mergedResponse = mergeOtherBucketAggResponse( - vis.aggs, - singleTermResponse, - singleOtherResponse, - vis.aggs.aggs[0], - otherAggConfig + test('correctly merges other bucket with single terms agg', () => { + const aggConfigs = getAggConfigs(singleTerm.aggs); + const otherAggConfig = buildOtherBucketAgg( + aggConfigs, + aggConfigs.aggs[0] as IBucketAggConfig, + singleTermResponse ); - expect(mergedResponse.aggregations['1'].buckets[3].key).to.equal('__other__'); + expect(otherAggConfig).toBeDefined(); + if (otherAggConfig) { + const mergedResponse = mergeOtherBucketAggResponse( + aggConfigs, + singleTermResponse, + singleOtherResponse, + aggConfigs.aggs[0] as IBucketAggConfig, + otherAggConfig() + ); + expect(mergedResponse.aggregations['1'].buckets[3].key).toEqual('__other__'); + } }); - it('correctly merges other bucket with nested terms agg', () => { - init(visConfigNestedTerm); - const otherAggConfig = buildOtherBucketAgg(vis.aggs, vis.aggs.aggs[1], nestedTermResponse)(); - const mergedResponse = mergeOtherBucketAggResponse( - vis.aggs, - nestedTermResponse, - nestedOtherResponse, - vis.aggs.aggs[1], - otherAggConfig + test('correctly merges other bucket with nested terms agg', () => { + const aggConfigs = getAggConfigs(nestedTerm.aggs); + const otherAggConfig = buildOtherBucketAgg( + aggConfigs, + aggConfigs.aggs[1] as IBucketAggConfig, + nestedTermResponse ); - expect(mergedResponse.aggregations['1'].buckets[1]['2'].buckets[3].key).to.equal('__other__'); + expect(otherAggConfig).toBeDefined(); + if (otherAggConfig) { + const mergedResponse = mergeOtherBucketAggResponse( + aggConfigs, + nestedTermResponse, + nestedOtherResponse, + aggConfigs.aggs[1] as IBucketAggConfig, + otherAggConfig() + ); + + expect(mergedResponse.aggregations['1'].buckets[1]['2'].buckets[3].key).toEqual( + '__other__' + ); + } }); }); describe('updateMissingBucket', () => { - it('correctly updates missing bucket key', () => { - init(visConfigNestedTerm); - const updatedResponse = updateMissingBucket(singleTermResponse, vis.aggs, vis.aggs.aggs[0]); + test('correctly updates missing bucket key', () => { + const aggConfigs = getAggConfigs(nestedTerm.aggs); + const updatedResponse = updateMissingBucket( + singleTermResponse, + aggConfigs, + aggConfigs.aggs[0] as IBucketAggConfig + ); expect( - updatedResponse.aggregations['1'].buckets.find(bucket => bucket.key === '__missing__') - ).to.not.be('undefined'); + updatedResponse.aggregations['1'].buckets.find( + (bucket: Record) => bucket.key === '__missing__' + ) + ).toBeDefined(); }); }); }); diff --git a/src/legacy/core_plugins/data/public/search/aggs/buckets/_terms_other_bucket_helper.js b/src/legacy/core_plugins/data/public/search/aggs/buckets/_terms_other_bucket_helper.ts similarity index 65% rename from src/legacy/core_plugins/data/public/search/aggs/buckets/_terms_other_bucket_helper.js rename to src/legacy/core_plugins/data/public/search/aggs/buckets/_terms_other_bucket_helper.ts index ddab360161744c..42db37c81eadd6 100644 --- a/src/legacy/core_plugins/data/public/search/aggs/buckets/_terms_other_bucket_helper.js +++ b/src/legacy/core_plugins/data/public/search/aggs/buckets/_terms_other_bucket_helper.ts @@ -17,21 +17,24 @@ * under the License. */ -import _ from 'lodash'; +import { isNumber, keys, values, find, each, cloneDeep, flatten } from 'lodash'; import { esFilters, esQuery } from '../../../../../../../plugins/data/public'; import { AggGroupNames } from '../agg_groups'; +import { IAggConfigs } from '../agg_configs'; +import { IBucketAggConfig } from './_bucket_agg_type'; /** * walks the aggregation DSL and returns DSL starting at aggregation with id of startFromAggId * @param aggNestedDsl: aggregation config DSL (top level) * @param startFromId: id of an aggregation from where we want to get the nested DSL */ -const getNestedAggDSL = (aggNestedDsl, startFromAggId) => { +const getNestedAggDSL = (aggNestedDsl: Record, startFromAggId: string): any => { if (aggNestedDsl[startFromAggId]) { return aggNestedDsl[startFromAggId]; } - const nestedAggs = _.values(aggNestedDsl); + const nestedAggs: Array> = values(aggNestedDsl); let aggs; + for (let i = 0; i < nestedAggs.length; i++) { if (nestedAggs[i].aggs && (aggs = getNestedAggDSL(nestedAggs[i].aggs, startFromAggId))) { return aggs; @@ -46,27 +49,34 @@ const getNestedAggDSL = (aggNestedDsl, startFromAggId) => { * @param aggWithOtherBucket: AggConfig of the aggregation with other bucket enabled * @param key: key from the other bucket request for a specific other bucket */ -const getAggResultBuckets = (aggConfigs, response, aggWithOtherBucket, key) => { +const getAggResultBuckets = ( + aggConfigs: IAggConfigs, + response: any, + aggWithOtherBucket: IBucketAggConfig, + key: string +) => { const keyParts = key.split('-'); let responseAgg = response; for (const i in keyParts) { if (keyParts[i]) { - const responseAggs = _.values(responseAgg); + const responseAggs: Array> = values(responseAgg); // If you have multi aggs, we cannot just assume the first one is the `other` bucket, // so we need to loop over each agg until we find it. for (let aggId = 0; aggId < responseAggs.length; aggId++) { - const agg = responseAggs[aggId]; - const aggKey = _.keys(responseAgg)[aggId]; - const aggConfig = _.find(aggConfigs.aggs, agg => agg.id === aggKey); - const bucket = _.find(agg.buckets, (bucket, bucketObjKey) => { - const bucketKey = aggConfig - .getKey(bucket, Number.isInteger(bucketObjKey) ? null : bucketObjKey) - .toString(); - return bucketKey === keyParts[i]; - }); - if (bucket) { - responseAgg = bucket; - break; + const aggById = responseAggs[aggId]; + const aggKey = keys(responseAgg)[aggId]; + const aggConfig = find(aggConfigs.aggs, agg => agg.id === aggKey); + if (aggConfig) { + const aggResultBucket = find(aggById.buckets, (bucket, bucketObjKey) => { + const bucketKey = aggConfig + .getKey(bucket, isNumber(bucketObjKey) ? undefined : bucketObjKey) + .toString(); + return bucketKey === keyParts[i]; + }); + if (aggResultBucket) { + responseAgg = aggResultBucket; + break; + } } } } @@ -82,21 +92,20 @@ const getAggResultBuckets = (aggConfigs, response, aggWithOtherBucket, key) => { * @param responseAggs: array of aggregations from response * @param aggId: id of the aggregation with missing bucket */ -const getAggConfigResultMissingBuckets = (responseAggs, aggId) => { +const getAggConfigResultMissingBuckets = (responseAggs: any, aggId: string) => { const missingKey = '__missing__'; - let resultBuckets = []; + let resultBuckets: Array> = []; if (responseAggs[aggId]) { - const matchingBucket = responseAggs[aggId].buckets.find(bucket => bucket.key === missingKey); + const matchingBucket = responseAggs[aggId].buckets.find( + (bucket: Record) => bucket.key === missingKey + ); if (matchingBucket) resultBuckets.push(matchingBucket); return resultBuckets; } - _.each(responseAggs, agg => { + each(responseAggs, agg => { if (agg.buckets) { - _.each(agg.buckets, bucket => { - resultBuckets = [ - ...resultBuckets, - ...getAggConfigResultMissingBuckets(bucket, aggId, missingKey), - ]; + each(agg.buckets, bucket => { + resultBuckets = [...resultBuckets, ...getAggConfigResultMissingBuckets(bucket, aggId)]; }); } }); @@ -110,13 +119,24 @@ const getAggConfigResultMissingBuckets = (responseAggs, aggId) => { * @param key: the key for this specific other bucket * @param otherAgg: AggConfig of the aggregation with other bucket */ -const getOtherAggTerms = (requestAgg, key, otherAgg) => { +const getOtherAggTerms = ( + requestAgg: Record, + key: string, + otherAgg: IBucketAggConfig +) => { return requestAgg['other-filter'].filters.filters[key].bool.must_not - .filter(filter => filter.match_phrase && filter.match_phrase[otherAgg.params.field.name]) - .map(filter => filter.match_phrase[otherAgg.params.field.name]); + .filter( + (filter: Record) => + filter.match_phrase && filter.match_phrase[otherAgg.params.field.name] + ) + .map((filter: Record) => filter.match_phrase[otherAgg.params.field.name]); }; -export const buildOtherBucketAgg = (aggConfigs, aggWithOtherBucket, response) => { +export const buildOtherBucketAgg = ( + aggConfigs: IAggConfigs, + aggWithOtherBucket: IBucketAggConfig, + response: any +) => { const bucketAggs = aggConfigs.aggs.filter(agg => agg.type.type === AggGroupNames.Buckets); const index = bucketAggs.findIndex(agg => agg.id === aggWithOtherBucket.id); const aggs = aggConfigs.toDsl(); @@ -130,6 +150,7 @@ export const buildOtherBucketAgg = (aggConfigs, aggWithOtherBucket, response) => params: { filters: [], }, + enabled: false, }, { addToAggConfigs: false, @@ -145,25 +166,31 @@ export const buildOtherBucketAgg = (aggConfigs, aggWithOtherBucket, response) => let noAggBucketResults = false; // recursively create filters for all parent aggregation buckets - const walkBucketTree = (aggIndex, aggs, aggId, filters, key) => { + const walkBucketTree = ( + aggIndex: number, + aggregations: any, + aggId: string, + filters: any[], + key: string + ) => { // make sure there are actually results for the buckets - if (aggs[aggId].buckets.length < 1) { + if (aggregations[aggId].buckets.length < 1) { noAggBucketResults = true; return; } - const agg = aggs[aggId]; + const agg = aggregations[aggId]; const newAggIndex = aggIndex + 1; const newAgg = bucketAggs[newAggIndex]; const currentAgg = bucketAggs[aggIndex]; if (aggIndex < index) { - _.each(agg.buckets, (bucket, bucketObjKey) => { + each(agg.buckets, (bucket: any, bucketObjKey) => { const bucketKey = currentAgg.getKey( bucket, - Number.isInteger(bucketObjKey) ? null : bucketObjKey + isNumber(bucketObjKey) ? undefined : bucketObjKey ); - const filter = _.cloneDeep(bucket.filters) || currentAgg.createFilter(bucketKey); - const newFilters = _.flatten([...filters, filter]); + const filter = cloneDeep(bucket.filters) || currentAgg.createFilter(bucketKey); + const newFilters = flatten([...filters, filter]); walkBucketTree( newAggIndex, bucket, @@ -177,7 +204,7 @@ export const buildOtherBucketAgg = (aggConfigs, aggWithOtherBucket, response) => if ( !aggWithOtherBucket.params.missingBucket || - agg.buckets.some(bucket => bucket.key === '__missing__') + agg.buckets.some((bucket: { key: string }) => bucket.key === '__missing__') ) { filters.push( esFilters.buildExistsFilter( @@ -188,7 +215,7 @@ export const buildOtherBucketAgg = (aggConfigs, aggWithOtherBucket, response) => } // create not filters for all the buckets - _.each(agg.buckets, bucket => { + each(agg.buckets, bucket => { if (bucket.key === '__missing__') return; const filter = currentAgg.createFilter(bucket.key); filter.meta.negate = true; @@ -214,15 +241,15 @@ export const buildOtherBucketAgg = (aggConfigs, aggWithOtherBucket, response) => }; export const mergeOtherBucketAggResponse = ( - aggsConfig, - response, - otherResponse, - otherAgg, - requestAgg + aggsConfig: IAggConfigs, + response: any, + otherResponse: any, + otherAgg: IBucketAggConfig, + requestAgg: Record ) => { - const updatedResponse = _.cloneDeep(response); - _.each(otherResponse.aggregations['other-filter'].buckets, (bucket, key) => { - if (!bucket.doc_count) return; + const updatedResponse = cloneDeep(response); + each(otherResponse.aggregations['other-filter'].buckets, (bucket, key) => { + if (!bucket.doc_count || key === undefined) return; const bucketKey = key.replace(/^-/, ''); const aggResultBuckets = getAggResultBuckets( aggsConfig, @@ -241,7 +268,11 @@ export const mergeOtherBucketAggResponse = ( bucket.filters = [phraseFilter]; bucket.key = '__other__'; - if (aggResultBuckets.some(bucket => bucket.key === '__missing__')) { + if ( + aggResultBuckets.some( + (aggResultBucket: Record) => aggResultBucket.key === '__missing__' + ) + ) { bucket.filters.push( esFilters.buildExistsFilter(otherAgg.params.field, otherAgg.params.field.indexPattern) ); @@ -251,8 +282,12 @@ export const mergeOtherBucketAggResponse = ( return updatedResponse; }; -export const updateMissingBucket = (response, aggConfigs, agg) => { - const updatedResponse = _.cloneDeep(response); +export const updateMissingBucket = ( + response: any, + aggConfigs: IAggConfigs, + agg: IBucketAggConfig +) => { + const updatedResponse = cloneDeep(response); const aggResultBuckets = getAggConfigResultMissingBuckets(updatedResponse.aggregations, agg.id); aggResultBuckets.forEach(bucket => { bucket.key = '__missing__'; diff --git a/src/legacy/core_plugins/data/public/search/aggs/buckets/terms.ts b/src/legacy/core_plugins/data/public/search/aggs/buckets/terms.ts index 0ed44aa8767442..8fd95c86d8476d 100644 --- a/src/legacy/core_plugins/data/public/search/aggs/buckets/terms.ts +++ b/src/legacy/core_plugins/data/public/search/aggs/buckets/terms.ts @@ -39,7 +39,6 @@ import { buildOtherBucketAgg, mergeOtherBucketAggResponse, updateMissingBucket, - // @ts-ignore } from './_terms_other_bucket_helper'; import { Schemas } from '../schemas'; import { AggGroupNames } from '../agg_groups'; From a3be4e22220df8724d7ceb5667f4af37647042ea Mon Sep 17 00:00:00 2001 From: kqualters-elastic <56408403+kqualters-elastic@users.noreply.github.com> Date: Mon, 2 Mar 2020 09:20:21 -0500 Subject: [PATCH 015/120] [Endpoint] add resolver middleware (#58288) * Add resolver middleware * Update types to match events, use sample events in useCamera tests * add predicate to convert alertdata to legacy endpoint event * Use mock event generator in tests * Guard against events not having agent or endpoint fields Co-authored-by: Robert Austin --- x-pack/plugins/endpoint/common/types.ts | 34 +++- .../public/applications/endpoint/index.tsx | 76 ++++--- .../store/alerts/mock_alert_result_list.ts | 1 + .../endpoint/store/alerts/selectors.ts | 23 ++- .../endpoint/view/alerts/index.test.tsx | 21 +- .../endpoint/view/alerts/index.tsx | 9 +- .../endpoint/view/alerts/resolver.tsx | 35 ++++ .../resolver/models/indexed_process_tree.ts | 20 +- .../resolver/models/process_event.test.ts | 10 +- .../resolver/models/process_event.ts | 20 +- .../models/process_event_test_helpers.ts | 43 ++-- .../embeddables/resolver/store/actions.ts | 31 ++- .../data/__snapshots__/graphing.test.ts.snap | 189 +++++++++--------- .../embeddables/resolver/store/data/action.ts | 4 +- .../resolver/store/data/graphing.test.ts | 73 +++---- .../resolver/store/data/reducer.ts | 10 +- .../resolver/store/data/selectors.ts | 14 +- .../embeddables/resolver/store/index.ts | 10 +- .../embeddables/resolver/store/methods.ts | 5 +- .../embeddables/resolver/store/middleware.ts | 45 +++++ .../embeddables/resolver/store/selectors.ts | 5 + .../public/embeddables/resolver/types.ts | 16 +- .../embeddables/resolver/view/index.tsx | 77 ++++--- .../embeddables/resolver/view/panel.tsx | 17 +- .../resolver/view/process_event_dot.tsx | 7 +- .../resolver/view/use_camera.test.tsx | 49 +++-- x-pack/plugins/endpoint/public/plugin.ts | 11 +- .../routes/resolver/queries/children.test.ts | 8 +- .../resolver/queries/related_events.test.ts | 8 +- .../routes/resolver/utils/pagination.ts | 8 +- 30 files changed, 578 insertions(+), 301 deletions(-) create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/resolver.tsx create mode 100644 x-pack/plugins/endpoint/public/embeddables/resolver/store/middleware.ts diff --git a/x-pack/plugins/endpoint/common/types.ts b/x-pack/plugins/endpoint/common/types.ts index d3df9722907598..6d904fda6f7478 100644 --- a/x-pack/plugins/endpoint/common/types.ts +++ b/x-pack/plugins/endpoint/common/types.ts @@ -115,6 +115,10 @@ export type AlertEvent = Immutable<{ score: number; }; }; + process?: { + unique_pid: number; + pid: number; + }; host: { hostname: string; ip: string; @@ -122,10 +126,9 @@ export type AlertEvent = Immutable<{ name: string; }; }; - process: { - pid: number; - }; thread: {}; + endpoint?: {}; + endgame?: {}; }>; /** @@ -186,22 +189,34 @@ export interface ESTotal { export type AlertHits = SearchResponse['hits']['hits']; export interface LegacyEndpointEvent { - '@timestamp': Date; + '@timestamp': number; endgame: { - event_type_full: string; - event_subtype_full: string; + pid?: number; + ppid?: number; + event_type_full?: string; + event_subtype_full?: string; + event_timestamp?: number; + event_type?: number; unique_pid: number; - unique_ppid: number; - serial_event_id: number; + unique_ppid?: number; + machine_id?: string; + process_name?: string; + process_path?: string; + timestamp_utc?: string; + serial_event_id?: number; }; agent: { id: string; type: string; + version: string; }; + process?: object; + rule?: object; + user?: object; } export interface EndpointEvent { - '@timestamp': Date; + '@timestamp': number; event: { category: string; type: string; @@ -216,6 +231,7 @@ export interface EndpointEvent { }; }; agent: { + id: string; type: string; }; } diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/index.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/index.tsx index 7ab66817a08880..296587706e6acd 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/index.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/index.tsx @@ -11,6 +11,7 @@ import { I18nProvider, FormattedMessage } from '@kbn/i18n/react'; import { Route, Switch, BrowserRouter } from 'react-router-dom'; import { Provider } from 'react-redux'; import { Store } from 'redux'; +import { KibanaContextProvider } from '../../../../../../src/plugins/kibana_react/public'; import { RouteCapture } from './view/route_capture'; import { appStoreFactory } from './store'; import { AlertIndex } from './view/alerts'; @@ -24,9 +25,7 @@ import { HeaderNavigation } from './components/header_nav'; export function renderApp(coreStart: CoreStart, { appBasePath, element }: AppMountParameters) { coreStart.http.get('/api/endpoint/hello-world'); const store = appStoreFactory(coreStart); - - ReactDOM.render(, element); - + ReactDOM.render(, element); return () => { ReactDOM.unmountComponentAtNode(element); }; @@ -35,35 +34,46 @@ export function renderApp(coreStart: CoreStart, { appBasePath, element }: AppMou interface RouterProps { basename: string; store: Store; + coreStart: CoreStart; } -const AppRoot: React.FunctionComponent = React.memo(({ basename, store }) => ( - - - - - - - ( -

- -

- )} - /> - - } /> - - ( - - )} - /> -
-
-
-
-
-)); +const AppRoot: React.FunctionComponent = React.memo( + ({ basename, store, coreStart: { http } }) => ( + + + + + + + + ( +

+ +

+ )} + /> + + + + ( + + )} + /> +
+
+
+
+
+
+ ) +); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/mock_alert_result_list.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/mock_alert_result_list.ts index b90f897ea2229c..8eadb3e7fb3dfd 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/mock_alert_result_list.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/mock_alert_result_list.ts @@ -43,6 +43,7 @@ export const mockAlertResultList: (options?: { }, process: { pid: 107, + unique_pid: 1, }, host: { hostname: 'HD-c15-bc09190a', diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/selectors.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/selectors.ts index 54add85f0fe04c..f217e3cda91913 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/selectors.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/selectors.ts @@ -9,13 +9,13 @@ import { createSelector, createStructuredSelector as createStructuredSelectorWithBadType, } from 'reselect'; -import { Immutable } from '../../../../../common/types'; import { AlertListState, AlertingIndexUIQueryParams, AlertsAPIQueryParams, CreateStructuredSelector, } from '../../types'; +import { Immutable, LegacyEndpointEvent } from '../../../../../common/types'; const createStructuredSelector: CreateStructuredSelector = createStructuredSelectorWithBadType; /** @@ -92,3 +92,24 @@ export const hasSelectedAlert: (state: AlertListState) => boolean = createSelect uiQueryParams, ({ selected_alert: selectedAlert }) => selectedAlert !== undefined ); + +/** + * Determine if the alert event is most likely compatible with LegacyEndpointEvent. + */ +function isAlertEventLegacyEndpointEvent(event: { endgame?: {} }): event is LegacyEndpointEvent { + return event.endgame !== undefined && 'unique_pid' in event.endgame; +} + +export const selectedEvent: ( + state: AlertListState +) => LegacyEndpointEvent | undefined = createSelector( + uiQueryParams, + alertListData, + ({ selected_alert: selectedAlert }, alertList) => { + const found = alertList.find(alert => alert.event.id === selectedAlert); + if (!found) { + return found; + } + return isAlertEventLegacyEndpointEvent(found) ? found : undefined; + } +); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.test.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.test.tsx index 37847553d512ad..fe362f21a178ea 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.test.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.test.tsx @@ -11,6 +11,7 @@ import { I18nProvider } from '@kbn/i18n/react'; import { AlertIndex } from './index'; import { appStoreFactory } from '../../store'; import { coreMock } from 'src/core/public/mocks'; +import { KibanaContextProvider } from '../../../../../../../../src/plugins/kibana_react/public'; import { fireEvent, waitForElement, act } from '@testing-library/react'; import { RouteCapture } from '../route_capture'; import { createMemoryHistory, MemoryHistory } from 'history'; @@ -44,6 +45,7 @@ describe('when on the alerting page', () => { * Create a store, with the middleware disabled. We don't want side effects being created by our code in this test. */ store = appStoreFactory(coreMock.createStart(), true); + /** * Render the test component, use this after setting up anything in `beforeEach`. */ @@ -56,13 +58,15 @@ describe('when on the alerting page', () => { */ return reactTestingLibrary.render( - - - - - - - + + + + + + + + + ); }; @@ -136,6 +140,9 @@ describe('when on the alerting page', () => { it('should show the flyout', async () => { await render().findByTestId('alertDetailFlyout'); }); + it('should render resolver', async () => { + await render().findByTestId('alertResolver'); + }); describe('when the user clicks the close button on the flyout', () => { let renderResult: reactTestingLibrary.RenderResult; beforeEach(async () => { diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.tsx index 6f88727575557d..3c229484ede4e0 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.tsx @@ -25,6 +25,7 @@ import { urlFromQueryParams } from './url_from_query_params'; import { AlertData } from '../../../../../common/types'; import * as selectors from '../../store/alerts/selectors'; import { useAlertListSelector } from './hooks/use_alerts_selector'; +import { AlertDetailResolver } from './resolver'; export const AlertIndex = memo(() => { const history = useHistory(); @@ -86,6 +87,7 @@ export const AlertIndex = memo(() => { const alertListData = useAlertListSelector(selectors.alertListData); const hasSelectedAlert = useAlertListSelector(selectors.hasSelectedAlert); const queryParams = useAlertListSelector(selectors.uiQueryParams); + const selectedEvent = useAlertListSelector(selectors.selectedEvent); const onChangeItemsPerPage = useCallback( newPageSize => { @@ -132,12 +134,11 @@ export const AlertIndex = memo(() => { } const row = alertListData[rowIndex % pageSize]; - if (columnId === 'alert_type') { return ( {i18n.translate( 'xpack.endpoint.application.endpoint.alerts.alertType.maliciousFileDescription', @@ -213,7 +214,9 @@ export const AlertIndex = memo(() => { - + + + )} diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/resolver.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/resolver.tsx new file mode 100644 index 00000000000000..c7ef7f73dfe05b --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/resolver.tsx @@ -0,0 +1,35 @@ +/* + * 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 styled from 'styled-components'; +import { Provider } from 'react-redux'; +import { useKibana } from '../../../../../../../../src/plugins/kibana_react/public'; +import { Resolver } from '../../../../embeddables/resolver/view'; +import { EndpointPluginServices } from '../../../../plugin'; +import { LegacyEndpointEvent } from '../../../../../common/types'; +import { storeFactory } from '../../../../embeddables/resolver/store'; + +export const AlertDetailResolver = styled( + React.memo( + ({ className, selectedEvent }: { className?: string; selectedEvent?: LegacyEndpointEvent }) => { + const context = useKibana(); + const { store } = storeFactory(context); + return ( +
+ + + +
+ ); + } + ) +)` + height: 100%; + width: 100%; + display: flex; + flex-grow: 1; +`; diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/models/indexed_process_tree.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/models/indexed_process_tree.ts index 0eb3505096b4a5..6892bf11ecff2e 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/models/indexed_process_tree.ts +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/models/indexed_process_tree.ts @@ -5,15 +5,16 @@ */ import { uniquePidForProcess, uniqueParentPidForProcess } from './process_event'; -import { IndexedProcessTree, ProcessEvent } from '../types'; +import { IndexedProcessTree } from '../types'; +import { LegacyEndpointEvent } from '../../../../common/types'; import { levelOrder as baseLevelOrder } from '../lib/tree_sequencers'; /** * Create a new IndexedProcessTree from an array of ProcessEvents */ -export function factory(processes: ProcessEvent[]): IndexedProcessTree { - const idToChildren = new Map(); - const idToValue = new Map(); +export function factory(processes: LegacyEndpointEvent[]): IndexedProcessTree { + const idToChildren = new Map(); + const idToValue = new Map(); for (const process of processes) { idToValue.set(uniquePidForProcess(process), process); @@ -35,7 +36,10 @@ export function factory(processes: ProcessEvent[]): IndexedProcessTree { /** * Returns an array with any children `ProcessEvent`s of the passed in `process` */ -export function children(tree: IndexedProcessTree, process: ProcessEvent): ProcessEvent[] { +export function children( + tree: IndexedProcessTree, + process: LegacyEndpointEvent +): LegacyEndpointEvent[] { const id = uniquePidForProcess(process); const processChildren = tree.idToChildren.get(id); return processChildren === undefined ? [] : processChildren; @@ -46,8 +50,8 @@ export function children(tree: IndexedProcessTree, process: ProcessEvent): Proce */ export function parent( tree: IndexedProcessTree, - childProcess: ProcessEvent -): ProcessEvent | undefined { + childProcess: LegacyEndpointEvent +): LegacyEndpointEvent | undefined { const uniqueParentPid = uniqueParentPidForProcess(childProcess); if (uniqueParentPid === undefined) { return undefined; @@ -70,7 +74,7 @@ export function root(tree: IndexedProcessTree) { if (size(tree) === 0) { return null; } - let current: ProcessEvent = tree.idToProcess.values().next().value; + let current: LegacyEndpointEvent = tree.idToProcess.values().next().value; while (parent(tree, current) !== undefined) { current = parent(tree, current)!; } diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/models/process_event.test.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/models/process_event.test.ts index 3177671a30001d..3916396f7402ce 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/models/process_event.test.ts +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/models/process_event.test.ts @@ -4,22 +4,22 @@ * you may not use this file except in compliance with the Elastic License. */ import { eventType } from './process_event'; -import { ProcessEvent } from '../types'; +import { LegacyEndpointEvent } from '../../../../common/types'; import { mockProcessEvent } from './process_event_test_helpers'; describe('process event', () => { describe('eventType', () => { - let event: ProcessEvent; + let event: LegacyEndpointEvent; beforeEach(() => { event = mockProcessEvent({ - data_buffer: { - node_id: 1, + endgame: { + unique_pid: 1, event_type_full: 'process_event', }, }); }); it("returns the right value when the subType is 'creation_event'", () => { - event.data_buffer.event_subtype_full = 'creation_event'; + event.endgame.event_subtype_full = 'creation_event'; expect(eventType(event)).toEqual('processCreated'); }); }); diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/models/process_event.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/models/process_event.ts index c8496b8e6e7a5d..876168d2ed96ac 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/models/process_event.ts +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/models/process_event.ts @@ -4,23 +4,23 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ProcessEvent } from '../types'; +import { LegacyEndpointEvent } from '../../../../common/types'; /** * Returns true if the process's eventType is either 'processCreated' or 'processRan'. * Resolver will only render 'graphable' process events. */ -export function isGraphableProcess(event: ProcessEvent) { - return eventType(event) === 'processCreated' || eventType(event) === 'processRan'; +export function isGraphableProcess(passedEvent: LegacyEndpointEvent) { + return eventType(passedEvent) === 'processCreated' || eventType(passedEvent) === 'processRan'; } /** * Returns a custom event type for a process event based on the event's metadata. */ -export function eventType(event: ProcessEvent) { +export function eventType(passedEvent: LegacyEndpointEvent) { const { - data_buffer: { event_type_full: type, event_subtype_full: subType }, - } = event; + endgame: { event_type_full: type, event_subtype_full: subType }, + } = passedEvent; if (type === 'process_event') { if (subType === 'creation_event' || subType === 'fork_event' || subType === 'exec_event') { @@ -41,13 +41,13 @@ export function eventType(event: ProcessEvent) { /** * Returns the process event's pid */ -export function uniquePidForProcess(event: ProcessEvent) { - return event.data_buffer.node_id; +export function uniquePidForProcess(event: LegacyEndpointEvent) { + return event.endgame.unique_pid; } /** * Returns the process event's parent pid */ -export function uniqueParentPidForProcess(event: ProcessEvent) { - return event.data_buffer.source_id; +export function uniqueParentPidForProcess(event: LegacyEndpointEvent) { + return event.endgame.unique_ppid; } diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/models/process_event_test_helpers.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/models/process_event_test_helpers.ts index 9a6f19adcc1017..e88837d325108d 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/models/process_event_test_helpers.ts +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/models/process_event_test_helpers.ts @@ -4,33 +4,46 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ProcessEvent } from '../types'; -type DeepPartial = { [K in keyof T]?: DeepPartial }; +import { LegacyEndpointEvent } from '../../../../common/types'; +type DeepPartial = { [K in keyof T]?: DeepPartial }; /** * Creates a mock process event given the 'parts' argument, which can * include all or some process event fields as determined by the ProcessEvent type. * The only field that must be provided is the event's 'node_id' field. * The other fields are populated by the function unless provided in 'parts' */ -export function mockProcessEvent( - parts: { - data_buffer: { node_id: ProcessEvent['data_buffer']['node_id'] }; - } & DeepPartial -): ProcessEvent { - const { data_buffer: dataBuffer } = parts; +export function mockProcessEvent(parts: { + endgame: { + unique_pid: LegacyEndpointEvent['endgame']['unique_pid']; + unique_ppid?: LegacyEndpointEvent['endgame']['unique_ppid']; + process_name?: LegacyEndpointEvent['endgame']['process_name']; + event_subtype_full?: LegacyEndpointEvent['endgame']['event_subtype_full']; + event_type_full?: LegacyEndpointEvent['endgame']['event_type_full']; + } & DeepPartial; +}): LegacyEndpointEvent { + const { endgame: dataBuffer } = parts; return { - event_timestamp: 1, - event_type: 1, - machine_id: '', - ...parts, - data_buffer: { - timestamp_utc: '2019-09-24 01:47:47Z', + endgame: { + ...dataBuffer, + event_timestamp: 1, + event_type: 1, + unique_ppid: 0, + unique_pid: 1, + machine_id: '', event_subtype_full: 'creation_event', event_type_full: 'process_event', process_name: '', process_path: '', - ...dataBuffer, + timestamp_utc: '', + serial_event_id: 1, + }, + '@timestamp': 1582233383000, + agent: { + type: '', + id: '', + version: '', }, + ...parts, }; } diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/store/actions.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/store/actions.ts index 25f196c76a2904..ecba0ec404d44d 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/store/actions.ts +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/store/actions.ts @@ -3,9 +3,9 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ -import { ProcessEvent } from '../types'; import { CameraAction } from './camera'; import { DataAction } from './data'; +import { LegacyEndpointEvent } from '../../../../common/types'; /** * When the user wants to bring a process node front-and-center on the map. @@ -16,7 +16,7 @@ interface UserBroughtProcessIntoView { /** * Used to identify the process node that should be brought into view. */ - readonly process: ProcessEvent; + readonly process: LegacyEndpointEvent; /** * The time (since epoch in milliseconds) when the action was dispatched. */ @@ -24,4 +24,29 @@ interface UserBroughtProcessIntoView { }; } -export type ResolverAction = CameraAction | DataAction | UserBroughtProcessIntoView; +/** + * Used when the alert list selects an alert and the flyout shows resolver. + */ +interface UserChangedSelectedEvent { + readonly type: 'userChangedSelectedEvent'; + readonly payload: { + /** + * Optional because they could have unselected the event. + */ + selectedEvent?: LegacyEndpointEvent; + }; +} + +/** + * Triggered by middleware when the data for resolver needs to be loaded. Used to set state in redux to 'loading'. + */ +interface AppRequestedResolverData { + readonly type: 'appRequestedResolverData'; +} + +export type ResolverAction = + | CameraAction + | DataAction + | UserBroughtProcessIntoView + | UserChangedSelectedEvent + | AppRequestedResolverData; diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/__snapshots__/graphing.test.ts.snap b/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/__snapshots__/graphing.test.ts.snap index 1dc17054b9f47c..b88652097eb5c5 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/__snapshots__/graphing.test.ts.snap +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/__snapshots__/graphing.test.ts.snap @@ -12,17 +12,18 @@ Object { "edgeLineSegments": Array [], "processNodePositions": Map { Object { - "data_buffer": Object { + "@timestamp": 1582233383000, + "agent": Object { + "id": "", + "type": "", + "version": "", + }, + "endgame": Object { "event_subtype_full": "creation_event", "event_type_full": "process_event", - "node_id": 0, "process_name": "", - "process_path": "", - "timestamp_utc": "2019-09-24 01:47:47Z", + "unique_pid": 0, }, - "event_timestamp": 1, - "event_type": 1, - "machine_id": "", } => Array [ 0, -0.8164965809277259, @@ -167,136 +168,137 @@ Object { ], "processNodePositions": Map { Object { - "data_buffer": Object { + "@timestamp": 1582233383000, + "agent": Object { + "id": "", + "type": "", + "version": "", + }, + "endgame": Object { "event_subtype_full": "creation_event", "event_type_full": "process_event", - "node_id": 0, "process_name": "", - "process_path": "", - "timestamp_utc": "2019-09-24 01:47:47Z", + "unique_pid": 0, }, - "event_timestamp": 1, - "event_type": 1, - "machine_id": "", } => Array [ 0, -0.8164965809277259, ], Object { - "data_buffer": Object { + "@timestamp": 1582233383000, + "agent": Object { + "id": "", + "type": "", + "version": "", + }, + "endgame": Object { "event_subtype_full": "already_running", "event_type_full": "process_event", - "node_id": 1, - "process_name": "", - "process_path": "", - "source_id": 0, - "timestamp_utc": "2019-09-24 01:47:47Z", + "unique_pid": 1, + "unique_ppid": 0, }, - "event_timestamp": 1, - "event_type": 1, - "machine_id": "", } => Array [ 0, -82.46615467370032, ], Object { - "data_buffer": Object { + "@timestamp": 1582233383000, + "agent": Object { + "id": "", + "type": "", + "version": "", + }, + "endgame": Object { "event_subtype_full": "creation_event", "event_type_full": "process_event", - "node_id": 2, - "process_name": "", - "process_path": "", - "source_id": 0, - "timestamp_utc": "2019-09-24 01:47:47Z", + "unique_pid": 2, + "unique_ppid": 0, }, - "event_timestamp": 1, - "event_type": 1, - "machine_id": "", } => Array [ 141.4213562373095, -0.8164965809277259, ], Object { - "data_buffer": Object { + "@timestamp": 1582233383000, + "agent": Object { + "id": "", + "type": "", + "version": "", + }, + "endgame": Object { "event_subtype_full": "creation_event", "event_type_full": "process_event", - "node_id": 3, - "process_name": "", - "process_path": "", - "source_id": 1, - "timestamp_utc": "2019-09-24 01:47:47Z", + "unique_pid": 3, + "unique_ppid": 1, }, - "event_timestamp": 1, - "event_type": 1, - "machine_id": "", } => Array [ 35.35533905932738, -143.70339824327976, ], Object { - "data_buffer": Object { + "@timestamp": 1582233383000, + "agent": Object { + "id": "", + "type": "", + "version": "", + }, + "endgame": Object { "event_subtype_full": "creation_event", "event_type_full": "process_event", - "node_id": 4, - "process_name": "", - "process_path": "", - "source_id": 1, - "timestamp_utc": "2019-09-24 01:47:47Z", + "unique_pid": 4, + "unique_ppid": 1, }, - "event_timestamp": 1, - "event_type": 1, - "machine_id": "", } => Array [ 106.06601717798213, -102.87856919689347, ], Object { - "data_buffer": Object { + "@timestamp": 1582233383000, + "agent": Object { + "id": "", + "type": "", + "version": "", + }, + "endgame": Object { "event_subtype_full": "creation_event", "event_type_full": "process_event", - "node_id": 5, - "process_name": "", - "process_path": "", - "source_id": 2, - "timestamp_utc": "2019-09-24 01:47:47Z", + "unique_pid": 5, + "unique_ppid": 2, }, - "event_timestamp": 1, - "event_type": 1, - "machine_id": "", } => Array [ 176.7766952966369, -62.053740150507174, ], Object { - "data_buffer": Object { + "@timestamp": 1582233383000, + "agent": Object { + "id": "", + "type": "", + "version": "", + }, + "endgame": Object { "event_subtype_full": "creation_event", "event_type_full": "process_event", - "node_id": 6, - "process_name": "", - "process_path": "", - "source_id": 2, - "timestamp_utc": "2019-09-24 01:47:47Z", + "unique_pid": 6, + "unique_ppid": 2, }, - "event_timestamp": 1, - "event_type": 1, - "machine_id": "", } => Array [ 247.48737341529164, -21.228911104120883, ], Object { - "data_buffer": Object { + "@timestamp": 1582233383000, + "agent": Object { + "id": "", + "type": "", + "version": "", + }, + "endgame": Object { "event_subtype_full": "creation_event", "event_type_full": "process_event", - "node_id": 7, - "process_name": "", - "process_path": "", - "source_id": 6, - "timestamp_utc": "2019-09-24 01:47:47Z", + "unique_pid": 7, + "unique_ppid": 6, }, - "event_timestamp": 1, - "event_type": 1, - "machine_id": "", } => Array [ 318.1980515339464, -62.05374015050717, @@ -321,34 +323,35 @@ Object { ], "processNodePositions": Map { Object { - "data_buffer": Object { + "@timestamp": 1582233383000, + "agent": Object { + "id": "", + "type": "", + "version": "", + }, + "endgame": Object { "event_subtype_full": "creation_event", "event_type_full": "process_event", - "node_id": 0, "process_name": "", - "process_path": "", - "timestamp_utc": "2019-09-24 01:47:47Z", + "unique_pid": 0, }, - "event_timestamp": 1, - "event_type": 1, - "machine_id": "", } => Array [ 0, -0.8164965809277259, ], Object { - "data_buffer": Object { + "@timestamp": 1582233383000, + "agent": Object { + "id": "", + "type": "", + "version": "", + }, + "endgame": Object { "event_subtype_full": "already_running", "event_type_full": "process_event", - "node_id": 1, - "process_name": "", - "process_path": "", - "source_id": 0, - "timestamp_utc": "2019-09-24 01:47:47Z", + "unique_pid": 1, + "unique_ppid": 0, }, - "event_timestamp": 1, - "event_type": 1, - "machine_id": "", } => Array [ 70.71067811865476, -41.641325627314025, diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/action.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/action.ts index 900b9bda571dae..f34d7c08ce08cc 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/action.ts +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/action.ts @@ -4,14 +4,14 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ProcessEvent } from '../../types'; +import { LegacyEndpointEvent } from '../../../../../common/types'; interface ServerReturnedResolverData { readonly type: 'serverReturnedResolverData'; readonly payload: { readonly data: { readonly result: { - readonly search_results: readonly ProcessEvent[]; + readonly search_results: readonly LegacyEndpointEvent[]; }; }; }; diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/graphing.test.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/graphing.test.ts index fac70433f14b29..f01136fe20ebf9 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/graphing.test.ts +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/graphing.test.ts @@ -7,20 +7,21 @@ import { Store, createStore } from 'redux'; import { DataAction } from './action'; import { dataReducer } from './reducer'; -import { DataState, ProcessEvent } from '../../types'; +import { DataState } from '../../types'; +import { LegacyEndpointEvent } from '../../../../../common/types'; import { graphableProcesses, processNodePositionsAndEdgeLineSegments } from './selectors'; import { mockProcessEvent } from '../../models/process_event_test_helpers'; describe('resolver graph layout', () => { - let processA: ProcessEvent; - let processB: ProcessEvent; - let processC: ProcessEvent; - let processD: ProcessEvent; - let processE: ProcessEvent; - let processF: ProcessEvent; - let processG: ProcessEvent; - let processH: ProcessEvent; - let processI: ProcessEvent; + let processA: LegacyEndpointEvent; + let processB: LegacyEndpointEvent; + let processC: LegacyEndpointEvent; + let processD: LegacyEndpointEvent; + let processE: LegacyEndpointEvent; + let processF: LegacyEndpointEvent; + let processG: LegacyEndpointEvent; + let processH: LegacyEndpointEvent; + let processI: LegacyEndpointEvent; let store: Store; beforeEach(() => { @@ -37,75 +38,75 @@ describe('resolver graph layout', () => { * */ processA = mockProcessEvent({ - data_buffer: { + endgame: { process_name: '', event_type_full: 'process_event', event_subtype_full: 'creation_event', - node_id: 0, + unique_pid: 0, }, }); processB = mockProcessEvent({ - data_buffer: { + endgame: { event_type_full: 'process_event', event_subtype_full: 'already_running', - node_id: 1, - source_id: 0, + unique_pid: 1, + unique_ppid: 0, }, }); processC = mockProcessEvent({ - data_buffer: { + endgame: { event_type_full: 'process_event', event_subtype_full: 'creation_event', - node_id: 2, - source_id: 0, + unique_pid: 2, + unique_ppid: 0, }, }); processD = mockProcessEvent({ - data_buffer: { + endgame: { event_type_full: 'process_event', event_subtype_full: 'creation_event', - node_id: 3, - source_id: 1, + unique_pid: 3, + unique_ppid: 1, }, }); processE = mockProcessEvent({ - data_buffer: { + endgame: { event_type_full: 'process_event', event_subtype_full: 'creation_event', - node_id: 4, - source_id: 1, + unique_pid: 4, + unique_ppid: 1, }, }); processF = mockProcessEvent({ - data_buffer: { + endgame: { event_type_full: 'process_event', event_subtype_full: 'creation_event', - node_id: 5, - source_id: 2, + unique_pid: 5, + unique_ppid: 2, }, }); processG = mockProcessEvent({ - data_buffer: { + endgame: { event_type_full: 'process_event', event_subtype_full: 'creation_event', - node_id: 6, - source_id: 2, + unique_pid: 6, + unique_ppid: 2, }, }); processH = mockProcessEvent({ - data_buffer: { + endgame: { event_type_full: 'process_event', event_subtype_full: 'creation_event', - node_id: 7, - source_id: 6, + unique_pid: 7, + unique_ppid: 6, }, }); processI = mockProcessEvent({ - data_buffer: { + endgame: { event_type_full: 'process_event', event_subtype_full: 'termination_event', - node_id: 8, - source_id: 0, + unique_pid: 8, + unique_ppid: 0, }, }); store = createStore(dataReducer, undefined); diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/reducer.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/reducer.ts index 848d814808bac4..a3184389a794e8 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/reducer.ts +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/reducer.ts @@ -6,11 +6,11 @@ import { Reducer } from 'redux'; import { DataState, ResolverAction } from '../../types'; -import { sampleData } from './sample'; function initialState(): DataState { return { - results: sampleData.data.result.search_results, + results: [], + isLoading: false, }; } @@ -24,6 +24,12 @@ export const dataReducer: Reducer = (state = initialS return { ...state, results: search_results, + isLoading: false, + }; + } else if (action.type === 'appRequestedResolverData') { + return { + ...state, + isLoading: true, }; } else { return state; diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/selectors.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/selectors.ts index 75b477dd7c7fcd..304abbb06880b2 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/selectors.ts +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/store/data/selectors.ts @@ -7,7 +7,6 @@ import { createSelector } from 'reselect'; import { DataState, - ProcessEvent, IndexedProcessTree, ProcessWidths, ProcessPositions, @@ -15,6 +14,7 @@ import { ProcessWithWidthMetadata, Matrix3, } from '../../types'; +import { LegacyEndpointEvent } from '../../../../../common/types'; import { Vector2 } from '../../types'; import { add as vector2Add, applyMatrix3 } from '../../lib/vector2'; import { isGraphableProcess } from '../../models/process_event'; @@ -29,6 +29,10 @@ import { const unit = 100; const distanceBetweenNodesInUnits = 1; +export function isLoading(state: DataState) { + return state.isLoading; +} + /** * An isometric projection is a method for representing three dimensional objects in 2 dimensions. * More information about isometric projections can be found here https://en.wikipedia.org/wiki/Isometric_projection. @@ -108,7 +112,7 @@ export const graphableProcesses = createSelector( * */ function widthsOfProcessSubtrees(indexedProcessTree: IndexedProcessTree): ProcessWidths { - const widths = new Map(); + const widths = new Map(); if (size(indexedProcessTree) === 0) { return widths; @@ -309,13 +313,13 @@ function processPositions( indexedProcessTree: IndexedProcessTree, widths: ProcessWidths ): ProcessPositions { - const positions = new Map(); + const positions = new Map(); /** * This algorithm iterates the tree in level order. It keeps counters that are reset for each parent. * By keeping track of the last parent node, we can know when we are dealing with a new set of siblings and * reset the counters. */ - let lastProcessedParentNode: ProcessEvent | undefined; + let lastProcessedParentNode: LegacyEndpointEvent | undefined; /** * Nodes are positioned relative to their siblings. We walk this in level order, so we handle * children left -> right. @@ -420,7 +424,7 @@ export const processNodePositionsAndEdgeLineSegments = createSelector( * Transform the positions of nodes and edges so they seem like they are on an isometric grid. */ const transformedEdgeLineSegments: EdgeLineSegment[] = []; - const transformedPositions = new Map(); + const transformedPositions = new Map(); for (const [processEvent, position] of positions) { transformedPositions.set(processEvent, applyMatrix3(position, isometricTransformMatrix)); diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/store/index.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/store/index.ts index b17572bbc4ab46..2a20c73347348f 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/store/index.ts +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/store/index.ts @@ -6,17 +6,21 @@ import { createStore, applyMiddleware, Store } from 'redux'; import { composeWithDevTools } from 'redux-devtools-extension/developmentOnly'; +import { KibanaReactContextValue } from '../../../../../../../src/plugins/kibana_react/public'; import { ResolverAction, ResolverState } from '../types'; +import { EndpointPluginServices } from '../../../plugin'; import { resolverReducer } from './reducer'; +import { resolverMiddlewareFactory } from './middleware'; -export const storeFactory = (): { store: Store } => { +export const storeFactory = ( + context?: KibanaReactContextValue +): { store: Store } => { const actionsBlacklist: Array = ['userMovedPointer']; const composeEnhancers = composeWithDevTools({ name: 'Resolver', actionsBlacklist, }); - - const middlewareEnhancer = applyMiddleware(); + const middlewareEnhancer = applyMiddleware(resolverMiddlewareFactory(context)); const store = createStore(resolverReducer, composeEnhancers(middlewareEnhancer)); return { diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/store/methods.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/store/methods.ts index 8808160c9c631a..9f06643626f500 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/store/methods.ts +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/store/methods.ts @@ -6,7 +6,8 @@ import { animatePanning } from './camera/methods'; import { processNodePositionsAndEdgeLineSegments } from './selectors'; -import { ResolverState, ProcessEvent } from '../types'; +import { ResolverState } from '../types'; +import { LegacyEndpointEvent } from '../../../../common/types'; const animationDuration = 1000; @@ -16,7 +17,7 @@ const animationDuration = 1000; export function animateProcessIntoView( state: ResolverState, startTime: number, - process: ProcessEvent + process: LegacyEndpointEvent ): ResolverState { const { processNodePositions } = processNodePositionsAndEdgeLineSegments(state); const position = processNodePositions.get(process); diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/store/middleware.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/store/middleware.ts new file mode 100644 index 00000000000000..900aece60618d3 --- /dev/null +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/store/middleware.ts @@ -0,0 +1,45 @@ +/* + * 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 { Dispatch, MiddlewareAPI } from 'redux'; +import { KibanaReactContextValue } from '../../../../../../../src/plugins/kibana_react/public'; +import { EndpointPluginServices } from '../../../plugin'; +import { ResolverState, ResolverAction } from '../types'; + +type MiddlewareFactory = ( + context?: KibanaReactContextValue +) => ( + api: MiddlewareAPI, S> +) => (next: Dispatch) => (action: ResolverAction) => unknown; + +export const resolverMiddlewareFactory: MiddlewareFactory = context => { + return api => next => async (action: ResolverAction) => { + next(action); + if (action.type === 'userChangedSelectedEvent') { + if (context?.services.http) { + api.dispatch({ type: 'appRequestedResolverData' }); + const uniquePid = action.payload.selectedEvent?.endgame?.unique_pid; + const legacyEndpointID = action.payload.selectedEvent?.agent?.id; + const [{ lifecycle }, { children }, { events: relatedEvents }] = await Promise.all([ + context.services.http.get(`/api/endpoint/resolver/${uniquePid}`, { + query: { legacyEndpointID }, + }), + context.services.http.get(`/api/endpoint/resolver/${uniquePid}/children`, { + query: { legacyEndpointID }, + }), + context.services.http.get(`/api/endpoint/resolver/${uniquePid}/related`, { + query: { legacyEndpointID }, + }), + ]); + const response = [...lifecycle, ...children, ...relatedEvents]; + api.dispatch({ + type: 'serverReturnedResolverData', + payload: { data: { result: { search_results: response } } }, + }); + } + } + }; +}; diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/store/selectors.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/store/selectors.ts index 25d08a8c347ed5..708eb684ebd3e6 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/store/selectors.ts +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/store/selectors.ts @@ -68,6 +68,11 @@ function dataStateSelector(state: ResolverState) { return state.data; } +/** + * Whether or not the resolver is pending fetching data + */ +export const isLoading = composeSelectors(dataStateSelector, dataSelectors.isLoading); + /** * Calls the `secondSelector` with the result of the `selector`. Use this when re-exporting a * concern-specific selector. `selector` should return the concern-specific state. diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/types.ts b/x-pack/plugins/endpoint/public/embeddables/resolver/types.ts index 6c6936d377deac..4c2a1ea5ac21f2 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/types.ts +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/types.ts @@ -8,6 +8,7 @@ import { Store } from 'redux'; import { ResolverAction } from './store/actions'; export { ResolverAction } from './store/actions'; +import { LegacyEndpointEvent } from '../../../common/types'; /** * Redux state for the Resolver feature. Properties on this interface are populated via multiple reducers using redux's `combineReducers`. @@ -114,7 +115,8 @@ export type CameraState = { * State for `data` reducer which handles receiving Resolver data from the backend. */ export interface DataState { - readonly results: readonly ProcessEvent[]; + readonly results: readonly LegacyEndpointEvent[]; + isLoading: boolean; } export type Vector2 = readonly [number, number]; @@ -182,21 +184,21 @@ export interface IndexedProcessTree { /** * Map of ID to a process's children */ - idToChildren: Map; + idToChildren: Map; /** * Map of ID to process */ - idToProcess: Map; + idToProcess: Map; } /** * A map of ProcessEvents (representing process nodes) to the 'width' of their subtrees as calculated by `widthsOfProcessSubtrees` */ -export type ProcessWidths = Map; +export type ProcessWidths = Map; /** * Map of ProcessEvents (representing process nodes) to their positions. Calculated by `processPositions` */ -export type ProcessPositions = Map; +export type ProcessPositions = Map; /** * An array of vectors2 forming an polyline. Used to connect process nodes in the graph. */ @@ -206,11 +208,11 @@ export type EdgeLineSegment = Vector2[]; * Used to provide precalculated info from `widthsOfProcessSubtrees`. These 'width' values are used in the layout of the graph. */ export type ProcessWithWidthMetadata = { - process: ProcessEvent; + process: LegacyEndpointEvent; width: number; } & ( | { - parent: ProcessEvent; + parent: LegacyEndpointEvent; parentWidth: number; isOnlyChild: boolean; firstChildWidth: number; diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/view/index.tsx b/x-pack/plugins/endpoint/public/embeddables/resolver/view/index.tsx index d71a4d87b7eab6..52a0872f269f5a 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/view/index.tsx +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/view/index.tsx @@ -4,15 +4,18 @@ * you may not use this file except in compliance with the Elastic License. */ -import React from 'react'; -import { useSelector } from 'react-redux'; +import React, { useLayoutEffect } from 'react'; +import { useSelector, useDispatch } from 'react-redux'; import styled from 'styled-components'; +import { EuiLoadingSpinner } from '@elastic/eui'; import * as selectors from '../store/selectors'; import { EdgeLine } from './edge_line'; import { Panel } from './panel'; import { GraphControls } from './graph_controls'; import { ProcessEventDot } from './process_event_dot'; import { useCamera } from './use_camera'; +import { ResolverAction } from '../types'; +import { LegacyEndpointEvent } from '../../../../common/types'; const StyledPanel = styled(Panel)` position: absolute; @@ -31,35 +34,57 @@ const StyledGraphControls = styled(GraphControls)` `; export const Resolver = styled( - React.memo(function Resolver({ className }: { className?: string }) { + React.memo(function Resolver({ + className, + selectedEvent, + }: { + className?: string; + selectedEvent?: LegacyEndpointEvent; + }) { const { processNodePositions, edgeLineSegments } = useSelector( selectors.processNodePositionsAndEdgeLineSegments ); + const dispatch: (action: ResolverAction) => unknown = useDispatch(); const { projectionMatrix, ref, onMouseDown } = useCamera(); + const isLoading = useSelector(selectors.isLoading); + useLayoutEffect(() => { + dispatch({ + type: 'userChangedSelectedEvent', + payload: { selectedEvent }, + }); + }, [dispatch, selectedEvent]); return (
-
- {Array.from(processNodePositions).map(([processEvent, position], index) => ( - - ))} - {edgeLineSegments.map(([startPosition, endPosition], index) => ( - - ))} -
- - + {isLoading ? ( +
+ +
+ ) : ( + <> +
+ {Array.from(processNodePositions).map(([processEvent, position], index) => ( + + ))} + {edgeLineSegments.map(([startPosition, endPosition], index) => ( + + ))} +
+ + + + )}
); }) @@ -72,6 +97,12 @@ export const Resolver = styled( display: flex; flex-grow: 1; } + .loading-container { + display: flex; + align-items: center; + justify-content: center; + flex-grow: 1; + } /** * The placeholder components use absolute positioning. */ diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/view/panel.tsx b/x-pack/plugins/endpoint/public/embeddables/resolver/view/panel.tsx index c75b73b4bceafd..84c299698bb32c 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/view/panel.tsx +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/view/panel.tsx @@ -11,7 +11,7 @@ import euiVars from '@elastic/eui/dist/eui_theme_light.json'; import { useSelector } from 'react-redux'; import { i18n } from '@kbn/i18n'; import { SideEffectContext } from './side_effect_context'; -import { ProcessEvent } from '../types'; +import { LegacyEndpointEvent } from '../../../../common/types'; import { useResolverDispatch } from './use_resolver_dispatch'; import * as selectors from '../store/selectors'; @@ -38,7 +38,7 @@ export const Panel = memo(function Event({ className }: { className?: string }) interface ProcessTableView { name: string; timestamp?: Date; - event: ProcessEvent; + event: LegacyEndpointEvent; } const { processNodePositions } = useSelector(selectors.processNodePositionsAndEdgeLineSegments); @@ -47,11 +47,16 @@ export const Panel = memo(function Event({ className }: { className?: string }) const processTableView: ProcessTableView[] = useMemo( () => [...processNodePositions.keys()].map(processEvent => { - const { data_buffer } = processEvent; - const date = new Date(data_buffer.timestamp_utc); + let dateTime; + if (processEvent.endgame.timestamp_utc) { + const date = new Date(processEvent.endgame.timestamp_utc); + if (isFinite(date.getTime())) { + dateTime = date; + } + } return { - name: data_buffer.process_name, - timestamp: isFinite(date.getTime()) ? date : undefined, + name: processEvent.endgame.process_name ? processEvent.endgame.process_name : '', + timestamp: dateTime, event: processEvent, }; }), diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/view/process_event_dot.tsx b/x-pack/plugins/endpoint/public/embeddables/resolver/view/process_event_dot.tsx index 384fbf90ed9847..034780c7ba14c8 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/view/process_event_dot.tsx +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/view/process_event_dot.tsx @@ -7,7 +7,8 @@ import React from 'react'; import styled from 'styled-components'; import { applyMatrix3 } from '../lib/vector2'; -import { Vector2, ProcessEvent, Matrix3 } from '../types'; +import { Vector2, Matrix3 } from '../types'; +import { LegacyEndpointEvent } from '../../../../common/types'; /** * A placeholder view for a process node. @@ -31,7 +32,7 @@ export const ProcessEventDot = styled( /** * An event which contains details about the process node. */ - event: ProcessEvent; + event: LegacyEndpointEvent; /** * projectionMatrix which can be used to convert `position` to screen coordinates. */ @@ -48,7 +49,7 @@ export const ProcessEventDot = styled( }; return ( - name: {event.data_buffer.process_name} + name: {event.endgame.process_name}
x: {position[0]}
diff --git a/x-pack/plugins/endpoint/public/embeddables/resolver/view/use_camera.test.tsx b/x-pack/plugins/endpoint/public/embeddables/resolver/view/use_camera.test.tsx index f4abb51f062f2a..1948c6cae505bc 100644 --- a/x-pack/plugins/endpoint/public/embeddables/resolver/view/use_camera.test.tsx +++ b/x-pack/plugins/endpoint/public/embeddables/resolver/view/use_camera.test.tsx @@ -10,16 +10,12 @@ import { useCamera } from './use_camera'; import { Provider } from 'react-redux'; import * as selectors from '../store/selectors'; import { storeFactory } from '../store'; -import { - Matrix3, - ResolverAction, - ResolverStore, - ProcessEvent, - SideEffectSimulator, -} from '../types'; +import { Matrix3, ResolverAction, ResolverStore, SideEffectSimulator } from '../types'; +import { LegacyEndpointEvent } from '../../../../common/types'; import { SideEffectContext } from './side_effect_context'; import { applyMatrix3 } from '../lib/vector2'; import { sideEffectSimulator } from './side_effect_simulator'; +import { mockProcessEvent } from '../models/process_event_test_helpers'; describe('useCamera on an unpainted element', () => { let element: HTMLElement; @@ -28,6 +24,7 @@ describe('useCamera on an unpainted element', () => { let reactRenderResult: RenderResult; let store: ResolverStore; let simulator: SideEffectSimulator; + beforeEach(async () => { ({ store } = storeFactory()); @@ -136,17 +133,45 @@ describe('useCamera on an unpainted element', () => { expect(simulator.mock.requestAnimationFrame).not.toHaveBeenCalled(); }); describe('when the camera begins animation', () => { - let process: ProcessEvent; + let process: LegacyEndpointEvent; beforeEach(() => { - // At this time, processes are provided via mock data. In the future, this test will have to provide those mocks. - const processes: ProcessEvent[] = [ + const events: LegacyEndpointEvent[] = []; + const numberOfEvents: number = Math.floor(Math.random() * 10 + 1); + + for (let index = 0; index < numberOfEvents; index++) { + const uniquePpid = index === 0 ? undefined : index - 1; + events.push( + mockProcessEvent({ + endgame: { + unique_pid: index, + unique_ppid: uniquePpid, + event_type_full: 'process_event', + event_subtype_full: 'creation_event', + }, + }) + ); + } + const serverResponseAction: ResolverAction = { + type: 'serverReturnedResolverData', + payload: { + data: { + result: { + search_results: events, + }, + }, + }, + }; + act(() => { + store.dispatch(serverResponseAction); + }); + const processes: LegacyEndpointEvent[] = [ ...selectors .processNodePositionsAndEdgeLineSegments(store.getState()) .processNodePositions.keys(), ]; process = processes[processes.length - 1]; simulator.controls.time = 0; - const action: ResolverAction = { + const cameraAction: ResolverAction = { type: 'userBroughtProcessIntoView', payload: { time: simulator.controls.time, @@ -154,7 +179,7 @@ describe('useCamera on an unpainted element', () => { }, }; act(() => { - store.dispatch(action); + store.dispatch(cameraAction); }); }); diff --git a/x-pack/plugins/endpoint/public/plugin.ts b/x-pack/plugins/endpoint/public/plugin.ts index 355364253b2a52..0e10fe680e9f04 100644 --- a/x-pack/plugins/endpoint/public/plugin.ts +++ b/x-pack/plugins/endpoint/public/plugin.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { Plugin, CoreSetup, AppMountParameters } from 'kibana/public'; +import { Plugin, CoreSetup, AppMountParameters, CoreStart } from 'kibana/public'; import { IEmbeddableSetup } from 'src/plugins/embeddable/public'; import { i18n } from '@kbn/i18n'; import { ResolverEmbeddableFactory } from './embeddables/resolver'; @@ -17,6 +17,15 @@ export interface EndpointPluginSetupDependencies { export interface EndpointPluginStartDependencies {} // eslint-disable-line @typescript-eslint/no-empty-interface +/** + * Functionality that the endpoint plugin uses from core. + */ +export interface EndpointPluginServices extends Partial { + http: CoreStart['http']; + overlays: CoreStart['overlays'] | undefined; + notifications: CoreStart['notifications'] | undefined; +} + export class EndpointPlugin implements Plugin< diff --git a/x-pack/plugins/endpoint/server/routes/resolver/queries/children.test.ts b/x-pack/plugins/endpoint/server/routes/resolver/queries/children.test.ts index 2dd2e0c2d1d5f8..08a906e2884d68 100644 --- a/x-pack/plugins/endpoint/server/routes/resolver/queries/children.test.ts +++ b/x-pack/plugins/endpoint/server/routes/resolver/queries/children.test.ts @@ -8,7 +8,7 @@ import { EndpointAppConstants } from '../../../../common/types'; describe('children events query', () => { it('generates the correct legacy queries', () => { - const timestamp = new Date(); + const timestamp = new Date().getTime(); expect( new ChildrenQuery('awesome-id', { size: 1, timestamp, eventID: 'foo' }).build('5') ).toStrictEqual({ @@ -38,7 +38,7 @@ describe('children events query', () => { }, }, }, - search_after: [timestamp.getTime(), 'foo'], + search_after: [timestamp, 'foo'], size: 1, sort: [{ '@timestamp': 'asc' }, { 'endgame.serial_event_id': 'asc' }], }, @@ -47,7 +47,7 @@ describe('children events query', () => { }); it('generates the correct non-legacy queries', () => { - const timestamp = new Date(); + const timestamp = new Date().getTime(); expect( new ChildrenQuery(undefined, { size: 1, timestamp, eventID: 'bar' }).build('baz') @@ -84,7 +84,7 @@ describe('children events query', () => { }, }, }, - search_after: [timestamp.getTime(), 'bar'], + search_after: [timestamp, 'bar'], size: 1, sort: [{ '@timestamp': 'asc' }, { 'event.id': 'asc' }], }, diff --git a/x-pack/plugins/endpoint/server/routes/resolver/queries/related_events.test.ts b/x-pack/plugins/endpoint/server/routes/resolver/queries/related_events.test.ts index 8ef680a168310d..a91c87274b8dd5 100644 --- a/x-pack/plugins/endpoint/server/routes/resolver/queries/related_events.test.ts +++ b/x-pack/plugins/endpoint/server/routes/resolver/queries/related_events.test.ts @@ -8,7 +8,7 @@ import { EndpointAppConstants } from '../../../../common/types'; describe('related events query', () => { it('generates the correct legacy queries', () => { - const timestamp = new Date(); + const timestamp = new Date().getTime(); expect( new RelatedEventsQuery('awesome-id', { size: 1, timestamp, eventID: 'foo' }).build('5') ).toStrictEqual({ @@ -39,7 +39,7 @@ describe('related events query', () => { }, }, }, - search_after: [timestamp.getTime(), 'foo'], + search_after: [timestamp, 'foo'], size: 1, sort: [{ '@timestamp': 'asc' }, { 'endgame.serial_event_id': 'asc' }], }, @@ -48,7 +48,7 @@ describe('related events query', () => { }); it('generates the correct non-legacy queries', () => { - const timestamp = new Date(); + const timestamp = new Date().getTime(); expect( new RelatedEventsQuery(undefined, { size: 1, timestamp, eventID: 'bar' }).build('baz') @@ -86,7 +86,7 @@ describe('related events query', () => { }, }, }, - search_after: [timestamp.getTime(), 'bar'], + search_after: [timestamp, 'bar'], size: 1, sort: [{ '@timestamp': 'asc' }, { 'event.id': 'asc' }], }, diff --git a/x-pack/plugins/endpoint/server/routes/resolver/utils/pagination.ts b/x-pack/plugins/endpoint/server/routes/resolver/utils/pagination.ts index 33eb6984793087..5a64f3ff9ddb61 100644 --- a/x-pack/plugins/endpoint/server/routes/resolver/utils/pagination.ts +++ b/x-pack/plugins/endpoint/server/routes/resolver/utils/pagination.ts @@ -11,12 +11,12 @@ import { JsonObject } from '../../../../../../../src/plugins/kibana_utils/public export interface PaginationParams { size: number; - timestamp?: Date; + timestamp?: number; eventID?: string; } interface PaginationCursor { - timestamp: Date; + timestamp: number; eventID: string; } @@ -35,7 +35,7 @@ function urlDecodeCursor(value: string): PaginationCursor { const { timestamp, eventID } = JSON.parse(data); // take some extra care to only grab the things we want // convert the timestamp string to date object - return { timestamp: new Date(timestamp), eventID }; + return { timestamp, eventID }; } export function getPaginationParams(limit: number, after?: string): PaginationParams { @@ -62,7 +62,7 @@ export function paginate(pagination: PaginationParams, field: string, query: Jso query.aggs = { total: { value_count: { field } } }; query.size = size; if (timestamp && eventID) { - query.search_after = [timestamp.getTime(), eventID] as Array; + query.search_after = [timestamp, eventID] as Array; } return query; } From 74d0e9297fd2efdc7943d10f2aa1d10ad4c016e9 Mon Sep 17 00:00:00 2001 From: Charlie Pichette <56399229+charlie-pichette@users.noreply.github.com> Date: Mon, 2 Mar 2020 10:46:20 -0500 Subject: [PATCH 016/120] [Endpoint] [Tests] fixes #57946 flaky endpoint policy list test (#58348) * endpoint-161-refactor-management-list-test * fix location of es archive file * issue 57946 fix flaky endpoint policy list test Co-authored-by: Elastic Machine --- x-pack/test/functional/apps/endpoint/policy_list.ts | 5 +++-- x-pack/test/functional/page_objects/endpoint_page.ts | 9 +++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/x-pack/test/functional/apps/endpoint/policy_list.ts b/x-pack/test/functional/apps/endpoint/policy_list.ts index 658e4dcd13e1ed..382963bc2b0c72 100644 --- a/x-pack/test/functional/apps/endpoint/policy_list.ts +++ b/x-pack/test/functional/apps/endpoint/policy_list.ts @@ -11,10 +11,11 @@ export default function({ getPageObjects, getService }: FtrProviderContext) { const testSubjects = getService('testSubjects'); // FLAKY: https://github.com/elastic/kibana/issues/57946 - describe.skip('Endpoint Policy List', function() { + describe('Endpoint Policy List', function() { this.tags(['ciGroup7']); before(async () => { await pageObjects.common.navigateToUrlWithBrowserHistory('endpoint', '/policy'); + await pageObjects.endpoint.waitForTableToHaveData('policyTable'); }); it('loads the Policy List Page', async () => { @@ -26,7 +27,7 @@ export default function({ getPageObjects, getService }: FtrProviderContext) { }); it('shows policy count total', async () => { const policyTotal = await testSubjects.getVisibleText('policyTotalCount'); - expect(policyTotal).to.equal('0 Policies'); + expect(policyTotal).to.equal('100 Policies'); }); it('includes policy list table', async () => { await testSubjects.existOrFail('policyTable'); diff --git a/x-pack/test/functional/page_objects/endpoint_page.ts b/x-pack/test/functional/page_objects/endpoint_page.ts index 185b95b00527d5..6350f51f707f49 100644 --- a/x-pack/test/functional/page_objects/endpoint_page.ts +++ b/x-pack/test/functional/page_objects/endpoint_page.ts @@ -9,6 +9,7 @@ import { FtrProviderContext } from '../ftr_provider_context'; export function EndpointPageProvider({ getService }: FtrProviderContext) { const testSubjects = getService('testSubjects'); + const retry = getService('retry'); return { /** @@ -58,5 +59,13 @@ export function EndpointPageProvider({ getService }: FtrProviderContext) { ) ); }, + + async waitForTableToHaveData(dataTestSubj: string) { + await retry.waitForWithTimeout('table to have data', 2000, async () => { + const tableData = await this.getEndpointAppTableData(dataTestSubj); + if (tableData[1][0] === 'No items found') return false; + return true; + }); + }, }; } From 1eca34126061e7226c543f86f867d95f0f1d8ea1 Mon Sep 17 00:00:00 2001 From: Kaarina Tungseth Date: Mon, 2 Mar 2020 09:59:29 -0600 Subject: [PATCH 017/120] [DOCS] Rework of main get started page (#58260) * [DOCS] Rework of main gett started page * Redirect for add-sample-data * Link fix * Review comments Co-authored-by: Elastic Machine --- docs/redirects.asciidoc | 5 +++ docs/user/getting-started.asciidoc | 70 +++++++++++++++++------------- docs/user/index.asciidoc | 4 +- 3 files changed, 47 insertions(+), 32 deletions(-) diff --git a/docs/redirects.asciidoc b/docs/redirects.asciidoc index 3843cc27defd5d..8ad5330f3fda59 100644 --- a/docs/redirects.asciidoc +++ b/docs/redirects.asciidoc @@ -56,6 +56,11 @@ This page has moved. Please see <>. This page has moved. Please see <>. +[role="exclude",id="add-sample-data"] +== Add sample data + +This page has moved. Please see <>. + [role="exclude",id="tilemap"] == Coordinate map diff --git a/docs/user/getting-started.asciidoc b/docs/user/getting-started.asciidoc index c6fe5b5b92d696..d426ec111351cc 100644 --- a/docs/user/getting-started.asciidoc +++ b/docs/user/getting-started.asciidoc @@ -1,54 +1,65 @@ [[getting-started]] -= Getting Started += Get started [partintro] -- -You’re new to Kibana and want to give it a try. {kib} has sample data sets and -tutorials to help you get started. +Ready to try out {kib} and see what it can do? To quickest way to get started with {kib} is to set up on Cloud, then add a sample data set that helps you get a handle on the full range of {kib} features. [float] -=== Sample data +[[cloud-set-up]] +== Set up on Cloud -You can use the <> to take {kib} for a test ride without having -to go through the process of loading data yourself. With one click, -you can install a sample data set and start interacting with -{kib} visualizations in seconds. You can access the sample data -from the {kib} home page. +To access {kib} in a single click, run our hosted Elasticsearch Service on Elastic Cloud. -[float] +. Log into the link:https://cloud.elastic.co/[Elasticsearch Service Console]. +If you need an account, register for a link:https://www.elastic.co/cloud/elasticsearch-service/signup[free 14-day trial]. + +. Click *Create deployment*, then give your deployment a name. -=== Add data tutorials -{kib} has built-in *Add Data* tutorials to help you set up -data flows in the Elastic Stack. These tutorials are available -from the Kibana home page. In *Add Data to Kibana*, find the data type -you’re interested in, and click its button to view a list of available tutorials. +. To use the default options, click *Create deployment*. You can modify the other deployment options, but the default options are great to get started. + +Be sure to copy down the password for the `elastic` user and Cloud ID information. You'll need that later. [float] -=== Hands-on experience +[[get-data-in]] +== Get data into {kib} + +The easiest way to get data into {kib} is to add a sample data set. + +{kib} has several sample data sets that you can use before loading your own data: + +* *Sample eCommerce orders* includes visualizations for tracking product-related information, +such as cost, revenue, and price. + +* *Sample flight data* includes visualizations for monitoring flight routes. -The following tutorials walk you through searching, analyzing, -and visualizing data. +* *Sample web logs* includes visualizations for monitoring website traffic. -* <>. You'll -learn to filter and query data, edit visualizations, and interact with dashboards. +To use the sample data sets: -* <>. You'll manually load a data set and build -your own visualizations and dashboard. +. Go to the {kib} home page. + +. Click *Load a data set and a {kib} dashboard*. + +. Click *View data* and view the prepackaged dashboards, maps, and more. + +[role="screenshot"] +image::images/add-sample-data.png[] + +NOTE: The timestamps in the sample data sets are relative to when they are installed. +If you uninstall and reinstall a data set, the timestamps change to reflect the most recent installation. [float] -=== Before you begin +[[getting-started-next-steps]] +== Next steps -Make sure you've <> and established -a <>. +* To get a hands-on experience creating visualizations, follow the <> tutorial. -If you are running our hosted Elasticsearch Service on Elastic Cloud, you access Kibana with a single click. (You can {ess-trial}[sign up for a free trial] and start exploring data in minutes.) +* If you're ready to load an actual data set and build a dashboard, follow the <> tutorial. -- -include::{kib-repo-dir}/getting-started/add-sample-data.asciidoc[] - include::{kib-repo-dir}/getting-started/tutorial-sample-data.asciidoc[] include::{kib-repo-dir}/getting-started/tutorial-full-experience.asciidoc[] @@ -60,4 +71,3 @@ include::{kib-repo-dir}/getting-started/tutorial-discovering.asciidoc[] include::{kib-repo-dir}/getting-started/tutorial-visualizing.asciidoc[] include::{kib-repo-dir}/getting-started/tutorial-dashboard.asciidoc[] - diff --git a/docs/user/index.asciidoc b/docs/user/index.asciidoc index 3911d57e05c9a4..ff100d07633686 100644 --- a/docs/user/index.asciidoc +++ b/docs/user/index.asciidoc @@ -1,13 +1,13 @@ include::introduction.asciidoc[] +include::getting-started.asciidoc[] + include::setup.asciidoc[] include::monitoring/configuring-monitoring.asciidoc[] include::security/securing-kibana.asciidoc[] -include::getting-started.asciidoc[] - include::discover.asciidoc[] include::visualize.asciidoc[] From 323bb21df30f3a94a83fcb2e561c46c1b17e0e03 Mon Sep 17 00:00:00 2001 From: Alison Goryachev Date: Mon, 2 Mar 2020 11:27:15 -0500 Subject: [PATCH 018/120] [Remote clusters] Add indexManagement as required plugin (#58915) --- x-pack/plugins/remote_clusters/kibana.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/x-pack/plugins/remote_clusters/kibana.json b/x-pack/plugins/remote_clusters/kibana.json index 27ae6802966dd3..609d0f67f2c7b6 100644 --- a/x-pack/plugins/remote_clusters/kibana.json +++ b/x-pack/plugins/remote_clusters/kibana.json @@ -7,7 +7,8 @@ ], "requiredPlugins": [ "licensing", - "management" + "management", + "indexManagement" ], "optionalPlugins": [ "usageCollection" From e9abe735f226cde41ec71321f4e7bbc623a93d7d Mon Sep 17 00:00:00 2001 From: Andrew Goldstein Date: Mon, 2 Mar 2020 09:36:14 -0700 Subject: [PATCH 019/120] [SIEM] Default the Timeline events filter to show All events (#58953) ## [SIEM] Default the Timeline events filter to show All events The Timeline events filter introduced in `7.6` to support the [detection engine](https://www.elastic.co/guide/en/siem/guide/current/detection-engine-overview.html) defaulted to filtering by `Raw events`, and thus required manually selecting `All events` or `Signal events` from the dropdown to view signals. The new default is `All events`, per the screenshots below: ### Before ![event-filter-before](https://user-images.githubusercontent.com/4459398/75593223-ecc61500-5a41-11ea-8d7d-8db5eccb1eb4.png) ### After ![event-filter-after](https://user-images.githubusercontent.com/4459398/75593238-f5b6e680-5a41-11ea-9e12-2fc1232f58d1.png) --- .../components/open_timeline/helpers.test.ts | 8 ++-- .../timeline/search_or_filter/pick_events.tsx | 1 + .../components/timeline/timeline.test.tsx | 43 +++++++++++++++++++ .../siem/public/store/timeline/defaults.ts | 2 +- 4 files changed, 49 insertions(+), 5 deletions(-) diff --git a/x-pack/legacy/plugins/siem/public/components/open_timeline/helpers.test.ts b/x-pack/legacy/plugins/siem/public/components/open_timeline/helpers.test.ts index 120d644b3b33af..60ebd2578b7c02 100644 --- a/x-pack/legacy/plugins/siem/public/components/open_timeline/helpers.test.ts +++ b/x-pack/legacy/plugins/siem/public/components/open_timeline/helpers.test.ts @@ -236,7 +236,7 @@ describe('helpers', () => { description: '', deletedEventIds: [], eventIdToNoteIds: {}, - eventType: 'raw', + eventType: 'all', filters: [], highlightedDropAndProviderId: '', historyIds: [], @@ -330,7 +330,7 @@ describe('helpers', () => { description: '', deletedEventIds: [], eventIdToNoteIds: {}, - eventType: 'raw', + eventType: 'all', filters: [], highlightedDropAndProviderId: '', historyIds: [], @@ -417,7 +417,7 @@ describe('helpers', () => { description: '', deletedEventIds: [], eventIdToNoteIds: {}, - eventType: 'raw', + eventType: 'all', filters: [], highlightedDropAndProviderId: '', historyIds: [], @@ -539,7 +539,7 @@ describe('helpers', () => { description: '', deletedEventIds: [], eventIdToNoteIds: {}, - eventType: 'raw', + eventType: 'all', filters: [ { $state: { diff --git a/x-pack/legacy/plugins/siem/public/components/timeline/search_or_filter/pick_events.tsx b/x-pack/legacy/plugins/siem/public/components/timeline/search_or_filter/pick_events.tsx index 76f9e6fe3673a2..3117bae7452864 100644 --- a/x-pack/legacy/plugins/siem/public/components/timeline/search_or_filter/pick_events.tsx +++ b/x-pack/legacy/plugins/siem/public/components/timeline/search_or_filter/pick_events.tsx @@ -77,6 +77,7 @@ const PickEventTypeComponents: React.FC = ({ return ( { expect(wrapper.find('[data-test-subj="table-pagination"]').exists()).toEqual(false); }); + + test('it defaults to showing `All events`', () => { + const wrapper = mount( + + + + + + ); + + expect(wrapper.find('[data-test-subj="pick-event-type"] button').text()).toEqual( + 'All events' + ); + }); }); describe('event wire up', () => { diff --git a/x-pack/legacy/plugins/siem/public/store/timeline/defaults.ts b/x-pack/legacy/plugins/siem/public/store/timeline/defaults.ts index bbaf2a3fb6e307..7f04bb4c4dad08 100644 --- a/x-pack/legacy/plugins/siem/public/store/timeline/defaults.ts +++ b/x-pack/legacy/plugins/siem/public/store/timeline/defaults.ts @@ -14,7 +14,7 @@ export const timelineDefaults: SubsetTimelineModel & Pick Date: Mon, 2 Mar 2020 12:01:00 -0500 Subject: [PATCH 020/120] removing references to visTypes uiExports (#58337) --- src/legacy/core_plugins/kibana/public/kibana.js | 2 -- .../plugins/kbn_tp_run_pipeline/public/legacy.ts | 2 -- .../plugins/kbn_tp_custom_visualizations/index.js | 2 +- x-pack/legacy/plugins/canvas/public/legacy_start.ts | 3 --- .../plugins/dashboard_mode/public/dashboard_viewer.js | 4 +--- x-pack/legacy/plugins/lens/index.ts | 1 - x-pack/legacy/plugins/lens/public/legacy.ts | 7 +++++-- x-pack/legacy/plugins/lens/public/legacy_imports.ts | 2 ++ x-pack/legacy/plugins/lens/public/plugin.tsx | 7 ++++++- .../{register_vis_type_alias.ts => vis_type_alias.ts} | 4 ++-- x-pack/legacy/plugins/maps/index.js | 2 +- 11 files changed, 18 insertions(+), 18 deletions(-) rename x-pack/legacy/plugins/lens/public/{register_vis_type_alias.ts => vis_type_alias.ts} (89%) diff --git a/src/legacy/core_plugins/kibana/public/kibana.js b/src/legacy/core_plugins/kibana/public/kibana.js index a83d1176a71977..a9f32949628e98 100644 --- a/src/legacy/core_plugins/kibana/public/kibana.js +++ b/src/legacy/core_plugins/kibana/public/kibana.js @@ -26,8 +26,6 @@ import { npSetup } from 'ui/new_platform'; // import the uiExports that we want to "use" import 'uiExports/home'; -import 'uiExports/visTypes'; - import 'uiExports/visualize'; import 'uiExports/savedObjectTypes'; import 'uiExports/fieldFormatEditors'; diff --git a/test/interpreter_functional/plugins/kbn_tp_run_pipeline/public/legacy.ts b/test/interpreter_functional/plugins/kbn_tp_run_pipeline/public/legacy.ts index 39ce2b3077c961..a7cd313038d69c 100644 --- a/test/interpreter_functional/plugins/kbn_tp_run_pipeline/public/legacy.ts +++ b/test/interpreter_functional/plugins/kbn_tp_run_pipeline/public/legacy.ts @@ -28,8 +28,6 @@ import 'ui/autoload/all'; // Used to run esaggs queries import 'uiExports/fieldFormats'; import 'uiExports/search'; -import 'uiExports/visRequestHandlers'; -import 'uiExports/visResponseHandlers'; // Used for kibana_context function import 'uiExports/savedObjectTypes'; diff --git a/test/plugin_functional/plugins/kbn_tp_custom_visualizations/index.js b/test/plugin_functional/plugins/kbn_tp_custom_visualizations/index.js index e15da9daa3cd79..b2497a824ba2b7 100644 --- a/test/plugin_functional/plugins/kbn_tp_custom_visualizations/index.js +++ b/test/plugin_functional/plugins/kbn_tp_custom_visualizations/index.js @@ -20,7 +20,7 @@ export default function(kibana) { return new kibana.Plugin({ uiExports: { - visTypes: ['plugins/kbn_tp_custom_visualizations/self_changing_vis/self_changing_vis'], + hacks: ['plugins/kbn_tp_custom_visualizations/self_changing_vis/self_changing_vis'], }, }); } diff --git a/x-pack/legacy/plugins/canvas/public/legacy_start.ts b/x-pack/legacy/plugins/canvas/public/legacy_start.ts index 21bf5aaa6d8184..d7d1a940d3b43a 100644 --- a/x-pack/legacy/plugins/canvas/public/legacy_start.ts +++ b/x-pack/legacy/plugins/canvas/public/legacy_start.ts @@ -8,9 +8,6 @@ // Import the uiExports that the application uses // These will go away as these plugins are converted to NP import 'ui/autoload/all'; -import 'uiExports/visTypes'; -import 'uiExports/visResponseHandlers'; -import 'uiExports/visRequestHandlers'; import 'uiExports/savedObjectTypes'; import 'uiExports/spyModes'; import 'uiExports/embeddableFactories'; diff --git a/x-pack/legacy/plugins/dashboard_mode/public/dashboard_viewer.js b/x-pack/legacy/plugins/dashboard_mode/public/dashboard_viewer.js index e76a204a6f27df..62cd253ff24d94 100644 --- a/x-pack/legacy/plugins/dashboard_mode/public/dashboard_viewer.js +++ b/x-pack/legacy/plugins/dashboard_mode/public/dashboard_viewer.js @@ -15,9 +15,7 @@ import { uiModules } from 'ui/modules'; // import the uiExports that we want to "use" import 'uiExports/contextMenuActions'; -import 'uiExports/visTypes'; -import 'uiExports/visResponseHandlers'; -import 'uiExports/visRequestHandlers'; + import 'uiExports/inspectorViews'; import 'uiExports/interpreter'; import 'uiExports/savedObjectTypes'; diff --git a/x-pack/legacy/plugins/lens/index.ts b/x-pack/legacy/plugins/lens/index.ts index bb0bf9b67ee2c4..5eda6c4b4ff7ae 100644 --- a/x-pack/legacy/plugins/lens/index.ts +++ b/x-pack/legacy/plugins/lens/index.ts @@ -33,7 +33,6 @@ export const lens: LegacyPluginInitializer = kibana => { embeddableFactories: [`plugins/${PLUGIN_ID}/legacy`], styleSheetPaths: resolve(__dirname, 'public/index.scss'), mappings, - visTypes: ['plugins/lens/register_vis_type_alias'], savedObjectsManagement: { lens: { defaultSearchField: 'title', diff --git a/x-pack/legacy/plugins/lens/public/legacy.ts b/x-pack/legacy/plugins/lens/public/legacy.ts index 8023bad34de667..1cfd3e198547d5 100644 --- a/x-pack/legacy/plugins/lens/public/legacy.ts +++ b/x-pack/legacy/plugins/lens/public/legacy.ts @@ -5,12 +5,15 @@ */ import { npSetup, npStart } from 'ui/new_platform'; -import { getFormat } from './legacy_imports'; +import { getFormat, visualizations } from './legacy_imports'; export * from './types'; import { plugin } from './index'; const pluginInstance = plugin(); -pluginInstance.setup(npSetup.core, { ...npSetup.plugins, __LEGACY: { formatFactory: getFormat } }); +pluginInstance.setup(npSetup.core, { + ...npSetup.plugins, + __LEGACY: { formatFactory: getFormat, visualizations }, +}); pluginInstance.start(npStart.core, npStart.plugins); diff --git a/x-pack/legacy/plugins/lens/public/legacy_imports.ts b/x-pack/legacy/plugins/lens/public/legacy_imports.ts index 9dcc22ddb1bb70..88f189fe3db5a7 100644 --- a/x-pack/legacy/plugins/lens/public/legacy_imports.ts +++ b/x-pack/legacy/plugins/lens/public/legacy_imports.ts @@ -5,3 +5,5 @@ */ export { getFormat, FormatFactory } from 'ui/visualize/loader/pipeline_helpers/utilities'; +export { setup as visualizations } from '../../../../../src/legacy/core_plugins/visualizations/public/np_ready/public/legacy'; +export { VisualizationsSetup } from '../../../../../src/legacy/core_plugins/visualizations/public'; diff --git a/x-pack/legacy/plugins/lens/public/plugin.tsx b/x-pack/legacy/plugins/lens/public/plugin.tsx index 634d2275598359..7f96268fc2e8c6 100644 --- a/x-pack/legacy/plugins/lens/public/plugin.tsx +++ b/x-pack/legacy/plugins/lens/public/plugin.tsx @@ -38,6 +38,8 @@ import { import { FormatFactory } from './legacy_imports'; import { IEmbeddableSetup, IEmbeddableStart } from '../../../../../src/plugins/embeddable/public'; import { EditorFrameStart } from './types'; +import { getLensAliasConfig } from './vis_type_alias'; +import { VisualizationsSetup } from './legacy_imports'; export interface LensPluginSetupDependencies { kibanaLegacy: KibanaLegacySetup; @@ -46,6 +48,7 @@ export interface LensPluginSetupDependencies { embeddable: IEmbeddableSetup; __LEGACY: { formatFactory: FormatFactory; + visualizations: VisualizationsSetup; }; } @@ -81,7 +84,7 @@ export class LensPlugin { expressions, data, embeddable, - __LEGACY: { formatFactory }, + __LEGACY: { formatFactory, visualizations }, }: LensPluginSetupDependencies ) { const editorFrameSetupInterface = this.editorFrameService.setup(core, { @@ -100,6 +103,8 @@ export class LensPlugin { this.datatableVisualization.setup(core, dependencies); this.metricVisualization.setup(core, dependencies); + visualizations.types.registerAlias(getLensAliasConfig()); + kibanaLegacy.registerLegacyApp({ id: 'lens', title: NOT_INTERNATIONALIZED_PRODUCT_NAME, diff --git a/x-pack/legacy/plugins/lens/public/register_vis_type_alias.ts b/x-pack/legacy/plugins/lens/public/vis_type_alias.ts similarity index 89% rename from x-pack/legacy/plugins/lens/public/register_vis_type_alias.ts rename to x-pack/legacy/plugins/lens/public/vis_type_alias.ts index f71796268065b1..c4e0a20110c81f 100644 --- a/x-pack/legacy/plugins/lens/public/register_vis_type_alias.ts +++ b/x-pack/legacy/plugins/lens/public/vis_type_alias.ts @@ -5,10 +5,10 @@ */ import { i18n } from '@kbn/i18n'; -import { setup as visualizations } from '../../../../../src/legacy/core_plugins/visualizations/public/np_ready/public/legacy'; import { getBasePath, getEditPath } from '../../../../plugins/lens/common'; +import { VisTypeAlias } from '../../../../../src/legacy/core_plugins/visualizations/public/np_ready/public/vis_types'; -visualizations.types.registerAlias({ +export const getLensAliasConfig = (): VisTypeAlias => ({ aliasUrl: getBasePath(), name: 'lens', promotion: { diff --git a/x-pack/legacy/plugins/maps/index.js b/x-pack/legacy/plugins/maps/index.js index 5cd5a8731a7033..8048c21fe9333d 100644 --- a/x-pack/legacy/plugins/maps/index.js +++ b/x-pack/legacy/plugins/maps/index.js @@ -78,7 +78,7 @@ export function maps(kibana) { }, mappings, migrations, - visTypes: ['plugins/maps/register_vis_type_alias'], + hacks: ['plugins/maps/register_vis_type_alias'], }, config(Joi) { return Joi.object({ From 4696736528adb98e6f3ab3f872c3e14e67ca0873 Mon Sep 17 00:00:00 2001 From: Devon Thomson Date: Mon, 2 Mar 2020 13:26:12 -0500 Subject: [PATCH 021/120] Disallow duplicate percentiles (#57444) (#58299) Added an optional validation step to the number_list component to disallow duplicates, Reworked and consolidated number_list component validations into one method and enabled this option in the percentiles editor. Added unit / integration tests --- .../number_list/number_list.test.tsx | 20 +++++ .../components/number_list/number_list.tsx | 39 ++++------ .../components/number_list/utils.test.ts | 69 +++++++++-------- .../controls/components/number_list/utils.ts | 77 +++++++++++++++---- .../components/controls/percentile_ranks.tsx | 1 + .../components/controls/percentiles.test.tsx | 64 +++++++++++++++ .../components/controls/percentiles.tsx | 2 +- 7 files changed, 199 insertions(+), 73 deletions(-) create mode 100644 src/legacy/core_plugins/vis_default_editor/public/components/controls/percentiles.test.tsx diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_list.test.tsx b/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_list.test.tsx index 3faf164c365d9d..f547f1dee6a39a 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_list.test.tsx +++ b/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_list.test.tsx @@ -63,12 +63,31 @@ describe('NumberList', () => { test('should show an order error', () => { defaultProps.numberArray = [3, 1]; + defaultProps.validateAscendingOrder = true; defaultProps.showValidation = true; const comp = mountWithIntl(); expect(comp.find('EuiFormErrorText').length).toBe(1); }); + test('should show a duplicate error', () => { + defaultProps.numberArray = [3, 1, 3]; + defaultProps.disallowDuplicates = true; + defaultProps.showValidation = true; + const comp = mountWithIntl(); + + expect(comp.find('EuiFormErrorText').length).toBeGreaterThan(0); + }); + + test('should show many duplicate errors', () => { + defaultProps.numberArray = [3, 1, 3, 1, 3, 1, 3, 1]; + defaultProps.disallowDuplicates = true; + defaultProps.showValidation = true; + const comp = mountWithIntl(); + + expect(comp.find('EuiFormErrorText').length).toBe(6); + }); + test('should set validity as true', () => { mountWithIntl(); @@ -77,6 +96,7 @@ describe('NumberList', () => { test('should set validity as false when the order is invalid', () => { defaultProps.numberArray = [3, 2]; + defaultProps.validateAscendingOrder = true; const comp = mountWithIntl(); expect(defaultProps.setValidity).lastCalledWith(false); diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_list.tsx b/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_list.tsx index 8e290ceedfeac1..a43c66c2e08ccf 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_list.tsx +++ b/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/number_list.tsx @@ -21,17 +21,14 @@ import React, { Fragment, useState, useEffect, useMemo, useCallback } from 'reac import { EuiSpacer, EuiButtonEmpty, EuiFlexItem, EuiFormErrorText } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; -import { i18n } from '@kbn/i18n'; import { NumberRow, NumberRowModel } from './number_row'; import { parse, EMPTY_STRING, getRange, - validateOrder, - validateValue, getNextModel, getInitModelList, - getUpdatedModels, + getValidatedModels, hasInvalidValues, } from './utils'; import { useValidation } from '../../utils'; @@ -41,6 +38,7 @@ export interface NumberListProps { numberArray: Array; range?: string; showValidation: boolean; + disallowDuplicates?: boolean; unitName: string; validateAscendingOrder?: boolean; onChange(list: Array): void; @@ -54,31 +52,27 @@ function NumberList({ range, showValidation, unitName, - validateAscendingOrder = true, + validateAscendingOrder = false, + disallowDuplicates = false, onChange, setTouched, setValidity, }: NumberListProps) { const numberRange = useMemo(() => getRange(range), [range]); const [models, setModels] = useState(getInitModelList(numberArray)); - const [ascendingError, setAscendingError] = useState(EMPTY_STRING); // set up validity for each model useEffect(() => { - let id: number | undefined; - if (validateAscendingOrder) { - const { isValidOrder, modelIndex } = validateOrder(numberArray); - id = isValidOrder ? undefined : modelIndex; - setAscendingError( - isValidOrder - ? EMPTY_STRING - : i18n.translate('visDefaultEditor.controls.numberList.invalidAscOrderErrorMessage', { - defaultMessage: 'The values should be in ascending order.', - }) - ); - } - setModels(state => getUpdatedModels(numberArray, state, numberRange, id)); - }, [numberArray, numberRange, validateAscendingOrder]); + setModels(state => + getValidatedModels( + numberArray, + state, + numberRange, + validateAscendingOrder, + disallowDuplicates + ) + ); + }, [numberArray, numberRange, validateAscendingOrder, disallowDuplicates]); // responsible for setting up an initial value ([0]) when there is no default value useEffect(() => { @@ -105,12 +99,10 @@ function NumberList({ onUpdate( models.map(model => { if (model.id === id) { - const { isInvalid, error } = validateValue(parsedValue, numberRange); return { id, value: parsedValue, - isInvalid, - error, + isInvalid: false, }; } return model; @@ -155,7 +147,6 @@ function NumberList({ {models.length - 1 !== arrayIndex && } ))} - {showValidation && ascendingError && {ascendingError}} diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/utils.test.ts b/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/utils.test.ts index 89fb5738db379f..9cffaadfc956df 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/utils.test.ts +++ b/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/utils.test.ts @@ -19,13 +19,12 @@ import { getInitModelList, - getUpdatedModels, - validateOrder, hasInvalidValues, parse, validateValue, getNextModel, getRange, + getValidatedModels, } from './utils'; import { NumberListRange } from './range'; import { NumberRowModel } from './number_row'; @@ -33,6 +32,7 @@ import { NumberRowModel } from './number_row'; describe('NumberList utils', () => { let modelList: NumberRowModel[]; let range: NumberListRange; + let invalidEntry: NumberRowModel; beforeEach(() => { modelList = [ @@ -46,6 +46,12 @@ describe('NumberList utils', () => { maxInclusive: true, within: jest.fn(() => true), }; + invalidEntry = { + value: expect.any(Number), + isInvalid: true, + error: expect.any(String), + id: expect.any(String), + }; }); describe('getInitModelList', () => { @@ -65,27 +71,27 @@ describe('NumberList utils', () => { }); }); - describe('getUpdatedModels', () => { + describe('getValidatedModels', () => { test('should return model list when number list is empty', () => { - const updatedModelList = getUpdatedModels([], modelList, range); + const updatedModelList = getValidatedModels([], modelList, range); expect(updatedModelList).toEqual([{ value: 0, id: expect.any(String), isInvalid: false }]); }); test('should not update model list when number list is the same', () => { - const updatedModelList = getUpdatedModels([1, 2], modelList, range); + const updatedModelList = getValidatedModels([1, 2], modelList, range); expect(updatedModelList).toEqual(modelList); }); test('should update model list when number list was changed', () => { - const updatedModelList = getUpdatedModels([1, 3], modelList, range); + const updatedModelList = getValidatedModels([1, 3], modelList, range); modelList[1].value = 3; expect(updatedModelList).toEqual(modelList); }); test('should update model list when number list increased', () => { - const updatedModelList = getUpdatedModels([1, 2, 3], modelList, range); + const updatedModelList = getValidatedModels([1, 2, 3], modelList, range); expect(updatedModelList).toEqual([ ...modelList, { value: 3, id: expect.any(String), isInvalid: false }, @@ -93,45 +99,46 @@ describe('NumberList utils', () => { }); test('should update model list when number list decreased', () => { - const updatedModelList = getUpdatedModels([2], modelList, range); + const updatedModelList = getValidatedModels([2], modelList, range); expect(updatedModelList).toEqual([{ value: 2, id: '1', isInvalid: false }]); }); test('should update model list when number list has undefined value', () => { - const updatedModelList = getUpdatedModels([1, undefined], modelList, range); + const updatedModelList = getValidatedModels([1, undefined], modelList, range); modelList[1].value = ''; modelList[1].isInvalid = true; expect(updatedModelList).toEqual(modelList); }); - test('should update model list when number order is invalid', () => { - const updatedModelList = getUpdatedModels([1, 3, 2], modelList, range, 2); - expect(updatedModelList).toEqual([ - modelList[0], - { ...modelList[1], value: 3 }, - { value: 2, id: expect.any(String), isInvalid: true }, - ]); + test('should identify when a number is out of order', () => { + const updatedModelList = getValidatedModels([1, 3, 2], modelList, range, true); + expect(updatedModelList[2]).toEqual(invalidEntry); }); - }); - describe('validateOrder', () => { - test('should return true when order is valid', () => { - expect(validateOrder([1, 2])).toEqual({ - isValidOrder: true, - }); + test('should identify when many numbers are out of order', () => { + const updatedModelList = getValidatedModels([1, 3, 2, 3, 4, 2], modelList, range, true); + expect(updatedModelList[2]).toEqual(invalidEntry); + expect(updatedModelList[5]).toEqual(invalidEntry); }); - test('should return true when a number is undefined', () => { - expect(validateOrder([1, undefined])).toEqual({ - isValidOrder: true, - }); + test('should identify a duplicate', () => { + const updatedModelList = getValidatedModels([1, 2, 3, 6, 2], modelList, range, false, true); + expect(updatedModelList[4]).toEqual(invalidEntry); }); - test('should return false when order is invalid', () => { - expect(validateOrder([2, 1])).toEqual({ - isValidOrder: false, - modelIndex: 1, - }); + test('should identify many duplicates', () => { + const updatedModelList = getValidatedModels( + [2, 2, 2, 3, 4, 5, 2, 2, 3], + modelList, + range, + false, + true + ); + expect(updatedModelList[1]).toEqual(invalidEntry); + expect(updatedModelList[2]).toEqual(invalidEntry); + expect(updatedModelList[6]).toEqual(invalidEntry); + expect(updatedModelList[7]).toEqual(invalidEntry); + expect(updatedModelList[8]).toEqual(invalidEntry); }); }); diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/utils.ts b/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/utils.ts index e0f32366fc265f..c2ac63c98cbea0 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/utils.ts +++ b/src/legacy/core_plugins/vis_default_editor/public/components/controls/components/number_list/utils.ts @@ -49,6 +49,7 @@ function validateValue(value: number | '', numberRange: NumberListRange) { if (value === EMPTY_STRING) { result.isInvalid = true; + result.error = EMPTY_STRING; } else if (!numberRange.within(value)) { result.isInvalid = true; result.error = i18n.translate('visDefaultEditor.controls.numberList.invalidRangeErrorMessage', { @@ -60,19 +61,46 @@ function validateValue(value: number | '', numberRange: NumberListRange) { return result; } -function validateOrder(list: Array) { - const result: { isValidOrder: boolean; modelIndex?: number } = { - isValidOrder: true, +function validateValueAscending( + inputValue: number | '', + index: number, + list: Array +) { + const result: { isInvalidOrder: boolean; error?: string } = { + isInvalidOrder: false, }; - list.forEach((inputValue, index, array) => { - const previousModel = array[index - 1]; - if (previousModel !== undefined && inputValue !== undefined && inputValue <= previousModel) { - result.isValidOrder = false; - result.modelIndex = index; - } - }); + const previousModel = list[index - 1]; + if (previousModel !== undefined && inputValue !== undefined && inputValue <= previousModel) { + result.isInvalidOrder = true; + result.error = i18n.translate( + 'visDefaultEditor.controls.numberList.invalidAscOrderErrorMessage', + { + defaultMessage: 'Value is not in ascending order.', + } + ); + } + return result; +} + +function validateValueUnique( + inputValue: number | '', + index: number, + list: Array +) { + const result: { isDuplicate: boolean; error?: string } = { + isDuplicate: false, + }; + if (inputValue && list.indexOf(inputValue) !== index) { + result.isDuplicate = true; + result.error = i18n.translate( + 'visDefaultEditor.controls.numberList.duplicateValueErrorMessage', + { + defaultMessage: 'Duplicate value.', + } + ); + } return result; } @@ -101,11 +129,12 @@ function getInitModelList(list: Array): NumberRowModel[] { : [defaultModel]; } -function getUpdatedModels( +function getValidatedModels( numberList: Array, modelList: NumberRowModel[], numberRange: NumberListRange, - invalidOrderModelIndex?: number + validateAscendingOrder: boolean = false, + disallowDuplicates: boolean = false ): NumberRowModel[] { if (!numberList.length) { return [defaultModel]; @@ -113,12 +142,27 @@ function getUpdatedModels( return numberList.map((number, index) => { const model = modelList[index] || { id: generateId() }; const newValue: NumberRowModel['value'] = number === undefined ? EMPTY_STRING : number; - const { isInvalid, error } = validateValue(newValue, numberRange); + + const valueResult = numberRange ? validateValue(newValue, numberRange) : { isInvalid: false }; + + const ascendingResult = validateAscendingOrder + ? validateValueAscending(newValue, index, numberList) + : { isInvalidOrder: false }; + + const duplicationResult = disallowDuplicates + ? validateValueUnique(newValue, index, numberList) + : { isDuplicate: false }; + + const allErrors = [valueResult.error, ascendingResult.error, duplicationResult.error] + .filter(Boolean) + .join(' '); + return { ...model, value: newValue, - isInvalid: invalidOrderModelIndex === index ? true : isInvalid, - error, + isInvalid: + valueResult.isInvalid || ascendingResult.isInvalidOrder || duplicationResult.isDuplicate, + error: allErrors === EMPTY_STRING ? undefined : allErrors, }; }); } @@ -132,9 +176,8 @@ export { parse, getRange, validateValue, - validateOrder, getNextModel, getInitModelList, - getUpdatedModels, + getValidatedModels, hasInvalidValues, }; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentile_ranks.tsx b/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentile_ranks.tsx index c6057b7ce2a997..fb7d8d78b28e31 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentile_ranks.tsx +++ b/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentile_ranks.tsx @@ -62,6 +62,7 @@ function PercentileRanksEditor({ unitName={i18n.translate('visDefaultEditor.controls.percentileRanks.valueUnitNameText', { defaultMessage: 'value', })} + validateAscendingOrder={true} showValidation={showValidation} onChange={setValue} setTouched={setTouched} diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentiles.test.tsx b/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentiles.test.tsx new file mode 100644 index 00000000000000..020dbb351b4977 --- /dev/null +++ b/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentiles.test.tsx @@ -0,0 +1,64 @@ +/* + * 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 React from 'react'; +import { AggParamEditorProps } from '../agg_param_props'; +import { IAggConfig } from '../../legacy_imports'; +import { VisState } from 'src/legacy/core_plugins/visualizations/public'; +import { mount } from 'enzyme'; +import { PercentilesEditor } from './percentiles'; + +describe('PercentilesEditor component', () => { + let setValue: jest.Mock; + let setValidity: jest.Mock; + let setTouched: jest.Mock; + let defaultProps: AggParamEditorProps>; + + beforeEach(() => { + setValue = jest.fn(); + setValidity = jest.fn(); + setTouched = jest.fn(); + + defaultProps = { + agg: {} as IAggConfig, + aggParam: {} as any, + formIsTouched: false, + value: [1, 5, 25, 50, 75, 95, 99], + editorConfig: {}, + showValidation: false, + setValue, + setValidity, + setTouched, + state: {} as VisState, + metricAggs: [] as IAggConfig[], + }; + }); + + it('should set valid state to true after adding a unique percentile', () => { + defaultProps.value = [1, 5, 25, 50, 70]; + mount(); + expect(setValidity).lastCalledWith(true); + }); + + it('should set valid state to false after adding a duplicate percentile', () => { + defaultProps.value = [1, 5, 25, 50, 50]; + mount(); + expect(setValidity).lastCalledWith(false); + }); +}); diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentiles.tsx b/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentiles.tsx index 74e7957bc19444..9f1f26fe5446fd 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentiles.tsx +++ b/src/legacy/core_plugins/vis_default_editor/public/components/controls/percentiles.tsx @@ -58,7 +58,7 @@ function PercentilesEditor({ labelledbyId={`visEditorPercentileLabel${agg.id}-legend`} numberArray={value} range="[0,100]" - validateAscendingOrder={false} + disallowDuplicates={true} unitName={i18n.translate('visDefaultEditor.controls.percentileRanks.percentUnitNameText', { defaultMessage: 'percent', })} From 2998ec06fe9ded381fe637ab9940dc20a3742aea Mon Sep 17 00:00:00 2001 From: Nathan Reese Date: Mon, 2 Mar 2020 11:47:35 -0700 Subject: [PATCH 022/120] [Maps] direct Discover "visualize" to open Maps application (#58549) * [Maps] direct Discover visualize to Maps application * pass initial layers to maps app * add functional test * fix parentheses messed up by lint fix * fix i18n expression * move logic into lib * fix typescript errors * use constant for geo_point and geo_shape, more TS noise * use encode_array in an attempt to make TS happy * another round of TS changes * one more thing Co-authored-by: Elastic Machine --- .../np_ready/angular/context_state.ts | 5 +- .../components/field_chooser/field_chooser.js | 17 ++- .../lib/detail_views/string.html | 4 +- .../field_chooser/lib/visualize_url_utils.ts | 108 ++++++++++++++++++ test/functional/page_objects/discover_page.js | 6 - .../maps/public/angular/get_initial_layers.js | 8 +- .../maps/public/angular/map_controller.js | 29 ++++- x-pack/test/functional/apps/maps/discover.js | 50 ++++++++ x-pack/test/functional/apps/maps/index.js | 1 + 9 files changed, 210 insertions(+), 18 deletions(-) create mode 100644 src/legacy/core_plugins/kibana/public/discover/np_ready/components/field_chooser/lib/visualize_url_utils.ts create mode 100644 x-pack/test/functional/apps/maps/discover.js diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/context_state.ts b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/context_state.ts index 8fb6140d55e319..bf185f78941de2 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/context_state.ts +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/context_state.ts @@ -24,9 +24,9 @@ import { syncStates, BaseStateContainer, } from '../../../../../../../plugins/kibana_utils/public'; -import { esFilters, FilterManager, Filter } from '../../../../../../../plugins/data/public'; +import { esFilters, FilterManager, Filter, Query } from '../../../../../../../plugins/data/public'; -interface AppState { +export interface AppState { /** * Columns displayed in the table, cannot be changed by UI, just in discover's main app */ @@ -47,6 +47,7 @@ interface AppState { * Number of records to be fetched after the anchor records (older records) */ successorCount: number; + query?: Query; } interface GlobalState { diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/components/field_chooser/field_chooser.js b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/field_chooser/field_chooser.js index a175a1aebebdfa..df970ab5f25843 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/components/field_chooser/field_chooser.js +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/field_chooser/field_chooser.js @@ -24,7 +24,11 @@ import './discover_field'; import './discover_field_search_directive'; import './discover_index_pattern_directive'; import fieldChooserTemplate from './field_chooser.html'; -import { IndexPatternFieldList } from '../../../../../../../../plugins/data/public'; +import { + IndexPatternFieldList, + KBN_FIELD_TYPES, +} from '../../../../../../../../plugins/data/public'; +import { getMapsAppUrl, isFieldVisualizable, isMapsAppRegistered } from './lib/visualize_url_utils'; export function createFieldChooserDirective($location, config, $route) { return { @@ -186,8 +190,15 @@ export function createFieldChooserDirective($location, config, $route) { return ''; } + if ( + (field.type === KBN_FIELD_TYPES.GEO_POINT || field.type === KBN_FIELD_TYPES.GEO_SHAPE) && + isMapsAppRegistered() + ) { + return getMapsAppUrl(field, $scope.indexPattern, $scope.state, $scope.columns); + } + let agg = {}; - const isGeoPoint = field.type === 'geo_point'; + const isGeoPoint = field.type === KBN_FIELD_TYPES.GEO_POINT; const type = isGeoPoint ? 'tile_map' : 'histogram'; // If we're visualizing a date field, and our index is time based (and thus has a time filter), // then run a date histogram @@ -243,7 +254,7 @@ export function createFieldChooserDirective($location, config, $route) { $scope.computeDetails = function(field, recompute) { if (_.isUndefined(field.details) || recompute) { field.details = { - visualizeUrl: field.visualizable ? getVisualizeUrl(field) : null, + visualizeUrl: isFieldVisualizable(field) ? getVisualizeUrl(field) : null, ...fieldCalculator.getFieldValueCounts({ hits: $scope.hits, field: field, diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/components/field_chooser/lib/detail_views/string.html b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/field_chooser/lib/detail_views/string.html index 5d134911fc91b7..333dc472e956d8 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/components/field_chooser/lib/detail_views/string.html +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/field_chooser/lib/detail_views/string.html @@ -79,7 +79,7 @@ @@ -87,7 +87,7 @@ diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/components/field_chooser/lib/visualize_url_utils.ts b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/field_chooser/lib/visualize_url_utils.ts new file mode 100644 index 00000000000000..8dbf3cd79ccb16 --- /dev/null +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/components/field_chooser/lib/visualize_url_utils.ts @@ -0,0 +1,108 @@ +/* + * 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 uuid from 'uuid/v4'; +// @ts-ignore +import rison from 'rison-node'; +import { + IFieldType, + IIndexPattern, + KBN_FIELD_TYPES, +} from '../../../../../../../../../plugins/data/public'; +import { AppState } from '../../../angular/context_state'; +import { getServices } from '../../../../kibana_services'; + +function getMapsAppBaseUrl() { + const mapsAppVisAlias = getServices() + .visualizations.types.getAliases() + .find(({ name }) => { + return name === 'maps'; + }); + return mapsAppVisAlias ? mapsAppVisAlias.aliasUrl : null; +} + +export function isMapsAppRegistered() { + return getServices() + .visualizations.types.getAliases() + .some(({ name }) => { + return name === 'maps'; + }); +} + +export function isFieldVisualizable(field: IFieldType) { + if ( + (field.type === KBN_FIELD_TYPES.GEO_POINT || field.type === KBN_FIELD_TYPES.GEO_SHAPE) && + isMapsAppRegistered() + ) { + return true; + } + return field.visualizable; +} + +export function getMapsAppUrl( + field: IFieldType, + indexPattern: IIndexPattern, + appState: AppState, + columns: string[] +) { + const mapAppParams = new URLSearchParams(); + + // Copy global state + const locationSplit = window.location.href.split('discover?'); + if (locationSplit.length > 1) { + const discoverParams = new URLSearchParams(locationSplit[1]); + const globalStateUrlValue = discoverParams.get('_g'); + if (globalStateUrlValue) { + mapAppParams.set('_g', globalStateUrlValue); + } + } + + // Copy filters and query in app state + const mapsAppState: any = { + filters: appState.filters || [], + }; + if (appState.query) { + mapsAppState.query = appState.query; + } + // @ts-ignore + mapAppParams.set('_a', rison.encode(mapsAppState)); + + // create initial layer descriptor + const hasColumns = columns && columns.length && columns[0] !== '_source'; + mapAppParams.set( + 'initialLayers', + // @ts-ignore + rison.encode_array([ + { + id: uuid(), + label: indexPattern.title, + sourceDescriptor: { + id: uuid(), + type: 'ES_SEARCH', + geoField: field.name, + tooltipProperties: hasColumns ? columns : [], + indexPatternId: indexPattern.id, + }, + visible: true, + type: 'VECTOR', + }, + ]) + ); + + return getServices().addBasePath(`${getMapsAppBaseUrl()}?${mapAppParams.toString()}`); +} diff --git a/test/functional/page_objects/discover_page.js b/test/functional/page_objects/discover_page.js index 5ccc5625849d27..080b8c8ee753fc 100644 --- a/test/functional/page_objects/discover_page.js +++ b/test/functional/page_objects/discover_page.js @@ -206,12 +206,6 @@ export function DiscoverPageProvider({ getService, getPageObjects }) { return await testSubjects.getVisibleText('discoverQueryHits'); } - async query(queryString) { - await find.setValue('input[aria-label="Search input"]', queryString); - await find.clickByCssSelector('button[aria-label="Search"]'); - await PageObjects.header.waitUntilLoadingHasFinished(); - } - async getDocHeader() { const header = await find.byCssSelector('thead > tr:nth-child(1)'); return await header.getVisibleText(); diff --git a/x-pack/legacy/plugins/maps/public/angular/get_initial_layers.js b/x-pack/legacy/plugins/maps/public/angular/get_initial_layers.js index 45ee441716769e..3cae75231d28e3 100644 --- a/x-pack/legacy/plugins/maps/public/angular/get_initial_layers.js +++ b/x-pack/legacy/plugins/maps/public/angular/get_initial_layers.js @@ -9,7 +9,7 @@ import { EMSTMSSource } from '../layers/sources/ems_tms_source'; import chrome from 'ui/chrome'; import { getKibanaTileMap } from '../meta'; -export function getInitialLayers(layerListJSON) { +export function getInitialLayers(layerListJSON, initialLayers = []) { if (layerListJSON) { return JSON.parse(layerListJSON); } @@ -19,7 +19,7 @@ export function getInitialLayers(layerListJSON) { const sourceDescriptor = KibanaTilemapSource.createDescriptor(); const source = new KibanaTilemapSource(sourceDescriptor); const layer = source.createDefaultLayer(); - return [layer.toLayerDescriptor()]; + return [layer.toLayerDescriptor(), ...initialLayers]; } const isEmsEnabled = chrome.getInjected('isEmsEnabled', true); @@ -27,8 +27,8 @@ export function getInitialLayers(layerListJSON) { const descriptor = EMSTMSSource.createDescriptor({ isAutoSelect: true }); const source = new EMSTMSSource(descriptor); const layer = source.createDefaultLayer(); - return [layer.toLayerDescriptor()]; + return [layer.toLayerDescriptor(), ...initialLayers]; } - return []; + return initialLayers; } diff --git a/x-pack/legacy/plugins/maps/public/angular/map_controller.js b/x-pack/legacy/plugins/maps/public/angular/map_controller.js index 95c8ff975b1d61..a8e9ae46a3b9ad 100644 --- a/x-pack/legacy/plugins/maps/public/angular/map_controller.js +++ b/x-pack/legacy/plugins/maps/public/angular/map_controller.js @@ -6,6 +6,7 @@ import _ from 'lodash'; import chrome from 'ui/chrome'; +import rison from 'rison-node'; import 'ui/directives/listen'; import 'ui/directives/storage'; import React from 'react'; @@ -66,6 +67,32 @@ const REACT_ANCHOR_DOM_ELEMENT_ID = 'react-maps-root'; const app = uiModules.get(MAP_APP_PATH, []); +function getInitialLayersFromUrlParam() { + const locationSplit = window.location.href.split('?'); + if (locationSplit.length <= 1) { + return []; + } + const mapAppParams = new URLSearchParams(locationSplit[1]); + if (!mapAppParams.has('initialLayers')) { + return []; + } + + try { + return rison.decode_array(mapAppParams.get('initialLayers')); + } catch (e) { + toastNotifications.addWarning({ + title: i18n.translate('xpack.maps.initialLayers.unableToParseTitle', { + defaultMessage: `Inital layers not added to map`, + }), + text: i18n.translate('xpack.maps.initialLayers.unableToParseMessage', { + defaultMessage: `Unable to parse contents of 'initialLayers' parameter. Error: {errorMsg}`, + values: { errorMsg: e.message }, + }), + }); + return []; + } +} + app.controller( 'GisMapController', ($scope, $route, kbnUrl, localStorage, AppState, globalState) => { @@ -333,7 +360,7 @@ app.controller( store.dispatch(setOpenTOCDetails(_.get(uiState, 'openTOCDetails', []))); } - const layerList = getInitialLayers(savedMap.layerListJSON); + const layerList = getInitialLayers(savedMap.layerListJSON, getInitialLayersFromUrlParam()); initialLayerListConfig = copyPersistentState(layerList); store.dispatch(replaceLayerList(layerList)); store.dispatch(setRefreshConfig($scope.refreshConfig)); diff --git a/x-pack/test/functional/apps/maps/discover.js b/x-pack/test/functional/apps/maps/discover.js new file mode 100644 index 00000000000000..ce335964767551 --- /dev/null +++ b/x-pack/test/functional/apps/maps/discover.js @@ -0,0 +1,50 @@ +/* + * 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 expect from '@kbn/expect'; + +export default function({ getService, getPageObjects }) { + const queryBar = getService('queryBar'); + const PageObjects = getPageObjects(['common', 'discover', 'header', 'maps', 'timePicker']); + + describe('discover visualize button', () => { + beforeEach(async () => { + await PageObjects.common.navigateToApp('discover'); + }); + + it('should link geo_shape fields to Maps application', async () => { + await PageObjects.discover.selectIndexPattern('geo_shapes*'); + await PageObjects.discover.clickFieldListItem('geometry'); + await PageObjects.discover.clickFieldListItemVisualize('geometry'); + await PageObjects.header.waitUntilLoadingHasFinished(); + await PageObjects.maps.waitForLayersToLoad(); + const doesLayerExist = await PageObjects.maps.doesLayerExist('geo_shapes*'); + expect(doesLayerExist).to.equal(true); + const hits = await PageObjects.maps.getHits(); + expect(hits).to.equal('4'); + }); + + it('should link geo_point fields to Maps application with time and query context', async () => { + await PageObjects.discover.selectIndexPattern('logstash-*'); + await PageObjects.timePicker.setAbsoluteRange( + 'Sep 22, 2015 @ 00:00:00.000', + 'Sep 22, 2015 @ 04:00:00.000' + ); + await queryBar.setQuery('machine.os.raw : "ios"'); + await queryBar.submitQuery(); + await PageObjects.header.waitUntilLoadingHasFinished(); + + await PageObjects.discover.clickFieldListItem('geo.coordinates'); + await PageObjects.discover.clickFieldListItemVisualize('geo.coordinates'); + await PageObjects.header.waitUntilLoadingHasFinished(); + await PageObjects.maps.waitForLayersToLoad(); + const doesLayerExist = await PageObjects.maps.doesLayerExist('logstash-*'); + expect(doesLayerExist).to.equal(true); + const hits = await PageObjects.maps.getHits(); + expect(hits).to.equal('7'); + }); + }); +} diff --git a/x-pack/test/functional/apps/maps/index.js b/x-pack/test/functional/apps/maps/index.js index 0545fcd1b6453a..e8a9d7ba54bc55 100644 --- a/x-pack/test/functional/apps/maps/index.js +++ b/x-pack/test/functional/apps/maps/index.js @@ -45,6 +45,7 @@ export default function({ loadTestFile, getService }) { loadTestFile(require.resolve('./import_geojson')); loadTestFile(require.resolve('./layer_errors')); loadTestFile(require.resolve('./embeddable')); + loadTestFile(require.resolve('./discover')); }); }); } From 17b3d8036914f67a6a71e24f7cc6bd42852195b7 Mon Sep 17 00:00:00 2001 From: Joe Reuter Date: Mon, 2 Mar 2020 20:14:24 +0100 Subject: [PATCH 023/120] improve graph missing workspace error message (#58876) --- x-pack/legacy/plugins/graph/public/app.js | 20 ++++++++++++------- .../translations/translations/ja-JP.json | 1 - .../translations/translations/zh-CN.json | 1 - 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/x-pack/legacy/plugins/graph/public/app.js b/x-pack/legacy/plugins/graph/public/app.js index 7010e1fa773ea8..df968681a38e22 100644 --- a/x-pack/legacy/plugins/graph/public/app.js +++ b/x-pack/legacy/plugins/graph/public/app.js @@ -132,14 +132,20 @@ export function initGraphApp(angularModule, deps) { template: appTemplate, badge: getReadonlyBadge, resolve: { - savedWorkspace: function($route) { + savedWorkspace: function($rootScope, $route, $location) { return $route.current.params.id - ? savedWorkspaceLoader.get($route.current.params.id).catch(function() { - toastNotifications.addDanger( - i18n.translate('xpack.graph.missingWorkspaceErrorMessage', { - defaultMessage: 'Missing workspace', - }) - ); + ? savedWorkspaceLoader.get($route.current.params.id).catch(function(e) { + toastNotifications.addError(e, { + title: i18n.translate('xpack.graph.missingWorkspaceErrorMessage', { + defaultMessage: "Couldn't load graph with ID", + }), + }); + $rootScope.$eval(() => { + $location.path('/home'); + $location.replace(); + }); + // return promise that never returns to prevent the controller from loading + return new Promise(); }) : savedWorkspaceLoader.get(); }, diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index b99a54160bb65f..21500c4db9c346 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -5734,7 +5734,6 @@ "xpack.graph.listing.table.entityNamePlural": "グラフ", "xpack.graph.listing.table.titleColumnName": "タイトル", "xpack.graph.loadWorkspace.missingIndexPatternErrorMessage": "インデックスパターンが見つかりませんでした", - "xpack.graph.missingWorkspaceErrorMessage": "ワークスペースがありません", "xpack.graph.newGraphTitle": "保存されていないグラフ", "xpack.graph.noDataSourceNotificationMessageText": "データソースが見つかりませんでした。{managementIndexPatternsLink} に移動して Elasticsearch インデックスのインデックスパターンを作成してください。", "xpack.graph.noDataSourceNotificationMessageText.managementIndexPatternLinkText": "管理>インデックスパターン", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index bae8fef5ff280b..c9e7ea1ec80de3 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -5734,7 +5734,6 @@ "xpack.graph.listing.table.entityNamePlural": "图表", "xpack.graph.listing.table.titleColumnName": "标题", "xpack.graph.loadWorkspace.missingIndexPatternErrorMessage": "未找到索引模式", - "xpack.graph.missingWorkspaceErrorMessage": "缺少工作空间", "xpack.graph.newGraphTitle": "未保存图表", "xpack.graph.noDataSourceNotificationMessageText": "未找到数据源。前往 {managementIndexPatternsLink},为您的 Elasticsearch 索引创建索引模式。", "xpack.graph.noDataSourceNotificationMessageText.managementIndexPatternLinkText": "管理 > 索引模式", From cbbc963001be1d200c97a9678d59ac0750a3b7c1 Mon Sep 17 00:00:00 2001 From: Joe Reuter Date: Mon, 2 Mar 2020 20:14:37 +0100 Subject: [PATCH 024/120] show timepicker in timelion and tsvb (#58857) --- .../kibana/public/visualize/np_ready/editor/editor.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.js b/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.js index 415949f88e9d17..2137e413451d2d 100644 --- a/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.js +++ b/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.js @@ -382,7 +382,7 @@ function VisualizeAppController( $scope.showQueryBarTimePicker = () => { // tsvb loads without an indexPattern initially (TODO investigate). // hide timefilter only if timeFieldName is explicitly undefined. - const hasTimeField = $scope.indexPattern ? !!$scope.indexPattern.timeFieldName : true; + const hasTimeField = vis.indexPattern ? !!vis.indexPattern.timeFieldName : true; return vis.type.options.showTimePicker && hasTimeField; }; From a6b166b69c148cbd3c10ddc96bce10a25c6c5476 Mon Sep 17 00:00:00 2001 From: Joe Reuter Date: Mon, 2 Mar 2020 20:14:51 +0100 Subject: [PATCH 025/120] put params into short url instead of behind it (#58846) --- .../share/public/components/url_panel_content.tsx | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/plugins/share/public/components/url_panel_content.tsx b/src/plugins/share/public/components/url_panel_content.tsx index d0d4ce55dc1ac2..2b77b6f4592a87 100644 --- a/src/plugins/share/public/components/url_panel_content.tsx +++ b/src/plugins/share/public/components/url_panel_content.tsx @@ -183,7 +183,11 @@ export class UrlPanelContent extends Component { }; private getSnapshotUrl = () => { - return this.props.shareableUrl || window.location.href; + let url = this.props.shareableUrl || window.location.href; + if (this.props.isEmbedded) { + url = this.makeUrlEmbeddable(url); + } + return url; }; private makeUrlEmbeddable = (url: string) => { @@ -200,8 +204,7 @@ export class UrlPanelContent extends Component { return; } - const embeddableUrl = this.makeUrlEmbeddable(url); - return ``; + return ``; }; private setUrl = () => { From 2cf863c27b954c593ffc298d7f4524f328d07d7a Mon Sep 17 00:00:00 2001 From: Caroline Horn <549577+cchaos@users.noreply.github.com> Date: Mon, 2 Mar 2020 14:38:43 -0500 Subject: [PATCH 026/120] [Advanced Settings] Fix a11y of unsaved indicator (#58511) * [Advanced Settings] Fix a11y of unsaved indicator - Reduced size of the indicator bar on the left - Added icons with tooltips to indicated unsaved and invalid states * Snaps * Fix mobile view of bottom bar --- .../management_app/advanced_settings.scss | 30 +- .../field/__snapshots__/field.test.tsx.snap | 432 +++++++++++++++--- .../management_app/components/field/field.tsx | 29 +- .../management_app/components/form/form.tsx | 90 ++-- 4 files changed, 468 insertions(+), 113 deletions(-) diff --git a/src/plugins/advanced_settings/public/management_app/advanced_settings.scss b/src/plugins/advanced_settings/public/management_app/advanced_settings.scss index 016edb2817da82..66ae9cca3f83b7 100644 --- a/src/plugins/advanced_settings/public/management_app/advanced_settings.scss +++ b/src/plugins/advanced_settings/public/management_app/advanced_settings.scss @@ -22,40 +22,42 @@ margin-top: $euiSize; } + .mgtAdvancedSettings__fieldTitle { + padding-left: $euiSizeS; + margin-left: -$euiSizeS; + } - padding-left: $euiSizeS; - margin-left: -$euiSizeS; - &--unsaved { + &--unsaved .mgtAdvancedSettings__fieldTitle { // Simulates a left side border without shifting content - box-shadow: -$euiSizeXS 0px $euiColorSecondary; + box-shadow: -$euiSizeXS 0px $euiColorWarning; } - &--invalid { + &--invalid .mgtAdvancedSettings__fieldTitle { // Simulates a left side border without shifting content box-shadow: -$euiSizeXS 0px $euiColorDanger; } - @include internetExplorerOnly() { - min-height: 1px; - } - &Row { - padding-left: $euiSizeS; - } @include internetExplorerOnly { + min-height: 1px; + &Row { min-height: 1px; } } } +.mgtAdvancedSettings__fieldTitleUnsavedIcon { + margin-left: $euiSizeS; +} + .mgtAdvancedSettingsForm__unsavedCount { - @include euiBreakpoint('xs', 's') { + @include euiBreakpoint('xs') { display: none; } } -.mgtAdvancedSettingsForm__unsavedCountMessage{ +.mgtAdvancedSettingsForm__unsavedCountMessage { // Simulates a left side border without shifting content - box-shadow: -$euiSizeXS 0px $euiColorSecondary; + box-shadow: -$euiSizeXS 0px $euiColorWarning; padding-left: $euiSizeS; } diff --git a/src/plugins/advanced_settings/public/management_app/components/field/__snapshots__/field.test.tsx.snap b/src/plugins/advanced_settings/public/management_app/components/field/__snapshots__/field.test.tsx.snap index 2f4d806e602449..dba1678339f248 100644 --- a/src/plugins/advanced_settings/public/management_app/components/field/__snapshots__/field.test.tsx.snap +++ b/src/plugins/advanced_settings/public/management_app/components/field/__snapshots__/field.test.tsx.snap @@ -17,7 +17,12 @@ exports[`Field for array setting should render as read only if saving is disable fullWidth={true} title={

- Array test setting + + Array test setting + +

} @@ -84,7 +89,12 @@ exports[`Field for array setting should render as read only with help text if ov fullWidth={true} title={

- Array test setting + + Array test setting + +

} @@ -139,7 +149,11 @@ exports[`Field for array setting should render custom setting icon if it is cust fullWidth={true} title={

- Array test setting + + Array test setting + +

} > @@ -195,7 +210,12 @@ exports[`Field for array setting should render default value if there is no user fullWidth={true} title={

- Array test setting + + Array test setting + +

} @@ -240,7 +260,11 @@ exports[`Field for array setting should render unsaved value if there are unsave fullWidth={true} title={

- Array test setting + + Array test setting + +

} > @@ -330,7 +361,12 @@ exports[`Field for array setting should render user value if there is user value fullWidth={true} title={

- Array test setting + + Array test setting + +

} @@ -392,7 +428,12 @@ exports[`Field for boolean setting should render as read only if saving is disab fullWidth={true} title={

- Boolean test setting + + Boolean test setting + +

} @@ -465,7 +506,12 @@ exports[`Field for boolean setting should render as read only with help text if fullWidth={true} title={

- Boolean test setting + + Boolean test setting + +

} @@ -526,7 +572,11 @@ exports[`Field for boolean setting should render custom setting icon if it is cu fullWidth={true} title={

- Boolean test setting + + Boolean test setting + +

} > @@ -588,7 +639,12 @@ exports[`Field for boolean setting should render default value if there is no us fullWidth={true} title={

- Boolean test setting + + Boolean test setting + +

} @@ -639,7 +695,11 @@ exports[`Field for boolean setting should render unsaved value if there are unsa fullWidth={true} title={

- Boolean test setting + + Boolean test setting + +

} > @@ -731,7 +798,12 @@ exports[`Field for boolean setting should render user value if there is user val fullWidth={true} title={

- Boolean test setting + + Boolean test setting + +

} @@ -799,7 +871,12 @@ exports[`Field for image setting should render as read only if saving is disable fullWidth={true} title={

- Image test setting + + Image test setting + +

} @@ -868,7 +945,12 @@ exports[`Field for image setting should render as read only with help text if ov fullWidth={true} title={

- Image test setting + + Image test setting + +

} @@ -921,7 +1003,11 @@ exports[`Field for image setting should render custom setting icon if it is cust fullWidth={true} title={

- Image test setting + + Image test setting + +

} > @@ -979,7 +1066,12 @@ exports[`Field for image setting should render default value if there is no user fullWidth={true} title={

- Image test setting + + Image test setting + +

} @@ -1026,7 +1118,11 @@ exports[`Field for image setting should render unsaved value if there are unsave fullWidth={true} title={

- Image test setting + + Image test setting + +

} > @@ -1113,7 +1216,12 @@ exports[`Field for image setting should render user value if there is user value fullWidth={true} title={

- Image test setting + + Image test setting + +

} @@ -1211,7 +1319,12 @@ exports[`Field for json setting should render as read only if saving is disabled fullWidth={true} title={

- Json test setting + + Json test setting + +

} @@ -1302,7 +1415,12 @@ exports[`Field for json setting should render as read only with help text if ove fullWidth={true} title={

- Json test setting + + Json test setting + +

} @@ -1378,7 +1496,11 @@ exports[`Field for json setting should render custom setting icon if it is custo fullWidth={true} title={

- Json test setting + + Json test setting + +

} > @@ -1480,7 +1603,12 @@ exports[`Field for json setting should render default value if there is no user fullWidth={true} title={

- Json test setting + + Json test setting + +

} @@ -1563,7 +1691,11 @@ exports[`Field for json setting should render unsaved value if there are unsaved fullWidth={true} title={

- Json test setting + + Json test setting + +

} > @@ -1677,7 +1816,12 @@ exports[`Field for json setting should render user value if there is user value fullWidth={true} title={

- Json test setting + + Json test setting + +

} @@ -1760,7 +1904,12 @@ exports[`Field for markdown setting should render as read only if saving is disa fullWidth={true} title={

- Markdown test setting + + Markdown test setting + +

} @@ -1848,7 +1997,12 @@ exports[`Field for markdown setting should render as read only with help text if fullWidth={true} title={

- Markdown test setting + + Markdown test setting + +

} @@ -1924,7 +2078,11 @@ exports[`Field for markdown setting should render custom setting icon if it is c fullWidth={true} title={

- Markdown test setting + + Markdown test setting + +

} > @@ -2001,7 +2160,12 @@ exports[`Field for markdown setting should render default value if there is no u fullWidth={true} title={

- Markdown test setting + + Markdown test setting + +

} @@ -2067,7 +2231,11 @@ exports[`Field for markdown setting should render unsaved value if there are uns fullWidth={true} title={

- Markdown test setting + + Markdown test setting + +

} > @@ -2174,7 +2349,12 @@ exports[`Field for markdown setting should render user value if there is user va fullWidth={true} title={

- Markdown test setting + + Markdown test setting + +

} @@ -2257,7 +2437,12 @@ exports[`Field for number setting should render as read only if saving is disabl fullWidth={true} title={

- Number test setting + + Number test setting + +

} @@ -2324,7 +2509,12 @@ exports[`Field for number setting should render as read only with help text if o fullWidth={true} title={

- Number test setting + + Number test setting + +

} @@ -2379,7 +2569,11 @@ exports[`Field for number setting should render custom setting icon if it is cus fullWidth={true} title={

- Number test setting + + Number test setting + +

} > @@ -2435,7 +2630,12 @@ exports[`Field for number setting should render default value if there is no use fullWidth={true} title={

- Number test setting + + Number test setting + +

} @@ -2480,7 +2680,11 @@ exports[`Field for number setting should render unsaved value if there are unsav fullWidth={true} title={

- Number test setting + + Number test setting + +

} > @@ -2566,7 +2777,12 @@ exports[`Field for number setting should render user value if there is user valu fullWidth={true} title={

- Number test setting + + Number test setting + +

} @@ -2628,7 +2844,12 @@ exports[`Field for select setting should render as read only if saving is disabl fullWidth={true} title={

- Select test setting + + Select test setting + +

} @@ -2711,7 +2932,12 @@ exports[`Field for select setting should render as read only with help text if o fullWidth={true} title={

- Select test setting + + Select test setting + +

} @@ -2782,7 +3008,11 @@ exports[`Field for select setting should render custom setting icon if it is cus fullWidth={true} title={

- Select test setting + + Select test setting + +

} > @@ -2854,7 +3085,12 @@ exports[`Field for select setting should render default value if there is no use fullWidth={true} title={

- Select test setting + + Select test setting + +

} @@ -2915,7 +3151,11 @@ exports[`Field for select setting should render unsaved value if there are unsav fullWidth={true} title={

- Select test setting + + Select test setting + +

} > @@ -3017,7 +3264,12 @@ exports[`Field for select setting should render user value if there is user valu fullWidth={true} title={

- Select test setting + + Select test setting + +

} @@ -3095,7 +3347,12 @@ exports[`Field for string setting should render as read only if saving is disabl fullWidth={true} title={

- String test setting + + String test setting + +

} @@ -3162,7 +3419,12 @@ exports[`Field for string setting should render as read only with help text if o fullWidth={true} title={

- String test setting + + String test setting + +

} @@ -3217,7 +3479,11 @@ exports[`Field for string setting should render custom setting icon if it is cus fullWidth={true} title={

- String test setting + + String test setting + +

} > @@ -3273,7 +3540,12 @@ exports[`Field for string setting should render default value if there is no use fullWidth={true} title={

- String test setting + + String test setting + +

} @@ -3318,7 +3590,11 @@ exports[`Field for string setting should render unsaved value if there are unsav fullWidth={true} title={

- String test setting + + String test setting + +

} > @@ -3404,7 +3687,12 @@ exports[`Field for string setting should render user value if there is user valu fullWidth={true} title={

- String test setting + + String test setting + +

} @@ -3466,7 +3754,12 @@ exports[`Field for stringWithValidation setting should render as read only if sa fullWidth={true} title={

- String test validation setting + + String test validation setting + +

} @@ -3533,7 +3826,12 @@ exports[`Field for stringWithValidation setting should render as read only with fullWidth={true} title={

- String test validation setting + + String test validation setting + +

} @@ -3588,7 +3886,11 @@ exports[`Field for stringWithValidation setting should render custom setting ico fullWidth={true} title={

- String test validation setting + + String test validation setting + +

} > @@ -3644,7 +3947,12 @@ exports[`Field for stringWithValidation setting should render default value if t fullWidth={true} title={

- String test validation setting + + String test validation setting + +

} @@ -3689,7 +3997,11 @@ exports[`Field for stringWithValidation setting should render unsaved value if t fullWidth={true} title={

- String test validation setting + + String test validation setting + +

} > @@ -3775,7 +4094,12 @@ exports[`Field for stringWithValidation setting should render user value if ther fullWidth={true} title={

- String test validation setting + + String test validation setting + +

} diff --git a/src/plugins/advanced_settings/public/management_app/components/field/field.tsx b/src/plugins/advanced_settings/public/management_app/components/field/field.tsx index d9c3752d1c0a50..18a1a365709d19 100644 --- a/src/plugins/advanced_settings/public/management_app/components/field/field.tsx +++ b/src/plugins/advanced_settings/public/management_app/components/field/field.tsx @@ -450,9 +450,24 @@ export class Field extends PureComponent { } renderTitle(setting: FieldSetting) { + const { unsavedChanges } = this.props; + const isInvalid = unsavedChanges?.isInvalid; + + const unsavedIconLabel = unsavedChanges + ? isInvalid + ? i18n.translate('advancedSettings.field.invalidIconLabel', { + defaultMessage: 'Invalid', + }) + : i18n.translate('advancedSettings.field.unsavedIconLabel', { + defaultMessage: 'Unsaved', + }) + : undefined; + return (

- {setting.displayName || setting.name} + + {setting.displayName || setting.name} + {setting.isCustom ? ( { ) : ( '' )} + + {unsavedChanges ? ( + + ) : ( + '' + )}

); } diff --git a/src/plugins/advanced_settings/public/management_app/components/form/form.tsx b/src/plugins/advanced_settings/public/management_app/components/form/form.tsx index ef433dd990d33a..c859e8fdd7136a 100644 --- a/src/plugins/advanced_settings/public/management_app/components/form/form.tsx +++ b/src/plugins/advanced_settings/public/management_app/components/form/form.tsx @@ -331,54 +331,56 @@ export class Form extends PureComponent { }); return ( - +

{this.renderCountOfUnsaved()}

+ - - - - {i18n.translate('advancedSettings.form.cancelButtonLabel', { - defaultMessage: 'Cancel changes', - })} - - - - - - {i18n.translate('advancedSettings.form.saveButtonLabel', { - defaultMessage: 'Save changes', - })} - - - - + + {i18n.translate('advancedSettings.form.cancelButtonLabel', { + defaultMessage: 'Cancel changes', + })} + + + + + + {i18n.translate('advancedSettings.form.saveButtonLabel', { + defaultMessage: 'Save changes', + })} + +
From c90cfe208d790c3816e9d4d8cdc21307882e76ed Mon Sep 17 00:00:00 2001 From: Brian Seeders Date: Mon, 2 Mar 2020 15:04:27 -0500 Subject: [PATCH 027/120] [CI] Pipeline refactoring (#56447) --- .ci/Jenkinsfile_coverage | 170 ++++++++++----------- .ci/Jenkinsfile_flaky | 81 +++++----- .ci/es-snapshots/Jenkinsfile_build_es | 2 +- .ci/es-snapshots/Jenkinsfile_verify_es | 79 +++++----- Jenkinsfile | 108 ++++++------- packages/kbn-test/src/junit_report_path.ts | 4 +- test/scripts/jenkins_test_setup_oss.sh | 2 +- test/scripts/jenkins_test_setup_xpack.sh | 2 +- vars/agentInfo.groovy | 4 +- vars/catchErrors.groovy | 8 + vars/githubPr.groovy | 4 +- vars/kibanaPipeline.groovy | 164 +++++--------------- vars/retryWithDelay.groovy | 4 +- vars/retryable.groovy | 2 +- vars/workers.groovy | 147 ++++++++++++++++++ 15 files changed, 406 insertions(+), 375 deletions(-) create mode 100644 vars/catchErrors.groovy create mode 100644 vars/workers.groovy diff --git a/.ci/Jenkinsfile_coverage b/.ci/Jenkinsfile_coverage index fa1e141be93eaa..6b8dc31bab34ed 100644 --- a/.ci/Jenkinsfile_coverage +++ b/.ci/Jenkinsfile_coverage @@ -3,99 +3,91 @@ library 'kibana-pipeline-library' kibanaLibrary.load() // load from the Jenkins instance -stage("Kibana Pipeline") { // This stage is just here to help the BlueOcean UI a little bit - timeout(time: 180, unit: 'MINUTES') { - timestamps { - ansiColor('xterm') { - catchError { +kibanaPipeline(timeoutMinutes: 180) { + catchErrors { + withEnv([ + 'CODE_COVERAGE=1', // Needed for multiple ci scripts, such as remote.ts, test/scripts/*.sh, schema.js, etc. + ]) { + parallel([ + 'kibana-intake-agent': workers.intake('kibana-intake', './test/scripts/jenkins_unit.sh'), + 'x-pack-intake-agent': { withEnv([ - 'CODE_COVERAGE=1', // Needed for multiple ci scripts, such as remote.ts, test/scripts/*.sh, schema.js, etc. + 'NODE_ENV=test' // Needed for jest tests only ]) { - parallel([ - 'kibana-intake-agent': { - kibanaPipeline.intakeWorker('kibana-intake', './test/scripts/jenkins_unit.sh')() - }, - 'x-pack-intake-agent': { - withEnv([ - 'NODE_ENV=test' // Needed for jest tests only - ]) { - kibanaPipeline.intakeWorker('x-pack-intake', './test/scripts/jenkins_xpack.sh')() - } - }, - 'kibana-oss-agent': kibanaPipeline.withWorkers('kibana-oss-tests', { kibanaPipeline.buildOss() }, [ - 'oss-ciGroup1': kibanaPipeline.getOssCiGroupWorker(1), - 'oss-ciGroup2': kibanaPipeline.getOssCiGroupWorker(2), - 'oss-ciGroup3': kibanaPipeline.getOssCiGroupWorker(3), - 'oss-ciGroup4': kibanaPipeline.getOssCiGroupWorker(4), - 'oss-ciGroup5': kibanaPipeline.getOssCiGroupWorker(5), - 'oss-ciGroup6': kibanaPipeline.getOssCiGroupWorker(6), - 'oss-ciGroup7': kibanaPipeline.getOssCiGroupWorker(7), - 'oss-ciGroup8': kibanaPipeline.getOssCiGroupWorker(8), - 'oss-ciGroup9': kibanaPipeline.getOssCiGroupWorker(9), - 'oss-ciGroup10': kibanaPipeline.getOssCiGroupWorker(10), - 'oss-ciGroup11': kibanaPipeline.getOssCiGroupWorker(11), - 'oss-ciGroup12': kibanaPipeline.getOssCiGroupWorker(12), - ]), - 'kibana-xpack-agent': kibanaPipeline.withWorkers('kibana-xpack-tests', { kibanaPipeline.buildXpack() }, [ - 'xpack-ciGroup1': kibanaPipeline.getXpackCiGroupWorker(1), - 'xpack-ciGroup2': kibanaPipeline.getXpackCiGroupWorker(2), - 'xpack-ciGroup3': kibanaPipeline.getXpackCiGroupWorker(3), - 'xpack-ciGroup4': kibanaPipeline.getXpackCiGroupWorker(4), - 'xpack-ciGroup5': kibanaPipeline.getXpackCiGroupWorker(5), - 'xpack-ciGroup6': kibanaPipeline.getXpackCiGroupWorker(6), - 'xpack-ciGroup7': kibanaPipeline.getXpackCiGroupWorker(7), - 'xpack-ciGroup8': kibanaPipeline.getXpackCiGroupWorker(8), - 'xpack-ciGroup9': kibanaPipeline.getXpackCiGroupWorker(9), - 'xpack-ciGroup10': kibanaPipeline.getXpackCiGroupWorker(10), - ]), - ]) - kibanaPipeline.jobRunner('tests-l', false) { - kibanaPipeline.downloadCoverageArtifacts() - kibanaPipeline.bash( - ''' - # bootstrap from x-pack folder - source src/dev/ci_setup/setup_env.sh - cd x-pack - yarn kbn bootstrap --prefer-offline - cd .. - # extract archives - mkdir -p /tmp/extracted_coverage - echo extracting intakes - tar -xzf /tmp/downloaded_coverage/coverage/kibana-intake/kibana-coverage.tar.gz -C /tmp/extracted_coverage - tar -xzf /tmp/downloaded_coverage/coverage/x-pack-intake/kibana-coverage.tar.gz -C /tmp/extracted_coverage - echo extracting kibana-oss-tests - tar -xzf /tmp/downloaded_coverage/coverage/kibana-oss-tests/kibana-coverage.tar.gz -C /tmp/extracted_coverage - echo extracting kibana-xpack-tests - tar -xzf /tmp/downloaded_coverage/coverage/kibana-xpack-tests/kibana-coverage.tar.gz -C /tmp/extracted_coverage - # replace path in json files to have valid html report - pwd=$(pwd) - du -sh /tmp/extracted_coverage/target/kibana-coverage/ - echo replacing path in json files - for i in {1..9}; do - sed -i "s|/dev/shm/workspace/kibana|$pwd|g" /tmp/extracted_coverage/target/kibana-coverage/functional/${i}*.json & - done - wait - # merge oss & x-pack reports - echo merging coverage reports - yarn nyc report --temp-dir /tmp/extracted_coverage/target/kibana-coverage/jest --report-dir target/kibana-coverage/jest-combined --reporter=html --reporter=json-summary - yarn nyc report --temp-dir /tmp/extracted_coverage/target/kibana-coverage/functional --report-dir target/kibana-coverage/functional-combined --reporter=html --reporter=json-summary - echo copy mocha reports - mkdir -p target/kibana-coverage/mocha-combined - cp -r /tmp/extracted_coverage/target/kibana-coverage/mocha target/kibana-coverage/mocha-combined - ''', - "run `yarn kbn bootstrap && merge coverage`" - ) - sh 'tar -czf kibana-jest-coverage.tar.gz target/kibana-coverage/jest-combined/*' - kibanaPipeline.uploadCoverageArtifacts("coverage/jest-combined", 'kibana-jest-coverage.tar.gz') - sh 'tar -czf kibana-functional-coverage.tar.gz target/kibana-coverage/functional-combined/*' - kibanaPipeline.uploadCoverageArtifacts("coverage/functional-combined", 'kibana-functional-coverage.tar.gz') - sh 'tar -czf kibana-mocha-coverage.tar.gz target/kibana-coverage/mocha-combined/*' - kibanaPipeline.uploadCoverageArtifacts("coverage/mocha-combined", 'kibana-mocha-coverage.tar.gz') - } + workers.intake('x-pack-intake', './test/scripts/jenkins_xpack.sh')() } - } - kibanaPipeline.sendMail() + }, + 'kibana-oss-agent': workers.functional('kibana-oss-tests', { kibanaPipeline.buildOss() }, [ + 'oss-ciGroup1': kibanaPipeline.ossCiGroupProcess(1), + 'oss-ciGroup2': kibanaPipeline.ossCiGroupProcess(2), + 'oss-ciGroup3': kibanaPipeline.ossCiGroupProcess(3), + 'oss-ciGroup4': kibanaPipeline.ossCiGroupProcess(4), + 'oss-ciGroup5': kibanaPipeline.ossCiGroupProcess(5), + 'oss-ciGroup6': kibanaPipeline.ossCiGroupProcess(6), + 'oss-ciGroup7': kibanaPipeline.ossCiGroupProcess(7), + 'oss-ciGroup8': kibanaPipeline.ossCiGroupProcess(8), + 'oss-ciGroup9': kibanaPipeline.ossCiGroupProcess(9), + 'oss-ciGroup10': kibanaPipeline.ossCiGroupProcess(10), + 'oss-ciGroup11': kibanaPipeline.ossCiGroupProcess(11), + 'oss-ciGroup12': kibanaPipeline.ossCiGroupProcess(12), + ]), + 'kibana-xpack-agent': workers.functional('kibana-xpack-tests', { kibanaPipeline.buildXpack() }, [ + 'xpack-ciGroup1': kibanaPipeline.xpackCiGroupProcess(1), + 'xpack-ciGroup2': kibanaPipeline.xpackCiGroupProcess(2), + 'xpack-ciGroup3': kibanaPipeline.xpackCiGroupProcess(3), + 'xpack-ciGroup4': kibanaPipeline.xpackCiGroupProcess(4), + 'xpack-ciGroup5': kibanaPipeline.xpackCiGroupProcess(5), + 'xpack-ciGroup6': kibanaPipeline.xpackCiGroupProcess(6), + 'xpack-ciGroup7': kibanaPipeline.xpackCiGroupProcess(7), + 'xpack-ciGroup8': kibanaPipeline.xpackCiGroupProcess(8), + 'xpack-ciGroup9': kibanaPipeline.xpackCiGroupProcess(9), + 'xpack-ciGroup10': kibanaPipeline.xpackCiGroupProcess(10), + ]), + ]) + workers.base(name: 'coverage-worker', label: 'tests-l', ramDisk: false, bootstrapped: false) { + kibanaPipeline.downloadCoverageArtifacts() + kibanaPipeline.bash( + ''' + # bootstrap from x-pack folder + source src/dev/ci_setup/setup_env.sh + cd x-pack + yarn kbn bootstrap --prefer-offline + cd .. + # extract archives + mkdir -p /tmp/extracted_coverage + echo extracting intakes + tar -xzf /tmp/downloaded_coverage/coverage/kibana-intake/kibana-coverage.tar.gz -C /tmp/extracted_coverage + tar -xzf /tmp/downloaded_coverage/coverage/x-pack-intake/kibana-coverage.tar.gz -C /tmp/extracted_coverage + echo extracting kibana-oss-tests + tar -xzf /tmp/downloaded_coverage/coverage/kibana-oss-tests/kibana-coverage.tar.gz -C /tmp/extracted_coverage + echo extracting kibana-xpack-tests + tar -xzf /tmp/downloaded_coverage/coverage/kibana-xpack-tests/kibana-coverage.tar.gz -C /tmp/extracted_coverage + # replace path in json files to have valid html report + pwd=$(pwd) + du -sh /tmp/extracted_coverage/target/kibana-coverage/ + echo replacing path in json files + for i in {1..9}; do + sed -i "s|/dev/shm/workspace/kibana|$pwd|g" /tmp/extracted_coverage/target/kibana-coverage/functional/${i}*.json & + done + wait + # merge oss & x-pack reports + echo merging coverage reports + yarn nyc report --temp-dir /tmp/extracted_coverage/target/kibana-coverage/jest --report-dir target/kibana-coverage/jest-combined --reporter=html --reporter=json-summary + yarn nyc report --temp-dir /tmp/extracted_coverage/target/kibana-coverage/functional --report-dir target/kibana-coverage/functional-combined --reporter=html --reporter=json-summary + echo copy mocha reports + mkdir -p target/kibana-coverage/mocha-combined + cp -r /tmp/extracted_coverage/target/kibana-coverage/mocha target/kibana-coverage/mocha-combined + ''', + "run `yarn kbn bootstrap && merge coverage`" + ) + sh 'tar -czf kibana-jest-coverage.tar.gz target/kibana-coverage/jest-combined/*' + kibanaPipeline.uploadCoverageArtifacts("coverage/jest-combined", 'kibana-jest-coverage.tar.gz') + sh 'tar -czf kibana-functional-coverage.tar.gz target/kibana-coverage/functional-combined/*' + kibanaPipeline.uploadCoverageArtifacts("coverage/functional-combined", 'kibana-functional-coverage.tar.gz') + sh 'tar -czf kibana-mocha-coverage.tar.gz target/kibana-coverage/mocha-combined/*' + kibanaPipeline.uploadCoverageArtifacts("coverage/mocha-combined", 'kibana-mocha-coverage.tar.gz') } } } + kibanaPipeline.sendMail() } diff --git a/.ci/Jenkinsfile_flaky b/.ci/Jenkinsfile_flaky index f702405aad69e3..befb8d259b5b63 100644 --- a/.ci/Jenkinsfile_flaky +++ b/.ci/Jenkinsfile_flaky @@ -21,53 +21,47 @@ def workerFailures = [] currentBuild.displayName += trunc(" ${params.GITHUB_OWNER}:${params.branch_specifier}", 24) currentBuild.description = "${params.CI_GROUP}
Agents: ${AGENT_COUNT}
Executions: ${params.NUMBER_EXECUTIONS}" -stage("Kibana Pipeline") { - timeout(time: 180, unit: 'MINUTES') { - timestamps { - ansiColor('xterm') { - def agents = [:] - for(def agentNumber = 1; agentNumber <= AGENT_COUNT; agentNumber++) { - def agentNumberInside = agentNumber - def agentExecutions = floor(EXECUTIONS/AGENT_COUNT) + (agentNumber <= EXECUTIONS%AGENT_COUNT ? 1 : 0) - agents["agent-${agentNumber}"] = { - catchError { - print "Agent ${agentNumberInside} - ${agentExecutions} executions" - - kibanaPipeline.withWorkers('flaky-test-runner', { - if (NEED_BUILD) { - if (!IS_XPACK) { - kibanaPipeline.buildOss() - if (CI_GROUP == '1') { - runbld("./test/scripts/jenkins_build_kbn_tp_sample_panel_action.sh", "Build kbn tp sample panel action for ciGroup1") - } - } else { - kibanaPipeline.buildXpack() - } - } - }, getWorkerMap(agentNumberInside, agentExecutions, worker, workerFailures))() +kibanaPipeline(timeoutMinutes: 180) { + def agents = [:] + for(def agentNumber = 1; agentNumber <= AGENT_COUNT; agentNumber++) { + def agentNumberInside = agentNumber + def agentExecutions = floor(EXECUTIONS/AGENT_COUNT) + (agentNumber <= EXECUTIONS%AGENT_COUNT ? 1 : 0) + agents["agent-${agentNumber}"] = { + catchErrors { + print "Agent ${agentNumberInside} - ${agentExecutions} executions" + + workers.functional('flaky-test-runner', { + if (NEED_BUILD) { + if (!IS_XPACK) { + kibanaPipeline.buildOss() + if (CI_GROUP == '1') { + runbld("./test/scripts/jenkins_build_kbn_tp_sample_panel_action.sh", "Build kbn tp sample panel action for ciGroup1") + } + } else { + kibanaPipeline.buildXpack() } } - } + }, getWorkerMap(agentNumberInside, agentExecutions, worker, workerFailures))() + } + } + } - parallel(agents) + parallel(agents) - currentBuild.description += ", Failures: ${workerFailures.size()}" + currentBuild.description += ", Failures: ${workerFailures.size()}" - if (workerFailures.size() > 0) { - print "There were ${workerFailures.size()} test suite failures." - print "The executions that failed were:" - print workerFailures.join("\n") - print "Please check 'Test Result' and 'Pipeline Steps' pages for more info" - } - } - } + if (workerFailures.size() > 0) { + print "There were ${workerFailures.size()} test suite failures." + print "The executions that failed were:" + print workerFailures.join("\n") + print "Please check 'Test Result' and 'Pipeline Steps' pages for more info" } } def getWorkerFromParams(isXpack, job, ciGroup) { if (!isXpack) { if (job == 'serverMocha') { - return kibanaPipeline.getPostBuildWorker('serverMocha', { + return kibanaPipeline.functionalTestProcess('serverMocha', { kibanaPipeline.bash( """ source src/dev/ci_setup/setup_env.sh @@ -77,20 +71,20 @@ def getWorkerFromParams(isXpack, job, ciGroup) { ) }) } else if (job == 'firefoxSmoke') { - return kibanaPipeline.getPostBuildWorker('firefoxSmoke', { runbld('./test/scripts/jenkins_firefox_smoke.sh', 'Execute kibana-firefoxSmoke') }) + return kibanaPipeline.functionalTestProcess('firefoxSmoke', './test/scripts/jenkins_firefox_smoke.sh') } else if(job == 'visualRegression') { - return kibanaPipeline.getPostBuildWorker('visualRegression', { runbld('./test/scripts/jenkins_visual_regression.sh', 'Execute kibana-visualRegression') }) + return kibanaPipeline.functionalTestProcess('visualRegression', './test/scripts/jenkins_visual_regression.sh') } else { - return kibanaPipeline.getOssCiGroupWorker(ciGroup) + return kibanaPipeline.ossCiGroupProcess(ciGroup) } } if (job == 'firefoxSmoke') { - return kibanaPipeline.getPostBuildWorker('xpack-firefoxSmoke', { runbld('./test/scripts/jenkins_xpack_firefox_smoke.sh', 'Execute xpack-firefoxSmoke') }) + return kibanaPipeline.functionalTestProcess('xpack-firefoxSmoke', './test/scripts/jenkins_xpack_firefox_smoke.sh') } else if(job == 'visualRegression') { - return kibanaPipeline.getPostBuildWorker('xpack-visualRegression', { runbld('./test/scripts/jenkins_xpack_visual_regression.sh', 'Execute xpack-visualRegression') }) + return kibanaPipeline.functionalTestProcess('xpack-visualRegression', './test/scripts/jenkins_xpack_visual_regression.sh') } else { - return kibanaPipeline.getXpackCiGroupWorker(ciGroup) + return kibanaPipeline.xpackCiGroupProcess(ciGroup) } } @@ -105,10 +99,9 @@ def getWorkerMap(agentNumber, numberOfExecutions, worker, workerFailures, maxWor for(def j = 0; j < workerExecutions; j++) { print "Execute agent-${agentNumber} worker-${workerNumber}: ${j}" withEnv([ - "JOB=agent-${agentNumber}-worker-${workerNumber}-${j}", "REMOVE_KIBANA_INSTALL_DIR=1", ]) { - catchError { + catchErrors { try { worker(workerNumber) } catch (ex) { diff --git a/.ci/es-snapshots/Jenkinsfile_build_es b/.ci/es-snapshots/Jenkinsfile_build_es index ad0ad54275e12d..a00bcb3bbc9465 100644 --- a/.ci/es-snapshots/Jenkinsfile_build_es +++ b/.ci/es-snapshots/Jenkinsfile_build_es @@ -26,7 +26,7 @@ timeout(time: 120, unit: 'MINUTES') { timestamps { ansiColor('xterm') { node('linux && immutable') { - catchError { + catchErrors { def VERSION def SNAPSHOT_ID def DESTINATION diff --git a/.ci/es-snapshots/Jenkinsfile_verify_es b/.ci/es-snapshots/Jenkinsfile_verify_es index 30d52a56547bd2..ce472a404c0538 100644 --- a/.ci/es-snapshots/Jenkinsfile_verify_es +++ b/.ci/es-snapshots/Jenkinsfile_verify_es @@ -19,50 +19,45 @@ currentBuild.description = "ES: ${SNAPSHOT_VERSION}
Kibana: ${params.branch def SNAPSHOT_MANIFEST = "https://storage.googleapis.com/kibana-ci-es-snapshots-daily/${SNAPSHOT_VERSION}/archives/${SNAPSHOT_ID}/manifest.json" -timeout(time: 120, unit: 'MINUTES') { - timestamps { - ansiColor('xterm') { - catchError { - withEnv(["ES_SNAPSHOT_MANIFEST=${SNAPSHOT_MANIFEST}"]) { - parallel([ - // TODO we just need to run integration tests from intake? - 'kibana-intake-agent': kibanaPipeline.intakeWorker('kibana-intake', './test/scripts/jenkins_unit.sh'), - 'x-pack-intake-agent': kibanaPipeline.intakeWorker('x-pack-intake', './test/scripts/jenkins_xpack.sh'), - 'kibana-oss-agent': kibanaPipeline.withWorkers('kibana-oss-tests', { kibanaPipeline.buildOss() }, [ - 'oss-ciGroup1': kibanaPipeline.getOssCiGroupWorker(1), - 'oss-ciGroup2': kibanaPipeline.getOssCiGroupWorker(2), - 'oss-ciGroup3': kibanaPipeline.getOssCiGroupWorker(3), - 'oss-ciGroup4': kibanaPipeline.getOssCiGroupWorker(4), - 'oss-ciGroup5': kibanaPipeline.getOssCiGroupWorker(5), - 'oss-ciGroup6': kibanaPipeline.getOssCiGroupWorker(6), - 'oss-ciGroup7': kibanaPipeline.getOssCiGroupWorker(7), - 'oss-ciGroup8': kibanaPipeline.getOssCiGroupWorker(8), - 'oss-ciGroup9': kibanaPipeline.getOssCiGroupWorker(9), - 'oss-ciGroup10': kibanaPipeline.getOssCiGroupWorker(10), - 'oss-ciGroup11': kibanaPipeline.getOssCiGroupWorker(11), - 'oss-ciGroup12': kibanaPipeline.getOssCiGroupWorker(12), - ]), - 'kibana-xpack-agent': kibanaPipeline.withWorkers('kibana-xpack-tests', { kibanaPipeline.buildXpack() }, [ - 'xpack-ciGroup1': kibanaPipeline.getXpackCiGroupWorker(1), - 'xpack-ciGroup2': kibanaPipeline.getXpackCiGroupWorker(2), - 'xpack-ciGroup3': kibanaPipeline.getXpackCiGroupWorker(3), - 'xpack-ciGroup4': kibanaPipeline.getXpackCiGroupWorker(4), - 'xpack-ciGroup5': kibanaPipeline.getXpackCiGroupWorker(5), - 'xpack-ciGroup6': kibanaPipeline.getXpackCiGroupWorker(6), - 'xpack-ciGroup7': kibanaPipeline.getXpackCiGroupWorker(7), - 'xpack-ciGroup8': kibanaPipeline.getXpackCiGroupWorker(8), - 'xpack-ciGroup9': kibanaPipeline.getXpackCiGroupWorker(9), - 'xpack-ciGroup10': kibanaPipeline.getXpackCiGroupWorker(10), - ]), - ]) - } - - promoteSnapshot(SNAPSHOT_VERSION, SNAPSHOT_ID) - } - - kibanaPipeline.sendMail() +kibanaPipeline(timeoutMinutes: 120) { + catchErrors { + withEnv(["ES_SNAPSHOT_MANIFEST=${SNAPSHOT_MANIFEST}"]) { + parallel([ + 'kibana-intake-agent': workers.intake('kibana-intake', './test/scripts/jenkins_unit.sh'), + 'x-pack-intake-agent': workers.intake('x-pack-intake', './test/scripts/jenkins_xpack.sh'), + 'kibana-oss-agent': workers.functional('kibana-oss-tests', { kibanaPipeline.buildOss() }, [ + 'oss-ciGroup1': kibanaPipeline.ossCiGroupProcess(1), + 'oss-ciGroup2': kibanaPipeline.ossCiGroupProcess(2), + 'oss-ciGroup3': kibanaPipeline.ossCiGroupProcess(3), + 'oss-ciGroup4': kibanaPipeline.ossCiGroupProcess(4), + 'oss-ciGroup5': kibanaPipeline.ossCiGroupProcess(5), + 'oss-ciGroup6': kibanaPipeline.ossCiGroupProcess(6), + 'oss-ciGroup7': kibanaPipeline.ossCiGroupProcess(7), + 'oss-ciGroup8': kibanaPipeline.ossCiGroupProcess(8), + 'oss-ciGroup9': kibanaPipeline.ossCiGroupProcess(9), + 'oss-ciGroup10': kibanaPipeline.ossCiGroupProcess(10), + 'oss-ciGroup11': kibanaPipeline.ossCiGroupProcess(11), + 'oss-ciGroup12': kibanaPipeline.ossCiGroupProcess(12), + ]), + 'kibana-xpack-agent': workers.functional('kibana-xpack-tests', { kibanaPipeline.buildXpack() }, [ + 'xpack-ciGroup1': kibanaPipeline.xpackCiGroupProcess(1), + 'xpack-ciGroup2': kibanaPipeline.xpackCiGroupProcess(2), + 'xpack-ciGroup3': kibanaPipeline.xpackCiGroupProcess(3), + 'xpack-ciGroup4': kibanaPipeline.xpackCiGroupProcess(4), + 'xpack-ciGroup5': kibanaPipeline.xpackCiGroupProcess(5), + 'xpack-ciGroup6': kibanaPipeline.xpackCiGroupProcess(6), + 'xpack-ciGroup7': kibanaPipeline.xpackCiGroupProcess(7), + 'xpack-ciGroup8': kibanaPipeline.xpackCiGroupProcess(8), + 'xpack-ciGroup9': kibanaPipeline.xpackCiGroupProcess(9), + 'xpack-ciGroup10': kibanaPipeline.xpackCiGroupProcess(10), + ]), + ]) } + + promoteSnapshot(SNAPSHOT_VERSION, SNAPSHOT_ID) } + + kibanaPipeline.sendMail() } def promoteSnapshot(snapshotVersion, snapshotId) { diff --git a/Jenkinsfile b/Jenkinsfile index 1b4350d5b91e90..85502369b07be8 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -3,71 +3,49 @@ library 'kibana-pipeline-library' kibanaLibrary.load() -stage("Kibana Pipeline") { // This stage is just here to help the BlueOcean UI a little bit - timeout(time: 135, unit: 'MINUTES') { - timestamps { - ansiColor('xterm') { - githubPr.withDefaultPrComments { - catchError { - retryable.enable() - parallel([ - 'kibana-intake-agent': kibanaPipeline.intakeWorker('kibana-intake', './test/scripts/jenkins_unit.sh'), - 'x-pack-intake-agent': kibanaPipeline.intakeWorker('x-pack-intake', './test/scripts/jenkins_xpack.sh'), - 'kibana-oss-agent': kibanaPipeline.withWorkers('kibana-oss-tests', { kibanaPipeline.buildOss() }, [ - // 'oss-firefoxSmoke': kibanaPipeline.getPostBuildWorker('firefoxSmoke', { - // retryable('kibana-firefoxSmoke') { - // runbld('./test/scripts/jenkins_firefox_smoke.sh', 'Execute kibana-firefoxSmoke') - // } - // }), - 'oss-ciGroup1': kibanaPipeline.getOssCiGroupWorker(1), - 'oss-ciGroup2': kibanaPipeline.getOssCiGroupWorker(2), - 'oss-ciGroup3': kibanaPipeline.getOssCiGroupWorker(3), - 'oss-ciGroup4': kibanaPipeline.getOssCiGroupWorker(4), - 'oss-ciGroup5': kibanaPipeline.getOssCiGroupWorker(5), - 'oss-ciGroup6': kibanaPipeline.getOssCiGroupWorker(6), - 'oss-ciGroup7': kibanaPipeline.getOssCiGroupWorker(7), - 'oss-ciGroup8': kibanaPipeline.getOssCiGroupWorker(8), - 'oss-ciGroup9': kibanaPipeline.getOssCiGroupWorker(9), - 'oss-ciGroup10': kibanaPipeline.getOssCiGroupWorker(10), - 'oss-ciGroup11': kibanaPipeline.getOssCiGroupWorker(11), - 'oss-ciGroup12': kibanaPipeline.getOssCiGroupWorker(12), - 'oss-accessibility': kibanaPipeline.getPostBuildWorker('accessibility', { - retryable('kibana-accessibility') { - runbld('./test/scripts/jenkins_accessibility.sh', 'Execute kibana-accessibility') - } - }), - // 'oss-visualRegression': kibanaPipeline.getPostBuildWorker('visualRegression', { runbld('./test/scripts/jenkins_visual_regression.sh', 'Execute kibana-visualRegression') }), - ]), - 'kibana-xpack-agent': kibanaPipeline.withWorkers('kibana-xpack-tests', { kibanaPipeline.buildXpack() }, [ - // 'xpack-firefoxSmoke': kibanaPipeline.getPostBuildWorker('xpack-firefoxSmoke', { - // retryable('xpack-firefoxSmoke') { - // runbld('./test/scripts/jenkins_xpack_firefox_smoke.sh', 'Execute xpack-firefoxSmoke') - // } - // }), - 'xpack-ciGroup1': kibanaPipeline.getXpackCiGroupWorker(1), - 'xpack-ciGroup2': kibanaPipeline.getXpackCiGroupWorker(2), - 'xpack-ciGroup3': kibanaPipeline.getXpackCiGroupWorker(3), - 'xpack-ciGroup4': kibanaPipeline.getXpackCiGroupWorker(4), - 'xpack-ciGroup5': kibanaPipeline.getXpackCiGroupWorker(5), - 'xpack-ciGroup6': kibanaPipeline.getXpackCiGroupWorker(6), - 'xpack-ciGroup7': kibanaPipeline.getXpackCiGroupWorker(7), - 'xpack-ciGroup8': kibanaPipeline.getXpackCiGroupWorker(8), - 'xpack-ciGroup9': kibanaPipeline.getXpackCiGroupWorker(9), - 'xpack-ciGroup10': kibanaPipeline.getXpackCiGroupWorker(10), - 'xpack-accessibility': kibanaPipeline.getPostBuildWorker('xpack-accessibility', { - retryable('xpack-accessibility') { - runbld('./test/scripts/jenkins_xpack_accessibility.sh', 'Execute xpack-accessibility') - } - }), - // 'xpack-visualRegression': kibanaPipeline.getPostBuildWorker('xpack-visualRegression', { runbld('./test/scripts/jenkins_xpack_visual_regression.sh', 'Execute xpack-visualRegression') }), - ]), - ]) - } - } - - retryable.printFlakyFailures() - kibanaPipeline.sendMail() - } +kibanaPipeline(timeoutMinutes: 135) { + githubPr.withDefaultPrComments { + catchError { + retryable.enable() + parallel([ + 'kibana-intake-agent': workers.intake('kibana-intake', './test/scripts/jenkins_unit.sh'), + 'x-pack-intake-agent': workers.intake('x-pack-intake', './test/scripts/jenkins_xpack.sh'), + 'kibana-oss-agent': workers.functional('kibana-oss-tests', { kibanaPipeline.buildOss() }, [ + // 'oss-firefoxSmoke': kibanaPipeline.functionalTestProcess('kibana-firefoxSmoke', './test/scripts/jenkins_firefox_smoke.sh'), + 'oss-ciGroup1': kibanaPipeline.ossCiGroupProcess(1), + 'oss-ciGroup2': kibanaPipeline.ossCiGroupProcess(2), + 'oss-ciGroup3': kibanaPipeline.ossCiGroupProcess(3), + 'oss-ciGroup4': kibanaPipeline.ossCiGroupProcess(4), + 'oss-ciGroup5': kibanaPipeline.ossCiGroupProcess(5), + 'oss-ciGroup6': kibanaPipeline.ossCiGroupProcess(6), + 'oss-ciGroup7': kibanaPipeline.ossCiGroupProcess(7), + 'oss-ciGroup8': kibanaPipeline.ossCiGroupProcess(8), + 'oss-ciGroup9': kibanaPipeline.ossCiGroupProcess(9), + 'oss-ciGroup10': kibanaPipeline.ossCiGroupProcess(10), + 'oss-ciGroup11': kibanaPipeline.ossCiGroupProcess(11), + 'oss-ciGroup12': kibanaPipeline.ossCiGroupProcess(12), + 'oss-accessibility': kibanaPipeline.functionalTestProcess('kibana-accessibility', './test/scripts/jenkins_accessibility.sh'), + // 'oss-visualRegression': kibanaPipeline.functionalTestProcess('visualRegression', './test/scripts/jenkins_visual_regression.sh'), + ]), + 'kibana-xpack-agent': workers.functional('kibana-xpack-tests', { kibanaPipeline.buildXpack() }, [ + // 'xpack-firefoxSmoke': kibanaPipeline.functionalTestProcess('xpack-firefoxSmoke', './test/scripts/jenkins_xpack_firefox_smoke.sh'), + 'xpack-ciGroup1': kibanaPipeline.xpackCiGroupProcess(1), + 'xpack-ciGroup2': kibanaPipeline.xpackCiGroupProcess(2), + 'xpack-ciGroup3': kibanaPipeline.xpackCiGroupProcess(3), + 'xpack-ciGroup4': kibanaPipeline.xpackCiGroupProcess(4), + 'xpack-ciGroup5': kibanaPipeline.xpackCiGroupProcess(5), + 'xpack-ciGroup6': kibanaPipeline.xpackCiGroupProcess(6), + 'xpack-ciGroup7': kibanaPipeline.xpackCiGroupProcess(7), + 'xpack-ciGroup8': kibanaPipeline.xpackCiGroupProcess(8), + 'xpack-ciGroup9': kibanaPipeline.xpackCiGroupProcess(9), + 'xpack-ciGroup10': kibanaPipeline.xpackCiGroupProcess(10), + 'xpack-accessibility': kibanaPipeline.functionalTestProcess('xpack-accessibility', './test/scripts/jenkins_xpack_accessibility.sh'), + // 'xpack-visualRegression': kibanaPipeline.functionalTestProcess('xpack-visualRegression', './test/scripts/jenkins_xpack_visual_regression.sh'), + ]), + ]) } } + + retryable.printFlakyFailures() + kibanaPipeline.sendMail() } diff --git a/packages/kbn-test/src/junit_report_path.ts b/packages/kbn-test/src/junit_report_path.ts index 11eaf3d2b14a5e..d46c9455dcff0a 100644 --- a/packages/kbn-test/src/junit_report_path.ts +++ b/packages/kbn-test/src/junit_report_path.ts @@ -20,7 +20,9 @@ import { resolve } from 'path'; const job = process.env.JOB ? `job-${process.env.JOB}-` : ''; -const num = process.env.CI_WORKER_NUMBER ? `worker-${process.env.CI_WORKER_NUMBER}-` : ''; +const num = process.env.CI_PARALLEL_PROCESS_NUMBER + ? `worker-${process.env.CI_PARALLEL_PROCESS_NUMBER}-` + : ''; export function makeJunitReportPath(rootDirectory: string, reportName: string) { return resolve( diff --git a/test/scripts/jenkins_test_setup_oss.sh b/test/scripts/jenkins_test_setup_oss.sh index 9e68272053221f..7bbb8675263843 100644 --- a/test/scripts/jenkins_test_setup_oss.sh +++ b/test/scripts/jenkins_test_setup_oss.sh @@ -4,7 +4,7 @@ source test/scripts/jenkins_test_setup.sh if [[ -z "$CODE_COVERAGE" ]] ; then installDir="$(realpath $PARENT_DIR/kibana/build/oss/kibana-*-SNAPSHOT-linux-x86_64)" - destDir=${installDir}-${CI_WORKER_NUMBER} + destDir=${installDir}-${CI_PARALLEL_PROCESS_NUMBER} cp -R "$installDir" "$destDir" export KIBANA_INSTALL_DIR="$destDir" diff --git a/test/scripts/jenkins_test_setup_xpack.sh b/test/scripts/jenkins_test_setup_xpack.sh index 76fc7cfe6c876a..a72e9749ebbd5b 100644 --- a/test/scripts/jenkins_test_setup_xpack.sh +++ b/test/scripts/jenkins_test_setup_xpack.sh @@ -4,7 +4,7 @@ source test/scripts/jenkins_test_setup.sh if [[ -z "$CODE_COVERAGE" ]]; then installDir="$PARENT_DIR/install/kibana" - destDir="${installDir}-${CI_WORKER_NUMBER}" + destDir="${installDir}-${CI_PARALLEL_PROCESS_NUMBER}" cp -R "$installDir" "$destDir" export KIBANA_INSTALL_DIR="$destDir" diff --git a/vars/agentInfo.groovy b/vars/agentInfo.groovy index b53ed23f81ff0c..166a86c1692616 100644 --- a/vars/agentInfo.groovy +++ b/vars/agentInfo.groovy @@ -1,5 +1,5 @@ def print() { - try { + catchError(catchInterruptions: false, buildResult: null) { def startTime = sh(script: "date -d '-3 minutes' -Iseconds | sed s/+/%2B/", returnStdout: true).trim() def endTime = sh(script: "date -d '+1 hour 30 minutes' -Iseconds | sed s/+/%2B/", returnStdout: true).trim() @@ -34,8 +34,6 @@ def print() { echo 'SSH Command:' echo "ssh -F ssh_config \$(hostname --ip-address)" """, label: "Worker/Agent/Node debug links" - } catch(ex) { - print ex.toString() } } diff --git a/vars/catchErrors.groovy b/vars/catchErrors.groovy new file mode 100644 index 00000000000000..460a90b8ec0c04 --- /dev/null +++ b/vars/catchErrors.groovy @@ -0,0 +1,8 @@ +// Basically, this is a shortcut for catchError(catchInterruptions: false) {} +// By default, catchError will swallow aborts/timeouts, which we almost never want +def call(Map params = [:], Closure closure) { + params.catchInterruptions = false + return catchError(params, closure) +} + +return this diff --git a/vars/githubPr.groovy b/vars/githubPr.groovy index 91a4a76894d943..7759edbbf5bfc7 100644 --- a/vars/githubPr.groovy +++ b/vars/githubPr.groovy @@ -14,8 +14,8 @@ So, there is only ever one build status comment on a PR at any given time, the most recent one. */ def withDefaultPrComments(closure) { - catchError { - catchError { + catchErrors { + catchErrors { closure() } diff --git a/vars/kibanaPipeline.groovy b/vars/kibanaPipeline.groovy index dd2e626d1c860e..2b9b0eba38f465 100644 --- a/vars/kibanaPipeline.groovy +++ b/vars/kibanaPipeline.groovy @@ -1,92 +1,36 @@ -def withWorkers(machineName, preWorkerClosure = {}, workerClosures = [:]) { - return { - jobRunner('tests-xl', true) { - withGcsArtifactUpload(machineName, { - withPostBuildReporting { - doSetup() - preWorkerClosure() - - def nextWorker = 1 - def worker = { workerClosure -> - def workerNumber = nextWorker - nextWorker++ - - return { - // This delay helps smooth out CPU load caused by ES/Kibana instances starting up at the same time - def delay = (workerNumber-1)*20 - sleep(delay) - - workerClosure(workerNumber) - } - } - - def workers = [:] - workerClosures.each { workerName, workerClosure -> - workers[workerName] = worker(workerClosure) - } - - parallel(workers) - } - }) - } - } -} - -def withWorker(machineName, label, Closure closure) { - return { - jobRunner(label, false) { - withGcsArtifactUpload(machineName) { - withPostBuildReporting { - doSetup() - closure() - } - } - } - } -} - -def intakeWorker(jobName, String script) { - return withWorker(jobName, 'linux && immutable') { - withEnv([ - "JOB=${jobName}", - ]) { - runbld(script, "Execute ${jobName}") - } - } -} - def withPostBuildReporting(Closure closure) { try { closure() } finally { - catchError { + catchErrors { runErrorReporter() } - catchError { + catchErrors { runbld.junit() } - catchError { + catchErrors { publishJunit() } } } -def getPostBuildWorker(name, closure) { - return { workerNumber -> - def kibanaPort = "61${workerNumber}1" - def esPort = "61${workerNumber}2" - def esTransportPort = "61${workerNumber}3" +def functionalTestProcess(String name, Closure closure) { + return { processNumber -> + def kibanaPort = "61${processNumber}1" + def esPort = "61${processNumber}2" + def esTransportPort = "61${processNumber}3" withEnv([ - "CI_WORKER_NUMBER=${workerNumber}", + "CI_PARALLEL_PROCESS_NUMBER=${processNumber}", "TEST_KIBANA_HOST=localhost", "TEST_KIBANA_PORT=${kibanaPort}", "TEST_KIBANA_URL=http://elastic:changeme@localhost:${kibanaPort}", "TEST_ES_URL=http://elastic:changeme@localhost:${esPort}", "TEST_ES_TRANSPORT_PORT=${esTransportPort}", "IS_PIPELINE_JOB=1", + "JOB=${name}", "KBN_NP_PLUGINS_BUILT=true", ]) { closure() @@ -94,8 +38,16 @@ def getPostBuildWorker(name, closure) { } } -def getOssCiGroupWorker(ciGroup) { - return getPostBuildWorker("ciGroup" + ciGroup, { +def functionalTestProcess(String name, String script) { + return functionalTestProcess(name) { + retryable(name) { + runbld(script, "Execute ${name}") + } + } +} + +def ossCiGroupProcess(ciGroup) { + return functionalTestProcess("ciGroup" + ciGroup) { withEnv([ "CI_GROUP=${ciGroup}", "JOB=kibana-ciGroup${ciGroup}", @@ -104,11 +56,11 @@ def getOssCiGroupWorker(ciGroup) { runbld("./test/scripts/jenkins_ci_group.sh", "Execute kibana-ciGroup${ciGroup}") } } - }) + } } -def getXpackCiGroupWorker(ciGroup) { - return getPostBuildWorker("xpack-ciGroup" + ciGroup, { +def xpackCiGroupProcess(ciGroup) { + return functionalTestProcess("xpack-ciGroup" + ciGroup) { withEnv([ "CI_GROUP=${ciGroup}", "JOB=xpack-kibana-ciGroup${ciGroup}", @@ -117,56 +69,6 @@ def getXpackCiGroupWorker(ciGroup) { runbld("./test/scripts/jenkins_xpack_ci_group.sh", "Execute xpack-kibana-ciGroup${ciGroup}") } } - }) -} - -def jobRunner(label, useRamDisk, closure) { - node(label) { - agentInfo.print() - - if (useRamDisk) { - // Move to a temporary workspace, so that we can symlink the real workspace into /dev/shm - def originalWorkspace = env.WORKSPACE - ws('/tmp/workspace') { - sh( - script: """ - mkdir -p /dev/shm/workspace - mkdir -p '${originalWorkspace}' # create all of the directories leading up to the workspace, if they don't exist - rm --preserve-root -rf '${originalWorkspace}' # then remove just the workspace, just in case there's stuff in it - ln -s /dev/shm/workspace '${originalWorkspace}' - """, - label: "Move workspace to RAM - /dev/shm/workspace" - ) - } - } - - def scmVars - - // Try to clone from Github up to 8 times, waiting 15 secs between attempts - retryWithDelay(8, 15) { - scmVars = checkout scm - } - - withEnv([ - "CI=true", - "HOME=${env.JENKINS_HOME}", - "PR_SOURCE_BRANCH=${env.ghprbSourceBranch ?: ''}", - "PR_TARGET_BRANCH=${env.ghprbTargetBranch ?: ''}", - "PR_AUTHOR=${env.ghprbPullAuthorLogin ?: ''}", - "TEST_BROWSER_HEADLESS=1", - "GIT_BRANCH=${scmVars.GIT_BRANCH}", - ]) { - withCredentials([ - string(credentialsId: 'vault-addr', variable: 'VAULT_ADDR'), - string(credentialsId: 'vault-role-id', variable: 'VAULT_ROLE_ID'), - string(credentialsId: 'vault-secret-id', variable: 'VAULT_SECRET_ID'), - ]) { - // scm is configured to check out to the ./kibana directory - dir('kibana') { - closure() - } - } - } } } @@ -210,7 +112,7 @@ def withGcsArtifactUpload(workerName, closure) { try { closure() } finally { - catchError { + catchErrors { ARTIFACT_PATTERNS.each { pattern -> uploadGcsArtifact(uploadPrefix, pattern) } @@ -243,7 +145,7 @@ def sendMail() { } def sendInfraMail() { - catchError { + catchErrors { step([ $class: 'Mailer', notifyEveryUnstableBuild: true, @@ -254,7 +156,7 @@ def sendInfraMail() { } def sendKibanaMail() { - catchError { + catchErrors { def buildStatus = buildUtils.getBuildStatus() if(params.NOTIFY_ON_FAILURE && buildStatus != 'SUCCESS' && buildStatus != 'ABORTED') { emailext( @@ -299,4 +201,18 @@ def runErrorReporter() { ) } +def call(Map params = [:], Closure closure) { + def config = [timeoutMinutes: 135] + params + + stage("Kibana Pipeline") { + timeout(time: config.timeoutMinutes, unit: 'MINUTES') { + timestamps { + ansiColor('xterm') { + closure() + } + } + } + } +} + return this diff --git a/vars/retryWithDelay.groovy b/vars/retryWithDelay.groovy index 70d6f86a63ab2d..83fd94c6f2b1ec 100644 --- a/vars/retryWithDelay.groovy +++ b/vars/retryWithDelay.groovy @@ -2,7 +2,9 @@ def call(retryTimes, delaySecs, closure) { retry(retryTimes) { try { closure() - } catch (ex) { + } catch (org.jenkinsci.plugins.workflow.steps.FlowInterruptedException ex) { + throw ex // Immediately re-throw build abort exceptions, don't sleep first + } catch (Exception ex) { sleep delaySecs throw ex } diff --git a/vars/retryable.groovy b/vars/retryable.groovy index cc34024958aed4..ed84a00ece49de 100644 --- a/vars/retryable.groovy +++ b/vars/retryable.groovy @@ -27,7 +27,7 @@ def getFlakyFailures() { } def printFlakyFailures() { - catchError { + catchErrors { def failures = getFlakyFailures() if (failures && failures.size() > 0) { diff --git a/vars/workers.groovy b/vars/workers.groovy new file mode 100644 index 00000000000000..c5638f2624fe5d --- /dev/null +++ b/vars/workers.groovy @@ -0,0 +1,147 @@ +// "Workers" in this file will spin up an instance, do some setup etc depending on the configuration, and then execute some work that you define +// e.g. workers.base(name: 'my-worker') { sh "echo 'ready to execute some kibana scripts'" } + +/* + The base worker that all of the others use. Will clone the scm (assumed to be kibana), and run kibana bootstrap processes by default. + + Parameters: + label - gobld/agent label to use, e.g. 'linux && immutable' + ramDisk - Should the workspace be mounted in memory? Default: true + bootstrapped - If true, download kibana dependencies, run kbn bootstrap, etc. Default: true + name - Name of the worker for display purposes, filenames, etc. + scm - Jenkins scm configuration for checking out code. Use `null` to disable checkout. Default: inherited from job +*/ +def base(Map params, Closure closure) { + def config = [label: '', ramDisk: true, bootstrapped: true, name: 'unnamed-worker', scm: scm] + params + if (!config.label) { + error "You must specify an agent label, such as 'tests-xl' or 'linux && immutable', when using workers.base()" + } + + node(config.label) { + agentInfo.print() + + if (config.ramDisk) { + // Move to a temporary workspace, so that we can symlink the real workspace into /dev/shm + def originalWorkspace = env.WORKSPACE + ws('/tmp/workspace') { + sh( + script: """ + mkdir -p /dev/shm/workspace + mkdir -p '${originalWorkspace}' # create all of the directories leading up to the workspace, if they don't exist + rm --preserve-root -rf '${originalWorkspace}' # then remove just the workspace, just in case there's stuff in it + ln -s /dev/shm/workspace '${originalWorkspace}' + """, + label: "Move workspace to RAM - /dev/shm/workspace" + ) + } + } + + def scmVars = [:] + + if (config.scm) { + // Try to clone from Github up to 8 times, waiting 15 secs between attempts + retryWithDelay(8, 15) { + scmVars = checkout scm + } + } + + withEnv([ + "CI=true", + "HOME=${env.JENKINS_HOME}", + "PR_SOURCE_BRANCH=${env.ghprbSourceBranch ?: ''}", + "PR_TARGET_BRANCH=${env.ghprbTargetBranch ?: ''}", + "PR_AUTHOR=${env.ghprbPullAuthorLogin ?: ''}", + "TEST_BROWSER_HEADLESS=1", + "GIT_BRANCH=${scmVars.GIT_BRANCH ?: ''}", + ]) { + withCredentials([ + string(credentialsId: 'vault-addr', variable: 'VAULT_ADDR'), + string(credentialsId: 'vault-role-id', variable: 'VAULT_ROLE_ID'), + string(credentialsId: 'vault-secret-id', variable: 'VAULT_SECRET_ID'), + ]) { + // scm is configured to check out to the ./kibana directory + dir('kibana') { + if (config.bootstrapped) { + kibanaPipeline.doSetup() + } + + closure() + } + } + } + } +} + +// Worker for ci processes. Extends the base worker and adds GCS artifact upload, error reporting, junit processing +def ci(Map params, Closure closure) { + def config = [ramDisk: true, bootstrapped: true] + params + + return base(config) { + kibanaPipeline.withGcsArtifactUpload(config.name) { + kibanaPipeline.withPostBuildReporting { + closure() + } + } + } +} + +// Worker for running the current intake jobs. Just runs a single script after bootstrap. +def intake(jobName, String script) { + return { + ci(name: jobName, label: 'linux && immutable', ramDisk: false) { + withEnv(["JOB=${jobName}"]) { + runbld(script, "Execute ${jobName}") + } + } + } +} + +// Worker for running functional tests. Runs a setup process (e.g. the kibana build) then executes a map of closures in parallel (e.g. one for each ciGroup) +def functional(name, Closure setup, Map processes) { + return { + parallelProcesses(name: name, setup: setup, processes: processes, delayBetweenProcesses: 20, label: 'tests-xl') + } +} + +/* + Creates a ci worker that can run a setup process, followed by a group of processes in parallel. + + Parameters: + name: Name of the worker for display purposes, filenames, etc. + setup: Closure to execute after the agent is bootstrapped, before starting the parallel work + processes: Map of closures that will execute in parallel after setup. Each closure is passed a unique number. + delayBetweenProcesses: Number of seconds to wait between starting the parallel processes. Useful to spread the load of heavy init processes, e.g. Elasticsearch starting up. Default: 0 + label: gobld/agent label to use, e.g. 'linux && immutable'. Default: 'tests-xl', a 32 CPU machine used for running many functional test suites in parallel +*/ +def parallelProcesses(Map params) { + def config = [name: 'parallel-worker', setup: {}, processes: [:], delayBetweenProcesses: 0, label: 'tests-xl'] + params + + ci(label: config.label, name: config.name) { + config.setup() + + def nextProcessNumber = 1 + def process = { processName, processClosure -> + def processNumber = nextProcessNumber + nextProcessNumber++ + + return { + if (config.delayBetweenProcesses && config.delayBetweenProcesses > 0) { + // This delay helps smooth out CPU load caused by ES/Kibana instances starting up at the same time + def delay = (processNumber-1)*config.delayBetweenProcesses + sleep(delay) + } + + processClosure(processNumber) + } + } + + def processes = [:] + config.processes.each { processName, processClosure -> + processes[processName] = process(processName, processClosure) + } + + parallel(processes) + } +} + +return this From be0a4c4e229ca3c8bd619cb95965a1049ada6b11 Mon Sep 17 00:00:00 2001 From: Josh Dover Date: Mon, 2 Mar 2020 13:20:18 -0700 Subject: [PATCH 028/120] Downgrade "setting up plugin" log to debug (#58776) --- .../integration_tests/generate_plugin.test.js | 1 + src/core/server/plugins/plugin.ts | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/kbn-plugin-generator/integration_tests/generate_plugin.test.js b/packages/kbn-plugin-generator/integration_tests/generate_plugin.test.js index 771bf43c4020a4..d7d4dc14519c3d 100644 --- a/packages/kbn-plugin-generator/integration_tests/generate_plugin.test.js +++ b/packages/kbn-plugin-generator/integration_tests/generate_plugin.test.js @@ -102,6 +102,7 @@ describe(`running the plugin-generator via 'node scripts/generate_plugin.js plug 'start', '--optimize.enabled=false', '--logging.json=false', + '--logging.verbose=true', '--migrations.skip=true', ], cwd: generatedPath, diff --git a/src/core/server/plugins/plugin.ts b/src/core/server/plugins/plugin.ts index d6c774f6fc41c7..b372874264eb57 100644 --- a/src/core/server/plugins/plugin.ts +++ b/src/core/server/plugins/plugin.ts @@ -95,7 +95,7 @@ export class PluginWrapper< public async setup(setupContext: CoreSetup, plugins: TPluginsSetup) { this.instance = this.createPluginInstance(); - this.log.info('Setting up plugin'); + this.log.debug('Setting up plugin'); return this.instance.setup(setupContext, plugins); } @@ -112,6 +112,8 @@ export class PluginWrapper< throw new Error(`Plugin "${this.name}" can't be started since it isn't set up.`); } + this.log.debug('Starting plugin'); + const startContract = await this.instance.start(startContext, plugins); this.startDependencies$.next([startContext, plugins]); return startContract; From b7c8e3a25229c4fcc6bf9a2ff9364860927a77ac Mon Sep 17 00:00:00 2001 From: Maja Grubic Date: Mon, 2 Mar 2020 20:56:07 +0000 Subject: [PATCH 029/120] Dashboard a11y tests (#58122) * adding comprehensive dashboard tests * fixing delete and adding dima changes * Fixing some of the a11y test failures * Fixing i18n issue * Extracting exit fullscreen logic in a separate function * Fixing typo * Upgrading axe * Fixing failing jest tests * Removing main tag as it was causing a test to fail * Adding focusable=false to a range control as well * Update test/accessibility/apps/dashboard.ts Co-Authored-By: Michail Yasonik * Fixing linting error * Update src/legacy/core_plugins/input_control_vis/public/components/vis/list_control.tsx Co-Authored-By: Michail Yasonik * Add comments Co-authored-by: Bhavya RM Co-authored-by: Michail Yasonik Co-authored-by: Elastic Machine --- package.json | 2 +- .../__snapshots__/list_control.test.tsx.snap | 1 + .../public/components/vis/list_control.tsx | 14 ++ .../__snapshots__/clone_modal.test.js.snap | 1 + .../np_ready/top_nav/clone_modal.tsx | 3 + .../tool_bar_pager_buttons.test.tsx.snap | 2 + .../pager/tool_bar_pager_buttons.tsx | 13 ++ .../validated_range/validated_dual_range.js | 1 + .../query_string_input/language_switcher.tsx | 2 +- test/accessibility/apps/dashboard.ts | 131 ++++++++++++++++-- .../functional/page_objects/dashboard_page.ts | 7 + yarn.lock | 8 +- 12 files changed, 171 insertions(+), 14 deletions(-) diff --git a/package.json b/package.json index 0f04a2fba3b65d..5db93e5ab5ab98 100644 --- a/package.json +++ b/package.json @@ -384,7 +384,7 @@ "@typescript-eslint/parser": "^2.15.0", "angular-mocks": "^1.7.9", "archiver": "^3.1.1", - "axe-core": "^3.3.2", + "axe-core": "^3.4.1", "babel-eslint": "^10.0.3", "babel-jest": "^24.9.0", "babel-plugin-dynamic-import-node": "^2.3.0", diff --git a/src/legacy/core_plugins/input_control_vis/public/components/vis/__snapshots__/list_control.test.tsx.snap b/src/legacy/core_plugins/input_control_vis/public/components/vis/__snapshots__/list_control.test.tsx.snap index 99482a4be2d7b4..59ae99260cecd5 100644 --- a/src/legacy/core_plugins/input_control_vis/public/components/vis/__snapshots__/list_control.test.tsx.snap +++ b/src/legacy/core_plugins/input_control_vis/public/components/vis/__snapshots__/list_control.test.tsx.snap @@ -25,6 +25,7 @@ exports[`renders ListControl 1`] = ` compressed={false} data-test-subj="listControlSelect0" fullWidth={false} + inputRef={[Function]} isClearable={true} isLoading={false} onChange={[Function]} diff --git a/src/legacy/core_plugins/input_control_vis/public/components/vis/list_control.tsx b/src/legacy/core_plugins/input_control_vis/public/components/vis/list_control.tsx index d62adfdce56b47..d01cef15ea41bb 100644 --- a/src/legacy/core_plugins/input_control_vis/public/components/vis/list_control.tsx +++ b/src/legacy/core_plugins/input_control_vis/public/components/vis/list_control.tsx @@ -58,8 +58,17 @@ class ListControlUi extends PureComponent { + if (this.textInput) { + this.textInput.setAttribute('focusable', 'false'); // remove when #59039 is fixed + } this.isMounted = true; }; @@ -67,6 +76,10 @@ class ListControlUi extends PureComponent { + this.textInput = ref; + }; + handleOnChange = (selectedOptions: any[]) => { const selectedValues = selectedOptions.map(({ value }) => { return value; @@ -143,6 +156,7 @@ class ListControlUi extends PureComponent ); } diff --git a/src/legacy/core_plugins/kibana/public/dashboard/np_ready/top_nav/__snapshots__/clone_modal.test.js.snap b/src/legacy/core_plugins/kibana/public/dashboard/np_ready/top_nav/__snapshots__/clone_modal.test.js.snap index f5a00e5435ed6c..771d53b73d9601 100644 --- a/src/legacy/core_plugins/kibana/public/dashboard/np_ready/top_nav/__snapshots__/clone_modal.test.js.snap +++ b/src/legacy/core_plugins/kibana/public/dashboard/np_ready/top_nav/__snapshots__/clone_modal.test.js.snap @@ -28,6 +28,7 @@ exports[`renders DashboardCloneModal 1`] = ` { @@ -41,6 +48,12 @@ export function ToolBarPagerButtons(props: Props) { onClick={() => props.onPageNext()} disabled={!props.hasNextPage} data-test-subj="btnNextPage" + aria-label={i18n.translate( + 'kbn.ddiscover.docTable.pager.toolbarPagerButtons.nextButtonAriaLabel', + { + defaultMessage: 'Next page in table', + } + )} > diff --git a/src/legacy/ui/public/validated_range/validated_dual_range.js b/src/legacy/ui/public/validated_range/validated_dual_range.js index 8689397a78333b..3b0efba11afccc 100644 --- a/src/legacy/ui/public/validated_range/validated_dual_range.js +++ b/src/legacy/ui/public/validated_range/validated_dual_range.js @@ -92,6 +92,7 @@ export class ValidatedDualRange extends Component { fullWidth={fullWidth} value={this.state.value} onChange={this._onChange} + focusable={false} // remove when #59039 is fixed {...rest} /> diff --git a/src/plugins/data/public/ui/query_string_input/language_switcher.tsx b/src/plugins/data/public/ui/query_string_input/language_switcher.tsx index d86a8a970a8e70..63f6997ce2fc3d 100644 --- a/src/plugins/data/public/ui/query_string_input/language_switcher.tsx +++ b/src/plugins/data/public/ui/query_string_input/language_switcher.tsx @@ -68,7 +68,7 @@ export function QueryLanguageSwitcher(props: Props) { return ( { const dashboardName = 'Dashboard Listing A11y'; + const clonedDashboardName = 'Dashboard Listing A11y Copy'; + before(async () => { - await esArchiver.loadIfNeeded('logstash_functional'); - await kibanaServer.uiSettings.update({ - defaultIndex: 'logstash-*', - }); + await PageObjects.common.navigateToUrl('home', 'tutorial_directory/sampleData'); + await PageObjects.home.addSampleDataSet('flights'); + }); + + after(async () => { await PageObjects.common.navigateToApp('dashboard'); + await listingTable.searchForItemWithName(dashboardName); + await listingTable.checkListingSelectAllCheckbox(); + await listingTable.clickDeleteSelected(); + await PageObjects.common.clickConfirmOnModal(); }); it('dashboard', async () => { + await PageObjects.common.navigateToApp('dashboard'); await a11y.testAppSnapshot(); }); it('create dashboard button', async () => { - await PageObjects.dashboard.clickCreateDashboardPrompt(); + await PageObjects.dashboard.clickNewDashboard(); await a11y.testAppSnapshot(); }); @@ -49,9 +58,115 @@ export default function({ getService, getPageObjects }: FtrProviderContext) { await a11y.testAppSnapshot(); }); + it('Open Edit mode', async () => { + await PageObjects.dashboard.switchToEditMode(); + await a11y.testAppSnapshot(); + }); + + it('Open add panel', async () => { + await dashboardAddPanel.clickOpenAddPanel(); + await a11y.testAppSnapshot(); + }); + + it('add a visualization', async () => { + await testSubjects.click('savedObjectTitle[Flights]-Delay-Buckets'); + await a11y.testAppSnapshot(); + }); + + it('add a saved search', async () => { + await dashboardAddPanel.addSavedSearch('[Flights] Flight Log'); + await a11y.testAppSnapshot(); + }); + + it('save the dashboard', async () => { + await PageObjects.dashboard.saveDashboard(dashboardName); + await a11y.testAppSnapshot(); + }); + + it('Open Edit mode', async () => { + await PageObjects.dashboard.switchToEditMode(); + await a11y.testAppSnapshot(); + }); + + it('open options menu', async () => { + await PageObjects.dashboard.openOptions(); + await a11y.testAppSnapshot(); + }); + + it('Should be able to hide panel titles', async () => { + await testSubjects.click('dashboardPanelTitlesCheckbox'); + await a11y.testAppSnapshot(); + }); + + it('Should be able display panels without margins', async () => { + await testSubjects.click('dashboardMarginsCheckbox'); + await a11y.testAppSnapshot(); + }); + + it('Open add panel', async () => { + await dashboardAddPanel.clickOpenAddPanel(); + await a11y.testAppSnapshot(); + }); + + it('Add one more saved object to cancel it', async () => { + await testSubjects.click('savedObjectTitle[Flights]-Average-Ticket-Price'); + await a11y.testAppSnapshot(); + }); + + it('Close add panel', async () => { + await dashboardAddPanel.closeAddPanel(); + await a11y.testAppSnapshot(); + }); + + it('Exit out of edit mode', async () => { + await PageObjects.dashboard.clickCancelOutOfEditMode(); + await a11y.testAppSnapshot(); + }); + + it('Discard changes', async () => { + await PageObjects.common.clickConfirmOnModal(); + await PageObjects.dashboard.getIsInViewMode(); + await a11y.testAppSnapshot(); + }); + + it('Test full screen', async () => { + await PageObjects.dashboard.clickFullScreenMode(); + await a11y.testAppSnapshot(); + }); + + it('Exit out of full screen mode', async () => { + await PageObjects.dashboard.exitFullScreenMode(); + await a11y.testAppSnapshot(); + }); + + it('Make a clone of the dashboard', async () => { + await PageObjects.dashboard.clickClone(); + await a11y.testAppSnapshot(); + }); + + it('Confirm clone with *copy* appended', async () => { + await PageObjects.dashboard.confirmClone(); + await a11y.testAppSnapshot(); + }); + it('Dashboard listing table', async () => { await PageObjects.dashboard.gotoDashboardLandingPage(); await a11y.testAppSnapshot(); }); + + it('Delete a11y clone dashboard', async () => { + await listingTable.searchForItemWithName(clonedDashboardName); + await listingTable.checkListingSelectAllCheckbox(); + await listingTable.clickDeleteSelected(); + await a11y.testAppSnapshot(); + await PageObjects.common.clickConfirmOnModal(); + await listingTable.searchForItemWithName(''); + }); + + // Blocked by https://github.com/elastic/kibana/issues/38980 + it.skip('Open flight dashboard', async () => { + await testSubjects.click('dashboardListingTitleLink-[Flights]-Global-Flight-Dashboard'); + await a11y.testAppSnapshot(); + }); }); } diff --git a/test/functional/page_objects/dashboard_page.ts b/test/functional/page_objects/dashboard_page.ts index 3fd7ce27e27d41..0f01097cf50dc9 100644 --- a/test/functional/page_objects/dashboard_page.ts +++ b/test/functional/page_objects/dashboard_page.ts @@ -65,6 +65,13 @@ export function DashboardPageProvider({ getService, getPageObjects }: FtrProvide await this.waitForRenderComplete(); } + public async exitFullScreenMode() { + log.debug(`exitFullScreenMode`); + const logoButton = await this.getExitFullScreenLogoButton(); + await logoButton.moveMouseTo(); + await this.clickExitFullScreenTextButton(); + } + public async fullScreenModeMenuItemExists() { return await testSubjects.exists('dashboardFullScreenMode'); } diff --git a/yarn.lock b/yarn.lock index 7f38495c20f4a2..338d516a796e1e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7121,10 +7121,10 @@ aws4@^1.6.0: resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" integrity sha1-g+9cqGCysy5KDe7e6MdxudtXRx4= -axe-core@^3.3.2: - version "3.3.2" - resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-3.3.2.tgz#7baf3c55a5cf1621534a2c38735f5a1bf2f7e1a8" - integrity sha512-lRdxsRt7yNhqpcXQk1ao1BL73OZDzmFCWOG0mC4tGR/r14ohH2payjHwCMQjHGbBKm924eDlmG7utAGHiX/A6g== +axe-core@^3.4.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/axe-core/-/axe-core-3.5.1.tgz#d8d5aaef73f003e8b766ea28bb078343f3622201" + integrity sha512-mwpDgPwWB+5kMHyLjlxh4w25ClJfqSxi+c6LQ4ix349TdCUctMwJNPTkhPD1qP9SYIjFgjeVpVZWCvK9oBGwCg== axios@^0.18.0, axios@^0.18.1: version "0.18.1" From bb6fd0bf4ff8e0a501747aef4b399e997cc25e6b Mon Sep 17 00:00:00 2001 From: Spencer Date: Mon, 2 Mar 2020 15:15:44 -0700 Subject: [PATCH 030/120] [kbn/optimizer] fix ui/* url rewrites in dist (#58627) * [kbn/optimizer] fix ui/* url rewrites in dist * add tests to verify styles are built correctly and ui-rewrites are happening * clarify change to dirs creation * create tested & shared parsePath helper * update renovate config * split implementation of parsePath for dir and file paths * switch to valid css property Co-authored-by: Elastic Machine --- package.json | 1 + .../mock_repo/plugins/bar/public/index.ts | 1 + .../plugins/bar/public/legacy/styles.scss | 4 + .../mock_repo/src/legacy/ui/public/icon.svg | 1 + .../ui/public/styles/_styling_constants.scss | 1 + .../basic_optimization.test.ts.snap | 527 +----------------- .../basic_optimization.test.ts | 56 +- .../__snapshots__/parse_path.test.ts.snap | 156 ++++++ .../src/worker/parse_path.test.ts | 20 +- .../kbn-optimizer/src/worker/parse_path.ts | 43 ++ .../kbn-optimizer/src/worker/run_compilers.ts | 16 +- .../src/worker/webpack.config.ts | 7 +- renovate.json5 | 8 + yarn.lock | 5 + 14 files changed, 299 insertions(+), 547 deletions(-) create mode 100644 packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/bar/public/legacy/styles.scss create mode 100644 packages/kbn-optimizer/src/__fixtures__/mock_repo/src/legacy/ui/public/icon.svg create mode 100644 packages/kbn-optimizer/src/__fixtures__/mock_repo/src/legacy/ui/public/styles/_styling_constants.scss create mode 100644 packages/kbn-optimizer/src/worker/__snapshots__/parse_path.test.ts.snap rename typings/normalize_path/index.d.ts => packages/kbn-optimizer/src/worker/parse_path.test.ts (57%) create mode 100644 packages/kbn-optimizer/src/worker/parse_path.ts diff --git a/package.json b/package.json index 5db93e5ab5ab98..e727d87a83c537 100644 --- a/package.json +++ b/package.json @@ -349,6 +349,7 @@ "@types/mustache": "^0.8.31", "@types/node": "^10.12.27", "@types/node-forge": "^0.9.0", + "@types/normalize-path": "^3.0.0", "@types/numeral": "^0.0.26", "@types/opn": "^5.1.0", "@types/pegjs": "^0.10.1", diff --git a/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/bar/public/index.ts b/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/bar/public/index.ts index 66fa55479f3b9e..817c4796562e82 100644 --- a/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/bar/public/index.ts +++ b/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/bar/public/index.ts @@ -17,6 +17,7 @@ * under the License. */ +import './legacy/styles.scss'; import { fooLibFn } from '../../foo/public/index'; export * from './lib'; export { fooLibFn }; diff --git a/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/bar/public/legacy/styles.scss b/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/bar/public/legacy/styles.scss new file mode 100644 index 00000000000000..e71a2d485a2f85 --- /dev/null +++ b/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/bar/public/legacy/styles.scss @@ -0,0 +1,4 @@ +body { + width: $globalStyleConstant; + background-image: url("ui/icon.svg"); +} diff --git a/packages/kbn-optimizer/src/__fixtures__/mock_repo/src/legacy/ui/public/icon.svg b/packages/kbn-optimizer/src/__fixtures__/mock_repo/src/legacy/ui/public/icon.svg new file mode 100644 index 00000000000000..ae7d5b958bbadc --- /dev/null +++ b/packages/kbn-optimizer/src/__fixtures__/mock_repo/src/legacy/ui/public/icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/kbn-optimizer/src/__fixtures__/mock_repo/src/legacy/ui/public/styles/_styling_constants.scss b/packages/kbn-optimizer/src/__fixtures__/mock_repo/src/legacy/ui/public/styles/_styling_constants.scss new file mode 100644 index 00000000000000..83995ca65211bd --- /dev/null +++ b/packages/kbn-optimizer/src/__fixtures__/mock_repo/src/legacy/ui/public/styles/_styling_constants.scss @@ -0,0 +1 @@ +$globalStyleConstant: 10; diff --git a/packages/kbn-optimizer/src/integration_tests/__snapshots__/basic_optimization.test.ts.snap b/packages/kbn-optimizer/src/integration_tests/__snapshots__/basic_optimization.test.ts.snap index 706f79978beee4..1a974d3e81092b 100644 --- a/packages/kbn-optimizer/src/integration_tests/__snapshots__/basic_optimization.test.ts.snap +++ b/packages/kbn-optimizer/src/integration_tests/__snapshots__/basic_optimization.test.ts.snap @@ -5,553 +5,56 @@ OptimizerConfig { "bundles": Array [ Bundle { "cache": BundleCache { - "path": /plugins/bar/target/public/.kbn-optimizer-cache, + "path": /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/bar/target/public/.kbn-optimizer-cache, "state": undefined, }, - "contextDir": /plugins/bar, + "contextDir": /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/bar, "entry": "./public/index", "id": "bar", - "outputDir": /plugins/bar/target/public, - "sourceRoot": , + "outputDir": /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/bar/target/public, + "sourceRoot": /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo, "type": "plugin", }, Bundle { "cache": BundleCache { - "path": /plugins/foo/target/public/.kbn-optimizer-cache, + "path": /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/target/public/.kbn-optimizer-cache, "state": undefined, }, - "contextDir": /plugins/foo, + "contextDir": /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo, "entry": "./public/index", "id": "foo", - "outputDir": /plugins/foo/target/public, - "sourceRoot": , + "outputDir": /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/target/public, + "sourceRoot": /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo, "type": "plugin", }, ], "cache": true, - "dist": false, + "dist": true, "inspectWorkers": false, "maxWorkerCount": 1, "plugins": Array [ Object { - "directory": /plugins/bar, + "directory": /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/bar, "id": "bar", "isUiPlugin": true, }, Object { - "directory": /plugins/baz, + "directory": /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/baz, "id": "baz", "isUiPlugin": false, }, Object { - "directory": /plugins/foo, + "directory": /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo, "id": "foo", "isUiPlugin": true, }, ], "profileWebpack": false, - "repoRoot": , + "repoRoot": /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo, "watch": false, } `; -exports[`builds expected bundles, saves bundle counts to metadata: bar bundle 1`] = ` -"var __kbnBundles__ = typeof __kbnBundles__ === \\"object\\" ? __kbnBundles__ : {}; __kbnBundles__[\\"plugin/bar\\"] = -/******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); -/******/ } -/******/ }; -/******/ -/******/ // define __esModule on exports -/******/ __webpack_require__.r = function(exports) { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ -/******/ // create a fake namespace object -/******/ // mode & 1: value is a module id, require it -/******/ // mode & 2: merge all properties of value into the ns -/******/ // mode & 4: return value when already ns object -/******/ // mode & 8|1: behave like require -/******/ __webpack_require__.t = function(value, mode) { -/******/ if(mode & 1) value = __webpack_require__(value); -/******/ if(mode & 8) return value; -/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; -/******/ var ns = Object.create(null); -/******/ __webpack_require__.r(ns); -/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); -/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); -/******/ return ns; -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = \\"__REPLACE_WITH_PUBLIC_PATH__\\"; -/******/ -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = \\"./public/index.ts\\"); -/******/ }) -/************************************************************************/ -/******/ ({ +exports[`builds expected bundles, saves bundle counts to metadata: bar bundle 1`] = `"var __kbnBundles__=typeof __kbnBundles__===\\"object\\"?__kbnBundles__:{};__kbnBundles__[\\"plugin/bar\\"]=function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{enumerable:true,get:getter})}};__webpack_require__.r=function(exports){if(typeof Symbol!==\\"undefined\\"&&Symbol.toStringTag){Object.defineProperty(exports,Symbol.toStringTag,{value:\\"Module\\"})}Object.defineProperty(exports,\\"__esModule\\",{value:true})};__webpack_require__.t=function(value,mode){if(mode&1)value=__webpack_require__(value);if(mode&8)return value;if(mode&4&&typeof value===\\"object\\"&&value&&value.__esModule)return value;var ns=Object.create(null);__webpack_require__.r(ns);Object.defineProperty(ns,\\"default\\",{enumerable:true,value:value});if(mode&2&&typeof value!=\\"string\\")for(var key in value)__webpack_require__.d(ns,key,function(key){return value[key]}.bind(null,key));return ns};__webpack_require__.n=function(module){var getter=module&&module.__esModule?function getDefault(){return module[\\"default\\"]}:function getModuleExports(){return module};__webpack_require__.d(getter,\\"a\\",getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p=\\"__REPLACE_WITH_PUBLIC_PATH__\\";return __webpack_require__(__webpack_require__.s=4)}([function(module,exports,__webpack_require__){\\"use strict\\";var isOldIE=function isOldIE(){var memo;return function memorize(){if(typeof memo===\\"undefined\\"){memo=Boolean(window&&document&&document.all&&!window.atob)}return memo}}();var getTarget=function getTarget(){var memo={};return function memorize(target){if(typeof memo[target]===\\"undefined\\"){var styleTarget=document.querySelector(target);if(window.HTMLIFrameElement&&styleTarget instanceof window.HTMLIFrameElement){try{styleTarget=styleTarget.contentDocument.head}catch(e){styleTarget=null}}memo[target]=styleTarget}return memo[target]}}();var stylesInDom=[];function getIndexByIdentifier(identifier){var result=-1;for(var i=0;i { await del(TMP_DIR); @@ -51,20 +51,25 @@ it('builds expected bundles, saves bundle counts to metadata', async () => { repoRoot: MOCK_REPO_DIR, pluginScanDirs: [Path.resolve(MOCK_REPO_DIR, 'plugins')], maxWorkerCount: 1, + dist: true, }); expect(config).toMatchSnapshot('OptimizerConfig'); - const msgs = await runOptimizer(config) - .pipe( - tap(state => { - if (state.event?.type === 'worker stdio') { - // eslint-disable-next-line no-console - console.log('worker', state.event.stream, state.event.chunk.toString('utf8')); + const log = new ToolingLog({ + level: 'error', + writeTo: { + write(chunk) { + if (chunk.endsWith('\n')) { + chunk = chunk.slice(0, -1); } - }), - toArray() - ) + // eslint-disable-next-line no-console + console.error(chunk); + }, + }, + }); + const msgs = await runOptimizer(config) + .pipe(logOptimizerState(log, config), toArray()) .toPromise(); const assert = (statement: string, truth: boolean, altStates?: OptimizerUpdate[]) => { @@ -133,23 +138,31 @@ it('builds expected bundles, saves bundle counts to metadata', async () => { expect(foo.cache.getModuleCount()).toBe(3); expect(foo.cache.getReferencedFiles()).toMatchInlineSnapshot(` Array [ - /plugins/foo/public/ext.ts, - /plugins/foo/public/index.ts, - /plugins/foo/public/lib.ts, + /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/ext.ts, + /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/index.ts, + /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/lib.ts, ] `); const bar = config.bundles.find(b => b.id === 'bar')!; expect(bar).toBeTruthy(); bar.cache.refresh(); - expect(bar.cache.getModuleCount()).toBe(5); + expect(bar.cache.getModuleCount()).toBe( + // code + styles + style/css-loader runtime + 14 + ); + expect(bar.cache.getReferencedFiles()).toMatchInlineSnapshot(` Array [ - /plugins/foo/public/ext.ts, - /plugins/foo/public/index.ts, - /plugins/foo/public/lib.ts, - /plugins/bar/public/index.ts, - /plugins/bar/public/lib.ts, + /node_modules/css-loader/package.json, + /node_modules/style-loader/package.json, + /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/bar/public/index.ts, + /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/bar/public/legacy/styles.scss, + /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/bar/public/lib.ts, + /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/ext.ts, + /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/index.ts, + /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/lib.ts, + /packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/src/legacy/ui/public/icon.svg, ] `); }); @@ -159,6 +172,7 @@ it('uses cache on second run and exist cleanly', async () => { repoRoot: MOCK_REPO_DIR, pluginScanDirs: [Path.resolve(MOCK_REPO_DIR, 'plugins')], maxWorkerCount: 1, + dist: true, }); const msgs = await runOptimizer(config) diff --git a/packages/kbn-optimizer/src/worker/__snapshots__/parse_path.test.ts.snap b/packages/kbn-optimizer/src/worker/__snapshots__/parse_path.test.ts.snap new file mode 100644 index 00000000000000..2973ac116d6bd1 --- /dev/null +++ b/packages/kbn-optimizer/src/worker/__snapshots__/parse_path.test.ts.snap @@ -0,0 +1,156 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`parseDirPath() parses / 1`] = ` +Object { + "dirs": Array [], + "filename": undefined, + "root": "/", +} +`; + +exports[`parseDirPath() parses /foo 1`] = ` +Object { + "dirs": Array [ + "foo", + ], + "filename": undefined, + "root": "/", +} +`; + +exports[`parseDirPath() parses /foo/bar/baz 1`] = ` +Object { + "dirs": Array [ + "foo", + "bar", + "baz", + ], + "filename": undefined, + "root": "/", +} +`; + +exports[`parseDirPath() parses /foo/bar/baz/ 1`] = ` +Object { + "dirs": Array [ + "foo", + "bar", + "baz", + ], + "filename": undefined, + "root": "/", +} +`; + +exports[`parseDirPath() parses c:\\ 1`] = ` +Object { + "dirs": Array [], + "filename": undefined, + "root": "c:", +} +`; + +exports[`parseDirPath() parses c:\\foo 1`] = ` +Object { + "dirs": Array [ + "foo", + ], + "filename": undefined, + "root": "c:", +} +`; + +exports[`parseDirPath() parses c:\\foo\\bar\\baz 1`] = ` +Object { + "dirs": Array [ + "foo", + "bar", + "baz", + ], + "filename": undefined, + "root": "c:", +} +`; + +exports[`parseDirPath() parses c:\\foo\\bar\\baz\\ 1`] = ` +Object { + "dirs": Array [ + "foo", + "bar", + "baz", + ], + "filename": undefined, + "root": "c:", +} +`; + +exports[`parseFilePath() parses /foo 1`] = ` +Object { + "dirs": Array [], + "filename": "foo", + "root": "/", +} +`; + +exports[`parseFilePath() parses /foo/bar/baz 1`] = ` +Object { + "dirs": Array [ + "foo", + "bar", + ], + "filename": "baz", + "root": "/", +} +`; + +exports[`parseFilePath() parses /foo/bar/baz.json 1`] = ` +Object { + "dirs": Array [ + "foo", + "bar", + ], + "filename": "baz.json", + "root": "/", +} +`; + +exports[`parseFilePath() parses c:/foo/bar/baz.json 1`] = ` +Object { + "dirs": Array [ + "foo", + "bar", + ], + "filename": "baz.json", + "root": "c:", +} +`; + +exports[`parseFilePath() parses c:\\foo 1`] = ` +Object { + "dirs": Array [], + "filename": "foo", + "root": "c:", +} +`; + +exports[`parseFilePath() parses c:\\foo\\bar\\baz 1`] = ` +Object { + "dirs": Array [ + "foo", + "bar", + ], + "filename": "baz", + "root": "c:", +} +`; + +exports[`parseFilePath() parses c:\\foo\\bar\\baz.json 1`] = ` +Object { + "dirs": Array [ + "foo", + "bar", + ], + "filename": "baz.json", + "root": "c:", +} +`; diff --git a/typings/normalize_path/index.d.ts b/packages/kbn-optimizer/src/worker/parse_path.test.ts similarity index 57% rename from typings/normalize_path/index.d.ts rename to packages/kbn-optimizer/src/worker/parse_path.test.ts index 31e064ca63d903..72197e8c8fb07a 100644 --- a/typings/normalize_path/index.d.ts +++ b/packages/kbn-optimizer/src/worker/parse_path.test.ts @@ -17,8 +17,20 @@ * under the License. */ -declare function NormalizePath(path: string, stripTrailing?: boolean): string; +import { parseFilePath, parseDirPath } from './parse_path'; -declare module 'normalize-path' { - export = NormalizePath; -} +const DIRS = ['/', '/foo/bar/baz/', 'c:\\', 'c:\\foo\\bar\\baz\\']; +const AMBIGUOUS = ['/foo', '/foo/bar/baz', 'c:\\foo', 'c:\\foo\\bar\\baz']; +const FILES = ['/foo/bar/baz.json', 'c:/foo/bar/baz.json', 'c:\\foo\\bar\\baz.json']; + +describe('parseFilePath()', () => { + it.each([...FILES, ...AMBIGUOUS])('parses %s', path => { + expect(parseFilePath(path)).toMatchSnapshot(); + }); +}); + +describe('parseDirPath()', () => { + it.each([...DIRS, ...AMBIGUOUS])('parses %s', path => { + expect(parseDirPath(path)).toMatchSnapshot(); + }); +}); diff --git a/packages/kbn-optimizer/src/worker/parse_path.ts b/packages/kbn-optimizer/src/worker/parse_path.ts new file mode 100644 index 00000000000000..88152df55b84f4 --- /dev/null +++ b/packages/kbn-optimizer/src/worker/parse_path.ts @@ -0,0 +1,43 @@ +/* + * 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 normalizePath from 'normalize-path'; + +/** + * Parse an absolute path, supporting normalized paths from webpack, + * into a list of directories and root + */ +export function parseDirPath(path: string) { + const filePath = parseFilePath(path); + return { + ...filePath, + dirs: [...filePath.dirs, ...(filePath.filename ? [filePath.filename] : [])], + filename: undefined, + }; +} + +export function parseFilePath(path: string) { + const normalized = normalizePath(path); + const [root, ...others] = normalized.split('/'); + return { + root: root === '' ? '/' : root, + dirs: others.slice(0, -1), + filename: others[others.length - 1] || undefined, + }; +} diff --git a/packages/kbn-optimizer/src/worker/run_compilers.ts b/packages/kbn-optimizer/src/worker/run_compilers.ts index 7dcce8a0fae8d8..7a8097fd2b2c79 100644 --- a/packages/kbn-optimizer/src/worker/run_compilers.ts +++ b/packages/kbn-optimizer/src/worker/run_compilers.ts @@ -27,9 +27,10 @@ import webpack, { Stats } from 'webpack'; import * as Rx from 'rxjs'; import { mergeMap, map, mapTo, takeUntil } from 'rxjs/operators'; -import { CompilerMsgs, CompilerMsg, maybeMap, Bundle, WorkerConfig } from '../common'; +import { CompilerMsgs, CompilerMsg, maybeMap, Bundle, WorkerConfig, ascending } from '../common'; import { getWebpackConfig } from './webpack.config'; import { isFailureStats, failedStatsToErrorMessage } from './webpack_helpers'; +import { parseFilePath } from './parse_path'; import { isExternalModule, isNormalModule, @@ -108,20 +109,19 @@ const observeCompiler = ( for (const module of normalModules) { const path = getModulePath(module); + const parsedPath = parseFilePath(path); - const parsedPath = Path.parse(path); - const dirSegments = parsedPath.dir.split(Path.sep); - if (!dirSegments.includes('node_modules')) { + if (!parsedPath.dirs.includes('node_modules')) { referencedFiles.add(path); continue; } - const nmIndex = dirSegments.lastIndexOf('node_modules'); - const isScoped = dirSegments[nmIndex + 1].startsWith('@'); + const nmIndex = parsedPath.dirs.lastIndexOf('node_modules'); + const isScoped = parsedPath.dirs[nmIndex + 1].startsWith('@'); referencedFiles.add( Path.join( parsedPath.root, - ...dirSegments.slice(0, nmIndex + 1 + (isScoped ? 2 : 1)), + ...parsedPath.dirs.slice(0, nmIndex + 1 + (isScoped ? 2 : 1)), 'package.json' ) ); @@ -146,7 +146,7 @@ const observeCompiler = ( optimizerCacheKey: workerConfig.optimizerCacheKey, cacheKey: bundle.createCacheKey(files, mtimes), moduleCount: normalModules.length, - files, + files: files.sort(ascending(f => f)), }); return compilerMsgs.compilerSuccess({ diff --git a/packages/kbn-optimizer/src/worker/webpack.config.ts b/packages/kbn-optimizer/src/worker/webpack.config.ts index 3c6ae78bc4d911..5d8ef7626f6305 100644 --- a/packages/kbn-optimizer/src/worker/webpack.config.ts +++ b/packages/kbn-optimizer/src/worker/webpack.config.ts @@ -30,6 +30,7 @@ import { CleanWebpackPlugin } from 'clean-webpack-plugin'; import * as SharedDeps from '@kbn/ui-shared-deps'; import { Bundle, WorkerConfig } from '../common'; +import { parseDirPath } from './parse_path'; const IS_CODE_COVERAGE = !!process.env.CODE_COVERAGE; const ISTANBUL_PRESET_PATH = require.resolve('@kbn/babel-preset/istanbul_preset'); @@ -135,7 +136,7 @@ export function getWebpackConfig(bundle: Bundle, worker: WorkerConfig) { } // manually force ui/* urls in legacy styles to resolve to ui/legacy/public - if (uri.startsWith('ui/') && base.split(Path.sep).includes('legacy')) { + if (uri.startsWith('ui/') && parseDirPath(base).dirs.includes('legacy')) { return Path.resolve( worker.repoRoot, 'src/legacy/ui/public', @@ -150,7 +151,9 @@ export function getWebpackConfig(bundle: Bundle, worker: WorkerConfig) { { loader: 'sass-loader', options: { - sourceMap: !worker.dist, + // must always be enabled as long as we're using the `resolve-url-loader` to + // rewrite `ui/*` urls. They're dropped by subsequent loaders though + sourceMap: true, prependData(loaderContext: webpack.loader.LoaderContext) { return `@import ${stringifyRequest( loaderContext, diff --git a/renovate.json5 b/renovate.json5 index 58a64a5d0f9679..ca2cd2e6bcd932 100644 --- a/renovate.json5 +++ b/renovate.json5 @@ -665,6 +665,14 @@ '@types/nodemailer', ], }, + { + groupSlug: 'normalize-path', + groupName: 'normalize-path related packages', + packageNames: [ + 'normalize-path', + '@types/normalize-path', + ], + }, { groupSlug: 'numeral', groupName: 'numeral related packages', diff --git a/yarn.lock b/yarn.lock index 338d516a796e1e..e4d5dcce5bca08 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4864,6 +4864,11 @@ resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz#e486d0d97396d79beedd0a6e33f4534ff6b4973e" integrity sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA== +"@types/normalize-path@^3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/normalize-path/-/normalize-path-3.0.0.tgz#bb5c46cab77b93350b4cf8d7ff1153f47189ae31" + integrity sha512-Nd8y/5t/7CRakPYiyPzr/IAfYusy1FkcZYFEAcoMZkwpJv2n4Wm+olW+e7xBdHEXhOnWdG9ddbar0gqZWS4x5Q== + "@types/numeral@^0.0.25": version "0.0.25" resolved "https://registry.yarnpkg.com/@types/numeral/-/numeral-0.0.25.tgz#b6f55062827a4787fe4ab151cf3412a468e65271" From 48a33abdeed147932401cc3a24c36669189f67f3 Mon Sep 17 00:00:00 2001 From: Josh Dover Date: Mon, 2 Mar 2020 15:51:33 -0700 Subject: [PATCH 031/120] Remove appBasePath from docs + add mock for AppMountParameters (#58775) --- ...lugin-public.appmountparameters.history.md | 1 - ...in-public.appmountparameters.onappleave.md | 4 +-- src/core/CONVENTIONS.md | 4 +-- src/core/TESTING.md | 14 ++++++----- src/core/public/application/types.ts | 5 ++-- src/core/public/mocks.ts | 25 ++++++++++++++++++- 6 files changed, 38 insertions(+), 15 deletions(-) diff --git a/docs/development/core/public/kibana-plugin-public.appmountparameters.history.md b/docs/development/core/public/kibana-plugin-public.appmountparameters.history.md index 9a3fa1a1bb48a6..f22e70b0e7bee2 100644 --- a/docs/development/core/public/kibana-plugin-public.appmountparameters.history.md +++ b/docs/development/core/public/kibana-plugin-public.appmountparameters.history.md @@ -44,7 +44,6 @@ import { MyPluginDepsStart } from './plugin'; export renderApp = ({ element, history }: AppMountParameters) => { ReactDOM.render( - // pass `appBasePath` to `basename` , diff --git a/docs/development/core/public/kibana-plugin-public.appmountparameters.onappleave.md b/docs/development/core/public/kibana-plugin-public.appmountparameters.onappleave.md index 283ae34f14c545..6c5b89ffda05be 100644 --- a/docs/development/core/public/kibana-plugin-public.appmountparameters.onappleave.md +++ b/docs/development/core/public/kibana-plugin-public.appmountparameters.onappleave.md @@ -26,7 +26,7 @@ import { BrowserRouter, Route } from 'react-router-dom'; import { CoreStart, AppMountParams } from 'src/core/public'; import { MyPluginDepsStart } from './plugin'; -export renderApp = ({ appBasePath, element, onAppLeave }: AppMountParams) => { +export renderApp = ({ element, history, onAppLeave }: AppMountParams) => { const { renderApp, hasUnsavedChanges } = await import('./application'); onAppLeave(actions => { if(hasUnsavedChanges()) { @@ -34,7 +34,7 @@ export renderApp = ({ appBasePath, element, onAppLeave }: AppMountParams) => { } return actions.default(); }); - return renderApp(params); + return renderApp({ element, history }); } ``` diff --git a/src/core/CONVENTIONS.md b/src/core/CONVENTIONS.md index 2769079757bc38..0f592d108c5617 100644 --- a/src/core/CONVENTIONS.md +++ b/src/core/CONVENTIONS.md @@ -148,8 +148,8 @@ import { MyAppRoot } from './components/app.ts'; /** * This module will be loaded asynchronously to reduce the bundle size of your plugin's main bundle. */ -export const renderApp = (core: CoreStart, deps: MyPluginDepsStart, { element, appBasePath }: AppMountParams) => { - ReactDOM.render(, element); +export const renderApp = (core: CoreStart, deps: MyPluginDepsStart, { element, history }: AppMountParams) => { + ReactDOM.render(, element); return () => ReactDOM.unmountComponentAtNode(element); } ``` diff --git a/src/core/TESTING.md b/src/core/TESTING.md index 9abc2bb77d7d12..cb38dac0e20ce7 100644 --- a/src/core/TESTING.md +++ b/src/core/TESTING.md @@ -453,7 +453,7 @@ describe('Plugin', () => { const [coreStartMock, startDepsMock] = await coreSetup.getStartServices(); const unmountMock = jest.fn(); renderAppMock.mockReturnValue(unmountMock); - const params = { element: document.createElement('div'), appBasePath: '/fake/base/path' }; + const params = coreMock.createAppMountParamters('/fake/base/path'); new Plugin(coreMock.createPluginInitializerContext()).setup(coreSetup); // Grab registered mount function @@ -478,7 +478,7 @@ import ReactDOM from 'react-dom'; import { AppMountParams, CoreStart } from 'src/core/public'; import { AppRoot } from './components/app_root'; -export const renderApp = ({ element, appBasePath }: AppMountParams, core: CoreStart, plugins: MyPluginDepsStart) => { +export const renderApp = ({ element, history }: AppMountParams, core: CoreStart, plugins: MyPluginDepsStart) => { // Hide the chrome while this app is mounted for a full screen experience core.chrome.setIsVisible(false); @@ -491,7 +491,7 @@ export const renderApp = ({ element, appBasePath }: AppMountParams, core: CoreSt // Render app ReactDOM.render( - , + , element ); @@ -512,12 +512,14 @@ In testing `renderApp` you should be verifying that: ```typescript /** public/application.test.ts */ +import { createMemoryHistory } from 'history'; +import { ScopedHistory } from 'src/core/public'; import { coreMock } from 'src/core/public/mocks'; import { renderApp } from './application'; describe('renderApp', () => { it('mounts and unmounts UI', () => { - const params = { element: document.createElement('div'), appBasePath: '/fake/base/path' }; + const params = coreMock.createAppMountParamters('/fake/base/path'); const core = coreMock.createStart(); // Verify some expected DOM element is rendered into the element @@ -529,7 +531,7 @@ describe('renderApp', () => { }); it('unsubscribes from uiSettings', () => { - const params = { element: document.createElement('div'), appBasePath: '/fake/base/path' }; + const params = coreMock.createAppMountParamters('/fake/base/path'); const core = coreMock.createStart(); // Create a fake Subject you can use to monitor observers const settings$ = new Subject(); @@ -544,7 +546,7 @@ describe('renderApp', () => { }); it('resets chrome visibility', () => { - const params = { element: document.createElement('div'), appBasePath: '/fake/base/path' }; + const params = coreMock.createAppMountParamters('/fake/base/path'); const core = coreMock.createStart(); // Verify stateful Core API was called on mount diff --git a/src/core/public/application/types.ts b/src/core/public/application/types.ts index facb818c60ff94..318afb652999ef 100644 --- a/src/core/public/application/types.ts +++ b/src/core/public/application/types.ts @@ -347,7 +347,6 @@ export interface AppMountParameters { * * export renderApp = ({ element, history }: AppMountParameters) => { * ReactDOM.render( - * // pass `appBasePath` to `basename` * * * , @@ -429,7 +428,7 @@ export interface AppMountParameters { * import { CoreStart, AppMountParams } from 'src/core/public'; * import { MyPluginDepsStart } from './plugin'; * - * export renderApp = ({ appBasePath, element, onAppLeave }: AppMountParams) => { + * export renderApp = ({ element, history, onAppLeave }: AppMountParams) => { * const { renderApp, hasUnsavedChanges } = await import('./application'); * onAppLeave(actions => { * if(hasUnsavedChanges()) { @@ -437,7 +436,7 @@ export interface AppMountParameters { * } * return actions.default(); * }); - * return renderApp(params); + * return renderApp({ element, history }); * } * ``` */ diff --git a/src/core/public/mocks.ts b/src/core/public/mocks.ts index 8ea672890ca297..c860e9de8334e9 100644 --- a/src/core/public/mocks.ts +++ b/src/core/public/mocks.ts @@ -16,9 +16,15 @@ * specific language governing permissions and limitations * under the License. */ +import { createMemoryHistory } from 'history'; + +// Only import types from '.' to avoid triggering default Jest mocks. +import { CoreContext, PluginInitializerContext, AppMountParameters } from '.'; +// Import values from their individual modules instead. +import { ScopedHistory } from './application'; + import { applicationServiceMock } from './application/application_service.mock'; import { chromeServiceMock } from './chrome/chrome_service.mock'; -import { CoreContext, PluginInitializerContext } from '.'; import { docLinksServiceMock } from './doc_links/doc_links_service.mock'; import { fatalErrorsServiceMock } from './fatal_errors/fatal_errors_service.mock'; import { httpServiceMock } from './http/http_service.mock'; @@ -139,10 +145,27 @@ function createStorageMock() { return storageMock; } +function createAppMountParametersMock(appBasePath = '') { + // Assemble an in-memory history mock using the provided basePath + const rawHistory = createMemoryHistory(); + rawHistory.push(appBasePath); + const history = new ScopedHistory(rawHistory, appBasePath); + + const params: jest.Mocked = { + appBasePath, + element: document.createElement('div'), + history, + onAppLeave: jest.fn(), + }; + + return params; +} + export const coreMock = { createCoreContext, createSetup: createCoreSetupMock, createStart: createCoreStartMock, createPluginInitializerContext: pluginInitializerContextMock, createStorage: createStorageMock, + createAppMountParamters: createAppMountParametersMock, }; From 90b3678dffa20ff7e0ab806861bfa64d46d86cb9 Mon Sep 17 00:00:00 2001 From: Steph Milovic Date: Mon, 2 Mar 2020 16:04:29 -0700 Subject: [PATCH 032/120] [SIEM] [Case] Comments to case view (#58315) --- .../edit_data_provider/translations.ts | 2 +- .../components/formatted_date/index.tsx | 29 +++ .../editable_title.test.tsx.snap | 2 +- .../components/header_page/editable_title.tsx | 64 ++++-- .../components/header_page/translations.ts | 4 +- .../components/markdown_editor/constants.ts | 7 + .../components/markdown_editor/form.tsx | 58 ++++++ .../components/markdown_editor/index.tsx | 121 +++++++++++ .../markdown_editor/translations.ts | 18 ++ .../components/navigation/index.test.tsx | 4 +- .../siem/public/containers/case/api.ts | 38 +++- .../siem/public/containers/case/constants.ts | 2 +- .../siem/public/containers/case/types.ts | 28 ++- .../public/containers/case/use_get_case.tsx | 4 +- .../public/containers/case/use_post_case.tsx | 3 +- .../containers/case/use_post_comment.tsx | 97 +++++++++ .../containers/case/use_update_case.tsx | 68 +++--- .../containers/case/use_update_comment.tsx | 92 ++++++++ .../case/components/add_comment/index.tsx | 73 +++++++ .../case/components/add_comment/schema.tsx | 20 ++ .../components/all_cases/__mock__/index.tsx | 10 + .../case/components/all_cases/columns.tsx | 2 +- .../components/case_view/__mock__/index.tsx | 29 ++- .../case/components/case_view/index.test.tsx | 41 +++- .../pages/case/components/case_view/index.tsx | 196 ++++++------------ .../case/components/case_view/translations.ts | 12 ++ .../pages/case/components/create/index.tsx | 77 ++++--- .../pages/case/components/create/schema.tsx | 6 +- .../description_md_editor/index.tsx | 111 ---------- .../pages/case/components/tag_list/index.tsx | 68 +++--- .../pages/case/components/tag_list/schema.tsx | 2 +- .../components/user_action_tree/index.tsx | 139 ++++++++++--- .../user_action_tree/user_action_avatar.tsx | 18 ++ .../user_action_tree/user_action_item.tsx | 60 ++++++ .../user_action_tree/user_action_markdown.tsx | 89 ++++++++ .../user_action_tree/user_action_title.tsx | 70 +++++++ .../pages/case/components/user_list/index.tsx | 4 +- .../siem/public/pages/case/translations.ts | 38 +++- .../rules/components/add_item_form/index.tsx | 2 +- .../components/description_step/index.tsx | 2 +- .../rules/components/mitre/index.tsx | 2 +- .../rules/components/pick_timeline/index.tsx | 2 +- .../rules/components/query_bar/index.tsx | 2 +- .../components/schedule_item_form/index.tsx | 2 +- .../components/step_about_rule/index.tsx | 2 +- .../components/step_about_rule/schema.tsx | 2 +- .../components/step_define_rule/index.tsx | 2 +- .../components/step_define_rule/schema.tsx | 2 +- .../components/step_schedule_rule/index.tsx | 2 +- .../components/step_schedule_rule/schema.tsx | 2 +- .../detection_engine/rules/create/index.tsx | 2 +- .../detection_engine/rules/edit/index.tsx | 2 +- .../pages/detection_engine/rules/helpers.tsx | 2 +- .../pages/detection_engine/rules/types.ts | 2 +- .../siem/public/pages/home/translations.ts | 2 +- .../siem/public/{pages => }/shared_imports.ts | 8 +- .../api/__tests__/update_comment.test.ts | 19 ++ .../plugins/case/server/routes/api/schema.ts | 5 + .../case/server/routes/api/update_comment.ts | 36 +++- .../translations/translations/ja-JP.json | 1 - .../translations/translations/zh-CN.json | 1 - 61 files changed, 1355 insertions(+), 455 deletions(-) create mode 100644 x-pack/legacy/plugins/siem/public/components/markdown_editor/constants.ts create mode 100644 x-pack/legacy/plugins/siem/public/components/markdown_editor/form.tsx create mode 100644 x-pack/legacy/plugins/siem/public/components/markdown_editor/index.tsx create mode 100644 x-pack/legacy/plugins/siem/public/components/markdown_editor/translations.ts create mode 100644 x-pack/legacy/plugins/siem/public/containers/case/use_post_comment.tsx create mode 100644 x-pack/legacy/plugins/siem/public/containers/case/use_update_comment.tsx create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/add_comment/index.tsx create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/add_comment/schema.tsx delete mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/description_md_editor/index.tsx create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_avatar.tsx create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_item.tsx create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_markdown.tsx create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_title.tsx rename x-pack/legacy/plugins/siem/public/{pages => }/shared_imports.ts (52%) diff --git a/x-pack/legacy/plugins/siem/public/components/edit_data_provider/translations.ts b/x-pack/legacy/plugins/siem/public/components/edit_data_provider/translations.ts index dadd349096a530..53d2ffa1973279 100644 --- a/x-pack/legacy/plugins/siem/public/components/edit_data_provider/translations.ts +++ b/x-pack/legacy/plugins/siem/public/components/edit_data_provider/translations.ts @@ -18,7 +18,7 @@ export const FIELD = i18n.translate('xpack.siem.editDataProvider.fieldLabel', { defaultMessage: 'Field', }); -export const FIELD_PLACEHOLDER = i18n.translate('xpack.siem.editDataProvider.fieldPlaceholder', { +export const FIELD_PLACEHOLDER = i18n.translate('xpack.siem.editDataProvider.placeholder', { defaultMessage: 'Select a field', }); diff --git a/x-pack/legacy/plugins/siem/public/components/formatted_date/index.tsx b/x-pack/legacy/plugins/siem/public/components/formatted_date/index.tsx index f74ee995c965b2..d100f891820141 100644 --- a/x-pack/legacy/plugins/siem/public/components/formatted_date/index.tsx +++ b/x-pack/legacy/plugins/siem/public/components/formatted_date/index.tsx @@ -125,3 +125,32 @@ export const FormattedRelativePreferenceDate = ({ value }: { value?: string | nu ); }; + +/** + * Renders a preceding label according to under/over one hour + */ + +export const FormattedRelativePreferenceLabel = ({ + value, + preferenceLabel, + relativeLabel, +}: { + value?: string | number | null; + preferenceLabel?: string | null; + relativeLabel?: string | null; +}) => { + if (value == null) { + return null; + } + const maybeDate = getMaybeDate(value); + if (!maybeDate.isValid()) { + return null; + } + return moment(maybeDate.toDate()) + .add(1, 'hours') + .isBefore(new Date()) ? ( + <>{preferenceLabel} + ) : ( + <>{relativeLabel} + ); +}; diff --git a/x-pack/legacy/plugins/siem/public/components/header_page/__snapshots__/editable_title.test.tsx.snap b/x-pack/legacy/plugins/siem/public/components/header_page/__snapshots__/editable_title.test.tsx.snap index 30c70d7f5a2a66..24b1756aade2e8 100644 --- a/x-pack/legacy/plugins/siem/public/components/header_page/__snapshots__/editable_title.test.tsx.snap +++ b/x-pack/legacy/plugins/siem/public/components/header_page/__snapshots__/editable_title.test.tsx.snap @@ -15,7 +15,7 @@ exports[`EditableTitle it renders 1`] = ` - css` margin-left: ${theme.eui.euiSize}; `} `; -StyledEuiButtonIcon.displayName = 'StyledEuiButtonIcon'; +const MySpinner = styled(EuiLoadingSpinner)` + ${({ theme }) => css` + margin-left: ${theme.eui.euiSize}; + `} +`; interface Props { isLoading: boolean; @@ -36,24 +41,30 @@ interface Props { const EditableTitleComponent: React.FC = ({ onSubmit, isLoading, title }) => { const [editMode, setEditMode] = useState(false); - const [changedTitle, onTitleChange] = useState(title); + const [changedTitle, onTitleChange] = useState(typeof title === 'string' ? title : ''); const onCancel = useCallback(() => setEditMode(false), []); const onClickEditIcon = useCallback(() => setEditMode(true), []); - const onClickSubmit = useCallback( - (newTitle: string): void => { - onSubmit(newTitle); - setEditMode(false); + const onClickSubmit = useCallback((): void => { + if (changedTitle !== title) { + onSubmit(changedTitle); + } + setEditMode(false); + }, [changedTitle, title]); + + const handleOnChange = useCallback( + (e: ChangeEvent) => { + onTitleChange(e.target.value); }, - [changedTitle] + [onTitleChange] ); return editMode ? ( onTitleChange(e.target.value)} + onChange={handleOnChange} value={`${changedTitle}`} data-test-subj="editable-title-input-field" /> @@ -61,17 +72,23 @@ const EditableTitleComponent: React.FC = ({ onSubmit, isLoading, title }) onClickSubmit(changedTitle as string)} + color="secondary" data-test-subj="editable-title-submit-btn" + fill + iconType="save" + onClick={onClickSubmit} + size="s" > - {i18n.SUBMIT} + {i18n.SAVE} - + {i18n.CANCEL} @@ -84,12 +101,15 @@ const EditableTitleComponent: React.FC = ({ onSubmit, isLoading, title }) </EuiFlexItem> <EuiFlexItem grow={false}> - <StyledEuiButtonIcon - aria-label={i18n.EDIT_TITLE_ARIA(title as string)} - iconType="pencil" - onClick={onClickEditIcon} - data-test-subj="editable-title-edit-icon" - /> + {isLoading && <MySpinner />} + {!isLoading && ( + <MyEuiButtonIcon + aria-label={i18n.EDIT_TITLE_ARIA(title as string)} + iconType="pencil" + onClick={onClickEditIcon} + data-test-subj="editable-title-edit-icon" + /> + )} </EuiFlexItem> </EuiFlexGroup> ); diff --git a/x-pack/legacy/plugins/siem/public/components/header_page/translations.ts b/x-pack/legacy/plugins/siem/public/components/header_page/translations.ts index 2bc2ac492b0b13..764f1e5ac37312 100644 --- a/x-pack/legacy/plugins/siem/public/components/header_page/translations.ts +++ b/x-pack/legacy/plugins/siem/public/components/header_page/translations.ts @@ -6,8 +6,8 @@ import { i18n } from '@kbn/i18n'; -export const SUBMIT = i18n.translate('xpack.siem.header.editableTitle.submit', { - defaultMessage: 'Submit', +export const SAVE = i18n.translate('xpack.siem.header.editableTitle.save', { + defaultMessage: 'Save', }); export const CANCEL = i18n.translate('xpack.siem.header.editableTitle.cancel', { diff --git a/x-pack/legacy/plugins/siem/public/components/markdown_editor/constants.ts b/x-pack/legacy/plugins/siem/public/components/markdown_editor/constants.ts new file mode 100644 index 00000000000000..dc57de5252b3ee --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/markdown_editor/constants.ts @@ -0,0 +1,7 @@ +/* + * 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 MARKDOWN_HELP_LINK = 'https://www.markdownguide.org/cheat-sheet/'; diff --git a/x-pack/legacy/plugins/siem/public/components/markdown_editor/form.tsx b/x-pack/legacy/plugins/siem/public/components/markdown_editor/form.tsx new file mode 100644 index 00000000000000..3c5287a6fac246 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/markdown_editor/form.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 { EuiFormRow } from '@elastic/eui'; +import React, { useCallback } from 'react'; + +import { FieldHook, getFieldValidityAndErrorMessage } from '../../shared_imports'; +import { MarkdownEditor } from '.'; + +interface IMarkdownEditorForm { + dataTestSubj: string; + field: FieldHook; + idAria: string; + isDisabled: boolean; + placeholder?: string; + footerContentRight?: React.ReactNode; +} +export const MarkdownEditorForm = ({ + dataTestSubj, + field, + idAria, + isDisabled = false, + placeholder, + footerContentRight, +}: IMarkdownEditorForm) => { + const { isInvalid, errorMessage } = getFieldValidityAndErrorMessage(field); + + const handleContentChange = useCallback( + (newContent: string) => { + field.setValue(newContent); + }, + [field] + ); + + return ( + <EuiFormRow + label={field.label} + labelAppend={field.labelAppend} + helpText={field.helpText} + error={errorMessage} + isInvalid={isInvalid} + fullWidth + data-test-subj={dataTestSubj} + describedByIds={idAria ? [idAria] : undefined} + > + <MarkdownEditor + initialContent={field.value as string} + isDisabled={isDisabled} + footerContentRight={footerContentRight} + onChange={handleContentChange} + placeholder={placeholder} + /> + </EuiFormRow> + ); +}; diff --git a/x-pack/legacy/plugins/siem/public/components/markdown_editor/index.tsx b/x-pack/legacy/plugins/siem/public/components/markdown_editor/index.tsx new file mode 100644 index 00000000000000..8572b447cced8f --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/markdown_editor/index.tsx @@ -0,0 +1,121 @@ +/* + * 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 { + EuiFlexGroup, + EuiFlexItem, + EuiLink, + EuiPanel, + EuiTabbedContent, + EuiTextArea, +} from '@elastic/eui'; +import React, { useEffect, useMemo, useState } from 'react'; +import styled, { css } from 'styled-components'; + +import { Markdown } from '../markdown'; +import * as i18n from './translations'; +import { MARKDOWN_HELP_LINK } from './constants'; + +const TextArea = styled(EuiTextArea)` + width: 100%; +`; + +const Container = styled(EuiPanel)` + ${({ theme }) => css` + padding: 0; + background: ${theme.eui.euiColorLightestShade}; + position: relative; + .euiTab { + padding: 10px; + } + .euiFormRow__labelWrapper { + position: absolute; + top: -${theme.eui.euiSizeL}; + } + .euiFormErrorText { + padding: 0 ${theme.eui.euiSizeM}; + } + `} +`; + +const Tabs = styled(EuiTabbedContent)` + width: 100%; +`; + +const Footer = styled(EuiFlexGroup)` + ${({ theme }) => css` + height: 41px; + padding: 0 ${theme.eui.euiSizeM}; + .euiLink { + font-size: ${theme.eui.euiSizeM}; + } + `} +`; + +const MarkdownContainer = styled(EuiPanel)` + min-height: 150px; + overflow: auto; +`; + +/** An input for entering a new case description */ +export const MarkdownEditor = React.memo<{ + placeholder?: string; + footerContentRight?: React.ReactNode; + initialContent: string; + isDisabled?: boolean; + onChange: (description: string) => void; +}>(({ placeholder, footerContentRight, initialContent, isDisabled = false, onChange }) => { + const [content, setContent] = useState(initialContent); + useEffect(() => { + onChange(content); + }, [content]); + const tabs = useMemo( + () => [ + { + id: 'comment', + name: i18n.MARKDOWN, + content: ( + <TextArea + onChange={e => { + setContent(e.target.value); + }} + aria-label={`markdown-editor-comment`} + fullWidth={true} + disabled={isDisabled} + placeholder={placeholder ?? ''} + spellCheck={false} + value={content} + /> + ), + }, + { + id: 'preview', + name: i18n.PREVIEW, + content: ( + <MarkdownContainer data-test-subj="markdown-container" paddingSize="s"> + <Markdown raw={content} /> + </MarkdownContainer> + ), + }, + ], + [content, isDisabled, placeholder] + ); + return ( + <Container> + <Tabs data-test-subj={`markdown-tabs`} size="s" tabs={tabs} initialSelectedTab={tabs[0]} /> + <Footer alignItems="center" gutterSize="none" justifyContent="spaceBetween"> + <EuiFlexItem grow={false}> + <EuiLink href={MARKDOWN_HELP_LINK} external target="_blank"> + {i18n.MARKDOWN_SYNTAX_HELP} + </EuiLink> + </EuiFlexItem> + {footerContentRight && <EuiFlexItem grow={false}>{footerContentRight}</EuiFlexItem>} + </Footer> + </Container> + ); +}); + +MarkdownEditor.displayName = 'MarkdownEditor'; diff --git a/x-pack/legacy/plugins/siem/public/components/markdown_editor/translations.ts b/x-pack/legacy/plugins/siem/public/components/markdown_editor/translations.ts new file mode 100644 index 00000000000000..642c524c48be05 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/components/markdown_editor/translations.ts @@ -0,0 +1,18 @@ +/* + * 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'; + +export const MARKDOWN_SYNTAX_HELP = i18n.translate('xpack.siem.markdownEditor.markdownInputHelp', { + defaultMessage: 'Markdown syntax help', +}); + +export const MARKDOWN = i18n.translate('xpack.siem.markdownEditor.markdown', { + defaultMessage: 'Markdown', +}); +export const PREVIEW = i18n.translate('xpack.siem.markdownEditor.preview', { + defaultMessage: 'Preview', +}); diff --git a/x-pack/legacy/plugins/siem/public/components/navigation/index.test.tsx b/x-pack/legacy/plugins/siem/public/components/navigation/index.test.tsx index e1b3951a2317d9..a821d310344d8d 100644 --- a/x-pack/legacy/plugins/siem/public/components/navigation/index.test.tsx +++ b/x-pack/legacy/plugins/siem/public/components/navigation/index.test.tsx @@ -70,7 +70,7 @@ describe('SIEM Navigation', () => { disabled: false, href: '#/link-to/case', id: 'case', - name: 'Case', + name: 'Cases', urlKey: 'case', }, detections: { @@ -163,7 +163,7 @@ describe('SIEM Navigation', () => { disabled: false, href: '#/link-to/case', id: 'case', - name: 'Case', + name: 'Cases', urlKey: 'case', }, detections: { diff --git a/x-pack/legacy/plugins/siem/public/containers/case/api.ts b/x-pack/legacy/plugins/siem/public/containers/case/api.ts index bff3bfd62a85c0..f1d87ca58b44b8 100644 --- a/x-pack/legacy/plugins/siem/public/containers/case/api.ts +++ b/x-pack/legacy/plugins/siem/public/containers/case/api.ts @@ -5,12 +5,22 @@ */ import { KibanaServices } from '../../lib/kibana'; -import { FetchCasesProps, Case, NewCase, SortFieldCase, AllCases, CaseSnake } from './types'; +import { + AllCases, + Case, + CaseSnake, + Comment, + CommentSnake, + FetchCasesProps, + NewCase, + NewComment, + SortFieldCase, +} from './types'; import { throwIfNotOk } from '../../hooks/api/api'; import { CASES_URL } from './constants'; import { convertToCamelCase, convertAllCasesToCamel } from './utils'; -export const getCase = async (caseId: string, includeComments: boolean): Promise<Case> => { +export const getCase = async (caseId: string, includeComments: boolean = true): Promise<Case> => { const response = await KibanaServices.get().http.fetch(`${CASES_URL}/${caseId}`, { method: 'GET', asResponse: true, @@ -72,3 +82,27 @@ export const updateCaseProperty = async ( await throwIfNotOk(response.response); return convertToCamelCase<Partial<CaseSnake>, Partial<Case>>(response.body!); }; + +export const createComment = async (newComment: NewComment, caseId: string): Promise<Comment> => { + const response = await KibanaServices.get().http.fetch(`${CASES_URL}/${caseId}/comment`, { + method: 'POST', + asResponse: true, + body: JSON.stringify(newComment), + }); + await throwIfNotOk(response.response); + return convertToCamelCase<CommentSnake, Comment>(response.body!); +}; + +export const updateComment = async ( + commentId: string, + commentUpdate: string, + version: string +): Promise<Partial<Comment>> => { + const response = await KibanaServices.get().http.fetch(`${CASES_URL}/comment/${commentId}`, { + method: 'PATCH', + asResponse: true, + body: JSON.stringify({ comment: commentUpdate, version }), + }); + await throwIfNotOk(response.response); + return convertToCamelCase<Partial<CommentSnake>, Partial<Comment>>(response.body!); +}; diff --git a/x-pack/legacy/plugins/siem/public/containers/case/constants.ts b/x-pack/legacy/plugins/siem/public/containers/case/constants.ts index c8d668527ae329..031ba1c128a247 100644 --- a/x-pack/legacy/plugins/siem/public/containers/case/constants.ts +++ b/x-pack/legacy/plugins/siem/public/containers/case/constants.ts @@ -11,6 +11,6 @@ export const FETCH_FAILURE = 'FETCH_FAILURE'; export const FETCH_INIT = 'FETCH_INIT'; export const FETCH_SUCCESS = 'FETCH_SUCCESS'; export const POST_NEW_CASE = 'POST_NEW_CASE'; -export const UPDATE_CASE_PROPERTY = 'UPDATE_CASE_PROPERTY'; +export const POST_NEW_COMMENT = 'POST_NEW_COMMENT'; export const UPDATE_FILTER_OPTIONS = 'UPDATE_FILTER_OPTIONS'; export const UPDATE_QUERY_PARAMS = 'UPDATE_QUERY_PARAMS'; diff --git a/x-pack/legacy/plugins/siem/public/containers/case/types.ts b/x-pack/legacy/plugins/siem/public/containers/case/types.ts index 1aea0b0f50a893..75ed6f7c2366dd 100644 --- a/x-pack/legacy/plugins/siem/public/containers/case/types.ts +++ b/x-pack/legacy/plugins/siem/public/containers/case/types.ts @@ -14,8 +14,31 @@ export interface NewCase extends FormData { title: string; } +export interface NewComment extends FormData { + comment: string; +} + +export interface CommentSnake { + comment_id: string; + created_at: string; + created_by: ElasticUserSnake; + comment: string; + updated_at: string; + version: string; +} + +export interface Comment { + commentId: string; + createdAt: string; + createdBy: ElasticUser; + comment: string; + updatedAt: string; + version: string; +} + export interface CaseSnake { case_id: string; + comments: CommentSnake[]; created_at: string; created_by: ElasticUserSnake; description: string; @@ -23,11 +46,12 @@ export interface CaseSnake { tags: string[]; title: string; updated_at: string; - version?: string; + version: string; } export interface Case { caseId: string; + comments: Comment[]; createdAt: string; createdBy: ElasticUser; description: string; @@ -35,7 +59,7 @@ export interface Case { tags: string[]; title: string; updatedAt: string; - version?: string; + version: string; } export interface QueryParams { diff --git a/x-pack/legacy/plugins/siem/public/containers/case/use_get_case.tsx b/x-pack/legacy/plugins/siem/public/containers/case/use_get_case.tsx index bf76b69ef22d66..ce71c26078db94 100644 --- a/x-pack/legacy/plugins/siem/public/containers/case/use_get_case.tsx +++ b/x-pack/legacy/plugins/siem/public/containers/case/use_get_case.tsx @@ -52,6 +52,7 @@ const dataFetchReducer = (state: CaseState, action: Action): CaseState => { const initialData: Case = { caseId: '', createdAt: '', + comments: [], createdBy: { username: '', }, @@ -60,6 +61,7 @@ const initialData: Case = { tags: [], title: '', updatedAt: '', + version: '', }; export const useGetCase = (caseId: string): [CaseState] => { @@ -75,7 +77,7 @@ export const useGetCase = (caseId: string): [CaseState] => { const fetchData = async () => { dispatch({ type: FETCH_INIT }); try { - const response = await getCase(caseId, false); + const response = await getCase(caseId); if (!didCancel) { dispatch({ type: FETCH_SUCCESS, payload: response }); } diff --git a/x-pack/legacy/plugins/siem/public/containers/case/use_post_case.tsx b/x-pack/legacy/plugins/siem/public/containers/case/use_post_case.tsx index 5cf99701977d27..0fcc8a3a1abecb 100644 --- a/x-pack/legacy/plugins/siem/public/containers/case/use_post_case.tsx +++ b/x-pack/legacy/plugins/siem/public/containers/case/use_post_case.tsx @@ -80,8 +80,7 @@ export const usePostCase = (): [NewCaseState, Dispatch<SetStateAction<NewCase>>] const postCase = async () => { dispatch({ type: FETCH_INIT }); try { - const dataWithoutIsNew = state.data; - delete dataWithoutIsNew.isNew; + const { isNew, ...dataWithoutIsNew } = state.data; const response = await createCase(dataWithoutIsNew); dispatch({ type: FETCH_SUCCESS, payload: response }); } catch (error) { diff --git a/x-pack/legacy/plugins/siem/public/containers/case/use_post_comment.tsx b/x-pack/legacy/plugins/siem/public/containers/case/use_post_comment.tsx new file mode 100644 index 00000000000000..d8abda25af286b --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/containers/case/use_post_comment.tsx @@ -0,0 +1,97 @@ +/* + * 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 { Dispatch, SetStateAction, useEffect, useReducer, useState } from 'react'; +import { useStateToaster } from '../../components/toasters'; +import { errorToToaster } from '../../components/ml/api/error_to_toaster'; +import * as i18n from './translations'; +import { FETCH_FAILURE, FETCH_INIT, FETCH_SUCCESS, POST_NEW_COMMENT } from './constants'; +import { Comment, NewComment } from './types'; +import { createComment } from './api'; +import { getTypedPayload } from './utils'; + +interface NewCommentState { + data: NewComment; + newComment?: Comment; + isLoading: boolean; + isError: boolean; + caseId: string; +} +interface Action { + type: string; + payload?: NewComment | Comment; +} + +const dataFetchReducer = (state: NewCommentState, action: Action): NewCommentState => { + switch (action.type) { + case FETCH_INIT: + return { + ...state, + isLoading: true, + isError: false, + }; + case POST_NEW_COMMENT: + return { + ...state, + isLoading: false, + isError: false, + data: getTypedPayload<NewComment>(action.payload), + }; + case FETCH_SUCCESS: + return { + ...state, + isLoading: false, + isError: false, + newComment: getTypedPayload<Comment>(action.payload), + }; + case FETCH_FAILURE: + return { + ...state, + isLoading: false, + isError: true, + }; + default: + throw new Error(); + } +}; +const initialData: NewComment = { + comment: '', +}; + +export const usePostComment = ( + caseId: string +): [NewCommentState, Dispatch<SetStateAction<NewComment>>] => { + const [state, dispatch] = useReducer(dataFetchReducer, { + isLoading: false, + isError: false, + caseId, + data: initialData, + }); + const [formData, setFormData] = useState(initialData); + const [, dispatchToaster] = useStateToaster(); + + useEffect(() => { + dispatch({ type: POST_NEW_COMMENT, payload: formData }); + }, [formData]); + + useEffect(() => { + const postComment = async () => { + dispatch({ type: FETCH_INIT }); + try { + const { isNew, ...dataWithoutIsNew } = state.data; + const response = await createComment(dataWithoutIsNew, state.caseId); + dispatch({ type: FETCH_SUCCESS, payload: response }); + } catch (error) { + errorToToaster({ title: i18n.ERROR_TITLE, error, dispatchToaster }); + dispatch({ type: FETCH_FAILURE }); + } + }; + if (state.data.isNew) { + postComment(); + } + }, [state.data.isNew]); + return [state, setFormData]; +}; diff --git a/x-pack/legacy/plugins/siem/public/containers/case/use_update_case.tsx b/x-pack/legacy/plugins/siem/public/containers/case/use_update_case.tsx index 62e3d87b528c09..ebbb1e14dc2375 100644 --- a/x-pack/legacy/plugins/siem/public/containers/case/use_update_case.tsx +++ b/x-pack/legacy/plugins/siem/public/containers/case/use_update_case.tsx @@ -4,11 +4,11 @@ * you may not use this file except in compliance with the Elastic License. */ -import { useEffect, useReducer } from 'react'; +import { useReducer } from 'react'; import { useStateToaster } from '../../components/toasters'; import { errorToToaster } from '../../components/ml/api/error_to_toaster'; import * as i18n from './translations'; -import { FETCH_FAILURE, FETCH_INIT, FETCH_SUCCESS, UPDATE_CASE_PROPERTY } from './constants'; +import { FETCH_FAILURE, FETCH_INIT, FETCH_SUCCESS } from './constants'; import { Case } from './types'; import { updateCaseProperty } from './api'; import { getTypedPayload } from './utils'; @@ -19,7 +19,7 @@ interface NewCaseState { data: Case; isLoading: boolean; isError: boolean; - updateKey?: UpdateKey | null; + updateKey: UpdateKey | null; } interface UpdateByKey { @@ -29,7 +29,7 @@ interface UpdateByKey { interface Action { type: string; - payload?: Partial<Case> | UpdateByKey; + payload?: Partial<Case> | UpdateKey; } const dataFetchReducer = (state: NewCaseState, action: Action): NewCaseState => { @@ -39,20 +39,9 @@ const dataFetchReducer = (state: NewCaseState, action: Action): NewCaseState => ...state, isLoading: true, isError: false, - updateKey: null, - }; - case UPDATE_CASE_PROPERTY: - const { updateKey, updateValue } = getTypedPayload<UpdateByKey>(action.payload); - return { - ...state, - isLoading: false, - isError: false, - data: { - ...state.data, - [updateKey]: updateValue, - }, - updateKey, + updateKey: getTypedPayload<UpdateKey>(action.payload), }; + case FETCH_SUCCESS: return { ...state, @@ -62,12 +51,14 @@ const dataFetchReducer = (state: NewCaseState, action: Action): NewCaseState => ...state.data, ...getTypedPayload<Case>(action.payload), }, + updateKey: null, }; case FETCH_FAILURE: return { ...state, isLoading: false, isError: true, + updateKey: null, }; default: throw new Error(); @@ -77,40 +68,29 @@ const dataFetchReducer = (state: NewCaseState, action: Action): NewCaseState => export const useUpdateCase = ( caseId: string, initialData: Case -): [{ data: Case }, (updates: UpdateByKey) => void] => { +): [NewCaseState, (updates: UpdateByKey) => void] => { const [state, dispatch] = useReducer(dataFetchReducer, { isLoading: false, isError: false, data: initialData, + updateKey: null, }); const [, dispatchToaster] = useStateToaster(); - const dispatchUpdateCaseProperty = ({ updateKey, updateValue }: UpdateByKey) => { - dispatch({ - type: UPDATE_CASE_PROPERTY, - payload: { updateKey, updateValue }, - }); - }; - - useEffect(() => { - const updateData = async (updateKey: keyof Case) => { - dispatch({ type: FETCH_INIT }); - try { - const response = await updateCaseProperty( - caseId, - { [updateKey]: state.data[updateKey] }, - state.data.version ?? '' // saved object versions are typed as string | undefined, hope that's not true - ); - dispatch({ type: FETCH_SUCCESS, payload: response }); - } catch (error) { - errorToToaster({ title: i18n.ERROR_TITLE, error, dispatchToaster }); - dispatch({ type: FETCH_FAILURE }); - } - }; - if (state.updateKey) { - updateData(state.updateKey); + const dispatchUpdateCaseProperty = async ({ updateKey, updateValue }: UpdateByKey) => { + dispatch({ type: FETCH_INIT, payload: updateKey }); + try { + const response = await updateCaseProperty( + caseId, + { [updateKey]: updateValue }, + state.data.version ?? '' // saved object versions are typed as string | undefined, hope that's not true + ); + dispatch({ type: FETCH_SUCCESS, payload: response }); + } catch (error) { + errorToToaster({ title: i18n.ERROR_TITLE, error, dispatchToaster }); + dispatch({ type: FETCH_FAILURE }); } - }, [state.updateKey]); + }; - return [{ data: state.data }, dispatchUpdateCaseProperty]; + return [state, dispatchUpdateCaseProperty]; }; diff --git a/x-pack/legacy/plugins/siem/public/containers/case/use_update_comment.tsx b/x-pack/legacy/plugins/siem/public/containers/case/use_update_comment.tsx new file mode 100644 index 00000000000000..bc8369117433a2 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/containers/case/use_update_comment.tsx @@ -0,0 +1,92 @@ +/* + * 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 { useReducer, useRef } from 'react'; +import { useStateToaster } from '../../components/toasters'; +import { errorToToaster } from '../../components/ml/api/error_to_toaster'; +import * as i18n from './translations'; +import { FETCH_FAILURE, FETCH_INIT, FETCH_SUCCESS } from './constants'; +import { Comment } from './types'; +import { updateComment } from './api'; +import { getTypedPayload } from './utils'; + +interface CommetUpdateState { + data: Comment[]; + isLoadingIds: string[]; + isError: boolean; +} + +interface CommentUpdate { + update: Partial<Comment>; + commentId: string; +} + +interface Action { + type: string; + payload?: CommentUpdate | string; +} + +const dataFetchReducer = (state: CommetUpdateState, action: Action): CommetUpdateState => { + switch (action.type) { + case FETCH_INIT: + return { + ...state, + isLoadingIds: [...state.isLoadingIds, getTypedPayload<string>(action.payload)], + isError: false, + }; + + case FETCH_SUCCESS: + const updatePayload = getTypedPayload<CommentUpdate>(action.payload); + const foundIndex = state.data.findIndex( + comment => comment.commentId === updatePayload.commentId + ); + state.data[foundIndex] = { ...state.data[foundIndex], ...updatePayload.update }; + return { + ...state, + isLoadingIds: state.isLoadingIds.filter(id => updatePayload.commentId !== id), + isError: false, + data: [...state.data], + }; + case FETCH_FAILURE: + return { + ...state, + isLoadingIds: state.isLoadingIds.filter( + id => getTypedPayload<string>(action.payload) !== id + ), + isError: true, + }; + default: + throw new Error(); + } +}; + +export const useUpdateComment = ( + comments: Comment[] +): [CommetUpdateState, (commentId: string, commentUpdate: string) => void] => { + const [state, dispatch] = useReducer(dataFetchReducer, { + isLoadingIds: [], + isError: false, + data: comments, + }); + const dispatchUpdateComment = useRef<(commentId: string, commentUpdate: string) => void>(); + const [, dispatchToaster] = useStateToaster(); + + dispatchUpdateComment.current = async (commentId: string, commentUpdate: string) => { + dispatch({ type: FETCH_INIT, payload: commentId }); + try { + const currentComment = state.data.find(comment => comment.commentId === commentId) ?? { + version: '', + }; + const response = await updateComment(commentId, commentUpdate, currentComment.version); + dispatch({ type: FETCH_SUCCESS, payload: { update: response, commentId } }); + } catch (error) { + errorToToaster({ title: i18n.ERROR_TITLE, error, dispatchToaster }); + dispatch({ type: FETCH_FAILURE, payload: commentId }); + } + }; + + return [state, dispatchUpdateComment.current]; +}; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/add_comment/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/add_comment/index.tsx new file mode 100644 index 00000000000000..c8e0dafcf5742b --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/add_comment/index.tsx @@ -0,0 +1,73 @@ +/* + * 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, { useCallback } from 'react'; +import { EuiButton, EuiLoadingSpinner } from '@elastic/eui'; +import styled from 'styled-components'; +import { Form, useForm, UseField } from '../../../../shared_imports'; +import { NewComment } from '../../../../containers/case/types'; +import { usePostComment } from '../../../../containers/case/use_post_comment'; +import { schema } from './schema'; +import * as i18n from '../../translations'; +import { MarkdownEditorForm } from '../../../../components/markdown_editor/form'; + +const MySpinner = styled(EuiLoadingSpinner)` + position: absolute; + top: 50%; + left: 50%; +`; + +export const AddComment = React.memo<{ + caseId: string; +}>(({ caseId }) => { + const [{ data, isLoading, newComment }, setFormData] = usePostComment(caseId); + const { form } = useForm({ + defaultValue: data, + options: { stripEmptyFields: false }, + schema, + }); + + const onSubmit = useCallback(async () => { + const { isValid, data: newData } = await form.submit(); + if (isValid && newData.comment) { + setFormData({ ...newData, isNew: true } as NewComment); + } else if (isValid && data.comment) { + setFormData({ ...data, ...newData, isNew: true } as NewComment); + } + }, [form, data]); + + return ( + <> + {isLoading && <MySpinner size="xl" />} + <Form form={form}> + <UseField + path="comment" + component={MarkdownEditorForm} + componentProps={{ + idAria: 'caseComment', + isDisabled: isLoading, + dataTestSubj: 'caseComment', + placeholder: i18n.ADD_COMMENT_HELP_TEXT, + footerContentRight: ( + <EuiButton + iconType="plusInCircle" + isDisabled={isLoading} + isLoading={isLoading} + onClick={onSubmit} + size="s" + > + {i18n.ADD_COMMENT} + </EuiButton> + ), + }} + /> + </Form> + {newComment && + 'TO DO new comment got added but we didnt update the UI yet. Refresh the page to see your comment ;)'} + </> + ); +}); + +AddComment.displayName = 'AddComment'; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/add_comment/schema.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/add_comment/schema.tsx new file mode 100644 index 00000000000000..5f30f59149d99b --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/add_comment/schema.tsx @@ -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 { FIELD_TYPES, fieldValidators, FormSchema } from '../../../../shared_imports'; +import * as i18n from '../../translations'; + +const { emptyField } = fieldValidators; + +export const schema: FormSchema = { + comment: { + type: FIELD_TYPES.TEXTAREA, + validations: [ + { + validator: emptyField(i18n.COMMENT_REQUIRED), + }, + ], + }, +}; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/all_cases/__mock__/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/all_cases/__mock__/index.tsx index 98a67304fcf1f1..0169493773b748 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/all_cases/__mock__/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/all_cases/__mock__/index.tsx @@ -14,51 +14,61 @@ export const useGetCasesMockState: UseGetCasesState = { caseId: '3c4ddcc0-4e99-11ea-9290-35d05cb55c15', createdAt: '2020-02-13T19:44:23.627Z', createdBy: { username: 'elastic' }, + comments: [], description: 'Security banana Issue', state: 'open', tags: ['defacement'], title: 'Another horrible breach', updatedAt: '2020-02-13T19:44:23.627Z', + version: 'WzQ3LDFd', }, { caseId: '362a5c10-4e99-11ea-9290-35d05cb55c15', createdAt: '2020-02-13T19:44:13.328Z', createdBy: { username: 'elastic' }, + comments: [], description: 'Security banana Issue', state: 'open', tags: ['phishing'], title: 'Bad email', updatedAt: '2020-02-13T19:44:13.328Z', + version: 'WzQ3LDFd', }, { caseId: '34f8b9e0-4e99-11ea-9290-35d05cb55c15', createdAt: '2020-02-13T19:44:11.328Z', createdBy: { username: 'elastic' }, + comments: [], description: 'Security banana Issue', state: 'open', tags: ['phishing'], title: 'Bad email', updatedAt: '2020-02-13T19:44:11.328Z', + version: 'WzQ3LDFd', }, { caseId: '31890e90-4e99-11ea-9290-35d05cb55c15', createdAt: '2020-02-13T19:44:05.563Z', createdBy: { username: 'elastic' }, + comments: [], description: 'Security banana Issue', state: 'closed', tags: ['phishing'], title: 'Uh oh', updatedAt: '2020-02-18T21:32:24.056Z', + version: 'WzQ3LDFd', }, { caseId: '2f5b3210-4e99-11ea-9290-35d05cb55c15', createdAt: '2020-02-13T19:44:01.901Z', createdBy: { username: 'elastic' }, + comments: [], description: 'Security banana Issue', state: 'open', tags: ['phishing'], title: 'Uh oh', updatedAt: '2020-02-13T19:44:01.901Z', + version: 'WzQ3LDFd', }, ], page: 1, diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/all_cases/columns.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/all_cases/columns.tsx index 4c47bf605051d5..9c276d1b24da1b 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/all_cases/columns.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/all_cases/columns.tsx @@ -19,7 +19,7 @@ const renderStringField = (field: string, dataTestSubj: string) => export const getCasesColumns = (): CasesColumns[] => [ { - name: i18n.CASE_TITLE, + name: i18n.NAME, render: (theCase: Case) => { if (theCase.caseId != null && theCase.title != null) { return <CaseDetailsLink detailName={theCase.caseId}>{theCase.title}</CaseDetailsLink>; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/__mock__/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/__mock__/index.tsx index 7480c4fc4bb2a0..89d321c6d106a5 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/__mock__/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/__mock__/index.tsx @@ -11,6 +11,19 @@ export const caseProps: CaseProps = { caseId: '3c4ddcc0-4e99-11ea-9290-35d05cb55c15', initialData: { caseId: '3c4ddcc0-4e99-11ea-9290-35d05cb55c15', + comments: [ + { + comment: 'Solve this fast!', + commentId: 'a357c6a0-5435-11ea-b427-fb51a1fcb7b8', + createdAt: '2020-02-20T23:06:33.798Z', + createdBy: { + fullName: 'Steph Milovic', + username: 'smilovic', + }, + updatedAt: '2020-02-20T23:06:33.798Z', + version: 'WzQ3LDFd', + }, + ], createdAt: '2020-02-13T19:44:23.627Z', createdBy: { fullName: null, username: 'elastic' }, description: 'Security banana Issue', @@ -18,12 +31,25 @@ export const caseProps: CaseProps = { tags: ['defacement'], title: 'Another horrible breach!!', updatedAt: '2020-02-19T15:02:57.995Z', + version: 'WzQ3LDFd', }, - isLoading: false, }; export const data: Case = { caseId: '3c4ddcc0-4e99-11ea-9290-35d05cb55c15', + comments: [ + { + comment: 'Solve this fast!', + commentId: 'a357c6a0-5435-11ea-b427-fb51a1fcb7b8', + createdAt: '2020-02-20T23:06:33.798Z', + createdBy: { + fullName: 'Steph Milovic', + username: 'smilovic', + }, + updatedAt: '2020-02-20T23:06:33.798Z', + version: 'WzQ3LDFd', + }, + ], createdAt: '2020-02-13T19:44:23.627Z', createdBy: { username: 'elastic', fullName: null }, description: 'Security banana Issue', @@ -31,4 +57,5 @@ export const data: Case = { tags: ['defacement'], title: 'Another horrible breach!!', updatedAt: '2020-02-19T15:02:57.995Z', + version: 'WzQ3LDFd', }; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/index.test.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/index.test.tsx index a9e694bad705da..1539b3de5a0c13 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/index.test.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/index.test.tsx @@ -16,7 +16,12 @@ describe('CaseView ', () => { beforeEach(() => { jest.resetAllMocks(); - jest.spyOn(apiHook, 'useUpdateCase').mockReturnValue([{ data }, dispatchUpdateCaseProperty]); + jest + .spyOn(apiHook, 'useUpdateCase') + .mockReturnValue([ + { data, isLoading: false, isError: false, updateKey: null }, + dispatchUpdateCaseProperty, + ]); }); it('should render CaseComponent', () => { @@ -79,4 +84,38 @@ describe('CaseView ', () => { updateValue: 'closed', }); }); + + it('should render comments', () => { + const wrapper = mount( + <TestProviders> + <CaseComponent {...caseProps} /> + </TestProviders> + ); + expect( + wrapper + .find( + `div[data-test-subj="user-action-${data.comments[0].commentId}-avatar"] [data-test-subj="user-action-avatar"]` + ) + .first() + .prop('name') + ).toEqual(data.comments[0].createdBy.fullName); + + expect( + wrapper + .find( + `div[data-test-subj="user-action-${data.comments[0].commentId}"] [data-test-subj="user-action-title"] strong` + ) + .first() + .text() + ).toEqual(data.comments[0].createdBy.username); + + expect( + wrapper + .find( + `div[data-test-subj="user-action-${data.comments[0].commentId}"] [data-test-subj="markdown"]` + ) + .first() + .prop('source') + ).toEqual(data.comments[0].comment); + }); }); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/index.tsx index df3e30a698b56e..605f9e8fa17134 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/index.tsx @@ -4,11 +4,9 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { useCallback, useEffect, useState } from 'react'; +import React, { useCallback } from 'react'; import { EuiBadge, - EuiButton, - EuiButtonEmpty, EuiButtonToggle, EuiDescriptionList, EuiDescriptionListDescription, @@ -20,13 +18,11 @@ import { import styled, { css } from 'styled-components'; import * as i18n from './translations'; -import { DescriptionMarkdown } from '../description_md_editor'; import { Case } from '../../../../containers/case/types'; import { FormattedRelativePreferenceDate } from '../../../../components/formatted_date'; import { getCaseUrl } from '../../../../components/link_to'; import { HeaderPage } from '../../../../components/header_page'; import { EditableTitle } from '../../../../components/header_page/editable_title'; -import { Markdown } from '../../../../components/markdown'; import { PropertyActions } from '../property_actions'; import { TagList } from '../tag_list'; import { useGetCase } from '../../../../containers/case/use_get_case'; @@ -34,6 +30,7 @@ import { UserActionTree } from '../user_action_tree'; import { UserList } from '../user_list'; import { useUpdateCase } from '../../../../containers/case/use_update_case'; import { WrapperPage } from '../../../../components/wrapper_page'; +import { getTypedPayload } from '../../../../containers/case/utils'; import { WhitePageWrapper } from '../wrappers'; interface Props { @@ -53,95 +50,71 @@ const MyWrapper = styled(WrapperPage)` padding-bottom: 0; `; +const MyEuiFlexGroup = styled(EuiFlexGroup)` + height: 100%; +`; + export interface CaseProps { caseId: string; initialData: Case; - isLoading: boolean; } -export const CaseComponent = React.memo<CaseProps>(({ caseId, initialData, isLoading }) => { - const [{ data }, dispatchUpdateCaseProperty] = useUpdateCase(caseId, initialData); - const [isEditDescription, setIsEditDescription] = useState(false); - const [isEditTags, setIsEditTags] = useState(false); - const [isCaseOpen, setIsCaseOpen] = useState(data.state === 'open'); - const [description, setDescription] = useState(data.description); - const [title, setTitle] = useState(data.title); - const [tags, setTags] = useState(data.tags); +export const CaseComponent = React.memo<CaseProps>(({ caseId, initialData }) => { + const [{ data, isLoading, updateKey }, dispatchUpdateCaseProperty] = useUpdateCase( + caseId, + initialData + ); const onUpdateField = useCallback( - async (updateKey: keyof Case, updateValue: string | string[]) => { - switch (updateKey) { + (newUpdateKey: keyof Case, updateValue: Case[keyof Case]) => { + switch (newUpdateKey) { case 'title': - if (updateValue.length > 0) { + const titleUpdate = getTypedPayload<string>(updateValue); + if (titleUpdate.length > 0) { dispatchUpdateCaseProperty({ updateKey: 'title', - updateValue, + updateValue: titleUpdate, }); } break; case 'description': - if (updateValue.length > 0) { + const descriptionUpdate = getTypedPayload<string>(updateValue); + if (descriptionUpdate.length > 0) { dispatchUpdateCaseProperty({ updateKey: 'description', - updateValue, + updateValue: descriptionUpdate, }); - setIsEditDescription(false); } break; case 'tags': - setTags(updateValue as string[]); - if (updateValue.length > 0) { + const tagsUpdate = getTypedPayload<string[]>(updateValue); + dispatchUpdateCaseProperty({ + updateKey: 'tags', + updateValue: tagsUpdate, + }); + break; + case 'state': + const stateUpdate = getTypedPayload<string>(updateValue); + if (data.state !== updateValue) { dispatchUpdateCaseProperty({ - updateKey: 'tags', - updateValue, + updateKey: 'state', + updateValue: stateUpdate, }); - setIsEditTags(false); } - break; default: return null; } }, - [dispatchUpdateCaseProperty, title] + [dispatchUpdateCaseProperty, data.state] ); - const onSetIsCaseOpen = useCallback(() => setIsCaseOpen(!isCaseOpen), [ - isCaseOpen, - setIsCaseOpen, - ]); - - useEffect(() => { - const caseState = isCaseOpen ? 'open' : 'closed'; - if (data.state !== caseState) { - dispatchUpdateCaseProperty({ - updateKey: 'state', - updateValue: caseState, - }); - } - }, [isCaseOpen]); - // TO DO refactor each of these const's into their own components const propertyActions = [ - { - iconType: 'documentEdit', - label: 'Edit description', - onClick: () => setIsEditDescription(true), - }, - { - iconType: 'securitySignalResolved', - label: 'Close case', - onClick: () => null, - }, { iconType: 'trash', label: 'Delete case', onClick: () => null, }, - { - iconType: 'importAction', - label: 'Push as ServiceNow incident', - onClick: () => null, - }, { iconType: 'popout', label: 'View ServiceNow incident', @@ -153,66 +126,13 @@ export const CaseComponent = React.memo<CaseProps>(({ caseId, initialData, isLoa onClick: () => null, }, ]; - const userActions = [ - { - avatarName: data.createdBy.username, - title: ( - <EuiFlexGroup alignItems="baseline" gutterSize="none" justifyContent="spaceBetween"> - <EuiFlexItem grow={false}> - <p> - <strong>{`${data.createdBy.username}`}</strong> - {` ${i18n.ADDED_DESCRIPTION} `}{' '} - <FormattedRelativePreferenceDate value={data.createdAt} /> - {/* STEPH FIX come back and add label `on` */} - </p> - </EuiFlexItem> - <EuiFlexItem grow={false}> - <PropertyActions propertyActions={propertyActions} /> - </EuiFlexItem> - </EuiFlexGroup> - ), - children: isEditDescription ? ( - <> - <DescriptionMarkdown - descriptionInputHeight={200} - initialDescription={data.description} - isLoading={isLoading} - onChange={updatedDescription => setDescription(updatedDescription)} - /> - <EuiFlexGroup alignItems="center" gutterSize="s" responsive={false} wrap={true}> - <EuiFlexItem grow={false}> - <EuiButton - fill - isDisabled={isLoading} - isLoading={isLoading} - onClick={() => onUpdateField('description', description)} - > - {i18n.SUBMIT} - </EuiButton> - </EuiFlexItem> - <EuiFlexItem grow={false}> - <EuiButtonEmpty onClick={() => setIsEditDescription(false)}> - {i18n.CANCEL} - </EuiButtonEmpty> - </EuiFlexItem> - </EuiFlexGroup> - </> - ) : ( - <Markdown raw={data.description} data-test-subj="case-view-description" /> - ), - }, - ]; - - const onSubmit = useCallback( - newTitle => { - onUpdateField('title', newTitle); - setTitle(newTitle); - }, - [title] + const onSubmit = useCallback(newTitle => onUpdateField('title', newTitle), [onUpdateField]); + const toggleStateCase = useCallback( + e => onUpdateField('state', e.target.checked ? 'open' : 'closed'), + [onUpdateField] ); - - const titleNode = <EditableTitle isLoading={isLoading} title={title} onSubmit={onSubmit} />; + const onSubmitTags = useCallback(newTags => onUpdateField('tags', newTags), [onUpdateField]); return ( <> @@ -223,8 +143,14 @@ export const CaseComponent = React.memo<CaseProps>(({ caseId, initialData, isLoa text: i18n.BACK_TO_ALL, }} data-test-subj="case-view-title" - titleNode={titleNode} - title={title} + titleNode={ + <EditableTitle + isLoading={isLoading && updateKey === 'title'} + title={data.title} + onSubmit={onSubmit} + /> + } + title={data.title} > <EuiFlexGroup gutterSize="l" justifyContent="flexEnd"> <EuiFlexItem grow={false}> @@ -234,7 +160,7 @@ export const CaseComponent = React.memo<CaseProps>(({ caseId, initialData, isLoa <EuiDescriptionListTitle>{i18n.STATUS}</EuiDescriptionListTitle> <EuiDescriptionListDescription> <EuiBadge - color={isCaseOpen ? 'secondary' : 'danger'} + color={data.state === 'open' ? 'secondary' : 'danger'} data-test-subj="case-view-state" > {data.state} @@ -258,10 +184,11 @@ export const CaseComponent = React.memo<CaseProps>(({ caseId, initialData, isLoa <EuiFlexItem> <EuiButtonToggle data-test-subj="toggle-case-state" - label={isCaseOpen ? 'Close case' : 'Reopen case'} - iconType={isCaseOpen ? 'checkInCircleFilled' : 'magnet'} - onChange={onSetIsCaseOpen} - isSelected={isCaseOpen} + iconType={data.state === 'open' ? 'checkInCircleFilled' : 'magnet'} + isLoading={isLoading && updateKey === 'state'} + isSelected={data.state === 'open'} + label={data.state === 'open' ? 'Close case' : 'Reopen case'} + onChange={toggleStateCase} /> </EuiFlexItem> <EuiFlexItem grow={false}> @@ -276,7 +203,11 @@ export const CaseComponent = React.memo<CaseProps>(({ caseId, initialData, isLoa <MyWrapper> <EuiFlexGroup> <EuiFlexItem grow={6}> - <UserActionTree userActions={userActions} /> + <UserActionTree + data={data} + isLoadingDescription={isLoading && updateKey === 'description'} + onUpdateField={onUpdateField} + /> </EuiFlexItem> <EuiFlexItem grow={2}> <UserList @@ -286,14 +217,9 @@ export const CaseComponent = React.memo<CaseProps>(({ caseId, initialData, isLoa /> <TagList data-test-subj="case-view-tag-list" - tags={tags} - iconAction={{ - 'aria-label': title, - iconType: 'pencil', - onSubmit: newTags => onUpdateField('tags', newTags), - onClick: isEdit => setIsEditTags(isEdit), - }} - isEditTags={isEditTags} + tags={data.tags} + onSubmit={onSubmitTags} + isLoading={isLoading && updateKey === 'tags'} /> </EuiFlexItem> </EuiFlexGroup> @@ -310,15 +236,15 @@ export const CaseView = React.memo(({ caseId }: Props) => { } if (isLoading) { return ( - <EuiFlexGroup justifyContent="center" alignItems="center"> + <MyEuiFlexGroup justifyContent="center" alignItems="center"> <EuiFlexItem grow={false}> <EuiLoadingSpinner size="xl" /> </EuiFlexItem> - </EuiFlexGroup> + </MyEuiFlexGroup> ); } - return <CaseComponent caseId={caseId} initialData={data} isLoading={isLoading} />; + return <CaseComponent caseId={caseId} initialData={data} />; }); CaseView.displayName = 'CaseView'; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/translations.ts b/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/translations.ts index f45c52533d2e7b..82b5e771e21513 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/translations.ts +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/case_view/translations.ts @@ -32,6 +32,18 @@ export const EDITED_DESCRIPTION = i18n.translate( } ); +export const EDIT_DESCRIPTION = i18n.translate('xpack.siem.case.caseView.edit.description', { + defaultMessage: 'Edit description', +}); + +export const EDIT_COMMENT = i18n.translate('xpack.siem.case.caseView.edit.comment', { + defaultMessage: 'Edit comment', +}); + +export const ON = i18n.translate('xpack.siem.case.caseView.actionLabel.on', { + defaultMessage: 'on', +}); + export const ADDED_COMMENT = i18n.translate('xpack.siem.case.caseView.actionLabel.addComment', { defaultMessage: 'added comment', }); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/create/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/create/index.tsx index 7d79e287b22e70..65d7256fd6e20c 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/create/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/create/index.tsx @@ -3,38 +3,48 @@ * 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, { useCallback } from 'react'; +import React, { useCallback, useState } from 'react'; import { EuiButton, + EuiButtonEmpty, EuiFlexGroup, EuiFlexItem, - EuiHorizontalRule, EuiLoadingSpinner, EuiPanel, } from '@elastic/eui'; -import styled from 'styled-components'; +import styled, { css } from 'styled-components'; import { Redirect } from 'react-router-dom'; -import { Field, Form, getUseField, useForm } from '../../../shared_imports'; +import { Field, Form, getUseField, useForm, UseField } from '../../../../shared_imports'; import { NewCase } from '../../../../containers/case/types'; import { usePostCase } from '../../../../containers/case/use_post_case'; import { schema } from './schema'; import * as i18n from '../../translations'; import { SiemPageName } from '../../../home/types'; -import { DescriptionMarkdown } from '../description_md_editor'; +import { MarkdownEditorForm } from '../../../../components/markdown_editor/form'; export const CommonUseField = getUseField({ component: Field }); -const TagContainer = styled.div` - margin-top: 16px; +const ContainerBig = styled.div` + ${({ theme }) => css` + margin-top: ${theme.eui.euiSizeXL}; + `} +`; + +const Container = styled.div` + ${({ theme }) => css` + margin-top: ${theme.eui.euiSize}; + `} `; const MySpinner = styled(EuiLoadingSpinner)` position: absolute; top: 50%; left: 50%; + z-index: 99; `; export const Create = React.memo(() => { const [{ data, isLoading, newCase }, setFormData] = usePostCase(); + const [isCancel, setIsCancel] = useState(false); const { form } = useForm({ defaultValue: data, options: { stripEmptyFields: false }, @@ -43,14 +53,19 @@ export const Create = React.memo(() => { const onSubmit = useCallback(async () => { const { isValid, data: newData } = await form.submit(); - if (isValid) { + if (isValid && newData.description) { setFormData({ ...newData, isNew: true } as NewCase); + } else if (isValid && data.description) { + setFormData({ ...data, ...newData, isNew: true } as NewCase); } - }, [form]); + }, [form, data]); if (newCase && newCase.caseId) { return <Redirect to={`/${SiemPageName.case}/${newCase.caseId}`} />; } + if (isCancel) { + return <Redirect to={`/${SiemPageName.case}`} />; + } return ( <EuiPanel> {isLoading && <MySpinner size="xl" />} @@ -62,18 +77,11 @@ export const Create = React.memo(() => { 'data-test-subj': 'caseTitle', euiFieldProps: { fullWidth: false, + disabled: isLoading, }, - isDisabled: isLoading, }} /> - <DescriptionMarkdown - descriptionInputHeight={200} - formHook={true} - initialDescription={data.description} - isLoading={isLoading} - onChange={description => setFormData({ ...data, description })} - /> - <TagContainer> + <Container> <CommonUseField path="tags" componentProps={{ @@ -82,14 +90,24 @@ export const Create = React.memo(() => { euiFieldProps: { fullWidth: true, placeholder: '', + isDisabled: isLoading, }, + }} + /> + </Container> + <ContainerBig> + <UseField + path="description" + component={MarkdownEditorForm} + componentProps={{ + idAria: 'caseDescription', + dataTestSubj: 'caseDescription', isDisabled: isLoading, }} /> - </TagContainer> + </ContainerBig> </Form> - <> - <EuiHorizontalRule margin="m" /> + <Container> <EuiFlexGroup alignItems="center" justifyContent="flexEnd" @@ -97,12 +115,23 @@ export const Create = React.memo(() => { responsive={false} > <EuiFlexItem grow={false}> - <EuiButton fill isDisabled={isLoading} isLoading={isLoading} onClick={onSubmit}> - {i18n.SUBMIT} + <EuiButtonEmpty size="s" onClick={() => setIsCancel(true)} iconType="cross"> + {i18n.CANCEL} + </EuiButtonEmpty> + </EuiFlexItem> + <EuiFlexItem grow={false}> + <EuiButton + fill + iconType="plusInCircle" + isDisabled={isLoading} + isLoading={isLoading} + onClick={onSubmit} + > + {i18n.CREATE_CASE} </EuiButton> </EuiFlexItem> </EuiFlexGroup> - </> + </Container> </EuiPanel> ); }); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/create/schema.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/create/schema.tsx index 1b5df72a6671ca..c81a31f0d4f3f2 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/create/schema.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/create/schema.tsx @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { FIELD_TYPES, fieldValidators, FormSchema } from '../../../shared_imports'; +import { FIELD_TYPES, fieldValidators, FormSchema } from '../../../../shared_imports'; import { OptionalFieldLabel } from './optional_field_label'; import * as i18n from '../../translations'; @@ -13,7 +13,7 @@ const { emptyField } = fieldValidators; export const schema: FormSchema = { title: { type: FIELD_TYPES.TEXT, - label: i18n.CASE_TITLE, + label: i18n.NAME, validations: [ { validator: emptyField(i18n.TITLE_REQUIRED), @@ -21,7 +21,7 @@ export const schema: FormSchema = { ], }, description: { - type: FIELD_TYPES.TEXTAREA, + label: i18n.DESCRIPTION, validations: [ { validator: emptyField(i18n.DESCRIPTION_REQUIRED), diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/description_md_editor/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/description_md_editor/index.tsx deleted file mode 100644 index 44062a5a1d5897..00000000000000 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/description_md_editor/index.tsx +++ /dev/null @@ -1,111 +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 { EuiFlexItem, EuiPanel, EuiTabbedContent, EuiTextArea } from '@elastic/eui'; -import React, { useState } from 'react'; -import styled from 'styled-components'; - -import { Markdown } from '../../../../components/markdown'; -import * as i18n from '../../translations'; -import { MarkdownHint } from '../../../../components/markdown/markdown_hint'; -import { CommonUseField } from '../create'; - -const TextArea = styled(EuiTextArea)<{ height: number }>` - min-height: ${({ height }) => `${height}px`}; - width: 100%; -`; - -TextArea.displayName = 'TextArea'; - -const DescriptionContainer = styled.div` - margin-top: 15px; - margin-bottom: 15px; -`; - -const DescriptionMarkdownTabs = styled(EuiTabbedContent)` - width: 100%; -`; - -DescriptionMarkdownTabs.displayName = 'DescriptionMarkdownTabs'; - -const MarkdownContainer = styled(EuiPanel)<{ height: number }>` - height: ${({ height }) => height}px; - overflow: auto; -`; - -MarkdownContainer.displayName = 'MarkdownContainer'; - -/** An input for entering a new case description */ -export const DescriptionMarkdown = React.memo<{ - descriptionInputHeight: number; - initialDescription: string; - isLoading: boolean; - formHook?: boolean; - onChange: (description: string) => void; -}>(({ initialDescription, isLoading, descriptionInputHeight, onChange, formHook = false }) => { - const [description, setDescription] = useState(initialDescription); - const tabs = [ - { - id: 'description', - name: i18n.DESCRIPTION, - content: formHook ? ( - <CommonUseField - path="description" - onChange={e => { - setDescription(e as string); - onChange(e as string); - }} - componentProps={{ - idAria: 'caseDescription', - 'data-test-subj': 'caseDescription', - isDisabled: isLoading, - spellcheck: false, - }} - /> - ) : ( - <TextArea - onChange={e => { - setDescription(e.target.value); - onChange(e.target.value); - }} - fullWidth={true} - height={descriptionInputHeight} - aria-label={i18n.DESCRIPTION} - disabled={isLoading} - spellCheck={false} - value={description} - /> - ), - }, - { - id: 'preview', - name: i18n.PREVIEW, - content: ( - <MarkdownContainer - data-test-subj="markdown-container" - height={descriptionInputHeight} - paddingSize="s" - > - <Markdown raw={description} /> - </MarkdownContainer> - ), - }, - ]; - return ( - <DescriptionContainer> - <DescriptionMarkdownTabs - data-test-subj="new-description-tabs" - tabs={tabs} - initialSelectedTab={tabs[0]} - /> - <EuiFlexItem grow={true}> - <MarkdownHint show={description.trim().length > 0} /> - </EuiFlexItem> - </DescriptionContainer> - ); -}); - -DescriptionMarkdown.displayName = 'DescriptionMarkdown'; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/tag_list/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/tag_list/index.tsx index 6634672cb6a775..3513d4de12aa1d 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/tag_list/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/tag_list/index.tsx @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { useCallback } from 'react'; +import React, { useCallback, useState } from 'react'; import { EuiText, EuiHorizontalRule, @@ -14,24 +14,18 @@ import { EuiButton, EuiButtonEmpty, EuiButtonIcon, + EuiLoadingSpinner, } from '@elastic/eui'; import styled, { css } from 'styled-components'; import * as i18n from '../../translations'; -import { Form, useForm } from '../../../shared_imports'; +import { Form, useForm } from '../../../../shared_imports'; import { schema } from './schema'; import { CommonUseField } from '../create'; -interface IconAction { - 'aria-label': string; - iconType: string; - onClick: (b: boolean) => void; - onSubmit: (a: string[]) => void; -} - interface TagListProps { + isLoading: boolean; + onSubmit: (a: string[]) => void; tags: string[]; - iconAction?: IconAction; - isEditTags?: boolean; } const MyFlexGroup = styled(EuiFlexGroup)` @@ -43,37 +37,35 @@ const MyFlexGroup = styled(EuiFlexGroup)` `} `; -export const TagList = React.memo(({ tags, isEditTags, iconAction }: TagListProps) => { +export const TagList = React.memo(({ isLoading, onSubmit, tags }: TagListProps) => { const { form } = useForm({ defaultValue: { tags }, options: { stripEmptyFields: false }, schema, }); + const [isEditTags, setIsEditTags] = useState(false); - const onSubmit = useCallback(async () => { + const onSubmitTags = useCallback(async () => { const { isValid, data: newData } = await form.submit(); - if (isValid && iconAction) { - iconAction.onSubmit(newData.tags); - iconAction.onClick(false); + if (isValid && newData.tags) { + onSubmit(newData.tags); + setIsEditTags(false); } - }, [form]); + }, [form, onSubmit]); - const onActionClick = useCallback( - (cb: (b: boolean) => void, onClickBool: boolean) => cb(onClickBool), - [iconAction] - ); return ( <EuiText> <EuiFlexGroup alignItems="center" gutterSize="xs" justifyContent="spaceBetween"> <EuiFlexItem grow={false}> <h4>{i18n.TAGS}</h4> </EuiFlexItem> - {iconAction && ( + {isLoading && <EuiLoadingSpinner />} + {!isLoading && ( <EuiFlexItem grow={false}> <EuiButtonIcon - aria-label={iconAction['aria-label']} - iconType={iconAction.iconType} - onClick={() => onActionClick(iconAction.onClick, true)} + aria-label={'tags'} + iconType={'pencil'} + onClick={setIsEditTags.bind(null, true)} /> </EuiFlexItem> )} @@ -88,7 +80,7 @@ export const TagList = React.memo(({ tags, isEditTags, iconAction }: TagListProp <EuiBadge color="hollow">{tag}</EuiBadge> </EuiFlexItem> ))} - {isEditTags && iconAction && ( + {isEditTags && ( <EuiFlexGroup direction="column"> <EuiFlexItem> <Form form={form}> @@ -106,14 +98,22 @@ export const TagList = React.memo(({ tags, isEditTags, iconAction }: TagListProp </Form> </EuiFlexItem> <EuiFlexItem> - <EuiButton fill onClick={onSubmit}> - {i18n.SUBMIT} - </EuiButton> - </EuiFlexItem> - <EuiFlexItem grow={false}> - <EuiButtonEmpty onClick={() => onActionClick(iconAction.onClick, false)}> - {i18n.CANCEL} - </EuiButtonEmpty> + <EuiFlexGroup gutterSize="s" alignItems="center"> + <EuiFlexItem grow={false}> + <EuiButton color="secondary" fill iconType="save" onClick={onSubmitTags} size="s"> + {i18n.SAVE} + </EuiButton> + </EuiFlexItem> + <EuiFlexItem grow={false}> + <EuiButtonEmpty + iconType="cross" + onClick={setIsEditTags.bind(null, false)} + size="s" + > + {i18n.CANCEL} + </EuiButtonEmpty> + </EuiFlexItem> + </EuiFlexGroup> </EuiFlexItem> </EuiFlexGroup> )} diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/tag_list/schema.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/tag_list/schema.tsx index dfc9c61cd5f0c7..26a89408069fbc 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/tag_list/schema.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/tag_list/schema.tsx @@ -3,7 +3,7 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ -import { FormSchema } from '../../../shared_imports'; +import { FormSchema } from '../../../../shared_imports'; import { schema as createSchema } from '../create/schema'; export const schema: FormSchema = { diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/index.tsx index 8df98a4cef0e8a..6599151f9d4fd7 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/index.tsx @@ -4,18 +4,28 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { ReactNode } from 'react'; -import { EuiFlexGroup, EuiFlexItem, EuiAvatar, EuiPanel, EuiText } from '@elastic/eui'; +import React, { ReactNode, useCallback, useMemo, useState } from 'react'; +import { EuiFlexGroup } from '@elastic/eui'; import styled, { css } from 'styled-components'; +import * as i18n from '../case_view/translations'; + +import { Case } from '../../../../containers/case/types'; +import { useUpdateComment } from '../../../../containers/case/use_update_comment'; +import { UserActionItem } from './user_action_item'; +import { UserActionMarkdown } from './user_action_markdown'; +import { AddComment } from '../add_comment'; export interface UserActionItem { avatarName: string; children?: ReactNode; - title: ReactNode; + skipPanel?: boolean; + title?: ReactNode; } export interface UserActionTreeProps { - userActions: UserActionItem[]; + data: Case; + isLoadingDescription: boolean; + onUpdateField: (updateKey: keyof Case, updateValue: string | string[]) => void; } const UserAction = styled(EuiFlexGroup)` @@ -48,35 +58,110 @@ const UserAction = styled(EuiFlexGroup)` border-bottom: ${theme.eui.euiBorderThin}; border-radius: ${theme.eui.euiBorderRadius} ${theme.eui.euiBorderRadius} 0 0; } - .userAction__content { - padding: ${theme.eui.euiSizeM} ${theme.eui.euiSizeL}; - } .euiText--small * { margin-bottom: 0; } `} `; -const renderUserActions = (userActions: UserActionItem[]) => { - return userActions.map(({ avatarName, children, title }, key) => ( - <UserAction key={key} gutterSize={'none'}> - <EuiFlexItem grow={false}> - <EuiAvatar className="userAction__circle" name={avatarName} /> - </EuiFlexItem> - <EuiFlexItem> - <EuiPanel className="userAction__panel" paddingSize="none"> - <EuiText size="s" className="userAction__title"> - {title} - </EuiText> - {children && <div className="userAction__content">{children}</div>} - </EuiPanel> - </EuiFlexItem> - </UserAction> - )); -}; +const DescriptionId = 'description'; +const NewId = 'newComent'; + +export const UserActionTree = React.memo( + ({ data, onUpdateField, isLoadingDescription }: UserActionTreeProps) => { + const [{ data: comments, isLoadingIds }, dispatchUpdateComment] = useUpdateComment( + data.comments + ); + + const [manageMarkdownEditIds, setManangeMardownEditIds] = useState<string[]>([]); + + const handleManageMarkdownEditId = useCallback( + (id: string) => { + if (!manageMarkdownEditIds.includes(id)) { + setManangeMardownEditIds([...manageMarkdownEditIds, id]); + } else { + setManangeMardownEditIds(manageMarkdownEditIds.filter(myId => id !== myId)); + } + }, + [manageMarkdownEditIds] + ); + + const handleSaveComment = useCallback( + (id: string, content: string) => { + handleManageMarkdownEditId(id); + dispatchUpdateComment(id, content); + }, + [handleManageMarkdownEditId, dispatchUpdateComment] + ); + + const MarkdownDescription = useMemo( + () => ( + <UserActionMarkdown + id={DescriptionId} + content={data.description} + isEditable={manageMarkdownEditIds.includes(DescriptionId)} + onSaveContent={(content: string) => { + handleManageMarkdownEditId(DescriptionId); + onUpdateField(DescriptionId, content); + }} + onChangeEditable={handleManageMarkdownEditId} + /> + ), + [data.description, handleManageMarkdownEditId, manageMarkdownEditIds, onUpdateField] + ); + + const MarkdownNewComment = useMemo(() => <AddComment caseId={data.caseId} />, [data.caseId]); -export const UserActionTree = React.memo(({ userActions }: UserActionTreeProps) => ( - <div>{renderUserActions(userActions)}</div> -)); + return ( + <UserAction data-test-subj="user-action-description" gutterSize={'none'}> + <UserActionItem + createdAt={data.createdAt} + id={DescriptionId} + isEditable={manageMarkdownEditIds.includes(DescriptionId)} + isLoading={isLoadingDescription} + labelAction={i18n.EDIT_DESCRIPTION} + labelTitle={i18n.ADDED_DESCRIPTION} + fullName={data.createdBy.fullName ?? data.createdBy.username} + markdown={MarkdownDescription} + onEdit={handleManageMarkdownEditId.bind(null, DescriptionId)} + userName={data.createdBy.username} + /> + {comments.map(comment => ( + <UserActionItem + key={comment.commentId} + createdAt={comment.createdAt} + id={comment.commentId} + isEditable={manageMarkdownEditIds.includes(comment.commentId)} + isLoading={isLoadingIds.includes(comment.commentId)} + labelAction={i18n.EDIT_COMMENT} + labelTitle={i18n.ADDED_COMMENT} + fullName={comment.createdBy.fullName ?? comment.createdBy.username} + markdown={ + <UserActionMarkdown + id={comment.commentId} + content={comment.comment} + isEditable={manageMarkdownEditIds.includes(comment.commentId)} + onChangeEditable={handleManageMarkdownEditId} + onSaveContent={handleSaveComment.bind(null, comment.commentId)} + /> + } + onEdit={handleManageMarkdownEditId.bind(null, comment.commentId)} + userName={comment.createdBy.username} + /> + ))} + <UserActionItem + createdAt={new Date().toISOString()} + id={NewId} + isEditable={true} + isLoading={isLoadingIds.includes(NewId)} + fullName="to be determined" + markdown={MarkdownNewComment} + onEdit={handleManageMarkdownEditId.bind(null, NewId)} + userName="to be determined" + /> + </UserAction> + ); + } +); UserActionTree.displayName = 'UserActionTree'; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_avatar.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_avatar.tsx new file mode 100644 index 00000000000000..f3276bd50e72c9 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_avatar.tsx @@ -0,0 +1,18 @@ +/* + * 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 { EuiAvatar } from '@elastic/eui'; +import React from 'react'; + +interface UserActionAvatarProps { + name: string; +} + +export const UserActionAvatar = ({ name }: UserActionAvatarProps) => { + return ( + <EuiAvatar data-test-subj={`user-action-avatar`} className="userAction__circle" name={name} /> + ); +}; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_item.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_item.tsx new file mode 100644 index 00000000000000..816e5008275908 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_item.tsx @@ -0,0 +1,60 @@ +/* + * 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 { EuiFlexItem, EuiPanel } from '@elastic/eui'; +import React from 'react'; + +import { UserActionAvatar } from './user_action_avatar'; +import { UserActionTitle } from './user_action_title'; + +interface UserActionItemProps { + createdAt: string; + id: string; + isEditable: boolean; + isLoading: boolean; + labelAction?: string; + labelTitle?: string; + fullName: string; + markdown: React.ReactNode; + onEdit: (id: string) => void; + userName: string; +} + +export const UserActionItem = ({ + createdAt, + id, + isEditable, + isLoading, + labelAction, + labelTitle, + fullName, + markdown, + onEdit, + userName, +}: UserActionItemProps) => ( + <> + <EuiFlexItem data-test-subj={`user-action-${id}-avatar`} grow={false}> + <UserActionAvatar name={fullName ?? userName} /> + </EuiFlexItem> + <EuiFlexItem data-test-subj={`user-action-${id}`}> + {isEditable && markdown} + {!isEditable && ( + <EuiPanel className="userAction__panel" paddingSize="none"> + <UserActionTitle + createdAt={createdAt} + id={id} + isLoading={isLoading} + labelAction={labelAction ?? ''} + labelTitle={labelTitle ?? ''} + userName={userName} + onEdit={onEdit} + /> + {markdown} + </EuiPanel> + )} + </EuiFlexItem> + </> +); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_markdown.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_markdown.tsx new file mode 100644 index 00000000000000..6a50bf24e9d7e1 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_markdown.tsx @@ -0,0 +1,89 @@ +/* + * 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 { EuiFlexGroup, EuiFlexItem, EuiButtonEmpty, EuiButton } from '@elastic/eui'; +import React, { useCallback, useState } from 'react'; +import styled, { css } from 'styled-components'; + +import { MarkdownEditor } from '../../../../components/markdown_editor'; +import * as i18n from '../case_view/translations'; +import { Markdown } from '../../../../components/markdown'; + +const ContentWrapper = styled.div` + ${({ theme }) => css` + padding: ${theme.eui.euiSizeM} ${theme.eui.euiSizeL}; + `} +`; + +interface UserActionMarkdownProps { + content: string; + id: string; + isEditable: boolean; + onChangeEditable: (id: string) => void; + onSaveContent: (content: string) => void; +} + +export const UserActionMarkdown = ({ + id, + content, + isEditable, + onChangeEditable, + onSaveContent, +}: UserActionMarkdownProps) => { + const [myContent, setMyContent] = useState(content); + + const handleCancelAction = useCallback(() => { + onChangeEditable(id); + }, [id, onChangeEditable]); + + const handleSaveAction = useCallback(() => { + if (myContent !== content) { + onSaveContent(content); + } + onChangeEditable(id); + }, [content, id, myContent, onChangeEditable, onSaveContent]); + + const handleOnChange = useCallback(() => { + if (myContent !== content) { + setMyContent(content); + } + }, [content, myContent]); + + const renderButtons = useCallback( + ({ cancelAction, saveAction }) => { + return ( + <EuiFlexGroup gutterSize="s" alignItems="center"> + <EuiFlexItem grow={false}> + <EuiButtonEmpty size="s" onClick={cancelAction} iconType="cross"> + {i18n.CANCEL} + </EuiButtonEmpty> + </EuiFlexItem> + <EuiFlexItem grow={false}> + <EuiButton color="secondary" fill iconType="save" onClick={saveAction} size="s"> + {i18n.SAVE} + </EuiButton> + </EuiFlexItem> + </EuiFlexGroup> + ); + }, + [handleCancelAction, handleSaveAction] + ); + + return isEditable ? ( + <MarkdownEditor + footerContentRight={renderButtons({ + cancelAction: handleCancelAction, + saveAction: handleSaveAction, + })} + initialContent={content} + onChange={handleOnChange} + /> + ) : ( + <ContentWrapper> + <Markdown raw={content} data-test-subj="case-view-description" /> + </ContentWrapper> + ); +}; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_title.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_title.tsx new file mode 100644 index 00000000000000..6ad60fb9f963ee --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_title.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 { EuiLoadingSpinner, EuiFlexGroup, EuiFlexItem, EuiText } from '@elastic/eui'; +import React, { useMemo } from 'react'; +import styled from 'styled-components'; + +import { + FormattedRelativePreferenceDate, + FormattedRelativePreferenceLabel, +} from '../../../../components/formatted_date'; +import * as i18n from '../case_view/translations'; +import { PropertyActions } from '../property_actions'; + +const MySpinner = styled(EuiLoadingSpinner)` + .euiLoadingSpinner { + margin-top: 1px; // yes it matters! + } +`; + +interface UserActionTitleProps { + createdAt: string; + id: string; + isLoading: boolean; + labelAction: string; + labelTitle: string; + userName: string; + onEdit: (id: string) => void; +} + +export const UserActionTitle = ({ + createdAt, + id, + isLoading, + labelAction, + labelTitle, + userName, + onEdit, +}: UserActionTitleProps) => { + const propertyActions = useMemo(() => { + return [ + { + iconType: 'documentEdit', + label: labelAction, + onClick: () => onEdit(id), + }, + ]; + }, [id, onEdit]); + return ( + <EuiText size="s" className="userAction__title" data-test-subj={`user-action-title`}> + <EuiFlexGroup alignItems="baseline" gutterSize="none" justifyContent="spaceBetween"> + <EuiFlexItem grow={false}> + <p> + <strong>{userName}</strong> + {` ${labelTitle} `} + <FormattedRelativePreferenceLabel value={createdAt} preferenceLabel={`${i18n.ON} `} /> + <FormattedRelativePreferenceDate value={createdAt} /> + </p> + </EuiFlexItem> + <EuiFlexItem grow={false}> + {isLoading && <MySpinner />} + {!isLoading && <PropertyActions propertyActions={propertyActions} />} + </EuiFlexItem> + </EuiFlexGroup> + </EuiText> + ); +}; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/user_list/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/user_list/index.tsx index 33e0a9541c5b45..abb49122dc1421 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/user_list/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/user_list/index.tsx @@ -32,12 +32,12 @@ const MyFlexGroup = styled(EuiFlexGroup)` `; const renderUsers = (users: ElasticUser[]) => { - return users.map(({ username }, key) => ( + return users.map(({ fullName, username }, key) => ( <MyFlexGroup key={key} justifyContent="spaceBetween"> <EuiFlexItem grow={false}> <EuiFlexGroup gutterSize="xs"> <EuiFlexItem> - <MyAvatar name={username} /> + <MyAvatar name={fullName ? fullName : username} /> </EuiFlexItem> <EuiFlexItem> <p> diff --git a/x-pack/legacy/plugins/siem/public/pages/case/translations.ts b/x-pack/legacy/plugins/siem/public/pages/case/translations.ts index 265af0bde547f2..5f0509586fc814 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/translations.ts +++ b/x-pack/legacy/plugins/siem/public/pages/case/translations.ts @@ -14,8 +14,8 @@ export const CANCEL = i18n.translate('xpack.siem.case.caseView.cancel', { defaultMessage: 'Cancel', }); -export const CASE_TITLE = i18n.translate('xpack.siem.case.caseView.caseTitle', { - defaultMessage: 'Case Title', +export const NAME = i18n.translate('xpack.siem.case.caseView.name', { + defaultMessage: 'Name', }); export const CREATED_AT = i18n.translate('xpack.siem.case.caseView.createdAt', { @@ -45,6 +45,13 @@ export const DESCRIPTION_REQUIRED = i18n.translate( } ); +export const COMMENT_REQUIRED = i18n.translate( + 'xpack.siem.case.caseView.commentFieldRequiredError', + { + defaultMessage: 'A comment is required.', + } +); + export const EDIT = i18n.translate('xpack.siem.case.caseView.edit', { defaultMessage: 'Edit', }); @@ -58,15 +65,11 @@ export const LAST_UPDATED = i18n.translate('xpack.siem.case.caseView.updatedAt', }); export const PAGE_SUBTITLE = i18n.translate('xpack.siem.case.caseView.pageSubtitle', { - defaultMessage: 'Case Workflow Management within the Elastic SIEM', + defaultMessage: 'Cases within the Elastic SIEM', }); export const PAGE_TITLE = i18n.translate('xpack.siem.case.pageTitle', { - defaultMessage: 'Case Workflows', -}); - -export const PREVIEW = i18n.translate('xpack.siem.case.caseView.preview', { - defaultMessage: 'Preview', + defaultMessage: 'Cases', }); export const STATE = i18n.translate('xpack.siem.case.caseView.state', { @@ -77,6 +80,10 @@ export const SUBMIT = i18n.translate('xpack.siem.case.caseView.submit', { defaultMessage: 'Submit', }); +export const CREATE_CASE = i18n.translate('xpack.siem.case.caseView.createCase', { + defaultMessage: 'Create case', +}); + export const TAGS = i18n.translate('xpack.siem.case.caseView.tags', { defaultMessage: 'Tags', }); @@ -104,3 +111,18 @@ export const CONFIGURE_CASES_PAGE_TITLE = i18n.translate( export const CONFIGURE_CASES_BUTTON = i18n.translate('xpack.siem.case.configureCasesButton', { defaultMessage: 'Configure cases', }); + +export const ADD_COMMENT = i18n.translate('xpack.siem.case.caseView.comment.addComment', { + defaultMessage: 'Add comment', +}); + +export const ADD_COMMENT_HELP_TEXT = i18n.translate( + 'xpack.siem.case.caseView.comment.addCommentHelpText', + { + defaultMessage: 'Add a new comment...', + } +); + +export const SAVE = i18n.translate('xpack.siem.case.caseView.description.save', { + defaultMessage: 'Save', +}); diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/add_item_form/index.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/add_item_form/index.tsx index cc5e9b38eb2f8c..abbaa6d6192eed 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/add_item_form/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/add_item_form/index.tsx @@ -18,7 +18,7 @@ import React, { ChangeEvent, useCallback, useEffect, useState, useRef } from 're import styled from 'styled-components'; import * as RuleI18n from '../../translations'; -import { FieldHook, getFieldValidityAndErrorMessage } from '../../../../shared_imports'; +import { FieldHook, getFieldValidityAndErrorMessage } from '../../../../../shared_imports'; interface AddItemProps { addText: string; diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/description_step/index.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/description_step/index.tsx index 1cc7bba5558db7..f921c29c06ab0a 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/description_step/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/description_step/index.tsx @@ -19,7 +19,7 @@ import { DEFAULT_TIMELINE_TITLE } from '../../../../../components/timeline/searc import { useKibana } from '../../../../../lib/kibana'; import { IMitreEnterpriseAttack } from '../../types'; import { FieldValueTimeline } from '../pick_timeline'; -import { FormSchema } from '../../../../shared_imports'; +import { FormSchema } from '../../../../../shared_imports'; import { ListItems } from './types'; import { buildQueryBarDescription, diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/mitre/index.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/mitre/index.tsx index b49126c8c0fe0b..e87dba251ed6dd 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/mitre/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/mitre/index.tsx @@ -20,7 +20,7 @@ import styled from 'styled-components'; import { tacticsOptions, techniquesOptions } from '../../../mitre/mitre_tactics_techniques'; import * as Rulei18n from '../../translations'; -import { FieldHook, getFieldValidityAndErrorMessage } from '../../../../shared_imports'; +import { FieldHook, getFieldValidityAndErrorMessage } from '../../../../../shared_imports'; import { threatDefault } from '../step_about_rule/default_value'; import { IMitreEnterpriseAttack } from '../../types'; import { MyAddItemButton } from '../add_item_form'; diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/pick_timeline/index.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/pick_timeline/index.tsx index 56cb02c9ec8178..923ec3a7f0066f 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/pick_timeline/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/pick_timeline/index.tsx @@ -8,7 +8,7 @@ import { EuiFormRow } from '@elastic/eui'; import React, { useCallback, useEffect, useState } from 'react'; import { SearchTimelineSuperSelect } from '../../../../../components/timeline/search_super_select'; -import { FieldHook, getFieldValidityAndErrorMessage } from '../../../../shared_imports'; +import { FieldHook, getFieldValidityAndErrorMessage } from '../../../../../shared_imports'; export interface FieldValueTimeline { id: string | null; diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/query_bar/index.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/query_bar/index.tsx index fbe854c1ee346f..5886a76182eec4 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/query_bar/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/query_bar/index.tsx @@ -29,7 +29,7 @@ import { convertKueryToElasticSearchQuery } from '../../../../../lib/keury'; import { useKibana } from '../../../../../lib/kibana'; import { TimelineModel } from '../../../../../store/timeline/model'; import { useSavedQueryServices } from '../../../../../utils/saved_query_services'; -import { FieldHook, getFieldValidityAndErrorMessage } from '../../../../shared_imports'; +import { FieldHook, getFieldValidityAndErrorMessage } from '../../../../../shared_imports'; import * as i18n from './translations'; export interface FieldValueQueryBar { diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/schedule_item_form/index.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/schedule_item_form/index.tsx index ffb6c4eda32438..1b7d17016f83c3 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/schedule_item_form/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/schedule_item_form/index.tsx @@ -16,7 +16,7 @@ import { isEmpty } from 'lodash/fp'; import React, { useCallback, useEffect, useMemo, useState } from 'react'; import styled from 'styled-components'; -import { FieldHook, getFieldValidityAndErrorMessage } from '../../../../shared_imports'; +import { FieldHook, getFieldValidityAndErrorMessage } from '../../../../../shared_imports'; import * as I18n from './translations'; diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_about_rule/index.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_about_rule/index.tsx index 431d793d6e68a5..d93c057506ca71 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_about_rule/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_about_rule/index.tsx @@ -30,7 +30,7 @@ import { getUseField, UseField, useForm, -} from '../../../../shared_imports'; +} from '../../../../../shared_imports'; import { defaultRiskScoreBySeverity, severityOptions, SeverityValue } from './data'; import { stepAboutDefaultValue } from './default_value'; diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_about_rule/schema.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_about_rule/schema.tsx index 27887bcbbe6002..42cf1e0d956499 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_about_rule/schema.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_about_rule/schema.tsx @@ -13,7 +13,7 @@ import { FormSchema, ValidationFunc, ERROR_CODE, -} from '../../../../shared_imports'; +} from '../../../../../shared_imports'; import { isMitreAttackInvalid } from '../mitre/helpers'; import { OptionalFieldLabel } from '../optional_field_label'; import { isUrlInvalid } from './helpers'; diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_define_rule/index.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_define_rule/index.tsx index 773eb44efb26c5..837bc79e968e82 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_define_rule/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_define_rule/index.tsx @@ -33,7 +33,7 @@ import { getUseField, UseField, useForm, -} from '../../../../shared_imports'; +} from '../../../../../shared_imports'; import { schema } from './schema'; import * as i18n from './translations'; diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_define_rule/schema.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_define_rule/schema.tsx index bb178d7197069c..e202ff030cd905 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_define_rule/schema.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_define_rule/schema.tsx @@ -17,7 +17,7 @@ import { fieldValidators, FormSchema, ValidationFunc, -} from '../../../../shared_imports'; +} from '../../../../../shared_imports'; import { CUSTOM_QUERY_REQUIRED, INVALID_CUSTOM_QUERY, INDEX_HELPER_TEXT } from './translations'; const { emptyField } = fieldValidators; diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_schedule_rule/index.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_schedule_rule/index.tsx index 2e2c7e068dd857..e9632966fdfaf9 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_schedule_rule/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_schedule_rule/index.tsx @@ -12,7 +12,7 @@ import { setFieldValue } from '../../helpers'; import { RuleStep, RuleStepProps, ScheduleStepRule } from '../../types'; import { StepRuleDescription } from '../description_step'; import { ScheduleItem } from '../schedule_item_form'; -import { Form, UseField, useForm } from '../../../../shared_imports'; +import { Form, UseField, useForm } from '../../../../../shared_imports'; import { StepContentWrapper } from '../step_content_wrapper'; import { schema } from './schema'; import * as I18n from './translations'; diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_schedule_rule/schema.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_schedule_rule/schema.tsx index 9932e4f6ef4356..8fbfdf5f25a51c 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_schedule_rule/schema.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/components/step_schedule_rule/schema.tsx @@ -7,7 +7,7 @@ import { i18n } from '@kbn/i18n'; import { OptionalFieldLabel } from '../optional_field_label'; -import { FormSchema } from '../../../../shared_imports'; +import { FormSchema } from '../../../../../shared_imports'; export const schema: FormSchema = { interval: { diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/create/index.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/create/index.tsx index c985045b1897b3..d816c7e867057c 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/create/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/create/index.tsx @@ -17,7 +17,7 @@ import { displaySuccessToast, useStateToaster } from '../../../../components/toa import { SpyRoute } from '../../../../utils/route/spy_routes'; import { useUserInfo } from '../../components/user_info'; import { AccordionTitle } from '../components/accordion_title'; -import { FormData, FormHook } from '../../../shared_imports'; +import { FormData, FormHook } from '../../../../shared_imports'; import { StepAboutRule } from '../components/step_about_rule'; import { StepDefineRule } from '../components/step_define_rule'; import { StepScheduleRule } from '../components/step_schedule_rule'; diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/edit/index.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/edit/index.tsx index 0fac4641e54a7b..5e0e4223e3e272 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/edit/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/edit/index.tsx @@ -26,7 +26,7 @@ import { displaySuccessToast, useStateToaster } from '../../../../components/toa import { SpyRoute } from '../../../../utils/route/spy_routes'; import { useUserInfo } from '../../components/user_info'; import { DetectionEngineHeaderPage } from '../../components/detection_engine_header_page'; -import { FormHook, FormData } from '../../../shared_imports'; +import { FormHook, FormData } from '../../../../shared_imports'; import { StepPanel } from '../components/step_panel'; import { StepAboutRule } from '../components/step_about_rule'; import { StepDefineRule } from '../components/step_define_rule'; 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 3fab456d856cac..85f3bcbd236e90 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 @@ -11,7 +11,7 @@ import { useLocation } from 'react-router-dom'; import { Filter } from '../../../../../../../../src/plugins/data/public'; import { Rule } from '../../../containers/detection_engine/rules'; -import { FormData, FormHook, FormSchema } from '../../shared_imports'; +import { FormData, FormHook, FormSchema } from '../../../shared_imports'; import { AboutStepRule, DefineStepRule, IMitreEnterpriseAttack, ScheduleStepRule } from './types'; interface GetStepsData { diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/types.ts b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/types.ts index b2650dcc2b77ee..34df20de1e461c 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/types.ts +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/types.ts @@ -6,7 +6,7 @@ import { Filter } from '../../../../../../../../src/plugins/data/common'; import { FieldValueQueryBar } from './components/query_bar'; -import { FormData, FormHook } from '../../shared_imports'; +import { FormData, FormHook } from '../../../shared_imports'; import { FieldValueTimeline } from './components/pick_timeline'; export interface EuiBasicTableSortTypes { diff --git a/x-pack/legacy/plugins/siem/public/pages/home/translations.ts b/x-pack/legacy/plugins/siem/public/pages/home/translations.ts index 581c81d9f98a00..f2bcaa07b1a256 100644 --- a/x-pack/legacy/plugins/siem/public/pages/home/translations.ts +++ b/x-pack/legacy/plugins/siem/public/pages/home/translations.ts @@ -27,5 +27,5 @@ export const TIMELINES = i18n.translate('xpack.siem.navigation.timelines', { }); export const CASE = i18n.translate('xpack.siem.navigation.case', { - defaultMessage: 'Case', + defaultMessage: 'Cases', }); diff --git a/x-pack/legacy/plugins/siem/public/pages/shared_imports.ts b/x-pack/legacy/plugins/siem/public/shared_imports.ts similarity index 52% rename from x-pack/legacy/plugins/siem/public/pages/shared_imports.ts rename to x-pack/legacy/plugins/siem/public/shared_imports.ts index a41f121b369265..edd7812b3bd169 100644 --- a/x-pack/legacy/plugins/siem/public/pages/shared_imports.ts +++ b/x-pack/legacy/plugins/siem/public/shared_imports.ts @@ -17,7 +17,7 @@ export { UseField, useForm, ValidationFunc, -} from '../../../../../../src/plugins/es_ui_shared/static/forms/hook_form_lib'; -export { Field } from '../../../../../../src/plugins/es_ui_shared/static/forms/components'; -export { fieldValidators } from '../../../../../../src/plugins/es_ui_shared/static/forms/helpers'; -export { ERROR_CODE } from '../../../../../../src/plugins/es_ui_shared/static/forms/helpers/field_validators/types'; +} from '../../../../../src/plugins/es_ui_shared/static/forms/hook_form_lib'; +export { Field } from '../../../../../src/plugins/es_ui_shared/static/forms/components'; +export { fieldValidators } from '../../../../../src/plugins/es_ui_shared/static/forms/helpers'; +export { ERROR_CODE } from '../../../../../src/plugins/es_ui_shared/static/forms/helpers/field_validators/types'; diff --git a/x-pack/plugins/case/server/routes/api/__tests__/update_comment.test.ts b/x-pack/plugins/case/server/routes/api/__tests__/update_comment.test.ts index 5bfd121691ab4e..6b4e3c194eb823 100644 --- a/x-pack/plugins/case/server/routes/api/__tests__/update_comment.test.ts +++ b/x-pack/plugins/case/server/routes/api/__tests__/update_comment.test.ts @@ -28,6 +28,7 @@ describe('UPDATE comment', () => { }, body: { comment: 'Update my comment', + version: 'WzEsMV0=', }, }); @@ -37,6 +38,24 @@ describe('UPDATE comment', () => { expect(response.status).toEqual(200); expect(response.payload.comment).toEqual('Update my comment'); }); + it(`Fails with 409 if version does not match`, async () => { + const request = httpServerMock.createKibanaRequest({ + path: '/api/cases/comment/{id}', + method: 'patch', + params: { + id: 'mock-comment-1', + }, + body: { + comment: 'Update my comment', + version: 'badv=', + }, + }); + + const theContext = createRouteContext(createMockSavedObjectsRepository(mockCaseComments)); + + const response = await routeHandler(theContext, request, kibanaResponseFactory); + expect(response.status).toEqual(409); + }); it(`Returns an error if updateComment throws`, async () => { const request = httpServerMock.createKibanaRequest({ path: '/api/cases/comment/{id}', diff --git a/x-pack/plugins/case/server/routes/api/schema.ts b/x-pack/plugins/case/server/routes/api/schema.ts index 468abc8e7226f7..765f9c722219f3 100644 --- a/x-pack/plugins/case/server/routes/api/schema.ts +++ b/x-pack/plugins/case/server/routes/api/schema.ts @@ -15,6 +15,11 @@ export const NewCommentSchema = schema.object({ comment: schema.string(), }); +export const UpdateCommentArguments = schema.object({ + comment: schema.string(), + version: schema.string(), +}); + export const CommentSchema = schema.object({ comment: schema.string(), created_at: schema.string(), diff --git a/x-pack/plugins/case/server/routes/api/update_comment.ts b/x-pack/plugins/case/server/routes/api/update_comment.ts index 815f44a14e2e70..9f99253f766296 100644 --- a/x-pack/plugins/case/server/routes/api/update_comment.ts +++ b/x-pack/plugins/case/server/routes/api/update_comment.ts @@ -5,9 +5,12 @@ */ import { schema } from '@kbn/config-schema'; +import { SavedObject } from 'kibana/server'; +import Boom from 'boom'; import { wrapError } from './utils'; -import { NewCommentSchema } from './schema'; +import { UpdateCommentArguments } from './schema'; import { RouteDeps } from '.'; +import { CommentAttributes } from './types'; export function initUpdateCommentApi({ caseService, router }: RouteDeps) { router.patch( @@ -17,20 +20,45 @@ export function initUpdateCommentApi({ caseService, router }: RouteDeps) { params: schema.object({ id: schema.string(), }), - body: NewCommentSchema, + body: UpdateCommentArguments, }, }, async (context, request, response) => { + let theComment: SavedObject<CommentAttributes>; + try { + theComment = await caseService.getComment({ + client: context.core.savedObjects.client, + commentId: request.params.id, + }); + } catch (error) { + return response.customError(wrapError(error)); + } + if (request.body.version !== theComment.version) { + return response.customError( + wrapError( + Boom.conflict( + 'This comment has been updated. Please refresh before saving additional updates.' + ) + ) + ); + } + if (request.body.comment === theComment.attributes.comment) { + return response.customError( + wrapError(Boom.notAcceptable('Comment is identical to current version.')) + ); + } try { const updatedComment = await caseService.updateComment({ client: context.core.savedObjects.client, commentId: request.params.id, updatedAttributes: { - ...request.body, + comment: request.body.comment, updated_at: new Date().toISOString(), }, }); - return response.ok({ body: updatedComment.attributes }); + return response.ok({ + body: { ...updatedComment.attributes, version: updatedComment.version }, + }); } catch (error) { return response.customError(wrapError(error)); } diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 21500c4db9c346..a97cf608abc712 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -10986,7 +10986,6 @@ "xpack.siem.editDataProvider.doesNotExistLabel": "存在しません", "xpack.siem.editDataProvider.existsLabel": "存在する", "xpack.siem.editDataProvider.fieldLabel": "フィールド", - "xpack.siem.editDataProvider.fieldPlaceholder": "フィールドを選択", "xpack.siem.editDataProvider.isLabel": "が", "xpack.siem.editDataProvider.isNotLabel": "is not", "xpack.siem.editDataProvider.operatorLabel": "演算子", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index c9e7ea1ec80de3..e6055680e1240b 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -10986,7 +10986,6 @@ "xpack.siem.editDataProvider.doesNotExistLabel": "不存在", "xpack.siem.editDataProvider.existsLabel": "存在", "xpack.siem.editDataProvider.fieldLabel": "字段", - "xpack.siem.editDataProvider.fieldPlaceholder": "选择字段", "xpack.siem.editDataProvider.isLabel": "是", "xpack.siem.editDataProvider.isNotLabel": "不是", "xpack.siem.editDataProvider.operatorLabel": "运算符", From 2378d8a0fdd425920d8321aaae729e0dee95013b Mon Sep 17 00:00:00 2001 From: Nathan L Smith <nathan.smith@elastic.co> Date: Mon, 2 Mar 2020 17:36:43 -0600 Subject: [PATCH 033/120] Service map language icons (#58633) Add icons as described in #56235. Also: * Add double-border and ghost "shadow" on nodes * Add framework name capability to popover metrics --- .../app/ServiceMap/Cytoscape.stories.tsx | 188 ++++++++++++++---- .../app/ServiceMap/Popover/Contents.tsx | 6 +- .../ServiceMap/Popover/Popover.stories.tsx | 1 + .../Popover/ServiceMetricFetcher.tsx | 10 +- .../ServiceMap/Popover/ServiceMetricList.tsx | 34 ++-- .../app/ServiceMap/cytoscapeOptions.ts | 10 +- .../app/ServiceMap/get_cytoscape_elements.ts | 3 +- .../public/components/app/ServiceMap/icons.ts | 55 +++-- .../app/ServiceMap/icons/default.svg | 3 + .../app/ServiceMap/icons/dot-net.svg | 127 ++++++++++++ .../components/app/ServiceMap/icons/go.svg | 11 + .../components/app/ServiceMap/icons/java.svg | 7 + .../app/ServiceMap/icons/nodejs.svg | 46 +++++ .../components/app/ServiceMap/icons/php.svg | 18 ++ .../app/ServiceMap/icons/python.svg | 19 ++ .../components/app/ServiceMap/icons/ruby.svg | 125 ++++++++++++ .../components/app/ServiceMap/icons/rumjs.svg | 3 + .../elasticsearch_fieldnames.test.ts.snap | 6 + .../apm/common/elasticsearch_fieldnames.ts | 1 + x-pack/plugins/apm/common/service_map.ts | 1 + .../server/lib/service_map/get_service_map.ts | 14 +- x-pack/plugins/apm/server/lib/services/map.ts | 88 -------- 22 files changed, 599 insertions(+), 177 deletions(-) create mode 100644 x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/default.svg create mode 100644 x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/dot-net.svg create mode 100644 x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/go.svg create mode 100644 x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/java.svg create mode 100644 x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/nodejs.svg create mode 100644 x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/php.svg create mode 100644 x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/python.svg create mode 100644 x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/ruby.svg create mode 100644 x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/rumjs.svg delete mode 100644 x-pack/plugins/apm/server/lib/services/map.ts diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Cytoscape.stories.tsx b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Cytoscape.stories.tsx index 731555694bff7e..52941391ca3641 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Cytoscape.stories.tsx +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Cytoscape.stories.tsx @@ -4,51 +4,52 @@ * you may not use this file except in compliance with the Elastic License. */ +import { EuiCard, EuiFlexGroup, EuiFlexItem } from '@elastic/eui'; import { storiesOf } from '@storybook/react'; import cytoscape from 'cytoscape'; import React from 'react'; import { Cytoscape } from './Cytoscape'; - -const elements: cytoscape.ElementDefinition[] = [ - { - data: { - id: 'opbeans-python', - label: 'opbeans-python', - agentName: 'python', - type: 'service' - } - }, - { - data: { - id: 'opbeans-node', - label: 'opbeans-node', - agentName: 'nodejs', - type: 'service' - } - }, - { - data: { - id: 'opbeans-ruby', - label: 'opbeans-ruby', - agentName: 'ruby', - type: 'service' - } - }, - { data: { source: 'opbeans-python', target: 'opbeans-node' } }, - { - data: { - bidirectional: true, - source: 'opbeans-python', - target: 'opbeans-ruby' - } - } -]; -const height = 300; -const serviceName = 'opbeans-python'; +import { iconForNode } from './icons'; storiesOf('app/ServiceMap/Cytoscape', module).add( 'example', () => { + const elements: cytoscape.ElementDefinition[] = [ + { + data: { + id: 'opbeans-python', + label: 'opbeans-python', + agentName: 'python', + type: 'service' + } + }, + { + data: { + id: 'opbeans-node', + label: 'opbeans-node', + agentName: 'nodejs', + type: 'service' + } + }, + { + data: { + id: 'opbeans-ruby', + label: 'opbeans-ruby', + agentName: 'ruby', + type: 'service' + } + }, + { data: { source: 'opbeans-python', target: 'opbeans-node' } }, + { + data: { + bidirectional: true, + source: 'opbeans-python', + target: 'opbeans-ruby' + } + } + ]; + const height = 300; + const serviceName = 'opbeans-python'; return ( <Cytoscape elements={elements} @@ -59,6 +60,119 @@ storiesOf('app/ServiceMap/Cytoscape', module).add( }, { info: { + propTables: false, + source: false + } + } +); + +storiesOf('app/ServiceMap/Cytoscape', module).add( + 'node icons', + () => { + const cy = cytoscape(); + const elements = [ + { data: { id: 'default', label: 'default', type: undefined } }, + { data: { id: 'cache', label: 'cache', type: 'cache' } }, + { data: { id: 'database', label: 'database', type: 'database' } }, + { data: { id: 'external', label: 'external', type: 'external' } }, + { data: { id: 'messaging', label: 'messaging', type: 'messaging' } }, + + { + data: { + id: 'dotnet', + label: 'dotnet service', + type: 'service', + agentName: 'dotnet' + } + }, + { + data: { + id: 'go', + label: 'go service', + type: 'service', + agentName: 'go' + } + }, + { + data: { + id: 'java', + label: 'java service', + type: 'service', + agentName: 'java' + } + }, + { + data: { + id: 'js-base', + label: 'js-base service', + type: 'service', + agentName: 'js-base' + } + }, + { + data: { + id: 'nodejs', + label: 'nodejs service', + type: 'service', + agentName: 'nodejs' + } + }, + { + data: { + id: 'php', + label: 'php service', + type: 'service', + agentName: 'php' + } + }, + { + data: { + id: 'python', + label: 'python service', + type: 'service', + agentName: 'python' + } + }, + { + data: { + id: 'ruby', + label: 'ruby service', + type: 'service', + agentName: 'ruby' + } + } + ]; + cy.add(elements); + + return ( + <EuiFlexGroup gutterSize="l" wrap={true}> + {cy.nodes().map(node => ( + <EuiFlexItem key={node.data('id')}> + <EuiCard + description={ + <pre> + agentName: {node.data('agentName') || 'undefined'}, type:{' '} + {node.data('type') || 'undefined'} + </pre> + } + icon={ + <img + alt={node.data('label')} + src={iconForNode(node)} + height={80} + width={80} + /> + } + title={node.data('label')} + /> + </EuiFlexItem> + ))} + </EuiFlexGroup> + ); + }, + { + info: { + propTables: false, source: false } } diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/Contents.tsx b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/Contents.tsx index f1c53673c87552..405bd855898b7a 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/Contents.tsx +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/Contents.tsx @@ -35,6 +35,7 @@ export function Contents({ onFocusClick, selectedNodeServiceName }: ContentsProps) { + const frameworkName = selectedNodeData.frameworkName; return ( <EuiFlexGroup direction="column" @@ -49,7 +50,10 @@ export function Contents({ </EuiFlexItem> <EuiFlexItem> {isService ? ( - <ServiceMetricFetcher serviceName={selectedNodeServiceName} /> + <ServiceMetricFetcher + frameworkName={frameworkName} + serviceName={selectedNodeServiceName} + /> ) : ( <Info {...selectedNodeData} /> )} diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/Popover.stories.tsx b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/Popover.stories.tsx index e5962afd76eb8d..23e9e737be9a65 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/Popover.stories.tsx +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/Popover.stories.tsx @@ -16,6 +16,7 @@ storiesOf('app/ServiceMap/Popover/ServiceMetricList', module) avgRequestsPerMinute={164.47222031860858} avgCpuUsage={0.32809666568309237} avgMemoryUsage={0.5504868173242986} + frameworkName="Spring" numInstances={2} isLoading={false} /> diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/ServiceMetricFetcher.tsx b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/ServiceMetricFetcher.tsx index b0a5e892b5a7e7..697aa6a1b652b8 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/ServiceMetricFetcher.tsx +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/ServiceMetricFetcher.tsx @@ -11,10 +11,12 @@ import { useUrlParams } from '../../../../hooks/useUrlParams'; import { ServiceMetricList } from './ServiceMetricList'; interface ServiceMetricFetcherProps { + frameworkName?: string; serviceName: string; } export function ServiceMetricFetcher({ + frameworkName, serviceName }: ServiceMetricFetcherProps) { const { @@ -37,5 +39,11 @@ export function ServiceMetricFetcher({ ); const isLoading = status === 'loading'; - return <ServiceMetricList {...data} isLoading={isLoading} />; + return ( + <ServiceMetricList + {...data} + frameworkName={frameworkName} + isLoading={isLoading} + /> + ); } diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/ServiceMetricList.tsx b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/ServiceMetricList.tsx index 3a6b4c5ebcaac2..056af68cc8173c 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/ServiceMetricList.tsx +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Popover/ServiceMetricList.tsx @@ -30,6 +30,10 @@ function LoadingSpinner() { ); } +const BadgeRow = styled(EuiFlexItem)` + padding-bottom: ${lightTheme.gutterTypes.gutterSmall}; +`; + const ItemRow = styled('tr')` line-height: 2; `; @@ -44,6 +48,7 @@ const ItemDescription = styled('td')` `; interface ServiceMetricListProps extends ServiceNodeMetrics { + frameworkName?: string; isLoading: boolean; } @@ -53,6 +58,7 @@ export function ServiceMetricList({ avgErrorsPerMinute, avgCpuUsage, avgMemoryUsage, + frameworkName, numInstances, isLoading }: ServiceMetricListProps) { @@ -106,23 +112,27 @@ export function ServiceMetricList({ : null } ]; + const showBadgeRow = frameworkName || numInstances > 1; + return isLoading ? ( <LoadingSpinner /> ) : ( <> - {numInstances && numInstances > 1 && ( - <EuiFlexItem> - <div> - <EuiBadge iconType="apps" color="hollow"> - {i18n.translate('xpack.apm.serviceMap.numInstancesMetric', { - values: { numInstances }, - defaultMessage: '{numInstances} instances' - })} - </EuiBadge> - </div> - </EuiFlexItem> + {showBadgeRow && ( + <BadgeRow> + <EuiFlexGroup gutterSize="none"> + {frameworkName && <EuiBadge>{frameworkName}</EuiBadge>} + {numInstances > 1 && ( + <EuiBadge iconType="apps" color="hollow"> + {i18n.translate('xpack.apm.serviceMap.numInstancesMetric', { + values: { numInstances }, + defaultMessage: '{numInstances} instances' + })} + </EuiBadge> + )} + </EuiFlexGroup> + </BadgeRow> )} - <table> <tbody> {listItems.map( diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/cytoscapeOptions.ts b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/cytoscapeOptions.ts index af5bd17f71ca44..8411169dbc9444 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/cytoscapeOptions.ts +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/cytoscapeOptions.ts @@ -42,19 +42,23 @@ const style: cytoscape.Stylesheet[] = [ 'background-image': (el: cytoscape.NodeSingular) => iconForNode(el) ?? defaultIcon, 'background-height': (el: cytoscape.NodeSingular) => - isService(el) ? '85%' : '40%', + isService(el) ? '60%' : '40%', 'background-width': (el: cytoscape.NodeSingular) => - isService(el) ? '85%' : '40%', + isService(el) ? '60%' : '40%', 'border-color': (el: cytoscape.NodeSingular) => el.hasClass('primary') || el.selected() ? theme.euiColorPrimary : theme.euiColorMediumShade, - 'border-width': 1, + 'border-width': 2, color: theme.textColors.default, // theme.euiFontFamily doesn't work here for some reason, so we're just // specifying a subset of the fonts for the label text. 'font-family': 'Inter UI, Segoe UI, Helvetica, Arial, sans-serif', 'font-size': theme.euiFontSizeXS, + ghost: 'yes', + 'ghost-offset-x': 0, + 'ghost-offset-y': 2, + 'ghost-opacity': 0.15, height: nodeHeight, label: 'data(label)', 'min-zoomed-font-size': theme.euiSizeL, diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/get_cytoscape_elements.ts b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/get_cytoscape_elements.ts index 2403ed047cbc05..bc619b1ecdfe5f 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/get_cytoscape_elements.ts +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/get_cytoscape_elements.ts @@ -105,7 +105,8 @@ export function getCytoscapeElements( `/services/${node['service.name']}/service-map`, search ), - agentName: node['agent.name'] || node['agent.name'], + agentName: node['agent.name'], + frameworkName: node['service.framework.name'], type: 'service' }; } diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons.ts b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons.ts index c637d145639ce9..1b57cd52082d80 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons.ts +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons.ts @@ -4,26 +4,21 @@ * you may not use this file except in compliance with the Elastic License. */ -import theme from '@elastic/eui/dist/eui_theme_light.json'; import cytoscape from 'cytoscape'; import databaseIcon from './icons/database.svg'; import documentsIcon from './icons/documents.svg'; +import dotNetIcon from './icons/dot-net.svg'; import globeIcon from './icons/globe.svg'; +import goIcon from './icons/go.svg'; +import javaIcon from './icons/java.svg'; +import nodeJsIcon from './icons/nodejs.svg'; +import phpIcon from './icons/php.svg'; +import pythonIcon from './icons/python.svg'; +import rubyIcon from './icons/ruby.svg'; +import rumJsIcon from './icons/rumjs.svg'; +import defaultIconImport from './icons/default.svg'; -function getAvatarIcon( - text = '', - backgroundColor = 'transparent', - foregroundColor = 'white' -) { - return ( - 'data:image/svg+xml;utf8,' + - encodeURIComponent(`<svg width="80" height="80" xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg"> - <circle cx="40" cy="40" fill="${backgroundColor}" r="40" stroke-width="0" /> - <text fill="${foregroundColor}" font-family="'Inter UI', '-apple-system', 'BlinkMacSystemFont', 'Segoe UI', 'Helvetica', 'Arial', sans-serif" font-size="36" text-anchor="middle" x="40" xml:space="preserve" y="52">${text}</text> -</svg> -`) - ); -} +export const defaultIcon = defaultIconImport; // The colors here are taken from the logos of the corresponding technologies const icons: { [key: string]: string } = { @@ -34,18 +29,17 @@ const icons: { [key: string]: string } = { resource: globeIcon }; -const serviceAbbreviations: { [key: string]: string } = { - dotnet: '.N', - go: 'Go', - java: 'Jv', - 'js-base': 'JS', - nodejs: 'No', - python: 'Py', - ruby: 'Rb' +const serviceIcons: { [key: string]: string } = { + dotnet: dotNetIcon, + go: goIcon, + java: javaIcon, + 'js-base': rumJsIcon, + nodejs: nodeJsIcon, + php: phpIcon, + python: pythonIcon, + ruby: rubyIcon }; -export const defaultIcon = getAvatarIcon(); - // IE 11 does not properly load some SVGs, which causes a runtime error and the // map to not work at all. We would prefer to do some kind of feature detection // rather than browser detection, but IE 11 does support SVG, just not well @@ -61,15 +55,12 @@ export function iconForNode(node: cytoscape.NodeSingular) { const type = node.data('type'); if (type === 'service') { - return getAvatarIcon( - serviceAbbreviations[node.data('agentName') as string], - node.selected() || node.hasClass('primary') - ? theme.euiColorPrimary - : theme.euiColorDarkestShade - ); + return serviceIcons[node.data('agentName') as string]; } else if (isIE11) { return defaultIcon; - } else { + } else if (icons[type]) { return icons[type]; + } else { + return defaultIcon; } } diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/default.svg b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/default.svg new file mode 100644 index 00000000000000..08bc5331e083b0 --- /dev/null +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/default.svg @@ -0,0 +1,3 @@ +<svg width="32" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> + <path d="M16.75 6.165a1.5 1.5 0 00-1.5 0l-7.392 4.268a1.5 1.5 0 00-.75 1.3v8.535a1.5 1.5 0 00.75 1.299l7.392 4.268a1.5 1.5 0 001.5 0l7.392-4.268a1.5 1.5 0 00.75-1.299v-8.536a1.5 1.5 0 00-.75-1.299L16.75 6.165zm.75-1.299l7.392 4.268a3 3 0 011.5 2.598v8.536a3 3 0 01-1.5 2.598L17.5 27.134a3 3 0 01-3 0l-7.392-4.268a3 3 0 01-1.5-2.598v-8.536a3 3 0 011.5-2.598L14.5 4.866a3 3 0 013 0z" fill="#98A2B3"/> +</svg> diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/dot-net.svg b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/dot-net.svg new file mode 100644 index 00000000000000..9f7427f0e10017 --- /dev/null +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/dot-net.svg @@ -0,0 +1,127 @@ +<svg width="32" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> + <path d="M11.164 13.586c1.145 3.503 1.58 9.753 4.93 9.753.254 0 .512-.025.77-.074-3.045-.71-3.405-6.892-5.264-10.093-.148.135-.293.273-.436.414" fill="url(#paint0_linear)"/> + <path d="M11.6 13.172c1.859 3.201 2.22 9.383 5.265 10.093.239-.044.479-.11.719-.195-2.733-1.339-3.489-7.341-5.6-10.231-.13.108-.258.22-.384.333" fill="url(#paint1_linear)"/> + <path d="M14.278 11.268a4.14 4.14 0 00-.772.074c-.678.128-1.367.42-2.06.862.189.187.37.4.539.635.706-.586 1.407-1.02 2.106-1.28.255-.095.518-.168.786-.218a2.42 2.42 0 00-.6-.073" fill="#14559A"/> + <path d="M19.718 21.836c.29-.233.571-.478.84-.737-1.164-3.487-1.58-9.826-4.954-9.826-.241 0-.485.023-.727.068 3.072.764 3.466 7.45 4.84 10.495" fill="url(#paint2_linear)"/> + <path d="M14.877 11.34a2.425 2.425 0 00-.6-.072l1.327.005a3.95 3.95 0 00-.727.068" fill="#3092C4"/> + <path d="M19.659 22.577a5.018 5.018 0 01-.38-.411 6.977 6.977 0 01-1.695.904 2.609 2.609 0 001.17.269c.63 0 1.129-.075 1.553-.278a2.95 2.95 0 01-.648-.484" fill="#1969BC"/> + <path d="M14.09 11.56c2.753 1.44 2.992 7.959 5.189 10.606.15-.106.295-.216.438-.33-1.374-3.045-1.767-9.731-4.84-10.495-.268.05-.53.124-.786.22" fill="url(#paint3_linear)"/> + <path d="M11.985 12.839c2.11 2.89 2.866 8.892 5.599 10.231a6.975 6.975 0 001.695-.904C17.082 19.519 16.843 13 14.09 11.56c-.699.26-1.4.693-2.106 1.279" fill="url(#paint4_linear)"/> + <path d="M9.814 13.502c-.331.748-.67 1.73-1.078 3.014.813-1.145 1.623-2.131 2.428-2.93a8.789 8.789 0 00-.359-.935c-.345.265-.676.55-.991.85" fill="url(#paint5_linear)"/> + <path d="M11.099 12.435c-.1.07-.197.142-.293.216.128.28.247.594.358.935.143-.14.288-.279.436-.414a5.808 5.808 0 00-.501-.737" fill="#2B74B1"/> + <path d="M11.445 12.204a9.562 9.562 0 00-.347.23c.18.223.346.47.502.738.126-.114.254-.225.385-.333a5.094 5.094 0 00-.54-.635" fill="#125A9E"/> + <path d="M30.218 11.001c-1.556 6.004-4.807 10.825-7.533 12.04h-.005c-.05.023-.1.044-.148.064-.006.004-.012.004-.018.007l-.041.016c-.007.004-.013.005-.02.007-.022.009-.045.015-.067.024-.01.005-.02.007-.028.01a.36.36 0 01-.034.011l-.033.012-.03.01-.057.017c-.009 0-.016.005-.025.007l-.04.01c-.008.005-.016.006-.026.008a.934.934 0 01-.043.01l-.052.012c.125.046.257.07.39.069 2.585 0 5.19-4.632 9.503-12.335h-1.693v.001z" fill="url(#paint6_linear)"/> + <path d="M8.175 11.512c.002 0 .004-.004.005-.004.002 0 .005 0 .006-.004h.003l.042-.016c.004 0 .006 0 .008-.004.004 0 .008-.004.011-.005l.045-.016h.003c.034-.01.066-.023.099-.035.004 0 .009-.004.015-.004l.042-.012c.007-.004.013-.004.02-.007l.042-.012c.007 0 .012-.004.017-.005.047-.013.094-.025.142-.036.006 0 .012-.005.02-.005a.274.274 0 01.04-.008c.007-.004.014-.004.021-.006.014-.004.027-.005.042-.008h.01l.086-.016h.018c.013-.004.026-.004.04-.007.007 0 .015-.004.022-.004.013 0 .025-.004.038-.006.007 0 .013 0 .021-.004.03-.004.061-.005.093-.008a2.87 2.87 0 00-.275-.014c-2.91 0-6.921 5.4-8.728 12.395h.349a101.37 101.37 0 001.572-2.922c1.265-4.954 3.842-8.333 6.131-9.228" fill="url(#paint7_linear)"/> + <path d="M9.814 13.502a12.1 12.1 0 01.991-.851 4.68 4.68 0 00-.236-.457c-.266.323-.51.75-.755 1.308M10.053 11.553c.19.16.36.379.516.641.05-.06.099-.116.15-.168a2.921 2.921 0 00-.666-.473" fill="#0D82CA"/> + <path d="M2.044 20.74c2.654-5.115 3.912-8.352 6.131-9.228-2.288.895-4.866 4.274-6.131 9.227" fill="url(#paint8_linear)"/> + <path d="M10.72 12.026c-.053.053-.102.108-.151.168.087.148.166.3.236.457.097-.074.195-.146.293-.216a3.989 3.989 0 00-.379-.409" fill="#127BCA"/> + <path d="M3.249 23.638c-.017.004-.033.004-.048.006h-.01c-.013 0-.028.004-.04.004h-.007c-.033.004-.066.004-.098.007h-.01c2.686-.075 3.914-1.42 4.524-3.371.463-1.48.843-2.725 1.177-3.77C7.61 18.097 6.48 19.985 5.345 22.1c-.548 1.02-1.382 1.445-2.096 1.537" fill="url(#paint9_linear)"/> + <path d="M3.249 23.637c.714-.09 1.548-.516 2.096-1.536 1.136-2.114 2.267-4.002 3.39-5.586.41-1.284.747-2.266 1.079-3.014-2.241 2.133-4.49 5.679-6.565 10.136" fill="url(#paint10_linear)"/> + <path d="M2.044 20.74c-.475.915-.995 1.89-1.573 2.922h1.013c.128-.985.315-1.96.56-2.922" fill="#05A1E6"/> + <path d="M9.033 11.29c-.008 0-.014.005-.021.005-.013.004-.025.004-.038.005-.008 0-.015 0-.023.004-.014.004-.026.005-.04.007-.006 0-.012 0-.017.004l-.086.015h-.01a.315.315 0 01-.042.009c-.007.004-.014.004-.021.005-.014.004-.028.006-.04.008-.008.005-.014.005-.02.005a4.64 4.64 0 00-.142.037c-.005 0-.01.004-.017.005a2.21 2.21 0 00-.043.012c-.006.004-.013.004-.02.006a1.055 1.055 0 00-.042.013c-.005 0-.01.004-.015.004-.033.012-.065.024-.099.034l-.045.016c-.006.004-.011.005-.018.008-.015.004-.03.01-.042.015-.005.004-.01.005-.014.007-2.22.876-3.477 4.113-6.132 9.228a24.646 24.646 0 00-.56 2.921h.143c.4 0 .513-.004.974-.004h.446c.032-.004.064-.004.097-.006h.007c.013 0 .027-.005.04-.005h.01c.015 0 .032-.003.048-.005 2.075-4.457 4.325-8.003 6.565-10.136.247-.558.49-.984.755-1.307a2.476 2.476 0 00-.516-.642s-.005 0-.005-.004l-.032-.015-.031-.016a.344.344 0 01-.03-.015c-.014-.004-.025-.01-.036-.015l-.029-.012a1.243 1.243 0 01-.058-.025l-.025-.01a.868.868 0 01-.044-.017c-.008-.004-.016-.005-.024-.008l-.06-.02h-.006c-.023-.008-.046-.014-.07-.02-.006-.005-.01-.005-.016-.006l-.06-.016c-.004 0-.01-.004-.013-.004a2.13 2.13 0 00-.148-.033c-.005 0-.01-.004-.015-.004a.86.86 0 00-.064-.01c-.005-.004-.008-.004-.013-.004a1.609 1.609 0 00-.076-.01h-.013c-.02-.004-.04-.004-.058-.006-.032.004-.063.005-.093.008" fill="url(#paint11_linear)"/> + <path d="M24.138 14.325c-.51 1.636-.924 2.985-1.284 4.096 1.401-1.929 2.781-4.354 4.096-7.154-1.534.482-2.351 1.584-2.812 3.058z" fill="url(#paint12_linear)"/> + <path d="M22.898 22.94a4.26 4.26 0 01-.213.102c2.726-1.216 5.977-6.038 7.533-12.04h-.315c-3.576 6.388-4.727 10.664-7.005 11.937z" fill="url(#paint13_linear)"/> + <path d="M21.119 22.403c.593-.724 1.076-1.954 1.735-3.982-.76 1.045-1.526 1.943-2.293 2.675 0 .004 0 .004-.004.007.167.5.35.943.56 1.3" fill="#079AE1"/> + <path d="M21.119 22.403a2.43 2.43 0 01-.812.658 2.295 2.295 0 00.967.274h.009c.02 0 .043 0 .065.004h.222c.008 0 .017 0 .025-.004.016 0 .033 0 .049-.004h.024c.017 0 .035-.004.053-.006h.004c.006 0 .011-.004.017-.004.018-.004.038-.006.056-.009h.017l.064-.01h.01l.128-.027c-.352-.129-.647-.433-.9-.865" fill="#1969BC"/> + <path d="M16.093 23.339c.255 0 .513-.025.772-.075.239-.043.479-.11.719-.193a2.614 2.614 0 001.17.268h-2.66z" fill="#1E5CB3"/> + <path d="M18.754 23.339c.63 0 1.129-.075 1.553-.278a2.298 2.298 0 00.967.274h.009c.02 0 .043 0 .065.004h.077-2.673.002z" fill="#1E5CB3"/> + <path d="M21.426 23.339h.146c.008 0 .017 0 .025-.004.016 0 .032 0 .05-.004h.024c.016 0 .035-.004.052-.006h.005c.005 0 .01-.004.016-.004.018-.004.038-.006.056-.009.006 0 .011 0 .018-.004l.064-.01h.01c.043-.008.085-.016.127-.027.125.046.257.07.39.069l-.982.004-.001-.005z" fill="#1D60B5"/> + <path d="M20.559 21.103v-.004c-.269.258-.55.504-.84.736-.144.114-.29.224-.44.33.123.147.249.285.38.411.201.194.415.358.649.484a2.424 2.424 0 00.812-.658c-.21-.357-.393-.799-.56-1.3" fill="#175FAB"/> + <path d="M28.904 11.001h-1.588c-.085.004-.169.007-.251.013-.039.083-.079.166-.117.25-1.314 2.8-2.695 5.225-4.096 7.153-.659 2.028-1.142 3.259-1.735 3.983.253.432.548.736.899.865.01-.004.018-.004.027-.006h.006c.006 0 .013-.004.02-.004l.044-.011c.009-.004.016-.005.026-.008l.039-.01c.008-.004.016-.005.024-.007l.059-.017a.169.169 0 01.029-.01l.033-.012.033-.01c.01-.005.02-.007.028-.01.023-.01.045-.016.068-.025.007 0 .013-.006.02-.007l.041-.016c.005-.004.011-.005.018-.007.048-.02.098-.04.147-.063h.005a4.21 4.21 0 00.214-.102c2.278-1.273 3.429-5.55 7.005-11.938h-1 .002z" fill="url(#paint14_linear)"/> + <path d="M9.126 11.282c.006 0 .01 0 .016.004a.13.13 0 01.042.005h.014l.075.01a1.473 1.473 0 00.077.015c.005 0 .01.003.016.003.049.01.1.02.147.033.005 0 .01.004.013.004l.06.017c.006 0 .01.004.016.005.024.006.047.012.07.02.001 0 .002 0 .005.004l.061.02c.009.005.016.006.024.008.014.007.03.013.044.018.008 0 .016.006.025.01.019.008.039.015.058.024l.03.012a1.675 1.675 0 00.066.03l.03.016c.254.124.488.29.704.492.078-.082.16-.157.25-.226a2.745 2.745 0 00-1.843-.518" fill="#7DCBEC"/> + <path d="M10.72 12.026c.135.127.262.264.378.409.114-.08.23-.157.347-.231a3.65 3.65 0 00-.477-.405c-.088.07-.172.145-.249.227" fill="#5EC5ED"/> + <path d="M9.126 11.282a2.749 2.749 0 011.842.518c.5-.394 1.103-.532 1.94-.532H8.851c.094 0 .185.006.275.014" fill="url(#paint15_linear)"/> + <path d="M12.908 11.268c-.838 0-1.44.138-1.94.531.17.121.33.257.477.405.694-.442 1.383-.735 2.061-.862.254-.049.512-.073.771-.074h-1.369z" fill="url(#paint16_linear)"/> + <path d="M22.854 18.421c.36-1.11.773-2.46 1.285-4.096.46-1.475 1.277-2.577 2.81-3.058.04-.082.079-.167.118-.25-2.499.15-3.667 1.42-4.255 3.303-1.028 3.288-1.65 5.418-2.25 6.776.765-.732 1.531-1.63 2.292-2.675" fill="url(#paint17_linear)"/> + <path d="M26.52 22.463h-.283v.88h-.115v-.88h-.285v-.105h.683v.105zm1.16.88h-.115v-.661c0-.052.004-.116.01-.191a.68.68 0 01-.031.096l-.335.756h-.057l-.336-.75a.526.526 0 01-.03-.102h-.004c.004.04.005.104.005.192v.66h-.11v-.985h.152l.302.688a.902.902 0 01.045.118h.004l.047-.121.309-.685h.145v.985z" fill="#000"/> + <defs> + <linearGradient id="paint0_linear" x1="14.014" y1="11.188" x2="14.014" y2="26.351" gradientUnits="userSpaceOnUse"> + <stop stop-color="#0994DC"/> + <stop offset=".35" stop-color="#66CEF5"/> + <stop offset=".846" stop-color="#127BCA"/> + <stop offset="1" stop-color="#127BCA"/> + </linearGradient> + <linearGradient id="paint1_linear" x1="14.592" y1="10.804" x2="14.592" y2="26.353" gradientUnits="userSpaceOnUse"> + <stop stop-color="#0E76BC"/> + <stop offset=".36" stop-color="#36AEE8"/> + <stop offset=".846" stop-color="#00ADEF"/> + <stop offset="1" stop-color="#00ADEF"/> + </linearGradient> + <linearGradient id="paint2_linear" x1="17.717" y1="22.99" x2="17.717" y2="10.617" gradientUnits="userSpaceOnUse"> + <stop stop-color="#1C63B7"/> + <stop offset=".5" stop-color="#33BDF2"/> + <stop offset="1" stop-color="#33BDF2" stop-opacity=".42"/> + </linearGradient> + <linearGradient id="paint3_linear" x1="16.904" y1="9.228" x2="16.904" y2="25.373" gradientUnits="userSpaceOnUse"> + <stop stop-color="#166AB8"/> + <stop offset=".4" stop-color="#36AEE8"/> + <stop offset=".846" stop-color="#0798DD"/> + <stop offset="1" stop-color="#0798DD"/> + </linearGradient> + <linearGradient id="paint4_linear" x1="15.632" y1="9.313" x2="15.632" y2="26.48" gradientUnits="userSpaceOnUse"> + <stop stop-color="#124379"/> + <stop offset=".39" stop-color="#1487CB"/> + <stop offset=".78" stop-color="#165197"/> + <stop offset="1" stop-color="#165197"/> + </linearGradient> + <linearGradient id="paint5_linear" x1="8.736" y1="14.583" x2="11.164" y2="14.583" gradientUnits="userSpaceOnUse"> + <stop stop-color="#33BDF2" stop-opacity=".698"/> + <stop offset="1" stop-color="#1DACD8"/> + </linearGradient> + <linearGradient id="paint6_linear" x1="26.965" y1="22.679" x2="26.965" y2="10.627" gradientUnits="userSpaceOnUse"> + <stop stop-color="#136AB4"/> + <stop offset=".6" stop-color="#59CAF5" stop-opacity=".549"/> + <stop offset="1" stop-color="#59CAF5" stop-opacity=".235"/> + </linearGradient> + <linearGradient id="paint7_linear" x1=".123" y1="17.463" x2="9.126" y2="17.463" gradientUnits="userSpaceOnUse"> + <stop stop-color="#05A1E6" stop-opacity=".247"/> + <stop offset="1" stop-color="#05A1E6"/> + </linearGradient> + <linearGradient id="paint8_linear" x1="5.109" y1="22.983" x2="5.109" y2="10.642" gradientUnits="userSpaceOnUse"> + <stop stop-color="#318ED5"/> + <stop offset="1" stop-color="#38A7E4"/> + </linearGradient> + <linearGradient id="paint9_linear" x1="5.886" y1="23.026" x2="5.886" y2="11.03" gradientUnits="userSpaceOnUse"> + <stop stop-color="#05A1E6"/> + <stop offset="1" stop-color="#05A1E6" stop-opacity=".549"/> + </linearGradient> + <linearGradient id="paint10_linear" x1="6.531" y1="23.639" x2="6.531" y2="13.502" gradientUnits="userSpaceOnUse"> + <stop stop-color="#1959A6"/> + <stop offset=".5" stop-color="#05A1E6"/> + <stop offset=".918" stop-color="#7EC5EA"/> + <stop offset="1" stop-color="#7EC5EA"/> + </linearGradient> + <linearGradient id="paint11_linear" x1="6.92" y1="22.991" x2="3.484" y2="12.49" gradientUnits="userSpaceOnUse"> + <stop stop-color="#165096"/> + <stop offset="1" stop-color="#0D82CA"/> + </linearGradient> + <linearGradient id="paint12_linear" x1="24.901" y1="16.775" x2="24.901" y2="11.031" gradientUnits="userSpaceOnUse"> + <stop stop-color="#05A1E6"/> + <stop offset=".874" stop-color="#0495D6"/> + <stop offset="1" stop-color="#0495D6"/> + </linearGradient> + <linearGradient id="paint13_linear" x1="27.601" y1="10.5" x2="22.248" y2="22.386" gradientUnits="userSpaceOnUse"> + <stop stop-color="#38A7E4" stop-opacity=".329"/> + <stop offset=".962" stop-color="#0E88D3"/> + <stop offset="1" stop-color="#0E88D3"/> + </linearGradient> + <linearGradient id="paint14_linear" x1="25.511" y1="10.965" x2="25.511" y2="23.496" gradientUnits="userSpaceOnUse"> + <stop stop-color="#168CD4"/> + <stop offset=".5" stop-color="#1C87CC"/> + <stop offset="1" stop-color="#154B8D"/> + </linearGradient> + <linearGradient id="paint15_linear" x1="9.527" y1="10.707" x2="9.582" y2="12.022" gradientUnits="userSpaceOnUse"> + <stop stop-color="#97D6EE"/> + <stop offset=".703" stop-color="#55C1EA"/> + <stop offset="1" stop-color="#55C1EA"/> + </linearGradient> + <linearGradient id="paint16_linear" x1="11.196" y1="12.145" x2="11.442" y2="10.753" gradientUnits="userSpaceOnUse"> + <stop stop-color="#7ACCEC"/> + <stop offset="1" stop-color="#3FB7ED"/> + </linearGradient> + <linearGradient id="paint17_linear" x1="23.814" y1="11.658" x2="23.814" y2="23.914" gradientUnits="userSpaceOnUse"> + <stop stop-color="#1DA7E7"/> + <stop offset="1" stop-color="#37ABE7" stop-opacity="0"/> + </linearGradient> + </defs> +</svg> diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/go.svg b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/go.svg new file mode 100644 index 00000000000000..fb171e2813fac5 --- /dev/null +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/go.svg @@ -0,0 +1,11 @@ +<svg width="32" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> + <g clip-path="url(#clip0)" fill="#00ADD8"> + <path d="M2.414 13.15c-.062 0-.077-.031-.046-.078l.324-.417c.031-.047.109-.078.17-.078h5.525c.062 0 .077.047.046.093l-.263.402c-.03.047-.108.093-.155.093l-5.601-.015zM.077 14.573c-.061 0-.077-.03-.046-.077l.325-.418c.03-.046.108-.077.17-.077h7.056c.062 0 .093.046.078.093l-.124.371c-.016.062-.078.093-.14.093l-7.319.015zm3.745 1.424c-.062 0-.077-.046-.046-.093l.216-.387c.031-.046.093-.093.155-.093h3.095c.062 0 .093.047.093.109l-.031.371c0 .062-.062.108-.109.108l-3.373-.015zm16.062-3.126c-.975.248-1.64.433-2.6.681-.232.062-.247.077-.448-.155-.232-.263-.403-.433-.728-.588-.975-.48-1.918-.34-2.8.232-1.053.681-1.594 1.687-1.579 2.94.016 1.238.867 2.26 2.09 2.43 1.051.14 1.933-.232 2.63-1.021.139-.17.263-.356.418-.573H13.88c-.325 0-.402-.201-.294-.464.201-.48.573-1.285.79-1.687a.418.418 0 01.386-.247h5.633c-.031.417-.031.835-.093 1.253a6.598 6.598 0 01-1.27 3.033c-1.113 1.47-2.568 2.383-4.41 2.63-1.516.201-2.924-.093-4.162-1.02-1.145-.867-1.795-2.013-1.965-3.436-.201-1.687.294-3.203 1.315-4.534 1.1-1.439 2.554-2.352 4.333-2.677 1.455-.263 2.847-.093 4.1.758.82.542 1.409 1.285 1.796 2.182.093.14.03.217-.155.263z"/> + <path d="M25.006 21.428c-1.408-.03-2.693-.433-3.776-1.361-.913-.79-1.485-1.795-1.671-2.987-.279-1.748.201-3.296 1.253-4.673 1.13-1.486 2.492-2.26 4.333-2.584 1.578-.279 3.064-.124 4.41.789 1.223.836 1.98 1.965 2.182 3.45.263 2.09-.34 3.792-1.78 5.246-1.02 1.037-2.274 1.687-3.713 1.981-.418.077-.836.093-1.238.14zm3.683-6.251c-.016-.201-.016-.356-.047-.51-.278-1.533-1.686-2.4-3.157-2.059-1.439.325-2.367 1.238-2.707 2.693-.279 1.207.309 2.429 1.423 2.924.851.371 1.702.325 2.522-.093 1.223-.634 1.888-1.625 1.966-2.955z"/> + </g> + <defs> + <clipPath id="clip0"> + <path fill="#fff" d="M0 9.333h32v12.275H0z"/> + </clipPath> + </defs> +</svg> diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/java.svg b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/java.svg new file mode 100644 index 00000000000000..52a410e2eaa1a6 --- /dev/null +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/java.svg @@ -0,0 +1,7 @@ +<svg width="32" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> + <path fill-rule="evenodd" clip-rule="evenodd" d="M11.729 24.747s-1.243.71.885.951c2.58.29 3.897.248 6.738-.28 0 0 .748.46 1.792.858-6.371 2.685-14.419-.155-9.415-1.53zm-.779-3.503s-1.394 1.014.736 1.231c2.755.28 4.93.303 8.695-.41 0 0 .52.52 1.338.803-7.702 2.215-16.28.174-10.769-1.624z" fill="#3174B9"/> + <path fill-rule="evenodd" clip-rule="evenodd" d="M17.512 15.3c1.57 1.778-.411 3.377-.411 3.377s3.986-2.023 2.155-4.557c-1.71-2.362-3.02-3.536 4.077-7.583 0 0-11.141 2.735-5.82 8.763z" fill="#CA3132"/> + <path fill-rule="evenodd" clip-rule="evenodd" d="M25.938 27.338s.92.746-1.013 1.323c-3.677 1.095-15.304 1.425-18.534.044-1.16-.497 1.016-1.186 1.701-1.332.714-.151 1.122-.124 1.122-.124-1.291-.894-8.346 1.756-3.583 2.516 12.988 2.071 23.675-.932 20.307-2.427zm-13.611-9.724s-5.914 1.381-2.094 1.884c1.613.212 4.827.163 7.823-.084a61.883 61.883 0 004.905-.634s-.862.363-1.487.782c-6.007 1.554-17.608.83-14.268-.758 2.824-1.343 5.12-1.19 5.12-1.19zm10.61 5.831c6.105-3.12 3.282-6.117 1.311-5.713a4.702 4.702 0 00-.698.184s.18-.276.522-.395c3.898-1.347 6.896 3.974-1.257 6.082 0 0 .094-.084.122-.158z" fill="#3174B9"/> + <path fill-rule="evenodd" clip-rule="evenodd" d="M19.256 0s3.38 3.326-3.207 8.44c-5.283 4.103-1.205 6.442-.002 9.115-3.084-2.736-5.347-5.144-3.83-7.386C14.448 6.879 20.62 5.283 19.257 0z" fill="#CA3132"/> + <path fill-rule="evenodd" clip-rule="evenodd" d="M12.927 31.9c5.86.368 14.86-.205 15.073-2.932 0 0-.41 1.033-4.843 1.853-5.002.926-11.172.819-14.83.225 0 0 .75.61 4.6.853z" fill="#3174B9"/> +</svg> diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/nodejs.svg b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/nodejs.svg new file mode 100644 index 00000000000000..d327b1ba65ad26 --- /dev/null +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/nodejs.svg @@ -0,0 +1,46 @@ +<svg width="32" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> + <mask id="a" maskUnits="userSpaceOnUse" x="5" y="4" width="22" height="24"> + <path d="M16.101 4.15a1.151 1.151 0 00-1.139 0L5.56 9.579c-.358.201-.559.58-.559.983v10.878c0 .402.223.782.559.983l9.403 5.427a1.152 1.152 0 001.14 0l9.403-5.427c.357-.201.559-.581.559-.983V10.56c0-.402-.224-.782-.559-.983l-9.404-5.427z" fill="#fff"/> + </mask> + <g mask="url(#a)"> + <path d="M16.101 4.15a1.151 1.151 0 00-1.139 0L5.56 9.579c-.358.201-.559.58-.559.983v10.878c0 .402.223.782.559.983l9.403 5.427a1.152 1.152 0 001.14 0l9.403-5.427c.357-.201.559-.581.559-.983V10.56c0-.402-.224-.782-.559-.983l-9.404-5.427z" fill="url(#paint0_linear)"/> + <path d="M25.527 9.577L16.08 4.15a1.55 1.55 0 00-.29-.112L5.2 22.175c.088.107.194.198.313.268l9.448 5.428c.268.157.581.201.871.112L25.773 9.8a1.173 1.173 0 00-.246-.223z" fill="url(#paint1_linear)"/> + <path fill-rule="evenodd" clip-rule="evenodd" d="M25.55 22.422c.267-.157.468-.425.558-.715L15.744 4.017c-.268-.045-.559-.023-.804.133L5.559 9.556l10.118 18.45c.147-.024.29-.07.424-.134l9.448-5.45z" fill="url(#paint2_linear)"/> + <path fill-rule="evenodd" clip-rule="evenodd" d="M25.55 22.422l-9.426 5.428a1.349 1.349 0 01-.424.134l.178.335 10.453-6.053v-.134l-.268-.447c-.044.313-.245.58-.514.737z" fill="url(#paint3_linear)"/> + <path fill-rule="evenodd" clip-rule="evenodd" d="M25.55 22.422l-9.426 5.428a1.349 1.349 0 01-.424.134l.178.335 10.453-6.053v-.134l-.268-.447c-.044.313-.245.58-.514.737z" fill="url(#paint4_linear)"/> + </g> + <defs> + <linearGradient id="paint0_linear" x1="19.363" y1="8.197" x2="9.056" y2="24.392" gradientUnits="userSpaceOnUse"> + <stop stop-color="#41873F"/> + <stop offset=".329" stop-color="#418B3D"/> + <stop offset=".635" stop-color="#419637"/> + <stop offset=".932" stop-color="#3FA92D"/> + <stop offset="1" stop-color="#3FAE2A"/> + </linearGradient> + <linearGradient id="paint1_linear" x1="14.104" y1="17.273" x2="39.918" y2="3.249" gradientUnits="userSpaceOnUse"> + <stop offset=".138" stop-color="#41873F"/> + <stop offset=".403" stop-color="#54A044"/> + <stop offset=".714" stop-color="#66B848"/> + <stop offset=".908" stop-color="#6CC04A"/> + </linearGradient> + <linearGradient id="paint2_linear" x1="4.657" y1="16" x2="26.416" y2="16" gradientUnits="userSpaceOnUse"> + <stop offset=".092" stop-color="#6CC04A"/> + <stop offset=".286" stop-color="#66B848"/> + <stop offset=".597" stop-color="#54A044"/> + <stop offset=".862" stop-color="#41873F"/> + </linearGradient> + <linearGradient id="paint3_linear" x1="4.657" y1="25.02" x2="26.416" y2="25.02" gradientUnits="userSpaceOnUse"> + <stop offset=".092" stop-color="#6CC04A"/> + <stop offset=".286" stop-color="#66B848"/> + <stop offset=".597" stop-color="#54A044"/> + <stop offset=".862" stop-color="#41873F"/> + </linearGradient> + <linearGradient id="paint4_linear" x1="29.586" y1="7.683" x2="24.073" y2="36.568" gradientUnits="userSpaceOnUse"> + <stop stop-color="#41873F"/> + <stop offset=".329" stop-color="#418B3D"/> + <stop offset=".635" stop-color="#419637"/> + <stop offset=".932" stop-color="#3FA92D"/> + <stop offset="1" stop-color="#3FAE2A"/> + </linearGradient> + </defs> +</svg> diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/php.svg b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/php.svg new file mode 100644 index 00000000000000..c8af5dc3312693 --- /dev/null +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/php.svg @@ -0,0 +1,18 @@ +<svg width="32" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> + <path d="M.45 15.63c0 4.518 6.962 8.18 15.55 8.18 8.588 0 15.55-3.662 15.55-8.18S24.588 7.45 16 7.45C7.412 7.45.45 11.112.45 15.63z" fill="url(#paint0_radial)"/> + <path d="M16 23.203c8.253 0 14.943-3.39 14.943-7.573 0-4.182-6.69-7.573-14.943-7.573-8.252 0-14.943 3.39-14.943 7.573 0 4.182 6.69 7.573 14.943 7.573z" fill="#777BB3"/> + <path d="M8.898 16.569c.679 0 1.186-.125 1.506-.372.317-.244.536-.667.651-1.257.107-.552.066-.937-.121-1.145-.192-.212-.606-.32-1.232-.32H8.618l-.601 3.094h.881zm-3.546 3.81a.168.168 0 01-.166-.2l1.593-8.198a.169.169 0 01.166-.137h3.434c1.079 0 1.882.293 2.387.871.508.581.664 1.394.466 2.414-.08.416-.22.802-.413 1.148a3.841 3.841 0 01-.76.952c-.372.349-.793.601-1.25.75-.45.146-1.029.22-1.719.22H7.7l-.397 2.044a.169.169 0 01-.166.136H5.352z" fill="#000"/> + <path d="M8.757 13.644h.946c.754 0 1.017.166 1.106.264.148.164.175.51.08 1-.106.548-.304.937-.588 1.155-.29.224-.762.337-1.403.337h-.676l.535-2.756zm1.622-1.969H6.945c-.162 0-.3.115-.331.274L5.02 20.146a.338.338 0 00.332.402h1.785c.162 0 .3-.115.332-.273l.37-1.907H9.09c.708 0 1.304-.077 1.77-.229.481-.156.923-.42 1.314-.786.324-.298.59-.632.792-.993.202-.362.347-.765.432-1.198.209-1.075.039-1.935-.505-2.558-.538-.616-1.384-.928-2.514-.928zm-2.567 5.062h1.086c.72 0 1.257-.135 1.609-.406.353-.272.59-.725.714-1.36.118-.608.064-1.038-.162-1.289-.226-.25-.678-.375-1.356-.375H8.479l-.667 3.43zm2.567-4.724c1.033 0 1.786.271 2.26.813.474.543.616 1.3.427 2.271-.078.4-.209.766-.394 1.098a3.663 3.663 0 01-.727.91 3.154 3.154 0 01-1.189.713c-.436.142-.99.213-1.666.213H7.56l-.423 2.18H5.352l1.593-8.198h3.434" fill="#fff"/> + <path d="M17.326 18.2a.168.168 0 01-.165-.201l.705-3.627c.067-.345.05-.593-.047-.697-.06-.064-.238-.172-.765-.172h-1.277l-.886 4.56a.169.169 0 01-.166.137h-1.771a.169.169 0 01-.166-.201L14.38 9.8a.169.169 0 01.166-.136h1.771a.169.169 0 01.166.2l-.384 1.98h1.373c1.047 0 1.756.184 2.17.563.42.387.552 1.007.39 1.84l-.741 3.815a.169.169 0 01-.166.137h-1.8z" fill="#000"/> + <path d="M16.318 9.496h-1.771c-.162 0-.3.115-.332.273l-1.593 8.198a.337.337 0 00.331.401h1.772c.162 0 .3-.114.331-.273l.86-4.423h1.138c.526 0 .637.113.641.117.032.035.074.194.005.55l-.705 3.628a.337.337 0 00.331.401h1.8c.162 0 .3-.114.331-.273l.742-3.814c.174-.896.025-1.568-.443-1.997-.445-.41-1.192-.609-2.283-.609h-1.169l.346-1.777a.337.337 0 00-.332-.402zm0 .338l-.423 2.179h1.578c.993 0 1.678.173 2.055.52.377.346.49.907.34 1.683l-.742 3.815h-1.8l.705-3.627c.08-.413.05-.694-.088-.844-.14-.15-.436-.225-.89-.225h-1.415l-.913 4.696h-1.772l1.594-8.197h1.771z" fill="#fff"/> + <path d="M22.836 16.569c.679 0 1.185-.125 1.506-.372.317-.244.536-.667.65-1.257.108-.552.067-.937-.12-1.145-.192-.212-.606-.32-1.232-.32h-1.084l-.601 3.094h.881zm-3.546 3.81a.168.168 0 01-.166-.2l1.593-8.198a.169.169 0 01.166-.137h3.434c1.079 0 1.882.293 2.387.871.508.581.664 1.393.466 2.414-.081.416-.22.802-.413 1.148-.194.346-.45.667-.76.952-.372.349-.793.601-1.25.75-.45.146-1.029.22-1.719.22h-1.39l-.397 2.044a.169.169 0 01-.166.136H19.29z" fill="#000"/> + <path d="M22.695 13.644h.945c.755 0 1.017.166 1.107.264.147.164.175.51.08 1-.107.548-.304.937-.588 1.155-.29.224-.762.337-1.403.337h-.676l.535-2.756zm1.622-1.969h-3.434c-.162 0-.3.115-.331.274l-1.594 8.197a.338.338 0 00.332.402h1.785c.162 0 .3-.115.331-.273l.37-1.907h1.252c.708 0 1.304-.077 1.77-.229.481-.156.923-.42 1.314-.787.324-.297.59-.631.792-.992.202-.362.347-.765.431-1.198.21-1.075.04-1.936-.504-2.558-.538-.616-1.384-.928-2.514-.928zm-2.567 5.062h1.086c.72 0 1.257-.135 1.609-.406.352-.272.59-.725.713-1.36.119-.608.065-1.038-.161-1.289-.226-.25-.678-.375-1.357-.375h-1.223l-.667 3.43zm2.567-4.724c1.033 0 1.786.271 2.26.813.474.543.616 1.3.427 2.271-.078.4-.21.766-.394 1.098a3.66 3.66 0 01-.727.91 3.154 3.154 0 01-1.189.713c-.436.142-.99.213-1.666.213h-1.53l-.423 2.18H19.29l1.593-8.198h3.434" fill="#fff"/> + <defs> + <radialGradient id="paint0_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(9.786 10.326) scale(20.4194)"> + <stop stop-color="#AEB2D5"/> + <stop offset=".3" stop-color="#AEB2D5"/> + <stop offset=".75" stop-color="#484C89"/> + <stop offset="1" stop-color="#484C89"/> + </radialGradient> + </defs> +</svg> diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/python.svg b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/python.svg new file mode 100644 index 00000000000000..9b8d0a2836c289 --- /dev/null +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/python.svg @@ -0,0 +1,19 @@ +<svg width="32" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> + <g clip-path="url(#clip0)"> + <path d="M15.897 4.007c-6.078 0-5.698 2.635-5.698 2.635l.007 2.73h5.8v.82H7.901s-3.889-.44-3.889 5.691c0 6.133 3.394 5.915 3.394 5.915h2.026v-2.845s-.109-3.395 3.34-3.395h5.753s3.231.053 3.231-3.123v-5.25s.491-3.178-5.86-3.178zm-3.198 1.836a1.043 1.043 0 11.002 2.086 1.043 1.043 0 01-.002-2.086z" fill="url(#paint0_linear)"/> + <path d="M16.07 27.822c6.077 0 5.698-2.635 5.698-2.635l-.007-2.73h-5.8v-.82h8.103s3.89.44 3.89-5.692c0-6.132-3.395-5.915-3.395-5.915h-2.026v2.846s.11 3.394-3.34 3.394h-5.752s-3.232-.052-3.232 3.124v5.25s-.49 3.178 5.86 3.178zm3.198-1.836a1.04 1.04 0 01-1.044-1.043 1.041 1.041 0 011.443-.965 1.042 1.042 0 010 1.929 1.04 1.04 0 01-.4.079z" fill="url(#paint1_linear)"/> + </g> + <defs> + <linearGradient id="paint0_linear" x1="6.314" y1="6.149" x2="18.178" y2="17.894" gradientUnits="userSpaceOnUse"> + <stop stop-color="#387EB8"/> + <stop offset="1" stop-color="#366994"/> + </linearGradient> + <linearGradient id="paint1_linear" x1="13.596" y1="13.691" x2="26.337" y2="25.735" gradientUnits="userSpaceOnUse"> + <stop stop-color="#FFE052"/> + <stop offset="1" stop-color="#FFC331"/> + </linearGradient> + <clipPath id="clip0"> + <path fill="#fff" d="M4 4h24v23.904H4z"/> + </clipPath> + </defs> +</svg> diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/ruby.svg b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/ruby.svg new file mode 100644 index 00000000000000..fdc54b91f9c29e --- /dev/null +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/ruby.svg @@ -0,0 +1,125 @@ +<svg width="32" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> + <g clip-path="url(#clip0)"> + <path d="M22.51 19.726l-13.64 8.1 17.662-1.198 1.36-17.81-5.381 10.908z" fill="url(#paint0_linear)"/> + <path d="M26.561 26.616l-1.518-10.478-4.135 5.46 5.653 5.018z" fill="url(#paint1_linear)"/> + <path d="M26.582 26.616l-11.122-.873-6.532 2.06 17.654-1.187z" fill="url(#paint2_linear)"/> + <path d="M8.944 27.806l2.779-9.102-6.114 1.307 3.335 7.795z" fill="url(#paint3_linear)"/> + <path d="M20.907 21.628l-2.556-10.014-7.317 6.858 9.873 3.156z" fill="url(#paint4_linear)"/> + <path d="M27.313 11.755l-6.916-5.648-1.926 6.226 8.842-.578z" fill="url(#paint5_linear)"/> + <path d="M24.078 4.093L20.011 6.34l-2.566-2.278 6.633.03z" fill="url(#paint6_linear)"/> + <path d="M4 23.064l1.704-3.107-1.378-3.702L4 23.065z" fill="url(#paint7_linear)"/> + <path d="M4.234 16.138l1.387 3.933 6.026-1.352 6.88-6.394 1.941-6.166L17.411 4l-5.198 1.945c-1.637 1.523-4.815 4.537-4.93 4.593-.113.058-2.098 3.81-3.049 5.6z" fill="#fff"/> + <path d="M9.104 9.071c3.549-3.519 8.124-5.598 9.88-3.826 1.754 1.771-.107 6.076-3.656 9.594s-8.067 5.711-9.822 3.94c-1.756-1.77.048-6.19 3.598-9.708z" fill="url(#paint8_linear)"/> + <path d="M8.944 27.802l2.757-9.13 9.155 2.94c-3.31 3.104-6.992 5.729-11.912 6.19z" fill="url(#paint9_linear)"/> + <path d="M18.539 12.308l2.35 9.31c2.765-2.908 5.247-6.034 6.462-9.9l-8.812.59z" fill="url(#paint10_linear)"/> + <path d="M27.327 11.765c.94-2.839 1.158-6.911-3.278-7.667l-3.64 2.01 6.918 5.657z" fill="url(#paint11_linear)"/> + <path d="M4 23.023c.13 4.686 3.51 4.755 4.95 4.796l-3.326-7.767L4 23.023z" fill="#9E1209"/> + <path d="M18.552 12.322c2.125 1.306 6.407 3.929 6.494 3.977.135.076 1.846-2.886 2.234-4.56l-8.728.583z" fill="url(#paint12_radial)"/> + <path d="M11.697 18.671l3.686 7.11c2.179-1.182 3.885-2.621 5.448-4.164l-9.134-2.946z" fill="url(#paint13_radial)"/> + <path d="M5.61 20.062l-.522 6.217c.985 1.346 2.34 1.463 3.762 1.358-1.028-2.56-3.083-7.68-3.24-7.575z" fill="url(#paint14_linear)"/> + <path d="M20.388 6.123l7.321 1.028c-.39-1.656-1.59-2.724-3.635-3.058l-3.686 2.03z" fill="url(#paint15_linear)"/> + </g> + <defs> + <linearGradient id="paint0_linear" x1="24.992" y1="29.993" x2="19.957" y2="21.091" gradientUnits="userSpaceOnUse"> + <stop stop-color="#FB7655"/> + <stop offset=".41" stop-color="#E42B1E"/> + <stop offset=".99" stop-color="#900"/> + <stop offset="1" stop-color="#900"/> + </linearGradient> + <linearGradient id="paint1_linear" x1="27.503" y1="22.518" x2="20.425" y2="21.135" gradientUnits="userSpaceOnUse"> + <stop stop-color="#871101"/> + <stop offset=".99" stop-color="#911209"/> + <stop offset="1" stop-color="#911209"/> + </linearGradient> + <linearGradient id="paint2_linear" x1="22.305" y1="30.263" x2="22.214" y2="25.774" gradientUnits="userSpaceOnUse"> + <stop stop-color="#871101"/> + <stop offset=".99" stop-color="#911209"/> + <stop offset="1" stop-color="#911209"/> + </linearGradient> + <linearGradient id="paint3_linear" x1="8.666" y1="19.362" x2="10.771" y2="25.533" gradientUnits="userSpaceOnUse"> + <stop stop-color="#fff"/> + <stop offset=".23" stop-color="#E57252"/> + <stop offset=".46" stop-color="#DE3B20"/> + <stop offset=".99" stop-color="#A60003"/> + <stop offset="1" stop-color="#A60003"/> + </linearGradient> + <linearGradient id="paint4_linear" x1="15.593" y1="13.251" x2="15.975" y2="19.93" gradientUnits="userSpaceOnUse"> + <stop stop-color="#fff"/> + <stop offset=".23" stop-color="#E4714E"/> + <stop offset=".56" stop-color="#BE1A0D"/> + <stop offset=".99" stop-color="#A80D00"/> + <stop offset="1" stop-color="#A80D00"/> + </linearGradient> + <linearGradient id="paint5_linear" x1="21.739" y1="7.078" x2="22.297" y2="11.928" gradientUnits="userSpaceOnUse"> + <stop stop-color="#fff"/> + <stop offset=".18" stop-color="#E46342"/> + <stop offset=".4" stop-color="#C82410"/> + <stop offset=".99" stop-color="#A80D00"/> + <stop offset="1" stop-color="#A80D00"/> + </linearGradient> + <linearGradient id="paint6_linear" x1="18.347" y1="5.392" x2="19.134" y2="2.055" gradientUnits="userSpaceOnUse"> + <stop stop-color="#fff"/> + <stop offset=".54" stop-color="#C81F11"/> + <stop offset=".99" stop-color="#BF0905"/> + <stop offset="1" stop-color="#BF0905"/> + </linearGradient> + <linearGradient id="paint7_linear" x1="4.471" y1="17.694" x2="6.529" y2="18.984" gradientUnits="userSpaceOnUse"> + <stop stop-color="#fff"/> + <stop offset=".31" stop-color="#DE4024"/> + <stop offset=".99" stop-color="#BF190B"/> + <stop offset="1" stop-color="#BF190B"/> + </linearGradient> + <linearGradient id="paint8_linear" x1="1.762" y1="22.704" x2="20.255" y2="3.635" gradientUnits="userSpaceOnUse"> + <stop stop-color="#BD0012"/> + <stop offset=".07" stop-color="#fff"/> + <stop offset=".17" stop-color="#fff"/> + <stop offset=".27" stop-color="#C82F1C"/> + <stop offset=".33" stop-color="#820C01"/> + <stop offset=".46" stop-color="#A31601"/> + <stop offset=".72" stop-color="#B31301"/> + <stop offset=".99" stop-color="#E82609"/> + <stop offset="1" stop-color="#E82609"/> + </linearGradient> + <linearGradient id="paint9_linear" x1="15.948" y1="24.625" x2="10.714" y2="22.427" gradientUnits="userSpaceOnUse"> + <stop stop-color="#8C0C01"/> + <stop offset=".54" stop-color="#990C00"/> + <stop offset=".99" stop-color="#A80D0E"/> + <stop offset="1" stop-color="#A80D0E"/> + </linearGradient> + <linearGradient id="paint10_linear" x1="25.529" y1="17.93" x2="20.138" y2="14.101" gradientUnits="userSpaceOnUse"> + <stop stop-color="#7E110B"/> + <stop offset=".99" stop-color="#9E0C00"/> + <stop offset="1" stop-color="#9E0C00"/> + </linearGradient> + <linearGradient id="paint11_linear" x1="27.349" y1="9.781" x2="24.814" y2="7.207" gradientUnits="userSpaceOnUse"> + <stop stop-color="#79130D"/> + <stop offset=".99" stop-color="#9E120B"/> + <stop offset="1" stop-color="#9E120B"/> + </linearGradient> + <linearGradient id="paint14_linear" x1="7.216" y1="27.797" x2="2.671" y2="24.024" gradientUnits="userSpaceOnUse"> + <stop stop-color="#8B2114"/> + <stop offset=".43" stop-color="#9E100A"/> + <stop offset=".99" stop-color="#B3100C"/> + <stop offset="1" stop-color="#B3100C"/> + </linearGradient> + <linearGradient id="paint15_linear" x1="22.648" y1="5.181" x2="23.939" y2="8.445" gradientUnits="userSpaceOnUse"> + <stop stop-color="#B31000"/> + <stop offset=".44" stop-color="#910F08"/> + <stop offset=".99" stop-color="#791C12"/> + <stop offset="1" stop-color="#791C12"/> + </linearGradient> + <radialGradient id="paint12_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(6.07279 0 0 3.17318 21.345 13.573)"> + <stop stop-color="#A80D00"/> + <stop offset=".99" stop-color="#7E0E08"/> + <stop offset="1" stop-color="#7E0E08"/> + </radialGradient> + <radialGradient id="paint13_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="matrix(8.07284 0 0 6.28431 12.935 21.576)"> + <stop stop-color="#A30C00"/> + <stop offset=".99" stop-color="#800E08"/> + <stop offset="1" stop-color="#800E08"/> + </radialGradient> + <clipPath id="clip0"> + <path fill="#fff" d="M4 4h24v23.904H4z"/> + </clipPath> + </defs> +</svg> diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/rumjs.svg b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/rumjs.svg new file mode 100644 index 00000000000000..87043159ed8c32 --- /dev/null +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/icons/rumjs.svg @@ -0,0 +1,3 @@ +<svg width="32" height="32" fill="none" xmlns="http://www.w3.org/2000/svg"> + <path d="M5 20.245l2.438-1.485c.47.84.898 1.55 1.924 1.55.984 0 1.604-.387 1.604-1.894V8.172h2.994V18.46c0 3.12-1.818 4.54-4.47 4.54-2.394 0-3.784-1.248-4.49-2.754zm10.586-.323l2.438-1.42c.642 1.055 1.476 1.83 2.95 1.83 1.241 0 2.032-.625 2.032-1.486 0-1.033-.812-1.398-2.18-2l-.75-.324c-2.159-.925-3.592-2.087-3.592-4.54 0-2.26 1.711-3.982 4.384-3.982 1.903 0 3.272.667 4.255 2.41l-2.33 1.507c-.514-.925-1.07-1.291-1.925-1.291-.877 0-1.433.56-1.433 1.29 0 .905.556 1.27 1.84 1.83l.748.323C24.567 15.167 26 16.286 26 18.803 26 21.515 23.883 23 21.039 23c-2.78 0-4.576-1.334-5.453-3.078" fill="#000"/> +</svg> diff --git a/x-pack/plugins/apm/common/__snapshots__/elasticsearch_fieldnames.test.ts.snap b/x-pack/plugins/apm/common/__snapshots__/elasticsearch_fieldnames.test.ts.snap index 8f87b3473b2e48..b4b4e7866e9b7d 100644 --- a/x-pack/plugins/apm/common/__snapshots__/elasticsearch_fieldnames.test.ts.snap +++ b/x-pack/plugins/apm/common/__snapshots__/elasticsearch_fieldnames.test.ts.snap @@ -66,6 +66,8 @@ exports[`Error SERVICE_AGENT_NAME 1`] = `"java"`; exports[`Error SERVICE_ENVIRONMENT 1`] = `undefined`; +exports[`Error SERVICE_FRAMEWORK_NAME 1`] = `undefined`; + exports[`Error SERVICE_NAME 1`] = `"service name"`; exports[`Error SERVICE_NODE_NAME 1`] = `undefined`; @@ -176,6 +178,8 @@ exports[`Span SERVICE_AGENT_NAME 1`] = `"java"`; exports[`Span SERVICE_ENVIRONMENT 1`] = `undefined`; +exports[`Span SERVICE_FRAMEWORK_NAME 1`] = `undefined`; + exports[`Span SERVICE_NAME 1`] = `"service name"`; exports[`Span SERVICE_NODE_NAME 1`] = `undefined`; @@ -286,6 +290,8 @@ exports[`Transaction SERVICE_AGENT_NAME 1`] = `"java"`; exports[`Transaction SERVICE_ENVIRONMENT 1`] = `undefined`; +exports[`Transaction SERVICE_FRAMEWORK_NAME 1`] = `undefined`; + exports[`Transaction SERVICE_NAME 1`] = `"service name"`; exports[`Transaction SERVICE_NODE_NAME 1`] = `undefined`; diff --git a/x-pack/plugins/apm/common/elasticsearch_fieldnames.ts b/x-pack/plugins/apm/common/elasticsearch_fieldnames.ts index ce2db4964a4120..14233aad0f53c2 100644 --- a/x-pack/plugins/apm/common/elasticsearch_fieldnames.ts +++ b/x-pack/plugins/apm/common/elasticsearch_fieldnames.ts @@ -7,6 +7,7 @@ export const SERVICE_NAME = 'service.name'; export const SERVICE_ENVIRONMENT = 'service.environment'; export const SERVICE_AGENT_NAME = 'agent.name'; +export const SERVICE_FRAMEWORK_NAME = 'service.framework.name'; export const SERVICE_NODE_NAME = 'service.node.name'; export const SERVICE_VERSION = 'service.version'; export const URL_FULL = 'url.full'; diff --git a/x-pack/plugins/apm/common/service_map.ts b/x-pack/plugins/apm/common/service_map.ts index 548b29346e4839..f4354baa97655d 100644 --- a/x-pack/plugins/apm/common/service_map.ts +++ b/x-pack/plugins/apm/common/service_map.ts @@ -10,6 +10,7 @@ import { ILicense } from '../../licensing/public'; export interface ServiceConnectionNode { 'service.name': string; 'service.environment': string | null; + 'service.framework.name': string | null; 'agent.name': string; } export interface ExternalConnectionNode { diff --git a/x-pack/plugins/apm/server/lib/service_map/get_service_map.ts b/x-pack/plugins/apm/server/lib/service_map/get_service_map.ts index 04e2a43a4b8f1d..85d71784b55c70 100644 --- a/x-pack/plugins/apm/server/lib/service_map/get_service_map.ts +++ b/x-pack/plugins/apm/server/lib/service_map/get_service_map.ts @@ -16,7 +16,8 @@ import { getServicesProjection } from '../../../common/projections/services'; import { mergeProjection } from '../../../common/projections/util/merge_projection'; import { SERVICE_AGENT_NAME, - SERVICE_NAME + SERVICE_NAME, + SERVICE_FRAMEWORK_NAME } from '../../../common/elasticsearch_fieldnames'; export interface IEnvOptions { @@ -92,6 +93,11 @@ async function getServicesData(options: IEnvOptions) { terms: { field: SERVICE_AGENT_NAME } + }, + service_framework_name: { + terms: { + field: SERVICE_FRAMEWORK_NAME + } } } } @@ -109,7 +115,11 @@ async function getServicesData(options: IEnvOptions) { 'service.name': bucket.key as string, 'agent.name': (bucket.agent_name.buckets[0]?.key as string | undefined) || '', - 'service.environment': options.environment || null + 'service.environment': options.environment || null, + 'service.framework.name': + (bucket.service_framework_name.buckets[0]?.key as + | string + | undefined) || null }; }) || [] ); diff --git a/x-pack/plugins/apm/server/lib/services/map.ts b/x-pack/plugins/apm/server/lib/services/map.ts deleted file mode 100644 index 97bb925674e26a..00000000000000 --- a/x-pack/plugins/apm/server/lib/services/map.ts +++ /dev/null @@ -1,88 +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 cytoscape from 'cytoscape'; -import { PromiseReturnType } from '../../../typings/common'; - -// This response right now just returns experimental data. -export type ServiceMapResponse = PromiseReturnType<typeof getServiceMap>; -export async function getServiceMap(): Promise<cytoscape.ElementDefinition[]> { - return [ - { data: { id: 'client', agentName: 'js-base' } }, - { data: { id: 'opbeans-node', agentName: 'nodejs' } }, - { data: { id: 'opbeans-python', agentName: 'python' } }, - { data: { id: 'opbeans-java', agentName: 'java' } }, - { data: { id: 'opbeans-ruby', agentName: 'ruby' } }, - { data: { id: 'opbeans-go', agentName: 'go' } }, - { data: { id: 'opbeans-go-2', agentName: 'go' } }, - { data: { id: 'opbeans-dotnet', agentName: 'dotnet' } }, - { data: { id: 'database', agentName: 'database' } }, - { data: { id: 'external API', agentName: 'external' } }, - - { - data: { - id: 'opbeans-client~opbeans-node', - source: 'client', - target: 'opbeans-node' - } - }, - { - data: { - id: 'opbeans-client~opbeans-python', - source: 'client', - target: 'opbeans-python' - } - }, - { - data: { - id: 'opbeans-python~opbeans-go', - source: 'opbeans-python', - target: 'opbeans-go' - } - }, - { - data: { - id: 'opbeans-python~opbeans-go-2', - source: 'opbeans-python', - target: 'opbeans-go-2' - } - }, - { - data: { - id: 'opbeans-python~opbeans-dotnet', - source: 'opbeans-python', - target: 'opbeans-dotnet' - } - }, - { - data: { - id: 'opbeans-node~opbeans-java', - source: 'opbeans-node', - target: 'opbeans-java' - } - }, - { - data: { - id: 'opbeans-node~database', - source: 'opbeans-node', - target: 'database' - } - }, - { - data: { - id: 'opbeans-go-2~opbeans-ruby', - source: 'opbeans-go-2', - target: 'opbeans-ruby' - } - }, - { - data: { - id: 'opbeans-go-2~external API', - source: 'opbeans-go-2', - target: 'external API' - } - } - ]; -} From ffab68d01bd4cf1abee7a8278329f30dada065c4 Mon Sep 17 00:00:00 2001 From: Davis Plumlee <56367316+dplumlee@users.noreply.github.com> Date: Mon, 2 Mar 2020 19:32:04 -0500 Subject: [PATCH 034/120] [Endpoint] Alert Details Overview (#58412) --- x-pack/plugins/endpoint/common/types.ts | 144 ++++++++++++++--- .../endpoint/store/alerts/action.ts | 9 +- .../store/alerts/alert_details.test.ts | 65 ++++++++ .../endpoint/store/alerts/middleware.ts | 11 +- .../store/alerts/mock_alert_result_list.ts | 153 ++++++++++++++++-- .../endpoint/store/alerts/reducer.ts | 6 + .../endpoint/store/alerts/selectors.ts | 25 ++- .../public/applications/endpoint/types.ts | 11 +- .../endpoint/view/alerts/details/index.ts | 7 + .../details/metadata/file_accordion.tsx | 80 +++++++++ .../details/metadata/general_accordion.tsx | 68 ++++++++ .../details/metadata/hash_accordion.tsx | 49 ++++++ .../details/metadata/host_accordion.tsx | 55 +++++++ .../view/alerts/details/metadata/index.ts | 12 ++ .../metadata/source_process_accordion.tsx | 97 +++++++++++ .../source_process_token_accordion.tsx | 45 ++++++ .../view/alerts/details/overview/index.tsx | 94 +++++++++++ .../details/overview/metadata_panel.tsx | 40 +++++ .../endpoint/view/alerts/formatted_date.tsx | 22 +++ .../endpoint/view/alerts/index.test.tsx | 3 - .../endpoint/view/alerts/index.tsx | 97 ++++++----- .../endpoint/view/alerts/resolver.tsx | 1 + 22 files changed, 986 insertions(+), 108 deletions(-) create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/alert_details.test.ts create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/index.ts create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/file_accordion.tsx create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/general_accordion.tsx create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/hash_accordion.tsx create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/host_accordion.tsx create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/index.ts create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/source_process_accordion.tsx create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/source_process_token_accordion.tsx create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/overview/index.tsx create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/overview/metadata_panel.tsx create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/formatted_date.tsx diff --git a/x-pack/plugins/endpoint/common/types.ts b/x-pack/plugins/endpoint/common/types.ts index 6d904fda6f7478..d804350a9002d4 100644 --- a/x-pack/plugins/endpoint/common/types.ts +++ b/x-pack/plugins/endpoint/common/types.ts @@ -96,6 +96,59 @@ export interface EndpointResultList { request_page_index: number; } +export interface OSFields { + full: string; + name: string; + version: string; + variant: string; +} +export interface HostFields { + id: string; + hostname: string; + ip: string[]; + mac: string[]; + os: OSFields; +} +export interface HashFields { + md5: string; + sha1: string; + sha256: string; +} +export interface MalwareClassifierFields { + identifier: string; + score: number; + threshold: number; + version: string; +} +export interface PrivilegesFields { + description: string; + name: string; + enabled: boolean; +} +export interface ThreadFields { + id: number; + service_name: string; + start: number; + start_address: number; + start_address_module: string; +} +export interface DllFields { + pe: { + architecture: string; + imphash: string; + }; + code_signature: { + subject_name: string; + trusted: boolean; + }; + compile_time: number; + hash: HashFields; + malware_classifier: MalwareClassifierFields; + mapped_address: number; + mapped_size: number; + path: string; +} + /** * Describes an Alert Event. * Should be in line with ECS schema. @@ -109,26 +162,78 @@ export type AlertEvent = Immutable<{ event: { id: string; action: string; + category: string; + kind: string; + dataset: string; + module: string; + type: string; }; - file_classification: { - malware_classification: { - score: number; + process: { + code_signature: { + subject_name: string; + trusted: boolean; }; - }; - process?: { - unique_pid: number; + command_line: string; + domain: string; pid: number; + ppid: number; + entity_id: string; + parent: { + pid: number; + entity_id: string; + }; + name: string; + hash: HashFields; + pe: { + imphash: string; + }; + executable: string; + sid: string; + start: number; + malware_classifier: MalwareClassifierFields; + token: { + domain: string; + type: string; + user: string; + sid: string; + integrity_level: number; + integrity_level_name: string; + privileges: PrivilegesFields[]; + }; + thread: ThreadFields[]; + uptime: number; + user: string; }; - host: { - hostname: string; - ip: string; - os: { - name: string; + file: { + owner: string; + name: string; + path: string; + accessed: number; + mtime: number; + created: number; + size: number; + hash: HashFields; + pe: { + imphash: string; + }; + code_signature: { + trusted: boolean; + subject_name: string; }; + malware_classifier: { + features: { + data: { + buffer: string; + decompressed_size: number; + encoding: string; + }; + }; + } & MalwareClassifierFields; + temp_file_path: string; }; + host: HostFields; thread: {}; - endpoint?: {}; - endgame?: {}; + dll: DllFields[]; }>; /** @@ -161,18 +266,7 @@ export interface EndpointMetadata { id: string; name: string; }; - host: { - id: string; - hostname: string; - ip: string[]; - mac: string[]; - os: { - name: string; - full: string; - version: string; - variant: string; - }; - }; + host: HostFields; } /** diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/action.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/action.ts index a628a95003a7fe..6c6310a7349ed2 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/action.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/action.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { Immutable } from '../../../../../common/types'; +import { Immutable, AlertData } from '../../../../../common/types'; import { AlertListData } from '../../types'; interface ServerReturnedAlertsData { @@ -12,4 +12,9 @@ interface ServerReturnedAlertsData { readonly payload: Immutable<AlertListData>; } -export type AlertAction = ServerReturnedAlertsData; +interface ServerReturnedAlertDetailsData { + readonly type: 'serverReturnedAlertDetailsData'; + readonly payload: Immutable<AlertData>; +} + +export type AlertAction = ServerReturnedAlertsData | ServerReturnedAlertDetailsData; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/alert_details.test.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/alert_details.test.ts new file mode 100644 index 00000000000000..4edc31831eb14a --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/alert_details.test.ts @@ -0,0 +1,65 @@ +/* + * 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 { Store, createStore, applyMiddleware } from 'redux'; +import { History } from 'history'; +import { alertListReducer } from './reducer'; +import { AlertListState } from '../../types'; +import { alertMiddlewareFactory } from './middleware'; +import { AppAction } from '../action'; +import { coreMock } from 'src/core/public/mocks'; +import { createBrowserHistory } from 'history'; + +describe('alert details tests', () => { + let store: Store<AlertListState, AppAction>; + let coreStart: ReturnType<typeof coreMock.createStart>; + let history: History<never>; + /** + * A function that waits until a selector returns true. + */ + let selectorIsTrue: (selector: (state: AlertListState) => boolean) => Promise<void>; + beforeEach(() => { + coreStart = coreMock.createStart(); + history = createBrowserHistory(); + const middleware = alertMiddlewareFactory(coreStart); + store = createStore(alertListReducer, applyMiddleware(middleware)); + + selectorIsTrue = async selector => { + // If the selector returns true, we're done + while (selector(store.getState()) !== true) { + // otherwise, wait til the next state change occurs + await new Promise(resolve => { + const unsubscribe = store.subscribe(() => { + unsubscribe(); + resolve(); + }); + }); + } + }; + }); + describe('when the user is on the alert list page with a selected alert in the url', () => { + beforeEach(() => { + const firstResponse: Promise<unknown> = Promise.resolve(1); + const secondResponse: Promise<unknown> = Promise.resolve(2); + coreStart.http.get.mockReturnValueOnce(firstResponse).mockReturnValueOnce(secondResponse); + + // Simulates user navigating to the /alerts page + store.dispatch({ + type: 'userChangedUrl', + payload: { + ...history.location, + pathname: '/alerts', + search: '?selected_alert=q9ncfh4q9ctrmc90umcq4', + }, + }); + }); + + it('should return alert details data', async () => { + // wait for alertDetails to be defined + await selectorIsTrue(state => state.alertDetails !== undefined); + }); + }); +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/middleware.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/middleware.ts index 76a6867418bd86..2cb381e901b4ed 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/middleware.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/middleware.ts @@ -4,10 +4,10 @@ * you may not use this file except in compliance with the Elastic License. */ -import { AlertResultList } from '../../../../../common/types'; +import { AlertResultList, AlertData } from '../../../../../common/types'; import { AppAction } from '../action'; import { MiddlewareFactory, AlertListState } from '../../types'; -import { isOnAlertPage, apiQueryParams } from './selectors'; +import { isOnAlertPage, apiQueryParams, hasSelectedAlert, uiQueryParams } from './selectors'; export const alertMiddlewareFactory: MiddlewareFactory<AlertListState> = coreStart => { return api => next => async (action: AppAction) => { @@ -19,5 +19,12 @@ export const alertMiddlewareFactory: MiddlewareFactory<AlertListState> = coreSta }); api.dispatch({ type: 'serverReturnedAlertsData', payload: response }); } + if (action.type === 'userChangedUrl' && isOnAlertPage(state) && hasSelectedAlert(state)) { + const uiParams = uiQueryParams(state); + const response: AlertData = await coreStart.http.get( + `/api/endpoint/alerts/${uiParams.selected_alert}` + ); + api.dispatch({ type: 'serverReturnedAlertDetailsData', payload: response }); + } }; }; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/mock_alert_result_list.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/mock_alert_result_list.ts index 8eadb3e7fb3dfd..7db94fc9d4266f 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/mock_alert_result_list.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/mock_alert_result_list.ts @@ -32,29 +32,152 @@ export const mockAlertResultList: (options?: { id: 'ced9c68e-b94a-4d66-bb4c-6106514f0a2f', version: '3.0.0', }, - event: { - id: '2f1c0928-3876-4e11-acbb-9199257c7b1c', - action: 'open', - }, - file_classification: { - malware_classification: { - score: 3, - }, - }, - process: { - pid: 107, - unique_pid: 1, - }, host: { + id: 'xrctvybuni', hostname: 'HD-c15-bc09190a', - ip: '10.179.244.14', + ip: ['10.179.244.14'], + mac: ['xsertcyvbunimkn56edtyf'], os: { - name: 'Windows', + full: 'Windows 10', + name: 'windows', + version: '10', + variant: '3', }, }, thread: {}, prev: null, next: null, + event: { + id: '2f1c0928-3876-4e11-acbb-9199257c7b1c', + action: 'creation', + category: 'malware', + dataset: 'endpoint', + kind: 'alert', + module: 'endpoint', + type: 'creation', + }, + file: { + accessed: 1542789400, + created: 1542789400, + hash: { + md5: '4ace3baaa509d08510405e1b169e325b', + sha1: '27fb21cf5db95ffca43b234affa99becc4023b9d', + sha256: '6ed1c836dbf099be7845bdab7671def2c157643761b52251e04e9b6ee109ec75', + }, + pe: { + imphash: '835d619dfdf3cc727cebd91300ab3462', + }, + mtime: 1542789400, + owner: 'Administrators', + name: 'test name', + path: 'C:\\Windows\\TEMP\\tmp0000008f\\tmp00001be5', + size: 188416, + code_signature: { + subject_name: 'Cybereason Inc', + trusted: false, + }, + malware_classifier: { + features: { + data: { + buffer: + 'eAHtnU1oHHUUwHsQ7MGDiIIUD4sH8WBBxJtopiLoUY0pYo2ZTbJJ0yQ17m4+ms/NRzeVWpuUWCL4sWlEYvFQ8KJQ6NCTEA8eRD30sIo3PdSriLi7837Pko3LbHZ2M5m+XObHm/d/X////83O7jCZvzacHBpPplNdfalkdjSdyty674Ft59dN71Dpb9v5eKh8LMEHjsCF2wIfVlRKsHROYPGkQO5+gY2vBSYYdWZFYGwEO/cITHMqkxPYnBBY+07gtCuQ9gSGigJ5lPPYGXcE+jA4z3Ad1ZtAUiDUyrEEPYzqRnIKgxd/Rgc7gygPo5wn95PouN7OeEYJ1UXiJgRmvscgp/LOziIkkSyT+xRVnXhZ4DKh5goCkzidRHkGO4uvCyw9LDDtCay8ILCAzrJOJaGuZwUuvSewivJVIPsklq8JbL4qMJsTSCcExrGs83WKU295ZFo5lr2TaZbcUw5FeJy8tgTeLpCy2iGeS67ABXzlgbEi1UC5FxcZnA4y/CLK82Qxi847FGGZRTLsCUxR1aWEwOp1AmOjDRYYzgwusL9WfqBiGJxnVAanixTq7Dp22LBdlWMJzlOx8wmBK2Rx5WmBLJIRwtAijOQE+ooCb2B5xBOYRtlfNeXpLpA7oyZRTqHzGenkmIJPnhBIMrzTwSA6H93CO5l+c1NA99f6IwLH8fUKdjTmDpTbgS50+gGVnECnE4PpooC2guPoaPADSHrcncNHmEHtAFkq3+EI+A37zsrrTvH3WTkvJLoOTyBp10wx2JcgVCRahA4NrICE4a+hrMXsA3qAHItW188E8ejO7XV3eh/KCYwxlamEwCgL8lN2wTntfrhY/U0g/5KAdvUpT+AszWqBdqH7VLeeZrExK9Cv1UgIDKA8g/cx7QAEP+AhAfRaMKB2HOJh+BSFSqKjSytNGBlc6PrpxvK7lCVDxbSG3Z7AhCMwx6gelwgLAltXBXJUTH29j+U1LHdipx/QprfKfGnF0sBpdBYxmEQyTzW0h6/0khcuhhJYRufym+i4VKMocJMs/KvfoW3/UJb4PeZOSZVONThZz4djP/75TAXa/CVfOvX3RgVLIDreLPN1pP1osW7lGmHsEhjBOzf+EPBE4vndvWz5xb/cChxGcv1LAb+tluALKnZ47isf1MXvz1ZMlsCXbXtPceqhrcp1ps6YHwQeBXLEPCf7q23tl9uJui0bGBgYRAccv7uXr/g5Af+2oNTrpgTa/vnpjBvpLAwM4gRBPvIZGBgYGBgYGBgYGBgYGBgYGBgYGBgYNAOc9oMXs4GBgYFBcNBnww5QzDXgRtPSaZ5lg/itsRaslgZ3bnWEEVnhMetIBwiiVnlbCbWrEftrt11zdwWnseFW1QO63w1is3ptD1pV9xG0t+zvfUrzrvh380qwXWAVCw6h78GIfG7ZlzltXu6hd+y92fECRFhjuH3bXG8N43oXEHperdzvUbteaDxhVTUeq25fqhG1X6Ai8mtF6BDXz2wR+dzSgg4Qsxls5T11XMG+82y8GkG+b7kL69xg7mF1SFvhBgYGsYH/Xi7HE+PVkiB2jt1bNZxT+k4558jR53ydz5//1m1KOgYGBgYGBgYGEQfnsYaG2z1sdPJS79XQSu91ndobOAHCaN5vNzUk1bceQVzUpbw3iOuT+UFmR18bHrp3gyhDC56lCd1y85w2+HSNUwVhhdGC7blLf+bV/fqtvhMg1NDjCcugB1QXswbs8ekj/v1BgzFHBIIsyP+HfwFdMpzu', + decompressed_size: 27831, + encoding: 'zlib', + }, + }, + identifier: 'endpointpe', + score: 1, + threshold: 0.66, + version: '3.0.33', + }, + temp_file_path: 'C:\\Windows\\TEMP\\1bb9abfc-ca14-47b2-9f2c-10c323df42f9', + }, + process: { + pid: 1076, + ppid: 432, + entity_id: 'wertqwer', + parent: { + pid: 432, + entity_id: 'adsfsdaf', + }, + name: 'test name', + code_signature: { + subject_name: 'Cybereason Inc', + trusted: true, + }, + command_line: '"C:\\Program Files\\Cybereason ActiveProbe\\AmSvc.exe"', + domain: 'NT AUTHORITY', + executable: 'C:\\Program Files\\Cybereason ActiveProbe\\AmSvc.exe', + hash: { + md5: '1f2d082566b0fc5f2c238a5180db7451', + sha1: 'ca85243c0af6a6471bdaa560685c51eefd6dbc0d', + sha256: '8ad40c90a611d36eb8f9eb24fa04f7dbca713db383ff55a03aa0f382e92061a2', + }, + pe: { + imphash: 'c30d230b81c734e82e86e2e2fe01cd01', + }, + malware_classifier: { + identifier: 'Whitelisted', + score: 0, + threshold: 0, + version: '3.0.0', + }, + thread: [ + { + id: 1652, + service_name: 'CybereasonAntiMalware', + start: 1542788400, + start_address: 8791698721056, + start_address_module: 'C:\\Program Files\\Cybereason ActiveProbe\\gzfltum.dll', + }, + ], + sid: 'S-1-5-18', + start: 1542788400, + token: { + domain: 'NT AUTHORITY', + integrity_level: 16384, + integrity_level_name: 'system', + privileges: [ + { + description: 'Replace a process level token', + enabled: false, + name: 'SeAssignPrimaryTokenPrivilege', + }, + ], + sid: 'S-1-5-18', + type: 'tokenPrimary', + user: 'SYSTEM', + }, + uptime: 1025, + user: 'SYSTEM', + }, + dll: [ + { + pe: { + architecture: 'x64', + imphash: 'c30d230b81c734e82e86e2e2fe01cd01', + }, + code_signature: { + subject_name: 'Cybereason Inc', + trusted: true, + }, + compile_time: 1534424710, + hash: { + md5: '1f2d082566b0fc5f2c238a5180db7451', + sha1: 'ca85243c0af6a6471bdaa560685c51eefd6dbc0d', + sha256: '8ad40c90a611d36eb8f9eb24fa04f7dbca713db383ff55a03aa0f382e92061a2', + }, + malware_classifier: { + identifier: 'Whitelisted', + score: 0, + threshold: 0, + version: '3.0.0', + }, + mapped_address: 5362483200, + mapped_size: 0, + path: 'C:\\Program Files\\Cybereason ActiveProbe\\AmSvc.exe', + }, + ], }); } const mock: AlertResultList = { diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/reducer.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/reducer.ts index 77d7397d725819..ee172fa80f1fed 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/reducer.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/reducer.ts @@ -11,6 +11,7 @@ import { AppAction } from '../action'; const initialState = (): AlertListState => { return { alerts: [], + alertDetails: undefined, pageSize: 10, pageIndex: 0, total: 0, @@ -43,6 +44,11 @@ export const alertListReducer: Reducer<AlertListState, AppAction> = ( ...state, location: action.payload, }; + } else if (action.type === 'serverReturnedAlertDetailsData') { + return { + ...state, + alertDetails: action.payload, + }; } return state; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/selectors.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/selectors.ts index f217e3cda91913..7ce7c2d08691ee 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/selectors.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/alerts/selectors.ts @@ -15,7 +15,7 @@ import { AlertsAPIQueryParams, CreateStructuredSelector, } from '../../types'; -import { Immutable, LegacyEndpointEvent } from '../../../../../common/types'; +import { Immutable } from '../../../../../common/types'; const createStructuredSelector: CreateStructuredSelector = createStructuredSelectorWithBadType; /** @@ -23,6 +23,8 @@ const createStructuredSelector: CreateStructuredSelector = createStructuredSelec */ export const alertListData = (state: AlertListState) => state.alerts; +export const selectedAlertDetailsData = (state: AlertListState) => state.alertDetails; + /** * Returns the alert list pagination data from state */ @@ -96,20 +98,11 @@ export const hasSelectedAlert: (state: AlertListState) => boolean = createSelect /** * Determine if the alert event is most likely compatible with LegacyEndpointEvent. */ -function isAlertEventLegacyEndpointEvent(event: { endgame?: {} }): event is LegacyEndpointEvent { - return event.endgame !== undefined && 'unique_pid' in event.endgame; -} - -export const selectedEvent: ( +export const selectedAlertIsLegacyEndpointEvent: ( state: AlertListState -) => LegacyEndpointEvent | undefined = createSelector( - uiQueryParams, - alertListData, - ({ selected_alert: selectedAlert }, alertList) => { - const found = alertList.find(alert => alert.event.id === selectedAlert); - if (!found) { - return found; - } - return isAlertEventLegacyEndpointEvent(found) ? found : undefined; +) => boolean = createSelector(selectedAlertDetailsData, function(event) { + if (event === undefined) { + return false; } -); + return 'endgame' in event; +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/types.ts b/x-pack/plugins/endpoint/public/applications/endpoint/types.ts index 6498462a8fc060..b46785d3190e58 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/types.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/types.ts @@ -93,19 +93,22 @@ export type AlertListData = AlertResultList; export interface AlertListState { /** Array of alert items. */ - alerts: ImmutableArray<AlertData>; + readonly alerts: ImmutableArray<AlertData>; /** The total number of alerts on the page. */ - total: number; + readonly total: number; /** Number of alerts per page. */ - pageSize: number; + readonly pageSize: number; /** Page number, starting at 0. */ - pageIndex: number; + readonly pageIndex: number; /** Current location object from React Router history. */ readonly location?: Immutable<EndpointAppLocation>; + + /** Specific Alert data to be shown in the details view */ + readonly alertDetails?: Immutable<AlertData>; } /** diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/index.ts b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/index.ts new file mode 100644 index 00000000000000..1c783094747379 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/index.ts @@ -0,0 +1,7 @@ +/* + * 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 { AlertDetailsOverview } from './overview'; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/file_accordion.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/file_accordion.tsx new file mode 100644 index 00000000000000..ac67e54f38779d --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/file_accordion.tsx @@ -0,0 +1,80 @@ +/* + * 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, useMemo } from 'react'; +import { i18n } from '@kbn/i18n'; +import { EuiAccordion, EuiDescriptionList } from '@elastic/eui'; +import { Immutable, AlertData } from '../../../../../../../common/types'; +import { FormattedDate } from '../../formatted_date'; + +export const FileAccordion = memo(({ alertData }: { alertData: Immutable<AlertData> }) => { + const columns = useMemo(() => { + return [ + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.fileName', { + defaultMessage: 'File Name', + }), + description: alertData.file.name, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.filePath', { + defaultMessage: 'File Path', + }), + description: alertData.file.path, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.fileSize', { + defaultMessage: 'File Size', + }), + description: alertData.file.size, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.fileCreated', { + defaultMessage: 'File Created', + }), + description: <FormattedDate timestamp={alertData.file.created} />, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.fileModified', { + defaultMessage: 'File Modified', + }), + description: <FormattedDate timestamp={alertData.file.mtime} />, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.fileAccessed', { + defaultMessage: 'File Accessed', + }), + description: <FormattedDate timestamp={alertData.file.accessed} />, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.signer', { + defaultMessage: 'Signer', + }), + description: alertData.file.code_signature.subject_name, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.owner', { + defaultMessage: 'Owner', + }), + description: alertData.file.owner, + }, + ]; + }, [alertData]); + + return ( + <EuiAccordion + id="alertDetailsFileAccordion" + buttonContent={i18n.translate( + 'xpack.endpoint.application.endpoint.alertDetails.accordionTitles.file', + { + defaultMessage: 'File', + } + )} + paddingSize="l" + > + <EuiDescriptionList type="column" listItems={columns} /> + </EuiAccordion> + ); +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/general_accordion.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/general_accordion.tsx new file mode 100644 index 00000000000000..070c78c9685852 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/general_accordion.tsx @@ -0,0 +1,68 @@ +/* + * 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, useMemo } from 'react'; +import { i18n } from '@kbn/i18n'; +import { EuiAccordion, EuiDescriptionList } from '@elastic/eui'; +import { Immutable, AlertData } from '../../../../../../../common/types'; +import { FormattedDate } from '../../formatted_date'; + +export const GeneralAccordion = memo(({ alertData }: { alertData: Immutable<AlertData> }) => { + const columns = useMemo(() => { + return [ + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.alertType', { + defaultMessage: 'Alert Type', + }), + description: alertData.event.category, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.eventType', { + defaultMessage: 'Event Type', + }), + description: alertData.event.kind, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.status', { + defaultMessage: 'Status', + }), + description: 'TODO', + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.dateCreated', { + defaultMessage: 'Date Created', + }), + description: <FormattedDate timestamp={alertData['@timestamp']} />, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.malwareScore', { + defaultMessage: 'MalwareScore', + }), + description: alertData.file.malware_classifier.score, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.fileName', { + defaultMessage: 'File Name', + }), + description: alertData.file.name, + }, + ]; + }, [alertData]); + return ( + <EuiAccordion + id="alertDetailsAlertAccordion" + buttonContent={i18n.translate( + 'xpack.endpoint.application.endpoint.alertDetails.accordionTitles.alert', + { + defaultMessage: 'Alert', + } + )} + paddingSize="l" + initialIsOpen={true} + > + <EuiDescriptionList type="column" listItems={columns} /> + </EuiAccordion> + ); +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/hash_accordion.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/hash_accordion.tsx new file mode 100644 index 00000000000000..b2be083ce8f59d --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/hash_accordion.tsx @@ -0,0 +1,49 @@ +/* + * 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, useMemo } from 'react'; +import { i18n } from '@kbn/i18n'; +import { EuiAccordion, EuiDescriptionList } from '@elastic/eui'; +import { Immutable, AlertData } from '../../../../../../../common/types'; + +export const HashAccordion = memo(({ alertData }: { alertData: Immutable<AlertData> }) => { + const columns = useMemo(() => { + return [ + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.md5', { + defaultMessage: 'MD5', + }), + description: alertData.file.hash.md5, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.sha1', { + defaultMessage: 'SHA1', + }), + description: alertData.file.hash.sha1, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.sha256', { + defaultMessage: 'SHA256', + }), + description: alertData.file.hash.sha256, + }, + ]; + }, [alertData]); + + return ( + <EuiAccordion + id="alertDetailsHashAccordion" + buttonContent={i18n.translate( + 'xpack.endpoint.application.endpoint.alertDetails.accordionTitles.hash', + { + defaultMessage: 'Hash', + } + )} + paddingSize="l" + > + <EuiDescriptionList type="column" listItems={columns} /> + </EuiAccordion> + ); +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/host_accordion.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/host_accordion.tsx new file mode 100644 index 00000000000000..4108781f0a79b0 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/host_accordion.tsx @@ -0,0 +1,55 @@ +/* + * 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, useMemo } from 'react'; +import { i18n } from '@kbn/i18n'; +import { EuiAccordion, EuiDescriptionList } from '@elastic/eui'; +import { Immutable, AlertData } from '../../../../../../../common/types'; + +export const HostAccordion = memo(({ alertData }: { alertData: Immutable<AlertData> }) => { + const columns = useMemo(() => { + return [ + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.hostName', { + defaultMessage: 'Host Name', + }), + description: alertData.host.hostname, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.hostIP', { + defaultMessage: 'Host IP', + }), + description: alertData.host.ip.join(', '), + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.status', { + defaultMessage: 'Status', + }), + description: 'TODO', + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.os', { + defaultMessage: 'OS', + }), + description: alertData.host.os.name, + }, + ]; + }, [alertData]); + + return ( + <EuiAccordion + id="alertDetailsHostAccordion" + buttonContent={i18n.translate( + 'xpack.endpoint.application.endpoint.alertDetails.accordionTitles.host', + { + defaultMessage: 'Host', + } + )} + paddingSize="l" + > + <EuiDescriptionList type="column" listItems={columns} /> + </EuiAccordion> + ); +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/index.ts b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/index.ts new file mode 100644 index 00000000000000..1eb755242d701f --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/index.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. + */ + +export { GeneralAccordion } from './general_accordion'; +export { HostAccordion } from './host_accordion'; +export { HashAccordion } from './hash_accordion'; +export { FileAccordion } from './file_accordion'; +export { SourceProcessAccordion } from './source_process_accordion'; +export { SourceProcessTokenAccordion } from './source_process_token_accordion'; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/source_process_accordion.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/source_process_accordion.tsx new file mode 100644 index 00000000000000..4c961ad4b49640 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/source_process_accordion.tsx @@ -0,0 +1,97 @@ +/* + * 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, useMemo } from 'react'; +import { i18n } from '@kbn/i18n'; +import { EuiAccordion, EuiDescriptionList } from '@elastic/eui'; +import { Immutable, AlertData } from '../../../../../../../common/types'; + +export const SourceProcessAccordion = memo(({ alertData }: { alertData: Immutable<AlertData> }) => { + const columns = useMemo(() => { + return [ + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.processID', { + defaultMessage: 'Process ID', + }), + description: alertData.process.pid, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.processName', { + defaultMessage: 'Process Name', + }), + description: alertData.process.name, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.processPath', { + defaultMessage: 'Process Path', + }), + description: alertData.process.executable, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.md5', { + defaultMessage: 'MD5', + }), + description: alertData.process.hash.md5, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.sha1', { + defaultMessage: 'SHA1', + }), + description: alertData.process.hash.sha1, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.sha256', { + defaultMessage: 'SHA256', + }), + description: alertData.process.hash.sha256, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.malwareScore', { + defaultMessage: 'MalwareScore', + }), + description: alertData.process.malware_classifier.score, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.parentProcessID', { + defaultMessage: 'Parent Process ID', + }), + description: alertData.process.parent.pid, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.signer', { + defaultMessage: 'Signer', + }), + description: alertData.process.code_signature.subject_name, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.username', { + defaultMessage: 'Username', + }), + description: alertData.process.token.user, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.domain', { + defaultMessage: 'Domain', + }), + description: alertData.process.token.domain, + }, + ]; + }, [alertData]); + + return ( + <EuiAccordion + id="alertDetailsSourceProcessAccordion" + buttonContent={i18n.translate( + 'xpack.endpoint.application.endpoint.alertDetails.accordionTitles.sourceProcess', + { + defaultMessage: 'Source Process', + } + )} + paddingSize="l" + > + <EuiDescriptionList type="column" listItems={columns} /> + </EuiAccordion> + ); +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/source_process_token_accordion.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/source_process_token_accordion.tsx new file mode 100644 index 00000000000000..7d75d4478afb32 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/metadata/source_process_token_accordion.tsx @@ -0,0 +1,45 @@ +/* + * 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, useMemo } from 'react'; +import { i18n } from '@kbn/i18n'; +import { EuiAccordion, EuiDescriptionList } from '@elastic/eui'; +import { Immutable, AlertData } from '../../../../../../../common/types'; + +export const SourceProcessTokenAccordion = memo( + ({ alertData }: { alertData: Immutable<AlertData> }) => { + const columns = useMemo(() => { + return [ + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.sid', { + defaultMessage: 'SID', + }), + description: alertData.process.token.sid, + }, + { + title: i18n.translate('xpack.endpoint.application.endpoint.alertDetails.integrityLevel', { + defaultMessage: 'Integrity Level', + }), + description: alertData.process.token.integrity_level, + }, + ]; + }, [alertData]); + + return ( + <EuiAccordion + id="alertDetailsSourceProcessTokenAccordion" + buttonContent={i18n.translate( + 'xpack.endpoint.application.endpoint.alertDetails.accordionTitles.sourceProcessToken', + { + defaultMessage: 'Source Process Token', + } + )} + paddingSize="l" + > + <EuiDescriptionList type="column" listItems={columns} /> + </EuiAccordion> + ); + } +); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/overview/index.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/overview/index.tsx new file mode 100644 index 00000000000000..080c70ca43bae9 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/overview/index.tsx @@ -0,0 +1,94 @@ +/* + * 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, useMemo } from 'react'; +import { i18n } from '@kbn/i18n'; +import { FormattedMessage } from '@kbn/i18n/react'; +import { EuiSpacer, EuiTitle, EuiText, EuiHealth, EuiTabbedContent } from '@elastic/eui'; +import { useAlertListSelector } from '../../hooks/use_alerts_selector'; +import * as selectors from '../../../../store/alerts/selectors'; +import { MetadataPanel } from './metadata_panel'; +import { FormattedDate } from '../../formatted_date'; +import { AlertDetailResolver } from '../../resolver'; + +export const AlertDetailsOverview = memo(() => { + const alertDetailsData = useAlertListSelector(selectors.selectedAlertDetailsData); + if (alertDetailsData === undefined) { + return null; + } + const selectedAlertIsLegacyEndpointEvent = useAlertListSelector( + selectors.selectedAlertIsLegacyEndpointEvent + ); + + const tabs = useMemo(() => { + return [ + { + id: 'overviewMetadata', + name: i18n.translate( + 'xpack.endpoint.application.endpoint.alertDetails.overview.tabs.overview', + { + defaultMessage: 'Overview', + } + ), + content: ( + <> + <EuiSpacer /> + <MetadataPanel /> + </> + ), + }, + { + id: 'overviewResolver', + name: i18n.translate( + 'xpack.endpoint.application.endpoint.alertDetails.overview.tabs.resolver', + { + defaultMessage: 'Resolver', + } + ), + content: ( + <> + <EuiSpacer /> + {selectedAlertIsLegacyEndpointEvent && <AlertDetailResolver />} + </> + ), + }, + ]; + }, [selectedAlertIsLegacyEndpointEvent]); + + return ( + <> + <section className="details-overview-summary"> + <EuiTitle size="s"> + <h3> + <FormattedMessage + id="xpack.endpoint.application.endpoint.alertDetails.overview.title" + defaultMessage="Detected Malicious File" + /> + </h3> + </EuiTitle> + <EuiSpacer /> + <EuiText> + <p> + <FormattedMessage + id="xpack.endpoint.application.endpoint.alertDetails.overview.summary" + defaultMessage="MalwareScore detected the opening of a document on {hostname} on {date}" + values={{ + hostname: alertDetailsData.host.hostname, + date: <FormattedDate timestamp={alertDetailsData['@timestamp']} />, + }} + /> + </p> + </EuiText> + <EuiSpacer /> + <EuiText> + Endpoint Status: <EuiHealth color="success">Online</EuiHealth> + </EuiText> + <EuiText>Alert Status: Open</EuiText> + <EuiSpacer /> + </section> + <EuiTabbedContent tabs={tabs} initialSelectedTab={tabs[0]} /> + </> + ); +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/overview/metadata_panel.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/overview/metadata_panel.tsx new file mode 100644 index 00000000000000..556d7bea2e3100 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/details/overview/metadata_panel.tsx @@ -0,0 +1,40 @@ +/* + * 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 } from 'react'; +import { EuiSpacer } from '@elastic/eui'; +import { useAlertListSelector } from '../../hooks/use_alerts_selector'; +import * as selectors from '../../../../store/alerts/selectors'; +import { + GeneralAccordion, + HostAccordion, + HashAccordion, + FileAccordion, + SourceProcessAccordion, + SourceProcessTokenAccordion, +} from '../metadata'; + +export const MetadataPanel = memo(() => { + const alertDetailsData = useAlertListSelector(selectors.selectedAlertDetailsData); + if (alertDetailsData === undefined) { + return null; + } + return ( + <section className="overview-metadata-panel"> + <GeneralAccordion alertData={alertDetailsData} /> + <EuiSpacer /> + <HostAccordion alertData={alertDetailsData} /> + <EuiSpacer /> + <HashAccordion alertData={alertDetailsData} /> + <EuiSpacer /> + <FileAccordion alertData={alertDetailsData} /> + <EuiSpacer /> + <SourceProcessAccordion alertData={alertDetailsData} /> + <EuiSpacer /> + <SourceProcessTokenAccordion alertData={alertDetailsData} /> + </section> + ); +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/formatted_date.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/formatted_date.tsx new file mode 100644 index 00000000000000..731bd31b26cefb --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/formatted_date.tsx @@ -0,0 +1,22 @@ +/* + * 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 } from 'react'; +import { FormattedDate as ReactIntlFormattedDate } from '@kbn/i18n/react'; + +export const FormattedDate = memo(({ timestamp }: { timestamp: number }) => { + const date = new Date(timestamp); + return ( + <ReactIntlFormattedDate + value={date} + year="numeric" + month="2-digit" + day="2-digit" + hour="2-digit" + minute="2-digit" + second="2-digit" + /> + ); +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.test.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.test.tsx index fe362f21a178ea..aae44824c3164c 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.test.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.test.tsx @@ -140,9 +140,6 @@ describe('when on the alerting page', () => { it('should show the flyout', async () => { await render().findByTestId('alertDetailFlyout'); }); - it('should render resolver', async () => { - await render().findByTestId('alertResolver'); - }); describe('when the user clicks the close button on the flyout', () => { let renderResult: reactTestingLibrary.RenderResult; beforeEach(async () => { diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.tsx index 3c229484ede4e0..5d405f8c6fbae7 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/index.tsx @@ -17,15 +17,21 @@ import { EuiFlyoutBody, EuiTitle, EuiBadge, + EuiLoadingSpinner, + EuiPageContentHeader, + EuiPageContentHeaderSection, + EuiPageContentBody, + EuiLink, } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -import { useHistory, Link } from 'react-router-dom'; -import { FormattedDate } from 'react-intl'; +import { useHistory } from 'react-router-dom'; +import { FormattedMessage } from '@kbn/i18n/react'; import { urlFromQueryParams } from './url_from_query_params'; import { AlertData } from '../../../../../common/types'; import * as selectors from '../../store/alerts/selectors'; import { useAlertListSelector } from './hooks/use_alerts_selector'; -import { AlertDetailResolver } from './resolver'; +import { AlertDetailsOverview } from './details'; +import { FormattedDate } from './formatted_date'; export const AlertIndex = memo(() => { const history = useHistory(); @@ -87,7 +93,6 @@ export const AlertIndex = memo(() => { const alertListData = useAlertListSelector(selectors.alertListData); const hasSelectedAlert = useAlertListSelector(selectors.hasSelectedAlert); const queryParams = useAlertListSelector(selectors.uiQueryParams); - const selectedEvent = useAlertListSelector(selectors.selectedEvent); const onChangeItemsPerPage = useCallback( newPageSize => { @@ -119,10 +124,10 @@ export const AlertIndex = memo(() => { history.push(urlFromQueryParams(paramsWithoutSelectedAlert)); }, [history, queryParams]); - const datesForRows: Map<AlertData, Date> = useMemo(() => { + const timestampForRows: Map<AlertData, number> = useMemo(() => { return new Map( alertListData.map(alertData => { - return [alertData, new Date(alertData['@timestamp'])]; + return [alertData, alertData['@timestamp']]; }) ); }, [alertListData]); @@ -136,9 +141,11 @@ export const AlertIndex = memo(() => { const row = alertListData[rowIndex % pageSize]; if (columnId === 'alert_type') { return ( - <Link + <EuiLink data-testid="alertTypeCellLink" - to={urlFromQueryParams({ ...queryParams, selected_alert: row.event.id })} + onClick={() => + history.push(urlFromQueryParams({ ...queryParams, selected_alert: row.id })) + } > {i18n.translate( 'xpack.endpoint.application.endpoint.alerts.alertType.maliciousFileDescription', @@ -146,7 +153,7 @@ export const AlertIndex = memo(() => { defaultMessage: 'Malicious File', } )} - </Link> + </EuiLink> ); } else if (columnId === 'event_type') { return row.event.action; @@ -157,19 +164,9 @@ export const AlertIndex = memo(() => { } else if (columnId === 'host_name') { return row.host.hostname; } else if (columnId === 'timestamp') { - const date = datesForRows.get(row)!; - if (date && isFinite(date.getTime())) { - return ( - <FormattedDate - value={date} - year="numeric" - month="2-digit" - day="2-digit" - hour="2-digit" - minute="2-digit" - second="2-digit" - /> - ); + const timestamp = timestampForRows.get(row)!; + if (timestamp) { + return <FormattedDate timestamp={timestamp} />; } else { return ( <EuiBadge color="warning"> @@ -185,11 +182,11 @@ export const AlertIndex = memo(() => { } else if (columnId === 'archived') { return null; } else if (columnId === 'malware_score') { - return row.file_classification.malware_classification.score; + return row.file.malware_classifier.score; } return null; }; - }, [alertListData, datesForRows, pageSize, queryParams, total]); + }, [total, alertListData, pageSize, history, queryParams, timestampForRows]); const pagination = useMemo(() => { return { @@ -201,6 +198,16 @@ export const AlertIndex = memo(() => { }; }, [onChangeItemsPerPage, onChangePage, pageIndex, pageSize]); + const columnVisibility = useMemo( + () => ({ + visibleColumns, + setVisibleColumns, + }), + [setVisibleColumns, visibleColumns] + ); + + const selectedAlertData = useAlertListSelector(selectors.selectedAlertDetailsData); + return ( <> {hasSelectedAlert && ( @@ -215,29 +222,37 @@ export const AlertIndex = memo(() => { </EuiTitle> </EuiFlyoutHeader> <EuiFlyoutBody> - <AlertDetailResolver selectedEvent={selectedEvent} /> + {selectedAlertData ? <AlertDetailsOverview /> : <EuiLoadingSpinner size="xl" />} </EuiFlyoutBody> </EuiFlyout> )} <EuiPage data-test-subj="alertListPage" data-testid="alertListPage"> <EuiPageBody> <EuiPageContent> - <EuiDataGrid - aria-label="Alert List" - rowCount={total} - columns={columns} - columnVisibility={useMemo( - () => ({ - visibleColumns, - setVisibleColumns, - }), - [setVisibleColumns, visibleColumns] - )} - renderCellValue={renderCellValue} - pagination={pagination} - data-test-subj="alertListGrid" - data-testid="alertListGrid" - /> + <EuiPageContentHeader> + <EuiPageContentHeaderSection> + <EuiTitle size="l"> + <h1> + <FormattedMessage + id="xpack.endpoint.alertList.viewTitle" + defaultMessage="Alerts" + /> + </h1> + </EuiTitle> + </EuiPageContentHeaderSection> + </EuiPageContentHeader> + <EuiPageContentBody> + <EuiDataGrid + aria-label="Alert List" + rowCount={total} + columns={columns} + columnVisibility={columnVisibility} + renderCellValue={renderCellValue} + pagination={pagination} + data-test-subj="alertListGrid" + data-testid="alertListGrid" + /> + </EuiPageContentBody> </EuiPageContent> </EuiPageBody> </EuiPage> diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/resolver.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/resolver.tsx index c7ef7f73dfe05b..ec1dab45d50aba 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/resolver.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/alerts/resolver.tsx @@ -18,6 +18,7 @@ export const AlertDetailResolver = styled( ({ className, selectedEvent }: { className?: string; selectedEvent?: LegacyEndpointEvent }) => { const context = useKibana<EndpointPluginServices>(); const { store } = storeFactory(context); + return ( <div className={className} data-test-subj="alertResolver" data-testid="alertResolver"> <Provider store={store}> From 41deda35841fc609a58aba5fc87a477e589b522c Mon Sep 17 00:00:00 2001 From: Daniil Suleiman <31325372+sulemanof@users.noreply.github.com> Date: Tue, 3 Mar 2020 10:28:40 +0300 Subject: [PATCH 035/120] Fix monaco editor styling (#58888) * Fix monaco editor styling * Change line highlight border --- src/plugins/kibana_react/public/code_editor/editor_theme.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/plugins/kibana_react/public/code_editor/editor_theme.ts b/src/plugins/kibana_react/public/code_editor/editor_theme.ts index 6e30135686797c..586b4a568c348a 100644 --- a/src/plugins/kibana_react/public/code_editor/editor_theme.ts +++ b/src/plugins/kibana_react/public/code_editor/editor_theme.ts @@ -101,6 +101,11 @@ export function createTheme( 'editor.selectionBackground': selectionBackgroundColor, 'editorWidget.border': euiTheme.euiColorLightShade, 'editorWidget.background': euiTheme.euiColorLightestShade, + 'editorCursor.foreground': euiTheme.euiColorDarkestShade, + 'editorSuggestWidget.selectedBackground': euiTheme.euiColorLightShade, + 'list.hoverBackground': euiTheme.euiColorLightShade, + 'list.highlightForeground': euiTheme.euiColorPrimary, + 'editor.lineHighlightBorder': euiTheme.euiColorLightestShade, }, }; } From 421d9d502b45b04569c48d0c42e48872fdaffc98 Mon Sep 17 00:00:00 2001 From: Daniil Suleiman <31325372+sulemanof@users.noreply.github.com> Date: Tue, 3 Mar 2020 10:31:02 +0300 Subject: [PATCH 036/120] [Vis Editor] Fix field combo box search value (#58601) * Fix field combo box search value * Fix inconsistent behavior * Apply validation for agg_select --- .../vis_default_editor/public/components/agg_select.tsx | 7 +++++-- .../public/components/controls/field.tsx | 8 ++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/agg_select.tsx b/src/legacy/core_plugins/vis_default_editor/public/components/agg_select.tsx index a2cec61b122efa..9a408c2d98b221 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/agg_select.tsx +++ b/src/legacy/core_plugins/vis_default_editor/public/components/agg_select.tsx @@ -17,7 +17,7 @@ * under the License. */ import { get, has } from 'lodash'; -import React, { useEffect, useCallback } from 'react'; +import React, { useEffect, useCallback, useState } from 'react'; import { EuiComboBox, EuiComboBoxOptionProps, EuiFormRow, EuiLink, EuiText } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; @@ -52,6 +52,7 @@ function DefaultEditorAggSelect({ isSubAggregation, onChangeAggType, }: DefaultEditorAggSelectProps) { + const [isDirty, setIsDirty] = useState(false); const { services } = useKibana(); const selectedOptions: ComboBoxGroupedOptions<IAggType> = value ? [{ label: value.title, target: value }] @@ -100,7 +101,7 @@ function DefaultEditorAggSelect({ ); } - const isValid = !!value && !errors.length; + const isValid = !!value && !errors.length && !isDirty; const onChange = useCallback( (options: EuiComboBoxOptionProps[]) => { @@ -111,6 +112,7 @@ function DefaultEditorAggSelect({ }, [setValue] ); + const onSearchChange = useCallback(searchValue => setIsDirty(Boolean(searchValue)), []); const setTouched = useCallback( () => onChangeAggType({ type: AGG_TYPE_ACTION_KEYS.TOUCHED, payload: true }), @@ -151,6 +153,7 @@ function DefaultEditorAggSelect({ singleSelection={{ asPlainText: true }} onBlur={setTouched} onChange={onChange} + onSearchChange={onSearchChange} data-test-subj="defaultEditorAggSelect" isClearable={false} isInvalid={showValidation ? !isValid : false} diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/controls/field.tsx b/src/legacy/core_plugins/vis_default_editor/public/components/controls/field.tsx index 8bf7bc384b07a0..d605fb203f4d3c 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/controls/field.tsx +++ b/src/legacy/core_plugins/vis_default_editor/public/components/controls/field.tsx @@ -18,7 +18,7 @@ */ import { get } from 'lodash'; -import React, { useEffect } from 'react'; +import React, { useEffect, useState, useCallback } from 'react'; import { EuiComboBox, EuiComboBoxOptionProps, EuiFormRow } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; @@ -50,6 +50,7 @@ function FieldParamEditor({ setValidity, setValue, }: FieldParamEditorProps) { + const [isDirty, setIsDirty] = useState(false); const selectedOptions: ComboBoxGroupedOptions<IndexPatternField> = value ? [{ label: value.displayName || value.name, target: value }] : []; @@ -79,7 +80,7 @@ function FieldParamEditor({ ); } - const isValid = !!value && !errors.length; + const isValid = !!value && !errors.length && !isDirty; useValidation(setValidity, isValid); @@ -98,6 +99,8 @@ function FieldParamEditor({ } }, []); + const onSearchChange = useCallback(searchValue => setIsDirty(Boolean(searchValue)), []); + return ( <EuiFormRow label={customLabel || label} @@ -119,6 +122,7 @@ function FieldParamEditor({ isInvalid={showValidation ? !isValid : false} onChange={onChange} onBlur={setTouched} + onSearchChange={onSearchChange} data-test-subj="visDefaultEditorField" fullWidth={true} /> From ecbcceb74d8e37d069b6dafc2136908f664b7bb6 Mon Sep 17 00:00:00 2001 From: Walter Rafelsberger <walter@elastic.co> Date: Tue, 3 Mar 2020 08:59:00 +0100 Subject: [PATCH 037/120] [ML] Transform: Fix advanced editor initialization. (#59006) Fixes regression introduced by #58015 to correctly initialize the transform wizard advanced editor with the current configuration. --- .../step_define/step_define_form.tsx | 5 ++++ .../apps/transform/creation_index_pattern.ts | 29 +++++++++++++++++++ .../services/transform_ui/wizard.ts | 14 +++++++++ 3 files changed, 48 insertions(+) diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx index 3adb74e4704dcd..bde832894632c0 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx @@ -404,6 +404,10 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange xJson: advancedEditorConfig, } = useXJsonMode(stringifiedPivotConfig); + useEffect(() => { + setAdvancedEditorConfig(stringifiedPivotConfig); + }, [setAdvancedEditorConfig, stringifiedPivotConfig]); + // source config const stringifiedSourceConfig = JSON.stringify(previewRequest.source.query, null, 2); const [ @@ -797,6 +801,7 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange > <EuiPanel grow={false} paddingSize="none"> <EuiCodeEditor + data-test-subj="transformAdvancedPivotEditor" mode={xJsonMode} width="100%" value={advancedEditorConfig} diff --git a/x-pack/test/functional/apps/transform/creation_index_pattern.ts b/x-pack/test/functional/apps/transform/creation_index_pattern.ts index 6e35b0c1a81cad..5b54bfdafdbdbc 100644 --- a/x-pack/test/functional/apps/transform/creation_index_pattern.ts +++ b/x-pack/test/functional/apps/transform/creation_index_pattern.ts @@ -57,6 +57,28 @@ export default function({ getService }: FtrProviderContext) { return `user-${this.transformId}`; }, expected: { + pivotAdvancedEditorValue: { + group_by: { + 'category.keyword': { + terms: { + field: 'category.keyword', + }, + }, + order_date: { + date_histogram: { + field: 'order_date', + calendar_interval: '1m', + }, + }, + }, + aggregations: { + 'products.base_price.avg': { + avg: { + field: 'products.base_price', + }, + }, + }, + }, pivotPreview: { column: 0, values: [`Men's Accessories`], @@ -152,6 +174,13 @@ export default function({ getService }: FtrProviderContext) { await transform.wizard.assertAdvancedPivotEditorSwitchCheckState(false); }); + it('displays the advanced configuration', async () => { + await transform.wizard.enabledAdvancedPivotEditor(); + await transform.wizard.assertAdvancedPivotEditorContent( + testData.expected.pivotAdvancedEditorValue + ); + }); + it('loads the pivot preview', async () => { await transform.wizard.assertPivotPreviewLoaded(); }); diff --git a/x-pack/test/functional/services/transform_ui/wizard.ts b/x-pack/test/functional/services/transform_ui/wizard.ts index e823117ad70167..aca08f7083aa85 100644 --- a/x-pack/test/functional/services/transform_ui/wizard.ts +++ b/x-pack/test/functional/services/transform_ui/wizard.ts @@ -8,6 +8,7 @@ import expect from '@kbn/expect'; import { FtrProviderContext } from '../../ftr_provider_context'; export function TransformWizardProvider({ getService }: FtrProviderContext) { + const aceEditor = getService('aceEditor'); const testSubjects = getService('testSubjects'); const comboBox = getService('comboBox'); const retry = getService('retry'); @@ -273,6 +274,12 @@ export function TransformWizardProvider({ getService }: FtrProviderContext) { await this.assertAggregationEntryExists(index, expectedLabel); }, + async assertAdvancedPivotEditorContent(expectedValue: Record<string, any>) { + const advancedEditorString = await aceEditor.getValue('transformAdvancedPivotEditor'); + const advancedEditorValue = JSON.parse(advancedEditorString); + expect(advancedEditorValue).to.eql(expectedValue); + }, + async assertAdvancedPivotEditorSwitchExists() { await testSubjects.existOrFail(`transformAdvancedPivotEditorSwitch`, { allowHidden: true }); }, @@ -287,6 +294,13 @@ export function TransformWizardProvider({ getService }: FtrProviderContext) { ); }, + async enabledAdvancedPivotEditor() { + await this.assertAdvancedPivotEditorSwitchCheckState(false); + await testSubjects.click('transformAdvancedPivotEditorSwitch'); + await this.assertAdvancedPivotEditorSwitchCheckState(true); + await testSubjects.existOrFail('transformAdvancedPivotEditor'); + }, + async assertTransformIdInputExists() { await testSubjects.existOrFail('transformIdInput'); }, From bb55e8a21cc50cda8cf8753064b49f433a796451 Mon Sep 17 00:00:00 2001 From: Walter Rafelsberger <walter@elastic.co> Date: Tue, 3 Mar 2020 09:01:45 +0100 Subject: [PATCH 038/120] [ML] Transforms: Migrate server plugin to NP. (#58714) Migrate transform legacy server to NP. - Create server plugin/index for transform in x-pack/plugins. - Move all legacy/server files to plugins/transform --- x-pack/.i18nrc.json | 2 +- x-pack/legacy/plugins/transform/index.ts | 19 +- .../legacy/plugins/transform/server/plugin.ts | 17 - .../transform/server/routes/api/app.ts | 99 ----- .../server/routes/api/register_routes.ts | 14 - .../routes/api/transform_audit_messages.ts | 84 ---- .../transform/server/routes/api/transforms.ts | 261 ------------- .../legacy/plugins/transform/server/shim.ts | 46 --- x-pack/plugins/transform/kibana.json | 15 + .../server/client/elasticsearch_transform.ts | 0 x-pack/plugins/transform/server/index.ts | 11 + x-pack/plugins/transform/server/plugin.ts | 89 +++++ .../server/routes/api/error_utils.ts | 16 +- .../transform/server/routes/api/privileges.ts | 85 +++++ .../transform/server/routes/api/schema.ts | 16 + .../transform/server/routes/api/transforms.ts | 360 ++++++++++++++++++ .../routes/api/transforms_audit_messages.ts | 91 +++++ .../plugins/transform/server/routes/index.ts | 24 ++ .../transform/server/services/index.ts | 7 + .../transform/server/services/license.ts | 91 +++++ x-pack/plugins/transform/server/types.ts | 18 + 21 files changed, 824 insertions(+), 541 deletions(-) delete mode 100644 x-pack/legacy/plugins/transform/server/plugin.ts delete mode 100644 x-pack/legacy/plugins/transform/server/routes/api/app.ts delete mode 100644 x-pack/legacy/plugins/transform/server/routes/api/register_routes.ts delete mode 100644 x-pack/legacy/plugins/transform/server/routes/api/transform_audit_messages.ts delete mode 100644 x-pack/legacy/plugins/transform/server/routes/api/transforms.ts delete mode 100644 x-pack/legacy/plugins/transform/server/shim.ts create mode 100644 x-pack/plugins/transform/kibana.json rename x-pack/{legacy => }/plugins/transform/server/client/elasticsearch_transform.ts (100%) create mode 100644 x-pack/plugins/transform/server/index.ts create mode 100644 x-pack/plugins/transform/server/plugin.ts rename x-pack/{legacy => }/plugins/transform/server/routes/api/error_utils.ts (80%) create mode 100644 x-pack/plugins/transform/server/routes/api/privileges.ts create mode 100644 x-pack/plugins/transform/server/routes/api/schema.ts create mode 100644 x-pack/plugins/transform/server/routes/api/transforms.ts create mode 100644 x-pack/plugins/transform/server/routes/api/transforms_audit_messages.ts create mode 100644 x-pack/plugins/transform/server/routes/index.ts create mode 100644 x-pack/plugins/transform/server/services/index.ts create mode 100644 x-pack/plugins/transform/server/services/license.ts create mode 100644 x-pack/plugins/transform/server/types.ts diff --git a/x-pack/.i18nrc.json b/x-pack/.i18nrc.json index 51099815ec938f..8f5a5ea4f10e40 100644 --- a/x-pack/.i18nrc.json +++ b/x-pack/.i18nrc.json @@ -39,7 +39,7 @@ "xpack.snapshotRestore": "legacy/plugins/snapshot_restore", "xpack.spaces": ["legacy/plugins/spaces", "plugins/spaces"], "xpack.taskManager": "legacy/plugins/task_manager", - "xpack.transform": "legacy/plugins/transform", + "xpack.transform": ["legacy/plugins/transform", "plugins/transform"], "xpack.triggersActionsUI": "plugins/triggers_actions_ui", "xpack.upgradeAssistant": "plugins/upgrade_assistant", "xpack.uptime": "legacy/plugins/uptime", diff --git a/x-pack/legacy/plugins/transform/index.ts b/x-pack/legacy/plugins/transform/index.ts index d0799f46cbd25d..10f4732152c43a 100644 --- a/x-pack/legacy/plugins/transform/index.ts +++ b/x-pack/legacy/plugins/transform/index.ts @@ -4,11 +4,9 @@ * you may not use this file except in compliance with the Elastic License. */ -import { Legacy } from 'kibana'; import { resolve } from 'path'; + import { PLUGIN } from './common/constants'; -import { Plugin as TransformPlugin } from './server/plugin'; -import { createServerShim } from './server/shim'; export function transform(kibana: any) { return new kibana.Plugin({ @@ -20,20 +18,5 @@ export function transform(kibana: any) { styleSheetPaths: resolve(__dirname, 'public/app/index.scss'), managementSections: ['plugins/transform'], }, - init(server: Legacy.Server) { - const { core, plugins } = createServerShim(server, PLUGIN.ID); - const transformPlugin = new TransformPlugin(); - - // Start plugin - transformPlugin.start(core, plugins); - - // Register license checker - plugins.license.registerLicenseChecker( - server, - PLUGIN.ID, - PLUGIN.getI18nName(), - PLUGIN.MINIMUM_LICENSE_REQUIRED - ); - }, }); } diff --git a/x-pack/legacy/plugins/transform/server/plugin.ts b/x-pack/legacy/plugins/transform/server/plugin.ts deleted file mode 100644 index f9264ee1f25077..00000000000000 --- a/x-pack/legacy/plugins/transform/server/plugin.ts +++ /dev/null @@ -1,17 +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 { API_BASE_PATH } from '../common/constants'; -import { registerRoutes } from './routes/api/register_routes'; -import { Core, Plugins } from './shim'; - -export class Plugin { - public start(core: Core, plugins: Plugins): void { - const router = core.http.createRouter(API_BASE_PATH); - - // Register routes - registerRoutes(router, plugins); - } -} diff --git a/x-pack/legacy/plugins/transform/server/routes/api/app.ts b/x-pack/legacy/plugins/transform/server/routes/api/app.ts deleted file mode 100644 index c3189794b6eb0d..00000000000000 --- a/x-pack/legacy/plugins/transform/server/routes/api/app.ts +++ /dev/null @@ -1,99 +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 { Router, RouterRouteHandler } from '../../../../../server/lib/create_router'; -import { wrapCustomError } from '../../../../../server/lib/create_router/error_wrappers'; -import { APP_CLUSTER_PRIVILEGES, APP_INDEX_PRIVILEGES } from '../../../common/constants'; -// NOTE: now we import it from our "public" folder, but when the Authorisation lib -// will move to the "es_ui_shared" plugin, it will be imported from its "static" folder -import { Privileges } from '../../../public/app/lib/authorization'; -import { Plugins } from '../../shim'; - -let xpackMainPlugin: any; - -export function registerAppRoutes(router: Router, plugins: Plugins) { - xpackMainPlugin = plugins.xpack_main; - router.get('privileges', getPrivilegesHandler); -} - -export function getXpackMainPlugin() { - return xpackMainPlugin; -} - -const extractMissingPrivileges = (privilegesObject: { [key: string]: boolean } = {}): string[] => - Object.keys(privilegesObject).reduce((privileges: string[], privilegeName: string): string[] => { - if (!privilegesObject[privilegeName]) { - privileges.push(privilegeName); - } - return privileges; - }, []); - -export const getPrivilegesHandler: RouterRouteHandler = async ( - req, - callWithRequest -): Promise<Privileges> => { - const xpackInfo = getXpackMainPlugin() && getXpackMainPlugin().info; - if (!xpackInfo) { - // xpackInfo is updated via poll, so it may not be available until polling has begun. - // In this rare situation, tell the client the service is temporarily unavailable. - throw wrapCustomError(new Error('Security info unavailable'), 503); - } - - const privilegesResult: Privileges = { - hasAllPrivileges: true, - missingPrivileges: { - cluster: [], - index: [], - }, - }; - - const securityInfo = xpackInfo && xpackInfo.isAvailable() && xpackInfo.feature('security'); - if (!securityInfo || !securityInfo.isAvailable() || !securityInfo.isEnabled()) { - // If security isn't enabled, let the user use app. - return privilegesResult; - } - - // Get cluster priviliges - const { has_all_requested: hasAllPrivileges, cluster } = await callWithRequest( - 'transport.request', - { - path: '/_security/user/_has_privileges', - method: 'POST', - body: { - cluster: APP_CLUSTER_PRIVILEGES, - }, - } - ); - - // Find missing cluster privileges and set overall app privileges - privilegesResult.missingPrivileges.cluster = extractMissingPrivileges(cluster); - privilegesResult.hasAllPrivileges = hasAllPrivileges; - - // Get all index privileges the user has - const { indices } = await callWithRequest('transport.request', { - path: '/_security/user/_privileges', - method: 'GET', - }); - - // Check if they have all the required index privileges for at least one index - const oneIndexWithAllPrivileges = indices.find(({ privileges }: { privileges: string[] }) => { - if (privileges.includes('all')) { - return true; - } - - const indexHasAllPrivileges = APP_INDEX_PRIVILEGES.every(privilege => - privileges.includes(privilege) - ); - - return indexHasAllPrivileges; - }); - - // If they don't, return list of required index privileges - if (!oneIndexWithAllPrivileges) { - privilegesResult.missingPrivileges.index = [...APP_INDEX_PRIVILEGES]; - } - - return privilegesResult; -}; diff --git a/x-pack/legacy/plugins/transform/server/routes/api/register_routes.ts b/x-pack/legacy/plugins/transform/server/routes/api/register_routes.ts deleted file mode 100644 index c01647c598d865..00000000000000 --- a/x-pack/legacy/plugins/transform/server/routes/api/register_routes.ts +++ /dev/null @@ -1,14 +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 { Router } from '../../../../../server/lib/create_router'; -import { Plugins } from '../../shim'; -import { registerAppRoutes } from './app'; -import { registerTransformsRoutes } from './transforms'; - -export const registerRoutes = (router: Router, plugins: Plugins): void => { - registerAppRoutes(router, plugins); - registerTransformsRoutes(router, plugins); -}; diff --git a/x-pack/legacy/plugins/transform/server/routes/api/transform_audit_messages.ts b/x-pack/legacy/plugins/transform/server/routes/api/transform_audit_messages.ts deleted file mode 100644 index c4b5fbd4d3b609..00000000000000 --- a/x-pack/legacy/plugins/transform/server/routes/api/transform_audit_messages.ts +++ /dev/null @@ -1,84 +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 { CallCluster } from 'src/legacy/core_plugins/elasticsearch'; - -import { AuditMessage } from '../../../common/types/messages'; - -const ML_DF_NOTIFICATION_INDEX_PATTERN = '.transform-notifications-read'; -const SIZE = 500; - -interface BoolQuery { - bool: { [key: string]: any }; -} - -export function transformAuditMessagesProvider(callWithRequest: CallCluster) { - // search for audit messages, - // transformId is optional. without it, all transforms will be listed. - async function getTransformAuditMessages(transformId: string) { - const query: BoolQuery = { - bool: { - filter: [ - { - bool: { - must_not: { - term: { - level: 'activity', - }, - }, - }, - }, - ], - }, - }; - - // if no transformId specified, load all of the messages - if (transformId !== undefined) { - query.bool.filter.push({ - bool: { - should: [ - { - term: { - transform_id: '', // catch system messages - }, - }, - { - term: { - transform_id: transformId, // messages for specified transformId - }, - }, - ], - }, - }); - } - - try { - const resp = await callWithRequest('search', { - index: ML_DF_NOTIFICATION_INDEX_PATTERN, - ignore_unavailable: true, - rest_total_hits_as_int: true, - size: SIZE, - body: { - sort: [{ timestamp: { order: 'desc' } }, { transform_id: { order: 'asc' } }], - query, - }, - }); - - let messages = []; - if (resp.hits.total !== 0) { - messages = resp.hits.hits.map((hit: AuditMessage) => hit._source); - messages.reverse(); - } - return messages; - } catch (e) { - throw e; - } - } - - return { - getTransformAuditMessages, - }; -} diff --git a/x-pack/legacy/plugins/transform/server/routes/api/transforms.ts b/x-pack/legacy/plugins/transform/server/routes/api/transforms.ts deleted file mode 100644 index 6e833854a24c9a..00000000000000 --- a/x-pack/legacy/plugins/transform/server/routes/api/transforms.ts +++ /dev/null @@ -1,261 +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 { CallCluster } from 'src/legacy/core_plugins/elasticsearch'; -import { Router, RouterRouteHandler } from '../../../../../server/lib/create_router'; -import { wrapEsError } from '../../../../../server/lib/create_router/error_wrappers'; -import { Plugins } from '../../shim'; -import { TRANSFORM_STATE } from '../../../public/app/common'; -import { - TransformEndpointRequest, - TransformEndpointResult, -} from '../../../public/app/hooks/use_api_types'; -import { TransformId } from '../../../public/app/common/transform'; -import { isRequestTimeout, fillResultsWithTimeouts } from './error_utils'; -import { transformAuditMessagesProvider } from './transform_audit_messages'; - -enum TRANSFORM_ACTIONS { - STOP = 'stop', - START = 'start', - DELETE = 'delete', -} - -interface StartOptions { - transformId: TransformId; -} - -interface StopOptions { - transformId: TransformId; - force: boolean; - waitForCompletion?: boolean; -} - -export function registerTransformsRoutes(router: Router, plugins: Plugins) { - router.get('transforms', getTransformHandler); - router.get('transforms/{transformId}', getTransformHandler); - router.get('transforms/_stats', getTransformStatsHandler); - router.get('transforms/{transformId}/_stats', getTransformStatsHandler); - router.get('transforms/{transformId}/messages', getTransformMessagesHandler); - router.put('transforms/{transformId}', putTransformHandler); - router.post('delete_transforms', deleteTransformsHandler); - router.post('transforms/_preview', previewTransformHandler); - router.post('start_transforms', startTransformsHandler); - router.post('stop_transforms', stopTransformsHandler); - router.post('es_search', esSearchHandler); -} - -const getTransformHandler: RouterRouteHandler = async (req, callWithRequest) => { - const { transformId } = req.params; - const options = { - ...(transformId !== undefined ? { transformId } : {}), - }; - - try { - return await callWithRequest('transform.getTransforms', options); - } catch (e) { - return { error: wrapEsError(e) }; - } -}; - -const getTransformStatsHandler: RouterRouteHandler = async (req, callWithRequest) => { - const { transformId } = req.params; - const options = { - ...(transformId !== undefined ? { transformId } : {}), - }; - - try { - return await callWithRequest('transform.getTransformsStats', options); - } catch (e) { - return { error: wrapEsError(e) }; - } -}; - -const deleteTransformsHandler: RouterRouteHandler = async (req, callWithRequest) => { - const transformsInfo = req.payload as TransformEndpointRequest[]; - - try { - return await deleteTransforms(transformsInfo, callWithRequest); - } catch (e) { - return { error: wrapEsError(e) }; - } -}; - -const putTransformHandler: RouterRouteHandler = async (req, callWithRequest) => { - const { transformId } = req.params; - - const response: { - transformsCreated: Array<{ transform: string }>; - errors: any[]; - } = { - transformsCreated: [], - errors: [], - }; - - await callWithRequest('transform.createTransform', { body: req.payload, transformId }) - .then(() => response.transformsCreated.push({ transform: transformId })) - .catch(e => - response.errors.push({ - id: transformId, - error: wrapEsError(e), - }) - ); - - return response; -}; - -async function deleteTransforms( - transformsInfo: TransformEndpointRequest[], - callWithRequest: CallCluster -) { - const results: TransformEndpointResult = {}; - - for (const transformInfo of transformsInfo) { - const transformId = transformInfo.id; - try { - if (transformInfo.state === TRANSFORM_STATE.FAILED) { - try { - await callWithRequest('transform.stopTransform', { - transformId, - force: true, - waitForCompletion: true, - } as StopOptions); - } catch (e) { - if (isRequestTimeout(e)) { - return fillResultsWithTimeouts({ - results, - id: transformId, - items: transformsInfo, - action: TRANSFORM_ACTIONS.DELETE, - }); - } - } - } - - await callWithRequest('transform.deleteTransform', { transformId }); - results[transformId] = { success: true }; - } catch (e) { - if (isRequestTimeout(e)) { - return fillResultsWithTimeouts({ - results, - id: transformInfo.id, - items: transformsInfo, - action: TRANSFORM_ACTIONS.DELETE, - }); - } - results[transformId] = { success: false, error: JSON.stringify(e) }; - } - } - return results; -} - -const previewTransformHandler: RouterRouteHandler = async (req, callWithRequest) => { - try { - return await callWithRequest('transform.getTransformsPreview', { body: req.payload }); - } catch (e) { - return wrapEsError(e); - } -}; - -const startTransformsHandler: RouterRouteHandler = async (req, callWithRequest) => { - const { transformsInfo } = req.payload as { - transformsInfo: TransformEndpointRequest[]; - }; - - try { - return await startTransforms(transformsInfo, callWithRequest); - } catch (e) { - return wrapEsError(e); - } -}; - -async function startTransforms( - transformsInfo: TransformEndpointRequest[], - callWithRequest: CallCluster -) { - const results: TransformEndpointResult = {}; - - for (const transformInfo of transformsInfo) { - const transformId = transformInfo.id; - try { - await callWithRequest('transform.startTransform', { transformId } as StartOptions); - results[transformId] = { success: true }; - } catch (e) { - if (isRequestTimeout(e)) { - return fillResultsWithTimeouts({ - results, - id: transformId, - items: transformsInfo, - action: TRANSFORM_ACTIONS.START, - }); - } - results[transformId] = { success: false, error: JSON.stringify(e) }; - } - } - return results; -} - -const stopTransformsHandler: RouterRouteHandler = async (req, callWithRequest) => { - const { transformsInfo } = req.payload as { - transformsInfo: TransformEndpointRequest[]; - }; - - try { - return await stopTransforms(transformsInfo, callWithRequest); - } catch (e) { - return wrapEsError(e); - } -}; - -async function stopTransforms( - transformsInfo: TransformEndpointRequest[], - callWithRequest: CallCluster -) { - const results: TransformEndpointResult = {}; - - for (const transformInfo of transformsInfo) { - const transformId = transformInfo.id; - try { - await callWithRequest('transform.stopTransform', { - transformId, - force: - transformInfo.state !== undefined - ? transformInfo.state === TRANSFORM_STATE.FAILED - : false, - waitForCompletion: true, - } as StopOptions); - results[transformId] = { success: true }; - } catch (e) { - if (isRequestTimeout(e)) { - return fillResultsWithTimeouts({ - results, - id: transformId, - items: transformsInfo, - action: TRANSFORM_ACTIONS.STOP, - }); - } - results[transformId] = { success: false, error: JSON.stringify(e) }; - } - } - return results; -} - -const getTransformMessagesHandler: RouterRouteHandler = async (req, callWithRequest) => { - const { getTransformAuditMessages } = transformAuditMessagesProvider(callWithRequest); - const { transformId } = req.params; - - try { - return await getTransformAuditMessages(transformId); - } catch (e) { - return wrapEsError(e); - } -}; - -const esSearchHandler: RouterRouteHandler = async (req, callWithRequest) => { - try { - return await callWithRequest('search', req.payload); - } catch (e) { - return { error: wrapEsError(e) }; - } -}; diff --git a/x-pack/legacy/plugins/transform/server/shim.ts b/x-pack/legacy/plugins/transform/server/shim.ts deleted file mode 100644 index 8f477d86441f48..00000000000000 --- a/x-pack/legacy/plugins/transform/server/shim.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 { Legacy } from 'kibana'; -import { createRouter, Router } from '../../../server/lib/create_router'; -import { registerLicenseChecker } from '../../../server/lib/register_license_checker'; -import { elasticsearchJsPlugin } from './client/elasticsearch_transform'; -export interface Core { - http: { - createRouter(basePath: string): Router; - }; -} - -export interface Plugins { - license: { - registerLicenseChecker: typeof registerLicenseChecker; - }; - xpack_main: any; - elasticsearch: any; -} - -export function createServerShim( - server: Legacy.Server, - pluginId: string -): { core: Core; plugins: Plugins } { - return { - core: { - http: { - createRouter: (basePath: string) => - createRouter(server, pluginId, basePath, { - plugins: [elasticsearchJsPlugin], - }), - }, - }, - plugins: { - license: { - registerLicenseChecker, - }, - xpack_main: server.plugins.xpack_main, - elasticsearch: server.plugins.elasticsearch, - }, - }; -} diff --git a/x-pack/plugins/transform/kibana.json b/x-pack/plugins/transform/kibana.json new file mode 100644 index 00000000000000..87e38f83ef6407 --- /dev/null +++ b/x-pack/plugins/transform/kibana.json @@ -0,0 +1,15 @@ +{ + "id": "transform", + "version": "kibana", + "server": true, + "ui": false, + "requiredPlugins": [ + "home", + "licensing", + "management" + ], + "optionalPlugins": [ + "usageCollection" + ], + "configPath": ["xpack", "transform"] +} diff --git a/x-pack/legacy/plugins/transform/server/client/elasticsearch_transform.ts b/x-pack/plugins/transform/server/client/elasticsearch_transform.ts similarity index 100% rename from x-pack/legacy/plugins/transform/server/client/elasticsearch_transform.ts rename to x-pack/plugins/transform/server/client/elasticsearch_transform.ts diff --git a/x-pack/plugins/transform/server/index.ts b/x-pack/plugins/transform/server/index.ts new file mode 100644 index 00000000000000..7b7cf3ee44fb5c --- /dev/null +++ b/x-pack/plugins/transform/server/index.ts @@ -0,0 +1,11 @@ +/* + * 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 { PluginInitializerContext } from 'src/core/server'; + +import { TransformServerPlugin } from './plugin'; + +export const plugin = (ctx: PluginInitializerContext) => new TransformServerPlugin(ctx); diff --git a/x-pack/plugins/transform/server/plugin.ts b/x-pack/plugins/transform/server/plugin.ts new file mode 100644 index 00000000000000..7da991bc02b376 --- /dev/null +++ b/x-pack/plugins/transform/server/plugin.ts @@ -0,0 +1,89 @@ +/* + * 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 { + CoreSetup, + Plugin, + IScopedClusterClient, + Logger, + PluginInitializerContext, +} from 'src/core/server'; + +import { LicenseType } from '../../licensing/common/types'; + +import { elasticsearchJsPlugin } from './client/elasticsearch_transform'; +import { Dependencies } from './types'; +import { ApiRoutes } from './routes'; +import { License } from './services'; + +declare module 'kibana/server' { + interface RequestHandlerContext { + transform?: { + dataClient: IScopedClusterClient; + }; + } +} + +const basicLicense: LicenseType = 'basic'; + +const PLUGIN = { + id: 'transform', + minimumLicenseType: basicLicense, + getI18nName: (): string => + i18n.translate('xpack.transform.appTitle', { + defaultMessage: 'Transforms', + }), +}; + +export class TransformServerPlugin implements Plugin<{}, void, any, any> { + private readonly apiRoutes: ApiRoutes; + private readonly license: License; + private readonly logger: Logger; + + constructor(initContext: PluginInitializerContext) { + this.logger = initContext.logger.get(); + this.apiRoutes = new ApiRoutes(); + this.license = new License(); + } + + setup({ elasticsearch, http }: CoreSetup, { licensing }: Dependencies): {} { + const router = http.createRouter(); + + this.license.setup( + { + pluginId: PLUGIN.id, + minimumLicenseType: PLUGIN.minimumLicenseType, + defaultErrorMessage: i18n.translate('xpack.transform.licenseCheckErrorMessage', { + defaultMessage: 'License check failed', + }), + }, + { + licensing, + logger: this.logger, + } + ); + + this.apiRoutes.setup({ + router, + license: this.license, + }); + + // Can access via new platform router's handler function 'context' parameter - context.transform.client + const transformClient = elasticsearch.createClient('transform', { + plugins: [elasticsearchJsPlugin], + }); + http.registerRouteHandlerContext('transform', (context, request) => { + return { + dataClient: transformClient.asScoped(request), + }; + }); + + return {}; + } + + start() {} + stop() {} +} diff --git a/x-pack/legacy/plugins/transform/server/routes/api/error_utils.ts b/x-pack/plugins/transform/server/routes/api/error_utils.ts similarity index 80% rename from x-pack/legacy/plugins/transform/server/routes/api/error_utils.ts rename to x-pack/plugins/transform/server/routes/api/error_utils.ts index 094c0308ff20ff..d09152bf1a6031 100644 --- a/x-pack/legacy/plugins/transform/server/routes/api/error_utils.ts +++ b/x-pack/plugins/transform/server/routes/api/error_utils.ts @@ -4,11 +4,16 @@ * you may not use this file except in compliance with the Elastic License. */ +import { boomify, isBoom } from 'boom'; + import { i18n } from '@kbn/i18n'; + +import { ResponseError, CustomHttpResponseOptions } from 'src/core/server'; + import { TransformEndpointRequest, TransformEndpointResult, -} from '../../../public/app/hooks/use_api_types'; +} from '../../../../../legacy/plugins/transform/public/app/hooks/use_api_types'; const REQUEST_TIMEOUT = 'RequestTimeout'; @@ -71,3 +76,12 @@ export function fillResultsWithTimeouts({ results, id, items, action }: Params) return accumResults; }, newResults); } + +export function wrapError(error: any): CustomHttpResponseOptions<ResponseError> { + const boom = isBoom(error) ? error : boomify(error, { statusCode: error.status }); + return { + body: boom, + headers: boom.output.headers, + statusCode: boom.output.statusCode, + }; +} diff --git a/x-pack/plugins/transform/server/routes/api/privileges.ts b/x-pack/plugins/transform/server/routes/api/privileges.ts new file mode 100644 index 00000000000000..6003a88ffa40c2 --- /dev/null +++ b/x-pack/plugins/transform/server/routes/api/privileges.ts @@ -0,0 +1,85 @@ +/* + * 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 { + APP_CLUSTER_PRIVILEGES, + APP_INDEX_PRIVILEGES, +} from '../../../../../legacy/plugins/transform/common/constants'; +// NOTE: now we import it from our "public" folder, but when the Authorisation lib +// will move to the "es_ui_shared" plugin, it will be imported from its "static" folder +import { Privileges } from '../../../../../legacy/plugins/transform/public/app/lib/authorization'; + +import { RouteDependencies } from '../../types'; +import { addBasePath } from '../index'; + +export function registerPrivilegesRoute({ router, license }: RouteDependencies) { + router.get( + { path: addBasePath('privileges'), validate: {} }, + license.guardApiRoute(async (ctx, req, res) => { + const privilegesResult: Privileges = { + hasAllPrivileges: true, + missingPrivileges: { + cluster: [], + index: [], + }, + }; + + if (license.getStatus().isSecurityEnabled === false) { + // If security isn't enabled, let the user use app. + return res.ok({ body: privilegesResult }); + } + + // Get cluster priviliges + const { + has_all_requested: hasAllPrivileges, + cluster, + } = await ctx.transform!.dataClient.callAsCurrentUser('transport.request', { + path: '/_security/user/_has_privileges', + method: 'POST', + body: { + cluster: APP_CLUSTER_PRIVILEGES, + }, + }); + + // Find missing cluster privileges and set overall app privileges + privilegesResult.missingPrivileges.cluster = extractMissingPrivileges(cluster); + privilegesResult.hasAllPrivileges = hasAllPrivileges; + + // Get all index privileges the user has + const { indices } = await ctx.transform!.dataClient.callAsCurrentUser('transport.request', { + path: '/_security/user/_privileges', + method: 'GET', + }); + + // Check if they have all the required index privileges for at least one index + const oneIndexWithAllPrivileges = indices.find(({ privileges }: { privileges: string[] }) => { + if (privileges.includes('all')) { + return true; + } + + const indexHasAllPrivileges = APP_INDEX_PRIVILEGES.every(privilege => + privileges.includes(privilege) + ); + + return indexHasAllPrivileges; + }); + + // If they don't, return list of required index privileges + if (!oneIndexWithAllPrivileges) { + privilegesResult.missingPrivileges.index = [...APP_INDEX_PRIVILEGES]; + } + + return res.ok({ body: privilegesResult }); + }) + ); +} + +const extractMissingPrivileges = (privilegesObject: { [key: string]: boolean } = {}): string[] => + Object.keys(privilegesObject).reduce((privileges: string[], privilegeName: string): string[] => { + if (!privilegesObject[privilegeName]) { + privileges.push(privilegeName); + } + return privileges; + }, []); diff --git a/x-pack/plugins/transform/server/routes/api/schema.ts b/x-pack/plugins/transform/server/routes/api/schema.ts new file mode 100644 index 00000000000000..0b994406d324d8 --- /dev/null +++ b/x-pack/plugins/transform/server/routes/api/schema.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 } from '@kbn/config-schema'; + +export const schemaTransformId = { + params: schema.object({ + transformId: schema.string(), + }), +}; + +export interface SchemaTransformId { + transformId: string; +} diff --git a/x-pack/plugins/transform/server/routes/api/transforms.ts b/x-pack/plugins/transform/server/routes/api/transforms.ts new file mode 100644 index 00000000000000..7aaae1f1c70397 --- /dev/null +++ b/x-pack/plugins/transform/server/routes/api/transforms.ts @@ -0,0 +1,360 @@ +/* + * 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 } from '@kbn/config-schema'; + +import { RequestHandler } from 'kibana/server'; +import { CallCluster } from 'src/legacy/core_plugins/elasticsearch'; +import { wrapEsError } from '../../../../../legacy/server/lib/create_router/error_wrappers'; + +import { TRANSFORM_STATE } from '../../../../../legacy/plugins/transform/public/app/common'; +import { + TransformEndpointRequest, + TransformEndpointResult, +} from '../../../../../legacy/plugins/transform/public/app/hooks/use_api_types'; +import { TransformId } from '../../../../../legacy/plugins/transform/public/app/common/transform'; + +import { RouteDependencies } from '../../types'; + +import { addBasePath } from '../index'; + +import { isRequestTimeout, fillResultsWithTimeouts, wrapError } from './error_utils'; +import { schemaTransformId, SchemaTransformId } from './schema'; +import { registerTransformsAuditMessagesRoutes } from './transforms_audit_messages'; + +enum TRANSFORM_ACTIONS { + STOP = 'stop', + START = 'start', + DELETE = 'delete', +} + +interface StopOptions { + transformId: TransformId; + force: boolean; + waitForCompletion?: boolean; +} + +export function registerTransformsRoutes(routeDependencies: RouteDependencies) { + const { router, license } = routeDependencies; + router.get( + { path: addBasePath('transforms'), validate: false }, + license.guardApiRoute(async (ctx, req, res) => { + const options = {}; + try { + const transforms = await getTransforms( + options, + ctx.transform!.dataClient.callAsCurrentUser + ); + return res.ok({ body: transforms }); + } catch (e) { + return res.customError(wrapError(wrapEsError(e))); + } + }) + ); + router.get( + { + path: addBasePath('transforms/{transformId}'), + validate: schemaTransformId, + }, + license.guardApiRoute(async (ctx, req, res) => { + const { transformId } = req.params as SchemaTransformId; + const options = { + ...(transformId !== undefined ? { transformId } : {}), + }; + try { + const transforms = await getTransforms( + options, + ctx.transform!.dataClient.callAsCurrentUser + ); + return res.ok({ body: transforms }); + } catch (e) { + return res.customError(wrapError(wrapEsError(e))); + } + }) + ); + router.get( + { path: addBasePath('transforms/_stats'), validate: false }, + license.guardApiRoute(async (ctx, req, res) => { + const options = {}; + try { + const stats = await ctx.transform!.dataClient.callAsCurrentUser( + 'transform.getTransformsStats', + options + ); + return res.ok({ body: stats }); + } catch (e) { + return res.customError(wrapError(wrapEsError(e))); + } + }) + ); + router.get( + { + path: addBasePath('transforms/{transformId}/_stats'), + validate: schemaTransformId, + }, + license.guardApiRoute(async (ctx, req, res) => { + const { transformId } = req.params as SchemaTransformId; + const options = { + ...(transformId !== undefined ? { transformId } : {}), + }; + try { + const stats = await ctx.transform!.dataClient.callAsCurrentUser( + 'transform.getTransformsStats', + options + ); + return res.ok({ body: stats }); + } catch (e) { + return res.customError(wrapError(wrapEsError(e))); + } + }) + ); + registerTransformsAuditMessagesRoutes(routeDependencies); + router.put( + { + path: addBasePath('transforms/{transformId}'), + validate: { + ...schemaTransformId, + body: schema.maybe(schema.any()), + }, + }, + license.guardApiRoute(async (ctx, req, res) => { + const { transformId } = req.params as SchemaTransformId; + + const response: { + transformsCreated: Array<{ transform: string }>; + errors: any[]; + } = { + transformsCreated: [], + errors: [], + }; + + await ctx + .transform!.dataClient.callAsCurrentUser('transform.createTransform', { + body: req.body, + transformId, + }) + .then(() => response.transformsCreated.push({ transform: transformId })) + .catch(e => + response.errors.push({ + id: transformId, + error: wrapEsError(e), + }) + ); + + return res.ok({ body: response }); + }) + ); + router.post( + { + path: addBasePath('delete_transforms'), + validate: { + body: schema.maybe(schema.any()), + }, + }, + license.guardApiRoute(async (ctx, req, res) => { + const transformsInfo = req.body as TransformEndpointRequest[]; + + try { + return res.ok({ + body: await deleteTransforms(transformsInfo, ctx.transform!.dataClient.callAsCurrentUser), + }); + } catch (e) { + return res.customError(wrapError(wrapEsError(e))); + } + }) + ); + router.post( + { + path: addBasePath('transforms/_preview'), + validate: { + body: schema.maybe(schema.any()), + }, + }, + license.guardApiRoute(previewTransformHandler) + ); + router.post( + { + path: addBasePath('start_transforms'), + validate: { + body: schema.maybe(schema.any()), + }, + }, + license.guardApiRoute(startTransformsHandler) + ); + router.post( + { + path: addBasePath('stop_transforms'), + validate: { + body: schema.maybe(schema.any()), + }, + }, + license.guardApiRoute(stopTransformsHandler) + ); + router.post( + { + path: addBasePath('es_search'), + validate: { + body: schema.maybe(schema.any()), + }, + }, + license.guardApiRoute(async (ctx, req, res) => { + try { + return res.ok({ + body: await ctx.transform!.dataClient.callAsCurrentUser('search', req.body), + }); + } catch (e) { + return res.customError(wrapError(wrapEsError(e))); + } + }) + ); +} + +const getTransforms = async (options: { transformId?: string }, callAsCurrentUser: CallCluster) => { + return await callAsCurrentUser('transform.getTransforms', options); +}; + +async function deleteTransforms( + transformsInfo: TransformEndpointRequest[], + callAsCurrentUser: CallCluster +) { + const results: TransformEndpointResult = {}; + + for (const transformInfo of transformsInfo) { + const transformId = transformInfo.id; + try { + if (transformInfo.state === TRANSFORM_STATE.FAILED) { + try { + await callAsCurrentUser('transform.stopTransform', { + transformId, + force: true, + waitForCompletion: true, + } as StopOptions); + } catch (e) { + if (isRequestTimeout(e)) { + return fillResultsWithTimeouts({ + results, + id: transformId, + items: transformsInfo, + action: TRANSFORM_ACTIONS.DELETE, + }); + } + } + } + + await callAsCurrentUser('transform.deleteTransform', { transformId }); + results[transformId] = { success: true }; + } catch (e) { + if (isRequestTimeout(e)) { + return fillResultsWithTimeouts({ + results, + id: transformInfo.id, + items: transformsInfo, + action: TRANSFORM_ACTIONS.DELETE, + }); + } + results[transformId] = { success: false, error: JSON.stringify(e) }; + } + } + return results; +} + +const previewTransformHandler: RequestHandler = async (ctx, req, res) => { + try { + return res.ok({ + body: await ctx.transform!.dataClient.callAsCurrentUser('transform.getTransformsPreview', { + body: req.body, + }), + }); + } catch (e) { + return res.customError(wrapError(wrapEsError(e))); + } +}; + +const startTransformsHandler: RequestHandler = async (ctx, req, res) => { + const { transformsInfo } = req.body as { + transformsInfo: TransformEndpointRequest[]; + }; + + try { + return res.ok({ + body: await startTransforms(transformsInfo, ctx.transform!.dataClient.callAsCurrentUser), + }); + } catch (e) { + return res.customError(wrapError(wrapEsError(e))); + } +}; + +async function startTransforms( + transformsInfo: TransformEndpointRequest[], + callAsCurrentUser: CallCluster +) { + const results: TransformEndpointResult = {}; + + for (const transformInfo of transformsInfo) { + const transformId = transformInfo.id; + try { + await callAsCurrentUser('transform.startTransform', { transformId } as SchemaTransformId); + results[transformId] = { success: true }; + } catch (e) { + if (isRequestTimeout(e)) { + return fillResultsWithTimeouts({ + results, + id: transformId, + items: transformsInfo, + action: TRANSFORM_ACTIONS.START, + }); + } + results[transformId] = { success: false, error: JSON.stringify(e) }; + } + } + return results; +} + +const stopTransformsHandler: RequestHandler = async (ctx, req, res) => { + const { transformsInfo } = req.body as { + transformsInfo: TransformEndpointRequest[]; + }; + + try { + return res.ok({ + body: await stopTransforms(transformsInfo, ctx.transform!.dataClient.callAsCurrentUser), + }); + } catch (e) { + return res.customError(wrapError(wrapEsError(e))); + } +}; + +async function stopTransforms( + transformsInfo: TransformEndpointRequest[], + callAsCurrentUser: CallCluster +) { + const results: TransformEndpointResult = {}; + + for (const transformInfo of transformsInfo) { + const transformId = transformInfo.id; + try { + await callAsCurrentUser('transform.stopTransform', { + transformId, + force: + transformInfo.state !== undefined + ? transformInfo.state === TRANSFORM_STATE.FAILED + : false, + waitForCompletion: true, + } as StopOptions); + results[transformId] = { success: true }; + } catch (e) { + if (isRequestTimeout(e)) { + return fillResultsWithTimeouts({ + results, + id: transformId, + items: transformsInfo, + action: TRANSFORM_ACTIONS.STOP, + }); + } + results[transformId] = { success: false, error: JSON.stringify(e) }; + } + } + return results; +} diff --git a/x-pack/plugins/transform/server/routes/api/transforms_audit_messages.ts b/x-pack/plugins/transform/server/routes/api/transforms_audit_messages.ts new file mode 100644 index 00000000000000..422fdec7ab77e0 --- /dev/null +++ b/x-pack/plugins/transform/server/routes/api/transforms_audit_messages.ts @@ -0,0 +1,91 @@ +/* + * 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 { AuditMessage } from '../../../../../legacy/plugins/transform/common/types/messages'; +import { wrapEsError } from '../../../../../legacy/server/lib/create_router/error_wrappers'; + +import { RouteDependencies } from '../../types'; + +import { addBasePath } from '../index'; + +import { wrapError } from './error_utils'; +import { schemaTransformId, SchemaTransformId } from './schema'; + +const ML_DF_NOTIFICATION_INDEX_PATTERN = '.transform-notifications-read'; +const SIZE = 500; + +interface BoolQuery { + bool: { [key: string]: any }; +} + +export function registerTransformsAuditMessagesRoutes({ router, license }: RouteDependencies) { + router.get( + { path: addBasePath('transforms/{transformId}/messages'), validate: schemaTransformId }, + license.guardApiRoute(async (ctx, req, res) => { + const { transformId } = req.params as SchemaTransformId; + + // search for audit messages, + // transformId is optional. without it, all transforms will be listed. + const query: BoolQuery = { + bool: { + filter: [ + { + bool: { + must_not: { + term: { + level: 'activity', + }, + }, + }, + }, + ], + }, + }; + + // if no transformId specified, load all of the messages + if (transformId !== undefined) { + query.bool.filter.push({ + bool: { + should: [ + { + term: { + transform_id: '', // catch system messages + }, + }, + { + term: { + transform_id: transformId, // messages for specified transformId + }, + }, + ], + }, + }); + } + + try { + const resp = await ctx.transform!.dataClient.callAsCurrentUser('search', { + index: ML_DF_NOTIFICATION_INDEX_PATTERN, + ignore_unavailable: true, + rest_total_hits_as_int: true, + size: SIZE, + body: { + sort: [{ timestamp: { order: 'desc' } }, { transform_id: { order: 'asc' } }], + query, + }, + }); + + let messages = []; + if (resp.hits.total !== 0) { + messages = resp.hits.hits.map((hit: AuditMessage) => hit._source); + messages.reverse(); + } + return res.ok({ body: messages }); + } catch (e) { + return res.customError(wrapError(wrapEsError(e))); + } + }) + ); +} diff --git a/x-pack/plugins/transform/server/routes/index.ts b/x-pack/plugins/transform/server/routes/index.ts new file mode 100644 index 00000000000000..953490920cbcb1 --- /dev/null +++ b/x-pack/plugins/transform/server/routes/index.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 { RouteDependencies } from '../types'; + +import { registerPrivilegesRoute } from './api/privileges'; +import { registerTransformsRoutes } from './api/transforms'; + +import { API_BASE_PATH } from '../../../../legacy/plugins/transform/common/constants'; + +export const addBasePath = (uri: string): string => `${API_BASE_PATH}${uri}`; + +export class ApiRoutes { + setup(dependencies: RouteDependencies) { + registerPrivilegesRoute(dependencies); + registerTransformsRoutes(dependencies); + } + + start() {} + stop() {} +} diff --git a/x-pack/plugins/transform/server/services/index.ts b/x-pack/plugins/transform/server/services/index.ts new file mode 100644 index 00000000000000..b7a45e59549eb7 --- /dev/null +++ b/x-pack/plugins/transform/server/services/index.ts @@ -0,0 +1,7 @@ +/* + * 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 { License } from './license'; diff --git a/x-pack/plugins/transform/server/services/license.ts b/x-pack/plugins/transform/server/services/license.ts new file mode 100644 index 00000000000000..93346160c6f446 --- /dev/null +++ b/x-pack/plugins/transform/server/services/license.ts @@ -0,0 +1,91 @@ +/* + * 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 { + IKibanaResponse, + KibanaRequest, + KibanaResponseFactory, + RequestHandler, + RequestHandlerContext, +} from 'kibana/server'; + +import { LicensingPluginSetup, LicenseType, LICENSE_CHECK_STATE } from '../../../licensing/server'; + +export interface LicenseStatus { + isValid: boolean; + isSecurityEnabled: boolean; + message?: string; +} + +interface SetupSettings { + pluginId: string; + minimumLicenseType: LicenseType; + defaultErrorMessage: string; +} + +export class License { + private licenseStatus: LicenseStatus = { + isValid: false, + isSecurityEnabled: false, + message: 'Invalid License', + }; + + setup( + { pluginId, minimumLicenseType, defaultErrorMessage }: SetupSettings, + { licensing, logger }: { licensing: LicensingPluginSetup; logger: Logger } + ) { + licensing.license$.subscribe(license => { + const { state, message } = license.check(pluginId, minimumLicenseType); + const hasRequiredLicense = state === LICENSE_CHECK_STATE.Valid; + + const securityFeature = license.getFeature('security'); + const isSecurityEnabled = + securityFeature !== undefined && + securityFeature.isAvailable === true && + securityFeature.isEnabled === true; + + if (hasRequiredLicense) { + this.licenseStatus = { isValid: true, isSecurityEnabled }; + } else { + this.licenseStatus = { + isValid: false, + isSecurityEnabled, + message: message || defaultErrorMessage, + }; + if (message) { + logger.info(message); + } + } + }); + } + + guardApiRoute(handler: RequestHandler<unknown, unknown, any, any>) { + const license = this; + + return function licenseCheck( + ctx: RequestHandlerContext, + request: KibanaRequest, + response: KibanaResponseFactory + ): IKibanaResponse<any> | Promise<IKibanaResponse<any>> { + const licenseStatus = license.getStatus(); + + if (!licenseStatus.isValid) { + return response.customError({ + body: { + message: licenseStatus.message || '', + }, + statusCode: 403, + }); + } + + return handler(ctx, request, response); + }; + } + + getStatus() { + return this.licenseStatus; + } +} diff --git a/x-pack/plugins/transform/server/types.ts b/x-pack/plugins/transform/server/types.ts new file mode 100644 index 00000000000000..5fcc23a6d9f484 --- /dev/null +++ b/x-pack/plugins/transform/server/types.ts @@ -0,0 +1,18 @@ +/* + * 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 } from 'src/core/server'; +import { LicensingPluginSetup } from '../../licensing/server'; +import { License } from './services'; + +export interface Dependencies { + licensing: LicensingPluginSetup; +} + +export interface RouteDependencies { + router: IRouter; + license: License; +} From 4712faefb76facc4c7ae400aa140fe2a0ac0dfde Mon Sep 17 00:00:00 2001 From: Jean-Louis Leysens <jloleysens@gmail.com> Date: Tue, 3 Mar 2020 09:06:00 +0100 Subject: [PATCH 039/120] Fix the namespace for indices autocompletion (#59043) --- .../spec_definitions/spec/overrides/indices.put_settings.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.put_settings.json b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.put_settings.json index 78a5bbdbcf6c2b..2e1e3024665a4a 100644 --- a/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.put_settings.json +++ b/src/plugins/console/server/lib/spec_definitions/spec/overrides/indices.put_settings.json @@ -1,5 +1,5 @@ { - "put_settings": { + "indices.put_settings": { "data_autocomplete_rules": { "refresh_interval": "1s", "number_of_shards": 1, @@ -105,4 +105,4 @@ } } } -} \ No newline at end of file +} From 166716a405d737bdb33b6c4a5cc75107a59d80b4 Mon Sep 17 00:00:00 2001 From: Daniil Suleiman <31325372+sulemanof@users.noreply.github.com> Date: Tue, 3 Mar 2020 12:39:52 +0300 Subject: [PATCH 040/120] [Visualize] Move linked search to react component (#58590) * Move linked_search to react * Use i18n from start contract * Move linked search to the editor * Updating layout and fixing truncation * Fix functional test, add a tooltip Co-authored-by: Caroline Horn <549577+cchaos@users.noreply.github.com> --- .../visualize/np_ready/editor/_editor.scss | 4 - .../visualize/np_ready/editor/editor.html | 24 --- .../visualize/np_ready/editor/editor.js | 20 +- .../np_ready/editor/visualization_editor.js | 1 + .../public/visualize/np_ready/types.d.ts | 4 + .../vis_default_editor/public/_sidebar.scss | 6 +- .../public/components/sidebar/sidebar.tsx | 26 +-- .../components/sidebar/sidebar_title.tsx | 175 ++++++++++++++++++ .../public/default_editor.tsx | 5 +- .../functional/page_objects/visualize_page.ts | 3 +- .../translations/translations/ja-JP.json | 2 - .../translations/translations/zh-CN.json | 2 - 12 files changed, 216 insertions(+), 56 deletions(-) create mode 100644 src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx diff --git a/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/_editor.scss b/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/_editor.scss index 2f48ecc322fea5..3a542cacc44be2 100644 --- a/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/_editor.scss +++ b/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/_editor.scss @@ -22,10 +22,6 @@ a tilemap in an iframe: https://github.com/elastic/kibana/issues/16457 */ } } -.visEditor__linkedMessage { - padding: $euiSizeS; -} - .visEditor__content { @include flex-parent(); width: 100%; diff --git a/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.html b/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.html index 4979d9dc89a0ce..9dbb05ea95b487 100644 --- a/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.html +++ b/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.html @@ -1,28 +1,4 @@ <visualize-app class="app-container visEditor visEditor--{{ vis.type.name }}"> - <!-- Linked search. --> - <div - ng-show="isVisible" - ng-if="vis.type.requiresSearch && linked" - class="fullWidth visEditor__linkedMessage" - > - <div class="kuiVerticalRhythmSmall"> - {{ ::'kbn.visualize.linkedToSearchInfoText' | i18n: { defaultMessage: 'Linked to Saved Search' } }} - <a - href="#/discover/{{savedVis.savedSearch.id}}" - > - {{ savedVis.savedSearch.title }} - </a> -   - <a - data-test-subj="unlinkSavedSearch" - href="" - ng-dblclick="unlink()" - tooltip="{{ ::'kbn.visualize.linkedToSearch.unlinkButtonTooltip' | i18n: { defaultMessage: 'Double click to unlink from Saved Search' } }}" - > - <span aria-hidden="true" class="kuiIcon fa-chain-broken"></span> - </a> - </div> - </div> <!-- Local nav. diff --git a/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.js b/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.js index 2137e413451d2d..293327f3f72f9f 100644 --- a/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.js +++ b/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.js @@ -551,6 +551,20 @@ function VisualizeAppController( updateStateFromSavedQuery(newSavedQuery); }); + $scope.$watch('linked', linked => { + if (linked && !savedVis.savedSearchId) { + savedVis.savedSearchId = savedVis.searchSource.id; + vis.savedSearchId = savedVis.searchSource.id; + + $scope.$broadcast('render'); + } else if (!linked && savedVis.savedSearchId) { + delete savedVis.savedSearchId; + delete vis.savedSearchId; + + $scope.$broadcast('render'); + } + }); + /** * Called when the user clicks "Save" button. */ @@ -638,9 +652,7 @@ function VisualizeAppController( ); } - $scope.unlink = function() { - if (!$scope.linked) return; - + const unlinkFromSavedSearch = () => { const searchSourceParent = searchSource.getParent(); const searchSourceGrandparent = searchSourceParent.getParent(); @@ -681,6 +693,8 @@ function VisualizeAppController( ); }; + vis.on('unlinkFromSavedSearch', unlinkFromSavedSearch); + addHelpMenuToAppChrome(chrome, docLinks); init(); diff --git a/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/visualization_editor.js b/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/visualization_editor.js index 65c25b8cf705d2..f2d9cbe2ad84c9 100644 --- a/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/visualization_editor.js +++ b/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/visualization_editor.js @@ -43,6 +43,7 @@ export function initVisEditorDirective(app, deps) { filters: $scope.filters, query: $scope.query, appState: $scope.appState, + linked: !!$scope.savedObj.savedSearchId, }); }; diff --git a/src/legacy/core_plugins/kibana/public/visualize/np_ready/types.d.ts b/src/legacy/core_plugins/kibana/public/visualize/np_ready/types.d.ts index d95939170419b7..8ca603eb114590 100644 --- a/src/legacy/core_plugins/kibana/public/visualize/np_ready/types.d.ts +++ b/src/legacy/core_plugins/kibana/public/visualize/np_ready/types.d.ts @@ -59,6 +59,10 @@ export interface EditorRenderProps { uiState: PersistedState; timeRange: TimeRange; query?: Query; + /** + * Flag to determine if visualiztion is linked to the saved search + */ + linked: boolean; } export interface SavedVisualizations { diff --git a/src/legacy/core_plugins/vis_default_editor/public/_sidebar.scss b/src/legacy/core_plugins/vis_default_editor/public/_sidebar.scss index a38c729cb4622c..ed92dc1dae8849 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/_sidebar.scss +++ b/src/legacy/core_plugins/vis_default_editor/public/_sidebar.scss @@ -33,8 +33,7 @@ // NAVIGATION // -.visEditorSidebar__indexPattern { - @include euiTextTruncate; +.visEditorSidebar__titleContainer { padding: $euiSizeS $euiSizeXL $euiSizeS $euiSizeS; // Extra padding on the right for the collapse button } @@ -43,7 +42,8 @@ border-bottom: $euiBorderThin; } -.visEditorSidebar__nav { +.visEditorSidebar__nav, +.visEditorSidebar__linkedSearch { flex-grow: 0; } diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar.tsx b/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar.tsx index d3b843eaaec9f2..425245fe91fed9 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar.tsx +++ b/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar.tsx @@ -20,13 +20,16 @@ import React, { useMemo, useState, useCallback, KeyboardEventHandler, useEffect } from 'react'; import { get, isEqual } from 'lodash'; import { i18n } from '@kbn/i18n'; -import { keyCodes, EuiButtonIcon, EuiFlexGroup, EuiFlexItem, EuiTitle } from '@elastic/eui'; +import { keyCodes, EuiButtonIcon, EuiFlexGroup, EuiFlexItem } from '@elastic/eui'; + import { Vis } from 'src/legacy/core_plugins/visualizations/public'; import { AggGroupNames } from '../../legacy_imports'; 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 { SavedSearch } from '../../../../kibana/public/discover/np_ready/types'; import { PersistedState } from '../../../../../../plugins/visualizations/public'; interface DefaultEditorSideBarProps { @@ -35,6 +38,8 @@ interface DefaultEditorSideBarProps { optionTabs: OptionTab[]; uiState: PersistedState; vis: Vis; + isLinkedSearch: boolean; + savedSearch?: SavedSearch; } function DefaultEditorSideBar({ @@ -43,6 +48,8 @@ function DefaultEditorSideBar({ optionTabs, uiState, vis, + isLinkedSearch, + savedSearch, }: DefaultEditorSideBarProps) { const [selectedTab, setSelectedTab] = useState(optionTabs[0].name); const [isDirty, setDirty] = useState(false); @@ -161,21 +168,8 @@ function DefaultEditorSideBar({ name="visualizeEditor" onKeyDownCapture={onSubmit} > - {vis.type.requiresSearch && vis.type.options.showIndexSelection ? ( - <EuiTitle size="xs" className="visEditorSidebar__indexPattern"> - <h2 - title={i18n.translate('visDefaultEditor.sidebar.indexPatternAriaLabel', { - defaultMessage: 'Index pattern: {title}', - values: { - title: vis.indexPattern.title, - }, - })} - > - {vis.indexPattern.title} - </h2> - </EuiTitle> - ) : ( - <div className="visEditorSidebar__indexPatternPlaceholder" /> + {vis.type.requiresSearch && ( + <SidebarTitle isLinkedSearch={isLinkedSearch} savedSearch={savedSearch} vis={vis} /> )} {optionTabs.length > 1 && ( diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx b/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx new file mode 100644 index 00000000000000..3fd82f1c4a2b67 --- /dev/null +++ b/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx @@ -0,0 +1,175 @@ +/* + * 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 React, { useCallback, useState } from 'react'; +import { + EuiButton, + EuiButtonEmpty, + EuiButtonIcon, + EuiFlexGroup, + EuiFlexItem, + EuiIcon, + EuiPopover, + EuiPopoverTitle, + EuiText, + EuiTitle, + EuiToolTip, +} from '@elastic/eui'; +import { FormattedMessage } from '@kbn/i18n/react'; +import { i18n } from '@kbn/i18n'; + +import { Vis } from 'src/legacy/core_plugins/visualizations/public'; +import { SavedSearch } from '../../../../kibana/public/discover/np_ready/types'; + +interface LinkedSearchProps { + savedSearch: SavedSearch; + vis: Vis; +} + +interface SidebarTitleProps { + isLinkedSearch: boolean; + savedSearch?: SavedSearch; + vis: Vis; +} + +export function LinkedSearch({ savedSearch, vis }: LinkedSearchProps) { + const [showPopover, setShowPopover] = useState(false); + const closePopover = useCallback(() => setShowPopover(false), []); + const onClickButtonLink = useCallback(() => setShowPopover(v => !v), []); + const onClickUnlikFromSavedSearch = useCallback(() => { + setShowPopover(false); + vis.emit('unlinkFromSavedSearch'); + }, [vis]); + + const linkButtonAriaLabel = i18n.translate( + 'visDefaultEditor.sidebar.savedSearch.linkButtonAriaLabel', + { + defaultMessage: 'Link to saved search. Click to learn more or break link.', + } + ); + + return ( + <EuiFlexGroup + alignItems="center" + className="visEditorSidebar__titleContainer visEditorSidebar__linkedSearch" + gutterSize="xs" + responsive={false} + > + <EuiFlexItem grow={false}> + <EuiIcon type="search" /> + </EuiFlexItem> + + <EuiFlexItem grow={false} className="eui-textTruncate"> + <EuiTitle size="xs" className="eui-textTruncate"> + <h2 + title={i18n.translate('visDefaultEditor.sidebar.savedSearch.titleAriaLabel', { + defaultMessage: 'Saved search: {title}', + values: { + title: savedSearch.title, + }, + })} + > + {savedSearch.title} + </h2> + </EuiTitle> + </EuiFlexItem> + + <EuiFlexItem grow={false}> + <EuiPopover + anchorPosition="downRight" + button={ + <EuiToolTip content={linkButtonAriaLabel}> + <EuiButtonIcon + aria-label={linkButtonAriaLabel} + data-test-subj="showUnlinkSavedSearchPopover" + iconType="link" + onClick={onClickButtonLink} + /> + </EuiToolTip> + } + isOpen={showPopover} + closePopover={closePopover} + panelPaddingSize="s" + > + <EuiPopoverTitle> + <FormattedMessage + id="visDefaultEditor.sidebar.savedSearch.popoverTitle" + defaultMessage="Linked to saved search" + /> + </EuiPopoverTitle> + <div style={{ width: 260 }}> + <EuiText size="s"> + <p> + <EuiButtonEmpty flush="left" href={`#/discover/${savedSearch.id}`} size="xs"> + <FormattedMessage + id="visDefaultEditor.sidebar.savedSearch.goToDiscoverButtonText" + defaultMessage="View this search in Discover" + /> + </EuiButtonEmpty> + </p> + <p> + <FormattedMessage + id="visDefaultEditor.sidebar.savedSearch.popoverHelpText" + defaultMessage="Subsequent modifications to this saved search are reflected in the visualization. To disable automatic updates, remove the link." + /> + </p> + <p> + <EuiButton + color="danger" + data-test-subj="unlinkSavedSearch" + fullWidth + onClick={onClickUnlikFromSavedSearch} + size="s" + > + <FormattedMessage + id="visDefaultEditor.sidebar.savedSearch.unlinkSavedSearchButtonText" + defaultMessage="Remove link to saved search" + /> + </EuiButton> + </p> + </EuiText> + </div> + </EuiPopover> + </EuiFlexItem> + </EuiFlexGroup> + ); +} + +function SidebarTitle({ savedSearch, vis, isLinkedSearch }: SidebarTitleProps) { + return isLinkedSearch && savedSearch ? ( + <LinkedSearch savedSearch={savedSearch} vis={vis} /> + ) : vis.type.options.showIndexSelection ? ( + <EuiTitle size="xs" className="visEditorSidebar__titleContainer eui-textTruncate"> + <h2 + title={i18n.translate('visDefaultEditor.sidebar.indexPatternAriaLabel', { + defaultMessage: 'Index pattern: {title}', + values: { + title: vis.indexPattern.title, + }, + })} + > + {vis.indexPattern.title} + </h2> + </EuiTitle> + ) : ( + <div className="visEditorSidebar__indexPatternPlaceholder" /> + ); +} + +export { SidebarTitle }; diff --git a/src/legacy/core_plugins/vis_default_editor/public/default_editor.tsx b/src/legacy/core_plugins/vis_default_editor/public/default_editor.tsx index 7eee54006f6844..fa3213d244e7e5 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/default_editor.tsx +++ b/src/legacy/core_plugins/vis_default_editor/public/default_editor.tsx @@ -40,12 +40,13 @@ function DefaultEditor({ appState, optionTabs, query, + linked, }: DefaultEditorControllerState & Omit<EditorRenderProps, 'data' | 'core'>) { const visRef = useRef<HTMLDivElement>(null); const visHandler = useRef<VisualizeEmbeddable | null>(null); const [isCollapsed, setIsCollapsed] = useState(false); const [factory, setFactory] = useState<VisualizeEmbeddableFactory | null>(null); - const { vis } = savedObj; + const { vis, savedSearch } = savedObj; const onClickCollapse = useCallback(() => { setIsCollapsed(value => !value); @@ -117,6 +118,8 @@ function DefaultEditor({ optionTabs={optionTabs} vis={vis} uiState={uiState} + isLinkedSearch={linked} + savedSearch={savedSearch} /> </Panel> </PanelsContainer> diff --git a/test/functional/page_objects/visualize_page.ts b/test/functional/page_objects/visualize_page.ts index e54e3d1d011540..82ef3dc800f6c5 100644 --- a/test/functional/page_objects/visualize_page.ts +++ b/test/functional/page_objects/visualize_page.ts @@ -209,7 +209,8 @@ export function VisualizePageProvider({ getService, getPageObjects }: FtrProvide } public async clickUnlinkSavedSearch() { - await testSubjects.doubleClick('unlinkSavedSearch'); + await testSubjects.click('showUnlinkSavedSearchPopover'); + await testSubjects.click('unlinkSavedSearch'); await header.waitUntilLoadingHasFinished(); } diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index a97cf608abc712..cadebcad935106 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -1568,9 +1568,7 @@ "kbn.visualize.createVisualization.noIndexPatternOrSavedSearchIdErrorMessage": "indexPattern または savedSearchId が必要です", "kbn.visualize.editor.createBreadcrumb": "作成", "kbn.visualize.experimentalVisInfoText": "このビジュアライゼーションは実験的なものです。", - "kbn.visualize.linkedToSearch.unlinkButtonTooltip": "保存された検索からリンクを解除するにはダブルクリックします", "kbn.visualize.linkedToSearch.unlinkSuccessNotificationText": "保存された検索「{searchTitle}」からリンクが解除されました", - "kbn.visualize.linkedToSearchInfoText": "保存された検索にリンクされています", "kbn.visualize.listing.betaTitle": "ベータ", "kbn.visualize.listing.betaTooltip": "このビジュアライゼーションはベータ段階で、変更される可能性があります。デザインとコードはオフィシャル GA 機能よりも完成度が低く、現状のまま保証なしで提供されています。ベータ機能にはオフィシャル GA 機能の SLA が適用されません", "kbn.visualize.listing.breadcrumb": "可視化", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index e6055680e1240b..ff72f20b248644 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -1568,9 +1568,7 @@ "kbn.visualize.createVisualization.noIndexPatternOrSavedSearchIdErrorMessage": "必须提供 indexPattern 或 savedSearchId", "kbn.visualize.editor.createBreadcrumb": "创建", "kbn.visualize.experimentalVisInfoText": "此可视化标记为“实验”。", - "kbn.visualize.linkedToSearch.unlinkButtonTooltip": "双击可取消与“已保存搜索”的链接", "kbn.visualize.linkedToSearch.unlinkSuccessNotificationText": "取消与已保存搜索 “{searchTitle}” 的链接", - "kbn.visualize.linkedToSearchInfoText": "链接到“已保存搜索”", "kbn.visualize.listing.betaTitle": "公测版", "kbn.visualize.listing.betaTooltip": "此可视化为公测版,可能会进行更改。设计和代码相对于正式发行版功能还不够成熟,将按原样提供,且不提供任何保证。公测版功能不受正式发行版功能支持 SLA 的约束", "kbn.visualize.listing.breadcrumb": "可视化", From 64ffae3ec5f5b5c977c4b0702ead681866bf4972 Mon Sep 17 00:00:00 2001 From: Pierre Gayvallet <pierre.gayvallet@elastic.co> Date: Tue, 3 Mar 2020 10:54:03 +0100 Subject: [PATCH 041/120] Add core metrics service (#58623) * create base service and collectors * wire the service into server, add mock * add collector tests * add main collector test * export metric types from server * add service and server tests * updates generated doc * improve doc * nits and comments * add disconnected requests test --- .../core/server/kibana-plugin-server.md | 5 + ...rver.metricsservicesetup.getopsmetrics_.md | 24 +++ ...ibana-plugin-server.metricsservicesetup.md | 20 ++ ...erver.opsmetrics.concurrent_connections.md | 13 ++ .../server/kibana-plugin-server.opsmetrics.md | 24 +++ .../kibana-plugin-server.opsmetrics.os.md | 13 ++ ...kibana-plugin-server.opsmetrics.process.md | 13 ++ ...ibana-plugin-server.opsmetrics.requests.md | 13 ++ ...plugin-server.opsmetrics.response_times.md | 13 ++ ...ibana-plugin-server.opsosmetrics.distro.md | 13 ++ ...lugin-server.opsosmetrics.distrorelease.md | 13 ++ .../kibana-plugin-server.opsosmetrics.load.md | 17 ++ .../kibana-plugin-server.opsosmetrics.md | 26 +++ ...ibana-plugin-server.opsosmetrics.memory.md | 17 ++ ...ana-plugin-server.opsosmetrics.platform.md | 13 ++ ...gin-server.opsosmetrics.platformrelease.md | 13 ++ ...in-server.opsosmetrics.uptime_in_millis.md | 13 ++ ...rver.opsprocessmetrics.event_loop_delay.md | 13 ++ .../kibana-plugin-server.opsprocessmetrics.md | 23 +++ ...-plugin-server.opsprocessmetrics.memory.md | 20 ++ ...ana-plugin-server.opsprocessmetrics.pid.md | 13 ++ ...rver.opsprocessmetrics.uptime_in_millis.md | 13 ++ ...opsservermetrics.concurrent_connections.md | 13 ++ .../kibana-plugin-server.opsservermetrics.md | 22 +++ ...plugin-server.opsservermetrics.requests.md | 17 ++ ...-server.opsservermetrics.response_times.md | 16 ++ package.json | 1 + src/core/server/index.ts | 8 + src/core/server/internal_types.ts | 2 + src/core/server/legacy/legacy_service.test.ts | 2 + src/core/server/metrics/collectors/index.ts | 23 +++ src/core/server/metrics/collectors/os.test.ts | 99 ++++++++++ src/core/server/metrics/collectors/os.ts | 60 ++++++ .../server/metrics/collectors/process.test.ts | 81 ++++++++ src/core/server/metrics/collectors/process.ts | 52 +++++ src/core/server/metrics/collectors/server.ts | 80 ++++++++ src/core/server/metrics/collectors/types.ts | 110 +++++++++++ src/core/server/metrics/index.ts | 29 +++ .../server_collector.test.ts | 183 ++++++++++++++++++ .../server/metrics/metrics_service.mock.ts | 67 +++++++ .../metrics/metrics_service.test.mocks.ts | 25 +++ .../server/metrics/metrics_service.test.ts | 134 +++++++++++++ src/core/server/metrics/metrics_service.ts | 86 ++++++++ src/core/server/metrics/ops_config.ts | 29 +++ .../ops_metrics_collector.test.mocks.ts | 39 ++++ .../metrics/ops_metrics_collector.test.ts | 59 ++++++ .../server/metrics/ops_metrics_collector.ts | 52 +++++ src/core/server/metrics/types.ts | 66 +++++++ src/core/server/mocks.ts | 5 +- src/core/server/server.api.md | 62 ++++++ src/core/server/server.test.mocks.ts | 6 + src/core/server/server.test.ts | 9 + src/core/server/server.ts | 9 + 53 files changed, 1790 insertions(+), 1 deletion(-) create mode 100644 docs/development/core/server/kibana-plugin-server.metricsservicesetup.getopsmetrics_.md create mode 100644 docs/development/core/server/kibana-plugin-server.metricsservicesetup.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsmetrics.concurrent_connections.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsmetrics.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsmetrics.os.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsmetrics.process.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsmetrics.requests.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsmetrics.response_times.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsosmetrics.distro.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsosmetrics.distrorelease.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsosmetrics.load.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsosmetrics.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsosmetrics.memory.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsosmetrics.platform.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsosmetrics.platformrelease.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsosmetrics.uptime_in_millis.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsprocessmetrics.event_loop_delay.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsprocessmetrics.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsprocessmetrics.memory.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsprocessmetrics.pid.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsprocessmetrics.uptime_in_millis.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsservermetrics.concurrent_connections.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsservermetrics.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsservermetrics.requests.md create mode 100644 docs/development/core/server/kibana-plugin-server.opsservermetrics.response_times.md create mode 100644 src/core/server/metrics/collectors/index.ts create mode 100644 src/core/server/metrics/collectors/os.test.ts create mode 100644 src/core/server/metrics/collectors/os.ts create mode 100644 src/core/server/metrics/collectors/process.test.ts create mode 100644 src/core/server/metrics/collectors/process.ts create mode 100644 src/core/server/metrics/collectors/server.ts create mode 100644 src/core/server/metrics/collectors/types.ts create mode 100644 src/core/server/metrics/index.ts create mode 100644 src/core/server/metrics/integration_tests/server_collector.test.ts create mode 100644 src/core/server/metrics/metrics_service.mock.ts create mode 100644 src/core/server/metrics/metrics_service.test.mocks.ts create mode 100644 src/core/server/metrics/metrics_service.test.ts create mode 100644 src/core/server/metrics/metrics_service.ts create mode 100644 src/core/server/metrics/ops_config.ts create mode 100644 src/core/server/metrics/ops_metrics_collector.test.mocks.ts create mode 100644 src/core/server/metrics/ops_metrics_collector.test.ts create mode 100644 src/core/server/metrics/ops_metrics_collector.ts create mode 100644 src/core/server/metrics/types.ts diff --git a/docs/development/core/server/kibana-plugin-server.md b/docs/development/core/server/kibana-plugin-server.md index 15a1fd05062568..c948c899207968 100644 --- a/docs/development/core/server/kibana-plugin-server.md +++ b/docs/development/core/server/kibana-plugin-server.md @@ -88,11 +88,16 @@ The plugin integrates with the core system via lifecycle events: `setup`<!-- --> | [Logger](./kibana-plugin-server.logger.md) | Logger exposes all the necessary methods to log any type of information and this is the interface used by the logging consumers including plugins. | | [LoggerFactory](./kibana-plugin-server.loggerfactory.md) | The single purpose of <code>LoggerFactory</code> interface is to define a way to retrieve a context-based logger instance. | | [LogMeta](./kibana-plugin-server.logmeta.md) | Contextual metadata | +| [MetricsServiceSetup](./kibana-plugin-server.metricsservicesetup.md) | APIs to retrieves metrics gathered and exposed by the core platform. | | [OnPostAuthToolkit](./kibana-plugin-server.onpostauthtoolkit.md) | A tool set defining an outcome of OnPostAuth interceptor for incoming request. | | [OnPreAuthToolkit](./kibana-plugin-server.onpreauthtoolkit.md) | A tool set defining an outcome of OnPreAuth interceptor for incoming request. | | [OnPreResponseExtensions](./kibana-plugin-server.onpreresponseextensions.md) | Additional data to extend a response. | | [OnPreResponseInfo](./kibana-plugin-server.onpreresponseinfo.md) | Response status code. | | [OnPreResponseToolkit](./kibana-plugin-server.onpreresponsetoolkit.md) | A tool set defining an outcome of OnPreAuth interceptor for incoming request. | +| [OpsMetrics](./kibana-plugin-server.opsmetrics.md) | Regroups metrics gathered by all the collectors. This contains metrics about the os/runtime, the kibana process and the http server. | +| [OpsOsMetrics](./kibana-plugin-server.opsosmetrics.md) | OS related metrics | +| [OpsProcessMetrics](./kibana-plugin-server.opsprocessmetrics.md) | Process related metrics | +| [OpsServerMetrics](./kibana-plugin-server.opsservermetrics.md) | server related metrics | | [PackageInfo](./kibana-plugin-server.packageinfo.md) | | | [Plugin](./kibana-plugin-server.plugin.md) | The interface that should be returned by a <code>PluginInitializer</code>. | | [PluginConfigDescriptor](./kibana-plugin-server.pluginconfigdescriptor.md) | Describes a plugin configuration properties. | diff --git a/docs/development/core/server/kibana-plugin-server.metricsservicesetup.getopsmetrics_.md b/docs/development/core/server/kibana-plugin-server.metricsservicesetup.getopsmetrics_.md new file mode 100644 index 00000000000000..454b8c905451ee --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.metricsservicesetup.getopsmetrics_.md @@ -0,0 +1,24 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [MetricsServiceSetup](./kibana-plugin-server.metricsservicesetup.md) > [getOpsMetrics$](./kibana-plugin-server.metricsservicesetup.getopsmetrics_.md) + +## MetricsServiceSetup.getOpsMetrics$ property + +Retrieve an observable emitting the [OpsMetrics](./kibana-plugin-server.opsmetrics.md) gathered. The observable will emit an initial value during core's `start` phase, and a new value every fixed interval of time, based on the `opts.interval` configuration property. + +<b>Signature:</b> + +```typescript +getOpsMetrics$: () => Observable<OpsMetrics>; +``` + +## Example + + +```ts +core.metrics.getOpsMetrics$().subscribe(metrics => { + // do something with the metrics +}) + +``` + diff --git a/docs/development/core/server/kibana-plugin-server.metricsservicesetup.md b/docs/development/core/server/kibana-plugin-server.metricsservicesetup.md new file mode 100644 index 00000000000000..270c56402a390d --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.metricsservicesetup.md @@ -0,0 +1,20 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [MetricsServiceSetup](./kibana-plugin-server.metricsservicesetup.md) + +## MetricsServiceSetup interface + +APIs to retrieves metrics gathered and exposed by the core platform. + +<b>Signature:</b> + +```typescript +export interface MetricsServiceSetup +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [getOpsMetrics$](./kibana-plugin-server.metricsservicesetup.getopsmetrics_.md) | <code>() => Observable<OpsMetrics></code> | Retrieve an observable emitting the [OpsMetrics](./kibana-plugin-server.opsmetrics.md) gathered. The observable will emit an initial value during core's <code>start</code> phase, and a new value every fixed interval of time, based on the <code>opts.interval</code> configuration property. | + diff --git a/docs/development/core/server/kibana-plugin-server.opsmetrics.concurrent_connections.md b/docs/development/core/server/kibana-plugin-server.opsmetrics.concurrent_connections.md new file mode 100644 index 00000000000000..cfd39a551ad349 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsmetrics.concurrent_connections.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsMetrics](./kibana-plugin-server.opsmetrics.md) > [concurrent\_connections](./kibana-plugin-server.opsmetrics.concurrent_connections.md) + +## OpsMetrics.concurrent\_connections property + +number of current concurrent connections to the server + +<b>Signature:</b> + +```typescript +concurrent_connections: OpsServerMetrics['concurrent_connections']; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsmetrics.md b/docs/development/core/server/kibana-plugin-server.opsmetrics.md new file mode 100644 index 00000000000000..e23bd8d431d3fb --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsmetrics.md @@ -0,0 +1,24 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsMetrics](./kibana-plugin-server.opsmetrics.md) + +## OpsMetrics interface + +Regroups metrics gathered by all the collectors. This contains metrics about the os/runtime, the kibana process and the http server. + +<b>Signature:</b> + +```typescript +export interface OpsMetrics +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [concurrent\_connections](./kibana-plugin-server.opsmetrics.concurrent_connections.md) | <code>OpsServerMetrics['concurrent_connections']</code> | number of current concurrent connections to the server | +| [os](./kibana-plugin-server.opsmetrics.os.md) | <code>OpsOsMetrics</code> | OS related metrics | +| [process](./kibana-plugin-server.opsmetrics.process.md) | <code>OpsProcessMetrics</code> | Process related metrics | +| [requests](./kibana-plugin-server.opsmetrics.requests.md) | <code>OpsServerMetrics['requests']</code> | server requests stats | +| [response\_times](./kibana-plugin-server.opsmetrics.response_times.md) | <code>OpsServerMetrics['response_times']</code> | server response time stats | + diff --git a/docs/development/core/server/kibana-plugin-server.opsmetrics.os.md b/docs/development/core/server/kibana-plugin-server.opsmetrics.os.md new file mode 100644 index 00000000000000..993a1d7a2d7b79 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsmetrics.os.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsMetrics](./kibana-plugin-server.opsmetrics.md) > [os](./kibana-plugin-server.opsmetrics.os.md) + +## OpsMetrics.os property + +OS related metrics + +<b>Signature:</b> + +```typescript +os: OpsOsMetrics; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsmetrics.process.md b/docs/development/core/server/kibana-plugin-server.opsmetrics.process.md new file mode 100644 index 00000000000000..53d3a33d66e06a --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsmetrics.process.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsMetrics](./kibana-plugin-server.opsmetrics.md) > [process](./kibana-plugin-server.opsmetrics.process.md) + +## OpsMetrics.process property + +Process related metrics + +<b>Signature:</b> + +```typescript +process: OpsProcessMetrics; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsmetrics.requests.md b/docs/development/core/server/kibana-plugin-server.opsmetrics.requests.md new file mode 100644 index 00000000000000..9cd6b85e507f0c --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsmetrics.requests.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsMetrics](./kibana-plugin-server.opsmetrics.md) > [requests](./kibana-plugin-server.opsmetrics.requests.md) + +## OpsMetrics.requests property + +server requests stats + +<b>Signature:</b> + +```typescript +requests: OpsServerMetrics['requests']; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsmetrics.response_times.md b/docs/development/core/server/kibana-plugin-server.opsmetrics.response_times.md new file mode 100644 index 00000000000000..358699071b1c3b --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsmetrics.response_times.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsMetrics](./kibana-plugin-server.opsmetrics.md) > [response\_times](./kibana-plugin-server.opsmetrics.response_times.md) + +## OpsMetrics.response\_times property + +server response time stats + +<b>Signature:</b> + +```typescript +response_times: OpsServerMetrics['response_times']; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsosmetrics.distro.md b/docs/development/core/server/kibana-plugin-server.opsosmetrics.distro.md new file mode 100644 index 00000000000000..338164f173d025 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsosmetrics.distro.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsOsMetrics](./kibana-plugin-server.opsosmetrics.md) > [distro](./kibana-plugin-server.opsosmetrics.distro.md) + +## OpsOsMetrics.distro property + +The os distrib. Only present for linux platforms + +<b>Signature:</b> + +```typescript +distro?: string; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsosmetrics.distrorelease.md b/docs/development/core/server/kibana-plugin-server.opsosmetrics.distrorelease.md new file mode 100644 index 00000000000000..24c5a1f00b64c9 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsosmetrics.distrorelease.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsOsMetrics](./kibana-plugin-server.opsosmetrics.md) > [distroRelease](./kibana-plugin-server.opsosmetrics.distrorelease.md) + +## OpsOsMetrics.distroRelease property + +The os distrib release, prefixed by the os distrib. Only present for linux platforms + +<b>Signature:</b> + +```typescript +distroRelease?: string; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsosmetrics.load.md b/docs/development/core/server/kibana-plugin-server.opsosmetrics.load.md new file mode 100644 index 00000000000000..0bf17502ce34e4 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsosmetrics.load.md @@ -0,0 +1,17 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsOsMetrics](./kibana-plugin-server.opsosmetrics.md) > [load](./kibana-plugin-server.opsosmetrics.load.md) + +## OpsOsMetrics.load property + +cpu load metrics + +<b>Signature:</b> + +```typescript +load: { + '1m': number; + '5m': number; + '15m': number; + }; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsosmetrics.md b/docs/development/core/server/kibana-plugin-server.opsosmetrics.md new file mode 100644 index 00000000000000..0fb4e59fdf539a --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsosmetrics.md @@ -0,0 +1,26 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsOsMetrics](./kibana-plugin-server.opsosmetrics.md) + +## OpsOsMetrics interface + +OS related metrics + +<b>Signature:</b> + +```typescript +export interface OpsOsMetrics +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [distro](./kibana-plugin-server.opsosmetrics.distro.md) | <code>string</code> | The os distrib. Only present for linux platforms | +| [distroRelease](./kibana-plugin-server.opsosmetrics.distrorelease.md) | <code>string</code> | The os distrib release, prefixed by the os distrib. Only present for linux platforms | +| [load](./kibana-plugin-server.opsosmetrics.load.md) | <code>{</code><br/><code> '1m': number;</code><br/><code> '5m': number;</code><br/><code> '15m': number;</code><br/><code> }</code> | cpu load metrics | +| [memory](./kibana-plugin-server.opsosmetrics.memory.md) | <code>{</code><br/><code> total_in_bytes: number;</code><br/><code> free_in_bytes: number;</code><br/><code> used_in_bytes: number;</code><br/><code> }</code> | system memory usage metrics | +| [platform](./kibana-plugin-server.opsosmetrics.platform.md) | <code>NodeJS.Platform</code> | The os platform | +| [platformRelease](./kibana-plugin-server.opsosmetrics.platformrelease.md) | <code>string</code> | The os platform release, prefixed by the platform name | +| [uptime\_in\_millis](./kibana-plugin-server.opsosmetrics.uptime_in_millis.md) | <code>number</code> | the OS uptime | + diff --git a/docs/development/core/server/kibana-plugin-server.opsosmetrics.memory.md b/docs/development/core/server/kibana-plugin-server.opsosmetrics.memory.md new file mode 100644 index 00000000000000..4a1becaeeaec71 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsosmetrics.memory.md @@ -0,0 +1,17 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsOsMetrics](./kibana-plugin-server.opsosmetrics.md) > [memory](./kibana-plugin-server.opsosmetrics.memory.md) + +## OpsOsMetrics.memory property + +system memory usage metrics + +<b>Signature:</b> + +```typescript +memory: { + total_in_bytes: number; + free_in_bytes: number; + used_in_bytes: number; + }; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsosmetrics.platform.md b/docs/development/core/server/kibana-plugin-server.opsosmetrics.platform.md new file mode 100644 index 00000000000000..411d0fc546dc0b --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsosmetrics.platform.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsOsMetrics](./kibana-plugin-server.opsosmetrics.md) > [platform](./kibana-plugin-server.opsosmetrics.platform.md) + +## OpsOsMetrics.platform property + +The os platform + +<b>Signature:</b> + +```typescript +platform: NodeJS.Platform; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsosmetrics.platformrelease.md b/docs/development/core/server/kibana-plugin-server.opsosmetrics.platformrelease.md new file mode 100644 index 00000000000000..1071b4a38f5880 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsosmetrics.platformrelease.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsOsMetrics](./kibana-plugin-server.opsosmetrics.md) > [platformRelease](./kibana-plugin-server.opsosmetrics.platformrelease.md) + +## OpsOsMetrics.platformRelease property + +The os platform release, prefixed by the platform name + +<b>Signature:</b> + +```typescript +platformRelease: string; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsosmetrics.uptime_in_millis.md b/docs/development/core/server/kibana-plugin-server.opsosmetrics.uptime_in_millis.md new file mode 100644 index 00000000000000..dfff1a1f1da0ba --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsosmetrics.uptime_in_millis.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsOsMetrics](./kibana-plugin-server.opsosmetrics.md) > [uptime\_in\_millis](./kibana-plugin-server.opsosmetrics.uptime_in_millis.md) + +## OpsOsMetrics.uptime\_in\_millis property + +the OS uptime + +<b>Signature:</b> + +```typescript +uptime_in_millis: number; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.event_loop_delay.md b/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.event_loop_delay.md new file mode 100644 index 00000000000000..f61c8b0995324d --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.event_loop_delay.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsProcessMetrics](./kibana-plugin-server.opsprocessmetrics.md) > [event\_loop\_delay](./kibana-plugin-server.opsprocessmetrics.event_loop_delay.md) + +## OpsProcessMetrics.event\_loop\_delay property + +node event loop delay + +<b>Signature:</b> + +```typescript +event_loop_delay: number; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.md b/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.md new file mode 100644 index 00000000000000..92fd8471cce7da --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.md @@ -0,0 +1,23 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsProcessMetrics](./kibana-plugin-server.opsprocessmetrics.md) + +## OpsProcessMetrics interface + +Process related metrics + +<b>Signature:</b> + +```typescript +export interface OpsProcessMetrics +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [event\_loop\_delay](./kibana-plugin-server.opsprocessmetrics.event_loop_delay.md) | <code>number</code> | node event loop delay | +| [memory](./kibana-plugin-server.opsprocessmetrics.memory.md) | <code>{</code><br/><code> heap: {</code><br/><code> total_in_bytes: number;</code><br/><code> used_in_bytes: number;</code><br/><code> size_limit: number;</code><br/><code> };</code><br/><code> resident_set_size_in_bytes: number;</code><br/><code> }</code> | process memory usage | +| [pid](./kibana-plugin-server.opsprocessmetrics.pid.md) | <code>number</code> | pid of the kibana process | +| [uptime\_in\_millis](./kibana-plugin-server.opsprocessmetrics.uptime_in_millis.md) | <code>number</code> | uptime of the kibana process | + diff --git a/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.memory.md b/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.memory.md new file mode 100644 index 00000000000000..5c1a8de70dc019 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.memory.md @@ -0,0 +1,20 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsProcessMetrics](./kibana-plugin-server.opsprocessmetrics.md) > [memory](./kibana-plugin-server.opsprocessmetrics.memory.md) + +## OpsProcessMetrics.memory property + +process memory usage + +<b>Signature:</b> + +```typescript +memory: { + heap: { + total_in_bytes: number; + used_in_bytes: number; + size_limit: number; + }; + resident_set_size_in_bytes: number; + }; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.pid.md b/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.pid.md new file mode 100644 index 00000000000000..a34187f3720188 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.pid.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsProcessMetrics](./kibana-plugin-server.opsprocessmetrics.md) > [pid](./kibana-plugin-server.opsprocessmetrics.pid.md) + +## OpsProcessMetrics.pid property + +pid of the kibana process + +<b>Signature:</b> + +```typescript +pid: number; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.uptime_in_millis.md b/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.uptime_in_millis.md new file mode 100644 index 00000000000000..24db2f017a663e --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsprocessmetrics.uptime_in_millis.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsProcessMetrics](./kibana-plugin-server.opsprocessmetrics.md) > [uptime\_in\_millis](./kibana-plugin-server.opsprocessmetrics.uptime_in_millis.md) + +## OpsProcessMetrics.uptime\_in\_millis property + +uptime of the kibana process + +<b>Signature:</b> + +```typescript +uptime_in_millis: number; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsservermetrics.concurrent_connections.md b/docs/development/core/server/kibana-plugin-server.opsservermetrics.concurrent_connections.md new file mode 100644 index 00000000000000..ade79fedfa1b5c --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsservermetrics.concurrent_connections.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsServerMetrics](./kibana-plugin-server.opsservermetrics.md) > [concurrent\_connections](./kibana-plugin-server.opsservermetrics.concurrent_connections.md) + +## OpsServerMetrics.concurrent\_connections property + +number of current concurrent connections to the server + +<b>Signature:</b> + +```typescript +concurrent_connections: number; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsservermetrics.md b/docs/development/core/server/kibana-plugin-server.opsservermetrics.md new file mode 100644 index 00000000000000..4e35c02bd9f28a --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsservermetrics.md @@ -0,0 +1,22 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsServerMetrics](./kibana-plugin-server.opsservermetrics.md) + +## OpsServerMetrics interface + +server related metrics + +<b>Signature:</b> + +```typescript +export interface OpsServerMetrics +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [concurrent\_connections](./kibana-plugin-server.opsservermetrics.concurrent_connections.md) | <code>number</code> | number of current concurrent connections to the server | +| [requests](./kibana-plugin-server.opsservermetrics.requests.md) | <code>{</code><br/><code> disconnects: number;</code><br/><code> total: number;</code><br/><code> statusCodes: Record<number, number>;</code><br/><code> }</code> | server requests stats | +| [response\_times](./kibana-plugin-server.opsservermetrics.response_times.md) | <code>{</code><br/><code> avg_in_millis: number;</code><br/><code> max_in_millis: number;</code><br/><code> }</code> | server response time stats | + diff --git a/docs/development/core/server/kibana-plugin-server.opsservermetrics.requests.md b/docs/development/core/server/kibana-plugin-server.opsservermetrics.requests.md new file mode 100644 index 00000000000000..5ad2abc8695577 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsservermetrics.requests.md @@ -0,0 +1,17 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsServerMetrics](./kibana-plugin-server.opsservermetrics.md) > [requests](./kibana-plugin-server.opsservermetrics.requests.md) + +## OpsServerMetrics.requests property + +server requests stats + +<b>Signature:</b> + +```typescript +requests: { + disconnects: number; + total: number; + statusCodes: Record<number, number>; + }; +``` diff --git a/docs/development/core/server/kibana-plugin-server.opsservermetrics.response_times.md b/docs/development/core/server/kibana-plugin-server.opsservermetrics.response_times.md new file mode 100644 index 00000000000000..5008efc6ad4da2 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.opsservermetrics.response_times.md @@ -0,0 +1,16 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [OpsServerMetrics](./kibana-plugin-server.opsservermetrics.md) > [response\_times](./kibana-plugin-server.opsservermetrics.response_times.md) + +## OpsServerMetrics.response\_times property + +server response time stats + +<b>Signature:</b> + +```typescript +response_times: { + avg_in_millis: number; + max_in_millis: number; + }; +``` diff --git a/package.json b/package.json index e727d87a83c537..2c401724c72cd0 100644 --- a/package.json +++ b/package.json @@ -323,6 +323,7 @@ "@types/fetch-mock": "^7.3.1", "@types/flot": "^0.0.31", "@types/getopts": "^2.0.1", + "@types/getos": "^3.0.0", "@types/glob": "^7.1.1", "@types/globby": "^8.0.0", "@types/graphql": "^0.13.2", diff --git a/src/core/server/index.ts b/src/core/server/index.ts index e45d4f28edcc37..de6cdb2d7acd78 100644 --- a/src/core/server/index.ts +++ b/src/core/server/index.ts @@ -245,6 +245,14 @@ export { StringValidationRegexString, } from './ui_settings'; +export { + OpsMetrics, + OpsOsMetrics, + OpsServerMetrics, + OpsProcessMetrics, + MetricsServiceSetup, +} from './metrics'; + export { RecursiveReadonly } from '../utils'; export { diff --git a/src/core/server/internal_types.ts b/src/core/server/internal_types.ts index ff68d1544d119e..37d1061dc618dc 100644 --- a/src/core/server/internal_types.ts +++ b/src/core/server/internal_types.ts @@ -30,6 +30,7 @@ import { } from './saved_objects'; import { InternalUiSettingsServiceSetup, InternalUiSettingsServiceStart } from './ui_settings'; import { UuidServiceSetup } from './uuid'; +import { InternalMetricsServiceSetup } from './metrics'; /** @internal */ export interface InternalCoreSetup { @@ -40,6 +41,7 @@ export interface InternalCoreSetup { uiSettings: InternalUiSettingsServiceSetup; savedObjects: InternalSavedObjectsServiceSetup; uuid: UuidServiceSetup; + metrics: InternalMetricsServiceSetup; } /** diff --git a/src/core/server/legacy/legacy_service.test.ts b/src/core/server/legacy/legacy_service.test.ts index 46436461505c06..50468db8a504de 100644 --- a/src/core/server/legacy/legacy_service.test.ts +++ b/src/core/server/legacy/legacy_service.test.ts @@ -43,6 +43,7 @@ import { savedObjectsServiceMock } from '../saved_objects/saved_objects_service. import { capabilitiesServiceMock } from '../capabilities/capabilities_service.mock'; import { setupMock as renderingServiceMock } from '../rendering/__mocks__/rendering_service'; import { uuidServiceMock } from '../uuid/uuid_service.mock'; +import { metricsServiceMock } from '../metrics/metrics_service.mock'; import { findLegacyPluginSpecs } from './plugins'; import { LegacyVars, LegacyServiceSetupDeps, LegacyServiceStartDeps } from './types'; import { LegacyService } from './legacy_service'; @@ -93,6 +94,7 @@ beforeEach(() => { }, }, rendering: renderingServiceMock, + metrics: metricsServiceMock.createInternalSetupContract(), uuid: uuidSetup, }, plugins: { 'plugin-id': 'plugin-value' }, diff --git a/src/core/server/metrics/collectors/index.ts b/src/core/server/metrics/collectors/index.ts new file mode 100644 index 00000000000000..f58ab02e638813 --- /dev/null +++ b/src/core/server/metrics/collectors/index.ts @@ -0,0 +1,23 @@ +/* + * 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. + */ + +export { OpsProcessMetrics, OpsOsMetrics, OpsServerMetrics, MetricsCollector } from './types'; +export { OsMetricsCollector } from './os'; +export { ProcessMetricsCollector } from './process'; +export { ServerMetricsCollector } from './server'; diff --git a/src/core/server/metrics/collectors/os.test.ts b/src/core/server/metrics/collectors/os.test.ts new file mode 100644 index 00000000000000..7d5a6da90b7d62 --- /dev/null +++ b/src/core/server/metrics/collectors/os.test.ts @@ -0,0 +1,99 @@ +/* + * 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. + */ + +jest.mock('getos', () => (cb: Function) => cb(null, { dist: 'distrib', release: 'release' })); + +import os from 'os'; +import { OsMetricsCollector } from './os'; + +describe('OsMetricsCollector', () => { + let collector: OsMetricsCollector; + + beforeEach(() => { + collector = new OsMetricsCollector(); + }); + + afterEach(() => { + jest.restoreAllMocks(); + }); + + it('collects platform info from the os package', async () => { + const platform = 'darwin'; + const release = '10.14.1'; + + jest.spyOn(os, 'platform').mockImplementation(() => platform); + jest.spyOn(os, 'release').mockImplementation(() => release); + + const metrics = await collector.collect(); + + expect(metrics.platform).toBe(platform); + expect(metrics.platformRelease).toBe(`${platform}-${release}`); + }); + + it('collects distribution info when platform is linux', async () => { + const platform = 'linux'; + + jest.spyOn(os, 'platform').mockImplementation(() => platform); + + const metrics = await collector.collect(); + + expect(metrics.distro).toBe('distrib'); + expect(metrics.distroRelease).toBe('distrib-release'); + }); + + it('collects memory info from the os package', async () => { + const totalMemory = 1457886; + const freeMemory = 456786; + + jest.spyOn(os, 'totalmem').mockImplementation(() => totalMemory); + jest.spyOn(os, 'freemem').mockImplementation(() => freeMemory); + + const metrics = await collector.collect(); + + expect(metrics.memory.total_in_bytes).toBe(totalMemory); + expect(metrics.memory.free_in_bytes).toBe(freeMemory); + expect(metrics.memory.used_in_bytes).toBe(totalMemory - freeMemory); + }); + + it('collects uptime info from the os package', async () => { + const uptime = 325; + + jest.spyOn(os, 'uptime').mockImplementation(() => uptime); + + const metrics = await collector.collect(); + + expect(metrics.uptime_in_millis).toBe(uptime * 1000); + }); + + it('collects load info from the os package', async () => { + const oneMinLoad = 1; + const fiveMinLoad = 2; + const fifteenMinLoad = 3; + + jest.spyOn(os, 'loadavg').mockImplementation(() => [oneMinLoad, fiveMinLoad, fifteenMinLoad]); + + const metrics = await collector.collect(); + + expect(metrics.load).toEqual({ + '1m': oneMinLoad, + '5m': fiveMinLoad, + '15m': fifteenMinLoad, + }); + }); +}); diff --git a/src/core/server/metrics/collectors/os.ts b/src/core/server/metrics/collectors/os.ts new file mode 100644 index 00000000000000..d3d9bb0be86fa2 --- /dev/null +++ b/src/core/server/metrics/collectors/os.ts @@ -0,0 +1,60 @@ +/* + * 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 os from 'os'; +import getosAsync, { LinuxOs } from 'getos'; +import { promisify } from 'util'; +import { OpsOsMetrics, MetricsCollector } from './types'; + +const getos = promisify(getosAsync); + +export class OsMetricsCollector implements MetricsCollector<OpsOsMetrics> { + public async collect(): Promise<OpsOsMetrics> { + const platform = os.platform(); + const load = os.loadavg(); + + const metrics: OpsOsMetrics = { + platform, + platformRelease: `${platform}-${os.release()}`, + load: { + '1m': load[0], + '5m': load[1], + '15m': load[2], + }, + memory: { + total_in_bytes: os.totalmem(), + free_in_bytes: os.freemem(), + used_in_bytes: os.totalmem() - os.freemem(), + }, + uptime_in_millis: os.uptime() * 1000, + }; + + if (platform === 'linux') { + try { + const distro = (await getos()) as LinuxOs; + metrics.distro = distro.dist; + metrics.distroRelease = `${distro.dist}-${distro.release}`; + } catch (e) { + // ignore errors + } + } + + return metrics; + } +} diff --git a/src/core/server/metrics/collectors/process.test.ts b/src/core/server/metrics/collectors/process.test.ts new file mode 100644 index 00000000000000..a437d799371f11 --- /dev/null +++ b/src/core/server/metrics/collectors/process.test.ts @@ -0,0 +1,81 @@ +/* + * 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 v8, { HeapInfo } from 'v8'; +import { ProcessMetricsCollector } from './process'; + +describe('ProcessMetricsCollector', () => { + let collector: ProcessMetricsCollector; + + beforeEach(() => { + collector = new ProcessMetricsCollector(); + }); + + afterEach(() => { + jest.restoreAllMocks(); + }); + + it('collects pid from the process', async () => { + const metrics = await collector.collect(); + + expect(metrics.pid).toEqual(process.pid); + }); + + it('collects event loop delay', async () => { + const metrics = await collector.collect(); + + expect(metrics.event_loop_delay).toBeGreaterThan(0); + }); + + it('collects uptime info from the process', async () => { + const uptime = 58986; + jest.spyOn(process, 'uptime').mockImplementation(() => uptime); + + const metrics = await collector.collect(); + + expect(metrics.uptime_in_millis).toEqual(uptime * 1000); + }); + + it('collects memory info from the process', async () => { + const heapTotal = 58986; + const heapUsed = 4688; + const heapSizeLimit = 5788; + const rss = 5865; + jest.spyOn(process, 'memoryUsage').mockImplementation(() => ({ + rss, + heapTotal, + heapUsed, + external: 0, + })); + + jest.spyOn(v8, 'getHeapStatistics').mockImplementation( + () => + ({ + heap_size_limit: heapSizeLimit, + } as HeapInfo) + ); + + const metrics = await collector.collect(); + + expect(metrics.memory.heap.total_in_bytes).toEqual(heapTotal); + expect(metrics.memory.heap.used_in_bytes).toEqual(heapUsed); + expect(metrics.memory.heap.size_limit).toEqual(heapSizeLimit); + expect(metrics.memory.resident_set_size_in_bytes).toEqual(rss); + }); +}); diff --git a/src/core/server/metrics/collectors/process.ts b/src/core/server/metrics/collectors/process.ts new file mode 100644 index 00000000000000..aa68abaf74e41a --- /dev/null +++ b/src/core/server/metrics/collectors/process.ts @@ -0,0 +1,52 @@ +/* + * 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 v8 from 'v8'; +import { Bench } from 'hoek'; +import { OpsProcessMetrics, MetricsCollector } from './types'; + +export class ProcessMetricsCollector implements MetricsCollector<OpsProcessMetrics> { + public async collect(): Promise<OpsProcessMetrics> { + const heapStats = v8.getHeapStatistics(); + const memoryUsage = process.memoryUsage(); + const [eventLoopDelay] = await Promise.all([getEventLoopDelay()]); + return { + memory: { + heap: { + total_in_bytes: memoryUsage.heapTotal, + used_in_bytes: memoryUsage.heapUsed, + size_limit: heapStats.heap_size_limit, + }, + resident_set_size_in_bytes: memoryUsage.rss, + }, + pid: process.pid, + event_loop_delay: eventLoopDelay, + uptime_in_millis: process.uptime() * 1000, + }; + } +} + +const getEventLoopDelay = (): Promise<number> => { + const bench = new Bench(); + return new Promise(resolve => { + setImmediate(() => { + return resolve(bench.elapsed()); + }); + }); +}; diff --git a/src/core/server/metrics/collectors/server.ts b/src/core/server/metrics/collectors/server.ts new file mode 100644 index 00000000000000..e46ac2f653df66 --- /dev/null +++ b/src/core/server/metrics/collectors/server.ts @@ -0,0 +1,80 @@ +/* + * 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 { ResponseObject, Server as HapiServer } from 'hapi'; +import { OpsServerMetrics, MetricsCollector } from './types'; + +interface ServerResponseTime { + count: number; + total: number; + max: number; +} + +export class ServerMetricsCollector implements MetricsCollector<OpsServerMetrics> { + private readonly requests: OpsServerMetrics['requests'] = { + disconnects: 0, + total: 0, + statusCodes: {}, + }; + private readonly responseTimes: ServerResponseTime = { + count: 0, + total: 0, + max: 0, + }; + + constructor(private readonly server: HapiServer) { + this.server.ext('onRequest', (request, h) => { + this.requests.total++; + request.events.once('disconnect', () => { + this.requests.disconnects++; + }); + return h.continue; + }); + this.server.events.on('response', request => { + const statusCode = (request.response as ResponseObject)?.statusCode; + if (statusCode) { + if (!this.requests.statusCodes[statusCode]) { + this.requests.statusCodes[statusCode] = 0; + } + this.requests.statusCodes[statusCode]++; + } + + const duration = Date.now() - request.info.received; + this.responseTimes.count++; + this.responseTimes.total += duration; + this.responseTimes.max = Math.max(this.responseTimes.max, duration); + }); + } + + public async collect(): Promise<OpsServerMetrics> { + const connections = await new Promise<number>(resolve => { + this.server.listener.getConnections((_, count) => { + resolve(count); + }); + }); + + return { + requests: this.requests, + response_times: { + avg_in_millis: this.responseTimes.total / Math.max(this.responseTimes.count, 1), + max_in_millis: this.responseTimes.max, + }, + concurrent_connections: connections, + }; + } +} diff --git a/src/core/server/metrics/collectors/types.ts b/src/core/server/metrics/collectors/types.ts new file mode 100644 index 00000000000000..5a83bc70af3c11 --- /dev/null +++ b/src/core/server/metrics/collectors/types.ts @@ -0,0 +1,110 @@ +/* + * 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. + */ + +/** Base interface for all metrics gatherers */ +export interface MetricsCollector<T> { + collect(): Promise<T>; +} + +/** + * Process related metrics + * @public + */ +export interface OpsProcessMetrics { + /** process memory usage */ + memory: { + /** heap memory usage */ + heap: { + /** total heap available */ + total_in_bytes: number; + /** used heap */ + used_in_bytes: number; + /** v8 heap size limit */ + size_limit: number; + }; + /** node rss */ + resident_set_size_in_bytes: number; + }; + /** node event loop delay */ + event_loop_delay: number; + /** pid of the kibana process */ + pid: number; + /** uptime of the kibana process */ + uptime_in_millis: number; +} + +/** + * OS related metrics + * @public + */ +export interface OpsOsMetrics { + /** The os platform */ + platform: NodeJS.Platform; + /** The os platform release, prefixed by the platform name */ + platformRelease: string; + /** The os distrib. Only present for linux platforms */ + distro?: string; + /** The os distrib release, prefixed by the os distrib. Only present for linux platforms */ + distroRelease?: string; + /** cpu load metrics */ + load: { + /** load for last minute */ + '1m': number; + /** load for last 5 minutes */ + '5m': number; + /** load for last 15 minutes */ + '15m': number; + }; + /** system memory usage metrics */ + memory: { + /** total memory available */ + total_in_bytes: number; + /** current free memory */ + free_in_bytes: number; + /** current used memory */ + used_in_bytes: number; + }; + /** the OS uptime */ + uptime_in_millis: number; +} + +/** + * server related metrics + * @public + */ +export interface OpsServerMetrics { + /** server response time stats */ + response_times: { + /** average response time */ + avg_in_millis: number; + /** maximum response time */ + max_in_millis: number; + }; + /** server requests stats */ + requests: { + /** number of disconnected requests since startup */ + disconnects: number; + /** total number of requests handled since startup */ + total: number; + /** number of request handled per response status code */ + statusCodes: Record<number, number>; + }; + /** number of current concurrent connections to the server */ + concurrent_connections: number; +} diff --git a/src/core/server/metrics/index.ts b/src/core/server/metrics/index.ts new file mode 100644 index 00000000000000..fdcf637c0cd7b9 --- /dev/null +++ b/src/core/server/metrics/index.ts @@ -0,0 +1,29 @@ +/* + * 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. + */ + +export { + InternalMetricsServiceStart, + InternalMetricsServiceSetup, + MetricsServiceSetup, + MetricsServiceStart, + OpsMetrics, +} from './types'; +export { OpsProcessMetrics, OpsServerMetrics, OpsOsMetrics } from './collectors'; +export { MetricsService } from './metrics_service'; +export { opsConfig } from './ops_config'; diff --git a/src/core/server/metrics/integration_tests/server_collector.test.ts b/src/core/server/metrics/integration_tests/server_collector.test.ts new file mode 100644 index 00000000000000..a387de80212d91 --- /dev/null +++ b/src/core/server/metrics/integration_tests/server_collector.test.ts @@ -0,0 +1,183 @@ +/* + * 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 { take } from 'rxjs/operators'; +import supertest from 'supertest'; +import { Server as HapiServer } from 'hapi'; +import { createHttpServer } from '../../http/test_utils'; +import { HttpService, IRouter } from '../../http'; +import { contextServiceMock } from '../../context/context_service.mock'; +import { ServerMetricsCollector } from '../collectors/server'; + +describe('ServerMetricsCollector', () => { + let server: HttpService; + let collector: ServerMetricsCollector; + let hapiServer: HapiServer; + let router: IRouter; + + const delay = (ms: number) => new Promise(resolve => setTimeout(resolve, ms)); + const sendGet = (path: string) => supertest(hapiServer.listener).get(path); + + beforeEach(async () => { + server = createHttpServer(); + const contextSetup = contextServiceMock.createSetupContract(); + const httpSetup = await server.setup({ context: contextSetup }); + hapiServer = httpSetup.server; + router = httpSetup.createRouter('/'); + collector = new ServerMetricsCollector(hapiServer); + }); + + afterEach(async () => { + await server.stop(); + }); + + it('collect requests infos', async () => { + router.get({ path: '/', validate: false }, async (ctx, req, res) => { + return res.ok({ body: '' }); + }); + await server.start(); + + let metrics = await collector.collect(); + + expect(metrics.requests).toEqual({ + total: 0, + disconnects: 0, + statusCodes: {}, + }); + + await sendGet('/'); + await sendGet('/'); + await sendGet('/not-found'); + + metrics = await collector.collect(); + + expect(metrics.requests).toEqual({ + total: 3, + disconnects: 0, + statusCodes: { + '200': 2, + '404': 1, + }, + }); + }); + + it('collect disconnects requests infos', async () => { + const never = new Promise(resolve => undefined); + + router.get({ path: '/', validate: false }, async (ctx, req, res) => { + return res.ok({ body: '' }); + }); + router.get({ path: '/disconnect', validate: false }, async (ctx, req, res) => { + await never; + return res.ok({ body: '' }); + }); + await server.start(); + + await sendGet('/'); + const discoReq1 = sendGet('/disconnect').end(); + const discoReq2 = sendGet('/disconnect').end(); + await delay(20); + + let metrics = await collector.collect(); + expect(metrics.requests).toEqual( + expect.objectContaining({ + total: 3, + disconnects: 0, + }) + ); + + discoReq1.abort(); + await delay(20); + + metrics = await collector.collect(); + expect(metrics.requests).toEqual( + expect.objectContaining({ + total: 3, + disconnects: 1, + }) + ); + + discoReq2.abort(); + await delay(20); + + metrics = await collector.collect(); + expect(metrics.requests).toEqual( + expect.objectContaining({ + total: 3, + disconnects: 2, + }) + ); + }); + + it('collect response times', async () => { + router.get({ path: '/no-delay', validate: false }, async (ctx, req, res) => { + return res.ok({ body: '' }); + }); + router.get({ path: '/500-ms', validate: false }, async (ctx, req, res) => { + await delay(500); + return res.ok({ body: '' }); + }); + router.get({ path: '/250-ms', validate: false }, async (ctx, req, res) => { + await delay(250); + return res.ok({ body: '' }); + }); + await server.start(); + + await Promise.all([sendGet('/no-delay'), sendGet('/250-ms')]); + let metrics = await collector.collect(); + + expect(metrics.response_times.avg_in_millis).toBeGreaterThanOrEqual(125); + expect(metrics.response_times.max_in_millis).toBeGreaterThanOrEqual(250); + + await Promise.all([sendGet('/500-ms'), sendGet('/500-ms')]); + metrics = await collector.collect(); + + expect(metrics.response_times.avg_in_millis).toBeGreaterThanOrEqual(250); + expect(metrics.response_times.max_in_millis).toBeGreaterThanOrEqual(500); + }); + + it('collect connection count', async () => { + const waitSubject = new Subject(); + + router.get({ path: '/', validate: false }, async (ctx, req, res) => { + await waitSubject.pipe(take(1)).toPromise(); + return res.ok({ body: '' }); + }); + await server.start(); + + let metrics = await collector.collect(); + expect(metrics.concurrent_connections).toEqual(0); + + sendGet('/').end(() => null); + await delay(20); + metrics = await collector.collect(); + expect(metrics.concurrent_connections).toEqual(1); + + sendGet('/').end(() => null); + await delay(20); + metrics = await collector.collect(); + expect(metrics.concurrent_connections).toEqual(2); + + waitSubject.next('go'); + await delay(20); + metrics = await collector.collect(); + expect(metrics.concurrent_connections).toEqual(0); + }); +}); diff --git a/src/core/server/metrics/metrics_service.mock.ts b/src/core/server/metrics/metrics_service.mock.ts new file mode 100644 index 00000000000000..cc53a4e27d5710 --- /dev/null +++ b/src/core/server/metrics/metrics_service.mock.ts @@ -0,0 +1,67 @@ +/* + * 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 { MetricsService } from './metrics_service'; +import { + InternalMetricsServiceSetup, + InternalMetricsServiceStart, + MetricsServiceSetup, + MetricsServiceStart, +} from './types'; + +const createSetupContractMock = () => { + const setupContract: jest.Mocked<MetricsServiceSetup> = { + getOpsMetrics$: jest.fn(), + }; + return setupContract; +}; + +const createInternalSetupContractMock = () => { + const setupContract: jest.Mocked<InternalMetricsServiceSetup> = createSetupContractMock(); + return setupContract; +}; + +const createStartContractMock = () => { + const startContract: jest.Mocked<MetricsServiceStart> = {}; + return startContract; +}; + +const createInternalStartContractMock = () => { + const startContract: jest.Mocked<InternalMetricsServiceStart> = createStartContractMock(); + return startContract; +}; + +type MetricsServiceContract = PublicMethodsOf<MetricsService>; + +const createMock = () => { + const mocked: jest.Mocked<MetricsServiceContract> = { + setup: jest.fn().mockReturnValue(createInternalSetupContractMock()), + start: jest.fn().mockReturnValue(createInternalStartContractMock()), + stop: jest.fn(), + }; + return mocked; +}; + +export const metricsServiceMock = { + create: createMock, + createSetupContract: createSetupContractMock, + createStartContract: createStartContractMock, + createInternalSetupContract: createInternalSetupContractMock, + createInternalStartContract: createInternalStartContractMock, +}; diff --git a/src/core/server/metrics/metrics_service.test.mocks.ts b/src/core/server/metrics/metrics_service.test.mocks.ts new file mode 100644 index 00000000000000..8e91775283042b --- /dev/null +++ b/src/core/server/metrics/metrics_service.test.mocks.ts @@ -0,0 +1,25 @@ +/* + * 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. + */ + +export const mockOpsCollector = { + collect: jest.fn(), +}; +jest.doMock('./ops_metrics_collector', () => ({ + OpsMetricsCollector: jest.fn().mockImplementation(() => mockOpsCollector), +})); diff --git a/src/core/server/metrics/metrics_service.test.ts b/src/core/server/metrics/metrics_service.test.ts new file mode 100644 index 00000000000000..10d6761adbe7d5 --- /dev/null +++ b/src/core/server/metrics/metrics_service.test.ts @@ -0,0 +1,134 @@ +/* + * 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 moment from 'moment'; +import { mockOpsCollector } from './metrics_service.test.mocks'; +import { MetricsService } from './metrics_service'; +import { mockCoreContext } from '../core_context.mock'; +import { configServiceMock } from '../config/config_service.mock'; +import { httpServiceMock } from '../http/http_service.mock'; +import { take } from 'rxjs/operators'; + +const testInterval = 100; + +const dummyMetrics = { metricA: 'value', metricB: 'otherValue' }; + +describe('MetricsService', () => { + const httpMock = httpServiceMock.createSetupContract(); + let metricsService: MetricsService; + + beforeEach(() => { + jest.useFakeTimers(); + + const configService = configServiceMock.create({ + atPath: { interval: moment.duration(testInterval) }, + }); + const coreContext = mockCoreContext.create({ configService }); + metricsService = new MetricsService(coreContext); + }); + + afterEach(() => { + jest.clearAllMocks(); + jest.clearAllTimers(); + }); + + describe('#start', () => { + it('invokes setInterval with the configured interval', async () => { + await metricsService.setup({ http: httpMock }); + await metricsService.start(); + + expect(setInterval).toHaveBeenCalledTimes(1); + expect(setInterval).toHaveBeenCalledWith(expect.any(Function), testInterval); + }); + + it('emits the metrics at start', async () => { + mockOpsCollector.collect.mockResolvedValue(dummyMetrics); + + const { getOpsMetrics$ } = await metricsService.setup({ + http: httpMock, + }); + + await metricsService.start(); + + expect(mockOpsCollector.collect).toHaveBeenCalledTimes(1); + expect( + await getOpsMetrics$() + .pipe(take(1)) + .toPromise() + ).toEqual(dummyMetrics); + }); + + it('collects the metrics at every interval', async () => { + mockOpsCollector.collect.mockResolvedValue(dummyMetrics); + + await metricsService.setup({ http: httpMock }); + + await metricsService.start(); + + expect(mockOpsCollector.collect).toHaveBeenCalledTimes(1); + + jest.advanceTimersByTime(testInterval); + expect(mockOpsCollector.collect).toHaveBeenCalledTimes(2); + + jest.advanceTimersByTime(testInterval); + expect(mockOpsCollector.collect).toHaveBeenCalledTimes(3); + }); + + it('throws when called before setup', async () => { + await expect(metricsService.start()).rejects.toThrowErrorMatchingInlineSnapshot( + `"#setup() needs to be run first"` + ); + }); + }); + + describe('#stop', () => { + it('stops the metrics interval', async () => { + const { getOpsMetrics$ } = await metricsService.setup({ http: httpMock }); + await metricsService.start(); + + expect(mockOpsCollector.collect).toHaveBeenCalledTimes(1); + + jest.advanceTimersByTime(testInterval); + expect(mockOpsCollector.collect).toHaveBeenCalledTimes(2); + + await metricsService.stop(); + jest.advanceTimersByTime(10 * testInterval); + expect(mockOpsCollector.collect).toHaveBeenCalledTimes(2); + + getOpsMetrics$().subscribe({ complete: () => {} }); + }); + + it('completes the metrics observable', async () => { + const { getOpsMetrics$ } = await metricsService.setup({ http: httpMock }); + await metricsService.start(); + + let completed = false; + + getOpsMetrics$().subscribe({ + complete: () => { + completed = true; + }, + }); + + await metricsService.stop(); + + expect(completed).toEqual(true); + }); + }); +}); diff --git a/src/core/server/metrics/metrics_service.ts b/src/core/server/metrics/metrics_service.ts new file mode 100644 index 00000000000000..1aed89a4aad600 --- /dev/null +++ b/src/core/server/metrics/metrics_service.ts @@ -0,0 +1,86 @@ +/* + * 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 { ReplaySubject } from 'rxjs'; +import { first, shareReplay } from 'rxjs/operators'; +import { CoreService } from '../../types'; +import { CoreContext } from '../core_context'; +import { Logger } from '../logging'; +import { InternalHttpServiceSetup } from '../http'; +import { InternalMetricsServiceSetup, InternalMetricsServiceStart, OpsMetrics } from './types'; +import { OpsMetricsCollector } from './ops_metrics_collector'; +import { opsConfig, OpsConfigType } from './ops_config'; + +interface MetricsServiceSetupDeps { + http: InternalHttpServiceSetup; +} + +/** @internal */ +export class MetricsService + implements CoreService<InternalMetricsServiceSetup, InternalMetricsServiceStart> { + private readonly logger: Logger; + private metricsCollector?: OpsMetricsCollector; + private collectInterval?: NodeJS.Timeout; + private metrics$ = new ReplaySubject<OpsMetrics>(1); + + constructor(private readonly coreContext: CoreContext) { + this.logger = coreContext.logger.get('metrics'); + } + + public async setup({ http }: MetricsServiceSetupDeps): Promise<InternalMetricsServiceSetup> { + this.metricsCollector = new OpsMetricsCollector(http.server); + + const metricsObservable = this.metrics$.pipe(shareReplay(1)); + + return { + getOpsMetrics$: () => metricsObservable, + }; + } + + public async start(): Promise<InternalMetricsServiceStart> { + if (!this.metricsCollector) { + throw new Error('#setup() needs to be run first'); + } + const config = await this.coreContext.configService + .atPath<OpsConfigType>(opsConfig.path) + .pipe(first()) + .toPromise(); + + await this.refreshMetrics(); + + this.collectInterval = setInterval(() => { + this.refreshMetrics(); + }, config.interval.asMilliseconds()); + + return {}; + } + + private async refreshMetrics() { + this.logger.debug('Refreshing metrics'); + const metrics = await this.metricsCollector!.collect(); + this.metrics$.next(metrics); + } + + public async stop() { + if (this.collectInterval) { + clearInterval(this.collectInterval); + } + this.metrics$.complete(); + } +} diff --git a/src/core/server/metrics/ops_config.ts b/src/core/server/metrics/ops_config.ts new file mode 100644 index 00000000000000..bd6ae5cc5474d7 --- /dev/null +++ b/src/core/server/metrics/ops_config.ts @@ -0,0 +1,29 @@ +/* + * 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 { schema, TypeOf } from '@kbn/config-schema'; + +export const opsConfig = { + path: 'ops', + schema: schema.object({ + interval: schema.duration({ defaultValue: '5s' }), + }), +}; + +export type OpsConfigType = TypeOf<typeof opsConfig.schema>; diff --git a/src/core/server/metrics/ops_metrics_collector.test.mocks.ts b/src/core/server/metrics/ops_metrics_collector.test.mocks.ts new file mode 100644 index 00000000000000..8265796d57970e --- /dev/null +++ b/src/core/server/metrics/ops_metrics_collector.test.mocks.ts @@ -0,0 +1,39 @@ +/* + * 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. + */ + +export const mockOsCollector = { + collect: jest.fn(), +}; +jest.doMock('./collectors/os', () => ({ + OsMetricsCollector: jest.fn().mockImplementation(() => mockOsCollector), +})); + +export const mockProcessCollector = { + collect: jest.fn(), +}; +jest.doMock('./collectors/process', () => ({ + ProcessMetricsCollector: jest.fn().mockImplementation(() => mockProcessCollector), +})); + +export const mockServerCollector = { + collect: jest.fn(), +}; +jest.doMock('./collectors/server', () => ({ + ServerMetricsCollector: jest.fn().mockImplementation(() => mockServerCollector), +})); diff --git a/src/core/server/metrics/ops_metrics_collector.test.ts b/src/core/server/metrics/ops_metrics_collector.test.ts new file mode 100644 index 00000000000000..04302a195fb6cd --- /dev/null +++ b/src/core/server/metrics/ops_metrics_collector.test.ts @@ -0,0 +1,59 @@ +/* + * 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 { + mockOsCollector, + mockProcessCollector, + mockServerCollector, +} from './ops_metrics_collector.test.mocks'; +import { httpServiceMock } from '../http/http_service.mock'; +import { OpsMetricsCollector } from './ops_metrics_collector'; + +describe('OpsMetricsCollector', () => { + let collector: OpsMetricsCollector; + + beforeEach(() => { + const hapiServer = httpServiceMock.createSetupContract().server; + collector = new OpsMetricsCollector(hapiServer); + + mockOsCollector.collect.mockResolvedValue('osMetrics'); + }); + + it('gathers metrics from the underlying collectors', async () => { + mockOsCollector.collect.mockResolvedValue('osMetrics'); + mockProcessCollector.collect.mockResolvedValue('processMetrics'); + mockServerCollector.collect.mockResolvedValue({ + requests: 'serverRequestsMetrics', + response_times: 'serverTimingMetrics', + }); + + const metrics = await collector.collect(); + + expect(mockOsCollector.collect).toHaveBeenCalledTimes(1); + expect(mockProcessCollector.collect).toHaveBeenCalledTimes(1); + expect(mockServerCollector.collect).toHaveBeenCalledTimes(1); + + expect(metrics).toEqual({ + process: 'processMetrics', + os: 'osMetrics', + requests: 'serverRequestsMetrics', + response_times: 'serverTimingMetrics', + }); + }); +}); diff --git a/src/core/server/metrics/ops_metrics_collector.ts b/src/core/server/metrics/ops_metrics_collector.ts new file mode 100644 index 00000000000000..04344f21f57f72 --- /dev/null +++ b/src/core/server/metrics/ops_metrics_collector.ts @@ -0,0 +1,52 @@ +/* + * 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 { Server as HapiServer } from 'hapi'; +import { + ProcessMetricsCollector, + OsMetricsCollector, + ServerMetricsCollector, + MetricsCollector, +} from './collectors'; +import { OpsMetrics } from './types'; + +export class OpsMetricsCollector implements MetricsCollector<OpsMetrics> { + private readonly processCollector: ProcessMetricsCollector; + private readonly osCollector: OsMetricsCollector; + private readonly serverCollector: ServerMetricsCollector; + + constructor(server: HapiServer) { + this.processCollector = new ProcessMetricsCollector(); + this.osCollector = new OsMetricsCollector(); + this.serverCollector = new ServerMetricsCollector(server); + } + + public async collect(): Promise<OpsMetrics> { + const [process, os, server] = await Promise.all([ + this.processCollector.collect(), + this.osCollector.collect(), + this.serverCollector.collect(), + ]); + return { + process, + os, + ...server, + }; + } +} diff --git a/src/core/server/metrics/types.ts b/src/core/server/metrics/types.ts new file mode 100644 index 00000000000000..5c8f18fff380de --- /dev/null +++ b/src/core/server/metrics/types.ts @@ -0,0 +1,66 @@ +/* + * 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 { OpsProcessMetrics, OpsOsMetrics, OpsServerMetrics } from './collectors'; + +/** + * APIs to retrieves metrics gathered and exposed by the core platform. + * + * @public + */ +export interface MetricsServiceSetup { + /** + * Retrieve an observable emitting the {@link OpsMetrics} gathered. + * The observable will emit an initial value during core's `start` phase, and a new value every fixed interval of time, + * based on the `opts.interval` configuration property. + * + * @example + * ```ts + * core.metrics.getOpsMetrics$().subscribe(metrics => { + * // do something with the metrics + * }) + * ``` + */ + getOpsMetrics$: () => Observable<OpsMetrics>; +} +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface MetricsServiceStart {} + +export type InternalMetricsServiceSetup = MetricsServiceSetup; +export type InternalMetricsServiceStart = MetricsServiceStart; + +/** + * Regroups metrics gathered by all the collectors. + * This contains metrics about the os/runtime, the kibana process and the http server. + * + * @public + */ +export interface OpsMetrics { + /** Process related metrics */ + process: OpsProcessMetrics; + /** OS related metrics */ + os: OpsOsMetrics; + /** server response time stats */ + response_times: OpsServerMetrics['response_times']; + /** server requests stats */ + requests: OpsServerMetrics['requests']; + /** number of current concurrent connections to the server */ + concurrent_connections: OpsServerMetrics['concurrent_connections']; +} diff --git a/src/core/server/mocks.ts b/src/core/server/mocks.ts index 96b28ab5827e1b..037f3bbed67e06 100644 --- a/src/core/server/mocks.ts +++ b/src/core/server/mocks.ts @@ -30,6 +30,8 @@ import { uiSettingsServiceMock } from './ui_settings/ui_settings_service.mock'; import { SharedGlobalConfig } from './plugins'; import { InternalCoreSetup, InternalCoreStart } from './internal_types'; import { capabilitiesServiceMock } from './capabilities/capabilities_service.mock'; +import { metricsServiceMock } from './metrics/metrics_service.mock'; +import { uuidServiceMock } from './uuid/uuid_service.mock'; export { httpServerMock } from './http/http_server.mocks'; export { sessionStorageMock } from './http/cookie_session_storage.mocks'; @@ -40,7 +42,7 @@ export { loggingServiceMock } from './logging/logging_service.mock'; export { savedObjectsRepositoryMock } from './saved_objects/service/lib/repository.mock'; export { typeRegistryMock as savedObjectsTypeRegistryMock } from './saved_objects/saved_objects_type_registry.mock'; export { uiSettingsServiceMock } from './ui_settings/ui_settings_service.mock'; -import { uuidServiceMock } from './uuid/uuid_service.mock'; +export { metricsServiceMock } from './metrics/metrics_service.mock'; export function pluginInitializerContextConfigMock<T>(config: T) { const globalConfig: SharedGlobalConfig = { @@ -153,6 +155,7 @@ function createInternalCoreSetupMock() { uiSettings: uiSettingsServiceMock.createSetupContract(), savedObjects: savedObjectsServiceMock.createInternalSetupContract(), uuid: uuidServiceMock.createSetupContract(), + metrics: metricsServiceMock.createInternalSetupContract(), }; return setupDeps; } diff --git a/src/core/server/server.api.md b/src/core/server/server.api.md index 42bc1ce214b191..445ed16ec7829b 100644 --- a/src/core/server/server.api.md +++ b/src/core/server/server.api.md @@ -1176,6 +1176,11 @@ export interface LogRecord { timestamp: Date; } +// @public +export interface MetricsServiceSetup { + getOpsMetrics$: () => Observable<OpsMetrics>; +} + // @public (undocumented) export type MIGRATION_ASSISTANCE_INDEX_ACTION = 'upgrade' | 'reindex'; @@ -1227,6 +1232,63 @@ export interface OnPreResponseToolkit { next: (responseExtensions?: OnPreResponseExtensions) => OnPreResponseResult; } +// @public +export interface OpsMetrics { + concurrent_connections: OpsServerMetrics['concurrent_connections']; + os: OpsOsMetrics; + process: OpsProcessMetrics; + requests: OpsServerMetrics['requests']; + response_times: OpsServerMetrics['response_times']; +} + +// @public +export interface OpsOsMetrics { + distro?: string; + distroRelease?: string; + load: { + '1m': number; + '5m': number; + '15m': number; + }; + memory: { + total_in_bytes: number; + free_in_bytes: number; + used_in_bytes: number; + }; + platform: NodeJS.Platform; + platformRelease: string; + uptime_in_millis: number; +} + +// @public +export interface OpsProcessMetrics { + event_loop_delay: number; + memory: { + heap: { + total_in_bytes: number; + used_in_bytes: number; + size_limit: number; + }; + resident_set_size_in_bytes: number; + }; + pid: number; + uptime_in_millis: number; +} + +// @public +export interface OpsServerMetrics { + concurrent_connections: number; + requests: { + disconnects: number; + total: number; + statusCodes: Record<number, number>; + }; + response_times: { + avg_in_millis: number; + max_in_millis: number; + }; +} + // @public (undocumented) export interface PackageInfo { // (undocumented) diff --git a/src/core/server/server.test.mocks.ts b/src/core/server/server.test.mocks.ts index 038c4651ff5a7d..53d1b742a64944 100644 --- a/src/core/server/server.test.mocks.ts +++ b/src/core/server/server.test.mocks.ts @@ -79,3 +79,9 @@ export const mockUuidService = uuidServiceMock.create(); jest.doMock('./uuid/uuid_service', () => ({ UuidService: jest.fn(() => mockUuidService), })); + +import { metricsServiceMock } from './metrics/metrics_service.mock'; +export const mockMetricsService = metricsServiceMock.create(); +jest.doMock('./metrics/metrics_service', () => ({ + MetricsService: jest.fn(() => mockMetricsService), +})); diff --git a/src/core/server/server.test.ts b/src/core/server/server.test.ts index 161dd3759a218d..a4b5a9d81df203 100644 --- a/src/core/server/server.test.ts +++ b/src/core/server/server.test.ts @@ -28,6 +28,7 @@ import { mockEnsureValidConfiguration, mockUiSettingsService, mockRenderingService, + mockMetricsService, } from './server.test.mocks'; import { BehaviorSubject } from 'rxjs'; @@ -61,6 +62,7 @@ test('sets up services on "setup"', async () => { expect(mockSavedObjectsService.setup).not.toHaveBeenCalled(); expect(mockUiSettingsService.setup).not.toHaveBeenCalled(); expect(mockRenderingService.setup).not.toHaveBeenCalled(); + expect(mockMetricsService.setup).not.toHaveBeenCalled(); await server.setup(); @@ -71,6 +73,7 @@ test('sets up services on "setup"', async () => { expect(mockSavedObjectsService.setup).toHaveBeenCalledTimes(1); expect(mockUiSettingsService.setup).toHaveBeenCalledTimes(1); expect(mockRenderingService.setup).toHaveBeenCalledTimes(1); + expect(mockMetricsService.setup).toHaveBeenCalledTimes(1); }); test('injects legacy dependency to context#setup()', async () => { @@ -107,6 +110,7 @@ test('runs services on "start"', async () => { expect(mockLegacyService.start).not.toHaveBeenCalled(); expect(mockSavedObjectsService.start).not.toHaveBeenCalled(); expect(mockUiSettingsService.start).not.toHaveBeenCalled(); + expect(mockMetricsService.start).not.toHaveBeenCalled(); await server.start(); @@ -114,6 +118,7 @@ test('runs services on "start"', async () => { expect(mockLegacyService.start).toHaveBeenCalledTimes(1); expect(mockSavedObjectsService.start).toHaveBeenCalledTimes(1); expect(mockUiSettingsService.start).toHaveBeenCalledTimes(1); + expect(mockMetricsService.start).toHaveBeenCalledTimes(1); }); test('does not fail on "setup" if there are unused paths detected', async () => { @@ -135,6 +140,7 @@ test('stops services on "stop"', async () => { expect(mockLegacyService.stop).not.toHaveBeenCalled(); expect(mockSavedObjectsService.stop).not.toHaveBeenCalled(); expect(mockUiSettingsService.stop).not.toHaveBeenCalled(); + expect(mockMetricsService.stop).not.toHaveBeenCalled(); await server.stop(); @@ -144,6 +150,7 @@ test('stops services on "stop"', async () => { expect(mockLegacyService.stop).toHaveBeenCalledTimes(1); expect(mockSavedObjectsService.stop).toHaveBeenCalledTimes(1); expect(mockUiSettingsService.stop).toHaveBeenCalledTimes(1); + expect(mockMetricsService.stop).toHaveBeenCalledTimes(1); }); test(`doesn't setup core services if config validation fails`, async () => { @@ -159,6 +166,7 @@ test(`doesn't setup core services if config validation fails`, async () => { expect(mockLegacyService.setup).not.toHaveBeenCalled(); expect(mockUiSettingsService.setup).not.toHaveBeenCalled(); expect(mockRenderingService.setup).not.toHaveBeenCalled(); + expect(mockMetricsService.setup).not.toHaveBeenCalled(); }); test(`doesn't setup core services if legacy config validation fails`, async () => { @@ -178,4 +186,5 @@ test(`doesn't setup core services if legacy config validation fails`, async () = expect(mockLegacyService.setup).not.toHaveBeenCalled(); expect(mockSavedObjectsService.stop).not.toHaveBeenCalled(); expect(mockUiSettingsService.setup).not.toHaveBeenCalled(); + expect(mockMetricsService.setup).not.toHaveBeenCalled(); }); diff --git a/src/core/server/server.ts b/src/core/server/server.ts index db2493b38d6e0a..8603f5fba1da87 100644 --- a/src/core/server/server.ts +++ b/src/core/server/server.ts @@ -34,6 +34,7 @@ import { Logger, LoggerFactory } from './logging'; import { UiSettingsService } from './ui_settings'; import { PluginsService, config as pluginsConfig } from './plugins'; import { SavedObjectsService } from '../server/saved_objects'; +import { MetricsService, opsConfig } from './metrics'; import { config as cspConfig } from './csp'; import { config as elasticsearchConfig } from './elasticsearch'; @@ -67,6 +68,7 @@ export class Server { private readonly savedObjects: SavedObjectsService; private readonly uiSettings: UiSettingsService; private readonly uuid: UuidService; + private readonly metrics: MetricsService; private coreStart?: InternalCoreStart; @@ -89,6 +91,7 @@ export class Server { this.uiSettings = new UiSettingsService(core); this.capabilities = new CapabilitiesService(core); this.uuid = new UuidService(core); + this.metrics = new MetricsService(core); } public async setup() { @@ -137,6 +140,8 @@ export class Server { legacyPlugins, }); + const metricsSetup = await this.metrics.setup({ http: httpSetup }); + const coreSetup: InternalCoreSetup = { capabilities: capabilitiesSetup, context: contextServiceSetup, @@ -145,6 +150,7 @@ export class Server { uiSettings: uiSettingsSetup, savedObjects: savedObjectsSetup, uuid: uuidSetup, + metrics: metricsSetup, }; const pluginsSetup = await this.plugins.setup(coreSetup); @@ -193,6 +199,7 @@ export class Server { await this.http.start(); await this.rendering.start(); + await this.metrics.start(); return this.coreStart; } @@ -207,6 +214,7 @@ export class Server { await this.http.stop(); await this.uiSettings.stop(); await this.rendering.stop(); + await this.metrics.stop(); } private registerDefaultRoute(httpSetup: InternalHttpServiceSetup) { @@ -260,6 +268,7 @@ export class Server { [savedObjectsConfig.path, savedObjectsConfig.schema], [savedObjectsMigrationConfig.path, savedObjectsMigrationConfig.schema], [uiSettingsConfig.path, uiSettingsConfig.schema], + [opsConfig.path, opsConfig.schema], ]; this.configService.addDeprecationProvider(rootConfigPath, coreDeprecationProvider); From f7dd5fe4d42e9673256d2c0423fdcfc4e28cdf91 Mon Sep 17 00:00:00 2001 From: Walter Rafelsberger <walter@elastic.co> Date: Tue, 3 Mar 2020 11:05:57 +0100 Subject: [PATCH 042/120] [ML] Transforms: Remove beta badges. (#59060) Transforms will be GA in 7.7. This PR removes the beta related UI elements. --- .../clone_transform/clone_transform_section.tsx | 13 ------------- .../create_transform/create_transform_section.tsx | 14 -------------- .../transform_management_section.tsx | 14 -------------- .../plugins/translations/translations/ja-JP.json | 4 ---- .../plugins/translations/translations/zh-CN.json | 4 ---- 5 files changed, 49 deletions(-) diff --git a/x-pack/legacy/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx b/x-pack/legacy/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx index 8f58bc94e7c121..c5c46dcac6c957 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx @@ -11,7 +11,6 @@ import { FormattedMessage } from '@kbn/i18n/react'; import { i18n } from '@kbn/i18n'; import { - EuiBetaBadge, EuiButtonEmpty, EuiCallOut, EuiFlexGroup, @@ -140,18 +139,6 @@ export const CloneTransformSection: FC<Props> = ({ match }) => { id="xpack.transform.transformsWizard.cloneTransformTitle" defaultMessage="Clone transform" /> - <span> </span> - <EuiBetaBadge - label={i18n.translate('xpack.transform.transformsWizard.betaBadgeLabel', { - defaultMessage: `Beta`, - })} - tooltipContent={i18n.translate( - 'xpack.transform.transformsWizard.betaBadgeTooltipContent', - { - defaultMessage: `Transforms are a beta feature. We'd love to hear your feedback.`, - } - )} - /> </h1> </EuiFlexItem> <EuiFlexItem grow={false}> diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx index e92ba256256a4a..5196f281adf0aa 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx @@ -8,10 +8,8 @@ import React, { useEffect, FC } from 'react'; import { RouteComponentProps } from 'react-router-dom'; import { FormattedMessage } from '@kbn/i18n/react'; -import { i18n } from '@kbn/i18n'; import { - EuiBetaBadge, EuiButtonEmpty, EuiFlexGroup, EuiFlexItem, @@ -52,18 +50,6 @@ export const CreateTransformSection: FC<Props> = ({ match }) => { id="xpack.transform.transformsWizard.createTransformTitle" defaultMessage="Create transform" /> - <span> </span> - <EuiBetaBadge - label={i18n.translate('xpack.transform.transformsWizard.betaBadgeLabel', { - defaultMessage: `Beta`, - })} - tooltipContent={i18n.translate( - 'xpack.transform.transformsWizard.betaBadgeTooltipContent', - { - defaultMessage: `Transforms are a beta feature. We'd love to hear your feedback.`, - } - )} - /> </h1> </EuiFlexItem> <EuiFlexItem grow={false}> diff --git a/x-pack/legacy/plugins/transform/public/app/sections/transform_management/transform_management_section.tsx b/x-pack/legacy/plugins/transform/public/app/sections/transform_management/transform_management_section.tsx index 1573d4c53c0cf4..8c174098fb623d 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/transform_management/transform_management_section.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/transform_management/transform_management_section.tsx @@ -7,10 +7,8 @@ import React, { FC, Fragment, useEffect, useState } from 'react'; import { FormattedMessage } from '@kbn/i18n/react'; -import { i18n } from '@kbn/i18n'; import { - EuiBetaBadge, EuiButtonEmpty, EuiFlexGroup, EuiFlexItem, @@ -84,18 +82,6 @@ export const TransformManagement: FC = () => { id="xpack.transform.transformList.transformTitle" defaultMessage="Transforms" /> - <span> </span> - <EuiBetaBadge - label={i18n.translate('xpack.transform.transformList.betaBadgeLabel', { - defaultMessage: `Beta`, - })} - tooltipContent={i18n.translate( - 'xpack.transform.transformList.betaBadgeTooltipContent', - { - defaultMessage: `Transforms are a beta feature. We'd love to hear your feedback.`, - } - )} - /> </h1> </EuiFlexItem> <EuiFlexItem grow={false}> diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index cadebcad935106..7fdffbec783118 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -12503,8 +12503,6 @@ "xpack.transform.toastText.modalTitle": "詳細を入力", "xpack.transform.toastText.openModalButtonText": "詳細を表示", "xpack.transform.transformForm.sizeNotationPlaceholder": "例: {example1}、{example2}、{example3}、{example4}", - "xpack.transform.transformList.betaBadgeLabel": "ベータ", - "xpack.transform.transformList.betaBadgeTooltipContent": "変換はベータ機能です。フィードバックをお待ちしています。", "xpack.transform.transformList.bulkDeleteModalBody": "{count, plural, one {この} other {これらの}} {count} 件の{count, plural, one {変換} other {変換}}を削除してよろしいですか?変換の送信先インデックスとオプションの Kibana インデックスパターンは削除されません。", "xpack.transform.transformList.bulkDeleteModalTitle": "{count} 件の{count, plural, one {変換} other {変換}}を削除", "xpack.transform.transformList.bulkStartModalTitle": "{count} 件の{count, plural, one {変換} other {変換}}を開始", @@ -12549,8 +12547,6 @@ "xpack.transform.transformList.transformDetails.tabs.transformSettingsLabel": "ジョブの詳細", "xpack.transform.transformList.transformDocsLinkText": "変換ドキュメント", "xpack.transform.transformList.transformTitle": "データフレームジョブ", - "xpack.transform.transformsWizard.betaBadgeLabel": "ベータ", - "xpack.transform.transformsWizard.betaBadgeTooltipContent": "変換はベータ機能です。フィードバックをお待ちしています。", "xpack.transform.transformsWizard.createTransformTitle": "変換の作成", "xpack.transform.transformsWizard.stepCreateTitle": "作成", "xpack.transform.transformsWizard.stepDefineTitle": "ピボットの定義", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index ff72f20b248644..438a8f91975081 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -12503,8 +12503,6 @@ "xpack.transform.toastText.modalTitle": "错误详细信息", "xpack.transform.toastText.openModalButtonText": "查看详情", "xpack.transform.transformForm.sizeNotationPlaceholder": "示例:{example1}、{example2}、{example3}、{example4}", - "xpack.transform.transformList.betaBadgeLabel": "公测版", - "xpack.transform.transformList.betaBadgeTooltipContent": "转换为公测版功能。我们很乐意听取您的反馈意见。", "xpack.transform.transformList.bulkDeleteModalBody": "是否确定要删除{count, plural, one {这} other {这}} {count} 个 {count, plural, one {转换} other {转换}}?转换的目标索引和可选 Kibana 索引模式将不会删除。", "xpack.transform.transformList.bulkDeleteModalTitle": "删除 {count} 个 {count, plural, one {转换} other {转换}}?", "xpack.transform.transformList.bulkStartModalTitle": "启动 {count} 个 {count, plural, one {转换} other {转换}}?", @@ -12549,8 +12547,6 @@ "xpack.transform.transformList.transformDetails.tabs.transformSettingsLabel": "作业详情", "xpack.transform.transformList.transformDocsLinkText": "转换文档", "xpack.transform.transformList.transformTitle": "数据帧作业", - "xpack.transform.transformsWizard.betaBadgeLabel": "公测版", - "xpack.transform.transformsWizard.betaBadgeTooltipContent": "转换为公测版功能。我们很乐意听取您的反馈意见。", "xpack.transform.transformsWizard.createTransformTitle": "创建转换", "xpack.transform.transformsWizard.stepCreateTitle": "创建", "xpack.transform.transformsWizard.stepDefineTitle": "定义透视", From e5362d36a3bae9d55b9b89a462cd4a0ba3a43210 Mon Sep 17 00:00:00 2001 From: Maryia Lapata <mary.lopato@gmail.com> Date: Tue, 3 Mar 2020 13:58:05 +0300 Subject: [PATCH 043/120] [NP] Remove visualize reference in saved object save modal (#59016) * Remove visualize reference in saved object save modal * Rename attribute Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../top_nav/__snapshots__/save_modal.test.js.snap | 1 + .../public/dashboard/np_ready/top_nav/save_modal.tsx | 1 + .../public/discover/np_ready/angular/discover.js | 1 + .../kibana/public/visualize/np_ready/editor/editor.js | 1 + .../public/save_modal/saved_object_save_modal.test.tsx | 2 ++ .../public/save_modal/saved_object_save_modal.tsx | 10 +++------- .../plugins/graph/public/components/save_modal.tsx | 1 + x-pack/legacy/plugins/lens/public/app_plugin/app.tsx | 1 + .../plugins/maps/public/angular/map_controller.js | 1 + 9 files changed, 12 insertions(+), 7 deletions(-) diff --git a/src/legacy/core_plugins/kibana/public/dashboard/np_ready/top_nav/__snapshots__/save_modal.test.js.snap b/src/legacy/core_plugins/kibana/public/dashboard/np_ready/top_nav/__snapshots__/save_modal.test.js.snap index aa9eaf09c7e0a8..7ac2e2d9dd3176 100644 --- a/src/legacy/core_plugins/kibana/public/dashboard/np_ready/top_nav/__snapshots__/save_modal.test.js.snap +++ b/src/legacy/core_plugins/kibana/public/dashboard/np_ready/top_nav/__snapshots__/save_modal.test.js.snap @@ -59,6 +59,7 @@ exports[`renders DashboardSaveModal 1`] = ` </React.Fragment> } showCopyOnSave={true} + showDescription={false} title="dash title" /> `; diff --git a/src/legacy/core_plugins/kibana/public/dashboard/np_ready/top_nav/save_modal.tsx b/src/legacy/core_plugins/kibana/public/dashboard/np_ready/top_nav/save_modal.tsx index 026784fcae06f4..4a4fcb7e1adc86 100644 --- a/src/legacy/core_plugins/kibana/public/dashboard/np_ready/top_nav/save_modal.tsx +++ b/src/legacy/core_plugins/kibana/public/dashboard/np_ready/top_nav/save_modal.tsx @@ -147,6 +147,7 @@ export class DashboardSaveModal extends React.Component<Props, State> { showCopyOnSave={this.props.showCopyOnSave} objectType="dashboard" options={this.renderDashboardSaveOptions()} + showDescription={false} /> ); } diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/discover.js b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/discover.js index 1ac54ad5dabeef..bb693ab860221c 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/discover.js +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/discover.js @@ -305,6 +305,7 @@ function discoverController( defaultMessage: 'Save your Discover search so you can use it in visualizations and dashboards', })} + showDescription={false} /> ); showSaveModal(saveModal, core.i18n.Context); diff --git a/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.js b/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.js index 293327f3f72f9f..2d2552b5e2f30c 100644 --- a/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.js +++ b/src/legacy/core_plugins/kibana/public/visualize/np_ready/editor/editor.js @@ -189,6 +189,7 @@ function VisualizeAppController( objectType="visualization" confirmButtonLabel={confirmButtonLabel} description={savedVis.description} + showDescription={true} /> ); showSaveModal(saveModal, I18nContext); diff --git a/src/plugins/saved_objects/public/save_modal/saved_object_save_modal.test.tsx b/src/plugins/saved_objects/public/save_modal/saved_object_save_modal.test.tsx index 65bd8e1d48e036..15400087c26416 100644 --- a/src/plugins/saved_objects/public/save_modal/saved_object_save_modal.test.tsx +++ b/src/plugins/saved_objects/public/save_modal/saved_object_save_modal.test.tsx @@ -31,6 +31,7 @@ describe('SavedObjectSaveModal', () => { title={'Saved Object title'} showCopyOnSave={false} objectType="visualization" + showDescription={true} /> ); expect(wrapper).toMatchSnapshot(); @@ -44,6 +45,7 @@ describe('SavedObjectSaveModal', () => { title={'Saved Object title'} showCopyOnSave={false} objectType="visualization" + showDescription={true} confirmButtonLabel="Save and done" /> ); diff --git a/src/plugins/saved_objects/public/save_modal/saved_object_save_modal.tsx b/src/plugins/saved_objects/public/save_modal/saved_object_save_modal.tsx index 275a9da96a2c4d..1d145bc97bdb4b 100644 --- a/src/plugins/saved_objects/public/save_modal/saved_object_save_modal.tsx +++ b/src/plugins/saved_objects/public/save_modal/saved_object_save_modal.tsx @@ -40,11 +40,6 @@ import React from 'react'; import { EuiText } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -// TODO: can't import from '../../../../legacy/core_plugins/visualizations/public/' directly, -// because yarn build:types fails after trying to emit type declarations for whole visualizations plugin -// Bunch of errors like this: 'Return type of exported function has or is using private name 'SavedVis'' -import { VISUALIZE_EMBEDDABLE_TYPE } from '../../../../legacy/core_plugins/visualizations/public/np_ready/public/embeddable/constants'; - export interface OnSaveProps { newTitle: string; newCopyOnSave: boolean; @@ -62,6 +57,7 @@ interface Props { confirmButtonLabel?: React.ReactNode; options?: React.ReactNode; description?: string; + showDescription: boolean; } interface State { @@ -112,7 +108,7 @@ export class SavedObjectSaveModal extends React.Component<Props, State> { {this.renderDuplicateTitleCallout(duplicateWarningId)} <EuiForm> - {this.props.objectType !== VISUALIZE_EMBEDDABLE_TYPE && this.props.description && ( + {!this.props.showDescription && this.props.description && ( <EuiFormRow> <EuiText color="subdued">{this.props.description}</EuiText> </EuiFormRow> @@ -164,7 +160,7 @@ export class SavedObjectSaveModal extends React.Component<Props, State> { } private renderViewDescription = () => { - if (this.props.objectType !== VISUALIZE_EMBEDDABLE_TYPE) { + if (!this.props.showDescription) { return; } diff --git a/x-pack/legacy/plugins/graph/public/components/save_modal.tsx b/x-pack/legacy/plugins/graph/public/components/save_modal.tsx index 3dede69d0ca93f..a7329c10e93d7c 100644 --- a/x-pack/legacy/plugins/graph/public/components/save_modal.tsx +++ b/x-pack/legacy/plugins/graph/public/components/save_modal.tsx @@ -49,6 +49,7 @@ export function SaveModal({ objectType={i18n.translate('xpack.graph.topNavMenu.save.objectType', { defaultMessage: 'graph', })} + showDescription={false} options={ <> <EuiFormRow diff --git a/x-pack/legacy/plugins/lens/public/app_plugin/app.tsx b/x-pack/legacy/plugins/lens/public/app_plugin/app.tsx index a212cb0a1a8797..a0c6e4c21a34bd 100644 --- a/x-pack/legacy/plugins/lens/public/app_plugin/app.tsx +++ b/x-pack/legacy/plugins/lens/public/app_plugin/app.tsx @@ -374,6 +374,7 @@ export function App({ objectType={i18n.translate('xpack.lens.app.saveModalType', { defaultMessage: 'Lens visualization', })} + showDescription={false} confirmButtonLabel={confirmButton} /> )} diff --git a/x-pack/legacy/plugins/maps/public/angular/map_controller.js b/x-pack/legacy/plugins/maps/public/angular/map_controller.js index a8e9ae46a3b9ad..84ead42d3374e1 100644 --- a/x-pack/legacy/plugins/maps/public/angular/map_controller.js +++ b/x-pack/legacy/plugins/maps/public/angular/map_controller.js @@ -595,6 +595,7 @@ app.controller( title={savedMap.title} showCopyOnSave={savedMap.id ? true : false} objectType={MAP_SAVED_OBJECT_TYPE} + showDescription={false} /> ); showSaveModal(saveModal, npStart.core.i18n.Context); From 4ef594c20896c84380bb2e6ad1a7730ca2c43608 Mon Sep 17 00:00:00 2001 From: James Gowdy <jgowdy@elastic.co> Date: Tue, 3 Mar 2020 11:59:35 +0000 Subject: [PATCH 044/120] [ML] Adding indices_options to datafeed (#59119) * [ML] Adding indices_options to datafeed * adding extra checks to the schema * updating expand_wildcards --- .../common/job_creator/configs/datafeed.ts | 8 ++++++++ .../ml/server/routes/schemas/datafeeds_schema.ts | 15 ++++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/x-pack/legacy/plugins/ml/public/application/jobs/new_job/common/job_creator/configs/datafeed.ts b/x-pack/legacy/plugins/ml/public/application/jobs/new_job/common/job_creator/configs/datafeed.ts index e35f3056ce4347..538b225926f652 100644 --- a/x-pack/legacy/plugins/ml/public/application/jobs/new_job/common/job_creator/configs/datafeed.ts +++ b/x-pack/legacy/plugins/ml/public/application/jobs/new_job/common/job_creator/configs/datafeed.ts @@ -25,6 +25,7 @@ export interface Datafeed { script_fields?: object; scroll_size?: number; delayed_data_check_config?: object; + indices_options?: IndicesOptions; } export interface ChunkingConfig { @@ -42,3 +43,10 @@ interface Aggregation { aggs?: { [key: string]: any }; }; } + +interface IndicesOptions { + expand_wildcards?: 'all' | 'open' | 'closed' | 'hidden' | 'none'; + ignore_unavailable?: boolean; + allow_no_indices?: boolean; + ignore_throttled?: boolean; +} diff --git a/x-pack/plugins/ml/server/routes/schemas/datafeeds_schema.ts b/x-pack/plugins/ml/server/routes/schemas/datafeeds_schema.ts index 02677dcb107c2f..ee49da6538460c 100644 --- a/x-pack/plugins/ml/server/routes/schemas/datafeeds_schema.ts +++ b/x-pack/plugins/ml/server/routes/schemas/datafeeds_schema.ts @@ -17,7 +17,12 @@ export const datafeedConfigSchema = schema.object({ feed_id: schema.maybe(schema.string()), aggregations: schema.maybe(schema.any()), aggs: schema.maybe(schema.any()), - chunking_config: schema.maybe(schema.any()), + chunking_config: schema.maybe( + schema.object({ + mode: schema.maybe(schema.string()), + time_span: schema.maybe(schema.string()), + }) + ), frequency: schema.maybe(schema.string()), indices: schema.arrayOf(schema.string()), indexes: schema.maybe(schema.arrayOf(schema.string())), @@ -28,4 +33,12 @@ export const datafeedConfigSchema = schema.object({ script_fields: schema.maybe(schema.any()), scroll_size: schema.maybe(schema.number()), delayed_data_check_config: schema.maybe(schema.any()), + indices_options: schema.maybe( + schema.object({ + expand_wildcards: schema.maybe(schema.arrayOf(schema.string())), + ignore_unavailable: schema.maybe(schema.boolean()), + allow_no_indices: schema.maybe(schema.boolean()), + ignore_throttled: schema.maybe(schema.boolean()), + }) + ), }); From bfca202c4f08af4f430e688afa6efde79aa51368 Mon Sep 17 00:00:00 2001 From: Justin Kambic <justin.kambic@elastic.co> Date: Tue, 3 Mar 2020 07:52:57 -0500 Subject: [PATCH 045/120] [Uptime] Add default chart empty state (#57725) * Add default chart empty state. * Delete obsolete translations. Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../chart_empty_state.test.tsx.snap | 49 +++++++ .../__tests__/chart_empty_state.test.tsx | 35 +++++ .../functional/charts/chart_empty_state.tsx | 24 ++++ .../functional/charts/checks_chart.tsx | 124 ------------------ .../functional/charts/duration_chart.tsx | 15 ++- .../charts/duration_chart_empty_state.tsx | 33 ----- .../functional/charts/ping_histogram.tsx | 104 ++++++--------- .../translations/translations/ja-JP.json | 5 - .../translations/translations/zh-CN.json | 5 - 9 files changed, 163 insertions(+), 231 deletions(-) create mode 100644 x-pack/legacy/plugins/uptime/public/components/functional/charts/__tests__/__snapshots__/chart_empty_state.test.tsx.snap create mode 100644 x-pack/legacy/plugins/uptime/public/components/functional/charts/__tests__/chart_empty_state.test.tsx create mode 100644 x-pack/legacy/plugins/uptime/public/components/functional/charts/chart_empty_state.tsx delete mode 100644 x-pack/legacy/plugins/uptime/public/components/functional/charts/checks_chart.tsx delete mode 100644 x-pack/legacy/plugins/uptime/public/components/functional/charts/duration_chart_empty_state.tsx diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/charts/__tests__/__snapshots__/chart_empty_state.test.tsx.snap b/x-pack/legacy/plugins/uptime/public/components/functional/charts/__tests__/__snapshots__/chart_empty_state.test.tsx.snap new file mode 100644 index 00000000000000..79ef7b3b97abdf --- /dev/null +++ b/x-pack/legacy/plugins/uptime/public/components/functional/charts/__tests__/__snapshots__/chart_empty_state.test.tsx.snap @@ -0,0 +1,49 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`ChartEmptyState renders JSX values 1`] = ` +<EuiEmptyPrompt + body={ + <p> + <FormattedMessage + defaultMessage="This is the default with a {val} included" + id="test.body" + values={ + Object { + "val": <strong> + down + </strong>, + } + } + /> + </p> + } + title={ + <EuiTitle> + <h5> + <FormattedMessage + defaultMessage="The title" + id="test.title" + values={Object {}} + /> + </h5> + </EuiTitle> + } +/> +`; + +exports[`ChartEmptyState renders string values 1`] = ` +<EuiEmptyPrompt + body={ + <p> + This is the body + </p> + } + title={ + <EuiTitle> + <h5> + This is the title + </h5> + </EuiTitle> + } +/> +`; diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/charts/__tests__/chart_empty_state.test.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/charts/__tests__/chart_empty_state.test.tsx new file mode 100644 index 00000000000000..2e25dddc0b4edf --- /dev/null +++ b/x-pack/legacy/plugins/uptime/public/components/functional/charts/__tests__/chart_empty_state.test.tsx @@ -0,0 +1,35 @@ +/* + * 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 { ChartEmptyState } from '../chart_empty_state'; +import { shallowWithIntl } from 'test_utils/enzyme_helpers'; +import React from 'react'; +import { FormattedMessage } from '@kbn/i18n/react'; + +describe('ChartEmptyState', () => { + it('renders string values', () => { + expect( + shallowWithIntl(<ChartEmptyState body="This is the body" title="This is the title" />) + ).toMatchSnapshot(); + }); + + it('renders JSX values', () => { + expect( + shallowWithIntl( + <ChartEmptyState + body={ + <FormattedMessage + id="test.body" + defaultMessage="This is the default with a {val} included" + values={{ val: <strong>down</strong> }} + /> + } + title={<FormattedMessage id="test.title" defaultMessage="The title" />} + /> + ) + ).toMatchSnapshot(); + }); +}); diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/charts/chart_empty_state.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/charts/chart_empty_state.tsx new file mode 100644 index 00000000000000..19202822fe737c --- /dev/null +++ b/x-pack/legacy/plugins/uptime/public/components/functional/charts/chart_empty_state.tsx @@ -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 { EuiEmptyPrompt, EuiTitle } from '@elastic/eui'; +import React, { FC } from 'react'; + +interface ChartEmptyStateProps { + title: string | JSX.Element; + body: string | JSX.Element; +} + +export const ChartEmptyState: FC<ChartEmptyStateProps> = ({ title, body }) => ( + <EuiEmptyPrompt + title={ + <EuiTitle> + <h5>{title}</h5> + </EuiTitle> + } + body={<p>{body}</p>} + /> +); diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/charts/checks_chart.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/charts/checks_chart.tsx deleted file mode 100644 index a88a9668660f7a..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/components/functional/charts/checks_chart.tsx +++ /dev/null @@ -1,124 +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 { - AreaSeries, - Axis, - Chart, - Position, - Settings, - ScaleType, - timeFormatter, -} from '@elastic/charts'; -import { EuiPanel, EuiTitle } from '@elastic/eui'; -import React from 'react'; -import { i18n } from '@kbn/i18n'; -import { FormattedMessage } from '@kbn/i18n/react'; -import { StatusData } from '../../../../common/graphql/types'; -import { getChartDateLabel } from '../../../lib/helper'; -import { useUrlParams } from '../../../hooks'; - -interface ChecksChartProps { - /** - * The color that will be used for the area series displaying "Down" checks. - */ - dangerColor: string; - /** - * The timeseries data displayed in the chart. - */ - status: StatusData[]; - /** - * The color that will be used for the area series displaying "Up" checks. - */ - successColor: string; -} - -/** - * Renders a chart that displays the total count of up/down status checks over time - * as a stacked area chart. - * @param props The props values required by this component. - */ -export const ChecksChart = ({ dangerColor, status, successColor }: ChecksChartProps) => { - const upSeriesSpecId = 'Up'; - const downSeriesSpecId = 'Down'; - const [getUrlParams] = useUrlParams(); - const { absoluteDateRangeStart: min, absoluteDateRangeEnd: max } = getUrlParams(); - - const upString = i18n.translate('xpack.uptime.monitorCharts.checkStatus.series.upCountLabel', { - defaultMessage: 'Up count', - }); - const downString = i18n.translate( - 'xpack.uptime.monitorCharts.checkStatus.series.downCountLabel', - { - defaultMessage: 'Down count', - } - ); - - return ( - <React.Fragment> - <EuiTitle size="xs"> - <h4> - <FormattedMessage - id="xpack.uptime.monitorCharts.checkStatus.title" - defaultMessage="Check status" - /> - </h4> - </EuiTitle> - <EuiPanel> - <Chart> - <Settings xDomain={{ min, max }} showLegend={false} /> - <Axis - id="checksBottom" - position={Position.Bottom} - showOverlappingTicks={true} - tickFormat={timeFormatter(getChartDateLabel(min, max))} - title={i18n.translate('xpack.uptime.monitorChart.checksChart.bottomAxis.title', { - defaultMessage: 'Timestamp', - description: 'The heading of the x-axis of a chart of timeseries data.', - })} - /> - <Axis - id="left" - position={Position.Left} - tickFormat={d => Number(d).toFixed(0)} - title={i18n.translate('xpack.uptime.monitorChart.checksChart.leftAxis.title', { - defaultMessage: 'Number of checks', - description: 'The heading of the y-axis of a chart of timeseries data', - })} - /> - <AreaSeries - customSeriesColors={[successColor]} - data={status.map(({ x, up }) => ({ - x, - [upString]: up || 0, - }))} - id={upSeriesSpecId} - stackAccessors={['x']} - timeZone="local" - xAccessor="x" - xScaleType={ScaleType.Time} - yAccessors={[upString]} - yScaleType={ScaleType.Linear} - /> - <AreaSeries - customSeriesColors={[downSeriesSpecId]} - data={status.map(({ x, down }) => ({ - x, - [downString]: down || 0, - }))} - id={downSeriesSpecId} - stackAccessors={['x']} - timeZone="local" - xAccessor="x" - xScaleType={ScaleType.Time} - yAccessors={[downString]} - yScaleType={ScaleType.Linear} - /> - </Chart> - </EuiPanel> - </React.Fragment> - ); -}; diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/charts/duration_chart.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/charts/duration_chart.tsx index 7a6db6d952dd91..0488e2531bc98d 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/charts/duration_chart.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/charts/duration_chart.tsx @@ -13,10 +13,10 @@ import { FormattedMessage } from '@kbn/i18n/react'; import { getChartDateLabel } from '../../../lib/helper'; import { LocationDurationLine } from '../../../../common/graphql/types'; import { DurationLineSeriesList } from './duration_line_series_list'; -import { DurationChartEmptyState } from './duration_chart_empty_state'; import { ChartWrapper } from './chart_wrapper'; import { useUrlParams } from '../../../hooks'; import { getTickFormat } from './get_tick_format'; +import { ChartEmptyState } from './chart_empty_state'; interface DurationChartProps { /** @@ -102,7 +102,18 @@ export const DurationChart = ({ <DurationLineSeriesList lines={locationDurationLines} meanColor={meanColor} /> </Chart> ) : ( - <DurationChartEmptyState /> + <ChartEmptyState + body={ + <FormattedMessage + id="xpack.uptime.durationChart.emptyPrompt.description" + defaultMessage="This monitor has never been {emphasizedText} during the selected time range." + values={{ emphasizedText: <strong>up</strong> }} + /> + } + title={i18n.translate('xpack.uptime.durationChart.emptyPrompt.title', { + defaultMessage: 'No duration data available', + })} + /> )} </ChartWrapper> </EuiPanel> diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/charts/duration_chart_empty_state.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/charts/duration_chart_empty_state.tsx deleted file mode 100644 index ef4e70bf658984..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/components/functional/charts/duration_chart_empty_state.tsx +++ /dev/null @@ -1,33 +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 { FormattedMessage } from '@kbn/i18n/react'; -import { EuiEmptyPrompt, EuiTitle } from '@elastic/eui'; -import React from 'react'; - -export const DurationChartEmptyState = () => ( - <EuiEmptyPrompt - title={ - <EuiTitle> - <h5> - <FormattedMessage - id="xpack.uptime.durationChart.emptyPrompt.title" - defaultMessage="No duration data available" - /> - </h5> - </EuiTitle> - } - body={ - <p> - <FormattedMessage - id="xpack.uptime.durationChart.emptyPrompt.description" - defaultMessage="This monitor has never been {emphasizedText} during the selected time range." - values={{ emphasizedText: <strong>up</strong> }} - /> - </p> - } - /> -); diff --git a/x-pack/legacy/plugins/uptime/public/components/functional/charts/ping_histogram.tsx b/x-pack/legacy/plugins/uptime/public/components/functional/charts/ping_histogram.tsx index b4989282f854c5..6119d897cbf53b 100644 --- a/x-pack/legacy/plugins/uptime/public/components/functional/charts/ping_histogram.tsx +++ b/x-pack/legacy/plugins/uptime/public/components/functional/charts/ping_histogram.tsx @@ -5,7 +5,7 @@ */ import { Axis, BarSeries, Chart, Position, Settings, timeFormatter } from '@elastic/charts'; -import { EuiEmptyPrompt, EuiPanel, EuiTitle } from '@elastic/eui'; +import { EuiTitle } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import React, { useContext } from 'react'; import { FormattedMessage } from '@kbn/i18n/react'; @@ -15,6 +15,7 @@ import { ChartWrapper } from './chart_wrapper'; import { UptimeThemeContext } from '../../../contexts'; import { HistogramResult } from '../../../../common/types'; import { useUrlParams } from '../../../hooks'; +import { ChartEmptyState } from './chart_empty_state'; export interface PingHistogramComponentProps { /** @@ -49,71 +50,36 @@ export const PingHistogramComponent: React.FC<PingHistogramComponentProps> = ({ const [, updateUrlParams] = useUrlParams(); - if (!data || !data.histogram) - /** - * TODO: the Fragment, EuiTitle, and EuiPanel should be extracted to a dumb component - * that we can reuse in the subsequent return statement at the bottom of this function. - */ - return ( - <> - <EuiTitle size="xs"> - <h5> - <FormattedMessage - id="xpack.uptime.snapshot.pingsOverTimeTitle" - defaultMessage="Pings over time" - /> - </h5> - </EuiTitle> - <EuiPanel paddingSize="s" style={{ height: 170 }}> - <EuiEmptyPrompt - title={ - <EuiTitle> - <h5> - <FormattedMessage - id="xpack.uptime.snapshot.noDataTitle" - defaultMessage="No histogram data available" - /> - </h5> - </EuiTitle> - } - body={ - <p> - <FormattedMessage - id="xpack.uptime.snapshot.noDataDescription" - defaultMessage="Sorry, there is no data available for the histogram" - /> - </p> - } - /> - </EuiPanel> - </> + let content: JSX.Element | undefined; + if (!data?.histogram?.length) { + content = ( + <ChartEmptyState + title={i18n.translate('xpack.uptime.snapshot.noDataTitle', { + defaultMessage: 'No ping data available', + })} + body={i18n.translate('xpack.uptime.snapshot.noDataDescription', { + defaultMessage: 'There are no pings in the selected time range.', + })} + /> ); - const { histogram } = data; - - const downSpecId = i18n.translate('xpack.uptime.snapshotHistogram.downMonitorsId', { - defaultMessage: 'Down Monitors', - }); + } else { + const { histogram } = data; - const upMonitorsId = i18n.translate('xpack.uptime.snapshotHistogram.series.upLabel', { - defaultMessage: 'Up', - }); + const downSpecId = i18n.translate('xpack.uptime.snapshotHistogram.downMonitorsId', { + defaultMessage: 'Down Monitors', + }); - const onBrushEnd = (min: number, max: number) => { - updateUrlParams({ - dateRangeStart: moment(min).toISOString(), - dateRangeEnd: moment(max).toISOString(), + const upMonitorsId = i18n.translate('xpack.uptime.snapshotHistogram.series.upLabel', { + defaultMessage: 'Up', }); - }; - return ( - <> - <EuiTitle size="xs"> - <h2> - <FormattedMessage - id="xpack.uptime.snapshot.pingsOverTimeTitle" - defaultMessage="Pings over time" - /> - </h2> - </EuiTitle> + + const onBrushEnd = (min: number, max: number) => { + updateUrlParams({ + dateRangeStart: moment(min).toISOString(), + dateRangeEnd: moment(max).toISOString(), + }); + }; + content = ( <ChartWrapper height={height} loading={loading} @@ -183,6 +149,20 @@ export const PingHistogramComponent: React.FC<PingHistogramComponentProps> = ({ /> </Chart> </ChartWrapper> + ); + } + + return ( + <> + <EuiTitle size="xs"> + <h2> + <FormattedMessage + id="xpack.uptime.snapshot.pingsOverTimeTitle" + defaultMessage="Pings over time" + /> + </h2> + </EuiTitle> + {content} </> ); }; diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 7fdffbec783118..75db834a969d0e 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -12689,11 +12689,6 @@ "xpack.uptime.kueryBar.indexPatternMissingWarningMessage": "インデックスパターンの取得中にエラーが発生しました。", "xpack.uptime.kueryBar.searchPlaceholder": "モニター ID、名前、プロトコルタイプなどを検索…", "xpack.uptime.locationName.helpLinkAnnotation": "場所を追加", - "xpack.uptime.monitorChart.checksChart.bottomAxis.title": "タイムスタンプ", - "xpack.uptime.monitorChart.checksChart.leftAxis.title": "チェックの数", - "xpack.uptime.monitorCharts.checkStatus.series.downCountLabel": "ダウンカウント", - "xpack.uptime.monitorCharts.checkStatus.series.upCountLabel": "アップカウント", - "xpack.uptime.monitorCharts.checkStatus.title": "ステータスを確認", "xpack.uptime.monitorCharts.durationChart.bottomAxis.title": "タイムスタンプ", "xpack.uptime.monitorCharts.durationChart.leftAxis.title": "期間ms", "xpack.uptime.monitorCharts.loadingMessage": "読み込み中…", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index 438a8f91975081..d67d2054a2da65 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -12689,11 +12689,6 @@ "xpack.uptime.kueryBar.indexPatternMissingWarningMessage": "检索索引模式时出错。", "xpack.uptime.kueryBar.searchPlaceholder": "搜索监测 ID、名称和协议类型......", "xpack.uptime.locationName.helpLinkAnnotation": "添加位置", - "xpack.uptime.monitorChart.checksChart.bottomAxis.title": "鏃堕棿鎴", - "xpack.uptime.monitorChart.checksChart.leftAxis.title": "检查数目", - "xpack.uptime.monitorCharts.checkStatus.series.downCountLabel": "关闭计数", - "xpack.uptime.monitorCharts.checkStatus.series.upCountLabel": "运行计数", - "xpack.uptime.monitorCharts.checkStatus.title": "检查状态", "xpack.uptime.monitorCharts.durationChart.bottomAxis.title": "鏃堕棿鎴", "xpack.uptime.monitorCharts.durationChart.leftAxis.title": "持续时间 (ms)", "xpack.uptime.monitorCharts.loadingMessage": "正在加载……", From 388705509ff6694268da8d5a3f3d300d2b843669 Mon Sep 17 00:00:00 2001 From: Patrick Mueller <pmuellr@gmail.com> Date: Tue, 3 Mar 2020 08:28:31 -0500 Subject: [PATCH 046/120] [Alerting]: get type-checking, tests, and ui working for index threshold (#59064) This is a follow-on to https://github.com/elastic/kibana/pull/57030 , "[alerting] initial index threshold alertType and supporting APIs", to get it working with the existing alerting UI. The parameter shape was different between the two, so the alertType was changed to fix the existing UI shapes expected. --- .../alert_types/index_threshold/README.md | 85 ++++++++------- .../index_threshold/action_context.test.ts | 30 +++-- .../index_threshold/action_context.ts | 5 +- .../index_threshold/alert_type.test.ts | 17 ++- .../alert_types/index_threshold/alert_type.ts | 25 +++-- .../index_threshold/alert_type_params.test.ts | 29 ++--- .../index_threshold/alert_type_params.ts | 30 ++--- .../lib/core_query_types.test.ts | 103 ++++++++++++------ .../index_threshold/lib/core_query_types.ts | 100 ++++++++++------- .../lib/time_series_query.test.ts | 24 ++-- .../index_threshold/lib/time_series_query.ts | 24 ++-- .../lib/time_series_types.test.ts | 15 ++- .../index_threshold/lib/time_series_types.ts | 19 +++- .../threshold/expression.tsx | 3 - .../builtin_alert_types/threshold/index.ts | 2 +- .../common/expression_items/group_by_over.tsx | 2 + .../index_threshold/query_data_endpoint.ts | 20 ++-- .../apps/triggers_actions_ui/alerts.ts | 45 +++++--- 18 files changed, 342 insertions(+), 236 deletions(-) diff --git a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/README.md b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/README.md index b1a9e6daaaee30..582c9df731a153 100644 --- a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/README.md +++ b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/README.md @@ -58,43 +58,47 @@ Finally, create the alert: ``` kbn-alert create .index-threshold 'es-hb-sim threshold' 1s \ '{ - index: es-hb-sim - timeField: @timestamp - aggType: average - aggField: summary.up - groupField: monitor.name.keyword - window: 5s - comparator: lessThan - threshold: [ 0.6 ] + index: es-hb-sim + timeField: @timestamp + aggType: avg + aggField: summary.up + groupBy: top + termSize: 100 + termField: monitor.name.keyword + timeWindowSize: 5 + timeWindowUnit: s + thresholdComparator: < + threshold: [ 0.6 ] }' \ "[ { - group: threshold met - id: '$ACTION_ID' + group: threshold met + id: '$ACTION_ID' params: { - level: warn - message: '{{context.message}}' + level: warn + message: '{{{context.message}}}' } } ]" ``` This alert will run a query over the `es-hb-sim` index, using the `@timestamp` -field as the date field, using an `average` aggregation over the `summary.up` -field. The results are then aggregated by `monitor.name.keyword`. If we ran +field as the date field, aggregating over groups of the field value +`monitor.name.keyword` (the top 100 groups), then aggregating those values +using an `average` aggregation over the `summary.up` field. If we ran another instance of `es-hb-sim`, using `host-B` instead of `host-A`, then the alert will end up potentially scheduling actions for both, independently. Within the alerting plugin, this grouping is also referred to as "instanceIds" (`host-A` and `host-B` being distinct instanceIds, which can have actions scheduled against them independently). -The `window` is set to `5s` which is 5 seconds. That means, every time the +The time window is set to 5 seconds. That means, every time the alert runs it's queries (every second, in the example above), it will run it's ES query over the last 5 seconds. Thus, the queries, over time, will overlap. Sometimes that's what you want. Other times, maybe you just want to do sampling, running an alert every hour, with a 5 minute window. Up to the you! -Using the `comparator` `lessThan` and `threshold` `[0.6]`, the alert will +Using the `thresholdComparator` `<` and `threshold` `[0.6]`, the alert will calculate the average of all the `summary.up` fields for each unique `monitor.name.keyword`, and then if the value is less than 0.6, it will schedule the specified action (server log) to run. The `message` param @@ -110,11 +114,10 @@ working: ``` server log [17:32:10.060] [warning][actions][actions][plugins] \ - Server log: alert es-hb-sim threshold instance host-A value 0 \ - exceeded threshold average(summary.up) lessThan 0.6 over 5s \ + Server log: alert es-hb-sim threshold group host-A value 0 \ + exceeded threshold avg(summary.up) < 0.6 over 5s \ on 2020-02-20T22:32:07.000Z ``` - [kbn-action]: https://github.com/pmuellr/kbn-action [es-hb-sim]: https://github.com/pmuellr/es-hb-sim [now-iso]: https://github.com/pmuellr/now-iso @@ -144,15 +147,18 @@ This example uses [now-iso][] to generate iso date strings. ```console curl -k "https://elastic:changeme@localhost:5601/api/alerting_builtins/index_threshold/_time_series_query" \ -H "kbn-xsrf: foo" -H "content-type: application/json" -d "{ - \"index\": \"es-hb-sim\", - \"timeField\": \"@timestamp\", - \"aggType\": \"average\", - \"aggField\": \"summary.up\", - \"groupField\": \"monitor.name.keyword\", - \"interval\": \"1s\", - \"dateStart\": \"`now-iso -10s`\", - \"dateEnd\": \"`now-iso`\", - \"window\": \"5s\" + \"index\": \"es-hb-sim\", + \"timeField\": \"@timestamp\", + \"aggType\": \"avg\", + \"aggField\": \"summary.up\", + \"groupBy\": \"top\", + \"termSize\": 100, + \"termField\": \"monitor.name.keyword\", + \"interval\": \"1s\", + \"dateStart\": \"`now-iso -10s`\", + \"dateEnd\": \"`now-iso`\", + \"timeWindowSize\": 5, + \"timeWindowUnit\": \"s\" }" ``` @@ -184,13 +190,16 @@ To get the current value of the calculated metric, you can leave off the date: ``` curl -k "https://elastic:changeme@localhost:5601/api/alerting_builtins/index_threshold/_time_series_query" \ -H "kbn-xsrf: foo" -H "content-type: application/json" -d '{ - "index": "es-hb-sim", - "timeField": "@timestamp", - "aggType": "average", - "aggField": "summary.up", - "groupField": "monitor.name.keyword", - "interval": "1s", - "window": "5s" + "index": "es-hb-sim", + "timeField": "@timestamp", + "aggType": "avg", + "aggField": "summary.up", + "groupBy": "top", + "termField": "monitor.name.keyword", + "termSize": 100, + "interval": "1s", + "timeWindowSize": 5, + "timeWindowUnit": "s" }' ``` @@ -254,7 +263,7 @@ be ~24 time series points in the output. For preview purposes: -- The `groupLimit` parameter should be used to help cut +- The `termSize` parameter should be used to help cut down on the amount of work ES does, and keep the generated graphs a little simpler. Probably something like `10`. @@ -263,9 +272,9 @@ simpler. Probably something like `10`. could result in a lot of time-series points being generated, which is both costly in ES, and may result in noisy graphs. -- The `window` parameter should be the same as what the alert is using, +- The `timeWindow*` parameters should be the same as what the alert is using, especially for the `count` and `sum` aggregation types. Those aggregations don't scale the same way the others do, when the window changes. Even for the other aggregations, changing the window could result in dramatically -different values being generated - `averages` will be more "average-y", `min` +different values being generated - `avg` will be more "average-y", `min` and `max` will be a little stickier. \ No newline at end of file diff --git a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/action_context.test.ts b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/action_context.test.ts index fbadf14f1d560d..e4cba7855e5f6e 100644 --- a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/action_context.test.ts +++ b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/action_context.test.ts @@ -21,8 +21,12 @@ describe('ActionContext', () => { index: '[index]', timeField: '[timeField]', aggType: 'count', - window: '5m', - comparator: 'greaterThan', + groupBy: 'top', + termField: 'x', + termSize: 100, + timeWindowSize: 5, + timeWindowUnit: 'm', + thresholdComparator: '>', threshold: [4], }); const context = addMessages(base, params); @@ -30,7 +34,7 @@ describe('ActionContext', () => { `"alert [name] group [group] exceeded threshold"` ); expect(context.message).toMatchInlineSnapshot( - `"alert [name] group [group] value 42 exceeded threshold count greaterThan 4 over 5m on 2020-01-01T00:00:00.000Z"` + `"alert [name] group [group] value 42 exceeded threshold count > 4 over 5m on 2020-01-01T00:00:00.000Z"` ); }); @@ -46,10 +50,14 @@ describe('ActionContext', () => { const params = ParamsSchema.validate({ index: '[index]', timeField: '[timeField]', - aggType: 'average', + aggType: 'avg', + groupBy: 'top', + termField: 'x', + termSize: 100, aggField: '[aggField]', - window: '5m', - comparator: 'greaterThan', + timeWindowSize: 5, + timeWindowUnit: 'm', + thresholdComparator: '>', threshold: [4.2], }); const context = addMessages(base, params); @@ -57,7 +65,7 @@ describe('ActionContext', () => { `"alert [name] group [group] exceeded threshold"` ); expect(context.message).toMatchInlineSnapshot( - `"alert [name] group [group] value 42 exceeded threshold average([aggField]) greaterThan 4.2 over 5m on 2020-01-01T00:00:00.000Z"` + `"alert [name] group [group] value 42 exceeded threshold avg([aggField]) > 4.2 over 5m on 2020-01-01T00:00:00.000Z"` ); }); @@ -74,8 +82,12 @@ describe('ActionContext', () => { index: '[index]', timeField: '[timeField]', aggType: 'count', - window: '5m', - comparator: 'between', + groupBy: 'top', + termField: 'x', + termSize: 100, + timeWindowSize: 5, + timeWindowUnit: 'm', + thresholdComparator: 'between', threshold: [4, 5], }); const context = addMessages(base, params); diff --git a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/action_context.ts b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/action_context.ts index 98a8e5ae14b7f0..72e42c7c0c2fa2 100644 --- a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/action_context.ts +++ b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/action_context.ts @@ -47,8 +47,9 @@ export function addMessages(c: BaseActionContext, p: Params): ActionContext { ); const agg = p.aggField ? `${p.aggType}(${p.aggField})` : `${p.aggType}`; - const humanFn = `${agg} ${p.comparator} ${p.threshold.join(',')}`; + const humanFn = `${agg} ${p.thresholdComparator} ${p.threshold.join(',')}`; + const window = `${p.timeWindowSize}${p.timeWindowUnit}`; const message = i18n.translate( 'xpack.alertingBuiltins.indexThreshold.alertTypeContextMessageDescription', { @@ -59,7 +60,7 @@ export function addMessages(c: BaseActionContext, p: Params): ActionContext { group: c.group, value: c.value, function: humanFn, - window: p.window, + window, date: c.date, }, } diff --git a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type.test.ts b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type.test.ts index f6e26cdaa283a9..5034b1ee0cd018 100644 --- a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type.test.ts +++ b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type.test.ts @@ -6,6 +6,7 @@ import { loggingServiceMock } from '../../../../../../src/core/server/mocks'; import { getAlertType } from './alert_type'; +import { Params } from './alert_type_params'; describe('alertType', () => { const service = { @@ -24,12 +25,14 @@ describe('alertType', () => { }); it('validator succeeds with valid params', async () => { - const params = { + const params: Partial<Writable<Params>> = { index: 'index-name', timeField: 'time-field', aggType: 'count', - window: '5m', - comparator: 'greaterThan', + groupBy: 'all', + timeWindowSize: 5, + timeWindowUnit: 'm', + thresholdComparator: '<', threshold: [0], }; @@ -40,12 +43,14 @@ describe('alertType', () => { const paramsSchema = alertType.validate?.params; if (!paramsSchema) throw new Error('params validator not set'); - const params = { + const params: Partial<Writable<Params>> = { index: 'index-name', timeField: 'time-field', aggType: 'foo', - window: '5m', - comparator: 'greaterThan', + groupBy: 'all', + timeWindowSize: 5, + timeWindowUnit: 'm', + thresholdComparator: '>', threshold: [0], }; diff --git a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type.ts b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type.ts index 2b0c07ed4355aa..4610e0fbaf0da6 100644 --- a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type.ts +++ b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type.ts @@ -8,6 +8,7 @@ import { i18n } from '@kbn/i18n'; import { AlertType, AlertExecutorOptions } from '../../types'; import { Params, ParamsSchema } from './alert_type_params'; import { BaseActionContext, addMessages } from './action_context'; +import { TimeSeriesQuery } from './lib/time_series_query'; export const ID = '.index-threshold'; @@ -46,24 +47,26 @@ export function getAlertType(service: Service): AlertType { const { alertId, name, services } = options; const params: Params = options.params as Params; - const compareFn = ComparatorFns.get(params.comparator); + const compareFn = ComparatorFns.get(params.thresholdComparator); if (compareFn == null) { - throw new Error(getInvalidComparatorMessage(params.comparator)); + throw new Error(getInvalidComparatorMessage(params.thresholdComparator)); } const callCluster = services.callCluster; const date = new Date().toISOString(); // the undefined values below are for config-schema optional types - const queryParams = { + const queryParams: TimeSeriesQuery = { index: params.index, timeField: params.timeField, aggType: params.aggType, aggField: params.aggField, - groupField: params.groupField, - groupLimit: params.groupLimit, + groupBy: params.groupBy, + termField: params.termField, + termSize: params.termSize, dateStart: date, dateEnd: date, - window: params.window, + timeWindowSize: params.timeWindowSize, + timeWindowUnit: params.timeWindowUnit, interval: undefined, }; const result = await service.indexThreshold.timeSeriesQuery({ @@ -100,7 +103,7 @@ export function getAlertType(service: Service): AlertType { export function getInvalidComparatorMessage(comparator: string) { return i18n.translate('xpack.alertingBuiltins.indexThreshold.invalidComparatorErrorMessage', { - defaultMessage: 'invalid comparator specified: {comparator}', + defaultMessage: 'invalid thresholdComparator specified: {comparator}', values: { comparator, }, @@ -111,10 +114,10 @@ type ComparatorFn = (value: number, threshold: number[]) => boolean; function getComparatorFns(): Map<string, ComparatorFn> { const fns: Record<string, ComparatorFn> = { - lessThan: (value: number, threshold: number[]) => value < threshold[0], - lessThanOrEqual: (value: number, threshold: number[]) => value <= threshold[0], - greaterThanOrEqual: (value: number, threshold: number[]) => value >= threshold[0], - greaterThan: (value: number, threshold: number[]) => value > threshold[0], + '<': (value: number, threshold: number[]) => value < threshold[0], + '<=': (value: number, threshold: number[]) => value <= threshold[0], + '>=': (value: number, threshold: number[]) => value >= threshold[0], + '>': (value: number, threshold: number[]) => value > threshold[0], between: (value: number, threshold: number[]) => value >= threshold[0] && value <= threshold[1], notBetween: (value: number, threshold: number[]) => value < threshold[0] || value > threshold[1], diff --git a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type_params.test.ts b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type_params.test.ts index b9f66cfa7a2536..33d1e1897e943a 100644 --- a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type_params.test.ts +++ b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type_params.test.ts @@ -4,15 +4,17 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ParamsSchema } from './alert_type_params'; +import { ParamsSchema, Params } from './alert_type_params'; import { runTests } from './lib/core_query_types.test'; -const DefaultParams = { +const DefaultParams: Writable<Partial<Params>> = { index: 'index-name', timeField: 'time-field', aggType: 'count', - window: '5m', - comparator: 'greaterThan', + groupBy: 'all', + timeWindowSize: 5, + timeWindowUnit: 'm', + thresholdComparator: '>', threshold: [0], }; @@ -29,28 +31,29 @@ describe('alertType Params validate()', () => { }); it('passes for maximal valid input', async () => { - params.aggType = 'average'; + params.aggType = 'avg'; params.aggField = 'agg-field'; - params.groupField = 'group-field'; - params.groupLimit = 100; + params.groupBy = 'top'; + params.termField = 'group-field'; + params.termSize = 100; expect(validate()).toBeTruthy(); }); it('fails for invalid comparator', async () => { - params.comparator = '[invalid-comparator]'; + params.thresholdComparator = '[invalid-comparator]'; expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[comparator]: invalid comparator specified: [invalid-comparator]"` + `"[thresholdComparator]: invalid thresholdComparator specified: [invalid-comparator]"` ); }); it('fails for invalid threshold length', async () => { - params.comparator = 'lessThan'; - params.threshold = [0, 1]; + params.thresholdComparator = '<'; + params.threshold = [0, 1, 2]; expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[threshold]: must have one element for the \\"lessThan\\" comparator"` + `"[threshold]: array size is [3], but cannot be greater than [2]"` ); - params.comparator = 'between'; + params.thresholdComparator = 'between'; params.threshold = [0]; expect(onValidate()).toThrowErrorMatchingInlineSnapshot( `"[threshold]: must have two elements for the \\"between\\" comparator"` diff --git a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type_params.ts b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type_params.ts index d5b83f9f6ad5a0..f83d7fa07cd2a6 100644 --- a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type_params.ts +++ b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/alert_type_params.ts @@ -17,7 +17,7 @@ export const ParamsSchema = schema.object( { ...CoreQueryParamsSchemaProperties, // the comparison function to use to determine if the threshold as been met - comparator: schema.string({ validate: validateComparator }), + thresholdComparator: schema.string({ validate: validateComparator }), // the values to use as the threshold; `between` and `notBetween` require // two values, the others require one. threshold: schema.arrayOf(schema.number(), { minSize: 1, maxSize: 2 }), @@ -35,26 +35,16 @@ function validateParams(anyParams: any): string | undefined { const coreQueryValidated = validateCoreQueryBody(anyParams); if (coreQueryValidated) return coreQueryValidated; - const { comparator, threshold }: Params = anyParams; + const { thresholdComparator, threshold }: Params = anyParams; - if (betweenComparators.has(comparator)) { - if (threshold.length === 1) { - return i18n.translate('xpack.alertingBuiltins.indexThreshold.invalidThreshold2ErrorMessage', { - defaultMessage: '[threshold]: must have two elements for the "{comparator}" comparator', - values: { - comparator, - }, - }); - } - } else { - if (threshold.length === 2) { - return i18n.translate('xpack.alertingBuiltins.indexThreshold.invalidThreshold1ErrorMessage', { - defaultMessage: '[threshold]: must have one element for the "{comparator}" comparator', - values: { - comparator, - }, - }); - } + if (betweenComparators.has(thresholdComparator) && threshold.length === 1) { + return i18n.translate('xpack.alertingBuiltins.indexThreshold.invalidThreshold2ErrorMessage', { + defaultMessage: + '[threshold]: must have two elements for the "{thresholdComparator}" comparator', + values: { + thresholdComparator, + }, + }); } } diff --git a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/core_query_types.test.ts b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/core_query_types.test.ts index b4f061adb8f542..d67d29cacde423 100644 --- a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/core_query_types.test.ts +++ b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/core_query_types.test.ts @@ -7,14 +7,16 @@ // tests of common properties on time_series_query and alert_type_params import { ObjectType } from '@kbn/config-schema'; - +import { CoreQueryParams } from './core_query_types'; import { MAX_GROUPS } from '../index'; -const DefaultParams: Record<string, any> = { +const DefaultParams: Writable<Partial<CoreQueryParams>> = { index: 'index-name', timeField: 'time-field', aggType: 'count', - window: '5m', + groupBy: 'all', + timeWindowSize: 5, + timeWindowUnit: 'm', }; export function runTests(schema: ObjectType, defaultTypeParams: Record<string, any>): void { @@ -30,28 +32,48 @@ export function runTests(schema: ObjectType, defaultTypeParams: Record<string, a }); it('succeeds with maximal properties', async () => { - params.aggType = 'average'; + params.aggType = 'avg'; + params.aggField = 'agg-field'; + params.groupBy = 'top'; + params.termField = 'group-field'; + params.termSize = 200; + expect(validate()).toBeTruthy(); + + params.index = ['index-name-1', 'index-name-2']; + params.aggType = 'avg'; params.aggField = 'agg-field'; - params.groupField = 'group-field'; - params.groupLimit = 200; + params.groupBy = 'top'; + params.termField = 'group-field'; + params.termSize = 200; expect(validate()).toBeTruthy(); }); it('fails for invalid index', async () => { delete params.index; expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[index]: expected value of type [string] but got [undefined]"` + `"[index]: expected at least one defined value but got [undefined]"` ); params.index = 42; - expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[index]: expected value of type [string] but got [number]"` - ); + expect(onValidate()).toThrowErrorMatchingInlineSnapshot(` +"[index]: types that failed validation: +- [index.0]: expected value of type [string] but got [number] +- [index.1]: expected value of type [array] but got [number]" +`); params.index = ''; - expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[index]: value is [] but it must have a minimum length of [1]."` - ); + expect(onValidate()).toThrowErrorMatchingInlineSnapshot(` +"[index]: types that failed validation: +- [index.0]: value is [] but it must have a minimum length of [1]. +- [index.1]: could not parse array value from []" +`); + + params.index = ['', 'a']; + expect(onValidate()).toThrowErrorMatchingInlineSnapshot(` +"[index]: types that failed validation: +- [index.0]: expected value of type [string] but got [Array] +- [index.1.0]: value is [] but it must have a minimum length of [1]." +`); }); it('fails for invalid timeField', async () => { @@ -95,58 +117,67 @@ export function runTests(schema: ObjectType, defaultTypeParams: Record<string, a ); }); - it('fails for invalid groupField', async () => { - params.groupField = 42; + it('fails for invalid termField', async () => { + params.groupBy = 'top'; + params.termField = 42; expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[groupField]: expected value of type [string] but got [number]"` + `"[termField]: expected value of type [string] but got [number]"` ); - params.groupField = ''; + params.termField = ''; expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[groupField]: value is [] but it must have a minimum length of [1]."` + `"[termField]: value is [] but it must have a minimum length of [1]."` ); }); - it('fails for invalid groupLimit', async () => { - params.groupLimit = 'foo'; + it('fails for invalid termSize', async () => { + params.groupBy = 'top'; + params.termField = 'fee'; + params.termSize = 'foo'; expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[groupLimit]: expected value of type [number] but got [string]"` + `"[termSize]: expected value of type [number] but got [string]"` ); - params.groupLimit = 0; + params.termSize = MAX_GROUPS + 1; expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[groupLimit]: must be greater than 0"` + `"[termSize]: must be less than or equal to 1000"` ); - params.groupLimit = MAX_GROUPS + 1; + params.termSize = 0; expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[groupLimit]: must be less than or equal to 1000"` + `"[termSize]: Value is [0] but it must be equal to or greater than [1]."` ); }); - it('fails for invalid window', async () => { - params.window = 42; + it('fails for invalid timeWindowSize', async () => { + params.timeWindowSize = 'foo'; expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[window]: expected value of type [string] but got [number]"` + `"[timeWindowSize]: expected value of type [number] but got [string]"` ); - params.window = 'x'; + params.timeWindowSize = 0; expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[window]: invalid duration: \\"x\\""` + `"[timeWindowSize]: Value is [0] but it must be equal to or greater than [1]."` ); }); - it('fails for invalid aggType/aggField', async () => { - params.aggType = 'count'; - params.aggField = 'agg-field-1'; + it('fails for invalid timeWindowUnit', async () => { + params.timeWindowUnit = 42; expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[aggField]: must not have a value when [aggType] is \\"count\\""` + `"[timeWindowUnit]: expected value of type [string] but got [number]"` ); - params.aggType = 'average'; + params.timeWindowUnit = 'x'; + expect(onValidate()).toThrowErrorMatchingInlineSnapshot( + `"[timeWindowUnit]: invalid timeWindowUnit: \\"x\\""` + ); + }); + + it('fails for invalid aggType/aggField', async () => { + params.aggType = 'avg'; delete params.aggField; expect(onValidate()).toThrowErrorMatchingInlineSnapshot( - `"[aggField]: must have a value when [aggType] is \\"average\\""` + `"[aggField]: must have a value when [aggType] is \\"avg\\""` ); }); }); diff --git a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/core_query_types.ts b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/core_query_types.ts index 265a70eba4d6b9..6e9c0072bf7b66 100644 --- a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/core_query_types.ts +++ b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/core_query_types.ts @@ -10,23 +10,29 @@ import { i18n } from '@kbn/i18n'; import { schema, TypeOf } from '@kbn/config-schema'; import { MAX_GROUPS } from '../index'; -import { parseDuration } from '../../../../../alerting/server'; export const CoreQueryParamsSchemaProperties = { - // name of the index to search - index: schema.string({ minLength: 1 }), + // name of the indices to search + index: schema.oneOf([ + schema.string({ minLength: 1 }), + schema.arrayOf(schema.string({ minLength: 1 }), { minSize: 1 }), + ]), // field in index used for date/time timeField: schema.string({ minLength: 1 }), // aggregation type aggType: schema.string({ validate: validateAggType }), // aggregation field aggField: schema.maybe(schema.string({ minLength: 1 })), - // group field - groupField: schema.maybe(schema.string({ minLength: 1 })), + // how to group + groupBy: schema.string({ validate: validateGroupBy }), + // field to group on (for groupBy: top) + termField: schema.maybe(schema.string({ minLength: 1 })), // limit on number of groups returned - groupLimit: schema.maybe(schema.number()), + termSize: schema.maybe(schema.number({ min: 1 })), // size of time window for date range aggregations - window: schema.string({ validate: validateDuration }), + timeWindowSize: schema.number({ min: 1 }), + // units of time window for date range aggregations + timeWindowUnit: schema.string({ validate: validateTimeWindowUnits }), }; const CoreQueryParamsSchema = schema.object(CoreQueryParamsSchemaProperties); @@ -37,17 +43,7 @@ export type CoreQueryParams = TypeOf<typeof CoreQueryParamsSchema>; // above. // Using direct type not allowed, circular reference, so body is typed to any. export function validateCoreQueryBody(anyParams: any): string | undefined { - const { aggType, aggField, groupLimit }: CoreQueryParams = anyParams; - - if (aggType === 'count' && aggField) { - return i18n.translate('xpack.alertingBuiltins.indexThreshold.aggTypeNotEmptyErrorMessage', { - defaultMessage: '[aggField]: must not have a value when [aggType] is "{aggType}"', - values: { - aggType, - }, - }); - } - + const { aggType, aggField, groupBy, termField, termSize }: CoreQueryParams = anyParams; if (aggType !== 'count' && !aggField) { return i18n.translate('xpack.alertingBuiltins.indexThreshold.aggTypeRequiredErrorMessage', { defaultMessage: '[aggField]: must have a value when [aggType] is "{aggType}"', @@ -57,21 +53,23 @@ export function validateCoreQueryBody(anyParams: any): string | undefined { }); } - // schema.number doesn't seem to check the max value ... - if (groupLimit != null) { - if (groupLimit <= 0) { - return i18n.translate( - 'xpack.alertingBuiltins.indexThreshold.invalidGroupMinimumErrorMessage', - { - defaultMessage: '[groupLimit]: must be greater than 0', - } - ); + // check grouping + if (groupBy === 'top') { + if (termField == null) { + return i18n.translate('xpack.alertingBuiltins.indexThreshold.termFieldRequiredErrorMessage', { + defaultMessage: '[termField]: termField required when [groupBy] is top', + }); + } + if (termSize == null) { + return i18n.translate('xpack.alertingBuiltins.indexThreshold.termSizeRequiredErrorMessage', { + defaultMessage: '[termSize]: termSize required when [groupBy] is top', + }); } - if (groupLimit > MAX_GROUPS) { + if (termSize > MAX_GROUPS) { return i18n.translate( - 'xpack.alertingBuiltins.indexThreshold.invalidGroupMaximumErrorMessage', + 'xpack.alertingBuiltins.indexThreshold.invalidTermSizeMaximumErrorMessage', { - defaultMessage: '[groupLimit]: must be less than or equal to {maxGroups}', + defaultMessage: '[termSize]: must be less than or equal to {maxGroups}', values: { maxGroups: MAX_GROUPS, }, @@ -81,10 +79,12 @@ export function validateCoreQueryBody(anyParams: any): string | undefined { } } -const AggTypes = new Set(['count', 'average', 'min', 'max', 'sum']); +const AggTypes = new Set(['count', 'avg', 'min', 'max', 'sum']); function validateAggType(aggType: string): string | undefined { - if (AggTypes.has(aggType)) return; + if (AggTypes.has(aggType)) { + return; + } return i18n.translate('xpack.alertingBuiltins.indexThreshold.invalidAggTypeErrorMessage', { defaultMessage: 'invalid aggType: "{aggType}"', @@ -94,15 +94,33 @@ function validateAggType(aggType: string): string | undefined { }); } -export function validateDuration(duration: string): string | undefined { - try { - parseDuration(duration); - } catch (err) { - return i18n.translate('xpack.alertingBuiltins.indexThreshold.invalidDurationErrorMessage', { - defaultMessage: 'invalid duration: "{duration}"', +export function validateGroupBy(groupBy: string): string | undefined { + if (groupBy === 'all' || groupBy === 'top') { + return; + } + + return i18n.translate('xpack.alertingBuiltins.indexThreshold.invalidGroupByErrorMessage', { + defaultMessage: 'invalid groupBy: "{groupBy}"', + values: { + groupBy, + }, + }); +} + +const TimeWindowUnits = new Set(['s', 'm', 'h', 'd']); + +export function validateTimeWindowUnits(timeWindowUnit: string): string | undefined { + if (TimeWindowUnits.has(timeWindowUnit)) { + return; + } + + return i18n.translate( + 'xpack.alertingBuiltins.indexThreshold.invalidTimeWindowUnitsErrorMessage', + { + defaultMessage: 'invalid timeWindowUnit: "{timeWindowUnit}"', values: { - duration, + timeWindowUnit, }, - }); - } + } + ); } diff --git a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_query.test.ts b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_query.test.ts index 1955cdfa4cea62..d40df4c91998ff 100644 --- a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_query.test.ts +++ b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_query.test.ts @@ -9,28 +9,30 @@ import { loggingServiceMock } from '../../../../../../../src/core/server/mocks'; import { coreMock } from '../../../../../../../src/core/server/mocks'; import { AlertingBuiltinsPlugin } from '../../../plugin'; -import { TimeSeriesQueryParameters, TimeSeriesResult } from './time_series_query'; +import { TimeSeriesQueryParameters, TimeSeriesResult, TimeSeriesQuery } from './time_series_query'; -type TimeSeriesQuery = (params: TimeSeriesQueryParameters) => Promise<TimeSeriesResult>; +type TimeSeriesQueryFn = (query: TimeSeriesQueryParameters) => Promise<TimeSeriesResult>; -const DefaultQueryParams = { +const DefaultQueryParams: TimeSeriesQuery = { index: 'index-name', timeField: 'time-field', aggType: 'count', aggField: undefined, - window: '5m', + timeWindowSize: 5, + timeWindowUnit: 'm', dateStart: undefined, dateEnd: undefined, interval: undefined, - groupField: undefined, - groupLimit: undefined, + groupBy: 'all', + termField: undefined, + termSize: undefined, }; describe('timeSeriesQuery', () => { let params: TimeSeriesQueryParameters; const mockCallCluster = jest.fn(); - let timeSeriesQuery: TimeSeriesQuery; + let timeSeriesQueryFn: TimeSeriesQueryFn; beforeEach(async () => { // rather than use the function from an import, retrieve it from the plugin @@ -38,26 +40,26 @@ describe('timeSeriesQuery', () => { const plugin = new AlertingBuiltinsPlugin(context); const coreStart = coreMock.createStart(); const service = await plugin.start(coreStart); - timeSeriesQuery = service.indexThreshold.timeSeriesQuery; + timeSeriesQueryFn = service.indexThreshold.timeSeriesQuery; mockCallCluster.mockReset(); params = { logger: loggingServiceMock.create().get(), callCluster: mockCallCluster, - query: { ...DefaultQueryParams }, + query: DefaultQueryParams, }; }); it('fails as expected when the callCluster call fails', async () => { mockCallCluster.mockRejectedValue(new Error('woopsie')); - expect(timeSeriesQuery(params)).rejects.toThrowErrorMatchingInlineSnapshot( + expect(timeSeriesQueryFn(params)).rejects.toThrowErrorMatchingInlineSnapshot( `"error running search"` ); }); it('fails as expected when the query params are invalid', async () => { params.query = { ...params.query, dateStart: 'x' }; - expect(timeSeriesQuery(params)).rejects.toThrowErrorMatchingInlineSnapshot( + expect(timeSeriesQueryFn(params)).rejects.toThrowErrorMatchingInlineSnapshot( `"invalid date format for dateStart: \\"x\\""` ); }); diff --git a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_query.ts b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_query.ts index 8ea2a7dd1dcc58..a4f64c0f37f41a 100644 --- a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_query.ts +++ b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_query.ts @@ -21,8 +21,17 @@ export async function timeSeriesQuery( params: TimeSeriesQueryParameters ): Promise<TimeSeriesResult> { const { logger, callCluster, query: queryParams } = params; - const { index, window, interval, timeField, dateStart, dateEnd } = queryParams; - + const { + index, + timeWindowSize, + timeWindowUnit, + interval, + timeField, + dateStart, + dateEnd, + } = queryParams; + + const window = `${timeWindowSize}${timeWindowUnit}`; const dateRangeInfo = getDateRangeInfo({ dateStart, dateEnd, window, interval }); // core query @@ -51,10 +60,10 @@ export async function timeSeriesQuery( }; // add the aggregations - const { aggType, aggField, groupField, groupLimit } = queryParams; + const { aggType, aggField, termField, termSize } = queryParams; const isCountAgg = aggType === 'count'; - const isGroupAgg = !!groupField; + const isGroupAgg = !!termField; let aggParent = esQuery.body; @@ -63,8 +72,8 @@ export async function timeSeriesQuery( aggParent.aggs = { groupAgg: { terms: { - field: groupField, - size: groupLimit || DEFAULT_GROUPS, + field: termField, + size: termSize || DEFAULT_GROUPS, }, }, }; @@ -83,11 +92,10 @@ export async function timeSeriesQuery( aggParent = aggParent.aggs.dateAgg; // finally, the metric aggregation, if requested - const actualAggType = aggType === 'average' ? 'avg' : aggType; if (!isCountAgg) { aggParent.aggs = { metricAgg: { - [actualAggType]: { + [aggType]: { field: aggField, }, }, diff --git a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_types.test.ts b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_types.test.ts index d69d48efcdf6b6..fcbd49b26ffd04 100644 --- a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_types.test.ts +++ b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_types.test.ts @@ -4,14 +4,16 @@ * you may not use this file except in compliance with the Elastic License. */ -import { TimeSeriesQuerySchema } from './time_series_types'; +import { TimeSeriesQuerySchema, TimeSeriesQuery } from './time_series_types'; import { runTests } from './core_query_types.test'; -const DefaultParams = { +const DefaultParams: Writable<Partial<TimeSeriesQuery>> = { index: 'index-name', timeField: 'time-field', aggType: 'count', - window: '5m', + groupBy: 'all', + timeWindowSize: 5, + timeWindowUnit: 'm', }; describe('TimeSeriesParams validate()', () => { @@ -27,10 +29,11 @@ describe('TimeSeriesParams validate()', () => { }); it('passes for maximal valid input', async () => { - params.aggType = 'average'; + params.aggType = 'avg'; params.aggField = 'agg-field'; - params.groupField = 'group-field'; - params.groupLimit = 100; + params.groupBy = 'top'; + params.termField = 'group-field'; + params.termSize = 100; params.dateStart = new Date().toISOString(); params.dateEnd = new Date().toISOString(); params.interval = '1s'; diff --git a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_types.ts b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_types.ts index a727e67c621d42..6cb21a1581113f 100644 --- a/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_types.ts +++ b/x-pack/plugins/alerting_builtins/server/alert_types/index_threshold/lib/time_series_types.ts @@ -12,11 +12,7 @@ import { schema, TypeOf } from '@kbn/config-schema'; import { parseDuration } from '../../../../../alerting/server'; import { MAX_INTERVALS } from '../index'; -import { - CoreQueryParamsSchemaProperties, - validateCoreQueryBody, - validateDuration, -} from './core_query_types'; +import { CoreQueryParamsSchemaProperties, validateCoreQueryBody } from './core_query_types'; import { getTooManyIntervalsErrorMessage, getDateStartAfterDateEndErrorMessage, @@ -104,3 +100,16 @@ function validateDate(dateString: string): string | undefined { }); } } + +export function validateDuration(duration: string): string | undefined { + try { + parseDuration(duration); + } catch (err) { + return i18n.translate('xpack.alertingBuiltins.indexThreshold.invalidDurationErrorMessage', { + defaultMessage: 'invalid duration: "{duration}"', + values: { + duration, + }, + }); + } +} diff --git a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_alert_types/threshold/expression.tsx b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_alert_types/threshold/expression.tsx index f7d2b8f60157ff..a34a032f833b28 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_alert_types/threshold/expression.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_alert_types/threshold/expression.tsx @@ -46,8 +46,6 @@ const DEFAULT_VALUES = { THRESHOLD_COMPARATOR: COMPARATORS.GREATER_THAN, TIME_WINDOW_SIZE: 5, TIME_WINDOW_UNIT: 'm', - TRIGGER_INTERVAL_SIZE: 1, - TRIGGER_INTERVAL_UNIT: 'm', THRESHOLD: [1000, 5000], GROUP_BY: 'all', }; @@ -141,7 +139,6 @@ export const IndexThresholdAlertTypeExpression: React.FunctionComponent<IndexThr thresholdComparator: DEFAULT_VALUES.THRESHOLD_COMPARATOR, timeWindowSize: DEFAULT_VALUES.TIME_WINDOW_SIZE, timeWindowUnit: DEFAULT_VALUES.TIME_WINDOW_UNIT, - triggerIntervalUnit: DEFAULT_VALUES.TRIGGER_INTERVAL_UNIT, groupBy: DEFAULT_VALUES.GROUP_BY, threshold: DEFAULT_VALUES.THRESHOLD, }); diff --git a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_alert_types/threshold/index.ts b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_alert_types/threshold/index.ts index e3881493110756..a94d2319d6e4dd 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_alert_types/threshold/index.ts +++ b/x-pack/plugins/triggers_actions_ui/public/application/components/builtin_alert_types/threshold/index.ts @@ -11,7 +11,7 @@ import { builtInGroupByTypes, builtInAggregationTypes } from '../../../../common export function getAlertType(): AlertTypeModel { return { - id: 'threshold', + id: '.index-threshold', name: 'Index Threshold', iconClass: 'alert', alertParamsExpression: IndexThresholdAlertTypeExpression, diff --git a/x-pack/plugins/triggers_actions_ui/public/common/expression_items/group_by_over.tsx b/x-pack/plugins/triggers_actions_ui/public/common/expression_items/group_by_over.tsx index 01e454187d3980..7ca32764dbdfdd 100644 --- a/x-pack/plugins/triggers_actions_ui/public/common/expression_items/group_by_over.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/common/expression_items/group_by_over.tsx @@ -61,6 +61,7 @@ export const GroupByExpression = ({ const groupByTypes = customGroupByTypes ?? builtInGroupByTypes; const [groupByPopoverOpen, setGroupByPopoverOpen] = useState(false); const MIN_TERM_SIZE = 1; + const MAX_TERM_SIZE = 1000; const firstFieldOption = { text: i18n.translate( 'xpack.triggersActionsUI.common.expressionItems.groupByType.timeFieldOptionLabel', @@ -159,6 +160,7 @@ export const GroupByExpression = ({ onChangeSelectedTermSize(termSizeVal); }} min={MIN_TERM_SIZE} + max={MAX_TERM_SIZE} /> </EuiFormRow> </EuiFlexItem> diff --git a/x-pack/test/alerting_api_integration/spaces_only/tests/alerting/builtin_alert_types/index_threshold/query_data_endpoint.ts b/x-pack/test/alerting_api_integration/spaces_only/tests/alerting/builtin_alert_types/index_threshold/query_data_endpoint.ts index 9c1a58760be793..8a6e89009b850d 100644 --- a/x-pack/test/alerting_api_integration/spaces_only/tests/alerting/builtin_alert_types/index_threshold/query_data_endpoint.ts +++ b/x-pack/test/alerting_api_integration/spaces_only/tests/alerting/builtin_alert_types/index_threshold/query_data_endpoint.ts @@ -25,8 +25,8 @@ const INTERVAL_MINUTES = 1; const INTERVAL_DURATION = `${INTERVAL_MINUTES}m`; const INTERVAL_MILLIS = INTERVAL_MINUTES * 60 * 1000; -const WINDOW_MINUTES = 5; -const WINDOW_DURATION = `${WINDOW_MINUTES}m`; +const WINDOW_DURATION_SIZE = 5; +const WINDOW_DURATION_UNITS = 'm'; // interesting dates pertaining to docs and intervals const START_DATE_PLUS_YEAR = `2021-${START_DATE_MM_DD_HH_MM_SS_MS}`; @@ -154,7 +154,7 @@ export default function queryDataEndpointTests({ getService }: FtrProviderContex it('should return correct count for all intervals, grouped', async () => { const query = getQueryBody({ - groupField: 'group', + termField: 'group', dateStart: START_DATE_MINUS_2INTERVALS, dateEnd: START_DATE_MINUS_0INTERVALS, }); @@ -185,9 +185,11 @@ export default function queryDataEndpointTests({ getService }: FtrProviderContex it('should return correct average for all intervals, grouped', async () => { const query = getQueryBody({ - aggType: 'average', + aggType: 'avg', aggField: 'testedValue', - groupField: 'group', + groupBy: 'top', + termField: 'group', + termSize: 100, dateStart: START_DATE_MINUS_2INTERVALS, dateEnd: START_DATE_MINUS_0INTERVALS, }); @@ -266,11 +268,13 @@ function getQueryBody(body: Partial<TimeSeriesQuery> = {}): TimeSeriesQuery { timeField: 'date', aggType: 'count', aggField: undefined, - groupField: undefined, - groupLimit: undefined, + groupBy: 'all', + termField: undefined, + termSize: undefined, dateStart: START_DATE_MINUS_0INTERVALS, dateEnd: undefined, - window: WINDOW_DURATION, + timeWindowSize: WINDOW_DURATION_SIZE, + timeWindowUnit: WINDOW_DURATION_UNITS, interval: INTERVAL_DURATION, }; return Object.assign({}, defaults, body); diff --git a/x-pack/test/functional_with_es_ssl/apps/triggers_actions_ui/alerts.ts b/x-pack/test/functional_with_es_ssl/apps/triggers_actions_ui/alerts.ts index 84081309c18d9e..60ba03df6a9a8d 100644 --- a/x-pack/test/functional_with_es_ssl/apps/triggers_actions_ui/alerts.ts +++ b/x-pack/test/functional_with_es_ssl/apps/triggers_actions_ui/alerts.ts @@ -45,16 +45,21 @@ export default ({ getPageObjects, getService }: FtrProviderContext) => { it('should create an alert', async () => { const alertName = generateUniqueKey(); - await pageObjects.triggersActionsUI.clickCreateAlertButton(); - const nameInput = await testSubjects.find('alertNameInput'); await nameInput.click(); await nameInput.clearValue(); await nameInput.type(alertName); - - await testSubjects.click('threshold-SelectOption'); - + await testSubjects.click('.index-threshold-SelectOption'); + await testSubjects.click('selectIndexExpression'); + const comboBox = await find.byCssSelector('#indexSelectSearchBox'); + await comboBox.click(); + await comboBox.type('k'); + const filterSelectItem = await find.byCssSelector(`.euiFilterSelectItem`); + await filterSelectItem.click(); + await testSubjects.click('thresholdAlertTimeFieldSelect'); + const fieldOptions = await find.allByCssSelector('#thresholdTimeField option'); + await fieldOptions[1].click(); await testSubjects.click('.slack-ActionTypeSelectOption'); await testSubjects.click('createActionConnectorButton'); const connectorNameInput = await testSubjects.find('nameInput'); @@ -62,28 +67,32 @@ export default ({ getPageObjects, getService }: FtrProviderContext) => { await connectorNameInput.clearValue(); const connectorName = generateUniqueKey(); await connectorNameInput.type(connectorName); - const slackWebhookUrlInput = await testSubjects.find('slackWebhookUrlInput'); await slackWebhookUrlInput.click(); await slackWebhookUrlInput.clearValue(); await slackWebhookUrlInput.type('https://test'); - await find.clickByCssSelector('[data-test-subj="saveActionButtonModal"]:not(disabled)'); - const loggingMessageInput = await testSubjects.find('slackMessageTextArea'); await loggingMessageInput.click(); await loggingMessageInput.clearValue(); await loggingMessageInput.type('test message'); - - await testSubjects.click('slackAddVariableButton'); - const variableMenuButton = await testSubjects.find('variableMenuButton-0'); - await variableMenuButton.click(); - - await testSubjects.click('selectIndexExpression'); - - await find.clickByCssSelector('[data-test-subj="cancelSaveAlertButton"]'); - - // TODO: implement saving to the server, when threshold API will be ready + // TODO: uncomment variables test when server API will be ready + // await testSubjects.click('slackAddVariableButton'); + // const variableMenuButton = await testSubjects.find('variableMenuButton-0'); + // await variableMenuButton.click(); + await find.clickByCssSelector('[data-test-subj="saveAlertButton"]'); + const toastTitle = await pageObjects.common.closeToast(); + expect(toastTitle).to.eql(`Saved '${alertName}'`); + await pageObjects.triggersActionsUI.searchAlerts(alertName); + const searchResultsAfterEdit = await pageObjects.triggersActionsUI.getAlertsList(); + expect(searchResultsAfterEdit).to.eql([ + { + name: alertName, + tagsText: '', + alertType: 'Index Threshold', + interval: '1m', + }, + ]); }); it('should search for alert', async () => { From 1995a05c1609df9215878e29c99d238f8b7d96d3 Mon Sep 17 00:00:00 2001 From: Andrew Cholakian <andrew@andrewvc.com> Date: Tue, 3 Mar 2020 08:04:35 -0600 Subject: [PATCH 047/120] [Uptime] Refactor header (#58836) Cleanup implementation of the header to let pages embed the header rather than the weird sort of control the header works with today. Also uses kibana context in a way that makes more sense, and provide a path forward for #53550 since that will need to add a new header type (and some buttons next to the picker). Fixes #58835 --- .../plugins/uptime/public/breadcrumbs.ts | 19 - .../connected/pages/page_header_container.tsx | 16 - .../__snapshots__/monitor.test.tsx.snap | 2 +- .../__snapshots__/page_header.test.tsx.snap | 1007 +---------------- .../pages/__tests__/page_header.test.tsx | 175 +-- .../plugins/uptime/public/pages/monitor.tsx | 51 +- .../plugins/uptime/public/pages/overview.tsx | 8 + .../uptime/public/pages/page_header.tsx | 86 +- .../plugins/uptime/public/uptime_app.tsx | 7 +- 9 files changed, 155 insertions(+), 1216 deletions(-) delete mode 100644 x-pack/legacy/plugins/uptime/public/components/connected/pages/page_header_container.tsx diff --git a/x-pack/legacy/plugins/uptime/public/breadcrumbs.ts b/x-pack/legacy/plugins/uptime/public/breadcrumbs.ts index ff0dca3887ff2c..41bc2aa2588073 100644 --- a/x-pack/legacy/plugins/uptime/public/breadcrumbs.ts +++ b/x-pack/legacy/plugins/uptime/public/breadcrumbs.ts @@ -3,22 +3,3 @@ * 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 { ChromeBreadcrumb } from 'src/core/public'; - -const makeOverviewBreadcrumb = (search?: string): ChromeBreadcrumb => ({ - text: i18n.translate('xpack.uptime.breadcrumbs.overviewBreadcrumbText', { - defaultMessage: 'Uptime', - }), - href: `#/${search ? search : ''}`, -}); - -export const getOverviewPageBreadcrumbs = (search?: string): ChromeBreadcrumb[] => [ - makeOverviewBreadcrumb(search), -]; - -export const getMonitorPageBreadcrumb = (name: string, search?: string): ChromeBreadcrumb[] => [ - makeOverviewBreadcrumb(search), - { text: name }, -]; diff --git a/x-pack/legacy/plugins/uptime/public/components/connected/pages/page_header_container.tsx b/x-pack/legacy/plugins/uptime/public/components/connected/pages/page_header_container.tsx deleted file mode 100644 index 9429b87061ff7c..00000000000000 --- a/x-pack/legacy/plugins/uptime/public/components/connected/pages/page_header_container.tsx +++ /dev/null @@ -1,16 +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 { connect } from 'react-redux'; -import { selectSelectedMonitor } from '../../../state/selectors'; -import { AppState } from '../../../state'; -import { PageHeaderComponent } from '../../../pages/page_header'; - -const mapStateToProps = (state: AppState) => ({ - monitorStatus: selectSelectedMonitor(state), -}); - -export const PageHeader = connect(mapStateToProps, null)(PageHeaderComponent); diff --git a/x-pack/legacy/plugins/uptime/public/pages/__tests__/__snapshots__/monitor.test.tsx.snap b/x-pack/legacy/plugins/uptime/public/pages/__tests__/__snapshots__/monitor.test.tsx.snap index 6064caa868bf82..f637af397bbeb5 100644 --- a/x-pack/legacy/plugins/uptime/public/pages/__tests__/__snapshots__/monitor.test.tsx.snap +++ b/x-pack/legacy/plugins/uptime/public/pages/__tests__/__snapshots__/monitor.test.tsx.snap @@ -51,6 +51,6 @@ exports[`MonitorPage shallow renders expected elements for valid props 1`] = ` } } > - <MonitorPage /> + <Connect(MonitorPageComponent) /> </ContextProvider> `; diff --git a/x-pack/legacy/plugins/uptime/public/pages/__tests__/__snapshots__/page_header.test.tsx.snap b/x-pack/legacy/plugins/uptime/public/pages/__tests__/__snapshots__/page_header.test.tsx.snap index 2563b15eed5d5d..58d98af5d6b14b 100644 --- a/x-pack/legacy/plugins/uptime/public/pages/__tests__/__snapshots__/page_header.test.tsx.snap +++ b/x-pack/legacy/plugins/uptime/public/pages/__tests__/__snapshots__/page_header.test.tsx.snap @@ -1,836 +1,6 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`PageHeaderComponent mount expected page title for valid monitor route 1`] = ` -<Router - history={ - Object { - "action": "POP", - "block": [Function], - "canGo": [Function], - "createHref": [Function], - "entries": Array [ - Object { - "hash": "", - "key": "TestKeyForTesting", - "pathname": "/monitor/ZWxhc3RpYy1jbw==", - "search": "", - "state": undefined, - }, - ], - "go": [Function], - "goBack": [Function], - "goForward": [Function], - "index": 0, - "length": 1, - "listen": [Function], - "location": Object { - "hash": "", - "key": "TestKeyForTesting", - "pathname": "/monitor/ZWxhc3RpYy1jbw==", - "search": "", - "state": undefined, - }, - "push": [Function], - "replace": [Function], - } - } - intl={ - Object { - "defaultFormats": Object {}, - "defaultLocale": "en", - "formatDate": [Function], - "formatHTMLMessage": [Function], - "formatMessage": [Function], - "formatNumber": [Function], - "formatPlural": [Function], - "formatRelative": [Function], - "formatTime": [Function], - "formats": Object { - "date": Object { - "full": Object { - "day": "numeric", - "month": "long", - "weekday": "long", - "year": "numeric", - }, - "long": Object { - "day": "numeric", - "month": "long", - "year": "numeric", - }, - "medium": Object { - "day": "numeric", - "month": "short", - "year": "numeric", - }, - "short": Object { - "day": "numeric", - "month": "numeric", - "year": "2-digit", - }, - }, - "number": Object { - "currency": Object { - "style": "currency", - }, - "percent": Object { - "style": "percent", - }, - }, - "relative": Object { - "days": Object { - "units": "day", - }, - "hours": Object { - "units": "hour", - }, - "minutes": Object { - "units": "minute", - }, - "months": Object { - "units": "month", - }, - "seconds": Object { - "units": "second", - }, - "years": Object { - "units": "year", - }, - }, - "time": Object { - "full": Object { - "hour": "numeric", - "minute": "numeric", - "second": "numeric", - "timeZoneName": "short", - }, - "long": Object { - "hour": "numeric", - "minute": "numeric", - "second": "numeric", - "timeZoneName": "short", - }, - "medium": Object { - "hour": "numeric", - "minute": "numeric", - "second": "numeric", - }, - "short": Object { - "hour": "numeric", - "minute": "numeric", - }, - }, - }, - "formatters": Object { - "getDateTimeFormat": [Function], - "getMessageFormat": [Function], - "getNumberFormat": [Function], - "getPluralFormat": [Function], - "getRelativeFormat": [Function], - }, - "locale": "en", - "messages": Object {}, - "now": [Function], - "onError": [Function], - "textComponent": Symbol(react.fragment), - "timeZone": null, - } - } -> - <Route - path="/monitor/:monitorId?" - > - <PageHeaderComponent - monitorStatus={ - Object { - "ecs": Object { - "version": "1.4.0", - }, - "http": Object { - "response": Object { - "body": Object { - "bytes": 2092041, - "hash": "5d970606a6be810ae5d37115c4807fdd07ba4c3e407924ee5297e172d2efb3dc", - }, - "status_code": 200, - }, - "rtt": Object { - "content": Object { - "us": 1457663, - }, - "response_header": Object { - "us": 340175, - }, - "total": Object { - "us": 2030012, - }, - "validate": Object { - "us": 1797839, - }, - "write_request": Object { - "us": 38, - }, - }, - }, - "id": "elastic-co", - "monitor": Object { - "check_group": "2a017afa-4736-11ea-b3d0-acde48001122", - "duration": Object { - "us": 2030035, - }, - "id": "elastic-co", - "ip": "2a04:4e42:3::729", - "name": "elastic", - "status": "up", - "type": "http", - }, - "observer": Object { - "geo": Object { - "location": "37.422994, -122.083666", - "name": "US-West", - }, - }, - "resolve": Object { - "ip": "2a04:4e42:3::729", - "rtt": Object { - "us": 2102, - }, - }, - "tcp": Object { - "rtt": Object { - "connect": Object { - "us": 174982, - }, - }, - }, - "timestamp": "2020-02-04T10:07:42.142Z", - "tls": Object { - "certificate_not_valid_after": "2020-07-16T03:15:39.000Z", - "certificate_not_valid_before": "2019-08-16T01:40:25.000Z", - "rtt": Object { - "handshake": Object { - "us": 57115, - }, - }, - }, - "url": Object { - "domain": "www.elastic.co", - "full": "https://www.elastic.co", - "port": 443, - "scheme": "https", - }, - } - } - setBreadcrumbs={ - [MockFunction] { - "calls": Array [ - Array [ - Array [ - Object { - "href": "#/?", - "text": "Uptime", - }, - Object { - "text": "https://www.elastic.co", - }, - ], - ], - ], - "results": Array [ - Object { - "type": "return", - "value": undefined, - }, - ], - } - } - > - <EuiFlexGroup - alignItems="center" - gutterSize="s" - justifyContent="spaceBetween" - wrap={true} - > - <div - className="euiFlexGroup euiFlexGroup--gutterSmall euiFlexGroup--alignItemsCenter euiFlexGroup--justifyContentSpaceBetween euiFlexGroup--directionRow euiFlexGroup--responsive euiFlexGroup--wrap" - > - <EuiFlexItem> - <div - className="euiFlexItem" - > - <EuiTitle> - <h1 - className="euiTitle euiTitle--medium" - > - https://www.elastic.co - </h1> - </EuiTitle> - </div> - </EuiFlexItem> - <EuiFlexItem - grow={false} - > - <div - className="euiFlexItem euiFlexItem--flexGrowZero" - > - <UptimeDatePicker> - <EuiSuperDatePicker - commonlyUsedRanges={ - Array [ - Object { - "end": "now", - "label": "Today", - "start": "now/d", - }, - Object { - "end": "now", - "label": "Week to date", - "start": "now/w", - }, - Object { - "end": "now", - "label": "Month to date", - "start": "now/M", - }, - Object { - "end": "now", - "label": "Year to date", - "start": "now/y", - }, - ] - } - dateFormat="MMM D, YYYY @ HH:mm:ss.SSS" - end="now" - isAutoRefreshOnly={false} - isDisabled={false} - isPaused={false} - onRefresh={[Function]} - onRefreshChange={[Function]} - onTimeChange={[Function]} - recentlyUsedRanges={Array []} - refreshInterval={60000} - showUpdateButton={true} - start="now-15m" - timeFormat="HH:mm" - > - <EuiFlexGroup - className="euiSuperDatePicker__flexWrapper" - gutterSize="s" - responsive={false} - > - <div - className="euiFlexGroup euiFlexGroup--gutterSmall euiFlexGroup--directionRow euiSuperDatePicker__flexWrapper" - > - <EuiFlexItem> - <div - className="euiFlexItem" - > - <EuiFormControlLayout - className="euiSuperDatePicker" - isDisabled={false} - prepend={ - <EuiQuickSelectPopover - applyRefreshInterval={[Function]} - applyTime={[Function]} - commonlyUsedRanges={ - Array [ - Object { - "end": "now", - "label": "Today", - "start": "now/d", - }, - Object { - "end": "now", - "label": "Week to date", - "start": "now/w", - }, - Object { - "end": "now", - "label": "Month to date", - "start": "now/M", - }, - Object { - "end": "now", - "label": "Year to date", - "start": "now/y", - }, - ] - } - dateFormat="MMM D, YYYY @ HH:mm:ss.SSS" - end="now" - isAutoRefreshOnly={false} - isDisabled={false} - isPaused={false} - recentlyUsedRanges={Array []} - refreshInterval={60000} - start="now-15m" - /> - } - > - <div - className="euiFormControlLayout euiFormControlLayout--group euiSuperDatePicker" - > - <EuiQuickSelectPopover - applyRefreshInterval={[Function]} - applyTime={[Function]} - className="euiFormControlLayout__prepend" - commonlyUsedRanges={ - Array [ - Object { - "end": "now", - "label": "Today", - "start": "now/d", - }, - Object { - "end": "now", - "label": "Week to date", - "start": "now/w", - }, - Object { - "end": "now", - "label": "Month to date", - "start": "now/M", - }, - Object { - "end": "now", - "label": "Year to date", - "start": "now/y", - }, - ] - } - dateFormat="MMM D, YYYY @ HH:mm:ss.SSS" - end="now" - isAutoRefreshOnly={false} - isDisabled={false} - isPaused={false} - key="0/.0" - recentlyUsedRanges={Array []} - refreshInterval={60000} - start="now-15m" - > - <EuiPopover - anchorClassName="euiQuickSelectPopover__anchor" - anchorPosition="downLeft" - button={ - <EuiButtonEmpty - aria-label="Date quick select" - className="euiFormControlLayout__prepend" - data-test-subj="superDatePickerToggleQuickMenuButton" - iconSide="right" - iconType="arrowDown" - isDisabled={false} - onClick={[Function]} - size="xs" - textProps={ - Object { - "className": "euiQuickSelectPopover__buttonText", - } - } - > - <EuiIcon - type="clock" - /> - </EuiButtonEmpty> - } - closePopover={[Function]} - display="inlineBlock" - hasArrow={true} - id="QuickSelectPopover" - isOpen={false} - ownFocus={true} - panelPaddingSize="m" - > - <EuiOutsideClickDetector - isDisabled={true} - onOutsideClick={[Function]} - > - <div - className="euiPopover euiPopover--anchorDownLeft" - id="QuickSelectPopover" - onKeyDown={[Function]} - onMouseDown={[Function]} - onMouseUp={[Function]} - onTouchEnd={[Function]} - onTouchStart={[Function]} - > - <div - className="euiPopover__anchor euiQuickSelectPopover__anchor" - > - <EuiButtonEmpty - aria-label="Date quick select" - className="euiFormControlLayout__prepend" - data-test-subj="superDatePickerToggleQuickMenuButton" - iconSide="right" - iconType="arrowDown" - isDisabled={false} - onClick={[Function]} - size="xs" - textProps={ - Object { - "className": "euiQuickSelectPopover__buttonText", - } - } - > - <button - aria-label="Date quick select" - className="euiButtonEmpty euiButtonEmpty--primary euiButtonEmpty--xSmall euiButtonEmpty--iconRight euiFormControlLayout__prepend" - data-test-subj="superDatePickerToggleQuickMenuButton" - disabled={false} - onClick={[Function]} - type="button" - > - <span - className="euiButtonEmpty__content" - > - <EuiIcon - aria-hidden="true" - className="euiButtonEmpty__icon" - size="m" - type="arrowDown" - > - <EuiIconEmpty - aria-hidden={true} - className="euiIcon euiIcon--medium euiIcon-isLoading euiButtonEmpty__icon" - focusable="false" - role="img" - style={null} - > - <svg - aria-hidden={true} - className="euiIcon euiIcon--medium euiIcon-isLoading euiButtonEmpty__icon" - focusable="false" - height={16} - role="img" - style={null} - viewBox="0 0 16 16" - width={16} - xmlns="http://www.w3.org/2000/svg" - /> - </EuiIconEmpty> - </EuiIcon> - <span - className="euiButtonEmpty__text euiQuickSelectPopover__buttonText" - > - <EuiIcon - type="clock" - > - <EuiIconEmpty - aria-hidden={true} - className="euiIcon euiIcon--medium euiIcon-isLoading" - focusable="false" - role="img" - style={null} - > - <svg - aria-hidden={true} - className="euiIcon euiIcon--medium euiIcon-isLoading" - focusable="false" - height={16} - role="img" - style={null} - viewBox="0 0 16 16" - width={16} - xmlns="http://www.w3.org/2000/svg" - /> - </EuiIconEmpty> - </EuiIcon> - </span> - </span> - </button> - </EuiButtonEmpty> - </div> - </div> - </EuiOutsideClickDetector> - </EuiPopover> - </EuiQuickSelectPopover> - <div - className="euiFormControlLayout__childrenWrapper" - > - <EuiDatePickerRange - className="euiDatePickerRange--inGroup" - endDateControl={<div />} - iconType={false} - isCustom={true} - startDateControl={<div />} - > - <div - className="euiDatePickerRange euiDatePickerRange--inGroup" - > - <button - className="euiSuperDatePicker__prettyFormat" - data-test-subj="superDatePickerShowDatesButton" - disabled={false} - onClick={[Function]} - > - Last 15 minutes - <span - className="euiSuperDatePicker__prettyFormatLink" - > - <EuiI18n - default="Show dates" - token="euiSuperDatePicker.showDatesButtonLabel" - > - Show dates - </EuiI18n> - </span> - </button> - </div> - </EuiDatePickerRange> - <EuiFormControlLayoutIcons /> - </div> - </div> - </EuiFormControlLayout> - </div> - </EuiFlexItem> - <EuiFlexItem - grow={false} - > - <div - className="euiFlexItem euiFlexItem--flexGrowZero" - > - <EuiSuperUpdateButton - data-test-subj="superDatePickerApplyTimeButton" - isDisabled={false} - isLoading={false} - needsUpdate={false} - onClick={[Function]} - > - <EuiToolTip - delay="regular" - position="bottom" - > - <span - className="euiToolTipAnchor" - onMouseOut={[Function]} - onMouseOver={[Function]} - > - <EuiButton - className="euiSuperUpdateButton" - color="primary" - data-test-subj="superDatePickerApplyTimeButton" - fill={true} - iconType="refresh" - isDisabled={false} - isLoading={false} - onBlur={[Function]} - onClick={[Function]} - onFocus={[Function]} - textProps={ - Object { - "className": "euiSuperUpdateButton__text", - } - } - > - <button - className="euiButton euiButton--primary euiSuperUpdateButton euiButton--fill" - data-test-subj="superDatePickerApplyTimeButton" - disabled={false} - onBlur={[Function]} - onClick={[Function]} - onFocus={[Function]} - type="button" - > - <span - className="euiButton__content" - > - <EuiIcon - aria-hidden="true" - className="euiButton__icon" - size="m" - type="refresh" - > - <EuiIconEmpty - aria-hidden={true} - className="euiIcon euiIcon--medium euiIcon-isLoading euiButton__icon" - focusable="false" - role="img" - style={null} - > - <svg - aria-hidden={true} - className="euiIcon euiIcon--medium euiIcon-isLoading euiButton__icon" - focusable="false" - height={16} - role="img" - style={null} - viewBox="0 0 16 16" - width={16} - xmlns="http://www.w3.org/2000/svg" - /> - </EuiIconEmpty> - </EuiIcon> - <span - className="euiButton__text euiSuperUpdateButton__text" - > - <EuiI18n - default="Refresh" - token="euiSuperUpdateButton.refreshButtonLabel" - > - Refresh - </EuiI18n> - </span> - </span> - </button> - </EuiButton> - </span> - </EuiToolTip> - </EuiSuperUpdateButton> - </div> - </EuiFlexItem> - </div> - </EuiFlexGroup> - </EuiSuperDatePicker> - </UptimeDatePicker> - </div> - </EuiFlexItem> - </div> - </EuiFlexGroup> - <EuiSpacer - size="s" - > - <div - className="euiSpacer euiSpacer--s" - /> - </EuiSpacer> - </PageHeaderComponent> - </Route> -</Router> -`; - -exports[`PageHeaderComponent renders expected elements for valid props 1`] = ` -Array [ - <div - class="euiFlexGroup euiFlexGroup--gutterSmall euiFlexGroup--alignItemsCenter euiFlexGroup--justifyContentSpaceBetween euiFlexGroup--directionRow euiFlexGroup--responsive euiFlexGroup--wrap" - > - <div - class="euiFlexItem" - > - <h1 - class="euiTitle euiTitle--medium" - > - Overview - </h1> - </div> - <div - class="euiFlexItem euiFlexItem--flexGrowZero" - > - <div - class="euiFlexGroup euiFlexGroup--gutterSmall euiFlexGroup--directionRow euiSuperDatePicker__flexWrapper" - > - <div - class="euiFlexItem" - > - <div - class="euiFormControlLayout euiFormControlLayout--group euiSuperDatePicker" - > - <div - class="euiPopover euiPopover--anchorDownLeft" - id="QuickSelectPopover" - > - <div - class="euiPopover__anchor euiQuickSelectPopover__anchor" - > - <button - aria-label="Date quick select" - class="euiButtonEmpty euiButtonEmpty--primary euiButtonEmpty--xSmall euiButtonEmpty--iconRight euiFormControlLayout__prepend" - data-test-subj="superDatePickerToggleQuickMenuButton" - type="button" - > - <span - class="euiButtonEmpty__content" - > - <svg - aria-hidden="true" - class="euiIcon euiIcon--medium euiIcon-isLoading euiButtonEmpty__icon" - focusable="false" - height="16" - role="img" - viewBox="0 0 16 16" - width="16" - xmlns="http://www.w3.org/2000/svg" - /> - <span - class="euiButtonEmpty__text euiQuickSelectPopover__buttonText" - > - <svg - aria-hidden="true" - class="euiIcon euiIcon--medium euiIcon-isLoading" - focusable="false" - height="16" - role="img" - viewBox="0 0 16 16" - width="16" - xmlns="http://www.w3.org/2000/svg" - /> - </span> - </span> - </button> - </div> - </div> - <div - class="euiFormControlLayout__childrenWrapper" - > - <div - class="euiDatePickerRange euiDatePickerRange--inGroup" - > - <button - class="euiSuperDatePicker__prettyFormat" - data-test-subj="superDatePickerShowDatesButton" - > - Last 15 minutes - <span - class="euiSuperDatePicker__prettyFormatLink" - > - Show dates - </span> - </button> - </div> - </div> - </div> - </div> - <div - class="euiFlexItem euiFlexItem--flexGrowZero" - > - <span - class="euiToolTipAnchor" - > - <button - class="euiButton euiButton--primary euiSuperUpdateButton euiButton--fill" - data-test-subj="superDatePickerApplyTimeButton" - type="button" - > - <span - class="euiButton__content" - > - <svg - aria-hidden="true" - class="euiIcon euiIcon--medium euiIcon-isLoading euiButton__icon" - focusable="false" - height="16" - role="img" - viewBox="0 0 16 16" - width="16" - xmlns="http://www.w3.org/2000/svg" - /> - <span - class="euiButton__text euiSuperUpdateButton__text" - > - Refresh - </span> - </span> - </button> - </span> - </div> - </div> - </div> - </div>, - <div - class="euiSpacer euiSpacer--s" - />, -] -`; - -exports[`PageHeaderComponent renders expected title for valid monitor route 1`] = ` +exports[`PageHeader shallow renders with breadcrumbs and the date picker: page_header_with_date_picker 1`] = ` Array [ <div class="euiFlexGroup euiFlexGroup--gutterSmall euiFlexGroup--alignItemsCenter euiFlexGroup--justifyContentSpaceBetween euiFlexGroup--directionRow euiFlexGroup--responsive euiFlexGroup--wrap" @@ -841,7 +11,7 @@ Array [ <h1 class="euiTitle euiTitle--medium" > - https://www.elastic.co + TestingHeading </h1> </div> <div @@ -963,7 +133,7 @@ Array [ ] `; -exports[`PageHeaderComponent renders expected title for valid overview route 1`] = ` +exports[`PageHeader shallow renders with breadcrumbs without the date picker: page_header_no_date_picker 1`] = ` Array [ <div class="euiFlexGroup euiFlexGroup--gutterSmall euiFlexGroup--alignItemsCenter euiFlexGroup--justifyContentSpaceBetween euiFlexGroup--directionRow euiFlexGroup--responsive euiFlexGroup--wrap" @@ -974,181 +144,12 @@ Array [ <h1 class="euiTitle euiTitle--medium" > - Overview + TestingHeading </h1> </div> - <div - class="euiFlexItem euiFlexItem--flexGrowZero" - > - <div - class="euiFlexGroup euiFlexGroup--gutterSmall euiFlexGroup--directionRow euiSuperDatePicker__flexWrapper" - > - <div - class="euiFlexItem" - > - <div - class="euiFormControlLayout euiFormControlLayout--group euiSuperDatePicker" - > - <div - class="euiPopover euiPopover--anchorDownLeft" - id="QuickSelectPopover" - > - <div - class="euiPopover__anchor euiQuickSelectPopover__anchor" - > - <button - aria-label="Date quick select" - class="euiButtonEmpty euiButtonEmpty--primary euiButtonEmpty--xSmall euiButtonEmpty--iconRight euiFormControlLayout__prepend" - data-test-subj="superDatePickerToggleQuickMenuButton" - type="button" - > - <span - class="euiButtonEmpty__content" - > - <svg - aria-hidden="true" - class="euiIcon euiIcon--medium euiIcon-isLoading euiButtonEmpty__icon" - focusable="false" - height="16" - role="img" - viewBox="0 0 16 16" - width="16" - xmlns="http://www.w3.org/2000/svg" - /> - <span - class="euiButtonEmpty__text euiQuickSelectPopover__buttonText" - > - <svg - aria-hidden="true" - class="euiIcon euiIcon--medium euiIcon-isLoading" - focusable="false" - height="16" - role="img" - viewBox="0 0 16 16" - width="16" - xmlns="http://www.w3.org/2000/svg" - /> - </span> - </span> - </button> - </div> - </div> - <div - class="euiFormControlLayout__childrenWrapper" - > - <div - class="euiDatePickerRange euiDatePickerRange--inGroup" - > - <button - class="euiSuperDatePicker__prettyFormat" - data-test-subj="superDatePickerShowDatesButton" - > - Last 15 minutes - <span - class="euiSuperDatePicker__prettyFormatLink" - > - Show dates - </span> - </button> - </div> - </div> - </div> - </div> - <div - class="euiFlexItem euiFlexItem--flexGrowZero" - > - <span - class="euiToolTipAnchor" - > - <button - class="euiButton euiButton--primary euiSuperUpdateButton euiButton--fill" - data-test-subj="superDatePickerApplyTimeButton" - type="button" - > - <span - class="euiButton__content" - > - <svg - aria-hidden="true" - class="euiIcon euiIcon--medium euiIcon-isLoading euiButton__icon" - focusable="false" - height="16" - role="img" - viewBox="0 0 16 16" - width="16" - xmlns="http://www.w3.org/2000/svg" - /> - <span - class="euiButton__text euiSuperUpdateButton__text" - > - Refresh - </span> - </span> - </button> - </span> - </div> - </div> - </div> </div>, <div class="euiSpacer euiSpacer--s" />, ] `; - -exports[`PageHeaderComponent shallow renders expected elements for valid props 1`] = ` -<ContextProvider - value={ - Object { - "history": Object { - "action": "POP", - "block": [Function], - "canGo": [Function], - "createHref": [Function], - "entries": Array [ - Object { - "hash": "", - "key": "TestKeyForTesting", - "pathname": "/", - "search": "", - "state": undefined, - }, - ], - "go": [Function], - "goBack": [Function], - "goForward": [Function], - "index": 0, - "length": 1, - "listen": [Function], - "location": Object { - "hash": "", - "key": "TestKeyForTesting", - "pathname": "/", - "search": "", - "state": undefined, - }, - "push": [Function], - "replace": [Function], - }, - "location": Object { - "hash": "", - "key": "TestKeyForTesting", - "pathname": "/", - "search": "", - "state": undefined, - }, - "match": Object { - "isExact": true, - "params": Object {}, - "path": "/", - "url": "/", - }, - "staticContext": undefined, - } - } -> - <PageHeaderComponent - setBreadcrumbs={[MockFunction]} - /> -</ContextProvider> -`; diff --git a/x-pack/legacy/plugins/uptime/public/pages/__tests__/page_header.test.tsx b/x-pack/legacy/plugins/uptime/public/pages/__tests__/page_header.test.tsx index 38d074cdb5dba7..c1149834b4f594 100644 --- a/x-pack/legacy/plugins/uptime/public/pages/__tests__/page_header.test.tsx +++ b/x-pack/legacy/plugins/uptime/public/pages/__tests__/page_header.test.tsx @@ -6,141 +6,74 @@ import React from 'react'; import { Route } from 'react-router-dom'; -import { PageHeaderComponent } from '../page_header'; -import { mountWithRouter, renderWithRouter, shallowWithRouter } from '../../lib'; -import { MONITOR_ROUTE, OVERVIEW_ROUTE } from '../../../common/constants'; -import { Ping } from '../../../common/graphql/types'; -import { createMemoryHistory } from 'history'; +import { PageHeader, makeBaseBreadcrumb } from '../page_header'; +import { mountWithRouter, renderWithRouter } from '../../lib'; +import { OVERVIEW_ROUTE } from '../../../common/constants'; import { ChromeBreadcrumb } from 'kibana/public'; +import { KibanaContextProvider } from '../../../../../../../src/plugins/kibana_react/public'; +import { UptimeUrlParams, getSupportedUrlParams } from '../../lib/helper'; -describe('PageHeaderComponent', () => { - const monitorStatus: Ping = { - id: 'elastic-co', - tcp: { rtt: { connect: { us: 174982 } } }, - http: { - response: { - body: { - bytes: 2092041, - hash: '5d970606a6be810ae5d37115c4807fdd07ba4c3e407924ee5297e172d2efb3dc', - }, - status_code: 200, - }, - rtt: { - response_header: { us: 340175 }, - write_request: { us: 38 }, - validate: { us: 1797839 }, - content: { us: 1457663 }, - total: { us: 2030012 }, - }, - }, - monitor: { - ip: '2a04:4e42:3::729', - status: 'up', - duration: { us: 2030035 }, - type: 'http', - id: 'elastic-co', - name: 'elastic', - check_group: '2a017afa-4736-11ea-b3d0-acde48001122', - }, - resolve: { ip: '2a04:4e42:3::729', rtt: { us: 2102 } }, - url: { port: 443, full: 'https://www.elastic.co', scheme: 'https', domain: 'www.elastic.co' }, - ecs: { version: '1.4.0' }, - tls: { - certificate_not_valid_after: '2020-07-16T03:15:39.000Z', - rtt: { handshake: { us: 57115 } }, - certificate_not_valid_before: '2019-08-16T01:40:25.000Z', - }, - observer: { - geo: { name: 'US-West', location: '37.422994, -122.083666' }, - }, - timestamp: '2020-02-04T10:07:42.142Z', - }; - - it('shallow renders expected elements for valid props', () => { - const component = shallowWithRouter(<PageHeaderComponent setBreadcrumbs={jest.fn()} />); - expect(component).toMatchSnapshot(); - }); - - it('renders expected elements for valid props', () => { - const component = renderWithRouter(<PageHeaderComponent setBreadcrumbs={jest.fn()} />); - expect(component).toMatchSnapshot(); - }); +describe('PageHeader', () => { + const simpleBreadcrumbs: ChromeBreadcrumb[] = [ + { text: 'TestCrumb1', href: '#testHref1' }, + { text: 'TestCrumb2', href: '#testHref2' }, + ]; - it('renders expected title for valid overview route', () => { + it('shallow renders with breadcrumbs and the date picker', () => { const component = renderWithRouter( - <Route path={OVERVIEW_ROUTE}> - <PageHeaderComponent setBreadcrumbs={jest.fn()} /> - </Route> + <PageHeader + headingText={'TestingHeading'} + breadcrumbs={simpleBreadcrumbs} + datePicker={true} + /> ); - expect(component).toMatchSnapshot(); - - const titleComponent = component.find('.euiTitle'); - expect(titleComponent.text()).toBe('Overview'); + expect(component).toMatchSnapshot('page_header_with_date_picker'); }); - it('renders expected title for valid monitor route', () => { - const history = createMemoryHistory({ initialEntries: ['/monitor/ZWxhc3RpYy1jbw=='] }); - + it('shallow renders with breadcrumbs without the date picker', () => { const component = renderWithRouter( - <Route path={MONITOR_ROUTE}> - <PageHeaderComponent setBreadcrumbs={jest.fn()} monitorStatus={monitorStatus} /> - </Route>, - history + <PageHeader + headingText={'TestingHeading'} + breadcrumbs={simpleBreadcrumbs} + datePicker={false} + /> ); - expect(component).toMatchSnapshot(); - - const titleComponent = component.find('.euiTitle'); - expect(titleComponent.text()).toBe('https://www.elastic.co'); + expect(component).toMatchSnapshot('page_header_no_date_picker'); }); - it('mount expected page title for valid monitor route', () => { - const history = createMemoryHistory({ initialEntries: ['/monitor/ZWxhc3RpYy1jbw=='] }); - - const component = mountWithRouter( - <Route path={MONITOR_ROUTE}> - <PageHeaderComponent setBreadcrumbs={jest.fn()} monitorStatus={monitorStatus} /> - </Route>, - history - ); - expect(component).toMatchSnapshot(); - - const titleComponent = component.find('.euiTitle'); - expect(titleComponent.text()).toBe('https://www.elastic.co'); - expect(document.title).toBe('Uptime | elastic - Kibana'); - }); - - it('mount and set expected breadcrumb for monitor route', () => { - const history = createMemoryHistory({ initialEntries: ['/monitor/ZWxhc3RpYy1jbw=='] }); - let breadcrumbObj: ChromeBreadcrumb[] = []; - const setBreadcrumb = (breadcrumbs: ChromeBreadcrumb[]) => { - breadcrumbObj = breadcrumbs; - }; - + it('sets the given breadcrumbs', () => { + const [getBreadcrumbs, core] = mockCore(); mountWithRouter( - <Route path={MONITOR_ROUTE}> - <PageHeaderComponent setBreadcrumbs={setBreadcrumb} monitorStatus={monitorStatus} /> - </Route>, - history + <KibanaContextProvider services={{ ...core }}> + <Route path={OVERVIEW_ROUTE}> + <PageHeader + headingText={'TestingHeading'} + breadcrumbs={simpleBreadcrumbs} + datePicker={false} + /> + </Route> + </KibanaContextProvider> ); - expect(breadcrumbObj).toStrictEqual([ - { href: '#/?', text: 'Uptime' }, - { text: 'https://www.elastic.co' }, - ]); - }); - - it('mount and set expected breadcrumb for overview route', () => { - let breadcrumbObj: ChromeBreadcrumb[] = []; - const setBreadcrumb = (breadcrumbs: ChromeBreadcrumb[]) => { - breadcrumbObj = breadcrumbs; - }; - - mountWithRouter( - <Route path={OVERVIEW_ROUTE}> - <PageHeaderComponent setBreadcrumbs={setBreadcrumb} monitorStatus={monitorStatus} /> - </Route> + const urlParams: UptimeUrlParams = getSupportedUrlParams({}); + expect(getBreadcrumbs()).toStrictEqual( + [makeBaseBreadcrumb(urlParams)].concat(simpleBreadcrumbs) ); - - expect(breadcrumbObj).toStrictEqual([{ href: '#/', text: 'Uptime' }]); }); }); + +const mockCore: () => [() => ChromeBreadcrumb[], any] = () => { + let breadcrumbObj: ChromeBreadcrumb[] = []; + const get = () => { + return breadcrumbObj; + }; + const core = { + chrome: { + setBreadcrumbs: (newBreadcrumbs: ChromeBreadcrumb[]) => { + breadcrumbObj = newBreadcrumbs; + }, + }, + }; + + return [get, core]; +}; diff --git a/x-pack/legacy/plugins/uptime/public/pages/monitor.tsx b/x-pack/legacy/plugins/uptime/public/pages/monitor.tsx index 380cc041ae87ea..8c608f57a95923 100644 --- a/x-pack/legacy/plugins/uptime/public/pages/monitor.tsx +++ b/x-pack/legacy/plugins/uptime/public/pages/monitor.tsx @@ -5,19 +5,45 @@ */ import { EuiSpacer } from '@elastic/eui'; -import React, { useContext, useState } from 'react'; +import React, { useContext, useState, useEffect } from 'react'; import { useParams } from 'react-router-dom'; +import { ChromeBreadcrumb } from 'kibana/public'; +import { connect, MapDispatchToPropsFunction, MapStateToPropsParam } from 'react-redux'; import { MonitorCharts, PingList } from '../components/functional'; import { UptimeRefreshContext, UptimeThemeContext } from '../contexts'; import { useUptimeTelemetry, useUrlParams, UptimePage } from '../hooks'; import { useTrackPageview } from '../../../../../plugins/observability/public'; import { MonitorStatusDetails } from '../components/connected'; +import { Ping } from '../../common/graphql/types'; +import { AppState } from '../state'; +import { selectSelectedMonitor } from '../state/selectors'; +import { getSelectedMonitor } from '../state/actions'; +import { PageHeader } from './page_header'; -export const MonitorPage = () => { +interface StateProps { + selectedMonitor: Ping | null; +} + +interface DispatchProps { + dispatchGetMonitorStatus: (monitorId: string) => void; +} + +type Props = StateProps & DispatchProps; + +export const MonitorPageComponent: React.FC<Props> = ({ + selectedMonitor, + dispatchGetMonitorStatus, +}: Props) => { // decode 64 base string, it was decoded to make it a valid url, since monitor id can be a url let { monitorId } = useParams(); monitorId = atob(monitorId || ''); + useEffect(() => { + if (monitorId) { + dispatchGetMonitorStatus(monitorId); + } + }, [dispatchGetMonitorStatus, monitorId]); + const [pingListPageCount, setPingListPageCount] = useState<number>(10); const { colors } = useContext(UptimeThemeContext); const { refreshApp } = useContext(UptimeRefreshContext); @@ -39,8 +65,11 @@ export const MonitorPage = () => { useTrackPageview({ app: 'uptime', path: 'monitor' }); useTrackPageview({ app: 'uptime', path: 'monitor', delay: 15000 }); + const nameOrId = selectedMonitor?.monitor?.name || selectedMonitor?.monitor?.id || ''; + const breadcrumbs: ChromeBreadcrumb[] = [{ text: nameOrId }]; return ( <> + <PageHeader headingText={nameOrId} breadcrumbs={breadcrumbs} datePicker={true} /> <EuiSpacer size="s" /> <MonitorStatusDetails monitorId={monitorId} /> <EuiSpacer size="s" /> @@ -65,3 +94,21 @@ export const MonitorPage = () => { </> ); }; + +const mapStateToProps: MapStateToPropsParam<StateProps, {}, AppState> = state => ({ + selectedMonitor: selectSelectedMonitor(state), +}); + +const mapDispatchToProps: MapDispatchToPropsFunction<DispatchProps, {}> = (dispatch, own) => { + return { + dispatchGetMonitorStatus: (monitorId: string) => { + dispatch( + getSelectedMonitor({ + monitorId, + }) + ); + }, + }; +}; + +export const MonitorPage = connect(mapStateToProps, mapDispatchToProps)(MonitorPageComponent); diff --git a/x-pack/legacy/plugins/uptime/public/pages/overview.tsx b/x-pack/legacy/plugins/uptime/public/pages/overview.tsx index cf3631eda042af..15e31d5e446291 100644 --- a/x-pack/legacy/plugins/uptime/public/pages/overview.tsx +++ b/x-pack/legacy/plugins/uptime/public/pages/overview.tsx @@ -7,6 +7,7 @@ import { EuiFlexGroup, EuiFlexItem, EuiSpacer } from '@elastic/eui'; import React, { useContext, useEffect } from 'react'; import styled from 'styled-components'; +import { i18n } from '@kbn/i18n'; import { EmptyState, MonitorList, @@ -20,6 +21,7 @@ import { DataPublicPluginSetup, IIndexPattern } from '../../../../../../src/plug import { UptimeThemeContext } from '../contexts'; import { FilterGroup, KueryBar } from '../components/connected'; import { useUpdateKueryString } from '../hooks'; +import { PageHeader } from './page_header'; interface OverviewPageProps { autocomplete: DataPublicPluginSetup['autocomplete']; @@ -71,8 +73,14 @@ export const OverviewPageComponent = ({ autocomplete, indexPattern, setEsKueryFi const linkParameters = stringifyUrlParams(params, true); + const heading = i18n.translate('xpack.uptime.overviewPage.headerText', { + defaultMessage: 'Overview', + description: `The text that will be displayed in the app's heading when the Overview page loads.`, + }); + return ( <> + <PageHeader headingText={heading} breadcrumbs={[]} datePicker={true} /> <EmptyState implementsCustomErrorState={true} variables={{}}> <EuiFlexGroup gutterSize="xs" wrap responsive> <EuiFlexItem grow={1} style={{ flexBasis: 500 }}> diff --git a/x-pack/legacy/plugins/uptime/public/pages/page_header.tsx b/x-pack/legacy/plugins/uptime/public/pages/page_header.tsx index 5c051c491c6f5b..b0fb2d0ed7869b 100644 --- a/x-pack/legacy/plugins/uptime/public/pages/page_header.tsx +++ b/x-pack/legacy/plugins/uptime/public/pages/page_header.tsx @@ -4,75 +4,63 @@ * you may not use this file except in compliance with the Elastic License. */ +import React, { useEffect } from 'react'; +import { ChromeBreadcrumb } from 'kibana/public'; +import { EuiFlexGroup, EuiFlexItem, EuiTitle, EuiSpacer } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -import React, { useEffect, useState } from 'react'; -import { useRouteMatch } from 'react-router-dom'; -import { EuiTitle, EuiFlexGroup, EuiFlexItem, EuiSpacer } from '@elastic/eui'; import { UptimeDatePicker } from '../components/functional/uptime_date_picker'; -import { getMonitorPageBreadcrumb, getOverviewPageBreadcrumbs } from '../breadcrumbs'; +import { useKibana } from '../../../../../../src/plugins/kibana_react/public'; import { stringifyUrlParams } from '../lib/helper/stringify_url_params'; -import { getTitle } from '../lib/helper/get_title'; -import { UMUpdateBreadcrumbs } from '../lib/lib'; import { useUrlParams } from '../hooks'; -import { MONITOR_ROUTE } from '../../common/constants'; -import { Ping } from '../../common/graphql/types'; +import { UptimeUrlParams } from '../lib/helper'; interface PageHeaderProps { - monitorStatus?: Ping; - setBreadcrumbs: UMUpdateBreadcrumbs; + headingText: string; + breadcrumbs: ChromeBreadcrumb[]; + datePicker: boolean; } -export const PageHeaderComponent = ({ monitorStatus, setBreadcrumbs }: PageHeaderProps) => { - const monitorPage = useRouteMatch({ - path: MONITOR_ROUTE, - }); - - const [getUrlParams] = useUrlParams(); - const { absoluteDateRangeStart, absoluteDateRangeEnd, ...params } = getUrlParams(); - - const headingText = !monitorPage - ? i18n.translate('xpack.uptime.overviewPage.headerText', { - defaultMessage: 'Overview', - description: `The text that will be displayed in the app's heading when the Overview page loads.`, - }) - : monitorStatus?.url?.full; +export const makeBaseBreadcrumb = (params?: UptimeUrlParams): ChromeBreadcrumb => { + let href = '#/'; + if (params) { + const crumbParams: Partial<UptimeUrlParams> = { ...params }; + // We don't want to encode this values because they are often set to Date.now(), the relative + // values in dateRangeStart are better for a URL. + delete crumbParams.absoluteDateRangeStart; + delete crumbParams.absoluteDateRangeEnd; + href += stringifyUrlParams(crumbParams, true); + } + return { + text: i18n.translate('xpack.uptime.breadcrumbs.overviewBreadcrumbText', { + defaultMessage: 'Uptime', + }), + href, + }; +}; - const [headerText, setHeaderText] = useState(headingText); +export const PageHeader = ({ headingText, breadcrumbs, datePicker = true }: PageHeaderProps) => { + const setBreadcrumbs = useKibana().services.chrome?.setBreadcrumbs!; + const params = useUrlParams()[0](); useEffect(() => { - if (monitorPage) { - setHeaderText(monitorStatus?.url?.full ?? ''); - if (monitorStatus?.monitor) { - const { name, id } = monitorStatus.monitor; - document.title = getTitle((name || id) ?? ''); - } - } else { - setHeaderText(headingText); - document.title = getTitle(); - } - }, [monitorStatus, monitorPage, setHeaderText, headingText]); + setBreadcrumbs([makeBaseBreadcrumb(params)].concat(breadcrumbs)); + }, [breadcrumbs, params, setBreadcrumbs]); - useEffect(() => { - if (monitorPage) { - if (headerText) { - setBreadcrumbs(getMonitorPageBreadcrumb(headerText, stringifyUrlParams(params, true))); - } - } else { - setBreadcrumbs(getOverviewPageBreadcrumbs()); - } - }, [headerText, setBreadcrumbs, params, monitorPage]); + const datePickerComponent = datePicker ? ( + <EuiFlexItem grow={false}> + <UptimeDatePicker /> + </EuiFlexItem> + ) : null; return ( <> <EuiFlexGroup alignItems="center" justifyContent="spaceBetween" gutterSize="s" wrap={true}> <EuiFlexItem> <EuiTitle> - <h1>{headerText}</h1> + <h1>{headingText}</h1> </EuiTitle> </EuiFlexItem> - <EuiFlexItem grow={false}> - <UptimeDatePicker /> - </EuiFlexItem> + {datePickerComponent} </EuiFlexGroup> <EuiSpacer size="s" /> </> diff --git a/x-pack/legacy/plugins/uptime/public/uptime_app.tsx b/x-pack/legacy/plugins/uptime/public/uptime_app.tsx index 66ff5ba7a58ee2..427870797a2064 100644 --- a/x-pack/legacy/plugins/uptime/public/uptime_app.tsx +++ b/x-pack/legacy/plugins/uptime/public/uptime_app.tsx @@ -13,7 +13,7 @@ import { BrowserRouter as Router } from 'react-router-dom'; import { I18nStart, ChromeBreadcrumb, CoreStart } from 'src/core/public'; import { PluginsSetup } from 'ui/new_platform/new_platform'; import { KibanaContextProvider } from '../../../../../src/plugins/kibana_react/public'; -import { UMGraphQLClient, UMUpdateBreadcrumbs, UMUpdateBadge } from './lib/lib'; +import { UMGraphQLClient, UMUpdateBadge } from './lib/lib'; import { UptimeRefreshContextProvider, UptimeSettingsContextProvider, @@ -23,7 +23,6 @@ import { CommonlyUsedRange } from './components/functional/uptime_date_picker'; import { store } from './state'; import { setBasePath } from './state/actions'; import { PageRouter } from './routes'; -import { PageHeader } from './components/connected/pages/page_header_container'; export interface UptimeAppColors { danger: string; @@ -47,10 +46,10 @@ export interface UptimeAppProps { kibanaBreadcrumbs: ChromeBreadcrumb[]; plugins: PluginsSetup; routerBasename: string; - setBreadcrumbs: UMUpdateBreadcrumbs; setBadge: UMUpdateBadge; renderGlobalHelpControls(): void; commonlyUsedRanges: CommonlyUsedRange[]; + setBreadcrumbs: (crumbs: ChromeBreadcrumb[]) => void; } const Application = (props: UptimeAppProps) => { @@ -64,7 +63,6 @@ const Application = (props: UptimeAppProps) => { plugins, renderGlobalHelpControls, routerBasename, - setBreadcrumbs, setBadge, } = props; @@ -100,7 +98,6 @@ const Application = (props: UptimeAppProps) => { <UptimeThemeContextProvider darkMode={darkMode}> <EuiPage className="app-wrapper-panel " data-test-subj="uptimeApp"> <main> - <PageHeader setBreadcrumbs={setBreadcrumbs} /> <PageRouter autocomplete={plugins.data.autocomplete} /> </main> </EuiPage> From 4226b6f37378f74db4cfa0f2a80c5f47777cf8ec Mon Sep 17 00:00:00 2001 From: Mikhail Shustov <restrry@gmail.com> Date: Tue, 3 Mar 2020 15:46:50 +0100 Subject: [PATCH 048/120] Allow disabling xsrf protection per an endpoint (#58717) * add xsrfRequired flag to a route definition interface * update tests * deprecate server.xsrf.whitelist It meant to be used for IdP endpoints only, which we are going to refactor to disable xsrf requirement per a specific endpoint. * update docs * do not fail on manual KibanaRequest creation * address comments * update tests * address comments * make xsrfRequired available only for destructive methods * update docs * another isSafeMethod usage --- ...na-plugin-server.destructiveroutemethod.md | 13 +++++++++ .../core/server/kibana-plugin-server.md | 2 ++ ...kibana-plugin-server.routeconfigoptions.md | 1 + ...-server.routeconfigoptions.xsrfrequired.md | 15 ++++++++++ .../kibana-plugin-server.routemethod.md | 2 +- .../kibana-plugin-server.saferoutemethod.md | 13 +++++++++ .../deprecation/core_deprecations.test.ts | 13 +++++++++ .../config/deprecation/core_deprecations.ts | 14 +++++++++ src/core/server/http/http_server.mocks.ts | 6 +++- src/core/server/http/http_server.test.ts | 2 ++ src/core/server/http/http_server.ts | 10 +++++-- src/core/server/http/index.ts | 2 ++ .../lifecycle_handlers.test.ts | 11 +++++++ .../server/http/lifecycle_handlers.test.ts | 29 +++++++++++++++++-- src/core/server/http/lifecycle_handlers.ts | 10 +++++-- src/core/server/http/router/index.ts | 4 +++ src/core/server/http/router/request.ts | 14 +++++++-- src/core/server/http/router/route.ts | 27 ++++++++++++++++- src/core/server/index.ts | 2 ++ src/core/server/server.api.md | 9 +++++- 20 files changed, 185 insertions(+), 14 deletions(-) create mode 100644 docs/development/core/server/kibana-plugin-server.destructiveroutemethod.md create mode 100644 docs/development/core/server/kibana-plugin-server.routeconfigoptions.xsrfrequired.md create mode 100644 docs/development/core/server/kibana-plugin-server.saferoutemethod.md diff --git a/docs/development/core/server/kibana-plugin-server.destructiveroutemethod.md b/docs/development/core/server/kibana-plugin-server.destructiveroutemethod.md new file mode 100644 index 00000000000000..48b1e837f6db95 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.destructiveroutemethod.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [DestructiveRouteMethod](./kibana-plugin-server.destructiveroutemethod.md) + +## DestructiveRouteMethod type + +Set of HTTP methods changing the state of the server. + +<b>Signature:</b> + +```typescript +export declare type DestructiveRouteMethod = 'post' | 'put' | 'delete' | 'patch'; +``` diff --git a/docs/development/core/server/kibana-plugin-server.md b/docs/development/core/server/kibana-plugin-server.md index c948c899207968..0e79385d1ca4d8 100644 --- a/docs/development/core/server/kibana-plugin-server.md +++ b/docs/development/core/server/kibana-plugin-server.md @@ -188,6 +188,7 @@ The plugin integrates with the core system via lifecycle events: `setup`<!-- --> | [ConfigDeprecationLogger](./kibana-plugin-server.configdeprecationlogger.md) | Logger interface used when invoking a [ConfigDeprecation](./kibana-plugin-server.configdeprecation.md) | | [ConfigDeprecationProvider](./kibana-plugin-server.configdeprecationprovider.md) | A provider that should returns a list of [ConfigDeprecation](./kibana-plugin-server.configdeprecation.md)<!-- -->.<!-- -->See [ConfigDeprecationFactory](./kibana-plugin-server.configdeprecationfactory.md) for more usage examples. | | [ConfigPath](./kibana-plugin-server.configpath.md) | | +| [DestructiveRouteMethod](./kibana-plugin-server.destructiveroutemethod.md) | Set of HTTP methods changing the state of the server. | | [ElasticsearchClientConfig](./kibana-plugin-server.elasticsearchclientconfig.md) | | | [GetAuthHeaders](./kibana-plugin-server.getauthheaders.md) | Get headers to authenticate a user against Elasticsearch. | | [GetAuthState](./kibana-plugin-server.getauthstate.md) | Gets authentication state for a request. Returned by <code>auth</code> interceptor. | @@ -232,6 +233,7 @@ The plugin integrates with the core system via lifecycle events: `setup`<!-- --> | [RouteValidationFunction](./kibana-plugin-server.routevalidationfunction.md) | The custom validation function if @<!-- -->kbn/config-schema is not a valid solution for your specific plugin requirements. | | [RouteValidationSpec](./kibana-plugin-server.routevalidationspec.md) | Allowed property validation options: either @<!-- -->kbn/config-schema validations or custom validation functions<!-- -->See [RouteValidationFunction](./kibana-plugin-server.routevalidationfunction.md) for custom validation. | | [RouteValidatorFullConfig](./kibana-plugin-server.routevalidatorfullconfig.md) | Route validations config and options merged into one object | +| [SafeRouteMethod](./kibana-plugin-server.saferoutemethod.md) | Set of HTTP methods not changing the state of the server. | | [SavedObjectAttribute](./kibana-plugin-server.savedobjectattribute.md) | Type definition for a Saved Object attribute value | | [SavedObjectAttributeSingle](./kibana-plugin-server.savedobjectattributesingle.md) | Don't use this type, it's simply a helper type for [SavedObjectAttribute](./kibana-plugin-server.savedobjectattribute.md) | | [SavedObjectMigrationFn](./kibana-plugin-server.savedobjectmigrationfn.md) | A migration function for a [saved object type](./kibana-plugin-server.savedobjectstype.md) used to migrate it to a given version | diff --git a/docs/development/core/server/kibana-plugin-server.routeconfigoptions.md b/docs/development/core/server/kibana-plugin-server.routeconfigoptions.md index 0929e15b6228b7..7fbab90cc2c8a6 100644 --- a/docs/development/core/server/kibana-plugin-server.routeconfigoptions.md +++ b/docs/development/core/server/kibana-plugin-server.routeconfigoptions.md @@ -19,4 +19,5 @@ export interface RouteConfigOptions<Method extends RouteMethod> | [authRequired](./kibana-plugin-server.routeconfigoptions.authrequired.md) | <code>boolean</code> | A flag shows that authentication for a route: <code>enabled</code> when true <code>disabled</code> when false<!-- -->Enabled by default. | | [body](./kibana-plugin-server.routeconfigoptions.body.md) | <code>Method extends 'get' | 'options' ? undefined : RouteConfigOptionsBody</code> | Additional body options [RouteConfigOptionsBody](./kibana-plugin-server.routeconfigoptionsbody.md)<!-- -->. | | [tags](./kibana-plugin-server.routeconfigoptions.tags.md) | <code>readonly string[]</code> | Additional metadata tag strings to attach to the route. | +| [xsrfRequired](./kibana-plugin-server.routeconfigoptions.xsrfrequired.md) | <code>Method extends 'get' ? never : boolean</code> | Defines xsrf protection requirements for a route: - true. Requires an incoming POST/PUT/DELETE request to contain <code>kbn-xsrf</code> header. - false. Disables xsrf protection.<!-- -->Set to true by default | diff --git a/docs/development/core/server/kibana-plugin-server.routeconfigoptions.xsrfrequired.md b/docs/development/core/server/kibana-plugin-server.routeconfigoptions.xsrfrequired.md new file mode 100644 index 00000000000000..801a0c3dc299b9 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.routeconfigoptions.xsrfrequired.md @@ -0,0 +1,15 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [RouteConfigOptions](./kibana-plugin-server.routeconfigoptions.md) > [xsrfRequired](./kibana-plugin-server.routeconfigoptions.xsrfrequired.md) + +## RouteConfigOptions.xsrfRequired property + +Defines xsrf protection requirements for a route: - true. Requires an incoming POST/PUT/DELETE request to contain `kbn-xsrf` header. - false. Disables xsrf protection. + +Set to true by default + +<b>Signature:</b> + +```typescript +xsrfRequired?: Method extends 'get' ? never : boolean; +``` diff --git a/docs/development/core/server/kibana-plugin-server.routemethod.md b/docs/development/core/server/kibana-plugin-server.routemethod.md index 939ae94b85691b..ed0d8e9af4b194 100644 --- a/docs/development/core/server/kibana-plugin-server.routemethod.md +++ b/docs/development/core/server/kibana-plugin-server.routemethod.md @@ -9,5 +9,5 @@ The set of common HTTP methods supported by Kibana routing. <b>Signature:</b> ```typescript -export declare type RouteMethod = 'get' | 'post' | 'put' | 'delete' | 'patch' | 'options'; +export declare type RouteMethod = SafeRouteMethod | DestructiveRouteMethod; ``` diff --git a/docs/development/core/server/kibana-plugin-server.saferoutemethod.md b/docs/development/core/server/kibana-plugin-server.saferoutemethod.md new file mode 100644 index 00000000000000..432aa4c6e70147 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.saferoutemethod.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [SafeRouteMethod](./kibana-plugin-server.saferoutemethod.md) + +## SafeRouteMethod type + +Set of HTTP methods not changing the state of the server. + +<b>Signature:</b> + +```typescript +export declare type SafeRouteMethod = 'get' | 'options'; +``` diff --git a/src/core/server/config/deprecation/core_deprecations.test.ts b/src/core/server/config/deprecation/core_deprecations.test.ts index b40dbdc1b66519..a91e128f62d2dc 100644 --- a/src/core/server/config/deprecation/core_deprecations.test.ts +++ b/src/core/server/config/deprecation/core_deprecations.test.ts @@ -81,6 +81,19 @@ describe('core deprecations', () => { }); }); + describe('xsrfDeprecation', () => { + it('logs a warning if server.xsrf.whitelist is set', () => { + const { messages } = applyCoreDeprecations({ + server: { xsrf: { whitelist: ['/path'] } }, + }); + expect(messages).toMatchInlineSnapshot(` + Array [ + "It is not recommended to disable xsrf protections for API endpoints via [server.xsrf.whitelist]. It will be removed in 8.0 release. Instead, supply the \\"kbn-xsrf\\" header.", + ] + `); + }); + }); + describe('rewriteBasePath', () => { it('logs a warning is server.basePath is set and server.rewriteBasePath is not', () => { const { messages } = applyCoreDeprecations({ diff --git a/src/core/server/config/deprecation/core_deprecations.ts b/src/core/server/config/deprecation/core_deprecations.ts index 4fa51dcd5a0825..d91e55115d0b13 100644 --- a/src/core/server/config/deprecation/core_deprecations.ts +++ b/src/core/server/config/deprecation/core_deprecations.ts @@ -38,6 +38,19 @@ const dataPathDeprecation: ConfigDeprecation = (settings, fromPath, log) => { return settings; }; +const xsrfDeprecation: ConfigDeprecation = (settings, fromPath, log) => { + if ( + has(settings, 'server.xsrf.whitelist') && + get<unknown[]>(settings, 'server.xsrf.whitelist').length > 0 + ) { + log( + 'It is not recommended to disable xsrf protections for API endpoints via [server.xsrf.whitelist]. ' + + 'It will be removed in 8.0 release. Instead, supply the "kbn-xsrf" header.' + ); + } + return settings; +}; + const rewriteBasePathDeprecation: ConfigDeprecation = (settings, fromPath, log) => { if (has(settings, 'server.basePath') && !has(settings, 'server.rewriteBasePath')) { log( @@ -177,4 +190,5 @@ export const coreDeprecationProvider: ConfigDeprecationProvider = ({ rewriteBasePathDeprecation, cspRulesDeprecation, mapManifestServiceUrlDeprecation, + xsrfDeprecation, ]; diff --git a/src/core/server/http/http_server.mocks.ts b/src/core/server/http/http_server.mocks.ts index 0a9541393284e3..741c723ca93652 100644 --- a/src/core/server/http/http_server.mocks.ts +++ b/src/core/server/http/http_server.mocks.ts @@ -29,6 +29,7 @@ import { RouteMethod, KibanaResponseFactory, RouteValidationSpec, + KibanaRouteState, } from './router'; import { OnPreResponseToolkit } from './lifecycle/on_pre_response'; import { OnPostAuthToolkit } from './lifecycle/on_post_auth'; @@ -43,6 +44,7 @@ interface RequestFixtureOptions<P = any, Q = any, B = any> { method?: RouteMethod; socket?: Socket; routeTags?: string[]; + kibanaRouteState?: KibanaRouteState; routeAuthRequired?: false; validation?: { params?: RouteValidationSpec<P>; @@ -62,6 +64,7 @@ function createKibanaRequestMock<P = any, Q = any, B = any>({ routeTags, routeAuthRequired, validation = {}, + kibanaRouteState = { xsrfRequired: true }, }: RequestFixtureOptions<P, Q, B> = {}) { const queryString = stringify(query, { sort: false }); @@ -80,7 +83,7 @@ function createKibanaRequestMock<P = any, Q = any, B = any>({ search: queryString ? `?${queryString}` : queryString, }, route: { - settings: { tags: routeTags, auth: routeAuthRequired }, + settings: { tags: routeTags, auth: routeAuthRequired, app: kibanaRouteState }, }, raw: { req: { socket }, @@ -109,6 +112,7 @@ function createRawRequestMock(customization: DeepPartial<Request> = {}) { return merge( {}, { + app: { xsrfRequired: true } as any, headers: {}, path: '/', route: { settings: {} }, diff --git a/src/core/server/http/http_server.test.ts b/src/core/server/http/http_server.test.ts index a9fc80c86d878e..27db79bb94d252 100644 --- a/src/core/server/http/http_server.test.ts +++ b/src/core/server/http/http_server.test.ts @@ -811,6 +811,7 @@ test('exposes route details of incoming request to a route handler', async () => path: '/', options: { authRequired: true, + xsrfRequired: false, tags: [], }, }); @@ -923,6 +924,7 @@ test('exposes route details of incoming request to a route handler (POST + paylo path: '/', options: { authRequired: true, + xsrfRequired: true, tags: [], body: { parse: true, // hapi populates the default diff --git a/src/core/server/http/http_server.ts b/src/core/server/http/http_server.ts index 025ab2bf56ac2d..cffdffab0d0cf7 100644 --- a/src/core/server/http/http_server.ts +++ b/src/core/server/http/http_server.ts @@ -27,7 +27,7 @@ import { adoptToHapiOnPostAuthFormat, OnPostAuthHandler } from './lifecycle/on_p import { adoptToHapiOnPreAuthFormat, OnPreAuthHandler } from './lifecycle/on_pre_auth'; import { adoptToHapiOnPreResponseFormat, OnPreResponseHandler } from './lifecycle/on_pre_response'; -import { IRouter } from './router'; +import { IRouter, KibanaRouteState, isSafeMethod } from './router'; import { SessionStorageCookieOptions, createCookieSessionStorageFactory, @@ -147,9 +147,14 @@ export class HttpServer { for (const route of router.getRoutes()) { this.log.debug(`registering route handler for [${route.path}]`); // Hapi does not allow payload validation to be specified for 'head' or 'get' requests - const validate = ['head', 'get'].includes(route.method) ? undefined : { payload: true }; + const validate = isSafeMethod(route.method) ? undefined : { payload: true }; const { authRequired = true, tags, body = {} } = route.options; const { accepts: allow, maxBytes, output, parse } = body; + + const kibanaRouteState: KibanaRouteState = { + xsrfRequired: route.options.xsrfRequired ?? !isSafeMethod(route.method), + }; + this.server.route({ handler: route.handler, method: route.method, @@ -157,6 +162,7 @@ export class HttpServer { options: { // Enforcing the comparison with true because plugins could overwrite the auth strategy by doing `options: { authRequired: authStrategy as any }` auth: authRequired === true ? undefined : false, + app: kibanaRouteState, tags: tags ? Array.from(tags) : undefined, // TODO: This 'validate' section can be removed once the legacy platform is completely removed. // We are telling Hapi that NP routes can accept any payload, so that it can bypass the default diff --git a/src/core/server/http/index.ts b/src/core/server/http/index.ts index d31afe1670e419..8f4c02680f8a30 100644 --- a/src/core/server/http/index.ts +++ b/src/core/server/http/index.ts @@ -58,6 +58,8 @@ export { RouteValidationError, RouteValidatorFullConfig, RouteValidationResultFactory, + DestructiveRouteMethod, + SafeRouteMethod, } from './router'; export { BasePathProxyServer } from './base_path_proxy_server'; export { OnPreAuthHandler, OnPreAuthToolkit } from './lifecycle/on_pre_auth'; diff --git a/src/core/server/http/integration_tests/lifecycle_handlers.test.ts b/src/core/server/http/integration_tests/lifecycle_handlers.test.ts index f4c5f16870c7ed..b5364c616f17cf 100644 --- a/src/core/server/http/integration_tests/lifecycle_handlers.test.ts +++ b/src/core/server/http/integration_tests/lifecycle_handlers.test.ts @@ -36,6 +36,7 @@ const versionHeader = 'kbn-version'; const xsrfHeader = 'kbn-xsrf'; const nameHeader = 'kbn-name'; const whitelistedTestPath = '/xsrf/test/route/whitelisted'; +const xsrfDisabledTestPath = '/xsrf/test/route/disabled'; const kibanaName = 'my-kibana-name'; const setupDeps = { context: contextServiceMock.createSetupContract(), @@ -188,6 +189,12 @@ describe('core lifecycle handlers', () => { return res.ok({ body: 'ok' }); } ); + ((router as any)[method.toLowerCase()] as RouteRegistrar<any>)<any, any, any>( + { path: xsrfDisabledTestPath, validate: false, options: { xsrfRequired: false } }, + (context, req, res) => { + return res.ok({ body: 'ok' }); + } + ); }); await server.start(); @@ -235,6 +242,10 @@ describe('core lifecycle handlers', () => { it('accepts whitelisted requests without either an xsrf or version header', async () => { await getSupertest(method.toLowerCase(), whitelistedTestPath).expect(200, 'ok'); }); + + it('accepts requests on a route with disabled xsrf protection', async () => { + await getSupertest(method.toLowerCase(), xsrfDisabledTestPath).expect(200, 'ok'); + }); }); }); }); diff --git a/src/core/server/http/lifecycle_handlers.test.ts b/src/core/server/http/lifecycle_handlers.test.ts index 48a6973b741ba0..a80e432e0d4cb7 100644 --- a/src/core/server/http/lifecycle_handlers.test.ts +++ b/src/core/server/http/lifecycle_handlers.test.ts @@ -24,7 +24,7 @@ import { } from './lifecycle_handlers'; import { httpServerMock } from './http_server.mocks'; import { HttpConfig } from './http_config'; -import { KibanaRequest, RouteMethod } from './router'; +import { KibanaRequest, RouteMethod, KibanaRouteState } from './router'; const createConfig = (partial: Partial<HttpConfig>): HttpConfig => partial as HttpConfig; @@ -32,12 +32,14 @@ const forgeRequest = ({ headers = {}, path = '/', method = 'get', + kibanaRouteState, }: Partial<{ headers: Record<string, string>; path: string; method: RouteMethod; + kibanaRouteState: KibanaRouteState; }>): KibanaRequest => { - return httpServerMock.createKibanaRequest({ headers, path, method }); + return httpServerMock.createKibanaRequest({ headers, path, method, kibanaRouteState }); }; describe('xsrf post-auth handler', () => { @@ -142,6 +144,29 @@ describe('xsrf post-auth handler', () => { expect(toolkit.next).toHaveBeenCalledTimes(1); expect(result).toEqual('next'); }); + + it('accepts requests if xsrf protection on a route is disabled', () => { + const config = createConfig({ + xsrf: { whitelist: [], disableProtection: false }, + }); + const handler = createXsrfPostAuthHandler(config); + const request = forgeRequest({ + method: 'post', + headers: {}, + path: '/some-path', + kibanaRouteState: { + xsrfRequired: false, + }, + }); + + toolkit.next.mockReturnValue('next' as any); + + const result = handler(request, responseFactory, toolkit); + + expect(responseFactory.badRequest).not.toHaveBeenCalled(); + expect(toolkit.next).toHaveBeenCalledTimes(1); + expect(result).toEqual('next'); + }); }); }); diff --git a/src/core/server/http/lifecycle_handlers.ts b/src/core/server/http/lifecycle_handlers.ts index ee877ee031a2bb..7ef7e863260391 100644 --- a/src/core/server/http/lifecycle_handlers.ts +++ b/src/core/server/http/lifecycle_handlers.ts @@ -20,6 +20,7 @@ import { OnPostAuthHandler } from './lifecycle/on_post_auth'; import { OnPreResponseHandler } from './lifecycle/on_pre_response'; import { HttpConfig } from './http_config'; +import { isSafeMethod } from './router'; import { Env } from '../config'; import { LifecycleRegistrar } from './http_server'; @@ -31,15 +32,18 @@ export const createXsrfPostAuthHandler = (config: HttpConfig): OnPostAuthHandler const { whitelist, disableProtection } = config.xsrf; return (request, response, toolkit) => { - if (disableProtection || whitelist.includes(request.route.path)) { + if ( + disableProtection || + whitelist.includes(request.route.path) || + request.route.options.xsrfRequired === false + ) { return toolkit.next(); } - const isSafeMethod = request.route.method === 'get' || request.route.method === 'head'; const hasVersionHeader = VERSION_HEADER in request.headers; const hasXsrfHeader = XSRF_HEADER in request.headers; - if (!isSafeMethod && !hasVersionHeader && !hasXsrfHeader) { + if (!isSafeMethod(request.route.method) && !hasVersionHeader && !hasXsrfHeader) { return response.badRequest({ body: `Request must contain a ${XSRF_HEADER} header.` }); } diff --git a/src/core/server/http/router/index.ts b/src/core/server/http/router/index.ts index 32663d1513f36b..d254f391ca5e41 100644 --- a/src/core/server/http/router/index.ts +++ b/src/core/server/http/router/index.ts @@ -24,16 +24,20 @@ export { KibanaRequestEvents, KibanaRequestRoute, KibanaRequestRouteOptions, + KibanaRouteState, isRealRequest, LegacyRequest, ensureRawRequest, } from './request'; export { + DestructiveRouteMethod, + isSafeMethod, RouteMethod, RouteConfig, RouteConfigOptions, RouteContentType, RouteConfigOptionsBody, + SafeRouteMethod, validBodyOutput, } from './route'; export { HapiResponseAdapter } from './response_adapter'; diff --git a/src/core/server/http/router/request.ts b/src/core/server/http/router/request.ts index 703571ba53c0a3..bb2db6367f701f 100644 --- a/src/core/server/http/router/request.ts +++ b/src/core/server/http/router/request.ts @@ -18,18 +18,24 @@ */ import { Url } from 'url'; -import { Request } from 'hapi'; +import { Request, ApplicationState } from 'hapi'; import { Observable, fromEvent, merge } from 'rxjs'; import { shareReplay, first, takeUntil } from 'rxjs/operators'; import { deepFreeze, RecursiveReadonly } from '../../../utils'; import { Headers } from './headers'; -import { RouteMethod, RouteConfigOptions, validBodyOutput } from './route'; +import { RouteMethod, RouteConfigOptions, validBodyOutput, isSafeMethod } from './route'; import { KibanaSocket, IKibanaSocket } from './socket'; import { RouteValidator, RouteValidatorFullConfig } from './validator'; const requestSymbol = Symbol('request'); +/** + * @internal + */ +export interface KibanaRouteState extends ApplicationState { + xsrfRequired: boolean; +} /** * Route options: If 'GET' or 'OPTIONS' method, body options won't be returned. * @public @@ -184,8 +190,10 @@ export class KibanaRequest< const options = ({ authRequired: request.route.settings.auth !== false, + // some places in LP call KibanaRequest.from(request) manually. remove fallback to true before v8 + xsrfRequired: (request.route.settings.app as KibanaRouteState)?.xsrfRequired ?? true, tags: request.route.settings.tags || [], - body: ['get', 'options'].includes(method) + body: isSafeMethod(method) ? undefined : { parse, diff --git a/src/core/server/http/router/route.ts b/src/core/server/http/router/route.ts index 4439a80b1eac71..d1458ef4ad0632 100644 --- a/src/core/server/http/router/route.ts +++ b/src/core/server/http/router/route.ts @@ -19,11 +19,27 @@ import { RouteValidatorFullConfig } from './validator'; +export function isSafeMethod(method: RouteMethod): method is SafeRouteMethod { + return method === 'get' || method === 'options'; +} + +/** + * Set of HTTP methods changing the state of the server. + * @public + */ +export type DestructiveRouteMethod = 'post' | 'put' | 'delete' | 'patch'; + +/** + * Set of HTTP methods not changing the state of the server. + * @public + */ +export type SafeRouteMethod = 'get' | 'options'; + /** * The set of common HTTP methods supported by Kibana routing. * @public */ -export type RouteMethod = 'get' | 'post' | 'put' | 'delete' | 'patch' | 'options'; +export type RouteMethod = SafeRouteMethod | DestructiveRouteMethod; /** * The set of valid body.output @@ -108,6 +124,15 @@ export interface RouteConfigOptions<Method extends RouteMethod> { */ authRequired?: boolean; + /** + * Defines xsrf protection requirements for a route: + * - true. Requires an incoming POST/PUT/DELETE request to contain `kbn-xsrf` header. + * - false. Disables xsrf protection. + * + * Set to true by default + */ + xsrfRequired?: Method extends 'get' ? never : boolean; + /** * Additional metadata tag strings to attach to the route. */ diff --git a/src/core/server/index.ts b/src/core/server/index.ts index de6cdb2d7acd78..0c112e3cfb5b2a 100644 --- a/src/core/server/index.ts +++ b/src/core/server/index.ts @@ -159,6 +159,8 @@ export { SessionStorageCookieOptions, SessionCookieValidationResult, SessionStorageFactory, + DestructiveRouteMethod, + SafeRouteMethod, } from './http'; export { RenderingServiceSetup, IRenderOptions } from './rendering'; export { Logger, LoggerFactory, LogMeta, LogRecord, LogLevel } from './logging'; diff --git a/src/core/server/server.api.md b/src/core/server/server.api.md index 445ed16ec7829b..8c5e84446a0d3c 100644 --- a/src/core/server/server.api.md +++ b/src/core/server/server.api.md @@ -685,6 +685,9 @@ export interface DeprecationSettings { message: string; } +// @public +export type DestructiveRouteMethod = 'post' | 'put' | 'delete' | 'patch'; + // @public export interface DiscoveredPlugin { readonly configPath: ConfigPath; @@ -1459,6 +1462,7 @@ export interface RouteConfigOptions<Method extends RouteMethod> { authRequired?: boolean; body?: Method extends 'get' | 'options' ? undefined : RouteConfigOptionsBody; tags?: readonly string[]; + xsrfRequired?: Method extends 'get' ? never : boolean; } // @public @@ -1473,7 +1477,7 @@ export interface RouteConfigOptionsBody { export type RouteContentType = 'application/json' | 'application/*+json' | 'application/octet-stream' | 'application/x-www-form-urlencoded' | 'multipart/form-data' | 'text/*'; // @public -export type RouteMethod = 'get' | 'post' | 'put' | 'delete' | 'patch' | 'options'; +export type RouteMethod = SafeRouteMethod | DestructiveRouteMethod; // @public export type RouteRegistrar<Method extends RouteMethod> = <P, Q, B>(route: RouteConfig<P, Q, B, Method>, handler: RequestHandler<P, Q, B, Method>) => void; @@ -1526,6 +1530,9 @@ export interface RouteValidatorOptions { }; } +// @public +export type SafeRouteMethod = 'get' | 'options'; + // @public (undocumented) export interface SavedObject<T = unknown> { attributes: T; From 0d0973869d07f7d1e88292dce0c38e4302db9d54 Mon Sep 17 00:00:00 2001 From: Spencer <email@spalger.com> Date: Tue, 3 Mar 2020 08:15:32 -0700 Subject: [PATCH 049/120] =?UTF-8?q?[kbn/optimizer]=20add=20test=20to=20ver?= =?UTF-8?q?ify=20that=20dynamic=20imports=20keep=20w=E2=80=A6=20(#59065)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * [kbn/optimizer] add test to verify that dynamic imports keep working * sort files before adding to cache * oops, committed tmp repo --- .../plugins/foo/public/async_import.ts | 20 +++++++++++++++++++ .../mock_repo/plugins/foo/public/index.ts | 4 ++++ .../basic_optimization.test.ts.snap | 6 ++++-- .../basic_optimization.test.ts | 12 ++++++++--- .../kbn-optimizer/src/worker/run_compilers.ts | 4 ++-- 5 files changed, 39 insertions(+), 7 deletions(-) create mode 100644 packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/foo/public/async_import.ts diff --git a/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/foo/public/async_import.ts b/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/foo/public/async_import.ts new file mode 100644 index 00000000000000..9a51937cbac1e4 --- /dev/null +++ b/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/foo/public/async_import.ts @@ -0,0 +1,20 @@ +/* + * 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. + */ + +export function foo() {} diff --git a/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/foo/public/index.ts b/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/foo/public/index.ts index 9d3871df247397..1ba0b696811525 100644 --- a/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/foo/public/index.ts +++ b/packages/kbn-optimizer/src/__fixtures__/mock_repo/plugins/foo/public/index.ts @@ -19,3 +19,7 @@ export * from './lib'; export * from './ext'; + +export async function getFoo() { + return await import('./async_import'); +} diff --git a/packages/kbn-optimizer/src/integration_tests/__snapshots__/basic_optimization.test.ts.snap b/packages/kbn-optimizer/src/integration_tests/__snapshots__/basic_optimization.test.ts.snap index 1a974d3e81092b..d52d89eebe2f13 100644 --- a/packages/kbn-optimizer/src/integration_tests/__snapshots__/basic_optimization.test.ts.snap +++ b/packages/kbn-optimizer/src/integration_tests/__snapshots__/basic_optimization.test.ts.snap @@ -1,5 +1,7 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP +exports[`builds expected bundles, saves bundle counts to metadata: 1 async bundle 1`] = `"(window[\\"foo_bundle_jsonpfunction\\"]=window[\\"foo_bundle_jsonpfunction\\"]||[]).push([[1],{3:function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});exports.foo=foo;function foo(){}}}]);"`; + exports[`builds expected bundles, saves bundle counts to metadata: OptimizerConfig 1`] = ` OptimizerConfig { "bundles": Array [ @@ -55,6 +57,6 @@ OptimizerConfig { } `; -exports[`builds expected bundles, saves bundle counts to metadata: bar bundle 1`] = `"var __kbnBundles__=typeof __kbnBundles__===\\"object\\"?__kbnBundles__:{};__kbnBundles__[\\"plugin/bar\\"]=function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{enumerable:true,get:getter})}};__webpack_require__.r=function(exports){if(typeof Symbol!==\\"undefined\\"&&Symbol.toStringTag){Object.defineProperty(exports,Symbol.toStringTag,{value:\\"Module\\"})}Object.defineProperty(exports,\\"__esModule\\",{value:true})};__webpack_require__.t=function(value,mode){if(mode&1)value=__webpack_require__(value);if(mode&8)return value;if(mode&4&&typeof value===\\"object\\"&&value&&value.__esModule)return value;var ns=Object.create(null);__webpack_require__.r(ns);Object.defineProperty(ns,\\"default\\",{enumerable:true,value:value});if(mode&2&&typeof value!=\\"string\\")for(var key in value)__webpack_require__.d(ns,key,function(key){return value[key]}.bind(null,key));return ns};__webpack_require__.n=function(module){var getter=module&&module.__esModule?function getDefault(){return module[\\"default\\"]}:function getModuleExports(){return module};__webpack_require__.d(getter,\\"a\\",getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p=\\"__REPLACE_WITH_PUBLIC_PATH__\\";return __webpack_require__(__webpack_require__.s=4)}([function(module,exports,__webpack_require__){\\"use strict\\";var isOldIE=function isOldIE(){var memo;return function memorize(){if(typeof memo===\\"undefined\\"){memo=Boolean(window&&document&&document.all&&!window.atob)}return memo}}();var getTarget=function getTarget(){var memo={};return function memorize(target){if(typeof memo[target]===\\"undefined\\"){var styleTarget=document.querySelector(target);if(window.HTMLIFrameElement&&styleTarget instanceof window.HTMLIFrameElement){try{styleTarget=styleTarget.contentDocument.head}catch(e){styleTarget=null}}memo[target]=styleTarget}return memo[target]}}();var stylesInDom=[];function getIndexByIdentifier(identifier){var result=-1;for(var i=0;i<stylesInDom.length;i++){if(stylesInDom[i].identifier===identifier){result=i;break}}return result}function modulesToDom(list,options){var idCountMap={};var identifiers=[];for(var i=0;i<list.length;i++){var item=list[i];var id=options.base?item[0]+options.base:item[0];var count=idCountMap[id]||0;var identifier=\\"\\".concat(id,\\" \\").concat(count);idCountMap[id]=count+1;var index=getIndexByIdentifier(identifier);var obj={css:item[1],media:item[2],sourceMap:item[3]};if(index!==-1){stylesInDom[index].references++;stylesInDom[index].updater(obj)}else{stylesInDom.push({identifier:identifier,updater:addStyle(obj,options),references:1})}identifiers.push(identifier)}return identifiers}function insertStyleElement(options){var style=document.createElement(\\"style\\");var attributes=options.attributes||{};if(typeof attributes.nonce===\\"undefined\\"){var nonce=true?__webpack_require__.nc:undefined;if(nonce){attributes.nonce=nonce}}Object.keys(attributes).forEach((function(key){style.setAttribute(key,attributes[key])}));if(typeof options.insert===\\"function\\"){options.insert(style)}else{var target=getTarget(options.insert||\\"head\\");if(!target){throw new Error(\\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\\")}target.appendChild(style)}return style}function removeStyleElement(style){if(style.parentNode===null){return false}style.parentNode.removeChild(style)}var replaceText=function replaceText(){var textStore=[];return function replace(index,replacement){textStore[index]=replacement;return textStore.filter(Boolean).join(\\"\\\\n\\")}}();function applyToSingletonTag(style,index,remove,obj){var css=remove?\\"\\":obj.media?\\"@media \\".concat(obj.media,\\" {\\").concat(obj.css,\\"}\\"):obj.css;if(style.styleSheet){style.styleSheet.cssText=replaceText(index,css)}else{var cssNode=document.createTextNode(css);var childNodes=style.childNodes;if(childNodes[index]){style.removeChild(childNodes[index])}if(childNodes.length){style.insertBefore(cssNode,childNodes[index])}else{style.appendChild(cssNode)}}}function applyToTag(style,options,obj){var css=obj.css;var media=obj.media;var sourceMap=obj.sourceMap;if(media){style.setAttribute(\\"media\\",media)}else{style.removeAttribute(\\"media\\")}if(sourceMap&&btoa){css+=\\"\\\\n/*# sourceMappingURL=data:application/json;base64,\\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))),\\" */\\")}if(style.styleSheet){style.styleSheet.cssText=css}else{while(style.firstChild){style.removeChild(style.firstChild)}style.appendChild(document.createTextNode(css))}}var singleton=null;var singletonCounter=0;function addStyle(obj,options){var style;var update;var remove;if(options.singleton){var styleIndex=singletonCounter++;style=singleton||(singleton=insertStyleElement(options));update=applyToSingletonTag.bind(null,style,styleIndex,false);remove=applyToSingletonTag.bind(null,style,styleIndex,true)}else{style=insertStyleElement(options);update=applyToTag.bind(null,style,options);remove=function remove(){removeStyleElement(style)}}update(obj);return function updateStyle(newObj){if(newObj){if(newObj.css===obj.css&&newObj.media===obj.media&&newObj.sourceMap===obj.sourceMap){return}update(obj=newObj)}else{remove()}}}module.exports=function(list,options){options=options||{};if(!options.singleton&&typeof options.singleton!==\\"boolean\\"){options.singleton=isOldIE()}list=list||[];var lastIdentifiers=modulesToDom(list,options);return function update(newList){newList=newList||[];if(Object.prototype.toString.call(newList)!==\\"[object Array]\\"){return}for(var i=0;i<lastIdentifiers.length;i++){var identifier=lastIdentifiers[i];var index=getIndexByIdentifier(identifier);stylesInDom[index].references--}var newLastIdentifiers=modulesToDom(newList,options);for(var _i=0;_i<lastIdentifiers.length;_i++){var _identifier=lastIdentifiers[_i];var _index=getIndexByIdentifier(_identifier);if(stylesInDom[_index].references===0){stylesInDom[_index].updater();stylesInDom.splice(_index,1)}}lastIdentifiers=newLastIdentifiers}}},function(module,exports,__webpack_require__){\\"use strict\\";module.exports=function(useSourceMap){var list=[];list.toString=function toString(){return this.map((function(item){var content=cssWithMappingToString(item,useSourceMap);if(item[2]){return\\"@media \\".concat(item[2],\\" {\\").concat(content,\\"}\\")}return content})).join(\\"\\")};list.i=function(modules,mediaQuery,dedupe){if(typeof modules===\\"string\\"){modules=[[null,modules,\\"\\"]]}var alreadyImportedModules={};if(dedupe){for(var i=0;i<this.length;i++){var id=this[i][0];if(id!=null){alreadyImportedModules[id]=true}}}for(var _i=0;_i<modules.length;_i++){var item=[].concat(modules[_i]);if(dedupe&&alreadyImportedModules[item[0]]){continue}if(mediaQuery){if(!item[2]){item[2]=mediaQuery}else{item[2]=\\"\\".concat(mediaQuery,\\" and \\").concat(item[2])}}list.push(item)}};return list};function cssWithMappingToString(item,useSourceMap){var content=item[1]||\\"\\";var cssMapping=item[3];if(!cssMapping){return content}if(useSourceMap&&typeof btoa===\\"function\\"){var sourceMapping=toComment(cssMapping);var sourceURLs=cssMapping.sources.map((function(source){return\\"/*# sourceURL=\\".concat(cssMapping.sourceRoot||\\"\\").concat(source,\\" */\\")}));return[content].concat(sourceURLs).concat([sourceMapping]).join(\\"\\\\n\\")}return[content].join(\\"\\\\n\\")}function toComment(sourceMap){var base64=btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));var data=\\"sourceMappingURL=data:application/json;charset=utf-8;base64,\\".concat(base64);return\\"/*# \\".concat(data,\\" */\\")}},function(module,exports,__webpack_require__){\\"use strict\\";module.exports=function(url,options){if(!options){options={}}url=url&&url.__esModule?url.default:url;if(typeof url!==\\"string\\"){return url}if(/^['\\"].*['\\"]$/.test(url)){url=url.slice(1,-1)}if(options.hash){url+=options.hash}if(/[\\"'() \\\\t\\\\n]/.test(url)||options.needQuotes){return'\\"'.concat(url.replace(/\\"/g,'\\\\\\\\\\"').replace(/\\\\n/g,\\"\\\\\\\\n\\"),'\\"')}return url}},function(module,exports){module.exports=\\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiB2ZXJzaW9uPSIxLjEiPjxjaXJjbGUgY3g9IjUwIiBjeT0iNTAiIHI9IjI1Ii8+PC9zdmc+\\"},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});var _exportNames={fooLibFn:true};Object.defineProperty(exports,\\"fooLibFn\\",{enumerable:true,get:function get(){return _index.fooLibFn}});__webpack_require__(5);var _index=__webpack_require__(10);var _lib=__webpack_require__(13);Object.keys(_lib).forEach((function(key){if(key===\\"default\\"||key===\\"__esModule\\")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _lib[key]}})}))},function(module,exports,__webpack_require__){if(window.__kbnDarkMode__){__webpack_require__(6)}else{__webpack_require__(8)}},function(module,exports,__webpack_require__){var api=__webpack_require__(0);var content=__webpack_require__(7);content=content.__esModule?content.default:content;if(typeof content===\\"string\\"){content=[[module.i,content,\\"\\"]]}var options={};options.insert=\\"head\\";options.singleton=false;var update=api(content,options);var exported=content.locals?content.locals:{};module.exports=exported},function(module,exports,__webpack_require__){var ___CSS_LOADER_API_IMPORT___=__webpack_require__(1);var ___CSS_LOADER_GET_URL_IMPORT___=__webpack_require__(2);var ___CSS_LOADER_URL_IMPORT_0___=__webpack_require__(3);exports=___CSS_LOADER_API_IMPORT___(false);var ___CSS_LOADER_URL_REPLACEMENT_0___=___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);exports.push([module.i,\\"body {\\\\n width: 10;\\\\n background-image: url(\\"+___CSS_LOADER_URL_REPLACEMENT_0___+\\"); }\\\\n\\",\\"\\"]);module.exports=exports},function(module,exports,__webpack_require__){var api=__webpack_require__(0);var content=__webpack_require__(9);content=content.__esModule?content.default:content;if(typeof content===\\"string\\"){content=[[module.i,content,\\"\\"]]}var options={};options.insert=\\"head\\";options.singleton=false;var update=api(content,options);var exported=content.locals?content.locals:{};module.exports=exported},function(module,exports,__webpack_require__){var ___CSS_LOADER_API_IMPORT___=__webpack_require__(1);var ___CSS_LOADER_GET_URL_IMPORT___=__webpack_require__(2);var ___CSS_LOADER_URL_IMPORT_0___=__webpack_require__(3);exports=___CSS_LOADER_API_IMPORT___(false);var ___CSS_LOADER_URL_REPLACEMENT_0___=___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);exports.push([module.i,\\"body {\\\\n width: 10;\\\\n background-image: url(\\"+___CSS_LOADER_URL_REPLACEMENT_0___+\\"); }\\\\n\\",\\"\\"]);module.exports=exports},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});var _lib=__webpack_require__(11);Object.keys(_lib).forEach((function(key){if(key===\\"default\\"||key===\\"__esModule\\")return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _lib[key]}})}));var _ext=__webpack_require__(12);Object.keys(_ext).forEach((function(key){if(key===\\"default\\"||key===\\"__esModule\\")return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _ext[key]}})}))},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});exports.fooLibFn=fooLibFn;function fooLibFn(){return\\"foo\\"}},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});exports.ext=void 0;var ext=\\"TRUE\\";exports.ext=ext},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});exports.barLibFn=barLibFn;function barLibFn(){return\\"bar\\"}}])[\\"plugin\\"];"`; +exports[`builds expected bundles, saves bundle counts to metadata: bar bundle 1`] = `"var __kbnBundles__=typeof __kbnBundles__===\\"object\\"?__kbnBundles__:{};__kbnBundles__[\\"plugin/bar\\"]=function(modules){function webpackJsonpCallback(data){var chunkIds=data[0];var moreModules=data[1];var moduleId,chunkId,i=0,resolves=[];for(;i<chunkIds.length;i++){chunkId=chunkIds[i];if(Object.prototype.hasOwnProperty.call(installedChunks,chunkId)&&installedChunks[chunkId]){resolves.push(installedChunks[chunkId][0])}installedChunks[chunkId]=0}for(moduleId in moreModules){if(Object.prototype.hasOwnProperty.call(moreModules,moduleId)){modules[moduleId]=moreModules[moduleId]}}if(parentJsonpFunction)parentJsonpFunction(data);while(resolves.length){resolves.shift()()}}var installedModules={};var installedChunks={0:0};function jsonpScriptSrc(chunkId){return __webpack_require__.p+\\"\\"+({}[chunkId]||chunkId)+\\".plugin.js\\"}function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.e=function requireEnsure(chunkId){var promises=[];var installedChunkData=installedChunks[chunkId];if(installedChunkData!==0){if(installedChunkData){promises.push(installedChunkData[2])}else{var promise=new Promise((function(resolve,reject){installedChunkData=installedChunks[chunkId]=[resolve,reject]}));promises.push(installedChunkData[2]=promise);var script=document.createElement(\\"script\\");var onScriptComplete;script.charset=\\"utf-8\\";script.timeout=120;if(__webpack_require__.nc){script.setAttribute(\\"nonce\\",__webpack_require__.nc)}script.src=jsonpScriptSrc(chunkId);var error=new Error;onScriptComplete=function(event){script.onerror=script.onload=null;clearTimeout(timeout);var chunk=installedChunks[chunkId];if(chunk!==0){if(chunk){var errorType=event&&(event.type===\\"load\\"?\\"missing\\":event.type);var realSrc=event&&event.target&&event.target.src;error.message=\\"Loading chunk \\"+chunkId+\\" failed.\\\\n(\\"+errorType+\\": \\"+realSrc+\\")\\";error.name=\\"ChunkLoadError\\";error.type=errorType;error.request=realSrc;chunk[1](error)}installedChunks[chunkId]=undefined}};var timeout=setTimeout((function(){onScriptComplete({type:\\"timeout\\",target:script})}),12e4);script.onerror=script.onload=onScriptComplete;document.head.appendChild(script)}}return Promise.all(promises)};__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{enumerable:true,get:getter})}};__webpack_require__.r=function(exports){if(typeof Symbol!==\\"undefined\\"&&Symbol.toStringTag){Object.defineProperty(exports,Symbol.toStringTag,{value:\\"Module\\"})}Object.defineProperty(exports,\\"__esModule\\",{value:true})};__webpack_require__.t=function(value,mode){if(mode&1)value=__webpack_require__(value);if(mode&8)return value;if(mode&4&&typeof value===\\"object\\"&&value&&value.__esModule)return value;var ns=Object.create(null);__webpack_require__.r(ns);Object.defineProperty(ns,\\"default\\",{enumerable:true,value:value});if(mode&2&&typeof value!=\\"string\\")for(var key in value)__webpack_require__.d(ns,key,function(key){return value[key]}.bind(null,key));return ns};__webpack_require__.n=function(module){var getter=module&&module.__esModule?function getDefault(){return module[\\"default\\"]}:function getModuleExports(){return module};__webpack_require__.d(getter,\\"a\\",getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p=\\"__REPLACE_WITH_PUBLIC_PATH__\\";__webpack_require__.oe=function(err){console.error(err);throw err};var jsonpArray=window[\\"bar_bundle_jsonpfunction\\"]=window[\\"bar_bundle_jsonpfunction\\"]||[];var oldJsonpFunction=jsonpArray.push.bind(jsonpArray);jsonpArray.push=webpackJsonpCallback;jsonpArray=jsonpArray.slice();for(var i=0;i<jsonpArray.length;i++)webpackJsonpCallback(jsonpArray[i]);var parentJsonpFunction=oldJsonpFunction;return __webpack_require__(__webpack_require__.s=4)}([function(module,exports,__webpack_require__){\\"use strict\\";var isOldIE=function isOldIE(){var memo;return function memorize(){if(typeof memo===\\"undefined\\"){memo=Boolean(window&&document&&document.all&&!window.atob)}return memo}}();var getTarget=function getTarget(){var memo={};return function memorize(target){if(typeof memo[target]===\\"undefined\\"){var styleTarget=document.querySelector(target);if(window.HTMLIFrameElement&&styleTarget instanceof window.HTMLIFrameElement){try{styleTarget=styleTarget.contentDocument.head}catch(e){styleTarget=null}}memo[target]=styleTarget}return memo[target]}}();var stylesInDom=[];function getIndexByIdentifier(identifier){var result=-1;for(var i=0;i<stylesInDom.length;i++){if(stylesInDom[i].identifier===identifier){result=i;break}}return result}function modulesToDom(list,options){var idCountMap={};var identifiers=[];for(var i=0;i<list.length;i++){var item=list[i];var id=options.base?item[0]+options.base:item[0];var count=idCountMap[id]||0;var identifier=\\"\\".concat(id,\\" \\").concat(count);idCountMap[id]=count+1;var index=getIndexByIdentifier(identifier);var obj={css:item[1],media:item[2],sourceMap:item[3]};if(index!==-1){stylesInDom[index].references++;stylesInDom[index].updater(obj)}else{stylesInDom.push({identifier:identifier,updater:addStyle(obj,options),references:1})}identifiers.push(identifier)}return identifiers}function insertStyleElement(options){var style=document.createElement(\\"style\\");var attributes=options.attributes||{};if(typeof attributes.nonce===\\"undefined\\"){var nonce=true?__webpack_require__.nc:undefined;if(nonce){attributes.nonce=nonce}}Object.keys(attributes).forEach((function(key){style.setAttribute(key,attributes[key])}));if(typeof options.insert===\\"function\\"){options.insert(style)}else{var target=getTarget(options.insert||\\"head\\");if(!target){throw new Error(\\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\\")}target.appendChild(style)}return style}function removeStyleElement(style){if(style.parentNode===null){return false}style.parentNode.removeChild(style)}var replaceText=function replaceText(){var textStore=[];return function replace(index,replacement){textStore[index]=replacement;return textStore.filter(Boolean).join(\\"\\\\n\\")}}();function applyToSingletonTag(style,index,remove,obj){var css=remove?\\"\\":obj.media?\\"@media \\".concat(obj.media,\\" {\\").concat(obj.css,\\"}\\"):obj.css;if(style.styleSheet){style.styleSheet.cssText=replaceText(index,css)}else{var cssNode=document.createTextNode(css);var childNodes=style.childNodes;if(childNodes[index]){style.removeChild(childNodes[index])}if(childNodes.length){style.insertBefore(cssNode,childNodes[index])}else{style.appendChild(cssNode)}}}function applyToTag(style,options,obj){var css=obj.css;var media=obj.media;var sourceMap=obj.sourceMap;if(media){style.setAttribute(\\"media\\",media)}else{style.removeAttribute(\\"media\\")}if(sourceMap&&btoa){css+=\\"\\\\n/*# sourceMappingURL=data:application/json;base64,\\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))),\\" */\\")}if(style.styleSheet){style.styleSheet.cssText=css}else{while(style.firstChild){style.removeChild(style.firstChild)}style.appendChild(document.createTextNode(css))}}var singleton=null;var singletonCounter=0;function addStyle(obj,options){var style;var update;var remove;if(options.singleton){var styleIndex=singletonCounter++;style=singleton||(singleton=insertStyleElement(options));update=applyToSingletonTag.bind(null,style,styleIndex,false);remove=applyToSingletonTag.bind(null,style,styleIndex,true)}else{style=insertStyleElement(options);update=applyToTag.bind(null,style,options);remove=function remove(){removeStyleElement(style)}}update(obj);return function updateStyle(newObj){if(newObj){if(newObj.css===obj.css&&newObj.media===obj.media&&newObj.sourceMap===obj.sourceMap){return}update(obj=newObj)}else{remove()}}}module.exports=function(list,options){options=options||{};if(!options.singleton&&typeof options.singleton!==\\"boolean\\"){options.singleton=isOldIE()}list=list||[];var lastIdentifiers=modulesToDom(list,options);return function update(newList){newList=newList||[];if(Object.prototype.toString.call(newList)!==\\"[object Array]\\"){return}for(var i=0;i<lastIdentifiers.length;i++){var identifier=lastIdentifiers[i];var index=getIndexByIdentifier(identifier);stylesInDom[index].references--}var newLastIdentifiers=modulesToDom(newList,options);for(var _i=0;_i<lastIdentifiers.length;_i++){var _identifier=lastIdentifiers[_i];var _index=getIndexByIdentifier(_identifier);if(stylesInDom[_index].references===0){stylesInDom[_index].updater();stylesInDom.splice(_index,1)}}lastIdentifiers=newLastIdentifiers}}},function(module,exports,__webpack_require__){\\"use strict\\";module.exports=function(useSourceMap){var list=[];list.toString=function toString(){return this.map((function(item){var content=cssWithMappingToString(item,useSourceMap);if(item[2]){return\\"@media \\".concat(item[2],\\" {\\").concat(content,\\"}\\")}return content})).join(\\"\\")};list.i=function(modules,mediaQuery,dedupe){if(typeof modules===\\"string\\"){modules=[[null,modules,\\"\\"]]}var alreadyImportedModules={};if(dedupe){for(var i=0;i<this.length;i++){var id=this[i][0];if(id!=null){alreadyImportedModules[id]=true}}}for(var _i=0;_i<modules.length;_i++){var item=[].concat(modules[_i]);if(dedupe&&alreadyImportedModules[item[0]]){continue}if(mediaQuery){if(!item[2]){item[2]=mediaQuery}else{item[2]=\\"\\".concat(mediaQuery,\\" and \\").concat(item[2])}}list.push(item)}};return list};function cssWithMappingToString(item,useSourceMap){var content=item[1]||\\"\\";var cssMapping=item[3];if(!cssMapping){return content}if(useSourceMap&&typeof btoa===\\"function\\"){var sourceMapping=toComment(cssMapping);var sourceURLs=cssMapping.sources.map((function(source){return\\"/*# sourceURL=\\".concat(cssMapping.sourceRoot||\\"\\").concat(source,\\" */\\")}));return[content].concat(sourceURLs).concat([sourceMapping]).join(\\"\\\\n\\")}return[content].join(\\"\\\\n\\")}function toComment(sourceMap){var base64=btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));var data=\\"sourceMappingURL=data:application/json;charset=utf-8;base64,\\".concat(base64);return\\"/*# \\".concat(data,\\" */\\")}},function(module,exports,__webpack_require__){\\"use strict\\";module.exports=function(url,options){if(!options){options={}}url=url&&url.__esModule?url.default:url;if(typeof url!==\\"string\\"){return url}if(/^['\\"].*['\\"]$/.test(url)){url=url.slice(1,-1)}if(options.hash){url+=options.hash}if(/[\\"'() \\\\t\\\\n]/.test(url)||options.needQuotes){return'\\"'.concat(url.replace(/\\"/g,'\\\\\\\\\\"').replace(/\\\\n/g,\\"\\\\\\\\n\\"),'\\"')}return url}},function(module,exports){module.exports=\\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiB2ZXJzaW9uPSIxLjEiPjxjaXJjbGUgY3g9IjUwIiBjeT0iNTAiIHI9IjI1Ii8+PC9zdmc+\\"},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});var _exportNames={fooLibFn:true};Object.defineProperty(exports,\\"fooLibFn\\",{enumerable:true,get:function get(){return _index.fooLibFn}});__webpack_require__(5);var _index=__webpack_require__(10);var _lib=__webpack_require__(13);Object.keys(_lib).forEach((function(key){if(key===\\"default\\"||key===\\"__esModule\\")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _lib[key]}})}))},function(module,exports,__webpack_require__){if(window.__kbnDarkMode__){__webpack_require__(6)}else{__webpack_require__(8)}},function(module,exports,__webpack_require__){var api=__webpack_require__(0);var content=__webpack_require__(7);content=content.__esModule?content.default:content;if(typeof content===\\"string\\"){content=[[module.i,content,\\"\\"]]}var options={};options.insert=\\"head\\";options.singleton=false;var update=api(content,options);var exported=content.locals?content.locals:{};module.exports=exported},function(module,exports,__webpack_require__){var ___CSS_LOADER_API_IMPORT___=__webpack_require__(1);var ___CSS_LOADER_GET_URL_IMPORT___=__webpack_require__(2);var ___CSS_LOADER_URL_IMPORT_0___=__webpack_require__(3);exports=___CSS_LOADER_API_IMPORT___(false);var ___CSS_LOADER_URL_REPLACEMENT_0___=___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);exports.push([module.i,\\"body {\\\\n width: 10;\\\\n background-image: url(\\"+___CSS_LOADER_URL_REPLACEMENT_0___+\\"); }\\\\n\\",\\"\\"]);module.exports=exports},function(module,exports,__webpack_require__){var api=__webpack_require__(0);var content=__webpack_require__(9);content=content.__esModule?content.default:content;if(typeof content===\\"string\\"){content=[[module.i,content,\\"\\"]]}var options={};options.insert=\\"head\\";options.singleton=false;var update=api(content,options);var exported=content.locals?content.locals:{};module.exports=exported},function(module,exports,__webpack_require__){var ___CSS_LOADER_API_IMPORT___=__webpack_require__(1);var ___CSS_LOADER_GET_URL_IMPORT___=__webpack_require__(2);var ___CSS_LOADER_URL_IMPORT_0___=__webpack_require__(3);exports=___CSS_LOADER_API_IMPORT___(false);var ___CSS_LOADER_URL_REPLACEMENT_0___=___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);exports.push([module.i,\\"body {\\\\n width: 10;\\\\n background-image: url(\\"+___CSS_LOADER_URL_REPLACEMENT_0___+\\"); }\\\\n\\",\\"\\"]);module.exports=exports},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});var _exportNames={getFoo:true};exports.getFoo=getFoo;var _lib=__webpack_require__(11);Object.keys(_lib).forEach((function(key){if(key===\\"default\\"||key===\\"__esModule\\")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _lib[key]}})}));var _ext=__webpack_require__(12);Object.keys(_ext).forEach((function(key){if(key===\\"default\\"||key===\\"__esModule\\")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _ext[key]}})}));function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value}catch(error){reject(error);return}if(info.done){resolve(value)}else{Promise.resolve(value).then(_next,_throw)}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise((function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,\\"next\\",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,\\"throw\\",err)}_next(undefined)}))}}function getFoo(){return _getFoo.apply(this,arguments)}function _getFoo(){_getFoo=_asyncToGenerator(regeneratorRuntime.mark((function _callee(){return regeneratorRuntime.wrap((function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:_context.next=2;return __webpack_require__.e(1).then(__webpack_require__.t.bind(null,14,7));case 2:return _context.abrupt(\\"return\\",_context.sent);case 3:case\\"end\\":return _context.stop()}}}),_callee)})));return _getFoo.apply(this,arguments)}},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});exports.fooLibFn=fooLibFn;function fooLibFn(){return\\"foo\\"}},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});exports.ext=void 0;var ext=\\"TRUE\\";exports.ext=ext},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});exports.barLibFn=barLibFn;function barLibFn(){return\\"bar\\"}}])[\\"plugin\\"];"`; -exports[`builds expected bundles, saves bundle counts to metadata: foo bundle 1`] = `"var __kbnBundles__=typeof __kbnBundles__===\\"object\\"?__kbnBundles__:{};__kbnBundles__[\\"plugin/foo\\"]=function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{enumerable:true,get:getter})}};__webpack_require__.r=function(exports){if(typeof Symbol!==\\"undefined\\"&&Symbol.toStringTag){Object.defineProperty(exports,Symbol.toStringTag,{value:\\"Module\\"})}Object.defineProperty(exports,\\"__esModule\\",{value:true})};__webpack_require__.t=function(value,mode){if(mode&1)value=__webpack_require__(value);if(mode&8)return value;if(mode&4&&typeof value===\\"object\\"&&value&&value.__esModule)return value;var ns=Object.create(null);__webpack_require__.r(ns);Object.defineProperty(ns,\\"default\\",{enumerable:true,value:value});if(mode&2&&typeof value!=\\"string\\")for(var key in value)__webpack_require__.d(ns,key,function(key){return value[key]}.bind(null,key));return ns};__webpack_require__.n=function(module){var getter=module&&module.__esModule?function getDefault(){return module[\\"default\\"]}:function getModuleExports(){return module};__webpack_require__.d(getter,\\"a\\",getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p=\\"__REPLACE_WITH_PUBLIC_PATH__\\";return __webpack_require__(__webpack_require__.s=0)}([function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});var _lib=__webpack_require__(1);Object.keys(_lib).forEach((function(key){if(key===\\"default\\"||key===\\"__esModule\\")return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _lib[key]}})}));var _ext=__webpack_require__(2);Object.keys(_ext).forEach((function(key){if(key===\\"default\\"||key===\\"__esModule\\")return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _ext[key]}})}))},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});exports.fooLibFn=fooLibFn;function fooLibFn(){return\\"foo\\"}},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});exports.ext=void 0;var ext=\\"TRUE\\";exports.ext=ext}])[\\"plugin\\"];"`; +exports[`builds expected bundles, saves bundle counts to metadata: foo bundle 1`] = `"var __kbnBundles__=typeof __kbnBundles__===\\"object\\"?__kbnBundles__:{};__kbnBundles__[\\"plugin/foo\\"]=function(modules){function webpackJsonpCallback(data){var chunkIds=data[0];var moreModules=data[1];var moduleId,chunkId,i=0,resolves=[];for(;i<chunkIds.length;i++){chunkId=chunkIds[i];if(Object.prototype.hasOwnProperty.call(installedChunks,chunkId)&&installedChunks[chunkId]){resolves.push(installedChunks[chunkId][0])}installedChunks[chunkId]=0}for(moduleId in moreModules){if(Object.prototype.hasOwnProperty.call(moreModules,moduleId)){modules[moduleId]=moreModules[moduleId]}}if(parentJsonpFunction)parentJsonpFunction(data);while(resolves.length){resolves.shift()()}}var installedModules={};var installedChunks={0:0};function jsonpScriptSrc(chunkId){return __webpack_require__.p+\\"\\"+({}[chunkId]||chunkId)+\\".plugin.js\\"}function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.e=function requireEnsure(chunkId){var promises=[];var installedChunkData=installedChunks[chunkId];if(installedChunkData!==0){if(installedChunkData){promises.push(installedChunkData[2])}else{var promise=new Promise((function(resolve,reject){installedChunkData=installedChunks[chunkId]=[resolve,reject]}));promises.push(installedChunkData[2]=promise);var script=document.createElement(\\"script\\");var onScriptComplete;script.charset=\\"utf-8\\";script.timeout=120;if(__webpack_require__.nc){script.setAttribute(\\"nonce\\",__webpack_require__.nc)}script.src=jsonpScriptSrc(chunkId);var error=new Error;onScriptComplete=function(event){script.onerror=script.onload=null;clearTimeout(timeout);var chunk=installedChunks[chunkId];if(chunk!==0){if(chunk){var errorType=event&&(event.type===\\"load\\"?\\"missing\\":event.type);var realSrc=event&&event.target&&event.target.src;error.message=\\"Loading chunk \\"+chunkId+\\" failed.\\\\n(\\"+errorType+\\": \\"+realSrc+\\")\\";error.name=\\"ChunkLoadError\\";error.type=errorType;error.request=realSrc;chunk[1](error)}installedChunks[chunkId]=undefined}};var timeout=setTimeout((function(){onScriptComplete({type:\\"timeout\\",target:script})}),12e4);script.onerror=script.onload=onScriptComplete;document.head.appendChild(script)}}return Promise.all(promises)};__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{enumerable:true,get:getter})}};__webpack_require__.r=function(exports){if(typeof Symbol!==\\"undefined\\"&&Symbol.toStringTag){Object.defineProperty(exports,Symbol.toStringTag,{value:\\"Module\\"})}Object.defineProperty(exports,\\"__esModule\\",{value:true})};__webpack_require__.t=function(value,mode){if(mode&1)value=__webpack_require__(value);if(mode&8)return value;if(mode&4&&typeof value===\\"object\\"&&value&&value.__esModule)return value;var ns=Object.create(null);__webpack_require__.r(ns);Object.defineProperty(ns,\\"default\\",{enumerable:true,value:value});if(mode&2&&typeof value!=\\"string\\")for(var key in value)__webpack_require__.d(ns,key,function(key){return value[key]}.bind(null,key));return ns};__webpack_require__.n=function(module){var getter=module&&module.__esModule?function getDefault(){return module[\\"default\\"]}:function getModuleExports(){return module};__webpack_require__.d(getter,\\"a\\",getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p=\\"__REPLACE_WITH_PUBLIC_PATH__\\";__webpack_require__.oe=function(err){console.error(err);throw err};var jsonpArray=window[\\"foo_bundle_jsonpfunction\\"]=window[\\"foo_bundle_jsonpfunction\\"]||[];var oldJsonpFunction=jsonpArray.push.bind(jsonpArray);jsonpArray.push=webpackJsonpCallback;jsonpArray=jsonpArray.slice();for(var i=0;i<jsonpArray.length;i++)webpackJsonpCallback(jsonpArray[i]);var parentJsonpFunction=oldJsonpFunction;return __webpack_require__(__webpack_require__.s=0)}([function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});var _exportNames={getFoo:true};exports.getFoo=getFoo;var _lib=__webpack_require__(1);Object.keys(_lib).forEach((function(key){if(key===\\"default\\"||key===\\"__esModule\\")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _lib[key]}})}));var _ext=__webpack_require__(2);Object.keys(_ext).forEach((function(key){if(key===\\"default\\"||key===\\"__esModule\\")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _ext[key]}})}));function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value}catch(error){reject(error);return}if(info.done){resolve(value)}else{Promise.resolve(value).then(_next,_throw)}}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise((function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,\\"next\\",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,\\"throw\\",err)}_next(undefined)}))}}function getFoo(){return _getFoo.apply(this,arguments)}function _getFoo(){_getFoo=_asyncToGenerator(regeneratorRuntime.mark((function _callee(){return regeneratorRuntime.wrap((function _callee$(_context){while(1){switch(_context.prev=_context.next){case 0:_context.next=2;return __webpack_require__.e(1).then(__webpack_require__.t.bind(null,3,7));case 2:return _context.abrupt(\\"return\\",_context.sent);case 3:case\\"end\\":return _context.stop()}}}),_callee)})));return _getFoo.apply(this,arguments)}},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});exports.fooLibFn=fooLibFn;function fooLibFn(){return\\"foo\\"}},function(module,exports,__webpack_require__){\\"use strict\\";Object.defineProperty(exports,\\"__esModule\\",{value:true});exports.ext=void 0;var ext=\\"TRUE\\";exports.ext=ext}])[\\"plugin\\"];"`; diff --git a/packages/kbn-optimizer/src/integration_tests/basic_optimization.test.ts b/packages/kbn-optimizer/src/integration_tests/basic_optimization.test.ts index afdf1553216e37..ad743933e11711 100644 --- a/packages/kbn-optimizer/src/integration_tests/basic_optimization.test.ts +++ b/packages/kbn-optimizer/src/integration_tests/basic_optimization.test.ts @@ -128,6 +128,10 @@ it('builds expected bundles, saves bundle counts to metadata', async () => { Fs.readFileSync(Path.resolve(MOCK_REPO_DIR, 'plugins/foo/target/public/foo.plugin.js'), 'utf8') ).toMatchSnapshot('foo bundle'); + expect( + Fs.readFileSync(Path.resolve(MOCK_REPO_DIR, 'plugins/foo/target/public/1.plugin.js'), 'utf8') + ).toMatchSnapshot('1 async bundle'); + expect( Fs.readFileSync(Path.resolve(MOCK_REPO_DIR, 'plugins/bar/target/public/bar.plugin.js'), 'utf8') ).toMatchSnapshot('bar bundle'); @@ -135,9 +139,10 @@ it('builds expected bundles, saves bundle counts to metadata', async () => { const foo = config.bundles.find(b => b.id === 'foo')!; expect(foo).toBeTruthy(); foo.cache.refresh(); - expect(foo.cache.getModuleCount()).toBe(3); + expect(foo.cache.getModuleCount()).toBe(4); expect(foo.cache.getReferencedFiles()).toMatchInlineSnapshot(` Array [ + <absolute path>/packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/async_import.ts, <absolute path>/packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/ext.ts, <absolute path>/packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/index.ts, <absolute path>/packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/lib.ts, @@ -148,8 +153,8 @@ it('builds expected bundles, saves bundle counts to metadata', async () => { expect(bar).toBeTruthy(); bar.cache.refresh(); expect(bar.cache.getModuleCount()).toBe( - // code + styles + style/css-loader runtime - 14 + // code + styles + style/css-loader runtimes + 15 ); expect(bar.cache.getReferencedFiles()).toMatchInlineSnapshot(` @@ -159,6 +164,7 @@ it('builds expected bundles, saves bundle counts to metadata', async () => { <absolute path>/packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/bar/public/index.ts, <absolute path>/packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/bar/public/legacy/styles.scss, <absolute path>/packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/bar/public/lib.ts, + <absolute path>/packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/async_import.ts, <absolute path>/packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/ext.ts, <absolute path>/packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/index.ts, <absolute path>/packages/kbn-optimizer/src/__fixtures__/__tmp__/mock_repo/plugins/foo/public/lib.ts, diff --git a/packages/kbn-optimizer/src/worker/run_compilers.ts b/packages/kbn-optimizer/src/worker/run_compilers.ts index 7a8097fd2b2c79..e87ddc7d0185cf 100644 --- a/packages/kbn-optimizer/src/worker/run_compilers.ts +++ b/packages/kbn-optimizer/src/worker/run_compilers.ts @@ -127,7 +127,7 @@ const observeCompiler = ( ); } - const files = Array.from(referencedFiles); + const files = Array.from(referencedFiles).sort(ascending(p => p)); const mtimes = new Map( files.map((path): [string, number | undefined] => { try { @@ -146,7 +146,7 @@ const observeCompiler = ( optimizerCacheKey: workerConfig.optimizerCacheKey, cacheKey: bundle.createCacheKey(files, mtimes), moduleCount: normalModules.length, - files: files.sort(ascending(f => f)), + files, }); return compilerMsgs.compilerSuccess({ From 6cacfd0c1505a8107c24d6c222b67b724ab6ff25 Mon Sep 17 00:00:00 2001 From: Spencer <email@spalger.com> Date: Tue, 3 Mar 2020 08:58:50 -0700 Subject: [PATCH 050/120] =?UTF-8?q?[failed-test-report]=20if=20one=20test?= =?UTF-8?q?=20fails=20twice=20don't=20create=20two=E2=80=A6=20(#58778)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * [failed-test-report] if one test fails twice don't create two issues * fix type check error Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../src/failed_tests_reporter/github_api.ts | 15 +++++++++-- .../report_failure.test.ts | 2 -- .../failed_tests_reporter/report_failure.ts | 4 +-- .../run_failed_tests_reporter_cli.ts | 26 +++++++++++++++---- 4 files changed, 36 insertions(+), 11 deletions(-) diff --git a/packages/kbn-test/src/failed_tests_reporter/github_api.ts b/packages/kbn-test/src/failed_tests_reporter/github_api.ts index d8a952bee42e59..7da79b5b67e63f 100644 --- a/packages/kbn-test/src/failed_tests_reporter/github_api.ts +++ b/packages/kbn-test/src/failed_tests_reporter/github_api.ts @@ -33,6 +33,15 @@ export interface GithubIssue { body: string; } +/** + * Minimal GithubIssue type that can be easily replicated by dry-run helpers + */ +export interface GithubIssueMini { + number: GithubIssue['number']; + body: GithubIssue['body']; + html_url: GithubIssue['html_url']; +} + type RequestOptions = AxiosRequestConfig & { safeForDryRun?: boolean; maxAttempts?: number; @@ -162,7 +171,7 @@ export class GithubApi { } async createIssue(title: string, body: string, labels?: string[]) { - const resp = await this.request( + const resp = await this.request<GithubIssueMini>( { method: 'POST', url: Url.resolve(BASE_URL, 'issues'), @@ -173,11 +182,13 @@ export class GithubApi { }, }, { + body, + number: 999, html_url: 'https://dryrun', } ); - return resp.data.html_url; + return resp.data; } private async request<T>( diff --git a/packages/kbn-test/src/failed_tests_reporter/report_failure.test.ts b/packages/kbn-test/src/failed_tests_reporter/report_failure.test.ts index ef6ab3c51ab194..5bbc72fe04e86e 100644 --- a/packages/kbn-test/src/failed_tests_reporter/report_failure.test.ts +++ b/packages/kbn-test/src/failed_tests_reporter/report_failure.test.ts @@ -78,9 +78,7 @@ describe('updateFailureIssue()', () => { 'https://build-url', { html_url: 'https://github.com/issues/1234', - labels: ['some-label'], number: 1234, - title: 'issue title', body: dedent` # existing issue body diff --git a/packages/kbn-test/src/failed_tests_reporter/report_failure.ts b/packages/kbn-test/src/failed_tests_reporter/report_failure.ts index 97e9d517576fc6..1413d054984594 100644 --- a/packages/kbn-test/src/failed_tests_reporter/report_failure.ts +++ b/packages/kbn-test/src/failed_tests_reporter/report_failure.ts @@ -18,7 +18,7 @@ */ import { TestFailure } from './get_failures'; -import { GithubIssue, GithubApi } from './github_api'; +import { GithubIssueMini, GithubApi } from './github_api'; import { getIssueMetadata, updateIssueMetadata } from './issue_metadata'; export async function createFailureIssue(buildUrl: string, failure: TestFailure, api: GithubApi) { @@ -44,7 +44,7 @@ export async function createFailureIssue(buildUrl: string, failure: TestFailure, return await api.createIssue(title, body, ['failed-test']); } -export async function updateFailureIssue(buildUrl: string, issue: GithubIssue, api: GithubApi) { +export async function updateFailureIssue(buildUrl: string, issue: GithubIssueMini, api: GithubApi) { // Increment failCount const newCount = getIssueMetadata(issue.body, 'test.failCount', 0) + 1; const newBody = updateIssueMetadata(issue.body, { diff --git a/packages/kbn-test/src/failed_tests_reporter/run_failed_tests_reporter_cli.ts b/packages/kbn-test/src/failed_tests_reporter/run_failed_tests_reporter_cli.ts index fc52fa6cbf9e7d..9324f9eb42aa5f 100644 --- a/packages/kbn-test/src/failed_tests_reporter/run_failed_tests_reporter_cli.ts +++ b/packages/kbn-test/src/failed_tests_reporter/run_failed_tests_reporter_cli.ts @@ -20,8 +20,8 @@ import { REPO_ROOT, run, createFailError, createFlagError } from '@kbn/dev-utils'; import globby from 'globby'; -import { getFailures } from './get_failures'; -import { GithubApi } from './github_api'; +import { getFailures, TestFailure } from './get_failures'; +import { GithubApi, GithubIssueMini } from './github_api'; import { updateFailureIssue, createFailureIssue } from './report_failure'; import { getIssueMetadata } from './issue_metadata'; import { readTestReport } from './test_report'; @@ -73,6 +73,11 @@ export function runFailedTestsReporterCli() { absolute: true, }); + const newlyCreatedIssues: Array<{ + failure: TestFailure; + newIssue: GithubIssueMini; + }> = []; + for (const reportPath of reportPaths) { const report = await readTestReport(reportPath); const messages = Array.from(getReportMessageIter(report)); @@ -94,12 +99,22 @@ export function runFailedTestsReporterCli() { continue; } - const existingIssue = await githubApi.findFailedTestIssue( + let existingIssue: GithubIssueMini | undefined = await githubApi.findFailedTestIssue( i => getIssueMetadata(i.body, 'test.class') === failure.classname && getIssueMetadata(i.body, 'test.name') === failure.name ); + if (!existingIssue) { + const newlyCreated = newlyCreatedIssues.find( + ({ failure: f }) => f.classname === failure.classname && f.name === failure.name + ); + + if (newlyCreated) { + existingIssue = newlyCreated.newIssue; + } + } + if (existingIssue) { const newFailureCount = await updateFailureIssue(buildUrl, existingIssue, githubApi); const url = existingIssue.html_url; @@ -110,11 +125,12 @@ export function runFailedTestsReporterCli() { continue; } - const newIssueUrl = await createFailureIssue(buildUrl, failure, githubApi); + const newIssue = await createFailureIssue(buildUrl, failure, githubApi); pushMessage('Test has not failed recently on tracked branches'); if (updateGithub) { - pushMessage(`Created new issue: ${newIssueUrl}`); + pushMessage(`Created new issue: ${newIssue.html_url}`); } + newlyCreatedIssues.push({ failure, newIssue }); } // mutates report to include messages and writes updated report to disk From 417f7966938b6a4d1a7401a9ed055432618b9c91 Mon Sep 17 00:00:00 2001 From: Justin Juno <50022106+justinjunodev@users.noreply.github.com> Date: Tue, 3 Mar 2020 10:25:59 -0600 Subject: [PATCH 051/120] [Rollups] Fix broken link in Rollup Jobs (#58802) (#58929) --- .../rollup/public/crud_app/services/documentation_links.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/x-pack/legacy/plugins/rollup/public/crud_app/services/documentation_links.js b/x-pack/legacy/plugins/rollup/public/crud_app/services/documentation_links.js index ce42b26cc3e862..bc9cb15e1c5e00 100644 --- a/x-pack/legacy/plugins/rollup/public/crud_app/services/documentation_links.js +++ b/x-pack/legacy/plugins/rollup/public/crud_app/services/documentation_links.js @@ -5,11 +5,9 @@ */ let esBase = ''; -let xPackBase = ''; export function setEsBaseAndXPackBase(elasticWebsiteUrl, docLinksVersion) { esBase = `${elasticWebsiteUrl}guide/en/elasticsearch/reference/${docLinksVersion}`; - xPackBase = `${elasticWebsiteUrl}guide/en/x-pack/${docLinksVersion}`; } export const getLogisticalDetailsUrl = () => `${esBase}/rollup-job-config.html#_logistical_details`; @@ -21,4 +19,4 @@ export const getMetricsDetailsUrl = () => `${esBase}/rollup-job-config.html#roll export const getDateHistogramAggregationUrl = () => `${esBase}/search-aggregations-bucket-datehistogram-aggregation.html`; -export const getCronUrl = () => `${xPackBase}/trigger-schedule.html#_cron_expressions`; +export const getCronUrl = () => `${esBase}/trigger-schedule.html#_cron_expressions`; From 63cb9ff7be925d9f140c096c90e1eabe9cca9d75 Mon Sep 17 00:00:00 2001 From: Walter Rafelsberger <walter@elastic.co> Date: Tue, 3 Mar 2020 17:43:38 +0100 Subject: [PATCH 052/120] [ML] Use EuiDataGrid for transform wizard. (#52510) Replaces the custom EuiInMemoryTable component with EuiDataGrid for the transforms wizard. --- .../transform/public/app/common/data_grid.ts | 23 + .../transform/public/app/common/fields.ts | 32 +- .../transform/public/app/common/index.ts | 2 +- .../source_index_preview.tsx | 435 ++++++------------ .../use_source_index_data.test.tsx | 3 +- .../use_source_index_data.ts | 81 +--- .../step_create/step_create_form.tsx | 54 ++- .../components/step_define/common.test.ts | 56 ++- .../components/step_define/common.ts | 49 +- .../components/step_define/pivot_preview.tsx | 234 +++++----- .../step_define/step_define_form.tsx | 16 +- .../components/wizard/_wizard.scss | 22 +- .../translations/translations/ja-JP.json | 9 - .../translations/translations/zh-CN.json | 9 - .../apps/transform/creation_index_pattern.ts | 2 +- .../apps/transform/creation_saved_search.ts | 2 +- .../services/transform_ui/wizard.ts | 68 +-- 17 files changed, 515 insertions(+), 582 deletions(-) create mode 100644 x-pack/legacy/plugins/transform/public/app/common/data_grid.ts diff --git a/x-pack/legacy/plugins/transform/public/app/common/data_grid.ts b/x-pack/legacy/plugins/transform/public/app/common/data_grid.ts new file mode 100644 index 00000000000000..0783839afee837 --- /dev/null +++ b/x-pack/legacy/plugins/transform/public/app/common/data_grid.ts @@ -0,0 +1,23 @@ +/* + * 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 { EuiDataGridStyle } from '@elastic/eui'; + +export const euiDataGridStyle: EuiDataGridStyle = { + border: 'all', + fontSize: 's', + cellPadding: 's', + stripes: false, + rowHover: 'highlight', + header: 'shade', +}; + +export const euiDataGridToolbarSettings = { + showColumnSelector: true, + showStyleSelector: false, + showSortSelector: true, + showFullScreenSelector: false, +}; diff --git a/x-pack/legacy/plugins/transform/public/app/common/fields.ts b/x-pack/legacy/plugins/transform/public/app/common/fields.ts index f2181654286db5..108f45ce67e37c 100644 --- a/x-pack/legacy/plugins/transform/public/app/common/fields.ts +++ b/x-pack/legacy/plugins/transform/public/app/common/fields.ts @@ -15,8 +15,6 @@ export interface EsDoc extends Dictionary<any> { _source: EsDocSource; } -export const MAX_COLUMNS = 5; - export function getFlattenedFields(obj: EsDocSource): EsFieldName[] { const flatDocFields: EsFieldName[] = []; const newDocFields = Object.keys(obj); @@ -33,35 +31,33 @@ export function getFlattenedFields(obj: EsDocSource): EsFieldName[] { return flatDocFields; } -export const getSelectableFields = (docs: EsDoc[]): EsFieldName[] => { +export const getSelectableFields = (docs: EsDocSource[]): EsFieldName[] => { if (docs.length === 0) { return []; } - const newDocFields = getFlattenedFields(docs[0]._source); + const newDocFields = getFlattenedFields(docs[0]); newDocFields.sort(); return newDocFields; }; -export const getDefaultSelectableFields = (docs: EsDoc[]): EsFieldName[] => { +export const getDefaultSelectableFields = (docs: EsDocSource[]): EsFieldName[] => { if (docs.length === 0) { return []; } - const newDocFields = getFlattenedFields(docs[0]._source); + const newDocFields = getFlattenedFields(docs[0]); newDocFields.sort(); - return newDocFields - .filter(k => { - let value = false; - docs.forEach(row => { - const source = row._source; - if (source[k] !== null) { - value = true; - } - }); - return value; - }) - .slice(0, MAX_COLUMNS); + return newDocFields.filter(k => { + let value = false; + docs.forEach(row => { + const source = row; + if (source[k] !== null) { + value = true; + } + }); + return value; + }); }; export const toggleSelectedField = ( diff --git a/x-pack/legacy/plugins/transform/public/app/common/index.ts b/x-pack/legacy/plugins/transform/public/app/common/index.ts index 3f515db389b452..52a6884367bc5f 100644 --- a/x-pack/legacy/plugins/transform/public/app/common/index.ts +++ b/x-pack/legacy/plugins/transform/public/app/common/index.ts @@ -5,6 +5,7 @@ */ export { AggName, isAggName } from './aggregations'; +export { euiDataGridStyle, euiDataGridToolbarSettings } from './data_grid'; export { getDefaultSelectableFields, getFlattenedFields, @@ -13,7 +14,6 @@ export { EsDoc, EsDocSource, EsFieldName, - MAX_COLUMNS, } from './fields'; export { DropDownLabel, DropDownOption, Label } from './dropdown'; export { diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.tsx index 2b7d36cada3c6f..0c9dcfb9b1c04d 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.tsx @@ -4,60 +4,36 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { useState } from 'react'; -import moment from 'moment-timezone'; +import React, { useCallback, useEffect, useMemo, useState } from 'react'; import { i18n } from '@kbn/i18n'; import { - EuiBadge, - EuiButtonEmpty, EuiButtonIcon, EuiCallOut, - EuiCheckbox, EuiCodeBlock, EuiCopy, + EuiDataGrid, EuiFlexGroup, EuiFlexItem, - EuiPanel, - EuiPopover, - EuiPopoverTitle, EuiProgress, - EuiText, EuiTitle, - EuiToolTip, - RIGHT_ALIGNMENT, } from '@elastic/eui'; -import { - ColumnType, - mlInMemoryTableBasicFactory, - SortingPropType, - SORT_DIRECTION, -} from '../../../../../shared_imports'; - -import { KBN_FIELD_TYPES } from '../../../../../../../../../../src/plugins/data/public'; -import { Dictionary } from '../../../../../../common/types/common'; -import { formatHumanReadableDateTimeSeconds } from '../../../../../../common/utils/date_utils'; +import { getNestedProperty } from '../../../../../../common/utils/object_utils'; import { useCurrentIndexPattern } from '../../../../lib/kibana'; import { - toggleSelectedField, - EsDoc, + euiDataGridStyle, + euiDataGridToolbarSettings, EsFieldName, - MAX_COLUMNS, PivotQuery, } from '../../../../common'; import { getSourceIndexDevConsoleStatement } from './common'; -import { ExpandedRow } from './expanded_row'; import { SOURCE_INDEX_STATUS, useSourceIndexData } from './use_source_index_data'; -type ItemIdToExpandedRowMap = Dictionary<JSX.Element>; - -const CELL_CLICK_ENABLED = false; - interface SourceIndexPreviewTitle { indexPatternTitle: string; } @@ -74,67 +50,112 @@ const SourceIndexPreviewTitle: React.FC<SourceIndexPreviewTitle> = ({ indexPatte interface Props { query: PivotQuery; - cellClick?(search: string): void; } -export const SourceIndexPreview: React.FC<Props> = React.memo(({ cellClick, query }) => { - const [clearTable, setClearTable] = useState(false); +const defaultPagination = { pageIndex: 0, pageSize: 5 }; +export const SourceIndexPreview: React.FC<Props> = React.memo(({ query }) => { const indexPattern = useCurrentIndexPattern(); + const allFields = indexPattern.fields.map(f => f.name); + const indexPatternFields: string[] = allFields.filter(f => { + if (indexPattern.metaFields.includes(f)) { + return false; + } - const [selectedFields, setSelectedFields] = useState([] as EsFieldName[]); - const [isColumnsPopoverVisible, setColumnsPopoverVisible] = useState(false); - - // EuiInMemoryTable has an issue with dynamic sortable columns - // and will trigger a full page Kibana error in such a case. - // The following is a workaround until this is solved upstream: - // - If the sortable/columns config changes, - // the table will be unmounted/not rendered. - // This is what setClearTable(true) in toggleColumn() does. - // - After that on next render it gets re-enabled. To make sure React - // doesn't consolidate the state updates, setTimeout is used. - if (clearTable) { - setTimeout(() => setClearTable(false), 0); - } + const fieldParts = f.split('.'); + const lastPart = fieldParts.pop(); + if (lastPart === 'keyword' && allFields.includes(fieldParts.join('.'))) { + return false; + } - function toggleColumnsPopover() { - setColumnsPopoverVisible(!isColumnsPopoverVisible); - } + return true; + }); - function closeColumnsPopover() { - setColumnsPopoverVisible(false); - } + // Column visibility + const [visibleColumns, setVisibleColumns] = useState<EsFieldName[]>(indexPatternFields); - function toggleColumn(column: EsFieldName) { - // spread to a new array otherwise the component wouldn't re-render - setClearTable(true); - setSelectedFields([...toggleSelectedField(selectedFields, column)]); - } + const [pagination, setPagination] = useState(defaultPagination); + + useEffect(() => { + setPagination(defaultPagination); + }, [query]); - const [itemIdToExpandedRowMap, setItemIdToExpandedRowMap] = useState( - {} as ItemIdToExpandedRowMap + const { errorMessage, status, rowCount, tableItems: data } = useSourceIndexData( + indexPattern, + query, + pagination ); - function toggleDetails(item: EsDoc) { - if (itemIdToExpandedRowMap[item._id]) { - delete itemIdToExpandedRowMap[item._id]; - } else { - itemIdToExpandedRowMap[item._id] = <ExpandedRow item={item} />; + // EuiDataGrid State + const dataGridColumns = indexPatternFields.map(id => { + const field = indexPattern.fields.getByName(id); + + let schema = 'string'; + + switch (field?.type) { + case 'date': + schema = 'datetime'; + break; + case 'geo_point': + schema = 'json'; + break; + case 'number': + schema = 'numeric'; + break; } - // spread to a new object otherwise the component wouldn't re-render - setItemIdToExpandedRowMap({ ...itemIdToExpandedRowMap }); - } - const { errorMessage, status, tableItems } = useSourceIndexData( - indexPattern, - query, - selectedFields, - setSelectedFields + return { id, schema }; + }); + + const onChangeItemsPerPage = useCallback( + pageSize => { + setPagination(p => { + const pageIndex = Math.floor((p.pageSize * p.pageIndex) / pageSize); + return { pageIndex, pageSize }; + }); + }, + [setPagination] ); + const onChangePage = useCallback(pageIndex => setPagination(p => ({ ...p, pageIndex })), [ + setPagination, + ]); + + // ** Sorting config + const [sortingColumns, setSortingColumns] = useState([]); + const onSort = useCallback(sc => setSortingColumns(sc), [setSortingColumns]); + + const renderCellValue = useMemo(() => { + return ({ + rowIndex, + columnId, + setCellProps, + }: { + rowIndex: number; + columnId: string; + setCellProps: any; + }) => { + const adjustedRowIndex = rowIndex - pagination.pageIndex * pagination.pageSize; + + const cellValue = data.hasOwnProperty(adjustedRowIndex) + ? getNestedProperty(data[adjustedRowIndex], columnId, null) + : null; + + if (typeof cellValue === 'object' && cellValue !== null) { + return JSON.stringify(cellValue); + } + + if (cellValue === undefined) { + return null; + } + + return cellValue; + }; + }, [data, pagination.pageIndex, pagination.pageSize]); + if (status === SOURCE_INDEX_STATUS.ERROR) { return ( - <EuiPanel grow={false} data-test-subj="transformSourceIndexPreview error"> + <div data-test-subj="transformSourceIndexPreview error"> <SourceIndexPreviewTitle indexPatternTitle={indexPattern.title} /> <EuiCallOut title={i18n.translate('xpack.transform.sourceIndexPreview.sourceIndexPatternError', { @@ -147,13 +168,13 @@ export const SourceIndexPreview: React.FC<Props> = React.memo(({ cellClick, quer {errorMessage} </EuiCodeBlock> </EuiCallOut> - </EuiPanel> + </div> ); } - if (status === SOURCE_INDEX_STATUS.LOADED && tableItems.length === 0) { + if (status === SOURCE_INDEX_STATUS.LOADED && data.length === 0) { return ( - <EuiPanel grow={false} data-test-subj="transformSourceIndexPreview empty"> + <div data-test-subj="transformSourceIndexPreview empty"> <SourceIndexPreviewTitle indexPatternTitle={indexPattern.title} /> <EuiCallOut title={i18n.translate( @@ -171,253 +192,55 @@ export const SourceIndexPreview: React.FC<Props> = React.memo(({ cellClick, quer })} </p> </EuiCallOut> - </EuiPanel> + </div> ); } - let docFields: EsFieldName[] = []; - let docFieldsCount = 0; - if (tableItems.length > 0) { - docFields = Object.keys(tableItems[0]._source); - docFields.sort(); - docFieldsCount = docFields.length; - } - - const columns: Array<ColumnType<EsDoc>> = selectedFields.map(k => { - const column: ColumnType<EsDoc> = { - field: `_source["${k}"]`, - name: k, - sortable: true, - truncateText: true, - }; - - const field = indexPattern.fields.find(f => f.name === k); - - const formatField = (d: string) => { - return field !== undefined && field.type === KBN_FIELD_TYPES.DATE - ? formatHumanReadableDateTimeSeconds(moment(d).unix() * 1000) - : d; - }; - - const render = (d: any) => { - if (Array.isArray(d) && d.every(item => typeof item === 'string')) { - // If the cells data is an array of strings, return as a comma separated list. - // The list will get limited to 5 items with `…` at the end if there's more in the original array. - return `${d - .map(item => formatField(item)) - .slice(0, 5) - .join(', ')}${d.length > 5 ? ', …' : ''}`; - } else if (Array.isArray(d)) { - // If the cells data is an array of e.g. objects, display a 'array' badge with a - // tooltip that explains that this type of field is not supported in this table. - return ( - <EuiToolTip - content={i18n.translate( - 'xpack.transform.sourceIndexPreview.SourceIndexArrayToolTipContent', - { - defaultMessage: - 'The full content of this array based column is available in the expanded row.', - } - )} - > - <EuiBadge> - {i18n.translate('xpack.transform.sourceIndexPreview.SourceIndexArrayBadgeContent', { - defaultMessage: 'array', - })} - </EuiBadge> - </EuiToolTip> - ); - } else if (typeof d === 'object' && d !== null) { - // If the cells data is an object, display a 'object' badge with a - // tooltip that explains that this type of field is not supported in this table. - return ( - <EuiToolTip - content={i18n.translate( - 'xpack.transform.sourceIndexPreview.SourceIndexObjectToolTipContent', - { - defaultMessage: - 'The full content of this object based column is available in the expanded row.', - } - )} - > - <EuiBadge> - {i18n.translate('xpack.transform.sourceIndexPreview.SourceIndexObjectBadgeContent', { - defaultMessage: 'object', - })} - </EuiBadge> - </EuiToolTip> - ); - } - - return formatField(d); - }; - - if (typeof field !== 'undefined') { - switch (field.type) { - case KBN_FIELD_TYPES.BOOLEAN: - column.dataType = 'boolean'; - break; - case KBN_FIELD_TYPES.DATE: - column.align = 'right'; - column.render = (d: any) => formatHumanReadableDateTimeSeconds(moment(d).unix() * 1000); - break; - case KBN_FIELD_TYPES.NUMBER: - column.dataType = 'number'; - break; - default: - column.render = render; - break; - } - } else { - column.render = render; - } - - if (CELL_CLICK_ENABLED && cellClick) { - column.render = (d: string) => ( - <EuiButtonEmpty size="xs" onClick={() => cellClick(`${k}:(${d})`)}> - {render(d)} - </EuiButtonEmpty> - ); - } - - return column; - }); - - let sorting: SortingPropType = false; - - if (columns.length > 0) { - sorting = { - sort: { - field: `_source["${selectedFields[0]}"]`, - direction: SORT_DIRECTION.ASC, - }, - }; - } - - columns.unshift({ - align: RIGHT_ALIGNMENT, - width: '40px', - isExpander: true, - render: (item: EsDoc) => ( - <EuiButtonIcon - onClick={() => toggleDetails(item)} - aria-label={ - itemIdToExpandedRowMap[item._id] - ? i18n.translate('xpack.transform.sourceIndexPreview.rowCollapse', { - defaultMessage: 'Collapse', - }) - : i18n.translate('xpack.transform.sourceIndexPreview.rowExpand', { - defaultMessage: 'Expand', - }) - } - iconType={itemIdToExpandedRowMap[item._id] ? 'arrowUp' : 'arrowDown'} - /> - ), - }); - const euiCopyText = i18n.translate('xpack.transform.sourceIndexPreview.copyClipboardTooltip', { defaultMessage: 'Copy Dev Console statement of the source index preview to the clipboard.', }); - const MlInMemoryTableBasic = mlInMemoryTableBasicFactory<EsDoc>(); - return ( - <EuiPanel grow={false} data-test-subj="transformSourceIndexPreview loaded"> + <div data-test-subj="transformSourceIndexPreview loaded"> <EuiFlexGroup alignItems="center" justifyContent="spaceBetween"> - <EuiFlexItem grow={false}> + <EuiFlexItem> <SourceIndexPreviewTitle indexPatternTitle={indexPattern.title} /> </EuiFlexItem> - <EuiFlexItem> - <EuiFlexGroup alignItems="center" gutterSize="xs"> - <EuiFlexItem style={{ textAlign: 'right' }}> - {docFieldsCount > MAX_COLUMNS && ( - <EuiText size="s"> - {i18n.translate('xpack.transform.sourceIndexPreview.fieldSelection', { - defaultMessage: - '{selectedFieldsLength, number} of {docFieldsCount, number} {docFieldsCount, plural, one {field} other {fields}} selected', - values: { selectedFieldsLength: selectedFields.length, docFieldsCount }, - })} - </EuiText> - )} - </EuiFlexItem> - <EuiFlexItem grow={false}> - <EuiText size="s"> - <EuiPopover - id="popover" - button={ - <EuiButtonIcon - iconType="gear" - onClick={toggleColumnsPopover} - aria-label={i18n.translate( - 'xpack.transform.sourceIndexPreview.selectColumnsAriaLabel', - { - defaultMessage: 'Select columns', - } - )} - /> - } - isOpen={isColumnsPopoverVisible} - closePopover={closeColumnsPopover} - ownFocus - > - <EuiPopoverTitle> - {i18n.translate('xpack.transform.sourceIndexPreview.selectFieldsPopoverTitle', { - defaultMessage: 'Select fields', - })} - </EuiPopoverTitle> - <div style={{ maxHeight: '400px', overflowY: 'scroll' }}> - {docFields.map(d => ( - <EuiCheckbox - key={d} - id={d} - label={d} - checked={selectedFields.includes(d)} - onChange={() => toggleColumn(d)} - disabled={selectedFields.includes(d) && selectedFields.length === 1} - /> - ))} - </div> - </EuiPopover> - </EuiText> - </EuiFlexItem> - <EuiFlexItem grow={false}> - <EuiCopy - beforeMessage={euiCopyText} - textToCopy={getSourceIndexDevConsoleStatement(query, indexPattern.title)} - > - {(copy: () => void) => ( - <EuiButtonIcon onClick={copy} iconType="copyClipboard" aria-label={euiCopyText} /> - )} - </EuiCopy> - </EuiFlexItem> - </EuiFlexGroup> + <EuiFlexItem grow={false}> + <EuiCopy + beforeMessage={euiCopyText} + textToCopy={getSourceIndexDevConsoleStatement(query, indexPattern.title)} + > + {(copy: () => void) => ( + <EuiButtonIcon onClick={copy} iconType="copyClipboard" aria-label={euiCopyText} /> + )} + </EuiCopy> </EuiFlexItem> </EuiFlexGroup> - {status === SOURCE_INDEX_STATUS.LOADING && <EuiProgress size="xs" color="accent" />} - {status !== SOURCE_INDEX_STATUS.LOADING && ( - <EuiProgress size="xs" color="accent" max={1} value={0} /> - )} - {clearTable === false && columns.length > 0 && sorting !== false && ( - <MlInMemoryTableBasic - allowNeutralSort={false} - compressed - items={tableItems} - columns={columns} + <div className="transform__progress"> + {status === SOURCE_INDEX_STATUS.LOADING && <EuiProgress size="xs" color="accent" />} + {status !== SOURCE_INDEX_STATUS.LOADING && ( + <EuiProgress size="xs" color="accent" max={1} value={0} /> + )} + </div> + {dataGridColumns.length > 0 && data.length > 0 && ( + <EuiDataGrid + aria-label="Source index preview" + columns={dataGridColumns} + columnVisibility={{ visibleColumns, setVisibleColumns }} + gridStyle={euiDataGridStyle} + rowCount={rowCount} + renderCellValue={renderCellValue} + sorting={{ columns: sortingColumns, onSort }} + toolbarVisibility={euiDataGridToolbarSettings} pagination={{ - initialPageSize: 5, + ...pagination, pageSizeOptions: [5, 10, 25], + onChangeItemsPerPage, + onChangePage, }} - hasActions={false} - isSelectable={false} - itemId="_id" - itemIdToExpandedRowMap={itemIdToExpandedRowMap} - isExpandable={true} - rowProps={item => ({ - 'data-test-subj': `transformSourceIndexPreviewRow row-${item._id}`, - })} - sorting={sorting} /> )} - </EuiPanel> + </div> ); }); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/use_source_index_data.test.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/use_source_index_data.test.tsx index fb0a71baea3214..715573e3a6f67d 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/use_source_index_data.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/use_source_index_data.test.tsx @@ -51,8 +51,7 @@ describe('useSourceIndexData', () => { sourceIndexObj = useSourceIndexData( { id: 'the-id', title: 'the-title', fields: [] }, query, - [], - () => {} + { pageIndex: 0, pageSize: 10 } ); }); }); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/use_source_index_data.ts b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/use_source_index_data.ts index e5c6783db10228..ae5bd9040bacaa 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/use_source_index_data.ts +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/use_source_index_data.ts @@ -4,27 +4,15 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { useEffect, useState } from 'react'; +import { useEffect, useState } from 'react'; import { SearchResponse } from 'elasticsearch'; import { IIndexPattern } from 'src/plugins/data/public'; import { useApi } from '../../../../hooks/use_api'; -import { getNestedProperty } from '../../../../../../common/utils/object_utils'; -import { - getDefaultSelectableFields, - getFlattenedFields, - isDefaultQuery, - matchAllQuery, - EsDoc, - EsDocSource, - EsFieldName, - PivotQuery, -} from '../../../../common'; - -const SEARCH_SIZE = 1000; +import { isDefaultQuery, matchAllQuery, EsDocSource, PivotQuery } from '../../../../common'; export enum SOURCE_INDEX_STATUS { UNUSED, @@ -48,23 +36,34 @@ const isErrorResponse = (arg: any): arg is ErrorResponse => { return arg.error !== undefined; }; -type SourceIndexSearchResponse = ErrorResponse | SearchResponse<any>; +// The types specified in `@types/elasticsearch` are out of date and still have `total: number`. +interface SearchResponse7 extends SearchResponse<any> { + hits: SearchResponse<any>['hits'] & { + total: { + value: number; + relation: string; + }; + }; +} + +type SourceIndexSearchResponse = ErrorResponse | SearchResponse7; export interface UseSourceIndexDataReturnType { errorMessage: string; status: SOURCE_INDEX_STATUS; - tableItems: EsDoc[]; + rowCount: number; + tableItems: EsDocSource[]; } export const useSourceIndexData = ( indexPattern: IIndexPattern, query: PivotQuery, - selectedFields: EsFieldName[], - setSelectedFields: React.Dispatch<React.SetStateAction<EsFieldName[]>> + pagination: { pageIndex: number; pageSize: number } ): UseSourceIndexDataReturnType => { const [errorMessage, setErrorMessage] = useState(''); const [status, setStatus] = useState(SOURCE_INDEX_STATUS.UNUSED); - const [tableItems, setTableItems] = useState<EsDoc[]>([]); + const [rowCount, setRowCount] = useState(0); + const [tableItems, setTableItems] = useState<EsDocSource[]>([]); const api = useApi(); const getSourceIndexData = async function() { @@ -74,7 +73,8 @@ export const useSourceIndexData = ( try { const resp: SourceIndexSearchResponse = await api.esSearch({ index: indexPattern.title, - size: SEARCH_SIZE, + from: pagination.pageIndex * pagination.pageSize, + size: pagination.pageSize, // Instead of using the default query (`*`), fall back to a more efficient `match_all` query. body: { query: isDefaultQuery(query) ? matchAllQuery : query }, }); @@ -83,41 +83,10 @@ export const useSourceIndexData = ( throw resp.error; } - const docs = resp.hits.hits; - - if (docs.length === 0) { - setTableItems([]); - setStatus(SOURCE_INDEX_STATUS.LOADED); - return; - } - - if (selectedFields.length === 0) { - const newSelectedFields = getDefaultSelectableFields(docs); - setSelectedFields(newSelectedFields); - } - - // Create a version of the doc's source with flattened field names. - // This avoids confusion later on if a field name has dots in its name - // or is a nested fields when displaying it via EuiInMemoryTable. - const flattenedFields = getFlattenedFields(docs[0]._source); - const transformedTableItems = docs.map(doc => { - const item: EsDocSource = {}; - flattenedFields.forEach(ff => { - item[ff] = getNestedProperty(doc._source, ff); - if (item[ff] === undefined) { - // If the attribute is undefined, it means it was not a nested property - // but had dots in its actual name. This selects the property by its - // full name and assigns it to `item[ff]`. - item[ff] = doc._source[`"${ff}"`]; - } - }); - return { - ...doc, - _source: item, - }; - }); + const docs = resp.hits.hits.map(d => d._source); - setTableItems(transformedTableItems); + setRowCount(resp.hits.total.value); + setTableItems(docs); setStatus(SOURCE_INDEX_STATUS.LOADED); } catch (e) { if (e.message !== undefined) { @@ -134,6 +103,6 @@ export const useSourceIndexData = ( getSourceIndexData(); // custom comparison // eslint-disable-next-line react-hooks/exhaustive-deps - }, [indexPattern.title, JSON.stringify(query)]); - return { errorMessage, status, tableItems }; + }, [indexPattern.title, JSON.stringify(query), JSON.stringify(pagination)]); + return { errorMessage, status, rowCount, tableItems }; }; diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.tsx index 312d8a30dab779..bbeb97b6b81134 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.tsx @@ -67,6 +67,7 @@ export const StepCreateForm: FC<Props> = React.memo( const [redirectToTransformManagement, setRedirectToTransformManagement] = useState(false); + const [loading, setLoading] = useState(false); const [created, setCreated] = useState(defaults.created); const [started, setStarted] = useState(defaults.started); const [indexPatternId, setIndexPatternId] = useState(defaults.indexPatternId); @@ -87,7 +88,7 @@ export const StepCreateForm: FC<Props> = React.memo( const api = useApi(); async function createTransform() { - setCreated(true); + setLoading(true); try { const resp = await api.createTransform(transformId, transformConfig); @@ -107,8 +108,9 @@ export const StepCreateForm: FC<Props> = React.memo( values: { transformId }, }) ); + setCreated(true); + setLoading(false); } catch (e) { - setCreated(false); toastNotifications.addDanger({ title: i18n.translate('xpack.transform.stepCreateForm.createTransformErrorMessage', { defaultMessage: 'An error occurred creating the transform {transformId}:', @@ -116,6 +118,8 @@ export const StepCreateForm: FC<Props> = React.memo( }), text: toMountPoint(<ToastNotificationText text={e} />), }); + setCreated(false); + setLoading(false); return false; } @@ -127,18 +131,27 @@ export const StepCreateForm: FC<Props> = React.memo( } async function startTransform() { - setStarted(true); + setLoading(true); try { - await api.startTransforms([{ id: transformId }]); - toastNotifications.addSuccess( - i18n.translate('xpack.transform.stepCreateForm.startTransformSuccessMessage', { - defaultMessage: 'Request to start transform {transformId} acknowledged.', - values: { transformId }, - }) - ); + const resp = await api.startTransforms([{ id: transformId }]); + if (typeof resp === 'object' && resp !== null && resp[transformId]?.success === true) { + toastNotifications.addSuccess( + i18n.translate('xpack.transform.stepCreateForm.startTransformSuccessMessage', { + defaultMessage: 'Request to start transform {transformId} acknowledged.', + values: { transformId }, + }) + ); + setStarted(true); + setLoading(false); + } else { + const errorMessage = + typeof resp === 'object' && resp !== null && resp[transformId]?.success === false + ? resp[transformId].error + : resp; + throw new Error(errorMessage); + } } catch (e) { - setStarted(false); toastNotifications.addDanger({ title: i18n.translate('xpack.transform.stepCreateForm.startTransformErrorMessage', { defaultMessage: 'An error occurred starting the transform {transformId}:', @@ -146,6 +159,8 @@ export const StepCreateForm: FC<Props> = React.memo( }), text: toMountPoint(<ToastNotificationText text={e} />), }); + setStarted(false); + setLoading(false); } } @@ -157,6 +172,7 @@ export const StepCreateForm: FC<Props> = React.memo( } const createKibanaIndexPattern = async () => { + setLoading(true); const indexPatternName = transformConfig.dest.index; try { @@ -178,6 +194,7 @@ export const StepCreateForm: FC<Props> = React.memo( values: { indexPatternName }, }) ); + setLoading(false); return; } @@ -195,6 +212,7 @@ export const StepCreateForm: FC<Props> = React.memo( ); setIndexPatternId(id); + setLoading(false); return true; } catch (e) { toastNotifications.addDanger({ @@ -205,13 +223,19 @@ export const StepCreateForm: FC<Props> = React.memo( }), text: toMountPoint(<ToastNotificationText text={e} />), }); + setLoading(false); return false; } }; const isBatchTransform = typeof transformConfig.sync === 'undefined'; - if (started === true && progressPercentComplete === undefined && isBatchTransform) { + if ( + loading === false && + started === true && + progressPercentComplete === undefined && + isBatchTransform + ) { // wrapping in function so we can keep the interval id in local scope function startProgressBar() { const interval = setInterval(async () => { @@ -266,7 +290,7 @@ export const StepCreateForm: FC<Props> = React.memo( <EuiFlexItem grow={false} style={FLEX_ITEM_STYLE}> <EuiButton fill - isDisabled={created && started} + isDisabled={loading || (created && started)} onClick={createAndStartTransform} data-test-subj="transformWizardCreateAndStartButton" > @@ -293,7 +317,7 @@ export const StepCreateForm: FC<Props> = React.memo( <EuiFlexItem grow={false} style={FLEX_ITEM_STYLE}> <EuiButton fill - isDisabled={created && started} + isDisabled={loading || (created && started)} onClick={startTransform} data-test-subj="transformWizardStartButton" > @@ -315,7 +339,7 @@ export const StepCreateForm: FC<Props> = React.memo( <EuiFlexGroup alignItems="center" style={FLEX_GROUP_STYLE}> <EuiFlexItem grow={false} style={FLEX_ITEM_STYLE}> <EuiButton - isDisabled={created} + isDisabled={loading || created} onClick={createTransform} data-test-subj="transformWizardCreateButton" > diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/common.test.ts b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/common.test.ts index 78ad217a69e3d6..88e009c63339aa 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/common.test.ts +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/common.test.ts @@ -4,6 +4,8 @@ * you may not use this file except in compliance with the Elastic License. */ +import { EuiDataGridSorting } from '@elastic/eui'; + import { getPreviewRequestBody, PivotAggsConfig, @@ -13,10 +15,62 @@ import { SimpleQuery, } from '../../../../common'; -import { getPivotPreviewDevConsoleStatement, getPivotDropdownOptions } from './common'; +import { + multiColumnSortFactory, + getPivotPreviewDevConsoleStatement, + getPivotDropdownOptions, +} from './common'; import { IndexPattern } from '../../../../../../../../../../src/plugins/data/public'; describe('Transform: Define Pivot Common', () => { + test('customSortFactory()', () => { + const data = [ + { s: 'a', n: 1 }, + { s: 'a', n: 2 }, + { s: 'b', n: 3 }, + { s: 'b', n: 4 }, + ]; + + const sortingColumns1: EuiDataGridSorting['columns'] = [{ id: 's', direction: 'desc' }]; + const multiColumnSort1 = multiColumnSortFactory(sortingColumns1); + data.sort(multiColumnSort1); + + expect(data).toStrictEqual([ + { s: 'b', n: 3 }, + { s: 'b', n: 4 }, + { s: 'a', n: 1 }, + { s: 'a', n: 2 }, + ]); + + const sortingColumns2: EuiDataGridSorting['columns'] = [ + { id: 's', direction: 'asc' }, + { id: 'n', direction: 'desc' }, + ]; + const multiColumnSort2 = multiColumnSortFactory(sortingColumns2); + data.sort(multiColumnSort2); + + expect(data).toStrictEqual([ + { s: 'a', n: 2 }, + { s: 'a', n: 1 }, + { s: 'b', n: 4 }, + { s: 'b', n: 3 }, + ]); + + const sortingColumns3: EuiDataGridSorting['columns'] = [ + { id: 'n', direction: 'desc' }, + { id: 's', direction: 'desc' }, + ]; + const multiColumnSort3 = multiColumnSortFactory(sortingColumns3); + data.sort(multiColumnSort3); + + expect(data).toStrictEqual([ + { s: 'b', n: 4 }, + { s: 'b', n: 3 }, + { s: 'a', n: 2 }, + { s: 'a', n: 1 }, + ]); + }); + test('getPivotDropdownOptions()', () => { // The field name includes the characters []> as well as a leading and ending space charcter // which cannot be used for aggregation names. The test results verifies that the characters diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/common.ts b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/common.ts index b4b03c1f0d5712..7b78d4ffccfa1f 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/common.ts +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/common.ts @@ -4,12 +4,14 @@ * you may not use this file except in compliance with the Elastic License. */ import { get } from 'lodash'; -import { EuiComboBoxOptionProps } from '@elastic/eui'; +import { EuiComboBoxOptionProps, EuiDataGridSorting } from '@elastic/eui'; import { IndexPattern, KBN_FIELD_TYPES, } from '../../../../../../../../../../src/plugins/data/public'; +import { getNestedProperty } from '../../../../../../common/utils/object_utils'; + import { PreviewRequestBody, DropDownLabel, @@ -28,6 +30,51 @@ export interface Field { type: KBN_FIELD_TYPES; } +/** + * Helper to sort an array of objects based on an EuiDataGrid sorting configuration. + * `sortFn()` is recursive to support sorting on multiple columns. + * + * @param sortingColumns - The EUI data grid sorting configuration + * @returns The sorting function which can be used with an array's sort() function. + */ +export const multiColumnSortFactory = (sortingColumns: EuiDataGridSorting['columns']) => { + const isString = (arg: any): arg is string => { + return typeof arg === 'string'; + }; + + const sortFn = (a: any, b: any, sortingColumnIndex = 0): number => { + const sort = sortingColumns[sortingColumnIndex]; + const aValue = getNestedProperty(a, sort.id, null); + const bValue = getNestedProperty(b, sort.id, null); + + if (typeof aValue === 'number' && typeof bValue === 'number') { + if (aValue < bValue) { + return sort.direction === 'asc' ? -1 : 1; + } + if (aValue > bValue) { + return sort.direction === 'asc' ? 1 : -1; + } + } + + if (isString(aValue) && isString(bValue)) { + if (aValue.localeCompare(bValue) === -1) { + return sort.direction === 'asc' ? -1 : 1; + } + if (aValue.localeCompare(bValue) === 1) { + return sort.direction === 'asc' ? 1 : -1; + } + } + + if (sortingColumnIndex + 1 < sortingColumns.length) { + return sortFn(a, b, sortingColumnIndex + 1); + } + + return 0; + }; + + return sortFn; +}; + function getDefaultGroupByConfig( aggName: string, dropDownName: string, diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.tsx index 241f65614cea2d..b755956eae24e5 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.tsx @@ -4,8 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { FC, useEffect, useRef, useState } from 'react'; -import moment from 'moment-timezone'; +import React, { FC, useCallback, useEffect, useMemo, useState } from 'react'; import { i18n } from '@kbn/i18n'; @@ -14,26 +13,23 @@ import { EuiCallOut, EuiCodeBlock, EuiCopy, + EuiDataGrid, + EuiDataGridSorting, EuiFlexGroup, EuiFlexItem, - EuiPanel, EuiProgress, EuiTitle, } from '@elastic/eui'; -import { - ColumnType, - mlInMemoryTableBasicFactory, - SORT_DIRECTION, -} from '../../../../../shared_imports'; import { dictionaryToArray } from '../../../../../../common/types/common'; -import { ES_FIELD_TYPES } from '../../../../../../../../../../src/plugins/data/public'; -import { formatHumanReadableDateTimeSeconds } from '../../../../../../common/utils/date_utils'; +import { getNestedProperty } from '../../../../../../common/utils/object_utils'; import { useCurrentIndexPattern } from '../../../../lib/kibana'; import { - getFlattenedFields, + euiDataGridStyle, + euiDataGridToolbarSettings, + EsFieldName, PreviewRequestBody, PivotAggsConfigDict, PivotGroupByConfig, @@ -41,8 +37,8 @@ import { PivotQuery, } from '../../../../common'; -import { getPivotPreviewDevConsoleStatement } from './common'; -import { PreviewItem, PIVOT_PREVIEW_STATUS, usePivotPreviewData } from './use_pivot_preview_data'; +import { getPivotPreviewDevConsoleStatement, multiColumnSortFactory } from './common'; +import { PIVOT_PREVIEW_STATUS, usePivotPreviewData } from './use_pivot_preview_data'; function sortColumns(groupByArr: PivotGroupByConfig[]) { return (a: string, b: string) => { @@ -60,14 +56,6 @@ function sortColumns(groupByArr: PivotGroupByConfig[]) { }; } -function usePrevious(value: any) { - const ref = useRef(null); - useEffect(() => { - ref.current = value; - }); - return ref.current; -} - interface PreviewTitleProps { previewRequest: PreviewRequestBody; } @@ -118,51 +106,103 @@ interface PivotPreviewProps { query: PivotQuery; } -export const PivotPreview: FC<PivotPreviewProps> = React.memo(({ aggs, groupBy, query }) => { - const [clearTable, setClearTable] = useState(false); +const defaultPagination = { pageIndex: 0, pageSize: 5 }; +export const PivotPreview: FC<PivotPreviewProps> = React.memo(({ aggs, groupBy, query }) => { const indexPattern = useCurrentIndexPattern(); const { - previewData, + previewData: data, previewMappings, errorMessage, previewRequest, status, } = usePivotPreviewData(indexPattern, query, aggs, groupBy); - const groupByArr = dictionaryToArray(groupBy); - // EuiInMemoryTable has an issue with dynamic sortable columns - // and will trigger a full page Kibana error in such a case. - // The following is a workaround until this is solved upstream: - // - If the sortable/columns config changes, - // the table will be unmounted/not rendered. - // This is what the useEffect() part does. - // - After that the table gets re-enabled. To make sure React - // doesn't consolidate the state updates, setTimeout is used. - const firstColumnName = - previewData.length > 0 - ? Object.keys(previewData[0]).sort(sortColumns(groupByArr))[0] - : undefined; - - const firstColumnNameChanged = usePrevious(firstColumnName) !== firstColumnName; + // Filters mapping properties of type `object`, which get returned for nested field parents. + const columnKeys = Object.keys(previewMappings.properties).filter( + key => previewMappings.properties[key].type !== 'object' + ); + columnKeys.sort(sortColumns(groupByArr)); + + // Column visibility + const [visibleColumns, setVisibleColumns] = useState<EsFieldName[]>(columnKeys); + useEffect(() => { - if (firstColumnNameChanged) { - setClearTable(true); - } - if (clearTable) { - setTimeout(() => setClearTable(false), 0); - } - }, [firstColumnNameChanged, clearTable]); + setVisibleColumns(columnKeys); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [JSON.stringify(columnKeys)]); - if (firstColumnNameChanged) { - return null; + const [pagination, setPagination] = useState(defaultPagination); + + // Reset pagination if data changes. This is to avoid ending up with an empty table + // when for example the user selected a page that is not available with the updated data. + useEffect(() => { + setPagination(defaultPagination); + }, [data.length]); + + // EuiDataGrid State + const dataGridColumns = columnKeys.map(id => ({ id })); + + const onChangeItemsPerPage = useCallback( + pageSize => { + setPagination(p => { + const pageIndex = Math.floor((p.pageSize * p.pageIndex) / pageSize); + return { pageIndex, pageSize }; + }); + }, + [setPagination] + ); + + const onChangePage = useCallback(pageIndex => setPagination(p => ({ ...p, pageIndex })), [ + setPagination, + ]); + + // Sorting config + const [sortingColumns, setSortingColumns] = useState<EuiDataGridSorting['columns']>([]); + const onSort = useCallback(sc => setSortingColumns(sc), [setSortingColumns]); + + if (sortingColumns.length > 0) { + data.sort(multiColumnSortFactory(sortingColumns)); } + const pageData = data.slice( + pagination.pageIndex * pagination.pageSize, + (pagination.pageIndex + 1) * pagination.pageSize + ); + + const renderCellValue = useMemo(() => { + return ({ + rowIndex, + columnId, + setCellProps, + }: { + rowIndex: number; + columnId: string; + setCellProps: any; + }) => { + const adjustedRowIndex = rowIndex - pagination.pageIndex * pagination.pageSize; + + const cellValue = pageData.hasOwnProperty(adjustedRowIndex) + ? getNestedProperty(pageData[adjustedRowIndex], columnId, null) + : null; + + if (typeof cellValue === 'object' && cellValue !== null) { + return JSON.stringify(cellValue); + } + + if (cellValue === undefined) { + return null; + } + + return cellValue; + }; + }, [pageData, pagination.pageIndex, pagination.pageSize]); + if (status === PIVOT_PREVIEW_STATUS.ERROR) { return ( - <EuiPanel grow={false} data-test-subj="transformPivotPreview error"> + <div data-test-subj="transformPivotPreview error"> <PreviewTitle previewRequest={previewRequest} /> <EuiCallOut title={i18n.translate('xpack.transform.pivotPreview.PivotPreviewError', { @@ -173,11 +213,11 @@ export const PivotPreview: FC<PivotPreviewProps> = React.memo(({ aggs, groupBy, > <ErrorMessage message={errorMessage} /> </EuiCallOut> - </EuiPanel> + </div> ); } - if (previewData.length === 0) { + if (data.length === 0) { let noDataMessage = i18n.translate( 'xpack.transform.pivotPreview.PivotPreviewNoDataCalloutBody', { @@ -196,7 +236,7 @@ export const PivotPreview: FC<PivotPreviewProps> = React.memo(({ aggs, groupBy, ); } return ( - <EuiPanel grow={false} data-test-subj="transformPivotPreview empty"> + <div data-test-subj="transformPivotPreview empty"> <PreviewTitle previewRequest={previewRequest} /> <EuiCallOut title={i18n.translate('xpack.transform.pivotPreview.PivotPreviewNoDataCalloutTitle', { @@ -206,85 +246,41 @@ export const PivotPreview: FC<PivotPreviewProps> = React.memo(({ aggs, groupBy, > <p>{noDataMessage}</p> </EuiCallOut> - </EuiPanel> + </div> ); } - const columnKeys = getFlattenedFields(previewData[0]); - columnKeys.sort(sortColumns(groupByArr)); - - const columns = columnKeys.map(k => { - const column: ColumnType<PreviewItem> = { - field: k, - name: k, - sortable: true, - truncateText: true, - }; - if (typeof previewMappings.properties[k] !== 'undefined') { - const esFieldType = previewMappings.properties[k].type; - switch (esFieldType) { - case ES_FIELD_TYPES.BOOLEAN: - column.dataType = 'boolean'; - break; - case ES_FIELD_TYPES.DATE: - column.align = 'right'; - column.render = (d: any) => formatHumanReadableDateTimeSeconds(moment(d).unix() * 1000); - break; - case ES_FIELD_TYPES.BYTE: - case ES_FIELD_TYPES.DOUBLE: - case ES_FIELD_TYPES.FLOAT: - case ES_FIELD_TYPES.HALF_FLOAT: - case ES_FIELD_TYPES.INTEGER: - case ES_FIELD_TYPES.LONG: - case ES_FIELD_TYPES.SCALED_FLOAT: - case ES_FIELD_TYPES.SHORT: - column.dataType = 'number'; - break; - case ES_FIELD_TYPES.KEYWORD: - case ES_FIELD_TYPES.TEXT: - column.dataType = 'string'; - break; - } - } - return column; - }); - - if (columns.length === 0) { + if (columnKeys.length === 0) { return null; } - const sorting = { - sort: { - field: columns[0].field as string, - direction: SORT_DIRECTION.ASC, - }, - }; - - const MlInMemoryTableBasic = mlInMemoryTableBasicFactory<PreviewItem>(); - return ( - <EuiPanel data-test-subj="transformPivotPreview loaded"> + <div data-test-subj="transformPivotPreview loaded"> <PreviewTitle previewRequest={previewRequest} /> - {status === PIVOT_PREVIEW_STATUS.LOADING && <EuiProgress size="xs" color="accent" />} - {status !== PIVOT_PREVIEW_STATUS.LOADING && ( - <EuiProgress size="xs" color="accent" max={1} value={0} /> - )} - {previewData.length > 0 && clearTable === false && columns.length > 0 && ( - <MlInMemoryTableBasic - allowNeutralSort={false} - compressed - items={previewData} - columns={columns} + <div className="transform__progress"> + {status === PIVOT_PREVIEW_STATUS.LOADING && <EuiProgress size="xs" color="accent" />} + {status !== PIVOT_PREVIEW_STATUS.LOADING && ( + <EuiProgress size="xs" color="accent" max={1} value={0} /> + )} + </div> + {dataGridColumns.length > 0 && data.length > 0 && ( + <EuiDataGrid + aria-label="Source index preview" + columns={dataGridColumns} + columnVisibility={{ visibleColumns, setVisibleColumns }} + gridStyle={euiDataGridStyle} + rowCount={data.length} + renderCellValue={renderCellValue} + sorting={{ columns: sortingColumns, onSort }} + toolbarVisibility={euiDataGridToolbarSettings} pagination={{ - initialPageSize: 5, + ...pagination, pageSizeOptions: [5, 10, 25], + onChangeItemsPerPage, + onChangePage, }} - rowProps={() => ({ - 'data-test-subj': 'transformPivotPreviewRow', - })} - sorting={sorting} /> )} - </EuiPanel> + </div> ); }); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx index bde832894632c0..9b96e4b1ee7585 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx @@ -17,6 +17,7 @@ import { EuiForm, EuiFormHelpText, EuiFormRow, + EuiHorizontalRule, EuiLink, EuiPanel, // @ts-ignore @@ -255,11 +256,6 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange const [searchQuery, setSearchQuery] = useState(defaults.searchQuery); const [useKQL] = useState(true); - const addToSearch = (newSearch: string) => { - const currentDisplaySearch = searchString === defaultSearch ? emptySearch : searchString; - setSearchString(`${currentDisplaySearch} ${newSearch}`.trim()); - }; - const searchHandler = (d: Record<string, any>) => { const { filterQuery, queryString } = d; const newSearch = queryString === emptySearch ? defaultSearch : queryString; @@ -568,8 +564,8 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange const disabledQuery = numIndexFields > maxIndexFields; return ( - <EuiFlexGroup> - <EuiFlexItem grow={false} style={{ minWidth: '420px' }}> + <EuiFlexGroup className="transform__stepDefineForm"> + <EuiFlexItem grow={false} className="transform__stepDefineFormLeftColumn"> <div data-test-subj="transformStepDefineForm"> <EuiForm> {kibanaContext.currentSavedSearch === undefined && typeof searchString === 'string' && ( @@ -906,9 +902,9 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange </div> </EuiFlexItem> - <EuiFlexItem> - <SourceIndexPreview cellClick={addToSearch} query={pivotQuery} /> - <EuiSpacer size="m" /> + <EuiFlexItem grow={false} style={{ maxWidth: 'calc(100% - 468px)' }}> + <SourceIndexPreview query={pivotQuery} /> + <EuiHorizontalRule /> <PivotPreview aggs={aggList} groupBy={groupByList} query={pivotQuery} /> </EuiFlexItem> </EuiFlexGroup> diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/wizard/_wizard.scss b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/wizard/_wizard.scss index 7c43e34d5f1b46..b235e9ebf7c21d 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/wizard/_wizard.scss +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/wizard/_wizard.scss @@ -1,13 +1,29 @@ +.transform__progress progress[value]::-webkit-progress-bar { + background-color: $euiColorGhost; +} + .transform__steps { .euiStep__content { padding-right: 0px; } } -/* This is an override to replicate the previous full-page-width of the transforms creation wizard +.transform__stepDefineForm { + align-items: flex-start; +} + +.transform__stepDefineFormLeftColumn { + min-width: 420px; + border-right: 1px solid $euiColorLightShade; +} + +/* +This is an override to replicate the previous full-page-width of the transforms creation wizard when it was in use within the ML plugin. The Kibana management section limits a max-width to 1200px which is a bit narrow for the two column layout of the transform wizard. We might revisit this for -future versions to blend in more with the overall design of the Kibana management section. */ +future versions to blend in more with the overall design of the Kibana management section. +The management section's navigation width is 192px + 24px right margin +*/ .mgtPage__body--transformWizard { - max-width: 100%; + max-width: calc(100% - 216px); } diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 75db834a969d0e..0504343e4dcc33 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -12386,17 +12386,8 @@ "xpack.transform.progress": "進捗", "xpack.transform.sourceIndex": "ソースインデックス", "xpack.transform.sourceIndexPreview.copyClipboardTooltip": "ソースインデックスプレビューの開発コンソールステートメントをクリップボードにコピーします。", - "xpack.transform.sourceIndexPreview.fieldSelection": "{docFieldsCount, number} 件中 {selectedFieldsLength, number} 件の {docFieldsCount, plural, one {フィールド} other {フィールド}}を選択済み", - "xpack.transform.sourceIndexPreview.rowCollapse": "縮小", - "xpack.transform.sourceIndexPreview.rowExpand": "拡張", - "xpack.transform.sourceIndexPreview.selectColumnsAriaLabel": "列を選択", - "xpack.transform.sourceIndexPreview.selectFieldsPopoverTitle": "フィールドを選択", - "xpack.transform.sourceIndexPreview.SourceIndexArrayBadgeContent": "配列", - "xpack.transform.sourceIndexPreview.SourceIndexArrayToolTipContent": "この配列に基づく列の完全な内容は、展開された行に表示されます。", "xpack.transform.sourceIndexPreview.SourceIndexNoDataCalloutBody": "ソースインデックスのクエリが結果を返しませんでした。インデックスにドキュメントが含まれていて、クエリ要件が妥当であることを確認してください。", "xpack.transform.sourceIndexPreview.SourceIndexNoDataCalloutTitle": "ソースインデックスクエリの結果がありません", - "xpack.transform.sourceIndexPreview.SourceIndexObjectBadgeContent": "オブジェクト", - "xpack.transform.sourceIndexPreview.SourceIndexObjectToolTipContent": "このオブジェクトベースの列の完全な内容は、展開された行に表示されます。", "xpack.transform.sourceIndexPreview.sourceIndexPatternError": "ソースインデックスデータの読み込み中にエラーが発生しました。", "xpack.transform.sourceIndexPreview.sourceIndexPatternTitle": "ソースインデックス {indexPatternTitle}", "xpack.transform.statsBar.batchTransformsLabel": "一斉", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index d67d2054a2da65..156b1d3d241533 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -12386,17 +12386,8 @@ "xpack.transform.progress": "进度", "xpack.transform.sourceIndex": "源索引", "xpack.transform.sourceIndexPreview.copyClipboardTooltip": "将源索引预览的开发控制台语句复制到剪贴板。", - "xpack.transform.sourceIndexPreview.fieldSelection": "已选择 {selectedFieldsLength, number} 个{docFieldsCount, plural, one {字段} other {字段}},共 {docFieldsCount, number} 个", - "xpack.transform.sourceIndexPreview.rowCollapse": "折叠", - "xpack.transform.sourceIndexPreview.rowExpand": "展开", - "xpack.transform.sourceIndexPreview.selectColumnsAriaLabel": "选择列", - "xpack.transform.sourceIndexPreview.selectFieldsPopoverTitle": "选择字段", - "xpack.transform.sourceIndexPreview.SourceIndexArrayBadgeContent": "数组", - "xpack.transform.sourceIndexPreview.SourceIndexArrayToolTipContent": "此基于数组的列的完整内容在展开的行中。", "xpack.transform.sourceIndexPreview.SourceIndexNoDataCalloutBody": "源索引的查询未返回结果。请确保索引包含文档且您的查询限制不过于严格。", "xpack.transform.sourceIndexPreview.SourceIndexNoDataCalloutTitle": "源索引查询结果为空。", - "xpack.transform.sourceIndexPreview.SourceIndexObjectBadgeContent": "对象", - "xpack.transform.sourceIndexPreview.SourceIndexObjectToolTipContent": "此基于对象的列的完整内容在展开的行中。", "xpack.transform.sourceIndexPreview.sourceIndexPatternError": "加载源索引数据时出错。", "xpack.transform.sourceIndexPreview.sourceIndexPatternTitle": "源索引 {indexPatternTitle}", "xpack.transform.statsBar.batchTransformsLabel": "批量", diff --git a/x-pack/test/functional/apps/transform/creation_index_pattern.ts b/x-pack/test/functional/apps/transform/creation_index_pattern.ts index 5b54bfdafdbdbc..4d1300ffaad06a 100644 --- a/x-pack/test/functional/apps/transform/creation_index_pattern.ts +++ b/x-pack/test/functional/apps/transform/creation_index_pattern.ts @@ -89,7 +89,7 @@ export default function({ getService }: FtrProviderContext) { progress: '100', }, sourcePreview: { - columns: 6, + columns: 45, rows: 5, }, }, diff --git a/x-pack/test/functional/apps/transform/creation_saved_search.ts b/x-pack/test/functional/apps/transform/creation_saved_search.ts index 2f5f60e1573c84..bf501c65bc79b4 100644 --- a/x-pack/test/functional/apps/transform/creation_saved_search.ts +++ b/x-pack/test/functional/apps/transform/creation_saved_search.ts @@ -63,7 +63,7 @@ export default function({ getService }: FtrProviderContext) { }, sourceIndex: 'farequote', sourcePreview: { - column: 3, + column: 2, values: ['ASA'], }, }, diff --git a/x-pack/test/functional/services/transform_ui/wizard.ts b/x-pack/test/functional/services/transform_ui/wizard.ts index aca08f7083aa85..2d20f3617cf06a 100644 --- a/x-pack/test/functional/services/transform_ui/wizard.ts +++ b/x-pack/test/functional/services/transform_ui/wizard.ts @@ -76,17 +76,17 @@ export function TransformWizardProvider({ getService }: FtrProviderContext) { await testSubjects.existOrFail(selector); }, - async parseEuiInMemoryTable(tableSubj: string) { + async parseEuiDataGrid(tableSubj: string) { const table = await testSubjects.find(`~${tableSubj}`); const $ = await table.parseDomContent(); const rows = []; // For each row, get the content of each cell and // add its values as an array to each row. - for (const tr of $.findTestSubjects(`~${tableSubj}Row`).toArray()) { + for (const tr of $.findTestSubjects(`~dataGridRow`).toArray()) { rows.push( $(tr) - .find('.euiTableCellContent') + .find('.euiDataGridRowCell__truncate') .toArray() .map(cell => $(cell) @@ -99,14 +99,14 @@ export function TransformWizardProvider({ getService }: FtrProviderContext) { return rows; }, - async assertEuiInMemoryTableColumnValues( + async assertEuiDataGridColumnValues( tableSubj: string, column: number, expectedColumnValues: string[] ) { await retry.tryForTime(2000, async () => { // get a 2D array of rows and cell values - const rows = await this.parseEuiInMemoryTable(tableSubj); + const rows = await this.parseEuiDataGrid(tableSubj); // reduce the rows data to an array of unique values in the specified column const uniqueColumnValues = rows @@ -119,7 +119,7 @@ export function TransformWizardProvider({ getService }: FtrProviderContext) { // check if the returned unique value matches the supplied filter value expect(uniqueColumnValues).to.eql( expectedColumnValues, - `Unique EuiInMemoryTable column values should be '${expectedColumnValues.join()}' (got ${uniqueColumnValues.join()})` + `Unique EuiDataGrid column values should be '${expectedColumnValues.join()}' (got ${uniqueColumnValues.join()})` ); }); }, @@ -127,28 +127,28 @@ export function TransformWizardProvider({ getService }: FtrProviderContext) { async assertSourceIndexPreview(columns: number, rows: number) { await retry.tryForTime(2000, async () => { // get a 2D array of rows and cell values - const rowsData = await this.parseEuiInMemoryTable('transformSourceIndexPreview'); + const rowsData = await this.parseEuiDataGrid('transformSourceIndexPreview'); expect(rowsData).to.length( rows, - `EuiInMemoryTable rows should be ${rows} (got ${rowsData.length})` + `EuiDataGrid rows should be ${rows} (got ${rowsData.length})` ); rowsData.map((r, i) => expect(r).to.length( columns, - `EuiInMemoryTable row #${i + 1} column count should be ${columns} (got ${r.length})` + `EuiDataGrid row #${i + 1} column count should be ${columns} (got ${r.length})` ) ); }); }, async assertSourceIndexPreviewColumnValues(column: number, values: string[]) { - await this.assertEuiInMemoryTableColumnValues('transformSourceIndexPreview', column, values); + await this.assertEuiDataGridColumnValues('transformSourceIndexPreview', column, values); }, async assertPivotPreviewColumnValues(column: number, values: string[]) { - await this.assertEuiInMemoryTableColumnValues('transformPivotPreview', column, values); + await this.assertEuiDataGridColumnValues('transformPivotPreview', column, values); }, async assertPivotPreviewLoaded() { @@ -445,21 +445,25 @@ export function TransformWizardProvider({ getService }: FtrProviderContext) { }, async assertStartButtonExists() { - await testSubjects.existOrFail('transformWizardStartButton'); - expect(await testSubjects.isDisplayed('transformWizardStartButton')).to.eql( - true, - `Expected 'Start' button to be displayed` - ); + await retry.tryForTime(5000, async () => { + await testSubjects.existOrFail('transformWizardStartButton'); + expect(await testSubjects.isDisplayed('transformWizardStartButton')).to.eql( + true, + `Expected 'Start' button to be displayed` + ); + }); }, async assertStartButtonEnabled(expectedValue: boolean) { - const isEnabled = await testSubjects.isEnabled('transformWizardStartButton'); - expect(isEnabled).to.eql( - expectedValue, - `Expected 'Start' button to be '${expectedValue ? 'enabled' : 'disabled'}' (got ${ - isEnabled ? 'enabled' : 'disabled' - }')` - ); + await retry.tryForTime(5000, async () => { + const isEnabled = await testSubjects.isEnabled('transformWizardStartButton'); + expect(isEnabled).to.eql( + expectedValue, + `Expected 'Start' button to be '${expectedValue ? 'enabled' : 'disabled'}' (got ${ + isEnabled ? 'enabled' : 'disabled' + }')` + ); + }); }, async assertManagementCardExists() { @@ -492,17 +496,21 @@ export function TransformWizardProvider({ getService }: FtrProviderContext) { async createTransform() { await testSubjects.click('transformWizardCreateButton'); - await this.assertStartButtonExists(); - await this.assertStartButtonEnabled(true); - await this.assertManagementCardExists(); - await this.assertCreateButtonEnabled(false); + await retry.tryForTime(5000, async () => { + await this.assertStartButtonExists(); + await this.assertStartButtonEnabled(true); + await this.assertManagementCardExists(); + await this.assertCreateButtonEnabled(false); + }); }, async startTransform() { await testSubjects.click('transformWizardStartButton'); - await this.assertDiscoverCardExists(); - await this.assertStartButtonEnabled(false); - await this.assertProgressbarExists(); + await retry.tryForTime(5000, async () => { + await this.assertDiscoverCardExists(); + await this.assertStartButtonEnabled(false); + await this.assertProgressbarExists(); + }); }, }; } From 39a431a24715d1cbdf0513fc8d3a04a5a96c4075 Mon Sep 17 00:00:00 2001 From: Marta Bondyra <marta.bondyra@elastic.co> Date: Tue, 3 Mar 2020 17:48:54 +0100 Subject: [PATCH 053/120] =?UTF-8?q?[Lens]=20Display=20field=20name=20inste?= =?UTF-8?q?ad=20of=20'dragging'=20text=20when=20a=20fi=E2=80=A6=20(#59053)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lens/public/drag_drop/drag_drop.test.tsx | 8 +++-- .../lens/public/drag_drop/drag_drop.tsx | 36 +++++++++++++++---- .../indexpattern_datasource/field_item.tsx | 1 + 3 files changed, 36 insertions(+), 9 deletions(-) diff --git a/x-pack/legacy/plugins/lens/public/drag_drop/drag_drop.test.tsx b/x-pack/legacy/plugins/lens/public/drag_drop/drag_drop.test.tsx index 17a6afa9b70ff3..6bf629912f53c2 100644 --- a/x-pack/legacy/plugins/lens/public/drag_drop/drag_drop.test.tsx +++ b/x-pack/legacy/plugins/lens/public/drag_drop/drag_drop.test.tsx @@ -14,7 +14,7 @@ jest.useFakeTimers(); describe('DragDrop', () => { test('renders if nothing is being dragged', () => { const component = render( - <DragDrop value="hello" draggable> + <DragDrop value="hello" draggable label="dragging"> Hello! </DragDrop> ); @@ -50,7 +50,9 @@ describe('DragDrop', () => { const component = mount( <ChildDragDropProvider dragging={undefined} setDragging={setDragging}> - <DragDrop value={value}>Hello!</DragDrop> + <DragDrop value={value} draggable={true} label="drag label"> + Hello! + </DragDrop> </ChildDragDropProvider> ); @@ -58,7 +60,7 @@ describe('DragDrop', () => { jest.runAllTimers(); - expect(dataTransfer.setData).toBeCalledWith('text', 'dragging'); + expect(dataTransfer.setData).toBeCalledWith('text', 'drag label'); expect(setDragging).toBeCalledWith(value); }); diff --git a/x-pack/legacy/plugins/lens/public/drag_drop/drag_drop.tsx b/x-pack/legacy/plugins/lens/public/drag_drop/drag_drop.tsx index 834e0a727ba48e..72b0d581224054 100644 --- a/x-pack/legacy/plugins/lens/public/drag_drop/drag_drop.tsx +++ b/x-pack/legacy/plugins/lens/public/drag_drop/drag_drop.tsx @@ -17,9 +17,9 @@ type DroppableEvent = React.DragEvent<HTMLElement>; export type DropHandler = (item: unknown) => void; /** - * The argument to the DragDrop component. + * The base props to the DragDrop component. */ -interface Props { +interface BaseProps { /** * The CSS class(es) for the root element. */ @@ -49,17 +49,39 @@ interface Props { */ droppable?: boolean; + /** + * The optional test subject associated with this DOM element. + */ + 'data-test-subj'?: string; +} + +/** + * The props for a draggable instance of that component. + */ +interface DraggableProps extends BaseProps { /** * Indicates whether or not this component is draggable. */ - draggable?: boolean; + draggable: true; + /** + * The label, which should be attached to the drag event, and which will e.g. + * be used if the element will be dropped into a text field. + */ + label: string; +} +/** + * The props for a non-draggable instance of that component. + */ +interface NonDraggableProps extends BaseProps { /** - * The optional test subject associated with this DOM element. + * Indicates whether or not this component is draggable. */ - 'data-test-subj'?: string; + draggable?: false; } +type Props = DraggableProps | NonDraggableProps; + /** * A draggable / droppable item. Items can be both draggable and droppable at * the same time. @@ -86,7 +108,9 @@ export function DragDrop(props: Props) { return; } - e.dataTransfer.setData('text', 'dragging'); + // We only can reach the dragStart method if the element is draggable, + // so we know we have DraggableProps if we reach this code. + e.dataTransfer.setData('text', (props as DraggableProps).label); // Chrome causes issues if you try to render from within a // dragStart event, so we drop a setTimeout to avoid that. diff --git a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/field_item.tsx b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/field_item.tsx index 94d644e6590e17..b98f589bc5b989 100644 --- a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/field_item.tsx +++ b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/field_item.tsx @@ -177,6 +177,7 @@ export function FieldItem(props: FieldItemProps) { container={document.querySelector<HTMLElement>('.application') || undefined} button={ <DragDrop + label={field.name} value={{ field, indexPatternId: indexPattern.id } as DraggedField} data-test-subj="lnsFieldListPanelField" draggable From 690e3a6a8b6826a17ba395c50c595a183578d6b3 Mon Sep 17 00:00:00 2001 From: Jean-Louis Leysens <jloleysens@gmail.com> Date: Tue, 3 Mar 2020 17:50:01 +0100 Subject: [PATCH 054/120] [Console] Fixes for console error handling and loading of autocomplete (#58587) * Fix console error handling when offline In cases when the client cannot connect to server the UI would get stuck in a loading state. We need to handle that case explicitly to stop the progress spinner and report the error correctly. * Fix editor request cycle. Request should always complete The bug was that the request could error in such a way that the requestFail dispatch was not being called. Leaving the loading spinner running and an unhelpful error message would appear. Also partly fixed the loading of autocomplete data and cleaned up a legacy import. * Fixed loading of mappings in as they were updated from settings modal. * Fix the mappings update logic TODO, this function needs to be revisited, but for now it is convenient to have the Settings service passed in every time so that the poller can be updated. * Fix poll interval * Address PR feedback Rename variable (instance -> editorRegistry) and remove unused file Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../legacy/console_editor/editor.test.tsx | 18 +-- .../editor/legacy/console_editor/editor.tsx | 6 +- .../legacy/console_editor/editor_output.tsx | 5 +- .../application/containers/settings.tsx | 19 +-- .../editor_context/editor_registry.ts | 2 +- .../contexts/services_context.mock.ts | 43 +++++++ .../application/contexts/services_context.tsx | 2 +- .../use_send_current_request_to_es.test.tsx | 108 ++++++++++++++++++ .../use_send_current_request_to_es.ts | 8 +- .../public/application/stores/request.ts | 2 +- .../console/public/lib/mappings/mappings.js | 27 ++--- .../console/public/services/history.mock.ts | 31 +++++ .../console/public/services/settings.mock.ts | 35 ++++++ .../console/public/services/storage.mock.ts | 32 ++++++ 14 files changed, 292 insertions(+), 46 deletions(-) create mode 100644 src/plugins/console/public/application/contexts/services_context.mock.ts create mode 100644 src/plugins/console/public/application/hooks/use_send_current_request_to_es/use_send_current_request_to_es.test.tsx create mode 100644 src/plugins/console/public/services/history.mock.ts create mode 100644 src/plugins/console/public/services/settings.mock.ts create mode 100644 src/plugins/console/public/services/storage.mock.ts diff --git a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.tsx b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.tsx index 306cdd396f4f82..3e188ce591e9a9 100644 --- a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.tsx +++ b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.test.tsx @@ -25,7 +25,7 @@ import { I18nProvider } from '@kbn/i18n/react'; import { act } from 'react-dom/test-utils'; import * as sinon from 'sinon'; -import { notificationServiceMock } from '../../../../../../../../core/public/mocks'; +import { serviceContextMock } from '../../../../contexts/services_context.mock'; import { nextTick } from 'test_utils/enzyme_helpers'; import { @@ -61,21 +61,7 @@ describe('Legacy (Ace) Console Editor Component Smoke Test', () => { beforeEach(() => { document.queryCommandSupported = sinon.fake(() => true); - mockedAppContextValue = { - elasticsearchUrl: 'test', - services: { - trackUiMetric: { count: () => {}, load: () => {} }, - settings: {} as any, - storage: {} as any, - history: { - getSavedEditorState: () => ({} as any), - updateCurrentState: jest.fn(), - } as any, - notifications: notificationServiceMock.createSetupContract(), - objectStorageClient: {} as any, - }, - docLinkVersion: 'NA', - }; + mockedAppContextValue = serviceContextMock.create(); }); afterEach(() => { diff --git a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.tsx b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.tsx index daf88e28c64405..170024c192e7f1 100644 --- a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.tsx +++ b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor.tsx @@ -65,7 +65,7 @@ const inputId = 'ConAppInputTextarea'; function EditorUI({ initialTextValue }: EditorProps) { const { - services: { history, notifications }, + services: { history, notifications, settings: settingsService }, docLinkVersion, elasticsearchUrl, } = useServicesContext(); @@ -172,7 +172,7 @@ function EditorUI({ initialTextValue }: EditorProps) { setInputEditor(editor); setTextArea(editorRef.current!.querySelector('textarea')); - mappings.retrieveAutoCompleteInfo(); + mappings.retrieveAutoCompleteInfo(settingsService, settingsService.getAutocomplete()); const unsubscribeResizer = subscribeResizeChecker(editorRef.current!, editor); setupAutosave(); @@ -182,7 +182,7 @@ function EditorUI({ initialTextValue }: EditorProps) { mappings.clearSubscriptions(); window.removeEventListener('hashchange', onHashChange); }; - }, [saveCurrentTextObject, initialTextValue, history, setInputEditor]); + }, [saveCurrentTextObject, initialTextValue, history, setInputEditor, settingsService]); useEffect(() => { const { current: editor } = editorInstanceRef; diff --git a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor_output.tsx b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor_output.tsx index a8f456d22e7268..36d90bb6bff1a5 100644 --- a/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor_output.tsx +++ b/src/plugins/console/public/application/containers/editor/legacy/console_editor/editor_output.tsx @@ -30,7 +30,10 @@ import { createReadOnlyAceEditor, CustomAceEditor } from '../../../../models/leg import { subscribeResizeChecker } from '../subscribe_console_resize_checker'; import { applyCurrentSettings } from './apply_editor_settings'; -function modeForContentType(contentType: string) { +function modeForContentType(contentType?: string) { + if (!contentType) { + return 'ace/mode/text'; + } if (contentType.indexOf('application/json') >= 0) { return 'ace/mode/json'; } else if (contentType.indexOf('application/yaml') >= 0) { diff --git a/src/plugins/console/public/application/containers/settings.tsx b/src/plugins/console/public/application/containers/settings.tsx index 795103a5c95bb0..e34cfcac8096bb 100644 --- a/src/plugins/console/public/application/containers/settings.tsx +++ b/src/plugins/console/public/application/containers/settings.tsx @@ -23,7 +23,7 @@ import { AutocompleteOptions, DevToolsSettingsModal } from '../components'; // @ts-ignore import mappings from '../../lib/mappings/mappings'; import { useServicesContext, useEditorActionContext } from '../contexts'; -import { DevToolsSettings } from '../../services'; +import { DevToolsSettings, Settings as SettingsService } from '../../services'; const getAutocompleteDiff = (newSettings: DevToolsSettings, prevSettings: DevToolsSettings) => { return Object.keys(newSettings.autocomplete).filter(key => { @@ -32,11 +32,12 @@ const getAutocompleteDiff = (newSettings: DevToolsSettings, prevSettings: DevToo }); }; -const refreshAutocompleteSettings = (selectedSettings: any) => { - mappings.retrieveAutoCompleteInfo(selectedSettings); +const refreshAutocompleteSettings = (settings: SettingsService, selectedSettings: any) => { + mappings.retrieveAutoCompleteInfo(settings, selectedSettings); }; const fetchAutocompleteSettingsIfNeeded = ( + settings: SettingsService, newSettings: DevToolsSettings, prevSettings: DevToolsSettings ) => { @@ -60,10 +61,10 @@ const fetchAutocompleteSettingsIfNeeded = ( }, {} ); - mappings.retrieveAutoCompleteInfo(changedSettings.autocomplete); - } else if (isPollingChanged) { + mappings.retrieveAutoCompleteInfo(settings, changedSettings); + } else if (isPollingChanged && newSettings.polling) { // If the user has turned polling on, then we'll fetch all selected autocomplete settings. - mappings.retrieveAutoCompleteInfo(); + mappings.retrieveAutoCompleteInfo(settings, settings.getAutocomplete()); } } }; @@ -81,7 +82,7 @@ export function Settings({ onClose }: Props) { const onSaveSettings = (newSettings: DevToolsSettings) => { const prevSettings = settings.toJSON(); - fetchAutocompleteSettingsIfNeeded(newSettings, prevSettings); + fetchAutocompleteSettingsIfNeeded(settings, newSettings, prevSettings); // Update the new settings in localStorage settings.updateSettings(newSettings); @@ -98,7 +99,9 @@ export function Settings({ onClose }: Props) { <DevToolsSettingsModal onClose={onClose} onSaveSettings={onSaveSettings} - refreshAutocompleteSettings={refreshAutocompleteSettings} + refreshAutocompleteSettings={(selectedSettings: any) => + refreshAutocompleteSettings(settings, selectedSettings) + } settings={settings.toJSON()} /> ); diff --git a/src/plugins/console/public/application/contexts/editor_context/editor_registry.ts b/src/plugins/console/public/application/contexts/editor_context/editor_registry.ts index 64b0cddb4189b5..9efd388ef0b9ce 100644 --- a/src/plugins/console/public/application/contexts/editor_context/editor_registry.ts +++ b/src/plugins/console/public/application/contexts/editor_context/editor_registry.ts @@ -20,7 +20,7 @@ import { SenseEditor } from '../../models/sense_editor'; export class EditorRegistry { - inputEditor: SenseEditor | undefined; + private inputEditor: SenseEditor | undefined; setInputEditor(inputEditor: SenseEditor) { this.inputEditor = inputEditor; diff --git a/src/plugins/console/public/application/contexts/services_context.mock.ts b/src/plugins/console/public/application/contexts/services_context.mock.ts new file mode 100644 index 00000000000000..ae8d15a890782a --- /dev/null +++ b/src/plugins/console/public/application/contexts/services_context.mock.ts @@ -0,0 +1,43 @@ +/* + * 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 { notificationServiceMock } from '../../../../../core/public/mocks'; +import { HistoryMock } from '../../services/history.mock'; +import { SettingsMock } from '../../services/settings.mock'; +import { StorageMock } from '../../services/storage.mock'; + +import { ContextValue } from './services_context'; + +export const serviceContextMock = { + create: (): ContextValue => { + const storage = new StorageMock({} as any, 'test'); + (storage.keys as jest.Mock).mockImplementation(() => []); + return { + elasticsearchUrl: 'test', + services: { + trackUiMetric: { count: () => {}, load: () => {} }, + storage, + settings: new SettingsMock(storage), + history: new HistoryMock(storage), + notifications: notificationServiceMock.createSetupContract(), + objectStorageClient: {} as any, + }, + docLinkVersion: 'NA', + }; + }, +}; diff --git a/src/plugins/console/public/application/contexts/services_context.tsx b/src/plugins/console/public/application/contexts/services_context.tsx index 4393cab4adbc56..3d4ac3291c5ac1 100644 --- a/src/plugins/console/public/application/contexts/services_context.tsx +++ b/src/plugins/console/public/application/contexts/services_context.tsx @@ -50,7 +50,7 @@ export function ServicesContextProvider({ children, value }: ContextProps) { export const useServicesContext = () => { const context = useContext(ServicesContext); if (context === undefined) { - throw new Error('useAppContext must be used inside the AppContextProvider.'); + throw new Error('useServicesContext must be used inside the ServicesContextProvider.'); } return context; }; diff --git a/src/plugins/console/public/application/hooks/use_send_current_request_to_es/use_send_current_request_to_es.test.tsx b/src/plugins/console/public/application/hooks/use_send_current_request_to_es/use_send_current_request_to_es.test.tsx new file mode 100644 index 00000000000000..8b5312ee84cd57 --- /dev/null +++ b/src/plugins/console/public/application/hooks/use_send_current_request_to_es/use_send_current_request_to_es.test.tsx @@ -0,0 +1,108 @@ +/* + * 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. + */ + +jest.mock('./send_request_to_es', () => ({ sendRequestToES: jest.fn() })); +jest.mock('../../contexts/editor_context/editor_registry', () => ({ + instance: { getInputEditor: jest.fn() }, +})); +jest.mock('./track', () => ({ track: jest.fn() })); +jest.mock('../../contexts/request_context', () => ({ useRequestActionContext: jest.fn() })); + +import React from 'react'; +import { renderHook, act } from '@testing-library/react-hooks'; + +import { ContextValue, ServicesContextProvider } from '../../contexts'; +import { serviceContextMock } from '../../contexts/services_context.mock'; +import { useRequestActionContext } from '../../contexts/request_context'; +import { instance as editorRegistry } from '../../contexts/editor_context/editor_registry'; + +import { sendRequestToES } from './send_request_to_es'; +import { useSendCurrentRequestToES } from './use_send_current_request_to_es'; + +describe('useSendCurrentRequestToES', () => { + let mockContextValue: ContextValue; + let dispatch: (...args: any[]) => void; + const contexts = ({ children }: { children?: any }) => ( + <ServicesContextProvider value={mockContextValue}>{children}</ServicesContextProvider> + ); + + beforeEach(() => { + mockContextValue = serviceContextMock.create(); + dispatch = jest.fn(); + (useRequestActionContext as jest.Mock).mockReturnValue(dispatch); + }); + + afterEach(() => { + jest.resetAllMocks(); + }); + + it('calls send request to ES', async () => { + // Set up mocks + (mockContextValue.services.settings.toJSON as jest.Mock).mockReturnValue({}); + // This request should succeed + (sendRequestToES as jest.Mock).mockResolvedValue([]); + (editorRegistry.getInputEditor as jest.Mock).mockImplementation(() => ({ + getRequestsInRange: () => ['test'], + })); + + const { result } = renderHook(() => useSendCurrentRequestToES(), { wrapper: contexts }); + await act(() => result.current()); + expect(sendRequestToES).toHaveBeenCalledWith({ requests: ['test'] }); + + // Second call should be the request success + const [, [requestSucceededCall]] = (dispatch as jest.Mock).mock.calls; + expect(requestSucceededCall).toEqual({ type: 'requestSuccess', payload: { data: [] } }); + }); + + it('handles known errors', async () => { + // Set up mocks + (sendRequestToES as jest.Mock).mockRejectedValue({ response: 'nada' }); + (editorRegistry.getInputEditor as jest.Mock).mockImplementation(() => ({ + getRequestsInRange: () => ['test'], + })); + + const { result } = renderHook(() => useSendCurrentRequestToES(), { wrapper: contexts }); + await act(() => result.current()); + // Second call should be the request failure + const [, [requestFailedCall]] = (dispatch as jest.Mock).mock.calls; + + // The request must have concluded + expect(requestFailedCall).toEqual({ type: 'requestFail', payload: { response: 'nada' } }); + }); + + it('handles unknown errors', async () => { + // Set up mocks + (sendRequestToES as jest.Mock).mockRejectedValue(NaN /* unexpected error value */); + (editorRegistry.getInputEditor as jest.Mock).mockImplementation(() => ({ + getRequestsInRange: () => ['test'], + })); + + const { result } = renderHook(() => useSendCurrentRequestToES(), { wrapper: contexts }); + await act(() => result.current()); + // Second call should be the request failure + const [, [requestFailedCall]] = (dispatch as jest.Mock).mock.calls; + + // The request must have concluded + expect(requestFailedCall).toEqual({ type: 'requestFail', payload: undefined }); + // It also notified the user + expect(mockContextValue.services.notifications.toasts.addError).toHaveBeenCalledWith(NaN, { + title: 'Unknown Request Error', + }); + }); +}); diff --git a/src/plugins/console/public/application/hooks/use_send_current_request_to_es/use_send_current_request_to_es.ts b/src/plugins/console/public/application/hooks/use_send_current_request_to_es/use_send_current_request_to_es.ts index ef5f63b39c0a75..548366c63aa05c 100644 --- a/src/plugins/console/public/application/hooks/use_send_current_request_to_es/use_send_current_request_to_es.ts +++ b/src/plugins/console/public/application/hooks/use_send_current_request_to_es/use_send_current_request_to_es.ts @@ -64,7 +64,7 @@ export const useSendCurrentRequestToES = () => { // or templates may have changed, so we'll need to update this data. Assume that if // the user disables polling they're trying to optimize performance or otherwise // preserve resources, so they won't want this request sent either. - mappings.retrieveAutoCompleteInfo(); + mappings.retrieveAutoCompleteInfo(settings, settings.getAutocomplete()); } dispatch({ @@ -74,12 +74,16 @@ export const useSendCurrentRequestToES = () => { }, }); } catch (e) { - if (e.response?.contentType) { + if (e?.response) { dispatch({ type: 'requestFail', payload: e, }); } else { + dispatch({ + type: 'requestFail', + payload: undefined, + }); notifications.toasts.addError(e, { title: i18n.translate('console.notification.unknownRequestErrorTitle', { defaultMessage: 'Unknown Request Error', diff --git a/src/plugins/console/public/application/stores/request.ts b/src/plugins/console/public/application/stores/request.ts index fe43d9f0b74d4b..f711330df39113 100644 --- a/src/plugins/console/public/application/stores/request.ts +++ b/src/plugins/console/public/application/stores/request.ts @@ -26,7 +26,7 @@ import { ESRequestResult } from '../hooks/use_send_current_request_to_es/send_re export type Actions = | { type: 'sendRequest'; payload: undefined } | { type: 'requestSuccess'; payload: { data: ESRequestResult[] } } - | { type: 'requestFail'; payload: ESRequestResult<string> }; + | { type: 'requestFail'; payload: ESRequestResult<string> | undefined }; export interface Store { requestInFlight: boolean; diff --git a/src/plugins/console/public/lib/mappings/mappings.js b/src/plugins/console/public/lib/mappings/mappings.js index e0db361f9b422b..330147118d42cc 100644 --- a/src/plugins/console/public/lib/mappings/mappings.js +++ b/src/plugins/console/public/lib/mappings/mappings.js @@ -17,8 +17,6 @@ * under the License. */ -import { legacyBackDoorToSettings } from '../../application'; - const $ = require('jquery'); const _ = require('lodash'); const es = require('../es/es'); @@ -255,7 +253,6 @@ function clear() { } function retrieveSettings(settingsKey, settingsToRetrieve) { - const currentSettings = legacyBackDoorToSettings().getAutocomplete(); const settingKeyToPathMap = { fields: '_mapping', indices: '_aliases', @@ -263,16 +260,17 @@ function retrieveSettings(settingsKey, settingsToRetrieve) { }; // Fetch autocomplete info if setting is set to true, and if user has made changes. - if (currentSettings[settingsKey] && settingsToRetrieve[settingsKey]) { + if (settingsToRetrieve[settingsKey] === true) { return es.send('GET', settingKeyToPathMap[settingsKey], null); } else { const settingsPromise = new $.Deferred(); - // If a user has saved settings, but a field remains checked and unchanged, no need to make changes - if (currentSettings[settingsKey]) { + if (settingsToRetrieve[settingsKey] === false) { + // If the user doesn't want autocomplete suggestions, then clear any that exist + return settingsPromise.resolveWith(this, [[JSON.stringify({})]]); + } else { + // If the user doesn't want autocomplete suggestions, then clear any that exist return settingsPromise.resolve(); } - // If the user doesn't want autocomplete suggestions, then clear any that exist - return settingsPromise.resolveWith(this, [[JSON.stringify({})]]); } } @@ -293,9 +291,12 @@ function clearSubscriptions() { } } -function retrieveAutoCompleteInfo( - settingsToRetrieve = legacyBackDoorToSettings().getAutocomplete() -) { +/** + * + * @param settings Settings A way to retrieve the current settings + * @param settingsToRetrieve any + */ +function retrieveAutoCompleteInfo(settings, settingsToRetrieve) { clearSubscriptions(); const mappingPromise = retrieveSettings('fields', settingsToRetrieve); @@ -334,8 +335,8 @@ function retrieveAutoCompleteInfo( pollTimeoutId = setTimeout(() => { // This looks strange/inefficient, but it ensures correct behavior because we don't want to send // a scheduled request if the user turns off polling. - if (legacyBackDoorToSettings().getPolling()) { - retrieveAutoCompleteInfo(); + if (settings.getPolling()) { + retrieveAutoCompleteInfo(settings, settings.getAutocomplete()); } }, POLL_INTERVAL); }); diff --git a/src/plugins/console/public/services/history.mock.ts b/src/plugins/console/public/services/history.mock.ts new file mode 100644 index 00000000000000..97937a121ebdcd --- /dev/null +++ b/src/plugins/console/public/services/history.mock.ts @@ -0,0 +1,31 @@ +/* + * 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 { History } from './history'; + +export class HistoryMock extends History { + addToHistory = jest.fn(); + change = jest.fn(); + clearHistory = jest.fn(); + deleteLegacySavedEditorState = jest.fn(); + getHistory = jest.fn(); + getHistoryKeys = jest.fn(); + getLegacySavedEditorState = jest.fn(); + updateCurrentState = jest.fn(); +} diff --git a/src/plugins/console/public/services/settings.mock.ts b/src/plugins/console/public/services/settings.mock.ts new file mode 100644 index 00000000000000..bec26c1129619a --- /dev/null +++ b/src/plugins/console/public/services/settings.mock.ts @@ -0,0 +1,35 @@ +/* + * 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 { Settings } from './settings'; + +export class SettingsMock extends Settings { + getAutocomplete = jest.fn(); + getFontSize = jest.fn(); + getPolling = jest.fn(); + getTripleQuotes = jest.fn(); + getWrapMode = jest.fn(); + setAutocomplete = jest.fn(); + setFontSize = jest.fn(); + setPolling = jest.fn(); + setTripleQuotes = jest.fn(); + setWrapMode = jest.fn(); + toJSON = jest.fn(); + updateSettings = jest.fn(); +} diff --git a/src/plugins/console/public/services/storage.mock.ts b/src/plugins/console/public/services/storage.mock.ts new file mode 100644 index 00000000000000..fd7cdcce934669 --- /dev/null +++ b/src/plugins/console/public/services/storage.mock.ts @@ -0,0 +1,32 @@ +/* + * 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 { Storage } from './storage'; + +export class StorageMock extends Storage { + delete = jest.fn(); + decode = jest.fn(); + decodeKey = jest.fn(); + encodeKey = jest.fn(); + encode = jest.fn(); + has = jest.fn(); + keys = jest.fn(); + get = jest.fn(); + set = jest.fn(); +} From 02f89f04cc7d1e757443288c611aed834107c197 Mon Sep 17 00:00:00 2001 From: MadameSheema <snootchie.boochies@gmail.com> Date: Tue, 3 Mar 2020 17:51:35 +0100 Subject: [PATCH 055/120] [SIEM] Cypress preparation for Jenkins (#59013) * updates events viewer test * updates login tasks * updates ml conditional links * updates url state * updates timeline screen * updates timeline tasks * updates test files * adds jenkins needed files * ignoring isAttached lines due to a known error in Cypress (https://github.com/cypress-io/cypress/issues/4408) * updates loop script * updates readme with new cypress command explanation * removes skip Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- test/scripts/jenkins_siem_cypress.sh | 21 + x-pack/legacy/plugins/siem/cypress/README.md | 24 + .../cypress/integration/events_viewer.spec.ts | 2 +- .../integration/ml_conditional_links.spec.ts | 44 +- .../cypress/integration/url_state.spec.ts | 58 +- .../plugins/siem/cypress/screens/timeline.ts | 7 +- .../plugins/siem/cypress/tasks/common.ts | 8 +- .../plugins/siem/cypress/tasks/date_picker.ts | 23 +- .../plugins/siem/cypress/tasks/login.ts | 12 +- .../plugins/siem/cypress/tasks/timeline.ts | 26 +- x-pack/legacy/plugins/siem/package.json | 3 +- .../siem/scripts/loop_cypress_tests.js | 83 + x-pack/test/siem_cypress/config.ts | 47 + .../es_archives/auditbeat/data.json.gz | Bin 0 -> 5130292 bytes .../es_archives/auditbeat/mappings.json | 3577 +++++++++++++++++ .../es_archives/empty_kibana/data.json.gz | Bin 0 -> 225 bytes .../es_archives/empty_kibana/mappings.json | 284 ++ .../siem_cypress/ftr_provider_context.d.ts | 11 + x-pack/test/siem_cypress/runner.ts | 37 + x-pack/test/siem_cypress/services.ts | 7 + 20 files changed, 4210 insertions(+), 64 deletions(-) create mode 100644 test/scripts/jenkins_siem_cypress.sh create mode 100644 x-pack/legacy/plugins/siem/scripts/loop_cypress_tests.js create mode 100644 x-pack/test/siem_cypress/config.ts create mode 100644 x-pack/test/siem_cypress/es_archives/auditbeat/data.json.gz create mode 100644 x-pack/test/siem_cypress/es_archives/auditbeat/mappings.json create mode 100644 x-pack/test/siem_cypress/es_archives/empty_kibana/data.json.gz create mode 100644 x-pack/test/siem_cypress/es_archives/empty_kibana/mappings.json create mode 100644 x-pack/test/siem_cypress/ftr_provider_context.d.ts create mode 100644 x-pack/test/siem_cypress/runner.ts create mode 100644 x-pack/test/siem_cypress/services.ts diff --git a/test/scripts/jenkins_siem_cypress.sh b/test/scripts/jenkins_siem_cypress.sh new file mode 100644 index 00000000000000..c7157e97b36ccf --- /dev/null +++ b/test/scripts/jenkins_siem_cypress.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +source test/scripts/jenkins_test_setup.sh + +installDir="$PARENT_DIR/install/kibana" +destDir="${installDir}-${CI_WORKER_NUMBER}" +cp -R "$installDir" "$destDir" + +export KIBANA_INSTALL_DIR="$destDir" + +echo " -> Running SIEM cypress tests" +cd "$XPACK_DIR" + +checks-reporter-with-killswitch "SIEM Cypress Tests" \ + node scripts/functional_tests \ + --debug --bail \ + --kibana-install-dir "$KIBANA_INSTALL_DIR" \ + --config test/siem_cypress/config.ts + +echo "" +echo "" diff --git a/x-pack/legacy/plugins/siem/cypress/README.md b/x-pack/legacy/plugins/siem/cypress/README.md index a57fe0d361b8ff..41137ce6d8a9d0 100644 --- a/x-pack/legacy/plugins/siem/cypress/README.md +++ b/x-pack/legacy/plugins/siem/cypress/README.md @@ -210,6 +210,30 @@ cd x-pack/legacy/plugins/siem CYPRESS_baseUrl=http://localhost:5601 CYPRESS_ELASTICSEARCH_USERNAME=elastic CYPRESS_ELASTICSEARCH_PASSWORD=<password> yarn cypress:run ``` +## Running (Headless) Tests on the Command Line as a Jenkins execution + +To run (headless) tests as a Jenkins execution. + +1. First bootstrap kibana changes from the Kibana root directory: + +```sh +yarn kbn bootstrap +``` + +2. Launch Cypress command line test runner: + +```sh +cd x-pack/legacy/plugins/siem +yarn cypress:run-as-ci +``` + +Note that with this type of execution you don't need to have running a kibana and elasticsearch instance. This is because + the command, as it would happen in the CI, will launch the instances. The elasticsearch instance will be fed with the data + placed in: `x-pack/test/siem_cypress/es_archives`. + +As in this case we want to mimic a CI execution we want to execute the tests with the same set of data, this is why +in this case does not make sense to override Cypress environment variables. + ## Reporting When Cypress tests are run on the command line via `yarn cypress:run`, diff --git a/x-pack/legacy/plugins/siem/cypress/integration/events_viewer.spec.ts b/x-pack/legacy/plugins/siem/cypress/integration/events_viewer.spec.ts index 446db89ec09dc0..aa463b01fd1902 100644 --- a/x-pack/legacy/plugins/siem/cypress/integration/events_viewer.spec.ts +++ b/x-pack/legacy/plugins/siem/cypress/integration/events_viewer.spec.ts @@ -134,7 +134,7 @@ describe('Events Viewer', () => { }); it('filters the events by applying filter criteria from the search bar at the top of the page', () => { - const filterInput = '4bf34c1c-eaa9-46de-8921-67a4ccc49829'; // this will never match real data + const filterInput = 'aa7ca589f1b8220002f2fc61c64cfbf1'; // this will never match real data cy.get(HEADER_SUBTITLE) .invoke('text') .then(initialNumberOfEvents => { diff --git a/x-pack/legacy/plugins/siem/cypress/integration/ml_conditional_links.spec.ts b/x-pack/legacy/plugins/siem/cypress/integration/ml_conditional_links.spec.ts index b02ed1a5e4c943..328ff7582efd68 100644 --- a/x-pack/legacy/plugins/siem/cypress/integration/ml_conditional_links.spec.ts +++ b/x-pack/legacy/plugins/siem/cypress/integration/ml_conditional_links.spec.ts @@ -6,7 +6,7 @@ import { KQL_INPUT } from '../screens/siem_header'; -import { loginAndWaitForPage } from '../tasks/login'; +import { loginAndWaitForPageWithoutDateRange } from '../tasks/login'; import { mlHostMultiHostKqlQuery, @@ -26,7 +26,7 @@ import { describe('ml conditional links', () => { it('sets the KQL from a single IP with a value for the query', () => { - loginAndWaitForPage(mlNetworkSingleIpKqlQuery); + loginAndWaitForPageWithoutDateRange(mlNetworkSingleIpKqlQuery); cy.get(KQL_INPUT).should( 'have.attr', 'value', @@ -35,7 +35,7 @@ describe('ml conditional links', () => { }); it('sets the KQL from a multiple IPs with a null for the query', () => { - loginAndWaitForPage(mlNetworkMultipleIpNullKqlQuery); + loginAndWaitForPageWithoutDateRange(mlNetworkMultipleIpNullKqlQuery); cy.get(KQL_INPUT).should( 'have.attr', 'value', @@ -44,7 +44,7 @@ describe('ml conditional links', () => { }); it('sets the KQL from a multiple IPs with a value for the query', () => { - loginAndWaitForPage(mlNetworkMultipleIpKqlQuery); + loginAndWaitForPageWithoutDateRange(mlNetworkMultipleIpKqlQuery); cy.get(KQL_INPUT).should( 'have.attr', 'value', @@ -53,7 +53,7 @@ describe('ml conditional links', () => { }); it('sets the KQL from a $ip$ with a value for the query', () => { - loginAndWaitForPage(mlNetworkKqlQuery); + loginAndWaitForPageWithoutDateRange(mlNetworkKqlQuery); cy.get(KQL_INPUT).should( 'have.attr', 'value', @@ -62,7 +62,7 @@ describe('ml conditional links', () => { }); it('sets the KQL from a single host name with a value for query', () => { - loginAndWaitForPage(mlHostSingleHostKqlQuery); + loginAndWaitForPageWithoutDateRange(mlHostSingleHostKqlQuery); cy.get(KQL_INPUT).should( 'have.attr', 'value', @@ -71,7 +71,7 @@ describe('ml conditional links', () => { }); it('sets the KQL from a multiple host names with null for query', () => { - loginAndWaitForPage(mlHostMultiHostNullKqlQuery); + loginAndWaitForPageWithoutDateRange(mlHostMultiHostNullKqlQuery); cy.get(KQL_INPUT).should( 'have.attr', 'value', @@ -80,7 +80,7 @@ describe('ml conditional links', () => { }); it('sets the KQL from a multiple host names with a value for query', () => { - loginAndWaitForPage(mlHostMultiHostKqlQuery); + loginAndWaitForPageWithoutDateRange(mlHostMultiHostKqlQuery); cy.get(KQL_INPUT).should( 'have.attr', 'value', @@ -89,7 +89,7 @@ describe('ml conditional links', () => { }); it('sets the KQL from a undefined/null host name but with a value for query', () => { - loginAndWaitForPage(mlHostVariableHostKqlQuery); + loginAndWaitForPageWithoutDateRange(mlHostVariableHostKqlQuery); cy.get(KQL_INPUT).should( 'have.attr', 'value', @@ -98,7 +98,7 @@ describe('ml conditional links', () => { }); it('redirects from a single IP with a null for the query', () => { - loginAndWaitForPage(mlNetworkSingleIpNullKqlQuery); + loginAndWaitForPageWithoutDateRange(mlNetworkSingleIpNullKqlQuery); cy.url().should( 'include', '/app/siem#/network/ip/127.0.0.1/source?timerange=(global:(linkTo:!(timeline),timerange:(from:1566990000000,kind:absolute,to:1567000799999)),timeline:(linkTo:!(global),timerange:(from:1566990000000,kind:absolute,to:1567000799999)))' @@ -106,7 +106,7 @@ describe('ml conditional links', () => { }); it('redirects from a single IP with a value for the query', () => { - loginAndWaitForPage(mlNetworkSingleIpKqlQuery); + loginAndWaitForPageWithoutDateRange(mlNetworkSingleIpKqlQuery); cy.url().should( 'include', "/app/siem#/network/ip/127.0.0.1/source?query=(language:kuery,query:'(process.name:%20%22conhost.exe%22%20or%20process.name:%20%22sc.exe%22)')&timerange=(global:(linkTo:!(timeline),timerange:(from:1566990000000,kind:absolute,to:1567000799999)),timeline:(linkTo:!(global),timerange:(from:1566990000000,kind:absolute,to:1567000799999)))" @@ -114,7 +114,7 @@ describe('ml conditional links', () => { }); it('redirects from a multiple IPs with a null for the query', () => { - loginAndWaitForPage(mlNetworkMultipleIpNullKqlQuery); + loginAndWaitForPageWithoutDateRange(mlNetworkMultipleIpNullKqlQuery); cy.url().should( 'include', "app/siem#/network/flows?query=(language:kuery,query:'((source.ip:%20%22127.0.0.1%22%20or%20destination.ip:%20%22127.0.0.1%22)%20or%20(source.ip:%20%22127.0.0.2%22%20or%20destination.ip:%20%22127.0.0.2%22))')&timerange=(global:(linkTo:!(timeline),timerange:(from:1566990000000,kind:absolute,to:1567000799999)),timeline:(linkTo:!(global),timerange:(from:1566990000000,kind:absolute,to:1567000799999))" @@ -122,7 +122,7 @@ describe('ml conditional links', () => { }); it('redirects from a multiple IPs with a value for the query', () => { - loginAndWaitForPage(mlNetworkMultipleIpKqlQuery); + loginAndWaitForPageWithoutDateRange(mlNetworkMultipleIpKqlQuery); cy.url().should( 'include', "/app/siem#/network/flows?query=(language:kuery,query:'((source.ip:%20%22127.0.0.1%22%20or%20destination.ip:%20%22127.0.0.1%22)%20or%20(source.ip:%20%22127.0.0.2%22%20or%20destination.ip:%20%22127.0.0.2%22))%20and%20((process.name:%20%22conhost.exe%22%20or%20process.name:%20%22sc.exe%22))')&timerange=(global:(linkTo:!(timeline),timerange:(from:1566990000000,kind:absolute,to:1567000799999)),timeline:(linkTo:!(global),timerange:(from:1566990000000,kind:absolute,to:1567000799999)))" @@ -130,7 +130,7 @@ describe('ml conditional links', () => { }); it('redirects from a $ip$ with a null query', () => { - loginAndWaitForPage(mlNetworkNullKqlQuery); + loginAndWaitForPageWithoutDateRange(mlNetworkNullKqlQuery); cy.url().should( 'include', '/app/siem#/network/flows?timerange=(global:(linkTo:!(timeline),timerange:(from:1566990000000,kind:absolute,to:1567000799999)),timeline:(linkTo:!(global),timerange:(from:1566990000000,kind:absolute,to:1567000799999)))' @@ -138,7 +138,7 @@ describe('ml conditional links', () => { }); it('redirects from a $ip$ with a value for the query', () => { - loginAndWaitForPage(mlNetworkKqlQuery); + loginAndWaitForPageWithoutDateRange(mlNetworkKqlQuery); cy.url().should( 'include', "/app/siem#/network/flows?query=(language:kuery,query:'(process.name:%20%22conhost.exe%22%20or%20process.name:%20%22sc.exe%22)')&timerange=(global:(linkTo:!(timeline),timerange:(from:1566990000000,kind:absolute,to:1567000799999)),timeline:(linkTo:!(global),timerange:(from:1566990000000,kind:absolute,to:1567000799999)))" @@ -146,7 +146,7 @@ describe('ml conditional links', () => { }); it('redirects from a single host name with a null for the query', () => { - loginAndWaitForPage(mlHostSingleHostNullKqlQuery); + loginAndWaitForPageWithoutDateRange(mlHostSingleHostNullKqlQuery); cy.url().should( 'include', '/app/siem#/hosts/siem-windows/anomalies?timerange=(global:(linkTo:!(timeline),timerange:(from:1559800800000,kind:absolute,to:1559887199999)),timeline:(linkTo:!(global),timerange:(from:1559800800000,kind:absolute,to:1559887199999)))' @@ -154,7 +154,7 @@ describe('ml conditional links', () => { }); it('redirects from a host name with a variable in the query', () => { - loginAndWaitForPage(mlHostSingleHostKqlQueryVariable); + loginAndWaitForPageWithoutDateRange(mlHostSingleHostKqlQueryVariable); cy.url().should( 'include', '/app/siem#/hosts/siem-windows/anomalies?timerange=(global:(linkTo:!(timeline),timerange:(from:1559800800000,kind:absolute,to:1559887199999)),timeline:(linkTo:!(global),timerange:(from:1559800800000,kind:absolute,to:1559887199999)))' @@ -162,7 +162,7 @@ describe('ml conditional links', () => { }); it('redirects from a single host name with a value for query', () => { - loginAndWaitForPage(mlHostSingleHostKqlQuery); + loginAndWaitForPageWithoutDateRange(mlHostSingleHostKqlQuery); cy.url().should( 'include', "/app/siem#/hosts/siem-windows/anomalies?query=(language:kuery,query:'(process.name:%20%22conhost.exe%22%20or%20process.name:%20%22sc.exe%22)')&timerange=(global:(linkTo:!(timeline),timerange:(from:1559800800000,kind:absolute,to:1559887199999)),timeline:(linkTo:!(global),timerange:(from:1559800800000,kind:absolute,to:1559887199999)))" @@ -170,7 +170,7 @@ describe('ml conditional links', () => { }); it('redirects from a multiple host names with null for query', () => { - loginAndWaitForPage(mlHostMultiHostNullKqlQuery); + loginAndWaitForPageWithoutDateRange(mlHostMultiHostNullKqlQuery); cy.url().should( 'include', "/app/siem#/hosts/anomalies?query=(language:kuery,query:'(host.name:%20%22siem-windows%22%20or%20host.name:%20%22siem-suricata%22)')&timerange=(global:(linkTo:!(timeline),timerange:(from:1559800800000,kind:absolute,to:1559887199999)),timeline:(linkTo:!(global),timerange:(from:1559800800000,kind:absolute,to:1559887199999)))" @@ -178,7 +178,7 @@ describe('ml conditional links', () => { }); it('redirects from a multiple host names with a value for query', () => { - loginAndWaitForPage(mlHostMultiHostKqlQuery); + loginAndWaitForPageWithoutDateRange(mlHostMultiHostKqlQuery); cy.url().should( 'include', "/app/siem#/hosts/anomalies?query=(language:kuery,query:'(host.name:%20%22siem-windows%22%20or%20host.name:%20%22siem-suricata%22)%20and%20((process.name:%20%22conhost.exe%22%20or%20process.name:%20%22sc.exe%22))')&timerange=(global:(linkTo:!(timeline),timerange:(from:1559800800000,kind:absolute,to:1559887199999)),timeline:(linkTo:!(global),timerange:(from:1559800800000,kind:absolute,to:1559887199999)))" @@ -186,7 +186,7 @@ describe('ml conditional links', () => { }); it('redirects from a undefined/null host name with a null for the KQL', () => { - loginAndWaitForPage(mlHostVariableHostNullKqlQuery); + loginAndWaitForPageWithoutDateRange(mlHostVariableHostNullKqlQuery); cy.url().should( 'include', '/app/siem#/hosts/anomalies?timerange=(global:(linkTo:!(timeline),timerange:(from:1559800800000,kind:absolute,to:1559887199999)),timeline:(linkTo:!(global),timerange:(from:1559800800000,kind:absolute,to:1559887199999)))' @@ -194,7 +194,7 @@ describe('ml conditional links', () => { }); it('redirects from a undefined/null host name but with a value for query', () => { - loginAndWaitForPage(mlHostVariableHostKqlQuery); + loginAndWaitForPageWithoutDateRange(mlHostVariableHostKqlQuery); cy.url().should( 'include', "/app/siem#/hosts/anomalies?query=(language:kuery,query:'(process.name:%20%22conhost.exe%22%20or%20process.name:%20%22sc.exe%22)')&timerange=(global:(linkTo:!(timeline),timerange:(from:1559800800000,kind:absolute,to:1559887199999)),timeline:(linkTo:!(global),timerange:(from:1559800800000,kind:absolute,to:1559887199999)))" diff --git a/x-pack/legacy/plugins/siem/cypress/integration/url_state.spec.ts b/x-pack/legacy/plugins/siem/cypress/integration/url_state.spec.ts index 11c0562eb3638d..25e50194f543db 100644 --- a/x-pack/legacy/plugins/siem/cypress/integration/url_state.spec.ts +++ b/x-pack/legacy/plugins/siem/cypress/integration/url_state.spec.ts @@ -5,6 +5,7 @@ */ import { + DATE_PICKER_APPLY_BUTTON_TIMELINE, DATE_PICKER_END_DATE_POPOVER_BUTTON, DATE_PICKER_END_DATE_POPOVER_BUTTON_TIMELINE, DATE_PICKER_START_DATE_POPOVER_BUTTON, @@ -15,7 +16,7 @@ import { ANOMALIES_TAB } from '../screens/hosts/main'; import { BREADCRUMBS, HOSTS, KQL_INPUT, NETWORK } from '../screens/siem_header'; import { SERVER_SIDE_EVENT_COUNT, TIMELINE_TITLE } from '../screens/timeline'; -import { loginAndWaitForPage } from '../tasks/login'; +import { loginAndWaitForPage, loginAndWaitForPageWithoutDateRange } from '../tasks/login'; import { setStartDate, setEndDate, @@ -30,7 +31,12 @@ import { openAllHosts } from '../tasks/hosts/main'; import { waitForIpsTableToBeLoaded } from '../tasks/network/flows'; import { clearSearchBar, kqlSearch, navigateFromHeaderTo } from '../tasks/siem_header'; import { openTimeline } from '../tasks/siem_main'; -import { addNameToTimeline, executeTimelineKQL } from '../tasks/timeline'; +import { + addDescriptionToTimeline, + addNameToTimeline, + closeTimeline, + executeTimelineKQL, +} from '../tasks/timeline'; import { HOSTS_PAGE } from '../urls/navigation'; import { ABSOLUTE_DATE_RANGE } from '../urls/state'; @@ -58,7 +64,7 @@ const ABSOLUTE_DATE = { describe('url state', () => { it('sets the global start and end dates from the url', () => { - loginAndWaitForPage(ABSOLUTE_DATE_RANGE.url); + loginAndWaitForPageWithoutDateRange(ABSOLUTE_DATE_RANGE.url); cy.get(DATE_PICKER_START_DATE_POPOVER_BUTTON).should( 'have.attr', 'title', @@ -72,7 +78,7 @@ describe('url state', () => { }); it('sets the url state when start and end date are set', () => { - loginAndWaitForPage(ABSOLUTE_DATE_RANGE.url); + loginAndWaitForPageWithoutDateRange(ABSOLUTE_DATE_RANGE.url); setStartDate(ABSOLUTE_DATE.newStartTimeTyped); updateDates(); waitForIpsTableToBeLoaded(); @@ -88,7 +94,7 @@ describe('url state', () => { }); it('sets the timeline start and end dates from the url when locked to global time', () => { - loginAndWaitForPage(ABSOLUTE_DATE_RANGE.url); + loginAndWaitForPageWithoutDateRange(ABSOLUTE_DATE_RANGE.url); openTimeline(); cy.get(DATE_PICKER_START_DATE_POPOVER_BUTTON_TIMELINE).should( @@ -104,8 +110,7 @@ describe('url state', () => { }); it('sets the timeline start and end dates independently of the global start and end dates when times are unlocked', () => { - loginAndWaitForPage(ABSOLUTE_DATE_RANGE.urlUnlinked); - + loginAndWaitForPageWithoutDateRange(ABSOLUTE_DATE_RANGE.urlUnlinked); cy.get(DATE_PICKER_START_DATE_POPOVER_BUTTON).should( 'have.attr', 'title', @@ -132,7 +137,7 @@ describe('url state', () => { }); it('sets the url state when timeline/global date pickers are unlinked and timeline start and end date are set', () => { - loginAndWaitForPage(ABSOLUTE_DATE_RANGE.urlUnlinked); + loginAndWaitForPageWithoutDateRange(ABSOLUTE_DATE_RANGE.urlUnlinked); openTimeline(); setTimelineStartDate(ABSOLUTE_DATE.newStartTimeTyped); updateTimelineDates(); @@ -148,24 +153,24 @@ describe('url state', () => { }); it('sets kql on network page', () => { - loginAndWaitForPage(ABSOLUTE_DATE_RANGE.urlKqlNetworkNetwork); + loginAndWaitForPageWithoutDateRange(ABSOLUTE_DATE_RANGE.urlKqlNetworkNetwork); cy.get(KQL_INPUT).should('have.attr', 'value', 'source.ip: "10.142.0.9"'); }); it('sets kql on hosts page', () => { - loginAndWaitForPage(ABSOLUTE_DATE_RANGE.urlKqlHostsHosts); + loginAndWaitForPageWithoutDateRange(ABSOLUTE_DATE_RANGE.urlKqlHostsHosts); cy.get(KQL_INPUT).should('have.attr', 'value', 'source.ip: "10.142.0.9"'); }); it('sets the url state when kql is set', () => { - loginAndWaitForPage(ABSOLUTE_DATE_RANGE.url); + loginAndWaitForPageWithoutDateRange(ABSOLUTE_DATE_RANGE.url); kqlSearch('source.ip: "10.142.0.9" {enter}'); cy.url().should('include', `query=(language:kuery,query:'source.ip:%20%2210.142.0.9%22%20')`); }); it('sets the url state when kql is set and check if href reflect this change', () => { - loginAndWaitForPage(ABSOLUTE_DATE_RANGE.url); + loginAndWaitForPageWithoutDateRange(ABSOLUTE_DATE_RANGE.url); kqlSearch('source.ip: "10.142.0.9" {enter}'); navigateFromHeaderTo(HOSTS); @@ -177,7 +182,7 @@ describe('url state', () => { }); it('sets KQL in host page and detail page and check if href match on breadcrumb, tabs and subTabs', () => { - loginAndWaitForPage(ABSOLUTE_DATE_RANGE.urlHostNew); + loginAndWaitForPageWithoutDateRange(ABSOLUTE_DATE_RANGE.urlHostNew); kqlSearch('host.name: "siem-kibana" {enter}'); openAllHosts(); waitForAllHostsToBeLoaded(); @@ -223,7 +228,7 @@ describe('url state', () => { }); it('Do not clears kql when navigating to a new page', () => { - loginAndWaitForPage(ABSOLUTE_DATE_RANGE.urlKqlHostsHosts); + loginAndWaitForPageWithoutDateRange(ABSOLUTE_DATE_RANGE.urlKqlHostsHosts); navigateFromHeaderTo(NETWORK); cy.get(KQL_INPUT).should('have.attr', 'value', 'source.ip: "10.142.0.9"'); @@ -241,12 +246,23 @@ describe('url state', () => { cy.wrap(intCount).should('be.above', 0); }); - const bestTimelineName = 'The Best Timeline'; - addNameToTimeline(bestTimelineName); - - cy.url().should('include', 'timeline='); - cy.visit( - `/app/siem#/timelines?timerange=(global:(linkTo:!(),timerange:(from:1565274377369,kind:absolute,to:1565360777369)),timeline:(linkTo:!(),timerange:(from:1565274377369,kind:absolute,to:1565360777369)))` - ).then(() => cy.get(TIMELINE_TITLE).should('have.attr', 'value', bestTimelineName)); + const timelineName = 'SIEM'; + addNameToTimeline(timelineName); + addDescriptionToTimeline('This is the best timeline of the world'); + + cy.url({ timeout: 30000 }).should('match', /\w*-\w*-\w*-\w*-\w*/); + cy.url().then(url => { + const matched = url.match(/\w*-\w*-\w*-\w*-\w*/); + const newTimelineId = matched && matched.length > 0 ? matched[0] : 'null'; + expect(matched).to.have.lengthOf(1); + closeTimeline(); + cy.visit('/app/kibana'); + cy.visit(`/app/siem#/overview?timeline\=(id:'${newTimelineId}',isOpen:!t)`); + cy.contains('a', 'SIEM'); + cy.get(DATE_PICKER_APPLY_BUTTON_TIMELINE) + .invoke('text') + .should('not.equal', 'Updating'); + cy.get(TIMELINE_TITLE).should('have.attr', 'value', timelineName); + }); }); }); diff --git a/x-pack/legacy/plugins/siem/cypress/screens/timeline.ts b/x-pack/legacy/plugins/siem/cypress/screens/timeline.ts index 1640647b45427a..5638b8d23e83a4 100644 --- a/x-pack/legacy/plugins/siem/cypress/screens/timeline.ts +++ b/x-pack/legacy/plugins/siem/cypress/screens/timeline.ts @@ -24,8 +24,9 @@ export const TIMELINE_DATA_PROVIDERS = '[data-test-subj="dataProviders"]'; export const TIMELINE_DATA_PROVIDERS_EMPTY = '[data-test-subj="dataProviders"] [data-test-subj="empty"]'; -export const TIMELINE_DROPPED_DATA_PROVIDERS = - '[data-test-subj="dataProviders"] [data-test-subj="providerContainer"]'; +export const TIMELINE_DESCRIPTION = '[data-test-subj="timeline-description"]'; + +export const TIMELINE_DROPPED_DATA_PROVIDERS = '[data-test-subj="providerContainer"]'; export const TIMELINE_FIELDS_BUTTON = '[data-test-subj="timeline"] [data-test-subj="show-field-browser"]'; @@ -43,8 +44,6 @@ export const TIMELINE_TITLE = '[data-test-subj="timeline-title"]'; export const TIMESTAMP_HEADER_FIELD = '[data-test-subj="header-text-@timestamp"]'; -export const TIMELINE_TOGGLE_BUTTON = '[data-test-subj="flyoutOverlay"]'; - export const TIMESTAMP_TOGGLE_FIELD = '[data-test-subj="toggle-field-@timestamp"]'; export const TOGGLE_TIMELINE_EXPAND_EVENT = '[data-test-subj="expand-event"]'; diff --git a/x-pack/legacy/plugins/siem/cypress/tasks/common.ts b/x-pack/legacy/plugins/siem/cypress/tasks/common.ts index e02d3506b33bc1..a99471d92828e0 100644 --- a/x-pack/legacy/plugins/siem/cypress/tasks/common.ts +++ b/x-pack/legacy/plugins/siem/cypress/tasks/common.ts @@ -23,14 +23,14 @@ export const drag = (subject: JQuery<HTMLElement>) => { clientY: subjectLocation.top, force: true, }) - .wait(1) + .wait(5) .trigger('mousemove', { button: primaryButton, clientX: subjectLocation.left + dndSloppyClickDetectionThreshold, clientY: subjectLocation.top, force: true, }) - .wait(1); + .wait(5); }; /** Drags the subject being dragged on the specified drop target, but does not drop it */ @@ -44,7 +44,7 @@ export const dragWithoutDrop = (dropTarget: JQuery<HTMLElement>) => { export const drop = (dropTarget: JQuery<HTMLElement>) => { cy.wrap(dropTarget) .trigger('mousemove', { button: primaryButton, force: true }) - .wait(1) + .wait(5) .trigger('mouseup', { force: true }) - .wait(1); + .wait(5); }; diff --git a/x-pack/legacy/plugins/siem/cypress/tasks/date_picker.ts b/x-pack/legacy/plugins/siem/cypress/tasks/date_picker.ts index 9d79b73a52b08a..0d778b737380b4 100644 --- a/x-pack/legacy/plugins/siem/cypress/tasks/date_picker.ts +++ b/x-pack/legacy/plugins/siem/cypress/tasks/date_picker.ts @@ -46,7 +46,14 @@ export const setTimelineEndDate = (date: string) => { .first() .click({ force: true }); - cy.get(DATE_PICKER_ABSOLUTE_INPUT).type(`{selectall}{backspace}${date}{enter}`); + cy.get(DATE_PICKER_ABSOLUTE_INPUT).click({ force: true }); + cy.get(DATE_PICKER_ABSOLUTE_INPUT).then($el => { + // @ts-ignore + if (Cypress.dom.isAttached($el)) { + cy.wrap($el).click({ force: true }); + } + cy.wrap($el).type(`{selectall}{backspace}${date}{enter}`); + }); }; export const setTimelineStartDate = (date: string) => { @@ -58,7 +65,14 @@ export const setTimelineStartDate = (date: string) => { .first() .click({ force: true }); - cy.get(DATE_PICKER_ABSOLUTE_INPUT).type(`{selectall}{backspace}${date}{enter}`); + cy.get(DATE_PICKER_ABSOLUTE_INPUT).click({ force: true }); + cy.get(DATE_PICKER_ABSOLUTE_INPUT).then($el => { + // @ts-ignore + if (Cypress.dom.isAttached($el)) { + cy.wrap($el).click({ force: true }); + } + cy.wrap($el).type(`{selectall}{backspace}${date}{enter}`); + }); }; export const updateDates = () => { @@ -69,5 +83,8 @@ export const updateDates = () => { }; export const updateTimelineDates = () => { - cy.get(DATE_PICKER_APPLY_BUTTON_TIMELINE).click({ force: true }); + cy.get(DATE_PICKER_APPLY_BUTTON_TIMELINE) + .click({ force: true }) + .invoke('text') + .should('not.equal', 'Updating'); }; diff --git a/x-pack/legacy/plugins/siem/cypress/tasks/login.ts b/x-pack/legacy/plugins/siem/cypress/tasks/login.ts index 1b982d56d79a4f..883bdb2a4820a3 100644 --- a/x-pack/legacy/plugins/siem/cypress/tasks/login.ts +++ b/x-pack/legacy/plugins/siem/cypress/tasks/login.ts @@ -120,10 +120,16 @@ const loginViaConfig = () => { */ export const loginAndWaitForPage = (url: string) => { login(); - - cy.visit(`${Cypress.config().baseUrl}${url}`); - cy.viewport('macbook-15'); + cy.visit( + `${url}?timerange=(global:(linkTo:!(timeline),timerange:(from:1547914976217,fromStr:'2019-01-19T16:22:56.217Z',kind:relative,to:1579537385745,toStr:now)),timeline:(linkTo:!(global),timerange:(from:1547914976217,fromStr:'2019-01-19T16:22:56.217Z',kind:relative,to:1579537385745,toStr:now)))` + ); + cy.contains('a', 'SIEM'); +}; +export const loginAndWaitForPageWithoutDateRange = (url: string) => { + login(); + cy.viewport('macbook-15'); + cy.visit(url); cy.contains('a', 'SIEM'); }; diff --git a/x-pack/legacy/plugins/siem/cypress/tasks/timeline.ts b/x-pack/legacy/plugins/siem/cypress/tasks/timeline.ts index c218d5153356b6..7873a76bf99f13 100644 --- a/x-pack/legacy/plugins/siem/cypress/tasks/timeline.ts +++ b/x-pack/legacy/plugins/siem/cypress/tasks/timeline.ts @@ -4,6 +4,8 @@ * you may not use this file except in compliance with the Elastic License. */ +import { DATE_PICKER_APPLY_BUTTON_TIMELINE } from '../screens/date_picker'; + import { CLOSE_TIMELINE_BTN, CREATE_NEW_TIMELINE, @@ -12,6 +14,7 @@ import { ID_TOGGLE_FIELD, SEARCH_OR_FILTER_CONTAINER, SERVER_SIDE_EVENT_COUNT, + TIMELINE_DESCRIPTION, TIMELINE_FIELDS_BUTTON, TIMELINE_INSPECT_BUTTON, TIMELINE_SETTINGS_ICON, @@ -24,14 +27,31 @@ import { drag, drop } from '../tasks/common'; export const hostExistsQuery = 'host.name: *'; +export const addDescriptionToTimeline = (description: string) => { + cy.get(TIMELINE_DESCRIPTION).type(`${description}{enter}`); + cy.get(DATE_PICKER_APPLY_BUTTON_TIMELINE) + .click() + .invoke('text') + .should('not.equal', 'Updating'); +}; + +export const addNameToTimeline = (name: string) => { + cy.get(TIMELINE_TITLE).type(`${name}{enter}`); + cy.get(TIMELINE_TITLE).should('have.attr', 'value', name); +}; + export const checkIdToggleField = () => { - cy.get(ID_TOGGLE_FIELD).should('not.exist'); + cy.get(ID_HEADER_FIELD).should('not.exist'); cy.get(ID_TOGGLE_FIELD).check({ force: true, }); }; +export const closeTimeline = () => { + cy.get(CLOSE_TIMELINE_BTN).click({ force: true }); +}; + export const createNewTimeline = () => { cy.get(TIMELINE_SETTINGS_ICON).click({ force: true }); cy.get(CREATE_NEW_TIMELINE).click(); @@ -86,7 +106,3 @@ export const dragAndDropIdToggleFieldToTimeline = () => { drop(headersDropArea) ); }; - -export const addNameToTimeline = (name: string) => { - cy.get(TIMELINE_TITLE).type(name); -}; diff --git a/x-pack/legacy/plugins/siem/package.json b/x-pack/legacy/plugins/siem/package.json index 558ac013e5963b..ad4a6e86ffc88c 100644 --- a/x-pack/legacy/plugins/siem/package.json +++ b/x-pack/legacy/plugins/siem/package.json @@ -8,7 +8,8 @@ "extract-mitre-attacks": "node scripts/extract_tactics_techniques_mitre.js & node ../../../../scripts/eslint ./public/pages/detection_engine/mitre/mitre_tactics_techniques.ts --fix", "build-graphql-types": "node scripts/generate_types_from_graphql.js", "cypress:open": "../../../node_modules/.bin/cypress open", - "cypress:run": "../../../node_modules/.bin/cypress run --spec ./cypress/integration/**/*.spec.ts --reporter ../../../node_modules/cypress-multi-reporters --reporter-options configFile=./reporter_config.json; status=$?; ../../../node_modules/.bin/mochawesome-merge --reportDir ../../../../target/kibana-siem/cypress/results > ../../../../target/kibana-siem/cypress/results/output.json; ../../../../node_modules/.bin/marge ../../../../target/kibana-siem/cypress/results/output.json --reportDir ../../../../target/kibana-siem/cypress/results; mkdir -p ../../../../target/junit && cp ../../../../target/kibana-siem/cypress/results/*.xml ../../../../target/junit/ && exit $status;" + "cypress:run": "../../../node_modules/.bin/cypress run --spec ./cypress/integration/**/*.spec.ts --reporter ../../../node_modules/cypress-multi-reporters --reporter-options configFile=./reporter_config.json; status=$?; ../../../node_modules/.bin/mochawesome-merge --reportDir ../../../../target/kibana-siem/cypress/results > ../../../../target/kibana-siem/cypress/results/output.json; ../../../../node_modules/.bin/marge ../../../../target/kibana-siem/cypress/results/output.json --reportDir ../../../../target/kibana-siem/cypress/results; mkdir -p ../../../../target/junit && cp ../../../../target/kibana-siem/cypress/results/*.xml ../../../../target/junit/ && exit $status;", + "cypress:run-as-ci": "node ../../../../scripts/functional_tests --config ../../../test/siem_cypress/config.ts" }, "devDependencies": { "@types/lodash": "^4.14.110", diff --git a/x-pack/legacy/plugins/siem/scripts/loop_cypress_tests.js b/x-pack/legacy/plugins/siem/scripts/loop_cypress_tests.js new file mode 100644 index 00000000000000..3e2891df279078 --- /dev/null +++ b/x-pack/legacy/plugins/siem/scripts/loop_cypress_tests.js @@ -0,0 +1,83 @@ +/* + * 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. + */ + +const fs = require('fs'); +const os = require('os'); +const process = require('process'); +const spawn = require('child_process').spawn; +/* eslint-disable no-process-exit */ +const MUST_RUN_FROM_DIR = 'kibana'; +const OUTPUT_DIR = 'target'; +const OUTPUT_FILE = `${OUTPUT_DIR}/loop-cypress-tests.txt`; +const createOutputDir = () => { + fs.mkdir(OUTPUT_DIR, { recursive: true }, err => { + if (err) throw err; + }); +}; +const showUsage = () => { + const scriptName = process.argv[1].slice(process.argv[1].lastIndexOf('/') + 1); + console.log(`\nUsage: ${scriptName} <times-to-run>`, `\nExample: ${scriptName} 5`); +}; + +const exitIfIncorrectWorkingDir = () => { + if (!process.cwd().endsWith(`/${MUST_RUN_FROM_DIR}`)) { + console.error( + `\nERROR: This script must be run from the '${MUST_RUN_FROM_DIR}' directory, but it was ran from '${process.cwd()}' instead.` + ); + showUsage(); + process.exit(1); + } +}; +const exitIfTimesToRunIsInvalid = timesToRun => { + if (!timesToRun > 0) { + console.error( + '\nERROR: You must specify a valid number of times to run the SIEM Cypress tests.' + ); + showUsage(); + process.exit(1); + } +}; +const spawnChild = async () => { + const child = spawn('node', [ + 'scripts/functional_tests', + '--config', + 'x-pack/test/siem_cypress/config.ts', + ]); + for await (const chunk of child.stdout) { + console.log(chunk.toString()); + fs.appendFileSync(OUTPUT_FILE, chunk.toString()); + } + for await (const chunk of child.stderr) { + console.log(chunk.toString()); + fs.appendFileSync(OUTPUT_FILE, chunk.toString()); + } + const exitCode = await new Promise(resolve => { + child.on('close', resolve); + }); + return exitCode; +}; + +const runNTimes = async timesToRun => { + for (let i = 0; i < timesToRun; i++) { + const startingRun = `\n\n*** Starting test run ${i + + 1} of ${timesToRun} on host ${os.hostname()} at ${new Date()} ***\n\n`; + console.log(startingRun); + fs.appendFileSync(OUTPUT_FILE, startingRun); + const exitCode = await spawnChild(); + const testRunCompleted = `\n\n*** Test run ${i + + 1} of ${timesToRun} on host ${os.hostname()} exited with code ${exitCode} at ${new Date()} ***`; + console.log(testRunCompleted); + fs.appendFileSync(OUTPUT_FILE, testRunCompleted); + } +}; + +const timesToRun = Number(process.argv[2]) || 0; +exitIfIncorrectWorkingDir(); +exitIfTimesToRunIsInvalid(timesToRun); +console.log(`\nCypress tests will be run ${timesToRun} times`); +console.log(`\nTest output will be appended to '${OUTPUT_FILE}'`); +createOutputDir(); +runNTimes(timesToRun); diff --git a/x-pack/test/siem_cypress/config.ts b/x-pack/test/siem_cypress/config.ts new file mode 100644 index 00000000000000..05c1e471e74a94 --- /dev/null +++ b/x-pack/test/siem_cypress/config.ts @@ -0,0 +1,47 @@ +/* + * 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 { resolve } from 'path'; + +import { FtrConfigProviderContext } from '@kbn/test/types/ftr'; + +import { SiemCypressTestRunner } from './runner'; + +export default async function({ readConfigFile }: FtrConfigProviderContext) { + const kibanaCommonTestsConfig = await readConfigFile( + require.resolve('../../../test/common/config.js') + ); + const xpackFunctionalTestsConfig = await readConfigFile( + require.resolve('../functional/config.js') + ); + + return { + ...kibanaCommonTestsConfig.getAll(), + + testRunner: SiemCypressTestRunner, + + esArchiver: { + directory: resolve(__dirname, 'es_archives'), + }, + + esTestCluster: { + ...xpackFunctionalTestsConfig.get('esTestCluster'), + serverArgs: [ + ...xpackFunctionalTestsConfig.get('esTestCluster.serverArgs'), + // define custom es server here + ], + }, + + kbnTestServer: { + ...xpackFunctionalTestsConfig.get('kbnTestServer'), + serverArgs: [ + ...xpackFunctionalTestsConfig.get('kbnTestServer.serverArgs'), + '--csp.strict=false', + // define custom kibana server args here + ], + }, + }; +} diff --git a/x-pack/test/siem_cypress/es_archives/auditbeat/data.json.gz b/x-pack/test/siem_cypress/es_archives/auditbeat/data.json.gz new file mode 100644 index 0000000000000000000000000000000000000000..f1a4baefa5adf3b84ba95f913a1dbee3bd19ecb0 GIT binary patch literal 5130292 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ⅇ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%0DDAN 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⋙)4ECkOY14LvJ_A1c4IN( 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�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%0DKN6<taIZ@3v# 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%0AQNTU$u{v;*ZeBKCskUM!FBXG97;_3h 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%0AsPlE-pX%%^M=J_|jS4`QmJ{ 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μ?Ge#kA z8G+Z?iQZ3?f$MIH%8E#;0u+*lXVF7%V`YjkjBic~J@AJ`P7(Dd!kjcZU6|<Ifz(#d zUnQ3^@{t>UJc*`;vJw<0Z{3@JkV8gQN4K#gZtXhzX#;!)dukqb!-B8hKCI?H7^st9 z?ti9eA~0#d$eG&<Co56c-4}y;?qzG)PIQBQkZ(gG))4eJqZOk46^7ae>jZa|>o1(m zES%3pZn%vPn@~F?E|vT;^x5DR*~&`R%F2x>Aqf6sYPXO72E4TJ5HPhHKDFV~md>`4 zrM7%JWI|hk4Y|DK&ZzX};??YWo&+uhF;k%HSSVZju_tKbCV5*Qu`FHINI)pLA^jrQ z^l|X;(EqZ<xK%6Q@A2vN{%||_?DpWQS+KOxnmtn&$yLJXUHDzrR^ypF6n^`XNGh2b z4mqYi#+7w-V3S7o(iyT^up9o$D}D*@%J#|Y0`iQ5iH^SC%XIiB;(>H}fU_J!Z2z6{ z%u)RKFm-rj(h4mP8cF0<RQ-uFI#YCSO+j2p0Ii2570(zYst6pdZcYoy2W5jN**cv- z+dMuC?{6eyQ;6ur(c6i^zcaiF_lZyVJ*fuzJIc#c-;s^Q3UjOj$4DG;OQ8=PIjp(` zm_^@5O6WM0pEFDA2b)+2)_-qB0{J&rLqy6U|0djnm}3R;uh7jXP_9&9YgVW9O5AaN z)L%lEoo6d(wyg*SlC}+Mgt!@nA3fKTWj|}6+v8!*bknCy`k*N15$2hT$d9r$A;>e7 zAt=wMvi)9G@T{axCf^?#<QMeU-M+u0aIpg6ITz%$8mx^U^g6S!x9&-c(zR#=hnjYG zI7mQ_l^5!@UM1X6c|UH365@S=A@7IC!#mK|KEf)HKN_DV=uH%yv8t7F6;c$NYvQW< zs3mbk19BLdID2@0xPh<(v(PK*09EKK70mrwY--`u%|_Tps$r?={l)m%$geAXlQY+6 z7RH$)RL&Im<Hm^az}nvKhXl+e#7m;zuN67aXGb=Zsj&}tU`UI7uNiiG7%B3qB#XnZ zZeV9NcCY19Rg9cuNyulK!_7`OyQ!{$X+(O@IlWWZ+=fuM!D~x8HXp0qLn&eJrTu>D zbL<2$WY8aIoTf>nmrqxDc3m@w0=)0Zv}cX1z9+)UBDso5@l6uB)BX>$m$^HeFIPRs zPpi|6g1_|K3<Y8pmYh$B8zAtD$$l6*yU-9bzuBI)a-9_~*84>y*+qO;O<#4VHtjCC z#q^}{hbEBxZRk+EOmiD5S`IzIQ-@i=G$U^7I-4A+UWaV6Xe&0}ajS&S(GU_+PtluT zOsgW&p+(-{x(QS}abmoR_lScJX99WpS=M=g9k8U)%6YzGf7MRfkKi%5A5L$_gbk{t z<Fd6<oIRD;6(%){PCQi>-XY;|{3@0>T0C~ldyJ!~YhG(_SKd(5#<ib6@50&ImAezm zD<8gkP7qx5`v9FzWo6*qC5)vQLxUU>#<tVMZEB$}adbwWt_rGPAr7}tqFm!!NCs;S zC9!p*-R}lfc*)EqMfPYcCtkIBnGXks><>ZZvW8kDpE5kEuyaOzWi|aQH!Um_%x-lu zGKSCi*uvei-0+d~>!36)_X-^=IlX&d3T8*YI-{yHA`_M}`PovMz&}j`(WB`?6GavU zynM)^+QxpFgyBP~RZ3mj_Y(D(0eE8(r6RVg6vHX2g^Mu!U@6)C_Pk5lFX-(;=Hl=i z=@oy~R#Vne&qyR0br81i#b;AE=q`tFlX?KTl_9P6B!e}DT|Gf9-Ox!!&n*Qve1w~k z_Y5V_%z_AHJ()8K3M>VNnEn1mEHzuO8)3n()!CAuusgRqcW%(o=RORNu!WA=bG3b* zKAq53<h171Z^_K;AE`Ap`ADiWUm3@H-0E!PWs-T^P;?4&P0bEjJN4XLRkufczjK7d zsk<6Xq6+D|@T$8a2fICZQS1n3nr%y|f)TQD4tD250$hp2-U+kIjT9OS{yx&z{u?is zMb?X70Q*&A*#~O`hee92rbG3ozfHV-Ch@tyjl~gUDdgMVLK{-AIb2ZhBKNM)m-3t8 zN9)j!@000n)>AGjZ%1RR#2>u%!y-gDVOfRrCzsoek&_?xA9tH4iTua06E<ES9wlaX zE_y5-a#zRzCp@DHECZt|PcEw})QjVj!+yy#*|*PQyDznGQet(s)_sAF*1+TlaHve7 zWLSZ+B50)lobn}Bn~qxW%~#;>s88QjH8>KudIHkm=FO`3Y<R)f!}VbkC)rl`FM9)Q z{5xZ!TtJ=g`(=)aB#xzg{^4n5<*)dpn|qlP@Axw{g36LlslY+Z5r39SV(ar4dN|dJ zI9dpY`v)opv8-<6?^dPO%LZ){7^w4=jNd?7yE1(g$vV5c0i*4)H0!qe1W6948DD2Y zKcQ3F+SWh(JnICR2g)&%vS1tKZ5vv0R=8erL)56>i@f|^we7A1e7N6k&N|#(v2}_S zIz3!0;4TY3xZCc|c%`GosaqJ<8cdJnu`^Lr<n<HSNm|cKs81+Vl;<&YGssPYa~l8# zqioz=dWS?DONFfje{Ox@T3BAM$+eRXUUnRH2S0WChV)1+n&BARxXvR@c|Bi#0DJ=U zp;R)Wf~U*`RNUjmie&VPfWWEk!OP*S6vnc)<I2RAJib!MQdxIb!u0f~f_MiqtQ+;F zgi>gEW{DeP@~0xLO^z)s_0u>xIiDDVTkY}BmdA4|V}rZ<&yI4>(lyD}Gm6Jt!ogNM zDif*6G?|pE<-!y+oc}dIb9&eek&aN9U^BZy2>gio8mk~Jm%*e{@6a?CS|AVf$_Vyh zW;Nx~7WAtM<8c_K_k2w*;uAfA_jNdK3vb(h_S$f%gpx;c|3dQU-Qp<I<=R>E_2FgD z{oUPR^Rw|m?lAQ0Jr4BQFcbIl$o5a_&#yZ$H1yD~KM-i_9p#eSU$8t>7@wj8?P;}9 z!!}DmEZSinck08LwGDmBRwh&NVr6W+)9sx+;iNVTvNiT->qhf8f^B=(nl)9tQzXf$ z*H_d21X~bCh4huqJ|8o_{J*@Nch~<=+UR&%N#xumMHjWn9jQXWO=094#K_2x_ll}V zDQlVzvMn=7bfY_pCAi;Qk*tQpL?IW{hl#Zq|B4*BAp+Hkp|WNdQGMXH6Nqp(FHRvv zlb%!iWrs2vJ~zXbM2mfMg=A9!PfA*crF?H3Qc`%b?Qa$6h1%cO`IT(PPNE)D2);zp z0EtFHkvX<n$A~|11VdHPibG5qYFVNEu?R&Q^fk(PViNyMxGOjh?5Kqn@H|cajSnd+ zF~Fi2>}d5S*CY8RcmJ63wdm46e|T=bH@kdV$yyfk3)^Xa1m)`_L7q(b-2!cqY&&CY z$X{p4+9(x4fyg+gX<(sCOh?KKd;ro6GR4qMsF)@pS<PS@=WWxm#$el8bUE)F=-X|~ z?|s;0d?87QZr1XqH|;CSp~2iM!=BF$z_UN=7199OyQAbL1O^_}&!O&oGE;v^=USaD zJ8XY8xZ6JXJrlybA&#uq8uUbm<FA@-()FhTRo;&I`|JWX@XUROu~mjdQ;K{u(q=@p zu1@gtM1-kZO>u^+c8X(mntbQfHPf5CiffQd5vnMrb_bu{cs)rI%H=6+!T_jZ-Ftyl z1_39U=c_Xk87bK~&XO58Z3P~E!l%F=co8bWVA-_)U597~$O&nrCz~c4l_lkZqr#?B z!>dmvE4R6ioR2AUOT?QZXUaqwhiVm-XHL|~NWe-b#c+{PR|vzA&qk5@Fkf${VYy|8 z@K8st3Azaow)**YuX?TZ;B5LPo-D^&*c--P+-<HS;F(QPpkgIuy>kYQ!@hGaSeGV@ z0!FgNeMKAX)}2`JrErntUcH-is%n|5avkyWPqhe1!C|Xli4n#%4j|?d`uM~?HE7UR zFoE7ff&66Z84~2oS2mQc-abZ<oRW!p3Q+V@$dX_l8kxlw^^|-5#5GT}lcnzco*arC z>3G{Z`t20Q&lCW|3Zy=J6Ad-hS&Eop-YSS|cPq@p|K(-ESuOf;vg>7Vk#n74Yqa~3 zJ=@wMLio6JwbTu}>EC!lS#Yw&htT9^yJq9FHu)G<8Q8phmO&};^|?FPkRxz0i1>%M zoy&Ogj}b-LngHwMENW)|Cc<0J%bGGN>_&_P=|e#fojyquJ*|QcO+kEm6wC?kKLgZN zfcdL<&Ih#3gr}q?mqQgG932v0;dlLRd;&9}1coA}8`Km@<D`=6*@0-T^N6-d@fj?) z;d|8$fP82!p^C_w5p3^;<fRW*7*EWv@R_5G69~q=jjhgBp1y-E?n;Ilk?WcuqCyUV znuNE^yw3Zr%J!WH!b9Rl6JnYQx${qJ^+xHYVLu=9#W=k+b@g81QDxL#Wv%M%L$C!J z;AOD@C!X>=3pDLvQ_d#~<nOafL9LA8x&anRJ$79U(h(eCdBm_R2Qc99S~S$A<sniX zG)N_;e}0?3e?iYz<6Oy9gijp5)}(%`s8cR3xlVAZ?;$zLxc;#rtid|0|Jw_?DwVF^ zBvPeH!9Bz4Gs3-R<Kc;+^%vX^#?ns0q{gW3D|bp#HmM)?g_pjqPjl#NSYzd_b>AAK zVJSl8<i?+##<0=VT}KC&9L6`>$P>q<!~-`kb+<{h!K&k#xB|f~ipxLZ+oW&_yCRFM z1`n^m6j*PNDS}>Okgn_XohzVF{gnM>enXObLi#8HM#2Mo(2lM`4*)%!(ebCK%umJg zC_(&@k2ge2!q`XNjV;B=mIZ+{&fQ>5c%ogC&G1;CYR~+|ehdjD^q6NQ&O9%N#?RX@ z$hT}o&QNv45|2!Mu=m0N*u_YX0R{alG*i$N*HAjNJ@`xIC`JoQu^4yrjMbna-X;<B z0VECe0Y-1w_#P9Am8P2GcH*yX1RNs&>-b%O;evpQT0#l0^vTg&>h!*Ye~ACr`2~UU z$I<b7QW>M9qUK#ff_hb15d%p|MVyc$`9R46{%`D5R;Qe_6hn6+O*J+4VH$AMaUId& zip)kP>X(?z-bhp8A~6fCZzh#cZKdLEfx*WGCcopdqRKcZeuO5a;A>NOUmZ=kJ+_7u z>q@u?K0dC|tFt1Jn7j0x`@O`+Ou?i=9kgLA;+I_^Doi6NF!sN#jBvz2y0f^!T{WU_ z^5b<hJ`3tgcz??05gQ=f>rQ#KYr<(~?dZFdL|{S9dvr8cA77`RpORg9$!s31K0QzU zw3yuG4Pu<mb|dgQ7hfMOy(8mc^4P1KuPwD$F3lfU>PwH)E|?8oL+2<=B7V2~z}6<P zQ6rb$qx|SSzL|9>7k{R8R!JL%zfkSjBmD4Nzz@Ot;ZOR*OZO9b2W>n5yQ}0bEN3eW zng}E|2RInZI~Hpui={+of604N3#O%41g)0`6ocMau*FCXarF~E3r$h!ulxgOsh;^q z?ESAOj@_xj>8S3Fy}dtsdEI+CuZRVaG^FXq?!N$S{Dq!1_F;+3v?)BQQH{w~RbI7P zc!`qWpY9#q878#ur)}m^yj|e6*p^|fE9{_G*BBk<BfMpYY01EE%jN2Ig~lq*pW+o{ zwCuq~QTRcw1++9vR+BHP70nyDDNn<{--aK*n!B=tTY47XQnB~(r*W1cmI8VT`X$^x zaq(-ue5VaYjo0>sGA=q=H&<$82PpQ|2!}*VT|3W2kH3D!%7H1!=3W{2<!nqS(AH79 z{*ZDo^m}exgBWriZp~t!{@Iwwr%U*54Bk_R=p>24Kl9YsJzhAz7rd%?z?5fX@%-&# zTQs?%A@U|a2wk81o4;&D4T`ubLNchfITE#7NI`?|)HHvnid&M1dO?F-w5E@#KPou2 z+N%2$rZdsdjn<b|;E6j~#7dgeg`uSs_g%?K$dCfW2k3n)fc<(v%vY)dB3Crfa=9Ss zVgGi@N9!tCbzIWy0$W6l-72^@pb%NB8ewae@lfGe*-N%Pe==e>)xr1^7=`J>iGLpl zy<_y>(jui+9;KX)3I09UXaO50KXB<XYP8>)OKD0t58g3c{F!~pz)V99;Ar+>BIcL; z@$KNXpo)@VHwr7%*iUJc1hV8gvO5-N-kchptQ=p#RsNp@vo@4kwVPB%l7b$pkS64R zns1*%qZiW>@b1OWtD1ZPQY($=S-!fz1K#PWE!!gc9M(OKN3%ZZKrgE280EkyjCvW( zT?KjtGa7)YEnh4TnFZ-XgHmnI3Z>SUA(iXa231T?;4&Hu1+faDK8IEHDDF$Dd>3n? za@UnWKK-lR4!iUY+b;m<TGP_r_sqtUSH?!Fb6AJZ-{-Mmfp?h`e$K1acaV-8yed(5 zkgkt)nLItT?+D2sy#iZC(=VbX{#227nNxlyd~3YG+?;OPrEg)*_U1n~wz73~H-OU> zO`W$Ch#KIB=ufAtcoEvl>UA&M?hGc=8{FPsDwgg#8jc?HxA@1>$tdQsI3Xu%CyM=H z+5DpRSDoHfrs%o>qc`N79rhYH?aXOoCMhfooDC3nXefkC*HyYg$)Jz8dt=hqZb2D+ zaVNf4#b=Wsv$UaLGtYD%esDg<_K;pw$N7mLvP+`kKUI~_Po`LR<Pn3z<sH!%uZgF? zP+R#}5uJ_-t|`Q!zb>X^cjPaLpzR!?MAPOQt!Px6q&)&4vN1McK$w>MDlw3Sfi_Kn zJ(`?=)4tm#jdvlKF$23(g8&-pPzYv0`r{5%viXw?TZPexq=wA~tzxk(N|#{v@MHQj z3NKXdYOdXpP2zfE6KZ4GzeX9%^jIl7lHenssP_me*+{011<XJlXh4y{v&Mu}f#i*# z0id;fZ!}jjzYhxn%mNyc8ivdmuz+NE8PU@(RFV!Q5QjWPSjws2K{axy*>uNKr$v)9 z<$Sz%ttP}p5WPA%(yV}e$PE|SWEvm!_FLrkTe&oA(uulm=bOycw4(Rd^x1dZjdkCi z*G1kFewsJI>dh`{Rt;q>D%UYM4#kY8)?n|mVlu!gkdcYh=oYkMNmoTp@B3Sxefg1Q z6Thux^~Y7j5aXk<(ON+f!vIqtaNM247V=JKQg;g)Dd5l|`Dn9h5DE6wB$A67#vf@F zyTK?|V`IrA##$Q19ew^M5!&xrC?3`|+V4d_YD}oa!OFXAkSUbJs7c_ZJ1|Zusl?TS zRm6H*8_!k5!~yBpf|R?Egi4$(JF`lYx*#lktK{~CAuSE2fE~@Ei2eVq?Q+a>kn?)R z45k}i@yZv{#vzlhvSlV%E!u@<xCW^YrJ@}LmdEHct(w;ULBoE>D~rL)I3y9(lE>;L zkrqzaQ^&mBXaDQPIJv_bPC`RW5)}x(g(_kkZ{!G`ocxC>$RH$0OySc+o4kv1FsW&u z>Zxh}5@4{zo;<@fU}hwsS^}P8<@Wcer@V~sg(W}gO|DmMt!PHn!mT*%$h=}gU_sK; zx7oy@T{V(MrM9XJw-DE+Uxk(y87CRH7!0mÖyUoAHu;68ttRmvvOfIfqSMwArY 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%0A4=Y32YT9eyyAx zB>B=7`?MuyL}jHLg&ARsIRMc|Tp1}M#rA7>F@%$cuEi;u>`fge|W_^kkK*NOk! zyno(_6OLw39%cpvCcp{RRteRnn*(&qMgHA`rBW`EO3=mj8~!hV0R;#!;5gI^pgdqK zgP>H@Ork7nX*ciRT*eD?g@^@_8?k@M4N7_!sIWBo&hJXH!hztCaJY)}1QhfH{gmtm zu|TPYbz|B5C=9kRU5T6?;P*5mfRcfL?BaSICfm9u1VDuxC<y_?)ujW<p1uM>D}i`q zlNa9QQ?thy6xy|%ix)SC+wIo85=NprsC`wi_x?>5qzceS6~#!i|9^uOpizmChkGyy z(ByAwP~P(@9l#f6X24jt?kRK^%j0EaUkDHt7K3r`H%uWgd}9!?=F=1E9@n2rN_J&e zGb^f@y&d)E5N5pyITg07-{k!5wW+gPRawEK)8ZQt1P-4dO<|D!`^%Pbg6hvCced2& zrU>jnHb?cWLCanBtb;NQu)O5eAo`{31KUP%8TX2|`&&n+jL#I)sJUbgPZSyf_~jY^ z@NzY%3~*(z;_uJ2epg*fy_jvFEkLRHq{RxHJ6~tMv5C=Z5$cDZ8HKNcA#_IAK;?pQ zf=&x_&}osLOOOlV=+uQVaHs!L0-TC0w89zSRA3VS$HU@Ozy@m@n6HT8NvDWWT7_fZ zfA0Wb9aq7j?s4mk(nl97$LWUh51Z`?YLyxf>Qowsf?(ZIcd{J^R2~JbBJ$PFFPqB2 z0U=Puw2?ty|2gQ!&<4(Lc0e3{5N%2LnG$Mn{3@K3{qOv`>nepGx3UmPXC^&#<HDpY z(R$cZa5SE_tv8J~zul`%9U-fGSk`&@6{*vv6XfL!7vT8+3w7`r!tpP45Lck~)c~z} zT}?Pz8c3MLM><q8VG>ucRM-px4itwRTJvkhBH6K-*gh$8Q!L^a*Gnb#mMo+TAnI&g zR!RvsLLWz5+foj{?T)qcnQ}@CYGlrs>+TvzQ&R^K_d#wC78?J~t`HaUN;yuOot)*q z=3tt`iminQw&|$_Mt&n7s*MF8d-d;eSLrb(_Rvus&8-WzqHMo+zXiN3MZf6HljbGB ztmi1pJb7HIF4Q7L#uY`V&u6A!I1s;j{7SFSFE-S`MT20l>;<g^A{I)=2#$plq?e5| z?T9YKQ=131;&rd)!*vG*#6D3fkD1(;$~#V)-SWXxcW=V<uPxP6#l7l>scGDfViN#< zyOw-vw<?K_eADO8=?Qb$UhLl$G1TUvsx;KAG$z8+zv>W%Nl{jm{Cd<U4O?*nms<Ck z<RSu>+M6Fnk2l8;KR}=W?mB{Aza9M-c#u^4pIq1f4jx>Wr!T=!6bn3xAhNA}2P1_L zN|c5K@?9&2)-nqrQVJuYLc*g$_UHbcwvB(l47Vm{Mg7*eXAJT~ycWTcr}O->^sy#1 z6n_k7v4{Ro1OlP=Fh5>1WwCHrGhuOZpPywP${iDnaoW)g7%{}x+c8TplsWcFE(QR4 z!j{Wz#YiO^<DQuslM&EIEBpc)_jkN#0GWVANXrW#tQ$2#{J)#G;E}-n|A#$j(I-#l z`48?u_7i0R+P=sP(37G74dbrefRh~bwh~39`bHP;06s=Y@zL_pz-bq;{x_(L74()0 zDC<D~i|KNu*0W#-QC$G^j@^MLS<uj(<v0wTFLqG0pi~^#7o)fzoRn<9@b3rU`S-g& zK#-y>pi!EFs2X@qXe1a`a(zJQ*T|CRZb%!{1oQHdf8kubXbDFyw;GY=09?hm|6ei( zheygg|8FqY&&Y2v%HXLN$0x(WRS+5Iu6(z~bHbW#Z{u^We)2?9zheQL2wi5A$5Cm# zwYFKMZn3>~AW}e?0p_L%S{=sD*J`tULcsojA#}23TStlih5ldtzq)T$Yv!-lCWGGY zGy%k+=B@R%9Z_Nh;Jtxf$jLpEFHg*i7udL0o9KlUdT_miioD7Y!u}TzGyP9CLDmgO zlz#j2PHQOlNZF!5&R*L{o^9p1YLP1}<K6OZu3tAAgzDeMGw?P(D_@|`T}3YK*#c$S zC(<xXUc!oW<PQk9CH*PTQmQW`gKT(yuCYn}zWLRagVc^p_6RfmzR9w?urc${BkAGr zmj6-kAnf<DQ{eh=xc306>P0VNvVMu-O&04EC)m^`$r$^QWCTi?|H=M_amUsC__wOJ zAu6YtliyF0|0PgLc@vi>bC4?UtG$?d_lj)Rev8drg}Pz3D5jd~A&*~;v^XDiPJJS2 z!Mir%g)G1NskB%|^T;wd`LmaT=2x}i5GZDO(&JffveRjH&n@_x#8<)63634ptI4;X zL_DNoM~sc;^-07n=%)P)H<m5gHDXx3H;$*2vG+M05!E0@j4`|iigp6q-F)zz3fMNw zm^<~``WlYe)k=;Z-FPDwzTtI^2NIyalo?cJ+y);-dhu`7Otkw2WmSebyf9EVLt`)g z`wO($9vv@5StNRn{3>2g%5xB5*Dt=#3*wLSPA=kcikqn&mR)2)&RIMIBC5In=ndch z_J)1{EKlffR}#`#0Hhm<8dIypv{{M67-!~gk}#_R@pm9Ij-Ai<_2;@li1j%74Ky+A z_Ayn)u5BOgAri9Gnrg_(KXJJGUX+%KF_e|(JycRY2ix&qMN$A#&iooFdplFdp>8a? zem=Z!9$qgm1D|dtwnhD}=Lk1$7hR+t!SU>+%ABO6&(oUD6B6me@sHw3chOoYtCg5X zik_ZJG*g0(-wm1JYl-qL>sIPYMqgn<H-c9hCz9tHRmW!Us!k8uC}lmGY+rPoNRJ#$ z2I^Yt_8YXzG?{*I6__Ypgs9@IST>IlH)<__g|(cajms5<We}rt@oVVQB0N$c&z+Pc zxgQNo0;N&axO8SXkxC_#&=mW1SU<>vvW39ap=`Fp-K%Ysl39K%aX$V~*I33f&>Nf7 zjtjV{nI=%=qKL~SpTZ(@TqA9fRi|tfDK5@VWvClwOfNP~E3<7WDK|P@@xp1t7Q?1W zUUP{%Vsn&h`F<x~Y-DD+QStLdD#JyJsl#M*?Ktgm<|*b4Ly~2x`a!N^Mg0lc|42#u zguSq<&r3(|agM6>V{YO~b}-=uC56PRzUt=iBy6RxpnkJ&rL{F@$#mi5y>j?Hn2)%+ zd^b*4awx@Wp;@p&AwTiE#=sE2NK|mU!BLr%an@)C!qX`u$>9=E<G0tMMQt|udb_!+ z{BiGxi}a&j7k@{E(jx=u>nGlg2+i{8!(<o4UO%(m9P~_|C{<{&1&t@=H2qOGmS3|Z z&2((iN$)#YLeGJ>)oRaHxHP(InlFANT^j{nG^-a8Ic7iSPAqcT2@$uDn5U?lPb@zG ze8cG$AF9OwYtmPoaR;Fv3Ta|&V*8qRWnk}W4S<_O!6taN{cmQUze4Q$C2N|!EVe&u zq+JhzR_H)Q{TS8zcPrWqoH2pWnTf)7an_+}JuCARi8JQoHH$x6kL`_i;VdtrMX*IH zKWReDuj?|NARQKhVT%e^=`w`t#VRNc-%F|t|G~xoiDPvB4T=tqE<743*s#pw*)QPS z%@OkfeZp>ndTz%jq5)OaSxIZAt1k@IW$_iCJg6f7skUcarZi6C9qT9|=Tn>+THCxD z8x`^~J~l^1odt!42@~>&3P+ffSPUsIp5z;Dr&7ARltrnZyDz_M6<@={!NkSb%2P)5 z5(_g-vpUM*bIQ=?UH#g5lmy0aqqEO5Ptclr5(5qIyXk@oRsQD5%S$@yaafQR&lspL z7s{z0*`0n`Max6}Phw|SGrv1Oqj9PqWY}?j;PHNl$LlT4qzCp`-kWes-zpa>wtgKP zYDNW!?uWf!BCz}Wg1xDh`)y2POFZ!|T}-0rU5s3(+@NgCWN{z)5Pt3Q%-hJS%zC4Z zJHXugAiT2*-t$`t@i{>jD*chK@w^rIhL8_fs-VgJP=5LzYFAyB;W+-R3!xl6fP@`k z3dxkAOTo&#d7B<3;-f!#HE0VqQ`)3!CtT0c@HrtGO(f_~d90sZ<Cls=srNSqp<Kc7 z&y#nu*^`+@s&c926<XJ5K5rgI$af?;&x0#k5={~bD_<NvKk!FRTB(3Mkc}BG?eRuR z8=1S%zKG1&bt<k?4K9Mk+8XmU8bh+)aaGrF81<cU!K503%w?a14GqCW;gp=`>ky4k zB1zT0P=b?5qW);G?yU`n*QJ9B^Ep#t;er|gF~>&1sD))PWXV+gL_|842Qe>t)mzJR z8uI54)qVnQ)73Kr8>{t5e+Yjx%%u&cD@t|<){z!EQUU5=$efqNbP9R@D5pAHdcrt% znL7H-tmn2D)29=H42X>wQNm|S6blwv`vSt4_1J?kb}Xo`lFWLSIN46q?QyUQuc~zK zCZEN;NaO|Aa5f(5xBSkZ9nCHd%g5AN6x2Vs$YVHunmb|oi8=<^N{DmHUBS*FXN$Pz z@swJ?PR87rL-<mK=lK7QiKfph1$C_)wC{IVf>aQ_5dK>fCVVrG)m%K)v75!7zv#q3 z(&SCp4!x+&rJ8uq<=AoII~%>}!{=GG;X(}KS2ekH<ffk0#{B+nc4kjJOhY+JQ-~!) zsaeNWUBA4gKe0DNeqS4fH5M;*GvG^uHF5KNHdYd*Ms|+{WhlrO{^<&{h)#D^Gs@bD zt48|_A0qc*7fm&3RNS@5Q_RMQ{X<WVgzSh?r7WRh->1EdgaH3#vb1$n6QXW?k(EjL zv7Q07y&x#Rq6c{D^%y5dD8CknGObV29dRrX;e_<|`U7QaD>A0)ep9v><uG*Wcwm1f zG@~9beXk9?zUNH;krj0fw>5$anwsZec}2#1#cS(KORvk%EK8v-T`T8;#*?M~Ox<<u z@a=F3<ItS9W^(-MY(H=}QkU4ojgPO*d!npy%6dB2%|N3b?PSC^Cld0-Ew_lew-MAa zn_<viV;MSzc$UYbW-(@bQ^+Mh*s}KY+HRq(%g4@CR}dR&aDgqhR&5X?3Bhx&#R)W~ zP>pr#zW<7+KGc+v!4$TE*8B@WFGR=TZu7kQ$V{>MK$PCn!dN$3{a|t1C#{hTkZt*g za#&xbDzr9}Ta{ZH^?R>fUmS-$dW*x(*WHDI7h7W%<JFbASCb~kUfEo?ezD==qV4+F z_h^o+Q-%<0{nEQGr9W$%OZ$F>5pG#GleP12Ou^~O(i1I-@4gSu%knrk|F8~sLh%wK zg<aJh5KlSF#Gmfm)m$%pXqwOE`II-K1%`(t%r;1-+OnE|s`Chbs@iTd3FvS*&*Uo9 z5Wi-1^TAhN%+Tv%X0|&zxshivOK{6qWQc3kN<B5rUKD2~;FQoE{(;>>r0|>v9S-rA zZ@B#|ql9^yCI7czf!kVy2^RsWZhs%${;sq9AI!aFY+YM|Zfj=8>=<K=IWaRcGcz+Y zW6aFV%*@Qp%osB}W_&y6RCS-~s_NTUub=e(T8d;v*4lHgZ;UYoYZ}UZ0Z0S$miN2O zq{7SN)!Bllwr7{5AVG2-U_)t^fbWQ$K&UEJK*fUV5E2%QmIcCyS!EJYpIKu=M-gIu z@kL58Gb^Bj7}WgS(PtQ~as^|%xbM=gU-9~DztEO`b)Jl|nGW!AoY<Ji2|Or(7w50e zLelDj9`AH5i|aJg7DcVS{Gi>H`r~tzmV*=$Ca%+sqJnodK3QznW@3S2c3N~~u}d<Q zb$TTOf8$+Ei(K1;CEU2B>t<Ks*i`dgBaKC4W3Wd;ubi>9w3adn;Y??)UvPM&S|WtC z?igA@PhYA}lTT>5kt5=SOr3R2X??dNdYpn{aqFl9t_1*5RlbS!c}EK+7fY@Lt#!~; zEyaeei&iYm+Mxcim9?4mi7Q=Yn9I%9;pKTQtB(EE)cRbJ*D2kLSv8AM4LyIm)W=Z$ zc69dGN?4e|YEp`7LLQRIYI0K4%+G6x!$URaU<fGkP<TS$Y{{flWLbexq`Qr1gc^og ztH2$xeMkt}%OA>IsSN6!MqMey5AVj-ce_gAYHk4EZK^@*=)rirJiBaX>UvYu*yHti zx4263(^A4qTXND|zk|kp>aTOs?QinD3{q#1D7RU?gg#aBJ|9G$@*9LcCRse|<oy|3 zInDCPBOta#>Zv1ypEF00pUi(X%eOW(%hNS-Ng-&r&rj%|9!<54Ed?oOP1ZMgTZQ|% z=8s0OYer{7hZwV3b6+^jK0WO^U*6q@(Ygg`Wq7QgNF<gMlyO`zWNe`T{=8shP=7Nu z^BS^8Zn}a<JMk^K(@lkBofmg(8`y8RH_Dee#t-35qm&OFdpNtF!Dp0PLiK=U_;%x? z)|62X1TIDau*$Rj!^PdtUeB6^6snb=Vy*w=bWjck{c?+&a)&1xW7wG+1%$3WU!9^Z zGEBOty)rYTs){^s>}Wign>o@@H707G!gr^VxVeShr=;ICV%oB(zkgUL%Fg4j4W?oK z`J2ujf(ZhL=5B@(I?od+%f=6rec{@`nKIyL`LKDaVLoN^?#xW)<X}7HOkWU{o%fUV zV0+Tt+WhFI{x~Dw_%&AnI2wn$X=rfBXvyMa;CU5G$YQ+I&MJ|AFC-(I{bnIkR8U&E zNEkR$?)TmNo9djUlFmqN27nFP>m0CfDdYA)RN+fAE8IscGb9-84-IWdEJ4gGFcoMF z(O<4KwUU*83@Q)^SnA8SEGBm+ozd`@R5dPC6CHfupr2{SDPeQ0aA5s3syU_<vqOWO zMWO7Gm$Z6hn2zSiu}S%~KP19=ny&3ISruzoUZQ%CVO`td)AaB5Ne?2rBIe`d4h5Y= z!^qB-_v;iBvaaGRZH7^5nB9}wfH(YTDs@CpSFdI~dXs~VO@CNi9I1=Ij`!`frIe^3 z=iIzJvt}-DcdzSX4UU1-D0&?BxRs0#FAWlzC$lsbZX+pten!=pr{vL*v-i#0y}Y=r zOh(*Dd2G*L8wd|xOxP00bY$&_?)dEMKbjQYHA%UGvAG3Yd-_TK<wE%elIb%Lj!Cak zoKVjQn*ppzBp|FHM3JLnDCe7hQx#^pQg{Kh*^PVEzn!|-t+yX3pk$w8hoEN>mzxpw z_8@6xel}v8!-F76M{PRvriFp|;e9N|(fn%X>fqu=u_5gS`JUrVlwbx!NOA4n=-HL> zR!8l+c-wvBCa!9mKb?zP9LSKOnhC%M;J!|keyOiE7=>)FNRn{qUUM4hhiw0rB(dKe z%>l~5$}<~Go(~EyKk^chEF<^Te(;@m86RSyI!A1i+py&D!@<v6!cW`kaSa-Vw8O^y zDlO&WN4J$Y3gCD@6PFD6QMh*1HMLB{YT-^XuWD-k|GPnx1uNs<4w`K$+pO~o@GA~z z0+QueDvba@V&w1-Ktd9SR*czIdRkw4OgG-+p)zmm<wYQIrt=uU_jAWkR5}~Q%^iMS z*0vZj__WiR?)`JtSmVrd?Ja~+W9mW4b0x|kzupa+I;ySg^t*Xmokx;83E5!;=P$D0 z+lLzGxLI58Y3%O~9Rcrqz0l~RsVJqM*rV3)nlj^4-uKwGN4c}1^nJ>=`h6GV_A*R* z+6F4hA?wZ>OTV7HjRg3eAd<USv5&KgHwRXw9c(6Z+Dos-V|6ZsI;`XzC{HuZR~%rp zhSIok+pHFDK7Y7>lh^?&3^w1h)qw#&HPnGgUxiBMlc~onEQZg<mjp%iA<5MQmK0&+ zK`{Vj=sA0#FaZHgy(&}nAvpp6Dng(Ahv@cOb0cN~1<ao@mYo3L4R$XWb33@1=?iG& zv_WnHGGk2WyvDzrJw>D8+A(OJw!O#v?|doqB3`b@Fh^<&jUvUPqwczgo(6*I`sQxG z^l3%%Vo%z^49?8Cw^A<6FMPb==bF1#k=oCfRt>o`#$mg_d+mr-@%E^Z{7|^Xx@xW3 zsoW|sxSX`wa7AkTW^||)Ur*ZSbP&GKnfkP)H;qvn4qhJfd7;fH!d~4Vtwh?(a26_? zb{&l;@1xfV4r@V?XV2OgIa(+MG@{c^9h`xJz(nB$2rG{%2|Pk8?)xMLdltJeUJ_7y zcBDIc8L*P)hma;o8%9}&cTx(tHS@TWeuXZZ`e%nyz3G;#QZH}EZF9Deln2l*`MCD? zBmA@QeBCRtz#evt7k5`qo^g>MpNu>OTA$-`p5i9Tm|Z}m?>GV>yMI9rUydCj?3)H} zaL$`;t5tk%j?5PtG%@aBEUWdY2=EI$WCR&TwvB@`9JveEQ%#z8m<mMrku5BiMbR^> zjEppOp!e-pzt0kI)zH5B;AwCD1PFCa^p{U<U3}2#@`RidH+f^gV~~jmR9#+FUEoyQ zfC;?&=Gz>DIP^D(yI+WEDqy1MDZr{pk9-9}<JMs)_`YueZ6Ghd0I&X6vTAvw2>@zk zH8&V<AYfsi^e$J-&yl0nsav@fhGGW$A_w~gWGC<%$%o9zBhH7ccH-gpc~#)L5<)bU z3_tX-*h3(vv~W{VQM}H9AUAkSv=xVRY{8)g86VDUB`~)*F+~W2Qs7G=n^iCeU~mkx z$RlR1wcP9OOX)HM2J!`B?y@KVYHHYn!^Ykoq-@mes|4Tj$bn+kjRP(Qml3BxFq6&F zo!$kuY-hU4My~?rC?0rt`!c`#@*Hiw<6{l3LHQh}B;5RZpSZ6!b5H@%aDBI4_elnE z9$l*xpCD{10VM;SlNV!jp!G>D(5@g8l#w)^(yKNZZqQnN`DuapfCAui1De(s3;4Y- z!MT7*0;+6#4Rz7@lh3#ZAS`VJqxW;zd?6-TU@}L4H`0d~V04M>#*u_D4(CA-+d9S; zkF@5r^oEStx{_ePkdD#!$f)Colu%jlAh-0QiRMa)6NPxH*Td=nUQp}&enE{PTSg=# z;dvE+q1RXg!~^C-mH>~~zzD2I27LfT8xLgfgW>cf2$ZXY%X7A->ULyJ35;uo#MTeY zc3ZV49q`Axs>a28JN0FUKVuOC&n#jfNDTx}?g#QgC5}1kYZ22cO%7O7H^P6X8@9`6 z4kErZqHe*`{N9WCJ!au-A4U)uF);{>M3jPs6wrl<oHoAB1k(ZRZ3GQo2EB|;2%UaH z4B09oA%By89cG`9C~y+9S_H0J$y}ra0|vr5kdZ$u?%d5`lYYREf)Ozc&^LvN3bXQ9 zSpbT2FyP+_0EIe&hb{;Z-Ke4EBKZ=B7Ena@_X5n#lHcZLxKRDVz)bKWNbC_FwNwYX z>*vNy)(;qBT2fZ*XaQ5j*y7!rTqJjWW8zh49=%*R9=&#V;AoTiKi~JCIzeH<=?HWK z#%he2Wqgtt=pO<Sx%(vg$d>8BqPJ`Sd7FVS++-N7@LYf5n>bQm#aA8yBEMi_pWvMY zzv2GLC=-InkHC@I)eq=jqpskg&S8`DtJo<ImhRScEj3I1QG<R3Y<}1<$3$@ujD=A` z`p0=Oa7ObC5~?wur$zqM3lBK|LodXf0qBMHgunH|v6A6`trsfQia3>Z)B5T^8!~Pu zt9A^t`TY!(aE_*ua)b#;Hfhxzuj4OloSG>j2n!*r8aNb~XAkTDB0S3B8*e}7BbkH) zvwTagKljik4Ow#RBguMR=P>}o7&nPzyPql%&v36{Isl{Zs02f)R1U|20!BZ4!&x#C zixzz8>KxJ5*lZx^`wWf@K`cQL<$wI*MZcyq0izhPR1Rg?W-<Xo<U9cb%IGx#Q<-YN zRIZ|fQmRq!*S0W7rB*Y%ZZrwS0A?bh@h+lNK_i1M+g*y*W7Li6L!QVrs{MM|Kr?V* zKLK1w7EF$+0aNG`z)0DP>X?J-ak%zZyvLWx2X%b53WWUT^P&e^G{}OtuH=Ojb{~N0 z`P1$8+k*SOgf>3CqrFjulbJ=2!XOIL3g{ZmZdilM<|D6y<}P#P7E8i`TVZAR9EF%D z1EI*lcY|#LNhBYL>41PH13u?~NKVk0ebajWwbk9rk_+)<10;;vgOnN$ugjG#Y3u*5 z=2bYZ|9)PTmzMUA$Eq1@`BpnIPpVDDiR2>$6tM%lMr)!FN=mhxutt$B3(cD+2RV(= z&_ZQ$n|j+ghj#6VQ$z{VHcqBLgItGbNUsO@$Vn3*4_B)=?wh`Y-%34`SB>r@yA<+U z=k6RYGZf03j~l>@IAHuzXrRY;M9TqWB_&q)IAYdc>ztBFeokdc#63r+35=QM)BIw{ zIJ``3hXX76vszffYVUb~4>MiPk89#B?*-@r0pN9epErL50krN}^1o@_Mfu`}L&s{Z zE`k%TtVoAFSxLsod;zXk@XA8PW!<5v)wxF1kkJPM1jM~jF!K2+^Dzv4fYsHCClL=; zb+IJMZ5XTMiq&$vsQ0kmCkrO)^yP=bqpfz9Xn=J#tI^>9!0fKgE$o@<#`@=x6;x?n zBZHXkj@rDE#*gLul!VLRh@ChFZ#$-_gk%sz>@ZrT2=d*H()`(4t|kx>pzlBg=sR== zzm^^Vq7(nn&X@(t-J#wJn*ZmAuH4@rx@#nC67x1wY~8;fyC~(ktdwGiE%FD50v~5c zT=V8F#755qsXq`}NcR%|uRQP9@zQ_xyt7b|F!W|j1PpB%^p-S{|Ht7B12ue1fZZJ` zL>v(=Br*Rha3*-Y<%=VO-ZLv!5DK{f5ddNV8Zf^5^N~w$3>aNSa#cz}M5!c@owKIq z@p+J08EZMPW|Te)6RE+9<a)QWWSRcdbhsOTB4{wxP{0yZuyvgY?x>+hJ_p06m4(2k z-RuAonLmL-rqA-I0Za9R0L4I}$yN9wM9g(H%@izZ(2I{0XVL=LS+Pm=kUJu|!jKkN zh4Rr3CJp|4=&A<<dwd&$rthN!j|s`ZlNB2O+cS60UT}o=A^oqpjKQdD&7WU~|DMZ; z<tqG=$9qfb_0PGCIsU)rGNkc;=Q4Eu$Ym5{{+nFJ6Vd-dE(5Tzwv_-$46#JH@S-g% z$gU1ghw92N*f^AyNrfGyZV(DBnWThT)feZTvdvg3FH~q)jCwRC(vLXBiRccor7p;! zf;R;(II53>8+wnV@<#i@>0zmZ6)tLW|4QH3k{_yLOm^+^n1tz4_6meDHLtIzftf>5 z(=||Qnw)2+q0O*kz;QoRW>8E5PtsmVaZauaQ`=bJboE2^M-?0j<fBE&O)U)J-apcW z!ahL8+f0=#?0Z2srClhEgHLz4T-aalm80G?!ejas!%wPlMWTonwn;pv09JPiGP3&+ ze0Sz<(EIHL>$5(Xldm6!?zRM8;NF_`#l{r@!dHP8i6M!HI~4c{qW3S)HxF*fa2<!D z@l%7chBcRbvK@*vF1)nW0Ze>@mW`*%?-EUKI$PVO{vt$YgD#+4jBll=8o&*X;GSsB zB+gu6dlX@=^m**YCr|<{*f+7qE(Zpa@#kcOeLqlTFHyX*P=@eohtn$^iU_BqoJuA< z$akYFb!qJ>)0kov7r|mA7~_%^ZmIm@zAc`|9VdshD0Kc(Okg*y>ntf~8h2;s>_^G? zSmyS<y?J%JoVP#y^|c+aq7l*mv7(V}^f3`JA&<8$itaLQYymEpMEk@Y?dd`9R(Wc5 znXp1Mwg1c6n!8Q&updLyD;5Fyyo}rFz_Nw=h|bh3>>J$9A$?6EN3y@s!3x99+4#Ao z_ida(SMLJK@=F=kR<gb^^|kJ$XOp#O)eifqmmJsF;Y-Non8i!N#=Yyu(_KF+)~9lM zdk^=gZI-+w;gyWY$?w{AX6N)M3`d$Oix&OQ)mx-{-LHT<H#gU<ng+b07>zUo`%)-6 z3Wk-T&MD)c`YdxvB@?<ODP)j-Ni%hDUd5rR%9<WDxI{{=z7&@NMrnfprr)D9lTukA z*ca*S(^)2piv_ySEogw<yrcsQ148Hj$NOm>ZyLkK@RAJ$<4nv!Scy&M%gD}@M$S)a zyMNoIKhIT`)g4YW6Z~S|)r<x|pgaX-?-DA<ZZXcN0(j+@*lKhuDjj7nfC|fUo+!9q z^Wi0-xlD|3-mc#l_`i>}rA@(o7rkezMq|gTr30-ifUy?R&n4s3vdjDv*p;*rRT-ta z)L2330-=h2CGwq>iepTLQ`?zr8=<|npYo6DbZaLDTNEX*Z_7N%fZHQ7x$}_y6(t{D zG4cr&g#?hwVBRI6a6>`%Vv8%kM^s|^J%~gwDT%VbX5_KfQp@Xv;Z=$68K%xFUmK&Y z8(CIMcn@~@bz*yyWEB`r%7&oC8DmMx*GVWcYs@du-dl8rX@(JoA&;H6iriwbl7bnN zFd;z1qF7U&kKwEcU!3!BKG}Jk>-l%#XlZIRPiem$ZFrA77zWlIgBS-Qtd@)>g)9|_ zMWmNE3N45ck@q~=*4n2d6cJBlIl?pKquIfYGM%YA!-=7xsyjgc{1COwgk}zN-i)Nz z!DubT7rS+Mo@}AVx5qBC0Z)8DHb3>IWX#=>q9$z0Lw=K9rK2eRNJD|@90rwv(_Gf6 zy9OUq1N5LJHGqPp*O%e5{ghk8v<X}?0y2DdcVgD;LC_J*j#3*}g9C@4Zsmj-_+Vtm zL9gPy@^FBlB6g?Nm#2#ZzC-`bU}d%*yjaN!J3L5xu(po8(<-um5PGt|ojjLbyc0n_ zT~WG-$-kOc`yQeb4T`NCd_n&!mtwqgYz%_6`9*c<N6$bY)986z<3(3IWss7S&dFuR z(f1q)6ztLp>!XgdUTo0_q1*6ZBI*je5yfZn6fEBwSo4r*$Yd_EyX}b7F%J>Omz#Em zF^P+KzoA~1m0g@PP<EdpZ#%Laul`m$ZT?g{uWYnwqx}jNKg3F`(@byvx^}=wiiu+W zVRm|gy!<P%Q*5bR1os{DJ;lk(xwAOSs_mimZYRL;VfLA2kvkI&r9?e34}0&3kyufv ziiX=AOBo$AI_;tl@q_jK@onFrswtI1eK_hcUj@J3jv;``#CJ^=_5N>fp=S@NL}ja; zxqtz0cnLk!vB_X0Zcqnijt2}ELiNl+uK`0x74BQJyZdwD!^!Dsrv0gvye!mUCZ#ee zo;<8;=JL=38U>8%4_2KS*|F{IUVKX=oc>my+}_(NF}<(OtRiZMBBF|e3I}*{98#s1 zl=T%z745dOj{w8aO>HlqX05CgXv8otrt16fOpTLw4$j+g7pHfTwg!Cs*6sUa-o1!0 zQ4<Y@s+325r2kFLPF~m=65<3*)V!whBAPI>!R+hRa8%t!s3&eez~yR}?shP@RD`U_ zY7s|#*(uZv_RPf&95rs5LVHnDr?yv9a0%$0%jG%yu^i<@MsXi85P}O=p7F)o<4M-F zsQ7sb<>86_RZEd{DRI#>cR319OjM1Vt%K*(e8sAUSFKCqZJMPbs#U~Rft8w???=6t zo8yME(_yPvg>|<AnQfS$0*AA$?pc*iW`SO?U%oDdLV|owuvGoom_|VxB5|?lqyZW6 zX*`MD6;(34phLsY6&WwJLcQKD*C#|BHdOC}B39f`XuNONZ}}O>w=-Wf;_P2{nwLC( zczFsu-W<YvKDv0bYb=rP$Z7X@6ptS8Cv4DKa_8}vlotEa=Nh~rO$N70O$58yzn?Vn z6@d}hh}oSDU{xT5sBZ~ju6C2IER!M?45|)X!D<=*;6Tomiy$?0{RI7T!YKKDj^Ixm zN2Hk@JP3f}5IflRHcNx<4NOp;p7t4=&$G61a=)@JY<}QSOkLhNZXj`G*qpB;Ey~i3 zFt<2<F$17l%*1vg3OVx8htctCl$PEq1rnU|4A%Y>^Mq-iO3nyzPC(jYnwd_1M*M^` ztBm_%m<Mjtjq5sJBirC8OqLkZ6F1Y|P1d{m>H7>Wbmew{mf^{<DY%d?b8ps@sT<K4 zU*ofP;X$UM%JZA)$CC2i*;Qn&^6hQZ-Ra#P+=|+6WI1x3Vg_|Be!qBrO&Z>A11{q{ zjj@2Ogh5%<45sLSc}GfTYxyFkZ-Kc$gtV-Ggmr|(uLY?opLDucbAL=MJz@W&@eUQk zKnUHboOm`|cEAW%nwdxh65>{xS&~D7#iMjT_9F<1EoVwto7#Giy6U*&<?b};Wisbp z_dL6pZE9Y{7E$lV2o|gmnoJ$3c|18uDx-3rdgCB*t(5&zwZ*hXMAUIL+4Q^P^n0rd zqK&Ni!0uw}Oe`b*8*}V?X#2r*-L@u^_zRKbKxxkqG_~A^+S5rEp91ReN9lf7F7+oq zEY0-W@vY~xSLs8?!~40ug3Symslq{Uudd41!yrtacX9Kvk66i<#XIj5zucS~?M;Wo zKBDLkB?`#Xw_DEy`3C5I0yO`R)A075dZ=LjSf_1pDkoqS<ye(x*PVJOjpur(+n?9m z{RG#>Ua7VsV-UpCOF@@6W!UFGJRgEKrAUk)9>>x~T&6!d8-?XgS@I#I!%T*O2A#lU z`}ktMoVP=nL%fS<U^Ctb+dcO5E|P*lts3=+Y)5ij$c8*W6N%8%42}g6dwBB-7h6R6 zqi15yv=czvh(6MDOC}kt;Eyb{xtFuwBHn3@aC>!ja=LTBxOq7}zuq^zvOtPvR*KI? z^Cp}J=R&j+SKec2#wz&FZ@<2UnQ0;iM<ZYR?1HBDQb8jUG>k!&Xc~o=+WW+dF*+us z%YLcG|5~Yqq)i|%FFlUtdsJMSmzQW@LP5Y{)`Xdwih{Ec9xkpPgN%qh@NrkHmp5sQ zKtcWbk#0JpC$JCe?U{9i{~8djGlLvAU_@t$iUB_QF#{pEp!QUjnp0jY#yGpGP-rL> z9$YCS@yz`FJ50RyhEf?<ZPfajuiMT3<LUsEH*0%qvrSgl^Gw^v4NG1$y7&ifrBXya zU++iE0BQoo*VLj{G=Y#xRcW55Ca1Djc$xQJE8Q8txPjDDp|U048_0d_!F-e4Qy4tA z=rVxTEF_+egrp4|&rSB>_D%EcCc@+Xe(~{&=2&fV;*tNM>Efu0TIj$LCE?>Du~KLN z-4k$B?o#+V!?6=($v0k9ZFgrX_Bhsx#2888-!;m`o0om13@=>NdQzWkZuA>dde-<W zrWE~u#*_rOg-~I`VF@I1>KO|nZrghVWPdCu__~tIKcoC-!=VKTHoq&5s5NQW%bY3Y z)1`WTKyhwd>xq}*0K_D7n+ST>Q2!djR$dR7@{f4#h2ox8(N+&OhPVTvHJQ<YcP;OZ zykNXVC4oiGS1!^>(kthmP{C&gNvjlv{REnQdIw5Omc(V{(1a;wB(x<*s$is`kUCbx zD&pN?dtO)nPWf;5_O2#d&x$%I9tBTc|I3N^{5`{wdqmC3voq_cW4uv&#WL$5OItcU zZ>O7$eyAx4A(GzBHGbpx=<J5EY>|te_s3>{;e=2*!iy)}r|~V{#8iSMt0v`4qwGJ9 z!t?4|0Y?Ta3_n27Xg>_*)<BB{W6&Cs*W{d%>K%s)0KUKA1NgNvJPb$@@Q6?;{-uwl zB##a4d24HG+HArfL<aM3BBSyTA|vX++>Gz;@E7x8f-A!ym(m(WiL@gbs1WMt9aZ9w z!qGrz5b;M#7CQ(jJ|n7h@Ag)^t%w8g#}32uF^hfw6rRiAuxK&y9%F(xT+m_90iIB* zhIeH#&$XA<*C>bUO8ZUL#MZ6?8Cx;(bjr84i@TaBn~xZkxrFvFA~!%Ow+{`<_#Y^1 z`Z*X=p%>ImSwg}?%5TbruCJYYog5u*Z=)OT4G&`9n-O~w_wNRI+~FM)V>rf@vj!6! zbG5uZKCZ3{*xpaH;4UJSQCwg#Z_}Az(Pu_uKL0LH1jTq+`U3P;z`?|GG8Prw{Sf8% zZr<C};G5gcAPtz3wKS9}$Qqeqw>$)|9Ub(xH1X68?w<~$5K`*^GzLajrG{+s=Qbr& zL@RQgh&6FcgqcM4@J3>gZup(Vaj!9f917*cBz@qx#=;WA1C^^P9{eE?sQ%F)by}(R za+uw3Pb84niKm0=iRKID?XPhC>P%#tvtr~QRfES<6bW6MLV=&I6OotXK7ZvO2@66r z<nL+4H-!^W<5Oy|nfp%M)zjXafXZ#P7mMcY0xt84sG=G%s~sz8$r7IsbeZ^if8wUo zinp~j`CU3bh&!u(?u&u^njI74#4yJ`%1B{j4S=CreCS2~-58Nbt-70w-=h1TE2I{% zsEjyX5gM7wtf*HEOTu^1pd>i05wJ6b|3De@BA^r}P7ZM?E4!9F{*g2%9CucxP$E@( zZ1JV)WJrNF*e_i1hJ4IUeL-B)B36@^mu<Wfgp{Xr6B@rXd}MdsjJs>Q?}2$QudIVP z?zr!1$KK7>^>*jLB9P=MvfILj9fJ$5pGjx~{5t4Zkuh0IQFN%@6SB}iaef|JsWQ^? zVMMZ;O}rpn=Y*@YRZLEZjK&`cx51)hd0;|07@tB430?}`AVeL#QJ~}YMO+he15Yno zEG2~Sm69is#YVf-PCKzeiu)oXQ-1Hta_P}yOTKIQa&q#0{l0Z{t!znh{L@1+1nn1f zzh=3w0((NV2AZ}Gd!qS)oj@(x^etUvjWo<Z!m3O7`e!TW-=&uFtLoNCmvyoVYI3)g z4dhz4g%KOTLc1six-70Akb4uI+8*71b86`JTan==>AT)+w&Khs%>{UK2(rom9sW|Q z6Xiz1n6!^-rzr6fjIOxHVey-x3{e1mvEYeu=B2=vT4!8R2IOl2``o6~-PVQuLzAtM zne{u4R%gaH5p@mE&bZw$A8YO{(TAUV4|B?kBQv)_uP;~j#$}lEwG53n9;D2l{?1wW z!<l81nN^U{d{5`C5D=toWjRjix&z4Clc$sCMM2^n>>2425wNdcPzB{=;l6WA6&hDb z9W6Bt9&ROBH>L8zUuwy|rh0nvU+N3yIBrUp%A($I<-7=(*LhVX=VpsERr6*fmbR*e zVUX0pw3as*NH(eZejRh_%uSAXL9g4Xc)#M+fwnA7N#rk23?M@R+%~9I$QPbih_pfy zsoPfAA}G1@Pbzo@%eWHhx1^AReUXKdG%QJPquuQF1`9OIPj%NNb_2|AB@tTDWyO2f zS|ik1++6<!w%|;CofAcuF6ylKaPPjI<z^)$p()#H9z4yW1(qvfHpS2M%S>c_K6oB7 z7Rl3|pQ6Uv{|r9OroN1TZ`p|deB+Tg376{H#Jtn|YGcQIb_coDKIy^Hj)IG;`1i`& zR5Pa@&nW+E4SmYS)8&vM2qP`e;cGIhFI)jbN}mN?TNm@&_0Z2EW67Ysd7&+jhrW)i z35Ym<I2h{wFT<Z6w!bBKFNGlN4&ni6ROhynQnrFfrnX1ioiLZGH+dfhQ!=fce!c>u zG8#|b;j756P(6bCGoc^{JwOo$L(I6(Z!yN?2zdo@;X?|sbPIt_=}cUk3Y*|g<CB1T z{<_?1ZKtj;9SIBWW)kZv%6{?CYkT-1uDsi`pEQ=&Hz$AWHOqd5@P=KY&=<Hw;L5qy zxi$X2lEh)|rsLXCP|hM}GV@7+KXsf+8VVOKFxFTRK~05jA9Qn3oP=%Lvdv%@bTd)B z&`w7r6F3zI-?Sff);F-^=bO-(yd3eLq(z{!dFjtL`9!yOY0}3b;>Z2Ku8eG(S=c6s zu9RagsIx`}Tas5y&Jfot>sI)WmvGM5zQ&?Kq=d%7P^*ls@*|iUtCuz5UzOJ0?CE$( zCv@$pUd}FeX0D9x4c!;>=7ckjNvmK^)G;ZXP?qJW4xnceyvj&#I|AO-Rku9o8~Z_F zd1Xt=MH%}|C*(RL443Jk9=Ro{xw;;Fw2US}Z|aM15i%K>(~-F}0SPNV%*w}KTm=;G z{0W`p0%|)<go#pn8xb2N3x+l^`}sR0rs|ds1UCE+jf_%Lt<h1wO`N*GCa;~~ZVZ4- z<y2Y?7nb3h=`D2E8WsnOaxD?opR!r)2FtdNxchx^SNoLrv&|V-b90NdHvC?4Y2)D| zM8UR$J}sS#y65FgWaa-gX>kN@sC(<j<LuvAXwCmrkpr8m0<~&AoEs)~%oBdZS3(nx z_O@K@K8h2M3;!8&QBi0Bcj?aKJqvRtI-=@^*;sf6WuZ;wCFIj2YrHaArYds3;QT3x zU{mcyOJV@U72D?P@v>uC;-B4Obe&KD906IFjX7S8CJ}Su1}q;RKz_nU{^-@n8xMjn z*i6X-Qvwm~X9YxF3`vm4|Ce?#Z(9GqUbsTZytILGf1@1uFcaUu#)5$6l3~lvlLYda z|8?H-Zv;-(x%Wh)@dcK6T%ZC%xeHC3PW`w0RxdCPK(^QKMw(BnSA+QX{`!A{9AL+0 zg$xLm>p{XJB8iNQ_8NX3<&a#H)LiMfnS~D+_jYirHi_~yk(rxwnk|Ku@0XBBnq%&q zDS1ksoSS7S>)qy8u*z=mFpG51`MFCzOP=t~Z{NSVJ3F0Drh%>NIaLaZy3<)0PpX`k zrF?vYh#(kK>Bf4J82)!C$KC%H%5n0)igHx_e~WSe2nz<Cr*yJW!>7^{lU7kUgX7-m z-sbfDG22>>xSu1&PpOph6ls8@2g9j0@M)0(h>mBa4WosG=y#^g<ddn_Z#+>2id%z( zZtYC{)>NEKkGZYWduPnrP<XIuaMOC(19GnQD!)P^Wz*4rt#<Eaw4+~jlWaY>*C$_| z^4o-i+TZ}~9Z}2SvfZz#qhkoCHHn2kxm~D2lHm{T6u{gJJZi8WF}wLi$JJVOCZ;po z;S{q1GWoU1aeuNEU?znOJLoP(t;(Pt(2ui#lzb;#r=+guLG{r15)P+sA-+)LtDGAV zZAd!*P(MJT1cZ;H`$;8{&7+0kMRre!Ys}eU>_P2BbG5Ai#q2H)6vlS&*yPk*IN}&e zjTqt+2KnZ1vCB<@Z9qa2@xVgi&f2&{X0K|*|8?(+1<oa@`X_yT;Xj1R`x#x8KF(7h z$fN15NIc`!)Cyt5xBnRXOg*o4UlAqyg5Ki>9;311X`J^}#&)<Hc7mY4HiLU5|948I za+BIWau%a-*HafLxL8pCC(r_*F#_g0y=v_4{vi+)_@6%z>i?|e|HtT;|4*Y|>JOBb zzZRV(83?(T0D}BqKnqqe-~R$yOv+-peWv)InC!c3e*NQsWt+S(y9Y=JESxMM0_hrp zHber0SP%IdGiIELJ{QT%<xw4mY?{76N3Tb6d5a;rUULIja4^yTg~;9yd!qxvj5;e! z0&gaPXRCiqBn3flhE-U4;L0&1u&~@wnqh!0vfdK}$l!l@awUXcy}l8t)rV4Shl{hg z)L+l>f2*kOa3CoR$gtMrF_Me5B9b(yRR@oR#+d{B5e|)?2reQKGaI!2Ft9C^C+ioO zgV)c*rEB06%JLv_iwwRA)1CZR8RxjcLI7xCTKp$yQD7<<E_nzG#gZbrN%`&EpnOtH zx8OJd*w{~J6Mp5#yitc~1fIh><HhQz+g!luXAz8Oni3A=!sp4R+Md$6P^{m{e5V;b z8lm^nIidf7$*!;Jn=0)L_wN(>({M)1Fohz9VW1K<o)WUyJUvC4CVv&#Wte$TP^<h& zXtIA-PfT*PWcVy0;(rHEe%J1U`;EGhe2D%=c;OH%;r|xd^;r1o0!+)829W;IWv3>c zgCdcwcLSCHN+!dVhz39x0F2BB8cYXJ=wD9`QJaCD{dY3E;O~llE}0)$vdlMQy`X<Z zTl^1X_WsjD&Ag%i#4YfJc_M$~7IygqDCpOtmS{hV{fA{sK<&a;HPBhzB;D4ILm$~9 z=g<N)jpA!eLR5omF>4lSG9+_Rg(?<rb&s9{ttDZ^KIc=9w#DE-L{a}TOPL|NGq4rP zbBzchPiYrWjoJpbv6rJ8kX9nf?ijn3Ff}&Ceo9F^h8bQ4>)!wrZwE<Y_Eba≧l< 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 AuB<!ZXpLRswu*%2ok(Z)AC31JgvRjvtr<5 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%0ATIAXm?$Fsh^5mVU|YF|)n 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≠eLv$YYurm;#C$+nHIM8R4=zSf0OPD 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μZ>#ZEDBQz3j{i&6lDILrSS1FL$a$B7N0n_ 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%0A) zEV~$n)so2HhYFo4#vh9>I~PnVFP|9FYo=$VZQih_P7trhz079ZNpqK_pXtlD9ro_L zQ^aF4&96;kYZjY36iCy|BpGs5W5;8zKB^u2iQRfs`!N-kYF0BX*7DSPqI9n)aG<rW zu<)-l1_hGG;{W07tfJa*yFHCN#hs$Tp=i+}h2R?8-L*)exD<DHcPlO}?(SBk6nA$g z6VCtp&Y3xD&Ron5E3B23izMsa+53I=^PB0Q#Vf^QkOPU#hi@3=LK1>fmy>+kg!l3p z)N^d!F^Q<iRi*nE$2u}{iHqF8$j9N!#}Op=9I@+BBtr@n<cL*HRF_evkCq<6r(pP5 zm=jbeLL#p$7t9x5ID{<8?mpY|<$sW~715_xD4N0Jii?Je#sxuJMkwR@2i}T+m?8NN zQ5ZqL<!dpI;l3&UEP-JMjX<;KeGrj*D_iXT{;6+eOK!X0!T2&BejU(d0`pH^()oLY zw=BQ&%a_3y9`^Tf-@SN6BmsHUyr1MlqGMqZDUl}%8Gf`eB~pA$6ftwx`htx^9!oH2 zl>rRI`N*;Q@W<Wp-{l9jgbsxUXZijb_*d#c%{j_MYi<fQ$EyyKal{2P&6{3>hZCiJ z87Qv5&5b%u9}_CUhXE{T-R%Juv=^piRSgLYB)EuECmonGr&Hnov6Xm}q&?cB6gWNH zw43k+I4GQ|L`WOp-ca@a5q>u|3JEz9nWQC(8lV=E8Se9+;&*`}pre^BwBXyU(@4u^ zuw-VT7M|tOg(k}Ib97sFimjD4<)sZ6qK?`Z-kpvJ<KTsd@{YZ8TZ8@PyZ+*TH%We$ z^F2_Z>uIv@i3xX}?^!)APeOIhWkn1*r>0Xcth96(QEm4g`oEcP_AS!W2nKe7t%AeT zduRQ$^jXc*r2hx`O;L|VA^UhFiWX>=X987y?)s0-4<>7bCs1zYZ9?{Earx3x<Ti7C z_i;H!YesrGK7=%>(o!N{cDAq$Pw0fy@0m8lY++<v9Iy%WgPdVErQzwPH`r`p4_j4! z(r=Qkgw#OkzAgZQFDxzlb9om)!3g_f$W>PaTUcF=bfpe7El8#hFw$>|-M-aEpTPU; zw+CmKzYlJxbmlc$D$o$yU;2+NEeL^jT3Edc04WD>v=@|!WpARcENNBZ;67%f4*~xY zp9QlKbQ{YVQ`Azig=G&Ar2&(IiBtLkO~m;seiD!~E9&jcirQb@9!LLg(wzomAQzoK zZvdPLj3XTM0Nke34jm<?qbr<o1(rERmI;GW$WYO{i&%b_>@8q(3ZgSdD1G{8m($ak z5XNzK?@$z3aw>9fsgE*0e>rtg-RJy)xXu7S;a;cyN7+tRY|!7AQ!7&A3Q&3*>X%T+ z3G&XdfUggty-6}##}o`T<qug@+T;UL50Fg%($Ac9F*T&f4?e{xlc$p}a|}gMh!L~B z9jn?07-D(bbx|oOD0WeK@O*Rbr3w~$Fhz#=TM*vfKG`z%u)5<KvP&2_W3da)u;3jF zY?8&%H}BXOAf7#;)D)6r#M;c3!pq+x$34w6k`S0yK!^U&cj&-Fy$g<xH&c7HNz5LV zkN#!XLA;{(QZ%!8dPhzyjVv{(1Ed*x^Ns~TykjxArZpt}c@%<zS4y$}pVph$|FYh= z&`za6tT+4r-Fk!mpVph3vQQ!rl`-(7HSwF9OdeSxl|HfMEaVr1UCVHT6_ZGYwc-!! z<OYTcsZcvcJL^x)qU}F?+tQo*K<xse(Z<nA1Ed**in|rwQ4S7ev-M}pHtE6e7zidl zRs&w&eb@e|k}YiplobNsP14LWYEmXmD_(ewY&<};H&-e0wEw&Ih6)#=y(#%edo%vD z0+%Y-{%`FKJpgBfYgZiiBv@1GTz}}g<W5NO&3hA##1|Dub|rHT@!s@?($NdUHx1W| z4Y&`4WpJ)qT+QR=I@thI+inre_Z5uf+0`BbPoaz9Qn3?mALPTP5AkG~g3Z?Ut}Zz& zSNM(Y(R1HFob}&a&5Eo(U23o^cpAi<j#aM}M)V%0)gI{_{>bJ_X2|Nc$)er~)|_x> zf%*Vieu=Ajx;`YSuAOrDx+eAQ>sYpeaIBV);WOOKSZh9Hv+^(4kw~!WNj~OUc@%P$ z9&HOU{jg4xbFH0QUiHLnq!Mm~O^m&=jl4`rWL2bTV*|+OC4j#$QTLNFyhi)1r$ig6 zs*QA!A!aP|DD2-0yJ2)O{Nt91fS7de5%;GmvfVnm*(mFip3gy)gv0&3Z~Uv~vv0Y0 zsqNtq+gvO(hX=`I_fM9b8gzk*fk#LgDC2X&8&ZfVl+>s)H;Nw8hPOf<#}emMD`zxM zE3NDvk82sQLr`N<QBhON=Vlha*`Utp*(t5Jz3nZ>AAZ(OATrZRc1$DuS~2#S3oLI; z{F!(rw93ph)DT!^c<}ElV(M);s(|@HT>nZb!{}7fssbl(SDio#B1$dwT3Qvkv@t@Q z3PZOKff8M~Onrpc1_G>R$`Y#T!!YKdf?u(!Ykt1Zr`PNirIcX<e~87U1kRs-ayn0$ z!`#5oOrxCPUNf=78X=qk45u)1j1X@G1P{xkFCh5_6qZ)hO8n<4@_UT(sS{-$x%_R@ zEN)!6FzLhe?*1QzJh6r6G@*bImwXkF0US@n;Ooop><4Q&$c}#at8~y&ah>*p0rBS; z&bwE{33M3)R{Q43W4!@OPLXT+Nvc_y9Lcj5sOOUONl89isP&N3<Z|tC>UQa-!idpX z&kB1o>(wIxhGi(rMw4^l3n4Zp*j#Y#-I(24Nc+p;H>cQpY7Jq3mc*x&j%Bp>PdGxZ zo%LT=c<u!3wsg+~^*S@m?~Z)#3tz5|OoS>~J_Ia}ryHTQ=!STc-Ue?vq`(u_%M@|c zA5hBjgsxa6uFT=($6FOkz76H;AVYZ^V6tft3X4BIHQ?<In+X8R#Z}M3F>MXnMM~K< z{thRtolAKbU`9lPU;I^e=Ov0w=AOj;-C!Ec1`FSnVoF6EL6z690h0I8E8!&49MT#8 zY(FpNGgQyzZ%{!or%$uHp;J$zWYanUM>QlaMLn4e$HpASN+TIIv@(M_m3uhTzG=`* z4xp(J(bj8naFk&N%ruy0(n-}+!|ckc??#jlhdU$(EXZE%U+6S9{Q%pYywr50?pxR$ zi9Y;H@?1H)vN!maJBQN5y6MJB6}~;OJ@T<lIC?ea%Ngrpj1q`Sg~HCi!$pNckFXZV zL_v^&o&3g(#}5T$V2_G|8SIV!z*BTG3${2$riu8dc4HUTXE5L<X{GMd=A$zirbLT^ zvThNk%{UXI-~D^NjW;U`pO+BF_Yfgn{U2}iin&CF1VYqfzG#j>8}*7e9gdi-<^I3S zPSSn3{U_YyGdDq~kDpRB-hUuGAy-NlG-PvSrnJV)N02=LqVp5m3~DLY1JRoVdUGLs ziRdU(?@1R=^;lEES{ujmJC9k3yZ}o=#-S)P9;H}Q&3cL&{a*I(CJwpV{@+1y_OC|x zaK{gjMXgg_89RW$EV9Z~=K??u{olJ-CzxCU=aE*CN=alh<;*LTR^6QRTXwgdPpY7M zE!QF9twF+KgZs5Ws`4q=r^hmAo2K*Taqv_=3S#9$Pw%rRm&-?9#{itYLhs=V!?JJq z{PEMCF2`T?gHG&2)z9;amPi>X6>LU|FiRST9kuU1uH(`|v__c$rjQ>mnW7ZKFLHR? zutKM?b0ZKHlrmGXb>4s(pfTP5r(dSJ0?BqmdZv)40#iSUQL}Ztbv)<SiAZ%3d1Mdt zxkLelGG!HJcTpx*+|;1-o>yjdru<^<05tU<MZ47~@5=S0RLF{Y$xEs?V_)W7a5M$) zRwLE^?SlIK|K)<3v6Yjnmq%&>X*0k3;FN+dI~5U7*biB4=JDE+!7+W<I0-<mgSenB zO`ypS8+Is!)iFK!JqCRDf04&Byel{q?pJ3s8s@wKND@3?fP7oF^ZwiZQ2aa#=I+5I zIXuiFXHNw!mOs>AQ<z0Km~R}!M<P(O!FW_(QbeH;a}juxXp9IGc$0qgltk`^R_Wv` z5}mtl=)*efMXQvzz1Qn28cPjp7F$=|MRP8cT^ji`Vwp{t-T!H%D-R6`_X|Djf9|Gr zTR*^|g>}BPf9;hCV;&miW0@|ZpexDRSB5{bYE0{#KUcN)+H??4Qay}Hiy2Y$R}wdK zN`GMZLl+3`uIqy$fDxqVR^{n|0(JjafB=7ekaj`|u>Ir};Le%d;i}ka&@Kr6<x#zn z@I=rw-t^%>tJPgSi^m~2<#0@I*`bO)s>I-h?n;m@t#g$CB|`;`DGwAj{+v~=uI-T> z<pPm0arl}n7!pd-ER8zuo<04umGmMC+<<{Mj5f839*Q^oU=jBm@W31`C>mQlBzKb^ zM;HMV<NX=|$Fb`#4MQs}eOs1YBQ0v9Aq;M_kqqH!Y{q|;ao9<BH6{bwz3flg#NTsM zKtPW%fV39p&M(5aTx*pJIc#aYUSpszEc>0z$CbI&pFNJg90`G3a`|l1tR$)%uHT2( zM5}qO>$Du`gY(M24u^9~ANSQM{%HA&Z>cNI9ob@<Y8JsLk!Dz&^wqkv#yBrn`Ayj* z4#N?J9-rEfA=h>tYk7bbZ+B@QL{Z5$udp12TPPJeWQ=#5g_K7V+lBiXHI=Gt_iVr! zk|Lyv&*<5l&u)OQl?oxdlMi>_Y*$itsSMb3_+PV#TJo*&%PY7~XpK;H5X2E^g4LR1 zOG&VJ0s((<0{F@9)_i_>Dz8}3Ej%qmUDW!v-BkT0eLY?C?#vblx?@Da98d4@lz?C) z*k=%o1TNAYEm~2doYmKcQk))C3HSFO@e(5o%Jy#xe;)26e}elpwLv2F8N^qYH=KlH zpWMb3m4NwJywZc!IO$%vSqF=eDxSw6f$&+yB1NR=z#lw}!~OobS11s&9`*}^y`NOt zh{U*YcWBpM47b-y>m6x;UZ~fx=sGmv8>N%L9$<C3Lw7C<xJ5(GMq5CFv#y*Y&PzR4 z`!rAL=!$|#$#5qAM$h5ES<C&!t&EeekqDLW%2Avmb#LSIe137RzPdZCtZEl_nQ-V_ z>(pyA;L)s)^(WrkKT}(xn*Mx-hRWvZpU<T%{uUsB8;JJ3(kL-l7nP7&@#V=j3hPUl z3?>y`a~wlt>?T6ediOd`Qk3Ex<B!-+Pe2d=Yg~Z4Rsm#1LgmaWjyHh`ol{!ronPE< zakdJcB0m~fnm+jbd!o1Yap(5%Zf7T_H6i8dCh(=-F<hGmkVBgaRZV~9V6%fqgV>%A z^|S~5BpFE6|3lpffK7>N76G&0*^#&8KJW@Gmg_xae#k#o)K{2hvJQM@|0WLoJW2ej z7!d>+%>NJQ%zfvw=Kf|EIG~UFAI!cYLixc43Y-BgT-bj2Erlt;(h_~W)3T8&-Rl?j zg;S9qSR)v$hBsbDlXz~5KLV9YOhBT4%8C72ffrSX3O=EuhXO;tTA+i~qWZVM6FVz{ zEl<UI-tMoLGOy|+!ozvbwz?gsZoB<p{R9Drdjs-$11Z!O2vMEqn~d~Q!m^n14y*!? z+usZ3$OoE9TwH)vmSVu2p9FsmIO5+Me8vo+(67<#W0kvV!$BetK(nO8f!f5x=Y|cH z(fY<=F^$jlDX%{aC{kBx$f2SQD9SHxLo^hobfg!(h=d9ifAjyCVBsEsYwwEW?Kt(8 z*Uk*`MoLTxNg7)kLH#QI#>sGO$ez1Z(!=q#XafkW%<eX?Pb<r|EG#;8ELuZ*X}@4g z8^1O`W*+H!C;R;jPp8?wJ>5Ee*boJGJU!37-zU+7&x$LMya^w(NrwCB*CS31;E=mS zl}t4rL_%{B>W?1Q=44ro9>&K{Vy5snHn~xekaQDk#cmu_$Zo}6Xs%{FsKf?+#FNGv zM`<KMw@%_xwdSX{7U#edrwpIQO@fjNS8~{;D0jdr{+(W@-%W^$m(P=qHwvy2{Z>I* z6|S0J#<xVR@`8vpssD``Q8e;gR4ZNCK^ij<D=0lY*H}8%)W*hmBsq|%o`|g%ZCdiX z(OH=&qf`$H!=VpcAXN<uRv3lWxr5sv5fx08G1zD45*_OdIWAATQwc5^Xe$*=FVzP? zS1Sof`i<5X;nGhTuJtirx|Rg1JENNxxQPje)!ymL6?^SAIR`5F>Qqdvn-F}L-z|pJ z6Ym{s`Vr5ARRyW12Qyzc15>7c*oHBF`|D!hzB<$?0otjeGeM+IIkWHQ7FB|g060ru zp9YL+MD{N^`QCAcl+wqw@PkFi(8AlM@O=iUrLZ?1Tlu$jcM+snXnh+uPj@R%2EI9N zU-TCJOTW)ky>f`ZXGWuz3AwMO=b=9}_+Il}AL)Yplj|ppI9<$6O*~Ak-!-u3uao$` zllY^*jI1S(Uk(H_^f+_VOCI+Dl0Pf_!`6#BOn*w5?f8X@9EG<;Z1L{ZuXiZ41vXc1 zlLuBjhoC~%3sJyP6*<2rte<qZzB?Nc6I`mVcVv^FtyC?n@wT||$)0>k=HKYh*Ft}8 z4*O)j`I}zZ`}L{IpzYS@{Hb^FYJhck-9TY}bX*couvn~IcAyaTDQgnChw46fxuJL1 z@T8(KBI-#(Wnm>_l{_ZPl-Itz;2uCNmlze*jr++2{sSWD)9*K~0FqeNVIdJ3F!2EO z1|7IH;fvq`!^Lnt>24z0u=;1HPDf(s=PaBXo;?1rN8Sx|4`#H;0lSenM&E<b#6mas zFR=E)=(ib_Re~jwyfrvJynpya2KTTl?q?_cMKp6KFw`tbaXXM+1v%j)yYMD(&NF^J z5J@NgFS6_hUt@hn*qz@`)e*~Uh*n^Qnd+7dr>kv!0o9THz|_LWVVI{lm65ce9fg2Q z1|RwZpTaf-t=Ju<u4#wY8)lwLRy#`M8HySWW_2QL^9dLrD&A**E~Fgddjf9cfWX)u zI+;LP^(0$CtaiFezQYh)q*sAz3lumiY5z$&+ZZl{k2j4=3H&i7tj{+~)6Q;tQfq>L z`M~aXd?#^V<^9fw(Nb+Ul$K`5rC>nwim9(6X!EA*Reuex8YCzfoXh)pB$11}I4S&a zf_#aM!2Wh&m{?3s`90?{YIsSNDjX4pVSW}er%#xiU%)e@3K0QMDNs+Sak0Muygm#{ z`MOV-Hc8PBAGe)dM((1WfUloaP2@TqQtf~3W}rjIcKQ-SKMYd%=2HnFUk;X*Um7P5 zt$D&w_=>y+U5Y%;W0u-_`0NXI{&BfuJ$!uH8GJe0l>{rZQePTmA!0Lr^v_|4rzbxr zKof2FDiwN;<s`!2=`q2&*frCJX}hkMG$f&Tz?|xU<%+}&H6)C4d6gfJbeT{Nh?k@6 zyn#cDB@aNq40z;}dL8#vJJQS5**V@%G1mX%n}TtBicwfHn)0jS13uAVb?ml=Qd+G~ z6I8ygp>O6{D%}p^({H?sRgBxCkk$u(@2|4!{yUQk+$sJ$h(iWkLownYkoh11lMe7l zd4Br)?VL~06v8#nLB<bwUZJl2IR&Sq*^f`RB76iGWDb87_<Oh1iSi&%*rFpy+_9ht zbAkpp8b3Hld|vl`ZOAdm!$En5H+*QX;E+O&t=E7&5$eH0#0OMJE{;9KnqLmEAk;k; zf>uU>9yP!%1*3v}PPbM|GO`RbeuVIdceVq@PhbD8yc2mT67`m1NZi(2y3f<qT$5p# z12C$|*u*OD(*iHSZA%x0-xM?rXf5?rP?l1H{F;L@dPXI->_{YSxlCbY12Mc)47j!( z2Cs46HKKMO^`GA?`V3EfMqx-*>WRB*5yb26-ED2(?hLe7?EhZ%)%M1A_*8>)@e}E? z$BRvhHqn~#dS^n(LyRKavKw0Hj}33lyFg%Ml_1zEeVX7pefdIu@<Kj3Jd~RlGQQGX z+64Xlv0C(PkW6GWIkJJjhs$G>?v9b{qK!Fx!~Bf8S#7gxCTw*#_G>&(q{WRvi2&UO zr^k=dIY(j%c69IRYIW@t){Z9d)0yH&63tlZ@}7*yAvI~bf?0bh(|QwCe*DGCsU6ig zsjpKNC>2@6v`zWxU*;TVK1aEbtUZj=UYVKl2X{omb?3aZX7livvCUwk|9Ndx4W`LI z$|*x}nRw+md^a}4!_QXMX#CUS{wDKf6MDnZA;U~X=z+Bz0V03s=$nJz8kee<hqe&y z#~@lsPOY_DVwfd;qSVCiQM6vv{x#FQ2uqu@Zf(~oxZ=>Pn*sLi`To<}(XF=G*{Mem zU3=xW$RLh>m~a}op?fm9J-NfqF}Y`TfkmX>B*9tjPgAMWsq&v!HpI*#<7Rh-t>%|6 zezQ|e1~1O(H76Q(nZeC?6WC_o?fgB9X(yZLuQG3NK&cf@#7X2UK&3Fo;Q&Ub1;~~| z9r$CGFv3Jk@zbmeF(S)d=~cqvrJZD)GpzG^XMx$WJ@_f;Lyd3elz!^<T~}R!B>6ao z$2B&H;%-m-s3A&Nph{(-(?B$~n|N{A&hD%w*;H5OvB?xY?d}`DHdr~zu$E`R0Olp) z)hN&DNKp=KE3DIr^|)gAWsP{cdhJo?PjalBDHSEMY->EdiZ|u?WmT6+pqX4C@k>}O z&=<RM%9n;26%pT4ZgSbeWy5Rl($W>N(!IdMhQ)fIbZOaU1p%8B?{=jre2e*{;iR0l zYEMpUGOeJ)JGlshS8>Z$;4s*^fk|+1y6Z1%@g1t3`^vNNi^!HwAJc$iHFHo~i^5C! znI4%zHsHRGnZtCE%ys|M93YGswG9XWEf?e<y-0)Wd{b@@d_T6TB^@xP9Pm&x#4|@+ z*JA^Y?x}JJRPyd5#9A)pIwfMHWOeG{qcCTS$aVj$w^G9TNAk%_Y9P*OqD^GwmQc7n z&Uha2ms5B#p{^;;&KnFM(a#7E^&|Zvq&vCVGnSKcmtZR`un`@oD{u@zT*-^}Sf(@e z!3e>Z{!RV`98-W@5MHB7Bcm42Q`_}oV7!pn7~U3#{@ztenS|*+hChTM@!XjznbgIh zoA3SJpAM%Ji-{wwlu8_AJ`h2I_=j+gFU;TK0>d~n<Rc7yqbPRvgQGbUY&|3U|HA9@ z-EOAJz9=nYZ=-!^(qtX>NOC{>7(sTUQ@UJXg=?qzdI8Q1>1Z#FaPWD&#fTTwibM1s z6_dC>=Ikj5BIWioxS#VO2^vRYH5pY|!C*7a<gU>yT2M$<AX&fxoX;XK_4)42Xj7uX zM_K<Kf0@{N%|7=dKePYKA9Y79?JaDZ*(6*hfNUB#DN2XONBs%*T@nj*TX|W0LutVS zN~ZJ&(Fs5+Vm=*=Q>{cU{>eR~!v?YxHlb`xY&o-<nXb4@WUdJF8LO5l66!hGWWT2_ zF1(r{%5<56m;aL6UR-`B$3x8QSwKmwI(~vCwQ>^i2O=HnctByJM9+|qkaJ)aUb2f@ z=cK>YlZ&`L;^}sgBV7tjOH+w9RL{#*a6Xrgq;`buxy7EaeFplKh<C@&jV%^GSGRCz zk>_X;cP*&zo<AJy5rmG%5x1r#HZfFR;3R)JJ#i^%$C;c>n>6c?XuvvG|DIQDeBJ8L zuo5Ca6<1sqXy+~NT`s07T`50$+)q2KiTU0^{o1sHX`uc?9Vde<wG$XR!eFhc5hiM$ zM#g|({5%{SBS4F^Tbnw8G^|a-vWhkgjm|PnK=zPx$i+(wwK=aO_6J_}DwLp5LM87d zid|-(<l)`k299D*sxHKx_>!@ZUlzig{sK!gNy^&>QK7gcH3!G_l@Ra+)_Spz@Qn)+ za&AehZbNA+el`r7PGeSMt1Ju$rnOg#ntfLmr|(TnNuUD;Ga||sOOY@cc5It<&@<x0 z*5fwm+q3ReOs{NJFT|X^Y^8jUTCHg9KCQoaDZ1l6dktF4E3@3F$)P(iTY&LCC>CjA z%P+*LJ&JwVZR=1Ta`65R^^j%qSKF*owNhRD2|S-#G$NV87zfX%U5$b1`ytf#oz-Zn zD5dth=POZfU$8MqsEUfR_a%H7XD08N>#qvblq~F2$r(#qq)*41fl%i4X@5@7{=?wB zl^t8l%$ll?jLc)1C#ru}z)pZOPvPg!*u8nCC^O@7u`KU5&C4OR`%6kn;wmm2K&wb2 zB|>ZuAufgT?>$smiF<$)^z-GC4b=y%nNQJ{)8icHqllf)$BsMKrr~pP1kZwz<2ecf zd8UWRCc=~-ebIa#)>DK@czwA$pNXu<%nk<UgIxv<1a(RO+Mm8()jjLHHs~|gAxfNK z6_(B(eExG;QW%6gLxh+!#v-i4rOMIlg+-}Hmovoz9zi3f4*C7Su?&OjWc)!WGA)AD z`vIO|t>=dl#5)lcJ1;nZNr^i%QMD>F4)@q@aTI?hNXemkWELtyS<-gk#7I)o^Lo@< zpEG#Y*xH(sHPQRjZPV<$>RGm?mvb8}On00U{aB`)zixeQ*<rRbwJGTDzYY3@(`JE8 zJF+uwJnuAvR4rBe_n79={1-9wEi1*XM)5J#K&85WyLQ1-DAdbUz-y|7oC!8fcj~CJ zk#9>AF4k386XiaggPQIL;fu)^6U6%*p69_47vHo|!~*AF#7T?iqpst0QJi*{$+Jmf z!K^V<@XHDs6!_P#4c~!$?}K|`SrL%(J^6<M6^Z-mpmlKXhFkTRBH4M4AGxy3rEhjt zbI_vix!B{J095~tm?%=glDOVHOJF(U1e<W_6&&>C_W<&E@WjzU2$zl6rWl`RwJ>-Q z@BGFNtT68&R0w*>>U@qKNh9aVla9|}n!!btz$_SQdnO?qg$B|%i({LL;YW#|q^K=Y z<JCyg7Jw)`0l~tlEsun70gaFN%W+W7+s<b)xC>;In(D|3>#^I5s2n4Is6d9YFml-7 ztlzVMv_|QkyT)6$n**5x#*86c^5vVnZx8o9ZfCpiqBKuvhab}cG)t;l@8}uxq<ffh zrT|uf`P5|D9iI6g=@Q^R6>55kJfh3v>UpeFHfm!q7%BKqrj97{Nl9yBCD=x5<_N^q zbBVXn0VS-*<*?49M^*%6MppSoIybxc!ZX(I6DL4RGB-O8ET%{_T|6V;m6FS-7W5PG zXP@%bZKUT~s4$`SiUB4y+C$QZc{Y<@9H`+URg=0(!dSRk(e``BwT!VBzU(T)>xw{W z%4sgr9D-+)&$w8$(2ckmU>r4ZA`3{c;q;Q`v_9M%)74*lc{@mexmFnL6>bx({#jsF z&fQD<==j<9jg_T|VAamWr?0;JqAK@b&|U3{=TV)R+`7L~jcpW4@=ktgvO}k7WcY}7 zU1b@Pg!73^^2@t<R!gMDPj{Sb{x4_?R1(ZHrX6tTs5@Cf5Lp0fN-fY4`!WI~P^_v$ zTqg&dHjrbOD9pnSKuKkmCw@ZybZpg?E%6FJHg&BRb#;gSvRUSu=Q_darjruY`&eN8 zD)fFeXY9QpWp!8j104JqW`TM49E|xA%IyvT+bFhDqJs`BH3XmzLMmog%D0PJ+qJ$B zZp?czlm3kghDDpi4}R;3DQ*6<Cr&Go001OgAV>tAm+^nK#HjyjiRW(c)q3l?)Lwgo zI!;)EzytG>HWrQERTtgA=%Y}($xn|UGNdT?4o8;*r{v`g=C3{8?RCWW4mj>(ebt~` zk6Tx_Z!V9s&$XR*H4wW;Yvb(g>1SCUeHEB_8nKxm=yg&G<^YFMJAq8Jg*#Ure*R9v z4g<IOg^F)kXoK?NwkEc;l6nfpZ19u+p(3aL2Nn-JOT)^~brynx_`iFye!yb}0U+~= z_Jl|AzoEufa~cm=;u?!y9*b>4Ht%&IY2c^!5cM~qt>S6uCU+kw(}mH!*k1&t&>!j6 zHMrt>E>to&!yoVBXY3tKq5u6{o<`6(jM2kU93Uf6KREc8Uvf3NlgL<4Xe=z%yPs8x z??Q?445Qi&V(#}&hjSg7GTzVeEx0sJzt>&;{a46>e(|x`k6v<r(dk?XnNvhF_}N&X zl4+5>9a)R|N5)z9yUCz6RZ7gUR_ja#2{Y5`%!Bi>8aH<1pP^!egsKBB7(aScu)_lK z8GV}b7WY{h4Zbu@8!X@iHcm#NV;TGs_kveulc?=*T3Tv*T%Er7&@!i3#UFF?*XE_j z-RExW(AhjU``wMkK1Ers>d;HVPQnEK=fqKAWh-vSgwp)6>d)e1qp>`_<FlW$t;pd- zp0+CD0hVDp<&|hGgji5dOfXNe2T|y^X89vN^0<gM@VZ57pk$>rPf`9-gAR1Wu1EOc zb62mm6pZmTp1sx#;w4q<e5Zw92X189`VW)RN322fleE1Vl@cCWKIuMuQ2Ab(28kr& zyZnYPImP$8gOB^#=eGv+gO4N0NZF(7zuF|SM=??1vqxpagEmzLMcsFo7oD}V)A#BE zFs7^So#(ulRD9RS==V0ex5ihbExzf}PntQv5uRhzUYWA2IX~RM8jzB^##CjD$3)$U zNhson28E;4{Si#@jfVQy{DiJg6gr=tD?e81P_q;bE6DHBlR)ap-TNjwhL~<-{NifK z?mN=U?;Jn+fKbs@lG0^2@4{#AHImFfM6yvq;pS&!??GImPjOQB40}QJm<~n0yJl8; zCV9uBqPaaYY(_-o7Yp*+wAftw(;xE@e$}%Q6E{<X;?g~S>U~+xXrZK<FXRxKi#|~l zbeS4K98vzXkl42Jyp^)7)$Zy_WLqFB|C_&QsA*{XpO&-k)h1=L$bp?=0IR~+E8=&D ziJ#Q_zabCjm<MGxlfLP<H(15f_SS<uf`dGKnO_@fPhuOU5za>I%dQn-Tuq(V3wAue zD^$;)zSbtXcm6igJ3;TAUy7-J9A6?>Bf<%oo7}h??=Cf&R7`-G>$=T+;NW;q$VmP9 z{7eH)LQyfj{f6-Q8qzM3^IJxoHF@5qfZQ<sKA(QK3_-g?>nyBW<3IoWXJy4#<x?=T z=Cq;V%(~4OPsiUy?iJh|c0}&-8_L)(Vg7-m(c8|q)d9Jyoj>d&{>ZEaY{~hZhMNi( zLd+khRaf9ZM8~JiQ)7p{?LbfBhNctQPAX75yE2?)z1`C2@e00$^sL?LO!6mgK8<|4 z2u2>l1ANTo(_3EIa(fN9w}!DU`>kPYdTSU{b|4L-+61=9ce_48mB0oTRBVeEU|l7Z z0?D*NST43&JiOX=rLcRI8Q6y37cG-q{;uSJ>z(!~XpatWbtU@GF2Zh?uOzCmJ(xtl z7wnU#$8m6B*??i^!6j@tOOtQ?G}*XdMdIr^@H<E~_~Xo;K#F92$PzL9WAOs^MYezn z?UdU^-*FR@37;hTlmK6O&r|=kPoBX6_oT<D!A<+<)@Z`=u|^{%8+`hEXC2;HaiY<H zFBHh}jPv_zZIvTH<wDr9V0LlMI8H!XlNR_?I{zC5CGsq|z(V?C+E6MP<#j6kiH@7$ z*|qW~#gg&sxj-{>iR5$^d|0M&<u-;syVu|ka4wH$y32kF#V<caB8}Qg>R7~HB-^KY z{Y;u0W3@1Luv>KL8cg(VaDUOakW64#O1t)to6pug7*Ip5^7YKfqfhe@gWdRVP4q~e z%gEI<jl(twK$R(`?IUe>={x1?gBSnROhpuzR%R9}eamH_)u72`0D_QxNJsM+M9T>* z!z(Sr^J{QlYf`amaYd9Nl%aI@kNCn|?vVC3lCiW<QB*niD=mXpFR83D?)QT8b}K7h zlw5khe5i03dK9qH+r!WgYrbv1v&y(0@9D#bExq1__at)U(Zl7^*A>&FY>90s7OJAW z<;=E0a%R_2MC4-OLy;NR5-@RKFmZ0#I77n%?&a_G>)<lszRA6j_Yef%zxNHo$I|Nn ze*+g6Q_JO2(-vG1?ITG8qvT)&M7s-T_mO_A%@C!0V;0}PJ(5-;d>iKEk-G=B?JM6K z`i{ae7#DtwUjF7(y@@qBYP{V7^&c^_>fo;}&e%c)zr(RC+d*<-Ye(%tt;XVd7kh|U z;?Wt|kkL)aV0wDDpxpP>R7>I-3Q24!_gRWD0rV_aF{+IB1v9k)eoU$pY5?W;*X3~n zyKgbGOTdCrGr0}oei%mxB57)wrzpfeiv%q2WW<cR4g8U6iJO2KMZVi*MC?vJZAsk> z08+b#N$A4mPwO~?@~5?D4)_M%CK?_H{(F&*vL)0aA!i1PW-}qv(@$>6nl%bI`&KR= z(IBaISyUPOnUAVE26ii{(FL2{E9%ynMKMi!W_>rA3<rG9Q_YigTwQ_GUvVMez13xQ zp5x>|@6mOas9;VWY|l^Fi#PBd^$olq4z;P(>}y2)NF^#DqdQCK{PQEh)cpf7!tmw= zEmktk0!MmR3q|qM+Z=(I!K(r)B^wFoMfAN<D#l+Q(ZhSD!_*@ytuf7rrnslK>QOeS zlMimDSGVJicm2|T6!AmnH{I961TF@KS)nSX6jqsli41%gTaI7P(yjQeg17-ESXFDg zmpjFj>BTa*dZ^8Gxi@0bVIoIQ#0k>_xcL?Xht22<3?lClm$5;E&Ybr}MbSG{%7b|r zLU@j(ddwo&u+n2@lGr#ILvgbSeLhl#)0sX<h8Jl*Ne*#+K6q!B{Q<oM0-tK{NG4*~ z?MXoKi$YDR;fumOEZ#a_=#8KFxCL~Hii*AHnj`bPPFh>H>E};^0Fq)^B0H3lbb=YN z1@Vkn)>X%&?1d_yEypmibzvfirYyTOVN9%=@%(DhdK*UQ@$LwptJ*sdVibl3M6gV` z5&4QqRuFjJQdlkCQdqT}L*a*V5lD@l-c7TqRbbjOhgdcze0w)-A7g5$0~10xv(iQR zNQ~nY3Rt*tF?#1{N)AmNC(BPFLS3AP_0rlAl!sNY=EX=G_si5z4vr&kG+i!n7l5N@ z%SMZ%$NctZH78gO_mUdt<OY8Sr@fa*DLh`1fht7Vh5RD{I$ghWm_EiQ{y5y(-yCx> zGt*(pehQgm+$s-v!SZN^Jv238Mn4b&sW8J`b)b>N_f|}!Ezm*;AJW^&B#3Df^EzAR znQ7V2CAt6;KXFt0zM5l4!2tMG{iLt+;^5?{vL^uC>71!Rvedp!M~yB3J_NOwmg@yD zb^(IlfYnC`usUIgjhAtygl~lH7%N?<NihVtEK3C{D?o_Ui3pCc1W#{!TK2gZNS19v zHgp1#90Wc+8V5W&x52*sLsAZtkop$a8?CGcMLQiLVLtegWb^u`xi?CJrNQI`2!h&E zRRd3R{G=lp%3<WFQWB+cgN`@Tb-b_AzG7pB`EyfX)0LD^V9!%whs7xh=_$(%1V9sG zSpq+B5`*w;d&Kl8TGC*?i@4PPMU&tm2@q~sQojZfgGgsXm7^cn4xA$DLQkj7;zRvG z_6I9{lvt~DeC!jA1gxVw;FjUKa_~;^ULA4GP57?Tn%6>h`M|E>7l*<ka&HH$6vSC~ z$`tRysoc<Glb<9zM&#atS3%;VbrfNBW*5gepyD&eg#ayzp!6Cs-@zG(4@)`8TAfVV z13j)L$tXU%oplZ%>N|MN928(xe93|mM-*5%DuqL&S^;6bW8S`ngOQu!<wyaDREHFc zq{=8|ywm4Bgcc!a?{k!LUU@0VsSg#Egw26JTE8?1=oTXCj>*E>@oy>T%KuL1*7N3< z%9T%;E>4gsr0<w%P!kb}p2`lB5hxq}rCiFDmAa0`mYPL&B4u<aZ_**+@>}^(zJ$!c zu*VO1i^IH!ty5~=imQzOWW-gSo$zDFVT0~t`D}-gd8`trnP_%niFdVjE;iZKLUuNb zJ+&JgH{4>Z^pi!I$jRh4G&LsPHL%}XTC1zZ+qf^HSkrre53;K@gR4x-B`)=b*yG8A zaFct^i1nx-h&{?3B>DU&Of0S?R=lVTP?>^);n*meh5@A?l*{qI<(|L(lY9P8*(jnP zn=h$Trpcv$t9$f)Qp!(7O1OD5ssBOO(??<i33Hk<EFzz0pDVx{2k0=cQ!crd)<CgS zhKGeB8~q3i8-6QJ`S<d2|Igxt5{rSj9}08{q(?@7A6AZSP%vp1^J99iX>fjD1+8E8 zBMyg+n7Q2^np7x`Wndt$zDelnr3I7j$5!~XM*opbp^r)8yE0*%0|@pqne6yqR5l~O zb|zq3<R29<IBv677bSAkyBcN^j8&er{w|rQe19q#=CmT`fsocnS<lTDE^dgck)pL? z0Kc0y4iq&%IUs;dAZ#aK3xk)!f|WBS9;B5{#N@2M&5xGnb-|pmQcSO-sssciB3(7K zc`cXemHH_)tk5cD)7M^~{t3+g`0=}EDnhHHkv>mPPnBSGM8wb$vG#s~V#+?LF24WX zS32ANPpk@)SC4Tz*eT-2@vT3RK1BRYkBDzuh@S}F>d))js~Wj>%9+GO)z^1vAr3C^ zPeE%}ChE9JZ(7etU>Q)s&KqnG?QK|QtL}PckG>q-!g53Yf)Xesh8S3fwf<96zqVp~ zzIR}TgQI=22d}FEcGe#9ZMU)@iY}w5tHAm`=;gtV7eNklZG>TbCb;M#^bNB*Ti`Z| z`~1~r@TvOK9&x``*VEI~3>t>9eDXGJ!d*^-jmoFcAFf%$PprG2Nl`+AS)dF|L@|tM zTEo-rzJEoT8uRD=LY|$O9bkU@`<wx7ob+*BC2nlGA106kb3|7?kRyqNyO(<6i1%0| zAZ)7!7MeD?H+n>Ii??!j@I!MHeV#434pkN@=|*w~3$IJv3u#ICE<Fvwai<v?f$iF= zGl_b*CN}3x*vwD#C(m7`urirG#t??V8W8*jkC@aK<ZE-00_Y@U)#6okC`L}SS;hj@ zKPKm`w~xf1_$f(Vg4Qe^-Zi7!zeUSJ4rAWFue+ETOp4*5-(X1dG2#G2qJAY7l$Kl; zrj+ZHsGl!FnTAA_3YVaW+0mo+*KSzQqL8$ZGH3ndp1Dk^YQr$B;+WxhQ-l1B{SEP9 zgv9Y-g7!vJgD7|>BFrey*N!+XC_}FcfG(Sb7O_E4b(m0jnyRAgG0bqPMMZ`X?gg4H z4Eb#bYUC;nazZbVOoy5hA$d?A&ZYv7JY4Z%ez#ak$!x#I#v0Bf5+%^1EV)xRJ??TI z0VuFx?L+_&-u^S-5u|Ap+BZa(^WiwF*3eG^ju=wkBoYbErMdcY74!e1JpzaW*660y zuZ@U78`G&0xK5GZN=8{ms9GdBDX?~wQd^$@gPgUuoBg%mYLZR$7gnCq2~?{!u8_yw z`dihH+=$;jApzf@Z0v>8w%Ac2WlJT)ThIrVCwjyz2+<r1T&nwa8%96thG)~AYoAAZ zJhfKaU=iY7p*)U)TJjqcSqFOS`q(><7VA-<*n$C9jx)&t6gox$(36;RQ~CiDgZ%03 z(<0*xCn%#rA`313Zs;t<P`C-~MKvLvea|ms1bo5c$e|0tioj|-?U_FP5=Zuh{Vn4= z5|Z()XS3|mKdckP7_<GgNd87aU}j}taH;_ijk(BB_t80$yLcVw%N4R9{`zfXPamRm zDauFQ8a5nf9Z%=kM^vyg`%P#uMgs!y@u$UW;{lbw`qt5@hAWizNa`CdxrqKI?YMc2 z@lDVAt3z6}o+Z{9WnTZ|NwGfFHv*=9x7p$b63uexNi7~qA?pvbWd7SQ0=c7{v4eCH zU)4rnkN>?<9dQ-y)#!Pid5qB*PT(5aQK8AKV~1lt!npGwX*!zjUl)c1BVSXAQ`~tx z&UwXcGDA5(c6O_rwbU;ftU9`3ULv|$V+*A=R`7e&xd|?-f6hLgo*`r0U!3m#nEfUk zKX=zVVAb0AUi0XrgAbpveY)mzcU?EW3q91`leXJ>cq?mfS7_9Z&(lK^@VDe8P%|%6 zi4vAxE1-1!uIP>dip?8Ft_<mrCcf#Lqimn*z!fxfvb2?+RxFi?@sgmC34nE+Ykt>h z$N4&+Eqn|epWT)maU}@;d&O_6t~Hl?hSyH95XrIL<Ajw}$|O?UQ-lUygQ(*zKA7E@ zn-9KRz54>>uLQ5{(%=%VFko#hqqJAwJIA#Fw=c^RigStb<&X&AS9zPH2C=fDzFvc7 zcWs(NnLJ<qia<hIEHnLz{dg&P#DtEZ1-6FpB{ra*Mk2ymWU~zYZRMvX677^cXZOk@ zbbTHsdFeSOT#hn4`8s_~TPiVIE=vs(z9j&!l9)x^JyPRl0E|uD?H895qog62t?n>+ z>;zF)Rpe`r7C|a(KxkcnnU(|<_QA}cEz5BZaxr^s5AkPIP3na<^g0enzyLEX)<a~O zoL%HpwVBy~)Nij0>zFClz?2s}`Ltc6YI`H)9rocd(u-`r*>vjUB@m;HX}azlm)38f zxLtlQ6;g7S1B$$!XbbS#ydX?-HT2hp%epY(?RXy9NLo7XV*=y6G+t4@AdyiB=NZJb zh5oa*zG585CV~Agf}!9@bBpR}#Z%Rli7$i`8AcHU*EhHJ7R=`C#=NwLpwD!!{K#r@ z!_aQI;ODu<*tQ*i|G)};uPA=m(<VhWTo&uqB<g*@E2KgnM>wF!CF&p7R?bKzfeq>z z=24-3*f&ppc$K5Mz?s)lRrwiGVrOg?{Y-vXA^uABkxHe-F$M7f7HSgT?`@2l_b;?) zHFsrQ^-_p$1iq4&Zv)3foJXp=CI2*lcjAHhXEh|w(X7lU?Egj;u@mnFkWX4~y>Uf4 zp^}dS(?z3N)*<zC$agm**6W?}+w3@P5=Mtu_-6<&^{qId#kK?CvnHLCvq9F~(JC!j zM3odYDY5fO5@`Hq6P#bpel<uPd9Ej4I5gK<$D^`ZhI7_t#a#o41dTR+mc2=l^Rq(# zp^K0~sc)f<Q29t}oYcV2dtPs8T|ojm5fmsw??A^{bF7yVxF|xv*3C)Kotff`w`Xo< z1Y!)216|gJqs(T-bLi&(F?Z|Tp$adhfFMVILR{&<NE)qtR49Sv0pY*rEjaADJ^d|d z<0H*23A}XAvzthOz2<;}LXGpkv3Tf|Js-SqoJ`a44Nl?Xe@`4X){h#lct|7+A_O7k zcL)eBW6_yi%?+JZ)RSA>WYlv(cgu&1!#+87TN?V#?5Rn@4o0|raQ}4PkQbP07>c~h z5r*t~o%BAqlr{|c^fohgJ$xOvBU|cA$@vY?xHYJH5PKQLO5C1;?GnWx!I6+{qW!$F zS+@YI+k~g{+Nhh|u`<udJaFqVMcDh87j8Z&Gp#Q-_^)-DS*VTrr*gTN;edvWI;2{f zM;0dby5julQvbzCKcw+B0Q{XTI7{{@d%WQq{|jMsGm71>ec{6gtf!aUc#WAGGPocY zN(9b>_5~q?dObuTBM#ymf5mnAxU3d?kPxLR3J+)}VyXiXP<i!{R#uaa$=cYSO1`J1 z+jarwa(>A!w%Xpw<I?ME-=t%8dS1G!dIqPC-k3GCF-j=I2NUD)^Mi!>hddE%V;Lm# zQXMSzd2`be8&*ypJyS?cAy{Nd7f_Iwq<osXj-UOCpwG>}($e@!v0xNoUHgjp1OHL! z$ZdFyVpe#6PvBU~m;M?<y3R-Cz+rB}^@GU5cb0oAu#sR!xXF{-(X_dn2*mw+{Fhy- zsrwsnHPH=M7nfz{eFedelsmzpmeKw|5^X1H&kB6Pns_7Eb_cA`oIR7sX)D`p!;Rdz zk_Bcw19t)Or+#HN&@kr}K!*SxL%LgaKUyD!td2l>J=Ba1&d#H}Sh+tNo}iS+sv8oE z{PeF_<Rdw#3=t?ri7igduK4Ll%%8H9e)ChGztEd-vGnFKL;puAvhUbc`9lkhM<TTI z;QmK8x4*n*hswpwo65y>#;2-Z80tg#7K&_ZIC40OqyUq~LT0d#L}YCE%n?5oC<P<r zJ8e&e4I_ZhJzvoK4cf^XH-HF=ysyFF!+eba+lRzE>%7WWOa}}GE>5YuFmVw6Gf~l& zvZeN#0H{tb??8|;e1I~D7Qi0rKQ}6s$ABQCA<l{XM}Ih~<c!~-)w-R0pB(Xpd}d;z zyL;khy*848t4w)@9E?Ub-dq`P>7f`(OvRy0)y@pU9+&F|KEzvE2WkNHwY~$=@w#5& z`(9C6UHTj58QC-{aFeY6xx!TQ2ZY5Nj+vF!blxOMQ7OcWtUYcg9Zz?n-Lyfy?xBMn zMaCpIz&9I9lUsMotE;05dmAt7jVr%S+vm=z6g>y8dcaUW-ktl}-{;g?8t}hPLN1bU zUzsA*dmrJ>4KU`f-y`q+rPbR#&nefpsV!yL=qyclu?N<R;x3h9Hhu>2tIvg-GKP!d z7BDbEYhq73LO|9v%>M&qO$xo{(N{-Sj+5a^q9MB~et~eT70fE{so4$A6)`1{OvIIH z0aA5laB|RKbF|}Z=;xbh!$r^XSd{o0(eUtR|7#0aU*@Z8Fiw{bv_@?}ec;P2j&jNc z3(dh~d?@-bCVW_GVcwx?&1Jg(x40_aKG`}6uCRIdfpMr4I@+hRZ2MNlm?!F&wyz%4 z7(8d>65m5`R=rxup_V#L8(1sKrhL+dUV|uszt%fuY%k064tun_UQoJT0=i$Ug5Ccp zn`!O3l<n%!6HE!6Ki9kajM8P_H}2tfDF#BoRhTyyAL#z2b2Tb~q(gnh_MH#YSyuZM zH!G5`!6EBOPS;sA{zXdIngO9i;=2nIkUdw%CGq_o;mtgi4;E%81Y=NzXA}<Hx27p% zlvN|rh{LAVjvdmhsT;y%^?P#ee#xh=F?TBdqn3YFisF^#*9jDMq>>8obuo?;4*J@b z&TvVm=6_!C`ISD_#l4O9&zZB~vXwv=5`8rmg>1Pf%q%W9Y~a%#y0}$SbOZj<`s9S~ zA8wLe|3@#!-oXs$lT$9HF2&tlGX%8L#*SY^_cc7^k&+~B!b&$dq&p)gvm#dF(e08k ztM+!f=wt2r8p89BF$5094_-eB1g*}lH&fr)WQ6D1S5zGpSd>E&G#{hySCYk+1j^?b zSDvSyRLxR_Kt-x-zF|}N$xTQGG$_cSjKPiZ#uNiNw)a0x8V$)Jj+G-FU1b*-tqy`^ z-&tCQ?V={_+QK4SSeH_s1{4vo2h3SA8Xq^odsDA%d>SKs?AtCsB|lqhz?YvylVG09 z@gd(ao2KxQjioU5|FuUibzw}W=Lb^V{5&M8Pm9j`p%$H(YF4qY+Htdz2vk{Kmss?1 z>pyUVy`OL!DDK)Ez%2VgQlks|DdAQDtf29X*DL$huMa-Y#vRA$jU4=Jwa(})cC6Ii z?zeT{Sk1x!BaKN${ftNml*F9~6S5mz;+^m09U7dVUm0!9zG+0I9Fn$1ht{fgyIXw? zHAr<X$Y75t5`E?n4LA6~2Hi<R@CC2J*xYaJF3`n~oHWI7(pbNcb?3BsyTmU7;aWIh zO}S~t>p@dk77FyCvQyn&cB28vXW~5uyKq+}W13uo${62eVkK@!zVFSwm|_Y_kGf^K z)ce8c<ZAi$nwFi3*Ft_TR8x<>82V&rJC*Ha;gUBK>*Dt;m%a~Cr-Re)ryk4lUU9Vz zKDZ&w$X$pX)O6q^w!LGJA{WyHukTt%{<)I+%&6g>h<%h&Qn*2yH#|)&IBODK*&~Sh z>ssWdsozo9$TV;W^}eK<tohTrFy0MyHWK0ZnCRi0pt!ZGmQ*{P2)=SD8@^3qVtLQv zbu2P8qEJqaIF+n$6?dV)>*2=cxvTTp{;mhO2u#JjGV&)a{<+HgK?gt?GwUvgEwLDo zt50PWLC_48ga0JVWNUO`Y+u(^iq1A3Fs#nBgJ;@KDw4Pu@PM|98V3w?$zncCZh&zv zR5AF$m+!~dqwme`8Kj~?Zc;s^?TyMu;?H+k<{gb<6IH6IYB3-ykQ^XWH=4LDNcq)T zwMM)PpCN~ZqZcpy%;x0ma5ia1jXRD(sNqQL;_@Qs?C-c;c;y0~budHx6ak~KjcNE% zA_a$hfK#gi3*x(^F+wa;vE3x`J7sml$ke=R`7@r9Ur84AURV^1eCSxQ9qHkj)pWRh z{7)7js>nW^b@aymuyQ%!M6Kdbg78QV3|D>7VKG%273N8%=ig$H%R2f?jdRLnJm2UR zR?ow;71$l!Pv6?y1rE?+baI?=@=NVORs~u0Nr(ME#s<2ucP_)VD=ha)lp3xsqFl4L zxC5cEFt;k&lEMr5@{^EEei-)+9U@?1{_^t?PwwAmrk%!!^l~l|eTio@GBPhiu<;c6 zVN7Mw0&N6&H^K{?@_mp3hF~EYK8jWX*i!>n?rI-5m$rxxHwhIJChd3HzE;_5FF(@> zPM<g=@ZX)<v?v&O@eZM!dEQy9d&3v?JZYg`7s0;T8UcS%bmCqA0hH5M!*2T`;hEs) ze7HjM*v(V#y)Q=_DF^CNLtpFxud3N@^M?F#7#05JG<j%G)fZk8AqvWdqxg|S`TAVH zUK4&dxW98IKNDI#er~ZAY-4ylp|NtkyZh_v_t(H`&Y8~`A^AIn49e|q%3jb<+^gA* zVcF<xL0~0HXk~>3#<xXN)OL%Aoj>ah)VHtK+2d72Q==-YmkGTq^M=4L@LC+|g>_CM z;<;bNSK%Eque81x(5+nPEN}~KFoHKk*KU*l7iaGnTxs`q`^Fu1?4)C-V|Sbt+qT_N z$F^<T=-9Sxb!?kw_4DliyZ5`R-czT}xAkH1u2u7%^BUtfMz8no$zem?D(}+MwpPSo zphrSW_2JNKlBoYpWWHo_-TYV6Qq+sn#D#9}^kGACm&o4vHJX;|JMBYD)yhZk^7REo zbJN3Zy+gOFl&?i}*fHdfvm#b+>|db6w{b0|zf$-+ZMe9h+jy1AQbe=w?Re2+N2Q;{ zGG2Ft7}Q}&^)RdGu@&n4%LBw>|6k^Z{{NUCc5Zr(GXC`3Vt;bwq^O(aC0{(htLGP^ z@}mg=d>`BpWpAzzu2)`Pw+K$wfRTe}2&1DwVOxawQWULv<8{lG2sWUS!ANS}NjgwZ z7Xu7EDF|jvF0#pnm>n`NRg5VuH}dAMv<=+A7h%|7W;_%T(clOI5St8N9T4#AC0uLK zqFKo<**>2Nf2mYwYD29ZDa<uQeXsq__PhYkh8Wyf@wr;)a;ym-V%L8{u(i{0iAAUo z{HV{y4RAYIz0EH2^b9bsPyg3V{nZ@b+Uf_Xb$!q4jTK!cEK8*!^U1mCVyI4Z^`uwE zg6(AI(`3reT(8bf+pi+{?$l{$;ZSTl<H@ndgfiGLwP&_CJUr$PbcR<nbHN>6M>*e1 z*Dh9cMK%OLuA33_`1^lOUBQvPR)RZt+uGhquQ1dg0sKMv{HqxqC_D768mUeUqV$!L zg?`15nS4?I<@VK7lNx&9J$=8Cu=4JE%tXLORn9&5f>+zV4cVux3sMvP1>M6h8JXr{ z0n4?{I~o)+Y!b-w#?IAR)%m9HlX0<Yt%cyOR`yjHs~E~Q471-|>Nd{pk}B4#pfd(- zU&%O%bFI7j4_Nfq=yN#{Y)K|jXuw}?Q+Kkg)d~NapB0hqRzp4{AQDUBXiJDq-$xw2 zzv|9C8*aauwem?9+fCa?bMck(Z~iJ^WM}yD@k68A?se<R{{0c|JWf1X)bPoCF8^5| zoeo)f(7UQZX6>nNw-xl`m8<}m@Xfo`!kxx5zDPOE-jEdXsP%bM9DN^f*hs_4DH=5w zj;DV4Zs686jcA{4+A&@Ivble~FK+#ysg9IHJP_6L9d9@<!dQSK20}d1;?7n_#h93C z)>o-7MX+EPJ5Fk?!uyd_zQ9yGPs+$m3Zp>#g*`TgRN{5<{wz}icIfymCF`iEqJKE8 zc3)RdT-`1HyWlOmIMIFB=VYODM{oTd(}=X$nDFO}-KZd+QIiVoX|5KNcW3}qak(8a zrf^fGdM(q)L&J)d#^AFh#1}wE&RO5g`9=4UjHpdTxFOv=IHV*9BOX@ReO!fV>Z4Ab z2kaZAmOE=?9>N&kN4CQ?4Ei=IPze@)3V<f4LE{xbz=z=VovDZC)vtjS?9n~W2LuR? ztAXW%L<k;4_|-$_=TI1+De0jB)dFKQD4Kk<f*Uzl@NKle2MACO$ZfQwpVh$4;T_lC z8p$X43^3a;1M&>Nm<+|~m+u=Y--&c3qAj5}ym`!_`aBw<Y0&%tlp%D1h!4=CVL0Xy zyA)aL;V%8RwUmRQz@jyBLb}P5E*WQ;Ueh}b#@TZAF!LjKo(2Y$3N4xsEj@uKz`Cmg zatrmbmg6cysMW6siJ_acis^;_0}uF`#h_Fr&K+2AQ{1Y-Dh@1t1WKNa0+91)`AhuL zuDc0Ttc9exMZDv_ebU#w7NbF6;w4l)g+&303W{v^s0R6GhE(Py|EkHmyYLp0TO!Li z43B>tOFjxw0=+;N3Bca-nQOfI?%4lxuC)CBb*?N}L1UX>BU-k~G?}O#oe{NJbBnH1 zT5K$@Zq8y(<T1T?c~DP^OZn*#^))R!O>z^C<wCf<5zl#acDDRfiK$bb3T5l4^d_Vr z;wI9u8!xCI65gvkU7y;0(Y9YD%D)M99xXsh*UeU26fWQrO^-ic<7Eu%3E=j{gYqgj z{(<Z^w<3U1|IGX}bvt*GkW|r1gw-XiP%kge^gz6k4)$AI!S+_;|9wy;tB0YJvz_(( z+xQsyZ{y=qD#%yJ(vFQyAP|HJrsh+Tx~Z%)NmKFCk{BRfjrH8ZAi_jC8r^BkYtD@A z0Ikkk>6bI_lA6kj3ZuEWGzqs-IO3e`Gix$YUuy`(LQXmnP>{O2l9t92FQ%Xu*V_Uf z_2?bHv9UT<{rEZ*JU6(nYsF1z`o5LM<jkt|2_Bxra(hcUGNqD2&tq-^M1MTgnT1<s ztg3_-rAW{OZWgT%lZm&WUgZ#z3o#i;s4gRje^u<4p`gR=fbG%a>`|zZ`VoXk`M%9h zPGa4x$$|_cVvpGeekifY1b!TzM-F8QydK#*fBq!E9qkFSIBW079Xf5f-N(d!aX%g! zZ>s3_et|G01N}_(3$@qxE+?)MaS>Kn%;8Q_|8l0wf7Vt1vLMlkUJLT_YKnXtVJ?+N zishhAcV_E}rI4dGjdn+`m%;ghnInbK{n`G9?`z02<=fWK?DfxEpDxwQkxR>b=TFaD zHJ(l{Oz$J$>D31jq5Jb62QJT2n0h!^SX{5S7ea~m9DMKRWBvoy_#x=0U7{$}A8%JM zp5nOAvwNKTkNfXxXxcRaGE;(+yhsuCHRy!nrBqmRsjJXp1aJ-9Bzk3#IiqSB2%pw| zKB`QlpA@oc&QFNGa34RC*?#Jm2@p#+i9#LptX;HiHgB1Q-R!rue?I!1l~m3RZBdn{ z)Cib-Jcxy4q|Fh|yei$N^F9|ULENK=YqmF&8BlNgD|ccJr!fzBA@@_#WgB!El_w;1 zdB&3ANmzBEZMn#&q1lf>LF$EHXjgP&wIDtdc{;9%y5f*PJP_9we$7LJI}_e(z$8K@ z;)>i327D1w>F-|dPa}5B39ynze*6n|GAly-BEH!Sje#U$P>;<FVR!mebvQKj&MtX; ziFf>Xp@Vl0?#ha2aVG9hB>p_^&c<hMueT0)+Dm3K=$<pz5d*q#!EA*X8Z9N75Qwk> z%-(QZh#F3Tqfj|xT%;!)<&_H{R#{SuAUBg)Ib1<jU0XS*vQh<PCR3Cfd9IkNYQKN4 z9DOL^DZ}=ja5lf4?&m3N(X=&7uWZ^~oY9Oevnmeu9;>e1SmX2fbiaSkC;P<zRfyAf zkkK{TsNqAsW{vu9%JLs~lK{%248*_V%Acl|pnzOTyAXrR0<T#1e>$wZ0KfHPmcl1z zjv-ryFq`_?jEP~P*5ZHU9R+Z}B0JyXAqNurlpEDF)!n2?Iepc;$__ZZ7MxMorg<)n zCqr9QjY|U$+uouJ4NpXoPt1#>H7u;4AapusCiAH_!uzRBpgW>&zV_`@R+PT@$@x9! zqj~1(d6HmV_hS)pf3A3LDz!~NsLm*_-TJvjLPq>{&>oalwkQ~gCXRTJQ5_K%wV35B z!TyrU7JMs;AmG_f31{^y4=bxEXN{{8)D^SgGJbX>p8l|a4n%SLA^a>yDcYqNM(=Tw zpx|Lg_Go~y4-i(wfB2>YziWZ}F7G^t3^Hia#BRmTw=<XcTJ|b$w$M-!#_v8d_A2jF z7_c^YFPj(m2L<hs#Dl}OQMRO}D9G-Ff|~SD7OLY$(B8l5p}q9+<)A1+d8D*$!)7@c z;c#nvD6^n@{R|t|`*E^Nx+KD<X4t<*j1aYM7hlWQ0w<B*E;(_&f}|Y*@(fJX!fJwx zxPQK)PvyQLl&OBSnrMW&W3X-DI7Tt!>q_A<Kz^i}A+w{3qT$$N48(ha%kT4SX6>#u zGn!8oeD29XMxM2<YE9Vla%l47qk2W?M-5?x_JR~g45WI!Wstsl;U{w21txMun%<W? zdgVAH);$i6N)XK_`CKOZnP?9!7il!krW_oF_FBuvG7a;UhM(T##!KsYF0rMCYvtmw zMWAaCR&&5O5-Y_Ne2e=dPZWDDq6bp+kkoOh<{l#X64D0(2O8&R=?Z?|sw;nDd^H_( zx}rVloqhPk=A^qgxlo$c(NCZbBYhX(XONgL!y}s)%uhylS%%$nq<Ct^;5Wm#u>362 zFGy4+NV-pD&r(qlGF-i~>!%N?MW!~+gth1{XjHJsfQ12Tw~q|*gXDFh!Ntvi_Htw7 z$A;=1wMW--M`FO^rf%J*c-@xN)|9q6n~ZwoUG3Y7RT4PiC_0oS`i=#Pa>7zBl4?_@ zMg=|C-%~$I&9^2cb>vg5k(m<8?ibF&PW^da-+6XNy(2Egw=gn{^Z2rD=f`1?^EO$K zdPFlmf_nNdqp}R!oe%F%cgBa$hciP(F83Xi1Y6?KFFmi@M_&~-3kF{li4*n`0-I_R z4_b=a)v*K;zMkFwoq%yEZJq>$c;1)XlIYeTBA;My+l0s+qJ$a`yVfCz1VG;}?6(t@ zI&8Z1Q0_uIxtb%N$adMTRUXuMT0$@7cOAXIUB**KSs<Pq+r<*k7YFPTx~daei3GfC zG3V3mA{Z00>eADDGvTpf4!fcvB#!V1cBp;<TDrlIgrBlvZlREbbCCmy3nyLUiSm$i z>oZqx?_UpsXdjiXKOV=9Wp-7Un%~vI0muNfw#%;iXgKZtFJF>P!FTmaIc@XgM_Wk3 zytDyc0J~qWWqTo%(0lEn4gzRzEg%?hH$g8xF}FdI@Lu+#t|SJjCAHPx8>zpP84w$5 zB=&g<8f6e3PV7k&!J5-8zli6>3|fei0g+^Qd|X+hx?i_OA1v%TCw%N5o$uY3eY>k$ zYr0gqyA&g?@kVnjT?y=p4{DGi<jFS$?IRcniM0C&Y^--wiko*63pgZl<=m54J@C;H zoXJ~)pz?YVK8yz0zpV@b+wr8^j+UXOIOzMpxs;4v1TfShBG!pP1n><KI5uINJ%=Be zv$VY2KQ8Hf?0dpGJInOmeh8k$OPIx?vTL}RGKn^V4UsU3_E@#we@Fh?bVC`#gR*PK z<8;r+T~)czBsY$cLIRggl9J6_o6MNK|63ILKshkvBRAC`mXK)e9C?hm2dM>;JQRqZ zn8)cEyTOKnhk76Daw9wtu-?62jB-2|cCB}Ac;D$La-GURWO@rhNyWWM#YM0x>gbz| zfeMqch%<adkc*QU#civ~)*tLu3)_9Ry7^2cGsu|G^Qg39CQ`yJP=HT4h+!uSV8F;L zx$-gMn1)SHX>T*L{udMS^N?Qcq}h`eACVpL$^Aa-t&`2|af>~AVfWPeT6C1DHipZF zJWBL<Ry={yX*~~!YLAdADI>G?(x7xfrS1mh@<%#w--ys)Zp(r^728Q=G-_eL`lxu= zb*}7!Jiiv(CCbPPi+ltmqsNhIvgCmWGSf<(aSQnL_WQiuihR@w5{sP6Pdr(6N~Q;s zUr<eKxCyOUb>KHeZSodl&N?1-wX)ck%qx2`3#06VfA|T63|0$ZwB)vEY$I~&f_PWU zPht)ef045jSKl*m=<GL%y%n3Xo5VCW=hW@w<I`@3-`updS?kmF{xUH+QLXB+yc~b8 z5^LXCQ0$qUeOo9ydErHU6CE8K<i%drMaLSh1!~_3FZv(74z+gpA2Yk0!R_pzN$ePs zJgxOu+h0LWp6_|#Wuw!p#CDyv8ih#+rfwLWkp8@nG9?)Ue?xaagfa%+SD|OqWE&N4 zAsLA>(Q-3Ld9j(=DkmYYBrb&`T&oc`;SPr59?JOH1C>aM`fE#-Y|4DatR{+ied}dc zHUawrg2U%q>xLPu+wRS44W~0s%R<to#uAJDKIK9K9=B3078NqlyJAtSW#Ea;pNn1B zti=%6syM2}O_on6l|*inO~-BJx&!5*I?6GJm$~E(RfXP=Rbp`|WG*p}M$Wwo3M2+$ zpX$jqbp`qUV_yZyavlY=JwE&=cUGxd`(!Cy60)zOrr(zxzPGheW>IE$kpiV#qmH+a zxN4%yppWk@6A169H0mfh-bwBbQiJ`R>*=5$LODt^-F&eSFs}<^^LQ}!2b?HI&<S8? z*~|~wiB+!VbS2p&awp9DVoz4T71aGgZ}dMK#N)0sK>yjRvPf!c55oX^I}Ru2wam_< zV=JJ2A>`+#`Q({JKTF4kK<*K*fYX0I8rB<E_gy>FY2McL4ZiiEAp4qJoFBHfN7rsP zz(AJy;eFpvGI6JNU}merQ+0(vSwIugJzsa+p==u5TXDFsG|Z>)LV*KG8hYNaNMH#< z*zE5-6;efcv^*?nd6@3FkSOLa^6x<m9g7L~u!CwPNF6g3C4hpi>spDJfAT>DynSV$ z{WS^yqah@F#u`_T5eu~%nS%mzLVDGZm1tq&tkl62X+fBw+^6_IU(6WJc$CE;#np&} z13&X9O9b1Og*_tv(HRuRm5JZzNA5_59I@iCK$^oCN0&ijNWEC0K(uLSk1xEk!RLCP zXlfzV>}!dz^9YgSS(GxvG<BGf=x517T*Mbc$Ol$Id(wRo7_MKFmGoQD3D@~-DJANh z3L1u?ynlV{Hm)!r&L4*3@@~SKITvGterN}`SNQaFEV8qM6FeOFUz-^|ekt?v%hzi0 z#G$Ml{{49Ld#y6E+_z=v^rTqh^Ll53B^&WEkK#O22X9W_S`m5Pdcn!_P72u4Ca{I< zy=G6TP^D2x9>v-HMkc7Kwo2@gNNJ=pE)e!N<L=LH)Qq1iZPD0OQiFs>>qZ<njz-?I z-<zxx4qiOyHT7ITs7_6VSwImXYg!nVW&bq$4gO?bM6Rq<)yY35jT!DhHkM!4;g}8a zqLknVJ$ctvX%+hFgbtPZRL3|_;p7zIL8@5HoQj??N8CvhdGch)p<rnpg+x}N7KtIG zKf;4}1xja)!7vciSk|d&aRODr<`VpccXgfhW-1be<0~abyYoiy5PXFd$-|2@bt{Ga zyMdp9<E|J6i*ks>6@fmE#-%s8XD~UPD<@wc1cFfxhW(lBK`ji#-i!#dmx_=9!brl( zVko&2x5_Z4IJwf<{9Vd5=G{eqZko(PN=9AWDh5w8Yi@5lyPR8|JsCWHtgXbHV7hl* z$cmaF+0I9_MsI9tCVw~VSDvqf$S(pBk){hXe`X}d&d;k&W0e+WNV7Cuj1a6c?Xumv zWw8YO<iXWVq!gpId9Hm>|NiJT7~fOk>*DY_O<jTgVh6oUv2G}h4XO&0RLf!v1OS69 z-ghQ?Jg5XSp8w3$c(=($(SOO;Io}b-)}lI*Q`ygbfVMl3{K^u$AV$ALHtC@cEng*u z8utDdWTLGW$ayXS``M-U(_2GIt>X8jPMQ2K&}rU)6nD%@^8O5H2$HUc45%k#GKX$N zq642NI8=?vty9E9c2QgByqmlmJ{Eh^(Jq^Xhx7NZ0ZD%aI;wgPeJpvd{;BeyGC0dv zjj~RSetNK-$0{7nLqSJHJDF2FKL(%eM>;B~9ZbeQ3#5VP5DH`xjSyYH*c2B6XfL1F zO&Ig{cqNpS0)}<=Nm~LIkL%a>_uY0^jZY`<c6D#J0{*7LgxGCa1#TPA3cf-dyzqKD z<hE>JcnZ~`ZZNmP6w$9w*sjaHkb4-k7(+!EYN5{Y<a<utAcC9WmttfjZ}^>JCZT)F z0`vP_xuTH2fg@hSMCtT5$pzg;fw7-+mutVuIjy#Edhd_u-S|FV3&QeO{oUNOMD{*i z%Z5Cej<Tr|C^2tz%XjQ-iS}&QJNJP%V$D<;pMB@(NM`sNHY8K^V`89UKzgXj`BlwJ z*G@hWSuznIz|dPN5%_{`ft^RnI6_=?vy$ia3bVZg4)FF`$XoDH3)uk@+FM4>O%FGx z?;qEH>g}E}aS=z=KbwlAV1%-w9%ra$2fV<#t8<im_$)&^-=u_7cS7v-y~dLN<-?wC zveSsa8j%t|ZkicKKM#Bd!wwx({k{bgEx(3O=*`Q*r{6CFIwi|m8B)X5rV?Og{1D?x z^rN586?hH!-<}D*)VqDfVZlG*>pX?s2|C}J0nrCr@m;t8%<9M`jElzu$Tu%|RhITo zS1otoW*73;t|?*2tgoj|GWuNaZ(uA+KH>7#k50aE%rnFOV(?cK1xJCz@i0m@W7r2) z>PvK;s;gRqX{gM@NSCE7`7UYX2o>|kO|0}~C}qP|@w>1n(n7(WPN{R~JQbtVD=0?g z{8DpTWKN2`CVDslTR4uu<j6ry_Skf>X&1<Hjyr9yndxTy(6IUWzH`61&3Odm(jvlu zwcnMKf?q1R<!CAOy$2swKNNnHFHO?<TPtB5X$+|hCKY(G`cL%bRt|LiDpkJz4s|iN zFV^MH$Lngk#Yk8X^r$b5ibC1?@K$Udlsr{XiobP-x3xzZU}m_6?DG#KcCS<{`lFWf zimH7xXU?*r&70O`@zP06)xGbh)5C6sm&3z=^B~~q37r((G(U=mPugM-GN$@3BW5Tq z;&(EY%!~z`tFu)gdbz#SEPbNHE>0<haGH8!JADB)yW|b|H4GfAOHu;|>jeEBkrl;A z_859r3=vKL8xoTyO*o-CGtPu%rf!xaqqHna8xNBT@gw~f3P1sbk%>{#5Njs=R#mWn z<j@CgTk(5xNSm0OQ0b3LQ=Cxwf|mw*bjq%79jke)*+?{};V4|YrFPt;Stanu_eWs8 zv$<_~jg#|F7F4D6>uj}Hf)Q*S;Qs|Fi`xAEgp_f&{V$|U5FnFZVw?_5El;K{Cp`HQ zf2i@$RdhSl{XFC7ohGxJv;WP>OJSzteAwDX@9Ud${aMnvcc10c7Ja=WInTG=qh{*4 zBGFraHf`dv#!oF^WBs+MsfV_hu^NeIr-LhtdrGBzj;+Oa<jWRjV=zxl*>RgTrX+`X zkdF9#>ULeJOU#!<o7;+}H|4E1?oRH~2`}X_ADqVE|CuT~ra<BmiZf5Yzsw>H`+^e3 z@XqI!q!b?-af~b&9Xi|T^raD7I1<2RT~tg?yF*wzZ}l5X%{*yGnh5BzAJ1q_`FbT) zT3XV+*e^B<A&>5&jgB1XA)P4}S+oMLb&aQUlQcl8rY6JR(_)(j+tncK^3B?O;vngr z0%c`a#@PO;6R@18db5hr5fR;GZ$eOfOD*D_^LSvW48VOL`SwSGh9Bi=^Q25*>4Gv# z3Y&5Dy*En(E#S4)wu7{3>!Q(3Q5>E8ogops+rb86m1*94o(vwWhv`AkgeO6=IX`v! z&Urx*OfsHKEnY3dq|O{!yc&5LiHz>NPackyp?&T*!Rg;@kdj^$N%+a!|H=k|y4rO) zUtkGiqy2pHo)lJ80_O8a3?AlC1&ENd1cI;#FR};=K*Qn<TWY}iftA2qD&>$jCn};k z`T|Q{<eswv(vTLjfGsbn0@7%qe_LK4{&&j@VEdnz7XYy3WwXotIHZni8u_mh;202w z!-2|0oX}!~gP(h^$+e3TT?oD5#RCKTA0c2k{I3wuBt>a2EoIH!qIw;2Xv}D@?em-x z{lroJ$+f`=lRaZO0A0UHS(JNuzuBw(JFn{L)<1-JNLqHUtYFSidSd%qQICxj3j#1X zC@XrC1^QM-sCXl0*kq{0k#_4CHqik+ROw5H#a`62%*2y3+su(YwqmnLSJUY~EiX*< z(-he$=0K2)2R%f@y;ntw1y(#{5Yb_qA+kN%tR864&qHnlkkEn6996bZ&X|2azQZ#- zZ)|kt@$YsRY%ZKb&gpxsE@nFJJ34y*AxW!N40Ffw*Rk&!D&s5dDC1dHS>0$YH6(xC zX-&gAIV-wW#kAu#nQ)iEd9-G#{<q_W3)aLdjKy_oy4iI1kCU5TZr0Q^sQ$XIi#G2? zLLiaKQmIjYgB<P7sy_~LE<Rb+aSZ2r8l2gi2ZF!RwM#to7>Xsfw4OH7oab?e6MiIG zr?QWvECg|9M2|+n5Pvmz2d}v<Q^zDcn~_>*=~Yenhl238Abz)$vBz&;w0M6$ckg3H zkFl#x?W1nrc;-+hjbV}*4A;^UYs;%?eH3H{tOe?|Vc9gbc(hO%5)Y%yG%x_+;YGw; zV8M%L<cOJJX#eaWT-^)FD|F3}*6d2k;I}F1o#Z5*hhis6cz3+_1I3x4aWZf##+m`G zUsjC2vGFsqzCRd(hhN?qf`%{OoqC0Te>inZ=D@()Stg3;*eZA{F?8<`hB3UnQouI+ z<Y>CH-eVZN$XB=tk9QxC>(W8g%1S7E7Q89Q^~$-qDgbt%xXg}NF(>K@Ku;i%Yk_5B zFIw>Hf_eTWd^#OFr4L*Ne@4evubk=^=nHZ}p?s}N9cDbnav{+}0a9jCI~vTPF_IJP zIDsZ8LjqO?@gt;kC+K(zEl33!L0J;<l9iOPqaSx^<p<tLDG~_n&>M=rm^&(?aGY7Z zZ(x5$m1Zffi2+DeR)`K(<PCxYw6_EH?;5nRI1qH;tn$znU|`7<svyF@cakB(h+94W znYPKJ5k}*1{2+7wr2v2&lQ!ADDbNmg{#Cn1f;NbfktwLY+`Tfglrp^{9!nfKX8+3q zw?eUdj%pezOD29!(S<7(j8WT;z=N8-_{ad14z8J&&XRzFsW>_w4rY*7h7JPjm7|54 zFETnlgW&f9Tb@>uCoT9T`Hm|)Oq6r{JKhhpMy9m6k<k7hoGZ?c+!<)4-QQ#i>c7d5 z@_&&i1C+GX(hptn2in=e684Zab3n4-Jh6j@nl+(!cTxRAR!qwDT&|v4UL6HkCFC0! zR-`MgZIfSu;q3s8`9fNzUw`ZP>;=RA4B-XD5$d7HBBodY)^h|w<GCTEFru6Nd`5^T zpr%92%>aDxG(fTfG=9>YpWF+FNgha6*v0yY;{oIDScE|1J<5E<3o}6DKkRf^^z7}c zr|=oDPeenH`o*V!?+ZrmD@RM6n<Cp?5a%Zz;3KYwg1QNp(hpXk1El9N+4G2G9!2Jh z8A2cK&wRwETBj3--%%Mt8Hp0RN$tf`0rJC>xW5<Jv(+g;W3kM@iS6v&V2Ni4condS z8E;04%h!6;82CxRB8QEoNhIK&NEP&uuEgil1+oD`&`+cqVZ0I~W#1yrHfWplG+Wp6 zX!G1zz)|FH!~i=nAs6v@Q~j&qsv*1H8%Rwj-YqjZD&UPeGk7QIQ>%&#%Xsh?k(|e( z<`Sh}4+FIxVg>!d>Y^3QS463f#wo}ANJo<f>SO__o#kq9A~bNU`oSMjg*-p9)PaOs zJ99^n*m77vk?AEIYv}YABadXRURtR~xS$af(J>RXI>Z9?RZ6$vsx{;`W4=o)wcoaH z2p2S4aDpJU3`;x1Amc{vuHlK|U2)qrV;=SY#8%w99zcMaDH1%SW|~H&NUb_*?aDD6 zj4~IKA4(8SX&Ly%$C}#6B>)^gN`jQ<v?Zljk_|k3VZg~F#v)))A=aLfFo#)0jo&%u zGHBM+QxE2sr5uQ<J&QQE7=}#J(uq-Tq*xE#7iJ66(#iif;YKmSN|8q?4BB##(Z{a{ zBF$Jw^Y2Zof_DjT8jZ>vHa8YV8ua+eA&)AoSK*1LNU~o6MEp+{EGeWaNSvU$PeD!` zFN`>H_E&FDG1$VV<10^F4V)+-ZT&BH-Rq6@_hH`H<6lo5+Q9RPqB^K>Y+PQ7%5PiH zFye&iZ<JyCifDn?xmRseNq(6im%tk$A$c<pwmykFxsxU$hae<B(>Fmv9k@xC8|xAG z8TwzHXUH7zf7$Dq{nzM6TMI6O`{$oNQDVZPC1S>^hnfjd-MRiT5T>&U%A4q+a(ihh zt74gu6s*^vz`~eDaR7(B!CdB4Cgy+e>E@qqd16etPO`EAZ?UuG2RK8u!_$J<9<Bej z#~jHlTZD@A7t5;ciQ0&Vh@7EBHUpXIrh_~{enUZWMinK)-}V?FNydaR0VK)TNd6_s zdQ1L8l10DPZ&A~E%CCoWw0K*ksP;#Q{K=AL!if}JmmUH5PMaS2$fYGnb!MT5jOiG= z71jK%k9d=+`w3}e1va<=G&&EGC;dr*C2qrEbQv$kR5bnx3;M!vdD-#h>ZAJ={8E>D zvkL?!lXUyt(~OE2v6IqLx@=WgTVHh^uL<?nw>P^sEJb-mRb+EENMOqgI%_7gkNH;? zL1K?;#(tJpeJ%YIlai9-45;y&V*Mnt^b-Mxg5F1c@E_=%h;YlLSDvj~;(>fK_pwS( z#5i-~f>glXm_gT`u(VEh&y%pUKVAtG#U0hAa`LFu7GTxtN;=HRVQG0tg?N2Zq)PJ{ zUce5S8DNJ@^Gk+h%9p=vY!P!PQ}rm*n!n3z)c|woueQlMLY)Y4_&_0Gy_cobFe&wl z^1KyrCH4`4um7jc1v2s|*aXNJ3jvqnuZ*o~KKu}1v11YZ{q53D&<-debfj3QA;8rb zHKb}(R)}!t4Z6P(*%<NMaID}fILZ2K6J#(~efF->3|^rzl4nzdKGJ!c`(3WWa9qkC znS@~8yZdof6vf04<*$lSf4pJ)2&g6LjDQq1|2HsK;A-r{{Vzog%$@#U6t!T6pO6*q z`ajiPcED<{({Z8?El&l&Hqx9M$<Fa+NTk?oe+)Y@;%3MINmV!QZ?QU176TldndnJa zAre3KJO`YZ(Ci4Q{%{wPog8+9eC!*MJw;cNI0ZKn;KdcN1#ETjHn1Bs6BOp7GP(d? z0c4+b!z3vWb|b|U7(%xrp`{FZ|GBCjMJXWhM?xfZ9moiFt?YTcf#UVmriaY;6>!p_ z>jVnvGHFbPD8fWPfOdr~50gv?fI$vINdL$&RS1BOg9bhp>v?aEY})AGUa!5{eB@AR zml#M76e<Sb;(IayB;1G~JW#$16BHs3Fh)}D1Dj;%nkd7MzG+j39ue$|_ewpAN0}O& z4~&I8ciGfd0N3E-miE1r^#4X07ZFeZNn^tQkj61*h9$UU1_Ts5x17wQ|D7~GCi*YZ znEx+n?DsEe?Djv9#=`{vUrFP$XkHN|BgVW%ZH`rZx><0#gF;`nOgpOSqEo5#4_HpU z3xeoC0lNB9Idn))d}|5#ct4E4fK-W6i1?PEC6>m36;@sqjfB7L;9SwXN%_Bk6!rfB zNC9FN!pPO>Y1v|l*l_C0Bgx{5+=}s!Eq4vgG;V^PBwd#+R#XNYo1gS%I!vYiQgdX! z<E<T?PKH+M6cLByjeF7-$9WPtb8{0eVVsciDmAoYVgTZ3XcO<Dk5Ij;aWoNbjqZ@9 zB5Q_XblYjf^wr@i<jE9aU&iqN#nzE$Nd!i7dvS&GcO@l|{x`ZVb~}^#OmTi`@x55x zqf6Lh#k2##O~n-KJin7&$$*k3e1&zVz~ATE_EY=Y+GLB2Y>H7(dG}kMd&!DF)@Q)5 z*or?A7Nx}yxAS=Jh|jKcG8OiNsL7s;JUXM|Dc~Zu1%XkT)*`LKGB1x!UI-aNa+5u< zh>l2`*sX2`P+`-*{*z0K0R9!NFK{-40`jatLRmq$)J#^y#dN6cv(pp&;_A%ew!ijZ zH}=P=eCI-;z3zr{X4vw^KyMNP3PDPFak2aoO6O!ue&ywqEGE5w(_{MD!`0H3K%K+w zDLMh$gHZ>N(o+UfdOAJxt2T1n7Bz)o-UBoDYxvE1`(q4x+Y!Q6e<?k_fj#k4|K~L! z3=zuY9}D6yyV*VY&lsZzS;GfEvk0ZWi=OfjS@;i&h2G89qW6OE5|r{TNZ1K$0tvl~ zQ5XpZE66VhfyvJR5<pGuu^iW%cktKfl;9PLrZypJXi7o&((d8KWD@!hwaXh(=7`Q) zGVecI>37~`Wg$3!&_h*;r#C!t`OLCwZ}L_0|7F9JH8dzf8&Z^n#}VG>1y|A^+^ub` z_rTu%T1<SsUEj!x1id3t;n*blo>ge0s?>UKjfk!g*IeLmLE@OQ%k-p7Ex-xi>2_}5 zeM*nAr)>c@@m_XU1Te}0Oo5*dr~&m?TYk@lf}b`1+g%Rk&PYY8B*f8R*|N)oE6p5T zn0p^1c8@=A@9qm1U)w&(*@D}bJu{XFVG=w?Hwa;n6&*B4-Lk2@=P0@o!v4!aO~y?S zqpOI3#a#_b5+ZNJJKzKKP=DX@89_rLW77|_?V^;1Z8hp!UDBQQQupPt$KDJ9aWBAn z2<bgQEUM!5?Rd%S1sjj$o<JU-64z!tr~^De3o<34cMYbP#D)kSV8Hkxz%YovIqS&A zL(t4UidE6Op^+ioUfk_I+~odf<srJ?JtgS+lI(C9`veXG>{^&29Z>^jrjw7Lp(Rd} z#_r3S#c2gf#evVZPRx-amy1c8$Ay%YiiMe}gb?G-lbV;z+sOSNoJj<l9T>wGdF$~1 zCWy!pN_+1bClaEU0u&vXL?B4TBML>ul#|Mss))&KZW95j1WCd{6~nVUVQR)B3@Q+b zUTSexE#lI4(M*PT@g{1-|A!_5EMG`{5ed!9ft4b%xRfH{6$zo9aV>bNmfDn$qaAic zCg}oqtPl_^%gb&Y?k4O}4vbmAB6X~+DQJ83{3`V$<A;5lRz~6fERg(u>21d55RVKD zpe+Rz?I}U{pCu9~phS`iQhpVWvu^3>z<i}|%ZnAwhT@%bLcuYbxK`{t8;0i|{jF_d zwHYVHy`##j?4E#rQ|k8lC%xP3=J5a{{vsQ?z=n$UlIWBYumk80|GMdWuv(o(L)!A) zzxqg?i4#yCNji@G50~Kw<TBt}y~B{>{wgHs|0pEEm^X*VjyQOzAV7(P6ey9<<`+-_ zM?r$GxP}S;Y9w>vyo@bnuS2iw4Z?;Zv^cT_`$jX+l*VxxHvo73dEv&S0jovICOKG9 zln-Ds`-YxEP^ml0NbIWx13d&ZE%s|GRZa!X3ElSz&TPm>r=9$cK;_uv=27qF>86gt ztF7i2*Yk?TDOO$%Ognob`=nPluXbDa7Vq7o*?n4sesu`!|BX*ZhzdNuUmoTcKS(Z> zT#gmr_bhx2J`%h*wK+$LaqW1HT)F8de{xQ%L)^$|dU9Y_+@6~5pPW6)@gyKd^WEu= zfNUzUdrlE$d!faq4|Kz2{RT_!kNvM;vHup#ejthlh!p;>VD?`8v1rPdy|asA;?E}+ zvm@vHms1pENSc0nXTWdMFh2r$#|s-72LPHFi0HJQ?U2{9-<G~NBcD|*bQ-9v9JEy3 zlv*tb<qkS1Tph_=Nand_T<zK~r))w&Bb;X6my7l+n;gJjTS5fB>^yt^Mth=#Y4TRJ z=y`VQ4eIUCWn}Je#nE9F*;(|yFZ1rWP^1`n8l6)5=Bd58anC*mib6$qFrNI6eT&d7 z4{q7<tYFXAYT@+c<c=CDxPz;8VvfGodW0&sc3|3t*a}9Na)L&QvPL1$$^t;C9<csb zz3G5Q)+@h#c+W_T*>NNNcrVql!HO>a(t-P|QNg<TdKermYx;5+@IEL1X*wG7xDw-$ zq?cDfbz`7SA(=pI>kYBo<+IF3{$RgqVH}_%Xmhq8_?dVB3~GD8JPOXe@j~Z9c$cKK zyo**669v8Evju9b&q7czwW{fFx!hM>q$7AqV3ZQDpG!nS4_?L%R|Md1rj;s5R=M_& ziUkJma?5Z@(R6BIwOF8edZ2s8pasdT5#nfh5o3peA0HnB#va@I)C$bf0*5?A_y@9m zPvBbg_*&Ut7j>&~wjN~>N(((MyLi7{L~#uTSFeV;u4REO7Mqv@zsQK%#;s0IDZj1C ztktm@yWx8ae0Ljn4K-F?g{IcMz5elfN-aij!bV$q7pH-Q8>*YX(?9~qSrXV;Qe-vl z+=Xm2tR0B9dH$acbnyHi{GkX{#Lg*j822yMr)(ImH)Z$i$I|S$eZ@W!*9$DRvzJ4H zwByzDpOfD0%%E`6GEe<#!<eSd{HBX69L3O1yM3WS%s=oaB7@3vY_+P#5TG74H#UDh z{SldxFQf_EYBuS5?1w~Wc)Wk|pm7|>lxK&mTYen>D!?!!xHn3v$SiI$2Qx^W`cAPV z^~CfoYrr)<KPJkvtL?{>{E)^jnE8)P!|N19fO5t1<g5ie_Bek=UKpv^a%!ZCZa`J& zSOk<uWOLvib<%(ovtz4lNW|>njwNCK!HH{H^uy^G9rD${T8;50-bQ;qyAGfG9zkGv z-VKXbu1`Ry>w%sH2C5OK9IK>K`T&tdf=N7`nZT^80#@Du2Lv(S#YN{K3^7qPG7_u$ zA!}L^ypcFZ<<@0jLCuu?!|d3)CHSOA@z37v&c-$+X4~5>1p{8OX6SlpuGNEP+|elD zuH}@^H|%GDl|C)X=41@ZNE#`0g=08fw&4u7q(o4`e75%}dwOr8V;;W6<;$GT?oY}~ zMd2T09mL>)6VXkzBU+BXewOg!Qn+7kJVxdZxwUGA_#W#+)4KN(vybz*&pgVtUv0Iu zZE)Lx<L5d#;ndQ@fqs#E3x>@2d^hBykz`pF^5}GEU6_XFQW3!K5q=uO%GeIc;L|xg z+xS|B`R<wj(`Ej*YH5QsQq9W*5M9W@4v5`${(%>fmBo@i0eu&B(jPP0fXJt4c9!vO zJddB!leLVPw>kpUSm*=gyw9%d)F9clyY{suUTp$`s(Sd@dYWpWtX6+WrDAUt8$_BI z^9MJdKZa!5aDjAcp>%4o*&XH#U=2=Y9S?uof+%Sz-$Jy`dvyfaB?l&eVh#1n6R`k_ zJ2$M!3gXlP#jxTgnkJH%*79GSCJ|lYh|_8D^SYu{BCWfLxaO_`k3<n#nJno{@R((> z3WEtTM=>Z2E5zy?a+hyF#jy_r?Xn03Sx9}--r)Yg%#CgHguOZ=HXOLicCKH-Gk&A& z18Sqebpr0AgBy2dV&2aqdBQ^E;=axNlzRyoL6q9!EfIxozCuLUAT5r$G5;8Cgvb-z zke;{VbzN0@8*TEaPeb40Ytzzf`j+T*MK^|QE-Ni<0UmH+^1(Ck@swHtBP<GXsmK!K zRH>m#-ip7BOw9P-!kKV2=2Bj`e)q6V0zj%;+%&CM8d0=~zt5G7qi)5-Z5f5(hX|=L z=M(9Yvlw^x;7J{=gMP7^>1sEc2JsJr^Iz5G3bf9@Vi3F1)Kc%w+4cc}2g8D3fYyt- zgzynC4iu0AKDWL3xsMQx!Hf$Y_NjTGe3kg6`MIt$d1DBHf4bF|@X8Kc3_QlfMlAkW zX2~XG$Ms0N$-bX$(S(LH`e&4@`>a?RiNR9#m@6KUUxG)tr@%u<sG%=y_>8*L4h)fq zX|2|WH8n~|SN!i(J{a@_j=AydMN|dT587gH+=Be!zG`Xt-&iSyHHK?NbY~k{JULrw zx$uu$-eaPe`8>vk^`DGQhUr_EIc8DTX;pKW1Yc`!tZpv|AU$gRQhw4;)_u1GcH=EI z{$;o_))Gum*+Z#EPq){9X=DB-xFNW|u;di<BL0g9-bjkgKq@oQ<Si#q?JbpztGcxG zj)e)}I%cu&9FI4<-A+~_l#M#ZAED!mO9TpfrD~u8Du<c=AQ+U1D9))VFoAE=*PMim zm(@(f(5VET2l{l$=*E8KErS@cq<&B}5=5hRh!G<dc>6r-Fn8GDYGQly{DdvzyXSQ! zTGU&SQI=8WB07#Rx+uujE*`@Y8U}$83i`OOwqkIJL4dM~P=BrZk*StNs&1)$I*ZfH zUtkaY@Hjq1i{X<_(dU2#f}tc1`>B{nRaXj!kukmeL;%bePPp<WeWCyugtSs!GTh0^ z!<1XZ9c_7mLEaI3Cy-WAWfiYR?RTWLRAXYnwhL8frz~Hbcwzrky#Vz$xHd*eFO|^L z)KbX({=sOy;!Ug`@!8CAwUxZ{-K(&`_Ij+~iiYBWah0W%wN1pGtq;)HKpuxg#m3FB zcCW&&{8jq(&x4rm^o7oW7SUYqBhM)rocn}IK9B6ResnYJDp}W8Hg@;)(dzgc*GG-A z-;G}OG+p0xHk7}bHb};3!WY=4Jh9oC)JjEs{Q^=X=~F6Pp-s|AHloS&hiMZx3)6f! zMjZhgj~+l_K2iTuh+JKb1sM4Rs{(I~hwG5RZQD>wrbdRzTfP_4nBh{dRDpuvcOFO! z7DYgWsX)WMA+>1PV97V|D}c=~QUa7Dq5K?rkd#^))kd~bK!W9W!)-vfTxF^N*a!Nt ztz^y-U`45;?F27{LifJyk;1;#+0pG$-^0v(smrvA_Y5kx<~!rpW>tgS=K{#rohGt4 z2(;(b#2Ud17y~8ch__3Lr}E`#_gfy}H(8`@?-_e^+QqB!dU^5ZfoF>zFtIT(pOZfS z2bTq_idG1VyoKOQihl6-)N&JW7oH!=))<Mh_+^Oh?hQF7ec|)jD^wQo11Eh$oh&jZ zx!26nQdIs9Z4QZb-$IIl=r<UuSz_NsW72G1RDRkJm_DP96BXEOP|FFcpf|Ny2Uz|{ zM3vq+;U?l#YhhAia%n6E6)&YQwL?l+T!;^LfWbfiaC2=gdGzA;zMEjCRYl|*tz#O# z_yXq7U2f=J+w1Yihf5tKmLAMi$;=)fde4v<<N+Tt9c4KfHVLNNM$ZmTab$mfn<XI& z;)6-&cw`i5AktDc%2G<>wRyhk$MJh(lajcS$82(qms+@jfR+9L<)@eSgR`b-@Y0WD zg4wo3+RM)K#XD_{%}_#FVGgIB5XXyz_wZ`l6%O~D1^>F68Rhpv*<ZGXg}ouvgO=WC zzUhTJYd6h^e+{>t$ig2M2Dh@saNQ6-BR?DSd`2Qze>=-ktIDC`S{MZH1QBmTbt60v zB48U3^Z)Vh)rCeCU}cR6g)V#BOAQHJ;27say#}P_>L%INZ%o{19&+d?Oq!7kDy`5v z0puTuU_Ce_+G8ZhED-QgGs;C?H<*o<1pN>r2qE866b2b~$H96yGfYl38KPTm40};> z!+!A6&hum?P)f207yt90(wCy;U@H7G+@F_uis<#g<?McU)w*VzT&**I5m|PRCVhM? zTld1)LIZ0$5glqtyn8JBIPxYo8b9Ld2f|04hQt@-%0xypiFq-SK<PJ}Nis*sSIlH< zl8*k<=;e6rS3xkVsCp3^44j^~i&ednF*RJAiL^$g8UmdvLU9K4m#a?69cpOEIu6YM zPW*RW?nD5gt8vk6PI~W2uU9W0qHz4a`K*J4g19^iLd3poj-&X>&nG|Rk;gxxtE}ID zB8u=wMS@hB8bP`rjMzfAZ|!D=2TxwyAILX7+BMeoP^-2jBNltkBd|jRL8c8biRg$F zeO&l&GP3jNJ{%aHj|5#tYr(h%x41mcD&zVZX7?C6YvQtNJ2Y)D$=pxQEd-l)emjGb zUFGTE+Ur~0V=7rF!4mmQw5+XupXC3rrs*V|EmSZ+k;(wHikOAhd><tXm7p-*iC{#^ zw_Wu1&}%{p9cFZ}FUn29u<a&|2*WVz`{_&9Xb@BIjMGb}mO|!#N?o<EP$L2U7O53H zS7ZEyTD<h@lY?(JjWw9JuE@dV@aboPg1J;+Ex3NKXmb$B+$n6p*F;jLB^f9se6?eQ z$nixyeyvVd1)bm(7U*OoLGe|VNmQ`idXqM6Is0zU!+Tmz2L0^9`}KVK%gBwU<m|+a z-Bnd*)5o`PmaciX0N2EQ&m@?8sG@Z<@#-D^{!Vxd)zOK^&T)e)xyexky~07{<#yq@ zq?!>0cH@Ia5nws-?R*8Yb@&zpn|ja?M)nG*<hBC3hol$+D|dZF2RgRoCKsCl31EX* zi>cW)Oc<AFmjWUPRzb+qe<DGU=zd<#__<)w;|%5Q^;yN$W4+mh`;FySX@Hk_3=Vat z5PCt7eb;3#2;hRdY>|Rhsqzx?6<uAN9<ib^ush$vaiPR!1b#AFtzF6gN2bsHT+d4a z1O;+;C;C$mR@Rwtp|!X@j3vw>8ZIwr7#{elEW$ZWiVOKj^uyY!?tZE2+AH@drLO5= z_G{C`Q2J?gQu|UC`gt3VX>HI0erO!ha&$;1x-cZb_uZ)Qxp&4Z51QCnPj?op>Lgc2 z)D`Sin0}e>Q#yJU@-;#H^u*Li_rQM><L3=Mu6C_W-aO-ibiajDHu8(KX#NAvLTKsh z+I3Ecj-nDi5l(Z~^2xaK^o=2^0L&|M<I+RZje4QSuXF3&-tOsaYhx?%6X&_L_0tuN zH}`N&^v|H~cLCTiK02TYX@;c04be+_7nL&T<E7Z<C3&j36npayXOl$^x@Yi!9|Q_F zgMMmJamso#cA~1VDy=$?Ig@TH13z2YD>GEGuQ`zjQ~TZ2o$h4a=r%{|w$k=1Jab@r zt&Pvdc~|=pTfn22iO5v4yA8vlmL9_7$D*wh4};eeVbpiaKIV0W5iiTBJ-%g1E<s$) z?HX!^`Sxl?SK3Uw3U*G36a@|c+YPYHON{e(HW1IveqkHMd5pq=DC1k0%I@3}CtRXT z6GO9-cfL<T8{G}v^NWlOG@aH+ppWQM%mh}TjCc*la!g0z(*~WEs>NDOLyp))pR%;k zxN`a&7lU`xrr}&Fa!puky3o1_p8m*e?Ry;@*XFOWBR`qO20t>j*0qwWQM;2yKl7d! zOsX;wI4)6=wFKM>9K~jRt(uPnScKPN&ZqnzPsO}%OL#25aQpK8y<5aKzYXsSE}gYr znyrwmeLgRpdT+TTOL=i05%r~Kjni*BMmBSOIF$3TTYCQrLVNYz@+j-ZIlj$2&5r+@ zQ2hZ+sJ6>GRsVcziF#W9HagkMpKx0awX^v=;OO;7cdwDuEq`qE;{MOQxa*Cjx`<r$ ziaT4=btf?mpvNU!zvws9r=|i+AXDOb9TO2A8RVoMtZkjw1(W)LDWiHWEMJk{ga4;A zwgJ;xT@@y-;QIJ3su5T37SlU;_$Y=?7OQdTBogo+g`<Vr(_pvG+h&;`Lz~jKMz<c- zM3(<rvKw&7Yeug=BLp{hjjXtOER@L{s7@J|G?x-=(qZ$P_Y#y8$q4(rPrzZ8xpih+ z+R<*f(56IBoDftXrZO3=W3=Ki&8V);xB0_nu@-3NY5vR%RAiv(riu_X6y|`WLYC<% zcJ);h3sY2sD%?H@b^uU;<RhK2GQdu9kd0DqyJA6_Q;UFt=IbFkQ0CXL2!b94%YgvP zaUr%*ePls+^+6xOczYmt^|^7%yD7wqXeoLrwvV47I_4Ox7IxssoL!){-k0JHN>VQ$ z>=K1yK;HGxlj=lcPP<E6LX-apqr{O4C-wD@5r!@sE$&p<yS6&)@a1nn$LgGWi3trI zmj?b8+}C(G^wT5To;Vm6-Yzpg+-XracD!v-@o0S05BFe2$NuiLM%KPwioCPU$ivDK zLV`uzRJUJ?U51Qy=Xs@Ar?`DWe8h^R2>eA7QnBVCrSuMRiH@4~$ck)eDM2Z{LI$w( zi7B<I1O%AI1mWU>iI<~oO{mb>JvnR<)_@97T;2@C1#hjqEBfvi@LRsDwnf{3PZQ0i zMS^)QEBWt>1hosj1Qzd;>j<!){@$G(jrYN$pL*jj(z{)DKiq$U)_$|<k$puxUD3i@ z>(Y#7)70i784>9xU0c>Sm1|y1+XD06Ypi^PrT@ja=G#eK|3z`-+qm`+@0bFLp@mJ3 zzlrHV(Iq6#J+YQ%6qm92@xGG<S8J?MsEwnNE58ENu?Vjoc#sh^*1Aelx6-eQEuTs} zDBGcu5xCUO20jh&@4#-hU=Re0V_TAK)Fb?>-0tA0HO%qgFu&h#%X5p&n?h6C*;2o; zl`nzPHH<`7D8)+auzLvOC6ML40ftV69s)zBT&&%yiVPsbT`^0T%{PIeQ*9zHE2P9o z-Ih`yuX9t{c#&c;O3->*adzVoXwOv0-(q3Yp$+r~?)6Dfhs~G<{k{lU+lvVvYSkx@ zIzs4M+v~tOg?nGFZ%Q)3WWGbdiy!4|yN@1IHCx?DCGqhLY<>(rzdmd3+J36uKA*ik zPOkKACAY=j4En|n897Q;UWOW&l&DoYI)?g%dXSY&vnVf?7SuY4$;n@WKTHumM2}LS z)@leJ8?mSpE`YogL%xTy82$$B(K>*ARV>gS=T3DYndTE1$@ebt2fyNTdXk+#s%1WV zxfJ;vO3&qO{JfZ3`oQ0GkDb&_pO|=6|I-z$^5uz-`At@>zBnz%Mu$IE@rl0lIr!7r zQ~g)pXIIzOSZR-Ul^e`_4_fsSgF8>{ReZNzaa_OO4kR8L=21?{F}}|@aO~A`UDcv2 zl>(}lSejrS2j%k)QTuSm$HClknW1S~)WSx3wZ9?XCUfy4`XKg2P&Vc66xJD7*prW5 z8CBOA$ly@x`x}ctp-v(t0eSE|WuZL4RTaYBh#LpHR#foGe|Uj{5b5b8K6SfCFRH*a ziq=V$xb6WuF{KD)MZ1G!lz8Un4hD>sxDT-Rd8A)DuGs!iV`-C)AffM@jpuq<m!@u) zP1=`gK4%q&cq32gxD2Z@S}3&rX;Q|c_HW9P4B{8k+2S{=4ggCDa+vv3yl)PR_(M0n zftczx;ZT@a$~H6`)6kU5oETYQ#9vJ9aLnnym@=tu%EPMEQ&Ima(*#hN$0ZdI8Sn`} z3PDi+D%wXav;aJe#}Qo8ME+{IRxmEkMtF1j_4e>_O_z>{$fwguXEN}*s&MVavc44j zXF$9K!1;*z|8Vw}L2>Qxnl|p%1b1oN-Mw)LPSD^4cXxMp_u%fqT>^pNA!vXg!QEk+ zz5jd89DCn0^M&e4RaQ|@{MK5}^<4K|;Ep{kekzN66*_opY6R-(Dw_Aoo#32AiQL^_ zkgM|`?*-nT&W1c;1yLkj8|7FdLj_Unf}6g0d1Em!Y&*$JJSzh%bOsQ^L0U=?#2C3s zKhVhmmIMB<Cex<(GydD>aw5;H1_T0S@%o;pi`BwULbW}lRvzZ?K%R$5f(P6^4jsHZ zbfw8U1Q*j19+gH_p}}(uXVzPWz^57y1ifPQ^hGiv9iH^)C$n1jgANLR(amv+vvE~E zE_ERcZ~vcl<`dbGe6#wWyi$;r9eoCnB!-Q?!5>C_#Tdkf%a{E1sHJbetSyT){K|9( zZkEw_XjA56$xppSTBrk;$YT5WA%~vsg?qQ&U)u+=tOb2`LrUYP^XY9MDDfY?(2CH1 zH@VVeD9G>5dxV0=7+~M7ze0$<_<}vh?CpJwY<An!^mxun91{()QK_&JXAK2v1tN=M z`TkuWb9ajP_R7-=fQ^l%CE_;=q5Uy{F--N)A>4WQ-Or8CpVZs_cIWtJ_xVdxVSa_S zIMzAh=V8jIp9j7*QtP)C$6x#&G@kWniwf{Xu_XVwW+q0_rt>;1*k3f})paIA8UkPQ zMD{nmEvTVBxA}=OYF*;+rQlpH{t({$ezT@q21LFO`V&#qVd_uw_ch+SUfD914giw- zwbHajG7d|{-mV>LLJz*@x4Y(TK39GrSuME+55f!9;oxsd`^Pow^8M(2gXj5eg4IsF zfi`W?SYNI5;0M(|e`M}635veAVt6PccjwW%eOk$?LINcqK+`63ri_b=k288JzbloE z(k++tQm%^hRvtymnbdzT+ZS#rpsc3Ew*bSF)R@#iBal^fDB5j&fR_xy+!Q^2vHeU` zPU_qDx|_OIg7}0jvq}509(huO^Mfp%%w~H4f}9xrYKszWJdmDzVNH_lVNV<?l{PI& z;x(9t40Vf!+`ss7>M*lcrGM!1{th*1Wy$KcJM5}>V&YrwxA^F#w$Ar^yU$zmPg>t1 zrV#H5%Nk^6<=63y`XT~6O<^pGbm%6=3HN9tQ++Ro<<?~sh%;?qlX--1(yiml4dWs{ zkmed)lb`<y_PLngl0J)(^@g3xB((-n!6=$V8w$%f6}66?AqE;j=?-0&8b((KGi}M< zrOVNK@)%F%&?RlFUyRd#9=0z7B8EGe$5h);-&+k^#~hIwmEBt6QDO!uTuf<DvISx( z1k1<ICJo3T(UEg0yszK<Lm9=GfSvGO7(1U<dnAhtcDcl*M+<d|Qrh41BFY#EHv@}d z4r_%<Pl`4&t(8JG(#nQ!7r}sm;z0OGxU<yEQPk-k@63N8rx;7}0>Mr!a3y>RRilQ- z?+<DRd2TN0#zNI@&yCkL0|kBUauhvvON^E38hp2jofo*VZ}ev}>JaIdhx0h6^OMh2 z+)$&!!J{Xw+;$zicAaK9e{##J(C2)FexT+xdwaQ#g}01LDp#qn#k?>q85un02Hve` z`uJ#9sAv7WAe-e9*9~zj?f_}<k6%Q9UksJrUJL^<A|vWuLr{~N<#gJylb{H63aoLR z-q{3)1tJCjzb#?7^$$30n`qWlb@h@<A^KA;{o>T?0>2%8a0R~|n&@&0+t>Nl=FK)+ zu-eo`d|;n}IVs`LoXD#Z$2qF2c4?M2zx{BRw3R>Z0=8u_QLpRs3#xs~;g9OtPrLFS z8B!#5Kk$6LKfN`;{kbsRq<?en;NS+bcox53Gh?F+X~OhjHwreZ+|oa=tpm+J419^x zl*K{&ZRZa=m+Erkb<XE4)O-B-1Ne1{0>gz_&qt;iS3tL1tD}<v!{sDTN@K=+RSh>q zVN&DA7m5iOMdnpAc?9tkU~cyj4Wp$ymHY_8P;Qw)8?L0l2V22s{?6l<r*=P<4?5HS zpGmVv8ymFkk6+@n-x)D#rF=Gig%y1@{c}S>g_EYFQ_s?4XP*>6;oq<a!&XTz^<pw@ z5H&IUnlOTCct`NLAw-oB0vA`^ijtGf&7uMo{v~Esiym3t<o@DEuku2fGdON)2K`l- zC`Y8t{+h7ZTe2x-gk2ay&xc^*fu!f&_aS;rsjPeB;bl%--qw_i&8-Rwe6WE_qF;r` z*|^D~Y$%cF+>DQ40K)_2b>I`|Haqzxwc-AO_SviZ#iEM|O9cj28+-&EuN2!Hh^)_n zuuzQqa;i$@%<y+hn6};_N@2XDvPX;uC7YJsQseWKteU)Q<)Is=sw@KDQs;u-l&!j- zfaE_J7%J-R{np&L?do3h{B5l6#&~^2JZFTfQV)^4yR+6KW(1NZ<U?yBCMtJ^zOZUP zCDc93w0unG46EuW+4UE>7;huh_ScvjdeHi<WdK`k;83$runoa%L~%L%RZa_=MT4$g z-3-X!{5co8Ttr|#-r)ryxiyGxNKE8pLGnJ?dfmY>K#o9>wPo-QaU9YIV($y&-po`G zE{(a#<=yeY=0%UC9|27-t+l={$%n(~-}rN^?fGqnroy6MWF#3sj_eG<EDw;|6<Ik0 z5ZsOSQ&=p(H(I$3y(K1y@F^6Ee1-|wL;{SFDUEkY*OJV7VvWM<=whnq5Q!B5V`kJ$ zQ|w9Vc&{6r7D*{PKn7a0d<=nV;rv2I2-&%Sl6Q^J8~9SUau3~?w<i|c$G`XR1&(ra zpL(8r(lt2+960p_&73y*@U|mtdZTdm&0d<Gnc+lt;#j3hD;Sa*;X)dEb!62xoKwu` zr^pk?JX{udiz68$ouxs0XYYVR?{?3i+w+lD%Q9q=Ff*hl`m^F*NZC_$9O%KbDYB)e zj`Dm%R7c+UGAFD=IVAaJFA9GsD$EiDILd;A9)M^jHRUpglApxpGs&r*po?1_Pkcvr zd{Zu}=9iz{KD@`pcJ1Wf?S)!?k}@^KB&Mr0U^u~iB9nHYkFq?6Qy3_xt<w&A8w)Kl z%b)ogq^+4NzP4=dcq^<|tF%QRna4V73@sMR$<Z^D$H)Ogm;gun<ibs$GgDTpJ^*!g z9BVKEO$K!i;D?{MVM-ss{09u&Xi6MwzQNH^fw$Mf>*MzAX>QfjUIRt9ixU0pJKlkq zIOaKkd7>9ba2~7XdiikBY^KqU{xC9S@6K&L-GIyspSagjMz%Kj_z#e`c2>+TJtw3r zSsy8N<d!GFD|;D4>XY;6IL?%F9tOJl?i?u`yS3>UOX+`iqvgPLh3L(|=*7cgNn)4w zW4jcO^!YNZ<*DyVU%{B7FqNpQ(6SHvGQ5#*c`>?Z4Ef^WVAHIMh-grGZk$JjP@;#q z8=gaFJURWlk~{QWmsMxEyi-!ahM#zm!o^oZKf~g=zK6yT!Q>tI#|5PlgSP4Bwz8?2 z{#w6w>FH?^7J~Mh^OVsXx~d(RUMovA%utN`phrp;4@=a|9u;lj)$nGzn+BE041Bl! zdXI`A<fo+X!ina<V3>EAEbZ~UVd_6PYbkMv%EqDnpcqBSUYapPREiItVFo^~S>i*U z<C;r7Ax2+?O1yxKK<@#s{6pRAj~Km-{w0xj6>xb%;^&yET*OE`bt%^9-=B<ESxhu$ zsncyW+uC!;$N6Jclp<muoMkVAt(7`vY9~3g>9B04*w=dbC9^-o94TSR?I7RRX^iiR zNNT%MzN&S5=iyw8j?H!kJiXJe1>zyXjFBe1IwguMaKb8qUbGrBAd7&bx1D(q;D7fo zO%VB#bS<2$xIKEje6sR;FmJvjy;nH9OaSw*j`gd=UI;me3-{Mn)iM9NEy)+`=Ry1$ z&IA!DqI>!C1QChKKrV9}voEz+6{XIeb#ihls`CW)tiTGKxTnWlYIt_9hUFKG{dNL1 zm%$RL8POO*>{VL2KOt6<l7*_VSvobfhZF!l%9}QpOCtwlk^A&mW^EpoKM03Oa-6YV zy%YBQ1TB=pxvqm7aq!2k#nhDFc7Coby|;1Q6|kTp#uP*PFXv{6|Hs@c8}~KL@I}n` z;QwcC_8tD;=4P7znw!c0YU!LlmTI~l4YJI=Y1+5?gl9JuH%;F=HRK7g`j8mi^wK0G z;%YbT2~mH)$OEsL9aO%9bGG&}5p7rOeOmVE>SwM!q~-J1&>x#e_RpG2!Dr#<Tf~*9 z(++Ryo)GC!Fls#|Rx>PK71X<_M}nr<I*!(BYWR0*a@TlaP5q(xxO(OLsa%PzO_j=( z6x8II?2OKgV!m{DLyZbuNu_Oh=R}K5u$P}W^NMRe0F$y37Y`u_vq<(2TlK)^-jNn{ z(RT}?DATrvSxfG)u(j7q^sSqP=Y^B0aoJy=SAMjzJja=qVw6-?)-1OkncbXf_9vCD zgneeBGR6tRwAEciTI(_TwSTPHX(+pJOu@WA+p4>W>(YFjb_`2w-)ZJ4Mzf;Rk14ul ztM2jJ!A-Zn+VD9VOHma(a${P-vQ{@iTHFb`E>pMoA@Z%Cbgf_H`d9C6LBk3j3Gvf} z<n4{99d3vDlCSiH-SW$HZ`kYONT=z=ws6FIIV5{8_Fj)Ut}SpST+PdB_46{m{+=5C zqD=m&-fNB^I79F3Eko~eHIhBBH=5GCEu6iTRT=u}J+#KJCu9EJvpN@D%<kW2X15P# z4<&;48cfiYOGiT4D;@@k*hPk2)2wq^nXgQAS>l;rZ?rQp;_9J3v4*y3i@0Ypo^lK! zypoDUr(#!P_=Q}UfJbg8WUWQ*iDPBoT;@Y0$za|Z;e_5A;n;?3H{&AJ@Ma*UO<gsT zulPrA`O~-<@v~xhcd7_eG!D(zoQJFY$93V}wbm0!t$(S@u550Rq(ZbkxPAb;dr8CF zQ)Z2?Jy`bV3{<|+2GpSjd=2q4U2-+cTtAx{=o?WV6GLPgevu>U*}JO!wr(SRUwQ?5 zY-cphgrsxV^Qqg^sBYP+nNk*;{24<QB>_JYQa7w49_=1V2}i@5Jeou&Bk5Ph>=kKc z86BfyqG9gH7U!XBw2T*eKp0t|B`KOtdET$s5x=5n31-(~BzZ<e-f)}ll6?*H?j;~W zU+ng^dsAAA(f#Q2sRCyxBImFNr)F@e@?qq6EIf;-63eJb46KtBgD+&X0a*_3VXcZ1 zAg#png0sLr7l9QNG?x*2Q$W@j4juVka0&!J)ILH1WkB2+5ghnq#OB5G=skXR+&(lh z8%Zp70cA=@A&rFe9Z`1iJ_2~|2b0dr7<&3v5H~;R{@DJNTqdB)!tt#j4y(ecfGg&w z2mVJYa#_`#K39@m6Yj0;f1CONEdHMQfeYfqCG~Ii;8ipbv-A2i=HAD1ajn6>RpeA! zl4&7&2=mVce98^mGf$oQwx@Hxe38rS#P`9pdEPc1%3Z<TN~$+Ha)dk`(9hLze%bhC zB$2W5phwBisuU10@~c9W^XI!()1pL02~NMvHOM*I*vJt`r|d8bphQukX`qG6qF#bU zbDE1!T!YVt_3m8JP1KQgqcgzf;B9^}`~BeE{xgp(Sll!6BQQYieyIl0ynC0MsMK=3 z&>DMyq}OG?B3EO0P<&j-{x-~;C7Bch5A$XrOyXP$49&}A%1-eKu5CEGf=RT>KVkC+ zNE0J0{Vsm5jc4qcn-$k?zD!X|Tn@naDYlh`z8s)S2t~kSKuM-ev<~cR4AGG?(b^k! z+4xCX6DW1D@pbUC5-deeY@bfS-{zj30c$ri3OANkWW(8+^7Al~;8mcDNcyQDTD#9% zP24m|x&aKczaRla-|s3AM?@A(`sv)|rVd_sQp`KZOzc;2ceouhXFp_=0GJbd4|)gx zn-HeV$6{w*d?#5E)Z6gB@$V$N-|t2hJPBrP0Nj_MB0-(xXXKfi5`Ak9KCsGI@_w=f zv_W83X77_;R8dYKP!WqZ>RjU&RwyH32!<j>7<~!t$npF}T=#KfZ!QWg${I+ur4p|r ze;{Mv@_Si(|K;}u-rP@w#f5pc&H^Mi$CLmV1m5;#TQ$D+Z%3apbm4j2>5k2k^#L0` zjOaYSk|0%)WopEoN^n~EP^fw&vIz;bO410C!C!Q5b-`bj(C?W9H{0O4(k`>pNCwU7 z+Q{mD6MZaK%l6J89N{M5Z9yf)P9`VZU>FkkcF_MlHM;6vp~LC^A@E}RE7!?#20qbr ztMa|s(B9W@MBGiM-%D1TMzAqOYiW?^RsC&rMAH~h>}Om8LMWUubka;Rd=HspfP;Nc zuq;UPFIf<Othf{^d0(7zMxm&hwvhr&kEHGJmqO7Ri9?tU*m;;3fKw={a+IT1F^go2 z{Fb$kRR9pO6{U<*iWj5oVAC?U0ByjNMoXYD<B(wliZTMF$tt-Q3a4bq(8&8EM2W-$ z0D-*f_iP9t;Ad$vZfmid@4~Ihf4&P1pqdb(mrFeIxzXA*kY<Y!ZLo)kHJ_e*52v31 z`tBcs;`Rr@g@sq-b9ldZzvf{MyqboIT#@y|o`sXd!tIbJguCg&jY)_oFx;51MXsOz zJgB<ek6;8PJ?_JxHE1)$Y{2pkA*Mrxw=WVI!zGb|3-;y+Rft&mtm+nNJSgQhV>5)d zkh%a(oZy1JkwU<lKv!lVpr6pu0c?#hNKso|dQf84@lcFHeY6MB#qm&x-(N| wx; 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�-f{kqa%S_Qpt6SV);BLV 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≺$TE1SH|ZfP%{lR1q9-&!=YmBqJCCDV2W_)RYWd1d7PN($O+9X zw?xVM5_NCBIKcapE}@gISs6;n0H9`N0;kgsw9`v0Wb|Ud1)`an&de2=!4ijRrEsMT zN1}e=6mQ!2l<*x;1}K1V<01J*@e$$c?<$PQPR!^UGk)bg9eLM(cc?h}#gk`2pj~9P z#q(#{c<`Ut11w}J{eC{{?BG;umnG@Y+dZh?=RadUf+Eb*8%jAO3-&RYy^JGEGJ^cH zqYm+{+jWa)jszgY+?g1P*Ne0MzUyz%c1fIP&+O*cjTr7Ns|x%5R$5e-_Tv9riye## z(aP=q+<Z;pufr7&2Q#McTW+)b>s7peJJkCxUn9v}==d!Vcn$YI?%st~uv>N}crV=- zOVRfONeNs5etU=iIm{0kriCOffaz!up-U)qG|AA#6pXy^VJLwxc7a9F{E?}A0NTIm zT}H^)sk7bcu>k&Zk(DpSN9f7FtlfvR(a`mhapZTm3PTd*mYMCU6H&kAvubnJ(!)zk zxk(MBix1h>C5kD^yG2E-a*l!V<-yg7fwE?tMd;N-y)_o;)TsZfb>)LAh(b)oUf6CX zH;V!L383B9n5!i_KFd;k$j7Hal{3P-I7W*zkfWhpK9mYEQ(ZQBA(au5pvp;BW<lBY zGHSmTv&y$)+gAW3Z60RuqiGA6o)2l~#K1$MYg$izMJU3+*{~EJE=o+}jK^~<OZ{~e zh+gdU!u0NIiXo<c-x7`hKMVdTgRa&HZ&l(1r$DJC$V~x2%Mpba)}#Y%V;_P0!3>hN zO<7O`NQftPuz&JOVvS(zjjn%RJOl1>6N3&WcDJHBj>&~ZK;|okIOK!VaX{erpwN&g zi1$HTo{r6}r;zsyzjd4IQiHEvYx|(34i*3p)bAOQjRyp@78Ca>X7M((gF+YfZH}SC z(3pAF`WaBDw>%X%IDJ795Oj|s0fli=7VxZ=x^y@s85<b8w@v{3`26BaQv<mC<6|pg z{So4|#_Q17TB@ZNPV(==dkOMIV}L|{zE}&83~b*U3Q@ubMu*TU8`_+!``a1hTjEZ0 zMs|{fq~3dH#Ndht;5S$$>pg{7q7dp!TS2(3NH!PWt<Q0$RG{(Xw#3N?{z++;t}<VC zWBag8R_{*T5Iw<JVFmG6QQy|5*Ct&AF$M+7htr-#CgTWzdDMnQu~jK-iYFCl>&(H~ z`e6H%8jez&iNvK+%XDb1A`u2>l6ehV&wNXy1sZG8qBSdx#-<HxO)B7a{^SU#N=EeY zwx}-6ETwti@ba!D`bUKgi4KJe71&J`+IyG=(oK&@3Tx6GRU`ttfk&XDNVbrKkPJvW z^TlLTJoWHMrP?TE-Rqju>UVH_H*w1RZW)Q(@hg!HEaD|M4daFynB8FoTwy$#7Mn?@ zE;#i0^l%o=wZYKUlAA^woRu~&1i-5?STqFSg-a|kgNfC}FwdY<&=XiUIH282Bd2KN zgf!0>P(J}?XYCy2OX@N|pa&mO4uxIUOuD~rZrB1e5{(Un?Nmr!SS0!sJ3Z1X28jw& zh3SiX65t1_bm~<FeBqcsg55N!i9lfFKE*bB>%u-Ln<cm;tK;Y7DhZ$--r(OX`poU^ z_x<n>Tb1{m0boDA&V2+km{G$AY_%~@V8GJ$8q^LeKG{gW0a;6zK{PLHLWhEX>5rsk z@Uasx=M5(BUG8q&l{-x_yBnm*40{ggYmM@XsFp#pHGoc!#rr#om7)#p&bva{B=aPE z_3%sJ;4D~|wpY{))8W$W_|9NoXCyovt6ko+a!3TAPtn<VMt>$cTGAez4~Fd^NdE00 zQguejwQ>|}Wu1SaX+k$IN2XVuj6J`n&&8yC1)_6rwe^mDhor;k1VnF4z6b)m)k->Q z&c*?P=AiVEB+-GmllzF&xeE`y7zKm5n(Aec&eAWy$Y3~Xbb2lY$|*&h1hDvMQKAk| zvw!0YP#&J#IkqZ*leeSbcJ?~vujVL&=P;A_C<=G|w~UA-b}6>cn}`KfsX*eXY({Pk zoJSZjj)_v<(-`QGw^J7{JZxhmNP2+>JogqcK*<c@tSvk=fj{TKu)2J3NsYYM8V214 z<7oBuRDKSi;`UnEI^7>;BkXnmx4>m}=uJL2I73ftwD&j_H2(?jBbHrrx|rkVSuhi5 z4GNBglwIJ+E7HPa%fa!eK<D2lsfK2oxK@Ee8L1}}!y$i2d!g=faLOuITlS|{Z<gBy zHDzuI_*uw18?Ebo8ZVki5)iunV+#VA2$b0W@t=?Ia02z5G;X7|Md?)VmR>qpk=O?i z7#R>J^i4%?wSBdg1`$^4g`MC%+f^Z#KYsVyVHLdyBy%(MyZ#ntPCd83uzG<Z2U z8}Lre=OlaXXGay2<b$<U|4%CDU;SiGDv&e{W&R9J+6qJ1!H_C&1F!F6rVHNNpCduD zun|Hs^a?W)EQu##6&GZZkNuxo&wCTwlx(E?5%{Ve4e5GV5yG3NpjUXaMHZs*W@qlL zZ}ZK`+2^(2_gE@=WJ479I)YC>9x7G&*UgO|JRfRMxtnXw>%K5na7t8&AYQ=&0d8oJ z{{PtqiEXH%oF36Mf6Z!a*?aI4qZG4d<il<@i!;XRMa9P{hd-~`JLfoeJdY|gnC^;4 z7naMUc@wZ@ii@`H&0fd(D&l!FTB>3{9Pw8~P}HY^LE%E=f6OE=3I8*bR2=w`2o7Z# zk(^axYAx&C+r}6<Tc_MT<ECYe0Z3aH%s?B&8D24E(E`yl!^>^oJWAA_>-On}4t0wJ z5{tjo{TJ_o5T5GX0s8yYq08j|@N{OmS5OyS#1(tFN!!SHc$Dm4=2`cZb@JJM{fjCa z|0-ChYtAnfO<YuBwcPYZD=gqb3>iL2vjD03H-e!ec4yEXz_l^aK?AkzEXB%T`f4d@ z$=k)p!&)&`KnIttD(hSU+n@69$OtQ3uiZov-HS+n_=&jR0vC=}#Cx{3=fT(Gh1kE3 z+q=AS+og{viALEMM8LDZ7w-Ge{#LO<j60=QCczb0Y&Y|?Tkk0M&yPwUUN~n|tC9g5 zwI!u5){7OBon8K^7MJdi_nGb#BaZhT$gYnG-cH)a?;In)?}q=Lp1fD)*Pu{rzm5DO zGA)YuBW~N*J^&DiD_{I-a`+{geBOLh<h$X)MM=EMjIl=jYUV?!Pojuy@x7ezCd}hj ze!-aGTBT2Ttks$K7D>@sCC6sGPv+~nv-0{3@#FxRxsQln%TVZcfQ_4vPb>dWwXD8y z=tj5e`SqxAm4J}W$<P+r$?jD#mmbC}xfAV&Q9RSy63pG!WpZaY_#PT+d*XkQCt%UD z=wR+?J@$@o5pEu$+f??2;gNNbezfs8dXS$bcr~LIdmDZib-bsvWK&^hlF~qhkUYY# z#~)>5DmM)Kei?_#*6h2GI65|}VDrthHo<S78~l%FKI1=I6t`sZe@04HAJ+23q-~V3 z)+%=cI8^PIhYCwIIA0dF;}fi3C_Xf!@46a)U%sKC4+~JgiAa)YW%<v)KP>rQcntwL zEChKAyKToH79*h<(~}E$L2lCKmB7YN<gs7UpKYBzyf|t|rSA!vDPpU)3ve0#2M)>t zm`(iu;|rLY6qFqo=>5@?|Dd*mH_UcR{U|zA@q?k^4O{f@p{1`I3FYVCNfW<qBj*LZ z88-&13bYAV4=K5Mv<vb>Nv*~zdypjgU7%Z`N$;I!zGTn}3{o?St4adJ#%Klo<0ld5 z+t}qrqv}Z@op9IUPFL_szqH5-8A{T9Iss_pss=uN`cf_rs8c`43Xd^WV@DhYIvC&` z<xb<M<vm8T%YD2&SM%oDACqkLQrS$#xtT@EuE*q#N@?8;z}|nLwY?1jHg2ACLHC1U z*s5`KEJFH~JVF=kYITXdZgw$0>ZvHR<L^mwnytQQer_;6*Fm^L#?(=K3mrl0A&}S9 zTrvD`hiqA7NEt$Z(Y!rd?6#W<M?FX=A5MP;#5LDPctOQ|MPN`DK!=ZSgIf>f)P&1Q z^84iOiu6bA`M{Xj$RrP{)T(i+*{yBSgBb92A_6)lkhZ`FuEGE17C{i&^r;3I!i`G& zRinkuz<6)WA>V>Wb%<kkoVrszh7lLroF-XOU0zyUGJ$l!Gb}MbvPcvo{IVjHfdo|+ zz)XUIpKlSIC}%t*y7`8?GntS4b_dzq$F*d)Q84p3d-cPY6~X0^&*c^JBzwqcjP+mD z>A}tTzmg+TLYs7l%MkW0J~P?7jffB1<|PLP$R<P^2fqQm1gFX=j#TozHonzI;#gI~ zXK;v4g;YP@QKU_9#tIPVgS~`pShv`APv<yqr#!`K{+wQV-ITjdc^oxaKmKs@P8g|f zW1(q?zQk=UwcK=7m@Hk2CHN<PILM4JJwNwCGn!LT0GF@zw<QWO%u3DYuf7D4FEfwl zi+>F1s6A+`%uA4fai9H5B~t0kIhy`<P3XL)SdejfcO}LcjpMb#kCv-jRyQ&MnZZ{e zuB1t3p<-&_S19XbPtsN-^ydd&<m9jLZ6`nz&Y+LV9BLNQ2@t(_k}O5=&C<!yqg~Ph z^3BS0(63HoI|G?GmC>N3?>Z}*7X984DKtRF)?)lY#SBL)&moMERMdlE1PHfQ3zQn> zQXm~38YRQbmPC-IcEDL@hy)lbQzi@>LCO0Wy~(-o6#}bGD@~jCvsyinQlEKUO(UC? z+Pag@TB`C*VJj?)mQTAUCDsSg2L+0u5LI+rXu_K1gy<oL%eN8pa7PYV^uekWpDHm* z0`NAaoWACyP(=<g&?gBckwDm{c?HW9s-5&ZzdxT`Df5r3)Li}4ZgJo#x6zhXBS~Sq z<mPH<(+s70zvN>{4b^8d0^@wgK(Lk8C=afn27le=?2x^y%SJ-I-JWtH8BWMUIYRHT zEXznyGnCGJo0eb)8MHj+cKd6L-0y4snz39{RX@_{-h4e*kJrG>n)WxAzt2)TZlvfa zRXv<T0S}9n9daO(4*!G6Lb`Z_g&qPi`jJ^~UgG>p6c6RV2w)RQ384Z?DnS`I3r7Q? z(ZkRFFH4m|+78X{Zf(LW-2J_u%NGv{LiK)TXF$s$NY3cA<Div}r>{%|oaTdYmTjD3 z;3`DfG@M8%#(2grd@7lmNKOqP5M36GP@;<kIQyI<39ij~fMRI;n_a$mh#C-hvSJdV zpyuUS*_PO2!cOSp>(d;y6GX=0nheQ+{51w$4?@ewppxDBJ9I$J0(R>Lolq!?Xn!;{ z@Wba(KVz-Ms&D~j&LkX&Sb03;bEg9s2}P3ex_VvEgtI4v8W;(M20|T$Ji)uBoj>MS z$dkKfE=NyBuIWw)ZeN5a7l*86Mq%RxVnXERSXtR15y288%3y791Y{3!5Ta(WyH&Zd zFQqyWA>*L=7b`fwd{|I~Gbn=MP+AIXC=iJls#xoE`O2pVfjU;Ero*UqBnL_v8Bx>x z%>uml!*9^5NcCrMOS^%;pYGDqY%cpr{p0tv^uO{bk<dzVh};6}Xcn{xJuEd1%3(E+ z5~Kxzcp3*}kw}4s#~$LTYf)qxl|Oj}GL67`m3S_%00CER!2ATNrCZu?ve}~??-_Xt z=M`^kLnUH;+X*ayUN}#Qyf?U60qq)ID|`aY6!vr1cEfB0nQFFRG@hg;lZ@wO#qt2F z?*|y6E|!N7p^8dKND(j~Y;-iaP$va0{X;gD;SBiZ_;v=^6W}b~kIALrZ;w<i3hV<n z94}xL(R$kNI{11!99_+2#M&Ex8?W8emH`W-CY{#*!2;zPf&Qa66s~{t#to^n`(pV6 zoTD`h6;C7?re|OOT`0{yrRB7HpFm<AqF44o3lpx?k~oPi{q2W%1ykUg_2h-<C-r{- z(|hv-5zFOd{;~;7^z*-B^9mUeCvkIQH=ZA>0sW2qX1#!Mh2+7+U+?TfZ#Tf@Eu6$e zt#2$WVFr2o#qto?thEWHz95PAB|+SZSw%6}D#M8!hsKRlMwU2}F>?sKrOHF0+KdU$ zVa_#c*#t(8TP<9YFd^JtYsZggX<_+m&7LeB*=*G|Kc7F2R%b1zV8xLdXk3z<VG?BP z@$vt|C11825jHD(wi9R++Ys^x(j=d)C&~Yov1g-&rZBXILdZvpD&YPv$(Yzr@~Dhl zCt)Z0+V$W^@q(l~j1uedan-WB=uIH3+hBlP^%u9sQFr#=Y|}?FjV3jvw~tjxyIX%_ z{akomjeu*BG?9~)<b`rez+!+{5<R^>NPY`W_lqUNXm-2KwR*<G%a}1Zxj%%-25~fe zgPA^#P)g05s9YcJ>ozc2QZvoMi$X2&!xOmy3f_q1XX2!_!F0_~)nuj=l4Yttnk1?u z*p{<PqhK8zl5zMEd5gR7MsVaO;$)LE{VIN&nOt;i*SR?5)l;(3t?xu*S7V{z-ypB- zCiHQGvz15eapKcTp3Iq+>(5qtOrh7banHPeM(E#Mb@_X4-$wTczcUnuBJoDYALIQL z9oF{U)udEn0Z355y?m_wMf8jBVSNG7Dj$vNZ%RzyXLG`N|Aw%1iu+E4gx6D5oe`9K zAj(IH7YsDK1L&}t%_aFHru8Y}I$xKR)F}siSuf42aVvdbbV3EU35}s)h*M8PI0Q(Q zR3x65m=ze2vy~NqR(BO?N32HZY;!EagY?O=evm$Z?^WYtx8rYAod1lsG)d{i3*Q%X zYIUIXP7($D3?eG&-5BB}mTvT?#-g}u7Rk1+pZVca{U^vN%-E61DnqD4;pK@HjQ*aO zClo5GDbw|bG5Kvb4=VFg>WM%h!PRA~fY?}CtSMZJ-Wyw6Y}gi~2%YRSH(vVD?LHf^ zMqwgU5RaJbf(zS!chFrCDLX}fz*ZTV@B0^gssLV{Ybu6u4Wm@=7<+aK>l^ADZxK^# zhlrc6OP;cJt+Qo3csQk8zusHRWdl_nK9tQKEbBDnetcXaBmG15@zrL>ebk9JV@tN- zGHNR+Y4fI(ih^vFk0>=0W4b}#sN&+a&$LPU7H{VCLv!4rmfN*1Lsw(cjs3Tqqkz`f zpwq0SyULcyU+-={@2v)m>5;3-LaNNk-b%2WTf7-mdT%P`*vFPB`iUycQebh)$453$ z087)n^lzKNV<zHt!J$V%gr4k)8{GHfNfBQJ5!3l2oPB#zS>jOqR67C54LXaF9)y_{ z!C*>b=+>j61hNMi@UQ@<j2>z3u7(>8!&9KkqmJpIeSOYsF898h&GS8P{(6gIEwdRn zDk0k~hAZ0v`Pj(p9-xSg`a7aiw+rI^RIpE>hOf0G><UhqWD>G5RHL^wx^PfU1Cn(q zKT`bc$g-2N4X?l*j&Lc6;G(`Wqo$iC56c(nLl<x#?mFNb!DPmIcYh6^>-=-<Ou1YI ziLtuIegFPD$9OI-=;}*MQ8*!c@~Av|Z1<(JiM=;;9VbEJ0nwrd_Dd{?t3a7(*3o;J z04K=f{z*y&_{dGIj>Knv^gD_j2|bgefaZPL7D%k0AZU;BloZ~n+0&bW)0|`qNZH3( zfJ`}CSoi}sMoN>4L$p&{Ue+nPCd^&Z#Zr6nJ^BbIL!RM>&mqVxCV?gTcr)#9RS_g` zFve4Kl1#DteR5UeP4Mj*`27!NZ8{wkb}GW2wcl}%H8*+R)Hu|8<%kf|V!IJz@BkDw zggu*+i0yDyMD{~_N5W%^KIH7lVJMRbD@!_}WpMD)Y2|V~_AY5|Oib0`NR(bx<TGBH z(ggCw(esg$&PLCNqjAP*vZ2K2gQPOhRw5!tABQ#jf^o2rDCyHfPeRbRZ&edq6f(tm zJ<~s+-_oQUv$@=!ky&BEZxVmyoPDz>7#EP^w#c&nm5P?>3(V`6nba1G#B#_|NhLo2 za++;ra$MOY!@F-~#lYG4n|qBMKBZ@*nQM858`Q08=A<&LL(ES5;76i!m*Cux&y=N8 zZ^2u+uhiCFh4{{v)BR#2nQRJbA<kbdwKJJ>8R+W+6p@?=H5?UV%@!`O2cp-*pL|$2 zwB_nA%{kww7)P>pW3!VbZ19VUN9&9y?;&Da&jF=cs5v7CEtD-dW|BrAtJ(WS&NmaS zb_C-K6?HGrRn_)-qaU$&<*&3C#Ami81%Mo-5oPl!7peMpC-U##G7<u<5)hWIg><8Z zObCMrq9R;izO?-@rnJb8P#3FYG%60Y5XHR#vnTXTCames6f9JPd7W$8z-~vO6FL&! z^q;}s3pgUXeX_ebG7RtcH2>td@e4gyKZ$zvDeveUTy5(LuG0fbvm^fw|BdYN;9(UA zlba?O6((n~L}+NkDCtynvt21DHs|>LMA&Ca82npu^pPL$`!ePsEvNvel6rV|z>GIS zmcY;x>n)WT<$4LOoZ{gn2WZoE2R}lMcK3)@`tDdFy;pR;g{E&VXhlCTOOU&AwWAi6 zT;?dPIkJ}l7f+5Jlx8A3NmMKbQb!U~P&AK+ANFvyf@a~F<HtmdrAl^W_-)0lmwng# z_8skGra1@$H|a4p+|Q7QLISam81*c3ENvkE-r|s%0_ZVJumkwR9v|ijMPC4}@u!7d z?e^2s9o_z|XAOI<QO*=n9x`uR4E$e+R=<`4?g0)8^LBOs_-}*aQ#Js*S<@i=xCoNp zEXonG&@WLGU5caqP++Ht4j1_6nuK}qQ$H$MT0ctnR0+U#vvC_gMvZIth%0nr`yhRb z#`$v5$2Y)E(Yux4sC(6`?#SV2b6s<iSjzm{N@CVZZUMV|V1E(Dx74&gjw18S8mRvK zd+)Q=5m3{uiUZIBAnTrfZNU<Hm}>e>pO4yuPUh+dEt&2<9~hM?ylh_cE>CMv!63Uf zEL1n=ixV&mAk7C#J;_ood%~1OM|3U2lNb;GofrNPU@urEsn7Lp<8B56b^A&IG3g^c z$G>oSgs^~=y+0)^a8aTOB;HHM6V=Zh@Z>tvB9jnWs4XbC_@)H*1OSkDK{)D0n|%{2 zod9omICTtc;;4>rK^nnpz4Qno3&^PYymOJ{!u9XDg*x(YoFA$2EU8B-#p(Vw$m)G6 zE=H6_e8YrHi4aZJ8(sv$A<{tD1@?xCn|wsPS2(D>(T0!fY^Ji!J)v-T&yDtw?HYAs zTw(-oNfBk{ej3x%c=}jA_kk&n&DK9Y=VKSEeGY#C>EaFHs#|@X+d>`MXsD+}!-sJb z)`~_0ln<J`{A+1d`bkJ-YC=4t#tJPpx7luMcXk(|e6N2aq6f_!sQ?&YGKB32Sz1m! zp5B35(&g1XcH(uEft+3w^=s++@go(IH=~Ii9y)|aXT+R{LbWuf!FpN>O$o-ke-zUL zCxtTW^VuHmC{A-XI`O`y6ZM%9M)&MvC;<a#3dB%p4V}`@HNYBa(X`316D}zZ_0*IT z@i2mTyqCepz#hl+!whz;uzX1;;y$y6V?GRgO1?V(y_*Ri=B!+jCGW<xq|+__{gsvK zHJE*U)LIb_gc^V@4pMiO0e%Eno9EHd0fJHLv+$*xifDJ^V9%sM4CrY%5N9|AiUd1a z*xR|rLG+qI5wNb+r=}8!V_m3ZW^}EeA@Rg4|JESvI2S>sdgsL`3t}Sr<gn-Me_fFs zc75@6?_}e<-{h|Qex!<lDc_MSrxb`Vq_^lG7OV`K>K7f62hrXKvE=`}a867=9eR?B zR;87`#4yc1hhUl(g$02LB8EyhNpe9iegv`@5}KkstE2!}rv<Xn)PPepy(Hq;fSR;# zwBX0C-G`G0^yB6BzkAo0w~NAGY%>kM#7%2|)Sv}R$tjkfTHOEvjQ<UFzFIT5!x;!z zL6n7o-oKJM1~=xGLM#Qsk06l)ag;`%12jNCC;^5Eu(}3BT7duB+)3ur%J3qyh+wOT z@KK6`!cYAJ!R$^Z+(KE!S_9a3L~mJHBl0bmblV~6h=c#rY_}#;vMykAHL|zNk<-qY zHuNwHWyqWmOfT(M`;RHX4ynD-XdexLY-es>$fHN{6-G>lIx=)-kWVXNnT-nn077+( zLi<PtYn?GdOmoq!!3zjLkH;&Njcz@W2<fU<u-Q@^?G4W5%!Ck=vem-Sl7#m*kE>x` z!`OKh2vGfR1bp$tB_GFov)2ArUq5)&8PvC+w544gj;)+ESM5%&q*4PSdl6dcoapJ5 z+_@eh>B)eJABn`j(?@k;d#^N=p#=%)3#mj<w_+GXnjt%Cv`Bzx*KE%t+R?OL6s>H< z1mfE=#EROdbLEz)ys2I5=Nqq+oQ^-mQoeJ)y<*DHMk0F<TBWpfDTv;%GKK{rHL`rU z=8cw*(Br}ajvRgy+_GdN2)jpM5LfE;Ile9Kg;T_)T8$Ho=)un74}*9lDD;`(he71z zF_dz`J<Z;oY2V(Cj&O@T7CT=)wNt{)zg~YaB7n^^eWF6I@;}-lZ0UB!N77fveLGAn zztrYTD_z{n0*DZk)uE+-O16Qdzm(j^69>MZM;{nHQpxS*$oof5i{!G<GD{G2;Cam; z1(w&=!gvm=iFDJ(`?bKm#jZ=EQ4#jiZ+o?o-sq^n)Z|{%Z1EPa5g3N#VHhGtz{v(9 z$cz?KV`wQW-Z9pre!L_Fa1&e(fojRsCHd0;dKjgQ^~ConOoWBH(WydFV)%F_?1*|$ z`+@x#Y@c6N4cA+@J(*j3=8n#Re<u$nlUe#RBT96kXm#nDE0f1tLsKxhC2x++q5-O2 zHiSmWN9u8rzJ<paq1T8r%{xpA$>qc&-3nuf?Dv@<jtBwFZ2TNCDp4_yk7Ur`>K9@< z8X}fYv{o#=jCP1Z7T7}$bGtq8JK4;i<uT6rJ$Bk)4T$WoWQdWQc|V%fUxf87HKiXr z+p*1yOM0h|g*@grLsr<QXB6$B=Z#WmXg>;nAIl5VIWZd_2GK*e;s8fB6Gfp1Y+P|0 z6V2ab(g$j#@1J%x&rT{0_Kt6rW0ID--AbJuYP1OA)CB40StA7Lwfwofsgrmx^wp_@ z0Ok#C&SsYEOrO9T;TU2XtarVI(i~Ggv&uLS#c+(^<Pcc=<N>RA09^3cuemCEY!Y~n zMfCnMEp~#0gAXa5h7ehLP9M9^uLRouFvn2$s|nox(aW>T0iO0>R?2b~dCeRdAWr69 ziz!#x`p=x!TX}SroRXhh@G4i6qvhlExafm$P{V#G*GMtY<M|CMrbok4rt!uSq$dVq z!--!zrFAIg4sjR(Nct?63pv4@iG!-J$%A0<Jw3XAIr3{(^TLZEGxWB1Rf^KCDs9%` zrYj7GF^0r&#g-SVT}gUZ;)WtgBt0I<3K<Jytw?AA4v8!vhe?p@hb}S_6U=otc|p@? zm)g)pYIMjd9`*AMv1EUxE`4pzO%{gMZ_CJ`pE8z0A8D#Aoriv4E!nR%M(WVB3b~el z^y$>|^$fFUZV_QkQKK8tP982giU*5)OybAZS7&>>(@9=Mkp^+d!AO;m-HRNtGQLIP ziyVZ~(2ncnYzg86B#3{U6ZdDKY5DTOV6YfgEmGMKj7PcMN}MF=kFX_&YcsKB$(+12 z4A)$UW_zaAww10UVfE(e;X5Ze<;WDft>UISKFm?0`;zB!@z~F1AmDZMM5;Ih_F?)~ z0A!Z@Jmn_Gn9Q#59+Q=^P^{7xy~R1YgiJP_F)=eAemr<mw9hK^v#&O3z92axzn3sC zwJO)tJ_CP}5($_MB{1L5rI+sFuZf~gx1)|aJv)(C<k^UIJT|u2d+)+G1$>yxaFpZl z@^RBY-6`W4lnZ%dQiV$Mb^YSH=T!2G0S=S12fnS2b$$~E9jQ&T^M5@zj$g`<@lyMb zxhcp-=cF5A%xvtS1a#aG-Vz8fvq5e0#}uhSUSzvh!){ywH@ftf5<MtW_p+>WerhVj zU{_J{1E)|N!_Ygw*p)b(;i+3XApTolmnn>8(T3cqM2ZBGRjNPgB-k)*#QZ;PL|qyk zm>uKpfnm^ac-;L@!*S+b;fei@PK3Pz(OUb@U(A(6TM&i%Ii>Wtzf2c;03zh{=GE5Q zQBiZh<Nwh}$naA~^zz5e9_2=w2@Um##NKd*qsX6oA}8;u<(jQynK5<!qJVLswj|A} zdnk!$IUFeT{KJ!q=~s5=uUEh8-@g2z%yI%E-Mt;}XEA-XTI1lJT@zZU@Tz;^X2h^_ zebD`2i=Bw<C|)_9$B{5rNnXs8rn?r8WCEA-)=+aB3ojsY9O2H;pvEW(rGIcHqegoE zw^q>yAS-BBaZpkj<jZD_F!?nLPn9awxDJzMShghaPR&K1%(?n{a`SX-n*|_x%`WDr zAzWbVlYZH(Lw!h;g$+*<kjx=jEJVw-Nb>k-PI|l+z_%yIB;A@QVG{6yr7VYj|G3?a z>LVrTt{nYj_9rY2=RzfRq#I$&DRGBt42Us}G3<N>N8k61)nURkpKD9@f2%U4O5ij~ zRrM8?Xe(_EZsOKIo%RGymW){QC<Me{zJXhg&z%Z={8%*ErIPV&-4%5){_`7ii5#TO zaq|1vp{yeHqx8`OVpLZldIapfa^c_;&+-xHn#q$syaeN3zcb3Tv2-hu=IpRPO<!Vc zzIus^Uu{d7skZBUKQfSU|6E*p)P1@E<Xf=mPP=Ygnzkkx5>&qxx&QWoER<nrVuJ2( zLO2O#k%?#%{613OR9lc5kThpNu86&-G$N0k!HbkCwxj4M5v*dOE+t`pnRX^>jM9?| zFJ*hZ=`=JVI2bNu!YNKb5<%j}YbfKhxN%#|O+`SWX3;AI>bD3+QTCmFsIv&(2K0ST z#M#5bV@LZw7*0*2AS2BX&@ui|R@zUf=EHT)OQcS{v%RbTn$ZjWQB~4qEQ6wu(2ofV z3+R2q@tth93tB-!rK#SXEKJWjbceD@5IeF-c9B5TCnIcN9(WfXo-?XQ?#tkH<;&P7 zF`2+Vje}8=B^$RtPPa(|r|?dGz>=0<HakI4Q0Rw`nObC`M@?HsGD6gLIID}>wa-tJ zDinQwpPz{54<$x2(iKwnx246jm$G>}$+WKHTwj$FnHcoN<u_S`Zk`#2K8Vo$`o+3z zK~_WO^lFhDtjQwI$Kgz0nD|Nef-%~;Z%}Usja!LoxGT1lR{84Oyvmk~T9B=)L=UMX zrJjWQD}s~IXO6wV@0iRD$1Ll5v7GTFd!Ntu^NDbb<glT<J6X8l3`ENMNJa5)WE~sO zZ`>ql@zMh#yVzB6Qt|<D7?`2G`<h?p_(i3sil}=8g7t0s%48GuxG?NVHTQW~(1Xdn z9cY#;CM<dzMtGvVV$#ve6=R%$+|d^y6DrqD9<SF;O`#)=kM%*Do<|SA7&S}!qk-I} zz2e&y3E%%}G1M7GkhZXui3OO}kt`}Cm({s*nyjnPh0#`^JrTgE5Cz0F4MXw|I~E?N zZS^om_R{f+AOD(FcSq(T`<PcU*jdVCi0(yi!ADL%<c8c_P8&JMe!>V$eKcV`w{t)_ zuW|EHXCY{AylCZtv(|@uv=ULdX*TM*tf3F9-u?N0)am2mxWZ@TyW43BnQwC(%DxV{ zS@@^tzi$?IEK8T$=J~r;%wdWIbWRfGYykB$=R@Y3ppf$z+NPE9e(J~OkP&^$+tZ8v zTf#O$;&=UY)J^Yfk$OT|kTe3qad>GY&6p+gvHP59B8$vqNdka@cqeW^4rifNGpoh3 zm{@STT(j|{-z@1A(Egi$X%PLz)&YZ6LEcbab7J0*Ur(Ika-XLxMMRs%XY?b*pYz*z zHN57VCRL6eKBvg^Z)p>QfN!baee4{YFgJ_p8e7XAzF)|&N@GXAZQj{Ekxbbw9iTeM z3tjEQ`_pWrgS3^hwDRymTlRZN2nT88q!zIYlO637!*cENPqV;el%3O**4!9ecu-1s zZI6mcMEXMX!UZ!<^63k1*s*fwFZ<aqyK8z(I5_o^3p9~@$lQ#uv4yBpznN2?kQ7V0 zN=8AUeKRR#ylDJ}obg-GFFBl_PI`Q8i&ZD#)Qp<3W2<OH-_GoRU-axWr&428Cdphn zpWV;B|0UeH)RBR~<MHrOKWZI4fc!>FGgur8jqi@VEIvpaYcY`q`IMdqr!Mf9sjdCQ z#-`=mgLj*;@WP2p=FKy|aOmyFr7tSTqXQ0@@3B~&jTkz0a+`)50yE;0B*M&)rOc2^ zM+o5r%I=Uu-s8KSo2Z(>3Jr7vSQImX3BSa`q`gmC+<s_OTx^|`R<G3OV3plhOwiF? z8c2kFRj+LCSUAhxGkST^&2BvG>fZVBLk5fKjW`u@2>BC{=AalAvRz1g&y!@>Y~RAn z7<$Lz$9Io&-XBX1+%Vz%9?CM;ygN2`FZzO!kG~y%vY#D=CACfHd1Hm8ZQAkeB=@~# zDET_loAQF9S34OCqmP6tk@BtD1ay1GYR)-YhJ;OdMb$vwmJC{#FG8HDyVR|)1(;#o zC;zj|Cef+Z*|l6QmVqfr958fGn4-4=N*qxO2J<+|&LkQ}>nGj@qN+{`u8br`Q)(%2 z+8mn+fmow)2=WS2Q$;yI-|dTYOR93&y7>*F3>6cx<!jv`**|R(HT}+1i}aMH+TWVo z7dIuRX1N07y3=dwzjbvYza~~xov!iwwiKuRR5yB*YEs6~nAdpwde3H?68(rdo&0X~ zq)1D_+2a|7_}#rE$4e%wMhff%*a1p}1rY!F>#2{n0)G2l#z#GB|FZHynbweWt(_9$ z>hkC|@fY;4C)Ygm8aRlqOiqchOb*j_O}u~qp#Pu5CSb+*y-@tCdpXVPXsv&_Dd@iT zbr?Ufri0<QGhki>eBD$uN!sW^_KlK!w<OPBd&0lEVu6k81{qsbv48TJjz>ncin@6H z6}S6UZDb%v<hf})?$A4qZmFdl^7)HDyZ^J)O!MBr_q2qJvx~Zsx36gyeDe^vNV<?$ zQ5KP>8iaNKR!@#BqLDW*Z&O;!On(j=VHhf~$`+gM5t;2F5F{bcPxcY^psSAxd*XD@ zzGv*9IG#n@-u`ZOeG_7L9;(~<w0b1Gzk7NjRT?&SJ0`ZX?rzsakd(!SZp3kU+&BE; zA8G2^AJ>X9i!h|s7`~*l`TrqJw%Fum2>Wq1F#OIIjJ>W+PX1wKx_<WhWj11c;7kVm zxz)h_eL`?S#6ryzhixFk0fRWM9HN$BAg~bhT(wZ#*dK`HrxMB}T`BepE+zTfH8y^M zYB*>CwrFYax%AAe65Ei9X`8I<^?SdU37xojJs8~wUPWdP*GwG@)p>L&U9>B3@C*y& z%~l9UPU|Qbz9*m;!z`T5bK$pzcMPg>4C=;2`(*VW3nBeUr5c!E%F`(q{r{t$yE1qi z)>>87S>kJC)Po!Y%OGW0LO`5NVF0(CxA_6zS#|KYzgP%4zVk#XAs+?<Ycdi!Xx$1+ z7mCTh{Qs@b6<8zXM{#U%e~A)$F{(NHkgO6{GC_{?9>0oz-Lb*`W?rmMgyA@^Ht6*m zngFc8%Ib#FuZ*j>7xvzGFz0^umtfJSPxOp>opHH#d=GxEi^twIJipd>=Z?+<+LOFW zeKb2fv+a(HrY$cAu$m%WROiLakY5oA++YO*=i_xqUEXD89j{pEm`baQjEI1*^(le7 zyTgzt>T3Iod>Qi<W?s*%(sgnT_wAt8PM?Qmy^-D2K^>wf7SpU4RT!NN7J9O4K4F9= zmOqakk!Y`_QLs*gqR3H!N08Y4b@fbnq4x7HI5qd@{q2*ENx@ZhJt9BV$zvY(4@3DY z_XZEockZqHBbDg2aQeOVh|TTcpgrM=>xu&;e6nPL$We>%Z~v!))8*;^QE;Y5gm)hX z+fnvj7)E9CMFWO$>TUO2#CIG5jt~x2KZXixZ~=_&KkXxz%I)ZL;0i81IQ*y9lpVkT zoOVGFh|T-p!f~+sk6l|vOUZ}CLJ?sbf=e~ZWJ%3s&5+#Uo!x-1hYLh%4^<8%rdHQY z3n_k&Ki^Jj9W?VM>4FI&iR)zb(gc;@3OE0p;32%}#{|{t>h5>W+lY1dCOVLt!E~5T z3;GUe9e-+WqpvfA9;=O)&Q|c<DLd?i=@5cx(|j(m8l{-;c^ViPXS@{x;(WTD#}D)` z6_46|NyJ!met$AsQk_Q%u24Nc`BmEW@-6WBT-H*25pO?MySHF~2_;So#kI1_Z=Vqe z|EQt66iy+zVK{t-e%XFT6m?!)RboxxezRi687wk1#fFx}j>)T1-On=CdvK!!%Zi@= z%lnr}{ky8nphmDckz(ox3cEMpXy_vY5!zt4t5Kq(y-ld?F3KmZW<K;_0SOm0Cp}!k z^PaD(7>@gYD1Z1KBPX=pc820J<6$#qMR*}nbB|kzCI%Or&(r<yL+KO#)OmbYmb9ZL zA{{U=F&QLI-`p+x?zS+tixYJqTEVsueZvUIils-Llcvj{WD%ij4E?fz&8J;3v9kVn ztc&$Vi}M1PMr#aS*_exbrFk~Ew!&LFr8018=!~q@_GG{6@(Tx@KHa6RK+#u+hAP*! zu=W>KPZxr9<O9E_s;pMe!*Cm`B?FJ8(f&ot0VXc8-GoU$LI1|eS$irU)s1~06P_<h z8F|vz^IYDn2R*Cqi@ul5L*HMMeS|+$nPu7?aI(aG$K}Id%SzO-4GIv%@xvvj@>H3? z{*Y_y=$(si8er{mEJ@BNyF@pdMP?BY3N8y&_(EZd@Rq>PtF<fkCmy(;8=HCQTYt3= zL+)TbA3Ceys*{h-?fChc9LcE0*tpfr*v+vmNzB-}MRcf`88z%mU*3+5B!=oa4NegG zXW8I;dbpIkvPIb4@?Xe*cgqFv%u}qHgn+N~7Sta}Fw-m|_W8z8%diz{=0kBT&r7$t zPp#p>8(rP&vYY{5aqJ~5-~wH3&^xcW*9ZJ$5$lz(=i?q8?drwz?WypW<5u3W)lS}b z6yzm5O11Vp%hb6TvKZan$~~Hrx)K@k&OY^BoSnKEX<pP*$xU|xY)d}q-wl|ftS~=d z=-dkLe|pQ)&!z8gd;2sI@8&+U>E5{Mer+V>@wv(YuSX!%B<E=4Q0bm})p{LVx>`9) z>QCOVU_V=^OwrVBdEkC<*MiR);$c+HW!K)aB-BLvU0BgU=(bXrU?)KJOuQp|bvkLo znea93v)fy1>F3?F-AezfIOD>tE!H5iA)<1O*z>WqUn(b$6sJaG99hjgiW-}>_5-h@ zTq8Jt{=5=vaG%v$pJeosnP=Rh_QGjoa9TH+jyYK4Uc>$0SMFY4aYgkfQ(3&oV?JQV zbx@-523yK2Q9=@X7&0NULyzZ^ADT{!x2k`SHol)ClM6ydT2N?TY&;D3{<3CDW1q8@ zL)3)zuCY|vbz129V^OrZES1~yVyM9I%gO|~L5nqi2d=3C*?hfH`IqdR1IKTp($k~U zOHis&xJ+Y(8WP9pFALmn?Yvljf!CGF_;yQa{F`W}R<^^f$5aLr;`bEb>gD2<UHTK0 zx%X7^v{wA9UOr^Myz@SvK0G_tL^gO7Dc)E;Hn6KQcWu*g;ho?0|4sF@_U>Ljb(sRi z@V6(MyO92w^BiKb^5b}lT8-9=t#1~QBeAkVuC38=j6JxNU^|Il!op)sjb2Q6cw*2V zi=}e*7XCuqR|N3XNBTl7GNpul9shYCB<eY;XLJ9f>rd0>*(!rft1yjNK5+pIKsLe7 zTEI~j$8R@X9COqfaTyM_TfSF9;$i^|PL@~pIFOVwZ>mA~vh+gJ*AOfH*<)AB8a;`R z8)cOF3A_4Iugj5FEn8$u6NnmVW{JPE`)u>y_VmY-gv$$q5Ao%He$JEx`H$RWPoiOY zgk4b~59Grs|6qmZp-n?{?5RD$yj77c%rw&9{(or!NY#pG0h!Z`l7B*;U^z-F9=5Um zSu^Ymp7fzhw1+<%Yp^dMO#0aiy!&o9M>+#85XEOKqD30n=r#R?G6Bevc3~-VKcWo9 z@}y&MCzn~#L`QnYbifaPAk%n9%v%aT`JAlxKFmYE=|mR9PBn-<YrZnNk;iIsN&mL9 zEXiE?8iY2$BqfU-bseu3$9d8yE!FQS*7g^qMOdZx^7kc6y1<H@IbyS(yCX~zzDko8 zt%x?Vfi7~apbXC#)0gp21ggF^DxQ40tWo+zC#9n7qi`%oU^2%B&(~m%1XIl2Jh}am zd^uXk{6u3idH#0z__KVhs&jB6O)@z^KejfR{O<zknpo@vRW-s+Fk}!XP~K9`Ie4-< z1E&;2E3#`xM<cIHm;Ka@ib__t&9OYKWsNiNTj)){9GOZ`Jsd*7^n|DIjyeBEp^J}O zgDbIMfnE&2YSb7SdvkvBewpCQAz`OKC5~XVxA^CnB_ZWGms71zKLrL3k)k~q5S-^R ztrqRe=7ysy=a_%B;34NExv>q%c1%OVs?+V}e4Z#+xv(0dJ*pBs>$i5Rxc%k}B604v z2ee63CU|)@QDf}GMs=(#Ov&^At{kQ@tszk4PfFQup~QGla&1aslZKhIv2gKAcsa+^ zd1$a0(xH0<@l<F0K(x4g{^SC=0ROmtA+sdR>WLRrj19GSkk6m?4Mxca{;hs4xMC}r zF7jM+$<Dah)-FF2ps89oO9XemTRc^ZMZWtZ`-lbhig0=Q6!gL2X0q-1lcVamy9fN$ z-#33dp0<j~F#w%uqzXUX)@%cVkEs5jket*yvSwD+RAIu!=+s1D>xH(+$y!EOO6S&& z#U1!@nUML$;kPBLD11Pde7b}ClK)Bjq9t)o<aS)wI8HG$+B5=hV<Ye}vy9jTt_ZpD zY2ze0wWh(Rc!xbFbuF_qRm4oKOKawW(UKrYmtYA$AwMMdQO;51;;i)db9L(Y30fgR zb(#`Q*>xP%5whyH#A_jefutCch?JPl%EQ}bR(YY>{*xHmYY!V7f9n}@2fdsSwYZ+O zC&>$^?RYhtI`yc=t3RMqCVoff#`!2r^7iQ{L~^s~qsRA+^G8R>-GD>%0pH&qcbPfa zF2}LWwWfm0f*O7EOJiDJ@oosVepk`|Arh$}pn1kxGtEnq|I``JZ@n(Gez9Ma>u~cu z$?wLk=+XdN3>bj=Iqx%4dqyIAiqFBR0o?tMS3BvZ&(Sx;4;f(&#EX9!`5u^(q?i*v z6cnCCBq#E2Y8KO0HzbxFmU-%%=cn|>(emI|(fV;S>AtholpDrr1*^%}nW?ATzd;oR zvJ{ozriO(vS;}TsaQ;zI-!YNZl?GJ?TN=@^w2qP+$l29RrQU<2{C%sEGvtl6FM2_P zcub!6ml$*!(0i&BMI4HbSB%$e%@Qj%QC4n(b1uIwJgIa?0Zz~Rubns_&bLqB4G{xT zJkT^j8t^JP+2%-ssDz7r6#=FCbcfgkC)-P<1=+&yaw!*wTHBy)ebqnT`4y;^o|~%K zq^j39G;C!}Bs(d;l|9GV;|hTL04t`6h-D>V{YYxENvX})u~(q#M#ZGbQWfbQYLCmr z$~;mc*$>`)o4s7|t}qM1V4dM(LxY;~U@0<ZHjbQ5lV>zm1BaQiFfDHo$H!b54S=$| zq{}U<XtV})$&MEuqTqe!(MIb-vtM{ji^I?*PQG$u<jp;cyac&Z`4qN}zC@Nkyd+ji z=)M@OIjz#>cF~ZtmE4f%6s@XUQq)Jo??ppWhnRFU%G5NVvuddX9IYvfR}MOQKO#Va zgw9=;iCjkSOVQAe_p%uXNwi9bj*Ln4z9&z8MRMbf9j;Rr=R&D6%2#a=`3z0DBzaXs zO))@Hk=%;Gx&)mP6CHrGoQci}MCbIfGY6Y#GcHgFy$nqTs(gXBpUc#CfDy57aJ5Ki zB5{)T_hd;sL%M{5s{)(~y9xr=cwAiH$K?1s&pQNhYCTCRz}1jSlbcL$fEs5(B2Ht2 zrQ}6Ox+E%w4<MrCBu=i9(m}D{XkUV}AXeByGRv%`irn6ez^RrS5hnpdN^*(_2ig5l zhMq7tEXwJrQ!LWp<rU+HSoZsQPsxfe)y>hRK9=p%ziJd2MG}K|_#fVJseYj2(lxzK zV5xeLefk}pMI-&I$D;{#=R(hVGPgQ9(n{eaR`0ix)vVs6oJZ;&c4)SymFE=?6DPI* zzy$-<Z<nG=BYdjqcXFTWGD6m>nBHp~q@Q*mP5^p5)cD`LhQ<q=pJDNaL~u>6cijyh zVA;NEO19VE=0=vCj$%HjN@iDBUAQ((kXZrVRas2qlrk;26kAT;&t+_B4wX<G16yXv z8#cd;@*R<<{?%;UeM4b9laVPIomn)y{4F`dd=<oasoe_JwNci}AR{k#;b`vJEeTRf z^Qvdp%t%UoDV$pF`XQs05mcA5>+<6&Wmgckc&zOKXrrDvF4kzH-}%4Fqw1m1(N^() zZE;stoq<dXzG~oxBr-^M4vVbjPRrs~-OoWZaQlLB5izCgM<okTG$UbukLe<%7=y=C ztFb$n0!0KhQSlbvpx~J>2CAIY1)~-PqY`So@fV9+^QLe{<wDiEF&@JCPn<c_{}X8c zYjx_z>INig$;YNk#!i^gwH!a|?4Xd(m;D$Kb}vqu=!N++K#LZN)09|z%7TIJYoE)w zaq3)qOO$!Pwv>FWY5Bc!zth&Knz}l?_v~504mJ4lR4YY5b3UY!dRrPSO~-}BZ#yPl zm@bGn5w+ZpL;6?LsyB*~3v0ko*UBaIs`3)9-R=p3%<Bm0(d@zjo2An;$VfELk?bPv zI<L%?oRD@fHmW4V6A|B1J{R#5?Xp^wo34)vYaoi~`@|nH1Wv%@NQ2<7*j$GuQT-di zONt;1Yr=@QLdOvK5Y5QeRtI=>s>1LsNo>z`oaZG$Kc|8}gK&B84qtlqR9iZyo>NXc zJz8Gh;HPV}yjqxrmnF&*7YKKp)^uYJ%pTHk(h<=UC$Pnf^7d%T5hU^oYBGkvq^KTa zkqL@ia+4o<v8oPLggtOzSDsDVl-h^|u=iyskx5W3f-Z_Gwd}li9GI*K*bCF-l=8TH z0Y15dARu@&{sZ}vJ3;1rEa9GRo&*jhoc4m<0Y6+L<X3Z%7(F#SO_r#XU;1hqRb>kz z;)uQXZsp>4J=yT>3MQ283RPv_Em%)7hxJ>SLHioX-M6N1oAEo4(SH`73w3mwpuJAd zg(++#y^D!r+l$Otb$dCC%*dU4SY@_BS~ZWbS@iFK{MYn%{5~mF{JrLa5_kJ1f-1>! z0`4RgZF$h0K64GN@ObBGMwh(YRbB#)JT($hoU+TyvI8wc#F!tDbN%3pJSfj5Qymv3 z7Bz9DyqIlfnbg7<NG6+AhQf2h;@D}NYr{D~>p{7)5*Y6Y=_r}t)fALO@jZIp%S@w% z`^ug(Qr=K?l?KeiVqc(yvk1V~X`@zzoi^#ohjkEEXZ&BJy=73F4b-)ZyBCVPTXA;? z?rsH&LxECU3IuO(m*NEXBE{X^U5i_Bw{Yn5ymn^3bG{$%KL(N+W|FyQ?{%%Uc6u=z zY4hD-6?iFKOXB(?r;LPam1rVnpX7%yLZ7hRI7|`8J$)Qa>t20~gn<Jw)I9QVLN<%T zD;ou2t*zX*kG!{sLTTiNP6Ov<<L2Dx#ZatI(lL080livhN;F&A7DTP0O|+$82fAWQ zW@wzo5&>C6+5j?0qVzB-POv~Sa7;u_7s1SUQH^qKxfZ?h7Jx<&CpcW@4|!p4uOl^` zv+ljWNtjG8#HP1~^zG&Eq^U0pB4w_BUE$|pi!40OPl3Ab^r!?buEw;u-`=McxCKTD zUjk5jr&MT8ffVE;LrWFpGxX#$fDb$cG%5s9dbvYWAglQJgA8&bKZn5&_Snts1_8S+ zx}O!Oqz|R3byjqkk0@wq9&Z^bFRsp!g8_9QNwb55Z2Qa@5OkgefR_5R?Fi@ql_Ly? z;NA>Jd4)VdPog~)FfjGq5^zCDeMI>FG@*yJoC>49kb(-_*-REBbVL0vVxlKR2(po* zr}OrVJ{m?}IM-`v-t!*u9M+u|%6uA5yrfpp8_0VVhrLmk41(7opPDX>86+Pa6fjE^ zinLBw`;eXV{v`xc9ou1OgM+!T0NYK+Re^rk1*u0xUHbpy89n-ceMT2!5H3O(eZB3F zy>Qjf(!P<07rWpow@1JChGpH$O|lo<(xOeTtg-h_3=%S4x-QWn`uwG2r10%_aU$YZ zOH0jKW7IZ>hc-Kb_uoH}T#s_B>jl2MnmQ7s_foaxSs5>=9(TiXvhLfn?%!j+giZPA zCEic{INjj)Cx`h*mTck<qS(Nx3ij!Uegral+0(MU7^M1mY=K|G)HCv#)4s*Z8`H%V zC=2D{-Ei0%=4f3dVox8=NVUGCR;C_ShppBQbCDS7_SK*QX#XlgMH>}Bd_{C#xyft# zOe%S@!y8cbgC^Z}uA<T<;!DeZ-_EW02PfX|A8>EqQ5&fq5QWPzP+c?uy{R||TBZua zVGf>rva-C<2Pm&Qpc|{#_^aknJzqg7hDjPPj|Ty>8;VtZ_)aZ{#0S6XZ%ozG+P>&- z?I_eGU1<XyiKE6lXI~B;mydh477W;Ega!LeuGrLcMa6w#r1uK)xXE8#$to7ae|Wv# zS=JX^H3;7-?!@{*FNJcm<0_(J`rIC)?%sUI#NE>%nNlm`&!CqB)LbZp+1q`}=%I(d zFt_q&2)wygH=1NY^D#iWH1xGZ`7gfyOGbAY9of~FjATcO%hUJja=<HDOr~J^6nHPz zna=u3Z{Lm7qa>$ABJ6a|ofReTB5H~wR5|l#eSenklkZx7KWJ^of<=z~>2m5jm25Tz zHlL0wjgVlV1i&QP{DJz>#p@m^VDLxbb!nV@Bmgu^h@71m2RGFQrU{t%s2=YqC;xNe zCYW*PaGkY%*|x4~a(U>*&8Ri|wC(OU+jjnqAS>;Kv^ldvJRz<864zKpLOx1(a%?<7 zKVLr0KmcRB&dCm)qJrd=T6S!_+8U0M8nY~1m7IdcJgp;^ceH*yE{=M2$+;;__C(Sk zm$h5>`g=34%Dyp@eu7<)e!UBh+{gyh0`hFG3Yy3;f1$VxjaCGSCx-8c6qd+2xDJZO z71wFMdI>~3B{-TiP(<}#GHSHI{uGAiB6=LjCpct|Z<$}N7-gMfO(ohpB{Pg8yn?G{ zu(}x0@3#2ovx2`ln~_m<Bs5*bhTf#fNfXR)-1u!e0pO0kLT%Fky=}1S0Ge@zWc?5- z85WIsW!bM>Ojv3H2Na)HDG(ywu4_lon!l(tIJk{H9Zrf4Dat0k6WA`nQSu@*2ClUE z*Bdr}6m#t+*)|2vRtWbfEcjt$xp_CT<r~TMKCK;_Up)OeXj^QuZG)^ehrH)d{cvR6 zk=0q}xgmu9Lu6ew^oe6+H5xB+u0u4<xy|^)Z@__wLy)M;eb$Fa0^$x}b5Ka=IWKNK zH03>0Fy{AJeMeT?knH>(PSN**swf4Dq?g$w-zk7XhJ!H_KhQ1{!lfAyWyUSEc0jb* z-3+>s8QPU<)^UxTKew$ZNxom}F%w52#i4(iVS$|)UW!Z;2yEQJ8TI<~xd(+cWw$Ij z&wgk2r<lmOGBO|$7131+h0z~QRtVr2qy*d9RtxoY>io{8C4(^kG`&r1EP3vno{cvA zc3bN0KzwgwoCU!uck!fy-uuBH_Ts!X$_UCbN-g$14By_nbj@`~1Zmm+Ma|LwqUIhG zmm%$(4|S`rp937fN%;eRZ6}zOG*%>S{DM}RfjKI;y|Mrr29hyA=5{9MNE-44P61C| zhku}6{g$`oponEkukkx&`&QDKJ#X~d*LRQEj#c>zzO_J)4#gftava`2vf|cCno{~u z%RAiFR!{bA?6bB(oIM}?zAkm2Z9_LfS!`qLjJ_~P;zxAhQkcPwBdP15s587#S?TjM zMoN^WebNvHTrk1)JU&(kNE$b!XZxxgJ7lf3vB+Aw#cr)bWH9p}ivV$f_Gxfk7t|fY zFn?D+&bAW-seCH{Jf!H(QjTHhg`o)lD4w_2R76imh2n+H!z!@IOGQGVt`doYC{DEn zt63ZWV^o0?2m37}Rx?kfs^A>iKe7NLtje$8qVa|iwG!e#YjBpy%SZpLN(gMUziU)7 z#+>kOkUe;D__pBF!Ch75-e+*P>AWl;f2Oqz9+SslRZ!53?-`NplqEwaH+RXH{<WtM zk2{Va!Lk-i^AigiPdphYse#!`ahiQ7<(ve+=rN70WuRrDLuD36?H*p<TV?8(gkLbs z-6%WC&l-*@6VPA^HWgc>xcqj90#h6M5+uZ~T_~{&@TzQ06HxDM_ykCe`NPv(#a2+( z;b8<hAH`^)xBLEfaC$);S5Q&E(3C_n-bhmGZOq2@5>?d7qtxcEvp`l~<jjHk{X`4c z4Yb%%78^;9l<Vy%twu}Gjf_YgR3Q7tzMa8<2iQF6_o|7N&H_?sX=qn55Gev^(x)|* z!iiQ*xAKb%sHvDZX^(9|>T^q37rsmF&G~J2m)b+E>&*>@f<kpU+9iIfi`kKn1LeWz zAwNJvu=>gHLq*7R$#ztd3-CNhSV}&4Bfy|Akk|mq6C1^?Y8qc8VMUyq9GGea_j&^5 zapD*IiljM^V&|O7_&mWMf=ySF2P_B2;66_fL1IdSd20{OrAvbAh0lTVOzC5AYAlS; zCL!HOed0vhPNq*xiuV)RBpTPAw3=E}!RoNd5o}?vOlXHAEEJ^-WBgfEV4)OxG<ih5 z$TmHt$ATXrfp32u`nEfVCS^9{lYd>AeYUz`+*)@;4^)53dAqIX0<5j-cus5Pti`wZ z@DX<!N7qVafpN_5kxH4r&caDf#ng(_uZKT>t@C5Ad<A<Q^p9BV+&wC)0t^weQkUkE z9<~bHJUVJE5)Bj=>_l@JSxxMp5}w9t8AnRNE{OSCv9ka`|2ynp4ijtmfY-V85?`%K zd_ik^={zlm&hZs4zk<xi5k4bYPQts1Y5>>HyRLi3_aTXYIkhbk8sXbv0EjK<C5!xF z1JB)<69AE$6Mf{jgWFaq|A^Js824sBovr#z{&uXjhf2!N2#Z_rR&E(Skv_FR;DNoh z#{vX=pd;7X%`4A=AcX<#_H|3XjZ_}4ur}G@1MyVOCgl%zS|R*y;0qsG2t0<s)+0a< zC_wYH1O?jdek8Z6E|=`@GKM-%4|&<77=t-BFa8NRFOSJph>fNruSgB~UKTCBSkKUy zt=t@-5=^FY)y*9<H~{1jHNf<swG0f_PCkox<k&%SDvTKy2qlKv`H}TyO!JV2KNIsZ z1(t5O9aD5Vde{G(G)!_T92R}-TUUO6iea6b_r`~h<>ao-RRtA1?mou+En-Jqa8#3a z!n|o!Q8vUqd+N}?{v|~z|B#~1ryy5Jh}HO-up5A<?u51V#LE1n#vCsV{c6xgEUUvn z$F2cOwD_xQJ6rlMItR5pZ~L^i<ZFvFp_BHPm7RdjMITWycMvuLzFIfoUZOg6U?d7h zS`MXX`_k`QQOCEIOC&&6B1>F|d74OoJR#m#Y>!+J*_au{B&^VuN-AN3M7=nkQ1Z|q z{iXeQ;K-m*^w|l75F&JeD?{NqBrHa-d>?5Og<`D0btXTNJYT#>>&V85V+ztfj}I!z zSbX3>LPzk*EJ~FTX$(@x)0t9q(Hn(+5M-9KoR7&OHx{}ti8h!xx7z>X^x}K=_2i{N zxv&zP|K0_}6pBKh2hV7D(>InI-H9{8le-DW_LhC@PZ`Pe3qp?4_#~Nk>&H$)@`D11 z*Lv+VU)<a`^yW`1r;2kL4@?_ZLq^TRc^}LTy)O6x8MT1}LBqH)O8rf2D-Mf@%z+fU z;rP7>3gfF<Bg$NWejkry<~3yQX&ye@ncp}OzQb#uXm;3OR;4t0{`pZ4STOG(gi`#h z8nSIdXyyynf`pl)o2PnNxIt-u&@NzRq4>R@81;58w?IQ8oVnh2-ITMnircT?q9~(2 zR<b}Vsh&Mup+qsU{`{{Is}op&QUF25RS@BSO0W#&1Ssr~XWf|U<v)N@#cBQnO*$oq z$e`(|P?tw&JaR!p5>@bQ!vKxs)YPmUY}eKq6osg3%(ArQiT>*00;s2fW09lCkg|-B z&6x@Y*x$}1G!d@{?Z4=Pjn=qIEzlEH{5BRX?PMJ@O@cge)a+;~l7G*+Y7cj#6tLu< z#9NIUa*9ihr2Xt1uFqjk`3c3Mcg;z3AyYHbgFvjM8)@Y^ueUozm+_V}8?u(R(psDz z{7D-SuprfUK|piKVnnvR4qf__w$F%j>qFjAnR``C-&t+mo!Nfj&7;ThdxKu#rsC`u zZ-q}EHu&sqqi?j~Ge8JFwT%U?(7n#eCO)`E1|f$LzXcufL)uteaAVWj@A>Wcb$YHM z<uJ612m%MGNkp_Hde!hEnaaiJ%f+O_T0kEFn~<k=_KhdM>WJnzVf+#uU7~eLk>IMy zhv}TFok_4sj-Su%bmgx!X{{3qyYyLdrh-S`6nb1qg$(WUb;th6))?npf0kx(6_Rn~ zvDh(^t->Q->wvG;MT(lF)N2w&wSBpoL4!Tw;IbD#{$TVUG|kh(ffm|98`@aj&9Ps& zn<kVJP7IU(PB%Z9IM`VtyZU9-uDUpxjJ^9)WtNAdxdX-t2Vfc1j)Cu&CnjR&(2LgL zW}IKk;M-5op&@h8s^JA&^*VkF2wx>p^C7l>9dm2bWUrr{4?ah`=L)0+-(F2GK|@~Z z2I44~(TeY<Hikt!g|>de8akfQpM5V<^G6XD%u@T4!QuYsoSDG*RRu{>ZhZE|zI?>} z;qw__!(sj7r+SZxfgpu2^^t68xo$RWYNdcT!yK{x5ql9<h$JqGI$YHc9B{1fx;jXb zGF-yZ7hc_;AE3@JEIL7?K3d+na!DP&UGcqb0l!SYhTQ$r(~f;1h{}GDQx=zg;Oj;N z!#aeQ`3EIRGi5qbCo+9A0WRJ2kEFcWJpnNBG!s&%i+@D;sws?Gm@ICa`&c5cu&!OZ zj9xd&cBm~jm$f8a7mBp7^(XK?KYflQOPd*SzY<5^PPM~e)BDS%9c()w%6S1iyz&F6 z=E8KGfP4~31>}z={w69-uVNFy+W5R&Xv+n)L)nsiuaBhs!hX~<Vspyuv=t#0nfo@1 zSa*P2v%MIuudO-|Jg}I_H<JH{fA`-g^8EBaQRElu`>3a_Ot5mwjD0c`F|msF9{K~L zLnBa<h;)laS>n7I&S8)%fU<fP0VL+KBSZ(gpip7XTNG3=dz1PPx`T?}FZnRiCewf) zqw@{>sV(TEpgH(u)tyXZrIM#~?3(IK?`f%>RZFpjZDplscLSfEo~_~ASPP0UgWtqp z3)D;&)Aa``H^f8ySO>W)$?CeZPg+OO`(A}nvr_NgzcY@OYg_8ft={M8kV+*p#c{<> z@cET^PSSm<QtnlY4WpAB)mQ{C7XZ5#Xx<4mF5MUfGL_J&R(|!k?eQmnV(#rs#$J7+ z>L)1p2*EV2qVBiH0Z}R#y12bgCnZ8^KwQOvzUdHPHpx<<x`#-$xw{F=>*<#Tw@oqP z__Jr?9<fKN3G$d5=c<ER{<Wu^Y-9qY8Jm~tir?oCtJ)D8bKx6v4X2x#zuI|F&j|dy zDrZXgb|cC?NH#R>q)7#Qc1NbqrZ3zW1uMIckqQ`(=GNMO(*C#(a6E3ZzImWRO!RhP z5Na!;?<v58OpN~FT@jN^uAi$!kA_Uyx%&Ju`$`?=#T-Q4sx##K*<^pC<+rGWgY#EY zfk44Wa&uQhjFqWM`4q9j8*Mb-P&D6p+@_e{&zi8t-ha}jKd$70<91v>eQtZsGb+PC z+IdCi-P(IN@iIL=SNnFP#kZyjlpN*{O}rJE4;9M)%fy+RYz2+6-k7*v>Ay@oXM0RW z)1`dZ3d0s*@p}2|n18x)dIh1)j9nfNtm9Fdxt?IUnw|V)(-8JlMs}>Z0*@3pLOIYC z%oXigDgcD3ID**SydGQw7lX2OfYwEVi_5Q!%9mCfWOk%w+il<;8Qxda=!I9mLEW02 zTlU!G7P1PDrehcdkLUg2;sqvPJp$Ha2RXFv@4D-u`M&i7D|Z74(Go5|=-o{e&}$?2 zVU=W2rNVJ|SKrq~>>nuJG57|>0sjTX2b>wy{(qo&Sp0uO@k<67flcRhn)e+$8^IEP znYbS}ay*Tydn^w(B$@`BNUIY18u63D0--rT%9<G(fJ~A7RD>^1RS?J)dwK80w7}`z zfYH?4z#buFk@uxEO1IrdX<p=9AUB~~{ipi8b4EGKNImJ;K5Z~u_fb)cfD*lLMLOC# zSS4Cu4i%3C6}Rga|Cln5%yQW-YU__N#g|sSBx$>3V5?ZsG_JRT=DmHCBbd=&i#x=B zUpr0GAgx=N2L6n@8%G{RK^>{%mj-U=Nn$CuvmMOfUyTc2j0@lJ!yGT92^q!S3l6@3 zo<T(75LrQ0&AS_|vfw&+b@c`gDJkpRYhF$SS}(B>OrLXc1D9vSW3+$+;v+sn3plPS z>{Y8aUOkbNjE#M>k(_rqNPM`S9Ork~vi*wV5A{`HdsMN*=hkKp{NE(H+W21*txOt; zXSeXagN=PF_n^+yBzT;tf$iuQC-w1-Lgnes*WDePVUGAS?kk&iqjzCJV!I{Klqzq1 z7ch)k<ZA5aT`?6ZC2A?42A%HNpPAFxg%qy8kl#4_%@?=FVcc^h%@4Q)vZ<1=rYK|D zsm@8+{_l6cq^kupt>dEVIt9j5sh921^{ND+fBBGpBxb9=ga7+EV2AuB`ieNYqv_B5 zLlA#DX-VHhkl?o+<;;yA9*8Nx!HI?yR|wW6W`D+p>qGj^(#yLX7js0vW+4Av^4{Xh zTGOw&gIIZK-iZ}ykbO3^P^IdMYi9_ZW7FZI$e5FUIxMh&=gDa4&z;eV$gmSm_VmXM zMCGc{sMq)B+pJq{y90^>#@>ExJd$6oTbH^Aqoj1nY7$MG)OqzxC<&nu*p8!fhNW(a zw}ze0Z{P7eP|n2c+2x(V2kKrT=a{m+Y{T9Mud5v9Dqy~>ikXXWGvP6VM2y6?H?+>+ z?8D27A2FRslol@|g$Hk>A<B^tukJ7Lzyu*VA48Jv-}~3o%F0@KYhvQxGxs)1;XbLp zRdWEeV9rrcJFNr!YdTg=YFXevr54$A``7F;cH^0_2YqsE-uGlym!$(y5mdsLmjb<J zk$;iQk{tEE%Y@=pX+pEsH|(BaN#SUfDlX9}`xweplI*tWWlQXviN~U%-f*h)<ny#! z|ET9@vw-F^OV`roqR}e+lGVrfTtNspn`ZnG1AI%~*cqTop`T&VQIUjC8h%i33e)Q9 zb*?}yI1VI&Lwesr^#`W{)h$_b5eQw~A*UBZZB+*zoI>f=QI>cu&k;kwUgM8W03D3% zc0-_GjS!7l;)5aZili^K@>4)8dFFd^A9VOv*)AYUyl&QVWd^FB8r1WfLH6vla=M*q z>13FrPRYgK{w!e*?>U<YQe?ku9sN23hpUM4s%xsh*yeu?1gewP>pY%k^Z%mB{V-ee zGtD}mj`Jog`RjbH0lvG+ph*~nqtgV#h~GOzZ;OS1)ypF7C(!fz(5F|8aLDJRC26du zhF%B5ME0IzJJ~+6v&w8;NAGWS;TUNOf3i82_a6Z^z#qL3HYw0<;8S-!CC)16JyYjP zM&J`F!d(K$YgH}EY)|fWxs)H}L^b9%X`CGKZWkZyvggK%?4R9r4gK1yE;>?j#oXJ0 z^a!~!hOP)II$a{_J>he;Y-_FHTS44y*o&LK+mE<Uk>7abjMNkCjiI%Wm}jDZ1a&&6 zV&c!`a!tTp2%*}~Xh)r?JMos)ce>YF^31}lFp*eH8s-`ke+zJc(_e*I8KCden16fS z5u1~{Pop6qM5Ut64;i?Td)Lyl;>KZ0@p#GhbFIRje5u1vEMmXg#o_7h%9H;~Iefi( zucAeJ=WRg2|9t|>LGY!&Gh~f8sW3`bQ8l>`ty;Vr%lx8E84d+r6l`o;uQ<9tbbd+| zeokWqBN5k(V)toNAYqHu3I3hQp!LZ*lZ+;<!kdPAX-nUVcHr+dXuwSI_c#6k9BiC; zZNS!!G?6u*^bdY9Mu`vBvqIK5A|i)6CH=TXd?Eskuv#+-rG*A0u12M4pTpi2k(h4m zzk`cWMTD<k=QsY=CQxYU*U|F&QA)@3BngZ2q_?C2N&og;5p<=9u|C)9z?%qu)*w9p zpCULLt|Ba^&pdO|t}uT%14b;a?vF~{;m^r#y#6+S^ykmm`xFR5Cb=W4RI0~Khp(CV zOa!~}NW;i{EyAY|^JK^uI<)X4{)qu`Te>O(JU(C(ci~D@wSZ`;FKNZYd9X##us+jE z%LuEM4h}NKVkeXIB4bt&0Vh;OTc(!`x;&rk_*7Lqh>}*0+EbGwJRLf_o#Ht1_-pg1 zktMQ0GR}egg7KBQX})Q?X`VJii%6!a`hUvc*Y<j3Fk0;`?zVhw^lCp*>%l<#O7hnH zVKlrn>}Gd9przNFK3_~orL<?zn%AMzH-yt54SvF&5vC%4?c=w>K2;coLoPGf;PXH| z6co<@IUylKd1ZZ|gg%vAzoMj>Z0O$|KqB<XCmk`O<8l>98o0^qw!tBUGDR}oIWD3= z^=y(hEV?`C?t7FddNNoxFdx_tseQ^L`_o(NZ@gVS<>LTYAuyS@&|%5>pTa@){r^fh zfF5JXo`_KvWpDKV3d=QAb_Ix4-!Tsiy}!2#T6v;@gH_6-4%xDiql>n^wWqPv;_jj0 zww=t=M~3sJVMESluhrtVK-H=?S5zMPs~k`fD!<uE9sjYF+K$~^_}HRr)V=MM-yflW zM0dlc#tK_|MPI4)4v}L^5x5Xh1~6D9AlK&NO5f}Z`us-P$F>dcU@I{tK?XFkH3=op z4%VBoYin%J)@L=sWm55k&yM=fel0}ZIxbWLL456$ky@IqwT6foGN0S4N9Lo~1v?Nf zG79JAN>y_C$HJY{>WrpG50wyXZ1f4y-`ua2BzXd;JAF0ZQ`*o7qgtcQxPu&eIM9}G zwVmX8&!xTJBoZpFAF+g80)J7#%q4cHXG!TXvMsD@j8{wyevenYb8D&#V(C^NuJ2HI zJJMPa$@eA20-ZL`&L^<bH!r7eKm&djqgis5lP%V78N44xgy!E@G-h$=g^E^8d-oj6 z0`!sjvGL?qawalR@=>Xi>l(@QLi)I1!;XDg5)QY1G#dzWIn&`(-(LtW88j><&+71a zwyqV=PlkoQBvMGWah+5vS|520QED0qx_tfTnOm8gheB*g6jwm6YBXAIym_amXr1wV z&i3hbD1w4@L{iX}Dr^@9GG6neSQ1o?()r2&^}Moj!}80|KWSb}*seTRa5GJJ(?-7F zhIvqIksE(-BDSv5T--16GPMBZVNHkv{vqkj_@~yP`Rx03h2hy3*U`EyqM~8I_~|m) z_*6?#bKiuym>mAb3lM)EF8;!{{rw;9&8iY^9y2lMvx%@J<E3JG6#xRd2){vk;w0sH z)o?JNy=3mqM%cpl-<}Gwr6n8i^4Bopn`!ImEm=?uyH6U-c39@Qa?@ex-e>cL?<?xJ ziz4Z|`p!CX^kuDnBy(9?a{T5_8sZXp9^msM7g(xh))d>3cWFKd`n`8a{VECdpi4#; zn#>oGR0%>k3yUUK0`*6{DY-nUdGn&`onl<SRjF#qa4%EFlac6T_UZ3}9H*rrr=)vY zuJRJE+My5<+7!dIr6bdb8mL}yI3%I}F5hmh)?m_<PS5Ni_U(kv-KqiP2(W_B)?+ZE zZv&AlzR%j!rw%8jSDBE;6Os`e<SjM{xnt=q#f(6EpoE>(C8GThho37vCy^G`+9Sj; zShe-7Cg71eS=V!&ImhjMR>Ux<@g=mfJf-2r>M7@WUidL<gqeo=g+o{O9%fNh??b?G zZo@~&E{;_YMKbCipvA>yRprJldM89B=j+5;kXK^CsOl9`ymrz<(rVU+YchvquAUj+ z+Pk8q8lvP0F8azCUeWeUOgXLQ^T;l6T@tA+OeR+}BD=~z+J&mam!7Fr(ElmyC;k@p zd;TZvN9v{dTsD+jCh$epWi{--rHca|G_B+LOxtY7j#VA<5zLdcfS6^A1`n0+ly`+0 z;{@^1n6IB){qJxoSb`mC@=pAC=Xblt#vh2;{I3R55>{5$F1~&Q3qLXTh6Yucv%`Z3 z0=Oh`Mg9^OH4v5OSRz))pR4G<QU;p$F)9eAmnyt_^TKN$wB>gULn5|H=F(Hi-3!~& z-q_J@dusHjoe_X7j%%lL^%BLcQZ}cuUp#X<hNJEeFOEC${`o{2w<Cg<nhP*h#r7st z86~WXutG7BV7{x%Mfm!m+W~-vS`$v1%J6F18S{c?_Gtv^RQBb?Jp>h2(hT9weBl6| zSFo=vk0fS>*0B<DpQk7IA^F4e(~cTfRI^<TDaXUVW_82YTFQ&*4i1V!N1azsgsN}S z*|E!Qm`9t?Q#1dX)nlg*PD}gFKKGp++0Fl5tmTN;Ii4>+G8z$a=e4gp;ocZ99}R9Y zn<V?CL{}+_3CsF~=Nh-QJGgnfHL%$u%lK+K&AUt-NvU8IS8-Yu-CbKWUPb=9Tn9u| zmi*^#9c%rzTLYN>$8N3Zi##QP5zHX_TlLjE^2>;+&@xY03l%ZPpD}vz`$BGwX^O6l zjZm6EpZ{{GOG4r3<xnom_~Py5v32?&?kI;{CSVIh)`W(ETE*CQ5x3VLoEH-JmN7=7 z;nra_k3&jN4BXh$pMgP9jb47=j28ukXR`$7l<#J<V>zRD#X4{Fh)-i5J)~U9cM1<Z zCHz?(K9%s6RJwT=!hYo?RvxQPP8Y~0{4`_N!vp)p+o9enN4Y9$9<8;+F52|aUb2EV zZh}r0;NmA4{bMpR>p6)c^B|J??Q~wYcv<tS!HbyS3;FHuqPdNw5{&v=ph80HQp143 zz>#Owf%w4KYvA@x2l-_ZOOr@zTJ!3SP1}eOzFPCPn66Bl&O<HF;OoPgY$qN+t8a~4 zHDB|OOr2QOBeb|pU*Bz$bq^a+KE!&><8)^)osCsYV0CE6Ae-|$fXLL6)27+$)=&P& zY7$)LF0-{|fKZ0>DE6``=&+pO72)H4FmioQIDuj!u3(^3)5JqVCqt4f$1rlr3cuNZ z@8Z`VD*!t+LFKs@9w0LtwI+l~zCx0}yLfF;!O+)Hv--&ZQ}aPI0PQDUHxyd&TIKHH zddsJA8+b(L>-Za$bUhe*xdY_ip{6VU)a*4>*VT0$<J3`3z=h^J5>r4%<IYk?lbC-+ zFJ(kCYU1ZhK{-`^t_Nq1TIxp+W&yKPDDK{R_LLiYUja`|C&KylMs`~1VE}>n6WUOs z-;CSgMk5Dnf)tU1>6d>nmWtCqZ}-W@$O|Hh(z|MS9tjQ`M015WEY(X*nn=n~kf7{- z!BF*jGT<X@mCht_DaB{vf6qV#GOZ@#JW?-gn=fvJVZ-7xE*}Q-jJ%omG;L8t3K)Ir z`}wADCDS^U{$CP+qjC^!JZ>Tw%g?TW0d0j*TROm3TAh7B12;zlchxFd8+VV6;pZ+k zZemu>HQayb09=j9)9;)WRNq8}vmAP;h;XfIIPUhWPjzL5#|ALfiBg%AUti`D37F<1 zT8!k7aN@~{a6}tf2Sdn~35%44(N$oupj2!#yqrk42?DSRwrle$-umvwK1beszBO~N z`|f!3sa&t6{@ynL8`E+X{fWwTzR_2`Dv40PO4r$q{xc`NtY&naPtgzAtCKW2l4nL$ zbR?%h$v%9!+(-Yw08Br7H-(U9K<h7@!oR8pd*1+d;d+IN$qyJZ)8P=9Z6r+_3Z>j8 z6wS)Zcaz{%hj-y>ed%VKpM!tTIL?+fAy?0Q3Q8X-d{i~SeSqf&Qas4EZ9j+ZI(}$z zgHViH$$oZ%<cyPfY3_UMt#$2^UtXQ?W{L$r2XXB4y`}cO++X1iRu==ZPszvI3IyDN z9$y@I1T7TeqGTifH=BRf>L9-S7n0`7*aEbXsG6=vlp!c~Pkj$KZL*pTEZyj!hV0@Y z%pd=F)7h|E<5i*1za5g3chX<GD`0ASAM8U2k8{;&%>x%_Znz-IH!7Wljp3!QSOZ<b ztP_JlA5C^PdQ)E=7uX*7nu2;8`Y6%-RM^&L0XO!~u&#@?kO~E;+q&~sX#g!$)laBZ z(X1*c76FospP%<GkvcWCMltgO)h)lkBhkAu#hHat^$}QJIW@A?GNp?($#J$2r47Mz z$I%E)9>3->+ceh#QWLJ3Y%os!wc(ZfY+H4W4OF<mkz%*LqFpG6$GdiIH+}<-9>l*k z_>%gc49j#_&gS|~`B=BfQ+qQCqdS(8+cz%t*#7BCB%W?nV?l52fH*R3a>w(Aq|r3} z0hSswmesu0LIccGU|ulX#F6u`nv<g6%Aa)*T`}B5Rsx=rd(0SHc3VCQf|Jj}3BJi& zdYUJ%f=auI^$(S`UoR)Iw1<Hh1<!;#-NfTqBT}ETY4ZoAa<(Y*M!`%ad#4li;MY-< zg3@rv%==G<0pSpn5S$V1$qoIs5sFTIedh<%#|GGdgYPi~xk7Ix9n?IS*j&a=!Ak7m z9<r5ntnCPpIY93MJ(Y&h_DlM>6nic;`D0knt6Dppq-{6w4&$rF{aNR8f#mDw_uX&A zIwK?p>QOYCf^v!PR@ITR+u>R#bb|iw8~(toz4oBHmz{y+Rz*|w*IF!d&iFrcR5(az zU{i}MZtS>H-M^F)4~umP0B4#?*w2>%Iv`;dy<8$f?Ul9SLno+yZU9s3PrnsKBvw-W zV``E>)5!m}sft5wTEc}>T!xG+E&uijDJuj@Uy{h*q^$EV^ZAMC^>^I_8A%v6(3U+| ztggk`GKR5XORC3@GRO~S*#?;BQHf9CXy8D%3l?x9DqNE3sTM;==Hjbn$A3jcVNk%S zK%(G%IFC?=>n=-VRsk2v?J3C<zzWU|P|&E5g~*9$N-2?078J_ilIshKO1f@6`2_j| z>kh+7l}#=Aw%Ci3iEZ$r?6NxFt*)jETG{0m$tCluZ>NvN<cEhQM@IUr0HW^1!7^9V z{BQ1uVn7r!9eqMKGxY#jIJ*XuW{;Gl#@K8sJ*xhW68bR5wt3O#d_@3)2NKWRXKd`G zk~p`*{^CIf=XKAL^%PY>cg^mr%kf>OUmu&eoNUp3R2Rh(^g$tVbN655M3vcdoq1Y2 ze9JyY-DPw`P(d%|bkGShb~_{#;Xgm4JX*uQ>=WVs8eGg4CsiYjeuqz6Ef8>+2h86B z|7&yzmpmeK2a;yK29kPS+%-vlP+3n$H()eLiec-p#+|<Ge5DOzN<+@k)40cMXW9kA z-oL(&h1m6_n;IRn{1(gc+HpHAgMY<CQ^gPc+esmD{2!eZui-plrb64WMj`LTFz@?q zoPP3Vx%6K^_1nHoNIpFrR`QYHsn|5V&cSTlhC;o5{;SY988Ua+!6p`>cgAoqe64yB zUfOWS!hF?DkkWNojoxc~cd}nl3;X<J8$-QmM^Marljptpa5r~41>3<D&SyDUoV09@ zn7N^Xpk<9F4}0#o2%~-;GlBBAnj-&iHN~>`XYyxhkN(Z6+n2Wye@hws=_8fdQ=(PR z;(v8h#A&{vHIxvBzy+<pjIB=w*WL`kfg2=-1)oj`w#l9~Y}vgUprdD1uWMjwdHH5{ zmS5`zX_f;~QF3xK{pP>}TpZur>t2+j{^<Z#m6@Gbyb-u(oFCNTcjo`+DVP}q(?|Iq zQ!sep+iFSn2I=hG`rWtVTf)a*7?|r{Dj&9k?J`-!!0aCS``4}G6RN6bSriPTxav7? zb8zzCX_^6m-CFqf2Nqs1)H~{MTx$_;-D?E=tkK7r`6cBRAHb&ukNy!vRnKlJi4n2m zuF*VZDMwy1a+HI*=7o%Z<fuQ`(iG8Kxt=fdih!<5wQTmtwEsm^8k<})D&OlolpS4^ zPVzEiS72NUyCD@J>VA|z>O93ZkPwC=m;g23Je0sgTp1>{+U!#=5{3D#;M$&M^bSQ& zAPZ6a!(cp^p_Kl+6?EW%AAo8#rullLq$dkaw`B{8okqRN+T$YyPobBjCVGCqvrSmo z41@JMIo1IM+;$?LY|@dg0GI9vb@!T4CR`4)xSG>>H1@v^Ksd^O9Dse{kcf)+DoVyj z$%j-;p(xFc709N#caco`umuSleC|ujQ-=Es$U}+0WHi`+@kxCsvpE`Xo2sApCBJ=? z+MS9D@QXbi*cfg~FN!V>t#1oyShFuTaxa&xH6<fF8Mx9N`F!%e8xb#h{LZp=J|FqB zR*Z7(LcHi7-=Z}>V7joH(_hKPs0}^{6^ZYsAwf8tf~qu}?|+7Y$q~){ZR_ga<3lp* z71O+)J>JxhP}ASjX|JlEWW}zDVE(O&oO7$j{+kEh3mpDOxFPu;d0=H~_Ty&lRq}bF z5wMLYLiiNg1QGpr>iI1|q;Wp5g1cagbH;_Riv#@*T#85yO=9}-PNxV&%?a8e47J4} zyu%R3CX}|Q`x6$4B|3;lDfG&7;O%u+;p*;-ywEk2{)IIAG?T2YZq&9`vW-tm*eb+R zY5A04MtGjhJjc?K-4cVzKfSE~6O0RINBGk>eNKX6g3<Hx*X%Yvqc2*v%^|O6Wop+| z>s2upr3~TS*rM2EJGU$i-@i0WL^r@f$L~sL*qu*eZ?pm7VZzj5<SBwLz06u1!mD#? zbSe#g2#iZg<I?u7vqbSi)6>194@JV2r#UB+E(sjE?*QpCBAOHc2$AXV3{6xK6qRU# zV-^X<BPp~j)a7P=Z0b^!DLBH8N4j_rAB|!mQ-VF$6E-rvo<i>0#cnaaG^joW-Ho)d z8ng&B`n3{({py6c?8O>{&Q87(QwIpu=AJ6iy_>moaVd-p4?mjcCYUECZeX9efnU@O zNyuYaBSKdA9)fAEjx3KXY+W7sDHbjf<En*UO^{`K+O&p+kw#@)CE(nP*QhAeL_+D~ zNaI(+r(D<6r%_@9!AOmX{q4J|>$_~8Op*-YcFgq5nVu_$XI}9W^Gzqa(_Qe#6bzSc zQfCbzdxdLhIp+`<Z4x<r47_r80z@MKwVmFe=Wj!crj8ajhDerH?5maU(#ccxyKHfx z0G%!rMPBJ1Ik~3yYGD`ODXn@H(a3{;hSM;Y%%ihcb>@75DlfEnza1z&p?E3va`n`a zqMGU50I?-G;hWp`khwG7s8oNkJZ0)C(^CjDWTQ}t`wbrsuQb$4MPH7WT*)(0J;($n zfm>z(Wyg&r)jZ0ZtGAfbYVeZ{deI{~ZP!wjw9M3)m%MCA2N|I*J7O+WILKFiGg~@i z(Orot@^_+?B){|8Jv?IP;}6CntI5aZ7!!Qm`-y>(o~~P$iN)p(a+0i^{ac+IGZEVt z+Mkc8{x6K&B2q)0ejGNByHKFOz!zl(blz)@r~a#nm(kAlR%&s}-@WZ#U`ap9Fg;2E zYxieAIZh1!=e<9SR}&U=I}Lwe!Q3K)jwTW?e&o(sRufm|6C(<&Ndo83E|wo-_8v5U z9X+t3kOb0(hdhsgJN4)Rc)b35z^kd}v3>G|x6T&qSYUG=kD)#$1#rSJaaVwO0H5q} zMvr4AIRH!PQx?@VU)4{rQa#iQAK@bx9dcGflEGBKO(%qT=Y=|)8c?L6u<&!A;051k z#~cjAzBpv${H_r&3EcP&0j{qJwk3rP%EHCPxXgO8>Y+_xjyK7qupVPlkz+lK;yi!? zBi9(ssH8<3B}24O_4sw=5S}D<V5!KhzX#ix;Kc6JK6F8jhi=w#-0G^x$m_koosBhI zZ7xZi-Q=uiY1EkcN{jl?ZJn3B+P4<L-(@lfclzoh3tI+Qh#pFU%({Fv_kw=d7hfU_ z`XKz8>+wbS+Ob1ara0<E5~&GOmyNuPA0jZ66N|6U(5Q-qV-dJ2|5ym^M^%V%ubW7W zhxJNF<rk-1bocF7(Zc%O2U}*bkcG1qK0cy?;^jkaJD2b0&EJVAAk(WLG0TLkZH9F$ z0(JggF{XHmSak7c(ZG&dAGa*ZExv?vs+y8Zve>2khz{%Y-BI?N!9Opju2J=yKhlc! zRw84*>cYO0z^Jik9CWbEP8YudrA2Kk<V}FD-D=1>%qwdXG#*})eKu|}-a%OBDoa!5 zdNf{YEqdzWF<%nfjWbEo(hzPP!!Xz41x^x25A&~Y#_h2nnTy+M&qRRIox+!SpK_BM zV$x`aV_A=1Rz|?d-jRyn)$4c;Tc2lq1iL+0Q)r(a-{r3ST9rB%-=~8Bh`<6QzV^{i zn1oL|o&(ziF6aX_dk7XMObRZO9xMPF1cMdwn(<~whKxV?GeD^?I@&=40;sV2y1Y*4 z>;M;L!ZuOqJq;#f`;VGc1>yK2mkyp%r5?ylRa?~IEi+Gf>6j1VZ(>Z#<IV93CpP>r zG?>36*M$#kqa9K^iUq&2X#_ave=kstaTS2#5_++srp>NO#mBCW4!8+bC3%vT-geI{ z2IoGmTokwEjwnfk;G*$a^Y&M4-cKQ?dyeW}nqI`1l&1VT+O24a!sJo*tyZcZqU#`B z-|OnExiMKGVS6ElHj}ZsX|Ovtu)fAB36d3~Jf#-l`SsLdN=p8TsG?BERg<sT7GQu# zY)Bo?yZGD3>wU^NdfH>n8Xx104xhd1e%#rIi4S&SY#oiasj<0Vy4$U<zq8G^*nDL_ z(vReVphaQtB*M!(v8h~tuc|8jHGl9jS|?HT_D}veN^ZMLF>N^u5WWrJ$C)}2S=AY8 zwwo9M*1dl!?1fFo0+R)bwKZ_Gux0w$*YTgCob>*-#|Qx?>)l%~C3(o8Y8tbj8gn%$ z*)~~s|55wxkZ!=Ib@D6i*8B4H%46$vtSUXI?dodUuA|A0^bt>9>-_^}Us|<$Ipxin z%1~W=OPT;G3Ru17?c0=}_$W07$KP`D_WR@(%a0l%Mh)m}B{mBVwTevZZYu}zOs7n= zGe56A)JsO<CMqN4ho13=sJ8csFHMkjK$4c_a<o^fxwCbCM0sM5c|fAuj{f56jk<<t z$S$3iheeE{Z{C?`9x|!N>s8FcYx}t@=l$&`UySu@d!Nff!``Cp4YApjWXQJ(jF*SA z2uCLNZ;zkPZav-k(%U-EW=W{V-9)ytO%^z^Tk20(qLc*0K3kk-nxO6DL!?hpOg&tU zgc?PfM5@NyS>N?J|GYQ*vqh~RFHN{j9bO_?_UtI3V<AZ>0@haFVPO1;nB<lIaOJOn zvk{@d8TY_TIO7Z9%LOT1PYR3rR3}qALjutT?$e{qKB?&=OmY>DmT+~0tj>}pjcD(F zpc?8j&aN2d%&WT6VUKV&Hwe=D3vZ#h42Bxj;j&RHC>70QxxgU8r&RWoTV~MO=S{Jb zUN=DDAcg0ak9E;Hs-CGJI+`NNk{pGi6vCrmbL<?`^?b2hcNv?;YYb?7v^wxQP6n>N zj`uMVFz@49z-4sr6#vKw{3NHrlmQbx!C2f@Xr;{B{tNTF-FYUE%NAkHv$mcKLjndD zkluq>hG<y`N0fITru#$zjU31#ufAug<>bTb<fPxyz9@8eHf1ZLS2fNK&fOO-39F_$ zF@S7@fOh>Q$Gz|a^0wL|QgkxoPw?BG%_^M}A8eR3H4Z(PJbzWu;UcOMFs;yLNoq8i z@98LOMCIn31;r?<LG$2U&WbAwyd+}q&{9Wa<Tw?VsOE`n6~f{3SV{!&&*IjXFt%!Z z9tQjQ*eCvCr9{_mt0H>_nfVB3F3-Bh*|?|rI<0HJIz@DMKwV*uzIq;}cZ5CjjkNH* zQtVkJ*m1nZj=uL(zw$Wx68k{@d`0RyDn{@cq;bU;^4kCMX9{|-^(V4eh1jT_i;Mls z7vp7{J9&+?u^U%P?v>zAwR?3&?>;8p(|S~RRavO$x7_+@A4M8lT3?@f&l~U2aBS|$ zxJ*9Jeta$x-!1}Wu?}Ebj!&0;D<<^GJ05cG;S<#K>eN7ZkXbjS4(&xi`%)#;tL@&p z;a^1p??_)fg!-f1b$umIzY|D@2}_hw&=DD+`uory6JFGHy4^yQo27pwMx?^4zvZyt ztd{Y8-qBiL#;3q!>phkEk2`CCk~>E`<I68K2w~O{hwPrd-lEF1DB@QbYWoFV4KUDu zjyAOuK;lr2oY2B>FrL%I$Kp_$ZJQ$v?KCiph&<w2$-$;dR7{2;g`=4h?sKkdI6Rh} zEAZJwo<c?08oMX?(lnNmEbAB!HTk1+V{!2{fAB0TTZYklYE!{zaF*gZ{yAv(aKGOr zf31w#e>eUd$SL7!Cd9S*E=Tf<&3ai$$roxA!(hv1?Vm^?H8n8}-+dmqaBMW<P-<ta zhlSv@0sYe~36@3@p*|0>y%g47SI1}jG5a@V=Dx2veiy6W=26EZ2EgO(^8ktUXIks2 z$U(24$X-|Y@bCH*z_vO=8eyHqKcQ`}CZ6rW{9ms8Us7~uKBU6I|806BkKdOy1xnDM zyt0u!(x(<iLl|i$5bv`aXdV?6l~LrcQ_x={5&=MUadox(iQuiC*E37DXJDBE#`0U6 zn|U=D2}TaNjbd2LUPeQbJeKSbk*Ay9+(?>1O9bTe`7+LGvcnE-EJuuA*bGZ`&sH?X z_a1RVZ(x$RzCo5(YU7IsLPfvzwPdQ|kHIdbmENnY+dzeP^c<a_hn4;~!7i*l0@DM) zxh|IrVbV|CcQwaEA;Kf4h1%bR?^Zs07#?3oI_PU1$W6?Y8m8Y&sh$mx%IXR{MMZTy zO%+E8cm>ouhb_M~%2I?XE2-w%5^G7Zed~_Z0Z%8wqoU|ZiU?>F$bSX6{<2ZvqEE<W z90klKnxhyC(AD&&#`o4Fm>Fz)Q*~xIz^;ZXQ9(q17ai7_hypim&|mKG5VvwmN7I+P zmew~nZ~j!Cq{l9Vcl60}CetcDF$|-;#^^mt2P!*kW4|iqYUw=3p=tthAc_xwoURxj z5-JvXTA^!v4tnv$v{D@+ia)@tFrV4Dx<`|>=iIiOHMo<#d|$s4D~9bIYfu`gUsh^s zbc~}soEe>C{{}nQsFBv)v6d(I3;qc8%e4u^In>CEN2r1Eq^Ff<Le2$R^d&GOTRtpH zF}wfjhR{;}nu5Ur?zn<jYZ)n=w!7vxckKI)x;W4~d_~v!gMosmgJ}g~blek2aTig; zb>MXjX4F&OnMY>Xgz2%MZXZtGc9f?z4Q!N43a|HP#||;EVtTPho|A>4h6vANw+jX0 zF#fMKql&~v7|`laU?{+*7(K2c93ajP5MaAy7RE>wzCNdTXZW($M4j-VjQ2KD=FI-= zzO=*R3Io&~!En1__cV7LFnRxUXPw|+#QIMC_irhS7zQ7+#9Pw#K^*nTaDU!<y)BZ@ z*A$y#iX#1z{U|Kl*42~37=~1oPU89@d2}XV<18BAQZiCxt@o*h%s3xp8{#*@!ZWf+ z*4kkPr%aoigHo7D?P$%Xt{(2Y^2!&&K#}gRD+5ORO}G2HPdV+fWDwWrcRI^iivk|g zZGYe|MNNc^y@}5T3U2OK9UIH>nay|KPmz8xriml=>@siD7&@Z<Uea3xKT{~gY*|of zf<Y0^S~Ss-oW+Bbgf&fI$erj8zkF}t@aq(Wb}Dy&K<yGKiYxl~K0F%U!@|@9Zh}x6 z?@};gCu%UBTZnf)JWH0QZ<IfQ8SW7|1A8GekgEoH94V8m{2MsS=QZT#Vh_37_5RVt zeLbD6Q6|a!-QJD#YAlCGyWFVF+Mm@p#;!I!lpAF5YMiTe!S4R8{5wp%QDTnT@scAV zZ|V)-bva$}B7JXaG@P5@C=pyM=Dp#vkRW6v@%`$AnsIZbgTdhp-fTD%t6YtnK^WQ^ zAvx-4!p%Hci4sBTJv_LtGU8$hZeX&)oWtK8c^_Lzo&}yRPPXLz)XMJMa@U&wOi}w> z*%_ao8Apv87Lv`4du8ink?lX5ekK;cPE=j_$woR_gu)P>QX&gTWY;&uny8W}%pxX- zyhhz-lvxJ6A_vZakj{u_CZUDqUNA_jeY%Z%;r(|(zsBdXS9X!Y!oc*Z54aAv*!hXS z)BzO4*~R2K)T`F(qjN}LtiNlpT&Z`1c1wqSgYjL%=cA|Ub7y)|8`%w$zToD^)<ld& zE!)|&IYK!+bUb?wNp3Bzs;W)1-l%E=Yq%gT9FAwIVV_a1XK`ZqaXCiEaS#jF6m@TE zVbtZ=zO79j?pK*kLZ?hGuFN=nx6x=5NAjD64t&gmbL-=afhS@a<vNp%79YA0R~eM@ zC<8tqjkdTJJFpj5_V7{gky`3pmaZ+18fXy~pn*D+*GZ~>W@goNBa4KMrCI!~KXorI zpCy)4B)-=zGJ-x9CZ*SRZ_HKRYEGw&oEO87cc|X=?nHNc`}*wHy3L&<Sv_%2(}Jvy zp`n9|QGDR6nIQ%PQ;s5dOPaa5qLa3%A{VtmvF6Tv0(-<Ne<9E_>b_cIW;Q7|S3^zD zD`}Ic42^ig<!30MX@IB)k3*4+Ss|?w<PsvT>X6C|Q%$5l@OczzMkTlK@^epJ3e1y> zx@HrB>4IVaP9N&*Vru;Gf~dpnQ|9al*1h>)1SXVE(B+m?0cmHrVriWej_$J4mezpR z#csiFUlsE{RTt3lS5L}!#5|pis?&sZ+2bR>;$22Ize~Bb-Tl6*W5*RSvJYZxrI=<n z?_Tvk7i3cKjtH|sZm_W6DNw|5Auf^yq~f?uGPtR<m30YJU_FEA__wX5ZDIY;<T)qH zghVvUq(LgnB0xb%LW9Kxu(_b<w;t!743ey*pxxZc&nJlF9AbD!cWeoseduN5EKox4 zCouJvGF#RHm|h3*Vud~HNzD&~8MZj5j-qNLX&~to%y5iyl%?@=-4=k~`8SM|m?k_% z#gR#|N3phB1c88HK->kYrjq5m38gL$8MwgI0Mj~C;G`F80w<V?+6$J$3u$Tis+lHN zEB|zuXcINzG8(`ft~70!T31E!#b;J0QMz2ys5_A$zfw<|Sc?=Hhuq03geIw&8wbx@ zwO$|eH5Y)s!S)4X{b1?%+uddPW80GtjeC`7v=~ry9tTInD=aFloq~{FwFjmwP7{Z1 za7c%GfpwBm`&q60MsD8bcQeaDpm=!48~Zb6owxSC$;{hgKm><=PIZN1j<Ae`Efy1- zMMO5^pOp;^>|IjJCPw&}OQoV2bnuaqaF(qQ0sE&PM&0)+`UQ`m`KfkqpT(n-HolGV z@79QI3qjt*b>Bzk$%YlE>P#q3HoK9)Uq6wX(h--o+L#6LKs_~BI?hf}3i3~2{dpIQ z;;;27C?AGG6t1K*zV|zK_5CEYn0X15VVc(OoX5v9@9DM`u~wSP5H&oE-i{ZOm%FpI z1Yvpj`0rUPCQRo_Y)7hNZMP>A-@DrKGg!5K2v{((nzVjbBE0RyZ(opC0SO-@5Y++* zMmCfS5RRz{cuV8Au!@5Dr^ati@(>^QKRzjrA3Z7Jk?&DtY<}OA#vPD-(ntouFfD~@ zgoAOY-VV~Af0P?V6aP_{izbI<oiEcxrDLXDZH7ma-~8e5<Nw3iTL#6|f6bz3a37rD z9)c4jxVyUscP9{Za0Y_AySo$IJ-7vTcXv3G=P$QT-S?cjb-zsQs;S!426q2?_3B=W zY*H<aMhM0$xdafS{8#MRbK%Pe9jo-aj@5%oghP!g<n2^Zmaz;_bo73>)t;L9y}%+W zi|!X|ig4uEa9L;x{)A6nU#rLbU3IarCr+wlC_!EU&pua8v5)BcC=`~AR1Wm%{GKO0 zH*xke_||8;JtAMbsN+@7?jG`(3Hz9>zD5&h2%*GKZ7+?1KW*BG;Et}~<&I7`7j?|g z-GR&w{PQD%mY;cy1FeG3*HJMYiUDW_%G%hlh8eOK|29<1N_eGn2U!Ck>+}xlOZgCn z?*qdNO#EXo@aMYr<xi*E?ewd9r~BDZ{%C0gU*6Q$<*yw_=c~W<o`*hOCUKs0w!}lz za!JSsy&Y=bmLuYShLr&zJ*Ke>%p)iTp$NXMdoT7o+}=9|4;hFGUVoK{SR@UtMqg%~ zQ9#45M9eB=6MGZ9Y3<=pA^-4*qg48h^^IvuE%-MErYYsGu9l7s5*ecDQAx$E4PXv= zj;bmD3t}>2S@*kFSKy-CGsP((bsyYQXBQ&`=L3wwg!siB(z!SA<l~B6)*ak=lBZ6+ ztFy!F4;E1sb%@~8eb@c=k9Nif^liRxc}r}Kd<J)Sac?%=_cZ(n?yb#U?@Q)mU5!y2 zjn5estsRb&me#md=Z|}<%q{Dv{$D@puB2bs**X%=+Rd}u{@G<)+*h(Ud3QB67`u=z zz&!H}1n6T2=>)opwul5GUOHlvy-E8=;sNX4PANLY0HSm$`?14)^)C#Fba}Z{Ps}UX zA)YLmi{n-xo^S5WGX%)T5knlvJ`$B<S`Vx*VVCBuV2b9vqki#=<D{}Jt3U@DiC{C} zhxS&liBYdjTuFCW@H2;hFx^T~Of}{38G`wdzj!H!UdAVw7OQJ^+3L)gBESf=SgXL+ z&`zR$^xI{QBk<<6()pI#MsFfR<MV`e;jPw$CKH`XsU*}q+e&A}oX0?&Uq`Fody{=u zL%DA!?HRnZ80#k-O2{_=3(BWiS{Y>#Ml7-2y-Wlrt>~0-LUy6aJiqtqg)J`e&rLk% zWGd<MrfO^;^?CGNe%O1dky6R{S_Uj3n&4bcRgT}n;|Q-6y<X@mfeLSid5C*bJ0E&V zyFlISdmOp+1Wgp7Q^8Ctdq2Y@PEq8NqKz(wmlqhd>r(9V4mE?x5Rcg!2kw%NOe;Lx zk8QUH1XT>moBy!S+6OneGgnhzR@t8Ey%0h^O1P8yw4P*q7mtb|;C-SY$P${GJv$HH zB;k+yw}!+{0t42Npz&-RI(V&9Jq|D67SCGuTIJshW^5XOX|xp!?g(F(4ue}q>qeI* zMwu%4s0Rl51e~0|c-5>a1hhI6zgWNE6HpY%;S}!_vOo7OXv{&~uPG=Hx_B5s&9{t3 z{INJ^>UCX*zBom?gqsG-Nr@w1ISKC4V)K|z+Zc;!UWAwH-1hfEr~LXCZ6eve`XhuF zvj{>qyI+cn*4BkB<FeF&Wb~w=iVThnLSF3Fzdj?8NL^-_xA|V%<i2ow?;nnTLaa+w z$ymVna$|<?^tCc^`18Fi8q2JCy<F|G#$iKhqrv_AOU5tH>*Kv|=PzwHOZI2lAwFW5 z31XCVzf%`o%MI`TN>7Dg=}G4w>1pX-(o^8nKhjg_zon;&f2617f260Ye@Raew|}Ll z&6CP-%fHeSOkC`U(kNp$qEc}<c8SRwU3}`ig7J+6@J6BcZ2^ztF70l9s&mEVJo3b~ z#QtX0oP9NM_5H>8p_Az)2DxJuZmK`*cUoqI!kWv^hx*s&kf-Ts;CV#UHF!CTg2Cx3 z@x+-~9qvO$sz_h+nQU6uc|S{CYh%Rc2(UC<IHkJzV#L*XQRSim-#U7{)O|X9>i+$% zBK2)1o8t$I>t)PuLX+?)+Cs#Nt4>(07zEQBkh)k5MR^yo>YnZ11hh{hh1Gz6X#BZY z8EcGKN6>{WCLj9*`k9y`NlfRL-V|!tH&W(VhPnfM%e}s|u9Xkt$vgopA2;yp!S-`o z5U5mBxjLH;b1S+k2SeK)4`l*F?>(CHBejhYcX-=*hat0}c?dkzk`iIW$72P`p!=^) z!*AD^ZM{)|*^fTS=-xZO&C}(}4k|k4Q=(L382&`TP$s4kM|OSJaQn{h8ZxCj!koWq zd(tc+ByE5;md5b0acOK^Rh}x|J6ReT<UGKo^<}nwZV!nUwSgnLmr*+mzZ`q!wyCHH zFVig9Fk;)0AR>5}q8(OHB)YTy3ml)S!oB>U&p)b{ICh~H;wI76_c+5Q*7IhwDF{2F zst$aQwU%9y`%dR6fJinSb$bmldk}qru*$b=y6HkXClSRVF$!AWR0mgBtK4{KD`9=# z)QvknR1QDC)an-Qz|<jJIx^gVcnBV-1NdwT-^dG_58zAC#>MO4V@h%)E%Zm0!-((M z6xD&pK0JnWE`bUQyb+O#o^qde&_fC?GJMz&5dWj2?TCSOv|}A=kd)s%t=0A%zqFt~ zsf^z?@9#mczCqK|C!_O~PKhFX!%3cAP;ln;4fR<V`}aqn0En6U=oTh2?AhbD#tblU z;Ty+*2MT#2^oYbh$A-H>uS}Wz@ZC>+AC`g{Q@j0<c-5y2>5cHkj?~NZP0_qDQ`t>| zRgX0_=Lln+{IU)O{x9I5d|vw}^oV&R9hRw~E%b;iabO=iB4h59u$?1Fe2SW&pBFu1 zJQ)cyVlP^LoJIY-3{Jod{YM_ZomCs$kNeks*_0Qfw)?j<Q=H$c%<B<R!QBq}xp6^Q z87fs)V;ZeEg`XU+JFMlbsGRwi8ffyA&2OZ6^4uot?pV!z5hQq0zwH%CZVTWO2rT~c zlu-DVoB90*1h0?pL9^G3B6YClsz^UYrB(;X8qNwP+%@{wp5B+Oc^kp)J!@e}oDfcg zYKEB1DVTY8mer(jPfvD=M}^(ZX=6VSlW{f952Ne_KmDwFrWAd&2oB^+Osq{q&nFqc zj|1pKAI9}&B8SJWUFf8&uZ-^nA9UaHIp_UGX@Zp$#Iz66_Jy>Q17l?|AyaU@b38Nk zIQE<RAS5^5PW1eq>-7JGH4C)(4n^xcajlR*#pHmMugj=rWrArhj4wZf1pHUfAEI?H z$VfTUi68;}VfL7`VgLR|$sH1kEeu@L;!Mbmrlhu}H&!*y0rcl*JS^8V@uBn4EdfFd zheT)C=M)V46p5dx?G%Yy2)5~#X+u>TKQr(WY3mfClae~rEg2!K?9JojsBi3564hGO zT90sMNp9lsnE1{@DVN0)mr&^t1;^@6?hSmPF4-M`0)J#a%PEiYEiAv_5MSz0=#M_i zjYMwN4(LQLIDKJKo83FxFKqlNp8Mrl83Dg`xS4#`avbZAG9&-kzVgVfC#otD-NMc= z_3w=x+Yosl?kU|z=1ojWjW;b6fO;3Lwk@}!W<<x><Xbo?DYQY|b)a7`!tTMi>@tcu z`CxwDex$Edx+5)fDB&1oC4UrwNEc<x<Pb7-O{G#Z2Ei|0ON}DtP%}?K<Oc9Qgrp#p zWKj)cS?ZW6!R^}QzC_|iq)AZbmuw80*1;l-lGY0=I}6cuxGazeGAa%!x}P9JfjB8^ zy>UdIJ3=1@WimR50-l)+T|&hN6Dr0`g0%65)YHONhx+@$;U@SYC1!KJfBXb!<dq#E zZIQ?CCe=1~I}j1SmLz#1$>qAqIUc6IAycE>JR8X&>VDq|7Pukprn(5p#77wtAw{cb zB#I94NmeJOHo|OQZ@4aBtH7$AtWZqvCu_W!-qH6J0Y9h%h;WRolK+v+0VFjC+H&DA zYG)CNp!FqS0rp`RV_e^S@fDX9rpV=;24#yAoqjOcN{tD%z~IO|P@`~S*ifTD44nlz zk<EcJee@M04tN%{%P?Lil(={>{0J~+L4veC!%R8J5d>3u!KkyKF3MmLwQrbltf5t9 z3he`w-!SzoOd1K4k_yW(8Z2dV-MxMsaV)n^A|Ry;e2Bw~Nk>WUQ`V(c>NzaINaM>R zY{Wtj&HO@&Nz+P0is?uk+Sf&sRc<FS<O@lFVbQ1T!Jcb^LHq+!jvVd-v0U!_g%#%a zlX*&QEbnM>6Jr9UVP;zr5<4NBskIhW%&FB;IoqUgNzrF%3R9!oC>78)@YF;r;l1X1 zBn2hc{pWz-@>yvWws-3~a29JODy|hoKgR;j+I#Ozk|v$xowFeJ@yloarZS5+m8Dv| z`GFcrdF`1{y4Du*EA0N^oSd(km4d$B%1nM|5S>1i8~brB<d-zUyWWl`3u>VV&3YSp zioRq^xHQh1CH4>54Hod<>mpgGZHNZyJh;nc!}d-NF_cT`y$jDg<i<8jG3!iMm{ELI zPsIK=DAk<qa*z%-GaKMIBbYYM1+bWjD3sI4LXD*pOlzs0I0?h1MGuV7J=HY&4)iP! z!<P1{1kkJZQFHMj@6nFB3D8h|Do&<ou@0sBgn7fnY}gf;Fm2oe7=6USE!Og@mulBu zZVZ_#S0uLvx3o5`)qk~c*P8VM(xOeL5Em+N3N8BCoe8-ps>!;7WtSH6t%455RiM;9 zNmsr@%0aUCpGZ6ozMku{i=jG=LCVF17b-%l(Ig712pW!sTZFY$1MDna{4^0s>A*0R zPrK`zPl^-`DDB&d222HUaE9cQJ~EXbw#@W600fmF#2^8%ih#4Rzn2(99q(KMSSkQ+ zNmE#W7-krhb6ad!tniI(U~!$4ingD8JSh%HQ(OO!mJu-w)Kqz6C`?-Q(2J2XTy9EL z;X8a)x0NmzF*AC5)8(bF-AkL*k)zE|m%004nxAkmBN((2&p{Q*PWi(WFsnnKQFm#V z;`5T>MyBwcg+`{pbx<Ul%l#!K|70d>26{KXSvLa7PM#t2$yb(u-K&lEnQG+qbOzcC zOeVbV6nWpiBJJ(622S3a#G&^%MlG{M6Tw&XLT_yK3Cd?ONCe)|Z<D=_PqRXin{Oh* z$G{A%T8#>UOp>>g;mMcTa^2Fb^<@F9htM}ZYwOKu8?S!%aBBi?ZNRT^q5Hn~3e<A! zM<tS2-a$4(smXyI;WTo;<xcWjOJ7P$x(kXi$*iUqvHu7igCFN(JPtag(=&0%$39ZY zdN4@{8`Wsbk7qhE)Bj8^Dh)*!i>3@?0*V8(1<gx2sE_~tCC^}#DIDa31SMo6Q)A(> zjQqJN4GEB{in;A*Hr+1<PyHlizM}DCOSMPBtIh_7rRMPoKI~ZriayBaMXfq%&}nnD z!eVpyjnG%nBou&fyvZhF5Z8lH%2gj28NL<txQ)H$sXoLt^G72Z00!D{=uO1r6a<(w zm1e$IHdGcL0wcF}>fQM8|G9S;?Vg{Ku9leGl-_GQ;kc-<*w`T)bQ~TpE^}zvM04TL zKQQe=t%QS~K$rtL7U#;5DpkJ(U9y|hMfqf+1pb=9m^GB4JuLMzpABv{2A{1Ug}keR zAov}4*a;TD@xBP<>f87R355X<#u1oY8>Npn@=#O3Fvj2y2=GVdRUA5q>nl`E0o<a9 z^|Eq_h#MMbgC1`#YQ=GQsRb$)8z@dioEbE~`0*)vx0bT-oeWWw1dI=Am?}Aa3?Xz9 z7Xr<jXp6B(S{`QXq-cJ;^-E5I#7~CW?#Upj8=r;oI*%s#Az`=8do3a(878?iSgt<& z5U7w}Q$$-MapX>%@LZy}<e@p@fTA*t;|P2!QOH@)BSocPL~>CRB)btN7-PwJIoZjJ zF(g_cQ+|OLKmbE<E^`=i#R2VBqLHv|R-$Av1WF9K1XIfsKT9xH_qEMAj5fFtMQB>G zkY~a84kOG`6=?LuN|XgM4&F-i8>Vrl^>#|%_{dB-WL&apM6t}w9B2tZJ;lS%JC?ew zXTjj$Q(Vt#DIFmd@8Dt8XEt#Vd<r9)TZ97Y8$P=X6<v(zaT1~Y!2f7+%Paf=c@iW@ zk*HjVVQTolL-Z77>R*Va1Vi))v(|qg+6!~)Y**?P^*{KW{r})IcLPsjgkR&Tn!%?h z*UtCi2?+shHw?8ZV;7Mx&qFyvK8u6H;Emtj_5TAr$Nv|eW68nrOfB~hJRbu75Af{t z{~4ZT7a7Il16gwSw4`4grTu7V#a7rS3)xU%mt5j3XADeTb_?ac3K&GO<;h(}7ON^w zliEqK;F-oMQOnMcik5sbRWp%JAqZ#bxe4y8mt2Z}wlU2kNvDn(isCS-U<e~;#Hv`M zb;gZ<ryfESLR1EoGQ=>?>1+G#mjh9eXXd}1y|&!$&6mHxVkpO0is5_$xmOEo%w<OS zxszULPRmd5cGAko!Z&-_n6GV&Gtw_?dtSkW!iSRghDox(<<>HU07u4K;Xfv`dHt~c zL*k-8n*Uqr69p32<zCs(UqLDQZQ}wqXB5lwKZercDT(f=xeLjYfw+?Jz^G){bqYAU z?gg$4@eN!_Ns9W2ZqK6om)6T^_o!UVbng#*k<Z$herBw1)VHRmw`=Fg6Wf*~cj@C> z>p{h&{5Pw<xfLNx@OBozS}!;FXPm9;&krnx=}<fgoCz=dtiGELVef<qUx<LLuZ$cW zE62CiWbga&@W`^;46msI)+XW8>9~}*g5g39>!M!0?@+9V$sJl|Gs0-UY8CO^7l4G0 z!Uo1FvX3OAAJ9cthE+qQdo!taOlH8z(8=v@;~GAn8J%db`8gA`w7lnDWq8LQ(JHXw zJM`9Uv(oIm*#ps9<E^9V3aakf<%7=dk`XvDS6a>bu2c05LTqOcmq~_DeNOCH<}HZJ z<Z7vO^)psEj|O6<+aKvpJO(t%%)<wr%JlXpRneN5`znMtD4JKB#(pRH4KCs@FRR~2 zz;yOJ+}@NQeTcG}_;cs=XIbH?ZkL1i@^Em!Zl&{1i>>;U;@7E<`EjK^k;~Fj(2{3| zJ7@S=Q^1Bi94;qKn~u&3OhX!n9HHwY(VhD&VM?do;vlC6eS$-$#PKCvuR{vGI?g|` z*vRW9qG6wLsqjiZ%tw|tlh<VlpIBNDCQ2L5%+#ePiI$v{N(RF+H5}Si?|{veB507U z=erLfN6H)&XdMqjWhM2Qxs$~xI6C`*AQ#o50d6JHvHm#iH}vQain#mbw!HPy%6oB& z%byoh8}G&u9|~_jY)=q6hzz*xxC#{}S7oEwc)2{XUyaZh+)_oJTkEh2g$m5QZokML zO<8bMNzC+52(aE*{6dJPEN;S;f&Y)g>73%@!t(YhkCGS#I_BQ&@{DOAxoFRfGF?Z6 zqCHc-WsQd?)5kZ`ydJTNlAiDajX!ZKbv>oH$EUIEk<RSvPOq~afgGNibxZ}dW(pPf z)`JAf*R!)}e=d~d+C#@0t&bvX>zjAVAHWw$hmOHh{2iC6Vsd;2oFNQJo&!L2wHvRd zhFN+KHRo>4y=4>Gd$!V?eU4neJVOo~bz_>-$C6ZBe<Es`d@f3hKtg#=n<zbwiDq=b zSb*B}ul=P5HRUk~c|)*gp^FYaxKDW#;5A%oyjysw?1rwqWfzXCOwL9%`70bev9%9Y zG+xsdU5Ry(&qp+L=YwS#bqRGd+I~0<q!s;6iC?PI6P=n>7$q8wqsU)J$=yJ7IVjaC zs4uEM5uXq9K$Q(P!lI~w7%s|Th@UzAA||N=i^<5nX^*6D#m4FL9!czC50llK{3;6T zdjPN_Ao3Az8>ndYR(P@gD~pc@A_e!$X3=ekyRBVh#rl{G;VFMgoEgRDKmL&bWv*XC zI*QVNQ~(sT{r4u#n}iw!nOi|kNWn!g=9VCNNd8$cgK-HX@zlN!cbkz}H&<a0pKJZe z-3{}3;&(=Q^H6K3M;vze9@ROub@Y$MWYmC#qWu}w+L!GdCDyeHL5Nn5A9IxC=v`^D z5NLi7nKuJG=v}JzFz_n{=w1B9kh!&#$i|pTi}dWKXYT)l$)gW!^3VpGJpA&1AMHs> zEsg+8jWY2v`vIn;w9rtnFs5BJ5LwlM&X8FfGOgeZ@^hiqV}S~S*k|=L+gKnwbSa$K zT5+ng8^RaH*_O)0h!#dm0^{#F7-KZa7#kB6Ela2=Jupf$NB(B<gsRgcFr(611$!tm zDETtCJU~^2r%-^3J-Qo|qJc&E{-&;B;aP=ie2KplGd(AG{}ZN=W^77|HMEo@COSrM zr}6zy%~?xfBrds<!qqM^`xts`hM2Hd`x6a(%+GBdQk;~L)vFVD2@U}|aO9ipSaw_* z@WPijSazZlJbun5v8EIw45g*zC73D%#pBFhPQ9Ty*~8eS>&4ssdWb2u0;6q>Z3v4u z+%?`*2}6z|yl$K?Dm;CtW>Xr+CJz^_?<ej$mcr#5y1jqXHGf$#EY&JlO5XTxZ~j#C zH7l-ufBn^bdlhco__JYTrEgIS**Lbp9VlFLgRaQ5QgWe`iO*gvRnaIE;ZxxI_A)Q> zDpAL^ld>8uVw@^DGeJtJu!HSya;5$gIwQM{s%Kx|`Er>tCoAOJ%e4rCAJ7p8vq%`I zU|Klri!yCoiSa2oLR0*Le1jxW4#yRO7O7)|OGRwxSoQ>h(x5>r6Pg+O6)VM&f)M(R zLbV%82J1~nBRZ}Jh_#1{_zGQj&hKoP@>=o++PNGGKpoCHwr-yi(MW9>)CMv=lLRc+ zS*aYMOnklOp>!!g4UI}pouNRG>Iq5E5q10J7b9x78KfokuvM8S>-eo2AiAeQl>E0n z|CPA}D)$eg?At5uJZZdQOeww2Bv8vwz-YFMB;`gt@&yBDoJ97cH<!yzs8A;CN({p) zhEj4|3!-}#?3Dz1BEGRB4y7#6FFzG><w}xLGaBOGO=Hn7-VvhbKF7M#nHThE6C}X5 zj|a<DeRyBar<z*b^)REZ;B{kv>&C{L7ZyBImiXtAw^06=qDsL2MTxSGIef8S7q?A? zl_a{Ag}JC|3$Tcvo}(RWtVuzL5;r?>E3&R{C!<io@bcQo;PZgxmP2$R`1*U2H`grS z*YrUht#<}3fvYI2Ou6b?C)Ik>n9^fs!IIi-t%qhQFwrJl{YofhdZ8>%L<Z~Xe{|4Z z5CoPS&1^_kNIl!Xetp&caiq8Q$>RArDv3k`p@3KBLp~Cc$)2DpWLuBkDcC?;dH#kR zxP0z`6!Wwu6w(iEsv`E;_%RIN1%j6)3k>htB@Ht}`A;XgFp&1)>p3*oo?_Tp0gDcs zqXgR8XmgF@$kj~c`t<<vpIf>o0S@y$k^yIKN6$w^0c8Gveq)GLg?F@K^j}VNPJkz` zOzBqon$9@PLAj3V;HZ3#7MnyaPxB9-Su!3TEsU2$bQUl)0VFAs)ka$ZlDvZi1^mLD zor<c>cyMj>>Nr$#Wtld4AJ&dLZtTx|*zFt7Cf+jnQP%sqYaTA%WIpAGv+>gPmEy?e zIU5dfaSh{2^`_7h(Esr-35*^H<j`e4T~I#`_YG##;t4IuV`7H~u&0;ZiK(ZkkT-RJ zglS{UTgY+r$hH7_F~itUt1wS;U>^xnEkegoH~^P!h*KkN%gA{*tzR;<hKNg*+1$i- zF3tOW1pe)rZ#e;D$OiYz9eFNy(QY0B6;uxlAL-Q}DXpED5ULp6qQ+iwHx=;hUH7<I zZdY8l2CBk*ov4pzUF(#k8065?k~lyG8*jQhjXF)HLG0Zylugd>Uk;NvB<(mam_#A& zCZO-4K&k0pv_%4_Yw8t^zWTl$r-_kI{K<;?oH9i0WJ&O(0dLay;lY6SLEw|E$bHNG zgR@SKv`R4=u+8d8>~{B#i0@uNVV=!a#Bl>CG|kKauG;}`NI&<2b-+opvw-(~0f92D z9w35?<mNVZ$YPS#Cwt{TAX7>UeL+xs0eUDiJ)D7A`mp~80}ID|NzsiNgzwO?v@EgN zs+8RQCQf(QU2qUAn4lQx*bNp9p{AYs$9(*Nz5c2s`-LV2f3Jsm43hCo58-Qf{U(^^ z1tF&*3FXtR1a2h??k224al{f{w*H?|o@UxDgmH`v^y#DsSaLeO$O~v9_E$-J$J>r( z`Uq<n+!o519#pYL%p;U}vdQJnRr!?;3x0H_R?GwNGlZDezWET>W;X%XpD`b6g3A-c zl=@6_=Lk(v3m)zL%hB^mgNmiij3~+Fw1h;3A0~UrjH9-LgLq^6eq#QYZYPZOhtmDT z6z_BDLY5FEyo1YFV5Os=XN_IPMp%1fMQoG!ZzGlgPKKRf$i{nt>cNEulq@hSTNG$4 zpCde@m%O1tY9fY#`QJ`#;d)IjM;Nn=R#8izw^YC^b_AiW&|D1Zr6Y(dQ7u%OVu7ZO zCZGW!sXK|1mrwZV6nE|U?a$X=tNf>EYfSfz7N>g~PnSlZrzxMV>erRCwx(WNWXGRY zwNB7a|Kg^Lf4M2_VAccW>IOt92F!^fJHy@|j!X+0%efQH5S{`+k~R?}5)(_%jy= zN9Uf_hJIVcR;`(O!=wq5EQ$7**X0E7S*-%)&{H6&=d<uv@`h=CX4cVn$w`cD`}t1q zoe+>eE!DLsYf7@RqFTYvu*6@rJt!W(H2h(xW|<I(s~INp{RqLGT1j{8PKt#+26fE` z?ClBHzp79xM+d{A+)B&%d<A5MTB%IlVhcxhgHxxNw8I65aC*=%LKx`RVGC_Y@G=|& zoh1+ZJT_i=t?x9wwY~U1&Gt&<){a*$Ajuns<bJD*!@B2>b)FxTeA=z6X>L-z5tmnm z^<i<xmXIlP@jG&~DLT=$Y7;fT>DA0h;gA4@zY&iEi;;@#wV_kgR+Gj$f=E8LkYepH zL0zHId=&QowTBd@O?$~82n1EjQ}m=tlZQ6Mlc}T2aGaOB!)p1#TSL5QF&Qf!xoi1s zbh<gcT%R4pX7Ur&8LTSoCNZAeE2I==w&Ak$@Fd1sLhcBNr3UVp3<2A>%2a|d`$gW! za|4H$K9B-Q_TOKwhw*d4qj?eXWyh5qy>5oETcdNr62cLHlPt|Ya-vN&x?WxkqiKJr z0+f<TK4J5pP4~UbWBZ=MjVT8+bRM`%`BVeP&KkgdOpmo+c3YdqDnBaepTnGJ!M1~G zNX<9qL<9L`89F`dOuErdW`A0oKjsm^*#zGy?S<JJ)RBC>%^^%-?s6<_5q}Z>xl?AS zOaDH#B)?!GGNnx#eA<Nl!}{{)ymXA1wYA3F=wxmK>JvV0MS;vGZBMGRVZOqw6Fx7M zzO0cP$E80>EbX1;ZzC#GOFQ&YySNo%daswSEp981&ySZk7stHBkv}!+zle5cx=(43 zLHv(V3=B~+QL?ar>m|8)kdfupJlLHyvpFO2stmL{OzOGKKo`bi0&jl^2Ah*EceZH* z?N=FaDXE4knEB}wT}i_fkg?FdQ5k<EFPHR(cT9v=GSYOYiWOy)yxNae87umx2RYK# z<zb@V7qV}=xxIJl_<mz=`&{8ZT*P_T<k3>}y4nhHxvAVAf*jN{D2GnMh)jyuL>h|s z*D5lnm+2ikd(jj*qm$z6jnUQNtXeKCi!f+4N%Nr^?HkyZf>=EPM{jz@z#sFCMB{-} z0sCZG0|NY&0B!?Ot4<Tm$`x{yJ}uldT-K4BD&Yx<UT3<-Pxw0x?cZYRPzqY4zp@wu zX^B<_RR?9Uhdy+@vVv#2b-z+c2h~;Vz*~@vaE&u;)6&Ws<+cWP0lJvBZy*Ky94G`| z-09YfXS{FWRx!0c8hkk(d;LtQ0moSd4C!r-3ln-A*d=`<Pq5d;69=GQE}-beaFT8n zA5uK5cktCAV+iCZcCt+QW@s1DvSX2A;Tk>Wcx`*^6Aanjic@}znbgEy2||32RIb>t z(}#q-0rS%{HhZ(%0WEHHyydU$$0+<A-xCD3NS<om-CN%srnotYJF3i41MwROw<(2& zDqXe#L0?g;G?XvW5k?_JVLz?V63~|}EL1z>8Q817-8Ckqd?mjMg}EXMVZ<{c;Ca}S zlurgf?-u216^5$BW+iBdPxZ)W$Pye{E+zXgjt!;P;9g1r&p*aKE105R=4i=HH80{_ z&krj<FY6Ic9ZNgU(<hG2<$foI&Bog{g86W*plF!QOW*&o6hY0u+a;2e4{FHXUK@6& zXoaP(vZY~Wnn*=Ro_nn3JFM>u>DLk1*>_jX&PstMG=*`6vr6D>^4;}diEjI!wI@#~ zMPQ1efMwz~l+bI?rASTno2GL;f~G-L4vAg)`d7X&Mw*=3fZyqX(}l4wT@Ciy^1?$- z$n_UaPMGvu3R;n3UgZtoduqR)T79>l<W{@Le!Sd2f0GeT)_zG3OmZo1QwQpIk{lmx z`c=;|3`#4aWxC4?um1OCiQdIS7pug8{aKz?9mX(7f@ZGp+#;=d<??m`UV-O&k@L<o ze<y$Wkra_B*Ft)*Q#&dPShjTAfA_ZC4-PAh3a!HQ4l3O!DAegh?STA+sbThMLlpWz z)95J7WY{U{CUsEWFz=y~L*~>nWY<&-(q^@^bW$tUlH(}GI9^eRSxG7(eE5tqBa(?M zx6J#SpW<vnB(Z})hZVBg8eOdVa+&~=PlgX8Z~V`}q0oj2PVJ6cH(ZpZl7FsKUmQ>b zT$}K$*`wyD7cm*D#?J`9Z%ZDoy#R7IwafTEfAxR%*Q!vtBbm#rIen~d%DOSP_PY#K z5LnY^T>t+muHd%ll&BgF3Womc0NeV6pMnjYkWDd=RStZHhx_S|M~#+V+n9P6Uw<<< zhdeonnWWjw@h;F2JXK4L2`~_ug&ftjuw|xW^<?|!3`^90#NJl;{`U;?Wap2pXUbSL zJ)9bfJ|y#^jN^tPR2srl#|x50D;vA<-IqlKfIZ1^2SPEXUs`>Tn$U}d0|5bL)Ee+E zSo!V_t91G9$)laxb?j&^9!K0uT*n>loG#6GZa>`W-R`koc?1sh?d?B)-<$KT>}d+i z*d;SNYd*o`la*2nDIitN+FHv0O842|ODZ)Hy=Eqyu$a}P7**b<Xy4L~-GsZt(CY&8 zt#DEYadL5kKnu^K3nY|DlPlrJ!fryX<3Cj^9u%sWl<uxU_-0Ots?sc*_1>^Uw-9Tf z=ih0E5x)_otZyCm7tq&r8_swJRK8!l7CuRnysy~I?B60wEzjmV_rn|Npc2q0vyqeK zSC~#Ww@lz4@}_^yGNc}d56*Ya39#2rC>1R+inmG7C)IK56dw}AI0Jz+0Tv7yxTTUt zEj&!mh<=qz3=%L#kXPzg%3SNL+EvTAX!g$nO$z$=j6koobbUU7`m~_mqBYY{T*ZHe zX{TYZ`bWeJ_cByMyAG%Uzp4m*U!6g(MG0kLcojL#Yb;1tSP-vu{%?x+tWeKbZ+c<z zWAfa5J$p_qqv+I621@a8UGH+i?{!B8jnyviUf0*<*B<kg85v)8>n29m`a>(*<q<A? zpOUn?-pS`Wbpij-VnW5YS`JZx)r<FoO~%%%q>;$SM?X}$&`$n|5kgThU(}L%D5h_v zNTh6(p1E*E!D5rMz2x~3Mejl(JN(yXN6}`VC5i6VpPLkLJtdyzk1e;acek&%-!5KG zFWtG^E=P5bqY;U4l%iq7cOi29rDA^nf@eb-T#|~>HvNy?*?rD@H>gi?BeMLyRMhSj z!yi@)Cw|dCKc-VqSvR&CY<Tw1-})@&E3*aui7k|MI8t{X)-%`oK7Du4YbW7N_v&~z z*)O7*7{ncGrfAS;m8@-MloG;GON0(XJOD4}Bxs>j;K-68U*!(wq)37RC>weSUcrt{ zG9Y9}YZnMxB_QNoF+}ICpboL<VyLu=D(ewBR-zx2pg4;OeoScKu@Vn11oSDDjZLZ& zIjXX-GJb}Y_Wd&Qx~y%PM<8Nv0du@&f=@sehMmt$>!;)tF>6UbFa($*6T$w(U@?{b zAVwXXHJl6Z`iYJ)R-`pdnPHsm!=QmD#i3IE9ahuV*9kWz$9o`p$6dy!?R}EJO8<P@ z9&W-j?9R!>?a%SuTXbH?-tx*c#XanG@V%PcHYfi<QP5q+bx5{%FlNqcJ&H$R4LVXD z$OzJ>OgAulNOcXOYyAeCb(ilvH${5zI|O?yX~X4{KYbS($R;WFxwkf{Wu^HHP_8c0 z{ACc|yb1DqZVp0MD((5}HhuOxoxpqlWWlrk?$UXCQ}pO^>CvIa_cdYGfV1-=M-!`( zWPdzpN8b?oMZoZRH}F9~ueZbHC5t|r7Uzu<0f?d0V`2+^0bKm~KDtT>cWUbYUVtcW zqH-zFb>U+8U{jZlUrU_QzMfGz^@W%1TD8K*D<8?hv9_0>SIq9y^9oF=#H<aT27xzD zK~>zL$Dpi~r1b8)&XxD_SJ{Uq)z(sdbu^jViP(r~Y5oV5Cy(z=7KWKX8LxxH-<Cxt z@-ziiZe{@&=Y7N>TMML$?J;L2Ig#(|QD{wB>+)7fBaKh5+s|+vKNLQwCLv4Ve(-hn zt%m5>>^S{4tu<l4Rb^Op?c=fh<a1$r%tsuV7WRkQoj$-Q{J%oMAi-b5xi9U@zAS>$ zh1(h&nC<oW=pd0I4&<W$J8E0QepL1V5^m;GL*PGN(=Vm*-ad6m0g(ru4ihOoU^Sjf zagH%y1R-0;=U{Gugr%JGH4KWaC<Rj*#%2@uv854=Df>euFn7Xei!{snJA}7v#)4$# zKRhrW!;WZC5&WNyS~BZ~zLLpbT~|Btu|H`ky*2!<(hEW<!<x84zYD7xLL)Y?dk1NY z9&UXW*@)7Dr2~s#Q+Y9k{V3vxpk64rnpj6vD3G{63=A8(fU$7+6~hYSg{7{#GKv^$ zRhM8ae2yfy6tBaLPv^Q%*{bEjKn!zRv+d0d&FjN$`(qheC|qLt4?%TI!&fLOVof|j z0Mc<3bj%mXW5SN#(Dj~arXwsELVJ+=#g~ev<fvqrW)bQ!upwpsK{m%V&?|1{F}T&3 zKcWg1gTvo{{z!1TP?L_2$==m7n2j>^!{kr<we3z(;*%qcC!cV{S!YpM%uGSTY<Rc& zCixtUaMq1LTa6`%hsh_SFC?+?e<~^qxuAOQoLjHgP@7n;=vgsu{&gbP{ymYAIs`7I zhL*>6pBMP8KQwy7G_9W7tlmZh$m_H!dQNbj2T#4aqOTloZ0!ZQS^r$lcC9P4>}AXv z=8y8Acy9Xi>~srmcl<$!65GVd`51GCKBFF^g%E}1()W;dYftj{IhRy=Se*`BQzo8w z<%fqQ9`rf{5TEsv3SDxDeyrwIDD19Y12Hg7oDVf{BN+r6u)NvaM_sd(=;S@kPTEfw z#0m4qQ6WQywFdqj13}VvJ*%#5K?PmfTHX*y*VM0<+|wDoSfKX@Rf!(C;9&NTh9F^; zf&U2OUsh|1yM-Ss^ltTD`uLi?9_w)a@Vc<RFVJ~+q+ma>FQ6l^S9ub9Y!p|c%x|Kx zU>cTAf~)PHz(_=|t%ob72CwC!WCr__;d>V6)hwSAsU*%C2qFgX_Z)N@fPXZ$kfQpH zL+^>^2l(ku1_Nh6A*y^4nWIYS=){}mh{`@U!uSul_3NRBFBo#N75k^o?RwwdJh3#; z2$jwpC*fxTuA%bZ7z{40(RF+>D&4<DC;%(G=BWqnN(@R2?sMWn%6R-c?;53grp>5A zr13r6^g;0_i#<M*>dj_wEDxBF*J%zRN<=iBY)06^$`P53mDS`@YHQ2_2gTs&V!7a{ z1vNg`$f3(4>aBO~m*rMVQP(QFx*Q!%l^xi%<)cT{9qHx4#v}8*6JmN{sCN~bh#%S1 zNc-WQCprS9XwU>a@%_D_=<xjP*0TZO(X;qJHmRt-7ly|1eD%xU287#K(&4qj&9%3` z65i-}pU0lf&*cR+HIjs^j&_dm7JQS{@AZ77!+Tym^*P>Y0aC~ArMa@{S}E`U4YI&) zJLCUHeiT+V|0l@8P%A5HqP!2l5JQr=pWqaj;Hfe{U0SqM;eT#B(MvyADuei&iIacQ zA#rngZu6nd@OpWAXr0X;=cdIHLUB142kfuj*OjBgV#qEs%cP#?aQP|C8}cg}jx+lZ zmV$lPUde)Dd*Tt_{Js=t!*{6jrpkKj^fU2~jAmL2o8#4;3oztP0VM%bTs6BZ8$ZUX z9(T*2kA;`p4Z+qy^4n8a^GPc&AIH<jcXy`S#f4d1>kk`P`pbdTnRne?Eo%#31`XcD zeRE?{-cDIR%+vApooq}^R6b|QskC+yidVCx|0m4v4+mz;V@r%Dq<i+(4Ug$oo8okn z>|0?0`<@MGn}3uqm;kNe(tpYj7UvF!N5PbTtr-|4&n8(BNf3;I(muS6=)bRn_kN~d zaDe~1ISL<$!eLF|$Z;1TAYu&DU@BC22EY4uajVvlsL|dl1GZ;(M>Q{7FM3{AHQOV< zaISJbz?Cd}{;H_?zMUC$Go`)xQoCwjwrX23!`5i3lrw)dB2#8(J1-&7PU2QX?BCzs zgtPsx;3&%J8tE^;Kf?@0G{%4WZiGo~1FQ~q{l1=z=807A6+2Db7zpzbc%nK#L$s^U z=oh>L-xg~A-)8JFo-7L5YU7ASpqunwd3{;Rg)n+VtZl6u0^_2H&;86n((gk{4cd~P zN=@adGZR*Zk{`HJvGiB!Gt_r~UD!2wk7)07Qswzh#(fjutu7;)G17Zk!X=ik?Bc*1 ziFfuBV1$x!r=|VJ*HN16)u|JeBSP<ce7TMG=XG3b-S_*T_44lbFhl5vj)?)9^?Muy z(HHM7g&E6EueXlv@q_bEs3h;tTWQc0nH3+?Pd^gtPn<1vG&3}PB8^;$G+~gbA9=?% z4SJU-7Dc1$mZ+DGdN4pNsNI^`jbL<ZaP#DSRyJF|=4TzOeLU%oN*5^O$hg!{-iqt0 z<k(F3y=b+NSt^~ObnYg;x>|RSDQ@0yX3CC|AnyEm-JG4|YbV|~lUMyoF#pK+(~Y~G zyEdL@ciE;OPdKLenZS;gi|^mhcrUBE9Tc?uauEHh&>wg#4V*U0))VYqAKZ;vcKMYg z$<f)|+1`R<XeK__crIJyeU<Ddu$}+j%Lw@4Tf*SWrvZzKXoZl=U{9pyH)WBm_lna+ zA>^Lgzzu~J^7xp!9LdYIrO5fsvR*$N-BhZ>j`c)+k8gpYCS+MgaUGe@e)THqdEFgE z+`LES!I*#l`^Ya<6pi6y_w>|<&maBpU=t$~Yh5T2xfHMm3YrRQULP6R`3WU@&A*?& z{pw|$uzQzY@O0Pa84=-|BwHi)>TJdWuR=auC0PyZBlz9!(kBqsHOy+j6N~bfct9vU zOduEm1Oe{i08J@IaVZR?6-l>R#X(@|V94@>Jxzm*sm|-$<twy78+7gkdDuSZ<wEs> zyFk0Gx4=W=ZHKD6HEJKN&4C!8;cWf+FAtfz99OEb@)xIGM1AZLg_MpmK{2|DPUf7L zx)e=JW@n?oX+lm`$1^Jt8~myf&B@Qn1T(l_Q1}paowfe-aCX&txt&;Q-lEUv&R!{y z8b}q+Ga~ar*WSL;-r>cAs$LFP0Km?rKOaUy^saRsTuWEfyNz7aQ4BHf7D<rAEXGRR zJtZwER*0=tPKu+}8y}3U8Cd~wQ3Zb?gQ+fjMKvxfjoHLC{Uq!|Z_Hm!X=s)rWJmEU zC#LVl$tXo5`cpV{<q)Llhi+(1aSsM9!I`pe8-r&!#u0lpOO!f2yK{@)d3Ho}t7%y( zTQEAObc_&=6HJPx4gsaeg?v<>SDl9;P_P>YNGmv#>m4~h2t*`!u&==QN*LQa4>0FC z=kHOF_2PaaJ2dD@8SYCltS$QD2sJK)*fA_zVZe+r?38|s6tj%St)?*00%dX!dr!r7 zA4Hc6X7hdohfK0|d<|2}d72`8<*}*it=utDt?Y)0aiKzv8pGquh~nj#K1d9PvKU>= z@k4)ye>1IOOX7+HTriBWSYOBug4b)=T`Ch1b|e(ldA<6?KYtxpkzo79k5s}^D;W_3 zcdKkS8a7If!P{(`n=SBuR3bYa_%@H-7m>s$<O+MA!uhFHSXXI|t-~`nKPo(`Q_W)* z*!<{v>)0PIa=K~6C#J?W5;mx$W~!m)6$XzK0vKiNfVbwhDE_9_PZe12kx^lw=BTP) z!RFtMAByK=B*~Ze7`$#2OaC|MT63pa%O-3px-vREH4a~jo}Ygdo~-e0Bixs5i|5*m zha%ROH%p-lzvTR5ddC`&_zNnrDSLhqiH*W*$E`>)6>^&%mU*8PjeXmGA4y8=I<ZWS zzL3&Oj4Gs3_X~!wSZTJHbzW5$NjJy8D@Dp&{lnQQT=gnd!z<xjS_cUnR|!$F9le2? z7qas@t~Yp$&=OR~yckPj1Z?GdNlXb>Tm^hs#?ZfYe=I1ogytaj|5B@p-KoK(`^v;V z{f<||xZm~7g=(QJ1bu(i#We6QX%E?yYGe!z#A>1Jm(t<}PcsT@Q${860KZ3uRLdY| z$%I3npFiXSNUrFSunUA(jLuTXN3h9?$)!pdBf(wso7v!I@@OFY@i!EnkM~IXI^xIQ zpSLz`-}mo^kJomiCemig_Cs8+P4rjJi5=aM=0FI~xbX9m`aGP7gGJVJNuBl4<ngrX z*}=KYQdCfRF@8(1h_hY0b5KAGUm&L8R{bVH3o0lfD3=}Lv8sZWeqzW#So2$rKYL$T zaegbJA$YOM4O2QJVl;5=>UYO6=V_jKW2d*Lhtm(Yxit;dpu5PH2qAMmHOZNr_oJ)d zxh9XP^K#06RY&5BK_0TwYRIn6lTV&n!0d5trzddxxh5t$et7MRKEA53>}Wb&PJrno zDIJ!ekLQfEw6vs|_84BY!A=Hck+yPA3sii(Z@6rVkT(xshE0?E!}Mc`)cMKX+qa9? z<@x9P#{8F8XV*tv(c(^igp_&Y<02%|FxWdz`j0dA24dQ;s^D<{iAbLitKWpGquxO+ zktk6)&(^mD`mB`?L__iPbwUEQMv$WM#0Od6XzBq|W*=NG%HPblMF4(o9>5<({S(j9 z%C`U`P<$eE2<bd2NzI2&@0t%DZoC<$JK?@Nv^FPVJH(Q0inM0B69kkJXAAJhXq%bv zN}%u+Z??}%q^n)#`+pUkwp+MpA}|AG`E;oy^E%V!Ay5U}I<h|947P0F<EuPc_aQ#T zcKm3Rk&7~KLq)E}tW+KZia_Li(ED(bC2~T7u`OU*9~}I!9saW$^2V*RKVgq|gyW9J zpR`|v#L-3`JaMZ>sGOw>=vfuM`Cd*bvKnx-w)TedRN3Js<#v3e)T6T;)qA$PzUM)W zPmlV-Bsra301@Wj12j~k2cm2UT*7`Nk_>45y&;h0K{ZJx_9qE`cY`-H1Q(GHf^1s5 z3SvhC6lfB>J^2n&O^&yE@N*6_K^5FQ0HTvOPqd{7=WF?4%q_i|CJ=k6t}BcO+HW=G z*#{gOFCF8%$Qfsw)5aKyiJKIOq+&|?A$?@e0G9~q=zlwyB4n7CpT&tX?<Q(*#hJ;| zTJRu$LLD+9{{B*%g7HehcGo(?u@r2so{6}&op*Lp^T}a>&S7Ci{jM2-J*s#Sy^{Tj zLE3<3XEU+@fi~gYe)!(jS@zAo#8s`moH+3)i;6HO!AsTV@OW-Gr@!+}XG^5XME)z4 zGY_42I~!pjkmimH&{9~Os>MpAmmHo6tqgmCcwYw>H_oH(SaI7_<)YAuGH!4i_oLW` z9>^<4i|I!f7>)6ZNR(_2;@`t4%%ws8o!9(->-)RqR1&3cRG3Oc=?iwX;sBY^Cp|Aw zvYXioKi$F3w_1@|V3CX{z%ZqfO#(2B%W!*2rX$)d$c!(JPM)f}A=o3p3Z-af8YVR` znchNRN%f1ScZs2pkxD+;%#KVHp@<$F@<u<PN0)^X)di5t>t&jR@#?X-Q>+dPe|)zj zCb1Lf%$Q|Nu)TdAyhrn5aVz*i#rM!S9=aS&gh-n=PdM}CM8?2T7F!XZz(PkZom`G> zz(V(U@t$&XcB78-V1P*`R|oFm{28Fs!U5OyjyRGt=}0jqnT`V8vDtmyugMC#h*DVh zIvU{7+B683sn@Z@n-lv@Un7oA&MpL1A{8p_idQVz9vuzZbQCzYT<SZgA856t0`C`O z4U)mV9Gn$SEDmc;BNr@84jEJ5XYPRK8DadqU@J`q3X;-A<yYT3GPWMsUlRtYltYfJ z6b@YDqIBQ8&_o4D-&RaSxgHlQG|+-Q!&cZ^+)R*~?BCb)>^29lk%mCk+I<H3;qXYk zAb;{VInoC-uxhW8#9fn>Vj>Fdr;rQZ#f^z)rW1w%!w-H-*?}-;`^hnV3HOt#mOlH4 z!-_yMOCQDiof7)In|by|f%TvP^KFZV^0QSEw?Dg!rv`^D(TmXw5-W9PCg9Bwxtc@3 zynMcp-8pg~Y&1|=f=}zH$EKeT;$_u729wAu!uQ2}F!`AMEF_#^xL8#(H6@xxLo)c~ z=kPuB%>?GtD4wT&BFR(d|BR>IEAE3UEmv(qz`@%5z?Y1f5VH3`%f9J`BX0QsU6+KY z(3cu{5WS5ccD%PiYV`PG2b*x6;2WMQ|8}04Dse^&FRr>fK$X9&_ob}7E7N)?N(wm$ ztroy99EO-Rj16%a&_hF*FOWCujtG@Cm&n5u*;RyBFq#BS8WwcRDZQ?8cj$T6+M^$= zX^{Ol-k+XBz^aVx9PQLgPKQk?frmrJrH#-FZpLAEzj7nn4SnkC=9s$`dpg_yseB{3 zqPwknoc0y`xL0ws9uV2MAF>q&_n&b!>}g`}>N!_DxGdJzJBJ0vBMr{0IvNU1gl!s% zx}5KC6Okt*xNuoSMbK9O`Dv+SIy^&io_o3<#`Orq#ZVaN{IwG8n=M@IXx%sRBHq(a zv&^LkMO-b>?Q9fXEsHfE5d)~^%1A?x)wtfexLVouv|SIA(6*PK$F?`EkCVNy5)3?- zZw_xZMRyHkGizmNG*B1>T5qDF3>rGme{?mXPVQcxZYm$E!E7q*Ef%05|Ccr2(nBci z;46I#qN>!00S}2t)vbL1<-Ysh-={q<MJ-HZ%^joJmfX_&lXw5d2vQP9vlDfED=IS& zrtSOa7iAS3M}`=d9E@!hPgO#e6q@T))&<kdFeJN=l1h3o1v2u$w$2zSHAAl`CmZPw z3*4=x$1GqN6`c&tIY3d<BQLD}-v{TRtHTzSSOvI$P6``1l{Bi~)G2(;-BR)tnW4(Z zTN!v>5<7OjwcWu|Jm@p-h(-Ik^{m`puEu2FZtGQSdGyn?R!*-cZPS(*nL+2hVGO)X z0)y1dL><`rq3XLhng;ie8<|gDZMlW6K+f`Q=%4fIDxX?P2v^z3g90KdFwhA82A^dT zE~huqws3y9JTYaMmAx*fk9uY#RR?6~|7zuJEq`r8rr}(*iq4!O>Cmhy>b@*7M;Llw zV;84Y-OKC$xc7&oqoZ_wI`MvV=0irNeV%E%&fS_p@M#Ae>>}<KT0Xd{MoIX-ka@m2 zrEQdo>0*@|<^fN6yEdS^dhBAG*FU9Y(fMKj1;)pBKn|Z%r}(6ST}2O)8mk8#J6e=B zkxP+OIq=g)jmb|Q=pT^gU4j12Pf#<CUlHq4R2-ir;dg^h&eU{9HxfOm@z8?y8--k< zm-Ndlt8Cr`fHY@oFD=}Ez6vn4-=($A=NQC@nqoLAETk^DmMi@edM*Hmo;Ci4o=+G5 z9eNh}C-hwM@6dC>KcVNvzoBQHzoF;cSWBO$mvzQLiB{G^s%ryE84!uUPA6vh|GnTw zxj!4SN_rAs_ZG+ccJ{VU((~@U8D(;D+KqYFcDVSkBi96Sn>;5ul973D=j0#fG)(66 z{#!J+rj6-uxLKiM?6=g(LUm#f4xKIGG_t2cKZJ^32VVc&eCZLG)+0NiuCj(}qG{Tn zTXeJPF^FU}2-owXl&PgP_7Y`Lvq*UVJQOBNn<r6EA4a4PdzZ~>&jut`l;X(+g}uCc zF=;1+GF*KQw2wQ;aSwLrCxyEPZ=@TiG<-_-i!sv@JNKu{`o2xLe3AhcKF70B3gN8+ zI#ID@5OLVWgo(~L*oBW#@;141k4Y}5lLx6Id->C6nUkyQL|`CKiz5aiZ)swCS~GM^ z-rW(_HYE`0-9ESl9#EL`Z@WzB*xxopo_82Ot;WJW#`yL*&1`QrpB+_>OPnz;tr7>< zx61L|Q%fEm=eWle^s2WmrX0D3JVmN-RBxrHFft$=ty#5Z{fWctBN{Zs{oF6Rh%pn= zKvUEu)NOjgTt^_GYspSf*!hm*i!2n=(ZEeRaN~0BvVrUB(3fK;Yp7j-z9{tHO1{60 zu&>NMIJ3#_Z)A)YAeQ$5oHON|56u1M6J|&Ufc+3gZX5Q$2z$$*xZdsi69^DINaF<e z5FCPQ<L(Z@-7UC7<L>V67Thhky96h=J51+$@138_e`el1)z#H?s?X`Jwa<Ch{;Zvs zjqTE_qh5`A0`$*<F@OSv&V|AoqZ#<a+k@bd`UB_3N&5Q%mNihaLNu^cOym8q6EIHD zQ)uxne;Me%Ff?e{DG<`BAADrrs2KdTHSwURi&EC&X*7%K(jbEE8bIf)Eu~;CzU_j` zAc?qdyP4y|cdt=sCYmWc5$pC9F?exQBO1GmkjIqhho2QXdMBCB_lK-xNSdZN(^HOM zOH3!Wi2nWjBO0YxM^?9jy<YUA#Z&YJUd5n#wP3#kvG0r<@{f(hi<vT|y4Sp9J!xm_ z)YTSdibU^XbPmI&YLgcaj%hPT+-dFn?FF@}G)sb2Qk`3`tJ+jiV!TrwKeGniC5uo| z5s)yeH{L7SEH!v?5}HG}Fl!k5G#HLDa~jl+F=GvJa)_#R*W-O)%IvOx{#klSxV3(t z&0>5Ne!1~%o20?$+UNO=4-dAFGgS5%O9(Vks@Aw)u7fz6_|t8(k+Lz4ljw9MUZIr5 zog#CZ`%uFpm8Cn7?6VBxwNk-lHd17^)mleB6{Er=7Y_s>zrc+)pEoszaK%}!0ovk1 z{2u71OO9x_*~d`J4P!E!aadNHPRc+d`ycTTqv%JtGT$??XT6Tvo5fh--jxaId9gqb z%&?YzRIu)!4{s%&<Bo2p#?nZ14M=&c<a|OMteyl~vqxR&KWg*+C7=(YM~R@4`Hv#m zwysi({%F!pM~B&xi6aW9C852h;QQsaWt^2sbWsHJ`;Se5**AVL`=)L}%|Ohu+r)?R zT<kkG^=E(hVaPKSdC$|HJsd{Be;1V_*3*uZm=nxDv;O6u&Hlqb7lHX_N(9z{-4e4j zp}3L~+>}r}#6lX%)Beq<j?=g<9fE0`U<+3D%m73FNHk%u!}OnmUWXPD#Wwlmit9}^ z4|ZnOsl9%_!{Zj=6b|WHmg?%U>22=IWsg-fo1UbJT8A-^nuunVitY_qje%6uEhXcT z$kLjlkucze_ddNL$)l<nm!8Mqr|4MHb$Z<AA>+tq;`%)+-LjhT^+_3P?8rdtyFzpa zqj*OV>bVT6nmujLw8_GZ(R+dt4u`6dc$t!(kyVt;7l*vIEB#)I;i{K<ypjrE1u%A& zQ-|l3p8JX`C;;1OasdAU8ROS<=1U=%tBaBloBRwJ&#@!_9sOIXgjE$^avCW_{Gkxp zY-)dSMJ{M-PofQPoLuu1Qg9AE1*k{K4rX{GnNoqGA0kH$(6!u`=mp5!SA0b?PO^MO z``rrAyofwWQJ6T?eFdPwBVF+PO5m{O{SL@ct;HEBQLW*?%P9>%q@P*XVI3)|mU|3u zL(|uIuA3V>rPTqlKU1wym?&C=l*Xt!#S!08E9<#$Nb=nZKD~ZYAb6U(HNtp`p-r%J z-II^n@^R=Ra*x?Ue-NIGfZZjD2~pKT85ZW3{_+WfDRkp}#ZC2mfk^|jE}>&$5Bl1{ z+Je1>YD$1Wur2BcDwp#uA*U1Sm?p?8q(=P<*!ji9@v-GWSoFW3spW`{&8|Y=F~LVt z@5hQlvu&GwBgR+^mL|u#B%%KYuj_a3D;5RBm7p=v7T`_KP9m0}=^SWUvgN&VA^@pm zv;G@iM`-~(iOPUvBV`QzEsvSf-!HxWXSSLKDFuj)ms%-0S9oLrv_^<G`%IMOJ$^_3 zvl@-V2Z@r2R1lvrwD6~NUf`?}8M}w*H!Cm#4W<~$|5A+PaXjduesX*or%^GGA6QAJ zK!rDEKoc}VqyGuo{lh|of0iH8WMR0JXFGjghe=nok|jx7Jz7dn<IqCQ^vnySE8gtG z>|d%g>B_J8U359?1zByUam-eAZX5G#@1LXH4W8^Buod>WM86r;M-$-f#(CZFiux@L zjl{R~N7O}>lBW|+lEfN$S1Zn^KcK2z629vcd{ngn2C0tEg}&ejiLjKCZa$-`(fsZT z_hcCCaXQ>h$0nUclt@+>@8zz9iiYPYnos&b$O6KC1a7UPrl7QscS?|;QT-vp**S^n zJjD>5>u~4S2i9`4oBhAS&>1Lks~V7Hs{MH~L#bo<kdS*|Oj+XqmBxDoqf8Y#J;x%5 zbPsgqUxo>WpCw@odMi@L9XbnP%2ZhcCFT)Uo2be){UmD3Re!W`E~<QKZ$?o0a#D+E z1y@7zSf%N=e(W#bn78{xGzAb)8uL#08&oT-#8btwn8E2RJRfGn8uUwOUMGA8&{>LY z7S`|&_I&2nBtQof1GuXaP)tyjRE(%AoP`lbusPa^0hr}Wgh_l8ivw`}rlxe&#EF8U zM#!P|&4UQ*?ZEx}(!cMX=)lw<%wV9j!Z$A^AP){Y<!eyh1x3ThFoQ>chz%>iVR{K( zUXG&;ib>%YBohgPkTk17DHS6shU&KvR1CLi8EKn3hzw|I%74{FxJi@0<q-~L6C89D zdIZ8e=!4`UCHdU*yOg*%51fvIPXa$tKvUWN1x!_o=hU^+afF6`8V)yXlp*bf50`f3 zbJZodp1&db&88lSSWJaLj<ND^13V*-E#Jo*Y7$rT%J!_g0Sd4}O`CPqU}8klx%HBM z`+pX#8|GQe$LAk$Rl{JeIzohH%s+k{1WxFvIWJ(OP5yYE8EpKpzst9ra3iAdjrrHB zVNd&-F)M;worGvU7_6pA<v`U8`Pe-mKC<goM_|8PE<L&Hnv@iqZH`st8zIyEQ_Grj zcnPr2LFqqy7jd}0pN5TLY<C6e&VPQs_VMDa`}xCpHvb0yNBB(N`{;pZDNhGeX=OaT z@RE|FhIkOqgKQf>L7_ehhVM5<NeMhAo0td0?8(1TXLHr7VOC+0@oAfGx@z3|im`YE zAAe-g(hDl}?+FM#%=giX;D@27@3fxGMX80`DswmY*QA(i9S545VQD0j3NaaX8&m;d zY4QpfKgQdy(w3FyoJ?y^gIQwb6&#;>y2)WD8!x2|EN?j%V<4pS5F^LFqZ=#4;pZZ3 zOSEwXNwBUq%EMe5NaryS;Qc#|qEJntzA)qziWN-ant@5&T5}*J-2Xv}L4ltw3C5*} zqlkL~1qcLv;r%$${$kFo|2O8$Tq-R0KQQNbW>D3CVb0a$Cd0yj5I!f~)N=A7p->GJ zrGM#g9R+sX&6t@0A(We0<DM_iO<%(mBU=37YgMM{txaZ3kWJ7w9ZGFsGUYuK!FGhO zpYWO)iv6tw8X6?Zbdb0~3EIGsMZY_-d7fM(4z(P-1yB#81Pz>@CVImP6?w?|WClzS z`x`KkzwRrojn5pb-v3b(7)k9u4+00GM^ck3lKl!&CUbvs6J*Of*0!t^z2O)0JM15c z|933Kexm%CXyoC<$4`Gb=e}H8#?a8z{`mtIk^d>gc=2Y0L|Kz_m-MVy9Q+0BnXH9_ z<dPh`YzFnFPJJ#=q|>voz-^;@XdvkXSuD=OZal>l5-y_v8C0aYWVEOe)^9)TDRPJJ zThrtg$kmhzL*QHr&gqZlK=vZEL?lPktKV2gXs4A@6lm)mJQ6A9|JGk-gSUU{uRA>z z=YA8@R8!j@OOeg9d!pO^o1I<yJanTdn_&|o880)!WwA{|0LUwYCsk^UdNf6{?&y*L zU1I;9R;A;J#2)kfa#O_pJ4KAL*}OF4NHmEutCHMR$0z$l^tZO*djkUL5ZO*Q66TH= zC)`J}j#=7^lx{<COv)Bhz>iot=nZ7Qqwdv{bO5@2-kTrO1j^AWUoPKzOQ3c{33uvi z3L4v_;&!wW0*@fgc99=@rakpkQMz<G-=qIehBv1_8Z$)+!T>iVbEVTl%pWUH2i=Tc zQSP9{G+7+`t;Tvn@2rr<0(eU4xp=SV@_KQQTbO@bOI`0fzxg@pExQZ~Z&2tfqjXA_ zDc1mL@49|7B*5xXV?ceYvEs_LM%v)+IM|E?2kHO{w@&)HB1Q8HTU=REed3{5Hf@JI z(dBk(4sHNFYa*AR`-mn&8%l8zG@TYg>5>J!Q*QSddDXtGku`SD98E7AZy0GJq4s#} z@F>Sy3|F&OhQV&Qo;~DrX55=#(Jkqo7K8m8433W+7+ccPD+jKWC)4;gRpdQ}RnjJw zOYEjW(_+3ZvM9DIpG0@$u&qyRZA%$UpFKWSGn^B7`JK8Cx|f?qL`s@+lsMK@gy3`S zvVT}BYItsHd1k)2Sz0=4ZnY)n;M*>qyEjh0=M=b99QWvAs2qay{muNnBH|xZEeMRN z?R3D>CC;=mqfFcuZGtCw)TN~sJ!v<2p%Cth#isV;p>CQ6p1uV4WGzB<Z{l1k^}b(P z69(I$Y_`l3+Ku-7t}?~KruB1fkM(=B-Wau2S@g*N^!_he7g>n&ffNB9${XbMttxU> z)!V<yYR&xkZ^fzZzwn^&$#6%<b)yiMI7}1|>!FU1VAijj=!k3W)%jSIP}+k-CT%M| z_92d^o_;9nFSl;{zqobkaUTq$AYvFApi149*iW|Zo?Nm27?1kY@=J&Dg{X$H-84)b zW@3A-#Y08z<o|`sh-f7B9q1qE1hzu4c%uEAPLC)V9)_9#J^mrJ(YLn+#@Q{U?}{dT zf72l*dEs@3<9z0IfKHji|BbDl`fY}NqnL~Qr41EC3bGMpUZd#Y&QtEGi_4PgtrnnF zR*#kH9g<9OZtj}w)Q2yHDwbO34y}uKE|W?@|I5*&YyHE~kbpSiz#PrL;PKDCZ#kw& zta_M5Kj|S{86E)xzy6e;VP|n3@HfcHKe@Oyd)d&li#|i?Cp#cB7v9WwE<Soeq|!$G z(2d`O?~Y#oI*2!J*eKByI9gu+EV|C2*!qn>$c!pyK5P2}syz&!z`MdJ?rPR2k7o%V z@B;-#wzuaOn)_<61thCyIGeW3<<?{TkC{y_xp!H%8_4<3r^G*Jdj`hg&lj-137(qB z%m(Z5g?JI(itgL0-Cdd_N>VgklOQz1oq`g$7chH==?=&Q#Ul7M-tS^DND=Z9#*igE zBsDwn<M{BxPQ#^58mV0awXW?#py9)+N&fg6b5bBnA0rQDf9s|B?Yg_dGyWC6Y7Cc1 zhcB}IY9x8`$KAg97l$SajD!cJb^eJ-k-eiuQ`=-*cUDj85rFL<uF?0&jbs<9Dobl` z{;u9HdaY&GLUbB&rxgRIiO|ec1<cA6ZgQ?kOzgRF5Cbu}?zcX+BZFIl?D^vbj<zs0 zJdz6=lh<aJmUS0S^TES45Tz@zM$O;lbwz>=M9@_Pn%Anz(jXzWsYd68@i7c$I<~H7 zj9Z-C@aa~^;BJ-#t^^7mEaUlxWrs$t6L9FgUEN$X-kdol0JSo><`CT<g+Z@4CetMS zUM*8(Vm;VKYsB0At$^5m(l~WVia2#wo+OO+k_ZfmHM3T~eoiXE;?3at@9JISCTO+Z z_~TIex84toc6}l9`Y2E$6O2DNmh|%N`vZFXMgl?&^Yn!0$Kbb-Z+zU>1$QkrU5e0K z@mecesseNk^ebrBi-hX<f72e0J+RP_&6MT|R`|tC=b%Lrd<}LUs5z_goM6ghL1J}? z>0`80x{U5eUbxzqH6m(BYIY^5O=t$K6WnX#6SZkf!prEZ<A2Gc87?(LAesEa8q~lV zBqEOBo!lxK=PwV)lluyQsm@YV0Zh?_`ST>@K?LS)DLYo=)i4S|Rz~L#-$3V5!SM<n z!VAfz^tG_-%E3*-V7m9#9mCfJJ<{Bm%wq^iT}3rQiJ759if0^rAz-l2Dm#kpbt9j^ zCqot59e4Z%+-U!OhOs+-{gI7cGZ(Mwg57w52klR<n+1uq+bwvAW)PKJ+Cj+Q;hBsn zG`51h%9-&L)qIl#Zn2Wah}P7v10Ek~uBeU9HFe|K7o(CfC-s|8J{qK_&h>hKR~2IT z)rsNbC+Rb_*t}}Q&-xUAdM8u7Nj>TE3F4#|$(xIRsj-yPrL$g2D-tD5(WuWe)*7c~ zR<1*=XP~ZdV~2OZy<h{8cX?(w5>ciXJFuCB@^`qqd2E2(VXo{l`tBB@q1@0U^tTQd zA@%_U<$yNEj~I<SWUdaL3U(OqMMkc#igxj{5>Q$=`fv{Je~Ku7!Q!0c=;p&TBS0>x z^@U@h1wpj;KwVf;pAJS&w+$;o1e4-^zcBx3?p`GBz9Uz%E9D-*fsI8f;?e>^QcN>6 z(%f%8aXSJH=UY|&HnL_P3IRDx7H2^!aE=h`jvfl(<w}b)p2nEgPfiR(Y3KcoMBG(f zKGe7vusC^d^2w=sM7LIhiko>&bictI;*}FKi5`*IIbnZP>0sbVJ&wnB16gD_0l~gN zH4fdb;5czV%bQGvr@=)60<+hFH0YD|6S;47?$Ot81;@NzqE>-IZzD@^Wtwp1b+Ih) zMF~B5uKLPlq7!AxwdNL@B27EXaHC?kiq$yCQC*3cvlYWdiS_X8j&Nn}6T~OMwa8^Z z6?3CCe=iTQ{siUOfkE<8vAuiVpv8Lt1ShsE0}Qb!gn^1-={p3hI;{9_kMBNGb{gH# ztk7cu!iwWi;tghBq6{xNWjL8WY3vjDst=NHA@86=kj4z9rI|np93Ws&K^P?%R;Gx@ z>98Wrv(^-?=Hv+uBXuHM$3w&u&sHt@-s3P)0Y=_E;kyNMYJ0oiTa4eITHX(K%Yki* zg{r4`+#xzQPg8t{(ugmwM+NmC-yC~hLj?$B5qJIA(PHElD<+ACi{UBvQv_|{Yuc+U zmjvoW4IB?5!}ksnIT=Jw-c_-deBf)l1`pOHIxrnP%6VqvfKX49(65*qcnCWj@UmJ} zn0I0jkUFCIYUB<z|IBBkgC&K2nZ$ehqFHz5<F>)+)xp`mu2l2p>8!%zF8b>@{O#c6 zw~^)p5!@Bpg^$HUcAa@P_nRDsd<D%*vT5R#8su9@!8`X3@93=$1p4v&4>9BvF7itq zHhMw+=&~;kgRNcaPhz0Ae4tOzoo1I|Xwa)9A+2OtO|}js!n9t+O+4C)nEMqMf0~=e zoaeDqj*g$}Zod7?eN*}JQ}JbcbCdzU&vy4(j<+W)fr^f8A-~E?jjp<0z4h{-Lt@WT z<Iq!P%-kl$F0F7yw2|L!M}EI%_A%_kfM#~Br5Ac+Ckgnx40lXE54#gWrtDXIu=u51 z0BYoe`4CfQ3Sm$wSG!QGeymh+%lSh9{E`(TA3jp|=B>n4gBg#wNa5PUAp<s+!xn^Z zQ*vZLcx!N=z~De_Xnvr8@uW+gKg6`A-9|icQTQ8^^tM4`2MlyIzK^AIM!L_zNj+~J z>}_@gXtw2kn|>Xt#(usW%5;9bF!cH3HW&U`AD1cGJ%c3agi?VjVpw2eck7lYHuV#p zX1&H74usOjdXyo$?>`E)bm?%>I5R0T#CT=y)6Lm~h{^mTI6THuBfet_vbrc1D~G6M ze1Q-Yg~q)EC(Mrwm$a;VOg@XWd3t~4_jz;sLC>$P!{?c?&e!zD$5%mttFcocTRteJ z2m`bn6jNm{S6W2(G*ZWx>K8L8GN8EQJJY5^AO*{S6FE0m-4y(W)TkJ04!e@d+$9ct zl9C)txHD6mmOT1<>bLl~h%{SWejblEc-m)^%8K^Si#Ai6AM-ud+*>#w)yE(A)1@R9 zjJ%&b1*Y*7<K_uS;Rh_eGSDXBjDQl1bHF;9^Aa?Ptat}uJ4c>yBc<>Rzq;XD`XskE z_`yHwv6^(q301`sBJE#*78ZRaAaT~j+x~d8W2u4|Q;XVTsWF&429d1NTXhBldU=D6 zqAXkGv{F$9xECMX0F^Tq2^Nulb>K>aR`?1V6IQIb8DKl&kBz4l00P=P%vMNuTN;^D z<>g#k5aU4)N#p_C<sghks|-~w7Z?|_l0B2_V10kX-xZzBZ-XKg+!QG{%BWB3$xLx6 zhpyY23u??Pi>*@A+_r~9A=a$7hZ|t_Wp~`KfSHO_H7gtJ%XXctG7%DEtv!UPK8Iv( zargb<B^PT-N@hT8KuMZs{#|l9EPl|iGME%p^?^~Akj{c621#*`^aR1+)*Ae6AJqek z%183i_}k7unI@d3p7wpYe%jsvk8fz(e1_WEHqbmgKX@Ny$J0-t?6|a{s;q?r2l>{* zIg`?5H|b|{r^sQ-S8Un^_BJrjYrp>nxtMX}N%($KPKJ3?tHFuda#fd1rz+lLVu?4= zd=`oj1C_2!5MEE<2OV-V%d*Bv>u09fP-?rtFsW!EiT=Gd0cfC@?qduS@_p~U+`RMA z%1qb2g$E9=;BOA+_m7P#+S7@gqDZ0<A`*4@k>cMO?dlSKeqmSO*5PO{$wvb?<tAoe zPNR&6nPrY-B~E}M1$^0^S%r`g3b?5mSB6cBuG>sbN|)>KRJ*@W`QKkExZW+PfEH;$ zi*u?jCGbXK3D2mq4tj`3tMWW+Do(%P3)XxJrrKnf9$ia4Ra)sV3x6fgiJ2)<*9bki zI4c?<&^^*mSAAh>CS!6X^=dPOxw_Bg-4|M<7H_n*wY{A0Q|Wlc&Oh~dB3xc<JPXKc zm&NJlH|5~+HiO>^XrUoifv%R%TK}xN5c*W_{<i$&=xX%(>dq@aBy1e|bSXfy&jUm% zis9sC%uMWr&O-$W5r@s8!dPEN2>_rJZnP}1fFwhIvEC~%*4xX$?GCF(bf2tg>+#%w z(inZV>5UiiiE6z_03ZldIC_2Zkhe;XdP}OVcBgvMMiZHfF^-~6BLQBz!`4NlDEq2& z&v9E2Yg$4)24D{A93^9Hb?a<M(Gh@C<j56E7$U3O2N_xMUUt4w%;n33h6d-MJ(c4# z!#iW5;iA85;d7fv%9O<YL85nu3CvOFRjweUE%XP(i_x%Y2#$P6JpW{OKIHhk<#Nz4 z`}%Wjm2xjV;P@b%@UWk(Nq47k`o-+R8VPMQ#OClSH<hF4kt#<V7qjvhDz6E){BH0o z@k#@hlx0p1+lE5E0byJlLkPzg<`nZIc|nUJDz@;5S8Wsa05sJR4!2t47&Q{v#9uen zsHJ7&2=9O!3YI5k(&0Mg&M)k?J>zfLHqB4hhi@;0de%Ol&oj#4*NjsG=mHvBfU}*f zjA&@;@i`-p5TM(%+kqJVQlassKn*=`WawTxBvBpAGwJb%;;um>ZHct}5t*O8_*59v zIH@GwfW$E9-OWD?6GtCO?PK&H-2xSL5JGeWHRRvSiAS}^)=uYuDdDyu&LZ!$fqsLM zUl)w*A2+hnZ5L3yvR$tt@0&BdU!7g>8b(|<Ql<Lb4!d2OC|Li*<bM<IxD1)LnZs{H z>1wcOJnU-=rWpR3!n<O>*_A1~x|aLK?ip5g%XeB6WGS>&B~36dAd#`eX8jdOclE+0 zxdDQF2i{z&m5`=<%+aw&@S318Cpbe++YBBhv7eB+s{pemECww-Fls&C)`Oi4o0)L$ z=<V`t0x!fEpJ)$>6Uiuc9ly;#Y70FbYx(Pb82m7I@vsf+r8bjX&u5@ZxnuZ=O{Q)6 zx!7v<M;{_Ri^*)%7p|6;4VzaEuZLRc*!B2g`g9+o`^o3K_3HA8ohX+X)hwc>1H9$W z^U3wmCr$tUTVHSvXfydyC*dg!uk<?(C;|bFQY)=*pl!8d^o;iQ_-KCa)`~w}`=Qhv zZj#`xr{DGqPs@uQ;1L=af{7anJ9MMi*yuf4$#SvAXiBL}!Dz?Nl%Hz;;CTspirDXz zqwYIX%txecV3M*m`f=WhNbjLn9DCfto&1^~QPA>ke>L`5=-eQzd~Q45S)EK%Uv!-~ zekya{rTJ#0vzZFn|1_YShH7bqVL-bnoO;s*_Y_aEAVxZyAphx`I4@u)R){xa_J>i0 zI}SJDkzcl-d&#&A@5u=fmhH)^UWlplPL8X)Po0mm`$hTH!Q+HB<t-!R8{`C(U};H6 zWBJ4~L*aT$yA7+wqz}iPRq*97h5V;YM<@k2APK6-Lxus5B5_!uD8Rvr{bcEK7=Sjg z=XP*&yMN&#*Yk8euX1^aOH<A8lwBWE_$#;r3DjG~t2)6)@7=Msrglz9e}BM5*aE#= z!!L{n!y~LQ@eDL*JRdnQACmsDRb}0Wn2#Y(X-!S0*b$L(Upn0Sr#ii$vC}W^PIL47 zw*5$>^eySdZ{|YJR4trV@ki#(#Lh*Uz0nGADHNspW|4V*aY+7{ziA43sU;;v>&Oq* zFiw1^;?j31qHYG{f}pPNzkP+eCi90Upi=6<ph=<Kzpo-@?1B>+gFZIIg~p?axD`Cu z-n%%R9Jsz5+B8&DPOQ&wK1d$CJ{?%+GI&)96VYaB02BP`3_tndL=&dL0Dp$>vlQ%o zd>r0@vx=@N*^0^lf(oM0a~O|t1y?c2BI4O7G%YO-_C>kDRjj~^W#9wmSGPNbYXurY z9zNAia^6dLEsbvt3>MGWi$?F?|0G1cRZ*gLv9fK;Ef<)k;oF<w)Ov$9C5}4bK|Wm{ zExh})znps{kvaEALuwuB3Sy9YL$PA~>Hno~RSvkspWC&pON&>jlth%)s2U8pyIFBY zFpSXdc<jOLuTqpV(HtI2^)=%Rdr*<2jLA|`Ay<nnRI~2e(iow!?{ZX!^I^FGoUsRw z$>yy<;MEl!wqklRG$S!me@rM{G5JZ*y4R#JAka*Vl>8-14AI)?IN)+B@EVWX%cI;$ zgI;F?cC>_vF;Z=ah(+p^P;zedlq>2*D?l;)oGE29GR5<1nfo9Dl5E}!g*!b)kSTH@ z-a4plvZjPkZ!V0%;j>Uf%^6;|ncw|Br*~K@(T;QR&b8b4gk`;|Ee})Rf=%aD)Lq%{ zv#XQ3mt%*~=Ao&FhtK3}rX6a<URJ;MptcsDX6v;Fi+;Ha*q+>MY#@DH{iw%VziMSG zQsEqq$K-lmshf|{egBF${ju!s{z8lPpy~rdfBlCl4ACuIlL|W=?F;sza=mJsQ!Wt< zL(N-w@p_3!TsCcD>;|^bb`2%88HiX&QD}oO3VE|e>CUe^_XU@IJ6lM*sktvSEso5t zFg)d{!#X;4I1xkl*Q!Ii`zsNI4)BJX<j;?iZMw&ft?wvm2EX@z{~bY~?S4FmFp;|n zL0JZ6cJ9ElS~WY~c`iAYh9$lK)p#K839HiAxpbBVH-Vlt4ZXfBh#&!}Wvlr%4idq8 zl^(Zdt9dUj7vL0%n<EP;{x!@Lk(M0&8Jc#1Z6v3p&^IT_DNpFL)JZYjd`4H&bN-I^ z(yQF)*OR#?t#vtzR>Z3HBreq<A5l>qg!ka*i!QC3Sh`l;!0E(x$#C5Y22Cf#l2z{~ z^Y(>uIgfxHA^L#%oB55?%R>v3MuGDLXSDNHGHa*~?8z~#Cw5hbbqL=0W7>9xr28PS zW0&fhyto&z8ozoybEsuZP^NX>sR{F=#6U%XgoixlumI>YN~_hVMHW)fZ}K8`PfYvO z(B~7}U<fp7&|CDGh$O8dW-H9JbqZh^_klI+3b<mGbU>Nnf_h{TrGa$Ay8nZUu{oBd zs7jao15fx;8a;j!6bP~w#aL;`SBP&FSYV*#vISE8Im$8!jhhreymZ%8IMUW8p43yN zzuGn-=lggoYwhsR4tF*~W^9;DNI68rd4(Ham}t>q$X<-0TJz!A4=F+WYYxT(xCck* z*@i(^?#TYv>tGf$0=d_hy7YvwThYqYl5#st5YSj4mHBG2HutU4s|NxWR!&1~Uq=~_ zCD2~_&!(%KA)`!|{^t;T&8G2&f_peKkVW#uKD98ivMux7&SwJ05+W7G`u=Hxq+?3A zX6Dlt(Gdu50^4@2dE@dVpO<W<5dbHN5|X7Mn-N0a!b}W}P?g#+z<dNSny2_+e8{Fq z6DU5tsR9Dbpo0K*u(AG{Pxe3rVjx0snxRNo;SBW_mpMQv4;4KqhB^@Vdy|eFfkXk= zcFw=CDM1kyaMeqJfD{O1;<3mON8n8qN1!GTYoG`#49&fe3)et&76Qus0JqBvX%;XF zW~R;dn1p6c4TWX-rqfA3l%<kM(@Crao>MLg#G|5N2t}bf1jdj-r3Vp^?1IehUx%K# zYYFt>ISs&%SzpDbhEz_<Owg2eM5U2N6@C)Hj@tj!w%<e01m={ciK<tL%Tq?Uj61C% z>D9nxnzJ;5Zz9gD7OC+<4{?yg$TJYg#UlZOp#-+C0Y=25w1f7+CR=146G_kmJ9VC3 zwXTF4`5NK1M&r8Df~y{?us;o~*RGm_q2`C31ghCc#UfYns&5elxvS^bzN9N<<ge3+ z$#>3<^$oBiV*@@FR`Pks$~Rx2mukVEzbtL5S|y_?CdJehG!)YDL?zrBJ8OTHGEqz- z!e^uzjfP1{*t>s~{&n^I)L90jqcW;e-)`&f(wa28nP-vI>?TA}?xe@{z$rxOaNJ^o z1ySDH^I5tuT)&fk-v?@_8IY2mTtY$5@g`<al|OZluQ*%TU8H4bZOUL$5dxKVj99cd zIp~AJ_#^5^HQNvB{jb>f@;jma9K;AHTIt6xo_{hAUP)aj$~LA=9btkyqi^F?QD$$3 z4FfF(^?OOC;PN6W_r>}eQ-8C-+yJxGR`GIzhOgm86sW`ct~kGhwbL=4wT)Cx;y^NA zv3tnj(BMc$xhp#$eTn@r&15GgBtc+bB9Hz}Q$pJ_3@4Xd7O+(C;d3$i5<s)aoZyks z2^90mE65OD6&mtu9?!T8e+EyWBwU#6GU_j~uc{lFn({_6vu;@9TY!m*V^QU$$VKN@ zbK+#t#Y((fHE&W4wLm&ap@Y+JOa9KftSuAAVm3R0bhKXfY8t^YBGr>3BDxEOv(rCf zi!W)b23K8EZwwml-aZ>+E!o7JiFyb(f3qGY4@(X<tp4+>45diRpcY4DU|aC^Zr&!$ zUG+EQR%_|HS&PtjY?{1~)M*0cn^<C@;XgvEuD_B5R1a$VLoe($Uu6o$LIm77XqVau z^zyJ3dcqe2yc)kYyhP4kVP}gW8|Lmk3rvGbzJFLL8=t=l*%K8~X8aOu1`eP=K#{S> zs_U$_8!P!92}C$3{Igizt`q1)K#f7t)3;6)6ZL9mZC<c5g~%UkM{r6fM2<yTn~)_Q z@tGt<8XxII$X}na1`#s2r@LyDh#x0q*uf>tz5@?4G}GEK5%kKY&4M_U2+BO>_+wY~ zt#+52$2em5IAa|VW?@({EI&6yJzsw7cRccdLLLV2NKzpZEi(x?h(yxES&{-7O$m_7 zRp&C6%25y2*R1*$dxzs$-C>GsbK5V9uAXDB%wyL<i+nC(1|mbj#M`E{1PxG#JCz_J zPlt#P4%6k3n_`s!7cAh6v0_9_{Pr-afF^#%7RV%IvZQ2Xqts+!V^C){Leko}ObV`n zpPZA%pd=aV1qM*SpQjq86VNNW9i!W-KG0x6M4D_|Nre%btQB?Gz8C?TK*nkaz=e&{ zQk%qT__j8{Cjh~3P=^|3Nl}MN#pEkfhsKMLsXnH{!0wsE#SKRtm||Tl1yzbn@CV1? z)R%<GqZisI0+D9JMJpOBv23YG$YFm4#&E28L6J;H_a=#oN3>tX%NQRx;gFCa;3`OJ ziO!jTBr3MQOXrz?G(<0FM2#ON@KP5gXC@d1Ne0(1nY)IUfnF<VK%g`#Qc^YGiQY)0 zG~Mgve$jjO8=(2+{Y0+J5C)-5q}=kXA)?vSxp>yCN|uJ-0=|B69sf^xGyspT_Nk<@ z@~H$S09OSQy@GjA38-FpA12k)vRVUuf9M)Sz)|1ktY}c*b;Jasw$kNTZ-bM9o<2ud zm&*U1cI=rfGK?fN<0gHE(yEeci12xqMhogQOBi-38JrF1XTW#+VH)Xz&|vPt@3O9D z&+=%u)$Yr9Ho-h137H~!(PSc70%0xYB<WEc%ELwYU(@ONNWLfpTK(zc%U4TNeU#!x zp7F*drt^qOj8P%d`-1sJCi<%#EMRPr(ko_9!*(Tm&vV*gQF|dh>!)`RI%NVQ4I4!S zHOk|Hsk*bKbMl|dRTo_ZF<zT_aOm@3Yc<ztxk(fp+YF^q%U#2{YBKfZMuVkXG&{Hm zBd`HWNcyhk)&0_-6}7{)9pldVNtEDH4Q}#ZcHT22i_|@<z$HwYTIrDMTdSpND(S9! zkaTR4bS*h8%*BDOI$5F+2=J;CBu?^Gw*cY_i4>;sW(Nci00Cs#hQa`&1qvLlt?YRJ z6fly%<?G=aVyF-p#XftEzIRm&&1-m2Ru#%ik<Vi!#TeTsRR~01K@2r`Lm#N?mxp-w zJZqGv0^S5Rm!nb^P@qzFBlQOAM`Q9r1~L9tW)VwKFZ&69@c&uDY9Bl~grZW!qoxE| z^~SY#;V2pu$a`?H3KLx^+Orz8xSHuWFc67I8KRWfGti<MmYfd2d;PyFa_Q3a|J(p$ zjfB#(vfv(yfef0K5nBCPX^gzFsCYqBOSUyIh>><zfg;|!>`_xCH$kGtxPhWz5eyPt zC_KohqLv@(a}x1NJ~F1m)5mJJ5^ebA<nfsyNP&Lw)odl|ce>(pApBAIwoU)|>rQvO z@t7IFyG~y;Uoi4siCKZT0pSzGA|*xq`ACxZsIHNF5u-+$n0JxFPaz{K^sqLiCTQIB zAN}^EptXBYk2PNxhXQOdYR;$Qw+%12b-lwkp?f{Pbsu<iu2P}<``p4no(HUjm^?KZ zZ=qs+&ajby^TeGLOt!=_DB2QI)j7Zyi&hV~LQZ*V^xqyqB!$b_@s8#RCbfA*ZRzq! zYN8sdpG(D3DKXzr@qd<Hgs6AR1o7Xz+R(n_R!0~0ihW4Mt=<bu^K;L#7m?X)QFRv? zzi_OOll9n)55;5~2ul-M)K=ADNylWf|EE|Ph>Y(B1jXU-Cd;EI6Cb3>qf^PFf0<IX zwt>E^SreB>*Jv4uB+inNK#~c;lFX~NlcrFRvK1M3Pizj4LHl4VBua3`=NEA}^j(UK zELis;l(pZ?6b&j56}7Md2FP0Jdnn|e3toJ|OY4gSG%zmHSG`(vUf5I%VTR<YK=@EH zWWsq(h1Ele7DTNp=rnOQ60)L5AByV@YK;G+U?(A+N!&zGgqQzL7wKIx?nW}|D~7S1 zi~1?Ejso>lALG}>ba4r!&c%&-*k+UgA)ml)YUEno#Nc~U)_$}Q1Z4Yow*I~WDiLMB zDO4|zQG^+gf)lS6T_O!9Of*4+b^8iljTFy5Ra1Bv6h91lL)$2fMH6AoYfDGPP!o|> z_9OG$(#S(g{LX4HfFeTn3qypg%n~;er{n-PAI<AP^T@0pe0`%c4n3IBBB}Gxf^vRV z_#3cKgZ@BE=7B^3lG`Z<=#typ*Qp2;_Pu8PwEWpeIcw62=*yQco<&|Reu-wC%CRd> z>IrFaAbs~~P-D~l_9=N_zd$M~dPtibG5J%7Tk^l8nPO`9zoeO*rJr2Yo{@68A%H1V z<uF>piNH%)bPkp|FH8SSdSyM2*1*RSfs_=UV(dS%3~s&2_O7b{%X0C-Rh;3Ox{hP9 zar<65cjknnv*cqeIr*@YZAmqsqFGJ<A2JQC+gRxTt;#ns|50Ula<D4HQ~p(Dx?A%9 zvnuaKBmMuVGBLLiSe2jV9>Yq&%D=2Z{=}iU3ty0uj#YOA5)QIz9jP<t{FwDxSE`># z#2hbEiXq^JM3vDWS%wAk^{<n+;4u8ZojhZuU&{^*w_(#;KP5Go#>1>MIn%$hgyfVR zAobedtmcG$!F(!7<P0m?x8%L5NUW|JI6*e<)$claFn~U4fs$Kf9>Xplje;*&ux?sT z#nkBubo^ag+AdN`KMa$_l{#byO{~f$qN3spnFOi$z);sk@l(eU3hR@}_sfcPE~S|V zTCaK<iL-h;Sr!Yttp>8`Yt($t_xQ~ej+K-&f)+oc&wiZ@7=Pf9%b%yMx_FkW$D=vE z_N*4K7IjzKJh>Xi@y~W<bntP>+%fuH>8_U3`C~@B(r;KOKVk`uDEYr0@{dccuP=H5 zs&b}X4ZN?{*)lXETA+UHqQ<L<g<j7C_LwWx$}R1QTh`U2T2HeuIhE#QB5rtM9SbJN z;-vHSON#v1)?qP`g-ouk&C;P$pi^B2VB3d4ochd0=T57Dp&-S~Xv7tTtk%MeB$kb` z-_xJZUqlX|XQuboCpZmnE)O$ZY4q-A3T<CKWPqoy8|a3FPAVu33#(eyJ#;l%N8j&H z&K0h6bm(5aJ*~R50rv?8g(ZaAzpSrwQ4iH`o7fKf6CBm3X)CXg!-=eC>DLZ#Do0hn z2{^*KG;O$xO()yG%-#0TosncQ>5AUh{s{5#=GcpCpp_?^9DWeO={GfA!f27){3-GY zA-}o;0w#p{XAbq+Y=|xiRO(l?<=FQx4J||KW1B4-hl*MPeg?zHqN3f}@t6H)dm|;P zt7qly6h13A{5p#@P;fK7BR1r6`>|g5@q^NNyVFlr3WhJDuSu6&DCPu<Qqqy{)xW|A z-Z?%&t|-4SeE-qP=-Hq#fuzx9a{kwG=+WmQGKqrPzl^Q&4e$G`ibH=F;J<{n#}^U5 zwkY((?zGr8hm1kJ_eK`9ajGNpMxR(MnOvBs{22E{ErZZQbhJ7zG2O$nNwMNgvF}2@ zFI!;iS|RYp*D$30f(KK^c6%P_c6q;OYHxZ_qMxapP(3?K_E@HBBMYm1fFxlG>#O8j z1J{|m*2G;=v9WWD%<0DCRqmzo#*V@f<rlJpj<yPsj)udj@sHnNCkyID2fGaje$>5x zlcuKF&;Qwr>}oU-0HpN)$8s>RnOS@yLwLBnT|Qc{X!clr=C3}txCR0U8mYiRqGSaM z$_~lyNg)4S<C@ygqIgjn%yoW$7SG%~G+{m!h2I^ft^Ov0ETr2%_H!kB&41b7Sjjrd zB6(AO`jNFMum@6*)DeA?fP7JqG=0LJlXuTgc>O{hAEj6~ExviA<`bg`%{>UY*ofdF zO~5V^2(6pV=w#(XQ@wi5zY?PNu`+wU+Hr=~TcJ$gZlaiw4Y@)-^RdJnWG=^MWzkf6 z-0Zm^H7fXu6{BOK3$WPS^SzZMFjgu0Y#fwP+ZU*?;N&&4Hl#iqBy9Mpj{Y64+=NU> z5W9@}DuS#65r>Hv;V50?_<^2<9m)j_)hclFbz6u4y^ZMGpy0t0O^;}u5t(>^MFZ1N z?P~_C4iO&|;IknIJxLF-wUECP8aoY6==&J{FL5Us<aT~ENyP!80mA{FKbWBvO<KE` zi~7g52f`F94GH9o{F3r<5!4bZQ8e}4laD!h&g2xB)-VzhwzUP&2#V;23;^S+GwghL zV1NfS4Vo}HViCEz(syD=4+1hs;%JpPN;3N@-vQK6V)9NFTS}51X7OFJ{l)x>PBkAr zr{>YZ`24sxsRf1GW=PxOeKILtpwMTE0nbeAV?zm?P*-6dQU8{T?=r9wGygcbIhrcQ z)|ijtvKO)X)^un@)8M&Q#Cph6|8{cohLvOm_ZtqLF3_MMyf{HbZ{&>VP>RSa4mczI zf?5U<K>4`aeDbiQjAJMs)rs5ZXNK$87q_*5`^l9z{l~S1Dnf>$LUKP5HfV~Gh`552 z)cpwwMHmrFaS1zT7@83YGf+VS_m#AzXadlvb>|2&{-6-Dy{dStBp3Bs-%FW%9_VT( z88B)7t5MQXY?|(32(e!Q4f-lAVzz+vpWT0bWuP?k1lQ<iiNV*W^Mk$);hTKLgv4Kh zhI(y@mi>pBNBp`)1FzmzO;(&|gMqIsMlDj^m%bn5Fzh^ARlVMX5ov@%Z>8)_i8aWs zDg?Y?6xT9?ilT}3P&)3}F}4^KwXZ!aiKD#Q&whRWsC*$!h6eRmZ6!a)Oy(n!$mZ<i zZ&`zwz(b;0mXG@SMH=>Xk)B?X_`M>Qe?|e^tudADxu%o-mh*P<_GH)g0=hqmPP%+* zAyeZn#|=tAdgbklLqEHho$PzH<UQw7A+PoBCQ?OX-qkSGt%ka2#zK4%p_KIN`bLdW zIBfkjXFJ0|YZT+4=?*w4NGWM;lS<u4CY1G_V#_YLPWa}5Aenai*tS$Nxo7+f$k}qj z{Vtu*HA?g>xr4)#e0=b6g(bvcB4(A#Vwian=(d3IA4LGPRKnz`TLAqG(L}6lj=_e+ zT5$U!k-}OQQKnw|2AiI&&7R(U$7{=elP(nSQW=(wKhMm$$37SY1?m}*AoY(2x9SVj z_?t?u5XX#J8OFnjrYj)H&V-T36Mc!yU~wub;NyT7(awVaX++DGp~B*QiI}-KuAgBk zHxc7h<eRU1bMsHXzb&7UG3{j=e+cgin;tP2qnd5}qcKjOhM0t!AOB|ig^lac=quJE z;#URY3*;H}fx`mdFvl76#!xXT-V2r~^pUlO{+5BM!g2~(l=uB=iWxi(_tN>5>gS=z z+3n~n?Z*BR;<S#WrT;qb{CFq@x^H>D7}2stAnN@hk4pZ$AAaMr9Sgs`&g*T6*yT8* z^kIQ$Djv*YfM*gQ<n5XV_@ph|a^yI;LY<|^@R}UNmC88_)Jk^LSb4?hWM*Sj8*5D{ zNfF918vO)vhcwGll>jjNF&edwT)j8x6@TCk1;m2+)L5BxIsvFL<#DE*UzmTntdK(? zK!oK9>X5{gAWe{W<9vY?i11}Jsh+j&+>=K^6%if{)(18vp!LP!7<P#heWQg>Y_BNb zGM;G@Dkx&NQ;su5{ZbG{B8XLXm{4e5rvSrT#EUWvWQ!3r5Y)dgN{4|n9f_+mB-9!_ z-_Z=g>FA=`uYP{cUs$|ejQ&VmS1`sc6;|f>dk5A?A{AGlV(~|T2^bG*DzwDsAPjZp z9en{IpsH_jTTH1i?N+jXD{H3BxPbipYk6M`V7F;%&*pn0&dr5bg7P-NT1a3mDa{Jd zA@p=s;P(<X(ou8rK^`FS(U`!fC=Pu&!UPCm1-zJt{9e9)lUk|8`H4;bJyHUqH!Lqs zfIBD@OfIZFU#{`}T<1J>;-|lFl6VAXxIgB7L?86<h)fo}&hKevGC~99Tw66%W_G7{ zT(>=Kci(T$!NZhuy1p+=Tf|ytPg~!&t-5|b&RJ$;h`1Xa4>4|xLdpAQ-1d}3r4s&J zNuo^sVqVtCan0#Ump`7SI(hbFbY`YbtSw{^ixKvSTS2bE@-kHksD~SW<LnAcMD-#t zeA(o8%D&upMNtvQUB<bbYYn8BTY14XNJm5FsfF+JQO3+SQJ(4bTg*3MJ05L5?OpLR zY1i`TDN@IDqd9PNX5(8WJy)n)R9$n!XQPS4%(Ac4;*rD89JD*!s>&P_f0SZY>~v(E zQ3G@ZXGJ!|1oi6j7|2uGx<57=TSPYJ@83Ni$vqzbzHZ7pBN|p)nG3)f%{ZTClyTo# zm(>);*?8m>#=%Pg!BwdD4mp8M&PaW;5=FtXmN!G31766xWTX>e0XWlswA^;dtFpLa z2Gg+=vTY}IOvjUOftOTb?}*%qR5$KlXF^|BqO{kIotgN(7>oktiBX9m@5&v@$Z&2D z>PSTyp<(RqesPsTP1`$Y!aS_4EU>n@Sj|l}dAd2f*s4_scQ{{vA;~o9h;0}v$LU_0 zf{bX;nORGff;BVK31JW)ShyHO*3%Bes&1{5J+C)n4g1czq3|J5N`dklr{}F-{H%Hm zE|cf<W&<2;AJzlxj#03qiFm=NVNqHDNiYMn>!nLdOxyRrUgMZ{)Jb{u%)qVS0JE*+ z!QjsHX1>^M{oVCtRYO!Cb~)=u!vR>vnIKe4E?<)TTcYltHPCB%%s;aeI+;|zZ@H)t zAV&er_%Rx)hm|I#cUX7bd%SXvxf-Dip}g6=x~sz^7NIUpgZ}!B3v8WJXVuN;-1GN? zeWv4F^tx+nI*Vs|cSJ?9kf)3GFx$yRqAxV*H`4V2lSpI>pDwv)tBkEbp!(R>f{5Vz z&p#&$sYRlgBJ^iZ&oB@KiNL*_=!0mV=j%AyqZ``8lysg3+Wfnpq0UVM?o~?u8mae~ zdr&9*+IMp<B5ypLEgrA0n(OSBZpRw{sZMF6I}B#0vX|QrJIS6B^Jxq$O9#-vO8lh| z%6`0MXg59N%DbiVvaID{a^W_5Rga7xd<tXeGVRkGnb=*_ihZWRk0R2au&-vnedwD; z?;3+}D_c$sR!c#;sy3F69&YZER*Ii|BV_xuGB9&KG;}vAVlPLd8uq8BaE+a4fvL&V zPbuDy3-?B^ayUylx8I$_r)ec0d{fP?Z{k3opmV!}Zc1}4%*5hmm$0Y;X-hdloivdi zEUe+)RNju5=~L2BLL1ez&4B_XrsYs6-z7Sd%VR=H8sqT&Q=7lKj3C@=YL8dsb}_Ks z_RWlFbd~?Uym9+cYwuv_c69Pgq{Vo7zElbA5x1%PdA5jDay4i2^JOt2*#hE~tuixd zMjtZ&?&kC59U04T^(oW}&kvztIbRc@Om)r(>qH^%fE7;}RmZwA6>~qD(fJ>>U5iyp z0K?rs<Da4`R0^xc8e&peAg3JwSLF#Z#Jt62;#H(l)hoe0^>Ip2J_j|ZZzfwbYt~4q znZQO8W;%f~m&1-V=I)&KFr)$I-o2@>&E;h#5Wb{CU!tVI2Cq_|n_aJ4WM*dvxZ^09 z-ZsE^4ku->d?zNg(!1GzV7+Q*q>GKZ@qsYlah;7O+Y@$@)396IIlFIy(nwx9|JF$B z_ZbUa*${T)cDQyj>eq@kSVqmQ4!5Xcck7vt%SVhMDz=w*H-wM>&DEWHSSMlA0lT_i zt$wXSiT~s3x)jwFg6}6fn!ok=UG^-Fov^QJp^dKP!H%wblrJ7a=Xkyg0rXU#Jsv9K z92flteOzLkdZ)NQfWWjW;>O@%>&>6(Dy0m@qQ)#=r1Uv)g#c&=LHxMk5H?Jb$R~YY zG`|#oXn>?oZ?nP+A@iF6PKF<V<$;faO17xL*Ay9prWEnn{|oN(QHi0XqxInPPw5(4 zi&tQQPWA1`iciRwTDxmI#~N2}`VMCcn1d->2n-cS+L_PMjmJ)<=WXcqaWL_2f*Q32 zorSdDb^hE)!^R>;7WG#clYFEQrhl;hY2@p_X(9zn_h8*%L=B^35L~DPp%_j&?~f4M z&*vuzmxL51iU9XVoQig?w%_}g;`pOw3qRLc$ohN3TCZ$n*ZgY%Wy{uzVX2|>i>XmU z!G-P5uD3Q3qLI8+;X|#F@`l5Kr#z8n-`1Vt>_N+pr-sF$^>>>fZOHPY@{ZM=>G?4W zzYUsW(hcViui3hbEZISwrwQ6hve6FX9rpuQom1cHh`|FeT0QMN96WUKytE=dIv=mA zl|y_|si36|41q?^OgOaFm{$R^I*3aG*hi;%L6W0On;-m{*2BMJmO7;)jPSii!V!aA z-AhkeU@D<C@hHn%#G4pbq9McwudtR095OskF6UYj+$fFy1*hd2OaUa2Gj%!_EFfo@ zk`!~b?t@rE@8{G@{NWgE=pNOkuQD6!B6UbE$g3O9-cV!Jh8E_12O@UKgf#eVH;kNb z!?BYo6@kjfpX)g@QT#v0pcv)sT9|~N8=cWMh}~`PMH3dU+4j=BiOn>Vwn>z#+s>th zGQ+7ch#Ot~N)YsjGQP1r#qh*Qndxt(JI|Z>(Gy~be%m>T8-R6HvBz;URcB54(k>Pw zplt5ME_P&;;}YM4f4-F>{3`FKK^!Geqy259Ezx|EEv)|8@8_kBN^+&<+og|eK21#B z6d<^<mNd;jBdiGZs$ED)TuMnjuwcuz)RLSAPK4xXPDtV64~>cl<ai$SupteC05t-5 zJDe5)5d$#w1cx9bhwAP>g%OxVd=to-A$16!G=%{^AcDKUm3~H87R1mZ#$Pv8Tgt2{ zx0oexqAL|$c;4N$$r9iX+zo*Z`Xq~7mPSYuF-y7e^l?NWNhM-uEWC|&$ZUT5zuBp} z|FTmRgKG^=SFW0apytI{(-*N~^9QZN7u|z$G8Zk*5(oPC&1`?6C7iQf+tteS4fF`R zmC1oH0JQuLS`9*MzW%w`-d4_%fvt8~ns7?GyoI#VzwHA{8OnEPmFnbD9CErjdI2Yh zN_M%u3HdL94b-NqfuzbuolX~yfm=JO7UOgfK`QF++YM!Jg;+tIkS8At_;tBY(uKM> zPm*2*tXSeTmp+Y29*QixZZpUqeR_IwNk0h@^+E0JJi5W(TRwyI)k*1*JNVef&NejR z>SA6#EvOV`mBLVm{K17F8(c?)@{;K|yyXn&%ct(u6lbk}6|K5}?bv<t;F*l$fFia1 zK_3LhA7MZKFUH<7DDHOK)5hIt2=4Cg?(R--2=4Cg?(Xgm0fGh%!QCOayW87&_CEVP zGj(QazEI64imvYaf3Nks*0t=pfpKi<-#B(G)+2LIVk%XV&P>g&1ml2)%(rjbd;_oQ ztZ@rQGcLGYbRG~Qr#lfJb_zLQ4hK`9%-GEiB9K^)?o}}@8ouwmDC&9JIIui-&Dt+t zpPL}>2w2!=_}wo?KQ)?*X8>3ile%i(O%KY>Q9xTBfDuiYQ{`lzacMM!zQ>{et`5`J zgQMRPK?Sjmh#9b;uLQFB=`qH@7}^G3Fe)`7ubI*!G%sdpdS|1m8WH32@eP1|{I>sL zX5IiNd03|8jyh_cm8EYN^??yFDn-dMOTS{396zOg&q&=}b@HlP`39=n8(rlaV=v=< z!}F~~_h^;XaKL50IyIR=ovBeDmPSi~2Yd`?C8X4RKBw<PHsU=wX=LP1L;u1<Z$^ye zWJuV*anBU*AzW!@uTKOI_Q)XoxY(bLWe)bK*G5+H<D<*n%g+niwDs|^Y}QtIe+LEs zjV*4fTtSI4EiVW8&7i!L(i{?C4fo0J`M&eHh39ws^K*D}Hy<c+bM5}8qxJOfj+Xi) zg3f<+v_?e<E#gQHt^@0Y{^@AZKOAy3kpA+;qU@*-y|X>4bH~R}`1LLc*S*%2^`=K- zkjfw{UU@@)ubc${6P#_YPA&@e=#gzXmHB-x^*dK;>q0B=&DSEn<BDB8*K0Dt<=Yb{ zBvkY^u8eKh&tJ1qsrBf$H!m+Ou^$5xmV8+05z9#>D_C;G&R*L-D4}05|EoOx-y2ps zbVXcTj9aF$RGSXcU5uOV`gRZgm!Cf_*Z|JR<E`h1!GvJS5U4{N@jusQwRd+%UZcHA z2)2HsD_e{QP<a6fStH<-6@xf{j4?PiH(y{PsbfYPzBmZZg+(=_C_}7cRyitpYA0t) z%IxMw8)vb_5sDgg(nMX_IbpT~Z2bvEoOy=^>3iKmNOfk~^@ia3@TI-CdlQ_#dtWhq z@8=JJTAwO|#V9EGu#5+_Q?E?hlNb8@`&lQYUP#mQ%rBv<?%amm-=rQ=8xXMeV({w} zBg{G-EY5@%_X&*_Y{aN27O@laZ9`l^Nz3}+ni3Z`gUz*AjYzAs2A6oPYVO;1HMVwL z`NS8C-9+gA(3VNxbJCNjp`jO5e{@Ff6Ok!;8&~0l=z-esL8H<>eZwH+hCANM_j5sR zbMLvz^>ZvNKDT?`@bVF!$mVorPyE0O_)wwS?xGm=6#y~r9w2333*(uulG+To8m&iJ z{(M)SX@YoFLf{|t2+KH*nR7VLB<jWT(z4v^Z4pJzU=i6PRE-UNC#pwFpgA)K3S9{v zq6?vcoWJvtky=lf_xa5=P8OoCc~?YSe9Y_NZk~SE(VwO81u`<yFoNNn#?*~%Q4v0* zL1oh(0RV-bP>WqKvKVovfVEq=_*G)wHtEk*EfN7V)^3)@N5@0W6OXbG#Gtqux7o1L zeNrh3tja1L3euVT7Hrr>v0*4-={NIDIT;q3aIwq#^Q@y0&f0f_lik3&uNyg=o0{$n zlapm-WYH7EjU6eb@=glBp#inn<bhV|p~G-0Nxg;7d5nTIc{>vkNf8iEeEfztK8yiN z_a3YPgM4!vF+oM!DNy-yDb^SO@c^iM=8A~)Wo~{N7QK_B`(hH~8@t7RWisr?DO)gl z!fbk7n|Yf3IN7DDDSr!MajHiBMrGVoZXH<A&q-v~@kkUc%szjxS$^@NkqTw>K0(@T zMU)th;tV8VS}0?L;Y_5!yB}3WYK4MbK_mse0Uz3;{ul#7CZUajogLN1cK4@%QOSw= zhwEL!b8Y{bth<~!WB*T_*zvIU=V*aR#3%3aL(orHO18hgPcBQgaH3lLn{f4z82Jp0 zKoRL;Z$b?>>){F;4+Xiv3wvBCxOpE38+Z}V)ID__Bb}VG0B(GZA-q$P17Y)^H|DS( zX?X0oh*mRh^VHiqlt=Zyn(C<f40s)n2x&aA%W;AsjPl$*hYI{xH9Z!)KmFY3pst1n zk6bB0#Fmr_G6w)40_|<=6Lt8w>@D;Lz<t7N7^h118*egFL2CA7;_pww78-zmm-Ny9 zl=OzclKvgS`v0}0NB?(8FYvdd&jOb8a48dqw<eOf)Hn1XU2rSnP6U<~YArJm7|b4K zKiBkTi$>uXb0`AaO3srGCUseaM4d|*=d*5M|6SAHX0OWAw1t^y_7uABt>r+*7HZ;c z0T=te=cdeT-~7RjrND~aJN+36zo?LrOuU9dA^a`P*y@o*6&n&%{rWWvf&g5oldsG_ zR7%};@yxDYFU@S?HTh?k;8nY;sXtz3@3@s?Z-wRd-A?lZ^ZoV^3#F@$#dcDaWS$fF zf!GwZNX-%m)X;~Mcw0gvY_-0zY~MS1@T;_FY$F(Wd-XTGcCzUYr{6jH-@eBasi08! z4ROF;p>w<TF;XbP5B9Q+ue;;e3$9Uq>5aOCHtTS#x9DZ`-%9ga6a0{ieHvnUycK@4 zX4&@;U^13R{iKl7I0}XM7$NL!%Bd*;L2cT@XP4_lSfG}`z(5i{jH7{@&PO~NfvMn{ zjf0yMWqbNEm*Uhy%{+smLwba4>HkxUa#v0}VV^HhCu=z$sNJQ&d=;NgDgeDL0PPG) zz_BQ2Lig|w@D|KlgKp<7&%GGg-{hd)!uu*{a3@5W2YZLZ7<(WYY;O_~p|d(&Q7VV0 z3MZ>v5*@Y3ZZ`((tZaV&UK&3whtQlxUn^{k#L<gRSwo4=>KK(Btv%+!&%+G6wiQF- z6**<u047WnE=^acd~;_elRDi%8)4Qs1UNI(&AKSKpB8>)_wZA$*DJgkJ3Z`iGi<Mz zsID~u%z>qsfuD%A7!Da{sDz@OvKRCp7}5q1$+Iu{3+=MDpo!g&OzqMo3SxreY${X7 z@K3ftg<wr&fZmWQj8^o$%}=QG1-}QbHG;}{=?_&J1J#k}CVtEj#8Au!NnX;hY${lf z<GEdRAB#Ne!B3|rZ)Ko)gbJunmTVsixo)ngmFa^p!)P&vC1){d+)q|v_XHZ&+aeq; zLTcEy%Y8%M5j}4&j<0#dzJXZ<j6gWP#53-+`v>1t%VX5@;!GFdRQ!&UKCBzWHmCIT zM+Yi((ii4e5vDXV9m+q~XCEJGpVwdK6?7*4tZkkiyWP+8kWM|S)+19cMrKUyMYHQr z8h-<6)EC8|GnNk5!KlP#dL+sD3Ony-9)8b`c}v&e=f74^EyChy5IYuwf*1ubGzg&t zK6A+UU{6?XdbeOjF?eLWD?}to_@o2ge-9+x?X@(t?-Q<FLdV;`yk5o?oh*!}C*9k8 zIgd|om8)y{o=QAFmKLJhSW)6~{d3jGS95PGq=5`AE8*%|`M$=3A~V&20Ia1F9c}PO zfJ@+`MOO}XmfOUpYO@)8O@P6}&K{K%0pSJ%6loO71GkB|6)o>PL=*6$g7UA63YPef z@uJ|wl-GEGSGzm=bC+5Vjb2)m%D(K02^)2YUx~dYrMNkB%_Z7-Cz>-anlt5WJFf<C z&ETpDgGcOuTC-zW)uF+fV4Qu`M!tLR)YjPUT7GwT_UeWylj~%F%Ry>?nUE2xkLa_F zyO#F7x00aP>m|F=i|-?PEbJZ{_*gjcuCfhgFtw=yat?Bl()fSKe`;d5)dT!MDu|+^ z_C<sUk-0yAm%KbvSc@^YlPmx2xSxML1Fp}tvG!(M`!$}(uPD|(R+Y|O#N_-PTPo}7 z>m-u$Q5Vc1b0AP2`5$JTy99Th#^S#*>!eZoU3MzCdDWbPTxkt5YCr#JXcQVkin5zi zNljJKBvp^jR<{}bMpfks4;6yEWirCG8by-n%YwvEtvm8k;$342sK;BSK}i3(eZAn& z!9rEeyWEBeXX!rh)l*=Ux;nFlE<~$FQL=CyPA~F7bk4)|j5|4NtJcu5{gf-n9ucmr zXM_lE=|JGwtIc^h;Mb}zlI%XQ_&l4AVjD)caQ(k=b&PWhqkpQZE*6;d1>AXI9^YUK zuafChzhZNrQ$jLuZ4G9mFW&WCxUExwH-*EFUu)yl!{ax=tqq<Y@!#lak~$%~GlJS4 zYi{c3?4N&qZ28x!SyL&+QmyG*i^buzv+JK?1i9%~cW8zwIJNNZ!~Am3^8CJBhVAo+ z4B1+%aJeAf$v=0!&@&KsUvA#vBLV4TSo&Sz@_fP}tRa}=Z;zxf773~1@p1Enod=X} zqZcK#W8s6qFa2=cqtAnnw|G?g@=c?8V27i>OX`9}KYQ6V>aar{OFR;tNivy7@Z?B{ z;V2tzthkJ%1XKhU6g7gnMXV53*k@~mvu<}zk_+6|bk9iUA>;QQ$kaFm3%`3GtJKY# zGFDvlWGlAsE?Q>~{G)1tTlXTe%G0F-Ii?+f9n!<(RB5|H?Ka*EqG1t@&`?%zh+FRF zov)@bL%Si13ps7tyt@-*jqLlR)>9J?nsXDRHp^ZRA+8h@)l*}DX<yLRqimSU)vH(J zN~;2>3_V;OJkIc6@?F_=tYEn0|4zQ2EW_7nrvF2}4=ccZ+BHr-Tw?l?M1R0M2zNdM zTO`@Q7P^O`VC<6Dy=8qq`0iFMN|0ge*G@+KH@aBWG4|$yhL_#1$%}t_bvsC2p;p?h zFG}kk?BXR2A{LlxAs5j-)17`O1cHJ@t{w&LW|AGK!TH9Muy6db?QC6fdocd?^#)J8 z{~j&r6mTq1w|m#4wfSXL5AMch3KVJz^>PXddFbuv55dX58Z83D)qPJ?rM~qo*hqi- zEG7ALRSJ~k53znrFhyU>BXW9|%|GAtlbcLmBy|1Sv6-dfZefD_sulHKCs*7>;<5<` zxq*i6ZR#gOrwFB>E7R)d8HZTgCpiRB%Fds)puZ#d3{H$SSR$JvYLA<YXalfNPL()Z z5vXdL<;7^)%%I~eLMPZr&l9fMu|hm`|KaFcuK&Z)+k@U0@7$6|ZGGykEH7xmj}ZI? z=`q^=0qN(K8br@6-IbhL1Cn;Ts=MG?JGwozYe%Rbc`f)ENso0CH%ioMIISkcJZ%TG zSA9m)X~X;s;_;sceb1p00jn2qs&Pwq_O6_&<tLhm8M%@A;=eFTcQ#_FZSJon_X;dL z5T?B2&?!t-IM6}2NGq6dY>#c?j0pKwXdK2Hp-1pe!ef6IIf0e_2d*Dtcz(|KZ;cpT zjdA!TdUfriGyxd&YTd9DVa*yf+pelgj#|`cS`Dx|G3*(FUDq)#P!<X?rz3Jwd;f58 z=FVlh=iaBfon(IMX-lS{oS+NtNaNjnkRMS|69qWy4|fJ6pvo}R-y%yh{H7YJI_d}q z7!=}^&B6()8l4b=n4Mw<=D~X-O>n>*QohWm>+Y#1=qB8_2q9Z===bJb@Mzp0SFKz) zxh7=a^sneQdhmDB;5+MJS;|tH-}YFWjvYX*VE~VA0sgi9VY?7gCM$WbJmz9*j=&iw z#1z9;?9CFx))|3!ARTF}VGXNsS{<8e(u#$C;%U18W(3iUrNL`h=XvPAL%`&crjVdt zF&}*z?2sB!>wj@XgQmNsH`t=HEnrCIBF3~E%DRh6d@<v;f7d#(yRw?Xw`T7GIYppm zmT%td;g|XFqvO^_{>rAm8FC7fPxtDK&Q9g(%p(5-$o?}=UBKp@SI4UFuiy-F<eO&~ z)*?+2AdHTNrSa@<ZpfRik$vsVvRTW2wisG*Yw3rW(RVDuw@~SC)b`JfHQ|L?+F7R9 zUG@v^9COJ=IDXJ)*~k+_qznp!$6>JeUa%7sX6~3A6ejt42OMUIw0!!LtO$c6K!Dhu z`+3Jye=*`jOH&O{U%Xf1-uofXfQ@XA7aSPQ@w&_;`)*Mp5~j(T4iUh_k|U_W02@Ry zg4py0h?RwRPv-K~77J~@^!w4KH1%EXX@2d%T3{iu?9USa)s<=Itl-U%_`P5x3Ld3e z*%g%8wf~mZuJ3I+o++^(dnEmJ089(g2sEJ_7rI|S@4-18pA8py_8G+QjuA_?T=!B; zkZ)J-C@};oZ4t`-FlPwhyw1~k8dCi6$Um7S{{z``v(OpQYmu2^a|G9w`Ch+*RY7}L z^^#NA2zxCEeu4aFHlRwjrTznWjaPGR9Gv$wu&oI^DS}-f*J;68AWwRAjH`kV#WAR+ z?}S*q(j%M+U1Ab(M$MA#t(u+xTENFSA&#CUYlApq#ZYtlO8(`?UQ+Ze+bLzowo-Vu zwi9foOW}8zp&@GYC|Q5^zc0<!oneQ}b}aEDs$hqP!i9}7zFhpGDM4F>>(EUNqyx9f z9;l!mOq*3dej(9tDEyHwTmpbdCys2V-jOrBBEp5b<Z4=;Tr<D=ae|e~IPKj0;Y{ga zCOnp&k(50pQ7pmD-Cfaas#%8}&=p;DFu%y720y6cOq2}DZqKIoEe|{<i#M7x0nX&l zS-r|tcJej=K0Wra*ODbY9bDTrgS%f#n1R<kn`iTj_tgZ>#Ui#}tMAs~;1Xz|NBqVZ zx-a%I=VIvdZ@$dw7i&)`3;vs`GhysYbRoct;4fcwF(%>fTuGxWw<8|9d-4E2#j77i z&rLUc6ZH-4Pj~ixcgxxq!8r3Mt(_Y8{^g@L9^C@`0*6>NT>8@%og;AtQ1ev7-~WKH zWr8>APH#{!{W!uO+EPq8g1jVu$j!|;G1FH5d=f1G;{&hAOvJTCmlL0@*@yJr4g$8U z%LE!SE)GJvKnznr6rjIGp8+xe0Tz)AQ@}bTU}Ft|ix-S2(hmiR3$RgY5H@c%3^oDY zPJ*Q|?&Ck5X*j-bXI_Nlg}`ud@zLZVhBY_7qE8;Pa6H2v)&P^-0q%ltjZWJ2%AW}C z5yCdAT}#WA8eX~hOBDPw^@=&a%^ZKT4*59C;-1M9$6zwxiscfk$EL)_-Ak|#C(io^ zYh8wL{K0Dyaom#OC=#Y{+}h<#l0y0JFhtBDyba;zsM-X<gVk>|^J`BVERj*RV3$0X zE>MF=mgqjH8lWYRPZ!v)b8Zd`0hqwAQW~P$&YF%J9caj%w$A-9IT1r8?9^q3pAaB} zTcOMtAhkPkmqYNrnk~e7czX0hnNrZpnMYQG&iXQW;n4sY-V9ABXDSHjoT@q&AbBku z^`j~paOdQqS=Ybf^EnX@%m^2hL1)2tYr3yp@~~tR#6fFj*b=Rosod6t3lkxzux{OY zk>V5fLX;&tgHzmTjujNT<XoV3I#&uEbgO)BxEK}QSql^z6U9CthU7w3Up8pw{so)k z{?mU1Hcw~znj8tFpnDMe6ZtNM$ooQ|c^PCb73845;L=WJN%3&MIC&h)3T!>IEkijO zw8QmTCF4)n6E*MFr$rl_!eM&GF||-^qL|Ew%$|}ubzvg*P@x)%2!C9^mqz<lFIl)9 z)JxbNc4-j!YK1m6Q?Rl6=g4yL&R5#A`a?=)JBFvZpl8)?VS}~jTS`L3s2mTPGW34i z&FU{smWklSY$MiiJ=S@k6$~CPMIcqlAPZi>9LC+9Z$j+Ft;Hf3Bmq?*RbUk_fi#)u zN@iYNGB8BYcerRm>LBW%YLH6u5LI87_`sF)u5xHW)ee(Z=3z-2=t`7c2jSa93-NMD z+K(HkYS+ue5*J{;;xl$oN8-n<cyg}t0z}W$I_>E<6?Q|v6O*en1z>TeAm)yd4bxZZ ziG7=6-=&aEU2&0;osP+rf7cIzELN^>wCa!#tl`(wT_Et?z}YD0Ka8aOWsFlZp#+i9 zn~ZGSgU351Z!EJXH2*~f6ZK)=JIid!80SjnCtF!}fpqL+Ll0jWC^C-(!5r2teNzTp z=V?mqiO=wUto*LF6>4VMj(pT;i$(q0-;uMprmK}G7?Hx_r)elj$!kI3w*nRa-<MXG z#_h&x`8jgfktY7=2=ChG4{G54CofE98b;EOL=vwYiOO?vGYBq-g6VELyew7%Yg7iu zJl`%*TZ@s5RLTi=;WLmb7t27(S1uZec{$D=FBd<f4jY57ySMu`BN}@u!(K=b$*^J# z*?u}P2XHQd{!oVT{05<e9J{CesyRf5T9E}EHJZn@C`B-w8l|HSlf-UEB3}Qs(e}b( z^UCA5UK5j#(m+GrOkJje>Xqc{04#f0v2TrHPq>PQ&7B2dk~+T%&!k0u6sar`lEf=i zS)CChSK-jVD~1>cuUJ%WtMy@zT1}W$&)Nh1)7VY(IJa^<;b#R_<S%P%Uxir4xN6!` z&RE`l#j^twP@_Snv(7{b=r1~;2;Vc9wV>a)T9l*lgNMB2NKgdv9KwylFY*z8zHIR0 z#xK0=HcsQm4^{Dv8pAc?#+Ty9h?;EF28R$;J=`USRx|tdN^?W`)3yDbd>g~>MOd<) zphM9x+uXObeeV(<V}6A@);vuG`yHlQG@b9tA!AMCe)oN`xL)8j79OHPN?gHBHH|cc z2cD|>RY{`&3;>ySMEQQ<BO+d$4?{rH5^$lux9-2L<#cr+YBE+xa~e<13h2j`E%T!e zMj+W0gvR2N{Go}*hjBX`?OjoFeZ8HGI5Hv~iIT<>)<Y5z8-Xr|q!oqzQom=jq`unm zN_tQgbqo)g`~J<d@w=aov<3p=&oyETIFd5vuvL?<Em&4x22xbhu9bLQX^h%BFaq=D zheBYQPA!6PPYcWMauklfZqymgTAfIJYQl|5@xrBi5cXp10veRQ;Osde+7W!?1ZrBQ z<Dm+!`s;%|W<c%$a;|AF$TSPONsnB!9*PMP0@*NmD5&7T+gb!x1Wx*2+~%YenYjC5 z=f#OpwmWT>9udBKF+9`wUgzI(wH?!-I{niW&BQ`2D9#0D*~1DeC=jY7xRn{}`{`jv z%<hiA`Fto(c0nVQ*gSC52W81T>_-bA<@ADKiebE$ff98&$%Io#V*E3vv~D45Vzv5y zp0Ln6OTj?4MwYk<Hc?(i($tx6v2Lz(7<C1z8bY`X>)DnoIrfbs+fowfR2wAa=Q<V+ zwLn2EGNWt?eX&+@Fu`xQU+}f#Ncq9jae`U?08yP;tONNX*nJ^XdAv61Qj)c8dtJtY zK*2IvRYy{kD5|0YptN_eKrWhPd3X#klzTMx3{vlu4>cuhJ{#ym^|lzhn_*K{rYH!2 zh_%?WAoheAGttWXI137(-$`up01Cmnu93+e_95As##y;m`rMT*8;D&BtBkr4P545~ znEoggQronYC7@>wG;nB$sYY0UInMwFo(V$A`lz$Q%Nk&$jWRKzvx-ZI0HH^!@Z$Z| z<!TtAPxs!#N`T*u07xPLWS_P=<@);<BC0|9$mXD+e<!W~sMw5<4p%++cN*#LLX2!{ zg7S!TGX%?RH26WoIO3Sg5g^L9Bc#nf1{%wlLDgj)6||eIh|5yA&5UJM93HRBQvyq6 z&&ND>D6^F)LMpda;f;O)|9WWUQ%+vv?bw@=A)XN&)L}BcREASZegfvcP4=2;lSAp^ zZ!o3x71IkbW{%7lk%zi{c}nkd57sd}w^Mlv=MqeJik05U|0w{qp~zZs`CmnBysRrY z_-v)4!_r?*nvH|CwGqD3ZK$zMs@9CDHE$==$F6@Ll{O>x;Em@t17)NyOM&H|r`8Rk zHZwXqe#+b~TT&P;<BGC!_;O%alxDuC5XT5-M^c!=7-s-y=fopz2v3S2tf06tzpT1g zgg<ZHvaLZ3@@nNVLsEniz^M(=hDi(Z^9RDbJVwC8lGmOkt$|*&Hr|Aw<&wPgh$JL{ zG?P&y9Und8ZOx{cm9|p><#0d*I9DO1Tzcu=ZFI*DrJ#ydBDR)v<Qbvd^Eqa(NWPi} zoKE=oA&xc`zxsD3p>S|5ya%UE@3CHMKgN(rJ)Ye@nP0k~Vd;S;%88=}V$-Qwc^?<{ z1tEg(W$ISN{n3>$q<Z1*J!31#9kCqAq%MGv8}E2Q8O!%x%u@Yy;Y0_|%kVL@z^=<& zd=hXEFfoq-<a}HH5j2PJ>oBKxp;_avKxyjl5P?t7D^kElu;}u$kKn4eKu^bq>yzuk z_YRt*1MmCpMQVu7PC-JteG!bPlxiQ|FIu%lwro7UChZG|^Gkh4OS+diDK#dntxU-< z8mAsDBu`Gj@a^?~3Eyx$fZ>}8Y<Xb|wF-I6O^BzIgg$km?Y*t@9gzahrW^=r_}%vc z1{?Gj2Kt~UdQGC_|2|YuEbM647dZYrT2W%Ho44G}*EqOyq1#LD-;~<JhKq_2P<g5o z5^#4p+|F!CWev(5NBAX&RdhNLizf&W*NV09&XpGACdh6@2SGTN5^ph6w(h|r0uo|~ z#{nj!ztF<A65$N#s=_g#75>-PRfB;I#JkBzDeaMSHwj-aMc*IK^ED2yM)oH*x4Nf_ zN8aNt$6&O-vHbst_frHA@fHZ`C?QIVFF8p)P>}o&=bieC<|Ywxs{M-(+4~OaKu1FX z>B<bM_(97)S6cpD-sw+Cl#oslwNF+GCN#vdDX9o7Le!K&|AUDVvVP`qD)NqvOZC*b z-h<Nh?pN1OFOAnZW}A*#>uOciBq6?(0<uiyq!j)+7UV=RVW77QO=NGOm`uVVV(+@+ zEORl23U=r{Ss6{O75GpiHAj>43>Lo}s8EZ|QLi+fn{SD-8Bs-x;&c9Ie8=PK|9O0; z21@G5H=g->K`V|Mf8VKB6cYCmes;VTpg#EPc46`u%wHd$s+u|^mLWD#=w;A5V!s&} zx)LfAIEK;0qI7h0A2p&tIW=V&$(^k>7KWu3VWdq+5Ao<{3~ZqePXKke6}M)@{Ct>l zB3ZKqR+Xipe7mrCaKef=?kWW+g>ac(Bj_cwu|h`73-3nT0(*Y>&vz<CJr#v<Z2JX= zAkhCdFO!XmsR-hcesj;D_p;c#bQ~xMMAZLJm_W<-t@w$ik$307_ed@Rh3H+NyDv`h zzoJ8CjwnK}5OS!S&N?F?H~?GU%+H(<KY80IpgWJ&T-sPseq^tZwUx|sRUZ=IzyC6j zU7ZShRh}!JkMd-)F&hz9i#I!Og>;M&HH9HRg(^G8R-$fO1BoI%_)|N#!W|rre^F%u zPgj#U{C8CD9BSE?sk)>PG!KhQo~s<_9eC2Tdf@NN>WDc_4DI-=7B(Zne`saqL~OLw z{!fTy`yr4E)P$`w*UpJ{ykDS278csfy=7Hgt5Lg8(0I0Ets?Ibr&zBeHM@qrMf;6e zG-vL0AP{HqtWg*$LkUFi>MqHv8Y>lG9Nkc$nH5khFqf!Yl;{rr7ML!O&^puzPt}(b z)i>6)i!Yup%`u;=8??rFCbumyjAf8-FKFO?#ez%R^xrRY^T8k4nNZgi|KfmG|H1*S z+YntV)D!ut-Fm?iwh$&JIqDfdOktlL{{{>?z0>P+LtDk?PTvw%*}WAf(iUJS!ewI? zu?hb$KvBYZdQ5sW=7*)>D_`t#jrr1-*o%hRY0f0Z{7WO&T|Kr{dZT{aq?STsph8$C zP28dSS0m=aHu*nA3jzC5b9+Z9Id5rZ=NCsMK5Jlm<@d&mTU(6&a$#zRG1BIkKIQ-9 z3evW~T*3U(-~UZzznSC1dF{p5orxep7GTNGoz??LOdc|X%bWv0459M+pQDAl2$2~h zynj&=aa0HF%iSLlBD5Mk3ctrsPv<yZ;Bia2N#Hg?><=P}2t)w)Q)|%(sF0YdC4ZnO z%_afjFe!W~Mg$`CgkSE7B)8a0PEX_<BaQRs@r=<U2`r})uQvkFalne@JBpf1T#70a z{^<D+4GvQz@y*_;nV>roh-#DBp){BHm~T#Ns|bY!K2pXIF>VUfyQf6YosSrJx87bv zIz=m{?k=6bPO0z()o>;ik-w)gRL`hVQu>zPennigs^dDQqk8e@7<1aAquPWFuQ#*k zigsn^TWKj*!=HGAR#Xk=w&u8nJ#Ny|9x_F^S7Hg<dR@|n5>hE61|xc1llaXghwycK zf~(}hxU9y3<ipWRzj69*ejM+kf><wjm&~x>caYP(S|%hgUmqY8e=^b7i7%cN%I60d z?OrwNzdn1qdi&~Kw8;)1TI;@g<v7TBYR?KmTRUgbO|wD>Qk1xAP-dUDP*~<31`{nZ z+$sMJ?10+5>5(nshR-H{-+c0AO{(Q3h~;!2Jq)k`cr^*C`lKH+v~tnKt3R~NFr0r! z2fSqp0kLbO@`f&*7JS#y#;)q<=g24!-*}8qTwLf^;@_m$<*={B1@BhE&3P6EJKB#Q zuPcpMO<xcUbFo2Y9Gk+B^L5v<zAeSY;;g1I)=yrXN4ZwC+xd};1(I1kS)fuQ^Gr#s zt-}6T=IyO!MDqBQ-%ylV?e#ykXdP{vI%)&%5bug}owmvNBJsL^@Uuxr5_%>ViNQ|6 zqIIzn)@uG&*^0F?;e+e4+k}BIBBIyf?Q`P@Cg2$}Kri%+ggc&%&B?~-Eeh*L)6O}A zwX!Lsvq}W{RoY+TJMu5_9d{S1<17#e`qAiIPIM9QJh4TBp<6tKD{6d%|IA@7Y;uG# z;_mwC;ZJGC#%R`Wkrp#ENbab}#{Glr!sdInvzhR>CahkqZ6}U#IWs2V6Rn?L5_G~` zmX_}7{_(-ZpskbBUa(kgWKgU=&uyj|tnS;vru((FeDf{usnx@tIIyb2P3H4zoHn(s zBJli$s0IB^0LAzniixHvG)C*JR{|W1G3_4#)gi|s)hR1I4(asAorQm4^$;EFx+Dm( z`r`X0E9{l^F}NSypHzrHQ*hVuI%%c8>r{*OYvQ5;N4_?MpBrIon)%3kXV+dQ9;HJJ z<4pn){_<(snaD9(yn~nDtW`OQgm0~-w*A+7eMix*cYg%+mraJaA;Iqe7ex(h3@5Be zr%e0MgE!Px$=k=t6NhLarHUTDw~Oee_AB4%wX?DAQRO<45=1y`>X*yfhcW<`O2h54 zJ6oq5G_A1p4n=s+^-aokj$PfpvfhaG3fwCmUz+#J`nk&OE;zmb*4VIqAg8!@O}YY6 z<G^QvpLFYNn2G|`Cpj#Ja9vYI>6l&;a~Aw78Z9b6ioAT3X?sRpd1nUxDrC~#12Gw@ zIjLftl$0VY8d;Y3Bo&_)1tp-QC_+M_yX}(aC2~Z6&~(!o02fGwKUypnX-v=`4FOuh zr|8E6(}UnqD!4DZJ8v7j%Ys$kp0@r9re>?auwN(<-MsAW!$j?ax~G6S+e~|x`1$uP zPTy|cnW!VJyNMd0Ukcaya2VYFwD~8a1^rw%71ru;%S5hD_v?D~9yQfn5Uv|uT<2}3 z34xcnp_7}(aQMQv(4StxkNm>TNM6z{CKOyki8jR1rts)mvv*09cM}cj6Rz*gL*PY$ zw`D-HRJQYq*B0T+m@&{Sg?{ph#3}nfn5EQecpHqDj<>hm$q(k>D1vF4jHP`=4TO|V z*1`wU7ZNj^X-AWYzob<C1&|wMpy)tkSyF<w9A$pjxWNfoDI@g@92p><O0iTB7nd(3 zDyUVMM82n#X5B71`MazmcYRuRgy!n_SHDVkYxTPtsf?UFO^tpx-q|9)cyf>4>=keS zZ6$gX2~<jX73mU@?jHx}m#=uddv%^_EtJ#BfPHMhdFqst|AIF69{O{CRCdJlT`vJt zJT{z0jhVV%bU=e+uu7zzs!HLLI7s@R=HZ46Ql!WOY#Ec>!PgI~%Lk9UQf=!Q88eRl z%8KPlk<&iMGRPBY@)IvOpc6Txp6(96blzpH_LxJht2g~DZ?l7X=~=q2y8QLKL*J{h zr-4N~twa9te}T>KhB2}3f5GOyla$4U!YGT{s=et-Whua6y27b?F*}k`WCITUY;6V} z%J%&Ci!;b$%mR{fdNwUJGcc`*IW#ZrRfRLWcVCY+i)u_*w+|XScyn(~pZ<cC(^&?? zXHen6wnzw4lKxSkL>yLP;N@$r^b~7Z6{bqp0W>N!#vuJ&lfzM9pQ5`pkvVKL@9lS1 zYIA9B)vOmbJZ?H^(NodbQDNmVib>Qs(k(3j)pVGDeBZAlp@3%Yu+J;9{65<eg1=fR z_tksNXwq%^CHWgWvsLHV+4;AaX^-}*aSi&vP3hUUnoujhh`nQ24)t5~6py$Rk4>^P z?W=N4xD#B^oG%3p8|G;=3of4D?HRWk-1iVvW7WFWm#%9sCA`D)T*_yC;bUf>6KdtR zh{M!6?5jTW@_+C{Lb-jQV|i?1EvFN`B=lHos5|jMj6a-}I9{k63JI=@O>$r9S#gvo z9D26ToVoSBMCJ#|sJ(ZYwrAU`5HV-no$pz3ejiJR%YrX_tw_yvWJ%x}6QX4d*WK%* z61meEtxXoXY+beYJ+`)1;%!EL(%X0VdHFVW*nf$TD+oez?+EmIqeAjfMtG=!iRvrW z)g@;xnqf4Ul$Jlz*>9Q@fU|j-X~fFEk^A8?(+5Ps-{a~Nt0-o(w@Yp}#`c*+GDrO5 zdyNx*^IaaS#hvE%DoJ}UH_PLcJ(%jn@ACdp)Ep-gjUeA@YU3kg`kR7Th>wN5>C&%E z&j?c?t;TTZfT|Qee371?B~WTflZpQZnRZm7<<$4`7zjWzDH4B{F`RRl#eup8^^`j- zx?x)Xde({<WoZbol!Q|WIFKZ6l!MrF)mBK2{Fg4&n8diS$84O#!CUpUlIrOGkmGnW z*RMM_xX$h2t8a_oqXzmT<<F1MN&YD9C42b<pDIJ35|}_4As&$osE15Kd^>_Y>kU~J zv@A1}v)`8o>@nO?7x-&T8<gNh^ncK)H_0XNP`pT57W>DN^JOBu*PH(W1^rB?zVBPd z9LKDLK0y3j0{&7HU@X7W`vWu++HPF<DgTu&tvLiZT0RfUid+N#M#y^^aBR3-Yu`OA zTMUes2OfK%=`H6fHysA60g(pP!-nV6bUuC%7Y-7f@cM{`)jKYBY4*SEtyFR*@vBh$ z%Ms=SIU9M67B-m6EG3cPwvcpxX7@}oAuE&72lN^{<Lj)s_Bv;;-PsB+mBp*(=P=A5 zsWex0SPsmio9otVaCI0WYBz>W8&lnpXL^B|oOx}(Q`v&CyRyjPaHcW}$nY96l8y{P zTi#B5AfSw*p;)LBDRm2HH|Xp6!R!$(%A$io(uxTYfd)cAzzGHh2!VmsVnh7NddDVG zvY$bL0c*)bk^0`o-O;w(zbw|cmfC8hHka34?&5k`{%zb!3)DH8%hCERQDNskjJKv? z>2_jOz%iXSb-i8W<-i@YOG=rI1UN{KxOJ)r(<{4QJ!@7uO5yqFOO!pQcVFhLnqTId zZXxMf9?(o2@&Vzn!s(lR>RB9|T-w|%d)njixqGGgdcQLg?COOubtV6Ny^>>rxWpYV zg0vZ<)jmmhlx^HX&yv(Sw0%?%)e=5w|K9RGLuSvItN89`Ws1VCrEnV$iZ$@l^p=4C z7d;*)kr}Jw&+oI5pC2a2o(6m!t6j^rSn4{e!uF)%Vkxj}fNFfH3Z}N8KZL&e9tzu; zuIR+sH7sp8oLD8kMc79eeq)1{#}PMNg<naww;jSU!h%I0w8iA)s8|gwKdHtOJgA}* zJoF)S*#hV>$&f{s-$uwp%y($!(v1FOJF4N4l%uku*fhb1JqjAE4|s#@M@G$l^_T(< zf~FmCKx+skv<4FWn9Ru&8RUd?UX1<W!vOc?axgTo+-%~2;4`=CF-H>Q=`E<;2&1|T zvt43l-e^^IcPzhyD38xifWfRfNj~S;)Ay<*z*V*~AOdd+47L^r4TrM$Cc@{JoZ|7J z>O+?SXKs`Kc*aT!<&rtYR2iRb0$g>R5T!I_>P`LhYUN0NX*JyfP73r(h!x@@eXPau zFJk%Hg9QCT1*Mrgyhb*8QJsb1tjr@lPxxT)Py*}9ZwktQ4AE~xlgBV~_Dxl!1>pGD zUJ^2hS;m<r{(Uv}nY%X4Ux+xa#84ULF~A~!ef18KZ8y$2hH<xh;Mq9PMcM~ZW^1Wo zLCkUTqAkZ?qHzYDi4frNWod<n^WAaG3W{|Pm6EqLTm{P$u1TN?gV3%hQXMWDlfW3w zc;F&JUl4+d9OCXzw#6KlR`Zr>T6cExc!d6Fi#v-ay>-{7zxcwAm?Pk`C?HTap|On& zhOz=z0(zxtf;khBTshl%aI2`1MgjEO*g$64j$^Ed3{#NNb|D+RCr`~frfC@rR>G6p zvi_O3baofZ>6{*Tsl~8t)!v;)o*d^SQSi0a9IWi3l;u=-*Q6?{e)Cx!Md73(Le>fr zE<}AH>Jb45cHyG$ivoPdT&%vc4$+EG+|i>1N8p%Q!)0eO|AjHhR#P%8U`pd0n^fTo z%ZRj<Qyl@KnJ*HMC6!pSv_x#zLDsj*2*8=!z{-DSZjaFa>{ta4?2%6b<P(hwatEZ& z-$5_lJ?seAFLK;E3DdpTN_?Ch-hF1kb3IBHr=SMgnYo4n8nr+h|NGeOs9$d-I-G{{ z#Yb)N0?C>{@!ExZ`z6n!aI=v<)_Hn1^0*Z~zL-1D_wU?=3p(W-70R^P-|EHrSC)*{ zTKyr}TPQ39@(<zDbM_bhRZ%pQ;wFYk(ARSaiz95VT)BNgqHPMI)U}{TA4wUYK|C%h z;<m~MPTnpk5}kg1XZ7k^2Pj!sH&~6(6#O%KJ1umKG4km4x11<tM<(XJdtuep2_6)~ z(5Hm@F_U(jrh|&Ejwxx&rk?LKA7c``L<=P{f^!$&KBSBzJ~oFxSHcFg3aGaR3IkVv zOeRfP@JJzrFV_PUr4Q}3{pvXwA5YyE4t9JipTBxtZph;z?HDkctqc$k>oj?W8AgP# zXMhSqam3-2*e)MV!l^(4PBD=B4?d~>VMzt?{`Bk6eSFzL0Sha~M@lqIV-;N_anBEk zP973Vd1bOg0qns0E4h$~Qj(E8*<D((F!~$7eB6nWQ5|IJ282Koo(dY^q}FRbpFGV& z9BS69@2g&p?!yLJ$)KXCg7-a#%bcOK(tUPVyw`p{^YOC!%c0REVy*1|0DR_m-`d#e zE<Jp_zEg8~rusUOqZ7dd<z44Gex1czi<JH4eDIA5Q@4?hn}*@}4tbdjGl7IWv1q?_ z3U7o$OW1g)*H24JD!1lAD3TCe2~a>Kq)avitDIIql~qIa-6X%1YBn)#fi^0&uzo@l zaG9cbc<BEs8Ls=XxNyG|jzI&5dS0og{FMwabg_FO9vcN_X^WkTS6mX2sa5VKtBzkQ z?h>pENnuT|ZGy?jWVZ541CU&p{oZfk3XKdVYoR>BWNX|eC)S~*+_=aBC~9Ym9mQ;P z9cPY7wThZeZfW$U!DAhJcCK;BWx(*Yyy4w*jn|QI<p0Sgf>p$#0y{+0?j|-d&Dyxs zSX0z5ONG-exHj0aDs{K9z^0JND;0^NZX#X6s(M=3HryhkdfK5`z$BGvk869vq{o2= zsSIAtlP0exzOKVVQHVd{rcW+-v#gc6?AEdHjn&gTdz5AMU~9JRky2&or|LQ;*_7-R zhoB0__q5ft=J=e~nCF3olepjg#!c$?UUFolrLGw0Qi)xiM-G{+V;a@y!k#Uux04xC z^^Y6bDGy!m)xu`ZqrJ_$`38+EOYNIy$&Z&YmrIwFFAIl_tFPC5hY6H;=a7_%@W#xI zesM=_)`kGPoqf;7j6_}?mq~7o&@7MU!<>2vWDEjR+YcC8XBcv|!p_MwJR`jkh?@}3 zo8xogTpx7Rhzvkmx7O%A8Yoi9L8c*yMsa;&(-2+Hwz{3#kCG^tjsV($Huct8amuK= zRSeiVB`-LwOuDV90d!Cuz1KU&+(CT}m8W=tTwgC%oIJ#qk@j*y27uSi{o9YvE@u}$ zEwv}f*OW4G*|4zEBEzw(JCY_nI|B7q4&Qs49vSjR&%&f-lEDN6p@WM0NQ}5KyXwhQ zxMyi1S(}DhCDn<nV=Aj^xS%&=qUWEYS;WtkHCBz!#M(&)J86MxT;f)4kO^-I$AzdW zpL6lP>w<49-JL#s{GTuPrhI%%1m2<#cen6T@9HwX@;Sn1<WldY_dmZ``f|$F6p~hT zhgd38w(&$+y?1TVot@JzzPRX8T)gDQY^UQmsk!JmiMlBkal_!Uup&w-)JWMCSaPdi zyP|EK(}KV5$5~cNwKFTE(dxUWEgzL_ph&}BvOcUnR0r=S2k+i`U~@v1&D`>sEU9d* zT^qaOqwC*wPWeXpvkv+hTi#v8Fq5+PC_J#i1{>qJ_u}!c_<R%JI4kNpBk2{D`r_sb zp1}aq%U7R&g7_5t6b%E-KWn&G8+|*TYW`DL(Zxjz@ykeloMI1tZ`2txtH2CW({$4{ z&f~8;i<zwS*eN8|RJdB)Uaj{q*Hahow(rL2I@APz?$dN>Ykm517?E~wA^y;oIwr5- zbk-G4YXj)8F6liExLrOOwIg}W1t%Ze;^RuzW)|YykE}~n<b`pH^{3j-*_-{_$(OP& zGVJWBY1;r=E%@r`66kXaGraGCdpZlbm}v-}lvbzY;OAntU8dW)74+!{W|HY&!P!=Y zXYrSsd2z~;UKwYfx}~5r>3Jbe#maFO)yLjd)9QZYw|$O`evZI?w7w6_s5dNpre|N^ zZ`sL`dIR{2PutJlI9I|xU!w$*Cfdt`fjL<0`(X4W>Sde19!_`Ny|ug7*P?L;>lc^D zxA!+IH|xNy$~Ccp)5%uYH+>P-F7#!su}i3@%(ps{w;?3|9fRXIy3X->O7BC$$#|rL zt*TR@*sk5Y?qFngbyc<)Wa=^={%!y9tUA<RN5uR}fVu`1Z>8Au4#CHYDgqTTj1R${ zFZ|OHWmmv8=c>m&-cXIW<XWYS3-f%<Sk{(yBf10YWs@+D$taxMv<7^3DiMTfF#F?q zn}1fOj~1B*7>AYD!{|CI)R^vNg|`Hc^58tONPg-J?zZ5MKuSMS&m=&lZyvOS<5X|@ zoKx~}?M_!zIZPx4aI>9Kh_^Q#bsQK4RK#&!*j8IE+$i2{g)$96Fb&mk<UyAywa74u z7o9@NDPxoY?*b7+S@tNUAX2Dja0wzhf+a*ZXbC~OFC+<Ipe0vT+~_K7k;)$Koy;*{ zD3C;OLVy6OqHIuQkRmD0E&qZ1QdDv4_lO{{q6~cYFUl4yjzCErc?1b_Ju|X0)=yeh z2Pr8Av~vH<>4B!p?(-Pg1i<u>^YixK_2TU6S)sgk!NsOz<5^ie3=*Q4yF??D27;Fa z<d0Zi&9GYf$%+lJ1iGucSmgC?w~$HX#=ZC}i=%o79v5QjcGx{aL-m7$TGiN0pKz{< z>I;|7m6{fsb@(~+I)~1`MkhU3Oe^FzZfdf=>;1+DuSyIiD85ZtiX|v-8)ZSu_c6MH z8D(C^NGN_BSPa9fl+18I-Fq^P_c@@FOeij2k0O#J7mAZXPcT_Nm>r$5o!z(G?SBmJ z9+!*yQoBo=yaZC;^BJZ`(Ti2z{W-}Be_@w#IjsBBLxsR|(oQ&l&$<5OUXwSkEE%|6 z{F;Y->^$BrXi^I2sor$EH@L7peGUA#P~}!X-K2E1Aa<6(N{iP!rGxsEvj+&DZ@^iP z&x=xBnAVo)MDbEHr8P=7QmMo*i}GXkdY1fJ$RLVe)({Egdlb~al8&(_O!dCbb>r~e zy%SJ-R$(bIl9A}k59yplg4ToU=cm?V)x%Q~!TlIi@!~rAkeQH>i?|~jM`nbkBh(UT zcpGkfn@hfL_JQG~`(kI2nHqxoXHWu$69Az9Vz->~oItjES%>>rOE!!0O(d)f?D|%J zIV%`p22D6@z2^(DA65`Tw-qKzyTnA`on4b~$hVm%k&JhkvtsNsa1nTONsu_LTY0d! ze}7mU#lVx;ge{DS@%jmum{61>$3nP_H58Kex%BHO#xV#rwOHn;h|3ZOF(8W&(D6CN zuqEK4#T%8Au!q`Q5_SgHl0^B4GA3wg0l(WE<aUOkn#Je1>$2_keQryORzl>VlrRhE zDo?iAOMR|%)NsF3(N;lzO~E*S)dT)G1+NPAt=gZfx#IjvxOB6soAoU;n-<1UbpV88 z54r&|on~z4+u^SWG5CBUn6*C}KEXfRQe4(o!a{7RnW?zE*9Io*iLcdR<-Z4ARhia9 z&8P_hx|^WHRG+uX8U$EDOi!$l@|o0`MB`>6zqlKtafik=@`5FC9V!t;GG>w03C3s1 z1dvJ0O9@C10*vJOq&+q4Oq0dx`7oYZz>+dxqQR1|sOhB8u;nr8qR8CnXBYxdP0RvN z&AZb3B4+NRaDq|M34N%;GVJI;P(X=fQbEO1Jt~6fU{JuNnIIzqAu_-Q3&t72QBq$( zjF)8QMD5pTW{hgW>VM;(6^mZ-Y_=>dme2{u<gf%2d6^?$6Bo-5hL43W<N08DHem~t z@Q|<Ttt_!TDVjVP$-x4{`C%`%fN&6G;Q!e7vqa8XUM6wy$sJ$7+UFDjb2yDL=O;>6 z8e7*F!w6?2$grm(>_0E)_*Dp4#$t(p2nn^DVpQJA9E-vEq-2!X45}atF?-~`h(?jV z2qPmf(kl7E2$a~PODLx6l|He9KxEfUpm>uYcC=N94@a2+BUXxo1&3K<N>+kYV)DMG z7&UpSQJBl|!4xGHW+nmzkPQbojg*K%@)TtwNf2vPgG|y&BlFYt&tfNvBris#XBWho z`Ar<TdHsjYy3pOIY5o~LVK7F_MhLC6h)j8CL7Y?{@tk)?0R+v&3<M4M7K232h_S_j zMpi2JtmEJZL4jkTG8L(@OO(hCk~tZnL`$>fddL-pnlMM&N#+knoB&8?agy(^57Npa z`WNAdNDzrhu8EBu$OT!hw-vu14Szz8HLZTa-u&u-jPj0tSYGdBwOd<Uv~aPdk07+1 zY{L6MguF|X4ThSN>}<SC91g~2M^sgJ=FjsjvU<~B2=@3T>J#Ap4D=Y^CXt-n^~q<A z0{7QC&QafVKVE~9zqyBA4t>wSbnB4^&2*IRj8dolvq9q^x1FJ{4bJsVhw&zksE2p~ ze=r(7SA?1(%LZ%iEFtoo^$r_j1C;~^e?A{g`H>FIACLMTLS<MUoFmtn%5d&Wto%|w zQj!SIsK~NQR(Fm!KZ(srx;vJp``C?0wd&E3Hg%1HGM2+I%s2Z!!V+$4H4DT6JzDMJ zBA0hCSa387b%}wB{0KQ+<5D=g({fsMh&H_zmC(FymC&|pT6M81ZIHr))exSg>WK9d zs2WY?t-lXJHVBK+nzxP`9aIdN2CGoOGcpsTVbpW{zn@z#&J&<zRFTvGdT-PTawbT+ zB5m$63xtAcPDCY;EEso4Hez-V`6Jl^Si7z0g2)_kHUosLY25CJZ+jG+ATl6vAb6l$ zU=Ct7tlKbssK*DdicigKaa#VXG<~S04j~lijwi2Xjv-0QFs#47iL1+76+tx4pOq}g zGt(jp7|v#Da=^D!(6Od34<t{nYqEBREp1~k@INxLt6r8)y{qm+H4azOH^mH68rWSB z21tO!_QUHkTBz;cG=moZs)eyo1Dmd317!=dWkAH)py>Y75zxq!Hvx&z`P+eK8?PBf z0b{S$hz~pT7F@UX`e)xY!j|#bTvv5XN1!(6AH|wmQ+@Puc#3=*4m}5*-F_cQhLF6U z;M=j8m%y(rRO6ZJq^}&0Y<0#Pm!f8$ixklX@B>gL8ihBag2sJ>y1Pd5Zd`es2rHbw z_p##(@(6u_yx!}${(1V6{2TO<5j*VfnNLgs0TM!-)}L<nO_qZkGm$+4xz3@9%wfP# zb30@cUe{TOM3;mp5qK-eK@k=z(wxY2Cdb7{9nBJVO3S8!EsO+_!2y*aVsmtZAc|t& zA|r}&xqYX6)5cM*5iCrm00-U<QnR56O;%^rlFe!>uv3z2_@0D2vVhX!LidETzNoB* zqHhh*5I=|Dh*ABtGGM}@86;cmmLX}az~+<kDCcKQ8F3)#fjh;k5QEg7ROwMl2J#=? z{b=5_4e}L2>*Zm;tc_x@o814{i^@uL=0C+?2c8$)+~=f<P_$M9QCUKOY$3o>d(k%+ z!v_U95+m`6x8OjsvMES1$9L`}HZU^gB8eO6qJxSuio88OTFxfvB27EE;M_FQ$jBI5 zAvDrZNNJL4JMoD+@>NJC;~E5}KQ@nOSg4$+q!a>ADhSLQS|CJVLMc_?5rd-m9>M`w zQbE*02xNT#A}BpS?0||TXp}CEECR1JjVPpIb|13~LqdG7rEATZoD_<PX4P*fVwY#c z0;aKF(O92Ra6^#I6*0BZRLckTkW|OF1!H%@ZHC~r|8EDf1iJi`Nrawk)&@M&Aa^*J zsLu?7<9j4pAaPpke-2|Y>>|``=sF^tMrnI+rvHz$y9%l+>ehq}1PBn^B?Q-vySux) zhu|*3f(F+B!QI{6-Q8V+ySwb&JD>Fbo%;K9ovOZ}iVGG{P-D$G$1~n(f)`oLhDIjB zmfJ<p-ER(yk?;*1WbDpH3J$Zf5NnZRBaP)`#b?%;8j~QKoV;((L&KP=apY3=w-5`J zfX;p@Z4s(Tv=Bp=CqtSE6+$0S!ICo3j&pAW&RgSuh{IJTyZtYPc>Z67*!Vs{Tlw36 zQ-t%wh?(z4l5}@Pr;Q-Upd@~m_Jxjr_+lECEXIIn!W>qJ5hGpiKu0-qex!;Un@uCp z&t7=GJ3%jx_Ok*I6gs1mS#gY}HxeVq_k_W)dhIJ*TmIl1(C+l-g;4iDi*UkVOkLZs zPG4VFj-P;&<+RjGvU?;_ZcH6j1T;96x3KiUlkZh*;i;qa<8^z;6U61s7FO%wH;MUU z|1|DcBGKZV1GPP`%iRw$PnQT=5su9CXFt-QSa#!Fuw?c6+tjy{yP3f+PKWV&gFQmw zAEKqap*U1LK`L@=D@=teBp7SvVr)F{77}98Yy;E3LtD*bpLV56sD827;a4B0i$bP# zn%a0KcNc2Do>)dLV>;SP&OxL})GJPgV<qEq<R-?a21XU`V>4s&VhQ0@Y8hLO3x$SK zIiCKl&|3ef(1lt1UV9UQ!vo0x!%UH|11$s2RRnad$MfqxBllYX(Eqn?CTSjnzXRl- zI9d|D(xtDqUh-D44b)~F>xK~~W_3Rss0%q(Vc0yK=n+^lEOfux=;d}S)?kb0rm`;O z!max1e^Mm3vo83g__^6#e0PmaZfmjiOw2+|Rq{g{#CK+Z{UkmH)IMrTISpLRPOxeq z#z7@BngLv5GDM-$onAMljS)iKsyniraHF~-^<u3YN$hIHwA`e7I|8(k_@@XMBTG3& ztV&XdGKglsCqNbAPL)|3PE40dYJKnto$7GFjHX{9v?7uPZF!N*j9Sh&mE9gqWf~=D z`9JRc3#rp;ny9u5`rpdcOI0@D(`0@@+u>UcP`oZ9|E%!LV`?3}wc8L3ZCm+9e?e5L z+sk+YRLFzD2mSQz-1UF`xa+HQ0xZ1UYR)<*@>~DZb~E?d*TKO#w0U_^a1IQm3teGJ z{E-3KNE{du5m6ZA5SD4eD$<OuxQM&iyl7O}+^)}(4A_trrNg;Wsw#)9(UU$uzGuCb z?@;b7bQfdqj9BZ*r=MESXz!%%3>z$ZczRd)5x*p5qN^7|axr&nSE|=2U@WKo0|2ot zg;YgA3I*Xa0^tq?;jTe21qq=#7K=eNWCh_MVkM-cjn}J1S!_ed{B0&5>vYf+5J~gF zF3HDg`@1o}`sjK6H<8gjk#%HYsT6SCCi!L^K|Pl$=AIZq{nL*Hf*Mr`mJias7h&># z$D_ANOlalku?m%XF>WoQKGq<Ps<?H6TJ;>;ICX*4Q}R$ja87sLEE3I(o0gT;18QlQ z-s|^8=da$F2KKrFY6Ls9y50Kby~8d?W1(NsE++jF5{cySW>smPlaq7H-))g1R>i8y z?ph@So=cR@R6AJ53B1m}V5A-K;<lP=U<O{Z*u_t5Ak3d&KBmB_G|#KxE@D-tHvgDq zyO#Xi86@6L;mm@MVyBxQRNOm^ei8RN%VK9-*=2gInCeC5-$v#h@|*fNN$Q?M<N4zy z2;dVd^CHgDlHWBb7#|1JS$5^==n=i^%oWgWMsX`3EF!QrX87PN{j+JQ&th9ZuKWiJ z;%WGGVyW1xTbn&R{Rb1<Qh;DyQOohm>q`u&%jchy0ISBKV9f|T&2B*$mi9x(7%6$j zeV?Vep++H6UVlxVFA8V#DYF}W>tCo`qeor66Q$3TWCwmP=jWxZ*Nz4UnI<%GldDb; z!(#CVY@0sMda!+2{d()kd@Z-yPGD7&=x9w5X6_F3zJ#7_+l{Co<CGxL6^~%Rvean3 z<7r;fyZ>B|UZXx;jqWAg)D+)o?edes;&oz%+tbt8-SPc!t}SG(BcAARb!{Z3i3kOh z%v<v?Pq;eQI7T>zjFXeNoLM|0U~O?H>96d;9_>M(db`@uMs;joeU)t`l0Rf!mu$qy zW^tVLh4IMU0$-Lt_mq&F!b^UUZ;2V6PUj^%f4)>!81C(ZAq+*@b2&ij`0E;qVl0TN z#)EX7ZnI^L$XT>o-8lDBb^!YIVJFFpu?ukw|ApuV@I3Pe#5|;|R<X-fn;v)CvmqAb zsW7JK6%M|dsj0iEy>5qJteSgDlx~%sj^Tld_<?}(VFXGZD=f`wwc2mFO8o3=4=>#; zFWly?gr&E>>V7eBIPOKu5>TvCLSz7$FCg{qnJ<v=^^&^e?lrzFp8sCn{^oivO}5q5 zy@}W90t76~+7zTKy~~5Dw3Nwm6Vv+<Wp@@*+VA5I6T7@58}@Eh@jTk#QvhYMTi>~^ zOgIoba$x;V6n5quzonX^7qM7mi`TI%)WbIr^UX0r9>v$(D7|{%gh%!(B3y)yvDUoa zz9R0zEMuLNz3?1kef<L?QBniXc^2ReEe?-jCUxXD&`CF95JQvreFLEM3y9i*!GAj_ zak<AsQTmxx)3Pb>hxd_hcZeCtph@vAZKKMi+RMXpxBa>P3IaNuBCT?RQQDMGnuk)j z^i;W0*95r*qM8ggvZ2~1y4gdyNj+%Io!hKCF*E_eUUGZDC{^Q-+dyuCe{S?W+3K6J zvE%`_J9D6uZFw2C?rem1h~{j#7scc2nRkZ)d=hZK9o=L_Y{4||n@U0(I5gu^-d8;O zwy!0HBU+N*Ydg@BVmDlPB@CwzN5d_@o6gyBtFh}sTYHXWUm%qs*Ul@12wF*+5?dp4 z&-TkJvKbU(s9X{U%AjhnA0P`5W0kOwhBsqGcf#c`D)r(C%M*rV*W7<0KC(E8DQ=aJ z&WVL<n82-^Cxoy3Ra%O35WR;d(Kjt8`mOaR58~IQ9o}VT8WtMnjOd?YF|m#!xUr$o zM1PjYWUN5UCz(IIpMd?Zn))8AUOc|H#mnXgQ@XYgJ(5rqT@F`hv_*S>#*+qEBKk54 z4r{&uFIw70IA#Npvzga^_x}5qmkx>j7$$085-KI=oG9nivhM2UiH6M)SmO7;2i$kM z(EC$@_VW8#LwfsFHW>4ZmO&rTdaz_r#F`O^0tMkf6oG<GQ7yfoo%1GwMZuRNzIJZT ztOtR152M2nUx_V-DeP$RaF)G7cu>P2X-*sl3N8C-S&Vq8ikwa6183-XaXa0BFY@XZ z?D>|^c^8YKzBC5XFQBWmuQ;27PJTRU``E-RFnqk8i+@ZF^cJ6_y?<f|bAfWxW%pcF z{Z;}eaoOQ?WzfZX$$&hikX2vi7IOFY=VfgVXr=s2G`98O#@G1Su*TA!;ROdS94P^G z29pg^49m{iw5M;^p}#TwSprwEYHc^1QQdQ5LxTcgM#^^?C_0f5>i6xUQ}Wu}td#_a zDOJI?@yiPa>I;ONSZL<+HwCfeBsk0B_YVB7j*d=#(cR6>Bd^Dop(cC#y(#mUk5jDJ zmXmCOq&-si6C%T5`n}}z<D7zyvsTbE!4twtXe@-b+K=CmE{12|o5|`{Eq?LF#f}m; z-G`~*T`eYYsBTBkA4iw7Qm8n0pjCom4aV_|tqSUL`vCbT@aeI`83C*}=;^WCC8?Xp zU3}hO+@>xlLlzsnpWnR?uNdE1l_KNQ4pT}kqZw5k{PG3d$j$j+%0#k^>Qs3vBv5RV zIRn^b`vzIl(cbBqxo+HVv6qgbj0l}-gC*5}33$*5LOazmT=+4`E6>@Z6^dPjC^LuM z({WpBhv}W0T0A1awWCUn>1Z-xeyv#%3P6;~ipf&gyWGe!bbUBhsYw^UJU(al{=o}; z<CFYyGvJf+CMnx5vQN%tQvCaS)oM1U2U;-2{A*oka4MzQ!Z<j$js+uv=`G>$M6X9* zm<dm0UJs@sp`^Wq);1E&t%>!`mV3j5W~WKN>>>mn&3SV#omj0$7L)GB?GFlHk_N@K z<Y}1&ABP|(tFCcqi{y@K#{mAU3G0WLi>x7kVHBW`fcwkU-R+aIhVAa-AF8;D#kTj) zHD5Y5!v{Qv%M(;un`o^YojP<~Kei%_w2ij&mzuTqyp~}Vekzjzpv{wRoh`Q1Cj~%~ zg-FWZG8~Cfu2gW2eN@wG6+db=6Ne}Fc)(}wV~hHNnNXH;3}Q7XAQr5V!IOTyozm2$ zm72pO#F43@$!n~Pr)8(?g3{M)^xZTP!)JVwl58v!hh(s?)=*E8DEZ>0DBa@;`f%yf z^5r7K-urVDQMB9EbbMV$)lwFf#cz5os`oVDb`E1Bvks>HVo;Lg(%|%Fxc7=~R|Nse zC(uELQhTcImc8T|ZNoWp$NB3+T10FI=TTZ#)Sro!pSD{aYqFR1kI!cxsumfVgx||B z=F-=%GtZ74j@G&e>Crq_?3z9eRa4(^i>x7RP&%bCu`mV~h>6Q}t?Yf@VpK8}r%%GI zPmH$Qw-Z??wFojzC%6mLMXh!uKMe~g|DZ8ARMS_zZ#s#6;D))P_mSjKlWueE9Ro;r zx~NBC#GSac*ka%(0+9&57!%Cep`|&E+zLS|vdNG%h73}{IWT0TFz-VWFe4VY7&_2t z02$q(Vwt4Dwg5z7mhMe!l*E~aA8)`fBj&Fs?-Q?mF}?yDC|g}1x-6piGXb9k90LZr z69M7saXQCe8l&vRtJPKOfMPWz8;$Bn-j{4*nPpkH#1^XxO^`DYer!@HNH|y%(07=& zzxunu{=o<7;;fVKG{yO_5nHpB7{{EK?`zAj?S5#Q&|_%4(4aKXoTMYub!p8G%AU3X zs44SfZA}iS$-~XhC9s^tqo|TSn;-ZVYmnu${Kz)dg>K&(w{|XN=SJGm>F{aK*Ze`N z*l<q7)xi@)=>3}O>%Hd1OX-VJp0%fRoKm#g5ofJip%uqK4}pVfOyk|>y>?w*d&lc_ z^8gf`s{O(nqKM+jOqf)*Y^J?2=f^7wUiD))<BL0bLxqD!7pcSdxP_JdaxEHji3_mA zhXabj11jZ|fAF+yY`u2)hAAp2DhPVNRoI<>Ny}qQB5IN`o2b-K{%siSbRQ12VfgmO z3Up#_=6br`zkPKBsAC?ZoxWfNA^rQ=02R!)j2I#CcYxbmWC<6URKfI;q%wB}x34R@ zI-bLK=3qQP@7E4fLR;!C^KE)1xl#nRFIWSqd6|E|2tphZ{G=d|!6yJhP=W>~R<vh1 z9iREFBtP}LKj^dJ`-bF4Fa3v#CK+*(P$_WRyIr0-9Gt@6B_U1%VB%-vvr3J`R92qG zAhC^VWH&IT0}zx@UrDRNyi<&$R+tADhr6cx#5>3HV`a?V{OBt#2{s)x^#&ryh4TjK zkzf@PsIAXSz6BdOQOhAG(9VQC%YISTAE;US{oDHK<pSyJ<bv03czbM&qM)}M&qI!n z+k?CTQwqGcWUgZ}!D?Vj4wjoV00p8-7|HfzTxr!Y`DMo}coaV7U~bECIKS-C;<s&X z-?)-8uZBya?ROSRCph%_-tp=CRyMUOY!Z*wHVs6E+RXCWC@tM2?S#!px1d>Bt_0~K zxH%E?f$fp;#DW~QrI->U4U4+~CV<O~cFqF+eL@>_f((2z2LAiG_5^%_uC+R_6misW znck>1_kb3z2XY@})VE{QP`$bkTLtKuX6aNgnq}yJlKm$9yj1b#iteSI5L7LIvQLDc z7#`^REVYJ&227w0o4^46?IG7afnec%6NP|9hw(Z=g8syXSH+g9>c7tlQ&Yy&r!}ww z=Qxmdl7wzPrY({@hm`|7??~#%1vQ#IN|@mH&Jc*7N%TrG^&VKlJMz`4XV*s1axVoh zI^KbYr-v~yc|E&}`*WMyYsQnKvQwHTx0#`1Rp3UXQo<@q6|vH5YNqF?yvl2WOz1@1 z>xD>3aCGqlI+vie|GIthy5XPHK_*>ec`L(M962O9_t-RwM|FKwrJNRo%Fk6!HS<DO zqKj@yZw)j)LHkr*mx`4N5A&QIBSVVz49AOqHZF!+K(A>&o}lXDotS7!znvs(jW?{c zy98OF%(wmn8esGZb+jCZ;q`8!Cz1La*&X3h;ZuWcuOSL;$rFtU<zmT(in`=(_|`UM z)`*VmV)6j^V&leIGB3(Lh9qW*GG2GoNMqf0D%O7p3+)JiPZTePn7t)_EWOET;#XW! zfc954!S7Q+tQz03pN;~%vJ05HM(krX1*`^60h+I@QK-Sik!m6}qvs^b0~?NS-gG;V zVq`zA(2@Ph)Hq@v$Yw$`<KL!YPBrnOg4iPxx*8|CJo&B2G%DWAHK~i<IFauU*Cf(- z<dTpih3C6Vqra(YqBSK(OIr-pWN41q^HD+%6pmGJq>Zett;^)t0%>f$d`Z>I-<oNp zGLyD#ee!K=Zu|Dm$PNX*c50fqN*)+7XNmn=TEs8^l@@X@yV8vS7PQ}z1l*UAVRxQe z9nzLvYhCzioO42JFP&a)pvT+S9;yj<P|*9EkCXF~^6!zSvD?pqQqY+UYzsn6j(Des zp=;Q#y6Vl|Nr&=!(d$#WtQcbCKF+~(r3s=zgvp279jK%1H5ZhS+LK<|KRI*L%a;gx zwxdj4KH**aN3eAjP~!dMgxU;k8Y=BTlc~nn4`ZGq_=6(6Ak%^NhydM=b|pb-?vt}Q zoW6q6^lEs;uQGYjc=YY@?(SF>l$R&CA!zZMb{vJ70#wRkjbqh?D#C$ZAvVv~VXrry z3=RKf8Tai_ro0cYrUx%&K_WgqHu7o!CY4BsmJ%Ty%|W7_U*kLyl@f6KGnY?OxXKAz z%pqu2Sb00rkG0lua=85&FQcQ1b2O<*GH=pt;v#4BW8XaQ`^><7Pw$LQ)OQJlVC#j$ zm_0E!WA!5}n{Yvu65>@RUuf&ZgM%V>AK)<bTdcM%+c42cXvMg#cfhht5^R1AcrobO zN@kr=GNa`iNL|XXt5ti&7n46qLD3Fi%IIN3a*)n7_eo(GX@@5l1e(~PG<E84mfGWX zcD_9woELfTkF~sWn0rT1DiV9NFpLDtacM_UuL>pYc??=pn8nC3bS*RuW*o)|8EB!Q z45yqW#Ev5sq-E|Xc;M*a%=Rv_T7PD=xPqy2%A<_34$qZ%)=LEJ_*^vimRHvS@~uvS zT1bCkH(sRdvKc;J`hbkzE|MiL1v>~(Dg~>Xa124|nF2nq?ynxo8(q<^=a~cjj^v@+ zBQw_vI`<1G^lH@L9mr~P8qOjyOWsYb2oO(>fQZs0kHM3ums{Eu&R5KsPGsF6)<Sy7 z!>7rJUvlZvK<2H_sDBn2!dOeUybiT}dIB#>h=ro{^8y(+>kwWU2j6H1lsg0yF62)% z^qCawS05EfmAnt{n|RZk6NiE~``52+zzeV2^N@`>MnUX*ncUCWj(KPVyl(9$;FXMl zTtlfvp9ER+1L=B-hff|_pY$vZH&4Y9jsICgPou~unZz+R`NZ(3fV+l>SCVS2pk=f_ zK$_g!chpvSwJq7=QIzYd?4B2wU#*Qa02SY-=RXsDMNPPdH8F}=3uO^RIHfG^<`?&j znTMvKSW@p+8u@16HL$OlDnTh0Y8pG#AIi!G(}{iJG(jj~bQ92@8<saGYj}QAR8KY1 zGe-M%rQc?$uYmhX`Hwl0Gfh(P3SAPv-r7wt#TO#TD=1{rc%u_wiCQ$3jE^7#Vonx; z_=7b`3A4b5IfCc%Ci}Oimzk4x-j${)%=<>Kx7&}pYOj*4b?ox5f?4b(Weq0{mD)As ziOY2RpxniL%8Gkh--akOkCIU$O!o$aAD!xz^6IZ<mrL7|7i%?k+?+~9&7&|STx);u zWX0_OlIzf|lIhU+3O9nEj_=FcHV-zKC{#{;3;LTnCiZ*_;^%(u{`4-nC5J(mmkA|0 zzCRA}R=j=#To(dbHlp{wQ_Y@!Y7zpvnZ*RHs#mA8;9q2r?2hdZ<lS^S_jh_X^8z<X z+}#aX+>XNUk7jS|A(0YiIoGQQr)Xuj2#yCOoqK@-7g5nZS_7tfl_qIctf_^yc&Q@T z_1z292=~z7l@Wpx=7@6ucnLCNBknH?2zQ`dQd6!@pb5X-(zw*Z+aMf!Bm)M0{rG;I zWkBQxOKBOGOD&jW3tkqTBl&Du5j6^Y78C%!=L?prDd&^1ooZro{C#FNb=+aOl=79E z02Fv}L+Y+8OO23VMibtV7hl(kH!vzO%aNu0S@8V_muIW;V=MA&@mQB;2{rVt<UJsq zeTdipUyCB}4+!eO*2GMSBvn;b8>ZGs#Iv}?8<@dy5$(*>KLeW<M50YN((^<mOe7=B zy#C^$`~8(id@Ptn<5p95wOAWj?RY}5<3!B-Zkv%*cEo(!ag>Y$e9a{?aqZYS@WBvm z35yd?yGUuFfzck@c%qF^s{|ImfPgFNdz*P$v74)l4e7pLbd|dGAGY&fmCT|7R;@|` zoqjG+vY$dH!c)GR%i{CorkdILjNhq>oNnp)ysP9bYBE{8gO>|g*~I!xL|-q~&G<L; zT<I7aqUnd<2lhK<)KhZiz0~G8DCa;pz6rG70z6KpH19D2+2nJ|LvNCl2~MpNMh(Bu zvD2O^1KWE-&%CZ;qir<Te_~XRC_tELshV8U9K)@Hy4wsZL%a@ki6nPJb~iZh_G~Us z?+@YezwtuF1Lb|Mrg7GAZ3*$v|8pCp*!lmu4T@E3-mt?_m?$1TgtG;>qz&8l4!6%o zQqY>bOi(tx`b3Zda<wD5GiB)s=SB&WOVwu(ym9TO2MiG7?!|-`Apy6h)ql4^2i|}F zZi7M?`>M3sn_j_fz{QFb@?N@%vAOCKE4*H%7Tvz?ida%4Tryg#?!bEX)y3Z&CffaC z@|?!vsxb4=d}*G11XzqF;miPw@T@A;T^}4C5L@`3kD9dZj8;Mmk$OSJh&BEsL=k0s z8_vnRg_=3}L#oQHP1WTl(}7+GXXP-#^V8j&ThUjd6F2iMCs@wb_jU@4JO#`rHpY>n zl4e<*7GBk#_^WC$!QVd@c5=lOCcxcl%)~I2cOu6O5-tY%<NL0;$f+xjrlm(>*56Y$ zK%2ulEl&|-&7g{lYs}pT6w=CD9P8(}h{z5bqjbtPi%M^aCn%p$6qs%4qcpfZOxYLN zHzC#zAgg^}f8{uP@9Z$-qAMHWKFd<oT4WtFF{}t&Zf>R%U*L(pMR(F})HzLhW%B!D z3y5>&z+ehZqeav&mp%vF1Q@pk;IwEvWpOf=56>(R+(P?e!l;oy8GnJL2Ciau_1;jK zys^ick-i@749$hKQJvo19FAPQ+Miyp4WUHP0*|)gsC_Jr2MlYZtH3Gmvn(dNm|b0V z3GHXObyGsuV`0Av);5=_6Bb!8J}g$CrzN$!9<X4ip>iMb<lL9~ND*UrNBKPuv}TbG z&Xb;MjL7J^nM<h^z4QTotG*M2J(B<w;}gr@xxaf}dWJt=xq$k8bWqHRHo3DJrdF@j zN9MVvK0H=Aj_Bkk!~v%eA2ewxIAovOPBmyk(I3zcj6hZ;D9ZbwM)QTCmz73D=jtNK zAbG4An06OZi?ZH@0?3D@+~<_SlH(?={GX`(T6Vur%mbT>NPGBcZCN{J(`7fY7TIoF zEo+Iid<mVheC@2x=nHzie0<z*ua4;lHP3eE%<oTjhJs2FH&eXcBgF50T(D`6-b*&k zi+^u|k7TO!t~CK<9I`ix#=d42AXsVOo=O7?%Sn2c9Pz-(T`|Jo{w((o;p-*Q=P=@Q zbS6Px+*0BODF+l~@SXtk)=RUS_(}L`i31DokV?~&_2|d(uwj)#^!^aZ^LH-gn0?Mg z7!z~Oh?Do?O`FtB6nYtPCqeTGBKh<jL5xdH>xs0_EAbkr1XK_2T0ZA6Vh`=ISMLn? zL5WSsomJC~krv!FifF7g3g?NXJoq@TuuYG0i#oM~bOuJFwF!hPta#sB0+@9+dVU%q zg3VI0B}Uyh(or3~GwbyjVo%w*P#ZMerq6w-DZ?-nU2a+;o^8D}D>jHL{9y;gHpAm= z;|gzWKfe7_t&W>=Ka3I1sl?iSO{ddrzo4s`$-rlbL*Fz%YdF{ZI7Ibv=n&kZL6plo zbRDcL=xo{@*sWQL=(=#O+Sx*Exnxwm1(;m6vkpeiKk=;0kt2p%uD?5-nck*gxz<Ho z)JD7^ljtwsBN??4zumO^lyYvP)Ut=Wxc^kPcUU+FIqk1FOk)rdYV-|U7wyK|4^@$R zjYlfh|J*yUnZ4bN>Dy>dzG(o-*=%Xgp(f_R`mnWhu=8mXf$qkyjh<+~Ra`cs-9GxT zAIF%?3N)ko5(AdWtV-J3qQUVznYELUPL)PyaOq7?wsaa@#v45Pm6QlN_vpadktjS) zy<)5;_7(=#IXL6cQ7H<{GCkQ}VyT!l^cYR~J2Q^%@LekjPoG*Rp6vkW+7o(B3pgRy z;?ubdW#&%0qD!2Zo)P}i(L8{@3-#^k_byY4i}ZJ{wKaa8I6FyA-p!n<SQ&O0=D_w$ z+cj%5kezHL`v&vIriz9QO|=DYDMJ)xVOgHr%ZHJMQeJvGyc>o2MOoO@u+{G)-Mq@W z40xl_3@xx0^*{4@E6v^5<R~5u^DR?p@$?$bP|Gngth6*K9u>7)Z+upPL}VZ$s;8xg zPm-EF8X!ZvR<|E*^igNZcafD_wYOWQ1i(uGP>N$KbNWa|cUPSA0fUi8vV9HcYI)bX zShaEN7{<_7aXhzi`*>TnQUT*rWQPG?#k)j#<pn=+reO4yqKjbL{H87Z3WxVC$hUyE z_K2Y?^DM)cOOPkox2*C5`$e?Z1G2!pn*0otKz{Pcogawax>bTYFXT>0xw%*7T$tV9 z0Jxr4>M4b${sek5xDz5v?QKHslrMO_!0WfebVGl(uIsbwh51-gc#txnCF{()iGIN0 zIygEb-q~GO(&w_`fGLJlexk+Uisd+Rm>l>WJeEM{m}GNPITWZ*AENxW(e~lP+L~D6 zOyeJ}waqLktR>#2k&#>U_KBF^QMNwG>E3(m=HrL78g8b@*m<<2RIjm-zZcaJ(Zw!K za{JaU$O#JNp!b!(PVpm<c5J%YtE^r=RKd0=iH8z7jri4W3uT*&=IMSg^84x-XD5oS zuSUz2t37>>(pm(SSvXvcea&S%<S0DrEyI@IQ_#eHo-<g=Y4{q3JjumYN~>2#ZiGD1 zDm_y{=UM52OI*4e<+Wy|)9{Az?uI6J4g5FKt-hCGf`OG&X8$XlLW9$6ptB*^&@K=x zM64iEiT`Dt;1Ml)%gi8CEwFzRr$JIcfVJgc>qOd!=K#GO`Y(bbx$H+~)^PpV0a~5D z4E=MglwMp2S>&Gt8ZPpD%&@sGIU(bf$Ib796jBHVcP&4zI==-Zr_xS{5H$5Dv&4Oq zmnXy_BZ}~k*^RHta*K)cLaby#Ts4YQW<t!`T+mM`tbD%wh*tQmBXeF^+%V?VN@D2> zzr9zaO1MXd_J;WflKafk^yzo%l@slXOak7Go$r<6(q3#9MUz^WWhp=g*eJ-cVdE%e z<qo?=t_JbM*r&Zu@qZCjB?Nv4PNUg$F*anB;=?diloK?Y=l|bR>1Q&3`60O6mj2=D zji-~v1L^AI)qeTgO~m!;>m^^^_C@fsT|0XuRYZV-IwH^iK;`28Rk_hp|5ufZ^<l}X zuG^KGT}6TysnR3i*@hmKP1%6VkB)>>S~*c}%7XHAC-q`sJLmFIYD9HF%aa7{+KP5j zMG?`R@am=f$AG&&*NW0MMdECq@S~>Hfw4$Fm9`H!a_G7H#($qPW?#{7f68i?yZXnR zQo4+mPi|JobT5lk?Kt9aVLy%p)oxYVbA<yGd3BeOrjajLXtBPkCc?4oC3eESilUkx zsXHIM4M~XO(@sEfjLG{3I*4wQL~WCx+Hvthp@P9TI;wc<GZ1`29YwvEl@AZT?!-*; z8yP|ZZL5`X-$V?x2xgsA9No~h6T5ch6PzfATCM}H6*-!O|8Sq!5K?SNY_CbI?Qc_w zMtVYbuIt7<2vj(S+ff9VX8O<O%{7pA$^(sd%L%s=N#PC{9C&^@5DodG+1QEv!NOx7 z>%|-VKQ-j)bO-6obZ-6qAh4~we5fn1gy5TZkH%2dQP2WDZ%Yuit?}$+ar;FykF8hw znIs||K*mG=BY^mKgxjq=;=YW)$JJz|%HjBl;q5cqPrO~h{dyE^e-K0}<2vxgv>=u5 zM)6UN_kGiPU&bMRl~i&6=vC`M<d$eS$w(Gc$oYB}?MFVzjVZMwOBqJAm?epXK^%t0 z&Jsed!!g_6qfqBW7DC>-Ut&~@^{ZbDn}awkwl{!0c1G<_sg%hQ`Z*LXvj!}#W1|;* zB(8o*88a^Pbx)E>=<y&F1R6xH8le#Rmy>C1n9xr0WJobXsBwtgt^Fj(P#tfG8ta1N zoF?0XBPN|b%>(3znH)Dlds-W7l~m$Mg%n}bj=GSiUo#Rref^>~r~>KyD~LoY8R!?4 zXV!RcMa*wZh0vPaC|~*UyG8v%z}9cuSf#LmvOvn@tqnPgz0(!;Q=W+H7tu4F*)sz_ z67X+`yAxp+daCFHhgf67mK#SDwd{BxMmCBXwan)LGZQNBN#KVzW+b*K773QMKsyMG zEIc{WF)=b)FaoQD*_jD-DzOl2OqmIt@igGTcl=&?NEnsu9v#&ehM0>+f{*66Q+5C~ z;F*h-r-PM?=1(48K>MqI77Xi3mYDu410xH&xZat!_IH~hp>qX-(H$8#!7s5AYH2k` z*O^dF(N~3f48MLYJiq>x3ksp!O|f6eFMDGZ;JiR4KQu@(nFV9914tC_|7yY5C}&QO z=5Uo!m`UTU<<^GMbW=%Tbu|&t@*2R*4wZ-$R`Z4o0|glP$??tb7hTzV7I9U&Zgz8% zMa)D6?{1^5ZIr~4hUFVqTSR#Q&l>^45m^#!RDMj@&@%B0mshP6Q(mEQsa54rouXRQ zR+%U2lvgOq6$3~=$IHM>EaOXa3dS>YAg!H(c;};lKz1Og@~Q(DXRdd$iH4Y!L0YpW zPP|<gCK~?p9Kaf4NbXd86Rn>!zxAiPW3DRofLJ`z*Hl858t-s{6gtXWWqJXM+zV}T zAeYJse12patPRhhQg<OEep;m<VLlW<1GBeqj_-g_7uSzlfA?2Dr3a2qjR@nUjPXEt zuOF)f(>vW(UND`ue=h%JtK$+vQaQD9mr$=?pmahk(|~R+#E5LUc8~45%S3p0W5i<l zH0x5ik;U#(d8nH6K`ItEN6w@;fV8QVIYMJEWo;hMKNtcjB|$J=9e^uChM?8ZyM>qx z#Wb)k`Aqe4Nt(Q~`){0UqmR4MKv(D&#BSY-DW8KmGwJq|8b&DGNYf8f<pVK{4wQ<6 ztRb|DDP#Gw6ETbxus1c9cLP@fGW1_#B{LI#)DX(~X_tb3re;G;-b>0Mlz)q1hI0`D zYePw6r@x>MoS=z+HKD#LoPiI`1hZczF#DC;rsxjb!GyxV?GDtOfMS{{Z-#HjlY=6q z{O8LMZ4L1+{ry+1BU{Wu`RE`<^I2HEP%VJ$cfW*G04t!B_7Z_2v;e)hoZ*v#<rSod zV|(pNq(d*uTn1x0&X6~|Du4hGyo3q>{LZ9KkUJ_Uq7sq$skJ+gtu3(=&zO`6Cq(8q zxE)l1$40x4fi0e(i#A;hovmyMWr4V+htJk3?>TTBZsN)(tBL87Vmz43ZALO~)(@T) zVL?#EZP3{b@!!Skgjp$yi|?d9m3Uhh%pA8ik;vPNpJ2h4x8{=?=?|I)&xN!z)1;6p zE)pkpOy0>!n_FT%ryLw33@=0XZvd=?1}S5AwPZ*?@|*n7%{Qb==%FDwieDFON7)8; zzx%&(#=KSu=3vD7ze>)l7<~C5E6P(qIi{n`N=>EharM)Q-CA7Uz)eBYAB){sT;3Oj zc%nu`Dv$`9Qi|1*)G`>0{e8oaP7tS7&J^YTSCGmd#RlPDV2uj{*0^(>f>J?(=clSA zS9qx=X6>;6tHBeG5iEAHL(fHk6=l{}XQx%kOhk?OKrD8DYmNl##oAoTh{^6&jCd(6 zWmb?8aoDkQhkM+UCD`J^LH?Da&*W%pjk#e|Y*V9AHgQJ@X}xee`%)$*JZ!)ErHqB+ zhD&vo>#W1RLq_5PK16b@bwEo*R$6W1MkYUP%QE-7e1-IbgHSF-CPqhbE&c@6FN7`! zX+jKH2*G@GGX^16AmF#$Fnc$>)~MowTk!|r{PFc@x-GgZ{2-rAI6dRv0}|GIamnBT z3F05%GB6yM%tLYEl&k{_vP2X#1sDvoEapM-LAxI%utR*I{H9~A5>7tYb$X?}t7~4( z#8YSWf2hIXQn*b0p`<jZQN??bWZ%=dXF^%T$T(2+gxO5uH(`zXS#X(oeDj%c(Q?t= zHy|hl2$F~Su7s1qB-FrlSnpGR9@@UjOsFYq9$MagyA9jUncfsHKJ)cwf<O#&Mc5he zNCliwO^HxVrbYkJI38H(#!)Ah3Zcu!_un6~f@dUH@Ml!ODtF>@+z}z;q&dDP4q+mX zU_M6%mbwJGx}HAU&cbvj#yK=G_~l0Y_vQAhm>rG0P~h1Ko(%>GmWk9zti&p^m>w;D zI7k?*a9wto!?2?V$Xf}$@ySY6Bc-gzGe-VdfdPJ@I;6&C|C)$MM!N+Cm};McppRR6 z_mcmM#RU&UG^9hP{C@)xwqK9)uu;tB+2qtG?%f~4O0T`tQFe|=t|2$~y8tdzvcx5G zA2@r+1%s6a<oQP)H-|p{zS_d-#Mw2`S$^h#F&(5hroE9I{GTw~BUT<yB9h#h7GYJ= zlT7iQ7_x#)q0wf`?n3ZXi_J@JjU_3eDG`5g8RC+^JiL`N1=KQIuD4U7e{X*^TEl1V zYsbJbp=+lI-0%#9Y{Vr0S~fFcvHtkx`<-%3jRFQluCLH_;EnDM<K@c4KysO3NGdy= zEew46>%)^VQ~NU(NGQCwV!ai*7bZ})G|<7gYUn22s&RO9j+Nko5stNPr6+(%mEar- zpTFgXEk%UB;sM6E_d#c9bS}&aySqT^waU8UxZk$I#XI@~PL;)vwBX~lRE^YVf|>c5 zZU#U7@zJ!p#(E)cF+UL(O#9YBF}91+Cwz=QK}KQlMhN0l_d6-QGw@77+O~Wj3yIfg z%K~Z0RobvpM^dz+@u8|og9f0g*$RsgG|~LjA@qda5;S42HS0Dah765cgnwBj(wO!f z0fbZoieTBW7F8205XK_P)%oI~#HTT%CG{%c<y~QBG&a-+bqZ(~GOA0UrMC-nH1uj? z&Y6}=IrTl4{|5@UO%^}x0|;WzU^yXcljx$Mh5NzBjnVc|(v*4pfIkDGZURCVwRd1Z zd`_fUOtA)!L@$iW8qr?Qnn_b{lL2o$;i7;f@soS8=AxfgW&Xq6OUhHBfeCnWpm@;D zkvF-1Kcy{x31@(F=4t**mtna54ZgHZ#3@t1x96sO!q_5JBu#`p48-S>Kdz!;5Z#P; z5Ni;A=HML_1XDvgX16{(gn|?j94$Z;cMLkAf~-)^9<@@}SPsvj?N0SW)2Gvt*<UQ) zDZg0iP@6<iRSwj_msGE;l8)X{qGj%rjuK}hLLfl@hE#;etPXI7R7@^UqS|hZtWO%n z7&qX&ug@r|IoJ7&jkJ8lGajiBXAONj_@!;AKk@4q#0}QlOjWaOKJ{Zh?YGy1O6l!a zI0Fg_nHPPPjwtn6WFS_TBE`EvieAet_CuaROdALfS+5xd#P+$!TEflQKRJSMeTmm0 zi(G>XFBmH*h4d>skK5#ht_fLBmdKp1#FX>g{o_56*pVpgyViU_3{n*`Yo(Ac0;b25 zC~>Uk4k@tGJjT{v=R4F#SHAS+64nB*@Rkh4lh4H0!aGx=I7v^!r&ziGBtXs7;luY? zw^wKofzaB2*RVAFZX(~oTVKQx<kdx3`J28bBVs=f7yn(^=*%GM>peUB%SM}5oE>41 zq)&XNSi4R{3)Xea*yo$ht!ORA#oib0oksBu4J^Cu{p9=7{<IxC)lwO~B&y?(`FX&; zr>?)P0@3gJ7*}{w|GC|W)_i%m*81N&P49jL&%WqsRJ{{B8Ex;(ocMZ&gFFr`8R1S3 zwquNs20nO+>~~!+nm2iUps&a|v?7Jld%r)RugjZ${bHi{S}pEX{&xy?BbNPe9Kwyf zkB}t1TW8$b2TJzO_ggK8Z_camB!>YeUx(9GhR7Hq~EiM#<yx{~!WZvAagG^f$c zb|2lzwxeu*bLNgxKRlCnpm|uh2%a?IlutGOssLVOMlRf@2|9s>ER^lZtv=u%MqOpb zMRbBy!8B?Jc{@q0Xf8rWfLuuatexdPP^ux^qVF?$xpwOK@~yL!K$S-?KNopIOiXrt z4TNvLg0EOC%w=upK2H18griib+^<QK8dQ%jVWnypu|~MWkV)j82T8|q)HRh<=W#9% zotxB#n_r@Mw%FT3Jc$rhFYhFAmOi3Hw365OQ9DRmIZM-Cq~P;OkfMqc9K{*EAr46i zPz_35AQNpaoyIwA7*0}<B+9GFbLdd2w`>{RwlVP}&eZZIf@O=VDb*UqpV2zkxpQ1^ z;TQm*a3xm0ZC`1@2Ce*<{%0#^InS^PFCnlvqg6tx-*)PLduP#V@lL7rm}VVEi`HQ5 zz>~1S1SR7#vKZP}{cCukrIdJSWGLxHKpvyW5&Ull@oDtR(AQN7^=DFd;h&7|2?hFS zz=rY(tm8G5md#KZb^IXBlp38kXHBVs8l4_2754jHy;weQnro_Mv7DPyNQ-xRB;i>y zX3Fnmg(2bGp<yoL&J&`jkcZ{=XoASx)~tGuq<Iti-9;G%Eu^Wg%M2k;w;wgGdxgm( z-yy`3!s{9IJqg!OcY3o9PJthztg@mLHqRfsE(O6C3w%7;c=~fE*9mN^zKF4^dvOKH znEF;m4@I1~lf(V_&%QB2*^_q6v=K?wsT_OgIJK_Ea1qtZa*W$L`qqs?#3N?UK|8!a z!Y5EuSWReNpQW!($dx1$wz9&@Ve3W!>}fD%;a4tWy4=Z{P}dXCAhI|ysq?d;(7RV3 z^a6?)bvDqLm=ydc=SF27B6_~Yan^0VKflrN?z_6*AL6tZJO>y~o;Tgx-bor<aP^x# zF_z7U5^y12(~;$EQkq2*-M?&|-b)za=89>VeBnbCqo4)1YG81J9YZ|_Nfx;!^G0@2 zG0~#L;s-<Z(IyBeyNh`=O}_`JsdtoX<1-;EKXUcAbE6%0RczL<wDKliN`BuOM1GkQ z>=3v>l)K?O6tkHW>JJ`w)Cx;po{oj{(544{mLS#1ekUk?XYB>u=#&w^posih1iUZt z5ay1oZV?6<$z=+X^)4N#RqDKx5yFxR0hj1OhZBOu#K@K%w<sKvK>Ohz0SW&Qv5X|B z$Er~8TV$BXG)pWWgg-tr)-$yFG0+`Us7{0YfCQ8vEdBTei;&-VLH*~E<FrvCPF2~E zFCWhh>mI0T5WiWT`@TF4^0o1E&4KUHw6B`vy;QJsc|ANFxu02}%=IPH^39>$C(1O; ze``<~1*Q0dWD39*#}`Jqm+cmY8nmdB&_(<6rfOcXNOnRH;!oEe4;t4yzVP#Hcn*Sc zp7ai@Ink-De#Q5Pnu{VG+M+ke*PnNW8ZXwkL*Pt}m#=K=yrP3iV-b@3-iM*yuMTc+ z9imrPz?90dUySb&bYs<lH&fc?knotc7d)R5bnXvWeEk!b`SxSzMG&81m_YH+x4x}v z3a4to=BT^4QNsmWi4?1*W_z=S(9J(k`o^9StC7sTbdukg#p6!4&y-u8MG*uS7snHG zshh>eqvvMBMt$SiGl&U~`=<%AUt;yzOK3yq2`)u{1^mioDhFVyP9%W1Yqus**PY3` zxbdPsHqp<Ds2S(Cr20l#_pxi=veL0ugdS)r>n1oRq;9o|91DRa=HE!;mva)sX=<b; zIa|IZAblF4wRe^(Och2<EqUCf`cPr$j?|bIpI7Deu{9v7Y$WW(c|LaN>GWc$Da$7{ z`(Cr;z9H_<ds<E5sugCxS(x_$SGcH40=UvMJ}90yFDEfNRwQTnEu+NHvSCq`RfGrc zVdgLL*5J$w1U`&MoKYoXLA`<7$n~=Y+2BqW#w!8d>Ia=J_&N{J!`5f-cogKu^cls6 z<u%^(QC#0==bNH7rX_nPsVSYlXZDWtbzcKv{spk|ihnI#bWFz~d88tKB%plMJW5$2 z7(=llqP&^R8ZH}_lenFGa(7BsBN)4c_kndG!t_<8yz*)OVs&|zwWY9Shi4i=SbWy} zXuJIC?bYS5qmbO)hCk3Hjp3e@h(=KQWGKQmWgv1*WcYBR_6COux+^Ymi?)1jq<xqq zN&g7p>n_EL*(KvrKAzQ9W{Xkzs2$`d*eqh%f#OHB=hG~@!rjIb){&1N;E{^>l%>ct z#hUk;a1t^x_rge-Y|hAR{@CnBz%i3rFEGABzh*EdUlStTmi?4g_=Gju(IXP}lEC5C z0MK~b#1gvh`@JDS141Y~3%D^H_`QLo0vrRYJ9HqU)#!zf$dhkNdkMR27wj)VKC9MW zM7df<dT^H3^%XR>{k0l580=c|SjjlV?+r&j>I1FBHGS(n>WMxvJUDs;`ENAp%%I7y zczY}ZU5kn86)M+?YvIvL7@K`-;lr&Tw+@HD!w6)9kiJ8(mF~W25&iIf3}!w&>2MU^ z93Cpl>f|MSRqEn>O~g2zJ3kD15i7!&--n8<jLPZ2daZ8q(d7i+NITJ%<xbxOUP~;i zTdjTdTzfp{#3A#tpXL-K=u4~nxYp^_l(cDidAst_phDj+;6;<Fkh^8qdwK59G^a1G zj*0Z^_cr<m0ch(Ffd5d$_O{#TSj_LH@oU~i;;~o_>1!&kN%c-c1+eV(B9AcQRVO%4 z3?JfLb3Vlj7=6pbNd|YL%_`ZuFR5!=kU4`5Yuq&-!PCm+lFrFj7CxUh-%DoldaMY@ zZd5{8jKp$urc4AZN^O(7n*zIF-M(){k3@zN{Ca>42Rz<e82D`g7CYB9qMPAeVz}Uo z>-T)IXHW6`)*ov9WGg@k=vxmQ@t_0+1(ax%hl0s?Olk$1STB7~?-%1O*=Ar>e_G|< zgHYV3;rt~WJO8)K@h_hS+=H}lH0i36CI!0ucx0u&T$II_CoBx<Hgz>I#8e?O+FdUZ zZH2?P>%nFu;R}cw{6p(Xyj=Wmk)n}L{lrW3SAn3lSA4?^N-v;(h*p?9(ZCcOQn=Jt zWG2eI$XZrB{d3mGdsz3N&D;5c7*1MA4SP^<|G0ga);IS~f4FgBS`bcZJA9&v8CIe` z_$PbPK^8HuaxM>{!c2|j8XmEEk<Ns8+G)}O&@1CFHnQ3{O8-;OGW(nR-}g?tkSwmD zZLd@4)>K2pNZ-U#nIcgL5%6=Thu8JjyNAh_C-dqnl_PoNYQ0^jP(=9s-C!{-4FE9* zpx=q7>4YLst5ZJo9k~_7x(vIf>L<8_q&~oZ%I6dAEtC;Dt&%?7g{eFH=b%!C?{Ap8 zLJ#hV(zusj>`3)K8#-ABA60<=eZOAj-GWYkE+6PDld4g{Zuss}N(<9JXz9HY$3B#3 zDD)-hr`T0a6lFYqLnjn~SRp1=g3mdjT}t6L7j268@iav?NG(9=grC-mApRd5KhX!w zP{{dX@1IM3%5NFsN?m+_Y>o7JjS~B`34&cvIrwtLP*g&tTkuNk<uz~l2#<nS7fGjo zHlG)VW}g1IKO*sSuf2M{djv?VM0e-=&Jpq54RA>44y}eV<(0y-mYy6XYg}}zRfKc6 zDkOmQM|(53x;+Nkw0TF5ca$BHAWD7+2Ac^v_`HY0wPdNvfBN*u+BCJ3_?`4PsYUrK z9{!BGn_hQ;aCyaPy-X4%SnQNqIa&q|mkMJ4utlBgbVNp)QwBB<j*^a%0mpgP@iZ%M zV^+hL%uX4AkBc45>-Y+9`fHUoF_)Px=HvZ;dcf>+f!FqQRW7}gJq$EKcx~GRsn9fm z$BV`<UOzGjSoZ?|69k3}j_nt>_Gz^=DVHc|mz2da8}$kXAZq5des)2~4YV{XEE6V6 zJ9T6aWTIXD^bg8!lumAvAKX!-$j*ZcU8of>=_{;CM`HP5cm_+p#<U=wBT$%ZjwaFO zn<^dS7NPI+mHXB1P}aug<xt<N&!yAV;oi{xq3{SqmQ|6~LEr@O^$S^9mPw22<Jzom zde-+XfzRH&3($mp=&E#cD9W#xWAWJk7FU7!NZHi*71Z-`;;||9IU?fM*~;g0HM4E+ zz{mF?ulpUL4g$gS%#kHu*-7N}AL7?8)_QN=bFZy#PCj)@zHMM&p2H!e%-1mAr7V68 zDF`f;RVJ>FvLv9f;uaVFw=U3$ID&0L_zzuBK~33LIb!SnSN>{=L|6s?6Bi7Ghc_hV zpmr2kiZzB-=tditE2+ANP>2Ps^^w~aleAIId=5lPNr7!za2)%WEI@ZZPw;<t8md>z zUt1rf8pXPFmbY>FxFSv%^D6U&ANBcU`)P0ciO*m#E!FalFaA7W&x_Z9?~7L>&^7C{ zz?W4l(q6+?9KXtK5LcPdkjld=z$bNZgK>yg0EVC=*Y5j_{`c6Js<|Njti{4ly^K?R zN9);m9Y;37J;j{OCl9_Y-p_w+!RN)^|F8uRmY7>8=QH_-9bZCD=az-C-_1>4Y1KrN z#fm&4DVv&tIY;q8H(*?lynLj6X;=MNChd!<D%=zF^g+Ali?ZnchU=ME^8+ltGo?;j zX)f8X{OdKXV$Z%(*H*m@_*3?c!=$SZa(1K5D<T!m1tYF7$r5m)Y7(?LTKgjY<WQ6S zi8k8i5R88in^hcy4T%k#$YLkP7tVph>Uy=3AFud-f}^)g^r)vk{QQhn52gi7?eCzt zgl6Z5T^swyBdJzG{d4z_P6^rt%zmcZmj>Iag!eZ3mPVH$msc6>nu6}k^Ws*v)Z|LU z)ngR$rNWE)YSUp}Wm!f%3o5G>iVv4!^ev{;yi!gRQ=uTQq5GNW;F3LH1REvBNb;2- z{9>2_dwE&hYZ0BkhoCJeCKeQf@n-!Rlvid{24dt~=j~iblz5=_l+ZM~07q{H{wsQm ziqeqAHVS8BS+V`-^R>e3Qo+orPS^LMAqpPErb0!xsjaChvnK4Pj8=K__6xrFZhH#0 zT3-L4gf{`dtl>+lUc<919ANClaBkY0XRRCX&)bm^Fr)P*scifo;ai+GXuG1}B?>4{ zTeXGOfh?X<D40QGW%FOucE4Rr@t2l{U@8ZJVlKr|+Lz-*Wu7<^F51jdQLdesr?yfF zzoS>iq*z&Isz<W3H7(KG*_^sL-40~P6BdpI=Mh^OsSnkbl!cD*50TgJE-RdcwweBP z8{qry`dQ(Ke8}wPfg|=?y)D<|KN9>FCh47S+M(@l$-e#M{ki7!5bK=9ymi~yO6FXh zyj9^DM>Ha3sZY^|&^u@7;yxxHh%2^n9+u5#b<)BqoWJyXAusc~0bC$nI>&yAZov>p zfT?S9$7X9~cM$w~I_Yt)<)U0-l$shKU^C5KfGmR&6ftfUOX9fZsOJk3pun3I*4sR| z8}HM)Klmg#(}Ncx!5(Ct0NsQ3zjeVJZyxDpb5lj3`k3I1FOD##uOfu<xYe!)F+vCh zTAvIm46K+kdoC_}kb;=#K1YDU?_zBT3<yfvj~JuqMgeP&q()F5lCQv_EtF2>J^0Ci zwRm!*Q~iaLFyNj_e>qqb{0&s`BRklIBLIKSk@+DyyL2DiSV31#_2BBoHAo2%6_JVM zdLM(vO!U6AbyKA;*cQ(k`*^8K8Cp^@OIPnm@R@>4dvSi=k@=<u_lZm3`NiXrx@Bma zwl5or5)Y>D>R5jx!SW;(<b!Igvv?{^sD5|fTxI5hRMi8ZyTivUFQ7CJu7YHI!S~!i zrqJatTX4>^)?J@$ptg*GJ)g%r^=6;j8pvig!s9MyrY&8X!2fsp*DPE%IQ>iLZ~7M^ zzBJnO-{`MdYDuBL(O-TN6cAA|7(#!ezq0>Ef8qTz`imQ4s_Op|{Z&hSL~b&j;-y~I zwR+8#(LeDTy;LG?=Ub2AA~D<TOYs3jh}hAw{>5le>K)n4QB3D;WcqHTaN$(Yzs&P* zrpxgM)5ra}5GVHjmoKHb&6E>ROF8pWc;{@*2kHm^i?nwPjx^r-c00ChbuzIvv2AN& zJDJ$FZJQHKCKKBe+s;gEC#PrcXFq<=d8^KsyY5fj)u{FFUcYNytEok3TFf&R&=|4~ z6xU|uFV3uqw)v?U9Nx7>L8*vk@;g*)pt@2^mY-$YwdbVi8f(wh=qF`hx|R$I%!WZF z6eT)2|LAr9IM_H$8VY^4C%r#7y+6n%5O|OsraE~l$=`q`f&e96o$<Du0qD2%x^Wfl z#!~PPVeWU-Ecgdv@FqGQf`^^`Q6ZX92vP~$kYr=oMq~}zrey=*$ijQXvU<fx_Z{6J z4gV@&4F9EoQ58xmld@ySSFKQEksog%my4h=KLBdS?H$le6h7jLa@na4Ewd-#77N`P z743x`_e&Wy9COOB7O$lt3*>m{I^)7Zwt1R`2CZYqajY+swjLYDog9Aoyya6#&1IAf zRs*FaTZL~^c@Vr>wAwSMqs*{vTx+>?0lFBFpfa9fFy`Bac30l9`~?d}HGZ@O^>A_^ z+KT!a>N-}2;$~(M6=Dkrqy8Ffe}WGGTKU_f842!4#l+I_{(ESyf#_}>dX^)Uk>;pA zQc+C+wU-%EMB{b0ypgXtU}S!YP{63lFpRKR=MH3*DW7I>lN3TfB7_HCQ6`JEfwj%M z{ACJ~6w!%9XE?6*54777<<UE@)r98ZrHsij2>vb1vaE7c2eLHy)Ik1~PJL`$gHoW& zwf`Ar{UQES@IS*W9TK5a9V@S6J6#%{n8nM~wqReE<1fS6$ZJ{u#VymE_{e<qPqz$b zf4EwCNITujKhvxjnqI8Seyw=uOVsT`%|(DmMv7IfG))rjM_s=~tV3>ZUxiZc@c*=Z zk)lKWH`~|$6wGk^yI|%B93yf!5XJ7liM}fAOxcZV^3r1@VscKjB`N;qg^tGiqonwt z5Dbi(6N`EgBNlg|3KVStmFd+3foW8cCyLz??Ek<uK$@@r2(%QsvAuAhWpld$(i2kC z&_HEcng2c18p(o1SIzfnYvG0bw@`~Groyu)_<zr}8fhfvZRFPf&tyUL|2J81@P9)V zDEj<6Sz!H_EU5e^S)lTNA`7zqugHQh0aq5ZSnDeqG}kHetKmcyMN+eMcEdT4B#6^@ zX4&QKH>o=0-%#tYUMCR^#1$MVEhH~vXw*vK^j2X3S8wVF+(9=&eL$-wsf;MTBV7aI zg(%VjM(eflTAjfCSc4XFl}UNf)w%kcwfMB#UueMUz6wi9;eSB}z-tAU2o0l>GWv}A zj_W{erT;KdDi!BmKr6!sV1n2$nvy$Fcy)bqD|srMKulQDP*A~1D3XrpYoCiX0y!uF zAOj^p3~d7u#1H%@lxYkeRa{!ks04dR53WcG*bF1q;3YPbf(wsjho2j89O<YDz)*qc zfz$z)!?i9vhC?*`3(#d)s;!5(ClmAlNsYn(d8#!`22cPb{|!grHhz0@1W2azq3OA~ z&_-q`p%ak7{i>;`>Yz&@O_M2T{7KJU+6%Kkcr|9u)(1B(=icS0PxvoOrEK{p8A=SV z-@hZ()=B@xxQ&;70-pvQK^{gn(6K*!`id%?>A>+*0qnH$fLNn!*<guQ>3Z%j$~AEo zzoUW}*(S8uhv`FBVmxec6(x+|i#2RsnH~B1TS;FAKL3txv>%vy+Z*kmGG~_&SfMYT zX&wqrk<)|a4~OX?NKT@;HbpXCIgy)6aY@ri%(u#`3y6^yS_k=wOl{FW$CUz|rzwV7 z#h(XN@N&?D1V-QbUjQIY7|9R+n;(Kem#BG(;<oN8)|OxnZLUlY@kuLC$F?^=t-KGn zpYQQ!9PSeGw<4;Vir;5oC7(55BQN{=AgwgAq_X~!1YD%!Q!(^(2qk^-mJm!>eqsn7 zm6sI0{vdi_b*Wrshr%-|b4H@B0<ZdrQgi-q38=5g^og4swIcCk)l$aLn1`%eQLED) zkIJIvfjIfk@~*pGX>xm^UmPIqlvpfC_D2+J6~`Rpp<%zDAlAB$DS^r)iH<Q>7zmVr zM@SOW*oeydBHN5$2m*`@{{lwL#xCkNLxuwbFa}X%WdsNSF+hZhD?s^92}T=}^f}28 z8r2t$86v_j-2j?&_urk0GBZZa|L#<Lr_D;9g>-ToLkv33<sS&INt89FA~6oW+&LX3 zmo@&A@?+e{`XAU<Lahhc`2SmpJ)WrYL~O8;Zt?~T134oNBbc(tI7w-WkP%smq~OIU zqSDiI(%k<yWI)-DTq49$%%3YDatfO25AmbYe+LG}%t0E(6VDaPft9vAcXs35&z!KI ze&ziezh$f%Xv`17yE57SbB#qBv496Q=&=`-9!gSVc>-tn^>e1!FBzH5D{n-t=l;(M zuYdO_>VeA(2ZP1H;wo3+Q_NBtqqi|f3<9$h_^4+3W-`R;ixo}8SO+7lW82s~zsjl( z7}`LgCQ_lB{|nf{WBFi`N?UkWOvs~?i)%CcPrTM*&|~5uaOBp3x*#5e*klOI#+Jsj z6HioFWmILIT%BU5?>$rz56p?~LUfG#YaZvN3#pXD*au1bAr?kudnH|T#-mX0bkq4T z4GlJbyRm~GiIJUE-;a-RukK+9Gy$FR+Zk4!BfLS6VQTKEObRaWr5TouMsiJ}RNtqj zEnIE|M8t}}2A7G=^G6SmNXqaBrZ~+7$b*jl<y%UVxpFbUAzE7ZQl$JH=WL7fvf4k} z>acS)*fYFd<4PHuMVuxv%;U<LnUV5sQ;Us~zwOa!UbS@Dbfb#4u~~Q(qT35zxwPlt zW)l?<eM5WZPhC}~Ry^_7>T1bm8c6G9?|&NoSBcWN6U#p&N+qnlp`gXBobF$ht5w&- zKS>EoDT6dhQEiY5?DDT@;SR#fz$1@~LsNF*_3u*AC+ZSuj$0e)X-)`V-`u19XV-a= z*ByF!2ZG%HdX%JjA6qZIO`ZQ-KRpKcQ&L_DZxIV3hH-W0Y;KbwkcGU&gzH_nnjlS3 zzA;{3-+SRAt%paZDux-UlZhQHKiEAmG#DwZip9m0|JbcLxi}GwN-%-+)tt8mg~`}W z^$At9_1MN7gI_Y*^Z36*$*jYXj(Tu6s9MN8Ab;h}ng2}dPSQwk9Imr&L(cj8$LGTg zTP-OK&ty^71w><|846g1wEAhuJ+gGW$caO74j!u;{fa@Iq1sf!3Aq0h$njjR7=Ll8 zlxmtSUFz*TjJhpIjfe#Y>4J{`#?tck(_nTVKi)RGJ6G~E$~E)5t@dh9wvuNqDCR(| z__Kj5Rd-9pY)1EQym~=8#$VBMzYh@D`(rMrXzpbwvT@Y?&86QVqmL@%%WW08u_ABJ zIzF*F`295uiGe?e*oXN;<+Ov_d4x8v6<T@yq51MaTDfw<a?}<lZ8$p%Ls_cv1zu#E z<dK$o<(Gx8unftXz|eoOD#`w}D&5E;xj#Yg{mZJ9|1YajqN^+yOR}mn|Bvhnr75dt zE5#YVjy<Z!v<D4|`iO9?W(O^;(>by8hl>otCF*-PYdT!#Zk(vZX+k+f0_AaOpY%Bn z1J5>b#6gA0H25W-mVW>&c-glDLpePW%;3BKXw4AzkvbRQ8SlV%Jg|7_QaCg^*-!kd zmtq#yNOazK5MyF9Q^XN(0+Z`>EJ)9pl&hQ0oP*TAqJq`G5_Ni~wF#T0VanYucq!SW zyKM00WZwU_Kw`nktM%q&UA!@)#gE%BvGXUs3C&jL<xjkkw>*kD%n3_N%QeO7F4?jv z2ZBVB$yvUEJC6_k@-NyU#pKqO*}+HT^#-+AhdE|nU1u7BrN{Oz|0?BDNfnd5G$)EI z9(-t8qXK7*uHC>fJudxG*FC5)GFH&HbS0aS`V%2<PJ4l#2bq>4GBj#*-pL>esr9EG z%)hXFMv!fF4SHF^$etdxoovoxuWhuYQNs#0{+w!Pb%vcXK(EIXp&pS+cfyT{WktjR zwIr()O3$$hs(_|f6(S4%q*8^wG(F!6E%hHDjAFeOM%EwrG7T3^?gsKNmG*Aflp~LP zxthIyeRLKYw-P&Q@Kf!sAEf8z=`BC}E9~LAD_(eGu`ORw-k;)N&PifEgezaNfBEnE zefI}AGo6kpUZ6azt`mB9x2J!9p=cyEpBv1ugI*4L!q?Mdx9tkMq~SE~lDHnl?<ZK| z`AWg)ke<_)cwTC>3;hov9R^p@>fDLNZnjr(i2PNAwGU2fu(WPo8?UFYvJXb=)ZW8O z=_6Hr;=uPG$fE1zM;mHw^Xq+Zz^ht700l>feFQAvkrKj?0C4&De?OosEgAd=9as-s zC77_88LUZWL8I$HN(1!HPpqL7uvS??4#)Oyd9(*^w*M1^(MpD$az--)iRb`O;9~)w z0E$|@Z2_Nv=uhvDWuaw1vGW4RD8xPHU7qQR)R;?C6242UWz9;^+q~P%+lMvDaHuoG zU|*}uC#8$1H^j|3IB)J7PRw2;B2>wb$q93mw66e*H~cl6;rGWp^vs;$-z6$&>py*l zih?pzAdtNDjk85LDOG^+q~)Yi43%)j8rD~3Rfp>8^6t<0dbjz5++lxjPH`(Y&bMMK z*EhLIRo&&~b0+NwkBa(#$&f<+|7J)*7cFac4fU4Dp6N!Ca#%Jr*PmO-;Sc<*vzgJ^ z)WN4JK|&hAzd{;y6;tuj%B7@q-QqutRtGB_)=Hvu6AghybiW><{6-M|Z5(sFInZj@ z$lAON$xl)l2RQ6gOS=T!ZG2UCo_}ef9Un$nHuBm7WZ&lSWT$2PJ%c(<RYgU>kX%(G zZtI65G0dvtHmoAQIq7El$vb5JOwZvbQ8811bE9z<(Mq!}vic-;FTQ(fg?E2dFn!D1 zPW&ob=1bPisTCfB)^vbt5n8Wn^;ZkET?HxgI)Y%elCcPCV`Vg7G!g%z0cKR|DoKdU zd)8MxZHk$ep++CPhp$WXw7!{_@ReC!fsyx(6GcXrWreI8!bD*WHW&Yu!XV>j6~{RD z?VjdoC6RyH-u-hmjkTG7e15*ObAE6PjecIsy+e!+O!CHqdq_(~&rWqvT*|aY%~Z}b z^8h1Aafqi3WA*c+Fj}h+f20Gg7r}hb#=y^{d&3f6Hk^ZaPsFY+(WT$H_$1FuifS7g zX!w-~Fg9D?D5Xi}ky}a>aP4GS{T1N6AXtd6Qlt%F3upDfDQ%PqXAPoDN&cvt*rL8e zX^@#=bFi&ZsT2Gs)I*e%==*qiKXa<r?WA`0s=W5$E#Y=oJ;fzBT7)d^!rkN-4g@R1 zzLkR9BhV6*bkWrSIo)(UJU1UDW=6gd!a!GBndR;EsIAe}ZU$DWp<=liWnFYLhetC` z?xNeS`0SiqO6qLKPgoZVzr$kO1g|fK57s(VHo!VcrnyOCdJ4NxdgK%A$CLI6$`hsv zdJ;>s1DeR=L;3<Be*kCLy5-WvjGjz@`6;!dS1&v5H(Ty|<Mkev0$sm-xP3nCAMTBn z(}A4n;Ce}`dPz~<WvMT~)TkmP7wL8Fps8P!GZ>=4TnBb`@RlDy+K-eG+1S`1+)`_k zl*6^<Rq%KpwtE{#i-*1B?XOrqPCH+^y+R$c;QOqC258RFJ_SaAq#q(){Lz-n8ZLbi z^Unq}S9V|3-|JnRy&QeMF}dcI2o+1i(NJ^>ynVYE4EbNj=yy37R3EUOjXGSZ4NjK! zk4iayy#Kfp{&0M%@M9exoyS6$Erl?}R#Kzs?E7*Ck_??YOcd8^3bv<rD{j6zGQvkS zt{0?PJ;KW()FR50A?R#JVTvRCYmolG#Fmtpp=p)>iY@67kT-qAomSd9hqt=^v`TVq zjjY^l(qe^@l74p+F9aSs<gSku<70&e87;HFH#bpVL7^7XN`%OkmIOG>l@80p73(~k zVfW6lzlm^JY-5f_kq?`Tn#N`uuS&?2O4D@Ek>YZNI?d5vJv$G{tA94Hn|;1I-eBl@ zCne#3!==tY_qq-CakIN{4_CZ^jz-QYvV0WVlTe5yz0ngLlJ8$bi_K1xRZ@1HYJP^q zN*yagBKUl;s#SiA7nehuT%uW&vv`t9nk$^gM`KM>L9S{vH!g2h40{*^ueu_X)S;sy zgIeNT&v{3T)e<{;`+;}$$?I9YDkYJ9(4#Ap@=-F#MLw3&Zp>N6bbg4Za+W6X;Co#i zO*^FN7{Z19*C*FH93g7shD<gq!R>dL%{OQMb>6LKZhS$)i>|^?7TyN+f{N4BYbY7F z4$q)Y=JL=$qmEEj2TlrYJxI58_jR0BLp(c+e#&UsSzoV_j}ooR=~>}jzg`z&^ja(y z_lSKb29qo3sn9+K6<ZH?SK^P8-C`zv@u&cj(QA9eqI{favF7PCq^6Ym!uVJ^STA=A zFB^z>s44k0x5guIv?cN(JB9D>i|fZnX>fu0_WJPhEB+`mm)xIEw8LX+%=y5KNu;FE zS-<zIEQfMw(sGBX=U<CZI#Ip{^yu|HMxX!Vdx5~tMO<9}Pr)7KIlSVZJ<St$YfyIT z!uT=f0sAP(R$==`#O>rbc>PKqtpl`3HSqO-B$6QpYy8%NhV+z_XA(DuxOaV$PJhDL zWW|e?Ey-UrKY#MiDSU#-roKZ6Wn?J4`)ZtsyJ}i%P#dsJ-!Szq=xwl?^L@7V#rFfA zmgIcn<q@h{x7L1CU7(fEa9ElTMcT(LHw6`)>N^;l$4Gtm20D0b0H{a1__7#h*D{pm zRcpa-(@3vv#4&D6poI5A4Y-F9Y=nA&)OxSDiz>p`m2a3V&eCyO<J0W`wTd4&s%W#C z<`u;-EenMN)zKv8s;5`bMN~>}g}T2&l?ih~p}uJs`>UHIM|aU!)P~2OZ+KR(Si9&y zT5NRzH8%vkk8+1PF1HB$z%Tvf?wZ6d1?_sfTp&o*g_P-EnMVBZl#5u4A3@`wJ}r+V zQOy9vtpaierF*39-K4RunE|scy+=0M*}gQ55^>L&hpOE6hckwu)vRmB59gnn?bZwa zdQ|(Ba}2XdgaF2Fsqy!h)ORO4OO=b`!x~LN9qW}=#~ztOah*8%zuQXy%8*lVW?KN| zeF9~v$nmbyNa{3kUn~-3AH9y8jKht)v(3Hu3!G1A*S26{XxOHi6j5)0qQ|!<=5aZo zcvyhg19iFrVsa#WK2WDO<0IVoQH<s_6m6iyb}oUG)TvK42Ok~%3f}4Qt+rm*Iqlg# z#DAB4VS?fTzEE372bVkqwGJaJ`&caJR9KDR&k~#2$JzGvb!FGqS?B$U|GUd{<eeWr zN^w>#9P$8WG%+{mH&uj$MgOqpo(hJktb2cHHCOshxULRjZpi`%M0B&~l#}db+9V1E zOm%1?q+yBoe6#)V*O1a#$3(k;#Dpc*_2wisH;Gr8v<9f)1NdRVN^HbK%>?xDAHw<w z0V?j{1L~fM7nD#&zjK|R-$IC9O}%S1Z=<^PE<Oq#JKu&+lgJNSCYC2$0;j*joqfu{ z_8J2>`(A=T7KOD!#i~nRL}QD=s*4PsXcwQ4vW|}ec+iA+Fu{jY)T=^^4H;BH!hj68 zXA^#*;i}g+`N4!nUb%T4f&nI|tP1l=yWb4>yC-@4k16@{>!Fq7{ZaU)&62`OCs|_a zv#tTFVtiHW4Y{9#A2{jz?0STtSz?#VNIq>0HSuoi*A=cp#|3@B)l$5_I-A&Qh_H8$ z7=oKIK~4k|-Rd?yCO!BD7|y2`X~>NvthM~D!vL+m7<omDBN1?Q(;V6*rn&&qT%s(9 zp;gN4Il_dUQGQ|KUp5c!x{?p^FWue5n*|pzgifwqZY60|zid)GZrZ;t;X9_O{9JK` z&QbEj`Gf$F(WWyq>!pW5#j0T{2ud)jGco9~CbfOj7U-Cq1p_;j>a+fdk!}!Df;#R{ zSV8eka*^key7dqigL1{9vVsmja?XVaZ5Q5lk0QPY_bShmEjH1r#qVTl?Wom`{!32c zR~zQXCza|A*VdV%;Pf_v)Ot=TYt@&OdTmJcpN<uVixI~vzn1ZJC}eu@+x#Tz@pLFy zLmjCfDl)CF2S2kGM_oIu1EiaG+9%2em`r3I8AKut-kDh!kLhb)O)HDOsri!c!ejc7 zqavpoSs7?wb(WH@Uf3<6lonrbWvyP!ZB7op5Wl~@dxfVy!=>EI6C<^B{35nOxV4pi zVML^e!a*^!5V95F!$cSm-4Kw~HWwP974ic;y_Y@Jga&*vI^c<H$Mc63W$Y`pB>!f3 z%-P1IW}J-b*#<*hfo;bc*rlJom)q9cQ<XoziG}XVlw>RXZv)?X2L=87dV84k6X|m% zV#^eTDSK>TVVv-4MI1p)<P%<wh!Ug`w|DfOXOjH*jg_&IKi}bfUz5sc2i0Dp#?;WS z2s4X(EAG#Hqf@poZ6F7x(7Gke%)Ex07)XGTrK^LAdV%1BDB|-?Veb<-);MABifa~J zuez3B1QuR29X6P7_NyptxVi<G{OT-{g!KyrWpK-q>(r*$&pegsmFf4Hcpi6n$eyXb zz5bvl?*%QTIvh808_5@jx$q3~PGVnIE3u`^2ETpik~rQb$~GmfUOu9UAA0{D(o>a2 zd=C;9R}q2T8wh7ir66xQ6LfbLv~JZt#HU;D4Zph$`-pK(`TKQK+Qz^d2~79$@`J#Q z*KQV~j)R+pUH{`&IA)*VXFCxX2hcje?cIqtPAswO`QGfR61yDEya%Q7HLoYn*SETx zmt(67Vtx^r3!(1GVvVDx>yhWTr;*dqi%;cEJ3lg??XE#i>&A%}yD_SNu5}7J3PIis zpmvU>268A8b)-xDEsD5jOSSR8jDm^YpS-Spt}QYn$b-&C36&E7l1>k1`DT&Smf~fW zs<MSE;ZQ=M)6BwnRkFLl2@$PyHEoK4sa)UL8B0PM+LoAYZnq(Z;yTjFeO3Wx#x)V9 zZ;5mTQiBxwqwSM|epPw7np5_#CO(yT&&dppP`R(x&*3k=x{DthyB@#uaZ&do77X$R zZSrR%OYTX6d^`ef*>8U_jSC12u&;_vJ{BsxCiLrs!(<~%6A(Lg^JUBVTi?K}oO@b6 zxm{FlSbq0|GuyNi6el`U=s#OoYPz|w$mjEpfm30M-s12M{`B&uMOg4m=z2Kb<6=lH z%6fHu(Aj&_WbaM(mY+A{;0{4xceO!y{$@4(=gDyTQsg!8Pd|SL=ybB#g1Iu}1^+bS z14d_!mND;7a5GuY+p3Yg*EAA|WaCRs@ne8BXuNLk$m82<!N!SEtGIm|-L?l%h$PCC zspO24K=kA01M-v8!}HNy?`Eq*>5;z4lEAG)i4qk>s<Cd<+4A^ler{4iS$o)YT9R#A z7`mP2j7(=BS-`Y?^%ry%*VY)>pUo$!ca%hDUS{6X!|nRo`m+aLYJreS4mhbigk)!| za<aRhjA_+no&!E)zDcl;eJe{D$XBT}`mo{gzs(_8ye$8Xc#q#-`%97Wr#n&Gmp_^O z7kE$u>u+2?!am*xNJjV9`WLz$r;DF@!|hQu*SgPd%gx`GHjjS<jG?mmHn`t-KC?$_ zZ@bf`MR;#ivIcHN)0w-6vwq*N0P~}gRR7VPanAHgw~<<Oe*Ncl`*8nI*Y&v;9&#e^ zFu5%{KBLbx><Vp5vRM7Sb%0%>LMGl)J?(QJ{FyKw3C0JplKAJMh_TlXA0{2MkWn9m zoi$7^>R+g5CkGyR-JEmk7=06n3>>=j&l*`u9dHA7_hF3lUvKl;zTFX0oDHj4Bd)T} zx4Wu&P20dmgc7>W%*Ht3vaL3V-eK}kpCZMh*ED$y%8#RSe%QdWhwRmyP8u=&bnyCQ z(p?d3f_zs5PnJf$OMdN|tlY|a(N-2p>*3V#ZoPQJ$>8tl|4UpoLr68o!i3)vo~qhv z8WU^*fn8jOU0h!azCMouRTd05=%`6bBlDS*<`^6Zm44flfC(!F@112L9i``l*(^l} zrGzP@3{r(+hPt!;y$wmfFgWjyq=^Dk!rWWYLWvUjt`b?&Bcxm+ue?tc7K9ZG3bNqb zHA$&J4@$KRJ^-11(S(YD8v*B?MG+C{GbsPf*byC-1<VC<8cj&@krRRl%tg%O>HXk6 zJ0p%7f`}zA*0q3wJ)}kLI6{c^H;_l<f-@#UR4<L(@p%$R{pYZ{^UDD$P)xs>+vi)i zS&$kfJHDhHA4+^u0+5B$B`5wVBmR+_x0`3<1$(`CBLdCxOn5?Q$=55e-B|p~J7`fG zZL~LkVX?U{|L(#q@ixbDFk2@yUXv0S%>&1_r$N7Jlf>w~YUe93DPUahS1L{A?P}^Y zUXw3J@m6u<5Lr4)pv|qDm^Q}}capd(|K;e^1UvW)_c~UD#7k%`D66v|!xx;$>t~lC zE}D_BZ$gc|POwb55n}&o!zjldMVXspQuAIxye?06ne*8m*9ZFX_U)uf&W}aF`$GW( z!I*2peXqJuFeCj~tvK>mq-M+ALS5`{8NH5+Rhe4g?aa9nUh3*EIxF6b0-Fm;_MQw1 zSImi5%-^SqVG@d*S^7tCkbks6!CEm)#L_`=I6AJeD+&jJQ|)2&54S=IDa-Ik8v!%q zR!&HE{Vu8?Qzy@4)NynhyjY`Lk~v@N?iRvWOup23*?c%LAN;_UX$*)?<lAQtpV3<{ z(}hD=Iu<ly;;L>jtQ-hZ{*i<BbO=V0A3odHUxyFqK2y(@0MakO#2fUwikN9-f65?n zu)a9)DFp2;3)Vpn+cD;Aw`7&d>dE{TuJec15ez^NSbRYIB|)HyE=#~P@dxFUp@%r# z+?ODEd9O|SwXbn_^BmY_6yLw)L;lR|JPOc7v~{B4|E|@5N5t@1_jC|C=;GEGOxV`T zwc9Yd^QWH_p-DKm8?4C#R~C`0ZG9`V(W$*Yt;uQbQCLGX;gE+%WytI9qaMqA{R^aM zUP|?o-gQafk<j3d^spl5q4cl=ugcRw$TTQ+rM%1(u7$p(oKC;jLOzx~T8qh<!aZlX z<!D#L#m7~R(|2pYm=ueXlH4K!OXfaMGDPRflAaJI;xI(Fus~OqXVG>^y7thEw?IF; zQkuU+&lnJjVq=cX>&43yOD!7$a-Jx+17eQ}An=_!UQXGIcF)9<2=G}hdq3@>_D4g( zijktq(qKeHv40BW4uPZqcY+0zfZSC&_(X=P?FMPwL~M?7W;b4r9L~1R?A9Pkw7S%= zCpRAage&%v!h%@j>y|E{X65(0|4I}yR-ifGR*pm^7Tvy%uo3tD6W41Y3LImg;H?!q zDM}z;^RTlJF|?76XF`PZt^d+_({pRwsEC7EnH8aNlRo|yf@6d#G8D2?@#g_TOrH4w z(Oc3a(4wAVZ<d%Lo5d7MF}NbM8_B;j!g-s}(-G2^Vkwe;;fUOg069GZR^_Hhlx8XR zqSJVZeXSmnSZc~B3AJdv*yG$I@nW>$Bb^J&fu66J5ekHYcw(S!Kjf%Uo|KqPkrKCy zUqD;g4AF}VX_+G<GY1IgsiCM?wAqcnWD>?&${C`c?G@Xk@GL?lRp9e{Aj%obsbU$T z%Qmq_!YeT0H_UMGD)WLRg5F|srw(s$a<rpFDMa7v(I{gHdfWoEKneO%d5T>q&>}qM z%RwN1njlp}96w8BToKA#M3yWCD^0&whEH3l_Q1{}rj*!eQp5lmTDYb&IYu>;ed_oJ z5%zf1>(V#AblikNhAdx`_F_TJKWm+vqP_~xXo?lVzt^V|eD|kGhfgUO>0ct=dShaY zs+f(g2+>19<HA+%v<W|=9v&}P`M;frSvS-Ek-9d4O%)H7?s_1rQ|a?hf6}LgnM)kw zViGGONn$LPD>0}AkB8$c<4=PiW{bgTBfoTjt%Ue+6rus{iUlK>s1dP#^A+=DbwE!D zN4rbI1-ZO;=_%j2OQ$hXjP3C)=V-#g?S76n(|qy$EJX!j_or82j#qvT^(>Na51&=r z(Wh)tVf9px#w9B+bNiMhL(%S?wCy)n?a1e%_Ow|Co~u`I3}`tm8V;(M(eGCbOw+De zyH0Ewg|_k5(8Yspx#ks@U&{IC2!%!DQ{lAl^X}KJ<8(YG*1Wxb{y@q_TShe$9on;* z4b1YyKrFBkAH5MQpb03;c&Gm7F;&yGNH~oNX9bU)`{^gOJX!@d4Ex}<Rn$5v=4QpQ z2r8zK{Ev2U4&^a0jzW4NdFD?`4)`2_fmz?mKL=%v;LsFe2B!dcz>i@IC<5Xx?Vv%o z5tr9*<8NFnL=Df4>Ozvh5{muf*@x&^G|(aFGI0GHc6c%cM<EC^Hd%_NQ%DZLlE}j% zj7>^qYEza02RRVJKiR;7(PsQfie)*nvX9e6q<}i02sa)AbQb>OP?RgD)-XVUp^g&6 z3=ON%p~Va(T!s~Q91^u!_)-X2SqM%$ULBO20TcL>`+k|5BB!F^;MY-IG=;wW1(<#? z{|`scA|;l>SSH2&!KvypV#&seIv9Z`(}TzWXUH+9$36|Y&$Ihb(H$dp*kj7XDsj%l z)ROL#p)`^WCFy!~BV5CK&f=n}zcuKy$g$V0C44w;Vfb4^l-t(*ZFIkHXD36IVvOMo zZbYcQ42OAo)>vZtG&+eF&%~g}vO1AABclW$s3wixn0_X2*3{0Uv7~1x7MNq#1H;M= zaB3ZPR%)ObbCiQj49A}V{XoaTP<Mm}Jd<8rY{Fc=_q;${<nwOk9~2Z|Kx}RWr|q6> ztE$b};F5{Po>zRv|1{%zDY+*jCn+y&mQ`put&G8A&EpN2J0%Dac|11^u)4qJokE&J zB;o+o2yJ}=^UM`Bl<Z>6E*OI4(o24=9>&m%nKuQR*M>Tj)IJMKF}6JsxB1)2n;;?% z{v(}}xUAkIY6W@ksbpbE`Qr+>4s(6aNjV;CR)@JV1$GQLB92capnCAA*8@B(IK*d; zgv${7!lC7obmO6y-vf+tqF@d3V4-4BYCy^mo7#?%E6UQBoHXaR#wkGaH4&nSb5|6i z@X7|A8WM;;myz59m&Rb=Xs`n+tB^%JOo7KjK`fw40O(Tj3WO}mAqrfs311QQ)`g!h z{G$@ST!?&j!u^FE<|}K2HD9o0{zfUvg5LK5L;<m#W6^~zbk$<9=6+L_S4I0rQP<H} zdS85`5m8c<vj)P1aN!IMVxTel+g8g<&3mm$<MbMw4Sx7?P5RISIN@%JXrSo2C9>09 zD7rc%VG&H?1ZphqMynCKep8tkg$!turQj|+s2tyN21v+>P=Mx&L9YP>Us!OFVl0Kq zsU^z$SVn{FI`5WZaZs-_5h_KNVk#q+Vq1JnxUt8dmvkg4p!18lU5bwW3AhC+P0$r) z$g>x<^6`mLfG6W3sRv5SO#th<@+zwU$;Y6Xf?~9jv3*N16ZB;2xcE8?o@U0!+pu3K zrSij~l`Q{DDSkN>BTv1S0)~OU>rm_z*oe~+LKJDU#b~KS-V6+=$s>V*OjI-9URfet zPh+K<v3xTm)Fjx+C%?H-8Q2?PJN<C21Qxlc4MVa0s~U?>{6{s`CH%T}O0Y)s)~2#` zen<Q#^7ru7mjSF17kkSQ0cXnu*?X2tTqt9bVZ}o@b5lgsP`K!$1nQWrYL&ZmP^+n9 z*gySu;1?m4Vs&N1B+wo;dKty*P86q9^!N6O2bIqmacW(jWUOxqE_inoZ`N2Ia@#DR zkL@zUsAB{x&|g%F=rJ5Zh79c!z8-GzpM=0OlRtC1Z!`T7w8}9R+_I5^3N*Knr5V}K zt1e@OLfQ7Lc2#vh2!Yj7mL|zRV$02st!zkqRiy~&Jx5`6*@i7mkQHJio0yQV$0iio z=@cf_*_A2k5Eox(Yo2&MdfICF*oP=KDV1puy5*|WzlqTH=g%;ugc(%OhT0phxQL9O zcDJ<0ch{8P>k^i3pZ9koja%byZb05JQ8Qopt?f$t1P9mgs`{XrNZ<P%npYDuQ2n5! zkbT&^;p5Ep&4r0H<p|4~pzDA6$sazW*`tRVN;Q@TvBl>UTy|r6KMAX6k3^H~=WZDG z3v&@mbwTl%&`>Ubg@rhOD+9M~)6%I_O2COSqgGhf66%OTh*z>@=>4K!|L)A$Vf<Jt zWn7=nBehyG{p`z@j)U7|qLLNLGY4|o$xIOP6FBKluWBw#_x$HBJc7|T^P|*|rQuV` zJBWn?2<U0s(!;l{^qB)d&n+x-OH2!am^;u+GO;b@0pXjP&IzlW=vVU7yaJY_RP!v$ zuSf@99}7sMCJ?d3mj#f&Bfy6h>LY;p&+U|#d_Z!dkaJ01tlQqT?Qc6Sl@FH6jKm+o zW*F@1`~AN2T6($^l)k|J$hSrt>&0ovz-$x^bKhIx9=*ZfG_z3G^>6#2YLVFlFD+$E z>DNiqfXla6UsJ0#Jv2n_ADR~yU6J7Ns@^(ZH87F%e_vo}pPK9uu=D=Ibg$qZHXCzN z1L$UmbH2n(uhp;QrHK*osqH@1y*W+kfuZ+?xOLuvIEQO7R1EM3FXs&uh4B<XW>GvK z&W|c{H}8cx%^beF2J8Oa*(k8R-P`-bVxIlB8k}<Rnzy}n@@JvGGdMV#`XQM?-2Ie; za$PZwEp4~(hT}L1=}~p?>D{5d=_DPMQnUFq?m$Mm=6=Kf4C}zXGfo3}>vU{w<3khu zXVQn`!Fb(r@qqZixf1v5)|0QcVSb=5C$T|e)2BY;h*>0)CHTQnfM*VdDHg0F0M?O@ z07^LE1Fak1i#f|K1oE@_u7pcL-MA04QcifkQ2iDg8vJcmOaQoS0QeFl)U~4D^!}Eg zHa(!rAUQZP=G%6!`dxxa@A#;ak~ShdvbY!~vP&t#ws22y08Dfk%y<CIa8sftpJlnb z_WcKY|Hm0`<(CPOpJUcZfwuv2PActcS9#zN&X;qv@(TOTY~Np{r8Z+~-NI!f0md8q zF$|$J)*dctDGV~k!8xZM9h<@W4}+*NZkY^p5h1Km8VT4y?`pxiHWuccS|JUkURyA- z!ylA}-BY+2r0oL*4N#=RRM1ADp=`kwQnpU6QBt;7e^3)Qj86~~CwC74WS?N9$Qp-d zN9Z9eEe!@Th>9^uQ`=_xyKPZNw(ca0P6<9jpc@^As(n(*j1itH_^=rJeLZO*E%GXM z{nMO^;027~lku>vs4%11F@3~Lp^_=c(N&OXCOOXr%HxJSKaqLj*Xs<g&eii+NbyIe ztS5MYe=p}xQ(c?uJb>e@bgyp8l(nzF+NJW3sdsjC_0yo$wL0_=8?}(S8M&k)o22NV z`f&b`m&xzQug?*fF)dK!(=s7*&yrvLI_aRgX@0WsFxMZ3l6SXRe4|_aWdCtJzaPy1 z@w=0ldkyPWHUoLwv43SoOJV*k=R4O8(w&6rnW*tsf`h_J{ZM&i<ex~aV`qaswayQ@ zL%4@l16E(QPQMI7Sz9&Q`89A~<e2KV(;{>44bAplB<gAj1!ABe(lD14A(b6y@f*!i zvd)oF4s>!CeesO~kgl!}2F-|rLOuQZ(XzsZ?H^}w&D#1{(ou{y%E-duP~ZQEArlD( zJ1}=;nM|E>1=S9w?GeZYdHKdVeU0)eHm5~C`#HB8B_!0i!&XC(#6f(k5lpdCMr5)0 zLEY-BWNKz#MwSwL5g84{R}J`8$#aw_*VnzDDyFc|*07J~l~ba;@HsAPW6KohGt=n8 zK(9MF4o1=KQp=A`ruU7jtpV%UduDm3Ne?P^f+a+NJz#zBYTb*mC_Ctx5TEYqix|VJ zwjR#-z{fT;7?%|C25I#aEqJjLo<y+%dF+tRB(n|c41;LZ2}@!L4Srm3DnZ<UW-niN zn2BXsk0WINjIVn&2cfjjj<Y?)FH>&k-$2CS0`^tIy+kQPzMw1EAqw1hLq2nlWJA6% zoX5Z2nAqWka?+qH?(8dE>Z4;eVg|7F;uuNH<DJ8-=rl9tF*S^E{2@v%9FsBVxRw&w zV7R(aWoRMy>D9U==uSJy%h%oRcl<n7w@43qwK!*;vIcF>c*2v4-Uel7Xd`-dPX3cb zsgyAM_1H$@PaVY(qKoBRSv9p_P2Vh?_dzoJX6(Lk2k<gT9rEbL6S#e|C}22+?W9-R z1xKXDr2U8veY>zDVjG$F2$HThyfZ{5axTka-23Uc&kP=VqCe3k#A<DMyg@5})B8!$ z#+f8K{?ZYQ!2>c%eVL-kRNQAQnv}-~qZw`llE|#~ptWxVCRVS4B3ND(gr9Y>dff?? zGtZ+nbcFr9bbgi}%?7$mJ)-!gypOtmvC3G8RO5P@(=em6S2^@&-i`>M&>@MVZjAB! z_Q$uFL53haZbQkBMh6|DAG1r+FoQGJ=sAF1e#&+~%gA}>+fcJmE=}unDnty2Mm#WE z!ck||xCnE7uNG1nz6j&8ocV);-$VE~cM0&J?r3glEKV;r?^!`cGp)2p3>v@_>Afe` zkcD`&sMQa)tR;NF7m=KN#^2TDspk@vOmLtcM$FZMb>;ttX-<Azl#Z&#NT(H&U;;hp z-k>F}g&IZq3zH#?`z8po+<65T6Bc<A0ldRDOX*pZ6Ukz{?2h<VFRNXpQ%$Gh#R(Xz z@umzS?9egy<*fQq5sQJ0zv&%7EhX&_KU#uau8wHRD}P$mK7Zn?59*I@cGGoaaW=1a zUL#hL&-?yswP%%v`=@UkWp`?a6q2tIwCdv7-tS9bbL8hfv=A0s?g4=W8*TmH;a*YI zZDLPK5s$yGkN{$dN%iUCh-EDI7Wn6Foy@71?)F~S)~}s}_c)P5<Iv(rHYb#L8B4ed z?Fkc#@3n@&ToOCEDU^tC-ru{Q{3SY@zdQ?ml+P12j}djQU8Ig3)Y0Jcq@C_Y1R>V) zHN$L_#~-(1%sI0G#D|$?T3wMU781;%bvS(Dg{tidYqNq?$Pg{nQIupFvX2|RrJPbv zPXu#A60R0vr`X6KT29tC0@5;t#v@v$&ui=2=66Q##B-j8ZEqA6w7MC;XJXFhLj>DW zAhK2na($|p5T*eGq_RE#!HUjsT~QOk`xp_7GxoVV|3SD{J&etXWL^pX_-8MC_GZDR z5F&lIn&e7uyRj9f*R0zmo&O%`U|A%_0EO-4%p@J-#|47<r^9jI3#~8@;)gd}E^ZoT zlbr1z7sEe#oVMbfgqD2;?Ik2szHY^*X)Q-z5b0FWZSi)RXm&j~$FcbzS2^iD_hXw8 z$IH)dTI8Kb{MhYGcjv#(N|BBC+5QZ_pGYFOvP?k|x0)cLOfY*}5i2#AO;F#763=+t z5<i=@-2qcKLOdRLBLI#0b9b}bm5j@GUj{dkM>*K!SCmJqg!i>1;|t^t)b>Dpo7`z= zPb7-M>(k>Rq1qN$m#dY+>pbr=p5mE)0x-8bG<W4XvsfCGXA+FD3_=J4&h3TH<;dNC zeETB(^7GHij;U<rg}Y|QCSWct1cieB=N<3Ko=$$0Y*NY*!|3zTm2Xmc9z(P{e1 zY%!xGea?zLvhvXjk@|(ZM(t|4u)->i(J09#J>OK4Y>rMWGBV%_vvrbD8bcMXSx~0N zV&xB`K@rzdjlFoC8{!scdS2-4pC(1o&y3?DS@&i~0a;QK%Qy}^OhtsvUOUe2*^o5y z$Zbk152Nx!$?(EjMpYBIqVOs}v3<+Hy)V$wMbgcHEX?S#boiY8KRjePK6Bn?zSI7e zyjmun9;_(SmPyNVuI9&4RoWG0#`ODbp$x&~!RY-}+SD>n138YY@W1cc&9^)<P{I@7 zH9woR)CevGgUOvgp`2l)#7)_^cEc&E^N~jWOgXxlk?}{l;BX}sflHnPC;uG`gV7@j z*3;j}rtY$5roX+tR{`J#IKr-55(h$jtiw#&TaQu$NB{zum;#6zC?uExDCf#I{V?I( z_U;pltjr;k0+&mRx!HaNU4@C|(a-o60oB!zm*kGco*_8*GE##xP$S?8gE9$&UY=58 z)si&$1(**N9SMXtX?v)TAz%VvJ}Q_#NzM$&02+V_phOOWMg_T#8&DDxr;{QxDn9W| zh?bTVONdrnnAQpk5kl;*`qGS6Oxx)jY#lYX(WaU*Y1Gv`BEQX9u|pJ7_G1U7+jcwA zsRFZL`o(XapT~PNaaRku*ljI7$z`N)YDPL$%-;vUz2H~k`$el&8-}Wd30nB2T0inL z>SCa*slPYoaR)^!51b3U)!A#yJD|A{=s%p^-}%(HDjA$A-U%<|(rOP%T?>=|`i-81 z+)ed_tICgZrsd@=433n^XL^|LmZC%Lh7U^ULdwSSptj_k_+~s=Uv|;o&U>nFYYUM` zIl~n&f7Rw{*FdOf+mxWMe7FL4Id;9Zr>26_61sln6zASJIIOu#qU8QzdATzF;{TbS z&wGggXMbvRv(7;q>Unf=6{6ehGd7)mZXb?gHCGA)=<f(&QDTgpo4)j;Zce9Dux?i2 z&5S>6RzPvDMEiyZtAATiX<hb|ezkqr7|O5T4F*g<FZdjvnXyeHB*=S7YsMwY6bA}K z+pq<wVcQ!;(9t-si*_!w$U<!W=4gs3plp4=qPBhZIx?@GIsiyUfFa@1avVn>v_CyD zC93`Q8O|?pkN!}cQ-fN9o1vspyEgRT%8N}N33EI^zUl0Tx?<DR)>B60Qmk4|<hk^x zp=-o>v=NM~o}7bucaik*vot}Vnt*ug_pD3Sq)!Bzk)5Kn-Ppu_B$uBvp?oMpe!%Y? zwsS%}N>-3p)5~8v7zEn$J%(fYUSuL<7j-9m7V-a{t+;g}sMv*AbNKacX7xkFThhQG z)2ycaGx~PvVS{80<I-!Hq(`M$&4yzeISp^r#9;eAhCaq5j;H<&R5CL?Q`b`?Av=51 zTay2tcnfT*JW-~L@}3#gkko@u%TNU3kkrI=@<Ay>x1$vfvqTTBb_0uusYC+K(*Qn2 zhW{PAx{0Yr=rms-3u~7uvjk@^t}>8)2A5@Xw3XzOd3Ei%Kd*QCxy{sZ>($=V<G5^b z!Vs)x3gOKi@nmbxGQ~NP_zHzgiMkS|H&9(jjoCXy7pOKj&(SO?_f2xBDUrfkEH$ZK zfUxaZYWW1=P%7;(f?m91TpQ>=@Is%!AN2GAmp97acLtSJ=PjlM1XhZpi#-@7K?;0j zmR_6&Ci+%=vQ4u6V!&s(_~tgtvnk-~TlxKiu!}~+Kt(71CJU$!n(azDl}k$Dn47gr zQWIA0l|!HSBd5dNWrIZ}&8#1tuxGp1LaIy=g%Y9fom@nx?D2avi=1JfIFK(k)E14e zyeHlxHFRuFNsZRKoaz_mPChSHC6DAfU5L4LzZ}}g+z5|iu)@%rJH)|Msaun}KOeuf zzlFO@%l&32w}78OHZS8?^yGC~84Ja!0ja79c$}m)IbnXCnn9NhnK-p_hZs_>6s<ZJ zsd6z1HF?uRvfn8BBi(u!FdP0AET9~rr(E`6LaBw~{?u#qU4jjx@@2({(Qxnz*(L@n zyd`G<?MM_;(^(*TcFV-Ilj54vsq%HJw5PSRSmq<;7gLqRLchvcF*~GHDd3*w&DY7< z5+cuE#^-lh$SMt-tIG3>2BOqQ%z+co18Hx5^X|9)+4$Q*{@PmbpY$cB3hk|zIuf)_ zza+$RM!ZDEnD@gTLo%NmX*DTA`7~*!O~$UQbbo~is(i#>7Qs#!XlvY&oH3Ke%%PYK z;OQaMa{nT%GSQ2^jYETjX7qMCYN1d=F{7!GyK)UIVyV-Hd_Y{m?d1JT>;2yQc>d5+ z!Q83=RZ)bYccUa`p!MsEAQqjhm@u7`YBCwTIGcJEt$AiejXsr5ES;bB!q~i;dTNEM zta5B*MBizs8EMi}0~Om?BmEvLi?xO}1^kD+F}^VVY($;eenv`5M341@s)#_Bwet>6 z=9X(2cNi%inYKm)m8x834;zMK3|=s4nIW#p^hs;}cu7n}O;Sf-249Ko!77t9wTeY0 zNq7pp8TSJ2=nj^MYKykEt`mBL#0h-a0FWa#+p4N$DY4`dD;zlHQZ%Qfb}YDJPS!UX zicfvlSwc#`W>15e|HXjr=nkP~Y~TLl{C524d8xmggJGU|g{+bQy8FtHiNU?Z`yKYN zqDbmdD?zT@1x&1gFsaJSDKM<EH)fX?_yBI$?ew8OiFn#XR3hT67Gs`4fy_-F1V}2@ z$R}(W3m8~Glu!=ha7g}cIX!jSOsOr8avNWtfOw0;gpY<^++ndfF;GEsl}NKMUdt)q z{Pm_N3Qe(%kQ>rU`AI5zmE<utG5lBhlr}zv4wMyKY+{i&F_lJ+q7-2Wk;}FxV5;A7 zPKFO9igq#$of3#B%|R)n2gb7$a74yLWOJ_|z}~{~EiT{h`&NC8&EBqpl^sW2R{l}g zv*$fuO`QpnY#L09d0e>5mFNy3N|J<={8oruMKEB||3vSnEIUFC69#o)!m@HkO~2ar zKnYalGtjn~M-x=R!Vo#hS6fMPy%8y^pG50)fZcHFTfIR-<<#cbxuF~4KQ6jVg7Mv3 zu6`u^XB)-C)@X?z@FsDnbgZ|ESTdLhPto|WtVLoQAqmC(fa?z>`}JzGpjW&QLQ36l zHz}e9u&<&MGdcu-r`XSZa_VId;XBJY8m8j1SZ~pEKx7_T!sqY|ii=DxwnNJ-erGLj zffIx8c_VMNUYjg_thD@kT>j@I`KPtz{H&D6mQ=yO_Jm@%dxSXHQkt%}MnZ12Z=g@< zXT;zl^Pv>dykezq<xj<Y=?SzH<2Vg?mfFliQj`L0wnwr?PSLVwG9Vt^=JZkIV20`$ z!k#`EyLz@+WB>`djo?6YSAr~^b2`qtAl`kwD$5~<=yhdK<gO<<XBmDI58yOk^ps={ z+-lZ3_Ba4oWyO&4ggEW*t1EJd_kw}Pmia6-C4FolKZ62Rs|9$EzaPVWS3K!`bliG+ zUH7qCm_k|k?RjzUcrvcJSGUq7WXkW&j1BXSQ&PUG0uUG8>29_xe&7iBI1pk>(>c0{ zr{C#D{5^E8TwDbiVT7(<6QYJ&%Pe4It)~r+-(Z-DPWFZLh#TXvo?5H_%9xAs4xxJI zp~7iGo%D688$sG6Wm4+n<{+;TjI?loQZd~GaM^-Rxe>l)F@=dsl9Yg83&BiPINB@t zSlCorrLotvNvb=$GPp#dG08W}v$R#}L07PnWeQo-2Y<|e{N?M~gOS5Wo#5*78<(cw zyEfy8$9ZM!^!JC$?<Bmst^79y8>|X<=X-bAR&H@9eY`|D`uUeucFt(?);R=21^uqe z!^%r&{_XUrw7QjQ=5ahpr34{vri@Z0@Nn}|5zHFsas$W7NcQeA*xE^{rdN_y)g`5C z40r{FlvzxAS&{_IQnTdp8JA$P<HbYG=9MxvD8XBa7GJT=5xaL!tInAowo0%k>jOlK z{r$77R5-w+hxn}tH>#}12t_2bm5&2HCr5r3WnOG%js?<T$w_<+cF17+rNXOAb5pta z+Tq*Jpq7zxs#>?G6*@-^rkv7^WCX}VaLUtoXNM`tt7C0>!{c+*3tnv=h(2tazsS~q zxP5OGpQ=ZxBUXT^z;T#I)QPXX*QL`LqOOjx1uv$8k&vf~vU)<(rYSBe%Hl|iI$1o- z<TzN!;=rB2f2h#bt7@p`3Q7qGbE$5!QlpX_F_fBGreTR4n;^&~wiq|mDWsL3OKYev z5DLJ?W!A=Hu8N|{W};y)z0qfONYp-=OJTGN%(F6F?4vHyO4KG;NVP`=yc#HsX@4)k zu7(11H`$dDR)vJ-G|7(x22g%4&xtf*%BOX%tLX7zr_qI!F2~w?KuHZl|Hw~gKNXcW z*%CCUKyk=jI%<WuK6snD=sf!M#C3u>`z<{uytjE;)m{ewz7Ms?(Q)fHR0CWjZv7G9 z;Vbk*x@D&5#B9{GfT`hdk1x4NT*HDk>$lH@no3o8%beTch_*tnZKE9m_H!3778kzP zULT=)8Ha6NH%~A6M^)Cshj&qE{)w#hIALg^qOZukOo>QBuZMroy5S?bQ+}yTe&3}f zeP<yPBge%ieGL8d#l*!+2xWuJT0B{)3T~;N4zLN+k&m=#p>^L`qEvk}6l|~GWo7Wo zK(I<Pp4PZFdGBIzXJKI-(LZm`bFqBk>(5!fDZ}n#GYzOt2j&G#?(dg|{!FNob8Uhj zIe5z!ycuAf7sMRSgOd$v%C{;|UjE{SBvaB*;vK^xM!rBYR#8`VbG8eeD*n6;I=~`K zO+M0Md8X=%K4dyqMYqDd-_Kp2r(QlQ@`%2`w@IV>)W*IJ!|uC<*JP~a;aOy1tRgDY z`{=oi6#;rcCzLZhBf%H+Pe#~OKO-$S;BgD{UD)yKF}`r#{RQ}Hc~o6PBG3ra?R>G9 zshxX^zlFTvt=YV&-ko-Mx$Tkc_4Q2W|39?7bx>T5)~5>um*7DY+}+(9hu{vuJp>Cb zjnlYm2-3K_y9al74{pJ2I_JD+zPaB_)zq!J_s{Msy1MDT*Y3U6^ZeFVJ4V=>(nFH7 zJ3Fpdw+KDlx4tf)4&n#5ixG<R6OP9q^*6F2TNs%BNr6sAjwbJcfB3yz^qxRPX{Zo{ zRh9`&HT|dGN-IJ+<>^0*gw~`xgq}QIUtdlVEMuy(FOS5TTi}&$TdSIe_5+*$GJB{T zA)pD&H6lTgWA2bUpoLWD+6zwn=tt(NjCK(;T_KWak}sgZkw*vgO7)ua<-04AulPd# zp4h*uJ{T80*qc7;w_ICs@yVpB=t>M;XA8B74qlr#61%Zx9lopoqBr{?f3Je|k$kKx zr|3qPY|X;ds`y380n4ot_=V)e=SkD^jLY>@;!O(KoE@@5*YtEz{^&2X7Y~8<0{%jK z@iza4_AsvgLVMFr|3G_N|AO{h|3Z5N2LFck<o^Zj6`Zjv$U&gJ^gcO$X^K`@TR<+V zt(@#LT@vAKXTi1f#Dg&!Fn!#pl5O?qd6(Q{A#N}~bLl!$MVqqq4SwOcGwYrr&D*Pq zjg7>UQ{;XUZTskc;pgjY+1oOa#pvr3T{d!`g5k-Ucc$=|2_%duoND{aLgVX$i@{~H zK;lm->BQ??V#o7Wla|g47ALLnmfX_oz#j=e?B@;}sYbJXYv0VywkZl&(~Q0Q;&P=* zpY6k}BbAdrO_eY@C*mvzvI|qc3T21)+<}oPBJE96&#pU>B-L|5x9_b4Kt!I;aA_46 zcnv@+l_i+T#)6=uNK9}}ZcdIMXCg_=#D=nPJhOK8kVo6hcyi==`L}atLz!Id8WlXI zv3>81sm~-w83dy}wAOqP9#*=^n?7G8WJnb_mVfl_=h?f`1UCK)+!Kc*^Cw3P@Ln^U zEg$u&u;y;X107dd2-(kErQ96|X21v`d^Q#&vhAS@;`PsWK!zSe$q?7g=%J^DV-e9O zm4n6)zEFFYyE(2_5(%Rlq{3=pf`h?|e9Jk=j?6%TqwI(Xw~6hi1SJf854(w-?7+N< zt+0tbP+R@pJHU+IhTa<{^QY2eD_XB6)9ddn%n1zMHw#r%m+QIp3do{tFo`a)@FK@A zbtX>yK}A7y^uKVOWEeKfXNu^<vi_xqxx@9w%}=LNk$-H^P2gM35|ATt85XYIn9WAT zr@o%GB7WpLZgsbrr(N<bNy!3;eod<^V5ds@(i))kWJB(Fk(x<J*oTczZ(ns>LQsN< z1DUgP)T&_|VO`FODl}gw(z69yk`)L;I64K{PbR}5Ftr$J?lKBnNmy#!*Vvoj6FVf? zqNA9j?lqjA!L(Tj-etyS+#7LS{Fow-^9lzNVSU>vrtwX9uy1f-cqKKd&DQNB3CG{U z!|hZ%huQ&NOf+tM02V!?%k|q6zD2DpjYG@mYj-I<p*z|!N1tx==Z|T|jLOz*S;gBC zSD7By89+13J;%2;tTP}b)eFpO<u_c@uZ*`IFMA<Tu@&qSf8-S5;CWKZo>J?x9hs6q zVrp**O^^E4=K&@%(D)ReXxtK~l-e7M3LUs`6wR7saLi-IFxb7qW^*M`pmf@poC_CV zd4-v6%=BUn>n*N?;7xmxvvWyxouhK7Ep}pkOz>7v_(il}F|q`Rmt)iuZ+Y~&f%(cF zJp0yIp7Q+TL~?tD92LG(abiv#tk3oa<6@W&WWeakB>2J=h6sB>josx>S%0g=Q5%jE z05yOMM^h#vc0{d`nwNrBQe<v&)jDbG(*AY+DBQTnMzLla$taHfWwGqA9Pua9P>4zb zYVB8*ep>9&x|+}ZXbc}p80rau>V`fcxEc^(V|6!CRk3?XGg}R@2U$&$4LOfgQXCNd z8r{x9?qp6)N;3(w3p<;yEoOi$nSgsf3rNm)$a~iqt;!(3)hupRz+J^CnV~)Vzck+3 z|EuwK#AfmtagWY|Ny*W@&gIhca{8X*e%+hDwP{1Z>;C$AN6+Qh{cJp5Ig`9V5Kc}r zvO;u^?n5wEf63<@>k=@wY<{)f9*X+U0671*2%Ryk`w?6uD%jWlu;<jmcC%FU4E=+6 z87#db@{dh43oRpNPUpX`Q2mC4EMpahW<Mn8OOfh}*?8g>tuauByan5`AyuG4x*^BI z+GP*sgRFmMvdpqxgd3s}2Aq4Fs?wwGe6L-Fei*`oiustZaz~On5917N2yA&kXEMXl z<jzRvg)AQs^RkS(jHn_<BQ_YF`TVRbu&Li}BWy6`iWHhZ)@Hxdz<2?K5WLI;iTG-y zO>CBw^nEbvPackPQCwOPoXy%-jP@5k#j)*ChiREARLQV@UL!ZA=cVkT{Of2a##^uP zm9AZjEMH<Ti)WqN^WPQR?Ae@G2Y0m99C^APtm-G^k**1*ybDLRir4<Ck}^!M5bqa} zClM9FsE7r#=DC_Hr4LmQhhlG1{esBsCxWQ^i_qUy==uj)>7Vdjenw<$q={YpIEGmU z0##OtKHT2}0#ey}N}5~B0E&(joW9599j<mC-^$DyP2l;}AKRyi!7P%jPHtad%KXd= zE5T8vlI1wpHC0|XNjUC%Dt>1hoQ3b!DsDZ5K@!&f;=C-g_vuvgT1`tb++64|SD4dq z>oa>!7FNrcUY*MyYxh`sS>wvHKCV^3Q;7e5j<4RX+Dzcx_D0;68@E(>^dfF=qp%H+ zl;3+}hU+-}sPS0%-B(4Z^i#48Nj{kr1Dw^!^adVHsO$5c2vx^-dGXW4Abv<Ef&o4c zIB>;_)fQrWlvVh0TDaf8HAL6=N3oa+xZ&klv%VK<%SE7Iz)otwi|_j$=R*(AYUXJS z&GDI-*YR7M(EXI}>SIaG$dcb`AJnZ%Q48^VjhJp6)jni>EHM7xI3Q>cx%+q`1|0A} z=x-k)#NHMf;BSiA-`#k9T!z^{jRhSMLmORD>^dj%)vzY;?yP&ImmO0QaHY2o0uv*~ zowVb}=#V4Blf}OlDv}ZUF~UH0c{n+4P=+CLZ`>y`Q5tK^TR19))4Nly#iKnV*T7@O zV~`Ob81T@D$3wR0J-~LGUO!A&pNe<*taf;I9E-fgReQL$-MKFFS&trbX-o$uMo7zy zZ*z|^3pxd);D+8j16XWZbm=Cx;xMr_$}VK!$a*;!SWRu;^i|sTWs*8tsE%iNq+@?2 zLOD~a#P$jzC7>k5yz??EH>Gm6jiz0NQf?PD19QdOWaoK7ns#=Y*_8Mc>m2q4Z0t-y z*zKIa+=JYe+?|p0M|1+<gYWg~tE=bR#r&5EjB!OSsc_7zW@1itR#O1Ci`g{S=-e`o zmTjcy1IR3?jHaRk^q8P5Y;x1^i+)7sVE)6FJcO2<DgY^Jkt%+kz#%Xs<5b+lzg(qT zB>!O)p-^1$Q+y9Jr@64cI*i$0G|&#Y4Q4epvqO<SL4O|j6({VFB}_4a$T=6L>%|sK zNt4tQGyD=c%Ho&m9D@t9N1>@K9N>V0>p`~|X6K?>ZgTLiJK;TCf6>>n5gCP2llHpj zwzhlH<bWsVDNW0@Rb=acFcaMP#i9=WC-bgXzP?vB%&-JaTYxB71{PVK%kNc3>@Dd- z)i~F!G$0q&qxu)+AEjyOw@G#EP2m0oP`CegZTk_rXB%+(wQO~mCzZl+=T73T$g}#U zArm(@;@umHDzqn^A2|C0NOANFuB7AH!<v&l@NGI8hAUTEdd#etrtBe=={_`lO7u|) z`n4v2E;IPgpp#^rV|vv_yEyxzq0BUijnskv39#jpH)`GKE5oZ3i;pmM=+6zjwWEas z7kIO`nknHKteh9}xEB-&kV&_X3U^CEszTf^_^ucBu9uAN7ugVxRn@4P(FfHr?qP&U z;frTA4_|W3ykE7u!YI7sGDm(S?!J(Fnyovfqm#DB9fxz`Q@8aNd+oJOwWvxxk^z?< zleDgL7NSeMunj|eDIA<jj@)}tC$SX{MLVay{a0!b$#9EA#u$8(OQ;kZ#`~H)DK<*S zT>LfGd!(m!6&<&Rx|*}AdN6vC3E`8QB?5~UdZ=oGz7Nno^Ni}mGWDB|n;SfMTVSz9 zbTP5!td2#**W0(u?L7K1{n^sCILf3a-@b<BSorT53W@8w$e5&s$B?YRgewRm>dynw zW&+WfHEu3@%IZ50X@H-iSu&U19?Pd%sr_i5K|TC^jdz6`=6jcQz)BJ!=6V%{CPs;U z(6&|=LzopsD=}p>E$uF8J|R0}Xc84^T3y^|(+83Fol=OByVw%V7uN$feIC@!-d%Df z1Twd{T^vYIY|iLZy^D7>0kn3N>q5ehjzt@86+|&V$5UP!ch(2>o?cI`4?SJY(oS+R z^5L&w&W4aAqf`JMWnmvRRg;b$6h*?ju==k)hyS6_rvapJXFqm{bqVOquT-G^0zdk} z>XVaRplxGy3m_>w%B~M-GqcSL90p`zrpTlWPze|F7}|d`gj9%6YKMCVy$2~JkFB@2 zm!d4!eN@z;z>x#2P9Klujwh?Ftc_6~A6t1H>J-`oKY79bS>rxme1-x4;sM8EdC{l= zaO8K|!((XIKX(d^JRZgb(!b8XtorKFgAq|`PB10A1RjoU@3fLZ0h+M|;^TRX`!!*p z@wih_@($Ltz<LEoR7%BYI^%)F3%!isUd<l+8s$t`jqZ4sK#>aB1WFAvs{V|jOGx)K z$=@=bC6QL2>zUW9pbHo)+`NA80CrZL^G@r<+?$$ss!ypc6>-X)IZkav7#@3Zc6<Ag zlO;HQ{Bw4?_gnS)(0brHSEJ9y&F%SP?y2VUm_`gRenceG%Z8%vRH*HAaD3iwLeQ!) zQmy^T{ly~v=T6|oXN1B98gJbn`p<QQ2O(^~9bRr6XI%gr%qX0gW$N@((NiE-g_`ey zlhF!pAayeOwE1YdZa`$m;-)LY>u`J-<#ka(d35rbsv;gN(^T>B-aQcJT{H!@tgaF1 znO{DYFZs-DTHiLkz?Hz&*YTd_;Y!}t_$LU|T#VKW<2%2+AaG|oPTqrMt9;ilWFu!; zA6Ci(t|bJ%x6YBOHR>6)?<uS4{hEn}9|gp#1!ykg>ZnGQeXqnwFGh<jgUzKv$u*Z_ zSXdUAwqLef9x=Tex%BsSl3`|EXCZ2O<!&6RS=Ow09fJHoV(GUUYaxbGDN7y3yx0gz zmBRx06#?7dGRWprFpYffil$WeXk9ZO6?EO3ZM28Ee;{wZHc{gPA%V8AjQ?pL5&o-v zl<KZyI2)spC#O$5s(PvtPtQ1+=`-{z%g|pLR}jw#HnD~WrpY(X=Yzu{hWks{9WzM_ z0?&$}=SyR4JCmockHd`vzi7L=gwdqu*ZK|JDRwCxNekS2W~a^8UjR0y4L?}|T-@1U ze<s|8^2PN!Nf+ZuKON_{n}+m!lt2y2#L2Q88Lld+u^O;;<PR=>E#s2DVJx*{@2=Q9 zPj92U?3G;%MHZeFdratJmx?sB1bp*%D)pmdgab^};G|~a*rUGLqvQ(duxFe|BAp1U z=<XDj4+lN8o|w{kIasn_l$%oad#0-)Y4bO4#kz0mQlRjnARO`PfFh|xEB7rRNgTXX zz%QpZzc7keEt`IF&BX>}NgsEDG;Zuu!stEDBhwY~a>BeY{`Y`5wOX512FhDYoC@nX zvn?xC`8mji9doX_r`kV<4iq6jLRx2$Hea|YeHK_hRU@zPqgYOW7){P96eurnn<W!A zkf8qoc0&H*y@=|xo4Rqvz$d;N0-7H>Hx?6C6P9Ll4Z{Ge_z|?M?#<@XmF4U?lD-wq zK#=1({lRi-;;S$Yj}HHCY<s(3lw|SwH4>rr&4H_;?;&T0VTNi#=ATcUsKTAYA&f8I zDlG-dMF-R-=e9NJfBd!zt8%V#4g4LQcS2jE7Hm=TbEi2g%r^}wc!u028n@^{v&G%Y zBG=+$8+(wG@+kBbILcLP)7%)^Id4cqG5N~}_%9#sisIgq<pV(_y#H$AHV4e|B76hD z7LFz&8be1XD-bh<_h7m?S^OHLRx}BjUl<fmBWJ)uXqYL(+=AXRYzOBZndabjjCK#g z2q&x3Ig_B6#`7=r2axdVmDq3zAEVV!{WS1?F@}im<<2iY;xhpjwyJJS4%J_aBB<<= z>b`SOzT;F^M?fjpDXDRM|6y;{ehT%seG1)3515Qled}|^KCT)+2mJ^`&8$G;$<T0~ ziUy~pyW>{vnz?L3oBxpGEoutJD*NY|Oh?G+R)RMA!CzHosi38H$b&-OHl=1+{Z8jv z%EHNlF_tU7tz7==y8Cc|&`R5-Bt)OOk^(S&gQO086EEDf(3xtx-!S1ZWbb`*4;9^0 z@Y^C%=fk#fe5bGfc~2p}O|9w&r$9+YF>|?7LBR3aLG8w`d)3xbx5V20#@ue>yUY9C zlDNX*H0<dR6~L?{eG<o8#_DjovBt#vy>8PtTbHyX4hooij>?ROCt?h^zp`z&vpCZ? zQJiKe9QM!p5dxBc%L8lRQ?ZAmyAyrsVxsQVU3($Tv4L-sCbY^uX8&5??fjdE*G2A2 z(~X9CihOy0lvWJwCq)skdy&BuBPLuqt-{hQCF@faR1pRtHLZk;Y(|g{;&D8^txLfp zRZ6tfj*Ln%?&iGk;UYm}WJ>^N!pMDB(^p`He^d{`r+oK529L&vL8ZCc>!YP8U?dBd z1h7W3Av?iP@y(&re&n%JkC^2J`<)4K_2Wpb`zgmGX!cbi79Bk{Gi3e2d}%N=Rm!V~ zKx8(I#7X=3!f1xfy7%2#ie<u~e)gf#7tM|}FB_ipazpVHw-qH7gw|RIuiKlG=cgr_ ziBG1!v+~<+W9yqkzCs@c3x!2~KCrWX#2Icfy9)Vr2R|{<avJmp=mBZyp?$5(cXMvK zD-<g|kPz!dxkM;Izq>%Df2#1==nXtY$k>#`C<1?gmVIetTlmwWX3NFLACa+8H6HqB zh^jz|SpYb7Y4||ay3qLzWz|W`?^4EH80Xg)(G@%HkoAK%q|e)DHxtK!?e-gT6YT>P zKEF3)aulRWr0m)oOe<@Eu5#kZXN2Nfay2@H!?gyI3^(v0eqycVuCl*o*Vvg4rz^Ck zQ@%q?+!Lyg=bls^vMFvVvY@O_Z%bSERw>51SR$A+tRfr#cLle}?PKvj3U1e51vltF z3a;#D@846;n-V-AhEqegN445lTl??&qQ;=Kj>XmoL7((~#tQ*l`M&lu&bTi7e%zW? z2_!wI?@%IfxiqVW3U_~F)#X%pJY0MooSm-A`CmT6J@3(853Tk~D;Tr)-h)g^rs&`F zOb98|^QG(PM~J@!-)2X~gaOfuz{Dy5^H*R8UO9V@Sx4}N9kLLPCCK%U6DuTD{g58X z*fc~loe9?mMbT<)DcJ5-ikY(7b3%WSa$aVIEvZjVFTk@g`iiMt%1?XnZyOIkkS!NY zK>c%0U{B@+Z8d*{^lBZW@p)$msRZx9@H+8r_EUiy`$Ysl@4hli0fs6aIW@T<4}lBA zb*8OuY5-o}e|7Toar#LCDov#XwBZ@5I4#6^_{ribn_W`bwB#Wla%nw1jA`01oq~;M zutpg%utgQ}J}bn+fsmLtEXk-@F|cnrr7^Iv^SY6FkyKGXo5X|Aexm%9oCbD8rJ*3^ zEJUK6IRvp!VnSTpcl-g4QR(kLVuGeK0MftLLNFacBdV~UJJVn#*SzZ+ONj%5enor; zMZaxSh%E_{+9`@U*iylYrz{AHzGfr2#w4*k&?@xW2=J;SVuL9c0ulUfQDSk>Dk~a! zdlCbfJ66(spDnADZcAT(*9Pz9P_RI1`eAtVyWzXcJ1#*k+r+OTb0bRREe)f4`f2fU zl?F&Z*;ceT9);4ah@A+qo22ZwFG`vR;uuSg{gr$z3NS$fTNR?5%Pe2}0lDlbQ}@QV z#04sZ*irADegs=3h5~Xk5WrIg&c<LB#=~7=(;MlV&2Py52cwR?n;cz*=Z0E;_oy#D zxut7kv>JC18KS*(w*d;V6u*CND=DvZwNudA-u7A0w4ut0aSa_VnuSn1D;@|2UMxA# z1H{F-M*D>_mOyq+&zh+}{7R(C6a0cupM*r)m`Q{ZyD&<<ik3jOREB-^C|u&=0t))q zbk0rnWZ9Qjkd>nmBR_()leI^zP>-Ke&(xmE_pI_Zi@o(96-c*d5X*uy@qfEyFAVO; z7c5YWkV$HXg<V`IzfjRf;XoaVF>kaJJ3Msly-UdwV17F!ZhF4_S_YlMBCZ6}u9)1n zXX_t@p^MK}7kM(c3XAVqe_kTnNmU>so|@CjPzAh2(PMiG#Y5syw={X<MC7O|<l}y0 zGwcrGHOv?@L5jt2Ld=j6=EX$hBPN07><_ocvI_slgj2+1o=)Ub%z;*96Q<8BP{y$# z?5p}N5yd#o`H806@q|PxV5dgH^g?z{-3;F|b|97Pku|%C>~WHVSMNI!RrQn|3IfUd z6DDk43`D2eK?`K39|H4LRbt=1^flOY*!J*b(GD{~G~IHzI!!tuUHMvB)O5k3u?RHS z^1XhTfcdK<Uol$`mzUVBp7*_bta@kmPOii$?dv_G$*ms6{&wpg-|$<1A$=wKLQf{m zEv%&wl>P+U>%d&G?@Ta`>;7In!=d6bA*#6hawS^bmoKap86xTi8Nk&O0(78rtzz~_ zhld}yDGoS7{7`+y&agw^2NH7|IqhiD!-(UeI|N{;9fxzeD8F$gqz3BRbWx6vQ_?3> zb1<-PS_@VTa)jNw(~{aCDVStq5&cKi4S`ST|9{B3UND4ldvX7p7e@XgL6lfL025;C zLP2cZqN@Z95TyW2wGMi1=xqZ|k;MK#UfAMc)n0c7DtUw@#%XQqpBy=71(KSc>CjQ> z|JQ~t^x^+*=+5DZs+(_O2!YH(tN<QPoF-%GSW&bPH}@690FoM=S%D&CLy9WekNaP( zF!LYx%6MT?i7!(iVwC$_%zVHUNRBKQ)91R)h!cFEZ~HL{-#dDHGAxrO&<X%q+bhmi z8Dzpe1zNwFgk<t6m~g5?%v`#J`?kj`Tl#m@Q-M+i(iHPaLsOsuSn4TZ;g;v+$(Ak% zSOkQpW-Abd{CD$p(g1LUcu|YLArrKpelmZepyPPgg`ne#_WrHudb$Drqv=Xhu>ZK2 z`~Z^O?drlyu+n}_?c={4pj-|YR-lMRxvNG+xx3u^V1XH`mm){*Y1wRif)xrN{xTG% zP}b2j#{24~%~*P6*xTY{BKo1x>Ne^$`c=Q!{>~Hqrti<rJ@fXm3oj3+83`ZfFRCYe z_ehxPm>rsHSPu4(;+~*>XBnJ<bB*Fh6q0TF^_|X<KV8gGMN=iTKYzuLseh2feOM1| zl0$kk*!L<XR*<IOXv0YJm1&9m_QAIvS&;f76{3&3kFtK*4e#nC%X|Oa3!NVe!bW3` zRB`#$b<1{hs0ee#3XYQ`>(`Ncc9hGZq3vJgoGgF{*UR5?t!L&^0%tKM3qGB2wA%)Y zQCQD7W=Y@>hgRTjk^R;slZUvu*|u=3#`&t%sjO&_ERL`K6}bBIF)f;?=3YG&xHem@ zn(hUB=LQUdjmQQJA+~sbJzS^t`ko&~PzDTgnQzdFkQ(tv`eEeBnK|9$rhebAKt@LG zw-Y_5r05NdV%!JCIJ{&S+=P6nc#|fESe$&~SRAXk`SdFVN;sJKp3HsicycXbIC?DU zf2>$2$*ncizk=-6-c!nxy-B#qO@5glSVl%=R>zF4RFW=SRLm=zHd*O!T13x}CIduQ z7%<JMfqyFPo?mJg3I?`*$Aq|o5h?YFbu=mU6)ul|M7OMH-@no#pgwM`p#Ht){rkmL z`N8#%p1kQW-}~;1WN#c86LN9tEsEHZ>en2x)X)b%YMId6{^*-7`kY<Etv>I1>leV= zAw~<@c@MwHWWSN1QLCq{LsV2Yovx}Au4owRA-5e_?XQMq83~sW&uhANp4dll{OBM{ z?9yjz9b8s+`r`nO!PaZMem<!_a6%<xnHzFK3@<}o1HWI8HN3R6?38JJG0cKIr{;Dy z&|elc3ndjmi@B2)rOy#YA>BxTtgkC)lmO9$_v!{EtT8ncNxAw2nJP0~w=w8RaZan* z5@~E0+XZ-XX#XP#vsMzB81rN<BwhbHp1<j$$ts)V3u1(s5b!o;c(0R~aNYK0ms|c9 zSdh|fPcVq_Z^pz`I92=C=mmknot^`TA3QId1@VJhe*fDK#`pY>AIuT1nyHK^bS6by zFc;#{yc_cl5`hpS%^^(L#fJgOs_E({>l#!_&MjKhxH=LuwI)bfFWf>lTK2bw*uh<O z(ge|Aq*uxmkBuIGOvpcoK>ZHH>^t)T%sgO-wRxT`a;$Vc*%O~<1*Y3#h-HulERs^! zl6$;eHVKmjXh#yowY`~O_W6Iea)5S+w~Qp!oH;I9Dw95i;jFbs?Fk)hrO8ff9~*a; z;6M<*2T(e@S3~8X20784b{U(mcNrsKMZOFDh{*b$*j3#(pvze0kcGjuSqB|^7*cG- zLvT|*54`{R)o}0-%$LgHq#bq;04cV{y*A8xCh#O+2jkvw$Q4y8%qn!qWU(mY;s-Qk z6RhV<;gsJnEd9)<5$Gg>AnQFb^0TQogVu?o4SsSWpPy9){qK2>^Do<>LLq?<n;1Ol z5~E@&05o0zI(b?SvcF(6ve;O<YOrVkJ?sNTMK-e7fASD27kGF$$<@gmT;H)f+Wi8I zQ49Yj*FZD_;=({ITn)rLO2`BCQF_>Qk1ut|-S_&(2En8k#BgBjK_z$%#B5~fe`O+Y z6pL>jYa(bM`pHIylyp&2n`5moR9ebW5u^gp3DZ7BX=_nSQxGPk0vx@+<H9Vou+C0C z<dAl|({fR(bRSAmaJN{{*wBz-K^$kwzm79yjUZN7j*_s>vR7XKG$E!{pQ<h=d8ioo zR`-9aw*8dIk|bbEb3riX9xBKBgA+<EsJC3667!{2@Ut_?Keg85<V`@qvGjR?wRl|7 zdV~9Ez*QPpG27_X9_lInIOT=sXni`4hPEXA9?j{OaLA`z)|1@3A;JG1jga?Ezu)WG zE$!2y^#);ic%1_z6}?6V|G*1Uf~g?SpXWQVek}IB7B_n&J7llv_`i9$8E246OL0`r z#bp8TiQ<s{Kbp9lb}if6<z?h#4aIfEe>rzM2<MI*7D#13+FYJyTE~V!GmyK4hv0Ed zCvaN9%cV6HDWy+P_K>f0?egmHtmk1BDcvRyR{h|c_7ClzYe<XMsjPv#)>U&Dl)MDA zbt3`lKt{d1a@}j8K%(S1&bC&heM4oV?U#oBgnM`d1GfUi_$JW{PvJ35Azg*Z@PJvb zbB|9y#yiFX0X2jYiu*}hK5Lo1sSL4Ch{wA_1v`S*eQ4?92}?W_4$WM73Xg041pI2+ zS_&E>InI7;&;xz$-oB<LO`f^^N#qZGNk$FuOgXq2F;J(gK+QQ8J69bqkNm=?&Zp@Y z?z4=}HlVqEYe)V1NjgQ&^rt_z#Ec8Ma38M*BpuSGkI?$p3Onovq?|gJJgByA*u2Qf zL=}ttpgHyYY2WV5zw<${3c)BanV!N=eUx2NF=O7L%7T*5uV?NxHemVx!Np}O{y)38 z-zIS9Y?GcJU1vup>BWk`M%HTO@p(*CtW%1BW6ezgqWZ+m9T)J31#S6=9i570Ni;?n zGZU^KasoN;s&drPlE=*n{5BVLkiq>nedhABSVrFOuxi{!OT&rr&MYd&X1&#d$h$_< zN=C!_PM;z@gH{XSn5VpA*h&HSHTh!qHFG_~(?tfG50ze}r@U(;i*!sP$(x_8AFBI4 zB`1@}T5WMkNoWZ;$&VzcSU;dfyul{hE*=QOOb>lLXUp8~;*{oXYahunblu(kC^xR& z*5==;Ym;+ca&gbz5w(K*gf!xfGR49hHkpq6<mI!jk%fr%5fv5@gA@V_c&XvB4pA5d z7HYZx9`KpD+hcw9b?454v(>rW`7DJN2E6#}75@tYnHnOCxI*$bnc<jAMyl$K#o8vw zV4?~tULIWq#3#nCf1ih87e8V9g-CEN>?MVG+mf$2rW|F9H=c%$Rjccl3S&}|$juhK zf9S#cFFs>2>s<}GNeMyR+myb=t+bV@Bocv#cCu&Ub2pjS#`hVKOerQ*yJO8~u|5m2 zdXNYXTMrApZ{a%hz}se)eJ9ha@&id?_y*?`;gppC0;!`hw8*JQUwt!g0}wBTTTh6c zW+((K+pumW6)H<btiQ`tOnF2X9;c4wUb8wG#h}P?*}DQaBj2M-SR?O;UO(s*Yk<|4 z*^qf@?}=Q8@Eu>{jaj@qh-zZ?=U0Q>4Zur3JaPN(h8YXi#s_28dppmHg7`V~m{F%o zdpMXyj^0vgOn<0#GZ=R$*b8^=d4H$^7Y4v4b1>9A3=vs2qlpy(v^j@Et$Ylvgl_bG z3zbwNv@_o2Y}YCTU!ismt&<cVj!a7xKocK^{E|VVJ1(a$80{!ujTMaOPrM;5LY2Wm zq<{Arnm3p#!*+)+xYfV&`@nkRQ4Av=+^Ea<o@s)-Z&<;yo=e%tJkN^0c%J1IDPy_@ zY^WOLvYHSJK*i~yT4zQN6EeI<%cUl;SOSNuP^Vg({|qP6WK`F(;d(8qr(#D=K(@p% z6w7f8q3wRw?<gdq0X@oL@F9U~3Vt1t4<rmlp{U;q-I$HYk|8oEBoUa(h=m7%h+iOI zSRdFGTes^Q)_FNk;TC7T1-wSDy<>9QE=Vh_$prpQS5uQM*StfKF`cYbfqXq^|93h8 zr1N}EtX!bQVd@S?Wj%(fLeyKxv(RofK-pY$JUWT1QLC)juZ`%9q6aStPZa`rIBWV> ztBOARN2`)eKwgmjw^oHy<n=1?1e?E8yK-tzZbkM<RoY;<wxw=*qu0wIPZaK|z0Alb zT<fNn|6y7<v4Zhdd*$`oRkhPoNJte}$8u1vw8i8W>*Im^_7#3gKud05r*b{_fxB9` zA0Pp%#0h{16KI$rJ#tQ}-C^JRAE!qY^N^`6D!AF^k@%Q-|3OFMTa3EHs<x~;+?p7D z_jMzV!?*Tj;Z2X==+B1zUYtQMbHBG)6Eqp3zm(%=zYS-15^L;OexSm<WJU>o3EP~* zycOQ3{8L#qJJs2i9_}F%Z<Xk9en)5o<?c#b0!{h^>$3=Te_hx4GTX*0$d{z?RgUT5 zX?-T)hFL_v^qLS#*hJ{vyUm=JuiviEJzA$debzsX8`|py5!-hn=NG6~MQxmtnr)b+ zj6B0P3;WKrmRpogMSLp%@$vN{+UoKLo;bOkz{ZAarR`VeC?Y{gTHhMg;!$nf2~0Bg zP<c!wja0#E`t`P2*2k}bE1_rD<aD&to}gMi)p=QY9{p*6xO|;n5NQmz0YEKW=9p?b zmWqhgM!#RsQ7Q9OXOVR~eui@m;vdVFr=E*36zH{&O^3(j+`IibqH@M*25jvygzJZx zqrv)_>pT%n6!VaOv2>&da`fSjs51=g^Hn8+aXC7~t<tm48V^2`iCZ(*(gQK&u*>QB zmx}mL@I!nb6HaP32Inuk+`r-DY1Uq@+pmw?sy}!>@0S0*i~N>!GVH5#(PKo#$&gT% z_C0C(s-4xkC#PrbIhn4}Y`${ejlw7r|KyQX!W5uAU=#_c5LQTF=|rR{()LA>RQKnq znOD(hu9u<}kNoUbvS^(VRInWKt3%wxInRMi!zjvqqAhJ6aS8+(exy_UemT_ke7ZUv zUtD1RbGLA}0--kCbX&{DPj__eVi$0nDfy*MH5z2RZIF8@r^#vM0NN#1MMeW4NboAY ztyQF8M&&#{^n^^$Ni<)wVNe~EDQsjME)fNClDSKAW>Lcdxxs%oo6?dUov!P}rq;*i z*MIsxUe#Xi6#JHotfK!OifQ(tXy%qeJ|WWK`Nw23v-?SbPQ6I6v-B%Y2n*Yi&+$eQ zRu`F@RN;poUwl4a&2(MD>M{jjI#nvx&4yZslJdoh33*D_DE{x~q#mjxPAwFY7dtpz z2s{_@9DeBLn~xHBkx6+vcc$sK{Q2%3wQNqjQu4pCAx7pM$_eTrQmgpYruDAK?fTf{ zNlFz?wfqv3<gnqRRmx)P)o;r6>|7ceR5oj>>Ld{M)FZvUszH)nWZq0lC)r$|T562m znRE=80Q+q^R_Z&G9B+Y9<S$)Vw=D}FGCI#K$)wU)wgOD8&n(cH|7FF<1jVpPhE$SG z!>5`A;Rk-{e9@;i2bd=@8U>4PmEux%GT@jR%KQqVWztYpjh?RgJAD~*itLl^BP?e~ z#Y&jv3`EhCt)!6MVt6l`cnF9YU5()-*lmrG{UYbXLI=80Dvg?%@&B{)dT8tXv~$xK z3>2AXiS_jCET~pa$mtL+`}jk%nc?mk^Ou2QGIxi?c+g)d=E$HpnQ9Ivfo_!6x4kq} z)Jdw{^@dNc3jL<SLMbv`eUFTs1^LLJ{KI7>yQJU(C~GPWs<Q|XT+a#J=@o3|*Xizy zQ1m^C>nbZg;iq^`>D;~<OYqKwWd4fDt~LuCL>akPs>IeH-F)Ndy3(>8Jey;u!|W%$ zp!IBLo*HbxxDD;f?I!?YVfHj%hGEEbr;@Uu@v$)x<!2@{LBEDJ{Yw@(1O26dg05-| z(>tfGr%tCX_uO7WBRjo2J-z`2+JWx26Snd0D{H&VXGK*WONTc3f(Rd(jJkI>yfMY3 zYl<lnDvT$mCj3ai%R<9-=kTSZiow~r@s?|3{Qi8PYl8TT9&F*>VD=ia-&VfZ0CNST z&VHS|b}Zk7U?*`aL^kt+69jdYy1L$IoG3qB7)NOx4-$1nO>cWT#9O`22?RI2X`kcf zB{MhAoi^Y3l+vS_-Y+g+sw&HIPVlHMXzlzvzTamuN75!Eh}SckrSoH3HC%i`<cNLr zzB?5h5qy^>n(6PA*s9sfps^nkH%y;eRBfw)T&dBAxJyumd^JJ#jp7U0duOWSh#O1) zhg1#D$eEyrGu-&@XUZiwze$w9$--SIH5Z4_A8rftgF|*txupg?s2<02%c`HZw>)aO zpnrN*Hky4G{yJ7bo*r5BSuvLB<4yr2@!H=}t*dZE5`5kJtJ}sn4~BJG$R_zyuwyA% zi7Z*;eGQr+0!~`YVv?Y#tVXZGr4yZ_pX&ZGysR~hoFg0(cmX=eB1EpRAEXZCBn%I* zZ}_vkuv1IOFS37rc(?SLl7iI4Il)FA5ej1LB2)rBfauu_pHm_IPEdf;z}Km(6x%KW zJ^!m0x3!s_uY9I5T2a~+*fS%h@e1IY5w2j-jw56?5%r?5pl5wARr6#&moRluBK_`x zR&0G=Y-cR44XGiQQj*PXdG~|0)^Q#Guvg*R{1j_*Gx^KHQ+so6Z;q;>Sr?+oP&Uw? zevT2DDm?gEvZExDR)r@=S&;*S$?5HMbQJ5MRP?%4Itpv6`MGPWUrr`?3ORv6CTb)o z22nC0twwu;ne^!Z;Wa!UcYRlVKoYG}I*Ou#TntDpA6{1U^~0YDdT+gw-&vYC8BLB0 zPKdw`O>o}R#nVX|%+|X*Ln9PF6~&*c&3Gc;8`S4)yyuC`<oR3gAA3vEq;(G-TRAP& z!($r8hvEM})o+wlb0C+@j34y!JfI&o-$P|^!SUA3#Yog9e}>>21*9SvhvWc8Be1pq z8XNagz2mF{TnEcvTfKw-hvH~vVTDYQvGl%&{_p;cPgjbgj(|%cGfD)!t<hAI^q49G z!{==P?nt~NK#{G=Jp1>)!wfwm!N5Hadmt_(AYDV1spSxYo~dCpz!pSsWZG4a6&`mF zimse>ZnNA?ADB8VKKM+P``YPRDt~oe>gP^_B%-6yH8ivO(I(%Ss9PA4_uqZN_ooa# zUbap)zcq)|-Vm}mnViR0?9kmqv=xdsf@;b_TBX64rAKa;)+sh(e`Jx8w%yVyR!$14 zot?+KxvrF$ZaPV$^OP;2ElDqV3t&Ks>;ghdiPCvd_$h0srk)GIq4_Ulxu0L<csbO* z<SzgPR#w0V3kX{1h3{q~cwphn2Q{C{ahXhi)9W4wyrV#PAE|&dbA^_gsG_1`fdAM1 z8E9rbg2o$A<Wa*5L0#)L0Zar@WiW=Y>$Sp9v$a)XPP2jS2-AjwM&tdNwva6-H3Fsd z#X`QL$_)NmPMx9-H4*y5GW(K3a%Y%d@wjtx<ngq3|9T)+d3XBK06N4kmG6@pDhuEm z8IZx1#Tm&Wt6_8aiQ$87<8}-48tHl$I`Y8``WZs~^6}f$sqcZX(48CZLpG`Wo_i&( zpdXM_xcZ-B6Tm4}5NYQO7wRf-gB-i4Qs&oPe1P(sZcAI+!rt;$%FBwL)1#Bu&1t}w zpFZu9A`yr;3v`~=Ym>eu7+`G&!ypz%ME#k3G}_i#hIgwI1gnN7!F5%7n3KNLR))#@ zk>8@+<N5=hK*b92ma;AT4jK7+PD7uyv{k0LNM98J&o%sfhFiIw20%jm!UZiBt;V&x zthFqf^G>C2omI(fEZc^Xsj8Tmz+rNsiC|3%a6)+4y=kvEa?t$-%wDoXW3qwB7mv^^ zSaL5c<^_B={aKsfu1wrJO%N>(G-v1L2&D^r`bILkcK%_`>lQAK=nKYjf=>+GiI)yR z(5+}puzApJ9>W|*@N0xgm<ici6!PgIg2^Mo+EWB$Tqmr4r`N24iu=&B6FVh+CGsB$ zD<#VPg90)&3pxeLmY-YdxepMiy7w7l`5mCMwKqQZ{$_pYk^$JfkV2Bu9@8D@TfK1d zYxk<nN2hNx^TxWc!NO6fcsta@*r)rdR8FzyN7t1|#*7cke98p#Dpk7hyrpt7txY)= zSmC!HR;w;W2}n!_j2m)mMc7OE=Ti>j6l<_nJe#EYrK<82<QSLoi^oBUU)G963a$Yd zy-U<IdWR7(I}`~-HV<n<K_AAlQ`Q0hJuaCb$0cSW)$l;_PyyqV#FG7dY^|EslbOl< zg%TDOr!B22TA5018SRH1i>PspRQl?gzFB?}R?6Z}ByF6(x%mJyBV)IEK`9;MT(!nn zxnD_3lACpUoB9ED?52PcY_(FomQPey94FXO{mrc5ki=0g1xiY$S=!~z#$PlfNiWx2 zQ!Oe4Wb|MxRm6T|Frf-~EBMU^K!}e7PQ8Gkju!nQ`NuN52%Uvu#=;4*LA02?ofDIX zPdPaJ0*n(y=m_Uvp^zL!U9YY<%|xK`k%5>HKRuwSt`1e)Hrd(-*>^`+ortNWuP&{m zuD3fo$o0Ok&h#xT(TaCSQtYA)_PVi=;!xn3mG1Rd@dWSEa0!o>l$S7(d^Hz!e60Sr z`xCecgSC11@>kOJIzm9C7apJ1K;ECboTi~^GU=1kKb~5hg!@_84_Esy?N7S4uY#Sw z4S#+kSb4I!{w}n}=)bw#oUSFE%BS5b_FY=l6(?=P%{n~|0u6b18SIE_Y02TeANx8} z7N{1Y9393d{DpJL6ZdB+0<>)&Fx`M2E|9#~x=?lU>vbVnQqR)|vLy0xtZsG9LN}kP zy}+`(#T#RHIQU|mSh=`H_3+Y!o#Wey0f7gxB$U99L{aU5XA#T7&+dWh;fTcO#W+i* zVJ5*^cIxz!9Gjua<KwlqF<mzms9PFmDs(~O^vXQe8rdX}c|ThxSXJke|IoA@y$L+* zRI-lX2-kMGj)0guEKlFR9`@z!u>ttd2D~y(e?phO+jsQxI(}``|3zOME63L2^hJ%1 z{6eC-szWB9)x2zO2|iKA2Q^Q1(zBr$2eRgblDT0QO~I-`5z}uU64NjG%my+PiyZ5@ zlFt*b`<_4>q6IM&DS-n%KWU`zh<#|+PTO1NzTul4+g-GJd6f~*HcsX|YXf#g)Ep*Y zCV}F0?@c5_UW>&cCn>P|Y6OIpL_p;CJT^xT%n!g^Qr|^~5;TAkHej?2Dfw7^SGvZg zSD?hAggTz}aSuk5_`GUBJ8oq76Q2Jz=$Z_~z?UU?cwXJIzGagtn|}pNf!Vl?rhif6 z?<~sHK$nL^&|u^y!L(T(o<}4|2vlrkVHvhi<v{q9pNX#>xbLP#Og)H^zVxzc*lp;{ z;e}=J_=<35iSUrT|J}QuBUe_Ej#|J>5X(%w%Z7l6vPJZ5;dU?~zYduBx_Vq3qtrOK z`>m9XDEbFzQED+V7)}SZAeLNnGajQK>Ob&OK@jb|z&SL8xM%a$Lm@?$+s62xj6GNn z!q~rN7-+=UvnY+WKMn3r&CUIV>=i5_%&xU4dK+jv+xH=Z3``muh@)sg6GIeTWJTV= zW_3`*e?Xa8yQkGx%9!jN|I6Le*iw)GLWx&#<1gE;AO?@s)vNw9p+nr(7<Bt`v~yY9 z?)KoR*ixCIXTK5CkhF73@iKC{3YXa)M&)s>SW%ZiA@?CQ6%xGQYh)6x40a!vg#<6G z1&yCh96)bY8noC_U~jTW(AA~h(2vBSxMnVspiq&E(bd&Qe;&1?<J6g<WN%NQSP^Rq z&?&k2%X8lwHcbL(gZG85Et196D0iQ{1K@|eLT@s^F`uCy;cdizcX3%>RQ-_^Q>lcg zGhsADmp^GyCsV@^!rkrHEr*|mN7Ke`AgW$vVwE~aU>cFEtQ{<55+KB$8AZHA!A7M( z4T0_nsr9F9QK;nn`D)zH39LUK(Qo^F82q&L7+joKv&4wC#6YE5BV*<u<0rcfc_ZnR zHT+A`P7FYmGc)Y!(wE$)tZAh@^p0oZ@7i}pXTEpqs+dOcW|r}JWob1f#|^~F>Z}Pt z%4viHg!7i);1uFZTu+hx6%?>A?aIH}e8uUbwbQNR+O-$s9gDwebl84o!W)hRm(S%( z>UCz0obNtvZywCACwND`ubj2LaxaX1d6mrsmnR_nViZ|^yx%SCxKpmz)mw4vH00+9 zs3Ev+?1^G!k7@XZ_Rr2{L7H8AXz(vCaCSApR`r7(9eH>@90DGRN*mhy3WULwm%`qZ zo$I?#1~#vn@7a5zM5XRcJ3Z6Mz@n2=+{Qu=9^eljhPPlk>4F@Wy%<;QN`{Y6aj6d> zCaYxfv~xPYR+q9dmUn?;my5G^!A!~8+pImy&3Kl?%O-=cPqUz%$g9U&)NIUCiYr+! zuO*#Z*3aJW;*#%(G1IlP@yFGtl)H%wAh%+HWyYwMLdq9cDo+{adJM4rlvr@e6DnEU z`mS*9b9Ekbg4$#r71Uyg@i_KwW7-n1T4r4R`<gqDv>cmSR7}#++6rnmCa+_?x09hJ zAD%CteYFr+{_JIYdR^;yman1T&ST#yNxdAae>Pc*^-ebeXWvlHqFGt%q4SeNJsm(l zu~b5H;l%5G{9|antyxjsIci=uP=J?ETg}(a>GCJ5sow6=sS)bc678+fTrOW(@mqbG zYQO&*+>o~}ayBjP^G1-9(~W3~UMWy{4C7V)<gNCuU@YudbmijinnC~CdOQKoWTfV6 zVR$P&$`bX8!fmtCn%cl(5E67xyu$uM=N0@Hvnpt!!9O}MGV7E&Yg&djE`cOiULEAg z-f4|j)RLBE^%{<Jw<OQ8$=vU%ut2J@;ySUv{gMZ<W&6X45etca9BUR~(Me!;wZH32 zfY+jQkldyeCM^eR4s~A|oo`<@ta+&a*(uOD@AMV9-(+Eif9@gMgB8J6=C#ZN5V&7o zOQpwE;Z<Lk_7Sk@Fcc)|u`PkY@edR#C&53)l<>Q9bdU(Cm|X7Ym2v^a$To7h09CYL z+IW?m)B@S4_z*cJ1j%v?2^E|&PDNQHqdde*3)I|4O^n0lkTNZR3IMl^XB1g-`VSFH zskSm4uB{F9JOyl~(7E=rKj=brYFCv-#z+hYRz*FQ9t&V*Yiu$Q5QJHa!#apKHQ1|i zo*%#fgNds@JBJuRAm6na2AC@lN0g0U43XAY4of2>pZ{pYM6OB6Eu$t5OVpHeq+WBS ztF}qSe*lZD%T*S)=mOg8H$pQZ$2Fsbho_6YtzTFh-018anvjm^@oJ|#U;p-oGb!`C zy->k)6y8iyFHolD(kKiLL?D2)oA@fdBzLWkN17~!v8U^=tdPJ1$m4!Ma}c!&CXW5` zBUCQ)y$o`hXcf&@1(=ew0&a?TN#-^Z!ar`9MawvH%#Bk>%rq3MUb@guBRSANMM3}R zJqmmq{?Yu%O4CWrqMspbI08fuX{2deJwaZfkv?xJz6^al7_Dq>uFf5ai*e?1DEiKT zPHxR9yfrLAQ-`hF+~htog^!6;Cg^Ud*awRXPs@M9S}~kQAE6-@mVh1UBBGLvUjs8w z;-mwNrR*adYNm|E`Y0X#I$Q@OW)>7iSsFG^npXm1AFCMJp^uwS90?i6P5$n-F_B}e zLtI512lEPS*+T@=*GiD(6uu^dQ_D@ugB$N7O6}1tdU@5K7Vf;;kS5Q@m$A1B`>xrc zLzI@g7T>omu5|vG;Kq1UoKvbwVL)e*$j7C7!e;VXTx$79_|#tETY;8Yxq+4otRoS! zdV78ha<%;tp8f4ubz#t_q*wSoLiBy<5Lri=ZaH;>AmCLBgElz_vLuwjJ##M(OhH}w zwQ03l6!0Z+norccJYMr0DoKb?cS{#JY5!{=U{j+&7E8$3oPi$1sUR7?Hm#WTODkhA z9l71qN#ic&j;CDm8s{qiaYayQd<rbauFbiwlTdC-Pw~A^Fs?VeU)0fvlMe=;17mK8 zNjH>^f=p85*$2C^Qjc7the7A;xZ#{sLY=0{z^TT7mCRo(9M;het>Q}qu(R{qS{BLb z_jSdavwOhv`uX=`^T_=~tCc>i4t0)OF<NnYj?ILAr{NExi4!Su3m)_<4i7%X%Vbq7 zoJyarV4vvye9p`GMnX6W=}ng=oxJpiBao|Jx3z&k&(tIb9@&EzWCe?2wUhc4?(DtX zWDssf4#eQJMOey229*xaUC;NBd5(DQ%Ad}6L<aB94PI|lMV8mU@H)+Sz9edH7bGg~ zQtL$3)ja!3mqKIg^*+*zq1j=>G~P0FXVl^4h6WN>cW~)J9SfL;nJ^aCja-i{LK%^O zUOdS3%*B6sn{4!NJMCMMfPA2yBxPqVY}#DU8owl6i|Cb~-vNQ>hb*T%uYW2$zDSw8 zapb%xNu64vkPRc;+1VJ*kD%WfvOu5Vp`KMTgZ*K>u;znq$s{C*SMektU5jK7eRRf% zFC^SGMW2I*MlT9|{<syb>UR<o0|h8(+@85?RyP{FR(g=kEVNm+S=1~-@{Iux7@d$L zFL9d?U&PCeVv+0XRjo3apxCr1^PIsvfKrx>O33V2(Q7=kyNGzo9Lgd?fJU4dA<A5< z1plm|Tsp~g&EC;q<@maP*`Kq~M}`;{z0Ry<mci3PpQ}2rY@^x^2bo#&nU`afF#5ce zv8Sb`SH?I%vtMUY0vZ?FJU1En(G(Tm#XI14k3>T`3l{_w(Hk$zhlVxmkhDyr6(I`+ zZA9@p;Z<}okOeH6czl3lr>aRH&?WR1PxaxXtFxuIRD(S4_R^me(DhnLjTjdM)0-%P z0d~2+lfWQ{{HZbqxNHgomTY)1a)<_T%5f1)KytokJ2i>ts^%=XSQyNRg7P86GJZf0 zFHSLtOM+C9<4?TrRFJF>wk<d(_&83@p4(g!8@4R;SW-_Y6uJB^0xs%=XF2oC@CYyE zCgO+D$0YQY`ReXqs<DkoqZ=!;-1tfZ8_pLZ)3M2B*^NL$VKFO1Hqs_3CF6F2c(#`L zH*-Q`aU<Qi=*pu(Exr<R-6dBule!+S>#qj$hf^V6(V6Dv&T6Coq<ec^o^D^gZbzJh zibpSxwde;2K6)`K*u=p@wO#Ua6St}rxMqp``0em~1zv)eyWpCUZtqS3Rh_9V?GeA2 zuYQD&#JQ8gVc=P#covL!nf31m)}RFu`~kzc5}^uk-s4|CO&?3wD#iiCyV1gwG*j=* z=F+5zjjUiXS~eydB(2Sj(rOjnE#TJs=GshtYv%s_79vpX`r_W+>E$}mj;hD?G+P+} zFjG;M?4Q>bxJ`U?3$4vFQ*5jwWg*O9D7J|oMjLDizO`NZWGOqM3+G5^cs=6q8QaD; zZOpo8KV>R|dR~1Ti?KJo>xM3*d<fBbzA*a&u*r$6XoFv@O~tNCHU2o{%=A>b^^DI? zQt)KWo79`EcjT=ar|-PW#={x%%Ah;1aoTy|{c?_C7cVxFdx&H;S9>W|`VF=u8n|Zt z)Af3xf(Y$*Cktd?bMt5JZ0z#+TZ5;+a50x;+Y|i0NP8uXux-W3F0snz38%jHyZ(!g zNuHX4+RWdBd#__dV>&*sraIJXMM6jagS58{imTDKMR5z(&^QUuxVr|YaS!h91cC;4 zY24l29YP51?gRn}4gmrLcj*V;-siki@1Fhs+&>gh1yx<OYR)yr974$LN+;h)N9ihq ztty-I{M$lf2uu-P%n}KtmW(CmsA+osiz{0w4Uiq;U`_%o7j?4(AmCY|8k3)zoo5it z_)S#*s4<8FgB}dh@8l8zvk>bY`w>QXPm9v4sJ#@E4`lMi0ue^(&D2HR3*!Mer<={C zOoyfVjfjgONF7x!INA^<n~Z@ETnh7B^=lv*a=HAKmr%z>(UU18$Lb_Ar7H<Uc{p~y zU{fKgLsk6F#SRS_5$vV4Xv^7eyJXNk@$4Yj?7n7RVfeBhlEg&RvVcSvw3YmlpOw@* z5Bp9S1&59_lQUdvN6w+*@hFJ1C8xcA#dK6DQ=A?LqP%ffPdk`oowf!Gw)Sud2+~BR zK2P^aU+S{YRq@7F5PC4TuxVE7Gd^oWWMWlj*R;V?asv1{?!g<!N=<VOi`xvYJQ^sq znBE%AYXv4-8}t&pnFE|M4Bw4fEE8?v5G7cBOoPzM>7}XyGtcko)okSy#T9)CCBn0| zd>4{25EE6@MoLO&bSvny?ok_5-F4)ME1y-?yR-Ul`Epj~?1HS_(!E_)G@z;x;_EPn z$b}*T5{Fqb-OGzLSMYj+_)Dfw@zum$YKQO7v_>wGeSM{c4#UO$u}yu|4tQ;?-qWHi z#xUR7K<oc14mLckeruV1yM<`OlcLz9h{~f^_MPcd@2uXUedn+aL)Gs;jJ12{7SlxS zfxgKlRHeVNi-PgXekZnyr#FKP^^}M$Y!0rt8Hm=)@gp2B)jh!<r0%3vOfV(3;E=k% zPqL*59rBvKW;@W^qKTKXcHYz$A@*sZvE{2WKUu)}fNJ1{fwwa@Pmy;jsf^l$-YZ@- z+6zQs=8==-NLUR(1@-d@p^-(&UXXZD_s32kQzNZx{s0GI5RZ_CT7`QR0&O|3b?*oA z0AHaF2OI#(h9XVCuqceO_ckYXPqB>@%C8jc9*S~UB?}wEAuc70!&CZ;cK*7oTD<~g zqEq)-O?bz>E49*&oW^MRj9f@7ZcoX?-{0D4jV+$Z^pd6?sTXwc;T+^DJq75m$swAb zm^W}44tH@?QV2eTt<quT)r)2ymnUYwCC9yh>sHr%%a)rO_br_00OK63J#EcH&)_sB zBY_tI3<i3PZ*Msm7cc;lEq-A<V8Vs0AVE&Looy(dkJ!j%&^v@T$;rL9Kel*YV0@oF zTWp2D@-p)MwKQn9>->4MS>$;n>uwkponMj_2PGa5317hrx4c>MR<;-}H;*9F%+oG1 zQ!#-hgNT<+uO?Y*;Pg98;Xnd!BpJ5~J9`3x*wU3ne`p;A+J>LCr&>F?rxYxZ{E^q? z@1(*^3X64F-&gh!XxQocn(U$MLs4a=NF?%4995=oa2G^0PfjQKqPLDHP=k8=JS=Zz z=^HHG{jQ3Io8fKFS(SC<mE+B6z0T;(?xoBJX$Zq8ha}82jzTgk+*he9*a(bVtwNNI z2fUtV#DV7~4!6MxP0d0U0X={yv_;Hc=8h=*36QE$>4aP8Pv3vL&T?<0_UIS@%|eIn zl|1{j1ECv-RZqh;tFazbq>n1KXBRmkH&XHUE|aI-3Kb%0h(PL4Xjc5)1vzj<js$Sx z(AMJ*5KQ=SfyY{ZN&}{?ZaKw&DWFj<78FXD3Cav&&!%<;7rKMaf)jo`ia^GQDC9+` zPB61#p}kn6{=1Wx5}+oGL=j)lA8l>-ZR;HZxVK~?Q+j%G54ZdG2-}hviEcX}xudY; z8PMo7u1y$ha4{WQo=J~+Rf=Y}Ujp?zh73xa#H>ap)^?AESl40->Eh33(^-6;+LVQ0 zBkGQdC_p`3{BdEA4^bA$><Og7sIzMp!+{_#VlAov?_&ewrzN6KOAZjgVYEC!ztfam zuWwFb`1?Xz$sg5^SOi|J^fb`4_Kr%U1+1?_$a~^kQ<5B+?NLb&UT)6DXLaY@q&eTR zOWgV7b3Pe4)}TGFR|r~)FVV>jDxbt$Z~Q%2xV4GJa)>3CR$juQ{oL;F=r~`nfVVx1 zoqFLFASpFoC9V$W5XU&4ZEo_rZdLL}_j@Pk?zcEy_e@F+Z^3!DjjA?*ZO)z^WHr%) zM-hqkuR6-Ur3n<(8FsRNG9+UcaUkMDP7qV*(Yb&lm|ft&-GK#J#I@^AfUhcwwd3se zp<@}^DME>SV+o2B)BE-wdN=3$F~76uStxkKkW_U<^$*QwFhGedTci*sToy@$u6{0L z+Ub*V35r#hIgCYP7zZvdo}_ksT54gi4nvwOkt|$hw?U*Fihc?>aW|;K7a0{_0T%T8 zn60Ax{0MO@1-7Na_-yYJL*{TX@@?aJngSNxb}C5|{t=_mrwO1+^0e6pAd04W=i|Gi zc8a)Bt?dm8>BqQ*%KXv+Xre70I3XJCZGk0X6$aY8<o|%F`H7H3&M;L(TF9lo#3ExM zT_M^ciKXNq&ePC11HQW0VCEQ3+})kr3a7@#vRcX}iRe!XX1o?=?(5+oI+Vh4at$iT zNGb*!`~wMlxi{wDrGG<JO|YT9`bM`B?I@_<FY@ldI|1gJvVj4YUH-?(Dy*@H9_arC zs`dW@s=EleBgBg+RjAQXu)mc5#N7Ue_w2S$D$Q43lv79#FRv-oRTUe4{2gz!g2~4a zukq%0+-wcsWWikb|11g{>f)7kp?E-qd05k#7p2jrIj~|hRnWpadx?Sa5XqZCVR$=a zjq-Nf1WEbX3aey<P%eUwPp-+w@JAfVriG+z$fIW$!$pRaZRzKp#l${=c##}7rn|pg z#S;BfJxEfbo-r^AyVOI0PLTt$9^m%%JfsKSpJn~C4}*X4+d9^uXRgBdVP|1IUmt!Q zcYa>xkkSpOVDp(n8gk#5Tzg*i`Lg-oSQ!$us_*GR#84x%oM*k<Kefm#$@0I$#IgT^ ziKDMD@v&;OK(XVyE%%uNT|ze?<ZZ%{F@r2n(2-X?GB&-VY14Vw0pOVsI%0+BJ|e+x zfxX78r`{}15{Bmb1&{L7wjA^~Bt?f~L|tV*I_5&^6)1)?OPr+Z|9skhGH}P(KH3uM zF2@>+rIJ_(=i7W~yy17uqNG%y{EcWrKabQW?DOaAbSTDyC^inF$d|}B4`DJIQgW## z>qqa4F&{L)<xgW@^}bA_==%Uv)DB^jhd<^IC$;PyzuKQ@zF_4#2=v#~^lLtyZMC1@ z^7pGuqdvrs)G&1CV{vxWs|alWPC~4i!pBTu`U5{W03`G8yX5qyu-o|^bh7hxq))zn zWGjbTrwb3oR6!`ZibGP-R6}KJ(NTwe+hS4ESlepUB1bYYJ~Cb0m503;Je(kl?z={f z4>C)^P8=ZyIB5*>$=ijj!2<A7wT&Y}x1Ehl6Cxrl+jai~)aSg`Xl`$UQ+=qg(l%Mn z$4jl&m>ZjnC!JBzS<;f}S1*pyGeV{P-sX7j`4><?5Gb_8l=)^-8>E;9&$#Xjs+ayH z5*@FS^l`@6c7pDCHL+n49gjmUjG|@r{V7TJ7dVmum(TcWR^E}T`bLIytA|Ux96v-z zo29qs+qY*E%pG_S^IWLSuEoP>wK-N;w+wO{*eH^{Oh9T>s<ls`#owP62DG<%$+Ikl zfTWe2AL^VDo>BTggnia5<im8*hi8lrh7?;zvS|;F&@v@6$<L~W)T=bJgYc<EQi!vp zr7IY8SWLct4tUzEcStbfqf<qT{y_Nmq>@>Z5W0}J=7@9xf48%Ja1@+&mzOrj84@fP zcVoo|q8DfA$ZHXu<|SR2V=L5;Uta+^Kx95T!0lk|RoleuY?D%S!<^;QSW%C<k+gps z$*x3rOkE7QMa3@)Mq%pSJs%$rB=EuCpv{2yLqS0d5RsOq{)d~o@qVk=Y5Qb-*os{9 zyWq}YOfN^ZuHcJdvgBD8nIk^NNnPAp8WEv8erH|{ml6NUG*B!Vcr-rlAasjh45b=4 zsY>CjYdwc~AnbYGsRqkCIk}{?;7jk>c4d&k90$u!>!-a-fn4y?@u}!f&6HSqg}WMe zC$k6zTt#h+U3@xspM$zTuLuj?j*GnY7ddvV#U}Q*I|^i+)@|^M(DzIo!V0*0S{Ei* z<Xw!r!t1%ucB~y5gx5B&6)#2Zx&KR#*n7{hl|pr9$c&owu@w0PGvEsLa4-034}qNH z&XD9_ZohtgDY_<VdtT{exTc}o%CC70awQT+HcbovunY$|5A;pR55sTwZ3P=cO%?w5 z)px&t{yiBh*waO&UUC0p0aAW#L$UJ_w(PWd*5eS=NKYP9MiT+#5bw6`D>jS=n*Q1J z+F8i*Qo~V)FZk4Heb}T@&_bCVN`18SBlqWj!(cq57Z}{qKwa@K7+iJs0)y2bNrJBr zT#HY7S@U|D>Iktv6qVIiqM`x~4xt<|r<WO;E!$Q1XBx5M5X~=dVF_za*97&H-MpG9 zeoEvG9b&xi)NFqk@3RUv40rpogwaZ{&cbrS+I1V7jz-oURJ>*Xt6_M!SW_S7j=0XO zzu~)iAVMM(eVCOs6XP(rE?4*uMi;o)Ef0--Z=ZGhFB{D9D#<Jo_X{3Q9P|6r^XAN) z@{ovlMLZfK>=@rCdhmYfP_IdG7A#(YIUAxysOa&1)939cYlQl`b@LWU2MgonFa^6= zyiq?pix)hMzxp5X@b^Xg_t#txuXxzz1rJld;^EnU;bFw$fAH}4f8$}VS3JBt^@@jg z|AmJ||G~q#HKUMEuXs4bFs?9_Sc*Y2B3eD7$?sf${Mn9ABy1}Dz>ipIw|+NOAWz+O ziL`AJBc=cvnY#JmfmJXZ`XHWVK67q8qpW*n?=w?L5?J}-y4EdQeQbHp&sxk;o!hn2 z$)CGEsmVG++foYoyxztUC>%v=X;&M)OUf-;w^NRG61C}D;Aj(LCA1qi{`8Wc*mVCW z-NIC^>b<~jyRVXJt}3-3PhOZP@H9DI866>xDQf_v?~5cAGuO3xTBS{Nl|cZ_`5&kj zvzX}=Q>UlC81%lu{fsWu1ij_ySHs13!OpP#qK!VmC4W|m-I~BCu5E>KC|F}8Sk0N_ zKSH%o&n)p&l7uqgC()BRQk~_DN*^2YrMoH@M>~_LH*;X?1qz!cu7UC?#`ISPRo`&W zbT&1R9qy#7J(c(2$fHjcXk(3fB}>+E$040=dmK+%<JagtpZT+Z)zn|AC9j9}^69|_ zqd}#jqH5-fYQV7k)5FyduT_#B;c(o&cmbKB@+!FMU9<%>*eba0yqx6`rU^LZq{aXC zn!&n)^9f(g)`jyoWG9Zg0$b-e`w$yPA4~x_ZjQ4|lnTRqN=;>HzHtS~O{zzBWcgm% z;$uT{nt=3?>~!o@a+>mDWpM=*QH39?q=%fUbnfDG$nV*;en_#PygKCOy<Qt7VItw^ zBJY5qu)x7r@Gcoh)s=xN2^h=Zi7K2yV$N}j9M%tE>CPyYocCxN$3qhXg-E6KAwL)l z1%V`OxA$WSZkP-=Jar<o35+H1x5Zdk{IgGTL*w>aOc8V)N!8d-bsaZrwN<qq&j9tH zVGQM+>f(MgjLB2fu-;k)E_6^LWfo_riD(q2MA<62NBexWYxUDA9>X33f>wB^?M~z! z=H$-%tk14GF+>YR{t|z`RSZWk+1eIp3A3M}Bo}$psl;9f)MPjVlT>2KhGsTNJ;`>h zDO;(Mi}pXnngZyg9j7GerS0U(tVj;AuAbWYnR4fcnRBjTj=P|ODYA}I-Y4Cjro95_ zv;F(_gfRpqf|5MD{1>%fx+<5`V~e&rEg89|=A^l`h@6D1WW1&b(T|FlFxaT&-Xb>f zDQ9+A^c7nq{dLndF36ppf#I@wF>vQ`jrCz4+NpC~>oVbcAB)96W?~zcn#V~UCK0*( zy28X7JvwAVEFxN>OY2!62VIwI?Xgm5Mhv3mv~U0;8e`@;)BL4C!@R}1bVDm7u&H)L z#c6%j^9Mv}w7^TYw3AiL*Usa>an^TfSYnwzovPL>Mu}VtY?(N-c)$M++X!JU6&ZH| zYg^lVmhG(z9T>Ei`t<$bbVWj58;><;iegY>OJdS2uZG=G>xcE{X441Xu_|n(r3zhJ z;nAUclltzd%??k{!`rjh59%-4vnx&GKQsgme!g!AkhH&d>mI~^aO;#OrTnMu_#`Wx z%*}qfmCob{&#H&eERG$Ybm&LtckxG1Y?)st{#QYIjSIxzvQEkS%&5wd@PY@f%^72L z<RO+QxU~V(=yu%stbtw4hiIZk0w*+0B4%HQM}8i)uzg@JA%!m(URKx%aYYvdutm5i zA<{S%WemU#sHz3ZUKS)|C=^b~D~j=C81~M4F{jG9{-HGNXEer<Q2h}gd#OQVj)R9& zp^umJ!=VuqmY7`ynQQCv6v$Pm4kl*5>?_;CE=u~R>bUI)<>fpjP&|kN#=`MHC`5)8 zgqu~nvq1r8lLh{8kXn{#w=Y>J=nmKO!r)&h@Fn{>-OQmhNv_07)K9*mb+a!K3QQD6 z=Pm?aZZ=z}-N%<BsJZNl#%}tf^^+mRZ=l`w2S~x6V~<F**TU?W5SD5TRiqDWcptZL zYYR}nc{*IZ;2UsH$`XF*I)3?(m`+Lj166PcA_$o5CA@`vKS>%)rp}~xdPy2Q2Jk#6 z@ol(X>NO=O?{DIOVNwW=;5{~SToIxSnbb2WVDK6Q_y(a9aHqZo`M}=^czWun=H0r~ z&HG8hz7RV%8-dUP=p_N546+VV124{`E?GT;c|mLu_T^{_rnWRrPwaBkfOIe!amGo^ zk7P@4%0Ficg)YMHr7Elp_T_f&QPT&~!Hhjr&axR`RExcsAH;;di(;ZwNPhxkvft$f z$s|X~P)Qlyxr(t9;UZas^8sxW)?nFYR4h-_JTMwMoN&Z9qDxu(!T{yMlKmpCEv|Q^ z*=B+Y0;`2gg?iuQaM)+YnLESY;>>m?ZD(lvUlr;<=aDc~-9vw!>T8Bt3l*}@wLYxK zx3me73cr+C#C4THqJj?u<Hv<RSgU}q*?&c!*T;3G-enV65CLSrFy+ECjb7@Mc(I{T zRTdfC8&EyCXUn84)bJ%<k}7~1`>2HOVZNi5u1k6)i}!M=-QkChpo`CGghZfMYHY9v z4!=B@J!Vp8APt1xAcz2pW_YqVgA$h@JIySG#ID+(d8}`~(R7@2#cp`9JmFEz0WYb$ z`HFklXw3&w^QDJa$n>M4S@-qRk4N)T!3P2SvgD$mW~;&lC0plOV52fE4IeyuX;OoW zcJk%CT;P5!UTL1vY<EuxEbfrSaL7y7aSc;~f9BY|EC-?1m!`zt^0T|Ll)1gUYd07B z=K~@RifM#}E@@^Jw76Xym1&%pH3vrmXFt;X++?1A4NpCy+k5v6n+azfd8c?c3~j?! zY<Sjo5mhTLrUwh*W`c^n0!v3COX<+$3sPTQ)_p=i8MIm$s?cu;vSQS}IEmsfzkA{5 z5(`yGLv?9l;pkqj=dW9%&*&eU_3XjJ%b|{0^33<C;MHd>tD2AG0>9D-l%&fSQUO+# z(M4`aP@Gwq(e`-vy$3>29i9e423W-uRPJ&^(nVi)(*!vU+Agn&h&d`B>S_AFTa@7j zUjs$}IbBc>f3<l4A|xE%6-+DuCu_>%8bZhrLe4i|S-n+@%|w>~!%!6!l$3cJ@RiSf z)m55L)3iT_m6TwZICB#hJ=mbl)uT{`tw0e=nF<wgi<q{tydw1F@!X6Eutq4HeOu3s z8zX)nAnCW08e$DJc***Jo86ymqnou>JkSVdJij^P(od-3=!8hR3<MEOLZ-rIJ@!M{ zD%GV<gy!*m-Z<y=MW0GKVQmdOH<%bwP!fmg^2Atk9XRn);UbFX6~LAYQe>1eGh(N8 zPMs>4nAzZ+W&GYmgZw~<Za2^hfG9Hcv*Ur?xlQXQ$_UgXUy_#Z*-lP`{#|oyB)I1P z1e*ha>FCB{9vtqa?NCC$$NttgRnA{Ae8hK~<V8<YL^IS#QHf)|5E7j^1?b^IW}v|C z(jqd=d^&)j^>ax`Dekcur;5C3Qb5T1Blaew@5TiFJ+KSw&5wdp-*4-vp(5X}W>s#- zLM%1qGgLWersXXcE)5RVtQOE)iv-z^eVK!!GvifpJthm!Gw;k7E{DSpnlfZY%K0D6 zU+U49UScht*q0y(3WZoP6P7rNC8Ogs^T8gvb%UG{?wwPY<c6`b=pVz8XlAuC;$_tv z$IF-hKl51of0@Ulr2+$ps9*vd1r#s=+{+iO-7<1)3t<tshSliCaQ9`o3JHI#)=OgN za)}3FCHzSzTO=p1Q9`8Iu5Z$04511UL=NDH{eGKqA9{9;pc>b7XLP6<;j@a46KMQD zPh*NV7XH98Pg2wNQN=t&z5)I+xbUx|q+4-U$dWJPxaR+79B+Z<AR96Jq)6slw3N7K z9BUBM8IlCkz<gd%-Vli@{@6jx{>h$2C!lQU{?{6$z&$xuX<#D;Wep-q=SR;{kRHYR z(o#Q*um<U&YJ4r7ugDm<8s?;a`A(RNW1XadC_;<)Qfk49E#ms_$fGpZZB`w$6h8B! z;+aVQ53@M(U$YpN>%V64ku~@`jbJgg4^GyH8Cq4|VBrWw;Hhjg&^JUXc{W4}=n|bH zTc(#R=_;=!2fFw6Bxalc_aFwD{=b9R@YBRcvtq}amNZ)zZ$2N}(o(WAWdH&ByeD~@ zZ}Cii{E=BX5w$5<8S@1{=NJbl(OyRoSv&EdN$$$nLq=V?{jy!=`WPmWp+XOq=72vP zqPZ{YbqQOEtI!>FNf#PqQ+m#fmOvCzTm>N`Qm^VUgNw6S!V4IV-jb|D2|@(8VOL|) zhpJ~=dzdN|N`#G-MVI^I&Ljg;o+!d-qRao+S!{=i98uX(-(Zt}sq}tsWoUS$o(gm8 zNqFyzW$f$_FnfP`XhdLi+UU|7{%|gx03p}Os{Xf@<s|RH8>NpHON3U@)S3{|w+e-t z2_aQ~X}v{dT}4y&t!p!t_KAyb);8|amJd3IRngYiFIU+nzx)-MFnwl5n;>4#{hlbg z>#=bK#FrGK@w;+#&9Y~wP(L8Kn)lDy`{GhPk4;mxY0J@#PG;jyHuNhHI$EzJ!1H$R zkk)qQ^8L_=@rLt!iGoyc1EB4Ly4Hk-NP^uz?&@YgC$qksPJ1WnGgv1JcD?P|61?m* z(I5QF&+T^TtTztb5y!!0SyP|v4(m1iJ8o+Q7vWqwh1h7sOL*UL(`h?2BIaz|MCEgo zymuX3O;gPurg83G_3xj(OAsvfqx<GF0wafSD}3vB0FMTPo(H4GAkzsL!DKy_0i~Sz zhz3|B>S{?*&C#Z=;_^tH&na+zWYH3qRz@ot`DF~~zjmrO&}RGU#SHg|5uUdN?N&KU z*O?Ihy82diRBY2hH0t8}h(Io-v7gTLxx5_@@>CQw6lyl-55&cdjG<T31i3>VxVrju z7)4aocq&%zhaa*Q8Ti>p0@oP;F=onNf19KjtC!4(<Y)wCA*GrdR_%ieOM}Jo#O=6R zB4@4TzSYuUtVOrV(Op*ywvy<k6}Wh+E|GLNs4IXD@S@FI3IT_K)N0mpF-RY6DQUA1 zn)couvk24G`8W#+T!A$b0oz>>%s9ay_W~U2OM4e^A6%ljWU_@$JVFFP{fK7YbD;4G z9DOvv1l4SS_=}0=B8q9WDNe*R;n>0#6kokX%P7~Fn~dKm0O0pJ^zCTC{WmizbDL<7 z&ydT7Fe1vPfx^<!Z#49k^jyFYCQnC@8f}nLy#tRz;P>eCH&a7T{j)uU2L(IwvI!!! zA5zp+8CK*uj~ss+Kzq7iKD#=#`&!np4`snr>)lzVjrqFexjF4C-}Y#S210+9+#(wp z9g8>|yAM!qZiG9><egA;@CxVvZ;`E^e>p+ze<-`*glhI%ZTr%k=0)txDo~xQ1_tgR zQsX5~YgX2g4qKs8;}qRiNYSyyYiUT%vDIPw>5!8djB`9+R#5pB$VJ(rwR$WPYyR$m za-lym4zK+hLA;HsCk1dCNha`{Sgov@x(?~O-+b60OQlTZfq~14`B08F^eNSv9gZ<_ zhqh&FqdTBHAJ7y6y?(2rd+XTy_@TgGJMz@XQ!Nb?(sPK*Bcpz1AZ#so{<{}ThwZ1^ zqnFS1XAi%%uQjZ;@d$~t_#Y`i1(J#D9|q80tS+kN!u<iGnv6AT0i!_d6nhG|QAM59 zyXjVJCjlgH^A!@rM(Je4R9Jw^^_gle;zWYrBp{)sI17BvIn)Hch6L0H!PVU{MIjVT zFym;)!z3Xn;3%nE)+J<Tb&JG4le)H-6<+&xf9K;E_HQ}PTDpJuTSyZj(nXO@b(cX! zWLKK<lPV*q5GRu=Z;toR5r=i6%uvG8y}kktdY3Bw@3m?~#i4~Je6FH**&8G+NlA{t zUOItj&zczE3V-CvUE_Kj&*FPDElKYAUBC%uLhTBh8A3<V`E_g}01aJ}@P7S25Um7; zF{jFHg>BNFiPV(qbSLLb>*cQPq#UV#JU4Gsj3dtZr3+|=h`W!r`e;AJ3UDq)JyP3( zw-hCx1A3YyH!ez?9m-#G&Aoh!NYE>IlG>GHonaZ2ux<xbW-&HwbDR!L`KCOXzt*X_ zbxM4%4{95Oek%CvExifdWvTl^a0Op`*4u_1^Cpn&@8S2+z!;C`-Tj4Krj~x4KOqlZ zb{eNprCoO1b}7|A+mMrW3=(Nal+TXWN`~L_l&4$kCNDPW^Ds+l3FBBWp!hw;03V6t zm6to1@b$#f;_f8b)y-W69Ts8lxHg*ujcJxKC!#b9elWeq5V}5~kP!Y~ndUx<uW9Cy zF?1@n;7#TzCG5~f4sdVYv!`a<^feZ-*6-f=<;jEI+1=SU>$C*xQ6Y45j$ibI3U4{P z?mawy+<UK9#QC{*RWM2dRYm3=0g{OS5^`_aS%%Q<r(?mY!W4dzwnGI|41*${n#K=1 z0E1(27|CR+q&b4N?aFRV?Jd4H4=s70D(Hy{jqPiv->PQUEw7{g>)!;>!Km_WXOgPM zFF-*38gVIizmxsHZ)f=!XFu}$^Q+w44&P&GBCQMpB%1+kl#zJ_={Ggw53L>8p(7{c z0z?bR?-u@j5YyawJ&0A_{*Qy$tQ82&j4&lINM@Sbyb}}&sx<C2(Nt%eb?m4%6~j}n ze)(9qQIe@ZI2P`vZLtW*4v8+#n?iC(VUT(PIY{r5B~moIDa-&VN>N;R(V9G>76ORj zt2H6gOPIY=j^@7nW|gUzlAg0z^&C9sMfUY7#he<+KK~>R1Y<54yBEo!d_hjlqlW$z zC&vj+*&M?z<U7L9AkQ0Y7F^}??>_A$(a&8*jtQOfhieIa{_FnBz8^<gB_OnITONsx zV<B-Q*vif}FsdwhHiKNAFC_98R9I?%O_)Oh^g~K9DLw%`_Wu$|;xb2P;}$Zp54<6N z*2nIqqDX0IvdsM@Dd$S6F_4CKF^*uSga5=p!_$UWd+uC%wnN>(Q0XD`HSfQ5l49O$ zuyXcrBOGMdzf>7vgsxhFgZ6Ljm^%iI^nJbANQMely1Vi=<JbO9p`|y*Lg@QxKN{O3 z8y+36Pg;?*LreeA{uoaQPb-*<On!<;6*{tC#f*6})Dl@jnqE2yn-y7!d)Msm=PTac zqA01->Q-^ME&SbtEF50?@%xTSbc1b6CZ9^w$T~`2tc*LG(I8qbK{>Ugw1VOCr#7=@ zNC#cX&p#P0a=O0aRY$WkXp;mClgmiaJyi<0G+upU(S%^)Qt_W8W&<;{=XiT2Lo@Gb zwA^0M(Y!7f2Br0EhrX~^!r*zmHTWG9@kuq+LyH+TW|j}c0S!)%rfh^Y+M^5mF0@ii z3?JMb7HQB;t|2+favt?Ld?E16<Owc1jcCPRX@G#8O~zz?cXQ{s7<&BJ;_Gpm<}dK< zw{oCQ!S%fOBN)PZpv7v**FAF3Xkx)M=@N6>$Q4AlejZ8zYN2=RIhQo+Fsx^V`EfIq zN#mzt;TE_&#<rA!4!`lFf7(^fAV`zo1T10bOM;q(eTc;@0Ru@>I`Rmv=6S)XY)`DP zr+asm)t0RRo4;VI(3p$^FnV?!;f<p`s1S$f8x4*D$A13AN9*=^n9?T%?Rq;e<y6D- zciQQj!(4xbKYO1Te2GqY6a{Ls@mM2L5)3Ab2~^vws_HDUDIjuB#_08<ob=4F)CuJ$ zhU-w$#cMKJ60^pO1#L>9+O#a@Y1-xdWJk-=kRKGx%-UH>#4e9SOe~SzetF~-Nxr1Q z(ziTntxY8By0}M}$E(_Pwu5<ii!}M&Q>u|L#l&k&sTRD@KLXfU98*YR03khuCey;I z7R3lgY=hSyWLtWOb=Eo==8yj7Ef6Ol7-~E*N3ViF=HIw~wM*E#3~;>fA$~CwsV}0? zG__V`M@iX%pBE7?x}bac!uH?uZiZfh<}V($3x7kPVWFJTTn1&z!o>IkglF%<EuxDR z-lSG2>9(;aGLtf7aEr4y+|$=2Jj`6j{v5jr7fh4FF21p-bL1eE+uPYOn-FqOc84^z zB_%B_2~5U=+P!r!#py;Z-R`^0LO2vp4%aB=UMu!QPv<(GI?C;{BObI;cZ=!1`cqe7 zFC$b%M&ugeQ0395(=9n*G4|Gld4}4H*H=EU8$;ntq2Eik4aaEF@}bTo!ncS^xkP3< z3`cQ@hAQU0C!O!#JS82?cEdQR!ay&=poJVi-yE2n9PB@DBCYbK+&_Ex&=CK55N#KF z^sHh<gDwF|Dx*(D%w}^B9ZoD@C1p4LkMJXKdZEMESN<YhXEZh}r)2PtR=S6D-$?Al z?1a|$l>(qo{U{3}B+pSeVz!{uxT?ZROSI>j_r+_!F&0FOp%$$kReWsPCPz@dt%uM3 zL$f4(t67~%T337X7sqxNJ{|&;;>RyKm?eVW^fbddIv&s$HR)Y|h^=Y$841ke39Cd$ z_t~n8<9Ni)O8{5}%@K&@v%HD_kHFK4Gk>Sg<m4Gxt_n=I1eFU@)4<31_t<XRy&^}V zFYh%HpUEfKrQd}-RfR44sl2<16*;B+OCsa>mFMPiy=K}bc49d&e&F4xBYYqF1!4mw zbILCt9SmZIWh4YyY*zzl2nn`>#L$S}?t=GsPF|^Odu?pzMP~UORzd>Z7)eqHWalsl z0oLk`i9gWuNer|gkV9gbDu=}A&E2b$Nxt?LWYD5RgA$U;JeC@qRMdO(SEJL#=U4lK z3Fd=hVRo)-SB~R4T^{Z}!H+#U3%{f3uvN~`7xlb%J%_@+fN}{53v{Kw2KH08@hAV# zQRDMfJ9KL@can+qkNGm-#HWNYD;U4f>363R;`}e-;AM+b+pbj%DgX7l){(UXw-cGo z?vw7LE}osAL>W}ZX=3jn-3smKsbPR!iN}BB&F)0&q3%RR>b2L-mpoh4KP-EItn8be z_@6K*cq>TlIZv@DXCCc;u|^0cCe1v8YUTLmwaeDt&J{d=n0u_BBwzZ7<N}J?D!Y;L z{&eGN`^Ytn%qtyJRCXAi)V|u?+G<h!fQyK40CztP0WyqK<U?sGA2>sCcEz6;h2d4n zwG*z+DWR63qz?(*kB5}qx8fe*T7ic*Q|G0XqWJZ5>}Iu*GCB;yu<=h(W`2^XCHr(V zs@NY~spLcN@g|Uol->Kd8A!m9qfOiQo$nz%SMW=D1i!S@o!nRUmp0F;Za<%#T>T9E z(f;%OSLod{iSPSE;dj|gkvC5ycd#eQr(K}pz6YH*mnoFb_9oyqa%jlWIwW13Vx&$# zVvVLDn_MLRiGJz#92kZ&TK%BsYH#Su4ER=x{Gle6qB0xhno&ccSiz**Eqp=vX*cAl z=XwtnY7qh#j3)(E?t5^7!k)aKdfvCbpZqMcJA6^J;DZRJXg8$uBqgAEwB;&aK6KX4 zf_1bD^+)`Rg3t~qc8u5ugGm#*$<-~Q9OQ!^$8pt1gqacgm>+?;Jj9L$U>?9CdLY;2 z3}}HsF@1rzfreQ3>r1}7rJ5#}SWm)*q+V7i8hxWN2<?IU%ieX`{h-Cu7LB%aXke|I zy@5UIA6`mrA>w7ZN4vBY0_aeHpTOG#@6&PGzekKnAq)HT)z;#0l1um93Y3Drr5eY# zm3}@cMOcL?AEjZW7&~}hD)4gNeH^)-nbSNLK9s2&{hx<h;%=7WLc5p4ZC~+_9?a3} z;g)^YTnztF4<&p%jbKvhymv`~><Y;Ul-Q<>nCfzw=Jc6R^x|&}-GKc!>D!XTe<_)J zFVQXRP5P1g4c`b4J$7B*&)TcS$E)Z{<k#RKt?0THGa_FQ!GaH4Wj?Cv5^0x`%@evx z)~q8DHS5)OUUzRQRlnGqPfl`koLKucCxx%7$N@S)b<i@g-Ei&)=-*GN$<+s`_&bup zF4P)|AKEsxTQ{6)er_|_=v0v_ZQJ<~P1%S~vNrK!e1GJ~oFB*>(+RTB#{DWBTER_Z zGIb9GdLfjla((ER8DvOEU~pPg&b3?i$JiU5xno;Z?yn&I^6SH1Qsho1Wn5bU`=!w= zhqNs;bnnpL$T|sK_Z<dAqAE8AOV^E3#qIG>>99Gg+udO3>Hkj1%ro=fLS~tmHi;mJ z+@DKc)+!DfG=3^K)nYn&XM_ZsoU6}yGB`q!G90Nk8POx}o?;?Isho{-roRN2r${4@ zoQ8A{!hmT~m|@^u#y;e*i*q^i46q0DS<c@NZl|-i1t|pCEho+z2}HE*h955`TdXF_ zOG#64%^Tz-^)Q*sj#K?EFv-L}xWE^KQ*E4OiOoz3T+6{&)21EH{u7RtieQS3Fz6+- zSj6O2<H^%b2C;LLYO-EEkAu2UAos~{0DU^oQ27wo;)@md5R<djUap|4n#=_);&FB; z2L7BjVWnr5X^g-iFdc*?6w4iJERwh)dYjhpSCU8Io`q~AF6$Rl1yOx{{b#;)p*Li+ zc7rl?YkZ}q8!Zcc+6~S%w`LR|{yt%EGXOv1fwt=kMo{bfNx5O&uF9EZb&9V7M;fzU z;b9TMW#}n(IMd`6k9L%YG!--|Y?pnsH01%Arp?6V^mTb0B`-D03k%`wu3zcbq!pJ{ z$WggN^=;8=QZgGW@~}xP(n^X8{`_<CjE<YHVD6-WXok1(mKj`;rO;hs)ccX&7jZUs zMO<cmT-6n+*RXeDUc?%$EZ}YF!u1bT@Sj=wywK!FcZp1~$eZF<<o?Aa$awWfP~J7x z;hH+>&-EHTl2r=BcuU-6uAj-qO>VlAa0H~C7L$wK*(Hs(wOw0YQ!3Zl4J1FLb>vLP zCiw-doorb=8AD_lw_0|KRZ~+9jfxV_VoVcmrIb^osVtHmi{Jicqhc{W)mueZTW<2B z{Nha7kyBVoZhk-KeIlSs?o$E-PyBt(h^B{jPGCbK5G&{9K#FB?rxe;yR$~<;nPVdJ zQc!1miY?y@rk?&4Y;OQ$0#V)mT$Jwxc_$*sF$Ggt&#Q5#jI}cIiFJy-Nri(wI^1+i zf{4O6a=_Zdy!;fSEDDoUO62UW4}c{NBHmC>4Kq>LR{w&T$I%^p`t9Hw-hDExBf&@R zQ+GoVi?N>t7W!ki;Eo&^77KUY;cv+`lSSxw5t}+wMd+ks0iv+s9Iq{i+Py72xyo!3 zK7DnJu6eY10px;+cJc=k_Nq2;GB|z}%{SP2aHgtO*tz1#)UXef77hJskoT9qWpwY` zPl5CA!M%I~g<<<Z_IQD~g`_RBEa;lR`=>j-#GCH<0w2L&?fjm;GqLXDgi&5K5!MJ& zQiJE<qAB2uB3Lx^pVzZ@#4hMRx&warYiycRaj&aiz&t$_q1@4$)r;ilp(Na)?!C2V zL6!TxZxpoQ3ImNw4L`TmdiP~&a<SmnNzE}zcYAB&tFNom%?0AQN-fcI8a>u-V?bf? zsXs1AO+;%Xg6w%cQ_dk`kN%N>;_UH7#N=7DRXEb5;0CCO_w-X7A(QdvIZg90+<F4; zM5}W(Cc7~ZKVTjh`_s$%kAT%e29nY|TAgn1SENKR*VYzJwAS^yA5M5npZ6X+qs^gv zvfzu+@@IQka9dATO4v~TvAu&h+n-nf!o%m%E&k>`xa$%IoYPY0r=B*esE)ny-CrBc zl-GV&_fouHpL&s#i|F|II}EU75NtgLjb~RmtX`On!hbUx4i3Y*&RSppH)ex8=1sxB zn2pYyBcoU)gQ*YivrCk|*0pLPLQmA+an9NS%hpbau$05@j<@$3Ec1oCtUC%wTKq2` zg{T=jO~Kz>x6Tk%v=P=-g59}}t5+Sbj`M=YquPgud$ZJ`GDtg?b4_X@(R2Wk|AW_< zjK)TMdqMH4_x)?l989M|TKGexy<>_*)u&z1OXQ`2@cxXzf8DD~h)^WIY)xbP{Gm0O zKAjgvb!6+OPUq+R3-Rs0moe2qRq%4|3$J0Z3W0kB5M>tz%spTYe8t*pr$JR25{Zti zX4(JJC!=Oq87f;i_qiWBG{meB`Bknyez&jK7x~>I;6>QmDPB?DXCFTBkFYnPDcCX3 zGlBz2Wr$hTlKF>LmrMqIKHU;=$!<Iy8UkaZ;WPJ`gLTaLnVjnR0Q53QT<*~*_eWUN zS86HB>xtZk^uFqnK7c4ytMYM9x^VojKhXgh_yHhU1|?J2Q|A=v<!>~)pRsw@xB)>i zcXj$J#%A*TiaaO8-mH$ww7>hcyAId8eYk#BF1Mu?4=exSA}TDy=a9XG)p!b1_M*ot zUPCbtPjjbA82c<t-kFMW#M2)nMin_eeq!E6%$NKlfWGUhFg;yGLE-GIaTd5}5)-0H z`EDJk9J*&7(_@PuPfy;L?eiucS(O5@3gB5I)k8!7g&H)bjgAl&*#b^xNWD{F2Hd>z zbWHLHsUYWdrjo55<4`B)xb*@%7E229?v=KX55M=?d%w~->l^ozhrNNPCKHkOwP$1a zpsj7raq$WhpHi7ZpK<K+h=wnydL>?IVjIwlKTA%zJw~BlQPy<U)Ft64qPZnr^r97G zFM3f^a8!@>7SJMs!jPO#oaL+0i(qtX(BT)p#*1Q9wIrYlJd!t}Efqv)ZNqe1#t{@> z-P_GjJq(EWZvw<hKrfC0W)|n14aU4sj*d;i1ouC%AbZ=20q&nQKXE}Z{=Z&P_y0Su zXhG=t3lHKkDYoN?U?NTRKE2KqaazwsW)_g7#iRe1kQu}(cQEmfU=<^cbmo-?={?as zROh1!?x`w>{EDlIe*&8jRw2{SySk5i7kR;Ew*NM%>YIN@w+(Y9K@m>9HSr1ZJGs&R z!iG`+pJqt`IlhjpzAZOAX_fF*q?F0qs(SE8Bl<u|GwM`)&Q)ELb=XwSo`y01T@1JC z%%-06=7-?Z!gE)td*mzMXYq%Jm}qEM%(vmOJ$>VhZS55EP->CxN}@L$kWCi#XT*%} z`2~r08nQw8yaN_#W{dS5=NyK0?4Tfa9L^`xIWRNFQ|g!?{16Hu<u!njM~cdx*?@*! zs=AtuPR(qfQ=&MphcH8!o{%!jIC^3{c)1+wR2yd@d=cBIYVNe6^ZV^gSm*Ekq~E>S zX3<m=AxU{c9F$I&iRqeRI!6f#u&Sd+04iRKYX3gpcdU5z(xsiM<la;?AHPp550B_s zOm>xQDFyPMw<Ve2FTU%AYk{SrpFM}9pmKUgA%K(vW#MQ>fBnkV>+fB6Y4E@7)FAt7 z=l~@=+~ZB#pMGw;m347(sFnSYsGnN}D@n~IYkr5zlHkf3Oe1^o@T}KGgK95ibq0IT zzlb_pF+5fD=KZv9sZ8m6742T+Bov<^l~mikw&GJdSrn$1>xbmz9PsQf_CW;(r=;<o z=NgIfi2X1BW=1T%J<CIt$FCKwk~L0FpMD8{`}%O#$oAK0xHhSnWE!{cnff|+y5|fo zm_09WyD8;Qm67fUwp_B~VcW}c8~D3IH@kRIrZQ2n&3GUk+e3Dy5mYjX@cbe<MQ|u6 zJ1uVD3i8c*E}tugc`D-g+lr(+4-uPC(#<u(HQAI&G{U?;dn>bk?=-v_J^YP%;z@hd z<1Gnh7r{Wj#M3{<M?SXGbfDNZ(yZrdSzWse*T)gI0K`=i)sQ*YxYL&f?7j?t=P>@D z)ZTCm$u7MiQfKT$f<Hsfqh84<*h6zO+NiKp@T{-YG}ovRtjM^!Cz*`o&1FxGxe)f0 zMl2mzX#QkXOEw!T4eTI#9!1#q_3ELOI#I|cfy-|~oNE>-(!jhlr-j6Y`u{y7;J3jz zE$~G>HBsA;sOzTlI`!^`^@6!PC7P9}TSvZx*@vC!XPA|M`0#lqO$g4ySE5zIIh|BD zf+-lb;pXd2)gxs><3BIcwThn%GF%5yrhdPhirb2%Qjf?sv4<S|LlXRKAn!9!71tNR zIy;#s*i6|+t6X2pJumtxcJXL-Q}OwMpI2zo&_>?~V#mMAv2FFUH<{j#Zb`hzG_ykv zd-2wSm)$okbV#LgveO86{g+^U7r9140B;gKf+oG)hL91<URddC%*zt*Hz`rp>0gw| zq^q^alyK}Vrq%m%kBdZUERgN&rJx6at2ZkRYKosypqt_+*Rg%jaRbBetbdU8w}V~S zi3!9-el1lc!N0E>{@*M(K}+bI4b_D4EIC`|ut5A?-i6$^iti6kE)McY6#V{-UGrY- zMJ1z;OuAxZrT9}Jshvg>eFcHpk^a@fc$-N?fhO=<;`O%hYgQLY_4L2(HD^>EA~$5G zxvt;b=4X-jw1!51hJWHFC&ZRSQ6*htIM0)Rdb+*8-Fz-6dELE;I)5Rcj(47?JZCV| zh^iyl>C`_~zMqImVbeNKI)T_J2fhy>N2*&W3{ZJ~txi9enGmoQl6y<n=;KX6!6Z-W zyqaCl<ZSHEVdniiitR%;RCw3Xk*qoV(5&J6yGu;nI)4JJ@vYCwbo$z<b73{pn)G;l zG;iRsQkZC>tgVA8{rcDvx>=X(V(5%x>aC0>H2-8Y#Wkd@WctR7+jTCE2uL&m7YP9f zvM3%=lhL|)AJLd!Hk%)u*}zS)akPC9I|r@$gwtWFJy9Ix6L>k%fuyzj`%)3DTKf~T zu>X__dlm_(k+i@<GdNt%GDaH!Lfpiaf;_%GUw<^wjCE<20!OATBrnPw+}Nt7e-R}< z>v2EQu^BLF)nsXJVPic5L!yi5Gyu7eWSq(9&$1x2*hZtg&-1Axj3}dMC;oQZ=s3C4 z0%fe7@P<o&P+l!9Q%bA3c^~1tzdHZyr#_R(>;#=%L)^PXFs>cHD2Er_M6EJAdv-#% z4}6#=v=azF=e2j<u;>k8`#*o{s1Ddn;$iy&?|6NE^1CT!&|i%jc=UU$e_X{za_kvA z{?7f2L->$iT~(f4@ZRC){(Z7zX{;5IZsCH}l~RuKpWha)obqfN<N5<Bp|;Kt&MM8S zh#0JYIa*ZOzeVB+PT#&Rv(K-~>?L$l&R)8JkCTdEu-VIw%1phvPsmz5zo`Z%P)h>O ziMHCFmY4%?fy+$7aPF1WZy<<SV{iNN@Ota6J_vP&|GbWMfi7mEb7{QDXK|6Z!Q2?i z#o*Xe9*7NenANQ&O4-|`vSXB~W&lmiCBF_=1{5*a-%$qLrWY25YpX&M{?AR`XJMcH zA3OG9e6MZ-Jy(8w{BBVaO+mLvd}OFeS;M3Tj8vci%ND8Fi+_DEMBMP}-SCTM-JYlz zJGCf2RykL6MzroGTy~E_zd6uPloV4++#L(rcD@cULa<^Gee|Sw_O$u<u(EGlF0y%3 zbi(`dfvmmnrl?&cM<i!)@b8|2o!+~F7kO$+Rp2Yxhty)9d5$!Y<BfS-czYdoF<~DC zbEZ5cml(<7P}%4_J6l0KNrwR;b6)u-c?k2^NH;1gm?Fr8X-zicr!(`Mje$1z{B$Dn zB(nbg_Ibx^X@{&f*Rh1G^Cq10$;Cm14(kW&a9Hqn7|6NF)1=7_Yw%H5Tl?os%Ee)9 z00-_53;;zN*p$drffW&l0<^ON5=UzQP?(u1cyCzY06ysGfMq!N5?i{h$m&=fZMTPg zAC&x)3?07RPtPa6w`qz&;fH@lJtC#7ibJ_8UBJ3Twt$+^t*#qhwwUv=y!>$i41mHL z>AyUBA%ycUr^#qKDh=7UW&#pmr~k0+5;>HN?*O4rW$AU5Yyz6f!r(I<1B$|Y*1>zg z;DN=i9*k<oI93}4S|jCX{kwx4ZYMVtqP594o^PU}JLu}kQAuKd6}EVgpI1gd>3v;h zOf*LZFc2*qX;Q7er>oyY!Kcy+N3j}~C#PbQ0ccx37i-$zAPM<G?~YH8_nqyJFwpNV zfBx+I8!ox_srW#^_jH!6>PqJ19{si)Md4OE@mT8B=D{rUN1*OPkOdmFbHE38jm#hH z3+CYtY4X)Y@zm>~7yQVz_6=f>CbNxaFrV3ba~?&b@CQ+rqV!#@v{GjUFSQsqHri6u zwE`-h?kuCWcAsC&aobagpOa4aSJXvSlYG0kdL(*@_me1^aZ+E1p(`a)gWc@b>zgWm zcL=$@g8}ixLZKRpGWq+u&@`Knvgzi^w?^ON>YRb%&5g$>J=UQ&zn8r#=Zi4T7(3SL z=j~eByO}(A_T98;y*oeskEnyAvqNcy$(N`D4+Yx+#DKcjr~@@ceDm475feT?&slqQ zGM|e}RmW3mQ1yd)7{9bX(dTej^OH3QPx-;SO#=06HRQE$S`zJPl^J|vdp3pE4Kt>N zPQ#_lkCD_kW3CXtuD<=fDol~TqW$C|C%oDp1NDfsQz_;(T@f4CHDCEbp_~7mA1tOR zHa={5>z(@4-mlZxT&njikpN>V#fn>YH_U7`Xtu>6uF2fCCWtSl?v7fh43)dve2+{0 zLf%;k*AC7qB9G$fNR3M`39wnMECz`0vjH|OuzhHdGcT6QzDnBDy*BE<V|Nu+xS9XN z5YF7Xa914E{`<uOWsUx%)jW~9;=f7%xK6M_6`U$90i3V2+78xSMNzkbew!CK{#~~^ z>PZo5@_(cpOyQzlstQu*xll9h?ZbFcNGp37p`X0*m9-N*r101OyPo|k`}>|qg@tg; zN>Qw;M0g`r6o+^?0w87Kz|rta;z#<O_yzi3zl)@?GZuCHZz8DP;sio2jl6&r<LQRb zcw=3f1o%TVdy>dZi0cBnvaEKqn0e{)2X?kurkX7MS33jyJ_XWKv)>uvrNUp6i2D7r z>Huc3rxL^FOPC1LNwY=8wvbCH@%D8MCDdw#RBc7mkHn=m4Kj{^5o`<Q<E?Tx;{CPd zo;Ww>i3&dj6Ip7cb(QLHbD^=qrA%qqTd|I7ORlIzX6UU5K_MN3sH%eZwu=fdECE$A zFraWGvyc!!H0QMH$A@}cdM|tkDme`YEzJnd07A-%ECdx{AY^qC-PAOUOB<e6Y^+yy z0;eIt4)&!yZ=m_ztGy#27Dm97<?R{spLZCp;NAli1J%ZS$^{jQ89;QUhKB+$EctZU zfeDd5;hTS8CX6k}#TJfLOi@KAFC<eXFtfg$f6=N?8v&68S&ZH2msBkZ7vjvTxr08S z6y_h{FIQ-Td#3nKU}<_TcUo!w4~@wII}niH5?`?ZLswuM7}tqn;Kvye^<TWEOw0?f zdEFk3C>gmhr23BauTDqLMI(@(wFkl^75YDTO_b(;@tSLW1`UO^x7(D)lCdPYBRaC- z|0TZ7uqFgkN%L5F^#|a;4O40tJ9RJ9InaJ+XH=j1C$QoB2;Rlp%+b$0SNrG0oIj-7 zM31(?_}ncsjCtwa2y?S9a%5@mo<&K4$PPvJQCXQ`EVKRk*p4{Y<^(;QIaOC#=?0YI zBHq2i;v(*n`HPsV@cU;2(inpM?NlZ20QYtO+_7TbqRyLj!3N{EVf!YoJkdiHvdZg} zY%<dspIfdpCWl-}@lLq)Dx6Y<E8E5(hx`(AE<?t~WEM67^lE?T(g!2vc9?N#n6q5# z=HcF4`Gg_m%ffHD-4(0ihiMxX{hnFsO2vb8UFS=It)&m_RxB`Ef5Q=r81<9u2(D4} zH4f-Xsc91oxEgt#7)Vowvf>#p;08iiaqIDI*k=w!>y!_*6zVwPLG0B7>K;Ed{40Ve zLq)yP$8Q{v^@U%1`Uv92jr`+j*e#-O6nD>UTu35A+zfd#^q-pz-?UQ|8vBMEz8XE$ zZ^PEu5^6&aacAxeo{~fl9~hEeWQ~PZLw{PcswDyhFc+u`V+kxz<>lW#Y#-u>31D`f zRzSA*&0!M>WlUM#CldYy$7beIT}!}4{l1idiJHEw@`?I?sC%oRxW9E>7Z2_b+}#~Q zaF@mj8r&Tc+}+&?-dJ#Vx8UyX?(VQV|25~Txp(b#&bd7|zYDtXsxd~7_kEs^;=a^1 zg;@ew@AR_ooI7qJhSiokkD^+qK{<SJqZicFCkS8ch#5mx|5Hr6aYSiEqxW*m^hL(W zgLG(0kv#A^Hg6_bZb%7;4j4;<{1WU)2OEVe;!m&73W<k=BdgDF)&jwjY>=vkTeM9S za8bW7uYVM1jrrzg^K6a$Lxj5_ef3t;S2W`%oqZ_&7-@xIINl><(I%?6xQbB&qr!;; zUx@jF?A9}ueJE)=5&^K1jWi_GNJk-M9~A_*OooEs7SPB!q^QFXgP>frybDh{s<<yE zz5pn;xRK=@Rn1s{V|8~R=+OmwIQhV{p%p*Hh248bT!-m8z~~l*OVYw47aXqBQ6h1- zt0ATw)_3J$IK+7|CZSJ<fqt{2z9Vz?Bt3)0J}|29;ORK?mO?ZTx#pm*sv^iQW$N?C zJ~Xaz$;u$#PzLuorR{(<%#RvWm>w?%%>iUfaBX-83k5>_ZBA3@qxUZX40|(rDXzOH zuwz;wsH&y%zyXHvRA?^?Zhq2;0-(8d1T10S*{GD3s?BED06-jLbXsg!wlGgTDkaR} zA&Tc0H%%%B_wtD`ir{4>GAf5<HhpwIX{f){jF=J_73-pU7X?H@6FgNl7^{q*G@!Av znRaY_p=?4Q{p@CmRfhjWM1^cYp^M@V1*n%BCp%0bL(}RtR_-@tMhGQln1dYJceF(t zDkjK7j~IvJwl@RaZw$c6LGzQ?ttmtcqIBj~(MMfeD@*TQ8<WFaT(hQqhK-^D!bQ>S z<DewSH_}8LCYuV8!4rjr{sVZ_4m7_Xi#NXta%-sFeKc=1m%&fDi~VP@m`O?yo_$-N z7iG651``i6)eBQ*L;$|qW~wGKltLSO0zBFHxlEZK2O52Dis_9h-s`J;zRa;2fwVg^ z6%flHp2*Ah7;5H%j9(^K|5veRgorT==@DIz7|a~qWonnvvJ><sYo2Qyoxi@Y7$H=t zs0=9<HC`4@!eMOgH7z+E8?F*sHIC8=9f1w<XAAJpH<Lo?<6p4MXQB$_7KoA2$#dkq z7R|h2EE&<y9eyo`rO4@o21W!T&Q8${3Pruqfq;b1#yK!lkvqfvflBlPS*EhaIrDWE zFqY~KMI%Ct+tX$_Ad+K>UGaseUWk^D1d_9g)I?vjW*GDujX1a_eTL!Rg*<g7(dRWA zVG8pkhUXK9xXiB}meh5fk!eiQIRp-IH4bql4fu~|p)d`2653T!zx+*jA>~lnSWMMv zYEoJ#653PSXi8f6ex*>8?SC<UAdKU+Uq}f|{J$8B8D-3a6BH9@OmQuRa8oJ}zQIZL z5557vBf7QFTA=@Lexm}c4@&os2QV%4zv+$eJ#N2|ZfW0ve}Ri=G%&mnhoOhJZ=m-v zzoIpK_y}^ym8a0cD-hBq(F}j1`fmbCYr<Pas&d32ewQ)9%Uf<kZf`F-%@A&Bgdw?f z*ncOmG7nZ@L3G}m-U=h@4&)Nxi&G`3a3G8LrFEF3@Hq=MRDuL=4P2XjilzWXV^`8v zI#gnc60e^OHEKO00zGOzQP-gfC`7E#i`7gw6QRK&$>2H_`Iqkt(S^;EF}Yo5x9M&q zd7vGG)x&%skv}EI-^XGFDm9tRgi0h3xrnkUk=)|q`O09#4=vO{I4qqYPGE8+tD$9E z5LJMnjjpB@C+N_{J~jdsVPkc2m=RBR)^AWns5vM%@9RIoE>PM8FW>uj-VjhH!@w>s zL}jlWF5%)i<qn*549sRTW{sQ)UZvYH6O?NI)_(zmzu|B>Gs%4|kX1!UJS*AyI9|}S z4N^@9e;*ORj9wQRB!|h}#X^g0y;S)T!f%8?pDI2ItX%~5WFJ49(|GdbrWGig&LZC4 z#N%>$Ej-WSa`v9lC;&Y4Mo99gjAx;AYk#+y3gB|S>7sdYVSv7uSvDfT@K&pfqC#;0 zS07};p(uH6T3@g}*_Uln2B;JA+#RJVT{Cx7<^hV}22s%KrGP;Sx+RlYYi`XDuqd40 zka!O6uJCwDOk`0w?prDjp;JQ;P-Li~-%X)_eJiRVZ6tn&BK~lohcD<+^2z~4HWVXd z&7F6etJ5HJ%rg1U)^R-95tAVPGb35}R);NExUTYiDny1<#V{COiRgK9flW^akfcvf zSV++Off+2Qs+KXxmNVtc2X#GJK@aAJ6Ks*>Ku5*;sOw>alq^3a^5Oo#hg`k3TQ~th zu$`geC%S5kd}a71jOHf_IEkVezn8F1{n>`*b}7L?<N&=MDvpPggEli6DuZSrb}8YA z49Rwt5EnN5zmXfm_)1I#+=e;XDYp`TsTdFP;1wlaUL|ll(5FC&T**4X^?SCVy~(bF zP!0eYehEZE>M!Z<K71;0|NL2R+R@Udt?k6TU=qx;C!)=cwLSyO#41p7<%+(gv4)`! zkK<Q!vOJds_(~zpf`*Xt^Fhb`#*UMUY`Z>!FlVDeoD3Br|FJX`x=6)03&J*NSzsS2 zj!h@2tHWLe!Ww`v)1kwG5~}|{#WrS(h#g;Wls<s(foSy=JyZMkaoF~(C`ffjpno6N zn(^{2+ph1I_v(}4z*7qqH%Zizni2?`<6Z&wX(7@wTnLL_adL}2`5j@LQ=vSH?iM+} zYJhMMrgqzE2|o*BlXzLXarIfg@-L%Ox0`uTMKxdZ&7$j(SdJiVu5wCTw0GZBZX(1d zuKrp|>9Pm!?KkPM4{P|dTwOFvmR3~6wki$Fp0s2uk{TA-0E@?&;pV=LAM&({(c^l< z88bSQYik-S>-UtcUU4*ORL&tNxdv1>)}kV>Nl__0%0Z3FKw5>i|2*@&y_;-G5<;8n z`=)3XZ{&ZZ&&fRy=t3^V3Z5Y{Z3SMW4_3r-7B$gDdl}s4+^?0a0vqHkTbIC|7>!3z z<(V`@P-QG0rCQMgP7m$?{;uv!_^1b>+0K0^b0OkXXQW6G-1WdY`^`BORX~}vj9jkx z4=jaTA#_W4X#R?MF}Zr&b+xl^&syTVbIVn<Ey9~r6>69@F^CgOCG67t*4mBpDArio z-y`lsYb+1t$}jr#NN0#|?+EY8h~eLaL+|A3mGMsa51_hRs-XqXi09jjc^W#k8@XCU z+epTO7yqXJKXsaDnrMC@d@jY>v)_WRFJtlC(aLQ0zjT&1tN5J^qsO!<3OeXL{`hxN zuc)OLqJ%_bNSpe5H_aoqJi=d`qN#ph>i<aUnY4&!iWoHDL4Jgg1vxSZ@U|hSOB~ou z5Cjhck;)+_aQmYy7z|k$$(~NOm!;5wPCG;)O_8L<Hb}svYeifesV#FsA?@0^hmFa^ zlWbicEQPH#-AHG6eqV_S^M8oxo8aw~UurMhcz1iKbLcpiXRhFyEcB)K>%-+KEN}5| zY3n3ZN^znJ^H0L3H^*EB{0w)8f41g2;nGEZc53fFk?5z0*X@>4qsOZz(qIcJoHd^; z<Wd`?I?Qy=FOQ0eGZ?~W2siMuIFX7xtcNH+v3jm$tr@?{p1MFPqmQ5yeq}365SBv# zQ73oSt<wKHb>bcOMqXVuN5Npgsky`TebU-;nmZkjvSO|mM*=7&8Tb1e#a78nnk!Ax zA<uZj^5IJSwB-%v@1<O4pUAy^LQy2k8S9hxUIwbsZT!=`^$`A2R=?+~t`oZaK=cos zH7ZeoSi<KHS$_oqjm6?Kf)kD)3xO88QRX(uUuzMpE+m4u`fWzF#2s0{$My|YiFrm4 zltfIOUSVO0CCP+2hxT($eitt-;6?L?(u}cA0_I#DWP~=vhFGCIRHpu#bt*(DF6-xv zsJxIoKi27NY|tDJ87F1&Vsqv(mbat-AX~mL^od%|mwVRA?sc?G@M6fcCIm6!|F%X% zoF5r!vXa&-nh44q>7L4JD@A_Ze@SNDzCeNTNgwVmxNK?FMgWxFcclUhEKRs*$ZTr* z!+rit!L1Uu)a;GW=(_`qty@2W^DYdxvF1??QSMD~+Eohj1wZfv@GnTgvdz(EnjwE# zgn~F7JhGY`F)a&C1OwRY7>#U;q9!1tyE5q53r&Ty?++Q;gW*+zL1w>X-}deCgISf& z6uTD1)<sekQ!y4t*&pq*fu!MUP1at@yft!$`V+#(K>o+?5;BWa_0S&4$<`MR?^OY# zb4eu09fj=S?aw9kzbot`%y1*6llrz71>4dn%ubmh?#<-XgB19+(SA0-gGRh9=X4IT z2eXF7>qnXtR|#UfjT+5WikRj4NDmRb$y!YL;7CKhqHsfQe(*gq!}NJ#zQ<JbrQEEq zbdL<ZJRV<mI8a8o2r9^Xb64JpZ~6GDeR}L<d7aRxt0ed^gQJmw|8O&b-1Hetx;z`` zaB0lg6lBg1{Md7#%#ePsJ+N~0TIDtfIt=W`^kWu(57?NURs+*gRAC8buSbhrx3O}P z=mH=J<v=7qCOB1Jb=LCIgf4A;91(I6egxRXd<+-douygC#V)}NUG-+N;cR4N>3tl! zP<sAwe0lt_cH!*eF%f}B;hmV)DU5Ddgk2|f3qA*m^u7Nh(wA`+An8oD&;Mo6MM4Wd zYKFtIWLYp*sb?G(0vem%->8e3V93-=J91qU@!6_M0$DTyZK3sdRywDMGm8c}txlY& zyx^bfT+TPxopJr>U9;%28RFuqeOPQarQ4H;rajmZjm;;96!NyOV$T+}8F5{BS9)&j z<#BH3N}n20h%;l-Bi3Rhc8+e{9$LJo-kRUaXZSo`GtQOLt)dhAGA%iMe+S;f&Zp?e zX@>B#{hK{9RAV<A7x?posw}!}gFv%1M%C{O4G;y^U&(5!Nue>gNY-5ffk2@j|5*8V z78+klIii}>{7FrHGnKUT_ck@ia2fM>&vD9lnL!E*xU9{QAqu}YyrC3ovu1TRHEPBO znZ=U!jyJrM+gZA6XC!H=AKRJB`L18<N6f;zbfelHEJv>*$pXkVUp(%wp05kJyjL49 zZn=;43QIru-tx1Q=>6V;7E6?n6^fFC!s5?o7Xzb~Q*ue<)?Ds*xi^_rzGg1Rx~ljI zf?ZmJKYA8t;Fmb}tyk)99KskajOU*x^nULOpMex$Rdd|QT!~*2cgVQWvezp*b{_~& z@&6yXH9xCk_Jb35J9IM%7OT5H{%_<^n}oyh*hs(m$Cei7MyIr(vyaPDf{o@g53k3E zS3Gi21x{S>WcC6i!!30se1P~R5~sD~%((k=X=JBerl3=$k8afaDJv!<!k;lQ>lqSW znjh6TfNplv&2ZEp@K6X4q7#0}$u5HFI2!U7)M?7AhXSHX{dduZ0N6cGEb6mf>J$6c z;q2Y%(h{NYaH5cM;7j8lY8V(aKIQOM-P!In-RU`_7Df~J8{gtR)UeG~3_KzMQ9?<d zH3y;J+qmst2E7ktO`X`GKU3WdbI<t<Xd)DPI^S8~h}6S=<yPi<gv_=!>ieOSY}X(p zhSQDe0>9%bro&_VfTaK#mE3)qOQDBvec5dN*sQuct|^BB;Nnm7G~#~x;`1Y&61dS+ z3wCeUv!+asdKDno`zv#Cun6YR?@2UEwW{SD79G`DcvejDZkd_HL@>HAnlDB;-|YWq zXy}W9kJ#R)aCx<Vmru6ah$;RACQ$~v4oyRJ{fA1AlBE}d#jxsu;I{HV0HWWQdhw`M z6#Uinm!}S5e-Rz{78$6IFot5Ot%4_P-#fi;lxb86xh_J<QPs!@zW-fOISA2>VeN`f z_%~g|i`CdRkLemFFYHHM6U>Qj1q;OtBhe)$H7NGYUO%-*4b1)6jy8OWcV5diqO<Aw zUY{#cwBE;SVn7@G?7Zwv+S@!O1?yiHyZ(PHc2gjWowtAc|8B86n_Rqby8CGZ68+lZ zyyd+e3cnmIP}ga%s6shur?d#1s}SBh@Ywh1$syYum4h<B2l24iD3ZmFaZix!e7)m0 zCLybvN$+0t64^Dd&v%C%G3Bpw?cWua|0H=zoB?V7_|Bc`@)dUJ$9p4lT>urw?^o}I z_2$tc0_cLBBa+RU9LAE{2I2un<WW*>i_(%pVqQZA;^fQ;Fv><XNO($Em`l{#M&-C- zdyv^j!Sw$ygJtH9RT*)OlmT-~&Z9#wJ9AaEnXwhs9@q13c#V34Pa88|?;N&PdBo+T zhUBd~Yx)r{uFLu(9l5&A5O$L(<7qaOVgBJ9s@9HqpkC8k7b7+k5H1I*61OswXo74A z7P@|w0tXM$u`twF!LBDpLc?MysKTm!`$|OEkRD7oz#$ZSf#SM~KDw!9XU~V5+Yd)m zu6#`^-rkn08Jh$02LmB2sny0;Zn^JTM)ZT0`AH@sFKHs7Kf1mC;$I|XHX@EeJFH!A z{@rhyxK>8$*h?x{o*)O?{Q}-<^Q3)t2MG=|%{Z>F-Wb<TB=jRC);$B*HnYsO$JL>l zySuBmD~|VUf%>YuC;lm(;MKt6MUOTX$<>=Bs*f~~tP(~d5#@?IuyE84qT2^8ylCFy zTia6Hh%WTt8G56UAEo|&KdV{Ofu_S~o{}?3v+N?+AX_tn8pM}%6>|i1!bx-!7hw%G zNRPwqu1*T|CkAeYuP%zlU>~uo{UCE7;G7JEVPn<HR@hEfKa+Nzc6M5{7MZ$KHaorl z(Anr*yI{0Tfqk!!=_zoLt_$Ps++||F|DNY)E2C*uIA^Cbh>4xV(2fAD*R=E+h)ZoJ zVk_z6bGo)~o&?LLL3w)A*t07m`$XiYRMUolZpr|0uos}JkuD|#%-^ICPK3&(!^ki} zrF=mqTcprW_`8j8g+=!L1!<*^4{vqF`QI97v+J_#pts&qJD=VjYQFr5_(kDOs>l;T zF$Bu%5#w=Rs8D-_&6BCWHE0zNE>Wdi=06kchyK$ckoZYaCq?$o<32b=AdJbZ8CEot zO1_D`_ibEf;=832)GAP*7+Tr5ktR*5gw01MPzyGHxO8cmWS+1K2E6F^t0DK8@N)=p z=S1Mz&gYxPCl~wIGvLjegI%dZ%N&2Hk9>Y7-{gepKy3z7r?GVGizTYq6CcnqbKyxY zbln|OhSBFGQ*aFFG=UKDDTl3l4fRK;EJZSD@2)Zq8gQqKxtAiFw>SR)MPTStK^X(_ z?B1ri!uq#QUN>GNI9Cs!0y^dPHkDo1))<uqe&0Uzt7oHF$|ijfoz6!+XL|)%UoDi5 zehLEmGdy@I4y63u3BZ7`dKhc~2p|my5Y-S(+&Xv&5e*ubU}$-xHfAA(yZ&mY!>g!M znweYY?cj)=B%B23s&f44IiTi)HSyez`MGqAMH5U+_)ikOAP|R$;A03uNxzPK_?r@0 z`Z2LZHZ}xSaxmP8VpJm&SvthDYfuNzkJzs-K)3{VVdc=`kiS~^V>xL>B)T2ZJ0Rn& zNRV2aUGjEy@NUeQpm(v}_jzVpe<#P1Bdr1KCG7N9Q>ao&a_xDaGv&5hJH$|jzGLQ% z-TF!#5@ksR11>%>_v62zX*RI|-dTyW=QqKQVbb!vB%6@@C^c8Rtg!+Wze1;m5CP>5 z?$cYXvvX$IG!%Ej`6XTMRb9{4rnb(<?XQM1vCq=4eyjv8r&p}BLP%xfxFE8^FIP1X zW_ktbuM)5Q7RU1r6r7^c)%Clq@IQ|<eMRgdd61|RmV1Eh%&*Djy%gbFD)nLKqR^-U zc6a4>4``J6w0Cf>U}m#^<tn-BZgveC?=N*ecfzjn&spm%vyE6C?(*LO_@0Lw3+5Bn zX`cgc{_jq_xZ^KF{|`>QK+C_5`2RO2o=C}GCmwZsvq&X(p<ekW&8?+W63+?sMEz-J z@Qu--XX<&;mMXHgZSjq?xXW1F%IYM}bEUcPC@4Ao^6%u7AI#$4iui_qDdNv}+hT{S z+@CEU_FcWXwcCZVXMd5cdmRizJu_sbmN&B{|C|MDkI$oPV-9`@>L}pMx=R#fda#qX z9Y4Myo)hW9G<S}~<4vU0Ohn_Q2>qQe?{iZ_X9SEDRc_p-5R3V@9-fy10_~{tmPR?H znqe9pFap9Vbo|<9Wv}@DG2$hs;r^!)?+L$UbNdV=#MWs`yEmf3C$+&nX3ji~xy6T= z7c&J>6;0qAxr8SrMT62)bN0#lay4|esf8vto#H~Gv(3Xy(G|c?EiPR5MwtXZONhT| z7=~?qR{D2tdQh@CaJ8I1#h}&ry7TcpwD32W94qLSLs*6531AKn#UVb=A#MN*-?`2R zEet*z=t852@g4j(Tpbjr@SX>{B?LI9feU-UFB)uGzhPk+Fi>9l&-F4?xF0AlCF2E^ z7e1E0-fT2DF^+$%cZ$%kbhXczsRL=0;bXz48QRz49rgCdFl!j7EzrM4B^0)Iy<Ujg zV2dj^7|SLzWJf$qi_J>NP;?&T{X|a4HgSOB2PcSY_+z>W>wm^;AINeC5&fG;QY<@d zxrgHMHa=4y-6Z{U7nE<<a(7^L_ykl#gfARqm)PQHvj9dp5JQ6du&<|EjrX6rw#AqK zDu93~F-Twvkc8K9a)BvL#vMdkUZtY?OCONJKirS15X8qKY~8NFF$TX^+P98TghFxr z0SE+MuyI+-(v9^JE?g<K<etpNM~_U#?(qy>4YhK6RQB^znSFs=-W4d?<SO>cY5ft> zaxX{>xx#UAB_)aF#n+vemep$ni-5ongP}z0r+SSuSrfB$Y$$X&Q)+NQ2Mcjt?NA|U z@56f}YxeyjFYT>jKbmzeHGt^p)l@ETU`d0+F-X0G#T9B7=K_9^)l(mdT(TDS$Lo#) z`Tp;sK~`m3@z^|E(8rJlS&x3Q{XlGSbX#_P+_V3ffe8Oxf0Z_%<;%I@lR%rG6Is9R z^BD=D+cxy<k9+UhTg~8%D)~gSI?_Sun&OOwwd)2FH78?gjPuTrRJvG<F*<+1ihZR% zjFhkiM>oTSbi~4F>YVj_n-UVlTrC`yP%ZrK#9ploG#;>71}ksDwDr)5j5A+YyKtdw zh^zq{0WWKThD5eUj$%083b&w!sq~0Qf#}avBt;e-<Sas1=m2{))f~<x@8(@yn_*kU z=u%k~y6n-G>oa{)mnP~F*@yzuCkA2-fvVU0>eu}Q4m3gy0qXD{njPYR8A8$$kA~?r z7RHoSG^K`B^byhI2?m+9I!S8+C-HebuoDD2@G1dy4Mcp5jEE@p!smxA?3@9usUp@G zB4(tkud*=?_(#>R<0(A@!%UEMIOf%A_>5HUQjYd+TBBA0zAo2VBw*>UtHhIr-W4(3 ztl?b_P>~56qj$MGRh>g!JWJmxS;y;c(i*MA`gl52zjO>{(tmoR;tc&lo4&s?DBbUl zlev}ueN0*Ymw?UQ?gDxat$7c;Yavf5cn6dxZgM@Cp2S6A4gb%@yjw16&O~_S-BisX zIXN=3N!Fi|Lg=3f;3*tRr44V~W_>BJsly=G>KRM!;pIoxzQ^Mv$?EoE#fp(4;Kzzp zRFQxVFRB_?(rq{;&ft-$w2+ah=eiK&*RlkSFy!#ep0vR<F4$n9V5s#i;J|tUApnIi z1S$qxELflMFf%0T)ic<3zhYs?Rs-H-Zc>gYW^V5#Z*I25g}1c7`5s2!<tdy%opi)i z?wqElxydD|1FY%(F!<P(VEI-EE~N&z;OMA17z#L1unD7Y2oP|xmO>V`^uSwe<!l9y z@N}^jfdl&TvKP=e+y0_{q_*s$b?FM;QZh^;?PG|n*EB2#9^}Xp2yJLimlD>*O%Qf{ zT>MB~p(ZS3#Ddd!ksuk<lr0zrHw@J_s%PxCHng!aZn7B&O*^snL~h`moSj%lruv-( zV4{9$Jye9BHxOgymmfEoD>;OsHNE2Z7;dtUA^bKpKZ=q9y4b#His~nV0!(n}-Pu7y zyS`k`4g9GQ>aeM+V}gQeC)Tb8$9D({R<m3zk}xf$c=O!nHna)bH~cwyFm!ekF!Y%< zSzobbiCCKU>%DkGI$lJ5v93@p8=N>Gs_P_{Cwdyo;3I{5UYWu+>Xks)mKd{99|tj& zj*$Rhe$6->$F3Zm%v9@Xbfq6nEV2^Qjf&_UQ1ktLgGW>C!{^UYvp)oTllaHDhx?B1 zLx@7r%#DHO>)@KWF45>=u;KGyzA*k#o<`L9q-2F@20M8{s0K%sD{__iQoB~j5<~1E z>RI)MTn+JlnB$;9tYkc4Kp3uZs<8)gj;R0A1=Y%ksiD@Frv_+aQ%Vag3$of7I(xuo zs(~f~Phr{TC9&8w61h)Hh6c(s{bK#mtRu*@)(TV9%q?HYN&xV<8RABBQ~7x2U$~JL z9lLXV<r?wQxw4Vtd#2@ss*bGXrU|ThwT1Lal0IuK57Cax7~CE8__B+#<Y9d+veEQj zwnaNHv41*3KSQ8EluA`2hKs<qu2R?V;iWQoU98YT{4=EIvwZ&gJoBCXphA$}44`oU zF}qscU=9~Ehn<tfy((h{g$Kbw!MKr#_1i5Ms#MK<)yJ0>OogFhnEZXCfJOYKc^^zA zu^-c&F;yhh9b9ELh;~_oHp5mK-WT(#0*tl}TL|6^ODgxXKPHS&cvad@Qt?uppczVu z|GISmF+H!Qf4jxI=Pxu*n%GJ_V?{L(VoK;rs1{qJGN?hZlSHWEccDN=0Zge2yiBl* zFk^Kv46Pe|h$DJmIR7&;eF*SW*mO;BDy=<kv~}Z8sZg!}uxKy>a2~Q+TzjZZ*ya}j z8SmsjXpDm)kUT)BX#MM1Hmj>tmY}FuC~C$M`V08(U`9&CVkQK6i%W1fhn^Y^GJ=)n zqw$pS2n@boM_>4YtL*n~#gy4{Z4?v&BeARh{A+jk?oI|41%|itX`aQLW0;y@I|(#0 z*!)k<lr^L|;5h>kFMvtMsfDZ~YQ|CgDlyHNL5qcfVkuI?uBkPfiZ;@{y)|TrhTt*T zIQvh=t+*RE`rbR7i7q`m9vr7EJKmTUpZri?;3SnQm=iUnidHRl^(oa1d)Oaktfw^W zBly8Zs6KuME8#y>Nn08+WCQGm&iLHS$-|ozu<mg$)DPgR#7%<sANLL)`xv}Sy!Jlw zjC%*&jRb4G!51D4?&4#b&AWx6HG68~;lBz6ZU@1-!+%u)P3u0z?gL0EdKBQHr$?D3 zXYr;H=`AH%!8O-0Yeud2s<;{B;In674Cp-N5dw=Zo0|n?g0jc&e$aV(1gB-nSNu-1 zIKWb$-5sx=qPGmcJCv9As4%SpQkDIN`(9iA{U<-Y<@J++?JNbl+H8goORU(_cOmrj ziDpwHlCTWCGzD}<4k5?<TN2Qc>lu%e>>-1)JtqZ3MMk2Cqi2vpKYLc2{XbURUp9TA zJqUW?q{EreU}Ruo<pRE;qO%4}aHvMoERdnqP^sX3uEWgWsDxf#U{{7TGrjiO1&6VA zTkLk9#SdB9<m<xsy)67wv)DpNg3S~zbJvC`S^H%iVTlVlcar-YVUd%2^S`_nalTGg zxRQ>HM#5a8ZW?IJL%7lm*R6Ze#;1B!CbXC~j_c?4nmK6op)v<+xifd6g7y+bhjd)S z%BTF$F4Pfs@?W3~^iv)vZ{>9*Z$SC($8DIN1)~p|DTCICM()pTScl)$hZGRzie)Fp zeiAiUCp3?*#Jm%Ah_iMpvAg2-&93kEd-_=v&1~LJ9yE}w^zUlxxvHDfgl#7lGVxcK zCxkwyj3s4g5x?jupt1rJKUf^szaA<|t7kEfKb0<u-n%pR1i(1ysV}$@wVbK@&GkPl zwxv-dO743jl#{BCI9;K>X!Xx5Ktc!<E9mUL+@w3{TM5nVKGNYw3K)#`Kr}**-q3x# zpJp}ZR4RS0Rt2bWc6%HKrk(|Z>{pj&@n|<6e}-zFKiK6bk|+i|k2l;D>{d_SFOMAE z1sI};XIckkV{z9M0mNw>=9FHTB~zr&sq>LPP4h9)B49wpmIj(u^%ItKB6LC^|9z|U zeJ@lz@)tyOK#dU#Yrt%R^#!D(6wAw+vBwesKu^8V;5%AIQBLM#?5qVH4M)JvU<E#q zct@5FTZ5l}M54_AfG<e>y~t|1L>hEPi?$cwt4wx$NgHe`#=#TurzB6BbMl8RUe%Gm zD0sRpJJ%Wp0n5d^*V_bdb@2>0ffjPQR<s?)%C*O0VK0$0jQj+rO_8MMN<%e2fo4NW zgk0Jf2*J7LuwW?&^g6x+%!u)yB1!O@`qykY9_#nA5}fj4L8x3Di<BH}PGk~Ca)xSl zzHWXVAC5tad`Y}5UgAEDRBLi*m;GSkncTeUAKT^P>6B*FR{!2n#d^VRv~Y+Nu6@18 zg4D}lvzrRVN-9J9t#f#&R?&GBnybx4us!|zgMCb~8h)jI-=`R+18i)qE75yHcKk0~ zJy;6UHL=IiY;r+p9?Xb3Zv=6Sf|69Ly8}GL<W&fXeXvF!=LSDKp1d46-3CSBh6G$1 z0S`LHyjnu9khfUpcPyDucSDIA8&pwP%cIDYo+pnxxj!QHA(5P$6zKirTSM=oEc3+h zt~manY`WMkCWg~b3b4m@&;k-lWBVPV`peSN=|9HRL$8%aWzTIdyp90ZVsVIk!NtG4 zwjX{Thh#J4&&=7X?nWg*vKcpE-d}ZHE!vm1ii$RBeCBWz(K$u`rh`eHUb#{P`oTuw zp2j2STvp9~s!W_WFNj`YDExR2xP)51*@;om`(*0X5vZ;ceqtPbukKm-v%q83Y&HO@ zw!$XE4Y08Au%nL|trtt^=zY`IAZhl|WcC>5?fHB>V!lcIh5JJAq&4l`$>C(;`MTe= zEB{E5zeiv9XKfZ=)}P+doz}=|c6>W#TW^CWMuw~|f$wvVtL=B$rn;v^g25@dbC&^f zg8pOId+wIm(ktF0D;=kNPds-I)J7Lk9v)Bc-4AwI7b9QKI^90}IZvSR{r{LzXSw+F z?pFy)HcnkO%0jQNUOdb>$GD6XB4*>4oMsjKutX9jL{YjE-&|2xvKNbqj_PVUco<Ws zwOF7XRYL_wn|qa6$^5c1?l-FOjHSU}C=JHMR>(i;W2MWSqv*eo)DMr^_uqdYXEQ#G zR*ZG&>VJ%mG69^yCp6#UGUHu$d~&&6BSf~#%X-xK;5YnO%0nXyh#NbmPb01Ux-A#` zr8mVI@}<*mk>kf0mEJ>1=ox;Daf^y)iAUlq!x=0YMbpRI&fOLsBcAoWQy$2VPAD1c z=8VK8x7S5}BVO@2{Rj1*GOz0G;Y+WYnu`PkMtsAOn0Ov9<1O!3yRCs@oY>NLKCMh0 z_J!ZoBCU<S;zl_gCJUBR6zZ|d78T+c8cg)~98WBAyq`Sr{1nJ7p02Yc_LtR@ZH;w_ zr&`>vcJ~AY3umql2j?c3F9b8rrW7h~k4`2OI`_5J6JA=s?0+-mFXhx!UzO4986YrN zV&GC@>*i^{B@PU##s2kW@JT<GaBaC7z}0gSF-mYA{jADK1Ita3&W)*Aqmga2I{TIW zo9*%}eJH#(CjtQPO|WO*W6$(%{2MNNs=gumMD5Q=+{_i8iNqmxIcx>3nE331vpAwf zato`vL89ur>voi4j|~|;jV=PsB?4Bb{#pjMYx*oRms2$B<!Fm3vJH*Yb|FB!b3`D= zO%yZ$oke=tI6gJ4SdvTnd?Oa+zPCG~R3YTOyo1~Q<=FP}<@9#tQ+Nue^dmDsKfY{& zqS(!}WR<G;8>Z7F#nl@Uhjd4_uXKEaL<9gmACD2+NwD8Ve*P`Ayoqg*;-pr(O78H7 zs9+qixl1JaJ(G5FcOxK6&Tv|w<bht=6&jukZjs_Ot#O8``gYWw5}#5*Ff+<FMt%*2 zxiV8B#cm^V-20I@<{|s5UJ92C;`<2Tq%5AN$9Ne%ouZjANltnEQ`vc1u{&{<mWk3r z8Tx<|fPLbmbWANQw)<eByVUqlJK<YTzR#CZC=@SirL{A+KEuL*iSr&p#I-Cz9IY&~ z6-ci{yCf*xsg%!<E@i1don~%eS`Hp0`mWt^l!^}GH-pRLSnFUQ)#m&xeam`nWY-=< zT$FyXSB&UPAkHf&eQ)gG!9>6x1UjSo7-|F;;4i8w^t=WrE<;d8q8ULO<<Bc()=>m2 z^9@foNTow6G5FI8mhRz_pE^-Te=A~*|1NA<%*ZaWj}%cM%fC>Q8OK_M2LI;;4bQFb z682sqATGB=VjPYXg3>8H?Sr%D<8A*eJ%rq@EN|znbgJk<FY8nxtKHS&@xG=<5M!m? zc};I<AhcPAi1Ed#TXAsai%iG5QoDOd5nh2<kT3xw>UFe{Hq*RKJbs6g>YzGSn^NB8 zXQRoFw};0)-k{EY>%sU4Fek~!0I*7RUuL4Dg~F0NgNv8lKg4D#{bME%{U%K2{f;3> z^WhGL%bTGI8vPbiR=ICU@(W+B@fu?1U-W)m+FmR^Z!8ZTZC!2oaXseslgVM!#oR9( zMFc2bzLr;4ltRx$V*{v{^@sx?-Yy*Z)WX#@i;(4G9;g~c?OfkR`IbN4Vop}qmYJ*0 z*S#5vROr?6=}S8)Ia2fOQVl#(xaM!Js6U=}(sQqlp2xDcQ06R?;BmRttH<ing7Opg z%;9yWAnBDc1!&+EF>`48e$MC9EV5_&13|4z!E!82==mGW{`ZrFhZ8l-q`1m+`tSsm zhl%p1yN&c(J@xaeB%K1F;$&7meYg*__|;iE|Mxr~i?w~)=)5zyO2!FZj&Hc1mG7xI zI8nmMZL0M(zKO>hC8XdDnI26q7`>JU?B^y~|5l17S*B;x=i3K`AFtzWR{{!5(Nyab zL)<fN_cz-E{UJl9-t24ZuobqRM&%MHPNUz@r%3zLQ&k|~^Z;uQ?Z)~#5u6a3t!9#A z&xB;d(cIkSg=A?6rD4s=&R?Y#+uNY0jkQ|2JfzXBl_Ih!XC*?b1C|E$^PVGPAL0MZ zn>7TyuAW>+_l>`vu6}x%ZR7Fm{MZCcr3X9|nPt;7KVNOWY{+;!+seK-J;?~-Dq3Dg z0pu$u&+0Plb_*#3O1}v@j(nXaigKKo(Q(0VBX=Uru75D<Y?LUEL4=K<ThsfQk@jtE zj?}dPfV3$F9^Q%EUzr|U&+{{*+UV#GMxtN6E9bGBy})GnBkb+^baNxSSMVa6K)~x` z7b3e;fMk4V_KI2fNxk?r>c<mOOa80+H}p01cVP`oJj2stZIaixSRQvz`^3muE6raR zcSx4DrI(-Hbi&>%w7>?~S00YmcK4|k_IT1hlBe@?PNxaEG?p9$28ybC?W-7EPbsZY zSNeQDt@jnDU%sGF7ZrtkI`UQ5kbtH(P5(Y|V|V_#^)WOh(bjpIkk<<NgWdaj|Fc(( z&&&G+L}Q3W4zR~$>?vh1Gb<v-(fu6HfZl*Grb=GYbu%?Mrr4$xa>j8iPS$gR>oktv z5dX)Ype0$-@2t9+{N{Y#R@)lgrSW_o@*BdY8&sN-F+z_zkrN$~GGDliv+0ay*_KON z3KrdL;@tQP2p|8f=G+a-s@j{l8D;slfxAIo!|Wmrrt|JbB@L%n8JoDV-(Q5&q|eNx zC%jDnHrigjoE>lW?h0ws0qaurn`wDA_SuW#bz^5<-%p$^2n;o;bSWSaGn3VLr^1qS z%=p5h)5%@^>9Jiy_b4aO?{qXDHT*B1p0><0-I(MM1P)7B%8qENu9R`+{l!u)g&R{h zwT*zXBVE{njeGrZM}V_K(@Y2BA*}pDf0UM-2=&?i8^J?U2--cAmXO<>ubBjyPYd@k zkQZ<7Tk9z^N7N@1A+nVb#EuA*O?q1q=NXZAFyD^Xqdlj}zsWdWL{wOyTB}sP=sCu? zw>P$33qD^y^)DxOHs__IHY5?$>$kTy>n?=fos(FWN)N?go%{~iH=AK-Ana2Rcl)&g zv^M_D+3MvQG%cU8HbMyQpnZb=vNSPe6}GZHcG3{`HWs#0;=-Y~5Z*jT6KWgwRvy0M z?wyVG^5OZIhzMbY_7WR_ZT^D2mlITW4;EZHBy6=ct$BuV$37w~OE)6yan#<*Q=LuV zQ*f|w-hI^Ad*I<>G~;@+dtD~?#e78aLNz;JzO#iNcu{8e@!G=scy(PiO;DFyHa4FX zaPNkK3H^7)+5SRW%1;xnMh|bDGH$7t2mH-o-TV^1?YPbFvH0`BJ1f$zlWz(OqZeND z%!HxAS=<lw(+DCX%P$ntOd{931RM2!8q(MH$3UuqQs@ikj(ls>6%>0UOJg&TVSJ*+ z_FGJTrTBU$9e)@dK%<`gAdQ|YAX4ugk5~zoO|g}*yDT8REKk)UmTa2c#*HG#9OI4H z@gyinxEa%_r+hH9K%I~tQ90tB;CPH-oqp<TjxPh3_MlXA4&HuU8Gkn%D({_q>qzMG zQA^Qbr*<uR{J5lqkZhg0@(oLt3kplq0*+qsb%g$%YN5iicAXpXQydvnDC~pNO!2pi z0d=r;6n7tfcb{%Dr9_<h5QRMEPA0^gv!#%fjmX}1=1RSe=exY!YoLuLg=NPwbCbj@ zyt~ghP+^v~;GwnpP=ym7m}lsN4-wtx1gt>G`lywtw!<U2Psp3bQDsk1YdVxcflo2` zbR_hMKmD?p(?EW3##t`VQ~Pl+I;HBJh+SQMYEai)L;PisBoQxyeK3zu=Rzf5_LsfT z#ZIA=;0a5~6~DK1kvGYCH|${*nlGHhxTommf_mM<{j2jw?@Y=}YsgMJ_3rN5d+QDN z!yk?f)FxuRXlfLrI~*fUzqg`;^YRal8&knI);7ew7Zffyll10?|F6gIfPWpoO>6!h zzaJZAgX-sA-a3{+iG{M&F)^ai0HU(zU3JuFMrCavsp&;o6Mv01V6ASLvQuxQPqiIf zrIxN_GS~pJWjUPHQIclxYYv+%Oq4YT!JdRl_1A5#%HCuHbq0YIe$X8hrxh|(Bjxjs z&a~qRixtCQ9?RDf#o>hbk%ewa#3v?F7p=BpI4hX1iH5pLV-8w9rcomsh3c`tEMI;U z`8`bsXIQwHso&nt1>9V$RI1PW2@~!-bx!!C&98)fj%6>GPAOp8188dsIbPrgvrmU$ z*SCHk?QC{vR>ugRQcI5QL#f08O@=yJ*8A;*PXiY9DDKOJc(Bo4nktRjZDR^H;Ysd= zPb<YwwOiucq=1VbPy6Td!WZ)Isedl_iEp2VDo3)_x!w-0Hwu0h)@z>H#Scse552il ziXH5B<evEHE<vOe1P~3rB@ey9vlEahzD(;>h@YiD#}k!@e_CQ}jsZEJU2<cMsRqv6 zj|2i~e7E&Vx4F-rDx@bqnqQxuUiAY7@SfLFd=z|$h&tb{Vs0!wTk5tC-uQ&BtYqom ze}#bV>}8To#11fhpdRlSr4l_Uz}_!DI`GR?u4X!dWT;4w<+XbERDH(rBudsx0FKZ{ zm<tk5tntJkz4|;$aC9cw7994GO6GhEmy9R0;#+LNk2S0OoYCGA#%~m5aW$$EBd?sw zmV|Q)bZ_c&=xfUF-R`00q1CNO!^CjjuV%#e^C^=AXCzYQ$nb6Ff%`W#VB~2=4CKG< z?5IU1_LNnq-3lhwiuXTEEp2|kIkB4ho2h@a=JSLksR=nGk3_s1GUSVMM|RlUAq^bj z7j`2Omq->*%{U&x7SC&j&Ez~p4%g&-xHfrMd~dgZ_qy7_?{Iy%+C5%&e;<3fyIvru z@?x!Efph1l9ntIbx&diM=Z=Opht@BAV4#Dv_%uw2Vhp?BiBlbW>Wdg9A9C=8xP5JZ zqxE&;(XcF3npC8y3#G|Vgj{*rfi`2pU)Ki}9_X{$5~2neWzt_W+T8E1*DhDIcgF5+ zj1Fq&#Lx6IZw0QGw`S%}n5|}z9jRS!oN6<iNrKNvLmv4@@TQ2IzjMJZ@}3>d64gK` zEQCBQZ@u657>PPx7+&Y#JO&50WW}^+4XoD^HK3j~Q#rdQ8hV9#neqHsgP#+1O(h}r zhZ84Y)8XfVBP2b2hQW=7!oFYRG~E+D{nbIAocG(4Bfr54XAxs$%svu>3#OS?^#*V$ z<sHIzb+vUhv~?9?jeBC7<$)DF2~P07XBKgB-jn-Q$*LmZb1;}>j`=q3v<cE#u(-Q0 z_1J(Lx}T3dD7m(YA@>3!UV-Vaz)<0lpwDQINeJ=W%wjw07;14vGrqBUtH197C9hYH zb5}zLI|Hjkw5z*MFXe*mo$%THp+n=NpSV5_+KIztEqMYZ*JfT$this@Q@zI8zWQZ| z*?4)NUA#Sd^NrDDJc<BZ5qJ0>m1x^eMtcQO1UJW?z))#|{X{HG?Tj3>sm^#>^x0&W zLa%pqL`FQUV+|qWr$(Ylf9`=8&jutQJ~q`LTWCNKBH)<S@|$ps8tScIp|<kG#OKXm zOO6csuDlC?=GmAJG)l<yx=l_=67N?cOE(jD4+m@?(Cxe-`FY33v$xO1oz<DUdjmev zb4oXrHOA5D5;Xg~{9?iT`jo%Yj|Bu%;kDa(*Zk#r0vq=W=w(wEKDaMCwkQ@A9V0PY zzpPHLjT-iWI^L1<-+wMl`TLo)SebJJK2DVb>o@g!C6Wu8A5PUH2~JVN31ku8XX|S( zi-_M?quz1*Kc1DgZW-3`-bR9V*Ub6m3*Qq3jY#lZKIrckJ_Jm^T`xIr{mfn}0@+SJ zdcy^9ta;zxhuT|kyf-2O9zR|*QsMoR1=e0JC$>$IwfxpBCdK1VOrHf?ZP`4}{}>fv zBki63Hg8h!zDm$r#BVMwJwIF<dJp+btV_()Q7+WQ*6q4?0VKCnN+5F-Lv<J=ebFvL z?(d_L+@0h|lZn44Nlbzkd<ZkC2F<i#HCdq{n^@dP#pxsa)O~eqSDEng_1^c@_!8w* zq*x^gQom3ETE%Rfq{W-wv4h}dXwccw#Tc(oJUPH|q8gEEQi6yoAWm?Yz=7O(x2s0P z?^;CSo;Jo)dt<4)#rCu*Z%Y2L$e?&7HL7mgEdcS?pXl@Rs@~gI^3U@Q9Tt3TsqP7T zh(`37N5QtK?d%s4{6n4uRYY#tb|@S4!%w6cM?Ph5PN=K-&i1SV>7(@#Nx|#i7r=i? zFZkIT?>7D+f~MIqC3MuB6R$U9LWM?}a2=0Bju#X!l^7w*&VQStVHxw0mJxEchvy#2 zu3|6$s@GPGJpLsy1-=_L-(JRiL9WEsWa%g4HO6L8)5{2PL%Al=)dy2Qrl&r<g_Sj| zN^GhSB|tdU&5w4rAM=+G{A=PeX+EgdQ^AQEl%Huy3Ga#p+{7Y-hd~VjWjtXbMnd2& zpJ>1oz_P&jz+E9O1L4P^`L;UTvJ}}qO()+#tu>x%xkAv5W2~;QGiPW)RSpHR!yatN z_p#ji1g+Rm2~)hH28stVO4&%#jT&JrTnV>y^G2EMAu&(&2t^e4|3?WRZ{fd602Vpb zKL+aW1rb1bzdw^3_Oz0CcK=+z?`DyD@A|h*iY24=;(r4FJX7K*<xfSfbX=hasC2r` zoN~WSl@(pL5N2rYos?$rx>Tp-IsItyYT!y?Q=fMvS)E#WKNX75DnbEraR9jz-KtXF zP}o?u^l-VzodoAT!_Werd0B3)!MGe6o(}V>A137R9+3Wms4qK~c(0~48zLuMkC30z zA!pHF4WKDcf!!B@%sHnh_s{Ec{({!`pGdpykYA#fmZrcZ?6-uxgMFYDOnV(3J?t%f z`1%V-wY9!N8_N<p1FJ@azMG%Mw{Eo+>4fB_PI(r{0VThLWv$sXsk2Dun=}0iNT&YT zZ)GrQ87HVcPKPx*J@(BK%@$xakGGl%*qfH3-I18rM<We`hO~2{2kiAdCt2_DxuusB zmKnSAx#39G`nnb(f+d+94X|&K&mp_gTuy>I0z@UlA7qvj_E|%=Ex+K6WTaGUTcI!_ z`K}pOX)_{f(qV_*3CCrZ<P4~Xtl<!Y%j6~si<O@&Y6v;p%$Lf+e4DXt@yH;+)(yb` zK_vAP>Xq?<)mGqLrh42B*kH`H*GUWr`_yYaEtW}^Iha_=;cCpj--zN>Q*eKFAA_#> zt~gbT`t!fS9Ag;HreL$T`_Ia+)IVcsaJ;5{wVEocV_IlDxw_~TBpxe$X;*MLN7eCs zzIwhN**$gMSRZw24pc~$Ej)U#UE00)xs$RcI{qo(^l(1fqy|l()qMm0o#SWCGr6o~ z5~IdIDW0$@PovojhQ~5FfQ2<|r>w=)4l<0l80B7S8IQ3>@(23K_?cJuXiI8+Q-(3j zXq?k8@~Dc*Ib9Di>cy#{?K@X;k8X$K1}O%OEQG&TdDu(@&Yd6EXOELlZ@ax;ReY{* zrn~->x)lAv@Vs|s|BSq%n~+bA5cQ2boYy=aarD~)o_P-in&)mOK|8NzrF4(uN5ei? z){S5Os|<1Q>Kz~iRfE&If>!yY#K3$AT<?nJYrQ#+$#G<*Q5J2Fu8Y>iK-@08vaC%S zEre#~Lc1wWTII`_%kIt1!5~hj2X99w(diEH#X9jur#R8Fw%WtZa+!^6FlUQ?Rjvk- zRdjTvi)!Wjj7XF+&?6$aS)(zm<G3*hNrU55_!0Z+)Y8Xm1bT+h*!Pmzz%fN{J7zdS z+xJp0<uYW?|7W700sm*LCwRZb6M3sQcr@K^m?M<wPMZ;EqXXxU{?5vZjVKs9@6Dqd z6ihF|H`lkzGos!f-338{44+3gY`<v%J%)X(k`cTQO_Dx394;+0hl%fOjBQFkD>v8i z_y^1X*lOAbBPUK%O+y&C3@k5v6tNIzKPK{ibbURyxBJLGMRp_PJyf4!Ux*?UX(#L@ zdyXzYxgU=vHNllGa^YG*t>#F}VPU6u>_};k<9I@z;oA|qH5)D+>QLdSW*o+pGpiIa z)zaY24n?iS(krm$MY~viVDhk5JzslP??|_)grF4<=U*B1GGK`MQ#&8Mp6?$(?>b%H zn{d8eIQdiUZu0qccl-Pd#Uo8>(-b{p(;gn7mNaJ-iW+Aq%>`)<md!a;NjJd}2j$uc zM>n=qG^RG~P>BnJe8|M#A#p^kk}fDLDq)tgCsdK8h>5H7qIQRRr&Mr5Q2uS}LFJy8 zM#Z~LaLK3M#s1RPK~z2f&RBiJ2+4xaqj2B@+72jx=zU2BbCH|%G{F+Tftiw(GA+_{ zA5Y78zeGgym`-y4AsSvBgiJ%G7Q5<?GfUCEfo+1NuZ`p%hDBsnQ>%G;!0w1j)s?fY zbV~PWR#972{QAuQfy|Y;a1YCaIed4^x@TM^_A|pyL<+Okv^7HNgH>cL<0Wwo_O4b_ z3l3kD7E{Zg*^9M}jI|bPcrUu|-p5w$*-nM}iqYlb){+I#9me-yQb%C4gv%+@TMyE; zmk=Vqe+Yd46-~DNqZn3#YOw1%AQ9OHA-Be<aF|w5m`+e9o)F=VwcyUHC9+b8qySQb zWHqgE1R~9?5iQ=$tIw|3$n5s|tiZ0*?Z$(z#q+0|eXd>yQ1oH$Z9u-z(S9f2hA}Kl z##Zv`3M=XLu|*S(@Hj~{Ga^gG)!at^cGiy6{rGZb{fM_5?f(2LWjWf&m5rgcH_D3R zU|F1BF92rc2yLUm#u`O3IWtZ&zA{!Y=|HR3c;I>VB&{&aeGxy>9UxNs-`QSCuESWI zN^r%w3!RVIOr4s{p5k%<I)0%+YGD*X0*MHu!Y~0og*Uv+RcF`p<#~}y!U@qiZeQIM z{QjptInGV~p=Wd*Yd^6ae|bx%tjJ1|`dMsVg%X%Pa9piWePR@Xn5fd0uN;mMcTJn3 z$q_oh68~-EO%6>C-C+-phux=;c50O$*H8TedY>QcE;|LiJ^5XI&V<`k`>&Ki@8?&) zVlvm)_#P&&<n!ZI$3-0{y05vUzmh`%2)&j)n&r#wSZmSjthz9vnC42`KsGh2gqf+T z2d^JHF|}5jW6*c~cQ))~Xk^xO*b&tmw)TC}3_Ep)^^@;1c?8b>htS$5Z_IM8jV{)2 zc4xb{myef1_^(rjNriB%<jZ<R%*Z`Lah;s=PWAfBQ~pO{FDFKdIUkwP12T7X2y;W3 zPp2mrrQp2jeC?}Wmpq*6TrTf+HwO;C4Q*zHQyvW~vCD?CNN=!2+%wsfWiw~LIC2O) zyLevi`gN!_uhKZKt_r1a<clMlPE29806(ea)0_({fd({+lV;UYiFao`VS+A$!XGWl zfi#L)z(pUgYwxviV2%A2=(gEx$1Z!IcZ2+SXQ0-_P9i+a09u^%(@=$u5{|#iZbV)? z_lYVdm#d_y)mQF^6EYVtS?>u3k?yZG1{YFK(!3HIRhj>bu6GWOJovYUW82(tV@|x` z#<p$S+SuCIb~ecd6K}Gyxv_2AcqhO6;NGX|{ijnknVOpUcAwMdgFgM&<PKTpjmGUs z$=EhkRiN4})|44$K-QW&^shXD`$joeV|3i}Y(tkI#w$fDn?o6>KE0jLU-ZNA(!%lf znEw5FXXhyL<zSES;nno{Oxz#n>i0zDJf0l2KEmlsFw)p1l}KV3^S3%HI-4@BqoTdG z`BYwaGfSEO;744w)AO(O=z8^~Sq^4tSe|)D$h3aIYiTu(G2V(zW5AhW#+hQH-%sl9 zi<v*e<8n-YWJ^bo1Jg)lnuSxHx$oG`3xaYZwJd3j-ci!65JWcoxq0~c`6LH->3Yqq z(W3E3JP)SmAMWN@>vLZpz5QJqgsAohrnCRdxJX51OGtIu-WT()xgi^qTI_mp5@*6( z!%(Ct_Yxuz{lwrS{p(Fy38?8IVp}~lp(d2Z!lOGKfBKSv$r|XX4M-DSANnejX6Ax- zsZD$HT0+dpKGi7-t&!?63FYPCcgOhzSBv6h@jZU*v|MZydD6{UO|+~o6D=ZfI4$vx z3g3Z6x^r9!kbc;t$1PhrAoO;NpsZqt8xcm6;U+e$`I*NcKcD+}eZAVfj=Vaa$?|{y z@o{uAV{_tb>({#x6F!a<t}*n2jGVMo3-;js6{>IeveQmAdkp9k|H7E`a)Sdgbn@$0 z3YexwiUf}0i;dC?N6nXxZf8Nsd|MtdXu&2M+}9F*1yZIjSReIK8x04%p6&0q2YWK! z&zHyB{U;B%@TEg9w<l|7i|;q)TK$udMvAY?(@~xKWIw7;;Hw!Z+R7d!AoJ2!YV)W5 z=0E!TdVjd&MCIMOS;*`xA}~|$hHl?o89eNaUhNtY`B}g5@+Qmo>~~~l>%o~YoS-e# zk$dsw<f6K$Hr2+<JBD6tFGW?C^r{N(*G*5$?63YT!(YQQh|tLrw?zA^V!lkO&rh9A zTiUIP&MDgThQpjoK}@+GXT<Yk<%qCp+#HPVe1yx6S<A3|lN$p4C$^TgnvQf;boNuP zep8ldT4O6O>MLUV(6-VtO;m~9E{AY(FN**9#dtLp1bXZVfCwP`VLYavm@<E^h#VGq z1LuU)Kaw!Yki<&Ozzph}ml*M;@gg`b@Q22qg~V^51socWec9@-eFH=cYP*f(+Xe?9 zLEu9H;7rk)A&2sRkC5(7b+#jY<F?X<!4E?QSl;K-o1*!DxRfqyBIKNREaA6^%&RXc znATI$6-2zQtd!iMT~MkNeW7bezCNad6Ge+4)rYFnXKfwF6xvEkWr$4NhNYBigOtpS zlgezApz9R)Mo^=)k}kgCC~Zx6X_wW}hA1Gd<1DRsX{Vz=iKzaFAwq*_gLkYLTx0s% zB5TGY+nawSh&~y`41ALF(w3gyBvC1lob4uFbg~J^tP#$&6Dbqt?^}{bl_wxb6x*4P zyK#F1l#>RXI|DM}D_J|+WF_UQB+&cVlge}yc}1@+V<8l}*xN-Qy>2NQaEwpEv^3&B zklyQ1-Pe^^{EfgltBzaMBQ6$UkP-1FIf24t;Fp*=rr>+=pC~H6E^3IV9tv!3{Y8Rq ztkSc72hn4&@RDjbpDCLnhaoN^!(We5M6j`w=6Vdf{KYl^Wd&>zz+mDh`BGD3d2#l1 z_8wlwT;_o~=%X++{PN~;;BX#m^%o!QkKdjqxLins!sMFHht>YL-?ND){_z8eEyf6^ z%f;y3tUyxJTWa%<C9i9z;|qm>b;5`H>$l*G4Ze*uk7fUxcW9e=L{6C4NqN4D_potO z|2X@iD~B`$t(WIFzwW9E_sLm7yn(o3Q1{SJyLK8I>&US54&e6vkRz+x3|;fkt2R~X zvB;H;x)}B{3ycD=Flfl0<-d}v-(<{9i?)U)5T}eh`t0<>8GC<g`Zj$wBG}B6c2{|s z@O`w%0|!Dl$Y<9U^Ci#wB4DVG4~oC38^PJq0oX)R7u<fM1*!(-TqQM(_57SZo`OJ6 zjs<eoR5~MP8lHuDBNMnoL;f`t`m(NzS*haXd0>G$G{#f!<mMK`?5|CIZh3hD%<}(j z(COpk@E7>7@m?pePpE;rW0nZJifZH*v9A$c?r{8T^|V5T+0E7pZj?aTqQ&~U4(4z7 zVi4Pt#*P?3x~f;RyH=Em8{Xj`Mr#tGKa$LD(2CP*Lvfk9Z=|lyqz?H5X#3P`6}3;) zv}zLlt+#~H%Iq)r#NG0I{c^L1xl{eVb$PQF9gey1;pwL2oC5R)RmPIEM-*Q+RXat0 zn+f<oJ#TdUoZQHbd0^^nXWXmnFpSjg7izly>TE~yzl$O^%2=lv3ZI)~MBY3?RM4VV zl<~*i@QWKg!VU4$>njgn;37Bfq6YTmaq!Q>;DbX#_`Q&lDK@nC{j^{^Put?3&Wv2G zgJv~41ab}Iv#1_)f$}yDX4HiW8X8~4@p<<^lZVxQ6YLN)AWm8^@mBQlx6X1-0<!t_ z$zP>*ye&f-YPPq;Me{Ykwy@EB)k152c}=_d{QbogrTg-Dxp#2T-SHykf09f5@#V|v zJD=y>aO;QDk5;P$o8dpCz8rV;{(@%iUA7BL%x{9{cPWmWV)qXIeAq}SfZVd7r+`~x zHr;KV=2$TUQ<r0kj)$m=Dww&^9~Nhl@wyz^zf25t<Tf~nEau=^Vg5Fq!`ses31nCO zORS3#V8d-niJge_77<-~!V0@uO_?VujM#;y(cwxCz0<~J*c7$Pj=UO{bM9VuC-W;l zro_DhmE)HG-f0KA)^JRWcV~ou)kaF<y;)k=(13L1^zv@?sDC)Nyx2S$?*93Yezo6C zCu`KrC>arNr9n*RL=|IA+N~R^Jv0pO&q{63Om3}f_u=tcjT?eLluZ+r#5hqMau8N9 z;=m8-=h;(2_lYUv@^1`{SiOj*e>9`dn;CX#_~vlK4wkQ7RKpJJe_vDg6~NTX>A&no z`4?Sq%U5r29A*s#isHr}3hQ)&3&EePxX6M1|8_r(h8bUpbM3Y+7V_b`DM+OdGTA7K z=#4vnhoM+mZezgJbR7Bi=Gri!fL{uo2S~meh%3Zph9%uaM+KQplp&q}<GQBp6^6-E zr{x+Aom;r`2I}^Ksu&2L|Bd;^h%YO-ZzPp_<KVC9;ZbI=_QL!jkoVW?<t}eQ)c@xA zd30~u>d(q6ZSNhQ`;Ny<+g~%v1C1Y}`6V$y$S<i%mC1+e%}6t(i=~yN0gC|+_^J7? z8~Bq+s6T9!-Z_0oCFAI3)ou)ff7N7CY0+Xp3YY}!*J$79Bp;((_~leSS#9*GS7!>g zK(sJ-YeY9$zA4N&41T<J2V3lp9#E&{`71aK{rq>d*DKfttKF$w?Leqgd8dJcwubR? zZ`mi#`Adb^!{GGe-iO4qZiDyLzDDVkkh4$!U<^s74-wxvyuZz;1`7yQw}5R5)VKew z$Txu!s(->+|EO^2^=m`uhw<ETbFyv$=mwS{n~3&v{aucX3lTTZ>Z}9Q_uU~cr>oP& z{M@V4xAFDnj>-en(PfHPyjnjW(MLE&0!pc8k`JTbQiUivoI`Q;XPQ)mTX*CIGgrjp zjfVTX6vC+tV+T~fe!Hmu61Xmu=bx>6w33wt6jp}mu^Yy2>R%u_#1a+NOfHzkYJPhm z;U=zl&iy`{<FKA4%<#ZJLpI?ZOw)A~;UCjv$H23%bKQG7OARN?V0#lHYZW6(5h5>X zHz4T@jTnP|$*cX)47XBn(=WLG@p$$I1pk)n_ow68Dk=JC4_MRW;`vx=igD>`xTW{D zY0_68C*g*AI#<J|QkH)>zYuZe%zq7h{@A^-9n*<^=jytn;fX>dQg)k%2o(8+f@n00 zCcY;8q`;b#Aa4$R%!dee^y75VO&iRX9jIhQO$k>76JBiHQ(pZ<uRRZXYacZjTu~Uy zaY;}4iMj~rg%TEPa!vM&T-5nzvEEbOwvOs|wJoC{GxQ<hI_g$$M~tnR0Gp6~Vpeq4 zH*~@Z*8-wYhlJYIIvW_BBg<W%Zv@L!jiJ|@)ynXNm;5NaPbOQ!UO9Xzq_#otjP8|$ z4@~V-Gb=AwGnTUW0&m^xB=Z@0@)u#CX0yRn^bcmAVL_G24g_eV8LOQxdr;5hTIj-? z%@_l)(?zz_Qm^o0)siq5!1irDCprnJC^6abByhbaE)@m3hS2^xy6{PoiRihr=S((u z#dxVdU8<+nN3nv2pl0tzZ!r82W*(l**lF5opP#&+Oe*?IUb_$QL3`E2nMx(IeDm`- zRCUvDi*@*tZ9|HeH?`djw~NrA=w|EJyazwi7!^*ko22#I_vdBg>L%Nbn{%q>>(L** zFt?Tt_wEWmD#%I&d|1P;zVP`XIPl%n=Z34Rw3&NOPhWK|arpogHIJ5FXs=q#nf+%& z5holsb6Qa@#xNjFe@vua9Ui0lc(nU#g*k-)H7__x;ia3<CY{^)eL&@itd9>JUxq&y zoqsnreBQMG<mR4*g}<9=hGa@oCulCh^PX?;YO|=Fc?W|1lQW1OywHnjXxX@Uzbeya zu{b-<th~tlEJVzdfC>@43%V|8c_@vB4cX@e%gAg5LH<E`ob^jvwgJXv9<?Gg&J2u? zDhm@md49Kp?9UchA14x_GeA$9Tjs26_o57`tY?+?m_XJ)FB^mYYj+cG^riS8?-wTO z;CXf<ghY!dY40RWy|5yK`wu_dgN7fECq2x!kvsDM_#YdCJ!5#BSHtg>9l^mK(JP(= zl6!h<hU6C!<kkry_cc<)_x`dB&O$8T$bEJrw6PLIjN{*G`5dp{n~c88OQZ?@r<frF zI~mxhKD87KGjsu6h1@gjkfs<bhy7>kwjA1J#h$OuD(TQmwh-2l@S;S*0`-D6v#P<; z-26op=y4sL_uA7o^SfU9LjGQ`{qgeI(WwIh$<f2fV-Hb5+fESpT-V%lP{vjP8@$8F zy$(v;@UBOZj80OW@<DH<2JMgGas#8vh(!jtw=BmTV!3YIwWc~lZX}!eaR2rtrMkx3 zt{ud-i!uBVO!quz@{@uPgW25LCkm~49?EDvTMc$W*~1<?+#b<j$#Y*TK2}fVUnr~@ zY9HTxzYe#vNtJl*lwmFKF%$;%K4!v)de0NI1*2nM{p?OdjjZVtae6{iB2Nv^FNY#_ zc9?9x^uh@ir|pI}k2HWNJ?8GJ%izp_bOasx(~WU-&C#BAVhc$c>o_0RyZrD}x5e3b zwJ7=$9a(;>MCQc+%I=dO`cOg%b`aeE4q~q4pRe(TdMHa0u)hCC)98#}Kfrt57*;jz z^@JGMXq-diB^~GpQC!L`vL;z=4TqD#>NlWhMG&CX3O45K42D;OZO*_j4+D<4(<mg= zkAW3NAZldAoTQ}LgnLaHv%DeLs)5^k;ZuhQObjCS<5~S^09zCt_ua1(H)Q0#*sl8i z@$%Sh#tgv*sr8|#@67sCZ+e~LGaTZ*q~6yNbVR?UztsSQIag~J9;gz2N?NZ{?lxV~ zEs5&ptHepiogmP<yBJI-&n@!;Y8X{g?U$KW?Zc0$R+*-Z><ssE6PWe0jSI*zWTTNx z7Kf`U<);cU&Rp+RnDI2Xi2>pXyAfe$$1cF7D$8Y7qS#Alu^jga955V9SGP#M3d-z^ z>F;o3f=@7nuz|=8`G@f{AdVfd*A&95RJ!Vx!krXHWStcksS6*DbLqp&C&0t^4o2jH z5;t}|0ADG2SVoN8vc8sL{ZYJ4^3#Ag&sTt{w?O<{th4|Mu77aU6;YVcUMpWwsNlFr zkp>WGg^s|HD~k3D7l7p#ftn95SPY95MbbmDQRO;>;|mnV!v5HIg_0fzr_;@<giGL~ ztgW1km*i`i9}sQHlF5KW@a>X~nnGWqMuC6lD3`xF-GDU4j6PLykGr&#UMxqm7bFkg zVhyJpgxc4XW<i7+5;|4@$P6bU_S4YiK(as^Mu938vP!tJj;bu*4UyRL<6X4m0)+$E z8Mv_|dpVO}ydjFo?2t*3g$U}!8WX~-g5v{!-koEarf-yY;RZ0zPT<;ZBHA1vHf1u) zW{D%-Qx$~LDnjQY00H?3LfGt|LuwJic-bNNui9Z%vdA&I^a%@k9+3hx(qK(xUHPvG zTA^3aP-dZKXvrz(`s6gxlja);swp4qxTUIK6=2F7h!xq_1)A7Gbh9kQ+e&DI<)YG{ zYY)^*J0{!pi26;h(h!SknM(P&*mr`EBkT^}ko?#zUQm3TekB<RHgTt!n#E<NM8=}^ zvqK*j#0F{`>$PE)_s`j$?bZ&1F@Fbn!EB~*^$OeKZjRShLD%W=kUMi?nsPn(NmJE0 ztJ4sHr>=;ZqpGOE88$j`!y39}bz9$f{g#C=Ou-cX>XN6EJbpOP<!<YC?qWn+qIK@_ zGv;!NkQ;;A4)E|ae%8-yKD_^cEa{z_ce|RHn1(Cu&GfseADMH+0{HKd83<#7dub3z z4Fx|zC=sxSk&Ren_=B>}En{4+9@Bl=j4jJ0$tZm(dmv-nB1uoCePtx5cVs%#1zDG} znrDud9OY{tTvLji>4cuGJo(L|UEV+T=yE_hQ0tdh>VR4~KLav1rekSC`&!0ia|HT# zf!k6C4DN*0mCuFlQn-%^XGF}6&ILF)5NYOHC@qbwr6wl}W^Q(+Eafx^hRhYJ>jM8t z&v1Bd#sF+v6ZT+sl1f}k%l{&1!YK{9BESe0;q^Kym`7mJguZK4S+5WcsM7=tq$csa zwrZ^7stR}P)g-U@M$Ju*l!g$a#`l!%2HC2`rQ5QfU*D;IdYtA(YM~#%eYZ$aeRvk~ zJ0Rh};1F^VQI(Tz$3w28s+q)t3u27kNiecA`}@iv6peZvuY7>+xTj+Vm<;@j`G)`; z*w_B#M2e^(pkXwDF#z)-07mF3;4ONo3DP~x5n1-8i(T%A*H9}=`1kJ`HJdCgeXl5f zAzdE5^*E2{OclOj;lh6Pw5OsivJ1oYJ4^4@L1W<`43tA+7vd*xv#N8@8@<rs5Gw2D zrM6sobSNf<BiW^N2R@P#rFIGEoZ*^hJ~U%!Y#Y7kKrmQ}23hr%XJ1qc#9yQK%3hWP zx@bl9u4-Rf%OeoU$r4Wrr=gWRMYE9k{@sI3Zcn25ViSgE@A+cS7474+G8hvTVmB0z zk_(21F-7~G)^lf39JDgn1IVh!$`X7a#C!>c^&^VWcqn0(P)CN*S%-mOPAPYeyG;Cp zy{sz|(_-{?DMb`nh&o+}Gv0Po%utpvQw)p_%_@{E%$Frl=Z$i!l~1N&IDM-)+xlm+ z=5R8USOc<A{dk1BG~JsAtMfv6$Lb~_dl=fW?%&Qj&BeOC%ym*_Slo(kM!!1R<^CZu zafzmK^k`;{rlJ{CI-(5V0&^(d%c^sQAVeK?gd4hqZUDCw!EPvcLNX8{4B)h-x3fg! z+_dk7F+}bn$TUO7)9hW=g3JY3e2XJ{-Y7!G!;m5a0iVRe{yC&lAdeqJKum)b8@))1 zBz-|v*C2y@1b`V>rZa1H;m%LsGH@7Ju10q+Q#OFTBMM<p|2KjuM3BGH5)PoV1*k~^ z6mZ9A>Qk}{6opNUq}IwE=f-9b7iz+>X5x*%Jv!XQ&==d4TlY6^;J6b9fEcEsjSQPM zkEIPlvP2TELtRqM9l9Ce`n$#Q3+M=}l7QvAv(ev!rJxO9!=w>}Wzw5F5%hJZ)1Ykr zDwT{cv(!jLW^$w)+E-rq1`$FRfoQiQ`3Z~P=4V<}_Q+n@&?#-gUk+O7Q@{6^2V{NM zLd4)akQ`d#i(g~dw^E;kKOR(hO7sI$Tj`<)|7B0C8j8iPYtumRi%x}E2M2$VVx@sd zC&xPjK__W;H1|Xs$GNUgGE26Dfx$D^s`^kn-i0R(TwD2kSC}V_Hbos>bzfILcig;4 zaGCX1V-x;6-QK{JL96OW4~-^?n5`bl9-i9NR~MQa5T}S_4Dcj>athzdh;Z+SGUX?y zhyngDr$mi`I7N9E#3^+kPN^pYaS8`zY*SP*xEaJqa%wYg?-dR!xun|atsDe(qR&gw zu7#EStnW2xAtd!S=sbYS-{APaJ+7r@6;WqRWSEj_?P7<;Gr201+HouP3Z5j#zMdot z`;4+`V{2;zP*2}~8E<0gA>Zxb9@z3Yfz>2aIbc`@uUdRE)l3+Osle^PmTRjU3cfFP zF)J;8Uj(ZH*AxL(b%W2>y3cPm0MuALTnNJm0@%T<(o?{#z^3y*hgvMFLykOEI7!I( zurmr|WN&uTj>>p&U;F@O_EFq;6knq?UozVp^%A=Ma~qQ>h(~5HHObKcIxw}V&p|Ve zjy+Eevb={%1zJ)q8|VA4?OHHpYzL!X#(fg)O%Q6JuN|N|O_l{y5p!Qmr%zFAO{(Tp z+L0!sMnqZB>OMHSPqTk+xZ{HLxiI34K?`HJ3W6spWglK~+><Lm6S3U<jwdQ~Sm;gH zT9OYEPmN^}tO!C}Pc`LJ92(8yQ08<8DDk|haPnLY0g-=xGfTomO;A7%Mj_+5f^pK6 zl+S)`VmRGV6UQ|qp`>1i+JqgBY&1Sa3y*<d%*p1?L1G(@{G4XrB?1}wF%HMK;mFo# zHwqqBje>hp_AZ%#wCQVmYU*`Taj4<QtiMv5qRtNfpakJ~WTpbHD7quLy(!ahWJF}d z(N6}%3Z8^ZHN$~OUj+$~70M>XbsFmD?)5yUc(g0~A*!!kVxybn<VJbIEfHw&Y_v`Z zml2#<1XmD6*t0ZK98xlaAHN6U_63=QBniXfXCZfS5-6jDRn~M<DV=7_BoklLDaT7i z0x8F75?ckLZWr!q1x??MCO4c#i&?m5K?dZUOb|&!U*Hwt$;10dUyOLDxL3nQ3%{OE zyG$uJ;f}#!7SQ$dQ8n$uV`|hSvzX<v$CHzaZR@%H#2Wu!LLNEBb1M~$0-Irbf?^H8 zLS`uZ%f*f#^LgFZnA%XdKV7lhqPpOOH8M3iysF?pnYItZY0osDcLZ(h>oya#EVNUa zu2BJvpzxU)pC8Vko->Ku^VKS$T->;F_J{543~Ox;;$muCH&SO_&ZnJ*21;lOghsOf z7EW`l3k>t?6t@1;HvCpJiYXd8B6^+n8Use!&xk#<6(pGf0Ap8TI|Cw^83v3Er{ver z2`Zl!=(pBwyhT~WJTLHGWMjjfCqQICjvy7KQJqn9dm9}g)aY6e9qL<lC6(edl^s$9 z_DKp%-vj|y+@V>J1twj<H_U&db5-7&?O{W@-2qyxfaW1nRHZhsLC^*$dh{!%6;RKS zQ7#RAh@hQ0=`>_ujcND|YKzk=32b_gbyMjY$S&z1kVY18+e5lm5+>kGq;VU;4mtz< zMe^rpg=af$(RWG1A>6qzYubc0%1UWNJkc*KIoxgBkhX+4!Z5ufb=7m?wplmZY0^gN z8(sm65Os6MR88~BeeR{G#>TuekgRn%;~(I49DRME;FWTIy(fBl6vtM8+VSMM06Ru9 zH=})Tveum37Yz;g{2%^<`q9DBE0jKDFK!mptB<ZNl#PwoD!AtMR8%>#%nj+T+H0eF zLvsvYbAXrDY)HjaAszot{l;llGfz+2us!j@3r_Gbsp0;{y>mQ_bu=Imvzk?B2kZ1m zLI2SH4kNPHj^K#3X$d;2%$-U7r8koF4{ZiYz0Q+V0T!8>2eKa{UMss;aXVyxY-aWZ zi<LJMV^wPEtf<NwAL%SeCJ3)thb;Sk5ix}n-cy|lV}yl_9>WpO*Rt4(#1&oSXr8T- zUl#BDrET3LIRgO;iBdW@&>i1_d0*Saz#W}^_YJ^Vx5==uPbUFdhqV)C7Oj6)(#<SV zcFJ8b42in9r?1B~eN$t@={Bb(VmyTiGux%|k)88?fUqh@m^m3{0cl4gN;tbUk;>sX z4&LpxHKEkXb2&!TXQ<-O?HEBz7WMUdyTmncDZiV#kl;`l-veWrJXm{<-0R*&`OOq& zf0Ey#2gaqPf4|n_JZ|#U=%=3RSjbr3I%QD^Au#4_3PqTG0l?{+xI>O1cI`x=c!=8* z%bmcV9mi6~Usc9L?zvBHTs`>(R0^QW7TK<je6vBje*59LbaBdW+6mpEVF%94!rls_ zPLN5%LJ+L*Fjnr1<NGK9dq_H>p@1SXlNe8NpN8E6UCWP}P8%h;NwgV4J1iU3YifGx z8?S_DD}MER*@}&dSiYpa|LkbNVx9k1{H^+%4Fy%&KW~1{qMsMuRrBxtOD%()Yf<Nl z8P(+kVqMz0J90sdG!OF<!;|&%+qucqHVy7J=<|#8IO`@)&s}vA_lEH%+~RwXdSjp@ zALp6R5Eqfcn;k*q=oNOv#jrTFkT0r%CJXkAa_dBN{{!62xh-|X>2UIQQ-wAkc&wRk z8!&tH26Uwob4Fd!1tyE7YWhg-4YoRD%rIn`;YpC_jZ$SFi_u1$Yp}C0N<7(R9aW`K zXt}a0pcXiqiFQg|K+JZAja;f*(k4?jW-F$_w_$lv?Tj4BDsc~E_m<2?+|6nVZ|X_` z`iOOODb&6*usoy@ZM0@K2?`wJ$o@n;J8*DlhYWECjK?xQ0zOdR{C=LYchTLA!euJ$ zfZ)t6l=V9gJy+kYn6NiR_5rsEDkCCKQ}P#h0C5Q@pi>-8CDk^gbamypVge5h3k?va zmnd*2R4NCV&KMVfOlMfI49nG<cQQMqttoz4s1V}2b2g&O>n@tRytOk(nEn8@IynGv z<v2AE#Gl;dT?oIXMFkv+B+d*`w&m`!0c47%Zk2gx*juf~gfkE<zanBE|0Bc6oR1kb z5FHZWA*b@fsa25HVrG}?@fM#V(V1WeeyfKlrJV=?;{dn*bZf~(NLcV0dMA$A=t)(U zRPlaGqDnwe_8xwLVHn}S$`wE1x9pC!rV5Y&O9NxV4VIy;m|E^Gf%IA$4U}2YicceE zgh(4{KLul&A=f;?5-Lq)g*B{JsVFz&!=L|#?N#54+ZamSt6dh5#znvkit+6&pxei= zba9v|(3w|wJeO3r%$Cne6xfh+o%c&p1&~R*AEJ*QTt2MRrw+fSiR{@|s*Dyy-7UB5 zDfT0{TJWg;HgE5B+O{NOK<XO1600~y(W(#`pXz@MsO^MDNt{dgaeU|vaav8$b8jSA zR06|751*ad`xQE<1XdgQ!e~iN4l=#7n#F(5Oyfxkpi_Sjt@R`-7yTEk?{0oyLv6>V z3?4hE1{x71v<6z|tx-rC0nPw%`MI&H9=(zfkZ!2z$0#`xnUqArLi^zI7bm}a%Hs~* zm(g-yd?_BW(%I$yw}a{nSn@=2V3JFlj}wjEv0cdYHle{tzt%s!03pc0d26bv(!a7z z;i}l8OJ9_+(e@5yE#4x8%7E>so3a*A%lagN<{fgS6aNN|3tUzQXkFu&uv$44Fw2P+ z)88+6^Jq7>9;|B1*BS(G-29$L<*Jp8YWCt?JXLt?r~bWtm7faxr!SB-U&t#zr8~|| zZJ9)*$nP4!>BetV+gIo=X$bjjjc!Z)Z^^m()HggZn*CcLr6ha-X{*amdyXvZWE<$X zxuqvuNrw1EP{2;9o|w{Mb?>k@Mi#Kbb0a~ELhqVXd=xTHYqD2_?l3Fr9;Uw})v&Ir zqAo$N3<*|)hys1tHokeM)%)b;l$Qh6MNb`#6Qm(SG67wa%2bUUUB8!@<pI6Pf%pro z{W=tyIFLB9OASV!WP+LR5;hK@o00da=Itl=YW*mhV=%KdBDldiBd^CM1RM&QZY69` zxHr40-M}>(pQ0rn6e<=zYBwZwDrC1DHk8LaY<KUwdgo2!;+VykO0VBHcebRPEuKG- zC5xhg%K5xLb3{`)x-?E=?usXh&4pjG_GGHdg(Q3{fE@I@GC8(o-@VN-QYTX1IeW$a zO2rSfuATDRw5xWl_eYW(@=iT~9>*>J2C6orR_oI*3|NZ_hhnsxpJTdx^KACxK;DJj zEa<Smn~H{qI^$D>6aR=TQ8bHwQ;IyOn;teL79hHCdos9)H5O=7W!pd=teV0ts?$G9 zb~&{oHHq2vHSsX}(RyZqw((7f?zv-%maS_oD(%osZ$!A?#2C6JaToOkH5@(zND)z| zoGR+H-FsO)ccv4%%pol^E`mcr=yfX{FMo#D$Je&FSv)We_B&=!d3np;&-zV0x6V!} zL%${%dkgZ|a=F;Bl9(MAr1+|q%S!lW06BJiGqC%T)@txAA{Q+r@MjCtiMAXSh&*Ws zq3QtiG(cCxET8=^C*|rbNbBg`;Bv@KS1(Ojh2|-?&{%3bkdV^Q$pj!PtCIcUF~^Z1 z`w>|p;RNevno#XI;?Pl=0-BsHwO~|!T~WOm7b~N$jj|mLt!m(Ce>N4t>U5Be2`6}n zBM3DaYDgp8h=j#UdGK}v7R$2_x3|I2BT9<?O%b<3DH$-JerG7`nTMd{98C!511*~z zbE)4mrz4c=+SnS9Fo;N;&kk-dqX%!+$iXSNK};eBYQ!)t^o|<U0_Oxwb7q;Njti<N zqN^M^?~t}b3J>6{qN)%zVFHjf1J7MHQ^Q#2_5bFjjp#R;Kr6>{mx*2%AWh2Zuyr@B z%F*G7q87`X^O%+B{+xv{cZjASXEX4U74=>MrIN#kSWfp%2v!x9_Q+^R7oNx1UklvD z%;yVK1{s8)>UKy5sce*0m#R+Q2N`IO$uH|cLRiIWu>y%8`)?8y6U1+$Pk9IzA63I3 z{|~r5iYfb9Uv@XaJ?0|pHk-{n5SZRu=U#zZ3~jP8c=2M*XdkK~3PBQ(9=pipmG=U% zBYL|T(uYzKA<C0nKax_1Hfz&e<lp`XCC+v6jFJ+pl8Y8uC-8A5sS0MSJh@CJKm_P% z$LO`Yc=+z4`kWS;P+7j;QsKw0;RUi5@&$6Ib>V#*{?3B#u_c~wxmE7k7fGHvgHA=o z@=S$>7aV_a5j^T=aY6RNc-Uc$R^PR_Ptejaz^Pee7z@hn>lEqO(*F`iuf<vLOfqB~ z>9_+a+^WWw4c}wITAUU1CT@DJD~yT{(jatlyd;Rr+$He~{7NxP7;-%DBinXrxfuMa zX9~Qh3V(f;qNOXt0oiC=6!TZt$MdD(m)>la0fqN7LjWW3;LzI0{vc~q%2C_~vIY>~ z6w_TuhtmT`QpeQH;{K0(i&HeH-3hG&?-WL#yNf@#9>;SlIYK|iBI;E9&bMx$OKknD z!*$abWZq_~R1W=k3d+UOoT{rV?k5eBX$F*#hPt`2i+aWr0`XE_o>-&*hKGkql{iOe zg{1c{eG$@Q3l-8!5)N!j<W$y((3*9wro9_NC|0wHZz!bE5!4E6D0L<!uRgjZ8Dy9! zeQ8e@a~aTZ8s*#nW%w(jNzY=8++#~FP7AB@AF=z$TvdmCG8z!B0n5_rzy#;1C6SPW zz%GM??sD>fNRIIXTgdlT<*`Bmyf%@w;aDxC5q^WoSgi(R3qzI4B-ZHH@P<-!<UR&_ zE_W-NF=JcA={*yi8FZQ`Em?_d8go`+quuoWdyMoEW1LnP`<goBc^b_kD=!@r9Ii=q z&<_i9z^D>yZT>W;YQo8ybPP7E=vQWq4l^5%)nczr?j|(*$(76+?HU3jvN0#|X_4l~ zro{z$nYD$8_&m;?_#tZM$99b|Lcl#S=1<`M8+T?pjx9><_ZBO|StsRPYW0Iby$;mi z^}O!F$P+UyER&<*F`kr78l*}?c5a7nxn=&;qvAiIgsXzWK!|7|?O!d%@#epT#j5WD z8)`dgB?(UY)LsBrpGA&LiNCV{C^I}+&0vElrP(90d2TMGeOOD<#;%N|e<!xE@|368 z%L?-=bCqiCe8sL^IST&@a;+LfrLV^S8HPzo)K?7%))MYdhPg}&DFH@kNHav~oZF?; zY0+IaVI254HbZm~r#5!4NgH*JtNa>fSDRR)qffK2BX^6zO1&92#_7)<aGR=cu7>wO zU{VKR)bj86)NB5es6W`ajIawUMK;{{u%!Tdnb*2H*mxrhE8|yryD7d5tiT0pu{_wm ztkkVWc|x!1<7(!dZH0fJ#0x~j+;Ldb1i}>O(8GX;PAME<DwS&eCq{!B$SCDx`~r7d zQO&utJRipS1a6nJLsQbe!)4=-Y=GUx!Q@w?YBoVD1J`b?0fDmqhM6P7Su1Tev4Oww z2FKqbo$oSswKm~okgXfCtjxcfiD^C5W0EV%<!6FS-^xpsFG7Po+%XAzWDfpeu6qka z<|-yn%L>5DBp`X8ifViQA@B$XV*z<bfw@$Io8RzU%W75>lXex)OOo)UQir+__&zy? zID?t1%E#|w+tRIbOC}6re~;o5N*(2o`Ase}#!R(9U<yxr-Jp9S!CwziHA@hZV%{<Z zKA#qtQb7=5X!h+zq85;I2B}GlDIGip_tj3z*B#pyFw<}{7C)%xnZ&jmId_OsxobVY zp8sPg9@Y_a)BJ#K_lo64JXSy_^$zUNqKFIrR^<!wm(Ntz<UZSO2Gk*SnUl2n5HKuG z$}Z#vup7GP%04t6&()KhLG6djwrf-*76Jp<wc~QLvI*l$3Teu(a}DFOhl;9|`L-=8 zV0;8eVKHRG99Y31@@1jxjH9WW0NRF~(ZMFHeH@5QCZgZV1wUW7s`HsW(}^Cp7y{bW z;>;9D>qO^TsQ_49s{3nK-Ce51M#(5<@ZF}hcQLDj8sX;2HKXfUO;!q6O_&@QODPmh zL4*9~Fve%|@BCNe5C@B9v?1ew9PIoy#yoi*1PGJoAnxqe*46z?SdD5%hmV(qf!oxX znubQ-P|zb0ql(M>nT8gqj8da%U6F{Pi>gEU2$_nNqLI@l3J3P(<0RlkRDoFo6B4jl zrG)53)mb=LqN^e-KD125_*R%>sw@dBD#+`}LC-s;YLlsbI04(3qYYE58^lbHDCG13 z@(?+vzNY>AR|*kTmbX-aej`QQpSj5AB~N|)nfX9JX95d-V_OsU!cy8l9e5en-_NZR zot`9HGffjYXX=aF*};To3ZI2&s+n0ieJXuHHj2U^8%5zy8%0GwsmuES#j6x%SYd2p z7$KSf#cC$B5mUt>(@W*2T8kdiiEw^Q2q%Hlr9KkSy9@KuP*=1lFwLreYxlCOYLj7( zH#v`p?$C$Q+zx-xAo4u{_rWI*A>c2I?PPrz)r#1<l4|hN?g=m{x>Cl1yuy}$(pmLO z{SKu?QT&=e0@8Ek%JcTNicEuKp=mzzxjpw-+}ARH7)FeVv&DAo;YoKu##;b;4pUpc zABaK&+wrXR$gc1h1WV2m3=&Ju3P;8n%U^oGlA0XF^9RHj;diP=F=DH?K7UF2QG|He z8iN4Np&m!@l#-+qOyHvbI&E`V!Ha4r(G{n?w)jum5C5+a-R0;d^mKqh7;`*?)+u*( zIB{^p;)!k;^Rer3%A>g%2dO0e_jqo-7zg(bG*S7<x5`RW{=YxD0{=Z3`wk+>a;;j| zSNoKaxVy{0twaxB_N**Lx*zAXt$$5o?pVN`$tKiA0<V6md>lV_ZHmuZGcL4pOSRNK z4t<q%7Da)FUu9c*6CZs#OZuVL%<zkP6*GJyyRR?;!x*Y$vGza0FSi7CW$8-7)*(E7 zi}PI5wd<ZG=qtpM0>NwSL!=1g;3UW-xeDU9Wu1`KK1?P8I|s<(Ol~}>Z0j{~Ejh=m z-VAy_Q#nF?&EXLnc5fO#P3*OvQw)bVW}+n2ZN7ePR(cjm@&aTEdTY;dWXE@x3EzDi zDpg~q+<Ofh%;zzkpUu);=}KKvlpyiL_Kze&6RH$*VUM~axm+}9=9i&!XVfB~X&UOI z74lN3r8nckvGUI<A(uufD|@U(nbg8oHXgK@)ume!G)ccU)J2Lyj9#(lm@R@e#Inhz zGlJfuCqxHF?he&hl)A+Rb2NDaTAffw@BCkkCBM#)$|PQmmAR~S5w>oR%s2D81o!@Z zChZtL_^kOd%8y7l^RfqM|J?QsUAZlc8F-U3EZn5!I_fSE71}fLcl+zw5d7<!#$1Wj z({8(kBJ>l{iD&A(75xSwrtf+bfyv095XUk-jmb#GqQ=PI&E@D5Yga4YO&~X_({|ej zvm8}>EBZfahS~rUgnZp%qg}7jzHXF6u2?i&9#txXA_{iA=idVLj1kde%t0+fTHv0O zj?g+6{Jj?c><Gq%bSX)5VjqelS%W)-bt#h&mRg1ab7P~4meK!7mA!j8C6w<tC1l_* z6XANXc;Okyt!@ow0d>+iD1cG8P*PM9w=E)xhCiqO@~p}^_%#%3W}JH-I&#osGDfoU z6eg#f0r`=Fdf_Ccl`eT#21z4QlH-c7CZkYh53o%bR?gob6H<iqo?gyz-1J!MohSHG z*6PM=8wWgP{ObNpU!}UxF~b<({9^VbW8}taxmI`C8@M^ETS907lr`=<?iE<Dj;E1? z;-^kV_uMk-STxf*nMCx2(2Om8=}KS=?MeViF^U_lc%9w^G6a>;#;I8f`dX7}9`~_6 z1<9;zvqdL5SaSDl`41<oecLwBhlsKn+cu5C)<Q^U+pTbj8(rhBZ_>zC5abxO`;IT4 z;2|ib3mFD>xeFl7s7_BKiP~jYF#bPkEY_l+_Z!UnuvK=wQu?f0OrU~u5lioNHwzbn z%c0T+(Ko%Ao`%QE7?2_pHTqO!R#;SoejYu)>wU4zLGv%*1DgM*(-MjpqR=IM2o*If zs*V4?%V6#AFM+N?S-Sl1xwV@CmwQ8E=hU>Ao>|-~`6DLH9A)hv7=<jM<Pklx4`3G= zvSgl<l%WurTbS1DvF4-*nDG<)KGPu?DU2p5G_rb{In&tcWkknjg)C0ZMJzx@eP6ec zIv<Y%wz}*PPX_IB=O%xQ1EpnR>W;}+)b?b$8M3nM2J^kt3ey$jC=nb_JQy*A?zBDJ zn&e3u82zS|YS<on@UrWNHOB0=<DL{ROhxzR(3vR$3c9+)7aYBAK+WH2<J49)DC$B` z{uXE5nqk$`S-@7v`EQTrqHvRd1?_15YC5JUPkp?N7bk<+62Udx_hd$Iynw(_L&Nu( zA2uv3P)gRV?&;p9(6^Nw5q_~OW@(|RBAt;$l2Z<Vx54kpz#{?X2#m>qnmGXOUpi8U zQo99w(P5Bo2&U<`b`4)}=CG+TpoUU{uz;Reej=5YftO@kZ7_?g>k=gFklM_<w!8#6 zy=MAz=7~;_b_w#tssJKDMxTO?zVyry06G%S*6+!sQnX)-lfEbWPKnJ#zy#4W6aH!7 zh?piVV6<c+79EZiDi|f^+7@N<0LcberKYqlRUFY_j{l426#~&#uO@ORB~IV}6Bji! z(v+?~opxvf8zV^fJX=Yne>9LrOlzTu9?>EXYVll=MF2YCf@mzDH~D+9Z95*2YL+s^ z+0aDcB`tRNtrXMomU`%+lmHd+$c3&Uq|(fk-(F`0nIjTi`62)_+o8cU59b$D>nRs; zxKIjo_w)yUd)C(X2jxGbCT0{3pmMZ20VvW>$?PUi>>~{?!7bPI40C@u7b>P?QF;IS zr(aehCOO$0wZOAm7dQYWRcP7<4M|x-hzm*KVguv%9i)1v|BM$ukg)3MLl)ys?_pDR zq>kDakd4Pi$BeAKwn$DI4`%Wd<8G6aF##4KhwMwyhU}GT;`QDse%K5#^@&-xs;7bG zHM5dK%B3hqdmg~fl>&)AE?4%!&E(9vcF-@Dh~Hbncr#KNvT|+rXQD;&yeEqYmsY(< zgn_eK%SVrcj0vNhPH}ExQ0yA)Ry<ZlXa5A@75Fa;>Yer{%%}0)Q&~DL%A<wOlLg8x z5kc-=-05on*Is9bWJ27?ii-rYb5mVP!ASO4OHwB1KXo!XJLD!h@eG|UrvICx`^8E@ z7{&d>sFp6}|4@RuyPp`v{cjkZo-a%nvv`{?gxBhm84#0>7C~@INZg|C6O(pIT56G` z!%s!S&A|DtyITd;ZqX7{{gAs=qB~;=vrYb=_%{}R?^|hQpBT!WtuEyp&?(`2HYG0Z zaOo#QyASS=voY#}o=m5Z?Cv|=Rs5=*ogd#P7e8)-xELF?)t88}Pf+;P1k{(>fNksA z|2X*8Q}^=)xu1Vo+FXa_+{s^mtf*dm^8&c3NZO(!=a@BV8%_q)`yRwwTUB8H(|L!u z*O>|q^e01{wA3t)biIx-9&MXg=awa4F_o;TJ>CYnF4R+kabe_hkF{!qp=FG#H(VN3 zTn1%Uk~wqUcRUA|T=Q@*EGHMMW&jR<=sayd;dn6wg5wVHCmb6;;fP4p#|t3_9ku-A zDIqZ|!j|4(CQ$W1;F#+F*HU1E@NzO`o0vbxTXt!0fH!P!aXi+8XfyC++kSxe+C>Hg z#cksMKyjV52|8zQhZq#@UdPFR!rk@HaMyG2Gu+)K{vYA)4)JHW>pA%Ugu8LUteVkB zN{pJYiOXmg=>||&aX?UlVhf>Z%_r=TQJ4+w0#4H6hTrN^ez9i01%)!}`Jj&%=CN$% zD(-XRym%bDW4ds-hj_V3>m)sAwb)3sXE?I6_j@hU%s_eCEe6fdM?^%obe>W)jExAD zVSKF%sMf^bTk8IDE96UAtNIB!WsR7hsuMIzdQoHFPomS<y+jIJ+l#OF`&))vIiNlY zKqQL3ZcV=G3&V#9*u<vnv7K;V{BYi(E^>B|e=W9B@!2Jh$g@Rs4S5{K;YT9vGJ~uA zCk}yhm8AU}yY!1z;IlQdvH|^ArdW(wxdUihJkFB;ka{%*tR3_zWIo5-5is7YR|Z{} zFS~<Iq^yQ=@%Sl&$|RbM8o>KDSK(JmMfLnDy`OpPUid$X21*%kBB9@x4&@*|k|lyc z^`Gfi;M1#9m!L*eo-5MeLl_O0AArFl=k<=9-^Eg8y8lrsNIS%m)bGEbMs1>l#z-QV z5hs+;toLoZ??h}u9FNwoz8|Wz{!!|8;EIiHFbBfCrS|&t<1lgqHkn`jRu+_v(s?xq z*=E)KY2y|vb#R}v2E9#<{Nwv;@gGt@Wo-xLh`i(xGCu%g(Bts`5ke+SaN|O+AQ?3N zP)tT<&Y}^KXR1s_D0qZ$l_Wyu=giIJhvCNO_eq>P)TpoBQ=M%tF2Yo(RH!?Zk-Vor z+IjxCh5H$DJjm-^Bo3!rG4r<+)5~~QW|4@{s+WrR@mP&Z_bbBSp(Sh{2=w=9;?YJ9 zqnDiOzSvfNUu<QJJ`R~C4Z;YwkuEf}lWNlYX-o$a&|u=Or23U>@BC;o@VY6T7xqqb z*e0||!<2vADxNH3uaaN6)~2tLhu@;elJ~6P1;jv{E8RYq-15ZW1La(gTh!Nww@AT0 z7F!WBdeEopP0`o4DM=TeE*(*keFm<|tpcaYO^a2|Vo!k`mM+b>K%fGGZBQeO6bn4& zJ!U%;{Qj<xWKipoU|dDE+=CZuisgX+c&gW}TDLD7h;P%SKlxS##J9Yssg+tjYkXv- z7?$)?^Am%r*Av)W)~?F{L9NZa*mcTF1uu5b&!z^!tVvo4!;}OyV><rH{I-+*8Y%qb z6>)pn5?+Gkzcn6!(rIh-!oc*AvjHZ%*a}J|CRdwK4q6Ke#dfMa+rCI+x*2rwxC-0P z$h$PrX7iq4#V|IABQv#`qtyAvRxF~z_K~VvJK5*tGX%A%dqU#tgRx=dw|0{KO2Ew% zW}?hwh6jqwWMW!lkR|?06<2>XrUTl;Y;yJD;@oCAQGP^@yqbTRU|yt9J%x^A%K)5P zEw<{*%J5D=DHtRCB%{+^@|QYh)Vb&s)rJ~Wt~*Dl@umIvy4MAbB1=qRb>?hXFVZHG zifV?8ML;q_Km!m+=1??5mz2TQK$@0SqoLO)kwkpS3M#IX*KK6R-1tu|Vs{ivE-?~U z#hp~LQ1fE&d@W~kEXn9X03n0+Y${owf3SeI)o}aYZoaxVJN%s_f2R3ax@wnwnM|r8 z_$+Z+Rf9R-SNTInG~rQOi%0?$0!KrPROM(QjNt8f1d=eL8a(1D*%sT;wK{;f9Q3(n zAt{(Y1L>xb7U63h7R)*yZDso4NUOP7$z7FKu|Q&wn?RqD(yO&DF{2J7<40*Xn@x8? z*K%`4W2d!%KUt{l!=C0JuJo)<G%pO9$$Iz6iBSW~7;&st5gj=0(AQ91r5~<o-x}-O z@714v<pf-rkC2LUtaU)`?4@W&<JDY_q(v*Kx#9`62Y5CvqcO+gh~?9h>Qf;BA{Kyv zC4}He!3lNltiwG^H5<^?bp$`YYE@RkIkYrN_heb^v5Oe_me5Gvaei-8@NaGIE+^i# z@b<<m6Za+{Oz%*fqvApI>4-imwgBd8ran7+B;yVctm*d1R?LW-(}5PNQI+m^3swlX zVSXRNtEHAzm#ow#YjoU@fRp5<LvrzD1i}%FNZUxAvU@vzF)}5r>d$uPND(>b5ER)J z%2N9#z5+w_CUx}H%p7m<QV3b(QEf04Gr6Td*h9zLv?AQyw%at3TEHCBd)<&TTC+W3 zR_+>e0Z%J&tze*KhfcMS9eXQ8fG#LyHsn^BU~@AJ2Hu(~_WK@U*Luvu;hyqg53Q8| zQaQIFNP{h2owRyIO52XKdTAq|VWb(MxDm~&QG=|yNk}`kij6Vr0+MNH|G{gtTXPM% zs%cX=3%sghvt~^)W0`+O((@$gL+KklsYffyl*%9A?d(KJ*&*rEC?AVb7q1*Fajn1I z{S3Pn{}kKoJC?uD_rRdAhmI61Rib~uep}rdeEVxGmjpyBD6W3q`IaoGfL2gNCS3=a zC2MkD!f5;?5ljUl9->RN#=Hlgd*l@f=<J`tQDdZsNtz)9XihTyCIkR>f)6J<U`y^p zB;r@com2?}s%^Ew6mTU=jc(|5VKF;S*)qxH{zOYAIqbQHCNWIwF2AwyKZ!%i77!3a zq+5+UgHv(aLi~bKZ6zyrmU~ZqE%Tn(aQ>1AB{9+-94In!0D-dPo2$7QzbOg-$f^SO zh<<5uaz!x*E@<u#`AV}vw>e1um~b4+t2{lSJlNud$gK=B;)*RXa_gKmNj78c8Y>dU zL4PEP{|5R*OW6D*A?o1z)M+Ur(Mg<z3(4V~;p@2MZsK5yuV7=w2g}|8Pi@e{T;PVO zkm=XLYCXalh+w7dXzI|2dVv&sQI|+{xYeAA6_WDEx+?U~mPpnzu)oJRk|bPi4$gf6 zsV%g8sG9F|j}C4Vwha+%h&xl)#a>qdFst}2Ky@w;PIWEh(Gll^z^<I$xw@#Du)Qi& zA;cU7^M6;_^JRBnRw9nU*fsRkiH*-anyV=;iw(yFth30)deKsiWJ%Vo-%a)>lBcL< zi+M-QoH%yUMiWy9rz=EQ>xR*J*yZ*hw6p$NrW%r}b?qHQ!R6ly9f7)#6rWoMwpSmt zo{*ds-)!gAx2AmeCJKB63hlQ5+C65C5OZMZotugQPddmqgbF9puEd4{Wr5B{0>nqD zMt?Z}pqi<N)Mh_-&;Aa1a%I1cI9T+|*OwYa8|vW;$*X<t-AU@*K?OTKaC|`O=*X;% z;>&?inV)mLe4FpQUOUpQeg9v+WdL7?U47GK=>VT{8^;>WB8XMUma;kMheb-9<<)Yy zRYC>wrUgVTEWs*Rq$rXB$d*CWl>(ItYzlsgSW^#-;_y3r(hgty-sT2~%8Ee<cSyEJ z4AgSBf4J}O+Cm0Ft)yT`$_t4{GGT7JF%{ER0XAR@lB4wd1a9A9#|HncmTN%?!P>J4 z!3Ll>AAGj-AQKZP^utXRV7cNQ{tZs~5>hD~j$z{t>7p6O!!ASUxL^tC2(yU<>MCnz zu!s=9CeH>3H;*9H4#d|6!@D$xgb_jvz<C6Gj$n*c-b_M>u@)MT4T>;~ArP}wgL&Xn zJ>IMM1bc|)3y;DDoX|sH@dfTfhD`AI+pHb&Y>+}>Ed?$=@H45A_sx@F?gHp?pdBGM z!y1SjgEg7EkOK(&Kz(!eo->|IlwHUr{P>cLE#D(*=@Y@ESmH^+F*Gz8M&sm4P8m|Z z3eiQdlg`L%!esnxa2G%w@>Qj}LGPsWnc-%20HaH}gCivu>Z2knR1;W3ubGV!5>**- znne;FQ*OK4<r?Aqyu4_9(qWc2o9gIZO+-}D9OjQ#w*&X1omRQk-U0uJK8rkNU$HLY z43t#k(qf2&vfQ_%%ZM7#jWKRTi0G!sg$Nj5D()abAyeF!)JB0B^sLKzLL531&L?>P zG@ZYOOtX_m@?f_!`}PC~E{w=R{wD!`H&5}k$U=EZlJTfk6i;vayCUR_!hZ4pA6wrX zUH8-N9ox2Z8r!xS8;xx{jT_s>Ng7*?+Ss<;*iIU~r_b-+_1yd1_n*mHS?4?0dp=vU zXErMQk>RH!(iZXL9FAPnk)uvj@}=48@$mi)L&R;Q-{NxdV1Me3?~1sX#r%Kb2BNH6 z1fqZu<7n=qe_X0g7e4#RfDw=Sptpm1WzQ6EZ0flnum_t2%PDl8G^$NP9nlvgon177 z>G=Ab(8|AN)D30@J`G_A^S3SdrZEL=^|y;aoKfI6pI3Y`k$Tl-Fz~36074uzSn#NG z9}=_zZGcE3?xe!4IGi$+8x3)T_0hBrwMczN^z1s=04K0d3IdCL;){OZuG2G^<V74G zS^>?Xg)1c1K$hDlk;F<JL^Mt)8VG6JDMX^L$q-oKy<4Y9%1{Mc99Rds1cC1@;BR{e z>?jb^%;0y%K_O1*i#so|I@^IQa8ErDuz~M<q3>3Gh(va=OJw%P5U}g#&4FXx5U`Du zfxdQlk6<4?zu~%(k+-O}VcKs0Rb~d1^DXXzwjFjy^LJ0#^doZ#Z$UVKt+Uu_bR&P> zgMmE{)vq*O59Es{Yz=dubl7%41#Lr^ZshYmWH={rUk2}PWW8`u`djF4v~J{M70F&~ zRx`0x`Socl09AIr4ZkP>8778E7z{ZieC+2YIRI6s51^Pa5XoBn2LmRCrzPPyF6ajZ z(7%vCG=>&Itjt547Q4+%0Aoy%M1*1^Zzkmu0Tlo4LLTdc%uHCl7a+q_jg*&ZS)uTU z1O19vF5HfQk3(xDR6=tqv`NZsSq4xn&#sjYe{AwBFSAbUPKKGJojoxTO0`(bpP2y4 z=K@m^2T*Mv?Rp0lIjRDR5qB=#EyN)HCyA2}*vUn$Oz;axtB>_zr@5i-z$Syum(4Pl z`z`cg?s3Sw5JE6}oY9U9_hushG{l9>)EUt5&8)gi^)!8V?ZYIzCzZdfg?6%Nev-JN zfcn#u9)wH&SG0f@S0KLkoIq1-$drj{%`zO068BC2jJ7ajhu6*`OkGByR4gl|t7G#q zdn6>Fk`E}fYUG~G#bBithzv$(6N1b!+G?vuUo2+Q_l(5V-{%QNxVz(Hj6>CUni1r< z*QS%uDryv)64doGwiIbs8zeKxK!T*nPmK)nQWrTPXbmX=oUE_6LSXkpAAyY{4;r3K z{8(9%TNrWHC81CPqL@lfg$D|V)z&M9t{ritO;<%B=d2rSCZhdCJIzPVH2Xj><$E7i z$RVp>_z)V7n48J|Ok}a-l~c)Zcn!#?8?%R*M=LW<o=>R4C^%Y0EF;gt&2E*l$rx~f zU`6tAYBr8s85F$rP$5dgn@Eu50J>mlC&?%Amd`ab$5X6AXe{=!2$u6%ckfi4@A8P3 z7;zOs<VLdpwq1l6UN_4rG@7l#v*eM66)7NBzN)K24hloKWjch`<nlq$!M(e!!gk?< z0=sXz&JJq;oBx4d#+~<q8t9`_E4Wm)Zi@<pYUY%J=Q{Wit{1vl5r+W<1q)Xr3l*;A zv~EiIhhpew8+fqZURyXW3>?>Kd-$5D1|1w4)RtfYjx+w#1-K2^eBDV~3khcqS6*ra z2C=fZkGhZzOIVuFU1~}YwzoK~ofEnd8h7xJfv$SKE8d7Zir$DR^Y1tAbjyi9<Zqzc zfP(_K_1^{W`A#XM^!m$h44+kL&;F*NU^&rNb1_NYp~+6))EHmik&=~rwc}c)ko3_M z2dkKUWuZG#M^LJ>vQ5o1%53>9&=dMuYUS9s>I0N=Id1mAJUJ*x5}R^hu>Q^UW_l=H zalKrIextnK1~1pSbk~Lp^%Y&-{U%1)qL-)uvSQAOf8Zz(&E@W6#dmJM#l2eLDWFCy zwW4OT<8~Avf&rz!|4vuGKi+~lRG%!g!4y?&w$e~+b(KJR*&F}{i=HDHi`D#4zPAho z4?$LURRwEn6i|NV7`x#ukM{BzkaC0qO=F8t8J)`hn$TLC)}KKa%$1JTB-mgYjE+5> zsHlS<Q#Q+LTyn>3p^BaPF-IQ%1r<(lrqRSAI9W?8yL_SB@jw9K^+549I~z4n3TvAi zIwpD45x|yRVI#w4>-L!)<5;0~ovb8h*x810OiVppuR$~LV*HR(`XNKS0sAUTk_KOw zLJnXpG24pQ_42;Sw3rJH9cV$zI$^R&@Uz8!Vdb+g(sbwi3wg{>-a$!cH_@!oR<g)q zWhRsr3OTaL)(DL7IVND}H6ETdAs(K@@C0<gIdXRR8TT)r<j4d8bAG(-8@jcE*kCS# zl-eO43tYDWDq4uuT>?V*RTIDFUpE0bi#XgQBT;hOUhGAjF`~aS^rLN&O~-~Cx(P~N zVepKQ)qwHfi!735xai6DSw7&lcm>uiGX!Bl#Nm9?hxK93EdfIWgBuso+I?2kdnRc{ z$e1K!oVtAx%$p{*8QR=*rpS~JRh>}8+I?UjaIdEO)y5K(H|It?Jp>j-u~7c(Ovnb$ z!icxogs2P>=rI0j-8_=j#@b7X<lpuBu3R=0e}t*HrP{ES136=uQX`VUZ8J7XbmVN1 z`}!|~8r2VeguzpR!g-i7L`wvK1Qwk|7IRahG;?H16esUg`)MgrLgdjg8|22X?G)O5 zcCCp8jDuRI^dFWg_Sbq0TrvC62b|W?GD}g`(G?DAVj3Ma$`dB5CTf;+#0#hWB`I|C zHs$m33pn^bRcl309^cF!s;V>Hb<&*mS+lG8Ap6d^W#_PqDfL<Js81p-eqf$j-kRIF zS{DtQfUGS?w+C_P#&$7uD??PI+f9<&a53_hKjH?Qr|_vbGc<N#ttvlxJNOF8@W~%E ztHzKZSy_s$M;ezukZx%(4$L?%gy&QFDA+V`rm3E^K3j{`&>7eBPE5Cz!c+N4i0y49 z9QkG_c|C4rcA54{k1v`nGtice+?`#k1$YI_ov=-CNq)P&G?ufdT!61;nRIfBU2QwH zo<GcmPgM$gSEkJ<&j!L*Z8Ty~Ls~$7hf4}7DvtB5T}zb^99`>_s2AkQQIQW2w=2t0 zfs4h0TnniYJgCJ({X{|G;LS(SMN~=ii~qL+Pd%R|%HAB6NwPK_AgY?fJsDneq%NVj z0edJ#dO{f~Y5rU2XhY(Sl|a*w1r=>?mA1}`X@_#|Vk|7ZoaOU9DL?l7X1>8izz%H3 zaRKkKMsLNe?T45B1k~6jg=`vpMW`6*@s9EA9>vmH5Q<_JR>0RS{;Z?lD?C4aAD;xe zlYcx4H+#++Tk*PwJ-8jSY1FOc-&L78Q`B&@IQdd4m2{GXr$m=Kog<N?J`pkalkLMe zBE=sx)oon<=y*V0iyVK+p85IaW{Up++40rq5ot*Eg3!rDeRP;`w<5gcxZc18nH*tt ziE@(N9aE`zfHcaax>+;=3b|)MbS9O=4u&<<u4CwBHb9a|34{65)_9XJ01=NV=FFcJ zQCiDv{i<ahFOAdf@W%GIZQ#AAI!&Tpfl)RJ+@qG0LVZg6)!BZ=pM-_{wY!DBMb<05 z(XC&{GyHkSe_VrL`#o$&C^d>%Bd1lJ6MEXeD%Do>r6J`C-ExH#L&$7k`&UhQO2jd9 z1DNo4de~PRm2Oh#slcZJCa~Qpu~!$F)*<wd`>mI;p75^At^odDZ*E^b@7*50e`+3i zd3<p*=x1i)6nSlKL;r}9{4-1bA!jUcj}}mAjp>bx_VEa}+tu3eD(Jx&VYty(X5>UQ z(15Lx9MdkVuB&CYh)`sW@7`fu4p_^~Ql;M@in)}2%q^Mu%#)mEHfJYSqVI^lP(`n8 zS^>3#tf@Dwnys+7V38D)LwH|{;#Y~#TOq}JBt@r6T?~34sgQ^47R+hJ0X7vm;4pf> z+1N(wY~v2rgZa#hx?rD2J&$<D0R~V~P1QFoFaF&Jk&|}ti$s&t7}YRU)QU}ua+1L3 za;G2LKueU7e4bmUFB7>q%>gAZ%^qZ@5~a<5K58Tn9>7!It8;U?6$yu$4?a(XSaYJj z;pJWXoaf)h4<X%<oo^B7wR8SDpMUaDeK}0RmHB|V;X&^jOgx!e8X20*k2fUU$|V$D z@Z6|>dp<0k*_ZfuuE$f=X9L7;3kN`9T#?SELHC+G9W>j193n4D-u4|j3LbyA^lym? zzlCZ{q9Vc#veOO5as^0MHDJk;Q&)9UlSje-Q^gnPUIV96=O_dr0Upu&q8m+yK#QzG z^p&?mn;WPc#}r`LX}dc&b7}mDN}W6N)?ujb$nnb`QUYBHYwOSBRzSd}<C@msRaLp| zXGtt)(H4IRm3Rt-mo*=BXkbEt10bFAlNwv!=a!mJKDE&M7BkylXm))$qC0f=?y8*s zP=0C2u5VQpxA|sb0q-65Nl~<S!oT+C_=Kbw-Syp2VPk9EZJyP8ll9@xyZ+|p6-v5& z<WCZs6&YiO-W2q_zG-`5VHS~9^QRpK{_da55@-h6hVp5eDOuAJPTHOdsc?ncg>buu zgJXSP6mHdVQQK2+*k}ZX;S=M55Zl71qkg0gI%&8-fc@tKU#-v@Lq=$6sd@`1voCU! zzB5L6E}MwyJ+<hs1g;%7a<85wayz?7G~bLkT0&J>jv8p8jj$H`XzU`C(U6zvBxu0$ z!Tfp;o}fD6@{OhigusuW9AnguLlqj}TM_Ia65vGuJmw+*uuL$sUZ6X8CfaQw7+c}E zS#S+qSOvqH5P1?j(s1a0GJH0hJes(ndayKDGE@N?mkjx^t14XH_GBR%i!$6M-X~=^ z!e+^YAK8Ln^iX6d>uh8wfjnTlMl<b!JfMn15YEazyCV8r&S=*~p;dcgGouZ0nC9*} zL$3G;GW-`QqN~^24-mXH{b&Z+7Da3aeubTT-I4=7$X`-~73ueZDZ7zFk_-ubk|R2_ z!%Jh5yfI3lK{w3IjPTxWUqYyUzgMpR-s|JlVWbx9YyE&=9^hHq{+w<iP)Ld`%Sv*g z1JCm-7J!c$GDb~>AMX&KU``YvQ(6V3Gl-dB_*I+6#n#RPk;tMIEMv?lfqTLq+_i0N ze1A~9;fT!)JwLZ?-fpC++U;O=#=-=?uP1;`y-DYz-2ZZr#S!N1lW)dd|4CJTKb1=M zL3Y}iWGZWkh!FU56WdLsy+K@q`~gSkP5*O>-%Y<Kx*^@qlQ897Jj*|-@M1=>Tq-8F za^2|+7b?`Fv)YW^a$xl6DUQ+JDZ>D;5wb5ZN#HVJ>ouJiAGzUXPxaSij3R7U)cCp+ z-;<Hh9^Dlf`mBmLLUa|f$Q_k~EWz@O_XR@Q!KS*Yd`PAe@F6`cBVahWVa_ZvVVV)- z#pQDbE5Iwj%fbqX%EGL=0&T!5$aQg*kqJ?EAk@XtE6ABi&ivHHgV30^BeAg<f4_u8 z7WX5h??h^ZPJo3olrq#AX<AkIuCJr$y!ysC?6C8ELwp$+=v?;LWLBg{58{#hora!y zGho62?hMzz1Bev2SG;Vssyj5>osOTUa?IdHx^+RHOsL)7Zy){!%k7kS>mjox%cO!Z zKB8cQKU2{A(^GJQhmOAR<x3TR(962pnZSo|m{Ch1WGmf!fXS3xH=E<^2QzS%;pihh z2(lX)P1^~?M2A4x6a7&rMWQ<_3&G(0(xQY0vOr~2n1H!r2DFn7`7%eICj6D;K;`^c zWi5>;oh=qF(<&Z>RBlt0P@XRi((vBl8cVuovTF&t95{T)a1RAm-wG#9%(iF6a${dG zF=_OFpo!%&g7Pbh1X99gW2c_Q3MVnrkrLWO4i+`V5BOw;3oWdi*|hp$a#FGC!9dSq z|IBA^-!&jb{0guZY8%@tsg7QEU)0N4yk};PU5br!?LPfe>!PzEZ8{A7@QW4i67|fu z)X{zXt5RDPe?$w~5TU=loE=9O^xU$Q&2j5YsJ}WDmu{;iIClkYsB11;Aqt`#oQw7} zB@pwSd6r6H$B$Npb226m?b}-l@h^2FvFmz3V-_0kVzFu?5S^$!w9INI7wbs5Ks>hr zW4aKY%o%3HFoGafAs|4;1X}HnS}KN)iY!NNMgvfhvl*fqMvmi9r9i?n3uD7+oTEVE zus|X^l50@3jerqV4G2)+;IP;)TbQjgp5e8NQ_IN<!l<6G+pIXIFOpcP3jU4iK+XdE zY$-8tdpgSktfw`MKvU3V=?;e=)z#x9tzhmA=dzAKH5Vc44{wOgzb)LABHa_$;Mf<x z{_~{#Ydxvz%g|>9D0Jfe7VolFyRyd;YZ5piJL{%0R{Y0_8v8pxlazQ`->Oag`_q)_ z0p4;|!CbogtV6v-8=uHb)t?RW<s>F@k-g`lk)wC{rkc7DjONsImb#JS7aH&s$ce1` zoV%t#TQ=UFA-2>=hLN&$0UNwdrXcB9yKa#p2+&itsew|llw&?r1atC)(#2874=U4G z?l~FXDSQNt^qeWyDu7fisY|MrsA^A(G66Q%OkmGhw=@a09rC{n9C*^G!nvS^wZL&F zM1IW@-C&!q6=kvds&N;XC1V|ap_KIra>Ygna)q93ZqK1V<#ejq*$Q-x<;Lb&BAQGk z;<2?xpG=kF(ZXsG<<#INvQ9S3%mdP?R_|`NOo;Oa*;L<lq3D~*owD6zE^&VpX?M?E zowj62#<~@WG1yEun&DuRz66X6u^r@;R_&QSFq;dTX9`Ab8K(w?_D^7DC>x0d!DEkd z_k~JP`?O|^++)vWQ^aRl%Ad?;&)_VDN<jo=-qN6D@GBTO@Q5*rV@E+jm4I1Vkg=FT znT2+zxWLJ$94psm!tl)3<_kaq8YM^}GsY?8OCpv7N2<V+;pHuy0cwdvF3^m<W);Sc zKAMslBNF6}KEGy$s-^d7zn7~g%p%3QY=0&#;W*@k#HQP_fM8#ZJweM5n^J|BXIX`+ zz$hDKETmg9b1tV+O{&Ndl?^60U+wD_A3TL1ak&i=#D?~g0j~@s{~kbmBwaun<d3wW zLib1IE*$(%J<J{DbiC_ye3W?Xb}XUlsD>HwKu>N@LK5X1G!pH%C3{X({9~zaUc&{J z(8#nK`9?Cwn_y>Db;+Go#b;&`!0>1-M;Y4L<N;(_@93Tc47l-?69@>`TVoy#xISLW zpcM%KD|PBBZCHvy8v(s1oP6~HTXwq%rC?_Fyl&chQiObWf(yGmKz4$yizk`4)e$oJ z7z-k~%?+R?V9A7<jGucmkTD(#4Ji*`$!tz#&7|`f#x^Gbu!F%cCF6sED-K2ycG=3{ z+ub>f%el*0CvmD~*|kwCXI(6qt7a9d;3Q2*8yq`l%d_1Lx|aagay@F9R9U}`DC`Va z|1Np4$zP}1A6w3wjy*}p7Mp5dYr&LE9_9zOxs?KVuQ>^`g5%-IKb<kBzExkhW(fd3 zO<78~ee&$6q9uqQ)banr9x9$L8W8rVS|A+s?lvkX5@1m<Ab)Ha0}(s^ahxDs1B*o? zTP&i%83}>>vxG~nG6-|R8;fT~|3D(ZL5QyeVTRRmS0Xu5Ihd9Z>GQ0K1OR6gc_KwE zLRrTKW6da`8Vo&a$}8@SHQbEeNFX|aa~IHH-SF4l*CzP4yB|o)3U2y;-F>FPSiF)F z7giYxTC<q3Za9qLdTLCnxUp_1j6qYQVtXSaG;(g-*Jf@zl7_9P69s_SP0G1Z;8>+y z2p7VtmGUn$d$(}+|Bt)>87(R%xCKuj^%5dtUYkM}i)ji)a<JRqf~El{R%cm+Vy(c+ z9EXEICzrW^6>n+HITts^syia=<3}rctkpxOwE@6&5x1d8R)@<-PK^~%s$Rl@;Jys) z?O!Sqhb94P;QlsX{TXI{LsK^>>PynUz37=H_o1La-=kv<@eSJ&c8+s?f4&{^M5^j~ zinJ}YensF%fVq^f{|;|(nK{Q|r7Y!|Wu;VMsz`Y!e}(OaIY)vSTP9Dw4R4nimJ{GE z8}+G_@kgONo&!^lGT@g^a5Yk0vZ4;WojFE58Rl6cA~X8=BJRyMc?%59U|~LZ$&o6{ zyvqVDm00&e&4BU&0t8Jq-gt=1wz<y31M&Q0BWkr_*E;hZhN&I^VMv<*Y&}jJ!h5hN z`V%6=0`JyP8N&iCiB5Xh2~<FjZiPh(gHF)zD*J@r^ZJ-{Y+YSs;gG>y1&wc?o)JwL z$3835XU49w$xKWy*UWuZ_PXZsg_r73A=Xtp((y*d?fHzBp=2aPe@RW#khNy~4F7s4 zMF{_D`Guep6pc9$<|g5dHKy1WhK^C2{;b?=x7JXWctCxWhM96gT}JlP8qb3IC)B`C z^EoVJFZc_tb5&JlQGh?OzH;{3XXONu8fP6c=P!E=BE4qb@M*C@I%(+zJl*>mEuw_b z_8c_KmFe3L$5GqVtvgbnO<-7E`<gG=JWv_YJRT1_mabqsi(`%u34!PhZ<1{01Ap)d zp`ZQ=1F9oa^4uZ<gS|~VYh%1s*f^hMhlwQzJ~e1Z-pLnSGb}A4btL2V8-pdtRLGcA zkLjaLK1LE3L#Y+Pl_iiVJ}VAtO$Z><C;hfp^@AsT&(Hvfui%vf$xiU05%)a)Uc~wv zBD=%y?7vKdw{mu=jh-gx39EkG(u|oW`>Qi6JOE80u|gGTYJCy9FOIVB`m>T6ujo)p zE@rG#J4$}SU-O{$RKN>ZPe2rP8A@|jdX^$V1pC)GppPK3oqe6(<U6zKwQ_^^;Fx*C zLb48Q2O-`_CK(LdGU?+RlC=q9H))EtXm?0dH{X=wba{zp*@lr^GDy`G@hikFax2A& z!8Hf}wi>4c$j5P2+qpEY1f$vP7wsiTSyee@lF#G$*|~Q&PcuS=xg8^w8%Tw5nD64E z6sL811=2&;G_~;6%*XB(Gxw&B8rP(VhM;MU7KotNs2e&maC**AhpT0$F{W~2OA8RG z*#8j<=L40_-KZheJg>ZdZLxnTT-eO};NkHa8_ALOb#vOr#W5od2{Q}T$!@VGu#Qbj zl8bdK5mN{0#84TKwkJmxYlWt=W&ZJ19dx9cMD<NiTow9S+wP3HSgwMiD|L%5D3)p` zEpd`_XVYb_-1xP<IK!^~D=v@5wmQgca;mW2o?RjCO<%Vs^J8=_r6H<h{3X`!WPd#y z=#35j!hpWE-fp9KY2#pPoB0*&g7Z*i+rTr^_ovVr&trw@wgI$!O3zP%2I^+BwiWpu zgAEr7>eAY2UB)pBB}ze19pv6tQ9N#cSf}bjv2ESAUY4b(Vm6m*w884M3R&vUn%i2o zguk`i{kE&Vdp|9Jp|rl*)V=u{ua~TS)y3o9u+(VdwJpzyNbe~Q8}x`ZUhl_sbjJIk z&0W!#i6BT{Ysnkx3|WGeF<TMtOi2+#LWNmG?K%Pb?g|PxzW;Z?G5_J<SxLr}74sug z%x6`Bq4BE#XH2%5qO1)bx0+4Mc$)eEivwJ01Tcujp+lh~g(D{WEbLCo>Yc?Q2+HMr z6(VwPwHX=%Kr&d}i8S8O+ZqY^#lW1fNo86p<R&T1c}+|ov`qVdM;wjqoo|iTMf9MQ zBm)FIR~%pju*V)`yM0RFI72>5OazuvDD$m3%I?h~wQ}S|L20b3v2yH2d(q|jUb`OL zt78!~yyZpBOsWr`0FGAJ1h5xm$at>QLA@CXjP-ccjH<D=t5r>@B}Q15BYM-7+=DZ? zyO2O%xR<sq#Y#u2QOOjt(m&c{161Y&u{UmzlqBbDxE4x?_AGkT&;_tdJ;9a;=%8vA zm}8u(UGUp9uhgr)+o+BtVLvUb9z1El_!B)y<wYCj_JYS7<~n@jmF~KAC|#>lS&dfg zCasJx2FW7FpA!gT58yi1mzq=&rtZiO<fSfoVF+Lc(L$Fr-Q-09M|#OJ@fb7jX|M7L z?WwNvovp7%KXg()UYoCF?4zJ`*l@1Z?I>ai8WK;+k5VX8F3QW4qp+%z@}lG-X$Y>= z*X>uo7w1LEzw)&guyvK1kOh6|Xc5`<%8OEi$GlZ%V1;aCP?B{1w-PkaR2n#+!|qXY z?u&)8XZ@vX2#Ph^Mia){Lav&~3Shsv;L~oGXBa@`Ma@Cf<)I^ZZ2CwsqH{v#MTs2S zby3HDW-qIJRLA=94(hjUH7{xhJ%2;3er{~I{0JL|Lmi%=;XW^_{vW33h$>0ua#&23 z^Zfj=p2odh4i{6pd||_y7wtpGw<hwWyQ^3)r6f7C{<F0dIJc^;IG{}0t@`O-*vazU z@Jiu<p%3)MW>JB8w8^AvzSpcM1*$o0$K*tn*o|p6Lgz)97e02Y)q{-C)<udh^t6;q z2zgP>>I!r^4G>+rYh+zf>pW^^B>tR%kW5_!b|3zVk^vn`x9TaSRTZji{B7ne<%RY7 zrKP~DUHb?17>^>pobu_$8v>=^QVN#u-6@)zYAT>Rw145!C<Of<aLJCJhj~2|%ZsYI ztf*Kn&x=yz)l?J2J}-%qZ_|-glDx*V|ErSd{;DKRB}paR`GZGwB&r0<C9YJS8W69H zck`n5&5hCy%4v}PM{NG2ycHCi_o8$7H&Q^c`NxC3RU`POfo<C1^43ZZ_U&@*7A1&9 zcF8i(iHQveIzh85KA#B~csU>$l@ukLL46mZ8}_TI46|{jmjb5~&L2SwEaB7S7Mn`j zDbGmyyT=FCy5C{&lngW>Ub4--=%hTOIDP1%3MFxF)a6ehwNHKvAgrG%y4GgLV}z5J z?#8U!R+?h~X+UdrXiK{&Urv%4ODkT!1u+)1UHAiSk+C6`PH?4KHGjr@q4%O&ROKu; z8$o!ru}^-j$lg%M4>v^K4jik6S?fA1=h?WJ17Vi7Qclj|(+@0w2GN?k4;=#YriIdg z6*pafCJab$T~m3{L8u|fTknH#6i6CkX3}J~SlS)n(3IF6F!;R(bZ%k%?s}WJ%3?O6 z-LE#&-yn%Zzo0flTPjykYNDp8n?$ZPqlW&O8few6=KRAty}^gh<kKv7+CQwYUBUq! zlhiOKusACX+_15HzE#J9Y3&^4vMMTwh1oa1S6>&>2hoXpU1l0*ukt?iqp_}~^|_Uc z4aT0;s{)A^+x<#io*6=Ez#3e83J$u%K`>-MU^%<QqFW7}Cb#-WabmqVdx86b`aHWJ zc5{?3U6_=ghmz#pGw_z1vm9usJFYHiHTv*EC&jNu+(B4q3H=p2QA#88Xmu^~h7Q3q zeeE6Q6+7q=YfYbV(^Vxv(vum^P=1qn@u;4r9f0$w?UqgWxd!h7die~*D~2<s#=60S zy@3%>WhyS5G$Wu+#w<s^WNl~WPNU5Cv?^05p=fjRKi!spA)~!SQAN*0d5Rzu-K=i^ z7cz6YYgBV5p?O1IC?y(!kSKF>b|1f{fL$A<&kQiHbc~q;>#95&&UQ=3jWnHJ*<W#r zHp<XE3GS*oEmF1{;p}MZzNbFwVD&MeCY8@5trS9hw1IMzKk(CGKt|QK=c$PyJ2f)H zK?tE}i5BDmu6fYZetcn{`-+pT8r`H!{S{}R>2r38Rk!88IQ55tPI26kVd}h*Muu#t zS0RBXZ)#V)xBn~7*jP8igr&;=ILb?3uylTLlf2SdccK*4i>Y1IdY|fD-94aOr$O84 zz!Hj1&}XHA$RF57smlYs0dgN>h*xOQFR}8MQ<nd5N+pM<Uz=9RL-OaYP&5cS!<H&C zJe>Jc!0D9pN1eaW@%Rg!y~d0rV{|{99!qquso2{*`dgitb6ndy9W1qbhJ(h8Rm8fL z5pOK*<y;G6Zc<*wAf7$;hPrk;<1q?rp=g7)yo*MwdY1}aEI*tvvAdutlSm<$x*ADs zE!K8NYi+G79gvby11Xt|#Z^G2CO6zqKGZpaZt!$#<d%RbOXv2#yf_i+0$Bx(8F~n% zbaCf=Uva+SIyO$3G!bI&Du#emObmt}P7ot>OVf!^bXEqUZGwDk+BgdK(^M=M#?w?Q zhu8iG!)O2(H)*57w{iUFCkBcUJ6QyUdmXn?75W9s#CY?{m8#+?U`Dz%NP;~v{7Zu6 zOD@E|DI7fNfJE47BOVAhy?=3&{||0-{wHpz?{(He%H9v>KX3!bUBDPT1r*Nfu;YdV z?Zg)<BSE#$EOh%EZiR`!DUiC?1F8ENBwcGi98Psm*V7SGXN_L{X(RKd*RAXVJWe%4 zM0f_P<!@M7v>VEjR>Kdz41bYR2|~^{0UYySqV{-SdOC@vy1h)EpP*WDiGI;JiVQ#Y zk-g|4_Gnu=bYl*KH=`!w(0-+Kf@}jV6->+`+y@Oe0)w%O|0VBmrODc#V%F)!jh2DO zAaUoNRtmIeQvX>VQfi`eBzUFHFf#;J(+syn7xsq{`9IZ;-1_vb+rQP$uhPF5@}jf( zZ_^+|7CH8uPZ0Yr-%3GzTiB8R_8+E!Nz#od8>=qcsoJ(M_o~dc@ZRh;Nc^yTv^~q% zcLy;2E~lx?vgUU7@sKo7yjNF}thDB~2XU<wc+^{G9R*Sdp4lF>m8HN^#1lj_tsFTr z=8j$U-Bu6#pwLKfy0nZSovczI%l~wQN_YP{LgoL<5t4Mhb+(5y(_%O&$GhiXI4HLo ztg=qqF2_?L>UNN#$(eAF8YnLzKwO&;;J<V3)i>h7q=W3s+<sWm!Pkl5uD8|%m`>t0 z<j8(uGvZTYMJfGK!me1srK3B{nP|}t$VyW0=Ty=8w;NP}AImdof2-_1VfCujcEB#a zg<j9}Y!J~0`<~rf+l-($4F&Rw3$6_>GpAX2l;tq9WQ6I=#4zs|jP5y3oLsX2t~g44 zub*C0UA>21J;g@tQ7~arKeL2KIz$_xLLwEbX+rpBK=o^pO1;O)z$|V$c~>Sl%iD22 zQDV`<wJNY8dgp}{s3}wnRV`%7_?1CdLsDksNCz#hTkE>sf-eUyGDz7{EQ}X(CYo5z zX2~dcK$!hkG&I6-Oa3A-af8%Lq0mXwfL+RwF?PwWegLVdL=CR#VAfjU8mpb7$--_F z*Mu_}2Pq*-#AZ=b!3Ov&s}P4Ip_)tyo;d%TU-;8ef38sUe9Drv&CNc}A;-^3`T~xb zd3Ln6oRUYn@Y(eMj<6R1Dt({$`k4~tn0%z-uQI=y+kkT&kGWF*kDacv*ECoZzh}eH zw|gm%GL=|dybE8NkBvLW*^q2B$BC{<N10aAHs*`?Tw${heHr+lNW7PWleMn{_rLlk zDH!j#BtkmeKI}8PmN>DK4u0FI@L8TBU#2t+P?y-LnA7TE#bFJZ_Hjn^a<qbc%|AH# z3D#IV4;_TE7gQvOljLrMXOpHR;wW7MRX7hMihoo~&$QLFHyn=nbq*w0xHs=MJ;sr_ zP4|6%=fUvKr1TTSn}-`5loZyluCtZabSJ2%jVcQ54Z}2&JrjvCcMC#3o`GVrzHxmw zP3K%<Jp6A6`YtV-SKk9DP<i=HpH{QW_|ZTmXtl=iNnW^rq!|Q!X?4Gcd+hbNdTo&; zjpCZvSU^O7P=Vi_syMn2tVtiJ<aHCQ{hs!)VLMq`!)y5CL1}{cI|1Pb0qI^AKiK5f zhmY2>2rT!ab1ZUJ0O3pY1~v&859Y8p)+Ch2ANc~PAaL3oc(_1U7`4NUa+m&j-oa<- zq=x=UEU}WwEd1O0Z)icHGbdtDHh)Irpq8r|k{yC6gOu@!;Gurt@?fC7Ey%f2p=I9; zh(Q4u@OUr+DT7u|;-JdJ*LEb&a=yzT;0PuK4<LOv+9CWZpk2Txh(TuSreRr>w_R~z zpnsAW$TKQhCvvG^5Ys(bW>{*cf?YBgGCBtV(SCUi31Q<yTYfFWO(zixD~MU<{Edvn zxI0!x#7zP4=}EhUEs+{OHCrCVbkH2?0rApT1OS=&m%8$CknJL>xQLs$nR|1_v0qS+ z6q95;ZEP?$Mr_Lm^k4+cCX2eoFE~)!p25BnP=zx=qaLTzGn%82u*t81q0-_&pu!87 zrFzR;s}pz)6I>;9i{l)UbAFnsVyMjv$Kw9OFlW{rEMR7pvUX6I(=UG0g#uZ1l1<h1 zO!`eN6|Q#8!h#JH1!hSGMS(MAFPWdU2Xiu0+)3PfULsqa8JPkoFt+J~YTZ_UX8W1{ z4bx_RF=UOW#YpqE$R>%$w{}*rqEgNRMX<iNjir<{KhrdbSmP9NWb4MbAgN?25PfD2 z?wk4?nF6p$TFI0zVEERHPy1QU<l7jKp#zO#krArb<v8>^-hBl}sJUm*Q{D9dgc)^0 zYO_Xi>gcN(_12AKLz3e)h0e$iH$}|`MuF&}`Nbg>4@`(&k91;WE{;0;WOmTYL@U_A zJ#k;9*d{t0w=!a0<k6ZPu1IE1;Wp|VcZZY{Zb|%DF3t(>gv~+})EdH1qAG{SOsM4y zsQ3K4_$%1a{rk|^Qdu+~#Hy7W>5Rnr@jaJs{f=G)7ZLH7IDg=e#$FrM+YeWUkE_Rb zxO=~V?s1G%sAPX1tU|D|fKEnPQ(kG`wr<aW2wcW>u@&9Xy&Knk_kd}gyel9C$UMmC zdsZeq5UElN%qrGJ&u7VVP5j}W&6Cf-q4H*YzO?2viB{HJkNfJ%QZ`3eB3kd0<QvLX z%HaDhWt==&4X$wbr7Uc`ZH)bzhaKhG_-YLeKW02~&4fMQakUDDVX0_hDyQL`+wrD7 zpI2k$_IYC}C(C}WYR+d4Z)Ig-I44h$dS%K|QU1Ztf!paI)J{*~!N0S#(XrdjRyI*R zz(DGBBqzR#L@|D)PsesFC)d7X3x9s)#8NF}M1m-nh{x5U<wd_}siv`wW?{u<@8g2j zJ%{HPk84;ICvv9A)B(Tc?2CBI?IRCsPg=vB#ocnBy2iY<VbSGq-e@nslsJ27+e)L4 zF7^Xo+@lq-`^(RVGTSxCyMvVrXI8u#cHcZicb|#u^4T-*OU=>Mh>cjKKaSLGT`P0K zy2$UBogO1Al|9ug&uWLDH)9M)9VYysZcj!G@augnj$99Hjx#Ws28p4Z#m&M*WPV?d zQ@cEdE5P5!4g~5G^RL-A31>Fu)Bco74?3BAdMI>o*RB53P2#a32r4wq1NEKlQ$T0Q zVWJ+sUXh%>f}P&MJnF)e5$f7QlaMaz4m+=F%dL-;l+w?cHj3R^yEBKEL>Ti)PXlzw z7-Gx`<<unJIUNm!B5ThfzZ%MSc>J24L;^NTj#^_FuM#swOM?-^vz`buE9?peS3u*a zyg_QC^R{5s%MH(J?Ku2|ExCK;%48LVqv|ak55ZI!g(Fw?V8Ny<d0JEH`EmVJGPkz^ z=E8R!3%Sj+=Bx``69{Q@8OWlKmV8*6HZ5<=Wt#@NoRgf2GD==;{>S;_bkwD?g9%gE z2pCmL{KyJ#*A*WzyNpCBptkr#b~j3Vw_9nU{!rYVneYk<uS*=;sa(>!%I!hDUMYWw z3;kI3q=WebyWVNz4;IJZj?@QO4@ZuZNdx=MV$VwA7{~Ay<5-JYZbwG569St}i0vkW zpXLvP8xC8YkDlN$rwwx%a4j0Qi-DE=SGC#DZ?c>Ho+=IW{K?8}BiXm-lXy$@gB`$g z>q)uwz0a(=N}C8)kEAe-cCu8Ct6LsnEerVGY^bzVzlN8SI!7)vdh!)3DI9IK;)X*0 zbmOso3lr7ndZ8gqJ<9m4V1}wmO+lB$t;b))H2Z9s2o%fzt*|ipWL%<@$Sr+|)Kd2% zXb4k3lG=39)XD4f2)n;6&ghut!PtUsQiD++M&ldBuX5V3)bVo|&f2?iq1;i<omvae zj!1Vi=bX)odyJ`ae`5V&`NXHMnuRK~c=*<PE={=hyI>Bteg|etb7S-6`S@A#!b+7= zl7sH%@B7Npa)2WR|AJ8|!TWWhmcpIw;lv(n(FUvJ6L7Hz%4Czs-)c3D*AGADh0PEl zr#*VyIEy>n8+-2pZl?+12EbUmt+StoYR&n3VlF(0c8f=vyk7d&;-GIE-_k*Y!_nbk z93Hc@#>i4{fpAil|G<F<U2?Ybc(rk8_!H@4#1H?X7aS0RI@8VwZUD5ELB=7V*G)ZN z&dUixPG~gMHU*FuLT4*xZVzmfC-Nf&>q`})j7bC?N2P4UXcvAftQ$mY%%9&~e4B}k zfDm*%d5{Vz+>MfI3B&%y2sFbHb_6sED&%QWUD7Vs!VO9BIm$iy=C+Ii8cASbeKzli zoi-+kQR5g@<EU;*m}@0hi=MIfCw7B)o6wE(p*y}b7)U2Vmmew^8hksmnXq;zqjkLT zN%hMA^gXH5`&2!+kuRjUQ+Di>1s3vHWuk)GaTVoHNIi40Oz*9Ca_ZVPic}W2R;H6` z=`NdxHr2kuQqR~^T2C7~Bz!JlO`M}tVMf>GQ;izpWF^4!pnc)Y`aWE-_SVSlEz87I z!m-`sGGTb~@<aMh7rPdbgK^m=v|^+;`%PMJex$J=-rkyy2>GZGlUXw|a;0!Dw~Pf% z#FKiGQoN*6Rl^jLx4nF&Mep)M$`l@!$VzEgXIM|jZC$TBJr}CrJ3v!ubJys8dR^{D z6Rxr!{M$3<J|n88T4}za!sZ{Ng&4kb1Aj?xdNVWr(!*gjI4eQ)H{jWxWNDsg7yUfO zS0P8X_;)vcQze?Q96<NGU)&57%}a5j7FYW|74%kRvCo$<^L&<@!y(PDJovHrOi2rb z@1{yFFd5DJ3O`<+5<H9ZzMjzh>cL(cFihY+UqO`j_sAW4FE~q<)x;LAzb?C=N<}p% z<@dpcLq!~VSQ(0Woxx8vNcq}2Y?H;IqtVEML-Qh&sB!-~J+LXi^oZrSZ#`o9vH}}j z)quNKczUhO6L+Qjzzei}-p!X@Z@m!AplzViRX9iqP+lf7OO6?Q7&sFb8!DD@UL*c4 zt^8oU9Wq0RXRoBD);Xb{fxi+SloNRvrku+~$`u!rJSC+3P*{NIXVELTVi`<w6d4$! zO`PdEUl}q53jj|f`oPJ&ot2jNwja)kXW#pNCf;SuSsrhxD1CX|#AKF#*M?dul+8=a zdvFEUk@J=F#cC??Y<<_9YlLZ))qGORpq6*aBk?QDQ#w4_e4dL|#3SK3ue{{!&e|8n zLAmx?H?3irT4hxeCF}1Ed9!lMYJY~OBx@%UcZb_bY!G%H^Alh?{3uM<6C(HYCmtwL zH$>xx6BAyo-aW7Sr7t5!H+vEy#`7#bxR&+cK1Mc6t<I3oK9FPI0Ar1v9ls5>$RBg4 zy}pL8BXu7V`u)mn;C%5b^)e4XEZN$0klXZ~x#ydr>=;Ylj8{`TE+$yB6i&1>Clx^U z-`aizHP8NA4})*N%Ax$XAPQu!Uh?j~e6kH8mB6#pt5AYDFEn0ZZ&&OHz6|>sW?c47 zvQv1VtoQrXyIDogFZxP`kFDOCf@^REXSn-ElzMY~J(j1?wB=9pIxsC7k6qSLwq^XK zuN`8aP5nQn2OslE;|aKNg*W{_5`k=N1*cWqHEb>c3RB$dC-wNwKYqKvDKULQF?C(_ z9Js?72@reFfUk_$*p43W`>3_hUQBpnZwW{3)H~AxaH0r$Uke{<?Tf5|+kc`l{MnNH zQy)s4fcXY1cmD{}`6n4_FcZo(S3V~?*(RtmX#fjzFXn=mh!>}bSFe`?Vecs_OtzGl z<>3mL5@aAO7%CVESmyw^0sQO?8kpA#7&B4Fj7?@{Jz+IY<e)|Wj!RZ%9E`PsjC8U= zQ^Rtcgr2^gv~7|bV!sDcs;J!%D3`50AJ4V}tKG0SlsPR5(4tM&Vmi>&=`!F!6{lJ{ zNxGIO4#C<&84hM*C;e+bI@0P1Cm;KFVht<$#Bbqi4vyDV)ewOwN(QRJOddeS*^hS2 zGuAPm<~nEdtI;M2j^ysvr1Q7$95pd+K(WD8(W!n8j;!S1LDqT(s|Rg|zJ8XLFH(F2 z&hb!v5=JgL4Qy0Jk(~`B@He@Dt!V0E_=)%9!0;NFl6dvbtn?TQ)yjC)bG#lFbR^6k z7S{B6J86vBS3j$b>g4%iU#LQTYEIEh#`?`u`y%c<;%uI?9Ipc+d8c%3pQ**zxlg4J z61mIC^<dz+A7Btngb+UC!T~qyxdoh;A~izB1j!mNhp&6A;hNf7AJv?OHbgb^Pn)W) zb^yYmAc;JDMF25!d+lfNn4he;E*JAJ)xvK6d2iOXsCWCS@AP@?<6a2IKjm_s2amY^ zj7a~ufLBhoic&Pwb1+WUw%fE#v(S@C)yS1o7zO;YR!!c>riq~_&AHZknNE#$B$_dS zj%@8^#Z_7-+85Nok#Ap~P<kWBWIiXXWOwVe@36BIt;z;`O$*m?t)FOt?0_KtLIhj^ zn+cu)i-18xCL<8xsNLuQn{nbLTQyA<GRXaS7eUYMd<lHlgaPghkP*N{wA`ZEL!dF@ zAqQH4&42;HC2m)LBBCkK!b-f%6Xwt_HM|Y-mCTNW=;KEK00S^M$YiTTXw@kH@dYGW zY?6xz#~yI*)#X~!L0-s{`j0|6f<%$Y?+RWr0*Hu~Q?zp&yP44cnAn|*NRz9{#bpum zq1KjAJabL8vpHGTFFc8m5XC?%qi8@3j0nd+GxI**1dk|550&&~Z*%ZqzPg+|s{XUH zH0G=U`hYAN1~wOLrW;4$e=P(wt+f6kwbhTAcb|Lx^k0cvrNTn%8qmNQXhFW60!%W3 zWgvVJ_&<~iv@+<ZM4d6CON9gqA}e0LPhYRN-@g2``|?X23Rr)w4+cyWqym>%bB|aA z*W)ne_)9HF5S=G%J@3g07FBr3vSvSCUN4?44?AC;JUQ_2v4gDa{BTV{^Fk)mUB@{m z0db^h`1jwBK>vUyC-}Y}Xf^c~?(pJP?B79fPw+#klnyNxKxO)uf7Ngj(QE%211Hz- zALdk&Nz8qQnE8ESxlw$xw>398)X`C>fgMr83^&uQ5B7JEzg%xR`tLFB$+D_asgA;2 zJSCM@nd1*`w>t}Ei=sq0xPBpuaMVdcMrite#r*;L3xmeU_x#V2G({r-sr~xfYh@vP zcNK3>hnM^8Uthk{f%4$`^+h(-Gy<*oQUCwM)-MR4o-4JT)jHZ6Gj(Js18srmRz$F9 z7_?YX&~TVikbgJjUygQqTtZ0D%M#pkpA4nd=&xy&_P2Nas+EJF;razO)8GIWk@kPa z(El0{R<4N>!8KDR)OOMN-SL;<iu9JVBpCtW7Bm?_Xbp74AQbX{@YE9wcuXB+Wk{&B zl)N@}I+T96xPlGT2(tPUjD{@02M!Ek%wi$<hrW;z2hF~)WCR+c;4?n<`*V+bT|=vH zjK5lEx74A5D$v?ZRfJ%`eewUZ6fh89c4waV&z?8Z^Y3(go)<`7&$=oRB<67MjzXuK z!Dc90tRDK#CsxS_FgsWC0OcJBGdV*Pc(INjpy%>rIx(uh)sd^{Xo($ybrLCzCCbT; z#f)1)cI-3GsU|v@5;3NGw~@3BcZ*WcIE7jaCDO&tH4YxfJK<x3mCU$5Ffr+^+@N5` z55;Lemkw<ocF{UbZx}g1CGO7CAn=>|5pGaYRE}`Ka5M7%`t=4>^qC?1c{BqZS>KC- z>mv*OKJMz7CUiRdUbb?4{^RA%W9ip%eEXY6sb^o%V%?U4&njuy*xXd9rB*5VbwcYS z^7%~hsb4-$-wV05*+=FwQ}Gf@(m-8S(MVs&PQ>fg{2rm`7j@(?;>(MrWD@DhM2~p8 zMe?x@N(PxCvGbOX-`x(L0!VXb>~(AiN?HEw;2YuDtXofiOxI58-h`cv_MTv|DlzCa znQ{<q)$J0_T3{`S67@)3G-y@4ZzLKb&ccbgf?^!75^qEWI-lH~?;gg|SNqDo9tr$G zRgDCgMxt3-@;jxibir~mDWEF+(vxe@zol9&tXPu5Os3rKGw2%peqv0#gmkQ&a?c4# z9M$mCVq07#Z3*dFxz-t+gHM7J1rn80-saWtqPAc$2L45(hp(@gU~z%qL#?7YH^1d& zX!xyk|IN1JTTzSW!drUeg}9c(lGKAt)y$c&0MYxW_OOrJEcX$MrQGHb-2H8HzqQK| zUjq8}ABNg9sQoSH+4)jGOgB1ng>YBco@Da7-mb|5GM;Jb(r&1CySTLgbuCXO57Wu@ zoSuY6oNapFKBCV*dM%C%Q|3o6Ev1Ep-k)ZN9qF{bX2i`lqh3dr*ffM)!}myhLVoyB ze4Hgl1IifDv4ErZfSu9C|L~SjzYis&X#A+}kP%no$kbO^=1e8JB}n2dem5Hz%073* z%z=nt<dkLz(<IpPLX23`jujCDgGW!9QWB%WfQ4`OlR2THwL5MVzj{{P^Wnm*2U2w7 zy3BsIokL8--Ovtu>ux7G)hY2fw^ynUACwAZlf|lfcb$`MmZ%nhey}j@;=OldN)yN{ z?2KKf=r!K&`&aUR7SI=lLz0DHO;pY5M$Rf~coC6fpu#Gup$^N$>=>aQOGMS{2ZXE& zJ-BQkvxq8-tT3W%P++lB7;kDZ4YqWlR%8)a6a)=I0ZkwfjTurB981#g`R^UL5*oV# zn&6pblqj)5`a&9~-xSJN@RHFgSmyPG$`Y8Ja&?$Sf;(FX{Sx-K{h<_$BJwQHLWrzE zK^dUFgEDARH$vxz5u7lLSi#+(rqM;DLzy6n!QCYOt9MF3b}6M>0cCKh%P|}=zD<gv zHUcsEl%h0VUrXjy#FVN;#g;;FZv$!WX^Ln9p7)IDRZr#^0??+4BX-s6DlaL4%G&0v z4eged^xE0y;mwvN^}8#qFP~1q{U=&z@vcWA&+k#~Hvy!@%8ci?{drmUw^vH+?cb)h zu_o{E&8kMM^TDTH@Y{0%Di0l+Ki7^G@=oO^7a|+DPc8>+zFd}OzURqv_<WIqS;D(H z+hAGZNtOJY-OkP)E5hOP17haLuPzonwq2a5P$yy#*Y`JDY?25E->^LnP~{;)strk^ zsOw-?g3@qyfOl}veecMUF6dL7^O_lDci5%yd)kP>pwy+Xw@J`e*owU!XUwO8$jJhD zcnQk`z1+8x=^i&uz$R+0LiONdk+>s!#r=lTtY=rxbX)W#7`XI_1Iw*iapNPBf-e`b z!4FuXdpmL1t0u@}-{&SZB5}JKHSd1+=|&9nC87BU_;ViTiLmkgMFA1Y8%}tt=&9^} z?KJfXnm~7B`N#H;c~{S3D-Cj{uK=`bAB05{K^Pz6qx%BCkvks~sv;=HdNh)Umaddm z>5))>sAB0hzYq8BeaLjwFaFQ1uM@D=Vr)*&5Hxc8HyRXcTzz?AvX}~pAuiOqaeezX zP3t>1&1o|Y$P+eMQYokTL5uMPPzCqjdRMGWfyJ|fh>d?R4-x8ynsvIQaC`;0BMo&P zwB^5iA$Z^sIz*fqiu??-Y+@8`OK%#Tc*erl%A?0%0y*g!r5%Wwy}LQJV&Yu;7-4#b zF~nqi_93+>P0WAFsEGHHo<4#XKG<eYLXpn;V4x9Wh;<@Y=>JCIB|y7&FgBbl^%6wa zmy95Y=ry}-`^mwdnw*0&!wKHc!c7bE5601F(4~UA@BG}DL+sytV<s%R!s~+rU9eUL zMA<NTsfooIApoq0Dn=NdnX-P%engx`7>F#9G6OA(a!m**qp@y)8QORqWac2*m{uOh zWE!l=VJg)IHbA{8^#%loNg0w=Kgd7e0Dh4oU}f7ubdCUpnxQDrBAPWYBW`k_fUxi- zpavY&{Mg4OM{B-Ek07R>B;i}q6d@iJa*xnInf8u1wbacYA0Zn(MgppJD3PkFn*33& zVfacDek2aW{8mmsq>J#OM)1xO3YFeX8s@=4h8iUBH=UP6%2@ZSYJ@D(lx<gSZvXEH zJ1zQda*rzAX`F2|R}yFx=ThGO30OV}0;dQFip(AYR$kn`rp}eoda0Cdf_lGxY;DT4 zV_UFT?NBN8Q5ni$PM|MgLZqHJzy{^IkijIDCcGLQ9|um4Qtn$7x;1At`hc^+JOOK& zZAUda<y#qAF5Vqd6?zW=I@~}5M$~D&R55ghM4c2Az<IDeP<GufMioR(T}s^%R=LuB z3z+01fqbH(`8g&#fX1N_hFVeuSh99@s;v6;Nfr8<xNm|RCR$`68yQB(8X{UG1p+;C zA|B{qCD;UXuu^~?Bvn<NC8dsAC)+e%rvO|*SfkR_ZjyE5`oj}j_QC;Vs%9kt=s7s! z%yhIvV5r>7N(@k=|Kx5<i;NZaPZ|3-gdSUcF*NXEG9bGJteUz87zv!|ycEq;bAEa& zv*_<}Bm7+-k3^7?@l~CEOsK-xR7#;wVxe`=wW^H3wsI9tI;bD{HSLWlnevlju_A#$ z9F?yWIa@r-$c4}#GO%vT+ymF#i0}WA_LgCBblbW%?gUS8cXtimxHc}q-9qr7jXS}E zySqbh5AF^DLU4Ddn?v5c&pP|8b*}Hv_ouH}EmbvVRm~pb9%DSy>6!&Ko*=Yv3<-x| zLn~kij&zQJ2|AWwD9WA+$tc_baqG`;v1&L@3~RKF>+tX`!);lVE*reGhKeb`lZ9t7 zORo~KDM=dE;jIW^x>!gl<Fg1cwX|3U$}*kkTw^}<Z1Ef%OcnmAfVwT6uX{Bvr_z+- zmr(ri&pB>|A0LYchv_ql+rK9`wp~2H;2<dKI9Mp+OMkmkdOs{UVGiadh^AXhOz1r* z(=Bn+c&wc3W2cK#ZRIq{YAp#V{!Sk<)X`dUJ?Ky=Z7k`Jjy&2z4co*@I~G)l$Fn7x z%iv!;d_Kx_x#?*gxv^(90j&g#E1pgO13nZnP|p1EFV+!J0ulyFaDT6c6NjD;1~IAP zG-0daxI)`XxcGvvN|Dj#gSp0$=K-y<$a?5%Fb7DvRQ}(f1Swq!{x<)N-T#e=lhi%d zYKqC==2N*A@@Sj#P{^<bhUuy{GL{ruuX?n&+OS%NL|}XobQy(lu?s2wiJh@_$V{;y z;1k;F`)Zo)C3OBww@T!gZkIVqITo(?Xxar5<9?gueQVKiV!WIj#jsi@B)CUOXXsM` ztZ$Y+Wm@kjc#U-V=W)FAf$n6P^FSQOLhY&`*GJzT8NSD;TpCgVf2Vrb+Yz}%+w5r! z{qfE1-8fT0yK$pcK>Kgk0b!5~Lh#?hCQisVi7EL33&+`ej&f#}{zncBZGRzZ_OrLt z?Ozm$xI+?{D{EN&OToT%ao*-|(=wi*Zjzp7*mH~y(Bs$F3B)wmjqY56{Ag{{P<&`8 z<4~R8F6KWhy6^P?9PsnSkG(X43NR`M>nI=du6udMacoiXsX5<_0G03_@)?3X4Wkh? zT^ie6Q|I?C$#8Q3a(Q|2B!3&z3piC=qR-T-xR<-nZ|R7s`SjvqbR_g|xdGAq4~!OT zWIP&)v{v((-<d|7E=qQ7<)xJpRo4@c%;$rn)6YnZ(LOK+i#_<6q@Jh^re<c)wv!jo z#_2V&&@|n^TJcO^p&0cbDAW5uqw?ongmiAAhmf7z)~P-SrgMJ!kwCyBx!qwbt&~?? zHCak<D&uCliYgowogN3o!5`#gk0cr^E!*bb#kZiOD6qWi@1g#Ayy{6?*Zr7kSC6Kc z?=M}S1^|RtHDPCE202q@$+?bB0L)4TQwL-Rc#W~&0)J_MwzlYW5~joVxmc1GVpIq% zA9Asz(6k8uZ9-1Q3a>v=C9zh9nF)eZe|vco&6-)eioy)PdO{lbhG&J5Wj9v%PLk>u zFGigLiQu_YgSB!bXShT%!+%Z7vuecy(eC+zH+j=s6g0)kxY_U26}CX~{baK=boFSb z)?%bEo(FHy*N<<K!cT>miTK$|en$P;u=T2}|BqQ&9`0RTDUYf1M(A6#AlWR2K7hyc zF`TJZnt5&sim(nThCch^d#E&=9pIjq9H%8(aUe>EYShFI5DMS77_LTP2PjHd49{~i zoF)X8+Er9x6@W{Lv%=pd<4UXmRUZRG2`AyjaCvCjzuR(|b*#qNd}Llqi~e%B)3RMW z`FN;R@0+E$xl#f9k2}+LUG64xI^Z~88hSl~#L_<tx>U_!cjSk(<k)Y6O8qvd<k*8| z8?%@ZZzW*NLo$7V(1cjl1FJ{YfC-9^JMi|{EIjs!*3Esq5%1rvP+!G}C{vZI6UJ9^ z*pvPDoUDNjB;F-23A?9V;;g$IQdzxx?J(B$ejSTq+TTB4ZW-Ex^n6`zxRWW+uV4q` zH&U{Mg{_gt`kGJYCY_iS65*MW1!W`uj7|@YD0hn4*8%b@YBgbf^A0C^V0kv6l~Fba zWO0Ap0o+APn3Jl<ulq(50Zh8bPFP2KT>tFpzo+CvlS_&JL)lRU6N~(@_$_mUl<V7v z6=}>a%(ZuYgYimvm~?~&_;Uww@yF1&4ALN6d>~H*)^5|hj)!d>>AV^tdZW!`fmp^F zw?o_3m$*ua#)ihSmD2&QH6MbtPk)T%qU-if#u?f<VCnWch4(NbI9;a6uFCQ5Jiqj1 zh-Vn3^E%ccPr6#D5U4zSN1@SsF~j!7s2I(@cf3NRxx|n!(t-W1ME5U!gS(trdiYmT zUOv65Zwwnh(?H4rm*;Ey!pL~ap%7V$!ZK(2q}=s}gu&ou8P{Ir49TXy>IU%ut^TzU z0D%Z^CWoRYEF>#8%aue>8K16r8m;YaS-EGIC6<!_gU-FO_`xu~9XxOZWdV~Ek?Z4U z(Wl=z@<%>d;!h-(ej@26-Y+@-cN=_yIXgp9HRqxIa|Lon$09Gjf`@UU-BX7q)>R&% zcN(QPblbGBV_NmOk`%Dvc{4<wf6i|CxlPquHwiv6UfyzeFLukiK8C|^>z6)Wyl{r0 zK`jSD6}VNtitUK0VQ8d{d}W~S(ZV)0>Zj(V{d69|NOioL#_7hYA~Hl4nLpgrn-8}> zH0TcO{e5c3@!PTeCF#Z}ek^fdY=qCl%Zye4{}=k{pIO5b;we0Kz77_?Pz&_+h*v$Y z&vmcX3KVEQ3<%#%y~39Ww@epDR6ZqVxvhD<<;#^Pqwx~!MV?_bHhA8M@zGz(<+Sv! zNB;!(lKcFo>-h{K%0y*@J#dA<PPf`mAL@R*q?=kt)^jPz)XdSjEBJ?k)=5HapSs`b z?PJbA@^lr<v-)Lb<?wxjjrb@uee9n8ykU1IS)-8G<h>1b#OR@YQwYAY7QvV#O6MN! zbv&%Wwi21TAP&K4sovH9cM2MAGa{Iro}}b6S4i8=2gFy}*ITV9*=Z||(q13aL6+K< zpGhi$O+KMuK(lCN?CpZYMBNJq8h4Y!=DY#Wp~9%Ibn#9~#0xC>8K|yboWh$;rhNZ5 z(#-gVCDv&3C`e8?_{Q5D=VMt6+M8>XBiul~HE&pFCb;(YFaCL>bwutFF#o{0H->hI z4-LrpUIU*m_x2-|pt*KYS0DHF7e6+l6t?65>pwv1zaYy+tT86T2<E>)VCP@D)tKvp zj)|^bMU3f?5A=0j_f**Q>8_9M+Wz0v%~M4RYQ~);AN+3=@&26{w*ku=c>TW^vO)#S zjKsGM7cp)E^3}=zAWzz4`6Fs_?*zMJ1WP4rR%1aBLy<Yv$}xvf>-xrFak?ODMzO}M zu>S{3m3{-3dav@uDocemZ^}JG8^)@5;nGsv2+ePFZtp+nYqbcV-%HMZri(Ybnyw{f zDVA-js)0!(D`*nlVdi(P%Ra>_=6?cSdFSc>fMRF>{fk^2SiqWR_}j7itfBrHJaqE( zr85J6>qcTsr8B=pB}P$*@TpHnJCWYoVB`LOfVTpg%Y&plP-C~D?^2QD&i!F5hQ}M- za}|$OMrwOwyZ?`qN`N}bOnrVn7<*i3nc9xBv-?C4-Yg44&wl_H{&N-aKTnEA;K1ih z)OD?d>UM3Rbm<3=;M+-|lDhtL-T(9Jg~XT>KMuINKl#KHB~BSc_*KY%Q|9f866gMV zgn#ceiNAH5+Pm<(GCqFoYK!L>H^m|xUQ4_H>$ZA)0IUb}e_V<U_;9U+=_dKt^XvBg zoUH4!?adiua}9)i7VNh7@7{=JUHiY2a8%4HYQ!u@+NFszc*r_Ir>5wOmq7J@T?w7H z+xS0GyR?Gy^oku*P8Zp$@Zy={<zO<T_>E1oew{}CdxQM@0bntehTfi&Sf!`0ZjfhK zDc7qr*eCrrGQIs4W*~Mw`v@Qc=rrCf`1)pHDp@tCG9k?1j%jHqaURhE3BJ|qGDR0# z%%2tyF5x-ISGk7&Bo_mB&2f7n3nfu!SgLcLdPS958uX?c@*z3au1b7gwXd({O+lF! ztn1=6`pKK(i}D`X*-FT@S?sSoPbU%n-~Xej;Xeyq4JQ^^TlG?Lc@uFs<$P9QA?1O! z<v`sz?m|jUiO5VC)DX5hdU{2yLaqP_$hx#kzC_f-iSpEim_eTvH8%t=qAN_(V(Qsr zPeraMFgI!9dth#(RqW&YFLOtCITGa4_-hW1LKo*IPZAXi9P0jdQ+|ZEo>mgOiFu+L z^|Xh8oe%aO7Jj-jq@4kEF;3MQsD7v2iNB)P<vB}JaI0CqnoKthz2I$c0fKv3cv0In zc6FqjY;xKID#_ZdMx_3SK+5ly|09s1#;3+O9y(HRIZc|;at&=^5qm1<rpHHGIn9q0 zBk0ap+9}%k>vi@G3(aA<%vJ<16fHq6SJNYsItLRd|43%T*?$&R^nx~*LM%C*yl+3Z z%5oI-o4#EBAxL)m3YG`GP<BuBPuDw7r!Un)%-_;9y|n6eu<mi2{oe$5n%@L?xTDIV z{}JH%lu6Ry!oGfTbBD;bz2;}mT@rHY*S+54=+kTZSAd6)V1B61OI7&Yc@%^%R)cJ4 zhLAD>i4R44iE3`YZ;@lUiIsYbhyEiDKVf9`m9b=ao?-i`55i$LWeQzHN}}W0%}>R5 z?7{de(EZD1jI5u(>VHNXBW$~VXuA1j`g$m+Syx1lfa5fS*tr-!{n2bIHfGq?Sly!s z?h<ybep!0UAY1tqZr6H|#Psv;8tES^u^6JFRp<{2h>>k!@%0rwWEc0gmmXa@hD4?A zgBwa9<9jvF4Sp?Ft_f6CCwNsLx#rYIG;Nm>snZ<ec9Gv}>}3nD9xR+K7^OFkrzagw ztNeS>6^Jvoqz@)AVW%Di-mz&5nBbP5->b#OAuc1Rg&<hZ%y5Hk`r8H{$ITdJKOaZ* zXrrNE5wsfpZo1eQ$IZ?6l4S}%3$PycW5uvv3dUeeIDBv{^J=<5{N9ZqrQwhj5>h!b ztA3}naF!lRC$x+}hQeUHAJhOK;+wn-45n10vKX#E{b&q*QeSvqiF$E(ATv6UIp$uE zC7)iIo`nq9D3Y09F!f=zy=K4jTxoYq4NEHXR97gU+{&LG3J8@SzSv3$=<Rw$!h|PB zIk#i+r>9qv#Fa6cWL=D*KbhJ7aeaH;!U|bU5G7iV%>j`qoHP4A$Uy(qs|otqVzdN$ zI(G#xA>I^7eUG5G&a~DQ&98-i+b<LVs|x3BpOMZ~k@M=Y8i2Y!_1K}Uu})W?=N6~O z-7C|J>f1Aq{Vpf(#e@Z58m1J1vanyNN8|$4sZq)7ZjRr%d0BWqTnQ<)^U>wuR(+E) zK>RMwaN1vQ!9l*%b_uUs*G<Z?KE|lnD{DDPEkutcIXx}Bk95$2JYl7w*>cfB_ov&S zee+RUe*Gr3l6KrT*TLzONZQ$$k~BC-&3sv~1TRm(L}EI7zqxMIRITP8eE1Qh5zfIj zMfMr~?2#T0ca*^4UiSZ?+%<||`VuS4V-N!x)I~d$eNoUF{i>&J4j&;MZu4^v1t;@K zKBgp#Z#w_y957Q8{rHeNZ<+dgWP~Y`QkIRa1}8Ihnf(k!gmtKCoQ5%ewS9}2N$~>r zf}|<MyNRctDJ3)Oz}Kp$>me}R82+tM7r2%4x#St_IZ+&c0MzDfx9R8B9UCgpBv5|7 zr8Aa|#O5$h-?}NMd74!!(T<`jw-8d&XHiUVwvcOlYM#>zmU?l%y>`t?&Cv`;F@-P= zHp$9BxIKG+!XhG}z90HfNom4RO(rQ8LxV6s?2)Ch^U(4s<=p(zpL8tfEv!RkhCZk2 zbFFbP#mf+=g#uY2n(xa_T!4MWyaQCW)|;qsE?}dN<sIU1C7ySJZ?<+SA8#a7Xgxq- z`=SWvDqUTjolAZb70KaZE?{}N9Uli$M`f4cJ3sw6!^Us7WZ}fJjIqjr3twCl6iKAB zmmYEG_<1Y^K-KQrdTl5TYGT|C2o2~*Q4;2BVk{28r784MswpgO<-;SVER#EP<Zt9J zCB=qIF6@Z(U1$6*wHpsCUtlPvMXw{Cg3oozt`W<zb&1o>(c#{NgOz8GxZ{4K*Tt`L zpu>G5TXcI7E1c$w?0Y%xzE26l0BwR^-F==9pU#dBPZU&a6YtOO4?Eb60A?0K-WR6| zCncI$BIY`^)?O4lU3xZMFSRTcaG1$LUU7O#84mJ7n9aL1&Nu$mq+qGG_m#0w$ImKC zDU54sPL~Uebj;c$3Qj99UqCEhjN)B&m&`VSTKBb_V9+S3(sqs-jYfpR#;Fuorv$&O z{=4JX;CIwEDw-FJ@uJ?aT1gY+pl0KQopwGs8D7NuTsRFKWK|8R0{WXQQ-nX=7i*3! z{RL#tInvuDb1ja;D}yulYc)7YCgdWA>-SG8o#q4uk@+?Tkv#{C_^Z!(X`LXeb)gIJ zHwTF=lWHT;Xlo(&Qvtuzr{5F1!y-rb<264oAb&=h5zk})@R9g-J`9I8^_#2K_*$kX zLa&V&Du-6T2+dO>?s$89bLDUk&teSxM%$u|M$x=dCPYCSaGjK{Y4?g^9<i<SPqbS} z{a({kiI2wu3^Rcd){PQRAZ3vCHujX(V2P}HuQX?_6BRsmJZ-T|WVLzvCK?!3&I6)~ zC%sr0*i2o_U;HgxIPyE?@SgOA6DP-rT1M5$-e`na{I_(g9^a^qboR_CHx|as<<+e2 zb>s?7Kldqgzs4(H$Q7Oe)Fy;*mdydI{p#XU$#~~Uy7(tIvYVD#m}~a*AhNI#SI&+D zPez&-c7NV_w4R~`%`^iS*j!hS>Uro+>3CCra?y)Z^W;vIFD?_AU4HNqEWboPHhCPh zK3UHd$se)tXCsWKj|i^v^oGGmH2yZ2AJV!i_emgLz`IRL6+V+?XK94OPBV}rdqh6- zR#HvdmgcOJf>)zG#RzeErKz?dI9Nn2DSd&IaC2loD)DE_OsDhZ^VscU!`1ejvFq)v z9p3ekeJtqUJI$gli+^c$1i~P1QzOa6I}({5$hzbdXicxD3vDBhL8za25)*j{3*}i5 zRoBMf<3MZ8GG$Q!w{9gb!s@fl9RbpLU2CKKGukWqpepE=xuKU&qtcVlSJK7)rzpwo z2A?RY(MKKxnZ=Ckm*<Iok$6zdnPAGA4OjLyp<uzx!&8SOm;HDhA>v+g3y0A=((+W7 zQVDZYM*Ra~K>=6?YWx^Z8!CpkM8Fgy7*J2jrUZ~toMh$5C49D=3NVK!mAS2(XWNJ; z80ppf1tqM!>=y-`HI?Z^dsz&9TSD2llh=eA4uQvuvslx{WG$oD%ax}q13$ZwnA4A> zD+{tbYi{ZFdfXZu767SX`_Z-1XaMEHuWqX!j#Z;bk}vJHds%sr!^ps@1Q#~*Y;)SZ zJcQ>f*xJx^kw#=Ydfoo?BoOPLQe+K1w{gY&H<N3XMGCG1YS962(A<pn<du1I&7&ZZ zY*Qb0dx;|tqyKpEe8g;f?Y?CV`8mZIsV;q(hoLp4Ja9)FnYP^GebKQ74{k()251T; zO-kv=AFL1#R;L`WtXd3)s`F{8UP6V*?S8=9E!3cCu*XK;tXEq$iszA%1fYG-3W4BR z>>iN)(S&(15_(CoX~s%;ne$6Xzp;8g+&UXuxtPl-X)zL9UDyQkx%7iBQ=xx@96mpE zo6dAq$6YHx<Kl(9w#RWD(@20tMbKVm^blW$j!6HcF-G;gmbZ(QWVKFg_rd{>_<~;o zZd4E;<@q>L(dpk2o>#<dR#CDj0{L)*z{%9$UU)AS)@cD=kxf4^<bnOikFN(eq@YB{ ztH*`@eTud&I@dFM4GY?5D~?NDs3WW86YB-bC+$eG@{n5(M$xlPq=nb3Y0xLS#S+Z3 zVUX=ndN6n8fObV+F7nFUjxb=(ClNcraV$NZ+z9HT2L7Ugad981G6NTdpQHBdPQowW zB)>f2W7JeY`6(7aJMw9SRR07spOo8w^@#`SjlsI(Q~L;gm9(h<_gXVK7S3HyEmal! z=3}r{7rK(<&W%yN@bx}O20vi~N{w#6H@Z$(pj(%gUmnUeNG)VVsl4I}bmDiNZ@bxY zW8<^YWXD(z8Z%ki;al1Ecp*=+2di`=Z_~(|`@Wx}Nv<MxXj(-B1tD1B8@FoIf2me6 zq9YRmiTL^Yczk}**mN7Z+t107PQd~14>4w2*t2Ic&7v^C>$|7csnG+g8qhwsP*dfr zPE<m4rRfsB+&_WW#|Y!Qse5%pU+0<Mhn9Vk>{CnL4ZhapAJoCv(Z=o=fVysQ&?=(m z?&Ui9uHjn*One}ETgX^$!ByMeEUJlEKX}%5uotqhLI8GJ^gYWRdQOa*tAn(7g4|zL z_`BKn;h*!p40vn1g+mo8lK1Rxfjao&8mK2K=qc{KG6Y#<Bb3V^(BsUej5gX`6Kv&G zq6pG=Jy{_(Qc`>Iag1KImh@9LhguEI#8lo?^k)(RibHRts!;`juR$Hx8lrFtcy=2z z#$^Iw7-W?ZtsvhDGVsIv!{y=J4w$Xs_E>hV=BD*FUJX$p>+r_JcSeot9n%*M)Z$2D zEoQ`bn#_8Pum+=A(h8dTCJsC5+figH#w@Eyg`agij}SaLL{X-t#fY5Fbeef7E0Feo z0Qos#wuB|LlSKt@LYMgic(EIC8{@O4rJaAZsVJ}J5S`w!ISW}gPv6#gfp`l=RbspJ z^lee#%ZQrA33OQq%Tqb~)cG149W<m#`6{C6bE6BHyOX|-T{CxwNc;%ogc%KY8A?dT z3So?7ey3Q@NqNpNYnzM(L4Z%fQk4!)_fRJoQJ{A+*9SEXZ9g|8dc@-Frub3&veUHY zeag1Ck%(AVvg>qs8kUC!4&Gp8FRjw9mB#+^7r~B}j<|`(T^k)=NHNwQiKV5ey0u)0 zkFiXquMwfNLD7=9pi`g%?j+k$<NI)n(O}taC?!*~jYypzJ4!BzbextCO$F6mIalQv zzD3dngkIM+C#gTQS0rdqGyHTG1Hx-!tFK5T2Ln1}L=5~OwT9j-vQAqDs4$)Jg~P5~ za9--$6&QURmKBtkckYrVj+)fR=^_Q4-vhP00fBei7Lo#I<R?{|Z3eewbb=Gj@p|IR z`tgFHwJn%;&EqDH+TTLSPfooue=p(O-T49v2n+~gnrygt{Fh+Em?Nw*T`rL6yF$0( zEUv?tzbex*ZMkUeN5i`qaMN8?F;SWqPggQtIUJzZIR)ap&nx=U$C(n?WI@Mleu~IU z`6&eU`z=Xr<(v7|HL=8aiJ4iGwC%IYZ+gWOKmJ76gcVJWEE8{x8$xBJ-WJCSBgfyo zcwaa^#Dp@~Ca7S}s<}ER)oi*_E_)HWta|$W8JT*EULX72%i>E&wg}qcvk~mg@w3O% z)h$+zFWDz~qn5c9Dx!Ny>~C+zi(+3q98Ec1ibqMp7w$>u#}v%R5-Gn_vsQ^GVKGRN zB!siC{>yykx0f^@om~pR1%epF|79ua#l=+lZ6e%vWp0`<d%3uK%ytM!$(fuKjoIwr zII9SM;Y*2!)fCJ<m5&G9`inN>4#v5YQ^-(ZyB%HD?~>8fz(1G`ckRC|imnMrm|Ep@ zAWaT#V&uBDt|}$#V1NN}E2(cAIekZ`?8R<W%gwR1H`sl4PlN^Bl`3l4dJb%=^4~bz zGRO9SObx7aj_L`Y<bgj#eLQ@XzGZaRWZxTQlg1>P-OLjkGI=a*5?=TD0()7Ber=M^ zr~oNCx@`lxTnD=K@PRDDD*7yiYxwGNWg<H@GCv?WG3ub?>i#G_P3Ws<m0c-~u}>9p zM*{j4s3EEF!=j=)h~GsCE|}~&W^{G@Do=n)Ml@sR9nd;{J<rE|&z|C+$j;WDKWr;J z+wGrsE__`QCVTNA>=u>C0Zlke8(F%8q`e{VP@vF&uHqptU7A2p5oUhi7b6>n1b_$B zSqs!z3ffr-9Mjl4+qfSZBVOoF(5ER>u6AWxUBO5T^SW1Z?EGD(L4JrAA9xQCL&-2- zJHkcTq{~g;J>BD+8j^xIx*?>U4Tl$J{hHg=kM3v0&KWWBdL#oz@u?+a0a(eBFDJ*q z!t+2S6);EW0~m_kPT~chq1|>IgZH*#aP!gB(;;;g&zlb%u-+i4?_!CWy@GXSX-t_4 zVk2PX)D<wLj1zU*+xn3%#A5pjNBaZun~Fgdq}wjO)mN+tWM{P>GxyV}>QU|5SdYc@ zx9Z;%;JWRu2geweb;3<|TOXk^@V}gUBkcp1Hgm<cTDE;+a^_ISRAr%e2zK2wV4k@7 z57)bgTYdaqY3M^1dL~u^dd0>l3?}fb$iQEJ{bT5GN<F&2nz6gmxQ*=j7rMV0^2rq> zaTTsD^xwSqGwNm^z|8AK*BXf;q{|c31uA-{k`hV(hxC)33@)D&72vPu4+X45_#bMs zsN^Utc>k?7E93NXeK#~@b-24i+S#ev_D}-3*xkR_H@cl_;iQP<{DP}@E)I5?ZJR^< zS>|@hlt*_>g;IqUPWgEs?hP%x;edb8LNq-+Yc##qFwph0=-s#76zTiRiQVVew^hOR zA#5}3A`DAqG6ejQj_77apFuV}Nk3O|Vq;y)h^2lZ_@0Ib0x$<lp4qJI0JxE8;#fGs zB%I^fYLo;t=9Irn@$&N=C;hw<b<;-eMU<#3qdp7RG|wpt4x1M>&q0VxshWbC=b$i_ zY$UT1;SW!48kZU_I7n<_)*8f*pR`}K9ACYztpF`tsA^x?6)YrTu=By1A{8@gxqv3L zQcqQYWIX)}e2N^4GyfZJNMwUwgn0>&hlA>p)Syfig4X(kom`5`>v2^#l_X!NP=MX- z`+U*j*wxvb++NYUHhB(iiOF*<zOR`G<acY*Fm<|V@nHleZ~XQ+KkovAU-l+0cW&0z z$^bN4E30LID)@f}Ez&yc3qNvr{(QKEg4>9^aONk9d>z7TO<#bMy=yl5Y0Zk)<MZj< zN>iI6Ain3Wk_0FlE29Izy@7xy2(dz##dYXj%hH@HaZ!7v7c;8S{|JiXE@isNX;Q4B z>82;cYHrR+85Cf4VUNzfqYdI42t~>NaRn28*my?l5R3-GAadB=8JZIEwr(2Iu2MMe zC%ZL#(j26(&KR5dZfs>(gjvlrh_N6Tn~C5$>;C(rTH6ZqqKyA7xFnE8T<em!LNk`_ z&0~!#c966-0-93}7FAcCnOHo%CaI*wF@=p7(D<#^cIFy=r<UL`z_#*A7tg0YwW*lc z=-J4{o!Y1+4g&nkV;#E7h1JkQ?D3*6b^3(<^(AD}ubqSxy!^^dD4NyfD>=#ft!vXS zD;L;C$o?;fHR9m2f$jh0us;0%bXeyvsNNjb5yEf*bD}VoVMe`_A~GbB;T<uPgy2wt zNVt%q9x=sz`<u3kAH&!|I}s>=^rQOkF*c8c<B`A_Y&U$`>BJ^{>cjZJM#S$WBaQUU zdfY7BEOzl<JW1Nnythx<*Z(TeH-$<^Q+92F3`#)Bkv-jvHdqDJRA;SfgLKn8#xZrQ z3!&S0j|Vlu-~u%n0zgU{%*P=40(tMGN_N<$`%rX?TxrEtg@mhZAkoREV50K!8C4RC zXI&PSAK!APD|K^PPeqrX?Iq67Z%N7SI-!YA@0a;DK|2|Q{WI^f_q8e8WV3kU9EMeX z)(&yU1D(q(Fm(0}MzGsVa!?C>Jz&maL-$11oC`E{?zTHdqnRWx0s!x*8%svizH@S& z(<|;fy!C&9TuLp9cE<2DyYYp3wPHYGY~GR@sOzfWvn#GfMN<~bJf*294aiGRE1#Av z|Kcl57*n|C;Qm)11ut!Af{_y+Hw|E;?sH08G$e;6{Z>uUc7vZ!%`R^oKZqcm=q9j9 zIYuKG*P+G}+6^sPill0~ST$gcA11Om+UE)HEak6moSyu_jd_9Fu1U?es`c*uAofE2 z_@4_h{YcXjiSo_@q$^Nd`fU>h$l0G9@aamRkokjQ^@y!^;5ED0Ym+$WVo(<F=KoBm z#dYKKITZ2gP7<N4nQP8|fc1YB3=mC>N$UaG^zt?L)0t%i4mf1!|77e1+}6HM0wRRk zpihh>PP#uT`F0u-K!FEq=oMT@ap`=<<V`?Q#n@U0%zFxG8B9px;nx1I3qh}(6U_#M z!XU8u?fmv8sBLp%GPYq%B_>hd^Wqrz#LxEfK}i(~va}ca%Jlw}rWm4qG_6YekaIMu zO7ZZ@Di7Wyf>>7}LxR+sJsiF#r|)?uHEK{mW@#sUv6tVIgLSQNHD|9$>P7+zPY=I_ zq?vT^VfurA`*w<OkqO+yFJcBDkNbSb3b1LK^{LVUnZN;AYP;33Qj=t*QwyF$&)XWl zBPqi5biK|eNl)W^!`hGfUM&7nq?G4ddm#t+9GO4%wYXH_h;;C45iq5L4;S`1x$y$J zvirNN!e2sxdyKJZV3fGMcV4j%PAQSu-oY2<30oRnzipAmWAR3tGe;+j)q=kRKjHL< zu<Wh3Teu5Xz+)!EKFhXn6ep<p)^2tSs7cjsp7`B-m_F(i5f)2z_yM2Dg9T8k#A&ZC zXNd{$4MO%|v~iOwc+bR6Ga}D-l7=RP){B3u{K~NPvTFLAYQto?4hUW(SYApc%{y>Y zQm0m^bE~kxm*aF+9zOs0UVMX?Un(Vr;!?ixy%rh~Rt4TA56B_crnLya-T^RHr@v9p zZA)G_ke!kRW_FGr>Xh%pp5%64ygUARsJne5^CKD=cJ4s1{jF{&HeMBHyRISTb<RwF zu$#epb3(_33h86X&$u|kP3e~Oa50XUUZt^btU0-*iH6*=Y|ebaUrmPa{4ZfZdjiiI zEmMN^qJP#jt>RouHh2F!U%n<p2u7UhbEu-LQrl#UHAf6fu=A-X&f3Blx1t2U8Mo(G zc48#5Y|FhjyN@Js9G15BSG$plR{>`9z2QJl(e65hJWa_$UM%Q1_W<oErl8+4F#G*y zX^76#_VN*X5_>@-Yc4{DqAW*1@R12YLK(8U5|Ew}TMaKz69GF()^*67Ah|=rvc;<( zwX~nOeX0!Is-l2ij?l8afb{@%UjRoFD3i1p_Gw>X9!40*WJ}Snyf!xvQE|n@VDmE| z?gU>I-Lcz}3C2Q#H1aukl8+|8x&3A?17X;Hk|#~~`H*DZz9&~MsaX?4ON%%h*6A0c zFxD?vO)#5B-*1N?h-=|K(G!**T}^P6XSf|`;TmoW8>)`MQ#t?89d28$$AwQQpix_W z0O)Vi+Xl%uHDAxUzv8#PHg<p<TE5KRRkyuz#`_$MZm$lLM({X?>|BV>+&<+jRVwhd zllE?0W&eykJN=+_16z0cuvap3s>A0fJP*!Uim&pIy?I<CBfAPqi-oacFrtKbOCINR zE`7)e%RZ@W&Ce9xjr4x~u=W}<F)YbYCbc>B&CloMvM7F&xf(u3XuH}sT!mXRv9*Ec z-;?U;8UB@2pS&)mp)|A1qxCFw*CK%l9N_?o=wg|Akv@wxv%R#Qk?CuEgF>rf=yEGY znpvJ>vLdYCN>$R+NQwR)9Uh=bqEK8-i7>5KERoLAj^|~HX)ye$yO-G01Q#;Ok|B?X z7)hN6Td*Mb1p=_W!sn7Bs?zR7JdqpWH;$D%RN1@Z$UvwQq-qc)L(Uf@Cy|q_ZkZ6j zqIFp@XL3%M^i{+jmBO05=zd%OAeFD){nugBa~iQMrG8x5(3lJ9sz3s;<EZSO-+X2` z#r`dkzkx(#vb5COdlJpoB%v`=O1M#<Mfv&T&p5G6OIOyRg^}q4%b=FRFm+PAJeU+Q zWVkm$?X>wM&*Ra#6)E!1A6K<jLU)rN&Oc`M{U+xBN6}wBPOFar;BNRES8I^LK2Qy_ z^NI<;09Al_&cluZ;jc;pPQN$7Elk6Qhl>v68ZV3P`-uc!B^V5If!ss)SNi|0p-_tY z5d8iEx!2krHivwrybW6fdTNsHEz$nao+W;oQe+CV48+HPkewW4RDu>baDYgMgFq%8 zb5z&I{rOL?x2#0MK=Y*Hktu>?_*}!e(WYO-#*AZ$Yz>6E$oSws$*fYNRSV)sVa8%P zu?LD;R&Vf&`dlKH1g_RRcMe(>)K_xLKZ$wr{@Rd3i-m}IlT?Cf#jcS*vt3M3&VU=O z_>i{3!0sk@z=Ns&w@0b@4Vda|cf%IN)B&l^xjoDSxOd?U9YE7j6F<sNNiJ37$O}I{ z6NASoe13^LWQ57?!R~ctqA!3_0VZ7juK_D$>sYT!mfZrYEU%JVDFO?9ud1HN-VCo< z;qZjdK}wrWIj`a?WWg7ku6IOp4eN-QAdaw{NwSx9MPi}uYwfkpcuu+z=|s8a9^;{v zxpx9TO6#;q1)mLL9CgDs{4|f-bL!9i+VfmKY*NG6POb;-S?yV#!>8X-`nF`cN1o4S z9M9XkQnBEyA2{xE$Pttft@yX1MIhn>s)WQf@0vDKt1}TCVdrr}6>FYVggrilFXB>) zZMWYXGh9U6zI#ypEg5u0bDbx*p#wZQJmK0>SeLz%Ndcm7_VK0u*cs^@S&8aPK|+2# zJyF<Fn50BDh}ccoS<|4fs=I)>71euS#O&!qa!d!n!F)|Y{yj8--E);4j3QlF`VRV| z3}zcY<M2C*0$EN2dL)uK+%=M@YJR!;jtkthI)=FXidD4ugJ0^DjeR#<8$>82Ic0{_ zg3~qw=}Z-K%(ztNaIfGms|(eRIgU*uS&Jk-#~TKnhxB(TC8yEx9|Q(6>14A7%)Pr= zWZCqFo-p2wqg%1$H2)NdSv#6NZbgSk^pST1^ZM_|(*?$V@(wJkhDXM&%)XDw?hHsJ z08t)=dtQ0^j(nk~?$`CCR20tM{7}Dz<b@PGvIa=~NXfy%qm46@3E&ab&7#Hb_!|!R zK#Re-mBfIx*TCJ{f&VVs%SbtljY`T!Sy|+sjtq3a*;Qrwqr+h|xWNMYS__4?9FNVh z1lt7C`d?;BV~3_7b>A=In=nAC&9adicfL*jh&aNNwz=Exfl+`9lK-oPLa^t@ryG;2 z*#e_RA#l)*Yt1V`w2I1IH)#w#bzd+bwJvNi9*GNDRRb4tE<riojr9<#QoWQy6h=yK zk8*_TygeVB9GOV1U}){lV^THB7(=Ek@j0`J98`X2`@%F?FB<odQi*%BR949N*eEI- zw?b~?nv5VjNyH5Wi6gZ#@XtA-sKb<bSuKe@XFH8;cJh3@y3~8}xz|1N1DwaYZTlGx z#12q}){8?<<>DG_BmO}e#6Xtu^TJ`EUSuO`l4xY=b17X)jGL+7g@`QILoc<{przg# z4e=~PLM2=9OE1{CqRLPH*tcikT~@%&y@ZBMg}X>kNF8Wb(XZ!T>~FvW1J?jqDJS*3 zSK#O^{Vdk#?Bd|^)#_ZK8^@x{t-BipUm@zY`3ao|Mt7`1Yp;-NN-oEc4;3pq0=ONQ z_xhxt3ka2vg2y_3nOp-#ilf+`?|a&w8>mdRlnfEB2vsp+j3!jCw3fFbD!i{tq9?>| zMO+ychKh}%q0)(q58wKL#m+x*k--2Ki^CF^&J^BLk~W9JJ13D&z|x@RUr{{h#ghP2 z4-a3Ypm5fsn45o+9(caKJ~VLXyl(|Lz0u`XqpmjZ%`QlioW~Jzf?{GkvRVG@HWigb zDfw1?V8=x~02(;?fTY2QGHscqs0&3FupbzU=1nE(WA2xXWT_B=>1y6ON69%R!!E`N zKd{DAfFF@=ZJpFFYib49XXBPv#Xe8dPE3d%o7L&|@q@xREt&Gbv#!5|nkvt|FHfD) zauaCa)=Ej(p{_6!$)%4?f@9voMMhJO|FzK`%2xE1B|d**4)%|gM!>~14#R4c(!9Sq zq0eN&xMn(nw?d;_X?RvP3!S{wFQ#BG+riRs*(qfq{h;FPtkXeDU4;dm;*%5es;8Hd z_t?SMkMi?6WjiOz##z57PeU?-GZ8Li>QkeB$7=J={<%I2FB9WOefW@wMaet5Vs;im zD3)bRE3raO$i<EPQyRSn69W>pOwWPEksZgp0)Q)?zkh;59yuJ#3YnT}uB-uN?3S!; zu9Drj&a{7>Cj0D6K*R&Q`sy`@N##62LHC<ZG#)t8mzSv|$*x#wVunmru(26rzq5MF z#88KoJ7`Yj$%e-x&lg^P(S!326KJVdt*jB5o(&2|MiPOC_E!^>%c2jDB9wJS=<Ady zt<d^{ATb{?+B4qYesx*rI~!8yd9~kZ_px%FdsEbV=xJqfo?yjvkHU0Me8yD#o_ONp zcr^JH&uy;Wdv7mB*gPgxsw1#doiQ0w?K$bKu*PYT_jat-0K;LixWIZURlvQlX+&}F z7g_>JsqpUCsEZlB2OxI&pD%7vyCL9{)9Kv4GaHy4wlOIQ<AmWH1L$&8J;FeA{A^#c zjzW?-g!@3aom4pE=mm~4#B+=<*MG`7eLErTb721UPX$)mYbh#p!qXA7Fr7aY3La;E zui>|a&j(E=ZtyPoI^I3G><$K;PmLo#wzqzHT?JO;Ipl0P+!NXHk+`(4uq(gSWiEu- zG~c!K3pwO`BB}pe#X&S*noS^GGx%|3$*|q=RbJlMuS17f`Qw8BjvW*)W)su8*;+#M z9utS)pXV&}&*#_gsj09XXDRT8xIr+9?2PGDVI~M!Q>Olv@PzsAQppnQG<51HgG!g# zuI!bA#%h_A&rTsOuUW~9+(#w%46}r?a8*vR>E<Tsr88stX$V-~3@Q1Q1QkA+Dchjc z{p4|Bz{i?+ZvK`!U`)laC5IO5pE`i~Lc;>df0#B;?QpFc?XA0XzVBFKvCE*-*0)03 zaZ?y<S)&>rJJ3aAD<4~B{z+|NVU^m452X7}HxU~tBEOhk($=^>jzsC<f-lBJp<$8v zDi9rejk)X*BPMT52GddQIY$W+c#~n=U@k!@dA2;STj3-so??p~=S?NvU`3#c)L0WR zld@zI8i!kz$wU{+oCmQK=JeYSp%>cJGvh&IP&(F#%3l-&g*JuP*W*WxW}yn?0+#I# z_aC>uWwDjNBrH!S+qY1yoB^IZ&G?49L+?^i4g1+|o331+G2GXV?`xV0M1{^VyE+a0 z)9bHsxt1*_{avpPTyn=zgF`ORsT$W!tQHooCcd>wb^CQ!fjSL+l|r|rX*=4=st9E= zVtQ~nt>7k+fjTfiBmf1b)I}yT1<KvH(BDmtuX=M-D4PAiaMS096GjI>@7elSZDqSx zccaZ3WtCxApXD{`sq^z^4%Dz6GT<kjl#DmI!-~0fyY)MFA{PKIqm^dvJeCw&oW?EM zB&rQ13b}3jCAE~;wzhe1VwXA0C^fo8SF#D7BEh#QWQ>u80qO;AG1~Ohq$t9?2xY}p zZE{mnHL-z4I(khd0un<3zFb~z<_+1_$_Z6v4Hc76hS3LqPTNRMn|_gdfl&aoRM#H; zDYhe$Y9*sIWS`zUz<(g+DUE0_69p0`m0Lzh4!lCsM55oB=j#1YI-MUFDHbEYwKE_} zE)`6}iUz@f@$L0U{25xhwLct#Ze;pUBUT7?Qo)6*`v)DDLYAF7-awoc8@GKRW4In0 z7<nD8R!B%Z0rOkkPD!)sD8O*g?&|Pyrc;ymzHxCO>+KWU7~oj@SM>v_gas5DU7FK` zJ>^eoVv?Rpb@>(wG!-ePc;WG1%U?GX;%Aokv7{<m(-PDx@dg=g11%8v_&>boshF$K z?Ho>bN~_XEk3;i`3X9bf#$k%6$u0|jTZyc3)q8J&Sx>k)X?+k~D|XeY@Y;klvqNLV z7xe_R{xK_&sw1=LM9brH+$X6k1A}x_f5tYll!b4Cm#o46F&Pv<TpRmz>lbMcXM$xk zNa7vmjJR2PsG6OfTc+0*QX%D&e9yt^e45FuQbRuaGr5HkXbvwVjf<q*7?|Y?-*`2) zAO5?1zGBH{`Mx%=r`yv{TcA*gZH;a(+s)fkyG(0l<<Mkz*K?p!{`-dtf|%zI+F<A% zuhTR@JOBbyVGM6(U>MNERoA4{*#kPh>s=6<g@OR6wZ4Se&8q?H!kE~|bf7@cFCS1} zkiYZfRC6;{1=0#4ZW)UIeRmEXVy0D=sV^L}3k4ZV)TlEb76sDBi|%xDGT_l;`WK$8 zgO#x!&47hcP#1WNvy`J<$d&vh^^WZBD|~!kx7uZ+1Y0OsQj8dXwY7Knbn@xt7^#GL zV+uFgPH;82#1~PrQ1$Uab)THSL^b|41M_tVFgtdBUaU~<Ot)KUxd{AS_Q6K{{9lhv z{z--yuC6q0`FmYi-ue^$z;M%&>*w721=ZMOt5Y$^*O?8y^|{X5#8c(s(Jl*Upgm+m zu%&Wy&+oKsR$sk&U+<0uHpCo*6x@)Q<89<oMu9RhnTXqvD2IS!T~Gf^Ye`2ZDa;T` zV=A`wPz!L7T#VF^V`p~y8ltKlu_70MVKorO6+)Ap-JRo*y?Idox$_h6;<p+{Wzn^% z<TFVBe3Y7nr@LA(jh~S~hDpRn>iF)Fkz{0rk3RRXub`IKUs&lV7hzJ1D;0Vqy#mZo zy$%n!#Jp|xIe<FyMI|vNE#ujjuy<W+Ogb{fr1oK8_lo>dK`4ILkIvHa#svnxL1FZn zOUndnqV6hF?kY84hjDy-ul38p<~%<>@Wguc_5g?%zx@FZ`tjLov|wmM!0Lve>`Z-n z1`aJUuZ5I_i{B?ysp+6t%T;}oESSj77Z(5Xm(7nuN(&h$(!^Gpc9-t1=MQ@~2RA2Y zH(^$>d0Cfj5|*uAZu>x;=+?*F>c>T{=NH8Qja$7}<?~xjk1rjsEL?39cd>CMpE<l2 zHlJl`W-d)0dqeR1D$(vP2x<1UpR>V<uthQtrbL9_1<WU2xqiAAt;J}?hzBD(G|}U8 z4h2$NS1-@V`1ql3D9DgV>RGRK#E!ushAxhYtu`I`SAiXCaTK&MwAV6*hGy+b^qk*; zk&!epgVT>5D$uO};MF*LB3({<GI}a?!sRmTnL_2M+Fqx!nIwCCT}Cmv6a_<6*2CPL zrsafpZ%vlNQaI|hO4sGh_poI&@TMaWR1GPUQ?#fg_W4?Ayi%+Y2&01LzEQ(#(cG&U zIwT$ZQ`xPy={1F5M{Sc(fuvzuxIjr-9u(Andye6*K)Xgdd1R%;w)erV4Pl%>bmQn& zZ`a8M6XW4trUz?T*tg5mm%S_F)X=zlo|N*;t+PMJV38-gC}20~$vu-~zUB4|aSq&L zIGiy4ES_SuwiLEB)V>W$R`PFa`n=BED;z>E8}KDoqI|~S&OnPBz5#r9z$$@88FH74 zV%PAxUL0K8Ne`^;Yp!c>tUFJIkw5t6`!NTOBXTG^_AuQq0}}Q#$?Vlfa`Z042ZvBl z2iFX1P$%?s?t|IZ5ggY%Vnp%9H-nqcZeyWe@!nevT(L4L(Ml-}&mfXo!N?CcBqyp$ z&ehxZ?h6OQ_DK{p2q@C{b_x-;UcURrKaYxQ4?BQ`Sbt09DQdCm60?15h+EyAkzDCE z2HNOWKSYj|P{F_ZnQ(yYOz9Q)ewqFTPI>O*P4FZo9Q=73jQ}<-<&zpciUd&h6Og=t z9_0!U8Ayu@Uy?zE7c$vL4WB?Jmq*17pT~ftByNo&p`O~`s%5DD;LFM#V&cdgR7{=$ zPy(pGrOu&vwcGMn(_ng@*rEqq*A$Pda%^UuG6s=TAm{h~4w?&!EDs?pxQSTm73Ykz z2#KS=o;7-~?)dVir|enpN&KroH>TEb!Vn<2)~QZpCbimhB8m!^tjeA7%q$_J^u&DB z#5s6;E1&l{tpEM8HKXdM6Yi)lb+MsQL18Eh{@AgYWgT_9QSZyT@{E6n<mlvL&*JV^ zhj8!SsprooaYk_8TDU*0CY{6=6VtOtaKj_c;(jXS-jx-F<{4diuO7PExw+m&Qt)si z)MT3kRWD@!#c5F!lqO~3=nsakXS@9dMy^wN*WT1^?A=h+v}_c<-p6VSD&9Z{@inP& zY_S0WS3by}st`U8e06_?GB#Qc&6)i0ygE)Slyj<(5%Vrv%~Jh=b4}IQ#Yb-h;RANN z`N*Yr!fCxcEQp5ZIktWU<nCa_wkC(x)Y^rSZkV3&!rF6h0Pr3=Rb`SaP9vlBRy zuyN3K6<36I98=l<gfarf{#BPRjIsTMZy>qg_bDdNBgI_oo=m|xe4y18L#_!Mc$?@U z_)PgAPXdFac}f>!ch?lYu4LQlCF3Z|U&#qq^OdzZ2w6Y7PDr3@xI04a)nkb5kxw9K zpk<I2%};simqz6$j#nr*vUE@droXUohcy-usi%S&3NdhWr*o=-8{U|@T>XoS{3GgO zj6B0`rM8u}7;?!*<R4s8r?+xr+^A3Od}D(Q^pr=`O$@}xPzjYvTZR<#>P*dEHT25y z?oN>$cDsI~of#GG#|2J4tB@n(PiLnjJl<iT^o)$LR;}u8u98oT9-&vbmkL?C-luD= zVi7NzCDV14YMzS=jw!i<gFxdM=2nPj0`0|+6u|%-<T2s}9~q4G=iPFAl%~tkh%v!L zvvGB5_NSvG*GnszeHkd}e2}81e}@!T{%=v^-<kQ;TixCvUoS*GiVg=fLhr|0vqtep zWWv#WYE<IlTm^+lRy&WuLfs2V?Ng$Sx6cnn9?+ltws)Dof50p*Hm8=(5CF}Yb<e}h zS3|GIjUb4R_l=1>^GK3|kziou@YD87yA1RFtxZu9eIfaJXs!%+@cz0L$1H)d9jGFl zCoyQ3SjjbH(Zs%SqED9TQEz^)rC{I=LlM*D^*9z8w0kOLy17K)B|KyQ06|1*9A*+g z6&ty%U|)74Cr9Pn_PBEj92L~QGzGp|Sbx5|Em3S^n^VI!+KJDlE(0b63(x%$kjww; z00T1I<Sn3+c4k+#I+Au^a6ixGQ_D8z`R7vmNRj9N@$->_a#_s8%>*dMGp8nCk~esm z!AO|WO`FloAeH^&?-$F4c57V3YyPI%Uc{+aCR^428MSbhWj9grWO&=`)mg!p)P6M2 zp`VsbnPx7YcQZU3ej7$^W$<Pr#!^RyI!jB(mBDHnNON9w>2Ol+$^0p@ed~87lmdrn z{a4odVV{_BXDo6_sXG`l)(?lrc!0bJC#<Qzq=8oEW4A_Jye2u7*_8}-Dv_=|WcX+@ zW`}CiT;wagmA$!5iFEZO*na0qi>XkEhjR9(S+Klv9qy%K85O0YkIg=yK9ld8=7bT4 zrTL$)`A&LgcoGIpdUKSNjvr4uE}c9HpFaHXw)=I@dgtEeRf86jC^X-E##Xb6F(!b_ z@!?la#K5IRhPEuWV)(ezc}dYIad-XuC~#d5ghK*bCPqsckT0xfg%W{14f0gy=8OST zP+*d?JrIOI5+{g0SQNm$kewuRzL2HhI6W5iRke?eEqNE*KHj?iK%9}RSp3K(^kFOw zC!XvfCy_X;6)G~b59GEua7^R>DiaV{mkXKVfi0u9O{9eTs=3wezctc#aj7N1W4+Gj z9Xs)T<$_Izi}Q<>b1u{LpD$rF(osQ0mnT${2<*y7-S20o^4d4PXz-U^h^qZw-%#B( znq7H3J3RZQ0ZBlhS3>b8`^O6l`sycVe<0ty7H{uC3GS#P+A)&!9uKKOKALw4E#&I& zW?<Jr+GMv~BXM6`yzYk_ANN1yfDOk=GdmO!wxubXfwT5-#c={uUqr(HJbWTY3806| zN6J?J+o+GBx3&l5VQ7s%O5=|H!W`V);`vdkeRO2v>1%cW+r<OC4PTaiSMqBFJO7Kf ze;9pI5@twcr7!){>TXW|RSwnho=J5$C2>=lNPaC`K4!QCdE{>a90}Z$G>^ZVrWcLH zGH(`X1buVtRQ2p4{a!PY0)z);mJ-D5@_J~lBn(gXobl$Ub%e;w%HaMVWA?9A8*c%~ z8*#P=#OF$1>Up+-5!+91pO;o=a<V*-HaA$slvX@fC$RH}1Eqo5V|+q;@4-*tX2`AA zEsu5#rTws)3~osPKZ?(DO(Jc+s+9PL*L7OeHJ(o%^0=;YO+Tpj3TrEU+~oY@`l547 zoXkDt1P-qfWO3r>^9vPlT@A7lSWy67OLR!2_mkptZ8Bj)Q?=KS8y|14%J|N?@~hkd zxL8S{{VI-()^yg^Dz>yr?NR4CZ)KU?ihNY)p4uduPoQH)Rii8D&#fLg(pq%pU*)3Y zWWp`WHE1lME966F;_H9%2bJTMmX$MVF}(-+KG0K-rDoMuz=xCAF-k*Iz@aYF>%$}D zuh8kvuuuDky0Oqu268L+{TQ<k_*fSs7Cx?}$JtyN2@Qj0QLZY9t2X#uTV}Z2GB{Tt z)E~c7x#dx>2VN{bvZ1&vQjgW_N&qk4+K>%vP(1v9G53~1akbsnE)MD7?(XjHH16(h zK?1=OB)Ge~H4xk(5Zv8eg1Zyk`8v=0?!7<Tr%s(;=TFyKUDegqwbq(<-`5;tOal#3 zP@@4DptacE+Wxv^G)vb)C|v5Z9Iuh5Il&^u;NJFAz#=-~R4cs8wQqzuo(|rnyA>)V zo$_7L@BF31(Ai;cLv&j>b9_EGS3Wy2-)+PZ%Vl8D$XALvfoA&?uuXQqSGJkJ=r^Q| zTx_e0TFPEB#QV;dwHW)o#<5FL+e{YrH1ZQ1+IWrlG$Q$qIFMtECIb>E#R0T3Xm&jl z$nc+F$}oMGfF2CBwtEhJH-h}t=s7-dwqkll(j2a9Pr3Xl1Z{+AvnvA#!Yd2y)KA5F zat*snuGY7-%b7+bg`P&_Irz_w5xKA$X@mj=0B<lRRsmHt>%ZBcNc?c-t@oq7dA_Y~ zYF!OQVXWTJ|J0#L)^pu(L;;Zh`?y?1(@G&p;8tbuAf<h3%Jg?S`GZtt>N_Kl@Hm|1 zDfy&p$J(ir;QPUZ+)ozNwOfPMMTLqvPwv-@z_wnaU2uj|f!~9L@U6rGLIPmoK)d_3 zxT;Zkp>h8xxBO)E6)Y9B!>V6+d36>7acfqxNuwqpS}eUTwXT<uq~U<A?pzwtI&t04 zuDtsr-;5%qk&6BG)MA@T;<0UOBtC>8m^;U2d?E@@tB*TM`GI4qKptgdfSZUIb{q|g z0hpVGs7r)n7kN~p9@C=@Sn!0g{%A-AwJZoPw(K?HxH^6Pe&t+n79Uz)yf~hH*DFoj zn})3yX*Au8%TD93Ff1PS8<rh%JV-?|>II%XTMz2o8u2_<kDJ`K<Z2;W6sYKdr00Lv zPp@IVB^<|v_n5*<0{f5*yv8Q%V$sS+4-?@iS2p~ec`{zS@vzWv>EyG@|8-_#TK!({ z8N=mCt3sH|u`joHzSt@RjSu*;)N@78DB||iq0^@fyX_I{97><39;G=(RIayFhcJ{2 z*ww}g4$9r8L=FhbwWwn43?ZXRB>hf~6Q1P?j`qh1dRP|S(!K2-U1s~N!qVj%)7@D{ zw(TV+1~$M?daN#%d~=;?|2>b4a-m#RagurEq9~M({puB&R22LspzOJ7aNoXoGMS76 zUoXP3xO1`F^J*tu8S>L7q-o8uV$F5z%&M1ndX+_+<j3;L2J%INkF(oQOXI+pa)GB6 zZaen1v9Z@##}Naaf57*CGpFql8JP|^6X<CqMx5G+K~1TMX|xST`!8O(6{L7*-wo_B z4P{q|#<Qy_KL+f}=%f)HsAH4b`G=H1?<?rzI&RHk-$e>$&XO{pMkEUSdjIXa<D3>L z`gE&GRIH^yJWRmOgpQloyGzsXZNyU^jlt-e8t<1KX?WUkLs}Gq=Jqu%KvT++dXp^- z+mcC@c*lT@J9gNzBq5A-Qf;s3S0!09A({NgiZ;yJ7*Qpt6!c*9$BgzV&SX;2KXQEx zu;mpwr_=YG@tyQmEWZnW=L7tqoW9nW8EAY`6_d=9O2ZcAgVrJ=ye9v_ss{NMBx)=< zEo&V;f9WzuY8{?N74in4xX{p|(Y=PGlZ2&?d`kvJVX;M$S+Nz~;Q4`uOgQ2Flq<P3 z8_VE5v8soQ52Ww4mVeLcX?r+VoGQnTwT6*Wvqi`I+e8%_&ioFS2YjL}cEO7SPecTU znC!VR@9eVS#=^SKMh%ji;R(FS#3YbPF|YPalb-gyrPD_13_6q+bF#NaWkVqZC9>j& zMTV7pur?z_&z#<M5SCyxI}p0IWj5n+2-&N+GOJpv&OC9`>(pp@zJC&07Oa^2zQJsx z_K+rdN}XXQ>xk8g#=*`?+&DZOHRipkGNDy#o~8qB@<F?{6*(!t<Cmss#5IE`P^({Q zKOzljZ_nB3V`4;CS;M|I?Y@jId7Z5UR2(^L2O#M)sZ4yCoS8;nI~11e7Wq&5+jJ}h z9~6e#m33X+4o}X@T#MUdJn{1FRMJ?Z7=G3I99yf03KMeQe9fAGTIOm|vxjeaMlan= zN=$6Okt@Z?8%BhV^*;u1dX@|@uBI?w;;3q-r+E#r9}b48v8wXJy6oao;;V2qiwlnB zwjRNw0h9IcgF}2!=n!s2rcP{ps=a4?cm?0DujXEg4GA)7n3_G3M>!+<#e9O*S7}8u zeCi&^jCJ0<UXL|p3ch-8EVSvoKgOIEh1_nzdA)N&XmcG7fuT*?=imP;wDAjko9g!P zf;}0U3p}gYaL~lmgohyLcHeET?~)QIiH4{8zd#$OfuBYHhBp0RXj2S^Hh0eqtAd`0 zIWAJU@yEijLW*5^xSl7|?18=3OB#_5wvs%zMB>f03p{>XaQEXbFB<K`4i@d^t>t== zO~qcLJjK$*)*i(of?kM7(TjNOv-9NwlRaiZ<M7VoO*zZOmH>^s#WWAk>gtxj&DZMm zX{3rT^A~njHBVmehg|%^m?F)ny(!7v#75=2FSZ-KzRsdI2#)rFz3ibs9(@NMI$WQp z%h-}w^Bb}Kzq%myWqME=klZ{jN?fz64klr*aPRFTborOwCd9c{@{`)W6P)(V%=gaU z?f<F0St(7)lJJER$AUr2iy2(`5;9kfH2gDxs`oB{oxRAvh#pPx_y&=HBo$xLTBunK zQm)0|YUPV8JXQ60imT4m$|qTAD#bb^`C^zt?B4&xHU$Y2Q!*bUknA-4@#9ac>onZn zxSoyqUqu!+tCt;5HQ@E1ebZ%`Z_jGy*aX%&R=f*uczBK8-%Oe;>dv;l;w{{meXspt z*Y*3)PNh+`CNU3uJiD(ijDi2!>_O%t{7&ogIqaSM8QHecBG22ho8h%C{*qFu<H)kA zkITh()-{yVXvX0-W7ls#eSE(9v<bXfFH@H2pDc`{|5gtRz(lyGEyQ25+_02XXVp9+ zUXu*VFPtLQF#UYjxtfIf6Nd_*wZsiO!*oZaF8X1uHueC6OzL_Gn%!{6QT=@?&lxe# zQDM1?qbDpR2HPoye8Oo-*e8oZn=y^-jyYpcAZ5CB9%=ZRDrQ+C#Y5GGUC2xvBz(z- zF(sbUm=#2vkz!dcd_hKus)d(5ZpwdjvNpXL?eV2A->AeypEO1^u99T<nQk`6j?nrZ z%IS5j!lF|D?fNZSPW>xpMo$e-ikNzwB8VD9*VQ$EmJzUCg&$-00S2x`Ph#_>oQ^|d z%)`2Mgj7Z*pe8lb-BU%iQN=t-_zyp?3|w6WD!Qf7(_`mOaO7<LXyW+JCh@p!(5>wq zIsVFd_6jb;OqJ!kE@?^7ob|nKP)x>+?wp-v#NtV^_*zaUea*B+Uh|R-_Ldn55)M2H zRv9D}F`3%8f+=h!H6MxYu8$(MqEv-+6NVpcM$U?XMRfnaAS@K#>7Qw9_=GDh0zZZu z*6ltB4ZG_W`FAE{yh<;hinRW$Pd%dySuxmvS7aGi{EoBv%nWMZyH{K`@^s?iN?(_$ zE97aZ611S}^`tnd=@4g!Kr~ty&mUoaMsnJt{VD)d{62I8ZYmyn`ERCs13oRuzdyhU z=eJ^bmP|>6p1CYYeCt*hJ3V^9d;j4{W1>zdIo}z1X3~>leX110a^(n`dtdt_|E4%W z`sZ`)hrrxf4jwFq=1~#Rwb1<ydKeRB6c#-oCe$V1V^`*Z7^Dsc)R!NyCVI8vQ0E3P zn-FuTVwO&r1H59EkzsV#Epw8iZZ1)D7%hemRlyDiV9?b<ltWcGmL}5#O<p*5v_BMA z7c7~y#YiVuFPRkX$4-_P=Et5-gCJyze1Ps5fHj3-G=Bq7>q24#sCkocP1hOJqRW*M zPPAdc(gDRHx_<;?7EWpG%BSt%<OdS?>B40ghym^ab+j^M05zZ?{hpgpEWv{-QPZOE z*2-$<b-76B;+4qjhKqWo{eCTJKh)x_hS(voi$*-TE<}851SYt*Xb>JO!~?xd!Qzo2 zz^?}Rtiu?Hv4w}a9kWDt+yTw|aTiCON<R99qZJYP$LU%c>YX}Y_sVQ9Lj~_Cj%^2+ z&1harqob1t#s?M7tMF7WBo&|dd=W#g+FE(4buNFk8G?T_fD7f53qccL*_W2W?s4)( z4eb#{m)d{KXB~zDwJ`-rpfMFt86a4n7+l7iI$DIq0yU~h_?~$8PR^!jwDt@biA>#1 z`9~+e<?wA&h{7Vo*CyA(dqd9l;e9|W-$Ibv2Cw95=({dLrgEU4u`67cW-qP6^Eu}Z zN*nkBB)Qq1c*e?x4XZexDQRVGlPFCmlNJ($uOTJ*3Mr`#rR2<*QW8+bWXUV~Us48O zIhbZCc*E1ko$k^&s8q?cxIUwc2Sn<qVo*^AG6X%zD#RoDmTpp%cS#TQ+plF!Wy(Dc zeL9OPulrd_$eHW8D1CJjT35)XZ~ia@6w^PdjYnfMV%>)-808X6U?dzNAeeSVIzC3P zi#O@Qo;#n(CN+%{Atva?!oZMR_y|W8#h!MmeYh84#5#&)hFhkWQu&FS-B!pR4^K*$ zdn`aQT(wJO8o=M^%UUZMoHTl>H7a<W25i=P>Gu))dPt_2$)v;J{vECx0$sB4njHcX z2#5QJsODbm3!f+=I+PVDSvYvQB;6j(Us**292x$tyCNn^cZp0%7A1-kc#BYqm5GaI ziS1^{<_faKrY%QZxmyoN5%U+THBDyfYK;!Vh|q{8!zUE_nD1j`T&jO8=5=vyckxtb zNB7jP*WRwp<xwp8YE;B)myVC2Bt8~b&Ss_s*{3hWsar1mE?Nwe5A0y);#8#KPth!! z;IFKKNylI99x6%l7cnJ7ucp7mfe_S%5MHM*4k`P0Tl>vclS1=(*tDuEqL(NImjRic z@NY|7<zFpr36J*f->iLVTfT)|t?l_EorU$+YqM)ar7u)Sq8XT7!ZVZCy+rVr|4l=i zw~-?CqH9$BIj*BRy@_Pf_vfAa``U#;j$^+@@j;Y~wUn>ANeya;Y2QzQ(~4f-%KHQB zYt;4<YntM-Cks{wO0(wyE7pn{DHA|C2h>3jZGb=0zc-+2VF5zdF`}4Is)#uYh+$A& zw7^;)Z}((wP+I0yvM<o7)~m+IW`QSn@d8CzY5q<S4OaS0mPnN_*Ab^J%&gvtvN(h` zE}M%?oa!-y{3axB44VKI8HAdjK(4_KcqzoB|6l=(+n(>HIG{CEoky=EKQIu}h{vc+ zP#tm$HlyM?_3{Z=imy<;z3TtkTEKHV%h0ms2X6=0?)_ZvmN=>-`(5l<GFVP(aZ8K$ zNh3y_Dlu4s?_)A01a3-QP`Li!g4uFd2^AWPj`Qx}P7rUH9(p7VMPyXk7&9KEy}~zt zl-x+(0NCIU1M<k=JEs^cG8NOJ58N20q%bGv#VDbuT|$_cucU~N4V!%2%+IQgFJhu_ zdO5VFScR8<KB_~DZ|*1XLbIfj4%WX0?6^pH0@DVidQ6FR(=dmf_pt{u0@}<Lhvq6R ziY4K+5!~i&6(hrz(i=FM2Id=b^kwX|sLA#No;l)M8ttzEvH>6BTlZcYG=AyR96&u= zqdrR~ITCW|@y!#QEw#Gh%wtY%JY(YMP4Leyk<gWa1vLSnQ_oo)Ob66U5#LK+gV)2% zgR|LtiQ7CapSSCdMO$#RHuOU&mq2CYUIj_^Ul8ay<pPPx7yN!z!L^hE@mB6XgLIEd zSP1vN1qUUW*B|r_<iO*i_zQW8{2JLMj%4Nma~hgh<yes=!aD5JPty>!=8FBaq(LT- z1eWD_rai*L5h4C?oE3I-V!p8CKoGp$TtahNNND+hpj+7`2{a6ZIQ<-Iutu#-7s7+1 z6vPGF)W)G(%lIM`Gem?&mgcE48o1Ts854#{_V&iIt!ld^En5=N+cSE_4go}k#T-hU zi%Z!9QPb#2WElF#!7|zQ!XZv}pcu`>*c80L)<WhKG0p<~F*BPh@WwVrJYk1|q9sVx zB?tMVEuh{KKVY+RKGebaL<$6lgEKdOw|%vBG_HO>cNJ0MSv*{xzuTLYMTtUyIOa0K zACHCG82Ds_lZcIWD0uYQW$oUoT14B3@ZoJNE3Py1<9#(zBmT-A-nx5dt@|unQzp_5 z(6Q6NC(X*vSD<b7Zg`&TWC6b(EW1rNz0n&>^f_yMzN;>T>9LIL-|lmg{+~C}{Y3qT zVHY0U&Fz!=aZxg3E7LZ-KYm@O7OGAY@*#2@dSmZgyDLe|L0$vo>hg+uBCz=4yT8X< zyWksy7&<vS-se6$8t7f)=5g(5?{>_Tg5w}Xq{f&j4MnUpreSfbnpu%F|6(4o(^8o2 zls{kp;XHBH|8O2u?F8TcLLyL2_SDQyaz39uO!<@_IdDu2J3V-bR3{Ou7<Igc7b&Q% z%smjq0n6Hy!7-wJyK{7Zvc9q)c_GgC<kI@>m-X9;L3<(^nLy(Jq5K4;I;m8(zVDRd zH>9@mN~S9}+-lLNgQG8F$=7Y-2lDMwV+B+yfucx{Qb>4Z{4~GYzudc&nG@)`G1tXZ zmYex%XBW6gKzPh^8~CnDj(m&FIN1Dkx4`>Vcx@F*??>50G;M8nIbl3P$%D(~O-CcV z<zCWTc_UdAJpI62?YQXtuR)K$Y#23+{Hv1cpw>UoOw@d_RuNS-PlV@l5h8Mn@vUun zY4Uwc^7zS>(P!f-0B{TJAFN&+IT0)P^Xu`;+=A^BxPTo{gXyb)e|q$Owr2u4sH?1m zaIbTf4Kjs-f$9r6V{O!4x*9iduVh)GiIqlMX|7fhAXayeEj?eWX*%O(Kfm;0^-+Eq zwXpz{cXB)zqegnwE-ZHW_0Pfn?RA+dU&~{_TCB)obYrSv5K1m`Wvor23^tkoHDH<g zBzb0pHywp^ME8i+;y6z{rN&ibYg$>_VXN5d-ewA|B>V;KzT^VnGKSlAIo10gDja$? z>7IgEQ{k9OR65Gi!Z=i@Z_3UFV+<O-lko)CEp5vbNoqlwyO9|O^=LI>bL1hkeB9s> zKbTmcuv4^nA#z#Sp@o7ik@>l42HmdWg^V)2dFb|t#ogKK0<UuWbDPR?0X{8Y22I)e zM>@%?Aplh@C0L9zA^wjThbSK`#$ib1cg8j0ytvP_vFgJB&vWpa12&$36p*XG5`pR~ zN63c8ZY-pdy7$!a7}c#<2Ci_MA@SHX(RbMb8AMg#w7;Y#HIFu5H9ehZ-`@SaZJDiq z`{ed`37wOE^|WxI#bWh4lGaz?Cm6p3pF3-gY)l}MU1>r@n)>FYqn5Ex_(E1}9Q+IF z(QD$+v3?0H%Q|ntfjWyEX#yiXm@;YxBPTla%R~@j0{jbklpN{Xm_{4y!Tue|&6jDu zmTC>7-Oy0qhlR50jqVK^(Ds=bnr{yM`UE0{bLazJn}m*jFcwP;6x6%6IY&DdOCC`S zsaD%2+f7*TMX^pEb=Ctzf>`iar^#<+KS9-6{Sr*9q|KhyUWPu2*I!AGk|CcnHc9LX zpp*Btc+L5C-(=CTtVG}b)H_{+ZfU|PuV7!!8kzr5^gwQQ;?Z7cEf0EtZPP&5%Y$P8 z{$QH|kHIX`Ia=4oGcN39EX12AT*u|&kS24<>jX{9NdG1P>fz&NF7sva++QgXiO3L+ z#|RZ0{jHYu^;dm(--+`tn!c+Up4qL8(7tP|ODGra3F2?(kKcww46Jyh|E>Iqh3GFc z+a-A<ferAU>NfHe6aFM2MLskrMDM@+t0s*sz<b93C9)zh$#Se33MpQeRYWx+ik~|C zF`FT*zfv+x+4IA&`7zqsea57(1G2J5u4Arn(+Q5T2bRWT+4*^6Y6G#VmgaY=^@s(& zQWj1Un0S_&ccP7YfV|#?zJR__O=oy?=3JL>qdYh;wtnC9JAEO4C~RI6QdU5(RO(qG zEw*1v1%69W`FDo0zzcU#4O>{5V-%vhRi*;*EQ@3l0q5VkCI#7~6M^UxcBfHiB(25P zt;LIP+*XK)?dQDat7@H@Z~G35f3`&kqBLJ3{GMNXW@CxH4zi}L3tN=MlrdOoL)JYT z#x^hUxaUEcdee$Np{NcOw@4<<-9FcZBASkM1iBYr361L29kuMDr3rExGu_sw9e93c z5ohPDWxrjXvT+I<!4Hq=R-X%!L{9UPTybr9TIE*Isi?N0ac8fel%IEbzL#6OLYJ@H zKIh`qzO9RRM#rG6pfLA2l&~-L+LdM*pLvnx5LyU{N7qA|r%SBAh?uv$xjiqGv2n8H zYvSw$ALtl;UElM0-kj>J@K3Gdr*4}1`HL)-30a{owW7gp9y0%V!-OWKin!`0Pi$<_ zqEh27;S&aG8EIJD@z<Y7)@grrHFkRJ_KtL5U5!q|zjQTDuBFqi3&D(7d4;1?)s?BP zDpxD+vY}MfOsTFKGnA_kZgQfwY=Zh~q{*k9qMBp^Ir%B*A@~a=P+a88#+IeWFLrmG zu1~%d-NyABOQpy^@7~#G4Ubnpmzuk`SvP!>KXUwn`2O1MFl@2f%O$Ei8~NCuQ3dI; z8r$UAuJ!Hri!k#h`)Q8wMw>A1#<)96jj=5X+I@@pXQ*eUs&pnK`-(Xa=u-tB?X7?C z3=<O=&wTq&JX5>^Q}+LaXUHo46VJp60cg$M&Ap}#VHv_cciR)>3*6y7a7M%f@0Ju6 z6_<L%K9%rUP4mpy4-)kL4w;~h5R4?B?7cgR6m;1O#iK`&o`mA(o@<?Fk~z)fY=mdO z0L=u=remnR`+H^h*<2x>P)5x*FzU;AqWFi@d^xg5=Fl*{j~V#h7D$173j(Y%I&p^D zzsjsDr{5XuSU|AEEN+a;Ewt>3Tx^tDM0k*?BYK(hSpY03$<<*Ds^jPq66n}LY7a># zgr%6`g}A5mK!D93@?iQ&QZ-h2k#HHvAek*!mqM9%s_34_qF>XrK|nG}0GTR6cu%XY z45l~;0c8V>-Oc4OV<S^(HON#EV>3iSQ<XqU04-%iAyq_0pGwJk#@H_v8sJS(YdI=) zVK4xrtXHBNu?MF9A`t=OOHpvRDUVA~ctxKgqOS!q=La-4vRwo+X#~EWCfy-4@tA*o z#m)#C{DF83SQ&&qgce~bN<~XECK-c(sfSM`eRx*Z&DW<%2UTpW=npdM5LnfO6BFN- z4D5zKFdPu2%3q+h*>U@lglM5lmcQdYGU(bfc(lAXyzlfS){3hqkIM@U>GS>h=igX1 z$93=C5L(G4gBbj_GlS+L854<L5tVj;v5;a^Nm)n2aJ*;cC5t1N)r$<lE!pdaChk?D zPPMa)Aroom1&?oIIQZ~-0|=GVnQ^V3D*vovYu<D*h}6!|1`TvqiGOk>UJ3}7;tijA z0Bd{X3Is9npNBr9=c6G7NhQJNPZPPA=1&vP{NWl{dtN(RWrH&6j4g*dfn4zMHB235 z9`L-l;H@{gfLnI3=XCX&1!TvuxW=@V?NrMl|42;x#=@thSof-Gvl&%r^&ZdpJehZP zYU$;dFSX*qIxAn8xPkZ3QGaoMw&5S`nX&~3p5_O9z5=Ut*!upeb++)W<eS~|rG`F* z2HP!I`h5Nj@u|%dN!r56EirBceK;zlW+L|JJEsV~Pb{Wjva)<G0`TPl&Msd7`>G{w z5e$=37JuEw@iMYu6B9Rg>h#A$kqVXUwWea|bxd6ar{oGT`Tmj20AH~VcuYy#$Dl*c zWfg|Hd}oP|p=Z2H$ggLVOXr^+BZ^8gs!AgA;TzvRSiC~Wq1JU2JFzdPZObfwwbJZ7 zutz(t<vg0jEh1KC+CI<{y3@)Ti}ED=eqcU4_?wJk&MY5WKD@LahCc#1q8i()*1yuj zv(}Hv-qWYE65Gq?Rg^cxXRDb7w>7unrqJBFEg06^<602Q+*m|A8vT%AAW*)47DwnH zBJTT|0PbPo*toSS4bnRNP_)wVuljr?e(x27gH$vz4!;ivdDd|48F4JZ-bW3Vq8+E5 znZMtnridjR>%BtrL-KbID-~9^8R9oU1s6CUsGP>~#bpg_sGR<|%>^akO2}5Ql9cKE zF4;8oDj^iSX$l2}9OO~LsbvKx9NJ{5$ZFV>I2p;ARrah(4uy4alTjdh#F9~LGmeD$ z;|QmO;1V;6gLlrLqz1pRVoX%{xJ`XgLQy|QNT<y!bA&J%C1ueH&7R}@dM3yt)YciY zQ~A&d@G#_AaYs2=G--ygiDkn_l_I<p6eov0iPJ=sQYp3q1_8OCw?w?xsZf}MJd!8D z3{;fhuZQ5@CWzS6AkLDKaOhjT=5_1%iv2OZ$>D|<sa7jKq*L-!m^m^Q{<fT5SR{+9 zOvx0gP?$x)Cm<(3ek~z=5N?=Mk|d|uT@V9WbXrj{nMEHjJIDj;YHTQs9KW_R6BQ#> zN}(|3Qp_q`3i$S^uMV7$oU{X^Adj2;1auUc#E<3`Ty&PEfIFv<cHX|60CIxDq%Z@_ zv|#%+Kxpwz1FhgwIdYOR02NzR!q?^p{2~o(IS_nwRIF4*-1KzV00PxCUygCXoFz^Q zKL0z6oLL`;UR*YbS`+<)0yBQ?3b%e+c2L}*9ftV!mwQ}sP!p=6RZ!m)14%V4wRIN) zp6XDTni)HJGEsNn1Zv`tpFa!rbj=G}IM!jLYy**xj1=%vUkXUK&}-4lR6&mXb3z?> zbL%`$yVViK+pH$S?sPw1>HPQ(*IyU$Zmp6t>L7Zj%-K5NDeudqwIGmPENAdIea!$m zHo5bi5(OvIlSUq!Uvgg+2z#E7VT_f~#-aCH2@0gqo;D>I`eMm6f8<#P$8luy$K$Ux zp2*ahvr4)L%l^Da{#}&jBV`W`&bFz#9*>AS3N5^*#W?aP7azpr|1p~aNyHI_lTLBz zi0}*A*QJZDZw43$z0=BXVe+hkcDsO%PY)W>&wJBHYn&vnU5yv_AeDUiM3x!Dr!n+{ zfhm)@gOIXcocq=!_YZ@jcGO|=k26@9-MCY}=^3S!UA<Br8&5O;*<zCguqL>!e!U@q z?3W$$iQ?e7aemMTDg`;E5535bT2?x48Ou)>{U&ffvzu_EuzwwM_WUw-TbUgvM6<0> zlyNz;nN%L1LMNWB5)xYfyF$*P=7%7zrdq(-?pCUkYgNVxzSCF$$kd}cli%BXixcRu zjqQ|%Fxe~tNl^-DCD=3;5s#yo>1ecVMfxseDhM_`Ynn0`YH)=gKEv5SDN-wnk}2}8 zjm1;fQOSLJM5PKM{J*U>=A&qlEc#TtVQJ1m#B$V`k%VYp+QnniItiz9twtiKx5not zf~nD(yn<QDg2MZPKe)k}iZ@ZCQ~RM(XF0?~r4J?X=kH5o<J#Fv&|sp2#iJo-;vm$& z2SGqKEzm=@zbCIaD2z;%HP05(K`2X?3V^u;9-o1jnNZd$&ZZ&(tFf;QOY;+%{CJ!9 zb8pm_3aJ!<+!p4T*H8S)+ibki9H}$_EDXKdD`18PR)(Z}?8eU$5WLaj*S+wdU0TY) zZfO0A-IC!yAF;p1uTmyZ;LF6&eoQD3*zZXw5Gp({tQuM!>~)rePCe3M#5c$OZ7cP6 zO(ALuQq7-w{iGMOm8k^l_FYrs5mZ7lQ~kQr)uy1u3HZHS1Df`TMUi7?BW*zBfw)#r zu=#3@hu(mrn?om)vagzJLs*51l^L{s-e8$$h7rp<5HJKCd$_UxC$g5F7Z$=t<sO_} zI`tZS&f@xhdh~`zdsqlq+XzenoouSBuqmq5A|`i&_B{ml7rWmbXwVpJ6Xcd>N~pEw zFd1y`?os9Ht5q?3JP4rW>OGP{W3=ODlH+d<;<`rombz|*#H^BZ-YDE(<hHzO{L}#( zJI~KWm!TcP1^^P@(J{(Y2HU5nZv$9dLI--sSX_bk@dX)oy#g2vwh>rd!By#+h8)>g zT<ztZO%HN~I;t)=-Qu!{x$?B(k=4I`h~`szP7UEwP3J|JIZ=d#o;`sJivv$HT3<a~ zxPQcFaoHPAr4q`r;mQ)-@=JF#c2KqAP+0Gp`B2z8mp3~F1)R}?4!+sf8U#pH1aL)x z0zna#LMt(l-jQ{yh@MLL<@+spJUYPuGjjZNz<JUV)~kX=62>UtW$B;d{Z#(xZks+V zM_r2cU)6hjHzBP%b12sP@E6BqLK=Smopaj13b;!4wRnnfEOnm*88QE7JXDlG*2<~K zBFd)?yL+Qo{ZO-f9&x9v5S?<F-VJijKDJN*l2Z{^Uq6nV#{X8n3;*xsJNWW{FW>(E zbNM!xq@e#5C3SOq9W@=6<HF>|X?7{>Oi6=$p#Y?a_yi=QwbE2kputxS&!+^R=2I$t ztxDELkHt2g)JO)ee_|9n1!xTUo<(n;faXaFpGYRFt@%xG04fp(I7Nz~is5wOFw{8F zI-fI{)|JF%ZW=$3IW>DBl1)eUuv1WmfFA-_PCjU<p)hf&B=kfyJTA9^8ANcw-j0>! zWb{=qgY`5=Cz2*fL7R8PQ<blErzUVP#d4}~%OM9<r-s6Ez-u2%Q=fPI!eV>h$kWmK z^Nu*;@~fY1alEQ_ea1L4`Bv$m6kYrK%}YcHRQf9krwR!k=Md-#w=MdmBsNFj8is=& zPzbEWn?$AtJXcyQ8WW?R_bA@sO@A)-E0pp$gGxNbRfsqAOgL+Y_Mo%MMO&4(G|4#e zt|zy6B0Ca1mVR0*n_>%&`TM_O5OGIxAK`^S{Jd*}@C%@pb9%Gup$ZvqNjOQEtAqU5 zQ2P46E!jT_Db0$ZN6JQiNVQ|PtX^p^HZUP4wU>Y6&Ee}I;P_(JmS*@&YFrv=wJOY& z!d95Y@R3`Dhuhecg?DEJntkG1icXQ-gQ;32!UtyLw<{7_BoP%&<X69MqaTp!pQr6R z1@&(CrIQLb&wJOAM$7Ql*X;K;Qo2qLRvRw*7MJW=g<$jG$Zq!`GNS>D3Zj)VoXS~0 zk>+h*eV%!GG`Zk%#_W1qTV_Miw7YzHPYch7oN~UK1^v+EX{Clw)rTG~Ts=?E=Lq)c z*SW{w4<*G2P(WNQrojlD9_7&n-la3>FCTN+S5NtV=n8rIb^FJJ^IQP<*hfvhdH?MZ z^y=yKR+Zvy-oC)y87)`8$iz`&utmVXSxGx$FIT|9>LJq7LHzvlxp6@NIW~4!{usV& z6dqy9qG<p1B6ZpdqU#2iwGpDxPL#)@P7JmFPu-*+Rb4|>&!1cFiw_C$4T7^W6I?Zu zTY&+z>|8p1Tf#o}IGl*ko!C%sR>rvr?~W!ev90NyE|t@kDS_RFxj3nj`QO?){J%B$ zjuse|HaxSup*+r-y%+1HvD;VV*WquI1sd-x^V;syC|J_C>A(MaAF!md_McH(4P6k+ zs0i|>X0nR+1f|n!hU<2fshL(3R<IrC*}~eEl|{@)NNSMCTzxYP5&CFFbLt3bHkc8i zDvHnz#XX|sFJ^NmtHp`PnP+M!A0BH0`%Ia>HPsuJJ>JA#X?;k>CwPbJfS@0N8`WnK zMua(%IE#je3V~4iS2+nw7t!O<a~`;P<;Mo>`!BRE2#ryjtKX-b294$a^OWS@ggy41 zHXr+YQcxLg==c6l!aYVQ!GGdI9@!ESL;*VYpQbWZF(u_JewC0XQPP=ele&kusyG&j z$}RbAE#G&`udrpSluaF>AJC|#)G08)sKH5%W^^M~RcQMuEb+o1jvnh2w|Q-4*>l1k zx~^I+B2@Hp(tYTX+|LHsiuqQ;NKF2|zTl;ayHj>th&?+R_{81Snq(bkGc(!kn4JU5 z8hFw4U`l-X2EoIUv$DE)(kZYOJ3G$h>E7t`=sE+P{fT(Wu8lK;1gRsM%!nWn8|i=H z^t@nBuVTW!_tsdTC9x{pyL!&E;K0A{UT>Opc$Qj@GHZY480xVi{EOdWP0yUWL{*3* z$|&+%U3I(r##?fdpQ{!lHqAZ>7}IzCq|{+H!;0M@`A-KfD%gRW7+$!Qwyz|eASH=` zk&tg5xlK8icdh#&u2J+asW+p>ZUFmmHTVM3Ym9f71tT(piVwynv9Bqs$KKhCd6ooi z^&Ct_Ek6GTzIVCos6Q&=B0;&gQTho%Nv#ixLfJ#!jxU1(#F{dib7C~2B{Fev5RTLi zCL-u%4W{RoVuM!LOwDDHmQ5VwB`EpSIGV*z)3Gz##>Q;=fRSmRhG&2u@2Cia9_QO{ zEwkG+xcAx}%3YR@+;a4ra4w7&3t!pJ1S1_w*D4h2n?slh>KV_gx5n!(OC>RzWEZH$ zbLakQ>bVESAy^ryB8Dx##_Vl6)mp%OWJhOv`H{8-^Lu)bO+6s8a9EP`Kvl`?fiIRr z#Gr3t@d}OzI9?5*QOG&{h;<LhcR&|2&M~HM9-{w(M*qB?LyGnI`^3Sw(r|u~LAr7E z>TNVIq|vAR1zyEmkA55JWsDHZ^m_tX$3)~~JR0}*8!0gXnSl~&zf^*o+_g1@EZB=4 zkEZaq%}z<t3C%%~`!I34MHi12@~{(+X28a#YSC_@(t{f~{5{yH>JYZxfGi}x%yKz` zn!<gzTfVY_hxbiODnvB}soq4@43kx(AwcPjM1fI-Y>&Nlo_$i7T1*mk8(G-eS$!*3 zC<fJ!6R9-oBMr_UNmf6g>X{6SC`3G@lsC$$54r(5YGAM*o{kJi%s4U&eb~7HM~jZi z$QX@}p(iW=5j`6V&wy-Bvz&{8eT4bA#q1C`�nB)_~Lj%M=I|Xx2-w@8>~)MuTZ; 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%0DHiqbDnt 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�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%0D1N-EMj8qd!~-Fc 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 *6*BeNX5a3Gm4pL;&j*bpZ;IHIgnTC>$m=K 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ÏI{%sV)Q20=JwwsaKF0 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�lKruI<#GAx3M1_R)B3B>$HHy%KkF|Pd5Y!$YSi| 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%0AE7~F6#mtK9 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�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%0DPtI$|4n0R>_eq>A`) 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�RfBOPP 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ℑDkaVmFj89T^~XI;}rg>){j})1~%{W@1QN~SAKwv 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 literal 0 HcmV?d00001 diff --git a/x-pack/test/siem_cypress/es_archives/auditbeat/mappings.json b/x-pack/test/siem_cypress/es_archives/auditbeat/mappings.json new file mode 100644 index 00000000000000..3196232e59643f --- /dev/null +++ b/x-pack/test/siem_cypress/es_archives/auditbeat/mappings.json @@ -0,0 +1,3577 @@ +{ + "type": "index", + "value": { + "aliases": { + "auditbeat-8.0.0": { + "is_write_index": false + }, + "beats": { + }, + "siem-read-alias": { + } + }, + "index": "auditbeat-8.0.0-2019.08.30-000021", + "mappings": { + "_meta": { + "beat": "auditbeat", + "version": "8.0.0" + }, + "date_detection": false, + "dynamic_templates": [ + { + "labels": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "labels.*" + } + }, + { + "container.labels": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "container.labels.*" + } + }, + { + "fields": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "fields.*" + } + }, + { + "docker.container.labels": { + "mapping": { + "type": "keyword" + }, + "match_mapping_type": "string", + "path_match": "docker.container.labels.*" + } + }, + { + "strings_as_keyword": { + "mapping": { + "ignore_above": 1024, + "type": "keyword" + }, + "match_mapping_type": "string" + } + } + ], + "properties": { + "@timestamp": { + "type": "date" + }, + "agent": { + "properties": { + "ephemeral_id": { + "ignore_above": 1024, + "type": "keyword" + }, + "hostname": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "auditd": { + "properties": { + "data": { + "properties": { + "a0": { + "ignore_above": 1024, + "type": "keyword" + }, + "a1": { + "ignore_above": 1024, + "type": "keyword" + }, + "a2": { + "ignore_above": 1024, + "type": "keyword" + }, + "a3": { + "ignore_above": 1024, + "type": "keyword" + }, + "a[0-3]": { + "ignore_above": 1024, + "type": "keyword" + }, + "acct": { + "ignore_above": 1024, + "type": "keyword" + }, + "acl": { + "ignore_above": 1024, + "type": "keyword" + }, + "action": { + "ignore_above": 1024, + "type": "keyword" + }, + "added": { + "ignore_above": 1024, + "type": "keyword" + }, + "addr": { + "ignore_above": 1024, + "type": "keyword" + }, + "apparmor": { + "ignore_above": 1024, + "type": "keyword" + }, + "arch": { + "ignore_above": 1024, + "type": "keyword" + }, + "argc": { + "ignore_above": 1024, + "type": "keyword" + }, + "audit_backlog_limit": { + "ignore_above": 1024, + "type": "keyword" + }, + "audit_backlog_wait_time": { + "ignore_above": 1024, + "type": "keyword" + }, + "audit_enabled": { + "ignore_above": 1024, + "type": "keyword" + }, + "audit_failure": { + "ignore_above": 1024, + "type": "keyword" + }, + "banners": { + "ignore_above": 1024, + "type": "keyword" + }, + "bool": { + "ignore_above": 1024, + "type": "keyword" + }, + "bus": { + "ignore_above": 1024, + "type": "keyword" + }, + "cap_fe": { + "ignore_above": 1024, + "type": "keyword" + }, + "cap_fi": { + "ignore_above": 1024, + "type": "keyword" + }, + "cap_fp": { + "ignore_above": 1024, + "type": "keyword" + }, + "cap_fver": { + "ignore_above": 1024, + "type": "keyword" + }, + "cap_pe": { + "ignore_above": 1024, + "type": "keyword" + }, + "cap_pi": { + "ignore_above": 1024, + "type": "keyword" + }, + "cap_pp": { + "ignore_above": 1024, + "type": "keyword" + }, + "capability": { + "ignore_above": 1024, + "type": "keyword" + }, + "cgroup": { + "ignore_above": 1024, + "type": "keyword" + }, + "changed": { + "ignore_above": 1024, + "type": "keyword" + }, + "cipher": { + "ignore_above": 1024, + "type": "keyword" + }, + "class": { + "ignore_above": 1024, + "type": "keyword" + }, + "cmd": { + "ignore_above": 1024, + "type": "keyword" + }, + "code": { + "ignore_above": 1024, + "type": "keyword" + }, + "compat": { + "ignore_above": 1024, + "type": "keyword" + }, + "daddr": { + "ignore_above": 1024, + "type": "keyword" + }, + "data": { + "ignore_above": 1024, + "type": "keyword" + }, + "default-context": { + "ignore_above": 1024, + "type": "keyword" + }, + "device": { + "ignore_above": 1024, + "type": "keyword" + }, + "dir": { + "ignore_above": 1024, + "type": "keyword" + }, + "direction": { + "ignore_above": 1024, + "type": "keyword" + }, + "dmac": { + "ignore_above": 1024, + "type": "keyword" + }, + "dport": { + "ignore_above": 1024, + "type": "keyword" + }, + "enforcing": { + "ignore_above": 1024, + "type": "keyword" + }, + "entries": { + "ignore_above": 1024, + "type": "keyword" + }, + "exit": { + "ignore_above": 1024, + "type": "keyword" + }, + "fam": { + "ignore_above": 1024, + "type": "keyword" + }, + "family": { + "ignore_above": 1024, + "type": "keyword" + }, + "fd": { + "ignore_above": 1024, + "type": "keyword" + }, + "fe": { + "ignore_above": 1024, + "type": "keyword" + }, + "feature": { + "ignore_above": 1024, + "type": "keyword" + }, + "fi": { + "ignore_above": 1024, + "type": "keyword" + }, + "file": { + "ignore_above": 1024, + "type": "keyword" + }, + "flags": { + "ignore_above": 1024, + "type": "keyword" + }, + "format": { + "ignore_above": 1024, + "type": "keyword" + }, + "fp": { + "ignore_above": 1024, + "type": "keyword" + }, + "fver": { + "ignore_above": 1024, + "type": "keyword" + }, + "grantors": { + "ignore_above": 1024, + "type": "keyword" + }, + "grp": { + "ignore_above": 1024, + "type": "keyword" + }, + "hook": { + "ignore_above": 1024, + "type": "keyword" + }, + "hostname": { + "ignore_above": 1024, + "type": "keyword" + }, + "icmp_type": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "igid": { + "ignore_above": 1024, + "type": "keyword" + }, + "img-ctx": { + "ignore_above": 1024, + "type": "keyword" + }, + "info": { + "ignore_above": 1024, + "type": "keyword" + }, + "inif": { + "ignore_above": 1024, + "type": "keyword" + }, + "ino": { + "ignore_above": 1024, + "type": "keyword" + }, + "inode_gid": { + "ignore_above": 1024, + "type": "keyword" + }, + "inode_uid": { + "ignore_above": 1024, + "type": "keyword" + }, + "invalid_context": { + "ignore_above": 1024, + "type": "keyword" + }, + "ioctlcmd": { + "ignore_above": 1024, + "type": "keyword" + }, + "ip": { + "ignore_above": 1024, + "type": "keyword" + }, + "ipid": { + "ignore_above": 1024, + "type": "keyword" + }, + "ipx-net": { + "ignore_above": 1024, + "type": "keyword" + }, + "items": { + "ignore_above": 1024, + "type": "keyword" + }, + "iuid": { + "ignore_above": 1024, + "type": "keyword" + }, + "kernel": { + "ignore_above": 1024, + "type": "keyword" + }, + "kind": { + "ignore_above": 1024, + "type": "keyword" + }, + "ksize": { + "ignore_above": 1024, + "type": "keyword" + }, + "laddr": { + "ignore_above": 1024, + "type": "keyword" + }, + "len": { + "ignore_above": 1024, + "type": "keyword" + }, + "list": { + "ignore_above": 1024, + "type": "keyword" + }, + "lport": { + "ignore_above": 1024, + "type": "keyword" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "macproto": { + "ignore_above": 1024, + "type": "keyword" + }, + "maj": { + "ignore_above": 1024, + "type": "keyword" + }, + "major": { + "ignore_above": 1024, + "type": "keyword" + }, + "minor": { + "ignore_above": 1024, + "type": "keyword" + }, + "model": { + "ignore_above": 1024, + "type": "keyword" + }, + "msg": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "nargs": { + "ignore_above": 1024, + "type": "keyword" + }, + "net": { + "ignore_above": 1024, + "type": "keyword" + }, + "new": { + "ignore_above": 1024, + "type": "keyword" + }, + "new-chardev": { + "ignore_above": 1024, + "type": "keyword" + }, + "new-disk": { + "ignore_above": 1024, + "type": "keyword" + }, + "new-enabled": { + "ignore_above": 1024, + "type": "keyword" + }, + "new-fs": { + "ignore_above": 1024, + "type": "keyword" + }, + "new-level": { + "ignore_above": 1024, + "type": "keyword" + }, + "new-log_passwd": { + "ignore_above": 1024, + "type": "keyword" + }, + "new-mem": { + "ignore_above": 1024, + "type": "keyword" + }, + "new-net": { + "ignore_above": 1024, + "type": "keyword" + }, + "new-range": { + "ignore_above": 1024, + "type": "keyword" + }, + "new-rng": { + "ignore_above": 1024, + "type": "keyword" + }, + "new-role": { + "ignore_above": 1024, + "type": "keyword" + }, + "new-seuser": { + "ignore_above": 1024, + "type": "keyword" + }, + "new-vcpu": { + "ignore_above": 1024, + "type": "keyword" + }, + "new_gid": { + "ignore_above": 1024, + "type": "keyword" + }, + "new_lock": { + "ignore_above": 1024, + "type": "keyword" + }, + "new_pe": { + "ignore_above": 1024, + "type": "keyword" + }, + "new_pi": { + "ignore_above": 1024, + "type": "keyword" + }, + "new_pp": { + "ignore_above": 1024, + "type": "keyword" + }, + "nlnk-fam": { + "ignore_above": 1024, + "type": "keyword" + }, + "nlnk-grp": { + "ignore_above": 1024, + "type": "keyword" + }, + "nlnk-pid": { + "ignore_above": 1024, + "type": "keyword" + }, + "oauid": { + "ignore_above": 1024, + "type": "keyword" + }, + "obj": { + "ignore_above": 1024, + "type": "keyword" + }, + "obj_gid": { + "ignore_above": 1024, + "type": "keyword" + }, + "obj_uid": { + "ignore_above": 1024, + "type": "keyword" + }, + "ocomm": { + "ignore_above": 1024, + "type": "keyword" + }, + "oflag": { + "ignore_above": 1024, + "type": "keyword" + }, + "old": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-auid": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-chardev": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-disk": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-enabled": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-fs": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-level": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-log_passwd": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-mem": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-net": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-range": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-rng": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-role": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-ses": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-seuser": { + "ignore_above": 1024, + "type": "keyword" + }, + "old-vcpu": { + "ignore_above": 1024, + "type": "keyword" + }, + "old_enforcing": { + "ignore_above": 1024, + "type": "keyword" + }, + "old_lock": { + "ignore_above": 1024, + "type": "keyword" + }, + "old_pa": { + "ignore_above": 1024, + "type": "keyword" + }, + "old_pe": { + "ignore_above": 1024, + "type": "keyword" + }, + "old_pi": { + "ignore_above": 1024, + "type": "keyword" + }, + "old_pp": { + "ignore_above": 1024, + "type": "keyword" + }, + "old_prom": { + "ignore_above": 1024, + "type": "keyword" + }, + "old_val": { + "ignore_above": 1024, + "type": "keyword" + }, + "op": { + "ignore_above": 1024, + "type": "keyword" + }, + "operation": { + "ignore_above": 1024, + "type": "keyword" + }, + "opid": { + "ignore_above": 1024, + "type": "keyword" + }, + "oses": { + "ignore_above": 1024, + "type": "keyword" + }, + "outif": { + "ignore_above": 1024, + "type": "keyword" + }, + "pa": { + "ignore_above": 1024, + "type": "keyword" + }, + "parent": { + "ignore_above": 1024, + "type": "keyword" + }, + "path": { + "ignore_above": 1024, + "type": "keyword" + }, + "pe": { + "ignore_above": 1024, + "type": "keyword" + }, + "per": { + "ignore_above": 1024, + "type": "keyword" + }, + "perm": { + "ignore_above": 1024, + "type": "keyword" + }, + "perm_mask": { + "ignore_above": 1024, + "type": "keyword" + }, + "permissive": { + "ignore_above": 1024, + "type": "keyword" + }, + "pfs": { + "ignore_above": 1024, + "type": "keyword" + }, + "pi": { + "ignore_above": 1024, + "type": "keyword" + }, + "pp": { + "ignore_above": 1024, + "type": "keyword" + }, + "printer": { + "ignore_above": 1024, + "type": "keyword" + }, + "profile": { + "ignore_above": 1024, + "type": "keyword" + }, + "prom": { + "ignore_above": 1024, + "type": "keyword" + }, + "proto": { + "ignore_above": 1024, + "type": "keyword" + }, + "qbytes": { + "ignore_above": 1024, + "type": "keyword" + }, + "range": { + "ignore_above": 1024, + "type": "keyword" + }, + "reason": { + "ignore_above": 1024, + "type": "keyword" + }, + "removed": { + "ignore_above": 1024, + "type": "keyword" + }, + "res": { + "ignore_above": 1024, + "type": "keyword" + }, + "resrc": { + "ignore_above": 1024, + "type": "keyword" + }, + "rport": { + "ignore_above": 1024, + "type": "keyword" + }, + "sauid": { + "ignore_above": 1024, + "type": "keyword" + }, + "scontext": { + "ignore_above": 1024, + "type": "keyword" + }, + "selected-context": { + "ignore_above": 1024, + "type": "keyword" + }, + "seperm": { + "ignore_above": 1024, + "type": "keyword" + }, + "seperms": { + "ignore_above": 1024, + "type": "keyword" + }, + "seqno": { + "ignore_above": 1024, + "type": "keyword" + }, + "seresult": { + "ignore_above": 1024, + "type": "keyword" + }, + "ses": { + "ignore_above": 1024, + "type": "keyword" + }, + "seuser": { + "ignore_above": 1024, + "type": "keyword" + }, + "sig": { + "ignore_above": 1024, + "type": "keyword" + }, + "sigev_signo": { + "ignore_above": 1024, + "type": "keyword" + }, + "smac": { + "ignore_above": 1024, + "type": "keyword" + }, + "socket": { + "properties": { + "addr": { + "ignore_above": 1024, + "type": "keyword" + }, + "family": { + "ignore_above": 1024, + "type": "keyword" + }, + "path": { + "ignore_above": 1024, + "type": "keyword" + }, + "port": { + "ignore_above": 1024, + "type": "keyword" + }, + "saddr": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "spid": { + "ignore_above": 1024, + "type": "keyword" + }, + "sport": { + "ignore_above": 1024, + "type": "keyword" + }, + "state": { + "ignore_above": 1024, + "type": "keyword" + }, + "subj": { + "ignore_above": 1024, + "type": "keyword" + }, + "success": { + "ignore_above": 1024, + "type": "keyword" + }, + "syscall": { + "ignore_above": 1024, + "type": "keyword" + }, + "table": { + "ignore_above": 1024, + "type": "keyword" + }, + "tclass": { + "ignore_above": 1024, + "type": "keyword" + }, + "tcontext": { + "ignore_above": 1024, + "type": "keyword" + }, + "terminal": { + "ignore_above": 1024, + "type": "keyword" + }, + "tty": { + "ignore_above": 1024, + "type": "keyword" + }, + "unit": { + "ignore_above": 1024, + "type": "keyword" + }, + "uri": { + "ignore_above": 1024, + "type": "keyword" + }, + "uuid": { + "ignore_above": 1024, + "type": "keyword" + }, + "val": { + "ignore_above": 1024, + "type": "keyword" + }, + "ver": { + "ignore_above": 1024, + "type": "keyword" + }, + "virt": { + "ignore_above": 1024, + "type": "keyword" + }, + "vm": { + "ignore_above": 1024, + "type": "keyword" + }, + "vm-ctx": { + "ignore_above": 1024, + "type": "keyword" + }, + "vm-pid": { + "ignore_above": 1024, + "type": "keyword" + }, + "watch": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "message_type": { + "ignore_above": 1024, + "type": "keyword" + }, + "paths": { + "properties": { + "cap_fe": { + "ignore_above": 1024, + "type": "keyword" + }, + "cap_fi": { + "ignore_above": 1024, + "type": "keyword" + }, + "cap_fp": { + "ignore_above": 1024, + "type": "keyword" + }, + "cap_fver": { + "ignore_above": 1024, + "type": "keyword" + }, + "dev": { + "ignore_above": 1024, + "type": "keyword" + }, + "inode": { + "ignore_above": 1024, + "type": "keyword" + }, + "item": { + "ignore_above": 1024, + "type": "keyword" + }, + "mode": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "nametype": { + "ignore_above": 1024, + "type": "keyword" + }, + "obj_domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "obj_level": { + "ignore_above": 1024, + "type": "keyword" + }, + "obj_role": { + "ignore_above": 1024, + "type": "keyword" + }, + "obj_user": { + "ignore_above": 1024, + "type": "keyword" + }, + "objtype": { + "ignore_above": 1024, + "type": "keyword" + }, + "ogid": { + "ignore_above": 1024, + "type": "keyword" + }, + "ouid": { + "ignore_above": 1024, + "type": "keyword" + }, + "rdev": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "result": { + "ignore_above": 1024, + "type": "keyword" + }, + "sequence": { + "type": "long" + }, + "session": { + "ignore_above": 1024, + "type": "keyword" + }, + "summary": { + "properties": { + "actor": { + "properties": { + "primary": { + "ignore_above": 1024, + "type": "keyword" + }, + "secondary": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "how": { + "ignore_above": 1024, + "type": "keyword" + }, + "object": { + "properties": { + "primary": { + "ignore_above": 1024, + "type": "keyword" + }, + "secondary": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + } + } + }, + "client": { + "properties": { + "address": { + "ignore_above": 1024, + "type": "keyword" + }, + "bytes": { + "type": "long" + }, + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "ip": { + "type": "ip" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "packets": { + "type": "long" + }, + "port": { + "type": "long" + }, + "user": { + "properties": { + "email": { + "ignore_above": 1024, + "type": "keyword" + }, + "full_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "cloud": { + "properties": { + "account": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "availability_zone": { + "ignore_above": 1024, + "type": "keyword" + }, + "instance": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "machine": { + "properties": { + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "project": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "provider": { + "ignore_above": 1024, + "type": "keyword" + }, + "region": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "container": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "image": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "tag": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "labels": { + "type": "object" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "runtime": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "destination": { + "properties": { + "address": { + "ignore_above": 1024, + "type": "keyword" + }, + "bytes": { + "type": "long" + }, + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "ip": { + "type": "ip" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "packets": { + "type": "long" + }, + "path": { + "ignore_above": 1024, + "type": "keyword" + }, + "port": { + "type": "long" + }, + "user": { + "properties": { + "email": { + "ignore_above": 1024, + "type": "keyword" + }, + "full_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "docker": { + "properties": { + "container": { + "properties": { + "labels": { + "type": "object" + } + } + } + } + }, + "ecs": { + "properties": { + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "error": { + "properties": { + "code": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "message": { + "norms": false, + "type": "text" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "event": { + "properties": { + "action": { + "ignore_above": 1024, + "type": "keyword" + }, + "category": { + "ignore_above": 1024, + "type": "keyword" + }, + "created": { + "type": "date" + }, + "dataset": { + "ignore_above": 1024, + "type": "keyword" + }, + "duration": { + "type": "long" + }, + "end": { + "type": "date" + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "kind": { + "ignore_above": 1024, + "type": "keyword" + }, + "module": { + "ignore_above": 1024, + "type": "keyword" + }, + "origin": { + "ignore_above": 1024, + "type": "keyword" + }, + "original": { + "ignore_above": 1024, + "type": "keyword" + }, + "outcome": { + "ignore_above": 1024, + "type": "keyword" + }, + "risk_score": { + "type": "float" + }, + "risk_score_norm": { + "type": "float" + }, + "severity": { + "type": "long" + }, + "start": { + "type": "date" + }, + "timezone": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "fields": { + "type": "object" + }, + "file": { + "properties": { + "ctime": { + "type": "date" + }, + "device": { + "ignore_above": 1024, + "type": "keyword" + }, + "extension": { + "ignore_above": 1024, + "type": "keyword" + }, + "gid": { + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "ignore_above": 1024, + "type": "keyword" + }, + "inode": { + "ignore_above": 1024, + "type": "keyword" + }, + "mode": { + "ignore_above": 1024, + "type": "keyword" + }, + "mtime": { + "type": "date" + }, + "origin": { + "fields": { + "raw": { + "ignore_above": 1024, + "type": "keyword" + } + }, + "ignore_above": 1024, + "type": "keyword" + }, + "owner": { + "ignore_above": 1024, + "type": "keyword" + }, + "path": { + "ignore_above": 1024, + "type": "keyword" + }, + "selinux": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "level": { + "ignore_above": 1024, + "type": "keyword" + }, + "role": { + "ignore_above": 1024, + "type": "keyword" + }, + "user": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "setgid": { + "type": "boolean" + }, + "setuid": { + "type": "boolean" + }, + "size": { + "type": "long" + }, + "target_path": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "uid": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "flow": { + "properties": { + "complete": { + "type": "boolean" + }, + "final": { + "type": "boolean" + } + } + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "geoip": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "group": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "properties": { + "blake2b_256": { + "ignore_above": 1024, + "type": "keyword" + }, + "blake2b_384": { + "ignore_above": 1024, + "type": "keyword" + }, + "blake2b_512": { + "ignore_above": 1024, + "type": "keyword" + }, + "md5": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha1": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha224": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha256": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha384": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha3_224": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha3_256": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha3_384": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha3_512": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha512": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha512_224": { + "ignore_above": 1024, + "type": "keyword" + }, + "sha512_256": { + "ignore_above": 1024, + "type": "keyword" + }, + "xxh64": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "host": { + "properties": { + "architecture": { + "ignore_above": 1024, + "type": "keyword" + }, + "containerized": { + "type": "boolean" + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hostname": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "ip": { + "type": "ip" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "os": { + "properties": { + "build": { + "ignore_above": 1024, + "type": "keyword" + }, + "codename": { + "ignore_above": 1024, + "type": "keyword" + }, + "family": { + "ignore_above": 1024, + "type": "keyword" + }, + "full": { + "ignore_above": 1024, + "type": "keyword" + }, + "kernel": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "platform": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "user": { + "properties": { + "email": { + "ignore_above": 1024, + "type": "keyword" + }, + "full_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "http": { + "properties": { + "request": { + "properties": { + "body": { + "properties": { + "bytes": { + "type": "long" + }, + "content": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "bytes": { + "type": "long" + }, + "method": { + "ignore_above": 1024, + "type": "keyword" + }, + "referrer": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "response": { + "properties": { + "body": { + "properties": { + "bytes": { + "type": "long" + }, + "content": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "bytes": { + "type": "long" + }, + "status_code": { + "type": "long" + } + } + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "jolokia": { + "properties": { + "agent": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "secured": { + "type": "boolean" + }, + "server": { + "properties": { + "product": { + "ignore_above": 1024, + "type": "keyword" + }, + "vendor": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "url": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "kubernetes": { + "properties": { + "annotations": { + "type": "object" + }, + "container": { + "properties": { + "image": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "deployment": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "labels": { + "type": "object" + }, + "namespace": { + "ignore_above": 1024, + "type": "keyword" + }, + "node": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "pod": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "uid": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "replicaset": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "statefulset": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "labels": { + "type": "object" + }, + "log": { + "properties": { + "level": { + "ignore_above": 1024, + "type": "keyword" + }, + "original": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "message": { + "norms": false, + "type": "text" + }, + "network": { + "properties": { + "application": { + "ignore_above": 1024, + "type": "keyword" + }, + "bytes": { + "type": "long" + }, + "community_id": { + "ignore_above": 1024, + "type": "keyword" + }, + "direction": { + "ignore_above": 1024, + "type": "keyword" + }, + "forwarded_ip": { + "type": "ip" + }, + "iana_number": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "packets": { + "type": "long" + }, + "protocol": { + "ignore_above": 1024, + "type": "keyword" + }, + "transport": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "observer": { + "properties": { + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hostname": { + "ignore_above": 1024, + "type": "keyword" + }, + "ip": { + "type": "ip" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "os": { + "properties": { + "family": { + "ignore_above": 1024, + "type": "keyword" + }, + "full": { + "ignore_above": 1024, + "type": "keyword" + }, + "kernel": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "platform": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "serial_number": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "vendor": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "organization": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "os": { + "properties": { + "family": { + "ignore_above": 1024, + "type": "keyword" + }, + "full": { + "ignore_above": 1024, + "type": "keyword" + }, + "kernel": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "platform": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "process": { + "properties": { + "args": { + "ignore_above": 1024, + "type": "keyword" + }, + "created": { + "ignore_above": 1024, + "type": "keyword" + }, + "entity_id": { + "ignore_above": 1024, + "type": "keyword" + }, + "executable": { + "ignore_above": 1024, + "type": "keyword" + }, + "hash": { + "properties": { + "sha1": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "pid": { + "type": "long" + }, + "ppid": { + "type": "long" + }, + "start": { + "type": "date" + }, + "thread": { + "properties": { + "id": { + "type": "long" + } + } + }, + "title": { + "ignore_above": 1024, + "type": "keyword" + }, + "working_directory": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "related": { + "properties": { + "ip": { + "type": "ip" + } + } + }, + "server": { + "properties": { + "address": { + "ignore_above": 1024, + "type": "keyword" + }, + "bytes": { + "type": "long" + }, + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "ip": { + "type": "ip" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "packets": { + "type": "long" + }, + "port": { + "type": "long" + }, + "user": { + "properties": { + "email": { + "ignore_above": 1024, + "type": "keyword" + }, + "full_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "service": { + "properties": { + "ephemeral_id": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "state": { + "ignore_above": 1024, + "type": "keyword" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "socket": { + "properties": { + "entity_id": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "source": { + "properties": { + "address": { + "ignore_above": 1024, + "type": "keyword" + }, + "bytes": { + "type": "long" + }, + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "geo": { + "properties": { + "city_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "continent_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "country_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "location": { + "type": "geo_point" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_iso_code": { + "ignore_above": 1024, + "type": "keyword" + }, + "region_name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "ip": { + "type": "ip" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "packets": { + "type": "long" + }, + "path": { + "ignore_above": 1024, + "type": "keyword" + }, + "port": { + "type": "long" + }, + "user": { + "properties": { + "email": { + "ignore_above": 1024, + "type": "keyword" + }, + "full_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "system": { + "properties": { + "audit": { + "properties": { + "host": { + "properties": { + "architecture": { + "ignore_above": 1024, + "type": "keyword" + }, + "boottime": { + "type": "date" + }, + "containerized": { + "type": "boolean" + }, + "hostname": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "ip": { + "type": "ip" + }, + "mac": { + "ignore_above": 1024, + "type": "keyword" + }, + "os": { + "properties": { + "codename": { + "ignore_above": 1024, + "type": "keyword" + }, + "family": { + "ignore_above": 1024, + "type": "keyword" + }, + "kernel": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "platform": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "timezone": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "offset": { + "properties": { + "sec": { + "type": "long" + } + } + } + } + }, + "uptime": { + "type": "long" + } + } + }, + "newsocket": { + "properties": { + "egid": { + "type": "long" + }, + "euid": { + "type": "long" + }, + "gid": { + "type": "long" + }, + "internal_version": { + "ignore_above": 1024, + "type": "keyword" + }, + "kernel_sock_address": { + "ignore_above": 1024, + "type": "keyword" + }, + "uid": { + "type": "long" + } + } + }, + "package": { + "properties": { + "arch": { + "ignore_above": 1024, + "type": "keyword" + }, + "entity_id": { + "ignore_above": 1024, + "type": "keyword" + }, + "installtime": { + "type": "date" + }, + "license": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "release": { + "ignore_above": 1024, + "type": "keyword" + }, + "size": { + "type": "long" + }, + "summary": { + "ignore_above": 1024, + "type": "keyword" + }, + "url": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "socket": { + "properties": { + "egid": { + "type": "long" + }, + "euid": { + "type": "long" + }, + "gid": { + "type": "long" + }, + "internal_version": { + "ignore_above": 1024, + "type": "keyword" + }, + "kernel_sock_address": { + "ignore_above": 1024, + "type": "keyword" + }, + "uid": { + "type": "long" + } + } + }, + "user": { + "properties": { + "dir": { + "ignore_above": 1024, + "type": "keyword" + }, + "gid": { + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "properties": { + "gid": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "password": { + "properties": { + "last_changed": { + "type": "date" + }, + "type": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "shell": { + "ignore_above": 1024, + "type": "keyword" + }, + "uid": { + "ignore_above": 1024, + "type": "keyword" + }, + "user_information": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + } + } + }, + "tags": { + "ignore_above": 1024, + "type": "keyword" + }, + "url": { + "properties": { + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "fragment": { + "ignore_above": 1024, + "type": "keyword" + }, + "full": { + "ignore_above": 1024, + "type": "keyword" + }, + "original": { + "ignore_above": 1024, + "type": "keyword" + }, + "password": { + "ignore_above": 1024, + "type": "keyword" + }, + "path": { + "ignore_above": 1024, + "type": "keyword" + }, + "port": { + "type": "long" + }, + "query": { + "ignore_above": 1024, + "type": "keyword" + }, + "scheme": { + "ignore_above": 1024, + "type": "keyword" + }, + "username": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "user": { + "properties": { + "audit": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "effective": { + "properties": { + "group": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "email": { + "ignore_above": 1024, + "type": "keyword" + }, + "entity_id": { + "ignore_above": 1024, + "type": "keyword" + }, + "filesystem": { + "properties": { + "group": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "full_name": { + "ignore_above": 1024, + "type": "keyword" + }, + "group": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "hash": { + "ignore_above": 1024, + "type": "keyword" + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "name_map": { + "type": "object" + }, + "saved": { + "properties": { + "group": { + "properties": { + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "id": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "selinux": { + "properties": { + "category": { + "ignore_above": 1024, + "type": "keyword" + }, + "domain": { + "ignore_above": 1024, + "type": "keyword" + }, + "level": { + "ignore_above": 1024, + "type": "keyword" + }, + "role": { + "ignore_above": 1024, + "type": "keyword" + }, + "user": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "terminal": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "user_agent": { + "properties": { + "device": { + "properties": { + "name": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "original": { + "ignore_above": 1024, + "type": "keyword" + }, + "os": { + "properties": { + "family": { + "ignore_above": 1024, + "type": "keyword" + }, + "full": { + "ignore_above": 1024, + "type": "keyword" + }, + "kernel": { + "ignore_above": 1024, + "type": "keyword" + }, + "name": { + "ignore_above": 1024, + "type": "keyword" + }, + "platform": { + "ignore_above": 1024, + "type": "keyword" + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + }, + "version": { + "ignore_above": 1024, + "type": "keyword" + } + } + } + } + }, + "settings": { + "index": { + "lifecycle": { + "indexing_complete": "true", + "name": "auditbeat-8.0.0", + "rollover_alias": "auditbeat-8.0.0" + }, + "mapping": { + "total_fields": { + "limit": "10000" + } + }, + "number_of_replicas": "0", + "number_of_shards": "1", + "query": { + "default_field": [ + "message", + "tags", + "agent.ephemeral_id", + "agent.id", + "agent.name", + "agent.type", + "agent.version", + "client.address", + "client.domain", + "client.geo.city_name", + "client.geo.continent_name", + "client.geo.country_iso_code", + "client.geo.country_name", + "client.geo.name", + "client.geo.region_iso_code", + "client.geo.region_name", + "client.mac", + "client.user.email", + "client.user.full_name", + "client.user.group.id", + "client.user.group.name", + "client.user.hash", + "client.user.id", + "client.user.name", + "cloud.account.id", + "cloud.availability_zone", + "cloud.instance.id", + "cloud.instance.name", + "cloud.machine.type", + "cloud.provider", + "cloud.region", + "container.id", + "container.image.name", + "container.image.tag", + "container.name", + "container.runtime", + "destination.address", + "destination.domain", + "destination.geo.city_name", + "destination.geo.continent_name", + "destination.geo.country_iso_code", + "destination.geo.country_name", + "destination.geo.name", + "destination.geo.region_iso_code", + "destination.geo.region_name", + "destination.mac", + "destination.user.email", + "destination.user.full_name", + "destination.user.group.id", + "destination.user.group.name", + "destination.user.hash", + "destination.user.id", + "destination.user.name", + "ecs.version", + "error.code", + "error.id", + "error.message", + "event.action", + "event.category", + "event.dataset", + "event.hash", + "event.id", + "event.kind", + "event.module", + "event.original", + "event.outcome", + "event.timezone", + "event.type", + "file.device", + "file.extension", + "file.gid", + "file.group", + "file.inode", + "file.mode", + "file.owner", + "file.path", + "file.target_path", + "file.type", + "file.uid", + "geo.city_name", + "geo.continent_name", + "geo.country_iso_code", + "geo.country_name", + "geo.name", + "geo.region_iso_code", + "geo.region_name", + "group.id", + "group.name", + "host.architecture", + "host.geo.city_name", + "host.geo.continent_name", + "host.geo.country_iso_code", + "host.geo.country_name", + "host.geo.name", + "host.geo.region_iso_code", + "host.geo.region_name", + "host.hostname", + "host.id", + "host.mac", + "host.name", + "host.os.family", + "host.os.full", + "host.os.kernel", + "host.os.name", + "host.os.platform", + "host.os.version", + "host.type", + "host.user.email", + "host.user.full_name", + "host.user.group.id", + "host.user.group.name", + "host.user.hash", + "host.user.id", + "host.user.name", + "http.request.body.content", + "http.request.method", + "http.request.referrer", + "http.response.body.content", + "http.version", + "log.level", + "log.original", + "network.application", + "network.community_id", + "network.direction", + "network.iana_number", + "network.name", + "network.protocol", + "network.transport", + "network.type", + "observer.geo.city_name", + "observer.geo.continent_name", + "observer.geo.country_iso_code", + "observer.geo.country_name", + "observer.geo.name", + "observer.geo.region_iso_code", + "observer.geo.region_name", + "observer.hostname", + "observer.mac", + "observer.os.family", + "observer.os.full", + "observer.os.kernel", + "observer.os.name", + "observer.os.platform", + "observer.os.version", + "observer.serial_number", + "observer.type", + "observer.vendor", + "observer.version", + "organization.id", + "organization.name", + "os.family", + "os.full", + "os.kernel", + "os.name", + "os.platform", + "os.version", + "process.args", + "process.executable", + "process.name", + "process.title", + "process.working_directory", + "server.address", + "server.domain", + "server.geo.city_name", + "server.geo.continent_name", + "server.geo.country_iso_code", + "server.geo.country_name", + "server.geo.name", + "server.geo.region_iso_code", + "server.geo.region_name", + "server.mac", + "server.user.email", + "server.user.full_name", + "server.user.group.id", + "server.user.group.name", + "server.user.hash", + "server.user.id", + "server.user.name", + "service.ephemeral_id", + "service.id", + "service.name", + "service.state", + "service.type", + "service.version", + "source.address", + "source.domain", + "source.geo.city_name", + "source.geo.continent_name", + "source.geo.country_iso_code", + "source.geo.country_name", + "source.geo.name", + "source.geo.region_iso_code", + "source.geo.region_name", + "source.mac", + "source.user.email", + "source.user.full_name", + "source.user.group.id", + "source.user.group.name", + "source.user.hash", + "source.user.id", + "source.user.name", + "url.domain", + "url.fragment", + "url.full", + "url.original", + "url.password", + "url.path", + "url.query", + "url.scheme", + "url.username", + "user.email", + "user.full_name", + "user.group.id", + "user.group.name", + "user.hash", + "user.id", + "user.name", + "user_agent.device.name", + "user_agent.name", + "user_agent.original", + "user_agent.os.family", + "user_agent.os.full", + "user_agent.os.kernel", + "user_agent.os.name", + "user_agent.os.platform", + "user_agent.os.version", + "user_agent.version", + "agent.hostname", + "error.type", + "cloud.project.id", + "host.os.build", + "kubernetes.pod.name", + "kubernetes.pod.uid", + "kubernetes.namespace", + "kubernetes.node.name", + "kubernetes.replicaset.name", + "kubernetes.deployment.name", + "kubernetes.statefulset.name", + "kubernetes.container.name", + "kubernetes.container.image", + "jolokia.agent.version", + "jolokia.agent.id", + "jolokia.server.product", + "jolokia.server.version", + "jolokia.server.vendor", + "jolokia.url", + "raw", + "file.origin", + "file.selinux.user", + "file.selinux.role", + "file.selinux.domain", + "file.selinux.level", + "user.audit.id", + "user.audit.name", + "user.effective.id", + "user.effective.name", + "user.effective.group.id", + "user.effective.group.name", + "user.filesystem.id", + "user.filesystem.name", + "user.filesystem.group.id", + "user.filesystem.group.name", + "user.saved.id", + "user.saved.name", + "user.saved.group.id", + "user.saved.group.name", + "user.selinux.user", + "user.selinux.role", + "user.selinux.domain", + "user.selinux.level", + "user.selinux.category", + "source.path", + "destination.path", + "auditd.message_type", + "auditd.session", + "auditd.result", + "auditd.summary.actor.primary", + "auditd.summary.actor.secondary", + "auditd.summary.object.type", + "auditd.summary.object.primary", + "auditd.summary.object.secondary", + "auditd.summary.how", + "auditd.paths.inode", + "auditd.paths.dev", + "auditd.paths.obj_user", + "auditd.paths.obj_role", + "auditd.paths.obj_domain", + "auditd.paths.obj_level", + "auditd.paths.objtype", + "auditd.paths.ouid", + "auditd.paths.rdev", + "auditd.paths.nametype", + "auditd.paths.ogid", + "auditd.paths.item", + "auditd.paths.mode", + "auditd.paths.name", + "auditd.data.action", + "auditd.data.minor", + "auditd.data.acct", + "auditd.data.addr", + "auditd.data.cipher", + "auditd.data.id", + "auditd.data.entries", + "auditd.data.kind", + "auditd.data.ksize", + "auditd.data.spid", + "auditd.data.arch", + "auditd.data.argc", + "auditd.data.major", + "auditd.data.unit", + "auditd.data.table", + "auditd.data.terminal", + "auditd.data.grantors", + "auditd.data.direction", + "auditd.data.op", + "auditd.data.tty", + "auditd.data.syscall", + "auditd.data.data", + "auditd.data.family", + "auditd.data.mac", + "auditd.data.pfs", + "auditd.data.items", + "auditd.data.a0", + "auditd.data.a1", + "auditd.data.a2", + "auditd.data.a3", + "auditd.data.hostname", + "auditd.data.lport", + "auditd.data.rport", + "auditd.data.exit", + "auditd.data.fp", + "auditd.data.laddr", + "auditd.data.sport", + "auditd.data.capability", + "auditd.data.nargs", + "auditd.data.new-enabled", + "auditd.data.audit_backlog_limit", + "auditd.data.dir", + "auditd.data.cap_pe", + "auditd.data.model", + "auditd.data.new_pp", + "auditd.data.old-enabled", + "auditd.data.oauid", + "auditd.data.old", + "auditd.data.banners", + "auditd.data.feature", + "auditd.data.vm-ctx", + "auditd.data.opid", + "auditd.data.seperms", + "auditd.data.seresult", + "auditd.data.new-rng", + "auditd.data.old-net", + "auditd.data.sigev_signo", + "auditd.data.ino", + "auditd.data.old_enforcing", + "auditd.data.old-vcpu", + "auditd.data.range", + "auditd.data.res", + "auditd.data.added", + "auditd.data.fam", + "auditd.data.nlnk-pid", + "auditd.data.subj", + "auditd.data.a[0-3]", + "auditd.data.cgroup", + "auditd.data.kernel", + "auditd.data.ocomm", + "auditd.data.new-net", + "auditd.data.permissive", + "auditd.data.class", + "auditd.data.compat", + "auditd.data.fi", + "auditd.data.changed", + "auditd.data.msg", + "auditd.data.dport", + "auditd.data.new-seuser", + "auditd.data.invalid_context", + "auditd.data.dmac", + "auditd.data.ipx-net", + "auditd.data.iuid", + "auditd.data.macproto", + "auditd.data.obj", + "auditd.data.ipid", + "auditd.data.new-fs", + "auditd.data.vm-pid", + "auditd.data.cap_pi", + "auditd.data.old-auid", + "auditd.data.oses", + "auditd.data.fd", + "auditd.data.igid", + "auditd.data.new-disk", + "auditd.data.parent", + "auditd.data.len", + "auditd.data.oflag", + "auditd.data.uuid", + "auditd.data.code", + "auditd.data.nlnk-grp", + "auditd.data.cap_fp", + "auditd.data.new-mem", + "auditd.data.seperm", + "auditd.data.enforcing", + "auditd.data.new-chardev", + "auditd.data.old-rng", + "auditd.data.outif", + "auditd.data.cmd", + "auditd.data.hook", + "auditd.data.new-level", + "auditd.data.sauid", + "auditd.data.sig", + "auditd.data.audit_backlog_wait_time", + "auditd.data.printer", + "auditd.data.old-mem", + "auditd.data.perm", + "auditd.data.old_pi", + "auditd.data.state", + "auditd.data.format", + "auditd.data.new_gid", + "auditd.data.tcontext", + "auditd.data.maj", + "auditd.data.watch", + "auditd.data.device", + "auditd.data.grp", + "auditd.data.bool", + "auditd.data.icmp_type", + "auditd.data.new_lock", + "auditd.data.old_prom", + "auditd.data.acl", + "auditd.data.ip", + "auditd.data.new_pi", + "auditd.data.default-context", + "auditd.data.inode_gid", + "auditd.data.new-log_passwd", + "auditd.data.new_pe", + "auditd.data.selected-context", + "auditd.data.cap_fver", + "auditd.data.file", + "auditd.data.net", + "auditd.data.virt", + "auditd.data.cap_pp", + "auditd.data.old-range", + "auditd.data.resrc", + "auditd.data.new-range", + "auditd.data.obj_gid", + "auditd.data.proto", + "auditd.data.old-disk", + "auditd.data.audit_failure", + "auditd.data.inif", + "auditd.data.vm", + "auditd.data.flags", + "auditd.data.nlnk-fam", + "auditd.data.old-fs", + "auditd.data.old-ses", + "auditd.data.seqno", + "auditd.data.fver", + "auditd.data.qbytes", + "auditd.data.seuser", + "auditd.data.cap_fe", + "auditd.data.new-vcpu", + "auditd.data.old-level", + "auditd.data.old_pp", + "auditd.data.daddr", + "auditd.data.old-role", + "auditd.data.ioctlcmd", + "auditd.data.smac", + "auditd.data.apparmor", + "auditd.data.fe", + "auditd.data.perm_mask", + "auditd.data.ses", + "auditd.data.cap_fi", + "auditd.data.obj_uid", + "auditd.data.reason", + "auditd.data.list", + "auditd.data.old_lock", + "auditd.data.bus", + "auditd.data.old_pe", + "auditd.data.new-role", + "auditd.data.prom", + "auditd.data.uri", + "auditd.data.audit_enabled", + "auditd.data.old-log_passwd", + "auditd.data.old-seuser", + "auditd.data.per", + "auditd.data.scontext", + "auditd.data.tclass", + "auditd.data.ver", + "auditd.data.new", + "auditd.data.val", + "auditd.data.img-ctx", + "auditd.data.old-chardev", + "auditd.data.old_val", + "auditd.data.success", + "auditd.data.inode_uid", + "auditd.data.removed", + "auditd.data.socket.port", + "auditd.data.socket.saddr", + "auditd.data.socket.addr", + "auditd.data.socket.family", + "auditd.data.socket.path", + "geoip.continent_name", + "geoip.city_name", + "geoip.region_name", + "geoip.country_iso_code", + "hash.blake2b_256", + "hash.blake2b_384", + "hash.blake2b_512", + "hash.md5", + "hash.sha1", + "hash.sha224", + "hash.sha256", + "hash.sha384", + "hash.sha3_224", + "hash.sha3_256", + "hash.sha3_384", + "hash.sha3_512", + "hash.sha512", + "hash.sha512_224", + "hash.sha512_256", + "hash.xxh64", + "event.origin", + "user.entity_id", + "user.terminal", + "process.entity_id", + "socket.entity_id", + "system.audit.host.timezone.name", + "system.audit.host.hostname", + "system.audit.host.id", + "system.audit.host.architecture", + "system.audit.host.mac", + "system.audit.host.os.platform", + "system.audit.host.os.name", + "system.audit.host.os.family", + "system.audit.host.os.version", + "system.audit.host.os.kernel", + "system.audit.package.entity_id", + "system.audit.package.name", + "system.audit.package.version", + "system.audit.package.release", + "system.audit.package.arch", + "system.audit.package.license", + "system.audit.package.summary", + "system.audit.package.url", + "system.audit.user.name", + "system.audit.user.uid", + "system.audit.user.gid", + "system.audit.user.dir", + "system.audit.user.shell", + "system.audit.user.user_information", + "system.audit.user.password.type", + "fields.*" + ] + }, + "refresh_interval": "5s" + } + } + } +} \ No newline at end of file diff --git a/x-pack/test/siem_cypress/es_archives/empty_kibana/data.json.gz b/x-pack/test/siem_cypress/es_archives/empty_kibana/data.json.gz new file mode 100644 index 0000000000000000000000000000000000000000..8334749a696d7d2ce322e36ff2bc0b479c42bfa5 GIT binary patch literal 225 zcmV<703QDziwFP!000026O~Z04uUWc-TM`_GZIV;8di;?6VB#ni!?$@pfxJt-)#{D z24hTax%b|^yLS!3nCM5zNrcInDM~zt+#oj&YHVX$!5mGMOvNP%{lE{Fke3;(I<*r> z#_vw!Uqu2E2E10LqN5QWOeToM5+ibUG=)XC>u}?Z3<J#%swzN7`sw^n@s9L#JLo?5 z_ugp2&a+vlMJ+<jAF1mSD32IV!Q}e?yxsUbF5@+=M5%?6&LYl4jcw_S<9-e9rWR!K b2?<4a?Y=+c>l5A!fBoPED6^rP_yGU_ANgmJ literal 0 HcmV?d00001 diff --git a/x-pack/test/siem_cypress/es_archives/empty_kibana/mappings.json b/x-pack/test/siem_cypress/es_archives/empty_kibana/mappings.json new file mode 100644 index 00000000000000..77eac534850a55 --- /dev/null +++ b/x-pack/test/siem_cypress/es_archives/empty_kibana/mappings.json @@ -0,0 +1,284 @@ +{ + "type": "index", + "value": { + "index": ".kibana", + "mappings": { + "properties": { + "config": { + "dynamic": "true", + "properties": { + "buildNum": { + "type": "keyword" + }, + "dateFormat:tz": { + "fields": { + "keyword": { + "ignore_above": 256, + "type": "keyword" + } + }, + "type": "text" + } + } + }, + "dashboard": { + "dynamic": "strict", + "properties": { + "description": { + "type": "text" + }, + "hits": { + "type": "integer" + }, + "kibanaSavedObjectMeta": { + "properties": { + "searchSourceJSON": { + "type": "text" + } + } + }, + "optionsJSON": { + "type": "text" + }, + "panelsJSON": { + "type": "text" + }, + "refreshInterval": { + "properties": { + "display": { + "type": "keyword" + }, + "pause": { + "type": "boolean" + }, + "section": { + "type": "integer" + }, + "value": { + "type": "integer" + } + } + }, + "timeFrom": { + "type": "keyword" + }, + "timeRestore": { + "type": "boolean" + }, + "timeTo": { + "type": "keyword" + }, + "title": { + "type": "text" + }, + "uiStateJSON": { + "type": "text" + }, + "version": { + "type": "integer" + } + } + }, + "index-pattern": { + "dynamic": "strict", + "properties": { + "fieldFormatMap": { + "type": "text" + }, + "fields": { + "type": "text" + }, + "intervalName": { + "type": "keyword" + }, + "notExpandable": { + "type": "boolean" + }, + "sourceFilters": { + "type": "text" + }, + "timeFieldName": { + "type": "keyword" + }, + "title": { + "type": "text" + } + } + }, + "search": { + "dynamic": "strict", + "properties": { + "columns": { + "type": "keyword" + }, + "description": { + "type": "text" + }, + "hits": { + "type": "integer" + }, + "kibanaSavedObjectMeta": { + "properties": { + "searchSourceJSON": { + "type": "text" + } + } + }, + "sort": { + "type": "keyword" + }, + "title": { + "type": "text" + }, + "version": { + "type": "integer" + } + } + }, + "server": { + "dynamic": "strict", + "properties": { + "uuid": { + "type": "keyword" + } + } + }, + "space": { + "properties": { + "_reserved": { + "type": "boolean" + }, + "color": { + "type": "keyword" + }, + "description": { + "type": "text" + }, + "disabledFeatures": { + "type": "keyword" + }, + "initials": { + "type": "keyword" + }, + "name": { + "fields": { + "keyword": { + "ignore_above": 2048, + "type": "keyword" + } + }, + "type": "text" + } + } + }, + "spaceId": { + "type": "keyword" + }, + "timelion-sheet": { + "dynamic": "strict", + "properties": { + "description": { + "type": "text" + }, + "hits": { + "type": "integer" + }, + "kibanaSavedObjectMeta": { + "properties": { + "searchSourceJSON": { + "type": "text" + } + } + }, + "timelion_chart_height": { + "type": "integer" + }, + "timelion_columns": { + "type": "integer" + }, + "timelion_interval": { + "type": "keyword" + }, + "timelion_other_interval": { + "type": "keyword" + }, + "timelion_rows": { + "type": "integer" + }, + "timelion_sheet": { + "type": "text" + }, + "title": { + "type": "text" + }, + "version": { + "type": "integer" + } + } + }, + "type": { + "type": "keyword" + }, + "url": { + "dynamic": "strict", + "properties": { + "accessCount": { + "type": "long" + }, + "accessDate": { + "type": "date" + }, + "createDate": { + "type": "date" + }, + "url": { + "fields": { + "keyword": { + "ignore_above": 2048, + "type": "keyword" + } + }, + "type": "text" + } + } + }, + "visualization": { + "dynamic": "strict", + "properties": { + "description": { + "type": "text" + }, + "kibanaSavedObjectMeta": { + "properties": { + "searchSourceJSON": { + "type": "text" + } + } + }, + "savedSearchId": { + "type": "keyword" + }, + "title": { + "type": "text" + }, + "uiStateJSON": { + "type": "text" + }, + "version": { + "type": "integer" + }, + "visState": { + "type": "text" + } + } + } + } + }, + "settings": { + "index": { + "number_of_replicas": "1", + "number_of_shards": "1" + } + } + } +} diff --git a/x-pack/test/siem_cypress/ftr_provider_context.d.ts b/x-pack/test/siem_cypress/ftr_provider_context.d.ts new file mode 100644 index 00000000000000..e3add3748f56d7 --- /dev/null +++ b/x-pack/test/siem_cypress/ftr_provider_context.d.ts @@ -0,0 +1,11 @@ +/* + * 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 { GenericFtrProviderContext } from '@kbn/test/types/ftr'; + +import { services } from './services'; + +export type FtrProviderContext = GenericFtrProviderContext<typeof services, {}>; diff --git a/x-pack/test/siem_cypress/runner.ts b/x-pack/test/siem_cypress/runner.ts new file mode 100644 index 00000000000000..7b2780ec91295f --- /dev/null +++ b/x-pack/test/siem_cypress/runner.ts @@ -0,0 +1,37 @@ +/* + * 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 { resolve } from 'path'; +import Url from 'url'; + +import { withProcRunner } from '@kbn/dev-utils'; + +import { FtrProviderContext } from './ftr_provider_context'; + +export async function SiemCypressTestRunner({ getService }: FtrProviderContext) { + const log = getService('log'); + const config = getService('config'); + const esArchiver = getService('esArchiver'); + + await esArchiver.load('empty_kibana'); + await esArchiver.load('auditbeat'); + + await withProcRunner(log, async procs => { + await procs.run('cypress', { + cmd: 'yarn', + args: ['cypress:run'], + cwd: resolve(__dirname, '../../legacy/plugins/siem'), + env: { + FORCE_COLOR: '1', + CYPRESS_baseUrl: Url.format(config.get('servers.kibana')), + CYPRESS_ELASTICSEARCH_USERNAME: config.get('servers.elasticsearch.username'), + CYPRESS_ELASTICSEARCH_PASSWORD: config.get('servers.elasticsearch.password'), + ...process.env, + }, + wait: true, + }); + }); +} diff --git a/x-pack/test/siem_cypress/services.ts b/x-pack/test/siem_cypress/services.ts new file mode 100644 index 00000000000000..d8d69587be8687 --- /dev/null +++ b/x-pack/test/siem_cypress/services.ts @@ -0,0 +1,7 @@ +/* + * 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 '../../../test/common/services'; From 464f9071e9751c2e62348c65e486c41fdd0bedd8 Mon Sep 17 00:00:00 2001 From: Dmitry Lemeshko <dzmitry.lemechko@elastic.co> Date: Tue, 3 Mar 2020 20:05:13 +0300 Subject: [PATCH 056/120] Code coverage: skip failing tests for coverage run (#59121) * filter out failing tests * more skipped tests * fix tests * move json files to save space --- .../apps/management/_scripted_fields.js | 2 +- test/functional/apps/visualize/_tile_map.js | 1 + test/functional/config.coverage.js | 34 +++++++++++++++++++ test/scripts/jenkins_ci_group.sh | 5 +-- test/scripts/jenkins_xpack_ci_group.sh | 4 +-- .../advanced_settings_spaces.ts | 3 +- .../apps/dev_tools/feature_controls/index.ts | 2 +- .../test/functional/apps/visualize/index.ts | 2 +- x-pack/test/functional/config.coverage.js | 21 ++++++++++++ 9 files changed, 66 insertions(+), 8 deletions(-) create mode 100644 test/functional/config.coverage.js create mode 100644 x-pack/test/functional/config.coverage.js diff --git a/test/functional/apps/management/_scripted_fields.js b/test/functional/apps/management/_scripted_fields.js index 65291c3c4772c5..b1a14cd18f5571 100644 --- a/test/functional/apps/management/_scripted_fields.js +++ b/test/functional/apps/management/_scripted_fields.js @@ -53,7 +53,7 @@ export default function({ getService, getPageObjects }) { ]); describe('scripted fields', function() { - this.tags(['skipFirefox']); + this.tags(['skipFirefox', 'skipCoverage']); before(async function() { await browser.setWindowSize(1200, 800); diff --git a/test/functional/apps/visualize/_tile_map.js b/test/functional/apps/visualize/_tile_map.js index 397eaeb0f30137..ee07e66757b6fb 100644 --- a/test/functional/apps/visualize/_tile_map.js +++ b/test/functional/apps/visualize/_tile_map.js @@ -58,6 +58,7 @@ export default function({ getService, getPageObjects }) { }); describe('complete config', function describeIndexTests() { + this.tags(['skipCoverage']); before(async function() { await browser.setWindowSize(1280, 1000); diff --git a/test/functional/config.coverage.js b/test/functional/config.coverage.js new file mode 100644 index 00000000000000..a3594bdb3b4e13 --- /dev/null +++ b/test/functional/config.coverage.js @@ -0,0 +1,34 @@ +/* + * 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. + */ + +export default async function({ readConfigFile }) { + const defaultConfig = await readConfigFile(require.resolve('./config')); + + return { + ...defaultConfig.getAll(), + + suiteTags: { + exclude: ['skipCoverage'], + }, + + junit: { + reportName: 'Code Coverage for Functional Tests', + }, + }; +} diff --git a/test/scripts/jenkins_ci_group.sh b/test/scripts/jenkins_ci_group.sh index 4b6b7a92625393..f3ac951cdc7b7e 100755 --- a/test/scripts/jenkins_ci_group.sh +++ b/test/scripts/jenkins_ci_group.sh @@ -21,13 +21,14 @@ else cd "kibana${CI_GROUP}" echo " -> running tests from the clone folder" - yarn run grunt "run:functionalTests_ciGroup${CI_GROUP}"; + #yarn run grunt "run:functionalTests_ciGroup${CI_GROUP}"; + node scripts/functional_tests --debug --include-tag "ciGroup$CI_GROUP" --config test/functional/config.coverage.js; if [[ -d target/kibana-coverage/functional ]]; then echo " -> replacing kibana${CI_GROUP} with kibana in json files" sed -i "s|kibana${CI_GROUP}|kibana|g" target/kibana-coverage/functional/*.json echo " -> copying coverage to the original folder" mkdir -p ../kibana/target/kibana-coverage/functional - cp -R target/kibana-coverage/functional/. ../kibana/target/kibana-coverage/functional/ + mv target/kibana-coverage/functional/* ../kibana/target/kibana-coverage/functional/ fi fi \ No newline at end of file diff --git a/test/scripts/jenkins_xpack_ci_group.sh b/test/scripts/jenkins_xpack_ci_group.sh index 9790ebfb4ef407..4c2b4194c52e22 100755 --- a/test/scripts/jenkins_xpack_ci_group.sh +++ b/test/scripts/jenkins_xpack_ci_group.sh @@ -23,13 +23,13 @@ else cd "kibana${CI_GROUP}/x-pack" echo " -> running tests from the clone folder" - node scripts/functional_tests --debug --include-tag "ciGroup$CI_GROUP" + node scripts/functional_tests --debug --include-tag "ciGroup$CI_GROUP" --config test/functional/config.coverage.js; if [[ -d ../target/kibana-coverage/functional ]]; then echo " -> replacing kibana${CI_GROUP} with kibana in json files" sed -i "s|kibana${CI_GROUP}|kibana|g" ../target/kibana-coverage/functional/*.json echo " -> copying coverage to the original folder" mkdir -p ../../kibana/target/kibana-coverage/functional - cp -R ../target/kibana-coverage/functional/. ../../kibana/target/kibana-coverage/functional/ + mv ../target/kibana-coverage/functional/* ../../kibana/target/kibana-coverage/functional/ fi fi \ No newline at end of file diff --git a/x-pack/test/functional/apps/advanced_settings/feature_controls/advanced_settings_spaces.ts b/x-pack/test/functional/apps/advanced_settings/feature_controls/advanced_settings_spaces.ts index fc4f385df36942..252d0a0a787825 100644 --- a/x-pack/test/functional/apps/advanced_settings/feature_controls/advanced_settings_spaces.ts +++ b/x-pack/test/functional/apps/advanced_settings/feature_controls/advanced_settings_spaces.ts @@ -57,7 +57,8 @@ export default function({ getPageObjects, getService }: FtrProviderContext) { }); }); - describe('space with Advanced Settings disabled', () => { + describe('space with Advanced Settings disabled', function() { + this.tags('skipCoverage'); before(async () => { // we need to load the following in every situation as deleting // a space deletes all of the associated saved objects diff --git a/x-pack/test/functional/apps/dev_tools/feature_controls/index.ts b/x-pack/test/functional/apps/dev_tools/feature_controls/index.ts index 72f87c2898d58c..4e7afb44ffddc7 100644 --- a/x-pack/test/functional/apps/dev_tools/feature_controls/index.ts +++ b/x-pack/test/functional/apps/dev_tools/feature_controls/index.ts @@ -7,7 +7,7 @@ import { FtrProviderContext } from '../../../ftr_provider_context'; export default function({ loadTestFile }: FtrProviderContext) { describe('feature controls', function() { - this.tags('skipFirefox'); + this.tags(['skipFirefox', 'skipCoverage']); loadTestFile(require.resolve('./dev_tools_security')); loadTestFile(require.resolve('./dev_tools_spaces')); }); diff --git a/x-pack/test/functional/apps/visualize/index.ts b/x-pack/test/functional/apps/visualize/index.ts index 264e2e807f0fbb..29b1ef9870d7d2 100644 --- a/x-pack/test/functional/apps/visualize/index.ts +++ b/x-pack/test/functional/apps/visualize/index.ts @@ -8,7 +8,7 @@ import { FtrProviderContext } from '../../ftr_provider_context'; export default function visualize({ loadTestFile }: FtrProviderContext) { describe('Visualize', function visualizeTestSuite() { - this.tags(['ciGroup4', 'skipFirefox']); + this.tags(['ciGroup4', 'skipFirefox', 'skipCoverage']); loadTestFile(require.resolve('./feature_controls/visualize_security')); loadTestFile(require.resolve('./feature_controls/visualize_spaces')); diff --git a/x-pack/test/functional/config.coverage.js b/x-pack/test/functional/config.coverage.js new file mode 100644 index 00000000000000..7ba2ef7398b29f --- /dev/null +++ b/x-pack/test/functional/config.coverage.js @@ -0,0 +1,21 @@ +/* + * 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 default async function({ readConfigFile }) { + const chromeConfig = await readConfigFile(require.resolve('./config')); + + return { + ...chromeConfig.getAll(), + + suiteTags: { + exclude: ['skipCoverage'], + }, + + junit: { + reportName: 'Code Coverage for Functional Tests', + }, + }; +} From cc792e16498b248b670d1cbcdf4af42378afe6c3 Mon Sep 17 00:00:00 2001 From: Ashik Meerankutty <ashik9591@gmail.com> Date: Tue, 3 Mar 2020 23:28:01 +0530 Subject: [PATCH 057/120] Create empty string filters when value not specified (#57442) * Added empty string filter * Changed operator in empty string filter Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- src/plugins/data/public/ui/filter_bar/filter_editor/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/data/public/ui/filter_bar/filter_editor/index.tsx b/src/plugins/data/public/ui/filter_bar/filter_editor/index.tsx index 362bc1f21b4283..ffe2a153a87f33 100644 --- a/src/plugins/data/public/ui/filter_bar/filter_editor/index.tsx +++ b/src/plugins/data/public/ui/filter_bar/filter_editor/index.tsx @@ -486,7 +486,7 @@ class FilterEditorUI extends Component<Props, State> { operator.type, operator.negate, this.props.filter.meta.disabled, - params, + params ?? '', alias, $state.store ); From 2c7d13d6adfd27e440cce2ed81d055ec5012dad5 Mon Sep 17 00:00:00 2001 From: Poff Poffenberger <poffdeluxe@gmail.com> Date: Tue, 3 Mar 2020 12:22:11 -0600 Subject: [PATCH 058/120] Add storybook for Code Editor (#58900) * Add storybook for code editor component * Add dark mode story * Update code editor README with storybook instructions Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- src/dev/storybook/aliases.ts | 1 + .../kibana_react/public/code_editor/README.md | 7 +- .../code_editor/code_editor.examples.tsx | 235 ++++++++++++++++++ .../public/code_editor/scripts/storybook.ts | 26 ++ 4 files changed, 267 insertions(+), 2 deletions(-) create mode 100644 src/plugins/kibana_react/public/code_editor/code_editor.examples.tsx create mode 100644 src/plugins/kibana_react/public/code_editor/scripts/storybook.ts diff --git a/src/dev/storybook/aliases.ts b/src/dev/storybook/aliases.ts index fb91b865097faf..35ac4e27f9c8b3 100644 --- a/src/dev/storybook/aliases.ts +++ b/src/dev/storybook/aliases.ts @@ -20,6 +20,7 @@ export const storybookAliases = { apm: 'x-pack/legacy/plugins/apm/scripts/storybook.js', canvas: 'x-pack/legacy/plugins/canvas/scripts/storybook_new.js', + codeeditor: 'src/plugins/kibana_react/public/code_editor/scripts/storybook.ts', drilldowns: 'x-pack/plugins/drilldowns/scripts/storybook.js', embeddable: 'src/plugins/embeddable/scripts/storybook.js', infra: 'x-pack/legacy/plugins/infra/scripts/storybook.js', diff --git a/src/plugins/kibana_react/public/code_editor/README.md b/src/plugins/kibana_react/public/code_editor/README.md index 887a9c99909155..811038b58c8287 100644 --- a/src/plugins/kibana_react/public/code_editor/README.md +++ b/src/plugins/kibana_react/public/code_editor/README.md @@ -8,6 +8,9 @@ This editor component allows easy access to: * Function signature widget * [Hover widget](https://microsoft.github.io/monaco-editor/playground.html#extending-language-services-hover-provider-example) -[_TODO: Examples of each_](https://github.com/elastic/kibana/issues/43812) +The Monaco editor doesn't automatically resize the editor area on window or container resize so this component includes a [resize detector](https://github.com/maslianok/react-resize-detector) to cause the Monaco editor to re-layout and adjust its size when the window or container size changes -The Monaco editor doesn't automatically resize the editor area on window or container resize so this component includes a [resize detector](https://github.com/maslianok/react-resize-detector) to cause the Monaco editor to re-layout and adjust its size when the window or container size changes \ No newline at end of file +## Storybook Examples +To run the CodeEditor storybook, from the root kibana directory, run `yarn storybook codeeditor` + +All stories for the component live in `code_editor.examples.tsx` \ No newline at end of file diff --git a/src/plugins/kibana_react/public/code_editor/code_editor.examples.tsx b/src/plugins/kibana_react/public/code_editor/code_editor.examples.tsx new file mode 100644 index 00000000000000..b6d5f2c5460f6c --- /dev/null +++ b/src/plugins/kibana_react/public/code_editor/code_editor.examples.tsx @@ -0,0 +1,235 @@ +/* + * 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 { action } from '@storybook/addon-actions'; +import { storiesOf } from '@storybook/react'; +import React from 'react'; +import { monaco as monacoEditor } from '@kbn/ui-shared-deps/monaco'; +import { CodeEditor } from './code_editor'; + +// A sample language definition with a few example tokens +// Taken from https://microsoft.github.io/monaco-editor/playground.html#extending-language-services-custom-languages +const simpleLogLang: monacoEditor.languages.IMonarchLanguage = { + tokenizer: { + root: [ + [/\[error.*/, 'constant'], + [/\[notice.*/, 'variable'], + [/\[info.*/, 'string'], + [/\[[a-zA-Z 0-9:]+\]/, 'tag'], + ], + }, +}; + +monacoEditor.languages.register({ id: 'loglang' }); +monacoEditor.languages.setMonarchTokensProvider('loglang', simpleLogLang); + +const logs = `[Sun Mar 7 20:54:27 2004] [notice] [client xx.xx.xx.xx] This is a notice! +[Sun Mar 7 20:58:27 2004] [info] [client xx.xx.xx.xx] (104)Connection reset by peer: client stopped connection before send body completed +[Sun Mar 7 21:16:17 2004] [error] [client xx.xx.xx.xx] File does not exist: /home/httpd/twiki/view/Main/WebHome +`; + +storiesOf('CodeEditor', module) + .addParameters({ + info: { + // CodeEditor has no PropTypes set so this table will show up + // as blank. I'm just disabling it to reduce confusion + propTablesExclude: [CodeEditor], + }, + }) + .add( + 'default', + () => ( + <div> + <CodeEditor + languageId="plaintext" + height={250} + value="Hello!" + onChange={action('onChange')} + /> + </div> + ), + { + info: { + text: 'Plaintext Monaco Editor', + }, + } + ) + .add( + 'dark mode', + () => ( + <div> + <CodeEditor + languageId="plaintext" + height={250} + value="Hello!" + onChange={action('onChange')} + useDarkTheme={true} + /> + </div> + ), + { + info: { + text: 'The dark theme is automatically used when dark mode is enabled in Kibana', + }, + } + ) + .add( + 'custom log language', + () => ( + <div> + <CodeEditor languageId="loglang" height={250} value={logs} onChange={action('onChange')} /> + </div> + ), + { + info: { + text: + 'Custom language example. Language definition taken from [here](https://microsoft.github.io/monaco-editor/playground.html#extending-language-services-custom-languages)', + }, + } + ) + .add( + 'hide minimap', + () => ( + <div> + <CodeEditor + languageId="loglang" + height={250} + value={logs} + onChange={action('onChange')} + options={{ + minimap: { + enabled: false, + }, + }} + /> + </div> + ), + { + info: { + text: 'The minimap (on left side of editor) can be disabled to save space', + }, + } + ) + .add( + 'suggestion provider', + () => { + const provideSuggestions = ( + model: monacoEditor.editor.ITextModel, + position: monacoEditor.Position, + context: monacoEditor.languages.CompletionContext + ) => { + const wordRange = new monacoEditor.Range( + position.lineNumber, + position.column, + position.lineNumber, + position.column + ); + + return { + suggestions: [ + { + label: 'Hello, World', + kind: monacoEditor.languages.CompletionItemKind.Variable, + documentation: { + value: '*Markdown* can be used in autocomplete help', + isTrusted: true, + }, + insertText: 'Hello, World', + range: wordRange, + }, + { + label: 'You know, for search', + kind: monacoEditor.languages.CompletionItemKind.Variable, + documentation: { value: 'Thanks `Monaco`', isTrusted: true }, + insertText: 'You know, for search', + range: wordRange, + }, + ], + }; + }; + + return ( + <div> + <CodeEditor + languageId="loglang" + height={250} + value={logs} + onChange={action('onChange')} + suggestionProvider={{ + triggerCharacters: ['.'], + provideCompletionItems: provideSuggestions, + }} + options={{ + wordBasedSuggestions: false, + quickSuggestions: true, + }} + /> + </div> + ); + }, + { + info: { + text: 'Example suggestion provider is triggered by the `.` character', + }, + } + ) + .add( + 'hover provider', + () => { + const provideHover = ( + model: monacoEditor.editor.ITextModel, + position: monacoEditor.Position + ) => { + const word = model.getWordAtPosition(position); + + if (!word) { + return { + contents: [], + }; + } + + return { + contents: [ + { + value: `You're hovering over **${word.word}**`, + }, + ], + }; + }; + + return ( + <div> + <CodeEditor + languageId="loglang" + height={250} + value={logs} + onChange={action('onChange')} + hoverProvider={{ + provideHover, + }} + /> + </div> + ); + }, + { + info: { + text: 'Hover dialog example can be triggered by hovering over a word', + }, + } + ); diff --git a/src/plugins/kibana_react/public/code_editor/scripts/storybook.ts b/src/plugins/kibana_react/public/code_editor/scripts/storybook.ts new file mode 100644 index 00000000000000..4fe72869873974 --- /dev/null +++ b/src/plugins/kibana_react/public/code_editor/scripts/storybook.ts @@ -0,0 +1,26 @@ +/* + * 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 { join } from 'path'; + +// eslint-disable-next-line +require('@kbn/storybook').runStorybookCli({ + name: 'code-editor', + storyGlobs: [join(__dirname, '..', '*.examples.tsx')], +}); From 74030c97a9cf83e0f7c102945681c0d4d44f8a41 Mon Sep 17 00:00:00 2001 From: Larry Gregory <larry.gregory@elastic.co> Date: Tue, 3 Mar 2020 13:23:53 -0500 Subject: [PATCH 059/120] Add support for deprecated roles (#57209) * Add support for deprecated roles * address PR feedback * remove unused import * copy edits * fix snapshots Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- docs/management/advanced-options.asciidoc | 3 +- .../public/doc_links/doc_links_service.ts | 1 + x-pack/legacy/plugins/dashboard_mode/index.js | 9 + x-pack/plugins/security/common/model/index.ts | 6 +- .../security/common/model/role.test.ts | 73 ++++++- x-pack/plugins/security/common/model/role.ts | 40 +++- .../account_management_page.test.tsx | 10 +- .../account_management_page.tsx | 10 +- .../change_password/change_password.tsx | 4 +- .../management/badges/deprecated_badge.tsx | 28 +++ .../management/badges/disabled_badge.tsx | 25 +++ .../management/badges/enabled_badge.tsx | 25 +++ .../public/management/badges/index.ts | 10 + .../management/badges/optional_tooltip.tsx | 19 ++ .../management/badges/reserved_badge.tsx | 25 +++ .../public/management/role_combo_box/index.ts | 7 + .../role_combo_box/role_combo_box.test.tsx | 110 +++++++++++ .../role_combo_box/role_combo_box.tsx | 61 ++++++ .../role_combo_box_option.test.tsx | 57 ++++++ .../role_combo_box/role_combo_box_option.tsx | 31 +++ .../edit_role_mapping_page.test.tsx | 55 +++++- .../mapping_info_panel/mapping_info_panel.tsx | 13 +- .../role_selector/role_selector.tsx | 40 +++- .../role_mappings_grid_page.test.tsx | 75 +++++++- .../role_mappings_grid_page.tsx | 63 +++--- .../role_mappings_management_app.test.tsx | 2 +- .../role_mappings_management_app.tsx | 1 + .../management/role_table_display/index.ts | 7 + .../role_table_display/role_table_display.tsx | 39 ++++ .../roles/edit_role/edit_role_page.tsx | 41 ++-- .../privileges/es/cluster_privileges.tsx | 4 +- .../es/index_privilege_form.test.tsx | 18 +- .../privileges/es/index_privilege_form.tsx | 26 +-- .../privileges/es/index_privileges.tsx | 6 +- .../space_aware_privilege_section.tsx | 4 +- .../roles/edit_role/reserved_role_badge.tsx | 4 +- .../roles/roles_grid/roles_grid_page.test.tsx | 74 ++++++- .../roles/roles_grid/roles_grid_page.tsx | 153 +++++++++++---- .../change_password_form.test.tsx | 6 +- .../change_password_form.tsx | 4 +- .../confirm_delete_users.test.tsx | 10 +- .../confirm_delete_users.tsx | 6 +- .../users/edit_user/edit_user_page.test.tsx | 66 +++++-- .../users/edit_user/edit_user_page.tsx | 60 +++--- .../public/management/users/user_utils.ts | 9 + .../users/users_grid/users_grid_page.test.tsx | 181 +++++++++++++++++- .../users/users_grid/users_grid_page.tsx | 175 ++++++++++++----- .../users/users_management_app.test.tsx | 6 +- .../management/users/users_management_app.tsx | 11 +- x-pack/plugins/security/public/plugin.tsx | 2 +- .../translations/translations/ja-JP.json | 5 - .../translations/translations/zh-CN.json | 5 - .../functional/apps/security/role_mappings.ts | 2 +- x-pack/test/functional/apps/security/users.js | 21 ++ .../functional/page_objects/security_page.js | 33 ++-- 55 files changed, 1477 insertions(+), 304 deletions(-) create mode 100644 x-pack/plugins/security/public/management/badges/deprecated_badge.tsx create mode 100644 x-pack/plugins/security/public/management/badges/disabled_badge.tsx create mode 100644 x-pack/plugins/security/public/management/badges/enabled_badge.tsx create mode 100644 x-pack/plugins/security/public/management/badges/index.ts create mode 100644 x-pack/plugins/security/public/management/badges/optional_tooltip.tsx create mode 100644 x-pack/plugins/security/public/management/badges/reserved_badge.tsx create mode 100644 x-pack/plugins/security/public/management/role_combo_box/index.ts create mode 100644 x-pack/plugins/security/public/management/role_combo_box/role_combo_box.test.tsx create mode 100644 x-pack/plugins/security/public/management/role_combo_box/role_combo_box.tsx create mode 100644 x-pack/plugins/security/public/management/role_combo_box/role_combo_box_option.test.tsx create mode 100644 x-pack/plugins/security/public/management/role_combo_box/role_combo_box_option.tsx create mode 100644 x-pack/plugins/security/public/management/role_table_display/index.ts create mode 100644 x-pack/plugins/security/public/management/role_table_display/role_table_display.tsx create mode 100644 x-pack/plugins/security/public/management/users/user_utils.ts diff --git a/docs/management/advanced-options.asciidoc b/docs/management/advanced-options.asciidoc index c698e2db86ddb1..f62a4d28dfc0df 100644 --- a/docs/management/advanced-options.asciidoc +++ b/docs/management/advanced-options.asciidoc @@ -116,7 +116,8 @@ cluster alert notifications from Monitoring. ==== Dashboard [horizontal] -`xpackDashboardMode:roles`:: The roles that belong to <<xpack-dashboard-only-mode, dashboard only mode>>. +`xpackDashboardMode:roles`:: **Deprecated. Use <<kibana-feature-privileges,feature privileges>> instead.** +The roles that belong to <<xpack-dashboard-only-mode, dashboard only mode>>. [float] [[kibana-discover-settings]] diff --git a/src/core/public/doc_links/doc_links_service.ts b/src/core/public/doc_links/doc_links_service.ts index 3521d7ef9c66eb..9b672d40961d8e 100644 --- a/src/core/public/doc_links/doc_links_service.ts +++ b/src/core/public/doc_links/doc_links_service.ts @@ -120,6 +120,7 @@ export class DocLinksService { }, management: { kibanaSearchSettings: `${ELASTIC_WEBSITE_URL}guide/en/kibana/${DOC_LINK_VERSION}/advanced-options.html#kibana-search-settings`, + dashboardSettings: `${ELASTIC_WEBSITE_URL}guide/en/kibana/${DOC_LINK_VERSION}/advanced-options.html#kibana-dashboard-settings`, }, }, }); diff --git a/x-pack/legacy/plugins/dashboard_mode/index.js b/x-pack/legacy/plugins/dashboard_mode/index.js index 94655adf981b48..ab90c6511de01c 100644 --- a/x-pack/legacy/plugins/dashboard_mode/index.js +++ b/x-pack/legacy/plugins/dashboard_mode/index.js @@ -33,6 +33,15 @@ export function dashboardMode(kibana) { ), value: ['kibana_dashboard_only_user'], category: ['dashboard'], + deprecation: { + message: i18n.translate( + 'xpack.dashboardMode.uiSettings.dashboardsOnlyRolesDeprecation', + { + defaultMessage: 'This setting is deprecated and will be removed in Kibana 8.0.', + } + ), + docLinksKey: 'dashboardSettings', + }, }, }, app: { diff --git a/x-pack/plugins/security/common/model/index.ts b/x-pack/plugins/security/common/model/index.ts index 121791d113bd5d..88da416cf715b4 100644 --- a/x-pack/plugins/security/common/model/index.ts +++ b/x-pack/plugins/security/common/model/index.ts @@ -15,10 +15,12 @@ export { RoleIndexPrivilege, RoleKibanaPrivilege, copyRole, - isReadOnlyRole, - isReservedRole, + isRoleDeprecated, + isRoleReadOnly, + isRoleReserved, isRoleEnabled, prepareRoleClone, + getExtendedRoleDeprecationNotice, } from './role'; export { KibanaPrivileges } from './kibana_privileges'; export { diff --git a/x-pack/plugins/security/common/model/role.test.ts b/x-pack/plugins/security/common/model/role.test.ts index d4a910a1785ebd..b17e264f3cdd83 100644 --- a/x-pack/plugins/security/common/model/role.test.ts +++ b/x-pack/plugins/security/common/model/role.test.ts @@ -4,7 +4,16 @@ * you may not use this file except in compliance with the Elastic License. */ -import { Role, isReadOnlyRole, isReservedRole, isRoleEnabled, copyRole, prepareRoleClone } from '.'; +import { + Role, + isRoleEnabled, + isRoleReserved, + isRoleDeprecated, + isRoleReadOnly, + copyRole, + prepareRoleClone, + getExtendedRoleDeprecationNotice, +} from '../../common/model'; describe('role', () => { describe('isRoleEnabled', () => { @@ -32,14 +41,14 @@ describe('role', () => { }); }); - describe('isReservedRole', () => { + describe('isRoleReserved', () => { test('should return false if role is explicitly not reserved', () => { const testRole = { metadata: { _reserved: false, }, }; - expect(isReservedRole(testRole)).toBe(false); + expect(isRoleReserved(testRole)).toBe(false); }); test('should return true if role is explicitly reserved', () => { @@ -48,30 +57,74 @@ describe('role', () => { _reserved: true, }, }; - expect(isReservedRole(testRole)).toBe(true); + expect(isRoleReserved(testRole)).toBe(true); }); test('should return false if role is NOT explicitly reserved or not reserved', () => { const testRole = {}; - expect(isReservedRole(testRole)).toBe(false); + expect(isRoleReserved(testRole)).toBe(false); }); }); - describe('isReadOnlyRole', () => { + describe('isRoleDeprecated', () => { + test('should return false if role is explicitly not deprecated', () => { + const testRole = { + metadata: { + _deprecated: false, + }, + }; + expect(isRoleDeprecated(testRole)).toBe(false); + }); + + test('should return true if role is explicitly deprecated', () => { + const testRole = { + metadata: { + _deprecated: true, + }, + }; + expect(isRoleDeprecated(testRole)).toBe(true); + }); + + test('should return false if role is NOT explicitly deprecated or not deprecated', () => { + const testRole = {}; + expect(isRoleDeprecated(testRole)).toBe(false); + }); + }); + + describe('getExtendedRoleDeprecationNotice', () => { + test('advises not to use the deprecated role', () => { + const testRole = { name: 'test-role' }; + expect(getExtendedRoleDeprecationNotice(testRole)).toMatchInlineSnapshot( + `"The test-role role is deprecated. "` + ); + }); + + test('includes the deprecation reason when provided', () => { + const testRole = { + name: 'test-role', + metadata: { _deprecated_reason: "We just don't like this role anymore" }, + }; + expect(getExtendedRoleDeprecationNotice(testRole)).toMatchInlineSnapshot( + `"The test-role role is deprecated. We just don't like this role anymore"` + ); + }); + }); + + describe('isRoleReadOnly', () => { test('returns true for reserved roles', () => { const testRole = { metadata: { _reserved: true, }, }; - expect(isReadOnlyRole(testRole)).toBe(true); + expect(isRoleReadOnly(testRole)).toBe(true); }); test('returns true for roles with transform errors', () => { const testRole = { _transform_error: ['kibana'], }; - expect(isReadOnlyRole(testRole)).toBe(true); + expect(isRoleReadOnly(testRole)).toBe(true); }); test('returns false for disabled roles', () => { @@ -80,12 +133,12 @@ describe('role', () => { enabled: false, }, }; - expect(isReadOnlyRole(testRole)).toBe(false); + expect(isRoleReadOnly(testRole)).toBe(false); }); test('returns false for all other roles', () => { const testRole = {}; - expect(isReadOnlyRole(testRole)).toBe(false); + expect(isRoleReadOnly(testRole)).toBe(false); }); }); diff --git a/x-pack/plugins/security/common/model/role.ts b/x-pack/plugins/security/common/model/role.ts index 1edcf147262ede..4cc7271eaca133 100644 --- a/x-pack/plugins/security/common/model/role.ts +++ b/x-pack/plugins/security/common/model/role.ts @@ -5,6 +5,7 @@ */ import { cloneDeep } from 'lodash'; +import { i18n } from '@kbn/i18n'; import { FeaturesPrivileges } from './features_privileges'; export interface RoleIndexPrivilege { @@ -57,17 +58,41 @@ export function isRoleEnabled(role: Partial<Role>) { * * @param role Role as returned by roles API */ -export function isReservedRole(role: Partial<Role>) { +export function isRoleReserved(role: Partial<Role>) { return (role.metadata?._reserved as boolean) ?? false; } +/** + * Returns whether given role is deprecated or not. + * + * @param {role} the Role as returned by roles API + */ +export function isRoleDeprecated(role: Partial<Role>) { + return role.metadata?._deprecated ?? false; +} + +/** + * Returns the extended deprecation notice for the provided role. + * + * @param role the Role as returned by roles API + */ +export function getExtendedRoleDeprecationNotice(role: Partial<Role>) { + return i18n.translate('xpack.security.common.extendedRoleDeprecationNotice', { + defaultMessage: `The {roleName} role is deprecated. {reason}`, + values: { + roleName: role.name, + reason: getRoleDeprecatedReason(role), + }, + }); +} + /** * Returns whether given role is editable through the UI or not. * * @param role the Role as returned by roles API */ -export function isReadOnlyRole(role: Partial<Role>): boolean { - return isReservedRole(role) || (role._transform_error?.length ?? 0) > 0; +export function isRoleReadOnly(role: Partial<Role>): boolean { + return isRoleReserved(role) || (role._transform_error?.length ?? 0) > 0; } /** @@ -91,3 +116,12 @@ export function prepareRoleClone(role: Role): Role { return clone; } + +/** + * Returns the reason this role is deprecated. + * + * @param role the Role as returned by roles API + */ +function getRoleDeprecatedReason(role: Partial<Role>) { + return role.metadata?._deprecated_reason ?? ''; +} diff --git a/x-pack/plugins/security/public/account_management/account_management_page.test.tsx b/x-pack/plugins/security/public/account_management/account_management_page.test.tsx index 46bbedd37c4344..e58d8e8421547f 100644 --- a/x-pack/plugins/security/public/account_management/account_management_page.test.tsx +++ b/x-pack/plugins/security/public/account_management/account_management_page.test.tsx @@ -48,7 +48,7 @@ describe('<AccountManagementPage>', () => { <AccountManagementPage authc={getSecuritySetupMock({ currentUser: user }).authc} notifications={coreMock.createStart().notifications} - apiClient={userAPIClientMock.create()} + userAPIClient={userAPIClientMock.create()} /> ); @@ -70,7 +70,7 @@ describe('<AccountManagementPage>', () => { <AccountManagementPage authc={getSecuritySetupMock({ currentUser: user }).authc} notifications={coreMock.createStart().notifications} - apiClient={userAPIClientMock.create()} + userAPIClient={userAPIClientMock.create()} /> ); @@ -88,7 +88,7 @@ describe('<AccountManagementPage>', () => { <AccountManagementPage authc={getSecuritySetupMock({ currentUser: user }).authc} notifications={coreMock.createStart().notifications} - apiClient={userAPIClientMock.create()} + userAPIClient={userAPIClientMock.create()} /> ); @@ -106,7 +106,7 @@ describe('<AccountManagementPage>', () => { <AccountManagementPage authc={getSecuritySetupMock({ currentUser: user }).authc} notifications={coreMock.createStart().notifications} - apiClient={userAPIClientMock.create()} + userAPIClient={userAPIClientMock.create()} /> ); @@ -125,7 +125,7 @@ describe('<AccountManagementPage>', () => { <AccountManagementPage authc={getSecuritySetupMock({ currentUser: user }).authc} notifications={coreMock.createStart().notifications} - apiClient={userAPIClientMock.create()} + userAPIClient={userAPIClientMock.create()} /> ); diff --git a/x-pack/plugins/security/public/account_management/account_management_page.tsx b/x-pack/plugins/security/public/account_management/account_management_page.tsx index 3f764adc7949f2..9388c2e9b19b8e 100644 --- a/x-pack/plugins/security/public/account_management/account_management_page.tsx +++ b/x-pack/plugins/security/public/account_management/account_management_page.tsx @@ -14,11 +14,11 @@ import { PersonalInfo } from './personal_info'; interface Props { authc: AuthenticationServiceSetup; - apiClient: PublicMethodsOf<UserAPIClient>; + userAPIClient: PublicMethodsOf<UserAPIClient>; notifications: NotificationsStart; } -export const AccountManagementPage = ({ apiClient, authc, notifications }: Props) => { +export const AccountManagementPage = ({ userAPIClient, authc, notifications }: Props) => { const [currentUser, setCurrentUser] = useState<AuthenticatedUser | null>(null); useEffect(() => { authc.getCurrentUser().then(setCurrentUser); @@ -40,7 +40,11 @@ export const AccountManagementPage = ({ apiClient, authc, notifications }: Props <PersonalInfo user={currentUser} /> - <ChangePassword user={currentUser} apiClient={apiClient} notifications={notifications} /> + <ChangePassword + user={currentUser} + userAPIClient={userAPIClient} + notifications={notifications} + /> </EuiPanel> </EuiPageBody> </EuiPage> diff --git a/x-pack/plugins/security/public/account_management/change_password/change_password.tsx b/x-pack/plugins/security/public/account_management/change_password/change_password.tsx index f5ac5f3b21d2e6..5b27df24f975cb 100644 --- a/x-pack/plugins/security/public/account_management/change_password/change_password.tsx +++ b/x-pack/plugins/security/public/account_management/change_password/change_password.tsx @@ -13,7 +13,7 @@ import { ChangePasswordForm } from '../../management/users/components/change_pas interface Props { user: AuthenticatedUser; - apiClient: PublicMethodsOf<UserAPIClient>; + userAPIClient: PublicMethodsOf<UserAPIClient>; notifications: NotificationsSetup; } @@ -48,7 +48,7 @@ export class ChangePassword extends Component<Props, {}> { <ChangePasswordForm user={this.props.user} isUserChangingOwnPassword={true} - apiClient={this.props.apiClient} + userAPIClient={this.props.userAPIClient} notifications={this.props.notifications} /> </EuiDescribedFormGroup> diff --git a/x-pack/plugins/security/public/management/badges/deprecated_badge.tsx b/x-pack/plugins/security/public/management/badges/deprecated_badge.tsx new file mode 100644 index 00000000000000..63c38b4f3a8283 --- /dev/null +++ b/x-pack/plugins/security/public/management/badges/deprecated_badge.tsx @@ -0,0 +1,28 @@ +/* + * 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 { FormattedMessage } from '@kbn/i18n/react'; +import { EuiBadge, EuiToolTipProps } from '@elastic/eui'; +import { OptionalToolTip } from './optional_tooltip'; + +interface Props { + 'data-test-subj'?: string; + tooltipContent?: EuiToolTipProps['content']; +} + +export const DeprecatedBadge = (props: Props) => { + return ( + <OptionalToolTip tooltipContent={props.tooltipContent}> + <EuiBadge data-test-subj={props['data-test-subj']} color="warning"> + <FormattedMessage + id="xpack.security.management.deprecatedBadge" + defaultMessage="Deprecated" + /> + </EuiBadge> + </OptionalToolTip> + ); +}; diff --git a/x-pack/plugins/security/public/management/badges/disabled_badge.tsx b/x-pack/plugins/security/public/management/badges/disabled_badge.tsx new file mode 100644 index 00000000000000..a1b851e8c28a3a --- /dev/null +++ b/x-pack/plugins/security/public/management/badges/disabled_badge.tsx @@ -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 React from 'react'; +import { FormattedMessage } from '@kbn/i18n/react'; +import { EuiBadge, EuiToolTipProps } from '@elastic/eui'; +import { OptionalToolTip } from './optional_tooltip'; + +interface Props { + 'data-test-subj'?: string; + tooltipContent?: EuiToolTipProps['content']; +} + +export const DisabledBadge = (props: Props) => { + return ( + <OptionalToolTip tooltipContent={props.tooltipContent}> + <EuiBadge data-test-subj={props['data-test-subj']} color="hollow"> + <FormattedMessage id="xpack.security.management.disabledBadge" defaultMessage="Disabled" /> + </EuiBadge> + </OptionalToolTip> + ); +}; diff --git a/x-pack/plugins/security/public/management/badges/enabled_badge.tsx b/x-pack/plugins/security/public/management/badges/enabled_badge.tsx new file mode 100644 index 00000000000000..4c7d3d6dd596ca --- /dev/null +++ b/x-pack/plugins/security/public/management/badges/enabled_badge.tsx @@ -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 React from 'react'; +import { FormattedMessage } from '@kbn/i18n/react'; +import { EuiBadge, EuiToolTipProps } from '@elastic/eui'; +import { OptionalToolTip } from './optional_tooltip'; + +interface Props { + 'data-test-subj'?: string; + tooltipContent?: EuiToolTipProps['content']; +} + +export const EnabledBadge = (props: Props) => { + return ( + <OptionalToolTip tooltipContent={props.tooltipContent}> + <EuiBadge data-test-subj={props['data-test-subj']} color="secondary"> + <FormattedMessage id="xpack.security.management.enabledBadge" defaultMessage="Enabled" /> + </EuiBadge> + </OptionalToolTip> + ); +}; diff --git a/x-pack/plugins/security/public/management/badges/index.ts b/x-pack/plugins/security/public/management/badges/index.ts new file mode 100644 index 00000000000000..b29bac6f0928aa --- /dev/null +++ b/x-pack/plugins/security/public/management/badges/index.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 { DeprecatedBadge } from './deprecated_badge'; +export { DisabledBadge } from './disabled_badge'; +export { EnabledBadge } from './enabled_badge'; +export { ReservedBadge } from './reserved_badge'; diff --git a/x-pack/plugins/security/public/management/badges/optional_tooltip.tsx b/x-pack/plugins/security/public/management/badges/optional_tooltip.tsx new file mode 100644 index 00000000000000..4c412396ac7ec1 --- /dev/null +++ b/x-pack/plugins/security/public/management/badges/optional_tooltip.tsx @@ -0,0 +1,19 @@ +/* + * 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, { ReactElement } from 'react'; +import { EuiToolTipProps, EuiToolTip } from '@elastic/eui'; + +interface Props { + children: ReactElement<any>; + tooltipContent?: EuiToolTipProps['content']; +} +export const OptionalToolTip = (props: Props) => { + if (props.tooltipContent) { + return <EuiToolTip content={props.tooltipContent}>{props.children}</EuiToolTip>; + } + return props.children; +}; diff --git a/x-pack/plugins/security/public/management/badges/reserved_badge.tsx b/x-pack/plugins/security/public/management/badges/reserved_badge.tsx new file mode 100644 index 00000000000000..603e3fa372aecd --- /dev/null +++ b/x-pack/plugins/security/public/management/badges/reserved_badge.tsx @@ -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 React from 'react'; +import { FormattedMessage } from '@kbn/i18n/react'; +import { EuiBadge, EuiToolTipProps } from '@elastic/eui'; +import { OptionalToolTip } from './optional_tooltip'; + +interface Props { + 'data-test-subj'?: string; + tooltipContent?: EuiToolTipProps['content']; +} + +export const ReservedBadge = (props: Props) => { + return ( + <OptionalToolTip tooltipContent={props.tooltipContent}> + <EuiBadge data-test-subj={props['data-test-subj']} color="primary"> + <FormattedMessage id="xpack.security.management.reservedBadge" defaultMessage="Reserved" /> + </EuiBadge> + </OptionalToolTip> + ); +}; diff --git a/x-pack/plugins/security/public/management/role_combo_box/index.ts b/x-pack/plugins/security/public/management/role_combo_box/index.ts new file mode 100644 index 00000000000000..b7c827a22205f5 --- /dev/null +++ b/x-pack/plugins/security/public/management/role_combo_box/index.ts @@ -0,0 +1,7 @@ +/* + * 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 { RoleComboBox } from './role_combo_box'; diff --git a/x-pack/plugins/security/public/management/role_combo_box/role_combo_box.test.tsx b/x-pack/plugins/security/public/management/role_combo_box/role_combo_box.test.tsx new file mode 100644 index 00000000000000..6a041144d0b6a0 --- /dev/null +++ b/x-pack/plugins/security/public/management/role_combo_box/role_combo_box.test.tsx @@ -0,0 +1,110 @@ +/* + * 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 { mountWithIntl } from 'test_utils/enzyme_helpers'; + +import { RoleComboBox } from '.'; +import { EuiComboBox } from '@elastic/eui'; +import { findTestSubject } from 'test_utils/find_test_subject'; + +describe('RoleComboBox', () => { + it('renders the provided list of roles via EuiComboBox options', () => { + const availableRoles = [ + { + name: 'role-1', + elasticsearch: { cluster: [], indices: [], run_as: [] }, + kibana: [], + metadata: {}, + }, + { + name: 'role-2', + elasticsearch: { cluster: [], indices: [], run_as: [] }, + kibana: [], + metadata: {}, + }, + ]; + const wrapper = mountWithIntl( + <RoleComboBox availableRoles={availableRoles} selectedRoleNames={[]} onChange={jest.fn()} /> + ); + + expect(wrapper.find(EuiComboBox).props().options).toMatchInlineSnapshot(` + Array [ + Object { + "color": "default", + "data-test-subj": "roleOption-role-1", + "label": "role-1", + "value": Object { + "isDeprecated": false, + }, + }, + Object { + "color": "default", + "data-test-subj": "roleOption-role-2", + "label": "role-2", + "value": Object { + "isDeprecated": false, + }, + }, + ] + `); + }); + + it('renders deprecated roles as such', () => { + const availableRoles = [ + { + name: 'role-1', + elasticsearch: { cluster: [], indices: [], run_as: [] }, + kibana: [], + metadata: { _deprecated: true }, + }, + ]; + const wrapper = mountWithIntl( + <RoleComboBox availableRoles={availableRoles} selectedRoleNames={[]} onChange={jest.fn()} /> + ); + + expect(wrapper.find(EuiComboBox).props().options).toMatchInlineSnapshot(` + Array [ + Object { + "color": "warning", + "data-test-subj": "roleOption-role-1", + "label": "role-1", + "value": Object { + "isDeprecated": true, + }, + }, + ] + `); + }); + + it('renders the selected role names in the expanded list, coded according to deprecated status', () => { + const availableRoles = [ + { + name: 'role-1', + elasticsearch: { cluster: [], indices: [], run_as: [] }, + kibana: [], + metadata: {}, + }, + { + name: 'role-2', + elasticsearch: { cluster: [], indices: [], run_as: [] }, + kibana: [], + metadata: {}, + }, + ]; + const wrapper = mountWithIntl( + <div> + <RoleComboBox availableRoles={availableRoles} selectedRoleNames={[]} onChange={jest.fn()} /> + </div> + ); + + findTestSubject(wrapper, 'comboBoxToggleListButton').simulate('click'); + + wrapper.find(EuiComboBox).setState({ isListOpen: true }); + + expect(findTestSubject(wrapper, 'rolesDropdown-renderOption')).toMatchInlineSnapshot(`null`); + }); +}); diff --git a/x-pack/plugins/security/public/management/role_combo_box/role_combo_box.tsx b/x-pack/plugins/security/public/management/role_combo_box/role_combo_box.tsx new file mode 100644 index 00000000000000..65fd8a8324a7d6 --- /dev/null +++ b/x-pack/plugins/security/public/management/role_combo_box/role_combo_box.tsx @@ -0,0 +1,61 @@ +/* + * 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 { i18n } from '@kbn/i18n'; +import { EuiComboBox } from '@elastic/eui'; +import { Role, isRoleDeprecated } from '../../../common/model'; +import { RoleComboBoxOption } from './role_combo_box_option'; + +interface Props { + availableRoles: Role[]; + selectedRoleNames: string[]; + onChange: (selectedRoleNames: string[]) => void; + placeholder?: string; + isLoading?: boolean; + isDisabled?: boolean; +} + +export const RoleComboBox = (props: Props) => { + const onRolesChange = (selectedItems: Array<{ label: string }>) => { + props.onChange(selectedItems.map(item => item.label)); + }; + + const roleNameToOption = (roleName: string) => { + const roleDefinition = props.availableRoles.find(role => role.name === roleName); + const isDeprecated: boolean = (roleDefinition && isRoleDeprecated(roleDefinition)) ?? false; + return { + color: isDeprecated ? 'warning' : 'default', + 'data-test-subj': `roleOption-${roleName}`, + label: roleName, + value: { + isDeprecated, + }, + }; + }; + + const options = props.availableRoles.map(role => roleNameToOption(role.name)); + + const selectedOptions = props.selectedRoleNames.map(roleNameToOption); + + return ( + <EuiComboBox + data-test-subj="rolesDropdown" + placeholder={ + props.placeholder || + i18n.translate('xpack.security.management.users.editUser.addRolesPlaceholder', { + defaultMessage: 'Add roles', + }) + } + onChange={onRolesChange} + isLoading={props.isLoading} + isDisabled={props.isDisabled} + options={options} + selectedOptions={selectedOptions} + renderOption={option => <RoleComboBoxOption option={option} />} + /> + ); +}; diff --git a/x-pack/plugins/security/public/management/role_combo_box/role_combo_box_option.test.tsx b/x-pack/plugins/security/public/management/role_combo_box/role_combo_box_option.test.tsx new file mode 100644 index 00000000000000..c1ac381ba9994a --- /dev/null +++ b/x-pack/plugins/security/public/management/role_combo_box/role_combo_box_option.test.tsx @@ -0,0 +1,57 @@ +/* + * 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 { shallowWithIntl } from 'test_utils/enzyme_helpers'; +import { RoleComboBoxOption } from './role_combo_box_option'; + +describe('RoleComboBoxOption', () => { + it('renders a regular role correctly', () => { + const wrapper = shallowWithIntl( + <RoleComboBoxOption + option={{ + color: 'default', + label: 'role-1', + }} + /> + ); + + expect(wrapper).toMatchInlineSnapshot(` + <EuiText + color="default" + data-test-subj="rolesDropdown-renderOption" + > + role-1 + + </EuiText> + `); + }); + + it('renders a deprecated role correctly', () => { + const wrapper = shallowWithIntl( + <RoleComboBoxOption + option={{ + color: 'warning', + label: 'role-1', + value: { + isDeprecated: true, + }, + }} + /> + ); + + expect(wrapper).toMatchInlineSnapshot(` + <EuiText + color="warning" + data-test-subj="rolesDropdown-renderOption" + > + role-1 + + (deprecated) + </EuiText> + `); + }); +}); diff --git a/x-pack/plugins/security/public/management/role_combo_box/role_combo_box_option.tsx b/x-pack/plugins/security/public/management/role_combo_box/role_combo_box_option.tsx new file mode 100644 index 00000000000000..126a3151adf012 --- /dev/null +++ b/x-pack/plugins/security/public/management/role_combo_box/role_combo_box_option.tsx @@ -0,0 +1,31 @@ +/* + * 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 { i18n } from '@kbn/i18n'; + +import { EuiComboBoxOptionProps, EuiText } from '@elastic/eui'; + +interface Props { + option: EuiComboBoxOptionProps<{ isDeprecated: boolean }>; +} + +export const RoleComboBoxOption = ({ option }: Props) => { + const isDeprecated = option.value?.isDeprecated ?? false; + const deprecatedLabel = i18n.translate( + 'xpack.security.management.users.editUser.deprecatedRoleText', + { + defaultMessage: '(deprecated)', + } + ); + + return ( + <EuiText color={option.color as any} data-test-subj="rolesDropdown-renderOption"> + {option.label} {isDeprecated ? deprecatedLabel : ''} + </EuiText> + ); +}; diff --git a/x-pack/plugins/security/public/management/role_mappings/edit_role_mapping/edit_role_mapping_page.test.tsx b/x-pack/plugins/security/public/management/role_mappings/edit_role_mapping/edit_role_mapping_page.test.tsx index 96bc81c8cd4d04..149c1271123d24 100644 --- a/x-pack/plugins/security/public/management/role_mappings/edit_role_mapping/edit_role_mapping_page.test.tsx +++ b/x-pack/plugins/security/public/management/role_mappings/edit_role_mapping/edit_role_mapping_page.test.tsx @@ -17,7 +17,6 @@ import { EditRoleMappingPage } from '.'; import { NoCompatibleRealms, SectionLoading, PermissionDenied } from '../components'; import { VisualRuleEditor } from './rule_editor_panel/visual_rule_editor'; import { JSONRuleEditor } from './rule_editor_panel/json_rule_editor'; -import { EuiComboBox } from '@elastic/eui'; import { RolesAPIClient } from '../../roles'; import { Role } from '../../../../common/model'; import { DocumentationLinksService } from '../documentation_links'; @@ -25,6 +24,7 @@ import { DocumentationLinksService } from '../documentation_links'; import { coreMock } from '../../../../../../../src/core/public/mocks'; import { roleMappingsAPIClientMock } from '../role_mappings_api_client.mock'; import { rolesAPIClientMock } from '../../roles/roles_api_client.mock'; +import { RoleComboBox } from '../../role_combo_box'; describe('EditRoleMappingPage', () => { let rolesAPI: PublicMethodsOf<RolesAPIClient>; @@ -33,6 +33,7 @@ describe('EditRoleMappingPage', () => { (rolesAPI as jest.Mocked<RolesAPIClient>).getRoles.mockResolvedValue([ { name: 'foo_role' }, { name: 'bar role' }, + { name: 'some-deprecated-role', metadata: { _deprecated: true } }, ] as Role[]); }); @@ -63,10 +64,10 @@ describe('EditRoleMappingPage', () => { target: { value: 'my-role-mapping' }, }); - (wrapper - .find(EuiComboBox) - .filter('[data-test-subj="roleMappingFormRoleComboBox"]') - .props() as any).onChange([{ label: 'foo_role' }]); + wrapper + .find(RoleComboBox) + .props() + .onChange(['foo_role']); findTestSubject(wrapper, 'roleMappingsAddRuleButton').simulate('click'); @@ -126,10 +127,10 @@ describe('EditRoleMappingPage', () => { findTestSubject(wrapper, 'switchToRolesButton').simulate('click'); - (wrapper - .find(EuiComboBox) - .filter('[data-test-subj="roleMappingFormRoleComboBox"]') - .props() as any).onChange([{ label: 'foo_role' }]); + wrapper + .find(RoleComboBox) + .props() + .onChange(['foo_role']); findTestSubject(wrapper, 'roleMappingsAddRuleButton').simulate('click'); wrapper.find('button[id="addRuleOption"]').simulate('click'); @@ -207,6 +208,42 @@ describe('EditRoleMappingPage', () => { expect(wrapper.find(NoCompatibleRealms)).toHaveLength(1); }); + it('renders a message when editing a mapping with deprecated roles assigned', async () => { + const roleMappingsAPI = roleMappingsAPIClientMock.create(); + roleMappingsAPI.getRoleMapping.mockResolvedValue({ + name: 'foo', + roles: ['some-deprecated-role'], + enabled: true, + rules: { + field: { username: '*' }, + }, + }); + roleMappingsAPI.checkRoleMappingFeatures.mockResolvedValue({ + canManageRoleMappings: true, + hasCompatibleRealms: true, + canUseInlineScripts: true, + canUseStoredScripts: true, + }); + + const { docLinks, notifications } = coreMock.createStart(); + const wrapper = mountWithIntl( + <EditRoleMappingPage + name={'foo'} + roleMappingsAPI={roleMappingsAPI} + rolesAPIClient={rolesAPI} + notifications={notifications} + docLinks={new DocumentationLinksService(docLinks)} + /> + ); + + expect(findTestSubject(wrapper, 'deprecatedRolesAssigned')).toHaveLength(0); + + await nextTick(); + wrapper.update(); + + expect(findTestSubject(wrapper, 'deprecatedRolesAssigned')).toHaveLength(1); + }); + it('renders a warning when editing a mapping with a stored role template, when stored scripts are disabled', async () => { const roleMappingsAPI = roleMappingsAPIClientMock.create(); roleMappingsAPI.getRoleMapping.mockResolvedValue({ diff --git a/x-pack/plugins/security/public/management/role_mappings/edit_role_mapping/mapping_info_panel/mapping_info_panel.tsx b/x-pack/plugins/security/public/management/role_mappings/edit_role_mapping/mapping_info_panel/mapping_info_panel.tsx index 02af6bfbafa7e0..b376a3943ff485 100644 --- a/x-pack/plugins/security/public/management/role_mappings/edit_role_mapping/mapping_info_panel/mapping_info_panel.tsx +++ b/x-pack/plugins/security/public/management/role_mappings/edit_role_mapping/mapping_info_panel/mapping_info_panel.tsx @@ -17,6 +17,7 @@ import { EuiIcon, EuiSwitch, } from '@elastic/eui'; +import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; import { RoleMapping } from '../../../../../common/model'; import { RolesAPIClient } from '../../../roles'; @@ -276,12 +277,12 @@ export class MappingInfoPanel extends Component<Props, State> { > <EuiSwitch name={'enabled'} - label={ - <FormattedMessage - id="xpack.security.management.editRoleMapping.roleMappingEnabledLabel" - defaultMessage="Enable mapping" - /> - } + label={i18n.translate( + 'xpack.security.management.editRoleMapping.roleMappingEnabledLabel', + { + defaultMessage: 'Enable mapping', + } + )} showLabel={false} data-test-subj="roleMappingsEnabledSwitch" checked={this.props.roleMapping.enabled} diff --git a/x-pack/plugins/security/public/management/role_mappings/edit_role_mapping/role_selector/role_selector.tsx b/x-pack/plugins/security/public/management/role_mappings/edit_role_mapping/role_selector/role_selector.tsx index 992c2741ae93ee..8e1597cf3d5981 100644 --- a/x-pack/plugins/security/public/management/role_mappings/edit_role_mapping/role_selector/role_selector.tsx +++ b/x-pack/plugins/security/public/management/role_mappings/edit_role_mapping/role_selector/role_selector.tsx @@ -6,11 +6,13 @@ import React, { Fragment } from 'react'; import { i18n } from '@kbn/i18n'; -import { EuiComboBox, EuiFormRow, EuiHorizontalRule } from '@elastic/eui'; -import { RoleMapping, Role } from '../../../../../common/model'; +import { FormattedMessage } from '@kbn/i18n/react'; +import { EuiFormRow, EuiHorizontalRule } from '@elastic/eui'; +import { RoleMapping, Role, isRoleDeprecated } from '../../../../../common/model'; import { RolesAPIClient } from '../../../roles'; import { AddRoleTemplateButton } from './add_role_template_button'; import { RoleTemplateEditor } from './role_template_editor'; +import { RoleComboBox } from '../../../role_combo_box'; interface Props { rolesAPIClient: PublicMethodsOf<RolesAPIClient>; @@ -40,7 +42,7 @@ export class RoleSelector extends React.Component<Props, State> { public render() { const { mode } = this.props; return ( - <EuiFormRow fullWidth> + <EuiFormRow fullWidth helpText={this.getHelpText()}> {mode === 'roles' ? this.getRoleComboBox() : this.getRoleTemplates()} </EuiFormRow> ); @@ -49,19 +51,18 @@ export class RoleSelector extends React.Component<Props, State> { private getRoleComboBox = () => { const { roles = [] } = this.props.roleMapping; return ( - <EuiComboBox - data-test-subj="roleMappingFormRoleComboBox" + <RoleComboBox placeholder={i18n.translate( 'xpack.security.management.editRoleMapping.selectRolesPlaceholder', { defaultMessage: 'Select one or more roles' } )} isLoading={this.state.roles.length === 0} - options={this.state.roles.map(r => ({ label: r.name }))} - selectedOptions={roles!.map(r => ({ label: r }))} - onChange={selectedOptions => { + availableRoles={this.state.roles} + selectedRoleNames={roles} + onChange={selectedRoles => { this.props.onChange({ ...this.props.roleMapping, - roles: selectedOptions.map(so => so.label), + roles: selectedRoles, role_templates: [], }); }} @@ -130,4 +131,25 @@ export class RoleSelector extends React.Component<Props, State> { </div> ); }; + + private getHelpText = () => { + if (this.props.mode === 'roles' && this.hasDeprecatedRolesAssigned()) { + return ( + <span data-test-subj="deprecatedRolesAssigned"> + <FormattedMessage + id="xpack.security.management.editRoleMapping.deprecatedRolesAssigned" + defaultMessage="This mapping is assigned a deprecated role. Please migrate to a supported role." + /> + </span> + ); + } + }; + + private hasDeprecatedRolesAssigned = () => { + return ( + this.props.roleMapping.roles?.some(r => + this.state.roles.some(role => role.name === r && isRoleDeprecated(role)) + ) ?? false + ); + }; } diff --git a/x-pack/plugins/security/public/management/role_mappings/role_mappings_grid/role_mappings_grid_page.test.tsx b/x-pack/plugins/security/public/management/role_mappings/role_mappings_grid/role_mappings_grid_page.test.tsx index de0722b4cd85e2..0d343ad33d78ef 100644 --- a/x-pack/plugins/security/public/management/role_mappings/role_mappings_grid/role_mappings_grid_page.test.tsx +++ b/x-pack/plugins/security/public/management/role_mappings/role_mappings_grid/role_mappings_grid_page.test.tsx @@ -16,6 +16,7 @@ import { DocumentationLinksService } from '../documentation_links'; import { coreMock } from '../../../../../../../src/core/public/mocks'; import { roleMappingsAPIClientMock } from '../role_mappings_api_client.mock'; +import { rolesAPIClientMock } from '../../roles/index.mock'; describe('RoleMappingsGridPage', () => { it('renders an empty prompt when no role mappings exist', async () => { @@ -29,6 +30,7 @@ describe('RoleMappingsGridPage', () => { const { docLinks, notifications } = coreMock.createStart(); const wrapper = mountWithIntl( <RoleMappingsGridPage + rolesAPIClient={rolesAPIClientMock.create()} roleMappingsAPI={roleMappingsAPI} notifications={notifications} docLinks={new DocumentationLinksService(docLinks)} @@ -55,6 +57,7 @@ describe('RoleMappingsGridPage', () => { const { docLinks, notifications } = coreMock.createStart(); const wrapper = mountWithIntl( <RoleMappingsGridPage + rolesAPIClient={rolesAPIClientMock.create()} roleMappingsAPI={roleMappingsAPI} notifications={notifications} docLinks={new DocumentationLinksService(docLinks)} @@ -89,6 +92,7 @@ describe('RoleMappingsGridPage', () => { const { docLinks, notifications } = coreMock.createStart(); const wrapper = mountWithIntl( <RoleMappingsGridPage + rolesAPIClient={rolesAPIClientMock.create()} roleMappingsAPI={roleMappingsAPI} notifications={notifications} docLinks={new DocumentationLinksService(docLinks)} @@ -104,7 +108,7 @@ describe('RoleMappingsGridPage', () => { expect(wrapper.find(NoCompatibleRealms)).toHaveLength(1); }); - it('renders links to mapped roles', async () => { + it('renders links to mapped roles, even if the roles API call returns nothing', async () => { const roleMappingsAPI = roleMappingsAPIClientMock.create(); roleMappingsAPI.getRoleMappings.mockResolvedValue([ { @@ -122,6 +126,7 @@ describe('RoleMappingsGridPage', () => { const { docLinks, notifications } = coreMock.createStart(); const wrapper = mountWithIntl( <RoleMappingsGridPage + rolesAPIClient={rolesAPIClientMock.create()} roleMappingsAPI={roleMappingsAPI} notifications={notifications} docLinks={new DocumentationLinksService(docLinks)} @@ -155,6 +160,7 @@ describe('RoleMappingsGridPage', () => { const { docLinks, notifications } = coreMock.createStart(); const wrapper = mountWithIntl( <RoleMappingsGridPage + rolesAPIClient={rolesAPIClientMock.create()} roleMappingsAPI={roleMappingsAPI} notifications={notifications} docLinks={new DocumentationLinksService(docLinks)} @@ -192,6 +198,7 @@ describe('RoleMappingsGridPage', () => { const { docLinks, notifications } = coreMock.createStart(); const wrapper = mountWithIntl( <RoleMappingsGridPage + rolesAPIClient={rolesAPIClientMock.create()} roleMappingsAPI={roleMappingsAPI} notifications={notifications} docLinks={new DocumentationLinksService(docLinks)} @@ -216,4 +223,70 @@ describe('RoleMappingsGridPage', () => { // Expect an additional API call to refresh the grid expect(roleMappingsAPI.getRoleMappings).toHaveBeenCalledTimes(2); }); + + it('renders a warning when a mapping is assigned a deprecated role', async () => { + const roleMappingsAPI = roleMappingsAPIClientMock.create(); + roleMappingsAPI.getRoleMappings.mockResolvedValue([ + { + name: 'some-realm', + enabled: true, + roles: ['superuser', 'kibana_user'], + rules: { field: { username: '*' } }, + }, + ]); + roleMappingsAPI.checkRoleMappingFeatures.mockResolvedValue({ + canManageRoleMappings: true, + hasCompatibleRealms: true, + }); + roleMappingsAPI.deleteRoleMappings.mockResolvedValue([ + { + name: 'some-realm', + success: true, + }, + ]); + + const roleAPIClient = rolesAPIClientMock.create(); + roleAPIClient.getRoles.mockResolvedValue([ + { + name: 'kibana_user', + metadata: { + _deprecated: true, + _deprecated_reason: `I don't like you.`, + }, + }, + ]); + + const { docLinks, notifications } = coreMock.createStart(); + const wrapper = mountWithIntl( + <RoleMappingsGridPage + rolesAPIClient={roleAPIClient} + roleMappingsAPI={roleMappingsAPI} + notifications={notifications} + docLinks={new DocumentationLinksService(docLinks)} + /> + ); + await nextTick(); + wrapper.update(); + + const deprecationTooltip = wrapper.find('[data-test-subj="roleDeprecationTooltip"]').props(); + + expect(deprecationTooltip).toMatchInlineSnapshot(` + Object { + "children": <div> + kibana_user + + <EuiIcon + className="eui-alignTop" + color="warning" + size="s" + type="alert" + /> + </div>, + "content": "The kibana_user role is deprecated. I don't like you.", + "data-test-subj": "roleDeprecationTooltip", + "delay": "regular", + "position": "top", + } + `); + }); }); diff --git a/x-pack/plugins/security/public/management/role_mappings/role_mappings_grid/role_mappings_grid_page.tsx b/x-pack/plugins/security/public/management/role_mappings/role_mappings_grid/role_mappings_grid_page.tsx index feb918cb6b301f..5802c3444e85fa 100644 --- a/x-pack/plugins/security/public/management/role_mappings/role_mappings_grid/role_mappings_grid_page.tsx +++ b/x-pack/plugins/security/public/management/role_mappings/role_mappings_grid/role_mappings_grid_page.tsx @@ -6,7 +6,6 @@ import React, { Component, Fragment } from 'react'; import { - EuiBadge, EuiButton, EuiButtonIcon, EuiCallOut, @@ -26,7 +25,7 @@ import { import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; import { NotificationsStart } from 'src/core/public'; -import { RoleMapping } from '../../../../common/model'; +import { RoleMapping, Role } from '../../../../common/model'; import { EmptyPrompt } from './empty_prompt'; import { NoCompatibleRealms, @@ -34,15 +33,15 @@ import { PermissionDenied, SectionLoading, } from '../components'; -import { - getCreateRoleMappingHref, - getEditRoleMappingHref, - getEditRoleHref, -} from '../../management_urls'; +import { getCreateRoleMappingHref, getEditRoleMappingHref } from '../../management_urls'; import { DocumentationLinksService } from '../documentation_links'; import { RoleMappingsAPIClient } from '../role_mappings_api_client'; +import { RoleTableDisplay } from '../../role_table_display'; +import { RolesAPIClient } from '../../roles'; +import { EnabledBadge, DisabledBadge } from '../../badges'; interface Props { + rolesAPIClient: PublicMethodsOf<RolesAPIClient>; roleMappingsAPI: PublicMethodsOf<RoleMappingsAPIClient>; notifications: NotificationsStart; docLinks: DocumentationLinksService; @@ -51,6 +50,7 @@ interface Props { interface State { loadState: 'loadingApp' | 'loadingTable' | 'permissionDenied' | 'finished'; roleMappings: null | RoleMapping[]; + roles: null | Role[]; selectedItems: RoleMapping[]; hasCompatibleRealms: boolean; error: any; @@ -62,6 +62,7 @@ export class RoleMappingsGridPage extends Component<Props, State> { this.state = { loadState: 'loadingApp', roleMappings: null, + roles: null, hasCompatibleRealms: true, selectedItems: [], error: undefined, @@ -308,7 +309,7 @@ export class RoleMappingsGridPage extends Component<Props, State> { }), sortable: true, render: (entry: any, record: RoleMapping) => { - const { roles = [], role_templates: roleTemplates = [] } = record; + const { roles: assignedRoleNames = [], role_templates: roleTemplates = [] } = record; if (roleTemplates.length > 0) { return ( <span data-test-subj="roleMappingRoles"> @@ -322,13 +323,11 @@ export class RoleMappingsGridPage extends Component<Props, State> { </span> ); } - const roleLinks = roles.map((rolename, index) => { - return ( - <Fragment key={rolename}> - <EuiLink href={getEditRoleHref(rolename)}>{rolename}</EuiLink> - {index === roles.length - 1 ? null : ', '} - </Fragment> - ); + const roleLinks = assignedRoleNames.map((rolename, index) => { + const role: Role | string = + this.state.roles?.find(r => r.name === rolename) ?? rolename; + + return <RoleTableDisplay role={role} key={rolename} />; }); return <div data-test-subj="roleMappingRoles">{roleLinks}</div>; }, @@ -341,24 +340,10 @@ export class RoleMappingsGridPage extends Component<Props, State> { sortable: true, render: (enabled: boolean) => { if (enabled) { - return ( - <EuiBadge data-test-subj="roleMappingEnabled" color="secondary"> - <FormattedMessage - id="xpack.security.management.roleMappings.enabledBadge" - defaultMessage="Enabled" - /> - </EuiBadge> - ); + return <EnabledBadge data-test-subj="roleMappingEnabled" />; } - return ( - <EuiBadge color="hollow" data-test-subj="roleMappingEnabled"> - <FormattedMessage - id="xpack.security.management.roleMappings.disabledBadge" - defaultMessage="Disabled" - /> - </EuiBadge> - ); + return <DisabledBadge data-test-subj="roleMappingEnabled" />; }, }, { @@ -458,13 +443,27 @@ export class RoleMappingsGridPage extends Component<Props, State> { }); if (canManageRoleMappings) { - this.loadRoleMappings(); + this.performInitialLoad(); } } catch (e) { this.setState({ error: e, loadState: 'finished' }); } } + private performInitialLoad = async () => { + try { + const [roleMappings, roles] = await Promise.all([ + this.props.roleMappingsAPI.getRoleMappings(), + this.props.rolesAPIClient.getRoles(), + ]); + this.setState({ roleMappings, roles }); + } catch (e) { + this.setState({ error: e }); + } + + this.setState({ loadState: 'finished' }); + }; + private reloadRoleMappings = () => { this.setState({ roleMappings: [], loadState: 'loadingTable' }); this.loadRoleMappings(); diff --git a/x-pack/plugins/security/public/management/role_mappings/role_mappings_management_app.test.tsx b/x-pack/plugins/security/public/management/role_mappings/role_mappings_management_app.test.tsx index 9c41d6624065e1..5907413d7299eb 100644 --- a/x-pack/plugins/security/public/management/role_mappings/role_mappings_management_app.test.tsx +++ b/x-pack/plugins/security/public/management/role_mappings/role_mappings_management_app.test.tsx @@ -53,7 +53,7 @@ describe('roleMappingsManagementApp', () => { expect(setBreadcrumbs).toHaveBeenCalledWith([{ href: `#${basePath}`, text: 'Role Mappings' }]); expect(container).toMatchInlineSnapshot(` <div> - Role Mappings Page: {"notifications":{"toasts":{}},"roleMappingsAPI":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}},"docLinks":{"esDocBasePath":"https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/"}} + Role Mappings Page: {"notifications":{"toasts":{}},"rolesAPIClient":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}},"roleMappingsAPI":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}},"docLinks":{"esDocBasePath":"https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/"}} </div> `); diff --git a/x-pack/plugins/security/public/management/role_mappings/role_mappings_management_app.tsx b/x-pack/plugins/security/public/management/role_mappings/role_mappings_management_app.tsx index af1572cedbadef..8e1ac8d7f69570 100644 --- a/x-pack/plugins/security/public/management/role_mappings/role_mappings_management_app.tsx +++ b/x-pack/plugins/security/public/management/role_mappings/role_mappings_management_app.tsx @@ -48,6 +48,7 @@ export const roleMappingsManagementApp = Object.freeze({ return ( <RoleMappingsGridPage notifications={notifications} + rolesAPIClient={new RolesAPIClient(http)} roleMappingsAPI={roleMappingsAPIClient} docLinks={dockLinksService} /> diff --git a/x-pack/plugins/security/public/management/role_table_display/index.ts b/x-pack/plugins/security/public/management/role_table_display/index.ts new file mode 100644 index 00000000000000..71f100ee68bfa6 --- /dev/null +++ b/x-pack/plugins/security/public/management/role_table_display/index.ts @@ -0,0 +1,7 @@ +/* + * 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 { RoleTableDisplay } from './role_table_display'; diff --git a/x-pack/plugins/security/public/management/role_table_display/role_table_display.tsx b/x-pack/plugins/security/public/management/role_table_display/role_table_display.tsx new file mode 100644 index 00000000000000..28978f00900113 --- /dev/null +++ b/x-pack/plugins/security/public/management/role_table_display/role_table_display.tsx @@ -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 React from 'react'; +import { EuiLink, EuiToolTip, EuiIcon } from '@elastic/eui'; +import { Role, isRoleDeprecated, getExtendedRoleDeprecationNotice } from '../../../common/model'; +import { getEditRoleHref } from '../management_urls'; + +interface Props { + role: Role | string; +} + +export const RoleTableDisplay = ({ role }: Props) => { + let content; + let href; + if (typeof role === 'string') { + content = <div>{role}</div>; + href = getEditRoleHref(role); + } else if (isRoleDeprecated(role)) { + content = ( + <EuiToolTip + content={getExtendedRoleDeprecationNotice(role)} + data-test-subj="roleDeprecationTooltip" + > + <div> + {role.name} <EuiIcon type="alert" color="warning" size="s" className={'eui-alignTop'} /> + </div> + </EuiToolTip> + ); + href = getEditRoleHref(role.name); + } else { + content = <div>{role.name}</div>; + href = getEditRoleHref(role.name); + } + return <EuiLink href={href}>{content}</EuiLink>; +}; diff --git a/x-pack/plugins/security/public/management/roles/edit_role/edit_role_page.tsx b/x-pack/plugins/security/public/management/roles/edit_role/edit_role_page.tsx index 42ec3fa419167c..cd7766ef387483 100644 --- a/x-pack/plugins/security/public/management/roles/edit_role/edit_role_page.tsx +++ b/x-pack/plugins/security/public/management/roles/edit_role/edit_role_page.tsx @@ -17,6 +17,7 @@ import { EuiSpacer, EuiText, EuiTitle, + EuiCallOut, } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; @@ -44,11 +45,13 @@ import { RawKibanaPrivileges, Role, BuiltinESPrivileges, - isReadOnlyRole as checkIfRoleReadOnly, - isReservedRole as checkIfRoleReserved, + isRoleReadOnly as checkIfRoleReadOnly, + isRoleReserved as checkIfRoleReserved, + isRoleDeprecated as checkIfRoleDeprecated, copyRole, prepareRoleClone, RoleIndexPrivilege, + getExtendedRoleDeprecationNotice, } from '../../../../common/model'; import { ROLES_PATH } from '../../management_urls'; import { RoleValidationResult, RoleValidator } from './validate_role'; @@ -299,8 +302,9 @@ export const EditRolePage: FunctionComponent<Props> = ({ } const isEditingExistingRole = !!roleName && action === 'edit'; - const isReadOnlyRole = checkIfRoleReadOnly(role); - const isReservedRole = checkIfRoleReserved(role); + const isRoleReadOnly = checkIfRoleReadOnly(role); + const isRoleReserved = checkIfRoleReserved(role); + const isDeprecatedRole = checkIfRoleDeprecated(role); const [kibanaPrivileges, builtInESPrivileges] = privileges; @@ -309,7 +313,7 @@ export const EditRolePage: FunctionComponent<Props> = ({ const props: HTMLProps<HTMLDivElement> = { tabIndex: 0, }; - if (isReservedRole) { + if (isRoleReserved) { titleText = ( <FormattedMessage id="xpack.security.management.editRole.viewingRoleTitle" @@ -343,7 +347,7 @@ export const EditRolePage: FunctionComponent<Props> = ({ }; const getActionButton = () => { - if (isEditingExistingRole && !isReadOnlyRole) { + if (isEditingExistingRole && !isRoleReadOnly) { return ( <EuiFlexItem grow={false}> <DeleteRoleButton canDelete={true} onDelete={handleDeleteRole} /> @@ -365,7 +369,7 @@ export const EditRolePage: FunctionComponent<Props> = ({ /> } helpText={ - !isReservedRole && isEditingExistingRole ? ( + !isRoleReserved && isEditingExistingRole ? ( <FormattedMessage id="xpack.security.management.editRole.roleNameFormRowHelpText" defaultMessage="A role's name cannot be changed once it has been created." @@ -381,7 +385,7 @@ export const EditRolePage: FunctionComponent<Props> = ({ value={role.name || ''} onChange={onNameChange} data-test-subj={'roleFormNameInput'} - readOnly={isReservedRole || isEditingExistingRole} + readOnly={isRoleReserved || isEditingExistingRole} /> </EuiFormRow> </EuiPanel> @@ -400,7 +404,7 @@ export const EditRolePage: FunctionComponent<Props> = ({ <EuiSpacer /> <ElasticsearchPrivileges role={role} - editable={!isReadOnlyRole} + editable={!isRoleReadOnly} indicesAPIClient={indicesAPIClient} onChange={onRoleChange} runAsUsers={runAsUsers} @@ -426,7 +430,7 @@ export const EditRolePage: FunctionComponent<Props> = ({ spacesEnabled={spacesEnabled} features={features} uiCapabilities={uiCapabilities} - editable={!isReadOnlyRole} + editable={!isRoleReadOnly} role={role} onChange={onRoleChange} validator={validator} @@ -436,7 +440,7 @@ export const EditRolePage: FunctionComponent<Props> = ({ }; const getFormButtons = () => { - if (isReadOnlyRole) { + if (isRoleReadOnly) { return getReturnToRoleListButton(); } @@ -479,7 +483,7 @@ export const EditRolePage: FunctionComponent<Props> = ({ data-test-subj={`roleFormSaveButton`} fill onClick={saveRole} - disabled={isReservedRole} + disabled={isRoleReserved} > {saveText} </EuiButton> @@ -563,7 +567,7 @@ export const EditRolePage: FunctionComponent<Props> = ({ <EuiText size="s">{description}</EuiText> - {isReservedRole && ( + {isRoleReserved && ( <Fragment> <EuiSpacer size="s" /> <EuiText size="s" color="subdued"> @@ -577,6 +581,17 @@ export const EditRolePage: FunctionComponent<Props> = ({ </Fragment> )} + {isDeprecatedRole && ( + <Fragment> + <EuiSpacer size="s" /> + <EuiCallOut + title={getExtendedRoleDeprecationNotice(role)} + color="warning" + iconType="alert" + /> + </Fragment> + )} + <EuiSpacer /> {getRoleName()} diff --git a/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/cluster_privileges.tsx b/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/cluster_privileges.tsx index 380d54733ce0e1..54be04ade370e1 100644 --- a/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/cluster_privileges.tsx +++ b/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/cluster_privileges.tsx @@ -7,7 +7,7 @@ import { EuiComboBox, EuiFlexGroup, EuiFlexItem } from '@elastic/eui'; import React, { Component } from 'react'; import _ from 'lodash'; -import { Role, isReadOnlyRole } from '../../../../../../common/model'; +import { Role, isRoleReadOnly } from '../../../../../../common/model'; interface Props { role: Role; @@ -38,7 +38,7 @@ export class ClusterPrivileges extends Component<Props, {}> { selectedOptions={selectedOptions} onChange={this.onClusterPrivilegesChange} onCreateOption={this.onCreateCustomPrivilege} - isDisabled={isReadOnlyRole(role)} + isDisabled={isRoleReadOnly(role)} /> </EuiFlexItem> ); diff --git a/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/index_privilege_form.test.tsx b/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/index_privilege_form.test.tsx index 5e2da513143653..879cd8e2759aba 100644 --- a/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/index_privilege_form.test.tsx +++ b/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/index_privilege_form.test.tsx @@ -23,7 +23,7 @@ test('it renders without crashing', () => { indexPatterns: [], availableFields: [], availableIndexPrivileges: ['all', 'read', 'write', 'index'], - isReadOnlyRole: false, + isRoleReadOnly: false, allowDocumentLevelSecurity: true, allowFieldLevelSecurity: true, validator: new RoleValidator(), @@ -50,7 +50,7 @@ describe('delete button', () => { indexPatterns: [], availableFields: [], availableIndexPrivileges: ['all', 'read', 'write', 'index'], - isReadOnlyRole: false, + isRoleReadOnly: false, allowDocumentLevelSecurity: true, allowFieldLevelSecurity: true, validator: new RoleValidator(), @@ -59,19 +59,19 @@ describe('delete button', () => { intl: {} as any, }; - test('it is hidden when isReadOnlyRole is true', () => { + test('it is hidden when isRoleReadOnly is true', () => { const testProps = { ...props, - isReadOnlyRole: true, + isRoleReadOnly: true, }; const wrapper = mountWithIntl(<IndexPrivilegeForm {...testProps} />); expect(wrapper.find(EuiButtonIcon)).toHaveLength(0); }); - test('it is shown when isReadOnlyRole is false', () => { + test('it is shown when isRoleReadOnly is false', () => { const testProps = { ...props, - isReadOnlyRole: false, + isRoleReadOnly: false, }; const wrapper = mountWithIntl(<IndexPrivilegeForm {...testProps} />); expect(wrapper.find(EuiButtonIcon)).toHaveLength(1); @@ -80,7 +80,7 @@ describe('delete button', () => { test('it invokes onDelete when clicked', () => { const testProps = { ...props, - isReadOnlyRole: false, + isRoleReadOnly: false, }; const wrapper = mountWithIntl(<IndexPrivilegeForm {...testProps} />); wrapper.find(EuiButtonIcon).simulate('click'); @@ -102,7 +102,7 @@ describe(`document level security`, () => { indexPatterns: [], availableFields: [], availableIndexPrivileges: ['all', 'read', 'write', 'index'], - isReadOnlyRole: false, + isRoleReadOnly: false, allowDocumentLevelSecurity: true, allowFieldLevelSecurity: true, validator: new RoleValidator(), @@ -161,7 +161,7 @@ describe('field level security', () => { indexPatterns: [], availableFields: [], availableIndexPrivileges: ['all', 'read', 'write', 'index'], - isReadOnlyRole: false, + isRoleReadOnly: false, allowDocumentLevelSecurity: true, allowFieldLevelSecurity: true, validator: new RoleValidator(), diff --git a/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/index_privilege_form.tsx b/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/index_privilege_form.tsx index 15e0367c2b6dc1..b5d0a2c91d1be2 100644 --- a/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/index_privilege_form.tsx +++ b/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/index_privilege_form.tsx @@ -33,7 +33,7 @@ interface Props { availableFields: string[]; onChange: (indexPrivilege: RoleIndexPrivilege) => void; onDelete: () => void; - isReadOnlyRole: boolean; + isRoleReadOnly: boolean; allowDocumentLevelSecurity: boolean; allowFieldLevelSecurity: boolean; validator: RoleValidator; @@ -68,7 +68,7 @@ export class IndexPrivilegeForm extends Component<Props, State> { <EuiHorizontalRule /> <EuiFlexGroup className="index-privilege-form"> <EuiFlexItem>{this.getPrivilegeForm()}</EuiFlexItem> - {!this.props.isReadOnlyRole && ( + {!this.props.isRoleReadOnly && ( <EuiFlexItem grow={false}> <EuiFormRow hasEmptyLabelSpace> <EuiButtonIcon @@ -109,7 +109,7 @@ export class IndexPrivilegeForm extends Component<Props, State> { selectedOptions={this.props.indexPrivilege.names.map(toOption)} onCreateOption={this.onCreateIndexPatternOption} onChange={this.onIndexPatternsChange} - isDisabled={this.props.isReadOnlyRole} + isDisabled={this.props.isRoleReadOnly} /> </EuiFormRow> </EuiFlexItem> @@ -128,7 +128,7 @@ export class IndexPrivilegeForm extends Component<Props, State> { options={this.props.availableIndexPrivileges.map(toOption)} selectedOptions={this.props.indexPrivilege.privileges.map(toOption)} onChange={this.onPrivilegeChange} - isDisabled={this.props.isReadOnlyRole} + isDisabled={this.props.isRoleReadOnly} /> </EuiFormRow> </EuiFlexItem> @@ -149,7 +149,7 @@ export class IndexPrivilegeForm extends Component<Props, State> { allowDocumentLevelSecurity, availableFields, indexPrivilege, - isReadOnlyRole, + isRoleReadOnly, } = this.props; if (!allowFieldLevelSecurity) { @@ -161,7 +161,7 @@ export class IndexPrivilegeForm extends Component<Props, State> { return ( <> <EuiFlexGroup direction="column"> - {!isReadOnlyRole && ( + {!isRoleReadOnly && ( <EuiFlexItem> { <EuiSwitch @@ -193,7 +193,7 @@ export class IndexPrivilegeForm extends Component<Props, State> { fullWidth={true} className="indexPrivilegeForm__grantedFieldsRow" helpText={ - !isReadOnlyRole && grant.length === 0 ? ( + !isRoleReadOnly && grant.length === 0 ? ( <FormattedMessage id="xpack.security.management.editRoles.indexPrivilegeForm.grantedFieldsFormRowHelpText" defaultMessage="If no fields are granted, then users assigned to this role will not be able to see any data for this index." @@ -210,7 +210,7 @@ export class IndexPrivilegeForm extends Component<Props, State> { selectedOptions={grant.map(toOption)} onCreateOption={this.onCreateGrantedField} onChange={this.onGrantedFieldsChange} - isDisabled={this.props.isReadOnlyRole} + isDisabled={this.props.isRoleReadOnly} /> </Fragment> </EuiFormRow> @@ -233,7 +233,7 @@ export class IndexPrivilegeForm extends Component<Props, State> { selectedOptions={except.map(toOption)} onCreateOption={this.onCreateDeniedField} onChange={this.onDeniedFieldsChange} - isDisabled={isReadOnlyRole} + isDisabled={isRoleReadOnly} /> </Fragment> </EuiFormRow> @@ -248,7 +248,7 @@ export class IndexPrivilegeForm extends Component<Props, State> { }; private getGrantedDocumentsControl = () => { - const { allowDocumentLevelSecurity, indexPrivilege, isReadOnlyRole } = this.props; + const { allowDocumentLevelSecurity, indexPrivilege, isRoleReadOnly } = this.props; if (!allowDocumentLevelSecurity) { return null; @@ -256,7 +256,7 @@ export class IndexPrivilegeForm extends Component<Props, State> { return ( <EuiFlexGroup direction="column"> - {!this.props.isReadOnlyRole && ( + {!this.props.isRoleReadOnly && ( <EuiFlexItem> { <EuiSwitch @@ -270,7 +270,7 @@ export class IndexPrivilegeForm extends Component<Props, State> { compressed={true} checked={this.state.queryExpanded} onChange={this.toggleDocumentQuery} - disabled={isReadOnlyRole} + disabled={isRoleReadOnly} /> } </EuiFlexItem> @@ -292,7 +292,7 @@ export class IndexPrivilegeForm extends Component<Props, State> { fullWidth={true} value={indexPrivilege.query} onChange={this.onQueryChange} - readOnly={this.props.isReadOnlyRole} + readOnly={this.props.isRoleReadOnly} /> </EuiFormRow> </EuiFlexItem> diff --git a/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/index_privileges.tsx b/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/index_privileges.tsx index 2c745067fede2d..1157640ca57a79 100644 --- a/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/index_privileges.tsx +++ b/x-pack/plugins/security/public/management/roles/edit_role/privileges/es/index_privileges.tsx @@ -8,7 +8,7 @@ import React, { Component, Fragment } from 'react'; import { Role, RoleIndexPrivilege, - isReadOnlyRole, + isRoleReadOnly, isRoleEnabled, } from '../../../../../../common/model'; import { SecurityLicense } from '../../../../../../common/licensing'; @@ -57,7 +57,7 @@ export class IndexPrivileges extends Component<Props, State> { // doesn't permit FLS/DLS). allowDocumentLevelSecurity: allowRoleDocumentLevelSecurity || !isRoleEnabled(this.props.role), allowFieldLevelSecurity: allowRoleFieldLevelSecurity || !isRoleEnabled(this.props.role), - isReadOnlyRole: isReadOnlyRole(this.props.role), + isRoleReadOnly: isRoleReadOnly(this.props.role), }; const forms = indices.map((indexPrivilege: RoleIndexPrivilege, idx) => ( @@ -143,7 +143,7 @@ export class IndexPrivileges extends Component<Props, State> { public loadAvailableFields(privileges: RoleIndexPrivilege[]) { // readonly roles cannot be edited, and therefore do not need to fetch available fields. - if (isReadOnlyRole(this.props.role)) { + if (isRoleReadOnly(this.props.role)) { return; } diff --git a/x-pack/plugins/security/public/management/roles/edit_role/privileges/kibana/space_aware_privilege_section/space_aware_privilege_section.tsx b/x-pack/plugins/security/public/management/roles/edit_role/privileges/kibana/space_aware_privilege_section/space_aware_privilege_section.tsx index 5fc238eed0ae74..a847ccb6774852 100644 --- a/x-pack/plugins/security/public/management/roles/edit_role/privileges/kibana/space_aware_privilege_section/space_aware_privilege_section.tsx +++ b/x-pack/plugins/security/public/management/roles/edit_role/privileges/kibana/space_aware_privilege_section/space_aware_privilege_section.tsx @@ -17,7 +17,7 @@ import React, { Component, Fragment } from 'react'; import { Capabilities } from 'src/core/public'; import { Space } from '../../../../../../../../spaces/public'; import { Feature } from '../../../../../../../../features/public'; -import { KibanaPrivileges, Role, isReservedRole } from '../../../../../../../common/model'; +import { KibanaPrivileges, Role, isRoleReserved } from '../../../../../../../common/model'; import { KibanaPrivilegeCalculatorFactory } from '../kibana_privilege_calculator'; import { RoleValidator } from '../../../validate_role'; import { PrivilegeMatrix } from './privilege_matrix'; @@ -219,7 +219,7 @@ class SpaceAwarePrivilegeSectionUI extends Component<Props, State> { return ( <EuiFlexGroup justifyContent="spaceBetween"> <EuiFlexItem grow={false}>{addPrivilegeButton}</EuiFlexItem> - {hasPrivilegesAssigned && !isReservedRole(this.props.role) && ( + {hasPrivilegesAssigned && !isRoleReserved(this.props.role) && ( <EuiFlexItem grow={false}>{viewMatrixButton}</EuiFlexItem> )} </EuiFlexGroup> diff --git a/x-pack/plugins/security/public/management/roles/edit_role/reserved_role_badge.tsx b/x-pack/plugins/security/public/management/roles/edit_role/reserved_role_badge.tsx index 501ca7589dafde..3a79c400b8d59d 100644 --- a/x-pack/plugins/security/public/management/roles/edit_role/reserved_role_badge.tsx +++ b/x-pack/plugins/security/public/management/roles/edit_role/reserved_role_badge.tsx @@ -8,7 +8,7 @@ import React from 'react'; import { EuiIcon, EuiToolTip } from '@elastic/eui'; import { FormattedMessage } from '@kbn/i18n/react'; -import { Role, isReservedRole } from '../../../../common/model'; +import { Role, isRoleReserved } from '../../../../common/model'; interface Props { role: Role; @@ -17,7 +17,7 @@ interface Props { export const ReservedRoleBadge = (props: Props) => { const { role } = props; - if (isReservedRole(role)) { + if (isRoleReserved(role)) { return ( <EuiToolTip data-test-subj="reservedRoleBadgeTooltip" diff --git a/x-pack/plugins/security/public/management/roles/roles_grid/roles_grid_page.test.tsx b/x-pack/plugins/security/public/management/roles/roles_grid/roles_grid_page.test.tsx index 63ace53420612d..410d5bc9f76430 100644 --- a/x-pack/plugins/security/public/management/roles/roles_grid/roles_grid_page.test.tsx +++ b/x-pack/plugins/security/public/management/roles/roles_grid/roles_grid_page.test.tsx @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { EuiIcon } from '@elastic/eui'; +import { EuiIcon, EuiBasicTable } from '@elastic/eui'; import { ReactWrapper } from 'enzyme'; import React from 'react'; import { mountWithIntl } from 'test_utils/enzyme_helpers'; @@ -14,6 +14,8 @@ import { RolesGridPage } from './roles_grid_page'; import { coreMock } from '../../../../../../../src/core/public/mocks'; import { rolesAPIClientMock } from '../index.mock'; +import { ReservedBadge, DisabledBadge } from '../../badges'; +import { findTestSubject } from 'test_utils/find_test_subject'; const mock403 = () => ({ body: { statusCode: 403 } }); @@ -76,8 +78,24 @@ describe('<RolesGridPage />', () => { }); expect(wrapper.find(PermissionDenied)).toHaveLength(0); - expect(wrapper.find('EuiIcon[data-test-subj="reservedRole"]')).toHaveLength(1); - expect(wrapper.find('EuiCheckbox[title="Role is reserved"]')).toHaveLength(1); + expect(wrapper.find(ReservedBadge)).toHaveLength(1); + }); + + it(`renders disabled roles as such`, async () => { + const wrapper = mountWithIntl( + <RolesGridPage + rolesAPIClient={apiClientMock} + notifications={coreMock.createStart().notifications} + /> + ); + const initialIconCount = wrapper.find(EuiIcon).length; + + await waitForRender(wrapper, updatedWrapper => { + return updatedWrapper.find(EuiIcon).length > initialIconCount; + }); + + expect(wrapper.find(PermissionDenied)).toHaveLength(0); + expect(wrapper.find(DisabledBadge)).toHaveLength(1); }); it('renders permission denied if required', async () => { @@ -123,4 +141,54 @@ describe('<RolesGridPage />', () => { wrapper.find('EuiButtonIcon[data-test-subj="clone-role-action-disabled-role"]') ).toHaveLength(1); }); + + it('hides reserved roles when instructed to', async () => { + const wrapper = mountWithIntl( + <RolesGridPage + rolesAPIClient={apiClientMock} + notifications={coreMock.createStart().notifications} + /> + ); + const initialIconCount = wrapper.find(EuiIcon).length; + + await waitForRender(wrapper, updatedWrapper => { + return updatedWrapper.find(EuiIcon).length > initialIconCount; + }); + + expect(wrapper.find(EuiBasicTable).props().items).toEqual([ + { + name: 'disabled-role', + elasticsearch: { cluster: [], indices: [], run_as: [] }, + kibana: [{ base: [], spaces: [], feature: {} }], + transient_metadata: { enabled: false }, + }, + { + name: 'reserved-role', + elasticsearch: { cluster: [], indices: [], run_as: [] }, + kibana: [{ base: [], spaces: [], feature: {} }], + metadata: { _reserved: true }, + }, + { + name: 'test-role-1', + elasticsearch: { cluster: [], indices: [], run_as: [] }, + kibana: [{ base: [], spaces: [], feature: {} }], + }, + ]); + + findTestSubject(wrapper, 'showReservedRolesSwitch').simulate('click'); + + expect(wrapper.find(EuiBasicTable).props().items).toEqual([ + { + name: 'disabled-role', + elasticsearch: { cluster: [], indices: [], run_as: [] }, + kibana: [{ base: [], spaces: [], feature: {} }], + transient_metadata: { enabled: false }, + }, + { + name: 'test-role-1', + elasticsearch: { cluster: [], indices: [], run_as: [] }, + kibana: [{ base: [], spaces: [], feature: {} }], + }, + ]); + }); }); diff --git a/x-pack/plugins/security/public/management/roles/roles_grid/roles_grid_page.tsx b/x-pack/plugins/security/public/management/roles/roles_grid/roles_grid_page.tsx index 7c686bef391a79..04a74a1a9b99ac 100644 --- a/x-pack/plugins/security/public/management/roles/roles_grid/roles_grid_page.tsx +++ b/x-pack/plugins/security/public/management/roles/roles_grid/roles_grid_page.tsx @@ -8,7 +8,6 @@ import _ from 'lodash'; import React, { Component } from 'react'; import { EuiButton, - EuiIcon, EuiInMemoryTable, EuiLink, EuiPageContent, @@ -19,14 +18,26 @@ import { EuiTitle, EuiButtonIcon, EuiBasicTableColumn, + EuiSwitchEvent, + EuiSwitch, + EuiFlexGroup, + EuiFlexItem, } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; import { NotificationsStart } from 'src/core/public'; -import { Role, isRoleEnabled, isReadOnlyRole, isReservedRole } from '../../../../common/model'; +import { + Role, + isRoleEnabled, + isRoleReadOnly, + isRoleReserved, + isRoleDeprecated, + getExtendedRoleDeprecationNotice, +} from '../../../../common/model'; import { RolesAPIClient } from '../roles_api_client'; import { ConfirmDelete } from './confirm_delete'; import { PermissionDenied } from './permission_denied'; +import { DisabledBadge, DeprecatedBadge, ReservedBadge } from '../../badges'; interface Props { notifications: NotificationsStart; @@ -35,10 +46,12 @@ interface Props { interface State { roles: Role[]; + visibleRoles: Role[]; selection: Role[]; filter: string; showDeleteConfirmation: boolean; permissionDenied: boolean; + includeReservedRoles: boolean; } const getRoleManagementHref = (action: 'edit' | 'clone', roleName?: string) => { @@ -50,10 +63,12 @@ export class RolesGridPage extends Component<Props, State> { super(props); this.state = { roles: [], + visibleRoles: [], selection: [], filter: '', showDeleteConfirmation: false, permissionDenied: false, + includeReservedRoles: true, }; } @@ -125,16 +140,22 @@ export class RolesGridPage extends Component<Props, State> { initialPageSize: 20, pageSizeOptions: [10, 20, 30, 50, 100], }} - items={this.getVisibleRoles()} + items={this.state.visibleRoles} loading={roles.length === 0} search={{ toolsLeft: this.renderToolsLeft(), + toolsRight: this.renderToolsRight(), box: { incremental: true, }, onChange: (query: Record<string, any>) => { this.setState({ filter: query.queryText, + visibleRoles: this.getVisibleRoles( + this.state.roles, + query.queryText, + this.state.includeReservedRoles + ), }); }, }} @@ -158,11 +179,6 @@ export class RolesGridPage extends Component<Props, State> { }; private getColumnConfig = () => { - const reservedRoleDesc = i18n.translate( - 'xpack.security.management.roles.reservedColumnDescription', - { defaultMessage: 'Reserved roles are built-in and cannot be edited or removed.' } - ); - return [ { field: 'name', @@ -177,35 +193,18 @@ export class RolesGridPage extends Component<Props, State> { <EuiLink data-test-subj="roleRowName" href={getRoleManagementHref('edit', name)}> {name} </EuiLink> - {!isRoleEnabled(record) && ( - <FormattedMessage - id="xpack.security.management.roles.disabledTooltip" - defaultMessage=" (disabled)" - /> - )} </EuiText> ); }, }, { field: 'metadata', - name: i18n.translate('xpack.security.management.roles.reservedColumnName', { - defaultMessage: 'Reserved', + name: i18n.translate('xpack.security.management.roles.statusColumnName', { + defaultMessage: 'Status', }), - sortable: ({ metadata }: Role) => Boolean(metadata && metadata._reserved), - dataType: 'boolean', - align: 'right', - description: reservedRoleDesc, - render: (metadata: Role['metadata']) => { - const label = i18n.translate('xpack.security.management.roles.reservedRoleIconLabel', { - defaultMessage: 'Reserved role', - }); - - return metadata && metadata._reserved ? ( - <span title={label}> - <EuiIcon aria-label={label} data-test-subj="reservedRole" type="check" /> - </span> - ) : null; + sortable: (role: Role) => isRoleEnabled(role) && !isRoleDeprecated(role), + render: (metadata: Role['metadata'], record: Role) => { + return this.getRoleStatusBadges(record); }, }, { @@ -215,7 +214,7 @@ export class RolesGridPage extends Component<Props, State> { width: '150px', actions: [ { - available: (role: Role) => !isReadOnlyRole(role), + available: (role: Role) => !isRoleReadOnly(role), render: (role: Role) => { const title = i18n.translate('xpack.security.management.roles.editRoleActionName', { defaultMessage: `Edit {roleName}`, @@ -235,7 +234,7 @@ export class RolesGridPage extends Component<Props, State> { }, }, { - available: (role: Role) => !isReservedRole(role), + available: (role: Role) => !isRoleReserved(role), render: (role: Role) => { const title = i18n.translate('xpack.security.management.roles.cloneRoleActionName', { defaultMessage: `Clone {roleName}`, @@ -259,16 +258,64 @@ export class RolesGridPage extends Component<Props, State> { ] as Array<EuiBasicTableColumn<Role>>; }; - private getVisibleRoles = () => { - const { roles, filter } = this.state; + private getVisibleRoles = (roles: Role[], filter: string, includeReservedRoles: boolean) => { + return roles.filter(role => { + const normalized = `${role.name}`.toLowerCase(); + const normalizedQuery = filter.toLowerCase(); + return ( + normalized.indexOf(normalizedQuery) !== -1 && + (includeReservedRoles || !isRoleReserved(role)) + ); + }); + }; + + private onIncludeReservedRolesChange = (e: EuiSwitchEvent) => { + this.setState({ + includeReservedRoles: e.target.checked, + visibleRoles: this.getVisibleRoles(this.state.roles, this.state.filter, e.target.checked), + }); + }; + + private getRoleStatusBadges = (role: Role) => { + const enabled = isRoleEnabled(role); + const deprecated = isRoleDeprecated(role); + const reserved = isRoleReserved(role); - return filter - ? roles.filter(({ name }) => { - const normalized = `${name}`.toLowerCase(); - const normalizedQuery = filter.toLowerCase(); - return normalized.indexOf(normalizedQuery) !== -1; - }) - : roles; + const badges = []; + if (!enabled) { + badges.push(<DisabledBadge data-test-subj="roleDisabled" />); + } + if (reserved) { + badges.push( + <ReservedBadge + data-test-subj="roleReserved" + tooltipContent={ + <FormattedMessage + id="xpack.security.management.roles.reservedRoleBadgeTooltip" + defaultMessage="Reserved roles are built-in and cannot be edited or removed." + /> + } + /> + ); + } + if (deprecated) { + badges.push( + <DeprecatedBadge + data-test-subj="roleDeprecated" + tooltipContent={getExtendedRoleDeprecationNotice(role)} + /> + ); + } + + return ( + <EuiFlexGroup gutterSize="s"> + {badges.map((badge, index) => ( + <EuiFlexItem key={index} grow={false}> + {badge} + </EuiFlexItem> + ))} + </EuiFlexGroup> + ); }; private handleDelete = () => { @@ -283,7 +330,14 @@ export class RolesGridPage extends Component<Props, State> { try { const roles = await this.props.rolesAPIClient.getRoles(); - this.setState({ roles }); + this.setState({ + roles, + visibleRoles: this.getVisibleRoles( + roles, + this.state.filter, + this.state.includeReservedRoles + ), + }); } catch (e) { if (_.get(e, 'body.statusCode') === 403) { this.setState({ permissionDenied: true }); @@ -320,6 +374,21 @@ export class RolesGridPage extends Component<Props, State> { </EuiButton> ); } + private renderToolsRight() { + return ( + <EuiSwitch + data-test-subj="showReservedRolesSwitch" + label={ + <FormattedMessage + id="xpack.security.management.roles.showReservedRolesLabel" + defaultMessage="Show reserved roles" + /> + } + checked={this.state.includeReservedRoles} + onChange={this.onIncludeReservedRolesChange} + /> + ); + } private onCancelDelete = () => { this.setState({ showDeleteConfirmation: false }); }; diff --git a/x-pack/plugins/security/public/management/users/components/change_password_form/change_password_form.test.tsx b/x-pack/plugins/security/public/management/users/components/change_password_form/change_password_form.test.tsx index be46612767a593..d41a05e00e53c0 100644 --- a/x-pack/plugins/security/public/management/users/components/change_password_form/change_password_form.test.tsx +++ b/x-pack/plugins/security/public/management/users/components/change_password_form/change_password_form.test.tsx @@ -40,7 +40,7 @@ describe('<ChangePasswordForm>', () => { <ChangePasswordForm user={user} isUserChangingOwnPassword={true} - apiClient={userAPIClientMock.create()} + userAPIClient={userAPIClientMock.create()} notifications={coreMock.createStart().notifications} /> ); @@ -68,7 +68,7 @@ describe('<ChangePasswordForm>', () => { user={user} isUserChangingOwnPassword={true} onChangePassword={callback} - apiClient={apiClientMock} + userAPIClient={apiClientMock} notifications={coreMock.createStart().notifications} /> ); @@ -107,7 +107,7 @@ describe('<ChangePasswordForm>', () => { <ChangePasswordForm user={user} isUserChangingOwnPassword={false} - apiClient={userAPIClientMock.create()} + userAPIClient={userAPIClientMock.create()} notifications={coreMock.createStart().notifications} /> ); diff --git a/x-pack/plugins/security/public/management/users/components/change_password_form/change_password_form.tsx b/x-pack/plugins/security/public/management/users/components/change_password_form/change_password_form.tsx index 75621762b1b857..047cad7bead811 100644 --- a/x-pack/plugins/security/public/management/users/components/change_password_form/change_password_form.tsx +++ b/x-pack/plugins/security/public/management/users/components/change_password_form/change_password_form.tsx @@ -23,7 +23,7 @@ interface Props { user: User; isUserChangingOwnPassword: boolean; onChangePassword?: () => void; - apiClient: PublicMethodsOf<UserAPIClient>; + userAPIClient: PublicMethodsOf<UserAPIClient>; notifications: NotificationsStart; } @@ -279,7 +279,7 @@ export class ChangePasswordForm extends Component<Props, State> { private performPasswordChange = async () => { try { - await this.props.apiClient.changePassword( + await this.props.userAPIClient.changePassword( this.props.user.username, this.state.newPassword, this.state.currentPassword diff --git a/x-pack/plugins/security/public/management/users/components/confirm_delete_users/confirm_delete_users.test.tsx b/x-pack/plugins/security/public/management/users/components/confirm_delete_users/confirm_delete_users.test.tsx index bcec707b03f936..9c5a8b0b75eadc 100644 --- a/x-pack/plugins/security/public/management/users/components/confirm_delete_users/confirm_delete_users.test.tsx +++ b/x-pack/plugins/security/public/management/users/components/confirm_delete_users/confirm_delete_users.test.tsx @@ -15,7 +15,7 @@ describe('ConfirmDeleteUsers', () => { it('renders a warning for a single user', () => { const wrapper = mountWithIntl( <ConfirmDeleteUsers - apiClient={userAPIClientMock.create()} + userAPIClient={userAPIClientMock.create()} notifications={coreMock.createStart().notifications} usersToDelete={['foo']} onCancel={jest.fn()} @@ -28,7 +28,7 @@ describe('ConfirmDeleteUsers', () => { it('renders a warning for a multiple users', () => { const wrapper = mountWithIntl( <ConfirmDeleteUsers - apiClient={userAPIClientMock.create()} + userAPIClient={userAPIClientMock.create()} notifications={coreMock.createStart().notifications} usersToDelete={['foo', 'bar', 'baz']} onCancel={jest.fn()} @@ -42,7 +42,7 @@ describe('ConfirmDeleteUsers', () => { const onCancel = jest.fn(); const wrapper = mountWithIntl( <ConfirmDeleteUsers - apiClient={userAPIClientMock.create()} + userAPIClient={userAPIClientMock.create()} notifications={coreMock.createStart().notifications} usersToDelete={['foo']} onCancel={onCancel} @@ -63,7 +63,7 @@ describe('ConfirmDeleteUsers', () => { const wrapper = mountWithIntl( <ConfirmDeleteUsers usersToDelete={['foo', 'bar']} - apiClient={apiClientMock} + userAPIClient={apiClientMock} notifications={coreMock.createStart().notifications} onCancel={onCancel} /> @@ -90,7 +90,7 @@ describe('ConfirmDeleteUsers', () => { const wrapper = mountWithIntl( <ConfirmDeleteUsers usersToDelete={['foo', 'bar']} - apiClient={apiClientMock} + userAPIClient={apiClientMock} notifications={coreMock.createStart().notifications} onCancel={onCancel} /> diff --git a/x-pack/plugins/security/public/management/users/components/confirm_delete_users/confirm_delete_users.tsx b/x-pack/plugins/security/public/management/users/components/confirm_delete_users/confirm_delete_users.tsx index b7269e0168d7d5..53acbf42273e82 100644 --- a/x-pack/plugins/security/public/management/users/components/confirm_delete_users/confirm_delete_users.tsx +++ b/x-pack/plugins/security/public/management/users/components/confirm_delete_users/confirm_delete_users.tsx @@ -13,7 +13,7 @@ import { UserAPIClient } from '../..'; interface Props { usersToDelete: string[]; - apiClient: PublicMethodsOf<UserAPIClient>; + userAPIClient: PublicMethodsOf<UserAPIClient>; notifications: NotificationsStart; onCancel: () => void; callback?: (usersToDelete: string[], errors: string[]) => void; @@ -77,11 +77,11 @@ export class ConfirmDeleteUsers extends Component<Props, unknown> { } private deleteUsers = () => { - const { usersToDelete, callback, apiClient, notifications } = this.props; + const { usersToDelete, callback, userAPIClient, notifications } = this.props; const errors: string[] = []; usersToDelete.forEach(async username => { try { - await apiClient.deleteUser(username); + await userAPIClient.deleteUser(username); notifications.toasts.addSuccess( i18n.translate( 'xpack.security.management.users.confirmDelete.userSuccessfullyDeletedNotificationMessage', diff --git a/x-pack/plugins/security/public/management/users/edit_user/edit_user_page.test.tsx b/x-pack/plugins/security/public/management/users/edit_user/edit_user_page.test.tsx index 7a7542909431f1..be7517ff892b58 100644 --- a/x-pack/plugins/security/public/management/users/edit_user/edit_user_page.test.tsx +++ b/x-pack/plugins/security/public/management/users/edit_user/edit_user_page.test.tsx @@ -15,13 +15,14 @@ import { mockAuthenticatedUser } from '../../../../common/model/authenticated_us import { securityMock } from '../../../mocks'; import { rolesAPIClientMock } from '../../roles/index.mock'; import { userAPIClientMock } from '../index.mock'; +import { findTestSubject } from 'test_utils/find_test_subject'; -const createUser = (username: string) => { +const createUser = (username: string, roles = ['idk', 'something']) => { const user: User = { username, full_name: 'my full name', email: 'foo@bar.com', - roles: ['idk', 'something'], + roles, enabled: true, }; @@ -34,9 +35,9 @@ const createUser = (username: string) => { return user; }; -const buildClients = () => { +const buildClients = (user: User) => { const apiClient = userAPIClientMock.create(); - apiClient.getUser.mockImplementation(async (username: string) => createUser(username)); + apiClient.getUser.mockResolvedValue(user); const rolesAPIClient = rolesAPIClientMock.create(); rolesAPIClient.getRoles.mockImplementation(() => { @@ -59,6 +60,18 @@ const buildClients = () => { }, kibana: [], }, + { + name: 'deprecated-role', + elasticsearch: { + cluster: [], + indices: [], + run_as: ['bar'], + }, + kibana: [], + metadata: { + _deprecated: true, + }, + }, ] as Role[]); }); @@ -83,12 +96,13 @@ function expectMissingSaveButton(wrapper: ReactWrapper<any, any>) { describe('EditUserPage', () => { it('allows reserved users to be viewed', async () => { - const { apiClient, rolesAPIClient } = buildClients(); + const user = createUser('reserved_user'); + const { apiClient, rolesAPIClient } = buildClients(user); const securitySetup = buildSecuritySetup(); const wrapper = mountWithIntl( <EditUserPage - username={'reserved_user'} - apiClient={apiClient} + username={user.username} + userAPIClient={apiClient} rolesAPIClient={rolesAPIClient} authc={securitySetup.authc} notifications={coreMock.createStart().notifications} @@ -104,12 +118,13 @@ describe('EditUserPage', () => { }); it('allows new users to be created', async () => { - const { apiClient, rolesAPIClient } = buildClients(); + const user = createUser(''); + const { apiClient, rolesAPIClient } = buildClients(user); const securitySetup = buildSecuritySetup(); const wrapper = mountWithIntl( <EditUserPage - username={''} - apiClient={apiClient} + username={user.username} + userAPIClient={apiClient} rolesAPIClient={rolesAPIClient} authc={securitySetup.authc} notifications={coreMock.createStart().notifications} @@ -125,12 +140,13 @@ describe('EditUserPage', () => { }); it('allows existing users to be edited', async () => { - const { apiClient, rolesAPIClient } = buildClients(); + const user = createUser('existing_user'); + const { apiClient, rolesAPIClient } = buildClients(user); const securitySetup = buildSecuritySetup(); const wrapper = mountWithIntl( <EditUserPage - username={'existing_user'} - apiClient={apiClient} + username={user.username} + userAPIClient={apiClient} rolesAPIClient={rolesAPIClient} authc={securitySetup.authc} notifications={coreMock.createStart().notifications} @@ -142,8 +158,32 @@ describe('EditUserPage', () => { expect(apiClient.getUser).toBeCalledTimes(1); expect(securitySetup.authc.getCurrentUser).toBeCalledTimes(1); + expect(findTestSubject(wrapper, 'hasDeprecatedRolesAssignedHelpText')).toHaveLength(0); expectSaveButton(wrapper); }); + + it('warns when user is assigned a deprecated role', async () => { + const user = createUser('existing_user', ['deprecated-role']); + const { apiClient, rolesAPIClient } = buildClients(user); + const securitySetup = buildSecuritySetup(); + + const wrapper = mountWithIntl( + <EditUserPage + username={user.username} + userAPIClient={apiClient} + rolesAPIClient={rolesAPIClient} + authc={securitySetup.authc} + notifications={coreMock.createStart().notifications} + /> + ); + + await waitForRender(wrapper); + + expect(apiClient.getUser).toBeCalledTimes(1); + expect(securitySetup.authc.getCurrentUser).toBeCalledTimes(1); + + expect(findTestSubject(wrapper, 'hasDeprecatedRolesAssignedHelpText')).toHaveLength(1); + }); }); async function waitForRender(wrapper: ReactWrapper<any, any>) { diff --git a/x-pack/plugins/security/public/management/users/edit_user/edit_user_page.tsx b/x-pack/plugins/security/public/management/users/edit_user/edit_user_page.tsx index 8e7d9fb2dac08d..6417ce81b647d5 100644 --- a/x-pack/plugins/security/public/management/users/edit_user/edit_user_page.tsx +++ b/x-pack/plugins/security/public/management/users/edit_user/edit_user_page.tsx @@ -18,7 +18,6 @@ import { EuiIcon, EuiText, EuiFieldText, - EuiComboBox, EuiPageContent, EuiPageContentHeader, EuiPageContentHeaderSection, @@ -29,17 +28,18 @@ import { import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; import { NotificationsStart } from 'src/core/public'; -import { User, EditUser, Role } from '../../../../common/model'; +import { User, EditUser, Role, isRoleDeprecated } from '../../../../common/model'; import { AuthenticationServiceSetup } from '../../../authentication'; import { USERS_PATH } from '../../management_urls'; import { RolesAPIClient } from '../../roles'; import { ConfirmDeleteUsers, ChangePasswordForm } from '../components'; import { UserValidator, UserValidationResult } from './validate_user'; +import { RoleComboBox } from '../../role_combo_box'; import { UserAPIClient } from '..'; interface Props { username?: string; - apiClient: PublicMethodsOf<UserAPIClient>; + userAPIClient: PublicMethodsOf<UserAPIClient>; rolesAPIClient: PublicMethodsOf<RolesAPIClient>; authc: AuthenticationServiceSetup; notifications: NotificationsStart; @@ -53,7 +53,7 @@ interface State { showDeleteConfirmation: boolean; user: EditUser; roles: Role[]; - selectedRoles: Array<{ label: string }>; + selectedRoles: string[]; formError: UserValidationResult | null; } @@ -99,12 +99,12 @@ export class EditUserPage extends Component<Props, State> { } private async setCurrentUser() { - const { username, apiClient, rolesAPIClient, notifications, authc } = this.props; + const { username, userAPIClient, rolesAPIClient, notifications, authc } = this.props; let { user, currentUser } = this.state; if (username) { try { user = { - ...(await apiClient.getUser(username)), + ...(await userAPIClient.getUser(username)), password: '', confirmPassword: '', }; @@ -138,7 +138,7 @@ export class EditUserPage extends Component<Props, State> { currentUser, user, roles, - selectedRoles: user.roles.map(role => ({ label: role })) || [], + selectedRoles: user.roles || [], }); } @@ -160,18 +160,16 @@ export class EditUserPage extends Component<Props, State> { this.setState({ formError: null, }); - const { apiClient } = this.props; + const { userAPIClient } = this.props; const { user, isNewUser, selectedRoles } = this.state; const userToSave: EditUser = { ...user }; if (!isNewUser) { delete userToSave.password; } delete userToSave.confirmPassword; - userToSave.roles = selectedRoles.map(selectedRole => { - return selectedRole.label; - }); + userToSave.roles = [...selectedRoles]; try { - await apiClient.saveUser(userToSave); + await userAPIClient.saveUser(userToSave); this.props.notifications.toasts.addSuccess( i18n.translate( 'xpack.security.management.users.editUser.userSuccessfullySavedNotificationMessage', @@ -269,7 +267,7 @@ export class EditUserPage extends Component<Props, State> { user={this.state.user} isUserChangingOwnPassword={userIsLoggedInUser} onChangePassword={this.toggleChangePasswordForm} - apiClient={this.props.apiClient} + userAPIClient={this.props.userAPIClient} notifications={this.props.notifications} /> </Fragment> @@ -346,7 +344,7 @@ export class EditUserPage extends Component<Props, State> { }); }; - private onRolesChange = (selectedRoles: Array<{ label: string }>) => { + private onRolesChange = (selectedRoles: string[]) => { this.setState({ selectedRoles, }); @@ -365,8 +363,8 @@ export class EditUserPage extends Component<Props, State> { public render() { const { user, - roles, selectedRoles, + roles, showChangePasswordForm, isNewUser, showDeleteConfirmation, @@ -380,6 +378,22 @@ export class EditUserPage extends Component<Props, State> { return null; } + const hasAnyDeprecatedRolesAssigned = selectedRoles.some(selected => { + const role = roles.find(r => r.name === selected); + return role && isRoleDeprecated(role); + }); + + const roleHelpText = hasAnyDeprecatedRolesAssigned ? ( + <span data-test-subj="hasDeprecatedRolesAssignedHelpText"> + <FormattedMessage + id="xpack.security.management.users.editUser.deprecatedRolesAssignedWarning" + defaultMessage="This user is assigned a deprecated role. Please migrate to a supported role." + /> + </span> + ) : ( + undefined + ); + return ( <div className="secUsersEditPage"> <EuiPageContent className="secUsersEditPage__content"> @@ -426,7 +440,7 @@ export class EditUserPage extends Component<Props, State> { onCancel={this.onCancelDelete} usersToDelete={[user.username]} callback={this.handleDelete} - apiClient={this.props.apiClient} + userAPIClient={this.props.userAPIClient} notifications={this.props.notifications} /> ) : null} @@ -492,19 +506,13 @@ export class EditUserPage extends Component<Props, State> { 'xpack.security.management.users.editUser.rolesFormRowLabel', { defaultMessage: 'Roles' } )} + helpText={roleHelpText} > - <EuiComboBox - data-test-subj="userFormRolesDropdown" - placeholder={i18n.translate( - 'xpack.security.management.users.editUser.addRolesPlaceholder', - { defaultMessage: 'Add roles' } - )} + <RoleComboBox + availableRoles={roles} + selectedRoleNames={selectedRoles} onChange={this.onRolesChange} isDisabled={reserved} - options={roles.map(role => { - return { 'data-test-subj': `roleOption-${role.name}`, label: role.name }; - })} - selectedOptions={selectedRoles} /> </EuiFormRow> diff --git a/x-pack/plugins/security/public/management/users/user_utils.ts b/x-pack/plugins/security/public/management/users/user_utils.ts new file mode 100644 index 00000000000000..f46f6f897e23b3 --- /dev/null +++ b/x-pack/plugins/security/public/management/users/user_utils.ts @@ -0,0 +1,9 @@ +/* + * 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 { User } from '../../../common/model'; + +export const isUserReserved = (user: User) => user.metadata?._reserved ?? false; diff --git a/x-pack/plugins/security/public/management/users/users_grid/users_grid_page.test.tsx b/x-pack/plugins/security/public/management/users/users_grid/users_grid_page.test.tsx index def0649953437d..031b67d5d9122e 100644 --- a/x-pack/plugins/security/public/management/users/users_grid/users_grid_page.test.tsx +++ b/x-pack/plugins/security/public/management/users/users_grid/users_grid_page.test.tsx @@ -5,12 +5,15 @@ */ import { User } from '../../../../common/model'; -import { mountWithIntl } from 'test_utils/enzyme_helpers'; +import { mountWithIntl, nextTick } from 'test_utils/enzyme_helpers'; import { UsersGridPage } from './users_grid_page'; import React from 'react'; import { ReactWrapper } from 'enzyme'; import { userAPIClientMock } from '../index.mock'; import { coreMock } from '../../../../../../../src/core/public/mocks'; +import { rolesAPIClientMock } from '../../roles/index.mock'; +import { findTestSubject } from 'test_utils/find_test_subject'; +import { EuiBasicTable } from '@elastic/eui'; describe('UsersGridPage', () => { it('renders the list of users', async () => { @@ -39,7 +42,8 @@ describe('UsersGridPage', () => { const wrapper = mountWithIntl( <UsersGridPage - apiClient={apiClientMock} + userAPIClient={apiClientMock} + rolesAPIClient={rolesAPIClientMock.create()} notifications={coreMock.createStart().notifications} /> ); @@ -49,6 +53,7 @@ describe('UsersGridPage', () => { expect(apiClientMock.getUsers).toBeCalledTimes(1); expect(wrapper.find('EuiInMemoryTable')).toHaveLength(1); expect(wrapper.find('EuiTableRow')).toHaveLength(2); + expect(findTestSubject(wrapper, 'userDisabled')).toHaveLength(0); }); it('renders a forbidden message if user is not authorized', async () => { @@ -56,7 +61,11 @@ describe('UsersGridPage', () => { apiClient.getUsers.mockRejectedValue({ body: { statusCode: 403 } }); const wrapper = mountWithIntl( - <UsersGridPage apiClient={apiClient} notifications={coreMock.createStart().notifications} /> + <UsersGridPage + userAPIClient={apiClient} + rolesAPIClient={rolesAPIClientMock.create()} + notifications={coreMock.createStart().notifications} + /> ); await waitForRender(wrapper); @@ -65,10 +74,172 @@ describe('UsersGridPage', () => { expect(wrapper.find('[data-test-subj="permissionDeniedMessage"]')).toHaveLength(1); expect(wrapper.find('EuiInMemoryTable')).toHaveLength(0); }); + + it('renders disabled users', async () => { + const apiClientMock = userAPIClientMock.create(); + apiClientMock.getUsers.mockImplementation(() => { + return Promise.resolve<User[]>([ + { + username: 'foo', + email: 'foo@bar.net', + full_name: 'foo bar', + roles: ['kibana_user'], + enabled: false, + }, + ]); + }); + + const wrapper = mountWithIntl( + <UsersGridPage + userAPIClient={apiClientMock} + rolesAPIClient={rolesAPIClientMock.create()} + notifications={coreMock.createStart().notifications} + /> + ); + + await waitForRender(wrapper); + + expect(findTestSubject(wrapper, 'userDisabled')).toHaveLength(1); + }); + + it('renders a warning when a user is assigned a deprecated role', async () => { + const apiClientMock = userAPIClientMock.create(); + apiClientMock.getUsers.mockImplementation(() => { + return Promise.resolve<User[]>([ + { + username: 'foo', + email: 'foo@bar.net', + full_name: 'foo bar', + roles: ['kibana_user'], + enabled: true, + }, + { + username: 'reserved', + email: 'reserved@bar.net', + full_name: '', + roles: ['superuser'], + enabled: true, + metadata: { + _reserved: true, + }, + }, + ]); + }); + + const roleAPIClientMock = rolesAPIClientMock.create(); + roleAPIClientMock.getRoles.mockResolvedValue([ + { + name: 'kibana_user', + metadata: { + _deprecated: true, + _deprecated_reason: `I don't like you.`, + }, + }, + ]); + + const wrapper = mountWithIntl( + <UsersGridPage + userAPIClient={apiClientMock} + rolesAPIClient={roleAPIClientMock} + notifications={coreMock.createStart().notifications} + /> + ); + + await waitForRender(wrapper); + + const deprecationTooltip = wrapper.find('[data-test-subj="roleDeprecationTooltip"]').props(); + + expect(deprecationTooltip).toMatchInlineSnapshot(` + Object { + "children": <div> + kibana_user + + <EuiIcon + className="eui-alignTop" + color="warning" + size="s" + type="alert" + /> + </div>, + "content": "The kibana_user role is deprecated. I don't like you.", + "data-test-subj": "roleDeprecationTooltip", + "delay": "regular", + "position": "top", + } + `); + }); + + it('hides reserved users when instructed to', async () => { + const apiClientMock = userAPIClientMock.create(); + apiClientMock.getUsers.mockImplementation(() => { + return Promise.resolve<User[]>([ + { + username: 'foo', + email: 'foo@bar.net', + full_name: 'foo bar', + roles: ['kibana_user'], + enabled: true, + }, + { + username: 'reserved', + email: 'reserved@bar.net', + full_name: '', + roles: ['superuser'], + enabled: true, + metadata: { + _reserved: true, + }, + }, + ]); + }); + + const roleAPIClientMock = rolesAPIClientMock.create(); + + const wrapper = mountWithIntl( + <UsersGridPage + userAPIClient={apiClientMock} + rolesAPIClient={roleAPIClientMock} + notifications={coreMock.createStart().notifications} + /> + ); + + await waitForRender(wrapper); + + expect(wrapper.find(EuiBasicTable).props().items).toEqual([ + { + username: 'foo', + email: 'foo@bar.net', + full_name: 'foo bar', + roles: ['kibana_user'], + enabled: true, + }, + { + username: 'reserved', + email: 'reserved@bar.net', + full_name: '', + roles: ['superuser'], + enabled: true, + metadata: { + _reserved: true, + }, + }, + ]); + + findTestSubject(wrapper, 'showReservedUsersSwitch').simulate('click'); + + expect(wrapper.find(EuiBasicTable).props().items).toEqual([ + { + username: 'foo', + email: 'foo@bar.net', + full_name: 'foo bar', + roles: ['kibana_user'], + enabled: true, + }, + ]); + }); }); async function waitForRender(wrapper: ReactWrapper<any, any>) { - await Promise.resolve(); - await Promise.resolve(); + await nextTick(); wrapper.update(); } diff --git a/x-pack/plugins/security/public/management/users/users_grid/users_grid_page.tsx b/x-pack/plugins/security/public/management/users/users_grid/users_grid_page.tsx index fa15c3388fcc99..6837fcf430fe7b 100644 --- a/x-pack/plugins/security/public/management/users/users_grid/users_grid_page.tsx +++ b/x-pack/plugins/security/public/management/users/users_grid/users_grid_page.tsx @@ -4,10 +4,9 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { Component, Fragment } from 'react'; +import React, { Component } from 'react'; import { EuiButton, - EuiIcon, EuiLink, EuiFlexGroup, EuiInMemoryTable, @@ -18,25 +17,36 @@ import { EuiPageContentBody, EuiEmptyPrompt, EuiBasicTableColumn, + EuiSwitchEvent, + EuiSwitch, + EuiFlexItem, } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; import { NotificationsStart } from 'src/core/public'; -import { User } from '../../../../common/model'; +import { User, Role } from '../../../../common/model'; import { ConfirmDeleteUsers } from '../components'; +import { isUserReserved } from '../user_utils'; +import { DisabledBadge, ReservedBadge } from '../../badges'; +import { RoleTableDisplay } from '../../role_table_display'; +import { RolesAPIClient } from '../../roles'; import { UserAPIClient } from '..'; interface Props { - apiClient: PublicMethodsOf<UserAPIClient>; + userAPIClient: PublicMethodsOf<UserAPIClient>; + rolesAPIClient: PublicMethodsOf<RolesAPIClient>; notifications: NotificationsStart; } interface State { users: User[]; + visibleUsers: User[]; + roles: null | Role[]; selection: User[]; showDeleteConfirmation: boolean; permissionDenied: boolean; filter: string; + includeReservedUsers: boolean; } export class UsersGridPage extends Component<Props, State> { @@ -44,19 +54,22 @@ export class UsersGridPage extends Component<Props, State> { super(props); this.state = { users: [], + visibleUsers: [], + roles: [], selection: [], showDeleteConfirmation: false, permissionDenied: false, filter: '', + includeReservedUsers: true, }; } public componentDidMount() { - this.loadUsers(); + this.loadUsersAndRoles(); } public render() { - const { users, filter, permissionDenied, showDeleteConfirmation, selection } = this.state; + const { users, roles, permissionDenied, showDeleteConfirmation, selection } = this.state; if (permissionDenied) { return ( <EuiFlexGroup gutterSize="none"> @@ -86,17 +99,6 @@ export class UsersGridPage extends Component<Props, State> { } const path = '#/management/security/'; const columns: Array<EuiBasicTableColumn<User>> = [ - { - field: 'full_name', - name: i18n.translate('xpack.security.management.users.fullNameColumnName', { - defaultMessage: 'Full Name', - }), - sortable: true, - truncateText: true, - render: (fullName: string) => { - return <div data-test-subj="userRowFullName">{fullName}</div>; - }, - }, { field: 'username', name: i18n.translate('xpack.security.management.users.userNameColumnName', { @@ -110,6 +112,18 @@ export class UsersGridPage extends Component<Props, State> { </EuiLink> ), }, + { + field: 'full_name', + name: i18n.translate('xpack.security.management.users.fullNameColumnName', { + defaultMessage: 'Full Name', + }), + sortable: true, + truncateText: true, + render: (fullName: string) => { + return <div data-test-subj="userRowFullName">{fullName}</div>; + }, + }, + { field: 'email', name: i18n.translate('xpack.security.management.users.emailAddressColumnName', { @@ -126,34 +140,27 @@ export class UsersGridPage extends Component<Props, State> { name: i18n.translate('xpack.security.management.users.rolesColumnName', { defaultMessage: 'Roles', }), + width: '30%', render: (rolenames: string[]) => { const roleLinks = rolenames.map((rolename, index) => { - return ( - <Fragment key={rolename}> - <EuiLink href={`${path}roles/edit/${rolename}`}>{rolename}</EuiLink> - {index === rolenames.length - 1 ? null : ', '} - </Fragment> - ); + const roleDefinition = roles?.find(role => role.name === rolename) ?? rolename; + return <RoleTableDisplay role={roleDefinition} key={rolename} />; }); return <div data-test-subj="userRowRoles">{roleLinks}</div>; }, }, { field: 'metadata', - name: i18n.translate('xpack.security.management.users.reservedColumnName', { - defaultMessage: 'Reserved', + name: i18n.translate('xpack.security.management.users.statusColumnName', { + defaultMessage: 'Status', }), + width: '10%', sortable: ({ metadata }: User) => Boolean(metadata && metadata._reserved), - width: '100px', - align: 'right', description: i18n.translate('xpack.security.management.users.reservedColumnDescription', { defaultMessage: 'Reserved users are built-in and cannot be removed. Only the password can be changed.', }), - render: (metadata: User['metadata']) => - metadata && metadata._reserved ? ( - <EuiIcon aria-label="Reserved user" data-test-subj="reservedUser" type="check" /> - ) : null, + render: (metadata: User['metadata'], record: User) => this.getUserStatusBadges(record), }, ]; const pagination = { @@ -170,18 +177,24 @@ export class UsersGridPage extends Component<Props, State> { }; const search = { toolsLeft: this.renderToolsLeft(), + toolsRight: this.renderToolsRight(), box: { incremental: true, }, onChange: (query: any) => { this.setState({ filter: query.queryText, + visibleUsers: this.getVisibleUsers( + this.state.users, + query.queryText, + this.state.includeReservedUsers + ), }); }, }; const sorting = { sort: { - field: 'full_name', + field: 'username', direction: 'asc', }, } as const; @@ -190,13 +203,7 @@ export class UsersGridPage extends Component<Props, State> { 'data-test-subj': 'userRow', }; }; - const usersToShow = filter - ? users.filter(({ username, roles, full_name: fullName = '', email = '' }) => { - const normalized = `${username} ${roles.join(' ')} ${fullName} ${email}`.toLowerCase(); - const normalizedQuery = filter.toLowerCase(); - return normalized.indexOf(normalizedQuery) !== -1; - }) - : users; + return ( <div className="secUsersListingPage"> <EuiPageContent className="secUsersListingPage__content"> @@ -226,7 +233,7 @@ export class UsersGridPage extends Component<Props, State> { onCancel={this.onCancelDelete} usersToDelete={selection.map(user => user.username)} callback={this.handleDelete} - apiClient={this.props.apiClient} + userAPIClient={this.props.userAPIClient} notifications={this.props.notifications} /> ) : null} @@ -237,7 +244,7 @@ export class UsersGridPage extends Component<Props, State> { columns={columns} selection={selectionConfig} pagination={pagination} - items={usersToShow} + items={this.state.visibleUsers} loading={users.length === 0} search={search} sorting={sorting} @@ -262,10 +269,34 @@ export class UsersGridPage extends Component<Props, State> { }); }; - private async loadUsers() { + private getVisibleUsers = (users: User[], filter: string, includeReservedUsers: boolean) => { + return users.filter( + ({ username, roles: userRoles, full_name: fullName = '', email = '', metadata = {} }) => { + const normalized = `${username} ${userRoles.join(' ')} ${fullName} ${email}`.toLowerCase(); + const normalizedQuery = filter.toLowerCase(); + return ( + normalized.indexOf(normalizedQuery) !== -1 && + (includeReservedUsers || !metadata._reserved) + ); + } + ); + }; + + private async loadUsersAndRoles() { try { - const users = await this.props.apiClient.getUsers(); - this.setState({ users }); + const [users, roles] = await Promise.all([ + this.props.userAPIClient.getUsers(), + this.props.rolesAPIClient.getRoles(), + ]); + this.setState({ + users, + roles, + visibleUsers: this.getVisibleUsers( + users, + this.state.filter, + this.state.includeReservedUsers + ), + }); } catch (e) { if (e.body.statusCode === 403) { this.setState({ permissionDenied: true }); @@ -303,6 +334,62 @@ export class UsersGridPage extends Component<Props, State> { ); } + private onIncludeReservedUsersChange = (e: EuiSwitchEvent) => { + this.setState({ + includeReservedUsers: e.target.checked, + visibleUsers: this.getVisibleUsers(this.state.users, this.state.filter, e.target.checked), + }); + }; + + private renderToolsRight() { + return ( + <EuiSwitch + data-test-subj="showReservedUsersSwitch" + label={ + <FormattedMessage + id="xpack.security.management.users.showReservedUsersLabel" + defaultMessage="Show reserved users" + /> + } + checked={this.state.includeReservedUsers} + onChange={this.onIncludeReservedUsersChange} + /> + ); + } + + private getUserStatusBadges = (user: User) => { + const enabled = user.enabled; + const reserved = isUserReserved(user); + + const badges = []; + if (!enabled) { + badges.push(<DisabledBadge data-test-subj="userDisabled" />); + } + if (reserved) { + badges.push( + <ReservedBadge + data-test-subj="userReserved" + tooltipContent={ + <FormattedMessage + id="xpack.security.management.users.reservedUserBadgeTooltip" + defaultMessage="Reserved users are built-in and cannot be edited or removed." + /> + } + /> + ); + } + + return ( + <EuiFlexGroup gutterSize="s"> + {badges.map((badge, index) => ( + <EuiFlexItem key={index} grow={false}> + {badge} + </EuiFlexItem> + ))} + </EuiFlexGroup> + ); + }; + private onCancelDelete = () => { this.setState({ showDeleteConfirmation: false }); }; diff --git a/x-pack/plugins/security/public/management/users/users_management_app.test.tsx b/x-pack/plugins/security/public/management/users/users_management_app.test.tsx index fd81756f176f72..05491d6f889b6c 100644 --- a/x-pack/plugins/security/public/management/users/users_management_app.test.tsx +++ b/x-pack/plugins/security/public/management/users/users_management_app.test.tsx @@ -58,7 +58,7 @@ describe('usersManagementApp', () => { expect(setBreadcrumbs).toHaveBeenCalledWith([{ href: `#${basePath}`, text: 'Users' }]); expect(container).toMatchInlineSnapshot(` <div> - Users Page: {"notifications":{"toasts":{}},"apiClient":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}}} + Users Page: {"notifications":{"toasts":{}},"userAPIClient":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}},"rolesAPIClient":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}}} </div> `); @@ -80,7 +80,7 @@ describe('usersManagementApp', () => { ]); expect(container).toMatchInlineSnapshot(` <div> - User Edit Page: {"authc":{},"apiClient":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}},"rolesAPIClient":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}},"notifications":{"toasts":{}}} + User Edit Page: {"authc":{},"userAPIClient":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}},"rolesAPIClient":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}},"notifications":{"toasts":{}}} </div> `); @@ -103,7 +103,7 @@ describe('usersManagementApp', () => { ]); expect(container).toMatchInlineSnapshot(` <div> - User Edit Page: {"authc":{},"apiClient":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}},"rolesAPIClient":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}},"notifications":{"toasts":{}},"username":"someUserName"} + User Edit Page: {"authc":{},"userAPIClient":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}},"rolesAPIClient":{"http":{"basePath":{"basePath":"","serverBasePath":""},"anonymousPaths":{}}},"notifications":{"toasts":{}},"username":"someUserName"} </div> `); diff --git a/x-pack/plugins/security/public/management/users/users_management_app.tsx b/x-pack/plugins/security/public/management/users/users_management_app.tsx index 9aebb396ce9a92..7874b810676b5a 100644 --- a/x-pack/plugins/security/public/management/users/users_management_app.tsx +++ b/x-pack/plugins/security/public/management/users/users_management_app.tsx @@ -39,9 +39,16 @@ export const usersManagementApp = Object.freeze({ ]; const userAPIClient = new UserAPIClient(http); + const rolesAPIClient = new RolesAPIClient(http); const UsersGridPageWithBreadcrumbs = () => { setBreadcrumbs(usersBreadcrumbs); - return <UsersGridPage notifications={notifications} apiClient={userAPIClient} />; + return ( + <UsersGridPage + notifications={notifications} + userAPIClient={userAPIClient} + rolesAPIClient={rolesAPIClient} + /> + ); }; const EditUserPageWithBreadcrumbs = () => { @@ -61,7 +68,7 @@ export const usersManagementApp = Object.freeze({ return ( <EditUserPage authc={authc} - apiClient={userAPIClient} + userAPIClient={userAPIClient} rolesAPIClient={new RolesAPIClient(http)} notifications={notifications} username={username} diff --git a/x-pack/plugins/security/public/plugin.tsx b/x-pack/plugins/security/public/plugin.tsx index 467f86bd1ac692..8e5c4f87e36471 100644 --- a/x-pack/plugins/security/public/plugin.tsx +++ b/x-pack/plugins/security/public/plugin.tsx @@ -128,7 +128,7 @@ export class SecurityPlugin <AccountManagementPage authc={this.authc} notifications={core.notifications} - apiClient={new UserAPIClient(core.http)} + userAPIClient={new UserAPIClient(core.http)} /> </core.i18n.Context> ), diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 0504343e4dcc33..43f2e1956adf39 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -10662,14 +10662,10 @@ "xpack.security.management.roles.deleteSelectedRolesButtonLabel": "ロール {numSelected} {numSelected, plural, one { } other {}} を削除しました", "xpack.security.management.roles.deletingRolesWarningMessage": "この操作は元に戻すことができません。", "xpack.security.management.roles.deniedPermissionTitle": "ロールを管理するにはパーミッションが必要です", - "xpack.security.management.roles.disabledTooltip": " (無効)", "xpack.security.management.roles.editRoleActionName": "{roleName} を編集", "xpack.security.management.roles.fetchingRolesErrorMessage": "ロールの取得中にエラーが発生: {message}", "xpack.security.management.roles.nameColumnName": "ロール", "xpack.security.management.roles.noPermissionToManageRolesDescription": "システム管理者にお問い合わせください。", - "xpack.security.management.roles.reservedColumnDescription": "リザーブされたロールはビルトインのため削除または変更できません。", - "xpack.security.management.roles.reservedColumnName": "リザーブ", - "xpack.security.management.roles.reservedRoleIconLabel": "指定済みロール", "xpack.security.management.roles.roleNotFound": "「{roleName}」ロールが見つかりません。", "xpack.security.management.roles.roleTitle": "ロール", "xpack.security.management.roles.subtitle": "ユーザーのグループにロールを適用してスタック全体のパーミッションを管理", @@ -10720,7 +10716,6 @@ "xpack.security.management.users.fullNameColumnName": "フルネーム", "xpack.security.management.users.permissionDeniedToManageUsersDescription": "システム管理者にお問い合わせください。", "xpack.security.management.users.reservedColumnDescription": "リザーブされたユーザーはビルトインのため削除できません。パスワードのみ変更できます。", - "xpack.security.management.users.reservedColumnName": "リザーブ", "xpack.security.management.users.rolesColumnName": "ロール", "xpack.security.management.users.userNameColumnName": "ユーザー名", "xpack.security.management.users.usersTitle": "ユーザー", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index 156b1d3d241533..328afa513337b0 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -10662,14 +10662,10 @@ "xpack.security.management.roles.deleteSelectedRolesButtonLabel": "删除 {numSelected} 个角色{numSelected, plural, one {} other {}}", "xpack.security.management.roles.deletingRolesWarningMessage": "此操作无法撤消。", "xpack.security.management.roles.deniedPermissionTitle": "您需要用于管理角色的权限", - "xpack.security.management.roles.disabledTooltip": " (已禁用)", "xpack.security.management.roles.editRoleActionName": "编辑 {roleName}", "xpack.security.management.roles.fetchingRolesErrorMessage": "获取用户时出错:{message}", "xpack.security.management.roles.nameColumnName": "角色", "xpack.security.management.roles.noPermissionToManageRolesDescription": "请联系您的管理员。", - "xpack.security.management.roles.reservedColumnDescription": "保留角色为内置角色,不能编辑或移除。", - "xpack.security.management.roles.reservedColumnName": "保留", - "xpack.security.management.roles.reservedRoleIconLabel": "保留角色", "xpack.security.management.roles.roleNotFound": "未找到任何“{roleName}”。", "xpack.security.management.roles.roleTitle": "角色", "xpack.security.management.roles.subtitle": "将角色应用到用户组并管理整个堆栈的权限。", @@ -10720,7 +10716,6 @@ "xpack.security.management.users.fullNameColumnName": "全名", "xpack.security.management.users.permissionDeniedToManageUsersDescription": "请联系您的管理员。", "xpack.security.management.users.reservedColumnDescription": "保留的用户是内置的,无法删除。只能更改密码。", - "xpack.security.management.users.reservedColumnName": "保留", "xpack.security.management.users.rolesColumnName": "角色", "xpack.security.management.users.userNameColumnName": "用户名", "xpack.security.management.users.usersTitle": "用户", diff --git a/x-pack/test/functional/apps/security/role_mappings.ts b/x-pack/test/functional/apps/security/role_mappings.ts index a1517e1934a286..827466c6600154 100644 --- a/x-pack/test/functional/apps/security/role_mappings.ts +++ b/x-pack/test/functional/apps/security/role_mappings.ts @@ -28,7 +28,7 @@ export default ({ getPageObjects, getService }: FtrProviderContext) => { it('allows a role mapping to be created', async () => { await testSubjects.click('createRoleMappingButton'); await testSubjects.setValue('roleMappingFormNameInput', 'new_role_mapping'); - await testSubjects.setValue('roleMappingFormRoleComboBox', 'superuser'); + await testSubjects.setValue('rolesDropdown', 'superuser'); await browser.pressKeys(browser.keys.ENTER); await testSubjects.click('roleMappingsAddRuleButton'); diff --git a/x-pack/test/functional/apps/security/users.js b/x-pack/test/functional/apps/security/users.js index 9dc42553f0fdfe..f49a74a661a63a 100644 --- a/x-pack/test/functional/apps/security/users.js +++ b/x-pack/test/functional/apps/security/users.js @@ -82,13 +82,34 @@ export default function({ getService, getPageObjects }) { log.debug('actualRoles = %j', roles); // This only contains the first page of alphabetically sorted results, so the assertions are only for the first handful of expected roles. expect(roles.apm_system.reserved).to.be(true); + expect(roles.apm_system.deprecated).to.be(false); + expect(roles.apm_user.reserved).to.be(true); + expect(roles.apm_user.deprecated).to.be(false); + expect(roles.beats_admin.reserved).to.be(true); + expect(roles.beats_admin.deprecated).to.be(false); + expect(roles.beats_system.reserved).to.be(true); + expect(roles.beats_system.deprecated).to.be(false); + expect(roles.kibana_admin.reserved).to.be(true); + expect(roles.kibana_admin.deprecated).to.be(false); + + expect(roles.kibana_user.reserved).to.be(true); + expect(roles.kibana_user.deprecated).to.be(true); + + expect(roles.kibana_dashboard_only_user.reserved).to.be(true); + expect(roles.kibana_dashboard_only_user.deprecated).to.be(true); + expect(roles.kibana_system.reserved).to.be(true); + expect(roles.kibana_system.deprecated).to.be(false); + expect(roles.logstash_system.reserved).to.be(true); + expect(roles.logstash_system.deprecated).to.be(false); + expect(roles.monitoring_user.reserved).to.be(true); + expect(roles.monitoring_user.deprecated).to.be(false); }); }); } diff --git a/x-pack/test/functional/page_objects/security_page.js b/x-pack/test/functional/page_objects/security_page.js index 5889a374e443e1..4803596b973bca 100644 --- a/x-pack/test/functional/page_objects/security_page.js +++ b/x-pack/test/functional/page_objects/security_page.js @@ -232,16 +232,16 @@ export function SecurityPageProvider({ getService, getPageObjects }) { const usernameElement = await user.findByCssSelector('[data-test-subj="userRowUserName"]'); const emailElement = await user.findByCssSelector('[data-test-subj="userRowEmail"]'); const rolesElement = await user.findByCssSelector('[data-test-subj="userRowRoles"]'); - const isReservedElementVisible = await user.findByCssSelector('td:last-child'); + // findAllByCssSelector is substantially faster than `find.descendantExistsByCssSelector for negative cases + const isUserReserved = + (await user.findAllByCssSelector('span[data-test-subj="userReserved"]', 1)).length > 0; return { username: await usernameElement.getVisibleText(), fullname: await fullnameElement.getVisibleText(), email: await emailElement.getVisibleText(), - roles: (await rolesElement.getVisibleText()).split(',').map(role => role.trim()), - reserved: (await isReservedElementVisible.getAttribute('innerHTML')).includes( - 'reservedUser' - ), + roles: (await rolesElement.getVisibleText()).split('\n').map(role => role.trim()), + reserved: isUserReserved, }; }); } @@ -249,15 +249,22 @@ export function SecurityPageProvider({ getService, getPageObjects }) { async getElasticsearchRoles() { const users = await testSubjects.findAll('roleRow'); return mapAsync(users, async role => { - const rolenameElement = await role.findByCssSelector('[data-test-subj="roleRowName"]'); - const reservedRoleRow = await role.findByCssSelector('td:nth-last-child(2)'); + const [rolename, reserved, deprecated] = await Promise.all([ + role.findByCssSelector('[data-test-subj="roleRowName"]').then(el => el.getVisibleText()), + // findAllByCssSelector is substantially faster than `find.descendantExistsByCssSelector for negative cases + role + .findAllByCssSelector('span[data-test-subj="roleReserved"]', 1) + .then(el => el.length > 0), + // findAllByCssSelector is substantially faster than `find.descendantExistsByCssSelector for negative cases + role + .findAllByCssSelector('span[data-test-subj="roleDeprecated"]', 1) + .then(el => el.length > 0), + ]); return { - rolename: await rolenameElement.getVisibleText(), - reserved: await find.descendantExistsByCssSelector( - '[data-test-subj="reservedRole"]', - reservedRoleRow - ), + rolename, + reserved, + deprecated, }; }); } @@ -400,7 +407,7 @@ export function SecurityPageProvider({ getService, getPageObjects }) { } async selectRole(role) { - const dropdown = await testSubjects.find('userFormRolesDropdown'); + const dropdown = await testSubjects.find('rolesDropdown'); const input = await dropdown.findByCssSelector('input'); await input.type(role); await testSubjects.click(`roleOption-${role}`); From 6a02b3a024dd4ef42da924d5d45c1b578694721e Mon Sep 17 00:00:00 2001 From: Joe Reuter <johannes.reuter@elastic.co> Date: Tue, 3 Mar 2020 19:35:24 +0100 Subject: [PATCH 060/120] TSVB: Add validation support for legacy filter values (#58436) --- .../server/routes/post_vis_schema.ts | 24 +++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/src/plugins/vis_type_timeseries/server/routes/post_vis_schema.ts b/src/plugins/vis_type_timeseries/server/routes/post_vis_schema.ts index 7893ad456e83b7..3127e03ada0efa 100644 --- a/src/plugins/vis_type_timeseries/server/routes/post_vis_schema.ts +++ b/src/plugins/vis_type_timeseries/server/routes/post_vis_schema.ts @@ -63,6 +63,7 @@ const backgroundColorRulesItems = Joi.object({ const gaugeColorRulesItems = Joi.object({ gauge: stringOptionalNullable, + text: stringOptionalNullable, id: stringOptionalNullable, operator: stringOptionalNullable, value: Joi.number(), @@ -95,6 +96,18 @@ const metricsItems = Joi.object({ }) ) .optional(), + percentiles: Joi.array() + .items( + Joi.object({ + id: stringRequired, + field: stringOptionalNullable, + mode: Joi.string().allow('line', 'band'), + shade: Joi.alternatives(numberOptional, stringOptionalNullable), + value: Joi.alternatives(numberOptional, stringOptionalNullable), + percentile: stringOptionalNullable, + }) + ) + .optional(), type: stringRequired, value: stringOptionalNullable, values: Joi.array() @@ -132,10 +145,13 @@ const seriesItems = Joi.object({ ) .optional(), fill: numberOptionalOrEmptyString, - filter: Joi.object({ - query: stringRequired, - language: stringOptionalNullable, - }).optional(), + filter: Joi.alternatives( + Joi.object({ + query: stringRequired, + language: stringOptionalNullable, + }).optional(), + Joi.string().valid('') + ), formatter: stringRequired, hide_in_legend: numberIntegerOptional, hidden: Joi.boolean().optional(), From b95abbae4533eeece4b7b9f65beb4e7b3485b7b7 Mon Sep 17 00:00:00 2001 From: spalger <spalger@users.noreply.github.com> Date: Tue, 3 Mar 2020 11:49:27 -0700 Subject: [PATCH 061/120] skip flaky suite (#58970) --- .../application/sections/alert_add/alert_add.test.tsx | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/alert_add/alert_add.test.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/alert_add/alert_add.test.tsx index 05adccf982b7f5..cc3b15d374718c 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/alert_add/alert_add.test.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/alert_add/alert_add.test.tsx @@ -19,11 +19,12 @@ import { ReactWrapper } from 'enzyme'; const actionTypeRegistry = actionTypeRegistryMock.create(); const alertTypeRegistry = alertTypeRegistryMock.create(); -describe('alert_add', () => { +// FLAKY: https://github.com/elastic/kibana/issues/58970 +describe.skip('alert_add', () => { let deps: AppDeps | null; let wrapper: ReactWrapper<any>; - beforeAll(async () => { + async function setup() { const mockes = coreMock.createSetup(); const [ { @@ -108,9 +109,10 @@ describe('alert_add', () => { } }); await waitForRender(wrapper); - }); + } - it('renders alert add flyout', () => { + it('renders alert add flyout', async () => { + await setup(); expect(wrapper.find('[data-test-subj="addAlertFlyoutTitle"]').exists()).toBeTruthy(); expect(wrapper.find('[data-test-subj="saveAlertButton"]').exists()).toBeTruthy(); }); From 2dcd3cc4c680d78d8a55892c6a50499d060c92e9 Mon Sep 17 00:00:00 2001 From: Tyler Smalley <tyler.smalley@elastic.co> Date: Tue, 3 Mar 2020 10:51:20 -0800 Subject: [PATCH 062/120] [test] Comment out Jest hooks in skipped blocks (#59086) * [test] Comment out Jest hooks in skipped blocks Jest will run the hooks regardless of if they are skipped. Tests skipped in https://github.com/elastic/kibana/commit/61c9dc4022d1629513c4450d9a3c2482268d98e1 and https://github.com/elastic/kibana/commit/420ded8eb2c46615116518bee328c9eebcdd646a were still resulting in build failures due to the beforeEach failing. Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co> * Additional variables/imports no longer needed Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co> * Skip additional flaky ingest tests Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co> * Comment out file Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co> * Must have one test Signed-off-by: Tyler Smalley <tyler.smalley@elastic.co> --- .../public/request/request.test.js | 9 +++++++- .../server/integration_tests/router.test.ts | 20 +++++++++++++++--- .../remote_clusters_edit.test.js | 16 ++++++++++---- .../on_post_auth_interceptor.test.ts | 7 +++++++ .../on_request_interceptor.test.ts | 7 +++++++ .../contract_tests/example.contract.test.ts | 21 +++++++++++++------ 6 files changed, 66 insertions(+), 14 deletions(-) diff --git a/src/plugins/es_ui_shared/public/request/request.test.js b/src/plugins/es_ui_shared/public/request/request.test.js index 44bf149d5fd1e9..cc554b531d88a7 100644 --- a/src/plugins/es_ui_shared/public/request/request.test.js +++ b/src/plugins/es_ui_shared/public/request/request.test.js @@ -18,7 +18,7 @@ */ import sinon from 'sinon'; -import { sendRequest as sendRequestUnbound, useRequest as useRequestUnbound } from './request'; +// import { sendRequest as sendRequestUnbound, useRequest as useRequestUnbound } from './request'; import React from 'react'; import { act } from 'react-dom/test-utils'; @@ -52,6 +52,11 @@ describe.skip('request lib', () => { let sendRequest; let useRequest; + /** + * + * commented out due to hooks being called regardless of skip + * https://github.com/facebook/jest/issues/8379 + beforeEach(() => { sendPost = sinon.stub(); sendPost.withArgs(successRequest.path, successRequest.body).returns(successResponse); @@ -67,6 +72,8 @@ describe.skip('request lib', () => { useRequest = useRequestUnbound.bind(null, httpClient); }); + */ + describe('sendRequest function', () => { it('uses the provided path, method, and body to send the request', async () => { const response = await sendRequest({ ...successRequest }); diff --git a/x-pack/plugins/ingest_manager/server/integration_tests/router.test.ts b/x-pack/plugins/ingest_manager/server/integration_tests/router.test.ts index 3a13359cdf782f..c2546454e21316 100644 --- a/x-pack/plugins/ingest_manager/server/integration_tests/router.test.ts +++ b/x-pack/plugins/ingest_manager/server/integration_tests/router.test.ts @@ -4,6 +4,14 @@ * you may not use this file except in compliance with the Elastic License. */ +test.skip('requires one test', () => {}); + +/** + * skipped due to all being flaky: https://github.com/elastic/kibana/issues/58954 + * + * commented out due to hooks being called regardless of skip + * https://github.com/facebook/jest/issues/8379 + import { resolve } from 'path'; import * as kbnTestServer from '../../../../../src/test_utils/kbn_server'; @@ -23,8 +31,9 @@ function createXPackRoot(config: {} = {}) { } describe('ingestManager', () => { - describe.skip('default. manager, EPM, and Fleet all disabled', () => { + describe('default. manager, EPM, and Fleet all disabled', () => { let root: ReturnType<typeof kbnTestServer.createRoot>; + beforeAll(async () => { root = createXPackRoot(); await root.setup(); @@ -50,8 +59,9 @@ describe('ingestManager', () => { }); }); - describe.skip('manager only (no EPM, no Fleet)', () => { + describe('manager only (no EPM, no Fleet)', () => { let root: ReturnType<typeof kbnTestServer.createRoot>; + beforeAll(async () => { const ingestManagerConfig = { enabled: true, @@ -87,8 +97,9 @@ describe('ingestManager', () => { // https://github.com/jfsiii/kibana/blob/f73b54ebb7e0f6fc00efd8a6800a01eb2d9fb772/x-pack/plugins/ingest_manager/server/plugin.ts#L84 // adding tests to confirm the Fleet & EPM routes are never added - describe.skip('manager and EPM; no Fleet', () => { + describe('manager and EPM; no Fleet', () => { let root: ReturnType<typeof kbnTestServer.createRoot>; + beforeAll(async () => { const ingestManagerConfig = { enabled: true, @@ -122,6 +133,7 @@ describe('ingestManager', () => { describe('manager and Fleet; no EPM)', () => { let root: ReturnType<typeof kbnTestServer.createRoot>; + beforeAll(async () => { const ingestManagerConfig = { enabled: true, @@ -156,6 +168,7 @@ describe('ingestManager', () => { describe('all flags enabled: manager, EPM, and Fleet)', () => { let root: ReturnType<typeof kbnTestServer.createRoot>; + beforeAll(async () => { const ingestManagerConfig = { enabled: true, @@ -188,3 +201,4 @@ describe('ingestManager', () => { }); }); }); +*/ diff --git a/x-pack/plugins/remote_clusters/__jest__/client_integration/remote_clusters_edit.test.js b/x-pack/plugins/remote_clusters/__jest__/client_integration/remote_clusters_edit.test.js index 1136b7307176df..f7625d9eec0909 100644 --- a/x-pack/plugins/remote_clusters/__jest__/client_integration/remote_clusters_edit.test.js +++ b/x-pack/plugins/remote_clusters/__jest__/client_integration/remote_clusters_edit.test.js @@ -6,22 +6,28 @@ jest.mock('ui/new_platform'); import { RemoteClusterForm } from '../../public/application/sections/components/remote_cluster_form'; -import { pageHelpers, setupEnvironment, nextTick } from './helpers'; +// import { pageHelpers, setupEnvironment, nextTick } from './helpers'; +import { pageHelpers, nextTick } from './helpers'; import { REMOTE_CLUSTER_EDIT, REMOTE_CLUSTER_EDIT_NAME } from './helpers/constants'; -const { setup } = pageHelpers.remoteClustersEdit; +// const { setup } = pageHelpers.remoteClustersEdit; const { setup: setupRemoteClustersAdd } = pageHelpers.remoteClustersAdd; // FLAKY: https://github.com/elastic/kibana/issues/57762 // FLAKY: https://github.com/elastic/kibana/issues/57997 // FLAKY: https://github.com/elastic/kibana/issues/57998 describe.skip('Edit Remote cluster', () => { - let server; - let httpRequestsMockHelpers; + // let server; + // let httpRequestsMockHelpers; let component; let find; let exists; + /** + * + * commented out due to hooks being called regardless of skip + * https://github.com/facebook/jest/issues/8379 + beforeAll(() => { ({ server, httpRequestsMockHelpers } = setupEnvironment()); }); @@ -38,6 +44,8 @@ describe.skip('Edit Remote cluster', () => { component.update(); }); + */ + test('should have the title of the page set correctly', () => { expect(exists('remoteClusterPageTitle')).toBe(true); expect(find('remoteClusterPageTitle').text()).toEqual('Edit remote cluster'); diff --git a/x-pack/plugins/spaces/server/lib/request_interceptors/on_post_auth_interceptor.test.ts b/x-pack/plugins/spaces/server/lib/request_interceptors/on_post_auth_interceptor.test.ts index 9cbb2c30e4baf5..40e35085ea18ac 100644 --- a/x-pack/plugins/spaces/server/lib/request_interceptors/on_post_auth_interceptor.test.ts +++ b/x-pack/plugins/spaces/server/lib/request_interceptors/on_post_auth_interceptor.test.ts @@ -41,12 +41,19 @@ describe.skip('onPostAuthInterceptor', () => { ).toString('base64')}`, }; + /** + * + * commented out due to hooks being called regardless of skip + * https://github.com/facebook/jest/issues/8379 + beforeEach(async () => { root = kbnTestServer.createRoot(); }); afterEach(async () => await root.shutdown()); + */ + function initKbnServer(router: IRouter, basePath: IBasePath, routes: 'legacy' | 'new-platform') { const kbnServer = kbnTestServer.getKbnServer(root); diff --git a/x-pack/plugins/spaces/server/lib/request_interceptors/on_request_interceptor.test.ts b/x-pack/plugins/spaces/server/lib/request_interceptors/on_request_interceptor.test.ts index 1b673d3418983f..1558c6425f542d 100644 --- a/x-pack/plugins/spaces/server/lib/request_interceptors/on_request_interceptor.test.ts +++ b/x-pack/plugins/spaces/server/lib/request_interceptors/on_request_interceptor.test.ts @@ -22,12 +22,19 @@ import { elasticsearchServiceMock } from 'src/core/server/mocks'; describe.skip('onRequestInterceptor', () => { let root: ReturnType<typeof kbnTestServer.createRoot>; + /** + * + * commented out due to hooks being called regardless of skip + * https://github.com/facebook/jest/issues/8379 + beforeEach(async () => { root = kbnTestServer.createRoot(); }, 30000); afterEach(async () => await root.shutdown()); + */ + function initKbnServer(router: IRouter, basePath: IBasePath, routes: 'legacy' | 'new-platform') { const kbnServer = kbnTestServer.getKbnServer(root); diff --git a/x-pack/test_utils/jest/contract_tests/example.contract.test.ts b/x-pack/test_utils/jest/contract_tests/example.contract.test.ts index aa452e5f1aee16..642a4f2d016440 100644 --- a/x-pack/test_utils/jest/contract_tests/example.contract.test.ts +++ b/x-pack/test_utils/jest/contract_tests/example.contract.test.ts @@ -6,19 +6,25 @@ import Slapshot from '@mattapperson/slapshot'; -import { createKibanaServer } from './servers'; -import { getEsArchiver } from './services/es_archiver'; -import { EsArchiver } from 'src/es_archiver'; -import * as path from 'path'; +// import { createKibanaServer } from './servers'; +// import { getEsArchiver } from './services/es_archiver'; +// import { EsArchiver } from 'src/es_archiver'; +// import * as path from 'path'; import * as legacyElasticsearch from 'elasticsearch'; -const { callWhenOnline, memorize } = Slapshot; +// const { callWhenOnline, memorize } = Slapshot; +const { memorize } = Slapshot; let servers: { kbnServer: any; shutdown: () => void }; -let esArchiver: EsArchiver; +// let esArchiver: EsArchiver; // FLAKY: https://github.com/elastic/kibana/issues/44250 describe.skip('Example contract tests', () => { + /** + * + * commented out due to hooks being called regardless of skip + * https://github.com/facebook/jest/issues/8379 + beforeAll(async () => { await callWhenOnline(async () => { servers = await createKibanaServer(); @@ -28,6 +34,7 @@ describe.skip('Example contract tests', () => { }); }); }); + afterAll(async () => { if (servers) { await servers.shutdown(); @@ -37,6 +44,8 @@ describe.skip('Example contract tests', () => { beforeEach(async () => await callWhenOnline(() => esArchiver.load('example'))); afterEach(async () => await callWhenOnline(() => esArchiver.unload('example'))); + */ + it('should run online or offline', async () => { const res = await memorize('example_test_snapshot', async () => { return { serverExists: !!servers.kbnServer }; From fd5c6c16cd4f2c270f894ccfcfcc28e060fae39c Mon Sep 17 00:00:00 2001 From: James Gowdy <jgowdy@elastic.co> Date: Tue, 3 Mar 2020 18:57:40 +0000 Subject: [PATCH 063/120] [ML] Fixing licensing after server NP cutover (#58853) * [ML] Fixing licensing after server NP cutover * client side refactor * management refactor * moving management license check * adding server side license class * added common license class * client sides using license class * updating server api guards * fix privileges tests * updating translations * fixing disabled tabs on basic license * refactoring client side license checks * setting license initialized flag * fixing license check on index data viz Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../legacy/plugins/ml/common/license/index.ts | 7 + .../plugins/ml/common/license/ml_license.ts | 78 ++++++++ .../plugins/ml/public/application/app.tsx | 11 +- .../anomalies_table/anomalies_table.test.js | 2 +- .../components/navigation_menu/main_tabs.tsx | 10 +- .../navigation_menu/navigation_menu.tsx | 2 +- .../datavisualizer_selector.tsx | 2 +- .../results_links/results_links.tsx | 2 +- .../datavisualizer/index_based/page.tsx | 2 +- .../license/__tests__/check_license.js | 36 ---- .../application/license/check_license.tsx | 160 ++++++----------- .../application/license/expired_warning.tsx | 26 +++ .../ml/public/application/license/index.ts | 13 ++ .../application/license/ml_client_license.ts | 51 ++++++ .../ml/public/application/management/index.ts | 29 ++- .../application/privilege/check_privilege.ts | 2 +- .../public/application/routing/resolvers.ts | 2 +- .../routes/datavisualizer/datavisualizer.tsx | 2 +- .../routes/datavisualizer/file_based.tsx | 4 +- .../routes/datavisualizer/index_based.tsx | 2 +- .../routes/new_job/index_or_search.tsx | 2 +- .../application/routing/routes/overview.tsx | 2 +- .../routing/routes/settings/calendar_list.tsx | 2 +- .../routes/settings/calendar_new_edit.tsx | 2 +- .../routing/routes/settings/filter_list.tsx | 2 +- .../routes/settings/filter_list_new_edit.tsx | 2 +- .../routing/routes/settings/settings.tsx | 2 +- .../calendars/edit/new_calendar.test.js | 2 +- .../calendars/list/calendars_list.test.js | 2 +- .../application/util/dependency_cache.ts | 1 + x-pack/legacy/plugins/ml/public/legacy.ts | 12 +- x-pack/legacy/plugins/ml/public/plugin.ts | 3 +- .../lib/check_license/check_license.test.ts | 167 ------------------ .../server/lib/check_license/check_license.ts | 82 --------- .../check_privileges/check_privileges.test.ts | 65 ++++--- .../lib/check_privileges/check_privileges.ts | 14 +- .../lib/{check_license => license}/index.ts | 2 +- .../server/lib/license/ml_server_license.ts | 35 ++++ .../ml/server/lib/sample_data_sets/index.ts | 2 +- .../lib/sample_data_sets/sample_data_sets.ts | 41 +++-- x-pack/plugins/ml/server/plugin.ts | 62 ++----- .../plugins/ml/server/routes/annotations.ts | 9 +- .../ml/server/routes/anomaly_detectors.ts | 33 ++-- x-pack/plugins/ml/server/routes/calendars.ts | 13 +- .../ml/server/routes/data_frame_analytics.ts | 25 ++- .../ml/server/routes/data_visualizer.ts | 7 +- x-pack/plugins/ml/server/routes/datafeeds.ts | 23 ++- .../ml/server/routes/fields_service.ts | 8 +- .../ml/server/routes/file_data_visualizer.ts | 7 +- x-pack/plugins/ml/server/routes/filters.ts | 15 +- x-pack/plugins/ml/server/routes/indices.ts | 5 +- .../ml/server/routes/job_audit_messages.ts | 7 +- .../plugins/ml/server/routes/job_service.ts | 42 +++-- .../ml/server/routes/job_validation.ts | 18 +- .../license_check_pre_routing_factory.ts | 33 ---- x-pack/plugins/ml/server/routes/modules.ts | 11 +- .../ml/server/routes/notification_settings.ts | 5 +- .../ml/server/routes/results_service.ts | 13 +- x-pack/plugins/ml/server/routes/system.ts | 19 +- x-pack/plugins/ml/server/types.ts | 3 +- .../translations/translations/ja-JP.json | 3 - .../translations/translations/zh-CN.json | 3 - 62 files changed, 535 insertions(+), 714 deletions(-) create mode 100644 x-pack/legacy/plugins/ml/common/license/index.ts create mode 100644 x-pack/legacy/plugins/ml/common/license/ml_license.ts delete mode 100644 x-pack/legacy/plugins/ml/public/application/license/__tests__/check_license.js create mode 100644 x-pack/legacy/plugins/ml/public/application/license/expired_warning.tsx create mode 100644 x-pack/legacy/plugins/ml/public/application/license/index.ts create mode 100644 x-pack/legacy/plugins/ml/public/application/license/ml_client_license.ts delete mode 100644 x-pack/plugins/ml/server/lib/check_license/check_license.test.ts delete mode 100644 x-pack/plugins/ml/server/lib/check_license/check_license.ts rename x-pack/plugins/ml/server/lib/{check_license => license}/index.ts (81%) create mode 100644 x-pack/plugins/ml/server/lib/license/ml_server_license.ts delete mode 100644 x-pack/plugins/ml/server/routes/license_check_pre_routing_factory.ts diff --git a/x-pack/legacy/plugins/ml/common/license/index.ts b/x-pack/legacy/plugins/ml/common/license/index.ts new file mode 100644 index 00000000000000..e901a9545897be --- /dev/null +++ b/x-pack/legacy/plugins/ml/common/license/index.ts @@ -0,0 +1,7 @@ +/* + * 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 { MlLicense, LicenseStatus, MINIMUM_FULL_LICENSE, MINIMUM_LICENSE } from './ml_license'; diff --git a/x-pack/legacy/plugins/ml/common/license/ml_license.ts b/x-pack/legacy/plugins/ml/common/license/ml_license.ts new file mode 100644 index 00000000000000..8b631bf6ffb46a --- /dev/null +++ b/x-pack/legacy/plugins/ml/common/license/ml_license.ts @@ -0,0 +1,78 @@ +/* + * 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, Subscription } from 'rxjs'; +import { ILicense, LICENSE_CHECK_STATE } from '../../../../../plugins/licensing/common/types'; +import { PLUGIN_ID } from '../constants/app'; + +export const MINIMUM_LICENSE = 'basic'; +export const MINIMUM_FULL_LICENSE = 'platinum'; + +export interface LicenseStatus { + isValid: boolean; + isSecurityEnabled: boolean; + message?: string; +} + +export class MlLicense { + private _licenseSubscription: Subscription | null = null; + private _license: ILicense | null = null; + private _isSecurityEnabled: boolean = false; + private _hasLicenseExpired: boolean = false; + private _isMlEnabled: boolean = false; + private _isMinimumLicense: boolean = false; + private _isFullLicense: boolean = false; + private _initialized: boolean = false; + + public setup( + license$: Observable<ILicense>, + postInitFunctions?: Array<(lic: MlLicense) => void> + ) { + this._licenseSubscription = license$.subscribe(async license => { + const { isEnabled: securityIsEnabled } = license.getFeature('security'); + + this._license = license; + this._isSecurityEnabled = securityIsEnabled; + this._hasLicenseExpired = this._license.status === 'expired'; + this._isMlEnabled = this._license.getFeature(PLUGIN_ID).isEnabled; + this._isMinimumLicense = + this._license.check(PLUGIN_ID, MINIMUM_LICENSE).state === LICENSE_CHECK_STATE.Valid; + this._isFullLicense = + this._license.check(PLUGIN_ID, MINIMUM_FULL_LICENSE).state === LICENSE_CHECK_STATE.Valid; + + if (this._initialized === false && postInitFunctions !== undefined) { + postInitFunctions.forEach(f => f(this)); + } + this._initialized = true; + }); + } + + public unsubscribe() { + if (this._licenseSubscription !== null) { + this._licenseSubscription.unsubscribe(); + } + } + + public isSecurityEnabled() { + return this._isSecurityEnabled; + } + + public hasLicenseExpired() { + return this._hasLicenseExpired; + } + + public isMlEnabled() { + return this._isMlEnabled; + } + + public isMinimumLicense() { + return this._isMinimumLicense; + } + + public isFullLicense() { + return this._isFullLicense; + } +} diff --git a/x-pack/legacy/plugins/ml/public/application/app.tsx b/x-pack/legacy/plugins/ml/public/application/app.tsx index 3acb24ac6e1733..4c956bfabecc91 100644 --- a/x-pack/legacy/plugins/ml/public/application/app.tsx +++ b/x-pack/legacy/plugins/ml/public/application/app.tsx @@ -13,15 +13,18 @@ import { AppMountParameters, CoreStart } from 'kibana/public'; import { DataPublicPluginStart } from 'src/plugins/data/public'; import { SecurityPluginSetup } from '../../../../../plugins/security/public'; +import { LicensingPluginSetup } from '../../../../../plugins/licensing/public'; import { KibanaContextProvider } from '../../../../../../src/plugins/kibana_react/public'; import { setDependencyCache, clearCache } from './util/dependency_cache'; +import { setLicenseCache } from './license'; import { MlRouter } from './routing'; export interface MlDependencies extends AppMountParameters { data: DataPublicPluginStart; security: SecurityPluginSetup; + licensing: LicensingPluginSetup; __LEGACY: { XSRF: string; }; @@ -36,14 +39,14 @@ const App: FC<AppProps> = ({ coreStart, deps }) => { setDependencyCache({ indexPatterns: deps.data.indexPatterns, timefilter: deps.data.query.timefilter, + fieldFormats: deps.data.fieldFormats, + autocomplete: deps.data.autocomplete, config: coreStart.uiSettings!, chrome: coreStart.chrome!, docLinks: coreStart.docLinks!, toastNotifications: coreStart.notifications.toasts, overlays: coreStart.overlays, recentlyAccessed: coreStart.chrome!.recentlyAccessed, - fieldFormats: deps.data.fieldFormats, - autocomplete: deps.data.autocomplete, basePath: coreStart.http.basePath, savedObjectsClient: coreStart.savedObjects.client, XSRF: deps.__LEGACY.XSRF, @@ -51,7 +54,11 @@ const App: FC<AppProps> = ({ coreStart, deps }) => { http: coreStart.http, security: deps.security, }); + + const mlLicense = setLicenseCache(deps.licensing); + deps.onAppLeave(actions => { + mlLicense.unsubscribe(); clearCache(); return actions.default(); }); diff --git a/x-pack/legacy/plugins/ml/public/application/components/anomalies_table/anomalies_table.test.js b/x-pack/legacy/plugins/ml/public/application/components/anomalies_table/anomalies_table.test.js index 206b9e01bab8c6..b881bfe4f1fe6b 100644 --- a/x-pack/legacy/plugins/ml/public/application/components/anomalies_table/anomalies_table.test.js +++ b/x-pack/legacy/plugins/ml/public/application/components/anomalies_table/anomalies_table.test.js @@ -11,7 +11,7 @@ import { getColumns } from './anomalies_table_columns'; jest.mock('../../privilege/check_privilege', () => ({ checkPermission: () => false, })); -jest.mock('../../license/check_license', () => ({ +jest.mock('../../license', () => ({ hasLicenseExpired: () => false, })); jest.mock('../../privilege/get_privileges', () => ({ diff --git a/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/main_tabs.tsx b/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/main_tabs.tsx index dce5e7ad52b090..695783883d02e5 100644 --- a/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/main_tabs.tsx +++ b/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/main_tabs.tsx @@ -81,13 +81,18 @@ export const MainTabs: FC<Props> = ({ tabId, disableLinks }) => { return ( <EuiTabs display="condensed"> {tabs.map((tab: Tab) => { - const id = tab.id; + const { id, disabled } = tab; const testSubject = TAB_DATA[id].testSubject; const defaultPathId = TAB_DATA[id].pathId || id; // globalState (e.g. selected jobs and time range) should be retained when changing pages. // appState will not be considered. const fullGlobalStateString = globalState !== undefined ? `?_g=${encode(globalState)}` : ''; - return ( + + return disabled ? ( + <EuiTab key={`${id}-key`} className={'mlNavigationMenu__mainTab'} disabled={true}> + {tab.name} + </EuiTab> + ) : ( <EuiLink data-test-subj={testSubject + (id === selectedTabId ? ' selected' : '')} href={`#/${defaultPathId}${fullGlobalStateString}`} @@ -98,7 +103,6 @@ export const MainTabs: FC<Props> = ({ tabId, disableLinks }) => { className={'mlNavigationMenu__mainTab'} onClick={() => onSelectedTabChanged(id)} isSelected={id === selectedTabId} - disabled={tab.disabled} > {tab.name} </EuiTab> diff --git a/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/navigation_menu.tsx b/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/navigation_menu.tsx index e7ba57e25354e8..6be2d18e597414 100644 --- a/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/navigation_menu.tsx +++ b/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/navigation_menu.tsx @@ -7,7 +7,7 @@ import React, { Fragment, FC } from 'react'; import { EuiFlexGroup, EuiFlexItem, EuiHorizontalRule } from '@elastic/eui'; -import { isFullLicense } from '../../license/check_license'; +import { isFullLicense } from '../../license'; import { TopNav } from './top_nav'; import { MainTabs } from './main_tabs'; diff --git a/x-pack/legacy/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx b/x-pack/legacy/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx index 0f56f78c708ee0..254788c52a7a81 100644 --- a/x-pack/legacy/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx +++ b/x-pack/legacy/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx @@ -22,7 +22,7 @@ import { import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; -import { isFullLicense } from '../license/check_license'; +import { isFullLicense } from '../license'; import { useTimefilter } from '../contexts/kibana'; import { NavigationMenu } from '../components/navigation_menu'; diff --git a/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/results_links/results_links.tsx b/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/results_links/results_links.tsx index debadba19051b7..dddf64ce2cfd36 100644 --- a/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/results_links/results_links.tsx +++ b/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/results_links/results_links.tsx @@ -9,7 +9,7 @@ import moment from 'moment'; import { FormattedMessage } from '@kbn/i18n/react'; import { EuiFlexGroup, EuiFlexItem, EuiCard, EuiIcon } from '@elastic/eui'; import { ml } from '../../../../services/ml_api_service'; -import { isFullLicense } from '../../../../license/check_license'; +import { isFullLicense } from '../../../../license'; import { checkPermission } from '../../../../privilege/check_privilege'; import { mlNodesAvailable } from '../../../../ml_nodes_check/check_ml_nodes'; import { useMlKibana } from '../../../../contexts/kibana'; diff --git a/x-pack/legacy/plugins/ml/public/application/datavisualizer/index_based/page.tsx b/x-pack/legacy/plugins/ml/public/application/datavisualizer/index_based/page.tsx index 84c07651d323d7..fbf42ef62265c6 100644 --- a/x-pack/legacy/plugins/ml/public/application/datavisualizer/index_based/page.tsx +++ b/x-pack/legacy/plugins/ml/public/application/datavisualizer/index_based/page.tsx @@ -31,7 +31,7 @@ import { SavedSearchSavedObject } from '../../../../common/types/kibana'; import { NavigationMenu } from '../../components/navigation_menu'; import { ML_JOB_FIELD_TYPES } from '../../../../common/constants/field_types'; import { SEARCH_QUERY_LANGUAGE } from '../../../../common/constants/search'; -import { isFullLicense } from '../../license/check_license'; +import { isFullLicense } from '../../license'; import { checkPermission } from '../../privilege/check_privilege'; import { mlNodesAvailable } from '../../ml_nodes_check/check_ml_nodes'; import { FullTimeRangeSelector } from '../../components/full_time_range_selector'; diff --git a/x-pack/legacy/plugins/ml/public/application/license/__tests__/check_license.js b/x-pack/legacy/plugins/ml/public/application/license/__tests__/check_license.js deleted file mode 100644 index 9ce0ec04befb6e..00000000000000 --- a/x-pack/legacy/plugins/ml/public/application/license/__tests__/check_license.js +++ /dev/null @@ -1,36 +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 expect from '@kbn/expect'; -import { xpackInfo } from '../../../../../xpack_main/public/services/xpack_info'; -import { LICENSE_STATUS_VALID } from '../../../../../../common/constants/license_status'; -import { xpackFeatureAvailable } from '../check_license'; - -const initialInfo = { - features: { - watcher: { - status: LICENSE_STATUS_VALID, - }, - }, -}; - -describe('ML - check license', () => { - describe('xpackFeatureAvailable', () => { - beforeEach(() => { - xpackInfo.setAll(initialInfo); - }); - - it('returns true for enabled feature', () => { - const result = xpackFeatureAvailable('watcher'); - expect(result).to.be(true); - }); - - it('returns false for disabled feature', () => { - const result = xpackFeatureAvailable('noSuchFeature'); - expect(result).to.be(false); - }); - }); -}); diff --git a/x-pack/legacy/plugins/ml/public/application/license/check_license.tsx b/x-pack/legacy/plugins/ml/public/application/license/check_license.tsx index 4af753ddb4d1f2..be5b702742baaf 100644 --- a/x-pack/legacy/plugins/ml/public/application/license/check_license.tsx +++ b/x-pack/legacy/plugins/ml/public/application/license/check_license.tsx @@ -4,126 +4,74 @@ * you may not use this file except in compliance with the Elastic License. */ -import React from 'react'; -import { EuiCallOut } from '@elastic/eui'; -import { toMountPoint } from '../../../../../../../src/plugins/kibana_react/public'; -// @ts-ignore No declaration file for module -import { xpackInfo } from '../../../../xpack_main/public/services/xpack_info'; -import { LICENSE_TYPE } from '../../../common/constants/license'; -import { LICENSE_STATUS_VALID } from '../../../../../common/constants/license_status'; -import { getOverlays } from '../util/dependency_cache'; +import { LicensingPluginSetup } from '../../../../../../plugins/licensing/public'; +import { MlClientLicense } from './ml_client_license'; -let licenseHasExpired = true; -let licenseType: LICENSE_TYPE | null = null; -let expiredLicenseBannerId: string; +let mlLicense: MlClientLicense | null = null; -export function checkFullLicense() { - const features = getFeatures(); - licenseType = features.licenseType; - - if (features.isAvailable === false) { - // ML is not enabled - return redirectToKibana(); - } else if (features.licenseType === LICENSE_TYPE.BASIC) { - // ML is enabled, but only with a basic or gold license - return redirectToBasic(); - } else { - // ML is enabled - setLicenseExpired(features); - return Promise.resolve(features); - } +/** + * Create a new mlLicense and cache it for later checks + * + * @export + * @param {LicensingPluginSetup} licensingSetup + * @returns {MlClientLicense} + */ +export function setLicenseCache(licensingSetup: LicensingPluginSetup) { + mlLicense = new MlClientLicense(); + mlLicense.setup(licensingSetup.license$); + return mlLicense; } -export function checkBasicLicense() { - const features = getFeatures(); - licenseType = features.licenseType; - - if (features.isAvailable === false) { - // ML is not enabled - return redirectToKibana(); - } else { - // ML is enabled - setLicenseExpired(features); - return Promise.resolve(features); +/** + * Used as routing resolver to stop the loading of a page if the current license + * is a trial, platinum or enterprise. + * + * @export + * @returns {Promise<void>} Promise which resolves if the license is trial, platinum or enterprise and rejects if it isn't. + */ +export async function checkFullLicense() { + if (mlLicense === null) { + // this should never happen + console.error('ML Licensing not initialized'); // eslint-disable-line + return Promise.reject(); } -} -// a wrapper for checkFullLicense which doesn't resolve if the license has expired. -// this is used by all create jobs pages to redirect back to the jobs list -// if the user's license has expired. -export function checkLicenseExpired() { - return checkFullLicense() - .then((features: any) => { - if (features.hasExpired) { - window.location.href = '#/jobs'; - return Promise.reject(); - } else { - return Promise.resolve(features); - } - }) - .catch(() => { - return Promise.reject(); - }); + return mlLicense.fullLicenseResolver(); } -function setLicenseExpired(features: any) { - licenseHasExpired = features.hasExpired || false; - // If the license has expired ML app will still work for 7 days and then - // the job management endpoints (e.g. create job, start datafeed) will be restricted. - // Therefore we need to keep the app enabled but show an info banner to the user. - if (licenseHasExpired) { - const message = features.message; - if (expiredLicenseBannerId === undefined) { - // Only show the banner once with no way to dismiss it - const overlays = getOverlays(); - expiredLicenseBannerId = overlays.banners.add( - toMountPoint(<EuiCallOut iconType="iInCircle" color="warning" title={message} />) - ); - } +/** + * Used as routing resolver to stop the loading of a page if the current license + * is at least basic. + * + * @export + * @returns {Promise<void>} Promise resolves if the license is at least basic and rejects if it isn't. + */ +export async function checkBasicLicense() { + if (mlLicense === null) { + // this should never happen + console.error('ML Licensing not initialized'); // eslint-disable-line + return Promise.reject(); } -} -// Temporary hack for cutting over server to NP -function getFeatures() { - return { - isAvailable: true, - showLinks: true, - enableLinks: true, - licenseType: 1, - hasExpired: false, - }; - // return xpackInfo.get('features.ml'); -} - -function redirectToKibana() { - window.location.href = '/'; - return Promise.reject(); -} -function redirectToBasic() { - window.location.href = '#/datavisualizer'; - return Promise.reject(); + return mlLicense.basicLicenseResolver(); } +/** + * Check to see if the current license has expired + * + * @export + * @returns {boolean} + */ export function hasLicenseExpired() { - return licenseHasExpired; + return mlLicense !== null && mlLicense.hasLicenseExpired(); } +/** + * Check to see if the current license is trial, platinum or enterprise. + * + * @export + * @returns {boolean} + */ export function isFullLicense() { - return licenseType === LICENSE_TYPE.FULL; -} - -export function xpackFeatureAvailable(feature: string) { - // each plugin can register their own set of features. - // so we need specific checks for each one. - // this list can grow if we need to check other plugin's features. - switch (feature) { - case 'watcher': - // watcher only has a license status feature - // if watcher is disabled in kibana.yml, the feature is completely missing from xpackInfo - return xpackInfo.get(`features.${feature}.status`, false) === LICENSE_STATUS_VALID; - default: - // historically plugins have used `isAvailable` as a catch all for - // license and feature enabled checks - return xpackInfo.get(`features.${feature}.isAvailable`, false); - } + return mlLicense !== null && mlLicense.isFullLicense(); } diff --git a/x-pack/legacy/plugins/ml/public/application/license/expired_warning.tsx b/x-pack/legacy/plugins/ml/public/application/license/expired_warning.tsx new file mode 100644 index 00000000000000..22cb3260d69692 --- /dev/null +++ b/x-pack/legacy/plugins/ml/public/application/license/expired_warning.tsx @@ -0,0 +1,26 @@ +/* + * 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 { i18n } from '@kbn/i18n'; +import { EuiCallOut } from '@elastic/eui'; +import { toMountPoint } from '../../../../../../../src/plugins/kibana_react/public'; +import { getOverlays } from '../util/dependency_cache'; + +let expiredLicenseBannerId: string; + +export function showExpiredLicenseWarning() { + if (expiredLicenseBannerId === undefined) { + const message = i18n.translate('xpack.ml.checkLicense.licenseHasExpiredMessage', { + defaultMessage: 'Your Machine Learning license has expired.', + }); + // Only show the banner once with no way to dismiss it + const overlays = getOverlays(); + expiredLicenseBannerId = overlays.banners.add( + toMountPoint(<EuiCallOut iconType="iInCircle" color="warning" title={message} />) + ); + } +} diff --git a/x-pack/legacy/plugins/ml/public/application/license/index.ts b/x-pack/legacy/plugins/ml/public/application/license/index.ts new file mode 100644 index 00000000000000..0b6866d52d070b --- /dev/null +++ b/x-pack/legacy/plugins/ml/public/application/license/index.ts @@ -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 { + checkBasicLicense, + checkFullLicense, + hasLicenseExpired, + isFullLicense, + setLicenseCache, +} from './check_license'; diff --git a/x-pack/legacy/plugins/ml/public/application/license/ml_client_license.ts b/x-pack/legacy/plugins/ml/public/application/license/ml_client_license.ts new file mode 100644 index 00000000000000..13809e15135e80 --- /dev/null +++ b/x-pack/legacy/plugins/ml/public/application/license/ml_client_license.ts @@ -0,0 +1,51 @@ +/* + * 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 { MlLicense } from '../../../common/license'; +import { showExpiredLicenseWarning } from './expired_warning'; + +export class MlClientLicense extends MlLicense { + fullLicenseResolver() { + if (this.isMlEnabled() === false || this.isMinimumLicense() === false) { + // ML is not enabled or the license isn't at least basic + return redirectToKibana(); + } + + if (this.isFullLicense() === false) { + // ML is enabled, but only with a basic or gold license + return redirectToBasic(); + } + + // ML is enabled + if (this.hasLicenseExpired()) { + showExpiredLicenseWarning(); + } + return Promise.resolve(); + } + + basicLicenseResolver() { + if (this.isMlEnabled() === false || this.isMinimumLicense() === false) { + // ML is not enabled or the license isn't at least basic + return redirectToKibana(); + } + + // ML is enabled + if (this.hasLicenseExpired()) { + showExpiredLicenseWarning(); + } + return Promise.resolve(); + } +} + +function redirectToKibana() { + window.location.href = '/'; + return Promise.reject(); +} + +function redirectToBasic() { + window.location.href = '#/datavisualizer'; + return Promise.reject(); +} diff --git a/x-pack/legacy/plugins/ml/public/application/management/index.ts b/x-pack/legacy/plugins/ml/public/application/management/index.ts index a05de8b0d08802..16bb3ddfd1c9b4 100644 --- a/x-pack/legacy/plugins/ml/public/application/management/index.ts +++ b/x-pack/legacy/plugins/ml/public/application/management/index.ts @@ -10,21 +10,36 @@ * you may not use this file except in compliance with the Elastic License. */ +import { npSetup } from 'ui/new_platform'; import { management } from 'ui/management'; import { i18n } from '@kbn/i18n'; import chrome from 'ui/chrome'; import { metadata } from 'ui/metadata'; -// @ts-ignore No declaration file for module -import { xpackInfo } from '../../../../xpack_main/public/services/xpack_info'; import { JOBS_LIST_PATH } from './management_urls'; -import { LICENSE_TYPE } from '../../../common/constants/license'; import { setDependencyCache } from '../util/dependency_cache'; import './jobs_list'; +import { + LicensingPluginSetup, + LICENSE_CHECK_STATE, +} from '../../../../../../plugins/licensing/public'; +import { PLUGIN_ID } from '../../../common/constants/app'; +import { MINIMUM_FULL_LICENSE } from '../../../common/license'; -if ( - xpackInfo.get('features.ml.showLinks', false) === true && - xpackInfo.get('features.ml.licenseType') === LICENSE_TYPE.FULL -) { +type PluginsSetupExtended = typeof npSetup.plugins & { + // adds licensing which isn't in the PluginsSetup interface, but does exist + licensing: LicensingPluginSetup; +}; + +const plugins = npSetup.plugins as PluginsSetupExtended; +const licencingSubscription = plugins.licensing.license$.subscribe(license => { + if (license.check(PLUGIN_ID, MINIMUM_FULL_LICENSE).state === LICENSE_CHECK_STATE.Valid) { + initManagementSection(); + // unsubscribe, we only want to register the plugin once. + licencingSubscription.unsubscribe(); + } +}); + +function initManagementSection() { const legacyBasePath = { prepend: chrome.addBasePath, get: chrome.getBasePath, diff --git a/x-pack/legacy/plugins/ml/public/application/privilege/check_privilege.ts b/x-pack/legacy/plugins/ml/public/application/privilege/check_privilege.ts index 6cc06231a08d04..ec9695a2ce6683 100644 --- a/x-pack/legacy/plugins/ml/public/application/privilege/check_privilege.ts +++ b/x-pack/legacy/plugins/ml/public/application/privilege/check_privilege.ts @@ -6,7 +6,7 @@ import { i18n } from '@kbn/i18n'; -import { hasLicenseExpired } from '../license/check_license'; +import { hasLicenseExpired } from '../license'; import { Privileges, getDefaultPrivileges } from '../../../common/types/privileges'; import { getPrivileges, getManageMlPrivileges } from './get_privileges'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/resolvers.ts b/x-pack/legacy/plugins/ml/public/application/routing/resolvers.ts index 5fc1ea533e87f9..acaf3f3acd0c80 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/resolvers.ts +++ b/x-pack/legacy/plugins/ml/public/application/routing/resolvers.ts @@ -5,7 +5,7 @@ */ import { loadIndexPatterns, loadSavedSearches } from '../util/index_utils'; -import { checkFullLicense } from '../license/check_license'; +import { checkFullLicense } from '../license'; import { checkGetJobsPrivilege } from '../privilege/check_privilege'; import { getMlNodeCount } from '../ml_nodes_check/check_ml_nodes'; import { loadMlServerInfo } from '../services/ml_server_info'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/datavisualizer.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/datavisualizer.tsx index e89834018f5e6a..d257a9c080c355 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/datavisualizer.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/datavisualizer.tsx @@ -15,7 +15,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { DatavisualizerSelector } from '../../../datavisualizer'; -import { checkBasicLicense } from '../../../license/check_license'; +import { checkBasicLicense } from '../../../license'; import { checkFindFileStructurePrivilege } from '../../../privilege/check_privilege'; import { DATA_VISUALIZER_BREADCRUMB, ML_BREADCRUMB } from '../../breadcrumbs'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/file_based.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/file_based.tsx index b4ccccd0776eb4..174b3e3b4b3385 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/file_based.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/file_based.tsx @@ -16,11 +16,10 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { FileDataVisualizerPage } from '../../../datavisualizer/file_based'; -import { checkBasicLicense } from '../../../license/check_license'; +import { checkBasicLicense } from '../../../license'; import { checkFindFileStructurePrivilege } from '../../../privilege/check_privilege'; import { loadIndexPatterns } from '../../../util/index_utils'; -import { getMlNodeCount } from '../../../ml_nodes_check'; import { DATA_VISUALIZER_BREADCRUMB, ML_BREADCRUMB } from '../../breadcrumbs'; const breadcrumbs = [ @@ -45,7 +44,6 @@ const PageWrapper: FC<PageProps> = ({ location, deps }) => { checkBasicLicense, loadIndexPatterns: () => loadIndexPatterns(deps.indexPatterns), checkFindFileStructurePrivilege, - getMlNodeCount, }); return ( <PageLoader context={context}> diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/index_based.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/index_based.tsx index 74ab916cb443fc..a3dbc9f97124c0 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/index_based.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/index_based.tsx @@ -11,7 +11,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { Page } from '../../../datavisualizer/index_based'; -import { checkBasicLicense } from '../../../license/check_license'; +import { checkBasicLicense } from '../../../license'; import { checkGetJobsPrivilege } from '../../../privilege/check_privilege'; import { loadIndexPatterns } from '../../../util/index_utils'; import { checkMlNodesAvailable } from '../../../ml_nodes_check'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/new_job/index_or_search.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/new_job/index_or_search.tsx index ae35d783517d3d..9411b415e4e4d1 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/new_job/index_or_search.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/new_job/index_or_search.tsx @@ -11,7 +11,7 @@ import { useResolver } from '../../use_resolver'; import { basicResolvers } from '../../resolvers'; import { Page, preConfiguredJobRedirect } from '../../../jobs/new_job/pages/index_or_search'; import { ANOMALY_DETECTION_BREADCRUMB, ML_BREADCRUMB } from '../../breadcrumbs'; -import { checkBasicLicense } from '../../../license/check_license'; +import { checkBasicLicense } from '../../../license'; import { loadIndexPatterns } from '../../../util/index_utils'; import { checkGetJobsPrivilege } from '../../../privilege/check_privilege'; import { checkMlNodesAvailable } from '../../../ml_nodes_check'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/overview.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/overview.tsx index b1e00158efb94a..ccb99985cb70ca 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/overview.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/overview.tsx @@ -12,7 +12,7 @@ import { MlRoute, PageLoader, PageProps } from '../router'; import { useResolver } from '../use_resolver'; import { OverviewPage } from '../../overview'; -import { checkFullLicense } from '../../license/check_license'; +import { checkFullLicense } from '../../license'; import { checkGetJobsPrivilege } from '../../privilege/check_privilege'; import { getMlNodeCount } from '../../ml_nodes_check'; import { loadMlServerInfo } from '../../services/ml_server_info'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_list.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_list.tsx index c1bfaa2fe6c1ee..9d5c4e9c0b0a0a 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_list.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_list.tsx @@ -16,7 +16,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license/check_license'; +import { checkFullLicense } from '../../../license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { getMlNodeCount } from '../../../ml_nodes_check/check_ml_nodes'; import { CalendarsList } from '../../../settings/calendars'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_new_edit.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_new_edit.tsx index 7af2e49e3a69e9..bf039e3bd2354b 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_new_edit.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_new_edit.tsx @@ -16,7 +16,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license/check_license'; +import { checkFullLicense } from '../../../license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { checkMlNodesAvailable } from '../../../ml_nodes_check/check_ml_nodes'; import { NewCalendar } from '../../../settings/calendars'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list.tsx index 9c5c06b76247c4..6839ad833cb066 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list.tsx @@ -16,7 +16,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license/check_license'; +import { checkFullLicense } from '../../../license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { getMlNodeCount } from '../../../ml_nodes_check/check_ml_nodes'; import { FilterLists } from '../../../settings/filter_lists'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list_new_edit.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list_new_edit.tsx index 752b889490e58f..7b8bd6c3c81ac3 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list_new_edit.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list_new_edit.tsx @@ -16,7 +16,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license/check_license'; +import { checkFullLicense } from '../../../license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { checkMlNodesAvailable } from '../../../ml_nodes_check/check_ml_nodes'; import { EditFilterList } from '../../../settings/filter_lists'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/settings.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/settings.tsx index 10efb2dcc60c78..10ccc0987fe5d1 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/settings.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/settings.tsx @@ -15,7 +15,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license/check_license'; +import { checkFullLicense } from '../../../license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { getMlNodeCount } from '../../../ml_nodes_check/check_ml_nodes'; import { Settings } from '../../../settings'; diff --git a/x-pack/legacy/plugins/ml/public/application/settings/calendars/edit/new_calendar.test.js b/x-pack/legacy/plugins/ml/public/application/settings/calendars/edit/new_calendar.test.js index 8dc174040f9c86..5f61ccf47e9d72 100644 --- a/x-pack/legacy/plugins/ml/public/application/settings/calendars/edit/new_calendar.test.js +++ b/x-pack/legacy/plugins/ml/public/application/settings/calendars/edit/new_calendar.test.js @@ -10,7 +10,7 @@ jest.mock('../../../components/navigation_menu', () => ({ jest.mock('../../../privilege/check_privilege', () => ({ checkPermission: () => true, })); -jest.mock('../../../license/check_license', () => ({ +jest.mock('../../../license', () => ({ hasLicenseExpired: () => false, isFullLicense: () => false, })); diff --git a/x-pack/legacy/plugins/ml/public/application/settings/calendars/list/calendars_list.test.js b/x-pack/legacy/plugins/ml/public/application/settings/calendars/list/calendars_list.test.js index 677703bceeca75..3ea8e0c39fbb22 100644 --- a/x-pack/legacy/plugins/ml/public/application/settings/calendars/list/calendars_list.test.js +++ b/x-pack/legacy/plugins/ml/public/application/settings/calendars/list/calendars_list.test.js @@ -16,7 +16,7 @@ jest.mock('../../../components/navigation_menu', () => ({ jest.mock('../../../privilege/check_privilege', () => ({ checkPermission: () => true, })); -jest.mock('../../../license/check_license', () => ({ +jest.mock('../../../license', () => ({ hasLicenseExpired: () => false, isFullLicense: () => false, })); diff --git a/x-pack/legacy/plugins/ml/public/application/util/dependency_cache.ts b/x-pack/legacy/plugins/ml/public/application/util/dependency_cache.ts index 6d1dfa96ca03e8..c167d7e7c3d42b 100644 --- a/x-pack/legacy/plugins/ml/public/application/util/dependency_cache.ts +++ b/x-pack/legacy/plugins/ml/public/application/util/dependency_cache.ts @@ -76,6 +76,7 @@ export function setDependencyCache(deps: Partial<DependencyCache>) { cache.XSRF = deps.XSRF || null; cache.application = deps.application || null; cache.http = deps.http || null; + cache.security = deps.security || null; } export function getTimefilter() { diff --git a/x-pack/legacy/plugins/ml/public/legacy.ts b/x-pack/legacy/plugins/ml/public/legacy.ts index 7dfcf6a99c2135..0c6c0bd8dd29e2 100644 --- a/x-pack/legacy/plugins/ml/public/legacy.ts +++ b/x-pack/legacy/plugins/ml/public/legacy.ts @@ -8,14 +8,24 @@ import chrome from 'ui/chrome'; import { npSetup, npStart } from 'ui/new_platform'; import { PluginInitializerContext } from 'src/core/public'; import { SecurityPluginSetup } from '../../../../plugins/security/public'; +import { LicensingPluginSetup } from '../../../../plugins/licensing/public'; import { plugin } from '.'; const pluginInstance = plugin({} as PluginInitializerContext); +type PluginsSetupExtended = typeof npSetup.plugins & { + // adds plugins which aren't in the PluginsSetup interface, but do exist + security: SecurityPluginSetup; + licensing: LicensingPluginSetup; +}; + +const setupDependencies = npSetup.plugins as PluginsSetupExtended; + export const setup = pluginInstance.setup(npSetup.core, { data: npStart.plugins.data, - security: ((npSetup.plugins as unknown) as { security: SecurityPluginSetup }).security, // security isn't in the PluginsSetup interface, but does exist + security: setupDependencies.security, + licensing: setupDependencies.licensing, __LEGACY: { XSRF: chrome.getXsrfToken(), }, diff --git a/x-pack/legacy/plugins/ml/public/plugin.ts b/x-pack/legacy/plugins/ml/public/plugin.ts index 1061bb1b6b62b8..c0369a74c070ac 100644 --- a/x-pack/legacy/plugins/ml/public/plugin.ts +++ b/x-pack/legacy/plugins/ml/public/plugin.ts @@ -8,7 +8,7 @@ import { Plugin, CoreStart, CoreSetup } from 'src/core/public'; import { MlDependencies } from './application/app'; export class MlPlugin implements Plugin<Setup, Start> { - setup(core: CoreSetup, { data, security, __LEGACY }: MlDependencies) { + setup(core: CoreSetup, { data, security, licensing, __LEGACY }: MlDependencies) { core.application.register({ id: 'ml', title: 'Machine learning', @@ -23,6 +23,7 @@ export class MlPlugin implements Plugin<Setup, Start> { data, __LEGACY, security, + licensing, }); }, }); diff --git a/x-pack/plugins/ml/server/lib/check_license/check_license.test.ts b/x-pack/plugins/ml/server/lib/check_license/check_license.test.ts deleted file mode 100644 index 942dbe37226175..00000000000000 --- a/x-pack/plugins/ml/server/lib/check_license/check_license.test.ts +++ /dev/null @@ -1,167 +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 expect from '@kbn/expect'; -import sinon from 'sinon'; -import { set } from 'lodash'; -import { LicenseCheckResult } from '../../types'; -import { checkLicense } from './check_license'; - -describe('check_license', () => { - let mockLicenseInfo: LicenseCheckResult; - beforeEach(() => (mockLicenseInfo = {} as LicenseCheckResult)); - - describe('license information is undefined', () => { - it('should set isAvailable to false', () => { - expect(checkLicense(undefined as any).isAvailable).to.be(false); - }); - - it('should set showLinks to true', () => { - expect(checkLicense(undefined as any).showLinks).to.be(true); - }); - - it('should set enableLinks to false', () => { - expect(checkLicense(undefined as any).enableLinks).to.be(false); - }); - - it('should set a message', () => { - expect(checkLicense(undefined as any).message).to.not.be(undefined); - }); - }); - - describe('license information is not available', () => { - beforeEach(() => { - mockLicenseInfo.isAvailable = false; - }); - - it('should set isAvailable to false', () => { - expect(checkLicense(mockLicenseInfo).isAvailable).to.be(false); - }); - - it('should set showLinks to true', () => { - expect(checkLicense(mockLicenseInfo).showLinks).to.be(true); - }); - - it('should set enableLinks to false', () => { - expect(checkLicense(mockLicenseInfo).enableLinks).to.be(false); - }); - - it('should set a message', () => { - expect(checkLicense(mockLicenseInfo).message).to.not.be(undefined); - }); - }); - - describe('license information is available', () => { - beforeEach(() => { - mockLicenseInfo.isAvailable = true; - mockLicenseInfo.type = 'basic'; - }); - - describe('& ML is disabled in Elasticsearch', () => { - beforeEach(() => { - set( - mockLicenseInfo, - 'feature', - sinon - .stub() - .withArgs('ml') - .returns({ isEnabled: false }) - ); - }); - - it('should set showLinks to false', () => { - expect(checkLicense(mockLicenseInfo).showLinks).to.be(false); - }); - - it('should set isAvailable to false', () => { - expect(checkLicense(mockLicenseInfo).isAvailable).to.be(false); - }); - - it('should set enableLinks to false', () => { - expect(checkLicense(mockLicenseInfo).enableLinks).to.be(false); - }); - - it('should set a message', () => { - expect(checkLicense(mockLicenseInfo).message).to.not.be(undefined); - }); - }); - - describe('& ML is enabled in Elasticsearch', () => { - beforeEach(() => { - mockLicenseInfo.isEnabled = true; - }); - - describe('& license is >= platinum', () => { - beforeEach(() => { - mockLicenseInfo.type = 'platinum'; - }); - describe('& license is active', () => { - beforeEach(() => { - mockLicenseInfo.isActive = true; - }); - - it('should set isAvailable to true', () => { - expect(checkLicense(mockLicenseInfo).isAvailable).to.be(true); - }); - - it('should set showLinks to true', () => { - expect(checkLicense(mockLicenseInfo).showLinks).to.be(true); - }); - - it('should set enableLinks to true', () => { - expect(checkLicense(mockLicenseInfo).enableLinks).to.be(true); - }); - - it('should not set a message', () => { - expect(checkLicense(mockLicenseInfo).message).to.be(undefined); - }); - }); - - describe('& license is expired', () => { - beforeEach(() => { - mockLicenseInfo.isActive = false; - }); - - it('should set isAvailable to true', () => { - expect(checkLicense(mockLicenseInfo).isAvailable).to.be(true); - }); - - it('should set showLinks to true', () => { - expect(checkLicense(mockLicenseInfo).showLinks).to.be(true); - }); - - it('should set enableLinks to true', () => { - expect(checkLicense(mockLicenseInfo).enableLinks).to.be(true); - }); - - it('should set a message', () => { - expect(checkLicense(mockLicenseInfo).message).to.not.be(undefined); - }); - }); - }); - - describe('& license is basic', () => { - beforeEach(() => { - mockLicenseInfo.type = 'basic'; - }); - - describe('& license is active', () => { - beforeEach(() => { - mockLicenseInfo.isActive = true; - }); - - it('should set isAvailable to true', () => { - expect(checkLicense(mockLicenseInfo).isAvailable).to.be(true); - }); - - it('should set showLinks to true', () => { - expect(checkLicense(mockLicenseInfo).showLinks).to.be(true); - }); - }); - }); - }); - }); -}); diff --git a/x-pack/plugins/ml/server/lib/check_license/check_license.ts b/x-pack/plugins/ml/server/lib/check_license/check_license.ts deleted file mode 100644 index 5bf3d590a1912d..00000000000000 --- a/x-pack/plugins/ml/server/lib/check_license/check_license.ts +++ /dev/null @@ -1,82 +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 { i18n } from '@kbn/i18n'; -import { - LICENSE_TYPE, - VALID_FULL_LICENSE_MODES, -} from '../../../../../legacy/plugins/ml/common/constants/license'; -import { LicenseCheckResult } from '../../types'; - -interface Response { - isAvailable: boolean; - showLinks: boolean; - enableLinks: boolean; - licenseType?: LICENSE_TYPE; - hasExpired?: boolean; - message?: string; -} - -export function checkLicense(licenseCheckResult: LicenseCheckResult): Response { - // If, for some reason, we cannot get the license information - // from Elasticsearch, assume worst case and disable the Machine Learning UI - if (licenseCheckResult === undefined || !licenseCheckResult.isAvailable) { - return { - isAvailable: false, - showLinks: true, - enableLinks: false, - message: i18n.translate( - 'xpack.ml.checkLicense.licenseInformationNotAvailableThisTimeMessage', - { - defaultMessage: - 'You cannot use Machine Learning because license information is not available at this time.', - } - ), - }; - } - - const featureEnabled = licenseCheckResult.isEnabled; - if (!featureEnabled) { - return { - isAvailable: false, - showLinks: false, - enableLinks: false, - message: i18n.translate('xpack.ml.checkLicense.mlIsUnavailableMessage', { - defaultMessage: 'Machine Learning is unavailable', - }), - }; - } - - const isLicenseModeValid = - licenseCheckResult.type && VALID_FULL_LICENSE_MODES.includes(licenseCheckResult.type); - const licenseType = isLicenseModeValid === true ? LICENSE_TYPE.FULL : LICENSE_TYPE.BASIC; - const isLicenseActive = licenseCheckResult.isActive; - const licenseTypeName = licenseCheckResult.type; - - // Platinum or trial license is valid but not active, i.e. expired - if (licenseType === LICENSE_TYPE.FULL && isLicenseActive === false) { - return { - isAvailable: true, - showLinks: true, - enableLinks: true, - hasExpired: true, - licenseType, - message: i18n.translate('xpack.ml.checkLicense.licenseHasExpiredMessage', { - defaultMessage: 'Your {licenseTypeName} Machine Learning license has expired.', - values: { licenseTypeName }, - }), - }; - } - - // License is valid and active - return { - isAvailable: true, - showLinks: true, - enableLinks: true, - licenseType, - hasExpired: false, - }; -} diff --git a/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.test.ts b/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.test.ts index 0690aa53576a5a..4dd9100e1b67a1 100644 --- a/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.test.ts +++ b/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.test.ts @@ -7,30 +7,27 @@ import { callWithRequestProvider } from './__mocks__/call_with_request'; import { privilegesProvider } from './check_privileges'; import { mlPrivileges } from './privileges'; +import { MlLicense } from '../../../../../legacy/plugins/ml/common/license'; -const licenseCheckResultWithSecurity = { - isAvailable: true, - isEnabled: true, - isSecurityDisabled: false, - type: 'platinum', - isActive: true, -}; +const mlLicenseWithSecurity = { + isSecurityEnabled: () => true, + isFullLicense: () => true, +} as MlLicense; -const licenseCheckResultWithOutSecurity = { - ...licenseCheckResultWithSecurity, - isSecurityDisabled: true, -}; +const mlLicenseWithOutSecurity = { + isSecurityEnabled: () => false, + isFullLicense: () => true, +} as MlLicense; -const licenseCheckResultWithOutSecurityBasicLicense = { - ...licenseCheckResultWithSecurity, - isSecurityDisabled: true, - type: 'basic', -}; +const mlLicenseWithOutSecurityBasicLicense = { + isSecurityEnabled: () => false, + isFullLicense: () => false, +} as MlLicense; -const licenseCheckResultWithSecurityBasicLicense = { - ...licenseCheckResultWithSecurity, - type: 'basic', -}; +const mlLicenseWithSecurityBasicLicense = { + isSecurityEnabled: () => true, + isFullLicense: () => false, +} as MlLicense; const mlIsEnabled = async () => true; const mlIsNotEnabled = async () => false; @@ -47,7 +44,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurity, + mlLicenseWithSecurity, mlIsEnabled ); const { capabilities } = await getPrivileges(); @@ -62,7 +59,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurity, + mlLicenseWithSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -97,7 +94,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('fullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurity, + mlLicenseWithSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -132,7 +129,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('upgradeWithFullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurity, + mlLicenseWithSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -167,7 +164,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('upgradeWithPartialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurity, + mlLicenseWithSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -202,7 +199,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurityBasicLicense, + mlLicenseWithSecurityBasicLicense, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -237,7 +234,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('fullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurityBasicLicense, + mlLicenseWithSecurityBasicLicense, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -272,7 +269,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('fullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurity, + mlLicenseWithSecurity, mlIsNotEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -309,7 +306,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithOutSecurity, + mlLicenseWithOutSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -344,7 +341,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('upgradeWithFullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithOutSecurity, + mlLicenseWithOutSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -379,7 +376,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('upgradeWithPartialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithOutSecurity, + mlLicenseWithOutSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -414,7 +411,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithOutSecurityBasicLicense, + mlLicenseWithOutSecurityBasicLicense, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -449,7 +446,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('fullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithOutSecurityBasicLicense, + mlLicenseWithOutSecurityBasicLicense, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -484,7 +481,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithOutSecurity, + mlLicenseWithOutSecurity, mlIsNotEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); diff --git a/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.ts b/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.ts index a427780d13344a..f26040385b9f50 100644 --- a/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.ts +++ b/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.ts @@ -10,9 +10,7 @@ import { getDefaultPrivileges, } from '../../../../../legacy/plugins/ml/common/types/privileges'; import { upgradeCheckProvider } from './upgrade'; -import { checkLicense } from '../check_license'; -import { LICENSE_TYPE } from '../../../../../legacy/plugins/ml/common/constants/license'; -import { LicenseCheckResult } from '../../types'; +import { MlLicense } from '../../../../../legacy/plugins/ml/common/license'; import { mlPrivileges } from './privileges'; @@ -27,7 +25,7 @@ interface Response { export function privilegesProvider( callAsCurrentUser: IScopedClusterClient['callAsCurrentUser'], - licenseCheckResult: LicenseCheckResult, + mlLicense: MlLicense, isMlEnabledInSpace: () => Promise<boolean>, ignoreSpaces: boolean = false ) { @@ -37,9 +35,9 @@ export function privilegesProvider( const privileges = getDefaultPrivileges(); const upgradeInProgress = await isUpgradeInProgress(); - const securityDisabled = licenseCheckResult.isSecurityDisabled; - const license = checkLicense(licenseCheckResult); - const isPlatinumOrTrialLicense = license.licenseType === LICENSE_TYPE.FULL; + const isSecurityEnabled = mlLicense.isSecurityEnabled(); + + const isPlatinumOrTrialLicense = mlLicense.isFullLicense(); const mlFeatureEnabledInSpace = await isMlEnabledInSpace(); const setGettingPrivileges = isPlatinumOrTrialLicense @@ -61,7 +59,7 @@ export function privilegesProvider( }; } - if (securityDisabled === true) { + if (isSecurityEnabled === false) { if (upgradeInProgress === true) { // if security is disabled and an upgrade in is progress, // force all "getting" privileges to be true diff --git a/x-pack/plugins/ml/server/lib/check_license/index.ts b/x-pack/plugins/ml/server/lib/license/index.ts similarity index 81% rename from x-pack/plugins/ml/server/lib/check_license/index.ts rename to x-pack/plugins/ml/server/lib/license/index.ts index f2c070fd44b6e6..9c4271b65b00df 100644 --- a/x-pack/plugins/ml/server/lib/check_license/index.ts +++ b/x-pack/plugins/ml/server/lib/license/index.ts @@ -4,4 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -export { checkLicense } from './check_license'; +export { MlServerLicense } from './ml_server_license'; diff --git a/x-pack/plugins/ml/server/lib/license/ml_server_license.ts b/x-pack/plugins/ml/server/lib/license/ml_server_license.ts new file mode 100644 index 00000000000000..7602ab4919e818 --- /dev/null +++ b/x-pack/plugins/ml/server/lib/license/ml_server_license.ts @@ -0,0 +1,35 @@ +/* + * 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 { + KibanaRequest, + KibanaResponseFactory, + RequestHandler, + RequestHandlerContext, +} from 'src/core/server'; + +import { MlLicense } from '../../../../../legacy/plugins/ml/common/license'; + +export class MlServerLicense extends MlLicense { + public fullLicenseAPIGuard(handler: RequestHandler<any, any, any>) { + return guard(() => this.isFullLicense(), handler); + } + public basicLicenseAPIGuard(handler: RequestHandler<any, any, any>) { + return guard(() => this.isMinimumLicense(), handler); + } +} + +function guard(check: () => boolean, handler: RequestHandler<any, any, any>) { + return ( + context: RequestHandlerContext, + request: KibanaRequest, + response: KibanaResponseFactory + ) => { + if (check() === false) { + return response.forbidden(); + } + return handler(context, request, response); + }; +} diff --git a/x-pack/plugins/ml/server/lib/sample_data_sets/index.ts b/x-pack/plugins/ml/server/lib/sample_data_sets/index.ts index c922c9eb7c0291..50553cfa7b8893 100644 --- a/x-pack/plugins/ml/server/lib/sample_data_sets/index.ts +++ b/x-pack/plugins/ml/server/lib/sample_data_sets/index.ts @@ -4,4 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -export { addLinksToSampleDatasets } from './sample_data_sets'; +export { initSampleDataSets } from './sample_data_sets'; diff --git a/x-pack/plugins/ml/server/lib/sample_data_sets/sample_data_sets.ts b/x-pack/plugins/ml/server/lib/sample_data_sets/sample_data_sets.ts index 2082538adfed1e..3fd99051a24841 100644 --- a/x-pack/plugins/ml/server/lib/sample_data_sets/sample_data_sets.ts +++ b/x-pack/plugins/ml/server/lib/sample_data_sets/sample_data_sets.ts @@ -5,23 +5,32 @@ */ import { i18n } from '@kbn/i18n'; +import { MlLicense } from '../../../../../legacy/plugins/ml/common/license'; +import { PluginsSetup } from '../../types'; -export function addLinksToSampleDatasets(server: any) { - const sampleDataLinkLabel = i18n.translate('xpack.ml.sampleDataLinkLabel', { - defaultMessage: 'ML jobs', - }); +export function initSampleDataSets(mlLicense: MlLicense, plugins: PluginsSetup) { + if (mlLicense.isMlEnabled() && mlLicense.isFullLicense()) { + const sampleDataLinkLabel = i18n.translate('xpack.ml.sampleDataLinkLabel', { + defaultMessage: 'ML jobs', + }); + const { addAppLinksToSampleDataset } = plugins.home.sampleData; - server.addAppLinksToSampleDataset('ecommerce', { - path: - '/app/ml#/modules/check_view_or_create?id=sample_data_ecommerce&index=ff959d40-b880-11e8-a6d9-e546fe2bba5f', - label: sampleDataLinkLabel, - icon: 'machineLearningApp', - }); + addAppLinksToSampleDataset('ecommerce', [ + { + path: + '/app/ml#/modules/check_view_or_create?id=sample_data_ecommerce&index=ff959d40-b880-11e8-a6d9-e546fe2bba5f', + label: sampleDataLinkLabel, + icon: 'machineLearningApp', + }, + ]); - server.addAppLinksToSampleDataset('logs', { - path: - '/app/ml#/modules/check_view_or_create?id=sample_data_weblogs&index=90943e30-9a47-11e8-b64d-95841ca0b247', - label: sampleDataLinkLabel, - icon: 'machineLearningApp', - }); + addAppLinksToSampleDataset('logs', [ + { + path: + '/app/ml#/modules/check_view_or_create?id=sample_data_weblogs&index=90943e30-9a47-11e8-b64d-95841ca0b247', + label: sampleDataLinkLabel, + icon: 'machineLearningApp', + }, + ]); + } } diff --git a/x-pack/plugins/ml/server/plugin.ts b/x-pack/plugins/ml/server/plugin.ts index b5adf1fedec791..a3f57337384329 100644 --- a/x-pack/plugins/ml/server/plugin.ts +++ b/x-pack/plugins/ml/server/plugin.ts @@ -6,15 +6,14 @@ import { i18n } from '@kbn/i18n'; import { CoreSetup, IScopedClusterClient, Logger, PluginInitializerContext } from 'src/core/server'; -import { LicenseCheckResult, PluginsSetup, RouteInitialization } from './types'; +import { PluginsSetup, RouteInitialization } from './types'; import { PLUGIN_ID } from '../../../legacy/plugins/ml/common/constants/app'; -import { VALID_FULL_LICENSE_MODES } from '../../../legacy/plugins/ml/common/constants/license'; // @ts-ignore: could not find declaration file for module import { elasticsearchJsPlugin } from './client/elasticsearch_ml'; import { makeMlUsageCollector } from './lib/ml_telemetry'; import { initMlServerLog } from './client/log'; -import { addLinksToSampleDatasets } from './lib/sample_data_sets'; +import { initSampleDataSets } from './lib/sample_data_sets'; import { annotationRoutes } from './routes/annotations'; import { calendars } from './routes/calendars'; @@ -33,6 +32,8 @@ import { jobValidationRoutes } from './routes/job_validation'; import { notificationRoutes } from './routes/notification_settings'; import { resultsServiceRoutes } from './routes/results_service'; import { systemRoutes } from './routes/system'; +import { MlLicense } from '../../../legacy/plugins/ml/common/license'; +import { MlServerLicense } from './lib/license'; declare module 'kibana/server' { interface RequestHandlerContext { @@ -43,25 +44,17 @@ declare module 'kibana/server' { } export class MlServerPlugin { - private readonly pluginId: string = PLUGIN_ID; private log: Logger; private version: string; - - private licenseCheckResults: LicenseCheckResult = { - isAvailable: false, - isActive: false, - isEnabled: false, - isSecurityDisabled: false, - }; + private mlLicense: MlServerLicense; constructor(ctx: PluginInitializerContext) { this.log = ctx.logger.get(); this.version = ctx.env.packageInfo.branch; + this.mlLicense = new MlServerLicense(); } public setup(coreSetup: CoreSetup, plugins: PluginsSetup) { - let sampleLinksInitialized = false; - plugins.features.registerFeature({ id: PLUGIN_ID, name: i18n.translate('xpack.ml.featureRegistry.mlFeatureName', { @@ -87,6 +80,10 @@ export class MlServerPlugin { }, }); + this.mlLicense.setup(plugins.licensing.license$, [ + (mlLicense: MlLicense) => initSampleDataSets(mlLicense, plugins), + ]); + // Can access via router's handler function 'context' parameter - context.ml.mlClient const mlClient = coreSetup.elasticsearch.createClient(PLUGIN_ID, { plugins: [elasticsearchJsPlugin], @@ -100,7 +97,7 @@ export class MlServerPlugin { const routeInit: RouteInitialization = { router: coreSetup.http.createRouter(), - getLicenseCheckResults: () => this.licenseCheckResults, + mlLicense: this.mlLicense, }; annotationRoutes(routeInit, plugins.security); @@ -127,42 +124,11 @@ export class MlServerPlugin { coreSetup.getStartServices().then(([core]) => { makeMlUsageCollector(plugins.usageCollection, core.savedObjects); }); - - plugins.licensing.license$.subscribe(async license => { - const { isEnabled: securityIsEnabled } = license.getFeature('security'); - // @ts-ignore isAvailable is not read - const { isAvailable, isEnabled } = license.getFeature(this.pluginId); - - this.licenseCheckResults = { - isActive: license.isActive, - // This `isAvailable` check for the ml plugin returns false for a basic license - // ML should be available on basic with reduced functionality (only file data visualizer) - // TODO: This will need to be updated in the second step of this cutover to NP. - isAvailable: isEnabled, - isEnabled, - isSecurityDisabled: securityIsEnabled === false, - type: license.type, - }; - - if (sampleLinksInitialized === false) { - sampleLinksInitialized = true; - // Add links to the Kibana sample data sets if ml is enabled - // and license is trial or platinum. - if (isEnabled === true && plugins.home) { - if ( - this.licenseCheckResults.type && - VALID_FULL_LICENSE_MODES.includes(this.licenseCheckResults.type) - ) { - addLinksToSampleDatasets({ - addAppLinksToSampleDataset: plugins.home.sampleData.addAppLinksToSampleDataset, - }); - } - } - } - }); } public start() {} - public stop() {} + public stop() { + this.mlLicense.unsubscribe(); + } } diff --git a/x-pack/plugins/ml/server/routes/annotations.ts b/x-pack/plugins/ml/server/routes/annotations.ts index bcc0238c366a3d..16483bf8b887ee 100644 --- a/x-pack/plugins/ml/server/routes/annotations.ts +++ b/x-pack/plugins/ml/server/routes/annotations.ts @@ -13,7 +13,6 @@ import { SecurityPluginSetup } from '../../../security/server'; import { isAnnotationsFeatureAvailable } from '../lib/check_annotations'; import { annotationServiceProvider } from '../models/annotation_service'; import { wrapError } from '../client/error_wrapper'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; import { deleteAnnotationSchema, @@ -36,7 +35,7 @@ function getAnnotationsFeatureUnavailableErrorMessage() { * Routes for annotations */ export function annotationRoutes( - { router, getLicenseCheckResults }: RouteInitialization, + { router, mlLicense }: RouteInitialization, securityPlugin: SecurityPluginSetup ) { /** @@ -61,7 +60,7 @@ export function annotationRoutes( body: schema.object(getAnnotationsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { getAnnotations } = annotationServiceProvider(context); const resp = await getAnnotations(request.body); @@ -92,7 +91,7 @@ export function annotationRoutes( body: schema.object(indexAnnotationSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const annotationsFeatureAvailable = await isAnnotationsFeatureAvailable( context.ml!.mlClient.callAsCurrentUser @@ -131,7 +130,7 @@ export function annotationRoutes( params: schema.object(deleteAnnotationSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const annotationsFeatureAvailable = await isAnnotationsFeatureAvailable( context.ml!.mlClient.callAsCurrentUser diff --git a/x-pack/plugins/ml/server/routes/anomaly_detectors.ts b/x-pack/plugins/ml/server/routes/anomaly_detectors.ts index 7bf2fb7bc6903d..5e1ca72a7200d4 100644 --- a/x-pack/plugins/ml/server/routes/anomaly_detectors.ts +++ b/x-pack/plugins/ml/server/routes/anomaly_detectors.ts @@ -6,7 +6,6 @@ import { schema } from '@kbn/config-schema'; import { wrapError } from '../client/error_wrapper'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; import { anomalyDetectionJobSchema, @@ -16,7 +15,7 @@ import { /** * Routes for the anomaly detectors */ -export function jobRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function jobRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup AnomalyDetectors * @@ -32,7 +31,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio path: '/api/ml/anomaly_detectors', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.jobs'); return response.ok({ @@ -62,7 +61,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.jobs', { jobId }); @@ -90,7 +89,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio path: '/api/ml/anomaly_detectors/_stats', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.jobStats'); return response.ok({ @@ -120,7 +119,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.jobStats', { jobId }); @@ -152,7 +151,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio body: schema.object({ ...anomalyDetectionJobSchema }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.addJob', { @@ -187,7 +186,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio body: schema.object({ ...anomalyDetectionUpdateJobSchema }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.updateJob', { @@ -221,7 +220,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.openJob', { @@ -254,7 +253,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const options: { jobId: string; force?: boolean } = { jobId: request.params.jobId, @@ -291,7 +290,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const options: { jobId: string; force?: boolean } = { jobId: request.params.jobId, @@ -326,7 +325,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio body: schema.any(), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.validateDetector', { body: request.body, @@ -359,7 +358,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio body: schema.object({ duration: schema.any() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const jobId = request.params.jobId; const duration = request.body.duration; @@ -407,7 +406,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.records', { jobId: request.params.jobId, @@ -456,7 +455,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.buckets', { jobId: request.params.jobId, @@ -499,7 +498,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.overallBuckets', { jobId: request.params.jobId, @@ -537,7 +536,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const options = { jobId: request.params.jobId, diff --git a/x-pack/plugins/ml/server/routes/calendars.ts b/x-pack/plugins/ml/server/routes/calendars.ts index ae494d3578890b..5d1161e928d110 100644 --- a/x-pack/plugins/ml/server/routes/calendars.ts +++ b/x-pack/plugins/ml/server/routes/calendars.ts @@ -6,7 +6,6 @@ import { RequestHandlerContext } from 'src/core/server'; import { schema } from '@kbn/config-schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { calendarSchema } from './schemas/calendars_schema'; @@ -42,13 +41,13 @@ function getCalendarsByIds(context: RequestHandlerContext, calendarIds: string) return cal.getCalendarsByIds(calendarIds); } -export function calendars({ router, getLicenseCheckResults }: RouteInitialization) { +export function calendars({ router, mlLicense }: RouteInitialization) { router.get( { path: '/api/ml/calendars', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getAllCalendars(context); @@ -68,7 +67,7 @@ export function calendars({ router, getLicenseCheckResults }: RouteInitializatio params: schema.object({ calendarIds: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { let returnValue; try { const calendarIds = request.params.calendarIds.split(','); @@ -95,7 +94,7 @@ export function calendars({ router, getLicenseCheckResults }: RouteInitializatio body: schema.object({ ...calendarSchema }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const body = request.body; const resp = await newCalendar(context, body); @@ -117,7 +116,7 @@ export function calendars({ router, getLicenseCheckResults }: RouteInitializatio body: schema.object({ ...calendarSchema }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { calendarId } = request.params; const body = request.body; @@ -139,7 +138,7 @@ export function calendars({ router, getLicenseCheckResults }: RouteInitializatio params: schema.object({ calendarId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { calendarId } = request.params; const resp = await deleteCalendar(context, calendarId); diff --git a/x-pack/plugins/ml/server/routes/data_frame_analytics.ts b/x-pack/plugins/ml/server/routes/data_frame_analytics.ts index 0a93320c05eb5b..7ed1aa02b24ab8 100644 --- a/x-pack/plugins/ml/server/routes/data_frame_analytics.ts +++ b/x-pack/plugins/ml/server/routes/data_frame_analytics.ts @@ -7,7 +7,6 @@ import { schema } from '@kbn/config-schema'; import { wrapError } from '../client/error_wrapper'; import { analyticsAuditMessagesProvider } from '../models/data_frame_analytics/analytics_audit_messages'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; import { dataAnalyticsJobConfigSchema, @@ -18,7 +17,7 @@ import { /** * Routes for the data frame analytics */ -export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup DataFrameAnalytics * @@ -36,7 +35,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou params: schema.object({ analyticsId: schema.maybe(schema.string()) }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.getDataFrameAnalytics'); return response.ok({ @@ -64,7 +63,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou params: schema.object({ analyticsId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.getDataFrameAnalytics', { @@ -91,7 +90,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou path: '/api/ml/data_frame/analytics/_stats', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser( 'ml.getDataFrameAnalyticsStats' @@ -121,7 +120,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou params: schema.object({ analyticsId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser( @@ -159,7 +158,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou body: schema.object(dataAnalyticsJobConfigSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser( @@ -192,7 +191,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou body: schema.object({ ...dataAnalyticsEvaluateSchema }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser( 'ml.evaluateDataFrameAnalytics', @@ -232,7 +231,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou body: schema.object({ ...dataAnalyticsExplainSchema }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser( 'ml.explainDataFrameAnalytics', @@ -267,7 +266,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser( @@ -303,7 +302,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.startDataFrameAnalytics', { @@ -337,7 +336,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const options: { analyticsId: string; force?: boolean | undefined } = { analyticsId: request.params.analyticsId, @@ -377,7 +376,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou params: schema.object({ analyticsId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { analyticsId } = request.params; const { getAnalyticsAuditMessages } = analyticsAuditMessagesProvider( diff --git a/x-pack/plugins/ml/server/routes/data_visualizer.ts b/x-pack/plugins/ml/server/routes/data_visualizer.ts index e4d068784def1b..b37c80b815e1a6 100644 --- a/x-pack/plugins/ml/server/routes/data_visualizer.ts +++ b/x-pack/plugins/ml/server/routes/data_visualizer.ts @@ -12,7 +12,6 @@ import { dataVisualizerFieldStatsSchema, dataVisualizerOverallStatsSchema, } from './schemas/data_visualizer_schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; function getOverallStats( @@ -68,7 +67,7 @@ function getStatsForFields( /** * Routes for the index data visualizer. */ -export function dataVisualizerRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function dataVisualizerRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup DataVisualizer * @@ -83,7 +82,7 @@ export function dataVisualizerRoutes({ router, getLicenseCheckResults }: RouteIn path: '/api/ml/data_visualizer/get_field_stats/{indexPatternTitle}', validate: dataVisualizerFieldStatsSchema, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const { params: { indexPatternTitle }, @@ -135,7 +134,7 @@ export function dataVisualizerRoutes({ router, getLicenseCheckResults }: RouteIn path: '/api/ml/data_visualizer/get_overall_stats/{indexPatternTitle}', validate: dataVisualizerOverallStatsSchema, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const { params: { indexPatternTitle }, diff --git a/x-pack/plugins/ml/server/routes/datafeeds.ts b/x-pack/plugins/ml/server/routes/datafeeds.ts index e3bce4c1328e4e..c1ee839340996a 100644 --- a/x-pack/plugins/ml/server/routes/datafeeds.ts +++ b/x-pack/plugins/ml/server/routes/datafeeds.ts @@ -5,7 +5,6 @@ */ import { schema } from '@kbn/config-schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { startDatafeedSchema, datafeedConfigSchema } from './schemas/datafeeds_schema'; @@ -13,7 +12,7 @@ import { startDatafeedSchema, datafeedConfigSchema } from './schemas/datafeeds_s /** * Routes for datafeed service */ -export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function dataFeedRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup DatafeedService * @@ -26,7 +25,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali path: '/api/ml/datafeeds', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeeds'); @@ -53,7 +52,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali params: schema.object({ datafeedId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeeds', { datafeedId }); @@ -79,7 +78,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali path: '/api/ml/datafeeds/_stats', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeedStats'); @@ -106,7 +105,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali params: schema.object({ datafeedId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeedStats', { @@ -137,7 +136,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali body: datafeedConfigSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.addDatafeed', { @@ -169,7 +168,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali body: datafeedConfigSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.updateDatafeed', { @@ -201,7 +200,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali query: schema.maybe(schema.object({ force: schema.maybe(schema.any()) })), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const options: { datafeedId: string; force?: boolean } = { datafeedId: request.params.jobId, @@ -237,7 +236,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali body: startDatafeedSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const { start, end } = request.body; @@ -271,7 +270,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali params: schema.object({ datafeedId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; @@ -302,7 +301,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali params: schema.object({ datafeedId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeedPreview', { diff --git a/x-pack/plugins/ml/server/routes/fields_service.ts b/x-pack/plugins/ml/server/routes/fields_service.ts index bc092190c2c620..f4d4e5759a1054 100644 --- a/x-pack/plugins/ml/server/routes/fields_service.ts +++ b/x-pack/plugins/ml/server/routes/fields_service.ts @@ -5,7 +5,6 @@ */ import { RequestHandlerContext } from 'src/core/server'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { @@ -29,7 +28,7 @@ function getTimeFieldRange(context: RequestHandlerContext, payload: any) { /** * Routes for fields service */ -export function fieldsService({ router, getLicenseCheckResults }: RouteInitialization) { +export function fieldsService({ router, mlLicense }: RouteInitialization) { /** * @apiGroup FieldsService * @@ -44,7 +43,8 @@ export function fieldsService({ router, getLicenseCheckResults }: RouteInitializ body: getCardinalityOfFieldsSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getCardinalityOfFields(context, request.body); @@ -71,7 +71,7 @@ export function fieldsService({ router, getLicenseCheckResults }: RouteInitializ body: getTimeFieldRangeSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const resp = await getTimeFieldRange(context, request.body); diff --git a/x-pack/plugins/ml/server/routes/file_data_visualizer.ts b/x-pack/plugins/ml/server/routes/file_data_visualizer.ts index 1d724a8843350d..69ec79704deee6 100644 --- a/x-pack/plugins/ml/server/routes/file_data_visualizer.ts +++ b/x-pack/plugins/ml/server/routes/file_data_visualizer.ts @@ -18,7 +18,6 @@ import { Mappings, } from '../models/file_data_visualizer'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; import { incrementFileDataVisualizerIndexCreationCount } from '../lib/ml_telemetry'; @@ -43,7 +42,7 @@ function importData( /** * Routes for the file data visualizer. */ -export function fileDataVisualizerRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function fileDataVisualizerRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup FileDataVisualizer * @@ -82,7 +81,7 @@ export function fileDataVisualizerRoutes({ router, getLicenseCheckResults }: Rou }, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const result = await analyzeFiles(context, request.body, request.query); return response.ok({ body: result }); @@ -124,7 +123,7 @@ export function fileDataVisualizerRoutes({ router, getLicenseCheckResults }: Rou }, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const { id } = request.query; const { index, data, settings, mappings, ingestPipeline } = request.body; diff --git a/x-pack/plugins/ml/server/routes/filters.ts b/x-pack/plugins/ml/server/routes/filters.ts index d5530668b26062..1f8891c247c67c 100644 --- a/x-pack/plugins/ml/server/routes/filters.ts +++ b/x-pack/plugins/ml/server/routes/filters.ts @@ -6,7 +6,6 @@ import { RequestHandlerContext } from 'src/core/server'; import { schema } from '@kbn/config-schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { createFilterSchema, updateFilterSchema } from './schemas/filters_schema'; @@ -44,7 +43,7 @@ function deleteFilter(context: RequestHandlerContext, filterId: string) { return mgr.deleteFilter(filterId); } -export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function filtersRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup Filters * @@ -60,7 +59,7 @@ export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitializ path: '/api/ml/filters', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getAllFilters(context); @@ -90,7 +89,7 @@ export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitializ params: schema.object({ filterId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getFilter(context, request.params.filterId); return response.ok({ @@ -119,7 +118,7 @@ export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitializ body: schema.object(createFilterSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const body = request.body; const resp = await newFilter(context, body); @@ -151,7 +150,7 @@ export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitializ body: schema.object(updateFilterSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { filterId } = request.params; const body = request.body; @@ -182,7 +181,7 @@ export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitializ params: schema.object({ filterId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { filterId } = request.params; const resp = await deleteFilter(context, filterId); @@ -212,7 +211,7 @@ export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitializ path: '/api/ml/filters/_stats', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getAllFilterStats(context); diff --git a/x-pack/plugins/ml/server/routes/indices.ts b/x-pack/plugins/ml/server/routes/indices.ts index e01a7a0cbad287..fe66cc8b01396d 100644 --- a/x-pack/plugins/ml/server/routes/indices.ts +++ b/x-pack/plugins/ml/server/routes/indices.ts @@ -6,13 +6,12 @@ import { schema } from '@kbn/config-schema'; import { wrapError } from '../client/error_wrapper'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; /** * Indices routes. */ -export function indicesRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function indicesRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup Indices * @@ -30,7 +29,7 @@ export function indicesRoutes({ router, getLicenseCheckResults }: RouteInitializ }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { body: { index, fields: requestFields }, diff --git a/x-pack/plugins/ml/server/routes/job_audit_messages.ts b/x-pack/plugins/ml/server/routes/job_audit_messages.ts index 38df28e17ec0d6..5c6d8023cc172d 100644 --- a/x-pack/plugins/ml/server/routes/job_audit_messages.ts +++ b/x-pack/plugins/ml/server/routes/job_audit_messages.ts @@ -5,7 +5,6 @@ */ import { schema } from '@kbn/config-schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { jobAuditMessagesProvider } from '../models/job_audit_messages'; @@ -13,7 +12,7 @@ import { jobAuditMessagesProvider } from '../models/job_audit_messages'; /** * Routes for job audit message routes */ -export function jobAuditMessagesRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function jobAuditMessagesRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup JobAuditMessages * @@ -29,7 +28,7 @@ export function jobAuditMessagesRoutes({ router, getLicenseCheckResults }: Route query: schema.maybe(schema.object({ from: schema.maybe(schema.any()) })), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { getJobAuditMessages } = jobAuditMessagesProvider( context.ml!.mlClient.callAsCurrentUser @@ -62,7 +61,7 @@ export function jobAuditMessagesRoutes({ router, getLicenseCheckResults }: Route query: schema.maybe(schema.object({ from: schema.maybe(schema.any()) })), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { getJobAuditMessages } = jobAuditMessagesProvider( context.ml!.mlClient.callAsCurrentUser diff --git a/x-pack/plugins/ml/server/routes/job_service.ts b/x-pack/plugins/ml/server/routes/job_service.ts index e15888088d3a13..9ad2f80a1e66b4 100644 --- a/x-pack/plugins/ml/server/routes/job_service.ts +++ b/x-pack/plugins/ml/server/routes/job_service.ts @@ -7,7 +7,6 @@ import Boom from 'boom'; import { schema } from '@kbn/config-schema'; import { IScopedClusterClient } from 'src/core/server'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { @@ -28,12 +27,11 @@ import { categorizationExamplesProvider } from '../models/job_service/new_job'; /** * Routes for job service */ -export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { async function hasPermissionToCreateJobs( callAsCurrentUser: IScopedClusterClient['callAsCurrentUser'] ) { - const { isSecurityDisabled } = getLicenseCheckResults(); - if (isSecurityDisabled === true) { + if (mlLicense.isSecurityEnabled() === false) { return true; } @@ -63,7 +61,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(forceStartDatafeedSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { forceStartDatafeeds } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { datafeedIds, start, end } = request.body; @@ -92,7 +90,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(datafeedIdsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { stopDatafeeds } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { datafeedIds } = request.body; @@ -121,7 +119,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(jobIdsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { deleteJobs } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -150,7 +148,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(jobIdsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { closeJobs } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -179,7 +177,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(jobIdsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobsSummary } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -208,7 +206,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(jobsWithTimerangeSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobsWithTimerange } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { dateFormatTz } = request.body; @@ -237,7 +235,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(jobIdsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { createFullJobsList } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -264,7 +262,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia path: '/api/ml/jobs/groups', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { getAllGroups } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const resp = await getAllGroups(); @@ -292,7 +290,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(updateGroupsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { updateGroups } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobs } = request.body; @@ -319,7 +317,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia path: '/api/ml/jobs/deleting_jobs_tasks', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { deletingJobTasks } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const resp = await deletingJobTasks(); @@ -347,7 +345,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(jobIdsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobsExist } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -377,7 +375,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia query: schema.maybe(schema.object({ rollup: schema.maybe(schema.string()) })), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { indexPattern } = request.params; const isRollup = request.query.rollup === 'true'; @@ -408,7 +406,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(chartSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { indexPatternTitle, @@ -461,7 +459,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(chartSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { indexPatternTitle, @@ -509,7 +507,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia path: '/api/ml/jobs/all_jobs_and_group_ids', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { getAllJobAndGroupIds } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const resp = await getAllJobAndGroupIds(); @@ -537,7 +535,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(lookBackProgressSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { getLookBackProgress } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobId, start, end } = request.body; @@ -566,7 +564,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(categorizationFieldExamplesSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { // due to the use of the _analyze endpoint which is called by the kibana user, // basic job creation privileges are required to use this endpoint @@ -625,7 +623,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(topCategoriesSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { topCategories } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobId, count } = request.body; diff --git a/x-pack/plugins/ml/server/routes/job_validation.ts b/x-pack/plugins/ml/server/routes/job_validation.ts index ae2e6885ba0f3b..7d5a7a22859779 100644 --- a/x-pack/plugins/ml/server/routes/job_validation.ts +++ b/x-pack/plugins/ml/server/routes/job_validation.ts @@ -7,7 +7,6 @@ import Boom from 'boom'; import { RequestHandlerContext } from 'src/core/server'; import { schema, TypeOf } from '@kbn/config-schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { @@ -25,10 +24,7 @@ type CalculateModelMemoryLimitPayload = TypeOf<typeof modelMemoryLimitSchema>; /** * Routes for job validation */ -export function jobValidationRoutes( - { getLicenseCheckResults, router }: RouteInitialization, - version: string -) { +export function jobValidationRoutes({ router, mlLicense }: RouteInitialization, version: string) { function calculateModelMemoryLimit( context: RequestHandlerContext, payload: CalculateModelMemoryLimitPayload @@ -70,13 +66,13 @@ export function jobValidationRoutes( body: estimateBucketSpanSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { let errorResp; const resp = await estimateBucketSpanFactory( context.ml!.mlClient.callAsCurrentUser, context.core.elasticsearch.adminClient.callAsInternalUser, - getLicenseCheckResults().isSecurityDisabled + mlLicense.isSecurityEnabled() === false )(request.body) // this catch gets triggered when the estimation code runs without error // but isn't able to come up with a bucket span estimation. @@ -117,7 +113,7 @@ export function jobValidationRoutes( body: modelMemoryLimitSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await calculateModelMemoryLimit(context, request.body); @@ -144,7 +140,7 @@ export function jobValidationRoutes( body: schema.object(validateCardinalitySchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await validateCardinality( context.ml!.mlClient.callAsCurrentUser, @@ -174,7 +170,7 @@ export function jobValidationRoutes( body: validateJobSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { // version corresponds to the version used in documentation links. const resp = await validateJob( @@ -182,7 +178,7 @@ export function jobValidationRoutes( request.body, version, context.core.elasticsearch.adminClient.callAsInternalUser, - getLicenseCheckResults().isSecurityDisabled + mlLicense.isSecurityEnabled() === false ); return response.ok({ diff --git a/x-pack/plugins/ml/server/routes/license_check_pre_routing_factory.ts b/x-pack/plugins/ml/server/routes/license_check_pre_routing_factory.ts deleted file mode 100644 index a371af1abf2d13..00000000000000 --- a/x-pack/plugins/ml/server/routes/license_check_pre_routing_factory.ts +++ /dev/null @@ -1,33 +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 { - KibanaRequest, - KibanaResponseFactory, - RequestHandler, - RequestHandlerContext, -} from 'src/core/server'; -import { LicenseCheckResult } from '../types'; - -export const licensePreRoutingFactory = ( - getLicenseCheckResults: () => LicenseCheckResult, - handler: RequestHandler<any, any, any> -): RequestHandler<any, any, any> => { - // License checking and enable/disable logic - return function licensePreRouting( - ctx: RequestHandlerContext, - request: KibanaRequest, - response: KibanaResponseFactory - ) { - const licenseCheckResults = getLicenseCheckResults(); - - if (!licenseCheckResults.isAvailable) { - return response.forbidden(); - } - - return handler(ctx, request, response); - }; -}; diff --git a/x-pack/plugins/ml/server/routes/modules.ts b/x-pack/plugins/ml/server/routes/modules.ts index c9b005d4e43f92..a51718acb74254 100644 --- a/x-pack/plugins/ml/server/routes/modules.ts +++ b/x-pack/plugins/ml/server/routes/modules.ts @@ -9,7 +9,6 @@ import { RequestHandlerContext } from 'kibana/server'; import { DatafeedOverride, JobOverride } from '../../../../legacy/plugins/ml/common/types/modules'; import { wrapError } from '../client/error_wrapper'; import { DataRecognizer } from '../models/data_recognizer'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { getModuleIdParamSchema, setupModuleBodySchema } from './schemas/modules'; import { RouteInitialization } from '../types'; @@ -65,7 +64,7 @@ function dataRecognizerJobsExist(context: RequestHandlerContext, moduleId: strin /** * Recognizer routes. */ -export function dataRecognizer({ router, getLicenseCheckResults }: RouteInitialization) { +export function dataRecognizer({ router, mlLicense }: RouteInitialization) { /** * @apiGroup DataRecognizer * @@ -84,7 +83,7 @@ export function dataRecognizer({ router, getLicenseCheckResults }: RouteInitiali }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { indexPatternTitle } = request.params; const results = await recognize(context, indexPatternTitle); @@ -114,7 +113,7 @@ export function dataRecognizer({ router, getLicenseCheckResults }: RouteInitiali }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { let { moduleId } = request.params; if (moduleId === '') { @@ -150,7 +149,7 @@ export function dataRecognizer({ router, getLicenseCheckResults }: RouteInitiali body: setupModuleBodySchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { moduleId } = request.params; @@ -207,7 +206,7 @@ export function dataRecognizer({ router, getLicenseCheckResults }: RouteInitiali }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { moduleId } = request.params; const result = await dataRecognizerJobsExist(context, moduleId); diff --git a/x-pack/plugins/ml/server/routes/notification_settings.ts b/x-pack/plugins/ml/server/routes/notification_settings.ts index b68d2441333f93..59458b1e486db2 100644 --- a/x-pack/plugins/ml/server/routes/notification_settings.ts +++ b/x-pack/plugins/ml/server/routes/notification_settings.ts @@ -4,14 +4,13 @@ * you may not use this file except in compliance with the Elastic License. */ -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; /** * Routes for notification settings */ -export function notificationRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function notificationRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup NotificationSettings * @@ -24,7 +23,7 @@ export function notificationRoutes({ router, getLicenseCheckResults }: RouteInit path: '/api/ml/notification_settings', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const params = { includeDefaults: true, diff --git a/x-pack/plugins/ml/server/routes/results_service.ts b/x-pack/plugins/ml/server/routes/results_service.ts index 77c998acc9f27a..7a12e5196b9a5d 100644 --- a/x-pack/plugins/ml/server/routes/results_service.ts +++ b/x-pack/plugins/ml/server/routes/results_service.ts @@ -6,7 +6,6 @@ import { RequestHandlerContext } from 'src/core/server'; import { schema } from '@kbn/config-schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { @@ -74,7 +73,7 @@ function getPartitionFieldsValues(context: RequestHandlerContext, payload: any) /** * Routes for results service */ -export function resultsServiceRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function resultsServiceRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup ResultsService * @@ -89,7 +88,7 @@ export function resultsServiceRoutes({ router, getLicenseCheckResults }: RouteIn body: schema.object(anomaliesTableDataSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getAnomaliesTableData(context, request.body); @@ -116,7 +115,7 @@ export function resultsServiceRoutes({ router, getLicenseCheckResults }: RouteIn body: schema.object(categoryDefinitionSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getCategoryDefinition(context, request.body); @@ -143,7 +142,7 @@ export function resultsServiceRoutes({ router, getLicenseCheckResults }: RouteIn body: schema.object(maxAnomalyScoreSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getMaxAnomalyScore(context, request.body); @@ -170,7 +169,7 @@ export function resultsServiceRoutes({ router, getLicenseCheckResults }: RouteIn body: schema.object(categoryExamplesSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getCategoryExamples(context, request.body); @@ -197,7 +196,7 @@ export function resultsServiceRoutes({ router, getLicenseCheckResults }: RouteIn body: schema.object(partitionFieldValuesSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getPartitionFieldsValues(context, request.body); diff --git a/x-pack/plugins/ml/server/routes/system.ts b/x-pack/plugins/ml/server/routes/system.ts index 36a9ea1447f583..a0d7d312c04d4e 100644 --- a/x-pack/plugins/ml/server/routes/system.ts +++ b/x-pack/plugins/ml/server/routes/system.ts @@ -12,14 +12,13 @@ import { wrapError } from '../client/error_wrapper'; import { mlLog } from '../client/log'; import { privilegesProvider } from '../lib/check_privileges'; import { spacesUtilsProvider } from '../lib/spaces_utils'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization, SystemRouteDeps } from '../types'; /** * System routes */ export function systemRoutes( - { getLicenseCheckResults, router }: RouteInitialization, + { router, mlLicense }: RouteInitialization, { spacesPlugin, cloud }: SystemRouteDeps ) { async function getNodeCount(context: RequestHandlerContext) { @@ -56,7 +55,7 @@ export function systemRoutes( body: schema.maybe(schema.any()), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { let upgradeInProgress = false; try { @@ -77,7 +76,7 @@ export function systemRoutes( } } - if (getLicenseCheckResults().isSecurityDisabled) { + if (mlLicense.isSecurityEnabled() === false) { // if xpack.security.enabled has been explicitly set to false // return that security is disabled and don't call the privilegeCheck endpoint return response.ok({ @@ -116,7 +115,7 @@ export function systemRoutes( }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const ignoreSpaces = request.query && request.query.ignoreSpaces === 'true'; // if spaces is disabled force isMlEnabledInSpace to be true @@ -127,7 +126,7 @@ export function systemRoutes( const { getPrivileges } = privilegesProvider( context.ml!.mlClient.callAsCurrentUser, - getLicenseCheckResults(), + mlLicense, isMlEnabledInSpace, ignoreSpaces ); @@ -152,11 +151,11 @@ export function systemRoutes( path: '/api/ml/ml_node_count', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { // check for basic license first for consistency with other // security disabled checks - if (getLicenseCheckResults().isSecurityDisabled) { + if (mlLicense.isSecurityEnabled() === false) { return response.ok({ body: await getNodeCount(context), }); @@ -203,7 +202,7 @@ export function systemRoutes( path: '/api/ml/info', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const info = await context.ml!.mlClient.callAsCurrentUser('ml.info'); const cloudId = cloud && cloud.cloudId; @@ -231,7 +230,7 @@ export function systemRoutes( body: schema.maybe(schema.any()), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { return response.ok({ body: await context.ml!.mlClient.callAsCurrentUser('search', request.body), diff --git a/x-pack/plugins/ml/server/types.ts b/x-pack/plugins/ml/server/types.ts index 550abadb3c06f3..aeb4c505ec55e4 100644 --- a/x-pack/plugins/ml/server/types.ts +++ b/x-pack/plugins/ml/server/types.ts @@ -12,6 +12,7 @@ import { SecurityPluginSetup } from '../../security/server'; import { PluginSetupContract as FeaturesPluginSetup } from '../../features/server'; import { LicensingPluginSetup } from '../../licensing/server'; import { SpacesPluginSetup } from '../../spaces/server'; +import { MlServerLicense } from './lib/license'; export interface LicenseCheckResult { isAvailable: boolean; @@ -39,5 +40,5 @@ export interface PluginsSetup { export interface RouteInitialization { router: IRouter; - getLicenseCheckResults: () => LicenseCheckResult; + mlLicense: MlServerLicense; } diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 43f2e1956adf39..0e2a842db19c82 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -7537,9 +7537,6 @@ "xpack.ml.calendarsList.table.idColumnName": "ID", "xpack.ml.calendarsList.table.jobsColumnName": "ジョブ", "xpack.ml.calendarsList.table.newButtonLabel": "新規", - "xpack.ml.checkLicense.licenseHasExpiredMessage": "{licenseTypeName} 機械学習ライセンスが期限切れになりました。", - "xpack.ml.checkLicense.licenseInformationNotAvailableThisTimeMessage": "現在ライセンス情報が利用できないため機械学習を使用できません。", - "xpack.ml.checkLicense.mlIsUnavailableMessage": "機械学習が利用できません", "xpack.ml.controls.checkboxShowCharts.showChartsCheckboxLabel": "チャートを表示", "xpack.ml.controls.selectInterval.autoLabel": "自動", "xpack.ml.controls.selectInterval.dayLabel": "1 日", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index 328afa513337b0..95bc32a9a1c52b 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -7537,9 +7537,6 @@ "xpack.ml.calendarsList.table.idColumnName": "ID", "xpack.ml.calendarsList.table.jobsColumnName": "作业", "xpack.ml.calendarsList.table.newButtonLabel": "新建", - "xpack.ml.checkLicense.licenseHasExpiredMessage": "您的 {licenseTypeName} Machine Learning 许可证已过期。", - "xpack.ml.checkLicense.licenseInformationNotAvailableThisTimeMessage": "您不能使用 Machine Learning,因为许可证信息当前不可用。", - "xpack.ml.checkLicense.mlIsUnavailableMessage": "Machine Learning 不可用", "xpack.ml.controls.checkboxShowCharts.showChartsCheckboxLabel": "显示图表", "xpack.ml.controls.selectInterval.autoLabel": "自动", "xpack.ml.controls.selectInterval.dayLabel": "1 天", From 4c2aa0ab3fce9b2c0415f28b14b776f61c7f56c1 Mon Sep 17 00:00:00 2001 From: Yara Tercero <yctercero@users.noreply.github.com> Date: Tue, 3 Mar 2020 14:00:43 -0500 Subject: [PATCH 064/120] [SIEM][Detections Engine] Fixed minor UI bug on all rules table pagination (#59094) * Fixed minor UI bug on all rules table pagination --- .../detection_engine/rules/use_rules.tsx | 10 +++-- .../rules/all/helpers.test.tsx | 44 ++++++++++++++++++- .../detection_engine/rules/all/index.tsx | 4 +- .../detection_engine/rules/all/reducer.ts | 16 +++---- 4 files changed, 58 insertions(+), 16 deletions(-) diff --git a/x-pack/legacy/plugins/siem/public/containers/detection_engine/rules/use_rules.tsx b/x-pack/legacy/plugins/siem/public/containers/detection_engine/rules/use_rules.tsx index d05d59d15802d7..81b8b04ed66481 100644 --- a/x-pack/legacy/plugins/siem/public/containers/detection_engine/rules/use_rules.tsx +++ b/x-pack/legacy/plugins/siem/public/containers/detection_engine/rules/use_rules.tsx @@ -23,7 +23,7 @@ export interface UseRules { pagination: PaginationOptions; filterOptions: FilterOptions; refetchPrePackagedRulesStatus?: () => void; - dispatchRulesInReducer?: (rules: Rule[]) => void; + dispatchRulesInReducer?: (rules: Rule[], pagination: Partial<PaginationOptions>) => void; } /** @@ -59,14 +59,18 @@ export const useRules = ({ if (isSubscribed) { setRules(fetchRulesResult); if (dispatchRulesInReducer != null) { - dispatchRulesInReducer(fetchRulesResult.data); + dispatchRulesInReducer(fetchRulesResult.data, { + page: fetchRulesResult.page, + perPage: fetchRulesResult.perPage, + total: fetchRulesResult.total, + }); } } } catch (error) { if (isSubscribed) { errorToToaster({ title: i18n.RULE_FETCH_FAILURE, error, dispatchToaster }); if (dispatchRulesInReducer != null) { - dispatchRulesInReducer([]); + dispatchRulesInReducer([], {}); } } } diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/helpers.test.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/helpers.test.tsx index c60933733587d0..062d7967bf3018 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/helpers.test.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/helpers.test.tsx @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { bucketRulesResponse } from './helpers'; +import { bucketRulesResponse, showRulesTable } from './helpers'; import { mockRule, mockRuleError } from './__mocks__/mock'; import uuid from 'uuid'; import { Rule, RuleError } from '../../../../containers/detection_engine/rules'; @@ -44,4 +44,46 @@ describe('AllRulesTable Helpers', () => { }); }); }); + + describe('showRulesTable', () => { + test('returns false when rulesCustomInstalled and rulesInstalled are null', () => { + const result = showRulesTable({ + rulesCustomInstalled: null, + rulesInstalled: null, + }); + expect(result).toBeFalsy(); + }); + + test('returns false when rulesCustomInstalled and rulesInstalled are 0', () => { + const result = showRulesTable({ + rulesCustomInstalled: 0, + rulesInstalled: 0, + }); + expect(result).toBeFalsy(); + }); + + test('returns false when both rulesCustomInstalled and rulesInstalled checks return false', () => { + const result = showRulesTable({ + rulesCustomInstalled: 0, + rulesInstalled: null, + }); + expect(result).toBeFalsy(); + }); + + test('returns true if rulesCustomInstalled is not null or 0', () => { + const result = showRulesTable({ + rulesCustomInstalled: 5, + rulesInstalled: null, + }); + expect(result).toBeTruthy(); + }); + + test('returns true if rulesInstalled is not null or 0', () => { + const result = showRulesTable({ + rulesCustomInstalled: null, + rulesInstalled: 5, + }); + expect(result).toBeTruthy(); + }); + }); }); diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/index.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/index.tsx index 79fec526faf48b..9676b83a26f555 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/index.tsx @@ -21,6 +21,7 @@ import { CreatePreBuiltRules, FilterOptions, Rule, + PaginationOptions, } from '../../../../containers/detection_engine/rules'; import { HeaderSection } from '../../../../components/header_section'; import { @@ -118,10 +119,11 @@ export const AllRules = React.memo<AllRulesProps>( const history = useHistory(); const [, dispatchToaster] = useStateToaster(); - const setRules = useCallback((newRules: Rule[]) => { + const setRules = useCallback((newRules: Rule[], newPagination: Partial<PaginationOptions>) => { dispatch({ type: 'setRules', rules: newRules, + pagination: newPagination, }); }, []); diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/reducer.ts b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/reducer.ts index 54da43efd66d95..0a4d169d13154f 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/reducer.ts +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/reducer.ts @@ -26,9 +26,8 @@ export type Action = | { type: 'exportRuleIds'; ids: string[] } | { type: 'loadingRuleIds'; ids: string[]; actionType: LoadingRuleAction } | { type: 'selectedRuleIds'; ids: string[] } - | { type: 'setRules'; rules: Rule[] } + | { type: 'setRules'; rules: Rule[]; pagination: Partial<PaginationOptions> } | { type: 'updateRules'; rules: Rule[] } - | { type: 'updatePagination'; pagination: Partial<PaginationOptions> } | { type: 'updateFilterOptions'; filterOptions: Partial<FilterOptions>; @@ -76,6 +75,10 @@ export const allRulesReducer = ( selectedRuleIds: [], loadingRuleIds: [], loadingRulesAction: null, + pagination: { + ...state.pagination, + ...action.pagination, + }, }; } case 'updateRules': { @@ -101,15 +104,6 @@ export const allRulesReducer = ( } return state; } - case 'updatePagination': { - return { - ...state, - pagination: { - ...state.pagination, - ...action.pagination, - }, - }; - } case 'updateFilterOptions': { return { ...state, From ea43dcede0683d69c333236720ffc31bf7ffa76e Mon Sep 17 00:00:00 2001 From: Nathan Reese <reese.nathan@gmail.com> Date: Tue, 3 Mar 2020 12:23:43 -0700 Subject: [PATCH 065/120] [Maps] add functional test to ensure visualize create menu only shows Maps app (#58746) Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../functional/page_objects/visualize_page.ts | 28 +++++++++++-- x-pack/test/functional/apps/maps/index.js | 1 + .../apps/maps/visualize_create_menu.js | 40 +++++++++++++++++++ 3 files changed, 65 insertions(+), 4 deletions(-) create mode 100644 x-pack/test/functional/apps/maps/visualize_create_menu.js diff --git a/test/functional/page_objects/visualize_page.ts b/test/functional/page_objects/visualize_page.ts index 82ef3dc800f6c5..3b63fa68d71ee9 100644 --- a/test/functional/page_objects/visualize_page.ts +++ b/test/functional/page_objects/visualize_page.ts @@ -79,6 +79,10 @@ export function VisualizePageProvider({ getService, getPageObjects }: FtrProvide await this.waitForVisualizationSelectPage(); } + public async hasVisType(type: string) { + return await testSubjects.exists(`visType-${type}`); + } + public async clickVisType(type: string) { await testSubjects.click(`visType-${type}`); await header.waitUntilLoadingHasFinished(); @@ -100,6 +104,10 @@ export function VisualizePageProvider({ getService, getPageObjects }: FtrProvide await this.clickVisType('region_map'); } + public async hasRegionMap() { + return await this.hasVisType('region_map'); + } + public async clickMarkdownWidget() { await this.clickVisType('markdown'); } @@ -120,6 +128,10 @@ export function VisualizePageProvider({ getService, getPageObjects }: FtrProvide await this.clickVisType('tile_map'); } + public async hasTileMap() { + return await this.hasVisType('tile_map'); + } + public async clickTagCloud() { await this.clickVisType('tagcloud'); } @@ -144,6 +156,18 @@ export function VisualizePageProvider({ getService, getPageObjects }: FtrProvide await this.clickVisType('input_control_vis'); } + public async clickLensWidget() { + await this.clickVisType('lens'); + } + + public async clickMapsApp() { + await this.clickVisType('maps'); + } + + public async hasMapsApp() { + return await this.hasVisType('maps'); + } + public async createSimpleMarkdownViz(vizName: string) { await this.gotoVisualizationLandingPage(); await this.navigateToNewVisualization(); @@ -315,10 +339,6 @@ export function VisualizePageProvider({ getService, getPageObjects }: FtrProvide async () => (await globalNav.getLastBreadcrumb()) === vizName ); } - - public async clickLensWidget() { - await this.clickVisType('lens'); - } } return new VisualizePage(); diff --git a/x-pack/test/functional/apps/maps/index.js b/x-pack/test/functional/apps/maps/index.js index e8a9d7ba54bc55..44a7c4c9a5f866 100644 --- a/x-pack/test/functional/apps/maps/index.js +++ b/x-pack/test/functional/apps/maps/index.js @@ -45,6 +45,7 @@ export default function({ loadTestFile, getService }) { loadTestFile(require.resolve('./import_geojson')); loadTestFile(require.resolve('./layer_errors')); loadTestFile(require.resolve('./embeddable')); + loadTestFile(require.resolve('./visualize_create_menu')); loadTestFile(require.resolve('./discover')); }); }); diff --git a/x-pack/test/functional/apps/maps/visualize_create_menu.js b/x-pack/test/functional/apps/maps/visualize_create_menu.js new file mode 100644 index 00000000000000..ed0c153b9f99d2 --- /dev/null +++ b/x-pack/test/functional/apps/maps/visualize_create_menu.js @@ -0,0 +1,40 @@ +/* + * 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 expect from '@kbn/expect'; + +export default function({ getPageObjects }) { + const PageObjects = getPageObjects(['visualize', 'header', 'maps']); + + describe('visualize create menu', () => { + before(async () => { + await PageObjects.visualize.navigateToNewVisualization(); + }); + + it('should show maps application in create menu', async () => { + const hasMapsApp = await PageObjects.visualize.hasMapsApp(); + expect(hasMapsApp).to.equal(true); + }); + + it('should not show legacy region map visualizion in create menu', async () => { + const hasLegecyViz = await PageObjects.visualize.hasRegionMap(); + expect(hasLegecyViz).to.equal(false); + }); + + it('should not show legacy tilemap map visualizion in create menu', async () => { + const hasLegecyViz = await PageObjects.visualize.hasTileMap(); + expect(hasLegecyViz).to.equal(false); + }); + + it('should take users to Maps application when Maps is clicked', async () => { + await PageObjects.visualize.clickMapsApp(); + await PageObjects.header.waitUntilLoadingHasFinished(); + await PageObjects.maps.waitForLayersToLoad(); + const doesLayerExist = await PageObjects.maps.doesLayerExist('Road map'); + expect(doesLayerExist).to.equal(true); + }); + }); +} From cbf410281a95143f77e1ac00106a8e2e7aab36bf Mon Sep 17 00:00:00 2001 From: Dima Arnautov <dmitrii.arnautov@elastic.co> Date: Tue, 3 Mar 2020 20:31:13 +0100 Subject: [PATCH 066/120] [ML] Support multi-line JSON notation (#58870) * [ML] multi-line json support for analytics job editor * [ML] advanced editor with xjson * [ML] add jest mock for XJsonMode * [ML] add xJson mode to the json tab * [ML] fix mocks --- .../shared_imports.ts} | 3 +- .../components/custom_hooks/index.ts | 1 + .../custom_hooks/use_x_json_mode.ts | 25 +++++++++++++ .../create_analytics_advanced_editor.tsx | 7 +++- .../create_analytics_button.test.tsx | 2 + .../create_analytics_flyout.tsx | 2 +- .../components/file_contents/file_contents.js | 8 ++-- .../components/import_settings/advanced.js | 8 ++-- .../edit_job_flyout/edit_job_flyout.js | 3 +- .../edit_job_flyout/tabs/datafeed.js | 9 ++++- .../components/job_details/json_tab.js | 4 +- .../components/ml_job_editor/index.ts | 2 +- .../{ml_job_editor.js => ml_job_editor.tsx} | 37 +++++++++++-------- .../json_editor_flyout/json_editor_flyout.tsx | 11 ++++-- .../routes/timeseriesexplorer.test.tsx | 2 + x-pack/legacy/plugins/ml/shared_imports.ts | 12 ++++++ 16 files changed, 97 insertions(+), 39 deletions(-) rename x-pack/legacy/plugins/ml/{public/application/jobs/jobs_list/components/ml_job_editor/ml_job_editor.d.ts => __mocks__/shared_imports.ts} (75%) create mode 100644 x-pack/legacy/plugins/ml/public/application/components/custom_hooks/use_x_json_mode.ts rename x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/{ml_job_editor.js => ml_job_editor.tsx} (55%) create mode 100644 x-pack/legacy/plugins/ml/shared_imports.ts diff --git a/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/ml_job_editor.d.ts b/x-pack/legacy/plugins/ml/__mocks__/shared_imports.ts similarity index 75% rename from x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/ml_job_editor.d.ts rename to x-pack/legacy/plugins/ml/__mocks__/shared_imports.ts index a5af8a872f754e..d044ab409eb7a5 100644 --- a/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/ml_job_editor.d.ts +++ b/x-pack/legacy/plugins/ml/__mocks__/shared_imports.ts @@ -4,5 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -export function MLJobEditor(props: any): any; -export const EDITOR_MODE: any; +export function XJsonMode() {} diff --git a/x-pack/legacy/plugins/ml/public/application/components/custom_hooks/index.ts b/x-pack/legacy/plugins/ml/public/application/components/custom_hooks/index.ts index ffead802bd6f97..dfd74d8970cb44 100644 --- a/x-pack/legacy/plugins/ml/public/application/components/custom_hooks/index.ts +++ b/x-pack/legacy/plugins/ml/public/application/components/custom_hooks/index.ts @@ -5,3 +5,4 @@ */ export { usePartialState } from './use_partial_state'; +export { useXJsonMode, xJsonMode } from './use_x_json_mode'; diff --git a/x-pack/legacy/plugins/ml/public/application/components/custom_hooks/use_x_json_mode.ts b/x-pack/legacy/plugins/ml/public/application/components/custom_hooks/use_x_json_mode.ts new file mode 100644 index 00000000000000..6226f10f347e3e --- /dev/null +++ b/x-pack/legacy/plugins/ml/public/application/components/custom_hooks/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 { + collapseLiteralStrings, + expandLiteralStrings, + XJsonMode, +} from '../../../../shared_imports'; + +export const xJsonMode = new XJsonMode(); + +export const useXJsonMode = (json: string) => { + const [xJson, setXJson] = useState(expandLiteralStrings(json)); + + return { + xJson, + setXJson, + xJsonMode, + convertToJson: collapseLiteralStrings, + }; +}; diff --git a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_advanced_editor/create_analytics_advanced_editor.tsx b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_advanced_editor/create_analytics_advanced_editor.tsx index daf21d57b05106..05715f7b9c42e9 100644 --- a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_advanced_editor/create_analytics_advanced_editor.tsx +++ b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_advanced_editor/create_analytics_advanced_editor.tsx @@ -17,8 +17,10 @@ import { } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; +import { collapseLiteralStrings } from '../../../../../../../../../../../src/plugins/es_ui_shared/console_lang/lib/json_xjson_translation_tools'; import { CreateAnalyticsFormProps } from '../../hooks/use_create_analytics_form'; +import { xJsonMode } from '../../../../../components/custom_hooks'; export const CreateAnalyticsAdvancedEditor: FC<CreateAnalyticsFormProps> = ({ actions, state }) => { const { @@ -42,7 +44,8 @@ export const CreateAnalyticsAdvancedEditor: FC<CreateAnalyticsFormProps> = ({ ac const onChange = (str: string) => { setAdvancedEditorRawString(str); try { - setJobConfig(JSON.parse(str)); + const resultJobConfig = JSON.parse(collapseLiteralStrings(str)); + setJobConfig(resultJobConfig); } catch (e) { resetAdvancedEditorMessages(); } @@ -119,7 +122,7 @@ export const CreateAnalyticsAdvancedEditor: FC<CreateAnalyticsFormProps> = ({ ac style={{ maxWidth: '100%' }} > <EuiCodeEditor - mode="json" + mode={xJsonMode} width="100%" value={advancedEditorRawString} onChange={onChange} diff --git a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_button/create_analytics_button.test.tsx b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_button/create_analytics_button.test.tsx index 7d58f0df12e6ce..25c81d244fa01d 100644 --- a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_button/create_analytics_button.test.tsx +++ b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_button/create_analytics_button.test.tsx @@ -29,6 +29,8 @@ jest.mock('react', () => { return { ...r, memo: (x: any) => x }; }); +jest.mock('../../../../../../../shared_imports'); + describe('Data Frame Analytics: <CreateAnalyticsButton />', () => { test('Minimal initialization', () => { const { getLastHookValue } = getMountedHook(); diff --git a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_flyout/create_analytics_flyout.tsx b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_flyout/create_analytics_flyout.tsx index f6920815c0c87e..e31c12e2c62d0e 100644 --- a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_flyout/create_analytics_flyout.tsx +++ b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_flyout/create_analytics_flyout.tsx @@ -29,7 +29,7 @@ export const CreateAnalyticsFlyout: FC<CreateAnalyticsFormProps> = ({ const { isJobCreated, isJobStarted, isModalButtonDisabled, isValid } = state; return ( - <EuiFlyout size="s" onClose={closeModal} data-test-subj="mlAnalyticsCreateJobFlyout"> + <EuiFlyout size="m" onClose={closeModal} data-test-subj="mlAnalyticsCreateJobFlyout"> <EuiFlyoutHeader> <EuiTitle> <h2 data-test-subj="mlDataFrameAnalyticsFlyoutHeaderTitle"> diff --git a/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/file_contents/file_contents.js b/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/file_contents/file_contents.js index 99bac9cc27d6f6..ed5ab57a2588d0 100644 --- a/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/file_contents/file_contents.js +++ b/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/file_contents/file_contents.js @@ -9,12 +9,12 @@ import React from 'react'; import { EuiTitle, EuiSpacer } from '@elastic/eui'; -import { MLJobEditor, EDITOR_MODE } from '../../../../jobs/jobs_list/components/ml_job_editor'; +import { MLJobEditor, ML_EDITOR_MODE } from '../../../../jobs/jobs_list/components/ml_job_editor'; export function FileContents({ data, format, numberOfLines }) { - let mode = EDITOR_MODE.TEXT; - if (format === EDITOR_MODE.JSON) { - mode = EDITOR_MODE.JSON; + let mode = ML_EDITOR_MODE.TEXT; + if (format === ML_EDITOR_MODE.JSON) { + mode = ML_EDITOR_MODE.JSON; } const formattedData = limitByNumberOfLines(data, numberOfLines); diff --git a/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/import_settings/advanced.js b/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/import_settings/advanced.js index 94143ea354d707..14cbe67662ed6f 100644 --- a/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/import_settings/advanced.js +++ b/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/import_settings/advanced.js @@ -17,7 +17,7 @@ import { EuiFlexItem, } from '@elastic/eui'; -import { MLJobEditor, EDITOR_MODE } from '../../../../jobs/jobs_list/components/ml_job_editor'; +import { MLJobEditor, ML_EDITOR_MODE } from '../../../../jobs/jobs_list/components/ml_job_editor'; const EDITOR_HEIGHT = '300px'; export function AdvancedSettings({ @@ -149,7 +149,7 @@ function IndexSettings({ initialized, data, onChange }) { fullWidth > <MLJobEditor - mode={EDITOR_MODE.JSON} + mode={ML_EDITOR_MODE.JSON} readOnly={initialized === true} value={data} height={EDITOR_HEIGHT} @@ -175,7 +175,7 @@ function Mappings({ initialized, data, onChange }) { fullWidth > <MLJobEditor - mode={EDITOR_MODE.JSON} + mode={ML_EDITOR_MODE.JSON} readOnly={initialized === true} value={data} height={EDITOR_HEIGHT} @@ -201,7 +201,7 @@ function IngestPipeline({ initialized, data, onChange }) { fullWidth > <MLJobEditor - mode={EDITOR_MODE.JSON} + mode={ML_EDITOR_MODE.JSON} readOnly={initialized === true} value={data} height={EDITOR_HEIGHT} diff --git a/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/edit_job_flyout/edit_job_flyout.js b/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/edit_job_flyout/edit_job_flyout.js index 7c1639395e02e3..9c9e4bc9f40f75 100644 --- a/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/edit_job_flyout/edit_job_flyout.js +++ b/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/edit_job_flyout/edit_job_flyout.js @@ -30,6 +30,7 @@ import { mlMessageBarService } from '../../../../components/messagebar'; import { withKibana } from '../../../../../../../../../../src/plugins/kibana_react/public'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; +import { collapseLiteralStrings } from '../../../../../../shared_imports'; export class EditJobFlyoutUI extends Component { _initialJobFormState = null; @@ -225,7 +226,7 @@ export class EditJobFlyoutUI extends Component { groups: this.state.jobGroups, mml: this.state.jobModelMemoryLimit, detectorDescriptions: this.state.jobDetectorDescriptions, - datafeedQuery: this.state.datafeedQuery, + datafeedQuery: collapseLiteralStrings(this.state.datafeedQuery), datafeedQueryDelay: this.state.datafeedQueryDelay, datafeedFrequency: this.state.datafeedFrequency, datafeedScrollSize: this.state.datafeedScrollSize, diff --git a/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/edit_job_flyout/tabs/datafeed.js b/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/edit_job_flyout/tabs/datafeed.js index 16fb8be448ffbc..096a03621d422c 100644 --- a/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/edit_job_flyout/tabs/datafeed.js +++ b/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/edit_job_flyout/tabs/datafeed.js @@ -12,7 +12,7 @@ import { EuiFieldText, EuiForm, EuiFormRow, EuiSpacer, EuiFieldNumber } from '@e import { calculateDatafeedFrequencyDefaultSeconds } from '../../../../../../../common/util/job_utils'; import { getNewJobDefaults } from '../../../../../services/ml_server_info'; import { parseInterval } from '../../../../../../../common/util/parse_interval'; -import { MLJobEditor } from '../../ml_job_editor'; +import { MLJobEditor, ML_EDITOR_MODE } from '../../ml_job_editor'; import { FormattedMessage } from '@kbn/i18n/react'; function getDefaults(bucketSpan, jobDefaults) { @@ -85,7 +85,12 @@ export class Datafeed extends Component { } style={{ maxWidth: 'inherit' }} > - <MLJobEditor value={query} onChange={this.onQueryChange} height="200px" /> + <MLJobEditor + mode={ML_EDITOR_MODE.XJSON} + value={query} + onChange={this.onQueryChange} + height="200px" + /> </EuiFormRow> <EuiFormRow label={ diff --git a/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/job_details/json_tab.js b/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/job_details/json_tab.js index 879978f207256b..38465665a0dde8 100644 --- a/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/job_details/json_tab.js +++ b/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/job_details/json_tab.js @@ -9,14 +9,14 @@ import React from 'react'; import { EuiSpacer } from '@elastic/eui'; -import { MLJobEditor } from '../ml_job_editor'; +import { ML_EDITOR_MODE, MLJobEditor } from '../ml_job_editor'; export function JsonPane({ job }) { const json = JSON.stringify(job, null, 2); return ( <React.Fragment> <EuiSpacer size="s" /> - <MLJobEditor value={json} readOnly={true} /> + <MLJobEditor value={json} readOnly={true} mode={ML_EDITOR_MODE.XJSON} /> </React.Fragment> ); } diff --git a/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/index.ts b/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/index.ts index 913dc4a9510f3d..a83e7e226d71a6 100644 --- a/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/index.ts +++ b/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/index.ts @@ -4,4 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -export { MLJobEditor, EDITOR_MODE } from './ml_job_editor'; +export { MLJobEditor, ML_EDITOR_MODE } from './ml_job_editor'; diff --git a/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/ml_job_editor.js b/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/ml_job_editor.tsx similarity index 55% rename from x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/ml_job_editor.js rename to x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/ml_job_editor.tsx index 8a9eedcb528e04..ff6706edb01798 100644 --- a/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/ml_job_editor.js +++ b/x-pack/legacy/plugins/ml/public/application/jobs/jobs_list/components/ml_job_editor/ml_job_editor.tsx @@ -4,23 +4,38 @@ * you may not use this file except in compliance with the Elastic License. */ -import PropTypes from 'prop-types'; -import React from 'react'; +import React, { FC } from 'react'; import { EuiCodeEditor } from '@elastic/eui'; +import { expandLiteralStrings } from '../../../../../../shared_imports'; +import { xJsonMode } from '../../../../components/custom_hooks'; -export const EDITOR_MODE = { TEXT: 'text', JSON: 'json' }; +export const ML_EDITOR_MODE = { TEXT: 'text', JSON: 'json', XJSON: xJsonMode }; -export function MLJobEditor({ +interface MlJobEditorProps { + value: string; + height?: string; + width?: string; + mode?: typeof ML_EDITOR_MODE[keyof typeof ML_EDITOR_MODE]; + readOnly?: boolean; + syntaxChecking?: boolean; + theme?: string; + onChange?: Function; +} +export const MLJobEditor: FC<MlJobEditorProps> = ({ value, height = '500px', width = '100%', - mode = EDITOR_MODE.JSON, + mode = ML_EDITOR_MODE.JSON, readOnly = false, syntaxChecking = true, theme = 'textmate', onChange = () => {}, -}) { +}) => { + if (mode === ML_EDITOR_MODE.XJSON) { + value = expandLiteralStrings(value); + } + return ( <EuiCodeEditor value={value} @@ -40,14 +55,4 @@ export function MLJobEditor({ onChange={onChange} /> ); -} -MLJobEditor.propTypes = { - value: PropTypes.string.isRequired, - height: PropTypes.string, - width: PropTypes.string, - mode: PropTypes.string, - readOnly: PropTypes.bool, - syntaxChecking: PropTypes.bool, - theme: PropTypes.string, - onChange: PropTypes.func, }; diff --git a/x-pack/legacy/plugins/ml/public/application/jobs/new_job/pages/components/common/json_editor_flyout/json_editor_flyout.tsx b/x-pack/legacy/plugins/ml/public/application/jobs/new_job/pages/components/common/json_editor_flyout/json_editor_flyout.tsx index 4815629ddd5c8e..061d92b54472c7 100644 --- a/x-pack/legacy/plugins/ml/public/application/jobs/new_job/pages/components/common/json_editor_flyout/json_editor_flyout.tsx +++ b/x-pack/legacy/plugins/ml/public/application/jobs/new_job/pages/components/common/json_editor_flyout/json_editor_flyout.tsx @@ -18,8 +18,9 @@ import { EuiFlyoutBody, EuiSpacer, } from '@elastic/eui'; +import { collapseLiteralStrings } from '../../../../../../../../shared_imports'; import { Datafeed } from '../../../../common/job_creator/configs'; -import { MLJobEditor } from '../../../../../jobs_list/components/ml_job_editor'; +import { ML_EDITOR_MODE, MLJobEditor } from '../../../../../jobs_list/components/ml_job_editor'; import { isValidJson } from '../../../../../../../../common/util/validation_utils'; import { JobCreatorContext } from '../../job_creator_context'; @@ -68,10 +69,11 @@ export const JsonEditorFlyout: FC<Props> = ({ isDisabled, jobEditorMode, datafee function onDatafeedChange(json: string) { setDatafeedConfigString(json); - let valid = isValidJson(json); + const jsonValue = collapseLiteralStrings(json); + let valid = isValidJson(jsonValue); if (valid) { // ensure that the user hasn't altered the indices list in the json. - const { indices }: Datafeed = JSON.parse(json); + const { indices }: Datafeed = JSON.parse(jsonValue); const originalIndices = jobCreator.indices.sort(); valid = originalIndices.length === indices.length && @@ -82,7 +84,7 @@ export const JsonEditorFlyout: FC<Props> = ({ isDisabled, jobEditorMode, datafee function onSave() { const jobConfig = JSON.parse(jobConfigString); - const datafeedConfig = JSON.parse(datafeedConfigString); + const datafeedConfig = JSON.parse(collapseLiteralStrings(datafeedConfigString)); jobCreator.cloneFromExistingJob(jobConfig, datafeedConfig); jobCreatorUpdate(); setShowJsonFlyout(false); @@ -191,6 +193,7 @@ const Contents: FC<{ <MLJobEditor value={value} height={EDITOR_HEIGHT} + mode={ML_EDITOR_MODE.XJSON} readOnly={editJson === false} onChange={onChange} /> diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/timeseriesexplorer.test.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/timeseriesexplorer.test.tsx index 8633947374a8b4..ac4882b0055ae0 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/timeseriesexplorer.test.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/timeseriesexplorer.test.tsx @@ -52,6 +52,8 @@ jest.mock('../../util/dependency_cache', () => ({ getToastNotifications: () => ({ addSuccess: jest.fn(), addDanger: jest.fn() }), })); +jest.mock('../../../../shared_imports'); + describe('TimeSeriesExplorerUrlStateManager', () => { test('Initial render shows "No single metric jobs found"', () => { const props = { diff --git a/x-pack/legacy/plugins/ml/shared_imports.ts b/x-pack/legacy/plugins/ml/shared_imports.ts new file mode 100644 index 00000000000000..c38330444b29c7 --- /dev/null +++ b/x-pack/legacy/plugins/ml/shared_imports.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. + */ + +export { XJsonMode } from '../../../plugins/es_ui_shared/console_lang/ace/modes/x_json'; + +export { + collapseLiteralStrings, + expandLiteralStrings, +} from '../../../../src/plugins/es_ui_shared/console_lang/lib'; From 5555a6c3d66686c0d89cd2ad79a5a0e972920670 Mon Sep 17 00:00:00 2001 From: igoristic <igor.zaytsev.dev@gmail.com> Date: Tue, 3 Mar 2020 15:14:58 -0500 Subject: [PATCH 067/120] [Monitoring] Optimizes pipeline pagination and max buckets errors (#58205) * Optimized pipelines * Fixed tests * Addressed feedback * Withhold LS stats until there is at least one pipeline * Fixed logstash stats * Addressed feedback Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../pipeline_listing/pipeline_listing.js | 6 +- .../lib/cluster/get_clusters_from_request.js | 18 +- .../server/lib/details/get_series.js | 4 +- .../lib/logstash/__tests__/get_pipelines.js | 59 ------- .../lib/logstash/get_paginated_pipelines.js | 163 ++++++++++++++---- .../server/lib/logstash/get_pipelines.js | 64 ------- .../server/lib/pagination/paginate.js | 2 +- .../logstash/pipelines/cluster_pipelines.js | 38 ++-- .../v1/logstash/pipelines/node_pipelines.js | 36 ++-- 9 files changed, 168 insertions(+), 222 deletions(-) delete mode 100644 x-pack/legacy/plugins/monitoring/server/lib/logstash/__tests__/get_pipelines.js delete mode 100644 x-pack/legacy/plugins/monitoring/server/lib/logstash/get_pipelines.js diff --git a/x-pack/legacy/plugins/monitoring/public/components/logstash/pipeline_listing/pipeline_listing.js b/x-pack/legacy/plugins/monitoring/public/components/logstash/pipeline_listing/pipeline_listing.js index 72ef7a3b0ec5c3..f8df93d6ee8fb8 100644 --- a/x-pack/legacy/plugins/monitoring/public/components/logstash/pipeline_listing/pipeline_listing.js +++ b/x-pack/legacy/plugins/monitoring/public/components/logstash/pipeline_listing/pipeline_listing.js @@ -145,6 +145,10 @@ export class PipelineListing extends Component { className, } = this.props; + const sortingOptions = sorting || { field: 'id', direction: 'asc' }; + if (sortingOptions.field === 'name') { + sortingOptions.field = 'id'; + } const columns = this.getColumns(); return ( @@ -165,7 +169,7 @@ export class PipelineListing extends Component { className={className || 'logstashNodesTable'} rows={data} columns={columns} - sorting={sorting} + sorting={sortingOptions} message={upgradeMessage} pagination={pagination} fetchMoreData={fetchMoreData} diff --git a/x-pack/legacy/plugins/monitoring/server/lib/cluster/get_clusters_from_request.js b/x-pack/legacy/plugins/monitoring/server/lib/cluster/get_clusters_from_request.js index a5426dc04545eb..c5091c36c3bbeb 100644 --- a/x-pack/legacy/plugins/monitoring/server/lib/cluster/get_clusters_from_request.js +++ b/x-pack/legacy/plugins/monitoring/server/lib/cluster/get_clusters_from_request.js @@ -11,7 +11,7 @@ import { flagSupportedClusters } from './flag_supported_clusters'; import { getMlJobsForCluster } from '../elasticsearch'; import { getKibanasForClusters } from '../kibana'; import { getLogstashForClusters } from '../logstash'; -import { getPipelines } from '../logstash/get_pipelines'; +import { getLogstashPipelineIds } from '../logstash/get_pipeline_ids'; import { getBeatsForClusters } from '../beats'; import { alertsClustersAggregation } from '../../cluster_alerts/alerts_clusters_aggregation'; import { alertsClusterSearch } from '../../cluster_alerts/alerts_cluster_search'; @@ -36,7 +36,6 @@ import { checkCcrEnabled } from '../elasticsearch/ccr'; import { getStandaloneClusterDefinition, hasStandaloneClusters } from '../standalone_clusters'; import { getLogTypes } from '../logs'; import { isInCodePath } from './is_in_code_path'; -import { getLogstashPipelineIds } from '../logstash/get_pipeline_ids'; /** * Get all clusters or the cluster associated with {@code clusterUuid} when it is defined. @@ -57,7 +56,6 @@ export async function getClustersFromRequest( } = indexPatterns; const config = req.server.config(); - const size = config.get('monitoring.ui.max_bucket_size'); const isStandaloneCluster = clusterUuid === STANDALONE_CLUSTER_CLUSTER_UUID; let clusters = []; @@ -181,22 +179,14 @@ export async function getClustersFromRequest( // add logstash data if (isInCodePath(codePaths, [CODE_PATH_LOGSTASH])) { const logstashes = await getLogstashForClusters(req, lsIndexPattern, clusters); - const pipelines = await getLogstashPipelineIds(req, lsIndexPattern, { clusterUuid }, size); - const clusterPipelineNodesCount = await getPipelines(req, lsIndexPattern, pipelines, [ - 'logstash_cluster_pipeline_nodes_count', - ]); - // add the logstash data to each cluster + const pipelines = await getLogstashPipelineIds(req, lsIndexPattern, { clusterUuid }, 1); logstashes.forEach(logstash => { const clusterIndex = findIndex(clusters, { cluster_uuid: logstash.clusterUuid }); - // withhold LS overview stats until pipeline metrics have at least one full bucket - if ( - logstash.clusterUuid === req.params.clusterUuid && - clusterPipelineNodesCount.length === 0 - ) { + // withhold LS overview stats until there is at least 1 pipeline + if (logstash.clusterUuid === clusterUuid && !pipelines.length) { logstash.stats = {}; } - set(clusters[clusterIndex], 'logstash', logstash.stats); }); } diff --git a/x-pack/legacy/plugins/monitoring/server/lib/details/get_series.js b/x-pack/legacy/plugins/monitoring/server/lib/details/get_series.js index caa6617e91793c..a9269daa8f74e2 100644 --- a/x-pack/legacy/plugins/monitoring/server/lib/details/get_series.js +++ b/x-pack/legacy/plugins/monitoring/server/lib/details/get_series.js @@ -68,7 +68,7 @@ function createMetricAggs(metric) { return metric.aggs; } -function fetchSeries( +async function fetchSeries( req, indexPattern, metric, @@ -142,7 +142,7 @@ function fetchSeries( } const { callWithRequest } = req.server.plugins.elasticsearch.getCluster('monitoring'); - return callWithRequest(req, 'search', params); + return await callWithRequest(req, 'search', params); } /** diff --git a/x-pack/legacy/plugins/monitoring/server/lib/logstash/__tests__/get_pipelines.js b/x-pack/legacy/plugins/monitoring/server/lib/logstash/__tests__/get_pipelines.js deleted file mode 100644 index cac77b2903439a..00000000000000 --- a/x-pack/legacy/plugins/monitoring/server/lib/logstash/__tests__/get_pipelines.js +++ /dev/null @@ -1,59 +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 expect from '@kbn/expect'; -import { processPipelinesAPIResponse } from '../get_pipelines'; - -describe('processPipelinesAPIResponse', () => { - let response; - beforeEach(() => { - response = { - pipelines: [ - { - id: 1, - metrics: { - throughput_for_cluster: { - data: [ - [1513721903, 17], - [1513722162, 23], - ], - }, - nodes_count_for_cluster: { - data: [ - [1513721903, { 1: 5 }], - [1513722162, { 1: 10 }], - ], - }, - }, - }, - ], - }; - }); - - it('normalizes the metric keys', async () => { - const processedResponse = await processPipelinesAPIResponse( - response, - 'throughput_for_cluster', - 'nodes_count_for_cluster' - ); - expect(processedResponse.pipelines[0].metrics.throughput).to.eql( - response.pipelines[0].metrics.throughput_for_cluster - ); - expect(processedResponse.pipelines[0].metrics.nodesCount.data[0][0]).to.eql(1513721903); - expect(processedResponse.pipelines[0].metrics.nodesCount.data[0][1]).to.eql(5); - expect(processedResponse.pipelines[0].metrics.nodesCount.data[1][0]).to.eql(1513722162); - expect(processedResponse.pipelines[0].metrics.nodesCount.data[1][1]).to.eql(10); - }); - - it('computes the latest metrics', () => { - processPipelinesAPIResponse(response, 'throughput_for_cluster', 'nodes_count_for_cluster').then( - processedResponse => { - expect(processedResponse.pipelines[0].latestThroughput).to.eql(23); - expect(processedResponse.pipelines[0].latestNodesCount).to.eql(10); - } - ); - }); -}); diff --git a/x-pack/legacy/plugins/monitoring/server/lib/logstash/get_paginated_pipelines.js b/x-pack/legacy/plugins/monitoring/server/lib/logstash/get_paginated_pipelines.js index 5dcdf5b6762194..c4e211039de31a 100644 --- a/x-pack/legacy/plugins/monitoring/server/lib/logstash/get_paginated_pipelines.js +++ b/x-pack/legacy/plugins/monitoring/server/lib/logstash/get_paginated_pipelines.js @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { get } from 'lodash'; +import { get, cloneDeep, last } from 'lodash'; import { filter } from '../pagination/filter'; import { getLogstashPipelineIds } from './get_pipeline_ids'; import { sortPipelines } from './sort_pipelines'; @@ -31,11 +31,12 @@ export async function getPaginatedPipelines( req, lsIndexPattern, { clusterUuid, logstashUuid }, - metricSet, + { throughputMetric, nodesCountMetric }, pagination, sort, queryText ) { + const sortField = sort.field; const config = req.server.config(); const size = config.get('monitoring.ui.max_bucket_size'); const pipelines = await getLogstashPipelineIds( @@ -45,11 +46,54 @@ export async function getPaginatedPipelines( size ); - // `metricSet` defines a list of metrics that are sortable in the UI - // but we don't need to fetch all the data for these metrics to perform - // the necessary sort - we only need the last bucket of data so we - // fetch the last two buckets of data (to ensure we have a single full bucekt), - // then return the value from that last bucket + if (sortField === throughputMetric) { + await getPaginatedThroughputData(pipelines, req, lsIndexPattern, throughputMetric); + } else if (sortField === nodesCountMetric) { + await getPaginatedNodesData(pipelines, req, lsIndexPattern, nodesCountMetric); + } + + // Filtering + const filteredPipelines = filter(pipelines, queryText, ['id']); // We only support filtering by id right now + + // Sorting + const sortedPipelines = sortPipelines(filteredPipelines, sort); + + // Pagination + const pageOfPipelines = paginate(pagination, sortedPipelines); + + const response = { + pipelines: await getPipelines( + req, + lsIndexPattern, + pageOfPipelines, + throughputMetric, + nodesCountMetric + ), + totalPipelineCount: filteredPipelines.length, + }; + + return processPipelinesAPIResponse(response, throughputMetric, nodesCountMetric); +} + +function processPipelinesAPIResponse(response, throughputMetricKey, nodesCountMetricKey) { + // Clone to avoid mutating original response + const processedResponse = cloneDeep(response); + + // Normalize metric names for shared component code + // Calculate latest throughput and node count for each pipeline + processedResponse.pipelines.forEach(pipeline => { + pipeline.metrics = { + throughput: pipeline.metrics[throughputMetricKey], + nodesCount: pipeline.metrics[nodesCountMetricKey], + }; + + pipeline.latestThroughput = (last(pipeline.metrics.throughput.data) || [])[1]; + pipeline.latestNodesCount = (last(pipeline.metrics.nodesCount.data) || [])[1]; + }); + return processedResponse; +} + +async function getPaginatedThroughputData(pipelines, req, lsIndexPattern, throughputMetric) { const metricSeriesData = Object.values( await Promise.all( pipelines.map(pipeline => { @@ -57,49 +101,110 @@ export async function getPaginatedPipelines( const data = await getMetrics( req, lsIndexPattern, - metricSet, + [throughputMetric], [], { pipeline, }, 2 ); - - resolve({ - id: pipeline.id, - metrics: Object.keys(data).reduce((accum, metricName) => { - accum[metricName] = data[metricName][0]; - return accum; - }, {}), - }); + resolve(reduceData(pipeline, data)); }); }) ) ); + for (const pipelineAggregationData of metricSeriesData) { for (const pipeline of pipelines) { if (pipelineAggregationData.id === pipeline.id) { - for (const metric of metricSet) { - const dataSeries = get(pipelineAggregationData, `metrics.${metric}.data`, [[]]); - pipeline[metric] = dataSeries[dataSeries.length - 1][1]; - } + const dataSeries = get(pipelineAggregationData, `metrics.${throughputMetric}.data`, [[]]); + pipeline[throughputMetric] = dataSeries.pop()[1]; } } } +} - // Manually apply pagination/sorting/filtering concerns +async function getPaginatedNodesData(pipelines, req, lsIndexPattern, nodesCountMetric) { + const metricSeriesData = await getMetrics( + req, + lsIndexPattern, + [nodesCountMetric], + [], + { pageOfPipelines: pipelines }, + 2 + ); + const { data } = metricSeriesData[nodesCountMetric][0] || [[]]; + const pipelinesMap = (data.pop() || [])[1] || {}; + if (!Object.keys(pipelinesMap).length) { + return; + } + pipelines.forEach(pipeline => void (pipeline[nodesCountMetric] = pipelinesMap[pipeline.id])); +} - // Filtering - const filteredPipelines = filter(pipelines, queryText, ['id']); // We only support filtering by id right now +async function getPipelines(req, lsIndexPattern, pipelines, throughputMetric, nodesCountMetric) { + const throughputPipelines = await getThroughputPipelines( + req, + lsIndexPattern, + pipelines, + throughputMetric + ); + const nodePipelines = await getNodePipelines(req, lsIndexPattern, pipelines, nodesCountMetric); + const finalPipelines = pipelines.map(({ id }) => { + const pipeline = { + id, + metrics: { + [throughputMetric]: throughputPipelines.find(p => p.id === id).metrics[throughputMetric], + [nodesCountMetric]: nodePipelines.find(p => p.id === id).metrics[nodesCountMetric], + }, + }; + return pipeline; + }); + return finalPipelines; +} - // Sorting - const sortedPipelines = sortPipelines(filteredPipelines, sort); +async function getThroughputPipelines(req, lsIndexPattern, pipelines, throughputMetric) { + const metricsResponse = await Promise.all( + pipelines.map(pipeline => { + return new Promise(async resolve => { + const data = await getMetrics(req, lsIndexPattern, [throughputMetric], [], { + pipeline, + }); - // Pagination - const pageOfPipelines = paginate(pagination, sortedPipelines); + resolve(reduceData(pipeline, data)); + }); + }) + ); + + return Object.values(metricsResponse); +} +async function getNodePipelines(req, lsIndexPattern, pipelines, nodesCountMetric) { + const metricData = await getMetrics(req, lsIndexPattern, [nodesCountMetric], [], { + pageOfPipelines: pipelines, + }); + + const metricObject = metricData[nodesCountMetric][0]; + const pipelinesData = pipelines.map(({ id }) => { + return { + id, + metrics: { + [nodesCountMetric]: { + ...metricObject, + data: metricObject.data.map(([timestamp, valueMap]) => [timestamp, valueMap[id]]), + }, + }, + }; + }); + + return pipelinesData; +} + +function reduceData({ id }, data) { return { - pageOfPipelines, - totalPipelineCount: filteredPipelines.length, + id, + metrics: Object.keys(data).reduce((accum, metricName) => { + accum[metricName] = data[metricName][0]; + return accum; + }, {}), }; } diff --git a/x-pack/legacy/plugins/monitoring/server/lib/logstash/get_pipelines.js b/x-pack/legacy/plugins/monitoring/server/lib/logstash/get_pipelines.js deleted file mode 100644 index d634170bdd9fec..00000000000000 --- a/x-pack/legacy/plugins/monitoring/server/lib/logstash/get_pipelines.js +++ /dev/null @@ -1,64 +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 { cloneDeep, last } from 'lodash'; -import { checkParam } from '../error_missing_required'; -import { getMetrics } from '../details/get_metrics'; - -export async function processPipelinesAPIResponse( - response, - throughputMetricKey, - nodesCountMetricKey -) { - // Clone to avoid mutating original response - const processedResponse = cloneDeep(response); - - // Normalize metric names for shared component code - // Calculate latest throughput and node count for each pipeline - processedResponse.pipelines.forEach(pipeline => { - pipeline.metrics = { - throughput: pipeline.metrics[throughputMetricKey], - nodesCount: { - ...pipeline.metrics[nodesCountMetricKey], - data: pipeline.metrics[nodesCountMetricKey].data.map(item => [ - item[0], - item[1][pipeline.id], - ]), - }, - }; - - pipeline.latestThroughput = last(pipeline.metrics.throughput.data)[1]; - pipeline.latestNodesCount = last(pipeline.metrics.nodesCount.data)[1]; - }); - - return processedResponse; -} - -export async function getPipelines(req, logstashIndexPattern, pipelines, metricSet) { - checkParam(logstashIndexPattern, 'logstashIndexPattern in logstash/getPipelines'); - checkParam(metricSet, 'metricSet in logstash/getPipelines'); - - const filters = []; - - const metricsResponse = await Promise.all( - pipelines.map(pipeline => { - return new Promise(async resolve => { - const data = await getMetrics(req, logstashIndexPattern, metricSet, filters, { - pipeline, - }); - - resolve({ - id: pipeline.id, - metrics: Object.keys(data).reduce((accum, metricName) => { - accum[metricName] = data[metricName][0]; - return accum; - }, {}), - }); - }); - }) - ); - - return Object.values(metricsResponse); -} diff --git a/x-pack/legacy/plugins/monitoring/server/lib/pagination/paginate.js b/x-pack/legacy/plugins/monitoring/server/lib/pagination/paginate.js index 6b83842e7dd413..63195cb8ed9462 100644 --- a/x-pack/legacy/plugins/monitoring/server/lib/pagination/paginate.js +++ b/x-pack/legacy/plugins/monitoring/server/lib/pagination/paginate.js @@ -6,5 +6,5 @@ export function paginate({ size, index }, data) { const start = index * size; - return data.slice(start, Math.min(data.length, start + size)); + return data.slice(start, start + size); } diff --git a/x-pack/legacy/plugins/monitoring/server/routes/api/v1/logstash/pipelines/cluster_pipelines.js b/x-pack/legacy/plugins/monitoring/server/routes/api/v1/logstash/pipelines/cluster_pipelines.js index 0839bd48003291..87c8b851936020 100644 --- a/x-pack/legacy/plugins/monitoring/server/routes/api/v1/logstash/pipelines/cluster_pipelines.js +++ b/x-pack/legacy/plugins/monitoring/server/routes/api/v1/logstash/pipelines/cluster_pipelines.js @@ -6,10 +6,6 @@ import Joi from 'joi'; import { getClusterStatus } from '../../../../../lib/logstash/get_cluster_status'; -import { - getPipelines, - processPipelinesAPIResponse, -} from '../../../../../lib/logstash/get_pipelines'; import { handleError } from '../../../../../lib/errors'; import { prefixIndexPattern } from '../../../../../lib/ccs_utils'; import { INDEX_PATTERN_LOGSTASH } from '../../../../../../common/constants'; @@ -57,10 +53,7 @@ export function logstashClusterPipelinesRoute(server) { const throughputMetric = 'logstash_cluster_pipeline_throughput'; const nodesCountMetric = 'logstash_cluster_pipeline_nodes_count'; - const metricSet = [throughputMetric, nodesCountMetric]; - - // The client side fields do not match the server side metric names - // so adjust that here. See processPipelinesAPIResponse + // Mapping client and server metric keys together const sortMetricSetMap = { latestThroughput: throughputMetric, latestNodesCount: nodesCountMetric, @@ -69,29 +62,20 @@ export function logstashClusterPipelinesRoute(server) { sort.field = sortMetricSetMap[sort.field] || sort.field; } - const { pageOfPipelines, totalPipelineCount } = await getPaginatedPipelines( - req, - lsIndexPattern, - { clusterUuid }, - metricSet, - pagination, - sort, - queryText - ); - try { - const pipelineData = await getPipelines(req, lsIndexPattern, pageOfPipelines, metricSet); - const response = await processPipelinesAPIResponse( - { - pipelines: pipelineData, - clusterStatus: await getClusterStatus(req, lsIndexPattern, { clusterUuid }), - }, - throughputMetric, - nodesCountMetric + const response = await getPaginatedPipelines( + req, + lsIndexPattern, + { clusterUuid }, + { throughputMetric, nodesCountMetric }, + pagination, + sort, + queryText ); + return { ...response, - totalPipelineCount, + clusterStatus: await getClusterStatus(req, lsIndexPattern, { clusterUuid }), }; } catch (err) { throw handleError(err, req); diff --git a/x-pack/legacy/plugins/monitoring/server/routes/api/v1/logstash/pipelines/node_pipelines.js b/x-pack/legacy/plugins/monitoring/server/routes/api/v1/logstash/pipelines/node_pipelines.js index 604cc86b81b581..089cf36b8b2677 100644 --- a/x-pack/legacy/plugins/monitoring/server/routes/api/v1/logstash/pipelines/node_pipelines.js +++ b/x-pack/legacy/plugins/monitoring/server/routes/api/v1/logstash/pipelines/node_pipelines.js @@ -6,10 +6,6 @@ import Joi from 'joi'; import { getNodeInfo } from '../../../../../lib/logstash/get_node_info'; -import { - getPipelines, - processPipelinesAPIResponse, -} from '../../../../../lib/logstash/get_pipelines'; import { handleError } from '../../../../../lib/errors'; import { prefixIndexPattern } from '../../../../../lib/ccs_utils'; import { INDEX_PATTERN_LOGSTASH } from '../../../../../../common/constants'; @@ -57,10 +53,8 @@ export function logstashNodePipelinesRoute(server) { const throughputMetric = 'logstash_node_pipeline_throughput'; const nodesCountMetric = 'logstash_node_pipeline_nodes_count'; - const metricSet = [throughputMetric, nodesCountMetric]; - // The client side fields do not match the server side metric names - // so adjust that here. See processPipelinesAPIResponse + // Mapping client and server metric keys together const sortMetricSetMap = { latestThroughput: throughputMetric, latestNodesCount: nodesCountMetric, @@ -69,28 +63,20 @@ export function logstashNodePipelinesRoute(server) { sort.field = sortMetricSetMap[sort.field] || sort.field; } - const { pageOfPipelines, totalPipelineCount } = await getPaginatedPipelines( - req, - lsIndexPattern, - { clusterUuid, logstashUuid }, - metricSet, - pagination, - sort, - queryText - ); try { - const pipelineData = await getPipelines(req, lsIndexPattern, pageOfPipelines, metricSet); - const response = await processPipelinesAPIResponse( - { - pipelines: pipelineData, - nodeSummary: await getNodeInfo(req, lsIndexPattern, { clusterUuid, logstashUuid }), - }, - throughputMetric, - nodesCountMetric + const response = await getPaginatedPipelines( + req, + lsIndexPattern, + { clusterUuid, logstashUuid }, + { throughputMetric, nodesCountMetric }, + pagination, + sort, + queryText ); + return { ...response, - totalPipelineCount, + nodeSummary: await getNodeInfo(req, lsIndexPattern, { clusterUuid, logstashUuid }), }; } catch (err) { throw handleError(err, req); From 5d6248d9d9db6ffc6fa302033c35714277ecc76a Mon Sep 17 00:00:00 2001 From: Joe Reuter <johannes.reuter@elastic.co> Date: Tue, 3 Mar 2020 21:39:14 +0100 Subject: [PATCH 068/120] make remove filter work (#58871) --- .../vis_type_vega/public/vega_view/vega_base_view.js | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/legacy/core_plugins/vis_type_vega/public/vega_view/vega_base_view.js b/src/legacy/core_plugins/vis_type_vega/public/vega_view/vega_base_view.js index a6c17547d058e7..76a2e672e0bd0c 100644 --- a/src/legacy/core_plugins/vis_type_vega/public/vega_view/vega_base_view.js +++ b/src/legacy/core_plugins/vis_type_vega/public/vega_view/vega_base_view.js @@ -279,10 +279,17 @@ export class VegaBaseView { */ async removeFilterHandler(query, index) { const indexId = await this._findIndex(index); - const filter = esFilters.buildQueryFilter(query, indexId); + const filterToRemove = esFilters.buildQueryFilter(query, indexId); + + const currentFilters = this._filterManager.getFilters(); + const existingFilter = currentFilters.find(filter => + esFilters.compareFilters(filter, filterToRemove) + ); + + if (!existingFilter) return; try { - this._filterManager.removeFilter(filter); + this._filterManager.removeFilter(existingFilter); } catch (err) { this.onError(err); } From e4f4ac7cfa8de2b2c96efd485759d6073bdcff49 Mon Sep 17 00:00:00 2001 From: Joe Reuter <johannes.reuter@elastic.co> Date: Tue, 3 Mar 2020 21:39:22 +0100 Subject: [PATCH 069/120] stabilize dashboard snapshot toast closing (#58709) --- test/functional/apps/dashboard/dashboard_snapshots.js | 4 ++-- test/functional/page_objects/common_page.ts | 7 +++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/test/functional/apps/dashboard/dashboard_snapshots.js b/test/functional/apps/dashboard/dashboard_snapshots.js index 3a09b46a713cc1..f370067d84e362 100644 --- a/test/functional/apps/dashboard/dashboard_snapshots.js +++ b/test/functional/apps/dashboard/dashboard_snapshots.js @@ -50,7 +50,7 @@ export default function({ getService, getPageObjects, updateBaselines }) { await PageObjects.dashboard.clickNewDashboard(); await PageObjects.timePicker.setLogstashDataRange(); await dashboardAddPanel.addVisualization('Rendering Test: tsvb-ts'); - await PageObjects.common.closeToast(); + await PageObjects.common.closeToastIfExists(); await PageObjects.dashboard.saveDashboard('tsvb'); await PageObjects.dashboard.clickFullScreenMode(); @@ -73,7 +73,7 @@ export default function({ getService, getPageObjects, updateBaselines }) { await PageObjects.dashboard.clickNewDashboard(); await PageObjects.timePicker.setLogstashDataRange(); await dashboardAddPanel.addVisualization('Rendering Test: area with not filter'); - await PageObjects.common.closeToast(); + await PageObjects.common.closeToastIfExists(); await PageObjects.dashboard.saveDashboard('area'); await PageObjects.dashboard.clickFullScreenMode(); diff --git a/test/functional/page_objects/common_page.ts b/test/functional/page_objects/common_page.ts index ee3e24bc8be62d..60966511c1f99e 100644 --- a/test/functional/page_objects/common_page.ts +++ b/test/functional/page_objects/common_page.ts @@ -435,6 +435,13 @@ export function CommonPageProvider({ getService, getPageObjects }: FtrProviderCo return title; } + async closeToastIfExists() { + const toastShown = await find.existsByCssSelector('.euiToast'); + if (toastShown) { + await this.closeToast(); + } + } + async clearAllToasts() { const toasts = await find.allByCssSelector('.euiToast'); for (const toastElement of toasts) { From 3a7aa58c4194da747d713e79b39ce0a0a8682167 Mon Sep 17 00:00:00 2001 From: Maja Grubic <maja.grubic@elastic.co> Date: Tue, 3 Mar 2020 20:43:32 +0000 Subject: [PATCH 070/120] Fixing a small typo (#59185) --- .../doc_table/components/pager/tool_bar_pager_buttons.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/pager/tool_bar_pager_buttons.tsx b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/pager/tool_bar_pager_buttons.tsx index 75a03dfa2a84e9..6f1cf81e2c541b 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/pager/tool_bar_pager_buttons.tsx +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/doc_table/components/pager/tool_bar_pager_buttons.tsx @@ -49,7 +49,7 @@ export function ToolBarPagerButtons(props: Props) { disabled={!props.hasNextPage} data-test-subj="btnNextPage" aria-label={i18n.translate( - 'kbn.ddiscover.docTable.pager.toolbarPagerButtons.nextButtonAriaLabel', + 'kbn.discover.docTable.pager.toolbarPagerButtons.nextButtonAriaLabel', { defaultMessage: 'Next page in table', } From 30c9b0204599bab3e658f0468fcd8c8116189cc5 Mon Sep 17 00:00:00 2001 From: Steph Milovic <stephanie.milovic@elastic.co> Date: Tue, 3 Mar 2020 14:38:06 -0700 Subject: [PATCH 071/120] [SIEM] [Case] Fix flexbox issue in Case View (#59195) --- .../components/user_action_tree/index.tsx | 51 ++----------------- .../user_action_tree/user_action_item.tsx | 43 ++++++++++++++-- 2 files changed, 43 insertions(+), 51 deletions(-) diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/index.tsx index 6599151f9d4fd7..63e0bbeb443c22 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/index.tsx @@ -4,9 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { ReactNode, useCallback, useMemo, useState } from 'react'; -import { EuiFlexGroup } from '@elastic/eui'; -import styled, { css } from 'styled-components'; +import React, { useCallback, useMemo, useState } from 'react'; import * as i18n from '../case_view/translations'; import { Case } from '../../../../containers/case/types'; @@ -15,55 +13,12 @@ import { UserActionItem } from './user_action_item'; import { UserActionMarkdown } from './user_action_markdown'; import { AddComment } from '../add_comment'; -export interface UserActionItem { - avatarName: string; - children?: ReactNode; - skipPanel?: boolean; - title?: ReactNode; -} - export interface UserActionTreeProps { data: Case; isLoadingDescription: boolean; onUpdateField: (updateKey: keyof Case, updateValue: string | string[]) => void; } -const UserAction = styled(EuiFlexGroup)` - ${({ theme }) => css` - & { - background-image: linear-gradient( - to right, - transparent 0, - transparent 15px, - ${theme.eui.euiBorderColor} 15px, - ${theme.eui.euiBorderColor} 17px, - transparent 17px, - transparent 100% - ); - background-repeat: no-repeat; - background-position: left ${theme.eui.euiSizeXXL}; - margin-bottom: ${theme.eui.euiSizeS}; - } - .userAction__panel { - margin-bottom: ${theme.eui.euiSize}; - } - .userAction__circle { - flex-shrink: 0; - margin-right: ${theme.eui.euiSize}; - vertical-align: top; - } - .userAction__title { - padding: ${theme.eui.euiSizeS} ${theme.eui.euiSizeL}; - background: ${theme.eui.euiColorLightestShade}; - border-bottom: ${theme.eui.euiBorderThin}; - border-radius: ${theme.eui.euiBorderRadius} ${theme.eui.euiBorderRadius} 0 0; - } - .euiText--small * { - margin-bottom: 0; - } - `} -`; - const DescriptionId = 'description'; const NewId = 'newComent'; @@ -113,7 +68,7 @@ export const UserActionTree = React.memo( const MarkdownNewComment = useMemo(() => <AddComment caseId={data.caseId} />, [data.caseId]); return ( - <UserAction data-test-subj="user-action-description" gutterSize={'none'}> + <> <UserActionItem createdAt={data.createdAt} id={DescriptionId} @@ -159,7 +114,7 @@ export const UserActionTree = React.memo( onEdit={handleManageMarkdownEditId.bind(null, NewId)} userName="to be determined" /> - </UserAction> + </> ); } ); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_item.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_item.tsx index 816e5008275908..0a33301010535e 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_item.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/user_action_tree/user_action_item.tsx @@ -4,9 +4,10 @@ * you may not use this file except in compliance with the Elastic License. */ -import { EuiFlexItem, EuiPanel } from '@elastic/eui'; +import { EuiFlexGroup, EuiFlexItem, EuiPanel } from '@elastic/eui'; import React from 'react'; +import styled, { css } from 'styled-components'; import { UserActionAvatar } from './user_action_avatar'; import { UserActionTitle } from './user_action_title'; @@ -23,6 +24,42 @@ interface UserActionItemProps { userName: string; } +const UserActionItemContainer = styled(EuiFlexGroup)` + ${({ theme }) => css` + & { + background-image: linear-gradient( + to right, + transparent 0, + transparent 15px, + ${theme.eui.euiBorderColor} 15px, + ${theme.eui.euiBorderColor} 17px, + transparent 17px, + transparent 100% + ); + background-repeat: no-repeat; + background-position: left ${theme.eui.euiSizeXXL}; + margin-bottom: ${theme.eui.euiSizeS}; + } + .userAction__panel { + margin-bottom: ${theme.eui.euiSize}; + } + .userAction__circle { + flex-shrink: 0; + margin-right: ${theme.eui.euiSize}; + vertical-align: top; + } + .userAction__title { + padding: ${theme.eui.euiSizeS} ${theme.eui.euiSizeL}; + background: ${theme.eui.euiColorLightestShade}; + border-bottom: ${theme.eui.euiBorderThin}; + border-radius: ${theme.eui.euiBorderRadius} ${theme.eui.euiBorderRadius} 0 0; + } + .euiText--small * { + margin-bottom: 0; + } + `} +`; + export const UserActionItem = ({ createdAt, id, @@ -35,7 +72,7 @@ export const UserActionItem = ({ onEdit, userName, }: UserActionItemProps) => ( - <> + <UserActionItemContainer gutterSize={'none'}> <EuiFlexItem data-test-subj={`user-action-${id}-avatar`} grow={false}> <UserActionAvatar name={fullName ?? userName} /> </EuiFlexItem> @@ -56,5 +93,5 @@ export const UserActionItem = ({ </EuiPanel> )} </EuiFlexItem> - </> + </UserActionItemContainer> ); From 5cdb0153dc3e00a2f93760b0c598584a87c96ae6 Mon Sep 17 00:00:00 2001 From: Yuliia Naumenko <jo.naumenko@gmail.com> Date: Tue, 3 Mar 2020 13:40:51 -0800 Subject: [PATCH 072/120] Fixed test (#59208) --- .../sections/alert_add/alert_add.test.tsx | 74 ++++++------------- 1 file changed, 24 insertions(+), 50 deletions(-) diff --git a/x-pack/plugins/triggers_actions_ui/public/application/sections/alert_add/alert_add.test.tsx b/x-pack/plugins/triggers_actions_ui/public/application/sections/alert_add/alert_add.test.tsx index cc3b15d374718c..d52ca19f580229 100644 --- a/x-pack/plugins/triggers_actions_ui/public/application/sections/alert_add/alert_add.test.tsx +++ b/x-pack/plugins/triggers_actions_ui/public/application/sections/alert_add/alert_add.test.tsx @@ -4,13 +4,12 @@ * you may not use this file except in compliance with the Elastic License. */ import * as React from 'react'; -import { mountWithIntl } from 'test_utils/enzyme_helpers'; +import { mountWithIntl, nextTick } from 'test_utils/enzyme_helpers'; import { act } from 'react-dom/test-utils'; import { coreMock } from '../../../../../../../src/core/public/mocks'; import { AlertAdd } from './alert_add'; import { actionTypeRegistryMock } from '../../action_type_registry.mock'; import { ValidationResult } from '../../../types'; -import { AppDeps } from '../../app'; import { AlertsContextProvider } from '../../context/alerts_context'; import { alertTypeRegistryMock } from '../../alert_type_registry.mock'; import { chartPluginMock } from '../../../../../../../src/plugins/charts/public/mocks'; @@ -19,38 +18,19 @@ import { ReactWrapper } from 'enzyme'; const actionTypeRegistry = actionTypeRegistryMock.create(); const alertTypeRegistry = alertTypeRegistryMock.create(); -// FLAKY: https://github.com/elastic/kibana/issues/58970 -describe.skip('alert_add', () => { - let deps: AppDeps | null; +describe('alert_add', () => { + let deps: any; let wrapper: ReactWrapper<any>; async function setup() { const mockes = coreMock.createSetup(); - const [ - { - chrome, - docLinks, - application: { capabilities }, - }, - ] = await mockes.getStartServices(); deps = { - chrome, - docLinks, toastNotifications: mockes.notifications.toasts, injectedMetadata: mockes.injectedMetadata, http: mockes.http, uiSettings: mockes.uiSettings, dataPlugin: dataPluginMock.createStartContract(), charts: chartPluginMock.createStartContract(), - capabilities: { - ...capabilities, - alerting: { - delete: true, - save: true, - show: true, - }, - }, - setBreadcrumbs: jest.fn(), actionTypeRegistry: actionTypeRegistry as any, alertTypeRegistry: alertTypeRegistry as any, }; @@ -86,29 +66,29 @@ describe.skip('alert_add', () => { actionTypeRegistry.list.mockReturnValue([actionTypeModel]); actionTypeRegistry.has.mockReturnValue(true); + wrapper = mountWithIntl( + <AlertsContextProvider + value={{ + addFlyoutVisible: true, + setAddFlyoutVisibility: state => {}, + reloadAlerts: () => { + return new Promise<void>(() => {}); + }, + http: deps.http, + actionTypeRegistry: deps.actionTypeRegistry, + alertTypeRegistry: deps.alertTypeRegistry, + toastNotifications: deps.toastNotifications, + uiSettings: deps.uiSettings, + }} + > + <AlertAdd consumer={'alerting'} /> + </AlertsContextProvider> + ); + // Wait for active space to resolve before requesting the component to update await act(async () => { - if (deps) { - wrapper = mountWithIntl( - <AlertsContextProvider - value={{ - addFlyoutVisible: true, - setAddFlyoutVisibility: state => {}, - reloadAlerts: () => { - return new Promise<void>(() => {}); - }, - http: deps.http, - actionTypeRegistry: deps.actionTypeRegistry, - alertTypeRegistry: deps.alertTypeRegistry, - toastNotifications: deps.toastNotifications, - uiSettings: deps.uiSettings, - }} - > - <AlertAdd consumer={'alerting'} /> - </AlertsContextProvider> - ); - } + await nextTick(); + wrapper.update(); }); - await waitForRender(wrapper); } it('renders alert add flyout', async () => { @@ -117,9 +97,3 @@ describe.skip('alert_add', () => { expect(wrapper.find('[data-test-subj="saveAlertButton"]').exists()).toBeTruthy(); }); }); - -async function waitForRender(wrapper: ReactWrapper<any, any>) { - await Promise.resolve(); - await Promise.resolve(); - wrapper.update(); -} From 992e2237003e6452ae229e05faafdd6e3b8e481b Mon Sep 17 00:00:00 2001 From: Spencer <email@spalger.com> Date: Tue, 3 Mar 2020 14:47:23 -0700 Subject: [PATCH 073/120] [test-es-cluster] remove random cluster name (#58762) * [test-es-cluster] remove random cluster name * make cluster names unique in parallel test groups * specify default customEsArgs * share ci parallel prefix logic to avoid use of wrong env var * remove - postfix from tag, add docs with explaination * fix file name * ci parallel process prefix doesn't need to be exported so don't Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../src/ci_parallel_process_prefix.ts | 30 +++++++++++++++++++ .../functional_tests/lib/run_elasticsearch.js | 3 +- packages/kbn-test/src/junit_report_path.ts | 8 ++--- .../src/legacy_es/legacy_es_test_cluster.js | 30 ++++++++++--------- 4 files changed, 50 insertions(+), 21 deletions(-) create mode 100644 packages/kbn-test/src/ci_parallel_process_prefix.ts diff --git a/packages/kbn-test/src/ci_parallel_process_prefix.ts b/packages/kbn-test/src/ci_parallel_process_prefix.ts new file mode 100644 index 00000000000000..67dafc7e853242 --- /dev/null +++ b/packages/kbn-test/src/ci_parallel_process_prefix.ts @@ -0,0 +1,30 @@ +/* + * 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. + */ + +const job = process.env.JOB ? `job-${process.env.JOB}-` : ''; +const num = process.env.CI_PARALLEL_PROCESS_NUMBER + ? `worker-${process.env.CI_PARALLEL_PROCESS_NUMBER}-` + : ''; + +/** + * A prefix string that is unique for each parallel CI process that + * is an empty string outside of CI, so it can be safely injected + * into strings as a prefix + */ +export const CI_PARALLEL_PROCESS_PREFIX = `${job}${num}`; diff --git a/packages/kbn-test/src/functional_tests/lib/run_elasticsearch.js b/packages/kbn-test/src/functional_tests/lib/run_elasticsearch.js index 136704a639bff8..5f58190078f0d2 100644 --- a/packages/kbn-test/src/functional_tests/lib/run_elasticsearch.js +++ b/packages/kbn-test/src/functional_tests/lib/run_elasticsearch.js @@ -42,10 +42,11 @@ export async function runElasticsearch({ config, options }) { esFrom: esFrom || config.get('esTestCluster.from'), dataArchive: config.get('esTestCluster.dataArchive'), esArgs, + esEnvVars, ssl, }); - await cluster.start(esArgs, esEnvVars); + await cluster.start(); if (isSecurityEnabled) { await setupUsers({ diff --git a/packages/kbn-test/src/junit_report_path.ts b/packages/kbn-test/src/junit_report_path.ts index d46c9455dcff0a..90405d7a89c024 100644 --- a/packages/kbn-test/src/junit_report_path.ts +++ b/packages/kbn-test/src/junit_report_path.ts @@ -18,17 +18,13 @@ */ import { resolve } from 'path'; - -const job = process.env.JOB ? `job-${process.env.JOB}-` : ''; -const num = process.env.CI_PARALLEL_PROCESS_NUMBER - ? `worker-${process.env.CI_PARALLEL_PROCESS_NUMBER}-` - : ''; +import { CI_PARALLEL_PROCESS_PREFIX } from './ci_parallel_process_prefix'; export function makeJunitReportPath(rootDirectory: string, reportName: string) { return resolve( rootDirectory, 'target/junit', process.env.JOB || '.', - `TEST-${job}${num}${reportName}.xml` + `TEST-${CI_PARALLEL_PROCESS_PREFIX}${reportName}.xml` ); } diff --git a/packages/kbn-test/src/legacy_es/legacy_es_test_cluster.js b/packages/kbn-test/src/legacy_es/legacy_es_test_cluster.js index 355304c86a3c34..f795b32d78b8e8 100644 --- a/packages/kbn-test/src/legacy_es/legacy_es_test_cluster.js +++ b/packages/kbn-test/src/legacy_es/legacy_es_test_cluster.js @@ -22,6 +22,7 @@ import { format } from 'url'; import { get } from 'lodash'; import toPath from 'lodash/internal/toPath'; import { Cluster } from '@kbn/es'; +import { CI_PARALLEL_PROCESS_PREFIX } from '../ci_parallel_process_prefix'; import { esTestConfig } from './es_test_config'; import { KIBANA_ROOT } from '../'; @@ -38,14 +39,22 @@ export function createLegacyEsTestCluster(options = {}) { basePath = resolve(KIBANA_ROOT, '.es'), esFrom = esTestConfig.getBuildFrom(), dataArchive, - esArgs, + esArgs: customEsArgs = [], + esEnvVars, + clusterName: customClusterName = 'es-test-cluster', ssl, } = options; - const randomHash = Math.random() - .toString(36) - .substring(2); - const clusterName = `test-${randomHash}`; + const clusterName = `${CI_PARALLEL_PROCESS_PREFIX}${customClusterName}`; + + const esArgs = [ + `cluster.name=${clusterName}`, + `http.port=${port}`, + 'discovery.type=single-node', + `transport.port=${esTestConfig.getTransportPort()}`, + ...customEsArgs, + ]; + const config = { version: esTestConfig.getVersion(), installPath: resolve(basePath, clusterName), @@ -55,7 +64,6 @@ export function createLegacyEsTestCluster(options = {}) { basePath, esArgs, }; - const transportPort = esTestConfig.getTransportPort(); const cluster = new Cluster({ log, ssl }); @@ -67,7 +75,7 @@ export function createLegacyEsTestCluster(options = {}) { return esFrom === 'snapshot' ? 3 * minute : 6 * minute; } - async start(esArgs = [], esEnvVars) { + async start() { let installPath; if (esFrom === 'source') { @@ -86,13 +94,7 @@ export function createLegacyEsTestCluster(options = {}) { await cluster.start(installPath, { password: config.password, - esArgs: [ - `cluster.name=${clusterName}`, - `http.port=${port}`, - 'discovery.type=single-node', - `transport.port=${transportPort}`, - ...esArgs, - ], + esArgs, esEnvVars, }); } From 1fd343b61f28ad1779f91d2f09b32442049259dd Mon Sep 17 00:00:00 2001 From: Nathan Reese <reese.nathan@gmail.com> Date: Tue, 3 Mar 2020 15:03:05 -0700 Subject: [PATCH 074/120] [Maps] source descriptor types (#58791) * [Maps] source descriptor types * make SORT_ORDER an enum * fix type error * finish defining descriptors for all sources * fill out layer descriptor * fix type * make some properties optional to avoid type explosions * make type optional * nest types a bit more so they better match class structor * in progress work from pairing with Thomas * one more thing * add unit test (#35) * add functions removed from fields typescript converstion * move joins from VectorTileLayer constructor to VectorLayer constructor, add mock to fix map_selectors test Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> Co-authored-by: Thomas Neirynck <thomas@elastic.co> --- .../legacy/plugins/maps/common/constants.ts | 38 ++++-- .../plugins/maps/common/descriptor_types.d.ts | 117 ++++++++++++++++-- .../maps/public/layers/fields/field.js | 63 ---------- .../maps/public/layers/fields/field.ts | 84 +++++++++++++ .../plugins/maps/public/layers/layer.d.ts | 4 +- .../es_geo_grid_source/convert_to_geojson.js | 2 +- .../convert_to_geojson.test.ts | 3 +- .../create_source_editor.js | 2 +- .../es_geo_grid_source/es_geo_grid_source.js | 4 +- .../sources/es_geo_grid_source/render_as.js | 11 -- .../es_geo_grid_source/resolution_editor.js | 2 +- .../update_source_editor.js | 2 +- .../es_search_source/es_search_source.d.ts | 12 ++ .../es_search_source/es_search_source.test.ts | 26 ++++ .../es_source.d.ts} | 8 +- .../maps/public/layers/sources/source.d.ts | 4 +- .../public/layers/sources/vector_source.d.ts | 41 ++++++ .../public/layers/sources/xyz_tms_source.d.ts | 4 +- .../layers/sources/xyz_tms_source.test.ts | 4 +- .../layers/styles/heatmap/heatmap_style.js | 3 +- .../maps/public/layers/tile_layer.d.ts | 4 +- .../maps/public/layers/tile_layer.test.ts | 8 +- .../maps/public/layers/vector_layer.d.ts | 19 +++ .../maps/public/layers/vector_layer.js | 17 ++- .../maps/public/selectors/map_selectors.js | 10 +- .../public/selectors/map_selectors.test.js | 1 + .../server/maps_telemetry/maps_telemetry.ts | 6 +- 27 files changed, 361 insertions(+), 138 deletions(-) delete mode 100644 x-pack/legacy/plugins/maps/public/layers/fields/field.js create mode 100644 x-pack/legacy/plugins/maps/public/layers/fields/field.ts delete mode 100644 x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/render_as.js create mode 100644 x-pack/legacy/plugins/maps/public/layers/sources/es_search_source/es_search_source.d.ts create mode 100644 x-pack/legacy/plugins/maps/public/layers/sources/es_search_source/es_search_source.test.ts rename x-pack/legacy/plugins/maps/public/layers/{grid_resolution.js => sources/es_source.d.ts} (67%) create mode 100644 x-pack/legacy/plugins/maps/public/layers/sources/vector_source.d.ts create mode 100644 x-pack/legacy/plugins/maps/public/layers/vector_layer.d.ts diff --git a/x-pack/legacy/plugins/maps/common/constants.ts b/x-pack/legacy/plugins/maps/common/constants.ts index 0e93fd65937103..4f1b3223967a58 100644 --- a/x-pack/legacy/plugins/maps/common/constants.ts +++ b/x-pack/legacy/plugins/maps/common/constants.ts @@ -43,10 +43,10 @@ export const LAYER_TYPE = { HEATMAP: 'HEATMAP', }; -export const SORT_ORDER = { - ASC: 'asc', - DESC: 'desc', -}; +export enum SORT_ORDER { + ASC = 'asc', + DESC = 'desc', +} export const EMS_TMS = 'EMS_TMS'; export const EMS_FILE = 'EMS_FILE'; @@ -117,15 +117,27 @@ export const DRAW_TYPE = { POLYGON: 'POLYGON', }; -export const AGG_TYPE = { - AVG: 'avg', - COUNT: 'count', - MAX: 'max', - MIN: 'min', - SUM: 'sum', - TERMS: 'terms', - UNIQUE_COUNT: 'cardinality', -}; +export enum AGG_TYPE { + AVG = 'avg', + COUNT = 'count', + MAX = 'max', + MIN = 'min', + SUM = 'sum', + TERMS = 'terms', + UNIQUE_COUNT = 'cardinality', +} + +export enum RENDER_AS { + HEATMAP = 'heatmap', + POINT = 'point', + GRID = 'grid', +} + +export enum GRID_RESOLUTION { + COARSE = 'COARSE', + FINE = 'FINE', + MOST_FINE = 'MOST_FINE', +} export const COUNT_PROP_LABEL = i18n.translate('xpack.maps.aggs.defaultCountLabel', { defaultMessage: 'count', diff --git a/x-pack/legacy/plugins/maps/common/descriptor_types.d.ts b/x-pack/legacy/plugins/maps/common/descriptor_types.d.ts index c024721dfb870f..f1d172cf5ad168 100644 --- a/x-pack/legacy/plugins/maps/common/descriptor_types.d.ts +++ b/x-pack/legacy/plugins/maps/common/descriptor_types.d.ts @@ -3,18 +3,119 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ +/* eslint-disable @typescript-eslint/consistent-type-definitions */ -export interface ISourceDescriptor { - id: string; +import { AGG_TYPE, GRID_RESOLUTION, RENDER_AS, SORT_ORDER } from './constants'; + +export type AbstractSourceDescriptor = { + id?: string; + type: string; +}; + +export type EMSTMSSourceDescriptor = AbstractSourceDescriptor & { + // id: EMS TMS layer id. Used when !isAutoSelect + isAutoSelect: boolean; +}; + +export type EMSFileSourceDescriptor = AbstractSourceDescriptor & { + // id: EMS file id + + tooltipProperties: string[]; +}; + +export type AbstractESSourceDescriptor = AbstractSourceDescriptor & { + // id: UUID + indexPatternId: string; + geoField?: string; +}; + +export type AggDescriptor = { + field?: string; // count aggregation does not require field. All other aggregation types do + label?: string; + type: AGG_TYPE; +}; + +export type AbstractESAggDescriptor = AbstractESSourceDescriptor & { + metrics: AggDescriptor[]; +}; + +export type ESGeoGridSourceDescriptor = AbstractESAggDescriptor & { + requestType: RENDER_AS; + resolution: GRID_RESOLUTION; +}; + +export type ESSearchSourceDescriptor = AbstractESSourceDescriptor & { + filterByMapBounds?: boolean; + tooltipProperties?: string[]; + sortField?: string; + sortOrder?: SORT_ORDER; + useTopHits?: boolean; + topHitsSplitField?: string; + topHitsSize?: number; +}; + +export type ESPewPewSourceDescriptor = AbstractESAggDescriptor & { + sourceGeoField: string; + destGeoField: string; +}; + +export type ESTermSourceDescriptor = AbstractESAggDescriptor & { + indexPatternTitle: string; + term: string; // term field name +}; + +export type KibanaRegionmapSourceDescriptor = { + type: string; + name: string; +}; + +export type KibanaTilemapSourceDescriptor = { + type: string; +}; + +export type WMSSourceDescriptor = { type: string; -} + serviceUrl: string; + layers: string; + styles: string; + attributionText: string; + attributionUrl: string; +}; -export interface IXYZTMSSourceDescriptor extends ISourceDescriptor { +export type XYZTMSSourceDescriptor = { + id: string; + type: string; urlTemplate: string; -} +}; -export interface ILayerDescriptor { - sourceDescriptor: ISourceDescriptor; +export type JoinDescriptor = { + leftField: string; + right: ESTermSourceDescriptor; +}; + +export type DataRequestDescriptor = { + dataId: string; + dataMetaAtStart: object; + dataRequestToken: symbol; + data: object; + dataMeta: object; +}; + +export type LayerDescriptor = { + __dataRequests?: DataRequestDescriptor[]; + __isInErrorState?: boolean; + __errorMessage?: string; + alpha?: number; id: string; label?: string; -} + minZoom?: number; + maxZoom?: number; + sourceDescriptor: AbstractSourceDescriptor; + type?: string; + visible?: boolean; +}; + +export type VectorLayerDescriptor = LayerDescriptor & { + joins?: JoinDescriptor[]; + style?: unknown; +}; diff --git a/x-pack/legacy/plugins/maps/public/layers/fields/field.js b/x-pack/legacy/plugins/maps/public/layers/fields/field.js deleted file mode 100644 index 2dd553f66755fc..00000000000000 --- a/x-pack/legacy/plugins/maps/public/layers/fields/field.js +++ /dev/null @@ -1,63 +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 { FIELD_ORIGIN } from '../../../common/constants'; - -export class AbstractField { - constructor({ fieldName, source, origin }) { - this._fieldName = fieldName; - this._source = source; - this._origin = origin || FIELD_ORIGIN.SOURCE; - } - - getName() { - return this._fieldName; - } - - getRootName() { - return this.getName(); - } - - canValueBeFormatted() { - return true; - } - - getSource() { - return this._source; - } - - isValid() { - return !!this._fieldName; - } - - async getDataType() { - return 'string'; - } - - async getLabel() { - return this._fieldName; - } - - async createTooltipProperty() { - throw new Error('must implement Field#createTooltipProperty'); - } - - getOrigin() { - return this._origin; - } - - supportsFieldMeta() { - return false; - } - - async getOrdinalFieldMetaRequest(/* config */) { - return null; - } - - async getCategoricalFieldMetaRequest() { - return null; - } -} diff --git a/x-pack/legacy/plugins/maps/public/layers/fields/field.ts b/x-pack/legacy/plugins/maps/public/layers/fields/field.ts new file mode 100644 index 00000000000000..57a916e93ffe0a --- /dev/null +++ b/x-pack/legacy/plugins/maps/public/layers/fields/field.ts @@ -0,0 +1,84 @@ +/* + * 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 { FIELD_ORIGIN } from '../../../common/constants'; +import { IVectorSource } from '../sources/vector_source'; + +export interface IField { + getName(): string; + getRootName(): string; + canValueBeFormatted(): boolean; + getLabel(): Promise<string>; + getDataType(): Promise<string>; +} + +export class AbstractField implements IField { + private _fieldName: string; + private _source: IVectorSource; + private _origin: string; + + constructor({ + fieldName, + source, + origin, + }: { + fieldName: string; + source: IVectorSource; + origin: string; + }) { + this._fieldName = fieldName; + this._source = source; + this._origin = origin || FIELD_ORIGIN.SOURCE; + } + + getName(): string { + return this._fieldName; + } + + getRootName(): string { + return this.getName(); + } + + canValueBeFormatted(): boolean { + return true; + } + + getSource(): IVectorSource { + return this._source; + } + + isValid(): boolean { + return !!this._fieldName; + } + + async getDataType(): Promise<string> { + return 'string'; + } + + async getLabel(): Promise<string> { + return this._fieldName; + } + + async createTooltipProperty(): Promise<unknown> { + throw new Error('must implement Field#createTooltipProperty'); + } + + getOrigin(): string { + return this._origin; + } + + supportsFieldMeta(): boolean { + return false; + } + + async getOrdinalFieldMetaRequest(/* config */): Promise<unknown> { + return null; + } + + async getCategoricalFieldMetaRequest(): Promise<unknown> { + return null; + } +} diff --git a/x-pack/legacy/plugins/maps/public/layers/layer.d.ts b/x-pack/legacy/plugins/maps/public/layers/layer.d.ts index ed7dcb062d8c40..eebbaac7d4f977 100644 --- a/x-pack/legacy/plugins/maps/public/layers/layer.d.ts +++ b/x-pack/legacy/plugins/maps/public/layers/layer.d.ts @@ -3,7 +3,7 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ -import { ILayerDescriptor } from '../../common/descriptor_types'; +import { LayerDescriptor } from '../../common/descriptor_types'; import { ISource } from './sources/source'; export interface ILayer { @@ -11,7 +11,7 @@ export interface ILayer { } export interface ILayerArguments { - layerDescriptor: ILayerDescriptor; + layerDescriptor: LayerDescriptor; source: ISource; } diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/convert_to_geojson.js b/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/convert_to_geojson.js index bb9bf1b508f941..121ce3c7ffe920 100644 --- a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/convert_to_geojson.js +++ b/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/convert_to_geojson.js @@ -5,7 +5,7 @@ */ import _ from 'lodash'; -import { RENDER_AS } from './render_as'; +import { RENDER_AS } from '../../../../common/constants'; import { getTileBoundingBox } from './geo_tile_utils'; import { extractPropertiesFromBucket } from '../../util/es_agg_utils'; import { clamp } from '../../../elasticsearch_geo_utils'; diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/convert_to_geojson.test.ts b/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/convert_to_geojson.test.ts index ba79464a01a9bf..a8223c36df349a 100644 --- a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/convert_to_geojson.test.ts +++ b/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/convert_to_geojson.test.ts @@ -8,8 +8,7 @@ jest.mock('../../../kibana_services', () => {}); // @ts-ignore import { convertCompositeRespToGeoJson, convertRegularRespToGeoJson } from './convert_to_geojson'; -// @ts-ignore -import { RENDER_AS } from './render_as'; +import { RENDER_AS } from '../../../../common/constants'; describe('convertCompositeRespToGeoJson', () => { const esResponse = { diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/create_source_editor.js b/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/create_source_editor.js index bd074386edb3f2..00cbfbbb6c5a78 100644 --- a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/create_source_editor.js +++ b/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/create_source_editor.js @@ -9,7 +9,7 @@ import React, { Fragment, Component } from 'react'; import PropTypes from 'prop-types'; import { SingleFieldSelect } from '../../../components/single_field_select'; -import { RENDER_AS } from './render_as'; +import { RENDER_AS } from '../../../../common/constants'; import { indexPatternService } from '../../../kibana_services'; import { NoIndexPatternCallout } from '../../../components/no_index_pattern_callout'; import { i18n } from '@kbn/i18n'; diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/es_geo_grid_source.js b/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/es_geo_grid_source.js index a0ddf584bcebc1..b2463275dad0a7 100644 --- a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/es_geo_grid_source.js +++ b/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/es_geo_grid_source.js @@ -17,10 +17,8 @@ import { VECTOR_STYLES, } from '../../styles/vector/vector_style_defaults'; import { COLOR_GRADIENTS } from '../../styles/color_utils'; -import { RENDER_AS } from './render_as'; import { CreateSourceEditor } from './create_source_editor'; import { UpdateSourceEditor } from './update_source_editor'; -import { GRID_RESOLUTION } from '../../grid_resolution'; import { AGG_TYPE, DEFAULT_MAX_BUCKETS_LIMIT, @@ -28,6 +26,8 @@ import { ES_GEO_GRID, COUNT_PROP_NAME, COLOR_MAP_TYPE, + RENDER_AS, + GRID_RESOLUTION, } from '../../../../common/constants'; import { i18n } from '@kbn/i18n'; import { getDataSourceLabel } from '../../../../common/i18n_getters'; diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/render_as.js b/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/render_as.js deleted file mode 100644 index caf5324d9ecc8a..00000000000000 --- a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/render_as.js +++ /dev/null @@ -1,11 +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. - */ - -export const RENDER_AS = { - HEATMAP: 'heatmap', - POINT: 'point', - GRID: 'grid', -}; diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/resolution_editor.js b/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/resolution_editor.js index ff3e7c3458a5ae..b2314dd0075094 100644 --- a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/resolution_editor.js +++ b/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/resolution_editor.js @@ -5,7 +5,7 @@ */ import React from 'react'; -import { GRID_RESOLUTION } from '../../grid_resolution'; +import { GRID_RESOLUTION } from '../../../../common/constants'; import { EuiSelect, EuiFormRow } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/update_source_editor.js b/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/update_source_editor.js index a7f31f1ee99f77..7b91e6ddb55d58 100644 --- a/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/update_source_editor.js +++ b/x-pack/legacy/plugins/maps/public/layers/sources/es_geo_grid_source/update_source_editor.js @@ -6,7 +6,7 @@ import React, { Fragment, Component } from 'react'; -import { RENDER_AS } from './render_as'; +import { RENDER_AS } from '../../../../common/constants'; import { MetricsEditor } from '../../../components/metrics_editor'; import { indexPatternService } from '../../../kibana_services'; import { ResolutionEditor } from './resolution_editor'; diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/es_search_source/es_search_source.d.ts b/x-pack/legacy/plugins/maps/public/layers/sources/es_search_source/es_search_source.d.ts new file mode 100644 index 00000000000000..5d8188f19f4eaa --- /dev/null +++ b/x-pack/legacy/plugins/maps/public/layers/sources/es_search_source/es_search_source.d.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 { AbstractESSource } from '../es_source'; +import { ESSearchSourceDescriptor } from '../../../../common/descriptor_types'; + +export class ESSearchSource extends AbstractESSource { + constructor(sourceDescriptor: ESSearchSourceDescriptor, inspectorAdapters: unknown); +} diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/es_search_source/es_search_source.test.ts b/x-pack/legacy/plugins/maps/public/layers/sources/es_search_source/es_search_source.test.ts new file mode 100644 index 00000000000000..1e10923cea1d0e --- /dev/null +++ b/x-pack/legacy/plugins/maps/public/layers/sources/es_search_source/es_search_source.test.ts @@ -0,0 +1,26 @@ +/* + * 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. + */ +jest.mock('ui/new_platform'); + +import { ESSearchSource } from './es_search_source'; +import { VectorLayer } from '../../vector_layer'; +import { ES_SEARCH } from '../../../../common/constants'; +import { ESSearchSourceDescriptor } from '../../../../common/descriptor_types'; + +const descriptor: ESSearchSourceDescriptor = { + type: ES_SEARCH, + id: '1234', + indexPatternId: 'myIndexPattern', + geoField: 'myLocation', +}; + +describe('ES Search Source', () => { + it('should create a vector layer', () => { + const source = new ESSearchSource(descriptor, null); + const layer = source.createDefaultLayer(); + expect(layer instanceof VectorLayer).toEqual(true); + }); +}); diff --git a/x-pack/legacy/plugins/maps/public/layers/grid_resolution.js b/x-pack/legacy/plugins/maps/public/layers/sources/es_source.d.ts similarity index 67% rename from x-pack/legacy/plugins/maps/public/layers/grid_resolution.js rename to x-pack/legacy/plugins/maps/public/layers/sources/es_source.d.ts index a5d39a8ff5ed02..2aaaad15d6321e 100644 --- a/x-pack/legacy/plugins/maps/public/layers/grid_resolution.js +++ b/x-pack/legacy/plugins/maps/public/layers/sources/es_source.d.ts @@ -4,8 +4,6 @@ * you may not use this file except in compliance with the Elastic License. */ -export const GRID_RESOLUTION = { - COARSE: 'COARSE', - FINE: 'FINE', - MOST_FINE: 'MOST_FINE', -}; +import { AbstractVectorSource } from './vector_source'; + +export class AbstractESSource extends AbstractVectorSource {} diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/source.d.ts b/x-pack/legacy/plugins/maps/public/layers/sources/source.d.ts index 372981de425979..b5b34efabda0ae 100644 --- a/x-pack/legacy/plugins/maps/public/layers/sources/source.d.ts +++ b/x-pack/legacy/plugins/maps/public/layers/sources/source.d.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ISourceDescriptor } from '../../../common/descriptor_types'; +import { AbstractSourceDescriptor } from '../../../common/descriptor_types'; import { ILayer } from '../layer'; export interface ISource { @@ -13,7 +13,7 @@ export interface ISource { } export class AbstractSource implements ISource { - constructor(sourceDescriptor: ISourceDescriptor, inspectorAdapters: object); + constructor(sourceDescriptor: AbstractSourceDescriptor, inspectorAdapters: object); createDefaultLayer(): ILayer; getDisplayName(): Promise<string>; } diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/vector_source.d.ts b/x-pack/legacy/plugins/maps/public/layers/sources/vector_source.d.ts new file mode 100644 index 00000000000000..f6f4dff88bddab --- /dev/null +++ b/x-pack/legacy/plugins/maps/public/layers/sources/vector_source.d.ts @@ -0,0 +1,41 @@ +/* + * 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. + */ +/* eslint-disable @typescript-eslint/consistent-type-definitions */ + +import { AbstractSource, ISource } from './source'; +import { IField } from '../fields/field'; + +export type GeoJsonFetchMeta = { + areResultsTrimmed: boolean; + areEntitiesTrimmed?: boolean; + entityCount?: number; + totalEntities?: number; +}; + +export type GeoJsonWithMeta = { + data: unknown; // geojson feature collection + meta?: GeoJsonFetchMeta; +}; + +export interface IVectorSource extends ISource { + getGeoJsonWithMeta( + layerName: 'string', + searchFilters: unknown[], + registerCancelCallback: (callback: () => void) => void + ): Promise<GeoJsonWithMeta>; + + getFields(): Promise<IField[]>; +} + +export class AbstractVectorSource extends AbstractSource { + getGeoJsonWithMeta( + layerName: 'string', + searchFilters: unknown[], + registerCancelCallback: (callback: () => void) => void + ): Promise<GeoJsonWithMeta>; + + getFields(): Promise<IField[]>; +} diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/xyz_tms_source.d.ts b/x-pack/legacy/plugins/maps/public/layers/sources/xyz_tms_source.d.ts index 1150c39b79db52..579c9debeab3e3 100644 --- a/x-pack/legacy/plugins/maps/public/layers/sources/xyz_tms_source.d.ts +++ b/x-pack/legacy/plugins/maps/public/layers/sources/xyz_tms_source.d.ts @@ -4,8 +4,8 @@ * you may not use this file except in compliance with the Elastic License. */ import { AbstractTMSSource } from './tms_source'; -import { IXYZTMSSourceDescriptor } from '../../../common/descriptor_types'; +import { XYZTMSSourceDescriptor } from '../../../common/descriptor_types'; export class XYZTMSSource extends AbstractTMSSource { - constructor(sourceDescriptor: IXYZTMSSourceDescriptor, inspectorAdapters: unknown); + constructor(sourceDescriptor: XYZTMSSourceDescriptor, inspectorAdapters: unknown); } diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/xyz_tms_source.test.ts b/x-pack/legacy/plugins/maps/public/layers/sources/xyz_tms_source.test.ts index 5de85adde158ff..e5ab5e57122ba7 100644 --- a/x-pack/legacy/plugins/maps/public/layers/sources/xyz_tms_source.test.ts +++ b/x-pack/legacy/plugins/maps/public/layers/sources/xyz_tms_source.test.ts @@ -8,9 +8,9 @@ import { XYZTMSSource } from './xyz_tms_source'; import { ILayer } from '../layer'; import { TileLayer } from '../tile_layer'; import { EMS_XYZ } from '../../../common/constants'; -import { IXYZTMSSourceDescriptor } from '../../../common/descriptor_types'; +import { XYZTMSSourceDescriptor } from '../../../common/descriptor_types'; -const descriptor: IXYZTMSSourceDescriptor = { +const descriptor: XYZTMSSourceDescriptor = { type: EMS_XYZ, urlTemplate: 'https://example.com/{x}/{y}/{z}.png', id: 'foobar', diff --git a/x-pack/legacy/plugins/maps/public/layers/styles/heatmap/heatmap_style.js b/x-pack/legacy/plugins/maps/public/layers/styles/heatmap/heatmap_style.js index 1dd219d4c4cad0..dc3cfc3ffbdb8d 100644 --- a/x-pack/legacy/plugins/maps/public/layers/styles/heatmap/heatmap_style.js +++ b/x-pack/legacy/plugins/maps/public/layers/styles/heatmap/heatmap_style.js @@ -5,12 +5,11 @@ */ import React from 'react'; -import { GRID_RESOLUTION } from '../../grid_resolution'; import { AbstractStyle } from '../abstract_style'; import { HeatmapStyleEditor } from './components/heatmap_style_editor'; import { HeatmapLegend } from './components/legend/heatmap_legend'; import { DEFAULT_HEATMAP_COLOR_RAMP_NAME } from './components/heatmap_constants'; -import { LAYER_STYLE_TYPE } from '../../../../common/constants'; +import { LAYER_STYLE_TYPE, GRID_RESOLUTION } from '../../../../common/constants'; import { getOrdinalColorRampStops } from '../color_utils'; import { i18n } from '@kbn/i18n'; import { EuiIcon } from '@elastic/eui'; diff --git a/x-pack/legacy/plugins/maps/public/layers/tile_layer.d.ts b/x-pack/legacy/plugins/maps/public/layers/tile_layer.d.ts index fdb37a8af805f8..53e8c388ee4c2e 100644 --- a/x-pack/legacy/plugins/maps/public/layers/tile_layer.d.ts +++ b/x-pack/legacy/plugins/maps/public/layers/tile_layer.d.ts @@ -6,11 +6,11 @@ import { AbstractLayer, ILayerArguments } from './layer'; import { ITMSSource } from './sources/tms_source'; -import { ILayerDescriptor } from '../../common/descriptor_types'; +import { LayerDescriptor } from '../../common/descriptor_types'; interface ITileLayerArguments extends ILayerArguments { source: ITMSSource; - layerDescriptor: ILayerDescriptor; + layerDescriptor: LayerDescriptor; } export class TileLayer extends AbstractLayer { diff --git a/x-pack/legacy/plugins/maps/public/layers/tile_layer.test.ts b/x-pack/legacy/plugins/maps/public/layers/tile_layer.test.ts index b2d2b08c637cf7..065fbd79d97895 100644 --- a/x-pack/legacy/plugins/maps/public/layers/tile_layer.test.ts +++ b/x-pack/legacy/plugins/maps/public/layers/tile_layer.test.ts @@ -6,19 +6,19 @@ import { TileLayer } from './tile_layer'; import { EMS_XYZ } from '../../common/constants'; -import { IXYZTMSSourceDescriptor } from '../../common/descriptor_types'; +import { XYZTMSSourceDescriptor } from '../../common/descriptor_types'; import { ITMSSource } from './sources/tms_source'; import { ILayer } from './layer'; -const sourceDescriptor: IXYZTMSSourceDescriptor = { +const sourceDescriptor: XYZTMSSourceDescriptor = { type: EMS_XYZ, urlTemplate: 'https://example.com/{x}/{y}/{z}.png', id: 'foobar', }; class MockTileSource implements ITMSSource { - private _descriptor: IXYZTMSSourceDescriptor; - constructor(descriptor: IXYZTMSSourceDescriptor) { + private _descriptor: XYZTMSSourceDescriptor; + constructor(descriptor: XYZTMSSourceDescriptor) { this._descriptor = descriptor; } createDefaultLayer(): ILayer { diff --git a/x-pack/legacy/plugins/maps/public/layers/vector_layer.d.ts b/x-pack/legacy/plugins/maps/public/layers/vector_layer.d.ts new file mode 100644 index 00000000000000..e3ef744525d633 --- /dev/null +++ b/x-pack/legacy/plugins/maps/public/layers/vector_layer.d.ts @@ -0,0 +1,19 @@ +/* + * 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. + */ +/* eslint-disable @typescript-eslint/consistent-type-definitions */ + +import { AbstractLayer } from './layer'; +import { IVectorSource } from './sources/vector_source'; +import { VectorLayerDescriptor } from '../../common/descriptor_types'; + +type VectorLayerArguments = { + source: IVectorSource; + layerDescriptor: VectorLayerDescriptor; +}; + +export class VectorLayer extends AbstractLayer { + constructor(options: VectorLayerArguments); +} diff --git a/x-pack/legacy/plugins/maps/public/layers/vector_layer.js b/x-pack/legacy/plugins/maps/public/layers/vector_layer.js index c515feecc15513..b03dfc38f38418 100644 --- a/x-pack/legacy/plugins/maps/public/layers/vector_layer.js +++ b/x-pack/legacy/plugins/maps/public/layers/vector_layer.js @@ -8,7 +8,6 @@ import turf from 'turf'; import React from 'react'; import { AbstractLayer } from './layer'; import { VectorStyle } from './styles/vector/vector_style'; -import { InnerJoin } from './joins/inner_join'; import { FEATURE_ID_PROPERTY_NAME, SOURCE_DATA_ID_ORIGIN, @@ -49,18 +48,16 @@ export class VectorLayer extends AbstractLayer { layerDescriptor.style = VectorStyle.createDescriptor(styleProperties); } + if (!options.joins) { + layerDescriptor.joins = []; + } + return layerDescriptor; } - constructor(options) { - super(options); - this._joins = []; - if (options.layerDescriptor.joins) { - options.layerDescriptor.joins.forEach(joinDescriptor => { - const join = new InnerJoin(joinDescriptor, this._source); - this._joins.push(join); - }); - } + constructor({ layerDescriptor, source, joins = [] }) { + super({ layerDescriptor, source }); + this._joins = joins; this._style = new VectorStyle(this._descriptor.style, this._source, this); } diff --git a/x-pack/legacy/plugins/maps/public/selectors/map_selectors.js b/x-pack/legacy/plugins/maps/public/selectors/map_selectors.js index 4074344916390c..ab0926ab40070b 100644 --- a/x-pack/legacy/plugins/maps/public/selectors/map_selectors.js +++ b/x-pack/legacy/plugins/maps/public/selectors/map_selectors.js @@ -14,6 +14,7 @@ import { ALL_SOURCES } from '../layers/sources/all_sources'; import { timefilter } from 'ui/timefilter'; import { getInspectorAdapters } from '../reducers/non_serializable_instances'; import { copyPersistentState, TRACKED_LAYER_DESCRIPTOR } from '../reducers/util'; +import { InnerJoin } from '../layers/joins/inner_join'; function createLayerInstance(layerDescriptor, inspectorAdapters) { const source = createSourceInstance(layerDescriptor.sourceDescriptor, inspectorAdapters); @@ -22,7 +23,14 @@ function createLayerInstance(layerDescriptor, inspectorAdapters) { case TileLayer.type: return new TileLayer({ layerDescriptor, source }); case VectorLayer.type: - return new VectorLayer({ layerDescriptor, source }); + const joins = []; + if (layerDescriptor.joins) { + layerDescriptor.joins.forEach(joinDescriptor => { + const join = new InnerJoin(joinDescriptor, source); + joins.push(join); + }); + } + return new VectorLayer({ layerDescriptor, source, joins }); case VectorTileLayer.type: return new VectorTileLayer({ layerDescriptor, source }); case HeatmapLayer.type: diff --git a/x-pack/legacy/plugins/maps/public/selectors/map_selectors.test.js b/x-pack/legacy/plugins/maps/public/selectors/map_selectors.test.js index da45047d3a5671..995030d024ddf3 100644 --- a/x-pack/legacy/plugins/maps/public/selectors/map_selectors.test.js +++ b/x-pack/legacy/plugins/maps/public/selectors/map_selectors.test.js @@ -8,6 +8,7 @@ jest.mock('../layers/vector_layer', () => {}); jest.mock('../layers/heatmap_layer', () => {}); jest.mock('../layers/vector_tile_layer', () => {}); jest.mock('../layers/sources/all_sources', () => {}); +jest.mock('../layers/joins/inner_join', () => {}); jest.mock('../reducers/non_serializable_instances', () => ({ getInspectorAdapters: () => { return {}; diff --git a/x-pack/legacy/plugins/maps/server/maps_telemetry/maps_telemetry.ts b/x-pack/legacy/plugins/maps/server/maps_telemetry/maps_telemetry.ts index 863dbee7b5c8b4..3ce46e2955f50c 100644 --- a/x-pack/legacy/plugins/maps/server/maps_telemetry/maps_telemetry.ts +++ b/x-pack/legacy/plugins/maps/server/maps_telemetry/maps_telemetry.ts @@ -18,7 +18,7 @@ import { TELEMETRY_TYPE, // @ts-ignore } from '../../common/constants'; -import { ILayerDescriptor } from '../../common/descriptor_types'; +import { LayerDescriptor } from '../../common/descriptor_types'; interface IStats { [key: string]: { @@ -114,7 +114,7 @@ export function buildMapsTelemetry({ const mapsCount = layerLists.length; const dataSourcesCount = layerLists.map(lList => { - const sourceIdList = lList.map((layer: ILayerDescriptor) => layer.sourceDescriptor.id); + const sourceIdList = lList.map((layer: LayerDescriptor) => layer.sourceDescriptor.id); return _.uniq(sourceIdList).length; }); @@ -124,7 +124,7 @@ export function buildMapsTelemetry({ // Count of EMS Vector layers used const emsLayersCount = layerLists.map(lList => _(lList) - .countBy((layer: ILayerDescriptor) => { + .countBy((layer: LayerDescriptor) => { const isEmsFile = _.get(layer, 'sourceDescriptor.type') === EMS_FILE; return isEmsFile && _.get(layer, 'sourceDescriptor.id'); }) From a5e5122e8ea01fa23a3afad5b9597dbce2e34c47 Mon Sep 17 00:00:00 2001 From: Jonathan Budzenski <jon@budzenski.me> Date: Tue, 3 Mar 2020 16:07:56 -0600 Subject: [PATCH 075/120] skip isLoading when userPaginatedPolicyListTable (#59231) --- .../applications/endpoint/store/policy_list/index.test.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/index.test.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/index.test.ts index ae4a0868a68fec..13ce1489a481a2 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/index.test.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/index.test.ts @@ -38,7 +38,8 @@ describe('policy list store concerns', () => { expect(selectIsLoading(getState())).toBe(false); }); - test('it sets `isLoading` when `userPaginatedPolicyListTable`', async () => { + // https://github.com/elastic/kibana/issues/58896 + test.skip('it sets `isLoading` when `userPaginatedPolicyListTable`', async () => { expect(selectIsLoading(getState())).toBe(false); dispatch({ type: 'userPaginatedPolicyListTable', From ff23fa38493041024cf1028a2df1c4196bda4c99 Mon Sep 17 00:00:00 2001 From: Jonathan Budzenski <jon@budzenski.me> Date: Tue, 3 Mar 2020 17:09:29 -0600 Subject: [PATCH 076/120] Revert "[ML] Fixing licensing after server NP cutover (#58853)" (#59244) This reverts commit fd5c6c16cd4f2c270f894ccfcfcc28e060fae39c. --- .../legacy/plugins/ml/common/license/index.ts | 7 - .../plugins/ml/common/license/ml_license.ts | 78 -------- .../plugins/ml/public/application/app.tsx | 11 +- .../anomalies_table/anomalies_table.test.js | 2 +- .../components/navigation_menu/main_tabs.tsx | 10 +- .../navigation_menu/navigation_menu.tsx | 2 +- .../datavisualizer_selector.tsx | 2 +- .../results_links/results_links.tsx | 2 +- .../datavisualizer/index_based/page.tsx | 2 +- .../license/__tests__/check_license.js | 36 ++++ .../application/license/check_license.tsx | 160 +++++++++++------ .../application/license/expired_warning.tsx | 26 --- .../ml/public/application/license/index.ts | 13 -- .../application/license/ml_client_license.ts | 51 ------ .../ml/public/application/management/index.ts | 29 +-- .../application/privilege/check_privilege.ts | 2 +- .../public/application/routing/resolvers.ts | 2 +- .../routes/datavisualizer/datavisualizer.tsx | 2 +- .../routes/datavisualizer/file_based.tsx | 4 +- .../routes/datavisualizer/index_based.tsx | 2 +- .../routes/new_job/index_or_search.tsx | 2 +- .../application/routing/routes/overview.tsx | 2 +- .../routing/routes/settings/calendar_list.tsx | 2 +- .../routes/settings/calendar_new_edit.tsx | 2 +- .../routing/routes/settings/filter_list.tsx | 2 +- .../routes/settings/filter_list_new_edit.tsx | 2 +- .../routing/routes/settings/settings.tsx | 2 +- .../calendars/edit/new_calendar.test.js | 2 +- .../calendars/list/calendars_list.test.js | 2 +- .../application/util/dependency_cache.ts | 1 - x-pack/legacy/plugins/ml/public/legacy.ts | 12 +- x-pack/legacy/plugins/ml/public/plugin.ts | 3 +- .../lib/check_license/check_license.test.ts | 167 ++++++++++++++++++ .../server/lib/check_license/check_license.ts | 82 +++++++++ .../lib/{license => check_license}/index.ts | 2 +- .../check_privileges/check_privileges.test.ts | 65 +++---- .../lib/check_privileges/check_privileges.ts | 14 +- .../server/lib/license/ml_server_license.ts | 35 ---- .../ml/server/lib/sample_data_sets/index.ts | 2 +- .../lib/sample_data_sets/sample_data_sets.ts | 41 ++--- x-pack/plugins/ml/server/plugin.ts | 62 +++++-- .../plugins/ml/server/routes/annotations.ts | 9 +- .../ml/server/routes/anomaly_detectors.ts | 33 ++-- x-pack/plugins/ml/server/routes/calendars.ts | 13 +- .../ml/server/routes/data_frame_analytics.ts | 25 +-- .../ml/server/routes/data_visualizer.ts | 7 +- x-pack/plugins/ml/server/routes/datafeeds.ts | 23 +-- .../ml/server/routes/fields_service.ts | 8 +- .../ml/server/routes/file_data_visualizer.ts | 7 +- x-pack/plugins/ml/server/routes/filters.ts | 15 +- x-pack/plugins/ml/server/routes/indices.ts | 5 +- .../ml/server/routes/job_audit_messages.ts | 7 +- .../plugins/ml/server/routes/job_service.ts | 42 ++--- .../ml/server/routes/job_validation.ts | 18 +- .../license_check_pre_routing_factory.ts | 33 ++++ x-pack/plugins/ml/server/routes/modules.ts | 11 +- .../ml/server/routes/notification_settings.ts | 5 +- .../ml/server/routes/results_service.ts | 13 +- x-pack/plugins/ml/server/routes/system.ts | 19 +- x-pack/plugins/ml/server/types.ts | 3 +- .../translations/translations/ja-JP.json | 3 + .../translations/translations/zh-CN.json | 3 + 62 files changed, 714 insertions(+), 535 deletions(-) delete mode 100644 x-pack/legacy/plugins/ml/common/license/index.ts delete mode 100644 x-pack/legacy/plugins/ml/common/license/ml_license.ts create mode 100644 x-pack/legacy/plugins/ml/public/application/license/__tests__/check_license.js delete mode 100644 x-pack/legacy/plugins/ml/public/application/license/expired_warning.tsx delete mode 100644 x-pack/legacy/plugins/ml/public/application/license/index.ts delete mode 100644 x-pack/legacy/plugins/ml/public/application/license/ml_client_license.ts create mode 100644 x-pack/plugins/ml/server/lib/check_license/check_license.test.ts create mode 100644 x-pack/plugins/ml/server/lib/check_license/check_license.ts rename x-pack/plugins/ml/server/lib/{license => check_license}/index.ts (81%) delete mode 100644 x-pack/plugins/ml/server/lib/license/ml_server_license.ts create mode 100644 x-pack/plugins/ml/server/routes/license_check_pre_routing_factory.ts diff --git a/x-pack/legacy/plugins/ml/common/license/index.ts b/x-pack/legacy/plugins/ml/common/license/index.ts deleted file mode 100644 index e901a9545897be..00000000000000 --- a/x-pack/legacy/plugins/ml/common/license/index.ts +++ /dev/null @@ -1,7 +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. - */ - -export { MlLicense, LicenseStatus, MINIMUM_FULL_LICENSE, MINIMUM_LICENSE } from './ml_license'; diff --git a/x-pack/legacy/plugins/ml/common/license/ml_license.ts b/x-pack/legacy/plugins/ml/common/license/ml_license.ts deleted file mode 100644 index 8b631bf6ffb46a..00000000000000 --- a/x-pack/legacy/plugins/ml/common/license/ml_license.ts +++ /dev/null @@ -1,78 +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, Subscription } from 'rxjs'; -import { ILicense, LICENSE_CHECK_STATE } from '../../../../../plugins/licensing/common/types'; -import { PLUGIN_ID } from '../constants/app'; - -export const MINIMUM_LICENSE = 'basic'; -export const MINIMUM_FULL_LICENSE = 'platinum'; - -export interface LicenseStatus { - isValid: boolean; - isSecurityEnabled: boolean; - message?: string; -} - -export class MlLicense { - private _licenseSubscription: Subscription | null = null; - private _license: ILicense | null = null; - private _isSecurityEnabled: boolean = false; - private _hasLicenseExpired: boolean = false; - private _isMlEnabled: boolean = false; - private _isMinimumLicense: boolean = false; - private _isFullLicense: boolean = false; - private _initialized: boolean = false; - - public setup( - license$: Observable<ILicense>, - postInitFunctions?: Array<(lic: MlLicense) => void> - ) { - this._licenseSubscription = license$.subscribe(async license => { - const { isEnabled: securityIsEnabled } = license.getFeature('security'); - - this._license = license; - this._isSecurityEnabled = securityIsEnabled; - this._hasLicenseExpired = this._license.status === 'expired'; - this._isMlEnabled = this._license.getFeature(PLUGIN_ID).isEnabled; - this._isMinimumLicense = - this._license.check(PLUGIN_ID, MINIMUM_LICENSE).state === LICENSE_CHECK_STATE.Valid; - this._isFullLicense = - this._license.check(PLUGIN_ID, MINIMUM_FULL_LICENSE).state === LICENSE_CHECK_STATE.Valid; - - if (this._initialized === false && postInitFunctions !== undefined) { - postInitFunctions.forEach(f => f(this)); - } - this._initialized = true; - }); - } - - public unsubscribe() { - if (this._licenseSubscription !== null) { - this._licenseSubscription.unsubscribe(); - } - } - - public isSecurityEnabled() { - return this._isSecurityEnabled; - } - - public hasLicenseExpired() { - return this._hasLicenseExpired; - } - - public isMlEnabled() { - return this._isMlEnabled; - } - - public isMinimumLicense() { - return this._isMinimumLicense; - } - - public isFullLicense() { - return this._isFullLicense; - } -} diff --git a/x-pack/legacy/plugins/ml/public/application/app.tsx b/x-pack/legacy/plugins/ml/public/application/app.tsx index 4c956bfabecc91..3acb24ac6e1733 100644 --- a/x-pack/legacy/plugins/ml/public/application/app.tsx +++ b/x-pack/legacy/plugins/ml/public/application/app.tsx @@ -13,18 +13,15 @@ import { AppMountParameters, CoreStart } from 'kibana/public'; import { DataPublicPluginStart } from 'src/plugins/data/public'; import { SecurityPluginSetup } from '../../../../../plugins/security/public'; -import { LicensingPluginSetup } from '../../../../../plugins/licensing/public'; import { KibanaContextProvider } from '../../../../../../src/plugins/kibana_react/public'; import { setDependencyCache, clearCache } from './util/dependency_cache'; -import { setLicenseCache } from './license'; import { MlRouter } from './routing'; export interface MlDependencies extends AppMountParameters { data: DataPublicPluginStart; security: SecurityPluginSetup; - licensing: LicensingPluginSetup; __LEGACY: { XSRF: string; }; @@ -39,14 +36,14 @@ const App: FC<AppProps> = ({ coreStart, deps }) => { setDependencyCache({ indexPatterns: deps.data.indexPatterns, timefilter: deps.data.query.timefilter, - fieldFormats: deps.data.fieldFormats, - autocomplete: deps.data.autocomplete, config: coreStart.uiSettings!, chrome: coreStart.chrome!, docLinks: coreStart.docLinks!, toastNotifications: coreStart.notifications.toasts, overlays: coreStart.overlays, recentlyAccessed: coreStart.chrome!.recentlyAccessed, + fieldFormats: deps.data.fieldFormats, + autocomplete: deps.data.autocomplete, basePath: coreStart.http.basePath, savedObjectsClient: coreStart.savedObjects.client, XSRF: deps.__LEGACY.XSRF, @@ -54,11 +51,7 @@ const App: FC<AppProps> = ({ coreStart, deps }) => { http: coreStart.http, security: deps.security, }); - - const mlLicense = setLicenseCache(deps.licensing); - deps.onAppLeave(actions => { - mlLicense.unsubscribe(); clearCache(); return actions.default(); }); diff --git a/x-pack/legacy/plugins/ml/public/application/components/anomalies_table/anomalies_table.test.js b/x-pack/legacy/plugins/ml/public/application/components/anomalies_table/anomalies_table.test.js index b881bfe4f1fe6b..206b9e01bab8c6 100644 --- a/x-pack/legacy/plugins/ml/public/application/components/anomalies_table/anomalies_table.test.js +++ b/x-pack/legacy/plugins/ml/public/application/components/anomalies_table/anomalies_table.test.js @@ -11,7 +11,7 @@ import { getColumns } from './anomalies_table_columns'; jest.mock('../../privilege/check_privilege', () => ({ checkPermission: () => false, })); -jest.mock('../../license', () => ({ +jest.mock('../../license/check_license', () => ({ hasLicenseExpired: () => false, })); jest.mock('../../privilege/get_privileges', () => ({ diff --git a/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/main_tabs.tsx b/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/main_tabs.tsx index 695783883d02e5..dce5e7ad52b090 100644 --- a/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/main_tabs.tsx +++ b/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/main_tabs.tsx @@ -81,18 +81,13 @@ export const MainTabs: FC<Props> = ({ tabId, disableLinks }) => { return ( <EuiTabs display="condensed"> {tabs.map((tab: Tab) => { - const { id, disabled } = tab; + const id = tab.id; const testSubject = TAB_DATA[id].testSubject; const defaultPathId = TAB_DATA[id].pathId || id; // globalState (e.g. selected jobs and time range) should be retained when changing pages. // appState will not be considered. const fullGlobalStateString = globalState !== undefined ? `?_g=${encode(globalState)}` : ''; - - return disabled ? ( - <EuiTab key={`${id}-key`} className={'mlNavigationMenu__mainTab'} disabled={true}> - {tab.name} - </EuiTab> - ) : ( + return ( <EuiLink data-test-subj={testSubject + (id === selectedTabId ? ' selected' : '')} href={`#/${defaultPathId}${fullGlobalStateString}`} @@ -103,6 +98,7 @@ export const MainTabs: FC<Props> = ({ tabId, disableLinks }) => { className={'mlNavigationMenu__mainTab'} onClick={() => onSelectedTabChanged(id)} isSelected={id === selectedTabId} + disabled={tab.disabled} > {tab.name} </EuiTab> diff --git a/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/navigation_menu.tsx b/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/navigation_menu.tsx index 6be2d18e597414..e7ba57e25354e8 100644 --- a/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/navigation_menu.tsx +++ b/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/navigation_menu.tsx @@ -7,7 +7,7 @@ import React, { Fragment, FC } from 'react'; import { EuiFlexGroup, EuiFlexItem, EuiHorizontalRule } from '@elastic/eui'; -import { isFullLicense } from '../../license'; +import { isFullLicense } from '../../license/check_license'; import { TopNav } from './top_nav'; import { MainTabs } from './main_tabs'; diff --git a/x-pack/legacy/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx b/x-pack/legacy/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx index 254788c52a7a81..0f56f78c708ee0 100644 --- a/x-pack/legacy/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx +++ b/x-pack/legacy/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx @@ -22,7 +22,7 @@ import { import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; -import { isFullLicense } from '../license'; +import { isFullLicense } from '../license/check_license'; import { useTimefilter } from '../contexts/kibana'; import { NavigationMenu } from '../components/navigation_menu'; diff --git a/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/results_links/results_links.tsx b/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/results_links/results_links.tsx index dddf64ce2cfd36..debadba19051b7 100644 --- a/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/results_links/results_links.tsx +++ b/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/results_links/results_links.tsx @@ -9,7 +9,7 @@ import moment from 'moment'; import { FormattedMessage } from '@kbn/i18n/react'; import { EuiFlexGroup, EuiFlexItem, EuiCard, EuiIcon } from '@elastic/eui'; import { ml } from '../../../../services/ml_api_service'; -import { isFullLicense } from '../../../../license'; +import { isFullLicense } from '../../../../license/check_license'; import { checkPermission } from '../../../../privilege/check_privilege'; import { mlNodesAvailable } from '../../../../ml_nodes_check/check_ml_nodes'; import { useMlKibana } from '../../../../contexts/kibana'; diff --git a/x-pack/legacy/plugins/ml/public/application/datavisualizer/index_based/page.tsx b/x-pack/legacy/plugins/ml/public/application/datavisualizer/index_based/page.tsx index fbf42ef62265c6..84c07651d323d7 100644 --- a/x-pack/legacy/plugins/ml/public/application/datavisualizer/index_based/page.tsx +++ b/x-pack/legacy/plugins/ml/public/application/datavisualizer/index_based/page.tsx @@ -31,7 +31,7 @@ import { SavedSearchSavedObject } from '../../../../common/types/kibana'; import { NavigationMenu } from '../../components/navigation_menu'; import { ML_JOB_FIELD_TYPES } from '../../../../common/constants/field_types'; import { SEARCH_QUERY_LANGUAGE } from '../../../../common/constants/search'; -import { isFullLicense } from '../../license'; +import { isFullLicense } from '../../license/check_license'; import { checkPermission } from '../../privilege/check_privilege'; import { mlNodesAvailable } from '../../ml_nodes_check/check_ml_nodes'; import { FullTimeRangeSelector } from '../../components/full_time_range_selector'; diff --git a/x-pack/legacy/plugins/ml/public/application/license/__tests__/check_license.js b/x-pack/legacy/plugins/ml/public/application/license/__tests__/check_license.js new file mode 100644 index 00000000000000..9ce0ec04befb6e --- /dev/null +++ b/x-pack/legacy/plugins/ml/public/application/license/__tests__/check_license.js @@ -0,0 +1,36 @@ +/* + * 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 expect from '@kbn/expect'; +import { xpackInfo } from '../../../../../xpack_main/public/services/xpack_info'; +import { LICENSE_STATUS_VALID } from '../../../../../../common/constants/license_status'; +import { xpackFeatureAvailable } from '../check_license'; + +const initialInfo = { + features: { + watcher: { + status: LICENSE_STATUS_VALID, + }, + }, +}; + +describe('ML - check license', () => { + describe('xpackFeatureAvailable', () => { + beforeEach(() => { + xpackInfo.setAll(initialInfo); + }); + + it('returns true for enabled feature', () => { + const result = xpackFeatureAvailable('watcher'); + expect(result).to.be(true); + }); + + it('returns false for disabled feature', () => { + const result = xpackFeatureAvailable('noSuchFeature'); + expect(result).to.be(false); + }); + }); +}); diff --git a/x-pack/legacy/plugins/ml/public/application/license/check_license.tsx b/x-pack/legacy/plugins/ml/public/application/license/check_license.tsx index be5b702742baaf..4af753ddb4d1f2 100644 --- a/x-pack/legacy/plugins/ml/public/application/license/check_license.tsx +++ b/x-pack/legacy/plugins/ml/public/application/license/check_license.tsx @@ -4,74 +4,126 @@ * you may not use this file except in compliance with the Elastic License. */ -import { LicensingPluginSetup } from '../../../../../../plugins/licensing/public'; -import { MlClientLicense } from './ml_client_license'; +import React from 'react'; +import { EuiCallOut } from '@elastic/eui'; +import { toMountPoint } from '../../../../../../../src/plugins/kibana_react/public'; +// @ts-ignore No declaration file for module +import { xpackInfo } from '../../../../xpack_main/public/services/xpack_info'; +import { LICENSE_TYPE } from '../../../common/constants/license'; +import { LICENSE_STATUS_VALID } from '../../../../../common/constants/license_status'; +import { getOverlays } from '../util/dependency_cache'; -let mlLicense: MlClientLicense | null = null; +let licenseHasExpired = true; +let licenseType: LICENSE_TYPE | null = null; +let expiredLicenseBannerId: string; -/** - * Create a new mlLicense and cache it for later checks - * - * @export - * @param {LicensingPluginSetup} licensingSetup - * @returns {MlClientLicense} - */ -export function setLicenseCache(licensingSetup: LicensingPluginSetup) { - mlLicense = new MlClientLicense(); - mlLicense.setup(licensingSetup.license$); - return mlLicense; +export function checkFullLicense() { + const features = getFeatures(); + licenseType = features.licenseType; + + if (features.isAvailable === false) { + // ML is not enabled + return redirectToKibana(); + } else if (features.licenseType === LICENSE_TYPE.BASIC) { + // ML is enabled, but only with a basic or gold license + return redirectToBasic(); + } else { + // ML is enabled + setLicenseExpired(features); + return Promise.resolve(features); + } } -/** - * Used as routing resolver to stop the loading of a page if the current license - * is a trial, platinum or enterprise. - * - * @export - * @returns {Promise<void>} Promise which resolves if the license is trial, platinum or enterprise and rejects if it isn't. - */ -export async function checkFullLicense() { - if (mlLicense === null) { - // this should never happen - console.error('ML Licensing not initialized'); // eslint-disable-line - return Promise.reject(); +export function checkBasicLicense() { + const features = getFeatures(); + licenseType = features.licenseType; + + if (features.isAvailable === false) { + // ML is not enabled + return redirectToKibana(); + } else { + // ML is enabled + setLicenseExpired(features); + return Promise.resolve(features); } +} - return mlLicense.fullLicenseResolver(); +// a wrapper for checkFullLicense which doesn't resolve if the license has expired. +// this is used by all create jobs pages to redirect back to the jobs list +// if the user's license has expired. +export function checkLicenseExpired() { + return checkFullLicense() + .then((features: any) => { + if (features.hasExpired) { + window.location.href = '#/jobs'; + return Promise.reject(); + } else { + return Promise.resolve(features); + } + }) + .catch(() => { + return Promise.reject(); + }); } -/** - * Used as routing resolver to stop the loading of a page if the current license - * is at least basic. - * - * @export - * @returns {Promise<void>} Promise resolves if the license is at least basic and rejects if it isn't. - */ -export async function checkBasicLicense() { - if (mlLicense === null) { - // this should never happen - console.error('ML Licensing not initialized'); // eslint-disable-line - return Promise.reject(); +function setLicenseExpired(features: any) { + licenseHasExpired = features.hasExpired || false; + // If the license has expired ML app will still work for 7 days and then + // the job management endpoints (e.g. create job, start datafeed) will be restricted. + // Therefore we need to keep the app enabled but show an info banner to the user. + if (licenseHasExpired) { + const message = features.message; + if (expiredLicenseBannerId === undefined) { + // Only show the banner once with no way to dismiss it + const overlays = getOverlays(); + expiredLicenseBannerId = overlays.banners.add( + toMountPoint(<EuiCallOut iconType="iInCircle" color="warning" title={message} />) + ); + } } +} +// Temporary hack for cutting over server to NP +function getFeatures() { + return { + isAvailable: true, + showLinks: true, + enableLinks: true, + licenseType: 1, + hasExpired: false, + }; + // return xpackInfo.get('features.ml'); +} - return mlLicense.basicLicenseResolver(); +function redirectToKibana() { + window.location.href = '/'; + return Promise.reject(); +} + +function redirectToBasic() { + window.location.href = '#/datavisualizer'; + return Promise.reject(); } -/** - * Check to see if the current license has expired - * - * @export - * @returns {boolean} - */ export function hasLicenseExpired() { - return mlLicense !== null && mlLicense.hasLicenseExpired(); + return licenseHasExpired; } -/** - * Check to see if the current license is trial, platinum or enterprise. - * - * @export - * @returns {boolean} - */ export function isFullLicense() { - return mlLicense !== null && mlLicense.isFullLicense(); + return licenseType === LICENSE_TYPE.FULL; +} + +export function xpackFeatureAvailable(feature: string) { + // each plugin can register their own set of features. + // so we need specific checks for each one. + // this list can grow if we need to check other plugin's features. + switch (feature) { + case 'watcher': + // watcher only has a license status feature + // if watcher is disabled in kibana.yml, the feature is completely missing from xpackInfo + return xpackInfo.get(`features.${feature}.status`, false) === LICENSE_STATUS_VALID; + default: + // historically plugins have used `isAvailable` as a catch all for + // license and feature enabled checks + return xpackInfo.get(`features.${feature}.isAvailable`, false); + } } diff --git a/x-pack/legacy/plugins/ml/public/application/license/expired_warning.tsx b/x-pack/legacy/plugins/ml/public/application/license/expired_warning.tsx deleted file mode 100644 index 22cb3260d69692..00000000000000 --- a/x-pack/legacy/plugins/ml/public/application/license/expired_warning.tsx +++ /dev/null @@ -1,26 +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 React from 'react'; -import { i18n } from '@kbn/i18n'; -import { EuiCallOut } from '@elastic/eui'; -import { toMountPoint } from '../../../../../../../src/plugins/kibana_react/public'; -import { getOverlays } from '../util/dependency_cache'; - -let expiredLicenseBannerId: string; - -export function showExpiredLicenseWarning() { - if (expiredLicenseBannerId === undefined) { - const message = i18n.translate('xpack.ml.checkLicense.licenseHasExpiredMessage', { - defaultMessage: 'Your Machine Learning license has expired.', - }); - // Only show the banner once with no way to dismiss it - const overlays = getOverlays(); - expiredLicenseBannerId = overlays.banners.add( - toMountPoint(<EuiCallOut iconType="iInCircle" color="warning" title={message} />) - ); - } -} diff --git a/x-pack/legacy/plugins/ml/public/application/license/index.ts b/x-pack/legacy/plugins/ml/public/application/license/index.ts deleted file mode 100644 index 0b6866d52d070b..00000000000000 --- a/x-pack/legacy/plugins/ml/public/application/license/index.ts +++ /dev/null @@ -1,13 +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. - */ - -export { - checkBasicLicense, - checkFullLicense, - hasLicenseExpired, - isFullLicense, - setLicenseCache, -} from './check_license'; diff --git a/x-pack/legacy/plugins/ml/public/application/license/ml_client_license.ts b/x-pack/legacy/plugins/ml/public/application/license/ml_client_license.ts deleted file mode 100644 index 13809e15135e80..00000000000000 --- a/x-pack/legacy/plugins/ml/public/application/license/ml_client_license.ts +++ /dev/null @@ -1,51 +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 { MlLicense } from '../../../common/license'; -import { showExpiredLicenseWarning } from './expired_warning'; - -export class MlClientLicense extends MlLicense { - fullLicenseResolver() { - if (this.isMlEnabled() === false || this.isMinimumLicense() === false) { - // ML is not enabled or the license isn't at least basic - return redirectToKibana(); - } - - if (this.isFullLicense() === false) { - // ML is enabled, but only with a basic or gold license - return redirectToBasic(); - } - - // ML is enabled - if (this.hasLicenseExpired()) { - showExpiredLicenseWarning(); - } - return Promise.resolve(); - } - - basicLicenseResolver() { - if (this.isMlEnabled() === false || this.isMinimumLicense() === false) { - // ML is not enabled or the license isn't at least basic - return redirectToKibana(); - } - - // ML is enabled - if (this.hasLicenseExpired()) { - showExpiredLicenseWarning(); - } - return Promise.resolve(); - } -} - -function redirectToKibana() { - window.location.href = '/'; - return Promise.reject(); -} - -function redirectToBasic() { - window.location.href = '#/datavisualizer'; - return Promise.reject(); -} diff --git a/x-pack/legacy/plugins/ml/public/application/management/index.ts b/x-pack/legacy/plugins/ml/public/application/management/index.ts index 16bb3ddfd1c9b4..a05de8b0d08802 100644 --- a/x-pack/legacy/plugins/ml/public/application/management/index.ts +++ b/x-pack/legacy/plugins/ml/public/application/management/index.ts @@ -10,36 +10,21 @@ * you may not use this file except in compliance with the Elastic License. */ -import { npSetup } from 'ui/new_platform'; import { management } from 'ui/management'; import { i18n } from '@kbn/i18n'; import chrome from 'ui/chrome'; import { metadata } from 'ui/metadata'; +// @ts-ignore No declaration file for module +import { xpackInfo } from '../../../../xpack_main/public/services/xpack_info'; import { JOBS_LIST_PATH } from './management_urls'; +import { LICENSE_TYPE } from '../../../common/constants/license'; import { setDependencyCache } from '../util/dependency_cache'; import './jobs_list'; -import { - LicensingPluginSetup, - LICENSE_CHECK_STATE, -} from '../../../../../../plugins/licensing/public'; -import { PLUGIN_ID } from '../../../common/constants/app'; -import { MINIMUM_FULL_LICENSE } from '../../../common/license'; -type PluginsSetupExtended = typeof npSetup.plugins & { - // adds licensing which isn't in the PluginsSetup interface, but does exist - licensing: LicensingPluginSetup; -}; - -const plugins = npSetup.plugins as PluginsSetupExtended; -const licencingSubscription = plugins.licensing.license$.subscribe(license => { - if (license.check(PLUGIN_ID, MINIMUM_FULL_LICENSE).state === LICENSE_CHECK_STATE.Valid) { - initManagementSection(); - // unsubscribe, we only want to register the plugin once. - licencingSubscription.unsubscribe(); - } -}); - -function initManagementSection() { +if ( + xpackInfo.get('features.ml.showLinks', false) === true && + xpackInfo.get('features.ml.licenseType') === LICENSE_TYPE.FULL +) { const legacyBasePath = { prepend: chrome.addBasePath, get: chrome.getBasePath, diff --git a/x-pack/legacy/plugins/ml/public/application/privilege/check_privilege.ts b/x-pack/legacy/plugins/ml/public/application/privilege/check_privilege.ts index ec9695a2ce6683..6cc06231a08d04 100644 --- a/x-pack/legacy/plugins/ml/public/application/privilege/check_privilege.ts +++ b/x-pack/legacy/plugins/ml/public/application/privilege/check_privilege.ts @@ -6,7 +6,7 @@ import { i18n } from '@kbn/i18n'; -import { hasLicenseExpired } from '../license'; +import { hasLicenseExpired } from '../license/check_license'; import { Privileges, getDefaultPrivileges } from '../../../common/types/privileges'; import { getPrivileges, getManageMlPrivileges } from './get_privileges'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/resolvers.ts b/x-pack/legacy/plugins/ml/public/application/routing/resolvers.ts index acaf3f3acd0c80..5fc1ea533e87f9 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/resolvers.ts +++ b/x-pack/legacy/plugins/ml/public/application/routing/resolvers.ts @@ -5,7 +5,7 @@ */ import { loadIndexPatterns, loadSavedSearches } from '../util/index_utils'; -import { checkFullLicense } from '../license'; +import { checkFullLicense } from '../license/check_license'; import { checkGetJobsPrivilege } from '../privilege/check_privilege'; import { getMlNodeCount } from '../ml_nodes_check/check_ml_nodes'; import { loadMlServerInfo } from '../services/ml_server_info'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/datavisualizer.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/datavisualizer.tsx index d257a9c080c355..e89834018f5e6a 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/datavisualizer.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/datavisualizer.tsx @@ -15,7 +15,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { DatavisualizerSelector } from '../../../datavisualizer'; -import { checkBasicLicense } from '../../../license'; +import { checkBasicLicense } from '../../../license/check_license'; import { checkFindFileStructurePrivilege } from '../../../privilege/check_privilege'; import { DATA_VISUALIZER_BREADCRUMB, ML_BREADCRUMB } from '../../breadcrumbs'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/file_based.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/file_based.tsx index 174b3e3b4b3385..b4ccccd0776eb4 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/file_based.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/file_based.tsx @@ -16,10 +16,11 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { FileDataVisualizerPage } from '../../../datavisualizer/file_based'; -import { checkBasicLicense } from '../../../license'; +import { checkBasicLicense } from '../../../license/check_license'; import { checkFindFileStructurePrivilege } from '../../../privilege/check_privilege'; import { loadIndexPatterns } from '../../../util/index_utils'; +import { getMlNodeCount } from '../../../ml_nodes_check'; import { DATA_VISUALIZER_BREADCRUMB, ML_BREADCRUMB } from '../../breadcrumbs'; const breadcrumbs = [ @@ -44,6 +45,7 @@ const PageWrapper: FC<PageProps> = ({ location, deps }) => { checkBasicLicense, loadIndexPatterns: () => loadIndexPatterns(deps.indexPatterns), checkFindFileStructurePrivilege, + getMlNodeCount, }); return ( <PageLoader context={context}> diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/index_based.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/index_based.tsx index a3dbc9f97124c0..74ab916cb443fc 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/index_based.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/index_based.tsx @@ -11,7 +11,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { Page } from '../../../datavisualizer/index_based'; -import { checkBasicLicense } from '../../../license'; +import { checkBasicLicense } from '../../../license/check_license'; import { checkGetJobsPrivilege } from '../../../privilege/check_privilege'; import { loadIndexPatterns } from '../../../util/index_utils'; import { checkMlNodesAvailable } from '../../../ml_nodes_check'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/new_job/index_or_search.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/new_job/index_or_search.tsx index 9411b415e4e4d1..ae35d783517d3d 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/new_job/index_or_search.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/new_job/index_or_search.tsx @@ -11,7 +11,7 @@ import { useResolver } from '../../use_resolver'; import { basicResolvers } from '../../resolvers'; import { Page, preConfiguredJobRedirect } from '../../../jobs/new_job/pages/index_or_search'; import { ANOMALY_DETECTION_BREADCRUMB, ML_BREADCRUMB } from '../../breadcrumbs'; -import { checkBasicLicense } from '../../../license'; +import { checkBasicLicense } from '../../../license/check_license'; import { loadIndexPatterns } from '../../../util/index_utils'; import { checkGetJobsPrivilege } from '../../../privilege/check_privilege'; import { checkMlNodesAvailable } from '../../../ml_nodes_check'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/overview.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/overview.tsx index ccb99985cb70ca..b1e00158efb94a 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/overview.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/overview.tsx @@ -12,7 +12,7 @@ import { MlRoute, PageLoader, PageProps } from '../router'; import { useResolver } from '../use_resolver'; import { OverviewPage } from '../../overview'; -import { checkFullLicense } from '../../license'; +import { checkFullLicense } from '../../license/check_license'; import { checkGetJobsPrivilege } from '../../privilege/check_privilege'; import { getMlNodeCount } from '../../ml_nodes_check'; import { loadMlServerInfo } from '../../services/ml_server_info'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_list.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_list.tsx index 9d5c4e9c0b0a0a..c1bfaa2fe6c1ee 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_list.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_list.tsx @@ -16,7 +16,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license'; +import { checkFullLicense } from '../../../license/check_license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { getMlNodeCount } from '../../../ml_nodes_check/check_ml_nodes'; import { CalendarsList } from '../../../settings/calendars'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_new_edit.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_new_edit.tsx index bf039e3bd2354b..7af2e49e3a69e9 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_new_edit.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_new_edit.tsx @@ -16,7 +16,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license'; +import { checkFullLicense } from '../../../license/check_license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { checkMlNodesAvailable } from '../../../ml_nodes_check/check_ml_nodes'; import { NewCalendar } from '../../../settings/calendars'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list.tsx index 6839ad833cb066..9c5c06b76247c4 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list.tsx @@ -16,7 +16,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license'; +import { checkFullLicense } from '../../../license/check_license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { getMlNodeCount } from '../../../ml_nodes_check/check_ml_nodes'; import { FilterLists } from '../../../settings/filter_lists'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list_new_edit.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list_new_edit.tsx index 7b8bd6c3c81ac3..752b889490e58f 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list_new_edit.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list_new_edit.tsx @@ -16,7 +16,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license'; +import { checkFullLicense } from '../../../license/check_license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { checkMlNodesAvailable } from '../../../ml_nodes_check/check_ml_nodes'; import { EditFilterList } from '../../../settings/filter_lists'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/settings.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/settings.tsx index 10ccc0987fe5d1..10efb2dcc60c78 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/settings.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/settings.tsx @@ -15,7 +15,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license'; +import { checkFullLicense } from '../../../license/check_license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { getMlNodeCount } from '../../../ml_nodes_check/check_ml_nodes'; import { Settings } from '../../../settings'; diff --git a/x-pack/legacy/plugins/ml/public/application/settings/calendars/edit/new_calendar.test.js b/x-pack/legacy/plugins/ml/public/application/settings/calendars/edit/new_calendar.test.js index 5f61ccf47e9d72..8dc174040f9c86 100644 --- a/x-pack/legacy/plugins/ml/public/application/settings/calendars/edit/new_calendar.test.js +++ b/x-pack/legacy/plugins/ml/public/application/settings/calendars/edit/new_calendar.test.js @@ -10,7 +10,7 @@ jest.mock('../../../components/navigation_menu', () => ({ jest.mock('../../../privilege/check_privilege', () => ({ checkPermission: () => true, })); -jest.mock('../../../license', () => ({ +jest.mock('../../../license/check_license', () => ({ hasLicenseExpired: () => false, isFullLicense: () => false, })); diff --git a/x-pack/legacy/plugins/ml/public/application/settings/calendars/list/calendars_list.test.js b/x-pack/legacy/plugins/ml/public/application/settings/calendars/list/calendars_list.test.js index 3ea8e0c39fbb22..677703bceeca75 100644 --- a/x-pack/legacy/plugins/ml/public/application/settings/calendars/list/calendars_list.test.js +++ b/x-pack/legacy/plugins/ml/public/application/settings/calendars/list/calendars_list.test.js @@ -16,7 +16,7 @@ jest.mock('../../../components/navigation_menu', () => ({ jest.mock('../../../privilege/check_privilege', () => ({ checkPermission: () => true, })); -jest.mock('../../../license', () => ({ +jest.mock('../../../license/check_license', () => ({ hasLicenseExpired: () => false, isFullLicense: () => false, })); diff --git a/x-pack/legacy/plugins/ml/public/application/util/dependency_cache.ts b/x-pack/legacy/plugins/ml/public/application/util/dependency_cache.ts index c167d7e7c3d42b..6d1dfa96ca03e8 100644 --- a/x-pack/legacy/plugins/ml/public/application/util/dependency_cache.ts +++ b/x-pack/legacy/plugins/ml/public/application/util/dependency_cache.ts @@ -76,7 +76,6 @@ export function setDependencyCache(deps: Partial<DependencyCache>) { cache.XSRF = deps.XSRF || null; cache.application = deps.application || null; cache.http = deps.http || null; - cache.security = deps.security || null; } export function getTimefilter() { diff --git a/x-pack/legacy/plugins/ml/public/legacy.ts b/x-pack/legacy/plugins/ml/public/legacy.ts index 0c6c0bd8dd29e2..7dfcf6a99c2135 100644 --- a/x-pack/legacy/plugins/ml/public/legacy.ts +++ b/x-pack/legacy/plugins/ml/public/legacy.ts @@ -8,24 +8,14 @@ import chrome from 'ui/chrome'; import { npSetup, npStart } from 'ui/new_platform'; import { PluginInitializerContext } from 'src/core/public'; import { SecurityPluginSetup } from '../../../../plugins/security/public'; -import { LicensingPluginSetup } from '../../../../plugins/licensing/public'; import { plugin } from '.'; const pluginInstance = plugin({} as PluginInitializerContext); -type PluginsSetupExtended = typeof npSetup.plugins & { - // adds plugins which aren't in the PluginsSetup interface, but do exist - security: SecurityPluginSetup; - licensing: LicensingPluginSetup; -}; - -const setupDependencies = npSetup.plugins as PluginsSetupExtended; - export const setup = pluginInstance.setup(npSetup.core, { data: npStart.plugins.data, - security: setupDependencies.security, - licensing: setupDependencies.licensing, + security: ((npSetup.plugins as unknown) as { security: SecurityPluginSetup }).security, // security isn't in the PluginsSetup interface, but does exist __LEGACY: { XSRF: chrome.getXsrfToken(), }, diff --git a/x-pack/legacy/plugins/ml/public/plugin.ts b/x-pack/legacy/plugins/ml/public/plugin.ts index c0369a74c070ac..1061bb1b6b62b8 100644 --- a/x-pack/legacy/plugins/ml/public/plugin.ts +++ b/x-pack/legacy/plugins/ml/public/plugin.ts @@ -8,7 +8,7 @@ import { Plugin, CoreStart, CoreSetup } from 'src/core/public'; import { MlDependencies } from './application/app'; export class MlPlugin implements Plugin<Setup, Start> { - setup(core: CoreSetup, { data, security, licensing, __LEGACY }: MlDependencies) { + setup(core: CoreSetup, { data, security, __LEGACY }: MlDependencies) { core.application.register({ id: 'ml', title: 'Machine learning', @@ -23,7 +23,6 @@ export class MlPlugin implements Plugin<Setup, Start> { data, __LEGACY, security, - licensing, }); }, }); diff --git a/x-pack/plugins/ml/server/lib/check_license/check_license.test.ts b/x-pack/plugins/ml/server/lib/check_license/check_license.test.ts new file mode 100644 index 00000000000000..942dbe37226175 --- /dev/null +++ b/x-pack/plugins/ml/server/lib/check_license/check_license.test.ts @@ -0,0 +1,167 @@ +/* + * 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 expect from '@kbn/expect'; +import sinon from 'sinon'; +import { set } from 'lodash'; +import { LicenseCheckResult } from '../../types'; +import { checkLicense } from './check_license'; + +describe('check_license', () => { + let mockLicenseInfo: LicenseCheckResult; + beforeEach(() => (mockLicenseInfo = {} as LicenseCheckResult)); + + describe('license information is undefined', () => { + it('should set isAvailable to false', () => { + expect(checkLicense(undefined as any).isAvailable).to.be(false); + }); + + it('should set showLinks to true', () => { + expect(checkLicense(undefined as any).showLinks).to.be(true); + }); + + it('should set enableLinks to false', () => { + expect(checkLicense(undefined as any).enableLinks).to.be(false); + }); + + it('should set a message', () => { + expect(checkLicense(undefined as any).message).to.not.be(undefined); + }); + }); + + describe('license information is not available', () => { + beforeEach(() => { + mockLicenseInfo.isAvailable = false; + }); + + it('should set isAvailable to false', () => { + expect(checkLicense(mockLicenseInfo).isAvailable).to.be(false); + }); + + it('should set showLinks to true', () => { + expect(checkLicense(mockLicenseInfo).showLinks).to.be(true); + }); + + it('should set enableLinks to false', () => { + expect(checkLicense(mockLicenseInfo).enableLinks).to.be(false); + }); + + it('should set a message', () => { + expect(checkLicense(mockLicenseInfo).message).to.not.be(undefined); + }); + }); + + describe('license information is available', () => { + beforeEach(() => { + mockLicenseInfo.isAvailable = true; + mockLicenseInfo.type = 'basic'; + }); + + describe('& ML is disabled in Elasticsearch', () => { + beforeEach(() => { + set( + mockLicenseInfo, + 'feature', + sinon + .stub() + .withArgs('ml') + .returns({ isEnabled: false }) + ); + }); + + it('should set showLinks to false', () => { + expect(checkLicense(mockLicenseInfo).showLinks).to.be(false); + }); + + it('should set isAvailable to false', () => { + expect(checkLicense(mockLicenseInfo).isAvailable).to.be(false); + }); + + it('should set enableLinks to false', () => { + expect(checkLicense(mockLicenseInfo).enableLinks).to.be(false); + }); + + it('should set a message', () => { + expect(checkLicense(mockLicenseInfo).message).to.not.be(undefined); + }); + }); + + describe('& ML is enabled in Elasticsearch', () => { + beforeEach(() => { + mockLicenseInfo.isEnabled = true; + }); + + describe('& license is >= platinum', () => { + beforeEach(() => { + mockLicenseInfo.type = 'platinum'; + }); + describe('& license is active', () => { + beforeEach(() => { + mockLicenseInfo.isActive = true; + }); + + it('should set isAvailable to true', () => { + expect(checkLicense(mockLicenseInfo).isAvailable).to.be(true); + }); + + it('should set showLinks to true', () => { + expect(checkLicense(mockLicenseInfo).showLinks).to.be(true); + }); + + it('should set enableLinks to true', () => { + expect(checkLicense(mockLicenseInfo).enableLinks).to.be(true); + }); + + it('should not set a message', () => { + expect(checkLicense(mockLicenseInfo).message).to.be(undefined); + }); + }); + + describe('& license is expired', () => { + beforeEach(() => { + mockLicenseInfo.isActive = false; + }); + + it('should set isAvailable to true', () => { + expect(checkLicense(mockLicenseInfo).isAvailable).to.be(true); + }); + + it('should set showLinks to true', () => { + expect(checkLicense(mockLicenseInfo).showLinks).to.be(true); + }); + + it('should set enableLinks to true', () => { + expect(checkLicense(mockLicenseInfo).enableLinks).to.be(true); + }); + + it('should set a message', () => { + expect(checkLicense(mockLicenseInfo).message).to.not.be(undefined); + }); + }); + }); + + describe('& license is basic', () => { + beforeEach(() => { + mockLicenseInfo.type = 'basic'; + }); + + describe('& license is active', () => { + beforeEach(() => { + mockLicenseInfo.isActive = true; + }); + + it('should set isAvailable to true', () => { + expect(checkLicense(mockLicenseInfo).isAvailable).to.be(true); + }); + + it('should set showLinks to true', () => { + expect(checkLicense(mockLicenseInfo).showLinks).to.be(true); + }); + }); + }); + }); + }); +}); diff --git a/x-pack/plugins/ml/server/lib/check_license/check_license.ts b/x-pack/plugins/ml/server/lib/check_license/check_license.ts new file mode 100644 index 00000000000000..5bf3d590a1912d --- /dev/null +++ b/x-pack/plugins/ml/server/lib/check_license/check_license.ts @@ -0,0 +1,82 @@ +/* + * 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 { + LICENSE_TYPE, + VALID_FULL_LICENSE_MODES, +} from '../../../../../legacy/plugins/ml/common/constants/license'; +import { LicenseCheckResult } from '../../types'; + +interface Response { + isAvailable: boolean; + showLinks: boolean; + enableLinks: boolean; + licenseType?: LICENSE_TYPE; + hasExpired?: boolean; + message?: string; +} + +export function checkLicense(licenseCheckResult: LicenseCheckResult): Response { + // If, for some reason, we cannot get the license information + // from Elasticsearch, assume worst case and disable the Machine Learning UI + if (licenseCheckResult === undefined || !licenseCheckResult.isAvailable) { + return { + isAvailable: false, + showLinks: true, + enableLinks: false, + message: i18n.translate( + 'xpack.ml.checkLicense.licenseInformationNotAvailableThisTimeMessage', + { + defaultMessage: + 'You cannot use Machine Learning because license information is not available at this time.', + } + ), + }; + } + + const featureEnabled = licenseCheckResult.isEnabled; + if (!featureEnabled) { + return { + isAvailable: false, + showLinks: false, + enableLinks: false, + message: i18n.translate('xpack.ml.checkLicense.mlIsUnavailableMessage', { + defaultMessage: 'Machine Learning is unavailable', + }), + }; + } + + const isLicenseModeValid = + licenseCheckResult.type && VALID_FULL_LICENSE_MODES.includes(licenseCheckResult.type); + const licenseType = isLicenseModeValid === true ? LICENSE_TYPE.FULL : LICENSE_TYPE.BASIC; + const isLicenseActive = licenseCheckResult.isActive; + const licenseTypeName = licenseCheckResult.type; + + // Platinum or trial license is valid but not active, i.e. expired + if (licenseType === LICENSE_TYPE.FULL && isLicenseActive === false) { + return { + isAvailable: true, + showLinks: true, + enableLinks: true, + hasExpired: true, + licenseType, + message: i18n.translate('xpack.ml.checkLicense.licenseHasExpiredMessage', { + defaultMessage: 'Your {licenseTypeName} Machine Learning license has expired.', + values: { licenseTypeName }, + }), + }; + } + + // License is valid and active + return { + isAvailable: true, + showLinks: true, + enableLinks: true, + licenseType, + hasExpired: false, + }; +} diff --git a/x-pack/plugins/ml/server/lib/license/index.ts b/x-pack/plugins/ml/server/lib/check_license/index.ts similarity index 81% rename from x-pack/plugins/ml/server/lib/license/index.ts rename to x-pack/plugins/ml/server/lib/check_license/index.ts index 9c4271b65b00df..f2c070fd44b6e6 100644 --- a/x-pack/plugins/ml/server/lib/license/index.ts +++ b/x-pack/plugins/ml/server/lib/check_license/index.ts @@ -4,4 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -export { MlServerLicense } from './ml_server_license'; +export { checkLicense } from './check_license'; diff --git a/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.test.ts b/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.test.ts index 4dd9100e1b67a1..0690aa53576a5a 100644 --- a/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.test.ts +++ b/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.test.ts @@ -7,27 +7,30 @@ import { callWithRequestProvider } from './__mocks__/call_with_request'; import { privilegesProvider } from './check_privileges'; import { mlPrivileges } from './privileges'; -import { MlLicense } from '../../../../../legacy/plugins/ml/common/license'; -const mlLicenseWithSecurity = { - isSecurityEnabled: () => true, - isFullLicense: () => true, -} as MlLicense; +const licenseCheckResultWithSecurity = { + isAvailable: true, + isEnabled: true, + isSecurityDisabled: false, + type: 'platinum', + isActive: true, +}; -const mlLicenseWithOutSecurity = { - isSecurityEnabled: () => false, - isFullLicense: () => true, -} as MlLicense; +const licenseCheckResultWithOutSecurity = { + ...licenseCheckResultWithSecurity, + isSecurityDisabled: true, +}; -const mlLicenseWithOutSecurityBasicLicense = { - isSecurityEnabled: () => false, - isFullLicense: () => false, -} as MlLicense; +const licenseCheckResultWithOutSecurityBasicLicense = { + ...licenseCheckResultWithSecurity, + isSecurityDisabled: true, + type: 'basic', +}; -const mlLicenseWithSecurityBasicLicense = { - isSecurityEnabled: () => true, - isFullLicense: () => false, -} as MlLicense; +const licenseCheckResultWithSecurityBasicLicense = { + ...licenseCheckResultWithSecurity, + type: 'basic', +}; const mlIsEnabled = async () => true; const mlIsNotEnabled = async () => false; @@ -44,7 +47,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithSecurity, + licenseCheckResultWithSecurity, mlIsEnabled ); const { capabilities } = await getPrivileges(); @@ -59,7 +62,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithSecurity, + licenseCheckResultWithSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -94,7 +97,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('fullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithSecurity, + licenseCheckResultWithSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -129,7 +132,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('upgradeWithFullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithSecurity, + licenseCheckResultWithSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -164,7 +167,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('upgradeWithPartialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithSecurity, + licenseCheckResultWithSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -199,7 +202,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithSecurityBasicLicense, + licenseCheckResultWithSecurityBasicLicense, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -234,7 +237,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('fullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithSecurityBasicLicense, + licenseCheckResultWithSecurityBasicLicense, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -269,7 +272,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('fullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithSecurity, + licenseCheckResultWithSecurity, mlIsNotEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -306,7 +309,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithOutSecurity, + licenseCheckResultWithOutSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -341,7 +344,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('upgradeWithFullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithOutSecurity, + licenseCheckResultWithOutSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -376,7 +379,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('upgradeWithPartialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithOutSecurity, + licenseCheckResultWithOutSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -411,7 +414,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithOutSecurityBasicLicense, + licenseCheckResultWithOutSecurityBasicLicense, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -446,7 +449,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('fullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithOutSecurityBasicLicense, + licenseCheckResultWithOutSecurityBasicLicense, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -481,7 +484,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - mlLicenseWithOutSecurity, + licenseCheckResultWithOutSecurity, mlIsNotEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); diff --git a/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.ts b/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.ts index f26040385b9f50..a427780d13344a 100644 --- a/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.ts +++ b/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.ts @@ -10,7 +10,9 @@ import { getDefaultPrivileges, } from '../../../../../legacy/plugins/ml/common/types/privileges'; import { upgradeCheckProvider } from './upgrade'; -import { MlLicense } from '../../../../../legacy/plugins/ml/common/license'; +import { checkLicense } from '../check_license'; +import { LICENSE_TYPE } from '../../../../../legacy/plugins/ml/common/constants/license'; +import { LicenseCheckResult } from '../../types'; import { mlPrivileges } from './privileges'; @@ -25,7 +27,7 @@ interface Response { export function privilegesProvider( callAsCurrentUser: IScopedClusterClient['callAsCurrentUser'], - mlLicense: MlLicense, + licenseCheckResult: LicenseCheckResult, isMlEnabledInSpace: () => Promise<boolean>, ignoreSpaces: boolean = false ) { @@ -35,9 +37,9 @@ export function privilegesProvider( const privileges = getDefaultPrivileges(); const upgradeInProgress = await isUpgradeInProgress(); - const isSecurityEnabled = mlLicense.isSecurityEnabled(); - - const isPlatinumOrTrialLicense = mlLicense.isFullLicense(); + const securityDisabled = licenseCheckResult.isSecurityDisabled; + const license = checkLicense(licenseCheckResult); + const isPlatinumOrTrialLicense = license.licenseType === LICENSE_TYPE.FULL; const mlFeatureEnabledInSpace = await isMlEnabledInSpace(); const setGettingPrivileges = isPlatinumOrTrialLicense @@ -59,7 +61,7 @@ export function privilegesProvider( }; } - if (isSecurityEnabled === false) { + if (securityDisabled === true) { if (upgradeInProgress === true) { // if security is disabled and an upgrade in is progress, // force all "getting" privileges to be true diff --git a/x-pack/plugins/ml/server/lib/license/ml_server_license.ts b/x-pack/plugins/ml/server/lib/license/ml_server_license.ts deleted file mode 100644 index 7602ab4919e818..00000000000000 --- a/x-pack/plugins/ml/server/lib/license/ml_server_license.ts +++ /dev/null @@ -1,35 +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 { - KibanaRequest, - KibanaResponseFactory, - RequestHandler, - RequestHandlerContext, -} from 'src/core/server'; - -import { MlLicense } from '../../../../../legacy/plugins/ml/common/license'; - -export class MlServerLicense extends MlLicense { - public fullLicenseAPIGuard(handler: RequestHandler<any, any, any>) { - return guard(() => this.isFullLicense(), handler); - } - public basicLicenseAPIGuard(handler: RequestHandler<any, any, any>) { - return guard(() => this.isMinimumLicense(), handler); - } -} - -function guard(check: () => boolean, handler: RequestHandler<any, any, any>) { - return ( - context: RequestHandlerContext, - request: KibanaRequest, - response: KibanaResponseFactory - ) => { - if (check() === false) { - return response.forbidden(); - } - return handler(context, request, response); - }; -} diff --git a/x-pack/plugins/ml/server/lib/sample_data_sets/index.ts b/x-pack/plugins/ml/server/lib/sample_data_sets/index.ts index 50553cfa7b8893..c922c9eb7c0291 100644 --- a/x-pack/plugins/ml/server/lib/sample_data_sets/index.ts +++ b/x-pack/plugins/ml/server/lib/sample_data_sets/index.ts @@ -4,4 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -export { initSampleDataSets } from './sample_data_sets'; +export { addLinksToSampleDatasets } from './sample_data_sets'; diff --git a/x-pack/plugins/ml/server/lib/sample_data_sets/sample_data_sets.ts b/x-pack/plugins/ml/server/lib/sample_data_sets/sample_data_sets.ts index 3fd99051a24841..2082538adfed1e 100644 --- a/x-pack/plugins/ml/server/lib/sample_data_sets/sample_data_sets.ts +++ b/x-pack/plugins/ml/server/lib/sample_data_sets/sample_data_sets.ts @@ -5,32 +5,23 @@ */ import { i18n } from '@kbn/i18n'; -import { MlLicense } from '../../../../../legacy/plugins/ml/common/license'; -import { PluginsSetup } from '../../types'; -export function initSampleDataSets(mlLicense: MlLicense, plugins: PluginsSetup) { - if (mlLicense.isMlEnabled() && mlLicense.isFullLicense()) { - const sampleDataLinkLabel = i18n.translate('xpack.ml.sampleDataLinkLabel', { - defaultMessage: 'ML jobs', - }); - const { addAppLinksToSampleDataset } = plugins.home.sampleData; +export function addLinksToSampleDatasets(server: any) { + const sampleDataLinkLabel = i18n.translate('xpack.ml.sampleDataLinkLabel', { + defaultMessage: 'ML jobs', + }); - addAppLinksToSampleDataset('ecommerce', [ - { - path: - '/app/ml#/modules/check_view_or_create?id=sample_data_ecommerce&index=ff959d40-b880-11e8-a6d9-e546fe2bba5f', - label: sampleDataLinkLabel, - icon: 'machineLearningApp', - }, - ]); + server.addAppLinksToSampleDataset('ecommerce', { + path: + '/app/ml#/modules/check_view_or_create?id=sample_data_ecommerce&index=ff959d40-b880-11e8-a6d9-e546fe2bba5f', + label: sampleDataLinkLabel, + icon: 'machineLearningApp', + }); - addAppLinksToSampleDataset('logs', [ - { - path: - '/app/ml#/modules/check_view_or_create?id=sample_data_weblogs&index=90943e30-9a47-11e8-b64d-95841ca0b247', - label: sampleDataLinkLabel, - icon: 'machineLearningApp', - }, - ]); - } + server.addAppLinksToSampleDataset('logs', { + path: + '/app/ml#/modules/check_view_or_create?id=sample_data_weblogs&index=90943e30-9a47-11e8-b64d-95841ca0b247', + label: sampleDataLinkLabel, + icon: 'machineLearningApp', + }); } diff --git a/x-pack/plugins/ml/server/plugin.ts b/x-pack/plugins/ml/server/plugin.ts index a3f57337384329..b5adf1fedec791 100644 --- a/x-pack/plugins/ml/server/plugin.ts +++ b/x-pack/plugins/ml/server/plugin.ts @@ -6,14 +6,15 @@ import { i18n } from '@kbn/i18n'; import { CoreSetup, IScopedClusterClient, Logger, PluginInitializerContext } from 'src/core/server'; -import { PluginsSetup, RouteInitialization } from './types'; +import { LicenseCheckResult, PluginsSetup, RouteInitialization } from './types'; import { PLUGIN_ID } from '../../../legacy/plugins/ml/common/constants/app'; +import { VALID_FULL_LICENSE_MODES } from '../../../legacy/plugins/ml/common/constants/license'; // @ts-ignore: could not find declaration file for module import { elasticsearchJsPlugin } from './client/elasticsearch_ml'; import { makeMlUsageCollector } from './lib/ml_telemetry'; import { initMlServerLog } from './client/log'; -import { initSampleDataSets } from './lib/sample_data_sets'; +import { addLinksToSampleDatasets } from './lib/sample_data_sets'; import { annotationRoutes } from './routes/annotations'; import { calendars } from './routes/calendars'; @@ -32,8 +33,6 @@ import { jobValidationRoutes } from './routes/job_validation'; import { notificationRoutes } from './routes/notification_settings'; import { resultsServiceRoutes } from './routes/results_service'; import { systemRoutes } from './routes/system'; -import { MlLicense } from '../../../legacy/plugins/ml/common/license'; -import { MlServerLicense } from './lib/license'; declare module 'kibana/server' { interface RequestHandlerContext { @@ -44,17 +43,25 @@ declare module 'kibana/server' { } export class MlServerPlugin { + private readonly pluginId: string = PLUGIN_ID; private log: Logger; private version: string; - private mlLicense: MlServerLicense; + + private licenseCheckResults: LicenseCheckResult = { + isAvailable: false, + isActive: false, + isEnabled: false, + isSecurityDisabled: false, + }; constructor(ctx: PluginInitializerContext) { this.log = ctx.logger.get(); this.version = ctx.env.packageInfo.branch; - this.mlLicense = new MlServerLicense(); } public setup(coreSetup: CoreSetup, plugins: PluginsSetup) { + let sampleLinksInitialized = false; + plugins.features.registerFeature({ id: PLUGIN_ID, name: i18n.translate('xpack.ml.featureRegistry.mlFeatureName', { @@ -80,10 +87,6 @@ export class MlServerPlugin { }, }); - this.mlLicense.setup(plugins.licensing.license$, [ - (mlLicense: MlLicense) => initSampleDataSets(mlLicense, plugins), - ]); - // Can access via router's handler function 'context' parameter - context.ml.mlClient const mlClient = coreSetup.elasticsearch.createClient(PLUGIN_ID, { plugins: [elasticsearchJsPlugin], @@ -97,7 +100,7 @@ export class MlServerPlugin { const routeInit: RouteInitialization = { router: coreSetup.http.createRouter(), - mlLicense: this.mlLicense, + getLicenseCheckResults: () => this.licenseCheckResults, }; annotationRoutes(routeInit, plugins.security); @@ -124,11 +127,42 @@ export class MlServerPlugin { coreSetup.getStartServices().then(([core]) => { makeMlUsageCollector(plugins.usageCollection, core.savedObjects); }); + + plugins.licensing.license$.subscribe(async license => { + const { isEnabled: securityIsEnabled } = license.getFeature('security'); + // @ts-ignore isAvailable is not read + const { isAvailable, isEnabled } = license.getFeature(this.pluginId); + + this.licenseCheckResults = { + isActive: license.isActive, + // This `isAvailable` check for the ml plugin returns false for a basic license + // ML should be available on basic with reduced functionality (only file data visualizer) + // TODO: This will need to be updated in the second step of this cutover to NP. + isAvailable: isEnabled, + isEnabled, + isSecurityDisabled: securityIsEnabled === false, + type: license.type, + }; + + if (sampleLinksInitialized === false) { + sampleLinksInitialized = true; + // Add links to the Kibana sample data sets if ml is enabled + // and license is trial or platinum. + if (isEnabled === true && plugins.home) { + if ( + this.licenseCheckResults.type && + VALID_FULL_LICENSE_MODES.includes(this.licenseCheckResults.type) + ) { + addLinksToSampleDatasets({ + addAppLinksToSampleDataset: plugins.home.sampleData.addAppLinksToSampleDataset, + }); + } + } + } + }); } public start() {} - public stop() { - this.mlLicense.unsubscribe(); - } + public stop() {} } diff --git a/x-pack/plugins/ml/server/routes/annotations.ts b/x-pack/plugins/ml/server/routes/annotations.ts index 16483bf8b887ee..bcc0238c366a3d 100644 --- a/x-pack/plugins/ml/server/routes/annotations.ts +++ b/x-pack/plugins/ml/server/routes/annotations.ts @@ -13,6 +13,7 @@ import { SecurityPluginSetup } from '../../../security/server'; import { isAnnotationsFeatureAvailable } from '../lib/check_annotations'; import { annotationServiceProvider } from '../models/annotation_service'; import { wrapError } from '../client/error_wrapper'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; import { deleteAnnotationSchema, @@ -35,7 +36,7 @@ function getAnnotationsFeatureUnavailableErrorMessage() { * Routes for annotations */ export function annotationRoutes( - { router, mlLicense }: RouteInitialization, + { router, getLicenseCheckResults }: RouteInitialization, securityPlugin: SecurityPluginSetup ) { /** @@ -60,7 +61,7 @@ export function annotationRoutes( body: schema.object(getAnnotationsSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { getAnnotations } = annotationServiceProvider(context); const resp = await getAnnotations(request.body); @@ -91,7 +92,7 @@ export function annotationRoutes( body: schema.object(indexAnnotationSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const annotationsFeatureAvailable = await isAnnotationsFeatureAvailable( context.ml!.mlClient.callAsCurrentUser @@ -130,7 +131,7 @@ export function annotationRoutes( params: schema.object(deleteAnnotationSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const annotationsFeatureAvailable = await isAnnotationsFeatureAvailable( context.ml!.mlClient.callAsCurrentUser diff --git a/x-pack/plugins/ml/server/routes/anomaly_detectors.ts b/x-pack/plugins/ml/server/routes/anomaly_detectors.ts index 5e1ca72a7200d4..7bf2fb7bc6903d 100644 --- a/x-pack/plugins/ml/server/routes/anomaly_detectors.ts +++ b/x-pack/plugins/ml/server/routes/anomaly_detectors.ts @@ -6,6 +6,7 @@ import { schema } from '@kbn/config-schema'; import { wrapError } from '../client/error_wrapper'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; import { anomalyDetectionJobSchema, @@ -15,7 +16,7 @@ import { /** * Routes for the anomaly detectors */ -export function jobRoutes({ router, mlLicense }: RouteInitialization) { +export function jobRoutes({ router, getLicenseCheckResults }: RouteInitialization) { /** * @apiGroup AnomalyDetectors * @@ -31,7 +32,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { path: '/api/ml/anomaly_detectors', validate: false, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.jobs'); return response.ok({ @@ -61,7 +62,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.jobs', { jobId }); @@ -89,7 +90,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { path: '/api/ml/anomaly_detectors/_stats', validate: false, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.jobStats'); return response.ok({ @@ -119,7 +120,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.jobStats', { jobId }); @@ -151,7 +152,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object({ ...anomalyDetectionJobSchema }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.addJob', { @@ -186,7 +187,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object({ ...anomalyDetectionUpdateJobSchema }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.updateJob', { @@ -220,7 +221,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.openJob', { @@ -253,7 +254,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const options: { jobId: string; force?: boolean } = { jobId: request.params.jobId, @@ -290,7 +291,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const options: { jobId: string; force?: boolean } = { jobId: request.params.jobId, @@ -325,7 +326,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { body: schema.any(), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.validateDetector', { body: request.body, @@ -358,7 +359,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object({ duration: schema.any() }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const jobId = request.params.jobId; const duration = request.body.duration; @@ -406,7 +407,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.records', { jobId: request.params.jobId, @@ -455,7 +456,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.buckets', { jobId: request.params.jobId, @@ -498,7 +499,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.overallBuckets', { jobId: request.params.jobId, @@ -536,7 +537,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const options = { jobId: request.params.jobId, diff --git a/x-pack/plugins/ml/server/routes/calendars.ts b/x-pack/plugins/ml/server/routes/calendars.ts index 5d1161e928d110..ae494d3578890b 100644 --- a/x-pack/plugins/ml/server/routes/calendars.ts +++ b/x-pack/plugins/ml/server/routes/calendars.ts @@ -6,6 +6,7 @@ import { RequestHandlerContext } from 'src/core/server'; import { schema } from '@kbn/config-schema'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { calendarSchema } from './schemas/calendars_schema'; @@ -41,13 +42,13 @@ function getCalendarsByIds(context: RequestHandlerContext, calendarIds: string) return cal.getCalendarsByIds(calendarIds); } -export function calendars({ router, mlLicense }: RouteInitialization) { +export function calendars({ router, getLicenseCheckResults }: RouteInitialization) { router.get( { path: '/api/ml/calendars', validate: false, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await getAllCalendars(context); @@ -67,7 +68,7 @@ export function calendars({ router, mlLicense }: RouteInitialization) { params: schema.object({ calendarIds: schema.string() }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { let returnValue; try { const calendarIds = request.params.calendarIds.split(','); @@ -94,7 +95,7 @@ export function calendars({ router, mlLicense }: RouteInitialization) { body: schema.object({ ...calendarSchema }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const body = request.body; const resp = await newCalendar(context, body); @@ -116,7 +117,7 @@ export function calendars({ router, mlLicense }: RouteInitialization) { body: schema.object({ ...calendarSchema }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { calendarId } = request.params; const body = request.body; @@ -138,7 +139,7 @@ export function calendars({ router, mlLicense }: RouteInitialization) { params: schema.object({ calendarId: schema.string() }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { calendarId } = request.params; const resp = await deleteCalendar(context, calendarId); diff --git a/x-pack/plugins/ml/server/routes/data_frame_analytics.ts b/x-pack/plugins/ml/server/routes/data_frame_analytics.ts index 7ed1aa02b24ab8..0a93320c05eb5b 100644 --- a/x-pack/plugins/ml/server/routes/data_frame_analytics.ts +++ b/x-pack/plugins/ml/server/routes/data_frame_analytics.ts @@ -7,6 +7,7 @@ import { schema } from '@kbn/config-schema'; import { wrapError } from '../client/error_wrapper'; import { analyticsAuditMessagesProvider } from '../models/data_frame_analytics/analytics_audit_messages'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; import { dataAnalyticsJobConfigSchema, @@ -17,7 +18,7 @@ import { /** * Routes for the data frame analytics */ -export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitialization) { +export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: RouteInitialization) { /** * @apiGroup DataFrameAnalytics * @@ -35,7 +36,7 @@ export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitializat params: schema.object({ analyticsId: schema.maybe(schema.string()) }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.getDataFrameAnalytics'); return response.ok({ @@ -63,7 +64,7 @@ export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitializat params: schema.object({ analyticsId: schema.string() }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.getDataFrameAnalytics', { @@ -90,7 +91,7 @@ export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitializat path: '/api/ml/data_frame/analytics/_stats', validate: false, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser( 'ml.getDataFrameAnalyticsStats' @@ -120,7 +121,7 @@ export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitializat params: schema.object({ analyticsId: schema.string() }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser( @@ -158,7 +159,7 @@ export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitializat body: schema.object(dataAnalyticsJobConfigSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser( @@ -191,7 +192,7 @@ export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitializat body: schema.object({ ...dataAnalyticsEvaluateSchema }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser( 'ml.evaluateDataFrameAnalytics', @@ -231,7 +232,7 @@ export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitializat body: schema.object({ ...dataAnalyticsExplainSchema }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser( 'ml.explainDataFrameAnalytics', @@ -266,7 +267,7 @@ export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitializat }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser( @@ -302,7 +303,7 @@ export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitializat }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.startDataFrameAnalytics', { @@ -336,7 +337,7 @@ export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitializat }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const options: { analyticsId: string; force?: boolean | undefined } = { analyticsId: request.params.analyticsId, @@ -376,7 +377,7 @@ export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitializat params: schema.object({ analyticsId: schema.string() }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { analyticsId } = request.params; const { getAnalyticsAuditMessages } = analyticsAuditMessagesProvider( diff --git a/x-pack/plugins/ml/server/routes/data_visualizer.ts b/x-pack/plugins/ml/server/routes/data_visualizer.ts index b37c80b815e1a6..e4d068784def1b 100644 --- a/x-pack/plugins/ml/server/routes/data_visualizer.ts +++ b/x-pack/plugins/ml/server/routes/data_visualizer.ts @@ -12,6 +12,7 @@ import { dataVisualizerFieldStatsSchema, dataVisualizerOverallStatsSchema, } from './schemas/data_visualizer_schema'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; function getOverallStats( @@ -67,7 +68,7 @@ function getStatsForFields( /** * Routes for the index data visualizer. */ -export function dataVisualizerRoutes({ router, mlLicense }: RouteInitialization) { +export function dataVisualizerRoutes({ router, getLicenseCheckResults }: RouteInitialization) { /** * @apiGroup DataVisualizer * @@ -82,7 +83,7 @@ export function dataVisualizerRoutes({ router, mlLicense }: RouteInitialization) path: '/api/ml/data_visualizer/get_field_stats/{indexPatternTitle}', validate: dataVisualizerFieldStatsSchema, }, - mlLicense.basicLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { params: { indexPatternTitle }, @@ -134,7 +135,7 @@ export function dataVisualizerRoutes({ router, mlLicense }: RouteInitialization) path: '/api/ml/data_visualizer/get_overall_stats/{indexPatternTitle}', validate: dataVisualizerOverallStatsSchema, }, - mlLicense.basicLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { params: { indexPatternTitle }, diff --git a/x-pack/plugins/ml/server/routes/datafeeds.ts b/x-pack/plugins/ml/server/routes/datafeeds.ts index c1ee839340996a..e3bce4c1328e4e 100644 --- a/x-pack/plugins/ml/server/routes/datafeeds.ts +++ b/x-pack/plugins/ml/server/routes/datafeeds.ts @@ -5,6 +5,7 @@ */ import { schema } from '@kbn/config-schema'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { startDatafeedSchema, datafeedConfigSchema } from './schemas/datafeeds_schema'; @@ -12,7 +13,7 @@ import { startDatafeedSchema, datafeedConfigSchema } from './schemas/datafeeds_s /** * Routes for datafeed service */ -export function dataFeedRoutes({ router, mlLicense }: RouteInitialization) { +export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitialization) { /** * @apiGroup DatafeedService * @@ -25,7 +26,7 @@ export function dataFeedRoutes({ router, mlLicense }: RouteInitialization) { path: '/api/ml/datafeeds', validate: false, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeeds'); @@ -52,7 +53,7 @@ export function dataFeedRoutes({ router, mlLicense }: RouteInitialization) { params: schema.object({ datafeedId: schema.string() }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeeds', { datafeedId }); @@ -78,7 +79,7 @@ export function dataFeedRoutes({ router, mlLicense }: RouteInitialization) { path: '/api/ml/datafeeds/_stats', validate: false, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeedStats'); @@ -105,7 +106,7 @@ export function dataFeedRoutes({ router, mlLicense }: RouteInitialization) { params: schema.object({ datafeedId: schema.string() }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeedStats', { @@ -136,7 +137,7 @@ export function dataFeedRoutes({ router, mlLicense }: RouteInitialization) { body: datafeedConfigSchema, }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.addDatafeed', { @@ -168,7 +169,7 @@ export function dataFeedRoutes({ router, mlLicense }: RouteInitialization) { body: datafeedConfigSchema, }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.updateDatafeed', { @@ -200,7 +201,7 @@ export function dataFeedRoutes({ router, mlLicense }: RouteInitialization) { query: schema.maybe(schema.object({ force: schema.maybe(schema.any()) })), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const options: { datafeedId: string; force?: boolean } = { datafeedId: request.params.jobId, @@ -236,7 +237,7 @@ export function dataFeedRoutes({ router, mlLicense }: RouteInitialization) { body: startDatafeedSchema, }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const { start, end } = request.body; @@ -270,7 +271,7 @@ export function dataFeedRoutes({ router, mlLicense }: RouteInitialization) { params: schema.object({ datafeedId: schema.string() }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const datafeedId = request.params.datafeedId; @@ -301,7 +302,7 @@ export function dataFeedRoutes({ router, mlLicense }: RouteInitialization) { params: schema.object({ datafeedId: schema.string() }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeedPreview', { diff --git a/x-pack/plugins/ml/server/routes/fields_service.ts b/x-pack/plugins/ml/server/routes/fields_service.ts index f4d4e5759a1054..bc092190c2c620 100644 --- a/x-pack/plugins/ml/server/routes/fields_service.ts +++ b/x-pack/plugins/ml/server/routes/fields_service.ts @@ -5,6 +5,7 @@ */ import { RequestHandlerContext } from 'src/core/server'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { @@ -28,7 +29,7 @@ function getTimeFieldRange(context: RequestHandlerContext, payload: any) { /** * Routes for fields service */ -export function fieldsService({ router, mlLicense }: RouteInitialization) { +export function fieldsService({ router, getLicenseCheckResults }: RouteInitialization) { /** * @apiGroup FieldsService * @@ -43,8 +44,7 @@ export function fieldsService({ router, mlLicense }: RouteInitialization) { body: getCardinalityOfFieldsSchema, }, }, - - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await getCardinalityOfFields(context, request.body); @@ -71,7 +71,7 @@ export function fieldsService({ router, mlLicense }: RouteInitialization) { body: getTimeFieldRangeSchema, }, }, - mlLicense.basicLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await getTimeFieldRange(context, request.body); diff --git a/x-pack/plugins/ml/server/routes/file_data_visualizer.ts b/x-pack/plugins/ml/server/routes/file_data_visualizer.ts index 69ec79704deee6..1d724a8843350d 100644 --- a/x-pack/plugins/ml/server/routes/file_data_visualizer.ts +++ b/x-pack/plugins/ml/server/routes/file_data_visualizer.ts @@ -18,6 +18,7 @@ import { Mappings, } from '../models/file_data_visualizer'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; import { incrementFileDataVisualizerIndexCreationCount } from '../lib/ml_telemetry'; @@ -42,7 +43,7 @@ function importData( /** * Routes for the file data visualizer. */ -export function fileDataVisualizerRoutes({ router, mlLicense }: RouteInitialization) { +export function fileDataVisualizerRoutes({ router, getLicenseCheckResults }: RouteInitialization) { /** * @apiGroup FileDataVisualizer * @@ -81,7 +82,7 @@ export function fileDataVisualizerRoutes({ router, mlLicense }: RouteInitializat }, }, }, - mlLicense.basicLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const result = await analyzeFiles(context, request.body, request.query); return response.ok({ body: result }); @@ -123,7 +124,7 @@ export function fileDataVisualizerRoutes({ router, mlLicense }: RouteInitializat }, }, }, - mlLicense.basicLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { id } = request.query; const { index, data, settings, mappings, ingestPipeline } = request.body; diff --git a/x-pack/plugins/ml/server/routes/filters.ts b/x-pack/plugins/ml/server/routes/filters.ts index 1f8891c247c67c..d5530668b26062 100644 --- a/x-pack/plugins/ml/server/routes/filters.ts +++ b/x-pack/plugins/ml/server/routes/filters.ts @@ -6,6 +6,7 @@ import { RequestHandlerContext } from 'src/core/server'; import { schema } from '@kbn/config-schema'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { createFilterSchema, updateFilterSchema } from './schemas/filters_schema'; @@ -43,7 +44,7 @@ function deleteFilter(context: RequestHandlerContext, filterId: string) { return mgr.deleteFilter(filterId); } -export function filtersRoutes({ router, mlLicense }: RouteInitialization) { +export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitialization) { /** * @apiGroup Filters * @@ -59,7 +60,7 @@ export function filtersRoutes({ router, mlLicense }: RouteInitialization) { path: '/api/ml/filters', validate: false, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await getAllFilters(context); @@ -89,7 +90,7 @@ export function filtersRoutes({ router, mlLicense }: RouteInitialization) { params: schema.object({ filterId: schema.string() }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await getFilter(context, request.params.filterId); return response.ok({ @@ -118,7 +119,7 @@ export function filtersRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(createFilterSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const body = request.body; const resp = await newFilter(context, body); @@ -150,7 +151,7 @@ export function filtersRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(updateFilterSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { filterId } = request.params; const body = request.body; @@ -181,7 +182,7 @@ export function filtersRoutes({ router, mlLicense }: RouteInitialization) { params: schema.object({ filterId: schema.string() }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { filterId } = request.params; const resp = await deleteFilter(context, filterId); @@ -211,7 +212,7 @@ export function filtersRoutes({ router, mlLicense }: RouteInitialization) { path: '/api/ml/filters/_stats', validate: false, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await getAllFilterStats(context); diff --git a/x-pack/plugins/ml/server/routes/indices.ts b/x-pack/plugins/ml/server/routes/indices.ts index fe66cc8b01396d..e01a7a0cbad287 100644 --- a/x-pack/plugins/ml/server/routes/indices.ts +++ b/x-pack/plugins/ml/server/routes/indices.ts @@ -6,12 +6,13 @@ import { schema } from '@kbn/config-schema'; import { wrapError } from '../client/error_wrapper'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; /** * Indices routes. */ -export function indicesRoutes({ router, mlLicense }: RouteInitialization) { +export function indicesRoutes({ router, getLicenseCheckResults }: RouteInitialization) { /** * @apiGroup Indices * @@ -29,7 +30,7 @@ export function indicesRoutes({ router, mlLicense }: RouteInitialization) { }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { body: { index, fields: requestFields }, diff --git a/x-pack/plugins/ml/server/routes/job_audit_messages.ts b/x-pack/plugins/ml/server/routes/job_audit_messages.ts index 5c6d8023cc172d..38df28e17ec0d6 100644 --- a/x-pack/plugins/ml/server/routes/job_audit_messages.ts +++ b/x-pack/plugins/ml/server/routes/job_audit_messages.ts @@ -5,6 +5,7 @@ */ import { schema } from '@kbn/config-schema'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { jobAuditMessagesProvider } from '../models/job_audit_messages'; @@ -12,7 +13,7 @@ import { jobAuditMessagesProvider } from '../models/job_audit_messages'; /** * Routes for job audit message routes */ -export function jobAuditMessagesRoutes({ router, mlLicense }: RouteInitialization) { +export function jobAuditMessagesRoutes({ router, getLicenseCheckResults }: RouteInitialization) { /** * @apiGroup JobAuditMessages * @@ -28,7 +29,7 @@ export function jobAuditMessagesRoutes({ router, mlLicense }: RouteInitializatio query: schema.maybe(schema.object({ from: schema.maybe(schema.any()) })), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { getJobAuditMessages } = jobAuditMessagesProvider( context.ml!.mlClient.callAsCurrentUser @@ -61,7 +62,7 @@ export function jobAuditMessagesRoutes({ router, mlLicense }: RouteInitializatio query: schema.maybe(schema.object({ from: schema.maybe(schema.any()) })), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { getJobAuditMessages } = jobAuditMessagesProvider( context.ml!.mlClient.callAsCurrentUser diff --git a/x-pack/plugins/ml/server/routes/job_service.ts b/x-pack/plugins/ml/server/routes/job_service.ts index 9ad2f80a1e66b4..e15888088d3a13 100644 --- a/x-pack/plugins/ml/server/routes/job_service.ts +++ b/x-pack/plugins/ml/server/routes/job_service.ts @@ -7,6 +7,7 @@ import Boom from 'boom'; import { schema } from '@kbn/config-schema'; import { IScopedClusterClient } from 'src/core/server'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { @@ -27,11 +28,12 @@ import { categorizationExamplesProvider } from '../models/job_service/new_job'; /** * Routes for job service */ -export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { +export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitialization) { async function hasPermissionToCreateJobs( callAsCurrentUser: IScopedClusterClient['callAsCurrentUser'] ) { - if (mlLicense.isSecurityEnabled() === false) { + const { isSecurityDisabled } = getLicenseCheckResults(); + if (isSecurityDisabled === true) { return true; } @@ -61,7 +63,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(forceStartDatafeedSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { forceStartDatafeeds } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { datafeedIds, start, end } = request.body; @@ -90,7 +92,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(datafeedIdsSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { stopDatafeeds } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { datafeedIds } = request.body; @@ -119,7 +121,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(jobIdsSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { deleteJobs } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -148,7 +150,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(jobIdsSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { closeJobs } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -177,7 +179,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(jobIdsSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { jobsSummary } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -206,7 +208,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(jobsWithTimerangeSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { jobsWithTimerange } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { dateFormatTz } = request.body; @@ -235,7 +237,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(jobIdsSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { createFullJobsList } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -262,7 +264,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { path: '/api/ml/jobs/groups', validate: false, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { getAllGroups } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const resp = await getAllGroups(); @@ -290,7 +292,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(updateGroupsSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { updateGroups } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobs } = request.body; @@ -317,7 +319,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { path: '/api/ml/jobs/deleting_jobs_tasks', validate: false, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { deletingJobTasks } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const resp = await deletingJobTasks(); @@ -345,7 +347,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(jobIdsSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { jobsExist } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -375,7 +377,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { query: schema.maybe(schema.object({ rollup: schema.maybe(schema.string()) })), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { indexPattern } = request.params; const isRollup = request.query.rollup === 'true'; @@ -406,7 +408,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(chartSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { indexPatternTitle, @@ -459,7 +461,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(chartSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { indexPatternTitle, @@ -507,7 +509,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { path: '/api/ml/jobs/all_jobs_and_group_ids', validate: false, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { getAllJobAndGroupIds } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const resp = await getAllJobAndGroupIds(); @@ -535,7 +537,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(lookBackProgressSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { getLookBackProgress } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobId, start, end } = request.body; @@ -564,7 +566,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(categorizationFieldExamplesSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { // due to the use of the _analyze endpoint which is called by the kibana user, // basic job creation privileges are required to use this endpoint @@ -623,7 +625,7 @@ export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { body: schema.object(topCategoriesSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { topCategories } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobId, count } = request.body; diff --git a/x-pack/plugins/ml/server/routes/job_validation.ts b/x-pack/plugins/ml/server/routes/job_validation.ts index 7d5a7a22859779..ae2e6885ba0f3b 100644 --- a/x-pack/plugins/ml/server/routes/job_validation.ts +++ b/x-pack/plugins/ml/server/routes/job_validation.ts @@ -7,6 +7,7 @@ import Boom from 'boom'; import { RequestHandlerContext } from 'src/core/server'; import { schema, TypeOf } from '@kbn/config-schema'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { @@ -24,7 +25,10 @@ type CalculateModelMemoryLimitPayload = TypeOf<typeof modelMemoryLimitSchema>; /** * Routes for job validation */ -export function jobValidationRoutes({ router, mlLicense }: RouteInitialization, version: string) { +export function jobValidationRoutes( + { getLicenseCheckResults, router }: RouteInitialization, + version: string +) { function calculateModelMemoryLimit( context: RequestHandlerContext, payload: CalculateModelMemoryLimitPayload @@ -66,13 +70,13 @@ export function jobValidationRoutes({ router, mlLicense }: RouteInitialization, body: estimateBucketSpanSchema, }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { let errorResp; const resp = await estimateBucketSpanFactory( context.ml!.mlClient.callAsCurrentUser, context.core.elasticsearch.adminClient.callAsInternalUser, - mlLicense.isSecurityEnabled() === false + getLicenseCheckResults().isSecurityDisabled )(request.body) // this catch gets triggered when the estimation code runs without error // but isn't able to come up with a bucket span estimation. @@ -113,7 +117,7 @@ export function jobValidationRoutes({ router, mlLicense }: RouteInitialization, body: modelMemoryLimitSchema, }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await calculateModelMemoryLimit(context, request.body); @@ -140,7 +144,7 @@ export function jobValidationRoutes({ router, mlLicense }: RouteInitialization, body: schema.object(validateCardinalitySchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await validateCardinality( context.ml!.mlClient.callAsCurrentUser, @@ -170,7 +174,7 @@ export function jobValidationRoutes({ router, mlLicense }: RouteInitialization, body: validateJobSchema, }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { // version corresponds to the version used in documentation links. const resp = await validateJob( @@ -178,7 +182,7 @@ export function jobValidationRoutes({ router, mlLicense }: RouteInitialization, request.body, version, context.core.elasticsearch.adminClient.callAsInternalUser, - mlLicense.isSecurityEnabled() === false + getLicenseCheckResults().isSecurityDisabled ); return response.ok({ diff --git a/x-pack/plugins/ml/server/routes/license_check_pre_routing_factory.ts b/x-pack/plugins/ml/server/routes/license_check_pre_routing_factory.ts new file mode 100644 index 00000000000000..a371af1abf2d13 --- /dev/null +++ b/x-pack/plugins/ml/server/routes/license_check_pre_routing_factory.ts @@ -0,0 +1,33 @@ +/* + * 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 { + KibanaRequest, + KibanaResponseFactory, + RequestHandler, + RequestHandlerContext, +} from 'src/core/server'; +import { LicenseCheckResult } from '../types'; + +export const licensePreRoutingFactory = ( + getLicenseCheckResults: () => LicenseCheckResult, + handler: RequestHandler<any, any, any> +): RequestHandler<any, any, any> => { + // License checking and enable/disable logic + return function licensePreRouting( + ctx: RequestHandlerContext, + request: KibanaRequest, + response: KibanaResponseFactory + ) { + const licenseCheckResults = getLicenseCheckResults(); + + if (!licenseCheckResults.isAvailable) { + return response.forbidden(); + } + + return handler(ctx, request, response); + }; +}; diff --git a/x-pack/plugins/ml/server/routes/modules.ts b/x-pack/plugins/ml/server/routes/modules.ts index a51718acb74254..c9b005d4e43f92 100644 --- a/x-pack/plugins/ml/server/routes/modules.ts +++ b/x-pack/plugins/ml/server/routes/modules.ts @@ -9,6 +9,7 @@ import { RequestHandlerContext } from 'kibana/server'; import { DatafeedOverride, JobOverride } from '../../../../legacy/plugins/ml/common/types/modules'; import { wrapError } from '../client/error_wrapper'; import { DataRecognizer } from '../models/data_recognizer'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { getModuleIdParamSchema, setupModuleBodySchema } from './schemas/modules'; import { RouteInitialization } from '../types'; @@ -64,7 +65,7 @@ function dataRecognizerJobsExist(context: RequestHandlerContext, moduleId: strin /** * Recognizer routes. */ -export function dataRecognizer({ router, mlLicense }: RouteInitialization) { +export function dataRecognizer({ router, getLicenseCheckResults }: RouteInitialization) { /** * @apiGroup DataRecognizer * @@ -83,7 +84,7 @@ export function dataRecognizer({ router, mlLicense }: RouteInitialization) { }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { indexPatternTitle } = request.params; const results = await recognize(context, indexPatternTitle); @@ -113,7 +114,7 @@ export function dataRecognizer({ router, mlLicense }: RouteInitialization) { }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { let { moduleId } = request.params; if (moduleId === '') { @@ -149,7 +150,7 @@ export function dataRecognizer({ router, mlLicense }: RouteInitialization) { body: setupModuleBodySchema, }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { moduleId } = request.params; @@ -206,7 +207,7 @@ export function dataRecognizer({ router, mlLicense }: RouteInitialization) { }), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const { moduleId } = request.params; const result = await dataRecognizerJobsExist(context, moduleId); diff --git a/x-pack/plugins/ml/server/routes/notification_settings.ts b/x-pack/plugins/ml/server/routes/notification_settings.ts index 59458b1e486db2..b68d2441333f93 100644 --- a/x-pack/plugins/ml/server/routes/notification_settings.ts +++ b/x-pack/plugins/ml/server/routes/notification_settings.ts @@ -4,13 +4,14 @@ * you may not use this file except in compliance with the Elastic License. */ +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; /** * Routes for notification settings */ -export function notificationRoutes({ router, mlLicense }: RouteInitialization) { +export function notificationRoutes({ router, getLicenseCheckResults }: RouteInitialization) { /** * @apiGroup NotificationSettings * @@ -23,7 +24,7 @@ export function notificationRoutes({ router, mlLicense }: RouteInitialization) { path: '/api/ml/notification_settings', validate: false, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const params = { includeDefaults: true, diff --git a/x-pack/plugins/ml/server/routes/results_service.ts b/x-pack/plugins/ml/server/routes/results_service.ts index 7a12e5196b9a5d..77c998acc9f27a 100644 --- a/x-pack/plugins/ml/server/routes/results_service.ts +++ b/x-pack/plugins/ml/server/routes/results_service.ts @@ -6,6 +6,7 @@ import { RequestHandlerContext } from 'src/core/server'; import { schema } from '@kbn/config-schema'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { @@ -73,7 +74,7 @@ function getPartitionFieldsValues(context: RequestHandlerContext, payload: any) /** * Routes for results service */ -export function resultsServiceRoutes({ router, mlLicense }: RouteInitialization) { +export function resultsServiceRoutes({ router, getLicenseCheckResults }: RouteInitialization) { /** * @apiGroup ResultsService * @@ -88,7 +89,7 @@ export function resultsServiceRoutes({ router, mlLicense }: RouteInitialization) body: schema.object(anomaliesTableDataSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await getAnomaliesTableData(context, request.body); @@ -115,7 +116,7 @@ export function resultsServiceRoutes({ router, mlLicense }: RouteInitialization) body: schema.object(categoryDefinitionSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await getCategoryDefinition(context, request.body); @@ -142,7 +143,7 @@ export function resultsServiceRoutes({ router, mlLicense }: RouteInitialization) body: schema.object(maxAnomalyScoreSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await getMaxAnomalyScore(context, request.body); @@ -169,7 +170,7 @@ export function resultsServiceRoutes({ router, mlLicense }: RouteInitialization) body: schema.object(categoryExamplesSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await getCategoryExamples(context, request.body); @@ -196,7 +197,7 @@ export function resultsServiceRoutes({ router, mlLicense }: RouteInitialization) body: schema.object(partitionFieldValuesSchema), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const resp = await getPartitionFieldsValues(context, request.body); diff --git a/x-pack/plugins/ml/server/routes/system.ts b/x-pack/plugins/ml/server/routes/system.ts index a0d7d312c04d4e..36a9ea1447f583 100644 --- a/x-pack/plugins/ml/server/routes/system.ts +++ b/x-pack/plugins/ml/server/routes/system.ts @@ -12,13 +12,14 @@ import { wrapError } from '../client/error_wrapper'; import { mlLog } from '../client/log'; import { privilegesProvider } from '../lib/check_privileges'; import { spacesUtilsProvider } from '../lib/spaces_utils'; +import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization, SystemRouteDeps } from '../types'; /** * System routes */ export function systemRoutes( - { router, mlLicense }: RouteInitialization, + { getLicenseCheckResults, router }: RouteInitialization, { spacesPlugin, cloud }: SystemRouteDeps ) { async function getNodeCount(context: RequestHandlerContext) { @@ -55,7 +56,7 @@ export function systemRoutes( body: schema.maybe(schema.any()), }, }, - mlLicense.basicLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { let upgradeInProgress = false; try { @@ -76,7 +77,7 @@ export function systemRoutes( } } - if (mlLicense.isSecurityEnabled() === false) { + if (getLicenseCheckResults().isSecurityDisabled) { // if xpack.security.enabled has been explicitly set to false // return that security is disabled and don't call the privilegeCheck endpoint return response.ok({ @@ -115,7 +116,7 @@ export function systemRoutes( }), }, }, - mlLicense.basicLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const ignoreSpaces = request.query && request.query.ignoreSpaces === 'true'; // if spaces is disabled force isMlEnabledInSpace to be true @@ -126,7 +127,7 @@ export function systemRoutes( const { getPrivileges } = privilegesProvider( context.ml!.mlClient.callAsCurrentUser, - mlLicense, + getLicenseCheckResults(), isMlEnabledInSpace, ignoreSpaces ); @@ -151,11 +152,11 @@ export function systemRoutes( path: '/api/ml/ml_node_count', validate: false, }, - mlLicense.basicLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { // check for basic license first for consistency with other // security disabled checks - if (mlLicense.isSecurityEnabled() === false) { + if (getLicenseCheckResults().isSecurityDisabled) { return response.ok({ body: await getNodeCount(context), }); @@ -202,7 +203,7 @@ export function systemRoutes( path: '/api/ml/info', validate: false, }, - mlLicense.basicLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { const info = await context.ml!.mlClient.callAsCurrentUser('ml.info'); const cloudId = cloud && cloud.cloudId; @@ -230,7 +231,7 @@ export function systemRoutes( body: schema.maybe(schema.any()), }, }, - mlLicense.fullLicenseAPIGuard(async (context, request, response) => { + licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { try { return response.ok({ body: await context.ml!.mlClient.callAsCurrentUser('search', request.body), diff --git a/x-pack/plugins/ml/server/types.ts b/x-pack/plugins/ml/server/types.ts index aeb4c505ec55e4..550abadb3c06f3 100644 --- a/x-pack/plugins/ml/server/types.ts +++ b/x-pack/plugins/ml/server/types.ts @@ -12,7 +12,6 @@ import { SecurityPluginSetup } from '../../security/server'; import { PluginSetupContract as FeaturesPluginSetup } from '../../features/server'; import { LicensingPluginSetup } from '../../licensing/server'; import { SpacesPluginSetup } from '../../spaces/server'; -import { MlServerLicense } from './lib/license'; export interface LicenseCheckResult { isAvailable: boolean; @@ -40,5 +39,5 @@ export interface PluginsSetup { export interface RouteInitialization { router: IRouter; - mlLicense: MlServerLicense; + getLicenseCheckResults: () => LicenseCheckResult; } diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 0e2a842db19c82..43f2e1956adf39 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -7537,6 +7537,9 @@ "xpack.ml.calendarsList.table.idColumnName": "ID", "xpack.ml.calendarsList.table.jobsColumnName": "ジョブ", "xpack.ml.calendarsList.table.newButtonLabel": "新規", + "xpack.ml.checkLicense.licenseHasExpiredMessage": "{licenseTypeName} 機械学習ライセンスが期限切れになりました。", + "xpack.ml.checkLicense.licenseInformationNotAvailableThisTimeMessage": "現在ライセンス情報が利用できないため機械学習を使用できません。", + "xpack.ml.checkLicense.mlIsUnavailableMessage": "機械学習が利用できません", "xpack.ml.controls.checkboxShowCharts.showChartsCheckboxLabel": "チャートを表示", "xpack.ml.controls.selectInterval.autoLabel": "自動", "xpack.ml.controls.selectInterval.dayLabel": "1 日", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index 95bc32a9a1c52b..328afa513337b0 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -7537,6 +7537,9 @@ "xpack.ml.calendarsList.table.idColumnName": "ID", "xpack.ml.calendarsList.table.jobsColumnName": "作业", "xpack.ml.calendarsList.table.newButtonLabel": "新建", + "xpack.ml.checkLicense.licenseHasExpiredMessage": "您的 {licenseTypeName} Machine Learning 许可证已过期。", + "xpack.ml.checkLicense.licenseInformationNotAvailableThisTimeMessage": "您不能使用 Machine Learning,因为许可证信息当前不可用。", + "xpack.ml.checkLicense.mlIsUnavailableMessage": "Machine Learning 不可用", "xpack.ml.controls.checkboxShowCharts.showChartsCheckboxLabel": "显示图表", "xpack.ml.controls.selectInterval.autoLabel": "自动", "xpack.ml.controls.selectInterval.dayLabel": "1 天", From d9a05af27a3411ff5ca42cf4ba37083917c40c19 Mon Sep 17 00:00:00 2001 From: spalger <spalger@users.noreply.github.com> Date: Tue, 3 Mar 2020 16:34:27 -0700 Subject: [PATCH 077/120] skip flaky suite (#59229) --- x-pack/test/functional/apps/lens/lens_reporting.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/x-pack/test/functional/apps/lens/lens_reporting.ts b/x-pack/test/functional/apps/lens/lens_reporting.ts index 2e3e630680ff0b..c72bf2e7f92e84 100644 --- a/x-pack/test/functional/apps/lens/lens_reporting.ts +++ b/x-pack/test/functional/apps/lens/lens_reporting.ts @@ -13,7 +13,8 @@ export default function({ getService, getPageObjects }: FtrProviderContext) { const esArchiver = getService('esArchiver'); const listingTable = getService('listingTable'); - describe('lens reporting', () => { + // FLAKY: https://github.com/elastic/kibana/issues/59229 + describe.skip('lens reporting', () => { before(async () => { await esArchiver.loadIfNeeded('lens/reporting'); }); From 1676421f00db0de64f152e1aca9538e6049bcadd Mon Sep 17 00:00:00 2001 From: Jonathan Budzenski <jon@budzenski.me> Date: Tue, 3 Mar 2020 19:10:33 -0600 Subject: [PATCH 078/120] skip test `sets isLoading when userNavigatedToPage` (#59253) --- .../applications/endpoint/store/policy_list/index.test.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/index.test.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/index.test.ts index 13ce1489a481a2..48586935675d56 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/index.test.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/policy_list/index.test.ts @@ -30,7 +30,8 @@ describe('policy list store concerns', () => { dispatch = store.dispatch; }); - test('it sets `isLoading` when `userNavigatedToPage`', async () => { + // https://github.com/elastic/kibana/issues/58972 + test.skip('it sets `isLoading` when `userNavigatedToPage`', async () => { expect(selectIsLoading(getState())).toBe(false); dispatch({ type: 'userNavigatedToPage', payload: 'policyListPage' }); expect(selectIsLoading(getState())).toBe(true); From 692c1d071309a0ed3425aabffdeabf6e3fcc86ff Mon Sep 17 00:00:00 2001 From: Spencer <email@spalger.com> Date: Tue, 3 Mar 2020 18:15:44 -0700 Subject: [PATCH 079/120] [ci] add Jenkinsfile for visual baseline job (#52154) * [ci] add Jenkinsfile for visual baseline job * fixup the jenkinsfile * update jenkinsfile syntax --- .ci/Jenkinsfile_visual_baseline | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 .ci/Jenkinsfile_visual_baseline diff --git a/.ci/Jenkinsfile_visual_baseline b/.ci/Jenkinsfile_visual_baseline new file mode 100644 index 00000000000000..4a1e0f7d74e078 --- /dev/null +++ b/.ci/Jenkinsfile_visual_baseline @@ -0,0 +1,21 @@ +#!/bin/groovy + +library 'kibana-pipeline-library' +kibanaLibrary.load() + +kibanaPipeline(timeoutMinutes: 120) { + catchError { + parallel([ + workers.base(name: 'oss-visualRegression', label: 'linux && immutable') { + kibanaPipeline.buildOss() + kibanaPipeline.functionalTestProcess('oss-visualRegression', './test/scripts/jenkins_visual_regression.sh') + }, + workers.base(name: 'xpack-visualRegression', label: 'linux && immutable') { + kibanaPipeline.buildXpack() + kibanaPipeline.functionalTestProcess('xpack-visualRegression', './test/scripts/jenkins_xpack_visual_regression.sh') + }, + ]) + } + + kibanaPipeline.sendMail() +} From b12ef02cc40dd6224c2cdef83d2481f311b11165 Mon Sep 17 00:00:00 2001 From: Caroline Horn <549577+cchaos@users.noreply.github.com> Date: Tue, 3 Mar 2020 20:26:40 -0500 Subject: [PATCH 080/120] [Lens] Changing the callout message when there are no fields to list (#59063) * [Lens] Changing the callout message when there are no fields to list * Using the same token for filter button label and removing old translations --- .../datapanel.test.tsx | 28 -------- .../indexpattern_datasource/datapanel.tsx | 72 +++++++++---------- .../translations/translations/ja-JP.json | 4 -- .../translations/translations/zh-CN.json | 4 -- 4 files changed, 36 insertions(+), 72 deletions(-) diff --git a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/datapanel.test.tsx b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/datapanel.test.tsx index e8a23b8e053c29..7c1db7ed43575a 100644 --- a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/datapanel.test.tsx +++ b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/datapanel.test.tsx @@ -533,34 +533,6 @@ describe('IndexPattern Data Panel', () => { expect(core.http.get).toHaveBeenCalledTimes(2); expect(overlapCount).toEqual(0); }); - - it('shows all fields if empty state button is clicked', async () => { - const props = testProps(); - - core.http.get.mockResolvedValue({ - indexPatternTitle: props.currentIndexPatternId, - existingFieldNames: [], - }); - - const inst = mountWithIntl(<IndexPatternDataPanel {...props} />); - - inst.update(); - await waitForPromises(); - - expect(inst.find('[data-test-subj="lnsFieldListPanelField"]').length).toEqual(0); - - act(() => { - inst - .find('[data-test-subj="lnsDataPanelShowAllFields"]') - .first() - .simulate('click'); - inst.update(); - }); - - expect( - props.setState.mock.calls.map(([fn]) => fn(props.state)).filter(s => s.showEmptyFields) - ).toHaveLength(1); - }); }); describe('while showing empty fields', () => { diff --git a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/datapanel.tsx b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/datapanel.tsx index 69982aed78b406..1b86c07a31c11d 100644 --- a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/datapanel.tsx +++ b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/datapanel.tsx @@ -22,7 +22,6 @@ import { EuiSwitch, EuiFacetButton, EuiIcon, - EuiButtonEmpty, EuiSpacer, EuiFormLabel, } from '@elastic/eui'; @@ -281,6 +280,10 @@ export const InnerIndexPatternDataPanel = function InnerIndexPatternDataPanel({ .slice(0, pageSize); const hilight = localState.nameFilter.toLowerCase(); + const filterByTypeLabel = i18n.translate('xpack.lens.indexPatterns.filterByTypeLabel', { + defaultMessage: 'Filter by type', + }); + return ( <ChildDragDropProvider {...dragDropContext}> <EuiFlexGroup @@ -367,18 +370,11 @@ export const InnerIndexPatternDataPanel = function InnerIndexPatternDataPanel({ })); }} > - <FormattedMessage - id="xpack.lens.indexPatterns.toggleFiltersPopover" - defaultMessage="Filter by type" - /> + {filterByTypeLabel} </EuiFacetButton> } > - <EuiPopoverTitle> - {i18n.translate('xpack.lens.indexPatterns.filterByTypeLabel', { - defaultMessage: 'Filter by type', - })} - </EuiPopoverTitle> + <EuiPopoverTitle>{filterByTypeLabel}</EuiPopoverTitle> <FixedEuiContextMenuPanel watchedItemProps={['icon', 'disabled']} data-test-subj="lnsIndexPatternTypeFilterOptions" @@ -481,39 +477,43 @@ export const InnerIndexPatternDataPanel = function InnerIndexPatternDataPanel({ size="s" color="warning" title={ - showEmptyFields - ? localState.typeFilter.length || localState.nameFilter.length - ? i18n.translate('xpack.lens.indexPatterns.noFilteredFieldsLabel', { - defaultMessage: - 'No fields match the current filters. Try changing your filters or time range.', - }) - : i18n.translate('xpack.lens.indexPatterns.noFieldsLabel', { - defaultMessage: 'No fields exist in this index pattern.', - }) + localState.typeFilter.length || localState.nameFilter.length + ? i18n.translate('xpack.lens.indexPatterns.noFilteredFieldsLabel', { + defaultMessage: 'No fields match the current filters.', + }) + : showEmptyFields + ? i18n.translate('xpack.lens.indexPatterns.noFieldsLabel', { + defaultMessage: 'No fields exist in this index pattern.', + }) : i18n.translate('xpack.lens.indexPatterns.emptyFieldsWithDataLabel', { - defaultMessage: - 'No fields have data with the current filters and time range. Try changing your filters or time range.', + defaultMessage: 'Looks like you don’t have any data.', }) } > {(!showEmptyFields || localState.typeFilter.length || localState.nameFilter.length) && ( - <EuiButtonEmpty - size="xs" - color="primary" - flush="left" - data-test-subj="lnsDataPanelShowAllFields" - onClick={() => { - trackUiEvent('indexpattern_show_all_fields_clicked'); - clearLocalState(); - onToggleEmptyFields(true); - }} - > - {i18n.translate('xpack.lens.indexPatterns.showAllFields.buttonText', { - defaultMessage: 'Show all fields', - })} - </EuiButtonEmpty> + <> + <strong> + {i18n.translate('xpack.lens.indexPatterns.noFields.tryText', { + defaultMessage: 'Try:', + })} + </strong> + <ul> + <li> + {i18n.translate('xpack.lens.indexPatterns.noFields.extendTimeBullet', { + defaultMessage: 'Extending the time range', + })} + </li> + <li> + {i18n.translate('xpack.lens.indexPatterns.noFields.fieldFilterBullet', { + defaultMessage: + 'Using {filterByTypeLabel} {arrow} to show fields without data', + values: { filterByTypeLabel, arrow: '↑' }, + })} + </li> + </ul> + </> )} </EuiCallOut> )} diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 43f2e1956adf39..76e4acf365ff54 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -6832,15 +6832,11 @@ "xpack.lens.indexPattern.termsOf": "{name} のトップの値", "xpack.lens.indexPattern.uniqueLabel": "{label} [{num}]", "xpack.lens.indexPatterns.clearFiltersLabel": "名前とタイプフィルターを消去", - "xpack.lens.indexPatterns.emptyFieldsWithDataLabel": "現在のフィルターと時間範囲に一致するデータがあるフィールドはありません。フィルターまたは時間範囲を変更してください。", "xpack.lens.indexPatterns.filterByNameAriaLabel": "検索フィールド", "xpack.lens.indexPatterns.filterByNameLabel": "フィールドを検索", "xpack.lens.indexPatterns.filterByTypeLabel": "タイプでフィルタリング", "xpack.lens.indexPatterns.noFieldsLabel": "このインデックスパターンにはフィールドがありません。", - "xpack.lens.indexPatterns.noFilteredFieldsLabel": "現在のフィルターと一致するフィールドはありません。フィルターまたは時間範囲を変更してください。", - "xpack.lens.indexPatterns.showAllFields.buttonText": "すべてのフィールドを表示", "xpack.lens.indexPatterns.toggleEmptyFieldsSwitch": "データがあるフィールドだけを表示", - "xpack.lens.indexPatterns.toggleFiltersPopover": "フィルタリングされたフィールド", "xpack.lens.indexPatternSuggestion.removeLayerLabel": "{indexPatternTitle}のみを表示", "xpack.lens.indexPatternSuggestion.removeLayerPositionLabel": "レイヤー{layerNumber}のみを表示", "xpack.lens.lensSavedObjectLabel": "レンズビジュアライゼーション", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index 328afa513337b0..3e0425d7fe7e9e 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -6832,15 +6832,11 @@ "xpack.lens.indexPattern.termsOf": "{name} 的排名最前值", "xpack.lens.indexPattern.uniqueLabel": "{label} [{num}]", "xpack.lens.indexPatterns.clearFiltersLabel": "清除名称和类型筛选", - "xpack.lens.indexPatterns.emptyFieldsWithDataLabel": "在当前筛选和时间范围下,没有任何字段有数据。请尝试更改筛选或时间范围。", "xpack.lens.indexPatterns.filterByNameAriaLabel": "搜索字段", "xpack.lens.indexPatterns.filterByNameLabel": "搜索字段", "xpack.lens.indexPatterns.filterByTypeLabel": "按类型筛选", "xpack.lens.indexPatterns.noFieldsLabel": "在此索引模式中不存在任何字段。", - "xpack.lens.indexPatterns.noFilteredFieldsLabel": "没有任何字段匹配当前筛选。请尝试更改筛选或时间范围。", - "xpack.lens.indexPatterns.showAllFields.buttonText": "显示所有字段", "xpack.lens.indexPatterns.toggleEmptyFieldsSwitch": "仅显示具有数据的字段", - "xpack.lens.indexPatterns.toggleFiltersPopover": "已筛选字段", "xpack.lens.indexPatternSuggestion.removeLayerLabel": "仅显示 {indexPatternTitle}", "xpack.lens.indexPatternSuggestion.removeLayerPositionLabel": "仅显示图层 {layerNumber}", "xpack.lens.lensSavedObjectLabel": "Lens 可视化", From 5539d6955f8f59822efd1c2a1259ce312ffa79b7 Mon Sep 17 00:00:00 2001 From: Oliver Gupte <ogupte@users.noreply.github.com> Date: Tue, 3 Mar 2020 18:26:28 -0800 Subject: [PATCH 081/120] [APM] Service Map Layout (#59020) * Addresses #55544. - uses the core breadthfirst cytoscape layout - rotates elements by -90degrees - selects rum nodes as roots - implements hover styles to show connected nodes - fixes flash of unstyled cytoscape elements on initial load * PR review feedback * adds canned response for testing cytoscape layout in storybook * update dep snapshot for removing cytoscape-dagre --- .../kbn-storybook/storybook_config/config.js | 2 +- .../app/ServiceMap/Cytoscape.stories.tsx | 243 ++++++++++-------- .../components/app/ServiceMap/Cytoscape.tsx | 102 ++++++-- .../cytoscape-layout-test-response.json | 1 + .../app/ServiceMap/cytoscapeOptions.ts | 33 ++- .../components/app/ServiceMap/index.tsx | 5 +- .../{useRefHeight.ts => useRefDimensions.ts} | 17 +- x-pack/package.json | 1 - .../plugins/apm/typings/cytoscape_dagre.d.ts | 7 - yarn.lock | 22 -- 10 files changed, 251 insertions(+), 182 deletions(-) create mode 100644 x-pack/legacy/plugins/apm/public/components/app/ServiceMap/cytoscape-layout-test-response.json rename x-pack/legacy/plugins/apm/public/components/app/ServiceMap/{useRefHeight.ts => useRefDimensions.ts} (56%) delete mode 100644 x-pack/plugins/apm/typings/cytoscape_dagre.d.ts diff --git a/packages/kbn-storybook/storybook_config/config.js b/packages/kbn-storybook/storybook_config/config.js index a7975773e675be..d97bd3f7c2dccc 100644 --- a/packages/kbn-storybook/storybook_config/config.js +++ b/packages/kbn-storybook/storybook_config/config.js @@ -55,7 +55,7 @@ addParameters({ brandTitle: 'Kibana Storybook', brandUrl: 'https://github.com/elastic/kibana/tree/master/packages/kbn-storybook', }), - showPanel: true, + showPanel: false, isFullscreen: false, panelPosition: 'bottom', isToolshown: true, diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Cytoscape.stories.tsx b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Cytoscape.stories.tsx index 52941391ca3641..6f7b743d8b7795 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Cytoscape.stories.tsx +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Cytoscape.stories.tsx @@ -9,8 +9,12 @@ import { storiesOf } from '@storybook/react'; import cytoscape from 'cytoscape'; import React from 'react'; import { Cytoscape } from './Cytoscape'; +import { getCytoscapeElements } from './get_cytoscape_elements'; +import serviceMapResponse from './cytoscape-layout-test-response.json'; import { iconForNode } from './icons'; +const elementsFromResponses = getCytoscapeElements([serviceMapResponse], ''); + storiesOf('app/ServiceMap/Cytoscape', module).add( 'example', () => { @@ -49,11 +53,13 @@ storiesOf('app/ServiceMap/Cytoscape', module).add( } ]; const height = 300; + const width = 1340; const serviceName = 'opbeans-python'; return ( <Cytoscape elements={elements} height={height} + width={width} serviceName={serviceName} /> ); @@ -66,114 +72,137 @@ storiesOf('app/ServiceMap/Cytoscape', module).add( } ); -storiesOf('app/ServiceMap/Cytoscape', module).add( - 'node icons', - () => { - const cy = cytoscape(); - const elements = [ - { data: { id: 'default', label: 'default', type: undefined } }, - { data: { id: 'cache', label: 'cache', type: 'cache' } }, - { data: { id: 'database', label: 'database', type: 'database' } }, - { data: { id: 'external', label: 'external', type: 'external' } }, - { data: { id: 'messaging', label: 'messaging', type: 'messaging' } }, +storiesOf('app/ServiceMap/Cytoscape', module) + .add( + 'node icons', + () => { + const cy = cytoscape(); + const elements = [ + { data: { id: 'default', label: 'default', type: undefined } }, + { data: { id: 'cache', label: 'cache', type: 'cache' } }, + { data: { id: 'database', label: 'database', type: 'database' } }, + { data: { id: 'external', label: 'external', type: 'external' } }, + { data: { id: 'messaging', label: 'messaging', type: 'messaging' } }, - { - data: { - id: 'dotnet', - label: 'dotnet service', - type: 'service', - agentName: 'dotnet' - } - }, - { - data: { - id: 'go', - label: 'go service', - type: 'service', - agentName: 'go' - } - }, - { - data: { - id: 'java', - label: 'java service', - type: 'service', - agentName: 'java' - } - }, - { - data: { - id: 'js-base', - label: 'js-base service', - type: 'service', - agentName: 'js-base' - } - }, - { - data: { - id: 'nodejs', - label: 'nodejs service', - type: 'service', - agentName: 'nodejs' + { + data: { + id: 'dotnet', + label: 'dotnet service', + type: 'service', + agentName: 'dotnet' + } + }, + { + data: { + id: 'go', + label: 'go service', + type: 'service', + agentName: 'go' + } + }, + { + data: { + id: 'java', + label: 'java service', + type: 'service', + agentName: 'java' + } + }, + { + data: { + id: 'js-base', + label: 'js-base service', + type: 'service', + agentName: 'js-base' + } + }, + { + data: { + id: 'nodejs', + label: 'nodejs service', + type: 'service', + agentName: 'nodejs' + } + }, + { + data: { + id: 'php', + label: 'php service', + type: 'service', + agentName: 'php' + } + }, + { + data: { + id: 'python', + label: 'python service', + type: 'service', + agentName: 'python' + } + }, + { + data: { + id: 'ruby', + label: 'ruby service', + type: 'service', + agentName: 'ruby' + } } - }, - { - data: { - id: 'php', - label: 'php service', - type: 'service', - agentName: 'php' - } - }, - { - data: { - id: 'python', - label: 'python service', - type: 'service', - agentName: 'python' - } - }, - { - data: { - id: 'ruby', - label: 'ruby service', - type: 'service', - agentName: 'ruby' - } - } - ]; - cy.add(elements); + ]; + cy.add(elements); - return ( - <EuiFlexGroup gutterSize="l" wrap={true}> - {cy.nodes().map(node => ( - <EuiFlexItem key={node.data('id')}> - <EuiCard - description={ - <pre> - agentName: {node.data('agentName') || 'undefined'}, type:{' '} - {node.data('type') || 'undefined'} - </pre> - } - icon={ - <img - alt={node.data('label')} - src={iconForNode(node)} - height={80} - width={80} - /> - } - title={node.data('label')} - /> - </EuiFlexItem> - ))} - </EuiFlexGroup> - ); - }, - { - info: { - propTables: false, - source: false + return ( + <EuiFlexGroup gutterSize="l" wrap={true}> + {cy.nodes().map(node => ( + <EuiFlexItem key={node.data('id')}> + <EuiCard + description={ + <pre> + agentName: {node.data('agentName') || 'undefined'}, type:{' '} + {node.data('type') || 'undefined'} + </pre> + } + icon={ + <img + alt={node.data('label')} + src={iconForNode(node)} + height={80} + width={80} + /> + } + title={node.data('label')} + /> + </EuiFlexItem> + ))} + </EuiFlexGroup> + ); + }, + { + info: { + propTables: false, + source: false + } } - } -); + ) + .add( + 'layout', + () => { + const height = 640; + const width = 1340; + const serviceName = undefined; // global service map + return ( + <Cytoscape + elements={elementsFromResponses} + height={height} + width={width} + serviceName={serviceName} + /> + ); + }, + { + info: { + source: false + } + } + ) + .addParameters({ options: { showPanel: false } }); diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Cytoscape.tsx b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Cytoscape.tsx index f7d74bee1aa505..64b82fc8886ca5 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Cytoscape.tsx +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/Cytoscape.tsx @@ -10,13 +10,16 @@ import React, { useRef, useEffect, ReactNode, - createContext + createContext, + useCallback } from 'react'; import cytoscape from 'cytoscape'; -import dagre from 'cytoscape-dagre'; -import { cytoscapeOptions } from './cytoscapeOptions'; - -cytoscape.use(dagre); +import { isRumAgentName } from '../../../../../../../plugins/apm/common/agent_name'; +import { + cytoscapeOptions, + nodeHeight, + animationOptions +} from './cytoscapeOptions'; export const CytoscapeContext = createContext<cytoscape.Core | undefined>( undefined @@ -26,6 +29,7 @@ interface CytoscapeProps { children?: ReactNode; elements: cytoscape.ElementDefinition[]; height: number; + width: number; serviceName?: string; style?: CSSProperties; } @@ -52,30 +56,60 @@ function useCytoscape(options: cytoscape.CytoscapeOptions) { return [ref, cy] as [React.MutableRefObject<any>, cytoscape.Core | undefined]; } +function getLayoutOptions( + selectedRoots: string[], + height: number, + width: number +): cytoscape.LayoutOptions { + return { + name: 'breadthfirst', + roots: selectedRoots, + fit: true, + padding: nodeHeight, + spacingFactor: 0.85, + animate: true, + animationEasing: animationOptions.easing, + animationDuration: animationOptions.duration, + // Rotate nodes from top -> bottom to display left -> right + // @ts-ignore + transform: (node: any, { x, y }: cytoscape.Position) => ({ x: y, y: -x }), + // swap width/height of boundingBox to compensation for the rotation + boundingBox: { x1: 0, y1: 0, w: height, h: width } + }; +} + +function selectRoots(elements: cytoscape.ElementDefinition[]): string[] { + const nodes = cytoscape({ elements }).nodes(); + const unconnectedNodes = nodes.roots().intersection(nodes.leaves()); + const rumNodes = nodes.filter(node => isRumAgentName(node.data('agentName'))); + return rumNodes.union(unconnectedNodes).map(node => node.id()); +} + export function Cytoscape({ children, elements, height, + width, serviceName, style }: CytoscapeProps) { - const [ref, cy] = useCytoscape({ ...cytoscapeOptions, elements }); + const initialElements = elements.map(element => ({ + ...element, + // prevents flash of unstyled elements + classes: [element.classes, 'invisible'].join(' ').trim() + })); + + const [ref, cy] = useCytoscape({ + ...cytoscapeOptions, + elements: initialElements + }); // Add the height to the div style. The height is a separate prop because it // is required and can trigger rendering when changed. const divStyle = { ...style, height }; - // Trigger a custom "data" event when data changes - useEffect(() => { - if (cy) { - cy.add(elements); - cy.trigger('data'); - } - }, [cy, elements]); - - // Set up cytoscape event handlers - useEffect(() => { - const dataHandler: cytoscape.EventHandler = event => { + const dataHandler = useCallback<cytoscape.EventHandler>( + event => { if (cy) { // Add the "primary" class to the node if its id matches the serviceName. if (cy.nodes().length > 0 && serviceName) { @@ -84,10 +118,31 @@ export function Cytoscape({ } if (event.cy.elements().length > 0) { - cy.layout(cytoscapeOptions.layout as cytoscape.LayoutOptions).run(); + const selectedRoots = selectRoots(elements); + const layout = cy.layout( + getLayoutOptions(selectedRoots, height, width) + ); + layout.one('layoutstop', () => { + // show elements after layout is applied + cy.elements().removeClass('invisible'); + }); + layout.run(); } } - }; + }, + [cy, serviceName, elements, height, width] + ); + + // Trigger a custom "data" event when data changes + useEffect(() => { + if (cy) { + cy.add(elements); + cy.trigger('data'); + } + }, [cy, elements]); + + // Set up cytoscape event handlers + useEffect(() => { const mouseoverHandler: cytoscape.EventHandler = event => { event.target.addClass('hover'); event.target.connectedEdges().addClass('nodeHover'); @@ -99,18 +154,23 @@ export function Cytoscape({ if (cy) { cy.on('data', dataHandler); + cy.ready(dataHandler); cy.on('mouseover', 'edge, node', mouseoverHandler); cy.on('mouseout', 'edge, node', mouseoutHandler); } return () => { if (cy) { - cy.removeListener('data', undefined, dataHandler); + cy.removeListener( + 'data', + undefined, + dataHandler as cytoscape.EventHandler + ); cy.removeListener('mouseover', 'edge, node', mouseoverHandler); cy.removeListener('mouseout', 'edge, node', mouseoutHandler); } }; - }, [cy, serviceName]); + }, [cy, dataHandler, serviceName]); return ( <CytoscapeContext.Provider value={cy}> diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/cytoscape-layout-test-response.json b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/cytoscape-layout-test-response.json new file mode 100644 index 00000000000000..924330b1f1d8bf --- /dev/null +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/cytoscape-layout-test-response.json @@ -0,0 +1 @@ +{"connections":[{"source":{"service.environment":"production","service.name":"opbeans-python","agent.name":"python"},"destination":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"}},{"source":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"},"destination":{"service.environment":"production","service.name":"opbeans-dotnet","agent.name":"dotnet"}},{"source":{"service.environment":"production","service.name":"opbeans-dotnet","agent.name":"dotnet"},"destination":{"destination.address":"opbeans-java","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"},"destination":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"}},{"source":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"},"destination":{"destination.address":"opbeans-java","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-dotnet","agent.name":"dotnet"},"destination":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"}},{"source":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"},"destination":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"}},{"source":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"},"destination":{"destination.address":"opbeans-dotnet","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-node","agent.name":"nodejs"},"destination":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"}},{"source":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"},"destination":{"destination.address":"opbeans-ruby","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":null,"service.name":"client","agent.name":"js-base"},"destination":{"service.environment":"production","service.name":"opbeans-node","agent.name":"nodejs"}},{"source":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"},"destination":{"destination.address":"opbeans-node","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-ruby","agent.name":"ruby"},"destination":{"service.environment":"production","service.name":"opbeans-python","agent.name":"python"}},{"source":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"},"destination":{"destination.address":"postgres","span.subtype":"postgresql","span.type":"db"}},{"source":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"},"destination":{"service.environment":"production","service.name":"opbeans-node","agent.name":"nodejs"}},{"source":{"service.environment":"production","service.name":"opbeans-node","agent.name":"nodejs"},"destination":{"service.environment":"production","service.name":"opbeans-dotnet","agent.name":"dotnet"}},{"source":{"service.environment":"production","service.name":"opbeans-dotnet","agent.name":"dotnet"},"destination":{"destination.address":"opbeans-ruby","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"},"destination":{"destination.address":"opbeans-go","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-dotnet","agent.name":"dotnet"},"destination":{"destination.address":"opbeans-node","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"},"destination":{"service.environment":"production","service.name":"opbeans-ruby","agent.name":"ruby"}},{"source":{"service.environment":"production","service.name":"opbeans-ruby","agent.name":"ruby"},"destination":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"}},{"source":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"},"destination":{"destination.address":"opbeans-java","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-dotnet","agent.name":"dotnet"},"destination":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"}},{"source":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"},"destination":{"destination.address":"opbeans-go","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-ruby","agent.name":"ruby"},"destination":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"}},{"source":{"service.environment":"production","service.name":"opbeans-python","agent.name":"python"},"destination":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"}},{"source":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"},"destination":{"service.environment":"production","service.name":"opbeans-ruby","agent.name":"ruby"}},{"source":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"},"destination":{"destination.address":"opbeans-ruby","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"},"destination":{"service.environment":"production","service.name":"opbeans-node","agent.name":"nodejs"}},{"source":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"},"destination":{"destination.address":"postgres","span.subtype":"postgresql","span.type":"db"}},{"source":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"},"destination":{"destination.address":"opbeans-node","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-node","agent.name":"nodejs"},"destination":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"}},{"source":{"service.environment":"production","service.name":"opbeans-node","agent.name":"nodejs"},"destination":{"service.environment":"production","service.name":"opbeans-python","agent.name":"python"}},{"source":{"service.environment":"production","service.name":"opbeans-ruby","agent.name":"ruby"},"destination":{"service.environment":"production","service.name":"opbeans-dotnet","agent.name":"dotnet"}},{"source":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"},"destination":{"destination.address":"opbeans-python","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-dotnet","agent.name":"dotnet"},"destination":{"destination.address":"opbeans-python","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"},"destination":{"service.environment":"production","service.name":"opbeans-python","agent.name":"python"}},{"source":{"service.environment":"production","service.name":"opbeans-python","agent.name":"python"},"destination":{"service.environment":"production","service.name":"opbeans-dotnet","agent.name":"dotnet"}},{"source":{"service.environment":"production","service.name":"opbeans-node","agent.name":"nodejs"},"destination":{"service.environment":"production","service.name":"opbeans-ruby","agent.name":"ruby"}},{"source":{"service.environment":"production","service.name":"opbeans-dotnet","agent.name":"dotnet"},"destination":{"destination.address":"opbeans-go","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-python","agent.name":"python"},"destination":{"service.environment":"production","service.name":"opbeans-node","agent.name":"nodejs"}},{"source":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"},"destination":{"destination.address":"opbeans-dotnet","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-ruby","agent.name":"ruby"},"destination":{"service.environment":"production","service.name":"opbeans-node","agent.name":"nodejs"}},{"source":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"},"destination":{"service.environment":"production","service.name":"opbeans-dotnet","agent.name":"dotnet"}},{"source":{"service.environment":null,"service.name":"client","agent.name":"js-base"},"destination":{"destination.address":"opbeans-node","span.subtype":null,"span.type":"resource"}},{"source":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"},"destination":{"destination.address":"opbeans-python","span.subtype":"http","span.type":"external"}},{"source":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"},"destination":{"service.environment":"production","service.name":"opbeans-python","agent.name":"python"}},{"source":{"service.environment":"production","service.name":"opbeans-python","agent.name":"python"},"destination":{"service.environment":"production","service.name":"opbeans-ruby","agent.name":"ruby"}},{"source":{"service.environment":null,"service.name":"client","agent.name":"js-base"},"destination":{"destination.address":"opbeans-node","span.subtype":null,"span.type":"external"}}],"discoveredServices":[{"from":{"destination.address":"opbeans-dotnet","span.subtype":"http","span.type":"external"},"to":{"service.environment":"production","service.name":"opbeans-dotnet","agent.name":"dotnet"}},{"from":{"destination.address":"opbeans-node","span.subtype":null,"span.type":"external"},"to":{"service.environment":"production","service.name":"opbeans-node","agent.name":"nodejs"}},{"from":{"destination.address":"opbeans-java","span.subtype":"http","span.type":"external"},"to":{"service.environment":"production","service.name":"opbeans-java","agent.name":"java"}},{"from":{"destination.address":"opbeans-go","span.subtype":"http","span.type":"external"},"to":{"service.environment":"production","service.name":"opbeans-go","agent.name":"go"}},{"from":{"destination.address":"opbeans-python","span.subtype":"http","span.type":"external"},"to":{"service.environment":"production","service.name":"opbeans-python","agent.name":"python"}},{"from":{"destination.address":"opbeans-node","span.subtype":"http","span.type":"external"},"to":{"service.environment":"production","service.name":"opbeans-node","agent.name":"nodejs"}},{"from":{"destination.address":"opbeans-ruby","span.subtype":"http","span.type":"external"},"to":{"service.environment":"production","service.name":"opbeans-ruby","agent.name":"ruby"}}],"services":[{"service.name":"apm-server","agent.name":"go","service.environment":null},{"service.name":"opbeans-python","agent.name":"python","service.environment":null},{"service.name":"opbeans-ruby","agent.name":"ruby","service.environment":null},{"service.name":"opbeans-node","agent.name":"nodejs","service.environment":null},{"service.name":"opbeans-go","agent.name":"go","service.environment":null},{"service.name":"opbeans-java","agent.name":"java","service.environment":null},{"service.name":"opbeans-dotnet","agent.name":"dotnet","service.environment":null},{"service.name":"client","agent.name":"js-base","service.environment":null}]} diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/cytoscapeOptions.ts b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/cytoscapeOptions.ts index 8411169dbc9444..1a2feb5a097e52 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/cytoscapeOptions.ts +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/cytoscapeOptions.ts @@ -15,17 +15,6 @@ export const animationOptions: cytoscape.AnimationOptions = { const lineColor = '#C5CCD7'; export const nodeHeight = parseInt(theme.avatarSizing.l.size, 10); -const layout = { - name: 'dagre', - nodeDimensionsIncludeLabels: true, - rankDir: 'LR', - animate: true, - animationEasing: animationOptions.easing, - animationDuration: animationOptions.duration, - fit: true, - padding: nodeHeight -}; - function isService(el: cytoscape.NodeSingular) { return el.data('type') === 'service'; } @@ -79,7 +68,9 @@ const style: cytoscape.Stylesheet[] = [ { selector: 'edge', style: { - 'curve-style': 'bezier', + 'curve-style': 'taxi', + // @ts-ignore + 'taxi-direction': 'rightward', 'line-color': lineColor, 'overlay-opacity': 0, 'target-arrow-color': lineColor, @@ -103,13 +94,29 @@ const style: cytoscape.Stylesheet[] = [ 'source-distance-from-node': theme.paddingSizes.xs, 'target-distance-from-node': theme.paddingSizes.xs } + }, + // @ts-ignore + { + selector: '.invisible', + style: { visibility: 'hidden' } + }, + { + selector: 'edge.nodeHover', + style: { + width: 4 + } + }, + { + selector: 'node.hover', + style: { + 'border-width': 4 + } } ]; export const cytoscapeOptions: cytoscape.CytoscapeOptions = { autoungrabify: true, boxSelectionEnabled: false, - layout, maxZoom: 3, minZoom: 0.2, style diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/index.tsx b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/index.tsx index b14ecaa803f6d4..d5f0728a7ff128 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/index.tsx +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/index.tsx @@ -32,7 +32,7 @@ import { Cytoscape } from './Cytoscape'; import { getCytoscapeElements } from './get_cytoscape_elements'; import { PlatinumLicensePrompt } from './PlatinumLicensePrompt'; import { Popover } from './Popover'; -import { useRefHeight } from './useRefHeight'; +import { useRefDimensions } from './useRefDimensions'; interface ServiceMapProps { serviceName?: string; @@ -196,7 +196,7 @@ export function ServiceMap({ serviceName }: ServiceMapProps) { // eslint-disable-next-line react-hooks/exhaustive-deps }, [elements]); - const [wrapperRef, height] = useRefHeight(); + const { ref: wrapperRef, width, height } = useRefDimensions(); if (!license) { return null; @@ -211,6 +211,7 @@ export function ServiceMap({ serviceName }: ServiceMapProps) { elements={renderedElements.current} serviceName={serviceName} height={height} + width={width} style={cytoscapeDivStyle} > <Controls /> diff --git a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/useRefHeight.ts b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/useRefDimensions.ts similarity index 56% rename from x-pack/legacy/plugins/apm/public/components/app/ServiceMap/useRefHeight.ts rename to x-pack/legacy/plugins/apm/public/components/app/ServiceMap/useRefDimensions.ts index b8fba47acd2d6f..c8639b334f66aa 100644 --- a/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/useRefHeight.ts +++ b/x-pack/legacy/plugins/apm/public/components/app/ServiceMap/useRefDimensions.ts @@ -3,18 +3,19 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ -import { MutableRefObject, useRef } from 'react'; +import { useRef } from 'react'; import { useWindowSize } from 'react-use'; -export function useRefHeight(): [ - MutableRefObject<HTMLDivElement | null>, - number -] { +export function useRefDimensions() { const ref = useRef<HTMLDivElement>(null); const windowHeight = useWindowSize().height; - const topOffset = ref.current?.getBoundingClientRect()?.top ?? 0; - const height = ref.current ? windowHeight - topOffset : 0; + if (!ref.current) { + return { ref, width: 0, height: 0 }; + } - return [ref, height]; + const { top, width } = ref.current.getBoundingClientRect(); + const height = windowHeight - top; + + return { ref, width, height }; } diff --git a/x-pack/package.json b/x-pack/package.json index 96e06dd71b3fea..585d05b3c8a135 100644 --- a/x-pack/package.json +++ b/x-pack/package.json @@ -222,7 +222,6 @@ "copy-to-clipboard": "^3.0.8", "cronstrue": "^1.51.0", "cytoscape": "^3.10.0", - "cytoscape-dagre": "^2.2.2", "d3": "3.5.17", "d3-scale": "1.0.7", "dedent": "^0.7.0", diff --git a/x-pack/plugins/apm/typings/cytoscape_dagre.d.ts b/x-pack/plugins/apm/typings/cytoscape_dagre.d.ts deleted file mode 100644 index b5bbdfc14d9d35..00000000000000 --- a/x-pack/plugins/apm/typings/cytoscape_dagre.d.ts +++ /dev/null @@ -1,7 +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. - */ - -declare module 'cytoscape-dagre'; diff --git a/yarn.lock b/yarn.lock index e4d5dcce5bca08..dde08490d62f06 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10695,13 +10695,6 @@ cypress@^4.0.2: url "0.11.0" yauzl "2.10.0" -cytoscape-dagre@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/cytoscape-dagre/-/cytoscape-dagre-2.2.2.tgz#5f32a85c0ba835f167efee531df9e89ac58ff411" - integrity sha512-zsg36qNwua/L2stJSWkcbSDcvW3E6VZf6KRe6aLnQJxuXuz89tMqI5EVYVKEcNBgzTEzFMFv0PE3T0nD4m6VDw== - dependencies: - dagre "^0.8.2" - cytoscape@^3.10.0: version "3.10.0" resolved "https://registry.yarnpkg.com/cytoscape/-/cytoscape-3.10.0.tgz#3b462e0d35121ecd2d2702f470915fd6dae01777" @@ -10967,14 +10960,6 @@ d@1: dependencies: es5-ext "^0.10.9" -dagre@^0.8.2: - version "0.8.4" - resolved "https://registry.yarnpkg.com/dagre/-/dagre-0.8.4.tgz#26b9fb8f7bdc60c6110a0458c375261836786061" - integrity sha512-Dj0csFDrWYKdavwROb9FccHfTC4fJbyF/oJdL9LNZJ8WUvl968P6PAKEriGqfbdArVJEmmfA+UyumgWEwcHU6A== - dependencies: - graphlib "^2.1.7" - lodash "^4.17.4" - damerau-levenshtein@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz#03191c432cb6eea168bb77f3a55ffdccb8978514" @@ -15304,13 +15289,6 @@ graceful-fs@~1.1: resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" integrity sha1-TK+tdrxi8C+gObL5Tpo906ORpyU= -graphlib@^2.1.7: - version "2.1.7" - resolved "https://registry.yarnpkg.com/graphlib/-/graphlib-2.1.7.tgz#b6a69f9f44bd9de3963ce6804a2fc9e73d86aecc" - integrity sha512-TyI9jIy2J4j0qgPmOOrHTCtpPqJGN/aurBwc6ZT+bRii+di1I+Wv3obRhVrmBEXet+qkMaEX67dXrwsd3QQM6w== - dependencies: - lodash "^4.17.5" - graphql-anywhere@^4.1.0-alpha.0: version "4.1.16" resolved "https://registry.yarnpkg.com/graphql-anywhere/-/graphql-anywhere-4.1.16.tgz#82bb59643e30183cfb7b485ed4262a7b39d8a6c1" From 875e2a525eafade34c3be243a5b6a013d224fab8 Mon Sep 17 00:00:00 2001 From: Ryland Herrick <ryalnd@gmail.com> Date: Tue, 3 Mar 2020 21:47:07 -0600 Subject: [PATCH 082/120] [SIEM] Migrate DE Routes to NP (#58292) * Define a very basic SiemClient We're going to add our client to the route handler context. Currently, it's sole purpose is to provide us with the signalsIndex to use for the request. This will allow us to stop passing around most uses of config and getSpaceId, as they were used for this same purpose. * WIP: Convert first DE route to NP This is one of the more comprehensive routes, so I think we're good to convert the rest. * Abstract joi/NP validator to helper We're gonna need this all over the place. Until our schema can generate an NP-compatible type, we can use this helper to generate an equivalent validator. * Second route down * Another one * updateRulesRoute * Fix exports * patchRulesRoute * Normalize request param type names * findRulesRoute * addPrepackagedRulesRoute * getPrepackagedRulesStatusRoute * createRulesBulkRoute * updateRulesBulkRoute * patchRulesBulkRoute * deleteRulesBulkRoute * importRulesRoute * exportRulesRoute * findRulesStatusesRoute * setSignalsStatusRoute * querySignalsRoute * Remove unused type * createIndexRoute * Convert readIndexRoute Removes support for a HEAD request here, becuase it was only used by the signal_index_exists script (which is now gone). A GET request will have the same semantics, with a few more bytes in the response. * deleteIndexRoute * readTagsRoute * readPrivilegesRoute We're incorrectly accessing request.auth in here still, fixing that next. * We are always authenticated until we support optional auth * Clean up our route initialization * Remove our now-unused ClientsService * Remove unused getIndex helper and references * Remove legacy route initialization (partial application) All our routing tests are still totally broken. Coming up! * Reference name property in context registration This should be replaced with a reference to the constant, but at least this doesn't add a third way it's being referenced. * Convert our first route tests to NP The API for our test utils isn't final, but this at least gets some tests passing. We'll see how it handles a more complex example. * Create Rules tests * Update addPrepackagedRules tests There were a lot of incorrect tests in here due to some incorrect route registration: we were asserting a 404 but receiving a false positive because the route we wanted didn't exist. * Read Privileges Route tests * Delete Rules route tests * Use more permissive validation in request mock * createRulesBulkRoute tests * deleteRulesBulkRoute tests * More explicit result mock It was very unclear in the tests what this mock represented. * findRulesRoute tests * getPrepackagedRulesRoute tests * PatchRulesBulkRoute tests * Convert migrated tests to newest interface * PatchRulesRoute tests Also fixes a potential false positive in our patch_rule_bulk_route validation tests by providing a more realistic payload with a single key missing. * Rename file for consistency * UpdateRulesBulkRoute tests * deleteRulesBulkRoute tests * findRulesStatusRoute tests * updateRulesRoute tests * setSignalStatusRoute tests * querySignalsRoute tests This actually caught a bug where we were not resolving our response before returning * Update schema tests following rename of type * Converts Import Rules route tests to NP form Most of these tests are failing due to our request not being parsed by Hapi as it previously was. Once we figure out how to generate a post-middleware request with a file stream, these should be easily fixed. * Remove unused import This was the last remaining reference to hapi in our server plugin. yay! * Remove unnecessary tests We're already covering our error paths here. * Hit success branch of bulk patch route test * Add test around error path in our route * Update our router to validate requests by default This gives us two important behaviors: 1. Requests to inject() will be populated with default values 2. We can test request validation independent of a handler call * This allows more straightforward assertions as we don't have to disambiguate between a schema rejection and a data rejection. * Update route validation tests with new interface We don't need to reach into our route in the test, nor ts-ignore it. * Update ImportRules route tests for NP testing Gets rid of the multipart-form processing that Hapi would convert for us into a Readable stream. Instead, we generate our own post-middleware requst that's got a stream on it. * Remove unnecessary router method A bug in an initial implementation of inject() lead me to believe that validations were removing the stream from our requests; this turned out to be false! YAGNI * Add an adapter for our route responses This provides a uniform interface of { body, status, calls }, where body and status come from the highest-status call (in the case of many). In a case where we build multiple responses, the preference is to return the most problematic one first. If there's an issue, one can look into the other calls and see what's going on. This breaks the tests and is not fully implemented, but this will allow us to change how we build responses without affecting our tests. * Fix remaining assertions in one test file Helped flesh out our adapter a bit more. * Update our response adapter to represent how NP transforms our errors Most importantly, we return a statusCode but not a status_code. * Update tests to interface with our Response type This makes them robust to framework/implementation changes. * Generate our error responses with our siemResponse wrapper This adds the status_code key that we desire in our error responses. Tests were updated as well, and they're currently failing because they expect statusCode, not status_code. * Update test assertions to look for status_code * Remove unused import * Return a meaningful error if an invalid request was injected This ensures we a) mimic platform behavior so that b) we don't risk a false positive if our invalid request were to somehow succeed. * Return a useful error when no route has been registered * Add back POST variant of delete_rules_bulk_route Some browsers do not support a request body for DELETE requests. * Allow headers to be passed to our error response This is used by Apollo to set some cache/allow headers in the case of specific bad requests. * Add back our header-passing from Apollo errors I also inverted the logic here to handle the special case first. * Add some tests around our error response helper * Fix types of our error wrapper * Move router logic into separate function This could be decomposed further but getRoute becomes more verbose, so meh. * Convert our mock server to a class It makes the shared state (mocks) of these functions more explicit, and also does away with some dumb tuple-returns I had (a consequence of trying to make everything pure). * Remove need for a route spy Instead of mocking certain router methods with the same spy and then retrieving its calls, we can simply iterate over the calls of the router methods we care about. This is a little less logic and a little more straightforward. * Update test with updated copy We're consolidating on "signals index" when referring to the data index where signals are stored. * Remove unneeded type assertion from our route validation factory We implicitly cast our return value here when we provide the generic type parameter, so there's no reason for the explicit cast. * Use exact message assertions * Export our SiemRequestContext type for consumers This will move to server/index in NP. * Make our SiemClient properties readonly We don't want consumers mutating our state. * Throw error if SiemClientFactory has not been properly set up * Remove unnecessary spread * Use reduce's type argument instead of an explicit assertion * Remove unnecessary optional chaining This was a holdover from when we captured calls that had no body, but is now unnecessary. * Remove unnecessary headers on mock requests * Remove non-null assertion in favor of constructor assignment * Prefer type annotations to explicit casting If we annotate that both incoming pieces of our headers are of the correct type, then we can spread them into an object of the same type and avoid the index signature issue. * Skip test failure do to handling of authentication We need to thread through the utility that provides us this same functionality. * Mock our cluster calls with realistic data * Remove TODO as this is addressed in a later PR Co-authored-by: Josh Dover <me@joshdover.com> --- .../plugins/siem/server/client/client.test.ts | 24 ++ .../plugins/siem/server/client/client.ts | 21 + .../siem/server/client/factory.test.ts | 42 ++ .../plugins/siem/server/client/factory.ts | 36 ++ .../siem/server/{services => client}/index.ts | 3 +- .../routes/__mocks__/clients_service_mock.ts | 39 -- .../routes/__mocks__/index.ts | 16 +- .../routes/__mocks__/request.ts | 11 + .../routes/__mocks__/request_context.ts | 51 +++ .../routes/__mocks__/request_responses.ts | 372 ++++++++++------- .../routes/__mocks__/response_factory.ts | 11 + .../routes/__mocks__/server.ts | 98 +++++ .../routes/__mocks__/test_adapters.ts | 55 +++ .../routes/__mocks__/utils.ts | 77 ++-- .../routes/index/create_index_route.ts | 70 ++-- .../routes/index/delete_index_route.ts | 73 ++-- .../routes/index/read_index_route.ts | 73 ++-- .../privileges/read_privileges_route.test.ts | 44 +- .../privileges/read_privileges_route.ts | 67 ++-- .../rules/add_prepackaged_rules_route.test.ts | 118 +++--- .../rules/add_prepackaged_rules_route.ts | 98 ++--- .../rules/create_rules_bulk_route.test.ts | 247 +++++------- .../routes/rules/create_rules_bulk_route.ts | 71 ++-- .../routes/rules/create_rules_route.test.ts | 200 ++++----- .../routes/rules/create_rules_route.ts | 106 ++--- .../rules/delete_rules_bulk_route.test.ts | 132 +++--- .../routes/rules/delete_rules_bulk_route.ts | 132 +++--- .../routes/rules/delete_rules_route.test.ts | 133 +++--- .../routes/rules/delete_rules_route.ts | 83 ++-- .../routes/rules/export_rules_route.ts | 104 ++--- .../routes/rules/find_rules_route.test.ts | 128 +++--- .../routes/rules/find_rules_route.ts | 69 ++-- .../rules/find_rules_status_route.test.ts | 95 ++--- .../routes/rules/find_rules_status_route.ts | 136 ++++--- ...get_prepackaged_rules_status_route.test.ts | 86 ++-- .../get_prepackaged_rules_status_route.ts | 63 +-- .../routes/rules/import_rules_route.test.ts | 378 ++++++------------ .../routes/rules/import_rules_route.ts | 117 +++--- .../routes/rules/patch_rules_bulk.test.ts | 174 -------- .../rules/patch_rules_bulk_route.test.ts | 96 +++++ .../routes/rules/patch_rules_bulk_route.ts | 61 ++- .../routes/rules/patch_rules_route.test.ts | 198 ++++----- .../routes/rules/patch_rules_route.ts | 80 ++-- .../routes/rules/read_rules_route.test.ts | 118 +++--- .../routes/rules/read_rules_route.ts | 123 +++--- .../routes/rules/update_rules_bulk.test.ts | 166 -------- .../rules/update_rules_bulk_route.test.ts | 117 ++++++ .../routes/rules/update_rules_bulk_route.ts | 69 ++-- .../routes/rules/update_rules_route.test.ts | 198 ++++----- .../routes/rules/update_rules_route.ts | 90 ++--- .../schemas/export_rules_schema.test.ts | 23 +- .../schemas/import_rules_schema.test.ts | 9 +- .../routes/signals/open_close_signals.test.ts | 173 ++++---- .../signals/open_close_signals_route.ts | 67 ++-- .../signals/query_signals_route.test.ts | 145 +++---- .../routes/signals/query_signals_route.ts | 68 ++-- .../routes/tags/read_tags_route.ts | 63 ++- .../lib/detection_engine/routes/utils.test.ts | 49 ++- .../lib/detection_engine/routes/utils.ts | 68 +++- .../lib/detection_engine/rules/types.ts | 61 +-- .../lib/detection_engine/signals/types.ts | 9 - .../lib/framework/kibana_framework_adapter.ts | 20 +- x-pack/legacy/plugins/siem/server/plugin.ts | 29 +- .../plugins/siem/server/routes/index.ts | 52 ++- .../siem/server/services/clients.test.ts | 34 -- .../plugins/siem/server/services/clients.ts | 70 ---- x-pack/legacy/plugins/siem/server/types.ts | 13 + .../tests/add_prepackaged_rules.ts | 2 +- 68 files changed, 2701 insertions(+), 3423 deletions(-) create mode 100644 x-pack/legacy/plugins/siem/server/client/client.test.ts create mode 100644 x-pack/legacy/plugins/siem/server/client/client.ts create mode 100644 x-pack/legacy/plugins/siem/server/client/factory.test.ts create mode 100644 x-pack/legacy/plugins/siem/server/client/factory.ts rename x-pack/legacy/plugins/siem/server/{services => client}/index.ts (73%) delete mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/clients_service_mock.ts create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request.ts create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request_context.ts create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/response_factory.ts create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/server.ts create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/test_adapters.ts delete mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_bulk.test.ts create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_bulk_route.test.ts delete mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_bulk.test.ts create mode 100644 x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_bulk_route.test.ts delete mode 100644 x-pack/legacy/plugins/siem/server/services/clients.test.ts delete mode 100644 x-pack/legacy/plugins/siem/server/services/clients.ts diff --git a/x-pack/legacy/plugins/siem/server/client/client.test.ts b/x-pack/legacy/plugins/siem/server/client/client.test.ts new file mode 100644 index 00000000000000..bfe7b97f430035 --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/client/client.test.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 { SiemClient } from './client'; +import { createMockConfig } from '../lib/detection_engine/routes/__mocks__'; + +describe('SiemClient', () => { + describe('#signalsIndex', () => { + it('returns the index scoped to the specified spaceId', () => { + let mockConfig = createMockConfig(); + mockConfig = () => ({ + get: jest.fn(() => 'mockSignalsIndex'), + has: jest.fn(), + }); + const spaceId = 'fooSpace'; + const client = new SiemClient(spaceId, mockConfig); + + expect(client.signalsIndex).toEqual('mockSignalsIndex-fooSpace'); + }); + }); +}); diff --git a/x-pack/legacy/plugins/siem/server/client/client.ts b/x-pack/legacy/plugins/siem/server/client/client.ts new file mode 100644 index 00000000000000..245b81d0be97a5 --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/client/client.ts @@ -0,0 +1,21 @@ +/* + * 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 { Legacy } from 'kibana'; + +import { APP_ID, SIGNALS_INDEX_KEY } from '../../common/constants'; + +export class SiemClient { + public readonly signalsIndex: string; + + constructor(private spaceId: string, private config: Legacy.Server['config']) { + const configuredSignalsIndex = this.config().get<string>( + `xpack.${APP_ID}.${SIGNALS_INDEX_KEY}` + ); + + this.signalsIndex = `${configuredSignalsIndex}-${this.spaceId}`; + } +} diff --git a/x-pack/legacy/plugins/siem/server/client/factory.test.ts b/x-pack/legacy/plugins/siem/server/client/factory.test.ts new file mode 100644 index 00000000000000..c166b6b838be2a --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/client/factory.test.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 { httpServerMock } from '../../../../../../src/core/server/mocks'; +import { SiemClientFactory } from './factory'; +import { SiemClient } from './client'; + +jest.mock('./client'); +const mockClient = SiemClient as jest.Mock; + +describe('SiemClientFactory', () => { + describe('#create', () => { + it('constructs a client with the current spaceId', () => { + const factory = new SiemClientFactory(); + const mockRequest = httpServerMock.createKibanaRequest(); + factory.setup({ getSpaceId: () => 'mockSpace', config: jest.fn() }); + factory.create(mockRequest); + + expect(mockClient).toHaveBeenCalledWith('mockSpace', expect.anything()); + }); + + it('constructs a client with the default spaceId if spaces are disabled', () => { + const factory = new SiemClientFactory(); + const mockRequest = httpServerMock.createKibanaRequest(); + factory.setup({ getSpaceId: undefined, config: jest.fn() }); + factory.create(mockRequest); + + expect(mockClient).toHaveBeenCalledWith('default', expect.anything()); + }); + + it('cannot call create without calling setup first', () => { + const factory = new SiemClientFactory(); + const mockRequest = httpServerMock.createKibanaRequest(); + expect(() => factory.create(mockRequest)).toThrow( + 'Cannot create SiemClient as config is not present. Did you forget to call setup()?' + ); + }); + }); +}); diff --git a/x-pack/legacy/plugins/siem/server/client/factory.ts b/x-pack/legacy/plugins/siem/server/client/factory.ts new file mode 100644 index 00000000000000..d31920bdf2c771 --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/client/factory.ts @@ -0,0 +1,36 @@ +/* + * 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 { Legacy } from 'kibana'; + +import { KibanaRequest } from '../../../../../../src/core/server'; +import { SiemClient } from './client'; + +interface SetupDependencies { + getSpaceId?: (request: KibanaRequest) => string | undefined; + config: Legacy.Server['config']; +} + +export class SiemClientFactory { + private getSpaceId?: SetupDependencies['getSpaceId']; + private config?: SetupDependencies['config']; + + public setup({ getSpaceId, config }: SetupDependencies) { + this.getSpaceId = getSpaceId; + this.config = config; + } + + public create(request: KibanaRequest): SiemClient { + if (this.config == null) { + throw new Error( + 'Cannot create SiemClient as config is not present. Did you forget to call setup()?' + ); + } + + const spaceId = this.getSpaceId?.(request) ?? 'default'; + return new SiemClient(spaceId, this.config); + } +} diff --git a/x-pack/legacy/plugins/siem/server/services/index.ts b/x-pack/legacy/plugins/siem/server/client/index.ts similarity index 73% rename from x-pack/legacy/plugins/siem/server/services/index.ts rename to x-pack/legacy/plugins/siem/server/client/index.ts index f4deea2c2a3fd5..97aec4d85aff91 100644 --- a/x-pack/legacy/plugins/siem/server/services/index.ts +++ b/x-pack/legacy/plugins/siem/server/client/index.ts @@ -4,4 +4,5 @@ * you may not use this file except in compliance with the Elastic License. */ -export { ClientsService, GetScopedClients } from './clients'; +export { SiemClient } from './client'; +export { SiemClientFactory } from './factory'; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/clients_service_mock.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/clients_service_mock.ts deleted file mode 100644 index 29131429d12cb6..00000000000000 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/clients_service_mock.ts +++ /dev/null @@ -1,39 +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 { - elasticsearchServiceMock, - savedObjectsClientMock, -} from '../../../../../../../../../src/core/server/mocks'; -import { alertsClientMock } from '../../../../../../../../plugins/alerting/server/mocks'; -import { ActionsClient } from '../../../../../../../../plugins/actions/server'; -import { actionsClientMock } from '../../../../../../../../plugins/actions/server/mocks'; -import { GetScopedClients } from '../../../../services'; - -const createClients = () => ({ - actionsClient: actionsClientMock.create() as jest.Mocked<ActionsClient>, - alertsClient: alertsClientMock.create(), - clusterClient: elasticsearchServiceMock.createScopedClusterClient(), - savedObjectsClient: savedObjectsClientMock.create(), - spacesClient: { getSpaceId: jest.fn() }, -}); - -const createGetScoped = () => - jest.fn(() => Promise.resolve(createClients()) as ReturnType<GetScopedClients>); - -const createClientsServiceMock = () => { - return { - setup: jest.fn(), - start: jest.fn(), - createGetScoped, - }; -}; - -export const clientsServiceMock = { - create: createClientsServiceMock, - createGetScoped, - createClients, -}; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/index.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/index.ts index 250b0068142942..1ccd43c06aacc7 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/index.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/index.ts @@ -4,18 +4,12 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; +import { requestContextMock } from './request_context'; +import { serverMock } from './server'; +import { requestMock } from './request'; +import { responseMock } from './response_factory'; -export { clientsServiceMock } from './clients_service_mock'; - -export const createMockServer = () => { - const server = new Hapi.Server({ port: 0 }); - - return { - route: server.route.bind(server), - inject: server.inject.bind(server), - }; -}; +export { requestMock, requestContextMock, responseMock, serverMock }; export const createMockConfig = () => () => ({ get: jest.fn(), diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request.ts new file mode 100644 index 00000000000000..8856a3463aab3c --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request.ts @@ -0,0 +1,11 @@ +/* + * 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 { httpServerMock } from '../../../../../../../../../src/core/server/mocks'; + +export const requestMock = { + create: httpServerMock.createKibanaRequest, +}; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request_context.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request_context.ts new file mode 100644 index 00000000000000..ebf6b3ae79ea8a --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/request_context.ts @@ -0,0 +1,51 @@ +/* + * 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 { RequestHandlerContext } from '../../../../../../../../../src/core/server'; +import { + coreMock, + elasticsearchServiceMock, + savedObjectsClientMock, +} from '../../../../../../../../../src/core/server/mocks'; +import { alertsClientMock } from '../../../../../../../../plugins/alerting/server/mocks'; +import { actionsClientMock } from '../../../../../../../../plugins/actions/server/mocks'; + +const createMockClients = () => ({ + actionsClient: actionsClientMock.create(), + alertsClient: alertsClientMock.create(), + clusterClient: elasticsearchServiceMock.createScopedClusterClient(), + savedObjectsClient: savedObjectsClientMock.create(), + siemClient: { signalsIndex: 'mockSignalsIndex' }, +}); + +const createRequestContextMock = ( + clients: ReturnType<typeof createMockClients> = createMockClients() +) => { + const coreContext = coreMock.createRequestHandlerContext(); + return ({ + actions: { getActionsClient: jest.fn(() => clients.actionsClient) }, + alerting: { getAlertsClient: jest.fn(() => clients.alertsClient) }, + core: { + ...coreContext, + elasticsearch: { ...coreContext.elasticsearch, dataClient: clients.clusterClient }, + savedObjects: { client: clients.savedObjectsClient }, + }, + siem: { getSiemClient: jest.fn(() => clients.siemClient) }, + } as unknown) as RequestHandlerContext; +}; + +const createTools = () => { + const clients = createMockClients(); + const context = createRequestContextMock(clients); + + return { clients, context }; +}; + +export const requestContextMock = { + create: createRequestContextMock, + createMockClients, + createTools, +}; 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 1ce41269f455f0..3c1a01fd58c601 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 @@ -4,10 +4,13 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ServerInjectOptions } from 'hapi'; import { SavedObjectsFindResponse } from 'kibana/server'; import { ActionResult } from '../../../../../../../../plugins/actions/server'; -import { SignalsStatusRestParams, SignalsQueryRestParams } from '../../signals/types'; +import { + SignalsStatusRestParams, + SignalsQueryRestParams, + SignalSearchResponse, +} from '../../signals/types'; import { DETECTION_ENGINE_RULES_URL, DETECTION_ENGINE_SIGNALS_STATUS_URL, @@ -18,9 +21,13 @@ import { DETECTION_ENGINE_PREPACKAGED_URL, } from '../../../../../common/constants'; import { ShardsResponse } from '../../../types'; -import { RuleAlertType, IRuleSavedAttributesSavedObjectAttributes } from '../../rules/types'; +import { + RuleAlertType, + IRuleSavedAttributesSavedObjectAttributes, + HapiReadableStream, +} from '../../rules/types'; import { RuleAlertParamsRest, PrepackagedRules } from '../../types'; -import { TEST_BOUNDARY } from './utils'; +import { requestMock } from './request'; export const mockPrepackagedRule = (): PrepackagedRules => ({ rule_id: 'rule-1', @@ -101,88 +108,99 @@ export const setStatusSignalMissingIdsAndQueryPayload = (): Partial<SignalsStatu status: 'closed', }); -export const getUpdateRequest = (): ServerInjectOptions => ({ - method: 'PUT', - url: DETECTION_ENGINE_RULES_URL, - payload: { - ...typicalPayload(), - }, -}); - -export const getPatchRequest = (): ServerInjectOptions => ({ - method: 'PATCH', - url: DETECTION_ENGINE_RULES_URL, - payload: { - ...typicalPayload(), - }, -}); - -export const getReadRequest = (): ServerInjectOptions => ({ - method: 'GET', - url: `${DETECTION_ENGINE_RULES_URL}?rule_id=rule-1`, -}); - -export const getFindRequest = (): ServerInjectOptions => ({ - method: 'GET', - url: `${DETECTION_ENGINE_RULES_URL}/_find`, -}); - -export const getReadBulkRequest = (): ServerInjectOptions => ({ - method: 'POST', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, - payload: [typicalPayload()], -}); - -export const getUpdateBulkRequest = (): ServerInjectOptions => ({ - method: 'PUT', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - payload: [typicalPayload()], -}); - -export const getPatchBulkRequest = (): ServerInjectOptions => ({ - method: 'PATCH', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - payload: [typicalPayload()], -}); - -export const getDeleteBulkRequest = (): ServerInjectOptions => ({ - method: 'DELETE', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_delete`, - payload: [{ rule_id: 'rule-1' }], -}); - -export const getDeleteBulkRequestById = (): ServerInjectOptions => ({ - method: 'DELETE', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_delete`, - payload: [{ id: 'rule-04128c15-0d1b-4716-a4c5-46997ac7f3bd' }], -}); - -export const getDeleteAsPostBulkRequestById = (): ServerInjectOptions => ({ - method: 'POST', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_delete`, - payload: [{ id: 'rule-04128c15-0d1b-4716-a4c5-46997ac7f3bd' }], -}); - -export const getDeleteAsPostBulkRequest = (): ServerInjectOptions => ({ - method: 'POST', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_delete`, - payload: [{ rule_id: 'rule-1' }], -}); - -export const getPrivilegeRequest = (): ServerInjectOptions => ({ - method: 'GET', - url: DETECTION_ENGINE_PRIVILEGES_URL, -}); - -export const addPrepackagedRulesRequest = (): ServerInjectOptions => ({ - method: 'PUT', - url: DETECTION_ENGINE_PREPACKAGED_URL, -}); - -export const getPrepackagedRulesStatusRequest = (): ServerInjectOptions => ({ - method: 'GET', - url: `${DETECTION_ENGINE_PREPACKAGED_URL}/_status`, -}); +export const getUpdateRequest = () => + requestMock.create({ + method: 'put', + path: DETECTION_ENGINE_RULES_URL, + body: typicalPayload(), + }); + +export const getPatchRequest = () => + requestMock.create({ + method: 'patch', + path: DETECTION_ENGINE_RULES_URL, + body: typicalPayload(), + }); + +export const getReadRequest = () => + requestMock.create({ + method: 'get', + path: DETECTION_ENGINE_RULES_URL, + query: { rule_id: 'rule-1' }, + }); + +export const getFindRequest = () => + requestMock.create({ + method: 'get', + path: `${DETECTION_ENGINE_RULES_URL}/_find`, + }); + +export const getReadBulkRequest = () => + requestMock.create({ + method: 'post', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, + body: [typicalPayload()], + }); + +export const getUpdateBulkRequest = () => + requestMock.create({ + method: 'put', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, + body: [typicalPayload()], + }); + +export const getPatchBulkRequest = () => + requestMock.create({ + method: 'patch', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, + body: [typicalPayload()], + }); + +export const getDeleteBulkRequest = () => + requestMock.create({ + method: 'delete', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_delete`, + body: [{ rule_id: 'rule-1' }], + }); + +export const getDeleteBulkRequestById = () => + requestMock.create({ + method: 'delete', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_delete`, + body: [{ id: 'rule-04128c15-0d1b-4716-a4c5-46997ac7f3bd' }], + }); + +export const getDeleteAsPostBulkRequestById = () => + requestMock.create({ + method: 'post', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_delete`, + body: [{ id: 'rule-04128c15-0d1b-4716-a4c5-46997ac7f3bd' }], + }); + +export const getDeleteAsPostBulkRequest = () => + requestMock.create({ + method: 'post', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_delete`, + body: [{ rule_id: 'rule-1' }], + }); + +export const getPrivilegeRequest = () => + requestMock.create({ + method: 'get', + path: DETECTION_ENGINE_PRIVILEGES_URL, + }); + +export const addPrepackagedRulesRequest = () => + requestMock.create({ + method: 'put', + path: DETECTION_ENGINE_PREPACKAGED_URL, + }); + +export const getPrepackagedRulesStatusRequest = () => + requestMock.create({ + method: 'get', + path: `${DETECTION_ENGINE_PREPACKAGED_URL}/_status`, + }); export interface FindHit { page: number; @@ -191,7 +209,7 @@ export interface FindHit { data: RuleAlertType[]; } -export const getFindResult = (): FindHit => ({ +export const getEmptyFindResult = (): FindHit => ({ page: 1, perPage: 1, total: 0, @@ -205,6 +223,13 @@ export const getFindResultWithSingleHit = (): FindHit => ({ data: [getResult()], }); +export const nonRuleFindResult = (): FindHit => ({ + page: 1, + perPage: 1, + total: 1, + data: [nonRuleAlert()], +}); + export const getFindResultWithMultiHits = ({ data, page = 1, @@ -224,69 +249,83 @@ export const getFindResultWithMultiHits = ({ }; }; -export const getImportRulesRequest = (payload?: Buffer): ServerInjectOptions => ({ - method: 'POST', - url: `${DETECTION_ENGINE_RULES_URL}/_import`, - headers: { - 'Content-Type': `multipart/form-data; boundary=${TEST_BOUNDARY}`, - }, - payload, -}); - -export const getImportRulesRequestOverwriteTrue = (payload?: Buffer): ServerInjectOptions => ({ - method: 'POST', - url: `${DETECTION_ENGINE_RULES_URL}/_import?overwrite=true`, - headers: { - 'Content-Type': `multipart/form-data; boundary=${TEST_BOUNDARY}`, - }, - payload, -}); - -export const getDeleteRequest = (): ServerInjectOptions => ({ - method: 'DELETE', - url: `${DETECTION_ENGINE_RULES_URL}?rule_id=rule-1`, -}); - -export const getDeleteRequestById = (): ServerInjectOptions => ({ - method: 'DELETE', - url: `${DETECTION_ENGINE_RULES_URL}?id=04128c15-0d1b-4716-a4c5-46997ac7f3bd`, -}); - -export const getCreateRequest = (): ServerInjectOptions => ({ - method: 'POST', - url: DETECTION_ENGINE_RULES_URL, - payload: { - ...typicalPayload(), - }, -}); - -export const getSetSignalStatusByIdsRequest = (): ServerInjectOptions => ({ - method: 'POST', - url: DETECTION_ENGINE_SIGNALS_STATUS_URL, - payload: { - ...typicalSetStatusSignalByIdsPayload(), - }, -}); - -export const getSetSignalStatusByQueryRequest = (): ServerInjectOptions => ({ - method: 'POST', - url: DETECTION_ENGINE_SIGNALS_STATUS_URL, - payload: { - ...typicalSetStatusSignalByQueryPayload(), - }, -}); - -export const getSignalsQueryRequest = (): ServerInjectOptions => ({ - method: 'POST', - url: DETECTION_ENGINE_QUERY_SIGNALS_URL, - payload: { ...typicalSignalsQuery() }, -}); - -export const getSignalsAggsQueryRequest = (): ServerInjectOptions => ({ - method: 'POST', - url: DETECTION_ENGINE_QUERY_SIGNALS_URL, - payload: { ...typicalSignalsQueryAggs() }, -}); +export const ruleStatusRequest = () => + requestMock.create({ + method: 'get', + path: `${DETECTION_ENGINE_RULES_URL}/_find_statuses`, + query: { ids: ['someId'] }, + }); + +export const getImportRulesRequest = (hapiStream?: HapiReadableStream) => + requestMock.create({ + method: 'post', + path: `${DETECTION_ENGINE_RULES_URL}/_import`, + body: { file: hapiStream }, + }); + +export const getImportRulesRequestOverwriteTrue = (hapiStream?: HapiReadableStream) => + requestMock.create({ + method: 'post', + path: `${DETECTION_ENGINE_RULES_URL}/_import`, + body: { file: hapiStream }, + query: { overwrite: true }, + }); + +export const getDeleteRequest = () => + requestMock.create({ + method: 'delete', + path: DETECTION_ENGINE_RULES_URL, + query: { rule_id: 'rule-1' }, + }); + +export const getDeleteRequestById = () => + requestMock.create({ + method: 'delete', + path: DETECTION_ENGINE_RULES_URL, + query: { id: '04128c15-0d1b-4716-a4c5-46997ac7f3bd' }, + }); + +export const getCreateRequest = () => + requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_RULES_URL, + body: typicalPayload(), + }); + +export const getSetSignalStatusByIdsRequest = () => + requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_SIGNALS_STATUS_URL, + body: typicalSetStatusSignalByIdsPayload(), + }); + +export const getSetSignalStatusByQueryRequest = () => + requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_SIGNALS_STATUS_URL, + body: typicalSetStatusSignalByQueryPayload(), + }); + +export const getSignalsQueryRequest = () => + requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_QUERY_SIGNALS_URL, + body: typicalSignalsQuery(), + }); + +export const getSignalsAggsQueryRequest = () => + requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_QUERY_SIGNALS_URL, + body: typicalSignalsQueryAggs(), + }); + +export const getSignalsAggsAndQueryRequest = () => + requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_QUERY_SIGNALS_URL, + body: { ...typicalSignalsQuery(), ...typicalSignalsQueryAggs() }, + }); export const createActionResult = (): ActionResult => ({ id: 'result-1', @@ -295,6 +334,13 @@ export const createActionResult = (): ActionResult => ({ config: {}, }); +export const nonRuleAlert = () => ({ + ...getResult(), + id: '04128c15-0d1b-4716-a4c5-46997ac7f3bc', + name: 'Non-Rule Alert', + alertTypeId: 'something', +}); + export const getResult = (): RuleAlertType => ({ id: '04128c15-0d1b-4716-a4c5-46997ac7f3bd', name: 'Detect Root/Admin Users', @@ -473,6 +519,32 @@ export const getFindResultStatus = (): SavedObjectsFindResponse<IRuleSavedAttrib ], }); +export const getEmptySignalsResponse = (): SignalSearchResponse => ({ + took: 1, + timed_out: false, + _shards: { total: 1, successful: 1, skipped: 0, failed: 0 }, + hits: { total: { value: 0, relation: 'eq' }, max_score: 0, hits: [] }, + aggregations: { + signalsByGrouping: { doc_count_error_upper_bound: 0, sum_other_doc_count: 0, buckets: [] }, + }, +}); + +export const getSuccessfulSignalUpdateResponse = () => ({ + took: 18, + timed_out: false, + total: 1, + updated: 1, + deleted: 0, + batches: 1, + version_conflicts: 0, + noops: 0, + retries: { bulk: 0, search: 0 }, + throttled_millis: 0, + requests_per_second: -1, + throttled_until_millis: 0, + failures: [], +}); + export const getIndexName = () => 'index-name'; export const getEmptyIndex = (): { _shards: Partial<ShardsResponse> } => ({ _shards: { total: 0 }, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/response_factory.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/response_factory.ts new file mode 100644 index 00000000000000..3e0eda9961403c --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/response_factory.ts @@ -0,0 +1,11 @@ +/* + * 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 { httpServerMock } from '../../../../../../../../../src/core/server/mocks'; + +export const responseMock = { + create: httpServerMock.createResponseFactory, +}; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/server.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/server.ts new file mode 100644 index 00000000000000..824d1f2bec3346 --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/server.ts @@ -0,0 +1,98 @@ +/* + * 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 { + RequestHandler, + RouteConfig, + KibanaRequest, + RequestHandlerContext, +} from '../../../../../../../../../src/core/server'; +import { httpServiceMock } from '../../../../../../../../../src/core/server/mocks'; +import { requestContextMock } from './request_context'; +import { responseMock as responseFactoryMock } from './response_factory'; +import { requestMock } from '.'; +import { responseAdapter } from './test_adapters'; + +interface Route { + config: RouteConfig<unknown, unknown, unknown, 'get' | 'post' | 'delete' | 'patch' | 'put'>; + handler: RequestHandler; +} +const getRoute = (routerMock: MockServer['router']): Route => { + const routeCalls = [ + ...routerMock.get.mock.calls, + ...routerMock.post.mock.calls, + ...routerMock.put.mock.calls, + ...routerMock.patch.mock.calls, + ...routerMock.delete.mock.calls, + ]; + + const [route] = routeCalls; + if (!route) { + throw new Error('No route registered!'); + } + + const [config, handler] = route; + return { config, handler }; +}; + +const buildResultMock = () => ({ ok: jest.fn(x => x), badRequest: jest.fn(x => x) }); + +class MockServer { + constructor( + public readonly router = httpServiceMock.createRouter(), + private responseMock = responseFactoryMock.create(), + private contextMock = requestContextMock.create(), + private resultMock = buildResultMock() + ) {} + + public validate(request: KibanaRequest) { + this.validateRequest(request); + return this.resultMock; + } + + public async inject(request: KibanaRequest, context: RequestHandlerContext = this.contextMock) { + const validatedRequest = this.validateRequest(request); + const [rejection] = this.resultMock.badRequest.mock.calls; + if (rejection) { + throw new Error(`Request was rejected with message: '${rejection}'`); + } + + await this.getRoute().handler(context, validatedRequest, this.responseMock); + return responseAdapter(this.responseMock); + } + + private getRoute(): Route { + return getRoute(this.router); + } + + // eslint-disable-next-line @typescript-eslint/no-explicit-any + private maybeValidate(part: any, validator?: any): any { + return typeof validator === 'function' ? validator(part, this.resultMock) : part; + } + + private validateRequest(request: KibanaRequest): KibanaRequest { + const validations = this.getRoute().config.validate; + if (!validations) { + return request; + } + + const validatedRequest = requestMock.create({ + path: request.route.path, + method: request.route.method, + body: this.maybeValidate(request.body, validations.body), + query: this.maybeValidate(request.query, validations.query), + params: this.maybeValidate(request.params, validations.params), + }); + + return validatedRequest; + } +} + +const createMockServer = () => new MockServer(); + +export const serverMock = { + create: createMockServer, +}; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/test_adapters.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/test_adapters.ts new file mode 100644 index 00000000000000..845f79a809c444 --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/__mocks__/test_adapters.ts @@ -0,0 +1,55 @@ +/* + * 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 { responseMock } from './response_factory'; + +type ResponseMock = ReturnType<typeof responseMock.create>; +type Method = keyof ResponseMock; + +type MockCall = any; // eslint-disable-line @typescript-eslint/no-explicit-any + +interface ResponseCall { + body: any; // eslint-disable-line @typescript-eslint/no-explicit-any + status: number; +} + +interface Response extends ResponseCall { + calls: ResponseCall[]; +} + +const buildResponses = (method: Method, calls: MockCall[]): ResponseCall[] => { + if (!calls.length) return []; + + switch (method) { + case 'ok': + return calls.map(([call]) => ({ status: 200, body: call.body })); + case 'custom': + return calls.map(([call]) => ({ + status: call.statusCode, + body: JSON.parse(call.body), + })); + default: + throw new Error(`Encountered unexpected call to response.${method}`); + } +}; + +export const responseAdapter = (response: ResponseMock): Response => { + const methods = Object.keys(response) as Method[]; + const calls = methods + .reduce<Response['calls']>((responses, method) => { + const methodMock = response[method]; + return [...responses, ...buildResponses(method, methodMock.mock.calls)]; + }, []) + .sort((call, other) => other.status - call.status); + + const [{ body, status }] = calls; + + return { + body, + status, + calls, + }; +}; 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 32226e38a1f7f7..f59370ce481b6a 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 @@ -4,13 +4,10 @@ * you may not use this file except in compliance with the Elastic License. */ -import { OutputRuleAlertRest } from '../../types'; - -export const TEST_BOUNDARY = 'test_multipart_boundary'; +import { Readable } from 'stream'; -// Not parsable due to extra colon following `name` property - name:: -export const UNPARSABLE_LINE = - '{"name"::"Simple Rule Query","description":"Simple Rule Query","risk_score":1,"rule_id":"rule-1","severity":"high","type":"query","query":"user.name: root or user.name: admin"}'; +import { OutputRuleAlertRest } from '../../types'; +import { HapiReadableStream } from '../../rules/types'; /** * This is a typical simple rule for testing that is easy for most basic testing @@ -41,50 +38,42 @@ export const getSimpleRuleWithId = (id = 'rule-1'): Partial<OutputRuleAlertRest> }); /** - * Given an array of rule_id strings this will return a ndjson buffer which is useful - * for testing uploads. - * @param ruleIds Array of strings of rule_ids - * @param isNdjson Boolean to determine file extension + * Given an array of rules, builds an NDJSON string of rules + * as we might import/export + * @param rules Array of rule objects with which to generate rule JSON */ -export const getSimpleRuleAsMultipartContent = (ruleIds: string[], isNdjson = true): Buffer => { - const arrayOfRules = ruleIds.map(ruleId => { - const simpleRule = getSimpleRule(ruleId); - return JSON.stringify(simpleRule); - }); - const stringOfRules = arrayOfRules.join('\r\n'); - - const resultingPayload = - `--${TEST_BOUNDARY}\r\n` + - `Content-Disposition: form-data; name="file"; filename="rules.${ - isNdjson ? 'ndjson' : 'json' - }\r\n` + - 'Content-Type: application/octet-stream\r\n' + - '\r\n' + - `${stringOfRules}\r\n` + - `--${TEST_BOUNDARY}--\r\n`; +export const rulesToNdJsonString = (rules: Array<Partial<OutputRuleAlertRest>>) => { + return rules.map(rule => JSON.stringify(rule)).join('\r\n'); +}; - return Buffer.from(resultingPayload); +/** + * Given an array of rule IDs, builds an NDJSON string of rules + * as we might import/export + * @param ruleIds Array of ruleIds with which to generate rule JSON + */ +export const ruleIdsToNdJsonString = (ruleIds: string[]) => { + const rules = ruleIds.map(ruleId => getSimpleRule(ruleId)); + return rulesToNdJsonString(rules); }; /** - * Given an array of rule_id strings this will return a ndjson buffer which is useful - * for testing uploads. - * @param count Number of rules to generate - * @param isNdjson Boolean to determine file extension + * Given a string, builds a hapi stream as our + * route handler would receive it. + * @param string contents of the stream + * @param filename String to declare file extension */ -export const getSimpleRuleAsMultipartContentNoRuleId = (count: number, isNdjson = true): Buffer => { - const arrayOfRules = Array(count).fill(JSON.stringify(getSimpleRuleWithId())); - const stringOfRules = arrayOfRules.join('\r\n'); +export const buildHapiStream = (string: string, filename = 'file.ndjson'): HapiReadableStream => { + const HapiStream = class extends Readable { + public readonly hapi: { filename: string }; + constructor(fileName: string) { + super(); + this.hapi = { filename: fileName }; + } + }; - const resultingPayload = - `--${TEST_BOUNDARY}\r\n` + - `Content-Disposition: form-data; name="file"; filename="rules.${ - isNdjson ? 'ndjson' : 'json' - }\r\n` + - 'Content-Type: application/octet-stream\r\n' + - '\r\n' + - `${stringOfRules}\r\n` + - `--${TEST_BOUNDARY}--\r\n`; + const stream = new HapiStream(filename); + stream.push(string); + stream.push(null); - return Buffer.from(resultingPayload); + return stream; }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/index/create_index_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/index/create_index_route.ts index 2502009a2e6a27..36764439462c3b 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/index/create_index_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/index/create_index_route.ts @@ -4,12 +4,9 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; - +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_INDEX_URL } from '../../../../../common/constants'; -import { LegacyServices, LegacyRequest } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; -import { transformError, getIndex } from '../utils'; +import { transformError, buildSiemResponse } from '../utils'; import { getIndexExists } from '../../index/get_index_exists'; import { getPolicyExists } from '../../index/get_policy_exists'; import { setPolicy } from '../../index/set_policy'; @@ -19,35 +16,30 @@ import { getTemplateExists } from '../../index/get_template_exists'; import { createBootstrapIndex } from '../../index/create_bootstrap_index'; import signalsPolicy from './signals_policy.json'; -export const createCreateIndexRoute = ( - config: LegacyServices['config'], - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'POST', - path: DETECTION_ENGINE_INDEX_URL, - options: { - tags: ['access:siem'], - validate: { - options: { - abortEarly: false, - }, +export const createIndexRoute = (router: IRouter) => { + router.post( + { + path: DETECTION_ENGINE_INDEX_URL, + validate: false, + options: { + tags: ['access:siem'], }, }, - async handler(request: LegacyRequest, headers) { + async (context, request, response) => { + const siemResponse = buildSiemResponse(response); + try { - const { clusterClient, spacesClient } = await getClients(request); + const clusterClient = context.core.elasticsearch.dataClient; + const siemClient = context.siem.getSiemClient(); const callCluster = clusterClient.callAsCurrentUser; - const index = getIndex(spacesClient.getSpaceId, config); + const index = siemClient.signalsIndex; const indexExists = await getIndexExists(callCluster, index); if (indexExists) { - return headers - .response({ - message: `index: "${index}" already exists`, - status_code: 409, - }) - .code(409); + return siemResponse.error({ + statusCode: 409, + body: `index: "${index}" already exists`, + }); } else { const policyExists = await getPolicyExists(callCluster, index); if (!policyExists) { @@ -59,25 +51,15 @@ export const createCreateIndexRoute = ( await setTemplate(callCluster, index, template); } await createBootstrapIndex(callCluster, index); - return { acknowledged: true }; + return response.ok({ body: { acknowledged: true } }); } } catch (err) { const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const createIndexRoute = ( - route: LegacyServices['route'], - config: LegacyServices['config'], - getClients: GetScopedClients -) => { - route(createCreateIndexRoute(config, getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/index/delete_index_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/index/delete_index_route.ts index ae61afb6f8d06f..aa418c11d9d165 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/index/delete_index_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/index/delete_index_route.ts @@ -4,12 +4,9 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; - +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_INDEX_URL } from '../../../../../common/constants'; -import { LegacyServices, LegacyRequest } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; -import { transformError, getIndex } from '../utils'; +import { transformError, buildSiemResponse } from '../utils'; import { getIndexExists } from '../../index/get_index_exists'; import { getPolicyExists } from '../../index/get_policy_exists'; import { deletePolicy } from '../../index/delete_policy'; @@ -27,35 +24,31 @@ import { deleteTemplate } from '../../index/delete_template'; * * And ensuring they're all gone */ -export const createDeleteIndexRoute = ( - config: LegacyServices['config'], - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'DELETE', - path: DETECTION_ENGINE_INDEX_URL, - options: { - tags: ['access:siem'], - validate: { - options: { - abortEarly: false, - }, +export const deleteIndexRoute = (router: IRouter) => { + router.delete( + { + path: DETECTION_ENGINE_INDEX_URL, + validate: false, + options: { + tags: ['access:siem'], }, }, - async handler(request: LegacyRequest, headers) { + async (context, request, response) => { + const siemResponse = buildSiemResponse(response); + try { - const { clusterClient, spacesClient } = await getClients(request); - const callCluster = clusterClient.callAsCurrentUser; + const clusterClient = context.core.elasticsearch.dataClient; + const siemClient = context.siem.getSiemClient(); - const index = getIndex(spacesClient.getSpaceId, config); + const callCluster = clusterClient.callAsCurrentUser; + const index = siemClient.signalsIndex; const indexExists = await getIndexExists(callCluster, index); + if (!indexExists) { - return headers - .response({ - message: `index: "${index}" does not exist`, - status_code: 404, - }) - .code(404); + return siemResponse.error({ + statusCode: 404, + body: `index: "${index}" does not exist`, + }); } else { await deleteAllIndex(callCluster, `${index}-*`); const policyExists = await getPolicyExists(callCluster, index); @@ -66,25 +59,15 @@ export const createDeleteIndexRoute = ( if (templateExists) { await deleteTemplate(callCluster, index); } - return { acknowledged: true }; + return response.ok({ body: { acknowledged: true } }); } } catch (err) { const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const deleteIndexRoute = ( - route: LegacyServices['route'], - config: LegacyServices['config'], - getClients: GetScopedClients -) => { - route(createDeleteIndexRoute(config, getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/index/read_index_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/index/read_index_route.ts index 26a6c790ceef93..4fc5a4e1f347f3 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/index/read_index_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/index/read_index_route.ts @@ -4,64 +4,45 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; - +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_INDEX_URL } from '../../../../../common/constants'; -import { LegacyServices, LegacyRequest } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; -import { transformError, getIndex } from '../utils'; +import { transformError, buildSiemResponse } from '../utils'; import { getIndexExists } from '../../index/get_index_exists'; -export const createReadIndexRoute = ( - config: LegacyServices['config'], - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'GET', - path: DETECTION_ENGINE_INDEX_URL, - options: { - tags: ['access:siem'], - validate: { - options: { - abortEarly: false, - }, +export const readIndexRoute = (router: IRouter) => { + router.get( + { + path: DETECTION_ENGINE_INDEX_URL, + validate: false, + options: { + tags: ['access:siem'], }, }, - async handler(request: LegacyRequest, headers) { + async (context, request, response) => { + const siemResponse = buildSiemResponse(response); + try { - const { clusterClient, spacesClient } = await getClients(request); - const callCluster = clusterClient.callAsCurrentUser; + const clusterClient = context.core.elasticsearch.dataClient; + const siemClient = context.siem.getSiemClient(); - const index = getIndex(spacesClient.getSpaceId, config); - const indexExists = await getIndexExists(callCluster, index); + const index = siemClient.signalsIndex; + const indexExists = await getIndexExists(clusterClient.callAsCurrentUser, index); if (indexExists) { - return headers.response({ name: index }).code(200); + return response.ok({ body: { name: index } }); } else { - return headers - .response({ - message: 'index for this space does not exist', - status_code: 404, - }) - .code(404); + return siemResponse.error({ + statusCode: 404, + body: 'index for this space does not exist', + }); } } catch (err) { const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const readIndexRoute = ( - route: LegacyServices['route'], - config: LegacyServices['config'], - getClients: GetScopedClients -) => { - route(createReadIndexRoute(config, getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/privileges/read_privileges_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/privileges/read_privileges_route.test.ts index 3c31658c61d6e3..44050f21a12591 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/privileges/read_privileges_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/privileges/read_privileges_route.test.ts @@ -5,50 +5,40 @@ */ import { readPrivilegesRoute } from './read_privileges_route'; -import * as readPrivileges from '../../privileges/read_privileges'; -import { createMockServer, createMockConfig, clientsServiceMock } from '../__mocks__'; +import { serverMock, requestContextMock } from '../__mocks__'; import { getPrivilegeRequest, getMockPrivileges } from '../__mocks__/request_responses'; describe('read_privileges', () => { - let { route, inject } = createMockServer(); - let config = createMockConfig(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - jest.resetAllMocks(); - ({ route, inject } = createMockServer()); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); - config = createMockConfig(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); - - getClients.mockResolvedValue(clients); clients.clusterClient.callAsCurrentUser.mockResolvedValue(getMockPrivileges()); - - readPrivilegesRoute(route, config, false, getClients); + readPrivilegesRoute(server.router, false); }); describe('normal status codes', () => { test('returns 200 when doing a normal request', async () => { - const { statusCode } = await inject(getPrivilegeRequest()); - expect(statusCode).toBe(200); + const response = await server.inject(getPrivilegeRequest(), context); + expect(response.status).toEqual(200); }); - test('returns the payload when doing a normal request', async () => { - const { payload } = await inject(getPrivilegeRequest()); - expect(JSON.parse(payload)).toEqual(getMockPrivileges()); + test.skip('returns the payload when doing a normal request', async () => { + const response = await server.inject(getPrivilegeRequest(), context); + expect(response.status).toEqual(200); + expect(response.body).toEqual(getMockPrivileges()); }); - test('returns 500 when bad response from readPrivileges', async () => { - jest.spyOn(readPrivileges, 'readPrivileges').mockImplementation(() => { + test('returns 500 when bad response from cluster', async () => { + clients.clusterClient.callAsCurrentUser.mockImplementation(() => { throw new Error('Test error'); }); - const { payload } = await inject(getPrivilegeRequest()); - expect(JSON.parse(payload)).toEqual({ - message: 'Test error', - status_code: 500, - }); + const response = await server.inject(getPrivilegeRequest(), context); + expect(response.status).toEqual(500); + expect(response.body).toEqual({ message: 'Test error', status_code: 500 }); }); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/privileges/read_privileges_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/privileges/read_privileges_route.ts index e9b9bffbaf054a..81ce4a9c3f2fc9 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/privileges/read_privileges_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/privileges/read_privileges_route.ts @@ -4,60 +4,43 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; import { merge } from 'lodash/fp'; +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_PRIVILEGES_URL } from '../../../../../common/constants'; -import { LegacyServices } from '../../../../types'; -import { RulesRequest } from '../../rules/types'; -import { GetScopedClients } from '../../../../services'; -import { transformError, getIndex } from '../utils'; +import { buildSiemResponse, transformError } from '../utils'; import { readPrivileges } from '../../privileges/read_privileges'; -export const createReadPrivilegesRulesRoute = ( - config: LegacyServices['config'], - usingEphemeralEncryptionKey: boolean, - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'GET', - path: DETECTION_ENGINE_PRIVILEGES_URL, - options: { - tags: ['access:siem'], - validate: { - options: { - abortEarly: false, - }, +export const readPrivilegesRoute = (router: IRouter, usingEphemeralEncryptionKey: boolean) => { + router.get( + { + path: DETECTION_ENGINE_PRIVILEGES_URL, + validate: false, + options: { + tags: ['access:siem'], }, }, - async handler(request: RulesRequest, headers) { + async (context, request, response) => { + const siemResponse = buildSiemResponse(response); try { - const { clusterClient, spacesClient } = await getClients(request); + const clusterClient = context.core.elasticsearch.dataClient; + const siemClient = context.siem.getSiemClient(); - const index = getIndex(spacesClient.getSpaceId, config); - const permissions = await readPrivileges(clusterClient.callAsCurrentUser, index); - return merge(permissions, { - is_authenticated: request?.auth?.isAuthenticated ?? false, + const index = siemClient.signalsIndex; + const clusterPrivileges = await readPrivileges(clusterClient.callAsCurrentUser, index); + const privileges = merge(clusterPrivileges, { + is_authenticated: true, // until we support optional auth: https://github.com/elastic/kibana/pull/55327#issuecomment-577159911 has_encryption_key: !usingEphemeralEncryptionKey, }); + + return response.ok({ body: privileges }); } catch (err) { const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const readPrivilegesRoute = ( - route: LegacyServices['route'], - config: LegacyServices['config'], - usingEphemeralEncryptionKey: boolean, - getClients: GetScopedClients -) => { - route(createReadPrivilegesRulesRoute(config, usingEphemeralEncryptionKey, getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/add_prepackaged_rules_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/add_prepackaged_rules_route.test.ts index e6a93fdadcfcaa..ec3db96ddc2f4a 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/add_prepackaged_rules_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/add_prepackaged_rules_route.test.ts @@ -4,19 +4,16 @@ * you may not use this file except in compliance with the Elastic License. */ -import { omit } from 'lodash/fp'; - import { - getFindResult, - getResult, - createActionResult, + getEmptyFindResult, addPrepackagedRulesRequest, getFindResultWithSingleHit, getEmptyIndex, getNonEmptyIndex, } from '../__mocks__/request_responses'; -import { createMockServer, createMockConfig, clientsServiceMock } from '../__mocks__'; -import * as updatePrepackagedRules from '../../rules/update_prepacked_rules'; +import { requestContextMock, serverMock } from '../__mocks__'; +import { addPrepackedRulesRoute } from './add_prepackaged_rules_route'; +import { PrepackagedRules } from '../../types'; jest.mock('../../rules/get_prepackaged_rules', () => { return { @@ -43,101 +40,88 @@ jest.mock('../../rules/get_prepackaged_rules', () => { }; }); -import { addPrepackedRulesRoute } from './add_prepackaged_rules_route'; -import { PrepackagedRules } from '../../types'; - describe('add_prepackaged_rules_route', () => { - let server = createMockServer(); - let config = createMockConfig(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - jest.resetAllMocks(); - jest.restoreAllMocks(); - jest.clearAllMocks(); - server = createMockServer(); - config = createMockConfig(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); - - getClients.mockResolvedValue(clients); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); + clients.clusterClient.callAsCurrentUser.mockResolvedValue(getNonEmptyIndex()); + clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - addPrepackedRulesRoute(server.route, config, getClients); + addPrepackedRulesRoute(server.router); }); describe('status codes with actionClient and alertClient', () => { - test('returns 200 when creating a with a valid actionClient and alertClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const { statusCode } = await server.inject(addPrepackagedRulesRequest()); - expect(statusCode).toBe(200); + test('returns 200 when creating with a valid actionClient and alertClient', async () => { + const request = addPrepackagedRulesRequest(); + const response = await server.inject(request, context); + + expect(response.status).toEqual(200); }); test('returns 404 if alertClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - const { statusCode } = await server.inject(addPrepackagedRulesRequest()); - expect(statusCode).toBe(404); + context.alerting.getAlertsClient = jest.fn(); + const request = addPrepackagedRulesRequest(); + const response = await server.inject(request, context); + + expect(response.status).toEqual(404); + expect(response.body).toEqual({ + message: 'Not Found', + status_code: 404, + }); }); - }); - describe('validation', () => { test('it returns a 400 if the index does not exist', async () => { clients.clusterClient.callAsCurrentUser.mockResolvedValue(getEmptyIndex()); - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const { payload } = await server.inject(addPrepackagedRulesRequest()); - expect(JSON.parse(payload)).toEqual({ + const request = addPrepackagedRulesRequest(); + const response = await server.inject(request, context); + + expect(response.status).toEqual(400); + expect(response.body).toEqual({ + status_code: 400, message: expect.stringContaining( - 'Pre-packaged rules cannot be installed until the space index is created' + 'Pre-packaged rules cannot be installed until the signals index is created' ), - status_code: 400, }); }); }); - describe('payload', () => { + describe('responses', () => { test('1 rule is installed and 0 are updated when find results are empty', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const { payload } = await server.inject(addPrepackagedRulesRequest()); - expect(JSON.parse(payload)).toEqual({ + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); + const request = addPrepackagedRulesRequest(); + const response = await server.inject(request, context); + + expect(response.status).toEqual(200); + expect(response.body).toEqual({ rules_installed: 1, rules_updated: 0, }); }); test('1 rule is updated and 0 are installed when we return a single find and the versions are different', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const { payload } = await server.inject(addPrepackagedRulesRequest()); - expect(JSON.parse(payload)).toEqual({ + const request = addPrepackagedRulesRequest(); + const response = await server.inject(request, context); + + expect(response.status).toEqual(200); + expect(response.body).toEqual({ rules_installed: 0, rules_updated: 1, }); }); + test('catches errors if payloads cause errors to be thrown', async () => { - jest.spyOn(updatePrepackagedRules, 'updatePrepackagedRules').mockImplementation(() => { + clients.clusterClient.callAsCurrentUser.mockImplementation(() => { throw new Error('Test error'); }); - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const { payload } = await server.inject(addPrepackagedRulesRequest()); - expect(JSON.parse(payload)).toEqual({ - message: 'Test error', - status_code: 500, - }); + const request = addPrepackagedRulesRequest(); + const response = await server.inject(request, context); + + expect(response.status).toEqual(500); + expect(response.body).toEqual({ message: 'Test error', status_code: 500 }); }); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/add_prepackaged_rules_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/add_prepackaged_rules_route.ts index baed193036bf94..13373a2c2bbf03 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/add_prepackaged_rules_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/add_prepackaged_rules_route.ts @@ -4,13 +4,10 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; - +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_PREPACKAGED_URL } from '../../../../../common/constants'; -import { LegacyServices, LegacyRequest } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; import { getIndexExists } from '../../index/get_index_exists'; -import { getIndex, transformError } from '../utils'; +import { transformError, buildSiemResponse } from '../utils'; import { getPrepackagedRules } from '../../rules/get_prepackaged_rules'; import { installPrepackagedRules } from '../../rules/install_prepacked_rules'; import { updatePrepackagedRules } from '../../rules/update_prepacked_rules'; @@ -23,33 +20,27 @@ import { } from '../schemas/response/prepackaged_rules_schema'; import { validate } from './validate'; -export const createAddPrepackedRulesRoute = ( - config: LegacyServices['config'], - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'PUT', - path: DETECTION_ENGINE_PREPACKAGED_URL, - options: { - tags: ['access:siem'], - validate: { - options: { - abortEarly: false, - }, +export const addPrepackedRulesRoute = (router: IRouter) => { + router.put( + { + path: DETECTION_ENGINE_PREPACKAGED_URL, + validate: false, + options: { + tags: ['access:siem'], }, }, - async handler(request: LegacyRequest, headers) { + async (context, request, response) => { + const siemResponse = buildSiemResponse(response); + try { - const { - actionsClient, - alertsClient, - clusterClient, - savedObjectsClient, - spacesClient, - } = await getClients(request); + const alertsClient = context.alerting.getAlertsClient(); + const actionsClient = context.actions.getActionsClient(); + const clusterClient = context.core.elasticsearch.dataClient; + const savedObjectsClient = context.core.savedObjects.client; + const siemClient = context.siem.getSiemClient(); if (!actionsClient || !alertsClient) { - return headers.response().code(404); + return siemResponse.error({ statusCode: 404 }); } const rulesFromFileSystem = getPrepackagedRules(); @@ -58,30 +49,28 @@ export const createAddPrepackedRulesRoute = ( const rulesToInstall = getRulesToInstall(rulesFromFileSystem, prepackagedRules); const rulesToUpdate = getRulesToUpdate(rulesFromFileSystem, prepackagedRules); - const spaceIndex = getIndex(spacesClient.getSpaceId, config); + const { signalsIndex } = siemClient; if (rulesToInstall.length !== 0 || rulesToUpdate.length !== 0) { - const spaceIndexExists = await getIndexExists( + const signalsIndexExists = await getIndexExists( clusterClient.callAsCurrentUser, - spaceIndex + signalsIndex ); - if (!spaceIndexExists) { - return headers - .response({ - message: `Pre-packaged rules cannot be installed until the space index is created: ${spaceIndex}`, - status_code: 400, - }) - .code(400); + if (!signalsIndexExists) { + return siemResponse.error({ + statusCode: 400, + body: `Pre-packaged rules cannot be installed until the signals index is created: ${signalsIndex}`, + }); } } await Promise.all( - installPrepackagedRules(alertsClient, actionsClient, rulesToInstall, spaceIndex) + installPrepackagedRules(alertsClient, actionsClient, rulesToInstall, signalsIndex) ); await updatePrepackagedRules( alertsClient, actionsClient, savedObjectsClient, rulesToUpdate, - spaceIndex + signalsIndex ); const prepackagedRulesOutput: PrePackagedRulesSchema = { rules_installed: rulesToInstall.length, @@ -89,32 +78,17 @@ export const createAddPrepackedRulesRoute = ( }; const [validated, errors] = validate(prepackagedRulesOutput, prePackagedRulesSchema); if (errors != null) { - return headers - .response({ - message: errors, - status_code: 500, - }) - .code(500); + return siemResponse.error({ statusCode: 500, body: errors }); } else { - return validated; + return response.ok({ body: validated ?? {} }); } } catch (err) { const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const addPrepackedRulesRoute = ( - route: LegacyServices['route'], - config: LegacyServices['config'], - getClients: GetScopedClients -): void => { - route(createAddPrepackedRulesRoute(config, getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_bulk_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_bulk_route.test.ts index 931623ea6652c6..a497890b0599aa 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_bulk_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_bulk_route.test.ts @@ -4,79 +4,55 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ServerInjectOptions } from 'hapi'; -import { omit } from 'lodash/fp'; - +import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; import { - getFindResult, - getResult, - createActionResult, typicalPayload, getReadBulkRequest, getEmptyIndex, getNonEmptyIndex, + getFindResultWithSingleHit, + getEmptyFindResult, + getResult, } from '../__mocks__/request_responses'; -import { createMockServer, createMockConfig, clientsServiceMock } from '../__mocks__'; -import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; +import { requestContextMock, serverMock, requestMock } from '../__mocks__'; import { createRulesBulkRoute } from './create_rules_bulk_route'; -import { BulkError } from '../utils'; -import { OutputRuleAlertRest } from '../../types'; -import * as createRules from '../../rules/create_rules'; -import * as readRules from '../../rules/read_rules'; describe('create_rules_bulk', () => { - let server = createMockServer(); - let config = createMockConfig(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - jest.resetAllMocks(); - jest.restoreAllMocks(); - jest.clearAllMocks(); - server = createMockServer(); - config = createMockConfig(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); - clients.clusterClient.callAsCurrentUser.mockResolvedValue(getNonEmptyIndex()); - - getClients.mockResolvedValue(clients); - - createRulesBulkRoute(server.route, config, getClients); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); + + clients.clusterClient.callAsCurrentUser.mockResolvedValue(getNonEmptyIndex()); // index exists + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); // no existing rules + clients.alertsClient.create.mockResolvedValue(getResult()); // successful creation + + createRulesBulkRoute(server.router); }); describe('status codes with actionClient and alertClient', () => { test('returns 200 when creating a single rule with a valid actionClient and alertClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - jest.spyOn(createRules, 'createRules').mockImplementation(async () => { - return getResult(); - }); - const { payload, statusCode } = await server.inject(getReadBulkRequest()); - expect(statusCode).toBe(200); - expect(JSON.parse(payload).error).toBeUndefined(); + const response = await server.inject(getReadBulkRequest(), context); + expect(response.status).toEqual(200); }); test('returns 404 if alertClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - const { inject, route } = createMockServer(); - createRulesBulkRoute(route, config, getClients); - const { statusCode } = await inject(getReadBulkRequest()); - expect(statusCode).toBe(404); + context.alerting.getAlertsClient = jest.fn(); + const response = await server.inject(getReadBulkRequest(), context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); }); }); - describe('validation', () => { - test('it gets a 409 if the index does not exist', async () => { + describe('unhappy paths', () => { + it('returns an error object if the index does not exist', async () => { clients.clusterClient.callAsCurrentUser.mockResolvedValue(getEmptyIndex()); - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const { payload } = await server.inject(getReadBulkRequest()); - expect(JSON.parse(payload)).toEqual([ + const response = await server.inject(getReadBulkRequest(), context); + + expect(response.status).toEqual(200); + expect(response.body).toEqual([ { error: { message: @@ -88,126 +64,81 @@ describe('create_rules_bulk', () => { ]); }); - test('returns 200 if rule_id is not given as the id is auto generated from the alert framework', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - // missing rule_id should return 200 as it will be auto generated if not given - const { rule_id, ...noRuleId } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'POST', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, - payload: [noRuleId], - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); + test('returns a duplicate error if rule_id already exists', async () => { + clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); + const response = await server.inject(getReadBulkRequest(), context); + + expect(response.status).toEqual(200); + expect(response.body).toEqual([ + expect.objectContaining({ + error: { + message: expect.stringContaining('already exists'), + status_code: 409, + }, + }), + ]); }); - test('returns 200 if type is query', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const { type, ...noType } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'POST', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, - payload: [ - { - ...noType, - type: 'query', + test('catches error if creation throws', async () => { + clients.alertsClient.create.mockImplementation(async () => { + throw new Error('Test error'); + }); + const response = await server.inject(getReadBulkRequest(), context); + + expect(response.status).toEqual(200); + expect(response.body).toEqual([ + expect.objectContaining({ + error: { + message: 'Test error', + status_code: 500, }, - ], - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); + }), + ]); }); - test('returns 400 if type is not filter or kql', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const { type, ...noType } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'POST', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, - payload: [ - { - ...noType, - type: 'something-made-up', + it('returns an error object if duplicate rule_ids found in request payload', async () => { + const request = requestMock.create({ + method: 'post', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, + body: [typicalPayload(), typicalPayload()], + }); + const response = await server.inject(request, context); + + expect(response.status).toEqual(200); + expect(response.body).toEqual([ + expect.objectContaining({ + error: { + message: expect.stringContaining('already exists'), + status_code: 409, }, - ], - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); + }), + ]); }); }); - test('returns 409 if duplicate rule_ids found in request payload', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const request: ServerInjectOptions = { - method: 'POST', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, - payload: [typicalPayload(), typicalPayload()], - }; - const { payload } = await server.inject(request); - const output: Array<BulkError | Partial<OutputRuleAlertRest>> = JSON.parse(payload); - expect(output.some(item => item.error?.status_code === 409)).toBeTruthy(); - }); + describe('request validation', () => { + test('allows rule type of query', async () => { + const request = requestMock.create({ + method: 'post', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, + body: [{ ...typicalPayload(), type: 'query' }], + }); + const result = server.validate(request); - test('returns 409 if duplicate rule_ids found in rule saved objects', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - jest.spyOn(readRules, 'readRules').mockImplementation(async () => { - return getResult(); + expect(result.ok).toHaveBeenCalled(); }); - const request: ServerInjectOptions = { - method: 'POST', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, - payload: [typicalPayload()], - }; - const { payload } = await server.inject(request); - const output: Array<BulkError | Partial<OutputRuleAlertRest>> = JSON.parse(payload); - expect(output.some(item => item.error?.status_code === 409)).toBeTruthy(); - }); - test('returns one error object in response when duplicate rule_ids found in request payload', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const request: ServerInjectOptions = { - method: 'POST', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, - payload: [typicalPayload(), typicalPayload()], - }; - const { payload } = await server.inject(request); - const output: Array<BulkError | Partial<OutputRuleAlertRest>> = JSON.parse(payload); - expect(output.length).toBe(1); - }); + test('disallows unknown rule type', async () => { + const request = requestMock.create({ + method: 'post', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, + body: [{ ...typicalPayload(), type: 'unexpected_type' }], + }); + const result = server.validate(request); - test('catches error if createRules throws error', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - jest.spyOn(createRules, 'createRules').mockImplementation(async () => { - throw new Error('Test error'); + expect(result.badRequest).toHaveBeenCalledWith( + '"value" at position 0 fails because [child "type" fails because ["type" must be one of [query, saved_query]]]' + ); }); - const request: ServerInjectOptions = { - method: 'POST', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, - payload: [typicalPayload()], - }; - const { payload } = await server.inject(request); - const output: Array<BulkError | Partial<OutputRuleAlertRest>> = JSON.parse(payload); - expect(output[0].error.message).toBe('Test error'); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_bulk_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_bulk_route.ts index ed0963ae0763ef..84841481a6c6fd 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_bulk_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_bulk_route.ts @@ -4,48 +4,48 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; import uuid from 'uuid'; +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; -import { GetScopedClients } from '../../../../services'; -import { LegacyServices } from '../../../../types'; import { createRules } from '../../rules/create_rules'; -import { BulkRulesRequest } from '../../rules/types'; +import { RuleAlertParamsRest } from '../../types'; import { readRules } from '../../rules/read_rules'; import { getDuplicates } from './utils'; import { transformValidateBulkError, validate } from './validate'; import { getIndexExists } from '../../index/get_index_exists'; -import { getIndex, transformBulkError, createBulkErrorObject } from '../utils'; +import { + transformBulkError, + createBulkErrorObject, + buildRouteValidation, + buildSiemResponse, +} from '../utils'; import { createRulesBulkSchema } from '../schemas/create_rules_bulk_schema'; import { rulesBulkSchema } from '../schemas/response/rules_bulk_schema'; -export const createCreateRulesBulkRoute = ( - config: LegacyServices['config'], - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'POST', - path: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, - options: { - tags: ['access:siem'], +export const createRulesBulkRoute = (router: IRouter) => { + router.post( + { + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_create`, validate: { - options: { - abortEarly: false, - }, - payload: createRulesBulkSchema, + body: buildRouteValidation<RuleAlertParamsRest[]>(createRulesBulkSchema), + }, + options: { + tags: ['access:siem'], }, }, - async handler(request: BulkRulesRequest, headers) { - const { actionsClient, alertsClient, clusterClient, spacesClient } = await getClients( - request - ); + async (context, request, response) => { + const alertsClient = context.alerting.getAlertsClient(); + const actionsClient = context.actions.getActionsClient(); + const clusterClient = context.core.elasticsearch.dataClient; + const siemClient = context.siem.getSiemClient(); + const siemResponse = buildSiemResponse(response); if (!actionsClient || !alertsClient) { - return headers.response().code(404); + return siemResponse.error({ statusCode: 404 }); } - const ruleDefinitions = request.payload; + const ruleDefinitions = request.body; const dupes = getDuplicates(ruleDefinitions, 'rule_id'); const rules = await Promise.all( @@ -81,7 +81,7 @@ export const createCreateRulesBulkRoute = ( } = payloadRule; const ruleIdOrUuid = ruleId ?? uuid.v4(); try { - const finalIndex = outputIndex ?? getIndex(spacesClient.getSpaceId, config); + const finalIndex = outputIndex ?? siemClient.signalsIndex; const indexExists = await getIndexExists(clusterClient.callAsCurrentUser, finalIndex); if (!indexExists) { return createBulkErrorObject({ @@ -148,23 +148,10 @@ export const createCreateRulesBulkRoute = ( ]; const [validated, errors] = validate(rulesBulk, rulesBulkSchema); if (errors != null) { - return headers - .response({ - message: errors, - status_code: 500, - }) - .code(500); + return siemResponse.error({ statusCode: 500, body: errors }); } else { - return validated; + return response.ok({ body: validated ?? {} }); } - }, - }; -}; - -export const createRulesBulkRoute = ( - route: LegacyServices['route'], - config: LegacyServices['config'], - getClients: GetScopedClients -): void => { - route(createCreateRulesBulkRoute(config, getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_route.test.ts index 1898bb18318982..ab92f07852bfb3 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_route.test.ts @@ -4,177 +4,115 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ServerInjectOptions } from 'hapi'; -import { omit } from 'lodash/fp'; - import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; -import { createRulesRoute } from './create_rules_route'; -import * as createRules from '../../rules/create_rules'; -import * as readRules from '../../rules/read_rules'; -import * as utils from './utils'; - import { - getFindResult, + getEmptyFindResult, getResult, - createActionResult, getCreateRequest, typicalPayload, getFindResultStatus, getNonEmptyIndex, getEmptyIndex, + getFindResultWithSingleHit, } from '../__mocks__/request_responses'; -import { createMockServer, createMockConfig, clientsServiceMock } from '../__mocks__'; +import { requestContextMock, serverMock, requestMock } from '../__mocks__'; +import { createRulesRoute } from './create_rules_route'; describe('create_rules', () => { - let server = createMockServer(); - let config = createMockConfig(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - // jest carries state between mocked implementations when using - // spyOn. So now we're doing all three of these. - // https://github.com/facebook/jest/issues/7136#issuecomment-565976599 - jest.resetAllMocks(); - jest.restoreAllMocks(); - jest.clearAllMocks(); - server = createMockServer(); - config = createMockConfig(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); - - getClients.mockResolvedValue(clients); - clients.clusterClient.callAsCurrentUser.mockResolvedValue(getNonEmptyIndex()); - - createRulesRoute(server.route, config, getClients); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); + + clients.clusterClient.callAsCurrentUser.mockResolvedValue(getNonEmptyIndex()); // index exists + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); // no current rules + clients.alertsClient.create.mockResolvedValue(getResult()); // creation succeeds + clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); // needed to transform + + createRulesRoute(server.router); }); describe('status codes with actionClient and alertClient', () => { test('returns 200 when creating a single rule with a valid actionClient and alertClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { statusCode } = await server.inject(getCreateRequest()); - expect(statusCode).toBe(200); + const response = await server.inject(getCreateRequest(), context); + expect(response.status).toEqual(200); }); test('returns 404 if alertClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - const { route, inject } = createMockServer(); - createRulesRoute(route, config, getClients); - const { statusCode } = await inject(getCreateRequest()); - expect(statusCode).toBe(404); + context.alerting.getAlertsClient = jest.fn(); + const response = await server.inject(getCreateRequest(), context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); }); }); - describe('validation', () => { + describe('unhappy paths', () => { test('it returns a 400 if the index does not exist', async () => { clients.clusterClient.callAsCurrentUser.mockResolvedValue(getEmptyIndex()); - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const { payload } = await server.inject(getCreateRequest()); - expect(JSON.parse(payload)).toEqual({ + const response = await server.inject(getCreateRequest(), context); + + expect(response.status).toEqual(400); + expect(response.body).toEqual({ message: 'To create a rule, the index must exist first. Index .siem-signals does not exist', status_code: 400, }); }); - test('returns 200 if rule_id is not given as the id is auto generated from the alert framework', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - // missing rule_id should return 200 as it will be auto generated if not given - const { rule_id, ...noRuleId } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_RULES_URL, - payload: noRuleId, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); - }); - - test('returns 200 if type is query', async () => { - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { type, ...noType } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_RULES_URL, - payload: { - ...noType, - type: 'query', - }, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); - }); + test('returns a duplicate error if rule_id already exists', async () => { + clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); + const response = await server.inject(getCreateRequest(), context); - test('returns 400 if type is not filter or kql', async () => { - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { type, ...noType } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_RULES_URL, - payload: { - ...noType, - type: 'something-made-up', - }, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); + expect(response.status).toEqual(409); + expect(response.body).toEqual({ + message: expect.stringContaining('already exists'), + status_code: 409, + }); }); - test('catches error if createRules throws error', async () => { - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - jest.spyOn(createRules, 'createRules').mockImplementation(async () => { + test('catches error if creation throws', async () => { + clients.alertsClient.create.mockImplementation(async () => { throw new Error('Test error'); }); - const { payload, statusCode } = await server.inject(getCreateRequest()); - expect(JSON.parse(payload).message).toBe('Test error'); - expect(statusCode).toBe(500); + const response = await server.inject(getCreateRequest(), context); + expect(response.status).toEqual(500); + expect(response.body).toEqual({ + message: 'Test error', + status_code: 500, + }); }); + }); - test('catches error if transform returns null', async () => { - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - jest.spyOn(utils, 'transform').mockReturnValue(null); - const { payload, statusCode } = await server.inject(getCreateRequest()); - expect(JSON.parse(payload).message).toBe('Internal error transforming'); - expect(statusCode).toBe(500); + describe('request validation', () => { + test('allows rule type of query', async () => { + const request = requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_RULES_URL, + body: { + ...typicalPayload(), + type: 'query', + }, + }); + const result = server.validate(request); + + expect(result.ok).toHaveBeenCalled(); }); - test('returns 409 if duplicate rule_ids found in rule saved objects', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - jest.spyOn(readRules, 'readRules').mockImplementation(async () => { - return getResult(); + test('disallows unknown rule type', async () => { + const request = requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_RULES_URL, + body: { + ...typicalPayload(), + type: 'unexpected_type', + }, }); - const { payload } = await server.inject(getCreateRequest()); - const output = JSON.parse(payload); - expect(output.status_code).toEqual(409); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith( + 'child "type" fails because ["type" must be one of [query, saved_query]]' + ); }); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_route.ts index 8de79614c8a0b1..312ebbee3cd8c3 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/create_rules_route.ts @@ -4,39 +4,32 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; import uuid from 'uuid'; +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; -import { GetScopedClients } from '../../../../services'; -import { LegacyServices } from '../../../../types'; import { createRules } from '../../rules/create_rules'; -import { RulesRequest, IRuleSavedAttributesSavedObjectAttributes } from '../../rules/types'; -import { createRulesSchema } from '../schemas/create_rules_schema'; +import { IRuleSavedAttributesSavedObjectAttributes } from '../../rules/types'; import { readRules } from '../../rules/read_rules'; +import { RuleAlertParamsRest } from '../../types'; import { ruleStatusSavedObjectType } from '../../rules/saved_object_mappings'; import { transformValidate } from './validate'; - import { getIndexExists } from '../../index/get_index_exists'; -import { getIndex, transformError } from '../utils'; +import { createRulesSchema } from '../schemas/create_rules_schema'; +import { buildRouteValidation, transformError, buildSiemResponse } from '../utils'; -export const createCreateRulesRoute = ( - config: LegacyServices['config'], - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'POST', - path: DETECTION_ENGINE_RULES_URL, - options: { - tags: ['access:siem'], +export const createRulesRoute = (router: IRouter): void => { + router.post( + { + path: DETECTION_ENGINE_RULES_URL, validate: { - options: { - abortEarly: false, - }, - payload: createRulesSchema, + body: buildRouteValidation<RuleAlertParamsRest>(createRulesSchema), + }, + options: { + tags: ['access:siem'], }, }, - async handler(request: RulesRequest, headers) { + async (context, request, response) => { const { description, enabled, @@ -62,39 +55,35 @@ export const createCreateRulesRoute = ( to, type, references, - } = request.payload; + } = request.body; + const siemResponse = buildSiemResponse(response); + try { - const { - alertsClient, - actionsClient, - clusterClient, - savedObjectsClient, - spacesClient, - } = await getClients(request); + const alertsClient = context.alerting.getAlertsClient(); + const actionsClient = context.actions.getActionsClient(); + const clusterClient = context.core.elasticsearch.dataClient; + const savedObjectsClient = context.core.savedObjects.client; + const siemClient = context.siem.getSiemClient(); if (!actionsClient || !alertsClient) { - return headers.response().code(404); + return siemResponse.error({ statusCode: 404 }); } - const finalIndex = outputIndex ?? getIndex(spacesClient.getSpaceId, config); + const finalIndex = outputIndex ?? siemClient.signalsIndex; const indexExists = await getIndexExists(clusterClient.callAsCurrentUser, finalIndex); if (!indexExists) { - return headers - .response({ - message: `To create a rule, the index must exist first. Index ${finalIndex} does not exist`, - status_code: 400, - }) - .code(400); + return siemResponse.error({ + statusCode: 400, + body: `To create a rule, the index must exist first. Index ${finalIndex} does not exist`, + }); } if (ruleId != null) { const rule = await readRules({ alertsClient, ruleId }); if (rule != null) { - return headers - .response({ - message: `rule_id: "${ruleId}" already exists`, - status_code: 409, - }) - .code(409); + return siemResponse.error({ + statusCode: 409, + body: `rule_id: "${ruleId}" already exists`, + }); } } const createdRule = await createRules({ @@ -139,32 +128,17 @@ export const createCreateRulesRoute = ( }); const [validated, errors] = transformValidate(createdRule, ruleStatuses.saved_objects[0]); if (errors != null) { - return headers - .response({ - message: errors, - status_code: 500, - }) - .code(500); + return siemResponse.error({ statusCode: 500, body: errors }); } else { - return validated; + return response.ok({ body: validated ?? {} }); } } catch (err) { const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const createRulesRoute = ( - route: LegacyServices['route'], - config: LegacyServices['config'], - getClients: GetScopedClients -): void => { - route(createCreateRulesRoute(config, getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_bulk_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_bulk_route.test.ts index fb44f96d76859f..f804d4c2e55ce0 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_bulk_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_bulk_route.test.ts @@ -4,129 +4,103 @@ * you may not use this file except in compliance with the Elastic License. */ -import { omit } from 'lodash/fp'; - -import { ServerInjectOptions } from 'hapi'; +import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; import { - getFindResult, - getResult, + getEmptyFindResult, getFindResultWithSingleHit, getDeleteBulkRequest, getDeleteBulkRequestById, getDeleteAsPostBulkRequest, getDeleteAsPostBulkRequestById, + getFindResultStatusEmpty, getFindResultStatus, } from '../__mocks__/request_responses'; -import { createMockServer, clientsServiceMock } from '../__mocks__'; -import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; - +import { requestContextMock, serverMock, requestMock } from '../__mocks__'; import { deleteRulesBulkRoute } from './delete_rules_bulk_route'; -import { BulkError } from '../utils'; describe('delete_rules', () => { - let server = createMockServer(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - jest.resetAllMocks(); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); - server = createMockServer(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); + clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); // rule exists + clients.alertsClient.delete.mockResolvedValue({}); // successful deletion + clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatusEmpty()); // rule status request - getClients.mockResolvedValue(clients); - deleteRulesBulkRoute(server.route, getClients); + deleteRulesBulkRoute(server.router); }); describe('status codes with actionClient and alertClient', () => { test('returns 200 when deleting a single rule with a valid actionClient and alertClient by alertId', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - const { statusCode } = await server.inject(getDeleteBulkRequest()); - expect(statusCode).toBe(200); + const response = await server.inject(getDeleteBulkRequest(), context); + expect(response.status).toEqual(200); }); test('resturns 200 when deleting a single rule and related rule status', async () => { clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - clients.savedObjectsClient.delete.mockResolvedValue(true); - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - const { statusCode } = await server.inject(getDeleteBulkRequest()); - expect(statusCode).toBe(200); + const response = await server.inject(getDeleteBulkRequest(), context); + expect(response.status).toEqual(200); }); test('returns 200 when deleting a single rule with a valid actionClient and alertClient by alertId using POST', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - const { statusCode } = await server.inject(getDeleteAsPostBulkRequest()); - expect(statusCode).toBe(200); + const response = await server.inject(getDeleteAsPostBulkRequest(), context); + expect(response.status).toEqual(200); }); test('returns 200 when deleting a single rule with a valid actionClient and alertClient by id', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - const { statusCode } = await server.inject(getDeleteBulkRequestById()); - expect(statusCode).toBe(200); + const response = await server.inject(getDeleteBulkRequestById(), context); + expect(response.status).toEqual(200); }); test('returns 200 when deleting a single rule with a valid actionClient and alertClient by id using POST', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - const { statusCode } = await server.inject(getDeleteAsPostBulkRequestById()); - expect(statusCode).toBe(200); + const response = await server.inject(getDeleteAsPostBulkRequestById(), context); + expect(response.status).toEqual(200); }); test('returns 200 because the error is in the payload when deleting a single rule that does not exist with a valid actionClient and alertClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - const { statusCode } = await server.inject(getDeleteBulkRequest()); - expect(statusCode).toBe(200); + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); + const response = await server.inject(getDeleteBulkRequest(), context); + expect(response.status).toEqual(200); }); test('returns 404 in the payload when deleting a single rule that does not exist with a valid actionClient and alertClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - clients.savedObjectsClient.delete.mockResolvedValue({}); - const { payload } = await server.inject(getDeleteBulkRequest()); - const parsed: BulkError[] = JSON.parse(payload); - const expected: BulkError[] = [ - { - error: { message: 'rule_id: "rule-1" not found', status_code: 404 }, - rule_id: 'rule-1', - }, - ]; - expect(parsed).toEqual(expected); + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); + + const response = await server.inject(getDeleteBulkRequest(), context); + expect(response.status).toEqual(200); + expect(response.body).toEqual( + expect.arrayContaining([ + { + error: { message: 'rule_id: "rule-1" not found', status_code: 404 }, + rule_id: 'rule-1', + }, + ]) + ); }); test('returns 404 if alertClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - const { route, inject } = createMockServer(); - deleteRulesBulkRoute(route, getClients); - const { statusCode } = await inject(getDeleteBulkRequest()); - expect(statusCode).toBe(404); + context.alerting.getAlertsClient = jest.fn(); + const response = await server.inject(getDeleteBulkRequest(), context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); }); }); - describe('validation', () => { - test('returns 400 if given a non-existent id in the payload', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - const request: ServerInjectOptions = { - method: 'DELETE', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_delete`, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); + describe('request validation', () => { + test('rejects requests without IDs', async () => { + const request = requestMock.create({ + method: 'post', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_delete`, + body: [{}], + }); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith( + '"value" at position 0 fails because ["value" must contain at least one of [id, rule_id]]' + ); }); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_bulk_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_bulk_route.ts index 5dae82e3fd0ac1..c4a1e0bdb2c181 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_bulk_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_bulk_route.ts @@ -4,89 +4,83 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; - +import { IRouter, RouteConfig, RequestHandler } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; -import { LegacyServices } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; import { queryRulesBulkSchema } from '../schemas/query_rules_bulk_schema'; +import { rulesBulkSchema } from '../schemas/response/rules_bulk_schema'; import { getIdBulkError } from './utils'; import { transformValidateBulkError, validate } from './validate'; -import { transformBulkError } from '../utils'; -import { QueryBulkRequest, IRuleSavedAttributesSavedObjectAttributes } from '../../rules/types'; +import { transformBulkError, buildRouteValidation, buildSiemResponse } from '../utils'; +import { + IRuleSavedAttributesSavedObjectAttributes, + DeleteRulesRequestParams, +} from '../../rules/types'; import { deleteRules } from '../../rules/delete_rules'; import { ruleStatusSavedObjectType } from '../../rules/saved_object_mappings'; -import { rulesBulkSchema } from '../schemas/response/rules_bulk_schema'; -export const createDeleteRulesBulkRoute = (getClients: GetScopedClients): Hapi.ServerRoute => { - return { - method: ['POST', 'DELETE'], // allow both POST and DELETE in case their client does not support bodies in DELETE +type Config = RouteConfig<unknown, unknown, DeleteRulesRequestParams, 'delete' | 'post'>; +type Handler = RequestHandler<unknown, unknown, DeleteRulesRequestParams, 'delete' | 'post'>; + +export const deleteRulesBulkRoute = (router: IRouter) => { + const config: Config = { + validate: { + body: buildRouteValidation<DeleteRulesRequestParams>(queryRulesBulkSchema), + }, path: `${DETECTION_ENGINE_RULES_URL}/_bulk_delete`, options: { tags: ['access:siem'], - validate: { - options: { - abortEarly: false, - }, - payload: queryRulesBulkSchema, - }, }, - async handler(request: QueryBulkRequest, headers) { - const { actionsClient, alertsClient, savedObjectsClient } = await getClients(request); + }; + const handler: Handler = async (context, request, response) => { + const alertsClient = context.alerting.getAlertsClient(); + const actionsClient = context.actions.getActionsClient(); + const savedObjectsClient = context.core.savedObjects.client; + const siemResponse = buildSiemResponse(response); + + if (!actionsClient || !alertsClient) { + return siemResponse.error({ statusCode: 404 }); + } - if (!actionsClient || !alertsClient) { - return headers.response().code(404); - } - const rules = await Promise.all( - request.payload.map(async payloadRule => { - const { id, rule_id: ruleId } = payloadRule; - const idOrRuleIdOrUnknown = id ?? ruleId ?? '(unknown id)'; - try { - const rule = await deleteRules({ - actionsClient, - alertsClient, - id, - ruleId, + const rules = await Promise.all( + request.body.map(async payloadRule => { + const { id, rule_id: ruleId } = payloadRule; + const idOrRuleIdOrUnknown = id ?? ruleId ?? '(unknown id)'; + try { + const rule = await deleteRules({ + actionsClient, + alertsClient, + id, + ruleId, + }); + if (rule != null) { + const ruleStatuses = await savedObjectsClient.find< + IRuleSavedAttributesSavedObjectAttributes + >({ + type: ruleStatusSavedObjectType, + perPage: 6, + search: rule.id, + searchFields: ['alertId'], }); - if (rule != null) { - const ruleStatuses = await savedObjectsClient.find< - IRuleSavedAttributesSavedObjectAttributes - >({ - type: ruleStatusSavedObjectType, - perPage: 6, - search: rule.id, - searchFields: ['alertId'], - }); - ruleStatuses.saved_objects.forEach(async obj => - savedObjectsClient.delete(ruleStatusSavedObjectType, obj.id) - ); - return transformValidateBulkError(idOrRuleIdOrUnknown, rule, ruleStatuses); - } else { - return getIdBulkError({ id, ruleId }); - } - } catch (err) { - return transformBulkError(idOrRuleIdOrUnknown, err); + ruleStatuses.saved_objects.forEach(async obj => + savedObjectsClient.delete(ruleStatusSavedObjectType, obj.id) + ); + return transformValidateBulkError(idOrRuleIdOrUnknown, rule, ruleStatuses); + } else { + return getIdBulkError({ id, ruleId }); } - }) - ); - const [validated, errors] = validate(rules, rulesBulkSchema); - if (errors != null) { - return headers - .response({ - message: errors, - status_code: 500, - }) - .code(500); - } else { - return validated; - } - }, + } catch (err) { + return transformBulkError(idOrRuleIdOrUnknown, err); + } + }) + ); + const [validated, errors] = validate(rules, rulesBulkSchema); + if (errors != null) { + return siemResponse.error({ statusCode: 500, body: errors }); + } else { + return response.ok({ body: validated ?? {} }); + } }; -}; -export const deleteRulesBulkRoute = ( - route: LegacyServices['route'], - getClients: GetScopedClients -): void => { - route(createDeleteRulesBulkRoute(getClients)); + router.delete(config, handler); + router.post(config, handler); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_route.test.ts index 1d9197e531398b..0e4c22057d7060 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_route.test.ts @@ -4,121 +4,90 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ServerInjectOptions } from 'hapi'; -import { omit } from 'lodash/fp'; -import { deleteRulesRoute } from './delete_rules_route'; -import * as utils from './utils'; -import * as deleteRules from '../../rules/delete_rules'; - +import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; import { - getFindResult, + getEmptyFindResult, getResult, getDeleteRequest, getFindResultWithSingleHit, getDeleteRequestById, getFindResultStatus, } from '../__mocks__/request_responses'; -import { createMockServer, clientsServiceMock } from '../__mocks__'; -import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; +import { requestContextMock, serverMock, requestMock } from '../__mocks__'; +import { deleteRulesRoute } from './delete_rules_route'; describe('delete_rules', () => { - let server = createMockServer(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - // jest carries state between mocked implementations when using - // spyOn. So now we're doing all three of these. - // https://github.com/facebook/jest/issues/7136#issuecomment-565976599 - jest.resetAllMocks(); - jest.restoreAllMocks(); - jest.clearAllMocks(); - server = createMockServer(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); - - getClients.mockResolvedValue(clients); - - deleteRulesRoute(server.route, getClients); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); + + clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); + clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); + + deleteRulesRoute(server.router); }); describe('status codes with actionClient and alertClient', () => { test('returns 200 when deleting a single rule with a valid actionClient and alertClient by alertId', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - clients.savedObjectsClient.delete.mockResolvedValue({}); - const { statusCode } = await server.inject(getDeleteRequest()); - expect(statusCode).toBe(200); + const response = await server.inject(getDeleteRequest(), context); + + expect(response.status).toEqual(200); }); test('returns 200 when deleting a single rule with a valid actionClient and alertClient by id', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - clients.savedObjectsClient.delete.mockResolvedValue({}); - const { statusCode } = await server.inject(getDeleteRequestById()); - expect(statusCode).toBe(200); + const response = await server.inject(getDeleteRequestById(), context); + + expect(response.status).toEqual(200); }); test('returns 404 when deleting a single rule that does not exist with a valid actionClient and alertClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - clients.savedObjectsClient.delete.mockResolvedValue({}); - const { statusCode } = await server.inject(getDeleteRequest()); - expect(statusCode).toBe(404); + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); + const response = await server.inject(getDeleteRequest(), context); + + expect(response.status).toEqual(404); + expect(response.body).toEqual({ + message: 'rule_id: "rule-1" not found', + status_code: 404, + }); }); test('returns 404 if alertClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - const { route, inject } = createMockServer(); - deleteRulesRoute(route, getClients); - const { statusCode } = await inject(getDeleteRequest()); - expect(statusCode).toBe(404); - }); + context.alerting.getAlertsClient = jest.fn(); + const response = await server.inject(getDeleteRequest(), context); - test('returns 500 when transform fails', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - clients.savedObjectsClient.delete.mockResolvedValue({}); - jest.spyOn(utils, 'transform').mockReturnValue(null); - const { payload, statusCode } = await server.inject(getDeleteRequest()); - expect(JSON.parse(payload).message).toBe('Internal error transforming'); - expect(statusCode).toBe(500); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); }); - test('catches error if deleteRules throws error', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - clients.savedObjectsClient.delete.mockResolvedValue({}); - jest.spyOn(deleteRules, 'deleteRules').mockImplementation(async () => { + test('catches error if deletion throws error', async () => { + clients.alertsClient.delete.mockImplementation(async () => { throw new Error('Test error'); }); - const { payload, statusCode } = await server.inject(getDeleteRequestById()); - expect(JSON.parse(payload).message).toBe('Test error'); - expect(statusCode).toBe(500); + const response = await server.inject(getDeleteRequest(), context); + expect(response.status).toEqual(500); + expect(response.body).toEqual({ + message: 'Test error', + status_code: 500, + }); }); }); - describe('validation', () => { - test('returns 400 if given a non-existent id', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - const request: ServerInjectOptions = { - method: 'DELETE', - url: DETECTION_ENGINE_RULES_URL, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); + describe('request validation', () => { + test('rejects a request with no id', async () => { + const request = requestMock.create({ + method: 'delete', + path: DETECTION_ENGINE_RULES_URL, + query: {}, + }); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith( + '"value" must contain at least one of [id, rule_id]' + ); }); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_route.ts index 53c76ad0b76f01..a637b7e0ef73e2 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/delete_rules_route.ts @@ -4,41 +4,42 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; - +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; import { deleteRules } from '../../rules/delete_rules'; -import { LegacyServices, LegacyRequest } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; import { queryRulesSchema } from '../schemas/query_rules_schema'; import { getIdError } from './utils'; import { transformValidate } from './validate'; - -import { transformError } from '../utils'; -import { QueryRequest, IRuleSavedAttributesSavedObjectAttributes } from '../../rules/types'; +import { buildRouteValidation, transformError, buildSiemResponse } from '../utils'; +import { + DeleteRuleRequestParams, + IRuleSavedAttributesSavedObjectAttributes, +} from '../../rules/types'; import { ruleStatusSavedObjectType } from '../../rules/saved_object_mappings'; -export const createDeleteRulesRoute = (getClients: GetScopedClients): Hapi.ServerRoute => { - return { - method: 'DELETE', - path: DETECTION_ENGINE_RULES_URL, - options: { - tags: ['access:siem'], +export const deleteRulesRoute = (router: IRouter) => { + router.delete( + { + path: DETECTION_ENGINE_RULES_URL, validate: { - options: { - abortEarly: false, - }, - query: queryRulesSchema, + query: buildRouteValidation<DeleteRuleRequestParams>(queryRulesSchema), + }, + options: { + tags: ['access:siem'], }, }, - async handler(request: QueryRequest & LegacyRequest, headers) { - const { id, rule_id: ruleId } = request.query; + async (context, request, response) => { + const siemResponse = buildSiemResponse(response); try { - const { actionsClient, alertsClient, savedObjectsClient } = await getClients(request); + const { id, rule_id: ruleId } = request.query; + + const alertsClient = context.alerting.getAlertsClient(); + const actionsClient = context.actions.getActionsClient(); + const savedObjectsClient = context.core.savedObjects.client; if (!actionsClient || !alertsClient) { - return headers.response().code(404); + return siemResponse.error({ statusCode: 404 }); } const rule = await deleteRules({ @@ -61,40 +62,24 @@ export const createDeleteRulesRoute = (getClients: GetScopedClients): Hapi.Serve ); const [validated, errors] = transformValidate(rule, ruleStatuses.saved_objects[0]); if (errors != null) { - return headers - .response({ - message: errors, - status_code: 500, - }) - .code(500); + return siemResponse.error({ statusCode: 500, body: errors }); } else { - return validated; + return response.ok({ body: validated ?? {} }); } } else { const error = getIdError({ id, ruleId }); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } } catch (err) { const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const deleteRulesRoute = ( - route: LegacyServices['route'], - getClients: GetScopedClients -): void => { - route(createDeleteRulesRoute(getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/export_rules_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/export_rules_route.ts index 1966b06701803d..88e14ad2b410be 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/export_rules_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/export_rules_route.ts @@ -4,92 +4,76 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; - +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; -import { LegacyServices, LegacyRequest } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; -import { ExportRulesRequest } from '../../rules/types'; +import { LegacyServices } from '../../../../types'; +import { ExportRulesRequestParams } from '../../rules/types'; import { getNonPackagedRulesCount } from '../../rules/get_existing_prepackaged_rules'; import { exportRulesSchema, exportRulesQuerySchema } from '../schemas/export_rules_schema'; import { getExportByObjectIds } from '../../rules/get_export_by_object_ids'; import { getExportAll } from '../../rules/get_export_all'; -import { transformError } from '../utils'; +import { transformError, buildRouteValidation, buildSiemResponse } from '../utils'; -export const createExportRulesRoute = ( - config: LegacyServices['config'], - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'POST', - path: `${DETECTION_ENGINE_RULES_URL}/_export`, - options: { - tags: ['access:siem'], +export const exportRulesRoute = (router: IRouter, config: LegacyServices['config']) => { + router.post( + { + path: `${DETECTION_ENGINE_RULES_URL}/_export`, validate: { - options: { - abortEarly: false, - }, - payload: exportRulesSchema, - query: exportRulesQuerySchema, + query: buildRouteValidation<ExportRulesRequestParams['query']>(exportRulesQuerySchema), + body: buildRouteValidation<ExportRulesRequestParams['body']>(exportRulesSchema), + }, + options: { + tags: ['access:siem'], }, }, - async handler(request: ExportRulesRequest & LegacyRequest, headers) { - const { alertsClient } = await getClients(request); + async (context, request, response) => { + const alertsClient = context.alerting.getAlertsClient(); + const siemResponse = buildSiemResponse(response); if (!alertsClient) { - return headers.response().code(404); + return siemResponse.error({ statusCode: 404 }); } try { const exportSizeLimit = config().get<number>('savedObjects.maxImportExportSize'); - if (request.payload?.objects != null && request.payload.objects.length > exportSizeLimit) { - return headers - .response({ - message: `Can't export more than ${exportSizeLimit} rules`, - status_code: 400, - }) - .code(400); + if (request.body?.objects != null && request.body.objects.length > exportSizeLimit) { + return siemResponse.error({ + statusCode: 400, + body: `Can't export more than ${exportSizeLimit} rules`, + }); } else { const nonPackagedRulesCount = await getNonPackagedRulesCount({ alertsClient }); if (nonPackagedRulesCount > exportSizeLimit) { - return headers - .response({ - message: `Can't export more than ${exportSizeLimit} rules`, - status_code: 400, - }) - .code(400); + return siemResponse.error({ + statusCode: 400, + body: `Can't export more than ${exportSizeLimit} rules`, + }); } } const exported = - request.payload?.objects != null - ? await getExportByObjectIds(alertsClient, request.payload.objects) + request.body?.objects != null + ? await getExportByObjectIds(alertsClient, request.body.objects) : await getExportAll(alertsClient); - const response = request.query.exclude_export_details - ? headers.response(exported.rulesNdjson) - : headers.response(`${exported.rulesNdjson}${exported.exportDetails}`); + const responseBody = request.query.exclude_export_details + ? exported.rulesNdjson + : `${exported.rulesNdjson}${exported.exportDetails}`; - return response - .header('Content-Disposition', `attachment; filename="${request.query.file_name}"`) - .header('Content-Type', 'application/ndjson'); + return response.ok({ + headers: { + 'Content-Disposition': `attachment; filename="${request.query.file_name}"`, + 'Content-Type': 'application/ndjson', + }, + body: responseBody, + }); } catch (err) { const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const exportRulesRoute = ( - route: LegacyServices['route'], - config: LegacyServices['config'], - getClients: GetScopedClients -): void => { - route(createExportRulesRoute(config, getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_route.test.ts index 1baa2b7031581f..4271dcd2405463 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_route.test.ts @@ -4,109 +4,85 @@ * you may not use this file except in compliance with the Elastic License. */ -import { omit } from 'lodash/fp'; - +import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; import { - getFindResult, getResult, + getFindRequest, getFindResultWithSingleHit, getFindResultStatus, - getFindRequest, } from '../__mocks__/request_responses'; -import { createMockServer } from '../__mocks__'; -import { clientsServiceMock } from '../__mocks__/clients_service_mock'; - -import * as utils from './utils'; -import * as findRules from '../../rules/find_rules'; - +import { requestContextMock, serverMock, requestMock } from '../__mocks__'; import { findRulesRoute } from './find_rules_route'; -import { ServerInjectOptions } from 'hapi'; - -import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; describe('find_rules', () => { - let server = createMockServer(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - // jest carries state between mocked implementations when using - // spyOn. So now we're doing all three of these. - // https://github.com/facebook/jest/issues/7136#issuecomment-565976599 - jest.resetAllMocks(); - jest.restoreAllMocks(); - jest.clearAllMocks(); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); - server = createMockServer(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); + clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); + clients.alertsClient.get.mockResolvedValue(getResult()); + clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - getClients.mockResolvedValue(clients); - - findRulesRoute(server.route, getClients); + findRulesRoute(server.router); }); describe('status codes with actionClient and alertClient', () => { - test('returns 200 when finding a single rule with a valid alertsClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { statusCode } = await server.inject(getFindRequest()); - expect(statusCode).toBe(200); + test('returns 200 when finding a single rule with a valid actionClient and alertClient', async () => { + const response = await server.inject(getFindRequest(), context); + expect(response.status).toEqual(200); }); test('returns 404 if alertClient is not available on the route', async () => { - const { route, inject } = createMockServer(); - getClients.mockResolvedValue(omit('alertsClient', clients)); - findRulesRoute(route, getClients); - const { statusCode } = await inject(getFindRequest()); - expect(statusCode).toBe(404); - }); - - test('catches error when transformation fails', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - jest.spyOn(utils, 'transformFindAlerts').mockReturnValue(null); - const { payload, statusCode } = await server.inject(getFindRequest()); - expect(statusCode).toBe(500); - expect(JSON.parse(payload).message).toBe('Internal error transforming'); + context.alerting.getAlertsClient = jest.fn(); + const response = await server.inject(getFindRequest(), context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); }); - test('catch error when findRules function throws error', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - jest.spyOn(findRules, 'findRules').mockImplementation(async () => { + test('catches error if search throws error', async () => { + clients.alertsClient.find.mockImplementation(async () => { throw new Error('Test error'); }); - const { payload, statusCode } = await server.inject(getFindRequest()); - expect(JSON.parse(payload).message).toBe('Test error'); - expect(statusCode).toBe(500); + const response = await server.inject(getFindRequest(), context); + expect(response.status).toEqual(500); + expect(response.body).toEqual({ + message: 'Test error', + status_code: 500, + }); }); }); - describe('validation', () => { - test('returns 400 if a bad query parameter is given', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - const request: ServerInjectOptions = { - method: 'GET', - url: `${DETECTION_ENGINE_RULES_URL}/_find?invalid_value=500`, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); + describe('request validation', () => { + test('allows optional query params', async () => { + const request = requestMock.create({ + method: 'get', + path: `${DETECTION_ENGINE_RULES_URL}/_find`, + query: { + page: 2, + per_page: 20, + sort_field: 'timestamp', + fields: ['field1', 'field2'], + }, + }); + const result = server.validate(request); + + expect(result.ok).toHaveBeenCalled(); }); - test('returns 200 if the set of optional query parameters are given', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - const request: ServerInjectOptions = { - method: 'GET', - url: `${DETECTION_ENGINE_RULES_URL}/_find?page=2&per_page=20&sort_field=timestamp&fields=["field-1","field-2","field-3]`, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); + test('rejects unknown query params', async () => { + const request = requestMock.create({ + method: 'get', + path: `${DETECTION_ENGINE_RULES_URL}/_find`, + query: { + invalid_value: 'hi mom', + }, + }); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith('"invalid_value" is not allowed'); }); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_route.ts index 04b7f2cfe3bec1..936957a3bb1aee 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_route.ts @@ -4,37 +4,39 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; -import { LegacyServices, LegacyRequest } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; import { findRules } from '../../rules/find_rules'; -import { FindRulesRequest, IRuleSavedAttributesSavedObjectAttributes } from '../../rules/types'; +import { + FindRulesRequestParams, + IRuleSavedAttributesSavedObjectAttributes, +} from '../../rules/types'; import { findRulesSchema } from '../schemas/find_rules_schema'; import { transformValidateFindAlerts } from './validate'; - -import { transformError } from '../utils'; +import { buildRouteValidation, transformError, buildSiemResponse } from '../utils'; import { ruleStatusSavedObjectType } from '../../rules/saved_object_mappings'; -export const createFindRulesRoute = (getClients: GetScopedClients): Hapi.ServerRoute => { - return { - method: 'GET', - path: `${DETECTION_ENGINE_RULES_URL}/_find`, - options: { - tags: ['access:siem'], +export const findRulesRoute = (router: IRouter) => { + router.get( + { + path: `${DETECTION_ENGINE_RULES_URL}/_find`, validate: { - options: { - abortEarly: false, - }, - query: findRulesSchema, + query: buildRouteValidation<FindRulesRequestParams>(findRulesSchema), + }, + options: { + tags: ['access:siem'], }, }, - async handler(request: FindRulesRequest & LegacyRequest, headers) { - const { query } = request; + async (context, request, response) => { + const siemResponse = buildSiemResponse(response); + try { - const { alertsClient, savedObjectsClient } = await getClients(request); + const { query } = request; + const alertsClient = context.alerting.getAlertsClient(); + const savedObjectsClient = context.core.savedObjects.client; + if (!alertsClient) { - return headers.response().code(404); + return siemResponse.error({ statusCode: 404 }); } const rules = await findRules({ @@ -62,28 +64,17 @@ export const createFindRulesRoute = (getClients: GetScopedClients): Hapi.ServerR ); const [validated, errors] = transformValidateFindAlerts(rules, ruleStatuses); if (errors != null) { - return headers - .response({ - message: errors, - status_code: 500, - }) - .code(500); + return siemResponse.error({ statusCode: 500, body: errors }); } else { - return validated; + return response.ok({ body: validated ?? {} }); } } catch (err) { const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const findRulesRoute = (route: LegacyServices['route'], getClients: GetScopedClients) => { - route(createFindRulesRoute(getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_status_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_status_route.test.ts index 00411c550fa2ea..182a2c66b67c99 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_status_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_status_route.test.ts @@ -4,93 +4,60 @@ * you may not use this file except in compliance with the Elastic License. */ -import { omit } from 'lodash/fp'; - -import { getFindResultStatus } from '../__mocks__/request_responses'; -import { createMockServer } from '../__mocks__'; -import { clientsServiceMock } from '../__mocks__/clients_service_mock'; - -import { findRulesStatusesRoute } from './find_rules_status_route'; -import { ServerInjectOptions } from 'hapi'; - import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; +import { getFindResultStatus, ruleStatusRequest } from '../__mocks__/request_responses'; +import { serverMock, requestContextMock, requestMock } from '../__mocks__'; +import { findRulesStatusesRoute } from './find_rules_status_route'; describe('find_statuses', () => { - let server = createMockServer(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - // jest carries state between mocked implementations when using - // spyOn. So now we're doing all three of these. - // https://github.com/facebook/jest/issues/7136#issuecomment-565976599 - jest.resetAllMocks(); - jest.restoreAllMocks(); - jest.clearAllMocks(); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); - server = createMockServer(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); + clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); // successful status search - getClients.mockResolvedValue(clients); - - findRulesStatusesRoute(server.route, getClients); + findRulesStatusesRoute(server.router); }); describe('status codes with actionClient and alertClient', () => { test('returns 200 when finding a single rule status with a valid alertsClient', async () => { - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const request: ServerInjectOptions = { - method: 'GET', - url: `${DETECTION_ENGINE_RULES_URL}/_find_statuses?ids=["someid"]`, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); + const response = await server.inject(ruleStatusRequest(), context); + expect(response.status).toEqual(200); }); test('returns 404 if alertClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - const request: ServerInjectOptions = { - method: 'GET', - url: `${DETECTION_ENGINE_RULES_URL}/_find_statuses?ids=["someid"]`, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(404); + context.alerting.getAlertsClient = jest.fn(); + const response = await server.inject(ruleStatusRequest(), context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); }); - test('catch error when savedObjectsClient find function throws error', async () => { + test('catch error when status search throws error', async () => { clients.savedObjectsClient.find.mockImplementation(async () => { throw new Error('Test error'); }); - const request: ServerInjectOptions = { - method: 'GET', - url: `${DETECTION_ENGINE_RULES_URL}/_find_statuses?ids=["someid"]`, - }; - const { payload, statusCode } = await server.inject(request); - expect(JSON.parse(payload).message).toBe('Test error'); - expect(statusCode).toBe(500); + const response = await server.inject(ruleStatusRequest(), context); + expect(response.status).toEqual(500); + expect(response.body).toEqual({ + message: 'Test error', + status_code: 500, + }); }); }); - describe('validation', () => { - test('returns 400 if id is given instead of ids', async () => { - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const request: ServerInjectOptions = { - method: 'GET', - url: `${DETECTION_ENGINE_RULES_URL}/_find_statuses?id=["someid"]`, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); - }); + describe('request validation', () => { + test('disallows singular id query param', async () => { + const request = requestMock.create({ + method: 'get', + path: `${DETECTION_ENGINE_RULES_URL}/_find_statuses`, + query: { id: ['someId'] }, + }); + const result = server.validate(request); - test('returns 200 if the set of optional query parameters are given', async () => { - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const request: ServerInjectOptions = { - method: 'GET', - url: `${DETECTION_ENGINE_RULES_URL}/_find_statuses?ids=["someid"]`, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); + expect(result.badRequest).toHaveBeenCalledWith('"id" is not allowed'); }); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_status_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_status_route.ts index 5687c5d4095db1..f222fa419f4404 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_status_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/find_rules_status_route.ts @@ -4,95 +4,93 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; - +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; -import { LegacyServices, LegacyRequest } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; import { findRulesStatusesSchema } from '../schemas/find_rules_statuses_schema'; import { - FindRulesStatusesRequest, + FindRulesStatusesRequestParams, IRuleSavedAttributesSavedObjectAttributes, RuleStatusResponse, IRuleStatusAttributes, } from '../../rules/types'; import { ruleStatusSavedObjectType } from '../../rules/saved_object_mappings'; -import { transformError, convertToSnakeCase } from '../utils'; +import { + buildRouteValidation, + transformError, + convertToSnakeCase, + buildSiemResponse, +} from '../utils'; -export const createFindRulesStatusRoute = (getClients: GetScopedClients): Hapi.ServerRoute => ({ - method: 'GET', - path: `${DETECTION_ENGINE_RULES_URL}/_find_statuses`, - options: { - tags: ['access:siem'], - validate: { +export const findRulesStatusesRoute = (router: IRouter) => { + router.get( + { + path: `${DETECTION_ENGINE_RULES_URL}/_find_statuses`, + validate: { + query: buildRouteValidation<FindRulesStatusesRequestParams>(findRulesStatusesSchema), + }, options: { - abortEarly: false, + tags: ['access:siem'], }, - query: findRulesStatusesSchema, }, - }, - async handler(request: FindRulesStatusesRequest & LegacyRequest, headers) { - const { query } = request; - const { alertsClient, savedObjectsClient } = await getClients(request); + async (context, request, response) => { + const { query } = request; + const alertsClient = context.alerting.getAlertsClient(); + const savedObjectsClient = context.core.savedObjects.client; + const siemResponse = buildSiemResponse(response); - if (!alertsClient) { - return headers.response().code(404); - } + if (!alertsClient) { + return siemResponse.error({ statusCode: 404 }); + } - // build return object with ids as keys and errors as values. - /* looks like this + // build return object with ids as keys and errors as values. + /* looks like this { "someAlertId": [{"myerrorobject": "some error value"}, etc..], "anotherAlertId": ... } */ - try { - const statuses = await query.ids.reduce<Promise<RuleStatusResponse | {}>>(async (acc, id) => { - const lastFiveErrorsForId = await savedObjectsClient.find< - IRuleSavedAttributesSavedObjectAttributes - >({ - type: ruleStatusSavedObjectType, - perPage: 6, - sortField: 'statusDate', - sortOrder: 'desc', - search: id, - searchFields: ['alertId'], - }); - const accumulated = await acc; + try { + const statuses = await query.ids.reduce<Promise<RuleStatusResponse | {}>>( + async (acc, id) => { + const lastFiveErrorsForId = await savedObjectsClient.find< + IRuleSavedAttributesSavedObjectAttributes + >({ + type: ruleStatusSavedObjectType, + perPage: 6, + sortField: 'statusDate', + sortOrder: 'desc', + search: id, + searchFields: ['alertId'], + }); + const accumulated = await acc; - // Array accessors can result in undefined but - // this is not represented in typescript for some reason, - // https://github.com/Microsoft/TypeScript/issues/11122 - const currentStatus = convertToSnakeCase<IRuleStatusAttributes>( - lastFiveErrorsForId.saved_objects[0]?.attributes - ); - const failures = lastFiveErrorsForId.saved_objects - .slice(1) - .map(errorItem => convertToSnakeCase<IRuleStatusAttributes>(errorItem.attributes)); - return { - ...accumulated, - [id]: { - current_status: currentStatus, - failures, + // Array accessors can result in undefined but + // this is not represented in typescript for some reason, + // https://github.com/Microsoft/TypeScript/issues/11122 + const currentStatus = convertToSnakeCase<IRuleStatusAttributes>( + lastFiveErrorsForId.saved_objects[0]?.attributes + ); + const failures = lastFiveErrorsForId.saved_objects + .slice(1) + .map(errorItem => convertToSnakeCase<IRuleStatusAttributes>(errorItem.attributes)); + return { + ...accumulated, + [id]: { + current_status: currentStatus, + failures, + }, + }; }, - }; - }, Promise.resolve<RuleStatusResponse>({})); - return statuses; - } catch (err) { - const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + Promise.resolve<RuleStatusResponse>({}) + ); + return response.ok({ body: statuses }); + } catch (err) { + const error = transformError(err); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); + } } - }, -}); - -export const findRulesStatusesRoute = ( - route: LegacyServices['route'], - getClients: GetScopedClients -): void => { - route(createFindRulesStatusRoute(getClients)); + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/get_prepackaged_rules_status_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/get_prepackaged_rules_status_route.test.ts index 99157b4d15360d..23309944f511e9 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/get_prepackaged_rules_status_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/get_prepackaged_rules_status_route.test.ts @@ -4,20 +4,15 @@ * you may not use this file except in compliance with the Elastic License. */ -import { omit } from 'lodash/fp'; - import { getPrepackagedRulesStatusRoute } from './get_prepackaged_rules_status_route'; -import * as findRules from '../../rules/find_rules'; import { - getFindResult, - getResult, - createActionResult, + getEmptyFindResult, getFindResultWithSingleHit, getPrepackagedRulesStatusRequest, getNonEmptyIndex, } from '../__mocks__/request_responses'; -import { createMockServer, clientsServiceMock } from '../__mocks__'; +import { requestContextMock, serverMock } from '../__mocks__'; jest.mock('../../rules/get_prepackaged_rules', () => { return { @@ -43,66 +38,53 @@ jest.mock('../../rules/get_prepackaged_rules', () => { }); describe('get_prepackaged_rule_status_route', () => { - let server = createMockServer(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - // jest carries state between mocked implementations when using - // spyOn. So now we're doing all three of these. - // https://github.com/facebook/jest/issues/7136#issuecomment-565976599 - jest.resetAllMocks(); - jest.restoreAllMocks(); - jest.clearAllMocks(); - - server = createMockServer(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); - getClients.mockResolvedValue(clients); clients.clusterClient.callAsCurrentUser.mockResolvedValue(getNonEmptyIndex()); + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); - getPrepackagedRulesStatusRoute(server.route, getClients); + getPrepackagedRulesStatusRoute(server.router); }); describe('status codes with actionClient and alertClient', () => { test('returns 200 when creating a with a valid actionClient and alertClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const { statusCode } = await server.inject(getPrepackagedRulesStatusRequest()); - expect(statusCode).toBe(200); + const response = await server.inject(getPrepackagedRulesStatusRequest(), context); + expect(response.status).toEqual(200); }); test('returns 404 if alertClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - const { route, inject } = createMockServer(); - getPrepackagedRulesStatusRoute(route, getClients); - const { statusCode } = await inject(getPrepackagedRulesStatusRequest()); - expect(statusCode).toBe(404); + context.alerting.getAlertsClient = jest.fn(); + const response = await server.inject(getPrepackagedRulesStatusRequest(), context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); }); - test('catch error when findRules function throws error', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - jest.spyOn(findRules, 'findRules').mockImplementation(async () => { + test('catch error when finding rules throws error', async () => { + clients.alertsClient.find.mockImplementation(async () => { throw new Error('Test error'); }); - const { payload, statusCode } = await server.inject(getPrepackagedRulesStatusRequest()); - expect(JSON.parse(payload).message).toBe('Test error'); - expect(statusCode).toBe(500); + const response = await server.inject(getPrepackagedRulesStatusRequest(), context); + expect(response.status).toEqual(500); + expect(response.body).toEqual({ + message: 'Test error', + status_code: 500, + }); }); }); - describe('payload', () => { + describe('responses', () => { test('0 rules installed, 0 custom rules, 1 rules not installed, and 1 rule not updated', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const { payload } = await server.inject(getPrepackagedRulesStatusRequest()); - expect(JSON.parse(payload)).toEqual({ + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); + const request = getPrepackagedRulesStatusRequest(); + const response = await server.inject(request, context); + + expect(response.status).toEqual(200); + expect(response.body).toEqual({ rules_custom_installed: 0, rules_installed: 0, rules_not_installed: 1, @@ -112,11 +94,11 @@ describe('get_prepackaged_rule_status_route', () => { test('1 rule installed, 1 custom rules, 0 rules not installed, and 1 rule to not updated', async () => { clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.create.mockResolvedValue(createActionResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const { payload } = await server.inject(getPrepackagedRulesStatusRequest()); - expect(JSON.parse(payload)).toEqual({ + const request = getPrepackagedRulesStatusRequest(); + const response = await server.inject(request, context); + + expect(response.status).toEqual(200); + expect(response.body).toEqual({ rules_custom_installed: 1, rules_installed: 1, rules_not_installed: 0, diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/get_prepackaged_rules_status_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/get_prepackaged_rules_status_route.ts index e9394d1abd849b..ea20c2763886c2 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/get_prepackaged_rules_status_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/get_prepackaged_rules_status_route.ts @@ -4,12 +4,9 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; - +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_PREPACKAGED_URL } from '../../../../../common/constants'; -import { LegacyServices, LegacyRequest } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; -import { transformError } from '../utils'; +import { transformError, buildSiemResponse } from '../utils'; import { getPrepackagedRules } from '../../rules/get_prepackaged_rules'; import { getRulesToInstall } from '../../rules/get_rules_to_install'; import { getRulesToUpdate } from '../../rules/get_rules_to_update'; @@ -21,25 +18,21 @@ import { } from '../schemas/response/prepackaged_rules_status_schema'; import { validate } from './validate'; -export const createGetPrepackagedRulesStatusRoute = ( - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'GET', - path: `${DETECTION_ENGINE_PREPACKAGED_URL}/_status`, - options: { - tags: ['access:siem'], - validate: { - options: { - abortEarly: false, - }, +export const getPrepackagedRulesStatusRoute = (router: IRouter) => { + router.get( + { + path: `${DETECTION_ENGINE_PREPACKAGED_URL}/_status`, + validate: false, + options: { + tags: ['access:siem'], }, }, - async handler(request: LegacyRequest, headers) { - const { alertsClient } = await getClients(request); + async (context, request, response) => { + const alertsClient = context.alerting.getAlertsClient(); + const siemResponse = buildSiemResponse(response); if (!alertsClient) { - return headers.response().code(404); + return siemResponse.error({ statusCode: 404 }); } try { @@ -63,31 +56,17 @@ export const createGetPrepackagedRulesStatusRoute = ( }; const [validated, errors] = validate(prepackagedRulesStatus, prePackagedRulesStatusSchema); if (errors != null) { - return headers - .response({ - message: errors, - status_code: 500, - }) - .code(500); + return siemResponse.error({ statusCode: 500, body: errors }); } else { - return validated; + return response.ok({ body: validated ?? {} }); } } catch (err) { const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const getPrepackagedRulesStatusRoute = ( - route: LegacyServices['route'], - getClients: GetScopedClients -): void => { - route(createGetPrepackagedRulesStatusRoute(getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/import_rules_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/import_rules_route.test.ts index c8b77e505b5d7a..c2daa5e8f2f9f6 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/import_rules_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/import_rules_route.test.ts @@ -4,35 +4,31 @@ * you may not use this file except in compliance with the Elastic License. */ -import { omit } from 'lodash/fp'; - import { - getSimpleRuleAsMultipartContent, - getSimpleRuleAsMultipartContentNoRuleId, - TEST_BOUNDARY, - UNPARSABLE_LINE, - getSimpleRule, + buildHapiStream, + ruleIdsToNdJsonString, + rulesToNdJsonString, + getSimpleRuleWithId, } from '../__mocks__/utils'; -import { ImportSuccessError } from '../utils'; import { getImportRulesRequest, getImportRulesRequestOverwriteTrue, - getFindResult, + getEmptyFindResult, getResult, getEmptyIndex, getFindResultWithSingleHit, getNonEmptyIndex, } from '../__mocks__/request_responses'; -import { createMockServer, createMockConfig, clientsServiceMock } from '../__mocks__'; +import { createMockConfig, requestContextMock, serverMock, requestMock } from '../__mocks__'; import { importRulesRoute } from './import_rules_route'; import { DEFAULT_SIGNALS_INDEX } from '../../../../../common/constants'; import * as createRulesStreamFromNdJson from '../../rules/create_rules_stream_from_ndjson'; describe('import_rules_route', () => { - let server = createMockServer(); let config = createMockConfig(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let request: ReturnType<typeof requestMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { // jest carries state between mocked implementations when using @@ -41,8 +37,12 @@ describe('import_rules_route', () => { jest.resetAllMocks(); jest.restoreAllMocks(); jest.clearAllMocks(); - server = createMockServer(); - config = createMockConfig(); + + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); + const hapiStream = buildHapiStream(ruleIdsToNdJsonString(['rule-1'])); + request = getImportRulesRequest(hapiStream); + config = () => ({ get: jest.fn(value => { switch (value) { @@ -63,76 +63,57 @@ describe('import_rules_route', () => { }), has: jest.fn(), }); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); - getClients.mockResolvedValue(clients); - clients.clusterClient.callAsCurrentUser.mockResolvedValue(getNonEmptyIndex()); - clients.spacesClient.getSpaceId.mockReturnValue('default'); + clients.clusterClient.callAsCurrentUser.mockResolvedValue(getNonEmptyIndex()); // index exists + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); // no extant rules - importRulesRoute(server.route, config, getClients); + importRulesRoute(server.router, config); }); describe('status codes with actionsClient and alertClient', () => { test('returns 200 when importing a single rule with a valid actionClient and alertClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1']); - const { statusCode } = await server.inject(getImportRulesRequest(requestPayload)); - expect(statusCode).toEqual(200); + const response = await server.inject(request, context); + + expect(response.status).toEqual(200); }); test('returns 404 if alertClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - const { route, inject } = createMockServer(); - importRulesRoute(route, config, getClients); - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1']); - const { statusCode } = await inject(getImportRulesRequest(requestPayload)); - expect(statusCode).toEqual(404); + context.alerting.getAlertsClient = jest.fn(); + const response = await server.inject(request, context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); }); test('returns 404 if actionsClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('actionsClient', clients)); - const { route, inject } = createMockServer(); - importRulesRoute(route, config, getClients); - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1']); - const { statusCode } = await inject(getImportRulesRequest(requestPayload)); - expect(statusCode).toEqual(404); + context.actions.getActionsClient = jest.fn(); + const response = await server.inject(request, context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); }); + }); + describe('unhappy paths', () => { test('returns error if createPromiseFromStreams throws error', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); jest .spyOn(createRulesStreamFromNdJson, 'createRulesStreamFromNdJson') .mockImplementation(() => { throw new Error('Test error'); }); - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1']); - const { payload, statusCode } = await server.inject(getImportRulesRequest(requestPayload)); - expect(JSON.parse(payload).message).toBe('Test error'); - expect(statusCode).toBe(500); + const response = await server.inject(request, context); + expect(response.status).toEqual(500); + expect(response.body).toEqual({ message: 'Test error', status_code: 500 }); }); - }); - describe('validation', () => { - test('returns reported error if index does not exist', async () => { + test('returns an error if the index does not exist', async () => { clients.clusterClient.callAsCurrentUser.mockResolvedValue(getEmptyIndex()); - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1']); - const { statusCode, payload } = await server.inject(getImportRulesRequest(requestPayload)); - const parsed: ImportSuccessError = JSON.parse(payload); - - expect(parsed).toEqual({ + const response = await server.inject(request, context); + expect(response.status).toEqual(200); + expect(response.body).toEqual({ errors: [ { error: { message: - 'To create a rule, the index must exist first. Index .siem-signals-default does not exist', + 'To create a rule, the index must exist first. Index mockSignalsIndex does not exist', status_code: 409, }, rule_id: 'rule-1', @@ -141,29 +122,20 @@ describe('import_rules_route', () => { success: false, success_count: 0, }); - expect(statusCode).toEqual(200); }); - test('returns 400 when a thrown error is caught', async () => { - const mockFn = jest.fn(); - const mockThrowError = (): Error => { - throw new Error(); - }; - clients.clusterClient.callAsCurrentUser.mockResolvedValue( - mockFn.mockImplementation(mockThrowError) - ); - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1']); - const { statusCode, payload } = await server.inject(getImportRulesRequest(requestPayload)); - const parsed: ImportSuccessError = JSON.parse(payload); + test('returns an error when cluster throws error', async () => { + clients.clusterClient.callAsCurrentUser.mockImplementation(async () => { + throw new Error('Test error'); + }); - expect(parsed).toEqual({ + const response = await server.inject(request, context); + expect(response.status).toEqual(200); + expect(response.body).toEqual({ errors: [ { error: { - message: "Cannot read property 'total' of undefined", + message: 'Test error', status_code: 400, }, rule_id: 'rule-1', @@ -172,63 +144,41 @@ describe('import_rules_route', () => { success: false, success_count: 0, }); - expect(statusCode).toEqual(200); }); test('returns 400 if file extension type is not .ndjson', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1'], false); - const { statusCode, payload } = await server.inject(getImportRulesRequest(requestPayload)); - const parsed: ImportSuccessError = JSON.parse(payload); + const requestPayload = buildHapiStream(ruleIdsToNdJsonString(['rule-1']), 'wrong.html'); + const badRequest = getImportRulesRequest(requestPayload); + const response = await server.inject(badRequest, context); - expect(parsed).toEqual({ - message: 'Invalid file extension .json', - status_code: 400, - }); - expect(statusCode).toEqual(400); + expect(response.status).toEqual(400); + expect(response.body).toEqual({ message: 'Invalid file extension .html', status_code: 400 }); }); }); describe('single rule import', () => { test('returns 200 if rule imported successfully', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); clients.alertsClient.create.mockResolvedValue(getResult()); - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1']); - const { statusCode, payload } = await server.inject(getImportRulesRequest(requestPayload)); - const parsed: ImportSuccessError = JSON.parse(payload); - - expect(parsed).toEqual({ + const response = await server.inject(request, context); + expect(response.status).toEqual(200); + expect(response.body).toEqual({ errors: [], success: true, success_count: 1, }); - expect(statusCode).toEqual(200); }); test('returns reported conflict if error parsing rule', async () => { - const multipartPayload = - `--${TEST_BOUNDARY}\r\n` + - `Content-Disposition: form-data; name="file"; filename="rules.ndjson"\r\n` + - 'Content-Type: application/octet-stream\r\n' + - '\r\n' + - `${UNPARSABLE_LINE}\r\n` + - `--${TEST_BOUNDARY}--\r\n`; - - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.create.mockResolvedValue(getResult()); - const requestPayload = Buffer.from(multipartPayload); - const { statusCode, payload } = await server.inject(getImportRulesRequest(requestPayload)); - const parsed: ImportSuccessError = JSON.parse(payload); + const requestPayload = buildHapiStream('this is not a valid ndjson string!'); + const badRequest = getImportRulesRequest(requestPayload); + const response = await server.inject(badRequest, context); - expect(parsed).toEqual({ + expect(response.status).toEqual(200); + expect(response.body).toEqual({ errors: [ { error: { - message: 'Unexpected token : in JSON at position 8', + message: 'Unexpected token h in JSON at position 1', status_code: 400, }, rule_id: '(unknown id)', @@ -237,33 +187,15 @@ describe('import_rules_route', () => { success: false, success_count: 0, }); - expect(statusCode).toEqual(200); }); describe('rule with existing rule_id', () => { test('returns with reported conflict if `overwrite` is set to `false`', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); + clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); // extant rule + const response = await server.inject(request, context); - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1']); - const { statusCode, payload } = await server.inject(getImportRulesRequest(requestPayload)); - const parsed: ImportSuccessError = JSON.parse(payload); - - expect(parsed).toEqual({ - errors: [], - success: true, - success_count: 1, - }); - expect(statusCode).toEqual(200); - - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - - const { statusCode: statusCodeRequest2, payload: payloadRequest2 } = await server.inject( - getImportRulesRequest(requestPayload) - ); - const parsedRequest2: ImportSuccessError = JSON.parse(payloadRequest2); - - expect(parsedRequest2).toEqual({ + expect(response.status).toEqual(200); + expect(response.body).toEqual({ errors: [ { error: { @@ -276,114 +208,79 @@ describe('import_rules_route', () => { success: false, success_count: 0, }); - expect(statusCodeRequest2).toEqual(200); }); test('returns with NO reported conflict if `overwrite` is set to `true`', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1']); - const { statusCode, payload } = await server.inject(getImportRulesRequest(requestPayload)); - const parsed: ImportSuccessError = JSON.parse(payload); - - expect(parsed).toEqual({ - errors: [], - success: true, - success_count: 1, - }); - expect(statusCode).toEqual(200); - - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - - const { statusCode: statusCodeRequest2, payload: payloadRequest2 } = await server.inject( - getImportRulesRequestOverwriteTrue(requestPayload) + clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); // extant rule + const overwriteRequest = getImportRulesRequestOverwriteTrue( + buildHapiStream(ruleIdsToNdJsonString(['rule-1'])) ); - const parsedRequest2: ImportSuccessError = JSON.parse(payloadRequest2); + const response = await server.inject(overwriteRequest, context); - expect(parsedRequest2).toEqual({ + expect(response.status).toEqual(200); + expect(response.body).toEqual({ errors: [], success: true, success_count: 1, }); - expect(statusCodeRequest2).toEqual(200); }); }); }); describe('multi rule import', () => { test('returns 200 if all rules imported successfully', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1', 'rule-2']); - const { statusCode, payload } = await server.inject(getImportRulesRequest(requestPayload)); - const parsed: ImportSuccessError = JSON.parse(payload); + const multiRequest = getImportRulesRequest( + buildHapiStream(ruleIdsToNdJsonString(['rule-1', 'rule-2'])) + ); + const response = await server.inject(multiRequest, context); - expect(parsed).toEqual({ + expect(response.status).toEqual(200); + expect(response.body).toEqual({ errors: [], success: true, success_count: 2, }); - expect(statusCode).toEqual(200); }); test('returns 200 with errors if all rules are missing rule_ids and import fails on validation', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - - const requestPayload = getSimpleRuleAsMultipartContentNoRuleId(2); - const { statusCode, payload } = await server.inject(getImportRulesRequest(requestPayload)); - const parsed: ImportSuccessError = JSON.parse(payload); + const rulesWithoutRuleIds = ['rule-1', 'rule-2'].map(ruleId => getSimpleRuleWithId(ruleId)); + const badPayload = buildHapiStream(rulesToNdJsonString(rulesWithoutRuleIds)); + const badRequest = getImportRulesRequest(badPayload); - expect(parsed.success).toEqual(false); - expect(parsed.errors[0].error.message).toEqual( - 'child "rule_id" fails because ["rule_id" is required]' - ); - expect(parsed.errors[0].error.status_code).toEqual(400); - expect(statusCode).toEqual(200); - }); - - test('returns 200 with reported conflict if error parsing rule', async () => { - const multipartPayload = - `--${TEST_BOUNDARY}\r\n` + - `Content-Disposition: form-data; name="file"; filename="rules.ndjson"\r\n` + - 'Content-Type: application/octet-stream\r\n' + - '\r\n' + - `${UNPARSABLE_LINE}\r\n` + - `${JSON.stringify(getSimpleRule('rule-2'))}\r\n` + - `--${TEST_BOUNDARY}--\r\n`; - - clients.alertsClient.find.mockResolvedValue(getFindResult()); - - const requestPayload = Buffer.from(multipartPayload); - const { statusCode, payload } = await server.inject(getImportRulesRequest(requestPayload)); - const parsed: ImportSuccessError = JSON.parse(payload); + const response = await server.inject(badRequest, context); - expect(parsed).toEqual({ + expect(response.status).toEqual(200); + expect(response.body).toEqual({ errors: [ { error: { - message: 'Unexpected token : in JSON at position 8', + message: 'child "rule_id" fails because ["rule_id" is required]', + status_code: 400, + }, + rule_id: '(unknown id)', + }, + { + error: { + message: 'child "rule_id" fails because ["rule_id" is required]', status_code: 400, }, rule_id: '(unknown id)', }, ], success: false, - success_count: 1, + success_count: 0, }); - expect(statusCode).toEqual(200); }); - describe('rules with matching rule_id', () => { - test('returns with reported conflict if `overwrite` is set to `false`', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1', 'rule-1']); - const { statusCode, payload } = await server.inject(getImportRulesRequest(requestPayload)); - const parsed: ImportSuccessError = JSON.parse(payload); + describe('importing duplicated rule_ids', () => { + test('reports a conflict if `overwrite` is set to `false`', async () => { + const multiRequest = getImportRulesRequest( + buildHapiStream(ruleIdsToNdJsonString(['rule-1', 'rule-1'])) + ); + const response = await server.inject(multiRequest, context); - expect(parsed).toEqual({ + expect(response.status).toEqual(200); + expect(response.body).toEqual({ errors: [ { error: { @@ -396,53 +293,35 @@ describe('import_rules_route', () => { success: false, success_count: 1, }); - expect(statusCode).toEqual(200); }); test('returns with NO reported conflict if `overwrite` is set to `true`', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1', 'rule-1']); - const { statusCode, payload } = await server.inject( - getImportRulesRequestOverwriteTrue(requestPayload) + const multiRequest = getImportRulesRequestOverwriteTrue( + buildHapiStream(ruleIdsToNdJsonString(['rule-1', 'rule-1'])) ); - const parsed: ImportSuccessError = JSON.parse(payload); - expect(parsed).toEqual({ + const response = await server.inject(multiRequest, context); + expect(response.status).toEqual(200); + expect(response.body).toEqual({ errors: [], success: true, success_count: 1, }); - expect(statusCode).toEqual(200); }); }); describe('rules with existing rule_id', () => { - test('returns with reported conflict if `overwrite` is set to `false`', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1']); - const { statusCode, payload } = await server.inject(getImportRulesRequest(requestPayload)); - const parsedResult: ImportSuccessError = JSON.parse(payload); - - expect(parsedResult).toEqual({ - errors: [], - success: true, - success_count: 1, - }); - expect(statusCode).toEqual(200); - - clients.alertsClient.find.mockResolvedValueOnce(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); + beforeEach(() => { + clients.alertsClient.find.mockResolvedValueOnce(getFindResultWithSingleHit()); // extant rule + }); - const requestPayload2 = getSimpleRuleAsMultipartContent(['rule-1', 'rule-2', 'rule-3']); - const { statusCode: statusCodeRequest2, payload: payloadRequest2 } = await server.inject( - getImportRulesRequest(requestPayload2) + test('returns with reported conflict if `overwrite` is set to `false`', async () => { + const multiRequest = getImportRulesRequest( + buildHapiStream(ruleIdsToNdJsonString(['rule-1', 'rule-2', 'rule-3'])) ); - const parsed: ImportSuccessError = JSON.parse(payloadRequest2); - - expect(parsed).toEqual({ + const response = await server.inject(multiRequest, context); + expect(response.status).toEqual(200); + expect(response.body).toEqual({ errors: [ { error: { @@ -455,38 +334,19 @@ describe('import_rules_route', () => { success: false, success_count: 2, }); - expect(statusCodeRequest2).toEqual(200); }); test('returns 200 with NO reported conflict if `overwrite` is set to `true`', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - - const requestPayload = getSimpleRuleAsMultipartContent(['rule-1']); - const { statusCode, payload } = await server.inject(getImportRulesRequest(requestPayload)); - const parsedResult: ImportSuccessError = JSON.parse(payload); - - expect(parsedResult).toEqual({ - errors: [], - success: true, - success_count: 1, - }); - expect(statusCode).toEqual(200); - - clients.alertsClient.find.mockResolvedValueOnce(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - - const requestPayload2 = getSimpleRuleAsMultipartContent(['rule-1', 'rule-2', 'rule-3']); - const { statusCode: statusCodeRequest2, payload: payloadRequest2 } = await server.inject( - getImportRulesRequestOverwriteTrue(requestPayload2) + const multiRequest = getImportRulesRequestOverwriteTrue( + buildHapiStream(ruleIdsToNdJsonString(['rule-1', 'rule-2', 'rule-3'])) ); - const parsed: ImportSuccessError = JSON.parse(payloadRequest2); - - expect(parsed).toEqual({ + const response = await server.inject(multiRequest, context); + expect(response.status).toEqual(200); + expect(response.body).toEqual({ errors: [], success: true, success_count: 3, }); - expect(statusCodeRequest2).toEqual(200); }); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/import_rules_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/import_rules_route.ts index bfe9ade2954dd3..38b409cc1dc5b8 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/import_rules_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/import_rules_route.ts @@ -4,91 +4,81 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; import { chunk } from 'lodash/fp'; import { extname } from 'path'; -import { Readable } from 'stream'; +import { IRouter } from '../../../../../../../../../src/core/server'; import { createPromiseFromStreams } from '../../../../../../../../../src/legacy/utils/streams'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; -import { LegacyServices, LegacyRequest } from '../../../../types'; +import { LegacyServices } from '../../../../types'; import { createRules } from '../../rules/create_rules'; -import { ImportRulesRequest } from '../../rules/types'; +import { ImportRulesRequestParams } from '../../rules/types'; import { readRules } from '../../rules/read_rules'; import { getIndexExists } from '../../index/get_index_exists'; import { - getIndex, + buildRouteValidation, createBulkErrorObject, ImportRuleResponse, BulkError, isBulkError, isImportRegular, transformError, + buildSiemResponse, } from '../utils'; import { createRulesStreamFromNdJson } from '../../rules/create_rules_stream_from_ndjson'; import { ImportRuleAlertRest } from '../../types'; import { patchRules } from '../../rules/patch_rules'; import { importRulesQuerySchema, importRulesPayloadSchema } from '../schemas/import_rules_schema'; +import { ImportRulesSchema, importRulesSchema } from '../schemas/response/import_rules_schema'; import { getTupleDuplicateErrorsAndUniqueRules } from './utils'; import { validate } from './validate'; -import { GetScopedClients } from '../../../../services'; -import { ImportRulesSchema, importRulesSchema } from '../schemas/response/import_rules_schema'; type PromiseFromStreams = ImportRuleAlertRest | Error; const CHUNK_PARSED_OBJECT_SIZE = 10; -export const createImportRulesRoute = ( - config: LegacyServices['config'], - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'POST', - path: `${DETECTION_ENGINE_RULES_URL}/_import`, - options: { - tags: ['access:siem'], - payload: { - maxBytes: config().get('savedObjects.maxImportPayloadBytes'), - output: 'stream', - allow: 'multipart/form-data', - }, +export const importRulesRoute = (router: IRouter, config: LegacyServices['config']) => { + router.post( + { + path: `${DETECTION_ENGINE_RULES_URL}/_import`, validate: { - options: { - abortEarly: false, + query: buildRouteValidation<ImportRulesRequestParams['query']>(importRulesQuerySchema), + body: buildRouteValidation<ImportRulesRequestParams['body']>(importRulesPayloadSchema), + }, + options: { + tags: ['access:siem'], + body: { + maxBytes: config().get('savedObjects.maxImportPayloadBytes'), + output: 'stream', }, - query: importRulesQuerySchema, - payload: importRulesPayloadSchema, }, }, - async handler(request: ImportRulesRequest & LegacyRequest, headers) { - const { - actionsClient, - alertsClient, - clusterClient, - spacesClient, - savedObjectsClient, - } = await getClients(request); + async (context, request, response) => { + const alertsClient = context.alerting.getAlertsClient(); + const actionsClient = context.actions.getActionsClient(); + const clusterClient = context.core.elasticsearch.dataClient; + const savedObjectsClient = context.core.savedObjects.client; + const siemClient = context.siem.getSiemClient(); + const siemResponse = buildSiemResponse(response); if (!actionsClient || !alertsClient) { - return headers.response().code(404); + return siemResponse.error({ statusCode: 404 }); } - const { filename } = request.payload.file.hapi; + const { filename } = request.body.file.hapi; const fileExtension = extname(filename).toLowerCase(); if (fileExtension !== '.ndjson') { - return headers - .response({ - message: `Invalid file extension ${fileExtension}`, - status_code: 400, - }) - .code(400); + return siemResponse.error({ + statusCode: 400, + body: `Invalid file extension ${fileExtension}`, + }); } const objectLimit = config().get<number>('savedObjects.maxImportExportSize'); try { const readStream = createRulesStreamFromNdJson(objectLimit); const parsedObjects = await createPromiseFromStreams<PromiseFromStreams[]>([ - request.payload.file as Readable, + request.body.file, ...readStream, ]); const [duplicateIdErrors, uniqueParsedObjects] = getTupleDuplicateErrorsAndUniqueRules( @@ -145,17 +135,17 @@ export const createImportRulesRoute = ( version, } = parsedRule; try { - const finalIndex = getIndex(spacesClient.getSpaceId, config); + const signalsIndex = siemClient.signalsIndex; const indexExists = await getIndexExists( clusterClient.callAsCurrentUser, - finalIndex + signalsIndex ); if (!indexExists) { resolve( createBulkErrorObject({ ruleId, statusCode: 409, - message: `To create a rule, the index must exist first. Index ${finalIndex} does not exist`, + message: `To create a rule, the index must exist first. Index ${signalsIndex} does not exist`, }) ); } @@ -171,7 +161,7 @@ export const createImportRulesRoute = ( immutable, query, language, - outputIndex: finalIndex, + outputIndex: signalsIndex, savedId, timelineId, timelineTitle, @@ -271,32 +261,17 @@ export const createImportRulesRoute = ( }; const [validated, errors] = validate(importRules, importRulesSchema); if (errors != null) { - return headers - .response({ - message: errors, - status_code: 500, - }) - .code(500); + return siemResponse.error({ statusCode: 500, body: errors }); } else { - return validated; + return response.ok({ body: validated ?? {} }); } - } catch (exc) { - const error = transformError(exc); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + } catch (err) { + const error = transformError(err); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const importRulesRoute = ( - route: LegacyServices['route'], - config: LegacyServices['config'], - getClients: GetScopedClients -): void => { - route(createImportRulesRoute(config, getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_bulk.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_bulk.test.ts deleted file mode 100644 index 1cfb4ae81ab852..00000000000000 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_bulk.test.ts +++ /dev/null @@ -1,174 +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 { ServerInjectOptions } from 'hapi'; -import { patchRulesRoute } from './patch_rules_route'; -import { omit } from 'lodash/fp'; - -import { - getFindResult, - getResult, - updateActionResult, - typicalPayload, - getFindResultWithSingleHit, - getPatchBulkRequest, - getFindResultStatus, -} from '../__mocks__/request_responses'; -import { createMockServer, clientsServiceMock } from '../__mocks__'; -import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; -import { patchRulesBulkRoute } from './patch_rules_bulk_route'; -import { BulkError } from '../utils'; - -describe('patch_rules_bulk', () => { - let server = createMockServer(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); - - beforeEach(() => { - jest.resetAllMocks(); - - server = createMockServer(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); - - getClients.mockResolvedValue(clients); - patchRulesBulkRoute(server.route, getClients); - }); - - describe('status codes with actionClient and alertClient', () => { - test('returns 200 when updating a single rule with a valid actionClient and alertClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { statusCode } = await server.inject(getPatchBulkRequest()); - expect(statusCode).toBe(200); - }); - - test('returns 200 as a response when updating a single rule that does not exist', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - const { statusCode } = await server.inject(getPatchBulkRequest()); - expect(statusCode).toBe(200); - }); - - test('returns 404 as a response when missing alertsClient', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - const { statusCode } = await server.inject(getPatchBulkRequest()); - expect(statusCode).toBe(404); - }); - - test('returns 404 within the payload when updating a single rule that does not exist', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - const { payload } = await server.inject(getPatchBulkRequest()); - const parsed: BulkError[] = JSON.parse(payload); - const expected: BulkError[] = [ - { - error: { message: 'rule_id: "rule-1" not found', status_code: 404 }, - rule_id: 'rule-1', - }, - ]; - expect(parsed).toEqual(expected); - }); - - test('returns 404 if alertClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - const { route, inject } = createMockServer(); - patchRulesRoute(route, getClients); - const { statusCode } = await inject(getPatchBulkRequest()); - expect(statusCode).toBe(404); - }); - }); - - describe('validation', () => { - test('returns 400 if id is not given in either the body or the url', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - const { rule_id, ...noId } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'PATCH', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - payload: [noId], - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); - }); - - test('returns errors as 200 to just indicate ok something happened', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - const request: ServerInjectOptions = { - method: 'PATCH', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - payload: [typicalPayload()], - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toEqual(200); - }); - - test('returns 404 in the payload if the record does not exist yet', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - const request: ServerInjectOptions = { - method: 'PATCH', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - payload: [typicalPayload()], - }; - const { payload } = await server.inject(request); - const parsed: BulkError[] = JSON.parse(payload); - const expected: BulkError[] = [ - { - error: { message: 'rule_id: "rule-1" not found', status_code: 404 }, - rule_id: 'rule-1', - }, - ]; - expect(parsed).toEqual(expected); - }); - - test('returns 200 if type is query', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - const request: ServerInjectOptions = { - method: 'PATCH', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - payload: [typicalPayload()], - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); - }); - - test('returns 400 if type is not filter or kql', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - const { type, ...noType } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'PATCH', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - payload: [ - { - ...noType, - type: 'something-made-up', - }, - ], - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); - }); - }); -}); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_bulk_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_bulk_route.test.ts new file mode 100644 index 00000000000000..1a7294682688a2 --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_bulk_route.test.ts @@ -0,0 +1,96 @@ +/* + * 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 { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; +import { + getEmptyFindResult, + typicalPayload, + getFindResultWithSingleHit, + getPatchBulkRequest, + getResult, +} from '../__mocks__/request_responses'; +import { serverMock, requestContextMock, requestMock } from '../__mocks__'; +import { patchRulesBulkRoute } from './patch_rules_bulk_route'; + +describe('patch_rules_bulk', () => { + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); + + beforeEach(() => { + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); + + clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); // rule exists + clients.alertsClient.update.mockResolvedValue(getResult()); // update succeeds + + patchRulesBulkRoute(server.router); + }); + + describe('status codes with actionClient and alertClient', () => { + test('returns 200 when updating a single rule with a valid actionClient and alertClient', async () => { + const response = await server.inject(getPatchBulkRequest(), context); + expect(response.status).toEqual(200); + }); + + test('returns an error in the response when updating a single rule that does not exist', async () => { + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); + const response = await server.inject(getPatchBulkRequest(), context); + expect(response.status).toEqual(200); + expect(response.body).toEqual([ + { + error: { message: 'rule_id: "rule-1" not found', status_code: 404 }, + rule_id: 'rule-1', + }, + ]); + }); + + test('returns 404 if alertClient is not available on the route', async () => { + context.alerting.getAlertsClient = jest.fn(); + const response = await server.inject(getPatchBulkRequest(), context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); + }); + }); + + describe('request validation', () => { + test('rejects payloads with no ID', async () => { + const request = requestMock.create({ + method: 'patch', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, + body: [{ ...typicalPayload(), rule_id: undefined }], + }); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith( + '"value" at position 0 fails because ["value" must contain at least one of [id, rule_id]]' + ); + }); + + test('allows query rule type', async () => { + const request = requestMock.create({ + method: 'patch', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, + body: [{ ...typicalPayload(), type: 'query' }], + }); + const result = server.validate(request); + + expect(result.ok).toHaveBeenCalled(); + }); + + test('rejects unknown rule type', async () => { + const request = requestMock.create({ + method: 'patch', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, + body: [{ ...typicalPayload(), type: 'unknown_type' }], + }); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith( + '"value" at position 0 fails because [child "type" fails because ["type" must be one of [query, saved_query]]]' + ); + }); + }); +}); 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 d616b90e6eee0c..40250aaa5d532a 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 @@ -4,45 +4,43 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; - +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; import { - BulkPatchRulesRequest, IRuleSavedAttributesSavedObjectAttributes, + PatchRuleAlertParamsRest, } from '../../rules/types'; -import { LegacyServices } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; +import { transformBulkError, buildRouteValidation, buildSiemResponse } from '../utils'; import { getIdBulkError } from './utils'; import { transformValidateBulkError, validate } from './validate'; -import { transformBulkError } from '../utils'; import { patchRulesBulkSchema } from '../schemas/patch_rules_bulk_schema'; +import { rulesBulkSchema } from '../schemas/response/rules_bulk_schema'; import { patchRules } from '../../rules/patch_rules'; import { ruleStatusSavedObjectType } from '../../rules/saved_object_mappings'; -import { rulesBulkSchema } from '../schemas/response/rules_bulk_schema'; -export const createPatchRulesBulkRoute = (getClients: GetScopedClients): Hapi.ServerRoute => { - return { - method: 'PATCH', - path: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - options: { - tags: ['access:siem'], +export const patchRulesBulkRoute = (router: IRouter) => { + router.patch( + { + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, validate: { - options: { - abortEarly: false, - }, - payload: patchRulesBulkSchema, + body: buildRouteValidation<PatchRuleAlertParamsRest[]>(patchRulesBulkSchema), + }, + options: { + tags: ['access:siem'], }, }, - async handler(request: BulkPatchRulesRequest, headers) { - const { actionsClient, alertsClient, savedObjectsClient } = await getClients(request); + async (context, request, response) => { + const alertsClient = context.alerting.getAlertsClient(); + const actionsClient = context.actions.getActionsClient(); + const savedObjectsClient = context.core.savedObjects.client; + const siemResponse = buildSiemResponse(response); if (!actionsClient || !alertsClient) { - return headers.response().code(404); + return siemResponse.error({ statusCode: 404 }); } const rules = await Promise.all( - request.payload.map(async payloadRule => { + request.body.map(async payloadRule => { const { description, enabled, @@ -124,24 +122,13 @@ export const createPatchRulesBulkRoute = (getClients: GetScopedClients): Hapi.Se } }) ); + const [validated, errors] = validate(rules, rulesBulkSchema); if (errors != null) { - return headers - .response({ - message: errors, - status_code: 500, - }) - .code(500); + return siemResponse.error({ statusCode: 500, body: errors }); } else { - return validated; + return response.ok({ body: validated ?? {} }); } - }, - }; -}; - -export const patchRulesBulkRoute = ( - route: LegacyServices['route'], - getClients: GetScopedClients -): void => { - route(createPatchRulesBulkRoute(getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_route.test.ts index b95ffce14ea043..712adb460d6f28 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/patch_rules_route.test.ts @@ -4,164 +4,116 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ServerInjectOptions } from 'hapi'; -import { omit } from 'lodash/fp'; -import { patchRulesRoute } from './patch_rules_route'; -import * as utils from './utils'; -import * as patchRules from '../../rules/patch_rules'; - +import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; import { - getFindResult, + getEmptyFindResult, getFindResultStatus, getResult, - updateActionResult, getPatchRequest, typicalPayload, getFindResultWithSingleHit, + nonRuleFindResult, } from '../__mocks__/request_responses'; -import { createMockServer, clientsServiceMock } from '../__mocks__'; -import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; +import { requestContextMock, serverMock, requestMock } from '../__mocks__'; +import { patchRulesRoute } from './patch_rules_route'; describe('patch_rules', () => { - let server = createMockServer(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - // jest carries state between mocked implementations when using - // spyOn. So now we're doing all three of these. - // https://github.com/facebook/jest/issues/7136#issuecomment-565976599 - jest.resetAllMocks(); - jest.restoreAllMocks(); - jest.clearAllMocks(); - - server = createMockServer(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); - - getClients.mockResolvedValue(clients); - patchRulesRoute(server.route, getClients); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); + + clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); // existing rule + clients.alertsClient.update.mockResolvedValue(getResult()); // successful update + clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); // successful transform + + patchRulesRoute(server.router); }); describe('status codes with actionClient and alertClient', () => { test('returns 200 when updating a single rule with a valid actionClient and alertClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { statusCode } = await server.inject(getPatchRequest()); - expect(statusCode).toBe(200); + const response = await server.inject(getPatchRequest(), context); + expect(response.status).toEqual(200); }); test('returns 404 when updating a single rule that does not exist', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { statusCode } = await server.inject(getPatchRequest()); - expect(statusCode).toBe(404); + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); + const response = await server.inject(getPatchRequest(), context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ + message: 'rule_id: "rule-1" not found', + status_code: 404, + }); }); test('returns 404 if alertClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - const { route, inject } = createMockServer(); - patchRulesRoute(route, getClients); - const { statusCode } = await inject(getPatchRequest()); - expect(statusCode).toBe(404); + context.alerting.getAlertsClient = jest.fn(); + const response = await server.inject(getPatchRequest(), context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); }); - test('returns 500 when transform fails', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - jest.spyOn(utils, 'transform').mockReturnValue(null); - const { payload, statusCode } = await server.inject(getPatchRequest()); - expect(JSON.parse(payload).message).toBe('Internal error transforming'); - expect(statusCode).toBe(500); + test('returns error if requesting a non-rule', async () => { + clients.alertsClient.find.mockResolvedValue(nonRuleFindResult()); + const response = await server.inject(getPatchRequest(), context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ + message: expect.stringContaining('not found'), + status_code: 404, + }); }); - test('catches error if patchRules throws error', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - jest.spyOn(patchRules, 'patchRules').mockImplementation(async () => { + test('catches error if update throws error', async () => { + clients.alertsClient.update.mockImplementation(async () => { throw new Error('Test error'); }); - const { payload, statusCode } = await server.inject(getPatchRequest()); - expect(JSON.parse(payload).message).toBe('Test error'); - expect(statusCode).toBe(500); + const response = await server.inject(getPatchRequest(), context); + expect(response.status).toEqual(500); + expect(response.body).toEqual({ + message: 'Test error', + status_code: 500, + }); }); }); - describe('validation', () => { - test('returns 400 if id is not given in either the body or the url', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { rule_id, ...noId } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'PATCH', - url: DETECTION_ENGINE_RULES_URL, - payload: { - payload: noId, - }, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); - }); + describe('request validation', () => { + test('rejects payloads with no ID', async () => { + const request = requestMock.create({ + method: 'patch', + path: DETECTION_ENGINE_RULES_URL, + body: { ...typicalPayload(), rule_id: undefined }, + }); + const result = server.validate(request); - test('returns 404 if the record does not exist yet', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const request: ServerInjectOptions = { - method: 'PATCH', - url: DETECTION_ENGINE_RULES_URL, - payload: typicalPayload(), - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(404); + expect(result.badRequest).toHaveBeenCalledWith( + '"value" must contain at least one of [id, rule_id]' + ); }); - test('returns 200 if type is query', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const request: ServerInjectOptions = { - method: 'PATCH', - url: DETECTION_ENGINE_RULES_URL, - payload: typicalPayload(), - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); + test('allows query rule type', async () => { + const request = requestMock.create({ + method: 'patch', + path: DETECTION_ENGINE_RULES_URL, + body: { ...typicalPayload(), type: 'query' }, + }); + const result = server.validate(request); + + expect(result.ok).toHaveBeenCalled(); }); - test('returns 400 if type is not filter or kql', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { type, ...noType } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'PATCH', - url: DETECTION_ENGINE_RULES_URL, - payload: { - ...noType, - type: 'something-made-up', - }, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); + test('rejects unknown rule type', async () => { + const request = requestMock.create({ + method: 'patch', + path: DETECTION_ENGINE_RULES_URL, + body: { ...typicalPayload(), type: 'unknown_type' }, + }); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith( + 'child "type" fails because ["type" must be one of [query, saved_query]]' + ); }); }); }); 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 42aeccbd50659d..951a5c5abdb339 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 @@ -4,34 +4,31 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; - +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; import { patchRules } from '../../rules/patch_rules'; -import { PatchRulesRequest, IRuleSavedAttributesSavedObjectAttributes } from '../../rules/types'; +import { + PatchRuleAlertParamsRest, + IRuleSavedAttributesSavedObjectAttributes, +} from '../../rules/types'; import { patchRulesSchema } from '../schemas/patch_rules_schema'; -import { LegacyServices } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; +import { buildRouteValidation, transformError, buildSiemResponse } from '../utils'; import { getIdError } from './utils'; import { transformValidate } from './validate'; - -import { transformError } from '../utils'; import { ruleStatusSavedObjectType } from '../../rules/saved_object_mappings'; -export const createPatchRulesRoute = (getClients: GetScopedClients): Hapi.ServerRoute => { - return { - method: 'PATCH', - path: DETECTION_ENGINE_RULES_URL, - options: { - tags: ['access:siem'], +export const patchRulesRoute = (router: IRouter) => { + router.patch( + { + path: DETECTION_ENGINE_RULES_URL, validate: { - options: { - abortEarly: false, - }, - payload: patchRulesSchema, + body: buildRouteValidation<PatchRuleAlertParamsRest>(patchRulesSchema), + }, + options: { + tags: ['access:siem'], }, }, - async handler(request: PatchRulesRequest, headers) { + async (context, request, response) => { const { description, enabled, @@ -59,13 +56,16 @@ export const createPatchRulesRoute = (getClients: GetScopedClients): Hapi.Server threat, references, version, - } = request.payload; + } = request.body; + const siemResponse = buildSiemResponse(response); try { - const { alertsClient, actionsClient, savedObjectsClient } = await getClients(request); + const alertsClient = context.alerting.getAlertsClient(); + const actionsClient = context.actions.getActionsClient(); + const savedObjectsClient = context.core.savedObjects.client; if (!actionsClient || !alertsClient) { - return headers.response().code(404); + return siemResponse.error({ statusCode: 404 }); } const rule = await patchRules({ @@ -110,39 +110,27 @@ export const createPatchRulesRoute = (getClients: GetScopedClients): Hapi.Server search: rule.id, searchFields: ['alertId'], }); + const [validated, errors] = transformValidate(rule, ruleStatuses.saved_objects[0]); if (errors != null) { - return headers - .response({ - message: errors, - status_code: 500, - }) - .code(500); + return siemResponse.error({ statusCode: 500, body: errors }); } else { - return validated; + return response.ok({ body: validated ?? {} }); } } else { const error = getIdError({ id, ruleId }); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } } catch (err) { const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const patchRulesRoute = (route: LegacyServices['route'], getClients: GetScopedClients) => { - route(createPatchRulesRoute(getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/read_rules_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/read_rules_route.test.ts index e3659f60b8b4aa..a6e84c45f17b43 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/read_rules_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/read_rules_route.test.ts @@ -4,105 +4,79 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ServerInjectOptions } from 'hapi'; -import { omit } from 'lodash/fp'; - -import * as utils from './utils'; -import * as readRules from '../../rules/read_rules'; - import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; import { readRulesRoute } from './read_rules_route'; import { - getFindResult, - getResult, + getEmptyFindResult, getReadRequest, getFindResultWithSingleHit, - getFindResultStatus, + nonRuleFindResult, + getFindResultStatusEmpty, } from '../__mocks__/request_responses'; -import { createMockServer, clientsServiceMock } from '../__mocks__'; +import { requestMock, requestContextMock, serverMock } from '../__mocks__'; describe('read_signals', () => { - let server = createMockServer(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - // jest carries state between mocked implementations when using - // spyOn. So now we're doing all three of these. - // https://github.com/facebook/jest/issues/7136#issuecomment-565976599 - jest.resetAllMocks(); - jest.restoreAllMocks(); - jest.clearAllMocks(); - server = createMockServer(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); + + clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); // rule exists + clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatusEmpty()); // successful transform - getClients.mockResolvedValue(clients); - readRulesRoute(server.route, getClients); + readRulesRoute(server.router); }); describe('status codes with actionClient and alertClient', () => { test('returns 200 when reading a single rule with a valid actionClient and alertClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { statusCode } = await server.inject(getReadRequest()); - expect(statusCode).toBe(200); + const response = await server.inject(getReadRequest(), context); + expect(response.status).toEqual(200); }); test('returns 404 if alertClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - const { route, inject } = createMockServer(); - readRulesRoute(route, getClients); - const { statusCode } = await inject(getReadRequest()); - expect(statusCode).toBe(404); - }); - - test('returns error if readRules returns null', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - jest.spyOn(readRules, 'readRules').mockResolvedValue(null); - const { payload, statusCode } = await server.inject(getReadRequest()); - expect(JSON.parse(payload).message).toBe('rule_id: "rule-1" not found'); - expect(statusCode).toBe(404); + context.alerting.getAlertsClient = jest.fn(); + const response = await server.inject(getReadRequest(), context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); }); - test('returns 500 when transform fails', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - jest.spyOn(utils, 'transform').mockReturnValue(null); - const { payload, statusCode } = await server.inject(getReadRequest()); - expect(JSON.parse(payload).message).toBe('Internal error transforming'); - expect(statusCode).toBe(500); + test('returns error if requesting a non-rule', async () => { + clients.alertsClient.find.mockResolvedValue(nonRuleFindResult()); + const response = await server.inject(getReadRequest(), context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ + message: 'rule_id: "rule-1" not found', + status_code: 404, + }); }); - test('catches error if readRules throws error', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - jest.spyOn(readRules, 'readRules').mockImplementation(async () => { + test('catches error if search throws error', async () => { + clients.alertsClient.find.mockImplementation(async () => { throw new Error('Test error'); }); - const { payload, statusCode } = await server.inject(getReadRequest()); - expect(JSON.parse(payload).message).toBe('Test error'); - expect(statusCode).toBe(500); + const response = await server.inject(getReadRequest(), context); + expect(response.status).toEqual(500); + expect(response.body).toEqual({ + message: 'Test error', + status_code: 500, + }); }); }); - describe('validation', () => { - test('returns 400 if given a non-existent id', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.alertsClient.delete.mockResolvedValue({}); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const request: ServerInjectOptions = { - method: 'GET', - url: DETECTION_ENGINE_RULES_URL, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); + describe('data validation', () => { + test('returns 404 if given a non-existent id', async () => { + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); + const request = requestMock.create({ + method: 'get', + path: DETECTION_ENGINE_RULES_URL, + query: { rule_id: 'DNE_RULE' }, + }); + const response = await server.inject(request, context); + + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'rule_id: "DNE_RULE" not found', status_code: 404 }); }); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/read_rules_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/read_rules_route.ts index c06e7233e7e82e..584beffa7abb1d 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/read_rules_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/read_rules_route.ts @@ -4,88 +4,77 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; import { getIdError } from './utils'; import { transformValidate } from './validate'; -import { transformError } from '../utils'; - +import { buildRouteValidation, transformError, buildSiemResponse } from '../utils'; import { readRules } from '../../rules/read_rules'; -import { LegacyServices, LegacyRequest } from '../../../../types'; import { queryRulesSchema } from '../schemas/query_rules_schema'; -import { QueryRequest, IRuleSavedAttributesSavedObjectAttributes } from '../../rules/types'; +import { + ReadRuleRequestParams, + IRuleSavedAttributesSavedObjectAttributes, +} from '../../rules/types'; import { ruleStatusSavedObjectType } from '../../rules/saved_object_mappings'; -import { GetScopedClients } from '../../../../services'; -export const createReadRulesRoute = (getClients: GetScopedClients): Hapi.ServerRoute => ({ - method: 'GET', - path: DETECTION_ENGINE_RULES_URL, - options: { - tags: ['access:siem'], - validate: { +export const readRulesRoute = (router: IRouter) => { + router.get( + { + path: DETECTION_ENGINE_RULES_URL, + validate: { + query: buildRouteValidation<ReadRuleRequestParams>(queryRulesSchema), + }, options: { - abortEarly: false, + tags: ['access:siem'], }, - query: queryRulesSchema, }, - }, - async handler(request: QueryRequest & LegacyRequest, headers) { - const { id, rule_id: ruleId } = request.query; + async (context, request, response) => { + const { id, rule_id: ruleId } = request.query; + const alertsClient = context.alerting.getAlertsClient(); + const savedObjectsClient = context.core.savedObjects.client; + const siemResponse = buildSiemResponse(response); - try { - const { alertsClient, savedObjectsClient } = await getClients(request); - if (!alertsClient) { - return headers.response().code(404); - } + try { + if (!alertsClient) { + return siemResponse.error({ statusCode: 404 }); + } - const rule = await readRules({ - alertsClient, - id, - ruleId, - }); - if (rule != null) { - const ruleStatuses = await savedObjectsClient.find< - IRuleSavedAttributesSavedObjectAttributes - >({ - type: ruleStatusSavedObjectType, - perPage: 1, - sortField: 'statusDate', - sortOrder: 'desc', - search: rule.id, - searchFields: ['alertId'], + const rule = await readRules({ + alertsClient, + id, + ruleId, }); - const [validated, errors] = transformValidate(rule, ruleStatuses.saved_objects[0]); - if (errors != null) { - return headers - .response({ - message: errors, - status_code: 500, - }) - .code(500); + if (rule != null) { + const ruleStatuses = await savedObjectsClient.find< + IRuleSavedAttributesSavedObjectAttributes + >({ + type: ruleStatusSavedObjectType, + perPage: 1, + sortField: 'statusDate', + sortOrder: 'desc', + search: rule.id, + searchFields: ['alertId'], + }); + const [validated, errors] = transformValidate(rule, ruleStatuses.saved_objects[0]); + if (errors != null) { + return siemResponse.error({ statusCode: 500, body: errors }); + } else { + return response.ok({ body: validated ?? {} }); + } } else { - return validated; + const error = getIdError({ id, ruleId }); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - } else { - const error = getIdError({ id, ruleId }); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + } catch (err) { + const error = transformError(err); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - } catch (err) { - const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); } - }, -}); - -export const readRulesRoute = (route: LegacyServices['route'], getClients: GetScopedClients) => { - route(createReadRulesRoute(getClients)); + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_bulk.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_bulk.test.ts deleted file mode 100644 index 32a633799ad441..00000000000000 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_bulk.test.ts +++ /dev/null @@ -1,166 +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 { ServerInjectOptions } from 'hapi'; -import { omit } from 'lodash/fp'; - -import { updateRulesRoute } from './update_rules_route'; -import { - getFindResult, - getResult, - updateActionResult, - typicalPayload, - getFindResultWithSingleHit, - getUpdateBulkRequest, -} from '../__mocks__/request_responses'; -import { createMockServer, createMockConfig, clientsServiceMock } from '../__mocks__'; -import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; -import { updateRulesBulkRoute } from './update_rules_bulk_route'; -import { BulkError } from '../utils'; - -describe('update_rules_bulk', () => { - let server = createMockServer(); - let config = createMockConfig(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); - - beforeEach(() => { - jest.resetAllMocks(); - server = createMockServer(); - config = createMockConfig(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); - - getClients.mockResolvedValue(clients); - updateRulesBulkRoute(server.route, config, getClients); - }); - - describe('status codes with actionClient and alertClient', () => { - test('returns 200 when updating a single rule with a valid actionClient and alertClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - const { statusCode } = await server.inject(getUpdateBulkRequest()); - expect(statusCode).toBe(200); - }); - - test('returns 200 as a response when updating a single rule that does not exist', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - const { statusCode } = await server.inject(getUpdateBulkRequest()); - expect(statusCode).toBe(200); - }); - - test('returns 404 within the payload when updating a single rule that does not exist', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - const { payload } = await server.inject(getUpdateBulkRequest()); - const parsed: BulkError[] = JSON.parse(payload); - const expected: BulkError[] = [ - { - error: { message: 'rule_id: "rule-1" not found', status_code: 404 }, - rule_id: 'rule-1', - }, - ]; - expect(parsed).toEqual(expected); - }); - - test('returns 404 if alertClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - const { route } = createMockServer(); - updateRulesRoute(route, config, getClients); - const { statusCode } = await server.inject(getUpdateBulkRequest()); - expect(statusCode).toBe(404); - }); - }); - - describe('validation', () => { - test('returns 400 if id is not given in either the body or the url', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - const { rule_id, ...noId } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'PUT', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - payload: [noId], - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); - }); - - test('returns errors as 200 to just indicate ok something happened', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - const request: ServerInjectOptions = { - method: 'PUT', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - payload: [typicalPayload()], - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toEqual(200); - }); - - test('returns 404 in the payload if the record does not exist yet', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - const request: ServerInjectOptions = { - method: 'PUT', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - payload: [typicalPayload()], - }; - const { payload } = await server.inject(request); - const parsed: BulkError[] = JSON.parse(payload); - const expected: BulkError[] = [ - { - error: { message: 'rule_id: "rule-1" not found', status_code: 404 }, - rule_id: 'rule-1', - }, - ]; - expect(parsed).toEqual(expected); - }); - - test('returns 200 if type is query', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - const request: ServerInjectOptions = { - method: 'PUT', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - payload: [typicalPayload()], - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); - }); - - test('returns 400 if type is not filter or kql', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - const { type, ...noType } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'PUT', - url: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - payload: [ - { - ...noType, - type: 'something-made-up', - }, - ], - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); - }); - }); -}); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_bulk_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_bulk_route.test.ts new file mode 100644 index 00000000000000..438b80302fae49 --- /dev/null +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_bulk_route.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 { + getEmptyFindResult, + getResult, + typicalPayload, + getFindResultWithSingleHit, + getUpdateBulkRequest, + getFindResultStatus, +} from '../__mocks__/request_responses'; +import { serverMock, requestContextMock, requestMock } from '../__mocks__'; +import { updateRulesBulkRoute } from './update_rules_bulk_route'; +import { BulkError } from '../utils'; +import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; + +describe('update_rules_bulk', () => { + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); + + beforeEach(() => { + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); + + clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); + clients.alertsClient.update.mockResolvedValue(getResult()); + clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); + + updateRulesBulkRoute(server.router); + }); + + describe('status codes with actionClient and alertClient', () => { + test('returns 200 when updating a single rule with a valid actionClient and alertClient', async () => { + const response = await server.inject(getUpdateBulkRequest(), context); + expect(response.status).toEqual(200); + }); + + test('returns 200 as a response when updating a single rule that does not exist', async () => { + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); + const expected: BulkError[] = [ + { + error: { message: 'rule_id: "rule-1" not found', status_code: 404 }, + rule_id: 'rule-1', + }, + ]; + const response = await server.inject(getUpdateBulkRequest(), context); + + expect(response.status).toEqual(200); + expect(response.body).toEqual(expected); + }); + + test('returns 404 if alertClient is not available on the route', async () => { + context.alerting.getAlertsClient = jest.fn(); + const response = await server.inject(getUpdateBulkRequest(), context); + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); + }); + + test('returns an error if update throws', async () => { + clients.alertsClient.update.mockImplementation(() => { + throw new Error('Test error'); + }); + + const expected: BulkError[] = [ + { + error: { message: 'Test error', status_code: 500 }, + rule_id: 'rule-1', + }, + ]; + const response = await server.inject(getUpdateBulkRequest(), context); + expect(response.status).toEqual(200); + expect(response.body).toEqual(expected); + }); + }); + + describe('request validation', () => { + test('rejects payloads with no ID', async () => { + const request = requestMock.create({ + method: 'put', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, + body: [{ ...typicalPayload(), rule_id: undefined }], + }); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith( + '"value" at position 0 fails because ["value" must contain at least one of [id, rule_id]]' + ); + }); + + test('allows query rule type', async () => { + const request = requestMock.create({ + method: 'put', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, + body: [{ ...typicalPayload(), type: 'query' }], + }); + const result = server.validate(request); + + expect(result.ok).toHaveBeenCalled(); + }); + + test('rejects unknown rule type', async () => { + const request = requestMock.create({ + method: 'put', + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, + body: [{ ...typicalPayload(), type: 'unknown_type' }], + }); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith( + '"value" at position 0 fails because [child "type" fails because ["type" must be one of [query, saved_query]]]' + ); + }); + }); +}); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_bulk_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_bulk_route.ts index 00a5b06735a32b..4607af524139d6 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_bulk_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_bulk_route.ts @@ -4,51 +4,44 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; - +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; import { - BulkUpdateRulesRequest, IRuleSavedAttributesSavedObjectAttributes, + UpdateRuleAlertParamsRest, } from '../../rules/types'; -import { LegacyServices } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; import { getIdBulkError } from './utils'; import { transformValidateBulkError, validate } from './validate'; - -import { transformBulkError, getIndex } from '../utils'; +import { buildRouteValidation, transformBulkError, buildSiemResponse } from '../utils'; import { updateRulesBulkSchema } from '../schemas/update_rules_bulk_schema'; import { ruleStatusSavedObjectType } from '../../rules/saved_object_mappings'; import { updateRules } from '../../rules/update_rules'; import { rulesBulkSchema } from '../schemas/response/rules_bulk_schema'; -export const createUpdateRulesBulkRoute = ( - config: LegacyServices['config'], - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'PUT', - path: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, - options: { - tags: ['access:siem'], +export const updateRulesBulkRoute = (router: IRouter) => { + router.put( + { + path: `${DETECTION_ENGINE_RULES_URL}/_bulk_update`, validate: { - options: { - abortEarly: false, - }, - payload: updateRulesBulkSchema, + body: buildRouteValidation<UpdateRuleAlertParamsRest[]>(updateRulesBulkSchema), + }, + options: { + tags: ['access:siem'], }, }, - async handler(request: BulkUpdateRulesRequest, headers) { - const { actionsClient, alertsClient, savedObjectsClient, spacesClient } = await getClients( - request - ); + async (context, request, response) => { + const alertsClient = context.alerting.getAlertsClient(); + const actionsClient = context.actions.getActionsClient(); + const savedObjectsClient = context.core.savedObjects.client; + const siemClient = context.siem.getSiemClient(); + const siemResponse = buildSiemResponse(response); if (!actionsClient || !alertsClient) { - return headers.response().code(404); + return siemResponse.error({ statusCode: 404 }); } const rules = await Promise.all( - request.payload.map(async payloadRule => { + request.body.map(async payloadRule => { const { description, enabled, @@ -77,7 +70,7 @@ export const createUpdateRulesBulkRoute = ( references, version, } = payloadRule; - const finalIndex = outputIndex ?? getIndex(spacesClient.getSpaceId, config); + const finalIndex = outputIndex ?? siemClient.signalsIndex; const idOrRuleIdOrUnknown = id ?? ruleId ?? '(unknown id)'; try { const rule = await updateRules({ @@ -132,25 +125,13 @@ export const createUpdateRulesBulkRoute = ( } }) ); + const [validated, errors] = validate(rules, rulesBulkSchema); if (errors != null) { - return headers - .response({ - message: errors, - status_code: 500, - }) - .code(500); + return siemResponse.error({ statusCode: 500, body: errors }); } else { - return validated; + return response.ok({ body: validated ?? {} }); } - }, - }; -}; - -export const updateRulesBulkRoute = ( - route: LegacyServices['route'], - config: LegacyServices['config'], - getClients: GetScopedClients -): void => { - route(createUpdateRulesBulkRoute(config, getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_route.test.ts index 8a44bfe20f17e9..ccdfacd7c3d5be 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_route.test.ts @@ -4,163 +4,119 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ServerInjectOptions } from 'hapi'; -import { omit } from 'lodash/fp'; - -import * as utils from './utils'; -import * as updateRules from '../../rules/update_rules'; - import { updateRulesRoute } from './update_rules_route'; import { - getFindResult, - getFindResultStatus, + getEmptyFindResult, getResult, - updateActionResult, getUpdateRequest, typicalPayload, getFindResultWithSingleHit, + getFindResultStatusEmpty, + nonRuleFindResult, } from '../__mocks__/request_responses'; -import { createMockServer, createMockConfig, clientsServiceMock } from '../__mocks__'; +import { requestContextMock, serverMock, requestMock } from '../__mocks__'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; describe('update_rules', () => { - let server = createMockServer(); - let config = createMockConfig(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - // jest carries state between mocked implementations when using - // spyOn. So now we're doing all three of these. - // https://github.com/facebook/jest/issues/7136#issuecomment-565976599 - jest.resetAllMocks(); - jest.restoreAllMocks(); - jest.clearAllMocks(); - - server = createMockServer(); - config = createMockConfig(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); - - getClients.mockResolvedValue(clients); - updateRulesRoute(server.route, config, getClients); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); + + clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); // rule exists + clients.alertsClient.update.mockResolvedValue(getResult()); // successful update + clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatusEmpty()); // successful transform + + updateRulesRoute(server.router); }); describe('status codes with actionClient and alertClient', () => { test('returns 200 when updating a single rule with a valid actionClient and alertClient', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { statusCode } = await server.inject(getUpdateRequest()); - expect(statusCode).toBe(200); + const response = await server.inject(getUpdateRequest(), context); + expect(response.status).toEqual(200); }); test('returns 404 when updating a single rule that does not exist', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { statusCode } = await server.inject(getUpdateRequest()); - expect(statusCode).toBe(404); + clients.alertsClient.find.mockResolvedValue(getEmptyFindResult()); + const response = await server.inject(getUpdateRequest(), context); + + expect(response.status).toEqual(404); + expect(response.body).toEqual({ + message: 'rule_id: "rule-1" not found', + status_code: 404, + }); }); test('returns 404 if alertClient is not available on the route', async () => { - getClients.mockResolvedValue(omit('alertsClient', clients)); - const { route, inject } = createMockServer(); - updateRulesRoute(route, config, getClients); - const { statusCode } = await inject(getUpdateRequest()); - expect(statusCode).toBe(404); + context.alerting.getAlertsClient = jest.fn(); + const response = await server.inject(getUpdateRequest(), context); + + expect(response.status).toEqual(404); + expect(response.body).toEqual({ message: 'Not Found', status_code: 404 }); }); - test('returns 500 when transform fails', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - jest.spyOn(utils, 'transform').mockReturnValue(null); - const { payload, statusCode } = await server.inject(getUpdateRequest()); - expect(JSON.parse(payload).message).toBe('Internal error transforming'); - expect(statusCode).toBe(500); + test('returns error when updating non-rule', async () => { + clients.alertsClient.find.mockResolvedValue(nonRuleFindResult()); + const response = await server.inject(getUpdateRequest(), context); + + expect(response.status).toEqual(404); + expect(response.body).toEqual({ + message: 'rule_id: "rule-1" not found', + status_code: 404, + }); }); - test('catches error if readRules throws error', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - jest.spyOn(updateRules, 'updateRules').mockImplementation(async () => { + test('catches error if search throws error', async () => { + clients.alertsClient.find.mockImplementation(async () => { throw new Error('Test error'); }); - const { payload, statusCode } = await server.inject(getUpdateRequest()); - expect(JSON.parse(payload).message).toBe('Test error'); - expect(statusCode).toBe(500); + const response = await server.inject(getUpdateRequest(), context); + expect(response.status).toEqual(500); + expect(response.body).toEqual({ + message: 'Test error', + status_code: 500, + }); }); }); - describe('validation', () => { - test('returns 400 if id is not given in either the body or the url', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { rule_id, ...noId } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'PUT', - url: DETECTION_ENGINE_RULES_URL, - payload: { - payload: noId, - }, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); - }); + describe('request validation', () => { + test('rejects payloads with no ID', async () => { + const noIdRequest = requestMock.create({ + method: 'put', + path: DETECTION_ENGINE_RULES_URL, + body: { ...typicalPayload(), rule_id: undefined }, + }); + const result = await server.validate(noIdRequest); - test('returns 404 if the record does not exist yet', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const request: ServerInjectOptions = { - method: 'PUT', - url: DETECTION_ENGINE_RULES_URL, - payload: typicalPayload(), - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(404); + expect(result.badRequest).toHaveBeenCalledWith( + '"value" must contain at least one of [id, rule_id]' + ); }); - test('returns 200 if type is query', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const request: ServerInjectOptions = { - method: 'PUT', - url: DETECTION_ENGINE_RULES_URL, - payload: typicalPayload(), - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); + test('allows query rule type', async () => { + const request = requestMock.create({ + method: 'put', + path: DETECTION_ENGINE_RULES_URL, + body: { ...typicalPayload(), type: 'query' }, + }); + const result = await server.validate(request); + + expect(result.ok).toHaveBeenCalled(); }); - test('returns 400 if type is not filter or kql', async () => { - clients.alertsClient.find.mockResolvedValue(getFindResultWithSingleHit()); - clients.alertsClient.get.mockResolvedValue(getResult()); - clients.actionsClient.update.mockResolvedValue(updateActionResult()); - clients.alertsClient.update.mockResolvedValue(getResult()); - clients.savedObjectsClient.find.mockResolvedValue(getFindResultStatus()); - const { type, ...noType } = typicalPayload(); - const request: ServerInjectOptions = { - method: 'PUT', - url: DETECTION_ENGINE_RULES_URL, - payload: { - ...noType, - type: 'something-made-up', - }, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); + test('rejects unknown rule type', async () => { + const request = requestMock.create({ + method: 'put', + path: DETECTION_ENGINE_RULES_URL, + body: { ...typicalPayload(), type: 'unknown type' }, + }); + const result = await server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith( + 'child "type" fails because ["type" must be one of [query, saved_query]]' + ); }); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_route.ts index 91a57b5004fdf6..b5825a19f47626 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/rules/update_rules_route.ts @@ -4,36 +4,31 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_RULES_URL } from '../../../../../common/constants'; -import { UpdateRulesRequest, IRuleSavedAttributesSavedObjectAttributes } from '../../rules/types'; +import { + UpdateRuleAlertParamsRest, + IRuleSavedAttributesSavedObjectAttributes, +} from '../../rules/types'; import { updateRulesSchema } from '../schemas/update_rules_schema'; -import { LegacyServices } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; +import { buildRouteValidation, transformError, buildSiemResponse } from '../utils'; import { getIdError } from './utils'; import { transformValidate } from './validate'; - -import { transformError, getIndex } from '../utils'; import { ruleStatusSavedObjectType } from '../../rules/saved_object_mappings'; import { updateRules } from '../../rules/update_rules'; -export const createUpdateRulesRoute = ( - config: LegacyServices['config'], - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'PUT', - path: DETECTION_ENGINE_RULES_URL, - options: { - tags: ['access:siem'], +export const updateRulesRoute = (router: IRouter) => { + router.put( + { + path: DETECTION_ENGINE_RULES_URL, validate: { - options: { - abortEarly: false, - }, - payload: updateRulesSchema, + body: buildRouteValidation<UpdateRuleAlertParamsRest>(updateRulesSchema), + }, + options: { + tags: ['access:siem'], }, }, - async handler(request: UpdateRulesRequest, headers) { + async (context, request, response) => { const { description, enabled, @@ -61,18 +56,20 @@ export const createUpdateRulesRoute = ( threat, references, version, - } = request.payload; + } = request.body; + const siemResponse = buildSiemResponse(response); try { - const { alertsClient, actionsClient, savedObjectsClient, spacesClient } = await getClients( - request - ); + const alertsClient = context.alerting.getAlertsClient(); + const actionsClient = context.actions.getActionsClient(); + const savedObjectsClient = context.core.savedObjects.client; + const siemClient = context.siem.getSiemClient(); if (!actionsClient || !alertsClient) { - return headers.response().code(404); + return siemResponse.error({ statusCode: 404 }); } - const finalIndex = outputIndex ?? getIndex(spacesClient.getSpaceId, config); + const finalIndex = outputIndex ?? siemClient.signalsIndex; const rule = await updateRules({ alertsClient, actionsClient, @@ -118,41 +115,24 @@ export const createUpdateRulesRoute = ( }); const [validated, errors] = transformValidate(rule, ruleStatuses.saved_objects[0]); if (errors != null) { - return headers - .response({ - message: errors, - status_code: 500, - }) - .code(500); + return siemResponse.error({ statusCode: 500, body: errors }); } else { - return validated; + return response.ok({ body: validated ?? {} }); } } else { const error = getIdError({ id, ruleId }); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } } catch (err) { const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const updateRulesRoute = ( - route: LegacyServices['route'], - config: LegacyServices['config'], - getClients: GetScopedClients -) => { - route(createUpdateRulesRoute(config, getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/export_rules_schema.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/export_rules_schema.test.ts index dd3adf53f503bf..621dcd8fa8ed40 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/export_rules_schema.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/schemas/export_rules_schema.test.ts @@ -5,7 +5,7 @@ */ import { exportRulesSchema, exportRulesQuerySchema } from './export_rules_schema'; -import { ExportRulesRequest } from '../../rules/types'; +import { ExportRulesRequestParams } from '../../rules/types'; describe('create rules schema', () => { describe('exportRulesSchema', () => { @@ -15,19 +15,19 @@ describe('create rules schema', () => { test('empty object does not validate', () => { expect( - exportRulesSchema.validate<Partial<ExportRulesRequest['payload']>>({}).error + exportRulesSchema.validate<Partial<ExportRulesRequestParams['body']>>({}).error ).toBeTruthy(); }); test('empty object array does validate', () => { expect( - exportRulesSchema.validate<Partial<ExportRulesRequest['payload']>>({ objects: [] }).error + exportRulesSchema.validate<Partial<ExportRulesRequestParams['body']>>({ objects: [] }).error ).toBeTruthy(); }); test('array with rule_id validates', () => { expect( - exportRulesSchema.validate<Partial<ExportRulesRequest['payload']>>({ + exportRulesSchema.validate<Partial<ExportRulesRequestParams['body']>>({ objects: [{ rule_id: 'test-1' }], }).error ).toBeFalsy(); @@ -35,7 +35,7 @@ describe('create rules schema', () => { test('array with id does not validate as we do not allow that on purpose since we export rule_id', () => { expect( - exportRulesSchema.validate<Omit<ExportRulesRequest['payload'], 'objects'>>({ + exportRulesSchema.validate<Omit<ExportRulesRequestParams['body'], 'objects'>>({ objects: [{ id: 'test-1' }], }).error.message ).toEqual( @@ -47,20 +47,21 @@ describe('create rules schema', () => { describe('exportRulesQuerySchema', () => { test('default value for file_name is export.ndjson', () => { expect( - exportRulesQuerySchema.validate<Partial<ExportRulesRequest['query']>>({}).value.file_name + exportRulesQuerySchema.validate<Partial<ExportRulesRequestParams['query']>>({}).value + .file_name ).toEqual('export.ndjson'); }); test('default value for exclude_export_details is false', () => { expect( - exportRulesQuerySchema.validate<Partial<ExportRulesRequest['query']>>({}).value + exportRulesQuerySchema.validate<Partial<ExportRulesRequestParams['query']>>({}).value .exclude_export_details ).toEqual(false); }); test('file_name validates', () => { expect( - exportRulesQuerySchema.validate<Partial<ExportRulesRequest['query']>>({ + exportRulesQuerySchema.validate<Partial<ExportRulesRequestParams['query']>>({ file_name: 'test.ndjson', }).error ).toBeFalsy(); @@ -69,7 +70,7 @@ describe('create rules schema', () => { test('file_name does not validate with a number', () => { expect( exportRulesQuerySchema.validate< - Partial<Omit<ExportRulesRequest['query'], 'file_name'> & { file_name: number }> + Partial<Omit<ExportRulesRequestParams['query'], 'file_name'> & { file_name: number }> >({ file_name: 5, }).error.message @@ -78,7 +79,7 @@ describe('create rules schema', () => { test('exclude_export_details validates with a boolean true', () => { expect( - exportRulesQuerySchema.validate<Partial<ExportRulesRequest['query']>>({ + exportRulesQuerySchema.validate<Partial<ExportRulesRequestParams['query']>>({ exclude_export_details: true, }).error ).toBeFalsy(); @@ -88,7 +89,7 @@ describe('create rules schema', () => { expect( exportRulesQuerySchema.validate< Partial< - Omit<ExportRulesRequest['query'], 'exclude_export_details'> & { + Omit<ExportRulesRequestParams['query'], 'exclude_export_details'> & { exclude_export_details: string; } > 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 c72e1b7ef2a63c..da441681de50b4 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 @@ -10,7 +10,7 @@ import { importRulesPayloadSchema, } from './import_rules_schema'; import { ThreatParams, ImportRuleAlertRest } from '../../types'; -import { ImportRulesRequest } from '../../rules/types'; +import { ImportRulesRequestParams } from '../../rules/types'; describe('import rules schema', () => { describe('importRulesSchema', () => { @@ -1331,13 +1331,14 @@ describe('import rules schema', () => { describe('importRulesQuerySchema', () => { test('overwrite gets a default value of false', () => { expect( - importRulesQuerySchema.validate<Partial<ImportRulesRequest['query']>>({}).value.overwrite + importRulesQuerySchema.validate<Partial<ImportRulesRequestParams['query']>>({}).value + .overwrite ).toEqual(false); }); test('overwrite validates with a boolean true', () => { expect( - importRulesQuerySchema.validate<Partial<ImportRulesRequest['query']>>({ + importRulesQuerySchema.validate<Partial<ImportRulesRequestParams['query']>>({ overwrite: true, }).error ).toBeFalsy(); @@ -1347,7 +1348,7 @@ describe('import rules schema', () => { expect( importRulesQuerySchema.validate< Partial< - Omit<ImportRulesRequest['query'], 'overwrite'> & { + Omit<ImportRulesRequestParams['query'], 'overwrite'> & { overwrite: string; } > diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/open_close_signals.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/open_close_signals.test.ts index 7086c62f817119..b189eac186a78d 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/open_close_signals.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/open_close_signals.test.ts @@ -4,134 +4,135 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ServerInjectOptions } from 'hapi'; import { DETECTION_ENGINE_SIGNALS_STATUS_URL } from '../../../../../common/constants'; -import { setSignalsStatusRoute } from './open_close_signals_route'; -import * as myUtils from '../utils'; - import { getSetSignalStatusByIdsRequest, getSetSignalStatusByQueryRequest, typicalSetStatusSignalByIdsPayload, typicalSetStatusSignalByQueryPayload, setStatusSignalMissingIdsAndQueryPayload, + getSuccessfulSignalUpdateResponse, } from '../__mocks__/request_responses'; -import { createMockServer, createMockConfig, clientsServiceMock } from '../__mocks__'; +import { requestContextMock, serverMock, requestMock } from '../__mocks__'; +import { setSignalsStatusRoute } from './open_close_signals_route'; describe('set signal status', () => { - let server = createMockServer(); - let config = createMockConfig(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - // jest carries state between mocked implementations when using - // spyOn. So now we're doing all three of these. - // https://github.com/facebook/jest/issues/7136#issuecomment-565976599 - jest.resetAllMocks(); - jest.restoreAllMocks(); - jest.clearAllMocks(); - jest.spyOn(myUtils, 'getIndex').mockReturnValue('fakeindex'); - - server = createMockServer(); - config = createMockConfig(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); - - getClients.mockResolvedValue(clients); - clients.clusterClient.callAsCurrentUser.mockResolvedValue(true); - - setSignalsStatusRoute(server.route, config, getClients); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); + + clients.clusterClient.callAsCurrentUser.mockResolvedValue(getSuccessfulSignalUpdateResponse()); + + setSignalsStatusRoute(server.router); }); describe('status on signal', () => { test('returns 200 when setting a status on a signal by ids', async () => { - const { statusCode } = await server.inject(getSetSignalStatusByIdsRequest()); - expect(statusCode).toBe(200); - expect(myUtils.getIndex).toHaveReturnedWith('fakeindex'); + const response = await server.inject(getSetSignalStatusByIdsRequest(), context); + expect(response.status).toEqual(200); }); test('returns 200 when setting a status on a signal by query', async () => { - const { statusCode } = await server.inject(getSetSignalStatusByQueryRequest()); - expect(statusCode).toBe(200); + const response = await server.inject(getSetSignalStatusByQueryRequest(), context); + expect(response.status).toEqual(200); }); test('catches error if callAsCurrentUser throws error', async () => { clients.clusterClient.callAsCurrentUser.mockImplementation(async () => { throw new Error('Test error'); }); - const { payload, statusCode } = await server.inject(getSetSignalStatusByQueryRequest()); - expect(JSON.parse(payload).message).toBe('Test error'); - expect(statusCode).toBe(500); + const response = await server.inject(getSetSignalStatusByQueryRequest(), context); + expect(response.status).toEqual(500); + expect(response.body).toEqual({ + message: 'Test error', + status_code: 500, + }); }); }); - describe('validation', () => { - test('returns 200 if signal_ids and status are present', async () => { - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_SIGNALS_STATUS_URL, - payload: typicalSetStatusSignalByIdsPayload(), - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); + describe('request validation', () => { + test('allows signal_ids and status', async () => { + const request = requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_SIGNALS_STATUS_URL, + body: typicalSetStatusSignalByIdsPayload(), + }); + const result = server.validate(request); + + expect(result.ok).toHaveBeenCalled(); }); - test('returns 200 if query and status are present', async () => { - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_SIGNALS_STATUS_URL, - payload: typicalSetStatusSignalByQueryPayload(), - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); + test('allows query and status', async () => { + const request = requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_SIGNALS_STATUS_URL, + body: typicalSetStatusSignalByQueryPayload(), + }); + const result = server.validate(request); + + expect(result.ok).toHaveBeenCalled(); }); - test('returns 400 if signal_ids and query are not present', async () => { - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_SIGNALS_STATUS_URL, - payload: setStatusSignalMissingIdsAndQueryPayload(), - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); + test('rejects if neither signal_ids nor query', async () => { + const request = requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_SIGNALS_STATUS_URL, + body: setStatusSignalMissingIdsAndQueryPayload(), + }); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith( + '"value" must contain at least one of [signal_ids, query]' + ); }); - test('returns 400 if signal_ids are present but status is not', async () => { - const { status, ...justIds } = typicalSetStatusSignalByIdsPayload(); - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_SIGNALS_STATUS_URL, - payload: justIds, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); + test('rejects if signal_ids but no status', async () => { + const { status, ...body } = typicalSetStatusSignalByIdsPayload(); + const request = requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_SIGNALS_STATUS_URL, + body, + }); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith( + 'child "status" fails because ["status" is required]' + ); }); - test('returns 400 if query is present but status is not', async () => { - const { status, ...justTheQuery } = typicalSetStatusSignalByQueryPayload(); - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_SIGNALS_STATUS_URL, - payload: justTheQuery, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); + test('rejects if query but no status', async () => { + const { status, ...body } = typicalSetStatusSignalByIdsPayload(); + const request = requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_SIGNALS_STATUS_URL, + body, + }); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith( + 'child "status" fails because ["status" is required]' + ); }); - test('returns 400 if query and signal_ids are present but status is not', async () => { + test('rejects if query and signal_ids but no status', async () => { const allTogether = { ...typicalSetStatusSignalByIdsPayload(), ...typicalSetStatusSignalByQueryPayload(), }; - const { status, ...queryAndSignalIdsNoStatus } = allTogether; - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_SIGNALS_STATUS_URL, - payload: queryAndSignalIdsNoStatus, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); + const { status, ...body } = allTogether; + const request = requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_SIGNALS_STATUS_URL, + body, + }); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith( + 'child "status" fails because ["status" is required]' + ); }); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/open_close_signals_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/open_close_signals_route.ts index ee3fd349a26eec..c1cba641de3efe 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/open_close_signals_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/open_close_signals_route.ts @@ -4,34 +4,28 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_SIGNALS_STATUS_URL } from '../../../../../common/constants'; -import { LegacyServices } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; -import { SignalsStatusRequest } from '../../signals/types'; +import { SignalsStatusRestParams } from '../../signals/types'; import { setSignalsStatusSchema } from '../schemas/set_signal_status_schema'; -import { transformError, getIndex } from '../utils'; +import { transformError, buildRouteValidation, buildSiemResponse } from '../utils'; -export const setSignalsStatusRouteDef = ( - config: LegacyServices['config'], - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'POST', - path: DETECTION_ENGINE_SIGNALS_STATUS_URL, - options: { - tags: ['access:siem'], +export const setSignalsStatusRoute = (router: IRouter) => { + router.post( + { + path: DETECTION_ENGINE_SIGNALS_STATUS_URL, validate: { - options: { - abortEarly: false, - }, - payload: setSignalsStatusSchema, + body: buildRouteValidation<SignalsStatusRestParams>(setSignalsStatusSchema), + }, + options: { + tags: ['access:siem'], }, }, - async handler(request: SignalsStatusRequest, headers) { - const { signal_ids: signalIds, query, status } = request.payload; - const { clusterClient, spacesClient } = await getClients(request); - const index = getIndex(spacesClient.getSpaceId, config); + async (context, request, response) => { + const { signal_ids: signalIds, query, status } = request.body; + const clusterClient = context.core.elasticsearch.dataClient; + const siemClient = context.siem.getSiemClient(); + const siemResponse = buildSiemResponse(response); let queryObject; if (signalIds) { @@ -45,8 +39,8 @@ export const setSignalsStatusRouteDef = ( }; } try { - const updateByQueryResponse = await clusterClient.callAsCurrentUser('updateByQuery', { - index, + const result = await clusterClient.callAsCurrentUser('updateByQuery', { + index: siemClient.signalsIndex, body: { script: { source: `ctx._source.signal.status = '${status}'`, @@ -56,24 +50,15 @@ export const setSignalsStatusRouteDef = ( }, ignoreUnavailable: true, }); - return updateByQueryResponse; + return response.ok({ body: result }); } catch (err) { + // error while getting or updating signal with id: id in signal index .siem-signals const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const setSignalsStatusRoute = ( - route: LegacyServices['route'], - config: LegacyServices['config'], - getClients: GetScopedClients -) => { - route(setSignalsStatusRouteDef(config, getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/query_signals_route.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/query_signals_route.test.ts index 210ac9f3d7b01a..dcbb7b8e1fe44e 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/query_signals_route.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/query_signals_route.test.ts @@ -4,69 +4,56 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ServerInjectOptions } from 'hapi'; - -import { querySignalsRoute } from './query_signals_route'; -import * as myUtils from '../utils'; +import { DETECTION_ENGINE_QUERY_SIGNALS_URL } from '../../../../../common/constants'; import { getSignalsQueryRequest, getSignalsAggsQueryRequest, typicalSignalsQuery, typicalSignalsQueryAggs, + getSignalsAggsAndQueryRequest, + getEmptySignalsResponse, } from '../__mocks__/request_responses'; -import { createMockServer, createMockConfig, clientsServiceMock } from '../__mocks__'; -import { DETECTION_ENGINE_QUERY_SIGNALS_URL } from '../../../../../common/constants'; +import { requestContextMock, serverMock, requestMock } from '../__mocks__'; +import { querySignalsRoute } from './query_signals_route'; describe('query for signal', () => { - let server = createMockServer(); - let config = createMockConfig(); - let getClients = clientsServiceMock.createGetScoped(); - let clients = clientsServiceMock.createClients(); + let server: ReturnType<typeof serverMock.create>; + let { clients, context } = requestContextMock.createTools(); beforeEach(() => { - jest.resetAllMocks(); - jest.spyOn(myUtils, 'getIndex').mockReturnValue('fakeindex'); + server = serverMock.create(); + ({ clients, context } = requestContextMock.createTools()); - server = createMockServer(); - config = createMockConfig(); - getClients = clientsServiceMock.createGetScoped(); - clients = clientsServiceMock.createClients(); + clients.clusterClient.callAsCurrentUser.mockResolvedValue(getEmptySignalsResponse()); - getClients.mockResolvedValue(clients); - clients.clusterClient.callAsCurrentUser.mockResolvedValue(true); - - querySignalsRoute(server.route, config, getClients); + querySignalsRoute(server.router); }); describe('query and agg on signals index', () => { test('returns 200 when using single query', async () => { - const { statusCode } = await server.inject(getSignalsQueryRequest()); + const response = await server.inject(getSignalsQueryRequest(), context); - expect(statusCode).toBe(200); + expect(response.status).toEqual(200); expect(clients.clusterClient.callAsCurrentUser).toHaveBeenCalledWith( 'search', expect.objectContaining({ body: typicalSignalsQuery() }) ); - expect(myUtils.getIndex).toHaveReturnedWith('fakeindex'); }); test('returns 200 when using single agg', async () => { - const { statusCode } = await server.inject(getSignalsAggsQueryRequest()); + const response = await server.inject(getSignalsAggsQueryRequest(), context); - expect(statusCode).toBe(200); + expect(response.status).toEqual(200); expect(clients.clusterClient.callAsCurrentUser).toHaveBeenCalledWith( 'search', expect.objectContaining({ body: typicalSignalsQueryAggs() }) ); - expect(myUtils.getIndex).toHaveReturnedWith('fakeindex'); }); test('returns 200 when using aggs and query together', async () => { - const request = getSignalsQueryRequest(); - request.payload = { ...typicalSignalsQueryAggs(), ...typicalSignalsQuery() }; - const { statusCode } = await server.inject(request); + const response = await server.inject(getSignalsAggsAndQueryRequest(), context); - expect(statusCode).toBe(200); + expect(response.status).toEqual(200); expect(clients.clusterClient.callAsCurrentUser).toHaveBeenCalledWith( 'search', expect.objectContaining({ @@ -76,69 +63,65 @@ describe('query for signal', () => { }, }) ); - expect(myUtils.getIndex).toHaveReturnedWith('fakeindex'); }); - test('returns 400 when missing aggs and query', async () => { - const allTogether = getSignalsQueryRequest(); - allTogether.payload = {}; - const { statusCode } = await server.inject(allTogether); - expect(statusCode).toBe(400); + test('catches error if query throws error', async () => { + clients.clusterClient.callAsCurrentUser.mockImplementation(async () => { + throw new Error('Test error'); + }); + const response = await server.inject(getSignalsAggsQueryRequest(), context); + expect(response.status).toEqual(500); + expect(response.body).toEqual({ + message: 'Test error', + status_code: 500, + }); }); }); - describe('validation', () => { - test('returns 200 if query present', async () => { - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_QUERY_SIGNALS_URL, - payload: typicalSignalsQuery(), - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); - }); + describe('request validation', () => { + test('allows when query present', async () => { + const request = requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_QUERY_SIGNALS_URL, + body: typicalSignalsQuery(), + }); + const result = server.validate(request); - test('returns 200 if aggs is present', async () => { - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_QUERY_SIGNALS_URL, - payload: typicalSignalsQueryAggs(), - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); + expect(result.ok).toHaveBeenCalled(); }); - test('returns 200 if aggs and query are present', async () => { - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_QUERY_SIGNALS_URL, - payload: { ...typicalSignalsQueryAggs(), ...typicalSignalsQuery() }, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(200); + test('allows when aggs present', async () => { + const request = requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_QUERY_SIGNALS_URL, + body: typicalSignalsQueryAggs(), + }); + const result = server.validate(request); + + expect(result.ok).toHaveBeenCalled(); }); - test('returns 400 if aggs and query are NOT present', async () => { - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_QUERY_SIGNALS_URL, - payload: {}, - }; - const { statusCode } = await server.inject(request); - expect(statusCode).toBe(400); + test('allows when aggs and query present', async () => { + const body = { ...typicalSignalsQueryAggs(), ...typicalSignalsQuery() }; + const request = requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_QUERY_SIGNALS_URL, + body, + }); + const result = server.validate(request); + + expect(result.ok).toHaveBeenCalled(); }); - test('catches error if deleteRules throws error', async () => { - const request: ServerInjectOptions = { - method: 'POST', - url: DETECTION_ENGINE_QUERY_SIGNALS_URL, - payload: { ...typicalSignalsQueryAggs(), ...typicalSignalsQuery() }, - }; - clients.clusterClient.callAsCurrentUser.mockImplementation(async () => { - throw new Error('Test error'); + + test('rejects when missing aggs and query', async () => { + const request = requestMock.create({ + method: 'post', + path: DETECTION_ENGINE_QUERY_SIGNALS_URL, + body: {}, }); - const { payload, statusCode } = await server.inject(request); - expect(JSON.parse(payload).message).toBe('Test error'); - expect(statusCode).toBe(500); + const result = server.validate(request); + + expect(result.badRequest).toHaveBeenCalledWith('"value" must have at least 1 children'); }); }); }); diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/query_signals_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/query_signals_route.ts index 7636329ecc306c..77b62b058fa544 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/query_signals_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/signals/query_signals_route.ts @@ -4,60 +4,44 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_QUERY_SIGNALS_URL } from '../../../../../common/constants'; -import { LegacyServices } from '../../../../types'; -import { GetScopedClients } from '../../../../services'; -import { SignalsQueryRequest } from '../../signals/types'; +import { SignalsQueryRestParams } from '../../signals/types'; import { querySignalsSchema } from '../schemas/query_signals_index_schema'; -import { transformError, getIndex } from '../utils'; +import { transformError, buildRouteValidation, buildSiemResponse } from '../utils'; -export const querySignalsRouteDef = ( - config: LegacyServices['config'], - getClients: GetScopedClients -): Hapi.ServerRoute => { - return { - method: 'POST', - path: DETECTION_ENGINE_QUERY_SIGNALS_URL, - options: { - tags: ['access:siem'], +export const querySignalsRoute = (router: IRouter) => { + router.post( + { + path: DETECTION_ENGINE_QUERY_SIGNALS_URL, validate: { - options: { - abortEarly: false, - }, - payload: querySignalsSchema, + body: buildRouteValidation<SignalsQueryRestParams>(querySignalsSchema), + }, + options: { + tags: ['access:siem'], }, }, - async handler(request: SignalsQueryRequest, headers) { - const { query, aggs, _source, track_total_hits, size } = request.payload; - const { clusterClient, spacesClient } = await getClients(request); - - const index = getIndex(spacesClient.getSpaceId, config); + async (context, request, response) => { + const { query, aggs, _source, track_total_hits, size } = request.body; + const clusterClient = context.core.elasticsearch.dataClient; + const siemClient = context.siem.getSiemClient(); + const siemResponse = buildSiemResponse(response); try { - const searchSignalsIndexResult = await clusterClient.callAsCurrentUser('search', { - index, + const result = await clusterClient.callAsCurrentUser('search', { + index: siemClient.signalsIndex, body: { query, aggs, _source, track_total_hits, size }, ignoreUnavailable: true, }); - return searchSignalsIndexResult; + return response.ok({ body: result }); } catch (err) { + // error while getting or updating signal with id: id in signal index .siem-signals const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); } - }, - }; -}; - -export const querySignalsRoute = ( - route: LegacyServices['route'], - config: LegacyServices['config'], - getClients: GetScopedClients -) => { - route(querySignalsRouteDef(config, getClients)); + } + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/tags/read_tags_route.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/tags/read_tags_route.ts index b17be21d15a196..4663928ac1e465 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/tags/read_tags_route.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/tags/read_tags_route.ts @@ -4,49 +4,40 @@ * you may not use this file except in compliance with the Elastic License. */ -import Hapi from 'hapi'; - +import { IRouter } from '../../../../../../../../../src/core/server'; import { DETECTION_ENGINE_TAGS_URL } from '../../../../../common/constants'; -import { LegacyServices, LegacyRequest } from '../../../../types'; -import { transformError } from '../utils'; +import { transformError, buildSiemResponse } from '../utils'; import { readTags } from '../../tags/read_tags'; -import { GetScopedClients } from '../../../../services'; -export const createReadTagsRoute = (getClients: GetScopedClients): Hapi.ServerRoute => ({ - method: 'GET', - path: DETECTION_ENGINE_TAGS_URL, - options: { - tags: ['access:siem'], - validate: { +export const readTagsRoute = (router: IRouter) => { + router.get( + { + path: DETECTION_ENGINE_TAGS_URL, + validate: false, options: { - abortEarly: false, + tags: ['access:siem'], }, }, - }, - async handler(request: LegacyRequest, headers) { - const { alertsClient } = await getClients(request); + async (context, request, response) => { + const alertsClient = context.alerting.getAlertsClient(); + const siemResponse = buildSiemResponse(response); - if (!alertsClient) { - return headers.response().code(404); - } + if (!alertsClient) { + return siemResponse.error({ statusCode: 404 }); + } - try { - const tags = await readTags({ - alertsClient, - }); - return tags; - } catch (err) { - const error = transformError(err); - return headers - .response({ - message: error.message, - status_code: error.statusCode, - }) - .code(error.statusCode); + try { + const tags = await readTags({ + alertsClient, + }); + return response.ok({ body: tags }); + } catch (err) { + const error = transformError(err); + return siemResponse.error({ + body: error.message, + statusCode: error.statusCode, + }); + } } - }, -}); - -export const readTagsRoute = (route: LegacyServices['route'], getClients: GetScopedClients) => { - route(createReadTagsRoute(getClients)); + ); }; diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/utils.test.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/utils.test.ts index a382c4a3236719..f18e158db42695 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/utils.test.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/routes/utils.test.ts @@ -13,13 +13,13 @@ import { transformBulkError, BulkError, createSuccessObject, - getIndex, ImportSuccessError, createImportErrorObject, transformImportError, convertToSnakeCase, + SiemResponseFactory, } from './utils'; -import { createMockConfig } from './__mocks__'; +import { responseMock } from './__mocks__'; describe('utils', () => { describe('transformError', () => { @@ -298,24 +298,6 @@ describe('utils', () => { }); }); - describe('getIndex', () => { - let mockConfig = createMockConfig(); - - beforeEach(() => { - mockConfig = () => ({ - get: jest.fn(() => 'mockSignalsIndex'), - has: jest.fn(), - }); - }); - - it('appends the space id to the configured index', () => { - const getSpaceId = jest.fn(() => 'myspace'); - const index = getIndex(getSpaceId, mockConfig); - - expect(index).toEqual('mockSignalsIndex-myspace'); - }); - }); - describe('convertToSnakeCase', () => { it('converts camelCase to snakeCase', () => { const values = { myTestCamelCaseKey: 'something' }; @@ -340,4 +322,31 @@ describe('utils', () => { ).toEqual(null); }); }); + + describe('SiemResponseFactory', () => { + it('builds a custom response', () => { + const response = responseMock.create(); + const responseFactory = new SiemResponseFactory(response); + + responseFactory.error({ statusCode: 400 }); + expect(response.custom).toHaveBeenCalled(); + }); + + it('generates a status_code key on the response', () => { + const response = responseMock.create(); + const responseFactory = new SiemResponseFactory(response); + + responseFactory.error({ statusCode: 400 }); + const [[{ statusCode, body }]] = response.custom.mock.calls; + + expect(statusCode).toEqual(400); + expect(body).toBeInstanceOf(Buffer); + expect(JSON.parse(body!.toString())).toEqual( + expect.objectContaining({ + message: 'Bad Request', + status_code: 400, + }) + ); + }); + }); }); 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 65c9141619cb9e..6c98517c4dc0c6 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 @@ -5,9 +5,14 @@ */ import Boom from 'boom'; +import Joi from 'joi'; import { has, snakeCase } from 'lodash/fp'; -import { APP_ID, SIGNALS_INDEX_KEY } from '../../../../common/constants'; -import { LegacyServices } from '../../../types'; + +import { + RouteValidationFunction, + KibanaResponseFactory, + CustomHttpResponseOptions, +} from '../../../../../../../../src/core/server'; export interface OutputError { message: string; @@ -215,13 +220,64 @@ export const transformBulkError = ( } }; -export const getIndex = (getSpaceId: () => string, config: LegacyServices['config']): string => { - const signalsIndex = config().get<string>(`xpack.${APP_ID}.${SIGNALS_INDEX_KEY}`); - const spaceId = getSpaceId(); +export const buildRouteValidation = <T>(schema: Joi.Schema): RouteValidationFunction<T> => ( + payload: T, + { ok, badRequest } +) => { + const { value, error } = schema.validate(payload); + if (error) { + return badRequest(error.message); + } + return ok(value); +}; - return `${signalsIndex}-${spaceId}`; +const statusToErrorMessage = (statusCode: number) => { + switch (statusCode) { + case 400: + return 'Bad Request'; + case 401: + return 'Unauthorized'; + case 403: + return 'Forbidden'; + case 404: + return 'Not Found'; + case 409: + return 'Conflict'; + case 500: + return 'Internal Error'; + default: + return '(unknown error)'; + } }; +export class SiemResponseFactory { + constructor(private response: KibanaResponseFactory) {} + + error<T>({ statusCode, body, headers }: CustomHttpResponseOptions<T>) { + const contentType: CustomHttpResponseOptions<T>['headers'] = { + 'content-type': 'application/json', + }; + const defaultedHeaders: CustomHttpResponseOptions<T>['headers'] = { + ...contentType, + ...(headers ?? {}), + }; + + return this.response.custom({ + headers: defaultedHeaders, + statusCode, + body: Buffer.from( + JSON.stringify({ + message: body ?? statusToErrorMessage(statusCode), + status_code: statusCode, + }) + ), + }); + } +} + +export const buildSiemResponse = (response: KibanaResponseFactory) => + new SiemResponseFactory(response); + export const convertToSnakeCase = <T extends Record<string, unknown>>( obj: T ): Partial<T> | null => { diff --git a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/types.ts b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/types.ts index be18b3288f5abb..1efa46c6b8b575 100644 --- a/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/types.ts +++ b/x-pack/legacy/plugins/siem/server/lib/detection_engine/rules/types.ts @@ -43,18 +43,10 @@ export interface PatchRulesRequest extends LegacyRequest { payload: PatchRuleAlertParamsRest; } -export interface BulkPatchRulesRequest extends LegacyRequest { - payload: PatchRuleAlertParamsRest[]; -} - export interface UpdateRulesRequest extends LegacyRequest { payload: UpdateRuleAlertParamsRest; } -export interface BulkUpdateRulesRequest extends LegacyRequest { - payload: UpdateRuleAlertParamsRest[]; -} - export interface RuleAlertType extends Alert { params: RuleTypeParams; } @@ -99,40 +91,33 @@ export interface IRuleStatusFindType { export type RuleStatusString = 'succeeded' | 'failed' | 'going to run' | 'executing'; -export interface RulesRequest extends LegacyRequest { - payload: RuleAlertParamsRest; -} - -export interface BulkRulesRequest extends LegacyRequest { - payload: RuleAlertParamsRest[]; -} - export interface HapiReadableStream extends Readable { hapi: { filename: string; }; } -export interface ImportRulesRequest extends Omit<LegacyRequest, 'query'> { +export interface ImportRulesRequestParams { query: { overwrite: boolean }; - payload: { file: HapiReadableStream }; + body: { file: HapiReadableStream }; } -export interface ExportRulesRequest extends Omit<LegacyRequest, 'query'> { - payload: { objects: Array<{ rule_id: string }> | null | undefined }; +export interface ExportRulesRequestParams { + body: { objects: Array<{ rule_id: string }> | null | undefined }; query: { file_name: string; exclude_export_details: boolean; }; } -export type QueryRequest = Omit<LegacyRequest, 'query'> & { - query: { id: string | undefined; rule_id: string | undefined }; -}; - -export interface QueryBulkRequest extends LegacyRequest { - payload: Array<QueryRequest['query']>; +export interface RuleRequestParams { + id: string | undefined; + rule_id: string | undefined; } +export type ReadRuleRequestParams = RuleRequestParams; +export type DeleteRuleRequestParams = RuleRequestParams; +export type DeleteRulesRequestParams = RuleRequestParams[]; + export interface FindRuleParams { alertsClient: AlertsClient; perPage?: number; @@ -143,22 +128,18 @@ export interface FindRuleParams { sortOrder?: 'asc' | 'desc'; } -export interface FindRulesRequest extends Omit<LegacyRequest, 'query'> { - query: { - per_page: number; - page: number; - search?: string; - sort_field?: string; - filter?: string; - fields?: string[]; - sort_order?: 'asc' | 'desc'; - }; +export interface FindRulesRequestParams { + per_page: number; + page: number; + search?: string; + sort_field?: string; + filter?: string; + fields?: string[]; + sort_order?: 'asc' | 'desc'; } -export interface FindRulesStatusesRequest extends Omit<LegacyRequest, 'query'> { - query: { - ids: string[]; - }; +export interface FindRulesStatusesRequestParams { + ids: string[]; } export interface Clients { 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 d8b7dd72b6a864..74425451173102 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 @@ -6,7 +6,6 @@ import { RuleAlertParams, OutputRuleAlertRest } from '../types'; import { SearchResponse } from '../../types'; -import { LegacyRequest } from '../../../types'; import { AlertType, State, @@ -39,14 +38,6 @@ export type SignalsStatusRestParams = Omit<SignalsStatusParams, 'signalIds'> & { export type SignalsQueryRestParams = SignalQueryParams; -export interface SignalsStatusRequest extends LegacyRequest { - payload: SignalsStatusRestParams; -} - -export interface SignalsQueryRequest extends LegacyRequest { - payload: SignalsQueryRestParams; -} - export type SearchTypes = | string | string[] diff --git a/x-pack/legacy/plugins/siem/server/lib/framework/kibana_framework_adapter.ts b/x-pack/legacy/plugins/siem/server/lib/framework/kibana_framework_adapter.ts index 4cce0b0999257b..7d42149223b324 100644 --- a/x-pack/legacy/plugins/siem/server/lib/framework/kibana_framework_adapter.ts +++ b/x-pack/legacy/plugins/siem/server/lib/framework/kibana_framework_adapter.ts @@ -24,6 +24,7 @@ import { FrameworkRequest, internalFrameworkRequest, } from './types'; +import { buildSiemResponse } from '../detection_engine/routes/utils'; export class KibanaBackendFrameworkAdapter implements FrameworkAdapter { private router: IRouter; @@ -130,22 +131,19 @@ export class KibanaBackendFrameworkAdapter implements FrameworkAdapter { // eslint-disable-next-line @typescript-eslint/no-explicit-any private handleError(error: any, response: KibanaResponseFactory) { - if (error.name !== 'HttpQueryError') { - return response.internalError({ + const siemResponse = buildSiemResponse(response); + + if (error.name === 'HttpQueryError') { + return siemResponse.error({ + statusCode: error.statusCode, + headers: error.headers, body: error.message, - headers: { - 'content-type': 'application/json', - }, }); } - return response.customError({ - statusCode: error.statusCode, + return siemResponse.error({ + statusCode: 500, body: error.message, - headers: { - 'content-type': 'application/json', - ...error.headers, - }, }); } diff --git a/x-pack/legacy/plugins/siem/server/plugin.ts b/x-pack/legacy/plugins/siem/server/plugin.ts index 6f28fd7d67bd08..d9d381498fb56a 100644 --- a/x-pack/legacy/plugins/siem/server/plugin.ts +++ b/x-pack/legacy/plugins/siem/server/plugin.ts @@ -24,7 +24,7 @@ import { PluginStartContract as ActionsStart } from '../../../../plugins/actions import { LegacyServices } from './types'; import { initServer } from './init_server'; import { compose } from './lib/compose/kibana'; -import { initRoutes, LegacyInitRoutes } from './routes'; +import { initRoutes } from './routes'; import { isAlertExecutor } from './lib/detection_engine/signals/types'; import { signalRulesAlertType } from './lib/detection_engine/signals/signal_rule_alert_type'; import { @@ -33,7 +33,7 @@ import { timelineSavedObjectType, ruleStatusSavedObjectType, } from './saved_objects'; -import { ClientsService } from './services'; +import { SiemClientFactory } from './client'; export { CoreSetup, CoreStart }; @@ -54,13 +54,12 @@ export class Plugin { readonly name = 'siem'; private readonly logger: Logger; private context: PluginInitializerContext; - private clients: ClientsService; - private legacyInitRoutes?: LegacyInitRoutes; + private siemClientFactory: SiemClientFactory; constructor(context: PluginInitializerContext) { this.context = context; this.logger = context.logger.get('plugins', this.name); - this.clients = new ClientsService(); + this.siemClientFactory = new SiemClientFactory(); this.logger.debug('Shim plugin initialized'); } @@ -68,10 +67,18 @@ export class Plugin { public setup(core: CoreSetup, plugins: SetupPlugins, __legacy: LegacyServices) { this.logger.debug('Shim plugin setup'); - this.clients.setup(core.elasticsearch.dataClient, plugins.spaces?.spacesService); + const router = core.http.createRouter(); + core.http.registerRouteHandlerContext(this.name, (context, request, response) => ({ + getSiemClient: () => this.siemClientFactory.create(request), + })); - this.legacyInitRoutes = initRoutes( - __legacy.route, + this.siemClientFactory.setup({ + getSpaceId: plugins.spaces?.spacesService?.getSpaceId, + config: __legacy.config, + }); + + initRoutes( + router, __legacy.config, plugins.encryptedSavedObjects?.usingEphemeralEncryptionKey ?? false ); @@ -150,9 +157,5 @@ export class Plugin { initServer(libs); } - public start(core: CoreStart, plugins: StartPlugins) { - this.clients.start(core.savedObjects, plugins.actions, plugins.alerting); - - this.legacyInitRoutes!(this.clients.createGetScoped()); - } + public start(core: CoreStart, plugins: StartPlugins) {} } diff --git a/x-pack/legacy/plugins/siem/server/routes/index.ts b/x-pack/legacy/plugins/siem/server/routes/index.ts index 82fc4d8c117220..08bdfc3aa5d4f5 100644 --- a/x-pack/legacy/plugins/siem/server/routes/index.ts +++ b/x-pack/legacy/plugins/siem/server/routes/index.ts @@ -4,8 +4,8 @@ * you may not use this file except in compliance with the Elastic License. */ +import { IRouter } from '../../../../../../src/core/server'; import { LegacyServices } from '../types'; -import { GetScopedClients } from '../services'; import { createRulesRoute } from '../lib/detection_engine/routes/rules/create_rules_route'; import { createIndexRoute } from '../lib/detection_engine/routes/index/create_index_route'; @@ -30,49 +30,47 @@ import { exportRulesRoute } from '../lib/detection_engine/routes/rules/export_ru import { findRulesStatusesRoute } from '../lib/detection_engine/routes/rules/find_rules_status_route'; import { getPrepackagedRulesStatusRoute } from '../lib/detection_engine/routes/rules/get_prepackaged_rules_status_route'; -export type LegacyInitRoutes = (getClients: GetScopedClients) => void; - export const initRoutes = ( - route: LegacyServices['route'], + router: IRouter, config: LegacyServices['config'], usingEphemeralEncryptionKey: boolean -) => (getClients: GetScopedClients): void => { +) => { // Detection Engine Rule routes that have the REST endpoints of /api/detection_engine/rules // All REST rule creation, deletion, updating, etc...... - createRulesRoute(route, config, getClients); - readRulesRoute(route, getClients); - updateRulesRoute(route, config, getClients); - patchRulesRoute(route, getClients); - deleteRulesRoute(route, getClients); - findRulesRoute(route, getClients); + createRulesRoute(router); + readRulesRoute(router); + updateRulesRoute(router); + patchRulesRoute(router); + deleteRulesRoute(router); + findRulesRoute(router); - addPrepackedRulesRoute(route, config, getClients); - getPrepackagedRulesStatusRoute(route, getClients); - createRulesBulkRoute(route, config, getClients); - updateRulesBulkRoute(route, config, getClients); - patchRulesBulkRoute(route, getClients); - deleteRulesBulkRoute(route, getClients); + addPrepackedRulesRoute(router); + getPrepackagedRulesStatusRoute(router); + createRulesBulkRoute(router); + updateRulesBulkRoute(router); + patchRulesBulkRoute(router); + deleteRulesBulkRoute(router); - importRulesRoute(route, config, getClients); - exportRulesRoute(route, config, getClients); + importRulesRoute(router, config); + exportRulesRoute(router, config); - findRulesStatusesRoute(route, getClients); + findRulesStatusesRoute(router); // Detection Engine Signals routes that have the REST endpoints of /api/detection_engine/signals // POST /api/detection_engine/signals/status // Example usage can be found in siem/server/lib/detection_engine/scripts/signals - setSignalsStatusRoute(route, config, getClients); - querySignalsRoute(route, config, getClients); + setSignalsStatusRoute(router); + querySignalsRoute(router); // Detection Engine index routes that have the REST endpoints of /api/detection_engine/index // All REST index creation, policy management for spaces - createIndexRoute(route, config, getClients); - readIndexRoute(route, config, getClients); - deleteIndexRoute(route, config, getClients); + createIndexRoute(router); + readIndexRoute(router); + deleteIndexRoute(router); // Detection Engine tags routes that have the REST endpoints of /api/detection_engine/tags - readTagsRoute(route, getClients); + readTagsRoute(router); // Privileges API to get the generic user privileges - readPrivilegesRoute(route, config, usingEphemeralEncryptionKey, getClients); + readPrivilegesRoute(router, usingEphemeralEncryptionKey); }; diff --git a/x-pack/legacy/plugins/siem/server/services/clients.test.ts b/x-pack/legacy/plugins/siem/server/services/clients.test.ts deleted file mode 100644 index f76494d075f086..00000000000000 --- a/x-pack/legacy/plugins/siem/server/services/clients.test.ts +++ /dev/null @@ -1,34 +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 { coreMock, httpServerMock } from '../../../../../../src/core/server/mocks'; -import { actionsMock } from '../../../../../plugins/actions/server/mocks'; -import { alertsMock } from '../../../../../plugins/alerting/server/mocks'; - -import { ClientsService } from './clients'; - -describe('ClientsService', () => { - describe('spacesClient', () => { - describe('#getSpaceId', () => { - it('returns the default spaceId if spaces are disabled', async () => { - const clients = new ClientsService(); - - const actions = actionsMock.createStart(); - const alerting = alertsMock.createStart(); - const { elasticsearch } = coreMock.createSetup(); - const { savedObjects } = coreMock.createStart(); - const request = httpServerMock.createRawRequest(); - const spacesService = undefined; - - clients.setup(elasticsearch.dataClient, spacesService); - clients.start(savedObjects, actions, alerting); - - const { spacesClient } = await clients.createGetScoped()(request); - expect(spacesClient.getSpaceId()).toEqual('default'); - }); - }); - }); -}); diff --git a/x-pack/legacy/plugins/siem/server/services/clients.ts b/x-pack/legacy/plugins/siem/server/services/clients.ts deleted file mode 100644 index 7ba7230f88493a..00000000000000 --- a/x-pack/legacy/plugins/siem/server/services/clients.ts +++ /dev/null @@ -1,70 +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 { - IClusterClient, - IScopedClusterClient, - KibanaRequest, - LegacyRequest, - SavedObjectsClientContract, -} from '../../../../../../src/core/server'; -import { ActionsClient } from '../../../../../plugins/actions/server'; -import { AlertsClient } from '../../../../../plugins/alerting/server'; -import { SpacesServiceSetup } from '../../../../../plugins/spaces/server'; -import { CoreStart, StartPlugins } from '../plugin'; - -export interface Clients { - actionsClient?: ActionsClient; - alertsClient?: AlertsClient; - clusterClient: IScopedClusterClient; - spacesClient: { getSpaceId: () => string }; - savedObjectsClient: SavedObjectsClientContract; -} - -export type GetScopedClients = (request: LegacyRequest) => Promise<Clients>; - -export class ClientsService { - private actions?: StartPlugins['actions']; - private alerting?: StartPlugins['alerting']; - private clusterClient?: IClusterClient; - private savedObjects?: CoreStart['savedObjects']; - private spacesService?: SpacesServiceSetup; - - public setup(clusterClient: IClusterClient, spacesService?: SpacesServiceSetup) { - this.clusterClient = clusterClient; - this.spacesService = spacesService; - } - - public start( - savedObjects: CoreStart['savedObjects'], - actions: StartPlugins['actions'], - alerting: StartPlugins['alerting'] - ) { - this.savedObjects = savedObjects; - this.actions = actions; - this.alerting = alerting; - } - - public createGetScoped(): GetScopedClients { - if (!this.clusterClient || !this.savedObjects) { - throw new Error('Services not initialized'); - } - - return async (request: LegacyRequest) => { - const kibanaRequest = KibanaRequest.from(request); - - return { - alertsClient: await this.alerting?.getAlertsClientWithRequest?.(kibanaRequest), - actionsClient: await this.actions?.getActionsClientWithRequest?.(kibanaRequest), - clusterClient: this.clusterClient!.asScoped(kibanaRequest), - savedObjectsClient: this.savedObjects!.getScopedClient(kibanaRequest), - spacesClient: { - getSpaceId: () => this.spacesService?.getSpaceId?.(kibanaRequest) ?? 'default', - }, - }; - }; - } -} diff --git a/x-pack/legacy/plugins/siem/server/types.ts b/x-pack/legacy/plugins/siem/server/types.ts index e7831bb5d04515..4119645a5af470 100644 --- a/x-pack/legacy/plugins/siem/server/types.ts +++ b/x-pack/legacy/plugins/siem/server/types.ts @@ -5,6 +5,7 @@ */ import { Legacy } from 'kibana'; +import { SiemClient } from './client'; export { LegacyRequest } from '../../../../../src/core/server'; @@ -13,3 +14,15 @@ export interface LegacyServices { config: Legacy.Server['config']; route: Legacy.Server['route']; } + +export { SiemClient }; + +export interface SiemRequestContext { + getSiemClient: () => SiemClient; +} + +declare module 'src/core/server' { + interface RequestHandlerContext { + siem: SiemRequestContext; + } +} diff --git a/x-pack/test/detection_engine_api_integration/security_and_spaces/tests/add_prepackaged_rules.ts b/x-pack/test/detection_engine_api_integration/security_and_spaces/tests/add_prepackaged_rules.ts index 5e09013fb32a3e..6ee65d5d28aa47 100644 --- a/x-pack/test/detection_engine_api_integration/security_and_spaces/tests/add_prepackaged_rules.ts +++ b/x-pack/test/detection_engine_api_integration/security_and_spaces/tests/add_prepackaged_rules.ts @@ -26,7 +26,7 @@ export default ({ getService }: FtrProviderContext): void => { expect(body).to.eql({ message: - 'Pre-packaged rules cannot be installed until the space index is created: .siem-signals-default', + 'Pre-packaged rules cannot be installed until the signals index is created: .siem-signals-default', status_code: 400, }); }); From cba4f3467496699f70bd262ba4392a21da5cc4ec Mon Sep 17 00:00:00 2001 From: Joe Reuter <johannes.reuter@elastic.co> Date: Wed, 4 Mar 2020 08:24:42 +0100 Subject: [PATCH 083/120] Migrate home app (#58030) --- .../core_plugins/kibana/public/.eslintrc.js | 2 +- .../kibana/public/home/_index.scss | 1 - .../np_ready/components/home.test.mocks.ts | 42 ---- .../core_plugins/kibana/public/home/plugin.ts | 105 ---------- .../core_plugins/kibana/public/index.scss | 6 +- .../core_plugins/kibana/public/kibana.js | 1 - src/legacy/core_plugins/kibana_react/index.ts | 1 - .../core_plugins/kibana_react/public/index.ts | 8 +- .../new_platform/new_platform.karma_mock.js | 15 +- .../ui/public/new_platform/new_platform.ts | 3 +- .../ui/public/url/redirect_when_missing.js | 2 +- src/plugins/home/kibana.json | 3 +- .../home/public/application/_index.scss | 1 + .../home/public/application}/application.tsx | 4 +- .../__snapshots__/add_data.test.js.snap | 80 ++++---- .../__snapshots__/home.test.js.snap | 100 ++++----- .../recently_accessed.test.js.snap | 2 +- .../sample_data_view_data_button.test.js.snap | 0 .../__snapshots__/synopsis.test.js.snap | 0 .../__snapshots__/welcome.test.tsx.snap | 40 ++-- .../application}/components/_add_data.scss | 0 .../public/application}/components/_home.scss | 0 .../application}/components/_index.scss | 0 .../components/_sample_data_set_cards.scss | 0 .../application}/components/_synopsis.scss | 0 .../application}/components/_welcome.scss | 0 .../application}/components/add_data.js | 48 ++--- .../application}/components/add_data.test.js | 4 +- .../components/feature_directory.js | 12 +- .../public/application}/components/home.js | 14 +- .../application}/components/home.test.js | 6 +- .../application}/components/home_app.js | 5 +- .../components/recently_accessed.js | 2 +- .../components/recently_accessed.test.js | 0 .../components/sample_data/index.tsx | 8 +- .../components/sample_data_set_card.js | 35 ++-- .../components/sample_data_set_cards.js | 12 +- .../sample_data_view_data_button.js | 8 +- .../sample_data_view_data_button.test.js | 2 +- .../application}/components/synopsis.js | 0 .../application}/components/synopsis.test.js | 0 .../__snapshots__/content.test.js.snap | 0 .../__snapshots__/footer.test.js.snap | 2 +- .../instruction_set.test.js.snap | 0 .../__snapshots__/introduction.test.js.snap | 2 +- .../saved_objects_installer.test.js.snap | 0 .../__snapshots__/tutorial.test.js.snap | 0 .../components/tutorial/_tutorial.scss | 0 .../components/tutorial/content.js | 2 +- .../components/tutorial/content.test.js | 2 +- .../components/tutorial/footer.js | 2 +- .../components/tutorial/footer.test.js | 0 .../components/tutorial/instruction.js | 2 +- .../components/tutorial/instruction_set.js | 16 +- .../tutorial/instruction_set.test.js | 2 +- .../components/tutorial/introduction.js | 6 +- .../components/tutorial/introduction.test.js | 2 +- .../components/tutorial/number_parameter.js | 0 .../components/tutorial/parameter_form.js | 0 .../tutorial/replace_template_strings.js | 6 +- .../tutorial/saved_objects_installer.js | 16 +- .../tutorial/saved_objects_installer.test.js | 0 .../tutorial/status_check_states.js | 0 .../components/tutorial/string_parameter.js | 0 .../components/tutorial/tutorial.js | 14 +- .../components/tutorial/tutorial.test.js | 4 +- .../components/tutorial_directory.js | 22 +- .../application}/components/welcome.test.tsx | 4 +- .../application}/components/welcome.tsx | 22 +- .../home/public/application}/index.ts | 11 +- .../public/application}/kibana_services.ts | 22 +- .../public/application}/load_tutorials.js | 6 +- .../public/application}/sample_data_client.js | 2 +- src/plugins/home/public/index.ts | 4 - src/plugins/home/public/mocks/index.ts | 7 - src/plugins/home/public/plugin.test.ts | 55 ++--- src/plugins/home/public/plugin.ts | 95 +++++---- .../services/environment/environment.mock.ts | 21 +- .../services/environment/environment.test.ts | 6 +- .../services/environment/environment.ts | 12 +- .../home/public/services/environment/index.ts | 7 +- .../feature_catalogue_registry.mock.ts | 11 +- .../feature_catalogue_registry.test.ts | 12 +- .../feature_catalogue_registry.ts | 19 +- .../services/feature_catalogue/index.ts | 1 - .../home/public/services/tutorials/index.ts | 7 +- .../tutorials/tutorial_service.mock.ts | 13 +- .../tutorials/tutorial_service.test.ts | 6 +- .../services/tutorials/tutorial_service.ts | 12 +- src/plugins/kibana_react/public/index.ts | 1 + .../__snapshots__/markdown.test.tsx.snap | 0 .../kibana_react/public/markdown/index.ts | 0 .../public/markdown/markdown.test.tsx | 0 .../kibana_react/public/markdown/markdown.tsx | 0 .../public/markdown/markdown_simple.tsx | 0 x-pack/plugins/infra/public/plugin.ts | 3 +- .../translations/translations/ja-JP.json | 192 +++++++++--------- .../translations/translations/zh-CN.json | 192 +++++++++--------- 98 files changed, 592 insertions(+), 823 deletions(-) delete mode 100644 src/legacy/core_plugins/kibana/public/home/_index.scss delete mode 100644 src/legacy/core_plugins/kibana/public/home/np_ready/components/home.test.mocks.ts delete mode 100644 src/legacy/core_plugins/kibana/public/home/plugin.ts create mode 100644 src/plugins/home/public/application/_index.scss rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/application.tsx (90%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/__snapshots__/add_data.test.js.snap (92%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/__snapshots__/home.test.js.snap (89%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/__snapshots__/recently_accessed.test.js.snap (97%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/__snapshots__/sample_data_view_data_button.test.js.snap (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/__snapshots__/synopsis.test.js.snap (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/__snapshots__/welcome.test.tsx.snap (89%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/_add_data.scss (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/_home.scss (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/_index.scss (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/_sample_data_set_cards.scss (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/_synopsis.scss (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/_welcome.scss (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/add_data.js (87%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/add_data.test.js (95%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/feature_directory.js (88%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/home.js (93%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/home.test.js (97%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/home_app.js (96%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/recently_accessed.js (98%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/recently_accessed.test.js (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/sample_data/index.tsx (85%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/sample_data_set_card.js (84%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/sample_data_set_cards.js (93%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/sample_data_view_data_button.js (92%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/sample_data_view_data_button.test.js (97%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/synopsis.js (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/synopsis.test.js (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/__snapshots__/content.test.js.snap (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/__snapshots__/footer.test.js.snap (92%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/__snapshots__/instruction_set.test.js.snap (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/__snapshots__/introduction.test.js.snap (98%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/__snapshots__/saved_objects_installer.test.js.snap (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/__snapshots__/tutorial.test.js.snap (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/_tutorial.scss (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/content.js (94%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/content.test.js (95%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/footer.js (96%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/footer.test.js (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/instruction.js (97%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/instruction_set.js (93%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/instruction_set.test.js (98%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/introduction.js (94%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/introduction.test.js (97%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/number_parameter.js (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/parameter_form.js (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/replace_template_strings.js (92%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/saved_objects_installer.js (92%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/saved_objects_installer.test.js (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/status_check_states.js (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/string_parameter.js (100%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/tutorial.js (96%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial/tutorial.test.js (97%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/tutorial_directory.js (90%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/welcome.test.tsx (95%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/components/welcome.tsx (87%) rename src/{legacy/core_plugins/kibana/public/home => plugins/home/public/application}/index.ts (69%) rename src/{legacy/core_plugins/kibana/public/home => plugins/home/public/application}/kibana_services.ts (78%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/load_tutorials.js (91%) rename src/{legacy/core_plugins/kibana/public/home/np_ready => plugins/home/public/application}/sample_data_client.js (97%) rename src/{legacy/core_plugins => plugins}/kibana_react/public/markdown/__snapshots__/markdown.test.tsx.snap (100%) rename src/{legacy/core_plugins => plugins}/kibana_react/public/markdown/index.ts (100%) rename src/{legacy/core_plugins => plugins}/kibana_react/public/markdown/markdown.test.tsx (100%) rename src/{legacy/core_plugins => plugins}/kibana_react/public/markdown/markdown.tsx (100%) rename src/{legacy/core_plugins => plugins}/kibana_react/public/markdown/markdown_simple.tsx (100%) diff --git a/src/legacy/core_plugins/kibana/public/.eslintrc.js b/src/legacy/core_plugins/kibana/public/.eslintrc.js index b3ee0a8fa7b048..e7171a5291d26b 100644 --- a/src/legacy/core_plugins/kibana/public/.eslintrc.js +++ b/src/legacy/core_plugins/kibana/public/.eslintrc.js @@ -77,7 +77,7 @@ module.exports = { { basePath: path.resolve(__dirname, '../../../../../'), zones: topLevelRestricedZones.concat( - buildRestrictedPaths(['visualize', 'discover', 'dashboard', 'devTools', 'home']) + buildRestrictedPaths(['visualize', 'discover', 'dashboard', 'devTools']) ), }, ], diff --git a/src/legacy/core_plugins/kibana/public/home/_index.scss b/src/legacy/core_plugins/kibana/public/home/_index.scss deleted file mode 100644 index f42254c1096ce6..00000000000000 --- a/src/legacy/core_plugins/kibana/public/home/_index.scss +++ /dev/null @@ -1 +0,0 @@ -@import 'np_ready/components/index'; diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/home.test.mocks.ts b/src/legacy/core_plugins/kibana/public/home/np_ready/components/home.test.mocks.ts deleted file mode 100644 index a0b9d7c779b029..00000000000000 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/home.test.mocks.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 { - notificationServiceMock, - overlayServiceMock, - httpServiceMock, - injectedMetadataServiceMock, -} from '../../../../../../../core/public/mocks'; - -jest.doMock('ui/new_platform', () => { - return { - npSetup: { - core: { - notifications: notificationServiceMock.createSetupContract(), - }, - }, - npStart: { - core: { - overlays: overlayServiceMock.createStartContract(), - http: httpServiceMock.createStartContract({ basePath: 'path' }), - injectedMetadata: injectedMetadataServiceMock.createStartContract(), - }, - }, - }; -}); diff --git a/src/legacy/core_plugins/kibana/public/home/plugin.ts b/src/legacy/core_plugins/kibana/public/home/plugin.ts deleted file mode 100644 index f8c750cc802831..00000000000000 --- a/src/legacy/core_plugins/kibana/public/home/plugin.ts +++ /dev/null @@ -1,105 +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 { - AppMountParameters, - CoreSetup, - CoreStart, - Plugin, - PluginInitializerContext, -} from 'kibana/public'; - -import { DataPublicPluginStart } from 'src/plugins/data/public'; -import { TelemetryPluginStart } from 'src/plugins/telemetry/public'; -import { setServices } from './kibana_services'; -import { KibanaLegacySetup } from '../../../../../plugins/kibana_legacy/public'; -import { UsageCollectionSetup } from '../../../../../plugins/usage_collection/public'; -import { - Environment, - HomePublicPluginStart, - HomePublicPluginSetup, -} from '../../../../../plugins/home/public'; - -export interface HomePluginStartDependencies { - data: DataPublicPluginStart; - home: HomePublicPluginStart; - telemetry?: TelemetryPluginStart; -} - -export interface HomePluginSetupDependencies { - usageCollection: UsageCollectionSetup; - kibanaLegacy: KibanaLegacySetup; - home: HomePublicPluginSetup; -} - -export class HomePlugin implements Plugin { - private dataStart: DataPublicPluginStart | null = null; - private savedObjectsClient: any = null; - private environment: Environment | null = null; - private featureCatalogue: HomePublicPluginStart['featureCatalogue'] | null = null; - private telemetry?: TelemetryPluginStart; - - constructor(private initializerContext: PluginInitializerContext) {} - - setup( - core: CoreSetup<HomePluginStartDependencies>, - { home, kibanaLegacy, usageCollection }: HomePluginSetupDependencies - ) { - kibanaLegacy.registerLegacyApp({ - id: 'home', - title: 'Home', - mount: async (params: AppMountParameters) => { - const trackUiMetric = usageCollection.reportUiStats.bind(usageCollection, 'Kibana_home'); - const [coreStart, { home: homeStart }] = await core.getStartServices(); - setServices({ - trackUiMetric, - kibanaVersion: this.initializerContext.env.packageInfo.version, - http: coreStart.http, - toastNotifications: core.notifications.toasts, - banners: coreStart.overlays.banners, - docLinks: coreStart.docLinks, - savedObjectsClient: this.savedObjectsClient!, - chrome: coreStart.chrome, - telemetry: this.telemetry, - uiSettings: core.uiSettings, - addBasePath: core.http.basePath.prepend, - getBasePath: core.http.basePath.get, - indexPatternService: this.dataStart!.indexPatterns, - environment: this.environment!, - config: kibanaLegacy.config, - homeConfig: home.config, - tutorialVariables: homeStart.tutorials.get, - featureCatalogue: this.featureCatalogue!, - }); - const { renderApp } = await import('./np_ready/application'); - return await renderApp(params.element); - }, - }); - } - - start(core: CoreStart, { data, home, telemetry }: HomePluginStartDependencies) { - this.environment = home.environment.get(); - this.featureCatalogue = home.featureCatalogue; - this.dataStart = data; - this.telemetry = telemetry; - this.savedObjectsClient = core.savedObjects.client; - } - - stop() {} -} diff --git a/src/legacy/core_plugins/kibana/public/index.scss b/src/legacy/core_plugins/kibana/public/index.scss index 3eef84c32db790..547f44652cf2b1 100644 --- a/src/legacy/core_plugins/kibana/public/index.scss +++ b/src/legacy/core_plugins/kibana/public/index.scss @@ -13,15 +13,15 @@ // Discover styles @import 'discover/index'; -// Home styles -@import './home/index'; - // Visualize styles @import './visualize/index'; // Has to come after visualize because of some // bad cascading in the Editor layout @import 'src/legacy/ui/public/vis/index'; +// Home styles +@import '../../../../plugins/home/public/application/index'; + // Management styles @import './management/index'; diff --git a/src/legacy/core_plugins/kibana/public/kibana.js b/src/legacy/core_plugins/kibana/public/kibana.js index a9f32949628e98..04eaf2cbe26790 100644 --- a/src/legacy/core_plugins/kibana/public/kibana.js +++ b/src/legacy/core_plugins/kibana/public/kibana.js @@ -42,7 +42,6 @@ import 'uiExports/shareContextMenuExtensions'; import 'uiExports/interpreter'; import 'ui/autoload/all'; -import './home'; import './discover/legacy'; import './visualize/legacy'; import './dashboard/legacy'; diff --git a/src/legacy/core_plugins/kibana_react/index.ts b/src/legacy/core_plugins/kibana_react/index.ts index eb936b94c37efc..f4083f3d50c347 100644 --- a/src/legacy/core_plugins/kibana_react/index.ts +++ b/src/legacy/core_plugins/kibana_react/index.ts @@ -25,7 +25,6 @@ export default function DataPlugin(kibana: any) { const config: Legacy.PluginSpecOptions = { id: 'kibana_react', require: [], - publicDir: resolve(__dirname, 'public'), config: (Joi: any) => { return Joi.object({ enabled: Joi.boolean().default(true), diff --git a/src/legacy/core_plugins/kibana_react/public/index.ts b/src/legacy/core_plugins/kibana_react/public/index.ts index 7e68b6c3886ffc..a6a7cb72a8dee9 100644 --- a/src/legacy/core_plugins/kibana_react/public/index.ts +++ b/src/legacy/core_plugins/kibana_react/public/index.ts @@ -17,10 +17,4 @@ * under the License. */ -// TODO these are imports from the old plugin world. -// Once the new platform is ready, they can get removed -// and handled by the platform itself in the setup method -// of the ExpressionExectorService - -/** @public types */ -export { Markdown, MarkdownSimple } from './markdown'; +export { Markdown, MarkdownSimple } from '../../../../plugins/kibana_react/public'; diff --git a/src/legacy/ui/public/new_platform/new_platform.karma_mock.js b/src/legacy/ui/public/new_platform/new_platform.karma_mock.js index 75f48beb140a2c..89617c20a31b7f 100644 --- a/src/legacy/ui/public/new_platform/new_platform.karma_mock.js +++ b/src/legacy/ui/public/new_platform/new_platform.karma_mock.js @@ -213,6 +213,9 @@ export const npSetup = { config: { disableWelcomeScreen: false, }, + tutorials: { + setVariable: sinon.fake(), + }, }, charts: { theme: { @@ -381,18 +384,6 @@ export const npStart = { getTriggerActions: sinon.fake(), getTriggerCompatibleActions: sinon.fake(), }, - home: { - featureCatalogue: { - get: sinon.fake(), - register: sinon.fake(), - }, - environment: { - get: sinon.fake(), - }, - config: { - disableWelcomeScreen: false, - }, - }, navigation: { ui: { TopNavMenu: mockComponent, diff --git a/src/legacy/ui/public/new_platform/new_platform.ts b/src/legacy/ui/public/new_platform/new_platform.ts index 00d76bc3413222..c5369b00f9f762 100644 --- a/src/legacy/ui/public/new_platform/new_platform.ts +++ b/src/legacy/ui/public/new_platform/new_platform.ts @@ -37,7 +37,7 @@ import { import { ChartsPluginSetup, ChartsPluginStart } from '../../../../plugins/charts/public'; import { DevToolsSetup, DevToolsStart } from '../../../../plugins/dev_tools/public'; import { KibanaLegacySetup, KibanaLegacyStart } from '../../../../plugins/kibana_legacy/public'; -import { HomePublicPluginSetup, HomePublicPluginStart } from '../../../../plugins/home/public'; +import { HomePublicPluginSetup } from '../../../../plugins/home/public'; import { SharePluginSetup, SharePluginStart } from '../../../../plugins/share/public'; import { AdvancedSettingsSetup, @@ -79,7 +79,6 @@ export interface PluginsStart { data: ReturnType<DataPlugin['start']>; embeddable: IEmbeddableStart; expressions: ReturnType<ExpressionsPlugin['start']>; - home: HomePublicPluginStart; inspector: InspectorStart; uiActions: UiActionsStart; navigation: NavigationPublicPluginStart; diff --git a/src/legacy/ui/public/url/redirect_when_missing.js b/src/legacy/ui/public/url/redirect_when_missing.js index 38938b18e7f3e7..e6b4a488160dde 100644 --- a/src/legacy/ui/public/url/redirect_when_missing.js +++ b/src/legacy/ui/public/url/redirect_when_missing.js @@ -19,7 +19,7 @@ import React from 'react'; import { i18n } from '@kbn/i18n'; -import { MarkdownSimple } from '../../../core_plugins/kibana_react/public/markdown'; +import { MarkdownSimple } from '../../../../plugins/kibana_react/public'; import { toastNotifications } from 'ui/notify'; import { SavedObjectNotFound } from '../../../../plugins/kibana_utils/public'; import { uiModules } from '../modules'; diff --git a/src/plugins/home/kibana.json b/src/plugins/home/kibana.json index 31e7ebc138dcb9..d5b047924f599e 100644 --- a/src/plugins/home/kibana.json +++ b/src/plugins/home/kibana.json @@ -3,5 +3,6 @@ "version": "kibana", "server": true, "ui": true, - "optionalPlugins": ["usage_collection"] + "requiredPlugins": ["data", "kibanaLegacy"], + "optionalPlugins": ["usage_collection", "telemetry"] } diff --git a/src/plugins/home/public/application/_index.scss b/src/plugins/home/public/application/_index.scss new file mode 100644 index 00000000000000..841415620d6917 --- /dev/null +++ b/src/plugins/home/public/application/_index.scss @@ -0,0 +1 @@ +@import 'components/index'; diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/application.tsx b/src/plugins/home/public/application/application.tsx similarity index 90% rename from src/legacy/core_plugins/kibana/public/home/np_ready/application.tsx rename to src/plugins/home/public/application/application.tsx index 578d1f0a766a5b..fb45919a9732a2 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/application.tsx +++ b/src/plugins/home/public/application/application.tsx @@ -22,10 +22,10 @@ import { render, unmountComponentAtNode } from 'react-dom'; import { i18n } from '@kbn/i18n'; // @ts-ignore import { HomeApp } from './components/home_app'; -import { getServices } from '../kibana_services'; +import { getServices } from './kibana_services'; export const renderApp = async (element: HTMLElement) => { - const homeTitle = i18n.translate('kbn.home.breadcrumbs.homeTitle', { defaultMessage: 'Home' }); + const homeTitle = i18n.translate('home.breadcrumbs.homeTitle', { defaultMessage: 'Home' }); const { featureCatalogue, chrome } = getServices(); // all the directories could be get in "start" phase of plugin after all of the legacy plugins will be moved to a NP diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/add_data.test.js.snap b/src/plugins/home/public/application/components/__snapshots__/add_data.test.js.snap similarity index 92% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/add_data.test.js.snap rename to src/plugins/home/public/application/components/__snapshots__/add_data.test.js.snap index fcc7e75276154f..57cbe0f17498fd 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/add_data.test.js.snap +++ b/src/plugins/home/public/application/components/__snapshots__/add_data.test.js.snap @@ -41,7 +41,7 @@ exports[`apmUiEnabled 1`] = ` <h2> <FormattedMessage defaultMessage="Observability" - id="kbn.home.addData.title.observability" + id="home.addData.title.observability" values={Object {}} /> </h2> @@ -77,7 +77,7 @@ exports[`apmUiEnabled 1`] = ` > <FormattedMessage defaultMessage="Add APM" - id="kbn.home.addData.apm.addApmButtonLabel" + id="home.addData.apm.addApmButtonLabel" values={Object {}} /> </EuiButton> @@ -108,7 +108,7 @@ exports[`apmUiEnabled 1`] = ` > <FormattedMessage defaultMessage="Add log data" - id="kbn.home.addData.logging.addLogDataButtonLabel" + id="home.addData.logging.addLogDataButtonLabel" values={Object {}} /> </EuiButton> @@ -139,7 +139,7 @@ exports[`apmUiEnabled 1`] = ` > <FormattedMessage defaultMessage="Add metric data" - id="kbn.home.addData.metrics.addMetricsDataButtonLabel" + id="home.addData.metrics.addMetricsDataButtonLabel" values={Object {}} /> </EuiButton> @@ -178,7 +178,7 @@ exports[`apmUiEnabled 1`] = ` <h2> <FormattedMessage defaultMessage="Security" - id="kbn.home.addData.title.security" + id="home.addData.title.security" values={Object {}} /> </h2> @@ -205,7 +205,7 @@ exports[`apmUiEnabled 1`] = ` > <FormattedMessage defaultMessage="Add events" - id="kbn.home.addData.siem.addSiemEventsButtonLabel" + id="home.addData.siem.addSiemEventsButtonLabel" values={Object {}} /> </EuiButton> @@ -235,7 +235,7 @@ exports[`apmUiEnabled 1`] = ` > <FormattedMessage defaultMessage="Add sample data" - id="kbn.home.addData.sampleDataTitle" + id="home.addData.sampleDataTitle" values={Object {}} /> </strong> @@ -250,7 +250,7 @@ exports[`apmUiEnabled 1`] = ` > <FormattedMessage defaultMessage="Load a data set and a Kibana dashboard" - id="kbn.home.addData.sampleDataLink" + id="home.addData.sampleDataLink" values={Object {}} /> </EuiLink> @@ -271,7 +271,7 @@ exports[`apmUiEnabled 1`] = ` > <FormattedMessage defaultMessage="Use Elasticsearch data" - id="kbn.home.addData.yourDataTitle" + id="home.addData.yourDataTitle" values={Object {}} /> </strong> @@ -286,7 +286,7 @@ exports[`apmUiEnabled 1`] = ` > <FormattedMessage defaultMessage="Connect to your Elasticsearch index" - id="kbn.home.addData.yourDataLink" + id="home.addData.yourDataLink" values={Object {}} /> </EuiLink> @@ -337,7 +337,7 @@ exports[`isNewKibanaInstance 1`] = ` <h2> <FormattedMessage defaultMessage="Observability" - id="kbn.home.addData.title.observability" + id="home.addData.title.observability" values={Object {}} /> </h2> @@ -373,7 +373,7 @@ exports[`isNewKibanaInstance 1`] = ` > <FormattedMessage defaultMessage="Add log data" - id="kbn.home.addData.logging.addLogDataButtonLabel" + id="home.addData.logging.addLogDataButtonLabel" values={Object {}} /> </EuiButton> @@ -404,7 +404,7 @@ exports[`isNewKibanaInstance 1`] = ` > <FormattedMessage defaultMessage="Add metric data" - id="kbn.home.addData.metrics.addMetricsDataButtonLabel" + id="home.addData.metrics.addMetricsDataButtonLabel" values={Object {}} /> </EuiButton> @@ -443,7 +443,7 @@ exports[`isNewKibanaInstance 1`] = ` <h2> <FormattedMessage defaultMessage="Security" - id="kbn.home.addData.title.security" + id="home.addData.title.security" values={Object {}} /> </h2> @@ -470,7 +470,7 @@ exports[`isNewKibanaInstance 1`] = ` > <FormattedMessage defaultMessage="Add events" - id="kbn.home.addData.siem.addSiemEventsButtonLabel" + id="home.addData.siem.addSiemEventsButtonLabel" values={Object {}} /> </EuiButton> @@ -500,7 +500,7 @@ exports[`isNewKibanaInstance 1`] = ` > <FormattedMessage defaultMessage="Add sample data" - id="kbn.home.addData.sampleDataTitle" + id="home.addData.sampleDataTitle" values={Object {}} /> </strong> @@ -515,7 +515,7 @@ exports[`isNewKibanaInstance 1`] = ` > <FormattedMessage defaultMessage="Load a data set and a Kibana dashboard" - id="kbn.home.addData.sampleDataLink" + id="home.addData.sampleDataLink" values={Object {}} /> </EuiLink> @@ -536,7 +536,7 @@ exports[`isNewKibanaInstance 1`] = ` > <FormattedMessage defaultMessage="Use Elasticsearch data" - id="kbn.home.addData.yourDataTitle" + id="home.addData.yourDataTitle" values={Object {}} /> </strong> @@ -551,7 +551,7 @@ exports[`isNewKibanaInstance 1`] = ` > <FormattedMessage defaultMessage="Connect to your Elasticsearch index" - id="kbn.home.addData.yourDataLink" + id="home.addData.yourDataLink" values={Object {}} /> </EuiLink> @@ -602,7 +602,7 @@ exports[`mlEnabled 1`] = ` <h2> <FormattedMessage defaultMessage="Observability" - id="kbn.home.addData.title.observability" + id="home.addData.title.observability" values={Object {}} /> </h2> @@ -638,7 +638,7 @@ exports[`mlEnabled 1`] = ` > <FormattedMessage defaultMessage="Add APM" - id="kbn.home.addData.apm.addApmButtonLabel" + id="home.addData.apm.addApmButtonLabel" values={Object {}} /> </EuiButton> @@ -669,7 +669,7 @@ exports[`mlEnabled 1`] = ` > <FormattedMessage defaultMessage="Add log data" - id="kbn.home.addData.logging.addLogDataButtonLabel" + id="home.addData.logging.addLogDataButtonLabel" values={Object {}} /> </EuiButton> @@ -700,7 +700,7 @@ exports[`mlEnabled 1`] = ` > <FormattedMessage defaultMessage="Add metric data" - id="kbn.home.addData.metrics.addMetricsDataButtonLabel" + id="home.addData.metrics.addMetricsDataButtonLabel" values={Object {}} /> </EuiButton> @@ -739,7 +739,7 @@ exports[`mlEnabled 1`] = ` <h2> <FormattedMessage defaultMessage="Security" - id="kbn.home.addData.title.security" + id="home.addData.title.security" values={Object {}} /> </h2> @@ -766,7 +766,7 @@ exports[`mlEnabled 1`] = ` > <FormattedMessage defaultMessage="Add events" - id="kbn.home.addData.siem.addSiemEventsButtonLabel" + id="home.addData.siem.addSiemEventsButtonLabel" values={Object {}} /> </EuiButton> @@ -796,7 +796,7 @@ exports[`mlEnabled 1`] = ` > <FormattedMessage defaultMessage="Add sample data" - id="kbn.home.addData.sampleDataTitle" + id="home.addData.sampleDataTitle" values={Object {}} /> </strong> @@ -811,7 +811,7 @@ exports[`mlEnabled 1`] = ` > <FormattedMessage defaultMessage="Load a data set and a Kibana dashboard" - id="kbn.home.addData.sampleDataLink" + id="home.addData.sampleDataLink" values={Object {}} /> </EuiLink> @@ -832,7 +832,7 @@ exports[`mlEnabled 1`] = ` > <FormattedMessage defaultMessage="Upload data from log file" - id="kbn.home.addData.uploadFileTitle" + id="home.addData.uploadFileTitle" values={Object {}} /> </strong> @@ -847,7 +847,7 @@ exports[`mlEnabled 1`] = ` > <FormattedMessage defaultMessage="Import a CSV, NDJSON, or log file" - id="kbn.home.addData.uploadFileLink" + id="home.addData.uploadFileLink" values={Object {}} /> </EuiLink> @@ -868,7 +868,7 @@ exports[`mlEnabled 1`] = ` > <FormattedMessage defaultMessage="Use Elasticsearch data" - id="kbn.home.addData.yourDataTitle" + id="home.addData.yourDataTitle" values={Object {}} /> </strong> @@ -883,7 +883,7 @@ exports[`mlEnabled 1`] = ` > <FormattedMessage defaultMessage="Connect to your Elasticsearch index" - id="kbn.home.addData.yourDataLink" + id="home.addData.yourDataLink" values={Object {}} /> </EuiLink> @@ -934,7 +934,7 @@ exports[`render 1`] = ` <h2> <FormattedMessage defaultMessage="Observability" - id="kbn.home.addData.title.observability" + id="home.addData.title.observability" values={Object {}} /> </h2> @@ -970,7 +970,7 @@ exports[`render 1`] = ` > <FormattedMessage defaultMessage="Add log data" - id="kbn.home.addData.logging.addLogDataButtonLabel" + id="home.addData.logging.addLogDataButtonLabel" values={Object {}} /> </EuiButton> @@ -1001,7 +1001,7 @@ exports[`render 1`] = ` > <FormattedMessage defaultMessage="Add metric data" - id="kbn.home.addData.metrics.addMetricsDataButtonLabel" + id="home.addData.metrics.addMetricsDataButtonLabel" values={Object {}} /> </EuiButton> @@ -1040,7 +1040,7 @@ exports[`render 1`] = ` <h2> <FormattedMessage defaultMessage="Security" - id="kbn.home.addData.title.security" + id="home.addData.title.security" values={Object {}} /> </h2> @@ -1067,7 +1067,7 @@ exports[`render 1`] = ` > <FormattedMessage defaultMessage="Add events" - id="kbn.home.addData.siem.addSiemEventsButtonLabel" + id="home.addData.siem.addSiemEventsButtonLabel" values={Object {}} /> </EuiButton> @@ -1097,7 +1097,7 @@ exports[`render 1`] = ` > <FormattedMessage defaultMessage="Add sample data" - id="kbn.home.addData.sampleDataTitle" + id="home.addData.sampleDataTitle" values={Object {}} /> </strong> @@ -1112,7 +1112,7 @@ exports[`render 1`] = ` > <FormattedMessage defaultMessage="Load a data set and a Kibana dashboard" - id="kbn.home.addData.sampleDataLink" + id="home.addData.sampleDataLink" values={Object {}} /> </EuiLink> @@ -1133,7 +1133,7 @@ exports[`render 1`] = ` > <FormattedMessage defaultMessage="Use Elasticsearch data" - id="kbn.home.addData.yourDataTitle" + id="home.addData.yourDataTitle" values={Object {}} /> </strong> @@ -1148,7 +1148,7 @@ exports[`render 1`] = ` > <FormattedMessage defaultMessage="Connect to your Elasticsearch index" - id="kbn.home.addData.yourDataLink" + id="home.addData.yourDataLink" values={Object {}} /> </EuiLink> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/home.test.js.snap b/src/plugins/home/public/application/components/__snapshots__/home.test.js.snap similarity index 89% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/home.test.js.snap rename to src/plugins/home/public/application/components/__snapshots__/home.test.js.snap index 9d27362e627394..60762e44343dcc 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/home.test.js.snap +++ b/src/plugins/home/public/application/components/__snapshots__/home.test.js.snap @@ -12,7 +12,7 @@ exports[`home directories should not render directory entry when showOnHomePage <h1> <FormattedMessage defaultMessage="Kibana home" - id="kbn.home.welcomeHomePageHeader" + id="home.welcomeHomePageHeader" values={Object {}} /> </h1> @@ -36,7 +36,7 @@ exports[`home directories should not render directory entry when showOnHomePage <h2> <FormattedMessage defaultMessage="Visualize and Explore Data" - id="kbn.home.directories.visualize.nameTitle" + id="home.directories.visualize.nameTitle" values={Object {}} /> </h2> @@ -60,7 +60,7 @@ exports[`home directories should not render directory entry when showOnHomePage <h2> <FormattedMessage defaultMessage="Manage and Administer the Elastic Stack" - id="kbn.home.directories.manage.nameTitle" + id="home.directories.manage.nameTitle" values={Object {}} /> </h2> @@ -91,7 +91,7 @@ exports[`home directories should not render directory entry when showOnHomePage <p> <FormattedMessage defaultMessage="Didn’t find what you were looking for?" - id="kbn.home.directories.notFound.description" + id="home.directories.notFound.description" values={Object {}} /> </p> @@ -104,7 +104,7 @@ exports[`home directories should not render directory entry when showOnHomePage > <FormattedMessage defaultMessage="View full directory of Kibana plugins" - id="kbn.home.directories.notFound.viewFullButtonLabel" + id="home.directories.notFound.viewFullButtonLabel" values={Object {}} /> </EuiButton> @@ -126,7 +126,7 @@ exports[`home directories should render ADMIN directory entry in "Manage" panel <h1> <FormattedMessage defaultMessage="Kibana home" - id="kbn.home.welcomeHomePageHeader" + id="home.welcomeHomePageHeader" values={Object {}} /> </h1> @@ -150,7 +150,7 @@ exports[`home directories should render ADMIN directory entry in "Manage" panel <h2> <FormattedMessage defaultMessage="Visualize and Explore Data" - id="kbn.home.directories.visualize.nameTitle" + id="home.directories.visualize.nameTitle" values={Object {}} /> </h2> @@ -174,7 +174,7 @@ exports[`home directories should render ADMIN directory entry in "Manage" panel <h2> <FormattedMessage defaultMessage="Manage and Administer the Elastic Stack" - id="kbn.home.directories.manage.nameTitle" + id="home.directories.manage.nameTitle" values={Object {}} /> </h2> @@ -218,7 +218,7 @@ exports[`home directories should render ADMIN directory entry in "Manage" panel <p> <FormattedMessage defaultMessage="Didn’t find what you were looking for?" - id="kbn.home.directories.notFound.description" + id="home.directories.notFound.description" values={Object {}} /> </p> @@ -231,7 +231,7 @@ exports[`home directories should render ADMIN directory entry in "Manage" panel > <FormattedMessage defaultMessage="View full directory of Kibana plugins" - id="kbn.home.directories.notFound.viewFullButtonLabel" + id="home.directories.notFound.viewFullButtonLabel" values={Object {}} /> </EuiButton> @@ -253,7 +253,7 @@ exports[`home directories should render DATA directory entry in "Explore Data" p <h1> <FormattedMessage defaultMessage="Kibana home" - id="kbn.home.welcomeHomePageHeader" + id="home.welcomeHomePageHeader" values={Object {}} /> </h1> @@ -277,7 +277,7 @@ exports[`home directories should render DATA directory entry in "Explore Data" p <h2> <FormattedMessage defaultMessage="Visualize and Explore Data" - id="kbn.home.directories.visualize.nameTitle" + id="home.directories.visualize.nameTitle" values={Object {}} /> </h2> @@ -314,7 +314,7 @@ exports[`home directories should render DATA directory entry in "Explore Data" p <h2> <FormattedMessage defaultMessage="Manage and Administer the Elastic Stack" - id="kbn.home.directories.manage.nameTitle" + id="home.directories.manage.nameTitle" values={Object {}} /> </h2> @@ -345,7 +345,7 @@ exports[`home directories should render DATA directory entry in "Explore Data" p <p> <FormattedMessage defaultMessage="Didn’t find what you were looking for?" - id="kbn.home.directories.notFound.description" + id="home.directories.notFound.description" values={Object {}} /> </p> @@ -358,7 +358,7 @@ exports[`home directories should render DATA directory entry in "Explore Data" p > <FormattedMessage defaultMessage="View full directory of Kibana plugins" - id="kbn.home.directories.notFound.viewFullButtonLabel" + id="home.directories.notFound.viewFullButtonLabel" values={Object {}} /> </EuiButton> @@ -380,7 +380,7 @@ exports[`home isNewKibanaInstance should safely handle execeptions 1`] = ` <h1> <FormattedMessage defaultMessage="Kibana home" - id="kbn.home.welcomeHomePageHeader" + id="home.welcomeHomePageHeader" values={Object {}} /> </h1> @@ -404,7 +404,7 @@ exports[`home isNewKibanaInstance should safely handle execeptions 1`] = ` <h2> <FormattedMessage defaultMessage="Visualize and Explore Data" - id="kbn.home.directories.visualize.nameTitle" + id="home.directories.visualize.nameTitle" values={Object {}} /> </h2> @@ -428,7 +428,7 @@ exports[`home isNewKibanaInstance should safely handle execeptions 1`] = ` <h2> <FormattedMessage defaultMessage="Manage and Administer the Elastic Stack" - id="kbn.home.directories.manage.nameTitle" + id="home.directories.manage.nameTitle" values={Object {}} /> </h2> @@ -459,7 +459,7 @@ exports[`home isNewKibanaInstance should safely handle execeptions 1`] = ` <p> <FormattedMessage defaultMessage="Didn’t find what you were looking for?" - id="kbn.home.directories.notFound.description" + id="home.directories.notFound.description" values={Object {}} /> </p> @@ -472,7 +472,7 @@ exports[`home isNewKibanaInstance should safely handle execeptions 1`] = ` > <FormattedMessage defaultMessage="View full directory of Kibana plugins" - id="kbn.home.directories.notFound.viewFullButtonLabel" + id="home.directories.notFound.viewFullButtonLabel" values={Object {}} /> </EuiButton> @@ -494,7 +494,7 @@ exports[`home isNewKibanaInstance should set isNewKibanaInstance to false when t <h1> <FormattedMessage defaultMessage="Kibana home" - id="kbn.home.welcomeHomePageHeader" + id="home.welcomeHomePageHeader" values={Object {}} /> </h1> @@ -518,7 +518,7 @@ exports[`home isNewKibanaInstance should set isNewKibanaInstance to false when t <h2> <FormattedMessage defaultMessage="Visualize and Explore Data" - id="kbn.home.directories.visualize.nameTitle" + id="home.directories.visualize.nameTitle" values={Object {}} /> </h2> @@ -542,7 +542,7 @@ exports[`home isNewKibanaInstance should set isNewKibanaInstance to false when t <h2> <FormattedMessage defaultMessage="Manage and Administer the Elastic Stack" - id="kbn.home.directories.manage.nameTitle" + id="home.directories.manage.nameTitle" values={Object {}} /> </h2> @@ -573,7 +573,7 @@ exports[`home isNewKibanaInstance should set isNewKibanaInstance to false when t <p> <FormattedMessage defaultMessage="Didn’t find what you were looking for?" - id="kbn.home.directories.notFound.description" + id="home.directories.notFound.description" values={Object {}} /> </p> @@ -586,7 +586,7 @@ exports[`home isNewKibanaInstance should set isNewKibanaInstance to false when t > <FormattedMessage defaultMessage="View full directory of Kibana plugins" - id="kbn.home.directories.notFound.viewFullButtonLabel" + id="home.directories.notFound.viewFullButtonLabel" values={Object {}} /> </EuiButton> @@ -608,7 +608,7 @@ exports[`home isNewKibanaInstance should set isNewKibanaInstance to true when th <h1> <FormattedMessage defaultMessage="Kibana home" - id="kbn.home.welcomeHomePageHeader" + id="home.welcomeHomePageHeader" values={Object {}} /> </h1> @@ -632,7 +632,7 @@ exports[`home isNewKibanaInstance should set isNewKibanaInstance to true when th <h2> <FormattedMessage defaultMessage="Visualize and Explore Data" - id="kbn.home.directories.visualize.nameTitle" + id="home.directories.visualize.nameTitle" values={Object {}} /> </h2> @@ -656,7 +656,7 @@ exports[`home isNewKibanaInstance should set isNewKibanaInstance to true when th <h2> <FormattedMessage defaultMessage="Manage and Administer the Elastic Stack" - id="kbn.home.directories.manage.nameTitle" + id="home.directories.manage.nameTitle" values={Object {}} /> </h2> @@ -687,7 +687,7 @@ exports[`home isNewKibanaInstance should set isNewKibanaInstance to true when th <p> <FormattedMessage defaultMessage="Didn’t find what you were looking for?" - id="kbn.home.directories.notFound.description" + id="home.directories.notFound.description" values={Object {}} /> </p> @@ -700,7 +700,7 @@ exports[`home isNewKibanaInstance should set isNewKibanaInstance to true when th > <FormattedMessage defaultMessage="View full directory of Kibana plugins" - id="kbn.home.directories.notFound.viewFullButtonLabel" + id="home.directories.notFound.viewFullButtonLabel" values={Object {}} /> </EuiButton> @@ -722,7 +722,7 @@ exports[`home should render home component 1`] = ` <h1> <FormattedMessage defaultMessage="Kibana home" - id="kbn.home.welcomeHomePageHeader" + id="home.welcomeHomePageHeader" values={Object {}} /> </h1> @@ -746,7 +746,7 @@ exports[`home should render home component 1`] = ` <h2> <FormattedMessage defaultMessage="Visualize and Explore Data" - id="kbn.home.directories.visualize.nameTitle" + id="home.directories.visualize.nameTitle" values={Object {}} /> </h2> @@ -770,7 +770,7 @@ exports[`home should render home component 1`] = ` <h2> <FormattedMessage defaultMessage="Manage and Administer the Elastic Stack" - id="kbn.home.directories.manage.nameTitle" + id="home.directories.manage.nameTitle" values={Object {}} /> </h2> @@ -801,7 +801,7 @@ exports[`home should render home component 1`] = ` <p> <FormattedMessage defaultMessage="Didn’t find what you were looking for?" - id="kbn.home.directories.notFound.description" + id="home.directories.notFound.description" values={Object {}} /> </p> @@ -814,7 +814,7 @@ exports[`home should render home component 1`] = ` > <FormattedMessage defaultMessage="View full directory of Kibana plugins" - id="kbn.home.directories.notFound.viewFullButtonLabel" + id="home.directories.notFound.viewFullButtonLabel" values={Object {}} /> </EuiButton> @@ -836,7 +836,7 @@ exports[`home welcome should show the normal home page if loading fails 1`] = ` <h1> <FormattedMessage defaultMessage="Kibana home" - id="kbn.home.welcomeHomePageHeader" + id="home.welcomeHomePageHeader" values={Object {}} /> </h1> @@ -860,7 +860,7 @@ exports[`home welcome should show the normal home page if loading fails 1`] = ` <h2> <FormattedMessage defaultMessage="Visualize and Explore Data" - id="kbn.home.directories.visualize.nameTitle" + id="home.directories.visualize.nameTitle" values={Object {}} /> </h2> @@ -884,7 +884,7 @@ exports[`home welcome should show the normal home page if loading fails 1`] = ` <h2> <FormattedMessage defaultMessage="Manage and Administer the Elastic Stack" - id="kbn.home.directories.manage.nameTitle" + id="home.directories.manage.nameTitle" values={Object {}} /> </h2> @@ -915,7 +915,7 @@ exports[`home welcome should show the normal home page if loading fails 1`] = ` <p> <FormattedMessage defaultMessage="Didn’t find what you were looking for?" - id="kbn.home.directories.notFound.description" + id="home.directories.notFound.description" values={Object {}} /> </p> @@ -928,7 +928,7 @@ exports[`home welcome should show the normal home page if loading fails 1`] = ` > <FormattedMessage defaultMessage="View full directory of Kibana plugins" - id="kbn.home.directories.notFound.viewFullButtonLabel" + id="home.directories.notFound.viewFullButtonLabel" values={Object {}} /> </EuiButton> @@ -950,7 +950,7 @@ exports[`home welcome should show the normal home page if welcome screen is disa <h1> <FormattedMessage defaultMessage="Kibana home" - id="kbn.home.welcomeHomePageHeader" + id="home.welcomeHomePageHeader" values={Object {}} /> </h1> @@ -974,7 +974,7 @@ exports[`home welcome should show the normal home page if welcome screen is disa <h2> <FormattedMessage defaultMessage="Visualize and Explore Data" - id="kbn.home.directories.visualize.nameTitle" + id="home.directories.visualize.nameTitle" values={Object {}} /> </h2> @@ -998,7 +998,7 @@ exports[`home welcome should show the normal home page if welcome screen is disa <h2> <FormattedMessage defaultMessage="Manage and Administer the Elastic Stack" - id="kbn.home.directories.manage.nameTitle" + id="home.directories.manage.nameTitle" values={Object {}} /> </h2> @@ -1029,7 +1029,7 @@ exports[`home welcome should show the normal home page if welcome screen is disa <p> <FormattedMessage defaultMessage="Didn’t find what you were looking for?" - id="kbn.home.directories.notFound.description" + id="home.directories.notFound.description" values={Object {}} /> </p> @@ -1042,7 +1042,7 @@ exports[`home welcome should show the normal home page if welcome screen is disa > <FormattedMessage defaultMessage="View full directory of Kibana plugins" - id="kbn.home.directories.notFound.viewFullButtonLabel" + id="home.directories.notFound.viewFullButtonLabel" values={Object {}} /> </EuiButton> @@ -1071,7 +1071,7 @@ exports[`home welcome stores skip welcome setting if skipped 1`] = ` <h1> <FormattedMessage defaultMessage="Kibana home" - id="kbn.home.welcomeHomePageHeader" + id="home.welcomeHomePageHeader" values={Object {}} /> </h1> @@ -1095,7 +1095,7 @@ exports[`home welcome stores skip welcome setting if skipped 1`] = ` <h2> <FormattedMessage defaultMessage="Visualize and Explore Data" - id="kbn.home.directories.visualize.nameTitle" + id="home.directories.visualize.nameTitle" values={Object {}} /> </h2> @@ -1119,7 +1119,7 @@ exports[`home welcome stores skip welcome setting if skipped 1`] = ` <h2> <FormattedMessage defaultMessage="Manage and Administer the Elastic Stack" - id="kbn.home.directories.manage.nameTitle" + id="home.directories.manage.nameTitle" values={Object {}} /> </h2> @@ -1150,7 +1150,7 @@ exports[`home welcome stores skip welcome setting if skipped 1`] = ` <p> <FormattedMessage defaultMessage="Didn’t find what you were looking for?" - id="kbn.home.directories.notFound.description" + id="home.directories.notFound.description" values={Object {}} /> </p> @@ -1163,7 +1163,7 @@ exports[`home welcome stores skip welcome setting if skipped 1`] = ` > <FormattedMessage defaultMessage="View full directory of Kibana plugins" - id="kbn.home.directories.notFound.viewFullButtonLabel" + id="home.directories.notFound.viewFullButtonLabel" values={Object {}} /> </EuiButton> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/recently_accessed.test.js.snap b/src/plugins/home/public/application/components/__snapshots__/recently_accessed.test.js.snap similarity index 97% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/recently_accessed.test.js.snap rename to src/plugins/home/public/application/components/__snapshots__/recently_accessed.test.js.snap index 5fa1305a9c7e19..c9fd411ab6070f 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/recently_accessed.test.js.snap +++ b/src/plugins/home/public/application/components/__snapshots__/recently_accessed.test.js.snap @@ -13,7 +13,7 @@ exports[`render 1`] = ` > <FormattedMessage defaultMessage="Recently viewed" - id="kbn.home.recentlyAccessed.recentlyViewedTitle" + id="home.recentlyAccessed.recentlyViewedTitle" values={Object {}} /> </EuiTextColor> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/sample_data_view_data_button.test.js.snap b/src/plugins/home/public/application/components/__snapshots__/sample_data_view_data_button.test.js.snap similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/sample_data_view_data_button.test.js.snap rename to src/plugins/home/public/application/components/__snapshots__/sample_data_view_data_button.test.js.snap diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/synopsis.test.js.snap b/src/plugins/home/public/application/components/__snapshots__/synopsis.test.js.snap similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/synopsis.test.js.snap rename to src/plugins/home/public/application/components/__snapshots__/synopsis.test.js.snap diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/welcome.test.tsx.snap b/src/plugins/home/public/application/components/__snapshots__/welcome.test.tsx.snap similarity index 89% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/welcome.test.tsx.snap rename to src/plugins/home/public/application/components/__snapshots__/welcome.test.tsx.snap index df7cc7bcbaed06..87e0b13866897c 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/__snapshots__/welcome.test.tsx.snap +++ b/src/plugins/home/public/application/components/__snapshots__/welcome.test.tsx.snap @@ -29,7 +29,7 @@ exports[`should render a Welcome screen with no telemetry disclaimer 1`] = ` <h1> <FormattedMessage defaultMessage="Welcome to Kibana" - id="kbn.home.welcomeTitle" + id="home.welcomeTitle" values={Object {}} /> </h1> @@ -42,7 +42,7 @@ exports[`should render a Welcome screen with no telemetry disclaimer 1`] = ` <p> <FormattedMessage defaultMessage="Your window into the Elastic Stack" - id="kbn.home.welcomeDescription" + id="home.welcomeDescription" values={Object {}} /> </p> @@ -103,7 +103,7 @@ exports[`should render a Welcome screen with the telemetry disclaimer 1`] = ` <h1> <FormattedMessage defaultMessage="Welcome to Kibana" - id="kbn.home.welcomeTitle" + id="home.welcomeTitle" values={Object {}} /> </h1> @@ -116,7 +116,7 @@ exports[`should render a Welcome screen with the telemetry disclaimer 1`] = ` <p> <FormattedMessage defaultMessage="Your window into the Elastic Stack" - id="kbn.home.welcomeDescription" + id="home.welcomeDescription" values={Object {}} /> </p> @@ -147,7 +147,7 @@ exports[`should render a Welcome screen with the telemetry disclaimer 1`] = ` > <FormattedMessage defaultMessage="To learn about how usage data helps us manage and improve our products and services, see our " - id="kbn.home.dataManagementDisclaimerPrivacy" + id="home.dataManagementDisclaimerPrivacy" values={Object {}} /> <EuiLink @@ -157,13 +157,13 @@ exports[`should render a Welcome screen with the telemetry disclaimer 1`] = ` > <FormattedMessage defaultMessage="Privacy Statement." - id="kbn.home.dataManagementDisclaimerPrivacyLink" + id="home.dataManagementDisclaimerPrivacyLink" values={Object {}} /> </EuiLink> <FormattedMessage defaultMessage=" To stop collection, " - id="kbn.home.dataManagementDisableCollection" + id="home.dataManagementDisableCollection" values={Object {}} /> <EuiLink @@ -171,7 +171,7 @@ exports[`should render a Welcome screen with the telemetry disclaimer 1`] = ` > <FormattedMessage defaultMessage="disable usage data here." - id="kbn.home.dataManagementDisableCollectionLink" + id="home.dataManagementDisableCollectionLink" values={Object {}} /> </EuiLink> @@ -215,7 +215,7 @@ exports[`should render a Welcome screen with the telemetry disclaimer when optIn <h1> <FormattedMessage defaultMessage="Welcome to Kibana" - id="kbn.home.welcomeTitle" + id="home.welcomeTitle" values={Object {}} /> </h1> @@ -228,7 +228,7 @@ exports[`should render a Welcome screen with the telemetry disclaimer when optIn <p> <FormattedMessage defaultMessage="Your window into the Elastic Stack" - id="kbn.home.welcomeDescription" + id="home.welcomeDescription" values={Object {}} /> </p> @@ -259,7 +259,7 @@ exports[`should render a Welcome screen with the telemetry disclaimer when optIn > <FormattedMessage defaultMessage="To learn about how usage data helps us manage and improve our products and services, see our " - id="kbn.home.dataManagementDisclaimerPrivacy" + id="home.dataManagementDisclaimerPrivacy" values={Object {}} /> <EuiLink @@ -269,13 +269,13 @@ exports[`should render a Welcome screen with the telemetry disclaimer when optIn > <FormattedMessage defaultMessage="Privacy Statement." - id="kbn.home.dataManagementDisclaimerPrivacyLink" + id="home.dataManagementDisclaimerPrivacyLink" values={Object {}} /> </EuiLink> <FormattedMessage defaultMessage=" To start collection, " - id="kbn.home.dataManagementEnableCollection" + id="home.dataManagementEnableCollection" values={Object {}} /> <EuiLink @@ -283,7 +283,7 @@ exports[`should render a Welcome screen with the telemetry disclaimer when optIn > <FormattedMessage defaultMessage="enable usage data here." - id="kbn.home.dataManagementEnableCollectionLink" + id="home.dataManagementEnableCollectionLink" values={Object {}} /> </EuiLink> @@ -327,7 +327,7 @@ exports[`should render a Welcome screen with the telemetry disclaimer when optIn <h1> <FormattedMessage defaultMessage="Welcome to Kibana" - id="kbn.home.welcomeTitle" + id="home.welcomeTitle" values={Object {}} /> </h1> @@ -340,7 +340,7 @@ exports[`should render a Welcome screen with the telemetry disclaimer when optIn <p> <FormattedMessage defaultMessage="Your window into the Elastic Stack" - id="kbn.home.welcomeDescription" + id="home.welcomeDescription" values={Object {}} /> </p> @@ -371,7 +371,7 @@ exports[`should render a Welcome screen with the telemetry disclaimer when optIn > <FormattedMessage defaultMessage="To learn about how usage data helps us manage and improve our products and services, see our " - id="kbn.home.dataManagementDisclaimerPrivacy" + id="home.dataManagementDisclaimerPrivacy" values={Object {}} /> <EuiLink @@ -381,13 +381,13 @@ exports[`should render a Welcome screen with the telemetry disclaimer when optIn > <FormattedMessage defaultMessage="Privacy Statement." - id="kbn.home.dataManagementDisclaimerPrivacyLink" + id="home.dataManagementDisclaimerPrivacyLink" values={Object {}} /> </EuiLink> <FormattedMessage defaultMessage=" To stop collection, " - id="kbn.home.dataManagementDisableCollection" + id="home.dataManagementDisableCollection" values={Object {}} /> <EuiLink @@ -395,7 +395,7 @@ exports[`should render a Welcome screen with the telemetry disclaimer when optIn > <FormattedMessage defaultMessage="disable usage data here." - id="kbn.home.dataManagementDisableCollectionLink" + id="home.dataManagementDisableCollectionLink" values={Object {}} /> </EuiLink> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/_add_data.scss b/src/plugins/home/public/application/components/_add_data.scss similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/_add_data.scss rename to src/plugins/home/public/application/components/_add_data.scss diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/_home.scss b/src/plugins/home/public/application/components/_home.scss similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/_home.scss rename to src/plugins/home/public/application/components/_home.scss diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/_index.scss b/src/plugins/home/public/application/components/_index.scss similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/_index.scss rename to src/plugins/home/public/application/components/_index.scss diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/_sample_data_set_cards.scss b/src/plugins/home/public/application/components/_sample_data_set_cards.scss similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/_sample_data_set_cards.scss rename to src/plugins/home/public/application/components/_sample_data_set_cards.scss diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/_synopsis.scss b/src/plugins/home/public/application/components/_synopsis.scss similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/_synopsis.scss rename to src/plugins/home/public/application/components/_synopsis.scss diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/_welcome.scss b/src/plugins/home/public/application/components/_welcome.scss similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/_welcome.scss rename to src/plugins/home/public/application/components/_welcome.scss diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/add_data.js b/src/plugins/home/public/application/components/add_data.js similarity index 87% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/add_data.js rename to src/plugins/home/public/application/components/add_data.js index 6d980114f96475..6d23ed17b21b24 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/add_data.js +++ b/src/plugins/home/public/application/components/add_data.js @@ -21,7 +21,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import classNames from 'classnames'; import { injectI18n, FormattedMessage } from '@kbn/i18n/react'; -import { getServices } from '../../kibana_services'; +import { getServices } from '../kibana_services'; import { EuiButton, @@ -43,11 +43,11 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { const renderCards = () => { const apmData = { title: intl.formatMessage({ - id: 'kbn.home.addData.apm.nameTitle', + id: 'home.addData.apm.nameTitle', defaultMessage: 'APM', }), description: intl.formatMessage({ - id: 'kbn.home.addData.apm.nameDescription', + id: 'home.addData.apm.nameDescription', defaultMessage: 'APM automatically collects in-depth performance metrics and errors from inside your applications.', }), @@ -55,11 +55,11 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { }; const loggingData = { title: intl.formatMessage({ - id: 'kbn.home.addData.logging.nameTitle', + id: 'home.addData.logging.nameTitle', defaultMessage: 'Logs', }), description: intl.formatMessage({ - id: 'kbn.home.addData.logging.nameDescription', + id: 'home.addData.logging.nameDescription', defaultMessage: 'Ingest logs from popular data sources and easily visualize in preconfigured dashboards.', }), @@ -67,11 +67,11 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { }; const metricsData = { title: intl.formatMessage({ - id: 'kbn.home.addData.metrics.nameTitle', + id: 'home.addData.metrics.nameTitle', defaultMessage: 'Metrics', }), description: intl.formatMessage({ - id: 'kbn.home.addData.metrics.nameDescription', + id: 'home.addData.metrics.nameDescription', defaultMessage: 'Collect metrics from the operating system and services running on your servers.', }), @@ -79,11 +79,11 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { }; const siemData = { title: intl.formatMessage({ - id: 'kbn.home.addData.siem.nameTitle', + id: 'home.addData.siem.nameTitle', defaultMessage: 'SIEM', }), description: intl.formatMessage({ - id: 'kbn.home.addData.siem.nameDescription', + id: 'home.addData.siem.nameDescription', defaultMessage: 'Centralize security events for interactive investigation in ready-to-go visualizations.', }), @@ -104,10 +104,7 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { href="#/home/tutorial/apm" aria-describedby={apmData.ariaDescribedby} > - <FormattedMessage - id="kbn.home.addData.apm.addApmButtonLabel" - defaultMessage="Add APM" - /> + <FormattedMessage id="home.addData.apm.addApmButtonLabel" defaultMessage="Add APM" /> </EuiButton> } /> @@ -132,7 +129,7 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { <EuiTitle size="s"> <h2> <FormattedMessage - id="kbn.home.addData.title.observability" + id="home.addData.title.observability" defaultMessage="Observability" /> </h2> @@ -165,7 +162,7 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { aria-describedby={loggingData.ariaDescribedby} > <FormattedMessage - id="kbn.home.addData.logging.addLogDataButtonLabel" + id="home.addData.logging.addLogDataButtonLabel" defaultMessage="Add log data" /> </EuiButton> @@ -189,7 +186,7 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { aria-describedby={metricsData.ariaDescribedby} > <FormattedMessage - id="kbn.home.addData.metrics.addMetricsDataButtonLabel" + id="home.addData.metrics.addMetricsDataButtonLabel" defaultMessage="Add metric data" /> </EuiButton> @@ -207,10 +204,7 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { <EuiFlexItem grow={false}> <EuiTitle size="s"> <h2> - <FormattedMessage - id="kbn.home.addData.title.security" - defaultMessage="Security" - /> + <FormattedMessage id="home.addData.title.security" defaultMessage="Security" /> </h2> </EuiTitle> </EuiFlexItem> @@ -229,7 +223,7 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { aria-describedby={siemData.ariaDescribedby} > <FormattedMessage - id="kbn.home.addData.siem.addSiemEventsButtonLabel" + id="home.addData.siem.addSiemEventsButtonLabel" defaultMessage="Add events" /> </EuiButton> @@ -255,7 +249,7 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { <EuiText size="s"> <strong style={{ height: 38 }}> <FormattedMessage - id="kbn.home.addData.sampleDataTitle" + id="home.addData.sampleDataTitle" defaultMessage="Add sample data" /> </strong> @@ -264,7 +258,7 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { href="#/home/tutorial_directory/sampleData" > <FormattedMessage - id="kbn.home.addData.sampleDataLink" + id="home.addData.sampleDataLink" defaultMessage="Load a data set and a Kibana dashboard" /> </EuiLink> @@ -275,7 +269,7 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { <EuiText size="s"> <strong style={{ height: 38 }}> <FormattedMessage - id="kbn.home.addData.uploadFileTitle" + id="home.addData.uploadFileTitle" defaultMessage="Upload data from log file" /> </strong> @@ -284,7 +278,7 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { href={`${basePath}/app/ml#/filedatavisualizer`} > <FormattedMessage - id="kbn.home.addData.uploadFileLink" + id="home.addData.uploadFileLink" defaultMessage="Import a CSV, NDJSON, or log file" /> </EuiLink> @@ -295,7 +289,7 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { <EuiText size="s"> <strong style={{ height: 38 }}> <FormattedMessage - id="kbn.home.addData.yourDataTitle" + id="home.addData.yourDataTitle" defaultMessage="Use Elasticsearch data" /> </strong> @@ -304,7 +298,7 @@ const AddDataUi = ({ apmUiEnabled, isNewKibanaInstance, intl, mlEnabled }) => { href="#/management/kibana/index_pattern" > <FormattedMessage - id="kbn.home.addData.yourDataLink" + id="home.addData.yourDataLink" defaultMessage="Connect to your Elasticsearch index" /> </EuiLink> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/add_data.test.js b/src/plugins/home/public/application/components/add_data.test.js similarity index 95% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/add_data.test.js rename to src/plugins/home/public/application/components/add_data.test.js index 86eec564f0b61b..9457f766409b8f 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/add_data.test.js +++ b/src/plugins/home/public/application/components/add_data.test.js @@ -20,9 +20,9 @@ import React from 'react'; import { AddData } from './add_data'; import { shallowWithIntl } from 'test_utils/enzyme_helpers'; -import { getServices } from '../../kibana_services'; +import { getServices } from '../kibana_services'; -jest.mock('../../kibana_services', () => { +jest.mock('../kibana_services', () => { const mock = { getBasePath: jest.fn(() => 'path'), }; diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/feature_directory.js b/src/plugins/home/public/application/components/feature_directory.js similarity index 88% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/feature_directory.js rename to src/plugins/home/public/application/components/feature_directory.js index 5545944a1029ff..2e979bf5899755 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/feature_directory.js +++ b/src/plugins/home/public/application/components/feature_directory.js @@ -31,7 +31,7 @@ import { EuiSpacer, } from '@elastic/eui'; -import { FeatureCatalogueCategory } from '../../../../../../../plugins/home/public'; +import { FeatureCatalogueCategory } from '../../services'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; @@ -53,17 +53,17 @@ export class FeatureDirectory extends React.Component { this.tabs = [ { id: ALL_TAB_ID, - name: i18n.translate('kbn.home.directory.tabs.allTitle', { defaultMessage: 'All' }), + name: i18n.translate('home.directory.tabs.allTitle', { defaultMessage: 'All' }), }, { id: FeatureCatalogueCategory.DATA, - name: i18n.translate('kbn.home.directory.tabs.dataTitle', { + name: i18n.translate('home.directory.tabs.dataTitle', { defaultMessage: 'Data Exploration & Visualization', }), }, { id: FeatureCatalogueCategory.ADMIN, - name: i18n.translate('kbn.home.directory.tabs.administrativeTitle', { + name: i18n.translate('home.directory.tabs.administrativeTitle', { defaultMessage: 'Administrative', }), }, @@ -71,7 +71,7 @@ export class FeatureDirectory extends React.Component { if (props.directories.some(isOtherCategory)) { this.tabs.push({ id: OTHERS_TAB_ID, - name: i18n.translate('kbn.home.directory.tabs.otherTitle', { defaultMessage: 'Other' }), + name: i18n.translate('home.directory.tabs.otherTitle', { defaultMessage: 'Other' }), }); } @@ -130,7 +130,7 @@ export class FeatureDirectory extends React.Component { <EuiPageBody> <EuiTitle size="l"> <h1> - <FormattedMessage id="kbn.home.directory.directoryTitle" defaultMessage="Directory" /> + <FormattedMessage id="home.directory.directoryTitle" defaultMessage="Directory" /> </h1> </EuiTitle> <EuiSpacer size="m" /> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/home.js b/src/plugins/home/public/application/components/home.js similarity index 93% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/home.js rename to src/plugins/home/public/application/components/home.js index 617a1810028fcd..6d00b1c6a5d145 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/home.js +++ b/src/plugins/home/public/application/components/home.js @@ -38,8 +38,8 @@ import { } from '@elastic/eui'; import { Welcome } from './welcome'; -import { FeatureCatalogueCategory } from '../../../../../../../plugins/home/public'; -import { getServices } from '../../kibana_services'; +import { getServices } from '../kibana_services'; +import { FeatureCatalogueCategory } from '../../services'; const KEY_ENABLE_WELCOME = 'home:welcome:show'; @@ -139,7 +139,7 @@ export class Home extends Component { <EuiPageBody className="eui-displayBlock"> <EuiScreenReaderOnly> <h1> - <FormattedMessage id="kbn.home.welcomeHomePageHeader" defaultMessage="Kibana home" /> + <FormattedMessage id="home.welcomeHomePageHeader" defaultMessage="Kibana home" /> </h1> </EuiScreenReaderOnly> @@ -157,7 +157,7 @@ export class Home extends Component { <EuiTitle size="s"> <h2> <FormattedMessage - id="kbn.home.directories.visualize.nameTitle" + id="home.directories.visualize.nameTitle" defaultMessage="Visualize and Explore Data" /> </h2> @@ -173,7 +173,7 @@ export class Home extends Component { <EuiTitle size="s"> <h2> <FormattedMessage - id="kbn.home.directories.manage.nameTitle" + id="home.directories.manage.nameTitle" defaultMessage="Manage and Administer the Elastic Stack" /> </h2> @@ -193,7 +193,7 @@ export class Home extends Component { <EuiText size="s" color="subdued"> <p> <FormattedMessage - id="kbn.home.directories.notFound.description" + id="home.directories.notFound.description" defaultMessage="Didn’t find what you were looking for?" /> </p> @@ -201,7 +201,7 @@ export class Home extends Component { <EuiSpacer size="s" /> <EuiButton href="#/home/feature_directory"> <FormattedMessage - id="kbn.home.directories.notFound.viewFullButtonLabel" + id="home.directories.notFound.viewFullButtonLabel" defaultMessage="View full directory of Kibana plugins" /> </EuiButton> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/home.test.js b/src/plugins/home/public/application/components/home.test.js similarity index 97% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/home.test.js rename to src/plugins/home/public/application/components/home.test.js index db24cb3e3c1b7e..ca8297800b53e3 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/home.test.js +++ b/src/plugins/home/public/application/components/home.test.js @@ -17,16 +17,14 @@ * under the License. */ -import './home.test.mocks'; - import React from 'react'; import sinon from 'sinon'; import { shallow } from 'enzyme'; import { Home } from './home'; -import { FeatureCatalogueCategory } from '../../../../../../../plugins/home/public'; +import { FeatureCatalogueCategory } from '../../services'; -jest.mock('../../kibana_services', () => ({ +jest.mock('../kibana_services', () => ({ getServices: () => ({ getBasePath: () => 'path', tutorialVariables: () => ({}), diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/home_app.js b/src/plugins/home/public/application/components/home_app.js similarity index 96% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/home_app.js rename to src/plugins/home/public/application/components/home_app.js index d7531864582a38..d05945a7a90ae3 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/home_app.js +++ b/src/plugins/home/public/application/components/home_app.js @@ -27,16 +27,17 @@ import { Tutorial } from './tutorial/tutorial'; import { HashRouter as Router, Switch, Route, Redirect } from 'react-router-dom'; import { getTutorial } from '../load_tutorials'; import { replaceTemplateStrings } from './tutorial/replace_template_strings'; -import { getServices } from '../../kibana_services'; +import { getServices } from '../kibana_services'; export function HomeApp({ directories }) { const { config, savedObjectsClient, getBasePath, addBasePath, - environment, + environmentService, telemetry, } = getServices(); + const environment = environmentService.getEnvironment(); const isCloudEnabled = environment.cloud; const mlEnabled = environment.ml; const apmUiEnabled = environment.apmUi; diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/recently_accessed.js b/src/plugins/home/public/application/components/recently_accessed.js similarity index 98% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/recently_accessed.js rename to src/plugins/home/public/application/components/recently_accessed.js index acf49695bd53e9..181968a2e063ab 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/recently_accessed.js +++ b/src/plugins/home/public/application/components/recently_accessed.js @@ -175,7 +175,7 @@ export class RecentlyAccessed extends Component { <h2> <EuiTextColor color="subdued"> <FormattedMessage - id="kbn.home.recentlyAccessed.recentlyViewedTitle" + id="home.recentlyAccessed.recentlyViewedTitle" defaultMessage="Recently viewed" /> </EuiTextColor> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/recently_accessed.test.js b/src/plugins/home/public/application/components/recently_accessed.test.js similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/recently_accessed.test.js rename to src/plugins/home/public/application/components/recently_accessed.test.js diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data/index.tsx b/src/plugins/home/public/application/components/sample_data/index.tsx similarity index 85% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data/index.tsx rename to src/plugins/home/public/application/components/sample_data/index.tsx index 868885417a9f97..381aa49c30d5a1 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data/index.tsx +++ b/src/plugins/home/public/application/components/sample_data/index.tsx @@ -44,10 +44,10 @@ export function SampleDataCard({ urlBasePath, onDecline, onConfirm }: Props) { <EuiCard image={`${urlBasePath}/plugins/kibana/home/assets/illustration_elastic_heart.png`} textAlign="left" - title={<FormattedMessage id="kbn.home.letsStartTitle" defaultMessage="Let's get started" />} + title={<FormattedMessage id="home.letsStartTitle" defaultMessage="Let's get started" />} description={ <FormattedMessage - id="kbn.home.letsStartDescription" + id="home.letsStartDescription" defaultMessage="We noticed that you don't have any data in your cluster. You can try our sample data and dashboards or jump in with your own data." /> @@ -55,14 +55,14 @@ You can try our sample data and dashboards or jump in with your own data." footer={ <footer> <EuiButton fill className="homWelcome__footerAction" onClick={onConfirm}> - <FormattedMessage id="kbn.home.tryButtonLabel" defaultMessage="Try our sample data" /> + <FormattedMessage id="home.tryButtonLabel" defaultMessage="Try our sample data" /> </EuiButton> <EuiButtonEmpty className="homWelcome__footerAction" onClick={onDecline} data-test-subj="skipWelcomeScreen" > - <FormattedMessage id="kbn.home.exploreButtonLabel" defaultMessage="Explore on my own" /> + <FormattedMessage id="home.exploreButtonLabel" defaultMessage="Explore on my own" /> </EuiButtonEmpty> </footer> } diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data_set_card.js b/src/plugins/home/public/application/components/sample_data_set_card.js similarity index 84% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data_set_card.js rename to src/plugins/home/public/application/components/sample_data_set_card.js index 444b832be58119..bb46b125a5a800 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data_set_card.js +++ b/src/plugins/home/public/application/components/sample_data_set_card.js @@ -67,13 +67,13 @@ export class SampleDataSetCard extends React.Component { flush="left" aria-label={ this.props.isProcessing - ? i18n.translate('kbn.home.sampleDataSetCard.removingButtonAriaLabel', { + ? i18n.translate('home.sampleDataSetCard.removingButtonAriaLabel', { defaultMessage: 'Removing {datasetName}', values: { datasetName: this.props.name, }, }) - : i18n.translate('kbn.home.sampleDataSetCard.removeButtonAriaLabel', { + : i18n.translate('home.sampleDataSetCard.removeButtonAriaLabel', { defaultMessage: 'Remove {datasetName}', values: { datasetName: this.props.name, @@ -83,12 +83,12 @@ export class SampleDataSetCard extends React.Component { > {this.props.isProcessing ? ( <FormattedMessage - id="kbn.home.sampleDataSetCard.removingButtonLabel" + id="home.sampleDataSetCard.removingButtonLabel" defaultMessage="Removing" /> ) : ( <FormattedMessage - id="kbn.home.sampleDataSetCard.removeButtonLabel" + id="home.sampleDataSetCard.removeButtonLabel" defaultMessage="Remove" /> )} @@ -115,13 +115,13 @@ export class SampleDataSetCard extends React.Component { data-test-subj={`addSampleDataSet${this.props.id}`} aria-label={ this.props.isProcessing - ? i18n.translate('kbn.home.sampleDataSetCard.addingButtonAriaLabel', { + ? i18n.translate('home.sampleDataSetCard.addingButtonAriaLabel', { defaultMessage: 'Adding {datasetName}', values: { datasetName: this.props.name, }, }) - : i18n.translate('kbn.home.sampleDataSetCard.addButtonAriaLabel', { + : i18n.translate('home.sampleDataSetCard.addButtonAriaLabel', { defaultMessage: 'Add {datasetName}', values: { datasetName: this.props.name, @@ -131,12 +131,12 @@ export class SampleDataSetCard extends React.Component { > {this.props.isProcessing ? ( <FormattedMessage - id="kbn.home.sampleDataSetCard.addingButtonLabel" + id="home.sampleDataSetCard.addingButtonLabel" defaultMessage="Adding" /> ) : ( <FormattedMessage - id="kbn.home.sampleDataSetCard.addButtonLabel" + id="home.sampleDataSetCard.addButtonLabel" defaultMessage="Add data" /> )} @@ -154,7 +154,7 @@ export class SampleDataSetCard extends React.Component { content={ <p> <FormattedMessage - id="kbn.home.sampleDataSetCard.default.unableToVerifyErrorMessage" + id="home.sampleDataSetCard.default.unableToVerifyErrorMessage" defaultMessage="Unable to verify dataset status, error: {statusMsg}" values={{ statusMsg: this.props.statusMsg }} /> @@ -164,18 +164,15 @@ export class SampleDataSetCard extends React.Component { <EuiButton isDisabled data-test-subj={`addSampleDataSet${this.props.id}`} - aria-label={i18n.translate( - 'kbn.home.sampleDataSetCard.default.addButtonAriaLabel', - { - defaultMessage: 'Add {datasetName}', - values: { - datasetName: this.props.name, - }, - } - )} + aria-label={i18n.translate('home.sampleDataSetCard.default.addButtonAriaLabel', { + defaultMessage: 'Add {datasetName}', + values: { + datasetName: this.props.name, + }, + })} > <FormattedMessage - id="kbn.home.sampleDataSetCard.default.addButtonLabel" + id="home.sampleDataSetCard.default.addButtonLabel" defaultMessage="Add data" /> </EuiButton> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data_set_cards.js b/src/plugins/home/public/application/components/sample_data_set_cards.js similarity index 93% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data_set_cards.js rename to src/plugins/home/public/application/components/sample_data_set_cards.js index 198e0d95271d7b..404c82676c1c3f 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data_set_cards.js +++ b/src/plugins/home/public/application/components/sample_data_set_cards.js @@ -24,7 +24,7 @@ import { EuiFlexGrid, EuiFlexItem } from '@elastic/eui'; import { SampleDataSetCard, INSTALLED_STATUS, UNINSTALLED_STATUS } from './sample_data_set_card'; -import { getServices } from '../../kibana_services'; +import { getServices } from '../kibana_services'; import { listSampleDataSets, @@ -62,7 +62,7 @@ export class SampleDataSetCards extends React.Component { sampleDataSets = await listSampleDataSets(); } catch (fetchError) { this.toastNotifications.addDanger({ - title: i18n.translate('kbn.home.sampleDataSet.unableToLoadListErrorMessage', { + title: i18n.translate('home.sampleDataSet.unableToLoadListErrorMessage', { defaultMessage: 'Unable to load sample data sets list', }), text: `${fetchError.message}`, @@ -100,7 +100,7 @@ export class SampleDataSetCards extends React.Component { })); } this.toastNotifications.addDanger({ - title: i18n.translate('kbn.home.sampleDataSet.unableToInstallErrorMessage', { + title: i18n.translate('home.sampleDataSet.unableToInstallErrorMessage', { defaultMessage: 'Unable to install sample data set: {name}', values: { name: targetSampleDataSet.name }, }), @@ -122,7 +122,7 @@ export class SampleDataSetCards extends React.Component { } this.toastNotifications.addSuccess({ - title: i18n.translate('kbn.home.sampleDataSet.installedLabel', { + title: i18n.translate('home.sampleDataSet.installedLabel', { defaultMessage: '{name} installed', values: { name: targetSampleDataSet.name }, }), @@ -148,7 +148,7 @@ export class SampleDataSetCards extends React.Component { })); } this.toastNotifications.addDanger({ - title: i18n.translate('kbn.home.sampleDataSet.unableToUninstallErrorMessage', { + title: i18n.translate('home.sampleDataSet.unableToUninstallErrorMessage', { defaultMessage: 'Unable to uninstall sample data set: {name}', values: { name: targetSampleDataSet.name }, }), @@ -170,7 +170,7 @@ export class SampleDataSetCards extends React.Component { } this.toastNotifications.addSuccess({ - title: i18n.translate('kbn.home.sampleDataSet.uninstalledLabel', { + title: i18n.translate('home.sampleDataSet.uninstalledLabel', { defaultMessage: '{name} uninstalled', values: { name: targetSampleDataSet.name }, }), diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data_view_data_button.js b/src/plugins/home/public/application/components/sample_data_view_data_button.js similarity index 92% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data_view_data_button.js rename to src/plugins/home/public/application/components/sample_data_view_data_button.js index cb43c18a8e78b6..a8a3cda3f95554 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data_view_data_button.js +++ b/src/plugins/home/public/application/components/sample_data_view_data_button.js @@ -22,7 +22,7 @@ import PropTypes from 'prop-types'; import { EuiButton, EuiContextMenu, EuiIcon, EuiPopover } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; -import { getServices } from '../../kibana_services'; +import { getServices } from '../kibana_services'; export class SampleDataViewDataButton extends React.Component { addBasePath = getServices().addBasePath; @@ -44,11 +44,11 @@ export class SampleDataViewDataButton extends React.Component { }; render() { - const viewDataButtonLabel = i18n.translate('kbn.home.sampleDataSetCard.viewDataButtonLabel', { + const viewDataButtonLabel = i18n.translate('home.sampleDataSetCard.viewDataButtonLabel', { defaultMessage: 'View data', }); const viewDataButtonAriaLabel = i18n.translate( - 'kbn.home.sampleDataSetCard.viewDataButtonAriaLabel', + 'home.sampleDataSetCard.viewDataButtonAriaLabel', { defaultMessage: 'View {datasetName}', values: { @@ -84,7 +84,7 @@ export class SampleDataViewDataButton extends React.Component { id: 0, items: [ { - name: i18n.translate('kbn.home.sampleDataSetCard.dashboardLinkLabel', { + name: i18n.translate('home.sampleDataSetCard.dashboardLinkLabel', { defaultMessage: 'Dashboard', }), icon: <EuiIcon type="dashboardApp" size="m" />, diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data_view_data_button.test.js b/src/plugins/home/public/application/components/sample_data_view_data_button.test.js similarity index 97% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data_view_data_button.test.js rename to src/plugins/home/public/application/components/sample_data_view_data_button.test.js index e33c206ed8482d..f594ec1264c942 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/sample_data_view_data_button.test.js +++ b/src/plugins/home/public/application/components/sample_data_view_data_button.test.js @@ -22,7 +22,7 @@ import { shallow } from 'enzyme'; import { SampleDataViewDataButton } from './sample_data_view_data_button'; -jest.mock('../../kibana_services', () => ({ +jest.mock('../kibana_services', () => ({ getServices: () => ({ addBasePath: path => `root${path}`, }), diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/synopsis.js b/src/plugins/home/public/application/components/synopsis.js similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/synopsis.js rename to src/plugins/home/public/application/components/synopsis.js diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/synopsis.test.js b/src/plugins/home/public/application/components/synopsis.test.js similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/synopsis.test.js rename to src/plugins/home/public/application/components/synopsis.test.js diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/content.test.js.snap b/src/plugins/home/public/application/components/tutorial/__snapshots__/content.test.js.snap similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/content.test.js.snap rename to src/plugins/home/public/application/components/tutorial/__snapshots__/content.test.js.snap diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/footer.test.js.snap b/src/plugins/home/public/application/components/tutorial/__snapshots__/footer.test.js.snap similarity index 92% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/footer.test.js.snap rename to src/plugins/home/public/application/components/tutorial/__snapshots__/footer.test.js.snap index 9fd3eebe96d8c4..f054b5f5d9363d 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/footer.test.js.snap +++ b/src/plugins/home/public/application/components/tutorial/__snapshots__/footer.test.js.snap @@ -14,7 +14,7 @@ exports[`render 1`] = ` <p> <FormattedMessage defaultMessage="When all steps are complete, you're ready to explore your data." - id="kbn.home.exploreYourDataDescription" + id="home.exploreYourDataDescription" values={Object {}} /> </p> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/instruction_set.test.js.snap b/src/plugins/home/public/application/components/tutorial/__snapshots__/instruction_set.test.js.snap similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/instruction_set.test.js.snap rename to src/plugins/home/public/application/components/tutorial/__snapshots__/instruction_set.test.js.snap diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/introduction.test.js.snap b/src/plugins/home/public/application/components/tutorial/__snapshots__/introduction.test.js.snap similarity index 98% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/introduction.test.js.snap rename to src/plugins/home/public/application/components/tutorial/__snapshots__/introduction.test.js.snap index 918bcbf7415e80..b35545787e4a41 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/introduction.test.js.snap +++ b/src/plugins/home/public/application/components/tutorial/__snapshots__/introduction.test.js.snap @@ -32,7 +32,7 @@ exports[`props exportedFieldsUrl 1`] = ` > <FormattedMessage defaultMessage="View exported fields" - id="kbn.home.tutorial.introduction.viewButtonLabel" + id="home.tutorial.introduction.viewButtonLabel" values={Object {}} /> </EuiButton> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/saved_objects_installer.test.js.snap b/src/plugins/home/public/application/components/tutorial/__snapshots__/saved_objects_installer.test.js.snap similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/saved_objects_installer.test.js.snap rename to src/plugins/home/public/application/components/tutorial/__snapshots__/saved_objects_installer.test.js.snap diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/tutorial.test.js.snap b/src/plugins/home/public/application/components/tutorial/__snapshots__/tutorial.test.js.snap similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/__snapshots__/tutorial.test.js.snap rename to src/plugins/home/public/application/components/tutorial/__snapshots__/tutorial.test.js.snap diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/_tutorial.scss b/src/plugins/home/public/application/components/tutorial/_tutorial.scss similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/_tutorial.scss rename to src/plugins/home/public/application/components/tutorial/_tutorial.scss diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/content.js b/src/plugins/home/public/application/components/tutorial/content.js similarity index 94% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/content.js rename to src/plugins/home/public/application/components/tutorial/content.js index 669eb6c4c42cd9..db1f55b503e847 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/content.js +++ b/src/plugins/home/public/application/components/tutorial/content.js @@ -19,7 +19,7 @@ import React from 'react'; import PropTypes from 'prop-types'; -import { Markdown } from '../../../../../../kibana_react/public'; +import { Markdown } from '../../../../../kibana_react/public'; const whiteListedRules = ['backticks', 'emphasis', 'link', 'list']; diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/content.test.js b/src/plugins/home/public/application/components/tutorial/content.test.js similarity index 95% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/content.test.js rename to src/plugins/home/public/application/components/tutorial/content.test.js index 64864b6a5404d5..d3a4d7085a0aa1 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/content.test.js +++ b/src/plugins/home/public/application/components/tutorial/content.test.js @@ -22,7 +22,7 @@ import { shallow } from 'enzyme'; import { Content } from './content'; -jest.mock('../../../../../../kibana_react/public', () => { +jest.mock('../../../../../kibana_react/public', () => { return { Markdown: () => <div className="markdown" />, }; diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/footer.js b/src/plugins/home/public/application/components/tutorial/footer.js similarity index 96% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/footer.js rename to src/plugins/home/public/application/components/tutorial/footer.js index 0e66ca3f53ff7c..02def489b3a246 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/footer.js +++ b/src/plugins/home/public/application/components/tutorial/footer.js @@ -34,7 +34,7 @@ export function Footer({ url, label }) { <EuiText> <p> <FormattedMessage - id="kbn.home.exploreYourDataDescription" + id="home.exploreYourDataDescription" defaultMessage="When all steps are complete, you're ready to explore your data." /> </p> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/footer.test.js b/src/plugins/home/public/application/components/tutorial/footer.test.js similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/footer.test.js rename to src/plugins/home/public/application/components/tutorial/footer.test.js diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/instruction.js b/src/plugins/home/public/application/components/tutorial/instruction.js similarity index 97% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/instruction.js rename to src/plugins/home/public/application/components/tutorial/instruction.js index c7094cf11f4132..a44fb26bffbbb0 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/instruction.js +++ b/src/plugins/home/public/application/components/tutorial/instruction.js @@ -61,7 +61,7 @@ export function Instruction({ commands, paramValues, textPost, textPre, replaceT {copy => ( <EuiButton size="s" onClick={copy}> <FormattedMessage - id="kbn.home.tutorial.instruction.copyButtonLabel" + id="home.tutorial.instruction.copyButtonLabel" defaultMessage="Copy snippet" /> </EuiButton> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/instruction_set.js b/src/plugins/home/public/application/components/tutorial/instruction_set.js similarity index 93% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/instruction_set.js rename to src/plugins/home/public/application/components/tutorial/instruction_set.js index 631ef1d6e0e429..018468fcb50d3f 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/instruction_set.js +++ b/src/plugins/home/public/application/components/tutorial/instruction_set.js @@ -22,7 +22,7 @@ import PropTypes from 'prop-types'; import { Instruction } from './instruction'; import { ParameterForm } from './parameter_form'; import { Content } from './content'; -import { getDisplayText } from '../../../../../../../../plugins/home/public'; +import { getDisplayText } from '../../../../common/instruction_variant'; import { EuiTabs, EuiTab, @@ -92,7 +92,7 @@ class InstructionSetUi extends React.Component { message = this.props.statusCheckConfig.success ? this.props.statusCheckConfig.success : this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.instructionSet.successLabel', + id: 'home.tutorial.instructionSet.successLabel', defaultMessage: 'Success', }); color = 'success'; @@ -102,7 +102,7 @@ class InstructionSetUi extends React.Component { message = this.props.statusCheckConfig.error ? this.props.statusCheckConfig.error : this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.instructionSet.noDataLabel', + id: 'home.tutorial.instructionSet.noDataLabel', defaultMessage: 'No data found', }); color = 'warning'; @@ -127,7 +127,7 @@ class InstructionSetUi extends React.Component { throw new Error( this.props.intl.formatMessage( { - id: 'kbn.home.tutorial.unexpectedStatusCheckStateErrorDescription', + id: 'home.tutorial.unexpectedStatusCheckStateErrorDescription', defaultMessage: 'Unexpected status check state {statusCheckState}', }, { @@ -154,7 +154,7 @@ class InstructionSetUi extends React.Component { > {statusCheckConfig.btnLabel || ( <FormattedMessage - id="kbn.home.tutorial.instructionSet.checkStatusButtonLabel" + id="home.tutorial.instructionSet.checkStatusButtonLabel" defaultMessage="Check status" /> )} @@ -172,7 +172,7 @@ class InstructionSetUi extends React.Component { title: statusCheckConfig.title || this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.instructionSet.statusCheckTitle', + id: 'home.tutorial.instructionSet.statusCheckTitle', defaultMessage: 'Status Check', }), status: this.getStepStatus(statusCheckState), @@ -217,7 +217,7 @@ class InstructionSetUi extends React.Component { let paramsVisibilityToggle; if (this.props.params) { const ariaLabel = this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.instructionSet.toggleAriaLabel', + id: 'home.tutorial.instructionSet.toggleAriaLabel', defaultMessage: 'toggle command parameters visibility', }); paramsVisibilityToggle = ( @@ -227,7 +227,7 @@ class InstructionSetUi extends React.Component { onClick={this.handleToggleVisibility} > <FormattedMessage - id="kbn.home.tutorial.instructionSet.customizeLabel" + id="home.tutorial.instructionSet.customizeLabel" defaultMessage="Customize your code snippets" /> </EuiButtonEmpty> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/instruction_set.test.js b/src/plugins/home/public/application/components/tutorial/instruction_set.test.js similarity index 98% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/instruction_set.test.js rename to src/plugins/home/public/application/components/tutorial/instruction_set.test.js index 21c3ddeceff6b0..6c9ce530f6b200 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/instruction_set.test.js +++ b/src/plugins/home/public/application/components/tutorial/instruction_set.test.js @@ -45,7 +45,7 @@ const instructionVariants = [ }, ]; -jest.mock('../../../../../../kibana_react/public', () => { +jest.mock('../../../../../kibana_react/public', () => { return { Markdown: () => <div className="markdown" />, }; diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/introduction.js b/src/plugins/home/public/application/components/tutorial/introduction.js similarity index 94% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/introduction.js rename to src/plugins/home/public/application/components/tutorial/introduction.js index b933566143399e..bc5f30622f1a51 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/introduction.js +++ b/src/plugins/home/public/application/components/tutorial/introduction.js @@ -51,7 +51,7 @@ function IntroductionUI({ allowFullScreen fullScreenIconColor="dark" alt={intl.formatMessage({ - id: 'kbn.home.tutorial.introduction.imageAltDescription', + id: 'home.tutorial.introduction.imageAltDescription', defaultMessage: 'screenshot of primary dashboard.', })} url={previewUrl} @@ -65,7 +65,7 @@ function IntroductionUI({ <EuiSpacer /> <EuiButton href={exportedFieldsUrl} target="_blank" rel="noopener"> <FormattedMessage - id="kbn.home.tutorial.introduction.viewButtonLabel" + id="home.tutorial.introduction.viewButtonLabel" defaultMessage="View exported fields" /> </EuiButton> @@ -85,7 +85,7 @@ function IntroductionUI({ betaBadge = ( <EuiBetaBadge label={intl.formatMessage({ - id: 'kbn.home.tutorial.introduction.betaLabel', + id: 'home.tutorial.introduction.betaLabel', defaultMessage: 'Beta', })} /> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/introduction.test.js b/src/plugins/home/public/application/components/tutorial/introduction.test.js similarity index 97% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/introduction.test.js rename to src/plugins/home/public/application/components/tutorial/introduction.test.js index 8862ef7334f931..ae87bc6030c9ae 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/introduction.test.js +++ b/src/plugins/home/public/application/components/tutorial/introduction.test.js @@ -22,7 +22,7 @@ import { shallowWithIntl } from 'test_utils/enzyme_helpers'; import { Introduction } from './introduction'; -jest.mock('../../../../../../kibana_react/public', () => { +jest.mock('../../../../../kibana_react/public', () => { return { Markdown: () => <div className="markdown" />, }; diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/number_parameter.js b/src/plugins/home/public/application/components/tutorial/number_parameter.js similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/number_parameter.js rename to src/plugins/home/public/application/components/tutorial/number_parameter.js diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/parameter_form.js b/src/plugins/home/public/application/components/tutorial/parameter_form.js similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/parameter_form.js rename to src/plugins/home/public/application/components/tutorial/parameter_form.js diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/replace_template_strings.js b/src/plugins/home/public/application/components/tutorial/replace_template_strings.js similarity index 92% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/replace_template_strings.js rename to src/plugins/home/public/application/components/tutorial/replace_template_strings.js index f9fa662e6d507e..fd40c59b18d675 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/replace_template_strings.js +++ b/src/plugins/home/public/application/components/tutorial/replace_template_strings.js @@ -18,7 +18,7 @@ */ import { Writer } from 'mustache'; -import { getServices } from '../../../kibana_services'; +import { getServices } from '../../kibana_services'; const TEMPLATE_TAGS = ['{', '}']; @@ -33,7 +33,7 @@ mustacheWriter.escapedValue = function escapedValue(token, context) { }; export function replaceTemplateStrings(text, params = {}) { - const { tutorialVariables, kibanaVersion, docLinks } = getServices(); + const { tutorialService, kibanaVersion, docLinks } = getServices(); const variables = { // '{' and '}' can not be used in template since they are used as template tags. @@ -41,7 +41,7 @@ export function replaceTemplateStrings(text, params = {}) { curlyOpen: '{', curlyClose: '}', config: { - ...tutorialVariables(), + ...tutorialService.getVariables(), docs: { base_url: docLinks.ELASTIC_WEBSITE_URL, beats: { diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/saved_objects_installer.js b/src/plugins/home/public/application/components/tutorial/saved_objects_installer.js similarity index 92% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/saved_objects_installer.js rename to src/plugins/home/public/application/components/tutorial/saved_objects_installer.js index 93d85a14c09f8e..bf69c419f64645 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/saved_objects_installer.js +++ b/src/plugins/home/public/application/components/tutorial/saved_objects_installer.js @@ -36,7 +36,7 @@ import { class SavedObjectsInstallerUi extends React.Component { DEFAULT_BUTTON_LABEL = this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.savedObject.defaultButtonLabel', + id: 'home.tutorial.savedObject.defaultButtonLabel', defaultMessage: 'Load Kibana objects', }); @@ -74,7 +74,7 @@ class SavedObjectsInstallerUi extends React.Component { isInstalling: false, installStatusMsg: this.props.intl.formatMessage( { - id: 'kbn.home.tutorial.savedObject.requestFailedErrorMessage', + id: 'home.tutorial.savedObject.requestFailedErrorMessage', defaultMessage: 'Request failed, Error: {message}', }, { message: error.message } @@ -102,7 +102,7 @@ class SavedObjectsInstallerUi extends React.Component { isInstalling: false, installStatusMsg: this.props.intl.formatMessage( { - id: 'kbn.home.tutorial.savedObject.installStatusLabel', + id: 'home.tutorial.savedObject.installStatusLabel', defaultMessage: "{overwriteErrorsLength} of {savedObjectsLength} objects already exist. \ Click 'Confirm overwrite' to import and overwrite existing objects. Any changes to the objects will be lost.", @@ -115,7 +115,7 @@ Click 'Confirm overwrite' to import and overwrite existing objects. Any changes isInstalled: false, overwrite: true, buttonLabel: this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.savedObject.confirmButtonLabel', + id: 'home.tutorial.savedObject.confirmButtonLabel', defaultMessage: 'Confirm overwrite', }), }); @@ -126,7 +126,7 @@ Click 'Confirm overwrite' to import and overwrite existing objects. Any changes const statusMsg = hasErrors ? this.props.intl.formatMessage( { - id: 'kbn.home.tutorial.savedObject.unableToAddErrorMessage', + id: 'home.tutorial.savedObject.unableToAddErrorMessage', defaultMessage: 'Unable to add {errorsLength} of {savedObjectsLength} kibana objects, Error: {errorMessage}', }, @@ -138,7 +138,7 @@ Click 'Confirm overwrite' to import and overwrite existing objects. Any changes ) : this.props.intl.formatMessage( { - id: 'kbn.home.tutorial.savedObject.addedLabel', + id: 'home.tutorial.savedObject.addedLabel', defaultMessage: '{savedObjectsLength} saved objects successfully added', }, { savedObjectsLength: this.props.savedObjects.length } @@ -172,7 +172,7 @@ Click 'Confirm overwrite' to import and overwrite existing objects. Any changes const installMsg = this.props.installMsg ? this.props.installMsg : this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.savedObject.installLabel', + id: 'home.tutorial.savedObject.installLabel', defaultMessage: 'Imports index pattern, visualizations and pre-defined dashboards.', }); const installStep = ( @@ -203,7 +203,7 @@ Click 'Confirm overwrite' to import and overwrite existing objects. Any changes return { title: this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.savedObject.loadTitle', + id: 'home.tutorial.savedObject.loadTitle', defaultMessage: 'Load Kibana objects', }), status: this.state.isInstalled ? 'complete' : 'incomplete', diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/saved_objects_installer.test.js b/src/plugins/home/public/application/components/tutorial/saved_objects_installer.test.js similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/saved_objects_installer.test.js rename to src/plugins/home/public/application/components/tutorial/saved_objects_installer.test.js diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/status_check_states.js b/src/plugins/home/public/application/components/tutorial/status_check_states.js similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/status_check_states.js rename to src/plugins/home/public/application/components/tutorial/status_check_states.js diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/string_parameter.js b/src/plugins/home/public/application/components/tutorial/string_parameter.js similarity index 100% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/string_parameter.js rename to src/plugins/home/public/application/components/tutorial/string_parameter.js diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/tutorial.js b/src/plugins/home/public/application/components/tutorial/tutorial.js similarity index 96% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/tutorial.js rename to src/plugins/home/public/application/components/tutorial/tutorial.js index c7aa5b0f5b2f97..cc642c3fa2f2e0 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/tutorial.js +++ b/src/plugins/home/public/application/components/tutorial/tutorial.js @@ -37,7 +37,7 @@ import { import * as StatusCheckStates from './status_check_states'; import { injectI18n, FormattedMessage } from '@kbn/i18n/react'; import { i18n } from '@kbn/i18n'; -import { getServices } from '../../../kibana_services'; +import { getServices } from '../../kibana_services'; const INSTRUCTIONS_TYPE = { ELASTIC_CLOUD: 'elasticCloud', @@ -45,8 +45,8 @@ const INSTRUCTIONS_TYPE = { ON_PREM_ELASTIC_CLOUD: 'onPremElasticCloud', }; -const homeTitle = i18n.translate('kbn.home.breadcrumbs.homeTitle', { defaultMessage: 'Home' }); -const addDataTitle = i18n.translate('kbn.home.breadcrumbs.addDataTitle', { +const homeTitle = i18n.translate('home.breadcrumbs.homeTitle', { defaultMessage: 'Home' }); +const addDataTitle = i18n.translate('home.breadcrumbs.addDataTitle', { defaultMessage: 'Add data', }); @@ -129,7 +129,7 @@ class TutorialUi extends React.Component { throw new Error( this.props.intl.formatMessage( { - id: 'kbn.home.tutorial.unhandledInstructionTypeErrorDescription', + id: 'home.tutorial.unhandledInstructionTypeErrorDescription', defaultMessage: 'Unhandled instruction type {visibleInstructions}', }, { @@ -226,11 +226,11 @@ class TutorialUi extends React.Component { renderInstructionSetsToggle = () => { if (!this.props.isCloudEnabled && this.state.tutorial.onPremElasticCloud) { const selfManagedLabel = this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.selfManagedButtonLabel', + id: 'home.tutorial.selfManagedButtonLabel', defaultMessage: 'Self managed', }); const cloudLabel = this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.elasticCloudButtonLabel', + id: 'home.tutorial.elasticCloudButtonLabel', defaultMessage: 'Elastic Cloud', }); const radioButtons = [ @@ -340,7 +340,7 @@ class TutorialUi extends React.Component { <EuiText> <p> <FormattedMessage - id="kbn.home.tutorial.noTutorialLabel" + id="home.tutorial.noTutorialLabel" defaultMessage="Unable to find tutorial {tutorialId}" values={{ tutorialId: this.props.tutorialId }} /> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/tutorial.test.js b/src/plugins/home/public/application/components/tutorial/tutorial.test.js similarity index 97% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/tutorial.test.js rename to src/plugins/home/public/application/components/tutorial/tutorial.test.js index 733223fe79046f..41d83d7562f6ec 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial/tutorial.test.js +++ b/src/plugins/home/public/application/components/tutorial/tutorial.test.js @@ -22,7 +22,7 @@ import { shallowWithIntl, mountWithIntl } from 'test_utils/enzyme_helpers'; import { Tutorial } from './tutorial'; -jest.mock('../../../kibana_services', () => ({ +jest.mock('../../kibana_services', () => ({ getServices: () => ({ getBasePath: jest.fn(() => 'path'), chrome: { @@ -30,7 +30,7 @@ jest.mock('../../../kibana_services', () => ({ }, }), })); -jest.mock('../../../../../../kibana_react/public', () => { +jest.mock('../../../../../kibana_react/public', () => { return { Markdown: () => <div className="markdown" />, }; diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial_directory.js b/src/plugins/home/public/application/components/tutorial_directory.js similarity index 90% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial_directory.js rename to src/plugins/home/public/application/components/tutorial_directory.js index 697c1b0468cd14..9f1e906e341f9a 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/tutorial_directory.js +++ b/src/plugins/home/public/application/components/tutorial_directory.js @@ -22,7 +22,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import { Synopsis } from './synopsis'; import { SampleDataSetCards } from './sample_data_set_cards'; -import { getServices } from '../../kibana_services'; +import { getServices } from '../kibana_services'; import { EuiPage, @@ -43,8 +43,8 @@ import { i18n } from '@kbn/i18n'; const ALL_TAB_ID = 'all'; const SAMPLE_DATA_TAB_ID = 'sampleData'; -const homeTitle = i18n.translate('kbn.home.breadcrumbs.homeTitle', { defaultMessage: 'Home' }); -const addDataTitle = i18n.translate('kbn.home.breadcrumbs.addDataTitle', { +const homeTitle = i18n.translate('home.breadcrumbs.homeTitle', { defaultMessage: 'Home' }); +const addDataTitle = i18n.translate('home.breadcrumbs.addDataTitle', { defaultMessage: 'Add data', }); @@ -56,35 +56,35 @@ class TutorialDirectoryUi extends React.Component { { id: ALL_TAB_ID, name: this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.tabs.allTitle', + id: 'home.tutorial.tabs.allTitle', defaultMessage: 'All', }), }, { id: 'logging', name: this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.tabs.loggingTitle', + id: 'home.tutorial.tabs.loggingTitle', defaultMessage: 'Logs', }), }, { id: 'metrics', name: this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.tabs.metricsTitle', + id: 'home.tutorial.tabs.metricsTitle', defaultMessage: 'Metrics', }), }, { id: 'siem', name: this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.tabs.siemTitle', + id: 'home.tutorial.tabs.siemTitle', defaultMessage: 'SIEM', }), }, { id: SAMPLE_DATA_TAB_ID, name: this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.tabs.sampleDataTitle', + id: 'home.tutorial.tabs.sampleDataTitle', defaultMessage: 'Sample data', }), }, @@ -148,11 +148,11 @@ class TutorialDirectoryUi extends React.Component { // Add card for sample data that only gets show in "all" tab tutorialCards.push({ name: this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.card.sampleDataTitle', + id: 'home.tutorial.card.sampleDataTitle', defaultMessage: 'Sample Data', }), description: this.props.intl.formatMessage({ - id: 'kbn.home.tutorial.card.sampleDataDescription', + id: 'home.tutorial.card.sampleDataDescription', defaultMessage: 'Get started exploring Kibana with these "one click" data sets.', }), url: this.props.addBasePath('#/home/tutorial_directory/sampleData'), @@ -234,7 +234,7 @@ class TutorialDirectoryUi extends React.Component { <EuiTitle size="l"> <h1> <FormattedMessage - id="kbn.home.tutorial.addDataToKibanaTitle" + id="home.tutorial.addDataToKibanaTitle" defaultMessage="Add Data to Kibana" /> </h1> diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/welcome.test.tsx b/src/plugins/home/public/application/components/welcome.test.tsx similarity index 95% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/welcome.test.tsx rename to src/plugins/home/public/application/components/welcome.test.tsx index d9da47a2b43da5..1332e03ffdc81f 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/welcome.test.tsx +++ b/src/plugins/home/public/application/components/welcome.test.tsx @@ -20,9 +20,9 @@ import React from 'react'; import { shallow } from 'enzyme'; import { Welcome } from './welcome'; -import { telemetryPluginMock } from '../../../../../../../plugins/telemetry/public/mocks'; +import { telemetryPluginMock } from '../../../../telemetry/public/mocks'; -jest.mock('../../kibana_services', () => ({ +jest.mock('../kibana_services', () => ({ getServices: () => ({ addBasePath: (path: string) => `root${path}`, trackUiMetric: () => {}, diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/components/welcome.tsx b/src/plugins/home/public/application/components/welcome.tsx similarity index 87% rename from src/legacy/core_plugins/kibana/public/home/np_ready/components/welcome.tsx rename to src/plugins/home/public/application/components/welcome.tsx index 7906caeda1b384..f7f173f04ef51d 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/components/welcome.tsx +++ b/src/plugins/home/public/application/components/welcome.tsx @@ -37,9 +37,9 @@ import { } from '@elastic/eui'; import { METRIC_TYPE } from '@kbn/analytics'; import { FormattedMessage } from '@kbn/i18n/react'; -import { getServices } from '../../kibana_services'; -import { TelemetryPluginStart } from '../../../../../../../plugins/telemetry/public'; -import { PRIVACY_STATEMENT_URL } from '../../../../../../../plugins/telemetry/common/constants'; +import { getServices } from '../kibana_services'; +import { TelemetryPluginStart } from '../../../../telemetry/public'; +import { PRIVACY_STATEMENT_URL } from '../../../../telemetry/common/constants'; import { SampleDataCard } from './sample_data'; interface Props { @@ -99,12 +99,12 @@ export class Welcome extends React.Component<Props> { return ( <Fragment> <FormattedMessage - id="kbn.home.dataManagementDisableCollection" + id="home.dataManagementDisableCollection" defaultMessage=" To stop collection, " /> <EuiLink href="#/management/kibana/settings"> <FormattedMessage - id="kbn.home.dataManagementDisableCollectionLink" + id="home.dataManagementDisableCollectionLink" defaultMessage="disable usage data here." /> </EuiLink> @@ -114,12 +114,12 @@ export class Welcome extends React.Component<Props> { return ( <Fragment> <FormattedMessage - id="kbn.home.dataManagementEnableCollection" + id="home.dataManagementEnableCollection" defaultMessage=" To start collection, " /> <EuiLink href="#/management/kibana/settings"> <FormattedMessage - id="kbn.home.dataManagementEnableCollectionLink" + id="home.dataManagementEnableCollectionLink" defaultMessage="enable usage data here." /> </EuiLink> @@ -141,13 +141,13 @@ export class Welcome extends React.Component<Props> { </span> <EuiTitle size="l" className="homWelcome__title"> <h1> - <FormattedMessage id="kbn.home.welcomeTitle" defaultMessage="Welcome to Kibana" /> + <FormattedMessage id="home.welcomeTitle" defaultMessage="Welcome to Kibana" /> </h1> </EuiTitle> <EuiText size="s" color="subdued" className="homWelcome__subtitle"> <p> <FormattedMessage - id="kbn.home.welcomeDescription" + id="home.welcomeDescription" defaultMessage="Your window into the Elastic Stack" /> </p> @@ -168,12 +168,12 @@ export class Welcome extends React.Component<Props> { <Fragment> <EuiTextColor className="euiText--small" color="subdued"> <FormattedMessage - id="kbn.home.dataManagementDisclaimerPrivacy" + id="home.dataManagementDisclaimerPrivacy" defaultMessage="To learn about how usage data helps us manage and improve our products and services, see our " /> <EuiLink href={PRIVACY_STATEMENT_URL} target="_blank" rel="noopener"> <FormattedMessage - id="kbn.home.dataManagementDisclaimerPrivacyLink" + id="home.dataManagementDisclaimerPrivacyLink" defaultMessage="Privacy Statement." /> </EuiLink> diff --git a/src/legacy/core_plugins/kibana/public/home/index.ts b/src/plugins/home/public/application/index.ts similarity index 69% rename from src/legacy/core_plugins/kibana/public/home/index.ts rename to src/plugins/home/public/application/index.ts index 74b6da33c65422..a4e65a9daf66c2 100644 --- a/src/legacy/core_plugins/kibana/public/home/index.ts +++ b/src/plugins/home/public/application/index.ts @@ -17,13 +17,4 @@ * under the License. */ -import { PluginInitializerContext } from 'kibana/public'; -import { npSetup, npStart } from 'ui/new_platform'; -import { HomePlugin } from './plugin'; - -const instance = new HomePlugin({ - env: npSetup.plugins.kibanaLegacy.env, -} as PluginInitializerContext); -instance.setup(npSetup.core, npSetup.plugins); - -instance.start(npStart.core, npStart.plugins); +export { renderApp } from './application'; diff --git a/src/legacy/core_plugins/kibana/public/home/kibana_services.ts b/src/plugins/home/public/application/kibana_services.ts similarity index 78% rename from src/legacy/core_plugins/kibana/public/home/kibana_services.ts rename to src/plugins/home/public/application/kibana_services.ts index a4fbe83f60e84e..6a42795b405a4f 100644 --- a/src/legacy/core_plugins/kibana/public/home/kibana_services.ts +++ b/src/plugins/home/public/application/kibana_services.ts @@ -27,14 +27,12 @@ import { IUiSettingsClient, } from 'kibana/public'; import { UiStatsMetricType } from '@kbn/analytics'; -import { TelemetryPluginStart } from '../../../../../plugins/telemetry/public'; -import { - Environment, - HomePublicPluginSetup, - TutorialStart, - HomePublicPluginStart, -} from '../../../../../plugins/home/public'; -import { KibanaLegacySetup } from '../../../../../plugins/kibana_legacy/public'; +import { TelemetryPluginStart } from '../../../telemetry/public'; +import { KibanaLegacySetup } from '../../../kibana_legacy/public'; +import { TutorialService } from '../services/tutorials'; +import { FeatureCatalogueRegistry } from '../services/feature_catalogue'; +import { EnvironmentService } from '../services/environment'; +import { ConfigSchema } from '../../config'; export interface HomeKibanaServices { indexPatternService: any; @@ -42,8 +40,8 @@ export interface HomeKibanaServices { chrome: ChromeStart; uiSettings: IUiSettingsClient; config: KibanaLegacySetup['config']; - homeConfig: HomePublicPluginSetup['config']; - featureCatalogue: HomePublicPluginStart['featureCatalogue']; + homeConfig: ConfigSchema; + featureCatalogue: FeatureCatalogueRegistry; http: HttpStart; savedObjectsClient: SavedObjectsClientContract; toastNotifications: NotificationsSetup['toasts']; @@ -52,9 +50,9 @@ export interface HomeKibanaServices { getBasePath: () => string; docLinks: DocLinksStart; addBasePath: (url: string) => string; - environment: Environment; + environmentService: EnvironmentService; telemetry?: TelemetryPluginStart; - tutorialVariables: TutorialStart['get']; + tutorialService: TutorialService; } let services: HomeKibanaServices | null = null; diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/load_tutorials.js b/src/plugins/home/public/application/load_tutorials.js similarity index 91% rename from src/legacy/core_plugins/kibana/public/home/np_ready/load_tutorials.js rename to src/plugins/home/public/application/load_tutorials.js index 2f6d4d631baf58..1dbbb707ecf547 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/load_tutorials.js +++ b/src/plugins/home/public/application/load_tutorials.js @@ -18,7 +18,7 @@ */ import _ from 'lodash'; -import { getServices } from '../kibana_services'; +import { getServices } from './kibana_services'; import { i18n } from '@kbn/i18n'; const baseUrl = getServices().addBasePath('/api/kibana/home/tutorials'); @@ -39,7 +39,7 @@ async function loadTutorials() { }); if (response.status >= 300) { throw new Error( - i18n.translate('kbn.home.loadTutorials.requestFailedErrorMessage', { + i18n.translate('home.loadTutorials.requestFailedErrorMessage', { defaultMessage: 'Request failed with status code: {status}', values: { status: response.status }, }) @@ -50,7 +50,7 @@ async function loadTutorials() { tutorialsLoaded = true; } catch (err) { getServices().toastNotifications.addDanger({ - title: i18n.translate('kbn.home.loadTutorials.unableToLoadErrorMessage', { + title: i18n.translate('home.loadTutorials.unableToLoadErrorMessage', { defaultMessage: 'Unable to load tutorials', }), text: err.message, diff --git a/src/legacy/core_plugins/kibana/public/home/np_ready/sample_data_client.js b/src/plugins/home/public/application/sample_data_client.js similarity index 97% rename from src/legacy/core_plugins/kibana/public/home/np_ready/sample_data_client.js rename to src/plugins/home/public/application/sample_data_client.js index 34c85d8d2c3503..600b1c3cb7dfff 100644 --- a/src/legacy/core_plugins/kibana/public/home/np_ready/sample_data_client.js +++ b/src/plugins/home/public/application/sample_data_client.js @@ -17,7 +17,7 @@ * under the License. */ -import { getServices } from '../kibana_services'; +import { getServices } from './kibana_services'; const sampleDataUrl = '/api/sample_data'; diff --git a/src/plugins/home/public/index.ts b/src/plugins/home/public/index.ts index 7738990bba0d01..587dbe886d505b 100644 --- a/src/plugins/home/public/index.ts +++ b/src/plugins/home/public/index.ts @@ -21,13 +21,9 @@ import { PluginInitializerContext } from 'kibana/public'; export { FeatureCatalogueSetup, - FeatureCatalogueStart, EnvironmentSetup, - EnvironmentStart, TutorialSetup, - TutorialStart, HomePublicPluginSetup, - HomePublicPluginStart, } from './plugin'; export { FeatureCatalogueEntry, diff --git a/src/plugins/home/public/mocks/index.ts b/src/plugins/home/public/mocks/index.ts index 42c61fe847250c..dcca0308c526b4 100644 --- a/src/plugins/home/public/mocks/index.ts +++ b/src/plugins/home/public/mocks/index.ts @@ -29,13 +29,6 @@ const createSetupContract = () => ({ config: configSchema.validate({}), }); -const createStartContract = () => ({ - featureCatalogue: featureCatalogueRegistryMock.createStart(), - environment: environmentServiceMock.createStart(), - tutorials: tutorialServiceMock.createStart(), -}); - export const homePluginMock = { createSetupContract, - createStartContract, }; diff --git a/src/plugins/home/public/plugin.test.ts b/src/plugins/home/public/plugin.test.ts index 0423ad3dd99f5a..0b83c4caf1b30e 100644 --- a/src/plugins/home/public/plugin.test.ts +++ b/src/plugins/home/public/plugin.test.ts @@ -20,6 +20,7 @@ import { registryMock, environmentMock, tutorialMock } from './plugin.test.mocks'; import { HomePublicPlugin } from './plugin'; import { coreMock } from '../../../core/public/mocks'; +import { kibanaLegacyPluginMock } from '../../kibana_legacy/public/mocks'; const mockInitializerContext = coreMock.createPluginInitializerContext(); @@ -29,58 +30,40 @@ describe('HomePublicPlugin', () => { registryMock.start.mockClear(); tutorialMock.setup.mockClear(); environmentMock.setup.mockClear(); - environmentMock.start.mockClear(); - tutorialMock.start.mockClear(); }); describe('setup', () => { test('wires up and returns registry', async () => { - const setup = await new HomePublicPlugin(mockInitializerContext).setup(); + const setup = await new HomePublicPlugin(mockInitializerContext).setup( + coreMock.createSetup() as any, + { + kibanaLegacy: kibanaLegacyPluginMock.createSetupContract(), + } + ); expect(setup).toHaveProperty('featureCatalogue'); expect(setup.featureCatalogue).toHaveProperty('register'); }); test('wires up and returns environment service', async () => { - const setup = await new HomePublicPlugin(mockInitializerContext).setup(); + const setup = await new HomePublicPlugin(mockInitializerContext).setup( + coreMock.createSetup() as any, + { + kibanaLegacy: kibanaLegacyPluginMock.createSetupContract(), + } + ); expect(setup).toHaveProperty('environment'); expect(setup.environment).toHaveProperty('update'); }); test('wires up and returns tutorial service', async () => { - const setup = await new HomePublicPlugin(mockInitializerContext).setup(); + const setup = await new HomePublicPlugin(mockInitializerContext).setup( + coreMock.createSetup() as any, + { + kibanaLegacy: kibanaLegacyPluginMock.createSetupContract(), + } + ); expect(setup).toHaveProperty('tutorials'); expect(setup.tutorials).toHaveProperty('setVariable'); }); }); - - describe('start', () => { - test('wires up and returns registry', async () => { - const service = new HomePublicPlugin(mockInitializerContext); - await service.setup(); - const core = { application: { capabilities: { catalogue: {} } } } as any; - const start = await service.start(core); - expect(registryMock.start).toHaveBeenCalledWith({ - capabilities: core.application.capabilities, - }); - expect(start.featureCatalogue.get).toBeDefined(); - }); - - test('wires up and returns environment service', async () => { - const service = new HomePublicPlugin(mockInitializerContext); - await service.setup(); - const start = await service.start({ - application: { capabilities: { catalogue: {} } }, - } as any); - expect(environmentMock.start).toHaveBeenCalled(); - expect(start.environment.get).toBeDefined(); - }); - - test('wires up and returns tutorial service', async () => { - const service = new HomePublicPlugin(mockInitializerContext); - await service.setup(); - const start = await service.start(coreMock.createStart()); - expect(tutorialMock.start).toHaveBeenCalled(); - expect(start.tutorials.get).toBeDefined(); - }); - }); }); diff --git a/src/plugins/home/public/plugin.ts b/src/plugins/home/public/plugin.ts index 975fd7bfb23c0d..2353df600aa691 100644 --- a/src/plugins/home/public/plugin.ts +++ b/src/plugins/home/public/plugin.ts @@ -17,68 +17,103 @@ * under the License. */ -import { CoreStart, Plugin, PluginInitializerContext } from 'kibana/public'; +import { + AppMountParameters, + CoreSetup, + CoreStart, + Plugin, + PluginInitializerContext, +} from 'kibana/public'; import { EnvironmentService, EnvironmentServiceSetup, - EnvironmentServiceStart, FeatureCatalogueRegistry, FeatureCatalogueRegistrySetup, - FeatureCatalogueRegistryStart, TutorialService, TutorialServiceSetup, - TutorialServiceStart, } from './services'; import { ConfigSchema } from '../config'; +import { setServices } from './application/kibana_services'; +import { DataPublicPluginStart } from '../../data/public'; +import { TelemetryPluginStart } from '../../telemetry/public'; +import { UsageCollectionSetup } from '../../usage_collection/public'; +import { KibanaLegacySetup } from '../../kibana_legacy/public'; + +export interface HomePluginStartDependencies { + data: DataPublicPluginStart; + telemetry?: TelemetryPluginStart; +} + +export interface HomePluginSetupDependencies { + usageCollection?: UsageCollectionSetup; + kibanaLegacy: KibanaLegacySetup; +} -export class HomePublicPlugin implements Plugin<HomePublicPluginSetup, HomePublicPluginStart> { +export class HomePublicPlugin implements Plugin<HomePublicPluginSetup, void> { private readonly featuresCatalogueRegistry = new FeatureCatalogueRegistry(); private readonly environmentService = new EnvironmentService(); private readonly tutorialService = new TutorialService(); constructor(private readonly initializerContext: PluginInitializerContext<ConfigSchema>) {} - public setup(): HomePublicPluginSetup { + public setup( + core: CoreSetup<HomePluginStartDependencies>, + { kibanaLegacy, usageCollection }: HomePluginSetupDependencies + ): HomePublicPluginSetup { + kibanaLegacy.registerLegacyApp({ + id: 'home', + title: 'Home', + mount: async (params: AppMountParameters) => { + const trackUiMetric = usageCollection + ? usageCollection.reportUiStats.bind(usageCollection, 'Kibana_home') + : () => {}; + const [coreStart, { telemetry, data }] = await core.getStartServices(); + setServices({ + trackUiMetric, + kibanaVersion: this.initializerContext.env.packageInfo.version, + http: coreStart.http, + toastNotifications: core.notifications.toasts, + banners: coreStart.overlays.banners, + docLinks: coreStart.docLinks, + savedObjectsClient: coreStart.savedObjects.client, + chrome: coreStart.chrome, + telemetry, + uiSettings: core.uiSettings, + addBasePath: core.http.basePath.prepend, + getBasePath: core.http.basePath.get, + indexPatternService: data.indexPatterns, + environmentService: this.environmentService, + config: kibanaLegacy.config, + homeConfig: this.initializerContext.config.get(), + tutorialService: this.tutorialService, + featureCatalogue: this.featuresCatalogueRegistry, + }); + const { renderApp } = await import('./application'); + return await renderApp(params.element); + }, + }); return { featureCatalogue: { ...this.featuresCatalogueRegistry.setup() }, environment: { ...this.environmentService.setup() }, tutorials: { ...this.tutorialService.setup() }, - config: this.initializerContext.config.get(), }; } - public start(core: CoreStart): HomePublicPluginStart { - return { - featureCatalogue: { - ...this.featuresCatalogueRegistry.start({ - capabilities: core.application.capabilities, - }), - }, - tutorials: { ...this.tutorialService.start() }, - environment: { ...this.environmentService.start() }, - }; + public start({ application: { capabilities } }: CoreStart) { + this.featuresCatalogueRegistry.start({ capabilities }); } } /** @public */ export type FeatureCatalogueSetup = FeatureCatalogueRegistrySetup; -/** @public */ -export type FeatureCatalogueStart = FeatureCatalogueRegistryStart; - /** @public */ export type EnvironmentSetup = EnvironmentServiceSetup; -/** @public */ -export type EnvironmentStart = EnvironmentServiceStart; - /** @public */ export type TutorialSetup = TutorialServiceSetup; -/** @public */ -export type TutorialStart = TutorialServiceStart; - /** @public */ export interface HomePublicPluginSetup { tutorials: TutorialServiceSetup; @@ -89,12 +124,4 @@ export interface HomePublicPluginSetup { * @deprecated */ environment: EnvironmentSetup; - config: ConfigSchema; -} - -/** @public */ -export interface HomePublicPluginStart { - tutorials: TutorialServiceStart; - featureCatalogue: FeatureCatalogueStart; - environment: EnvironmentStart; } diff --git a/src/plugins/home/public/services/environment/environment.mock.ts b/src/plugins/home/public/services/environment/environment.mock.ts index 5856145dced292..d8be02bf6552cb 100644 --- a/src/plugins/home/public/services/environment/environment.mock.ts +++ b/src/plugins/home/public/services/environment/environment.mock.ts @@ -17,11 +17,7 @@ * under the License. */ -import { - EnvironmentService, - EnvironmentServiceSetup, - EnvironmentServiceStart, -} from './environment'; +import { EnvironmentService, EnvironmentServiceSetup } from './environment'; const createSetupMock = (): jest.Mocked<EnvironmentServiceSetup> => { const setup = { @@ -30,25 +26,20 @@ const createSetupMock = (): jest.Mocked<EnvironmentServiceSetup> => { return setup; }; -const createStartMock = (): jest.Mocked<EnvironmentServiceStart> => { - const start = { - get: jest.fn(), - }; - return start; -}; - const createMock = (): jest.Mocked<PublicMethodsOf<EnvironmentService>> => { const service = { setup: jest.fn(), - start: jest.fn(), + getEnvironment: jest.fn(() => ({ + cloud: false, + apmUi: false, + ml: false, + })), }; service.setup.mockImplementation(createSetupMock); - service.start.mockImplementation(createStartMock); return service; }; export const environmentServiceMock = { createSetup: createSetupMock, - createStart: createStartMock, create: createMock, }; diff --git a/src/plugins/home/public/services/environment/environment.test.ts b/src/plugins/home/public/services/environment/environment.test.ts index f42eba782a760b..c4281021e04d6a 100644 --- a/src/plugins/home/public/services/environment/environment.test.ts +++ b/src/plugins/home/public/services/environment/environment.test.ts @@ -30,10 +30,10 @@ describe('EnvironmentService', () => { }); }); - describe('start', () => { + describe('getEnvironment', () => { test('returns default values', () => { const service = new EnvironmentService(); - expect(service.start().get()).toEqual({ ml: false, cloud: false, apmUi: false }); + expect(service.getEnvironment()).toEqual({ ml: false, cloud: false, apmUi: false }); }); test('returns last state of update calls', () => { @@ -41,7 +41,7 @@ describe('EnvironmentService', () => { const setup = service.setup(); setup.update({ ml: true, cloud: true }); setup.update({ ml: false, apmUi: true }); - expect(service.start().get()).toEqual({ ml: false, cloud: true, apmUi: true }); + expect(service.getEnvironment()).toEqual({ ml: false, cloud: true, apmUi: true }); }); }); }); diff --git a/src/plugins/home/public/services/environment/environment.ts b/src/plugins/home/public/services/environment/environment.ts index e2ddf912017e5d..b340d992c6f3e1 100644 --- a/src/plugins/home/public/services/environment/environment.ts +++ b/src/plugins/home/public/services/environment/environment.ts @@ -55,17 +55,9 @@ export class EnvironmentService { }; } - public start() { - return { - /** - * Retrieve the current environment home is running in. This API is only intended for internal - * use and is only exposed during a transition period of migrating the home app to the new platform. - * @deprecated - */ - get: (): Environment => this.environment, - }; + public getEnvironment() { + return this.environment; } } export type EnvironmentServiceSetup = ReturnType<EnvironmentService['setup']>; -export type EnvironmentServiceStart = ReturnType<EnvironmentService['start']>; diff --git a/src/plugins/home/public/services/environment/index.ts b/src/plugins/home/public/services/environment/index.ts index ed20f6adb96c6a..91d14c358e7db8 100644 --- a/src/plugins/home/public/services/environment/index.ts +++ b/src/plugins/home/public/services/environment/index.ts @@ -17,9 +17,4 @@ * under the License. */ -export { - EnvironmentService, - Environment, - EnvironmentServiceSetup, - EnvironmentServiceStart, -} from './environment'; +export { EnvironmentService, Environment, EnvironmentServiceSetup } from './environment'; diff --git a/src/plugins/home/public/services/feature_catalogue/feature_catalogue_registry.mock.ts b/src/plugins/home/public/services/feature_catalogue/feature_catalogue_registry.mock.ts index 54bdd42c1cca97..d7b87adfff78b1 100644 --- a/src/plugins/home/public/services/feature_catalogue/feature_catalogue_registry.mock.ts +++ b/src/plugins/home/public/services/feature_catalogue/feature_catalogue_registry.mock.ts @@ -19,7 +19,6 @@ import { FeatureCatalogueRegistrySetup, - FeatureCatalogueRegistryStart, FeatureCatalogueRegistry, } from './feature_catalogue_registry'; @@ -30,25 +29,17 @@ const createSetupMock = (): jest.Mocked<FeatureCatalogueRegistrySetup> => { return setup; }; -const createStartMock = (): jest.Mocked<FeatureCatalogueRegistryStart> => { - const start = { - get: jest.fn(), - }; - return start; -}; - const createMock = (): jest.Mocked<PublicMethodsOf<FeatureCatalogueRegistry>> => { const service = { setup: jest.fn(), start: jest.fn(), + get: jest.fn(() => []), }; service.setup.mockImplementation(createSetupMock); - service.start.mockImplementation(createStartMock); return service; }; export const featureCatalogueRegistryMock = { createSetup: createSetupMock, - createStart: createStartMock, create: createMock, }; diff --git a/src/plugins/home/public/services/feature_catalogue/feature_catalogue_registry.test.ts b/src/plugins/home/public/services/feature_catalogue/feature_catalogue_registry.test.ts index b174a68aa53be2..34095848dbd2cd 100644 --- a/src/plugins/home/public/services/feature_catalogue/feature_catalogue_registry.test.ts +++ b/src/plugins/home/public/services/feature_catalogue/feature_catalogue_registry.test.ts @@ -50,21 +50,24 @@ describe('FeatureCatalogueRegistry', () => { const service = new FeatureCatalogueRegistry(); service.setup().register(DASHBOARD_FEATURE); const capabilities = { catalogue: {} } as any; - expect(service.start({ capabilities }).get()).toEqual([DASHBOARD_FEATURE]); + service.start({ capabilities }); + expect(service.get()).toEqual([DASHBOARD_FEATURE]); }); test('retains items with true in capabilities', () => { const service = new FeatureCatalogueRegistry(); service.setup().register(DASHBOARD_FEATURE); const capabilities = { catalogue: { dashboard: true } } as any; - expect(service.start({ capabilities }).get()).toEqual([DASHBOARD_FEATURE]); + service.start({ capabilities }); + expect(service.get()).toEqual([DASHBOARD_FEATURE]); }); test('removes items with false in capabilities', () => { const service = new FeatureCatalogueRegistry(); service.setup().register(DASHBOARD_FEATURE); const capabilities = { catalogue: { dashboard: false } } as any; - expect(service.start({ capabilities }).get()).toEqual([]); + service.start({ capabilities }); + expect(service.get()).toEqual([]); }); }); }); @@ -77,7 +80,8 @@ describe('FeatureCatalogueRegistry', () => { setup.register({ id: '2', title: 'Apple' } as any); setup.register({ id: '3', title: 'Banana' } as any); const capabilities = { catalogue: {} } as any; - expect(service.start({ capabilities }).get()).toEqual([ + service.start({ capabilities }); + expect(service.get()).toEqual([ { id: '2', title: 'Apple' }, { id: '3', title: 'Banana' }, { id: '1', title: 'Orange' }, diff --git a/src/plugins/home/public/services/feature_catalogue/feature_catalogue_registry.ts b/src/plugins/home/public/services/feature_catalogue/feature_catalogue_registry.ts index 6ab342f37dfd9f..187a75b376d645 100644 --- a/src/plugins/home/public/services/feature_catalogue/feature_catalogue_registry.ts +++ b/src/plugins/home/public/services/feature_catalogue/feature_catalogue_registry.ts @@ -46,6 +46,7 @@ export interface FeatureCatalogueEntry { } export class FeatureCatalogueRegistry { + private capabilities: Capabilities | null = null; private readonly features = new Map<string, FeatureCatalogueEntry>(); public setup() { @@ -63,17 +64,21 @@ export class FeatureCatalogueRegistry { } public start({ capabilities }: { capabilities: Capabilities }) { - return { - get: (): readonly FeatureCatalogueEntry[] => - [...this.features.values()] - .filter(entry => capabilities.catalogue[entry.id] !== false) - .sort(compareByKey('title')), - }; + this.capabilities = capabilities; + } + + public get(): readonly FeatureCatalogueEntry[] { + if (this.capabilities === null) { + throw new Error('Catalogue entries are only available after start phase'); + } + const capabilities = this.capabilities; + return [...this.features.values()] + .filter(entry => capabilities.catalogue[entry.id] !== false) + .sort(compareByKey('title')); } } export type FeatureCatalogueRegistrySetup = ReturnType<FeatureCatalogueRegistry['setup']>; -export type FeatureCatalogueRegistryStart = ReturnType<FeatureCatalogueRegistry['start']>; const compareByKey = <T>(key: keyof T) => (left: T, right: T) => { if (left[key] < right[key]) { diff --git a/src/plugins/home/public/services/feature_catalogue/index.ts b/src/plugins/home/public/services/feature_catalogue/index.ts index eae01271e8559a..1e5021a3ad0bed 100644 --- a/src/plugins/home/public/services/feature_catalogue/index.ts +++ b/src/plugins/home/public/services/feature_catalogue/index.ts @@ -22,5 +22,4 @@ export { FeatureCatalogueEntry, FeatureCatalogueRegistry, FeatureCatalogueRegistrySetup, - FeatureCatalogueRegistryStart, } from './feature_catalogue_registry'; diff --git a/src/plugins/home/public/services/tutorials/index.ts b/src/plugins/home/public/services/tutorials/index.ts index 13a1c58c80f929..3de1e67204d966 100644 --- a/src/plugins/home/public/services/tutorials/index.ts +++ b/src/plugins/home/public/services/tutorials/index.ts @@ -17,9 +17,4 @@ * under the License. */ -export { - TutorialService, - TutorialVariables, - TutorialServiceSetup, - TutorialServiceStart, -} from './tutorial_service'; +export { TutorialService, TutorialVariables, TutorialServiceSetup } from './tutorial_service'; diff --git a/src/plugins/home/public/services/tutorials/tutorial_service.mock.ts b/src/plugins/home/public/services/tutorials/tutorial_service.mock.ts index 09397a0db83397..bd604fb231dee2 100644 --- a/src/plugins/home/public/services/tutorials/tutorial_service.mock.ts +++ b/src/plugins/home/public/services/tutorials/tutorial_service.mock.ts @@ -17,7 +17,7 @@ * under the License. */ -import { TutorialService, TutorialServiceSetup, TutorialServiceStart } from './tutorial_service'; +import { TutorialService, TutorialServiceSetup } from './tutorial_service'; const createSetupMock = (): jest.Mocked<TutorialServiceSetup> => { const setup = { @@ -26,25 +26,16 @@ const createSetupMock = (): jest.Mocked<TutorialServiceSetup> => { return setup; }; -const createStartMock = (): jest.Mocked<TutorialServiceStart> => { - const start = { - get: jest.fn(), - }; - return start; -}; - const createMock = (): jest.Mocked<PublicMethodsOf<TutorialService>> => { const service = { setup: jest.fn(), - start: jest.fn(), + getVariables: jest.fn(() => ({})), }; service.setup.mockImplementation(createSetupMock); - service.start.mockImplementation(createStartMock); return service; }; export const tutorialServiceMock = { createSetup: createSetupMock, - createStart: createStartMock, create: createMock, }; diff --git a/src/plugins/home/public/services/tutorials/tutorial_service.test.ts b/src/plugins/home/public/services/tutorials/tutorial_service.test.ts index 04f6bce9b7caa5..f4bcd71a39e8ae 100644 --- a/src/plugins/home/public/services/tutorials/tutorial_service.test.ts +++ b/src/plugins/home/public/services/tutorials/tutorial_service.test.ts @@ -38,10 +38,10 @@ describe('TutorialService', () => { }); }); - describe('start', () => { + describe('getVariables', () => { test('returns empty object', () => { const service = new TutorialService(); - expect(service.start().get()).toEqual({}); + expect(service.getVariables()).toEqual({}); }); test('returns last state of update calls', () => { @@ -49,7 +49,7 @@ describe('TutorialService', () => { const setup = service.setup(); setup.setVariable('abc', 123); setup.setVariable('def', { subKey: 456 }); - expect(service.start().get()).toEqual({ abc: 123, def: { subKey: 456 } }); + expect(service.getVariables()).toEqual({ abc: 123, def: { subKey: 456 } }); }); }); }); diff --git a/src/plugins/home/public/services/tutorials/tutorial_service.ts b/src/plugins/home/public/services/tutorials/tutorial_service.ts index 824c3d46a76a39..38297a64373152 100644 --- a/src/plugins/home/public/services/tutorials/tutorial_service.ts +++ b/src/plugins/home/public/services/tutorials/tutorial_service.ts @@ -37,17 +37,9 @@ export class TutorialService { }; } - public start() { - return { - /** - * Retrieve the variables for substitution in tutorials. This API is only intended for internal - * use and is only exposed during a transition period of migrating the home app to the new platform. - * @deprecated - */ - get: (): TutorialVariables => this.tutorialVariables, - }; + public getVariables() { + return this.tutorialVariables; } } export type TutorialServiceSetup = ReturnType<TutorialService['setup']>; -export type TutorialServiceStart = ReturnType<TutorialService['start']>; diff --git a/src/plugins/kibana_react/public/index.ts b/src/plugins/kibana_react/public/index.ts index a9087a772a9701..f04c6f1f19c338 100644 --- a/src/plugins/kibana_react/public/index.ts +++ b/src/plugins/kibana_react/public/index.ts @@ -25,6 +25,7 @@ export * from './ui_settings'; export * from './field_icon'; export * from './table_list_view'; export * from './split_panel'; +export { Markdown, MarkdownSimple } from './markdown'; export { reactToUiComponent, uiToReactComponent } from './adapters'; export { useUrlTracker } from './use_url_tracker'; export { toMountPoint } from './util'; diff --git a/src/legacy/core_plugins/kibana_react/public/markdown/__snapshots__/markdown.test.tsx.snap b/src/plugins/kibana_react/public/markdown/__snapshots__/markdown.test.tsx.snap similarity index 100% rename from src/legacy/core_plugins/kibana_react/public/markdown/__snapshots__/markdown.test.tsx.snap rename to src/plugins/kibana_react/public/markdown/__snapshots__/markdown.test.tsx.snap diff --git a/src/legacy/core_plugins/kibana_react/public/markdown/index.ts b/src/plugins/kibana_react/public/markdown/index.ts similarity index 100% rename from src/legacy/core_plugins/kibana_react/public/markdown/index.ts rename to src/plugins/kibana_react/public/markdown/index.ts diff --git a/src/legacy/core_plugins/kibana_react/public/markdown/markdown.test.tsx b/src/plugins/kibana_react/public/markdown/markdown.test.tsx similarity index 100% rename from src/legacy/core_plugins/kibana_react/public/markdown/markdown.test.tsx rename to src/plugins/kibana_react/public/markdown/markdown.test.tsx diff --git a/src/legacy/core_plugins/kibana_react/public/markdown/markdown.tsx b/src/plugins/kibana_react/public/markdown/markdown.tsx similarity index 100% rename from src/legacy/core_plugins/kibana_react/public/markdown/markdown.tsx rename to src/plugins/kibana_react/public/markdown/markdown.tsx diff --git a/src/legacy/core_plugins/kibana_react/public/markdown/markdown_simple.tsx b/src/plugins/kibana_react/public/markdown/markdown_simple.tsx similarity index 100% rename from src/legacy/core_plugins/kibana_react/public/markdown/markdown_simple.tsx rename to src/plugins/kibana_react/public/markdown/markdown_simple.tsx diff --git a/x-pack/plugins/infra/public/plugin.ts b/x-pack/plugins/infra/public/plugin.ts index 5d529e1fda0dcc..d576331662a084 100644 --- a/x-pack/plugins/infra/public/plugin.ts +++ b/x-pack/plugins/infra/public/plugin.ts @@ -24,7 +24,7 @@ import introspectionQueryResultData from './graphql/introspection.json'; import { InfraKibanaObservableApiAdapter } from './lib/adapters/observable_api/kibana_observable_api'; import { registerStartSingleton } from './legacy_singletons'; import { registerFeatures } from './register_feature'; -import { HomePublicPluginSetup, HomePublicPluginStart } from '../../../../src/plugins/home/public'; +import { HomePublicPluginSetup } from '../../../../src/plugins/home/public'; import { DataPublicPluginSetup, DataPublicPluginStart } from '../../../../src/plugins/data/public'; import { UsageCollectionSetup } from '../../../../src/plugins/usage_collection/public'; import { DataEnhancedSetup, DataEnhancedStart } from '../../data_enhanced/public'; @@ -41,7 +41,6 @@ export interface ClientPluginsSetup { } export interface ClientPluginsStart { - home: HomePublicPluginStart; data: DataPublicPluginStart; dataEnhanced: DataEnhancedStart; } diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 76e4acf365ff54..dbab88da973a12 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -1180,102 +1180,6 @@ "kbn.embeddable.inspectorRequestDataTitle": "データ", "kbn.embeddable.inspectorRequestDescription": "このリクエストは Elasticsearch にクエリをかけ、検索データを取得します。", "kbn.embeddable.search.displayName": "検索", - "kbn.home.addData.apm.addApmButtonLabel": "APM を追加", - "kbn.home.addData.apm.nameDescription": "APM は、集約内から自動的に詳細なパフォーマンスメトリックやエラーを集めます。", - "kbn.home.addData.apm.nameTitle": "APM", - "kbn.home.addData.logging.addLogDataButtonLabel": "ログデータを追加", - "kbn.home.addData.logging.nameDescription": "頻繁に使用するデータソースからログを投入し、構成済みのダッシュボードで簡単に可視化できます。", - "kbn.home.addData.logging.nameTitle": "ログ", - "kbn.home.addData.metrics.addMetricsDataButtonLabel": "メトリックデータを追加", - "kbn.home.addData.metrics.nameDescription": "サーバーのオペレーティングシステムと実行中のサービスからメトリックを収集します。", - "kbn.home.addData.metrics.nameTitle": "メトリック", - "kbn.home.addData.sampleDataLink": "データセットと Kibana ダッシュボードを読み込む", - "kbn.home.addData.sampleDataTitle": "サンプルデータの追加", - "kbn.home.addData.siem.addSiemEventsButtonLabel": "セキュリティイベントを追加", - "kbn.home.addData.siem.nameDescription": "即利用可能なビジュアライゼーションで、セキュリティイベントをまとめてインタラクティブな調査を可能にします。", - "kbn.home.addData.siem.nameTitle": "SIEM", - "kbn.home.addData.uploadFileLink": "CSV、NDJSON、またはログファイルをインポート", - "kbn.home.addData.uploadFileTitle": "ログファイルからデータをアップロード", - "kbn.home.addData.yourDataLink": "Elasticsearch インデックスに接続", - "kbn.home.addData.yourDataTitle": "Elasticsearch データの使用", - "kbn.home.breadcrumbs.addDataTitle": "データの投入", - "kbn.home.breadcrumbs.homeTitle": "ホーム", - "kbn.home.dataManagementDisableCollection": "収集を停止するには、", - "kbn.home.dataManagementDisableCollectionLink": "ここで使用状況データを無効にします。", - "kbn.home.dataManagementDisclaimerPrivacy": "使用状況データがどのように製品とサービスの管理と改善につながるのかに関する詳細については ", - "kbn.home.dataManagementDisclaimerPrivacyLink": "プライバシーポリシーをご覧ください。", - "kbn.home.dataManagementEnableCollection": " 収集を開始するには、", - "kbn.home.dataManagementEnableCollectionLink": "ここで使用状況データを有効にします。", - "kbn.home.directories.manage.nameTitle": "Elastic Stack の管理", - "kbn.home.directories.notFound.description": "お探しのものが見つかりませんでしたか?", - "kbn.home.directories.notFound.viewFullButtonLabel": "Kibana プラグインの完全なディレクトリを表示", - "kbn.home.directories.visualize.nameTitle": "データの可視化と閲覧", - "kbn.home.directory.directoryTitle": "ディレクトリ", - "kbn.home.directory.tabs.administrativeTitle": "管理", - "kbn.home.directory.tabs.allTitle": "すべて", - "kbn.home.directory.tabs.dataTitle": "データの閲覧と可視化", - "kbn.home.directory.tabs.otherTitle": "その他", - "kbn.home.exploreButtonLabel": "独りで閲覧", - "kbn.home.exploreYourDataDescription": "すべてのステップを終えたら、データ閲覧準備の完了です。", - "kbn.home.letsStartDescription": "クラスターにデータがありません。サンプルデータやダッシュボードで試すこともできますし、いきなり独自のデータを使用することもできます。", - "kbn.home.letsStartTitle": "始めましょう", - "kbn.home.loadTutorials.requestFailedErrorMessage": "リクエスト失敗、ステータスコード: {status}", - "kbn.home.loadTutorials.unableToLoadErrorMessage": "チュートリアルが読み込めません。", - "kbn.home.recentlyAccessed.recentlyViewedTitle": "最近閲覧", - "kbn.home.sampleDataSet.installedLabel": "{name} がインストールされました", - "kbn.home.sampleDataSet.unableToInstallErrorMessage": "サンプルデータセット「{name}」をインストールできません", - "kbn.home.sampleDataSet.unableToLoadListErrorMessage": "サンプルデータセットのリストを読み込めません", - "kbn.home.sampleDataSet.unableToUninstallErrorMessage": "サンプルデータセット「{name}」をアンインストールできません", - "kbn.home.sampleDataSet.uninstalledLabel": "{name} がアンインストールされました", - "kbn.home.sampleDataSetCard.addButtonAriaLabel": "{datasetName} を追加", - "kbn.home.sampleDataSetCard.addButtonLabel": "データの投入", - "kbn.home.sampleDataSetCard.addingButtonAriaLabel": "{datasetName} を追加中", - "kbn.home.sampleDataSetCard.addingButtonLabel": "追加中", - "kbn.home.sampleDataSetCard.dashboardLinkLabel": "ダッシュボード", - "kbn.home.sampleDataSetCard.default.addButtonAriaLabel": "{datasetName} を追加", - "kbn.home.sampleDataSetCard.default.addButtonLabel": "データの投入", - "kbn.home.sampleDataSetCard.default.unableToVerifyErrorMessage": "データセットステータスを確認できません、エラー: {statusMsg}", - "kbn.home.sampleDataSetCard.removeButtonAriaLabel": "{datasetName} を削除", - "kbn.home.sampleDataSetCard.removeButtonLabel": "削除", - "kbn.home.sampleDataSetCard.removingButtonAriaLabel": "{datasetName} を削除中", - "kbn.home.sampleDataSetCard.removingButtonLabel": "削除中", - "kbn.home.sampleDataSetCard.viewDataButtonAriaLabel": "{datasetName} を表示", - "kbn.home.sampleDataSetCard.viewDataButtonLabel": "データを表示", - "kbn.home.tryButtonLabel": "サンプルデータを試す", - "kbn.home.tutorial.addDataToKibanaTitle": "Kibana にデータを追加", - "kbn.home.tutorial.card.sampleDataDescription": "これらの「ワンクリック」データセットで Kibana の探索を始めましょう。", - "kbn.home.tutorial.card.sampleDataTitle": "サンプルデータ", - "kbn.home.tutorial.elasticCloudButtonLabel": "Elastic Cloud", - "kbn.home.tutorial.instruction.copyButtonLabel": "スニペットをコピー", - "kbn.home.tutorial.instructionSet.checkStatusButtonLabel": "ステータスを確認", - "kbn.home.tutorial.instructionSet.customizeLabel": "コードスニペットのカスタマイズ", - "kbn.home.tutorial.instructionSet.noDataLabel": "データが見つかりません", - "kbn.home.tutorial.instructionSet.statusCheckTitle": "ステータス確認", - "kbn.home.tutorial.instructionSet.successLabel": "成功", - "kbn.home.tutorial.instructionSet.toggleAriaLabel": "コマンドパラメーターの可視性を調整します", - "kbn.home.tutorial.introduction.betaLabel": "ベータ", - "kbn.home.tutorial.introduction.imageAltDescription": "プライマリダッシュボードのスクリーンショット", - "kbn.home.tutorial.introduction.viewButtonLabel": "エクスポートされたフィールドを表示", - "kbn.home.tutorial.noTutorialLabel": "チュートリアル {tutorialId} が見つかりません", - "kbn.home.tutorial.savedObject.addedLabel": "{savedObjectsLength} 件の保存されたオブジェクトが追加されました", - "kbn.home.tutorial.savedObject.confirmButtonLabel": "上書きを確定", - "kbn.home.tutorial.savedObject.defaultButtonLabel": "Kibana オブジェクトを読み込む", - "kbn.home.tutorial.savedObject.installLabel": "インデックスパターン、ビジュアライゼーション、事前定義済みのダッシュボードをインポートします。", - "kbn.home.tutorial.savedObject.installStatusLabel": "{savedObjectsLength} 件中 {overwriteErrorsLength} 件のオブジェクトが既に存在します。インポートして既存のオブジェクトを上書きするには、「上書きを確定」をクリックしてください。オブジェクトへの変更はすべて失われます。", - "kbn.home.tutorial.savedObject.loadTitle": "Kibana オブジェクトを読み込む", - "kbn.home.tutorial.savedObject.requestFailedErrorMessage": "リクエスト失敗、エラー: {message}", - "kbn.home.tutorial.savedObject.unableToAddErrorMessage": "{savedObjectsLength} 件中 {errorsLength} 件の kibana オブジェクトが追加できません、エラー: {errorMessage}", - "kbn.home.tutorial.selfManagedButtonLabel": "セルフマネージド", - "kbn.home.tutorial.tabs.allTitle": "すべて", - "kbn.home.tutorial.tabs.loggingTitle": "ログ", - "kbn.home.tutorial.tabs.metricsTitle": "メトリック", - "kbn.home.tutorial.tabs.sampleDataTitle": "サンプルデータ", - "kbn.home.tutorial.tabs.siemTitle": "SIEM", - "kbn.home.tutorial.unexpectedStatusCheckStateErrorDescription": "予期せぬステータス確認ステータス {statusCheckState}", - "kbn.home.tutorial.unhandledInstructionTypeErrorDescription": "予期せぬ指示タイプ {visibleInstructions}", - "kbn.home.welcomeDescription": "Elastic Stack への開かれた窓", - "kbn.home.welcomeHomePageHeader": "Kibana ホーム", - "kbn.home.welcomeTitle": "Kibana へようこそ", "kbn.management.createIndexPattern.betaLabel": "ベータ", "kbn.management.createIndexPattern.emptyState.checkDataButton": "新規データを確認", "kbn.management.createIndexPattern.emptyStateHeader": "Elasticsearch データが見つかりませんでした", @@ -1647,6 +1551,99 @@ "kibana_legacy.notify.toaster.errorMessage": "错误:{errorMessage}\n {errorStack}", "kibana_legacy.notify.toaster.errorStatusMessage": "错误 {errStatus} {errStatusText}:{errMessage}", "kibana_legacy.notify.toaster.unavailableServerErrorMessage": "HTTP 请求无法连接。请检查 Kibana 服务器是否正在运行以及您的浏览器是否具有有效的连接,或请联系您的系统管理员。", + "home.addData.apm.addApmButtonLabel": "APM を追加", + "home.addData.apm.nameDescription": "APM は、集約内から自動的に詳細なパフォーマンスメトリックやエラーを集めます。", + "home.addData.apm.nameTitle": "APM", + "home.addData.logging.addLogDataButtonLabel": "ログデータを追加", + "home.addData.logging.nameDescription": "頻繁に使用するデータソースからログを投入し、構成済みのダッシュボードで簡単に可視化できます。", + "home.addData.logging.nameTitle": "ログ", + "home.addData.metrics.addMetricsDataButtonLabel": "メトリックデータを追加", + "home.addData.metrics.nameDescription": "サーバーのオペレーティングシステムと実行中のサービスからメトリックを収集します。", + "home.addData.metrics.nameTitle": "メトリック", + "home.addData.sampleDataLink": "データセットと Kibana ダッシュボードを読み込む", + "home.addData.sampleDataTitle": "サンプルデータの追加", + "home.addData.siem.addSiemEventsButtonLabel": "セキュリティイベントを追加", + "home.addData.siem.nameDescription": "即利用可能なビジュアライゼーションで、セキュリティイベントをまとめてインタラクティブな調査を可能にします。", + "home.addData.siem.nameTitle": "SIEM", + "home.addData.uploadFileLink": "CSV、NDJSON、またはログファイルをインポート", + "home.addData.uploadFileTitle": "ログファイルからデータをアップロード", + "home.addData.yourDataLink": "Elasticsearch インデックスに接続", + "home.addData.yourDataTitle": "Elasticsearch データの使用", + "home.breadcrumbs.addDataTitle": "データの投入", + "home.breadcrumbs.homeTitle": "ホーム", + "home.dataManagementDisableCollection": "収集を停止するには、", + "home.dataManagementDisableCollectionLink": "ここで使用状況データを無効にします。", + "home.dataManagementDisclaimerPrivacy": "使用状況データがどのように製品とサービスの管理と改善につながるのかに関する詳細については ", + "home.dataManagementDisclaimerPrivacyLink": "プライバシーポリシーをご覧ください。", + "home.dataManagementEnableCollection": " 収集を開始するには、", + "home.dataManagementEnableCollectionLink": "ここで使用状況データを有効にします。", + "home.directories.manage.nameTitle": "Elastic Stack の管理", + "home.directories.notFound.description": "お探しのものが見つかりませんでしたか?", + "home.directories.notFound.viewFullButtonLabel": "Kibana プラグインの完全なディレクトリを表示", + "home.directories.visualize.nameTitle": "データの可視化と閲覧", + "home.directory.directoryTitle": "ディレクトリ", + "home.directory.tabs.administrativeTitle": "管理", + "home.directory.tabs.allTitle": "すべて", + "home.directory.tabs.dataTitle": "データの閲覧と可視化", + "home.directory.tabs.otherTitle": "その他", + "home.exploreButtonLabel": "独りで閲覧", + "home.exploreYourDataDescription": "すべてのステップを終えたら、データ閲覧準備の完了です。", + "home.letsStartDescription": "クラスターにデータがありません。サンプルデータやダッシュボードで試すこともできますし、いきなり独自のデータを使用することもできます。", + "home.letsStartTitle": "始めましょう", + "home.loadTutorials.requestFailedErrorMessage": "リクエスト失敗、ステータスコード: {status}", + "home.loadTutorials.unableToLoadErrorMessage": "チュートリアルが読み込めません。", + "home.recentlyAccessed.recentlyViewedTitle": "最近閲覧", + "home.sampleDataSet.installedLabel": "{name} がインストールされました", + "home.sampleDataSet.unableToInstallErrorMessage": "サンプルデータセット「{name}」をインストールできません", + "home.sampleDataSet.unableToLoadListErrorMessage": "サンプルデータセットのリストを読み込めません", + "home.sampleDataSet.unableToUninstallErrorMessage": "サンプルデータセット「{name}」をアンインストールできません", + "home.sampleDataSet.uninstalledLabel": "{name} がアンインストールされました", + "home.sampleDataSetCard.addButtonAriaLabel": "{datasetName} を追加", + "home.sampleDataSetCard.addButtonLabel": "データの投入", + "home.sampleDataSetCard.addingButtonAriaLabel": "{datasetName} を追加中", + "home.sampleDataSetCard.addingButtonLabel": "追加中", + "home.sampleDataSetCard.dashboardLinkLabel": "ダッシュボード", + "home.sampleDataSetCard.default.addButtonAriaLabel": "{datasetName} を追加", + "home.sampleDataSetCard.default.addButtonLabel": "データの投入", + "home.sampleDataSetCard.default.unableToVerifyErrorMessage": "データセットステータスを確認できません、エラー: {statusMsg}", + "home.sampleDataSetCard.removeButtonAriaLabel": "{datasetName} を削除", + "home.sampleDataSetCard.removeButtonLabel": "削除", + "home.sampleDataSetCard.removingButtonAriaLabel": "{datasetName} を削除中", + "home.sampleDataSetCard.removingButtonLabel": "削除中", + "home.sampleDataSetCard.viewDataButtonAriaLabel": "{datasetName} を表示", + "home.sampleDataSetCard.viewDataButtonLabel": "データを表示", + "home.tryButtonLabel": "サンプルデータを試す", + "home.tutorial.addDataToKibanaTitle": "Kibana にデータを追加", + "home.tutorial.card.sampleDataDescription": "これらの「ワンクリック」データセットで Kibana の探索を始めましょう。", + "home.tutorial.card.sampleDataTitle": "サンプルデータ", + "home.tutorial.elasticCloudButtonLabel": "Elastic Cloud", + "home.tutorial.instruction.copyButtonLabel": "スニペットをコピー", + "home.tutorial.instructionSet.checkStatusButtonLabel": "ステータスを確認", + "home.tutorial.instructionSet.customizeLabel": "コードスニペットのカスタマイズ", + "home.tutorial.instructionSet.noDataLabel": "データが見つかりません", + "home.tutorial.instructionSet.statusCheckTitle": "ステータス確認", + "home.tutorial.instructionSet.successLabel": "成功", + "home.tutorial.instructionSet.toggleAriaLabel": "コマンドパラメーターの可視性を調整します", + "home.tutorial.introduction.betaLabel": "ベータ", + "home.tutorial.introduction.imageAltDescription": "プライマリダッシュボードのスクリーンショット", + "home.tutorial.introduction.viewButtonLabel": "エクスポートされたフィールドを表示", + "home.tutorial.noTutorialLabel": "チュートリアル {tutorialId} が見つかりません", + "home.tutorial.savedObject.addedLabel": "{savedObjectsLength} 件の保存されたオブジェクトが追加されました", + "home.tutorial.savedObject.confirmButtonLabel": "上書きを確定", + "home.tutorial.savedObject.defaultButtonLabel": "Kibana オブジェクトを読み込む", + "home.tutorial.savedObject.installLabel": "インデックスパターン、ビジュアライゼーション、事前定義済みのダッシュボードをインポートします。", + "home.tutorial.savedObject.installStatusLabel": "{savedObjectsLength} 件中 {overwriteErrorsLength} 件のオブジェクトが既に存在します。インポートして既存のオブジェクトを上書きするには、「上書きを確定」をクリックしてください。オブジェクトへの変更はすべて失われます。", + "home.tutorial.savedObject.loadTitle": "Kibana オブジェクトを読み込む", + "home.tutorial.savedObject.requestFailedErrorMessage": "リクエスト失敗、エラー: {message}", + "home.tutorial.savedObject.unableToAddErrorMessage": "{savedObjectsLength} 件中 {errorsLength} 件の kibana オブジェクトが追加できません、エラー: {errorMessage}", + "home.tutorial.selfManagedButtonLabel": "セルフマネージド", + "home.tutorial.tabs.allTitle": "すべて", + "home.tutorial.tabs.loggingTitle": "ログ", + "home.tutorial.tabs.metricsTitle": "メトリック", + "home.tutorial.tabs.sampleDataTitle": "サンプルデータ", + "home.tutorial.tabs.siemTitle": "SIEM", + "home.tutorial.unexpectedStatusCheckStateErrorDescription": "予期せぬステータス確認ステータス {statusCheckState}", + "home.tutorial.unhandledInstructionTypeErrorDescription": "予期せぬ指示タイプ {visibleInstructions}", "home.tutorials.common.auditbeat.cloudInstructions.gettingStarted.title": "はじめに", "home.tutorials.common.auditbeat.premCloudInstructions.gettingStarted.title": "はじめに", "home.tutorials.common.auditbeat.premInstructions.gettingStarted.title": "はじめに", @@ -2202,6 +2199,9 @@ "home.tutorials.zookeeperMetrics.longDescription": "「{moduleName}」Metricbeat モジュールは、Zookeeper サーバーから内部メトリックを取得します。 [詳細]({learnMoreLink})。", "home.tutorials.zookeeperMetrics.nameTitle": "Zookeeper メトリック", "home.tutorials.zookeeperMetrics.shortDescription": "Zookeeper サーバーから内部メトリックを取得します。", + "home.welcomeDescription": "Elastic Stack への開かれた窓", + "home.welcomeHomePageHeader": "Kibana ホーム", + "home.welcomeTitle": "Kibana へようこそ", "visTypeVislib.area.areaDescription": "折れ線グラフの下の数量を強調します。", "visTypeVislib.area.areaTitle": "エリア", "visTypeVislib.area.countText": "カウント", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index 3e0425d7fe7e9e..afd12dba8ada71 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -1180,102 +1180,6 @@ "kbn.embeddable.inspectorRequestDataTitle": "数据", "kbn.embeddable.inspectorRequestDescription": "此请求将查询 Elasticsearch 以获取搜索的数据。", "kbn.embeddable.search.displayName": "搜索", - "kbn.home.addData.apm.addApmButtonLabel": "添加 APM", - "kbn.home.addData.apm.nameDescription": "APM 自动从您的应用程序内收集深入全面的性能指标和错误。", - "kbn.home.addData.apm.nameTitle": "APM", - "kbn.home.addData.logging.addLogDataButtonLabel": "添加日志数据", - "kbn.home.addData.logging.nameDescription": "从常见的数据源采集日志,并在预配置的仪表板中轻松实现可视化。", - "kbn.home.addData.logging.nameTitle": "日志", - "kbn.home.addData.metrics.addMetricsDataButtonLabel": "添加指标数据", - "kbn.home.addData.metrics.nameDescription": "从您的服务器上运行的操作系统和服务收集指标。", - "kbn.home.addData.metrics.nameTitle": "指标", - "kbn.home.addData.sampleDataLink": "加载数据集和 Kibana 仪表板", - "kbn.home.addData.sampleDataTitle": "添加样例数据", - "kbn.home.addData.siem.addSiemEventsButtonLabel": "添加安全事件", - "kbn.home.addData.siem.nameDescription": "集中安全事件,以通过即用型可视化实现交互式调查。", - "kbn.home.addData.siem.nameTitle": "SIEM", - "kbn.home.addData.uploadFileLink": "导入 CSV、NDJSON 或日志文件", - "kbn.home.addData.uploadFileTitle": "从日志文件上传数据", - "kbn.home.addData.yourDataLink": "连接到您的 Elasticsearch 索引", - "kbn.home.addData.yourDataTitle": "使用 Elasticsearch 数据", - "kbn.home.breadcrumbs.addDataTitle": "添加数据", - "kbn.home.breadcrumbs.homeTitle": "主页", - "kbn.home.dataManagementDisableCollection": "要停止收集,", - "kbn.home.dataManagementDisableCollectionLink": "请在此禁用使用情况数据。", - "kbn.home.dataManagementDisclaimerPrivacy": "要了解使用情况数据如何帮助我们管理和改善产品和服务,请参阅我们的 ", - "kbn.home.dataManagementDisclaimerPrivacyLink": "隐私声明。", - "kbn.home.dataManagementEnableCollection": " 要启动收集,", - "kbn.home.dataManagementEnableCollectionLink": "请在此处启用使用情况数据。", - "kbn.home.directories.manage.nameTitle": "管理 Elastic Stack", - "kbn.home.directories.notFound.description": "未找到要寻找的内容?", - "kbn.home.directories.notFound.viewFullButtonLabel": "查看 Kibana 插件的完整目录", - "kbn.home.directories.visualize.nameTitle": "可视化和浏览数据", - "kbn.home.directory.directoryTitle": "目录", - "kbn.home.directory.tabs.administrativeTitle": "管理", - "kbn.home.directory.tabs.allTitle": "全部", - "kbn.home.directory.tabs.dataTitle": "数据浏览和可视化", - "kbn.home.directory.tabs.otherTitle": "其他", - "kbn.home.exploreButtonLabel": "自己浏览", - "kbn.home.exploreYourDataDescription": "完成所有步骤后,您便可以随时浏览自己的数据。", - "kbn.home.letsStartDescription": "我们注意到在您的集群中没有任何数据。您可以试用我们的样例数据和仪表板,也可以直接使用自己的数据。", - "kbn.home.letsStartTitle": "开始使用", - "kbn.home.loadTutorials.requestFailedErrorMessage": "请求失败,状态代码:{status}", - "kbn.home.loadTutorials.unableToLoadErrorMessage": "无法加载教程", - "kbn.home.recentlyAccessed.recentlyViewedTitle": "最近查看", - "kbn.home.sampleDataSet.installedLabel": "{name} 已安装", - "kbn.home.sampleDataSet.unableToInstallErrorMessage": "无法安装样例数据集:{name}", - "kbn.home.sampleDataSet.unableToLoadListErrorMessage": "无法加载样例数据集列表", - "kbn.home.sampleDataSet.unableToUninstallErrorMessage": "无法卸载样例数据集:{name}", - "kbn.home.sampleDataSet.uninstalledLabel": "{name} 已卸载", - "kbn.home.sampleDataSetCard.addButtonAriaLabel": "添加{datasetName}", - "kbn.home.sampleDataSetCard.addButtonLabel": "添加数据", - "kbn.home.sampleDataSetCard.addingButtonAriaLabel": "正在添加 {datasetName}", - "kbn.home.sampleDataSetCard.addingButtonLabel": "正在添加", - "kbn.home.sampleDataSetCard.dashboardLinkLabel": "仪表板", - "kbn.home.sampleDataSetCard.default.addButtonAriaLabel": "添加{datasetName}", - "kbn.home.sampleDataSetCard.default.addButtonLabel": "添加数据", - "kbn.home.sampleDataSetCard.default.unableToVerifyErrorMessage": "无法确认数据集状态,错误:{statusMsg}", - "kbn.home.sampleDataSetCard.removeButtonAriaLabel": "移除 {datasetName}", - "kbn.home.sampleDataSetCard.removeButtonLabel": "删除", - "kbn.home.sampleDataSetCard.removingButtonAriaLabel": "正在移除 {datasetName}", - "kbn.home.sampleDataSetCard.removingButtonLabel": "正在删除", - "kbn.home.sampleDataSetCard.viewDataButtonAriaLabel": "查看“{datasetName}”", - "kbn.home.sampleDataSetCard.viewDataButtonLabel": "查看数据", - "kbn.home.tryButtonLabel": "试用我的样例数据", - "kbn.home.tutorial.addDataToKibanaTitle": "将数据添加到 Kibana", - "kbn.home.tutorial.card.sampleDataDescription": "开始使用这些“一键式”数据集浏览 Kibana。", - "kbn.home.tutorial.card.sampleDataTitle": "样例数据", - "kbn.home.tutorial.elasticCloudButtonLabel": "Elastic Cloud", - "kbn.home.tutorial.instruction.copyButtonLabel": "复制代码片段", - "kbn.home.tutorial.instructionSet.checkStatusButtonLabel": "检查状态", - "kbn.home.tutorial.instructionSet.customizeLabel": "定制您的代码片段", - "kbn.home.tutorial.instructionSet.noDataLabel": "未找到任何数据", - "kbn.home.tutorial.instructionSet.statusCheckTitle": "状态检查", - "kbn.home.tutorial.instructionSet.successLabel": "成功", - "kbn.home.tutorial.instructionSet.toggleAriaLabel": "切换命令参数可见性", - "kbn.home.tutorial.introduction.betaLabel": "公测版", - "kbn.home.tutorial.introduction.imageAltDescription": "主仪表板的截图。", - "kbn.home.tutorial.introduction.viewButtonLabel": "查看导出的字段", - "kbn.home.tutorial.noTutorialLabel": "无法找到教程 {tutorialId}", - "kbn.home.tutorial.savedObject.addedLabel": "{savedObjectsLength} 个已保存对象已成功添加", - "kbn.home.tutorial.savedObject.confirmButtonLabel": "确认覆盖", - "kbn.home.tutorial.savedObject.defaultButtonLabel": "加载 Kibana 对象", - "kbn.home.tutorial.savedObject.installLabel": "导入索引模式、可视化和预定义仪表板。", - "kbn.home.tutorial.savedObject.installStatusLabel": "{savedObjectsLength} 个对象中有 {overwriteErrorsLength} 个已存在。单击“确认覆盖”以导入和覆盖现有对象。对这些对象的任何更改将丢失。", - "kbn.home.tutorial.savedObject.loadTitle": "加载 Kibana 对象", - "kbn.home.tutorial.savedObject.requestFailedErrorMessage": "请求失败,错误:{message}", - "kbn.home.tutorial.savedObject.unableToAddErrorMessage": "{savedObjectsLength} 个 kibana 对象中有 {errorsLength} 个无法添加,错误:{errorMessage}", - "kbn.home.tutorial.selfManagedButtonLabel": "自管型", - "kbn.home.tutorial.tabs.allTitle": "全部", - "kbn.home.tutorial.tabs.loggingTitle": "日志", - "kbn.home.tutorial.tabs.metricsTitle": "指标", - "kbn.home.tutorial.tabs.sampleDataTitle": "样例数据", - "kbn.home.tutorial.tabs.siemTitle": "SIEM", - "kbn.home.tutorial.unexpectedStatusCheckStateErrorDescription": "意外的状态检查状态 {statusCheckState}", - "kbn.home.tutorial.unhandledInstructionTypeErrorDescription": "未处理的指令类型 {visibleInstructions}", - "kbn.home.welcomeDescription": "您了解 Elastic Stack 的窗口", - "kbn.home.welcomeHomePageHeader": "Kibana 主页", - "kbn.home.welcomeTitle": "欢迎使用 Kibana", "kbn.management.createIndexPattern.betaLabel": "公测版", "kbn.management.createIndexPattern.emptyState.checkDataButton": "检查新数据", "kbn.management.createIndexPattern.emptyStateHeader": "找不到任何 Elasticsearch 数据", @@ -1648,6 +1552,99 @@ "kibana_legacy.notify.toaster.errorMessage": "错误:{errorMessage}\n {errorStack}", "kibana_legacy.notify.toaster.errorStatusMessage": "错误 {errStatus} {errStatusText}:{errMessage}", "kibana_legacy.notify.toaster.unavailableServerErrorMessage": "HTTP 请求无法连接。请检查 Kibana 服务器是否正在运行以及您的浏览器是否具有有效的连接,或请联系您的系统管理员。", + "home.addData.apm.addApmButtonLabel": "添加 APM", + "home.addData.apm.nameDescription": "APM 自动从您的应用程序内收集深入全面的性能指标和错误。", + "home.addData.apm.nameTitle": "APM", + "home.addData.logging.addLogDataButtonLabel": "添加日志数据", + "home.addData.logging.nameDescription": "从常见的数据源采集日志,并在预配置的仪表板中轻松实现可视化。", + "home.addData.logging.nameTitle": "日志", + "home.addData.metrics.addMetricsDataButtonLabel": "添加指标数据", + "home.addData.metrics.nameDescription": "从您的服务器上运行的操作系统和服务收集指标。", + "home.addData.metrics.nameTitle": "指标", + "home.addData.sampleDataLink": "加载数据集和 Kibana 仪表板", + "home.addData.sampleDataTitle": "添加样例数据", + "home.addData.siem.addSiemEventsButtonLabel": "添加安全事件", + "home.addData.siem.nameDescription": "集中安全事件,以通过即用型可视化实现交互式调查。", + "home.addData.siem.nameTitle": "SIEM", + "home.addData.uploadFileLink": "导入 CSV、NDJSON 或日志文件", + "home.addData.uploadFileTitle": "从日志文件上传数据", + "home.addData.yourDataLink": "连接到您的 Elasticsearch 索引", + "home.addData.yourDataTitle": "使用 Elasticsearch 数据", + "home.breadcrumbs.addDataTitle": "添加数据", + "home.breadcrumbs.homeTitle": "主页", + "home.dataManagementDisableCollection": "要停止收集,", + "home.dataManagementDisableCollectionLink": "请在此禁用使用情况数据。", + "home.dataManagementDisclaimerPrivacy": "要了解使用情况数据如何帮助我们管理和改善产品和服务,请参阅我们的 ", + "home.dataManagementDisclaimerPrivacyLink": "隐私声明。", + "home.dataManagementEnableCollection": " 要启动收集,", + "home.dataManagementEnableCollectionLink": "请在此处启用使用情况数据。", + "home.directories.manage.nameTitle": "管理 Elastic Stack", + "home.directories.notFound.description": "未找到要寻找的内容?", + "home.directories.notFound.viewFullButtonLabel": "查看 Kibana 插件的完整目录", + "home.directories.visualize.nameTitle": "可视化和浏览数据", + "home.directory.directoryTitle": "目录", + "home.directory.tabs.administrativeTitle": "管理", + "home.directory.tabs.allTitle": "全部", + "home.directory.tabs.dataTitle": "数据浏览和可视化", + "home.directory.tabs.otherTitle": "其他", + "home.exploreButtonLabel": "自己浏览", + "home.exploreYourDataDescription": "完成所有步骤后,您便可以随时浏览自己的数据。", + "home.letsStartDescription": "我们注意到在您的集群中没有任何数据。您可以试用我们的样例数据和仪表板,也可以直接使用自己的数据。", + "home.letsStartTitle": "开始使用", + "home.loadTutorials.requestFailedErrorMessage": "请求失败,状态代码:{status}", + "home.loadTutorials.unableToLoadErrorMessage": "无法加载教程", + "home.recentlyAccessed.recentlyViewedTitle": "最近查看", + "home.sampleDataSet.installedLabel": "{name} 已安装", + "home.sampleDataSet.unableToInstallErrorMessage": "无法安装样例数据集:{name}", + "home.sampleDataSet.unableToLoadListErrorMessage": "无法加载样例数据集列表", + "home.sampleDataSet.unableToUninstallErrorMessage": "无法卸载样例数据集:{name}", + "home.sampleDataSet.uninstalledLabel": "{name} 已卸载", + "home.sampleDataSetCard.addButtonAriaLabel": "添加{datasetName}", + "home.sampleDataSetCard.addButtonLabel": "添加数据", + "home.sampleDataSetCard.addingButtonAriaLabel": "正在添加 {datasetName}", + "home.sampleDataSetCard.addingButtonLabel": "正在添加", + "home.sampleDataSetCard.dashboardLinkLabel": "仪表板", + "home.sampleDataSetCard.default.addButtonAriaLabel": "添加{datasetName}", + "home.sampleDataSetCard.default.addButtonLabel": "添加数据", + "home.sampleDataSetCard.default.unableToVerifyErrorMessage": "无法确认数据集状态,错误:{statusMsg}", + "home.sampleDataSetCard.removeButtonAriaLabel": "移除 {datasetName}", + "home.sampleDataSetCard.removeButtonLabel": "删除", + "home.sampleDataSetCard.removingButtonAriaLabel": "正在移除 {datasetName}", + "home.sampleDataSetCard.removingButtonLabel": "正在删除", + "home.sampleDataSetCard.viewDataButtonAriaLabel": "查看“{datasetName}”", + "home.sampleDataSetCard.viewDataButtonLabel": "查看数据", + "home.tryButtonLabel": "试用我的样例数据", + "home.tutorial.addDataToKibanaTitle": "将数据添加到 Kibana", + "home.tutorial.card.sampleDataDescription": "开始使用这些“一键式”数据集浏览 Kibana。", + "home.tutorial.card.sampleDataTitle": "样例数据", + "home.tutorial.elasticCloudButtonLabel": "Elastic Cloud", + "home.tutorial.instruction.copyButtonLabel": "复制代码片段", + "home.tutorial.instructionSet.checkStatusButtonLabel": "检查状态", + "home.tutorial.instructionSet.customizeLabel": "定制您的代码片段", + "home.tutorial.instructionSet.noDataLabel": "未找到任何数据", + "home.tutorial.instructionSet.statusCheckTitle": "状态检查", + "home.tutorial.instructionSet.successLabel": "成功", + "home.tutorial.instructionSet.toggleAriaLabel": "切换命令参数可见性", + "home.tutorial.introduction.betaLabel": "公测版", + "home.tutorial.introduction.imageAltDescription": "主仪表板的截图。", + "home.tutorial.introduction.viewButtonLabel": "查看导出的字段", + "home.tutorial.noTutorialLabel": "无法找到教程 {tutorialId}", + "home.tutorial.savedObject.addedLabel": "{savedObjectsLength} 个已保存对象已成功添加", + "home.tutorial.savedObject.confirmButtonLabel": "确认覆盖", + "home.tutorial.savedObject.defaultButtonLabel": "加载 Kibana 对象", + "home.tutorial.savedObject.installLabel": "导入索引模式、可视化和预定义仪表板。", + "home.tutorial.savedObject.installStatusLabel": "{savedObjectsLength} 个对象中有 {overwriteErrorsLength} 个已存在。单击“确认覆盖”以导入和覆盖现有对象。对这些对象的任何更改将丢失。", + "home.tutorial.savedObject.loadTitle": "加载 Kibana 对象", + "home.tutorial.savedObject.requestFailedErrorMessage": "请求失败,错误:{message}", + "home.tutorial.savedObject.unableToAddErrorMessage": "{savedObjectsLength} 个 kibana 对象中有 {errorsLength} 个无法添加,错误:{errorMessage}", + "home.tutorial.selfManagedButtonLabel": "自管型", + "home.tutorial.tabs.allTitle": "全部", + "home.tutorial.tabs.loggingTitle": "日志", + "home.tutorial.tabs.metricsTitle": "指标", + "home.tutorial.tabs.sampleDataTitle": "样例数据", + "home.tutorial.tabs.siemTitle": "SIEM", + "home.tutorial.unexpectedStatusCheckStateErrorDescription": "意外的状态检查状态 {statusCheckState}", + "home.tutorial.unhandledInstructionTypeErrorDescription": "未处理的指令类型 {visibleInstructions}", "home.tutorials.common.auditbeat.cloudInstructions.gettingStarted.title": "入门", "home.tutorials.common.auditbeat.premCloudInstructions.gettingStarted.title": "入门", "home.tutorials.common.auditbeat.premInstructions.gettingStarted.title": "入门", @@ -2203,6 +2200,9 @@ "home.tutorials.zookeeperMetrics.longDescription": "Metricbeat 模块 `{moduleName}` 从 Zookeeper 服务器提取内部指标。[了解详情]({learnMoreLink})。", "home.tutorials.zookeeperMetrics.nameTitle": "Zookeeper 指标", "home.tutorials.zookeeperMetrics.shortDescription": "从 Zookeeper 服务器提取内部指标。", + "home.welcomeDescription": "您了解 Elastic Stack 的窗口", + "home.welcomeHomePageHeader": "Kibana 主页", + "home.welcomeTitle": "欢迎使用 Kibana", "visTypeVislib.area.areaDescription": "突出折线图下方的数量", "visTypeVislib.area.areaTitle": "面积图", "visTypeVislib.area.countText": "计数", From 5a2180507822cc4801f9408cb126539b80f4d07a Mon Sep 17 00:00:00 2001 From: Jean-Louis Leysens <jloleysens@gmail.com> Date: Wed, 4 Mar 2020 08:42:45 +0100 Subject: [PATCH 084/120] [Console] Fix overriding of `host` header name (#59143) * fix: only override hostname if none was provided Copy the behaviour or Wreck.request from 7.4. This is a regression for setting the Host header value. * Refactor variable name * [skip ci] Fix comment --- .../console/server/lib/proxy_request.test.ts | 61 +++++++++++++++++-- .../console/server/lib/proxy_request.ts | 11 +++- 2 files changed, 64 insertions(+), 8 deletions(-) diff --git a/src/plugins/console/server/lib/proxy_request.test.ts b/src/plugins/console/server/lib/proxy_request.test.ts index 0285daef7d725e..4ec5218355996d 100644 --- a/src/plugins/console/server/lib/proxy_request.test.ts +++ b/src/plugins/console/server/lib/proxy_request.test.ts @@ -30,11 +30,6 @@ describe(`Console's send request`, () => { beforeEach(() => { sandbox = sinon.createSandbox(); stub = sandbox.stub(http, 'request').callsFake(() => { - fakeRequest = { - abort: sinon.stub(), - on() {}, - once() {}, - } as any; return fakeRequest; }); }); @@ -45,6 +40,11 @@ describe(`Console's send request`, () => { }); it('correctly implements timeout and abort mechanism', async () => { + fakeRequest = { + abort: sinon.stub(), + on() {}, + once() {}, + } as any; try { await proxyRequest({ agent: null as any, @@ -60,4 +60,55 @@ describe(`Console's send request`, () => { expect((fakeRequest.abort as sinon.SinonStub).calledOnce).toBe(true); } }); + + it('correctly sets the "host" header entry', async () => { + fakeRequest = { + abort: sinon.stub(), + on() {}, + once(event: string, fn: any) { + if (event === 'response') { + return fn('done'); + } + }, + } as any; + + // Don't set a host header this time + const result1 = await proxyRequest({ + agent: null as any, + headers: {}, + method: 'get', + payload: null as any, + timeout: 30000, + uri: new URL('http://noone.nowhere.none'), + }); + + expect(result1).toEqual('done'); + + const [httpRequestOptions1] = stub.firstCall.args; + + expect((httpRequestOptions1 as any).headers).toEqual({ + 'content-type': 'application/json', + host: 'noone.nowhere.none', // Defaults to the provided host name + 'transfer-encoding': 'chunked', + }); + + // Set a host header + const result2 = await proxyRequest({ + agent: null as any, + headers: { Host: 'myhost' }, + method: 'get', + payload: null as any, + timeout: 30000, + uri: new URL('http://noone.nowhere.none'), + }); + + expect(result2).toEqual('done'); + + const [httpRequestOptions2] = stub.secondCall.args; + expect((httpRequestOptions2 as any).headers).toEqual({ + 'content-type': 'application/json', + Host: 'myhost', // Uses provided host name + 'transfer-encoding': 'chunked', + }); + }); }); diff --git a/src/plugins/console/server/lib/proxy_request.ts b/src/plugins/console/server/lib/proxy_request.ts index ed02b23d77f6a4..cc957551e47a7f 100644 --- a/src/plugins/console/server/lib/proxy_request.ts +++ b/src/plugins/console/server/lib/proxy_request.ts @@ -57,19 +57,24 @@ export const proxyRequest = ({ reject = rej; }); + const finalUserHeaders = { ...headers }; + const hasHostHeader = Object.keys(finalUserHeaders).some(key => key.toLowerCase() === 'host'); + if (!hasHostHeader) { + finalUserHeaders.host = hostname; + } + const req = client.request({ method: method.toUpperCase(), // We support overriding this on a per request basis to support legacy proxy config. See ./proxy_config. rejectUnauthorized: typeof rejectUnauthorized === 'boolean' ? rejectUnauthorized : undefined, host: hostname, - port: port === '' ? undefined : Number(port), + port: port === '' ? undefined : parseInt(port, 10), protocol, path: `${pathname}${search || ''}`, headers: { - ...headers, + ...finalUserHeaders, 'content-type': 'application/json', 'transfer-encoding': 'chunked', - host: hostname, }, agent, }); From 18c3e8caf853f7dd2a67f8c0dc97da7829785c15 Mon Sep 17 00:00:00 2001 From: Aleh Zasypkin <aleh.zasypkin@gmail.com> Date: Wed, 4 Mar 2020 09:35:52 +0100 Subject: [PATCH 085/120] Migrate security chromeless views to Kibana Platform plugin (#54021) Co-authored-by: Joe Portner <5295965+jportner@users.noreply.github.com> --- test/functional/config.js | 4 - x-pack/legacy/plugins/security/index.d.ts | 15 - x-pack/legacy/plugins/security/index.js | 156 ------ x-pack/legacy/plugins/security/index.ts | 93 ++++ .../plugins/security/public/hacks/legacy.ts | 64 +++ .../public/hacks/on_session_timeout.js | 31 -- .../public/hacks/on_unauthorized_response.js | 38 -- .../legacy/plugins/security/public/index.scss | 15 - .../security/public/services/auto_logout.js | 33 -- .../plugins/security/public/views/_index.scss | 2 - .../security/public/views/account/account.js | 35 -- .../public/views/logged_out/logged_out.html | 1 - .../public/views/logged_out/logged_out.tsx | 41 -- .../security/public/views/login/_index.scss | 8 - .../public/views/login/components/_index.scss | 1 - .../basic_login_form.test.tsx | 109 ---- .../__snapshots__/login_page.test.tsx.snap | 485 ------------------ .../components/login_page/login_page.test.tsx | 133 ----- .../security/public/views/login/login.tsx | 69 --- .../security/public/views/logout/index.js | 7 - .../security/public/views/logout/logout.js | 14 - .../public/views/overwritten_session/index.js | 7 - .../overwritten_session.tsx | 48 -- .../server/lib/__tests__/parse_next.js | 172 ------- .../plugins/security/server/lib/parse_next.js | 37 -- .../server/routes/views/logged_out.js | 33 -- .../security/server/routes/views/login.js | 50 -- .../security/server/routes/views/logout.js | 20 - .../routes/views/overwritten_session.ts | 18 - .../xpack_main/public/services/path.js | 7 +- .../routes/api/v1/__tests__/xpack_info.js | 2 - .../{legacy => }/plugins/security/README.md | 0 .../security/common/licensing/index.ts | 2 +- .../common/licensing/license_features.ts | 12 +- .../common/licensing/license_service.test.ts | 2 - .../common/licensing/license_service.ts | 1 - .../security/common}/parse_next.test.ts | 0 .../security/common}/parse_next.ts | 0 .../account_management_app.test.ts | 73 +++ .../account_management_app.ts | 46 ++ .../account_management_page.tsx | 22 +- .../public/account_management/index.ts | 2 +- .../public/authentication/_index.scss | 5 + .../authentication/authentication_service.ts | 34 +- .../authentication}/components/_index.scss | 0 .../authentication_state_page.test.tsx.snap | 0 .../_authentication_state_page.scss | 0 .../authentication_state_page/_index.scss | 0 .../authentication_state_page.test.tsx | 0 .../authentication_state_page.tsx | 0 .../authentication_state_page/index.tsx | 0 .../public/authentication/components/index.ts | 7 + .../authentication/logged_out}/index.ts | 2 +- .../logged_out/logged_out_app.test.ts | 58 +++ .../logged_out/logged_out_app.ts | 34 ++ .../logged_out/logged_out_page.tsx | 44 ++ .../__snapshots__/login_page.test.tsx.snap | 188 +++++++ .../public/authentication/login}/_index.scss | 0 .../authentication/login}/_login_page.scss | 0 .../basic_login_form.test.tsx.snap | 0 .../basic_login_form.test.tsx | 111 ++++ .../basic_login_form/basic_login_form.tsx | 75 ++- .../components/basic_login_form/index.ts | 0 .../disabled_login_form.test.tsx.snap | 0 .../disabled_login_form.test.tsx | 0 .../disabled_login_form.tsx | 0 .../components/disabled_login_form/index.ts | 0 .../authentication/login/components/index.ts | 8 + .../public/authentication}/login/index.ts | 2 +- .../authentication/login/login_app.test.ts | 70 +++ .../public/authentication/login/login_app.ts | 43 ++ .../authentication/login/login_page.test.tsx | 282 ++++++++++ .../authentication/login}/login_page.tsx | 132 +++-- .../authentication}/login/login_state.ts | 2 +- .../public/authentication/logout}/index.ts | 2 +- .../authentication/logout/logout_app.test.ts | 66 +++ .../authentication/logout/logout_app.ts | 36 ++ .../overwritten_session_page.test.tsx.snap | 135 +++++ .../overwritten_session/index.ts} | 2 +- .../overwritten_session_app.test.ts | 67 +++ .../overwritten_session_app.ts | 39 ++ .../overwritten_session_page.test.tsx | 39 ++ .../overwritten_session_page.tsx | 63 +++ .../security/public/config.ts} | 4 +- x-pack/plugins/security/public/index.scss | 3 + x-pack/plugins/security/public/index.ts | 7 +- .../nav_control/nav_control_service.test.ts | 5 + .../nav_control/nav_control_service.tsx | 11 +- .../plugins/security/public/plugin.test.tsx | 147 ++++++ x-pack/plugins/security/public/plugin.tsx | 62 ++- .../server/authentication/authenticator.ts | 1 - .../authentication/providers/kerberos.test.ts | 2 +- .../authentication/providers/kerberos.ts | 4 +- .../authentication/providers/oidc.test.ts | 2 +- .../server/authentication/providers/oidc.ts | 2 +- .../authentication/providers/pki.test.ts | 2 +- .../server/authentication/providers/pki.ts | 4 +- .../authentication/providers/saml.test.ts | 30 +- .../server/authentication/providers/saml.ts | 4 +- x-pack/plugins/security/server/config.test.ts | 12 + x-pack/plugins/security/server/config.ts | 66 +-- x-pack/plugins/security/server/index.ts | 3 + x-pack/plugins/security/server/plugin.test.ts | 2 - x-pack/plugins/security/server/plugin.ts | 18 +- .../routes/authentication/basic.test.ts | 27 +- .../routes/authentication/common.test.ts | 27 +- .../routes/authentication/index.test.ts | 23 +- .../server/routes/authentication/saml.test.ts | 29 +- .../security/server/routes/index.mock.ts | 2 + .../plugins/security/server/routes/index.ts | 4 + .../routes/users/change_password.test.ts | 29 +- .../server/routes/views/account_management.ts | 19 + .../server/routes/views/index.test.ts | 65 +++ .../security/server/routes/views/index.ts | 23 + .../server/routes/views/logged_out.test.ts | 83 +++ .../server/routes/views/logged_out.ts | 48 ++ .../server/routes/views/login.test.ts | 197 +++++++ .../security/server/routes/views/login.ts | 64 +++ .../security/server/routes/views/logout.ts | 26 + .../routes/views/overwritten_session.ts | 22 + .../apis/security/kerberos_login.ts | 2 +- .../apis/security/pki_auth.ts | 2 +- .../apis/security/saml_login.ts | 2 +- 123 files changed, 2636 insertions(+), 1903 deletions(-) delete mode 100644 x-pack/legacy/plugins/security/index.d.ts delete mode 100644 x-pack/legacy/plugins/security/index.js create mode 100644 x-pack/legacy/plugins/security/index.ts create mode 100644 x-pack/legacy/plugins/security/public/hacks/legacy.ts delete mode 100644 x-pack/legacy/plugins/security/public/hacks/on_session_timeout.js delete mode 100644 x-pack/legacy/plugins/security/public/hacks/on_unauthorized_response.js delete mode 100644 x-pack/legacy/plugins/security/public/index.scss delete mode 100644 x-pack/legacy/plugins/security/public/services/auto_logout.js delete mode 100644 x-pack/legacy/plugins/security/public/views/_index.scss delete mode 100644 x-pack/legacy/plugins/security/public/views/account/account.js delete mode 100644 x-pack/legacy/plugins/security/public/views/logged_out/logged_out.html delete mode 100644 x-pack/legacy/plugins/security/public/views/logged_out/logged_out.tsx delete mode 100644 x-pack/legacy/plugins/security/public/views/login/_index.scss delete mode 100644 x-pack/legacy/plugins/security/public/views/login/components/_index.scss delete mode 100644 x-pack/legacy/plugins/security/public/views/login/components/basic_login_form/basic_login_form.test.tsx delete mode 100644 x-pack/legacy/plugins/security/public/views/login/components/login_page/__snapshots__/login_page.test.tsx.snap delete mode 100644 x-pack/legacy/plugins/security/public/views/login/components/login_page/login_page.test.tsx delete mode 100644 x-pack/legacy/plugins/security/public/views/login/login.tsx delete mode 100644 x-pack/legacy/plugins/security/public/views/logout/index.js delete mode 100644 x-pack/legacy/plugins/security/public/views/logout/logout.js delete mode 100644 x-pack/legacy/plugins/security/public/views/overwritten_session/index.js delete mode 100644 x-pack/legacy/plugins/security/public/views/overwritten_session/overwritten_session.tsx delete mode 100644 x-pack/legacy/plugins/security/server/lib/__tests__/parse_next.js delete mode 100644 x-pack/legacy/plugins/security/server/lib/parse_next.js delete mode 100644 x-pack/legacy/plugins/security/server/routes/views/logged_out.js delete mode 100644 x-pack/legacy/plugins/security/server/routes/views/login.js delete mode 100644 x-pack/legacy/plugins/security/server/routes/views/logout.js delete mode 100644 x-pack/legacy/plugins/security/server/routes/views/overwritten_session.ts rename x-pack/{legacy => }/plugins/security/README.md (100%) rename x-pack/{legacy/plugins/security/public/views/login => plugins/security/common}/parse_next.test.ts (100%) rename x-pack/{legacy/plugins/security/public/views/login => plugins/security/common}/parse_next.ts (100%) create mode 100644 x-pack/plugins/security/public/account_management/account_management_app.test.ts create mode 100644 x-pack/plugins/security/public/account_management/account_management_app.ts create mode 100644 x-pack/plugins/security/public/authentication/_index.scss rename x-pack/{legacy/plugins/security/public => plugins/security/public/authentication}/components/_index.scss (100%) rename x-pack/{legacy/plugins/security/public => plugins/security/public/authentication}/components/authentication_state_page/__snapshots__/authentication_state_page.test.tsx.snap (100%) rename x-pack/{legacy/plugins/security/public => plugins/security/public/authentication}/components/authentication_state_page/_authentication_state_page.scss (100%) rename x-pack/{legacy/plugins/security/public => plugins/security/public/authentication}/components/authentication_state_page/_index.scss (100%) rename x-pack/{legacy/plugins/security/public => plugins/security/public/authentication}/components/authentication_state_page/authentication_state_page.test.tsx (100%) rename x-pack/{legacy/plugins/security/public => plugins/security/public/authentication}/components/authentication_state_page/authentication_state_page.tsx (100%) rename x-pack/{legacy/plugins/security/public => plugins/security/public/authentication}/components/authentication_state_page/index.tsx (100%) create mode 100644 x-pack/plugins/security/public/authentication/components/index.ts rename x-pack/{legacy/plugins/security/public/views/login/components => plugins/security/public/authentication/logged_out}/index.ts (83%) create mode 100644 x-pack/plugins/security/public/authentication/logged_out/logged_out_app.test.ts create mode 100644 x-pack/plugins/security/public/authentication/logged_out/logged_out_app.ts create mode 100644 x-pack/plugins/security/public/authentication/logged_out/logged_out_page.tsx create mode 100644 x-pack/plugins/security/public/authentication/login/__snapshots__/login_page.test.tsx.snap rename x-pack/{legacy/plugins/security/public/views/login/components/login_page => plugins/security/public/authentication/login}/_index.scss (100%) rename x-pack/{legacy/plugins/security/public/views/login/components/login_page => plugins/security/public/authentication/login}/_login_page.scss (100%) rename x-pack/{legacy/plugins/security/public/views => plugins/security/public/authentication}/login/components/basic_login_form/__snapshots__/basic_login_form.test.tsx.snap (100%) create mode 100644 x-pack/plugins/security/public/authentication/login/components/basic_login_form/basic_login_form.test.tsx rename x-pack/{legacy/plugins/security/public/views => plugins/security/public/authentication}/login/components/basic_login_form/basic_login_form.tsx (76%) rename x-pack/{legacy/plugins/security/public/views => plugins/security/public/authentication}/login/components/basic_login_form/index.ts (100%) rename x-pack/{legacy/plugins/security/public/views => plugins/security/public/authentication}/login/components/disabled_login_form/__snapshots__/disabled_login_form.test.tsx.snap (100%) rename x-pack/{legacy/plugins/security/public/views => plugins/security/public/authentication}/login/components/disabled_login_form/disabled_login_form.test.tsx (100%) rename x-pack/{legacy/plugins/security/public/views => plugins/security/public/authentication}/login/components/disabled_login_form/disabled_login_form.tsx (100%) rename x-pack/{legacy/plugins/security/public/views => plugins/security/public/authentication}/login/components/disabled_login_form/index.ts (100%) create mode 100644 x-pack/plugins/security/public/authentication/login/components/index.ts rename x-pack/{legacy/plugins/security/public/views => plugins/security/public/authentication}/login/index.ts (85%) create mode 100644 x-pack/plugins/security/public/authentication/login/login_app.test.ts create mode 100644 x-pack/plugins/security/public/authentication/login/login_app.ts create mode 100644 x-pack/plugins/security/public/authentication/login/login_page.test.tsx rename x-pack/{legacy/plugins/security/public/views/login/components/login_page => plugins/security/public/authentication/login}/login_page.tsx (60%) rename x-pack/{legacy/plugins/security/public/views => plugins/security/public/authentication}/login/login_state.ts (78%) rename x-pack/{legacy/plugins/security/public/views/login/components/login_page => plugins/security/public/authentication/logout}/index.ts (85%) create mode 100644 x-pack/plugins/security/public/authentication/logout/logout_app.test.ts create mode 100644 x-pack/plugins/security/public/authentication/logout/logout_app.ts create mode 100644 x-pack/plugins/security/public/authentication/overwritten_session/__snapshots__/overwritten_session_page.test.tsx.snap rename x-pack/{legacy/plugins/security/public/views/logged_out/index.js => plugins/security/public/authentication/overwritten_session/index.ts} (78%) create mode 100644 x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_app.test.ts create mode 100644 x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_app.ts create mode 100644 x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_page.test.tsx create mode 100644 x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_page.tsx rename x-pack/{legacy/plugins/security/public/hacks/register_account_management_app.ts => plugins/security/public/config.ts} (78%) create mode 100644 x-pack/plugins/security/public/plugin.test.tsx create mode 100644 x-pack/plugins/security/server/routes/views/account_management.ts create mode 100644 x-pack/plugins/security/server/routes/views/index.test.ts create mode 100644 x-pack/plugins/security/server/routes/views/index.ts create mode 100644 x-pack/plugins/security/server/routes/views/logged_out.test.ts create mode 100644 x-pack/plugins/security/server/routes/views/logged_out.ts create mode 100644 x-pack/plugins/security/server/routes/views/login.test.ts create mode 100644 x-pack/plugins/security/server/routes/views/login.ts create mode 100644 x-pack/plugins/security/server/routes/views/logout.ts create mode 100644 x-pack/plugins/security/server/routes/views/overwritten_session.ts diff --git a/test/functional/config.js b/test/functional/config.js index 155e844578c545..e84b7e0a98a683 100644 --- a/test/functional/config.js +++ b/test/functional/config.js @@ -92,10 +92,6 @@ export default async function({ readConfigFile }) { pathname: '/app/kibana', hash: '/dev_tools/console', }, - account: { - pathname: '/app/kibana', - hash: '/account', - }, home: { pathname: '/app/kibana', hash: '/home', diff --git a/x-pack/legacy/plugins/security/index.d.ts b/x-pack/legacy/plugins/security/index.d.ts deleted file mode 100644 index d453415f73376c..00000000000000 --- a/x-pack/legacy/plugins/security/index.d.ts +++ /dev/null @@ -1,15 +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 { Legacy } from 'kibana'; -import { AuthenticatedUser } from '../../../plugins/security/public'; - -/** - * Public interface of the security plugin. - */ -export interface SecurityPlugin { - getUser: (request: Legacy.Request) => Promise<AuthenticatedUser>; -} diff --git a/x-pack/legacy/plugins/security/index.js b/x-pack/legacy/plugins/security/index.js deleted file mode 100644 index 18b815fb429cb4..00000000000000 --- a/x-pack/legacy/plugins/security/index.js +++ /dev/null @@ -1,156 +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 { resolve } from 'path'; -import { initOverwrittenSessionView } from './server/routes/views/overwritten_session'; -import { initLoginView } from './server/routes/views/login'; -import { initLogoutView } from './server/routes/views/logout'; -import { initLoggedOutView } from './server/routes/views/logged_out'; -import { AuditLogger } from '../../server/lib/audit_logger'; -import { watchStatusAndLicenseToInitialize } from '../../server/lib/watch_status_and_license_to_initialize'; -import { KibanaRequest } from '../../../../src/core/server'; - -export const security = kibana => - new kibana.Plugin({ - id: 'security', - configPrefix: 'xpack.security', - publicDir: resolve(__dirname, 'public'), - require: ['kibana', 'elasticsearch', 'xpack_main'], - - config(Joi) { - const HANDLED_IN_NEW_PLATFORM = Joi.any().description( - 'This key is handled in the new platform security plugin ONLY' - ); - return Joi.object({ - enabled: Joi.boolean().default(true), - cookieName: HANDLED_IN_NEW_PLATFORM, - encryptionKey: HANDLED_IN_NEW_PLATFORM, - session: HANDLED_IN_NEW_PLATFORM, - secureCookies: HANDLED_IN_NEW_PLATFORM, - loginAssistanceMessage: HANDLED_IN_NEW_PLATFORM, - authorization: HANDLED_IN_NEW_PLATFORM, - audit: Joi.object({ - enabled: Joi.boolean().default(false), - }).default(), - authc: HANDLED_IN_NEW_PLATFORM, - }).default(); - }, - - uiExports: { - styleSheetPaths: resolve(__dirname, 'public/index.scss'), - apps: [ - { - id: 'login', - title: 'Login', - main: 'plugins/security/views/login', - hidden: true, - }, - { - id: 'overwritten_session', - title: 'Overwritten Session', - main: 'plugins/security/views/overwritten_session', - description: - 'The view is shown when user had an active session previously, but logged in as a different user.', - hidden: true, - }, - { - id: 'logout', - title: 'Logout', - main: 'plugins/security/views/logout', - hidden: true, - }, - { - id: 'logged_out', - title: 'Logged out', - main: 'plugins/security/views/logged_out', - hidden: true, - }, - ], - hacks: [ - 'plugins/security/hacks/on_session_timeout', - 'plugins/security/hacks/on_unauthorized_response', - 'plugins/security/hacks/register_account_management_app', - ], - injectDefaultVars: server => { - const securityPlugin = server.newPlatform.setup.plugins.security; - if (!securityPlugin) { - throw new Error('New Platform XPack Security plugin is not available.'); - } - - return { - secureCookies: securityPlugin.__legacyCompat.config.secureCookies, - session: { - tenant: server.newPlatform.setup.core.http.basePath.serverBasePath, - }, - enableSpaceAwarePrivileges: server.config().get('xpack.spaces.enabled'), - logoutUrl: `${server.newPlatform.setup.core.http.basePath.serverBasePath}/logout`, - }; - }, - }, - - async postInit(server) { - const securityPlugin = server.newPlatform.setup.plugins.security; - if (!securityPlugin) { - throw new Error('New Platform XPack Security plugin is not available.'); - } - - watchStatusAndLicenseToInitialize(server.plugins.xpack_main, this, async () => { - const xpackInfo = server.plugins.xpack_main.info; - if (xpackInfo.isAvailable() && xpackInfo.feature('security').isEnabled()) { - await securityPlugin.__legacyCompat.registerPrivilegesWithCluster(); - } - }); - }, - - async init(server) { - const securityPlugin = server.newPlatform.setup.plugins.security; - if (!securityPlugin) { - throw new Error('New Platform XPack Security plugin is not available.'); - } - - const config = server.config(); - const xpackInfo = server.plugins.xpack_main.info; - securityPlugin.__legacyCompat.registerLegacyAPI({ - auditLogger: new AuditLogger(server, 'security', config, xpackInfo), - }); - - // Legacy xPack Info endpoint returns whatever we return in a callback for `registerLicenseCheckResultsGenerator` - // and the result is consumed by the legacy plugins all over the place, so we should keep it here for now. We assume - // that when legacy callback is called license has been already propagated to the new platform security plugin and - // features are up to date. - xpackInfo - .feature(this.id) - .registerLicenseCheckResultsGenerator(() => - securityPlugin.__legacyCompat.license.getFeatures() - ); - - server.expose({ - getUser: async request => securityPlugin.authc.getCurrentUser(KibanaRequest.from(request)), - }); - - initLoginView(securityPlugin, server); - initLogoutView(server); - initLoggedOutView(securityPlugin, server); - initOverwrittenSessionView(server); - - server.injectUiAppVars('login', () => { - const { - showLogin, - allowLogin, - layout = 'form', - } = securityPlugin.__legacyCompat.license.getFeatures(); - const { loginAssistanceMessage } = securityPlugin.__legacyCompat.config; - return { - loginAssistanceMessage, - loginState: { - showLogin, - allowLogin, - layout, - }, - }; - }); - }, - }); diff --git a/x-pack/legacy/plugins/security/index.ts b/x-pack/legacy/plugins/security/index.ts new file mode 100644 index 00000000000000..deebbccf5aa49a --- /dev/null +++ b/x-pack/legacy/plugins/security/index.ts @@ -0,0 +1,93 @@ +/* + * 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 { Root } from 'joi'; +import { resolve } from 'path'; +import { Server } from 'src/legacy/server/kbn_server'; +import { KibanaRequest, LegacyRequest } from '../../../../src/core/server'; +// @ts-ignore +import { AuditLogger } from '../../server/lib/audit_logger'; +// @ts-ignore +import { watchStatusAndLicenseToInitialize } from '../../server/lib/watch_status_and_license_to_initialize'; +import { AuthenticatedUser, SecurityPluginSetup } from '../../../plugins/security/server'; + +/** + * Public interface of the security plugin. + */ +export interface SecurityPlugin { + getUser: (request: LegacyRequest) => Promise<AuthenticatedUser>; +} + +function getSecurityPluginSetup(server: Server) { + const securityPlugin = server.newPlatform.setup.plugins.security as SecurityPluginSetup; + if (!securityPlugin) { + throw new Error('Kibana Platform Security plugin is not available.'); + } + + return securityPlugin; +} + +export const security = (kibana: Record<string, any>) => + new kibana.Plugin({ + id: 'security', + configPrefix: 'xpack.security', + publicDir: resolve(__dirname, 'public'), + require: ['kibana', 'elasticsearch', 'xpack_main'], + + // This config is only used by `AuditLogger` and should be removed as soon as `AuditLogger` + // is migrated to Kibana Platform. + config(Joi: Root) { + return Joi.object({ + enabled: Joi.boolean().default(true), + audit: Joi.object({ enabled: Joi.boolean().default(false) }).default(), + }) + .unknown() + .default(); + }, + + uiExports: { + hacks: ['plugins/security/hacks/legacy'], + injectDefaultVars: (server: Server) => { + return { + secureCookies: getSecurityPluginSetup(server).__legacyCompat.config.secureCookies, + enableSpaceAwarePrivileges: server.config().get('xpack.spaces.enabled'), + }; + }, + }, + + async postInit(server: Server) { + watchStatusAndLicenseToInitialize(server.plugins.xpack_main, this, async () => { + const xpackInfo = server.plugins.xpack_main.info; + if (xpackInfo.isAvailable() && xpackInfo.feature('security').isEnabled()) { + await getSecurityPluginSetup(server).__legacyCompat.registerPrivilegesWithCluster(); + } + }); + }, + + async init(server: Server) { + const securityPlugin = getSecurityPluginSetup(server); + + const xpackInfo = server.plugins.xpack_main.info; + securityPlugin.__legacyCompat.registerLegacyAPI({ + auditLogger: new AuditLogger(server, 'security', server.config(), xpackInfo), + }); + + // Legacy xPack Info endpoint returns whatever we return in a callback for `registerLicenseCheckResultsGenerator` + // and the result is consumed by the legacy plugins all over the place, so we should keep it here for now. We assume + // that when legacy callback is called license has been already propagated to the new platform security plugin and + // features are up to date. + xpackInfo + .feature(this.id) + .registerLicenseCheckResultsGenerator(() => + securityPlugin.__legacyCompat.license.getFeatures() + ); + + server.expose({ + getUser: async (request: LegacyRequest) => + securityPlugin.authc.getCurrentUser(KibanaRequest.from(request)), + }); + }, + }); diff --git a/x-pack/legacy/plugins/security/public/hacks/legacy.ts b/x-pack/legacy/plugins/security/public/hacks/legacy.ts new file mode 100644 index 00000000000000..2c683fe4ecf805 --- /dev/null +++ b/x-pack/legacy/plugins/security/public/hacks/legacy.ts @@ -0,0 +1,64 @@ +/* + * 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. + */ + +// @ts-ignore +import { uiModules } from 'ui/modules'; +import { npSetup, npStart } from 'ui/new_platform'; +import routes from 'ui/routes'; +import { isSystemApiRequest } from '../../../../../../src/plugins/kibana_legacy/public'; +import { SecurityPluginSetup } from '../../../../../plugins/security/public'; + +const securityPluginSetup = (npSetup.plugins as any).security as SecurityPluginSetup; +if (securityPluginSetup) { + routes.when('/account', { + template: '<div />', + controller: () => npStart.core.application.navigateToApp('security_account'), + }); + + const getNextParameter = () => { + const { location } = window; + const next = encodeURIComponent(`${location.pathname}${location.search}${location.hash}`); + return `&next=${next}`; + }; + + const getProviderParameter = (tenant: string) => { + const key = `${tenant}/session_provider`; + const providerName = sessionStorage.getItem(key); + return providerName ? `&provider=${encodeURIComponent(providerName)}` : ''; + }; + + const module = uiModules.get('security', []); + module.config(($httpProvider: ng.IHttpProvider) => { + $httpProvider.interceptors.push(($q, $window, Promise) => { + const isAnonymous = npSetup.core.http.anonymousPaths.isAnonymous(window.location.pathname); + + function interceptorFactory(responseHandler: (response: ng.IHttpResponse<unknown>) => any) { + return function interceptor(response: ng.IHttpResponse<unknown>) { + if (!isAnonymous && !isSystemApiRequest(response.config)) { + securityPluginSetup.sessionTimeout.extend(response.config.url); + } + + if (response.status !== 401 || isAnonymous) { + return responseHandler(response); + } + + const { logoutUrl, tenant } = securityPluginSetup.__legacyCompat; + const next = getNextParameter(); + const provider = getProviderParameter(tenant); + + $window.location.href = `${logoutUrl}?msg=SESSION_EXPIRED${next}${provider}`; + + return Promise.halt(); + }; + } + + return { + response: interceptorFactory(response => response), + responseError: interceptorFactory($q.reject), + }; + }); + }); +} diff --git a/x-pack/legacy/plugins/security/public/hacks/on_session_timeout.js b/x-pack/legacy/plugins/security/public/hacks/on_session_timeout.js deleted file mode 100644 index 3e3fd09bdbbdbb..00000000000000 --- a/x-pack/legacy/plugins/security/public/hacks/on_session_timeout.js +++ /dev/null @@ -1,31 +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 _ from 'lodash'; -import { uiModules } from 'ui/modules'; -import { isSystemApiRequest } from 'ui/system_api'; -import { npSetup } from 'ui/new_platform'; - -const module = uiModules.get('security', []); -module.config($httpProvider => { - $httpProvider.interceptors.push($q => { - const isAnonymous = npSetup.core.http.anonymousPaths.isAnonymous(window.location.pathname); - - function interceptorFactory(responseHandler) { - return function interceptor(response) { - if (!isAnonymous && !isSystemApiRequest(response.config)) { - npSetup.plugins.security.sessionTimeout.extend(response.config.url); - } - return responseHandler(response); - }; - } - - return { - response: interceptorFactory(_.identity), - responseError: interceptorFactory($q.reject), - }; - }); -}); diff --git a/x-pack/legacy/plugins/security/public/hacks/on_unauthorized_response.js b/x-pack/legacy/plugins/security/public/hacks/on_unauthorized_response.js deleted file mode 100644 index 3e214db972b183..00000000000000 --- a/x-pack/legacy/plugins/security/public/hacks/on_unauthorized_response.js +++ /dev/null @@ -1,38 +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 { identity } from 'lodash'; -import { uiModules } from 'ui/modules'; -import { Path } from 'plugins/xpack_main/services/path'; -import 'plugins/security/services/auto_logout'; - -function isUnauthorizedResponseAllowed(response) { - const API_WHITELIST = ['/internal/security/login', '/internal/security/users/.*/password']; - - const url = response.config.url; - return API_WHITELIST.some(api => url.match(api)); -} - -const module = uiModules.get('security'); -module.factory('onUnauthorizedResponse', ($q, autoLogout) => { - const isUnauthenticated = Path.isUnauthenticated(); - function interceptorFactory(responseHandler) { - return function interceptor(response) { - if (response.status === 401 && !isUnauthorizedResponseAllowed(response) && !isUnauthenticated) - return autoLogout(); - return responseHandler(response); - }; - } - - return { - response: interceptorFactory(identity), - responseError: interceptorFactory($q.reject), - }; -}); - -module.config($httpProvider => { - $httpProvider.interceptors.push('onUnauthorizedResponse'); -}); diff --git a/x-pack/legacy/plugins/security/public/index.scss b/x-pack/legacy/plugins/security/public/index.scss deleted file mode 100644 index 0050d01a52493e..00000000000000 --- a/x-pack/legacy/plugins/security/public/index.scss +++ /dev/null @@ -1,15 +0,0 @@ -@import 'src/legacy/ui/public/styles/styling_constants'; - -// Prefix all styles with "kbn" to avoid conflicts. -// Examples -// secChart -// secChart__legend -// secChart__legend--small -// secChart__legend-isLoading - -// Public components -@import './components/index'; - -// Public views -@import './views/index'; - diff --git a/x-pack/legacy/plugins/security/public/services/auto_logout.js b/x-pack/legacy/plugins/security/public/services/auto_logout.js deleted file mode 100644 index fa4d149d1f2e6d..00000000000000 --- a/x-pack/legacy/plugins/security/public/services/auto_logout.js +++ /dev/null @@ -1,33 +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 { uiModules } from 'ui/modules'; -import chrome from 'ui/chrome'; - -const module = uiModules.get('security'); - -const getNextParameter = () => { - const { location } = window; - const next = encodeURIComponent(`${location.pathname}${location.search}${location.hash}`); - return `&next=${next}`; -}; - -const getProviderParameter = tenant => { - const key = `${tenant}/session_provider`; - const providerName = sessionStorage.getItem(key); - return providerName ? `&provider=${encodeURIComponent(providerName)}` : ''; -}; - -module.service('autoLogout', ($window, Promise) => { - return () => { - const logoutUrl = chrome.getInjected('logoutUrl'); - const tenant = `${chrome.getInjected('session.tenant', '')}`; - const next = getNextParameter(); - const provider = getProviderParameter(tenant); - $window.location.href = `${logoutUrl}?msg=SESSION_EXPIRED${next}${provider}`; - return Promise.halt(); - }; -}); diff --git a/x-pack/legacy/plugins/security/public/views/_index.scss b/x-pack/legacy/plugins/security/public/views/_index.scss deleted file mode 100644 index 6c2a091adf536e..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/_index.scss +++ /dev/null @@ -1,2 +0,0 @@ -// Login styles -@import './login/index'; diff --git a/x-pack/legacy/plugins/security/public/views/account/account.js b/x-pack/legacy/plugins/security/public/views/account/account.js deleted file mode 100644 index 13abc44e08f965..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/account/account.js +++ /dev/null @@ -1,35 +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 React from 'react'; -import { render, unmountComponentAtNode } from 'react-dom'; -import { i18n } from '@kbn/i18n'; -import { npStart } from 'ui/new_platform'; -import routes from 'ui/routes'; - -routes.when('/account', { - template: '<div id="userProfileReactRoot" />', - k7Breadcrumbs: () => [ - { - text: i18n.translate('xpack.security.account.breadcrumb', { - defaultMessage: 'Account Management', - }), - }, - ], - controllerAs: 'accountController', - controller($scope) { - $scope.$$postDigest(() => { - const domNode = document.getElementById('userProfileReactRoot'); - - render( - <npStart.plugins.security.__legacyCompat.account_management.AccountManagementPage />, - domNode - ); - - $scope.$on('$destroy', () => unmountComponentAtNode(domNode)); - }); - }, -}); diff --git a/x-pack/legacy/plugins/security/public/views/logged_out/logged_out.html b/x-pack/legacy/plugins/security/public/views/logged_out/logged_out.html deleted file mode 100644 index b65df2b53f26c3..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/logged_out/logged_out.html +++ /dev/null @@ -1 +0,0 @@ -<div id="reactLoggedOutRoot" /> diff --git a/x-pack/legacy/plugins/security/public/views/logged_out/logged_out.tsx b/x-pack/legacy/plugins/security/public/views/logged_out/logged_out.tsx deleted file mode 100644 index dbeb68875c1a9b..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/logged_out/logged_out.tsx +++ /dev/null @@ -1,41 +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 { FormattedMessage } from '@kbn/i18n/react'; -import { EuiButton } from '@elastic/eui'; -import { AuthenticationStatePage } from 'plugins/security/components/authentication_state_page'; -// @ts-ignore -import template from 'plugins/security/views/logged_out/logged_out.html'; -import React from 'react'; -import { render } from 'react-dom'; -import chrome from 'ui/chrome'; -import { I18nContext } from 'ui/i18n'; - -chrome - .setVisible(false) - .setRootTemplate(template) - .setRootController('logout', ($scope: any) => { - $scope.$$postDigest(() => { - const domNode = document.getElementById('reactLoggedOutRoot'); - render( - <I18nContext> - <AuthenticationStatePage - title={ - <FormattedMessage - id="xpack.security.loggedOut.title" - defaultMessage="Successfully logged out" - /> - } - > - <EuiButton href={chrome.addBasePath('/')}> - <FormattedMessage id="xpack.security.loggedOut.login" defaultMessage="Log in" /> - </EuiButton> - </AuthenticationStatePage> - </I18nContext>, - domNode - ); - }); - }); diff --git a/x-pack/legacy/plugins/security/public/views/login/_index.scss b/x-pack/legacy/plugins/security/public/views/login/_index.scss deleted file mode 100644 index 9083c8dc3b7751..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/login/_index.scss +++ /dev/null @@ -1,8 +0,0 @@ -// Prefix all styles with "login" to avoid conflicts. -// Examples -// loginChart -// loginChart__legend -// loginChart__legend--small -// loginChart__legend-isLoading - -@import './components/index'; diff --git a/x-pack/legacy/plugins/security/public/views/login/components/_index.scss b/x-pack/legacy/plugins/security/public/views/login/components/_index.scss deleted file mode 100644 index a6f9598b9cc043..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/login/components/_index.scss +++ /dev/null @@ -1 +0,0 @@ -@import './login_page/index'; diff --git a/x-pack/legacy/plugins/security/public/views/login/components/basic_login_form/basic_login_form.test.tsx b/x-pack/legacy/plugins/security/public/views/login/components/basic_login_form/basic_login_form.test.tsx deleted file mode 100644 index 3a970d582bdc8d..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/login/components/basic_login_form/basic_login_form.test.tsx +++ /dev/null @@ -1,109 +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 { EuiButton, EuiCallOut } from '@elastic/eui'; -import React from 'react'; -import { mountWithIntl, shallowWithIntl } from 'test_utils/enzyme_helpers'; -import { LoginState } from '../../login_state'; -import { BasicLoginForm } from './basic_login_form'; - -const createMockHttp = ({ simulateError = false } = {}) => { - return { - post: jest.fn(async () => { - if (simulateError) { - // eslint-disable-next-line no-throw-literal - throw { - data: { - statusCode: 401, - }, - }; - } - - return { - statusCode: 200, - }; - }), - }; -}; - -const createLoginState = (options?: Partial<LoginState>) => { - return { - allowLogin: true, - layout: 'form', - ...options, - } as LoginState; -}; - -describe('BasicLoginForm', () => { - it('renders as expected', () => { - const mockHttp = createMockHttp(); - const mockWindow = {}; - const loginState = createLoginState(); - expect( - shallowWithIntl( - <BasicLoginForm.WrappedComponent - http={mockHttp} - window={mockWindow} - loginState={loginState} - next={''} - intl={null as any} - loginAssistanceMessage="" - /> - ) - ).toMatchSnapshot(); - }); - - it('renders an info message when provided', () => { - const mockHttp = createMockHttp(); - const mockWindow = {}; - const loginState = createLoginState(); - - const wrapper = shallowWithIntl( - <BasicLoginForm.WrappedComponent - http={mockHttp} - window={mockWindow} - loginState={loginState} - next={''} - infoMessage={'Hey this is an info message'} - intl={null as any} - loginAssistanceMessage="" - /> - ); - - expect(wrapper.find(EuiCallOut).props().title).toEqual('Hey this is an info message'); - }); - - it('renders an invalid credentials message', async () => { - const mockHttp = createMockHttp({ simulateError: true }); - const mockWindow = {}; - const loginState = createLoginState(); - - const wrapper = mountWithIntl( - <BasicLoginForm.WrappedComponent - http={mockHttp} - window={mockWindow} - loginState={loginState} - next={''} - intl={null as any} - loginAssistanceMessage="" - /> - ); - - wrapper.find('input[name="username"]').simulate('change', { target: { value: 'username' } }); - wrapper.find('input[name="password"]').simulate('change', { target: { value: 'password' } }); - wrapper.find(EuiButton).simulate('click'); - - // Wait for ajax + rerender - await Promise.resolve(); - wrapper.update(); - await Promise.resolve(); - wrapper.update(); - - expect(wrapper.find(EuiCallOut).props().title).toEqual( - `Invalid username or password. Please try again.` - ); - }); -}); diff --git a/x-pack/legacy/plugins/security/public/views/login/components/login_page/__snapshots__/login_page.test.tsx.snap b/x-pack/legacy/plugins/security/public/views/login/components/login_page/__snapshots__/login_page.test.tsx.snap deleted file mode 100644 index 17ba81988414ae..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/login/components/login_page/__snapshots__/login_page.test.tsx.snap +++ /dev/null @@ -1,485 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`LoginPage disabled form states renders as expected when a connection to ES is not available 1`] = ` -<div - className="loginWelcome login-form" -> - <header - className="loginWelcome__header" - > - <div - className="loginWelcome__content eui-textCenter loginWelcome__contentDisabledForm" - > - <EuiSpacer - size="xxl" - /> - <span - className="loginWelcome__logo" - > - <EuiIcon - size="xxl" - type="logoKibana" - /> - </span> - <EuiTitle - className="loginWelcome__title" - size="l" - > - <h1> - <FormattedMessage - defaultMessage="Welcome to Kibana" - id="xpack.security.loginPage.welcomeTitle" - values={Object {}} - /> - </h1> - </EuiTitle> - <EuiText - className="loginWelcome__subtitle" - color="subdued" - size="s" - > - <p> - <FormattedMessage - defaultMessage="Your window into the Elastic Stack" - id="xpack.security.loginPage.welcomeDescription" - values={Object {}} - /> - </p> - </EuiText> - <EuiSpacer - size="xl" - /> - </div> - </header> - <div - className="loginWelcome__content loginWelcome-body loginWelcome__contentDisabledForm" - > - <EuiFlexGroup - gutterSize="l" - > - <EuiFlexItem> - <DisabledLoginForm - message={ - <FormattedMessage - defaultMessage="See the Kibana logs for details and try reloading the page." - id="xpack.security.loginPage.esUnavailableMessage" - values={Object {}} - /> - } - title={ - <FormattedMessage - defaultMessage="Cannot connect to the Elasticsearch cluster" - id="xpack.security.loginPage.esUnavailableTitle" - values={Object {}} - /> - } - /> - </EuiFlexItem> - </EuiFlexGroup> - </div> -</div> -`; - -exports[`LoginPage disabled form states renders as expected when an unknown loginState layout is provided 1`] = ` -<div - className="loginWelcome login-form" -> - <header - className="loginWelcome__header" - > - <div - className="loginWelcome__content eui-textCenter loginWelcome__contentDisabledForm" - > - <EuiSpacer - size="xxl" - /> - <span - className="loginWelcome__logo" - > - <EuiIcon - size="xxl" - type="logoKibana" - /> - </span> - <EuiTitle - className="loginWelcome__title" - size="l" - > - <h1> - <FormattedMessage - defaultMessage="Welcome to Kibana" - id="xpack.security.loginPage.welcomeTitle" - values={Object {}} - /> - </h1> - </EuiTitle> - <EuiText - className="loginWelcome__subtitle" - color="subdued" - size="s" - > - <p> - <FormattedMessage - defaultMessage="Your window into the Elastic Stack" - id="xpack.security.loginPage.welcomeDescription" - values={Object {}} - /> - </p> - </EuiText> - <EuiSpacer - size="xl" - /> - </div> - </header> - <div - className="loginWelcome__content loginWelcome-body loginWelcome__contentDisabledForm" - > - <EuiFlexGroup - gutterSize="l" - > - <EuiFlexItem> - <DisabledLoginForm - message={ - <FormattedMessage - defaultMessage="Refer to the Kibana logs for more details and refresh to try again." - id="xpack.security.loginPage.unknownLayoutMessage" - values={Object {}} - /> - } - title={ - <FormattedMessage - defaultMessage="Unsupported login form layout." - id="xpack.security.loginPage.unknownLayoutTitle" - values={Object {}} - /> - } - /> - </EuiFlexItem> - </EuiFlexGroup> - </div> -</div> -`; - -exports[`LoginPage disabled form states renders as expected when loginAssistanceMessage is set 1`] = ` -<div - className="loginWelcome login-form" -> - <header - className="loginWelcome__header" - > - <div - className="loginWelcome__content eui-textCenter" - > - <EuiSpacer - size="xxl" - /> - <span - className="loginWelcome__logo" - > - <EuiIcon - size="xxl" - type="logoKibana" - /> - </span> - <EuiTitle - className="loginWelcome__title" - size="l" - > - <h1> - <FormattedMessage - defaultMessage="Welcome to Kibana" - id="xpack.security.loginPage.welcomeTitle" - values={Object {}} - /> - </h1> - </EuiTitle> - <EuiText - className="loginWelcome__subtitle" - color="subdued" - size="s" - > - <p> - <FormattedMessage - defaultMessage="Your window into the Elastic Stack" - id="xpack.security.loginPage.welcomeDescription" - values={Object {}} - /> - </p> - </EuiText> - <EuiSpacer - size="xl" - /> - </div> - </header> - <div - className="loginWelcome__content loginWelcome-body" - > - <EuiFlexGroup - gutterSize="l" - > - <EuiFlexItem> - <InjectIntl(BasicLoginFormUI) - http={ - Object { - "post": [MockFunction], - } - } - isSecureConnection={false} - loginAssistanceMessage="This is an *important* message" - loginState={ - Object { - "allowLogin": true, - "layout": "form", - } - } - next="" - requiresSecureConnection={false} - window={Object {}} - /> - </EuiFlexItem> - </EuiFlexGroup> - </div> -</div> -`; - -exports[`LoginPage disabled form states renders as expected when secure cookies are required but not present 1`] = ` -<div - className="loginWelcome login-form" -> - <header - className="loginWelcome__header" - > - <div - className="loginWelcome__content eui-textCenter loginWelcome__contentDisabledForm" - > - <EuiSpacer - size="xxl" - /> - <span - className="loginWelcome__logo" - > - <EuiIcon - size="xxl" - type="logoKibana" - /> - </span> - <EuiTitle - className="loginWelcome__title" - size="l" - > - <h1> - <FormattedMessage - defaultMessage="Welcome to Kibana" - id="xpack.security.loginPage.welcomeTitle" - values={Object {}} - /> - </h1> - </EuiTitle> - <EuiText - className="loginWelcome__subtitle" - color="subdued" - size="s" - > - <p> - <FormattedMessage - defaultMessage="Your window into the Elastic Stack" - id="xpack.security.loginPage.welcomeDescription" - values={Object {}} - /> - </p> - </EuiText> - <EuiSpacer - size="xl" - /> - </div> - </header> - <div - className="loginWelcome__content loginWelcome-body loginWelcome__contentDisabledForm" - > - <EuiFlexGroup - gutterSize="l" - > - <EuiFlexItem> - <DisabledLoginForm - message={ - <FormattedMessage - defaultMessage="Contact your system administrator." - id="xpack.security.loginPage.requiresSecureConnectionMessage" - values={Object {}} - /> - } - title={ - <FormattedMessage - defaultMessage="A secure connection is required for log in" - id="xpack.security.loginPage.requiresSecureConnectionTitle" - values={Object {}} - /> - } - /> - </EuiFlexItem> - </EuiFlexGroup> - </div> -</div> -`; - -exports[`LoginPage disabled form states renders as expected when xpack is not available 1`] = ` -<div - className="loginWelcome login-form" -> - <header - className="loginWelcome__header" - > - <div - className="loginWelcome__content eui-textCenter loginWelcome__contentDisabledForm" - > - <EuiSpacer - size="xxl" - /> - <span - className="loginWelcome__logo" - > - <EuiIcon - size="xxl" - type="logoKibana" - /> - </span> - <EuiTitle - className="loginWelcome__title" - size="l" - > - <h1> - <FormattedMessage - defaultMessage="Welcome to Kibana" - id="xpack.security.loginPage.welcomeTitle" - values={Object {}} - /> - </h1> - </EuiTitle> - <EuiText - className="loginWelcome__subtitle" - color="subdued" - size="s" - > - <p> - <FormattedMessage - defaultMessage="Your window into the Elastic Stack" - id="xpack.security.loginPage.welcomeDescription" - values={Object {}} - /> - </p> - </EuiText> - <EuiSpacer - size="xl" - /> - </div> - </header> - <div - className="loginWelcome__content loginWelcome-body loginWelcome__contentDisabledForm" - > - <EuiFlexGroup - gutterSize="l" - > - <EuiFlexItem> - <DisabledLoginForm - message={ - <FormattedMessage - defaultMessage="To use the full set of free features in this distribution of Kibana, please update Elasticsearch to the default distribution." - id="xpack.security.loginPage.xpackUnavailableMessage" - values={Object {}} - /> - } - title={ - <FormattedMessage - defaultMessage="Cannot connect to the Elasticsearch cluster currently configured for Kibana." - id="xpack.security.loginPage.xpackUnavailableTitle" - values={Object {}} - /> - } - /> - </EuiFlexItem> - </EuiFlexGroup> - </div> -</div> -`; - -exports[`LoginPage enabled form state renders as expected 1`] = ` -<div - className="loginWelcome login-form" -> - <header - className="loginWelcome__header" - > - <div - className="loginWelcome__content eui-textCenter" - > - <EuiSpacer - size="xxl" - /> - <span - className="loginWelcome__logo" - > - <EuiIcon - size="xxl" - type="logoKibana" - /> - </span> - <EuiTitle - className="loginWelcome__title" - size="l" - > - <h1> - <FormattedMessage - defaultMessage="Welcome to Kibana" - id="xpack.security.loginPage.welcomeTitle" - values={Object {}} - /> - </h1> - </EuiTitle> - <EuiText - className="loginWelcome__subtitle" - color="subdued" - size="s" - > - <p> - <FormattedMessage - defaultMessage="Your window into the Elastic Stack" - id="xpack.security.loginPage.welcomeDescription" - values={Object {}} - /> - </p> - </EuiText> - <EuiSpacer - size="xl" - /> - </div> - </header> - <div - className="loginWelcome__content loginWelcome-body" - > - <EuiFlexGroup - gutterSize="l" - > - <EuiFlexItem> - <InjectIntl(BasicLoginFormUI) - http={ - Object { - "post": [MockFunction], - } - } - isSecureConnection={false} - loginAssistanceMessage="" - loginState={ - Object { - "allowLogin": true, - "layout": "form", - } - } - next="" - requiresSecureConnection={false} - window={Object {}} - /> - </EuiFlexItem> - </EuiFlexGroup> - </div> -</div> -`; diff --git a/x-pack/legacy/plugins/security/public/views/login/components/login_page/login_page.test.tsx b/x-pack/legacy/plugins/security/public/views/login/components/login_page/login_page.test.tsx deleted file mode 100644 index a0318d50a45e58..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/login/components/login_page/login_page.test.tsx +++ /dev/null @@ -1,133 +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 { shallow } from 'enzyme'; -import React from 'react'; -import { LoginLayout, LoginState } from '../../login_state'; -import { LoginPage } from './login_page'; - -const createMockHttp = ({ simulateError = false } = {}) => { - return { - post: jest.fn(async () => { - if (simulateError) { - // eslint-disable-next-line no-throw-literal - throw { - data: { - statusCode: 401, - }, - }; - } - - return { - statusCode: 200, - }; - }), - }; -}; - -const createLoginState = (options?: Partial<LoginState>) => { - return { - allowLogin: true, - layout: 'form', - ...options, - } as LoginState; -}; - -describe('LoginPage', () => { - describe('disabled form states', () => { - it('renders as expected when secure cookies are required but not present', () => { - const props = { - http: createMockHttp(), - window: {}, - next: '', - loginState: createLoginState(), - isSecureConnection: false, - requiresSecureConnection: true, - loginAssistanceMessage: '', - }; - - expect(shallow(<LoginPage {...props} />)).toMatchSnapshot(); - }); - - it('renders as expected when a connection to ES is not available', () => { - const props = { - http: createMockHttp(), - window: {}, - next: '', - loginState: createLoginState({ - layout: 'error-es-unavailable', - }), - isSecureConnection: false, - requiresSecureConnection: false, - loginAssistanceMessage: '', - }; - - expect(shallow(<LoginPage {...props} />)).toMatchSnapshot(); - }); - - it('renders as expected when xpack is not available', () => { - const props = { - http: createMockHttp(), - window: {}, - next: '', - loginState: createLoginState({ - layout: 'error-xpack-unavailable', - }), - isSecureConnection: false, - requiresSecureConnection: false, - loginAssistanceMessage: '', - }; - - expect(shallow(<LoginPage {...props} />)).toMatchSnapshot(); - }); - - it('renders as expected when an unknown loginState layout is provided', () => { - const props = { - http: createMockHttp(), - window: {}, - next: '', - loginState: createLoginState({ - layout: 'error-asdf-asdf-unknown' as LoginLayout, - }), - isSecureConnection: false, - requiresSecureConnection: false, - loginAssistanceMessage: '', - }; - - expect(shallow(<LoginPage {...props} />)).toMatchSnapshot(); - }); - - it('renders as expected when loginAssistanceMessage is set', () => { - const props = { - http: createMockHttp(), - window: {}, - next: '', - loginState: createLoginState(), - isSecureConnection: false, - requiresSecureConnection: false, - loginAssistanceMessage: 'This is an *important* message', - }; - - expect(shallow(<LoginPage {...props} />)).toMatchSnapshot(); - }); - }); - - describe('enabled form state', () => { - it('renders as expected', () => { - const props = { - http: createMockHttp(), - window: {}, - next: '', - loginState: createLoginState(), - isSecureConnection: false, - requiresSecureConnection: false, - loginAssistanceMessage: '', - }; - - expect(shallow(<LoginPage {...props} />)).toMatchSnapshot(); - }); - }); -}); diff --git a/x-pack/legacy/plugins/security/public/views/login/login.tsx b/x-pack/legacy/plugins/security/public/views/login/login.tsx deleted file mode 100644 index 0b89ac553c9a88..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/login/login.tsx +++ /dev/null @@ -1,69 +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 { i18n } from '@kbn/i18n'; -import { get } from 'lodash'; -import { LoginPage } from 'plugins/security/views/login/components'; -import React from 'react'; -import { render } from 'react-dom'; -import chrome from 'ui/chrome'; -import { I18nContext } from 'ui/i18n'; -import { parse } from 'url'; -import { parseNext } from './parse_next'; -import { LoginState } from './login_state'; -const messageMap = { - SESSION_EXPIRED: i18n.translate('xpack.security.login.sessionExpiredDescription', { - defaultMessage: 'Your session has timed out. Please log in again.', - }), - LOGGED_OUT: i18n.translate('xpack.security.login.loggedOutDescription', { - defaultMessage: 'You have logged out of Kibana.', - }), -}; - -interface AnyObject { - [key: string]: any; -} - -(chrome as AnyObject) - .setVisible(false) - .setRootTemplate('<div id="reactLoginRoot" />') - .setRootController( - 'login', - ( - $scope: AnyObject, - $http: AnyObject, - $window: AnyObject, - secureCookies: boolean, - loginState: LoginState, - loginAssistanceMessage: string - ) => { - const basePath = chrome.getBasePath(); - const next = parseNext($window.location.href, basePath); - const isSecure = !!$window.location.protocol.match(/^https/); - - $scope.$$postDigest(() => { - const domNode = document.getElementById('reactLoginRoot'); - - const msgQueryParam = parse($window.location.href, true).query.msg || ''; - - render( - <I18nContext> - <LoginPage - http={$http} - window={$window} - infoMessage={get(messageMap, msgQueryParam)} - loginState={loginState} - isSecureConnection={isSecure} - requiresSecureConnection={secureCookies} - loginAssistanceMessage={loginAssistanceMessage} - next={next} - /> - </I18nContext>, - domNode - ); - }); - } - ); diff --git a/x-pack/legacy/plugins/security/public/views/logout/index.js b/x-pack/legacy/plugins/security/public/views/logout/index.js deleted file mode 100644 index 56588d4f746f1d..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/logout/index.js +++ /dev/null @@ -1,7 +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 './logout'; diff --git a/x-pack/legacy/plugins/security/public/views/logout/logout.js b/x-pack/legacy/plugins/security/public/views/logout/logout.js deleted file mode 100644 index 97010ec81bbf5c..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/logout/logout.js +++ /dev/null @@ -1,14 +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 chrome from 'ui/chrome'; - -chrome.setVisible(false).setRootController('logout', $window => { - $window.sessionStorage.clear(); - - // Redirect user to the server logout endpoint to complete logout. - $window.location.href = chrome.addBasePath(`/api/security/logout${$window.location.search}`); -}); diff --git a/x-pack/legacy/plugins/security/public/views/overwritten_session/index.js b/x-pack/legacy/plugins/security/public/views/overwritten_session/index.js deleted file mode 100644 index f3ba8a6b9d7c5d..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/overwritten_session/index.js +++ /dev/null @@ -1,7 +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 './overwritten_session'; diff --git a/x-pack/legacy/plugins/security/public/views/overwritten_session/overwritten_session.tsx b/x-pack/legacy/plugins/security/public/views/overwritten_session/overwritten_session.tsx deleted file mode 100644 index 4c79c499cc0e6a..00000000000000 --- a/x-pack/legacy/plugins/security/public/views/overwritten_session/overwritten_session.tsx +++ /dev/null @@ -1,48 +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 { FormattedMessage } from '@kbn/i18n/react'; -import { EuiButton } from '@elastic/eui'; -import React from 'react'; -import { render } from 'react-dom'; -import chrome from 'ui/chrome'; -import { I18nContext } from 'ui/i18n'; -import { npSetup } from 'ui/new_platform'; -import { AuthenticatedUser, SecurityPluginSetup } from '../../../../../../plugins/security/public'; -import { AuthenticationStatePage } from '../../components/authentication_state_page'; - -chrome - .setVisible(false) - .setRootTemplate('<div id="reactOverwrittenSessionRoot" />') - .setRootController('overwritten_session', ($scope: any) => { - $scope.$$postDigest(() => { - ((npSetup.plugins as unknown) as { security: SecurityPluginSetup }).security.authc - .getCurrentUser() - .then((user: AuthenticatedUser) => { - const overwrittenSessionPage = ( - <I18nContext> - <AuthenticationStatePage - title={ - <FormattedMessage - id="xpack.security.overwrittenSession.title" - defaultMessage="You previously logged in as a different user." - /> - } - > - <EuiButton href={chrome.addBasePath('/')}> - <FormattedMessage - id="xpack.security.overwrittenSession.continueAsUserText" - defaultMessage="Continue as {username}" - values={{ username: user.username }} - /> - </EuiButton> - </AuthenticationStatePage> - </I18nContext> - ); - render(overwrittenSessionPage, document.getElementById('reactOverwrittenSessionRoot')); - }); - }); - }); diff --git a/x-pack/legacy/plugins/security/server/lib/__tests__/parse_next.js b/x-pack/legacy/plugins/security/server/lib/__tests__/parse_next.js deleted file mode 100644 index 7516433c77f83d..00000000000000 --- a/x-pack/legacy/plugins/security/server/lib/__tests__/parse_next.js +++ /dev/null @@ -1,172 +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 expect from '@kbn/expect'; -import { parseNext } from '../parse_next'; - -describe('parseNext', () => { - it('should return a function', () => { - expect(parseNext).to.be.a('function'); - }); - - describe('with basePath defined', () => { - // trailing slash is important since it must match the cookie path exactly - it('should return basePath with a trailing slash when next is not specified', () => { - const basePath = '/iqf'; - const href = `${basePath}/login`; - expect(parseNext(href, basePath)).to.equal(`${basePath}/`); - }); - - it('should properly handle next without hash', () => { - const basePath = '/iqf'; - const next = `${basePath}/app/kibana`; - const href = `${basePath}/login?next=${next}`; - expect(parseNext(href, basePath)).to.equal(next); - }); - - it('should properly handle next with hash', () => { - const basePath = '/iqf'; - const next = `${basePath}/app/kibana`; - const hash = '/discover/New-Saved-Search'; - const href = `${basePath}/login?next=${next}#${hash}`; - expect(parseNext(href, basePath)).to.equal(`${next}#${hash}`); - }); - - it('should properly decode special characters', () => { - const basePath = '/iqf'; - const next = `${encodeURIComponent(basePath)}%2Fapp%2Fkibana`; - const hash = '/discover/New-Saved-Search'; - const href = `${basePath}/login?next=${next}#${hash}`; - expect(parseNext(href, basePath)).to.equal(decodeURIComponent(`${next}#${hash}`)); - }); - - // to help prevent open redirect to a different url - it('should return basePath if next includes a protocol/hostname', () => { - const basePath = '/iqf'; - const next = `https://example.com${basePath}/app/kibana`; - const href = `${basePath}/login?next=${next}`; - expect(parseNext(href, basePath)).to.equal(`${basePath}/`); - }); - - // to help prevent open redirect to a different url by abusing encodings - it('should return basePath if including a protocol/host even if it is encoded', () => { - const basePath = '/iqf'; - const baseUrl = `http://example.com${basePath}`; - const next = `${encodeURIComponent(baseUrl)}%2Fapp%2Fkibana`; - const hash = '/discover/New-Saved-Search'; - const href = `${basePath}/login?next=${next}#${hash}`; - expect(parseNext(href, basePath)).to.equal(`${basePath}/`); - }); - - // to help prevent open redirect to a different port - it('should return basePath if next includes a port', () => { - const basePath = '/iqf'; - const next = `http://localhost:5601${basePath}/app/kibana`; - const href = `${basePath}/login?next=${next}`; - expect(parseNext(href, basePath)).to.equal(`${basePath}/`); - }); - - // to help prevent open redirect to a different port by abusing encodings - it('should return basePath if including a port even if it is encoded', () => { - const basePath = '/iqf'; - const baseUrl = `http://example.com:5601${basePath}`; - const next = `${encodeURIComponent(baseUrl)}%2Fapp%2Fkibana`; - const hash = '/discover/New-Saved-Search'; - const href = `${basePath}/login?next=${next}#${hash}`; - expect(parseNext(href, basePath)).to.equal(`${basePath}/`); - }); - - // to help prevent open redirect to a different base path - it('should return basePath if next does not begin with basePath', () => { - const basePath = '/iqf'; - const next = '/notbasepath/app/kibana'; - const href = `${basePath}/login?next=${next}`; - expect(parseNext(href, basePath)).to.equal(`${basePath}/`); - }); - - // disallow network-path references - it('should return / if next is url without protocol', () => { - const nextWithTwoSlashes = '//example.com'; - const hrefWithTwoSlashes = `/login?next=${nextWithTwoSlashes}`; - expect(parseNext(hrefWithTwoSlashes)).to.equal('/'); - - const nextWithThreeSlashes = '///example.com'; - const hrefWithThreeSlashes = `/login?next=${nextWithThreeSlashes}`; - expect(parseNext(hrefWithThreeSlashes)).to.equal('/'); - }); - }); - - describe('without basePath defined', () => { - // trailing slash is important since it must match the cookie path exactly - it('should return / with a trailing slash when next is not specified', () => { - const href = '/login'; - expect(parseNext(href)).to.equal('/'); - }); - - it('should properly handle next without hash', () => { - const next = '/app/kibana'; - const href = `/login?next=${next}`; - expect(parseNext(href)).to.equal(next); - }); - - it('should properly handle next with hash', () => { - const next = '/app/kibana'; - const hash = '/discover/New-Saved-Search'; - const href = `/login?next=${next}#${hash}`; - expect(parseNext(href)).to.equal(`${next}#${hash}`); - }); - - it('should properly decode special characters', () => { - const next = '%2Fapp%2Fkibana'; - const hash = '/discover/New-Saved-Search'; - const href = `/login?next=${next}#${hash}`; - expect(parseNext(href)).to.equal(decodeURIComponent(`${next}#${hash}`)); - }); - - // to help prevent open redirect to a different url - it('should return / if next includes a protocol/hostname', () => { - const next = 'https://example.com/app/kibana'; - const href = `/login?next=${next}`; - expect(parseNext(href)).to.equal('/'); - }); - - // to help prevent open redirect to a different url by abusing encodings - it('should return / if including a protocol/host even if it is encoded', () => { - const baseUrl = 'http://example.com'; - const next = `${encodeURIComponent(baseUrl)}%2Fapp%2Fkibana`; - const hash = '/discover/New-Saved-Search'; - const href = `/login?next=${next}#${hash}`; - expect(parseNext(href)).to.equal('/'); - }); - - // to help prevent open redirect to a different port - it('should return / if next includes a port', () => { - const next = 'http://localhost:5601/app/kibana'; - const href = `/login?next=${next}`; - expect(parseNext(href)).to.equal('/'); - }); - - // to help prevent open redirect to a different port by abusing encodings - it('should return / if including a port even if it is encoded', () => { - const baseUrl = 'http://example.com:5601'; - const next = `${encodeURIComponent(baseUrl)}%2Fapp%2Fkibana`; - const hash = '/discover/New-Saved-Search'; - const href = `/login?next=${next}#${hash}`; - expect(parseNext(href)).to.equal('/'); - }); - - // disallow network-path references - it('should return / if next is url without protocol', () => { - const nextWithTwoSlashes = '//example.com'; - const hrefWithTwoSlashes = `/login?next=${nextWithTwoSlashes}`; - expect(parseNext(hrefWithTwoSlashes)).to.equal('/'); - - const nextWithThreeSlashes = '///example.com'; - const hrefWithThreeSlashes = `/login?next=${nextWithThreeSlashes}`; - expect(parseNext(hrefWithThreeSlashes)).to.equal('/'); - }); - }); -}); diff --git a/x-pack/legacy/plugins/security/server/lib/parse_next.js b/x-pack/legacy/plugins/security/server/lib/parse_next.js deleted file mode 100644 index c247043876c91b..00000000000000 --- a/x-pack/legacy/plugins/security/server/lib/parse_next.js +++ /dev/null @@ -1,37 +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 { parse } from 'url'; - -export function parseNext(href, basePath = '') { - const { query, hash } = parse(href, true); - if (!query.next) { - return `${basePath}/`; - } - - // validate that `next` is not attempting a redirect to somewhere - // outside of this Kibana install - const { protocol, hostname, port, pathname } = parse( - query.next, - false /* parseQueryString */, - true /* slashesDenoteHost */ - ); - - // We should explicitly compare `protocol`, `port` and `hostname` to null to make sure these are not - // detected in the URL at all. For example `hostname` can be empty string for Node URL parser, but - // browser (because of various bwc reasons) processes URL differently (e.g. `///abc.com` - for browser - // hostname is `abc.com`, but for Node hostname is an empty string i.e. everything between schema (`//`) - // and the first slash that belongs to path. - if (protocol !== null || hostname !== null || port !== null) { - return `${basePath}/`; - } - - if (!String(pathname).startsWith(basePath)) { - return `${basePath}/`; - } - - return query.next + (hash || ''); -} diff --git a/x-pack/legacy/plugins/security/server/routes/views/logged_out.js b/x-pack/legacy/plugins/security/server/routes/views/logged_out.js deleted file mode 100644 index 0dc6caaca04c61..00000000000000 --- a/x-pack/legacy/plugins/security/server/routes/views/logged_out.js +++ /dev/null @@ -1,33 +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. - */ - -export function initLoggedOutView( - { - __legacyCompat: { - config: { cookieName }, - }, - }, - server -) { - const config = server.config(); - const loggedOut = server.getHiddenUiAppById('logged_out'); - - server.route({ - method: 'GET', - path: '/logged_out', - handler(request, h) { - const isUserAlreadyLoggedIn = !!request.state[cookieName]; - if (isUserAlreadyLoggedIn) { - const basePath = config.get('server.basePath'); - return h.redirect(`${basePath}/`); - } - return h.renderAppWithDefaultConfig(loggedOut); - }, - config: { - auth: false, - }, - }); -} diff --git a/x-pack/legacy/plugins/security/server/routes/views/login.js b/x-pack/legacy/plugins/security/server/routes/views/login.js deleted file mode 100644 index 29468db161d9b8..00000000000000 --- a/x-pack/legacy/plugins/security/server/routes/views/login.js +++ /dev/null @@ -1,50 +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 } from 'lodash'; - -import { parseNext } from '../../lib/parse_next'; - -export function initLoginView( - { - __legacyCompat: { - config: { cookieName }, - license, - }, - }, - server -) { - const config = server.config(); - const login = server.getHiddenUiAppById('login'); - - function shouldShowLogin() { - if (license.isEnabled()) { - return Boolean(license.getFeatures().showLogin); - } - - // default to true if xpack info isn't available or - // it can't be resolved for some reason - return true; - } - - server.route({ - method: 'GET', - path: '/login', - handler(request, h) { - const isUserAlreadyLoggedIn = !!request.state[cookieName]; - if (isUserAlreadyLoggedIn || !shouldShowLogin()) { - const basePath = config.get('server.basePath'); - const url = get(request, 'raw.req.url'); - const next = parseNext(url, basePath); - return h.redirect(next); - } - return h.renderAppWithDefaultConfig(login); - }, - config: { - auth: false, - }, - }); -} diff --git a/x-pack/legacy/plugins/security/server/routes/views/logout.js b/x-pack/legacy/plugins/security/server/routes/views/logout.js deleted file mode 100644 index 54607ee89faab5..00000000000000 --- a/x-pack/legacy/plugins/security/server/routes/views/logout.js +++ /dev/null @@ -1,20 +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. - */ - -export function initLogoutView(server) { - const logout = server.getHiddenUiAppById('logout'); - - server.route({ - method: 'GET', - path: '/logout', - handler(request, h) { - return h.renderAppWithDefaultConfig(logout); - }, - config: { - auth: false, - }, - }); -} diff --git a/x-pack/legacy/plugins/security/server/routes/views/overwritten_session.ts b/x-pack/legacy/plugins/security/server/routes/views/overwritten_session.ts deleted file mode 100644 index ea99a9aeb100c6..00000000000000 --- a/x-pack/legacy/plugins/security/server/routes/views/overwritten_session.ts +++ /dev/null @@ -1,18 +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 { Request, ResponseToolkit } from 'hapi'; -import { Legacy } from 'kibana'; - -export function initOverwrittenSessionView(server: Legacy.Server) { - server.route({ - method: 'GET', - path: '/overwritten_session', - handler(request: Request, h: ResponseToolkit) { - return h.renderAppWithDefaultConfig(server.getHiddenUiAppById('overwritten_session')); - }, - }); -} diff --git a/x-pack/legacy/plugins/xpack_main/public/services/path.js b/x-pack/legacy/plugins/xpack_main/public/services/path.js index d66cf44e69b4f4..d2fe550178e61f 100644 --- a/x-pack/legacy/plugins/xpack_main/public/services/path.js +++ b/x-pack/legacy/plugins/xpack_main/public/services/path.js @@ -9,6 +9,11 @@ import chrome from 'ui/chrome'; export const Path = { isUnauthenticated() { const path = chrome.removeBasePath(window.location.pathname); - return path === '/login' || path === '/logout' || path === '/logged_out' || path === '/status'; + return ( + path === '/login' || + path === '/logout' || + path === '/security/logged_out' || + path === '/status' + ); }, }; diff --git a/x-pack/legacy/plugins/xpack_main/server/routes/api/v1/__tests__/xpack_info.js b/x-pack/legacy/plugins/xpack_main/server/routes/api/v1/__tests__/xpack_info.js index 57a28a3e4769af..540d9f63ea6c82 100644 --- a/x-pack/legacy/plugins/xpack_main/server/routes/api/v1/__tests__/xpack_info.js +++ b/x-pack/legacy/plugins/xpack_main/server/routes/api/v1/__tests__/xpack_info.js @@ -58,7 +58,6 @@ describe('XPackInfo routes', () => { showLinks: false, allowRoleDocumentLevelSecurity: false, allowRoleFieldLevelSecurity: false, - linksMessage: 'Message', }, }, }); @@ -79,7 +78,6 @@ describe('XPackInfo routes', () => { show_links: false, allow_role_document_level_security: false, allow_role_field_level_security: false, - links_message: 'Message', }, }, }); diff --git a/x-pack/legacy/plugins/security/README.md b/x-pack/plugins/security/README.md similarity index 100% rename from x-pack/legacy/plugins/security/README.md rename to x-pack/plugins/security/README.md diff --git a/x-pack/plugins/security/common/licensing/index.ts b/x-pack/plugins/security/common/licensing/index.ts index e8efae3dc6a6b1..0cc9b9d2042735 100644 --- a/x-pack/plugins/security/common/licensing/index.ts +++ b/x-pack/plugins/security/common/licensing/index.ts @@ -6,4 +6,4 @@ export { SecurityLicenseService, SecurityLicense } from './license_service'; -export { SecurityLicenseFeatures } from './license_features'; +export { LoginLayout, SecurityLicenseFeatures } from './license_features'; diff --git a/x-pack/plugins/security/common/licensing/license_features.ts b/x-pack/plugins/security/common/licensing/license_features.ts index 33f8370a1b43ea..bef328f54de03f 100644 --- a/x-pack/plugins/security/common/licensing/license_features.ts +++ b/x-pack/plugins/security/common/licensing/license_features.ts @@ -4,6 +4,11 @@ * you may not use this file except in compliance with the Elastic License. */ +/** + * Represents types of login form layouts. + */ +export type LoginLayout = 'form' | 'error-es-unavailable' | 'error-xpack-unavailable'; + /** * Describes Security plugin features that depend on license. */ @@ -46,10 +51,5 @@ export interface SecurityLicenseFeatures { /** * Describes the layout of the login form if it's displayed. */ - readonly layout?: string; - - /** - * Message to show when security links are clicked throughout the kibana app. - */ - readonly linksMessage?: string; + readonly layout?: LoginLayout; } diff --git a/x-pack/plugins/security/common/licensing/license_service.test.ts b/x-pack/plugins/security/common/licensing/license_service.test.ts index df2d66a036039f..40e8901970af8a 100644 --- a/x-pack/plugins/security/common/licensing/license_service.test.ts +++ b/x-pack/plugins/security/common/licensing/license_service.test.ts @@ -79,7 +79,6 @@ describe('license features', function() { "allowRbac": false, "allowRoleDocumentLevelSecurity": false, "allowRoleFieldLevelSecurity": false, - "linksMessage": "Access is denied because Security is disabled in Elasticsearch.", "showLinks": false, "showLogin": false, "showRoleMappingsManagement": false, @@ -130,7 +129,6 @@ describe('license features', function() { allowRoleDocumentLevelSecurity: false, allowRoleFieldLevelSecurity: false, allowRbac: false, - linksMessage: 'Access is denied because Security is disabled in Elasticsearch.', }); }); diff --git a/x-pack/plugins/security/common/licensing/license_service.ts b/x-pack/plugins/security/common/licensing/license_service.ts index e6d2eff49ed0df..2c2039c5e2e92a 100644 --- a/x-pack/plugins/security/common/licensing/license_service.ts +++ b/x-pack/plugins/security/common/licensing/license_service.ts @@ -90,7 +90,6 @@ export class SecurityLicenseService { allowRoleDocumentLevelSecurity: false, allowRoleFieldLevelSecurity: false, allowRbac: false, - linksMessage: 'Access is denied because Security is disabled in Elasticsearch.', }; } diff --git a/x-pack/legacy/plugins/security/public/views/login/parse_next.test.ts b/x-pack/plugins/security/common/parse_next.test.ts similarity index 100% rename from x-pack/legacy/plugins/security/public/views/login/parse_next.test.ts rename to x-pack/plugins/security/common/parse_next.test.ts diff --git a/x-pack/legacy/plugins/security/public/views/login/parse_next.ts b/x-pack/plugins/security/common/parse_next.ts similarity index 100% rename from x-pack/legacy/plugins/security/public/views/login/parse_next.ts rename to x-pack/plugins/security/common/parse_next.ts diff --git a/x-pack/plugins/security/public/account_management/account_management_app.test.ts b/x-pack/plugins/security/public/account_management/account_management_app.test.ts new file mode 100644 index 00000000000000..ad40c61718c732 --- /dev/null +++ b/x-pack/plugins/security/public/account_management/account_management_app.test.ts @@ -0,0 +1,73 @@ +/* + * 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. + */ + +jest.mock('./account_management_page'); + +import { AppMount, AppNavLinkStatus, ScopedHistory } from 'src/core/public'; +import { UserAPIClient } from '../management'; +import { accountManagementApp } from './account_management_app'; + +import { coreMock, scopedHistoryMock } from '../../../../../src/core/public/mocks'; +import { securityMock } from '../mocks'; + +describe('accountManagementApp', () => { + it('properly registers application', () => { + const coreSetupMock = coreMock.createSetup(); + + accountManagementApp.create({ + application: coreSetupMock.application, + getStartServices: coreSetupMock.getStartServices, + authc: securityMock.createSetup().authc, + }); + + expect(coreSetupMock.application.register).toHaveBeenCalledTimes(1); + + const [[appRegistration]] = coreSetupMock.application.register.mock.calls; + expect(appRegistration).toEqual({ + id: 'security_account', + appRoute: '/security/account', + navLinkStatus: AppNavLinkStatus.hidden, + title: 'Account Management', + mount: expect.any(Function), + }); + }); + + it('properly sets breadcrumbs and renders application', async () => { + const coreSetupMock = coreMock.createSetup(); + const coreStartMock = coreMock.createStart(); + coreSetupMock.getStartServices.mockResolvedValue([coreStartMock, {}]); + + const authcMock = securityMock.createSetup().authc; + const containerMock = document.createElement('div'); + + accountManagementApp.create({ + application: coreSetupMock.application, + getStartServices: coreSetupMock.getStartServices, + authc: authcMock, + }); + + const [[{ mount }]] = coreSetupMock.application.register.mock.calls; + await (mount as AppMount)({ + element: containerMock, + appBasePath: '', + onAppLeave: jest.fn(), + history: (scopedHistoryMock.create() as unknown) as ScopedHistory, + }); + + expect(coreStartMock.chrome.setBreadcrumbs).toHaveBeenCalledTimes(1); + expect(coreStartMock.chrome.setBreadcrumbs).toHaveBeenCalledWith([ + { text: 'Account Management' }, + ]); + + const mockRenderApp = jest.requireMock('./account_management_page').renderAccountManagementPage; + expect(mockRenderApp).toHaveBeenCalledTimes(1); + expect(mockRenderApp).toHaveBeenCalledWith(coreStartMock.i18n, containerMock, { + userAPIClient: expect.any(UserAPIClient), + authc: authcMock, + notifications: coreStartMock.notifications, + }); + }); +}); diff --git a/x-pack/plugins/security/public/account_management/account_management_app.ts b/x-pack/plugins/security/public/account_management/account_management_app.ts new file mode 100644 index 00000000000000..8a14a772a1eefe --- /dev/null +++ b/x-pack/plugins/security/public/account_management/account_management_app.ts @@ -0,0 +1,46 @@ +/* + * 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 { CoreSetup, AppMountParameters } from 'src/core/public'; +import { AuthenticationServiceSetup } from '../authentication'; +import { UserAPIClient } from '../management'; + +interface CreateDeps { + application: CoreSetup['application']; + authc: AuthenticationServiceSetup; + getStartServices: CoreSetup['getStartServices']; +} + +export const accountManagementApp = Object.freeze({ + id: 'security_account', + create({ application, authc, getStartServices }: CreateDeps) { + const title = i18n.translate('xpack.security.account.breadcrumb', { + defaultMessage: 'Account Management', + }); + application.register({ + id: this.id, + title, + // TODO: switch to proper enum once https://github.com/elastic/kibana/issues/58327 is resolved. + navLinkStatus: 3, + appRoute: '/security/account', + async mount({ element }: AppMountParameters) { + const [[coreStart], { renderAccountManagementPage }] = await Promise.all([ + getStartServices(), + import('./account_management_page'), + ]); + + coreStart.chrome.setBreadcrumbs([{ text: title }]); + + return renderAccountManagementPage(coreStart.i18n, element, { + authc, + notifications: coreStart.notifications, + userAPIClient: new UserAPIClient(coreStart.http), + }); + }, + }); + }, +}); diff --git a/x-pack/plugins/security/public/account_management/account_management_page.tsx b/x-pack/plugins/security/public/account_management/account_management_page.tsx index 9388c2e9b19b8e..6615e8fee94122 100644 --- a/x-pack/plugins/security/public/account_management/account_management_page.tsx +++ b/x-pack/plugins/security/public/account_management/account_management_page.tsx @@ -3,13 +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 { EuiPage, EuiPageBody, EuiPanel, EuiSpacer, EuiText } from '@elastic/eui'; import React, { useEffect, useState } from 'react'; -import { NotificationsStart } from 'src/core/public'; +import ReactDOM from 'react-dom'; +import { EuiPage, EuiPageBody, EuiPanel, EuiSpacer, EuiText } from '@elastic/eui'; +import { CoreStart, NotificationsStart } from 'src/core/public'; import { getUserDisplayName, AuthenticatedUser } from '../../common/model'; import { AuthenticationServiceSetup } from '../authentication'; -import { ChangePassword } from './change_password'; import { UserAPIClient } from '../management'; +import { ChangePassword } from './change_password'; import { PersonalInfo } from './personal_info'; interface Props { @@ -50,3 +51,18 @@ export const AccountManagementPage = ({ userAPIClient, authc, notifications }: P </EuiPage> ); }; + +export function renderAccountManagementPage( + i18nStart: CoreStart['i18n'], + element: Element, + props: Props +) { + ReactDOM.render( + <i18nStart.Context> + <AccountManagementPage {...props} /> + </i18nStart.Context>, + element + ); + + return () => ReactDOM.unmountComponentAtNode(element); +} diff --git a/x-pack/plugins/security/public/account_management/index.ts b/x-pack/plugins/security/public/account_management/index.ts index 0f119b7cc0b1d8..4c805d152cd537 100644 --- a/x-pack/plugins/security/public/account_management/index.ts +++ b/x-pack/plugins/security/public/account_management/index.ts @@ -4,4 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -export { AccountManagementPage } from './account_management_page'; +export { accountManagementApp } from './account_management_app'; diff --git a/x-pack/plugins/security/public/authentication/_index.scss b/x-pack/plugins/security/public/authentication/_index.scss new file mode 100644 index 00000000000000..0a423c00f0218a --- /dev/null +++ b/x-pack/plugins/security/public/authentication/_index.scss @@ -0,0 +1,5 @@ +// Component styles +@import './components/index'; + +// Login styles +@import './login/index'; diff --git a/x-pack/plugins/security/public/authentication/authentication_service.ts b/x-pack/plugins/security/public/authentication/authentication_service.ts index 2679bc20d6a7d9..7b88b0f8573baa 100644 --- a/x-pack/plugins/security/public/authentication/authentication_service.ts +++ b/x-pack/plugins/security/public/authentication/authentication_service.ts @@ -4,11 +4,20 @@ * you may not use this file except in compliance with the Elastic License. */ -import { HttpSetup } from 'src/core/public'; +import { ApplicationSetup, CoreSetup, HttpSetup } from 'src/core/public'; import { AuthenticatedUser } from '../../common/model'; +import { ConfigType } from '../config'; +import { PluginStartDependencies } from '../plugin'; +import { loginApp } from './login'; +import { logoutApp } from './logout'; +import { loggedOutApp } from './logged_out'; +import { overwrittenSessionApp } from './overwritten_session'; interface SetupParams { + application: ApplicationSetup; + config: ConfigType; http: HttpSetup; + getStartServices: CoreSetup<PluginStartDependencies>['getStartServices']; } export interface AuthenticationServiceSetup { @@ -19,13 +28,20 @@ export interface AuthenticationServiceSetup { } export class AuthenticationService { - public setup({ http }: SetupParams): AuthenticationServiceSetup { - return { - async getCurrentUser() { - return (await http.get('/internal/security/me', { - asSystemRequest: true, - })) as AuthenticatedUser; - }, - }; + public setup({ + application, + config, + getStartServices, + http, + }: SetupParams): AuthenticationServiceSetup { + const getCurrentUser = async () => + (await http.get('/internal/security/me', { asSystemRequest: true })) as AuthenticatedUser; + + loginApp.create({ application, config, getStartServices, http }); + logoutApp.create({ application, http }); + loggedOutApp.create({ application, getStartServices, http }); + overwrittenSessionApp.create({ application, authc: { getCurrentUser }, getStartServices }); + + return { getCurrentUser }; } } diff --git a/x-pack/legacy/plugins/security/public/components/_index.scss b/x-pack/plugins/security/public/authentication/components/_index.scss similarity index 100% rename from x-pack/legacy/plugins/security/public/components/_index.scss rename to x-pack/plugins/security/public/authentication/components/_index.scss diff --git a/x-pack/legacy/plugins/security/public/components/authentication_state_page/__snapshots__/authentication_state_page.test.tsx.snap b/x-pack/plugins/security/public/authentication/components/authentication_state_page/__snapshots__/authentication_state_page.test.tsx.snap similarity index 100% rename from x-pack/legacy/plugins/security/public/components/authentication_state_page/__snapshots__/authentication_state_page.test.tsx.snap rename to x-pack/plugins/security/public/authentication/components/authentication_state_page/__snapshots__/authentication_state_page.test.tsx.snap diff --git a/x-pack/legacy/plugins/security/public/components/authentication_state_page/_authentication_state_page.scss b/x-pack/plugins/security/public/authentication/components/authentication_state_page/_authentication_state_page.scss similarity index 100% rename from x-pack/legacy/plugins/security/public/components/authentication_state_page/_authentication_state_page.scss rename to x-pack/plugins/security/public/authentication/components/authentication_state_page/_authentication_state_page.scss diff --git a/x-pack/legacy/plugins/security/public/components/authentication_state_page/_index.scss b/x-pack/plugins/security/public/authentication/components/authentication_state_page/_index.scss similarity index 100% rename from x-pack/legacy/plugins/security/public/components/authentication_state_page/_index.scss rename to x-pack/plugins/security/public/authentication/components/authentication_state_page/_index.scss diff --git a/x-pack/legacy/plugins/security/public/components/authentication_state_page/authentication_state_page.test.tsx b/x-pack/plugins/security/public/authentication/components/authentication_state_page/authentication_state_page.test.tsx similarity index 100% rename from x-pack/legacy/plugins/security/public/components/authentication_state_page/authentication_state_page.test.tsx rename to x-pack/plugins/security/public/authentication/components/authentication_state_page/authentication_state_page.test.tsx diff --git a/x-pack/legacy/plugins/security/public/components/authentication_state_page/authentication_state_page.tsx b/x-pack/plugins/security/public/authentication/components/authentication_state_page/authentication_state_page.tsx similarity index 100% rename from x-pack/legacy/plugins/security/public/components/authentication_state_page/authentication_state_page.tsx rename to x-pack/plugins/security/public/authentication/components/authentication_state_page/authentication_state_page.tsx diff --git a/x-pack/legacy/plugins/security/public/components/authentication_state_page/index.tsx b/x-pack/plugins/security/public/authentication/components/authentication_state_page/index.tsx similarity index 100% rename from x-pack/legacy/plugins/security/public/components/authentication_state_page/index.tsx rename to x-pack/plugins/security/public/authentication/components/authentication_state_page/index.tsx diff --git a/x-pack/plugins/security/public/authentication/components/index.ts b/x-pack/plugins/security/public/authentication/components/index.ts new file mode 100644 index 00000000000000..b0f2324d6fe52e --- /dev/null +++ b/x-pack/plugins/security/public/authentication/components/index.ts @@ -0,0 +1,7 @@ +/* + * 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 { AuthenticationStatePage } from './authentication_state_page'; diff --git a/x-pack/legacy/plugins/security/public/views/login/components/index.ts b/x-pack/plugins/security/public/authentication/logged_out/index.ts similarity index 83% rename from x-pack/legacy/plugins/security/public/views/login/components/index.ts rename to x-pack/plugins/security/public/authentication/logged_out/index.ts index e3ce25c0f46fea..7f65c12c22a6c4 100644 --- a/x-pack/legacy/plugins/security/public/views/login/components/index.ts +++ b/x-pack/plugins/security/public/authentication/logged_out/index.ts @@ -4,4 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -export { LoginPage } from './login_page'; +export { loggedOutApp } from './logged_out_app'; diff --git a/x-pack/plugins/security/public/authentication/logged_out/logged_out_app.test.ts b/x-pack/plugins/security/public/authentication/logged_out/logged_out_app.test.ts new file mode 100644 index 00000000000000..c8303ecc940d67 --- /dev/null +++ b/x-pack/plugins/security/public/authentication/logged_out/logged_out_app.test.ts @@ -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. + */ + +jest.mock('./logged_out_page'); + +import { AppMount, ScopedHistory } from 'src/core/public'; +import { loggedOutApp } from './logged_out_app'; + +import { coreMock, scopedHistoryMock } from '../../../../../../src/core/public/mocks'; + +describe('loggedOutApp', () => { + it('properly registers application', () => { + const coreSetupMock = coreMock.createSetup(); + + loggedOutApp.create(coreSetupMock); + + expect(coreSetupMock.http.anonymousPaths.register).toHaveBeenCalledTimes(1); + expect(coreSetupMock.http.anonymousPaths.register).toHaveBeenCalledWith('/security/logged_out'); + + expect(coreSetupMock.application.register).toHaveBeenCalledTimes(1); + + const [[appRegistration]] = coreSetupMock.application.register.mock.calls; + expect(appRegistration).toEqual({ + id: 'security_logged_out', + chromeless: true, + appRoute: '/security/logged_out', + title: 'Logged out', + mount: expect.any(Function), + }); + }); + + it('properly renders application', async () => { + const coreSetupMock = coreMock.createSetup(); + const coreStartMock = coreMock.createStart(); + coreSetupMock.getStartServices.mockResolvedValue([coreStartMock, {}]); + + const containerMock = document.createElement('div'); + + loggedOutApp.create(coreSetupMock); + + const [[{ mount }]] = coreSetupMock.application.register.mock.calls; + await (mount as AppMount)({ + element: containerMock, + appBasePath: '', + onAppLeave: jest.fn(), + history: (scopedHistoryMock.create() as unknown) as ScopedHistory, + }); + + const mockRenderApp = jest.requireMock('./logged_out_page').renderLoggedOutPage; + expect(mockRenderApp).toHaveBeenCalledTimes(1); + expect(mockRenderApp).toHaveBeenCalledWith(coreStartMock.i18n, containerMock, { + basePath: coreStartMock.http.basePath, + }); + }); +}); diff --git a/x-pack/plugins/security/public/authentication/logged_out/logged_out_app.ts b/x-pack/plugins/security/public/authentication/logged_out/logged_out_app.ts new file mode 100644 index 00000000000000..b7f26153187917 --- /dev/null +++ b/x-pack/plugins/security/public/authentication/logged_out/logged_out_app.ts @@ -0,0 +1,34 @@ +/* + * 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 { CoreSetup, AppMountParameters, HttpSetup } from 'src/core/public'; + +interface CreateDeps { + application: CoreSetup['application']; + http: HttpSetup; + getStartServices: CoreSetup['getStartServices']; +} + +export const loggedOutApp = Object.freeze({ + id: 'security_logged_out', + create({ application, http, getStartServices }: CreateDeps) { + http.anonymousPaths.register('/security/logged_out'); + application.register({ + id: this.id, + title: i18n.translate('xpack.security.loggedOutAppTitle', { defaultMessage: 'Logged out' }), + chromeless: true, + appRoute: '/security/logged_out', + async mount({ element }: AppMountParameters) { + const [[coreStart], { renderLoggedOutPage }] = await Promise.all([ + getStartServices(), + import('./logged_out_page'), + ]); + return renderLoggedOutPage(coreStart.i18n, element, { basePath: coreStart.http.basePath }); + }, + }); + }, +}); diff --git a/x-pack/plugins/security/public/authentication/logged_out/logged_out_page.tsx b/x-pack/plugins/security/public/authentication/logged_out/logged_out_page.tsx new file mode 100644 index 00000000000000..a708931c3fa95e --- /dev/null +++ b/x-pack/plugins/security/public/authentication/logged_out/logged_out_page.tsx @@ -0,0 +1,44 @@ +/* + * 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 ReactDOM from 'react-dom'; +import { EuiButton } from '@elastic/eui'; +import { FormattedMessage } from '@kbn/i18n/react'; +import { CoreStart, IBasePath } from 'src/core/public'; +import { AuthenticationStatePage } from '../components'; + +interface Props { + basePath: IBasePath; +} + +export function LoggedOutPage({ basePath }: Props) { + return ( + <AuthenticationStatePage + title={ + <FormattedMessage + id="xpack.security.loggedOut.title" + defaultMessage="Successfully logged out" + /> + } + > + <EuiButton href={basePath.prepend('/')}> + <FormattedMessage id="xpack.security.loggedOut.login" defaultMessage="Log in" /> + </EuiButton> + </AuthenticationStatePage> + ); +} + +export function renderLoggedOutPage(i18nStart: CoreStart['i18n'], element: Element, props: Props) { + ReactDOM.render( + <i18nStart.Context> + <LoggedOutPage {...props} /> + </i18nStart.Context>, + element + ); + + return () => ReactDOM.unmountComponentAtNode(element); +} diff --git a/x-pack/plugins/security/public/authentication/login/__snapshots__/login_page.test.tsx.snap b/x-pack/plugins/security/public/authentication/login/__snapshots__/login_page.test.tsx.snap new file mode 100644 index 00000000000000..c1b8202e2f3f37 --- /dev/null +++ b/x-pack/plugins/security/public/authentication/login/__snapshots__/login_page.test.tsx.snap @@ -0,0 +1,188 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`LoginPage disabled form states renders as expected when a connection to ES is not available 1`] = ` +<DisabledLoginForm + message={ + <FormattedMessage + defaultMessage="See the Kibana logs for details and try reloading the page." + id="xpack.security.loginPage.esUnavailableMessage" + values={Object {}} + /> + } + title={ + <FormattedMessage + defaultMessage="Cannot connect to the Elasticsearch cluster" + id="xpack.security.loginPage.esUnavailableTitle" + values={Object {}} + /> + } +/> +`; + +exports[`LoginPage disabled form states renders as expected when an unknown loginState layout is provided 1`] = ` +<DisabledLoginForm + message={ + <FormattedMessage + defaultMessage="Refer to the Kibana logs for more details and refresh to try again." + id="xpack.security.loginPage.unknownLayoutMessage" + values={Object {}} + /> + } + title={ + <FormattedMessage + defaultMessage="Unsupported login form layout." + id="xpack.security.loginPage.unknownLayoutTitle" + values={Object {}} + /> + } +/> +`; + +exports[`LoginPage disabled form states renders as expected when secure connection is required but not present 1`] = ` +<DisabledLoginForm + message={ + <FormattedMessage + defaultMessage="Contact your system administrator." + id="xpack.security.loginPage.requiresSecureConnectionMessage" + values={Object {}} + /> + } + title={ + <FormattedMessage + defaultMessage="A secure connection is required for log in" + id="xpack.security.loginPage.requiresSecureConnectionTitle" + values={Object {}} + /> + } +/> +`; + +exports[`LoginPage disabled form states renders as expected when xpack is not available 1`] = ` +<DisabledLoginForm + message={ + <FormattedMessage + defaultMessage="To use the full set of free features in this distribution of Kibana, please update Elasticsearch to the default distribution." + id="xpack.security.loginPage.xpackUnavailableMessage" + values={Object {}} + /> + } + title={ + <FormattedMessage + defaultMessage="Cannot connect to the Elasticsearch cluster currently configured for Kibana." + id="xpack.security.loginPage.xpackUnavailableTitle" + values={Object {}} + /> + } +/> +`; + +exports[`LoginPage enabled form state renders as expected 1`] = ` +<BasicLoginForm + http={ + Object { + "addLoadingCountSource": [MockFunction], + "get": [MockFunction], + } + } + loginAssistanceMessage="" +/> +`; + +exports[`LoginPage enabled form state renders as expected when info message is set 1`] = ` +<BasicLoginForm + http={ + Object { + "addLoadingCountSource": [MockFunction], + "get": [MockFunction], + } + } + infoMessage="Your session has timed out. Please log in again." + loginAssistanceMessage="" +/> +`; + +exports[`LoginPage enabled form state renders as expected when loginAssistanceMessage is set 1`] = ` +<BasicLoginForm + http={ + Object { + "addLoadingCountSource": [MockFunction], + "get": [MockFunction], + } + } + infoMessage="Your session has timed out. Please log in again." + loginAssistanceMessage="This is an *important* message" +/> +`; + +exports[`LoginPage page renders as expected 1`] = ` +<div + className="loginWelcome login-form" +> + <header + className="loginWelcome__header" + > + <div + className="loginWelcome__content eui-textCenter" + > + <EuiSpacer + size="xxl" + /> + <span + className="loginWelcome__logo" + > + <EuiIcon + size="xxl" + type="logoKibana" + /> + </span> + <EuiTitle + className="loginWelcome__title" + size="l" + > + <h1> + <FormattedMessage + defaultMessage="Welcome to Kibana" + id="xpack.security.loginPage.welcomeTitle" + values={Object {}} + /> + </h1> + </EuiTitle> + <EuiText + className="loginWelcome__subtitle" + color="subdued" + size="s" + > + <p> + <FormattedMessage + defaultMessage="Your window into the Elastic Stack" + id="xpack.security.loginPage.welcomeDescription" + values={Object {}} + /> + </p> + </EuiText> + <EuiSpacer + size="xl" + /> + </div> + </header> + <div + className="loginWelcome__content loginWelcome-body" + > + <EuiFlexGroup + gutterSize="l" + > + <EuiFlexItem> + <BasicLoginForm + http={ + Object { + "addLoadingCountSource": [MockFunction], + "get": [MockFunction], + } + } + loginAssistanceMessage="" + /> + </EuiFlexItem> + </EuiFlexGroup> + </div> +</div> +`; diff --git a/x-pack/legacy/plugins/security/public/views/login/components/login_page/_index.scss b/x-pack/plugins/security/public/authentication/login/_index.scss similarity index 100% rename from x-pack/legacy/plugins/security/public/views/login/components/login_page/_index.scss rename to x-pack/plugins/security/public/authentication/login/_index.scss diff --git a/x-pack/legacy/plugins/security/public/views/login/components/login_page/_login_page.scss b/x-pack/plugins/security/public/authentication/login/_login_page.scss similarity index 100% rename from x-pack/legacy/plugins/security/public/views/login/components/login_page/_login_page.scss rename to x-pack/plugins/security/public/authentication/login/_login_page.scss diff --git a/x-pack/legacy/plugins/security/public/views/login/components/basic_login_form/__snapshots__/basic_login_form.test.tsx.snap b/x-pack/plugins/security/public/authentication/login/components/basic_login_form/__snapshots__/basic_login_form.test.tsx.snap similarity index 100% rename from x-pack/legacy/plugins/security/public/views/login/components/basic_login_form/__snapshots__/basic_login_form.test.tsx.snap rename to x-pack/plugins/security/public/authentication/login/components/basic_login_form/__snapshots__/basic_login_form.test.tsx.snap diff --git a/x-pack/plugins/security/public/authentication/login/components/basic_login_form/basic_login_form.test.tsx b/x-pack/plugins/security/public/authentication/login/components/basic_login_form/basic_login_form.test.tsx new file mode 100644 index 00000000000000..e62fd7191dfaec --- /dev/null +++ b/x-pack/plugins/security/public/authentication/login/components/basic_login_form/basic_login_form.test.tsx @@ -0,0 +1,111 @@ +/* + * 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 { act } from '@testing-library/react'; +import { EuiButton, EuiCallOut } from '@elastic/eui'; +import { mountWithIntl, nextTick, shallowWithIntl } from 'test_utils/enzyme_helpers'; +import { BasicLoginForm } from './basic_login_form'; + +import { coreMock } from '../../../../../../../../src/core/public/mocks'; + +describe('BasicLoginForm', () => { + beforeAll(() => { + Object.defineProperty(window, 'location', { + value: { href: 'https://some-host/bar' }, + writable: true, + }); + }); + + afterAll(() => { + delete (window as any).location; + }); + + it('renders as expected', () => { + expect( + shallowWithIntl( + <BasicLoginForm http={coreMock.createStart().http} loginAssistanceMessage="" /> + ) + ).toMatchSnapshot(); + }); + + it('renders an info message when provided.', () => { + const wrapper = shallowWithIntl( + <BasicLoginForm + http={coreMock.createStart().http} + infoMessage={'Hey this is an info message'} + loginAssistanceMessage="" + /> + ); + + expect(wrapper.find(EuiCallOut).props().title).toEqual('Hey this is an info message'); + }); + + it('renders an invalid credentials message', async () => { + const mockHTTP = coreMock.createStart({ basePath: '/some-base-path' }).http; + mockHTTP.post.mockRejectedValue({ response: { status: 401 } }); + + const wrapper = mountWithIntl(<BasicLoginForm http={mockHTTP} loginAssistanceMessage="" />); + + wrapper.find('input[name="username"]').simulate('change', { target: { value: 'username' } }); + wrapper.find('input[name="password"]').simulate('change', { target: { value: 'password' } }); + wrapper.find(EuiButton).simulate('click'); + + await act(async () => { + await nextTick(); + wrapper.update(); + }); + + expect(wrapper.find(EuiCallOut).props().title).toEqual( + `Invalid username or password. Please try again.` + ); + }); + + it('renders unknown error message', async () => { + const mockHTTP = coreMock.createStart({ basePath: '/some-base-path' }).http; + mockHTTP.post.mockRejectedValue({ response: { status: 500 } }); + + const wrapper = mountWithIntl(<BasicLoginForm http={mockHTTP} loginAssistanceMessage="" />); + + wrapper.find('input[name="username"]').simulate('change', { target: { value: 'username' } }); + wrapper.find('input[name="password"]').simulate('change', { target: { value: 'password' } }); + wrapper.find(EuiButton).simulate('click'); + + await act(async () => { + await nextTick(); + wrapper.update(); + }); + + expect(wrapper.find(EuiCallOut).props().title).toEqual(`Oops! Error. Try again.`); + }); + + it('properly redirects after successful login', async () => { + window.location.href = `https://some-host/login?next=${encodeURIComponent( + '/some-base-path/app/kibana#/home?_g=()' + )}`; + const mockHTTP = coreMock.createStart({ basePath: '/some-base-path' }).http; + mockHTTP.post.mockResolvedValue({}); + + const wrapper = mountWithIntl(<BasicLoginForm http={mockHTTP} loginAssistanceMessage="" />); + + wrapper.find('input[name="username"]').simulate('change', { target: { value: 'username1' } }); + wrapper.find('input[name="password"]').simulate('change', { target: { value: 'password1' } }); + wrapper.find(EuiButton).simulate('click'); + + await act(async () => { + await nextTick(); + wrapper.update(); + }); + + expect(mockHTTP.post).toHaveBeenCalledTimes(1); + expect(mockHTTP.post).toHaveBeenCalledWith('/internal/security/login', { + body: JSON.stringify({ username: 'username1', password: 'password1' }), + }); + + expect(window.location.href).toBe('/some-base-path/app/kibana#/home?_g=()'); + expect(wrapper.find(EuiCallOut).exists()).toBe(false); + }); +}); diff --git a/x-pack/legacy/plugins/security/public/views/login/components/basic_login_form/basic_login_form.tsx b/x-pack/plugins/security/public/authentication/login/components/basic_login_form/basic_login_form.tsx similarity index 76% rename from x-pack/legacy/plugins/security/public/views/login/components/basic_login_form/basic_login_form.tsx rename to x-pack/plugins/security/public/authentication/login/components/basic_login_form/basic_login_form.tsx index d5658cc297c269..7302ee9bf9851e 100644 --- a/x-pack/legacy/plugins/security/public/views/login/components/basic_login_form/basic_login_form.tsx +++ b/x-pack/plugins/security/public/authentication/login/components/basic_login_form/basic_login_form.tsx @@ -4,20 +4,25 @@ * you may not use this file except in compliance with the Elastic License. */ -import { EuiButton, EuiCallOut, EuiFieldText, EuiFormRow, EuiPanel, EuiSpacer } from '@elastic/eui'; -import { FormattedMessage, InjectedIntl, injectI18n } from '@kbn/i18n/react'; import React, { ChangeEvent, Component, FormEvent, Fragment, MouseEvent } from 'react'; import ReactMarkdown from 'react-markdown'; -import { EuiText } from '@elastic/eui'; -import { LoginState } from '../../login_state'; +import { + EuiButton, + EuiCallOut, + EuiFieldText, + EuiFormRow, + EuiPanel, + EuiSpacer, + EuiText, +} from '@elastic/eui'; +import { i18n } from '@kbn/i18n'; +import { FormattedMessage } from '@kbn/i18n/react'; +import { HttpStart, IHttpFetchError } from 'src/core/public'; +import { parseNext } from '../../../../../common/parse_next'; interface Props { - http: any; - window: any; + http: HttpStart; infoMessage?: string; - loginState: LoginState; - next: string; - intl: InjectedIntl; loginAssistanceMessage: string; } @@ -29,7 +34,7 @@ interface State { message: string; } -class BasicLoginFormUI extends Component<Props, State> { +export class BasicLoginForm extends Component<Props, State> { public state = { hasError: false, isLoading: false, @@ -175,7 +180,7 @@ class BasicLoginFormUI extends Component<Props, State> { }); }; - private submit = (e: MouseEvent<HTMLButtonElement> | FormEvent<HTMLFormElement>) => { + private submit = async (e: MouseEvent<HTMLButtonElement> | FormEvent<HTMLFormElement>) => { e.preventDefault(); if (!this.isFormValid()) { @@ -187,34 +192,28 @@ class BasicLoginFormUI extends Component<Props, State> { message: '', }); - const { http, window, next, intl } = this.props; - + const { http } = this.props; const { username, password } = this.state; - http.post('./internal/security/login', { username, password }).then( - () => (window.location.href = next), - (error: any) => { - const { statusCode = 500 } = error.data || {}; - - let message = intl.formatMessage({ - id: 'xpack.security.login.basicLoginForm.unknownErrorMessage', - defaultMessage: 'Oops! Error. Try again.', - }); - if (statusCode === 401) { - message = intl.formatMessage({ - id: 'xpack.security.login.basicLoginForm.invalidUsernameOrPasswordErrorMessage', - defaultMessage: 'Invalid username or password. Please try again.', - }); - } - - this.setState({ - hasError: true, - message, - isLoading: false, - }); - } - ); + try { + await http.post('/internal/security/login', { body: JSON.stringify({ username, password }) }); + window.location.href = parseNext(window.location.href, http.basePath.serverBasePath); + } catch (error) { + const message = + (error as IHttpFetchError).response?.status === 401 + ? i18n.translate( + 'xpack.security.login.basicLoginForm.invalidUsernameOrPasswordErrorMessage', + { defaultMessage: 'Invalid username or password. Please try again.' } + ) + : i18n.translate('xpack.security.login.basicLoginForm.unknownErrorMessage', { + defaultMessage: 'Oops! Error. Try again.', + }); + + this.setState({ + hasError: true, + message, + isLoading: false, + }); + } }; } - -export const BasicLoginForm = injectI18n(BasicLoginFormUI); diff --git a/x-pack/legacy/plugins/security/public/views/login/components/basic_login_form/index.ts b/x-pack/plugins/security/public/authentication/login/components/basic_login_form/index.ts similarity index 100% rename from x-pack/legacy/plugins/security/public/views/login/components/basic_login_form/index.ts rename to x-pack/plugins/security/public/authentication/login/components/basic_login_form/index.ts diff --git a/x-pack/legacy/plugins/security/public/views/login/components/disabled_login_form/__snapshots__/disabled_login_form.test.tsx.snap b/x-pack/plugins/security/public/authentication/login/components/disabled_login_form/__snapshots__/disabled_login_form.test.tsx.snap similarity index 100% rename from x-pack/legacy/plugins/security/public/views/login/components/disabled_login_form/__snapshots__/disabled_login_form.test.tsx.snap rename to x-pack/plugins/security/public/authentication/login/components/disabled_login_form/__snapshots__/disabled_login_form.test.tsx.snap diff --git a/x-pack/legacy/plugins/security/public/views/login/components/disabled_login_form/disabled_login_form.test.tsx b/x-pack/plugins/security/public/authentication/login/components/disabled_login_form/disabled_login_form.test.tsx similarity index 100% rename from x-pack/legacy/plugins/security/public/views/login/components/disabled_login_form/disabled_login_form.test.tsx rename to x-pack/plugins/security/public/authentication/login/components/disabled_login_form/disabled_login_form.test.tsx diff --git a/x-pack/legacy/plugins/security/public/views/login/components/disabled_login_form/disabled_login_form.tsx b/x-pack/plugins/security/public/authentication/login/components/disabled_login_form/disabled_login_form.tsx similarity index 100% rename from x-pack/legacy/plugins/security/public/views/login/components/disabled_login_form/disabled_login_form.tsx rename to x-pack/plugins/security/public/authentication/login/components/disabled_login_form/disabled_login_form.tsx diff --git a/x-pack/legacy/plugins/security/public/views/login/components/disabled_login_form/index.ts b/x-pack/plugins/security/public/authentication/login/components/disabled_login_form/index.ts similarity index 100% rename from x-pack/legacy/plugins/security/public/views/login/components/disabled_login_form/index.ts rename to x-pack/plugins/security/public/authentication/login/components/disabled_login_form/index.ts diff --git a/x-pack/plugins/security/public/authentication/login/components/index.ts b/x-pack/plugins/security/public/authentication/login/components/index.ts new file mode 100644 index 00000000000000..5f267f7c4caa20 --- /dev/null +++ b/x-pack/plugins/security/public/authentication/login/components/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 { BasicLoginForm } from './basic_login_form'; +export { DisabledLoginForm } from './disabled_login_form'; diff --git a/x-pack/legacy/plugins/security/public/views/login/index.ts b/x-pack/plugins/security/public/authentication/login/index.ts similarity index 85% rename from x-pack/legacy/plugins/security/public/views/login/index.ts rename to x-pack/plugins/security/public/authentication/login/index.ts index b2de507d5ee12f..c965dced799eba 100644 --- a/x-pack/legacy/plugins/security/public/views/login/index.ts +++ b/x-pack/plugins/security/public/authentication/login/index.ts @@ -4,4 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -import './login'; +export { loginApp } from './login_app'; diff --git a/x-pack/plugins/security/public/authentication/login/login_app.test.ts b/x-pack/plugins/security/public/authentication/login/login_app.test.ts new file mode 100644 index 00000000000000..051f08058ed8dc --- /dev/null +++ b/x-pack/plugins/security/public/authentication/login/login_app.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. + */ + +jest.mock('./login_page'); + +import { AppMount, ScopedHistory } from 'src/core/public'; +import { loginApp } from './login_app'; + +import { coreMock, scopedHistoryMock } from '../../../../../../src/core/public/mocks'; + +describe('loginApp', () => { + it('properly registers application', () => { + const coreSetupMock = coreMock.createSetup(); + + loginApp.create({ + ...coreSetupMock, + config: { loginAssistanceMessage: '' }, + }); + + expect(coreSetupMock.http.anonymousPaths.register).toHaveBeenCalledTimes(1); + expect(coreSetupMock.http.anonymousPaths.register).toHaveBeenCalledWith('/login'); + + expect(coreSetupMock.application.register).toHaveBeenCalledTimes(1); + + const [[appRegistration]] = coreSetupMock.application.register.mock.calls; + expect(appRegistration).toEqual({ + id: 'security_login', + chromeless: true, + appRoute: '/login', + title: 'Login', + mount: expect.any(Function), + }); + }); + + it('properly renders application', async () => { + const coreSetupMock = coreMock.createSetup(); + const coreStartMock = coreMock.createStart(); + coreStartMock.injectedMetadata.getInjectedVar.mockReturnValue(true); + coreSetupMock.getStartServices.mockResolvedValue([coreStartMock, {}]); + const containerMock = document.createElement('div'); + + loginApp.create({ + ...coreSetupMock, + config: { loginAssistanceMessage: 'some-message' }, + }); + + const [[{ mount }]] = coreSetupMock.application.register.mock.calls; + await (mount as AppMount)({ + element: containerMock, + appBasePath: '', + onAppLeave: jest.fn(), + history: (scopedHistoryMock.create() as unknown) as ScopedHistory, + }); + + expect(coreStartMock.injectedMetadata.getInjectedVar).toHaveBeenCalledTimes(1); + expect(coreStartMock.injectedMetadata.getInjectedVar).toHaveBeenCalledWith('secureCookies'); + + const mockRenderApp = jest.requireMock('./login_page').renderLoginPage; + expect(mockRenderApp).toHaveBeenCalledTimes(1); + expect(mockRenderApp).toHaveBeenCalledWith(coreStartMock.i18n, containerMock, { + http: coreStartMock.http, + fatalErrors: coreStartMock.fatalErrors, + loginAssistanceMessage: 'some-message', + requiresSecureConnection: true, + }); + }); +}); diff --git a/x-pack/plugins/security/public/authentication/login/login_app.ts b/x-pack/plugins/security/public/authentication/login/login_app.ts new file mode 100644 index 00000000000000..4f4bf3903a1fa4 --- /dev/null +++ b/x-pack/plugins/security/public/authentication/login/login_app.ts @@ -0,0 +1,43 @@ +/* + * 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 { CoreSetup, AppMountParameters, HttpSetup } from 'src/core/public'; +import { ConfigType } from '../../config'; + +interface CreateDeps { + application: CoreSetup['application']; + http: HttpSetup; + getStartServices: CoreSetup['getStartServices']; + config: Pick<ConfigType, 'loginAssistanceMessage'>; +} + +export const loginApp = Object.freeze({ + id: 'security_login', + create({ application, http, getStartServices, config }: CreateDeps) { + http.anonymousPaths.register('/login'); + application.register({ + id: this.id, + title: i18n.translate('xpack.security.loginAppTitle', { defaultMessage: 'Login' }), + chromeless: true, + appRoute: '/login', + async mount({ element }: AppMountParameters) { + const [[coreStart], { renderLoginPage }] = await Promise.all([ + getStartServices(), + import('./login_page'), + ]); + return renderLoginPage(coreStart.i18n, element, { + http: coreStart.http, + fatalErrors: coreStart.fatalErrors, + loginAssistanceMessage: config.loginAssistanceMessage, + requiresSecureConnection: coreStart.injectedMetadata.getInjectedVar( + 'secureCookies' + ) as boolean, + }); + }, + }); + }, +}); diff --git a/x-pack/plugins/security/public/authentication/login/login_page.test.tsx b/x-pack/plugins/security/public/authentication/login/login_page.test.tsx new file mode 100644 index 00000000000000..294434cd08ebc6 --- /dev/null +++ b/x-pack/plugins/security/public/authentication/login/login_page.test.tsx @@ -0,0 +1,282 @@ +/* + * 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 { shallow } from 'enzyme'; +import { act } from '@testing-library/react'; +import { nextTick } from 'test_utils/enzyme_helpers'; +import { LoginState } from './login_state'; +import { LoginPage } from './login_page'; +import { coreMock } from '../../../../../../src/core/public/mocks'; +import { DisabledLoginForm, BasicLoginForm } from './components'; + +const createLoginState = (options?: Partial<LoginState>) => { + return { + allowLogin: true, + layout: 'form', + ...options, + } as LoginState; +}; + +describe('LoginPage', () => { + // mock a minimal subset of the HttpSetup + const httpMock = { + get: jest.fn(), + addLoadingCountSource: jest.fn(), + } as any; + const resetHttpMock = () => { + httpMock.get.mockReset(); + httpMock.addLoadingCountSource.mockReset(); + }; + + beforeAll(() => { + Object.defineProperty(window, 'location', { + value: { href: 'http://some-host/bar', protocol: 'http' }, + writable: true, + }); + }); + + beforeEach(() => { + resetHttpMock(); + }); + + afterAll(() => { + delete (window as any).location; + }); + + describe('page', () => { + it('renders as expected', async () => { + const coreStartMock = coreMock.createStart(); + httpMock.get.mockResolvedValue(createLoginState()); + + const wrapper = shallow( + <LoginPage + http={httpMock} + fatalErrors={coreStartMock.fatalErrors} + loginAssistanceMessage="" + requiresSecureConnection={false} + /> + ); + + await act(async () => { + await nextTick(); + wrapper.update(); + resetHttpMock(); // so the calls don't show in the BasicLoginForm snapshot + }); + + expect(wrapper).toMatchSnapshot(); + }); + }); + + describe('disabled form states', () => { + it('renders as expected when secure connection is required but not present', async () => { + const coreStartMock = coreMock.createStart(); + httpMock.get.mockResolvedValue(createLoginState()); + + const wrapper = shallow( + <LoginPage + http={httpMock} + fatalErrors={coreStartMock.fatalErrors} + loginAssistanceMessage="" + requiresSecureConnection={true} + /> + ); + + await act(async () => { + await nextTick(); + wrapper.update(); + }); + + expect(wrapper.find(DisabledLoginForm)).toMatchSnapshot(); + }); + + it('renders as expected when a connection to ES is not available', async () => { + const coreStartMock = coreMock.createStart(); + httpMock.get.mockResolvedValue(createLoginState({ layout: 'error-es-unavailable' })); + + const wrapper = shallow( + <LoginPage + http={httpMock} + fatalErrors={coreStartMock.fatalErrors} + loginAssistanceMessage="" + requiresSecureConnection={false} + /> + ); + + await act(async () => { + await nextTick(); + wrapper.update(); + }); + + expect(wrapper.find(DisabledLoginForm)).toMatchSnapshot(); + }); + + it('renders as expected when xpack is not available', async () => { + const coreStartMock = coreMock.createStart(); + httpMock.get.mockResolvedValue(createLoginState({ layout: 'error-xpack-unavailable' })); + + const wrapper = shallow( + <LoginPage + http={httpMock} + fatalErrors={coreStartMock.fatalErrors} + loginAssistanceMessage="" + requiresSecureConnection={false} + /> + ); + + await act(async () => { + await nextTick(); + wrapper.update(); + }); + + expect(wrapper.find(DisabledLoginForm)).toMatchSnapshot(); + }); + + it('renders as expected when an unknown loginState layout is provided', async () => { + const coreStartMock = coreMock.createStart(); + httpMock.get.mockResolvedValue( + createLoginState({ layout: 'error-asdf-asdf-unknown' as any }) + ); + + const wrapper = shallow( + <LoginPage + http={httpMock} + fatalErrors={coreStartMock.fatalErrors} + loginAssistanceMessage="" + requiresSecureConnection={false} + /> + ); + + await act(async () => { + await nextTick(); + wrapper.update(); + }); + + expect(wrapper.find(DisabledLoginForm)).toMatchSnapshot(); + }); + }); + + describe('enabled form state', () => { + it('renders as expected', async () => { + const coreStartMock = coreMock.createStart(); + httpMock.get.mockResolvedValue(createLoginState()); + + const wrapper = shallow( + <LoginPage + http={httpMock} + fatalErrors={coreStartMock.fatalErrors} + loginAssistanceMessage="" + requiresSecureConnection={false} + /> + ); + + await act(async () => { + await nextTick(); + wrapper.update(); + resetHttpMock(); // so the calls don't show in the BasicLoginForm snapshot + }); + + expect(wrapper.find(BasicLoginForm)).toMatchSnapshot(); + }); + + it('renders as expected when info message is set', async () => { + const coreStartMock = coreMock.createStart(); + httpMock.get.mockResolvedValue(createLoginState()); + window.location.href = 'http://some-host/bar?msg=SESSION_EXPIRED'; + + const wrapper = shallow( + <LoginPage + http={httpMock} + fatalErrors={coreStartMock.fatalErrors} + loginAssistanceMessage="" + requiresSecureConnection={false} + /> + ); + + await act(async () => { + await nextTick(); + wrapper.update(); + resetHttpMock(); // so the calls don't show in the BasicLoginForm snapshot + }); + + expect(wrapper.find(BasicLoginForm)).toMatchSnapshot(); + }); + + it('renders as expected when loginAssistanceMessage is set', async () => { + const coreStartMock = coreMock.createStart(); + httpMock.get.mockResolvedValue(createLoginState()); + + const wrapper = shallow( + <LoginPage + http={httpMock} + fatalErrors={coreStartMock.fatalErrors} + loginAssistanceMessage="This is an *important* message" + requiresSecureConnection={false} + /> + ); + + await act(async () => { + await nextTick(); + wrapper.update(); + resetHttpMock(); // so the calls don't show in the BasicLoginForm snapshot + }); + + expect(wrapper.find(BasicLoginForm)).toMatchSnapshot(); + }); + }); + + describe('API calls', () => { + it('GET login_state success', async () => { + const coreStartMock = coreMock.createStart(); + httpMock.get.mockResolvedValue(createLoginState()); + + const wrapper = shallow( + <LoginPage + http={httpMock} + fatalErrors={coreStartMock.fatalErrors} + loginAssistanceMessage="" + requiresSecureConnection={false} + /> + ); + + await act(async () => { + await nextTick(); + wrapper.update(); + }); + + expect(httpMock.addLoadingCountSource).toHaveBeenCalledTimes(1); + expect(httpMock.get).toHaveBeenCalledTimes(1); + expect(httpMock.get).toHaveBeenCalledWith('/internal/security/login_state'); + expect(coreStartMock.fatalErrors.add).not.toHaveBeenCalled(); + }); + + it('GET login_state failure', async () => { + const coreStartMock = coreMock.createStart(); + const error = Symbol(); + httpMock.get.mockRejectedValue(error); + + const wrapper = shallow( + <LoginPage + http={httpMock} + fatalErrors={coreStartMock.fatalErrors} + loginAssistanceMessage="" + requiresSecureConnection={false} + /> + ); + + await act(async () => { + await nextTick(); + wrapper.update(); + }); + + expect(httpMock.addLoadingCountSource).toHaveBeenCalledTimes(1); + expect(httpMock.get).toHaveBeenCalledTimes(1); + expect(httpMock.get).toHaveBeenCalledWith('/internal/security/login_state'); + expect(coreStartMock.fatalErrors.add).toHaveBeenCalledTimes(1); + expect(coreStartMock.fatalErrors.add).toHaveBeenCalledWith(error); + }); + }); +}); diff --git a/x-pack/legacy/plugins/security/public/views/login/components/login_page/login_page.tsx b/x-pack/plugins/security/public/authentication/login/login_page.tsx similarity index 60% rename from x-pack/legacy/plugins/security/public/views/login/components/login_page/login_page.tsx rename to x-pack/plugins/security/public/authentication/login/login_page.tsx index 8035789a30e9df..848751aa033524 100644 --- a/x-pack/legacy/plugins/security/public/views/login/components/login_page/login_page.tsx +++ b/x-pack/plugins/security/public/authentication/login/login_page.tsx @@ -5,45 +5,81 @@ */ import React, { Component } from 'react'; - -import { FormattedMessage } from '@kbn/i18n/react'; - -import { - // @ts-ignore - EuiCard, - EuiFlexGroup, - EuiFlexItem, - EuiIcon, - EuiSpacer, - EuiText, - EuiTitle, -} from '@elastic/eui'; +import ReactDOM from 'react-dom'; import classNames from 'classnames'; -import { LoginState } from '../../login_state'; -import { BasicLoginForm } from '../basic_login_form'; -import { DisabledLoginForm } from '../disabled_login_form'; +import { BehaviorSubject } from 'rxjs'; +import { parse } from 'url'; +import { EuiFlexGroup, EuiFlexItem, EuiIcon, EuiSpacer, EuiText, EuiTitle } from '@elastic/eui'; +import { i18n } from '@kbn/i18n'; +import { FormattedMessage } from '@kbn/i18n/react'; +import { CoreStart, FatalErrorsStart, HttpStart } from 'src/core/public'; +import { LoginLayout } from '../../../common/licensing'; +import { BasicLoginForm, DisabledLoginForm } from './components'; +import { LoginState } from './login_state'; interface Props { - http: any; - window: any; - next: string; - infoMessage?: string; - loginState: LoginState; - isSecureConnection: boolean; - requiresSecureConnection: boolean; + http: HttpStart; + fatalErrors: FatalErrorsStart; loginAssistanceMessage: string; + requiresSecureConnection: boolean; +} + +interface State { + loginState: LoginState | null; } -export class LoginPage extends Component<Props, {}> { +const infoMessageMap = new Map([ + [ + 'SESSION_EXPIRED', + i18n.translate('xpack.security.login.sessionExpiredDescription', { + defaultMessage: 'Your session has timed out. Please log in again.', + }), + ], + [ + 'LOGGED_OUT', + i18n.translate('xpack.security.login.loggedOutDescription', { + defaultMessage: 'You have logged out of Kibana.', + }), + ], +]); + +export class LoginPage extends Component<Props, State> { + state = { loginState: null }; + + public async componentDidMount() { + const loadingCount$ = new BehaviorSubject(1); + this.props.http.addLoadingCountSource(loadingCount$.asObservable()); + + try { + this.setState({ loginState: await this.props.http.get('/internal/security/login_state') }); + } catch (err) { + this.props.fatalErrors.add(err); + } + + loadingCount$.next(0); + loadingCount$.complete(); + } + public render() { - const allowLogin = this.allowLogin(); + const loginState = this.state.loginState; + if (!loginState) { + return null; + } + + const isSecureConnection = !!window.location.protocol.match(/^https/); + const { allowLogin, layout } = loginState; + + const loginIsSupported = + this.props.requiresSecureConnection && !isSecureConnection + ? false + : allowLogin && layout === 'form'; const contentHeaderClasses = classNames('loginWelcome__content', 'eui-textCenter', { - ['loginWelcome__contentDisabledForm']: !allowLogin, + ['loginWelcome__contentDisabledForm']: !loginIsSupported, }); const contentBodyClasses = classNames('loginWelcome__content', 'loginWelcome-body', { - ['loginWelcome__contentDisabledForm']: !allowLogin, + ['loginWelcome__contentDisabledForm']: !loginIsSupported, }); return ( @@ -75,23 +111,21 @@ export class LoginPage extends Component<Props, {}> { </header> <div className={contentBodyClasses}> <EuiFlexGroup gutterSize="l"> - <EuiFlexItem>{this.getLoginForm()}</EuiFlexItem> + <EuiFlexItem>{this.getLoginForm({ isSecureConnection, layout })}</EuiFlexItem> </EuiFlexGroup> </div> </div> ); } - private allowLogin = () => { - if (this.props.requiresSecureConnection && !this.props.isSecureConnection) { - return false; - } - - return this.props.loginState.allowLogin && this.props.loginState.layout === 'form'; - }; - - private getLoginForm = () => { - if (this.props.requiresSecureConnection && !this.props.isSecureConnection) { + private getLoginForm = ({ + isSecureConnection, + layout, + }: { + isSecureConnection: boolean; + layout: LoginLayout; + }) => { + if (this.props.requiresSecureConnection && !isSecureConnection) { return ( <DisabledLoginForm title={ @@ -110,10 +144,17 @@ export class LoginPage extends Component<Props, {}> { ); } - const layout = this.props.loginState.layout; switch (layout) { case 'form': - return <BasicLoginForm {...this.props} />; + return ( + <BasicLoginForm + http={this.props.http} + infoMessage={infoMessageMap.get( + parse(window.location.href, true).query.msg?.toString() + )} + loginAssistanceMessage={this.props.loginAssistanceMessage} + /> + ); case 'error-es-unavailable': return ( <DisabledLoginForm @@ -168,3 +209,14 @@ export class LoginPage extends Component<Props, {}> { } }; } + +export function renderLoginPage(i18nStart: CoreStart['i18n'], element: Element, props: Props) { + ReactDOM.render( + <i18nStart.Context> + <LoginPage {...props} /> + </i18nStart.Context>, + element + ); + + return () => ReactDOM.unmountComponentAtNode(element); +} diff --git a/x-pack/legacy/plugins/security/public/views/login/login_state.ts b/x-pack/plugins/security/public/authentication/login/login_state.ts similarity index 78% rename from x-pack/legacy/plugins/security/public/views/login/login_state.ts rename to x-pack/plugins/security/public/authentication/login/login_state.ts index b1eb3d61fe5f30..6ca38296706feb 100644 --- a/x-pack/legacy/plugins/security/public/views/login/login_state.ts +++ b/x-pack/plugins/security/public/authentication/login/login_state.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -export type LoginLayout = 'form' | 'error-es-unavailable' | 'error-xpack-unavailable'; +import { LoginLayout } from '../../../common/licensing'; export interface LoginState { layout: LoginLayout; diff --git a/x-pack/legacy/plugins/security/public/views/login/components/login_page/index.ts b/x-pack/plugins/security/public/authentication/logout/index.ts similarity index 85% rename from x-pack/legacy/plugins/security/public/views/login/components/login_page/index.ts rename to x-pack/plugins/security/public/authentication/logout/index.ts index e3ce25c0f46fea..981811ab21eed3 100644 --- a/x-pack/legacy/plugins/security/public/views/login/components/login_page/index.ts +++ b/x-pack/plugins/security/public/authentication/logout/index.ts @@ -4,4 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -export { LoginPage } from './login_page'; +export { logoutApp } from './logout_app'; diff --git a/x-pack/plugins/security/public/authentication/logout/logout_app.test.ts b/x-pack/plugins/security/public/authentication/logout/logout_app.test.ts new file mode 100644 index 00000000000000..c17a0c2ca27b15 --- /dev/null +++ b/x-pack/plugins/security/public/authentication/logout/logout_app.test.ts @@ -0,0 +1,66 @@ +/* + * 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 { AppMount, ScopedHistory } from 'src/core/public'; +import { logoutApp } from './logout_app'; + +import { coreMock, scopedHistoryMock } from '../../../../../../src/core/public/mocks'; + +describe('logoutApp', () => { + beforeAll(() => { + Object.defineProperty(window, 'sessionStorage', { + value: { clear: jest.fn() }, + writable: true, + }); + Object.defineProperty(window, 'location', { + value: { href: 'https://some-host/bar?arg=true', search: '?arg=true' }, + writable: true, + }); + }); + + afterAll(() => { + delete (window as any).sessionStorage; + delete (window as any).location; + }); + + it('properly registers application', () => { + const coreSetupMock = coreMock.createSetup(); + + logoutApp.create(coreSetupMock); + + expect(coreSetupMock.http.anonymousPaths.register).toHaveBeenCalledTimes(1); + expect(coreSetupMock.http.anonymousPaths.register).toHaveBeenCalledWith('/logout'); + + expect(coreSetupMock.application.register).toHaveBeenCalledTimes(1); + + const [[appRegistration]] = coreSetupMock.application.register.mock.calls; + expect(appRegistration).toEqual({ + id: 'security_logout', + chromeless: true, + appRoute: '/logout', + title: 'Logout', + mount: expect.any(Function), + }); + }); + + it('properly mounts application', async () => { + const coreSetupMock = coreMock.createSetup({ basePath: '/mock-base-path' }); + const containerMock = document.createElement('div'); + + logoutApp.create(coreSetupMock); + + const [[{ mount }]] = coreSetupMock.application.register.mock.calls; + await (mount as AppMount)({ + element: containerMock, + appBasePath: '', + onAppLeave: jest.fn(), + history: (scopedHistoryMock.create() as unknown) as ScopedHistory, + }); + + expect(window.sessionStorage.clear).toHaveBeenCalledTimes(1); + expect(window.location.href).toBe('/mock-base-path/api/security/logout?arg=true'); + }); +}); diff --git a/x-pack/plugins/security/public/authentication/logout/logout_app.ts b/x-pack/plugins/security/public/authentication/logout/logout_app.ts new file mode 100644 index 00000000000000..72f69ce4460c37 --- /dev/null +++ b/x-pack/plugins/security/public/authentication/logout/logout_app.ts @@ -0,0 +1,36 @@ +/* + * 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 { CoreSetup, HttpSetup } from 'src/core/public'; + +interface CreateDeps { + application: CoreSetup['application']; + http: HttpSetup; +} + +export const logoutApp = Object.freeze({ + id: 'security_logout', + create({ application, http }: CreateDeps) { + http.anonymousPaths.register('/logout'); + application.register({ + id: this.id, + title: i18n.translate('xpack.security.logoutAppTitle', { defaultMessage: 'Logout' }), + chromeless: true, + appRoute: '/logout', + async mount() { + window.sessionStorage.clear(); + + // Redirect user to the server logout endpoint to complete logout. + window.location.href = http.basePath.prepend( + `/api/security/logout${window.location.search}` + ); + + return () => {}; + }, + }); + }, +}); diff --git a/x-pack/plugins/security/public/authentication/overwritten_session/__snapshots__/overwritten_session_page.test.tsx.snap b/x-pack/plugins/security/public/authentication/overwritten_session/__snapshots__/overwritten_session_page.test.tsx.snap new file mode 100644 index 00000000000000..2ce59ab37f5148 --- /dev/null +++ b/x-pack/plugins/security/public/authentication/overwritten_session/__snapshots__/overwritten_session_page.test.tsx.snap @@ -0,0 +1,135 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`OverwrittenSessionPage renders as expected 1`] = ` +<AuthenticationStatePage + title={ + <FormattedMessage + defaultMessage="You previously logged in as a different user." + id="xpack.security.overwrittenSession.title" + values={Object {}} + /> + } +> + <div + className="secAuthenticationStatePage" + > + <header + className="secAuthenticationStatePage__header" + > + <div + className="secAuthenticationStatePage__content eui-textCenter" + > + <EuiSpacer + size="xxl" + > + <div + className="euiSpacer euiSpacer--xxl" + /> + </EuiSpacer> + <span + className="secAuthenticationStatePage__logo" + > + <EuiIcon + size="xxl" + type="logoKibana" + > + <EuiIconLogoKibana + aria-hidden={true} + className="euiIcon euiIcon--xxLarge euiIcon-isLoaded" + focusable="false" + role="img" + style={null} + > + <svg + aria-hidden={true} + className="euiIcon euiIcon--xxLarge euiIcon-isLoaded" + focusable="false" + height={32} + role="img" + style={null} + viewBox="0 0 32 32" + width={32} + xmlns="http://www.w3.org/2000/svg" + > + <g + fill="none" + fillRule="evenodd" + > + <path + d="M4 0v28.789L28.935.017z" + fill="#F04E98" + /> + <path + className="euiIcon__fillNegative" + d="M4 12v16.789l11.906-13.738A24.721 24.721 0 004 12" + /> + <path + d="M18.479 16.664L6.268 30.754l-1.073 1.237h23.191c-1.252-6.292-4.883-11.719-9.908-15.327" + fill="#00BFB3" + /> + </g> + </svg> + </EuiIconLogoKibana> + </EuiIcon> + </span> + <EuiTitle + className="secAuthenticationStatePage__title" + size="l" + > + <h1 + className="euiTitle euiTitle--large secAuthenticationStatePage__title" + > + <FormattedMessage + defaultMessage="You previously logged in as a different user." + id="xpack.security.overwrittenSession.title" + values={Object {}} + > + You previously logged in as a different user. + </FormattedMessage> + </h1> + </EuiTitle> + <EuiSpacer + size="xl" + > + <div + className="euiSpacer euiSpacer--xl" + /> + </EuiSpacer> + </div> + </header> + <div + className="secAuthenticationStatePage__content eui-textCenter" + > + <EuiButton + href="/mock-base-path/" + > + <a + className="euiButton euiButton--primary" + href="/mock-base-path/" + rel="noreferrer" + > + <span + className="euiButton__content" + > + <span + className="euiButton__text" + > + <FormattedMessage + defaultMessage="Continue as {username}" + id="xpack.security.overwrittenSession.continueAsUserText" + values={ + Object { + "username": "mock-user", + } + } + > + Continue as mock-user + </FormattedMessage> + </span> + </span> + </a> + </EuiButton> + </div> + </div> +</AuthenticationStatePage> +`; diff --git a/x-pack/legacy/plugins/security/public/views/logged_out/index.js b/x-pack/plugins/security/public/authentication/overwritten_session/index.ts similarity index 78% rename from x-pack/legacy/plugins/security/public/views/logged_out/index.js rename to x-pack/plugins/security/public/authentication/overwritten_session/index.ts index 3a2281bd6beee6..a9552a1157a198 100644 --- a/x-pack/legacy/plugins/security/public/views/logged_out/index.js +++ b/x-pack/plugins/security/public/authentication/overwritten_session/index.ts @@ -4,4 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -import './logged_out'; +export { overwrittenSessionApp } from './overwritten_session_app'; diff --git a/x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_app.test.ts b/x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_app.test.ts new file mode 100644 index 00000000000000..7b15d8c46f6ebd --- /dev/null +++ b/x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_app.test.ts @@ -0,0 +1,67 @@ +/* + * 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. + */ + +jest.mock('./overwritten_session_page'); + +import { AppMount, ScopedHistory } from 'src/core/public'; +import { overwrittenSessionApp } from './overwritten_session_app'; + +import { coreMock, scopedHistoryMock } from '../../../../../../src/core/public/mocks'; +import { securityMock } from '../../mocks'; + +describe('overwrittenSessionApp', () => { + it('properly registers application', () => { + const coreSetupMock = coreMock.createSetup(); + + overwrittenSessionApp.create({ + application: coreSetupMock.application, + getStartServices: coreSetupMock.getStartServices, + authc: securityMock.createSetup().authc, + }); + + expect(coreSetupMock.application.register).toHaveBeenCalledTimes(1); + + const [[appRegistration]] = coreSetupMock.application.register.mock.calls; + expect(appRegistration).toEqual({ + id: 'security_overwritten_session', + title: 'Overwritten Session', + chromeless: true, + appRoute: '/security/overwritten_session', + mount: expect.any(Function), + }); + }); + + it('properly sets breadcrumbs and renders application', async () => { + const coreSetupMock = coreMock.createSetup(); + const coreStartMock = coreMock.createStart(); + coreSetupMock.getStartServices.mockResolvedValue([coreStartMock, {}]); + + const authcMock = securityMock.createSetup().authc; + const containerMock = document.createElement('div'); + + overwrittenSessionApp.create({ + application: coreSetupMock.application, + getStartServices: coreSetupMock.getStartServices, + authc: authcMock, + }); + + const [[{ mount }]] = coreSetupMock.application.register.mock.calls; + await (mount as AppMount)({ + element: containerMock, + appBasePath: '', + onAppLeave: jest.fn(), + history: (scopedHistoryMock.create() as unknown) as ScopedHistory, + }); + + const mockRenderApp = jest.requireMock('./overwritten_session_page') + .renderOverwrittenSessionPage; + expect(mockRenderApp).toHaveBeenCalledTimes(1); + expect(mockRenderApp).toHaveBeenCalledWith(coreStartMock.i18n, containerMock, { + authc: authcMock, + basePath: coreStartMock.http.basePath, + }); + }); +}); diff --git a/x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_app.ts b/x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_app.ts new file mode 100644 index 00000000000000..1bbe388a635e2a --- /dev/null +++ b/x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_app.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 { i18n } from '@kbn/i18n'; +import { CoreSetup, AppMountParameters } from 'src/core/public'; +import { AuthenticationServiceSetup } from '../authentication_service'; + +interface CreateDeps { + application: CoreSetup['application']; + authc: AuthenticationServiceSetup; + getStartServices: CoreSetup['getStartServices']; +} + +export const overwrittenSessionApp = Object.freeze({ + id: 'security_overwritten_session', + create({ application, authc, getStartServices }: CreateDeps) { + application.register({ + id: this.id, + title: i18n.translate('xpack.security.overwrittenSessionAppTitle', { + defaultMessage: 'Overwritten Session', + }), + chromeless: true, + appRoute: '/security/overwritten_session', + async mount({ element }: AppMountParameters) { + const [[coreStart], { renderOverwrittenSessionPage }] = await Promise.all([ + getStartServices(), + import('./overwritten_session_page'), + ]); + return renderOverwrittenSessionPage(coreStart.i18n, element, { + authc, + basePath: coreStart.http.basePath, + }); + }, + }); + }, +}); diff --git a/x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_page.test.tsx b/x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_page.test.tsx new file mode 100644 index 00000000000000..7422319951a8a0 --- /dev/null +++ b/x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_page.test.tsx @@ -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 React from 'react'; +import { act } from '@testing-library/react'; +import { mountWithIntl, nextTick } from 'test_utils/enzyme_helpers'; +import { OverwrittenSessionPage } from './overwritten_session_page'; + +import { coreMock } from '../../../../../../src/core/public/mocks'; +import { authenticationMock } from '../index.mock'; +import { mockAuthenticatedUser } from '../../../common/model/authenticated_user.mock'; +import { AuthenticationStatePage } from '../components/authentication_state_page'; + +describe('OverwrittenSessionPage', () => { + it('renders as expected', async () => { + const basePathMock = coreMock.createStart({ basePath: '/mock-base-path' }).http.basePath; + const authenticationSetupMock = authenticationMock.createSetup(); + authenticationSetupMock.getCurrentUser.mockResolvedValue( + mockAuthenticatedUser({ username: 'mock-user' }) + ); + + const wrapper = mountWithIntl( + <OverwrittenSessionPage basePath={basePathMock} authc={authenticationSetupMock} /> + ); + + // Shouldn't render anything if username isn't yet available. + expect(wrapper.isEmptyRender()).toBe(true); + + await act(async () => { + await nextTick(); + wrapper.update(); + }); + + expect(wrapper.find(AuthenticationStatePage)).toMatchSnapshot(); + }); +}); diff --git a/x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_page.tsx b/x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_page.tsx new file mode 100644 index 00000000000000..1093957761d1c6 --- /dev/null +++ b/x-pack/plugins/security/public/authentication/overwritten_session/overwritten_session_page.tsx @@ -0,0 +1,63 @@ +/* + * 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, { useEffect, useState } from 'react'; +import ReactDOM from 'react-dom'; +import { EuiButton } from '@elastic/eui'; +import { FormattedMessage } from '@kbn/i18n/react'; +import { CoreStart, IBasePath } from 'src/core/public'; +import { AuthenticationServiceSetup } from '../authentication_service'; +import { AuthenticationStatePage } from '../components'; + +interface Props { + basePath: IBasePath; + authc: AuthenticationServiceSetup; +} + +export function OverwrittenSessionPage({ authc, basePath }: Props) { + const [username, setUsername] = useState<string | null>(null); + useEffect(() => { + authc.getCurrentUser().then(user => setUsername(user.username)); + }, [authc]); + + if (username == null) { + return null; + } + + return ( + <AuthenticationStatePage + title={ + <FormattedMessage + id="xpack.security.overwrittenSession.title" + defaultMessage="You previously logged in as a different user." + /> + } + > + <EuiButton href={basePath.prepend('/')}> + <FormattedMessage + id="xpack.security.overwrittenSession.continueAsUserText" + defaultMessage="Continue as {username}" + values={{ username }} + /> + </EuiButton> + </AuthenticationStatePage> + ); +} + +export function renderOverwrittenSessionPage( + i18nStart: CoreStart['i18n'], + element: Element, + props: Props +) { + ReactDOM.render( + <i18nStart.Context> + <OverwrittenSessionPage {...props} /> + </i18nStart.Context>, + element + ); + + return () => ReactDOM.unmountComponentAtNode(element); +} diff --git a/x-pack/legacy/plugins/security/public/hacks/register_account_management_app.ts b/x-pack/plugins/security/public/config.ts similarity index 78% rename from x-pack/legacy/plugins/security/public/hacks/register_account_management_app.ts rename to x-pack/plugins/security/public/config.ts index 4fdc2358246b98..56bd02976c1b4f 100644 --- a/x-pack/legacy/plugins/security/public/hacks/register_account_management_app.ts +++ b/x-pack/plugins/security/public/config.ts @@ -4,4 +4,6 @@ * you may not use this file except in compliance with the Elastic License. */ -import '../views/account/account'; +export interface ConfigType { + loginAssistanceMessage: string; +} diff --git a/x-pack/plugins/security/public/index.scss b/x-pack/plugins/security/public/index.scss index 1bdb8cc178fdf8..999639ba22eb78 100644 --- a/x-pack/plugins/security/public/index.scss +++ b/x-pack/plugins/security/public/index.scss @@ -1,4 +1,7 @@ $secFormWidth: 460px; +// Authentication styles +@import './authentication/index'; + // Management styles @import './management/index'; diff --git a/x-pack/plugins/security/public/index.ts b/x-pack/plugins/security/public/index.ts index 1c525dc6b9187e..fdb8b544d61d30 100644 --- a/x-pack/plugins/security/public/index.ts +++ b/x-pack/plugins/security/public/index.ts @@ -5,7 +5,7 @@ */ import './index.scss'; -import { PluginInitializer } from 'src/core/public'; +import { PluginInitializer, PluginInitializerContext } from 'src/core/public'; import { SecurityPlugin, SecurityPluginSetup, SecurityPluginStart } from './plugin'; export { SecurityPluginSetup, SecurityPluginStart }; @@ -13,5 +13,6 @@ export { SessionInfo } from './types'; export { AuthenticatedUser } from '../common/model'; export { SecurityLicense, SecurityLicenseFeatures } from '../common/licensing'; -export const plugin: PluginInitializer<SecurityPluginSetup, SecurityPluginStart> = () => - new SecurityPlugin(); +export const plugin: PluginInitializer<SecurityPluginSetup, SecurityPluginStart> = ( + initializerContext: PluginInitializerContext +) => new SecurityPlugin(initializerContext); diff --git a/x-pack/plugins/security/public/nav_control/nav_control_service.test.ts b/x-pack/plugins/security/public/nav_control/nav_control_service.test.ts index cd66868edd700e..66731cf19006de 100644 --- a/x-pack/plugins/security/public/nav_control/nav_control_service.test.ts +++ b/x-pack/plugins/security/public/nav_control/nav_control_service.test.ts @@ -38,6 +38,7 @@ describe('SecurityNavControlService', () => { navControlService.setup({ securityLicense: new SecurityLicenseService().setup({ license$ }).license, authc: mockSecuritySetup.authc, + logoutUrl: '/some/logout/url', }); const coreStart = coreMock.createStart(); @@ -100,6 +101,7 @@ describe('SecurityNavControlService', () => { navControlService.setup({ securityLicense: new SecurityLicenseService().setup({ license$ }).license, authc: securityMock.createSetup().authc, + logoutUrl: '/some/logout/url', }); const coreStart = coreMock.createStart(); @@ -119,6 +121,7 @@ describe('SecurityNavControlService', () => { navControlService.setup({ securityLicense: new SecurityLicenseService().setup({ license$ }).license, authc: securityMock.createSetup().authc, + logoutUrl: '/some/logout/url', }); const coreStart = coreMock.createStart(); @@ -135,6 +138,7 @@ describe('SecurityNavControlService', () => { navControlService.setup({ securityLicense: new SecurityLicenseService().setup({ license$ }).license, authc: securityMock.createSetup().authc, + logoutUrl: '/some/logout/url', }); const coreStart = coreMock.createStart(); @@ -156,6 +160,7 @@ describe('SecurityNavControlService', () => { navControlService.setup({ securityLicense: new SecurityLicenseService().setup({ license$ }).license, authc: securityMock.createSetup().authc, + logoutUrl: '/some/logout/url', }); const coreStart = coreMock.createStart(); diff --git a/x-pack/plugins/security/public/nav_control/nav_control_service.tsx b/x-pack/plugins/security/public/nav_control/nav_control_service.tsx index 813304148ec77c..aa3ec2e47469d0 100644 --- a/x-pack/plugins/security/public/nav_control/nav_control_service.tsx +++ b/x-pack/plugins/security/public/nav_control/nav_control_service.tsx @@ -15,6 +15,7 @@ import { AuthenticationServiceSetup } from '../authentication'; interface SetupDeps { securityLicense: SecurityLicense; authc: AuthenticationServiceSetup; + logoutUrl: string; } interface StartDeps { @@ -24,14 +25,16 @@ interface StartDeps { export class SecurityNavControlService { private securityLicense!: SecurityLicense; private authc!: AuthenticationServiceSetup; + private logoutUrl!: string; private navControlRegistered!: boolean; private securityFeaturesSubscription?: Subscription; - public setup({ securityLicense, authc }: SetupDeps) { + public setup({ securityLicense, authc, logoutUrl }: SetupDeps) { this.securityLicense = securityLicense; this.authc = authc; + this.logoutUrl = logoutUrl; } public start({ core }: StartDeps) { @@ -65,12 +68,10 @@ export class SecurityNavControlService { mount: (el: HTMLElement) => { const I18nContext = core.i18n.Context; - const logoutUrl = core.injectedMetadata.getInjectedVar('logoutUrl') as string; - const props = { user: currentUserPromise, - editProfileUrl: core.http.basePath.prepend('/app/kibana#/account'), - logoutUrl, + editProfileUrl: core.http.basePath.prepend('/security/account'), + logoutUrl: this.logoutUrl, }; ReactDOM.render( <I18nContext> diff --git a/x-pack/plugins/security/public/plugin.test.tsx b/x-pack/plugins/security/public/plugin.test.tsx new file mode 100644 index 00000000000000..3d0ef3b2cabc7c --- /dev/null +++ b/x-pack/plugins/security/public/plugin.test.tsx @@ -0,0 +1,147 @@ +/* + * 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 BroadcastChannel from 'broadcast-channel'; +import { CoreSetup } from 'src/core/public'; +import { DataPublicPluginStart } from '../../../../src/plugins/data/public'; +import { SessionTimeout } from './session'; +import { PluginStartDependencies, SecurityPlugin } from './plugin'; + +import { coreMock } from '../../../../src/core/public/mocks'; +import { managementPluginMock } from '../../../../src/plugins/management/public/mocks'; +import { licensingMock } from '../../licensing/public/mocks'; +import { ManagementService } from './management'; + +describe('Security Plugin', () => { + beforeAll(() => { + BroadcastChannel.enforceOptions({ type: 'simulate' }); + }); + afterAll(() => { + BroadcastChannel.enforceOptions(null); + }); + + describe('#setup', () => { + it('should be able to setup if optional plugins are not available', () => { + const plugin = new SecurityPlugin(coreMock.createPluginInitializerContext()); + expect( + plugin.setup( + coreMock.createSetup({ basePath: '/some-base-path' }) as CoreSetup< + PluginStartDependencies + >, + { licensing: licensingMock.createSetup() } + ) + ).toEqual({ + __legacyCompat: { logoutUrl: '/some-base-path/logout', tenant: '/some-base-path' }, + authc: { getCurrentUser: expect.any(Function) }, + license: { + isEnabled: expect.any(Function), + getFeatures: expect.any(Function), + features$: expect.any(Observable), + }, + sessionTimeout: expect.any(SessionTimeout), + }); + }); + + it('setups Management Service if `management` plugin is available', () => { + const coreSetupMock = coreMock.createSetup({ basePath: '/some-base-path' }); + const setupManagementServiceMock = jest + .spyOn(ManagementService.prototype, 'setup') + .mockImplementation(() => {}); + const managementSetupMock = managementPluginMock.createSetupContract(); + + const plugin = new SecurityPlugin(coreMock.createPluginInitializerContext()); + + plugin.setup(coreSetupMock as CoreSetup<PluginStartDependencies>, { + licensing: licensingMock.createSetup(), + management: managementSetupMock, + }); + + expect(setupManagementServiceMock).toHaveBeenCalledTimes(1); + expect(setupManagementServiceMock).toHaveBeenCalledWith({ + authc: { getCurrentUser: expect.any(Function) }, + license: { + isEnabled: expect.any(Function), + getFeatures: expect.any(Function), + features$: expect.any(Observable), + }, + management: managementSetupMock, + fatalErrors: coreSetupMock.fatalErrors, + getStartServices: coreSetupMock.getStartServices, + }); + }); + }); + + describe('#start', () => { + it('should be able to setup if optional plugins are not available', () => { + const plugin = new SecurityPlugin(coreMock.createPluginInitializerContext()); + plugin.setup( + coreMock.createSetup({ basePath: '/some-base-path' }) as CoreSetup<PluginStartDependencies>, + { licensing: licensingMock.createSetup() } + ); + + expect( + plugin.start(coreMock.createStart({ basePath: '/some-base-path' }), { + data: {} as DataPublicPluginStart, + }) + ).toBeUndefined(); + }); + + it('starts Management Service if `management` plugin is available', () => { + jest.spyOn(ManagementService.prototype, 'setup').mockImplementation(() => {}); + const startManagementServiceMock = jest + .spyOn(ManagementService.prototype, 'start') + .mockImplementation(() => {}); + const managementSetupMock = managementPluginMock.createSetupContract(); + const managementStartMock = managementPluginMock.createStartContract(); + + const plugin = new SecurityPlugin(coreMock.createPluginInitializerContext()); + + plugin.setup( + coreMock.createSetup({ basePath: '/some-base-path' }) as CoreSetup<PluginStartDependencies>, + { + licensing: licensingMock.createSetup(), + management: managementSetupMock, + } + ); + + plugin.start(coreMock.createStart({ basePath: '/some-base-path' }), { + data: {} as DataPublicPluginStart, + management: managementStartMock, + }); + + expect(startManagementServiceMock).toHaveBeenCalledTimes(1); + expect(startManagementServiceMock).toHaveBeenCalledWith({ management: managementStartMock }); + }); + }); + + describe('#stop', () => { + it('does not fail if called before `start`.', () => { + const plugin = new SecurityPlugin(coreMock.createPluginInitializerContext()); + plugin.setup( + coreMock.createSetup({ basePath: '/some-base-path' }) as CoreSetup<PluginStartDependencies>, + { licensing: licensingMock.createSetup() } + ); + + expect(() => plugin.stop()).not.toThrow(); + }); + + it('does not fail if called during normal plugin life cycle.', () => { + const plugin = new SecurityPlugin(coreMock.createPluginInitializerContext()); + + plugin.setup( + coreMock.createSetup({ basePath: '/some-base-path' }) as CoreSetup<PluginStartDependencies>, + { licensing: licensingMock.createSetup() } + ); + + plugin.start(coreMock.createStart({ basePath: '/some-base-path' }), { + data: {} as DataPublicPluginStart, + }); + + expect(() => plugin.stop()).not.toThrow(); + }); + }); +}); diff --git a/x-pack/plugins/security/public/plugin.tsx b/x-pack/plugins/security/public/plugin.tsx index 8e5c4f87e36471..dcd90b1738f10c 100644 --- a/x-pack/plugins/security/public/plugin.tsx +++ b/x-pack/plugins/security/public/plugin.tsx @@ -4,9 +4,13 @@ * you may not use this file except in compliance with the Elastic License. */ -import { Plugin, CoreSetup, CoreStart } from 'src/core/public'; import { i18n } from '@kbn/i18n'; -import React from 'react'; +import { + CoreSetup, + CoreStart, + Plugin, + PluginInitializerContext, +} from '../../../../src/core/public'; import { DataPublicPluginStart } from '../../../../src/plugins/data/public'; import { FeatureCatalogueCategory, @@ -15,17 +19,18 @@ import { import { LicensingPluginSetup } from '../../licensing/public'; import { ManagementSetup, ManagementStart } from '../../../../src/plugins/management/public'; import { + ISessionTimeout, SessionExpired, SessionTimeout, - ISessionTimeout, SessionTimeoutHttpInterceptor, UnauthorizedResponseHttpInterceptor, } from './session'; import { SecurityLicenseService } from '../common/licensing'; import { SecurityNavControlService } from './nav_control'; -import { AccountManagementPage } from './account_management'; import { AuthenticationService, AuthenticationServiceSetup } from './authentication'; -import { ManagementService, UserAPIClient } from './management'; +import { ConfigType } from './config'; +import { ManagementService } from './management'; +import { accountManagementApp } from './account_management'; export interface PluginSetupDependencies { licensing: LicensingPluginSetup; @@ -47,23 +52,27 @@ export class SecurityPlugin PluginStartDependencies > { private sessionTimeout!: ISessionTimeout; + private readonly authenticationService = new AuthenticationService(); private readonly navControlService = new SecurityNavControlService(); private readonly securityLicenseService = new SecurityLicenseService(); private readonly managementService = new ManagementService(); private authc!: AuthenticationServiceSetup; + private readonly config: ConfigType; + + constructor(private readonly initializerContext: PluginInitializerContext) { + this.config = this.initializerContext.config.get<ConfigType>(); + } public setup( core: CoreSetup<PluginStartDependencies>, { home, licensing, management }: PluginSetupDependencies ) { - const { http, notifications, injectedMetadata } = core; + const { http, notifications } = core; const { anonymousPaths } = http; - anonymousPaths.register('/login'); - anonymousPaths.register('/logout'); - anonymousPaths.register('/logged_out'); - const tenant = injectedMetadata.getInjectedVar('session.tenant', '') as string; - const logoutUrl = injectedMetadata.getInjectedVar('logoutUrl') as string; + const logoutUrl = `${core.http.basePath.serverBasePath}/logout`; + const tenant = core.http.basePath.serverBasePath; + const sessionExpired = new SessionExpired(logoutUrl, tenant); http.intercept(new UnauthorizedResponseHttpInterceptor(sessionExpired, anonymousPaths)); this.sessionTimeout = new SessionTimeout(notifications, sessionExpired, http, tenant); @@ -71,11 +80,23 @@ export class SecurityPlugin const { license } = this.securityLicenseService.setup({ license$: licensing.license$ }); - this.authc = new AuthenticationService().setup({ http: core.http }); + this.authc = this.authenticationService.setup({ + application: core.application, + config: this.config, + getStartServices: core.getStartServices, + http: core.http, + }); this.navControlService.setup({ securityLicense: license, authc: this.authc, + logoutUrl, + }); + + accountManagementApp.create({ + authc: this.authc, + application: core.application, + getStartServices: core.getStartServices, }); if (management) { @@ -109,6 +130,7 @@ export class SecurityPlugin authc: this.authc, sessionTimeout: this.sessionTimeout, license, + __legacyCompat: { logoutUrl, tenant }, }; } @@ -119,22 +141,6 @@ export class SecurityPlugin if (management) { this.managementService.start({ management }); } - - return { - __legacyCompat: { - account_management: { - AccountManagementPage: () => ( - <core.i18n.Context> - <AccountManagementPage - authc={this.authc} - notifications={core.notifications} - userAPIClient={new UserAPIClient(core.http)} - /> - </core.i18n.Context> - ), - }, - }, - }; } public stop() { diff --git a/x-pack/plugins/security/server/authentication/authenticator.ts b/x-pack/plugins/security/server/authentication/authenticator.ts index 4954e1b24216cb..e2e2d12917394a 100644 --- a/x-pack/plugins/security/server/authentication/authenticator.ts +++ b/x-pack/plugins/security/server/authentication/authenticator.ts @@ -192,7 +192,6 @@ export class Authenticator { client: this.options.clusterClient, logger: this.options.loggers.get('tokens'), }), - isProviderEnabled: this.isProviderEnabled.bind(this), }; const authProviders = this.options.config.authc.providers; diff --git a/x-pack/plugins/security/server/authentication/providers/kerberos.test.ts b/x-pack/plugins/security/server/authentication/providers/kerberos.test.ts index 51fb961482e83d..955805296e2bd9 100644 --- a/x-pack/plugins/security/server/authentication/providers/kerberos.test.ts +++ b/x-pack/plugins/security/server/authentication/providers/kerberos.test.ts @@ -494,7 +494,7 @@ describe('KerberosAuthenticationProvider', () => { mockOptions.tokens.invalidate.mockResolvedValue(undefined); await expect(provider.logout(request, tokenPair)).resolves.toEqual( - DeauthenticationResult.redirectTo('/mock-server-basepath/logged_out') + DeauthenticationResult.redirectTo('/mock-server-basepath/security/logged_out') ); expect(mockOptions.tokens.invalidate).toHaveBeenCalledTimes(1); diff --git a/x-pack/plugins/security/server/authentication/providers/kerberos.ts b/x-pack/plugins/security/server/authentication/providers/kerberos.ts index b6474a5e1d471d..632a07ca2b21a5 100644 --- a/x-pack/plugins/security/server/authentication/providers/kerberos.ts +++ b/x-pack/plugins/security/server/authentication/providers/kerberos.ts @@ -91,7 +91,9 @@ export class KerberosAuthenticationProvider extends BaseAuthenticationProvider { return DeauthenticationResult.failed(err); } - return DeauthenticationResult.redirectTo(`${this.options.basePath.serverBasePath}/logged_out`); + return DeauthenticationResult.redirectTo( + `${this.options.basePath.serverBasePath}/security/logged_out` + ); } /** diff --git a/x-pack/plugins/security/server/authentication/providers/oidc.test.ts b/x-pack/plugins/security/server/authentication/providers/oidc.test.ts index 51a25825bf985a..6a4ba1ccb41e22 100644 --- a/x-pack/plugins/security/server/authentication/providers/oidc.test.ts +++ b/x-pack/plugins/security/server/authentication/providers/oidc.test.ts @@ -575,7 +575,7 @@ describe('OIDCAuthenticationProvider', () => { mockOptions.client.callAsInternalUser.mockResolvedValue({ redirect: null }); await expect(provider.logout(request, { accessToken, refreshToken })).resolves.toEqual( - DeauthenticationResult.redirectTo('/mock-server-basepath/logged_out') + DeauthenticationResult.redirectTo('/mock-server-basepath/security/logged_out') ); expect(mockOptions.client.callAsInternalUser).toHaveBeenCalledTimes(1); diff --git a/x-pack/plugins/security/server/authentication/providers/oidc.ts b/x-pack/plugins/security/server/authentication/providers/oidc.ts index c6b504e722adf4..d52466826c2beb 100644 --- a/x-pack/plugins/security/server/authentication/providers/oidc.ts +++ b/x-pack/plugins/security/server/authentication/providers/oidc.ts @@ -395,7 +395,7 @@ export class OIDCAuthenticationProvider extends BaseAuthenticationProvider { } return DeauthenticationResult.redirectTo( - `${this.options.basePath.serverBasePath}/logged_out` + `${this.options.basePath.serverBasePath}/security/logged_out` ); } catch (err) { this.logger.debug(`Failed to deauthenticate user: ${err.message}`); diff --git a/x-pack/plugins/security/server/authentication/providers/pki.test.ts b/x-pack/plugins/security/server/authentication/providers/pki.test.ts index efc286c6c895f7..044416032a4c3d 100644 --- a/x-pack/plugins/security/server/authentication/providers/pki.test.ts +++ b/x-pack/plugins/security/server/authentication/providers/pki.test.ts @@ -511,7 +511,7 @@ describe('PKIAuthenticationProvider', () => { mockOptions.tokens.invalidate.mockResolvedValue(undefined); await expect(provider.logout(request, state)).resolves.toEqual( - DeauthenticationResult.redirectTo('/mock-server-basepath/logged_out') + DeauthenticationResult.redirectTo('/mock-server-basepath/security/logged_out') ); expect(mockOptions.tokens.invalidate).toHaveBeenCalledTimes(1); diff --git a/x-pack/plugins/security/server/authentication/providers/pki.ts b/x-pack/plugins/security/server/authentication/providers/pki.ts index 854f92a50fa9d5..252ab8cc67144c 100644 --- a/x-pack/plugins/security/server/authentication/providers/pki.ts +++ b/x-pack/plugins/security/server/authentication/providers/pki.ts @@ -98,7 +98,9 @@ export class PKIAuthenticationProvider extends BaseAuthenticationProvider { return DeauthenticationResult.failed(err); } - return DeauthenticationResult.redirectTo(`${this.options.basePath.serverBasePath}/logged_out`); + return DeauthenticationResult.redirectTo( + `${this.options.basePath.serverBasePath}/security/logged_out` + ); } /** diff --git a/x-pack/plugins/security/server/authentication/providers/saml.test.ts b/x-pack/plugins/security/server/authentication/providers/saml.test.ts index d97a6c0838b86a..e00d3b89fb0bfd 100644 --- a/x-pack/plugins/security/server/authentication/providers/saml.test.ts +++ b/x-pack/plugins/security/server/authentication/providers/saml.test.ts @@ -365,7 +365,7 @@ describe('SAMLAuthenticationProvider', () => { state ) ).resolves.toEqual( - AuthenticationResult.redirectTo('/base-path/overwritten_session', { + AuthenticationResult.redirectTo('/mock-server-basepath/security/overwritten_session', { state: { username: 'new-user', accessToken: 'new-valid-token', @@ -959,7 +959,7 @@ describe('SAMLAuthenticationProvider', () => { }); }); - it('redirects to /logged_out if `redirect` field in SAML logout response is null.', async () => { + it('redirects to /security/logged_out if `redirect` field in SAML logout response is null.', async () => { const request = httpServerMock.createKibanaRequest(); const accessToken = 'x-saml-token'; const refreshToken = 'x-saml-refresh-token'; @@ -968,7 +968,9 @@ describe('SAMLAuthenticationProvider', () => { await expect( provider.logout(request, { username: 'user', accessToken, refreshToken }) - ).resolves.toEqual(DeauthenticationResult.redirectTo('/mock-server-basepath/logged_out')); + ).resolves.toEqual( + DeauthenticationResult.redirectTo('/mock-server-basepath/security/logged_out') + ); expect(mockOptions.client.callAsInternalUser).toHaveBeenCalledTimes(1); expect(mockOptions.client.callAsInternalUser).toHaveBeenCalledWith('shield.samlLogout', { @@ -976,7 +978,7 @@ describe('SAMLAuthenticationProvider', () => { }); }); - it('redirects to /logged_out if `redirect` field in SAML logout response is not defined.', async () => { + it('redirects to /security/logged_out if `redirect` field in SAML logout response is not defined.', async () => { const request = httpServerMock.createKibanaRequest(); const accessToken = 'x-saml-token'; const refreshToken = 'x-saml-refresh-token'; @@ -985,7 +987,9 @@ describe('SAMLAuthenticationProvider', () => { await expect( provider.logout(request, { username: 'user', accessToken, refreshToken }) - ).resolves.toEqual(DeauthenticationResult.redirectTo('/mock-server-basepath/logged_out')); + ).resolves.toEqual( + DeauthenticationResult.redirectTo('/mock-server-basepath/security/logged_out') + ); expect(mockOptions.client.callAsInternalUser).toHaveBeenCalledTimes(1); expect(mockOptions.client.callAsInternalUser).toHaveBeenCalledWith('shield.samlLogout', { @@ -1004,7 +1008,9 @@ describe('SAMLAuthenticationProvider', () => { await expect( provider.logout(request, { username: 'user', accessToken, refreshToken }) - ).resolves.toEqual(DeauthenticationResult.redirectTo('/mock-server-basepath/logged_out')); + ).resolves.toEqual( + DeauthenticationResult.redirectTo('/mock-server-basepath/security/logged_out') + ); expect(mockOptions.client.callAsInternalUser).toHaveBeenCalledTimes(1); expect(mockOptions.client.callAsInternalUser).toHaveBeenCalledWith('shield.samlLogout', { @@ -1023,7 +1029,9 @@ describe('SAMLAuthenticationProvider', () => { accessToken: 'x-saml-token', refreshToken: 'x-saml-refresh-token', }) - ).resolves.toEqual(DeauthenticationResult.redirectTo('/mock-server-basepath/logged_out')); + ).resolves.toEqual( + DeauthenticationResult.redirectTo('/mock-server-basepath/security/logged_out') + ); expect(mockOptions.client.callAsInternalUser).toHaveBeenCalledTimes(1); expect(mockOptions.client.callAsInternalUser).toHaveBeenCalledWith('shield.samlInvalidate', { @@ -1031,13 +1039,13 @@ describe('SAMLAuthenticationProvider', () => { }); }); - it('redirects to /logged_out if `redirect` field in SAML invalidate response is null.', async () => { + it('redirects to /security/logged_out if `redirect` field in SAML invalidate response is null.', async () => { const request = httpServerMock.createKibanaRequest({ query: { SAMLRequest: 'xxx yyy' } }); mockOptions.client.callAsInternalUser.mockResolvedValue({ redirect: null }); await expect(provider.logout(request)).resolves.toEqual( - DeauthenticationResult.redirectTo('/mock-server-basepath/logged_out') + DeauthenticationResult.redirectTo('/mock-server-basepath/security/logged_out') ); expect(mockOptions.client.callAsInternalUser).toHaveBeenCalledTimes(1); @@ -1046,13 +1054,13 @@ describe('SAMLAuthenticationProvider', () => { }); }); - it('redirects to /logged_out if `redirect` field in SAML invalidate response is not defined.', async () => { + it('redirects to /security/logged_out if `redirect` field in SAML invalidate response is not defined.', async () => { const request = httpServerMock.createKibanaRequest({ query: { SAMLRequest: 'xxx yyy' } }); mockOptions.client.callAsInternalUser.mockResolvedValue({ redirect: undefined }); await expect(provider.logout(request)).resolves.toEqual( - DeauthenticationResult.redirectTo('/mock-server-basepath/logged_out') + DeauthenticationResult.redirectTo('/mock-server-basepath/security/logged_out') ); expect(mockOptions.client.callAsInternalUser).toHaveBeenCalledTimes(1); diff --git a/x-pack/plugins/security/server/authentication/providers/saml.ts b/x-pack/plugins/security/server/authentication/providers/saml.ts index 1ac59d66a22359..1152ee50486990 100644 --- a/x-pack/plugins/security/server/authentication/providers/saml.ts +++ b/x-pack/plugins/security/server/authentication/providers/saml.ts @@ -231,7 +231,7 @@ export class SAMLAuthenticationProvider extends BaseAuthenticationProvider { } return DeauthenticationResult.redirectTo( - `${this.options.basePath.serverBasePath}/logged_out` + `${this.options.basePath.serverBasePath}/security/logged_out` ); } catch (err) { this.logger.debug(`Failed to deauthenticate user: ${err.message}`); @@ -366,7 +366,7 @@ export class SAMLAuthenticationProvider extends BaseAuthenticationProvider { 'Login initiated by Identity Provider is for a different user than currently authenticated.' ); return AuthenticationResult.redirectTo( - `${this.options.basePath.get(request)}/overwritten_session`, + `${this.options.basePath.serverBasePath}/security/overwritten_session`, { state: newState } ); } diff --git a/x-pack/plugins/security/server/config.test.ts b/x-pack/plugins/security/server/config.test.ts index 64c695670fa19f..9f7f2736766ed0 100644 --- a/x-pack/plugins/security/server/config.test.ts +++ b/x-pack/plugins/security/server/config.test.ts @@ -14,6 +14,9 @@ describe('config schema', () => { it('generates proper defaults', () => { expect(ConfigSchema.validate({})).toMatchInlineSnapshot(` Object { + "audit": Object { + "enabled": false, + }, "authc": Object { "http": Object { "autoSchemesEnabled": true, @@ -27,6 +30,7 @@ describe('config schema', () => { ], }, "cookieName": "sid", + "enabled": true, "encryptionKey": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "loginAssistanceMessage": "", "secureCookies": false, @@ -39,6 +43,9 @@ describe('config schema', () => { expect(ConfigSchema.validate({}, { dist: false })).toMatchInlineSnapshot(` Object { + "audit": Object { + "enabled": false, + }, "authc": Object { "http": Object { "autoSchemesEnabled": true, @@ -52,6 +59,7 @@ describe('config schema', () => { ], }, "cookieName": "sid", + "enabled": true, "encryptionKey": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "loginAssistanceMessage": "", "secureCookies": false, @@ -64,6 +72,9 @@ describe('config schema', () => { expect(ConfigSchema.validate({}, { dist: true })).toMatchInlineSnapshot(` Object { + "audit": Object { + "enabled": false, + }, "authc": Object { "http": Object { "autoSchemesEnabled": true, @@ -77,6 +88,7 @@ describe('config schema', () => { ], }, "cookieName": "sid", + "enabled": true, "loginAssistanceMessage": "", "secureCookies": false, "session": Object { diff --git a/x-pack/plugins/security/server/config.ts b/x-pack/plugins/security/server/config.ts index 8663a6e61c2030..2345249e94bc8f 100644 --- a/x-pack/plugins/security/server/config.ts +++ b/x-pack/plugins/security/server/config.ts @@ -24,41 +24,41 @@ const providerOptionsSchema = (providerType: string, optionsSchema: Type<any>) = schema.never() ); -export const ConfigSchema = schema.object( - { - loginAssistanceMessage: schema.string({ defaultValue: '' }), - cookieName: schema.string({ defaultValue: 'sid' }), - encryptionKey: schema.conditional( - schema.contextRef('dist'), - true, - schema.maybe(schema.string({ minLength: 32 })), - schema.string({ minLength: 32, defaultValue: 'a'.repeat(32) }) +export const ConfigSchema = schema.object({ + enabled: schema.boolean({ defaultValue: true }), + loginAssistanceMessage: schema.string({ defaultValue: '' }), + cookieName: schema.string({ defaultValue: 'sid' }), + encryptionKey: schema.conditional( + schema.contextRef('dist'), + true, + schema.maybe(schema.string({ minLength: 32 })), + schema.string({ minLength: 32, defaultValue: 'a'.repeat(32) }) + ), + session: schema.object({ + idleTimeout: schema.nullable(schema.duration()), + lifespan: schema.nullable(schema.duration()), + }), + secureCookies: schema.boolean({ defaultValue: false }), + authc: schema.object({ + providers: schema.arrayOf(schema.string(), { defaultValue: ['basic'], minSize: 1 }), + oidc: providerOptionsSchema('oidc', schema.object({ realm: schema.string() })), + saml: providerOptionsSchema( + 'saml', + schema.object({ + realm: schema.string(), + maxRedirectURLSize: schema.byteSize({ defaultValue: '2kb' }), + }) ), - session: schema.object({ - idleTimeout: schema.nullable(schema.duration()), - lifespan: schema.nullable(schema.duration()), + http: schema.object({ + enabled: schema.boolean({ defaultValue: true }), + autoSchemesEnabled: schema.boolean({ defaultValue: true }), + schemes: schema.arrayOf(schema.string(), { defaultValue: ['apikey'] }), }), - secureCookies: schema.boolean({ defaultValue: false }), - authc: schema.object({ - providers: schema.arrayOf(schema.string(), { defaultValue: ['basic'], minSize: 1 }), - oidc: providerOptionsSchema('oidc', schema.object({ realm: schema.string() })), - saml: providerOptionsSchema( - 'saml', - schema.object({ - realm: schema.string(), - maxRedirectURLSize: schema.byteSize({ defaultValue: '2kb' }), - }) - ), - http: schema.object({ - enabled: schema.boolean({ defaultValue: true }), - autoSchemesEnabled: schema.boolean({ defaultValue: true }), - schemes: schema.arrayOf(schema.string(), { defaultValue: ['apikey'] }), - }), - }), - }, - // This option should be removed as soon as we entirely migrate config from legacy Security plugin. - { allowUnknowns: true } -); + }), + audit: schema.object({ + enabled: schema.boolean({ defaultValue: false }), + }), +}); export function createConfig$(context: PluginInitializerContext, isTLSEnabled: boolean) { return context.config.create<TypeOf<typeof ConfigSchema>>().pipe( diff --git a/x-pack/plugins/security/server/index.ts b/x-pack/plugins/security/server/index.ts index e1167af0be7f05..0b17f0554fac86 100644 --- a/x-pack/plugins/security/server/index.ts +++ b/x-pack/plugins/security/server/index.ts @@ -44,6 +44,9 @@ export const config: PluginConfigDescriptor<TypeOf<typeof ConfigSchema>> = { return settings; }, ], + exposeToBrowser: { + loginAssistanceMessage: true, + }, }; export const plugin: PluginInitializer< RecursiveReadonly<SecurityPluginSetup>, diff --git a/x-pack/plugins/security/server/plugin.test.ts b/x-pack/plugins/security/server/plugin.test.ts index 6f5c79e873e868..a1ef352056d6aa 100644 --- a/x-pack/plugins/security/server/plugin.test.ts +++ b/x-pack/plugins/security/server/plugin.test.ts @@ -50,8 +50,6 @@ describe('Security Plugin', () => { Object { "__legacyCompat": Object { "config": Object { - "cookieName": "sid", - "loginAssistanceMessage": undefined, "secureCookies": true, }, "license": Object { diff --git a/x-pack/plugins/security/server/plugin.ts b/x-pack/plugins/security/server/plugin.ts index 328f2917fd550a..13300ee55eba05 100644 --- a/x-pack/plugins/security/server/plugin.ts +++ b/x-pack/plugins/security/server/plugin.ts @@ -65,11 +65,7 @@ export interface SecurityPluginSetup { registerLegacyAPI: (legacyAPI: LegacyAPI) => void; registerPrivilegesWithCluster: () => void; license: SecurityLicense; - config: RecursiveReadonly<{ - secureCookies: boolean; - cookieName: string; - loginAssistanceMessage: string; - }>; + config: RecursiveReadonly<{ secureCookies: boolean }>; }; } @@ -161,6 +157,7 @@ export class Plugin { authc, authz, csp: core.http.csp, + license, }); return deepFreeze<SecurityPluginSetup>({ @@ -187,13 +184,10 @@ export class Plugin { license, - // We should stop exposing this config as soon as only new platform plugin consumes it. The only - // exception may be `sessionTimeout` as other parts of the app may want to know it. - config: { - loginAssistanceMessage: config.loginAssistanceMessage, - secureCookies: config.secureCookies, - cookieName: config.cookieName, - }, + // We should stop exposing this config as soon as only new platform plugin consumes it. + // This is only currently required because we use legacy code to inject this as metadata + // for consumption by public code in the new platform. + config: { secureCookies: config.secureCookies }, }, }); } diff --git a/x-pack/plugins/security/server/routes/authentication/basic.test.ts b/x-pack/plugins/security/server/routes/authentication/basic.test.ts index cc1c94d799be61..694d0fca97a2c2 100644 --- a/x-pack/plugins/security/server/routes/authentication/basic.test.ts +++ b/x-pack/plugins/security/server/routes/authentication/basic.test.ts @@ -14,27 +14,21 @@ import { } from '../../../../../../src/core/server'; import { LICENSE_CHECK_STATE } from '../../../../licensing/server'; import { Authentication, AuthenticationResult } from '../../authentication'; -import { ConfigType } from '../../config'; import { defineBasicRoutes } from './basic'; -import { - elasticsearchServiceMock, - httpServerMock, - httpServiceMock, - loggingServiceMock, -} from '../../../../../../src/core/server/mocks'; +import { httpServerMock } from '../../../../../../src/core/server/mocks'; import { mockAuthenticatedUser } from '../../../common/model/authenticated_user.mock'; -import { authenticationMock } from '../../authentication/index.mock'; -import { authorizationMock } from '../../authorization/index.mock'; +import { routeDefinitionParamsMock } from '../index.mock'; describe('Basic authentication routes', () => { let router: jest.Mocked<IRouter>; let authc: jest.Mocked<Authentication>; let mockContext: RequestHandlerContext; beforeEach(() => { - router = httpServiceMock.createRouter(); + const routeParamsMock = routeDefinitionParamsMock.create(); + router = routeParamsMock.router; - authc = authenticationMock.create(); + authc = routeParamsMock.authc; authc.isProviderEnabled.mockImplementation(provider => provider === 'basic'); mockContext = ({ @@ -43,16 +37,7 @@ describe('Basic authentication routes', () => { }, } as unknown) as RequestHandlerContext; - defineBasicRoutes({ - router, - clusterClient: elasticsearchServiceMock.createClusterClient(), - basePath: httpServiceMock.createBasePath(), - logger: loggingServiceMock.create().get(), - config: { authc: { providers: ['saml'] } } as ConfigType, - authc, - authz: authorizationMock.create(), - csp: httpServiceMock.createSetupContract().csp, - }); + defineBasicRoutes(routeParamsMock); }); describe('login', () => { diff --git a/x-pack/plugins/security/server/routes/authentication/common.test.ts b/x-pack/plugins/security/server/routes/authentication/common.test.ts index 4666b5abad756b..b611ffffee935c 100644 --- a/x-pack/plugins/security/server/routes/authentication/common.test.ts +++ b/x-pack/plugins/security/server/routes/authentication/common.test.ts @@ -14,26 +14,20 @@ import { } from '../../../../../../src/core/server'; import { LICENSE_CHECK_STATE } from '../../../../licensing/server'; import { Authentication, DeauthenticationResult } from '../../authentication'; -import { ConfigType } from '../../config'; import { defineCommonRoutes } from './common'; -import { - elasticsearchServiceMock, - httpServerMock, - httpServiceMock, - loggingServiceMock, -} from '../../../../../../src/core/server/mocks'; +import { httpServerMock } from '../../../../../../src/core/server/mocks'; import { mockAuthenticatedUser } from '../../../common/model/authenticated_user.mock'; -import { authenticationMock } from '../../authentication/index.mock'; -import { authorizationMock } from '../../authorization/index.mock'; +import { routeDefinitionParamsMock } from '../index.mock'; describe('Common authentication routes', () => { let router: jest.Mocked<IRouter>; let authc: jest.Mocked<Authentication>; let mockContext: RequestHandlerContext; beforeEach(() => { - router = httpServiceMock.createRouter(); - authc = authenticationMock.create(); + const routeParamsMock = routeDefinitionParamsMock.create(); + router = routeParamsMock.router; + authc = routeParamsMock.authc; mockContext = ({ licensing: { @@ -41,16 +35,7 @@ describe('Common authentication routes', () => { }, } as unknown) as RequestHandlerContext; - defineCommonRoutes({ - router, - clusterClient: elasticsearchServiceMock.createClusterClient(), - basePath: httpServiceMock.createBasePath(), - logger: loggingServiceMock.create().get(), - config: { authc: { providers: ['saml'] } } as ConfigType, - authc, - authz: authorizationMock.create(), - csp: httpServiceMock.createSetupContract().csp, - }); + defineCommonRoutes(routeParamsMock); }); describe('logout', () => { diff --git a/x-pack/plugins/security/server/routes/authentication/index.test.ts b/x-pack/plugins/security/server/routes/authentication/index.test.ts index 5450dfafa5e497..bb7c7fb9ceb998 100644 --- a/x-pack/plugins/security/server/routes/authentication/index.test.ts +++ b/x-pack/plugins/security/server/routes/authentication/index.test.ts @@ -5,30 +5,15 @@ */ import { defineAuthenticationRoutes } from '.'; -import { ConfigType } from '../../config'; -import { - elasticsearchServiceMock, - httpServiceMock, - loggingServiceMock, -} from '../../../../../../src/core/server/mocks'; -import { authenticationMock } from '../../authentication/index.mock'; -import { authorizationMock } from '../../authorization/index.mock'; +import { routeDefinitionParamsMock } from '../index.mock'; describe('Authentication routes', () => { it('does not register any SAML related routes if SAML auth provider is not enabled', () => { - const router = httpServiceMock.createRouter(); + const routeParamsMock = routeDefinitionParamsMock.create(); + const router = routeParamsMock.router; - defineAuthenticationRoutes({ - router, - clusterClient: elasticsearchServiceMock.createClusterClient(), - basePath: httpServiceMock.createBasePath(), - logger: loggingServiceMock.create().get(), - config: { authc: { providers: ['basic'] } } as ConfigType, - authc: authenticationMock.create(), - authz: authorizationMock.create(), - csp: httpServiceMock.createSetupContract().csp, - }); + defineAuthenticationRoutes(routeParamsMock); const samlRoutePathPredicate = ([{ path }]: [{ path: string }, any]) => path.startsWith('/api/security/saml/'); diff --git a/x-pack/plugins/security/server/routes/authentication/saml.test.ts b/x-pack/plugins/security/server/routes/authentication/saml.test.ts index b6447273c25590..b4434715a72bac 100644 --- a/x-pack/plugins/security/server/routes/authentication/saml.test.ts +++ b/x-pack/plugins/security/server/routes/authentication/saml.test.ts @@ -7,36 +7,21 @@ import { Type } from '@kbn/config-schema'; import { Authentication, AuthenticationResult, SAMLLoginStep } from '../../authentication'; import { defineSAMLRoutes } from './saml'; -import { ConfigType } from '../../config'; import { IRouter, RequestHandler, RouteConfig } from '../../../../../../src/core/server'; -import { - elasticsearchServiceMock, - httpServerMock, - httpServiceMock, - loggingServiceMock, -} from '../../../../../../src/core/server/mocks'; -import { authenticationMock } from '../../authentication/index.mock'; +import { httpServerMock } from '../../../../../../src/core/server/mocks'; import { mockAuthenticatedUser } from '../../../common/model/authenticated_user.mock'; -import { authorizationMock } from '../../authorization/index.mock'; +import { routeDefinitionParamsMock } from '../index.mock'; describe('SAML authentication routes', () => { let router: jest.Mocked<IRouter>; let authc: jest.Mocked<Authentication>; beforeEach(() => { - router = httpServiceMock.createRouter(); - authc = authenticationMock.create(); - - defineSAMLRoutes({ - router, - clusterClient: elasticsearchServiceMock.createClusterClient(), - basePath: httpServiceMock.createBasePath(), - logger: loggingServiceMock.create().get(), - config: { authc: { providers: ['saml'] } } as ConfigType, - authc, - authz: authorizationMock.create(), - csp: httpServiceMock.createSetupContract().csp, - }); + const routeParamsMock = routeDefinitionParamsMock.create(); + router = routeParamsMock.router; + authc = routeParamsMock.authc; + + defineSAMLRoutes(routeParamsMock); }); describe('Assertion consumer service endpoint', () => { diff --git a/x-pack/plugins/security/server/routes/index.mock.ts b/x-pack/plugins/security/server/routes/index.mock.ts index 8a32e6b00bdf4a..0821ed8b96af98 100644 --- a/x-pack/plugins/security/server/routes/index.mock.ts +++ b/x-pack/plugins/security/server/routes/index.mock.ts @@ -12,6 +12,7 @@ import { import { authenticationMock } from '../authentication/index.mock'; import { authorizationMock } from '../authorization/index.mock'; import { ConfigSchema } from '../config'; +import { licenseMock } from '../../common/licensing/index.mock'; export const routeDefinitionParamsMock = { create: () => ({ @@ -23,5 +24,6 @@ export const routeDefinitionParamsMock = { config: { ...ConfigSchema.validate({}), encryptionKey: 'some-enc-key' }, authc: authenticationMock.create(), authz: authorizationMock.create(), + license: licenseMock.create(), }), }; diff --git a/x-pack/plugins/security/server/routes/index.ts b/x-pack/plugins/security/server/routes/index.ts index 01df67cacb800d..a372fcf092707e 100644 --- a/x-pack/plugins/security/server/routes/index.ts +++ b/x-pack/plugins/security/server/routes/index.ts @@ -5,6 +5,7 @@ */ import { CoreSetup, IClusterClient, IRouter, Logger } from '../../../../../src/core/server'; +import { SecurityLicense } from '../../common/licensing'; import { Authentication } from '../authentication'; import { Authorization } from '../authorization'; import { ConfigType } from '../config'; @@ -15,6 +16,7 @@ import { defineApiKeysRoutes } from './api_keys'; import { defineIndicesRoutes } from './indices'; import { defineUsersRoutes } from './users'; import { defineRoleMappingRoutes } from './role_mapping'; +import { defineViewRoutes } from './views'; /** * Describes parameters used to define HTTP routes. @@ -28,6 +30,7 @@ export interface RouteDefinitionParams { config: ConfigType; authc: Authentication; authz: Authorization; + license: SecurityLicense; } export function defineRoutes(params: RouteDefinitionParams) { @@ -37,4 +40,5 @@ export function defineRoutes(params: RouteDefinitionParams) { defineIndicesRoutes(params); defineUsersRoutes(params); defineRoleMappingRoutes(params); + defineViewRoutes(params); } diff --git a/x-pack/plugins/security/server/routes/users/change_password.test.ts b/x-pack/plugins/security/server/routes/users/change_password.test.ts index 34509edc2e9d23..b40a4e406205c6 100644 --- a/x-pack/plugins/security/server/routes/users/change_password.test.ts +++ b/x-pack/plugins/security/server/routes/users/change_password.test.ts @@ -18,18 +18,11 @@ import { } from '../../../../../../src/core/server'; import { LICENSE_CHECK_STATE } from '../../../../licensing/server'; import { Authentication, AuthenticationResult } from '../../authentication'; -import { ConfigType } from '../../config'; import { defineChangeUserPasswordRoutes } from './change_password'; -import { - elasticsearchServiceMock, - loggingServiceMock, - httpServiceMock, - httpServerMock, -} from '../../../../../../src/core/server/mocks'; +import { elasticsearchServiceMock, httpServerMock } from '../../../../../../src/core/server/mocks'; import { mockAuthenticatedUser } from '../../../common/model/authenticated_user.mock'; -import { authorizationMock } from '../../authorization/index.mock'; -import { authenticationMock } from '../../authentication/index.mock'; +import { routeDefinitionParamsMock } from '../index.mock'; describe('Change password', () => { let router: jest.Mocked<IRouter>; @@ -51,8 +44,9 @@ describe('Change password', () => { } beforeEach(() => { - router = httpServiceMock.createRouter(); - authc = authenticationMock.create(); + const routeParamsMock = routeDefinitionParamsMock.create(); + router = routeParamsMock.router; + authc = routeParamsMock.authc; authc.getCurrentUser.mockReturnValue(mockAuthenticatedUser({ username: 'user' })); authc.login.mockResolvedValue(AuthenticationResult.succeeded(mockAuthenticatedUser())); @@ -64,7 +58,7 @@ describe('Change password', () => { }); mockScopedClusterClient = elasticsearchServiceMock.createScopedClusterClient(); - mockClusterClient = elasticsearchServiceMock.createClusterClient(); + mockClusterClient = routeParamsMock.clusterClient; mockClusterClient.asScoped.mockReturnValue(mockScopedClusterClient); mockContext = ({ @@ -73,16 +67,7 @@ describe('Change password', () => { }, } as unknown) as RequestHandlerContext; - defineChangeUserPasswordRoutes({ - router, - clusterClient: mockClusterClient, - basePath: httpServiceMock.createBasePath(), - logger: loggingServiceMock.create().get(), - config: { authc: { providers: ['saml'] } } as ConfigType, - authc, - authz: authorizationMock.create(), - csp: httpServiceMock.createSetupContract().csp, - }); + defineChangeUserPasswordRoutes(routeParamsMock); const [changePasswordRouteConfig, changePasswordRouteHandler] = router.post.mock.calls[0]; routeConfig = changePasswordRouteConfig; diff --git a/x-pack/plugins/security/server/routes/views/account_management.ts b/x-pack/plugins/security/server/routes/views/account_management.ts new file mode 100644 index 00000000000000..3c84483d8f494d --- /dev/null +++ b/x-pack/plugins/security/server/routes/views/account_management.ts @@ -0,0 +1,19 @@ +/* + * 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 { RouteDefinitionParams } from '..'; + +/** + * Defines routes required for the Account Management view. + */ +export function defineAccountManagementRoutes({ router, csp }: RouteDefinitionParams) { + router.get({ path: '/security/account', validate: false }, async (context, request, response) => { + return response.ok({ + body: await context.core.rendering.render({ includeUserSettings: true }), + headers: { 'content-security-policy': csp.header }, + }); + }); +} diff --git a/x-pack/plugins/security/server/routes/views/index.test.ts b/x-pack/plugins/security/server/routes/views/index.test.ts new file mode 100644 index 00000000000000..63e8a518c61983 --- /dev/null +++ b/x-pack/plugins/security/server/routes/views/index.test.ts @@ -0,0 +1,65 @@ +/* + * 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 { defineViewRoutes } from '.'; + +import { routeDefinitionParamsMock } from '../index.mock'; + +describe('View routes', () => { + it('does not register Login routes if both `basic` and `token` providers are disabled', () => { + const routeParamsMock = routeDefinitionParamsMock.create(); + routeParamsMock.authc.isProviderEnabled.mockImplementation( + provider => provider !== 'basic' && provider !== 'token' + ); + + defineViewRoutes(routeParamsMock); + + expect(routeParamsMock.router.get.mock.calls.map(([{ path }]) => path)).toMatchInlineSnapshot(` + Array [ + "/security/account", + "/security/logged_out", + "/logout", + "/security/overwritten_session", + ] + `); + }); + + it('registers Login routes if `basic` provider is enabled', () => { + const routeParamsMock = routeDefinitionParamsMock.create(); + routeParamsMock.authc.isProviderEnabled.mockImplementation(provider => provider !== 'token'); + + defineViewRoutes(routeParamsMock); + + expect(routeParamsMock.router.get.mock.calls.map(([{ path }]) => path)).toMatchInlineSnapshot(` + Array [ + "/login", + "/internal/security/login_state", + "/security/account", + "/security/logged_out", + "/logout", + "/security/overwritten_session", + ] + `); + }); + + it('registers Login routes if `token` provider is enabled', () => { + const routeParamsMock = routeDefinitionParamsMock.create(); + routeParamsMock.authc.isProviderEnabled.mockImplementation(provider => provider !== 'basic'); + + defineViewRoutes(routeParamsMock); + + expect(routeParamsMock.router.get.mock.calls.map(([{ path }]) => path)).toMatchInlineSnapshot(` + Array [ + "/login", + "/internal/security/login_state", + "/security/account", + "/security/logged_out", + "/logout", + "/security/overwritten_session", + ] + `); + }); +}); diff --git a/x-pack/plugins/security/server/routes/views/index.ts b/x-pack/plugins/security/server/routes/views/index.ts new file mode 100644 index 00000000000000..91e57aed44ab6f --- /dev/null +++ b/x-pack/plugins/security/server/routes/views/index.ts @@ -0,0 +1,23 @@ +/* + * 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 { defineAccountManagementRoutes } from './account_management'; +import { defineLoggedOutRoutes } from './logged_out'; +import { defineLoginRoutes } from './login'; +import { defineLogoutRoutes } from './logout'; +import { defineOverwrittenSessionRoutes } from './overwritten_session'; +import { RouteDefinitionParams } from '..'; + +export function defineViewRoutes(params: RouteDefinitionParams) { + if (params.authc.isProviderEnabled('basic') || params.authc.isProviderEnabled('token')) { + defineLoginRoutes(params); + } + + defineAccountManagementRoutes(params); + defineLoggedOutRoutes(params); + defineLogoutRoutes(params); + defineOverwrittenSessionRoutes(params); +} diff --git a/x-pack/plugins/security/server/routes/views/logged_out.test.ts b/x-pack/plugins/security/server/routes/views/logged_out.test.ts new file mode 100644 index 00000000000000..822802b62d8740 --- /dev/null +++ b/x-pack/plugins/security/server/routes/views/logged_out.test.ts @@ -0,0 +1,83 @@ +/* + * 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 { + RequestHandler, + RouteConfig, + kibanaResponseFactory, +} from '../../../../../../src/core/server'; +import { Authentication } from '../../authentication'; +import { defineLoggedOutRoutes } from './logged_out'; + +import { coreMock, httpServerMock } from '../../../../../../src/core/server/mocks'; +import { routeDefinitionParamsMock } from '../index.mock'; + +describe('LoggedOut view routes', () => { + let authc: jest.Mocked<Authentication>; + let routeHandler: RequestHandler<any, any, any, 'get'>; + let routeConfig: RouteConfig<any, any, any, 'get'>; + beforeEach(() => { + const routeParamsMock = routeDefinitionParamsMock.create(); + authc = routeParamsMock.authc; + + defineLoggedOutRoutes(routeParamsMock); + + const [ + loggedOutRouteConfig, + loggedOutRouteHandler, + ] = routeParamsMock.router.get.mock.calls.find( + ([{ path }]) => path === '/security/logged_out' + )!; + + routeConfig = loggedOutRouteConfig; + routeHandler = loggedOutRouteHandler; + }); + + it('correctly defines route.', () => { + expect(routeConfig.options).toEqual({ authRequired: false }); + expect(routeConfig.validate).toBe(false); + }); + + it('redirects user to the root page if they have a session already.', async () => { + authc.getSessionInfo.mockResolvedValue({ + provider: 'basic', + now: 0, + idleTimeoutExpiration: null, + lifespanExpiration: null, + }); + + const request = httpServerMock.createKibanaRequest(); + + await expect(routeHandler({} as any, request, kibanaResponseFactory)).resolves.toEqual({ + options: { headers: { location: '/mock-server-basepath/' } }, + status: 302, + }); + + expect(authc.getSessionInfo).toHaveBeenCalledWith(request); + }); + + it('renders view if user does not have an active session.', async () => { + authc.getSessionInfo.mockResolvedValue(null); + + const request = httpServerMock.createKibanaRequest(); + const contextMock = coreMock.createRequestHandlerContext(); + + await expect( + routeHandler({ core: contextMock } as any, request, kibanaResponseFactory) + ).resolves.toEqual({ + options: { + headers: { + 'content-security-policy': + "script-src 'unsafe-eval' 'self'; worker-src blob: 'self'; style-src 'unsafe-inline' 'self'", + }, + }, + status: 200, + }); + + expect(authc.getSessionInfo).toHaveBeenCalledWith(request); + expect(contextMock.rendering.render).toHaveBeenCalledWith({ includeUserSettings: false }); + }); +}); diff --git a/x-pack/plugins/security/server/routes/views/logged_out.ts b/x-pack/plugins/security/server/routes/views/logged_out.ts new file mode 100644 index 00000000000000..2f69d8c35f03ed --- /dev/null +++ b/x-pack/plugins/security/server/routes/views/logged_out.ts @@ -0,0 +1,48 @@ +/* + * 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. + */ + +/* + * 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 { RouteDefinitionParams } from '..'; + +/** + * Defines routes required for the Logged Out view. + */ +export function defineLoggedOutRoutes({ + router, + logger, + authc, + csp, + basePath, +}: RouteDefinitionParams) { + router.get( + { + path: '/security/logged_out', + validate: false, + options: { authRequired: false }, + }, + async (context, request, response) => { + // Authentication flow isn't triggered automatically for this route, so we should explicitly + // check whether user has an active session already. + const isUserAlreadyLoggedIn = (await authc.getSessionInfo(request)) !== null; + if (isUserAlreadyLoggedIn) { + logger.debug('User is already authenticated, redirecting...'); + return response.redirected({ + headers: { location: `${basePath.serverBasePath}/` }, + }); + } + + return response.ok({ + body: await context.core.rendering.render({ includeUserSettings: false }), + headers: { 'content-security-policy': csp.header }, + }); + } + ); +} diff --git a/x-pack/plugins/security/server/routes/views/login.test.ts b/x-pack/plugins/security/server/routes/views/login.test.ts new file mode 100644 index 00000000000000..d14aa226e17bab --- /dev/null +++ b/x-pack/plugins/security/server/routes/views/login.test.ts @@ -0,0 +1,197 @@ +/* + * 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 { URL } from 'url'; +import { Type } from '@kbn/config-schema'; +import { + RequestHandler, + RouteConfig, + kibanaResponseFactory, + IRouter, +} from '../../../../../../src/core/server'; +import { SecurityLicense } from '../../../common/licensing'; +import { Authentication } from '../../authentication'; +import { defineLoginRoutes } from './login'; + +import { coreMock, httpServerMock } from '../../../../../../src/core/server/mocks'; +import { routeDefinitionParamsMock } from '../index.mock'; + +describe('Login view routes', () => { + let authc: jest.Mocked<Authentication>; + let router: jest.Mocked<IRouter>; + let license: jest.Mocked<SecurityLicense>; + beforeEach(() => { + const routeParamsMock = routeDefinitionParamsMock.create(); + authc = routeParamsMock.authc; + router = routeParamsMock.router; + license = routeParamsMock.license; + + defineLoginRoutes(routeParamsMock); + }); + + describe('View route', () => { + let routeHandler: RequestHandler<any, any, any, 'get'>; + let routeConfig: RouteConfig<any, any, any, 'get'>; + beforeEach(() => { + const [loginRouteConfig, loginRouteHandler] = router.get.mock.calls.find( + ([{ path }]) => path === '/login' + )!; + + routeConfig = loginRouteConfig; + routeHandler = loginRouteHandler; + }); + + it('correctly defines route.', () => { + expect(routeConfig.options).toEqual({ authRequired: false }); + + expect(routeConfig.validate).toEqual({ + body: undefined, + query: expect.any(Type), + params: undefined, + }); + + const queryValidator = (routeConfig.validate as any).query as Type<any>; + expect(queryValidator.validate({})).toEqual({}); + + expect(queryValidator.validate({ next: 'some-next' })).toEqual({ next: 'some-next' }); + expect(queryValidator.validate({ msg: 'some-msg' })).toEqual({ msg: 'some-msg' }); + expect(queryValidator.validate({ next: 'some-next', msg: 'some-msg', unknown: 1 })).toEqual({ + next: 'some-next', + msg: 'some-msg', + unknown: 1, + }); + + expect(() => queryValidator.validate({ next: 1 })).toThrowErrorMatchingInlineSnapshot( + `"[next]: expected value of type [string] but got [number]"` + ); + + expect(() => queryValidator.validate({ msg: 1 })).toThrowErrorMatchingInlineSnapshot( + `"[msg]: expected value of type [string] but got [number]"` + ); + }); + + it('redirects user to the root page if they have a session already or login is disabled.', async () => { + for (const { query, expectedLocation } of [ + { query: {}, expectedLocation: '/mock-server-basepath/' }, + { + query: { next: '/mock-server-basepath/app/kibana' }, + expectedLocation: '/mock-server-basepath/app/kibana', + }, + { + query: { next: 'http://evil.com/mock-server-basepath/app/kibana' }, + expectedLocation: '/mock-server-basepath/', + }, + ]) { + const request = httpServerMock.createKibanaRequest({ query }); + (request as any).url = new URL( + `${request.url.path}${request.url.search}`, + 'https://kibana.co' + ); + + // Redirect if user has an active session even if `showLogin` is `true`. + authc.getSessionInfo.mockResolvedValue({ + provider: 'basic', + now: 0, + idleTimeoutExpiration: null, + lifespanExpiration: null, + }); + license.getFeatures.mockReturnValue({ showLogin: true } as any); + await expect(routeHandler({} as any, request, kibanaResponseFactory)).resolves.toEqual({ + options: { headers: { location: `${expectedLocation}` } }, + status: 302, + }); + + // Redirect if `showLogin` is `false` even if user doesn't have an active session even. + authc.getSessionInfo.mockResolvedValue(null); + license.getFeatures.mockReturnValue({ showLogin: false } as any); + await expect(routeHandler({} as any, request, kibanaResponseFactory)).resolves.toEqual({ + options: { headers: { location: `${expectedLocation}` } }, + status: 302, + }); + } + }); + + it('renders view if user does not have an active session and login page can be shown.', async () => { + authc.getSessionInfo.mockResolvedValue(null); + license.getFeatures.mockReturnValue({ showLogin: true } as any); + + const request = httpServerMock.createKibanaRequest(); + const contextMock = coreMock.createRequestHandlerContext(); + + await expect( + routeHandler({ core: contextMock } as any, request, kibanaResponseFactory) + ).resolves.toEqual({ + options: { + headers: { + 'content-security-policy': + "script-src 'unsafe-eval' 'self'; worker-src blob: 'self'; style-src 'unsafe-inline' 'self'", + }, + }, + status: 200, + }); + + expect(authc.getSessionInfo).toHaveBeenCalledWith(request); + expect(contextMock.rendering.render).toHaveBeenCalledWith({ includeUserSettings: false }); + }); + }); + + describe('Login state route', () => { + let routeHandler: RequestHandler<any, any, any, 'get'>; + let routeConfig: RouteConfig<any, any, any, 'get'>; + beforeEach(() => { + const [loginStateRouteConfig, loginStateRouteHandler] = router.get.mock.calls.find( + ([{ path }]) => path === '/internal/security/login_state' + )!; + + routeConfig = loginStateRouteConfig; + routeHandler = loginStateRouteHandler; + }); + + it('correctly defines route.', () => { + expect(routeConfig.options).toEqual({ authRequired: false }); + expect(routeConfig.validate).toBe(false); + }); + + it('returns only required license features.', async () => { + license.getFeatures.mockReturnValue({ + allowLogin: true, + allowRbac: false, + allowRoleDocumentLevelSecurity: true, + allowRoleFieldLevelSecurity: false, + layout: 'error-es-unavailable', + showLinks: false, + showRoleMappingsManagement: true, + showLogin: true, + }); + + const request = httpServerMock.createKibanaRequest(); + const contextMock = coreMock.createRequestHandlerContext(); + + await expect( + routeHandler({ core: contextMock } as any, request, kibanaResponseFactory) + ).resolves.toEqual({ + options: { body: { allowLogin: true, layout: 'error-es-unavailable', showLogin: true } }, + payload: { allowLogin: true, layout: 'error-es-unavailable', showLogin: true }, + status: 200, + }); + }); + + it('returns `form` layout if it is not specified in the license.', async () => { + license.getFeatures.mockReturnValue({ allowLogin: true, showLogin: true } as any); + + const request = httpServerMock.createKibanaRequest(); + const contextMock = coreMock.createRequestHandlerContext(); + + await expect( + routeHandler({ core: contextMock } as any, request, kibanaResponseFactory) + ).resolves.toEqual({ + options: { body: { allowLogin: true, layout: 'form', showLogin: true } }, + payload: { allowLogin: true, layout: 'form', showLogin: true }, + status: 200, + }); + }); + }); +}); diff --git a/x-pack/plugins/security/server/routes/views/login.ts b/x-pack/plugins/security/server/routes/views/login.ts new file mode 100644 index 00000000000000..e2e162d298e451 --- /dev/null +++ b/x-pack/plugins/security/server/routes/views/login.ts @@ -0,0 +1,64 @@ +/* + * 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 } from '@kbn/config-schema'; +import { parseNext } from '../../../common/parse_next'; +import { RouteDefinitionParams } from '..'; + +/** + * Defines routes required for the Login view. + */ +export function defineLoginRoutes({ + router, + logger, + authc, + csp, + basePath, + license, +}: RouteDefinitionParams) { + router.get( + { + path: '/login', + validate: { + query: schema.object( + { + next: schema.maybe(schema.string()), + msg: schema.maybe(schema.string()), + }, + { allowUnknowns: true } + ), + }, + options: { authRequired: false }, + }, + async (context, request, response) => { + // Default to true if license isn't available or it can't be resolved for some reason. + const shouldShowLogin = license.isEnabled() ? license.getFeatures().showLogin : true; + + // Authentication flow isn't triggered automatically for this route, so we should explicitly + // check whether user has an active session already. + const isUserAlreadyLoggedIn = (await authc.getSessionInfo(request)) !== null; + if (isUserAlreadyLoggedIn || !shouldShowLogin) { + logger.debug('User is already authenticated, redirecting...'); + return response.redirected({ + headers: { location: parseNext(request.url?.href ?? '', basePath.serverBasePath) }, + }); + } + + return response.ok({ + body: await context.core.rendering.render({ includeUserSettings: false }), + headers: { 'content-security-policy': csp.header }, + }); + } + ); + + router.get( + { path: '/internal/security/login_state', validate: false, options: { authRequired: false } }, + async (context, request, response) => { + const { showLogin, allowLogin, layout = 'form' } = license.getFeatures(); + return response.ok({ body: { showLogin, allowLogin, layout } }); + } + ); +} diff --git a/x-pack/plugins/security/server/routes/views/logout.ts b/x-pack/plugins/security/server/routes/views/logout.ts new file mode 100644 index 00000000000000..8fa8e689a1c38e --- /dev/null +++ b/x-pack/plugins/security/server/routes/views/logout.ts @@ -0,0 +1,26 @@ +/* + * 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 { RouteDefinitionParams } from '..'; + +/** + * Defines routes required for the Logout out view. + */ +export function defineLogoutRoutes({ router, csp }: RouteDefinitionParams) { + router.get( + { + path: '/logout', + validate: false, + options: { authRequired: false }, + }, + async (context, request, response) => { + return response.ok({ + body: await context.core.rendering.render({ includeUserSettings: false }), + headers: { 'content-security-policy': csp.header }, + }); + } + ); +} diff --git a/x-pack/plugins/security/server/routes/views/overwritten_session.ts b/x-pack/plugins/security/server/routes/views/overwritten_session.ts new file mode 100644 index 00000000000000..c21ab1c207362f --- /dev/null +++ b/x-pack/plugins/security/server/routes/views/overwritten_session.ts @@ -0,0 +1,22 @@ +/* + * 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 { RouteDefinitionParams } from '..'; + +/** + * Defines routes required for the Overwritten Session view. + */ +export function defineOverwrittenSessionRoutes({ router, csp }: RouteDefinitionParams) { + router.get( + { path: '/security/overwritten_session', validate: false }, + async (context, request, response) => { + return response.ok({ + body: await context.core.rendering.render({ includeUserSettings: true }), + headers: { 'content-security-policy': csp.header }, + }); + } + ); +} diff --git a/x-pack/test/kerberos_api_integration/apis/security/kerberos_login.ts b/x-pack/test/kerberos_api_integration/apis/security/kerberos_login.ts index 55853f8b0fbdeb..b561c9ea47513b 100644 --- a/x-pack/test/kerberos_api_integration/apis/security/kerberos_login.ts +++ b/x-pack/test/kerberos_api_integration/apis/security/kerberos_login.ts @@ -242,7 +242,7 @@ export default function({ getService }: FtrProviderContext) { expect(cookies).to.have.length(1); checkCookieIsCleared(request.cookie(cookies[0])!); - expect(logoutResponse.headers.location).to.be('/logged_out'); + expect(logoutResponse.headers.location).to.be('/security/logged_out'); // Token that was stored in the previous cookie should be invalidated as well and old // session cookie should not allow API access. diff --git a/x-pack/test/pki_api_integration/apis/security/pki_auth.ts b/x-pack/test/pki_api_integration/apis/security/pki_auth.ts index 6cb92585de36ea..fe772a3b1d4601 100644 --- a/x-pack/test/pki_api_integration/apis/security/pki_auth.ts +++ b/x-pack/test/pki_api_integration/apis/security/pki_auth.ts @@ -290,7 +290,7 @@ export default function({ getService }: FtrProviderContext) { expect(cookies).to.have.length(1); checkCookieIsCleared(request.cookie(cookies[0])!); - expect(logoutResponse.headers.location).to.be('/logged_out'); + expect(logoutResponse.headers.location).to.be('/security/logged_out'); }); it('should redirect to home page if session cookie is not provided', async () => { diff --git a/x-pack/test/saml_api_integration/apis/security/saml_login.ts b/x-pack/test/saml_api_integration/apis/security/saml_login.ts index b8296aa7036072..e49d95f2ec6c2e 100644 --- a/x-pack/test/saml_api_integration/apis/security/saml_login.ts +++ b/x-pack/test/saml_api_integration/apis/security/saml_login.ts @@ -728,7 +728,7 @@ export default function({ getService }: FtrProviderContext) { .set('kbn-xsrf', 'xxx') .set('Cookie', existingSessionCookie.cookieString()) .send({ SAMLResponse: await createSAMLResponse({ username: newUsername }) }) - .expect('location', '/overwritten_session') + .expect('location', '/security/overwritten_session') .expect(302); const newSessionCookie = request.cookie( From faf2bbe76091c021fe1ad86da82986a2fd609b43 Mon Sep 17 00:00:00 2001 From: Uladzislau Lasitsa <Uladzislau_Lasitsa@epam.com> Date: Wed, 4 Mar 2020 11:37:22 +0300 Subject: [PATCH 086/120] [vis_filters]: Convert to TS/Jest, write tests (#58488) * Converted files to TS. Added tests. * Removed ts-ignore * Fixed comments and tests * Fixed error * Fixed tests Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../filters/create_filters_from_event.test.ts | 119 ++++++++++++++++ ..._event.js => create_filters_from_event.ts} | 52 ++++--- .../data/public/actions/value_click_action.ts | 7 +- .../build_tabular_inspector_data.ts | 24 ++-- .../search/expressions/create_filter.test.ts | 130 ++++++++++++++++++ .../{create_filter.js => create_filter.ts} | 22 ++- .../vislib/components/legend/legend.tsx | 10 +- 7 files changed, 330 insertions(+), 34 deletions(-) create mode 100644 src/legacy/core_plugins/data/public/actions/filters/create_filters_from_event.test.ts rename src/legacy/core_plugins/data/public/actions/filters/{create_filters_from_event.js => create_filters_from_event.ts} (70%) create mode 100644 src/legacy/core_plugins/data/public/search/expressions/create_filter.test.ts rename src/legacy/core_plugins/data/public/search/expressions/{create_filter.js => create_filter.ts} (78%) diff --git a/src/legacy/core_plugins/data/public/actions/filters/create_filters_from_event.test.ts b/src/legacy/core_plugins/data/public/actions/filters/create_filters_from_event.test.ts new file mode 100644 index 00000000000000..bfba4d7f4c8dad --- /dev/null +++ b/src/legacy/core_plugins/data/public/actions/filters/create_filters_from_event.test.ts @@ -0,0 +1,119 @@ +/* + * 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 { + fieldFormats, + FieldFormatsGetConfigFn, + esFilters, + IndexPatternsContract, +} from '../../../../../../plugins/data/public'; +// eslint-disable-next-line @kbn/eslint/no-restricted-paths +import { setIndexPatterns } from '../../../../../../plugins/data/public/services'; +import { dataPluginMock } from '../../../../../../plugins/data/public/mocks'; +import { createFiltersFromEvent, EventData } from './create_filters_from_event'; +import { mockDataServices } from '../../search/aggs/test_helpers'; + +jest.mock('ui/new_platform'); + +const mockField = { + name: 'bytes', + indexPattern: { + id: 'logstash-*', + }, + filterable: true, + format: new fieldFormats.BytesFormat({}, (() => {}) as FieldFormatsGetConfigFn), +}; + +describe('createFiltersFromEvent', () => { + let dataPoints: EventData[]; + + beforeEach(() => { + dataPoints = [ + { + table: { + columns: [ + { + name: 'test', + id: '1-1', + meta: { + type: 'histogram', + indexPatternId: 'logstash-*', + aggConfigParams: { + field: 'bytes', + interval: 30, + otherBucket: true, + }, + }, + }, + ], + rows: [ + { + '1-1': '2048', + }, + ], + }, + column: 0, + row: 0, + value: 'test', + }, + ]; + + mockDataServices(); + setIndexPatterns(({ + ...dataPluginMock.createStartContract().indexPatterns, + get: async () => ({ + id: 'logstash-*', + fields: { + getByName: () => mockField, + filter: () => [mockField], + }, + }), + } as unknown) as IndexPatternsContract); + }); + + test('ignores event when value for rows is not provided', async () => { + dataPoints[0].table.rows[0]['1-1'] = null; + const filters = await createFiltersFromEvent(dataPoints); + + expect(filters.length).toEqual(0); + }); + + test('handles an event when aggregations type is a terms', async () => { + if (dataPoints[0].table.columns[0].meta) { + dataPoints[0].table.columns[0].meta.type = 'terms'; + } + const filters = await createFiltersFromEvent(dataPoints); + + expect(filters.length).toEqual(1); + expect(filters[0].query.match_phrase.bytes).toEqual('2048'); + }); + + test('handles an event when aggregations type is not terms', async () => { + const filters = await createFiltersFromEvent(dataPoints); + + expect(filters.length).toEqual(1); + + const [rangeFilter] = filters; + + if (esFilters.isRangeFilter(rangeFilter)) { + expect(rangeFilter.range.bytes.gte).toEqual(2048); + expect(rangeFilter.range.bytes.lt).toEqual(2078); + } + }); +}); diff --git a/src/legacy/core_plugins/data/public/actions/filters/create_filters_from_event.js b/src/legacy/core_plugins/data/public/actions/filters/create_filters_from_event.ts similarity index 70% rename from src/legacy/core_plugins/data/public/actions/filters/create_filters_from_event.js rename to src/legacy/core_plugins/data/public/actions/filters/create_filters_from_event.ts index 1037c718d0003f..3713c781b0958d 100644 --- a/src/legacy/core_plugins/data/public/actions/filters/create_filters_from_event.js +++ b/src/legacy/core_plugins/data/public/actions/filters/create_filters_from_event.ts @@ -17,21 +17,33 @@ * under the License. */ -import { esFilters } from '../../../../../../plugins/data/public'; +import { KibanaDatatable } from '../../../../../../plugins/expressions/public'; +import { esFilters, Filter } from '../../../../../../plugins/data/public'; import { deserializeAggConfig } from '../../search/expressions/utils'; // eslint-disable-next-line @kbn/eslint/no-restricted-paths import { getIndexPatterns } from '../../../../../../plugins/data/public/services'; +export interface EventData { + table: Pick<KibanaDatatable, 'rows' | 'columns'>; + column: number; + row: number; + value: any; +} + /** * For terms aggregations on `__other__` buckets, this assembles a list of applicable filter * terms based on a specific cell in the tabified data. * - * @param {object} table - tabified table data + * @param {EventData['table']} table - tabified table data * @param {number} columnIndex - current column index * @param {number} rowIndex - current row index * @return {array} - array of terms to filter against */ -const getOtherBucketFilterTerms = (table, columnIndex, rowIndex) => { +const getOtherBucketFilterTerms = ( + table: EventData['table'], + columnIndex: number, + rowIndex: number +) => { if (rowIndex === -1) { return []; } @@ -42,7 +54,7 @@ const getOtherBucketFilterTerms = (table, columnIndex, rowIndex) => { return row[column.id] === table.rows[rowIndex][column.id] || i >= columnIndex; }); }); - const terms = rows.map(row => row[table.columns[columnIndex].id]); + const terms: any[] = rows.map(row => row[table.columns[columnIndex].id]); return [ ...new Set( @@ -59,22 +71,27 @@ const getOtherBucketFilterTerms = (table, columnIndex, rowIndex) => { * Assembles the filters needed to apply filtering against a specific cell value, while accounting * for cases like if the value is a terms agg in an `__other__` or `__missing__` bucket. * - * @param {object} table - tabified table data + * @param {EventData['table']} table - tabified table data * @param {number} columnIndex - current column index * @param {number} rowIndex - current row index * @param {string} cellValue - value of the current cell - * @return {array|string} - filter or list of filters to provide to queryFilter.addFilters() + * @return {Filter[]|undefined} - list of filters to provide to queryFilter.addFilters() */ -const createFilter = async (table, columnIndex, rowIndex) => { - if (!table || !table.columns || !table.columns[columnIndex]) return; +const createFilter = async (table: EventData['table'], columnIndex: number, rowIndex: number) => { + if (!table || !table.columns || !table.columns[columnIndex]) { + return; + } const column = table.columns[columnIndex]; + if (!column.meta || !column.meta.indexPatternId) { + return; + } const aggConfig = deserializeAggConfig({ type: column.meta.type, - aggConfigParams: column.meta.aggConfigParams, + aggConfigParams: column.meta.aggConfigParams ? column.meta.aggConfigParams : {}, indexPattern: await getIndexPatterns().get(column.meta.indexPatternId), }); - let filter = []; - const value = rowIndex > -1 ? table.rows[rowIndex][column.id] : null; + let filter: Filter[] = []; + const value: any = rowIndex > -1 ? table.rows[rowIndex][column.id] : null; if (value === null || value === undefined || !aggConfig.isFilterable()) { return; } @@ -85,6 +102,10 @@ const createFilter = async (table, columnIndex, rowIndex) => { filter = aggConfig.createFilter(value); } + if (!filter) { + return; + } + if (!Array.isArray(filter)) { filter = [filter]; } @@ -92,19 +113,18 @@ const createFilter = async (table, columnIndex, rowIndex) => { return filter; }; -const createFiltersFromEvent = async event => { - const filters = []; - const dataPoints = event.data || [event]; +const createFiltersFromEvent = async (dataPoints: EventData[], negate?: boolean) => { + const filters: Filter[] = []; await Promise.all( dataPoints .filter(point => point) .map(async val => { const { table, column, row } = val; - const filter = await createFilter(table, column, row); + const filter: Filter[] = (await createFilter(table, column, row)) || []; if (filter) { filter.forEach(f => { - if (event.negate) { + if (negate) { f = esFilters.toggleFilterNegated(f); } filters.push(f); diff --git a/src/legacy/core_plugins/data/public/actions/value_click_action.ts b/src/legacy/core_plugins/data/public/actions/value_click_action.ts index 260b401e6d6581..26933cc8ddb824 100644 --- a/src/legacy/core_plugins/data/public/actions/value_click_action.ts +++ b/src/legacy/core_plugins/data/public/actions/value_click_action.ts @@ -46,7 +46,9 @@ interface ActionContext { async function isCompatible(context: ActionContext) { try { - const filters: Filter[] = (await createFiltersFromEvent(context.data)) || []; + const filters: Filter[] = + (await createFiltersFromEvent(context.data.data || [context.data], context.data.negate)) || + []; return filters.length > 0; } catch { return false; @@ -71,7 +73,8 @@ export function valueClickAction( throw new IncompatibleActionError(); } - const filters: Filter[] = (await createFiltersFromEvent(data)) || []; + const filters: Filter[] = + (await createFiltersFromEvent(data.data || [data], data.negate)) || []; let selectedFilters: Filter[] = esFilters.mapAndFlattenFilters(filters); diff --git a/src/legacy/core_plugins/data/public/search/expressions/build_tabular_inspector_data.ts b/src/legacy/core_plugins/data/public/search/expressions/build_tabular_inspector_data.ts index e85e9deff6ddf9..bd05fa21bfd5de 100644 --- a/src/legacy/core_plugins/data/public/search/expressions/build_tabular_inspector_data.ts +++ b/src/legacy/core_plugins/data/public/search/expressions/build_tabular_inspector_data.ts @@ -20,7 +20,7 @@ import { set } from 'lodash'; // @ts-ignore import { FormattedData } from '../../../../../../plugins/inspector/public'; -// @ts-ignore + import { createFilter } from './create_filter'; import { TabbedTable } from '../tabify'; @@ -66,7 +66,10 @@ export async function buildTabularInspectorData( row => row[`col-${colIndex}-${col.aggConfig.id}`].raw === value.raw ); const filter = createFilter(aggConfigs, table, colIndex, rowIndex, value.raw); - queryFilter.addFilters(filter); + + if (filter) { + queryFilter.addFilters(filter); + } }), filterOut: isCellContentFilterable && @@ -75,14 +78,17 @@ export async function buildTabularInspectorData( row => row[`col-${colIndex}-${col.aggConfig.id}`].raw === value.raw ); const filter = createFilter(aggConfigs, table, colIndex, rowIndex, value.raw); - const notOther = value.raw !== '__other__'; - const notMissing = value.raw !== '__missing__'; - if (Array.isArray(filter)) { - filter.forEach(f => set(f, 'meta.negate', notOther && notMissing)); - } else { - set(filter, 'meta.negate', notOther && notMissing); + + if (filter) { + const notOther = value.raw !== '__other__'; + const notMissing = value.raw !== '__missing__'; + if (Array.isArray(filter)) { + filter.forEach(f => set(f, 'meta.negate', notOther && notMissing)); + } else { + set(filter, 'meta.negate', notOther && notMissing); + } + queryFilter.addFilters(filter); } - queryFilter.addFilters(filter); }), }; }); diff --git a/src/legacy/core_plugins/data/public/search/expressions/create_filter.test.ts b/src/legacy/core_plugins/data/public/search/expressions/create_filter.test.ts new file mode 100644 index 00000000000000..890ec81778d4bf --- /dev/null +++ b/src/legacy/core_plugins/data/public/search/expressions/create_filter.test.ts @@ -0,0 +1,130 @@ +/* + * 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 { + fieldFormats, + FieldFormatsGetConfigFn, + esFilters, +} from '../../../../../../plugins/data/public'; +import { createFilter } from './create_filter'; +import { TabbedTable } from '../tabify'; +import { AggConfigs } from '../aggs/agg_configs'; +import { IAggConfig } from '../aggs/agg_config'; +import { mockDataServices, mockAggTypesRegistry } from '../aggs/test_helpers'; + +describe('createFilter', () => { + let table: TabbedTable; + let aggConfig: IAggConfig; + + const typesRegistry = mockAggTypesRegistry(); + + const getAggConfigs = (type: string, params: any) => { + const field = { + name: 'bytes', + filterable: true, + indexPattern: { + id: '1234', + }, + format: new fieldFormats.BytesFormat({}, (() => {}) as FieldFormatsGetConfigFn), + }; + + const indexPattern = { + id: '1234', + title: 'logstash-*', + fields: { + getByName: () => field, + filter: () => [field], + }, + } as any; + + return new AggConfigs( + indexPattern, + [ + { + id: type, + type, + schema: 'buckets', + params, + }, + ], + { typesRegistry } + ); + }; + + const aggConfigParams: Record<string, any> = { + field: 'bytes', + interval: 30, + otherBucket: true, + }; + + beforeEach(() => { + table = { + columns: [ + { + id: '1-1', + name: 'test', + aggConfig, + }, + ], + rows: [ + { + '1-1': '2048', + }, + ], + }; + mockDataServices(); + }); + + test('ignores event when cell value is not provided', async () => { + aggConfig = getAggConfigs('histogram', aggConfigParams).aggs[0]; + const filters = await createFilter([aggConfig], table, 0, -1, null); + + expect(filters).not.toBeDefined(); + }); + + test('handles an event when aggregations type is a terms', async () => { + aggConfig = getAggConfigs('terms', aggConfigParams).aggs[0]; + const filters = await createFilter([aggConfig], table, 0, 0, 'test'); + + expect(filters).toBeDefined(); + + if (filters) { + expect(filters.length).toEqual(1); + expect(filters[0].query.match_phrase.bytes).toEqual('2048'); + } + }); + + test('handles an event when aggregations type is not terms', async () => { + aggConfig = getAggConfigs('histogram', aggConfigParams).aggs[0]; + const filters = await createFilter([aggConfig], table, 0, 0, 'test'); + + expect(filters).toBeDefined(); + + if (filters) { + expect(filters.length).toEqual(1); + + const [rangeFilter] = filters; + + if (esFilters.isRangeFilter(rangeFilter)) { + expect(rangeFilter.range.bytes.gte).toEqual(2048); + expect(rangeFilter.range.bytes.lt).toEqual(2078); + } + } + }); +}); diff --git a/src/legacy/core_plugins/data/public/search/expressions/create_filter.js b/src/legacy/core_plugins/data/public/search/expressions/create_filter.ts similarity index 78% rename from src/legacy/core_plugins/data/public/search/expressions/create_filter.js rename to src/legacy/core_plugins/data/public/search/expressions/create_filter.ts index 3f4028a9b5525b..77e011932195ca 100644 --- a/src/legacy/core_plugins/data/public/search/expressions/create_filter.js +++ b/src/legacy/core_plugins/data/public/search/expressions/create_filter.ts @@ -17,7 +17,11 @@ * under the License. */ -const getOtherBucketFilterTerms = (table, columnIndex, rowIndex) => { +import { IAggConfig } from 'ui/agg_types'; +import { Filter } from '../../../../../../plugins/data/public'; +import { TabbedTable } from '../tabify'; + +const getOtherBucketFilterTerms = (table: TabbedTable, columnIndex: number, rowIndex: number) => { if (rowIndex === -1) { return []; } @@ -41,11 +45,17 @@ const getOtherBucketFilterTerms = (table, columnIndex, rowIndex) => { ]; }; -const createFilter = (aggConfigs, table, columnIndex, rowIndex, cellValue) => { +const createFilter = ( + aggConfigs: IAggConfig[], + table: TabbedTable, + columnIndex: number, + rowIndex: number, + cellValue: any +) => { const column = table.columns[columnIndex]; const aggConfig = aggConfigs[columnIndex]; - let filter = []; - const value = rowIndex > -1 ? table.rows[rowIndex][column.id] : cellValue; + let filter: Filter[] = []; + const value: any = rowIndex > -1 ? table.rows[rowIndex][column.id] : cellValue; if (value === null || value === undefined || !aggConfig.isFilterable()) { return; } @@ -56,6 +66,10 @@ const createFilter = (aggConfigs, table, columnIndex, rowIndex, cellValue) => { filter = aggConfig.createFilter(value); } + if (!filter) { + return; + } + if (!Array.isArray(filter)) { filter = [filter]; } diff --git a/src/legacy/core_plugins/vis_type_vislib/public/vislib/components/legend/legend.tsx b/src/legacy/core_plugins/vis_type_vislib/public/vislib/components/legend/legend.tsx index b9d218b089c31f..cfe3b0c6571477 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/vislib/components/legend/legend.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/vislib/components/legend/legend.tsx @@ -18,13 +18,12 @@ */ import React, { BaseSyntheticEvent, KeyboardEvent, PureComponent } from 'react'; import classNames from 'classnames'; -import { compact, uniq, map } from 'lodash'; +import { compact, uniq, map, every, isUndefined } from 'lodash'; import { i18n } from '@kbn/i18n'; import { EuiPopoverProps, EuiIcon, keyCodes, htmlIdGenerator } from '@elastic/eui'; import { IAggConfig } from '../../../../../data/public'; -// @ts-ignore import { createFiltersFromEvent } from '../../../../../data/public/actions/filters/create_filters_from_event'; import { CUSTOM_LEGEND_VIS_TYPES, LegendItem } from './models'; import { VisLegendItem } from './legend_item'; @@ -111,7 +110,12 @@ export class VisLegend extends PureComponent<VisLegendProps, VisLegendState> { if (CUSTOM_LEGEND_VIS_TYPES.includes(this.props.vislibVis.visConfigArgs.type)) { return false; } - const filters = await createFiltersFromEvent({ data: item.values }); + + if (item.values && every(item.values, isUndefined)) { + return false; + } + + const filters = await createFiltersFromEvent(item.values); return Boolean(filters.length); }; From 45efc11a0ad20c541145fb13623db26b13cea762 Mon Sep 17 00:00:00 2001 From: Liza Katz <liza.katz@elastic.co> Date: Wed, 4 Mar 2020 08:48:35 +0000 Subject: [PATCH 087/120] Edits to filter's custom label are ignored (#59169) * Fix filter alias field * Test for alias comparison Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../filter_manager/lib/compare_filters.test.ts | 16 ++++++++++++++++ .../query/filter_manager/lib/compare_filters.ts | 4 ++++ 2 files changed, 20 insertions(+) diff --git a/src/plugins/data/public/query/filter_manager/lib/compare_filters.test.ts b/src/plugins/data/public/query/filter_manager/lib/compare_filters.test.ts index e7e947c49d0e4a..5d6c25b0d96c1d 100644 --- a/src/plugins/data/public/query/filter_manager/lib/compare_filters.test.ts +++ b/src/plugins/data/public/query/filter_manager/lib/compare_filters.test.ts @@ -180,5 +180,21 @@ describe('filter manager utilities', () => { expect(compareFilters([f1], [f2], COMPARE_ALL_OPTIONS)).toBeTruthy(); }); + + test('should compare alias with COMPARE_ALL_OPTIONS', () => { + const f1 = { + $state: { store: FilterStateStore.GLOBAL_STATE }, + ...buildQueryFilter({ _type: { match: { query: 'apache', type: 'phrase' } } }, 'index', ''), + }; + const f2 = { + $state: { store: FilterStateStore.GLOBAL_STATE }, + ...buildQueryFilter({ _type: { match: { query: 'apache', type: 'phrase' } } }, 'index', ''), + }; + + f2.meta.alias = 'wassup'; + f2.meta.alias = 'dog'; + + expect(compareFilters([f1], [f2], COMPARE_ALL_OPTIONS)).toBeFalsy(); + }); }); }); diff --git a/src/plugins/data/public/query/filter_manager/lib/compare_filters.ts b/src/plugins/data/public/query/filter_manager/lib/compare_filters.ts index cd4a966184f832..b4402885bc0beb 100644 --- a/src/plugins/data/public/query/filter_manager/lib/compare_filters.ts +++ b/src/plugins/data/public/query/filter_manager/lib/compare_filters.ts @@ -24,6 +24,7 @@ export interface FilterCompareOptions { disabled?: boolean; negate?: boolean; state?: boolean; + alias?: boolean; } /** @@ -33,6 +34,7 @@ export const COMPARE_ALL_OPTIONS: FilterCompareOptions = { disabled: true, negate: true, state: true, + alias: true, }; const mapFilter = ( @@ -44,6 +46,7 @@ const mapFilter = ( if (comparators.negate) cleaned.negate = filter.meta && Boolean(filter.meta.negate); if (comparators.disabled) cleaned.disabled = filter.meta && Boolean(filter.meta.disabled); + if (comparators.disabled) cleaned.alias = filter.meta?.alias; return cleaned; }; @@ -79,6 +82,7 @@ export const compareFilters = ( state: false, negate: false, disabled: false, + alias: false, }); if (!comparators.state) excludedAttributes.push('$state'); From 3d06a623eded1488a1d1af1c8e152974cc385965 Mon Sep 17 00:00:00 2001 From: Marcin Tojek <mtojek@users.noreply.github.com> Date: Wed, 4 Mar 2020 10:24:03 +0100 Subject: [PATCH 088/120] Add Redis Enterprise to home tutorial (#59136) --- .../redisenterprise_metrics/screenshot.png | Bin 0 -> 964042 bytes .../redisenterprise_metrics/index.ts | 72 ++++++++++++++++++ src/plugins/home/server/tutorials/register.ts | 2 + 3 files changed, 74 insertions(+) create mode 100644 src/legacy/core_plugins/kibana/public/home/tutorial_resources/redisenterprise_metrics/screenshot.png create mode 100644 src/plugins/home/server/tutorials/redisenterprise_metrics/index.ts diff --git a/src/legacy/core_plugins/kibana/public/home/tutorial_resources/redisenterprise_metrics/screenshot.png b/src/legacy/core_plugins/kibana/public/home/tutorial_resources/redisenterprise_metrics/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..cc6ef0ce509ebb555773dafe64811cfcc44d2105 GIT binary patch literal 964042 zcmeFZRajJQ8#cTMML|JCLQ?5QKspuaE{P#TN=l@=ETp?rx{;O~mG178W(F9EVSr)a zUp(*o9{<+2^Bs?S-_F1W9JAKC@B6yWx>ksWn*3dSN_+qS?kXz0&;o!5;IH_xw{C(z zM!gw~0pJm!_~Mz4r^)W(4c7<Lmp=|nu^AQKd3c0sXA3{zF-c$DC+u8YY?TddM&sZ= z2yM1Ic-@JEyVNMO*t>5f)HM6?FvI0?%hCg}(0G)RqUyPI0Uh2r+8WOKbQcTvo;2_` zKc4IS_yoNAa?U4$ed|#m@E1P}1A#|E*nja0{<(g&dyjx^TnoaWzj-Uy--IQ-|2Nm= zpJh*fBn^z*?xDv1+uwv8xPbGQm;aXVvp^u5Bw7UbZ*Kuypb_scpPGB`-h&%}<&n#+ zzkNP$0nS8!_gvn3w1SI;9jGR~dGBv;fqTF@?cXhD_oRQ^#>NFQ0tX)d?Je*K=#luV z1ruD2KoZ<rfGAdq%-`Mu(m=G&U+pv3tHE;X9^i`27yP%k0N7|yf4lr+|G!4_f3aVJ zGzfr8ZLfl;wy>}-z9(K7gO1M5&I=k$3aypM;WDaK>NKy*_asw(&#`T1I2`30neXrH zgruc%u;p?Jf&VoA+ig9t{l+gjVB~ipY0vG&Uy2i7Njn7`TBP@T-u>-DkIgI%XuQZd zVdtt?F1VFE6JRkhOFnF|wg{<4^fHK`H|tu?jzx5aIjc*<EJCPd@w+2gq!`t>4RSi~ zOd{X?-Rt`?if!r#JW=X@f4@z|O1}B?&Y7H%Fq`>XW1?}p-Bj^}<AG!emCBgT$A7gV z1`(f@-~`6lZN}fKJHqXPhtbWSpJEwYZhw`G68inCxBE}U;b<q5O1j?Za2C@=xBC6r ze&xzSxt3EtF6*EtRf1%HcmLq(t(4vc<k(Z5EzCW*U9n7FclCvU#d4q=zPhnWU%B`z zIOR{4Kn^~ZoY$4+FTYDp<G8}u%!f4rnnRpqe--0>WBQ|e6IgU+Nl@_X^V9X{0QXkj z_Rp&w7ysY1j|aN0RLEszfm|>D5gwGUo=WwLurpm_9<{%EQI|g0rpCY%qdxsr-tReI zg3$p8+jA#52JZBD-iC_)w0FPPjX%CK?P!$0SYe83ZOOAc)EVP9KjC>j$a(+oJ}s6% zx;FshT={rb8TK!BWBR6xG@5U(+|Q0CIlO+;K9g+v?n}HycX?zTvU&Eb4f!W}@P@J< zv7J@SUqw)X5<!*h0EL@|m(yVCdT9$)tb-|oqoiMAA@O2c(NPp~zx9Q?Tg-fZiLWNy zs_O4vOWhAW65x1S-{=>qD%IwGAiv%|T);0*(CkYE*U;3Y_azT6P&9@4t}=P=z$r1{ z3umSx@vX-}VnkWW@jd(ZnPStve<C7(E^lV|H!5pTrS6LIj#R7fnNnniFcbQOCK`>R z>uE(39S4+fnf=0zWi`XbWPKtak2VsiR-7oJHSJ)+Xk9>W4LssJEWHKDRb=VW>kQK3 zW=1b}8W4eKe|~z*;PP<*ixVy`HN&5MjC`Xr-0?Quk}h9CI3igw<;LIHlKes6mIAb5 zptCOIJzc609JfV(R#UlDf#S;CKr=4__@&wG5V0M47!P33JC&n<dNxG-@-bg<4K08j zSkIGHb0M?7X{LqyTzaMVXxbTpAivLG`$94Gk<~5gAU5K^0ma(fgTBoLc%L0645Tzj zCvqCw80FO3Xe-D3y5TyZjxjy2wPCc?A<~Tb(F`uh!5WJtq7BD+qffv*t3Z`fVJ~&^ z`1`l-pLDOjy&=7Ccdm{HED{vNelb@5{4uS4({&05B*iC8E{V|gw-n6JAAP*>b~%9k zs^u`g;~-bL>`jc!=^K@(zk&b$2;hJ0yo?LIs<WLp;5Kb5;ZYo-p3SovzZolLeF7NM z*Dc3dmRgK&I(Yjwx!PEq$2*zvVN;M{a6VqpJv`333w$1aV48EMg7yB8fQl)*wFH0* zI4s{BIwTqwdK@P6LuKVxUGU+-IE!Kuedc%hTjY#s<}7Nxb#_Ab`)HX)t@|Q}(==ok z$2&FDQeH~?i_JWr@Yj=)dChTqQ!?6UvG!9cw+!b+wbj+tMgDYW9fI8tpKO3<e}Dfg zVYT%#me=vNqbd9r0>+-ep?6PDFG<66ZMr(}n`eM8*GW3dzemia|KR>Iyi)8$>s+YI z0utgm3WbpldC$-Io{9G6cB?C)X#F-OOQ%II3+V&dZ&D=Ie_MfiAp8xQeCv$boOPRn zj}tkp-EGG5`~yEkK5opsvH+g=zJGJy>)j0y1`@}*6Q<1n=TIi~8(d<w8n|CNLenKY zW;g%bdi(Z1i@R$GDgS4SzGSugEa7w`HW{M(pq|F(vh>;uHKom$r_N=mM0Wf5;L7Vv zX_Lp0DNAR!NSd}cV=Ya3_`r1GcL4e_TDy>ETib55tm1|9J6srY9_5S~A_>_hGZ|x! zqO$l^v54+j^24*=hrZp@QjCApmM-pPm{_iF9<G?cp8wQNOG=~LsMS4}TEux^rtsZw zY_0lZR8T6z)0?G7wEXU|lC_~%4*F1|1%?;zdbGfQ<YH0J9Cg_kOoOoNaU!C<pdE?> zT=wOr7&B@XHG9P@$&B^kG|0lj!gJ(PkNqW%X7{~OyPjC4xQTM(MSXRJCH@n&^U*aH zKL3k&>68~?w5tC5OKckGCo=&-Zza&ZnG#TV5R=k_1Y#L98mfIO>dnaagmkHZ(M?VN z<r-ajxjWu@8aH^NsKvM;4g2wF4R8Awn^7I(N3D5E3D30{)tN2(e0jW_HyHU&EB*Cb zq@JIin0x<w#XIQgi?lvWs`%7s!`6+H-qjE7O5_Z@YcDA0^Xy?=Q!1Y7ozo3-yYr;X z{_9@lYCuWaJ<9po;<e`z*r&?`K+~tVA{mZQyE)IVPO3P5D&XOY1j{%~NM#)(Z@RTj z*=uaH+DV%9;`WB$Pv6ytVpiESyL<QGi$0jqH9lP$!NRi_;6dD8?N-g?(5qa=ANhlO zu&OlKm(Qf!<%&g#D0`MA=@(mXd~>_qawu7C?rA0Yw#@Q5yds=hNE@M7p+kK3)js4u z`)68~V`JF75Lp~SJ*J%_7qUAt?t6TkFYbG&^t$^CXUM7?(cyys4M3;@!hEpS9fyPq z^{<%aaz$3zV4Oq9d0zc~2A*Ly-TIOiucNNyT(b{NV+Fe7k1FSvBH2H>UtQv0oWkFX zGI|~6{S=jJj$GUr`O45meYB|-=g4P$XDYoQ1AUi*8B)JL!c(eS&M49B;o8$Ol)1hr zrrzkfQ6g#o@!fAm?SeZ&Chr?R1&GN<QX4Rb(>)fc{$yhBI`F->+WyS8bpoOMAmO)F zOha^w_3rFK6Ef*SpZ}ev8foo9TPMrzPL_|fl$6W<`=Vto+x}?oi0@*;{*)tbAG?Hk zczAmCe(>3QZ~sucP0nrfhO=APO5p~;W7I_NcTSi%-*9z!bP>y>%r1k6jJfmh*VMA~ zP#dcm^736hPPfee1+)A=G~ZLc8^4smLUd(Vx5t^p<AYKg5IVZG0v;2~qs_f0S(n{Y zMF~#5q21UgX4q_c74gLJHIY{-o61St5h_`H+ygHFnR%!sT+R8SgKaSP*B1u)JNQ+s zSxxoqf^T5AHU?r;tyHM!N{EI6xB-efJsT&Cplngj&CQh|Z-AN@xG*Yv9;n9UT>Sd5 z*n!|6oRUd;4MTY>fCpmj7sS(lu5S8+_>H{MgbIt%rG{^rJQ06G=}TCc^0!tRUMwtW zdDgj1hCG}=p?&d0Jx3{p>W{okP4XR&vc7l$8nWB$x~!#J_;ivjd8%oKSN0shOpX_W z&7AP7pH*D*?n=;08LlY`Evz43+q?Vb+^CRM*Vy44wMT40RkyZTE|zx{XyzT+5kk^i zvOz#ic645e3k+5|YUDZx-3C&*x8r-w867i?em1o|Tb!)~UR@WNDXN#)fhbz>c%=lp zhy6x%&M}P2vBE_IrtAJPpCc08;6m^^y)uoL=O_ELuq~&fO)f9=Nrp-H_||Z~d0}Q( z>VK+@E738f2gWh$_@Xf&`-F<O78=j0`BVdaF?}<*6TJqt8aVqGMX!(Hfi>rl%X0sP zkHyulv+M_dzR*{iw4MmGxR=ve4liNk#D|uA*>Ux26`mPXyXIFuE@(^>Ean+Z6FhcQ zR67%|#Xtv5jk2sk5Mu$tm2>N(m7LsrI?+zQI&5;DM-`YCudGz;!D-ySJQ^gi#gZoR zox8=`**>YtBk6WZ5zGEuMUj-d=~CnyBtG#5lW)pE&?1*kw-_AjohvXR;l<}D#KUvY z;xe7|)#n#3y?JmS`s2a-4K%n>g75A!^XAA3Tu267a;j%ZCe3>w`cskf>j!bxUDl+1 zWJ%Tepk@&ay!!UmOUi?=7g#A&&)Qh1!#h8HsNJ3Pr=sGSB=HgODr%o*qq`)*chHgp zD0=RgCR8@^Rr;!4PIbO#wq}d#vmYClblo<U(A(Zt9~6_vKK1H8?Wsnh1RZvuB;O{P zLA6EfiGv{pU0cAF$-ac=qu?uXX0QoWtr#`h2QjK=PCy|ezq8P!z@1*7uB8xtJizB< zd$%&o+r7qma8-i}JCGiRK0DswpA)c~a_pECu*VHhCBJT2T9?6e5pddgU<CvP`R=XE zWGJ=Nr^Wg15hbzWmd=>V!L$ZT5Fk1qjFE;p5s(kW-q{%wJ#ItCG84d2-ANX`hW{dx zP3KrCyG%5-b_2_7u})niZO*ETEtR-M{GjnzfoeI9vxtjT(y`6>Hg8geQNmicIxKK8 zfn(Z!-&z9EG#Mt_i7n$p;1Hl4ygw}E9>(^oNadeXhw<ThZ}-%0sFKfmA6r7TJasb9 zrCac||H8@;T{=ca0@$8j)usMskr#iM;X@ySpzItz3OC{}d{LCaB24zRx)Ox+@;8BY z*+|ALK`zw6`LW^xtz_aCJi=ZnZEGrod|#}lq#6Y`UHd13YA!74EFfDXCn+hZ%&<ZC z<idZ(v)KbB7%Oac@dzSjD~}x*8G9_Du5c4DZSiMm*q4Z7jagvSjh*=^8j^hzn0(e9 zPR%JB`r!EJ6h@RGDkXpv*i^;`ZW7EyW!whNSCSz`Qt92{l&`hbZh-4d`^LB6xyNLQ z&aGl)3lEbk?7$(DXgA>9&kKWC-qs@qJ5ZDN+rSBES-A;FNcl#8jxg+<ES0?a;;>j! z{Itwe-pI(en~<E-kUg$&;3-)upC!H~u{7!yF*elm<X<HzK^i3QUIz46l28kK=Go7+ zs5)=<F!L8gOv?z_&%rpb--LG0rolJ*_4s`DeGQuI6FTpaUX^OJh5J{&#aM~n*Kaej z*;#IoFKSF9q@KH+dMvpi>HkZ|3kj=R?@KY3i=bfC%=O0YRWy!zCL`aw)QawGX9#tL z&2)Vy#08GXi5`@&-PGrMjeqd2>W=S=|7t}OzGjx+YG?!R-33z3<eL2S#363?D}@}9 z&6>@1NqQSfH&fDp>^&g+w(HXS4d>$y0}P)_m+M%8mqgkWV#%v-2`6}?61v};3(e{S zont1s@a@>Wv^%jZ)-RnrJZgL*B>gW~S%!_G(;D`BBGLkSK|0LnzDp6yt*XSPzXEY0 zpj&!v3c>mzhNA81?4Mp=?JPY!AB2QZu_WdxrzzpD_gnJsyTB`(`JB@|77C4u=?`UQ z?>nFTvJ?sU9cuDndTTiL(Odi8IF2;mIFVK;D#>uXD$aW2IECQw&w=*Y@u>1@M+lqE zq{w>z-qu-Z@8o3wtr$~MrBPCFRAx__5Q0%I{7tN=E+1R8R6|EN?cg+Jrc}UVJE6DJ z2y%{C)77p>CKk1<q_{$!o<%efqvpl;L-UR5*hkOA%}w3Xb6JLZiuuXcM{`+LH;{^2 zg-Yzpn?u|-+J({4cYviUG@aMQMMOu~#^VEXwBPa>9&I}Cs?FES;t+TKhQ+v(d}QV$ z4!!cDx;x<J-5NHHH@=!@X}D@)$ddAlUGI%kthYB<Pa8;Kv>Kpj+f3tk3@S2R2LV>J z^>8M9c&#%`g8;etzbpX9auRDvfLipUwuuS@)hl1*`Q6!XW?`LZm?z%lsWu^<Bt5OB zM4o+0tX7kSQ&<%(E$vvDqF-8`<5EjZ`MgK}*%A5rek<O6u99GjzW8T+778r0ZN2ow z3{B{{;g`UlU-=w|-E;vkFY#q)5@QI7;^?m%8}p71QURNBB{SOyuqebZbgy4xf>$^9 znRmwXW6BI_6bkO_Flps|@n0hBb3|n>Z|u$<9j^SAIXfLyzTXkWa$VuImdTHhcvB}C zS8*;|+&#V8)-TRd>P72HsiYe0#*KbK{17vSFQjn-ZI|o!ntOjsMZs*8lDHqs+&roB zG6`x89$?X2ZVsT8;PyGW;0AfhIGF*oms1wsuduSz6ifOD-M=J}+qM-2{zX!yNnF2P zMX%IV%g7X)HuH3V?_5(irpXfo?j;)YaV+Xcvl87>@b;La3COv7!A`N!5i)*Gs}{#x z*G3-8qHbH29!Ad7pXeaAF`5gt+^Uf1vWA^$4}YC2d0DYyCxyKHfEQ(PG_~h^wCRAs z^IPzAVuVa_p0_C{GFA<azYHj&lkzeQD9DU(blHk!=#K0U`Vfr7q=Dj4v1w(Z#Xz#j zm6;=DY3MGD(xk;#mXP+?Yv?|U65}WQjid`ND5;*_GI4V@t@<Jd%%{WK=i)SkTFgo5 zieXsigI+#rAf>gtxpDSNf=-8jobo*tpfmiUArlj>ZL0x|taVr%7)B(f)CBOtV74n? ze&gi7sQTrdMOr%5n<3_b99E2DPNXY+SuHlb+eolJS*mw_bi6aJ)X0|@P;+xb><@Cj zfzRip^4yWDuFi4(Ijy8GBbtad5eHm*G!fmg)VXpJCv)kP{gbJeHQuC(@vL7L5t$BR z?q~{uB8IBho>xnJ(4^f(x@V1DrFxY~kbuR}?r%bfb7b1aTtu38_<5w}s2qIn2VL;S zuvFAe1A|;RYq{amlcTxA$N!#G@MD_cy4^}>PRg-qmgHP|&P_Oha*Dh8_V?S`5y{Kj z#2@k$V%}plJt@I?1!L8h$I*4kbxRxa&NQB%#uIr<p8W~;mBt(NJpO@ko3E~6{Z3xm z<C2W8yW{!FB!M*t51qj_?ss>>i2YK?9OfA&atpZ02fWFNfZcyq;%yP#7c&OCmkrs^ zyI-u{C~chn?dgmGQD6;rV4ooDbNS)x1)V|av$TOj_pvXJ;y}eytfPS5rS)bcuP;mZ zF2~!qi9rM9VyM0@uB&lkF$m=2t>5`Rg=Ao#^);oF@;^5!P|4z9-#53@{{17!PgL<~ z6l+)a6xI)F1OC1o%QkZd+u&=O89a5D$=kL6=qVA9$ff%t;Ng}3h}e*2E0fYab<uj8 zJm?z-hpQG}rgnMN1duJvUo1>c>NdH*VP}hFsyaKHJxa0|jjeM>>4{BNYRevO^qN&& zohj>C_J!X#Z*3Cb=-u4&S)Z*5;Oug>o!1Y>Oq`q^Xg?J4st^x27~2$OPXHmElqX{V z?Gd5Qe>p4lx^=&IcWDD%KV+CFmQT_C;LExPYajH(O%|YN)1>wFS4LG^w0Da?MlLjw z)zRhl33ed+>ob?EXQC}uj&@6BF;Cy>>;3vfV11|9sJvpK)n|BLlATr1dddRRSb|4H zDXw*uF5&a?tjdsSXWZjkXB#O;d_r4mGbCL1ag8cG2`$=HWzLf4(jb{bA6PF4%FJR` zMT|<X&K3;ufJr)@cKPr+kzm8CWK9{@I}=j{ndq10V!eCw0kaq4&g(s6m5xLVO_maG zHehai&J(y&j!B^Mp&SzMA=Gx|kLH@JY~jV+31X3bf4^-lcnXcn3<&#eil?CZpG$lS z)puB~?t0yny(CkhXwu@zX555|iMzVFSvEb_3XyMggV%FH+6)8o=sntlPlP_FESuKv zr+}J?GAa|Z(FJ|X4e|H$af=Hj#koYqGGGVh_r2s@O{pnRf8eHWFBF!XQdt9;Ce&K% z?(2fEyIW!I7-UV?_L?)PXQq=mmTs@Cvn^p6Kp>+zpYn!>jhUKszq|d&CT{Ag5JdX@ zIqfAeMXd&2N-3XJ=Xdy)g-#Y1t$_N$o}_iIJmCrHt2?lR5}nIu-pJk8PMo9(@JWwv ziwFWYb#-c?=iLMj4$lPm2T2!zSHnv<mebG}`MN2jUE<uG^wi45@p0{vmsg5-^ph`J z^vxcM_-0>vU3Az~d-md+pCWwf=h6|C&8R%vx~8u0w2NYf9oQevX*|(G#>FSO>d{`k zIgMJ)CL{#jNNS!_%Yt||(@9ULTWP^qQP8mWfCq)RYkb+25MODVj|W2E@uCeZLH3Ju zwwc*R=0`Jc`{LOw&SFhDho0RaR8A_j6<>q3FNz7Cp7W54y29A-u7t}_Tw31)FI(F` z|BDK5;Qebzm|4#@l_cn3d*<-dKFlnkWQv$HwkGoQ1_<j`gV<j+yhXkaGloq$GV4_s zjhi(G%H6<m9>@;A?GWJeSd!FAhgf>!fj~*{F?><t$4mC=nOtirO_w5g$!dTt;ZX$e z>K;zu=9hBq2l1b4e8N0W>9Fzp26w{!(vg5LKX7`sCLf~F8szJF`JCjl=~0?z=NB?Y zHS9otJb)B-vHY_4cWz;=V~t!Lqx_W0XXIA~7K@*+`=fQ!XLy-jhHpE=ha?V;eJi_5 zqL%}gXqcL2$tUL<5P6U+VzS@Tq_@LKIhu@`-62aYK7}aNIQB-@w_7CjyhK3B_myBG zI^=hX(Hx~Rectt*@h!5L=7ERfifNmYU#SJA#6cU!%CIn%$N%EHGh#_5%&oX_^1OU4 z*cSTRynqTzh7_$F&)W9l7P;E~g3qfm)xr4&A4muZOJb+r`O4@rpT)XPn7M2ug(j%? za1zmqR|`j-lv65vb}f#;41&*u5avrS8(P$T7rv}}RT%o<gi3r!KgwG@%Wgr~8S#^0 z?Nl@81sUlN?KB3QK!lWcZ$4F2$K<3eU!mH)JnKo{!XGyQ{ycS#-wZFJYpjRiHn1xl z$XuPxTNj$r>9<ecyR$z?;F=ebn*o87#*NU=5fm(T(+<a|7F(T4`o*SNp{_G>U?4-R zP$g@XW}2U<c2;bpEG3RnzTWZTE@0B?ZJhel(OPKJGSyTz+iEEJ(ZjKP0YV$vR^@cz zm@F)rI_+u;MI>DoF@xbHtuD%7oNR9cHfeX+WFUVrL3r6&Fu;<*>z2OWw?Q*<M+5kS z+FPal$>(Zo7jrGL;I)_G1paIco@iQv2Jj#$Yya>M6?PRrN@lYnO9ryt><20d1pNn| zu<1X6LZ@}^f_lLdP`GoxypWZOYF$ZsD3{0m2<yizKQnBlz-GS1E%=!3$-wfF_Ob~3 zk_~O_)2O0ipB0ecw{6ZIK?m<MX)%TY*{Sf=d=7uw@hKOwi8TYfCG6Eavcfi=M6OHO z`;1?#tEN_xQ<(A9fRUqiJU0EJ_$p>-+f{kYV0#9v1_xaql9rZc)Z%I2Z#(mgLehKU z9-HC!z)HL0`B+juv(=|-7zfC-LKy|`F?_`r&rm9^zAX$=XJ3+AlhJ&VxQwEk=&mK5 z)kbjSYUOiKK}ld!#gAz~G&8kl3Op&A*8jvL=6*ISJd_y0!K9Wx(*-Y`c2w9Cjo>n3 z38&${fxphbr2Vz)y=)&vB@Pum5@lxfFBXFz<Xry%lDwb~@_hw^^LaLL=VL84GUmyl zJ#}x#4e-{>+5@q$gotKT(?r#rw+7zs3jUYXvzb=Z9wX)%9*uvRNgg>tadZ^k(N)ki zrmJ&<&B)nKmu(hyg3mo7@#Ep%LRCcNX;x|=@ahRpAZ-P)#oQOO*smHD_nJjAc&k9J zZ+#O;fULj8Y#>M1QlE_NDjssH_C0dC4;)JY-?vaQ)xJopJxKm@MK*($=*zQ%@h!er z+qew0dMyh6Y{og!2cM2FF?cBgj#cT<b(+%>NKNd6o~<Ks%)yqE!FP-DOHPkSPOWAu zrjYf0n%hT*hq1*qWWAmJOX#U$O-=mG;qm}Muslq&TTGXksrJUQwK@@9c<shtG`&eU zXwqw#ie-#Z_Z$)j-cah~+Iq1WvQ|2U_v<<K40tJr3um9JMDRM;(vTEf(t~RHm}9<j z#`DytB}|&RFQzJ`Kr#xhX`BR<ZmJSgLSxz_=0ievi&bTz=XYpXhBGm_riDr|I<UzK z&fBY<0+Cg2TP6ljn<W1Xeh9P8+_%Jo6i@(deaNF`Z!=d^;FM|W$F5LRzf%(s$G^q1 zlV#rVg;^CgJ<{#s<TMJ`Z*~gaooQW8hG15DfR!3@$MvE107k?3FR|j9Dq(B58?qYM zfpvCzLcfgJb?W^3ZNr3<oaiRrT6~;H6>wl}c)OUmC*}^1a<~C(4L~08TVr0Qe-6D! z;MCO7DpX_h*k6cK)VA&&4S<$TWZzzsR|vXTLZ#pb`u#bKRg5d_uXk9QZhR4vGuEgL z!PLmFD~Oil3qr7@NpF^F=9UmPFSd9o+g|9)nra_a!LG3n72N0aPYj`6N_V&a{;aI? zMh|m<lovfHx5XrsPCZ;JmvP!06&uf9?Zk(>bwrYCN79NthEF+E-%1p)F)}q2bhH>K z&Wunq_UZj9BOi_ub$`R<b+jJ)-Dz!GW9?haTDX1&Wv$yddkD?EShg2p$xri!-FU%J zmF)QESTPU6kb95c@6LKi7pP=dc9eyZapi?g*lGuOwjz%wG`mO5nPDiMaEH-fBInkm zmtnLLub#~Y-UM{BE8SZQoY5zy=M;_3R!I-XyQttqLlSw+DH0w*1F3s1L<Nd*hB_U4 z^9v%!sQ$wQJBw@1b}&H%mck*^?=O5(>#;BaiQ-<)iW97w>pfL#d`@F`))pot8sD`I z>xX?XYy}IThH7PIk{S&}IgvBP^_4^KSi*Uxpo155kV~66Vv0vsSfx`__d%7WdDhHq z`mFYg$-&8nLa*@Mo|v_<CS&rjM%#%ZdV?B^#DGh$$E8zc)7|_IcVW{p_2p@2-|teI zUHo+P);11CgptR5A!g`<H#p``pgND`H-8F@>$}lSmuc#*c0@9DM`gqdzy%G(t*4gN z>o;%p9Dt>KPt;u~Q<pRvKGK#?7*X;Carq(GvS&oIOXO0gGO^YXPSQnCkz%vDf(z)X zG(6u(?V>DHr*b@qdI{YhB`F+II3klAy@q4kJ~9rIwi818XlG01-XE8ekHyw#-z@Zf z(IR6rlI{wp%#p(1_sA}1Eo?%i3E8pQXywQI5YZ|GVV@zFZ-{vy60&^mK2dYosJ;;^ z?xhtrF6nz(RJ%7a=;`<$RZjhM5|s4cRa7+v<CAmPQG4{Pv|Y;)Ye;ZiA`mv?X>PW9 z;A1wVGM@<eI$Gk!vWDz(>u2=$?Z1_8I-NZHFD7g+=dp)ij<eeKvrTc-Qcg<eCp+Av zeM!8Z-Qc5oC;MV69Cs*^OU-zWtwSe3(`7Kn>3(t}jeuY+2Iu}NzetJ8<yYT_JJW^D zgX2P-)RVze&*b4W*v>}s577cq{nolk_@4%G@5RgbeE;5CyM$qsIYYd!_DP=WzUF#h z{Us^r?{{0$Z0gCq**h;T@_rp`eOJIrW0;-=Y~a&egZ^({tyU!wOikgIkBIB~N9xnH zWJX15Q`q!@F^_IlIW4ATP5KNv_*iPP;<XVA>8Y5<?`nSu`&U9C#DmUUJf_eXucIX8 z)QMgu^$Pp@Jdqw3{i2{-qv+6^$dp?Nhgx)cpJ7%sG5#1)UB;|giPtnh*@cWEo9-_$ z`!{XIExyLgs#m(u{MX(jawjo=ez(J?3qgrB#U;se`2)B|SNt=sr5!SKX(d#1&AP7~ zy1#=`CgXXe%N{=^RXVJe+4u;Lh$d-k_$sD?CN-qFIjvIQ7$#+y3H2;)_iI1*5ReoC z%l)m@5r5+jP_eAUWMPh;dlONZw=5URLlonGcu-p(9J*CsMVWUAgF-Yy+?RXUq$S~_ zQ?6n<MceeY-RNZtF{t71ro`pDHkQaec)Jp4qE(@y7{-tx>Y|n^coc~!c4(io<nw~5 zG-Le$6-b3n_PU4zc8Zx68=NqaNz7b<pAZAKe$k2t-`fF=FkYG9sDwJWAPhA@hgIL# zI|WuuoNKG-BLVqPQlcr=kDs8#dVUuY?w81!$^qsDs*~GASsQ%1y+bG`(Py=UK*^s3 z!%8;6;;teJL!{x|@SbdZ?Y)J1wQkYLdM`L3LsyZBdWx{&;U<#MH?_WSI7>O9#4Q4z zkKgNNiz$+7^TvGUG;K4Cq>;+UF$xPv<FL_&WVWA%j9VPUl6tp@UM?-Bac(YGI}{$n z5q>l}z&muJKpQp2hXDj-pbyjgQE}X|e~PBdmEB#x!QBlb`W+P=noq`KF#1kwtJ<}f z=RSwroi$I;TTV1%=;~=gE<yPx3!cZpE_ogN7y0iF&|5`NVHiQ-r9Qjy-A<_M-V|gk zPmO73EPu309)ilRD|7=ij0<0c+&}M?bncK=1f?zB0-afQGG1kfQw?E;ci&H`7MZg8 z{ZC+dP|EL<beh!VAUB|v*(+?T3@FkW|Dv_opCsQENl6dN8OyVq!;yp$Zy}|*v9>jY zhbhZ=Q!EY=^`KVCmu;#Zwza#_pCtO+n)XQin`2s4K{o9$$PoO4$$1QZ>SvZ)yLFbh z9nP<A#6Ff0J>zzyE!H1JJL1YGrw~%711q4eDZAKSFgS&*^B6af%KDFE?Q_*y_3pP; z%2T(3D)?n9ge#|d3N`sZMa=gd6sH^~ko|p==Wpt?gE0?;IF~=F&T;&?|9S70zaIRd z;Onw712{&E)u1}B+V%{a;Jy!Nof@r08v9?%VLNNOCHiXT$A`Cx-S_7p{>uR)ueqk+ zX(DKH3{*5*kW|XJx<_oY?=MhF_xut!S5u4sX<Er_civ$9UscS3Qf59VV!ft0=WneP zeH6Aij6V=hNJlkyiFNm&_@wXjw)S;ErYVchuTL1<%Q8MimvW``85@TirA>%DQQ=Kq zdB__qiHi20<;)lKIDxGJ_Ky;p^ySiZ)^p&qxrZ|E8MQbomV;8G<?aq#fM#?$Es!oM zZ&G1Y$d*HhV5vOZxP2##HxbCb!uo+nMBAGkqg`vTPi>IrgrUT$f9X`>Zj1*zU>7Z1 zbt!Nds#M-MEj~K8Ou%Q#w{Tj<l7!&#fz{&AQu6Os`-*PyCB2dt&x$W(*v!*GT=uEI z>n>u0W8H#M-0`Qgi1%ulzYQ%_x`1PGy7*e_WuhuvVQS!^eZ?BM9medkJp$Eb33Yd$ zJelut;tvm8$s5Il17E#>Kg}&7c_v(0-*e6`nonrsb?q8p4Sn&PoTUAJ2!!b5wH?N@ z=*b9jLd8@IC&t)jk2@T~5D>}{fM$fEwpHIRS!Lwc8jD^==s=2XRrn=NaQ`OPJkm!N zpFEm3_p<_`?Ze(pAOKSRoLMEkpt}?pFF^J?WKN~HkmotYO?6rOTs9cwya=^uAyfk1 ztu<NRmuf>q=cZ1W4D4ahD6MK0QU)@;LU*^FiJ#WS1viRcP0So<udj7SotIMzlqhu_ z+aQNQwGV9P3co(y_RT;ANf9b{t4Tzl3RP$sKtwiHiNTjlQLp{eV9955cn9;czRbX4 zsI0dw^5}QFJOk&O%inDnynN;9r7j3Wup(aA={35={T=v>QHLAIGl}(`9X8bdVp3RA zg?^cV>~Fy`WA@R@yO}ppv|0i08f+JPg}ahRW%3msFCVOeM1LnR!-l{Xcp`IN%ja?O zpm{kd$g2W8U0AaoL%VFCWi-&G0eZ!gC8Qf$`;ue@&!$kTk>z&Reo_}T)@{I0etmZl z1#3!Thm%kWKoNrswjkAyo#Y@3DJ=~f9IuZ=m75^b7**4Irf1rNqm<?eC865PY7}hC z8|ar&1h9hvoIn^IQ)k=NPvMGl?(Mna^6%egOd8IxY0Rurd4#c~;qc1Wd84`V1U-Aq z?A1lsX$6B9-iFIUBwd6_*f$OznkSX(GnjX&ja5#%Kpl>3LnuZUA1?=ikNNQjw9-y& z=U!%<*NVDCI}G*JMtk{)NlBN_pQqMt{yA*A<__*00U)|c37Y>VpQ9)%lgw$&kr#iS z;gcO+HmjZ$BOFP6b<@reQb*FoC2I|DrdXw?6QBKyQCidB>m<U-Q`N`cK>?fUnTWvD z5;~}non1vQM@LqoGIhB&Wl68{>cZUPRe|g2%(qp#dw8U$cC!U>kpTPn5Y611C?}Fa z*sWK;a1Shxdwz=E+g_Ffo<K48KAU>dDCs0N$;_cC`CxqyA9|t^{R8X|pN`R6-aL>B zSY5WnKO4>f^(HZZqImk1*HL#C<&$6GPKO7}!n&_yL0^{+Xz@jUR!Ke&E8sddep_t3 z$nx2IuN>Q)h*l!8TRpQkS3YWEB85P%h1+Uio3GZC+&t++aAa?e<r1-c9g}*hg3<$y zM=AVy2?{avbFJ~4SU+^wVwI)|2kj&M4%btTX;x_x*pj7^CW<wCDXeLMfpp%CS{sw$ z{ezP$Cmk{#)a4DmHWgkr)28H016hpDg1Q5V9Ezmj&+ok<Gs!9ORqNIdq7A_TQZe08 zS$%6P>KlEN5IGBt2pXZ52I6~QQF>WwB&YP?fCi(5=G1RdBBT+?Cz@>2#p#Xau3K~? zq!v`9y~OAT>=ywmps?+XJTV8oPqneaTADI~T^FheP;+@_fAC8rR<OL`pU{fy!>lhk zY<U}cz{mwZ=>z-OoT@=>P0c4q6pJMZVT=Z`9bGe^1f_e&2C=W|KD&DZs5FJL3BXS~ zV#qE<wL$NWoYnsb$ZloLO4X3XB_QQ8A6P86!z(^8x5P9l930BoE6L7>l5^O*++|VE zOcZe;-yR-l*Qmc)Dm~LG=5cLpfsPEM+5yeo=!44Soe-U=@BE4NBk)nl_Iz|utDEmw z?F|&IVV%{7a0-#3Wc5XI*yXpn;zLx`8Vgb$q*jqx!m1$TFjFbstki4`B^)e9cUL0p zphna*!0yb~y6Xtx^yBg<bIipJM&P^mp4>yp*JZp7_&;aoZ{DRXM#$75;q&dR?rHK9 z|8x7qg3t6JRa)bbFpsxEzw#rzn%r$z1WNTLD?fOPgSVSnD7Po)yw;_<M$sF~lwhmN zp)`~}%jf{pxzBARoVNA*7XNt1&)Yzzu$x?J!=JNee-IjiZtf3%asxV#spF7X2Kkq3 zzJpoCbbU!NmwrAJSpp7AYHArLk$8}_n<%jnQQ-UQSzpB%@svgM4rmOHwdmrlxg1%q z{KNAyhL^4CeZkeBaf(1JwelpCPV!D!iIN||Usl+&(Evu@-i6Q#y_4o)(<{hp@jTGF zA}20TmGv8hnqtl`fAjx~$;L{V9|jmMpVT4H*ECPV+rI^z8%6y1d>Wq-3YauH53a_R z$c=^<uW`{w`b#_ul6b2i5y71$6>v$d6^DoW=t(zsmSEwr>53SvdUxoqjW062Q^#SA zF*?S;8PDom;~~6^=aDrSlZHJd8AcP;+QeHzd(u3e-mfcPvzTlzpz?L&eXRluVgftT zaWv*fmNRUZ$qREHu?T-f1L&CEU1J_j0F8F^9E;j+axA}(6<ab-0~ibIUv&Xj()6IM z5Tp%~IISO4!O&tDSs#Z$Nn%6uep&;fr|6)@cX0eG`q9~+-?<<NHIO6P+1bJf`3=#F zxa?Qc@)tQ;hmdf5<~1ol`avhZ(Ni@pn!Y`4#RKTKDjBf76ow8Ov#4hAkn{LlJ%1=t z)SLx<Q7~l4xW(;RIj)KIqkGu29|JX27<d!IsOXz@L^y_nMyNfz3zRHE>h|d6qiCo3 zG5Y1P$J<kyR~P>kATcg2o=%qSbNQ<<7&~~$gE;CzB3ZLF%*rQa2I0oopc4z9uk~+S zlmWYeVQ{AVTL{Z_#~B#w1i@^M3J&_p-s7ro5=Kef#vB1x?%#~)5Y;D3{y-=CZTw4w z-}$jYB((^$-Lzxuhky$k+#7p?<Z~c7S)dweC?x*#w0b+<{eM}2a{lkA5zxW4n6gJm zmj<9Zqs?+H7taU1?O%b0S)@U!JA>EBZlmhb?re=xacrmCHuvinD8N(;{$%;%0Ry9h zA(UX6H&;IC7P0T^(rX`SO2Acvj!n1ZW91r}{PYOnBJjIR<jC?Q-4w_7Z9z~uL?A)# zE)14*LT_8od{?EV(lFxuT9oll{d^aul=f2fgPS;9fAJcF>cZ9Bhm9AN!8mkMjx2#e zxYNfJn_r+dadi%l)G5D=tE#^N9f%HpIF7e%SP~FEdDc6x?ZA=56%9rrC@Tk{cDfWU z==!=<+Q;uNFer02y`L;{HnfDU9Uj?kzzDSH>v>z5Mq>eS!R|;~!bGXIOjdW#D2c@e zJA%TcB7N4f>nY-0^_dl7$!$VF5E>k?zoe)`F?G?bDluR6x-<5rgBaX0fk)5q<}sYj z2b|(~yVxp|+82O|M7n>7$7))+^ZZ{7iw@rwE`?eWRcIy5IbZ#hNf889`=OLY3M&NW zhY>LO@y%jE4Wr6E)2VWU*Sogfrm}E<$P=+A+M>SpZ_s!G9YXK^D9qM+rJZPGd;kj; zZXYw~YD_%CesUUi8z57PSL>=s{SA*Nl=Nb?9Hvf)T5UGhXE0PrNf)T}{D=w}#r@Gy zEb|{fh+^jtuh+Ospu4Mjto{<uvEL$gsLDT@M5sX8MgW@7X6)RpM4?Sw<jxY;JgVn2 zSF?k2se*Rwi`(m6<znY9q)4iXZa(@v`oQKB>gYwE%jhj0lezRlvsT+fhYI^H>qtU? zj3ZsWM32oHmFV?n+wtL3-|EYYc_V{-vsOCfaJd+A{3_*<iO~+qMNG=EQC4}n=Vv?1 zaq`mQyu#|o1LQFKfRN?pbImP_Rxq^PB3vc=DM}?Pie?l--{^x^KV;g(u5HCRA_XP_ zsrjAiji5U;!KqK0vc8`k_*v4jyXpXcrdq8JSCL|h_obRT!pTIkqYARt-je_eNT}b~ z(bi?x#npVHCcS)Q9*(95Vrd-F@DGS9-SBG#L&SSxEeNNh?}^^V%_iE7-jmf+RM8~q zd|u(}gK_;7urgrff5_Phb#3!rEvaJ}G*Ft;0%iJN%Z~RJ7xydfQZ~dMZSlZ{;s3E9 zV##?-ltQ#falD1YoS=x=5*!zHD}mP&!Ui?&xr<)+S=20y)CE|<MDBH1CXtJh3Vxk# zB`(l%EE(P!%%tb$<|eZv+?RN2IcJ{&eN~moubMhhZ81vS%-k*?kpyx&_%IF$ptA-N zer6Ju;pjm~{d|TgO~7vQ*I3pd6e=ws?SHvBKf^2cn$raXtRJ`I3i=(x_T+{3xSFo* zh#Uh3jFSdVV8KjEtNBygIk}-siAt#o?dB#|*odfpcMT|f^m2n?YZ4Z<IP-4xxmHQb z{`hzkiDn97g=;QOmJVd&laO=$COO-isEU{<-oW@QKpoEd>iE0|UYO79(@=5JH-R8I z@%8f6E8hzG#2bfO2??dsy*-*F$LOVJvzB0K#q5f$iaq&;CGEBV##mxRTw1TJdg9qW z3}guzx3sk6dG?0NN!OV!(~7R!w9Ynr(6~hus%0@ihptrVUVdVfkD_4QL?NeCOKW{V z1c9U=MbFpR<%U0$l1=0>EnhxDh#VjckN(9sll%zK{-+arb3r^}*I3jPmn9duE(6Y+ zk=q<TD4Khd1#gyW&7%KU51#2Z;FjUIfwU_AHc8?2oR39U?ZLCuc}=lT^#Sjm`zG<2 zPJ$`a{M%3E-$hbwe>kgZCnp9}s01=qOeK|bI=@&su_u{e7%U@cqUE#vx*Jt+l;uO% zk6e6NG~4Ch<$<G2&QmxmWx%UbkIdD%>Kf0brt*j!fip#usZwGKo`0O*WzZ5_JP(g1 zqLZ{;i}}z*b&%#lUfBZz@Vn^v-Z+I!BLgPO(7gLnZ>bru^G@`zXhBoqh`{6O_p<XD z>~5p$PE)$1$0&X1bS-G%q;S>H?r#IHDt1%y6+fi9BfgRp4)^bxCc=iHJSQ1C<=Zsf zJLgAFypHxWiZqtvtCpTA`OFs`@NaDHHJ`6(e(?DcEdKy>nRzn233=T^h`CB0ut&>- zQ9EvMh#_HHQ{vd#Ws4`yoMm_?>%)EEzl5JA7&e=q4~E29rQz3y9!w^S&Lm1&ii5bD zyJxuMED}V4B|eS5ov_2*Sr^AR+6*SeoR4GmGD2(j<^?Mg^{ZaProk>g@3zYwOh_}j zhX0_a5GM$0w%Vfa(eJ_M;Y0X9i9&KHdrCbhY$;YVhTv3Nn1_QxM8?s_s&<F{$_lR~ zL?~5Oox`{h<%JGpnP3wkWH+bLhM8jd{Kk=&UFS_`d$}pp;3g53!yR4TqS$5fgp0Ey zCD7Pq^crJ4{DbJ$s!JV4-r50PT_?Z?ShKbaxZaM%r&Pa-L3sqv$wg8yc7~Bv3wN$8 z$w0XbzFw^eIs_B$#=rY*FJ-+stojN(tY@ZezMyH470-X2tcxq$nAoWy+sgeFW~b*B z+;TDBmIti-`lM_*Hj#23|GF#uajqQU3F7#83k>-rQ1Ir!vp!G)14%qlDw$9EHV<@O zOdsPxDMy-gwQY_OC=HD$YYyOz=qVU^Tb~Ju6BRz)idl0;*LxUE)utfeAlz=be$XNV z=6UR0XZ`8LSWW(_X$}1QPTEh0y}Knb!9Dd3&ByZz?1^!btxX~4-3@GsZ)k&b%&8A( zC_rHsOkwAFb7ckmDMfT#ONsq2X(F_%38_;hzj^S8z$i-*u~uAS6!4jPw}^OdZCU70 zv}8GFx|H(OLZhAIncvkj%+c!drc%ScU&ILf%U6usO#Hw4h9eg&Yh=T2F%h-6mY~DZ zCdYAu+4#$cU~)UMUp0$w=#A)&V_5M`h1Q#c8=y7Xw)+0$S0Gl#e9YSOd8yjxzF*yp z;CAGj*LLiF^?rjXlWpiJnO(s8nVP?Fwfc~sF9Lzl=Lh?B#+umet<_b8zBSQ1@C=6o z+2}LnL$4l+gO)34{-(|dh6<O$FV+*R&#ah$Z4clbrXZu*ZA)@5P27flXS5M)u&)QL z&X(I`&XGixp^A-Toxa9+q;R`shv>)?FpcnZ`D}0Aqx$tAGiWx%`=iqacJg$`z0a-X z@qo3?5H1{V^hfJ5_1Eo*#?_W+6O22O-7;VQ_r>|vV}`<>R=lX=;dVUNxb4wBNXbYR z{$;TP?0eAa>MFf8k5Qsc4cQKAEMM*Mo}s|Ehx?QgW{C^m-Q=SPlt6+jiqUDVUcVA7 z9Ndy^bl(ve&@TkjOO;FBeGy{nOtC(=igBE3(OKGXnh#(Xb19b6vKmgQEL2V5`^2c6 zs!tv>`LfCN_CvmJQBDd_?7()p@B{%nAy}1c7+LHn!_6Bz)ET6JFF1$DW;)7}ENb!2 zl+AdIWz4$G6WP6p$HRkpx%%;TxX(BU!+-hAH<Xj2ZnfcjzgD=Ebm0`*gxgm&@jMVE z=u0~dJ59(m_g=o08)8ITTIguy<;kvr8#UMK7an1Y>KP&|s%dosO9T<X%F))<n-4;c zOP*rPYK$C7gAHG#KzVGg-n`*>2Tqa;`S17w`9^mXUB1zctUs1uYn>vwazkaRq>9U& z?4B*2z5!!NOqPA?mnK6zY`}LvH22QpFv}m$)0MYQZg&@!eV^SuEZ(y3o)TEy+}!Nf zxpBs>b8>s;1Z2%ct$0XJuzZ!1zdJlOz(gr(-_j^Y28apSQh}{Fl6(PJ0S!0H<K&R8 zL!A3z^UWSm*S*o{neHWz$^XiQNMW~2WwPP8>yaCDx&C=+o`Tt#I4(-;2`f0Wk)1{P z^jZMi{wHQIfjX|<C`H=Am;E-U=ayR6i|oqUvXtUWEPVB*u8I>m^|xu%9j0o74xl>U zypi4yCHv3;2H92-C0%oqa8Q#{u6^Twr3yzR-N*Si9X^+T9KH|QnD^i`;?Br&&RGrT zXWbGl2pBwMt+Ra@H$*d!+xNc#9mV8FZDo*}j@PE7H(PwqO5Xl{z^3&?<4Dx|-5Yf9 z%P%~&k#>HVU*Paed#7r_U0TM6O1^eg`$BY5N_%T)%dIp$tTs9yCKcw^aqGK(Jgx77 zbHkwbpIv=WWS~pZ=;;+QZHii7LsA`HBD%@!iCH4=4VR^SkW~am{5dyv&y@Mh_wUmz zXhZ&&xI%sJb=iO+A?L{L#}Z6R@jY!7oginnyomQY$0YOS_Jh7zI4`@A>+eH>5K@lM z7X7iK(`}9t68Xx*U(Yc;phpL4<;S460+!(BT1WO`ZRVQB&;B2}`{C0|Se00<VoD%} zJ|5mQ`|<wFMKOai!G0+$I5Iu@M%eWBFkhZB*B(S*M9OioN^i<>DL<g%pFl@a|MaDa ziOE<6T$=9acWcDR?Ehk){6|l|A{jT=R=Xn@{Cw)csIs1E_xaHb+nL)a`<kCTE<h*g z#TJ#>7Awq~qwwqdsQo$a#^4HQ>`8dOA%4SW+FrIp!X!_ag>VKB@>Ea}Y5%5j=z1F> z7ff#S%+*mbxxwON*>#n`XvhcI-BB<ILSw~WuBw}c2P#IUU18*Ug5{=flZGm*>fizi zV8nRGPxs>8j^mN<r-8CHF9QFR#}D}nrqRiG0FvK~?1bMm+AB|8ipMTV@jdRrar6O6 zVecvv$MG<GXoLNMxRXc2ozvoBcf^_TP)743(Cmu^hj0{1bl8q11#E?4!NDb1R<qmQ zBLV-i-Tv1@EjRdFrg*y0;K|diwF9NOpf=J$uFwbEkId!Ha9360Fio$jR5AqTlbhvH zk%#8GS%^@uc~6-=^+83su|CNL`8=<<`|ihu7EBVizlZ&@p}06_Zu3-CcVNfl0|ouN z0Jp(Yy=9lp>!f<V%9(8!Wb>=UkrVrgutS%TV)B!qOa|qG@GeAG_RX_n7i;hirA)4Z z+AWU~_qrhPmpqA}TmqYZCXopu7317->tQgw>T!&Sc*#YH_Er;gT;j&y-4$9|u64>U z`c}a(pb~de2si}?sEQBGB^aI*W}fY6cPSO9JhYcYk#ifzB$kU(u1#i_r@d6%omqlj z4GO_Mjlnp;`VTCGu=D3*8_TbgQf-sypBTbBw!nz^$D*l|KcmanpsRK2KdBWj2k)8Y zBx<jS@&M~(GCrRvi{4CuFn=4rr2<}dTrr=|>MNt0ihr2@#r(G(+dpxu1rSgxg3Jrq zJzfwQw;)nOC8J6#g_L{s+OMD}du~{i*7NvO(FSDTl3n1S9h0q2lt%0R*F8GJ$895` z706D)ajYN34$aD$O_sik+2v}qu{Vaf%w4b=!;%Vy*-7u8M@rqWSdOM#E5rLSiX{yd zUjWAnhClf92Tv^V7OmLh0)BXagv4@xwJz2ANR0MPhZ9FW#iOn|&Z24i8D=qex)Fq% z{k;B|fiV%X-}?0X!^4X+0*Nkha7oUj#;jNLF>Rsv#ZO)xZztL{dZ8o3DG|oygYlAe zwGKNpLj)l}b||SEd}cte<K0wCzVqRLm!FY<l{A9z^UpYz;XFk2K^I(bFd!DpUK&zJ zfYI@rcQRhRcmR1??9f5TW75VQS8!F*opjdrO^5TUwX+Q-ZaoCyv>q}RT%sfYcrCbU z4?jKxT_cHMR42Z|WN1EDByxS$<sq;8XJSzuI#GJS6C7dp!kn}+sz1=qkqx0pm!EvS z3?BJOi~k1mYLkVoJyhpeUneIg-X#<VaJrvSs8goZe~Yy^du-$@hUr@GzT`1!i9e4p z>;osnkA2w1>&)SlPA)F|T?487rdGoTZR8+){hI3wN;tLpX}Q>ec2f@VX6>z65_Q*N z4wy@}FO$EqoZ0|;gL|Tr?Ks#c`#A)(u``B2ydLo;C)BLm7^)~2nfi*FK{-+75Cp5> z+kTQNd(@F>RF(Y+Tuh72?%zBwhccn85tI#lT@Sbn6|TOP)L&=zz_(<8+C+<x_xh_a zJNK2S_OU8$bpk0kuma8o<>^8YQZFa1X#8tuW{1K8ae?JFKNc|TE4WX*QRmf;zh*?^ zL{w+Ls0dpAHf7azN$y&8&az-0s>L6%zEd;y)to3S*#I1X5prBigbB1leI{S#dXw%< z<+pz7X}SxsxX$|c{LiXWrT~X!VU(oYFQ@b!OA}S|%`l>Ezmg^V_j#JH8q}k-r=2Ex zp2Z49seea~7Y-k~Ah5b91m6B*KRDR7s%w1kEm(`7;h#8_Pxl^*M}Gm6TW+Pvix*zw z5&x|m68$p45xkqVkzyq-v`;PmnQ4pCT>e^`=o4%+NoK@9F8&i#OT7dgX1Q^0o`1xj z^x=X$O;jT7dx$E<pJSWe;osC>fSzE77d+d1CUr!!cSGp|nuY>2Lhv6aa&OVh2rf@x zTI|rG;LA?XV(s2Xa1-YVfu%OTq~rZ9v7GbnOBynG2^jG|Ku^>To$ML*sk_<D8HqX4 z|9dZk@?E?}4`=yhhHNE+(crrwQY0svNxvHMeF#217M<{^v%|2eQcX8d?P*ICiX4&k z#O8Bw5l%O#dlYLdHRrypeCE=4jUxK4<CzmY{{KIQ_}Oj`eDla}(kiwlF%{a54lA@c z{Q!OMy4L05lwjOQpjg7%mTUVgbp%UH1f14=0gTl7-aYU>nwmBU4x?72XZ*tRTZ@@| z8WGmhzaY}lsg}q1&BD~>AM=_~D^DR+rSl`LxGyIPAr%i!Za|(CC?x97HQ2I(vs{pt z0OUE>^%#b~`lkYXza;r;3ndoriVEkwx&M#7_l}AxTiV7O1QRL<0s<0L1SASb4h^G- zND`481<9d7a_UA=5lJeNL#s%V&>*47jglm`<QydDCO6ROcbGdfulK!ke{-+Hto420 zntxcm=sxG{Q@iS^r)t-(tv-MxX@-^otEKkv{eqshA+IgsLgDAJ>6e@HcS4RYCQEs# zM5IVMJl<I7%i`T#_wIAJb^+L#5k7NTsrfbU1r=KE*NYO)EiWxIrdJ5T4N_jf&W}z* zrBjh`X>K>DNqS@Ei*MNa>L~vB&c(9>%czy+y|#+$l=OgcjP93%0tEof8$iWN_Wpjp zx(HTn=g~bdkR`FvaV3)NnD}DUuPeR}(J$b5LtAhoTwt3sLEj=&*dCvy71d9ts&>`h zLgKVoOlC+G-&ua1=g&JSsC1+|2M7V}2HPL$JqM;o!+j!{S5ibpF|DF*f^+O+{!EZ+ zIq7tNt+UK}?zx&E^G>g+q14IIdy&=+133<{{RO1n0@qm$;pq*b$tD}Krq;qtEssMW zy_wm@{*WiYh70%S<@G;peb`HhaW<nP3!HvZ7tPpPR068GZwh34p3`aW8HBhL%LShb z5i}8xSfk@=0P6cx)ksTbNvD<Bee^^8Qk7ve+{qugj75A(2dqad`aV_Ep*4g~G-qc4 zcge|y!LG@!&rQZlalQ>Y<T)z*$|X}`%r~QMSOdKL{_2U`IbK$fzB?>27pK&fu5P)B zv%ICxiN=&~#LNNO7~%@|o!Q;lg5>cF2j8#CH7pLpj*+g6lE!Okmr0&jvv-<s)A_0l zc))qV-7Wg~S(Q0`T8jQmt<)XwC7_X5)YG&>pjZJTh9EB?CQ#C2))L5=pmW7mWVH0V z=wl$Y!@ipZutps{#4!`u`MSx8DY{5>cjgKcGj4uor^D5OoIdJdlma3bIVuvvZ+fRe z#K&|1RP%m0gqxI8cUI2Vkxd5E4L*MSxW&%1mutJT4#d{iNkKy-U&}Q7ts@}a58BsH zzzAiw`Y7n2KZbCs=`o+F>%39{cJx}y2~m%|Fv+=bF|v|KSv;2Ze6mWgHd>N<)Ms{t zc2-yzzi38${S?L3_fBc7E-Qm{L4McWKYgTKW|;=qZ~n}n(7N%9#8`XlCA$|%O%5;= z*H_1YL%Yv~c-GY0=U7NS*-L(&IQYe5L;U5vNYgb?4bZ%)fz6LT{R^W>6H3h)MG&8d zGv25a{#ciwDZREMxmzdp@MVt}-v<Lg6`J&8&3x2liFMjm?KeO6H5GfWO^BdR^~1(I zh*Zn{1@Lr5L>j^d?pvf5=b)9i;D00!0y4i-QMo!~86htVUEAp5^{4FfjIp<moNY~H z#4Y*V43T<GOu5CzMZ!>~k*?L{<5r%fBzhs1^qzTA9Hrq<2n3Ol|M-VhFz1V0d~Wee zjYM&|Q_@9OP?wG^s^)cmgDDaGwiZrTEKBq3VaLRMxB6wP<eWd(ofWfpXTA^@rZcMJ zJKV_5%E02(eR)<U*@0wCxi<a5dHy6Knk-P+8R?MZwvjNN`%Yy{)as|C?E&r{>7oh= zXXeP|QopO2+8KtE-FIglt3YC>LHgPbdCiif7P7!-SLSk@pzE9>F8!fr8iMl~CT1wO zUfHryNAfP9=@w0|((G)_DoS!EJ42x_?PQ!9a!U8gjV$V)M>`}ppBmZ<os5v<U+B$E zEXke+)x5oSxWVD#sNtgQDQR<bzs;QUbo)lV-i^A8k>HA6F-N5OnB@G97};H=a5HZo zZ`r*%H;3iK#~0g^Wx!5uBR#0+4JWCB&Vq^VKMlJtR?W}WQV$4K7Y+$Ju+9>LQ=avW z@i49ER$lw4H?+CP3aQ*R^{pr;3*2B72uEkMg#$Hp4b~=ucV|j<%GK2=KwM;DV=_~7 zaZ+x&=_{&e@aeY1*b^=$dH@FP5`@|7L%5R*+IQJ~=dcr`c7hKxg8|;K#6l_Q!Ggis zw_x_zQut#Kagtck=_kenipwFylDt$Z<?-Rg?YqHXN#1tJ<@dB30&KosQ>TL)j36i$ zcz}4>XV+#b9e#V+rH8?j)Dn1~WM|aw7G(hm>Sr@}>7h1C68rh)BRanFS6}mB;9a#D zS3qu4pH9NcFRid_M~YmNCAC`G(R?e<Yd#FTK=v4Ty>w?GTkK(qCK2~dE#Fu@>8&zx z7g4(B_2k&tw28{iiE+h47X1Y3w8*Fz&DnW79_jOg?S0)@T@yQW8hocWbxp%L&#o@; zL0L^IoIeVdZ|?3L21R%;57>TvqbPktof1^N-n_WhvLSR?6ypGe`J5PVx;+D>eYG1E z)y`88J1qd<k-Y2VNmL|*K(9YM2f{HXk2?|WI?0u{B`1STg4e$cW;e9pT{J>?gUm(D zeePvV=lWo(wx5}qxM(oT8{j`g7<5RA(Szb1>yF~EM<&w2q~bd^n?>51YKLyO;6!iF zlbw>8P`>o}%8`@IG!n*MJ%)=p7%y`Va*&z-TC^ld?-Gf1E=2|sGS#Z<p1a83Q^&?# ztQs87MRNV-cVtP=!Y~bO8GLGaax4<8pC$L9JKf>>pEJ~-?R<>)q2n|pmueY-9Aia} zxk9c&M)?^8jqj%KYALfZAgZNh)79Yxy>ETDhh_I5C@0y~@rzc2^x**$$H32{G-aVC z+Re=y#yCdGH7ijX*WuD*YeAD55!P)94XS7oA748?eU=AV;Mj7t6Mm-p<9R7WYXSof zcJ;%Jd?<2$#`OkP!2W*D!l_rej0zz0U72VBQgcewBBb&nms-Ld=MB!+IZB1;FDcrc zP$sB;tH$MbDp3s%tkTE2c4tv3p}<mwCUdJEe(;?hcIR6`aD7kT@Hr}m0BtVN6+4-Y zMX5D3cS;Dh@%713$DVgSOGxyKevk2pOAWbzQeHeY0xnq?;&a|>8MA1}L8x}$;*XG= zswimFb%4RmV3W(<>+`Xl9t^03J_O@6&k?CpgD`~1TZq!~XaFg7XNW)wvucTn%?jvT zQ*Pixgohz-&>v3L;Raoq2jjt*x=GDynlb;v((Ab^BjO?O6mLga>}Q9y3BD(9UHZ(n zvTeIFuQ<8{<Yg7kG%opsrdkeJcf3_^x?Q!!gz$zpQ-Bz#uMSx+LS1oY5Pt1#2v+Va ztbDC^lXx$f?aVCPOE+G;J}5E*ywWd8=%#B)hSH9D&5mHBSw6&4@Ljs+dks}+^yIu! zON>A$7{3<dy%#@gxi%q&6UA@MzPm@*yF?C(x`I?DYMmwOkLvg@(-*5hk|N13v9Doq zdzirKUuyx___c(Xfa;)X*SYgY8Xn>>M%Ftmc{>5JYlw_49Cxy}@wtF0>|}E`B9zh8 zKkfR^{Wh@NZlkbEjfTU>N=Ay0{0fTnc4w+<&1&!@t28InW$9%HBFX#%=hd}6@bH;P z`MvA$P;UH`vg=Yua3h-^Yn+d+v<qVH6POLkzf$I<AHwlvi0EtSSmA;4VC$M-sKAKx z<Piwd^xHn)()1=DQNf~opi9Eabp|#mhVKGA&|ecFk<Sw$WpeVw(kZOn#7_1GI^qa% z4ZXAI^yJ|y2PzOhrnNO;%fr|7IXOkBrvGHPjPggKHq7^@=xWjGJ$u7*{`&W%eRT3j zCt&gmJ=w9Im)StxTRJH9v4YON?s?IPH$i<A`CRwzvC4SzbO|1NjUOq7JwHarWu0<~ z%mpmJ(ogGT(;CO*H6qH-=CipbVp-%o!W)6>5O$sWbmYclL-;LOA)?8HIsjUQ&_shL zErP72o-<4tbvmdD`4m558ZA(;vBH#*^x&rxgI2R5mbs9s^%-%`r3_c}82d9$*}To@ z)^FoM)M2%!3^uBxoeQh2l>i?IGVkyPQad5R>;V_p@Qta{D~c8_J8#EAokz-b_iRTu zkT_KeDz1BRO%=#Ihk)ussz*Tb8&elMN}Q%2dBzHwFjN5d8>!A4(|on7H^Z;v6&WR+ zc9OK!AJmbh-Q=~EcuCdbi&u5xJ(IqQB0(7X*q<g13gbfpw~f}}ufC$RHAqTf?E8G{ zCUGLPy=AJBvrHIKC4S)*O&RBjE5}|g_7o~R7HMVl!$<)Z!OKYXic8Ca6?m+bxX`hq zm0M`o&7i{$wb2eFZ4I1KC2kZ~fLjTgd=JO-_--u}C>o@zC$jaC)@H7@y5g2gLX059 z+QYfXyiX1~z{X+*)`@Bxb{^4LYR1;^Lt{A2R(>8P^OC%Joy|&}srp12>JY*3#5@d* zSg(+gP#~yg9m#J*6!SFib$i2k)Mc*~VYwG(&{1R;)&JftL*$#X1B-9dN2|51J~xZ@ zVV{n728I2lEjK#MJ!-mqHSDU&+l=zBr27-Cm<4+ZOonXx@*X^tRw<}62TE&%{YLRq z!J87FB9@14jFfxuiNyki#|@0y8EF9$qu!~uBOjI0_H>H1M9`dbSJs@nGqoHC)7-Aw z-bQ_>%_$`8TrRYjUytqxh$`tQ(hBk@LEH)gFh$p@GQqLJ<=bbV0i!OzVG$3rnBBQ# zY4>NkxrVys*FS>0tXso?MvFHZx0m1DtKFi$m!sD4UgHj=J*liC|6WkPW1+L%xVa93 z^9805&6S}TlPu#Aw!J*0WA_Y!N?}#`GTb@clByHR&{1HCv+aD}B;9zEToFu~Xo(XR z-CeO`9uXhmBm_C=Afz^C>Ob#NrK%_PN|6pZdZ2Gl#62Drv;E3Z?q!A|<a`ktm_^t? zSqrV(ZlSoN*7yoFbw(nMOEf<V1D17Kz_92h`kIm+?faO=DS#k37G|c?-ab+}YDAlE zG?MKO8h<hik2)3Ktww%43iBjJ!00;QL9>lM+#*D|bjFL?q@iF%jw2%FPUUu-ipc1y z-oBjlL!i)^M7SA^+iZLIef)jaCNIrI@g}wz9ZwapUgrSRAqPitv8!MAR$Na;OPu&K zO!-%$&2#>CBB1&-H9@E3q!|SExI`N#zQJ@x$~(^os?0P`MvlTamR?URekq30)?on_ zlf~;4UWD33_t}uMINYz<I{Utt0<>*ADCkVU33R;E9-?iDt9Ezw$1e9xcIoi-TKdp? z?Yb^{x^{^lvUhLYV&eaY>Uwb-5f|OWH_zw4r2slP(gWpmVZI&<bqtAKIcp;Ihd|hK z(wuu(AvG?IJj_Z(A5!o|P6OG=n}G_s44FKjd|l1*r`*_?L`)r{SwM7zwBL48DIvm7 zl-?9J9dFxhTl+M%clE&u<pba;6i25N-jqy(!&xNGYe*3o?T(sn%(P7`!QpH;3<~Yr zB)dCR=t^KGom0s-rzLtV!bvn$zFYc;0`a>UgW~|r1%lO!!p``|wBJHm?AwMQNcAM| z30Em<l4`FWA2}$oCyQOeEWm1Wpcr;+;|ZT$-OJRcjoGTboEE)P>3ExphXo!j;$l+w zqZ^xhsW?FS_}r!#STyz1QxxKFYLX~JC$pJ0QmqP~7R=ueBeCksg7P;-*kDT!=Z3Rp zt{su!h<yvd<n5mTl2hjjmJ*XE?nFJ%d<s$!IuIS=xXtu%Fpl(^V*Aqhz{y5Uwb-vP zoYUlEI_TZ`no_S(R#vZJS4fzzm-`^f2Hn=RisHPTUt&_+fhu8g`m#F(4A;OksB~8^ z_Bxz!Bu0OB9gp9cpCi?Q8Cplo7r|*xjit`ntP=e@(M*!RXwO9>Vzd<1AkCMU8pf{K zhRP?ZsctxijuM?NW}yloc>$B#Hg{j>e%s){`~nCm2WV+PJfJH^HtMW@BE0<7XgF4# z7&3ErHC2v|J9!P$QOoY!e2UUTuoVpD1$A<urrZ#0i5chy^|-S@DetrQXa_{(O)#Sg zcgkw2<lYxdU-K&JenfE(X~=&j6d^E67Kqv-y1IUqYK&f!C#7n+PUhILxU)0gsGCcE zT9>Z=AT})i9}HFbvJsJGlY=Emfu2%6{^~{DoaRWNr;Bpx;jIt-ej{xeYP%O0pd0FC zCvn^JtR4$fxqdVPKv;cSm68H<LoMN|6oZh7;U}y=0ti_(1V-e#F8uaRf98XIsDcw3 zmLTrri{IMzn`p{N$)z12j*W0@$gh?5+oo#hEW|E16pw(1*aq@qyFfK?YB|Y>DtxPm z1F>aFb8@L^ve05}D7>P+Ob%z2rt72haf|#Yh#wYOI1Mj6lz!#m9dbUsyys6;V;Utw zW0hhfa(DLqJ|Kpb3ewyCD1Ojkb=+j)YY=tj#L)!0KbuJSMHqPG6j;ExlxH-+%e``a z@Y&6u$hu(Z=$jHQsT!<ZZ%|Y4^A#tbFC)jq6C@zpW(8#=0V0V$Zc(@?i4sKIR-SD@ zV5&-5U&9mEbk2!vS8eGx?|ICdAfc6F-k8kTSS0k&-9o(*(?E4N&W68T=$TYF^If-w zf#p%_`E}bn+(PnWxECkyNCLBdfBo>KKQl$YlU%_w9{&PsUQS;Fwyn35gIbKX{Wh!{ z$x@XYDtW$qXf7mphJ9L=wl22TDgZJYW2{8u%3@nBep`L8?hMaT{)d{a<Hz6Cf21$a zF0@|j9<RzCth%#YIBk~IWP1?d;rD5v9d?=*q}N00GjJo4Ast9^I#J2BCi9!{Wtdg3 zQv3W@DZ%B6fZjze%EB#jV>wTEV;L)8E0>W(OfMoas#v$!HkCg6UDF30SLePJS0clZ zZn0n5piK+vPE^OUKb3L%*C|;Ab8wI@BNJP}NMi8?kPGqowCk54M15jQ?9BC4&8j_N z`&D_VtmItA@mfkZ%P%ZK84ku@^PxGdEiFyHd`3m4ii$=0B^R8C%{7?oD280Vq2gQ1 zAE(XIRP59a#GCyOW8Pt)+Sh=Y^?eNhvZQ&2^xP3dO}yK;%A{NV`L)gkK7|Yh@N42` zf!U1_5e^w@&vkr!*3^T1i^VCf93wfD`&)Gj@H}&?@QmC*_Im~`tBMmO`Y)U~@PP`^ z?$3YQ1Tg<ehe3J#JkPpD*_p6yiOEJ!o|Rf|RJ(R_jTFj9I-)=sRWcWd!frRp+v`0R z8=8GR?A2+^Y4LgxE9g~&V&3Gj)2z}BZ9~+9Z~R_4kxrJM4LT^e_*Jk(DvBxav}e@L zY%e&2EU?VPcR4d9lyQ8aAa!!^a+LiM1<FE6qyttG7V0FibI$D>>Jwwy0jr_Hn_uR3 z6`hL$)eP?`=a~lX2Np1x*d^0MIZ=6IygC3mU$U-8N&9plRJ!_eoq{FJC-XWGN{czI z+<HU<gQN@J8{q+f>O(`GpN-=)U>xKiw?%j%sOFqdMel1Y<z0u8&)0tkrG6Fa4}A5I zbee2evuwncShmFoiZg<d1>)WK-^d;WasEyi92Ml`a~~H?%9%;SdsLuSK;8;ODTdoA z2Rx-OOvuRG2et%F!ePz?O3+NN8Hj^)j*3U~fKlN~ULdG^$u~By;g?ww0=<AmP`>8= zSFrn2|GBTH05b8cQq`M;?@!JC9DM;dk~bf;Iez5h2o$UsP0I!x-Or{#1)73el1(2# z>foOwKR{2T5Nm?z>;dfF3}n7PN9*W<!1aT+p{3(T-?Zd;&D-PM7KK1p_AP05R$syA zAeilU6RO}zN%7UHufkpIZ}a(1EPrU!f1A&bDg58&^M|VSozwXZdH(i3KgJOL_C7!4 zFCKpHec;$nrCF3^$&VI(%;f**s_`Kq4$$fls!{jmZ~A_aABq(?AjEf<DET(@>OatD z0}Jmu1;D9FU(iA~Gjwm$XyxxAT8*jLb9aU9&iE9YUrzsT{J`%S>%SSi_-h5lsp;tE zQNC?U(;TA1R+Y5J`a7VFq817|l4*o;26ll;tTPB0=)O2innnO!)OHK(b)eEi_(z}3 zqO#w-;W&9ntwBXT1Ad?AlxZR+c)$$zAH(jpe#jXkbo>xm*W+r=cL;q+^W;kD`K86) zTsn`19+g_sD~_5<NDRNw7a^XTK_nohPftm?Tkzox$HMh{!JMl?tXEGGRd1ak@{$nZ z@WXBw{|ae7JbCGMTyyNyIz870z124T6VQw@w7ab(w6aoK3usFBnWJWEw!TI8%$X_1 z>rmQdB(EKVRtATK4((<vJ{c$qK*c2ZN*xPSI{%Qx{$;~K=Ujfls(~{+$G7;j3h&CB zX<3^MiVMASo>GFEUQgyc2ZYtC@5mRYlty1!@g0A~KuM{xX?7hda(hoosEK5h%&mWx zBChP#6H;^(Wt=*7@ejmB|ABVY9H!@q-et5iA6v-g;dD`dYDT-E$GwnqYO$q7^&N=n z0%U$&hq5V{b6g0ak<9Z&=mfdi2Jv|9A=RfOs|#cjbAu-|{*AK#$pPD!)g+v$;iR}i zxZFhKJ5Dr8Ueh~E6UXS&qRUAZ_~bmS39QmGh3IL5IhZ&Ojw<~%qaZ3%9IwUqKDdOY zdWDK2U4HgHKnq@()}ohw8Jcz^OL7>(T2EB|DiHNUKK+lzOzflVlthW>DeXdm*Uo9) z)Ti5v<)k1Yt{H;=gUS7YF=du3C?>4yo!!!tJ&}JMSmn)kcm(R2d4k*!fqyVHq5dIX z@`poR6*$9F8~OC|ueAU%Td~Iosxbz#I|$o>>BFEHn>!+BR*f>PRsP76{E<X|Un$My zD4MBoe2_SxkT0+CocsB|0<i!o=u#a8xu5y{G5pxb|K}<N1_}z0HJJf$#`j<G01nVs zrvJjz{Wn7}prHZ9QQp7w-(2&bzhfXs!RCLY^aCdG@89~qBCyiN@FM!(|Ki6e>n~T4 zgOdNya(+xvUr>^f1sW*mJ~~iw{Pwbdk{|wSCi8D4|4qpM^x^*nC4ZxPEDT=4GkDd3 z#wk%EQ)fej=|G|EHjq{g?4i%GBCs>>Dpl^yFWo}hcZr8jRvz-xD<=#xSK~W!yr+^8 zom_fs)mBBecfbVW+cd5#`P3Ez&G`N*uOUhQ8ZNOrXpS-H!^rA5c8F#IBfGya_y$y5 zh=JdXDX6^od9Jt<(~wgq@8NA{79Srg)*JpJGApo+(9KVfQ}Zm#hDT4g^w=4cSm?;^ zj&6Fd)W)w3^o34F4TM^@Y^z($whh+xni$n>j~FWVd8+d!jhdO_`5XMDz|zHzXBk;5 zmGWZNz}ndL#)gK?-4@=eQL;p22>XfAqR!<|=7@L^A>w-T)MleLwx7Rb_`Q{N*qFSC zc%FaN>VRs-(wU&WqTKZz>3>q4KMMg52YG=?g_4z4-}c4L3gyP-)C`?+?2C4RiGhv7 zI{R`RUH|-Ea&Zhe!M4Gq$d9X=4~*hqh7;6$Nv+8hbz;g8or_y1)|cslaN?O!3jB-> zSj;&$RMraD?%MOx=tk7jty@LebNo=hdi&XCB4M;hlJJn)a_=KhJUz}jHumu|O_`-L zl#h)`LdI7da+ck+M0weG4r!}vLc;8Ntmv&xrxZ*!xQ-MU=^2ba5f-&1$=paIq{!I? zp9OY^x1Oz^U4;deH>3q)1%!ze@HTarbI*H4cT9g#bFs(4Vtd&cz}2Y|PTsEY291wv zw58swsw~!>AFZ|<b{{Sg69KC6#Xj$V!CyM3vnOU@e&7{0(TkP^Fl=u}hV}-qlFT@1 z!~a~FyR}_bwSAY6v2vExP`q`R4ity8bnhypn@GxNjE%ebQO{&ZJR+o!q47(6=q*{* zM^kx{{w=oMZ=6GL<e<We*!o)RQ%}2s_6a|yf%DJ;Gqgtu--x*rSs={Y*FTB0^th;H z(dNXnWZxpej;e14ni*ht(Z~(4ZJb^-<C{YV>Xr000kd2@re{<^PYp`)+)e37Hz4Gw z1BG(EnW&y8D?U!QlJIkl^UO!wZ5fbw+r&8|-e*gN@nd!K*oX*5l<|ua8Q?f3*R~EL zD`N`K%=R-puFB4}UoKTNO44gQ-L;u5v7T!=;r@z%X^F_wsx_q~;tqGbpAB_CXP)#2 zvydiWDQCr$ffB@ZFI*@E>>WgJW&~_+*j%J+Np%g92Flv1MBHdVrJqXbYyNZE@yBNM zixY0QK1LQe(5>rm?dZ}5?(|x7_h)ld2qRDf=)@9hWc_J^zMuzU7Bb(Wn~r8QLqWQ8 zqhg^9pwjc6=?^TqJ~<H(-eQG9UaX@+5llrYPm;lV7Epg|I#Ogg!&Lt2pt!>eJ0Vd1 zgB7u!4<!_!JSRDFkb^xk{MtcsqOyGkN40fQzfhVikmNs`y|dGz)RCh#va?$)*PJ}P zugy<wxa&UXoDT9shL0d^W9{^`<_w`w#jEnT_@a?`8LtqBh|v$t<ZdVfHb@wpl^s^b z(coXe0aV4(jSPy1ybX}4s~L5=h`55y9p=j-H8&PcY-!pwzLpA2g(g?_e^3qW|ESt> z_G_W~Rp;ACHPnUBQv%F&Dt?X(mMCKy1a#e_QqohmyQL+RfLuNUK3i!Q0u`MR3RNB> z^2#TdT&Ye#UKMxhlJtdi%WjW;uyl7AyPxb}TIpydySB3F4QsA+PZ415i4>5Qh<qqF z)DV$~6hy*kOSWTU<yGOV)!MWDmD+_xq@k#phA$y*@9tHVcX&<Ctc^HHD@AIw^-2XB zOYrbKv)v5M=(0Pp+<75I+Uu)f#%5ovd?=EuO?_zCWl6Uq$Ca?@HecBPR;kw8tFzL3 zu~15QriHTOz2eARSDDYbLD=NnaC(QK11D~MCv$$Sshd)Gcd=gU_H7zgBeCb_jfzy! zW~mR_HRl87hs(8miKfgleDZttijD<Z8<K8twvOVF1UD^wl12(aT{>e5?^vu7+V8cf z5${rKjOi#}AnlfgxNd7tc3Pv(=BpS7+(mhKgxqI`ZP#(zRe;&P%4iG}`lV}Hk%Q<e z^ctb8h=6quPR|zI8D*rWdMXSVQ$Q+ViLOvqdDw~BZQX5|$W?Kh$UWv}i4Rknmnj@c z7npp*DvjuZ1&oe)e4cuvs1D>}zD1CHy$sdjiX~_GP1y+I_NObh>=^x=d(NAl6&2k^ zS>7%GY@<1N{;A`DeBq!MIFUsY1r{ajcFR>LCt7b!whX9Fr1XI`F(!M>?>GBW+E^Mo z2of4#iA=_|mP5X?3Ti3`OC`hr%+lHTu$7xl2hxv!lbhuh(_kH2og{6HG($^T!o?IH zvhaeg91Gg(NXFFfJZWj(BCYi%PsFf8^qh~5;~_DPZzZbfYcquSkr==aOh(X^2+@7j zyZ`d>*W_ZoNXgYaFV#)bJye7%E@a4N<s{3R5`O0`HJ>bd-%_8b#y~2t8_6tVSX{++ z4C@S)Nf$CQSlNgw8R8L?@(!K*`te@KY${h<=tJ0^rY~lm4%Zlk(Tq$SC4Lwdc9!=J zmArQoX$X57O8(_lNPD$CS}oH|hYMgD)ufhBuA@Pg69eekSeZIPqa$nZ%H6XUboXv; zZ$09c&vG$)1^NhsOTB5`y<9C6$%--=UhjM_vNa~}XYN>K*HSc9-fs8c6hi);S$cpD z|HlzeET38AOHsx&s|+*YtA-Lz`R$ka4L@Ee!ME{cxsgiLC&NR%S~d;(uy<%r?GcJA zCzF|bLuaA#9KK%8rq*orV;hSRgS;hGp4ZFV)bS8p({_PtVuRQoF^`Vx$Vq#k@@Drr zUJ~<A*tI1yYdVkP*rO54&~4Y%5lk8yC_0b9`ZaxVb+f=Gj^*6u9GJa~8sa-*af|jK z{rbZX$Bu$>67+H*1ScxcIXNHGCI4&pYD^wnI<I+T+ll?;VoyjgIPT>!>x#uysB7yR z^;=7tv_E-t3qb0lqGqgDFnzf|ABNs5H#Fj7kDXC#@Sm}fX=E@lygx`!8FUH#Jb3+* zqB$IG#vs8~tmALfvTcXclTV<>4R33NNUaq3EbjQXchY_eiajyUhLSGziWl9SUb-Ya zhpkoZmMT&n(vN|gS*)lm!;<B$Ec7<DglWmz3Lev75yK^J4q(M0bZsm>p^V(EmxWgn zZI)?=JRNkh(QA>UJ&hAMZ(Zp|Dz9Y*Mt_9YlTRV^0`I*8`vXt4bt;tK7xKdN@~*G1 zPeh|<VqA8oK95)wo>EsmfyEyYod}dsJq+fW%}`xzSZlD^m`L?e?c6phu|Fq7d|)2( zreXs3>M;ew6Fn{`8L@2mw%@|A;yj{BN^ZLsIT;e-CbAXm?tGdxQR0~%H=0iv-Gm}) zICht7<&L1x)=;{DJb!^?v-uaTTgjV)<e*qVGy2BiJ<l0Am2F8MEOU1*-9;{hPh*sv z_qU{n9a%am74Hh7%IKH1*V&wU$_&&JQAO8nCxrus8cnz{w^K2gy#&WE(4LbZpyX($ z$;n~#+q*Kho{WI7_-dYw(KA)CO&dU6J5<`^o-t{2$Gx<ovGpcQecSQt0;VuRfVm!E zk0URxHgNq|K>ly861xCU>l<esfQSRAbya0&Wznk?m!c##QX@kS0me=jh%{e&F1h;j zrCq7f1NBl{Z2x<cs7*JhqGA#OOFa>zrQHROTFnC!%@b`q-e2)|8hEbbT5kz&z}!$% zfyrAohEJATBHJDBubJmh%{T=+F*TkV<jhSDOOC}yGYW6FP!=o~Ulbvj%6nw=m)Rt? zo{Iw2!iVLg>3nsh10mmD(Yw~L_vU;<1aF65JnSCQaB?BtvONjK-(HR(c;6ph+METm zcXMmt+pXh$>w{)qB?fQVv%n;+7w1Z)=N#8QM!T-nvNx(jVA0zuDbzAf8G~--E%8kN z3lBFTN{Vc79y=}rG$;`+f&{k`a~;Tlg7K)5*^?{GjOY6K60YXNdaAd#57ai)jmh($ zpp_|x&6a)(9=iWDSr}%p<UZ{Xzgo4pjiCphD^)3S9OQ6{dc1A28c8jhw+~%QNT-bB zSS!*>?&RP_<nt9)s%wWgHmKfdBv;=2+}X~$t!SMzb<T9BO1`6HH$l2jR!Uwl!0OJ- zxmd=Zkb;qpa<Iv+fwg3#(OWIijLl{88$iMO6=D296=pvQN~=u)IJ4{YHzVuzFVA&$ z*J2sD>ZP);O&<2LXNx5G&)SZbuF7zf-9pV`*$X|+eVlBVuShnAsK>Dck8NwroU3%5 z5$r(W5<qPW)u_eEg15N45}?%ruk?nOFc>)5n)b^MauOLzCO33F$k(IOuZc-&uiZ<P z!bq13l)qEXlCtG)jfO}&51mxE@IP4pmr4$>$k(FSAb_*0{nTd2KvlsjS79B#&>%!T zmt1C|^;LHbsy)je-X<6zRpl`Pm75F;@V(E*NNvL6)v?l1%o8T`k05Yx<<}t4E)&X# zIy1>A7|Kbp(nIAX(1i&?&o;^-G($%AibCa(OEl^%K*yu-a}wO1sNJ?rH`?m$uS_yF zKkYt0Y*6m6v$R%mTG)PDVm{X{7Q^I}K>rjN-r<Vfae;})=SP~8H@-<!Gij<NMai?Q z6_ORy&g8Zf@v+f*--U0xqA$zb9~|CXdaR~kFz<qTcSGgbm_{rrMw+uvqHmdQYk}dZ z-Tu3NF1ca$(XYsq^^RUQtZ7}RVA2YaPKXlMh9dRS2yQ*A-y~3BmKb*JbpMaBep|~l zew$A0RWcF?7vFmH#6Hwgrxa*+U%usGG~&?yj=rEnN$5Q|THdT_z}vGm%zJY=tDycy z+XOyn?{$_KDRH{vo1RcQR)}R#u3g5Zt>Uh~*?x=*G0t}=`}PD90jH}Vl&vPQp>!Hc zcN>SIr81fdwO9OwR`$$&2lL#Y-Ot<3tSpa=Okh^V=U%}tX8}~;E0pzvT-EdH*yq6~ zw;@AUO(h}bT;m0qwzT=)pO;f7sw1t_kwkZM_|E)SF|vex4-7a>jWNFskqyGoDtfXm z7<>ye=5ZY*X+6#rFWwUX%MLFjJIr$&r1n%E=F(TJYde_loaCo~pvCll%?@r{ou}%8 zrUeOy9%fl<TI!$d{ru+36fLNfOuX~OL55Vf9f11x-oac0R0uFx#(hWAYRBy@LE|+o zrY#hk0q(@Sj#TYJ4*|Xa=sxUVf;CmZC}=}_fp(<$^fvCn_NzD%2UpGk7nyBa)-Amw zi-7*%_CCm^`ba502M*5)RfiJpNITP(c-K-Rvs|2&$edNq4hP3BzqCW*q7nPi_JuOi zr?j!lbbx;3dmkO(W?W%N^sr5k=ViO<^(}8?qA%D<Yvml&hZMKdm1vfZwl*oVDZA$$ z{iw|%b>FY`$;rt(`#}uLbdCTp!MHNUw>{T)egrk42W;zq{?nIN+l?c88nUZRIYo=F z7O~;d9=A>w#cbs@3q9k?4icbV>=A#OT%w)su@+F~k6yX-NIaB!cSyORAsV5n0ST`% zN6w8FxR|M$)nDVp$oOXO5Zg^YmeNHFdCX=<O?JZ~)MfCqttJ+@m0aGjvPUuW0YWD0 zUmF3_dV<->&R9No$Tyl40jo0iar9TYcYE@eM2{6OJq(SibdR(hdv`D1KyBC8b+a7b zvq^-Y3JpT8d;t)wr(pne=nOR|r*)MIF~ZH<&3A$`S=PaIv-;iFg?<5<x@7JxA+Kkg zajvAr8+D;(f;Zt*pq#KG@q^TmRj1Q5pdF`yrk+I}Hee@pvzR`st=_1JAJTyq3oqa* z$`L;d?1;Uo+WT`(=&g)r1T?YenXiMvkQYMWL@Y1s1O0*Jys-LgOH@P^Y28zLD%#J9 zZEUF8?MW?Z_esb;3!UG12dY+5)xADMWqK3CI#6L^?C-MsEud+Gq!vfVEw`>USmLd( zyY{9`rW$31H(yPkZvUo<)_7(nFDD-$zBX~bBh6{D`OZ}3NRkrY#4dG4qbhsbbAWR2 zh{E?tK5?hk>78@IYV`zJAcpk7Wpkj^rwn+Z3ldl_KP4bx#%qlENS{5iF`#NOIGnat zpLA($qEU2m-?Epn14Tf8(d`<wu?d{WQe5stesVMQ5}$O2N~7@X$%x8Mm8aRtYW7$Z zF?=(l<tb3{eQGIrBj7TGoH`tT0lHcfJfAuXE4N%KQL3;<7ryf<C^cE5DPKR%0I8TO z4`@EQXY5%Eoo@F4c)2aH#iq;V*GO{HO}+9rH5mTbQ;y;ut@K8Q&8o7uhY_6FquUn% zz8nERwQTzB1jN_#r=-F?85Pj@;r^S~4wA4d<kHiC^c|4a1TI}!kjvn--why&<deH? z^%Ew&-GDjKWbc9Wj0bKjOmutxB@@bfZm=}eGcs>E;XQgC;0J31==X5+aG9#H+oo=G zO4l$D&Jp_}!?X%fm%C>7Rhewa{doX#UZ1NpcdTCM=KzqRP^ZMj3fQH)*dl4&AJ=>; z-VVDxaL95|-Kb&8AT$+AkI*e6wH<++<~}hWv&{$K1xeVb@vV%L@rt*E99X#B=YjFw z5=sE@?T=n@RDOfEMg)%%dH0cirUT)*$Pjz3oJ*nLU7<d6hIh?<AF{y7biuI3v1Dcv z(cC&LsVwtzm7x)6d~iE$E=hNqhI5wK9<`^JrrJBWpZV^`mUwmgQUgp;(mVM1HDNxP ztmmWk7b?hD6Y8@WSIT?833`v$mO`f(?Gn+j3T1c4fhz>#c&xt;ki;<{5Ojd;U0kDM z&CK@;O|*VaZcf&39MQ{iUju!~&{$%>hV#hGC#6CH=#{B)907u${9CQe2U!AK11kge z%97Sk^2-q*KnCw)HBkQ1U}n0<zv4X^dbJy|8BGy5;_-RAqsp?YHT9{DTryPtqgO>K zwwpD(vL*W1;R@^)dh)%p{D<{^L`sR<iMbxG251?_e(V{IGb;oldpD2O36dem+%<>O zab?F(xpC8quWM)nhVr^<e_MiJ4CHTN>_nfWRhM0$U$al`+3sAOVL9s?h7go<?nFVM zXOkM@Bkqp7M)rfF+n7;lHaRy1o$~v+%fWDTBoR1nxK{?^(pS2K3&=L904(dv%2zh0 zNusEyp+m9*kzi-M`T2cO+drHN4?Zum)z4H5Wd5sF-Q@<YLTbU0bb2UJ1iZj)sXJBu ziKxGScemsO1e1ZL1UUzWU*$Z=^li5xkO?XFbm)axut<YeqYw-Y;(aGHxxId-d_9Wp zO=$WjdDF9u*Cz|%D!8OFx7gB|x!hg{R~4GR(k!aUs>>UebvpyDxH-E^4e`DMUu}mf z6)PSVCjMFr;0qbILeystj9vdFS&;pps+l5)@Jo`ns{kWiX?9{^q~wl=bct=;;U0B3 z@@hG8W;(2e$<N6&i<q0(9m$}+km1C~a@DJAgKjd3yD=?*%T$)LyvWHo%dohr!-|CG z6ohRRx+m1a#5p{ND?RqgfQ~2_wIr4x=X3D}#5E(2Fha@v86)T63*ydQJo}M{{1BnJ z&vL3&X%T2^gijiUEu4y;aK4MsaChv<yyH|jVq5<KKj-=_)Q-n8<LQ<~r;gu^5ow>r zq#Nt3KSw?IOMLH~x(=@mS$uj(Ulpq4sgew2CmeFcG%5)rJ43-w?u8fT4U29N@6N~} zfUU5Ab^V+%1NwP{!nj8R>U3Q<YXs@@#@qF{8?#8~66Jx-4?*F&ul_jq{BPpT-|@5$ zxHv#pY&KcaU4X~J@O@qu{f&j4Ap+IVu?ImFY|xDs$!(&rU7{n9YGFte_p-x}9kQJG zq>0jCCrkzp)hQBWGT@<)s$QY%521LoP2<h;k=*U!pR%t_IO9#>l0K1byfXfS&b!Tc zTj)yR{A}u8QKX+nmNCe9?ZST4D<PlETH8p!GAnQ773Nf4VwgRjf7+}rl6~)r(*}Ya z!tMv@5+)drfNH>C3E_6=hbvdswlNSU@VQF6cpuJBE+azT=TBA)A&j!UmvT%*oOmmQ zl*cx8Wu@<J8;+InvVJi9y7MYnK4L69?o~T*_$jWwAV}O`HYbH-e&d|WY=vD#;Son# zJ=Pwft_;8=cVy(Z*57uN7~I>j@#)(}`CO7uKyn5YZBpZuMi<mRH&@QmQ-XTya1|PH z=dNaI07vQ2%{1gm&>yxT+9RD^o8B7TEq&w`93H|lwkHDM;FTjRxd&>KQ))n2Li?PA z+P4J?5OMEY<mAG)C!b7G(X3~T-0ifiUuBGJnGUZJH#dn-Pl41PA?1_HuiQ{iVFV7o z3RNEzyDSPva<zt-Kzv23V58%Ct^-(HIvnHg@gQjrT`)iEu)WA+v(lAnyqXAypA~}L zIV*{sWp`o$mZH?adR%860mnb*(-CS1GTt}Y=#3-FL3<v}xf`2v^Bo^u3H{JQ-HuGf z5w*mLx1p9o{Q~7)j)u;pj;PuCA|F*t1+;ia`Fz5g!sf$mBb)d-$=RmQ3KhSsh(O{F z>9=XoWdvcM2p8(TlE?}TQ$L;wS7bFEwf~*7hPw-PGL3<zPMzreR1T3XAfP9uqtcZi z!iO8**e#gcg1pE6Mt~BVS6Y^ZU<?^xqRJrVAv=)lT*`MXd$hkS(AUr&1}uMt=S^20 z>A8>SSgAL8^$;u#>znJyGI$~u1LT{Ij9d{hjW6eL(%!51hh{+QO%of-a9CbsgBu3@ z>=1_c1f%S)If+4?pUwCR)BAD^B>Z#VSMwgAE!p<RX&-c&=zMp+X=T7S=Xgx_L|0<5 zxq*AxR9b89)=7XadtE<SaQ5jz8uiicIKWjhr{=I80vgGzM(A-h+C|booe6+!h`XYj z2&pQyzVm2G%F`0EqVnx9&!4Q{0_dLa?b7#FZm=OB19R46ef^fgn8ZZrPSZ8^bnH{s zLY;FZ+OeA(n?9<kixAWHA_6+T0$9g3ik`!*y!R<+ffJ)fRmt&B&59hX@c@8dA_xY! zI~uPIPPvDL2D^t+Rrhf(^j?-~oLId1QvsJru}ylLC?Lcj-QcL@u_}+@01Fb3!@A!; z{2Ia7=-d|uwBU$xX!Qw7)tjA}p9PeKfTRGmn-<ARn{8TH!(ZL548lRqrIpCNx?Pf( zl6ZC&*bC>BSQ=5aDHFe82;c>(a>pQP7xCG=+6!8s>ey2}H4sl~TbJC6K~B~SQC(Z? zl>oUcB&8J$q&=CvYEau^L(NY|UglW;K@#5}F$tu|GnQAR-<h2gb%~<2DJvnkOi#k= zAZA4V!aP4{k<*ERj{)&^Tx9T!5ghacy!uK&j6X(pvoKi|Sk5*{5{B408ZNQ26M<aB z<V>#Wruri~uk!Wc){2ewESY*>u}jp6cOwM>5I#U*oQ9D1<@Xh45AHU0#I<Y4EKODB zgC?$YF@vD$4-qnpXSW%{Dh_Xt7PYQtGlTju6R{Tf&sOs?+IU=%xNid8LAre!9s!_W z+sKpa1086mC+SiLp;J%ff(p;5mW)Tl6II>%#3<_wvimCIceH3m0FW`Rz5w<$-Lyy_ zRT*+RgL57c_64F_OOzoEB0P~*qI%29x>{R^g&8RP_=3j|_9HA2sLJHs-2{SfLtxub z-3R<Ly~g%1qtTrUqT9c6WIH3knY?!uX`CdkYXETWIVf@Lk&H*=N=L3qRGd7_pi;_C z1HV_V67LF;eB+f=ZiA)GSQ+GQtVg84<3<+;D(~U#QKrBuopph~m13nF@aupny`NJ^ z8@0a0;rB9@U(b_(l)f6nc5sI3VRbejlv}C*QlU8kUHTvWt^B0}v}6gNHq|&xJ2TvQ zOo4`rV7xzc69}DJQ<6R!^_}fcRcF304y@q0Vpq|kZ#|T7#JYh)*_A>n!M|nj-OAmt z;`^(m-jHUzH@?blt*%aLeq)M&Ta~!>&S&z~`Ip7Z4vs(}u4{K2q`oU^)+$~6y<4cH zOJYRFTb<OK)eiDI7SR1v{mgDmE_34{ZY=t-5rdrmP=!98Rnt*$Fhlvo(g4?fralVb zT<aMPjmjG_@2?T&Yev_)-d-B30=yQ`u1KvRw;g9Rv@H;?3DC+3AEId@!tHsJ*UD)b z#={7%zM?YK)FDXUV+7Y&$Pp~&oQz|y^a$237?!eI&A*`C1LUaL_9USa7Pn?(TuDyi z&(lvXHhhwCH=XqtJIDnWGV(G8V8wZnHS^ovzD=Y*Sfq-Ym?aU5h7B$~yj=^e3|Mkq zG@9Qy$qI_==3$M{J>7Q*+%J7<;NGN2WN`S-1t|V&u!9Z}rD!raaSeB!Q0^hJ%u9Dd zx7&L^r@hKP#((;#p6Msfn$<l^WW?dE-fopa`ZL#)ur>R68;8#)S{A{j+8bv*7a}?e ztZG{)A(kNX{j|Fe2Io5D*TuW#DeH;%EEp?EzEza#415Pw#E%8B=Xq!z2I?51W`)$R zabg#HdD&zfVtFyDTEWVrdm<4`;?~KFtiK>a-$0)D)tf(o&{Z(CwC%M_`Q=GX@UXO@ zxC!03LD5r>s!(dwuGKj|(%^DC%dnUr4mu{nzsM{zpPvV+S*S!6--F*mzXgcnM>m$i zG$mP&l{d6)W<*=vB_saskCg>PU)wRs-HymEWu22Ce{5k{K?}Qb43p>D7H*%YMkkm5 zxn7MANj4byH>sHnS0Z4XkH5+seTyBf2<$xb@&dz|g3xz?lqrE%$zDbrCx7?o=mie_ z{6LczAMVbpe|U?f;fUtMwB{IiMyY=sXth3spFM|GwRTP%8#xw_YbQJc{qG*z@~46N zRPLqG#jCkwfel}vgTA+}RgYwwod34{utX?P^P;q#)~BS0yrS#W8~(l&AZEhZdz#uX znM}$GG}j})H~wTN7mW>cp3iE~ZVjn(U!Cs@GW42xuFZ7uHo|Y?&O&d|^>^hf6hTtD z(r%aUU`U>~CwuXUnYq4{59WF*nln{vC)QOjBrO=K<;W8!pQY!@z9Yn5Odh=Qh!I!9 zpK62QNgEzGl$19TMi#gxQR<2D2`9P2p~tGHI*SyuWEV!?71_tMM$P#e9s-3Q4mU?K zwNTr&B964Z05_(35iFPo%bu636;guJ#XwhxWr=$@MFAOxggL0G-Cg4<!&sg8&r+4x z+FB|BmZytYv#*WW5p#vf8NezTCQDzTjgP)N6&ZU|q_i#B#&td>Dq*wb)AjR7^baT( zrWvd@jaxbehr9r=BL{^iu5a#ck^3YhsyTtoKck^|kmq5u&N_Ci!#C4e_>jP(2M&XD z#b=nI>PXGq7XE5{{Zo6xvcQ0)6<L&D#FK^MCo)MXu_HkV*~3m!U5*Ne4)A=??{4L- z4U{}W7DmUNf}biaE=}JYiIKT2RVZ}?y*tqh?40fl2|Zoza>=ls%33=FKk({Ax2j}y zf2m~hsgUk@)zimU(f1E$Sy8t-?mAt+UO%@}?_yF(D*y&(=~p}QzUICSjTb5Fi9Idu zIq_3z`{Nr;nOYoP43yI?A3!iLa$zj&$>$4*`JE?6Sy423=L|%%?{p-EJff-c8N2ap zq+sLTae2nP;Q_o(-c1dJzvl$z+h*F$<m1Qmx{D>J+fKi+*!}2R42BF!m9VnXImid; zUC6tvxecOki|y&m3-^(xr@bdX+3-@xhM`N)O<G<?78R1QX>9xY5!y_r1O%gRfw!&O z^zH1L<11c(ZQiWUZW2)1G0;rA6J!T>G~;i#8c#n1IQ#S@UFYM!{qNvTmQ(njTXCcw z15mxg`tcga!L`T!y;}{xCZ_<6zV2#PKmXT0=>AnQa**g?*cG<FU|#-5aG-~YcK|}4 z_`tC2@?ZR*FfJgtypediA?RN~_&f9bJ)!@1|8vnkP6P7R*5H$P^4C7-MF+)EP^+!z zXYT_%(dGAU<$Md!1xT~qbo%dodw~BFNdS=rGCAEiOZ~sy<blpmV2%1^1<<&<RPOMZ zzxF{2H|T&QRBGGNNyYDU{x86y(#w=bL6w&?q7x7B=*;f`?zho@u>}Cgx`^qX?7>dS zznF>y&~GMCV!G&o_Fw!UCUpRS!o)9z9r+99<vS7n?Tmid*8ZP$MlbJ1%x(^}WaTKj z9+3Cz)EqDQsjRb`31`<;r)>4V?kYjqxkp^EmT+bq^4v5Fs0b+3Ws}d$JwHp&z_RFR za{NM|!XU**+-{cVD0z9Inv_SLfoAco*SCy<j@i?JY%kmFNi;mN+Dq)Z_``Ggy)zBO zk=vcTZ4S=G^}fFT8^ru<GpoiNxfnzWHmP(b5zOD)-?o_J_^O0Pf#W23(1KX+>NfTJ zx0JIVC_sic<`bVzF!G0<(HJt5Uu&C#w3#BFD)A_9=OAa=-1`1JdfewA+s6BNiD)F3 zIeNb61yOEy`Ff>Pc1WXRB<|YLeUBQIm&|)`**cSc&cwz9uT}Q!gj7}vn*5vNYY*tR z)-2Hmoy=r`F<18TPBZWa*kDx94HnZq`8VkW;~JwDx(~ufP*JugRlGkpP{^yitw3dz zmgP;BO@5|d)6X&>egAJ8W2(~kl5YBd)#KwI!`~}ta5lA3(k^-kA~&Tudlymg6ba*K z696`7SpPI8Uh^moLeL(nSc6fVJwg_k6`d;k=QW_0Dj$RP)ox_SJ-)95Ub9ULy*_z4 z3~6%TtL<t@pbiFM$2wb*O8U^TgzXwUv2|LZriFYFKA&rN=~h}6BRQz6ZWh<fufGR9 zbw`w(fnPgS$>95Yd<Vndzx*Hkq>`_u8jRU9q<>QbHN><>_2h0C8wlL;`(CBSoyf9B z&AO!9PXk(7+P2vF>*x+GiuFDNwDkXk(TTK|mP!^wVeg2QE`kDWw;9POIu*ya@s!0m zUNEcX*G-e7M?sr$f|hshe-g254XQ{r|I}%6x%tn>7~=tC+XSD!{tv%cO^$Q&Y_q-A z;I;3k0Yas}MNEisZD^>^8lO`<9vZH$D%!0CdgxB`Wo0(Q?OH=~B&f#yYx^6MeDiok zZmy7f1?E2gqRM|To4?CbOUo$xv9lw)#k>j+2}PsH+}TF6WgiV+Z-4*mnjv!CDwMDE zz7(0r0;O)8+$=h_a6V8$n#!0}y8Q&Gb?V+x^Ykxsai#8Tq9X=8fVDh{oBw)-DrP=V zjq!VR`LUp_^fI7`5^rVst#ty)advV^Aa<R}vh~xlBj2CK6xjHWVS+A#u5gL#N-0yX z|29k}5nUn_N&!kQ^m{rVK?$7eLhpR?F{LUpj_2{eP_O@XzzXF@0Yk26)urUghxb-& z-1k_N)zb~_WcwZ>yp3uAsL^a>Vqwhak2^bkPPD&^D>E2GKF{xBwR(1U7uO=B%@yg} zeujyaZdOa3*Xk%41HWk9)l#{m4E!VM?>N4{+xK4NKOes-qxl%zE95_bo0JGqadBPY zf`Vox(3_0M-PbrqC<Uq6F2caz-Q8WEZV9qLwgRi9Tm1UgNo6iJoc#Lbsn?nQSpyrL z4{85e3-G;@_+GWXH-mq^8Zc4izyR2&N6CMnnm-#j6UihrL~EtsnylR;>7yLuhaP@a zOpP8GGm96o5+SKBD}v1J>qYc^0IBvret+d013x5Z*P`gZo$Y@Sw*(S|BUZ|w{*&o% zPyxN+w(nM~!2)3ffY$!f09pq$!x!2O^3}wcfc|v<e-immzFke&AI%L1amSx+rAkIq z7uoJ+Rm`*eJ(>j~DRX>bTlbSFK)&y8uu}L7DS+N!W@|Do0?3zv&ss^MY`GhyMfM}} z_Rph490P2_p~$-SZ}I$Z1>YCc-{Sdab@^X1`dd7Ii|5B7@o(+<zg2r4A-21$=QpB! z*tMdDE>TT8OJVG7l7Q$)q}})m?e`$zqPfqju)c1B08`<%Pw9*ATT>LftUc;z-Z8c) z=G}H2$>LXbgLTW!2Wdd8DeJPYFpn7Ws4~g_sbpzycQ>}pS@214)=F#E=*oHw1P-b( z!e1QErfe}v8kroj`P6AC&HFve{1^BCAMpqCGQcbIb9>l-1tI~n<qQvre)PzL(Vlim zAf~cPDl_N&{x;(&`yt=T){OCUkb-8nETRzU1=gv|eKt^2V)^NVsO9saaCL|q!n86q z+CYANP|S)&>g#g(sGz=(rm2&^Q)U$l>K>tT(5hE0erZ{`uHL5@5jH3Z<d!|GJMD}| z4fBmFzm+zS{1uD@9~*dbrxhNy9X_P9sZeVXQ|yx}=AO#0&nE4z@3S$ZL&WboU$tlm z{jvA{j_(H!kxMjJgOL!PAo?O+g-=E}yOVizv$bLq6;*?t{N0@a#W#jL)@}51C(6Vo zs+*7Vz7Pm%i@-jub(@wmGQ9CUF~S@LBBq6=IUs7g-nJnPkQir1GdHzD24-)sBO606 z@~=#@OYkp;j|K_=YY~Su5~8nd_dc>pmC&<qQCj>=I)^FKtffu(np+-yLPE_*;`5{F zim3F3Y(%w~I=3b>;_1o7j6rNLJFKG|B_6kRn0g-JXi%75ev<dci1$BDE)X$e350;1 zch(4e-??o!0o82XtV)&9&&6^2;W#K<!|eIhmf;wQ?5Cc2NtynR#!0;^6>l&S@UNrV zvBevkI#%cj1n(2KOvBrPa>JSbA8YR!)#TcBjYbqvQQ3+Vk)k3fy%%Xg5m1mOy`%Il z(g_4q5K)SX^b!zhp@iN-2#SF8P9St5oqz#CAR*-3?!BM$z2p4*-sk)cgOTLUb*;J9 zoO7*}3Qzi(C~WN3;h5iOeB#_JR?j_>R-4*jqIvU6Su_5DXHq{$4huD7R`N!K3D|T_ z?9kwvoQJG6!^KdYyDuC_>!FUnI`m*Fd9EWWlF>nPVR&OS)H<atOUgO>BDd1!cv<t& z&U-<th7XpGardvudJKQ!1E(!f_SVYi=y#CTDX;$X?Npmv%kxrd2>Ng9xKLk-(Q1AI zJL&1k{UsKByG2f2&2A>e5t5Eto3$a^!C{qKMZr%GP8u7F2eRrjpRtN-D0s;jnC?7f zBveY_IQ8_`n?HBJ%P*<u%!!EXqF|e7km>+_(fu;WB@xgR@UZ-AP4wO(W=?DNmVPnm z)BX8+S{R(r-DFGPXg7&Yc-b@=tAWaFD)u^}>-(&^SXiAH!<*5*n#Aq7+ha42({^66 zijuoaNj(E|f~MtG#a^$^{pXAP@6S3=<*kQ>?_#*eq--Z%u|ijE^a96(H+NWL_0br% z%~8m;_%zIWdZ+P$FpiQZA9kV5s7|qx&df5vw4haWg~>!Xhs2G@{~k<do$MQEWdgBe z$(b*s)+jr94rOu`?x`Nqg^-3gV(7?9lX@F2E~m~PZ|`zhgw8i-mm55gYQj{e%d6En z6Mbd&;yzlmgysh$z{kI9cb0V&%%pf<vQzwVY6tIFMZUbEXZ-3Kv~cMXFs2~^SkL5L zC*`6K_TQWj5eveU>j@kb;a9Y^I*)>@jS3#GeSSBI2v-PvsX}&1KBT6+Uxu3zo_S&N zum7hewQFY7p%FhElW^d!XU%4E4{=Q<hWo9(x=RJLfQMnpTT%mD>>-6(tWExHxrubm z&-t{}-v~>IC3qN`oK!Ta+IwA3`^91%|27$ITi~F!ErOTk;;3GyjwR+^1_fDr&PXXc z21%#w=HC7c%oYF*iWE37UIMw`Zv2mvP*8I{ZI~D|8oA^}{7bcjO&CR3$dd4_i$$+L z<=obTnEJ1eYWd3nBtUxXfB#df{8bS$2SeV2;F32-D(09bw}Y%<9dJv2SYj&=vLB9* z)zMvX`_)&#aqlimu!zZ&p3Ts4&&T}@z`Nn*gE$>?|5O~^R(#L8K*c}7u!rf$`rD-; zg&mFe4;I4TL={q8xwzu~Y9012)6Y7Ztc6ZwnJ_#5+%JWedyRrxl_C4Z6kk;DU5-IC zLLqQ#o)C(kLF(~p#QK~gY6Bw-WMy^x((5HC-Py`Wt<Mita=b@>$~|FO)CA>pjyzQV z2SdGrU%oA3M@a@|EN{wt)~}k$!US2m_`vAL3eU;!ShvC6=<(8rq9U7Ptpcl=pw`b| zjoFK!(0~r7zA68X^HpG_h4Rk~ey=}Q{Q0e>_&~p#EP6AT`@D~$Nu<c(GKH4&AmKE= zlKuypf;UC`%PRSe@7!tKXSlBWz}A)xo^l%@+afz^)9!5suBY5d6v?<49gVb}eFtg< zfx#?0OwXGb>KQ)VJ9inBdXN9RY1?lgifb``60lAnJvZJmxp<-`<lC?%47s}^cE^3Z zwEJUQ^=EfF5K2a>=D$WPyZneT%JKABY)0+k+Yo4VC-hoRh^*0WH+`m;(1Ay4cY=j0 z7*lKoy|86AByel+%%S9cy19b@glrblEm?++&XmckVDn{K7S`9<%A~2I-qASXPhMl; zxVY6~RYKnNR|Mj5{R_~1A*>(6W-B`0{{BWxflM(-)gJb|Q`fq8CqZc^$0n?u^}fs4 zJy4GEr<#AX`_{7C;*c?P$il|Va-5uKrXi1txwf(PuYgzbq08`)z8Scqrdr=_7zYa` z(o1I3@eJtkp|2Xqu3MvA>kn`~+Li-)D|eGh+!v_{shm`_`PVc^V3WFU9s{U<;~-}X zVLi}{Nx+m2mV_U{Z(K-Uo#YR^bH`hS-l?t(^S}mKprd)wwRO0iyz%{Ry@!UZYdLqH z1zfe?YG>ecS1B_$S3X|z^_b^SVK<C#5D#kIN`kvRpNbd!bUUGn-l3A@T~oh259Xju z=~?*fhnTsCzWngbTc8!7YN$tjv^a2V2%%HXQf`C5XNznuEO+d7H$&<Q8dg-y+*IJ# zVEbOa-pOS-MqSySsrq>*3UC43ky^;}IdJ<nJQLONwfpWHkm#m~A(QmuV=>Kxx0oF- z00(M9BUoh~f^yV9NdMOkh<W2b7@mKnhBVW`ye{dTLCtP~6vSi4L>K)MG%DuWMr2nh zui1Kc#boXj5E4vGBhWDI_a7=;{9%pe+83>*5lk(4H5y80?ZqBixE<Ci0JvKK;7)pv zq`W9wAHd+vfX0aK6A|$wuU_|=rdlFt&azKHR}l1kdp0bj4k@y?on#sU-{563Cw~MS zbWe0S{-KoTlP@<wjx5ULpEB+%N|#2xWBa+hbF9|(#n}DFIj)3eCmSZ1U&0a9<EbeS z2#-Dj0o0M#l<yB2^p%t$0s8GS_swbE`bc6vLp{WKqu@%g*B+?VmItEYDQGOUy-Ny1 z`VrQR{fno>yC|~D(7k~<_X*pQL}5dIOIhk966V#Db-PQ_H1Fov?yjB;shE3T652-Q z6SNgF<);2V($@9G!42%K#6ndxdA4Vk{3cUjk7-d%{4(sgmhEit)Y=OmY2BMjR35Fd zigEy-O!?k63K?>?c<vJZ4we+F|3|DAXH?;QjR06tYnR96R-tF?)=E#1ovp6%2o~64 zOvKDW?0+c+Y!35;mr7<pce*r_<h*Ae%>3x+aKpnkYM?V3z*0^t%(G`kzyRdhhU!MR zQSmJxXh=xa#Qg7}|DVjzuJ%vR_{4~{M3I^;!YjT(8DYv6)(O(0A6JuQIU9<c3^8dd z*Vy`t=T1+Tw}NO6-c+N9ky;mNZ8policADQ2n`-9pNJ?wTqJ$7pf+m3QAJ&NrFHm5 z%>{+f8&<we7=xr|jmmDkPxF;K)rfngB7zy<43%(!HE}vUg=%tR6>vx}Tgn#5fUHKj z{mn_=?hLtv?qrcXB(~<s+Av=tYV3n{N{#CXD|L4OO0D)rOER1)GSfGZ@x+>4;28Bi zr#jI<@TL+mA=L?vJ*KI6lM)kS8MvtoTGX<xM#1m-cD1<o?ES2}5R-fN)W@1#nWL=E zjqNJiNKQQh-n+efj6*3X(%fmUXu)lA=b~PLM3=(Zlb~HT;T*21K)0#=ENs0uy2`N+ z4ovc1&4z3}`FOLQZ>ql1`4EAYb)mkAQ-E$pe)*DT+-&v%Zi;}9mstwBk8glGIj_BN z2G<xs7rr3;miNqAE(m@RWt#E!{$2@9;2u~X&evX+KR$BL618dmnl4ka*0_=_yUlle z=Aw!lx|3J)SOyI4Xs&S&tndCT>R2oh_YWibT<YA9_D3(nppxEY{xQ?!V%rf1Z{Lop zHVc~V&qGK8M!(<VgwtUpFuQo?l-o$|U!Dq~_Y~vb2x_v18(-|sr);np>K|{=l5dYq zZsp}#G!egE%my|Pmlz0s1ZTjn^yO2oohsJ%TA5QXkJNPE5o72pfU^yh^%GxTmVwAD zrt?!nTa{pnmQJYQy5^qp+teCcQ(pVeGSx7$e^KhXfZXf}^z3shh@RDW4B&w5PBhjL zV$oj-0hFS51|M(q^vY`136#9#5^D6Ijkcc&Lmoz6gk2axue5zuevj5-{aGF$<8AnQ z=kV9cUpp+!*9v36M|tiNK4hmJ0sNV>a#Nh+Rk0{Mw@6RX^XwmJbXLn1*LWh#FvWlK zS)|tTKtZ><@7h*+eX(EeX4fpl?{Vq)rZQrtQ>|9y;M4an_C}K70b@dmrd%7W#>u_q zuXhYD2*&&=TtAgF^Zar?Mbl}ZU8>Geyb&R12yES~DCveNM{{+Z8DmU{H?dQVIAV@m zjU%rqrrd})0fj2;lFux4EgzLWu&Jj1dfKVq!yBxmpfyQXHGvLf0kKa9R=iv3*_QUv zP`0<ad$L;aJ&i~#Ol^=?7Pp5db28PXfGOlNjsu_6&7~ORQ4H5SfAGAo_Znu_W>q9s z<~iFM3t0#cF?2LAbwb3?S-p=lM%8P&cCuL7d1$BrQ1Y`n@uEHQ<4Mp3?!eclMqWx< zH&p;h#<kbFYY4AQV3#_T%ryS;WVBVl96Fqb>w=1t=-aEEV&L!+tHu|>_C^1F42e)p zKUF$QN--LotqWHhou5H(+K16vx<gvVh&iV^GuR14?l^P*A4){+1hSiX*#}EtyY+VT zUiYUkr^!a^k`njCjfGdIKu!G326UinsKzIjqHl`*#zA4E7j4qfAdZD_lFm#H@1-Gl zBCy(t2|ZFakcx}~63bx@P|(gV0o3l65%sW8#B5}Yu$pJRx1%lA)a(@5et}c^F`L+% zhGytWR-d%f-WkZjw^F@jxA9WF#LW`p5=EKyvZq@w6q2TD-Sys`h<MK$Rz@m#EVt2@ zc~@r)ZbB$Rd=<RArJhY$J0HhIir?R?q;5V6I)7DC6~FDdv6FrYK7kCh<x)99^lVI4 zJ7c1GnhST9dia~NhoP$n=d!l91?|24$}D8|zU_7G2XJnLEA57%cHF|FqM{}d*TQHO zdqVW5v2-3S6tChAz0}WNaV3boVcrBKmtv{^bKO5*{hbl7iM?MU8tZP)MAYs>DVzp* z@eDquvTY5DeM_;DB^=tz5bfH2yfoBUn3#|!T2`oy$a3pdQ6h<m_8;)?IgZQ9qdzlr zGUhx!7H$2T@9*z+YSd|6c^7zezoEO?mGK?4slzj!U^O%Pm&^D&-u1&i?iByn=j~lH zZt#u+nPq>|6A=bOl^nZN6$+%V<c&gdU*VzhwL9*tmh7npx1G_ppSV`yF&V{AKKORT z;*dop-ON+Q`UB&RNqpCRKEN(<PPq58iX4iak$f6ve=!*~YZP2P_5H?32w=uFxwk@& zzXwH(m2U@}neV#-Vi&v2!km}F7FIB@kAL#ODibJ4NftACZ0YqiXibjXK$#A7aoB=s z)^#@UL6HIm?hFpR`RhxzwYViZTj6PTNjh&z0r=qU)*aisL#O!9gN~X<)Iz>O?IDd) zDQd*cqe(L1hXJKg?wZ`lU;t^dvzGG1$CxHgKn|uliAew6y6A-Zo0v)2Q!KYP&pT=q zN+I@dgV#pzmVWCNHRleT$9wy&Gq-%Vi<#jHRBLzeXB(F|U<Yc>>_Z(gP|-kh2f0dq zu^#_9r6siX%YjFRmi&$MV)i%im7UrC7CF5sVhBN#((CpFN$ArOhnU54Dj~g_>7drp ze$djT|2>cVPpvep-MXG5X?hP5Jz!;AQctU4u#Rmh$s`9BrT!A>h<<j3v9~n5qs}BE zeDV4z)1=n}Z;FqKl9uzmj2T_~8HxCIV7hW&)_7R?7F2fxn{a7@wAX1VeD;Ljd73-R zXHDCdY1PImbLP}b+fRwUNy(tr)m0Z_(1Ig=s(wzzTBE@d*KxsbX@|vgqG1vW7#5^o zfw-7DTa|Im2KA3{Z_fR^oMT)vjwOxnZ<F9#Xmp}Ev3@RjgXAc5g@Xg`ITet)(*0Q= zf3f|2hOL~NnI4nUa~P5bcB}KB%70MQKvClWc8Sh~(>7ejHu@sh(94qyeb<|h=yyu2 zCWqayH8FH_N*RHjsGkJLy9+7nWAHnPFxW`8z5RJcFf8vAAA;c%$I8u{H^&OML7sCh zBb<c>Xp_G6ZqC1QvJ?X+Ns`wnsm|d$x#!pdF5a(|1P!k8s!R{17XJKsr`E$KI)t?K zG#<YjW$U^=%Cy<vVa6d_iqKBEUmHTSpd8+<20v+kx1^kID)=vMmz+_e4)KdjgpD`P zd<*<MKChc(bsEjLvcL|SXn3w$rs%8QfixVE4DM@%%S4M}=TNZ$`xhG39M7#h9Q~EL zz3=v8r)_^Xt9uFK*?6*c<rhoYUH?fa)O_HLn@wW`l|t*A@?yH+H@2T)yFIi@qnnA- zvQ;+F&RS=<OGLZO7$_4O@uZvq<k;ZrI1lvgCf{Bws2K`9wP7^M4skh<DU-kCmYonN z(GtJ{l3&kI=4kxRs=yP@zWu@ch`KigUco~XOodAILMC2y#{O=zsjg4ARZNzkJ0I6p z!L$3^nB}J<qrPl><kPnuN;Br7uvcOa<gYThn`@{kDn_S7soNOV${jyX?}-*-Ga`ge z*0|B=Jr$f8A3<7l4Nx>c&%o6u!a&*g?tw0SHp0ppQPZq#{9Zo1g}H7K+>8$Hp82aa zLj)ua5Xdqx$$J_1MQ_n%Pu9I|l0$LdBIEi!*MGM=@4wIxpG|vekAE7vFk}FignoUM zck^;BQGF$vs6X>YcZK;h2)e5;H)C0rOm{@}=aalYb~|3HvTQY#oxbHT<je6BW)OR- z;i(V*@d8MMHdh@?eSZ*F(Td%U_nF+b)Y%&R5Ku>Q!>u+xFIT~$l>K>n{X}&@b_%bZ zYqmmJKn=&O>L|%@WTSrS^wUV1PH<@fN7BGbm6-*bus0EHwiq{H|ANuRzN4iqUprh9 zS!PuH>hy)p!gDO$X|#tw+S^@^Ux`VFk<S-Cy#!i~GykIVKP80!RbUW0ReDiSo4v-g z#E82VLK6FvNJT5=m<ynY`o@mkze4sd8Ax=`&`fu~+`f0Z9$njg{=PUJkI4mBukA>X zDrVMoW@UZLdGH-nG+MKyXEe?Ny7)=U`NCkJn4A%i;m>frG8a|;PK$;9!R5;!dFtyl zV25pPFbzn$W!y%^jZ5`ypwK$IzJHmZO$?g+B0F*I>!XpqCDXaol{ZY+zRG%9bkorD zuLcKu)`xI>^gPN=Hng4h14gA2#NUjabqsskCH+~7U)@@)SOU)9dMpU~O?=t5`OU9G z87A)|X<(?aIul9A0}7=iql7LWu_}YZmlVZfQ^ZQ&UtpZLl|~#lLdN}A5{;&8jdMtZ zR-j-L6J{5#sc7}2Ownmu*1P4NI7z+(@T<$Dp&`uPWb*)#(COQ|9jD)tppy9o$fvMV z6+k3#*=y0o_d(wByq4%V7<dR!kZHai({nYh+eI((H%^p8NYp%M7~VC$=Zsn=n8r+5 z;T@|m`sbIMXZ`Dd@>^XdySX1)*a6X=L-xS^Yrl7A&7ht?>jbIh<-Y9Ga<wab*Ug<e z=^=MZ*aFcvmpc%UEsNeZ20u)M6)k<GOs?Dc)7(;m``O!?xrs(qAMk-!aSz$8>cdo} zj76O&)=PzDg?@9JBFh+<UvWWaMv|W!a`rdNJ_(Hbu6^O%+DxarLQ?S4an`<BXtz?J zhl3DHzpt{iSYyJ=OQN=}dxDUU=1j&TVZ?V>e0&y@X+4u%TJBqd=66tQ5^`XzJV6$V zpbet3w~C&qzC2O)yxcd}Amo60VLw8}6bJba<7T6zv>=+IHX9~vRD0WoN!w<qB$vbZ zr&u_6s^|AO?~Qd8NXd+w+8jUJS^<G7v#rZE>6{GDm}5d!#{x)|<6-V$Fa7-tMPwp( zEkieTP7K;qr!Xpz&Y5M20r2U4m(41`0G#XIP%!MS%s&9B;xhl_?ZEVzPIr@{PK0*i z59Qz88-kXDtU+FpJ4@Wkd*t1zuZ?f&klfs~(djhuW~)kyC;h>pfZr-Rz!y=4rQ?Cp zsiUzpO>(W#t+r;ttU|Wo44-uOv}yC_mNmkQDtyB=(7_WTHht$e&dE|k#h6I&cGH_6 z!VJ!OFCVz88A~VNoxjyj$!@$vfc0h=q_VUDTW0_K)iOm}dXUA^hjBoyqlzV)$uPy^ zZ`IEGFML<`Up@GMTK$))j(PKYNVD3Z=2G}y|9{?o-}6|@!Lm0_r3a=$x{>K>o~8<j zmf+gTqhm&;=Q2><irmegEX(-|B0Vk-SGtRv`pQRST?og!PFY1H?BvE}&}zCw8O3TQ zi?f9MNc)UkNEGcVKR^k(o&_ld{jPu>5(CRD>+jiX#OV_*$B;U7v-WdUXh+(<3d~#Y zJ?9qgSvRvkdxI3QI&l3WAb0;bHlkJI!bXXC^;8mXCvlz~csMHi2h|Fp2Xj}z*%~=B z(L9e$4tJKG2yd9R`iQ;wlSd!dJc@yqM@2@i&h9g%k6p%kP9N0U;78_~olafpr~187 zRuXUF;bs3qi^wJK>RGDlBeDlJ2%Si5^ixNWUA2>rG<4ds``67h;sJqqedjl`6WY2- zDW@eY<aU)s)81|TT)2K5$CxRuBkmLRDooJj9Pi(v;Pb?Dp|!`UO(GK?SGWFTzT?J> zCH}Sd;a40Or+oe8PlEykQ*3RUr}d#{kGatQ3I-*&&ugMDbC(^R46m2Nvu~|T%=LmV zmXPWpeTE4}0$&GgO1+_;N4hriXz~o4bvTpFV<nFFZ?d*3iqrHbOA*lB+4rIOH4Zxw zuKBi!wImZkeU|KMDVdPm9DtmXQeK}zaU6C&tv<?G&fi;BGiDz1Zw|yg18!+`?netU z=}}naS_8R808v-#tv%YYljZC;(A&3sXd5zW+T&LDyy~DW3)C82P>LZjh@~1Ihvt7= zPw9ab@pOJr)wIu>kDynS4n~Q%P)1kByJ1rA4XJ|_E*GdT>eo~H3T4O63Ec@dspm=* zd<e2zKcjqM-S_;7Py)cD`EKhL#w&Zu$>hyVAz^~ECO=B6@Mab3y{U@<#5K>YvG;*B zl0BLLH|xR6pfE-yRyvOsJdxS8dTf>XE|&A_t_0?j2Q4YxU-~e&a}%@iI8=K|)K(Hb zw>PZ~x2&o;Bm()kanSdSuK3*^3eV7Me~yWshI1gl6%DTKp*uX%FFxp6zYl<~dx7TD z3vCAROM<EX2{!VGCyAZ>ijjBmiW^-TeZ7)MU2fAjCjLe#2Urpy)Hv^5&BIwLg9cNh zYJ^QX2A+k8SXiL!*5dS@K4G*0AN{V@NJw)DINa$`Cc0oYo<_vu<in3&DFm!P0|SD- zoKuYKf1S9O{w>wm4`!DT@S&(QL4IbZN~wcS>n*#5=0sF{(rC5Lq|uDiz@(+L`-VVu z|5)IZVC&q#Q91zAu_pAp`O=R}_HkV;*gdS~wQak9lJn2Y9StqdhfLEYmrho%GK}2r zIaB){%)P$TpqnZ03W;A1|00>M-8k~qyaOonc;`3@PcmHWp5C2Wu$h5u&j^|bKU`Q? zz}9&dF8A3Mc}{ucDr%gWpKg?5F&brsF7z)numz7=wvEEavP4UW)H&5MTl7$KofFY} zXSbTFlrHa6)p8gRb4VN&@Gh}IDTr<;ZkdbPwv;YI6-I3OyFsmivsX*_<E}Mvwl(^$ zjIFgq_qj(gvJJDnUl!D6UHN@Au=mb?i12<opr#o^g10c5mL6zlKBaV)uKaIYf^dK0 zcdgW+4R+80e#GC;n+t>PR3a?!i(q}nJrte|EAN9^@-21OU*5I!M5ol0<d|*?Y`-{P zS?S|O+k#mHjIyq7vEN^r2w44rOp<wzHh21l%?lwjTBc5>Bw(JT1W)xM>i6B@aK0BA zw%+p34f+bO_u~r#;H7L9DLxyxOKi7|!|fZDjh+t_ne0QEWyOyvVIlUDH+KELgH!_* zrno~N5or*ytm)h@Au~&y>{(Ah^J&^21ywv6Cyf#0d+A3H%5EXU{zc{UkEdn2S>aBc zZD?#+Wr=6*xG&Pg6vNLqeKjP#8z`C;T53)a+oM6;OpQgK5<BGmGm`^mP_OsSftvpc zFsARkpci0f?E7oDAA?8<4(-<jSZTER?S^eTmH}tRf$5{|OERf4B9nFGG1r{4B=9q_ zMBwwxsK4@aZafFKZvLvZBvkaO@r6Kmd}jC29MUpW?N6-VTUSjI)gSZ_6c*IVpw&jD z^82%sEDLf({G@LQKR)cd;2UTW_9Pyp3afC=)IAHT>5IDkK8aABn*Bcc58I7POdWld zg0mGnTx}D88?+@$Z>+CQmL!BNBmk|}y_Y@zYyXPb4Lf2B8t5|rLtMjb+`j;w(@4(a z+!0gb;9kL9Y$~$5*f#nd0C54{h*}1t2aj7cp|pHQ0B+MIitSnsb_um#`0J(6kMV~G zWRue%4$lH7ThEZKyg0ON2~4O2Xr9-vPrR+SwwG3oMbjdZMX8SfrYW@zrsUcTl!4x~ z)@DUlcnf*ml0qT{ZWTecJxjEb1n>AdVFr9cp8`-<u&2hWbn|`~rKKD{<+&i8;179# zf{-2-r&F77HoqES{rZPH{V&A{^jxoxp)}8!tFkVf14@)H`}k^li&85>H60z@r_HIx zO|f%lD$*>kf)3ihHwxN(G5ch{iX{sCojVTz3`3KWANp#D*_Q`Cj#{Y?f7RWj|2IOl z{?!1$6naa(Yzf)#)*n9-qi<7WXp{&m<qJnY-gl2b5i!LeZMgKT(dyYnAma0vR?`2B zdfcErdD0WD`Pi&VPc6JY3Rf1EU&-;gC*_xee6lt539k&?j&botDB5DYIyc=^)Gm9Q zK$u$&^8?@!hBC7aCez%q!~doSlSEdx@%c2D-`)&;2*Y!413Aqen$?_RBF`uhpD(>i z$5h|@gtI}@UZv|<dfNov28l}xTXgnEZ#;Myc`>u)OM8Z%Tl-nd-wPASp0(Qj{_T7L zdQkavm~LR01LG^%^}y0=pMRMZ(xCbya#`XC*tIE*#_B1k+>uX@fPZ#%yUjMiEsFSH z<dd6`3M@=C(POlY5m1>fii+F|Bb<o1eP0y*Lx&R-G~erLoGB}zK2dauc{3N{EqrK^ zCwJ^P-YD<#b;qF^r5RQSEz2e^WH?N@nbtHwS0_7dI)J?*Wmdt`<<u}YgGxA^VNhY5 z_Z^WF5p1X9jb>@H^oEfS^{?}b>Yiw$6xLZZB?I5ix>3r;`4q?omN*Jv4@PTSUHfla zK+I#eZ|*-b?DsYhJ-wpgWWu$jE_?0d0RLES<$K_xgZIGzef|IA#R2l)KdS$vd%gR? zqH;Ql`uVN{?~iBQhP6wAa@}Wa?i|<_sm*opNgofbd(AmL_Q<RvQYVGI_mJ*JLJ(^@ zkhRoo5s*XAG*lyGQKX>`Axo-NJ}^+?=FKN1rid{ywCKoq*%S*aYw|DOByo`VuVFrA zl9hMXpAs%>%G<j%S!7$khqVvC5D*_F=?2P?(BM5)ITFT{(I#^r4>cp#PJ!L0FU<L# z*Yi6M@&Hmxsppjde`e9}d&GglrMTrOV!o4TzKrx{E7s3_wT#({&)ub3`!DyJkHL-A zcpk$%wtHsC8c~3-wid-^`$$^14ZqJH*E^sJkXB18D=T$3{&P#NSE@Sr#hPp@BgEu5 z>(Po=^WRJxShVq!K10m2gM#c<vjok5vc@O<{(ot1JODrF;3*kToX_r2j6s>PxM}jO zLL4&g_Ne2m>@HbOZ_I?!q~3>!t7xv`HBGf;@&+gp1yd6vztR``)sAJ4H;l}cEmDS< zdAx?dC_58Xqv$LSo~Z3wlvKLcERQ;l{lnxg>}!6L5LRg!_$tT%yI^=|Ak^1WP6x8L z$JKbz=>Nzn(1|b;ikK$<-HUp3Ahb>R;{?%(g?&^z+w>k54>y-gIP|p290f?(KCBxg zAwUV6)L(M3_Fa*E))&D~V(xItBRCz<J(jm84H8#58d$}*4}iydQFV4Z2W=w(hEik{ zic-AjsopC%6;EH%A1mNx3WH)$A(f4uD87Gve#Kje1m!&0BzW4&#cbuWbB2Z&L9y&A zHUOp6r{GOJ$a;gY^n`LLIDCF_8moe<9xor<MGNZ$WO{lD!EGUEC$U6v(C_|NQAGOz zm2TD#djrb2>{z=FNqWY~sYlwN9Gr4P+>z}!pxNgTD6=eNy9*0dHO_#J!YEh!Ec_p2 zBt)%0d{DzJY^xf!Rcyz<T;TVcP5a4ZE!xH-5kNpxvJx^amtgojY&-JY>M_uZLtXj6 z{a@#B)65kLMZFR(2s1k;>TrFGAZwoh?*wA$pcZ@Sve!kAaka6%2fLqQPP;~Op4zXB zvK|vlRSR$NiH6ACT>CjGZhR#6>)V+J2j$+(|6C{w)PPKJ*NzFeD+)vwJQ@(MAUA4h zgXRx+SBTvuRR4qDXwkyLC;8{jF)^C{9<pC1{;6W`@`^tPsH8o7y>{<>Q)Kid2RZ1G zrJ!;5VOsxB;P1+Qc=Bgzi)s0R`iT>1Gvr{LSCGw<6A|@to}T-L^<JJj8D!n6FkPBm z!E&FaOS1XFA!m}X`S&C2jD#6rXxei=rP_b!*ODw+OAXZxl6D_|&^F8d6`)BP93S5J zm$Z6lGoN7XOx!HA^jF$RHy8I?oas()2d>OGsFj<CR(4lWH^VauHD!`UO}t33Zlq*x zkzMl41MbyxgcKS0P+GUS(I!B}ik+Jp-$v&wkBnzv>i50j@OIyg>alO@$77<q)9r-7 zwHH5Rk~oi}55u%>K+i@6@Gu(VW8C{jyyq<MA!<Zmw-&qJUlNr0KCTB;N2{r3L|Z^5 zk;{5+J{QC!Vkw@{G6CstRw?%krf$!k({+SpRhsVxWPK#`LxR3r$6(Wt3T6Y;z`5eX zQpEbq!#JVkdefM=_aiAA39jSab|cs^!iX<%v`J%O)GyJ&oDO8z8C0`vN57<V*S1@t zwNK*6yH)P}UjMjGjDil(ASa@1V^FqON2<4H6D#`lRl;lTNRG*WBur)_eF>qVE{G|* zq3h3e5;S1bSUSbuoaQl=f3kXg@Pom=<iG&!LG?af77aee>a+AEVvfiNHHJ~Y{^+hc z;=jzqz9b-Gi=F2zZk|L$7rfEbbZuKuv+%crjWh5Jt&iOHyUVYkF3GU^qoQ&@03hsE zgP1fX7Jq@EzEkA;6UHKUxi<rXZLgf?lD0^rQj-J>`FGKy+-W!S>=&O{#_U|xY{i_2 z&^VYw!8`)aR*~~N1m1u`?7!`pkl*vo9^B%uotN=hbO_tUU#{*s+;u8`oHqO@06b63 zwWwYe+f_IbF`LSV{r_|k|KBs475D#$9Gy9+zgg{zCoWCB7Arnh497;Ja=n?yL_Mc| z;)CQ*KiLcd3Mu-fD%<#&xRIPFMHX%r`)o*An0k_^!&Ebs_y!l^cO0<05&7~jK!`l9 z39^Tklw>zg>U|HZg(;g3aDHdz@gD#9)}{7bcb=H7SB}*rT`914!mVw6MG!!BG4!xr zhMc!VXO=P~K>2ur7jA=sUmZ8iQH25xXs(AlNs?soi$G;XkmF)z&U?+k<c=wy!5)!J zs<UyGeqE;BFj@#mLxTwv8a6LpX5-2D@sQBj-kotf!E$%Q>)_9&WbzN5K0hk8j3do? zKvEJFK4Ggjx7ZikPP>o6bD0YC>H=|I)JWXB*x1pn8Az?~idPxcH>=Kj&Q<J5z7}5} zIjG6<&6R%#PQ3g~uOT{HVj#qnL62z}HoMS02_4XK2h9(P1-gIdu$14M{T5iX>G_D^ zpx^uu5h7ei??WBVYq2m9a^N|DfO+(3u>FiV9**(*@5i~ua%`F4_sdoBK_&S|l8(dw zX4()cqiNpew#V7FttXf7`b*sBqcIX8xw-~AVNC&_jDdkqPiAPd$^a#=OT*`og{hr3 zfj_zO{UK3wa3kr$cfWez!f8~$<tJa?F<E*g6K;W?14E@k?D|crk2j-BN`l+z1ZJ{> zQO~ngA%phc&uI=sx%Pbg%Tu27%i*<zskR$&FVN@-)j%VGRTG{rmYX1P|HuK;@^TfC zZIh*&>WO9SJfKzG1K5y0Fschm8nj<GtB$|B_0t{m+4Glby*Jc*8wwAyyj0y>@>{hN z)LN9v?ijX9beMvczmVx$-H$~*E-7ZNT`U#(>SsDYE7lsizPpi_a^Gk(YvbO_a*nLY zx;#Lg7=d<4fW)5;&SOu~R%Z{Zdt1?wn$>hsHS1#=I9(u!$7hEbm$^t(GxCBe{-CJk z+!^|_pyo?XUGMGp{6TgY*K0Kgt-;FHd2h+HhPuI3r(J&3Lu8yg1(fw$B3N5S#V3)Z z@mEV_J8as`gdr`rZ*KdW1Jb*=yG|+g8ce3|S<7i|`W_yo+(8u?{h4>&llee{*Qy_6 z{MQa*lQU*qM#)bGXE%*$>rn{L6PGo_f27~*`z)r(T4?EWUOVWIwgbC9u|Uzey*KDQ z)vEwZ_S&Gd!~x2S#)Vl6SEhRte<ve5A*rTXxT^2N#@B$>yRRfD_JE2YkgmuyW*s`Z z4Rm5i<G@S%T%<9D{?}rF&~RJ^Emyh#ihcXmsAQa!ehbhUh+U;jpA|_&)xMw-F*I2t zkzYp&tpiNHU2s0yTa)5Y-1q#WMm9@_PF%0`oa(UYWjhf8&>9xUoq__Qx-5d9O##U+ zF|>IqFi8JTJ%_=R9$Q19Y13qb`G1fxJ~tLDOtm=N;k$T0j_2VD1&JjIBdm9kl8#kz zKF6=rLuk~i%NQx=$A-0T#+T!i<qwLQRLC{Kvv5#rWY#7YrFru7`C3INbu5%c#EtRf z!heFE^Gh%(3j+`DPrE%e)~r*j#Ya_)INYWJ48$^{<;2#o^Tzs?MSYrWp$urS@|bC6 zW4%1RF2I`WB-_>~GMr0B%oC3>0&JCaY`*7%U{keCD&{PuEVu6y(foYU<?jBF#*j8s z7tMzaZ))$9jilTp4kafFvZk8TVm-_LOdA991L}VF<ThJ%DDL~+TDOP0w>A{swB0@r zlCFNW538Rsq!qv|j>yXGat#!-A~(GndUXh}T!S#LE|XQ&UkWZWbR@c1ci<_0g?47Y zWOR-XBQ%8T=^yY*2Nqs1b^P13NBh&1{eL=NZ?=v3oZs=4I~r(+**gQ`ocx=bAMlbT z7j6?fZ0joef5j^@vX1j0&R4LR`_A*sNMQDDE{6krE62*L*-ov7_mNPSlc~~SCLr`r zHgj_^=cz`ww(4!6^z`KFls7t7^18lOV*h$^qpMEzB1f^(q(}Iz@A8}{K@^N<5h07G z&Q?e<q$vJ@MuUet*_yQ8zFfA6d2$YP{sNQfY^68ws?*fP_1T)J;J!1K!YUy}{he0Y zJKS)Gf#Qh<c|0RJeb~?8?FKMq=dJ7Snd`%lZ;}gH9b)p_!Ff@y&N)blZQtdFTQFnb zfT4vdwMD*}B*f<}YBqZ=yz<92So2rbnOL+c;n{#`pJ<$VxvSyaM>IP8%Z*Z--9npi zz`Nt{$LXj2-@A0|q9VrbISSC@+uI+B^^z@p12Sc!=gQn}gzbbX7tV|D_U3%EEUBTr z_-ek~)9Jp}a{8Wbz2aWaOnSw#?QZ6!faeQZpHY1bLac);sA~#IdahO`W=(Ewa8T6V ztX>8-2mQ6XGb6|s>>0|_(PF`S3O7RRG`?;bp)e|3szUl~TJCXTHhuQiR4uu2M;i3I z^`%<KPVq{gj|za6fU7^cM}o8geh_}_%6P};JSa9M=HpODd=_%_tB)Fs(DD%{#}aL} zN=FQ}2d>^aNeX;|hSs4PIsozf;K?@IXxS98f?n^oBc@zAq@`2aiFofdx!9h;Qr_|C z5=V$Rsb<3i3ZdZRi2FZ=M3H|Sec8eL>bn+6f=SXFxHT^(0brmbBU@O$fT4;w1+o+4 z6+&p=5~bKwzNkIT#QoF;`5(n_dS^+<F;p}*&wDOqbSam@TuUHg=GL+T3sYB=FMy=) z-wNEG%|k(G1}UN>q3hQPyL(-m1ABjDM5so5sG6t6)OQj2e>>e;&F4Es3P*$cS$Dq@ zxTRO3$X%C}|79$NtKosXGUcgrM+(4aQv?#5EyeJ3Pk-SIJwRu8cr5zrLjoYoO@0*W zeW4LViT@~)H9Hj>0q5{OdfHNd_1h+3kMI!=E-1&2w{Qy{EMp+jA!C=S<0^{SrD{;7 z)ayFXFD7vC&4lm@1KZ8os5_z?llpx^Y!64@5c($rzFSa&E}sS^1LmW<Z^rpvY!pIu ztmB{l>kQh({zJO3WOXYm+E*{*73{MaVSaiy!Mvpv!yg=-z(mI7!FMnFKJ&HuPvjCB ze`YAF`uF@Y9v8;=db}EV<BD5&f37=2N9Q;L(s?gZv;B@9&9=`_g9oUBG~vq3CVyM> zUrzU)h&b6|{`C(%S;cOPuJ$*qda!m0l-e_AyYeR9pf!B*(Hq(-42`Kko7}!z$Do}w z)LdwzZ@1jLFNp`Imcn$oec^vf$fGeKL5T$&b#^A_S9zwj7U}yxnfI$RXv$wsS9>h% zbr}5Hj7FvWgWv|Dof8P%lgQ8KTbTdj1@H|$0i*%9yG@4+^{}%E_KS;G#GBDQ0e{Ru zvrskT>zcZhKQ^hnjM?IQo{H&?=fSjFSSdPcz=awV=4z)mBoL0Lo1z$g=e=`XpK|)V zVSKBq^%*35K<+p{C55_K<)Lx+5is{I?JQ3mFN#f=dDiL0i3q;x)2k6o0O?pcyZI+< z@F0P(@yy<StkRH;Vw<yixab?Q7^9i>=K0oiu<u97gH>X9D$s1!Aw0zYpO%;Z(c1QZ zWg3oPp)+AfYGkfq<6tdI#$nt5010MH#F`pyBYW=7^jC2?k8a`m_I*bbjK@a;lb<B_ z)(uAfTxIu%dS@kb)kZy*=eDHC8ILVCX7x8pi3%w(*FF8ySwI>o7~=<)#EvLv2yFla zQ7{LHorNWzRmAf|@S~^&>TjGFhjPd(>ON2dah+UUA1^Bt*hb;6ke?Y@G#@CUsPQ5W zUO(rL-R6$DA(ov9F#VKh&!-p5EM|%gyf0`=`Dy|62}AtLH$X*N1lelrDV}4#t($)1 z)gNGAVQ4u90}VE__)377`rVsWy&f8F3JD*XgMG!;x+@UF_c!k<WARr3r(W91T!xYX zU^T8y@i}kW3-qU`WbJ-5RK=y&hP$>#Y}~t=4J5GXM=dQ!FDfU!Nn3iwlxjVNxREnW z?6Mx8lSS&IPKH%JFMpSEXSt5=UtXyp=~TaMywOl@55B&6m5{z}g-(@pd|~nys84Eu zWSXW&>0@lClXAyciX<ryvNrvxmLpFDCn_2lA&{AKov{*1O8%&1&L)@ry9?Rp)<?=i zzpQcWFL}jL#8Q=y7t<;|dsUGKIH2?%3wYx@Klv~1WT;HFMSu%5**3*DuD*Qbep<$` zh0{C}n}%9^YjYshJkam~VB}QHBy!zDd65Zk;M7r~QxMDt(AGFB?4tP*^^QINR#RGj zVuWwe9Z^q3wA=^7l9=h~kDKr{3ZXmoVcBt+H+f?T9xh+sp`KDo*>Tf*9bAIH!}qsN z^~0-<c@9#Zaye+4pZ;jw8fA2)FUji3$f&rlXJw7FPTA<_6T>N}TS3&Jkgq^res~&s z`15^VrhDpF)ah9!ztexX$L^H6L{o5fNPU_GS(#0H89cW*mgSqhLQxu^GzQvaj%<Xk zPPg>4BgD*D6=?&8Yn9ccRW?l46Vi6#Rh-6y@^ahis}Sw;piBy0`%94}i6fpIN#l#V z2GBoOSK<fa-zSnLko^J5d)+k$Lul@IG~x1#*vB?)jP>uN_OZA7uR<Qyz=@0-ae-_d zZ?7S&osk$|!2w6Fb@LsSV4Q!YoiP!-_o2DNYebRzcscOPOy`ZruF3)0R!4((|CGO5 zzx)PLqM4LF$Ht@^E}=pxRNSa(4BE>k<mIW@Izu15#-51i8gK+RD`2k}&6zfZV|OLC z!~!wJiKl)mhi^p<A+<40orq?6)?@_ScQaABF1~O8S+qP6m!LOoXEyg4k;RqAaK6-4 zkw7$E`~lf|tIjfpcK&2~x%=QKZ7wDkHGZmSmasWOSYn_x#ryaw0Q(>B;x(9i^NYRB zvc;h<rsdoXLLH4@2m85dU)-bX2yHZoh*!Al)7WcRsja)nE%aa2vIh3k71N(+?VmzJ zf5`@n;A3uQ$G;b~@%8mVQ}<)^;%3B7pPvwQ>JO3fLJ^rhPWzQmfzGG|>nDl-`y~S} zZhY9tsUn}o>p)i8CU8x(QQ?J3@Aw#0G^w=utI#$?1iE*S&VWvgh!)$L6gv%!fKN^_ z`2j8vDLwnuY=%I~+KG`5N%-RL;x@41j@*mMsxPC6ldxQM_}Lrr*svLewDc80)!brO zVV~cOd%bt;it9CnPOJR^A_*P<n(w;J#gnBFh+XvyoN+XY<)}5pE`Q&qUe6AJlaaCk zo5wz_Cny~ixv%YKo9PMDyJA0Jw9xP@i&|izB<R}!r;mrunVEYG@j4VHZY6Qx*$5Rp zhKe2&2Ep!R@NW`WGlAQkPV^Hq47~OEAsy)xW=NCk<D0fPP6?$?s^2_ph-X2iTvn;E zA0wIg-My{#|1z}AWCa?p%ybTHUmSG{weWaijTqKPSH=cGtq!q|5(|C=wpenpemr%M z6|ycM5wcf4BxuoIDmV8o!@H$yIc-U5KwhNfpq+W+aoLwIH(U0WMsWE0x#GLf#j~C2 z$N*1VU;S+P<nGw*YG8Udo+!6iVyj&36l<ufq7pFWiJ1u5;Fj>j?gj01725B7UauIx z_xkh?p6%vZl}PMg*Ht4xFIk12&w!me)R~>eN@<L|b@6SQ#F%eW9xQy0O9X5<_+7M( z1v~SyaG9$wg)QJ+;{KZLuCE&K!0t1$B4X9bA^c9FB^Pl`E^{Y*_EuYliq$gADjXcA z4}Mw_>gCu9S9B*UO{an7E*p^;z7_6p;%oU|a)xfp`;*^haAGT4#?IlUpOZD~8EM8V z6AWNw`KHlxXG^ykZl2{=+G%ojdo>@pWx{?tPT*Z7Z+%RHiOG-1l({%}SejwsG;kAZ zPtq~1&++NbmV|H0R#;v^+(}q*7K?Ge-D1pqoN~p&7Bqj-kai8{6)wT$Oe(8?hu8*R z4})!vtPhf_jFSlYb4qNaKC92!ihjs)pXHaY?dN5=a5MS&5{G^5K5M+*W4%N&Z*->| z(^ae8U5pp>##ZXFm(CnBX`LsJ!C#xSvX=IKG1+-}ym$8-A}(G{g9sPHot|1+C(C5S zc*LBD=)AyrSq`?B^cnYxvK5zMn_(lC-T`b$<lh~>y3($zK2<J-FlJ$?3_8>t%C8VV zH#L4?@-YV+LO8}6dW=i8ZhDc`^5=ktS#xouj%Feqd^k=wc#^gx95Q6?1wQ&1jwZNq z)?{zQ%pi$xX`z%w7i*!==fUQ#&5~$^NMFiqSe|8P{2Ij}wyu_r9*BjRhh>cGv6eRG zSF6E6VAil2;nQ9tLLvU^&AM;xp47VlEkj)dNAQ7<$C#Inyt8X?u#u5T2Z9I2&Zg4H z|J&b=a!~>Y0mtswmMivLPH5-(@qKZTeY_;lqk4SeQJD?+7%E&+RD@Y6DCRf|@(?_9 zlJqj1tH?YUh7i&$F-MG&wdUDM5X6M9%S?umdv)W}$;T=WYYQriGrZ8K!@36Qev?2& zt!bq-&C{NCaz9RSyZN@VFsR}XUwQS?pF{h<+G3$vt6KiLd;J<HHP%`&DA$%EE3rnQ zXl|Fgb7$&ekGAHjaT%n6B1{0^iI)S`0jgK(+)=s|>@Hld@>b@;_S_6oMMn<HZ+hZf z990RwzG7=CR=!DY8>vs@ww;;Vt+_zCGj<VFs+TVoM))d^i$&z?*oF~n<yWQ|-R>Wa zW58#lGi32gdqzML<F6Ix?6fN@w!f)57a?m*Eo{*|$7}vr>Y5&@ohUbLwsJ5F*=E7m z?BaCBt!!VDPl5QU{71VV8y4TeJp5vB_5SV_5{;|#+~5Ju`1EM?&k_dI78@FV)-3Y? zfiAokUTe#w^jrVvS0TpBFCM27Xp|X#+_>Q><-cAdzX7m*6|{tKzu@WLJ+_7SUQGhq z*W1H)Gc1Q?yf?>CkotqeT5!xI-Z##*2!+2N_{-#*`sT(gE5}faBPTb1)tv$xTHt!Q z&w*&zx^#~^$nMGSvEcT~9vMAvzjKdNXKh<*o&7w}$7r!K;gYwaY^7%-kC&XIJFhYz z&Q@AlAAQa!_yMz_T&EHy@Q{uf=eWtyVYwjaK1FD8f{=(?V$znKSZ2DtdBwJ=P{G3! zcw*{3TDZ@1N~X*=8(MB^URX0=jyR}Ri|z<ikt)@#&hP12Y%PJAJ6{|K3*2T0*4tMc zI`Wk)u5Q5M3Ry*`RzuL0?sI^VFwgD#$;1v{u-T<(Yj80?P`}bcpSR{T{9485>1@0z z)iDk19V5ESGEZJU399yaNS1a2*{zJ1;dlx&St;j>DOcwvrdLGFIbld5hHx~@gqbP@ zfJb|GrDNRE|J@g_YXkG?vfjF}hcgFe#^#N)>9&(lhw0EA(~U?_`HcACdFulV1efk} zdo<HR5%hduOWFQ=+KPJ0#i(mD*$%UL<g&9iGy0%;y?w50Y+>Y|{%$CFQq}~1*>>zM z)DEFS2)Ct~WVN<l(D~wEY|cqQ%l)w5HjR#uT}c78E;lR2iPv|uJZ)^@<GT@ohCB;U zl0(QZms+vl-t5PE^T>K6E`&c4krVc%-7s$nRezkZ|3o9IetlFxg+M?%Jb`6+G4liq zLj!j`C7iwdFK@1!zR27D^nM_La!e-eIhpK)I4qttFl!*#lCSER*#8#`g+K7VEI1D; zg};->2a5gR8Y$s%QGx!F_36BdL{wMR&suYb2f67U{fe2~$kcvy6?>)T9mPphYapwB zrOt==ND(mtY}F!z#jl0*%Z%ipFVxy9!+~sIKgtuZyGiaG9WpLPn;uEq1TT##Fh9CK zCE7ecWuQMO*b+G8xYqb5pxTR}kF=(tlq>@5Q6k3trxy}`c_nnCcLGYuy=LWbxg&5y zN3IaqUMF<+yEYx6Dj2xl%|})5af511vvz3?vw<_z!c@tnD1{SmyP6V|_froR1#UZW z9;ci)fjNIn49EbYJoa(s!FB_FUvUw@ZF6UDU8RKvdBP9e7yk`^H62qqC@#+2r>|CS zbaKiDRTop;a!8c__2DEgbs%eS9!L^O&oc9O@N6}>X9e>^8n;_uvAg|>LQVeG%mImg zv+HVq2SbZbt%(SccO^Wb%KW|NP5o7Yb0H-YVE~|E3r~-qO|+a52MXUuDA(;!c63mX z$u!Z8I5*;k7M%>Y3*8ubo#(vLbOY~RPw5ab#MPy+7DU@Bg~KLt!&Cg-X7+z565`NC zH0!-_TtKYh{!ID3DJs;*^=L8I+y^h^yFU8p{sMw}bkS$EXm)5}im7mAoNeCpiOHpu zqqU?4pY9|7WgqItHr%c~xxFq$x#`<+R}3F;VZT6Zip?P}gwJv-EhM_%Z~J7wEg}+k zjYf1j+UsfxpVRK=gM{^ed%egA@ya;P3dLhywF}uFp=Yg}vmPNU)vXsZ^_b#$1MySW zd$3vbpyk-Adr|yZAx_wE#FUqte%51!@ZgD`2j8A*cFdPS)Jse@psXVUJ5`GfOKG<k zDSF_#p<&=4m@-h5_wx~*Hm~258Y-S`qO^T2#Px<NH*~FWPb0mj#kYR2Pu9C+)d_WX zFUBIh6BOq{c?A(x%vCJ`AiH57WB}K*?`zKO`zUg$6ztZ6-=qN*7PiMh;<M-@XBnIa zun*kzIrc3Vj;%BMie;_sE^?=hMd(ZC031>2jy_$t{g)iKuN9}#vqBeS_D1tgcXz71 zeMl&2o75i5!s9vo^{(_^pb5@^+_Ni#oPcktDpXGR+L!v{mTD&yi!FI)?J5hmw2SHy zq2E$!-O${eg^^7(Hfp<tjf+w7$Naa~U#yV<SH}iZ|97zY_kT&}tCj<8w~fi&aQHz^ zgD`8j5i5R*^+y1(j&Gd4>`Q60WIRx`6MjxF`W+zkxLJUNBW0j?6d6!XcSQ+s2<<ox zRWw2oT3T8+gD=+C)JVT0v#7&nQJ8DeRX2X*Yrn_M1kSx@0w0N!S%`5h>S1{~IXSb- z?^#9SmwHk<$1O>Z)j-!ak|O1W&3@0B)p?lvtzl(CNLZ)5+>kgK#2D_@uJ-p!;Da26 zpEZ^k(IKSXw#!I?4yy3e=GynDZH<-wEZ(#7)A}x&D8}-_r;-DtIofq<HPAN9E^deP z6GNT(Cmr6TH~F00*$f=C<Hb*_qq#cgx2FV}{5&$kz6nG4F=o50DGxs74_Ag|tj<*f z$(pBpq<qiQ7qj@hPsS3?29H8?CJHU1_w@J?JMX%Kc4w9dTf@UO+c`E|d7c|&8ddhH zyRo`sFE!_uLY+Go3hDp$f<s|@ch$R8^w(R-p+?EaT+Kz0r+e#Im2<MAx#RagwSNC4 z^(pdfz!co`Jbpv~TifN4P4wvkP%5m$0;#hT*!N2>SY6%kaE(+gkgIp`)H`flf_)v& zrPuYd3S_@ER&5jEgnE@AFgL{A<gs;~m)#oqjTL}Bn7Ly~&+%&i4Ef;BEc-$g>a&Ha ze8S>UFd?C_+TL*oq2}-#+h~{~Z#O@`S~+G?3IB3)E8IWC<Y}-c<GIC#muicKZ5qI2 z?0mwgr4-KFcP_>_Dd}pjlg`M!s3^kPy|!nQ-JgQoW~WmP>t4L}|5OP^;v*(<1LsyT zWe{M(@YCk1=TIe;a2sLxodLI_g7sUVisD}xT@7AlvWam;E7BaeH%mYv#ASOl>`Kfu z@UQj&7HM#({x`5Qc%GgE*NE;g+n;7K`5}Q$=M)kW%yS2lLBe;`$o#tk=n^nPWw%BL zm6#TX&JRUMTGo#LkCm7n{dA2@(7p~}0fwwwU-kdP-do2-nRfr<1BwVJBBeAcozfkO zbcxcbQqls_F(4{POE*Y&cMXz)z|f5-HIgGaG~avFU1y)qXP;-Eb@%uA<G26$x(BcO z+~<0qbKd8iE1)mYLGdulp4>O+fMqgO$0D3s?6xMF+N&RGsi<7GU+jH<KGWlHS7oS5 zS;~W(?$44}zzXB*#0`ZJRW)QhMkh7cci$nl%FEa($RtH@$V!JU?&=k1)11@a(X<?W zW7T~y{?>>%hi)!Q5KtktnMCa?~25Me(Gj9xx1$N!p0;;dzi{(qUMU78a;Gde!6} z-wYqi`$93{BK);pH->^_xb0@G-v$4=hp}i;nJ5E&HJAT_h*Lw+lYnz+p8yVFb4Pd$ zYmUCdql~z%M8d5dsyrnCyXGakH{%5N6gc6uQ2AEKa8vMn8!ziHlV?(TIrG*J+ArRK zVdrqH4M(%!Aq2$)X>Y9py;+xa`9>33&`pEVc-d+9>Efv^{|>|DFruK;Vhcp@#_9ql zcbBH3h#y&$V#Aqs`k$Bxi?hOr=ow{+?_bgy{UHE4b>QxKS+wwEe%!4sNurML>#N{u z_u*a}SU)uNP8F&A*x>kb;F8wgk=xyIB#a*x!oDDK_9oWp;X-E`P{&aawaJwIp@9F| zlULH9-7?;v?$O0ym|t<3Fxu(lssM<9$#-@bc|UYbusmqGY7Kuz)KW9RC5jhqyP<2T zLxux|;gQ}#N<Xfk_6_>LGMU91_Wig>P?LM7HJ!tjON$-XwXyunrI!mP6?$~?e_mdl zYA@KyX5Cu==3j)ZJQ0ke!yZL;thtmZc-tp_ha~D--w|NHPVX2HE)C{PoSG}s55P%s zPIpln%D1}?9PmXS7;kf#kA<(O!5(Rx>}9lndiK3pb(-wK`_nUkCY^yzUxyJZ%Z(Z} z#A+cw=EU0_XC9gTyI_O5r4*^q71@CT-V!23*7V~`<M2&W;cBudlJKQJEd!v0O}dXY zkox}27xuuJUM@iLdcQF5P=7&NRRm?eHd#aSRz@us89_J6cs$N?Hvs3IWX|}|C3*uk z(3QOL(OT0)A@dB1PXAl;eix6NC#iViUZ80JGux_Dt|?r1i?mSL`4&yT4*jl599h$i z%>p%94sBoS+Xg&kyyvC3r{@4S&j@b!0bC15Ebf2%Zj?FzwGGm>kXdQ-1Ic+(Ru5cs zp|%#TRwy}q<A;)|XTCaalO%LdnaZHA_#h78_zpxK50F$p98W(YxwQV$xZOzbhq0o( z;Ey5MyB^DVo!zF~?9)Hs0A}+aaQpxtP-p!I9H<ul4><k-$M1U8KL-w0M>M`))&l$= zhZvx!aCijGC`m2ljORSSqwe!Vr@+B}^a)Yu&s(4)ou^(fAQs!G9a)&0-BljG+auj{ z@%>`im7UmEWKlaR13z=kH+L{HB(EgofiR$hi%!XQdeaD|(bQ#>x_PLLx2_(<gbNC^ zPm&v#YGbxPrCN4<mhck4fxS9hV0yIG4F_W5oh=i-2(qXiYk6M5Ye@EV%&CLIE>I%; zABmJ>r5H%oeBAQ~n1U%#@1+uTHqb>3Y>h|s`+~fs2={uk`!`x{v;z%=|69ReCJ-Xb z4<7Qo#@pA#Q!ZmrifmYv95%fL(!c)t@rw&Djmsv(f|MTb`$v|zOPXy@)UGV@*!~3N zL_^m}5yw}pRO`SkQR~>%`M4bCDf^8X55kS<xB!Msr#*rHV-otv&jRUD+?qBMGjkdM zLAm!`v$?*f?A9@&Jd^hhE>nk^dfPiq@UV%j0vq%T^~%{8{GL5~mM>+gR-2p3l$RvP zgM-G$65qya#QkbM(|8kn&KU(hsE+H8aYsewkFk)W1E6yYB-Z=WS?;Qc=`P>gIFx`e zFaI^S=q)PEWnyAxO3imyi^yjQDuW*y9yxpv8jl(b0eK5!xm!=7ad=L3s*JtyD7P5o z#n!G0ex_bfN(vnCp>EleHMk4_)>O*m_V4<ZA8Pt{-|-+w9Bw7Z=hp(Xb!G=+e{g%? zgO?fm`c_6=am$p-a&vRDv-1OiE44MX)QR6~M78pSh!UP29x#tb4FLj^<0NpncT|6D zYB9{iebN6$uMSz0Lh4%`9c0ha5E}s`BwXVRgEaq6nE&`K<#)Ybo&(a6$`_tbSmIHI z4PrscYMB*(7Nkyh&5MXgrP5q2pM^DuD1&*ftp?r-G3oV#5%-3WychG2REr$PeM5zY zPJ;dPu^Qfus%64D#L^Yt3uGj9+f;bKfqQ<qYm?G-l~!pED<dj>xj^Q3L9Z%iQBCbN zU6p!7w6u$h<UwO;Dkl?j-t~QG$LaK=5sPamv;1esb&qt48fT<>Cs;@F)~!5-$9i}L zIM}I*@gx1Uit*bXdF3j*?9f3In=Ja@fKe5PyM4z(B0n6|)Ya9+z|O8L0g~^MODoT3 zISwb6FU!bfx=|xV%rcB;=7D8-=i{6KVP`}BGxa>UZN;nIwTTQc_N1EcX@%J!9X2-h z0Fb*F6v%0)r5l(Q^=MGb+9-krG}M7VpoOFl0{uKh`P#I*(?~Z;vj4}B_M6F#_ZH8i zIbly#!v~G!QeQ+<Xa?oAoR)&|YInOtl<P>`aTQ*pPH&H1%4Hz6qLnFh(=a%U(unBD zRU5wLWxSC0Xt)E-3#i7K6{-&O27tVe&eI@DbK&-Cn4n6lLAr?wv-oqTz%pyPiE{np zOZw&JeID#+Ui;$^sRHfefVzWdyRg}~ldu#1jNzgsscCGVpK<_awG+f0S`9Y)>~~uF zF*<z)mXaU$`Sev>6H%U=6;&rzK+%GC!nc{DYY>#kEiL6_Vq!`?0*-<{+}2bxF3<JP zR=|ACHjHQCft7ENqDDwFQ>cEqARIh@9ShBJT5!Vsh~6ccT*m{Rcg-Jg$*H4(2P0GE z3Z9H$^7CVXnWjuX2}hl3as0jL^plL!&WC$5=Dg5B>rYhF?@<y>AdF(oA0AX(d!OC7 zTj1X{uWW3*lbkyb&I@t7Ox?$i-YI5{Y(!y;;-cqM97QKse3l12kidvnIUR;13>x(F zK(daTt)+B~eoj_z*1I3)e3QcaAR!vj0hn(_F&A7WSij5}%A%^^F}HVnou}2iumQX# z8mZ;En@!m}_7cm>@?PS{7-4QYOE!V?V2x8*u%+{!fp+CnwHME;58xdp{iTBG!<E*= z@y21O!~NHw_hyx%cA>7dC7yGcXt(9XMm6F}g|D*t8BF83$KJbGG88SYj-Dq0vcGy% z<w^<U@e`L5|4SP32jt@pZdw*^YA5MoIICSLo+o_D3|xw*vkQB_{By?rJ8DXKefBJf z7r*@BU;ib5yG=1hmN~``ZFYX=^(dBys`@`DOrH$0?2R>X^Y0nG6yq$Ya`m{%_0RLp ze>35aY0%KTg3el9{d-0q2UMf8d!i%qC-nNC=>T^aP|cHi#(Uv!8NJ*RPz|fwX+aWd zxcSQ_nN${NpWL`b_A`mj?{f+5N<cMH4X5hLKL_sLnS>x3pq%?U<>I&2`yVuv-x=$F zYLrz6P|f=f;JlydQ2ftfzd!Mo!UtN(GJP+v{b7NAcdY*jJntx0KsCm2$S}dbF}pwg z6A)JcUq<t|<@cxlCuT$ZJu#q~QpC*P>gJ!?Q<-RW=EewH$R61rxN(^F`#ZbI$|~s9 zUr*dE6cKDsS$|QY2Myj>N_1_Dc{816|8R1#k!A~(U;I@jDPD#ILw;r227TEBTiL0b zpL(i2H>U#6iP<Qe@+11LsSKsvO!FlDJ0>$F0~?sjH$sqnBekiU57l*d_Et%~4S_{U z(A6m+DME)=CnADF&kuWI49MGPi8dyl%~r$4_cuO2%i!@S6tL7xs6F-itUFfuLQb3a ze<JbcpDfb@Q1(>PQO%<{g71;hcih+t7<5RilRo8#7hmJ?2FGi!K5L`3J#MjSzj%K! zQ}NRBDDAq4MIc_2;#+~g!Sjd*Ao1B;32r}{<u^H+k7=+|Bi9__DHJlxx;kDYuZ}HS zaNj1D^nP@{pEt!s`>|<AXRW$AL7!Owp=ND8OHynNe<oCiw2hhh(d7Dzjhg9zRE^Qy zC0ElEMB3;69KG$;DeC}Th~&>P{r|-REo*>CST)t4XKMUjPQ7hiLp15-DFs)#>Ct*# zofNFO@*=*Bd6MJGP&IfYmHX_Mn)kSmpY)tle2la1J~I!@c_3nth;rkVC~~=>UFAgd z%>GT!t+Cbe53!iI{uGB!J=MFLkqa9QZdqB!xZ^n*<RY~UbEHMR%)#tOi#0Jd`Q=J8 zR~qY_1hbe=IB$4v8tn*Ei5M!Za;2IcH0CnR9@Xjl4{UbvKX8WfTNj;>gcSTtQ|y2D zZ$MKJI1s$*30F??*&Pb-+`O}qr!DD;6I{#CPOvQ95g*<8E`-f&?d3U~#iw>U;w4>O zx!m;|k(cBLh67ob@d?<b=uMg9_cq;ZTUnu5J9G(+Zh_Ob@qrfXCy&*(kKeYI&!}Nu z48{=?5>6vsAd2Le50ifM(9A^<BDywt2ijb@akOBVrk3Z2Hgl-avkzb6qAnD+_AR%X zy}y^}JBWa-)>!G<&-OaBdpen!bsN-Q7pathumMGjmB7VJj-R)ve?f+~?s-5VFJ?{d z&gCAOwuVq9Q(zK11c@a!NcWyO2=jU?QRqUK$)<IAlv0qT(P6BwN8ETTc6MG%{t;v& zd|6>H0|ycGNixyC)Nc_FwAVZ-KO4@cTC|aUO=K3_SbYD&dV^X%18Yd|+GKhMc%!eo z`f+pq_Hno=oXGH{qw<Uma6V~Nhe-z?Jo$BHqG!J+N4|1aLN(*hmX7`>=b$D4$W-iO zt4ymaENriCX^2Gip0sTtUcEl9oj0cCTD;Q1HY%Dp;(0hwg7moTbLFk6S7x|G3gfw} zdI!KyzkICz`0kUyr^mQxUSMZCrG%4cje(t`rGR9=H0dh^PF7Te(UK4Ao{i;7I50fe z1a@(Rhj?HAFXHwen_Cya|HPPnT)cbIT$kAa_`LQSx9yNT<q5{3`{vyxo3)`Ps`csl z*K76mpiiYRttM%SJ<FN&_ls#>I#^Q;7VfE*vppXEIL_+}+>1vUPcc&uma2`4W}o7# zWM9^WI{<qp_#$8a<zg!`0FE4MgUs+Vups!+iacGWM1#lD7{jtkOrx0X(R?+$M^YfR zx%!&O+<I9@dIj<KIchxpNRKHEcqajpG}<dJ50=4mV>6H#{3-X<V3qn*md3-r?roSf z^eVw&;AbuNB#lM3APD5kOw7)Szb5dz<MJf!E>(#GdA)s6whicG9aUlADW9=tedPl! z;EH2T|5``C<CloQG$&?%BIC$@1m<vZMIJ6G`4vw`=Y~axo-;Ogv|QAL#Y|;|_eR3X zp=Nd4L8;cm$-~p<9D`b%mckpspVnwM`pOXl2vbU7e%GhDC+=1Zpf81{i|v!}g0Tl{ z%J3=X-Kzs0i7thJB|sXAZ)P@ZJ*+QtmVCO@$16qb5ZvIqqib`xy``^93~||BD<82n z^iR!p^L5_bkwiM)xyb!Cj#3-g-hOA=vT^F=KL(XQK8a0HjMShf@25uN)D+#98u(`` zVRJEWMCLw}<w_icjc)KM1s|F&(1D(;P52sYDG1j-FcWrO{><;JTEwc$KO2Pces(mZ zKC*C2Cz%po!qus3DNgx#&E9r251z#X)3<%#US29Jb+Y|x8&>8B2ez4&ZrrT__I=oX z5@GL9gtBYG>wCxTC;6WME04R^?hkGeD9wnpuUGd7TG_Z*I=XM2kgOEg_EqZ5UZD^2 zSJ4oQOo9R@T{Iz1h;ZcJ^F4O#^gJ`SX(*iuvx(bNPe3%SEFJQBJ`uk#R%>|RDS_rS z=P8gwr~1U>%#`btlI^DG@k)Z+?bG0corsIQOWS&f?ZzE}f%<xrqf3Y*9jbO<$*8jH z>PgWmDWAxJx<X7@xl;VV$|dNMsRZg$oPY79e{NR1d*sDI9~UbONT9pFn6!;pm4v&? zDH;g^n%M$RcBXGU8P%AZ5;^D?reBLteASZ+P3I%-K!bSlCT?-T+&QH#tw)vZL#oQT z4-8HoYs2?G>2y%_PTlZ0jkQP)mR=;vf?qk_{`gsS%(1~xT}{$`XORc(Ssq#9%}4Rh zE}x_~x_oJu-ZZ#6_{+jQA{q^V{W?7%jTEM*YZZcq<UHxpgwYWlhB&z}l{zUpG%wgR z2di8c(`<!P^l10PslFs&%Z#En;+@_>yQwrnamExl&mXXy)_f<ii3e+g?YRCTFP|1^ zjn+%jmOzJ<hp|rO7w>6nY0=Bv#1cL_blMFDmam#0jNpREM`}E}b=BjNCQEc4ZZD}e zh@J9-lM_6639tXvxzgAXQ1Y?%bc^Z_41w6%O^I2k2-}Y6m%#dXZkdu0brx@wl|{9l z@G1Et39%cLH2fjFr^rS049LdA-7#T*l!URXA<O-G@OT4*NAgRS4+!&vll5?^wrY;! z5geyedz{%lp{xwpLAecqle_Wgn1yD@<IzlNk=^c<fZ0|ZgKPrlDqz>bB%C$mvY1P1 z<_TOBVo2VgGxK?%L~w`=t4C;`4?6rDLEFKJ1=7{q`xYmQ^jEe6b^{)I2o{uODx3jv z<um~7oqRt)mS<&et(pQ@r)@>{Vof{CIP7No)(JoB$!2@%HjFHU@^Y4k`Q09J3rr9l zX2{hkkwOtq*wrbwymCcjV>QAd><d#zqDv;IRp38|=zsZNeRqMtdy&X;@fcCNyb)9D zELs1}^N%r<C2~Oc9cy-%__Gb7_d50ujkp(AY#{L}hl)IuqS=VdIPN`nK;f4T#_w+o zH5)IHe?ze*MQ!x+{vF6s|Mqb;;HTEhMybj*>rRgi#(8jOGN6Jh9tRbYwjWQG3I%}G z;U7cbV39)i)q?FK$wOQ}W>H9sAP+IPoax}?!K0py9uClxqvu*1)4nE|7Mem+HapG8 z)yFYZBA2<MBQt%YPLKK?57r7QlmJ5&_pZ&w1|agVWG%n=D*Vf*{yapzS#Ja0fVd=x zO#jZIjaWny%W>PMpxOb;4&cmulX(4j2#cs~&;2FuL8mpcIY_;HqR7#J;{DkVqhc~4 z4G!aDpR3fH=2j6JtzW3bl9I$+I`nN<meNKKNwR@G9<wlIAcOKB+yYwT;r2oXyN^ko zN3%TQosV<Rq)F6`tQ2gOK_HaTV)rNrs|C)1D8Gc$8xFWpN#cJ%3`8dT15Lh>x?Z8A zID)L>{mAVpi|AD<A6Ki$#v%&P9<+2Zl7R%@91{?KjUzOTB*Om$d+Yp{C*>KxJtW zB7HILp@+|&61kYbx|_X9Lpv#7y6Ke1ZcI>R0la#Lw3vj))vR|QrX)p>!Dh!|q?yQe z!EpGklZLzb-3!Zl6z8iBD(*wrN(@g6Ns4Bdk>Bk}o{b0@l<K%8w3B;(t_a!_La^@6 zDB{=x?3)Pm!5kGh{k)Bs{W2qxOnHdhNX3Vn>(=Nvw?Sai=0p`2OPNan(yV`^W@+Eq zy1lp2QWY$gP}6a4l*46YcFg9eY-zuT74!vIqTatX%d=9y9rKz@7X~(A4IVtb2mH@T z<mOpD`Ze;7;BnqLkx}ozs>JZiI1iA;m1<+S&8ow~9EU@vzw<Y;`@|<t<fOgR_B8(h z14Id=gi~%KFVBEXyV-;F3OxjIS(ZsJ=@lc0X^-AxmCZg2@!4FiD_#j9r!*}j>aEIY zB#Kny*qeP-Qd}-<bpW+lz5K!oXZh*jll|PiRV()N4k^SGQ_{)Xlm6V{IJ#4tfhqol zq@^YA9gOoMY>q%~X*;Vo{P0<Y#M%c}CzrsZC4!}m_hLK@Yyz&W=dw<EF_|A7Qi&ub z%}k+#Od*i#FHfso*JJBFJ-XlRO^kV)MFT4+oRYbj+Jly&Wf`sh^8SFf7l1cb_i*G6 zm2UxJJ*afT)Rgtru}uPDJT|svMCZJ7D6lHNgNo<6lGu~GQd};N+A(e4*<>0G!N#{l zN$M`Fst>|~vld&;z@D_n`<-QoKn@8v%i<5GA`t4vCmrS6?!a;jlC9hp^6*jUB`RW5 zD#52dJSTNV#uw^mXTBn*cvq0?7G&|uL)+dCI$#O@>%pjBX7+!kJAdj)A16@ixBhhK z`AKhZ?j@uBTvhVqwZ{5WFDb3Hf2AQq42HZT)IhhrV{^b?utm|u%{H*^xNUpPps`*) zkVKd7agkeAWq+l^Evfs$@L)6B!7UulW&7_;ZDjj9m)C%<?6R+t)2}zIom-hc*jwe_ zD&iVII;bn2)tu*!iUo(@NP@P<4ljL6ItXJ4>K_#e|B3~RqOAmxs-Ut<B=^`4*C{5Y zqJymlE73tKl9_)sLr#$d>IPHIRp429c-!SF5vq<0Yb1yyo=g?>!*2}hN{3HYaIlZ` zj(G$}yj`fQ4NLGD&tpr$7pA@YMuC)51-AyZ)JvHv8=W6%8*0LKZAX{V_%w@hbD5AV zR8v!%(qp3PRjimO!$d_6E?ELlnq1}cymxSNcz7xBeR}~Grf%KGeWwO;NSrXc2(WRa z*iy~-Y2$<2uI@$piL)E>yOSSv*W-o7l<HS9wvQHxL7M9NB#F=>eHhk_%2zYVC2s9* zz#b?=PKv*TwxalRRwZP}YFsdjnW7zjXlG*}$m{P)xaiP^Lmb_jl1C}u!2kp?7mB<Z zLZ}1i!5Vb~6%{8<uh^r*Ahw;-Q-t{ubP%3yMR_y<WE8OFzP3nXqW+y`a3(zbNfRRw zVj5~I4YEcK+cHYlj6+7qfnXCu{%h2Oin+GOjG5knI+&}fNs>GE3~r1)o88v62ew!r zttq$DpUWp3a9*}a4ye=j5KBA_3_yguZK%>NIt(Zi3p@otwo5v4qt<4)Ff#}UE1N;w zm;T~Tl=v1AP&0H#(3x`8eJNbBZHcI{U8g*rTMl>3)tDyeP!2x)pc_$1@jZOG?z}h2 zcO|lJ53-{GIZqWO1wk5W`1LmAudI``1PIzZ-3dp!o_1xq$ppb%<s-O;Q-Rs(v{)nI zTvoR-SoC2luk9qCl=Q7UbspIJF6KEQusfr5(!oreAwd03j5q7~mkOf?w^{_NLg?8i zs+7Ly*&U5^n0Ca16IJe~)nI^5c53!*n-keHw(54O6KCf=4vGv9zLY!7eV){p38CVs zcAN5?_zbXAt3*e*d-3&M$l?-!;3P`$ezS++VF*GR^nmLmERGZfB!4^^{e7R75(^Zo zEa}KzL(Nz;b@6=)U0En*zt?aq?W*T&637wITwIW_$zy0WB3}`>`xYo%*XbTUoq(;$ zcSxy(G%E&|(Q>~t27Lrl5svw}hKVX=nDcz92cN7euw^fe?bHdGeN^i0&H0$4AN=Be zd3bQA3oXdGY8f1<hC~+G*<OhW^U$v!Iwx!J0sDuGQ%jjd-KM!V-qp{RcLq;m&&`YY zKU#gKzoBC0qTmc{Lf!{9Xm*zYs%1NRVtirm6RB_BB{E`wrFXnZbM5dd5E|(|p1_>( zgP*SSY{O_)za0A7Pzi0X5E?J2aV!+H*}~HIH;z&lmi7&+;3Q5S_C1K(ppSH7xukz} z7e>1t2zJDqm-mKS%4UzSxaLwk^#*Q2dS6)C*KQ&=bB9_azsd>FXsz(Y4X~l$<<8oP zw=V%Ul0F*fZd)QmP<$x6RmrF5&fM$vai@HwD46uJ0T2-zqCAla;UzkC%+cxH7m2g! z4Tq!KhX`hP$3s4`s(wKT1(5Or=j;yhBJ-0D6ClpFPxA`^g)1W;hm$AGN*ft&nOU%S z9bj8=md(`W?I~buio@dRilJ2dXghAcfVvvd*Kz`Ta$=QA5lzBIAs52$1CY{}6M!^} zLUN`43Iw7=Rc~Tso9%@q7{3qkV&nd7KZd;FRA`bdV%*TKb`uJKPM8zI|D8KIDOpsd zKl0T-ekxp<!mqcf6CD)fDT2LHaWuNf9-yqdr8=>T+=H(-lV1lx204op4z6{VwPV4Z zc4CKD8wN*rkQw;by2N@vS9`1I4c9`hb-*P8t&g(V3Dd<P0ls|u!|KH`irGGuhO{q2 zzy@GX$IpFxyPsN?c@V=v>+a@C?rYGZbTK8!W60H!tU<wJ3rw2E4WBcQnnoxFc_Sm$ zcnp)vfPLLPuYi5sRRE|94?D;>PC5mU%uWQn_&K%uBp^9^u(Cdt(-Q$7=Q!CI=djl@ zOSDJEE*r4<U3Z65wEhgkX*@+VFA}S&_P<=`K%J@>!^#aGy?Qb-q$43R4_GiW<7qYe zSyz*<mF0eL`r;_ieL*zTFjTJe@#<HvdYv2Xeu_IWYVgr#wlt>fu?u0PRpLvWLW)Nk z$#PVY`TjKla;fF@oCl68c)&i;Y~?DG!OUEyN5H<*?A%;`(P^POlOq@_i8}aKtAX}h zy@oDv!Sz(rXh)Uu*SkF?-gJL?rMk}&AYr_d1)b1V6M%uIwJR%0fRKGHPtVz2j#7i@ z{B!c=iLNU{$W)s21W{GiVWh{LhxPdm3OfHP&+FYI0|a-Ia;=)U<<c;<jqgYw41)zN zQNbt$X@E#SV&R7oAV2#O%cgxN9G1Cu3CI_~f^H$m#-RQ&&tG1+0a`oa@`ON0#di|9 z9){O6Nd>0wO}<$s^%3w@v(Gsu+x=46`fG|E0#`?AMfeOoZCRLe{6>ihJ4C`^Z9oUn z;y~B!bMfBDLkXSiRO7#;v3deD+g5BUBrA1`t7!_sdp*?;yQTt1oRD$9zUAc|AQS~2 znEmCo7N7v(9mNFLNXGh+_KH40IFk}<Xifx<8=Or${TcLCC_~sZ<0=J<vn`%3jnSQZ z3cs5CAxC3XAm8mNo27j4@5kPsz!oPS(6acsZL9z0?bJFzd1<_BN&4UX%}@OFkMO_i zO8(LO?~|{8VDk@b{zNtSAK3i=0yam$DW7MQ%$N1{_9RMD(ADqW5`V3qE?1(G?(=M$ zNl!d3B?bMN>Me1+r3P)#>s;<zp&#P2{jk+7k0dRrpNJ{%(g}4c_4KaxuAXduIMjDq zq!HLpS`DLzCBUfv>?yYY>B!q_=R-j^&$9Sm|GQrB{iOYm>RxBPtQW>Eq5brYzW;Ur z;2H}V&{cF|$)CQ-=KDd_px+Vr39~r5c$M9%?|;(pPhK@3ejc3$bO9|O^(V*qk78C6 zQKO~k2<%Gy-WQAiH9t_FMZ*WZ^paHhxAXWrTK{ikn8FSP^%amGe!GSI@549VGY}R? zqA8W(XHT5|Pg7)#Ap`oX9(?>Ckon)}=zksR{4Ky%uRTy9{0k=Ge|^C(5>^4we#+e8 z`FBJ6Ikh-?6J9Zc|9{f(PYU9t13<er(opR0hW2edYP1LEH3=pE8k79pQJM+>Xis;Q zQ2pJ|{wECmViW%*bpDUSkljO3(O=dA{Ph_5CnWvJsP+GGNMdV8)Y;LtvwJOnyEFV( zsm~J1gws8Eoy{y>PwJp}`vpog@MA=qO^GpQV+ufZ$`A3Vak0-__eHUWrfW_1yj5pW z(Us2Ytr_Uk&HIQ_&b&^iMjypynwdirHt?`OEt63y4&{3fA}zrx!#7pW{U((8VS585 z<j#$I&zyOftU*lPKSU5`BBaKZdlA%2i}ER<T^N2o_x3L~E&O<R=Z+U_)vws@F3QXC z{2qDF2lyxuF21?5v36@1<#T2F(O(Do%79{?StnIDMH+z_vt?@tQU9+v^{cZ3cepQ8 zZ<yor+{n6x;*<eW>*sU(Ul>OEc|d`L{eikaR3jdN^(BGA_~LB`lsAi0&jPRZ>0ai# zL_2%26YDoW8F_!{kO25)&E-^kU*-+76#~^hH+^w@3@KCjd(6KT4<Fq&59g{5=^WVI z@)LLin9^6f^D(F)6Hn8NpP~3N?QdRTjD?4pk-s}{{^Mz?1faXmk1@?r6c0j|r4Mzt z4Rs0XmXNI-SyVtB_#<QJHgZ-Ck8ro68bn1uC5v<>Bkp){;EM133(-f%IXXRj`TW)C zY$=-Sp>PnK#oHT7f4w#D7Kh4tR1{pN6(=WT)C&F${`#4KhXt$>4L^i^qy-48X)UrG z`~xK*bnCNW*Kj%WI)w@OF1CxJ%8JM9ZR7{c^wr7{`GYe8KAMWanWbV^=0n6zUyGgA zFq|GcEu9ju(RfVr-#`U5wU_u)oX5`~+e?F;JEQuvBt;PQ!iHUQ>FZ70v%FXUES^@0 zRG_eP>I!T?vm;TkS`-z?G@!TM%BfnbvHNxMyx$>FA)pf+i24EjjCh^=@9H0cx9*-C z9H#2l-}&(TbG=YD5sFNVI@AMS)xLdFgMXz>JN{&E%LX<N1|JcmY22wmc`edj!|s1< z4;<~X;xo0QImQt|N^Dno9VUee<hw{9_ouR;yySfPSpdipeg3*<etjxljuhF7^|r^4 zdB78=9zg%(@6+wdd5Ly_wS5Ei_0+oPpMsG}FN~6Ho}+p90KDMuemV%>gw0$D)Shx2 z+zDeeJlFZe!BsYmk!BoqRHS%M&OgRnnz?ckZVx_U6-z!I+}l04pz%IYi&N-P=f`jm zevw@~Y8oNVjf00NX}@xp?^i7Yqxd}s+1{m575H)WjJWxgj{-s!GibVEzkVACJx7@u z-!?Soop8jElbCHA3V2$>#A)WPIRNC2W%}avSysQ}{VFk}zHf}`Mk<xg*oNym^{8<; zs;OQ<g)*QT0Sw>_=~VZ_7Oj26EbS{D7wR-ttOqwc7hY+EmthF-p}hY5b0o-fuP*#X zfg^y6d(?oD^FvT^Zfsx@f(mXYqN<BJ4E>XzPxrxovTv9^AkhsMg6rck<YcJw+{Qm| zDr}S#17s0Aw>Gbg1coNvS`$0f54G_;O5RXeC$GY9r2`YFoI%x|I5i!{c1BC*Ampk8 zWM!9ZVZx#?irXxI6qE9F?Re8q!?1Kbha2TPa<l<&qsAw8CFBRL#dDGFJF=%&62((% z0tS5kjJ-4J+x!H*Tib6fVsKodU5<;w{>|iqyq~m5ESdpmlBh~BC3f3_fDd-+k33Io zYSuDW7It;G+WLm?s-X@i4)T6Xu(uIyzqvIoM!R*9gyuafpP$Jwmpv%+74%$8%0z2k z|47&nCaRjA5dpzY-QNxc0Mw!P01LS%CvQjb<7q!llf5H%#W{!H#DsLbCuEqh4u+I+ z_sa2MC;=1XEpwiRmvS?o01I@Z|Mq3UOp$<NqMGa1vml3xY)4MAcCc!-!n(!W^NF!7 z|5Eo!KZj;N?43856;3{G%?sRcLVqHkwhwBsZq3X2wEmG41u`<RfTv+B)2m@ZRm2xo zaq`w_6u&OMhvD3d3t^N-z4FxiGci(ljW*$k&(;R!zp0@#V&Icqa-obp>&5XjE7m)o z?j)R9V;;DBY;%|o^3M1&qdR<!QkLY==hSQ_6f^+p5+6GMc*<ovfQq)jZ^~n|AdJ_F zv<LK<27QQClq990t2Iw$@VV+))G4?Pzy<qq;Oq}&pQpy#0zQmm=D98ktO${&@FM7T z<ZnzN72SG{y6j%J#H+_!PoAKv!7oMp(cCp??rYG^XBUZjB@AA@KQJY~cY5f50(l?3 zFwX}eO(yEJm*!XQC_x<(a7OoXnqCu#UDZfBEYzW~(pJQXk+KJ!oG$Lq*iv0C${Zkj z@gBvcQez;)YfAh4J=9^S8331>62tHu<r8Gkg-v~1B_E=SDT9Xo2CxEJfEr+Mi$?#- z+W=iMU3o%wNnji>f*X8cv2FT!d8Z!x{_hs#qZjhv$ft@jJSb=Y3?K&YrUCy{q6iz> zg9+~IX89MqKH!7eY4hmygI+CWgrTbVqofzV-y}NfOx%kHoTs^kZQ&2kM$LHExmO9> zxEBRZAoPA3JaclRk;Hne{vrP%4Ae2E&Q}NdCcv(vrH~yPjdffw3M$8r1AQqyDWU@% z^<*o)7IvbMDB!347ud)V6zlUF)d>KCYbzc^x7R8_PlIt(=I{Z(pII*Cy@FzQ)WGSR zm>Efxi*l$RPpt%ej}Y1qS-ijC0D$qlAME#I1_04nk)rEg+`5}ur<X&4D#lsBAT9}n zD4;hrji{(JV;jwJGF|OFWz%b9F#tP_WK&^*(o$oye{enIxByajui%;m(s+f@1;sFe zJm^3)`a%1ZFmx0!$P^$MLB&FiHOkE2D+08=Y~@x+{;SN?b^t)6d!ugr@SI3Wg8iHn zFw|QBIj~eVe}VcnZ*h>?HU)y!m&H!)0UheYnT7Xu{%5^9C)g5xjEjt~GG^$DIKBzv z)?wRbgYC4S2=2HuePhpLK{EAm1MAp@C~na^0`MRarIXRXStP&82J(Ime8dzH3WlB= z0ABq|yxkp?ufp@Q_P#quy=DF`9&dV0ZVg2X;?%`nlg{s4jPOC{Duey;H@sJoE-{+j zAWHsJFY3Nn0?)Dr4U|GfMHw|6_^Rbe^bs6iA?vWGO8_J?v6#>RW@A|;Tp|5KK<XVN z7yD2N>q3FW|Dt(s8KfhT)e8<n)nq@zS6rNNAxJIZ$ss_+#q;YQc`5CZe9n5k$)>+Q z&K$P^l{utOMJqUQ-^a!Rh35$Hv!ebzb!aNaZI@5t^>L{-7;LyG8dSXj=+!(f4hOYp z<b8UD8h2J5C3;XFA^pTm#0}KQ05H?%_y7!=k^cJrZ~gUKtm;?3^%Q`=e(OSS!C2(I z3ZP(Vz*u0XMJvr(a&zi+zQg=H%FH2q8H^H5yUo}1v}NOY3({q8gh`!>y*h;)%(Uh) zruEcd&!Cg>x-*n5c8Axyz$1H=9YXW9%9?+mFBBb_kUdCi|4d6Ec9NqI$EnDsThE{; zC`OAQVkA$~xQ#+iQ}qCzFrmZH=t)YyD)i*8=g~%>QE!Zj-F(-zNM`j=fN*#8O5VNy z3y`QI&woislp__yVhiVxe=TtW+;VBOIkaTAJ;q@+o}V+6t9HYVe(v2bpCrzNcb*oP zQy|7S4BPqw8;8kRKQY71oa|rf!FS$x#XG;7GzJ<i*kq$x8IN&{l);Au`FeHwBZZUH zz~TAfh8?0Dxw_eRZ*@j6hO6csWUJ<>OWGMhDbLiZUj8wM$bU86r;fOS+j+TYeFiKp z`k`^~s#lfGjAxDWMrs6`nw&o|D~s{_sMnks^8G27@%9ek5aXV>OGa(WJa(J&(VK(H zVx0{&_VOFEZRvX+k{Ry%c6P8ttSj^}B2JC&)n;X*q<S91!}ro<t}$xWSND6ya+y{} z3c2m(KLsypt(2{fmv;I+^l6}6X?oMbxm&R@;>44y5pJSLN-H<p4Hc8$z&Fk}EVmrj zmBOV8%QmEg_0~gWl{|WX0en9jUXX3*mR7CwXjX=54!%AkW}~ob<IytnT;2B4!26Xs zDf#w5lC;EWn`1V;TAIl!cto50Oe9oP>>6<8Poz<2n50}3%eA(3W~L1JsL<vYIJErj z!FqMZ1M@lhAq80LTT^aDL><ln50h37Q;(b%11nBjM-8|R#1iA%WhjK4DnxrDxw0;} z>}TAGHK?(Zq%2UE=dSU!7O<ZWwbBve#^35#mLkW`W0h|BZp_p?=kK_Yr$gVSNnO~f zxd~mdQHT<8Lue}w!`ooA;19x=tpwM?%_rZ4I|NUbnM7(x<A#h0oF2l%wp~snT~^lG zuzGDbw+zFsNxbw+j6aj5k2YI9G`XuQfHYlk=d-ED0zxr)<eZ;rJ0qD*Z%Q%}T=S0L zHDSE1;CX3<-II*lC`KWkcW?rX2rdW{apN5wcF&dP+g~Yy1RgsGPjxSa>rn+z5YUSY zhx3c=exnCX1>y`qIvt!I=R0e|=2NvoONqVCHdbvL-W>~RVw$ScP-avwmw6&|pDCpY znC1ELMt1E5IYM?i=r%yl#K0IYFStpHirF?ZZ5~*pEo8=9hdt>??sZGk8f?FpragRT zI5BY=3y-SC-jMy9?c64MLU74N2oq?BL@K}BlqGt1u9n-Q&uy&&YqNKj*4v+ShR=LV zJjo@K>=npoAQkU7o(qox-CLjEFa0&Q+3a#$#6~V1*xBlctdhp&L#wOEpoHtrYLq1w z{!`A8?s5D1<`)4{JJvM|i+AW#<=2G_S4OM`3JvK6z$ePdYBir;t{88oW8JHHgrO4) zJG>a`vPFE(0n1P-BqB42OxqX?_<#roz1{->n<U}V{gw*-kP6#D6SMK$f*rk^od>(? z)9i8NtyAXeMNBpJGls|RADeFF?2HkNKxyR&qt)I=pL1aCSM@^(^be8#N<vcAs7dFj zVP)IhB=_BMU*>7m6_N`-9h;r5a;uxN?O5yYqA1qSYTTC+6x}H&7qA<$8E^DRid@$d zk|*VoA$q;QtRV|yn?92yfx~S!)h9FZnoUnI&%Fkd>0QoXRzY$I`IJSgL+{$u{#F=7 zTxG>jaiq#H9x)FyxfWzg%&up$mUhN~%Jnna3JkcWM5b_R-zw{1d+b&b)_I@WCL@+R z<Y9q(38cR`l=JtfiDy%~BAL7D$GI$_M~e$)x7XG3Ml?0*9*yHC%MSX`U}>%<gHK+& zZ4zE!#69nPR}6zrDT%4&Wr)Jv)Tc{frAO1xWzh)i*>(X!7wq;e9(sQ{-`Z^Nn8K`w zIFT#D`Eqt51l~fA_liT_yIuB0(e4`x#(O)PS0ELShes+?)>2>CXEe85dZBI`GT?$k zSQ3<XcoNT!#4`XcX!Wn)YNo}LBR5Lo%2|B#oHP2?ij*+nlwQe$x7U}pZiDl_ly}<5 ztWEIvOvc_r!w@|_dajzQ+ry+$U``Y(GI;o`8tu~VDF!7t_08&d8I;NM0UX!xa^Y7z z&n?_KlP*!m`&K>N4yZqh{-{3!txCR)(5jYjphdnt&$P@OdJG2w+c6N>w1L2OxqrC< z;+VL-Jgw22C}f%-?en4;14pLD&N%(<o9bIu9l;*gg&bGI(vr!eD^^Cxl8w6}WZQ#D zWF6Q2DseGU=mVg*W_r9X9N%<*4R(V@7Ujw{>RM9On>r1(A)T#QbI%w_cR5M<VC<^h zg4W*X`^Iy%dsvSjiamUOsru;>=h8@-Q=jS54BTaDASX>tbVzAS<;F|70OFp&;~R;f zCu4ppoVEjmd4*-Bis9yJlofgwWyA%>Thcm#P!ok@7M{Egr}T3{VSyMf$>Asnc_atm zIb{f-(0d!ol9=QN^5W|*_QN^%<=cZuXh}GYZi?d4qNPOH+=V0sQi#Y6WQEA1U+p~W zMLJk%Io+G<*%7>E)aT_{ITN`-K-c+BB`pY=v_2qv(9lPp=^0&K+Io#+)JXN}cR=3D z5oc+=HNg$6F2B|j&#TlYmvas6!9p&Nq#=#{;2n5|Tx7&OTKSt=Opzxaq?Sux&0VK` zZ~N6p-%AtE7dAb#Aj8+c(~(HF&LRIcFkCK}IYhPLh!!-|_JoYj!c4c2?fl_~0jGS= z>wM>c&SM&JqlceqvuWq+Z$$A4^H+r3Kq5>q+S{3-x(;ZBz7?opjf}toRRn(u6q5yg zt^}6QQ*Ed?lM7&fb6;=He<eW4-zi!;wvmV4hsl6wfWALv)-3koc-5|O0JES{JU3S6 zM72L3J|}fq5q+%sp^p*%eEBad;yWLFi~W4F`C88GFb`FJ<SvEaB-<^56}3XuTjjV^ z))SWTpbU&2qMT<9>rW!(WwAhFr?WUYcT3FCNh{dzr57LBu3vIF^{K#WG-#OBW7HRB z!%8h1thZb6zgH~oS(6?>>b@0}uN`?)V0PCko>n86T;(<BZqcXtPIg-Ps7V^b_P|fI ziedBoK+MKBQF``WD8@TqaS#Lg0*9PNF%4V1k2df$t}E-Nxw15v5ne!L6K>$SKfHVF zb;2$K%M!erEI<HS><O37RdZ7<)UCO0>Up5WYc-MZ;1p}FUFP^;C-6922rXsgQ+F(v zR6cM$xt8HNUm!otVq75h_w+-YiP-N2|2s>{vYDo`ntQJ3;z18f7v5RbNr;I!_GyO3 zUi5x~jo0zwez@Vc;te%E4s?9sePm>_B=){#A*Ej3J4L?fJN8oE;`|*fl1%;jk7BQ@ zv4eq`?5)KcMu?qIyTBXxN}{Q0KnmP%R?Yy<Ceu**TO?~{`U(Yp01Esa2A40r$Xb#G zU8R&Zkd|FO>!ls?q%D~S6u8>(3I4fNy3-UI`wfLvNTwHm6)04H6qU;rA0c}IYte@% zO=oBnQC@o$L?NW#9_ThbX4<~p2}IE5R<vsrq0Rq-fXhVZ7hXu*Ys))6cOh)teo<?* zfTBqLgO-u~<Nn-&*XR4Dq#y_WLvHoKmQ&T82dlY2nGCRL#gAFW-2KmMBH8Y1mws@J z-zlRr7z2L^J^IoTve`iezAAgwZn2vY5zWMCHket_Wi?d}oQ<0W4;V46`rsOHfoijK zW9t|Z9mb+nI@WtS$PRh8yCyV$2nUB=AmO~4hkb=9)Bw2sJ2@o@xT!U~2qJ3iq2J)j zBO5L?|E@&Ys3SNrjLQ_)rPy6ya=z&F7!EG=fU)h*2C&m2rfcTCF}pg0_&!`65*aFW z5Q?9<$fwI5P8S$0O;uo2W;R+9usQ>7I>=XCQRlRLM?D7<mz8fkTz6yC+r6dZp-&~I zPAaUz_XrCFKHlMLu~>g5S!y-uxH7diQ5gkLUD?I%*o8N~l%e3$V~vrbnX5BVTGrvE zh-hBVk;oD@y(8$JO<6rI`E-q2$YY^M7JUV|NG3)NJ%`AO(<K{7<l3ZD*LayJt<4AF z&36))T&+y)G1sa^T=)Fk5iKEM$Gt*<ZZ|Xv6T+m(M4H+U6U1-3|5|h$!${@8#olIF zbHU)T7>)Gt#nqu&n{3eIHcNsLTk6i$^WhVeJzo7X1CE|g3#oi(O0Oi-=)NBq!{Tx9 zRNv+;<DkjAkJnnPW_DZ(qo2Yj+WZ^19RbEy-JJ~SV{(FuIKA(nY7?mwA^<tA_Nkw1 z7@A?qJLEI_Ah)|ZZt5{oE_;JyYnizn`dS8*UDEvWB2^c_hOJ80S}ut(u*UIn^yY0O z);hP7hVd2*6>3fIi89W<y*n|Xa|Yk{OEl3hWWbNrThq@+p`Q~_+QEx~jDQf@XNsV` zwkz}teQ#RY>vk;)YqU$JZGHPS@EP8`YJ5LaY31wgaZvubStdh1It-{8MgugVoK(;> zn7q_b$9*PZzYVxv%oy>(!)~_q%I2gEM7Gi0CFn)C@L|%?H0#7n`mu^$Qf0_+0`LAs z!z$tZO_@ev7yMSNx2+GX4=M4<*pK$+NXF~<L~*$eyUS-RRz^Z-kB2qLj_I5}xcEw@ z9dl2dmOGu^>I_>@XS`oq-mg4sG3cy3xjMu*<JbPM4bIFY89+?5He+Wkt3p*Kwmb=k zL<7W#bTreUEAcSt?2hfO>~tiT@03P*aS3R`H(reMAbv<1&S-Bx314!to2?!@s8h81 zYTJ(_sEL!xOnYPShw3Szh+&dKh!T@V{)51U@#2SRN4t=j4Bgnn41g4=w^V!JI@Tq_ zC_cIS>c45e(Y|$>B;vL(Rx%g1)UL4EcjnSq5?{l#$}5-5AzKkaHcM!dh!nVKt!l=) zeh#59TL7I)_SlX6?96y$$*EEZNHFTd#K59D4o5*+n}I@rSyE>yC34Ott`xqf22_z1 z!K9*4Y7%7dfMLw`UJ}vy48;V8VVGXfo0Fq0_VF^CWO7k=)%9BDx(EixWRA+7si~p& zqXs~!gb#L{I@kL2C>lmA2Z@86^}52Q8|tvaI~ME#m_nGC4J8CTRDSW9nSqEOS7ZMR zkKu!NuhZ;4zf&>PO%G-qI_#dQE}QWbVy;81^O#uNS^i}$z&aFia-dUwx&~ae`q~X% z(?J{}#9X)$-Tp|BcRfU`SN`qMe)^M7x6!WDVlN<i$cQ%-ERX7BSiiYZUu5RO7^b>) z_cjT5VO+a}@RG}jP=slItFZKe94I@Wc73WwzERLY+YZ*Kv(Bz2_f#~fh?QeUaozKr zsqW?M5Gli^GnlxfICGwemP>Y9J$&*>!U)n5Z+lPWNBE%St(xEfp(me<r^1=DB3QJV zuS)Oj5nQyITfkkNe%KoPwl#S|i4<m@|K&a41`GIRSe#6tCiPdU*K1cSd&n5jQU(>B z3f1zYnglrCwhy`rLuU-i*cT9hiR-!Tc9|w8h6=mb$?umMAF<UE$+-!@ZJ>>vz-4Q) z+){&%jf-&>M<;0?D=#Tul5>v`JZV^9`ug3e_nQ=j=hx(b>T2SeMV{I{j8Y|RkA3|D zR|)~A^@KgSlPqIW9&<KGvJkytN8t9vW&SS<Z#WGXE$41IuVFINO7E_6q$m-69qgCd zm-i6kcVd|sUVZN3Dm%qwRRvFIA%8|9@nWVAlfy@oq@x#B3*Es?TM~+)8pSeLI<Yq} z5nZfRQ<hInE?(u=BxZ3RT<J;inF3OJa|Ob|wYSntWE6Idm6A9xxfi}voQ)&6Z{A8s zzZ){+swakzRFnzNz_fIvNABy@c6LSP6>QcyS@H<ZaxbO8Oz8UDjE5e(cr?>YItg}~ zjcn&^e)L&5{_s)kcsrbsS!+byWTZRiUW0k$*+Vm!&8q?1bG1tXLwAL;pDl5N3*iB! zPx^I6PFUmkB2|hm1Zbi+4d=~7<0dBUx*WU0^R*jQj~o(Qai@khea>x%cP#VBJZLak za0|Q9p*K*krlV7Oi#40Vg)2)j3P=RTcLxzSU7<GPo3_scbJr{krR57qhuue#5dxkz zR*k>5Eb6iE7?KlqmzBG4oB)d#Nk?NkE=YHmJ{k`@3+?O(p_IA#s!Q1Ph1~G`76E-e zuN@tn3(}YVEJVG)jJeKr*iGvC3vn#a&Q<wn)@bYL<dWVrA95bERBOOxe`am8``~Bb z?l^Q6Z^<G|lV<J~pVeBvnC*G6?k^MRJw|}!Licwv(Aed&g4gEeUi9i259jiXKuN(7 zOhhv?X;|Ay%TtQH;PN($xyNGNI3CIJU#5X*NUvABQ%<3SV>WfuaGB<71}h4b<;|Nb zE7ycNfvl2%T<0)yu{Um=2Q9($llZaXvHmKvvXiG=g6%WN)o!a93I17(242{6_BF0} zG4Sj9)3@63_uohL7|(yXCWXJFZZ$hO$-@05!*f&B*AdGyn$>{OBN?pHn|#Xk)+v%% zBZ85D{@u=Khw|+JBab0VWG-U1sak|c8Zq4@E1JY75IjtusB{_lEWfQwy_N%H49n%Q zm4+_|;Iiab+`w5m97viiZi$UdDvPl|A~PC584AZEsUoO~(a}Ift87^$?ah=ZX5BQ@ z#fd*TD4NCd{>zZ7#yWkfh<-tK?VBAdvpKIkG86XNom~uPjar(g7NPORG)hA>!|e4p zn@rtPan1#i3QWaW5HXCmj1)}Hzc^vvC(p`+4*Ov4^0ixI2q|^t+h<$N=3781r)f-k z>*iziJ@Ak4#byu!OCKuAHe9lIHg~VQwK`g?HyA0@dKfr2(4+X(qc$Y1G21jWjO8}c ziD{j_Wzq?gf>pd2X#6l+0OV+-uTF(K=F9{{5cM@>>6-o5EAQvd`Mpjv-i$EQKmB5! z3f%w*b0PT#7J1Jzc!8!FOVlbW@!*}%EfeTXd_BRcyWkl=(??q~cg(*Q*g{>;-hSny z5D650@VoYyp~L|h&hPS_vZ0#2i1|0d(ysEL?9O46-Z;a$4TtrXF^(c_oD^5j*s%jT zCou^I5ANErew<@WQrX%DtCp9@MAXunHI$5jZhL3ccp$=z^Qq?4_3ET}wwpX2BbG&2 zpfiaUi>o!9c0-Sgphpvpq_7IB=`O)UAe1C~9>l8V-fK~>YV>fG53z29?LH?}UU@45 z2J_&?aoNX}TaT)6-^zex2AqQk+Ep)DdtNbji#^0xj^7^cSg5=N6=t8?y$6L<=`wyr zz*B5wo~4HcbVABJtSXTFTDBj^sI=;xa|l^9n?67IQuzzT-pkb<X5zGHCoEdX1x_<d zcDK_d<;`cGYY+5CbIAQoQ|5fSlJ{MGej2rU!AJ9XoS%X^)qNgI_rKG4DZi5&BKPtF z$q}z=6=j3bQk|`jq61g>T&$Q7Cc$!g{J#Ax9rOapu0Pb<Dv6$lK=Eu`=t3;$$>%Sx zMd?psIy`d?-CS}`an$j}P3a%T9?HKjoOY|%2hWH?Nhz#8@a{~OZ5bxZ@;#+e%=|2X zcOO&0v)Hu;8d=dE?53v#-YRgYHFb3iPjH$hQbljt-?}0<a|KiLa5-h9inuobD7Xv0 zg#&R`q3>Gum2~SD*u=#b=eI4xu|tF{FR<|P=}{DD1&oMJ4zuuiOc*80f`H^+@YK<M z_<O<;%J2O+(C0RZ*D^cWgKXO%Mv~wdN&2&{bh1TiWwi>)=F0c1li({w%Ch^uOcSJ= zO(%L`JC&35yoGcJW5s4=JJW^^=CT>sA!j3j0)c6={DO4eWU$*o9zmF>M{Nv{FZDY2 zDe4H3z2K*@1^bNsx<o(*7fCe}*vR<YsWCPectjo9C;`3Q9CKO|sdb8Mgzl6kN*ywn z&oobFhCdgk#{{xTbKSH63;}vP7fSh%63fm>&v4MWWt+`NP@l#H;(Xt#M&Bo`IIhRN zSO#(8kDy5&`iaLowoACZMj;lXHle&$LI=k@16R%8){m>>H_439UoFF=WMJQdb%$CM zHH>6e**{AxW3A|Jcd)oa53gB6&;-i|L&_5fko1_E2kCn%;{k<_$nZgF41kRsJ>jfv zYxc#H$Mrz*hePckf1Q=FYF(#MSIaQJcUZ%~ih_w88qsUY&vQ8c4sDJ+WY~%t^AZJc z3Huv|lLtL^hQiU1vlnJO5DlvC<#D6)I7#%`dUctP!+h`Juhp0lnCczx7(71yR-Mtn z$<c58IMr?g1fSX^jjc$~liB$kPRl(Rot>Q;eS*3DiQ85NHXBipLj%KmdVM4IZ?&_0 zi)yXL%k|eA_^NhxYA=#yIK<<6!YxE*QupnV)a%uO$BiV}pwm>lp09u?p+Tm+`Wp9o zB(RK+BC~2>T>9l5658-5t=xd;5S%HoNT~4WP)e>^8|fjlJih)Z+r|#T#h;w!vC~h^ z|5Vd_xRC6NMy=#lCg*bGL#Y~Z+5LJ71p+3~=?Y)y)@P4ZlEHYK3;RORMQw2j^dzE| z#pTw+&3j`S=uOF<`;z8E?h2lJpQJ4iQbDBeEYhS864KH;yCj0Lc0TrA?HPx_w7{@u z53MKUL#|jF=;o>S81IEf7o_{VUGF%0;{~}*_^pdYJ$`noRpJAaJbIInMe|4H1Xb^R z(;)6i`<l&=t5gMU;0!`0)jo?CPOD>#7fJc}8V7@8NQZM>S%C-i_bQ|)=ISUW#Y)vP zvGu)w)3gTKR<hT=b14V(zBy%Xg(v$HSQ(w4-$$|DP|H<~VyXHNm(txH6rXOq;y41^ zNzP^_Xb-9ITtA-L+FaCuYl^LyckfUZ8RkFBqfkhSS33LNv16@t(Z`{ZD0XEihxR_b zV(92h3=2KvXh0^@##+0hHl%|hOEI24=#|-^Nq5*S_DdBMIs}(Yx?)tK8mgLi_usSc zMB`FSkS6bwTEdDXx<;LP@AxV4D}Ls4?dD&ZD^zw0yOOM2&1s+F#u=lu^-@v$U8U7z zfrQ9lS)K4`ooOpRh*H@74l%2%yd(Srb8<5O!$b{&ON-SjY@JCWbtMz!kX{ATtQ5*t z9av))l)`DsdZm~fGKipwV^OK1pL7h}S>c<|tT4Qf>Eudk<~_{(A#%1YV7zNnl)jIm z6Y)!R!^;WjZJq(QpBA-ipo{a_22pZNaRg{VwYak6c5>C~d7teHjMxly9~6#xNE-L# z?isDW{ZRK_qcE&juU4l`$ni0=kN&dFq{q?oS3tbEy23?)S9>(w)(%~u%zhA0=sf>X zzh)sS{{OM}mH|;U@B28SsEB}qib$%Y2uODrs5H`zN_Te)iYO)Bpb{bt(y*(f<VrV) z!~)B*z_K*Ue-=^v{9gaR@1A$h!}08ynKN_Gbzj$Y&mm97{^7?RO@EQXXq?g~+V2Oo zFQ`loJ#VdbU;7SN4(>N3G@?J^t>yvZ%J_A+!W!xB-FW@mL`w8u)%k-gV8`i0iA1A} z%py<e<;{Q2Em%v!`>|c1H#sSR)ua*HY@sW0n6=QkA1^Jt-oS{0Fpql<k>fAc?0=AY z^BuCkOU|%?4msJCD#jMBo@<Oa^FusQxXiNkkxuzY<VOU2w8Ex*=W?>^s||q^Vdu61 z-%MktwK$vp&uZ`5F0*Yd2{<(465;xbobk@~3R~O~n}aQx#>wP8>!n%p*IMH>47f;& zeGg9L?7MkWy`Nyd2CoB@NqMW)NSvVSfYV2-j71*j9XWS*yRlPZj=eq)kSBE^&olGI zaf)3+@AMT(#|>#A6k#ZxfN!Px*oLQY_#<ixJ>T#g;=>KMjqLSHxRtkfYn(v1hMRmx zEJ#A9MQjZXMO}s6o>u6_aHQnIf7*#lSf+T@-5*@lob){ipayy@(j)DV<-H(4a%&70 zJr~@84PM|eZU1`rejeH~q#L3~b@SUd9b5MDP`ztHUax^%IEISP<VU7P0-ju_rPp-w zG-k2QRbr36)C5*0=4e5N0a#YxlfAOdXyasQUIpA8J<LC}ssq8^V_@<D0r7`5G_eAb zvN>1~<$@F${w(1;ar<U0y5i*sMEFX#hSx`FO(#dD=iLO>g9X7<ALps#a;()0_4QgE zM)R8mAHrTjc(pvkZS?lA6Jz$f$hG$^`1;yIj(1Hepth+djXbP~N%?|97csr@*+VTn z8KkGl(}l{<MQ1iB*|=cuARCw~C(V)&Ua##9A4)NtmM!pkB^mss)80Wou_BUPN4&hr zF6NecL=-bLno%}x7<)E(Z!g~Hd&KpbQ+^XyCi=@+Gz#+UX<={=bf7;O9u^IgQ2yd( zt`jnx?jvTnJn$_b$mm<WKz?-#<5vl@+Yki%iKp#z@}as69)*cX6*GHX(APG<%*9?+ zY*KopMc;l>Z|R$6nm3nKx1Kz)^XrSjV&7o4wLLUeuhb#o5}Qk!eU;7biX7XokI}0r z7L7xf&4p2Xn_t&$HGmQ2Y9(pptq4rUk8e7{7o^EqI}*8?3VW&?fdLfWMIg60SnkdI z@uT@q+5HT|-O3pPt3ONqh&AqJJPej08YzSewK?Wzq~p32r4xGW2`@R-*iF5-1S!nu zU!57Qa@t-qW>qf<v92G0w}fAf3XbK_V;c9^C=XL9TsGvkzo&bz_5fSMU_Ih`DKv=3 zxQ$`B)Hv#5!)dC?1=DS!CT8Pa>4()0h477^H)E_*%#y@)*|ygjiSznn^50yBPTndA z5Z_$d8`7L=9hUwSusYY7$^j_PT)71Po8R7iJGld;rx_`WfgWIGuL)S2Cov3`J`z|! zFY$=mio?&f0?jw(3j41p`%|8SJF?mzPRj9VJx`-pY89N&=QW`9nD>9ph{uZ%w`ycb z5M;%sv@B`$W@yJe%9kYq+K2*wZy-&zGjc+9;^1k1=;Ns1dB0JWYz5h>Gsu%dod_|< zxsXeoYF#6W8vZ(^9#uxwQ>Uj(LzDPr+tpW5Dx%Dl2_mcF%tInke{F((dN?-T4hR@j zgMn-&PiEg0o{y>y@4uq=P5==20DO5AR!n-bsmsJ=PitJ~C(jS^DBJ<Szj&-Gr6xnR zg0@`n2aouh2l$fcYstaagk7wdL9Se?_Z(zb4VOu)tu0|P<UxTRamuuR*}+4|mL;FU z;0R}5seY~0a+rW_VdE~h$3D(cW^4puv8=*Mn{#s_Y1GfxbCt|JOJncFBa=14{Q^^z z_*$2UY~JY}pX>z{rfaR$U^TnCe|V;%^Xmc(@aYu!QB{2AV@eO}xX0p`oMziDy91IS zVdbH2iNH8MdtZjP=CI?0Wy~P<gLlm|g-Q=+tvrWg^HV@F<suHD-yDHk()mwBDuBRx z?1CI-!=#!S?Ka^cRfxB9hAxnx*VZDQaXSuBBX-Fc-?V?8wSQ}mp}O<f1eRdxEnu?# z*nC9L<_Q<_W*@d#uVzzo(sr_3%VGBW6yM#4f{W9<Xe&5OAvxkr%;({PUO8bDyZIXh zJg;&MQdaFRulE4E*?iB;W>+l5*ZKAIhiTNEvO_ciOp?Vb$w)<?#+B=9M(uMCFT!^% zys<RApP;G*nooT8F%+$de7UP~%X30QNFT`JvKRkAu>oSjfU(M9me+++*egRWQM7+# z+)-3RFpU*c=ex_FFGWr?Uz!xghQL@E0Cz#9)N3ayK8MOLW&@2|wt5%7SO+OM=)F4c zFdZr&lX;Hxj2zx4!mB>pvl<9D9Rb^ju__dokAB6ok0F#I6M`t9l7LUqTd~fz$8tf4 zcoo{LliWOG`(K*WxFBz6WGiw4;1R3w5Mp6jU8v||(Wv#UuU#XF`ES@oyGlhN)EsY% zE^XJ$qFjH-?|Qtg5N-KpJ+$)vi$(8*%gFR2(#L?I51pJcZr5nzgko<<q-+mgJ;);5 zb=t-0VJ{RN(Q?%Ddv)D`93LNr-Fg0$Mk1&99o&0oVYQ+8svs^1$1tZ#Cmi@VsQpH( z?1yO89H3SEFz6aHP3~&M=pjMqG3vUOF_@_yy6Ax2bEgDEdOoyived`{I_Qd^kfZBt zdP|WBL+{VP4Se1Kaa*dyr1b`Ru7fu<$=P!7eW~?C>z)u#DBRu`tyw$XARAlDHlF4_ zup_e@&D)yXjEv*Z<6c|=Xl}@bI2vyS(VLyQcXAc2&)bDvifVYs?K!Sb!=nJyF000p zYdZ70FY+qJW77|ee|*I{%>Q_H^IK)rf+!^t-tE0_jf>W)JP+9%ea*E5eam%S$DKbA zZSz}pj|{l>RjE9p{DE?x77;+s=G!_njPxrPJv}kK#-y0SasO3V5l26D?)Sa-L)eP& zk>8@()58pT0hmrtFXsRqQjGN)uLYBc%W~v|SdDC<{%VvpSp%QTk{cz@vNNkjdB|;d z(<jeKnjrsA<i1FDC_%O4>QvZ7UA$>f##n-GzB7dx%<!pe$uCT9T~aS}(|AL{$%K=F zKJzVV&Wc9ux$AUS0R2We_aPsv>ZkN>=~-){XgnniSq{}N8D+UlFMC@hQb*J8-nVAs zONx4zoDw+q8CG4WAj+mxS&0-h;l96bhpiXLM4?xM8P~O65mU~fIUGnLy{wm5%*TrE zes@hN?bQ{*@-76qn0Sz^@sQ@7d|F{UZpH9yZ?%O-`Gb?!JyDpnTh|-GsObfZp~Y!i zBHkjt=u>{x&&vxw<&6S<Kk^FusAl#6NrSQMWVz4so)f7SKtz~Q1=>8d+*e#@D?pMo z0Iwc#dwWGbKh62Y(|(JxJfm0(=Pk*-3_kYnyU7u@Ph9@m<<8?UZT&mEAM(27UGY-n z`alKe{#4T;bfMdE7M@PBa_}-4@P39geV;~2CHCeqO1T<!%s`m1@S<P?!S*64Q&zs% z_2B#Ws_wJ?Ekt<`E}7SOSBi)t_D#5Y=|pI5`UYAqmA}Cf|7#gS;Bitp4ZB$iOD1_% zhkTUXOk2w2z=bq#hwt+>pOkVEy?lNJV#be56<QLoL>|Q*($^@RRXMz^wTLNh=aKWd zd8z1$+Ev0m$iaq4&LoS^`%KBzNRZx6ge{b#uIsM8ApDhleqL@zztlxf=U_6jf<k6{ z&EES#SEIWy*V1%2|FucA0`1<|=qFKW8PJ_uxiso|n(R0ADUJ6<pN(D3F@Wm7AT*o$ z6y7VR=&_RvvkqQK;<aVeDfgoGP3uTv1g^WscM=qdmbTnVXF3vYexoB6*iY>WxX>a6 zn|y9@C_6{2oq9ecG@4co4WyVWjfP`w(gMbp;knBo+wPL$EAvgC*`Kwp@x?URR{=u3 zenT$D`y$|(W1JR#kqN~oF|kptuPGr+X;8foJsm@PRT|3->B5vGD3>hGU4a;E5hF!p z1@op__18as?W0&wlmCFM%kcCy=Gk)jTCk%V-p&tTQu>}!5s@z}QtrzjgsN`ex~){_ zRp$Qumw*ANi(St(-%oC3{1PhG(&T(7%^4Zc4-Pt4nH!ka&a(U0mL6EP{u0QaiRh{} zOEPz8dua=?e(UHg3eIlt>!f^3GghHeV$}MaMrL<^0`qvK`=AN(aE+*fE7_DL*mQ6I zGF;@h8XftFK3ed5-ZNZk4zgvlu%Iz<L&iCwo~lB4z1T=|m%A`Fl`#rk2dOX}eTtY4 zVZ+DlHiA!)fEec+Lk{GKF1?!3=Vu&6H9ryJogt>Z)tdz?!Qwfg2BcC^<Y^av4AW}g zQNowhTdH{a?pHas%0eyo@yCalS;!5knJy93%FdaVQSVtHuvr#OP8zTatbVDu+F8XC z=lK5D+HBiShvx@JH~g}=QrjNNlNKTU3k%B*tMyXT4(Qo-wv%USL71A^W`0}x+f#Z0 zd`ueHYGi;Ra!H;Xdy+|w9-)Qio~4Vmh3+dj(W?Om4Y_V~LI(^@WMJIM4Lmf_r$dvd zg2|l9RQZ1o$zOS6o*Wme92#?PZD0noLl`U*FW4cgG5Qzd>UP7TS@qhs6sDiRq}9Ar z5sYFrt}y~k^6#c@{$k$mND$NeEUrB~^hl%nmj36wK?diYIt7l;fcxUL>>1+UW>Uic z+No16Q#z;ks&9oYmYwUg`OY;jGujTvJMZB$%=_5s@Cw<FS?qb}(=vElZJ)Z=b^@i< zw@p1aqxHpVf>dqUsb#XO6rzE@fgtjxr^~cxG1xG6Z6RN*lF7T12R^oh#T6HZR<tD% z;-$=ed+LkE5RQI*HUU5N@ge1(ZqmP(<ZZq?1%v{o0z%V{lCAugYhO>UO4sd=dv>9P z$<5DrP6AeU-qyhMUbv<-UZqRtIYVWG=fA*5Ys#`&?H?DpGS4257TN1eL9^Bxl=LQT z-EB#v;`fwY+HJdD69i8wXVZ3px8wmu23lqHEoz>GIO$7-^=P@yuEmn_hX=){q*=wq zd^EYo?E=)6qZGs1KlWP;FBTi>=+Yz;F5#ECynI9(D@8Q7b$gEKM0y2II%pWM9@X14 zb+2K82NuSiA&wwH{-RKE;7B!65bZVG2l<VIV(N>5XPx3jj&PVP7T>;gEMQ#U>wUNr zvWN99{#U!c7D_|4&zg6ybi7To%XX%gcorE#%{TJd2Bj~SvB@Jw#(>vH&=?D?8A2FW zEo?f`z82&d5_xrml><3008dC_^3rmRqkCOt7|jUP+mDNLauyp+rjKT;5e214_{Jgb z(ry&WYO8X~TZVfb6rupuOkuMEiEC*}X_$eRy)tcqW)r+K1LnhLsTwyYpLCTdYjKWq zxFN}wGj;;DfpHg=|GqM0ST?&VTn6%#FX~m2!5d@c!KDQgWXytwMMxb1=>lD$&}xFu zaTP?ESk*hxTb+YfMFsXPCVVtR5qZ`g>p#S+b{2C3b^?B7d8e$ZqfO*z`rkEJ!yPw7 zJenmFho<u@Cf=1%@wdIdALJbt#~W2HXvhT@lro@5jKA82j&J0-J1%qS-k}GNUYY>N z03B}_`$aFo9hGF>29cpdV&dVC;gGq#<gJam8^aDW<>NuZlQ)tv#4VotjbNZPz?ZnP z?R&?n(8dS;0S+_YpQJ(4Y{>D%u@CM8b3~f6F5FEp)cM>c4iniq3Lt{g=6S*<N{kk` z3o-p$=?X~g4{!Gp(dA##(GzydqDP9*-ThDpaz)R#-Mm`9z_5_#C=6#^pqNbEsekkS zzBQ+*L9&np%MYn)WCL2)&2Nh(f_w5en7QD77$vj;npv}sndf1^MTsXoMZ!MoenxH4 ztl#)5rSU#VUjXf~p+?m7GLs|gPyCtaM|n#<CoTn@d99J6u?IXb-xEm(+KQ%bS_i;D zN_Lxb-Mfng3q;$D2Mb$9K6B>`F^dAR0Q_Gy{&I5h`?tF0wywF2{Y{C-xNPSDds6(p zGqg2|>GABF%OTt#L+>)!%3Ak^7(6Dfc#5^kQJs3nAde^Lx$Lzt=$ozvyVjrE3aq)_ z13DsASS(smI*KV&7x-lyCR5to(k{q>c<Zcr#&=N$s#R)I)-|=Hi5Aebn{JlxDRK6C z^b}}pQX-Q3*8Zm>cBteK)HBp!r~JBFt-p;ibbZUMg%Lgs<^BWQB=6ynNHVOaH%lRM zgfG|A8e+jmS4vDW2CS#^j^#G*oB7^_Xzh)AwuJlMs=iTHMUZ$QbI^INgOcrZm6+_6 z>BImqnk^hEb3O|@PNt)H55y`Q@qha7*DxTgD;PiR0Oywt#&a<)(XUZ%ZweutVlR8> z?!)u+nr9n${ovjfh&OOP;3?4no|4iZ0UUq40KebKYk3^$Z_*WigYUB%pI;f&1n8II z#hsu_uE>e!IS@{g2q1B2w|D@!$Es5v63uq-nw@ETZ|madcCxo*s=XgtOZ<o4lO@Q9 z5|e&U@wZjLj3;-g;Ee0&W|7yn%;3J(1jj8h5K4)-3AhJQo!ExQxbRVCjm|hvLp?c| z1^2aWl37@DBF+6wOf?X<YG{B-`q|{J2hz6S=@(V^Spp833&~#u&yhl-lb3g?s0^2n z0>mQ1D+pq=nxqV|qSRTvl0PyM`5KnSqf!F@&T*NoiBa^t3(-bG586${74<Gm(RnpN zQ@(w%@)LohDP`~~FmCjeIKnxjDfFp-R<u<YAuEeN&h8+lBl&*=4*Y&K*m$0l<?vqj zm0U=$Jf7QPk}cU~=r+QUu*^W7^Hzl3fe%bJPJt$%uIZkQfvFdItQ7X0N343dOTfI1 zmr{7?GNP0tC5^jzap7JEQrP7RGMng20vL_rc%dsiKd`~UQ=;MWP*r+!$Zz8*{la04 z7y&UNTItGDO!V6rHx@3KX0UtM`Sq~zQOA<5inFHP4PgCoVF-C++iTO9<dSayly|w0 zGi&seA0vvBQ(|xBqjOk(lE76Wb9bA|x74CwipfRd=fDoYWI(sIrleK0A`iu&M&Viu z-T7~yfIU@GzP`%1*Q08+nJR#rkS}$^1(kwb49rkW>k>}eD4nSk2}kZFDl$6Gb^OYz zOZK+!Iu!!p=(DCvh5s^cd~|pG;h!J}%I^SGb@|4Lrw@`?Mb9V#L9n#kpLVM@MsIE7 z9xEWzU~idDJat<>6ZXf+_<OxPP{!3zNM9_pP$oc9^Hkg;AZqjTficr-Ry!p)A%;hH zY9GI=|3IG7ft<bGV7&N+asW1xgHd|<C_l}cF{Jmh4bTc0>8$rPH;|*YjOW+${77s> zeAd(FWn@5DSRSu2pv@ipI#Q>QqOH7tz+AX(F}P-o5+Iu<SY%jVGIL>S-`$!<_IxrY zLR_-eu84eg|MYfkOmeHhm!HkVbdUYL+{u^FKt*alNvcueZBr0AyTm)#sz55PIl%&` zj6oS-pJ9-Vy{(UU-%5kNTnpP6A7qxmRNnw)Dm=5Z-x~5t=IEt-p=|!A%bA?<zaD`e z5!W>2xXLnQ*9Hn*cDCrpmA>d0yQPu0Lc{)6@G6%`erdXEf%MYHP_w{?uV7DSB+T9m zwj`kzyi^?DG%1$hd|NZ4(mHeM$YV^l<T6!HkfWOU$_r2o1FqzgS2=;m5e1HuVxqF0 zgoHlf@E&n${@I)?<fzHEAxyd~msPnm?n=f$*yl|`EquGoVzA7`wK;vFfNz8hkBLbf zQ!D-}B6@G|o#hc5?;m{|S2Y3+c7yJ_sNYg8Smb&33Mj2W1#ABBWNyPLPN4_&QoKCN zNx{LxxAPpUZjs+uOuP87Y0E}916<ElYu9F?L@klew`XUV=R`Ws`=-D_12m=U{0VN; zE~DGn8A~D{N>q50o*|`mp`r4q$&!pZkrI{M5p3#_=ZoEbwA`xlLpX2vjLYgTsaAJI zaReGD36H~R_4ctNbFJRtmpF7;zMcAFCwHljpvgi)f6_Kt&}>C1f!{k;%><<WJ;mOm zeuVnT6tm@%y`m)cx-wWqSJ|O+m7zj1Pt0@|eU54B<tY4V#qRd!LPxp&uW>uADm1?+ z$oe7CFQncK@6huS>Xlo$K3q!Z(bAw%DPQ==UgF)tF<j%CHW+9r9A>qcL3me;&Sw|t zS^{brhU+}TfvHkSAw@jJucb7N@rNL5g>@t~As(k*b@Zn#_8(Vkm3I1_YM-W`@*BBB zHJJYnpJ46GKJ%^U4d-SZ;M}+*Z?{lYX1*Dnr&lqt^O$@}z-CA?x%g#RK;G__p>m0l zJ*#TEpJ;bcFvio63D2qddE(dU75_@9_)huuJ<OoN0F08y<dU@j$Y|ij!KN=Dp)9|p zcgaXX9ETnw^TwUUqu?>PclSKfMZ%W&+Hae}X%BdzGv<oQt5V36TVY!K&Z#$SeUiK7 z=O#6J2ArxTRXY>=GbJHjz=?K|Qp_Y7QwQSF@3hYLOBi}*tGMT9@Rq$byelnkkKoP7 z;zh98ItJZ*6xJ4$RPlYnd)H{NV7z>2<TiS$xeWN+QvHA}*z333esz#$K3t6jq&S|o zn9rM_Oloz|cYU5KNBd)#vo=qb{iuEyM384<t(GH&D%0DyTF)EP4@!GZ+m8kTB~sG$ z{1JkQ_;MJa_!v$+?I};nEoH<Zm@1IxTtVJB8{Mb4$z_mw=2neii-P%&$|_)CkR0$W zYKtKd`L`M!Y)KE)kHVFQtjSceUFMD4Ndq<-VV82dWWp5^T2Tf*L|-YSP`&JpwNg^^ z7ht+9g$ycuaD-zc(7yYOz6aacTzHD)1Ln+=)y`BI_p`IDiHn!_W10i6o8n8FiaA}* z8*?Yp+7$<)R)VN~EmE_3X8<6+*;jIujE>DAA5Q-4$&ydX07G=Ii_mUlSkQA$^(N)} zDsyJl+ySIDn-SOs0@eoV-5*}8NST{kO`(C#-5N=KYTA|j4!Fffnf61kia$ujsXUx- z9iJk;<V0n-bS@5vOM~Ks-3^*%PjW}9?Y2AS!?iicYfdp$?Qw<QLld|uH(!$Et&f2K zH4F`>ra1z2$_2OpbxX__dv9U)7aoyb+P=8%fxi(fwR7NtVN0D2)mbwINcTOPU)SU# zD01Q%f6&ax1*Q*{m|=BU)jkJWYna|6-CuhP3u|*8)Qbc4t1Tqf#y@2DPo|9QOb7{< zcI;=)A_d^1WbY7-g;x~IV{qEdMlRrz<&ySZO`-*X9pT0L`+zee8>@WpxqqZT5g?o* zCr={_I^`|<<icOhTpNeU@G-1{X*pu{0O*XmE=Qgwo}SFNoNP{1LupBs9b_s!*)_^l zG4Nr+nUO`0khYpjeI=JN)W>VG=k>e7wm<<Uok>sJ0y8<%HkdErJpI%_x8>INtpjNI z3Ab^Z(Yna?NIgypo4jB7ivYcYFMrx83Qs9quh7TPa+M<`z07rxUuQ2XYQ*U}TPc(s z?65ee#%rJ?Fx~3g@%C6s?;e;_ud<NW`9Oh&5Hp#-f!C2)K(o=}A0=2V4tQ0#a9OGU zCHf0*VZ)FifEee0r%#KEUO~%py6;=hIh~+~AxBjVu1*)<z{r`WB0!};448$iU>3&h zd9HrA#HQW2B}37aBJLO#;@v53BZt6jQ!r;L&swNEJ0~ZF4fohPLH9Ru_qO2%Yw$GR zYlJ7i7(A)~nn`>5w+5@}DGSv?CZ6n;raPdVsLDF(X{vDwp#tyrbC6&Ke2y#RSCreE z%Y`)o`&Af)6SknX&I}UbW1Y+n=_?LG6?(uB^%Zk`)z*Nc$!rnX?}rb3D48I8nrKMV zE~fM?78t<4)j5FE8>rNFcGk^V4<re42}O75#e8kQeEmEtoB1I4m-_GoOpMbOf(gTv zCfGF~QAu!bP<n@tEuJAeM7zq#hqZUB(p;ocu*;t&uQN8@w@E7|LsL`Er$DQB-mo^P zO#%g{&!akDF}+yVV+lu$_v(3SRwOubgrKX2t?|Ed6^6!f8BQCvGlf#M4Rx=+HTJID zzG>dgZF54;5y!0V2KyZBCnp1`GhW5Hg{DGwVAO^ji5jUu`K>SQCtI&hyuW{1dUPP4 zY#lm3_F=<XTQ-*;X$>E=cM+cGnw(=w9T1!ZH4wZ%r55_QuzS6xU9tWFuQapy4Q(or zncFIh0&fgvDwUhgl|0qod#-e?FwXOicsci^Rwc6Grnrp#L5RcMLqx^J@so*m&7~F8 zMEFx(&%xJHd~-T9u{8|HO|G!zo?HztyQxsNp;LZ_fb!s)){k>AZvP(XdZo!vRPC?H z^7qK4NwRQKN8Zx69?E!WHCjGyaX#hi#}s8!iLG?qEz}3ANr=i^r@>Pl>CbApb8Bry zTMCp&vs(vGr3!Ot5UU%gVRN}HE@0P6jcR%ur!C>Suou1VTU@wWS^!a9!>*O17jBh% zP{RXR*r86XI+5st8XUoOXQS|_SWmbdeoiMb1Zt8}U2f!JQr{q%5@<svzE#sOX;7mu zQid{O`*3nwTVhywZNjq<=X+5v(6-Lay^_jnU)$$>+eYd(E(S`c>>}Wae$%Thh^vGv z;s<+<31X)DFVq@cP(z9ITyN0YkHTqesUGC!nvq`np~!7iscuud`Vg9HzDqTeC%tn^ z{S95<XqGb@CBIRGvj^NgTQPy9%%cC!a;_Hvs<bT!)8jf3eM9OTRhso5WHaIT{QdTI zl%w+Gq*cM6qN@6v06G0|o%H6+Y!{FJiH}p}*WfVI^94F(JKj2Z883CptvH0QDhX8B z%V#`~mCSeE8MV!{stO{%)C&|Jvy0oSEp*0BZ~E7^gUQReQwM9kW^XNwW!7N40htK8 z>F<R1kqOZri&W?iM55=|<u2%WG~b03ppWP=E7<zmD;@7Zv8n=&?et0o#Z(wCo6!;U zwcz{s<HN_L6c4g-T-UdCR<jRI^6|@K9S<zvumf{Z4Nsfup9<)#&{<IJ+XLVB!I2IK zOQfS_`MUMAsj0F9ax(!q3X322#fDc%1A^ST1>>a%{ZrBDz0kvGyz>Rr2@L4W_GHR( z`_w<sS=%@=QLMT<2C|)a`h4fmX+d$-j5{5mi3S5oMq9b$=Ry`~9bZpyUX$kg0xQr9 z>MGg($Ud-XlBS!nsIt4dQv&=K2(Qp<e0QF&12o<KLdv$4h&C8o_M;URPARSPLOSu6 zduiYZYN56p2!m)8ciACD^OzF9cqbVtF98n8`OR!2IPAl6dK_@BOJan?_39!sFpI4W z%i7}DEIZBL^zmd4+)W!@X0wM{TlE8lN{V?Gkp&CeId5*`j-GkfNmqc`_Sym*XvW@s z``yJX!?)r)c6Ht1??-Xv$~gVb8#Vlh%q%&2l%H@;Yrp{it0ZQve=az9(kt|v<7nX= z(zR(=-GgSl#`zt5R}_H`PZ{07#8yffzQb}hhC25dZKSqtt(O);1UVLZGNY(n;br5B z!l#v^`Yn6D`fw7LG)<<089}(_{B8!gdafBV4BCz{(4;Ls7g=V0L~_lLXB-Q0|8NnO z5#q~Pb?$I4i9W3A)OW{G+gX#}bSxW{aej(+q~i?Vpf0)HI~qQW@zsKzS8ONJM|Vyo zj($8n%`6xB?&Cw9ig?o$#ne4z+RrPWkQ<J`nloBUha}C>s{8!zHUx)qT6fknKt2Yk za|;&j%?($R(6h5_@|4XN(g2Q(686;GRY~AH@|vLP!it4*mfK9w10n{qbEex`6p5VZ zb?i*$Z_*5OJHQ6?WO+Xt-TMen^?sPT(B0|mDYX0R3kfIW$0Ok{mWCmGUhd!RbV{&O z4X0%h>g@3n(Ir^cqZ7}Ri*ZF^R1~<PFeaR7HR}0Dh}PQL&u1UBa!os5)6vf!hDPgA zS8iIRGmt(-;qq|0r7I`pCI25Mzv|5+_gMvMjFI>nKXDE*&TGu5z~kyvU}fwxaikcI zt_s+UF|g}YlzL|cFrsHW**rIqrOsRPp8+MEY#P%)<2UkTdW>Xw)SSWDjwHU%!DA^z zz(_9Qd%do_O#7)thV!oYl498kfjUJio#{yDm7nwP8uBj(j=Ll#F^gh41(e~%%w!Cd z>l*J<#j2&#Ow$N8P2uPC=15HH#eGkz-ULO3u!F^T`?ZnEL2Kv1Z*{)O2RFZo@fod1 znh!FGUr%3d+)eiDRQLmxB){h3R=#%klaB^b_S4L##w`+)pU=K=4Q=JCt_rohak=!A z<8?@CuQxK6uoT{zVxD&=Pv<!~9v0MG^kitU4MPk~@AUJv%|G~7aiz2L7rlYVj?Chx zs1M>;vya6(%FK99qXVgfkEzMl^Y7jL%dLMtg{$4lQoKvPr<SA6c30U3B!@SkT;^}i z({bHmLCvB#uE-B$k9L1-$*>5mBnW#kED9b94pmq)8YL-jRq!|;ss#bG?I|M4LuVm} z?svF3z+g&>KY@})z52r4|D8-_cJPelV2&x`QBSZgh{P4R((k$4w4~PCH`LOUc6beZ za-dH07X-ri<1<*hk{F|X6ycCY`)_-%R1Pgicqd#BqXp6;K-z8Uh_P<c!I$)9H{%${ zF+N0EzK2!5k=_ci&4h!--|1^yP{nHKZ3s+yvmj+(oK8J=Tl0mf9x_{S7kbdTI-NEW z2B$=wI@G&>Ee{iicLyhK8REn(!<Dg(-0dB`1Rh)e+94F<D5G0*!9+nPkoINAexa~~ zQiZQbXw5F=0Kw6^_QQtO<y)#sxB^f5Fbpso1oI)pyN3|ZJGvY_Ic8=zHal_j^fK1_ z`O!fEH&}7%{Q$1g_EazG0^*N$f7+v^APbTjg+oV-cuqQLl8&BzUv-{CZmHdBubPB0 zzCKe{3xac^U%^9UHDTo5_HG?1&{RMvhw>*g-GhWGb2&TTg&v2k@9$2bJv#`(y~e3V zpqq~~Z<Pyi;mlXtj;1n+yyms){qndqj)tcXep%jEi)7PK7(`~aqzSrzK2Igi{Yjz> zrzL{lr8FMjm`Y&2A%5;n^1UPaNEKJ7lYbAO9W$Pn@SotE1CIgqld%r7bX?*+-%NJ! zCkL+p0~I*cqxf_SatQlw=6kA`s37(K999H;#d-MeYwaGlxj8TIy<Dq*d-6rKx?cY0 zZ{*J8(at1-yhM5WnAA(q!cY0N1y?aW>DO`g6)3!~(Yw?{A!_%{rSdlUG;!I}B(#Z7 zC19762fd2aM_lKZHiv}MZ5Bk{=Bef5JCi*G#~~HWiLCW=5uX0wk?R(|tQXqonMz}4 zBho1r?mGuh3sv*qTpFe*+HVP=WtFEAIIpQdv<D`+a*j;ssbGv#L_Sl59N?a{3-8{4 z)%wMpXJ7w5E>+$dY}RD^l<?9$ja;=?<?rE&kLfSu+efIc=ex!}E}U4+UD&Y@m)GR7 zUSwdqm>Mf9r%N6j&p4z5OK5}*`dp@U*UXYnU=h9m8zV~s$%-Q&SSat96?G(4+<6+K zQ)a<&|8yM#$d1&$mW<HOy)f^p2L(3~pm3Pk9bYm(D5-n{6w5sRnw5QII|Iie#o%{e zJwq^>UF3@LanI8~nUu>DTz`~F?UosQu`5t@+q$lk(2pvNA)%?;oSe_d!vHeY6)~59 zr{s$TP$k3sE%V6@Q$glT_go{8@GY*6Z-_DQ>)$D4|6%mCOK~$|mQ7vz(p)3Y{?Feh zBs7K_VB|g&Os0u$XZBhC5d8UExqZU>QCl>Jaq`Vb%xWxe<8X7GCnjP7wq7Jo0+K8A z)%WY3!kdg?Z`&l=RnOsqA^pp<jcbnOrG(&Yr1<zlbEQa&s@RI8`*68+&0x*q@Pt^V z25h+;bz>D|SCUcGytqP8l*G?XjzI<=6=vx5iZO@MNiJEOY-KT!lSD6+g#L*ulfBD{ ziE>)#p)?@CEqV5U-%CE;WBY|86?FSr0KD9wa}f2W**P?+tYrM{wMRCZ6%PxbSmDCB zS)3vjIw1?WQr+`1jG`mOI#fvKh$^+z166(_mW5@{*@2U*x*<m;J5ynN$H%Z3cd$fs zFuBzrVs5ju^ab!x&d|wmoILEN)FJ;vkqSJNFOaUUXWbqnmgf##l>QUNmMMEp(ZF3^ z3Eb`&BHoIYkYbC00#n&)q<i5)?PXX~$QTn|pCK?$u>ww}d{FZV#pSM4_9Wa{8^Ydz z&C<35+CopU<Dj2!p(xyTyGFnTn7uJne5EwDecz{gK4_5_!tH=6RkP`&n^{=(7*$&( zN$XWqYwzQ&IF(h`(dH?uIbVARCS*M43M`UNzP~>DRWK7AW+)e4SK>BwolH=sx0)rh zM+i)k&I4b7$F0O|Rr%(28q<mOGC;g{qC7X3IO;r_NELcux&Kpya;l=*=GUwsKF($P zch>qzemV>Xi*9NnnSg1(&8CsRQC)9U=i!_w3lGC(Dqi|7;4}nlkm#gWBk63{sx6{P z>UD}O%DC=!RNX6K!g{WExAma5;S4HSav;-r`W5hR?YV{qrTvaa1~hf86uk8jge}9> zpE&`u!eae*N6Kv&1t#1+s!a?_SK5zXV^yMuV(Ltp%_l_NjnF}s`6!pA5q1n!qiaZ+ z`M3<Q<y=}vzK>d%>oTC11!=`MabdG^OcXnCTv-r8sP5Pmu?K&sAjy4t%O23e38K!` zOCx2EHkL<C9s4cW)%V2B`)hNeS)Pc-H)t6<{g?qs{Y-;=Qa-HjV5|GU5T)=HaSO5M z5AEz>vOdRM!dCCct@MqUvc>*NjQo=)7nDxCy!&LBfI?O2QWF8eWqT>(K#9fIuiHNS z{B-_Kn6_5n#Z%OhMr=~=zhp`$W*orB95|&td&f3sCXzfS(5+~Cd513d$xXE9TexQr z8bLg@aZq!!)+vs8V7*OanG&*-S$eBQ3{fSbxD!NWTerWl5*a6MKcPb^!s|63z}#PO zFw6rxm+ie6G6J7IP+who+rN*VErph=JJv5{mVXQr6<w-<O<3|B<m&%GCx2r9`Sj?+ zqmokTQI1Od(51{GN7#W&<<!ok{MJeT;W`A`b%eF{CxJ*%!=#I5yqM>P_T|nb%Mv0! zk<v!1ikfAJNU|^1wO#-wW}CkkH%<XvO+R@n!MwBC(-N}e+&E=R#9Vg}82{d~#Rs)3 zaaLn*U813EP+wqbLbN?V1i4;Yv};o{U@Z<U_*OzOtgyRoS}%0qvmDq^lGe0b)WE~s zc`d&yptwxmG1TF40s9=oQH#HZoO60k@@6}so>^hnNf3=T$fMMES(Ta+g1NgO(Mwvp zLX)DLM!x2~Y0D7L7Z@U}4_pRawn!vqdF6)XZJ%!hlW8lZ0Rbdl_cPs_dk>a_p%*MV z)0&J1wW^)WXHyR(AfDf}wU{iw*!4}>ra6tRqQCdz*>$E-g+eEsd^YZk*G6<2c2YpZ zT^3oVA_QnulYS)<<JneERm3zi4?h~n@NUmPC~#Q<e=M~f+h~z^rI>~tZfiHQ^r@Y~ z>;~POzz!63^6Lyj`WLr#-TV8ec+$ii^C{X&(qtj~$RPPG_h<Y$d`Vd$2MK-E*!vgJ zj*3Dy4-cX&?QlcD@=mfFRoW6~q36qQ(iu5dN805%kvLtreO_$0{b^zK;^IncuR<YB zV%^F?TO3prn0^k_H(|kiyQvO))O32~c@BzuvxUiZ>ZM<9Yb-$zEE`5iJRS43CRI0s zhKaDl1{^z~j*zMWRDo4W3$^=$@7D_Rw~GrTnANN=UDb)onM>@P3Jt2QTI0!HY~d`# zN)1`$vRkGJa2K{>c_Nvi`3O@Ecb|gtf=M>5eC*WA1MX)#k7!pn?0)Ss9kfHABXkPC zHOK0Rv)3ZVQTfP<+i#bu;O+HXk7)F_iE^5Ky>=xy&e9z;nv-vs#3o7jfKm2l_PMjS zBS6F!R5*-xXIERjrdQ#hLtE?iE>Gw%th;1sytlNPaCR$vXwud)6$Mvj+>ub1Wt8;8 z^S^htaVCB7#R!I0rUORPY)HXMss^X=4ChPP{hpIrZ0dOJz(%&tvvr}%HOsf_PJi0$ z=YiQ&&t>B5<egQ*%?_>mkdvft_qVcry`BxBFp9MXyjmx}KJ+!Q+eg`)pWJGO2DKM% znIlbAwE|Xp6%ULAR~w_4_r?&-2#Qx$v?|8cOJW~5y%yMFEW-}ITkO<RVDE2z-JPUL z#jaahOeR{`dd)|NzbZ`K4<#I|o*FTD2~MP_T=qphN3SP(a_)-mzI6xbMC;TCy1h^Q z4>#g`XxzRc8kTF8xu1=RVmy99EpzJ!A*-mECE#Bs?JG#qs{2XcOILzroA!+rnyM{K zA+MECeSOf*BYn7niee>GMODL}ocxM!Rp3G}%*R?ncWnvM!p7#ylCQ4<U0hY+!xP<Z zpd&We-4S|*-P@je)6Pk#=((suly39p-_LBaWJ`9O3`%Ir)iN&0BHZNkxU=r!s^PQp zWsXiRDbK?a>tFBTo9kHTSPB(e^gly;wp}Cdtd4D&G2=A<+Ug)woSIgzoY$(P`{8>i z5dT=iMb{p?{q&c*?&SQEnBPr#XuegEL{CpIR2PD52?+^#1zfU0XXrdw@+5qHhTNt@ z>&L1v2M>R#D**X$nUqaE?<}ZiAI>P?nl|MOABUPfi60#_aDQ(#kf+6!T`@DXL>g@} zFihJv7e$^`dGC)GfREDLD9tmqH`1Y!<@YzCA}S@HI4G&VS`rtmq3c?ca*?1$zY`ej zFfwUPR5jXce0zoc+<2YXv))hvn|X*}bLKlko&c%06dEPtTMv<;$vUX`?(XiDANNUL z-Zr!@X=RGy-|F(*uZ7R%mr+M*jJY3;qJIK8i!w=Km@-Cdw?USc_?cDSlqqsJK3r@= zlhM~Wl-0w-<3rYy{i=q@AiA7A>P+CBe4Y3pB>;_Gx?ZC?QF~`xs3keA|F&n&t=-Mj zR8|-G$9daz?91L#+I}|VDP5G+ABLszkC=VT!k)i{f{B&7x7(|z!8Q*+TrVl^UovK@ zm=(1tE{JmPch4Jkn_6r4x#Tit9~3cufZc{|24V)145}ooW<JJjMi0Y8X??cdwZTM7 zB#5H<Dhf8^MEJO2OYuvl=Y6-^@5e~o-^{=a5b0R0_Gy!UbJqL#PJ)?lJdwBh)oKeL z2oD7!DSQ0Gd}ypLJ8T4z(rf08;Ik20>O4@dnh78kzj`_-DBCNXbGJ%u15QB)>h5IF z>#f-2>FT}GrBVkcUaQsU>_B()wOw?eyDzkrr*p)(;JzR3Lz0O%FGK}=zS%Y7$<nEX z8PRC<Bu&|@%~|fu@=%xv+5K*!IakMQ)jWhL=>EKI6uPv$j~072vFFc<f@Rl~-<BP- zA558IO|qU?soPdHBq1hNo2YP~DJ0eKnd8%HfaDZJZSHcpdw8K+t!j6%UXP52rlzJM z_A?u`(xM;`h_iyRFy`7pX)6RG^sJq|+-%<TzPs-$X1dvNwXT~W44uI5y!bsTXfZVJ z#8bz`?w;HZqlo?0S&hI7Y8N+S?-n{&xmnxE;O$TR2kl+kBf|#gI42D^<9lgj54-p0 zGwRk?Uc3Li6XnkLYBpBKmdMw8o^z@#w}8Z8>sK6ea`oIK3$>$O3)#Ht37DgB8TXvj z@4KBoOTH2Mq>|ssrguV!VSGfJ@@Sf8`B6uk=;hz?_BX+fsf5Y;LN%}BE`2fh>g}@I zS$dJ#5>Jq)l<SuN#<{#)ds$D@o{8?6gbfd>(8JGn=E>4Colz@PiQZIFF7VPq-Bc;a zDa*eS4|>@qzV@W8zl<LjbLO4=McqG5B=X`dt;+;mFcJQaZ6TN>YJs8y0fm@WMejA& zo0hldsYeGr*zcUGbWOQX;%iE0nv88-sovjU_bX>5qdy$Q!*!EBhR;PxZ6aLAubopt z>!VsZ6WKl>yq7^fNfqX{t3y>6GJW=v%vW^sy_j~R!<mlfPkH4r*O|^cIa9K?=!2ra zti;Oy9-2$ak|ei`hUF3^%{E|Svw}%)4m-xH0S3TPjH)j2v|p%<5QmgMw}8z%Q{}Pl zfd{x7r7pd0z1xquJS!G`W8h=AP~5h7$&;HcmsQe3z^*UT`lxBF(B$wDO%%BIp05qU z?b1tyvn5(^_;i@BA~1EBOD!3DF411OJ;YJF^77z<i)NActmT0xntjR_3)h&MOFFpV z<FI`>rm!<jLc(h<q_@6(bEpolC+qS5ObRd-!q*EG)QZ8BEb0ee^K~8q;=v`3y=B*X zii(@6aVy^VFE6i%W*24h*dJ~IlIflJIkV~fXv(m!r%nhpzWOt`m+phnc$m@=`PI!| zeILw-QrO|tlSH2yGZlbw&&gcFYc><&=kqT)9FEcMfy4FpXE>&C!*Ro;%NQCSQtV(= ze5!2(?@n%{mug;}MLF)>MZCgoKDM*h@UA?SaFU6r+fDVXr%V&#(Y5>bk~jyPHe=ba z+CoE~y3v=-?^GM`XW}2e_os6N&uImnWc2moMp9fSE^iE>)t(KP%*HhEkFB&$Iq#w< z!i0ZWKikI)rn%ek(EoT2mVx&9rM1Jm{Uph7oo0CR{Nl?i5%<sOiAOR2o>MY6=+DGt z{D@76mSpo?W^G|CQ@i~NHw{dbzItzT{7hTHk_OTpY%!O8gSvjJXed|o-RY2P{&Z^O zw%ycAikGCm>xN}d6uk}zK^u^xb6Oosc559SJ5(u$a|z&&&*~Q^?n~E|EZ<Zqv~wS< zXkYfk?PVHx13I>KcAdWad8${}p5(My7vq}x;{?9@no^y)CEn19reuqADOZe2si0|l zGjHsgE+0_Fitd<IZqMo5lGQAFx?6<xK)f7xo#d-sGOn@Q6Ht5Rop$)xqYsACuv|cY zec!vbSS?8Bz21EX$lq-e;%B3ufc3$xKAw2AJ{}S%cis&xn6y8o%}5{gMP|VH_k|Pq zy%Z4vS+?`%PMOH0$4G2OPn&%H+<XYFRKcXkR+dK4OQyfZUz59-YtnW2j$cU1k$f(w zc#L|Vp>)#{T=l|Vd$Mg|(}cTvhv%?!2^Ju*VBTI+iwOPYaOZb8I$Gg!_vz>S18Rkd z&9eVl^*^}q9h6$4>mU3xCCsAysQZ}A8vcG8HChHN+dsp2^mBn1o;xUA?(k$OC;8_w ztY>Fh?_&n?Pdq*05<suxcO&7(KUYtYT?B!azK}`Tsr}E|xInMua6;(Q4As}QKSOis zY_t+sFweT#6aEZ&`Yir(sg8mb-tUEWxKM@Va8WXQSuC1_?Zd*~#)8!#ORq@#Ss>!H zU)9#AXC(cozU{}0$Ip{Y@4yARnSO56CCj6^3VI(A2BNkCdw$@bX9ASld}=1WIhpz> z-h)TbKLjHY5^H$e)C-UA;+ipt5R1Na%a$1TE{;YBHxhlkc(=dmlNk{yF{m&c{T=rY zByap~!h<(9l*hNoaDWx#by8FO@0j_Mo%?>5@pd)i-%nhB(FHAN4<`Qi$ASoPV7#v` zsOOm!FU>zg<UojP#OWTqI~2a2ieyHk2y5PdE}xCoI-C>Qb1Bb}$Ia-u7!lBulNs~3 zCt&TwgDDXo_3^lOjb|%iVcib5|2FjmKI>sl;87P8d2cq~|DRz5yHqNO_yj|;FRV_y zG5Q~{`}o0O6A~YHvj_aWMY5G(COy&?ul@M-DBT0IBv7it=ui9oV~HwZHbTWGj@xu$ z{*He<wQ5TBrjl^p>#W}x=J2v4$Kh5fc@1ywmn};Ag_UPr=)-@)y+1cmqo`ekMtiMF z-tX{o_?Cph;t($TLiXpGptIM=BLc2DI$ZkOZ~v<&Hix;i!*FZ&=#TUSxMt`Tg6;cL zE#E)G7{N^1uhNTGgy$(8!7lku?%kg|aJL4ZJ!}FwYqjz5Ei6@j)T(R5Pq&X>j|>Z# zB}MbGe?L9`!vVB_otgjNAERNyAvcvxTA85B-A?}u(RW5%Bd8vq{HnW$6qAmyF0APO z=Q6#LiGTbVk~ND2*EeN<C*6g|k0eQCvSZcn{q3Wlq#+m_Lxr&8kHcTM`BPlvVf$gQ zJsOM*dR#LQAWJ+KQ*rvAVO*Pe?_q)4t~d!x2v{Qj2Z+#L{N02bQWfWqZ(#%hQwDP4 z_Hh`NBm}dB?8<oL-_@wi@l(8Jw(<0zB?!hbz2OuHRL+YN_ZNz8B>o$#s!rh=anc+w z{w=hQnXm+j;lK9xt%Cn(yA4A8U43@6Lb1znGZxN%zq`=aBlFLgnaN3#Sah^LIetaY zK?rX#6N){4BmS2Tn^6b$tM_XI$5X`*w{a`V<6sQq-EurBZmHu(ojS{K<FE<x8S}As z|Bih63>f%U0l(Sf*TeE2%#!*KI^2KSFWF8oW?GRvgm>Jgvrh524MbtwlZ8h8LGShB zHqgf%q6d0nJjd0FO@_PWbrTPNqwC*yOD5m|!uMR`3DyCHzs;bhIU&T7qODE%=b50h zp@iS>h6)M&278AqD8z4f=_-56KRZsu?|p30lZ91v;@UsMhy!#v=6ITZbqwFHq(A;2 zIOhN0)L|2XFO72_-x940wu$Z2MPA2a#&`+L5=|#rra#>?s{$>EC8zq^ZV=W<$Z;?; z$CEU(;f<N_KSMM_hHC_I#)+pK*o{<%@8yG|X8&Biz)}h_^E2*c9U@I5e<$79jGOdl zGF4>R{u$DAE)cD_m>(T)JFhR=rO|wx)jV$MDdh`?XxD?3@nxIN$$y3sz!Wh)VmzXv zxKqRUms&3!KMHJ9uMeBR_wIwv>A$!5M-qW;ViGS_@ozWN1HmjId~4JCxBcuCc4^}d z&rco)7y2L1@VSIO2|J_SJ852&5Bg`i>K?)ge_p(frpbw@Q^S9AlcT$haVZmhVXS+$ zrpR$KoWOqRWMR(u_nD{8@-oq%;hURbIqo+X*vbvRQ2&#HNuI+sqgo$_Y}^5|`P&KH zKAxQgz{E!6e_-N2FoByHxPAOTFo9cO|AC1=k?cP(aTHzu0~3Gtj{m^KADHwXm^i{G z|AC1=$m&04;s~Jr2PXbN?f<~Ue_-N2X5x@x|BspY|A(32cs<YX#|v<{xc*}){zTjV zW648#IAAG<PJ(@JYCwl=zHkDe_H5Eyzjp%v>TiAdDAX~M0S-rLqgMNa^|PE~$|mwk zL_j1*Vbd{pMXv<t-xBseh!T)GI3XJ?ulEms?ca3;$7aR2k!F@!TDTnl9AJQOn@ddz zkbK=?^G}RPOA5U(mJOgD(;(+t_ahqG3D^1>(+paH@pULpcFzeJ9~5Aw-k9@Edgp#M z`k0hDfuDcrcZ)~bge&>~(oQGvk${vRF}42VWy9Sf3^dop5aD=&KmSZp8}LrOpR@b_ z1bWaNaB?4@MD;s8SyXC-UmQQlzw5WWEOYW}SD`bDX9P0(v>!a>0BKk6shGDE@9*zE zRjy-m>+3St|M0bqgn+_l@zf8Ea_0T>T=1(Yx9HC}TNrn|{pShlfGW+8bk_UBivb0q z62{?($^S=w5F!B7wc2-2mf0~j^&@2+w4R>t5V!c_6ctJ^oH!aiD)C>TtraIFfOdeh z#;+Vx_W#GkamJ;9r5`_(D(4anUP<h4!=7!gwbZ{L7=1|ttO!=MtId{E3Ilj{Q}vb& zAEe&iYO$@uOuix@Do?Xp_TC()E2vrCX&W@z>?EuKr*CNwLg1;M4fz$5v^LQF@EDYs zGrF@uK}3wxs(d)B%#eazpZW^c<Jne|uij<IehO*;g6-!_QQO9BjM`F^51Swe2WhFO zh@jiZvZ?Tjaa!!!%FU?+a4i*`Y#Kx?;I*dh=(gVds6kCbuXG2Yr#BVj3Arr_KA|)P z*U-O=UC)+yX^N^ebZeEx@;Ny>_m8_x)3^*xB|OW`FF)_Qk7$_k_1RBa@jY;TG&E;h zaZUtPtD-l$NDy~hi>zRKwy?f#bAn1e@9KHQVXNMvhEkXFqt?42WzDtdu9|w3udm}Q z0=TNQ+$PYeRG;DCbnx-1mz-O>MGYh(fvKs>ZCnXW;1nSB1Q_@n>MduFZ(Xpob%7@# zdY-<_*N&I5q!5l6&xqG(e`1{bkHYx0){ojq;-9Im#19y0tIHMoe<z#^Q1EPmO1O@f z^@VwcL;b7*=w~@E=8k8MpQQewex?cZvwTS^m@NBueQfW+`A2k)x|-!y+uCnxkma&l zdkJZT2;%d75CP!jYlY~GttQ*1QYeTn%(P`|P1jKs8fey-3=}Pkp+s19y;d`w*|u$i zYFWLuW=K^Nhm1qdZTdFcjZ)vMW3CmUcI=xfLz&8Nl8CPt*|pHP7C0*m+(so$3W|ts zxB9B=PQ+;F(U1tP{2YN(cpua}LwRo$dW+w=!?}lTM%=TtwH+4<aot+a7QYC-<WgWa zKmn;8C^q$34k<#37bdJ=-o5L#8_8BI^z?H1`Br~Dd@2u?Ld!pF6gA?Ww%12F<!D-9 z<Fhs5txvAM$9X^<=F=j=tSexdzJ*T13Z5q+c_n60=304xJ;UVX8$RwzWFU$t1%5l< z`awhF$kyl&rQ;ANa}&ro*UM_P6L07oS>X<O3i4Ak^i=<boe~ffjB_h7f8~-d_d%c) zi4HwhfBYnw57pjUp!P~%=B4=aIzhNuJBLf`nt|GDOEBW5FLQSz4!Yw!<O&tYQ?VU2 z6}{<&s+s)Ei)<H99LEE;d9|rDgIde+)85m}E-OhS=jbFb(VtHH0T<rq(G{CL=Rw^` zoY{8HeVS^nZu`gm`bXk>-=sU6ca4Zo7lPF)9p0I^W?eBp*$?quT1Ami=-N#QBZ~Jo zMqkqT9K49&yU`)uEPyxWfq<s;aaqn)ZhdQ-dNnz&xw!+JSypa?t1SbNxR!!YC^7M| z#GcNJlg5?Xax+<rUj7}33-m>?U`DI_pUr5-?-MvrF$L6UGf{UyX}NI|Dj@0}KwKZr zQFmL{q1Ctym9qDZ{Ls`pi#8F!t6j)CAog6U(y-2}pmi~G8~53Lb(u{)urLkXY1d8a zqq;kR8Qd4n6S#B1XLl3<ey55z`5+&q3W@97M;Poo%ns^URY?sknk(ieAFOHAGL5<H zB4Y|oiO)-H`I9%ejEdjfn<^h|V5Jk{6J7sdaBI@Dt2FI0N6pNc7z1F~EfU@Wg*#Lx zn;Wn0PdF*zTr1M9-~ffiySoq<R8i9voj^2pa=VPH6lH86fiBI~AgKYvua<aOUBYE} zmT@Zd49x}XoHSJ+O3&$u;N}?Ga&mXmv5N%6U)fpoDluN}nOdy#uG+wE%0cDRdbi=t zQYQbxQD3MXy0apX4m<yAgs*hkw$|s_EV|Yu>ciHtAaw%23a1%nL~1x13jK=`7=S{= z&}Me=cyXM402I}Wnk2{i`HyrU*`0n*{f|H|$$h90nW5e@sQ3^a3vEgkxVS_ckJ}0# z=A0UarMjyNB2`TL8hza{ob~ED)>^xJ){m%ZI3Qa+ZE%t0%KMdjCH<jWU<ItOnfi)( zZAGhCPGeUG4u~D$UHM+(yu6nb#AiP~!+zZ>+MY{#sZslD_SrPCK%N(>77e9Qa6<*h z7?=WMdd+MWVGaCn4;b+_Fxb`RKd_?d57)7Uiq+0!diIGQz}h+Uc{g-QPyDp0L6V94 z&Y9i{Jwvsv3I4EU|LEbv`WG~5RI%(j`c-|nP0PonY4PD(EtUGTgFT9=f*S0lSWW|4 zg@Zokdj<vuv!0fzu1j2xUXo9Edx8Jq$J<+s>pEBHHJciP+FukPY7j5<*0UZ-vMx8* z+{(4Qr=g)SYuQpeoigP~p}!v3+6g5>!(pWE$ZM<i=l=mG_J_-@HP`-L*k92UhcSS< zTlPkq^q+sJ0-}=&;r2i76gOZzST*VT!z+QsnLc#*qLfkZFV)PM9Lte@Uk~3@Y6|X6 zJppejV8Y34Yn!tm?={_CRzQ7=qL}duEZ8zN%pYs)3;y&Q3|e0P|9E@PsHnE4TX=T^ zN|2x=B`Y8Z5)_aOjR+_rL6T$?kenr_Zb2{+6cCgwq99R_90dhLa+C}bB}d8hw>F+5 zea3jlcb+@$^WI;_1FgOGT2-@V&8k{^;Vp2p=^)x5)=;s6OU=BcWo%_I4mFF<Q%yGM z4HD)I)oGAImAhTp57ebrJ~X81B$va`lh5ls5<^BrLTjkEwap>zXyrbJvA>m$7@?M~ z5Sas05cESY$LJxuou}pj+<v}W0nRGBRYCBegx!SoIvs6@w7ZSX`SXTlMeSjW4_OoV z`~0vzHRdYPw(DimF7lfLFU`A@cPjgRnYVX#xD(8$q|M*a1_Uu}1HVZQ6_Y4i3~=iS z+3RibJw60p5^0@a-h@b4iD;5FEDe0dfYWD)s`+d8NykLOaM&Rm=xkv7W`)yIK$rmt zZLZ{Du>QZ{;OFprGcF9cws^aO=<V@kMZi3k#;|a>g0wiq-a)t`X~5Jd+i>kLc+=Z$ zjysI4lW<oW=9*sHoT6RSwZ19rdqQWdV$jvc(tSOBgSa0%SU@=`tch1uGvs=uXe~EE z@Z;OLM7Q!)#?ehThCD62Dn0vsgJ{rWUej}G(P6WHm`=*!hZjfePWhsbG=uX%sg+Ub zVvC#7=6;K>qgl~PLwYrsY@xN=91M1;i_1WaILGg0IP|hhM>{l2@6Ga#hKMg@cxU#F z=Xh3u_qJ0Qe&~_PA4?~NR{MmWj-zlQBOP3=4!dk<d$JaTgFI~9EJxY(bV+cU9gI&P zMC-c`4Z77En0S-03ogwU(}O#{w0}rOG-svt;-pEf(QpA~v4IY{G%1;^kV0X~>@of< z$GC2)i=lEqpD!qC@q?FaR+AkRP3k#2Ul=qN;<fRHbTQXNYX3uMfd8<&v26$#6Bsbt zkgVY;+)YXnGCNwno+DcmB<0?&`x|ul`T4U)XO+4Lm#azmh!rZw;__!T>7l#96y(w? z-yJ6W41^|bdC)`gzm`J-{mH}<UH85M+Lj;V^n>j1xlk;+pzlhS*h7e}o(OkKIKY-@ z-y}Kg>OmP3gDs&s#N7X@EjeMDus#r1BTK%Qa%by<x(ZQH+0Vp4eR@l1b5fR^h<R)2 zD2M(c<vSm-*sU!-t%`!tKov4!!%BzD<^81~y_zoU-ZzID(n=C-qt)U3Elu*>Wix5w zmLbQWhIe4+yz9h=DJymc7d1nCw!Zy}cJhJo(0#k3@a2ai=&_#grY+GHU#;)f+1i1O zH0KHX?RM52+P}UFxXxRgksGfi3^iK!v>tJyz=1urzg$!eMTQHIq5vR^pX=g&QXNFH z0>VFk6*CEUs8ytK<FJ_4-UEC*0Xi;RZ#0GAxP0wFJCb%clyhP6lq6Rqi`V9}x<EL} zKAt$>r}r0kD~YnSjrN8|uN#S$uH<{HP6p;x=9YL2o038sUVAd5mDruANR!+ne!}`Y zv#niSnx&KJ8@+tz_1$gfcL3mJ>E?4uY)>aAm6mcGJJy)aAaL;_9dFt6Ylng5#WaJl zzlnEb%R4K`eaK@fh;j&vxz-cqWAgPm`|Y7JOlwDn0sR=<9DkI--C=&U->x|A(mVM} zL#9$)&U|G{uN~IJhjdCief%ntS7!0Z#Mtz=jI=d<_u8Y%M0P8kD=*wGS_bz7;8m5m z25*WS^aKCKG>iz`^_4c>C30Hfu(OFJ>=kIs)RoJ`ZB9u8BqA-q8>bVj3@`?F0drh- zXmikmm$sq$*uXjOu#XUBoDVx`i!$7Dm8x-nuGdJKBX&0_wDYqxwzs3k+NjiRVl^o# zDF^N*281DRWs9kFk*0ZTTbrvgKI7A%m&z{cfGzdxR9#ynv6omvw*tY!dtudx@Lj@k zao<Mn5lq(+G?=KlwfR%UPit!kZXB=h`{Z`nZDS_Tdt(@j`u=kf`@wZcL3$<0VfwWF zd++_YMPEJ!Y%|9zJVT!ezd+l9-V)b2QsE)0U*2ERtrPr~NfJo1duKKCTe7i(!K2jK z-Zv&zn=bVWdasx;lL9*4&aX}i8Ew9%4U!)8aWj(&DxYXw8Vy(Ryp#1eIJW2wLj2hV z2;UtXxd2lQs}@(;vuVKXY=4>xL653B2tse2N>2VUXatggBFvu{x0jVO7VLa=WMcqM zk5cqoSXChdP5hRx#Si5S2opj9mt}A0<5h)lPL*&xQw%cz;lzD?XeX%OuClyf#BVFg zkC@)J=yuWW<Agx7Z!dZ(_8;U)(f;yXpPBRs7lL*_h4PXqFnHL=QZo!gOHYjUtv09A z5>n$fUeoTGxc|JqpMP<m-0z-aCedxzs%j$x%6JfVx$E{lN9}8dcIJ%4?Tw8M-6!u8 zj0R8+QSXl~x{<N6CXYT$4keA!chZ@U)}GtS%^3?350u_t4jtu)GE&nsab3u-+%f}^ zYyT;LnAuT<8_~1R6v`xb2L<Ap7JyK(^s_@+{8N6{LFm!&K8h0)DA?iLFS3k|VEpgl zP}u381I6k&cNziCC;1<M1n0@230qWvt(}Z1!4-Dmc;J3Y?qw!L^PbMRLoz^Np#+yV z-ONZK`qlWh<eS8~@GzBEh1H@17++Je@|><@WRP0>6b@z=+$N$yL<k8Eeo+2vh!4Do zVBOk)+d60CS0SU8wW)9gVq|3^^a0+GyTh%br9PMLb;dd-#-Y`$F{?T_@712mS1Fo! zA+02`7_d<$z~Hs^EHayvoIFT&c;(m9s*!$ivvq=3b5C_vX~jpU#y@HLa^awpdi~_^ zbREEo)kCZp_>C3A`@c$ZdWLqC#TvWyu(p|}?xfR$uw~s@?}!th1bN}@OeyOt3S-4F zxvMuoe`@CI-(wTMKVGGQbZXVOTye-jSqwokUG`D{XWKXn4kZ6hFU~Jn#l1MNlcNjo zr};a$kzK<|<`+!IrF{F|)qJ5f5|i-*dIaIovQd}O5n(2g(b-umheDg)m8EB)K4)Ux zhPLvZ4L^X{OE3U>9Sq(bt=1!#e!sE~JFEUqj8S)p$GzU%rS<Ft%8Ip#?7%s?G3oe? zvZ+AIAs6pWkW#eimX3j!>5>5Oud8N{(%0G<vfl8xvAH|doa$3?=gZ@zuPO=0E7mg? zGhF7QDs4g?8ZRgW0<}tZe$(|5)JR8im-I+Fv-HlF$kB0fpEuppd^?_6K_;Q17k4K? zrl8%jFF(-=kLrrdQ@+#k-TSH%cU;PCQYX?#daAdDILctfpGX<ImR;JJ<<?gxO-Cj+ zjqcmXuG|k)r2H~d_qSg;_fwA)X5;kka>l}wi=8W0qmRw1aZgPSbjT7X;}|!KDhtq~ zP+u-;{!P;`)j*HpRZ3IBQG79H544W3Az8~472ghBgM~l&pg)la%uywq+1M;;_|KVy zO42NpF7D?zO*G_mY3T*-@9)>5W*CIT#OM|(v6!5%XX%56hK2&O!{auhDtFljDyKi? z3{|1r`#K5;2L}h$;}e>;_T`>bR}FaF_9u;}y4&<Bzgv`*m36cN9<q$$CGqj`x!rL? z_+>ZUyI758yxQ8@YJYNGvM014j{$Eh?`iQ!nT*o{nNQ~T$U`f;7Xt5!#;VnnMvW5q zu_`a7Z4P@2{AF;jS@n!j_It=QbV#e|6?I8<hGS)Oh1BeFcJ_Wg`N7tNX`{#*xThrG z|B22*GYA^UOu>eVG6V!9J9hQ(dz3);bN>Pk$4j(<$%fUKWJK=#iP^&hJM8U2qtInI z1d{(-*D=PD(6nh=D<mZF!?QNsu?o%fTCS#@TzQ(_4Q;Hai%I2&4_!ujd$V<wFMRgh z^C~TsQra2#cM`g=x`X@<T^Tdk+QP^6_tq)yy0~fXp9z~w7^=e#?rru6QpPG%$AUIc z%pEY~@FgQg2RxSXTl|@c#O0>OiNu%hpE|-W&LWQ@dyG420LC)F*wjCIO7Yu|!_@~( zFLL&{ZN0;mWT2|Unphb;hQa%<V;IqwjZIAjGZ+|&dMoSX<+(_)xkjN+p9ZwGeHh<; z9}FdIZp_GIdZ)VXVhjv)=w+B;6Aya~2#O+mCOo~+1W<iEadQ5wHsH@FbMRPkI<$Fz zxHM-0K=eC3Eps@?^^g``csf}4P%q9X2;seW_>AnS=^$4_+n!g?{-yslaSfRqD!k_P z`s*+ySoT|5scxERA?xmdK(vm3RaU%JcvXCBe?Miei8t&<s0)BX-Rb;#9;~EQ2^f;0 z^9(~L{pUn?ZJ0!XQy5Qt`CORy@6eBG0L2satgL*Tc%`ZWr$H?nOpnVChWCE^JLu(w zr>tD8K_mAd%fB>ob3UkoU0`XcfnP#`Ay7fS`uo-HaeF~9lpN57mE35v!DJAP#10L$ z3X~SEECTOU>_8ptdaDO$Z=UM<{1lu(>oEW&rye`@g!%s{V*qs$%uCP(e)s0^_dgJn zMqJdQoS)l$C^Mp~OkwBnBwbAUuJY$|_=Il``YQDbVV#2XU&d81<M{CwP9H8F%VfwB z+}A61Vk>r`ag+h#cgFD%%3y>SSHceLj+mF!U_IT#)8Kn70>LEBu`k{FCi4stLRS|p zn~bv*;kqCxXyGPR7d=z~fHts@NB`D|<?llP9|AKXVAAI~7_qs!{LgtAxChb{t^~3E z+du^|Pnb~gN!{Yy_Hp}l>6%x2)ETey?miHDh0L-GYy(L{PGmHE@Q*=uOkL=DR~d~G z1x)Zqj{zB%FKH%toF8DRU$T>^{{Zs6cwpGg>5op~m`AJbK`r6YhN`X}r8W)$Pn7&U zs%8m&kN3P`O(o;1>#dBFS%EJg{5=4IpCJp|CmSZ?lTm)JQU0<~IPd&L#<L&^DF<(T zj|czlxSe+}@$}|2=)qT0NC$8MhH*Iu`?88Jil$2B7u*E%hK4AzS6g(^h`%=y<q4Mp z)6=MNmYZV-FSq>phUy&G-ysQn{^kK?&D4XT^2onHC8~}%L%;aqu@LLcD53pTH9JgJ zmQGT3Hs9KM6VaaYWI%>!-~pybR{$9Ik=2GBF%LhNK~PYT;XP@~MB?4AG#g@IGC%Sd z8`%0lc<cY4f`|#eR;DgBT(t7{mmU4^DT!Z9tnY%ez_Vtm>G}CIL1ZJ{ZEzctxM}c( z-!KBIOjP!h@RW|=b>n+o@A);p$@t&CcP~RH$~Eo^u$n6*);eJD`Rm=xcYpT+7yvFH zUX1vIfr>0(Xa`@e;0n&RpFObiM?<n79v#Lvc+?J%vO+s}G=l!$Mk55c_$A6N0>Y|A zw@*q++A^(w%+MRaiE;O_9Q$8$in3MU0zhg%H7(ddFM-V67Ig_9oOmrzISXV3z}oLx zmCzuNW+%e@8#HXK|AbGAC}8Za*XVIGQssm2BMK%;)Zd#k;lPQK0=#75_#^0!w97Hg z)TaITwkL5Ol#qfDo<-E8hcn@2q=|`1<Xu1i$Ur~Y+aMI}pJ`@kMWecR`K*t8mo|41 zr~+3t3p>1!1)HL(3{WrDrO*nA-v>mS{FahA)~_;V!-#GbH0mihmwybK1QP)%;vX|g zU~C1>CDMN}DT=KZ;*7YN(ZE@n2Rw;m@Nbhi7R6N~OAeW%!y_XO-|7S)j3-i3axhXJ z4elEz^2sv?gp28*5VlkVk{fOS7>Qd*S=pM~Us`8sr<_z*eGESQ8I{3#qTh#(=?1WE zmzkZ8L(Bp2!y_wRKtM5MY<dWG?XTU&xF3`#Il(A(f8pLSnS%N8BRB<7G|KY#6jRFJ zSsG<@6%{f$IT<WtX)KsGu)4mUQvk`x!SCg2pK{!|n<__m=Ur*(*rdf}7_y@PWb;~% zfmojlV!e|~hfd62qoSCf017*V?-BgH3Ix&`ths;#$7(ra;2fh5G)CBze)jxh_JnWF z!F>_otzaB*NA_RF0b8jsU<_TcqjL09QqCO<&WwHgH{{4K$D@0OX}7ttYe4{MzPv1Y z36!QpA`lrVDGcsIn45rrq@4G<`Q(NFbFOz^C|D@Yu^g4VFB<!2*HCzHj6pdaidG2Z zwFAyw4Ps0uO%9H&rclFnaT~S^o`188dLDkDEWtn$N}5IJ?_X1#J$3~d$JRPH$oT#S z|MvFez4p$=2VfmMfHLXI&sKwBH!#=8eoNyzu~XO$0F0-A2OdsRgJag^0XWfBopqSd zp;7M+);a)cp_ZD0%!h}7zj82$T-yfmhx*2}95?MhW+#I4Yr=?Izb9XR1mF3IuXsMk zs_T7@_ZQ=o<>ANF+|@H!nr#-ql85JpT8D>WkslP4RbD;$2#1CMigA{HIAYI&Mwz*= zi*U{MeL?;S&O$JRx3H}z`L{`;tN~9gtnJb~JadX^{R3I*0jRJS#^1%QaE%>A#dI*8 zUbOX;@mziL$#M+NUu01g`yCX276cJca^_c!jI@s3z#ge-XluKvcgtIpU~+v!lMZp0 z6j54oH<I$xdm@UfS|BSf_(&s<t`Y>hX^9joUjoK4dfftn|KF}BNDo(<%9D~F&Ih7V z9{2^{ZT42q7Z7j<|CZkoN!L%XgoRbLHbmyX^{c7jrqq3zLQ&6mXcps@VFKW(TV=pH zk5boYfSkt>A!<>3-5ALT?8C)aP3aMYv4p+u?7hD?8k~hSz_)^P|A$`3`hX=JB>0zJ z;iRxvub}X%eo|jN5XW6Sb(_zkSmZF^+8N+{6Wm8?Mn+U0U;lU(d4qB~W{@6OhOD2T z5eSZ!eJ%zt8qEWv=;N^i>6#eOBxXK7j#l9StBuoVbY}hUr80`A>$O1rs$_W=`7j1o zAd;hUANiCL2`)JhDWCZQWIb?&h03>Hz-!OIHVz)5?#NMYEEBz6WJ7y~KdK)e*KG1_ z_3;2FN<0O2Ux3QMAHuu_)-9JFz2*8EVBjOo3mjkq8jxAKNGFCryN{^_!=}P^6IXE@ zto>lNks72m!F_svdaxi&?m<4*2<KzU;32F4m;~R&83-rlO$1lD5T67h&x5i)1|jX! zsKitxcVHl#jQPpS%RebOwtBWz4G9wVq(1!QY<p#erY2Kx@cb`9gs}&4@hpgoN?irr zu3+i&&o6<I-zJa_yh{72`&Xm@3)ce5d;#Tu!CW|t&_~cs=ZryuPqkv@+^PQn!ki&` z8k|Y|jmhhL#;yHZCm9TN-lWBF1DSQLX@PVPi1wIbXIbr@jOwOgAe(ZA0@#Sx)jNmD z1#oSaS?1Cb0O%p*Of4IV1^g~Tp-J>`;oSfP`^gTAF{u9}#}B2tp8@AH7C1Ati6cl* zrh12ldoAkIo79}C0pn)@sI6<cTj;%Ia(V~WANn`|$7Y<A93tdD_<zECK#uRUq`m;K z_7yvr?7ZIYLiicj_dyjnu^iY9?qt0x8K|C3q~>YjR6v#j;BXi}AxR~U8@;Ix${(|! z`~j7o{vZ7Ef7)nenv+b1I^cGWO9k)4-&xt=Kc}6Zc}0C>vN=-_FIKWtcxzpk1p&fj znEzvSZUJ`GpRrtvAn+JuW+ot{gVx4|<Vl7@+nuFxNU#n1liL7`x&&i(J`i1dT^}9x z=1^Q!hq)a`5`d6j3dAy?z=^aG#JT1{)d4{Y#i&<-vc|dbuF2G5V$cf6$uA<Z<~~+Q z9Va5`d`8t1gDKtve96bhS<xN=r;1?A{cgpPyC4EOgCu-Xq=XoA*ekdKc&bNd?BUG@ z#)BY$&r=+(9>3vW^8eD1?74p44}ZG75J<~|?jSbU^Y*X)hn^RX&*WtzcMue1;{<t} zPos=aV8AUz-Guzs0i&?uApne^DWVJrH5Q;hr}O-^p3|*NzyT$j<-vyskxpTZhiznl z`z_?f*w5hjJK??G3hZYu&Nu`0Je*2w;)Me~7byhUG<wO09)N{NvR?hjp))9+hQXqN z0S7FM-x9zn%nLrhjP^}?3yTRQmAXxQ!f}dd$<o4Z!kqMU?mFsNuq4bbuvK4i^Ajxm z&Oj(`?4^GRaxp;quayAA@Bn|3uxdW^vm85M$*#CG$qXJM*Q8%eim;8k#dipXf&_3X zegaO#{oYWR3W5EW7r-eW6VL+2Cra@2cSH<%l@6dw9VVlZwSM4TD1<evtO7!$V<%Wz zuV6qQAV0sGU9@nv^xE2*;Bo^m5HK*{atxMIfX!!MY<~Zu_{8A_1cE>;w90yyewf(S z0}j%E^l;AzBW}R5jcr-b%>siv<%hp$r-JF-H4A{qd(SS1bpc1DZ^9Wpr_u+3agvJv zATZ{OT4h~Eqe=+^wX!mV_UY;Atv8lxSy73kNCSgBt6<2yC4MmQIH?R8Tpj>;oc3@Z z5f$(>F6GR|h(qPF9!$<ps5yfT|7#r>7Z{k~^yZ*J4*c{#VbA|l9RHv2!j&lFB;9+V zee0g+T40@%1e4A4<g1hGLB&2k0@9}hSWqn2fOzmVSC<N73M{}>(egC@Yw!n7-lLQ( zVW0t{0W(SU_gWE1b)Z-m$o(%ZR*MAWt`8KVc)$gG#|k_-dpJ;u{se$I2VfKhs)`vU zuB(Ineh94i;D(@ffE(@EAE-}QTmdF<<?97t^Z@r(QbiB*)T$B?sQXVJp80>(7}D_r zgMzq&v7l?I?fq%}C<ucjhQ)%$1Zlp;*+ssQxf?Gbj53JDVjs9BuOya%rF&T0PvCb0 z4Cw``o}eCBc|q#zq45%a@+mO*+Y(^4q!+$LqpQ}7)2yGp`|t(<mK!iu#0S7Zj`<wE z4lEF~DINBmp*|4^LN>|>6VQ?trX7<!$pwEK5PRPMkoeg?(Nysfd@CTP1I2r{_qJB6 z!DZl-x{)csH7Nl&D5cVeLl`08c3vQ>k_QGMAHg7tMzMk?U{wq`L<tHGa05#7w>F#| zrZPHc76I1-{pcAa#<7)$J5Q3jCsN=7lluQ(@L;Zb`)A45jZHyYl2J)n`>wr>4G>ve zz->P_X`-pCxAE}6osu4)urEFlsY?&?DzMMG4`<u)36;(*T_Mw@sjbzz;ZcSMRsiys z7yu(@K`gm}x<_<q&(^R#v*WDszv+BGi8Da=!Fj!clI7w0`ssUoQ{dVTMa~0$(ZWnP zOWMdiIs<Ne!u$j@sDt_*XfykR!hd%&^MgA_EW|vU|7bBRs$deKAP%=Z_P=N%N(#n5 zSL(Q$uz^9^%2OBNuSLljH^=sZfW5lC^AMIZZi8TVo9ifmYc}wwYhk>yXuw0s0kHtq z+;C$GN7V|4l>yQJrR|kKf?GgS1^4M07@D0+oWZx`DF4MR^2|4$gBnCt1Tf`@E1(G| z@ftAPa2A6=2vY(gH0Un=uL(vG|6$~K3i4M~KrB|M{V%*bxG1L$2}Ec`%BuAvM=ra$ zX|HW5gM~`K7-40b0&YnI8tyrdu@jsLfG$_O(z}3x@xxGb>JTlW!PQs=ga1pmAb19r z6D3{=?d$E|Vhs|9^*WFP{`~1%c6_AltwF~FLW--`LB5?HuO*up4lqLbePA&KC(w>G zvOM*8Fz}-=2~8bFwp)eh9UF1n>&9|nHRFBohH68>^^7R+1;23w^$L~-B#B^DlfFrK zFz=C!bFmucK8XeNJr-GeknUYlXwoF4xD{1ZUw;*BaIV?6ni;I!CP2@sMnV{m!7Z;W zYa1I)jrdO$(Ll4VmtoYSqhwXR1?>0WF2k=xYb`GgEFbcMPB2}PGyJx|>G}eA4{_L- z2auslhglsEN&kyv=w%gaC~qdPWJX4RP*}o*9EbT2+(&)4Wnn&A^d(?n0-!e0lu_A6 z^yX~XL}JSIsGtuQK)-6AE;;55$VTL{;)^LQf&n3=)7Jh27C@lcnRDtHo`GeRL<VGU z3uIqB@xoy$&h6mZK$`NeXJZ1)CB{xg`oZ${e>1h}raDPSN37HF<kP3yBH&o3uVQra zE`yem#1$14ZEc0-wl_d%1h(BNWzBm0st(IH8Su_eQtrU<#E4lNTl~l8K{2M-b5a>_ zXds*7j$Q#P@?r_C0`EGiS#mI!)HVc_Xjv5%mG}t}IP_m5fr}FQo<CDYKOJSxC~f8` z9Jn}F&~KOYEkRDvllc}%<SF4nqje=v3X{VLUH>SB{fANYDQ!I+*6aq~!Tu4#VlarO zc(*~*&GEO^A)pd)6~y@C8Q)HDJ_C;N`i>qK1|Rqe{$mRw{8ua>p+vOd1fY!5AlrRW z&k8PR)D9?JDB*5N;}JJsEZ-obxBaO0Eo-qFESK|rRiw7zDbQnG;G&G(YVq@hXKJ)N z*<T3*4|;v@Xg`KzAKi6D{_Rm<TNpWE^;IwM2%7QMfY7`D6t~Xug9dR>UiJ5nTQ7W` z4l`G}0~K~MTUxsD=e+H>Lmj|=a9v)+Eg7C56g^<Sm+sI%hA?k|UEbhukwHEH1qEVF z-ta@ad<g9FKGpl0w`mCDAnMQXb#45QP`{i%+54`>sBf?R0v-NjqHK+?gsdA(7~y)w zzuzX7@*n2>xwU@4&<Fr(VlI>1b7>-0(X}t<_uDVKoLw_cMDY;N${$U!AVQ=HqN4og z@PSGIZYiWLzdxzMQVE`NxcTLw$(*GGsk8m~@m3(azJg;=t1rfDv0NCoK2p-%ZE!br zM&XbrDdQ{)z&0uam>TuWNJhNY9^A#zI_nR#04F$wk_Jt*|3M1HnT`5Y*mw5^-;tw1 z-<}vx05zF|Kf98z(a6s?x}!g4pzr)c2(t}>9pDOw!R|4*qLe!2=H#_RxSYIt-r&(8 z=xTysQV!GsysF=cAZmvIw3k#kd}WUk6kGytUZuVC-Pk`c#0BmEeas8jQmnx}cWvo* z`-dAsXnFwMqA+wP0O%HIgO=iVXh4Tv9_M-A>1R2nKXY@eY&1`vjHbV|9kX5o-uftN zQ`$tslfF;x>wV)S7-3WC_a0l?owDo6b<~gkvpxvJfe$!sv)x~v&2S<KE)MVBwEy}% zWkSD96C^BUD4;Se!FNZ4&j0JanKW0?r~z`r2^R4{R538j11x+4jx)vZ_AD#ET2+hx z9N{4yY=SQg^X|B)4=y#osL@LY1Z5dx2M7LGuZ3b#o(Ud%kL%MjGgi~zUo%GRnOP2R zcNd<G`?U(j7vKgu8e5&oQZj^4q2${WaEpWW)~dF8+S|RoIjp)pm<9~d8Lz5BfvFXl zy2iRI0Q}<Nh*boJwa%800C=L0UwgwLWRC)^6p5Wka_L=%A~0FRA@tqyT^t|?ZfU_c z^}XRvP8qx^Y|BuLoTZxCPDMD|&Wnmj`E7YiDq;#56bk>!6-&hrnSE08&P>fdy&F#* z7a2FCV!e!-Jw$dSx`xam?dUrV9;XuOJ$rqe^U53h$A)1QU)l6>KZ)-@^R;~Ld)!*? z^W)7kKXzI!IKA1-yk(t*)i?V5>bR)iasRGo0aq?5K_e>Cdu)D#AB>t~OQ%l`@=}}S zS`2BNt8Wn~Azs*D3*X%;=gW{PbxRL>N2?^<S2^6=99MZ>`q5QKHO$(~C*iM~UEy`= z2rd*sDny-#)IbwoQ9vM}rq9()q(N-s>320u_%v8bsj8S)A<wqf)@TFDDVsEix?Yh$ z@iB2q#%m?wmBt~3X2lDlmRuCK38Ih6iHO__Ccbh7F)4GL2!9a#n=Dk|#}Cd398E%= z(nfoz*2<!e{{3yL@K>Kmg*JMLj#&|^pMm)CpNZnbE2#=YicQUZFsW-;``PxMLrBmk zonAuNXSGS#wsg12-j|i~tP;N{+fG9c@~KB49)<tt;J8fM&m1!LBN)=wFa3q~-vDMI z89o{GlzXl}2XVSY{9z_o`ojmv_dbo`DpKe0jvRaVMSq$Nd|jLNND#Ac7%Baw?_%2x z+}T%seSOzBE|VLa8)0Ww6owG!EYlXHF*df`+XyJ;)vJkc(&75~nZ5#JYMSxuI+h>q z&2(OSZ$0y-VpO@`+@rX7Wi7lTr7Yv~Er(<>$a`#Xy<5LjBcdT!P9V4`hEWZ7$5k;( z+$bpVC1FwVXjp)E*Hf#x2gIhKNC>N`scGI4AgT@@5BlNw_`T=66B9S@E=gT{kOKBq zmzbaYv6jR%DfPow$VUIyG{?7P2~trf!H<b$%|c`dE~Z1PiH$SNL2cI7))Tv1tIr&S zI5-sKpPoEUWHf!S&1m9-BZ#FMk&2nEd4lAM)-W`TAD^7`{MpxWK~7E%ylv*rx%21O z?n#iphV6q*2NM{0M5oj>6Vi`p_WU(>PDOHEBXw#%XI)E1gAh6<e&$nXUG&jx#{mV0 z@S`b{4Pp^R3WEt)d}zBPQ~}spVm8`}Sr$sHcwuu5JeMx8w=O#N4-cZeIpfIip;}`X zw$sl@NubT91zD%vadIsUXJ_$mV**Ui_kFyEC?~9ixy;6TN>e_h^=@MaOEv2|NE*vE zA3#+nz0;=8{I=qQhe}1Ap=N<vm2M3VI9$D4VI?o*-_FVScQ3%N%LLD}AtrCcfnD!@ zbqWMer;4CIH0+hs<KSN-QU^9$jcoX-ijW06dy$Q;Gzn~eH@x}aWp@(P4jO0=3fhN? z7-qj+HTV^rnt82Ka7&&n{S!Q#ldeif4w!ps@|K3GBcKG2$x{f`$MV1Zu1z(uxLD`c z!XWoMl>|FHgqDUzef=|5vw<SV`?ROndNnAhkx)3TPpyQ<1tCdRVGmU+o9?9OkjrJ; ztPsE9^6NqkmS*DAUl+jkiI%Lz5noXOyP8ZJ&M&d@oIGXq2~@@ZdcyhXZ~Mj0*I>im zCVcW$k={zZx2PMhwYR-3o_lw`XGJ|7%)Y$mAh72XzKsvPQhnz0dnf+_2UWxdF$FYj zn0HSB*I3!~5NPcC_wU0cuQi9j29=lwEwH+s<BQ78J<-Ja{VB03Muf9Uf|E?`b*Ki5 zK8y$H!V1Y?8~fmGboHKQq+WUtt+He{n6)_KLw8j&ep~&)_g2M%jf?5H7~=`>A?9^c z@l6C*m>>a!7cen7dDhmdU{wvaJf)$V#*N{$>Ky`3!0u}AGCuyv`8i!035`+nd0r>@ zk#S&l#<9uQhtp7NR4fp`=LMn~R=zD&u}WaKth!QlS1+HTr-7D&-Foz_rluwuW+qk{ zBZmuC(fSpx9agKIy9#e|__5mah*fdlAF;7pqq&`(-FgYy5mAc6hJ)jnHre*ecrFOE z8(oa)aFV*ydf$z-OzW_Lf#&w|>o1QneOFju?o=tZ>SHz<cBm7pa0|_9FLZM|b#ZfO z%zmhZr?gV~?z+eFip#8<@;l}BcWxWq*ygX#w(`!Nt24#JL1|TtDc4dccGGCQeS&)h zyH|+~J;p56S<j{tE5eRltHdU>XWKJxP5JFF%5Q79T!s=APnWm+_JjBDi1pMka~cqN zDO7G@VbQ3J5V1ah7=I+Y+=H81YG(;NJUSnNL&Jv;4Iwj5m5M$M4(-&5=Y!yM!>)oq zvtP`J)u7=9zklMNE$V`VgdW@xz**r(b&wqJ9_54WMNWtb026$cFK?m<)J{YE>d%Pm z^lK$VY{T30Vk9_)%)67=*tdr!WuQdiL3b+f$pvcFc@skDUiP_AI2srNd(LxqasL|B zeohWDKGv;r;zVx_g!c1XB-u*S<oEFH9r&m!Js5`9u+e6&m-2H;_`^L3vanA&9US#O zd!B=<&&Z&qAm;4)x0zo3-t*txq8{ITDZYC993S_!*{m6N6ftd64A%pKOw}57bKeLa z@r{1va_~0jl^Oel&d9*|e@3jgRe3E^d{No@k-51yx2CXL!#=VQ0=uJv-SP{cnW6jH zQ5v;7!M7Or`XmB<*VNUy<}}gP`%_)tNvN;J|3-EW`#Z5}sl)))PYk$Kf8)@_mae-^ zDT}&`KUl|#yUhd?s^6+yw%_&h9;%RB*ht9|&BP9F+wWFzOJ95EidEjL?3~I>*kj|_ zv@GW4;o-5Bc3UhMQh1|=$R;+9a|O<KF=nU8aA(31;95X7hy+VQQx7#*9>X4YN8`s7 z<!a*Qm#0jn0N=vI%fG)OzM=zywpxg?pf>;&I>$s>@E5^xgW!WI1MxxJaQX4$LVQS` z{lprW#DITsk4hExyiT<XV7_hD{R=ncP{~*SoBJQg*eRbqZjJ^Y=Ac;%AZ9Z_bV&t5 zRd2GP=1}5*bP!KRXBZ>f%Eo1XdUHVhT*qCOScx9l+=8merFzc`<*&bZ<>ToR?vZ!) znxS3REGORf#%M{UqO7b*{|66`;`<2zur|;;FL+*^HsEUL>q~>s!uEqNR4#ctt1!zw zAn2~7U)a6K1o^i}ix=iE700<qFv)d(k$bQbzRTv~LTbwc$CQQ?=Qk|UD!c~8r-$dH zOnqESOS-q?I?}=;UeM@aNmWOFY<1|*e#ZO9**{N$&_38T6>QLPLSwJZ;hfvD<9>Uq z*qo~Sx8cLq_{U*~AkoQ#8D%^!E}0wJ78+H`2$J!h;=B<iD&Hv=yS=#Zoo{}iu{oj% ziC6IPYB&Kw87<lO{bA`!d$tDkB>PiZiEmO>8@L+Yu<-HK#5=fyO)ulBlBiF2k_aJY zlLZI%^`XhhJYy!Rzy=0ZUifUUznSKs&H+q|LOVzixQ!<9vNMij?&=~I@`}02I05IN z?Q%c%J7AhBBB-x`7^)<9w#f0+>d40%iY<04iJh@JLC+(my<&ohArXfW)Ts-10t%ZY z88lT@S@w1|HXPW<;b1uPJNC#+-d_tP{(K#LDZpIyAy43~!8f49w1@cL|MFM!7NZy0 zh4Z#gju3}2GYDOgCuQc8lOyO;)7|;vim)K>&a^I;kQzIEZs*jCqaq`~Stou>%yv(u zu*>EC_}OdgBaVP(=@)Jpf0~@6N#Co#jc2wJ@a%cQu<l7>k>Ty^{j)CXnJkr~vPbKm zo+B?<C*2$gO4xVWt=jSY7OTK~f{N}<h*6<qkl>|DI#?!Q*Jvd=Kl|r9wWYI}EhWDR zTE5V2S)Ba>P|K}qV8DvqOxS-CE8)?H`~^;Xck!b4rmA*$GutkC$O&kgOTQra56yt7 zMG{K3hOt;jhyBKlrmxWy=A$|Y^v+G=N~(cu$?q-5y*+Q~hE<jeVoM8yrP8uUKLo)g z;Y(lR-o7o^@xJhi%z*SN!keQcBI>%1&NUQkjviRieLyr+!)9{rxhQM_0?Ua@-S(`L zm^RFRdGtZ?_78Cy;Lx=p@#+YG+7D+@DX0ht?cw3EGLxSDUVn1xk2eGQUIZelxdi@) zduXWYR$#F5K?;zo_1gx<c}V{Uq5()tT_`gjc;(-to;TAxz-*prpz=cjm_NUrtggXQ z0FeG<f9sahz;&qzI}{S~d2l+`KRm2HkN~=JrJ~<W{};39din?zAk38&lBVOW2srlj zkHm@XB-`|U7~U=`%eVr2w5X_Pr4@ED!R`avC#P6|`8j4|{lk7g5wzJeKm6?{Gq29P zSoPjbya7v_=NtPgkzM3-6OkluoTs{%D~I;WWB0Z;5qn<W%IcW*BaO7P1|wQ32h8@c zyJh-1<=*>}wjkI~d3{sE@oEYMf?X6OK#KJr0<1^J#m-KI?X;0lGM!fva#<VdLB~X9 z^2sKeB_Q2J34DoHSJ|bdjaF8i@>K9c1@?cwOUQ_F6cpM!hX1h&-E<$T@=f`GMZSKm zq#B_F(;O+-F;z0A&r$QI0h$wTRh!K>DKlhJD^XwSdQI}Vhw4q%ZyxLhz@M*$=3ut~ zp2-Ftd-loy=nnJM<RD&ylB=Oil7hOqM8Dnj0DS?y-{^hWC7qQ_37zbzZ?lK37Ujy7 zct4c_iY{~c6wSf+_O1E&S#rhTCNZiGwTIe%fFN=kuDu}stn(X@MHHec)G^cNP>}K3 zofClyhAT<;e2+sX<v)6d{7x}h#w%RQZx-y$qcya;-e^km32QSkN$b}>EyHRjWMi$O z^ea3&wy{s9RKg7<OWw|p)m`r~9h<bzY^e=B#YL`i(sHkm5?ab6zoh8w{AB#z3>#mz zE=!!4i(>yqv!ufK^l*!Ag5>&V*7iIv+S$rsZ$JN!9|!V7^z!e8P*GFAk=(ETVtrG4 z*qGXmoT-)gtkNk2TB<TkBKEJ?1k(y4?J5#{e&QwRfCmst;7JE=@>)SWQ0}G8#chAx z#n!-^L#D;x9Gdn9v=*fu#`l0`lW+JJQ)GHb?<NxgT}(_$?|no;H3DRKnLGDC&Z#DX zn;F{kt&1b5sLkpEM6Yv&K`{4Wc^HeNc1QvzNqdL=&AHV?2jo`?PKLN-G2+$4RQW(( zHG~)VoTE!Bl_~<F<<;lh7<5Z`Pw%Vzn+CzIh{?DKw6_f6!Vh0-siB9o4+MpU-*ue^ z`I$pyeKQ?B{lrXHI&w+D#U)=uQ&Y!>nwFLX8kv}wxM*AjCG!o{L<<QCb(7bA{=VrI zQeAy{_FZb~RW2^B^P3{Op|84ndJ4D5uouWbvrLHlx-AY3w)2GqnhW#r{KRG*vA#x4 z$>257K%JJJp65$PN0-4oeN#*8?q0-;7rN5L#cf^}tTehg?p-<G{&GexTG)OlLa)#+ z-={K1{<yez_EJZlxr&K{pEol<jqex-we#k8scv?5_HMWSkE7mZ8&0<(m3_TG6`vT! z{#vc=yO!ykVc&SFa#<MT+hiAyPA%J6C@mONc_ny_$$Lp=Vri4NudADj+|>dt^i=4X z*syF~U!U%*#Qk-s+@btuS9;XCIOnQ!T!2a|a}U?%(Eick^iBzi*`ac;>oPLibS8z) zPplgUo5SauxJO`PZx*9kb$qBE3XJ`n?ph@AXFWI~F-m)?5d3%xxQFAD=u>{>fP2WF z1?iy#a-JP<kMB^G2Fl86cA|c`<tsUD7M$K2eM!46mv-LADR6vz7x}|$2P96lZ@Yt3 zNthGPJdbZPr=HudGupT{zcAZ#eX`}1>0Titl#`UCHnca*oqog7F{#nhv~0da)Mp`= zLEN!<d-vH_6SK}GnVZ873PU><;p^Cu4WJ1~W{M*r$*;BkIG7ZsNnC`1<O%kJpyQCm z-Ipae>cD4pjJO-!gqCLHKye3E3sI|e3etT8e?OX!U>k3ZuVs`xBa$%}!$+`G_W(i` z+(*P@O0(J9Se@AVs$D1{QcZj>lQU{%rJd00Y7h9ztLH$#u*SfmL!<w5X6s3rw#OG% z6D_{59<v9jTGGY3MC4s6V<uDiI<}3=kn!{6Z^eg+t;{(v+o;-bwsg1%3B@HcLdKc8 z`7_!hJkV1zW+|J!5&N^T$9$AxMbv6T7-vu66Ea`u2D(nfSpJ6DNEL<#?XbBtD$k;8 zsLhXdJxaz9CScxd;fCO(GM@K8Li!wFAonMaKE|U1ON)Nk(%toJzZ>F;2~s|$U@qKJ z+FzbSIX1^v!<wrL!4f)F8ytRGHqcZffip|xGxXuAIZ*F%M&6Yp99%(-y0_3iLBGOV zr&w{R{4z6?T`V;H;PQ6II~D6-aFNhw&*}i8S||Yf%N~1IX0!d&h#R@&T3G+j6kBqi zY=hFfO*@@w>NMvydmP9Z1@1m2__0b{ywj1e|7NeeeLdZ$6if}DdO{Sh5GU!?EoP47 zPq#*^-!UL#6zfF(d@0D+bM0y9SO}9OmqG|bTQ~D?+U=Uauc>Ou-ZIK#RL<ca?ilS; z!;*=-3FBkG!Lb26V5uQYKJSprH$j+o|MFz$CZ-5TMaBcH(@lOLZ!LL72(7*KOI2V$ z{j7-!%JE5j1*ECZKUbZ`7o`XA@a8&7y|||r&39J4jBZg#3v21#JkK2;Z^n4%C{*T} zd{b($sOCnYR{t}=me$UZEAEUP9qQ4WY%be)TWnW{56y6Wam8f~b_DlW&}#Rwr*+{d znfH$<sh(I;pv=XcKE7b!wt@N~+%dNzB3zh9MKz8+wpX)QHg|&MZJw<~5$n3!0->+) zr4#k1I{5oa476^Zr#9ezBXCtv5QMKYuwqpo7#O04NCqMEBA2<Tm<bcrOVuK$0FN;4 z;yXPjJyd(LsM{ZTsLtI{2+F$-B4#hOJzpL>)cV9qBJfX8sCOkOYH9vOJz~3m4IjGv zXyRMc^`0yP9yRFhcK`7H*`wr4_juYt<;tL@8uCNp6DRUZA3@WM=%6h;2rP;jnRVmD z-IRYV4lfeliL{G-{`>^Vl_O!d?d-Djv@hE(;zL&$41LzSyml>ZY$Cu%8<xlFBzK5z zok?_HRR}poy>@b9{U<(zf5m=bpxD+EPibSl$Efsv`=~L*1p-1UqcCcb!kVgWM+kiZ zL9>ozv5_vIgeWKqM4cx$T{Inx?(Y1W&sx7Byo5(CVJyRU{rX_}XF)Q4kysK4A_zDU zrXzjiJ7@RN?$k$9^jt-nJF{%NSy@>x7{y(0^+4Hyt8~pf$qJ#r@I``U8_TU~#_nrY z-C&AX32@>3RLeF~p5FXytS&U_oVxF*)D<5oz}r<Z(_Fx~?wQE8q@qp$<&6K4nr6#a zz~-{FfkdZkUM2@}ZcYg5Ke{qK>=$M*%t%v4L{Q+l<^8qA+9&!Ma=e(x`?gGl1lDHu zhK)Eh5*n5DwYF)v<Y%{)xVy2@%hl;CmVUcApZ3fqS;q`Ex_o^NxD?HLU%!ms9+AN@ zv_xcY5}Fd9-)c$vN&pDxv+cM6-H>=7Bjfpum7m`nRrV>49=*;sS}Llmj<+#XG&G7s zEgOZ;#mB~5GE!3H76vRo8l%z3OTvY0e(gH^vS`s#mo%0L0g^jS=W4Zq?JNf~O1?vu z09$L<<l3GGtXf*$PSTWVT<e4TM{_2sP?5H8b6S9RyVe<*{{k+N`uP&hN{h7NWa>;A zXV^W+SY18brtjld$}$qDbSlBmkp8oVy1EJCE3Z+-96MD=U1O}Mx_mI5S=sO}M#D09 zwF0|AF6ec%Ae1!OlE7E)wQ;F8v#nwPg6s!N*k^mPH%NCBZ$RizbxdALP!UP{j~pqW zExo_*%E1VF+-zmeX?70`*vJe5-7wv1X4@GJ0R_^r#ki3Lfxg92>N>wd%725Sp@v-g z{AOEzYRw3M<MX9%i!}P?N^~eR+F+ZY^8JX`Jm~%O_ub!`s+~kWJl!p_U(gvWCpl?1 zSzR#71;<m5TCoTR6RP|+jj5|ZRiwE9Wab}m4*z@e95qlbmE)ieO0>>S<=Dv|BIO10 zzNT;>$X<~KfwdDt6YkK)?4OOw8pzSAn)^vPzAv+vf%RS8BW-VY(iU@TekQm2)-v-z zCrc??=izjPsv6!~ZB4J*YQ-!Ja+z-1Gqujp6AXO$^5CXNsl3#-O}dLxHj{zbvbW^0 z7};|q!wD#rU7G$dC~2_FQcn{icI~nA*aE?=Z0tJrg!d(z?-W}`*j?#28I6N_2!Dzf zz_{N3Be2RMc9S}q8v1E&J*6=sSXo`gms@*KWUg`R<nW_bXC4AN`k3=9EXL@~g|~(l zuU+`*<rEPE_DAq@ii$XI`nH_{7^X{Y%=9@DMerQPGSkm5JXA0KNEIiUlqpe^t7KeF zoUVJwbhi*h+FbE{u{;h)Re`+#B+-9sEmh^j4hc=vqjDHFJO~kwmpZ?_K5O{q**W#M zgd@yiu4A>N)*0K|o^g}$eUR=YliFh~t^Ds~RN^HpKau!<wCs5M6@K&TI7R$UHvy!j zsrj|UWfu8pl{Hl247o(2_Ux4FYe$^~F{ldo|2J?4*npyO{!yD{aJztpZxG;u;~gr} z)KyIW7om2jwy~+nMe>R&ghGvUXBo`)F$*6B7sAP2v}|X~lzmO?U+T4yMQ}~x-gH>E zM44c<?w9T9;mXRWnoJW7hjc1v33RjFFGpK)^YKMJAfYApoz>Ma$(oh!H&aFc6}#bj zcakZuq1s6umk^~h0R3`jW@ZYQcO~5|Ez?}$vr?-_YFC4UjuaoS#Wz0L(^6esUBLX5 zQ4^1lPO7K7ThYKEE<Z?ViwtE?p)05PB*Mrsn0;44;zMN}!;=3ZlI4q;nOV0Rv`pHr z1VPI_a?-a#Z$(9uuMlQ@>(sv=A4D7cqrxuHWkv!j|6sU;H+bXZ58~jPV<U@7$5qxs zoo{qDhdTyyG$YcikNb|52GIJBYzHw{j;x1RpB7@O1<3!=*U8B#!_gt(M5X_3#R<sb zNB^lxDOlFJdkv_RcM?FA?ie)ksDpOAkv!Ahl1|7QeQa)V_wH+eo{_9|Ew|?1NeC*| zhFJNiw|FtzKHp9t88y<$uM$fty&w)5gN&(c{gZrp`tu)Wbc*j4#Mq_mEpK@g=K|2x zu6svE2~A(S#B>EWtI$f6#Lp?G0AczQAE@M=R~Hs$cpjGhN-ek?AUwCKwl<$IcX~z? zQ|pfu$WTHpIsq%NmaV#Euj|TXENNQiT!%!y_03g(<la&O5?CNXeDON57EjEk3gD9H z7}vWi1Xlt)RK24Ru-wr6ajMZ@iTl;d{ph1+@@^rD1R4NKZ=U<yLIjP|9aI!m4<tmi z7l_BM*{4D&NVf4dL*pb@8wJ|)%v<WOrQCOgZ16=o+L9F{cPc#Btuil<kkInpTB_vF zu<prP=~P!a#Vr!l0^(u#V5wWsXa#gf#Jc<ZPe8^v$9|H%#)Gc3{Ze4|F_p=`f3fN= zXj~XR*~Otet4;s~T(a)YSUxWeML=p|ryj2%u%#ZWZ>JpZkuwNdgf+$px46t(P(Ud3 z%?tJ@j{BEBI|2&WaQii(KVBmuN8{b>Tc<m`bkMe#=b8nr!fw09l-Q#wW9<GSb|K9# z&flS_TIw?Gy;EPJXB)$9FJ_~GmOa5Ut9p^SP{}h<OhKL+DzfZ2iwF~oyB*q5Xg};F zg}g`JlL4f&Z~4|e4D8I}t{DW<8^p2Ix4>&Wp8>sDN9sMQ0nL1yuQS_7`jm)6qSg>~ z=c`Yis3CWduYGf)?qu9rMkDaf4<~taI?-2($??3f>yexsZf`#`)sjGqUQkJpn&%|y zzO%6~nCTvJN}zUAca0eOT){B>4lomo^3Fu?31t0d&g~j~MD$)(ROhmqo-p7;5tJOt zZ{nB)>4fbDvZe5DEr0)D;<UMRo1|gN6sQp&wx>ZV#!d8rDTmjwS#2T~-7&f=a_2MQ z&$i^CbjRIG%9kY&MbZu<=oJPi81deX{#!(C{c*%#sr&M4n024(>2%y|zGLHUf1@@E zLRF?q$JZT%iU<%YKEt8nBvj?Ep!}_HCq(Bs56`*h)GFe5zlMxTb*yG}hv(M5e_Xz} zw%;x6WV6#RBkDL)wmwYBe3F;4j#Q;o@x5J7{Udc+)1}0U_GCRdJ$iA7h0c5F>)o_8 zTSn*QUCZ`#g`ST-SclPEjlrz&)Bf9v*RHAQ#gO;xX@bhF?}YP?vV)8fkRdILIyeco zwpQkTyxe&D3<=FxQ2A#cHF$G~(GWG^H3SM8b|2%>!G4iH$8+x4O9AG{9z(Bd4GphX zyP09fJA&(Y7Tl_unmmz(>B;kK<<{yDdD0VNU5uZ*Kb3DsDoTuCDd+tVkRC20mXXJG zC8(+-hwTiw^sxv>iMtAXX($O0Q>a>s+N`-o-him$o=Fa<%VX`c<z`F~*Vgxfn<VNJ zd?j8H;{#11kwxQ%Rzfd6l#!ku-q4_!mX`Jbbz)O^p(Qy7Pa4pSZr+G)9RjqL@%dd1 zZEd{`_X~!%Zzrv*tEr6^*Q=O&^Vu%BrM0q82>9ylY`#A8ZR*F5J3qTKW9}`)GV)!x z&%`NJt-|%9mHNxeG-it*zX-<XP5jIG1XY6lhffyniOHPyqk2rQ7S`))n^?p*!O>0F zEf1>c@oq9En{kg>eUrcQQ`Z1KJ^Uqbv!XEc^qs!_QvYiCY`Jp7if_twEFnwOQ|!}7 zpF|li$=BPA3b*;2hnFN>48OQhOsVfCa*7ZSQ+Hf2@oUon`iVs?`-~wwH6-Ho%ci%? zBhP$Gtx?i#L4RUdc|>I56B9k8l;bdZ*=R@dSn%Fp2&4G<L{xNO^~|;KvkyeyIGtyN z62V;{qUa|_(8rDUUVWGTZ0qwLLWijlEIB;iE}n|dTfq~rVY)Y1;-ZTtr9JIp^WH1V za`=%Y#IkVBdw01msS0~@HCoE21QHxKRrCLZAk4j8a|Chqj8e@OlPY21+xvQ>J2__G zXxJ$l=8G8n@pd0OzY3A#nG}=CyCFyg=X(-&85ITZM4jW)n5s`jLI~S@JbB6G&y+N( zd}ff+-n_k^`sIwiI%wmpk<YrO_U%u53Ui`}QyPf8STQCcs|bRQnf8<?>C1b9-4A3% zgE3xyz>z;DTKg{4?Ys<1GfAeqE<DSm3!y{2K=Cd)&hFL|C}?aeh{%})`W(NyvshV( zx@R~#0MOxMH+%erBerS=!XntwvWRAfte0XgR{aXCyZ!c+>uX3N)L1L6v7K_@ESX^i zy2$eb$j<fnNC>wXUIw@$-AkRPlu2r*YPB+MjVc<U){d*7&zAdYtM8AVY6mpb27%b4 zL!f=BpH3~qLZbjX#D8R21r%M6KorK3(65_!k1p2WJ?9yo3m2Hu<D)A&jor<y>wlbP zuc`H|ZniMrr@&&U(+IN-=ec_-m#&+b%<5^@hLjk+mFV2QM9u+?Bqf`hZfs=QXLFse zk20re4txFjzL(bMdW`1E&sxU&!tPZxQc`l;YYXQc9Hsy61+d%Ocs4d=+T#|KiEaMY z6v<A)^z8A97lvEUbs-9r13!Y7UK6$&dmSXwQg?><vc1pPUdH2bTM)fNO{Nkra?^98 zY-4i!1Lf2>kdLlmD<nZ#LhX6@>bIB#UEPI-_{Gq#q1svB@K}$2dw6@F@7{&YSM74J zUJJ{YF!#d{!UdU^EVy;`E9!`<DmzWhYX%0gf{bspZHW_ay#@846%vy3n??i7D1nbJ z)e<WzWM=5-@GBidLuhOXfH?iey65p#8cBIQQBMVe`)VM0;V;S6<_aSMlBC&X7kiV7 z<STFKLrV_wAKl}P{y#v0JjNRqHl=HQ%}**oBeX`|r>9y9D|U;M%Xe44(U@kJCqbiC z7(Az$&T|UIs`rAVx0xk9KN1{uw%*ih1uChIYACmMmId|cL{7pl6PzbM+f$AZ75d^q zM-mWjsM}9NK56eJekWVXOpWOm@;}2y70w{xuBuaZWN9#fh!X#Sq1}iZr)R(dXP?HY zZdPMz&Oqn;7OC5gJEFvvBf}uM&i}-~8ULvdTzkEfq7cet7xd9KG#b=c{jTW^JiY+> zDP9^ek`&dB)&ylTM<$U|F(emV-`HZ@S7s!TddT{iQ8RE+yg~qNZ#)=ahE7l9pP6n; z?sE+AdwAMgNE7|?Rd)Zax6PTHed-9*2zT??662IQ`UTK#Ou5&=MKMV3=FdXr9dB<G zn2eQSE??I5rUn(!iVxr3OkE>@W~?5UBbvL=gm~kReZ*|qUdy#t`uWw_0o|T0!FM}t zLA5)cXh{mP`_|Bq;X`K(q1WI9usL2beXu9`g2{NB0&|yLLe}X-B&So4(A+zSB5*Mp z?-xf=;AP?Q%XW{`;mq!o*uB(+R!kwN#4vl!UDyJ39frNC_)PoZ3N7CIyW|g6>&=$@ zs~vWy`<|W>$Y5v<{o?5J3Vr@g%R?W*#1XWwvB8-jDEju#_LPw4ND72%KnP+9%F&tG zK^K|CQpGYX%Qt76kkFiW(44lXgQg>5T-TV3YXI5EaE8!>t)ebWRRfN^tq%mV49oj2 zxYdbXV7y8wwm4MYuceEk97%2nYbp7P>CQIFjx<TB{US=H%93$BgM6H#l~{E2rGPm; zizB1#LhwL4&zvklAswhCnk<l$Iu0phIF?^N55-l7F6^ar?#6r0oSWTE%}xEHKfxy* z8iE9c$cUZ{*+<H|7e^n>Fr0FOM&c#COu-jtrF_|^+)-t$k-Yj8<JIN+NnyUOW^Yb` z$>VcJ9tC4%TP-(3Lz>^*xyi<t$&II7e2(QAbeg0A+>>yf@0)NR?h4MTU%cBKYdP<> z7flbbG~f8{JR?P^zV$%p(ViCt&ALl62_%>zYRH1wJrg%7+7xBvYdNmpd;FIbSHZPM z9PvT+14V85=iQYHoF)`Ar$&o<{AV*d1ekircD<nm0b`ymk6KUy)m|U-i3J@_gHMT| zr=P^&MiYQ}NxN3FZYwnpxNX&VczGi};cY91+L<9Oh9hSqokoA;UvglkD+t<1A;TZB zt1GPBy<Ing@iA-lDF<b1Bi}Oj8_IhQY9M9HoZOT}Yqm5#dtKcvP3DY*eys8pdUH(q z*{ol9r_OOo(kW+ce(;9wE4}d`677k(2j6T7N<cMSYk1zaqoCYr!QB1!&Y1mhR=D~U zZ$ofQ<$!mrwDt3Wp6njUI=^4c;uACLdfixAtpCwp&+eB=ycDr>*DGzQ>|@u?8v3{& z7Zt_L$D1(xOJ`!9ZfiO((-s?l$@1w_rVB;$!$(77U)XQ#U6wYiFntjbDUT&DzT?1^ z_~cK*3nL&g0U;!qcV*!3MlDc5ef<t%F^-HZ%-lKs@gY}h+WL@^npzSl#8^sZJe*dV z*7{6Ug;({9;%UOLz=;cdKgmFo;+WgKE^o>O&H%H|si=0qnIhH*oqc;>15$MI$}11m zWA~|4XkQ-v!eIwMkCNN-)jvQlVSkOI|3`3?p=Vm=RYHP}7-9PYh}o`@hk}Km2U%66 z@`2)U7qjQ|X_Dq75*BBH>=0YTHB=i*m9g(J6xIL7*;_|N{k40;-x)e2B&97%kdV$n z6eI)`5TqLf0g0hw01<;w5ebO_=|;Md?v#)gkRDRH-aY>AbDsM?>-pn3??0@Cx{w8X z@9Vlgb)i;f{k0yt_n6cZRRr9YN}2b8?ZSU_b!boo3TU)%wiL=}#H`>a&bl$7oS@QO zeJ$eGus{6)<e5G%jW`ji*3hZc!K8~l>-UR1{c^n*GUfP%_-`*Iu+gHF5R5)cFo|t5 z)Q^YpVgmh}Uc?(jP)gFA35s)zSrm^8Nu`3YfHIuC9Ugu+(Js81u$dcuI7d%ipG?@> zOUq~UJRr+vTN`vshpo3G6RjB`io*JiNDh5|8APl^V}6k_f!L)JMh*&*{fRMxWdm|3 zpan@1T%-0%2A~RDlI|Nns?>VpgjJvyJ7$oE@78w$y^uzC$m0<O#$qhUL>7+756{yr zY838Q&M@Y)kB3ldXRz*IUw*S(xZ`z#dmk#uI4RFk4kzsf+zm!EbRf3<gV(T~`fw+N z3|`OnMS{sJ=bS(ALVTK$Mj;@))v4-o=Pc7rlJ<1&`e0)KQfTf++nQX42;Wa|B>AK; z=^sd;!uvVUqg?20!zH6%%G|G&DNdeEx!^jRb(3tRg!2V1XEuSKWA0uuj(^LM`_azt zK)U#qIARCO(Y{or$b|p`mKRbPX*=o&H&;@=7$~<n$MV`Dh(C3Tee@S6eUIdfeWR_V zpq+5N*63?sViNJoSKcA|WzQdNNUxvbzMy5Zj53|U6)WrQQq=NIJ7My!I@(=g^oJ3) zHX`Z7Uue8q<J>5)noCnQTBHuq%^s27zcTja`9xWdSHMT5COw0S7s<%YhMcT@0d<+9 zROAdRU+mH8ZeP^VYkk>3v7{E$sbzp!NL}VbZtcdW_)2Yk#FzT=+|hw;x2mY6IOWk- zg%uH<G8JX1?b8=vH10e~x8p~yYF!a^h~LpQIM@oES-T_l8@e{)@+6+Frmi~_LNG@~ zj<y0kR}BvinHP$D{L9TZ<8ROJO{9LyR=D*ok|X>xf#OV387A?}KN=@Qo%<wK+Ba}g zb~%~=!ws=XoLV%A9-xi~FMW*ua!Z9)>Ke`Ov;&_>i8jpRr`nk1iHZSvi@|1NM;3@2 z_g>-G+HbaU6Re@RPftpJ3=8W%e7{grGDoyBDc*K`@RRj+$LK`8qohxBVZhF^Ba6++ z!3guo?}eYN6XywJcQdJ@F8z0R^bdqU0A7hdY<h9>|M5<wA+(WUco$#qYX$@co+c&x z2Y>wXh4CTBinbYe5~wpwP+4?wH>{kA;vPir2xet&owpGYeGJqDa%8Nuvo&?8L8~DK z;Blc!R~{&K2f;r?C5&^v?+kiRGCcFlx9B>r7nZ#@QeA$u4~R0(6SEDsR#5ce{K0UR z@?aQBw&rl|-T1-YqnPs^(HZ(%dUB^4%R-LRQY4=)zZ4b{(!EawCUeno>Dk~zA{?XT z5hrGdjX0w2bVp^T<rAj_JSO!k+2I$HhIZ)Mww>R*$Lp;JB#4qVy5IoRVkVkYt!nx1 zJT&&*ofUCa){5XrE`ZjAOJbIA_z+bueSSFKY8nn2oDB$1@L78A!>S@F-{TVP+4Yfe z96qi4i;yO4!*u*bqVHN>`Sa=)caOc*;UX>#kv#Rs$MZ6hTpvi?S-`M(PmT|*z`p+q zC1T3@+rsETv7*dewjl6T@&$mhr)emN&&|kRUvsB<-Mdx?jY{O+qA~Dle}7fbePi+k zT}_Wo)r*4tkfw{3p^WNj(W^_}{qEvj+4`yuuDd?Oh6Y_oOuMG`d#h#^1l>Zk0|qo- zwC|fcCJ`48;gIaf`kmh-#I(G6Hvlr?E^HrfO`$&QNqVAQj#i<$*CGT_@E;t^_!}Q3 z;N5WQ{KS=CAW%W@$|Zd@{yiDz95uD}^uYF*QLWe0!kePoP&37WGo=0~mUY=~OhBh6 zI7w0cFWBfkl6;RZ+|(;oLJ=R<Ehr#MLwIQyt~&V+=@a|LkhS7=zHz-#<><kje4F{? zdW36h6N%D$Ydm`oQ=<H=M+HN#Rd}@5SPl&9Pc|giI0$#+Ml*aKVa%c9)#=*m8sHF+ zt8m;Cw;vZ;OT%U7xxJ<Ugf9*UAWgN>&nRbbD=Q<>*8Av3vU~^+zZXTB>&oNr=TikY zZzg)YX=`KkUw=v_6{J%;tBN<WD^<}GV6@8-l~ho(^L7W1Hhrn_JW!_rT;1MVa3~1u zB%=K1@~XZ$JJ4LRJUD1eEh<{kImWTjd7^i%K344U#@dpPskFyJ$-1o1V}>tr{=@1A z4m3OMsYQduiqYOOLoleUWHQR}+)YC*shZPfW*VAg^e}eJ*#rYq$y!EM)=!D^?xU`e zprrjLy6^dh*uyFbl*fu9S@{ejdnW4Zt&QF-Jp_`EYQ2ZaGosbxPkr5SPk&wbRye!^ zqF5rfU==zUZp*Y5dwH$t{0~URx(`6HmBq>T!J1BX@kFwL?0;PDa5$D-Np+ZCd?kN* zN4xaeb2&VKP&W8O#{DU22nUBHk>#YMYw0#UZ>O6d!cGIK@ES55-%CE*aBsDjQQ9r9 zsCZC?%(C&OR2f`sJJJZq#EMf_DO3El8nD8~0fVbRBY!3O`R-d!jgsrVQk>)4$?hFk zN5YQzy8A1@5~duILHycs?h=?uY9{=r%eXUEeTlqHA>;>)bKc=0BAg7(n{1@B9|1*I z!EHv~7!i)e3T(&?U5Qtar_53wg?PG3FvmjLN12XrhEcy$KnN=V-Hxll<FbH=FCzAr zsdI5nfl%U!0Qkbv(#QgwF!@txY<p))eTll^K47oyP6%hd@YNmO1#)Vso~yu8x{5_g zTi>GIGs2u*el_Bm%ebxE{AvsioYN~vr|JSjd;30SLi*A`k%=cjDZ=~H!1k(M!uIsq zVxZTG=G8A7J0_30M9lhZ`w3_PJlcRT&l(4!c+bCX-qqP%Lr*?>5FvBiE?{AVP{v5! z!~6h>G|P+gv+(%}yt~PFn74wN5qj<kbH@>-$nClNZSsK?iz~-tbqV^=ED)*xE^4b8 z%~{!?tVO8L)yPai5I{1yUgNB?JscY^wZp1d$_yXI@XJA;cWn=4HYdva_FpV$w5Pdt zQ$rMdLSFM>qD&!wzTs;!mz9+09>~R;e0A7xPd(O_(^AEOK6F928y30|UlqaziHyfZ zpcPo_@}EY+@_rqf$?V$e6~+*S&r)xKVIQo}{V+eU6CVEB!@H=^e4|B?CGsiW<boWR zIuJ4bjIs1`9Tp$#+T#ip7Z2!v!3#g_Ta$i}U>7?|$8<EX_|rP6bk@dCRkVEPjzXLH zHYuLCjTWz3kroVk#2DnACpR(I@(!;rZZgi66$hFH3Wfz>X?3V}8?KX%=^YNhFtk0J z%7joyM@I@qp~H_<r1Zc0k{MXboNmb%JiZkn@2~}U=Mg#^A*Jnmw+lKI*Y7clJdfEU z{n?@AUyde?3BiYU=fo2xn8F|gxf#bS1(xA|2Bcj<E$;!1@EkJX&UN1q>decw&C1RG z5O^xJGL%!ztJU|63jmrQvRCz<J##2}TUzbLReZc_SMl8~=bIitHgofpRo<o9-Ot(& zhD6OApFB|k%EUGDz~euw>ApOzK{C*O6g8dFGo=CPp=Y)Zw7IpXHIpSnxdrv}nQ5yo z_2b)E)#<<8*8WF8PScZ1^dI;p=ZjsdG_BFHX>+ut5$x3dI?Fof)%6Y{RnLmd7p)b@ zKcb-x5aFb&Kf_kh_Tb$s_|cIkEp8#24P-nIkZ`}h4~lGOiiu118*EiBx!Wnlske<5 zJpgJ~&bV8Fo*F{)cMHB@6|X-jt!0a~&aT!P_eZkMtcN25EAzlW3P*Y3xq>$IZk220 zf#m@6S;I__!&H?vlutOWdN)Pm(=VFPWvfIFtH8T&1_vLDhTx4q!Gk7?ts@{YtHJb# zU)afI4$;FmM@WdfR2k7;oG*4x9%oloN&GA{4HAG-hNK=@hyv}^=;KVZ6Xbzz?^<)8 z>Ajk3i6DWkA0Ey};1v=M;X}<ep1VG>=DGR#Wpnf|Bbb+@07Z8NU?m(}T1B{=&OLF$ ziN~!+OTlzTHbIUlR5TXLzd~4PPh*4-;_+;%5~B=}=Y<6(Siv>DVdS*kAPmJB1H$Ux z2o&<pQdXQx$i=~!3`%T1<Q#KXBh%q2mAuFKd3jOp)1GZkPjN&@mkW)Xi~ufj^lskB z29#*pREeSVDv|O7$627ZxhH`)vcD?nd=;@2pIcL703vJBr0-3RX4uwdyd;FHZhlJo z<-I@mj?cF3s-b-IA}~r71(RMI>5AqXm2ixKLlT$(0RpO71_(1-kPt>Ma2I4%|5nxq zW%>rRHCgHM&1qgi@gmV<j_3-YSaQTu?Ly;~@Q9pne6_#lJ(ii3s05YIc<Vi*sDtj3 zH-~)q8<z|^k~@n=r}F}_I)8ib&!G2?&}Wy{NVq-^)aAoeFSx-g8Rq?&>u~*6LCsvu zonHp0z)>vLXghI&67V|Mu$LQiQkM}G)d9nBYI=IB*VV9%v&WNmt+o9Cyq@AZ&z=gv zA+P`fknuM2dh&~3qOC16mGefz`<o6%>E_PrDVQ3Crizw9BIvd6Livo}t#%g-DcZh9 z4BsxRuuy~Ff3mohp~ejpH(!J~>F(+(M%gVlg@NXMj9gNBG-xIU2N829^UM3CuhhQr zVV+&P=#zYdl_Nj@$&oN1>o|E_y(u^cXi|-}Se_k3d~u<Ao8Ex5<F6~+Y|q^e!uatM zH%(Z>oivt$>jZkiAc2(U_Dc-8!IfAQ_^bLyshv)a_&zKvdN6A?QNmNN%>{2ncl9{L zj>s%@m#j56H}^-~XAe(G7z|Z)>)KNcmVm?>T=3Vf0ahg)LJ1J^{U?9%kHZegcqsov zTTx7mMw9lFplWPlb)eaN>ObV<UC*@GI*Df^^flQKr>*tRVzt>gG9vL{JY3u7ZGy20 zFhw9x!YY%c<`oKx^|6)qtt?hN7Bnq}t-xNl09*LS>~6&Wxx1<ifa=ZItUKwAynzaV zbmuG}J804w6gPEq5Ak-~7jhZzr{6icwV`7cfw-2Idi37+c!&yWg+l3HN?)ArJ~5?7 zKbQLnv{M!U*h#EbETS^8R15Y_lq?sgC=Aouj&PXawwVOTngtk*s-~WmH|gOUP_%@d z9Bhut^x8Lp3f>O*uSu4X5td`fdGN=Ng-Y^r0xz!Djr7^NDHNN3R)!p=ipH@TMU6kB z(^|nv4yLl)ZCZsK)J!QcakTz`%?$S^y(54_1Ae<Q<)aVyb|KyGmww3MVICZzY9o{g zONhr`)v}wkbN&%Ftq6x_f8thE8|6R~pzxRJ_sKY4mfta;Dzx4wDOcGmfQKeCL+%y( zmV>S^lu<Idn~S99PO1+uk%eoje@{aGd2@370|o*9;z_!CQvUT2w=ZmL$QAs0pQCTN z`sMkU>!=4%%nG31b9QsNK*LQ}fj<`e#pPY(*o^;0ZB%u`7IR~~=B}H|w0c<bxXPE8 z7$3m+hf|P2`>=6QOVl5n5l3qWlTTHnN}6mh7V6aa1Q6>mpb@;b#&7Px{dt|k;BP7I z(+#=o5Sk(qx5^ZI17btCRfq<kycu%=V?ZS@)8Rxg0D*N8LNwiO6J_?!f56UFPN%T8 zJxTyCG@Ti*Q@R@2r0#|`JMd`dYPS7iIBCEkC)}``ug8$~nH7fIRZDZ(WH>m|*5kY{ zJjv!z<O+w({7v0AuN=IgRL?M=nt@I3wipd_EvW^w5qgvwdTc+3%@}gbvMrL$kTXl9 zmMYWo=$c@fYIXnKJN~KD?b^0t14KV2@oJ*DORLv(Bs{}wfD++Y)7<W$9$I&Rncx7_ zr<U6$!D`GOk96n0zrcu|0m<&}?&bhBo6N#8Xt7+oA7Nq5y;J5j{JsE+nQ(I?DSNM| zq}zHS;sdw$(eG%(+83a1N2PR}V)gH8MA!*i1~loHLH!O^paaI!e<Q;Y-G7aV(7!td z1T!EOGo$*aT%g8V^%8~iR8}UWrDi^O`<57QmV|-k^;fuu{53=h61gXpagPo4`*+%4 z>9t~i6IR%jWjGDtLvZtwm3jg)QIr75zw%+goufO*N2Q(Y8XCY~gt*BGB%uGLA@_>> zZ_o=!kI>5G)GV$*9?ab+9{>?cZ4n%!ETzCuDG1)Gw%cwSlUdrNfoc#vJ+`}*`%eBg z1W1$9^7GZO*fyuh_X-K@B!d;{stp;J0<Q6c`;4#7nywAJ9p_I#-`{3eL0&#+vI^NX zxC$tHJzvv}-Nl|=trz*isCNo#Kw9F)UmpIdGJ;XGSC6kBUL;?1W1L0S&mad>vU)#f z%((DGqZoCOsn01ID2bkg2AI)Pd#+N8G;R*(=u`(DrY;gMpJQ81Ae7OwZJep|Jt@n( zluJjQXBL(q>p#ssJH*u<Sk@<Vl4~w!s2CED65*t8l78um_nK4h{`OV0^C4NI?6Nmd z)?mzPfqZlfzQRvOjhT}S5-5DK<txXOoTIi)zxZ|@#=m2xE6VEo=g~MaK3|r4#MIEd z=NAE=ggj|ZP7ZH9rDDQ0)jwwok?NfQH8-ft!{KmVr6{~{7_lo(T9+}B$m~H}$cpe^ z@4mFIDEt#l7G0t<KIRk8TSKorF=gOA2htzr3wkRvd~V1@SEdqAWCg{fQ4_`*na+J} z^k;qbo}zXQi3wjrt;8a(dc(F{!=c;ev^`DX#Fd7DF~+~I2jmO0G3$ilq1gd00(qEt z1Gxn4!Cn>|io@qm7rO8FXS<DcLRktxMYqWBm_ju$uMnozTk+FCtONL+Z$NR;aPYPL z4Zq{0Y(w2oJ`*7xdM4*g5S`HVgmpn>thk(jD^~Y<``7p#Q$v%aUgTiUp1iQ=@*bFT z#o@EHM&^xgD{aG1rK*T4fEBFRgjv~j{>m%sY!{2i5URbX(0$K4uL>vv_P)__G}T#w zNru*@Bg~ZbRlF9m?<YwGskeQN1;M%G6=zB)eQNpTNuBrpI^}vsd@f*pM&22um^p=} zafe_sdG~Fgr}Ey0O?QYEUaGMzY8iuN7_?I61H!{H>E^N(^`~Rz5k!esml@`&Ja?^r zAGF_6y%WBs5XD$NN-N$;r7o4cCq>e?067c=M3=GRjGG&-)}2D5T&N|jzI!!N@(;YE zk|h%v)nWx(D3`N$&l>M2Abx4%qj>TwJ@S9IZmFJk@zuLZHS@+8BgrW>+-T7KJxpUF z48&NMqNf^UA~d(M3^bEZv2Q{De_E4)54{o$ym3V6FN|bL?K(Y~twxy$D{7nP&p+CU zIsmJLiWSpr=EtNYj<lBhj~_o?KOvvz<e+)|5sreMjE*SDHzjaZMj`8{>F5AwV0irz z;TPnbOXJfFaM^Q7#5tJEv234=M|Y4QD~=aMD8RP@2Zrqnx`QUUTlcjZs=*)B*hTXy zT7g**&k4Fc<$rNj7HkPUfRWB>G5PPUYLk3U7epmIrjXXwr}jsq?t`T1+4b`Jv%IxH z{Lp&9a+6FhS#Y|>@tX$XA+%^7qL=YCC^-rr*yaK;jutr5Uq4>m>Pvu7%mi&-aszbG zE4MY+{Sfbijp0GIsRa#`5FqWjZrv(QkZgr;L3LhfaKn(}rs5V}2DG^bT6Q_$t^u|6 zoaCHE)?BS){n--`7^a2Q(~jS+4sK08q(CupykM_8I6Mc6>n9Tt`<IH!9*r&FQo**c ztTr9um)2q#T40zJND#huLgzR!O4^67#Nf_v{In5@@n5hlTK4M>dmaHk>JKSm^xL?f zO1>ty(?jyrm054wRB6B9*aQXIN_wxPMH_tQ({}p36bo#v>)p>-mp(+2Lf8`OOLtNh z!P|=g-(DG}lyDRm@$DgFE8ZVAW;TgZ(Yr9ms<lVn##(49QM9<I3vTy(g8OulbTfvf zyJxJ*9tokw%xkt9Nm?%yR7yD-jNtt|Q7yi{W_|!|g+x&NaUu;BvWK%c6Am9#%xCCm z?%+YVpZbWL11AY*`Z8mQQ|4$n?L=jVJx%{bI?nH8vQbnW2x%?(h;1yjkgc$jJ?H?^ zyXV5&a85aE)0RmO{-35ce=nyR@M)H8-E(FGbMb=ol}Pw<U_Vq0k1;^jKWr17ByX)y zqu`#r{zcZmZtwDCzE?i5QHp9G0$(rKO4h!_^1%m17E08Y8U~}1Ksq7uSUQhn9sl_7 zcXm8TAV><2W{^JnGnBtUQa(z0u;3KY+_6>LsN$m4m;2ZkSk*CYjkUfDlA!0vn%@px z2l4=|yU^4$LHJtL03I}#_DsxwrIpHS{wW@MD%(0UYiu??6uCnCGJp4!&Xapb+fc<z zYTJO6Us3eEnk0t8+9zWxkeg%oWQTHCuZ026L}wI?4%*!RqZ#Ibp#*eoTtED`PW*3G z<}SW@_+MIpW&`YWi`)P2l4Bn{=y#PfM&S_0<(^7FV<Vi4i|ga#`*KvjQ{YZI==@|k zTe~$pHc~w+YEEwM_W(dqS`rGji`{<x^)Ya2gDyDM>38l&?A`2c{p6`(wYRkV3yUR7 z<zW=eSUw%m_Xn+OfF9bd`DY(bBpGy%vTvayG7XJxh)^9I95kbe6{BfQ9)q>qa(Fig zix?}li$<e*IwonO(FKtl>Yby;{+Ka7Hk@Ls9%pUWAhJg<c8`{lB;k#xC=y@1+@|kU z5P~`{`9VKX_h_9Rq7FK7Hs^G`_u)M;L*yzIR0+V<8A|wa8mFeV&%5oZ)ek#Yg5AJ` z_6dxAlFGa5#eK>^PFA|$f)nOaoeo<%S^VNya*DX_GrH9Cg@Y4+P#ASZ!(hz<^#YFm z)e3M_hlDTjq%-o=yeqZ|t0Z`~Vxr9A&do*s2zA)gVPVmtdr4vkrljTfy)kEUuq!4H z+z|3MB|!U!*-V=<(4NWRL`1vJH@n$_Hv5TPGj077wk!zI5C%4!n+Yvs&)FeFpaQZ+ z$aK2Q{)_!6L;;DcTY%=Cj+%Dj=Wd_u=9Tf}xLqA%-<u#%L2ZKcgq|6dY)dMel!Gu{ zmgGcSJAU%r3pvMlut&tK1vQ{ic4N_JYxU<jn9J~Z7J)7J+*a{zOt>%>!7Xu^lF+9E zo{eV#%U`XyU%%x7nxSs8Svo`;(#1xU!A!aiZ0jvMD%&_Wj3StwJlW~uJL!BT(M!UA zA|FEbQ*Ct3T`V`I`VG~Dg34bY+64g7w_cfgf0a;dy#l=kXZCkj7-mhI@2H_x4>Fo+ zC?0HKq(DHi2}Tk)nL}u~ppwrd8|8UVi(89iYe)(BIJWIPwn>f3%&d(zB2V_Xrna5J z(r!bAsj1C+@3QIevr43qtDmr9^rBeC7pb<akqkE2;lHB0@BFg3sIw!7_f7|gWdjPv zePvuGVy)_t+%Uh~q`zWf$c#fz&+bbATt21H<a-sJhym>Wem~Z!5-;vjQmy7Jbv5wI z+Dm1j1najRBeG6&_q27wljf^J)}n^q6-=TeiJ(6;;bSc8*xZ!Al@IrS(*-wbLu~n= z00v8PDi%|7-oE{<!M`OqSnDORMHC!##>x*36Ml@0D6Q=!(Wb+LgO7k~Q1q++)|K=N zrgy~6a-a!zdVSfq+YMX&9Pj|76u-|TUW~<-a?e36%#l^>Bg6ikV*FXRU<ZVN3MQed zc-P5l_X4zTQ!m5?iILUU#@UjV^Vfo)6Hk!%#YD2n{xHtsyKs#jFyr9~AO_G0o-jJE zy|xW8z~sCg(LgQG(h|Lx?@f>_HDCb*oN9uEc8>jtLiV-GCBB%_(UNzvums$iZGa$_ z)seDD>1xEhx%-3<--C&GcD6dfloW9XsaoFN^)Lz3hQzVh(Hl$Ue(6G@4$p;e$=aA( zzh-?aQ0=;sa(%a8+$0YobD3)<YMY;Gxan&C#)ZX)kC%6E!MiO;>sWU0hvs0pqp`7h zmWg_W8oJ@rXHsy5)D)PS5`(|2J$zpWdde&`v(bT=nv1K1<NWcfz)3V@8Wj~qOVQMK zK0*{fi>yznW(SidJJ#}NzmdUaG)j=+CIRR}!XzDIGA1z-xp0hXMyAxp8kLI<44R^@ ztqyAe@j1(cqXg|2K+1xguxG<Ogh3yY>i0(U!)5S^ME1DDL9N>N`q)bzB_cPY*`PwT zwe!+7on%APkRwQJGY4djE%nksq*HqI0`6;66N>-is<?zVm&)2S`HG6pN-<N!b=Z{? zE0g#_jJUY{FS9m857tK20n?o;Ol`#S&G!UMpVt*a3ylyKjcBSwMX250ntfyYXj{0q z=*QE8{#M?xUM2MftM-BQT%7`=Z(xGSdk<>TGVX~abTlPHpuE&zo#eZC7}|1aOs02D z0XZ|(9QU0hzVHGmSmQxb8Kk4x0xcQGhagplbw2g2NNkgGTel^`Ui1J_y$Z<f`SPRU z)%@fJ!FcSd>fRu^DBo>OLzQiK`01%n!p$ZTfyY=f$H5CY6xo)Q9#~*SA$Pz2rzS#+ zZ4p?iZP-!&?z8&ErJ<>LOVr`ac}Sw>L$P~me7xFYJ%i@~7am`wy+>iz)7jAU3vGRU zzTr}2V95KDEo#p0zDO47D!eDT6w|6=muX(7gVrzQ3Z2(|yvN{P5c~6j55_Lx^oDqP zyJ(55{5;@$agG7TKOV7=E(z>qF>E(f7XuHlXs|H%0FdY}V9ICQo|oAUb93?W=^)ci zPeCXA3HbKL%3L%L$vBy3UELPT>Dh-j_tr*v31br~@#whk@AM-Gpx4&~sUs_ep+T9m zKbn;QzL-z$H~rlim6#-#MI8T`=jk=hz=0wl3@3)}xs7~PB=<aC$?%=YaCrV4sAA)x z4^<EYvkjAwQIT12#+<ZIAHX+!6;0Uxz-um1i1Lj988pyJ6<sgfbgw^2DBD2o*iYB| z9H24uO_2ERa;<@>$RU1&v~^G*K{tgpl0xT?I~e<px{S{+FN+TlS$!oT9~gLVpOOr$ z)dR2PCu<&XLoWd1DCl?U@%5K(u~is)OEdvb+h)>_C*y2>>sJ%6#<zswA3xebK%3o3 zrIN;jDmg8v3G3NW03}1n$Uy?=wLa)vttal(I_knIx6#3oEuOyVi)nD^yh-*n=)>Hx ztArVO4qWxRF<#*`ZcJ03o*>Y!lS_DVHG}}-<8Ajld2I?BDyRVn#5({|{k-W9*uYGP zI+Kefj(aO*wD*mGW|EswV*?<Ezu)oI6-KqJRmz0M5YVXXGybEWQUnXFI7A*X-$#a% zc5Q-<m*v3ln=Tzs{L<>OEkVXs3T;F4I(7~f1X6eV3naswMBv(+gxcfP96i1e*!#YX zX|er%6ql!OhpNO3bfFItpz>zelP;|+j}<+PH_y^Lh`D7{6?{^bu8J4bDpqwOH!Oqi zd*sXY<is<_Sw*z(@?4FBR)g4jT2aQndG-n6vNvF&9~&5~Tho*9+q%m%?PdVk;iH_3 z)HbRmq^O1=?|_6*;{i$KH8yW7U~u{|C*0h)()qs3(E^oz^kmKYTL{7TA?!i`t0gUF z2XLp|RiZcl_YUv>*3~iLaXadO%Zd~Wa-#0&!SLL?*#hno^<fZU=R@EWMrf+M!vnG( zFpEu2M l;1Qr97fp;bW0aF%u>=?6zPQ96-U+NWdxIE!$e(87HNut})f#YVfEyx? z8T(nd*hy>}F*H_ST#q2h`y~mnU`5!8ud;3GfRBr|h6i}QtJO1JffnNfW}<vT1W4t= zNf|}D+jTiLj%S0&Q|szv?ERtQ6+{`d?uCs&Gqp0Tc8ju3^lTlIZudRe?*J{Qy)eXo zsRc}{!*QNKqGLH;@+@&m6GqZsWZeHQyKtaK0=F9jaLuw^yn6*I(YF)#Z2ZyLG5CdS zh#;+WoG@&gkF8C^QJAH}#QBpA3qRAOzdcp+Pi#-cmzI{M=Q0M!5baY7Yj%<#n2Qh4 z>@dOJNSKfwW>a;sL09M}vR)7Kp*KhJ^l7&SdjsPlN6bvWBCuoz#Z#)8XOCeh@Jf`R zw9`pZzp*QKi!fv;o&^fIIL(1_Vv3CM3#<rg5GZ#VCLJ9dK8sF!G?iVjp~4*4zj9CN zz-XsJqw;x2MnTY@^@Q&wvmpAPPbWvMZH)kowEhnAA?nm>DE(2fWxlh}fkm)j&#zKh z0dE+NOfwU#9nvLVibE$8b3gohn-Cc%L~;f9yN!{?s!NtI?usa)1c_E<Jnua(d$Q|` z*~qrOuX$KYhcFdr*d){Cyfc7uK-w?ce+WV(tOb3k6rYO5y+?j9C4pRBNLR6(06*2I zd}T#<5~5vZTlgxhZLFaTbAQKiNCnsAR>H3%ibP+F&N&8^<un{fXuB~syyz$BJAg;3 zO~j(=0Ma_4C*2xU;Zp)~{G#96A+o36%lJg?1V918gPMy)rGj?N0fkX)ly703zVpg{ zqO1d$X6)NM0Zv?+{$atx>NxS^6Nri7*OBCo57j6y96D3D{y$6>|L^z1122Cjw*;YI zGE39m*Jp=w5z7rHowf@{;0b<(-rl#fTT4sNR|AeX!TEci!-zS_*--2=KCzaUovXCi z@<5TP;Lik5Ft`{-27VnuZ*Ow6t+Nt@h?0cg!)ttm7ADV*jH~iml>7C-p*A(ZQ{#b| zOAH7_@YHw`JTYXU9o(BJf%JT@&mTv;Xm#1>RhHOy*;k}ju7N%QDQ>>Bh_#A?Tkun4 zkW1t4Hsjmb^==_o-1n5!szSnP_5ShCwxVo%4u|ClZ1$^X&eSB_H`YD#z`nb7eaBi$ z?-~b6CNo^=b=7iKQ7R|+a29kc%Snp?hj0hHtcP&_Y?CD4<3As6s(h}9JuVne1ZH3n zhsouW>MU+69xg6QYLPEK_}LPoD|dOdie7F)yvIj%V?;j7{a1e$nTO<^O9c105%`1H zhd@?Ik`%F#QL}~bbwD#bQU3Dj&j4cR^;&F)OL;;&h%tN*xMbTl1RiFK_{ujIgm&n= zHG%vta3ylJ?w^7ef`-Y_+V3D(V%IH@g6+J*!MYQSELoZv#5*BuJw&hb-~`RSzUi(# zHz10GX>dMnjTRV>lHD;<L!F+~oorAcUNj0uLI@f*j;VNl>r<0+cDb8X$5}gMQ%nud zYOvmApyD4A`CdZ@8mP7W3^&~n0C9f66k&yFc;>Ex!$`r`Qu@N_qjoOz0teKbEYw&2 zk^vb{LoUZ|SvFG+A93?!0J0vYBC=Orn;m@=gR=g)Qe)M_AQw6qt2RCBDob;WRY?Uv zVcL8Po&YZgvn^Zh?_m+Oc=I<(fHwCi`hlH-*0Q~<lB+qiFy^ktg}<!=#}vnZ3%BdP zNYb}-G8W~A&@<88a<ZCs_h?8KZnmqhua}M*X(kSRWKoyx)6hB&*{dA7V=j7-3Nl`9 znGG<sVY@7R5JPn<|5>fl-D@hqlt;_(KdCSQ9TYHv!d(9?rHk-MK#op<%2`6I34!V6 zV*_22fQz^9?(ABbyh0H-8^R#|Y`e7uvOb-FkZ&$aOe@1*tDztAAnK(7i?nqww;N@m zlt6`u)f%b;NiV;ayC41agKn91VW)oa$NSi5HE%NvGF=G=g2x4>2x>mj(c!?tNcQgF z9f<;RrdWpF)r_K|N9U(YvJ?B_{^ved017`JGvl)x#w6n-X3t2S{}nY=f|;t;*<b$| zSvG+tZgO3k)#^@$S1gAPfL_S|be`4z3pP)%GwK$y%K7=cPy}E&x|-imMVZIT`07DY zO4f2Tmf5IJhrM&vYZlx#@oI9}%JJY^=*UR&vz;JCrvgz|PL<PX4aho^!D3M&Rfy{} zV%Ffl1R+Q-jO*N_=+S*Z=%fzSDp^;}xM=ezhSFaJScKrJclMoO@u|KsHN2s!aa_S? zZVWLXdWeACK1K4$KPiacr*GJ%2fBF#lm6_{MCP@Z$e@PdQqQfqGhd{iVLb-jF#^}k z9YA*u){1{TKRY2<oxv(p0L))zetLdTUmon#3eG=!f)d2$qaimMPYXE{ER;e4e>SG{ z-#g-2vcphYkML66;t2LX0qH4bVl=LtJ47(~4RMMY99qU*5E3A$_XT1O#aEXY7snos zjVg&z{fIGbo^(|8@Ui-v$slFPtZZfed1XL*DW~xC4iO}TED#lTAFkC*po4o3I{}(8 z@bqTFN=-$}%5Nq1jnVNQ6}%@#g(d-{Ok({xJc$wSTzCYY(foHa*>^0)y!_|#Ri=zx zX^?ams2d67#-IN>@ZyMXC%trm7SVug|2<mu4p5+eAO99hdxyE7mn3v*`+otu^#?FZ zD3;Irv1qio{L@M0GFG*h;-I&UFZPV>&%BnCLo5bUmGu0mfH_)oj=>Ya(r<vnpY*fB z{|1!iC!S^BY3UlpZILUP1^8Bb^v7?HxwyDV9Vqry@xDC>7(WJr>AdLU<5xU!$V1JZ zjui_zh=e$vl|E$iiel>jVTU6@_7VEU+*_&4++3}<V8FO8rl?c{?n@&Ph#Ps~y2$zS zEBF`dZ%RjF*)Kta{49`XdN<KDD01Xa%bv$(C2y>>5s`i6wvema0|=C|rlzLeOdz+P zCX7k&DfJv~FMzDD!}qW|(~Rd5v)nIJiE7{%v7D~)tZO?2C>Cyu{EBM1M-NdxdLm@v z4O)yuL#0|+92mx~2wJ>0FX!&Z@&Z>u?uhf+xHQJj)^=gaeWnzHvnA_uaT-HROC-i& z!p^N<?^g>1yjSh-0J-wb&W?^p$ob=490IcTe8cMJ5&B>@aa|c~(cyWxyuN_Sj`;&# zsmRGm1D$b$YPW|n=ZEGK=Km!)$&vXfc8ukH&gkzC$itz%l*_?P_kXXf71TRSEP$zk z>h#{Q>XNF%QWhM#)^<0aCN*ncNUc%@^gYU>;L-in25^Vpv)_a2<ipPR8a&zw3ZwCD znm)ziL)VOrL7R?;_+y76H?2EVJ6IXwcz;&^uX9hflk?%tJaUJMX0lU=lWv#TwwvF~ z;o9x>>n?xcVWV$kH(j>hHnwN)YU|3x;Q~;W(c|b9SCa~I%Q?Xne-?{pJiN4*<EI8> z;>P}GrS=yWTjUpi!<|mVjc9jT86C%1a!yjH3L;&qSXpmm_IAuvv<eDy&_G+jTStYu z8pL1IPs~^L?M}j8>Ui7o`r2e~&q|B#a@WeVoNaDJ0V9V=d{%T>7KBQ#+XbU=XvT!& zqY4ZV)o}xYxtJMPM_<fSw*5^KT*O+gQ-J0AGw_r02vt4!chM38&nzDT@qF;*fAocS zvWw`rO^gD7DDh}}kY<+|^k8@((u;TY{!=BN8KLGEj{`VwX=v*34G#+sj>Xi)2zA!A zwTPacse=7NX_;uY+qZ|*xhbAv#{dx_SDr2qkVEa$5KDkpAfVXp0R9+{)qhd$yInWs zH$?zT{iL!hxDy7inFah?G!TK>s(&Y16!F}#h!t~6aWl?-rPff&MqHtJE=D7n-0lxX z;<9|>Dpw^iCl8e*5fI^P%1uKJID~vuizQYpo(q(ovjGG?)uo`w=0LIum0a{r&dq!^ z>e`>Oa2$8JKT&NF9$zO@O9#Xs)B+0Zzg|!8C^SYaV=og2(xMRr?qCHLz-G?)rLQ4q z2oml}YO_kT#QU+kAOCsw-Myn1`ha(@B}|+~JS9mLt})deWIqMce#$^xWR*66$@iWF z65mZ8RVmE#yEvJdXe`4<TC{~TlZ?PvYjLPwt=WTN5HcvWjrtTFO|Y8SNx)HfAA4@c zK#T~i>E!%mGYscW$R$RrDf5QuDc-Tl`Nlh!pnDf%eU3lB-3R_CyXOfwUShUCI7xD+ zb9DIhH6kWp+La+h0D`S)%d3|wNfLVYkuAer5X`@?PZZ_Ct|)W|y{0-L{YUb9Yb5z4 zT@q(_s)TXy?_wngy%L=%hUrqRt!Y)W&afsDTm0uC{R3c(mi@G7qmLkBpyBTGIZN^M z1VChHN`Rl7nrERgul7MG(&!pEqaX@j1tci{8Xfiy*ZKV!<S2ksn&Ca4Zj?&P0kV<i z!Jb@o;6}3!^$Q8yAU$B-THkC9V{`_Poh8f0qGvvliADde^~EC17B-qU5JK!02~3;+ zeUZcXNZkI%sm(-SRqsN@H~wAo-p&1DN$sma-RgyXzE!QVnqz|G(gV+DS)Zb!=uf_u zEo3&uYQTz#XTPsv;`B&x#|E88pD(TFJq$>cu2ynF`BTVeWg$ec9SCDex3~f}cJ8~v zYfp{B<8SWV{YK!^U%3ST>RR%^i)_(0+PwY|ANm7#a2^~W`e6wdvl870kvf(@aaxuy zPIC#M`}fKmXA<{y5qaoG8jD)4qQ1wjS0vq@YsgFPuTd*%n%w1p&}7sP73u3Cgf?Y@ znm}B5(#klrz74>nbZI7&2hHC*wCcV<x!|&c?xWO%!LNr8(nt$d6G$Bu&qO4l!XbxW z9G~Ur2yzfHsC0z9VGujEU-~gRnjvigz-)NobzV>KlqS@~yb`z$j;EFkaHFq}m#P#v zz0wm8;0FO9Y@G1$>{#xG0|{9gwqHPm_a0c03#ROtGq?xc;IeI?lfZoohxmVYwY;OV z#2Wrixbo2H&u}?eoQpsq@;;yV&IX~lbP^gajFv*@w+12T`@@E=fAAUE(_iF%>5PX( z67Rtq_XcWcXljPt)xxUUoZlfiui|qC%4hX{cyWcVm~imzyLWlf_{c`aWuYFTm+3C{ z{Y<U4WqxN~mB6t)E)U(hbBV`JwjV%f%r1N!FXp0d=>TPcOi{urcz37TXR9#aT%~1k zoxNK_Zak`D(U?bJA6MZFBrE=5*GirEetEV_u<fRVbuSZ)XEHTwM?b;(HfW>4u&lYp z4nDRHEr_ZX6abCm8j!iSh9qI*H<Gfmxog$@9PUHtTb19w6=8F^H2_d)as+a@v5sAm zu-hPk`QId=0Wp6A%%OizQi;(-mzAl30a9r6s<*8s)VBmXzr}UyLrrf&7B+MADtG_n z<hAlV0_)PN;c<rYd&>h4mEQ(>-?DPc>iB8(6?6sP1Xkl+K4G6#1EI&BAV)X>Jgyu< z-s$jX*grh|20qlZGF|-%Ko(^;pNHMIp8+w+XGmYrl>5OCyMkKw%F0UiSI63{<qlIH zK@eDf+2+i}`N7A?$jJR&AU{*vitJ_aJ2d^SuCa)l`31Zr=oi<h7U?R|=Ute<y`MRd z@jY(;cvHnSeKo5G{PHb9&3P7q87)Z4B)+TNUkwN*ZRl{z+zAGyu+iVQaKj2Gl^;F& zz{<rGF$L`C@nTNb?7sl%VP_y72~!05_0QQI=DcPP$788}WX%h3o7lZaC=5#-c@|<j zfZRGIOag?cZ3q1=wxRzzDkh&7pHBmM&L2}~UxzdnfW8uL@;ZUnph5$?5u$_@dtTXT zZi3Diu6o6jXFt}BjjmvZ3&CO49dlLp#DVt#_$!zzf!!)V85|5X%LpbdfC>k`{6R-k zPU{p7>Fen&MEIY6)j7B;u12tv8mJG_AC)u39z6Kl1Kb7_aq8?nSNdUb=hMS&+CouV zT6Tz{54I)6_IB~l<s0k9@8=Z;0{tjIPQ}kNbp7y&A36I+70yB;G`U%SQ8)Iz$`x&p zU7ORf6vA~C1hLH5IS@iM2X@~*@ZIAYT)d@>8-=OrfsgVk7+&vqk;^R^M8+kr{=V#x zcn2?o!CNE`g*}7hKrRuk3Y~$lGjIw~!QXHHr>F{|srb9QfQRtkgvqcw#K3;=IXm0- zPC`+%H#H|0*XNzV%N>0OI<xXm!57%dXh@I@qa`fN&;M?$C?$~xm#%h?nwy(_d%!74 z^WYmehaZ^?dwEx}Q2Fh<Kt(b1Sy~e&3O;rI`uU^`=qc=4uV*5Z!J}zF!i@(;bFBIS zawQ%lCLu8l_|u50G_B*Nr$;@Ldund}RlCN-S`AeI5Ux%z_CJrfH0VgJKlYsgn}irE zVy~z1QGB1VHSP@#v;`R89S|C3ZD9{$8dU7<kE02Ym~m~e<Zgq$i68Bhy?F}q%hCXW zQ8!vRvq#8D%;vN5FHP_73B?Suc$0AOK1TvS!0q`WEh2Q_eh(OOAk~2)$GRg0kOmcB z#)bYQW=w$hZg@MwJ`k&I0Lj13eZYxvpKeJz-uUZtwfi;3en)A5{A2&Np~wuqt|i?U zl8YlAoW+#@qD0jd24TpglaKljPQS<Lp%d(IJhdlD)))$MGMB@FH0!`*4=m%iqTQ?L zW?S7$TKuTjDpOJ#G09K7fn=BuqA&+frvKK0zAgbJ<WVrlZpQLtT}+Mt@9AR!>l|Wq zo71rQV;`KWbTVZm#%MjBkr+*X><woUzXrBEkdMG3Y6;H1F-n%t{XKpV3fL%$X9wlR z0fWO1APrT?X5cpB%`A`1+RuN42etZ6Q9vG>*%negi8nW<YwZ%~whX#ATC~^|Z$SO2 zAurv2{FfFWu4BFH|DT%g6y$vvUI+HoGxuhejYsIr%zpR<4K1w(HX-U-D#FmPb}~PU z2E}h<MYBAR_YT_s3mznZ<2Jd{GNJ`Grh!}?E>A~UtZpZ&_A#s;oVcAF^x5`5N00-n zwCxBlc=HpKOAwdy31n*aHEXmUZ;|v3A{T(`;+q>rZ)!2Q>|fK!O$^xc^87uk-{Dm) ze^-1)8J~*oL}~qutZfm~+*mOPB4-j~1EFDp`2{m%@7})Uc@P_3$Z_zM9Krxo+R z)d!}PTaa$r9Y_J2eHYsHxRl-hc!k3gz+CpppP-rBx`l}0F!bR%@WGYfC1Kl3XfW+2 zaG(`OUKvGOgOZZih+2ZBSX;NNE32sNNsypvpv6e`hacnP<4bBc$BN{!mV3z^Ank>3 zDc5%apEvO=QLLcsmb9i!&VCDD%~s&2PoGkmZ*Q#K5zYc}858fwP-4zl=#^;05c;?@ z`Y#*V=mt9vWa1ry6(f8n7ueig>a#ns9i_0l!tYWoj1fX%ry%?T(1K$5I*Y#8is%8r zoVJN&&OQMcHTBTaIl7hf`eGfOuq24(z<SWX=E`^2v<u2qtojH8J}6euQn~ePeHleX z_>h1sNAhYz1W1Ir1b*h_V3tpu1cIt(ZBxKsus&5S>YC(=k9!I-e4->ChLyf?;nBP% zmgl|D0GZ=G1F;@a0E>~pP+$WuITAe@ojitR*xy18H*y)_kpI)qp&6BTa1)8<(yTnh zQE$9qRf&{PW{%c=*)HfIHNkoZ`rKr&+yPsqlL!7IR|3XO;eu@-sSyAED*6-u`0=AN zOn=`$ccI{5U8)MrHUrKl9i3$c6faEk`VD+|xYW5iT_Ns^zS*3U)a3ef>0M=&p^E`e zDJujBq&dVshk!K1t^$ZP#sQF*T_;Nxf`V8}XH*yAx+rHgY{_ErM1BABe^VegVW|C8 zY^Wj@M^&6|2*1DWS71~-xWB2DN)sc`z)VihkI*oQBDxM0Y9kviAjvl=wdcoc;SShi zC<ScDpMnU;(}(T;WjjR3`yB09J}q}hz|hxUoNd|%JP_jy)m<e-!7Zt|Cw{8%)!u-l z#IH2)fGoXo`)?K<mtmhid{)Ks;Z_Dgi8L^j7jaI$Ft8T`e$;Cj`8nXpzcQvK!gI$D zEE;}mglNH_CRG1*nb(mCXB+PIkzmx$I1~GO_P~{q#D}1(sAEc;$*vcHt>V149B99` zc|jQTd=m#XgzY+j9J-`ug5(sUhzISm<i^m@v-H5s7zi?x4f91x48dw&dcljYsN$7_ z-4?`;QpnT)M#8jOFuoBtUBWY!p{Auf(#?Iz8mQeYD_ctyq>H&XjA?Em_T7ht8Z z+by+b=9s!ZX{hymZamD#+Fk&I|5?PrgXPtdnOgdIwE`s+^Aaf!&GO}Z-2US~jt3-0 z4T4DDt5Cl`Y2<Vew!*Sw&rjO_rpxotK?4fFVKVd2G%TV<F#s4!NWAb4S;Ih}i3evt z03f+2OxC6Yt?mXm7<Q%spTa$z^&n!4VDP$qyVf0V@e&&=D?$&>&uYi?zjoIsSb}k6 zxzi{T8=$w)I`X5N5Gv8R9IU`8_BMsrs74p)e4|H%ImQgxm*9l7Cc3fwppVhMI9@CG z4QggAVSuwLM>{bY84g1Rcds+tk(*;IKVW9>a9GE<17Mj$Wa4h?y0IX$htb`jJTEu* z6EOZX>{rkkdB`a%uP6O_MX8dY1f$;tZ^MMhaDb~=fQ#TGo7_8&Wda$17hWvsPEQ2l zvUg>~m%o{OhhtN^jI6KNq`@a^cRFtY&1Mp;FGV0#ISGLDofS^=aOB7{*{JAfj)J=5 zY|NpPaZ=Ws7D{MLfb-I&OSJUl-tz$Wvnh!Ea9y#}JVH8sSY`-na8(0%Fm?#}4Mfvr zvo)@5J>a>1Mb4Tpys32^)J|Ne{~0fQpLp5s$3vu1e+TbmuRx|i)9cEK%5T0U|0D}p zGb@*v(U*w=1czQjfX~GZo{Y8Py|^S~T3TAV(<`|dv&{Wo1~~RXDUAj~cU-~z8MQl3 z#<zQmR97%18yxD1Jm8!A!^qG!pO9!g>q(#ZPCV9@l?p83xIA(RhN{n1ZXKH8f_uLL zuEoYX>&C)fpi1y&VgORxLYAuz6z2E+Hh>r?10??l=&Jm0#17NcnR$-y*G3(^Bx4k( zau6IKlt+-{G&(X;9tr$tuan_nVGkdJY<^+np1>cOxZCb4k8jhwgcR<G{o!^7FVtIu z2g@3PfPu2$ujmdUecO?b)!2ehjocUI7KJS%I<x`Z<ZNzdYlRDq-}2m=mHS!glEIY~ zwm**xoi?$ao4E35CQw3R)8(Jk(3cY$hr$>|J1bq5d`>9u5#T~)+1Z*em#GySoS`0~ zL9O74oF{pgseg_?)q+r4AjT8v43Y;*^0VJ6fBEv|cbMpOVZsuKAHZ!fD_P(MvB}Qn zj0@m&|IjS|FPLA%@6UjuCBVGB5-icffX~khw3Gx}&z4ew9Oudw4}(0goI;;qTC|_0 zK(6_;&+fx#wzkTW_wL^h2HO?~-3}`X`hGNjgrMiFH`aT4<HfH-17j^^z9-m7Qe~B4 zzKPIlP~n*rB!^9H1f@ymDC+w-R!)K4Vf9mF7;I<}fI%QMy?lM5oG(uua)!sPwpwF4 zt~}4|1c}2!oFdho6@Lq2F(`;0V}h%wzt0q+Mq>+%66Ol#3qprrQn3UN^|LP~7e#=> zdT^XSK1A@#HQqdSu!#twZ*|`*?vp7-jIOA1sB2*iksGzuhK$*#`=H@<Ul$}=1KUE3 z?{<4so#CGivdqkYv^<7@i(d@=zzX%<@pP7j$<NuvB@ZSG+?AEcwI_PkKzGK{^jv%p z+pmG5X<lgdztNpd-s<mvp_p$_{p%dTvV98=^zNxDp0U)_7MuEol{}e<kJOn3j)e%+ zo;yRNP+n+HT1rZ{gyJALhA%)oEQJms4IvigTXeNzu~1XlzlWCsY!__BkHBHWRzd8} zqnn~-=~fC5y7nW8tbX6~MfA(ZaT{4MhI1eS9&s4BDL^KRFcgTGz$WunhZ>0W5JAs} zpJos`t&QY4ua6a#1Yq}X008P%KiaU~&rs%g`TB$awA|iT?w`mAhCtVsiEd>;Magyh zw%W-y0HW~N_#`z0C~z)amL$Iqx-j_<;!Z&nP$uhRj!a>Q8hUhZSZlO16NfZtL>un` z^niYJ01faGyB(}az^xz<nr{%p9;ZlrNVO*ixIW$=K+P)_Kyv!|4HXA>^wS?OR2I=} z4UUNvn~GW)D6w)5`F21fNd)A}udwzQBo|q~7R@A(YE03zxjAWIp^!N8HH|rnpR+z% z3D=uYZ#`oZKnJySpU0u~6r^ceknrQbwps2^cBr~DLJLg;qsiEQMpZ$X&yllvT?Hl+ z<lKW_&lJmIwXcDBY+S`q)xT(>rg8-}W-+-+S0kUV<JGH^-tLle+I~5}LsSDWIykgx zDEt>cw)3ueARpD{zJBE(;stpINXMt$B7g56f1wR|!lBxh*NUaw*u8HV%-ARE(f{Vj z+Mup*$#`_zxOQWMt?WDs?y<sye)1bv-wCM^aE}}85xErwHq(KXA2*%-Ox3a#%Wpq^ z{IQOLS5;PwmgY5f+Du_$KK_hdnHT%!#xC0(iEnh=6xw)@d_j#NNclscfVYR@gW(M< zNcV=kXp;zpj`IBi0&k16<Gr#=8u2k)j35(EOG_)2*$*>b>I|r%k|aQ4_znWqNoYk_ z<2x{ST3I~L2xQc}Zw%rwi-LJoV+HT4=F&mTYDqE)PvpTfC+)r84)XPfSR(d>Jho;- zn+by84Id&S%_aTl`zt^{^0(*r)va>P`m;LRRj%MSIuHI2jzcADuvV{-El@6QbuyFN zmh}4Ps$CtLVDN>f_G^Cs@$J5`rRBcye90J`#xuK^Flp>*+(WL7bb$V7h~+(~k{7bx zjtn<+kQnd$?9RAbx9n~!5h~dzJP3u~xc!aNr1?2M<2>co-rmVp%Jt(~@~MFVR);_D zmPeVT?<pRf?XRy9h?K!(!ME`-w!8bjE+OvSZ!h~_zKUDo%K0WSLdg}C+ASrY*e!Ju zKT}tp-#jeiU9hJwsh)TtUV5>V9KzD+iJA3bzwl;{RI<bIFH0XaD4%qGcR|G{n35nD zn4WBPwaT-a0y7^WODoLTJ`zu_5>q2H<QXyyY3zc{5tpa>WhEryN_%fT$;ICCiQ592 zq>wPB<nANPF4$bC2`smkU)-yLruM$E;-dgu9tk>+t9GiRhVBWuhSeiZ-D%4<)(*ii z6RzyW_~2`^3Iu89CalWI*`}=(Zc7hHq5ICU`M;|~wO46gU<C(d_WC3I>l>7xCC=}5 zJKFLN@i@0^HgifFr&n%#aU3g@)5`g6>o%J2CruK^7?e<l+!5#Zoic$u_OnwHH~Mgo zRrQnXC7%JUH{I|q27^fqGZKJY@5ageB=i`Nk8N#)`ccBP_*dV-&@hrPimMQe5COp{ zP!KMgi5QF&I^)8+SWNqK&Na-b3B@@0V^urfP)+rcqpcO-!otI!kBpH>nwM-)00mV{ zoU+~`-TXY&)!uJnSxDCsWqTyjiQSx*kp2P0Y+*7$_>&X9%;w)2Otuqp{VRfP8Mj~V zT$_-2fmKC;m;>gjA-1+^{e&K}%6Mk|__xJ;cv7je#0bzI@&KH|vUNjlntxeHmhWsw z*uX_Fg9sm$<hvhRv)e0qWr(PXGHhyT8*5t-#_7z6HG?X=4;(yCFy(jB$45rk!5C{S zL;pNts@}i8W`Er7%89UuNGC{Bj&TV!`!Oi;Mx5FC%Fzn@H*cT{uKD#tYY~WDdn9@; ziB7VCM&FeR-}lmu24q>leG&w4kx1~}&EJ${{tb{iT494rwq1K?DFP=>n9DyVF>~MU zJm{YX@gB-g0hc(Xk$5g0ZCW){YI%J8L#pXHlzGG~<D(1clsIHqW>GnV&x9~AoCrr7 zEHWC&=)19V`_V(`kGVY8i`wq>Xx=F`i|HB5!>RT!zf%r=Tj6XM4wqq~5}XNiCmO2R zg%?HR3D*T6>b1E01%`lr<MZ9Fx9wFZx%1rX@K;D$Hn-l1tZJTR)m&w0S4p4j*^sPK zY~4T^)Uz>N6X%|@qLXjsj$zQkK@5#v!be#bD6g)Z<9=8>zvm_7`+W*9nKxJ>s*`5p zuk%CQjHamsTPY!euqJS7EUEvWPtA3HX=&azbvG4m;k9+hD?t&#N|wECY;KO@3Jwk- zB|QsEQ79ztzX<lT?@Fd}({?#hgug;OAVLS-)zcj$#sx>?+!8_XyYD?Eo5?kp>w8&k zd4i*+504s^AZF^`s^eH1eALfp;bCDN;OZup%4>)g)&kUI2k`4wp_1*4_-6*AOX0z= zS*~lgq*?eMV)aD67T+Cd=^1O`4=bLq$i%;DOa0NY%UzlUL>K-*aO<D^?DJy>D_M?S z#qJ%}gQU(B+1NM+fvl^V`A<Uis+6XCnG`Nv8XkM$&}A8zc@}tlHv9iE_TKSWzhC_L zZDbTO8i>qL8rE%QWzWb;_RcLbZWTpDitN4jo*~KBk}W$)h-@h%+28ZJ)#uau^Z5O~ z@9%#N?)!DUu5+F9JkRqy=khz`u}JEeWZ(7p<TOnq>itIk)0$%@wRcKy43)jz@H&4t zpG8MvGzY{@lxV#60mzlPAo{z|MXh`*FE2m9Z|!(eZYo)w3^hML|8;A0&(j#)EKrlQ zt0Ob}=%jn|E#uz7oHEjIyi^H`z7!afc`s&gc4Dzz^4S39jqTt;Ta+*_FH7mw_RSv! zLq@|en%>Z%_J{nt-XSOL40ZHEdu5(x9sPif9j3J?zJjtNWF;%9N+%Z1c)lA8rX}_* z3*wE~%$by(Ff@Jo3!P!KsDN7Ne<%Zx7kEnhbp{Ly6%YMdQ4>Rt?frR43SALxd+ZjG zSKPOV&9~j^oT9u-<u$il`TU0OEquAP%*y-Qr0C~nziA2Z^Rw-3mh8o^q@wKxnq3Et zZ0?pc&9);#Br*yL>xFMq50Bj1OqiBc=Qh`syx`8I<wuL6*I4Hv(I-QZU%l>2@?X~k z1x8X+)XZf(=&~j8F<yH_pCQ$l+}N(F9GtR1y%RANBxP@3At2b4#bJKaV@3W+1~a7u zzLu6!8=>R9d#v|bj`C(aJT#>wCpRwm>nQKh><3;Y;EU?NSn`l0a(Gd+-sesAS+;2= zq2!5cJk2P;J~0u&k)yf%p<DXY1w1^$NR%j7>O)eEtG9?qs;g9m;tu3}wM+gga2&n! z3&u0VRcv{zk8s-C+p9m~zSe-qu!x!Ng*w%P<g6JkO26{#>H|Ja-hp;RkWih5)~W%I zBqvlpHQXmF-(d--cq$mdkvMku2gWNcL9;JW;&Bmew$rTyT_1DQhyMOk(DQm@fN$fd z&2!RZxN&s$+qceNUFu|V0h%g8c2~RBLd1W@vPZN8J~DFYK&PjaQ~|GG?+n;0a7VB3 zDhtq9w`lM^$WMV&OMA%e^nn&t&Fy7eIkTqnTsL?AhsC?#mO~e6nK3tNu6MJl9Ikl& zyt-PwXX$7iQOCgQ$N6`XyQL*fCbLzy7Cx{5^O!bM(a_Xj`trd_`;8HuSEHYA5s}Ug z3EF>T2jy>RNyKz@aJN5JYXg#irR(YugE<^ml?kNKTfKJIcJ2Yl>)R}cTOI0Gl9q(c zmog)gk}o{OOQqknErv-qmCN6jmSTYP(S|DD82c#&4`*8mM$@4(E9YJ{ArX2Nv7xx! z+^{_Q_^IKZ>5&@~N0yEKJfr)!rGu>2?v+fdR$52in$k7nL#-A}Z4}c5UtmN$DC4Ou z4Q0I&=Jp%6gWsSu*gbZVi;N|AW-lK~Ke24YbSqm;Qy>V8e73^W26g8(xey|>S}_u( z3qh`cMN~@q?{te&<5~2;?8)=-QfKFh2pY@vPOV{Y2RyA&e;>o|v0gJ81#RB932bJI zh`u-cdV8S^+)(O;SQ+uh$HgN_Nr=3N&PM#d+BmZiULD=NZOcmbh~Cs?snpuqcD`Me zHzzJKbg)o*Nqrz8qX=mp8+$ra6*ZOYm8{jj&6=Bl9<g~tMfv>^O0=0NI1t~v3M_r2 zh#0Hkxh+hOZ^j1ZUXnhO3JgE?4tU&G1_lj$uTeZgEu-60LVOYu$)ynv&VxZ+(sos3 z=)TD@fKlPg%h&5J5)w3O74$i<simo6w|@m5c`eX+grISJ+-zfK>3+&lJC4_)l9*JB z5BBNUGTR#33T(m>v~FHVxwov;^g2Evp@`giHoNIu!|qy1xjL2Xgkj~ynWaF~;83S< z_xuffFh~Qcl>56?wa{sze;9M~W(?HDhAY(?MZ+XkeoZj#acz2_D`#C-<&GP%1I~gu z*I&o7va8w?To*3Ias>qkx8A(JHM|l#>t_q|3lj{Yt{fIdqqL`xQZ8fZt+FzTlNY%* z>Dv20(O!zJmryZ7y|};UIaGJ|wys4N@~b^VL$jHQ&prB{UL$8JN27oBtvoVnbG_W? zzflp~0KF*PYdL=Rrv;6sB{#c6WcOAx0G6vjyL4TljFD@<PP(Le!pK^K7SXMhp*ZLH zADesx;vpMDWl6_HMMclbNQsY%x&81-8lZ^4OEp2Smj?&x7~(r%HAMM-rX8u2mrm&T z#xOf+eC4!rtCjE6B&1R1&ubj2;2!kJ2Zzo(@>_OqPPr@jd8W)gQBLnuEzTMMU57?c z_)_hP`lw32=r#gkHXlU8om*{Eqs2o;HPzjBZ@Facji`?z%EL;=)>T&@ys@EE*~!mU zb_*$Par^{bc1AAIkAk4z!PHe4A_ObrXQ$ekG*tl}lz?fFuXM9H>U!fPHrfAxMZk@; z>L>!K`v(yb4()2bWFPGT{3_DijnO`BYSoh@(AlM^Wnq|~zrA54c$meJgpiq13S6>Q zH0jufH<qZ3L!OFJQM~#*C2YUEsaXgE05WRJeo#G12as_oOP<)x=3N*i2}n6LJp1K{ zzrG8}c>P!Kud=NNKDi9$<pw5U*<Lu%9=vvfmNqme+5L>&)#_Pwp;5U!Gt`~@kJVx7 zLeDMvD?WkP-OznD%iEA1AOQbcl*XaVCJD^<h`gg1w(L$Tn?x6ws@Iw>_r$q44G`iY z>$ln2Fp%qs&YO*Hbl%R)%6hxGj^t7aH|yg{OC02NGSaWapQ-9d+WibDU@^%kGUN^F zz0umD;Mck9pg28-)?F@`t!Th_8Fu91JsMfh?kt7ob$y^`Ovc+z+^l7R_UR6h&(JQr zkdT)g)3``RJr!I9vuCTu{Z7=Xx(x7QF0SNA?wp=?b*x^I+?|jV6^s<{@Q8ke`VPMo z3HJk87UiTgnIn8U@Se=`hU#66fF>oj7Rr12`=ijuBs<29@BNSyfku#ls!z!-eX&b1 z4ck@&KUO#O$jNr@h~&{9&-XSf&TjgIdB3R8`)T#Fe=<`UI;Tkv9H{4jFr!`C)LH9} zom@7HBPm`d7$bv&J-FVMXoXro6Ei_x@U^OMYk7FZ^y5UOL$f(>-c7C<82He-zclBo zfV&C7Jhx`*y5N!%lMN5(u|{sNv}WwhbF0rI^5RG#5V%E#>N2V3NFff;?5cVLEosb~ z_(3;1E|cfFeCT+Dms*muu0b&+ci0Nw8&Z}wHnK~{2&4#((X(9oowgtuOrs-sk4-J4 zF7hf>ZzrvZi?UfgwV*(ui8DuPGF-~dEzWBDc!<!8i{anEZ$^@kkq0$5z7I{T=18kz z(J(ML$7tWZd4OK%-pmPc{F&65{=~pTDk#RupbMhSCxn6@NcEAV`qb(%Fis{hD)>bJ z97uFs<L4$rx%48`8_WVdXU91*W2~n)ZKHILj(br4TuwsPJyLdNAIQzJDUss&J?PV< z<IW(msXpC%c!j7z#e}R^7&3vycCC|l#_)jpTdpB10|HD0l(<b!+}zw>IVCszi)__- zF|((Bz_ipWM8w4WC*AvX^!#_P-v!0XBwXu2w`JtH@zuElJ$NTB*@En^q^0`8D^SRO z%?OcbbxTdY4~+F(ZHbwBqA<&ay47&@h#`~RIdCT(G2nFFx}97qz_RtD&l}C1>=aSB z2fbR$knT(|aFSeW48lw0C<i%9H~9zSgm{huJOja%$<-Ie?N8N=Q?hta7h%MW)tlIY zysDu1Pm{f?{LuQ*^_Ah3ZQTwJ>KQ+qHccJ)asz6ASqWQ%DK|`dOo5vlOC#W+uwM2h z;I5CLS-L9o^0JL1rbUShh63v!v)Feox^~9J(Y5io!U((iLIp7wZg^cs6-zPSDm)qV zuHiiAm7i&m&#kkPN4_!m<BjDV95T}D^bmQNg4Q8VTbD)dYlMcQh^uF(Fn7dWqx(hj zZ*M!e+m~2(B_$;}zdUe!(u47<&Ase_D|EuVsMRh0`8Sap#Wml;fvz2nZgCKwbIq*( z(AH(0bMyZ0N{U!~=cKC^*=ymthUF(F+pOGepiR-m+D{Fy4n2|}Xc<VX*YI{1E%C*a z!3`4U=J6zVe}u@P%T3glj!srz275Nid@U9XNWh;6kU(MB|1%Qc_byJBpkqowg{a`K zRe+3<HYPt`IYyy}5ufrgt9MJwX*yc^Xn+3}uIv=OPI7YBo{tNA@(r~QzL=6kK1PY= z%8tbeMgkQ0+!{c!+!O=|SqJg7Q3^OuI}Whmpo!W}Cka90C)u2woUeKfn>qvP$OPqF zC$CYpASx_Pf<t;qUY?WqHWaVUR?l)6aQix?IrM#m#+PRm75b9Wd||Iq-`kaE=H|-C zG|DPqU|}=pn~X|CY6y^%-QV9okgZyILdkW(Jhmy$67`|Cm+i9T4pw&osoW(vRJRnL zE#4jJd};+$S9;U2TSc@L&z`XKHWct?(_30&AVw`i6V<ipuSnOM{-X<h);BI}II50= z12($TWR{3WAhoWe6TyLIX}0c(Kj{RM6w1Ko&bz-Je&C1yM+=~`1=^lTC?QpduMQa8 zJet&I`#X5FLb&A_NCENaaQ*bH_d(w`8MCKMZgngL_1;>s+Pp31<E#2E_hp8|)a^Ef zhMNA`L5H2(xDSB-r`_*G4BDI~L+S8K{QO`cLJq^UH)vgET+8ThPVt5HiX_roZ<(R4 z-`*+sk(=fnzw&m%=>ikC%9DaLqvGr-H$=^3RN{h`7k8di97tQcwgIqW?cQ#Z*wds9 znd+Mo@?jXVj0^5h`EBfP-mF}9?pbIrQsqa1b58o6b@?gDi*D)J=AlQ_h4jb7=xbau zN3G30zs9tY6j5IAdRjA>lWmnRw_Q73JlKq>7pt7Tn18!ZyKA;hZUOrZ27%bmCqGS5 zE4jP6$vLv>E<2&iCW8*>JsuUAA7`k-N#xb4vlMa0Me-vQ@h3qM&@LJ|unfS^8B1<g zhL_rc0O6IG3u{=<Tf&~(FS5n~JhkchT$7A9GQv^-pkQYF#)|+7Sp-ld0iehxN0B$G zJ;pIle@G~=al-S7DWk&_<d-FvzVGLH9VciBq?iwRfBx)AM|a{8SihQDQ21kT<pJQz z;Zi<7KfiNqjaq}80y%{7G)`^UC?fA%8YyBqj{~6%CWyf+ru)=7O>hBrVVra&2R|M@ z@!~0!6!F8N^xbJ6yj1aC!zL2<)x)0O32d)_Uy6GaPq7Ql2r)l?XmzDvd#mWnW~bnO zRu^-3v&vGKVN~Hf;yO6Qxs?76k);6k3U>8%XuSq={bu~6(Y$b1iwke~o)ItV;%jYk z^ON_tfAr4J8-A>A>bvu*Mbzb5o{LcbjJ2xK2?xROk8#!)mz&w#ZY~J4pfrXg;jWPM zl(idbYB!!Gd!o@@NO^N$+@WFT*8D}QLCE!LX!&+(lB!bT@8^13Z(fX<EzfAT?Ph6o zy@kar+GO8?l@xc|HKd|z?Ak8Tp6IZ8KQeNz>*7k_xnp%ib#wUzmN2z2nEcV&U0WCf zF%V+ZOa89<#|L{Yi+X7L==%9omX!sAz1=N$T!ioE`+3oR7eE*78;nWGA38X!hfP;z z#sE9z%+Jh(-h}I!df?hRu^M{G+|$)%PCbAs-mUkj8X+M;yZ%}PQj9&e2GT~W{(PM) zIyzRvdSbbr16`%@qQh}}MTS*Z9A1nQDNJmdp>k>Jps5JPjCCiv<V&Ya6<zz7ce2+d zcB(LiyCz%2?wf<bd6|&as~EU2S3$#t3C*u6g!bsW%b-4=`)<fXFZ-RYTHf@%oD`!V znV{L*3m?L?6tdnm0CYavF_#(j<!)K1%dwg%b=qD|VZu){so1^+8B+BfWh(!Xje`V@ z{5qvIgOw2B+G3katk;tYs^_2vU76I`scKY0{;grpb2OPsnAh=2uSH2y>vK}E8B@%; zBzn}`j)zB>M!jF8yQFc2=cfKuj%P^zi_B}lbES$PN1>&)5TY$EhI0+OS{en}(tO;V z=h^hgfY(l<wr-Urni-Xf1!Kzbsn0`j<AoJaMEW)!z~vd)j@L$5dZkk$6x;znJX6iq zs8Mz^$}(EiR3#Cla(|y4M+A&d7xJwkolj)$Xvu2~<lgOs?pwr`mX>4}&y#5DHD%_V zW<jGre}1uOex@4W6AK5Ah=^4jN?ldePgrG7%g#Yv(L$zfkAR<*kc`!ff-m=~Fa1>r z66;yg#8oy;RFqzg8_0puJ%B?+2af|de=(>3_y)xI9L)NmZ49WBjc$tw(v>D?!YBt= z1YJ#DUJJBL*u}+vK#w%1CXAO=-1L|?h^~6fq$Z?`2r=3)&r&%oVdkYxi=Zf=rCU+` zj%+b>0i#4=Re=+IlV6}c<ar>gGZ3Rqan`8VdBe1`{h5kt+;Btk@^0*~{bavOugqcb z$>!Wl+KSb9$MY7)Mna2;9%Ggx@@D<6b52{AlsXxHCvi+-tc{PQ3`=^65A0z9xMIHb z=4W&j^u77Kk@V`h8<F&ydE@gRKE#rdks&3Muh3c*920EZm0wjcoGtIsCAn8SQProY zLf+VaCm-kw3<h(yC@mqX_s6_zeSFeaJ_3mtfBG0by_ntgiUl$hLcD+ur7b|e#0j*1 z4o362-7l6k#nTg-q7-i4EI~lla}LK@((M;N(M}%GttgGbQu^@WxYexrj6u_UgMO@u zWSeaS722h@%V#$?FM)=pYc&>*RqD)iyV6P<B!8JeitBS~1z<9PI5&jrCvWa}e4ExC ztez^I-+^A=<8>zEnYQ(ZFMjvRm|t^wSI+MsTG^27)Bj%Eu5jw0`+41R#~ih;ZiJYd zK!<zU!hn4AWpU12Z}a%5<(|7Ht!=Z_y``&(OV5UQ&-iLOuuMNYF}xHn_EojPl+rQ7 zr-!Qi@G05~Zk;2yrjG!c*Op&vf$S!%TpKv2V|B)zm9uL<p#>({C3e`Mro-L;iBa!7 zA3C@#OKo-Q+PmJR*?S+~yz#AF?NQNR>YDu^8iSd?BB*6I+XoKO7*e)qyk~>igZH|` z*At7fU01?S^pd00jD(<WuzN(~vW*RKo!&Zh{qxz`c+?kOn0UWszVS@Y*zIlgZPP)p zOtv=-ccJu=3&FSX+CiVteg<pnE8&T8(S56d>^4^hWWu#Ex~pjqpO=;F38b?BlXnE{ z)ObUG==6?;F0jL!TIZvVe!X(CAhb0gR$Du=ZO};hNZLj(sHG{1>M)*fo0+c@5)t`X zI^JQwZgxO4d2{oct-8QwSquAne`*FoW(@&+48E|iz**<H0sam=@8{7Rc_k$-?<3Ar zlI#~mly%<%6m#yPXPiu?Q-In`6>v14N+_|RcdZ$y&O>tI*k4XLWQw|e+11)we)sz$ z$;nTTpF!5xO+K<|D3&rXI(oAss$j&q?Hr<$8n#^sL}O7x2{~nIxeX__0q?Xx5HD-W zY&r#_g7$37iH65KzIg#DAl3hU3MQMkDh*xm!RMU+t{}M?X7xF|;3yD10>Itv{6cu1 zh=lm8PuN~Hx1<EnZJOH`cJzO`5pYKSTwU@dxMTN1N!`!*oY(i4BT^>o{D*qqFlh7P z8`{K>)pgTYpl0gsxvT9?OYRMo`X{f)@iEO#)tv7o!92*CBAS?(@O(6Ny%u_UbwKzx znR_!$Y{-bo6QR_QiMV{9&tbL7dHQ8BlyR5&_fLz+aGc6?{zLjNYHDgCg3e;M3qfN4 z#4|Zbuz?KaS`X7-hodydKhdIZqRUo3_IX_n`c*54CTX>5w}ng8Jb&`*#ZN-JRr+XL z*7eqFCd*@e>{l$F@mDUZm~?&BoDq3qv~r~{UZjo+v2*^Xhu@x<f68EWyB;#|1?6dX z5xMFd`UCUmpg|idq|f%oXubF}wN|-3+R*u9-&Lcv;1Sovc+^}u{spzc@Xs0A_E80H zXoq!btzrw+!mJYnQXM;x5I+wr=;atur_0w&DL(FTGP<A&O(!sd($J56;Q(cr`hdKg z^701~$Gco5kSgt3V%uVsyv^XsgZTOUCM<;Dz4E)>V?YTcuJ3Sg^7iJuAVjbhl{xC_ zr)szOb7YqWKH7+g*~Ou<gZ5Ut;)e9weqH$LPev^LR}PKB*JMvMVCy4!`ic+ltfW0* z?$rIc-P^6Kp;J*_`!zvh5hn&hKB}jJ*A7z<ygT5Xoh`5Q=7b@Gv>w6>b&{y6sw$5* zrUF^nNs$_ZeO94pZ|`}thmeg>^%R7Y3g<VBgh)8ik@_7@y!hd-Hi=U|FX8@SoCT7Q z%jXV7L8-5^S#+o|J7Lz9;1W#gDVOe=%_2GujCPx?<@?W{&jVH|nfQ@(<9rnqEaZeP z-?8oO?M-i@f?`Xv+nqde1;|MoE~*Q<&rOMsyqUJr3hMmT!kN+x1VxIA{S3pPp-a%> zGPj>?qAiiv!9_&CLgws@Msw{<2{p{-1*>;@_{(0x(bJx!hP)Wtn$$9^B1c5}^r1>M zHU0j?sAK2AtQ87Ads;ogGxcO&`=}L^v%;IUO#KpS9h@+Gam{%~|J_VQ6AVz0YdG|z z{|q;`oSI-?BO6yoC+a)gS`vEotTkQ6{B4)Ccnr6dmexeql6vfO2^CvZF1o{tS~EAk z22I&5ye)t_8>N}q8$&Yr<=Y!siNPP6m%IiBboH{t0cyK;o}F|X`{V`u>epbgZ%@&= zlIy~dDbtXnR5V@m4*7PTVngaYK9)?%Ev+C2T}0|U$wnMCTM@IL-Om-QYhQRVhX2l0 zccK;uCE*?|%<i<VOf9@%7$A9m_)hVQF9#82=ES^Xo!^y-Y?yM{`?DH|{{!hnUeeb& z26~F{Qk`|Dgg!a?2nc*wqPfx#2l9kgm?CuDF4)AtfEx){x!JBCUxCy5QvDLevvn{l zxl^KU^MQ!?yJ-wiWzUoK=Bi%W_D+Ap-1yd{%0wWQgUuN3dUCQ=_7Jc=0~%L-3+p?y zT)HLK%+KzOp4Oz1A~-1h&*VXhnWR11KT;*meMi6HaUqA-rp;yp0afNpX}E`t@>m_l zv5G`oicr3(DYNo6vlP_<vB=ie*xXsUq{|Iw=@xGIQ{Yo_9mU&`!=UjPm{QK_kTi9O zm1Oj<$XiZ?pE4zB2jessk!m~v<w!Ay8RpxyGvs(AcW};{9OtZkeSjBYa6M~z3<}0M z^Ogh#9v*c!K0JNN*XM$X&mNt}Joxc*_~tNC#)<Bc8*?tzRkA|rGucF(3D0_@=d2w^ zLeq%Ms^T4v^pX2y!3CPhmrd?BY{4-5sO042#H?=ed)0BzGBRE}k#cfy6sp~W`=6hS zPazypMn^JI*W9WF)<wKn*iz+l*II5v28>tk65C{$o61Gli~(7(>*W27PB3Br`Ob** zY58;ZKAqjtU3S&u?P@EpwcmE!TO}vLD=zoZB<@XzdS*(%?0PR0vc|eh1v5U~nFuNa z+0N)xkKO%|d)r@QOg06rpL=7qp3Oaqj*foN_0<|55=C&t$gE&ZnUzb=pq`}BM=}x= z=i4i+s-Kc2h|(5EI3>{@GWDV9xg3sU%+&1j4X}5YkdTlzz%MuM?tByMys@)(>HshT zD^|kj%Xfh1x)@Xecdu4Kf?&i{kgbW(SGi`IX$hZeK9pHK$r;Tm<FDlFMrpXkq)$C8 z=AW3p+!#cm+|?uzxm}fT@xh1)HKeBn^KVE_dqjRN@3*0HKdjerYg!`W{d`erDewGl z$>*H@c{@(ElBj;JVSBBj3?k=iE}Zs|Dy3i0>Dh{!uGdxy`m}0XG{=EHip7vD{FKOw z5MG(JxOUEk4mEdeer~QcK*qIv_qzD>Twz|`X*;#mpFacYBb#S8-_MtU^t0v_6A^)w z+J|SrzngxuQWjs7Y}(vO`#9WEW!xaPs<3ooR$|2^!E<R=Wq$RmzA=`a$m{1?fcs&n zjMDHU6;UNK>N1-+RI<f(3}5Q8|Ai^hjh_s7Yywfddn@H<V9b=SQpsjZXlc5FsX0cu zy5{bws4wKi>iH&mdfeyKg08>?p_yVH%#e9cs!6G#9z9Z6ImvmD05FY;f<b|{j>vs6 z^CK@pEq);tA`=U~)s)7`$w=&4s!w9L9I?nLIZ0q$FM#)+X4fIEsH{}3cvAUBj43IZ zlH@#O1&($!k<C0PtTCz3i4REWr(?1D$N7kHKZp9>Aa#sqS^{O_4b1z}Z&0|H#=Ae# z+c8BQ<OXcb07nsAm$5R{({Zg@Q$vVsPTrAI&0^q#%FwoeVO#V&gfVno`3M;WcXb?k z^k*w~$<-5jd=+3jpZMlndKUseOa*71kaQ(T8MqR3zRRAUpT7q(V5F`D8ptk9T0}t} z$eAQibCt<$GOU)|P*nh>eXH7k7QzGeLH9@P0w~QY09BRb8kjuc_vlekPz7deCiAHI z$cCm0XQ|En#K7bwp=bGFr@G#(q&ZBL8rmf2S6)#7j`aRf;XB_`xw<Z)#TyEw6O9Qr zMz9Sdz*Pw$lSD>kQchl8drZ$EASih321N;h7#h|017=;bLtI-C)oGf5DW<0}O;NTP zFHC6So=T|LqhhU#Hph!9KQABJahsU2*+7!gXMtJ~yH!5F>`}QE1-IN`aF1bvdX0DH zI!hn6q`bVh!|b_7ohQed%WbG(eh5y<^ZESf&RW0TS7_!+4!-RiO3!I~4|D@c>nocd z;tb+2sMszy;gtBhXYh%S1|cLrMSusF9QS2r&N49tb5v~A4R`Xw(He(@c(1{}zN;73 zH73j|)j}HPi)#w+J~EE4KRW|0;4U7y#^tl0-0P;^K2_p0gphFq?$cZQ^iZNP^V$?2 zs&A_?KP_?QYEjPTySi-WIlJmRi@c2!@=o3!er1lzbxU{#VCR`hUSDr=7`?B<X#Gh2 zMB>TKLcX0u71xZxrI4x!bJR>eVc5a~QVxKsDqb7sjZ3;r%Gb9xLrS<CiQEXHS^rTN zU}h$4Rez`XbIqh~8(&^3oYasOIT~suM8&j(mW1AMagkQ;yyz$a*3VanhY}ydC8V`| zW;~KmtCGf-Vaw<lHTfkZ`3SEley^fZ@b2z`0UjRaM>D`3$(2l5CNd$R!1GTi_@w~+ zQsURsjD4)7v=<5;)q|3=frpASe);NM2wtjKld<5_S?ioT7ai;`X-r6tc=3qNeUsx5 z^>e7Tv$JzK{(Z2{1Zp*HFS^vU$|-~Nrw8uz)3z^K7p30#)r8`?`xOSWpJuxE-8&)6 z%)aTy_3NQ?bC_;5bhY3o2QD3%03g`KGP*6ZO#w0*v7)JUXs9aH=2M&QZw}oukU<}- zhLCO~X~89bZp1lu*koN2nGGK71~N5WAiS&ZWlvs}LF6pg$CVibiM)1?Np%qREnI6L z9`OvZdLmom-S2DpHsEM+!^9`+!Qo-MIL?Bq=O$_$@!*cHw84O&2D|wtltvX-4va80 zTBT=A5rm7gs=fqpA2gqfJzbny(v?b!IwNM4mEr@#eyRo%s|I{Mk6~9lIb81M*yT|Y zdCgYcb$3TDt*<a98`IO;sfWqL`V|<Rm#XJ=_7H(jv8sPx>^MwQN}Co~qc>Wzo!Quh z!EMR!MAoJ1Y|;i-jF&1hA;qoa8$xNgoR#bF;N~OPP)DM{<xYtsqiv>rUO3que~eZN z+st}V%C(mc<GIJG;mW5KL8>JnuG`zTd#>Mdns2Ca>kf?gvAtk%<=i3}DryBVBDXuE zL2h=_2&R4E?Nf18s9+VHfC7#rd0#JG2J`_|dq&$!E)R+Cjx+7P+;mu6TI#yPMdan+ zFJIDtaQ@T?=byxLP`~ZlQu`in>cRi<;)Eemam{&qSsRLtFte6tPKQa8Pg|A*yZ*E7 zL+qANnjB%*tN=H+MNi`O$d4c6bF<Xzp`7LQ7x2alI1`%&J%&mO22XNKqDidfWe<3N z0@9|ClH>*3`;lQz3k#ZW6al6;u^NO=)LSV@n8Aow(!sBnr`rfamFtz}yGzzkYr9(w za>jDOr&Z|JE|R@@Y<)Kt0bf$0=axVAjX|mOb2tnub7Oq9=2Y$P34MCrJSShG-cKbD z6&o!BbzN0lI!MrW52lZvi}p_K)g|kF5f(<ZF|y<tgU$pIyaH6j6a5k^OwtB29Im;8 zaBn5Js|9uKwShww@G74qY0k@^OPUNV=mH?g1@dD@fxvj?=arRWb1FHGRAZuIhHGba z1+(c9`l`9){?2@1>_M{|li3{AVVjWBMTbSx-@0p?CD5rAfnTRS_^Y4!t;$N<o7T2Z z4k1o<sN9LJ_V%kyCK$@;0o9%KC+Evl8FyX;yCf9+JUq9lP2-3r=<4f}{RRrdAK?zh z?{Xb>plDF|qEC2KrFXs$ls#7^G3F6B?*fHWPM?@7(gH03u}epy@zUetJmEI!<R$)0 z7q}X>lshTv@^@q)99)PdR^64lj_yOfe-hSK#XIN5XTLl5wLY+T2~o|)qwNY~PX6jv z{vmEFl!I|FI_&xUO8=)W23qd>NUh6V@Mqd&*T^Il9Pko%W0TGCTe|4ib&Jo33vH-8 z1?sx;H!DNsoo0oFeyebp%#LHpXfU>*W`XkH)%dl`_cyhq$xik+Zhf?a8xT}ag9*>R zz5WV7`TLDLANMKitj%vQZTP~6+mA4fz}Xlh`~oPi?hW;<FyI@nYH&OTk=D~^lx0Lm z{QsdI1tj6?i{yzj{h>#a1TNCdFfoLurBQXgQ~26gT}^MR&dz?U;IVS+Bq<&VVXW7# z`O|n*aL8pM;Z{@M?ChdN`*XAo#2E~-nx?>U;1gK?(f~Ir!p$k#OvmXCiRxRx-_D)- zuA%X1z08yc;D@-hMH(2OXxDUENTd$fqhvMG#Lj%b1CaICTxdEVIt|^s?9dEzTeNQ4 z6T*HBTsYIS^23wqD%b0ZDkllx+V#l|u)Xo|!IQ(rZeNdzIF3m*nVoOgcJ3y>W1QeH zIfym_d`>7df{l1%&a0<|Fd<k1sRQnSaNVGqZB*(ytWWNTwXm0aSZVX>ZEn_ZV&|eH z1c}SyYmtjQND8@Lw>0!KLq-@}D`RJMc+>{rDnoIT8HPG%bkTi8;^M`#n|p)vhsAHd zoA}Wy30*`3qdPnY+hRU1EEHC>=uh;2KojrW6@3J){I)Pg58F;(xohOI+?LBW%8<yg z^cKY<Ud$&7nc!N6>p=Ax&bkZnQyCYZCATW5_4#NFW4Ad<E^}6_m0t$FaZN;VZ^lOY z{<DEieO;|)sLI<d7Wf-zX+;<U%$D~!*7-H7%J%c@O3YNU1o8Fa&6}HXgAI0_@ip|C z1>SiE9$#&W1ilp)7xzw|LmPK@WyC+64;hf}GP1I=@>I7gdid?zw_ZEhs@aVz_nY3m zJ10N8BE4Cgx3F5Pp=?}#iL2W*E8oq($LgaCQm(S8Z&<roK5&2TcGWi(O=y;li)4`a zd~;`SuqgKMd?<Azif8ZD+)h2*(>qkI`P7II>5YXN_0Z<-&+^&zw<dd=gN5tmJF)Wy zqnpvW<CUk+%~W6kN)+l0UWA+0>Wf>*PY6DyM@{v<x{k`d_@EvD2DTEDXX9Xu2`wQi z%jey>;qKXOlZ#P?0G(o)Ar$=|FU?4Hl#Gk|A7}!|5)x88&=|ZgU^y*ndxw?hq9})l z2SIXhP>-~~tYJL;gr;(wA!w>)NODQXzJJeU>5e|%?&l|JYwvKz2-QyJ%?dVslvJRX z_A+3FLSKaZm^pw)awG-BT68YhP=57QKIG5a^v6UA$WV1O$?@^w$Y_E-;UdbSq9Qei znnl4;axxGyUAIr>($=zg3Nu1qXuQ5lf1E(d=ELUJ7BbjCKZq<TD7<bET8F<Ph*9vv z3wuZqVa{W!vyLuiDwl}Xv$CM1{u(6r0kwYT<j<`f{66pFN>e}|Fp2SuySqts0rVaq z&3bFo83-Xpm}JrdMN5HiiMKDx<cUFGVrRGq*VMppNHZKlpY+G{tcyeC3Lrk=Z<`qi zK{`kf-k?3jM3_Jwy`x>u9kd0p+SAuw{DLMMXWgKok<nsX>{|x*<_atZm0P>|c?EVi zZheK<=+UNgMsRR&Z5yR795<RtNSac&vQDhIf28VN3I-nD@U!QZeNFN6J!5@++q(A{ z=*`O60+G^_APNzj(%lcIS@sJ>rz-wWkd<O)Cxi(sQYC(wGnwP@jlU){vA5UtZ!%<B zaZo<dQB;YjSE?qGMXD?KDyG*hwKunj2~L=3;M>`&E6T`tXuM*fAUWa-C3WVjbOM$T zTYnyqBOc;UCkB4k9U-*P;J7AaFO);>)Lv}DoBj^PBiWj#t=y-v1lT4Dn(!utJ`5^! zB?w(UU$elc4>y3pxR(vSsVX0`!-owLII$B(d~xk}DMqA9q4QfGM%DHW5-*)(16oX_ zuqhhTnr?SZXlAopxA3Z&J%^5#N(rJBHRDBTH&qWg!DZS=)6Z7f>8nBtvo@bXf?~ll z4Y~@hzZj{xJ?y}<1#SAY%`VAI8~lFaknk_kbrV1}Ns0qhG-c<Jq!8%5DQblC)Gs^y z_LKV-)dn#1+na+8ouYj(S?w%;Wh&aEO8)urJp|)d59$X@y;~uvdw09#RE#2P7#HTC zdx?IE(u}y!g)a8h&t=6?St>E^?k`m}BV2j(DeYzf&?bF>+g%E6NN-)ZB68fHUKk^u z5WjubX=ioy83+*@TB_@TDyXkb*1XeQDY>`N#aKu*ZS>%U12Qw#ZEt6tpQH574|5QO zK3O4jS?&91%`de!FDH)Cu7+S*sCjYw`)epUepQhWRg9dUB}}Ie`UYaX)r%7Y8PD1h z|7ZcWbyE!H%Wv&;id9-e+he+wdP1I&+t;Wvs0DJ4D?useBB-h8w&u1Ei?3>M)t4~5 ze5}EVB;_ZOq+EbRpCCZ?pG*{r@X{r~Z^Ww@#Q=5sViI;6>&%)Oz3>)Wy?1hXF0QUo z&z=b=>6|^5^{nM6J|$0N<C`~`tK?+P#$B3{BdVW<KA&;-%#mg;1k*ArI_tI}2i+8x zsTnOnXb!vN2q102&YPmlM)vRuVqzs`Y5X&bi&2QyL_g>B8^73lF0EEmx~+Hm`;>)B zW<z489x25SySd8r!T1tcp_%L34hAs4qC!c<Vz7fu+WzfTekiUO>e4iyaCjjNNobr< zGEzXv*UO$-Z_@IRj;Hs{SDJ)LSBCG3=cR?h=R%mWL#tFLwm&LnOg(}tC$A3}LS`b} zjZV4QR&f$qDvWJ!-t4*^(EBb&C^U~MbyzKSmOj7K25t|!$$K;-+LO?(QrZJ9jBy6w zx5azZf>zmU{)WsUg%7a67E)8x)n#f*=t)6Lv5_AU?~0Rd!L?*lQY4e?JUl$6b&YZ+ zm~_d_+a5ncc8xlMS0$`3o~-m-{hYj;XKm*hujh6;4CtM$NX!D(VZr^ru7!@vE9@s1 zi*>#f(szVe(Z*z`-g{_b5B=z3nWCcIT(g*BA*0)~@pIKT?Cqmqj1G-5%?zzinFBs~ zOX^sz%}?{$73H1J?_C0&dzOM%MdU+zZ1mmLyKTZYskuE~ChzJS8#}x|$gHh}b3e|A z`w3vPB>%t1kQc1)`+GT|g{C;z|H?E1lVC1j_MON8^<qjAJiMK^R5&t{Oj_`vQd)NY zm5;*)A`QohE@TjS0oRC<WA>GT6!Yu(!=ha8+hWF`yW%Y3k5mY7#$t`6pGK1DLJ?jL zSLSDDMe4lI)qyrr!dC3|gps?90Vvj$XmquTv4z!cm-do(Z;lA0In9SOCF}y!IEL=a zdYIr<{AhP~w|oHW?$JJ?8vi*k@BZA!$3Lh`rOuHRjgO6`R){Fi=S;Kjbh|`5<f`3o z>P@igf6UX0?jyHE+9=8gzQgFaNazS7&Tk^rG6d56c#Kdv06Jj%@l5YvlsIs8Y)Wwi z;>J^KX{1-GH`Btgh>(&X^0Ky8?W6SankDRG2%YZB*6S|(RR^UFI&k$;BUJx}LK$c@ zTyn?9HQ()I43ws&b@J_HASDl;DAe@Er>G}`gGwrgrrop#g`B3L3&8xL6tfs!J(Eib z1(q`9Bv>96KXJNSI=jT|%ep!QY|#GwQ5{km;lqH9a7d{yaC^aR^EqLHih<u+g(E}; zhYIl#|M{5&aC6WJh2J%n2XN&Dh4Q;LiAZMcU|PhmKOj9L$yDMvBWM1IE7`n3<S~pa z|7JGAtULmIXLfdcf;Z($wLoS|?SJQp7N-q~6tg9v@aXjU>nd88zWmq>)k(rKGe4j( zKPtt{k5_-(rGyMt#sEKd7Je+l=T%vB%WFo2#V}s=`+eL{_{w94@Bi{yU0=8HErkx$ zjV7Ubyxhk$kaB%F<h2U$ri+jVwHg>q@Vk5L6eq60U<Cz+HhC1Xn+#O2G%5~J+}fpl zNs-nwN2LDBda0RSgZ+~4f4*yf@2T;DmPyr<xq|I^dWwga_cUkCUHdJ$3K<udOY|pr zd;%~#Ehq5J*m*=H&ezrLIL}>sBp4&5AEyXhWnZ5*0TF&0=oJp?h$uC2;#<(r0OL2^ zdwu)_5#y2i_;4!1blAN}j{~_BAS#dgh{0;~NphOCF)<!_9uR(b-^-xzA9B1O9OSGX zM;p`tv1Pftz44I3=Ldnh*ZhLl@yFlcY&B8?Bz>C2!h`HDSmimKW1`*CxKY}JhXhb& z*mK&)e3XQ^&x9-o;N)pWG8BQKrEekLTb6(5r{ObL*v6*(2o4*|=-%sTQ8aaT|H!wO zkeuwTL4?0p)Nw^m@6ZY4tJ2tbBqUhGJ$AyC$MNqtI2GidIY-kN5U~8dKgl;8bgD;2 zK1R5~JjB#b+ysnoIEewMasvzdvo)XM3Qglx5mBzfdC35`G@taVuFiipnwbe7(JtNl zIb=ikD7T~}hG~0@_)0d#muHH|UiW<EbOS><447aFFGS|gUUMLOEdzV)|D<UZx7YAe z-m`F3@9(uGZm&&|y{7)xy>3>L>e%Dp;7E(~mQqkC=+o7EO@zG0>!dRqCTb`f>nmv; z-FD_{YZW~MJqv4&!9G%B5d84<sPWJ6BJ0CX^--=BjynmJ8)5kStv55N4=zY@aPh%k z!o2wz|7@*1^eV=OLpms6NAV{SoM9mS%mm(O3);$HZ)d<{dEC*Q7P!47IgD&=5_(JH zmDYVeZxrDxH55Uk<6z9f{%O6B<igqdyr}kuV+WY<SPUHBsP4lioI&sZ(S*j)<uzVi zYZ<AS_wKGV9X%cS-T2}aZf=^m(V_EjPe*acR}}Jf*;KKKiILxoRZ;x?MR|Fe)IW%N zm6dBLn?V!*=9O0?Na9o53-B1<<Pd_`lNwn$Cc`IvRf*(&@l5LX!C122yF>Xsr16jB zS9EN>eqCINoqAWTS+R+FOmz4|50x-LRCCzT=ocu}!~0Oa*$090$$lPOZm4Mu<Z<NK z!7)>r@gK##K3b(lsKZ49jYSm6#9}8EMnVO9^w$BFQY3*2o0l=UQnwNtoA>xQ)$9q{ z2c05>XU?=*dD=XhNfAIkRg)!Dl_RSl=W=$AO?r6Q#6_`TgRJcAk52bRFEQsr)RHbD zb2^#;VU6Djt5K@Qx&js@%?#Zt#s{z(l)7BJzofwj6U#OI`Eurigqxe2vO?9?c5q!> zG^kBw@eYWHGDC+Gfg%<*jXBgC1$Vq1!fmOSR~1h86}=$CTlra*0*^%Y3H)z&zR(cP zse9es-&05tyXt2Ym@S_KCzAeoufM-iHhQ1oXg(kDo>M|X!i-M5yOTphN9Xj4*ziky zc%jVUgx1#9la{wjpb8$=E@{vMO%9qXFofyg3#rEIkR4>SDSVfJG|-C3pJLh8o0kka zZ`ol>r^?cN0u4I}le|%)kF9>^S@69Jq=A8f&HP;#*+3wnFE)y_e-8{;OVWz7N`q@s zjErMvL3!g-Hlm)QH0Y@J_eO&qCyr)^wvs$yRRZL}E+Yq-H1suYNzALbaHD~Qn>^-! z3pa^!%yFvMrtbIl@`uLBq!wpi0~}(8TW$}bwT;c!Uo8%*s4o2j<gOJxA3rk8R!A>T zA=tx2hOapU*-=U8;+PM}fCqJ?gryg=L7{YBY)(JbC%qoOnd!Gdc?)<$Zqz(8llx}E zX<orq<No~ytgCAan6%3SL|^#{L@kZJjka)X%W*Lj%CC5-LJka&LxYJ?lHeo9mhr-t z#sduzb7a#@FM}@buKX%)1HG@)AX+*q1e>|~{#$D3bj&*$B-e~7UabuHI3M(&l;#OO z;-KQa;!)~qr||e5Nx86|4+?UMm1;zUauzBIW60hn9j0cS?EPX+3-4V3OnW+pn(;{d zSH>aP_tIhK#QkNE@BvTfNZ}0~CfD5E-7h*-!F1!Sim2nWZV!(4_`K+(ur*UUgmY|U zs6)ZAq&UZe!auNI&4(WHm#r@wkx#jI3f@79FdZ50GcPG3$JG~v&;-YbFAaFHQnCK= zg8Qe|JCqXVmgvLNBbsdSU%$@i5#k{U6Cnhz13d`7q_`hXlo^xN3sF^9e`!VG9sK+l zOojF)B@AQ-8AsU-!bKW9?E4MoZfS{g=l$TIU4qgF)>EllI?Z4zOqqo7NS<@V**{;a zPZGG_TJ+7o3sN&n;EI!jzovc%mn2qOaf+WrD)lJ<inC`;<R8I10pEEf9M@^$<H7Z? zki-IcS>Hq8sP2|pvhQy*Cmxc3ks=8g)4wKQ$GlrCuT)pNvq!~0Y#t=!sWUx|*h;gS zRD)0xFWyD+yfQuxM*AY_Cpu5D%%%(ghn!BanWjLb=_E$Zs1tHVDX)POE?0R%ad7cU zh^+Zc>i)sox4Wk-Pj8M&Aa^$yxm>HiS9Rlat$u53t07Yx-Z%$Hb6?D>+yb*1CxKD# z`<>tqh)>>;f}Y-k$5Cv5tYIt;=ZSqixRRY*nBh%$r&GhJ&V3QLzqMrSV^H`~rh%;u z2>CbbHKUrDosH=JL3;h3T55g0?#FBK<NHoUknq>8@Cle-5%jF``BR6#SNvW4mY^aw z^zxx6X7KIrX~wn)7>{hqoeU%FmZmx_VEYIChDJ0ZGdW?L+-*5qsM^A@tW<>QRRt3> z4CII`CZp35Xx<}!jjOBJ0dG)h@_ar=c1!-@{{Bv?;R-TPp06$CNB+q>9dTb=v2hUJ zz@o`Ga0>-Si{KdEzuB-K+2IgS9Wk@lbHIH{=aLqSzT*x%-Xn+(M3#53?Pg2gZ>z9> z>FJ|Ad_Uci_6%&KMpT3)12r5}@`H?%j^ppi;d>hg;iTGJIDn;OBBz18TD6d#_di?1 z>8*X{)P9St(!19%8eF%yYKq?ft$A=rn#D6jT3X~Daqf@F<4zj$7eGpGrH3CzA^x|K z4E%4rCTBVh`+E0KA)ZJMq(ifqnLF0Lg%;Y_|3Sql?~A0kz}i70_=xyHqb1*IBO~!} z<qjg&<SWFQ`$0#Ak!S^ZNS<J+y|GYeYoa}VI}Ja1u=@;DupiPVJF$$3fk7`R((#NT z%R3H-^ZNmnJ7A5bu*S~w<f2?pRiYZpz%7>w{Pr=Fk43@tokXr{Vl=x7BcBa{5TOoP z!Dm-!Wc}nnzd&+4rSI?1NU4d08+xiO4c6+biYJiAX#{d7v$9gi;uCTMLU1s}gfpw@ z??9Y_3qC6#2ei>SC~)l3b1750W4N9F^8m1eoj7dl9(CXd5x%&%2cM_}m7n%<XBr&V zLsLIc=Wm9Rfvb>>ZftA}C8Myw&pniyovkc7Jj_~iO!3o2@Wv|``8OMgHy(dP(R%Zo zlK`?k*!OX0FN!ZKru6VyY>%=T?>`fYaGN7kIcpLWzXM&6)dCNva`sqxwk?!dWm(O3 zo;`nVzCA6pO&Rje_15DjDj3`r|ABl`^0@j8>Sx;1*uRzlhRuUhZ+``C0A2y!zn~|! z#3ta3fe4b1ZH())C_PwZ>dAQ)_jwS#0sixeiY8BUjSF84d#s{magm`VRBi?~@sf!- zb)pQ4(U;;20dm9}Z-RyM%XUk9mYi?mMz96TET7<iZBt4csYUd+MhN})-%y0<D#)SK zf^h)Y!9#I>3?Eq`vnp=CHY@<t=S%(H6S&pK*}QS8%6fVsnODlGPC0Tc1_U@mlc!8; zTN_&!J}x`lW_B#A(F5GSL)-d`cgppdGAR6hxP?mn5u02D!V4Btj(mBl24c3&={^T5 zT4@JiWy}r!d?){YaM>4~)<+SKzJKhI{nW$-$)Tr*Phkpt@BPD4)p1oUYNU!K@h?>@ z@pRkO)zy}nU$V00k`cF{i4c41xeD-hZpTo_ca3p+PjJ>)Vb07>hsp=*Xlb2FTC|sM zQh(nK$!LIXT}I+L(HZTvZfVWkBcWn|ycJ<zw6NXM4-KsX7eVeDnj%04A^yM5odb@f zL;1gdNB%2a9@&?2GbZIeUDAy|9vHVTiMV}XM?jp%zkoP*!d{rV5moQ~lEm8cR;!hj zc^sdPo}OIt0hsOtp87#!w*{xAHHXgQv><wZoPB-DjU^RyhqvEd;C6&xo;WFARFo^A zASDq{oH^n<(}O6^OyyggM@A_aw}3SCFVioB6f&XzzbF>@FIk+n#QL>FWNs1l^6yxH z+c+s<T-vAz0>Q@3f3>izzbve6dmB4!kN~%s3obLDej7~R_R`D`8rFMXn`?u0^NNel zAHg&|l==*h>BeU1<pszz=`^J%*VvON$m;PX5I-16$!NLlOyL1L^gbq*@Gp~5mI9Pb zEoGzp$5G%`nVN}9CQ=t<PTRJ`GW@-Xl;8c4yx$f>hVnS0$nr?K`B?aQ9E$mSV;iCI z8{s_k#W<*cM`{|Gb@bG}B7DVFmB<Gd8COWzBa}pLrHd_J$6)d^%j?d;Iw=j|ImZV4 znzx}SD*Bd+ak9(Z{0Q=Zw_uSuBxybix(D}+G4NAY^t?9yTFom(SPhSER3dH_e-4ee zA+nlP;RP8pHC!IQAE)8-%$Si-+zLu%0$qZC3B?LrLBO>^@)xMl6sHBlFpz4=qzDT6 z7O7H_z{~337jBkjA6mG$UoG<v3TaGN1Nvfd^O5*n?EAcfKuOj2v>XN`5AOMWUO=kP zgXetyHXtdZoJSaz|2)?&*w^s=?7)8v2_Yd&z?G!{LA@+K-Tlv%bmDkf`6kqRx~1@+ zmztxGNJjka<=`nFAK9<&g<Yd>;uQOj8*7>lzl;x}IqDFhNq)k2``IEfzJ<j^&&cr7 zc(WrTUrB~eenG+Os3SwZ4<O$;V#V%HhU`RYs?V=Gh>3HN!+K7Cn@Q~{l(eqk^un?C ze_PZGWH5(;`RZ>7jQkF)RuxCBxmYm;%<6D@{{8b(Qn(}2j4&<k|H8DaKF;j!?d8mv zprL9Jbcyfqe*vRX*gCu>5yOZKZ+zdJySjcjn$I`9%V^(=oeJ?mF*_o!-Hx>o7Q#A{ z`n1?#`2jo;SRA!9aa`H8jN_c5T>oKAa9iX33bv)@dtlr@_KK3^7%nXnfwW9VCLKx4 zk%PLw!de^<>hOg$ZdXqHAd7+aCsm^V{4eeYnS1u@b@J|cv{Bo*5GgzCc=}{XOmw!d zrYqZ3<g<Vr6c#>9AoJQxwZlmru`ixX*Y+pDh-}~tg^l%TSWGC1XzmNU;34EwEkU>o z>-e!j0`rA5C<`vB{$*X+h;^+Vqy{0_f1i|jEE=({lL;PN4ySwn<gELT3LgR)iPlM4 z6j5pQ^qYUnEm<yG@Wn+I7oSwhvX)7<{ke*<E6B<yLYHks07HZFPNkYzWC{%nD@}c< z(|2b-Lb_^BTk?@iLTEAf@C`zVDiQ*HsiP)=W5<ylV(!&*`t?PD_+d%5CE<VHAe1Db z{i2>o_OF$|ACKTFxWR$Y&0j=?(D8pQ{~-%<=mTKh$E&_~gPK%jxIsC;H|)<FX_m&- zxX!4w5dOwzW|wjg_?MnJ7V-1vF+j!#=u)I{o~QAI_qWdybSIvCTh~%ki^4vybn|(q zNy!CZOam{K&r*q0)`(a~w<$A&oKd?+u6Yu96g~i?X+FP937^1uy1K?p|Hok9^*B;O z>d4^A{+rnOZBLCNI6C&smPX=A7Uw^94*Vs;*Fm2enM2TJg@3CGv#48GT53b@oJ?Yx z2L>{VD_UCiqhU~dgRj!i#)ndFwfm-}vvYp#3XyG@EbDo-pdZW+WzSMU6(PX!hfJ&} zZhKxmR8t1m#|4?B?0f07tF38D_`m~P35Q`Ae|7`ZTL8vV%_$H5_ur6jIf5f_n1R5_ z5>Q2`mjCY1k$qm79e4plE=fOy=1u7^-v4~ypSST_si6M2Cr6tQEAzu2tc@c_<>;lB zX?t9wpGV6CGmd_wY*sbJxL*U2u$8+zN7-YXy`kkR!i-RO$_$K0;Ng^w_nkm(G$k?O zG!eQLIZb12fuu+tB|<1C^!FpaKuEYlSFwKwd7ufT5h%miE)l5_nauw86H~h3VA*v9 zmPP&>EX%YdBO`Ac8*@}FFTc#a?*=>++;MM6N{KWu<g%jPWfLU}uCJ45v`){^XWdrH z*c152z?&UnISUH`XI5yn44Vn8E&$Dg>j#B6#jv3w6|7hOT7(O1jJ<l%<0F3`4VbHg zOVYzUxOSh~;6m<y4o>Pb93G>xKwbR^Qv(@U=1FLh{$3@r=Z(bsao+>gNqK-}e^A;_ z#WPW7ntw?%L6&h%^y4+3lN>*AClXT9bccaR#Wz`byq)e|us9&R15#Q%zzbX=-gp*C zi{r~R!NA^2%jsWN4TsSbj}QFAT=oF$FG_03|1-OMfJ?z`UP(ln4o1%W^C4|;%V2}_ zEbz9{T`QV0e*V)U*xJzm`;mZ+Q$b-Zf8hz-Z!$9=4tngRoiOHP(^-&9SY5Xi2+SLr z(mwh`>F(Vppq(17$L>dnG0K^5ixH)z{$qsNZxj)V*jVAjsF9pyr}i`ev(huKq?lVp zb8(c+Oe#;Ig){tKIxZmy7zj9Q{2YK!zwhI}p17S8Y;6P0PVm>>!F$Gyd=lr|()h%i z{f|V4nNk(!4OGD!SbJEox>o<u0(1o&M7WjzpK|`mS`dt|s8~2VE30GIe9v-E&w?vc zR#U53A(#QS1MJV688(#7NW3mwRh^hM*_@avWKcy#EB!++9}}TEvOHQ<i2av{<LdqV zA%Z;S0Gkx$iszOT*3a;Hpmm7#uiywZh~o0sS}I8S;jiT;;(F28K$k&hfav1>V}2<7 zmpI;}6-GFi4h{uS{QFumYAQ{dnwn&yqsp=I2{b()G?oha>-P85k+A6<XJ$dp1xKf& zY^h~@VQ!3zpr_CeoQ);GpN6!$l<S{sLC}IIS9L+dYFvhovIzkzZo~II7YP%x7CkLK zKoEbe#hC`tn6LpyqVt=<{rx+>-ni1)O@!eiN5;baf7J}*ZVE^G$Cq8_R@poC$ZTg- zRhfcmsdBT#fLD^;Qt>q*zUF5h2HXa`^5vsq!+r52Gmn74*&UzPVV2q^CY<)?)WX`6 zGF2`&cKGOd;#I7!u|7a#JMX3MaUjnb3xz{p3O*0=1bRu)=Dt>{zbr{A6iK5e=O|D7 zy(DH05*!!c>A9Cr8D*;a52H-|fIC{e(3rQ->Xvx(XJq`*9j(21<t#|OPCeq${;nAL z`mgu1zY{dx<qpDcTC-pxd+X|b9+c%vTB+Z|ZO9(?jZ)g-z(fD2G#x@?p$L`bQ}_2( zMezP<&Tli<qdv~fUGZ!DM0ILx>LquB7k#%J_1Lp+X}t3kX*dh=vVgoA8#?j!lENtX zl6x{OQh%8hrLY=^Gma7bW0{m_WSQ~g4fl^$=v=D*`^TY^^$$I(&ooVk>ddyZrYDe+ zX;p~*`^Vr(16dr4@l561s$eWyQ{RPF@8G~d<(qq^la$(T&3it7W-YyX*10Nz2fo?+ zDRpdITv)^ia<(3!-xj*{4-P0A7^qAxbBy=UIIfIEnMj@UsCzs{=AAp23awq(XMi8h zB2j?^=xQ)c)%l@F!}rqJ+5y6Uc`#L0a34zjth)c$sm8;&U6k<LYdyRi_|H5xG9G7~ z)?_FZBc(?xDZHpY0_#&z$}NZmGR{}ZU#&E+e;qdSKQI;^q*;AzmHg3x4(bA~7-uq+ z{&^xw#VqTuvU<1KgTh7k>tSAJelzwjSa<|^Sw==Y94JWDOkj=~n-o1^fYNVEjg2xZ zHbi0>vjmKSgHR@q3uVLc6z&o;si}I8fBj`gs>oCze;qdKB|>W}_c3k}tZBo-#wy#; zj#bQRpt_PXMmbx{icc&ea<*?HqbpiZQAe&Sb5B)gKq=iNudv=S$gtKq&JZhIAfOxV zcK8Wf7e^?4jCY1fYs{8J%w>roZsN-n&5F*-;VqGwmh#qxl3n&zSB^bVDpbupt9!b% zjL#n}&{mseXSEowQ)WJ7UX@y<%SH2q9N&#Hb|!|#WFb09Od_mK;jX2l^A!&HCd-Q= z=lILZ!{gOk+i&=}n8~T0X={@`b0!P!Err`!Pt}`d8J4+Moi(b~K7Z}~*|no?Z{DUM zui+xDBmMQtmflGzm%m^ZxE)GioZAPwgv`*EpE$Aw<!EiKOTjc>?(nR{NaAv9>zzh3 zMG;b(zg;T8H)hh@pWE0y($mMo<PKfSOiy2k#52{8%RD-5xY*(|C>6~cE)B9>mAx^? zN#~pU&<c#w46!Fo79Qb?tONuyno8@~<b5=9tg2S&#WTWB7w^asM?KeV_w<99-M^0q z&7i<?&_bu>^q+$0Uk*N26;5G9fx^Ob!YdX%J1q&zoAXO8ov+1vB>B!qwAjWa$A#~D zYYx9&6xC*rXE&oGXv(a9F8$@)@z%1o;wZI2lXLS^gNeI4ay3rryG!LV#8%S=C9QUQ z&-H?TlC?I!$z-?5wz9UABFbJKx&47Ts6!_w5Rcm~^EnGk(US|&ZGtz#)%4EAxanx- z+*IGCQMlc@RZ|~6J{j14jCmm-{>9mmTK)6IXB)?eC`81zqZW2%ZZ3BhcUg^&pPyx7 z3=2!+jZ<7}Yc#D-Q8{phBS=k+x;zlCAQNt#z??A1w4c=}n{85a9_jJ*eSV}|e7U=T zsa4NHi>_Vu{}A@pQC08T7wD!-x<fjoyQN#YrCYj@j!k!`bc0Ga(w)+RbeACA`Mz-O z{f&FyePg`;4rd?(-RrZ~oGa#(*J3bJQC4RJ%w2#A#P}K65jdJpExuB)l%0`DCXwyM z!s@kTc%9f&cKDguG$Z_XLnck^WhMrV2IQcWUzSk9(VD9p@#)FH^^f;wC*cHkTCIjs z`9I&pyy(Z`=+LSEE6;%-Y7wI3skbA01XQ$?nQ&dW02R?@zyt9oYvx=>&QLsD<)=A* zhDk+5#Ss8v9|+1MX}7j3XltkEC$TlZ^a{c#{j=MB@!!6U)jb00jf#N*?n?x?{3`+~ z6h^)OGXkh578jW*OaSaNm$noDjJ&a;_|Ra0@b!lL)+Hq+WoBbD>S?DB+|_adqBQ;9 z`b)$Qcj#m<Dbo0begE$LQn>~lay4>=+c=cbay8PG_{hewLgOPAT!l1}IV9(!oBrLp zsJ&W(52qr2gv&?vsL3wxgwlhl(h`5=T+`!e``T;{*FffaEllp}Vnle70du6Vf|ZQZ zYT-AR0n<n4a&ME7pJ%99*f0j!a%;(*%D3mwmwqGD_J0#A)QmFwK8+BV%?mx|oIS79 zcUs5wlW_AlDGJ_<aCzK5j&F?|v3~h-7{9{mBjDwzqplj+dw?;;W*=VGbVxAoz6{&! ztzXt8g5}iUZ@%sKG|#-1IJ8mAsHV*xPE|uGNcDAIHD~<n58v1Fin>upLIMKH$>xtK z6(6arnOekg&VxUevawXiz9w%AAbC@n{>YFpbX5t7eVfF5^*4U}`KgHLFF``}ej#Nd z?U$@9!OLA<{GTc6(q?ACNkz|PrOEv<5;ZQ{bimzFGsE8~+0X9nM;|oDzmo0qJp>;v z-ZvleI*2Qv$PKCi>5iSemc8WZeWkkE2lZeAM!!dMdC>)?k972!<q663DTCd`Rw9o{ z6@{ZV82(9emqbZEEp9{R_Z<nCVw-HNeB>sHOoD+xRO{(5hu_MY0b9&9-t!VpM%K|m z((7qzO2z<zYJWv_0f2TGnd~23)(kGt;XX-9{Apnw_uNQpgQQpu*?*&qmx@R3k0~HF zwJb!3T%SBOi;)@ul$*ehG{$@x!oY?88`Rxr9LvNe4S;mlwyD$6xvN>IEQbNhs9-QI z<Uc2q^gv2s4kh%GQ&%q<J+Lr=DzC=oV0Pd})xU*NJO4x2A2umsR7S`9nxTM+_@CUD z+AI#hLQ*9qpz#>6VRnLniAO|~^fJ>2gzC2dLl-tSHgaH%A;mxA>8lXn-KPR9P1<H^ zuya2un=}GTmzLJni7-ewgRLItg#`tHyR1|d=6NN6_;CVr$Aij?yu^#GPkX!I{_%0+ ztUU1O#`Zt|1Y9F^4$J@x+Zw=a@j&XirM^D-J|mbZI}GTZ-U0#(TfpTb+xz!6K4ZVC z9FJmw%TS_A=ZYN1^2H^R^5j_?VApG=9G=qz5k4pjSb8_AbWl5!{jl00K%*%1oN~ys zL?Ooh$i{>9rX>7Ji0hZR-%KOzj<N4=mZNLR=;%0y;&yLR&$^ryN6wFZnL_XSseTE) z3v^yR(iP>9x6Q)PacEw0SPeW2{Jv0F6I9Le85WZLnfiIv?HSjDS8H%pK$nU83H7<) zAyodHTs=VTn&xcIwsNS2<Tz1mS&VIdj``6bqX`D0*TzINozA+j!t9H#=d{3CXF0B{ z6j`bWYXb4p_lFV1XVlw~p#AVBe|4I_e=o_mS-&cbCL*O&#QjPwPqnW2@e$|O5B$(} zV4D8QVUt%o&SHfqV8ER>nl<--JBAH}9$JX@k5bpeWxjk+7_m8);f)_1cWACDP}Qab zEPq;6tPTjNR;oX0=r)LO>A8JjupYHP1jW%iz}K=(Uw&=9?k7AuGM6g){%l<Uys)Uu zy_ERY3)SSh&kfRM9$&)r4LB(ax4V;Tt`_9aqUlql3GGZ_Dr|jwXcP}q{^s~nQP4gc zII!sG(_%+Hi`eO-ZxiBZ=UC$NpM@XZ?6Kc^Ka22A@iP<z2C{LmQbE!DFe9%V&xtXh z|C@yno}4Q4#TWMApeV0d6-U2DxxL!5O?Qb%(uajg&%TwSg*q`|=sQP;q6BLUQ)<LF zx&s(%b@g8=syZ~EKg&<?RjQ|3n@D&?OR%z;#q7OyC6xjF^|*THhBR!MpT(2_z}vei zbh*r4*lM>?&X`em)>(>6!1#Za3x8pBybQTv+)zbZ!#xYYN_)X-1XNWf=cf>??K+06 zLEH-aEhzrYC*UeuA$zp#lsd|A;bndivpR!dVmpKYJV9U&9}_b%<yK-wTUNE8cN1Az zHp5$1`~~>AD1}G#)|CJZ<>Q-IEd8%Ts4qmaKr2HHa5e-a&t|r)0co!n^@fA-o={XB zSU=weB&H_em+N9pUB}=uoyIXX_`)x;!gHf9CsJNlht;!D=}*}CKt&mPQLg}&zl-Ya zX53>^NFd6WfxYh+krb!3PKc4ZQ{diY(0<~L6thl)+>1XOV3Sj0<pvz-hm4IXBV+zz znCva?XjIYCqJ5DjpZsZj>b`WB2<uP!(zJtDCxsn{R-rN7wfAEl_iNHbxg?5DgkXIf zNmBgwLt<g$a;o}M;?h&#@$e2({$>S>*B<lP4T*jt>a(wC49P+KX)E_nFMZYqxPBe& zA~qlrSKT|_yUZ2UkVf4f+tNZ;iLH`s``r!sB`YHRaLqRbr6uIW=EM(Vdq@fLPthdm z2~3%QKa12fOYEpO40eAeG@WK_9AdO4Kn~;U*`-Z@1@Ah&ODt|c`TDgY;bW^FA9IJy z(ft+omWuB-9hheABxDPi>eHUwYp&~|Di7KGIk^WUJ9W+`+bNt{?WK!<conut_ji~@ z|D4j*VLshK`O<jk)V#C9=rrPVB$T7=g*jDg^8Mkql7IVLjHb}dLhkOzz3I2yx%Pc^ z1M1UaoUawJviUy#3|cKB?T!bZn%U5k6@zI#u7-4;&pJlz4OSTqwk;>VFmBe!62}8& zw?%PQVywVfTk^V%cJb*f<YDosU`jxcUQADqO)CkIRwYoMT3R8mk7k@|Hmxty@ypWn z`%CwQ1QDsYW8|3RHukI~+kv4h!VGsPcnDuctLS^&w;$SHE55}qgusS#*L@hsFRF36 zG;_NB_Gx`TmUee;uYVut4(9{+*CN&yS4sKUj~%tNoS@9){eAp>e7xl9@Ip0Bjlu5Q zpJ^ZhHC567?g5gbK|@+Sxm~z-$WfaYRuro&r2nD9`5x!wgBg(y@_h@)9*C6Uu#Qpz zx2nu0CQo)7h<xk)A)c0YJG6!q2jbo@VgEq=FIer1O1O7=;aOK(t7p8u?H`l4)(y0! zU#L7M5hph<l1tpsFACRJX6FD*$hSgpe8|?afdeZ6_852+2+jvj;E;q7vk?$1!4Y8L zgw}m=g9rQ&o%V}TL&osR_Jku@@}8dR37%f;z|H{e+#-1PY@y(aWI(J^rlRA?Giq2@ z&CtO?N$_S3>cxJ-47i$Qin*x#p3bWeC_+2kZl~(x+@_@9Ji{_iN<Tl0KkKq(2Y=8y zm;qF501eXF*r&Godi9IUHlTKm{R)O0Z`uW}TQek#sQp=aFS;wYG?@>RD(_-PhFG1m z$H)4$i>Q<tvox2;gdT2}ojlT3OZZOm9&S6H6tbV|6n`jQVGVV5=V0sonxgxB8o705 z57ZU6RqerkTfZt#A~R7G0GVwIJz9lkGL#~S0fJqLQ}<mYTXTM%Qi6hPq|-iuY#)`1 ziDi%0s!T^9wPvfexx9A=&K|87d*8{bzX7ppG&y!TX;qzB&0qZW+Om6-N92vTm%#km ze8=tZOJ@EY!;IjsR(ZI5C*^VX>+RWfVh@`D&pRlHstHE>zi|yI>P|nGR})EmovS&5 zdI*R0!b4q0GREICGW%8;#2_mSO>|a`CS{5Rb2K)}E>A@}9YCQDHfnM~8`d}V5R9#O zZB>&zT%WCmAnn3ywrmRx``uk<n0+3aGi0UXp$cp<NVKhNrQv^iO3qZ8{`q7yg8KEM zTy!H`GW^%9>_J4d)3nd^knIRz?~)rPQGCZkXwGoQVI{4=0=YQLuLUODz4o1tZ5+%^ z(kYeAauvFM^}5X*b}642A?b_X3B1mEW`GUa_LLY3X+qE+h?m&U0>}iu3=q&Ierm<V zinkdJ+;g%ftr}L}jo+8K%B9A<ChLFq{9hWH!kjxdGj(r}V`bf*OOw6T%XAmg4*+^A z3aHu@wwB2a@8VSe%jD&p7#B7J|1{$EjP3{w05k@49kVZ+FFr&5YeX!JIdLrT_!OyP zZ51U;jvlKryroSJX-C|8hEz&LhcT@Uv<VoXUmrmjFjiHXp;Kt@1BfOawe8MXVCTt6 z)r;c#*_15vP*)(_Bi>Xh>(0*%8n-3K(3eFv3<UkPEhIG(H~@2{0&3x6FV65UK9{i+ zUL@Zd8Z-b$Gvb#sEHed3{v2Q(r_*v;i1Y4^wkl>PAowQ#vM6Qplc>i6lxCf^x2tgQ zdEP7)xD(SQN5Wx%U#KC^MteEu7VnFarZXWCpnBeRvmef8?ntVn{>l2p-}t`PjB(0W zq@=9<k?hvZO^;mO=$pYG`uW?IXYvlO>#&DM2RD!$!x?yyO>xJ-y?p6(Q0(llSunfK zAVv2H3Ex%3!!F5#(AjgX8}XX5nhw$PvE9O_Y5umr02dKqadb6494zsO_k7BpsW_ep zSxTbuC{xfd5HRTCXmR9im>;C)FWQGvuH{8ZMM?Qv*lXEq%~yA89gdrKAI9dFd7Y0R zt_%H-uUj%<K+d@W^>1~qo`R836XUT{gVe$ip9Ks~JY!W#Rr07;4wkS<I(F!yub~h? z?QDuneZ#r#r*q1+w=_33j*f#`G@1l3^ajlH7b3S<dk@Lp2O=r)MY`Qj$o!6btMC>D z8*%S6@VQZ$-K{?4o_Xcuo}1g}<<~OQp629UG+rC`H1zQJ$VR@it&zT`f>{!1Tf@5G z`&0jjp|{G2gnC;d*@|BL9I|h~)G34MClId(4@$>y-0hUK;k{r!>itA2D8rEN$4oCk zwIm?0zGVRMi_j0uRZfr>vBebgR~B?~D@VYQeWJ?WGZ~K#T^8P-;}g>GtBsOj@7+qQ z%vqEGgzQ~jw+0!6@YSI$SAn6JH3tNB0Xl3Tx@REqJg+BZ$)DU2*59K-+G+4;5ahzp zVIXu;NOAB#UlhuA&MU(xx|#Fv@^y-AgOWcW1gjuyPa9+^uidiK)t%BUdyjOT<JrEi zsc~_F?>oeUeDKcISRAOlOhXQa#d!IFhhf65t|-QJjx211(5`1HblC53_E6#AWFFg_ zvP`A)jcVrIiv*?hn^UzpX5eHPO}3c-`3*kGg6~MJ5vIJ!Pn;lU;FLd02ZJcC8UX}F z#Oow}!Ng7ue#_?~ygyYWar}Mh?db6Ei?VjL?IM?Q=<tjj;B~!ze9UYm6zp^a{QuuS zKGQ2?@lnkrXq5Ma4YP`Z0qZEKuPQ}lHB=X-UYH>7?8?+sT;Mo26p+RORdzi6n7FYN z_=1^xVDp9Mqr$q`YJb=Efy3G!@6y=Lah_XV{1>b~<qAm&j(uL}oYcf8;@YPvK88ha zqEKduNVUQ4nl~8{nj)73Ik^VUjmnaO+vfOhM9hoU&-(X2R$Y=CyW^H6mVk0k`xO{g z&)~*Z6(tk6AhcSYvFe1gnLasu2dCR}^-3AIc6#-xH#l}Lsmp*S7*tUFi<DYjFuetH zF;~vntr3yQA<N*a_5;t5r*G*s!Yr%G;qeL_KRvRQ-ET4_Y+}SyCLjB{p*DS$&C|YL z!JDdp<Y?F!*!_V(Q_b!zaHTIJB5I5nrI_Qj>8xyROTV_Wj$)?7$nnUB*Y-_T++lv9 zN`g}ePFZMNeDF*)%=@Z}a+i2m8}M=NyUdw2I<I`*a24fJnP%hJ9q16je*X|jmaFgO zaxe>7Pjyaaxe5s$p9>b*3{4P8Rz4^|*;}efX!U&)^vn%W-pTqJo4TYB!ZDaVjl8P* zni==T#AoaT_z=Pr7rdTZdzXV#+rp`~!ZDLUkYcy4k%yT76QW^YXatsf#h4E;nOSNM zj;=ukflx$FFrZ{5whccRI}3Wm`Lg_IO$2H^YNnE6b5b%g8S2S2+>nwM!q(Qk#`e(y ziGtUdKck9EPY($y#JYw3C~bOlL~!Hov7kPRRdxdX+on~8gwosBqVN4nAX5GFP{3^% zxq^fG?23-(@<61vBP9A*BLFs$Mu56T0@{<8;4EN7mZw^xaB_9kfCKf@Tn5Z*;sZE* z1cioD(8}<6h3oxr=>k-{-<X@5r=X9R+yLH}FCGGGqhHt)kV{?vE;Jj*B-5!Uh`+gF z0)1qWksEtCv*ob)9p@V*jq!`#mu8<&=Yf|T6+-+W$iwK~@v>j6H;pncp_9#4|AcnO z|3gk}{~+pzuJCOe$2a5Ry;o>KZzFmy2d0`U%zDPwwqrLS>^CFh1x}4fGrn-l8bij; zntXh=Z9*Vhxn{!zarAAhmdjSJTR<PZj|kO=55l2I&j_c6Gk}J^DG;rV*}J{XfXA>N zr34Mqtrwr!uLt7jO_rG9mumei>=Ix51^pXHnkjn^*y_nm2wS9gjb>>bn?(5(n{lMr z>m9qf=}WC^Z`E)~E{|fF)XkiZ=dr@4t#OS1o(_b~P|J$n9QRqxx!-k{dlI@FuR<J8 zP>6Q>5aB5pIhLS3r1w=0)-%9><Q<#Z%^A6#sm*|&C@YUJp3C-bzL5RyvmLnRAq58R zvjQYIScJo(6@5?n4fcvvpn~42h=k<|{1))x1u-IgoI=IkVMYKgutnmOJ$kF&lb{O+ z65kO)y@7>#BWY40oI7LzO@W_APk3|q%<%C`@&9JYFz^<_JFI3YH>YP$@{<x3x;&My zYip$efqyzS{KmzfvEJE?M{wy=8K5V;0ed*m&`CyS617o2HuhSYn@d68-RH58Daam9 z68)2Y<GB2PH$j_z`Xs{-pR$6BbP<?{`FF6USF%S7&9L_LgAW=~6-N>~5Q&Z<32)F} zUj$ejL5YNNvNwJ)pIX=_u5{XDZj6eW+8B@>_zeibZ}9>z5*ZN5uGLZI&cnn*NB0MA zKQ{p<9Z}|=L!Q3AzI%WbDFKH?XSe_@UbE|80su}#IPZ?hbm`T41J~rNfK35?5`)%M z*=YlTI3$=k;ri@s7<=PkuON19XXn%RnTa24q{4IaY|{B<ViOcQCv2mOzQnBY)nT~e z(4(%x@(~!Nlc&}f&)*<E%#R^o(VOda<yH0lcBI9QKRtVP?94nnUjJTspKon@_he?k zVDm|Q{hG?T>Zwz{7m3`Ef&@aiC(Gw|ote<p(_4Qzk>Axr^v@>pD1Ay5pWfE({UR)v zjZi`lga&Eh`gc`w&}rVG>9yO&axZHsmLQ1dDnZ)Z<$6Q8JVivv)IldG8r$x{61AOx z9NG52$O%#@ee2)F<Ep}^<BLe~j*r1-uIP{YHQ=zL0Qtrkn}&%kA^-~O1fDJy!xqlS zxW#FrDqS{k9&@le8d;Ua{-DFXY^xExMFlFAnj(pGI;L7y7?iZqhV{D0&&dnY+_x%S z_`!eI@C}k=@=g{KT=^kdWD~}34$)%53-6A*P*SSSj6rpPVLud6Oau~)!4QWl0Xpw} zx`3sKf)zVjMV5q;ivs0_Pd=JFF>5|DD?*)gysd#oh#UELnf{NOZOG+M1E-L^l0Ek5 z29tLG3$X~2j*8-;Bq#wL!t|*^P57%C4jKWy?gMk<00Sw<co;g%vmFP4^ZgW@a(FY7 zMy1-Qjix0jI!mbVhYxfZiK;*G=`vXTpV}Q9<A*9MhN$VW;9tsfrz><#tutCd^vE)9 zRcfkaK}b$)V_T4{;{q6z5v}<r&?b&l8v{s|=>JZZn815mp$Bj527)d{yp^ajW-)j? z&L{zG<k-<sIcxdwPrg7YX9a}zlW0{XIRuA(qJPRsM~~;><R|_2F2G`|M=gV>N$-H? z^%0}>x^%flWK|VQrhu0Q4lg}J7|{91eaW|%m)K@el%SilIu=o|SSX4F5cv{c_?<pH zK<~XI%o+pKL`TO1^0E~dL^m^XV<Ua0Hs!0V*pohR<w*?I#kO&*;Yh---`;}rttX~z zbo`~TE6=%bu)fOZR$qE4D_CmKFQ?VKaeYy=yPywENkJA<8-K2femh(cSFFT_#v4SV zIVO)fucToK!oO30qptH=s&clnM^<hn0hHS}&!T1#>??L(pl2B=KOs(jk_5^SeCLOe z)sYX0LE(SsH)lANK+!~!9ER0Zkr6~@G}9!udC%2OKoWH&(p@&ROo#8@Bmg~qEg)>_ zz2H}`(xlV-DMfereeSnuWXuqspt&S2XR#+Fn#2CWO3jV3aKFJCbU?5+AP@=H_#hao zx2SNWRT9hLvva8GJgf!xnvOTqut5S)hMglOa%uhN{&<Hx^#}=5J*^(?G>MxWg27ae zN=6^0K}z|3-9#Ua^l#;v&T~m9Y77mbaq-B6RkPn2KIQC&gWCB%-g~Gi<;&1ChW{sw ze2vdfXzttiiAzFiTaSwV@2iD^F%Xk6=p?dFNX}QC2DV~-f<+eGIVs3Ef>a?#+hR-c z7%x1bN?iMFMn`(yW@ld<up5t|-%7p!)G8SNtr-qVs-oY<mKo(T0Zm+D_P9v3FF10L z>4T`62vDuR0lF>!ybnV$AXUzz2{JOu0{=0@R-S-NM?nF#zP`@meN$y>@^1KaZOxD+ z!0=)tMOZ^aqrzef@ZN3Wv@x*;gtGe5SWT2#-5m+Nx*yL*@4W%BwHk~&Z)_?_=?cr~ z;-$d4DRKl54ssRX?6$Yk)>78T6Im=w!9WHi!xW_g-Um$Su0DC^Dw}hU_rn5&7WT~C zSoXg$vS3}sR9PcIR;Wgst;sj*P9ben@3>cpa^_AIMpp0^zG8%foU|dR3!elrdv>3K z2LjrkshB`%cc>_3+Og`P$D%asrzF<HBZUmXa~U16%wC^`-&U7?1_F$eHn>8L{>_&O z5=N*pHnGHT&`TL^0?IIUOcVT`gY}5o=)*n^o9c8N-R7~MPc`@ChF=eBslTKyt@{`5 zkb~bsUR+%Ia#B{>lFBNyQ(<3~n6XbvCkb*;k0N6qsfa=>^b~tfVN|QGCggkJPo7fR zLAeN)G~F!rBeV~g@syj_dPXqc!8*d0NmlIen}T1VQI&sjAb`>{Pzoa9yam4H--e;@ zU8N^BPg@Y7SEap#S6+_r4<e}jcCAd<MFnqV=s0v}j)2=^$uvVYwkOtZKgC|i9M}Ga z%M1+~$p1}yglO(guFQ&a$KiuH7)m=4kF0*I8-C4xH{uVm_*Z|R{OV4v0^cv(CR|;` zRYpc)LOwnozCXYce92^B_|_<48{PM8?4Mnsq|04Jz&WwYy|Vs@vf!Wn^p_&tJ0TiS zrKtIIuipz~vy&(wfvF*jgZW=d@IV5Cmed+R&4D<9-PqVDW2f|=2Y_6Eu1Mh8#s)cr zecy4u#`iv8&Vr7PPUdUQcoByVVKY-2A6(nV$w)>9VPs^)<8xQnM1<Ly0m!%nphH|< zTwob;o~Hm$@|-96oiZfQFqQ%W?`MWEfK@v`+yq<^mYN2U#rZGt?~nriIAK_753*@{ zqXrVu7|}wKyY~DA;oom-p$WgZV=Rj88a?(gbfsWzit?_gpW3wu;?3qk?w#7$u@&B1 zqlAp|M1(?y=|0SvARvJxpCf*b_;$`ZSG!WX7}@>2EpTb`wBXMb(hgg<pnv%cn^I#& znC6I0iZ8moHY~NuW5VCSD}sOeinY7Vpd#eZXrG!v8=u~{e*O4-uh)y@`_nX|Y_Dx3 z|BsXy>-l#lhq`E_o$_=i_;uAe<KueMmS!erMlGoN`%ps{WVmy@$#?AVKw}#~s%0(U zkNzv02{<5*rQTyCvFddj#0{0HpKJ63WQa{antPg^oV|HV;j|-mCSfo@raHEgsS)la z<Iqu0of&`C2o#||qE{7?(Ahx1Ab@H%n0|DPb2mo?N=hCxU!%%-;MOTp5+gm;?m?1; z{zm~7{x<{mgG7{EVb<JaK0a=K&J})|Z#NGB&>YBM8_Tx!EQd{d9Uo!`4mIDnZg6OF z5eDazeK`8Fvup8Ylxw^LV!{i7HiYmmJGANT@85lT7uVJb3F)2Z>e`U%K&t?OQ1!}s zJ9{Toq-XXWsOSj%5wSDR)b7n5^97}6_lwqEf2T~eT){BRDAOSLEr4u<A&R_#9?KSp zlu4ux@51i#F4eB5qn1kpMN3lrPIuDX1DwSTp-0)+*|+gl{EP|SyR!iDb=3Pju_Qt< z5|KFb67Bja@9MRq(J3Tz_1ir22dRL68QGqj(@o_LUmw>*i@IeDfbX`*w@E{dcP{HW zvv~c)7e~B^YmpXt?<gCMA>Yya93Uj(!)nV*lhr*o(fskg@}bi9=U3D=b54!}qNuL& z5B`+QqhwcSti_S^EUXXE72>@VIw#|xa756`9s2j#hp-$bnuX}WC^Pk)Xk&Xdsp%E5 zQ!|fbGwP;v2}p2e-00T{h|OYGDHCpm(Rg%z%Fbfc;Q_JT%EKxpaeOE8C-|(edcWVX zHwL~0c<7yTI&TIt$IJ{j?a#aEDK=TUX?*N8H~el%og_dVUjin7ZTV@$J;%aeV)$i6 zC`T%gedx@Vu7LzsdsW$tp&WK(i$5yaInu4^*AQ4;riaCU?mOAEqXbzDnTJdkA*LfE zbWKRsaoZyZrJE4H@>PaJP_9R-gupk$f)Sp(oPO?WAuN|wUt(yi&r^fE|3LVErwSmL z!1C~0Lr(&jpwau(=am62#fRhIr)ksSzf!=520%PwajG3A^)?mO4Dk<<!?D6vo_rV> z3EQ~8Wy#O3F2JF1S;f^EL8`g0Ne>C3u&|JfmA9{Zek!AQvUGh{tfQN{Z8Ut<gp07! z1*HCPo0J&3c(mMQ5FYNJ@=i&yT*S6MqbwNo6*WQiQib95r#!(ck@S-2)Yuq6m!j5G zdPlM@07j!mW0}0hF41l|bn4%N;^NSnT3XKAQ;2YRKL5cgR>-0on9wJf26V;)0c9a+ zCsx8YumF$U1Z3diGmpJ_ANp_&a)F~l_p8k)@A3<)7Jw6G^Pe}X)_#(|!n6!oMt_Mb z+2$}PF0#ixqNp_IH>fb)gL=Kf*-gcgr><fw6>efl7=g8S_ctc}@S_6q0DGU#yDp1V z3_+2~;d5~vt6}3Lzulr^xLv0lTb&g(PaFsBBY-~TtcIP)-#ea!JZ5%Pm$jdnH}_O} zd(0fM;y_t9Ynu<J&jX((a$AWrvXx&F)8d=965rq-7a7}`EcM(JFRXye<!N~3n|RbI z^=5Cr%*WdU#@_iY&!H<hAcAzF`&t#qy>{picxFS&Ix9x5=tYZ-#6h8QJ*C49m6)_% zakq0sZ!#R!PVUJQut2T#1nfA(-Qo9^Dhj-)?euFnO0ZP?ioK(se7SJss33%8F>PGF zhG=YxqUoy2b-){2a&Ra{LBC-CNPxWbrRgF03|qT@!3}@V3X3cLhur-qlsZfU-vZUJ zWqj$1y%LTy9+dlbE`}vfYM@`FWCZ6ED`92620umT_*}pK#M$eoO-_mp$-3ZfYPMgv zQSr+c7Us5Resa=^-xLgwMcMgjGZ`gU<uAMhDIYuLxxKDfMAwOn3~n&wvBi?ISh;_J zsD8(ptWTU$vc$nFlHU>mdL4j9bAA;g1c35KR#!Av8|_J6j8x|EhEo_L0Z`P{)6-MI zTZQ}t<Rd&@C(1?38obp?1ED&*Wo@=<Q*(0@V7C8aNoDGdGdu~{TN|%+`a3u{pji#! z&H}B<k%`cdko*tHbSd)1TCQSXKn#ug*9Pjvm1h*;Db&-i5o>0D!jtUM_ZH|oT-WRU znSB~;j$R%tA%A~$-)y;MF>+D$g#Q4?vN)}CTPP5K4{N^1_HQp+R~s)oinDZJ+0~{d zL4)L_ADv-R{@y_Ot;jdxvsyA8zNwr_Rw}WF51FZow<1CSIce}orec&X)NxZImm(pX zYYfG;p&3rYZL{Z{YhJ0mHI8Oid|-Z<(+O)-J?(fH-SeSai@w@q*;N&Cq>Su+&fe*& zAI)&Lz7c=JNFOsJ{S#?=+u==)GuGtkkTm*@4-+p$XYDzw?>4?}m|U`UI?S0SM6@Ev zTPLP7N<rPQB})$jR7brIJEwhPIt6{<o0Tn69YXPwG4mCWrvQMw7+ca9%qGteEb;HM z^?zO5wIq<&WJkcrbU%H`5UEKeDR8=iVC$W)#{#rq;V-U%uEMffLu8O@+-sPiz_UO$ zvo7$wU&LMOEDe)yYO!A1+@>`~9pa?Lcx^kxVX-sF=lJ<LkaSp>AbnoZ``WEjK`^7z z(j~G6W#v6lC>VzN%{1}l7a+BNLE8KsSXnGUiopnBFFzyq7kYlctTi8}<^WmEl==@P z(uftQprf+GzxTX=e<5j~J{98^Z1b9qrm<Q8@Mtg4#EHYC|4pWlpZ-Pr!f+Q5OeQm> z$`ckg6yJp*!6|0?<r*flWm@kvD>BVsEmHK*UQ?M>k51Ki?nMK`LSP=Erg7rZy< zy7V`EbUS|F8lv|{?(yQIJ+{%6D%=ti>B4FjV`_C$I*vQ6K&b{upYwE0)etzTs)Nv+ zs{1|0E*K`@M1>C$tmPMC^fW8vupyG-k!v~Q44t{A_Z4LYnK&{V+lG`+2B=#ag)6m! z?U@_|%XCw>W(r*k{;XU+N`feSer9mNWD97{XwBw))S)?DCPm2YE#iYz107s~Z?ePk zKHIix8nwm>?S_(Gz=s#^riNSBbM3LUGcPRcaMi$n|3#E~5ys1ctIG8l+1rbiaUrRK z0UCY(9)Gh@w<kJ{!+CAt6c0vsd1-CJom4cCFgHzJIu4)#zoVJ#P8>XuZFl9wcQ<A~ z<~NJ4NkFDthy^=RLJ0GJWAgI28IMu<koVfA|1StMO5Hi2B?!<lLLub31h58SY!pLQ zvPL26^1ukx(b2_p-_#(Ehs;aNp`rRGC8<$TFAgvt(<XnwLOm;iE9g`8tvLyLh0it8 z&3l2;LqlCjBdKwpI9jJPnUfJe&k)SSH=&VUisUoPIK{n&%m*N3!r2(Nl7fKpM44wg zH24dUi8UFFBV&sgyi?+H*#jRfx9HeQ@8DoyV6fQyX6fzg8+t#L--CpNBnGq&B8e>u z(1(VG;1LkI0NH1oEq|96`57A~dJ+<nt}JRGufzj01KAV?5n*BQwxmUI8N$TphO%k; z_%#)P6>-QdyTBlL6X7Mn2j?%lfOi*{SuK7Kl$s+&7c_1D=3vCqvG4FCDc$4Q66oGj zfr$2u>D<GiGBlyZhz}g=-0ZQg_I>8fY$lGjQEt7aA_uv<p{6i@jP$v_ARn*(z3d!f zA6;z0&w`f&gLnu)X(yETB`R(VnR5{8JdJX&+j3xelB99}F@vFIa&h9tzn}5gZ3vkN zWx`qvi)-jViw`C-Ss1eC@ls%1zmdvG=8mU|IMAw|sfNrhr!n^J_;G?8DQkQs=7)K| z!`u@)U`GbqfO(S?0?I{4@RBs?jzx78%I<w0r9XI&E<A88Wh8T)e!^yt5n3P(n$S*@ z#5G8Iw}>#kTL;dm@3#;{e<$3T;9JT9rUXfw{cm=8MK~YD!Cd-`-I9qPF$M>R12i%^ zol-bL`T6<D-hu5XWZAv8IMIP`?7V_Dt~(v9!R*qtS9EiCZ(1bg^B^UJwBgbRV2S*K z#M{A@(Ccbuu2~zB<)jZYs@6(#zuux?@I%Y^#LZh4`~OqNl;DAaQ_2tq-hP2CnQwpA zMG1R*zlTL7jw&pq9C<V7J_~TLiBe?>d?^b(3w(ThJWeYta&mHjk|oZIh=`;K`3Wv9 z^<D=WYnS6}4#Y~Cnik4goRh#(K=L^6$XRf73u*!Vx!LUoqn;2ve%G?kk`@g%FEL`H zN}tvFgxm*q^jphACUHqcVbH`nAPhO-63zMbp{IH1xu=)?%an+jn4)v*Y8Q8;RDN^` zau(X(DJ|(%M}h%Ap(wrkF>(bpuOL7{akMEYr$k=lM#7WXNp*t>-r@rPhwn7PF@i^C zC^V>9#sGp|a^QnIw>yU<2U6~Lgt7hMIZ~iSlmnU7kzg+n#>ch^!$8su?WY$jnNV7h zWuy3WZ5{5J0IJGVO#uE@{fXm@-v|%a6B3uCsMFMoDE~}&Q-?@jZ`a6!-RPJs5-|XO zY|q}NCzI;laXTAlh|AYcRs_Vddm{a2UU<XrQ_`%n7?#8NnZM3GTF~crP&8MtWobZX zQlrz0?^o{ED7POm{b{q5--lroYvQF|qr?@6672u~D4FP|A*bjOMA5pvy%jESHIfMn z`S(O;kRo^5j6$0b&Wq=9V=Y(oG#B*F##=hjN>T7%^Ou~~NX`U?K#1B3T}c-OE^AzT zvd+5-yVCEjfgi|o;%DHh71-tfLEiq5K#1f!kwT`tbRC^sIT8gR0=vKf?O6kie-3FD zhob7O=ep<S<`nYHaCd-)qr=^WrE8+8;1A!&J3MZ?%+jM+Hqq$O`v+k7&Q>z+;|_d( ze-HxZ+S*!Y+iB`YAcGz#E2eWG0J5g_D`;AAZy|n+rRaSq!j4<VK^f19?(-Ax$&E`n zXgHg_tdE^=z2M#>Un^?b-=H4-(t+;Rk8r(gPv5RvW~~CfQP0)JlBWpe?qH+@%N0c% zdrG>2!j#1mL~@-StdZmuV2lfj>e<(VV!d?#CO}k;UiIe}ybX5L@m*V_lc*1BJcyL} z_7_}3XIfF01$kLM0&{hoveD~MP$2(YvwJH<gI1apVIWnmZvko!onrWaX3<>sSO>qJ zPq8No6~;H4>RhobqXD*sskiIh3}?_^$J#St)e4A}tedxYNWWWZoF<9`HytfEy%`?1 zQP@;f;>iQ98~0#9$4p{_OC~qFBI)w%G|PS14(IeSop!a=xnJYl=%hh$-_wV#tV3n! zy$Z;d(>D>nE-zLCg!~NwFmAD=-R2y)Apiep=I{avH|?CZt;5Zpz34heP_5OD8xA4n z%({BNPOdL^Jh0gm{{cHrG;v7@5nEeo&7ofib1EBYmX`K#8UK>cLqZP$xb}_|0>gM$ z_5tS>z9qk)EWZ;TqP^U4;9#u6L7A?+rf=8uPvA|VY{P4-@=6SVwf94u62mXBwrN{t zR$tz5wcY1qyEm_qCyf86pXo*?YhAs2ypVuud>60^8zxHzjaS`9EuS715It$pd$B+5 z_-BSz`G!J*CY{SRf=ny~p8Ah8kWVyal$6lAySvx6#3S%#r;}1)fKbsCq{96<M7t-j ziIp$kpee^fOSHCi2yI>uOW=m;{-YG6N02bZ9+w;+J}URtN&Hkd1F5xzsq+W(2Vp#` z(;I6WgVEMPObHKKqOA49tvB`k$adLwO7s^KMTO*yi9^cNH7>Bq@D6*+tG#oP)cFND z@2U_Ef>;TE)NugWl7fl~0<|);FPJ{n;ZKg2^yWRdN<BV83&eudsOcSuE;Jy_JW9Aq zmoSxa7#$IaW9;kfKh~W91R9mGO0q=TGji8&*X{Me5kylpyVo&aH86f|R`-YAXvU8b z5%cTTQ#KHr&n~Fg*u^86LOzBswlovpxPsWLW=aS;H2C5R^Ikhf!r~eBo#b4VN1@zl z)7|Fv$Lj<2Uh#f%{oIO`Ot-J4Fd$V_L$g882bUhfY)%#$gOq6HPR3G5I$w5NRV&2L zf~n9T#*tr<wNXq|N`D{o(k46D)O7Kw_+8~+vyvet=-nopC-oUkgdRG6V)4X(ft=Sb zR4C)z=2p`m=@;CSjaQ1coxP1Qrl!~mx9fseU}0{$=D!f5RH2c`Q@jSMKMiym93%ee z5-`6z{L;k3OU^Q3aOJ21?*3;o7stX|J*Pf(;W^sjiXB_q>~S(8R@ALyh5W6>VvSOi zO!!aWVf_@X9l0<N!HqzU+DM_%swDxC&%9!V?ORJxQOF-|$9C4-l-0f#7Vo~PeI-XQ z2zE&Lngyh#ZN%7#0|`idef{R{bb{!=ew1d@#quwE4MjsAAc0i~w8QfRXi&M_Y~udt zHDMyRC%S(CF!0Fu)Ab3uhIxH=KJTLk9Ylj?fSmfeSe>;7A*TU-Y=WQ_4?kaLR~I@8 z3LVcoY_JS!+X{T3erzVu+Y4IOCcguM3gYF!x3~$m)Ewq6-fzosNBhB359W%`*H&_< zi{b1t4IZt(3r|FEQ*2K}%B|eXbxB+GGS^C-z$SJTYD(SE1zn)PE|8A`ijxyt{MikY zonBj*(A8mIA4eXsl^-i^KR2B5uU=H8sArCO*Wipf2Tls8{e4SmS;c^>NwbH?Mf@ch z>`=UdTZdjckcH?*S8!U(spf-q!FAs4n<D<HJzeZ_^YL!*8DuZO3tB~HQ=c)Aa9m-R zziuE`m%XV4mLs4_&NXZ3AP}I>@q`p}!k1}|$Y;~xN-5F4)-(NSlP&Q6jt_r883$=N zMa+<PMG>PL*{G#x!N{Js(~?{oG1s0E99|TptsHf*MS8hoz~jCK|I~hm=17kDG(tnI z4a_FxANXv^adKoZO`NFq5+RSU3G@24Ciixjg6@G%2$flzm)L{-(MNBldqR0#6$%|@ z3PTwowKPTyP?B;qwvD?P7EZ9}|8O``$W~0HkCf2Tguw1xe+BN~(2$5)6wbKsns7VM z(lY1C=~<FJ7z_UeWr5-0Kaf%}z6IRI11c=P_dWQut^fJf@awFuA`1SWZlh#4uF<=a z`s$mfE}t=hbCs`3BYoJHy32VOLn0b~0(lhK@hM+^&~Hv42Ojc0VzmapKrJ*Pc@uds zdOg4A#k&KKD;|IJ=L~jp6fE-nMVqX^{ppfTpt;@PDmHV_XunF_=6PB3HFhADWS~r| z*5*%OCQc5E5hSozGvFl+{8PN$04iqJz(6Q}psCE+%RKIkHpvb|Lz6pq;T$Hi5(|lR z$!0;9uMx-%OhPm)bZ0S-#&F<!@!8^WJg`e*-}Vd%`3|hIih4ZTy#0wASygS#%X9L> z1u`b~Fj{M_#zSvgViVDVZcgg4F+J}W9H;WiG`2$7v}pjD0D3I*bGXpc1EExmet^cB zHaqW3=k7>xo>yGw4YVE;rk~&9TlOQfVc`eyLP#(ws_|`-*>7AkG>+P<#xzJ`d04~I zI2`xDRa6aOVF+QVoSJvX$D<;AmlH+iq!jc}_?BNL_MPJj8k4<`M|xQKeu-V5Al!7P z2F48q9U{E!=on4h($A*`mqK#r=|+i|pl)PGAGPtrCJD1L+uz(^iw$A;o?M&^x8-ad ztV1S~LD3=%Nz2QKis~}t7Zjiu$cuZ<h`k^F<g-48;HEb}i^rBnqJ8#szr-hQOBD8` zL()TPLw_HXNZ}oc8=BgP>J2HI=K`i#`tttvrc<XpfR-IUoc61<yqvJN4F|E*fN(|{ z;@_SD>3U_xX70BEv|=k#Fc~Ksg{`9;#sSKeflQnzvB$atMfBVb$6Y4keO7t$Ltrv8 zgmB2~!cTnJ{BoI)V9TcJLS{)Kx$1dTsVbv)S=ArhIZ2{qpfV6o+5wQnbkLnk8?Ai| zW1`aW&0%ATWxhuCm4o_|LkNFKirvRn?Acv;@>nO1yRkzYqQu66{U?~wAYPN?%NN2y z(1=URnrqmN&GQHlQ~lrJRT(K#6A}{QGt-$0!Vpm<id4wob)ur6c;~nz2z)?%C6vO@ zh-hIk(SZsy7lBaSCBo&dl3<c74(#mK2MyDgHHx^0Gv<`AnrO+<c2E3xzPI*Fz*3m~ zH_p<Xe1C1r46%GUhZ(rj6k|5Imv>oZ{gS0W-_g1w0sPbyf+M{<y%PY1EHBRR=S|s4 z<=UKT<=WW5$S}C2g`a}}dB%#<h41au)D*B+6ybG!w7$_7+2pthJ2z5W!)-Q<HS<k9 z@)r>=iXh-7UV%s67C~L*e!8)=(9m}P5M4YDi#W!Vl)vdfzK2Ib3JeW}t7HWVu$w#F z8$2*TY@N*G7-X_Rdgii%!BcNKZ$LCSa^0g8+9D(yTxxfCk9Xb?JIQV9!$T>7=syO` z9V~YBA6(Dg9~B~&SQt83hh;|&Y_JOv%dYJx1S#kQ7a)jcqdQCWF~jECFE%Rmjl>gr zK#S24=PU*4brALB;F3^?39loCqEfHl`+r{VGfB6x=7aHz{R6htY(~SYwWS2(!GIDS zU7dvF1hc3`{Uu;Bzqf~8TWd--3){PUd37)MA;h52l@bv-KUZ+<8?oRSu@D$>q#H_m zM!{VlulJuq@p$uNd)lq6XJW_5tOrj);TTyW*^k-aSV;quus|JW@6D??*MIK<@blv_ zen`u0)E1h8PMm~)sW34pqp?Ni=BA{2sS!<!nvR#lynyGAIwkzgtu~%cVhzKeOQI;& zzjSe=upR0QNC!ao_W`{Bkj$XM98Y>=GSalq<3Oe|F|JWm!u@_ZBF}r-?Zo$-+T!CF zRLl;>G|gI<(7?$(35~-}3XYbeb}s>7w1UTd`M0~O!_CrJput9WiCQkBm89f|3hDO< z-TL}pm|gIP(py({4*N6eZ@1}L_-QKS4yQLp555mX72-u?GK8pExvTSbr5q+mJ8eez zPN(C1p|q<NVhM>*hErlWSuo3+(&9VtI?uCC7zH51g%uIJ1_7K{%&9Wu*qsjHPW&QR zpV*?G%O0P^Ai=s&V+_lftD!zoD!PQ!UatReGa&1}JDsBay(MVt{l)K{_+_O7nQ%B1 z>Gl84=*4p_AQg{3ces!6D<W4_J=={DL)*6EL}yEWlq4N66n3e@kt~>GgThGP{=1KY zirQ{}Aqx-R{NbO%m5DYuI2gnw7>}uA%#E>kjD(BJO9aN{xAeFlc*Wx$a{-J6EpceE z*w;sh8v!jU!65|PYK|&m1u6(NpSmP~Rv{5Dqx9=@Lwb2`66v(kD8Ob@FPR+Mr3z$T zULKF<MX5YIC(!-TjQi?&`KQb`h?brniAFKI7tnu11179Z$MWeMU15N<fPtnQ5;YA? zf!p!Q;OJ=GSDh$n)1d?^bUeJY`_#%xW;HtX3Jc2fxh#G+CkYDMN6+hJH&*W(hpuJd z?;-5qzygeOp$&A7khtuY@CqcOH#p@mKwBvG(FB|<whJ6bZxX16Ue-g0N|e$e-ainp zBG3Cr@+qj@M3@>nFotT&>*TA>rIhB;I`P~?6pJt2+tM`r{T;ojEGn>7DcTuV{_(LL z$;%I57QKOeZLE8S3>N`Gh2S5?6daawFajAVK?@8dS}0T5J(Y`%CW}w9Vd&ECqq%kw z@fo2T0%V+6TE^9OJP07|f#YAb>@f^|Wt?7)OfolZlidQUqN*jlf~7i`_21MbzX+4K zxA6LxyGiQNB_yiEVfYYgjy(s~hWZZdn;NyFMhvG;HWMt2<%Iisf1`z`1f~6*gJ9Qm zm9ixh^m9@{f8Il3diH@H7}xC=;tsw$a%U}wm}@aSI*ch*Q>)n@|C{}?!9s$Q)lqX_ zgO1X9nT*HfjcS*E4#tww=S?b&_+#HFHOEYlmryUIv-#9DPS{|wdOI*EEhnBYJh$>= zILCOjiP&N|Bc+mf;cwui`Ld6{Cna@r%t@sRT)mD@@X>K<;Af#OWAXlNf!|esNfjgu z$$7~na(S>$>{t<116N_k&!ULh2tTH?J_MS*rCGy$yZGHW<>2JKt_vjibg|lDn2G2I z1=pz%?hOuVP|0_8qO8odi!J6Cx>e6k6d!nac-Y$EGCxs7MMf(Y8Wa{PjdQ}@w&$eW zS>P?uO2|g+<NnwOX#@>=EBH4wFPfgBbgwfK5BPI+E`>!!q_kuRLtn!uB>PBXZkc4| zB&|MC8gJU(>yMvW1=*2NOg6XLK2{NM;#cv$&JZ(!W@JXmloMPw?z0K>Q%y}xe0p|p z)F{#3CG6lctH;Rgq}>0Nzklswhk*q!4P)GRcuLp4xdyfL!!R)^jN8J{D$P79Ex6b3 zB5rVB6#|`Dnv%1YF!(ZlKEB+Kxk6YHZS&%5^vy4X1E{4_6ljF0;L%ZrecrJtlW0j~ zA(9mZ{OXI45ZUB^_O=Ss%}(zH4*r;l!!y{el{*RB*3(-xS*+z_?TDcL3G6k9+#-7| z%EJIOOmMmybjy2LJ>+n_*I@>h82~RE-1jHIzV#+xsuK(t$f{ds$WiMyIY0ozK?xU^ zI`xL%3M+M%nD5`0d0j;PO*ba!u$gCjI2&Q+avT~NK`Pg-7p?vD6AcYbsSp)55aRlH zbpW_ib@FLQwpa(I*=xtg28A8ED2B5@YA0#t82Z8}*$Q~hY&7RUMLAHMyX^=R%^h^X z;}(~c04x^<mH7Q2wiDK7Bs!!Sw8*U|pdQWxIEu}b>&*Q@OCv!xb?V=Wxt0C?YXjKf zX!5+IBd4G!Zx|2u2X;8Rr>7H<R87TTUtlV%Op+md$ZAM#PxoR#7&0D5@`-E7bDrWo z_u6=ET-N$z<wt?f=)N&q9(gppnjAS%@_|-?IXRBez5Z*J=vQE7|E_@G?_lft*_(WG zH*byb<I5@ZTh({emG1)w0^sA5M5ZVD@U$h;($Sta!O$QNlZuXjzfc1vk3B>yDJ*kU z`6^Hx))Q#<zdYVzN5XU~_G}ZE6XQE7hyCz`?072>ExTK}DT0!E^)vcxp66O|*H}Jw zc<t}Bv@k^HSJ{>VV&;f%%$rsLOlL$fNAv!d9lAB)gW;3gw%)bA9NLHk-1mG1_zg5K z)As9>F@t$Q`>S=4_fLo!;h*m-$v%L0Ig|9;Pu@*KK1#ZFFA}Y8%&q>8X*Pm$eAMUI zfNs75x`Un6W%fggp+R*fAGr^_4qMUSBuRo-Q!$9!eNQZ=P%#1Y%Brx4@HYQ?yf1T^ z+ku-+B(9z4U7*Ig>_i7%$Bd0}7V!7(%nqVA3S`|8ZUr54Ixo5T8^n<;K@R6`5Pnwb zFoK$)+eWD$Zsjhf<-};L)a@-gaC1DK{k#;RAR#B$Dtz3g*;f+eHf`w5y(M<yHX;fS zA&eamV%s}>y)-IQylui(;CR19M)ckVHkE{ioRNlDhPL~<0#=@P=Jte8?!mx}N1GV= zCne;|>c|^H1ki`Nw6q=x7=zIcD@>KRB)aF&Tgr4cr;Ps_w7qgK0Irf+LFykdom`)~ zD_k7^A_oK45r2|C%<}Gl{M4eju0xTxp3Y8B16umkkBn5j0h$H;8AA$4EiJxYi%r|Q zA5|l40Y4NJ>MrRRK6{k+|5Guy^%*9YWaaw~Gv;h}Vj4dLbL;A!rhMloau+-SAnea6 zIi%MP>R|w|l;j%!2{C~JD4dSa38Sq^FRlaCfMZe@y!tmags!fxQl&h|5^FYN)sa-@ zfp`ijp89(_lgGPDv4h!i7#&49q`tnsJgHdXfR^5{q<Wiq4Ey$5YBf4w^b2gL@6HYZ zBn}1_^5L*{{N!@ZKxeCwDiJ`caFR>%a+Uqjgayh4lBKF8C>#XQ^A-CpeB$EbYrwC- z<G2CMq~B_Br7H->Mjis3rf$f;QG<u*1V(@bz>>SSv8b`J@zMR!ZjK-9`K{6SIpD6< zIaq980vZp}B}@J@DUbgl|BXo(*63s6vyV~W4~{=|w<IC1-;oZs8nl#tTw>ykYxx@# z-1x!&Uekul2@T1WqQ!ao!mH-zfh1~PK42h&@@cHfJIy)xdLsW=_`*}K^zocyX@Lu~ zmP=PS3M5Jy6CFxsGvgIkFbnfCTGV{{{^^f{*J&f3&k3u``{Tg&VI+y_;nF8b)w+WV zvK2&!4Vsw%4R#90?Lqy+#RfRPex2D}r}e_gBD(bP^kA~><|>UaWGy6+VE9~8lvhVt zcgQ2I0~a}h<awPk4}_gdS$G4P$z&y8mh%pDX;kzJIb;RMAwF(Unkc(o?-@!#HFL)E zv1qV?Ws=<l6y|;FP|n96>%=IGx&eQs?BK~evsN6~P@>9_^(%Cb7<-@FACa|JD#w#f z7_{)Q`J?-9+<dxpsKk$@Zu0;B_EV+@qkTd26>D6-FK#vMZ#XstkWBWo&?c+<{@bO= zVki4Wo5+}xi*tV+B?-0f=Qt~tPsCOp&cIDbgkUh#J<4XKpZ%s$0*VX*ZGb-WGp;|O zeoi|~?e`4ikZoaqXi#W~iN`ePNsu`waskVOh`-xy-J<vNlH%H5)w?2K#0G7$7=UwP z@&%bd0U8nG<!wcg0&lCT0+FjB>OKl@ZS%Kjq4}p>$<5<(|Iii!D;l_W?j0w|q{2>L z{^z9$Lpym5joJvPsIceB%Z*dzEA!{MgLj?VwnijCmYd0l;i!;bzgkL5e^~FSE4BI2 z#6vN$s;MRz|F4ZuQXxo31Q}_?@i+s+afz*?3jf&DlEckH&@IKwLc|^E)0rWlx3kh3 z<NUSZy=k)4s#uYzm?pQHtA<#?))NczrO1`;HWvSD9pnMt8^S=k25`LdC$KO}sM>4% zP|Ourx0jItHd7bAsnY|U;Q`}yF6YdpW@nn&3O(yFrSAj4BpV87-_<U}U?H;vm;>kD z=rf-yf?Lvl7*rd>#E=LvSrF+o+L=*#n}2m4z4z)3LkGxXND(zp#$27{wC-ewcD+?s zUtch0i?XtEbAS_|`;L3aerOiscK90|xGY(xtk{hnlmJ}rn0BOK@gW9)1uz7r&Y>G6 zVAU&%L?}B|H(q)FWi4laTkec_6=mSYvBi-r>)z`QW*+Ztpi*-e4LtEAB6hQf<f6^R z{4ST_N;l(8<aH=m9UiY8`TOd&wm2DKBaTmGb%!K*<gWRH?uQxCdgf4*sTRoNtPEpE zyPpiB&!?~n?lF^VcY^&k!~t$Mj2^WIiHrU~Cx~&JW|rL5WF-ijCt<Jyv^(;kIcFJs zMN%)C5n{GRdtz=eR*?9+!<xib$d%a5<stGbPQUQuDN)(+EkV=%Lbgs9F*GPADAUoK z_>;Y0WG!m&dxO8>5pBiBp7%9M=V!1~1x{oy<t+9KFjJ+v--r?O`+wMa%cv^Ys9SVX z(w)*FA>G{#(vs4RfOIJ>-AH$ebhmVaAfbSCry!kD_d$K{z27<CKO7=5#$L~gx#pb9 z__=iS4P2u~yR^ntlJxOqFxCE^6Ep&i`N~;0qPF)A{~@K{XLho@!yWr$9l46rjGz#r zkoEcUOXHREIa$OptV9()4{jQD{1tv#Uo0D%^4>B0D}1Okk3tq{v^N214K2N!pXpBa z!Aho4?|Y2t@Q8zLd+cDjer-8lXU{y$Pbbvz&ocI2YDr`76~%g&Hnra#@mDOZKL}~_ zLc@729r%k;35$^!9Ow+bgs{dGAR@wdR~ZdIU-(W-{#?p$Y@b$c60W{~aNNg=`KX+; zc3GNJ1?vxe2ssiKLjB>uQVEadzEDwCO3fNCgM>t-CIw$FGw63BX;>GP`~NoZsX#yd zOe`2K|DIU}oy8sh>Za*I2KLB&?WFEl9<C4GAMmgN(f^8-i9Y@QUf5xCM+`?5PI?s7 zF3?i?6(O)L7f)2b+R$$tx-3wqS7Bs@prN(yrwrp0OI-kB`=b<~$f1cQHX}Y@SBsgV z&uC??uJ58%oqkel8xiVranp@0U~R7@03!UK9@XfPUxZg>Riyv8x~up;=6QrpCfw@> z1><2DqO$@{%1dsKX2R*%d`;uJ0v#au3iv9tA`v2C!469SX25uxr+ZQ@BiX_Bb~3|^ zM!VPB;iy(K8mhQPpydXq9#Wj=SvUqmPq<!x3%oq{0qStQ4_vzKKc~whfIEJkcC|@s z^9SI9!XVvjx5&RV%{p)d7)mRvtHz@$nx-2xkQ6dOs?KI`NHc@qH5?b6`N_lCcjd9W z85(@ep<tZHbumsYjbnC9O#e0q%PBKsGRX{5KK`Z5%k-j$jTM6#Ge%xVJolGP^R;x0 zr)Z1QYXf7=_hLU_iHW{pI@_I6dTWrQz<c<Rh99<Q_$g-5D~N=ff9F{n>`)!tP&MlN zSmu9_UbyNU)w|ph^jR6&Z^4oak+%Pd=|vw-R-ZZ2rQTC@I4;6Eu|k$52`=}8e2)3N z=cHQh-Z4@0z5~=*aHhzoLo2UP$rRJW#Bje}%-s5e?d@Qw$uqK)(5@Gw6ww1?v)ikM z9YpVc_3ZiW*~^^9D^L}PKC%<Y(7^^;+@j#Xl+(u$BfLDMf+~DqOfe`~M9})IzZ(-3 z?zSwlzbloa`mS<56si*Gox`s-QjxmTtp<WPbmQ|f#Tn=4XtyM9G`qjEU@T=?noPh8 z3%&#%4sS*96qkdkwAOOAxw!f!Ty~LAnEKvW+uB9JLiiN?F^}ipPdMLErJsrWaom2< z6z$V&W2-WkLYPJ~*X!>}EUi9$kH<D=M)1~~3@?e9r<L0kd24cmHBnh{NC$Ex7h4@t z4IG*>Mj|ClN?5@g@1)rgHiNX6&<qnPdf`ycG6w$PRFTU;R7^Jeh>@PptXS;U9JBHt zYN;_KTu>d0gl)zzP(PyMe?$KtDK8XgQlUMz#q=r!3f{M_tnCL{-spuxKirO(&UxUz zxY$^idH3$g8rI2y^Wb&CBV)7YSh^^~U)A<s1BmPY@gvT&!cRKp5=ikvLW`@L6f>Am z&&ess{(ow(Nk(XRGU3jH8G_n=B%wjAO+V{V=AuH!ko@k?FkGPiWD32C`O{A>KLYlL zw=d7OFv0T?RO0-?4lRxt=(;m5rqac`b$jr*>)sl9I^0>6QV%Y5CNSwH^`Y#dn+Hz2 z?axril1KV2R2lcI9E>jCNwyip6u&H7+n=p{-`gAdz((ok)gBigKhffD59Dbl%_A?~ zc)op`>-%v3NZ2yk8|d$+6ck*bdGDkUOCsPVnar%u8>3YL?T13QRm;!FhyssJx{)zo ziefig17~Mv_r5|dA}k(2m=PQ-P8amAWqe%>Z$f{-r=kA*F<$orA@Yi~(~Yk7p$|Qv z-(;O??}9!Ysk8XnU7NcK3cATlbio5x*Au<#lXhWVQsd7teH%B?M$E;Dx$pEGnu^oe z89^(%zH4liCxn|5E<cG;%7<8#OGUK>Q^D3y`Z6x;_i#F^=Wm(}g-tENx~k2@KARka z^mc;T2F_m9^4ZXPZzfHj4x+;N!0pwmSrglb&y2i=vlXzARQciV9z`lv+hHMtK279l z7whw`8P>L^8=qKu&$px6=1l=buoi6IFATV#d+l%WOWTQ~gr1_cGJmRE!gdxH?k5s2 zbx3D6-i!_6b)+S96g2R)tT*&ueuulAw7OWZbMuP@NXlxC-z`bOUwN~^M0{?i$vDz( zN4`up-iVBEI;Z;}gDJ{IKe`lrUFn=on666&C3>KS(MHJeiKIU)RQ<p<&3p)obScZB zbe2@;#`pd23Jb+GFO^Y|7p$(oUh9R*Zk%V$Mnp5LoVuZ-5Z@#Ibh<w`g$Ezh_<$#y zy$3<`M<=u+YS&MJmyHa^cOg&<m!%n6+)r^B{=gR|fTLM$(S*@)KR?b6qYxUUEaCKu z=C+Ls;bi?D|NdEEh~EGGQZS$x5G4l+z|H|pnTHG7Yq7KFe$&2~4(WOdEMM!fcolv9 zMO|!(T|V3D#2YWki$UExIAOg@)|%FS&il7Ec)<A+2SBm0y&^!7)^T=nP|4Lcf+Vz( zBE@lux1dG;;hVYX(`UeEo3k2?P7QlxFdYboVnUa#=1HU06HUrrp#M-M>wUW$EB5yX z(mhU1>XeVL=OjGt*HCF~C8MtQaF4p6%_k!%L!s+HB#s^(-F?s~=yOZpeRILpBe55Z zLdb~#{-SX-G|+;h+sP|512;HFtw277%O;7uK0Yxq2p|?~fNApH%oNDbTl?!lwdj(X zI_dHT*IRZbi?JuI>&Y3j4b8@~gdR`1C{F){M4G&%MMt6i6ykvRR9r&B5r~DmoEiW= z0;HE}Rp(X|$B*><<1Oi=tX;CTjXb#&pJz!wj%osg`y!7>i+T#V1D;}j+)oMG^^9Ia zis{zi>l2YYO0b_uk|>v0FVECwHOGy9c5=N^1GCU!;Quw-ai{4i-&^C*T|%FfY64Fs zK~ZapZAB)w>osCpSf5)Gi}NxVLpzl4K_tLeOOG_mKzSPZ*0OGJt(+A3awhkRsA!gk zV7Z<N(fIHcjw0(`_mh##HaK5o#_$yVGPvLoG->3@Ja03u?gLl|)W_S%f|u@Vo%J3m z+Fdoa4i>4T2w?kHqRpLY0Tw%tY)LG@mZa@79%lXS(-T>Vw-Wf_j*r%PksDm)qw(%H zHB)r9bP!<Pb0KI?|4hcCc*|v@gDPY4J;l8VS5AcF{b>By(F_OOs#YnSFwqaPHyO?5 zc3Jf<3;H5Ys2Uf8q8s;A;1l*6v0muj9Me5m8PsJ&gEdsN!>9G>5&*2zO2_W?St<#1 za#Zntam$Q;e)w*#otx~<z%AU((ZIQfzZ7Kg=yxPj%H0#0T`%i?C0NK)+;U_hR_7&) zjFoePx!PMgewOZNmf<kT*6h8{6rSQ3kE6~A3l;>2QkS^A>y~n{c56D}Cg_Ho9cuO+ z41K~yKxyra9ikHsZz{$ARb4Qk#1PDOoE)~rh%<=Q>GZp4FD>>sRz=|Q;jgms-?Spd z;kD>I6XL*jbPTJB`SE=b)xcmuIETX13Wxl0IPpW!RwSpUMhzQ!t~rm{0%dQn?9ueP z_kiY_R{Ssh4$BytdjH$h6>p%_LV)_SS3-&OoZp&qGvWzJ=@Vx+iqYALa8ds(g)yN1 zL*l9b>FDwhOKg5r$jZyFO=b5*;0Itr)%Dq&|D2j>^W>>~@oyKr=8DSpbh*YHncIG8 zq~%4V2QifiJ_dOPD-x9*cxMihGBT&6%b+T$lxi{=Oov58NW_o|c~t8sOgySofYL<@ zb^UHkIfK{#DTl>T`{*e$Yj&}r*D+k--WPpHtbf7x-EqJzXRT-GjVO-dSz5Ub6Q<BB z<l?0P3Or&MYUfHCj8o(!<yXPpF;_6=4yA#?*<KOVh6w@JEzpA3@!p8@PtbdUL%isD zJ#wZKTvOB{7^;P-OxzUvuj(Jj!(~*_8cWD>`^N3Zg<@$h7)J>2v!d=_#!!Uw<RXjW zPd?3MXqQC2uhY|(9N8Sl$snA9dRcj*v#$61hF%x<_<m58;6y1_1-ZQ`+Kp@rHe^-% zQ&qM>bYE%it8{zT>Nj!@=W^X#y@B4RY?gQSO&Ju=h-4Cot8s_ZcpZtNg^(c7vWq;> zLP`4Ts_HvBX*G8OM$>5rE8BK3jhmv=wla@>*&#K6-u2t}&CM5QH&a-5E%o4h@uOx@ z2i8KWQM>Bf%dh#qnfS^gxZPs=YiE6Ia4PYM6btaoGiN&m>-s?#Nn64YV_iFn^v0|% z%)WO0h$HkjS0hSuV<|$8v`R~%AzAp|($wMJoEQ=}Ts<}>Z98=z%>Zo_%bI00Y%cU| zZpZ52S6I9KRC8+O+e(EPos^4)bR7=ZrwMM*=@ucT^8l=eXdu`=kbJr*fwvPdxxs{( zS+6f`h^2Vnag!FDTnc3w2I!C}4P@Du_GrZBeU#de{X^kF1Iw%2pM&_2kwhrYR3pwb zheKn%0~iW>brgE?FXXv7gBpKR`JZV2uQkI!h5B^Z>LtMM9#N|IT!bzWNgC>CS96?$ zty3`h^|}UUaeNR}wId=}3&lw>vLK5WsO4(skfn5dkNDT#`NhJf?6rd7$I0nToSEV3 z6|+(_0?HY_m;Ni2-~R}ScU}?C-}n8fShJS?oTA4*jBlR^W8G|}@>L48k@7du&wvqe z`G9|vBY03?jv<K(U&2AfsgW-%dT-o2`q^c-yHpwQA^JYb#e3+lYxI)|dxb*5JUIe< z&`*kNE;}j)KQJO3w**=M6wn$W&3+7k0n+omANYc29G0U-CmTbpmGik0@Ggf-naQr) zwljV}hI(vrqaiI5MHmDyIpp?(VZ2r#=$DQreqJO3Sg_j7PSk}qbKsN+jDqZhboCT{ zA)G|N_9GCW*<@8!4_m<~I;I+eF`RA%9lL%``W_!mLYK@YbJN5JtwQ-t2xj4xI*)_s zac+85-gB*(TZ@&GvoW@<XC3GaHggJ69?NM}xvhP*u!RRby)4OV8Sgt%P}8;untd>q z*0p6KBk1c#pFHlYDp&Ry^>hV^U!qHs2Mvr3Zr`~w8=z{;`9#EWQ%f@3CvQ6wGBc-! zY4~Ohw4vNDm5!aN`m{n?-f6CAs!S`vK``4$d)~e2QH1)bdpJvo{o_&sW>r3@B?h|Y z8Np*QX@BW*FJE;wvn&3*sphS4(i`D`8$oYPdiiOwyMuMM3aIQmxrtp4J)MAKQ@6Fa zuu61mOLgK}(o-VGNh)*w-X*CQ)jzeLp$H<bUu)V2bDP5F1t@Y2x`fUFY0-}*Q9NZX zE43-{OO2OD&4v@Ml&P3tj1ntRko}#@^VvSs|3mVnwlVWo*hAv|GNXdM*>@g;)mwHn zqvPIkUKd4POwsr}Bz`Zl@Jeq!+1;1e7u1l@jdg7<Gx`fFlIB3|qVh9o>?%tIp{CPz zEGBZTKdgyrum}%RAM{Pv>Fm87v+B(ZIc~;Ouk1~AX^;$!P5(cq6Yw57;r(xk&~W9i z#f#0j{c$3nti)?|`GWnE@YQ_j*NhBe!RYBP!d@&afOHt)AR%$F@m%!pi!ws^`00;d z$_49R<zkX|1`c`SWAJ~2Qn#C(udOet;|yH-?2kfq>TLhb>za=@C#{yy{`2RaW9krG z!0ooM8?t%)VSaiDGcU++a8{5le+F!*HN5W=^Nuwt`ejE!(R(Z%LmJh%>@)w#*7Iz~ zzp06L$*V}Kk`(9~JJY?{p5n=?L@7JA=6U=)f5*xdpU``FH_Pw(lN{nE<@FyI;Muc} zbne;@Zy(j$vZfXmG<(g{3IrS$D1=<rW>JU+TcjdB#9*tm)^{-+$*k9e0o*UPZ52I1 z7J`)yL3#RK!2Q6X|G+%>_t|bh!<+e&b~Gk(9{@fx-4hRe>FJ=&Tc4~QT#-}oGfvbg zp`B*FBcPUoW_Gmn^}4&GA|*4?>OM@5y1J*TAiY-X4*NjDwoaHW?<#+VvKZ~Ec&!&8 z1w~M?5+W>7&6XtM8_9fVG#>onYCI^&FpePYeTR%|XI<%Srn>{v4-6)Gnzd}xA4h%z zV`w>)OJsaV5=)3RsMq_o+TTryeH1X&Vh0fW?i&$?g`anocaj*wDq_xv*g}$)unq>w zYG2g%<~)ZP4}XD);)x3x`Hk<1$JjTw9+SJRGb434`y_t)vQO7*SN>RI-AwDRE5-nD zwaR&3)6;igYWT3EeIMGfNALa1AVsJ`sN~dr*2ZF~!pL=CbtbcG*)`_V_AA@FlzbM4 zUv>&R)mYnau~FPbk6A2@l(v7^vc%py@clkpj-XqrXo*<A>tkU3Se9Bq8DtD3c-~2I zXh!E{Of%kmUGH=)bOx~>7;ZXrQs||Dbc(=^v3m#3(&3jeR?KAr60~!l%}d|Tj5G@| zPUqN6M2L6{5yczUTe5pN$aia$p6J(y{`vO&9H(+U8<LN8qUs6^?vxr`wxS|7wu-E2 zko>Mt&kvw>e87qOUtWbA#$d;)N`+Y#Bu5R3F3XM==w+V8(TUN%R8#wql0h#v_SJoM zXb4jb$_H*qd26iT!+$TUi4uc|C`3V@TWd@5^}wP&3>k~E>ThYKu;fRqi{FoaNl^Z4 zt@kBW6^|0B_)a@L{G@tIUP&#(g8CRKR<5wDwT9gNAHmIr+@p|gD>1Jo3zURuj%Ub0 z*iBy7>;x0c!iFFo1LNc0WS8jHTjO5r&-Uo1Xq0N=>KR2g8ilhGlafYf``)Mi*bI38 zz6y*7yu3%37-p(awlh^w!19H`Iz_{`LbLR(&U&Xm3}6q{e&K0|@3=V-;Ita|`^DMS zZ@<*~6i8z*ZQG(r1oFUYHly5<1&n`HWWKkUHq&LRk&DA9u0JOcfu$Vo;odm(8ZGFi z*2X@R3Enz$@{fE*A+a}s7L|@4ni0t3o}`4b{9KE^ii~G!4{M12K)*8K4#Qo)YTdzy z=8JNT<!paitiBy0ecC>dB2OuY_07TZhu4U%HxhbEPoZFIWVF3;=a!?@S6WTdTjsfE z9ngLUee^w*J=%;Vr##}GA*)4M%BwuONRXe$9`ny44Sk`i1$~5tvz50$<yTobnBpYI z$<D2NYqMG-qR}EwF$m<$95EsICin1EwjqJoX<A%1?kr&#+-M%Hy%X+<<TA`h6CvA` z^5y)7AooYm2QRr@`Rv21UH;dfBhU4NO+Aqey<u`}8c{kf@B-A|F-D{9y&q4%4I|-q z*9jvb;lpxk??CE;aXX!6fLN=iHlyZFNvgCz4`FSY_qu((vIjju7PVE5smd}4<(vgf zitce$3Y#z;lMmK%KXgP8odYdAU(<7gb^Ea79$|iHk}bXUbAt(A{7bQ~jts2lOlXzI zd~^lf3LC^vV=A|^WRS*wjJ>rf#h3xKh%=kOZy9~2_RxN!YcaV9i+2LdG)HeAph0OE z4WG0_)d7x1Pa*&stR{X9?bpoiM}r+Hy~QF8VO92Sd{<zC6&ASgucQATtrHuz2R%f) zn^qa3G8B3*)Uu~{lnr{Nk<^4FdoXjGnQzMuzfM|u2dG><iakzvsQ)=JbTav$jWG81 zA)c4|Ec~{s;DU$84Tpz|-Kl8qw9;dS0@7q)1T*0vMm}uRc{ZG!Gc{a_?(~v=Vtfh} zH*@Mpoe#VO=8_=WzwMh}{Ue5zME*6I0c=z@(sbqrT-SOLfh;h9N9Ivs3TBN{i)FnY zz^MbK2n-`6qwn;>u&ArNuAQb&KXQvz{>TT`MWDCam^v2=c#`|}bgQ*OHQ{)0Q1%QQ znlCceeBh(v+}YeTug~;?8M!{czq<)IHZ0Ntl%H31Ruq#?c;!6~h(Ja*TWiUbHs%(W zoo!eVs^4`=X!{0-*dAc6{~+nIF7xRHz&lz4{=2L;jHq!uk17y%A1VCB55`w!2Z}py zy>b=`wvlY_ns~3gN0Q)XCr_^&e`=RCf63NPd@+VPbI+#r<K-*j-=8?}mbMSYJmMwv z&k(Z%-R>EAPxvPT&*F^{Qr|&-cwj*|i+|>9Ct-L|;+e~jdYk~eAwSC@db()~j8Bcs zh%$QOGllsM<RN434NPzls;c$9c5Qr?1$6i#22Qc{RVr2$6hhImpA&&05$!$u@eh=g zQ7p!35Bz4ot(h*|PRutq8Q|y3A>@7?g}Hl^@v>_=ozH4rco-3Hh$|hFxoVzCJbEZu zUS_2De$h~XIA;g(#q?Rx?4U{uhRToJ9ezwF?=iuof7ZiS_VbqH!t7{@hYpj~16h;D z8J9j!t1LcXrf0a?;TTG9L(WQR!V%8rr&>n3wtYzMVa}b$$jeHIdhfvUn2fTB-9r7B z@aIUD9oZq{`afd(hcD}SmNIHdu{Y1CzXHcRck<RfpMawZM{R6D{G0Drzr7%~0G4+p z75S>;msl9|PO0;0pFpsYX0r9lPv&rq!)8j_fwk-^#FWn>SWid~3xwLHRn?_Krkszt zEH7>Ll_3~IzQ(^ohi0Dk+52Yy-lE&jn$f0o)icZe4k7wG!7BnKuGk5q&Pg%EC=1%i zj>?9W5ED}_s*GCjHQL`%`@iAi&m@AQv;xvtxE`h`9nN4!BM^wH^XXxa@45g=>h@e& z(LS5Fq?j0#%5jY&ZHdaz)4wk<76MhyP5M-aAJN0QIpV&3$-y;o@wM-;|M&>yqhka$ zR41k5HwXtpM$C80Tc5zER0Vt=1M{(kkB<7&&E-|eo_)oM`|+n%&0>a5^ixIrCZF9* zgszExEHTIVvn;e#z7Ia&LPr9R<fBPRk!rq2t$oGnKmGp}nx)XF0W4%JTO<Y%o2F{3 z#{!xvcmSc0kDtFLwSRbKB46gwHLP`Jl!xE@w~KnEL1rx%fqx4a(;Y1;=_Dc#!Q8U0 zuv1ZVUUq$2R7Cf<`y|9J+ZxRlA;V?RG~?Pf5BMbqi8UT?c%!S-)b=G5Cy?Q7h$u4f zx7f3#hZRG-6~@UPY3a*{<Z#Hxyb7a^YRk?d!QpHd$M+2EG4(X<qP{1cbl+_zofo;- zqMOvd#k<AD6IuaT>u?qeI|)@(!aZ7Vt9vAhi-5}ozvATCPas{hjoa|cAw10U+4kAd z|0PF4sAPJ)9e-4+0CF=A52e{8Ud9wMl@)x^$`4Q6c6-_<iBGxfkIif^_{#RU@C2}e zc2gA(V+MXxoUfYtmj)?STS9fFBOi6-hU9Es>p8s(T0$@!M_X{o*Q3tb4~=@H!!5h> z`%*VBei<R_c^&AQ5eUQI4jTh=WVa)aQb{>^-d}ne@BIsYgscN?;BEMit6jDIJ=O4Z z%I0dw15y9-W%5!Rb$<n+pL=i4*H8t?L*%|0^Foi`?QSyXsp)KOggnKVLAY74ki^I< z!zjBH?lMGqI#QEUt+s0FppHGmbVP_j+WS#cC5puDy`I)rj(+x2G*@0fG3vI^sV~h_ zn-E{pkoJnWV;gVi!;WLu<Jt8loahA^hd}!^#lQr3Qtd}`Xkj4N#~&}5-Ex+3bGBB9 z_irlvnaN2X`zre93J?{0&NX4M#eWvCLGypT0dN;5YsrCb6&1dK9lS6kX&BZ^DQLfM zgZT-q3bOLj*4CdB^eldr78VM$3ii5uiE~BZ^#413n@N&WQDM(rwUXh-?Y+oX?HLOx z4PoDq4_l*`eKh4E5iOWoeJ?swZ_||Vp+D&P#M~8o5kXo4-SbxugKU4FQWXpI>!+!q zg~EgFaY_?-pxMfy#GHU2Bi?4WokC*r=GLx6gecnJp>qR)x$Kgp=tmyaV(4#}V$XBs zcQVP_Uf@a=zsH3t2qVvtMI~1Yj8%H4>~`9&V}LVAGdr6p@Mg@*P<WZ@GV4UZoyXZ? z>plb<`DQcOFfv2`qz({MbHTcu8r@8A?OVZ%6ajZ;4i-Sb(XKH=<hXHSYkhZaO)TP* z@tXIr<3acl2AB-V?dR+2`Ch0@#Gi4=tE;PfcDPK&%*@=njmIU1lH0WH?F+DDI{nXe zM#r_>XS0^stDv_lTin_AJ?er7m~uRMdv6iLC5cX>oxa!_*VN$AY7Zs}$(xc?lWpg< zx(rz+5=p<&+SjO|a^#1DAs&{CA|u?4mg-g^6YJ6|zeF3-ZLis0^lZ+yvF@R3ij#^K zi_KSElGytg<MQ!CFGmx+SI*aFs}pawi)VElFD-gjh<aIl!)AJfrZ*wvNq^gg2tixm zf)~=b<TXI@N&g0e+#RIN!hLjd8REGvOdzzQ0V~X68|#f$dNVrUsDT9ev_4npTz%1! z9{R<yVk<{?A-dAX?=?1mZbOD}fS`!m@%*;w(2#Re=HNj~J^8aY=Z$P`-;C<8f7(m~ zS6{M<flzc`Q5;kM<g?EdGklk><C(r$WQ-g{qlM`7q7q|<sk4-r0{UCfequXq#(ckr zH;38oWy%Pe32AXCAWhH#w6~ES(!L!vw>PGJX-h@V<DF|4oFk6!yKBL;vf~bcff6nK zHl@<GNH?;pirMg)_rS=qqk5*2AF9)3VNnndyFE;-J-1bna66j+w87MX<U%M=&KNJP zOls{Ooo%Cb0L8FKb!8IG-?Y(0ib%`fpv*WL+VA<*8z*$eChA_-xI8U2&6c36-}$d% zgWSrhkh99dBs)`lWDTvr15@i#a6Qe27_}e7fKEP$MmfSaFYC>>QrwRjAtVasVyFMh zGT)EHAD@|5TLc?Y2bw{*&aVsX?rl`;{CIEQ5>CZc)d6XDHo9$Df}5#CJ#}vHUuX&< zs;)rn<m99={Ql-fw|@*?^XyWqo(qqkO_;}E7fL;MH$A&8Wkg{Ftt0nm?_zlw8&lJh z4BKoWZW;Lh9z7qhDUwCg$RXH}1g#vOMu3SbrGGrFvI)4IG9qq2SN9yO(ECT)i65;_ z^8v$5LBi3&p>s4-z}Vh?Y%=CmRAE6uuKjX*UICBUAjYHfb>200x2m-C6W$L)K(9zK zf@_lxpe-=dN0R%DC_-Yfw~^7&@dNc$rSTZG{eU+F$GKR4q8NzqL{-{)$<zi*)+fHC zA&k=9h=ego1jj>?F8J~v<uH!qnt1p0M_NV>_{!8I+>PzsdBpOh?%#L`dq7_Zn^OhC z&*Z2V?#}SmkS_F1@N-1Im^27Pn-8-=frEtj@WI>j5#U8TNdp?G6}&PTI<Lm-u!_5z zoVJdvvG5WQmh0o=#xr;fqe5TQHi_~s5>gSE3Nti5@qDX0oe_3JYY)ejcs_twZ{Zsp zbPiYYfe#sCa044qm}x?j(_5bCRZ7lDbOF`xib%<Z668Cg6EX&(IW#D%!$cpKqcPhX zkKs3SFQWAOfrhUk#&d%_s>>QQ8P3ec-~Cdrn0wOXM6VaMR`+rf$z}1~yxE?3dEv<^ z{MNRFy-bgEZ2OtRS&A3QvN~USd>?2UT4y#<#g{+bI#yj3trxe6EHmZ-1qXT4>b3H7 z8LMreEd<SA?E0I*fF%sgs^1*o+T8n<4_~Yuox?&Qsm37+B<!-2axD33q*6{4ix~at z4!GKV$H>Vjoc6F*D>ln)%J$mhg*w)TsWk|DohJ4+A`3lp21wDbYGQc!C;kUC$!D{L z%lJ}{A)gI|aO$0e-{%LnfV~p5ybQ&k8TlW0`nM|J$N*L>t`@r#d`4Dk*wvLK3y;d) z>i#|gI#2V$q6UNcmw({x6_%{r3mFp=_T|^%gonEaNVK#vQhf?t@-lv7QCjaH8lU-# z`%drSFC8gYi(h@4NSDD^W^t)dQJvybbNV~z=R6wyKCiUEVbcX)RByhRo>E=`3H4EJ zSt}_3yeL2?#8Jxv-vjo05<sf?UFG-rUWl;wZ`Si%i*>+I>B*Cdkd$L%WyJt?z%Msm z=mREXh<=M3+cpjch9AIu5!VJ5U?BrhL?K{~LF}%eqbk*^l<o_65sG|n7DP~ZY8!+j z&tz<|+?yB?gONFE-RMM4*oYpNT$OPl9333pJx5d~S;Dx&?}RUW$hc5z!1se?MO>0n zJ5f&em#a%jryCXLVa&+6GTYmqJWYL)8_?r(oLxmM;uAWq0=0^m5SL&rKEs5HIgIjm zXW{}6CcTD}jF1$^C#6fek=ZqH9}1s4?h3TmLJPoa1dFP<QU5mOAtyt}bLmf6?p?8f z+Qt+(meTSM)cmRmVI_MlV`<cz#vp4>nR8}azo|RbJzt7vBKy{@G={M>0Fo_SL~i=- zUY?{r`3;_22<w|2JiReYNylP`wEB?s_}N93L=D|;eB0@_wuHRNsgRtDU*}goRifbo zg|xZL-*jb-PcDZ^m%Q;z6g$WVw}w{JK?s`#L;FQ^baoSZ;YUUeAOjoD^;J09%Mz<^ zrmVp{mr}Vg#joHXJ;_EZ8-}r+8@1=RY1P4=Q#3p64oFLywp0mGgF^AFzfa)@O<m=F zJq$MO;gi{-OW}(#bEM`&R$gYL-ZCdGnKaHgwGytC=aLzlIlDjg<x{hAqBT+w`N%>G z#G9T4&B)Z(pNFZ(nA0}4_wGADu9nX46Hy)G9{PbqU+$+s_m9~0XDs+{Mu-*gj{})n z(48&CuJub>+DQzHFa_rBZt4m8WFW%bZL6^*RdP!U%`@?rfAhSk25gfjiYlAq;PCe% z`pWJ2>c+-^%Em(L)BN5*Y85pySnZq~TwooieX(W1BvabAmi_}XF+P88GLx|!14|vQ zATvWfor?O8e<nHfmuJ8wn0-%LwU$cM8$+PMY*rA#cCHR_+53{D)(nsl!!DORV^Y2O z2$nj0McfV+hBy;|*e%cN?OcH!qgnJa2>+<eQJbX_jZ&3jHEILr4R&5(VbTD2bUbR} z17}lv`_JE^nn6oIzzP9GNCg`gaHwWxc1Xc1>~+6cD;=~;mZD7n0xM0d7pCX-Nbk10 zj!*=3D}>yXlASX<B!Q!p&3OoM0q`2K&e`-Jtjpcl1_skr_3nPP%6#f?=Fl>iivreM z9_~@4>!JN#^^)oaDNjEH>Jmzuh_I+nqPl7wbT5cznJ4W!d@UHOa_M35*w}=_*StEZ z`H-3!P*}gca=L2J9m}c()p<*xw<L&;-2OI{IGB<pP3;$}`=N{#xkCM5csSzGZU7SN z_^B4X0Y;516MhWKU3hx+uF-LzZL}e_OZj1#$+P6X0*pJMB;O`9+NWXUx@Sv)_P>)c zX$o%#nw&0ZvOZQ7p{%Gh3cX7HplBZJ`VLc?=?>RX;ohJnzw29OiiTp!x54gkL}<T; zrTe4P%HX+Q?~GS$%vCltToREW77wg=Z9kSnf~#{#R{T1v)2s8M7*bkHn(0g%RstwO zFuQg>_xa`~OU<Jav3@GU7)r^77>%Otqa${W`pztR4jumtm9vq_jj~NJ4bo;Xldy&E zKa==v0<@Xc43>c+;4=~q5AB@DA8<UIQI?gH>-w6$`nk+{5+OJu0(q{{CIBQZ%A7KC z->^t>>6iZ_BmezFr#3XTz5{4DOozU;CL>yL5=u%Bh?ja_e1qX4jgCe;I>~A5EUIou zz<z8OL{VYm0LYq=Q4*{kKH?wfp`mXe7SB+O4i@oZj_LK)>2iqLzK5iB^q<DN`*6Jj zN{V<T<fHzUfCL55UQlbrnBb>@fmR%w+H*_N&+`Kh?dX7-0{ydRu#dL=CDov>zz5tT zlcap$=-*(!JUY@ohZ<2micBzFqJfNz&#cb*4S+(Ag3J+T0FO$5rM2RPsS>o`+qZ8$ z_R1R-EHpFxAN{5P8AQQ5)^QUf=hSv{GMrL_#y=xMpxSyEpBKAN9x_gNkKNwcuZi{r z_E|(xzN62cysd}}jH-epGbGAXS7Dax36l;J%n+{yaLNvwDG%!xQFiiUPgI#uLRK_j zuDedEs%r4}elEky|GAU43hyVUb>Q#BHr4RTpYN^VAo-3ax1QR^JOajk+sVNa0Z;@2 z1^5PB`q{cQxR-gROf{qr0aoSIFDYWY7zAc+es?Jsja4=yL4@y+IN<I2vhm6$3A4+i zBatMk%@y6%6NcyuST|nyDU+$k0!z#<jafLUCkPwCzW&s?fcYEqbs0_!80Uxl2n^-G zJpU@LaDS%!jBPh+L>DsN^#k3G`=ZMIIM}dW+G?tpDed}Iq8<wu2+-x;2@Qs-gJgm# zu!FQ$B{}qY8tk6Pob;(VBKt>KCqBBK>fEfK>&ufb^n#SMFt2C%1|J-lG~u3_u59vc z(L##aoH0t1Y`emE-MTAw{Y{UizBD*s=SiCN*dh{qN8b$qQzMeLxDzI1Bk)19Ogq5) z2Ax2%Tx*P!K;)hZ3z{<&4;(@G51{`qKnFq5K}K^~*C6G3X^r#x^{z)+O4;NQYWV!X z05+Q2nxKk>iYRC3zjbe?Gi;NhJxH%5c<ZjNuEFUM98;MH39?{n!~#>JKf->SFM1&s zHf#-z2uA@U6B{!t!ls_y24J~L{#8~<LO?{;p@eq&0`xL(N)$Gd)?s^;L?MHB!UN{X z$VT8EFO)z%DR3V0{(U9}R#de(EpETU0mp&0w$iQVQRXyLZ7L<_{OzNh)kIzpUAs14 zv(Ftr8VP^zm)j0EcvQkbKR-zPT}nJ;C6Pgk6<DLir{Y=~b^1Z=OqJrlBs0_FgWVC- z<*Uz=O_U`ko0z{bz0!J)65uX+zT1K^osxCQPUtjBZR=xC(=KP($R{vx`etOFpCF3h z*8~s0I|YsOeUOds0C`_OT0us}iuM;wrBS=1BbT56mFp4>2<yX>hRe*rN`i{E2YFl6 zY{!=B^C&fO^-S9o@lHKBNF|GCN6Z*iP*{qJ81VNt9akUmp+zW}Xy!C8pI9*YlSok} zgmGS}ON!D#>omDLz)kyJFx-FHE=75xjS?;4Zlvt4-1Fpn(F4N9UC_GC50g{n%MU{v z_HIw>3~CYA8Hy0z-BU9Xb`U9J-}h(ssv#g$Ake-cbvmsZf2G~kKMEDCq(rx=ikE23 zB^v)*Lp7<=r-Kl*<hEThWTgEPFSwVX9?DsD6ApL@zf0E#(<kY>F_I2g)ZRg6`MQS( zV7!ux?{mOxp%O7*<7qNELHvp9ixn5yvZ9An4j~(AV&rg&AKP7Qy9+Sh>z7J;N#(h* z!xpHJ@;)KKl1Cn-%80bCsfoJRz@-ke?4~iDr^oUB7H$EdBPf3$dhh;gUmx6XGLzWA z#V;JuH1Yopf)~ao-sxv3$A5{?+b<$zL9-sQ`3cr)O%ER46I`Q6u?qV1pIwsC3vxEL zr_W#S+GfgHEly8ADe!Kij`Y)G2m)a!Uz||0J~C~E@$QcP8yBHDt(wA_D@i76-YeIs zEt#-?Cj<C_j{RdazZ%}BN2aw)uvwQEVwqtFDe$*3e$u(TOh&|GXJ%oD7W{C%P3CpA z8loVPD&)!i^GD^_WJp>RnV<)TfZM)NR$f2=43P1_3A`&Nbe<j)V5NoXL?z;02_f?_ z`oaTPpHrpZx!69%;+kcQ*5ax&A_13}x+@z^8HFa>VOBSHPJ=4c?>4pAm8Jx(f(n*i zAu*nBdQoYh@yFCg=mijlf3yX>N;;9%aa1kRfE-mWrf^&%-&PoRu<k>r<$R4)i9CC$ zcRqz*#fJp3e(0K=Lash5l(l+l-D>qK-Do3P#l=;9xh6L<khT+yQb$TRDuI<SI-FY2 zA9(L4$jf{N<$D*9+D(Ofk{T+ukY=u0<9#|?q4pdw%SM$M@^3!j61?ia!r0{HSa;;L zlQ!>aND#99MXd5=0#V8C;E2u~RZPiyk`CfQfz!67Z~lz)`j*~NrcK$+L`j3Mg4j89 z2z2>C7H^Br*gU2bt+%d@{Yyr<Z)WR^XOvi2jM16%6WKR>bl}5V7AM+JU}tuDAd-Xq zupYg#@>9E+ao=#FBTsFk7c!uj5_xo_`<WsG!RRnc2$oXZ;=fe)UsL(mVd6r882Wgi zrNc(vvX8j2wMEI!AKgZUDCF_Bxo1Kw<?>86<w-Nm-*lOX{l`#5p|zy;?EE6IO{g>^ zT|H{FEG}Pou<Q$yP7M!MmdRqkP29ERubKXC=yirCd3h}YHd<!c|MI4v9LRR;h-8YI zm|$0<uC5?2r4H?Wu+Y^ThMoF*f3BWEI+CDkGGwy<(SmrYREq=kaV7aa{L5?5CdkOF zgFaGLNlE(MJAU9={BT!UUd}{JLehme$H&LFd%w507jd#VymznvdH_(wFi1&91#O+R z4@W2nS3C7!A+@!&Y(|}s#r|Pd)&IBvmWflVTU)`u<{NwF(gO3e*)-Gi`NuS0_0btf zVGdrAWXGWQEy=n;`{5-D<UCwW?BM3mvDYAR@0~$M8oVQ|9)X1{svdt`O%dGZN=Ve$ zLPC;Gga*^~%?hE{=RHn4Hhf53pk-sKHh-(|j%xzD_N4_Kq==6T6-Kx@Slwc|R!?6a zbKD09&ua$7j-8Gph};+2>vzt3TPw2g+dX+q`k+pI+e4uzhUQhDxy?gziUq1}HE0VU zACxoL(%DRQeuSEw@dzxJpgr;7M;G$mh_9ifRLz7Ku^-r`h7W~MrG!hsG#nLwCls=b zl!kXpHpi(B{D}Om6&7;pGaoFqce!ptS=wPQs<|tyefnBNJ-(u7Lx&nRayR6x0CYG= z+8AowHDeJEiUd4QC@4(dV(PYg;U<-PUBr$ieI**N_7*TWea-sVs{Nl-_ZNO+aPZG> zG#ra#d2%0}h$-3lG^}cCssX5jEJDUI+biM!Uo6r^i!OYZG&8H3zop^w#;28OYWbc% z`>`Tm;qE2bvrD96s&-fRZbvF6eUhP_p|wP{Xaa+B{xSlgx}sMO2?T%tds%VN?#Wff zzf1*Wc3BI!Tn8L6a==sp-hBhW5<RuQ#cG0bvP>tw7`-^EQm6I_IP+%;915hP{#3_( zOLOy8pjmv}svj)1mEN#j9G#v@Y<@{pEs)2ZtTZHpf;!PmSOte?Y747(PtqElHsxWT zJUK~|2vDRoVutp6q#3r~p1k<(k85gtb+o!OT~72^XmuV7t<HI#RiYI6TVH}CFJGh| z*{|4;7aC^aQ;5DHa_!tX^|MU}n;yoUUtRnNk+pE^po2sWjP)i=w^y+-%cm8{Lv_k# zq_Lw6ch7o@+%`I7sG9ELYbzi@om?@drUR#kv6+Sy4&wF?p<cnb<8zaJes7#7LM9&w z)HIV{3wx`GZPlSm>D&0#e2Dhj>gOIwal`m=%9IM5TRca47ZTIkqA`oe%7&=tls_9f zCxU7!+!DY@)AoT{zL7Z8pR6@XEAjH4;&o|0Hx!tRXBypjgddpR?_N`^_=Wc*QS5(p zs!DEnZ?V4!WJRZktK&EM)lA`wiDXePaa(_1cqr`Y;Ne-cme9ExBRuwKrwY)1-ID>u zxW$CCGMJcF%ef3{YHBJ8S7bb&v?_gMmE^ik%wL=#-F{8uAk%HI3jwo5^!*hR^p|e} zZYj(J>`MQ-sQ)kKSp6RxIJNUqnvXIs&Be)SXwY={n%TpouUG{I^;Y*~-M<CWzQFqj zgTnbomVp&CbrmZUayqxBCY}BqJe~q+-Uq30oInUjQdkhmRJtTl6E|+W<<DU_QPPPY zn`C4|l9^)o+t1{UHSkj6{xp$Av3_$m<Tf@83CH=uvOzDj#uLCl#-V-60Rv4K^#rI_ zyMb;s)q;qaIFkBB66-ky{Cb9wri%+_t;!SN%mQrHj~m7im-SmcFt^9D2fzyX?HG>> zG%aKXNC7!*rcv(i?}L@F-z<Pxnbl&1VC$Y<y$GU&5{Gt-m=XXnl9YsfJX`t6frOa2 z%6VI9X8wDU%%>b&i^uAz$%>>U21~knqk3q%ZrYHCt=Y!2=HPpsnf?5e$|}S0{l{#K z*F$!DF6~mTXTKRy4x1T*!*8KA3Lq=Xyu4<dZoRYNodOt(jTOBrpPA^PZD903KMCf= z+a?og?t3g4)RsyeNWsbv6V4<hYp8Dz97d?$Fi4<4z(KLkg@{LlARvg5Llq`5_bzcX zVs^>4(=}d*GNw$!oWHg~>3Cm|-T6Dn^XPO+c7ye;+bmZ5;Yi<_e`ROH?pvsiI$X9_ zZ@}){-MD+F?JB~U?7pl5YNy7AWT_Ba5;3{?8UaFMmleiG`_S2@&b`*4hv~f7VmvXr zTEt*1HB|rZPoxclofmEu%|~mq$BKA&gHFlY#2@`|m1&?hoLt#mlUVB7VY6Jp)bM7u z$X#z9O&^2Q2U*CoJs@$o8%H$re`&i?X#dpApITpQ*?$i43kVQRR4Y%#kH1KrnbFR# ztK<noDQ@Wgo0CK{VNKSuC>a=ZGl!s#&RjxXK8Js7sZy0druzOgE@%xgBhu@=x9W$I zKJ|%F()9qF&i=SX7@m@#|F`clgPmN0f9v@<ALm>wuAGIM_mi+JqDCIUrnn#WgDwz% zDrF0Q75v!jyq#yK?`qGrB6;!dVt*)M6PyYw!~Vf>Cab8}2h`gR08s%l972A@SVw@( zNO$<$b%u$2*<9&G@59L3I63%U7^C-%yOehl+zm-c2pk_*0anYQul1vFiOdOco+f8N zGA&;iKqHA3z}EOK`SoRc2P|XjAVKExZYPDbZ%U%%pVuhuu_;v;gnu14ph^tu?5n*x z)#EqW8dbHj?&BxJo!82T82RwJwF*GNf7kYr5!A(=t~~2W*!3O{<jmPTreMQ|>MSGT zZLq+d&W^TVytjl4sd>ZdbRA-)7^5>}8pZGo=`okdgIq?@SHQZdxUx$zLfQ)FyHV?D zz|iswiJ0VN>W9{x*5fp+%!^6&v%8Ha>?!BcZU`x^kUhc_tb){0jdaLLIW7VFu4ONq zuFcqV*mT2F;e~59{y2i7Kr-S}42Z&f3xad|HC*G%8U3pv=ZeVwObON&Lq5bkxr(X3 zE0_CcfKH)7Aw_jVM+vQ%UOzd(=eD6cS(N+G6?eMrD-pAF=d#{lyW|)BYkrsd-Khod zoa=tc&EmClA*M=08T8=G(EqbuVnCfzb#A{8z_}~A){yjmO8bnOii=C%JM2z`iiZck ziC>_YTSPwcZznY=N6thAqnu4s%)xiCI9Wj48D=;x1{+QZ;JI?tB-oRa)9Q;0#f2dZ zEm1#nC6;-g@AL2^&|e~U<GlWJiDyj}ebky^gO2R!v!^PIpd-W4<ww#pg9cm{?G`sC zX8q5-3(mld61cUGF2qct0driiJS1a9H3e!);0_=jCJfTH!_kVE*ZGtdb+oyVAGXg1 z>~V=^`IkA3u#3z6*#O}1k<2?f2?hAal0Ctwid+(>QRF!mP@TQKk`9zP%2|SJ?;}@V z-rn80u2rF-eGE6|<vJyh+n(K0wfv%H20f=c^B{)cCS8Mj@rCI-T0Xv4V1)tYb|Id7 z2TNDgYzKL8@s1x;Ym4&0Nv`YaCp<f~ja+FEMTS)+%apeXJxb&&I>ojt4+kcUzjWb7 z)h468@Mv=0L3MhWEnbt}wBJ54yd&+?zC|DBo$3+zUT9*4`qO!5y+7s=gzjYjC9yh? zB8~0e4a<Hs@cZqI+Xg==Tl{vd-#mOvRcSl}t{=L8>x-FsBMvmfa7nb<`yxSpyH^pa z=2x)NrmnD)G!PGS(xprv|6&Z06+gdGD$Elf8`xLl{BhBKzu_R*m(1Pb{cFC2@b(D| z4|tzgej&v@#M^O|eys(gqwtf*FiU(4v)!aODID%lk5l6tU2eP=VV)40=hOv~svQ(P z(rY`_>nU6uI8?!?s*txxAO3aQ|KA}1BOll+J%`vlL#~eSB8K(bTQ7jQQL-rKSM=Uz zM<pgw%ip}~`4WB}U{=yABlmCM>xIoTS&IeAR!1D$1?RExgyYkodak=D3kmIO&0=&l zAJokZF>yC;i-o2q<rx8-6x^Q3FGfmrkd+!5XtZ;S{|oSs6aYNtTo@`9e01uL;a9;q zq3&G#&JTPZxZlhLjwm?7F7h3VD8Z`y8UQp!M5U{!O~*g*?=0@#8aQsq?<iCK)5fYD zXsCW5KKtC%M8Gd~<e2Ssf(TL{Q`2HH>cLDkOjcIb$X#qeH|!)m#A9!oDKpj@RN2!S zB6`j*f*4NZ0sup1YKc=34X2HbfKT5t*(@Gz%C;EdB--OiHeIeFpJ6@EQ(J#sSoQjt znYaThz}5m9U$k8c*JZv6h3Z!0i)vZj<KSkGz7?|H4aYQp2!7MNFJ~-OWo)`)YSl^a z>2HgGBkH-m9&ZzN2#ZknR~h9GW35I?2n1CShIbm!i`SNDx~^zfXJT+e--U6em|)~( zZJ~V+I}>8>5XLOs@8hv2aZPDrL@h<C<6qWv2tFfC3tiQHu$Upz>8$-Kb9L3zP$VBC zd1}Z=4-SOfy~g@o*4n3H8z-?JSz@YX>PW<*Lfh**gvcY&2S$)a2bWz7;&yL%%;Np~ z3dj1v<AYGSQULA7J0wzoQ}keuM#lBHM|%~Q_u<#Xo_@x|FKC)bqJY@g>h~(I{<Qge zQJ)kE*E`!;V5{Y%|Ca$$R2$lhnOAnA5-FWY2RmK#odwO>I(DBMLz)OaK5bKreB)D@ zI>{l-zYTg(oT#-mAy%B4dMZ(JLP$D8Mka|yIvKSEA;>)n>oT<wv`41BR9+<5`L7fz zKYz~i-J~!18iV!MO%=)&Tg8)X<KO@ZpY~_KWLtRDSoCl5_1OspSM0&j(SA??kA5{S zuK|ydJnCV@cECrK<MdVI=La5ON**y&tDBoaV9djREetjffY>)s@FH0|$f!o2hleNf zDaR84LU7I|u|0Vtn1h}3Q;w+>KD}swy0Lo*qT(byt~B{5l<kBZmlsWlDJUpB?#_So zIY<fP$bv00t~Mu<&JyeaX>ZN7t|PsFeThHU7lpY9MJCyk(1-W3U5ksStlPu7vKDmr z1APUKwh^ye26FiJHap4Q*H{!OL0I8G$ow!p|GnNcqz4&CR@8bkP$&O|zPThHR~6zg zQ3#_N(=2aG%1&jsa#`E4a(k}J>wC_2!q{7s!{o(3)*1f6Ra99tqD$9X_%Xm{L4ci? z!+eodfOfAkU1QH^#t!4Hx{>%WVFDGcP@>pf<t2Y(M)Zk^H|R(vY@C%L3jDfDA&Ql3 zB5bSi%})I#@(|Xi?rtNU2{7mc6+9Jn238I41cWP!GT2Kw)E<Fc^0g4AnYwK(QY)<3 zjBd?a<#iS8Op&ah3D;j!&60EsLw_1D<Rm~XWyoEPF0e8q;<51$4W;F+a_0e-$7*yl z&}<#szN(Wm@7cD;9)d~RZgQogjEDs&M^W8+o`0966#c*2{1t?w<`r_O4tWhVZvU%5 z$&ZDW^a5d&dD~frjKB6^h=|@5exOHI_?yE<{QNXar2t>y<b<<iWO``{uYJj&WF#t% zJrlrQp8$vYH{u3Nisv1Dp0ksBgq6jVQ38!I#ng22-;gVM{5I=K)=e#95TI7x82%3c zY3u*ldvCYY8kX(z8!;m`AqAe6vM)?7b+{UI-}}oQ**c$r<6Ad~sI$2a;NQ44n#u4k zDoU{dkmd;ZUFd*ySR_}MXO?un7;qwZJGL&6>$u*ZBJ9n-{F>8%9NHQa5*Zl@OH2Q5 zV-Ryf_{XEE4!HA0qe49xNr*W9wt=uzo=;Aid>!43?=4OHRmiU`L*@>_AJRL`W>12z zUL=*9kXUA-_FVN@VswGJR^?|pj8T?0gVY{gKpo$yK?}LU>0lxB=i8oHj``YH^qy2V z**LaQ!CKB3VuA>H=QeO=E^(Yz=r``n{^3J>&`83w-hp0nVG3aGxzL+=<9;-d>ESR& z80yTM+wI4vy-<p@<0`&}p_PyS*qhyh-Ykm2-w7*36z%@r1XI)dEh75U@CV0cUO<Zw zvi}?rpG4Sd_0WAetZ8(!J1}T5M|Qm)bxy=qkwKUv7aNcU3;ABTa&w-3w7ZL7m5Qk3 z#DyezNy5OUKIm+WC|~K73=Zfi&G>&UUzk~wzen!y_C{FFY7Q7&u<GUTJ%-PDu7O)F zJ<_?sqc^)HJ^eNA5rh?1d90+HR8mxXWEe$M&U^jY4vx=nm!6oyLI8<hrOiS=bCEXY z;JKe*&>us=|AA+)iu}uRX@*jh@obGc&j3m0Rk=q@L8#o=!~~Q9sY}31g{_T$gn~fY z*w}=~$w`-0)Zt!}*M=-Jb8}yw5h6(_fx$BFCD$bG3$u6pNq4S9PhXXP#=7z4)_B2Z zWP6?#Nk*$d%`YGRw|<*Rir#t0^4Pw4V<wp){s9?;;D#DvxC8?9vhRbC+RK-y?1`C~ zQFV2ki|CgMdw?esn~-2Ou7?)@4Fdx#&P-<J=WAJ6UZexQeqSnwWlG<4z6_9W^H#-r zkJ4`IzLuFP(dY`R=MxZ!z<Q^yj`N7UEoeR5-#se!w|oZueW2xWAR|LV6W;dAE$-+* zqS+6`WR74@q55J3(J7oF_PMp%hJwRmW#v_4x2k|WAzQtAkIU<^$s#yp!2+?GvOsf- zE)VH$*&eBfJlXR0B*L@hje2p3m19iL4cX95klCx!Kq$5_H*(-ClZ7t9hP1}mFOh|P z{jeYOy?)Bm`1b;om9;Qa>#c|^_}HO^ixz)sz$RY?mbN`#mLS})u%x18z<vtMdtUg4 zGFaMCfarhm!L{zBB4YZmJ?6ukTQTLAL%z+!eBzJ6NeY5<6t`ezLxFtn+pECQ8%*EL zS|O-0M600tb#Yem&~h@q+AVxt{)1n)1TQZZEgA3Oo4DVi=hIwBa$FR4++xs~*MR`d zM>pN7`g-;K{V!MS@?WJ_4%_N3&+4thw3>OL{g%j>``5U|j_T?Hj~N)quIB_d%nGQO zC@{l@jzfK1$b28pAu;);m_*5eXM#$wiwR3#s+_EdGgdA1p_o2>?HWuw+fOi_w8Am` zvwHQ4g^(MbU_~b9ePEJ<9KA(>GezHD1a&zbM=liPR&BwJKiA{_N3QIQ|AU5{l?r~( zU1g_?O-hO`3>#t(mz_~*ZCzO1Ss^b|t@*dymlQRFo}J|bOk@1nQjdd$1-+G@`_Hl@ zPCgPmvRXc=ha;bz#Ut#8MXTv81V0gEB!`^0d83jjt^d~$490;xS;L47M-2^vRMJm@ zS(56}=vMIUi6p15IA4iwBQv-O77jG;h~{dTZsOwN4wnb|7S&FBxqy1lG9%(~L=OBU zx<+VidH~+>czL6>wN<;N8|X{?0VKk4*>hcF*dgpJ^8YaQmSI(BUEAnlNrQBEhjgcO zgOqf)q_l#xbV(y1-5{crbf<K;bSX%KfW(>0=h^4|uJi8eI^Q3!?GN{2>6~MZagRH; zB*fvk0OY#7ytZe1^RDCk+(R+c01Y_|BtR)9<^NV3H=u<g0KDzPEEF5-t%UH)qg!~= z_T~tm^gd@keqNkU&xGLBOrwh~=KpZ>GRVd#3kGGei1p6}^wIRcZDop(-LB_y?lo)4 zM;7G9)CBm$;)g5WHTZ*P7Oe@Za6x`0w6)GoUNxqt+@><zsA{}$62#lA3QVbAK9A#k z569?k_B7fH4S37R=S&M=T&QL(W^c<Jy0tT1&_HV%#m!TSUPh{flls>-t#Pilsyq>A z1|+oJ1GWY`6U;=dB4G4lj_I9XTfgai>AMn{9n9Z!YmWoDb$Gf$`S6H_O`o4h75P9I zN{JCbo}%Bx)s(x#tAP$DK{eM+xNU3<kZj~lPdUDUp$Q4J!*=h1k=D3Bn7sj!O?{n@ z+g@Hw_#NuC{E$bR&lF>`*tLhTQsjWvyxC3eDk(p~X}JP{h9*0gPD7lXTp9t;x*r}t zee+w|#l@5C;Y5U1VI1#YUSzXpe{tR$?O7m>eg$u_nM1?F^C9aI3L9Xh=EdY-vdVa+ zX>{>^`y1{Oh@6H3rwaIZ9qOBa%!g#^tj1R?CzK9Wr&PFblOC<`yw}(BULs@y+}v7< zrM0na3|g3B1&{Yfc>j;lWEeI{)Vx&}%!e@v@rJi#=wPMFaUvf9h**(Gc@AJ^uc06) z*yf|<?bV6x_oj>X%YfSx`3l4Ocj@9)=<XKw(FAN#3)R-?O``5Q=&9_+gVRVae1RMa z<geQthLi0vQh_iWgL(IyR!}@?n3xpUm^CP3zzfW8*<rPUj=V*CGL6W(bWUDbtRI>9 z`EEbyi=!_Z{J5A|xA*RCXwtr}S+`nT0&~}y+cg3Hghd}z<)y+YZ5Ux$T7o?;WZI~E zG$^S`JpJOSvcNP&Guhda7f<REcH!WTWe7YZwzQ7icL}{CH#=**1$}=k7JGdHPZnow z3JIT1;g33=zCEge5>)8@7xUAS1}_fOlbA6%x1s5N(qL(>GL*Y4&eE;=Ig8W5=qnbQ zgsLmbHG_||O={$!6zqtya>3`=>R>M%yG_J>0l$%UxqVnFWRGq0>OB0>C#Fc02wDh} zYvS9+G51Spga;iW-p`aIOK3K!AU(YG?`D7)urCl;IhjcoC|Xx~uUFa4x*E8UQHTv$ z>A|^q&tV#B&7xaim((Zt<p>QSz69%kvrl&byAG@eZnV!nf`pn``?`pT7|Ht@*@C9- zg#~PimzCv1(K!Fz)1T4BXJ&)};~Q;;v8S7Bri+9+Ivb7z8uT(L46=UlN@y&u2HzGI z(!9@v-Lw{w>O6mUETur{i&YN)`CMdJUWd70BEB_jH2{O+qZxB~;W}1YeKx<pUJWfO zDq2Y42Qj}!_pEVo;`c-V;FxM`077WstD)b7JHyW?^VNRliI<lb=NZtQYE&3Er>5UQ zyMc{bc<a+&4dxh4$Vh+)Omqznpe1l$J3cw#a)idxKp~(OrNUuz#!8r6QTSHd68b;G z*)<YcEoZeKHHz-N*t@S<Pf?b*y7bm_IcC>Pi$cF8)bKaM95&^`@>D3CIOfI|(DZ}` z>VEn3&@Y&5!-k$i^T{i}Gv;yHOoSB&QSi<SfN^>sSBJiy8r@s2q!pg#cr1UTy50FM zEL8@^-Y|>4%uAL@@mGV-W;}*p9W{*k%poR$Zh0a;>Y$T_<tudL>7{|K#1QX7G(<qw zw;-aH(0}Xvk$ySMse4r5sjMCXeM#j!Os-txVSW5F20v}F6mQI%*T@SBzA^HY=nDZa zeeXQ`dUK+g8pQeU8hmslB$n)dPf8W=enF@p0w+bS9z+N=qK&s18#*pkSLrE*p+Yc- z`Elgq$onhO^N6?{BmVzkF>>OP7dF&l!1D~Ofx7-uGhY2?LUf~bxjfK!>B>h42P~eq z!NJ=E4879uc*;})0+<OCRZ+3+g&i=%B&{fl0rtqG#=GnrD))~Kg4Zh%as5pJ6cL*$ zRva*{23P45B@v;>gY@NpkTNsa>ESo}R^9^hu06U@_qau70#<o|t!dd8BUz-Baz$U7 zKXGz$LIg5Yr(!_MAKm1+zX6bcB5{8Z70i=<gS+GfkTeiE4lg42o1y*w#=&u+I@H@> z)%WZ%s|-$zd3FqxJRV|pBD*Q}0+w$Fh6p@8V^n>6Sa;=#FwmZl(nAg?yB}Q+$^<t8 z0uh#lLunkXER${6r*roPMG1W=HZa01Hc~$*VEr&+Uu{BM9Lo-hGjY{IllgI`o&{O6 zcKksY^?7Om4Z?5K@R-LT@`9ZHPE$h$9{ejxq&u!_?|RlcE+II#8NeMDdOJXPNV?wt zMZx$13Z|Ui_kknG!$^-0ZOOkWRsq{;)lGS>pHy0kt1L41nnr;4tmSN;--oBI6^HRH zs5d$_v`x=QL$gQ25EVAhabWdkhMoxP1}!n|a@YEJapQ5CQSc4b4{;4Th@R17-XhQd z?MFt9_?R8Xr<SS&^c9*`+u#Mkns-rH^DYaT_x}&ts&S5JAPo<3UO|^{erN1?IhrF9 z8(3|PFOmIkxIN`x+<s4Y<TK6B0YPeJ;<B<IKNWV0SV4!azBp%?(x{;+BT)%2c6UBS zD7DG2{MBwsu5w+|NJb(7JZre|>FGrS^UA1;3src)wn~Xau3dl!bV%v?ow7==&$5;p zGE<)<3b=lsuH^{T;Iof7)+=l9P7wIdo5=~wI81+iH^SuuoF1xv{v6Q<96o@EN(1Vd znYHywbA^zGSfvST9EhmbD$_*3Wl-s8_4%#WlsNnfaDqLrtFXqGYF=QzI$9aw6+l8l zI#{ZY1BNRmqHs8n>9PK?G0aCu7(E|9w+(Kc$?i{zB7<4cdpf<^N`mSK>(^)cA<_vO zPE2!)2nG9$%AD2EU|%geZpv@+yA~UZ$`J%-7#iJiU(9Vp#@S`y2vdH-LmoPc+on#8 z864mwoLidgNsE=rf8<2R^uQNd?V>eM^$4Um+oAagU^XnFu6=-qM2D2tu?64!TFkfW zMzmEgfVTV~--WUYa%<qh7D7Rf!9r+15}8PfitzWVv2I3F6FK<jL7yKizS)VPnLe|F zB(AdOiCqV*htr$S`|``-orrf3Soa_Ggw1LZON$Bhz5}%+8+j;qyZl)ilO1IbkJStY zBb<a^(TMwHU`_#&lCD$i>#*0de!4U45G9qq|17bA(LFbN^>pk(14>d=z=LGg6(u87 zZ(4&2qIdiUWmA=9Mfe{sKpz#I)d5=f(yP6<fIG3ba7JEXL{JR*iAVFl_S+qzC;*6% z5HJ~Wk0na-{EsFgHvP#Tp~}ip7x%n5+iz{^c)8`sKq_87sQ7Il`9ENLq7_M&ow>fD zVP|{oXFCuW_Y+2|X-ZVeR!@}+{_;TpE9C>NH!CZYNUNBY<URXH7w^J9)E_Eh&|T9> ztG%NKFn_$v+BY^_s2e`y{P%D9`j_83z$7O;S<G5_1w5=fK(t+2MKH7gh_fZVyaa*O zN5^#BbRW#Tpnm0z@-Zi9w}Ze+5%uM7@8HaVMc`(ge#12ArKE)Fe}DZ#(HCvIR_BvJ zsZnFK;*J93SlkyFu-UG(2$2Z9i~+vdU5goYE-{Kl1>aDqBz6~2nQ%gx#G!VC$Jf)| z^MB$(BdUZtU(cgDzL~<@VViIgJUxFN&3Te!DvL|8PBY~09EQyz-e*V=)~`tWm?{@& zWTN%veE9u`ZSL$YWuqS(aw;nE4Tc+XIgidYoKFV|4|zq*&JyCUV)RD6W&tZ`XB>!c z+2l*x**m9c;Bx&q*mrHi49$V-p=HqPyN0dfU;Y?Po*$E=gVgMdghcd!G};%leFRY) z#aoVgUlH`28|;;YQ(t-PBA=KkmL2o$F%6o?2mOxiI_xy=JT&_nv2AVm0Nh|LP`9=l z_e9QUCe!@o;d7_HdR}!b$sG2nj$Pr0W30%iG|lRvC5{c%R|gq}=j|DePOB?Gz67rE zOo$73y~mWxviUUe)f%hi$DfI51i7<kR4_957&*vBSBI}ER+<?Ad|HX-OJflGf$Ep< zk8u5-4kG9<>g%}BL_Rt?D){PL1U|WlC!lH;<NAMFJ{{A;c1BuvPgXN+TWaCm+|RIx z$yuDR&|Cjpdv}lah2<e}KZB3x7=j1+YP0azW@-{2XMW!MJMa#+nwyZ(10Kfw0?Nq~ z*ULI8%nevKO*Xo-wS81*#oGM){gdaf>Z`l9>^og*>UFLClkxs@57IcmK^(5X+{qBS zklZow_S|6u_YjmMUcdu(TCDA4`P>3UEB^2@S$7OL(U=3@8I?zvXlRcZU#6y~f18dY zivc1Z6zjocY~EymC~OWS(7s*tUC=W#qtdA~`Zg`E(f8lok@AKiQ_1pc6Cjaz#{J?D z*jK*xEK$w!$PWMp2e7tHQPhqb+bbLFCa2y|K}AuljQZNf7v?Wsi;YDVqt^#2-(?et z+CdiMRqG|GYDU@mw|W_msZ2%j%Y64C)4xOzdERIvd|wbKRSCn?1VoBap^8Hu%6@nK zqf3t9xjAR4h;R9i!`_#V4-B1+2kaoweOxz??&l;U)Bb)wCV&EI`=WBn7R+TkX~tVl z9^uB$k9B0Y6yo{pxwhnA<}BwgX${#Q%qTYSrwLx7=sY?PZv$j*_{ZEiq67Kezx;Sg zX`^4(?Lv01C-CSjP83`57SrX4F+vIhM>lk81*HJvR>}$}Qbn0l<@?zjxCY<v^5%uD zn#O5R-UarjDv8y2O4sQxRn-QSo$k^>t{nCC3x>B+^lt6F8>T*y=ZV=_^~?Ol5sVTc zxsjn*mQBgA2MGoJoQ_vWO}x^5ah)M2mfl51RQLVQ7OTA<34e9&cMt=7x_{O;{|xz9 zaIUbDM`hjqgdP9X1~sU*)<g7}3V&~i<L=_pQs>;#^RFiwW-=0=z)@5Glv32PCAVhx zHy&+^AeHK*p-H%Vq*ouy&`O3J;9#2a<lD);bC{HC{Us-EsES|oGK8AVBvQ)XF3?K< z^V$EeKFs_X=)h(}zO|*n7ZN~#^ne*=z`C|(1`iJ(zh}zT+YYSwi`8;QJ-p!&5Z1v8 zK*evM*9)Wrd@<{UO3p0<TA1tUmSQopTh4p1DB!*T0)LM7TO2^y38iZbbyI={7AL_f z>7UDAo~sMX50@t=)YuYJRf(YwxPZ-VfGQJ+6cqFE%6^B{vAtlO>)UzWb?WxG$BKQ( zEWhVw-H$4!PN|)1ZDeC#^w)J8hvlOmCn?R9eF{<=UZ$wyOj&BdSUM=IK1aBj7VHo` z3@3rgexiUWWwYAQ)!p^)3xx6IP>?x$IP@jJ79Ys>-*DkQotW*!*2&f$FO=kjKGBhL zF@xNS8m}MNB9YSX7jv4)GKA9pWhp8Fmg1&b>a;x7#k8i1;VTkMS)7MWWE)-5w=>Zz zQhfGFQTpnU4PQ?zhp*Y8Lit&7`W<EcZjPjS#27yfe@<EzGJt65yuHS&C)H_{{exca zOQ`5)sl`SO&4{#pl(KkJWcs^1L5OGd=CdrtQL~^Xwx`(7kw5iqUHhet5yV$sQ2qIl zO3~08{CGc4Tu#7Ilm{~`{ukB4zYN8|c$DWJg`ha}MX9Ck-5V~uf{l2eS|;?ceYwha z0q6X1K^m@>`F~4a0=;q9+&d+I`p>km6lEUdh&_`rkSlhB?qHWSH?tUJ?rD#U#!slz zP$7dR2oIi?m>NnC3zwBLGLnkiOcw0u93>DFGf_g%vao?^4du*6rX4GFqG1nhLeeK; z=<Jt{@#<~$e%*52rg98s`v20ixoJVS7dr3tGuTRp05u%ORwN3duSvv;H~8E3gW@9# z+J3MCM@Z%{rMSGjO#BkxJQYpIVX@NU?S}bW;{@pCF`QdY!pykbFV=tdoWdT@VioU8 zqo#QzAfliZbC_i{YV*~1ysf_Mj|>M)b!?z3kWONFW@atB)N5tTNsJ`FyTHwk5z4>; zCDwIy*<n4v(g)>1wrD-Ns@70{O15N6Hd&EZGxA~kP5V2IXzB5ha76<vEr42~$XEGZ zJ;@w4_q*4j_$BbEH{6=eND6e?ME*aSD~NHzEcGk)In2K!xMVr+hX4E|lIu65JMkro z!$=WD9a3(!;r*9|=v|8$I*Wxpt|ozc(!T7*Hu3sa1|2=W9Pb$w+#J6uuJP?yk!wIq z_A=UtV;TQjZ1n_CLC5m;>fgdc5DZC&(Y<p!-#VpfFHL8M!b42iHD3OxF158rVKJ0% zxQ5Tw93j}7Z{$}>N@J^;Q3<>Fdvabx!cI=t*7yL0&>QqkX$C-p(3Y=|{__eMqcRNO zp1C$Ip5NQQ1EMsHYT<R|bnA7VcDS0El~rZoO#}*931sqLTDHKytD|uLlqU=U&^X$H zycyeVN~SSnHda;uDTGtp?tY66d#?hB(%4{<1AZVfIy$rMbMu**nH_fx&CTy^=>VA! z1%>0K&hAd?6YcVzMh?vJ7ekYiI3^}xC@)YF)HF45fHe00@h_nL;|S3&Rv`v2VyXH| zm@u1PpI|E^HMO`IV{oQpVgeiVQ%#ibsDCf)y1RVk=H@m@+t@tYz#Zh`;#zat>T~0A z@!Y8V2yiKqSFc|6Hf{bK=GxhDI}sKX+?z!v<aiP6+~Vt2P_-jT1(p$wjo#%dUmc0X z_4M`2xdoJ>#KDQZ;wd1O#Z~w=(p#~wn{ZKKr!%we;1oQbQD-Jinyam?>#n>5;`qjG zc^`^L>YWG1#^jBRmeJ-#MMce=oUW2A8yg!V-o3m3Et<XmS}=&{kSu#&q~Yv3@eQ2x z&%WNl3pAsE?z_U0lJ34fxj7yeaic?{fd1cJ>C`WxYYbgv<mBFxCM709*>%}DD#Ou{ zk#i|RIUGqiP~iA}OWxo6f8pP7=TM{`V0H(i5tqCQh72859VE9+>+bGuB3JTJ%jKd& zsb&#s7SbK%Bq-Kz!DNK38~&rR!N5&?SxDqHTaL)wcIAls+}5^>%WnkW#8tdcA0h~j zNEq1fqM4T~kOC2KFRT{^y)B475~BsvKre@QW%#d^R*}V8yMkt21tjb>X|Tb)9?!3` zQI_C75f|}lpT#VYT9JCx&9R%|l+Hc&S!Qozv*F`*z~coxTauD;TP`a2=fWv)?Tj8O zC-ye(GYk+SA9xnIPo0sD&wKHd43O~0?WRb4K{y0`5cl5i)bH=jAI6^)M^}MIShB^G zXiFXY@eO+C_~_@{3Ua@xQzQkRb8Hy4H(cV!RGS(hVGb>06z{CvE;&~3;aL}riz;1o zqR?sERHA22gfQO!=GyW74KF168#@g;Q?|_FWxeRD!sZZ#pJ5mg7zK7(abtZE+U>Nl z>rKP;$a0^5DIaH-$T<8sB#9vkz|%l?x5^;~9P$^p!_t)>Fb9PiyX!TLdH2r=glE>; z15_*YzQr~DUEk7zuYjsY=w@d{DJx@k9W^uG{*Ws<{pQjaiF&i2Dwj1&p9DSz@gJn* zf7WJJ5-@zP@%$rqha5HF;qr)(R#mBKe=E^qM)LAWW$h^*++t?#L~+S?7I?Yb0T%O~ zP?TQsm6a6$^tY)B=9LC7rFq`pUK9F{IB`18l;a=GH>Qnd3Y~R{s=9oJ#RDzk2<NDY z-zC3ZUJe27xdm?9gY=`@@HbuE-JYb2g04{;fE8~Ba`VtCE5n}dxm=%G-`@W@;z%Ro zvIseRSZxmg>xGkW)%b!^Sg=Ub8*z@}&RD<WHMmNX)~NaUd751}ha!;Bx7MSuM+NP} z0n~FzO{I*gDeI?WL*0+xz4Nftot4Gm5(G<+5GTY+RasdJ=Pg`qo13r?B5&YRef^7I zUs4-uE#wan<^X5Nu*=5?Nr%gg!N9qp-3%seN6dQde*bWLrX~tpgk`b;X+aWTkFf-9 z4}Xr@T><$R$7dLPvGo*P6S%ouVz)iZfk+w`sa@cD+7*gM7<J&P^ppPaiJE0ZAQ6nW z8q9qi{|H?EEp>z_NhYWp9>iBnKvf|MSJVN#OjUE2p&QgMM8xmTalv>;zl0^k)he*+ z`<!uQz}RxPr!xA@#3<lPd(K@2{P`uY+~WOwG7}MKiC(XG%f}PJOoo3g@<}@4TW^6# z7kLE*<mZ&K#6ZFE0_N{|yxo7%0^-raa&mIklWYt1VVzSAyEwfwa!?G5prAYdtL5t> zdbThX9={mA<&XTb`&CI?rI|lwr(a5PpR{Y<m#&m@FsRx_PTGgFTKfZ(-1p{@7;zgx zi8}~KNtIrT-RJ5v?b^5#!#o;o3)GU0HWl5JhX&$Q7C`6tx7A;-5ykk`kQ7e3C%_?~ zN>ahzFz9=*^rO16lH-HdRAcL{wJwpxf0%0U>S+DRS&?x~(xN4;xhI43z;RDVU3rz$ zj7jDbZtng<4SSm^)Q0i74{ZIyg(p30B1<rJpUb_n{1w{WLSN1ZstM9P*SlECw|oIh z%3A2wjU%2c;Xi{OpY%1~O%x3VZ~$I00p2Ig|L{<OF+IMzYa?HECe~V<I7N4rr8u<^ zJ;M5Wy$4=!@W<|%UW8wZb&}y2zZ9<2;2fg=1;J`j`Fo`<K59L?##T^Lly!3}zlGvb z(Wu_W;ldRLBc~}*J$Zu4sG13|24Rlp;N;2z`ihy8@m1XxP}R=YJDXDbNQa?Mh_ngz z!?e2~yvmfQD{@f#lY#aTFTwQ}JjfRR_TA0?=azZ*U{XH&Lfmgm_M4_bo%w+Lq9Jkk zI*e?Yp&OXMb*-!baheX};lK+XbAV!L02>i$qX{A!^#}=7Rd&D}(^BmFyBeq4`8c>i zk^tDNauNm1vN(F~e+as!W|*^u^DL;IBsFk;@<+g3dqY~;?|r|<0vU*`&jEIJ2&D8V z5PM#d@7|(}qNBg}#`7L=B&6-_*^&vl70S4tz27X=D#HQxTX2SkOBT}8{qeZc5s{J1 zbTSXs)T-)PxUG4?$OBp6XTbnJ%Qi)^#)$@{6(0YLDiA%_74Z%AY_UVGd^H-}^TCf# z&BQdo>Tq%Qd)0EYFSdFp%jd_Wp>u2KoQcn4@cOoFDk~^-WIy%s*xk@10}nUQ^*coF zo`v=B2i*H+eGwQ6Ztmv>3cFPHsM=@Hz_D?#vwhf}D^a67|FuMznwomcIE7wA1Ar16 z?Uzca96{&eu4X%qzL)P)k5rQScMTEO>V$^4iZCABpC)Co3`_JirXU-;kp(#PK74qu z`|ByI$u#a~JbyeTb3AK`O29;#0%jS3MS?J{5Tz5pW6yjw&Mb(xM(b948p<c#<-!_W z2Pq8keDQOUWVCLz?@N{6#A0}xZ+gB?qbmU8;7}LC^G{_Zf1J=zg<eq-n!QR9OB1N4 zBoR49or^(aTwCn3OFPSIfZ@zWO~YN~zxR_kX`^R~Y2Z3qlBULAF97D4Rh24y-H#wd zw6EqmPS1S^z|d06+V~P*<Fh1X4Dk~Bc?P2;@+6t`-wRNq3=Iq$PxV6QtHvP=T>eLx z_CF8Ca0F~+J^eXjqKlJzW^dlh>cuXRkYU?YMMVYZ&q`$0Ij(Ia6265(7*l@(o)-x@ zMm_Z>@V>9jZVmP4Nrz(*{?4~06!>b<8-@61Qw9a(I2zmD=1K;izofBD!9)Yf?OWgP zh+lyTHSzG~c2K4SA|rw3vK*x!G!P7mT_C%_>zeI(F*-2Vc?;_ECeQ`9?6?Jk(}*4r zz-%fxB4U+6MGNI}RZB=oVJnCTLFpYF#IYV4|72ut`(zdMLUQnPo)Ndg@Ha`lt7mj} zr&~CQX0FNgb=^HAeCE$SWFlB9h4nB}g+izpH|{{--THcWxE!P7-u3O>pWmKsF;9UO zXyTKhfS@4WUDqQ&^!@3wU>4oV<h@i}t#$a(A5>5!DuDdql*@2sD1m9_Im)E35Vm?E z#0;)pV8!dvBSiGTl9G~4b?&%r(18l)2{)2ux~znt;G(}-kE7;#I2#k6Z}StmzuLr< z4nq^(DTouBY!w`wwgkp2g5IZvWj0Y+V<_hA`qd$2arrS|%;Vt(%Yo%n;59+Ppqhyc zq&u7F<E%9>%+E%{Mro1=%Dh|Ua3gi#V>WE{eAkQ0>l|nJXbp+<`Li-#|DTb)X-ylf z6rED%D(*ub9apji6D!glb3420U`7$z{Zf78dz)!lo+hQJ+)2nb=hWE~nApd4`xFI2 z5C#qmK#!H@Q|w~ib<3HVNpr-b=Ry=l#^C`o7lQdqnyWihig}+pKCXe1z<e~!{Yrkz z{djqjjf={I<|d`2YmX5tbX8}pZ_-jN-je!dfL8g0nacf@({zdWpd&#EXp>yU@SYMH zS+hd)D9Gz8dYMf5x0xn>e&-|Nx@XFlxhG2{BK!;o_Fia&!JQ=Xl*ueh(7P9pdmKD` z!r{!h?EsJ$M}h)*V#cOH`!SG4<6k)4DOg~B4Z6`z!OPMh0fG?h1g@A0Wrx|`Z`g;2 zm6M2)EBI<uAdwUtGFEO()#bP)(JqvkqQXKd8XBo1JyqL0kdhYaPY5hLYhH}C9Uo<y z8Gqn+LbrK+w)5;36l#tbOjOja{m<<t1BgSuZPz;=2ybQO<q1!Zc6If7qH!19U0o+W z90AP31(Y@#eJ^kCPEfleBO}*Bu%d-cytnarUoJNctnTANwt9GBvbrowOUp;5rlwn4 zTU7k~Ulk1TpJ<J<kZi24=SA}g2{jJr2~o#^YDmDMV|(0{8)PH@-yrew;ib7bw9Btw zVH~>+d2mAgTWmch;1B8O&9_^d%Vo}sO9X_qN^=L7nV8S0!9`dDhE^Dr9OJKDc26_c z&;V$6L9Uh~Hj_2CFCyrgwh?koA?g(f8WKW%mDjId3knPWymj$Y)j*mvbbT9q6SC7N zbVEc^{kDN(ACv@sE2da#Xf^DPuntN{axwrmJlNHnXu-$<tdO3p-PW^F5!vj3NK{Su z7cdqTh-zheTasuDi`RNyqKd!>WjY5-f_sZ2IFw&;HT_vb?i^axoUXXjz^}y>5b_A9 z?;Vnwk-mbgpJK5nZlI7G8vqdh$xz(B^NZm$xWhIUav2FqIN`BkPf7T5tO)Ti&#Ae! zen!o4SLxnLX)Ze%mgJ<aRtw)9+WT=8-<CTyncZlXmz~su7j_Yc(v0R-HTkBh1w_e8 z$gnv+;~!j{4YC(JH|yAI#q9hZT=;c0A`}Sf)u+w3N_Q{JOpffwA9{)cD+iK)BEu{w z62TZzZitwS<qU0X_}%Nv`sWl=l)&(IjD;u`k-cMCr;xLx-Vy9t6y_PP&fha_MJ`ha zY5PC^^+K(WYO%cM53cnwJRdNH%Z_g2;h-7m`6Ja^1Kc%&=X4StDMH3Q!io*Y1)DmD zsFB&Ei_L7=M5Z1mBG4R@!CBr=`$2%aF5FNQi9P~e<iGSWr6K>R^yP(nF_R!WS7v!C zUm%&sjU`Io)cK{mnDH?_!q=!QBOr;=tu$gzHV2ppEH8V$jZUFAk~dR4fCA{>Ie6uB zuw*pe`UWFDeqz<kG#rjW4q%^UwDv=gm;sDG4Q)~PeY0N=IGOo?#=?;ZA3xN&{qCze zMkbLQ_%m2UM92>N4;1!*J3NbWlqKe8!0|+ttb29U^yuguba&!kfbCAxV=3@_Hw6HK zg0Okls{fx)Ju|B<-tONGnA3)yt--@L8o1<>aZs`u)Q-oN1S22Q$A6pvU6>A|LityK zcM?}to<9+&o0&=T1v-l`l937dwGROl8w$74yK44S+h%r=Rro9gEu>G4OT*q|xMNtL zK?r8vyLORf#tSmS-`{p-IlDex1q_t<4<G(?9Yx^;>>|4Q3t~sV-*su<d_z`=$)sIA z-F|s`dg{^oXg3@;GvF^(s)5o^UJ)9Yc_sLslrf^?LND`5K}zcFC?2C1n0VDugIYu% z(-Z(2zfvoc>Lyr1S&<23(5pd}2q0S#Zo6u@jH=Tp(jV{EWI*jVVe`%a8F8KCdD5m0 zgj62t%h#8{s4kS>u%Z=onR!Y8Q@LISFH76aPnIOdWZraK<K;RBUB&LSTR=|8F{g)< zn0h~Vb+Xy{eYYSO8FaG1TJ9NE(0gPV@-9Z6uj{pRNAaGr3%Vi}>I&k##jm^YYk2D- zZhTRtet(zB#M=lk;Tz9CV^aBn4VgW4I={XZhnqox+`oJ5XR{X0It%5`wypI*vQfC+ zn>jigcfLd@<ix+i+D)=p@FTv&`~*#E&jyEb?d?Km!Gf7e_B1h{UO*xIyUbz5zXlgr z%)g`)zS?XV+XJhCHfxGm%C;!vgon!AMx<P~56pUZCV>Oh!J0e*<Lx_7E;)>XIoNw5 zIPP~TV}4qun%R5_s+#271iL;ewU^e%H;d1ZnaA8S)Vq%=J0niyvFT4=7pbp{*8uRL z>y&rIpwiH@c8?z?>5b0YSi53de(bCFe@UvofA`$7u@%rLnSXJ#(vpJp|37uLH9h3) z=;-LE`JM(Rc>Wk(T+r(V*i94QXV@bjthAD5mad-3gU%nolM|m&c6!#^?r-*`@_hlr zUFLg}Ct8)ztAjMvhQsUNr3lSNw{09DHySM9;^S?e3B>uJ(*1tBX4DDcI%Ph#jsne! z2asa~Nzo7*y>xE9AOLt+lvPq@W(*K(5Cf!)BWArv1kfFdUz@ms{S0C^xAov&mTqFH z+-H;44yX93*Dm{8%|~t09v<gt?HCvsh>RrQ2y%vXOqE0`3=QzwlvnJ|FD-V=%^A*e zX}bKgg<7*-xp0UW{-$GGj(_0DRkXtbqXcn_L%|if2dz2?3YE#b55m<6F!8wER&wzp zn;UEOMJMK#IcfoBaxfi0XdfZ{nh7T-BO?-ETzp(<JZk-&Z336E@g@cE!+yMZ&cd=- zZ0DcD?rBpoD+USyqQBTQQknbA=}^?)$E&slg$bmF6p-TKg@8Lq;Qd{91)o#23A`0S zxMfMFL{H!F3VZBPDIx#I*sGMOO^^{dc1(Ql=h|L7eC+z$SC8_>WV&aO@kI`}2pYgi z-&}|E_eLFTpeC}klI4SGgZYXIWkRT29FTTG{X(NpG+S%|OLd>Oa|u^m2I)<`2G@*= z<kd~O-s$G5LcGK+#~3Zvg#mhhZ64nmQ%?phX&CnZ!SB%jnBtwkzRZ@U|GqBAVo(7Z z7`hIgDDxa2lY)wMtxtqD?7yOaw(Lxpxii4F2Wv8a)Q7!$(|it31e<M8UXeG4DkRWf z@m3aTeEk-#cVg}&{4iUO{#?z{XI|C!>_x@iM!>ta6m|b`8dkge)uE>&cS&8W0kGG? zI0P=QohGtO(1f`5$_kf3+gc}K<1uI>-F+!G=dY;s&gySWnfl+<*^v$9*-UBZaeifp zgj9z)F<iz1!Fe8xEW}D=Z-uW;_b)1@TpSn;TfMzJF`q|?mWCUVBsL6o{+k*FJ7;EO zVdwt|vI~s|;PClSzu%DA%BF+~89@xwkNZg6PapNFXn_9|A_vE3DaZ3jIj}k+s;&A3 z{An9N9yA*N{xs%cMe#pefU;n@SQ7kGS{*TjcfkFu#qSS441AKp;OFNTK55T~zsRN> zj^zKjbkzs4j`)19nUo;$OGX1T`3;*O0Sy@wlY_U=ZmPHxtO}~!pFe-@`C&d=T(C+~ z)gvB*#tc2^{2aZ9k&c*0`_g^z`p*x1{uIA8yxd$EhJ#nKK%zYQt@HMSKzy;bDdqIc z5NXyRA)A)dSJ{#te0d2+xDN6At4GUYXYyb%x(+g~X+$cW*KY_9*G9J+@AGU%GD1fU zvyZTI1QvmDu5r8GWI|3(9H159;|Oyo*|sskNvPUp<7R>vt27cOawuom&W{8CQOiCJ zJeQz>Mo$~|Z_jqe1onJ2$}T{6N(QJ)boy7olCC!bn^xxHVKYwL0u+<{t1X~zAQi~i z+W(K?-A6@!^z`BD1S!!>aNxDW;USOpi^5{{8(hpIfB!<Sktvv#0@Z&;Q*p3c3))Di zV?KM6<N8#R<V5`FiT1?HN%V8(TcYr?vNBtLUVpR?;hrxZBoo04aJa4hY19Y#vEAD) zHPJHU8nWlW=U^>oe$kl(gNG1uF44;Dz**85GWPCoe}snu;l4?&3U~g4g8b(TiYSpc zRn1Qt*nuC&yv!?gc&yHkh%*onLD{9VKEBW#0qc%>(N_47EWb??9M^Dinz)k?oIRec z5RAbU*ytgAIAeVjmwi@MTqCgO`GJO2SQ`bx-WfP<nuZ2x6MoHCJX?pGC-}xF9-MZ- z08k&0Ep@F3n+t!|UC4hZl|gT4qx4sD^#mrlg67NVz{%$S3or5sHCX6By7>5nSvZ)t z+T9&^vi5gWpED@`dDA&Nt8)X)aAa{o)6}sG%C8hgP*9N9W~>1EAPdNMuV)_YF1YId zD2NS4*Vi-x0>2TOLB*pu_!S*+HU(_U6VlSIx>_inzS+BA1_!${jRtbnjVTUhjg8Qj z75_g@t<Wf0{7sk%g3EdrT6-lJ`$%|g)or81;5xtxwE)~D`q>-c!m-AW*yf8)%0En1 zRsGcG5~N0Lul~q1+X{qxq;#(QC?Ze{nmN9kRH~=lb#e~W5zKEKil0Oe(K7!G_Ug#b zlf`McKWF9_Yr*`4O8o4T5dt7DYo`$xS-phsA%ILX{`_9^Lam|s{p}jjTz_v*Pe*@$ z$^1UnP0!K?0cRMh8$3ixN{XiHyLlaawghNWQvBy!TQV~M)H0r5P(1%q(wROfLDLZz z*z||$wP1?d8d8YdN0_a3IZK&7V<7>YL}f%K@*4Q2z!I`zFvFzD0|ijgQ|JT^#Z>h4 z(&&C)113Tw_&e55ZV_-=EX2hYxWrQa5|6v#?&ikLuTrp^0H$LP3uFienIIMj%8{G< zxgEKDE%ZCT@~<T0HRTzgg07iFFl=|WngIY?n|`G}g<I~FjU7w}1n&jBlW2o{3-4PX zHLr}izSA)urZsf5W{PL1>Al4cDzw+wLY-LdKUs)AUZ`WDbLibIbiI&V$X!X}|46=f z@f^qZ9gy;PJr+Sy?Yp-k?c+4Y61AYV@npmNmd!~G*U`mC02&^LRlGaKbJ>q>vjez$ zV}@;^h#3{=g^VRM^iRptiGL_4DoOaNpj&KiCd6aKHOFmGg(kBj39nX*X1vRZEc@iE z5EF4yA5AiR24;%WB0nbkQqk>>Xo;1_2kG_L{T$*l6$2Xq1}_8}bPgi*-JA2CFc0Ii zF9nZPd0nVo{W^SZEAujr%=oGKsw*P@IU4-;*4>LpZvQVpLgCEXzgEVG<=pAE{-)sm ziau?2ku>ojpBAoTceV+rC{nYKEVK%gj`{DOUrr7iS(Ox1{jj4+eEvKkBQ>Vyq3Sik zxQ6j}iU&sOLnWNI2yDG|>dOWdp<*oxK?E#^mCT1&g$)EumAyq06C0}WSP?j{(_1`? zO%0?NzAdLaxWCA$(_8h~&SY!%vuXIVBJ}Ww8oF+t5TU3d=jJAuzoFuN*4L}vwE2GT zX#kn9m#e<4d!&RawCP+rLlEq6;11aBtsdtp{L7kAf*QVI*(KK>sKW`VV$&MDWaJ+h zh3Ny)6jd@l5C+zlgwwTsE2~B>)p`QR=<J4?Dw(k;l3R?!{V6@bsB1dhR16l`BoC<R z?tJ*f#F5~7S^e>OwHJ@FZAW6U(|x=D<gY;glVQD$auB&F*f3%<R%C?WfB*h{0;CI& zz2XI>FHio}IA?oj&!4o2)qYw5@eIc-QE%@4yb@qKTG~r%hXrSh91<c6F0S_bqH2?F z84e@kGs5)*PaM3=74Qg6l2Q{xT((9W$YRyAv6|jDBJ`zvhM+yS^S6@z5RH7S2z!Kp z6)DUyWkC}d!y}e!m30{!<V4litek?~#heoF?Iu;)01__sgV*hGH>OaJ1~1q7#f2>J zeD@xT1Y~l6UD;DwIXFBPAOs7G+PT7r&>Je|(j>J!<S#y7(;q||hF^2$S-<+6);b?{ z2eRItn<BM(oj}3vLkgtDxABK$tJl~(Q_0{(VR%b1k1dQga=E~F3e1G)T`NCxW{XLd z6c(BR?AYt~VV0Opt$_$||EYCc(EQk#!2omI01w=pck5TQ^l|Hxjo!Mf(IruU_9GP$ zfl$SRq_KN}`ez+7a5>@u??C&Ab|7n}83Pg|%6p&vAkM@)-`-8Ctl8GZjRGP|JLCls z6rSHtWz8JJ(%wDn4#BCu94+OvqVChmd!Mpp5ZEJf<u|E$5J3D+uxf@4VkOwnG1L55 zZp=O|N@~AO@eA7HuA)hJi1zQQx?S6YcLZ;w)4P7{PoxRwvPUUi%qPP`-2HoGa3Ct4 z4sqW5KKY4ybz>?rRvnL)+g$PIoW;9_zQBk0Mi5-H^pVZ77ad<5H12)+<AW&kE`3>1 zHc*)|8J{*wI-%TPOBV;~s(ZXY%+_!th`eqQ{jjjuxmbW8H*y%n;Yk0@WJUGpQ&+O- z=Z%$pg^At=$Ag0eeP?(bj0y|^@8_C29;mpGgQthAT?l^JwsD%q{pP;AQ7(j<FF5Os z<)DF-3E0w*adZTE$KEEnjh0gOJ81~T$`$VJ==YA``UC~_UK%mUiej{ZFRq~_4z%be zN0Eb?2hP@h%_N@uu<I3=0IruK?f>2N8b8JaOF8V0>RN_h2afAM515>=wv4&pfeGdN zO)6^K*AC;ka7IQ(UPC;vJXs8~0h_U<B~oy8MrZoLuO0WkqA<rE-}~#`#!74!N`k;j zXy5^47l@8(wmSqlDUAL?%Q!fRPU#G;PXV~E!W2Iv+}??i^K$7c+fpqUgA2e0;hIhR z;SR(^oq#6D(H-22SSSLjZCy44c90s1Om7bjKfj5qnaZ<g8V&I!8>jgp4M2zxLCTSl zl?1`fNc(*ZXHr7Pf}tkO_`>6fhNi2xhEyNyib*igb%$Jtk;8aOP3@DqL{vb$41ClE zY}!DeyBRPMedd>2?5~I`&7l6g(apM&-A)Xf6B#VjiDlB66vzQ#y^vPWpx6rvcm+Vu zkZ~jY4n;|kFOBHz;coRoaodEm9e8c^fgL$~P0ojPU@++7PmHxHS?zP_zB9bO<cQ$| zu#FDj!sU4h9!PSPY*GE)i$!)aen+Btw4@&3?tg{p3YIngE#YaUEIyJ1KKvx)Y?Xp? zpfjC$d&?UE0(++@I8C6DUX9jdJ6T@Qud99}nho%>M7>GcF?aMNRlFq)nc5qg=k;b& zZHtYUxsBr*WLkR6b0?ffV#ljgZ=DR{I*0?M?~u%X`K$}143>+9y(Eg=*|4SFTBfCg zq$Nd0Km+|*eDcHU;3>ZkBew_#;K{2R_hsdJg~;|s5{2+(4)XTpdf#a%i;`ntpV8|2 zVy{giSzi~rGx<(1ic~XVxsnXo{OZfvJ(4ASuymY^3J6E>Z&hEFyeyQ#<ovZrqq5?G zq_!d#$$pQN*7fyTkd;D<)Pzo${^hR}ItbAh0&z^C2#M$B0vZ|0A}Xd!q;;%4Y$=PR z;I9SVm<BMfqDM4gdhQ0phMUG(YF0$%(3>m91FR4Ic{!sO=i*d)K&&fUHHMa6u z2C~@i;)~A#$_C*_;HyUb_gM%FYV;B|3&rQ3Wg_CXA)}-2ER>55H#Q4*_sK<>9uLq4 zM7=eI!Ze$pJLe?<|A<Ucgd7-@l$7)Hdk;kBU|=;1ClIGNfJA-zw4;0dYq=4(s;X*X z2kcGAXJ;Fa0=Uj5v?1~22F?C=Z@#uPz50c!tb8aAu|~Q8;BV@P4j>)7O)CRGAQ*$) zIp={x63l?9EV>u~H=D8N0nemPnk^0zRAu>nByhR&!uJRc4aI9$QKxy<Jsf#M)m`x+ zGhcOdpyR6fb$n)7;&Z(>{aseUK38~>v2PJBzRDs-1d<^~utCxi6Y~l7l$Di-62$iV z0oW7@c08RUBac;*)Ar5sw^TB3HzyigEx%+Z?js{3cYws78aBXuPHz&p^E&Q~cW~s* zK~{hTXfgjta?XQ^IC#ygKf^;+#;^A#3IqWfLib}BxWFD{e@W~E)DbSPV>6BC7IRCa z{EmT<kzbH<PnDI5G|Svy{81Xv0JI)fy)P0k2oHKS4?^Xo;((1sE^wolYW`+!3P}B6 z4I=><`xh1^T5uh#Oe)AOV2$74@gvbBvw=NZ$ejUY%RRKX<Ju$ZQ%An0(lzctOxM$g z1U)w)#PyT1>oGzzxneu)X>tM5P5Y#B*-EeAILmLz<P8J_p<XGxbA3Ooo6HttDocwV z)bilxW#z0i?Vy1G;$!~Kb@r8rLx%0$ti$`f9Ic}?tu)A5wpfvQ<&pdt5g_zi<AwHr zxcjnUL9`MkOZ(jPmBHuwaJ91>PD>Zst%pI&PqC9Sp?|MNk?O8G-d7YR@)3CG@AdaW z^2ZxaL^M?Qd|vhmvqal-m?N2G5(_9+G>6mZD$DqR9azjg4=QFewsZvVYy)YuNKR0g z6d|0qOg5J$k^5`+A9&c;ct)NS?CzxRtqoY?tGNR$D{Z_5!0@7GVnt;LA-BItPA)Vm zGV4eKdS$2>H0E2gwt2e0^8Wly6z<Aawz>Wz$-%?M<3~8JBv79{nirlPAdyJ;7rX30 zDP)(%b&0!jsi;wR5=F&t$k7p73+3lK^XXI|(H3ufU83!L;yJt<U3@}95a_P9uy+3N z>d4E><2}(rHZd{z`A}C~y^;BjVZ9k72j==-p9(pKhKE}MW%R<m2yP)@@_A?b_YTVg zGib1$Tk8x)%DlE~&IJO07dN*-e&Zwv6)t&gP0i38D+**MI)Xt#f@;qXnVUPA{$($x zu<&B{H|hX$Rh0N7<ph|L5yuvxxsjCOU7hnP)n<;IK3DhRG@k!9OIM%KQ2}9;xl|+( zKb%<4zMfj=o9H+gMRk2+BOe<B7egHEpWD_@3E9z|ot-_8cEL_5MerLyY+Zg%m-#yF z3+MUY-7taZwy)d1oYQ<12J-NQF!6xa*0;~&FsLDeb3qp;2sn=c+?!H`SAVz@zJQS3 zsC1?-FU|GGCX28z$w8>J#XBIBD*&^<Mbq#Mp^xiWrjR>)+&1{;!jUmG9ck+8Ad!*9 zE5<Q^!=P5dMLb7X{Vik-1jCOPD&n@zGaExV(J=PY-?JGO6SA;JN8>TS1?fIaKYczZ z-}C;a1j&idL^}77OIJ2OUvGZdQN<DKVN^~O!+rSp)SiK1+C4!+Q#vtONMr<kK6b%B z{FsWH#1*g}Qw}3grkV;Uo~G^^iLVec0T&JYPR6?`t6n?NK|BMp4*a@X0rNyHB{ozX z$gph<eE6T#aZ|0XQg9Wn`PIL##>kS6t&P3Vz&c`SWy<)Z7eu|hD%tl(mxwr-5suwY zT?f$vLpHmvu+)q0*h8e4T{KppbNz}+vLw;q$^kw7gvX%qBrS<XrHJ}=oL5B%D`M@7 ztyM(jkS+A%jWpK_E!<?_okoLN8i1n&Iye8fJomtD)HkAIV_bH^{tWee?siJ>&LQzV zf-EvbICt{k*YS|IM>MU-CKlwj<cD{7I{{ng4r$!6DjjwQ@B7)bwmeGvbXQiiXN*v? z9JFl&;I{YJOhkj$0rIa{0xEUKHXQ54M^t9vF*_OAUMhaEpcfw}Kh%8v8WR5D<9U!e zaE!tNBL-No(NatP8AHbnWzw&v^Y!yHw<-QU6$;WdzdU+IiOIl}_oHJ8xP}4Q_IF43 z^eakSxMAmrlsH(k6px8JfMs9nv_wEbL9s9l0vXh6zg23%cZti;aA{-&lS=IXg%tv( z0JDEOm6eXw2bhyV!+3sU2J%6`H4bBe7!!u75UB(Dy~>d(1@k*JdaDNbE3D6(Pap%f z#;tGg!Dmj9WY*R34JI=`Vu)Bj$o%th9z@?FGf>e?1AL7Da50ldL@Cijquw9jz~vz` z)nQiGeSJ#`JinbtgTE;I#Y-kfzD>r4yTr)^Sb@d<?5BJ=KET%iIxAVN94TR3WuwDQ zGQANoKkvABp&jcFzY2i)6%{kH;yBj4J01gj<-Qrz-2&O9notv;NnK)&)6<{?9<JkL zvp=|XPdUe&6&e@=Huv?MPK&&LF0KY5c9V2p{4>J-2C#2_YSpmGzJW3Zq(?c8J;%mp z9O2ngsp%>e@)BkcaD6YK+09v=?H@o}%q|!#FfkE<t;YO>luWzq6_Hq-K!z|0B2TY; znIN15WbCzBU+J%gJRAcMrc5vQvL`VNhgtuL0)(@s+n(%)hQdSK2W(VGd7dm~=c%cG z|BwCznn*}fp4aAABEDNgg`$A62ODZMDI8e$(<`~F9#Vn4keVTJljWJ#aH|F%?kAB9 zpQV)Xn&&)64BqK!5d*cr!#Ct*J`|p~a4Jz6Ih+&meGVjxzO>I8I(tJpjd|~%i-Myq zgR|mD8lER&irSKsrD1)8I9&SV@Qm!@t40VU7tNk^C5D;);*N?4wDu$^s7E?#T?g*3 zPvqdSJJ6daOTWKjV(@%I)7id!bNJYRgAdO5hWZ&7I7ibd(_P|x)dmvz%>O6?{zr{K z(}4!ZE<jdlx{c7d5z~T(A^YY{*v2W~-v$=6X2DwQLPnseDJO9By1x}FF#|ra8lO#` zdinS`)ExrBiJ8=6$~b_Nb$52IuRbKFr$+)ViM5EA&C8eX077QV#?K@t)`SY75cWU@ zZa)Smlh&GG^X^7g3ihDJ3X>#4xMno%DhIlD1rl&Pc&ATFYipS(F+fq>fJ7JXP{k*t zM;65$ZhE^#ZS0+&vxjiB)HbhZ8J#A_)1Vwvo0LRDsDg=!h$4W&ybHk%uv3GU>wd<V z{op6edqL_;@a`IrQtbJYd^xvx<f>)idthsAqU3Mkc;F)v-wI!ALI26j$uH8ZG!g<0 zj4p40g&-Kn34v2vk4q@n<XE2XP2^uq&Z2zW1$IZZS(Q_w;^OUO7Ar>Rpd&;EJ^E&~ zOi3eXSERuN>}l|EpN1Y80+4Q8fJMyW2ffMS0z6UQ1%I1A1~D4>GAOJjEkq0q3>FQv zl-zV6<dd5fHIxoLC`4pl#G2p|@go)?<H%WpN)1iv(@9L+{q1`keDg#BvX6=ZY@H3; zbH~(T7+mR-w@b+y#gF>b_JiJ>*N9v@lF@^Jr`t%`tQVU`O|LknW?G4Mj_pJUaDC?9 z#^F(xE&1<>T|ddkcliW%noUPt0lJ7sJrzRou545Wbl4J<yvB8?(tchMSt?BLAn(PP zSiFV9^BbHbQ10R+y0&GBntu{lSXf}O1%;@WkIfNrpS`GcD@e3r#0qBI?=zph7VMGf zk2rVU?Z-~*D8E-9CZ2((FKl>M`0JPwP8Rr%2#S+D)UR=ABK*QW&?w*cQrXjl%MYl7 zuaJ144p_@7qYiKZkniu$xp<-`oY>0FqJ1LRGLR{wMYEmawo>zfrDw0_Yc(<d;z!Hi z7Es7yIWY58TO=@u|J%vl4g&~qt*ID&d_tboxX*e|T_N3}_Bc5Kfe_}BGBNJ84na^z z2v}giuK@ygL{!wIa3jF{?K}meP|*F~=zRpgS-?O>KtkFC^XP&vP~=kpX6b}5$c&QO zDfkGX5=pzhxo{Y5v~30{Id$~1XXr3DK;adHaAG&q#y*pVct(|HKk71~SStw>H7E-a z=rR&nf=ajWRD3)r%N}^YMG?<36ccHeqqis`8*}j$$>b8qzS!8Kj059FftBJf)2ff) zW6sJn%ci+ReJ;^COj^d9=)emBycqaU@doZ0te;icI%!2mf~6<;zgxhLHFp#@sdXZl zU9A_G?Xr<!3;+Pp?0z%2w*lV>fdTzfGS{mEJ>W~JknCYIoE8Ksf5e8eAtT^Cb^v4s zcD`Fc5@9Z&^9p~mjs{xUSWuOJwwNr1!lbr<NKl(KI@AJG`<tM4x6DskZGmMC3?4GO zOkYPpBgj=r=YDg|$qy%i7~Kl*1cszHu2Zj066uvYLLhcTj3BU+f3%6zcvj<mm0zFe zfp1<St0%+#?_Okam2$O>fQ;z)$kG}#PQPym@CtOd{TrGoFXLRNd=js6ta6f#$XGNW zoM&RQo)p2skqbEm$U$P=O=4l6NMm;%THSS#1u~ravU}TB@4E_I^0Ji~sZK{8i4v|e zcGwutZAcKR-7WNH^`EYsxp3?2o%CzfUmhDS;PO>mV5aM$sp(h@cZr|y3Yx%E(+VWt z79;iDP9vMNFi7?#OTYl26pk!u4XJJB@B?^mY)^ZNV%9&npXssgEvpLg?@5AR#9x_? zW)Z(LyielV_lobJv1{~WP`FjoStU>czC1kS#th#jT5>^-Y=*KSm~oNnSY;}0PM?vj zxKdztPa?Qx-cw`!rbMFAQ1_=OZFYRx_w!DyqFzv_MIg2P3r<L{xZKE^(1vcs%Plx_ z5mt6)nT^2^#d)k_#5`y;#Ae<v?B=_inInr@<URdvSLn`QWFTx1hD9~2YLCzp{9hnK zyIiqbTX-R10c#WaqAK`IW?@n$2;11`vgUa3IJmgj1O#Eg*0fGg2KYE+dxP1S0w^=Q zM-_oXDi94+kGQ^iB?o9E_jk_V#`FQt=$a8bfbyixhlm9q`Fh|(T0DMezLO3Gop5Lh zzBp#*@bIwN>9_9o_J?~?0q2$Bu(<2mnxTi8ofuM)nDY}R-AXbbRQsqc#5+?1=4v4s z=~`~Nq=*iA__xyC2^ks1f(!`Xjm@pC%NkmksDFWBppcv~qbR+jW`K#+?*ckW?v7i` zP0#v?v)UKohB}(l>sz@DXpSH)z*+3&YFifDBd0gjYR_#f0uvGvezwI$R<-;6A+WP+ zG__25qKyhn1O{!wA_sE7)VUO3`8EtB;BJO;;>zD^QKe&swZO~EMFbAOCodv-do^?| zCf-mb)F(MEgJjSTn(9=DN`c>D&QG72CU}B)8Ip^WJ9}``Bl3xYXTHtMXrt>I{4txG zzPq`Ydeg>^8;(hdF-y89JbxA{<i4}lWVG-3U*xDR+Zh?R-f`hApj;V`s{?t5Mxg?B zt1l6-g9XbJ|C=9-z}$VmSM@_LV41-AP$+Z@qKtcfb)EfQT8$wb=6N=|w#H(Y9c7ha z(9yMw#wRz@b;VJrzRDe9U$Xuy$UCk1o}(pUk2x+h6d}>~0rPpuYgsl@X)_xut|uB0 zEV%i(7gYRVk$G|&=%4(J-`%5XOFaK>7$Jr`N-d=hhu+b$Z*Tx!b&57$9P9>5QMp58 ziRunM%T61;x$d;pzT7<DX$dbg1%@lCjv~y#Q~6!>D=IbqEomxp=gZ-)mXSGZrcS<w z!9D_=%GmJ$9dTawL`-~rnZ#?<62g(Nheor)4-u3Jb)VR{9WZ*jurKmf$&F7ebt~kH z0MF<`z8$;&WJPQKakiZfvAE-h$jfWWAg+o}NhdhrH^2KAv8V$C0CnVzbJUk4Ju!PO zRXG%n8%k3<(RVj9aNkEKo9*SSCEoih;8FnwZlIHNYz5rE@~)UdAn!>5!}dwxo@g;P zE@9l>o*o6;V0Us>7MoEP`QLkz44>v@3S_u|JP{rd5kZE|iy~<Y^*me_5)HT)T{5*s z(dImf1WueUa5G&zJY;|t*Xu>4Gptdv$JzX|^TB!T$G7gK5cfP8Xkd#oB{$O}Xu<?n zM6`0eB;9S;+SV3C-lyn}JIGW{>8qSyeBwtI-<R?$EqxOaEeIb%<K6~f#%5+tRLLmb zKTeXRp`wO+w&4lmt^AlQs(ben^fo_N4mR_mA-N3U6|0u{{@_;qKa9NvP?lZWE__oG z(%oIsUD7QbN_UG$cY}172#7QaN+Z(U4I<qkA>9po-9GR8@4aV#^UvcjI*uctv#x8M z=aG|ysvyaIb>nQgye8do1&C^^hfDt<B=X!u4H%Ljl-g!I#?PR~yk0=C4FrD_+G&n> zsZn$h5wTLj&LV+udXupn2_$4>tW4C#Cl+~T*@4?q<^R<Jv;@jJ_QDFzRG7kD0O47} z`JNT<*r!ST(!=fb5_qAi3KiSHqvZqPpv~mh_amZ4t^Tn971)K|J5y6re+Z~Jg9r;_ z!2PlUOdG+UJ4K}q4i3OQBMa`Cn8<i8ER9^bT*=T1Q1qF*nBbQVZMRLw59?S9Z;SRj zGOof3Xj<(h)n-<@8=d<M|0g~xxc${meVLVizh~7O^i+rDNO7!?9G-3ytJi2Lhrz|` zbGayDhwB>+uWbDN;c=fq2!l^)yiHbJsANd0+A{LTBKCC_`-H@PKDoY(-0I1@?Fg60 zyL#T$u;smHU%spuIT^S<V(xY5C6LZiLT&g}-{-1yFOt}q#b*t9h@=|p!xAl}=8>T` zu5xNw8;5Z_St1-94fNSih#ko#)Jc4{AdFP7(vL63vgk)50sDAc{0!-RDOrg~hG~Sc z!!L%|v%QFy@s2hJW_C@a)Uj9DpG1cKp!VcR)U48#@R9gQ)?=z=KupF|V)k3n;^7}3 zD&?+;<~bUpo)OHQWRv(1Jv0ZjQ#_NrzzH4e3g8XfDTTekX9&OSIU$f-vg3TW6=4kU zR>Tn6yultMUC}4p>>|=8c@;h!lci{%ALa<$hTI~PrU;q;t{Nr4x&m>>{5Mc*nyj=1 zE+7LuzcXTJ+S`v*)TFMndu+6a=V8V}aCRD<f1`liA*J*6a*N+7+6D+e7Vti^`QZii zivo8i7LXAEl*sb75sdb^AP((%ZqhBd?0TCCas{f7NyE#awq{`W*~yS>*#&Ezu{2LR z1euoM3nkCpI~ZA@X8iGE%F)G1%fKil!5vIYKjUzQe=3;_Co|L~V}213riuC>{p`l* zrGa6rNG|ZpkqS79o2wSEegulB;7C(n;VXcIR1pyoA=AH10?Ni=)lWihYAwFk0gw71 zE*A_;pWeomm$QR>&aZEUG6Bg=X>IWxaGKc3$yns%#R+x~iXgS6`+bV0<S#_04w>Z0 zKv`I&Ixo;elsBeZ?@R~4D3&Pp+)u!$0S_=(tU0s|mbUJ$=H#RhpU-p6J{}wt4e0ca z{WqkXP}V^W>|~q<k!zp@N8MyJKZLaP{(@w0?+izTOADqABzS=Z2CgI<-@9Tf9bj{k zja0Y)-`>&nG-#;td4<I=dZr(9tSt=AW3}7Yh|PT2d{qPzBWI1QM8<`=Dx_UnY;sd! zW!8OD{c1#d)LY`;@AHpKno9HJVcIO<@Az=4YnNq;Ryqji9m_6h!Z046yuxKf!mQtt zJ6j-SI%?q$>Wn9;xYy^uzXu9G2;SO5TFe9U0kziA{bA6k&_(z5K}}9JOY=h^!_yOL z=u;4tIg;D=Eetod4BpJqeAuo;><)4W|A;<9ls_<ng)TE^GLxcGWclq4I*Q>3SG3k) z!)QZ(sYEIXk~izyDD$#X9JQ*iZum9r^_2j$8yT=Z*6~}%M?})(C;pNB9AanqcWGT@ zQO#gF0w+Rl@6sMLq-RXpsH|G7z2X#p)g1OP;<U>hn?X303<fi@!o$VXEeD*aof+!A z`G;}5pU<H*+ZB+6!R!(LyP@im%2ZxaaqI6;#kPU0sY&IqJxHS()xm*eVPRnc-oAq9 zVU?W*Q`bnZxZ0b6na^7P&6_vTK;2Cau*F^=U9XbZo~!w`gcxy>|5XusUG#K!2a!eH zcviqAgE66xUFp*!kczs=%00DIq2ypB+{?*K3aj^m@$@-4a(AMW;LI}s3qqdRX{PO0 zh0t!WS-UAPjiwgzT3eb$&Ehe)e-(#$4M%k-9cT>;)a^4s_r&)Nj5|`No5M9HUD6zU z4ojKlY|F5LL+t?XItKa~tJChT$26ps-goDoAoKk3fx*Sa#Vy|2lxk=Ppc=nyzm3s` zVuMVK+)&=N@8GMit!e&g!ZNw+^#%lA1X3=>Bm`vc;GP-rIjDW-0QG`?N@*Mt(djqJ z#o+$=tdyRYjTNK?#L5(Vh02n#zynw$Gjc`*2=Gp@mYi|sPR@Z1#-t~PNN<=o<i(!X zr?E9>Fn|U}W+6t!0`g^_ie7vmL_U-pe8;2Xolp0Z_XghqLTxY~9T%Y$K8dZgx2p8k zX{VWop=lCGq>NV@kvqrwwP&PS?vilEGybr$m7MoFgp-3EmB%gkJ&pm%Mfb0VbF~Gf zu7!R)57;PN2>g*1!Do!w;Ezn4{#!didJnst#Yi4^Cq{{pmv4k}m$6picOUzgQJ17@ zO_Vhe@120cNeq?d(!?%a*|Wg9yhvF>W3i?EdyQBw-+hWWiGeJ4IM_B2LcvWie4*x; zCm~SniR_;37kr8NNNixag}U`~pVNMgpSI<Ghwau8`whWC*SOE>&xl7spSGP{PMxtD z)IGdAWR96%fcZnhqjrCY5uFdt!M^)eB+#;0i7LkQ+8pt1PlbOgjd+{Svvm63<6if6 zt`qvIBYg;v#4v`5*7og>9sJb&Xx1xjeN2>Z4d2~=CJ=Fi0!tErm)b5|KS&_fJs7e< z_<xdp0+F_50|(K7&eqMmWaE{?Qj4~MH*oSXZjW?+l*N+^!~Pi#!HGpeLz8iIthfpM z@bM!FD7h-HdEw3&8p-A>ECl>Qh~akuxE}X6ZVUA;4D)lqow_9eEX3>YfGph>FL~zL z7l4~|Q{eDWvaqn|8!3O}3oS1%*8*ufO7h2`*{!0gN-~jJW@Uf>(>FD0V1<i)Pftu3 zR1tw8ub{wLQFMw?8xj9u36bISQj&WEnw}`A)y-iRrKs3h=i`yX72{YFcf!p~g36+e zjvy^Snd7F$lZbRA9*F!MMAz|!7uqj2wD<JT8~;sp1q`9{&;&5L_{zx0P|?y#FSb@b zl!I>y%4bYtd~DkUaI3)l!hgu_*@t;B0k+@7#rJ}zC=OV&HJHV8lY#am41+>6@LYQ@ zJ~}$O=Nx=OWM*Y8LV)+;YN;t8{z4q5r-Z%3GzlI8io%Uv9da$`eOGDTi*g``iU`<8 z+i}}mM4xL69F>%HLQXUIEU^GK9h<%M#Fm)ZYDW4L`W_R%3}A60EQ3GC!oh)?GDZ>9 zY2~*bA#FA!tcFnT?ssD%T4qaJ=oXmz!fy-BU)h%J#k{(5^rgGIB<qdE<b<zr{yD@` z8Td)n-1XxEMQOAAE0uMBMX#97Z&T|>I}Avvf9m7jGdJm>_6$*c&CTJ_mzkxIX{pxy z3NhJ)v)kq(zQqY4fP*NlPQ4ZM-+u`|kVH4!H6Qwx<EW`(fa>)D@0j}){8@RMR4Ir} z%65o2Yn&0aWOHAPe>Ya{@+y70qm3+iY#{28ouSIQ55De9Lf7l3Ag)xIKzCfsml^(E zir%so=^~(ayeM;IUq+kg;g#WRco=D+T0UrBvy^jMbqe8G3t%&Hbl@k7p2H90DBmv_ z&0d1XWq=^99JsoE@`Q5=UdE}AjeJn#Y<>U1`6h>-`FMS_7n6zbIk)H3ExAaztGHov zd3LNJ1T$iRAH(G`vo~MB^bo7(6=5h`HL-Z3vDcsbQt2nS;?T81a}HR*ARmK>b>TqD z)Bl@}tcLUt4*N=e+)DvuHK4WUt_tfW#}fh7wZPnbKLcfyG!{H?+C+T+{@t$LhFJit zszE^Fw6!t@9Fl42zaJ@SxVW%^0KNam(!zqUoG>_#vi(VPHEXQyqS>HfWNyyZFJT`{ z)ODb8=|@vZY3X>eCWDTS&1KO&z;UjCudRC4L^9Ag;NA`02mnfx_<1j$$OFCuMqQor z38B{#6#>ik6K2-dr??-Q5*eiZ5)vICB0mF&$lhJUjGk3cjut8#7>u{nUBLFA3<c*= z!)72uz2df}E%9>28iiv(;3S-gfPhdO+Qy3pR3M<Yq8&;zE3+H72m`Jy|J7^g$^@7< ztB?B4-fk~}Uu8ZZIwGR2#qZX6#txteAXee~Nnx?-P^l^)FiR7Dg1ZIipEh2NDewAF zqp+5ae+FTe<EdHLTj}EB;t&w}-BUf8xe0KsFrX}XdLYMw2nI?ySJ&@32SAk>2%KTa zf26e6#UAgtLFBWWVb);-=o4B6TKho{BO{!p7C+{Uz&wqRpP(lp7QnxMx<y*Mm2_GF zSADHKczGBL>IyhH)$a||w%czW!GGk_{jj~k1nB)z!HAm_2d{DDeu+{d;)P!;Rj83t z5op-2b@f`qfyaH46RnUvx;1F=VczL(lpq3guflr?le<)S<#thC>Cgauq{BAsS#!qP zZ@__zhpd+@3zRevM_FKrVyL{IUztzz8#j6p1xa^sG;<Xz@nk9~$^ELpuS7hFTyq*Q z?eviS6zH%h@@e78(%u#C+EXbV-5aAUzts&f8oB-uZbgUzW#{nmgu=~)Z>5~l>6bgK zTG8q}FVQ+^u^vwYt!tLjMAj5N$Id-KGqfw*ot9zOFabpY)}sq^u%zK<Q-2qajetBU zr)<>D7xIy?f$h&LU6-&j{i)6lZ&=kTY+YQl#xRsw(Y|cd%Vos%y~7!E*r$Q<k$1Ur z&5AT`c_hs+?j8)KL55J@2~VkH#!9u%eY#zfyj-t;A>(cSDd0Ko#3ZDYTj(#~OZivP zMD}k+t!J?zAwb!N;-eP+MNKgMm}wjR=~L5yv94#786`-tN`Z06<9@<T&CQdr&Il+Q z4_5l`6+*#uwFVBz?39p@kh4%xM;BF^ytL6fGIaBfz&X^)({b9F_Aa3`8##aQbmD<k zRT8we{3r&{m(5HC)xyHU3C}SAgEOJ}z)X<smIoFP!H4I7y4J?J@sXlS$jXZIXg3Wb z_Ahg46nfq<GNJ|5CtZUcNX7tJ9x3ji^&kgFMg!gD@IAuiwl%t=`sfES!8|`HcyKcz zbNS9`Rthj{l_1eqT)tKX31E>R_h1#siR(Y-zknnlqd=dI-i-2=8x)yn{9znrP>_xe z_G@z$Fet6=e$>o71(H5bV0ip-U6O4c%#g7eAe<OkMk?Zs3&ytDsoSfo9AHBdGy|=| zf(N!yFIa&7DN-imE<y%ejFs}q6oohu(a}->%|%e1=<i1cp=5Xq@jB>tcXy7^JcC6* zcAx`w6W*`zvL2wWN?R8UE&IV!Y7YA@!$_}d646I1W%-o0jE{HN`ql@0S9;CcQ5XS| zvuS*9iNQ@um*Q2kNF^1Pqg!p|eam45w)%MFXDA{lcuXOn#qj@rtkB`jjy&Iq@!fk7 z#Z%MbJ~A(pOEI{%6I=)tn4l_ljGC^0Z5Hsk=gmVP@cD_#Gcku_*_s`=vy6`@V#%MQ z{6z;w9Ipc;88qR2IhLmD@%TU%r8M*8ac&^dLw#`}=K5PeXQA4@KX=h?*{BT{+4JyM z2oyH~lrU|N1CG`RPgL*V%9TU4-kr!yTq|;XFB$W9T{Qi!f&y!BlT&iFO&W#!o;uqb zCqgJ1&%g2Lvf2ab18|&lwm%iExixR6%z7Z3B#H1vEwX26?~1KG7U0kT%6$xD+}m~x zmtA!@=4``6MOxsu975`P|C^g*ONo&SfjyA<EBjnX@ioOfmN0fR8LeTb!|Am7^tlO4 zE5DtZdxzCf`P)K|ItX~6xFK?~sBIYp9ZYKUcn|0ko0pP?4YS>yExhPB(8UF6w}jav z_;*iJ-!@@ax1|`%Nb>9cp|te$j^24quE!0XdUz0hP-#7yMT+e0?VSge(jiKUk^vdF ziJ3EC`ve~j2H9J?z;si_TLFO0&1XjHKkRft37|3PdfiI?Xo85dVlEklkB=V_AFmy4 z3vRKy#NYF^4o-JhPO;a}Km}G>8wUpr&51{U)B$IUJc_;1FYl1wxb99V=bJz$y5?A$ zJQ!>wbaW|O?*_2j`}DcH^EtX{{oI|!dqpmhoGU7?))d9pvO0^i5D~5UGS2<8)m5Q} zrH-#FYe5nGGopM3&~O<CtmAJs+PWqOq2xGbR#H+hkjGa%tZF(nsS>;aE`1l3PeP%< z!}t5>RlY2m@5QWjMb*H=x+wk25pQ(mU@QPoZT~EcmL2z`=j#g@nfUqB`HD%agit5D z6P{NTpWosQkb8xJf7%;^X|PlQ=zOCBWNyelVsUvx09SL5uZ9Z&6W%Ko1zAa0C61eq z4lP)8!2msvUXw#*0Fz!9kYgga(P@uMb6yMq!IhxMR(~lbv>OkMe(<H5smBuUo&+I( zCi!DBTBtKhf2LDm64c-@=|R{CSpf+z1;^>%S`5UD*ryLEMO|q1GXOZuw~yM%fEm}S zeQkbgJblcfz@*NsDDd*0oTm4?)GHyIZ(fQBWZfCY80#I&5)sLO$FN*~$0VlI)rBuw z!FLzyU_ivE1;G@*(`DJKgltW8T|YS62*YxR^97d^dcULI`<d{{@OXj~E6dO01~0tP z>o^$;h?ROdJxOFA>u^-1F(D=V_Dr(=JFrfoukY;es;F81N=9gbWMn2I!3_o}gtYr^ z_V#$&5{bG1^U;MRBoFP0>8k2)QyOvaFgvcDHBzOe2SWCx7qkysy2O?NXPswyzleys zL^bjtlz~GNQe*c0%rK#QRbSsAAC@DU+>I)$4N;<G$t6(j9=l}UBjKLi%p&l9u<zN( zJiMI@A_qieWu4Fu5q~e*?+}xxs2^ttN}uA5<*Iz|B1GQ)iSc?3fU-|2e2Nlz|7W*) zDCUZDCvdBW;(q$V)6qelkdicz%<Gj_SyKZ#uB(NEa~W~v0?E?M^87QN;J7=wyK6;D zaHxl+r4e#aAt?hY9fnNEb&S#V0|}4S8z8f&=X$%?P@^XwKZwaqp&X2pVK%H>5j+e; z+|*gZUP;zbAWXwHD5mL(8}2_KFYg=}j@TL_Hi?O0=%OC=bkaJ%<uvBL4_^Bn1ne8a z;yjW#&%UCvc%4DY@um>3^>odp>qkxL$AdU&78Fvd;NidTAUZ#dHoWCtZHkw(2ZG(U zd*EBGx9amofByVAkllB6cT+JjF-_N_5%ctEZmfbiPQd5FE{i9<jcS))H=Brr<m0YE zD$TA74;nTk#iTPyQ5Q?ijKadwG%olTV!v&6Bp&Ly1eCn(5zhfyUl5XoFFXlmvv1{F zDI8!8dLkw!)~-1Vn3J1A31?!v@(K}}jWjMxl(eI|7O4`UN`cuWtKfHKWo0*Eto=9O z<}n@5lL@}HT1)@&<A#}v2%LK$u7cjm?Yo7vt6J@*&-!2tt(l9`deWkpkUrdNuU~!( zprO=adO@K$qkR}Qo<E<5QmkjQ6gqlo*4=}1b-Lt3t8m65XQ@dz>8;v!RW5%wO4-Vk z!UBm9C%rmmD8az{hT$q*JpQe+sO6J{edwM9;`&(yMFo$zjXS;Lb}in#{_~SgpfGw| zC#=E1X(;XWYd1dAMsY*LkbK;1St*XX+e4_Le)jj!=YT{1Gbz!f4BqGgy*0EK>xdo| z3)|qGwE(_k<&$?6fnATH#hEDT3|3}yS&%05xZr`1H>T&=4pM6YH&VFs!IB7&W595s zKf<-=`N|3AcWl(8z0%ad;xnz4rN@qo6OVs2n#jahZDvzrC3xfVJmbCMA6f_!?b>1g zKF4`nh2NXt!)d~qa)yWU%un!1tsMuxRcxq#;oU@VVQ`$UPBQUUHLcN_{||h70^&a# zOkwF6XHe~7aIS_W6G~L$H*Pz-6sH6Q^-y(rF5pMI0+zQncq&)2Jq}!)`s&)+ExWb< z3?^}Idt+)~yfE!JmPnnswxO9(|Dr+$q5+L)Na!n^pg=&QM?809Ji!J-2Z;0ZUM=kA zVn|3!3pv85kN(vs>>ImUS>8e|+9Yhr-*px%WcBA=Ov9ZJ14VXL9P;G><$m_24(Gal zeDGC+BUbl@R3s*hGJG0j2^=<1?$Lv+2CR6KW`4jg-~WS+A4Z(-86_pedL(moV{4-S zKj`ymO?!BGmE~aY@7EcFtAH#Tszv3ISOqAuhG$SLiwO9VB`eeggVMtx_?joj$1phR zsq;1ypJN%R-p*9O92^XIdLiJnS&dSMkOMyiGpOhYaqsMZ09#im7<`=cI^9kHo9^N# z+R?2gDG3XJkRi)RBbPUmUqfFc)9+YHMRo7&>_AJ9z`BCqHrnzCw!*$>408equ43Ie z(3oc$t@S86^+#-g-Ch3#TMg2HE$<hWtT?qcwj6&%-~LjY*}JSdM01gX(|=}~(YnvN z@4O&k`sBOM#|qCunFUYmFpId>-Bo6m_oeK%7-=D#XbV((PH$SM>7NTCF@o?$ER6eb z(}Ckl*l2+}xyc`9`mV%_i2IqSKIN7Rb5RJ)?kgJ7FaSA~EJoI^Ec$^b<_}Fjj#KyH zEW4Ez#$8=Ttls24-pv^}N)We+%#M}Px}yI}3MvCquncw<CrZ4h6D_Uoids^V`bZ+= za7OjC&yghtdsxm)Jsz8bfa%4%?;oR9L~uCv<&h+*&A`G^eZdw!02k06q9AE3Mr0AR zLGoP#0b<T>a+_&fdFp?_9`d`Kanq4i8-wgFEdPD3KPR1G&s6=#ic2dbF8HR;09BA| zjZHp6V;`6Wm<uph#k`FsiVtaVvWd*YnKJWwYmE)rIE<DWPlf7dVSvpRZifEf=x3#f zcXo(82}lRt(Rrma8uW2b!yTSPrQ~tGgjM1>+~`j>fkiQpTkQy)%tLL6c;qw&mTzc~ zj&oh9Rw?leg<;st^#aIQ+siSq@0^|{0Fcr!_xmrZ*=v9Y%beil=a&PiB<kO7#)YQ= zO=tc6ds`q<g;eZea3?CG*}mlYg)8E1%mfD;)X<>ad_8bsX~(iD7BKKZaCU~sumRO~ zpUeUW13?l#gt`r0PKQ0`tyoXlqhcycBq9d6Bba`UTYayw!57@jL}{cqg(U=1><RC; zIy!`DD?S<;NmFmC=(!Rl==sv7!SXPo^E#*lO2StJ6MG4PFM0h0lk%R3+iC@<T3~e^ zMrm=VZviZTaNa)Y37BhO{cdwhS2_L7X!S*t`ca?fKjIV$oa-_Gg0pvF+YIriJu2(e z*y4fEtk3(dpEd#Tiw=muU$6JSL_>=LK$6|DnIZ`dKzI>-+LNhbK`M7JCxQ2O`$b|v zt*>{-az2G{nLdK-id2HQYob|zD9#K{+Yk~!wJ2rY%=GhJjWgU1a4Mp{K`R!>-H(6H zy9;uM)n&K2o1W;^6?_}ybm&!H@VS=YF|Afrx171jduV$>sJr~BOAZx?c{;VeLnw2+ zTj2c7Yu9Bnbe63*9qq*s-*~5nt+v<-!Eec4_U17V1t0FYh6`=;1_%qCoZG8_{k+`D zf!|#Eart=Rr8q+JqgQmf0P)BBKlu?yW$??%8-Wzim4YSS6+M*V!a_y|_Stl**{>*) zh`1=(?-pwT`4vUs?1ll>%x<u-d~qEy)s^5+=#Irq#hwgQmjT$IfW~*r<gSiYzF;&2 z&v#BW#CUYTk+;q;DKhO|YRu=JIq0xFt>YY+q(m#&qE4I_L929|PbTpa&Y;l|Eo1iX z5^w0~ig9JGmqbF>w|2iaI%FLvo|QujVSI62Cs-((3Jf?P9s7S5Ws3jvn+BYJ=AcDE z=C_s_8eARJ)Ohc;f?%x}H@ZjL31xzEE#RpziHT9@t$L-YPDns&bh~x7UuyZ0fxr7q z&^ef8Hqxdl&E*6HcP<soI8TvLP&BHaA|p%a>FNFO1%{+C01Mrz0rwrkXttR4Q?IU` z&HE{C5U=#|>q}%Mg9`DWJBqD}&gg9NnBCcG1{T)S$8MoPYw)nlu34LrDy2w$bOL#X zAT;o3xmZa!<eHBcZx^v_PWpul>Zi7O4=R)J-zhu>hM!EV&GQRV7ztRR#~P~Qde?Sb z8zg}HnT5)gftx$#nKt<dKK@H5Y7<;|5dL#~b!=X<EpJh<c}ompe;~K!*4AIF^1zxN zIkw@ElYLG$nkCW+M6?Ou2ZJ#pBBI-<dZn3+j;_;VJ8`3^&;3n}kk%CQZ(g13HgD1? zYd!s~03Kyv5&;s!)%A6AT%WKcTG$w<)f^)QTG(FrQbW`$f(pAwx;;%GE%QmE=$c{z zb88bw^L!#F*L(MwXlVIxv5^31FR^)+BtubxkPp)39R;{+yPzFE5fMo3Csxzv0M=Mz zwVvXRCE}K?@D$@6%2Kb)usk=(6Py~y+NGPVCgAJ=Ky}^$&NX2V3xp5|FM+u?9V6y? z&ScpI-!+@nSViF@5Hu=$E5h2q@qv3zVAoTOSdNw2GZ?fN;Qn7Nz-tS#9NqT9V~EmC zJ*UF>Ix^ZF7uMw#Hp|sM{lSwSYN<Rf%bEAG$r9_F8;bnc6yv5J25lod5FkO*GyEWc zu0;V0s}Ye&RW~%97xh$;WhdV9%5s;Yj^qu!Ky^&mM1_k5@6m;j5O}_7t-g{(ADw=$ zM#7eWaO5sHmV8_!Y&qkWZWrSYTl=f%!uce{nevDDO=fz8NGoK0dRfBmWek9aRl3za zpA)idza;E<eEL@2Ev~D15~pItnZ+z`O&VKhaHO~A3$-okac9vet?dYEv4L~Ut4i2F zh|#tAP4HkH5g`M%m&dQPMi|ZS0p+FgPQTabt@y1}MS{Pv=fOXqSB4z^TCV&qWW0<= z3yGNdHY4oKbkRi6aLE@mk;6N4^qyc5F1h!M)`dEB>renmTb9PQf&T_TmZuToL+9i) z6QNz9GGSE$mD=r#lQPliJfTQOa+HFCx~$@$j1Vv>lWR`_%Ll9)m6bu^;fQGha1=Dp zo<WhFVXLTF2Y@J1Y)<lZ4TU3nbaizVJ#xq@(Y_<YUZ-~dU`Z1lU~BtTZziVF8gV!+ z2N7p2M*?Kz2f#~qict#c4pAsSRb2*ck!&ghg7U1woR*$|10-_8eI8vpn!T!E7c*mz zaK2@38X1XqB`D8klVg#Igd`qlcndrvG{A@NCm{9>apk9`4G#Y4snc@r4f-ZK4UN>| zZKY@!a{MW;j>Gja#T0vbdV2AxdBEQO{^X+=8mI~R&XCh3+Bd$0uks7=bt^J1SMm*I zD6WR=YiQ7y0LTZ;!SeF<HUl}4!8a?mcVLs&Y4+xwwiFr$S*ER8?4QT`>)@jS1RM&m zD5L`~;8U?}e<O%`L0ts$@lc3Sa5%Dg-{6;vKEWU_!6zbk1MmzA8o9WQvlzLO8PW4< zn{n#Q=N>AKmnFsvmF9>J%P`<kVGO&nnF_<aS(a(%Cl?%x1n}@~NG$#f8Ojr`A1a?> z7t61OB1#mgryL)>IX<72hMV2pk;;Ccv}lqI?c;vR;ngn#FWDeuDc~E2FV$-%u57*W z_*IE$y<qHtD#sJ1O(}#-H}INdWc@{k=O2sINpF*`8T6v$$Hvr+8XRtN^TQm@8C+Uf z9r}vhTC~=h&ErcC;5lsVkXc(wt=IW}OC=g{gdGyXv|eF(^WiA*Ae)|(kL7yhujJ7( zbtKmjqNFK9pCdVQT%T5X!nGvtik5Y-7mc#tV`~4LJrWoo>ZcBt*8f!Pqy?OiX~<k% zs%Yv=$$ZT}h$tr1klf9AowtC*2%z#)kuo;&c;k`R{>W^Pg&g5;Ch@mL&KZ6Yl%N0P zj>V{}wZi^PjxO1-GF?SC?!Inz<}|^*5%2-L`|cv~(pv8cAL6iYYU4JKh-%T9TU@EI zj9Pw_ckDwS5il)-#a#X0Eau@ne~lHK>4=IaoU7Y57z}_ggO^Ukgvmk%!dN6=#v8DD zPgcaF|AS>TtB({AoC@@qcsS8BGoCVqHkOt_!3RwuZ?$nr=oqB_3b2&yi<$6Jh5ZAy zQE((mw>Cn`=oFCQVoR`Lz?lS>BOrJHyrUtn00$-TRz9`?T0f3e|Hsi=zHkxxAHaO! z3xYPxdxIAp2+SFk<)fNYz5s;Rmdc(=uG(r?8jJWBeK;`Gu7jwRIi*Q274WVe0~M2> zrr+rG!5_?6s}8mQ;j<Z|)QyIa3phf60gnJd5zzMSA%xe&-~<ZT&2Rv%^HC_5_H(6` z$B7S>$OkE;eZf$oA`cZegb!YF#O(fisKAlR0M6Xhkqs~Dg#Xvr4$18K$*{=1%>wGH z8DS+uFT8f_NPP}kqBy)U?=FF}Z-2zYvn*@nTv6qZ!Mjhx!BndJ#S8`WXNy9F%z2e} z0of=VnZ}=b)>oq>2m{vOxZD<03{s0(nDh37jgK@r*}k2mgOI{Uh(bN=V+;4OTmhj^ z3&h~zkbvbTm(;+Eg)W`T?k}vWv_l$YI&Dxt{)O6PnuTS-8^?jJ;feKHKz0B>*3&s} zMuKX#^x~}5uHb7OKTc`*akgO?J%Zve@BGiEj!uTyIlNU=ITip_z8-OPO?QPm&hrb` z%`vI=Pva;M^tII7Sb%#WB8Df%S{Ewcex24<zr&$Kv_MGb)p%~T2OGHKxjK#CS&m$` z5P>@i#zI?&(0fjv&;YnAOeP*_C@Ibel|b<!{Tm5XLQmt08mQepGI=3NFT7v?qQdF2 z0~xWY+h}0ii|m0}2jsB!Th#z?wc`8tjd7fG(BdY(1D}+X1k&@SKEihAzP7au?g(w_ za*{Q&fL3eGrgWIVMgr=(>((RjLe;z^ZG7+xhb{iuOC`}1r2jJXR7kY6bTq*?lvHC$ z%85`DCzm6QqsO0L&sg+-C><$X<G250SOMTC$XwN?z|kvrb8+beb30I<GU7~^=)MDQ zIwbM~fJLsZtWefvH<31h)c~4_BOC^7&pCijYq|kaU>V?R1x>15-xlv;cwhgNW?ize z9hl!Kx-+o7zXa#H8;B5VvdRy;K)O#ZK#p%Ru05J7Q6NhoSu3WHFdw9D<sD#gI#W~3 zVF4N6zQ8z3Byy8T6rSdt6Sbtmq{ws6faj!|-jmW)&pH$8aO)dYd*=PPIlMYWd@=9T zybshZ1YXI^tLGnS()l0-H0k~5Rx>i`p@c+O2pgTz^khY2$;=$IDx1Z27=AWanI5Hl zi}-c;hb49Xn+n@rr-eAIt!RPj2Y5T;S0whn{<%=OMz?<hHk=%3r@p4>>gJDlh1{h+ zb;5-)658<GVe4UmO~;*gRS{!?xa%_{Vec)m4;(Th-}@X=$>+T}a^2D>TJYkss&(aK zag~(&=#S{LRnj)~Ew>MIJzEIvdIt9vR=HQDOI1{oLGc2CA;%S_E#%t_?;F7%i_v(b zzXQ-&R%h!7WYHW#xv0H=|6yAHV-Pcc1sPqEk)pfuh!phgxsQ8gd@}ons2*bS6U~lX z7}-aXwJtU5^bUU6fz$mC<7z+?HOOsbbsUxmd#sS+XUY>~$UsG1c9`_Pkh*$*ZV%~# zeHVQGox1gRXcJ1FIE<*nk3n|1s6J2R3MnhF8;(2y*<;Y%l-GzcMG%}fAuN!vBR+Pk z_GxOs3(F9(uU@F53#e5&4Bp%EvIrt`lZ!})fr^7+WhIW8T3iJ|L8f}w6q5g*)Mlvb zo?nuS5(liU{RNmPDC;16Cym22n31T|xD}Wn$n&lS2KzxrGzjHHQ(uGX#GyUWQS6+b znn1t>z|IL4EWtg`>3`>$ChzK)Ot-zY6%LYXk+XI|hSkb?=i@VJ`n)<&Io-bg_zMOH zh7>f<4GnFaE?fXeN~h8+w20;6VDahGrw{17L_lY)r$_t*oirjL0aM*p8`M?|W$-HE z8gED&L6H`t^Bfx<OwW3Xr=QEaL*<`6zO9iPzsTpT_rb$W$sQ?3{h<sC>#o%Oi%b=h zX7&6{!y9E+Qf_RqlxnJDF`_*bBPk9PU{7n8tFQ?X8|jYrGg(H-BKu-$dO2#z0-F{W zQN6p;y2EHMd)&}?!ee#6&bRlFx@A2M5WE%E5!R3K#;PsSO^lEBDbo4H+?;t0pFBT? z3-@RJwek=Ng;U>F5$gu7)@_JU=s$XfTw)vETh;l75sT29dgELVB1Ja{nz5S<2D8pw zdZdBXa*FOx?qnV3_KU+`cr|Cif|?BgP(Kq3%jt~LmM1XSI9O-WZL4;2n2my1E$PJ| z?>eljo1`GE1;i+-e>Z4_h4b{we7gV}DB&V!Hr34FNy2<L+*Q!A&*5d{z>||IS5a<O zNHhgbVi$1FpqW^!{r@>Ip<W)8XAN1erF+6x{brued?ffak>s2DF(V_#k&6AFyPF({ zJQ>yj=KIgf6FBHW4e91TFV8j|B=}|w3E40O^__<L`nIV#1$9AnE-%2pMz|ws!}51_ zR)`*<O<PuF9a>n0y~bl|*N{d0V~G|MO!H5TPd+_#u<RU0m;#u_WXosKzM=tEg{r+J z7a%s1K7Iup?L+C@hzKYVei4tYXTbYN`<0Tyd>-^gOI&{jVYF0KFhDF?QCW$l%;Era z(7<Jn$-{5u+ZG68Gh0=-;?E;!!fvV8;99)W0^Gf@0RaILcYw&w0lZW2%*d!szHIC- z>cGv-&1+@6v%_>u9-OuL2DfiH{-V4~pOs0#EBk|Xb`K+@&S_m1T5P8s=SB1e4DmN- zJ2V+$&a_aEFl)A+8f`YV8r9BWsZNCrL0PZ-vxlt+Y{MQijSnb}IOmiNL3<Hrm<vls zPdCZD>5?Lnt=L{4xQ)MEP;+Hg9vwon*m8V2p#u-W3RPSW=vqK5Ubs5qnnyu+uGG6m z{@Y|UT0}IqfacGrvQFgzWtrT`Ykmj)bSt`XyHzt(*7j;uYzX`TTUX%gElk>sj%fA_ zcHO9U-|3{SQi;tjy1&BDn33EFeVUV0#GoMvso_dI96>gfG}E!z^hwc#H5dJ4b*_e= z66FTw-3Riv;@j1v$j8|f+ZcD8@ce4#_p+SuG2#$RtlJ8+De_EDat7yF7PX2O4l(3Y zD3;O}nO_=PKbUkhv>vPRfNs2&C2=5_fc@<``IXxYB=GxGI!*~?K2nZ2z$Kx0^nQI$ zrmmoJn`V~ykD(G7s1Qm9?^GTC1@2d7O>Avs-<_o`V)|MS>0tByij^*GS!(yHl@V@P zs?2H*{u7=OV>>;4y|&IyWmT^4nMm@gl-%4nhfB@xN=r*`C@p}Pn9aB)2DB*HwS%Q) z4UmF~q9##+pxgW%EhauzWI=(&yBLw$oKK{CtJ{pN*`~}WRYOUD^t3|Y40Mcp($b!I z!~qxa@)k2%N6*anI%<wRC;h+ReM}kv5M&K}5eilO5`v?i<-hESBZ~%?b0oGpu*Z*s z^e}Z_zdy8~p%a`upm#{JdHAA~9!$(@d-Uh<`gE(#Z5O}HxE1{(AV3Jp(t|tw+vCe3 zH5e;c<eqF{FYLh&>|4CG3o)ExKtqbtt(}@oz;0x6b+npy1tK<|3%Tzxrm<Hd{1R0O z+3$tMgf$Zs5(55M=etc}&uG-xF~@<u{heqdA0JE`V1}aE76d>eHjmwm+V;N0g{6F8 zS+%7OE()?ZQ{IC?Ji<e`6T5`jajQKJN1>)*otmLDwmeE(xAB&FcQGYxy8NYnBhRJx zmFXIXE1RjrtAXf1Cb-wHLG8J!oa_@5Thm<pk{=w&W$t<eLpJb`pzp2x<|B88b>!^b z9@%)pj}Ba$mnBFH^>)!igiRv1BvTHeQTpn7hlED-8T=oEYou%gJ@!cf4v#7r)orf5 zVpkv_NodDyk&z;`#p*IX9QmPCLKau@FXq4nTx9acXd<z{Zm-^s=w;R)W9MRj@_6BK zPwM8M8P@Oi!uR>SyLUa>>7DBOzyt<%)FW?)N3vW_a&@kQE6kd9H`U!W4m`XZ6&Dvu zWj|BeY-3w@H=HQlV4kbQn@CZ0y$xGb*g$!?nI8{VPTGuIHR2tIxKD9Q7SRoF+@)~* zDc)>jZXycLv|xT4MOb|+kNYz3+!DP=z~j09voBJ8UTmBiFl~L@I=pr;aWaw9r(GW? zBAcs8e%>p#)K&!V?|^*^%E3ITc=0dxEyGbBchRHH(6MLrdX*gK!SjzHFpDfvos)Tt z3oKC`?Hy0)x%^7Z9UPt#FvyAYk2zCQiUa{r3cSSFm&NsJ?a>?@4t=-A;i0=!AU*7O zrBg&C)-7vL$5hAM916L;>z=gEz)2N2$4!4sk;d;X)&$vlq)8-;^m?yC-_dxdGL@eD zX8c!n*Omrm3yYyiZIuJi&Hg3TdB6gk_nCT^FE&(e+hZ_FM?=!mPN*P^gK!M^ncK$` zv#qs3qINeZcyt2#<kC0YUDHt94Cs7LMxKMNBcT8PDTMDwUnQK%q6^E+?1Zk_)751H zUh*cRZ@LIUz=brx_YqvWZ70i(#m=98DIf-}GL1tSYilPJ!>=!yNJV`K0o9vKYk7eh z&$;D87!5H2R?>^TS>TpQo{`!f&7ZkW5Zi}3x-Lp=KI_0^A3t<4u^0s4k0vQ~JAZAD z=N@pS2tOtpJZ68OHPvdWkE@Rt(_-ss7&Mi~s%*XHc{mG3JMOG&-+r0Y^~f{D$BG=8 z806`?1(PM#8oe9PDyt*O_4DOtMw6{rjhe4(r+I}(Uhk_IH~&ENT|nz%-CG$N@apbx zG&L}0@l0!v#d4@-T^-NCX{d3Cyy>>13PoLQE$$NQNq^;1u_sv&(LtcQB%(I!KxU<d zy~1re1RFT6UGb)0Xs?MV&J|{C^MX@N*FTbKzIT;baY>ZXLLTO?kaGtJIT3J|#xx_E zV|c57tlo6iA|-DtDQ4))@ciLNFmKIapNy~7++2L0)^Z?p(3GTdH`<`&;+oDwxG#Tn zk^i%R>g10o>D?(+R%^VZfu1m|v7ANYkD&_Ys5N`53U`(W$--~BvmVB|O`nEZSYjlB zeqj%}<Z?b3F5aAu5mYt!MdjG!+Y^pe5)0EsKpf)C*TbX)+;>@%WLieejK5&?#Jr9k zXyOl)WrPq0km<{n_N33K`9|Ozwpf`p6A1`^MzJfHY228g{3{nw0I6eWId}i=!eF+) z3kk2>71ZbCcY60x2Cq&xCGcY*yTNdD$7B^_CQFkk?6LijEy_Z7H}b^~*KesV>aT<L zkQSPK2mo<9$X#YT`8DW17XWb(tg-jvX3kt4oiuKSY=dr_n+PlWJ5+-+jEtrL#im8o zF4VJhkok1EA_@)7V(KOj^;MgnP=pRe|GgkWpeZM67X4*ufZoJT{&9TO;If5IubRbT z+W~0*wgf6E6H}@t@oqr7v`bfm<y3k&F><QZs9Db;8`xuJ>YQkR2Cb-?l^!Bs)`c`P zH}}U*YN7*BsjEPq-845e42JCPU$?(HrDkpea&vS4+@BmQK36|s(kMW>yT3=cbUR*? z8Ojzjb`<jxtoZSx2Se;G5IlwX;z6*%T^(KM0Qipw;vE_wx5lKHBQ$LFZ>IE_1Tj6v zExwUJ&PGK^DNgdMX;jd01u`_`DYn|{lWCC<00yC9G0mzXFkvt@&9uTsdl<-=M5VNL zJImBlFqr?Wr86m)6N&=0VR$~;SLVIT>hgHkYB#+~6HOm;9}BX_e{kI2zBex~3|s9k z#JO7UQ_u8H%?b6?gAsUX8>YqD(xYvB)$z(+K2`yO*|saCBjkstB8N2b+~#yK<@H)r z6)@>4-9{Z@-tG!;lT&G9tkkmlIP%F8Q%QfLU$3y+{&0jXSumo50O@pCJG!Zv@xLa+ zmc}ntINuKujBd=0n(@*7h(R)(81r|!mj~0mZhapo4W>Ve;?{oqV(%d)+c>XhgAX1L z5g%DT6Us40!D_1D`5!Z-d1n#~xcu*R2l(`=A4m1q!;A07I`jx{!)$m@+u2HHy`Kbx z%TWm!G%hPyWq7wu43dkw&E>1cH((x2%8*79gTw{MWc~Q|_oK>fSkK2-T~CbOw}>~h z`Hk<p=sT6^B^$5z9H7lOU85N_M@xro8&|qB?p~5?YOmF?*JRimzy|j7`*&urT032K z`h-L?K726M$3Jh3Z`;-~`WbcgriQ^L$p8t8=S6*jhy2zU7hcPeor3(2Vcy^}{cAG7 z({L4;NOLMC3f3Iie*L@kw-x<}BY!!p_F$4@En^uzg2h^(3ce@@FV@zyqY=WQsj2CR zzKTTzlDy0ckhOS`D|`jX5w_E1tgk#bK7i>e6jNTi_~_u1D<WlRn~j-SFtsRcFde*p z{ak^leA)X%YXhS6^fcE?zC7*%K}srkyo>p}L^{RJ>2Y<WQ;THq8UEf>Yrxr4gn0(M zlHGVyeb{-TeSIiw8V!KI-v;>-dHMM=Cs*+#s;a7Ihs(wl9~Pk&N)WtkVy2=I11xYk z09Wy@kBg7*ZSp#GyuEnayjRh!l#mb^?&Wpt@fZ{N`yR+Cyn8>F!q8LlTMpntwG#7m znVTYhH!oSa7(eUKu0va1oTD^9^aG$A+M`Y`>RUAEY&2aVH1$mz10>=hKuh?dF&S~} zgx&t6=p|?j-MogK$dh@BN-B_`ZKd0j0$dg$Du6u-2NIj&M|oZ_{}tdX7Mf;4y#WHd zY=b4Qa_ef%1+@-ZV?ByBn9l0*HJ1C+#y$&dzbX;*P_SAdvO8Ul@WU`qV7tjZdt7_L ze8T%gnJ{7sgkDIdQWPi^Gz)~G4Nk50eRCzF<_WUAb{KDbytL8%r4W7&%gPCY1PWGW zlZ*(x=v63l<}z3zjVH=un~jG@Z_yl%n7@@%J$Z$_W^B~CL$+IS>>XnPD-_5q`tb+( z=~v{ldE<N>h?30NxuH(Y8oxm#cEsx}{RYZ`OTs88GNwR(-JE^vWr0nn{|(+$4V?@d z-Eln<8a1KIgn&(Wa@=|2CF+AgY6vX~6HeuqFXn&BK6nzbe7eeZ>vrGfFXYeAQ3#Q6 zx1YegyJaa6@WHqY)^Lkro9H47Wu9vDph3(@uU4VIGPD5FG5LVFiRv$AJ8sW>s9XfV zCR!=!^8NO+;GYk!!ITW=9S$p3L1K=p4<ztSsEJBvV=Y!5s3g-^ya+FT%ELp}Db|NF z-U{3t@nwZaFP|1P@b!$IhOLvBF4OcLUJ~mjXa4p3=K#O|iN+=cgtzLNJCEqUFZBO| zq-_K0@4vw>;q_GdFBBDf`^1_PQ;DcNiLK}_9C^!8_@k2?Ygo`dqRkvD8BqwLJ2-e( zFZWB7j>3^2$0%XLlmf}x^cvkudvJl08o+*NxGXwj37Q2nkr1o|tRRo}TzOUPI81yg z{h|a0lr#k|LRnb^zF;-r01Ku*O*501q{bKV2?nvkEth*r%AC0d2m<<gNAgih|Lwt3 z;{%X+ilMQ2U)&9)c~KRQ;K5vtB5Nu`H#DyZ8l?yNRg4zCeEz%!bkN{Jk;`JAU+vZ< zm;GTk3u|q?s44@xjf)X(50+a;^^1T?PN&I}6D03@R)e4qV&JU|;rE#%H0wwNAu&I# zzG}IoUCn@i`U>A`=hDqn-bm!tN<TA8y11gg|HRp~bZiZ)fZB^+W`UxjqJNrS18pjI z^#TTB@k=IXWiC+v+e%2$Cp`NR_}ZwyT)$SO!rDs#3u3W6Q4;2`)Fc5M32X*+l+na0 zANiCy)b*A`IV|Kkpldmy9@kK)_zj7{Vg>G-I5DY^l&{W=5d&~vOeCYJD>kuP6Ni)o z+zEHJ>^dpfaT2LkM}KKV*K~{_-;e!N?4Y#JJ*9=u){QRwsIr=yMSS@gB%L%}LhfEp zKdth_wswU=^9QC|N5?Y{TIj7Xl_5Uwrfkk-$bNm*L(Q7PXKY*VW#`_3TUve|zTSG+ zy~=Qmjq-SZ+WzA$7x8KMFFDiPF%mG6en#ncC|mp0elOtqz$r<4d)W-%qW1&-UDV)7 z^vB?&gul0u61a^_+hb<WC-&2-u25m$bsS0LRa3tvuNku+qCI0a9}2zVx#S6<$Ozj( zggfTr(W}}e*c~9_^mO+4mE0}UNO~d1Le4@F|Gsu<eIL;fe*AHeYN88)TvTSvaS!#3 zabUf>oGmQ|@ae~1>+#R3*;X!YX$@_T>w1U}jMyriPC{xObYDJHQ4wn${o1v}`kKb? z>3jR6%(x}wW4SpNF=-fXWXt>`jO9Bn|Hg_O?D(0gbd4&A33V`gcE{{4ztgQLW`|}6 zCK2mPoOBOA>;cr?2ZY!cM+QZ2OVk>n`e`+&e%cQ6U+AZ&X<{R0F4KHF<uIP!u=8?O z2EPfib*yDU(~e$qtY&$leVXT3$pXubb5K6a$<GdPQ1yNl{qUaZsWT<iGEh{+NJ~%u z6~nJmN(Hn&R8-_JOgI-|bc@5MNK@W*K302>kEy2^lLY+qQKh6hBlpHCU^bL4K#HIa z)+peI+4=cgJ`p{NG5`-tO<h_VUIJ5E2uYp+{-^xm?EMIfF*Ti~wTG35)kV6Cv!wf> z&){JT$)<{XR;-MILPn~Br2IIg!1HLa4`aCSBurs03240f!5WW|k?mC<r|FIgND10i zRIVyyS%1@ZDai-ILqEh3-~|wib6zM_io<5UtCQHE#v~z$2GMtezn2(Wfq|w+k^QuX z(d@rkfMyF!*r!NH9Jb1FiIgkuARU!d$hD7B_Ctp4B8gcBNGb<O>Cs<TU#|muhB>f= zTV40PaRR-;9Kf*F|FCIN+N@cqfakh5gB2WTAz|he3M1@wLMwW`fdk4^8aXukvk$=< z2|@^I>z9K`K}{1Dpw6mnlr)2pB?AH2@B~Xaw-s0*o&*V)w(8!V8>)#kd!I`J4o3Oe zY!PoN&?xKGFb#ZQcX%n<Ls<Cb3(3RgvolsfL1=FWs3_pKDwcT*FQFnKFg30|hr#*X z1`E{+A12EhBr!x6QYN?~AWpIMenGTf%jJFb8#5x~-DmTkgSd}_-%59^YfaC;mOHK3 zXH0gnhBW<DXpTutM$Gf8c#l9>Fms!9Bj3L7Kwvht#ekVek3};2)3astmT=++4-3sa zFrMiH<7q;J^)oB~2ksHN4R&m{9X_s}^k#x6(Mwn(yBSR7tnwJMgE+^E+IP*L$YSQb zypcLK8#Wk2jGF^B5&hdP<;tnK7SmQzD~{!AbU$*`es-EnOGzw*hrDYrU&=5ldYfBo z_{VK_Z0EesmoSdG_hO~dA)qHRLh0K>Hq{x!L^;A|JL1rusqr<A*U^rNmPirl@0_{T z{1{Vr(DLu(D0k1EC>eMWVo>K{z2OaF6cgq@<o4Bh)$>U5YWj?4;l`P3^Po9CqR8{x zz43?rDbm9LK4R8lqsPbR^5GG~<{XD@ZU*tGf25M`)e2ncnuL6?g}n8h^5-%jlw6J; z>k!l>Jh*1ON-?52G>P^H$4lm@gs~(>@;wXyp2EZ9$s~${Uv4_5Cy&RK3I@f!HL%y# z&9H8dsLbq*dkRUgJTdV?)9T<CTAc_YwQfH>c)oH!vb$mvy~@F{?dNmWlZ1>R)6v_t zf0ZRa*~9natNNLQN#KW3TW-{St`Gk9Ed;CfkcR0P|3F69V{EKGRd#WDsW)6iLFxzJ zfK;kcsZv{t7h`$KGl<P^Sz?^5cO{%DHd3&(;{W#tB?1g50jWT_f`q}MDBIE_4l^6i zOAD+E$KY%U!U}9y0|lC~dQ{j<#g64d9@71j0D`zLjU=$JceuJZ$<#2|l+cet><CpQ z(B2fRF~R+;yiHupv+j6Nn7&<em3l;i$u0v=Q<Uf$LUN$<VC65U=sz;?)Q|a9DmT1e zG6XpRd<1SHIimkGP<&fPIU>O~?HrBY1hfo*6B*0nJbg+Z5dikKVM<B5h(Iq-&o&U0 zPO0~S1|*%mkdc*L1FqI95Lk|v=%IrB6rV*L#Q*mTBImgRpAWZ}pXt+O?_Jg=(4Z5V zPIP|<WL{xF+DG!1y)d^z8(I|zdQ{s72L~Ca)z#I*L|j(dU<~RU+lzQLNRZ9UL0ti# zFJ=lI#_Bn@?Jq_dlnULXcchg}FN*>}dus-rysnNBcuZMX5KBebk)kekr&YiGu4JP@ zIuf2olIKZ`7ytQs&!`^d@wqofq!!*IoGTmJxOG3gEAwl_W;PsMjU9wOxkKbp@8^gD zf^#I#+UVGdH}bR1u5T6v@Y79souV^is^?VN8ggURV7<4isuD^`c_H~ZbAkdL<3`@c zDQ9A-CVNqEb%_=)iDgM<y|l%nE2}xHQr|C!o8$vMogXRT1coA;Vykt`5<CKtkU;0~ zJcfUZ=+QBnWd9#Gb-G^|FhM~_m*+v@QhZ$4W|$<|5g~Ot(nez8+yrGS-qI}CNfU|1 z6U_2sQjEW_9?F%v?qJR-zx5P>Lh$Ov43oCC%I%j1@k1=1Xju`@`bGxCW%ZaeG&K{F zQUb#hYn_h!9IkftX!CHA5;HTxSUzc7*kLlYa^fa0mB1NCB8|nm|9x=3Zu&9K?X(gz zy%207T%Y<RX=ay+*ZoMI=#0V^i47CPxVH5Kk@r)8bs=@nE}jyhI>tj1uLwB-e@yS4 z6mmqga>a@7Mnn#FAtokah`0x0=qGJFRD<l)h&qBEGk+K4$8b>|#N^t$Nbbu*p~L=S zDoAdPzR6Wgt-4H=AMMY?VPL+9SdK>H=3AR*p1L2a?hq<;VT!cH6Nd5e5fBjSoNY&M zC~>v0+Cf{JIsU*-xiB!@c=D~i)Dw*-Q<x-Q^69sqnOm$>5TpWvXOR`uFh`e8;n9LS zn`Oh2RyQ<3E}ul7>Vn1w)z-K{ZEo6Qw!&nk<y68NE84k%f&fO#va>=K*v~^!Ua!Pq z#4XQxN9_dqzJjYP@$b#{&;9oIXC6uMAq2#cZ^W+~h%8APj(J<^*cO#VtO}^jiYZZb zo(8eK$E1ybZ4kzOg6hbI#sENs8}H8ELCp}cjHG{_HVAS-Vd1*O%b3sNSGV4s(Od8t ze_l&;JEB*mYbk1MAAICLl2ZCk+mf=jF_}Ycqg|Dv@za$2KQE3P6mYk`9H*z(g}{tR zERZ{6*Lj`N1G6i=HPXi;Lm-=1$`)PR(5tSl=CtU;oJE*}9~TV>cx`{JsH7wfE>X0# zm?>c(B?$*yCOjfyzRh^vlVf=wAD^z?UZB202R3p6w?DWc&G!3Jn8Y~ny(Lb7i8ASm zz|uPWz-#+~dlO)vn8ZxGhGsdC9AC1#vk6r!LPADkh_{w7xcit}WagAP4j6x^WW};O zJd>f77k`WRT+X^qX!cuN<I*@>R?Sj(rjs%jweE#CEooZ(aWuwy+$ZOog4*iv<mjiF zDalFWU1ZHsc{e$sX-AnMW-}NbE1l}utA~Wep={*ue`DSWFX;*qk(GLJ*AJsWVCx>p zv_|x!v#Ea_`SfGO#l>I59tpWsz@2%MkvBV#^bHJf-PD+&NgXo19rxc;YkGEBTnU~Y ziu3jnO6j#V#>t0qi4XVLj`>C(5I(Vy%tm3|`8aQFlMSrDe??(x!ue*8vFD`_45y2l z3TqRF%#Putg1>jyfqq~yvwtsZGm5Gw-qe#`D=E(1`yWM2{Q;qg0`<;Jn|t-qs0hPy zC{p$oLI*{6BT7n#8dwLiWsGAize(MdKZeA9*ibL}HUD0^ITwesSefzR(N#ODB=*uY z8dP_FnsDK;?|y9%_5EOZImRI+gXI&JkPWL=3n>z!?!=E6z(&zA&eV@Q!z_H$8Xl@i zEPvYgvb~0jcLzC*3*+~D1O!OoVeAIEV4p%<3i^xx;{^XRt({O&ZU)0`y|T|Y{2<z~ z<a7AHID6};s@E=Rbc1wvcXxx7bhjeijdTf!Gzdtmlt?3jG)gKZ-62RfQqtXUpN;yy z?>YC5@qOc-KlWhgJ|O$|JZsIh)?9PiBZS6Dvmce6AoswJeOFOs3;lES*(4?MM;6u2 z{FFmK>7sFRVz%ZN9G0VlW9X1O_(-enBs0K8Sm+^(SLEJEjSRD>&ie=&H#3~S=am4w zar8U$>RU?ac_nqj#gbX9cAn?(B2v9Hsc}k|3>_F<22^;k3!3_|H^z7zIJnkdpG?b5 z6Iy#8tv>{l)qE~qF-#(vC7}L*KuAbfv|m0d_E|rO07KMeL88)m-uR>d50ZemZ(r6B z2K+g?meY*2qyyI`3!fxb<M??)NEz5VY8LS-<3Ck!^vj!ebZHmRysUje;VRzOHo@QN zO1bsM!;dALutT*i<-?=vm`$<Rl8lfz|Jqo*Nf`yQg;^i8BsAyXobN$cYu!ok5E!~G z{lN2iik3;+MuK)nGVU?40zM~n0{*IIL{|e1hz1(W_T&YSjn(0@_Vr2_F?KChfQ2<* z%}R3t=LdGr;~`T}<uWVRlQCn%>@$<>;%IIcJ0UXO@R}qE2p96W*t<Z?#>OCz$$_si z9~D>yj0+}rrB$|c6>)|OE6X}fuP}97*ySi-B!YaZpYujfi4v5Q?B}B!;6p+wT))bh z&zvC1v}wX=e9>tl7bR^9f4MxB`-N^i4y7j=Ht_rLwx0TA#$fJvu%dS^Tp4~>w_Z`B z>f7)Gb4jooyM=}EiNzL2lkN|+_zf_?YYY|^uwp$dluLDzBPP9}c<}}^`R$_QGv)jT z0qC+1dYL%6t!4gT8x%&DU4J?r-o$I<WpgYrbk9-9YD%H6)ZzwbfW;{T|B;E?K3VC9 z4|>#}M5&Fox44RZWfP81k{BTke}ZIS7&3q)F7A$5d;pRRS+XXlBqfD`MMr8N0N(Sq zfcHvdw>|`n+EWs*0HvecW{~2uFVSZ~K|vx=vfu9*wS5P+p%(!qKyG@va1nr%hox!9 z&JDLfW3Bwj2!nxRh~-nzIVS~H#o_7jPCj{%EKA4Ur$1L$!+?H5OK-2T&)QJ|3#{m% zw$|6mR}LrSWJV{{s}vEzzBQ}%_Yx;qW(?w5Dzn+K7`~y;d?}i)upE;ki++mt4q+RW zDyya_bc`~(HKGFt88SB+amwfy$BOycYNfQMEL6>&AUkuzXLohQW*O)~vTy{560_c1 zA=WI>c?Z24M@KL9lzKIw$#pwBg;Xi?6c17fX9dDh&T)$s(Zg>vi$pRn;M)2mg;w^( z@bCrnpE5HpcVwuZ`Od}(X0+cP=GkUy_F|_9)hC_<^4jfE*O;nq!!q9zy9@i{$f?9_ zX(<?qStGI(0XSu~4NG=CXB~nVdH=u)_Q-Ebnx8;KMPZL=ty_`ib~ULlzOJHQbIK#l zn(b5c?i|O_(u8Pm^a$ruC43YoQtl8(w5baoD*JF3bKpZ^16d{*$Sk#n=sqa?6Xr_5 zlKcrcF?_SpJgb!3(eIe&Qx_%ml()AGD{`LUkZqmG8(TdMn}h;V2y#J?grx`DBYwJw zm94GN_#8<)i9s@Ys%9Yt*a(3o8hTb#R8HgO>pryp$6J;*;V-J}THEI&dHE}_{+!ry zJaE>MX!-@+uolSZ5VbCRQ=x*>-0rI?!Ptsfmff#)s~w2R$os!;e*`oOu;7kMJj-_o z_RVvFpWO%c0Shg2a~eSPb*Q+aSDp!u4ZQ*KUbDg2hnRWen-!+tV8P^07yG<`8(C7p z9nARlj;p%va^lff8I(osjn6sq_E-zgs`(41z57CW&z@{66$|5mJNB|B7<6TP=x*wW zi^lw3w!T_TUsg8E`8BJ^3Q36+nf_otv#PA{+9<RQz1{d-#JQi{Hy)b+^{S~=5PH^k z7m{B}mv4#YY35zanqp?AZtq{bhgn}>C|UDucnBGS&ANX0t9_j7=30k(HjxtbeLoff zJ(V>^k7D#`wr-`Y00|pR&Dd$@(C#CLO8<@CBozqPF^Xp#No3U`$9KjjZz$;TAfi<i zhvT~)i@?tug5s#eJVLmc<Q3d5zSQ*r{2MF{+c0_a&H6VUzw@n9(5oy`$A&xBi_|J% zJI<B>k@!<U+-1*+15o+u$o(w)cx$CF*uO;at{n0O<xoEd3Gus-;#XO=a{oRgbfyBo z%c0a5gJTS_vl0fJPlF#DW7A+^(|%cKf3`^d82;k-0f`T!M;7%ZiVJ;jsT`KTpVZJm zt`r*9MG`WQC>`h?@8*+zq=Li4%Y8mWY$-+(!S4zuC~W2vlj;(GZOx#%V2=GKLG8go z^AeUF12|g!vzj_PU}W0{-I^|aUy@P+)QNy|ADkrIP#P^Q?Y**wlT;xNnG!JdWdWQA zMmtrr4xr%}ypY`a84k45LjgCU^_!%S`3+zfK%4Gh!LTFgB^_174RYCKj%-w<;gc^y z@DNp-<nbQx4M^df6OU38s-=8zp$W^}c32w+c0YfAqZxVPm5iB?qPN(pj4+G@InHfL zsMlJWG|4Ri?UQ$O_z)GLX!Q>z9i__11lS{e2X^5f4G?m(`PDX<A!oLf3}l@;nl?-B zv0OL}9OMf|#cWEanQ@bYLW(~}knZC__+Vc@WAF)&Trc<Kp5xtpl=w{1rD_QoTEa&z z`Y}a17a`!NG?!HQaeH{BBG^5YLw<w;@fY`H8k^0BWbvgZ0<VDMY03498x9Z8@0Qx} z$qs|bT-yQC8uPFf8C|Vo@DO++*RK`7TKgy5(`f=f?0D#K2AnmD!bHs%qB(1(M;Ob) zNDOyH>t?y5$W16Oa|KAi>n`KOU^9Q0frnE8*@y+8AQoEzL_K`Im(2e`&VQf198yHx zLh~~%TGjg%(JDp=VU#ZXu2nqAS_eM3w3`8?eLqw1?@C(;GE<s_loSp{2P2cHvg<}7 z5_(ueLqn}>r8Yfy@P!WVv|h)ms&|f}uEm#7!!%E2%&i+#(7;1VJ^>f$-+irZI2;_D zeJ-(w+g75l#Mh`)t3EfI3nEUcm6aGh0oqn@*&l(3h`tEERvUCdz;3MgiDxNL=~<ty zDVy|<e#!+1*p*L4I&|H0xBaj7<%^9Qrfi=ZaN)_&08fXoc&rsaZ$&_|k%Ze`YLBWO zLQ%BCyQl*ZCV|69A19zgI2)2x@gAiH7mf@F>tX-}@|Kt<X1H+P8IHJ)+S;$cl`EkH zFX$zfvGn+m=nE9e`p@u$>~!A?yb416P1NKW?dz{!1FrS<H&zq#^Y0}SUh<zDpXA1p zEf~Egifj-gKb(To)8-3;4g9nt)L`^5^y#lC=3Rlxtn!z|^uu*3cj<<CPYmyEs$@+Z zHUR#k)8NgIa1(nnK`h%hX$Ywii%VjufW5Z-%HJBnZZSOeT{s>O;yapLWY6us?@xxA zkCb(W?u@ys^TB-M`BQ8<{|aJOCWtLUy=d~UG~b7nDmE(mGw>_#J=FpPWTC-=6U36o z->Mg>ih>!qW&Z<2{(Lcn^gB}6z29I+a=pKZVx3vwuw-Y&VQ*+jGgm04{I;8$_0M}X z1cTlu;DJRJX6O+By58T~yMr@TI5-~YD=UCt5z58C^J}S9u()oYlZT%UGBG-i>72w` zwm(oI`sZ83hfBD*q2yQyA$ChA8?Qj4g;UGXtssmfo&(TctPQvo`-Ue0Et8-crgYIj z*5n1)8c|y6C1M1-hXTOi*E;&6?K?n|U4$w;G^iD!0>(%%U{5hs*B>2ufLS*s(Bal_ zh*eTj!MX+1)6d>O2P6TbuF8kW2>ytU9~4*0stGqJ^b#=5QrK_pK&7hLt>={f9yW0C z9k*Sxz?HqT%`4cWlOIFZZ|b~7nrRj@(4=6R8NJsrI6Kn@1KKkeC$(+Ew57h#9HqDG z4(HLa-C&TSKzgcQ9(lqrY3FfY3~t2vTx~s`6tr)zND*Snx1I~nN!($r!$5&3&60x` z)yFIW-;p65jvFtHr`ZlA_k`Dc*6Yk!=GYkU5oxbAz_zc(_<ggT7Rvojqeuuz-E%bS z(*91<{dGc(M}0Jk4$KfH<c`iXOStN9m%ZWHG0CGD8-rs=(4wUs_)xJ-2>qV{L>rIV z?0ooB!l~3+{kOfsiN+z-D+o-yLe{eX0if}z8L?emL@#WZIT~n!Zd}~m@oOT+3hBUe zOLY9K^gZ7^r($Ony{IjT)pjlCo2_PjsNv2=@}HWAPZgYs57R~GOM-|`8rvgT_dpw) zNXU)uk>)d8MdSXB;ao(YlPzYwc_4%`T;pugeTBbj3v8ZkL4|E*&G4XXe3Kf<fn3aY z;{CC{KA-&<+i0<#=03fZm6aLL;uZAX%UW`;vJM7KGHI}TUh*0i)N9{3BBrZthowkt zj&g_r@ElWN{h^5j53$<B2QSjBZ!HwzA-fK3<v}8@BadJMJrjqVZbZ?L-4mk2hhv!_ zXJ{<f`&ucN-C|_ugFGa(=<Z0hSrhL*SNx1o+ABxE15aA+!E`Rn+_g8(7la;y;8=bc zi9WIfO@UqM;UNSK2WD{IzVL&W)Pl!1ba;@N8Qg|OP-~i2%WEE`@*_AW)Rcecf`??z zcw^6-PNs40_xAIB6nOvPx>igaqRHqf@f6j0T3!P@<CWF#LOLzVlmi{*Bw+BJ$4N?W z+9R4k$O8N|Oz*kIYe~LIq4^V`{{(divTbN!3MxjL4*z!#+};T<zk8lDLrJ>Ex8;-% z^Cy%Ua29#~+{SW8*cR3FMeJ9p!3%3^_ng&>>Sgsb$$n^{tx@rNC=v@%MAU{mp0*^u zik8ufW-*|^zrLb7kh}jU=bIXUNyVggQ<XOR8db^D$K=OQ9*yP)6-l5DCX7?9kpxzU zrGYLdeGCH<JAi#gk22wf-U+(WkO(+18Po$^)sU<iaJ?;~vOPL+8B`<yO)??F+R0xy z9RtwJ+vCJ<3R2V96K#PO^ar){NZ{$M%kq=g6~sHS3)kh2Y_R;WDw2cPj|~9gs(#^B zFcXByAP&5c>UWbB0e_Ng4C8b$f_rv8N*%4X@<0!W^hdjTx%Z0Gm8ZyvZ33T%WJT;U zSCNSyoE|CyI33hwUQFSH`F$NJUwj7>*aG?2A48w47<jS^avFw;&?gIk-QANNWrh^E zm&VnIWdz@sdcS1)o)QHjhRU)J5le4G5#i8;<7zVcx%CU>^49|{*CqP`M|kpE`DXxI zcIiCJwieFkvE}n7VW>Lb98E%?Gev{ZT+Ob(dIT9Fn$iZ*+I|IrOZ4AQb^_~nw4NI3 z=*k@}S<7G83z<v}=Gw1|Vp`PH)8wxp`uk|{U>c0$roCv{@CRsIed|RRH#Z$$>7tn% zfkr}cuZilg*Ia#2rbQ+FWA4vN{BU3DK7K^+OZ;<j@u1kxT>qPl3Mdu2;A{<Pkb}S$ zBvOke(3ekW%bZG&rWB_D1zu8KG|&_6TDs4fA4SM12Ux0BF^ot(P^AVSv))kbny~J> zHBn&;Y|wBtS-BV&4WEGXFj4vB%`dlP)<sZqN@2Ml?eD*04SnbjKrP+}-x$D;iUyiT zbE1rfC3?{N>tLT~Km@(N=zs377Aj;)tF4!ky=B48^YuR06gE8MQ2uEE<5=HpFlDJG zT=~NFPYiYS=iZH6NW2IFA$j};8C@|zE~x1!hJREfN$MKr4OgBKQt=*X&jjC-e6G8; z!ss)~$d=TCZVzyPo*IDL$N%u-l_Db~Wlxs!=*lGe@k{)5`L!v$R&mPkY7PSAQxhx{ z$SS(%v0!z-ZYcYjCi@K5O1S&+LAY}ib;?|sSfn1m5eW7{CToTioQ>l5EJ&XzF2;%} zG)vqiW)Em$4qN)aNX!)nmH}yT)3(sWY%nK^u68oeqY|t4>USqJ5Cv%lxe0So&ai|G zcyA%0EaZQEl9vhp<C{<y!522w7<=F&u<;)5Ng8u=RAvZmhfWECGb1CsWh>s_nPWP1 z=J?sUPk)9~<NTCrhv*}86~F?}Ck4HB(nd?QmIr~;9VqhU!Cb;YXb|x90na(HKOoj3 zJL&d%Hvq`6Cp<{Pg0gQWK3PS{n(K)~00n30tp&MRR|Nm_lF3(3bYL?BY!7Pn{6`yW zfqwxJmuX<TF)RFj4kYWzS7tzz2D{~Nj=gH0ymd`{jkLFmuJkJ`<|nAMCrMPn%aGEl zE}+%!^%FfXB`uvYklRsmHX(O*$_Tk%l8veg(;R%d&}vftq=UuxkW&_Nh_Hg7Zi0!o zD~!)8oD}p!+&UIE@b$GCKG_C&Z`OVRamrAi&Z8!e4}Q?+PeyX}HRR;<#WCx90L&gh z(V0x%0b@GE^kCq|d-=`fkaD6vjQ^(xQ>HzHtwTdRv=aeuH6UEKrIz!}*>Tq9vnI$9 z>S{I392)*e<5`~yhAdz|)F6i)&zmX3NVt1O4|L=2V9*ckh3FAor+pPFtxbZ<puP*| za?o(@{(lqBbzO>4o#=LXT&oU}o(XHWw-7p<%JHr|4JH147z$oVw1qHPTH3Cu4h;;b zAu*G@@6hJ5c?F*DOE~M+RZ1h_I9BGV^MnyBMn;ulW87HJB!9+qbZ43*wY#jJB?JNl z-}s|<%n|PK{gwI^FRZPsh(l)@&z4ZzSDAFofr5A|ATDBIVNvNIh0FspZnN`)l}{a5 zX~0|o2duXxJQ!Gpfir836T3kA_;Kp(a3+H8$4B%kX@b}{H&bVUucM>Ue1X*|lrJoM z8i^B(O!F2{5aj`VH!(hz8W9B&=`0IYHo3qurniqzq)8vXfGjBM1b#SK;ek(b@&Z7% zzel0Kk?3~7+OT|RzV8U*>F{mQll65PVvJ?-hmdj??I(nLBf)hOZq(?=%y^Awm?^CF zk%^Ma*}Pouzt}I5v73QDf+CYRPAgNG&+cGLErRjuv-h~uG|)nyy7f}S!9GqmUmslI z{`CLCbiq^PRgP<f0GTP}M8ih^M@pydVfg79awiJv@L3R3>b9o}qV=#*V&Y*<t#8<7 z$>G~ShuD1lVk_#+6Q=E|p<oOO$0}@~s)NTo2T7l!42{i8_^z&5v?xrE!(~O$Qv^^V zOT}09l{QIjcvbVrKiT#_6VEJcSaS|R7vmoaBdTo6t)HsTk^XW4TKloy`cJg|=rPdl z+1847eornby@G8m_xoE^OHlC$BY;Qp?C^6)$b(2i)an;wlfE&a1?`VY1W&~-Ldtqm z7rOam3Y(B=Wh;39hdq&&c+8&|5eRnx;Ch6JbO|(8RJl*}UV_pa$_Q#{ZLQLo(Zoll zF@+kv>sQ*sh@eI&0p3Lp5c&KR^^;w<90DkV1iL1WALD^WKq$x+`l8h{FeW}5^dY8c zV9GL+&9-xUb$%E&?hC*}yM+O57FGNtP-Z>5xX`EdZR7^Y!B@o1-wU<jrzC6#v?Bxt z!L-aU;Ne6by4rx8{HJc~6O1WaV{0F4GLLr*8tm^m+6@(YcaakdZ~ow38b|><-`Lu& zJ`qJViN18ltUNq5qm3GD?IXW2Lm&3LQmE8<t@Z$P7MwS3%SMHs(Uj}n^B{XbWYi=4 zb~_Hk;Y}cb^Wj*#(iQy;=97ic9O3*2&f}m!tizWV`o8IUJYv*xJ3nI%6Q;E`wJXXg zuf-#Ths10;{$loRvLtR4ei!OZiYx2o>K^W{i&%euhrNEmjEtjK7hnUt0pW41$Nt%b zVSvB+Xsi~&Lg~9<uJGMZ4POy-mMg&syk7Of<$}$y$+Z>hy=J)1-jsd%3cAAX|LdTb z{yr#LF0}0NQz;>d@o7(gz`kO`&550NIV$@+%JYrr#b2ndM73&0_WJcBJ}sl}C29gd zYSSEgtP6l3zCb?;Ga~@pzv_4ueso_W-0#KL`O$w*y6AC*p@iJu;W;|a0@?d-AEp!( z!Et&&%)-q3-~l-hLTCr>W?HW+&iFt-IS$%*=Hk-0GUwF>sNi0v|HVgQ3KZk1f`_zF z&2oX;7eWIA10CZg0ge;m`hrr@(%c^F8jp*#RZ&-d8b|}N8!+>5I{W_X;U`N)G-4h& zEj*vu7qEdH+x0;BHW%<K_l}PEoM3?JF=X&_9Xgv@AgINuL9@ldmfoH1BZSH$Vwx9U zS|>xUek*u;j_GnhrEl{Qfz#_@tVK{Z(U`(0oZ-&1=?6IyzK(zWiruM%p_qJe;b$~W zKceaP@+79b%2a?pwdFkqWHt6*)NuQ*qcT~5BA27u^)81zuE%WexE~|i1AgXc%3ln@ z1VN&*A18{wxuBd;h*xK3oi1VSa3BvS7#pJa0LhAoNe;Vwo@~(`+vIv;{3+t;FTSUq zPea@*^t~5Lg4T5gDPtp9Ltq2V^>f_!gEMu6_`JRN!UT?SKPObvQKbelA8Hs&0?<Oz zutMk(pP2k?I@zSX&V3DCQZ9xpwqiFf;XYNvACkh~;c0weF!Jx_&$pNaA^rzPMD_Fd z5+C|rv8^>e?UM5Nc+j{4%Y*X=f!fAP7)sGBE#vZQ=~XPyxVSx<%iQOO*MkA`)<+V! zkK?73v<Vo}9>he;x0W-+CN<uy>zAf6*qQz951O(=ai?sCYd<|el!n2EoQOetdoI4m zKXe3L76Qq3N|rv$#gKS!megPo5LhRk1=lV`VAE2SCtiS}vlR%2Vd3D=RM`*T09U#4 zXNT6%w(*gE9^3jzJ|@_MLXwxCt^;ZkgyEn~psgtt*s_@emcKzE*^u*G5dZ^|bFhgb z3rySDIHn2{=H>fZMFF-Hh@;ebCjkx#g9NV=GPtD6ma42zKy$Wjx2>|mz?Fx_XzbHb zEdTz=s^0nzy?x46x+Y`@ZcnlHaG9le#-EHZ=jSXX10CZC&hrV8FU>Vd${yR}q-6=N zFMM&htP?<{db6-Wp1%0&A+jn$^tTA>o1U!_#YERvRd<8|x1WAYW51Hv+rivqbQT<i zJIGN2p?Wm1Jk7jZu^4G+6A)BzFo)LXlLuFveGAQw^WK<oX5(K5_pa-7WjgXBOv=vi zJ@=4Uf|l6l+t=^^%1JSQQ32v*pZ51U@0QL6qQb^0#Cyg?u~c>biNtTv938^$j*JTv zq#&5RRZ@G7;UPrBxbf&W0{CyD;rJ6jbe!}01cZ1oEHKWMH@^RB{E|EwylVAa{{be$ z-#6Pa#HXbNuTKc_C-153$cDf!{Q8yiF;%zkGsqUMIz-Y7o^Cv1U#>8}9|>FZX_+0m zNl*zVaO6fBzNP!yVN8UqQRR7tJ;Rp^bk{HoJ*($Oo&oFZCjRGnh3zxImoWDJyf5yL zLaomXO41IJWa?Njz{@<5FBx!7a{vM6^#$MfBxoI1n6)Ape)a4()FCjK|74|Hzu!U1 zq+eOkZqCB4;S0RhFLy+M+OO)9kHqQfK;e71&fSL3aSD%vqo*lD1uQWdkdlx@0{6DX z7lg)vKoNhqA)gvqR25*58C(KJDEf#80~~?M*Fs5#5UlRn#-}I@ey;F}o^G?$JHZR3 zBjxYC_;r<UF+ryH!<4%XD$^<LJo#Lq&^<ITADs!mgccXiVtXYQaAa?c<MaXdO#nSS zM3#GOTBK#T1kcWEH!6s{D7PS_V1<t%$oH<FoCdmvPE6;>U@U6a@uvW#BY@z2zwo1A zD843NTh7y#a+jAlK1tzQb9@|M=v(0rB0|zcz{$hTa{J|5R2T+ZNu(i+ojLzK6#F2j zdp^02*dxQb*5F5@E?p^{aUxlzdbWP`OU+5s!johFj7uc@?5>4e7z`WOv$@Sn>>8g~ z1Fe9QIsY9@3Zi~@9De*TVE!DV()bcHE-~?Y-VeV9gMGwN*5QF)&$#|hLN$1UDl0ui zBO)KVBM<(hSXjHKu8yhtqs=@6M23j3Ekv+{%gf~#^F>`e9lG=av%%6sG?leVpR7{< z<hLvp5K0mz39YpRLF@SiZ_bNj<eB<sxJ_3FsQx$SHr?%;KMMvxxdQ9~<f91KH30Y& zl1kY+1k+0_xTg0wFhH}pGFv;30(cBJgS>&yO2fRBsAJ;ygGzt^3oGk!G{GP%ST+V) z@ZW;&Ap(6{r~R`JaK$D~joE;^F&dceK*RmPQhSdC6#PrLL_|p0;Vrw{Kq9@cF#P*2 zicdl$$Ub>AisEv(po$nSXd`(9(O~25omS=qiQt$jDMl~W#L1>hBmRM5Pi0$5UhA-g z9XUGpBzPNIiKyc-c7SPT82Z`4uI+oPjsBB-GQ^W|uLJ3iV+~yEvq?yrjnzWn6y{dP z%?(gs?6g0uGEzVCYryWQBdLm(qci1$vMgdX=fchTj7d^epy4gI*M=JO#u!)<#fjk{ zFfxu5L71n8t?6_h+lFTsG(Qo18GIL^Q}Q7U1H60Hxqjl!nd^wn#M56eG)tq5aO+#Y z5ab7`@XBs+zC3k|Ly#OJ8)~lvDM@|gd)=4TkzsPNY%}jtEqRY8n#e(RPx4d7Mzr^T zPaq;;10$XJvl1mwI%3|{x-8}dc~_WI7ii{JFZRm>-1?COWQv8v=g4X_SU-JSs8Mcx z2t0mWe~mr~m7fWJ_l{L5fhpEnH5DxRHZ(h-RK(sqBU>9VlBna!16Ha=t&G+rv=Aa< z@)+?O!N|S6=Kul7%uZEl)VWy+3X|M&6M}Yd8<4X@6Vfiy#s~aaDTgg-X*DTTAt8L` z*G;13d(6q<w}RH*7Rq*ZBvR7B4@=~pJ}y0D`&_>?+dvvC9Ucc=D(+9^lY7gP=l&K- zV7+iT_&FbTpHEaLUjPtWlQ}ih)xwtp(%YJJN@)O&Dh$(-1KRu8L|yl3KQ4@;{F4U& zz0!3HS&7dQrzJ&$0xZ<c_doh95wdu<@BNa;*8cen-ll8xZ)JWC1kpYN9>DtpT>Mwr zWi^DpzQyNGxY*s_M=ilUP?59IL>&~1{`PBgoL}?vo>;P3UT?NrV3W0-IrX0lV+v)N z6icRa=RpU*D3M2I%&;w&<hM7M&Rg?Ml%SBWdaRqfJX)kPNJT;K>*e}zXLi5kQY~Ng zT^KN_BsH2I2@7_a1?&=Za~nHBuy%t^^SU#RvJ*^sOETO*BNja;pvB+y>B{U0JU`GR ze&D%9<bSz+zx^c)2+KdHNXE;}q(ehPb^T1<z78w_!_eKhGR=Gp(EbSn<36Gt+6772 zN4NmfkIHP6X~5z^*zjI`L;%q<F>Ph6n+C%4{&v^q%yf*yF#6Sj#kZ{mqQ|)D9|mQ1 zagr<&Z0G<29}h%i+*|&DKH<Rz`>~J!wlX|dUU77N2KRwUX<Vc+%Oe#~n!#L7Vz{`3 z87Q#V59N`55hx1H>1lAFpWS?&Q49!aWC?Gm0J2vqa$sWucg0EY&xLsgcA4SQ48$;c zZ)>A2yH_J2U%q|SwW>@PBzI2c8BcyY10W$ob7xX#M%$oCK$Ks;(~_|-3C`<Bd57$E zj3TwqyqoK6iGEf2;~PzlNg*?KhjeYl!v?}GIAA)%)%rBEW)UfA*+pm@>1R7-?Wd~q z+<&>_m~fY)3!pg~{e7aO=S>T}ZuOPLz5Veo9#Y{L+rw+=H-jDv4KUYSPg)QMBQ}v? z{qKdNbplPlOuglejUeI?ahbRsqs(V&W#bl8(UZDOi*IZ)E|1<k)jb$?0}@+vdou;E zTDecIU#U;9>mFezaTvT>Q`6%Lz?k#-9RBd@dSYzZ;%<{Vu>&D{8scI<Gi90KVc*nB zZ&H?hvYNVRMq*+Nd=$aj6HX!^p^8MwX>ip>ik%V5h;-?<zf#S3RsH-UyFjtQ3ve^T zoF4dyz3Hv3$mMoB8?vDwghPGaG)*~PHt)SEBssDFS$&K)@IESW6{qcA`pfUrt3(SJ zRw3G}T6xD3=;vvXXYiXG)eof$<<<l@>Ux=WH21=Bh_<7{{+{(*xKGDEGYzEKAAdD8 zJXl;?F8K!v=?b|#yV@bQP|>pB{b+85cbe1n(T=1;<~OwqPZ9JzX{KA=M??FbfcpB7 z4r+0mCLTZm7Vq1DrYLlaENV>;lpmvj^%9JfLPfO#1O@lWRM1lr5<;Q&0e~Hkvz-I9 zXxC@I-bcBJw;xtxucZP@&d_uNpvoR7Z{E^}GBIp}E+<7xa=8uMJ~zb@GH~hXq(V3Y ze+XU2St3uVlfr5QQ!(s}=Q~1R?tyDeQk#@R4<nH+9(-099v&{Kt9gcV!ya*o3>(wp zwRoDeXH>o-3F`*ENHd`ux5VHgB{*s-utEfhcL#)`_(WJy$-Crwg=4L7A)y%E^4g}~ z3r$?vB^ec6F>Zbg`TT@KE8Rvf+Jyxd>ibA%`Z}%pQa)$3`SdH&2*v(j;{&7v!O`hw zIkwx@wv%7Tjhzfh8nx%s7)AlWX3W~y-ZI@?KpSs%E0`<hH@2I_8-)L=dwUv-T(W}m z6dQ{dapiHxrN-zFi>KD_LhZlaHysJ{6HG6maW#N%h4Lr1Sup&nVTziX0_g@6a6Ak- zU?ixkRAw%%1(JME2{}4beLk(n&}fllUm{8mX(MN9s=!DfpUjMK9Cg)RBc5zO2yD$S zT{w}>i+~Ys9vMe;5|hQ&|0qCGX%~`Y2BWdt={}hRF-@wW3{E3kFtq`6O2XPpIO<v% z*-_gexR_rFQdw_4HodX*Mjp!R$Az|HP)Xn+TIGqAJY8ZO5ZwwXcthre5x%v-cQM8f z=DW7lz|?wf<CNlLS6suibFAcssI30r09SxjyY$=4Gt>hk#t1|PdV11~0DXwdd1n!~ z^Gyq^#XveQZo~5jtQn_AIi2w5aIfmgxSQ+KZofEVvgnj1T#iNzTkIc?&*P<lW~-I& z*JXR8W2DaIeE@)ySl!Ml-`rf!wG*27C-yFEtkwAK3#IZsNx0ktDQ?d#d>|sC>sHhB z#f{Vai8verLcs!l2RPM#s{G$cg@W<VmD+*q!}&K|<KK84H`N){Bd(O_4$+Yqb10of zy*`-WqWv>Vz>;22^M>;fuBuP3+v};X7hTvb%6M0cS{6a@410mB&Cd)i$k}<mP5t4+ zj+DZdjvoUUxGjY_NY1|6vP~(!;eFsIKty}w8IWQ$2Q3I}Y+p$D`qoRL?M+qLgB_4g zpiY5KIl%VgA@C5#<1{7%yUa{LJFcarWnsJI1~V!mI=T&vgCanG5sxX9F~W);0Cu2F zBn^6xc`b!V;w{h3;JFng6%K&d7Vx4D-jiHeB?IE2Tw8B&=#{b_e|!{nO@s7iKR#9h zI2?c?(q(guz11E}s5XJ056aTg5*;!Pl5Y~TCPIr>c3jJ56IiWwadC-n6Hf<|HQP)8 z>8j=}+O<+#5WXg}w@fX6zcMMPy(mtJzoQ|MU&2Kt2ZS`?JX52#QeMG@;C&jUUB1#e zvpp9ei|yj0brh*ha0n}<4bPE>f6;}e0U3(+C-}rCLhO29ZE-JScW-vFs5Uc4lv|=9 zoz~D#IoIw`!1mDGVw7_ko$)-PYj@Hb9<sfsz}b!AiJ|6lawIE}C+Gc9i&xYnk1o<% zs5Quk=wMe|uIrAbq}O(-Q5*D=F-!U?dnM)53d+%rS{7W^+qTb|`$JXuavbZi!q%<P z-_FrT%D3nib{wjCc~LcQ-Td@v%s1m&rW$|jE11cIEg#(1ZLnj+m{*sPimag7aN65D zk^5MEkE>9}4~}(p<|m4Fj9v)q+sOkYFPnUtj$D4Z!EJ_b_OfBdJv#@t?T~;AeEBjN zS`IN7#f`UEmBBbTZ&u7Q4BqhiUWqQQZy|WyVkHz#lWptsNgPwz#2}f^f799RYm;=o z|8&r0a7$8TLPV$q2B2TJ;Lo2$>aW10a0P|QAcsyV2~935pVwPf^@Nb~UW()$FUkc# zhFs(%{XzgXU16HZJi&-cYJ?$Xzcuc8237%X=<+~@@T;h^>x$+5_T*`|fSs8Qt@<lB z5hQ1+sk3ed!zO>)Qz1z>ARzrEEHjQwDAMV{4elCl+kQtZ#f$iOQ!+vCb>z(8>t)zL zk)~@3>9E+Y<LTvNC-3WHr}A*}YX5V5AQ_u+Idfa>A4d3&pWQ`Sl%p%zV&b@JAnbmG z!?`bOPOgR9IBFcH$(M<}!;KLewBYAL^1Vs@!<!}d7k4+qw?(|n4_8a-1|2Uv9!yo* zJvlqy@Rr)%J$g2cwdR^66!nhZKG<6Io#}kz_1WQBz!v48thc-7*OPR&cG4GOs_8t) ziLBbq;yR_~9etB^Pe%*&?uqXZ+%i`r`519y{BxuzF$dRX=rYt(-_t;q(VS6azc;)6 z4M0)P7r5G0D!6kfxf5t_iT?aQ1uvQ#E?;%^^*vJl@?sS%VaGzm=cTr7vz!3F9Gw+c zwrX1Lc)AsJy}SD?DUwwu4T2~iU8Ijbr&idQC(R*xq<lAFkbunrdonmLqB>Bh0Uo7} zF(vtgHMDu`eYQsp7gW>MCIg85)DIra?mbxR9T~x8W@dJI`jp=nnZ~gtdCwW_tl}|0 zf)f*~-p|GgPDyQ6!qUK%8GzH4+J=FFVKVx{x3%rKh9KICu7Hdj#u+3(;3aAM2rHv^ zk~5fVY1yR3ALt+l&*pyJeWn{Ep*9~nUbSbu*4f0!$Vh5@DHRafSoifSsn6RH>Bafr zavNZYu(-Z%`(lguHQ3El25g~{Jg36<NyP?&Uwk;m$o&Ir(Gq_a2lE|cIJuM^2zRJ& zMv&m7Vb~bW1;r6=H&+zUy+2HQ_=$XB0Xq=Id9Y(fK$iaSJUTaY<jiTq+(DEAF@1f+ z&*rRVJ&t>~A@tYIK_1i8=N+O|jB}!Z2MWPzoL`u7TPB~M<zA7FaF_YHzVnm+Fh_;p zjnL_TLorYBC9>cM4QzB+5!81TJ@71d_Xq+2w{rc8M}Mp|0_SGOr6M{1RL&8LIp%dh zOG0+$lDQ#5bYjjcp8BoEt!+wV?MV@$(n-Ou&su7vr1?tq$-ZT`KcwM<ll6PB@C!87 z5En~rDCkVd?`EWEU`G1Xr@a6Qw@ihD*xIho`KxzDUVgrx8y`=Pgl$73%tJk%Hz0&1 zY3%88f+4pt#kurjd^#)jwKerf)SA*8WJ_xH1L2!GZ{%CU`UqApi#;w5ikHMb&EK%q zPCSP;d9W${DHY`mIftjubG^%PKi%B^oFDjsD%R+agoGk#d(Kkuu!^TA87(j$Zrn|U z<1H#kZw|3gw49;i@}2kdv4Fg~6}-JwydTKA7nRKG^QY-EPH04YcwfD4Q!WqN-2+JH z6zJ<WavWZ;)WvzN4^i0blyqGSiC$6s;<tT$>AqVt-!e1FizYt!wgv(~@0-h+vddGF zwqI_snE8V(7wDNkZ?0+~rsF%#OL4iKXoFRbBP5wlhL>#v#9{}24!73%ixr-nRqY+e zMW{1+>Zk|X*ZU%m%Z&TW<-A8U5`R^_N=R@x6JjgoIk~-xctKTsx><(ka=6M4;*egw zOU7ah<FgV{ZeJ!bB9W=RnUQ@pirZEyUna6%?c%m8_&7L(7rD<*OLf0^2QALGyi2eX zAE(mkQtx`$r6mZhkISBJzxukfPZEmAY0?n6%09I!cH28gsgb9o8)SI)x8e4e1^5Zd z0tDr#mL9o=ynu;GN|ed2`Xl*Ia+Vv58rV_BSDi@8ssCY@;K?mWK1Tcg{W~hJX8$4R zjUXMJYN|G>jPgOt(PeA<BG0+n*i69xT3=g;5UR49)+g2D{1ZaDqyWHX)7^M%4c=^t zpmO>Lw%@f81r(uEzDdtb!V-09yHt$0x!z7`7Fb~$FK?v+^kQ{IS(0Mv8+v?fs|#08 zukcXEp8PHkI%BcWS(Dx7ou-yo8eJu|p0SNcj^AO7zSf6YTh(W`#Vvie$)jbbHPGf3 z?md!wdwH-??4kFzYd}rX@C^Ox`3A~O!!r!VSi_EnQ4dSY4K%+l{DkqS%LisQ`QbOW zFUXEPF<jg{gQCLk`zrltL5;D?Ha|Zo!1{&grDG%b<S{vi2rWLbHnvVe!0pNwYOB|C zMBq2rI`9n!gJe7JN`_bxbWy?10+}~uq~UCq2^3S6Lty+!aGZ?3HF@P?5fg{di7bXx z&n)0RLRjfZmMlmPfq!j^q=nn1BI964^BNa7J|#Z1t(K^*jh;wsLiJ2ZNm-sDZE<T0 zO~*^!+xywK>0VUhMi`{M{lI)@sz|*3aK@U{!Wx)2j4&lwcN0ZV5in8=P`16h6MLic z0XeoB8cz58&&)6{Fv(tDex?d!L|O!NT#{{*?bnxQ`?*bkzCFZ9Qe)fA!**`_cCn(f z{m|#gmlR0#35Xg4Bz$$UImb9gF5(YsWc>WWX$2Wfb8)dl0^4Dx#zNR}(Qt8h08L0s zu=uTLtg+t($ry0BTIk7hhj;n_Fz-Q+)%S!aXC5QgxmOz=!ZNb5#Bk>bn8dG0PhF{- zI+q*Hq<F7(4^`_tZ*QKX_ovnjT%RAZXXdm=asIp!wIA>;*1uNR)4)Q<YrFTtqW=qe z3b(r&$C|U3@3l(*gZZ5hTt+n#icE250iR=E>2ppV>wgjH<CUTNXC-|_4o%*$nHj|4 z%fnG^oR8Ndsn!@$hL7T<K3nMjIht7<z&pM|K~+^#=R3UR=FU!J79^m5v{mZ&IJA`r zHq)pf*aCSUihUU-x`{Q5#?N-GakMP^>HYw3iMIgrGJodmD>MbizE=7_6IJLJ5<XxK zk(9yw0Lsn{bVFKym5vj2dB1e2r|Nmc%ZAuPn;q)zN%#Q{*@rvl!Ue|FWIf63DB^_j z8kx#M>6(TN7Y>$I*3_)5<Qv_{5ih+1Qxfp#80l$+=rK+?(%O&L@#ym2Q_-{I6BFxo zReJ^J=F+Aa%`B|$z+hrxdM6jg>eJURY;8m}FDx-(ufyxuFoH$FmhM+Hu92G}xHK^6 zxX{YYbit2_WDbih<{y=WL&RN^!W-J8P|f`fx;kYq-1GsscI0z7Fn5yopF4a2`aF^9 z;?u#3Z^ZdTGct$fb|?c{0#6avN*gW)pVfZ-n*At|1X#)nh>F=RKvdrH-Mowi{;Ihu z=jAh<Zg3DzqYFg#>3TLhubHz`9AI2<V02hZWnx_CFyDBuRX(QMC}4Nsn9+Aze2*0L zov_q0u1NC-)B1VU{9yxI!!TMxF*{aEpY1KcfI!K0x^}N=M>Y@T7MY^d_$vjkO+UZr zEr{l~rwGg8lmR@cy(y>i=0{zNa?>O6|M+zknlJvqB|E=gzj{qqOs-wU{BtjG1{s%m zDAKt~zhOWR#-GRAoC=p?PC-LY|09)Ifn>VBA72(03<Q}U!wWByy>I@&#FdACYuMcW z6A#|nT3;z~c9yHsO-pcM|Ack~$?Y%i`bs{~9m^|(1X?~>jHmGa4}J^$j=U#out9F_ z4?U_>)G!Sx=ieOuase<VCxzFywiZm+AkUv8`;8=`;|@uejZ2q}Nav4BCa1?Zq*DZv z1KoGCHB(GPk>{=9^$#vSnLTDp2WOJ|j;gG9D2CTw8Tax(vH$lM|KDI+pWl7~lyMmn z-iIfSe0EpGkcFeS?&Y4d2qBJ>pR8QY7H({YDF4Qb{rP}P`0VU<jcTdHna<ULw=d@! ze8fJVv=cbGuKdz!T^523e13Wz>@`PDRoK2Zm=@a9WYTC)K?w2Hk5|_{>c20-?eO!m zZqprTx-2hq+jb#cdG2XspQiv9`^}q%0>cUy7zs(dhgkA_CqzTHMk?=wCw1MY{!pg= zPC=Ohp@R$kw>tQNMo*d91jq32zpkQ9(dp0U3=^#}e(Go1@;3~~z*bbaDvZWUBo!5* zMk2s7Ve`8K!HzX5WHY;oAM%8p3rdBaa1hqI=cbku0RhTCTsCz{{-!-OkoLABh$Rr9 zX)jPI`5$Rd9h&x<;F11Wr2|L<xCV$Apd(r5*b@AY8eZbfU27c{x@zWtS%UWI1DHgx zM|)j%XbB1niw@UqPkWi36>!(ZtxSxT%p+lApQ6Wk?HsXam+D@qblQ)WhOe&^-F?V_ z&?lAqq2JwcyvzXIS$z=JOF0DLc=6}YgtC~Auz?2E{y~@>>OIG-5sZx&zgP>j^H5l{ z+2Xn>2f*k=oFpUJ0OIoVa=F}b+Ecn1U>@1bnt7IZMFj;e&=}7T)*=39?;8fE3%bDs zZRmNLhz0@m2YJg2$$eD(FFBG6L`S7{64{g7?0*^$8iYaNn9Hx?6N*dUqjrt8w-bMp zh2_`8MD2bDKKGsI79`7G9=gw0a5!ug7Ag~pNCC4=TX(}Z<L|9)MgpIAbf64wJLprq zuTA2j{_~yh_WjYJEE0s&E}VbF<3Ko>yIz$b*yYZ_8cF&4y?#F(iR|A)4L~|Taok&e z^292hUkkF=({#JkzUt`q%D2W{B;$GM0B-to!<5p8tq2p1+W}!~h-f6Ktg&mLD;vO( z7Szz-w=*?jGq|{NLhc?gfDIYlJT7>ghw%F5mZ6<|-uDH<@#X_;UNCh4`!9P32RwF! zZ^5x%HSpV;{w5tp#Gcv|F?c`VK&HO)x`!Q7Yt^gm%jFtL?GM;<d&kL{;+oIFm=pY$ ziT#8R1?RsEp5MP{vD%;HryX9}0@p!N9QnRjnWay3H^CsZPp*aqmrpY;3AMYcE6`<o zaj`YL&ZN7$dv9+K_yGql_KuH_?;W4<Q?c`Q7gcX<Io!(x8Y?pL@}!NS0XBdtHgR@- z{%wAqGAJkrT8xpAWn7h`^Y1Bvy=fH{m7Qb_3qwP)wDj~v;3|Fz75xQ+fr4y0t(Ah2 z4YW(8^`P>a(A^d>oRh}`$>p8i6AVG&`^X9k3g1=s{}9^V`sgbB?jqsINnk<JycR`w ztlkq^7pAVU*49}(PAn|fRP9g!YbO$paG`a4Hr7C?(~JRs)zi$n>%6q%*<(jP)5auF ze0K4q5zFd>GxB~#(fNPxBpnqv8v>^={}XMY*}3HIWR!#5p6Y64-M^srcT}`}bC(P0 zpt<lmJ5h2Bm<KI}t(4nUxwW75B(aD1iEoF!d-pE;dDE>wTv^j3Yt5TKxrxNzxWWy6 zb-*D0awct(cW7<922C9GK62BKOQSSFSDw>zGVr~E=5|k@-F@`IAE2Z+@vETM*;23l z_H-eBv2H2&{N>_<#s(F9h{MF0?93Ox>4n08CNJ*m*6und^>pEwlQPflYdt5J=6rZu zof5+^wKC5$&P-mL;hRLYuuN&GVD5kcwo1DnQt)Lw|6V(cm;Q5Lwi>-*X))kvr3sn+ zv!!%Am@05Mb;#ZiZKaH*i+H(!J!7DDfmL&ROY)NYF`U^~&<n`{9PPdReQxWQg^qBp zZJ>X*5Kige476xsN@Z(1w440>MoSC`!N^Yl36A9$;4J>F7eLCE7<9|IgjKT{vKxU? zXf|LDy+)+~`c<fli;Hq=7U-=&^gbJKz^%j8l$2V4vN`oA8<IDkM*=X>1wd8`P|49+ zqLTz0!I%p+KpiTbflz@>aexz{tRUm-n^P~zwm#e4jols`rOQPltrr3!ioJ%8Nnf{( z8Z`r}vfs<KH?BsU&PPSMioD0=Slif4TQeN_=4Pu!4|Br`A!$PH2*8uI+GoJ699QNB z7;7P92Y?{~Te+N>_U23-FZlOaVY$|{xgPvflm_yHZd?^IM$u+|;ItLb-?OI506%cQ zuQvD}@dbsp`EaWRY5&>(#wqai?}IlwaH&yQjjD_Jk7GH(a7P_i02~hZOL^9iVi2~a zqN@G(@jGJQ#ZR+?@p`4x51dyIhk^KS+)O9@aNX?u4p+n=a_9C}ui?U{Uk&#q7AwG~ zoa1fF1lH5whKIS;w*ouiA>gyagBxy4qvhg)lzHs}D<paFfRUis%5Nvcb=RV;oEm<I zK@%Qw7vT7q;D~s<saUj_oC_R>m-5ux5)2?*tgNIV;W6GcnJ1i0P>JJZzzlC!e;zPk z#eTH@b6?y|7FTQUk;T7xj#qScJ214!XxBdwCw;b&F6)gwS&i8a!(ROu>BE5o<~zVS zm*VPV+W9q75pYOoqhitkvJDfHlX^LDQSIJ)3qg`t>R38ha0h)4;PzjD9cLybq&=X0 z8FmpW+z<Y!21*$N+s!VnuH56~-$zD<tL$|?Uw3UwbX9om&M|}!Zyp1VDx=u-k>;=% z+^cTjE<yrFv?2<%vIV1{Rni<_1O;`8UA*AHe1_b{$Ux1(Avs4yaI~|&9yk=ALlE7i zF-AqTidm+A{xzLnut><d+Boj*+Q5RO^@r46Z<<qtIk9!4>>TS~X4F$OE*szJqe<@% z6yzYFlY}Ol_)jt!<PkZ})e{4A!>S)6uTs-p)EX_jae#N|%hD3CZo58K@~)Woxq|~6 zkk!{+*s2G@<#^0e`!>VqKVe-kmKZc>0Y$=Yi^QGbFZ}{!J`G{0z(j*|U)(>=o`Qtk zU8OqVdz(0FlqLSJBWQnDO0ue>K=gB;(^%Mn#3v8Ykf=6aA?Zu6p)&CaUYN<4ozF3> z`=mYrq81MMSC3xzbSgZinWN`BGtXKN<4_?e;^0VO*WXx|!HSH5k(TclGxktYJyc;3 zxUM$Kn)dD1uAFH&464z9F18sGdkrKD3%W77dqNsvf_bHF+VD<%HV_PzBWAYw82{&Y zf>zacORtqYW%}>xNR~0DoXa{Y5BuwM&W&sz|I$+Z@qWzQLzw(zcRucTb6lCm`jjsm ztdp68wKEW(9<t`l)W5Lj10>{Du%u-5F%OKz*GE6%f-Gve?;Ncu>9GSW?OTCFNHjO0 z6|EsI9-J(gPRNuzpPC?mgS==s+3%!W2JVs86(n4y5Mat@niO|Mz(`LoiN(pRU~36@ z(@e(owQTzvM~bkDiro><h{}lBFfdM-jJJlvG4_Wzz@wVlE_s~TZe?k@Ax_9o57F)H zMZ9JOtdPP7QsUpSLF=`x+^jX4AS7A8P3?=)!D*$-q7+o_3nv>TnwtJArT-a>{a7(~ z(FbtOE!Ky!fjO=~uex#6i*vWtzPEy|OEQg(FE-(Wbwx38xL!y|J>sEo!{C7@AJ=^a z!VznWjqU$F^?n=xkgN@QTmA)*fa(PxNV|RmBZl;U{Z-}NYD3u<up1LR3pgLzpbWS% z@t4xgV{{e<WdN&oiC&yRjkEZ0-B^i%`PIZJHi5R#VC>Dsw4}rA1^vm@(LDNau*>}S zc2p?92O$fy^-G0?oY`oEnfe))4200H5-&J@VOieP6cUC`5o+8p7g|(gpDm&Y)I6xH zy;r{18D?H$UWH-i_xIsn;ARvUH;~AoQ3fw}s+-PUsH0UoAN$@zUF{dR`kLj9Ng*n+ zy+*Qnar^Yv_;IN&_37FV`*Dla;<~U*_*ZRjIw|+Ng@6zccfc^t)oy@^RPEct{oGk) zM{eIUtkGiQ5)B5vJ23g*&rO2@x}*cnAxjx*&j6D_W=wXIFtdo_tI6Y!<)nkjzIs1d zQk7K~z~l*P$p{4M*{U`fug)(n%mFF30A!b9*Pk8~<m546hP(*oV{T!Rz>NL_U}G$p z_M(~~OF03%#`f+v>c(&0d|9ZO^Falx6fZ(TLKI7@I3P?BZfb9N-~suO|K;FF6jWv# z1UluVO;<)hhHCj1f_Qk$ntzt{v)#7Y>~0xznNOoT7Y9^=8Z>+|AlJp$gJN@OfGIkV z3Uao1{<+JW56OP1V0Syjiv{q{aQjDfvB924D-aTiE>%*(7Re1seIn>{WNX;q^FxJm zl`}bV7DTU?z+^Ht6DtrX#}Tb+0M}#1s};fX^R-MMSsdx>CjjKtK$|9kk0E`M037}5 zAI>F@dxaEO(=EyW7m6v-G#@(9KMkq-R~4!o46TnCDFMsr<p3ALKT=|R;LIIN?|BIu z=;oyadrM}S8Ok){L4ps|%2ISEM1*s6E3mwu`;f@$*HYi7SrUuHLk|A>_3J}>x9HG! zvAgpD5D~=Z0LfAh%~PJ7oaFeXSg?(f6BAn%G=KmM1vH)MboQS=eRA2o@uOp8AeO-j z35jay?^nf{_mKKC=lJt$KwIZf!hV%nTroMnW^(KzVkQ6Oamg8O2J3Lgl&z!i4G1~= zAbuDmNCIa=px1{P)sa9m0l19Z79D6vltZR3rEAA{f#?EoX6(jUMB@hOEEH%t51I1| z*o`6q+|R2Br?Cke2*?L5U;;|NeGMqH8o({S+ZQO-5*@A$4vuG1oiHO=E3s42=)sV9 zB)ondS&$N*`cY*<ggy%J8F|tB^RWgb^>@q9kMn@d^vvW)*H}Enl=K$j!9hEF+r6s! z0TBlR*#6u=Fy<lCdz=bf{81GPNxbPtyhf5AmA<KA?NjnvN57THFyxRmj(Z**5fKQi z!sn^`8UXuSr|mfx9lW9q0h9rpQ%kHu1E3Hctm5Bw!n+<Y-5wE0PVOTAde{>rP)ZvH zDR|iSUqg@ovB(}MaHpFg3uuZg6O{kQwO1oc;wO6DL{Ep5f3jG;1J><?qbQEqTXg(s zvt>;;kzi}3iv=Gnwc!E2aFvpSX7J8*4JI&RxNr4w(w;#j1tQ6$z9WrgO~h>;+TPBk zU+wTDf>oPNtrs@XYiH&gkV-*yeD(qbU!&3YnWd%W0>HA|5!C>gau`kRrFwaIu#I|| zApm_SgrJmQpf3Z{N&}obS0e|N6{z_6(Lt{f$EUKf=n;LSo;b2K6)U(JpO$`v9!`Me z<_2#HMd5UYU)YhhxL6SbdA+tDC<t==VSO4X-Y}@P0Lr%vK5dn5TEPMXQGQ-tHsIeg z6esw<tlJ8GrjU}0@(u=2>K_7TTy1Ub0*EYFGWSqL;3OM?VO2{Xil6aWmaJI@@I^Oo ztbW6&-f=i6Zc@NW5-%YMo!JKzKyw7YXN=JQQpuUp!C*Xbj(S!8pNF1`|4!=3VJ@8J zDdGCRkVZ4f@9X&nHgIe`qbr5XQWiE>=$}^@T5okj+ieT=c0ATvoGRTa&6nZ6T1KrS z-Iy4c=s%+PM;@!%F|PsvYTa6wY(1zg&0Bhc8t~75T&z1>OvYBBi={vW4kW$Q3aJIy zO~h)O{wWMp*3tM07${zu_`070A{9B8X*1;E$`d^Zz+ZV2O#uOoqJ@t?!b&o=_HHUZ z)Xfe6>g@8M>DXuwn1m4k07L?tw+bpO=ye1*hsH!4>h2LmfalGRT8SK`IWmGxOl;Aj zw8FuxCn{4ZQQ%f&X8oHe@sKEJy1QG~b%p1($K;E*g{$YQ{x|E!)oFGIRyk9QRB6vq z*0Rho-DS7hI(Wy81x*NKiW6N@dP~bQKzbk<n9R(eg@@UN<^|w!eQv%!Q9%pRh>gGp zP<}1FQ5WkTkE22m2Ob}vmxo}WQJmuc7Xk$OO20UUDF69D0{QRO%M%%as>ASuSKLBf zk#KVE|IK@U)8L!mdj&r%`wERy60oBxnh*=Wgyp}X)IUZlM0m$2lgCU&z_R*Btg65k z03&HY!+=U41Ajf>!qHwX1}te$cjxaTbt0RHU+qZ;Em_1N;=>_}-JDsRot;JWw7>2E zJqf6ZH((>iV6cw<$WtanqHzRrq<e>lyb(G;xR{!SrKfolkgeK54<qJ;n1sX*>nC)Q z>=RQFrl+Tu!fk;7puE*6j^tJukY=>~{vJ6JkJ-Fn@Y^>SpuP`E2pEt#!@qj%F6C$X z^NiYUQEznv$Vg)E6u}tLr+0|u##Gz^v`KP6xgeL%y!8gi6|C5Ea;0*aN$uG0J!$Rg zQt;jThIqcCm+jngxJo8|d&LX)u;&Ux(o_SB<fqv)*e7A*+51gpY?;|-5%f|aX3ox> z{?s}JVc@3ysO+(ODfc1I?Ba#{kRJQJje9kyXe~u~KXJX1#4LP9d0-?(^|6)-LKoX8 zRwE}~#@LizZ;a$~TlFOP&LVw|<!aSi0=$Ir;o`R&lo4D{zQ6aCy#k)+++I6|K(cO4 zFOsXX@7;Y)6G`WwRzeeBvy?-X2TpVKFU?xRR=yf`J*=fzSX?x-Ln@^WG6bQzmKcyy z-Q!8VcBK7pGcrL9v@ex*u?}hf3CH78@A5NPihuP5_2^&G0Z>w*GJz{#qsiVw-BJbP z6HU-?+CR$?&~R(E{GB=Zi9Z(-cI3;OUoF-<&uQD6(H335RFd8N$nU4M${x{xOoRU7 zWzq`X>6Cq$<k<n}m=zjJ)^8P+HMRh!y_ioxI$B6Bj>0jagg+X(e+IZxB=}zp>)f!~ z=1BN#A;98SY8>eE5y9a$0ns!mNB9r{z%OFTGEI0R8V!(&>0^vwq|kCNAl;r&_W#iK z-|<}c-yb;s@<LX&UJ@BeW=2-_PAPluy@`yhtV%*ul**>;ksTtEl4S3)itLa*!tXrQ z^@;cIkMH;Q$M3)E_O9Mtm&fy*b3ga{{hYHgI5v-~9)^S*WJqBSK^c?<T=aJJ@)G`J zLT~}`p#wD1G2?&>YRFV$q{{mGNMPelT%x5i7=k?uMsb~#S~y>PqCsFu>~>#Pc0!0h zCw{}Y7yh;tL_#=bO`wW~L*O&O{hDocVCME7MNo4(#BSWnFtaN?-YRp#Iq$YLi<OPV z_e%bc0SG#qqBlC)A}1%PP86Xgg~i9;*42}vjB<rN3VKk7-YCyPmJFV(QkpJjRNHG6 zTNsaT{rHf%13&`0s|Jozz=o!Tmo1P~h#633pO_M22;JW>qMwfN!IEGQu7{}BjpWd6 zumh?=IrRd34Bh>L6ITvo{1gvRv2=VxpZ;&s=-yWnioiDT|J+l$Jvc^iZ{i^M`}5Cd zDE}-?YkI0(!z=WY{>(}C-N3ma0&nHMVW~w^t1}N7Pd&V-`7k4=^h>mcu4A==prBTd zcuzmsa$bX$9D&T|^gF#;k2*CxS6_Z{(|+8pm3`_Qxy;9e-^rfU)7op^t&)>-HLYG! zs>yyMd-{I)BU^d-dplwaes7M}gepcbsBhO&&F`Ug{W`a8Na)T>!{Xv%>tcp2;6pT} zgM3nBU<DdK?gN%HXFe5_1?>3d=oO{Soi`+fbGf`Q{3zW~3|Kg0eb`S`eR1SDrAdWr zu!W^1J16Jm>-oScXg~q6YGgl&I72&N2`rCTHMF<_fT*DmMbGss;uRKNTKl{M2Y8Fu z%N_fokb`7mDx}zYbts~G%Wt$6)I@^tHM3M!RdH}X!~Okp=(Vov4fvGom&Til-G^!e zlZSmKPj*~`29c?VU)%2(HFej<ud!+HoTj}}i4zEe1spvpk-tt56h7!1f8-Hq)72;- z6TEA)^IDss=Q$w@dg|6AHj%Zb_o|KJ{J9^xg-28dPpPpyh{Id%`FhR$JW2UOKn$JT z*_tiGWgTdgu=5xBWdF5iQvv!s^}ZA}ra<~g6nXikM&P=YkX;uR79Ma0u0y5N7Or)P zdCqiSx=xac<>ZeM<-V?<prBqGu=6>NR#-;*BFdjEiHMmnh4kF_>{J_kX%w0)2!+Fl z!m1$}l`vdjy}bqheBgi1$L(H`Np~FcVlzlaPu$x7t^fV<9Fv)f)M+hNH0tLyUyeR` z=3I)S@0bq#aeV1ICoDnJ^C_l+@dNF`HiNaYngRHNEA;ed1G?R7HJ*-?82!A|7T?s| z%)j%|gxfAE#0xq1t!@_79iWdt0He{Tu{-;BVsVJ{n&Wr8tD#qW6cfYz8t3a65FFfM zDh?>3hj2&ygz=jj`fl`?j~~(BKRsf%?C?z&ZhOjiD`0DywW;z;x$|Wht!9B^>?M7l zTUyc|GAnjI=G3*CGz+GKWD|4Jb^%MNUO@k@4cs)>e$3%{hU<0_@S))o;19#>EWRVX zY1u*?4G+wkZ~R)vW5=c?PW{T2dudy|A4SpdBlh^|8|QiERac%i_V1>ip7$!bmimVH zDWt_A#YKG^oMQ2@Mi<kZqR^<XTe_*eJ+k-wd9#KW(Q_vgaW^jE8Z<k1+F=E8jV9vO zL>N!JVQm(%-`Px(@Vg>2CQCi5tbade+~Vz6UM*FX-bV>B(=uHR4GK8fq_k3=lEMfh z!sOtx%1t~m#>B`GB#BQNN{-u(NAs&&jURd1KkpSZjJueWzfLLZ|M$iJ{?EN=hpm*( zvR`6U`KnmUGXM8MAiumu#+%7Nkwb|Uw02(Nv18gpZGt=B4*hZXAk4~x;&|xVU&ggK zP0?x=^Qh0M3jPW7y&I=Ov~rqyl2)o|vL6I>R?YV0D#B(GMrvy3`dA7|O8dczYtdY9 z-n?0XcFnOo17o{5c3-L!)@xd4p5U{<L2k8PPl(1+l3U8S@=SIvfvct!d<ZZTR5jE0 zQWYBB?$fS|fY~x!&sVCwhw&l}_!hW^lC&4v+S-IePAP@hZ*6WqlNB*CHrDQ`zsGG- z&F0+(lhN#_PRVxM0Cp!8x_yEuYnc>S^&CFIezKvST|XtY|NYu)=uG8q3+H^Pc#ACf z?CKfUx}|;A_^R3CPva9A^KIn1D3U^&6&VuOkC>}`KX(1&u1P)&KbxSa`pSziPf0oF z$aMDU?(acpXx1`ez4YbzYJdW;7@n_#?*b9Z3M+83HIZ`Ye%!jVpX50xY|l@MUB{1Y z&(-CbX-~bCwxoAloQRRSN{{Ef&ytnG@*@%piL<jb8k+A%6oJjZ2xsqBhhjNSA1x0@ zZ87E+T4-<*!S{BKHzV|4l)7HTs<ssyFS6`9_-d|pSc3j)>{J1v-`npW6(T(t@K<p@ zPlw(Xx{s2^7N@YYB6hvVM*d%p_#61FXookh(zTzOQga7Cl!;vuSjI6m_n|bsm^MoI zje~`E&?p#?Qx_~YWN|TtYv$V78t(^La27NvxcFe{P>%8I@{C!7bI&L^F~1wpsIuyD z+1`EwxR03*TTvpOSiil;m7+dJNI;P4vpk^=G}l>^T#uXZ*dKf8si@?kd+c*kcD%CE zqifm$Q)n!i^nhH;U`NsF5*VMUi7`e%1mWV~u*GR|EH1;vnGCpI!xk4x%)!RSD=|B_ zN%eYV%~tQ%#Ccjh4Gme{f^^riTvVWxo0r#^gKGb0DF~i#VGk%P5}zniw(fq?MwyLV zF3p80Xhzf}c^NGSrj_X0@`XXSs0}(aDUnf?M;Nl}III)4#9Az1;0vTUX<Let&h~OH zzl6Ecb~Ar90C0E*?B>B~)}qYfUZuMo8rlU2MoT?UujnQmb>;L`g`$@YBiA_-4QBXk z<kAc;<OwWS&ICzbbYZ>e`+rf4!to}n^AjS?yesi9cO&oOfP*CJ<?mi>4!8L*hhD5b zH%MgXLAwbVDyxq&Ad6d|_{jOwkMIw^I-I(v{FA4DjJIoF9ebHqvhuA-lw+ZDeUY8V zI88cP&7ZnS-P6q+59FXzLKkK^d3f$47ZXL!5+&OWS6B94ju$kwu{pCkH=wy>f~kj{ zQKyvO{ZgWSM0l0+WC;Y5@Aoj)&tDi`PeZRF;5nn!w5^ZNKs4616?e{>5dL44+`d3c z)-W?m>AmcD&NLuEauu#V3%t00wq90FPcJzlB4S1`eK+Ci*YZf<k*Qjm&@y_wciZ3Z zihq(ABOQ4Kbp03DmNHcZq1+9J?G!xCA9&)D-7q&c{e1N#){0E;wIBAq-G1wKS36xE zX=;3KDIX>xNT=q|ov@MWzgvV89v*Ht{_&v)T>0v#*JmJOU{DpiJ~w&>^`NE^jEyo& zg)qjd05kPfQfipbUK@+%Z$<U>#EBwx-O^vYP}|$x!416=5)!sXDJxt^e}B~%kOUQs z1{LT_L`T<{-Lr%Mb(>ojo|*5!qgfqS6F!iglaTB@*(KwAFi?Yn1oxkH7V2;Bd4kUb zhu*B;pe`ZcV%7y5)R(RC&w8Yhc{FwvxQCt|YWrsjwdD}(E$x!K#DQJupH1zCv#F2P z-VYV#EgLq~O1~jku=b*_1$Iq6fz9`)^oIdYXTjYzodH?6_lZ<hk9k-+pb4L6esTGi zOVD(=Z^4}>78hDrB`FBUFMoE2e<)!ns0A&;<Hx6C9lzjyO&SoRoN=ml?T~7x0UD>R z!v*d*5Mr#>erpIrI6eXbomoVf=(NwzvcA0HH|a4z4Bdy7hNm-W{zP+qUiu0K1!F++ zfafUS>~W~M`P2FNd7Gcq!uFhMMn+e3V>HVWyIV_eb+WHqy;^X+0Nre;iSmCS=(+iH z`}<EWgMjH%*3`?CsD9>(6M|V3b&Xi&)ORS=D9*Ru`~nLRF9D>Y5ylGAF!!1x)4%)5 zh#~9AyIw<-+4bw?*@2%weWGBokkE2<Ei}Pb$Fl{@c3w;kZ-8Wr5l_U<iSpmixh@0k z-B!*nj5!RCJQ!0lNIA|@*UELgeVdB&H+lYf@;VDF_bsMW1#*<#FLk{@v_NsM@CU*} zPY+2PJOVA$BvZO4m$Nr_J_Oo-o8B^VmJ~YojKdGtt&Fwi>I481f$MX6O-ry3Oc`3$ zqE8r@y#T2~F3r7mYbH0E$x?@1$x36Qp}K(^E_-R>-^tBgMQ4x8PUsPH-Fug?{Hd)i z6ZpA{(FKODqF{W`>e%)20C+4mR#rui0LLR_2F2MhqyptO*{Tqih(sT9Yh^{n(=si9 zn$tjz-du-1{c-;QXXTsC30h6w<n|u8eKa#rk~t?(Sy|aoFQ%#a9{UGozhrekNF>5` zVph}AlJ6_X9I)Y|&DRjDOExlY*<QAKPEm9(1b)n1I37V?Uk+BvxpSW;=lK=LJudGr zmz*-mseL`D>m6qG44k4-0XX-VYxY~=wInpEEkQ&MU<KKbAIz}WgA(Q|cJ8e&Y%-KZ zq`pyG%}kYaXvx((BtZvL!9H@7jE)wAxsZ2X*R2WnGf*SR01$JnIPL`p>BHau+2Wn@ zb&NEF)g*S^(t$TIA{>>7Z?=4&aUdJRKN29tbXs8JBq2Tfp+^qF+ka$#W>h;$75juf zHXVi1?SHiy!QFLXf3TCA+Z4yEYmz(1&q{V({9(LBFPT5Ay~M-tV&RlX_Wa_vccrj- zvttOf{U^}s<d+*_xGQ{D9Xd9dPo26Oa%Ae;%y7+XtGf8kMS;s}ZtL^LGo9%X<5Yl_ z(_y84PjiB}PqZG}?f&=mSbnQB>Aog{!Z&{ZYFq*RAY!<_o=NZG?coBR+TYQ!Jf__G zy&#KaLG879A_?pItK5EskM3~k@xt-Kj=`_5TrxrNBZ~S7s=VjVFWT3WpaE|O%3Yzc zNTlDWVue{vPw!$A`}7w3#al`@(K{_9-Q8wBSIn^?0}DwDZBWn*3{b_d&>qtWd+W7S zyQHY|Qbv$NYZS@B*KjgalT~0EmilaeU*8kR2Or@MhrpdoR2^)hh}H8h>+i|a=MN7H z<7+T49*$e>m+gba7Fm~K&V;XB+x_ix0tm{{e%mCUJ4k{NYXkP5rLiYlGt}nuQyCQ% zm11{uNQuYbaSQ0?OELjD`OR25A9yws$ipqOO%|pH9-a(*Z9#F8Sso<6NpRaJ|7C6D z1#j&a*EbN!L77-^yq<)BMfMPgCL5Li6UHJU9*@6Xth#pdyNY5?_2rRwjkOQtnU2-3 z8lTSTk{^XuH4{V#HID)?J6sAVxI|8PhMkQq1vr<>QTOiO&unj3!!6Mlx{Z5^Uc^n_ zg94-SR+gjN<Z>)mDsb%vD?%7oYO332t%||G*<_j421I{*5D*a1AiD*8Yd3xK$e3c} z3583SF5O%QT_irqe@$P(oyV~J9;moH=dUl0zU|J@=4|o-8czZC4w9dwq^DN_NK$6^ zGF<4UOb$+e?Yn|Zo2)9ug<H3Bb(o-=s(BK&#YF}`O{}C_gK-Io%FBVOX@k)gSFelb z_!1M!p%{fH?H@&cT(xpy09oa^u8Gf&g|ok?P;9TLnL`X+zLYjmwX%6+4>Wp>_$w|? zv`{8w0(H5c(;CJ2`C~wdzbGOik~RiWEw{V7dtuY^rYJEqIUiH-CP%HGle#V9p}rnK zyoKSY;gbCN@Jojq(UU}3)3=mf1&^doZAh!1IP`=mdPp6$18XeDnO7sy0>x`3jh_xZ zKMIFV`EM%zIqh9I!l@r7ux;gBAS6}X+NSk<Y1!x}K|DDIHfS=QHL2EnlnJ*!sZO4B z_IguVDxmo>zPrq_k;Kj2y~H=)DG`8fSiv%|4_(mRYW1i?E?juCU0^4TO|)x?6;we_ zz41MQ=gPMLjVG0<_ek4BfHV^IUCA0fH&;DS$yuqV*9g)CPUs(^;XSrBEPS$WPmzf> z4~4r?RCIKCFR1PnrAl87kW5b>D*P7SYno%AhI-7d`C*I59QQQ=bP2RI=9o9$+d^k+ zSMdIn$X5pVHRGo5d2NGaBY9HBcM1Y_wgh~Z#si&nxCQRl@Rwg5`a&k1$6)QB-49it z*8wme)7sKs436vQJXpaONiSj0A&EFVzEt~^jP`?=8nLzZlT%dn(j@}rWXVL8g!4?I zHgIvfyVPD&q0Ed7hYOIdRT%wz*%Krbn=FkFgdzfoT9&6RTn@cO&;ukCR|1ewq&W1B z|38Oft=BWjjiRbguU8~)Oz}5n*^D-CaZ~izpDO$hN`eNvng-?3t~iz@rm#)`lW^ub zXa}8u_o2G{su}TLKM9L5R6VLi%>6+mPKTx^qP3|W>$S&pTEzuLny2ycmnD2x$cR;} zNFWw7f~29BjL_?SX{rjDlsbW#i|Za#Y^zCC6_pI=U&EseD_og+vee~PmO-%W0-{1* zYGI^Ss?7PTPC3cZ!W!wTSLxHO2TOPAb&U8<pNB;;33(OhjPh5=4=_1sw@<Y)Fxe(S z^|Z<NJ)^{gEW;kg90sziz#Cd0BkO>nv;&wLy{!+-sdj<UCWECnAu55_9GxiQexW-k zWI$rCns4_e8dF70OUqgH1Xcs9!%!$oTYSj7lErOW;oI+?57+|0PIIR_?-~TgAq6Ry z_7qU3jK~T@;9tRz&5}4D8Yug-;hP8Rr1b4|Cvn`vFZrAR2}<WhF)Bqrr9#sKPmjOI zj&Mt-gON6r;s3b}y`W<v8Yy)mWr^FLlz|K`nKKM(jVPpvD&yQaN&_995qY8`a1AS; zIA88R<;ReD1$lWgBE^#TEYuf1I`mij@ca1radO*2Q{He>qJg{8?EHJ8YeKGodrRRw zW0Udwh6Xj*qsKM83CUIox>2gcP>H}fkw;biG$kdND!scuK+X6Fj;Y1v=Zg0`!O|w5 ziR@))dCG?!?1V`!^*r;jsVRMh_F3<<L6s6o_57Sfoe#z36c7QN_G1Mxnp*PDRg=@w z@FIDs`}|~jrb19}e8sp)?sO@$O>;J&lY9tKb3?CR+4Y|k+k!!QLJ|_82F(XCF>=s7 zQRJ7wO>h{a7i+4alL|=Cn*tI;mN{2D_sqsMB_+Zl+Y56`u+A&w`S!-f@p?*y6Q%%_ zf3>xfdqFZKS3T)>=N~jFEJu>)*?XIZlW5KUdpR~PsI6QN&%*nMfT7;;D()xIlQ^ij z=PqM@?H|7!r)xgUCXu<C{pm41KjX2y;*Gz<z~0s~;n&+Q$0OBoCs)Fp|2|RSs1yeF zg+jZm4!bdjHX-)p^DspbA;~QXB3)-ZlcWNZKHQ^WuEY>o_{~>NQuUR9LMaNXi>Eet z-fW=XUcEn6=o$&s8O6405ho*K9o2D&ue1%Wh9j6`$6&`v4I2=}uK0!#xSoZ3R8`~X z-@|YWYzEe%kJi9dS^-ewn`(*~<>6#o#CjM(9<%FS0EzWrwRK|CPu|>^7|IYFyf5a~ zT=tg%&y;ryO&Dyxe=jh-!sGF(;^R|VvaGG4AZZ6Wt9vPYSKCi|FyrFlLMc!Nfh`RU zZc71|Vez*?b|z>PY}2;J{spGa3-t8#cYHMTcsGz}pN))+OouOtFrd}f0|?w+_uF^w zXux>)Xbt>S1Ok40TfB|7=zDP~hV9(BPTp9y?hU}K_X6)kRba2kM0wBjA0++CAcs0T zn}0sU@!(G>ODi*I8HfdhroGaXmpB}iBIt<~IoVl8R6CtN?Z`VhW<S9n<&iywbcd4d zXcoE$?N8@98#iYNO^WzRZd{5;|7islg_Ye`1x7!&hGq=2f5n`v{6Z<TT!A8@2fNg5 zw#dv(R#;~nJUBG;v(;;+n;m-paJ!RS9?r0cN+^37Okw=E*De}E0A)aL!CAn1=FA<0 zv^y_(>eNlWySJkwLb_o$bp$ADmq1m_*t7cP#dW;E?Z>B#KsX?kX~i*gf8Z}mTii;{ zd_fJQe1Wgcz!BPSul-D0hU`rt)|{E-8xDtJmB+xSI1RU28_-)X3UG-qWJEqbD;(_X ze7HnPJNmFH`#em>YnAw0ocf6i>ZPjixsZ3vWu`4#{ITp~@;x`nP<H<I+XWCoZ+0)} z?Wo9Lojsp?(H<A~0-LUS<XH}#v^7;7T>;E3MzgRwkg@Cl1Vw9d8I<15(WMTc_aQ)8 zEqt<I>OUH~`U30)$2_XM7U)4`H1&YXlU-7Cfi^WN_6uW^leSMxVryQNm>ABS5clS- zS?Ro-v3t)Llu|+5b^nzP#pu+L&*8YCM8<AA>X4<b)DUvx_iI3epDinj)qxMBG`d0j z;5%<5Lx}$pI7}i%ok3dGvbPIrbU)eO1{{q3x=aM;KEOevh!<}xwtqYYO%3UZ!~F~^ z8Xr|U$Jle@Tb*33!?W12VTl#PKn}Lbx5Uz+4?MfYtMP=l-(H}nR->@!1A+$lmQLIe z*n1Nea{8h%a{U>go_>u92Gw|T^hE)<l+}S3J=UXPWW+W7`!8aWpZo-30q$pi_%S_t z`jqYU8KMp|8Fz$qKun%gWOk*qU|@#*J3LLUM=^wza6i}W`t@EXzkz{)hE^fY%aR`> zL$HcVAR-?cn{wPkY=%?}3_PNWa7)*&{x(6eqgjwY?!48=bHi5~o0o$V5}Vardr;eH z7M{5X#VT6#jr!xKw#@sjteuhdvhNnsJ+OJ6tfwY@Q@vKg;3S`nMg*)HO(kPsbYDO! z3Mcu-f_e}#9C=bq$0HebcT!PPudh!+Sz_vK-u=DY=JBl_cL3X_rmag=O8KloDdXC( zQ^as6uD5EuP^3zdcy^W~rsCy`T6{vnQy4;as`kLmCF}60D2(y_5GHQ@;@k1O-uik+ z+asX>57FTgsxtv^h>N*%uo00?g$F+-YkvGt7}rJaH#S|+y$Uzpk39G})TQDgRB#=9 z<3WvgLobvIpm^&>zM^2T?QrH#lXloL)*L|Iex>`s+s{a;cGaYfRASlDCP?QqA8~~r z&UiAK>#o^McXl)v7uz@RSTModobe*?w)aK7=DGBVh<@aP+}AUkC>1Dq651TMlbGJO zvSN>nV0fdU9`n8c-c}R*atzx~aYN^TGeTGg1txdd<&p=YLS7)>gzb1eHv--+1%URY zSTTzRe22~#VH1X;*S_Pt|M0;<h{s*^;zdRto|laiS1w&*y1r{cz3pD*(8ICx>sLn} z{S~W|!C$>f*g0pTK+$=Z$IabJMWy$igwyhpAqZ#1>E(QV9BkYf1et-UbKg%{UX@On zx$wh3%RSQ7tz0HcK-jMTE(aEdL>T;`qV5y-ru@0`B5N3wRxPS=P@izSgdMs+QjvZ1 z?T7#9E^t0;`ACUBt?{aby?PnE(vItqFhnE}BF;g8ty{&^8+t)rUR<a;B_&92;hik% zeF4~2)Pd%B%pG!#to;f^xXq)dAMZefJKc>;KY+OCE}#|$NZh;o*$zGUVj!aTXb1p& zzE67SR}R7F;Lr;gte_*_?P{kE{-&ecK`3cw616`W|4Ww0FxS}qYI*$-Dfg0JvB5;y zL;UY521tdLq=Q1H{9!F|spqVYJ_Y6?^|50tVy&^*$l+U>l*Qfcg|6DY9hcl#kH2Ka z+zGDV_d`$|mE&j{{eC0J@q0<(A$I`pJkcpI%C_=-Z~2txYdrKi-~HzJ9!NBT;vahh zgGQt60H5l7Z3akAwIibOo!@WG$#-qQmVwp)I6`n6WkL%ZrowOEc{=>wJ+0!SANutf zXIqV{{I_M!3zI&9`7>?e#YuC{{#&;pe8lOMa58p$<1~nt9v>BKc<O61+|BykUamX* zR3v*{{cGy82B-CZKVR6By#?8Ou-rMG-P>f&0xM_^>CrOqT4mdTVNrnd-f^wli&j8o zWP%vtcn;RG`DcOFbkiL=rH615{8Sam>})!EQjnc2Mp{}vXjM9o`uh)AhKA-#N(<Qj z4=fY-uOHxh%?v@w`PxgHdl*x#QLA;~J=TdBN$uYoRKq&>R*Ytq`_x1Z1m<t9JV|WQ zNG>!gfA^``Ar|?3H3~EsADlmtn-du~*0S`rLzi7*VeeYWufE^59b#pTkk=GPE}EM& zodnPiR%2G0IGq_PDk>|&bTDf49W(yR6_;kf8d3u=@oPH*BP5(}Qe$vE64dt&F!EV9 z7Gb%$gVpkptgP%6cepyy0heW_8^S2VCv?Q_;u1%l5DbSgx0h==@sYMzv0Oo_Gk-<E zh8)3@aQM{&GhqTv)XG~t1~ogotWhd4ulW}+>k_Uq@|P6y@)@+X49?3F^Vq&x9;sV4 z>;}Xzm0o)BDyHsp6%Z9KA}rfI$rV^wr~-HCSbhxlc_uo96M3$u6t(s0xD$Pll`g6S zcY$495LUDVjbEtsLa`e)4^|N5mFKWlyV<#qBUw>izWp`<WfmB3b)F?F#{osnZ}XXV z_1c7qWn)x&Cu4)+q}g)GuJT-`ql-%c?mT}Id{|?NG#qDS8E$7DB8R>pvb&$==fi5u zlp%u8swjVxD2&*K&m4$q_($t~e8$g=QhWBwSn=0>DK5BAhB-ij1O>_AGosYuEp>qU zC*8>ra)=Uc&SMx($z5NEN4*meleO($G&tAzP)Gw5FfP4QXU|3=+$d}Z@fiO|uB5E2 z-7q>kdzrz1g?w{+oAZQAv&^+?*F2`$nVMK&LR0~}hbzCVqN1OwKeZtmSD-NE2ut68 z7)!1%Pv24$_6u#?0-Lpsy7%p9Up?L-1hH~)U1@TSk7{ad&48nb7w=?%N39+9b2UM2 zo+$$lP*neB(Vmuj(c&AZn;KyJ#Bs5ddBU}*F=t_03L+BhbV`V`=If0@14o@9Hn2XY z7hHZB@fru!CYQ%p2n_+f(K+;RsvxEMyM@8(wvSSEqbkbGnp!v9f8J+E|2d;1&O}?X z%S_8YA#MOZkD{b2^WRxeuHYN+07zQ-)8MDOO^YuB=7?QBCo}Uqst<cZUL)BCX+Vr2 zu);!ST~-&qt8Ci`Gpc{2*lx8l?jv&2NK0VgV8LyOa4e4ndV~M9RIaBHCAQPv^5sDk z7KEZi;y3)87n}F>!_Q2=FT}1zA{{WXxIi&JN}%r69g2gP%*+)F2j$=%1aj<Xs%g)K zmR~l{_PWG8`21*vX<zD^<E;9aOA2p)yT&}(mYfOjR=ix0<(r2EJ=b~X?+sx(MC~Oj zbpOflU0DRfnuerA)0XBgN(Iy=-fyXTGsg{zEN~J3i^mkqK(K@6cZZbW>gr-`XoQ)} zaX2TXRBl$n=O)9N_W-d}z_Cl4lDK}^C)~zqK+tzU=2O5%7EgysBm=BT0c|O~S659< zn)$*#Mhu$mdP|&OghO9}bC-k#Uo*~CE1M39D0H#7_+Ylu52e`D(W^rMxH@;p2Wsjl zPQ@jA$8!Ie=&!-#6K0KnmmPEHIm1Iuou2{7mX`pbxZywoM>aVnr5qQVK@-cmi8w61 zcNnTFi_V@Cov2wK)}$)D`ty`?ha7A;jX|tOa6W_5zmF7wRlgfsqgF{Zo)|F<z~s`* zU}Z_!G_MrSX+#Xh;!A@FW==ZcaG*(Ue+__YH9$6t^bj0sH`tF|A?U4E+07&mk{Z%= z^!u^v3E-JNGt*6({)9dbDo5Po=)u@U;b;*-@CrT~B|h-5`oBkpJ$B2B&3Kuo#3%Xh z9(hyRjh`;+6j{5wmCK%|nwtw8IMTdw7?$VhXgWwDoLdoN#Q3;XQ)MVI?FFEz`aJwG z73Xa}AAj$DCp47khybB788x*cxOOQL{h%{xsNZ;j{zgTe;l@bxILn|c=hN#vesM9e zcyLI`iHLk>lH+P{gK9etgQ|(As6Ky6>H-o=)5azvJ4)#>$HOO2p4=2;IBGswW8IAD z`1MzYeZOp;B8hYE>Tufj`X<3gAR!n7rG7D9_Ro4wco}}W`W#co*Lk+iJ`5OR8!gR= zrzQ5Cv0rlc^16rJ!0mkML43U9jOEqA3Z^Q0BCjM7_cPEWu;+w@qUzGpPWi%$YpS1p zm|GYglPju{n=j7Bp38r`Mcd0yg~7z3>-}%spi15Ylw}9eomN&H;4wc~IewE@Gd__O zLxK5N@$Az2!lc`~TatI<pFbMJ-(qY$Z#zfv??vm%5pgeHSm&R(=P2IT@Shg|3FbK- zq-)B@)XEj@Ri>g3zqs4J2BZ!0z^1;Q|B?L{H`w8O`|odndf@7f1oAR|)@FThXn;1Y zU}L=X`|S1UC!ehcoy4mLUkiNyp*%Pj+8Akf4E6CQ76|VbiD`udaJoR&lF8M{kIvU_ z9<73M*bbaBLU3Fk>cnzDqikE^6u|O(YibZQn@j*h%>_RvCl#H)l%|f3n&oJu69NhN zOfT!gg$qZ(<lDgz_*(|q5N#DS{5%49hfYNXe|f+%#j}QfK}H`53<FoDI=U;aSvo$k zDBFyQj<$n=ue4=6TwK`f6!Gz7s=SUEwxe=Fz}T4|<Ky~{zVU7FIpS#-+(t>qzx(Pf z0}{{?;VCx;(~ZQakxJ+G83vx$(Gf(E{uBC3*FAsOsP^C8!3BV!2mt;8*X<C!5-*AL zCxfr~i0GUkkUOX6&doz6Leg-LV~I%w?wR5}F5<7;ni==l&G=x=)k+%_o-9%6#LW`d z>(E>D2o5YA!O(qd)y<JohB^AxkP1dK7s%6Vl2~~zQ4rSd-L8j#@C%?!B3W?`Kac<- z@?{f)W5!OEV2$V?f|A^ClTIUT(&VlG*RXju;H0vY^^Jy>57>io?Ra~l4J`rQgLl)x z1;!N>k}k3Qng7mrbMqSj86W41Ffs-q1}Gp&Voq`jGKz>iLv*q^sU9P)2RCuI*(>!D z;pC&nIW5;K^71%kE+a``L4=~J@0JAO?N(dht{i+ETGgx=x_b1PIiI2b<bE{KoL-ej zc3!Z=I#b#8t5>-dz=Y}GkTX>Xx9l~*VzyF++s(rCAokiVH}~aAJ`Ua1nBN>a`(j-o z0+(r&aLRXl!rru0XIo`4eW)PoNSK__(5GG-ah0ia3x?Yi8sL)~mxpEt{tZR54eo`a zq$?L^Vc%w37pxQ4bghB3aVi&PYU0uDup}<cPMmgSA#g8#7`7R|AN$GYy8C-G+Hd9$ z2i{AcZmx_k4!#(C(vbiExZIWyM5Xp4)$;ryG@W9A!V1c1!f`?D6#rqW%rJ&_uk5bM z0dM`u6Du8#weBSh^uiYQC`SHYD=RMocV<m9$U>m$d61i%%ajFrCUT4|+`;-AOp^6z z3aoX=a6NK?!$4qae7+Tc`5+8!io$y2alV_}MinV`bI)(-@iGuiY5M(`oP-}&GXOAa zndHAxn!?X>agigX_LM~rD6=DQ4PbAqUWuTyL<iJaJCNtonu|x9!MyRciYqVkp|qRQ ziDMXyy+Hg<=C37=%a1uWzSNRwnQ22X==}I$v-I=H-U~Tl7iiPVACe~d#G=I|5cbZJ zAs7<v2{<%YL?&ItdHVEiAXK&1EyQt9#iO$TiZy+GMZy2l4k?CVwgx7e>;XMDpiwO~ z1tv90{I;!HbU~89TWa3VYn+|xcrE~fR!66vsT53Oxw*M@T5e`FVL>4f8BKLBv|f>+ zqdQgppKB2SREiiNr`h?7YGjAr!^|29NqhE<li`m^al7OW!D=CL#JI?D6e~zbgu5B@ zE%l)SD#f}DHGiOfL*^dGB}1{fys)|r21f5G-N#SOK98Zrq9@vg`#!iUP>u-PH%hoi zj^B8!y1vDZ9JR5i!F6;IB(HP;r_u1))^p79a|sJSv9Pe9!aHBR+H2Td?rgZUzOJjq zOO(`KVte1}c>JKea-0AYW-fF5#Cg}0?=_EF8(SlAj}`~vU506g>m6}|j#iob%uco4 zea0}Pq5`%(?P#@n7J8+G#6;`$v_>p0r|1yvaAU3wE2Mw{quscq9)k|9Eih)~Q0HxD zl&h|3R#z}(xTO_wu4P}}POuz$H92Ei$|I4Ot6a-KuTu7jdHhkXTv?Y5a()Oz=EvhR zb0=Sdl{JTRoC&37*Tr>X2UypP!2VSrr5rnN4FWBL7&oMLR$}tXl9L$_^J|Q!HMJ%m zZ1IlKTVOk;*5)gg?*B48osSA_17Pi3Jc;lZb)Y3q{wfkU@L;c?j83fC74aP^kJ9o8 zSQ5nz2))@za46%B%Ixb2BM9v6s*_`mKya|#Ve07!wKOV42rp}b2#<bC+qs+0B^LXM zPG_qWo?F?k>{TB1V+(2pYYkmCr6ee>GIJRRuDf|)ZK|56y0Li<5?yXi5s1x*=nZB= zCI*J&TI`cbN=h&XZiqOUzPxf_K&-#T%SUi<)R3fD0l(6fB6G`X(i|I@S{0ak3I9+m z!}Z$*${*G7<5?T@*}-@ubSWDf-UF4AFlz(Lnque9=i@m6=?xMphsaL|fNXFU8}K;C zY!;W4D7S@o^Vii=!@#Mt1}Ub)Bqb&5Zh@(4SAd0BtKOSxYVAdKmqx<E(z7`2cmuKn z8;*3BFFz;lD>xp=y!Q%Qn3Z*gd<my!O7~g3ggNsX`9)RLOjv87#9feK>+NyM1RIs_ zW01FCSZqa5w5vEDC*da~u{~Gf_ReWdB-bB+oyYeEf(}7gzMukHUzxtL9zNO)*rf5> zi<Kr2l+&wLYSjPUG3X&8D2#W>{XEph1c~gsh&RDS?Ed1~p>oQYBD@cQBmmR8uyU%A z?$Z#&iz%t{2S0`5Mvz{=(53u|#4>gFYW)DEVddEX$Htxyp}mq91b0j)98|@fCt%WU z<;N3K$?|k4Z5F{6bIEW5tLcF#A1Q`c*t{Oc7icF>Ww0~I7*u-~4G0!9B0y0|MMXz2 z6h2|)g!2#e>TdS;q{`vJ{)8uKK0QZJ#X%n+A+yIBPN#^tPqZVhkx)p*w=di~p6a2b z{9)*ge>`Y1XGExp@{Qm`H;CyMVj$Bt{pW9M1`h?|B66H9E=;<E_VL+#6c-@(j^?M- zV;3J6AQsC5nX>9~;0K%cskvqRlD<Bb*Dtj2wmI$eNebCjPTg<dJiYf57u-E8@4npd z_qPX}tp)3QOTy()Df&(gTh_f@g^OO<xxoKXQBqnCpVFzg%w1XoBzXosEC63Q4V15H zX0SmwxXv}6hZG%rAGI?<>rU1x$8ith7W_qK1h)<e287nPZCbJ(`~$95$eS_o;Gj;7 zvVY&to>=q(hdraWkS--2TkBsryxiHsz&`)vj*)Y<Uu0YMH%galWvq&WM~TqY9@7+w z5`MApQ&L5Oh6eF<018zXAEw71`{P&>GWLb@A>%VMN{B<t_!Zo&?1oz+3Z8tn=}fm> zYF06bAGD*|;Ru3WV8n)N`-anS^|R_4XX-6vPUOoQ|JUO>pbpCIZS~c5JLw8r>Q9{_ zGNpPAe6t)-G>ov7v?=Z~MEJ^d7s9z~F4`IxoEWOOb_)clY-nM|7ZzN$GQs+w1!J8< zb0g}6O>Y8|uMTVNE|@S^XyuH`nV3xAVra|*vwj65@P|MNr(oo@qI-0!=I$+<rxCM5 zbvfM?4rJ7RZ_mszGp<K9=A78~N!smt;X^LlbJE`!0gP_NYW88`h`=Y60t;zGomF!! zioo4?X;2n^<Hiju+nO7j#n~=wJI!dlkvi^P&cZjrtAu3^J!v3ZDP8A28WfZOf4d0N zjRIY$-o6qv-3Ol5%nAx7?dFP_*uS`iI%*cRPxXUw;ys=HAoih8VM=*F+mhm=y1zCN zc7y2m|1#fp`vrEEGQ6w!;{Da3IcrrDyYfrSbC-<5!UrH*T!MC@=zCoytZAnpV(OaJ z20|88u5?H=122&M@0}4mZ|n%Q>4cn~PQ}51&2w0Oq#y{WGaTkhts23)-vOeY^0!;P z6>oOd3=Lo~b-bI)I}L`3d-ZmUL|lfd6u@2az=)HL?Jme`7Z3~NC1nHd=x5I^asB2) zJd9ri9ebbFpKsv4z5tVp_Mq=Sii^w1s)qYW&srCs*(RwA(BI;s{#fPy<m$*9$4z<B zxKtn?#=m_lcpk16E(mE?U+!_O$V)3*&3cAfO&xV|;dn>=B8oD<Vo^lSa^kE*_u~<t zI8BoWBkj<ID;H<+;-Cx~6b;LrQekJZlFB)_yXDZ47Gh1L?=3v*rLQ-R3>Vv4v{CqF zG;j+whEcNGt<Mj6OnjzMI0nXqr&|Nym3;t?=QKZFeDr;g9qRebwcx2QNQiV3|9iR= zTLc?zdZ^JJern=<PvRC}BS96k`#~89g)YbJ4|R}Z1(i#R@b`}GM>h@LeZ#~2lQxKX zTJKpz^$u|TJ__sX6H+D+-$i?PD_4J#Rv_xGG-xSpRM!g~`?!JX7k%}Yrkm6ABQXm; z0;aB*qnafzBryWQR|n4%5)%t5ze6AY5OtDM)cVSmqwqXeI-<F>9^mqSGKPYb3Lfhw zV*c&r!9gS6?Vqn$7F_xZQ`v*+F@2DM?SQd~zFfp_7JU7}YpB(BP{A@7Ns1i*nu<Ew zVq#*#B*c_%?a?P@0SDDxVyh~5hxNqIYJUEbsrj1i3!H|<!#P;H<1^vB#|ucb&G@Ho zc}tl)uRV#4k#i3eQ(TXTD0`-cS0eBGB-2DyVJd~<k(oReMx`cjFQBPYpHXbKgsT#| zy)gO?c-$<|V54ISCFOD^OY+dxUL`3D2qR5mBf&Z=@xA~qesm!{H0S`j<)h5c`%RD3 zZAtO)ym_;5jtE;g8*HX8;*JVW$pd0iAwgRo5a3){AZZswQN|x&5dpJO;UlJ*%y$cF zRCN~khn_vfZ@<zi1D0D?RBrfx8N}|fPv50J(!CK9-_o~6bMcm`!H1TB!iSBxZ+5pF zH7k+_duseZs?UxY<b55O6df%KnKXq{w{*w7ACMCmCwO4^Xs@Obrs0ACOR`i=!pE%v z%-*qQa6ddbicaK|SZs*U*2c!is1mCnBeP3-ddI=a0J3G8AFO3l{^p^fd+{Rv`^HAv zb9M8e#%6qZUjW}fLbA(CN%?OHAl{Gfb<HpU3?rjdKHlDJqSQyvsWP4gnqgw%nOBL* z0wDnj+*oBz)Cnyv1xL+`$EQb@$B!NB80XKNz6v2r>!0c*GPC2M?Dn>HvO+}D(D^hU zUkB9*ZcpOlyg|d>W5f}cWl<^bZ&QKqiRPno?y#a0D_pkEfOXX!k)J|VVTEQ_seKpM z{C)l7yLb#Yq+umn>~qT_q42kjt2MUt*mU4s^GxVJ`tM1CRB*u5A9G8Z=3s3N3ToLm z^(z4BD<nqGh4U|*q3h98M>2619VC!n4@%?W_6Y?83F4=R?KWhT2=r~c^M7#Zv%ci{ zEspfb9jU8A3^M~!AA|<q!ZVVa2Lr3#37Cn+2T+BwB@9A&w&{UGmn*>qQqH4CkF3;d z$jQl9VD}Rx(IvkX05P=wOHHh4%P{8)#kJ;Ge)59{(qNv5q5Jyc5+z77x6?McXgt>D z^r5s>Pf;Z$B_T53<ybY31!!jMK>d!k)UN=qRdt%3qy({r%wy;hp9q*h$6?n$2713e zcunJ+n{?V@ZE$H_)5aeOaBz*Y9&a9~Jc_GJ%sYB1#i|UTQg^t>{6;^2COeB%GHuYL zc(X=wren0>vvY%U1hhqOq+vva_@wBg=$IG<Y9dn7Ot36J1cC59E)%NVLRNEx?bys! zct<-{@Ze<Zg1Q)PoVNx)3Zj67Cr=b%`%ugc`W}1$_fL11f<onf^$gxGied*d2VYxa zsPS{s@8773@D6~~8Uhe&{%0HqlBVOnx6~0_6M6m|PZ<uiF@+(B2B&5W8r*w({fZ;| z;P>neeAmOZnUNE8RsB;6*nd?xeB4_&xEQ*HE7bD_QpcNhejhVBWp6WPISzDgE=y6= zNgT+1SAt!_!os3+OZb2bER_qH;Mr_s2t=&d(=Y%K&T7s?de*S~1<+-hpq5Sf6JfYg zV2GM1pg@St0{-iZQ+=`VNM68fHrsG$B{qa&Hdq*=UzMPw%M~4sL56-|Qsa9`g@J-X z7G`v{KA61~hq%p<a@n6;8v#KFM~-!X7{(uw>DnsSZ#Of3gK;<&ptQXx>zVE3y2p-v z({II2F+2&4=Y%n^XZKsosH5R!7lYW2>HYfZveI1hS}Alkz^E{nHqyUbsPg!ngxq>z z0yP`;$Hwwnuy*;vrzrUFfgzX-WxA_89hG~(ds0-IT`gY#a|Lk2@ht>Edt8K4OKvR8 z!4VE36zi4<(W0&So`DIB-DSd$!%>7~;=2)yzE0wO{<YSQckM<+{{ahd&=7>Fv#>AM z(L<5ge`((&bt)j#BJ*8+@!=58*eCLF0ReYe7PVUK>ocXTCBga!^%+#~9sz=pGiCm- zhE8xf2GGdt)zCDyOe7{&+sll_k57EBZ%INT6(-v>;a=-$Rq!`t2k!0OIgQM!f`wQK znmTB5x&l>|m02(WQws~KFe)Xq1I8dlRq<aqkbs-#V|@68Q*&V$1Ib`wiqj|zN72<G z(WYPJgm#u#o?KUCXOu2pOab2a{kEo<EAUUHe(P78zTP{2u}P>w_PpNl(ErT!<U2<5 z0oR%1$EGurg(R9`LV^`@+XogBc1%7V8UtMrDCbi^u9h{1{5pr`D*g3kRiGf@Q|#)C zPmeiV%UGQ*=plo~N7K<?xs6}AxL9+XEZDx5Wc{gqJgzJYy}PF{l>FF)u-bQ(gP2}i zuQ&k~{(U;)oI5~@M)lYc+;90il%i7V_CtyA=+V*}e8>1tv#@l)J}3DF;7WjO#)Pfq zyRDam%>uUPsac`WM&{~scH!VpC&*6IFpnMm_`@F?Vfc_4XbmuX)g3cwIWl!?<GkV= z`d^qzn*uk{+vk&V;y|p!<nq>jPwN2o)Y)Vr9b{bNA1jr|vp@TM3<UK+9n8x=1Vsb` z_LYCX1^L|{_hnc``2+7S77#Bta{B(H!!kd!W_H>WDP6yMo7=d+yC_05r-?H$F_n5u zYb=tJZ!>Khy40{ZyhX3TSDo2E10s4UghbP?&q;~FXA9uV?g9iN|0E7}Z%C{Uy6doq z<Tv*|se1Y@n&mQhO`A9b^&B-SQ<O2%O>02(i@c@KGqVOG!s#}fKRo_e<Gd}?(-PaZ z3|OqA@8O5&*8q(59k)ruTue+P(=#IWe9oP^cmEaj=2on*#dMZ_Iy4@S%}7M6Z{K~h zF?-J6llc~B@WUQQwMasIu^%&P`K2^#Q6K8F(|y_3l3s!NN<n5!saYPCqQO3W4UDR3 z2?=x^GRWvWu-TX6-&1|AAO5P}FHV$4{rc~a5ZO+`YHVI3)oZ;9saaip81nA}A^EO^ zp+z69OSKHNhiZkCN3VGR9*)|@IqtUy{zw0SEcydanv6W@WMvA+;V1Roe^L(QNfYsG z4wHdStou)T5{+{9vaxyj2R@bDXAnLNp9z68%py~=d3vDqk{IvaE;pTf-!l=~vlW&^ zlGWIgR7hhU3==h-R7y-RCQ}vxMBd4yMGz-apbd!-Ev&l(4GYJ0$eL)Ndu82z0~vv| zpy89HR-=9kHLNt}$!TdXgNdokilD<!H&0K-Z+-r8LOgDsfKz`v$E=}a=gphwE}9Zx zWnqw6U+eXC=Z?0vWGPk45BJD-Zonkt3T*HQ3utvP!wQCFnpAYaU17sIm78Vwbk~Qs z*WKC1Ce9YDnP%T4_3<IV({?LUce(>|CzBdS;lj+ZFEL3O9u-U<YK&ns!4W*#G#x5? zQ!EzqVX(1Mk&~y|r_K$j&DBJmZIGQ!y0LVrNf1Pvi;p?9J4?BrD+_@Z38V|=tRG;< z6_{xF;$-NyqXysr8FNir9sluzTuirU7R-*BOmcTF&fCHuekp9Be9MOb3OGvZcI{fx zGXl)H4EW+KlW21S7=iUyMIQ{qQtCRt^0kbohaG9{ul74#R%n0Tv{CgOcFcU**VSz< zpi<7cypH<AZ5T5!agiKM{-I<DylTw*KW5QAHd*scn)alDd)cO!tZ<j3`FAPqNrw`W zH#96v9x(Eo1}+A%3aV#lQe^%?JrvCQxr7^LZ=Ik9J@Ehx#tnl@T{CMeEG#P%@u0B( zHxeuGl0`xy5gC&ZaRC%uw3?WZAYeKYM+uVWAD@ss-1!D>U9}hogRX>>{gw|-vozGp zf}+VR(ug#*Z*StJS^jkr_r7qgs9YFq$}oJj;99l-{j-L?IIB@&cE1f!><xU5#Z3(S zo%TDAYXzQN=82Jy<x#DvFC%v9Y93Y#El1A{h1Xcp{0jdwZ^Rs1px^Re&~5_nk2p9= zR$rU}NrOuH**OIde4=P8|5UAwVfeBy0@qKKcq?QZ_s9{Yc~(Ke$9inl{qHBh1s|n+ zrSR@G;1g-q=hQ^ds9#49bUM;?C(s)s!g_MY{-;&-#USp8d2AS=Tn<YUIuy&&+57IM zLFiIBt~Or#Q-Q~@Z>Jxuz@v=N#dc4m{IR5hxyiD1Y4T^6z<RA`<(C_ld-l-8HvJji z`S|f;3gSswVk01O#Th|%3AnixkLvgX7YEctv5eFGVR2|+Vf8ZA4_XOd0l}+-{WI0C zTt+gW=3XjzS5I0~T@A0v#1sr8TdX1rh(`$Mxwx0kEd>8brI&I3N~J?X#>Gc5N9tu| zZvSU#w0;E&y5jx_yGW5v#d9ZfI?@Us&WPfY1^2Rd`z`BC{eEJB#OHnP5#eu7o_NXM zKdU>x-8rs1^e*O3?~OZy*7csmMKo0Q+8`+#JnqYhDe)SE@~TvT9P+i0NGf{?>OHLK zAp-+e829_FbN~cR8ptK^8O4wSXtCe`T69`IvT11r7V;29f%A$Ns3)Zk@#EtafZgcU z=Y0A_wixME$o&o!#rAl_4srd||I7sx!gdJBtWpfHPG2%_{?9;xA^y`YQi7fkl(b<& zY>49@TXB6T>eXR2rx+gb5sQWZGJ*w0^KdoZi)y1fR|%CjB=2%2;xEioX_{^{ju|;q z#WS(Ib@@B>7}{HP{bwBeQ<*v6u}ERW(UlV^xj9Y=4Ng3GG9N7@dJU^fy!=8Nu(#s{ z^45!SXSh+TE|x#H0gwwBcpa~Rkvkxf`M`0|)SCGO3+7o7FMoD+b{flBqlyO(-KH0M zmH+bsWHA{QYb{#ALhg`|kfzqRM+(W_Lqy<5B})2>O6>h!4xf0-XpN?!5uOgXnpFJu z2+c7HI=d{X&?DwO*3YJHdH8TuadEsZd~jxWi|B`x-QCKH-$q9E{au1hs%KK3M6_5? zVgOIJpOSn%oB(||*G0pbEl8|ROT+wuyEjDL#_!s(D`D6EEfvQSCc*OZ9IiZTKHU84 zJ-=xQGVm2powNl=kBAgNVr`W0qrV;{c{fzEfgV9Df5Q?s53D=YB;wB;CLi+7?pqyj z!RoM<Z5Hs~@817|b(lZq7HGaOnbzM<{E5g#rn>);3i7~jXdOmH{8vXkMRk;dij9js zWy+=IZdMR&Dk1l(U2m=wSPpBP$6*D|zCclY^VY3wsD(o8+fXM3ycf-y%8*36v}Dm% z;a|`uwU^MEB*9tb4agK$l=|wNjiLc^Sl@%#9lIM@0s|Q7&QvvQG<yVx$5t1^Afa|a zm@3SgVLjl&*O+yLJrkt}!($J7=`KRyF7CZ-=qZ_vA}Qx3YBj?;p;Q0~Hk{-u$gPig zOih{u8tT!cCq+-6zy9Am+p^h%bHTIO(^_h3Sx$vm7evIKq>kob9m%3%aX<{&L<)^h zpBKKkZIit7xL|V9z2w^`Ztm`vA2g{n3h0FW>M!ImLl?Mgw7j%*H{^3sol|NqtRd1N zeYOp~d05D`2;)3F!#6i7eQ33=^?^iT-<lwj<^?~Y#%@jy0$JOgDVRRPorL(MP`Ge` zBj?Jej6Y(*b36K@Zbk@N@>>(1qw^>GpY;(_%3u}t6(jFHObYAmyATbCpaJ@+`S$nW z2I%a58Jz*j<g7|_y`Z<96<A!p$pw8qn0`@M`jCY_QLvv#`BO<1*p8p(;N80D{E7R@ zxDwlZkCB_#HCVdgJ8*RSq11L!ZT~ScGHH0j;!BlWcX@?`bUa|=w(6HE&s=2(aziU{ z=OZL(#|e<}6aYh}_Bd4gZwtYPq1<^l1iPxDBCCK2lu6&UId-2Bn2ygz)Xhm9UpX0> zV0J5JAcR+90Zezn4vNPr*>*<2y{|5en7TQ^PFQ4gQ++BVO~IM>F76Fj`>NoP4t7=x z+njM9b}p_LKum_UmH|R}FJ@sLjO=3?-T1q5hN>+jcnJ-gMAVvYQOk343k&NK=4m{O zs4=5lf|NNP$@@LHZs;c3An+TSWnysbPQ$yVuse4Y+hc}@_sNVX2#OYWp#2eD^71fr zMh@W43HKplt8j!pw%}S4>3GOfy@&?xT>0&l2~u-^MnAkKGjIRS#fD>Ogs;-EoFNQk zeP2)F*qxPXmjp&0h0+B_n9eI2rlZDr0ZjI{P2OS%dgf$$hXa<g_FN=&`<}}p`iG!V zXtKiC{nUK~Qnx{7u+QO#H6+|m-C*W0Op1Hv_{WC&`Ca4x?60tZ_vgrnru(PSdd1Q- z8mPOq_8DQ_E7<1Oez_qIo4}fF5craOV=2r^giEdU>yfw2f99Gof!C9LCTJ{zL)NNa z+-z2wMI4FRa0i*g8rfKIeXgHL)C(qF*v_2!FjqEEgW%knT4)aifO9XIeDeAijQ0qD zC%nlV$mNGe(_#$erj|jU6?GjA8qWu|J`HM~d&a9~3Gko_fMM_xEPgPSf+`Lv=U5Nx zF;tdNf;;$sOJOMVttUAuYwA1|sl{Y$LUe(5HTjX)v$HafIkg33v$NEZ5%&{}q93Vn z-@jjJ3K^NM9q_9Ba_!{<vhX~onnk{XLOO4LP=OW}^*6kMQDbqjS?B`0v5*Vav)4dl zDZlm8pw5Ne@WVR#$;zK((=x&3!*$Pe?!@0oq-(?)SV4IU7H?+&K-#u-LYIph3T~CK z6wCWE4CDQiZSP>W$S>FMe(ZlRIcON6Azx9-{Li3Q+5T>?vQgMAB6;k8CdB$>_i0FO z*e&wCl*<TwO}+G3L45_b?WTR5Y-1NNLvP}hS>CgZ|Im)*&|OKb3sPFq(i0?7z3_X@ zc>BHvY=IBaTFrbiBk5e`$;<ceUk1A9MJf0w9F_(Cx!n@2H?w6tMBQ<9QO57eHJ-Oe z!B#Mycyp<h`;n24xiVpvo$A;z>z-(LclT^qC625Bt5ShCVHXwslH>VNxu78znu=~P zZdPV%1;XVH;(^7`zXDU1?|dgM34`PnE@}B0WLFl#6wC=WT>T6z1L9hR>j^BACba<) z+Id;V8@m6c1Z9jy5p>&#L*>RuZyaJnLcGx((*sGs&*XZ;A#09|&YrrzeUx#Jl|7&2 zu*vwW;c%zDYpo1~8_jr%hsMMQDem_5SMP7Rcxq(ioQu=SlTS?Q-mST;O@2JjFBsH< zP8j<)TNc&S)MV+iVuA^3$!JTxJqobbFMqjAZMBoGwfC!@h^HOs=RA!OK=k%7zaQ<M zOYoUL^CISEYcJXB&jepUCl+B1_A5msg)+8@k}?Q%!w5@>14UX9b_bO+C!AY5Y&RF@ zLaKTVX|3E_{=;naA|uihm%1Q2u>EN2!!m0W<M!9FJ@+|*oy|Varmof1Ul~GYP0n}; z>nbPT{2onVus$8omGGEjORanMrJZPPdd!Ze;A5q`S$Uaao7>uj9-@PXW)X+>8ItG! zOjTmd^DjbHddeOeVF?gCl}U6^9!2WIy=XNNDJdy~H#bCp?J~@t1Kp?{{4=K~0~c!6 zr&@$ZN)3pW&b;wk=k}cLRB&S>s)CcVxY}7MLtf%sH=Gf3H&QvuU}FaCEAqjFbQh7m zL6G|qzTzMf3_5Fdxe&7Mmm0rUFPyEcPJ?OZQj<D6J>?&VY&2b4uazV1518^`Yk9`6 zSULzTQ2RX^ek}>kIUXJJZ?P6kiEiImNU2NgyUuLQm9*i^(w=u^EVJ+Wz}8*$a=G`X zn8&0_`TVRF926#$)EdrBh%@Bvt%LG#^oI9!wjHx2!7Xt?m@_hTX_`q&64-iXoBs-B zb0-KFJ?9@)(-&q8^J!_|Krt-5x$0ugG=fJ;|H#M=aEn%cTzO#FHvlcNur@H(NLXCl zNGM^5f~k_xqqh&%Nhk?5{OUNN$56jTo*J=g0uyNApJLCQV|}XDk#@WRnHswq)oCt# zQ}UzveR|phm7y>VDntI=i0s43-<S~5poD{9o5B*CI@O`*PSMzxk_o`reEU_SD;Qo4 zaZwm5s?PbBZ!*Qa7Iyr#=;yDF|J3eXVeWc8u+GjZys*$_WNgHi)5EDXZ1|et*R%x6 z_2-0t#?JPZxB9kF<j-FhEtL;^#`t;)C@_l@=KP;sHt~o2l8M1~yuVy$Y46MFp<8!) zO*2<ZpWeUQZ~A2sHgsM*@`f)9mX)>xGoEj8{jYX0HyAJMa>m8QW#Aeqso7f}ASa%8 zcWY@fj!>$K%fMJ}&V;weA}s2ff)y;$?%)(^rYfBH{@tR(AYHhmJ#1&2;r9=WMIUVX zoF1?}OM3Sq(URG02_q?HDz(QGPL;%odgjb|aGib*mV)B3M<f?jRL)?|vw9W<g@eB` zhp<_*>W$zBYa5%mwbPjH#$K!7cvy0g6KlIy@PKesYk5+W!{gdte5qY#URWW0;e&G3 zUc1+VxE@5)X;szcU5VCPx1P^o`9FA`P%5-t?aCQ}F{(;wu@ZfjUR}cfzBeFhFfq|n zgZxua-5$>P){%U$1a*A%U+vLFc*Z76>)?$%hQ-y@p79NrkvGZ<wR@7#8eVF(ZCSU# z%(wV1BJ)$dW>@h+YVAUJ)tk#X&tgJKOWw##!4@SN7>u`bqkno^6^h@Dq+I5og#Hhh z6NT0Y|F4-~G~)!B`m553*@I0#3hhgdwD-OD;4}KMqK0?qGcpU?Z|{9UI2osM^5B8( zR{3aDtyDm4^lpWPC=E5Wt;5<&YBsjQB`Fn-F&m8k&d+O~c-RDXYISp_<kVl*rVZFb zW#m`7aww(!f6LnQTz&JWJ3dniR-&^;DK3?m>;&gZOxyGS9WMG5i<A{jJ;rUKlciOU z?(BKa^*;oBneDBQu`2{LXaGAREY}MQgJ2`+{ZEhi7kHA-2kwd^Yb?uS!O(zol5^)P zv0(EtX0Y+ydJU}i2uH7s_gW;6z$CNp$`q5>3bLgRl9BqebJkXkO2iw$iYc3iX#{)D z1pxlFU~)GI;V2eKzd5Dkm;~$6KtpRwllU@YgXwHU3nObas$Q_joSJJRChDT9g6~`& zeur*p4;anVEiBST^>p^2mwyR;Ks0s5b&1C?dHVzJgq?g(&?hk5IHZKD=deH`;_7g( z_FEXA>}uez)nIz;TH<5N%6fuUJtpVb=I|$C9HF$!SP;zyC9j~Y%<}*6eR%gSejHfx zk(BI#K>!pi_(O&s$Hnv3H^*aCxkz488_Lg%p)RA>{<vT90yn=s?+e1ho{AJ6R<mMT zz2P}O_^f}OvVxHjvGumy=|E_r9UOJ3e;-5;J=o6j8#QH=4|gGg`w+$xfiU9apAQ%# zpp*Uou=kc>QFq_p=um<pp(uz*D5<o7bSM@fps0W#aMK+k-Jo<yHz+AeOQ%YR(%m54 zBRS;E*)zz@{GPb3|9Q^;T<5&FU)*sG6MOBw;<G+$?e!g$MM0Qb0KzOaaH#qM2=g4r zgQk==)eAwq6KK-s2Oh1%&6W}o@gQY&KYEbt*-+mn8}=K@_Y>$N!OSKvU)nNk>bD*j z$*6e1I&;z2GOP`+v$bdagILc957)>er-ZX7h>iY4j^;9BLH0yEjfsk4R(}FOW;Q72 z0LGJ9^tlNb;E{Lz!Xy}U`JA7OSTbAbz1N4rl`3XRHv7X}>#lWh!wvZ$l8x={XZ-VN z-e4s6BH$K_U^fRqD&O<D^R68ia&9H^Hd-EX_yMv)rVr-b7U(pd8LqO=U-^Tqor9@J zt)!W|8^5@bon%GJ1vn<(u0_f_tPTqR@+WMjv!H;d$L53nLPq#-E3M6BJr1D!sA`gu z1^{i<nv~1}vS5ya#|y~o=1BI(&SJ+f<?Vxjmq=L7n(T1Lj_zz272Ay)A4~^&W(Y5v z-7QIl1bROpDb@GoqH+zBrmtISqbg(=)lyV`@sH<{^R|<>Zv;gR4d`||I^2G7ZRwRZ zjygD-4`mU=-`T}=cDUO1rGP6gRyYC!Hg0Zz)bSi9Q_Q&q(Ry_IbEy6Sd6jB@>v&5W zNh`1#b}&TXw$(l;RdfM(e=+Kp*C2Q-m;Phud!wsorxZZ($^OAo7|k8}nXu-NM_6o< zsv1ajpPy>l`cFMtLsjG(!I-^D(fb$v!(kA`qQ=~QISUfB`m$|KKx>qqfoN2L$Flud zn_IdwHg0j<@hJl8t94y~v4=m?{Fe{t9oiXmpqz_&{hND#Q}%}b#4ldgHRbU@+#~kx zVu4S@KBsPwKw5usr)srprf&twSK3R)XlNvU49^#Q>x17Jq4+e)wUw?`l2x$dwfn`o zGvEf}`DbKD^G9)IYn|)Lb#Zgm$xh$5QuGrO*-~XQ2oW{%)Fykwaz&;(*j1_&Txgx7 z*OMnb3*UzdFVN9twy<z(ls}wqQhcA|iF1J-@s7pj=OZtOl<-ykluyUOH15oOnbY!n z?!ng?5o{_C8BJ2stq_#}jw>bzgYia%<iZ(L#7qu=QOkakK{%nyR<p6WxtL&C`(9D< z=;`B0hJ-TEot4>nJ0qrBsp2o4*lmp9T?4I>{NV1<Js7yr9P2fw8k^X?490hY;RW<v z$XUFW#$6u>Kt2DdU1B^AM>;2%`~XrSeM@2zk_^D;bP;n`rwXx!wpD@4MItV{1uKVU z^`L+3A-&5V&#ApA`ARS%ZD?C<;V$sUk@AKxUT~Q)++9ITT-+E`nr5b_b?tK5Rr1os zop*@F>A@gTFfFObkO>Bj2Mdm)Wi#Gs5~^8uv*6M{oUmW5Hhbr4*p3Ua7DnC?X%;r+ zw0oiY<c=H##bQ}CA)-o}j!T7=H6Z7_RGXKV;~?oyeVhj;C>?c;6pm-1QWQo6lypa7 z3>iHBlq3MqY=8F7gI2FG#AXU2_Re;s#%D|9Y)G*5RyC2#)YSS5lUx@KB>zrGjR#w{ z^EY+vIv4;~ZV$w9m#IK=F`Gy;7?ArBT&6G>@T1uSaK8bzC-QR*u=_t{bipHH&?-=R z0l<AQ0D=<ZNWtGy2~mynHJ~~|r$8$3pCLIKmDcC_L!{&szny|@f;lcXAb+M6VahFd zJWJiR724S;-Hf{LT~eS&A!p7I6IlLp)jPjtLySOW8__&3iwntT%IbO#b%R&+KcM=v zz5Zb?SSx*Fd=`Hox+>-Eg;L}7n~vp@yS(*{k`aqP$g=L0t<B8bt(h>-h&(loML-Hs zfGLK=8JQUoWo1;2-0&Y$<WiJyD)HA$V>JnnaGo6+H;1&{ItP-TTdin+Txh7~^g%MI zrZ}GcjeYWAkmjdxe^e|-wkUv6cK19j$p*&2trIZ4N*MGbyuI->`;Y1_)qw)C=Q}bw z`o24SkG0S$pGJ`G@E(yY7bO?$w=eyZidWwzn#Dv2)lr=Bh4K2em&bYJOPTAT!D?W} z?do`q`g#oq&w9y#W*TVv4lgT%>B0&p{Q;axM&2|8EfdQ8+{C`x5&%{PG<~9OxI+Z4 z<z?<tQbJ&W-|P9sUB}^|37F$dSKeZ9Q;R)0=B-)5q_CEjRwL{OiQd<M6-Q9oUH$eJ zjEz~H=`U)W2hAA#;9f<`ywBU0MV)eTc?}JBFAG{EE?fX<KqjEM0^QobDXLETsTSyi zA(}>jNQ#d1bEZFEZZpp{R_PkUPVtwhLJr^Q1_0pCo9uHx*l&E;rgF<th86XVW*!vg zf+;3~Dg02^XRrimPanzxJHYulSAqNY-Qb?dg%o5{H6Y-Elil`>mAO}@rZxs^I8qa~ z?Km2gWXc&5Jhml1KOi}K_Nhi-yeEyI1wTPy;LE>v0|k^NZbfgGeCEDT1^RLxAQ>7B z@3+iuV77;sZtS@OVggV$<;<ZF++_EV@S7;MO;37H_A0%nNfRp}F+(=WsmtinVy6gF zQrxIoZ#-y8uSuj^!dL~;KsZqMLtc>Kctj_91+UG5%=Q^%vVY9?`hjN1q8{!c`;)){ z&1)*22u6pBG~M^^BelC^pw$c^-rLvrc2H7S*bzarW;!vaHM6`~NB`s(0mNXuQo5>c zA5L%M;8dOfpC7G8<Tm4;s(Njt0J>859#n*mcYHhe>ExtzI;!*Npu#=W*4jGLe%wTM z%_1){+%BS4(yf1MD5(l2k5FrB@vpA_84njFKI4+6k0(s&f>oZZ{|F&o0UKGwa@B*( z7XgNaB}F%I^AHdZPu+n`A`GDllN_SIaDPjdsMtQsh}lZkEV4DkyTd?EAw4J!@$~!o z$CHuodn)~e-!-q+)bF>5(#$?=E(&dUUZW=xBJyGgXb3CtA%FOzmOJTnxI$%w=BLW& zy`&M>1WgP3F`MO4=Z=j!1=hZoP{#?_o}}f?dEptcsNh%egrxe}D#edK?Qo=2!O5m+ z5<<t*Kl+JKaUA8ZTXwjqoGa6e6-PciVtgaItO4+SFUD=U@wxV*s)JJa#mblSs$L|s z8|VD_O6JA`hIe*vU6D!q%1=T(zS|_&WRr3*nmI4&pxr$<Nn+_B&17LLDbwSntSBx3 zx&|ClZ|lT2`L#I7NLQx|-@Tmj<>0V8ruM06ZOl$YgMGIQYu`>O$YaU@MpqVa6LSFb zHV($D+lA-T$G-74gHaUFP)oPXgyt)oJ7sm^$va=N^eZi@SPrV{4ytwsn<eae7bEzR z6Sw!=!tZ<MJGPmI>_Pp~DwyXdVeSanbmelM=+dol79T1NtFJC)i~C2oWRe>TS35F) zLHJ6wnL;Gptf}vula9b$N@aO}R+Qn7zq&;T)Xcs5=`}?)p3C{7)2&Y$nPOiNeW}9H zW;LyvsXP5JzMYxm;Kd%3z#q_6XA;9=`={%&W`_W5WPGPo2ywV`2*Ux0(58B?%~E2C zGW=5b{wpIRqdfEWy(2Q$1!?Oc{TN!?QFg7ppALPWH2eM#61f~s(}$+l3J=dSb34i$ zF6G0Q5}kQcE5WLk=4$2Nee(Vp`KXYbLCOPygNsizbFbdjPV?qJ^!P;R*IvsqJfeL% z5dl*YiK1Obzf8{1so?p1>HYnKE=WO=+E1gkn-_|bOdt*eH3`!+Du;hOT)Oe0{#hwk zvMg1p7#Z6Tgfm*ZOHuFmhvg*XDCwy>T$_}2T-=Mn@lDpbZ2DRw<~U2Bp}`>y?3z0( zc&2opa3<HpDN35Wl$Co**0Yi-xsrEgdUUL;Qg;s0g(p;M;WdLL&RUFhBw3$>4HIDv zcs8tUgp#m~6wNw|wg89rw~GGb<H>jfh@*j8+K32e(>nKVwXCKJLrbw4Cbt!3t&c}; zUEc~F_5!(oE=0!rptb-An7V*FQU>+Ya{rz%RXVbkEwFMBAqm$u8?=(mDX1Je<Q~dC z<?*rGw)d+solxX^&9?iw!^Ilb1M}0$WeA;*<O-ME{y7})fJ=YW`KikzQ|vXdmoyQl zLQ&5#C42eDQ5XHu<IkEkB7Lt1G@Z>4*Pw8Vo&ly{Ld~Nk6+v<MA5SvzEv3U9ON5<D z_4yQK1sQv-uv?w!=k9mESqJD|(b<?~dOjiLe!|1}CoI7<q1!_R|44JL&G@>^9Pz1$ z$uPF1$F+baR+jfJYc?r?iY`+W&56rzxn2G-10x&z^Ip<`t_{Bt%eopnpO8KxW@Dqh zu247r2p`5c{1;v_x5UA-KMlv3iLxlah2Lwo{rt{Rtu=toS0sCZdgTy~_`Oy&^-G;@ z?eLqqhP9fzd-d{)%{7EQv-w>fTP}j(F-SpA$=KG`>uRVgG!Xpb{Bpe(Os|?Q$#*qZ z@3+WwJo1%1{QV+gpF=`$+(CD>;#;AF4CpZEa_$zA*c)}6PqGF~#ef^_as>Z%F_2Og z4`vF>-bf|AVXVVW87-2nbDD|^sjNs<lzM<aYH0sv=o*&7&OAgZY$;6XRiu>q)xWBZ zJXd{`!Uh^c249^KvHyqq%#eZrM84?NcBn-N{e;!Qxzm^FE(i5}if%FnD)o##MA8J; zvd&al1HMW>Q0qRrYgB#M*x@%mKF-*LSdHPz7g&*#=%`w_UTD$wb9kWH1hSj2qDf&t zx+!Ho`n&CDi5NVwIam<^%^#SPk;vZ@jJc~dQM+AdJu6^60AC(RF1VJAXw9N4%qOIG z<A?uFsZ&4L{OSqcoz<$`4dcBGv0F=d$$svybq28Tq_B95S-@jdO(C&u{&Ji3@6T?V z+%oA)o(*~6b{>l8ijaNVIlxB;t+P@NIvWyoBTwv<4dMvatUj^dpT}P!Cl)^Ejyw`| z6A3FY$+B@-3$dT6hUjtMSF~<nj^P)t?W(tMI2wl@X(rl_J8ll!7gMo5f<*XOx*wFe zkE}4q1sw!W>;^l)H&aqtGzb+p2;Kh>TF*wQ(AkXJ*KQ`Q_h!-U1#xe-wc30Gc%dm_ zd@J)|JcMpF;;?wDffc^x8`o;n5*r^MFtMLIAu<=A`}y&O&F4DHO#+}B)f$@FHl|vc zYnrD~%kSfJYNXPqWs^CT^rwnMKtaMX{m^;Dbe?EnL0={;_Avh)RCw9H(7~a6(ex}+ z=V?znLCDH|b3tC-b6~Y2(>^p73;4f11>n=}hoS2rHheKB`GGj>K#0{I&T`WWWTszt z>vj?U)uCZpTGY=CpW<#Z)!dAK&Sm@P9)9obi!!eXzC9&;#?W$y=|qJV$~_KNLL$_| z{(1`2Rso)qUI6eOPcGv0kKRk_+jO!q5eANbRTTN&o9B!&=uEy8obrfEPpgTDd>^)| zhgZ);LuNTdsp0}19^4rW@oAx6fQDuz*IaEEGoMg&l-%8n%6AvMCAnp^8tS$-wW+(; z-AFP&xK;msz2sM3jw^J9PtiY1V(-hb=J|KHab{*_rj=!}YHt3N3)!ddcb_K|YzQt} zagN(z<}PQ5rmf4~+17HMqt|tE%Cs9}=XO;9O{M~)Bd##XD^+$-|F2&?g{)U=o8D}P zp7K~dn(tfrYge8hh`)5>^N_V6&fAkfiiKUVJfFP$s{h3PTzG8KnDPxjEy?AdLZ-6> z83EVxzl!Zndau{P2M__^e)j?G*i>=K(aOVk`YZOM)||Pb;^MS1noh<&18$Re^nN`G zBd|jwi4;OQ2Zr#bS7j4!Gi3F#9o4>C&fiY6Hn_t(5W)&#>kS-P<|cXW@Ok$TN%*v+ zg~^J`DKKh;E&P<P+RW@9SEL7d$4@ENZwNY`*8#LBFmDr_)3w<xNjaQho#so~Yki#M zGW1LH`N914WyNl*KS*?8(4*<H-Wb;&Gt_iOtZU8R-(lhXgELodPv_>V7w3>8%%Vwa z193ijSNdsnX4tQd(OA~3HS^XW2%RqS2Qii&AwG-pCYPJ3seL>5Kn5S_1=UN&zyLv0 zlFraR9_~*USV}rjVSGA>uPA=Q&oQrJF8+n`_cYh={dqFPAF{N%I>{b!z$<6<C%S_| zS6pjC?>8B75ut4A*DR^bNq1?Vb~ild;jmRAh~UyY(JjwX;_?m)(Lw@Dye9t<ClxP} zU26+{Kf~c)Dt#Q;QO;5hH@8<hn6evEzzlEKeCl(jw1)(;Og&s^V?S#3Ys|XCm8@xc z#GdY5`90$1sctF>Mki-yQWt1M%0X7_sOYnUqrhZm%?8Cf+aKF9jCJn&1N6Ocv$myK z>-FOHTvyjGr#zf@<eRc25ZlAC1jIhmYE+4?z22{z#}cM9)uDN=2(PT9ivSPM1I*iy zC5hlJk(Apx+Mv?v?Y`X$R&|T&#M#|o4$C~Ptr?GCKHUxBNzjd-^OUAu>ND$Y-PmDI zK1ZhL_US1(x7csS_3oZxQ;}yk5^oXMfVk0&I7~tC-Lf1X&Ahnt2n^-z-rd$hY&$F| zr-(pp;rsar5s8DLj&@<iZf!2(;emkx!TCXhQ()?tV7QN23gU1+fjZf#l{rS^e7@_d zsjh>A&~}O1%Rdn*hfMI54mbxGL7MzIQ%o<JuS2Z3f6{7ws!8%tw>GdA8Sapdr#W#h z3F>0VGH+GuoV2_Th!WxP!#P2ETh(rcX-4|Jhi6Fy;Quh&v`G%Y@++5e9AH%w;sXW3 zb?(34QZ>;`>^7CI+O(5IzLt6-Dpt9={^Xt@Pbd8+6)x^)@?LT3QndVK@6J6qQw^&$ zogQ!Tf6}E<4W8+@7oo@n{(ikys)`1}a%U`OHM|6{YWurslKW|;ec$F2Z4{~(A6W*Z zpVqFD001Cc;5R60jy#TexKsryYhUz<!9&*EtEXw9v1Px(y(^PPXF*$0SF~&V7cqbq zH)e{K-er5|xZyS^o@i7jDGqFCRY`#LBpL%(=ScZbnXqsA51ni>pNS<_ROV;zlojta zvLJyZT!c=Q1F$#-z@pXg&RSA{I<#ESqI@=4Ivyua!}_rHzWafs``%)HfBbI7UQjTX zpGx(LT8UgpKjhEv2c?ZMwRS5pZZx@$!`Drx4Lh85uDBdk3b0Q(QkCq4SDx}PzG=$w zcS!*0w(;Y%DsR>?DPM*d*l6~MS+Pmi#0ST#!6)dex!g7e5h^$Q_?q0A-KH1a)pBA3 z$mP2S*M4ciU*#5#6<#L%a$c@`7YdrLLgct>_`%qe7jaX5rr}2{!57v*5}?}-n+LuK z`S^GFeldq|(5}oYu^HEKw_A)iP_cVuvM=Aw7NiISYVv|mVFLpLlSf<O2EL$wG#=*C zf-kcfNL9DnXbrT=pg(N=Pw<#^Gwpgp-CjcTC=?91oARbV)ZW^<GMg2ucYgJdbqHK; ztNu-5DP+JHOy<7(-FoR`R=azlZfn>f-%g%=4Lg`K*WE3W@6gCT7301aV*?#~V)e4t z=vSJ$?tJ^$%kg`qzd}Po8oHTRjY;EI722XRJVe;!+Ll_kThuLrEzKpJia%YGHM>OT zKOwaFd7)!ZT=ty#YK5(*0zYKM4jEk^n{pvCxLvQ?LEGoXZx}lvzERZ{fLX-ipXhh% z38w%;l{5)=-&S!K(A)@*`Qk<tUw+g0PAtDp-OjLS!X?+4u!dz$OGmk&kdV^XHGw%G zzUMrz{dFZ*B)fI!BF%{|NtGdyo!odOmJYp^Lm|5~m{MgF=kocJtc9E*EJKQYTPbZ@ z0MdGs-8}x&*|%nNmmzeC$uyP~thLVD+q_kET@&1h?nYjrPA!@zmSHh0N#CWt*K@QS zG*`pZ1R$e-!>TNwx%rC!^7BR;E-_ZpT6iyoqF*4Fkm$AsVRM<$Z&d&QsY>{L1JV9A z=c?6b77s^Lc#Pg%yn3^C{gbSi?-!zW{b+srVB*CMzjxyl)6yNaX-|1CUXPuLYXj9E zI+d5U&omroqpUl`VPC!+few~No8-;J7t&Rr$G<dVPo<k-b($XG;4;guC9D$)9&un$ zy&h~C1fI27@&#eQEgPT49DFUWd@7)~?OM2jUx)MfrisF;#Z<qUm~Uu8a&idN4OUgM z8ODz<KSIvv&ua{K03fdc<d!eS?)MD1?)RjGD7r2wH(x=t+t>1ipQ3O?XxI(uufGS` zWcG;s<@>c8QTZzmFUd%U=7Y&5>y6xQg^Tw+z^Jf)s<$$@gZbKp(iojTPhEpqy0L}R z*D7arOf?cugSqfpKO=h#bRH85r0KQ(#+@jKj_;0oC&&@-b&t?kiXXMAzI*(A<;icN zOjBGfkoHU~BDNGmE8$2y>d+Oa$qzl6eP1ef`5b)Vfn<(AkLYvhnlyrhUJ04Bn)D`9 zd)gNh-@z@XY1@3~vByU#Tj{KgK=|a+-f3TM5dndV6MOCUCIa6<kHBbe+{2}vh7~a0 z!cskAH}jT`(tCjJ-pa<b(Me0u&Nv_g<1w83p$U@TolFBX++&bpn7}n&N_Aoymu|6F zSPl6L`;bs?4*$hR-^*>EakOp5U(!DFxpT{s1QPMaZCk6BicD<xA!k_!e2BGKW?5yR z7XGQ@P*+~D<F1yLW%cgfykOJ;9A2yXdQ{bXrRy@p!r9E(1x}xr9W3nD@@;o0OY;54 z3aYbYja~%b3s=`^*Y~*Hi|yJrG6JXPxhyO!eYu}lT4m#CD<7UhM@w!i2a0-FE$pR0 zL|M%$?K>A}ud-qYVx5&fV13;c_I>Qo2of9YhS5#f+L6xTET^QFh~I?saGUivYZ_T9 zm2-Gblb(cA{pyy%fFh^e-CjrwZDI@+I}auR^78RffJWP3P{xt~WX*Xn=qCg`2&4gc zsSjmkWsFxPw>qV*=acM_k90LzPI}!f18yT#hUBJvj^kIT22VVg0+8G<{krzlHh7%S zfE#l#)A<C@iqj0H+?Z>YTaK0ixJYS+LPcrRRowOu9%bjet)o;4dPVh-Qr0WA){ zoX-z@wFYAgYj?y`UJ)^oTm>$WzCZpAiy^~a)ZwPR6&#G%r3P!zTunUqqR6mk-!2Xl z@2n-L<lp=`E2nFeErifqIj_7J{fsb*D}(m*LOdr~v(|)-;!1MT;t!{!7c&$2TJ(xq zmDS3>)O@AZ@Hdo3nAv2czX7f)&#o?^S9H755Oj&})XZoKRzM#uRn4e8Ap>1(ExbHD zVWK@2W(%bw7J*<aUg;cc(wnT`jX5RVK;Dhn%`nB)&VuH*{rA@Rw$s_(@isSeE`hkJ zGt<I#`a}l<m?tHwRQHP1Pv9MJhI8CunWQ=SbK;SERp4UqiF<^2t`UEELMAX=a>`?@ zV>VHgP5SDH|0$2Maciwn$Bw!9`9+%krb>$ES9*4;R3<J7j=C6{w>l~ci?@p$%?uBu zzz^#hkn~DE0^|WQN8vj_6BQmkYG#!<C>gF!BfdX1p|QUrY~%jN!#kh;%0j3XJR?x~ zr4~I<c{ww#Yk#fg>5Iup77s${nU8x~Mcl~LAoC<OXybs1yV)GVpBYAyP9a2Qm94w{ z^EqB>;2wWgjfknukj}wMj#7EnB*fPA`8`ng&fC%BTcuJWESV?|VjqR??(BXNwG8yl z%9Oo0ZWF3?xz1`z=J&*#4B1cGNDs`wh-0gCKP<E5Er?=N#s#NOHqJBrba@At+MTyp z@V7n@Y0Ue2<I-^veUOuPf(<>xfP^M&93&9puoWbWWdv~;Be8FICRzD0x~s73okQcV zkTGp2pH?}C-P-U=8bs@6M~Je5$ork`ixX8`7BxrX!vphT|41iprjw8;w&;dJ{nRb% zxD_<&ZbWmbIcT?n&1J!pIB5K()7<WA3LkBpZwB^E)9%{gnlN41Y~R?jtkSr!@WYcg z<>0_QcvaMnws78?6^y6%=XTltImpLLE$!{SPAqBPb=9<&269XHsfW9m*}D^cNR`Hw zp{NgaU7=Wy%6H>zy8mGMLm*cW;t#zWb5nD($QSR5m@bHwMVi6=bjL|0AEy#(3f(!% zK~X;HI_sf7qj<!(rWWNUt{~tmk{pA1<}s)*etloNIV5TQM}M<Ov8wNL>Priuee5yz zMgqTPWTa>#v&=3Sa;vkjOi2rlk*muAbe8`6-EN&=GG#N#*$b@HcCskXD#DaXx<vj( zU*sD2FH!M5bm+Xn0@NLw%>h694k){gBU$5DY~JQ9DsP$UhZI1v-h<fA3U)JiJN%UM zc1Kq{jG1JE3(+4s)$S}f;Ip%})$mCZK6>f$<<CcM%cZO9_F5HF^)SuD!xZ5Uk0-`! zl-J|9H7SvF;50CWbRp<<!`@nn=XmugqYj2Hh<F;)X&>KH)AL$eL6@khMP@EoIBpg0 zb^{8r_~1M}x6_(q;j6~=l6=eZy|vx7zJY;SI*_-=Xui75A-2}(!ye;4-)w!5lwhJ8 ze##s0+1|%cb|<#sDBgY3YhiU&d@9AOVMA21{3;6z%e3))A|-n?r?6h@qq1>Y!O>Ut zi3KKVVyi7#4=gP^JfVt;9Svl871wWxmoq0@4f_|a_u3NdX0=kH-NsLbR2=PFYVs$1 zkbw+7e55Ry9tPcudGZejz0>{b<!`^_E=Hhi#zX2kt~%Y=Wl<QSKH>A+%8poC8nMn| z_`R`lpY19Ja7MUJr=t_&lY%8{*L})uVYT$*&!Rh~;Bber>oim8g@=cozD0up-bfV* z;0C;$8|l42$~d-RJtvVA7^X8w4Tcip(FzJerVEN4dFMdJJRw{nie-QC6i9Z2zxb3# zo1?w$QzR|N50MYw+P2iBg^j`{JzY3ed9JYLy}T$F6ZD|_3-l}J$W-kCy+mg@H?@P+ zX6^o48Sg4ft&;pM%?)Aeu^iPp1IM!@q)nLz^dTeA3dx<7xX-TK#_6!1DeekEXQ8Gu z_McCAw7?L18=t1fA06xrj`UC%CfezIeo@GjnUy)6d_WgawKj4^hN5PsSX;0B7VK+^ zd&QKmH4HxYmQV|^J6$!kQw0ruK<Bzr|0giT*5b2T&0*Mb-J#-yzi+9TI1d6~$fnME zDWpdrY&!ZrP)9>10hk;Z9^TQqrTgL(-o(hxZpiLoOr7H-Y(B-=AhB@00k5uZ%|~=9 zhkoq!B&=?$+puwW&?^tlr)Pb#U7jXHAd){y#^f>QJry-!RqMIF<0>LSWG}Z=gU$xU zaB<<Fuz}~^nb9g^8zxDsEcukiK&mEd-8B6(G8~W2fDrWN<_eLg;)J!ji_LN^Vl0;< zWqrKXVQ;u(olh<%ikZn86_-3)0bYuG9M47w!qpX~uas!}m1PC?`}+Dta&%C_!L=bm zQeeu!f(uVV1o)QJ|Ivc8E<?am6`LkpX9JMjSLV%wFE;IdtjX3-z86aFu5((iZkM$Q zcNDwtv{-lV_YpR=^+9;3cN^Ug`>zJ?U*^2oIYG}|GvlS|Fgkd3Vw`F^s&KV%wRv<T zqFqS1U3`9vv5Bb-FM`F(*BuVx8>j<}57Q&ssA|tu*{yzbP2v|ij8ds)*x%oAh2}Za z`B`c>wt4;%Os?eOa@nUKJ%lGrz^zB^1~T#LEPLNrDLlnPOHK3zX>P<uBwR9B23K3W zNWAW!ps6VmG>`-@ark+<gBu;{HqQ<62~(3vl<P|<&uk1|WRGt8GpWr5Gf-Z=2x8qp zS!=OY&Ft^pg)#f68x3$jhxT>3>3K!7!@Bp;H&nkKAHxN({TEbyDDOzoKK0`tVmjG$ zsjnbWqT=|cRPH1%m-48uCg|?Hz1>*td(+a60`>Xhw};`ODDaVf2oGUPqA9UHo1SPN zq`<=Q*D9<DmS1t5g%w8kHG#i~hMp!kE5+soQm<nV2ga-(9PaLq=)8jVo|_KQD&pZ1 zf_+vkecg3+!ZZ_Sa%)T8W!ZV4k=A~KzGc^2Qs#RN2<W|Ybkx))<=|26StbJ$j?lS> zmvQM1sR6~l*&)6emifk4v1rlLce;o@UzjN`#TmX==rS}l+}QwCpFqf%uYIREWOm=F zsH+pRTN%A56Y)(>>-9fDp`1bm4W-TY4HJmzG942W5lTA2%XNQjIue)t4kS)?1>z}> z&kt#R!`qEc_|JQCRzZUi`>Wd--^;D`M5p=`T^=k>oj+FJ*wFgY=CWp8o5Qg9z1E3b z(}7&IX9w?vB>E_n2%mA!tKF+Me{~c7%T}`8q;j-%Go3(peV?!WN1L138&t5Ixy|s= zGyFxi8NIF2(9K~Nv8B|x+#pOc(fJvW#|9Zej2JJO%7IERTF0fY%k4DYMxS5mFe>0R z@IyH2g>L|0w|L59`-_6Sd{h67WWB4|1K`{me$F=2mwX&A4EctH8_lKApv8}iAYz3y z1~!>)w!r|OPN80A9tyBTU*=^Rb@D)}kb9uFKv@~!tmd?l(&l7wims6n8ul1&<NaYh z&jwcGLBUFGCIB8t)oh@>PnirYty1fLYuZ7Rg)(O~CM<7Ad1K5VoxBsmL(tFblZgTp z0yF}}y#(Vfd(?$COLI>=IcOa2S08-9gq?a90y>93zkMV<3~M*-HunM7tXiU@CRnDu z$_2a;AXfim80y{{w_XjM{$29`u2gi*xAb$J<oN3*wL&ASf*=13ilR>U$5Vhku4lEp z0<r4n?ek`6P@MW2cdb}1=E<?^JJtjqUnChS5d~Aa!hYgI!C!tJLq5Pp5nEmUsr19{ z6OJ}cw`m|2*`UXSjH+Q6G;8ZAS+hSdRcY@2SR@SLv}RuD^t&Y^P)-W<q120>GlU~Z zXUiTlw;#XWMNp{M@<9XIH8;$fN@|i~e$fEF%PH6lE0fgBQ6hA5no{Y{3$%&h<bI~% zbqscL&&ap6Hn7+#eR9eB^${T2EdN5zlSO;p0ZcE~>wU9il(rrF1WJ6QnJ?D(cH@4L z!yFCyk0cZy!T>DbrAg?h67?B1q@<l@n0PGpl>q#e#S>e;{4qGy`r9hE+}8};>M$zn z7N3D=bR>C>Z?`sj5g>>DpBWXkbGwbix@Knl1I}M6c0fKeY^eS=j=RcT*=5J`K#ppu zn2Iw*CGnLB+P;kLNzwKO#G7t#fm3t#SqVK6Bh?R_T41bzGYiHrv?WkbT?9b&&~j5W z&><rK5r`731{A<zg6MSVf&UT!MsmCO-pM}U;1W;)#Z17*R?9VqE#GyxX*(zFkETME zX3Hel0QSN8(mV2lyIws=!3_GqWJ@8T*k$oyjRO$*R>89cTg$|ER1X(d%No~);-0*9 z?(Vdzp8d>v7Z}pVsq<%1n)d&xe3=HYCK_&a>YieCxwkhvi}}ahyTo~WB{g!&@sBg0 z7w5_k#t+mhIA8;xwW>s5&R@QwkB!y9U<z+QiwgEgA^OJXyYX>{&88mR?FFO%KL~e) z;}7A4qvL4FGI55q<7!iWQ-!IPQe`>*U6i}*CXxqkan83iy&|1lmynQ9r!PSN?ck?J zr4N9<(GBFZR@xh|NLc@BTlY>9m8IGM4S@lM$px9Otxx-*R51OV5@ANy&C-V;zFyP+ zrHR(IfNKEWu*DUD0R(8%Dmss(w+FW9WS{TPVW%hwD384Z+=yWD;LI>eFU@Wa`J6B` z;2S!NJWhFV_Rzli2SdYr#Z9S!*H{nDO|aAcbZkZ_99FR+VBL+(45%LsyRW^h8`?Y_ z8k7IEZ*b5{$Zh=t|AnS#d4K_m-q;Bxw#3ElZj9MC3YJP-?m0L!+wGEEt<CSY8pJ0@ z5h{gRwiG)M?0K(-GCs(a&lTx~qNTY<VU_aoOVAMav8zOx-{wV>fE#o_UHV?4nSM}c zr$Z55tLk|5VtO_q;-G{Ha07&}4U>itUC@vM4Cwh-bgAZ5L498W{JMlw4|9gJ+8}IZ z7uvD^585R>WGq<pB-8~Vyp8$or7FFaZ<pw4IU6+1i^Rc_cgmj|_p{TLOG?-xGP~ba zm*;bjucsI5W|!r^F8q6T{On5OB1VscLb;5hzm}f|VMI3e=~eWezkUfAy#ZxyJhaI8 zM6Xp*9CAEpXGvuGg?=kI9!eB6q5<tJoQo}X-GB%H6$59M*8AwV>{0&?7g<HPfdLhy zl!FrMMu+WDa&rC~{j3Nk1u=N*lO`56)cNtm)PqilQG0~94GH@UOeJ4~5)TjW?P%2_ zLq^~Rn+ksxqezY)=7P=Ru5Vv`l&}<Aj1)3&2?xDFmr!2;V1r1u+V$xGHjruQ^smI7 z_)P{V@SB^-R}ZiN1%s(4zpaw1IrP0=62T_6a3m<<4nUEOW=O8W02L6FS;nlebo&W0 z$SmSN|0ckM1YhFnqX5H(?-3I>Xj_RDcc&c|7wa_9#utAM^s5?*6>S$9_)wa(N@;0< zzLpP4&ZR>u1iiP15}unk(JCvizoW?yJz!y#quSr3;`Wb8agjx<fYJTb&$deL?plcj zvb4Re)NGrVY?b1Q*>9b!%hLi7Icw3?wrH~?B43C`6*wP2-@j&8?`Ot@4F)-sl*=GG z=szFkS3yZR@>)n98ye%_AX%!j*h0FjJgB2p5#RXT{WVc&W5Z#Yz+D|nNKgvqEOh?h z5}e!AMA@(&NF^YxE$<H`WLB^sls*^)QT^FSIs69sNiP6BbTS}G&7`ef`*1CyeXUjJ z`LU}I22gUA<7#OHGPo-%L|_gm8%SwKj&?Id<k|5^87-#8BXg3@uVYFbY+1+v$aoqV z&LseFF@dOhcpG5hmNQ&P*m4>}1_*0RZaBkP;B);dQKXq!hC<_rVp#J+7|ZPpxjYZ# zPiiZ8RzYjr+j;L@DR{jYeu<WvYpQ=$SQ_{XpV*7ZO9=_|eu|cr`LA)0x+vUtfeq?u zr=o4J6%=sd<$k~dIe>z`+F40LD`-AaLF1_puoJ<TsK8EF?c1Ga7JJMx9YYy~GblPU z<&;NK>x)3sD3pI`oT&;r`8vQLWCF-y7QYmWhsl0PsT}lRuItVdnkurf11WBfVvBDK zBX8cijoMq!w9_j?eCNm{4j*3k?9WxZC@wCZ5%fr@jTofAWj8k#aLLw&XrUGG{n&t^ zC%m}}^nP0E_J9WXe9r0Pd3KZq#wvr7E9*NP0zgY%6!R=aJH;?Lz;RT_2R_0aBSYtX zlmXI=OB?Ink$;5o98%3F|7os(S09q`dHXHu=mwqOFJ-XaV*|X)t$F@|Y<{vUKb7*^ zXMZ2$5?4?EG;ETlQ28QpTOsetirP8W&{`e^8t3PUB5rORbXt_nrY`RyRt8TYz4&X{ z$*u=wjXOzIA|)El{nT`HK^K2T+nI?I&#C~_JTZE~*idGq&i>`Ww1X8??_KGbRsMJJ znnF7(o_?~kO-;Ywsk)9@FQtAnd<H=}&9LX-Q_ov>KLCgq5Y2mlHa0ddkj-4vYoWuk z%O6jWu2pNmnN7{0UIW|b%B4m*Wp`-`KvtfgQvR&&a|h6E7fuUCVx4U?NY~8#SN#Gp zzV-5HmmMEigFabxO_&g44QtcKG;Y7(>5ia?2ktDCA>0A$U0s*1Tw&7_yLG(NMdX7O zHY&NNCmZgr)2R1}Q*w%MQHF%-f7K1~0w;bZx&Ded0#P?zTK;Oe|H^9iUM|PNYOw8* zbfKFOPe19|=Ha)~g+^xbw7p{Q-yzqpbO+eL>4+QYc(_XpzUV~5Luv=8cCnxUBUa?x zLsh;R*Xd+yZA|R3q~~WvRlW^C<$H5&DH|16?6!&264BC2F(Y$TmNtw}3dXk>-dNrJ z5z5VRw%urAvCw*jpwN0N&boV7dAhu7TIcJa*QLvyTlqXPUmhcU<w9&dD7%=pL0~I! z3xn~isz%#C^?4@|`Idy{zvrG3UgXlR82dvKY91_Ev06I12K^Jvxw0Bqf`?b=W+l{5 zO44|Gy18+8H(Ml|hx+eVrh~{6G2FlO2K<-eXFs}7mK_hyK1W}p8cRqd>+@n<+S&rk zhp~C1z<N0np&Ntx1Tx1WjpxL2X5|184KeYw;rZU|{WO#vm+`KCYeoKWr!FtlKkiWl z!HYqAJF_e9w-ayew5kf)*#&W43N9=pxQsJ<OZOHkE<0WrEHPAE87^eETN{sPUZu5F zbakyMG}!)mXLZP6<T&-}Gf0k24ne$H4b_3Q%3DZlje_SEzyy!f`S`DVYHFSqvQ@I! z)YnCd6Q&4GTw+s4Wf5Ti#p)nTQqmcO%-<t}uu-2pDt{jZ`Fqc4a$>YHcrKxwSvP33 zff#0=eGAA&0wJT)hiFqzokZe@i27qYH%K#xPCI=#)K^D2U~v$rfkQii;Ikgy-PHX) zc(2gz@HFqun^&gO;^DJ5WNxA0{M(DMv9W%uqV|pLNmVxV(%oCI-NwLIb&51ALEy0X z+MlV-0*`$?Z=^z8<u}(dG_>SI$wM0g3VCgn@^0$!A>~!l1M<ErR#~n2<eih`-bHb8 z%3mG;?BuM`cFf_UPF2bc#VWB?`-V@r3{#`U#ldYu)uQ5G;?>W!RoyB=N&He&f)cZP zO4P`(D`Sg+zFqiv<@1(P%4M}V%Tm7xQ)sh-B?W<BGx&T(+}6FPuItjJ1?c{`+3}`D zKGW9GxoNi|8;`RV;0g=g+vj*$$#nmL&t}Q>s>OI9wCPrc#;!V<1bGUmHRd&!7P&L@ zlbme?JcBBq*m=3;`?@YqX?wRD22o}g`2s-brLAZ#aQ2H&ZXCmHfFwMx5S4edW3vk2 zwU9GN^`_aRlYOA9$9n=zfc(QuDAQ)Y3@N>STTS8Ev2iHAslc)VBNUG?e+{kVvqre0 zEM-mVc|x_sQh0?13wwpuhr-~W52~fwFVB*Z8QXQel~)Z%t&<7Vb%MZzsAk~ObqrYO z#~^^0LWZ&PcT-tXNneo{T^JM*J_kK)vE?25y_QvTuFy%Fr=Pj*l<(A=ckfh-v^_=G ze$B)OqP{Ji9OOFnH@_fLg1iECwEs<=0sc%bS^GCuD6@KlL?CX3fH`5p68V2*PW}r3 zB)Z<Y)>g)BcvI2*!O|ji$o6;cfS#rlTAF6AfJS0KlXs>XP?^V+9s9$FtObUzZnD@Z zHtZycf<{G_u}11(g|&0fxwPWD%rdWggR?%X)~a%rz8cPIJ(4_TKJipbQStL4y`QbO zOi$f!p?~ylb6lZ*PFV7C{CMFENdRvp#dIZsRL{0)=my$v^_>S9P_9d0^zlz4b>H)~ zq(jNttoQ|1U#u5z5~c4=ybZaSkF;cx{}StPMQ(Ca(3J=7*rPt|)jLouq;T2sAK=Uk z%q~^&P;#n1H{BN$sbn~Ha4=GoDRUe~Jy-Be9`UfS=njOu<P{c(8f&m={bJN*U1;U< zS$A2D4FS&Wa6a2e^l+&L)-WNtrLA5n9?O43b17&W&%4k-o2@@2q-pR+fk-yzFw1eU z9s-fCNKio66nwUSRO24n2~DbkLr)^ZI@=r;WUYC`fh@x$>n@ge|9Ks$<`3`S)#E0H zqT(0jWa`j0v;*+;LZ%Lna51nfgxTt#)N~3@MN)t-{p<KM>z`h7I@7zwQ@w>L{?k5G z&0x+JXaKrfm+2lSoN%0ozkZ?p>eWp<);5U!YDh~<jrmJAWDMis>FgJf*W>_xs&M1k zo3Zf{-3Km{(Fr<ETEE4h9af5#pJ_)2wk*dcl|F0oT-N<A(<5oyS#AC3I4`IKdDGIh z+6-yh8FCB}{{O7k1E7~Yx~qX`UrC<*1{uiGg)ug+id)P}W4S*-QfRmz68-+ZlVT7_ z8h22zE<i6$$#iLq)4VtNFA-B3*>&B_Ax53PR0zS+BOW{GI0XeoMBLh!vNG2G<boSL z!jGQ20O8kdV#|nj+FKjk>)@5;?nT?~zMTJwUUIq!cyEcNlm1jMT0K@?z+sa9B<kjW zgv7g<H&6POK|0?9&OQPA6^Lgzs&sSJnJj~;g$jixkCAx*%DG?bL8kj3|4YHF0$;+Z z&9bR46yBooopcX=3}C_sh3p<D^4nPio#pm>|Nbk;GeW@ZgQqss^2a)PK_zt@U$-OK z|DhY8uSG=8%f)acL;3T#<ABNQoo<s6a<@4!x85tw{b*NQP{s`qTf_d>->Rbg7uYF- zntuEV6Jd+`@D*j<sk=bkr{)WY&H>;W#_Wvd;n|Sj<%52!8y0Yl%||7a(J-aCPiszC z2C;#niH#;ML*}j~*sOrs^M4_fSK!w=PfRpxjkzppeAoGBB4YZ>I#okcp<z?yda<s9 z5u1;XkIq-C?yY>w_GOa4@%AStk8p*couYh0LxbMRcuiJ@Hh8Aul{7|1&X>y{HUP8n zGhxKy{!ZG1(gv+jTf^4YLjOkBqe3?jDFvjz7rMN@olE(I(3a1+|2XLG0be)EN~J&I zFOqFWeUa?MSOJkUYB+zDcn6a<dq}aO0=ugtSw;kP5#`BSf&W`Qk7`_}B7uxVy+1q8 zi2`vxgx{W`T_`>g{{<x9>irH)``nDFU;DVap7|^0e#1DU4;QVFqykNy(5)bG#{QtB zi_+5GykbI^zQ@Dc8kY`^Ppcal=D;-E!K5PU$x4AwAHeYSZaXi@C!j^^=@)73=H91= zWhojop^A$1yhlZFxax@Hg=ODUx~qR4a=a{HxDSZhhu*@+cJvWIw+vas0q@6zw&Dc0 z(1HRq4;x~Z&k4hd&O({UqnCIGqTCIvga5xD<&5u7lGSc*S`XxL_xt2saZyOT1+RY5 zQx}z%)%2sYv$o0oyL1<5H*S61bmE3ciLQ(y^<BIWDzW{eV{%do)SrW{crt?ZlisTW zM${8*z1>cGu#^h-R2Ag8uuMp(+Xl~cUrM!WNjOfPBeejIfnO;Ty<@9X^|lS2oGRS| zvOa6AjK!$=Q*~r|7PCPoThbA<fO$Rg9x^+7ymA>rIe8cGdbxrS4oDdmOlMHC@+|p8 zNh#*FW+8d(;>P;&`j=G3x69V+bzu!n>w!8$UbZDZ?%Pf7@$hHM9Dc_U^@}p-4!Q*V z886>vkA(*@RY>!P>86p2>I!1yg&w1+GX<;5bZ$Zx;EDFC5<HjKeSLM;fB1=HLmdAy z`bzx3^>y8h4n4~8-grk?bplVx*<yelznWF%$I`@BPGtP*0KHNbFN4wV1l<S-6g&F? zbdn<~LjG3)EF4tTh3f7e*9>gkUgRk-@`#GksM9-F_wQPQQE~gu&OI6yCvC+HCG`#C zHM|vu*FXmc*nqnnTHwOUsZ&onroA?Rul<=aZE-J~bm@e*lClMCQD2+u@Q=RR#*IO& zXqDtC15#832VpHXRRfh&%z&g~fSQ~HZH%5dsHCC@nN+ZXq{8g{cTjd+NlFfg`?xqL zDo(-2*OEW<P}4<5Li_-s=@B`I3D7vWFVDxWE)J<kZf)JQwA}b4cxvA%t*nmw)c$^2 ze!k!i*<v?oV4c}9IuA_YJ$Is`MEs0l{9ii{^Qk|YgghpE#s~dy0_r1Q0@d3&+rcei z+j)4Xfgw9m-+3IE&3j?Nr<~JB0DWs*`s48Ra~QhW^A$>@@J=Aod>Rlbw{c>{Ecdi_ z&AQeGY;kDl#dKX9?#x##j+y+2uaxBzO(2FAcpudBzK6_aUHZX9Ev2VK?wP;6P0v^d zuz;)*9Z(_1SJ%&D*>^l(;soaPE?{<-9|Xi6BWf(BP>LE=U2~}Med5y^h)Mn-D3Z|x zX)YX58DU9DNspW$_cvhads;^@zIXgM98%ZJFoiaVrv_2$&fTs1irvfHPCJ4)@^DRr zE7vWx$w$cLMmv?%FBaKit?ecN>G~c<XRuy6130!DPb<yPI5m|4ESET(Z3G?HfR^*2 zxF;|YL$As58rG*P*-%+Z6}V5v>)*!pGV{((7>kFm06f8%vOx&zjW^gkot0)J&GEDM zw4w=78B5<Mwab5#hhsFLgJgoDxU0}i5a18tAlB~D#ACLo{x?`&61p1??DBsJS{7X_ z0$pq~#R$s-z5-~63znZ|;3<>p@VqL1P`C2Yofp=4zx8Su2slGa&wNphNXKvWGy#D! zC(iyc7BnjY;Nj;G)p6|@*qKxn2!LgB{aE;xXyzHxHHLn5W^-)Ibj8x0u=^<H>hLlo z^D(r0@FrzZiJiOTkz9-(C$^>(5;$GkIg(5{OMqmrbZg?TW_-k2Jewa_1A~9jBdoo? z2{cguzA@H05rTDzp2c!!Pah#yRR$QPJ_UaVEQhU(T-3Wa$XtZ}%n&Y93$}qUD4q8N zyh86MW|>MJ%p#s@0Bc>xV{pN&;o=3**}$`S=ft4NjjDh*Dy2|IrwAY&N<^8iI*d-X zJ={nXYjt0abKk2Z5cMhO%Dpo~?M~{!7@NnzeMb3kv;KC?i`j^4c9<WX1-K-NHRc*N zjUo&T)JEYxX5Sw&PD+RdM;BuKT;y%k5dm^h|3~#Dj9lbMfRdgGsHOJsJEahrBCJX< zK2hXdhBiFHZ4;SruCtgmTm)3^vqK0`3VOLx1i(RGl&=g!@A5DgsQ#@sP-1yz2168i z-CyGyUd%L1iuN5ixSXev<n@b(c=ge{qR#K`lopRa$12NsNJSwPLn;6HUb-KeANP=Q z1c83GCF3EsGzy?>nHcdHBY8I<Boxy0PeKp!Z1l-dmu$d2L+YE{r!aD%DCUpGpd?V7 z9>ysZZieNBaB!K=9iK;dIx)s%q#BWeOG3V3Vv^Era2)?#m(0?`RzH{ZVF}2fq<^fQ z&m^wvVEyR-i%$Bw9&s3xI+myOkdnbiokuj&;y26zD_H}<8_7KWpp}5=sS>c7uj$0- zs$1$R@N6RrW>|-h{|c2hTaG!i3Cn$0MMq9hQVd5Cpl^}Pc3m;mbv@B#a{;X5B6_NJ zte#Pd0fU$yjRd9Zr^y-t$9+Y|Zg&o-N}Dh>CVOWH2DZxoq6x#MGANxw1^{tQ==;d4 zn>rY|q)_f69_cRR{&g4sx(l>5BCoLg>n@HB3^~f;7}NdhE|BQrUw46W@&8BYVz$S- z=cE_lU!?Ij;Qfm<FcJA*q=Ak>ME@ox7)1DQVuH!Y{!L8KEaAWI;$L_1FOPAe1OK1! z7_YzFu>-vbYi`=6=6s5y1v$kDMVGNj0HVkz$47KM)Fbs|srW=s0iW}<B9b^3<Je{a z;}Ru_3qikWm;q2tB-xo*3<bjgstCXU1`pWEnqv<hU?D(eZI5zsv?C_Ru4IO-X4aNq zr~}Z@!+A`v^oh`Xz;Lum&jGce#>dWui8c5k$o`RA=v5HuaRbuLS(y)uQ3$g{F$(9w zC?U}-y9XFvP|5~XQ855la)qIJAy0nTMNLd$I4jV<8Yu;e2}^ylv?O0KU&xjVh|n(| zFJ8jhxd(s{6uyl4Y!Q`JN>a^7YAm6Clp%|Bbp9}<jU?qNEMhHH7{$f&nL-8=?NuIJ z*Q@$ziM}d{{Eerwsq1*Y$qS1^&7I1KYu9=|MTuPY!rGS?U|)=t*?F+{1>949#sA;2 zFQM^cDs7-LF!Kvs<c>{F_OGHJd~vYJYN6V<Ek2Ca2-N>v(3%V*Bt5D@-pCSfK?oQ@ zRP&YlJ~eh!5n-0{R1Ij;>`EXOhX@9u-|lOz%0_S3Fgwtunpy)4w<g8lj%&P}>V&_~ zGQ%BXcYJXI^`%lGp3j%xe^=>(@FY18+^2v1qrJUhEAo`bOF6%{=x+pXReIw2onB~b zd*^<-F(g|PG{}=<%EX?><!SYI7y_4}Qx#Nh^)Ou6|EA#rtcoA3N;Dr^x#~x8bNi)z zJ3iw~j`mkvTJO1YYpC6<wY9aOcT0ZM712KoPcHxG8P|?61x9U<i!}4ZBfIjPI|N=k zzF=O7lj>A57+2<uIodvO+wz$p>>6fkl%9d}f5yjcaq=clyE9;*R#sjGmh?Z;q=td| zdDotHY|RwM5)xDg`kWU22!PwlY2%HB!DogR7l+E{;SY3Kt|eP7{ajdFT%021#8k$R z26T_=p-D%|XsNIhqt4h8GpGp{=i_KAD)zFse>YX!Ht8z1Kw!km;RNGx?BMs%g<YxC z08nkYVeqmQ{ian)tCTT|e>O2i4~8&7U>K=RXMz7vzxB5n<e2B+$KCwsORDt%ubzM7 z<rU}Dutz&QqBMMb#k}I;6bW>rl+Ia(Q<1iEx?ek`sO*i5Pc{Z+v22y~dHyxl2jIc1 zsriBms)cO($U0)#e5%i8%Yg6wkD8oL{i|5CI(XvH?Y{OptZMVq$3TS}KL=tM)iETa z%4z0?^-CKpow9%HF~2g8Fj~X_F2qP|cm7@m?MC-&19c4zBN|QJ{nN8S&3d%R)_G;H zMlhO_E;vdqboqa=@q^W~>kbaf?U!h%{W9d5((=pVPI)Z#eV8AEV~+d(+{SXjT|Bm} zM?bVAR*yTHj(2>HU{0Bgwl)A<Z?Ceqoq7M(tf6&99;wdlV-)M1jH0H_qWWXqsyzIi zeXcJsUBO7V5O7@yVT{+Z7DF$2IgL>o4EqolZ^?J%-R`XuV!OL-!n<icfYt+iqPyAN ziMUw%m;+pV&Wol-bgioMG-wM*QYyu?_kfXI=Z#88bDAf`BgOQ4G%?PG{2?RH1W@l1 zq<T-x78W1m3_XO4h(_>35`#a2nsbr4;mUBapwFp&owl6Dc!-^_Vl>9IK&7n<KiroD zCSD-GvZK)K_1jam(ujZm-~fz^VRZ^;@i@RU0ryd!XXU5_M!&+emNO_h0;8M_g<#F- zh(cb%<(kDsm#P*#0R2tMppIQ-);Qf-Mw&y&2XkgSDm3W3=1TD@$~6H~Xi_rw{Jiwu z`y%K^?u^T!Dr$)~3_s;jjMRKuXP82BbgroGE0avhwxY%~>(SkZL1%ZGyW;sSu$if2 zA_f5Ep0|jY1m@OSK03G@tReMj_>A{aP2uZxqqAqXkXLNCc92zesAu2232>I?(jVlp zyZjA+{kF0_!gj;A0lQBi6KRf)low<{_wD;`{bH=c)nf?L2ZMM+YEM%$HC@2^!<Uz- zwA-Cu6F@Ltz20i!IW(k~H>{;&a7)L|fCb$6&@pkk!2(lg)E!~f(Sg3UBaZj~kJxjA z5vU#&akH<ERjTCv0jeXw$;lZ^l2quV5GSmah`d+xB2M?35=OH!&Vwr6jikR9S5a$8 zJq=Ec;-L@5S|45qfPy*pH`Y=wXlhG<5`_cw{RQ|XA}l<?Oi+~VOX>rf%(R;qIxTjJ zdHIlf=KrxqxzOI^#*X|-uzw3^bKs*nIHN_6SqSpGJ5?Es7X&*;D5SkzdByn2@s5tV zv;ZWasR6wKDRzj!<TP8vh-8UV-*s&4Km^X=f4ac{t~+F8VzuwCfID)lOc<FMlmt9E zmQyQ}U`jc50S#!wl1h!mUCs7gIuF_cR^+dYwn<z!F*G1G!4(p}sO+2t`dCFW4Gl~t z5|ZNl)5)}RsU{T>PYSaC4q7?+{+s6(7X6cFB&8m?ty=yW7#N`e52Njp?4&w!^}U5S zFz%^K9(MoY^f}Z?AmVHsc75nGaI|WH@#tH%KufDZBgzK${V=u<z-F!)v?XJl9eHf1 z6wPw#ekqs~kb+-<?k@lzFFpM_l`aPgdb&&X3tcJb)mqm~cLW7MpGi+oNu6Sce6v|M z#Ol`KLCj%B|B<B@S-te9sU7oPOk6^pjjQKT(gEof^wUu-tCKUZdhxD-1b+B(@Hm)6 zxB(ka1_M!o`P&eroP4l>l#)#Fl=?M#h$t3U_CJ;*ad7`9nk1DI8AHCAJi$_oR~(&R zMY8i!E$@VMc;{lGc6PWF)zbSnDtPr?bVWl>(seJi-ll*2R@-!@2e^U+e%!>d0loK{ zTWhAc4lCO8yLPuT%o4EerSH5@=R*GD!4k`zm4mwE!GV?hEI}s_2lEZJrt4-pOmvrY zLxq383(QveWIKKrqaqAsK;y*pzS3d&*oD8BEYNqPvID>&<><Xg#Il-Rg36bKeX!r+ z7YvWP!jA)s0`W`+9cTyYiR-YcVGJDd8ybpx2zOyI(6wVx<1juf%P*PmJmoHOq#sM5 zjM)G%j)MXBAm#4L@^V>Si<aeG%iJNY4R&L=%E26b&b_4|atyJfoUKCqip4AfEx6PW z&@lauf?ce|3xS@38Tk|C1-G;RmlM=zKYK5c10Vu>SAaG3CF<OQm3TUi_E*LJ+Hto7 zn!{DgEy0Mx(w*&<TIh=9uKk|@0<w`EEL8>TzUY~pUZa)UJW*RWP`ltizW?11j|Aa1 zj9(C?Z<3MiRPsy&yYnXuHQex#4VLUm|HWId3);Zd=75IK1pWbRT;(rCxC~kz_*zu$ zS%u4EAKATnXsv$W?G3a4VOd#a{R!*6AOQLjxb5o_?zle#x|9mlG8f#mgsYIr)(rpN zdV!tPodVa3nz2J!4(PJUiMGaE{Cj-|1O(Q|+}q%pUjIP3CeyPKk|FLMc&ATa{F-_$ zUG6as^If6g)GFo61nE`jRWxq0GXC8}-yY+J-|+H!6Z!i4y1UCfoUe?p%3ice#o0N3 zuQ_xqY1b`fVrXol&9Dx78-jxmo`DYj^@rJW;Yjo$RCrU#W${WXClP}O1o!w~4bMCm z4xIfUQj#Lgci^edh_AZ4@qd0zaPm>q=lxhbe-OiqZ^hQBq!|+lpZ)t;)VDaW)lb}} z^C}d<ezCy`2TmHWE&Y)2cmc?7aZ&O>B(HjV--*DyMlQu5OYmV0%1|@ZD(&Bmqc@MW zG=|9%sTsKVT}bKx-tQ5bjR(1wp=7zzXsJ+ND$VeU`{v*xg?s++V;$PR@*Xc*1i1zg z^_`#-S&{3ly$+UJE6nxf3|c}4JK{eR#k#QFE+_2I|IuLBN04@p{1Cg)@gR`%KNfux zx#+975JsCs7Z<Jf?xXt-(#CYyJHX%}l}_9cNVQlM^o4c<W|IE6h!OkSt;i>#3<`wU zFZr3`9@1VIxSt5WhCZIVz7T}Cs7R#nDeN!b4fo(i(58#>k~PM(UmEtp2<U+zx(l0- z#)s^8R7fjgulYZ=?Z4*_E~*|7DSEmqV9q}F>M+Xn-}HZzlDJ5LRGoSw3_HYLBt@M= z9q|9|Uw4@_|1ZYAIxNa<eS1I=MM|Z+JES{A>Fx#<kOpZO(f~vn1f&J2Vd!oYl$0L2 zR5}JEh8P(5-f{1J&OX1r_4@u(uW{ZrYptj5`+nZ1WvW}&ob4!@oLk}7zx&x+(pTzU z^qcqig4>2M|9%qx=bK*zV)7XiFo5nJW%AaUQkk?c!iR(@IRAS}|MEL6ZobUB()D03 zwkdA%MOWD0ul0Wp_s{<pLW((JNt#Qu{P}L>jo)n~U=Of~7uP|D;D-UOopEwBkAmAo z_-n5J=O+L2w|>u(ZDGU1%;O<C9%KXmk0tz{CAD!73ZXZnO?;u|=I_68c@n*d#Oih9 zb?250@Ul2*+&ftra&XhL-`oQ}210jIUgwBHlq;F)GU-Xt&Cfj{9$LTK_Ub?Og~(P@ zSR5Fx{C^hw-@gK1jY802f~>6HG48%A+gT;1II+b)^`O2==I8uK^S>Yb=bvOVZk=2< zWqJItRHAqXU0Vvxylod5-4w^oVj%a=-TbfFFc{KNY{|i1F!-!bQT}>m*XbUr0w25w z_6KGl3h}o!Ce#)cVqVZl`ZCq;O2;)5(DVaieweMPNq(~rvY=;0Bw8537#KI0jK9B3 zkTia*oFN*|eEn{gFD0guIa{$}EQ;~}-m1Uv*AZ53F3$t0o;DfB-(Fg6ZbD)NUAOQZ z5ZO2*nfzJs6Xhdag7R}8RhPLSLU~2&`hV`=-=C9pJx?Xe$Rda@l=*PzfKYZ*E~}`T z=Xcvfh{C*8dQ+R=^#$M3tKWTj2rKYGY~xsY&^uP7bXD0Hb!(PX;>{G-zWKA*8j`ki zIez7M$p|K8BDy`jmrOT*_s|g8H#dtSjE`xh;!W#!`;)eOYL}Q*6O=4e6GwHbD{0Yt z+7}*u<zLJiy~HxQj<&zF0DnA&=H`PZ=C8nU-RD4W<8Pk)pi$O(;)R(|GUx*vZAXt( z2sC#g>C&Y?dX`|h@g+vW&bVH}VdKkqf32h6yVS4oA6mm>SLQxb?*G`kbEC1-&|UZX zyUcV^ZPNW$8Nc<9&&Y1QQUVsM6@^QV4a{Ku^~ICC{YpuSt>nrr(E14Br}I9JTRN67 z8CuBzrpt5x`~Dn`VX&8%pU(+Le&;)7W$$QxZq>CdcevEJRN+uQH)Dt()$EQ~`{6qI z5Ed#L|6iN>=bxTU(SLPDuXUTu(j?+{JL_vofTJ1%`e5X#A+|8CdU?F!=(D_<dA7fQ zvv)ZO#{O8_)sEvgCqwu367$lcmD#XtG3m_^YrG(@6fXxta|jegns#md>OJ$G%OO1Q ztKTf)g88dG`VIs~%e4MC^ZGxL1o-PE>5m#3qO9u}A(iU^e2e2-sgif%tJf|Q6*aR| zCU7Cl8y+{T{y$cWoNv92#T18I-d+@X8G7yVv#wtV59y}dMX<~8{a+s{;Sb(t{(#$o z1ed*@Zz4p{T~Y*tU;OTO@qUF%(i`$$1$E^f$n$PPzRLI=sXc#@Z6A8CcG+)<IK209 zWs$BR@o#Pt;SVbe{Y5e4TDu8Bb%7@L-cq;jjSv&UcP4V3pn>bK(DReLcaFa?|F0>S zU~{E;5QnPxF*-;E`B4nB|L#XxVYsf{Xk?%V-A&G58<NwxteGedmeIYuL&a5i(O4jr zA~FlD%wrY2^Sf2QGR0KXuz-nY2%%JO%LD}wpB3_hE`#09eR_0Zq2DJ?@45aa6ZsH) zb$cST2>W#C?bw~)tQB~Q_tw1~z3U)P)@8=>Egyu=fc7PR5X<dzL8A+CP0+ho+*<?x zyhwlhN;91G(AF;-a+si{?mH2-OrRzl5N;zokr%xN+uuI+4+Ep~zA;sLlTVY)JDRif zx4ys=qZvWx^Y|*L>CS%qB%&ircwQ9?bPal`ixF~Z&;2DGu1{;v{`*xDJ|((~<6quR zb{j-y8G7+qzyR1uC3ZF@P+Sw?+O6MNCt>p+d-=J{Ex-0R_ar2Q=V3j~vPKk0)<;fy zze#)QX6i<M=%o}MescSe<)n!cdN+xFzfLa9)eZ|u?yFkgKi`qUy!!<N#IX$3-#t~f z<aUKA>EkS|5()!~$ln;#b+Vsl-Sg*JH*;)D-M~*40J7Vj>m#_oJE{-0Ar@2pC&-(( z31xzSU-3zoJY?oED|+i}Nq@I>U(bL?%6+-BkE+ZI{oRiU;rw~V;6Km!{!Ra(<<wVK zv9bHdSU<Y2e)lR3^{Z~(WaQ2#|J~PsFk>(k9_@~kGToC^0zH&8#Rvi1{QuN^|2OD7 zn__xc&+|z#XG*ZR=C^+2I&p<5fxE2&=$!;TtuHE7<$Ub%<paHEno{^dz&{e;;;H}E zQ08!ab*A3)EGH)t|HBymzN&2E3SD$YUfrqK`P&cHV|s7ibMawd0H)w-zy9WBMsoE0 z#mdImLotuNrirGOX^ZG@23@6{z-!F<fwy_A94E4_bVXC{1Jfr|vdkLuo_?!0laut@ z*IWIP&bu{%Vgu$3Ca<bfs&>4*u|#4b+B#ojANeIq!m`RX_`XTK6Oa8^0fIf9TEe@p zY~H^{IA1B=%#ktD`0GsVrFCBox%=T1AH=e-POrp>hT-bt{13p0VVf<@*_FeM_T}D0 z)&v%H3cvavvk5|uB=2Ru1!8B2?xm|`iJQ|%1#vl>)W13RJNTr6O%eSsmzb~-v!KJ` z`3c$;0x_H^3mIJe@c8l)a-nX{<_@3!Z5~XR3G5V*Fz0$a2v{=u!nq&q_Kx`1_vk@b zNG3QgbBPdSr^p^Q8Bx};kl}aJx_`o%$DcBePL}_P8gHtAZSwbB(nMgA>gNiTFVq*n zB-+s$c}lUTU*AD)?Y8L}wV7U&_J@@&HYihw*gt9!_8S#F%~M%<yY-TQ`gAmjQ>S9M zSs@Y_?#<a5j(eCx@)`!2RH{SOm^<ojjOJT^oHLdlm$tN1Yk&5_26?EJ(t1yV$-HSY zFvq@z9_K1Bl7_>BluPi)tk7GXoz_SgCx)oCd9K>EUC?#Jq|BoAiTDpvb8(fm7<lbk z#~Hp+<u>IhTSaaWp=_=7m$-Z0J5#ypt1&Sv+l?MoK_~^|_D6|xO<t-o)DmUX!ah4@ z2@LW$H@ME?uU<=z$K4o}SM(759~j`T`td~wYiR3w(M@WZAi1y@vW;;vubp8H91^at z<8|7#@l7tr^7S-bJ2#2B=rYA?B8xjKEolkAf{O@nF@J3?PuU+9@(@uY=nSKq15T^B zjO*lrW-h8TqytS{7TdT_57tuTuntt)0#5TjVej@I46#~Szn7)s8Q{!~xr4<@*!<w{ z2K9H>_JbWm0zoH%#{wFT(ZMahV;<VNBjw+Jej4e7I64q6&GYE?PGC~LZMqd+KYD?} zX0jWyuu8&N=~I~~F=l94ESh;{MV7I|C+_9MYw5kQzF(nRFcA0bMHof7m))X4Q{c2% zaT*!)$p6PzdWg}A!25wv9O5^%(Bv~U+MUIAUgPRD;TZwDhcfn~Mfaj=hYS~a5fp-a zSg&|21T|GiF6p{50yaKeUid2~^IQ(v={yVYTX{k7`c&tRluLg{Xk`ADVQUl|dA!9v zkS=`WD}%h&_R#ZSRh|8O;mmz)(7Z4xpxO5s-xI*PJnbeG_-zIr&0N%5h1dLOEi!`< zFm*+x(y1o%RC~Rp7>6nsYQV2!*5rRy`KK|+E?;lp+>ZE^=({HuLrm?JlPU2c4_w-0 z;iWOpq&Uyjoz7fbhIMh&t$bSH`EDfdLzRv7V2S;LV7#*=;j4%=tjYUQWON3<4D7FN zVMuu8#Dz)SJiQ#svPa~6{rb=kDQGlk)>0;w4P;316G2{48v?efml!WP=WUa@Qf<Dq zOee7Gb}31Cn@x}OjXN%92M<!tJ5S{0*bnNPy)}G5&03ZLKm280^+7{QDVvojiv-Aj zznbAV=1wLSesmYUebYbdDu|;l3~#e{_~R7@E>Yk0>#2f%#g*A&)rG1LQ)AHwKlL&A z(mX}-bdet}?z$kkKLagSi6l|a?`hs`klfDaG|W?*#&Jh%3MpqInT=Z=8m;@{=sD8J zIFC2TiiAA6h#*=#o(UFeK0V?$+z$$9nb*>%txAmBkU`UxR)w$<T}uyb`WWEtx$z+( zSNT?#Rk0UZ{Gc#b7|bpKS+YLaT*xalvQ+oL8}yEs%y_q`NJ}M|t!!E?o&R0}t0s?k z+m$Z$w_KfyQLsAQM~zbLo12y8td!>!K`%UaM%97Q8TrlyEW&HONxH9z{0xD+k}u`6 zJ>_--XNFNRHaiYMDeN!=(drm^AEtWxp(=|i#_Qkm%NC*^c@?C<b$E*diYj(|b`=En zd#v!ZdcDl}sg&UJD_yJqyh?w%^AQHLQI8U?fj;zPvF7<S^ry_P1TS(`j$f{2Yq9{j zc{D<#wSIhB$&9^1j#$inxu~++Dm*wI7!dQ(cYF8Xb<xs;@4cVOei;-4EPxXR;N)yt z1%JG#m<Wqv<_XXTz%whCWr!_*>kO}2S~GY5{>fDX&!Y0&)NePl<4F8=m&u5f7#l<M zeEVgH-f2x*WhCb5L2pwnr!#!NH?h!te_6RVnVa&X9nU9VW;VC|XiG_`)9EO`(<dcz znMYL<OvDQ(ThCf=4-FPN5_xr`Eb{v7%q88tw0N`a+Hy<2H8!(3y7)#ZALLssM#vpj z%_RE!iex45+1mIW^Y*)Zvnc!q;5B*Pq=SYQ%9Qz?hwxDwlap){_mw_&E5+!$a+e+A z6*yP6r}CjxfR8nm4+Tw>&>&k$^6{Sh4`TgC^)E|B^5+S)4`n4a9*~Ge_Z)6is|`UY z(~MHO@HSPuq88?t*^0|jfK*t(wQRiveR5B_-oF1OJmbrQKDnyN^&23wwsQ&l$;wDw zMI6!~)rFok{lN?|&gSRd=@y3cA>jl&iJv0w_~R2Q);}c$6&am-S={o<5CxBpIse@Y z|1D3V!@oHN!JdvNdVTz3Z!GTht;ivq2i*^N$Nd~ZUrSPT^8+3lcgkZ?1ZwRwYSUXH zM;mpqPjfx66X)M6##&GANbL{FtStk>pA&e@#e0+Cc)b@22FeLc5tTc&j+e?>!!D`y zPb;_Q8vA|Q>=PCCUB1;b19=Y5E?EJK8?{uxgF(x4!_n5GVj>PbEq<H6b$zzk7uW>W zYlC!R{yQ0SEq=NdL8mr;0;a-#TcytnP!NQ$^9)1q`DtMkmC%G8RNNc7N}ss+nuMEy zw~Y+!!=v~n__CGh?D+DrWRid_es7vkBuQC=+tQOIKSTx?zBBJ%wVPtO{NvmE1nEF= zc0Ib_hQy65DSsA@w<@)}eMy{YiVJg%wU=sfbobt_)h&6a@LDG8L3EVEa5q+7JeFtH z&V8UU3z2Y_3Os+{Z$V3IQ|-SiEe1Y(+oE3)(t<iNO}P6=&dSuL*>TdPF$mRUJ(Q)c z67Zw#>eZ`c<)(N#g?`i5ll0Ec&vpg6npXO-9KJ<xaA{>q9Med~Ww^Gn@3tPtY`mQa zgGNNjT(+nl3}#BCw3rvgNrDfxfPr97O44}dw{+gg1{F$6kUVmP6%}AP8Iv}z#n14x zTx_1{?`B_?SqR`Cj40ANti3GUB^~GSvY-+@gj)B$(Ov*U<64lLobKzx<?cIkepZ(p z+hcpJkoF&I*@erKmIRKwwQE_bOy%v!Vj^H3kSD2lp!t?j;E#KJaH`6zv)z`1x;*7X z1=#!+@NOGM+o7yPV4{!1u3vZata0@C>H7t!1J}4eI=N;3d@$s=t2(Y(TO?i7_OkZD z#2L4!sL|2RrMyPgx$ec;u8iNoz_w1sLk#7!{r-acTiKNN{EzxF8V{l;Uy}w~ZjP7b zOBt-yP#7Xk-}63uW)pRAx-nL`-$}3)J^3A*DGp}^GrGHeXD%K-TSpmd9_Rw*kD1uh z$#!#SIfBo!7Soou?7!A4*3vL2x8O8y-?X8s4{l!=ZLzmnszd~6@dBCh!iL98Sv+`A zBItriIayC7g#(gl3Cwd#zI2&;!?4@NxT(m7{J!BclIA7TlP0uCIXhXZt9sU=6A31m zLE%4jD*O~%?iYHT>UMTS-J7(e4kX(3iqD?K$Rw<fR<?T91(1fHDx6%BD#X&TzVC{e zq#4NI`+OL<>tbr5_%B(~53>)69TuMBp=JmM|G}05@!`;5jqq9H=E-iUMv@|0t?|3~ zG?Gk(nwQLLycTarEd#WnA}c*v>QGxzo~&!2nO2fCAaz{2n^JC(WZwLI8Aw`Y5O!WD zL7zdYg0yhXl8Q1{=-p3e$GeW{q85wzTj1ul-OG#SvfBHWqc%#sSo<qp;x!_0{mJ&= z)0KA_Vjc=mJSO$D2NwQtA-`rV4CQp;!!Xtb*a?gb1)QP##W|L?)fsZDTsdZYnprVM zWWFt@fo3!L)vwE}0HqHa=4^S5+O(h|2f<Su65;XSD(haZgC|47t2OJ9X;xbAy`{#$ z0tFhQL04SNw<p43-nUNif~^PSwGd=Nq~E^CT-tdM;H(a@p6;*QA$BKQc<hrkxXY^9 z*Sn~xvc}t-dLBkVUNjItymlj0sJv(9S}VTCP6w9X;d*7u(G1iiow{3fk%d1B`09?T z+?b{Nw9<nAOML#_NzPo|h5@`sRNc2%Ggss%AMpBMgcPT|2*XY3)h!^W#^*9sSp9+% zSb`(+A{;jbivP_9*$2@DrWCToOk#e5?W2xmlnxBC!y^h=G)m2D=X_BUrKY2~UZ&G+ zDBD73y>HH6*5h?51MKc5H)|U=f}=g*6P<bw$Lh7Q2BxbEl#fIfhO>0O`C=`AdFRZF z>xzY&O@OiK+x%Sp;`F6f;ob>+R^Sa-BXrEA$>&UGrrsHTc<$Pc;u$ch8)5liOuEAF zGvUddG2B!Hrx0;ww;jy#YMfu!wv@m!6w^4@4TJ;v4LbPR`+I!>W<5CEd+tRk$QLS6 zOnk69zzF09w}=}GlYg+R)H;m~67_hkr_AfLYYU*0gpIcj*@>)CUL1DC!+mMBls&Yp znrRcf1|>x`P7@C(1YMp;T9&&wlk+)M*h_iQKp)q)silc(NTV96?5Q;e8GTUWKIeP3 z<2H+J!ykHHoV}=_lhIt@O)S(%x%VPmEE>M7yky;*uu=st93E~6Y!04anc3)v&(`PL zY<U-WQTf2ioE=Y#XHyCSO}iaXP2)30rbDRDk*oH*z!biAH*wbjwXAocO=3KnS(5QX zvp)Qp*qdI&)(sDLxX>k8WfOQOr8VbKuEyFqE$d3>XioO6g_cE)j1%=VLC2N-Kr0me z%gmu@nP3?Xb>KC#fn|a1-uVXa4ErM%FXKjOQ?D$;&SXRPA@b^krHgD#FZH-%=#v(r z-g~vc#AMt?iL_A@DOd-#{htp=J8(gI+1#|re3!%TO(%Iqb21OsTFu`B4)yiYT5Q!t z@fK;p@q=gQr`Gc`NhSh}2hB=w%~T*oc`9;Gyk!WN*hMUOP;KmNWJ8@RH+14!GL&o6 zpReSHOsz&Vh1bezsVP4g_A~_}IPi=hA+>t-RobVPi*BI=dUJ8Z@FlT-$pM}z5u)=I zb1!<sd3T?{em6?ZvRHq2ZY}Di56@og>zB7_AV8>-7ublDFvOP1`N>{wp(Gxt#-Cfy zyxJhK`5G<-$5_FTryom^<LZ2K&^OO3L|%c->di4#-f;0T?@g1V4!`Pr&uN^l19AcD zxObWKBHTD=r?U^#y7^BskzIAsltOVIubh#`wmO&3>>9Qr8%jhVnUm#~hSv_^%)mUw z3`HSnq0}8{IXK+dLrY|UoG(D>?Idd>4aE&w*=@{U;ka}rSlh5rISL{KM#xr>8Sg+^ z`dUuW>5UkXixIaHj{ubvo_y4kMYp{?>Abqgo{ZF2gYsJ4moDQJ8x!-07W(maNFs|; zm9=u_Ac5xU#^Lt7=IWPB+EuZMoIul!BOBYoMq<<%0*%>F&O#`LzUDBhdDKz)6wg3c zt;Md9D!_UYk#SIbo$iQ<SQ7kS(mG%7qmd*42pkTP&to4E8tK;neLacLwVwJ>9=-F1 zUDu@fAjO1)%ZO<neCRzp4!qk{X<Sq0$j&{kX~`fH9Bn<c5cq8;xa*L;P7XBbI>!{9 zUUS{YlB443z$S45Um()%CMe)Iv*X*5+iDcMPL7#f$n;`x_6X*Q85WPYx666Mhz`73 zGpcagrSN$h)s<-~)(c3lozL#Pm!A{yd9s9|#_8&8K2Nl2G8<1M>EO7<0TW0|9n*st z1UY*Dyn3SClo4PkYfuZo3ww(vil|qYW%UpBw$>w|AXy=H%}|Za$l77}hTn2oJJOAT z0@QHctUp>7Sa^5H)p3#f3JBgddB{)`MA(cG@+~@NX7WNxqE-U7p$g=eHs5kD8@D6H zv8k_cN#TK_ULU6;=T2Ov>rKe==WmoAkn$vBTnQ%&q!O&i7PN=aEqi#4T;`b`XBAv% zW(!YWU!%G}*pZ6_<?c1n=xo46O@cx1o*z+l%8xgCocG*2T}@}^xdP&~Y~@(t)QgWK zy%d_sle^I!MYSV%s$cqWvWEgxbZPf-PpX9FT-e1(X0$z0PlAyX^t7{JV6@21qkd5; zlJrZGq@R0uqeVB5xy{DtN&=^$#`MXONy=6<jg*E$G<A7vK?m4&C}Y#Tm4Ah!cW;R` z4~!`0_lCWCI@=ZbZzbEpO#rQoENhB`E==Kp4iAwHtdp1o7hod}1DsO(m-#!s<}$e$ zA&<;&;$6S~v`H)(dQ{^yqJ}&~_IXn4jepUDe;I$=+D4s<5i*hPH*LRrdO(^7Q+&qb znzqsqn6E-?jeHYP=NQ0owX%<Oe0jJ$yfg5i=;E@$B`HrWb<|#}EF65<*qQuqYy0_c ze2hQK$*Lj(kly5U3YYN{*`hRs#RVy|j-thPP)fm#$R_sTijP;Kkl}?0`dV5?yza!s zAEv>xI~!(KCE)sSW6|Ik_N&7?0hEDR8rE2#8OR=xaq5wL$z+eX!#WYh&Y+Mr5pI?# z2y=V9DiHST`sh;&02mTtgz(8|#E(8-Pg`H%0dD80U%j21Zbf2HH#>2MUeOQ#f{1$# zx3#k78f}17t%}pG{!tE&hHASpTR1*#{O8E_cwoeRKM=eq%AvVtVTT*c=1rcXZO%QJ zT@=FhJd`3X!hXeC?D|h<8a+}rPInE<<DO&Pd}-eve2Kv=IOL`+-#pjo(Yrces{ZUT z^5y#n5x12u@7-S>N-R_h)GiMOGH7Q*XOr4EwN(Bl$+Fs_f@b5$)EG+B`!g`d>1vxq zXVVEssCj#kxin6R9R&fg^pQc1+<yPFD;ggIg0qq8dNO9tg)DUttv0Lf7zr%GGSh=h zBDOe7i2|?h+2BEa!W1hRJ+^c!vbPr|!)4huPvtc+K?rAk8S_w@!89@bKJ4UigROlV zpVLJVRkbB;x?pL)z0agJ0I;gDw9Ek-<_j1cv2flV@XKQ<n@)YX&H?)IJ-@$hfj1b1 zs3+pQ$bkeqL;>i9CQyev<9Li2y5oXs+9qLjw1yC_dY8pyA;&fmxFLa=uI3CL2<G#3 z^W31k)^6be60wnATIcjx#eOlTdgJY8KwpYTdB4Zp7yw21w(FPaX$Q@;buJeV4w*~T zDL=ouS34A4ZF>>#EaNPKUpScWv*2gyFKH)hdAbyvs8bhUvxETZw7#0&J2l;KanIxx zPJ=YuG+}$DD`&?eS!Xp4>SO)}SmXK1iCr54V>_ZIGSCuNqQC&Nz=H8|Q`6${5>9M< zDnVgRlVvIHZQa151`}B9gKaVh+&u6?bmw6BV{3w-+wJo9NZ9cktEn8MMGsKf!U<7l zM^z|l!ilT)D>@rXqgUI?{?Y;zvs@!K1Ins$(Lk2QCewnpoF>)B@wv=3;gmr}?*n}r zO`bpZc3jFKA*O)_3!6;pXP+TY3#C&8@>JK{gC+ls-zMb4(8Tc{(I<5uXOzGQSumrW z+~V3PODRS;j5|MUBG>xX;o2LXui`M-kivaA2;0^Trb=W|PMB&s+G)s{cgz{H9ZU{F zVW-AG$`<pLvdr2{8)ps!E~Q)Z{0>-VJhChnV@g1>uCucZ_NoB>{C<Si#sWU3xqSXP zlHY$&QWxb4z+@``Y*XhzBJgA&z72Ja;!J;XFI~vFM4jk-H9fxo`Sl0=mHZ%7oMRfY z12Oz6aHm4(SA>-8m+MoIo1ryan^!=k?IM<UgX`Y#=#N^Fxo+MsTh$b$nVQc?t=JUv zUS)WRn03~_VqEz+A9AE!pk|*c;vY64=(@U5a(aOc49zYtF{_=aS#;2s8GnvcN#^1q z?!yufMQj|rhPf3Eyk$mV;|fPdrWw9-(19A1^TF!_8f8<3tX|i-JcyDkC0Gd%XodvB z+$4i2D=~hx+z{Fu05AgRA6T!@nBQqF!3c3kP+yR2TmcAd6Q#vfZc{aR#?R1>@crdp zZdQ$R7Asb@1V_X2-u4t8<)pr(ye-nqnp;}4YlDV8HSmb{*z&{&F#bQ0O+FKkCz>fA z_-V;wd4U&SV=eMLmNa<ewbf?H%$^l&;qP)V;jGhsujeI4Ev!uczCxfB*O!s{1#?xb zc05{frF19HtwCytPJXd{N4!<hTw7rKD;(Quf383&z~pCx7F1^HoEal9F|Cnb#Q2>~ zCJWlu?*%zdmL-yu&Qg>^=pZ(WJP81<cP~rQk7K~Jj!%68>Ai=^T{1lG4K?5ze|`=C zA_Z7$fd_CMtM-^@P7@KqeI{6MA^FZ{gZrJa^xs}0bB~}ndA5TYNesK`k)Oc+k~ctl z9~}<X29hyP_xosrFWB)Yg$1yLy-`)wo=&un6UrYx(pCCuINz+&JY;HL4mqd=vciJ8 z380>Cqmlk}n6V^nQtv?D>hCRLaeO4XFATctJX14MIp1p8X5OSG?zQ7kqpMz^OCRHK zR;Zc%8b_$+8siS$4E@GvE6>Dn+Dz|JDdkGENR`7`_0B9G(MTfb!^RkkYGaknGQhiy zzW1?&XTV5_$?BbYAH#DHE-#8Jq&;S=mEYdYLE}u)PzzH^)xbS~o0vT|ElnG@`BXuF zn=nq+e-W3GPlrVfmpvCM-=3b0tj8fKT`Yp^nV<n^%iXLlD<K}S1ERaqjN^VmCtsyg zfC=(CKEa3U@z#B5ol~(F0S~%H#(_ZTpDyIWRBXQamR%?BDKba4y{#3ExumnS6c23z zEQM;Z9z<=I(~w|}+#WTUI(aCS%kt@HYf=@!C7376%*O}!UImawXN!J5^xF~*1E<3S zuwM$@n?a`L$T=zE(-vpmuXmYGI97cl9QXv~{k>vOYR#^I<wr5C&(&mZ#%kNJAfG08 z{j*lLt>js)c9sDX`$f{gv%@ze19I(}^Y~Pp|E7DI`Uz>GON8k9JD_zq!cAgQbzJ>E z%xjy|upIEjhRn`sg8acdTyXI;lQdyh=VE!Tw-Ty)blI7XyD_L*bg@wH(c;!K!M(LI z;51!hZr%pg#~}*no+@opD0OML1JH^oll8W0nR)YEpT`mK9vskNUF$?zUyO4)lj8)J z$)d2+4A*;w*s(Ia_8)Q__OOaJqQG5qxR8%f<e;Uez<7oNE-eFM6E<3>FLLTI+LFYi zp75YK=KN9bcMXgXGlE*wt<KlK%x0vSer7XsKsLjrQ<7&t_&IrCi&^m~&Lo^QvK~S2 zh^I(Bw&QwYKJKwSC|^<M1MB&w)BL2zj1G~0l2*IbpVdm=K5f`vmO0C$8-~lXHanGC z`2OgYQO;{BF?ZP1T4iUu-GTohbBUk)rk7)M_g?*Wd$uHdzBH~N-emm!vz7c53r}*8 z-DJ-!GH!uzQ#7mPg%RnmDw_|Be*hAPiQ2Jc5f&4G<RRemYvLqVl7YmlH{@8%jY)~+ zj(6KH`v%|9>C&Z|pk29q`&nXh?>&dd+V8stqUVDb3X)(@!&%>wj{3f92A<?uE5+s< zCj)$fYN79m+2R(BygKqA{GL<Smnu1Uj@D^z7d>G;?;Yopx&b;zos=g4DX+7LL$2w> zcB6VT?hGQ)S}ofGiATjXRyf3OkuK$!Mp9hBs~Ag@NZ%>fc}3=I`wrx2npI;Ku`z$& zq}J|<lWnVj>7T{!%ogBcVwM_gW;J!ngRHD%{^D@=8W3yLH4?EKk!kA&m5)!KvaT54 zU-^^&v)i_sd)dn$@JVT@lIFrL)3eZ^BFx^H^@hn6kS0JD(7wUN%Qb6w7!zPr_0o;Y zb%;?Skx;)UPki!l<?96<_naE{&H``i8Gal<3{uQ`|3M*6`v#n!+(2Uk8yTZl{!>uF ztu}OWSu{5zg`R3im1mcGUjgaU<>7?EQs(`Sdu{a{DPpPbpO?sQ1K5Ld?{`|Vt-;iK zS@03gjdyyHA{Zgwi>@ea{CN8@TZ(QS9#`w&PTzoUbAAw$_c41$SXX0c#LWDiSm(+D zyLqadPJOzL?#Z~0T{z<n!VI;r&Z=#PR6cWLlg}0nb!Az4CB2GzkEm8jEk5W(itReI z{w!Q_G37<hD+~Y_-A;V61N^YN2YD*+XqydUg3zr$t3NX*8VAaOp{V=q+sT6VqhxT) zI;YSQqsAHEIjEvYZxUyr?q%_K5#zn)W2KZBc)rIPzRQ`bZRp7R?%txxrTiZMT?&j0 z?>ejh5!?R-l$~K_5gp}1d6tV2-k6})R_U@B+clGSwdTe6o+~p#Vy9=y_VabE8wwNv z;|`Ns+BWm|nJdq9%mFI>l)2Ldeqr6o`f+Q{?tIJkdj;uy8;PANL1cDK({B*SqwU6n ze8b(Kt}+Hj&|L<&^Hg4=(_F)}ohHE2<vn@<-ancRWl}Bpq5yjD<uo_W1^ZME<UZu- z5Xu2T$C(GskCKY-uxMn6&WYTbybllVs$ltL;NSftPZ37vDfF(*-cGeBN>@c~*RA_y zm>~E?*rLhMo;A<&+SbigMU05s6y_$aNdK`GdQ|<!!r+*;#E~#)*knojO#Ez;_BJ8m z!<u@7`D;~yXG2{}01TwMp~IYs36kR5uanLbc`hEa8?ZWj`(KcmpSJ&OowPz1Ek8$g zGpodq0f`6@W}QY_A`Ul4=Jm96G8bFC(o2jgb%FpYMI-xyQ;h(~0K%im*q2z<j(U!= z+cleTSz5f-VwQVShiZ5oA2|)Rq4qayg`&KuZa&ne1{u}#_-lMq9d{g0%#`pUhmYJW zBjyNX2oI8Sl61vO#JTyUY5o{$sPyqUR@6AHbO2lG;@xnKOytsAAlLlF4*Jm{Qy2{| z@ga7cD|&`YLniL$yu9wl5B?%*73hiyO5r_Ic-?XqQ%T_HYZgs0ZoOS}tIDcd17cj* z*3Spa&X5SsIb5IaHtMDT*>RI(pTmooRFm~gWf<1tGnHT6x&bOVbkj%6I!4M}NqL7^ zMmPG$3N@K+voIAN7Jw}X&=m;y7^z}XkBhgcw`DTaoxjMH@c8rVSM#6`WtQH_G4NRm zxb`<Ea{lmzds^xj5&=)M=UV+Wt5$lf#G|RZWn14pm(+h`VF|!mQ9Wk^^VmAQw?EtL zb;QvrNZc_=;l0$D@!Ed8?LGR*Ew`&UFg)&u0`VumopV2{$6FcGV=Hrw2cylJ!G)DE zJ)$N<XFQn_N+}wH^d4n91?zUB^_rUY(=8AQmL)F<g^7sn;EN!=1Qt9$O%qbrw#Zz5 z&@eJJo>}$D>1p9`Z%tj!gXQ_$&$X3?J_%ep%Tk5vh`Tb~q#Y)PmaJ@c^?FcaG<D2O z8FU@b0g-23@^6AO!nU89km8$-4wcQI53kH<4ZEv7xV1_P%kqcP>t*q&B$*UrsPOKH zRAGY5&2P@v1%|^Qv%~Lo{SiL>Og=jq8X`Vb3wb@@>MTI52E<{G<=x;#o+KVi&zsfd z&usdYk~or<m->jAgU(O7z&n_r%kzUbM7+e{1CA{WJ-jlxQ+J(uZ*Fao<Vqeh0>t{E zmCdg%I0o%4KyHO&?*PLFnXJWfSyoN0xW;w9k5mfm5fAS8i5OJ7`0zZ39yLh_fdj_% zXX@;k(ROxr{L{`(0pB=~?d-7Ma3j&?<W+o^2iUpal(Ci(uvai+(Ncp1)R+2~aWor1 z2!A#-2+%dLfQ<o<PH5OPX_?}Gyn}`U(gZcBq}bSX3k0*8gD=}W*U$4y%$o<3n^-YI zN@aHGpa%XVO4gZ5`67K3I%^y+HvqO}|EM|VnLU^;bw*JS8&rHl&*O=@0Qtlp>Y{mH z4Fb?16K=m-_yioEW{T0?GHBZK3&UrXzSL^lc^ZKxAl{Ula{C>Gg>}FegJp{YOa|-< zX+RA?^~@-$-g>gZs&75|va&$B>`!Tvq%9uEX{M$2{Kpa)?&TOS#;~RhJh%;^q21`a zXZhZ8w$3FEpu!(*HX~fT!Jv1DR^h-IYlvP>hW)II6uAF6R%Fy#R}>As5Y(`m8Z^~z z>1w}FQ)!=Fo<H<ha$?cdb|^FP_%)G8mf@Yt3sJXEHS+`MB7g-x@A3c`CxvCy>dp%d ztfNxXW*yUk!IuU?PaL)n<+1FfgU*dec#zpgFhC0Bu+(I?Co;2?%$?R78cAw1khUA` zeE4n<9mlXiWnHS&!{(rO6y0!B5fvZ{p3|Ndb{E+*g0nF!%4-9O5$X$@UeUV}fILZ# z_R60WupZCSS?omT(KF#da0Sv{{sq;wp{)I4b6|w?Kb`ykSjE=UTa7=%6L{mLvaZc~ z#jQFG2#|AndU1Px%)L~u-;r_#_%Qo#&&AMcId+|zmz9~&t=Y{qvzWOY5!=^*$kcWA z>``xA-JofOQrqT;#N35JiIzrJ42}KV-Cp3A%%nD@>P99zM^Vl-h=&wUa%YH`q60HH zbt{J^GpOX3{WxD4(P}w*^=KsM!z%Y|&+%4}p!GGpZB}&(p{MM`R8(B;01W8QZPDVp z&t)Omo5EUu?uV>-gS<OD)s^Tc>b<J@QpmPz&~?^)K)zz4dOL#zK2w)m-W14=Hk<Ar zKh4H|v>^wVVt5j^odlg!N*|IS8`3Yg(C>=AnAz|_d9OLHOY9d&=eep<cMqn17XM}9 ze8KUskOpYe%Z>{2R6ne`2Kp0eN@4{h?Y*NmXz?NL$k1#}0+6%_(YQ|47*hzjxZF1U zW&%KNykhPx>;OJC#^SXR3E0#h@{IeeU<h3aAngm6XiDNtP6-JC6?y@cDg!yct%#H> zp1`?Vr-J=xO@5_DDu2Gs!Z!Jgl_j8hhW0>2%!n;r7u%c<8SO{&&^&ylOZ~$OCwBAV zyvl{Y1VrSSsI9!KSDBu2JV82uz5>}zp3`Zc0<9j|bUF5sgS=fJxuA7}x5Z|p6<{rr zBfF~w<&^OUJtiOOu04Yso0hd;Ed!If6lU>v2oh@S#~fnk)eAgudGxkoDa6biCQDql zw}65(fzy?K>|_%oB(Xp(@#Fol@Kb3+-Z$rWhl#EuJDbK6WL&e9fSPd4wJB=#YX|kL zu>Bp@=%M%l)BK?K1zk%;XmHJyC5o02KpY4TJOFtpQLbiMjX;h*d>wT=KYD0-d%CK( zGn^orZcv{yxi4QeB~N~<Zidfe^$WdWnHe98TJg{fP!dd9MD~czoW{Qt4{HX=*2X}; z4pe;DCTmRhEjgl&-^~S{r1vO>yt>66sU{9Y$B6r-9=i)tOO1ePv{|xy4yD!MR)}os zZ!;&_$rQf<!aXSca`T@zLN@QlUzqh^V>3Q!{MOQ@?@k$3Q?YgtWtm=)mWF%VX~8*o z`BfAZF}O1u{R0<X7P+sy*5RpeYFK+Pa=Z`^gXpRv)uz?9u;55#{sK)`$$IBAe28v+ z&Yoxs=mU@f#1TkeZ*?0NQB77}<H->c_qv}7kVg^q@bN8zV!pM(%#;Ds`rd`sv*i!Z z?iZxXZ$wk`dBy>ij-vm1*^?aC_ht87Q1;E+fba?si7)`r&FXSdK%sipLvYqsPW;iW zPcgq#IOS^pB(B8(;#$<_LT+QEI(EcgsQ&TdPWDRUT9(Ic<GRQBHM_&pz82%W-l!J+ zEa|{agk;8Bpaty0+Y}|-em^{J@mqMUb$^;X035*u7oSYVlon8ug$ijZ!Y5}zAFg2I ztK`Q*Db)MZMPf@V>t|rFpexsU56P>e*N_M}Gk2O$#8be%<N%<0>n)gD?%w^-`}DtR zJvzzw0~(hWaas^!143LVF{sF-HE4;&el9N*a;13v7+~)0hrHkmx@cFuhwQ-ei2A{) zzwO`dYd^-6^8*u9sF}`{#PLSpsMgUi4#+?zeI)~?9zrbZ>mb~l_~su!4l(J!Cd!pd z%nFt^emgbp0E;)j*Bm`risAcLy;Cj`)_$r3`nq1Zq@FkjMr`vqn}o*1*PhJ$nI1)v zi`;9Y5$jsFoE<V%j@@|_E|$!tZAQYI0WGCn_$0GsK6-e=7Wqse22fFSM+wA8SZy*v zj4E4R8V);87i5+gAGB6Rb3877T+n93T0LH*t=<(wK_5#am7r$q@pkYTH)Zf}2iy2Q zFhG=DzbS*gXOIub(q&OWa258qGTHXQ3t5V`7pID^iMSulOg;;|x8KJ}j}bhf9K6{G z>_O>nirXEQ-XFK#N1+Uh_3jmDrrJqbH18<dk5ol(oPa@J0ZDeA31av-IZdz81+HQ> zzcpE|x)ZSav`3&Yc=9=OCk3a(GxxHcrb2v^Rs*SNfJAUR&$)k1r4yNxjn#@gOqupr zB`;UB0bCBM&Z{2`NS@ZOYItc-iw8VNU{z&d*I`N_V%Jgn{wboi&X~2PsfjV$WC%IE zB&uY4iM;Q!(8BC@vjx6itsWc<C1vD~@djdQXHymqozp}^yrA9O7nroy4#Z=4{&9ED z{3k1~C;&>52Oj4zTd42Ym(`k+6YOZnO-c+Z<~48I=D9q360tWmz7_-CLuaJ4#tk<S zx?2FSkBc)?8aTAtm!vCv(J(Rpbnk!KzyA^@lm4d~r1UQ9^z#oiqaK>C{jh6L3UKh= zche^RWbGeWC`R^yJ^*?YRRBncwhA`OuTo1TGFj8&HETI3FLGQPDpcZOPh_2R(A!+) zqYXANZ-%^SQzMg5DK<dCd?h_kCix$ICt9jRJ8P3io!1c7>t8XtnjA3S7F(@HTEy<v zwHCJ>Ee2061KKb5;~jIfJk3oYOTczer5)pi4Js_UYp*Zm<{M)HxfvIL+n(S81l%k> zJM&3rKD)i0-Ld(yZ7nn2BCZQ>$g5Y=HWfBcJ!~%o=gC61ax4O-Dt_6xD;ouf>u!b$ z@&lzLnqkDkX|v*om_x&G$zh8`m_=pt!GNr8=^Db}#m;=&n<Hma$62r`?du4T?6^hu zq6>7m6Xox%lKUV6H{8@`r^hlF<qY%DDNthv*w#<8e&P<@fWYzv_L0&|iluN2`GhNi zR??TwxN3zzdc?IG-`?Z)A)0zGpyVpOa7k@JdDE9)0cA`2ZF&VNx!&>0AiFHe!T6^q z|1*8!WBVD~AL8O`S<{H4od=*P>?q|3))^4YQ6eza4XnN9<$Ure+WVNZmdo-Yvu11R z^MmhXAUnJ;s99s~;nut^Am-)*fa-+Vde{E+#(m0J=+pKU)eGCJAC0e!QL!pFQiOlA zj7@f1x_@QF9f(^1ml}@_sfm@F!gfF{GAAUgPp>K;Nisrn1~`ypXBp*IWVE`u*<GLH zH*DHw__Weo+4Wo2_~vsJ8hVzc7JVLj&;3mHb^+O`PGOLh?xP=(Jk<Ff-A6NSk5z%o z4z2Yq?)Zj0-pE%sGpz~;WjE3)-6aF9ljRl$#L$Z65qnUR0yvRA+d!O{pr{617Yi<A zKdJ=W2o8ZKgA**c;yf`JApmNWUhk5K#7lcy=ekf5@rFZRj>oKl4TU5S%v^MkmjY>J z9y>&-qo{<9HYds;p&Z3eYi;`51uTL99)5p*-?g?|`xeM9Q?w`sEl2N77J_asG;4N6 zQM)=g>RkhwnBN2ho=?=W8SHfmCwA<L22<nTcL9a0%xf|P;x2q|NM<*IqIQeC95Td4 zT%5{ftfQRB61~>~J+1+dxbf#BS|&ui&%Z?Xh=M8qlhb={jhF&D0&8T;LZx%!(J93O z;0p#nEulSu7wDaroGV)AeN<u(hz7vZ4SrDew*n<Y)HX#yl6PwSV?8&fEW~~AGq1z@ zCS3q;KC)yDo7&S^ZuPO5PWb#ShM4!?G_1a?UzH#6Hf_q4fgi7lXVg!2!_9c9MIKe* z((;Ykr3JyYrQ9}Q_Ril^mu@Fvglvlbg+EZa|0ztU>E2YJCguo!oOYeGW{VY`W(nA> zH8N_t%iH1c^qlcnt@yxEwvYI{XMbg#kbR#ZxukUiB)inKHm-hwgUxZGBvBta`PRat zg+5UP9(W{Z^g2kZZ>q3K`gANgI=8G5`WXzbkw0J=E!X6Q*Zy!IamY2hklTF=%ov4w zZp2v`yLP>iG8LY#vuTC60u}AfL0IW8lZ3|xKa+$|w7M<kaj9w1n%+RJ%8E(?%RoOG z2GT%a*ABML%k*!Rw-?mHW|3NISRj0IVL29!G>44q#aW~EJ_JAu+Pogb{$K)-J;A%S zz<51qb61?8e1Jwzr6D@TI{7MSo*ZAKWC(nPO~_Jp{39m7_<Z~Bx(uahRcA#&WMb?+ zthUcDE^7~sqnz~zHh+8!+&^BlZ7Czzka!<+r#f4J>X)T4-IG5`<EUxA*ER1ICm)mp zVNl;z@9PABbfzI|?NP^QnM2B*R5T+DXnA-5P2!66H!{%4e6i5JpXnMQWA_bJ%UFsn zqN98k%=tEtS#~bxuOV%tHEx}EQTjdetl8s&p-Z8)?w@g1to!nAD4eA8Vu7Un_8+9x z*>MAeySIOtm<H8>XLAx~3WX1Kq&h~3g!lHFG_TF(+7ZL2xFAoi7K5MB_y%4SY%;dT zPp@5DcN);`!|TMZftvi=C4mwYEqF7nbE$3(2CUNguG_vIIlt%2QfI?bBMy%1n%saL z7Ck5A3_MRA^Or2?0z%?fAgRuOl(;$*OG%Z|;&*^{yemY->tsDXfZ7q=>!C4Vfbmr3 zk_dSLhz7E(`{TRqTW{URR&E7*)vTEZk`(v8ZKpod|K1(z>a+z1l5dO<aV4WI$d8Y= z0rgk(G{D>TJ@>0-vJky2{S*_Q8PQ$FGCqUidA$je)sz+h+LEBChn?g6fvZj%G7l^M zByTR*K94s6uyeYgBlDJs)0?(Huu9~URgktR?X{ABD|){g{G}!pni=#G)hzQeMsvtm z7eHHrpz}l@tcKr4rN1=29<3nKP>%tgZYVOZJ(-&*lWle(>Ng6b@fvUe`buUz&^Uh8 z3TLwv?;$bOmMAs>O~Pw^>FU-}E2)9mqo$@)wGoEhUIe9xnn<)xw0j9&1Jt;oX(YC( zEK5-NcH!Rk0$kO8v91=f2yiih6cr5rEYbf+VnYZ3;uQ#*B4A7qI-0F;1Z?ZgUXOJ; zsrabV?&54k3?Msv#30|JIWdUdsqR?xYuN4%5X`v%P)o?mT&i4dPfsbk@WA=Gci7<U z`b=vfm)W5V>jb$jtMcd9E1h^-v$g)QdQh58>V>Jp-7(cP5rWf!`pm`4W*m?nIslK( zDo}TaOM3!SyM7TIWoyu~`CA||c;{^)?5MKzp2voNX#pZE07OiGx8$P@vno-_=bLMN zfG$-9LU5(?s+JG7gxhzKC9iJKhjbCwzHpm9iO>MZ4cV>9QsKG{k*5`E+0vY5%bGF} zhNZ43e$2BDlhfU5+x)(6ef7_hTTR8T4!IK^LsGUa%c_6`ReN*L3g{e30`l!nPwm7m z7@5srMz4_~@zX642NnsR9UKn{FWYiJ(W%npSx&k2sQ}0<)@vOnl_Mvd&5zuEyt^2! zHnd!-1$#O6zk2jy1&~eeKPfx!I<Sl-<M47!f5D3&ZIz0>I62T{H!d#e_lDf?a@ha6 zPs|xTiPmkkSn9=@A=13i0;0^AJ-4Jj6I$vknAE#p3WdqU&mB|mx~Vkm*8YbPc>uh_ zVdgYDI4c1sNyZIlO1B&mkvUJbV@-<o{JzIK^NBMEiq}Z0>#iG%<@JKDGgC$@0OOyF zU1D4>;db~AEl%=n0+)g{cKb7D>&bQ(-%0uBJJgyK%<DmskSJP-K8P|PzRU!i@0HMc z3!ni3V#3H&p=J38KlpYQe$qtEC~+s2asMYBQrwQ_u=}!KUe4<_d9tU9+dl^YXxNH< zK~R)Vp4|<&5V2sYgiqOBO+`S3!BJ$G{fY{RLA`N2<_&8i|33k5W^i_E2{1YqwYORv zdPu=9H|&bNmqpn*ivhUNauU^GktQU9J!TAt;aMj00<ZcSD-g0kUW6k?TSB+suZcMw znn<?EKt<lem8youRo1EfiOxM=F-G6p(k=;gqk$;Og<9Wk1wrRgB|vGze&aUNaF(}W zwU$UUM8EzSmFUyEb0RUt(Lk$`wgq@YehmEo8^K2I01?a+h4eaYF=w4V8uP9f{ZqFf zR=TDh$W{Q{^CdLTmTdqf-)W(*UGU*d?r9EP6h>~rB{M5r_7DBi4Mq>3WiFjapk=an zU>e7DW3=&w=LYPf(dWV4%T6@UE1gH1As#bZfBRqA=br_|N#!4PY>+$V10WPF1Y-A; zOnczfVtLp`;4rwG>AkYts3KMyDmAIpLwCj;ZO`%sBJuC4xAbLkrw5EQz9{-ojZUCu zfw)l2s{gHMG2~-`7QYv1=^aG^^2ArLyoywTwH_F`KxPN#_^0B!?D}Mf?7&Uob4}Nm z9IMe}LJAWlrwcGzuQ?=QQzb<M&TOya0ZL4Jr?;_G+=Z-l9FNnsB=GPrFphL^a5s2= z4e`n3ONk!jxmq^=NR5o+`u8$wQ)b<Qs4j7iFV3*HZdE72i)nJBdSo+aKqG6GRFiTV z43arh#9|&zCDmmwQJagSb6%y&I_3sDKuhFbXZLNy-cgJ~nY^es5p-ohArJX2XeEMj zqfWpzdq(Y%#=h4kv>FE}Cn9hXVJR=#X_8+jN%PT6{!t4*+Jrg)3WDa9wQL{dr%x-0 zcrV)CaA=!xJ~S-ZPpvGY0qB=Blh)F>g$zXp+IG}YbHGSxINyePwBa;At^MaI`c8!& zkwqRMe8AX)#_~iYc1ejb8~l%HPW=qysKgJU%e--#(rhMr(kJiUk|>Z`fZl=22LJ~2 z$(Og>fZ$xn>vY}+$I&_95|vx9)=2@a7!2%=?&M(G+A?bkFs=hyUA*Bq3Bdq>^H_c{ z5#8Mj=<8n5JS~_&2%;q!v#;W<mS>q&Gv#iKH;&hNak5g53k%)QaTc-N2}n%Gc?!Hw zr+#m488T)w{B?MU$T6En3e1#R71o9g3tQ@r2F^3Ijo>iTPXJvS!x!hlsB5?h8v;+# zkzhd24zx$7-Id{;Cl5V7U24#EZI3KDDl-EF77dPt;LGA&8e*-@hN2;1lmHzao%Ozx zQDoYAv*(68_qk@~{YTs}y9Biwe~_lbv;jqHeQ%&l-9TgC<~US5Feq&Hy2ZaW#r{zG zD?odFZ~<K7#2>CAOTx$E8ZM1PQ&@qEiC(>ivtPU2Er<oQY~-*4&DmUfZI?GYW*AWF zOOOc!<?6;|7AMs>Oq-<%I?w^tmOF!a?UPb2^QI0@b&GMvCLfgC{&H}?5it4qWVu&2 z^{zcoVvEl=kd&6)gEr}1oS){|RVH-RO@O1oAJdPDl}$Dk%&OPEcx;9jUjYs#T6bQn z6adfM0M!vZZ69VYkijwq5q}&_p`UMaP@o_+41NmeMGv(*`+gBGL738XKNS{V)^CFJ z6m=2dyTK>-fKr4D=v|Xg)<<pMu^%akD5B&Kt@Smbech8mE`gx(@wj!^s5Su<!WWPx z)pP@Hv=l^R9^suexLP`E{q;jmLAtqqnVEKhde+w?k(1(Evvs?1d{*84fFkPcOrC>s zsfiGvTfe_$?GXBk!Vie-l#0~d*wRn!Fn<}@qX7CB9oZT0-#NvO?v1cmI9%NvcXZ$T zF0Y)j<K_1)lvHx&^HO*0%J+O#v`mou2Uk{PwNYq;d84~L&=J#g)P&Qc0wB|h-EL;5 z3$6Yp@801|s3f2J`N5M6nds;~Y@t5G!kXq=C488@HetCeozuo>c$@SBWw^7@#u#y% zIbqVmUmvKQAKQ)@RSrf|iYx<wrb#;$sUzK^ev*Ma*Ik<LWM->8T0H!Nj9xyX#1pnY zEmX1O3up4tTa7nKmy-nTncTjA>U!dkYaWwvsz%ZsOZ8NYPdm8WyxmWgNmR6BSIAY9 z3_;TxaQa%8&Sp5PRj1a3+p3;JRz38ALU-=$VoT8dn>e*+ZGOl@h*>LG|7`EUOpU!W zcCtdAW*Y!6oe>%<+&bl{nw@x6QW$(J8HCgu1%{b3sXoEaz;j*P3@5R<!Wn^l6am$e z2{Z*dX8vqSPy&EYn@(gc(3Q~i$}__G-}+oTZlSvpW;f*)CXDCIZ|Y4}4_$g_K<7{T zYB}{iPL3B<8TOX?Z}R3Pq*#KLfi!#fXwFc9l*bHK<^iRE0Ud-)s&!^v-heWuo4Ocm z^!?M2*nCYN{GR+L;C^pS0-i7_GKELAn24Pz5b60S>_DvUqj|LEe9bBnLFv9R%3Ru3 z=(3Z)sk1{;7T$E{yVoxXOv^hz2~3Z}YanrPseltLs2{qMABeQfey1xiGzl^LW?>@S ziIy(G5H<_F&>ipquMi_lgN_fvS~3gYuf8&C^wzgfN*#rsY7}?9UloJM50rvWS5nLe z%U^S`0O>BwjluEi6u~d=tP`*Xv`U~Z+JOun?R=;8{AH%gr^gt?z6P~mXEE>d20)r@ zxYhf-u{!TT#P<ZcdjVoV9*Ry6ibC!NlAj{(LUf^FEta`88PcefBhNokv`UrlXS>01 z_wI-F1N3CAH#Q(518SpWL5OZYzyaE99vbtzoIiN4IV6*<hNcEt&(O`=r{29fRvArR zD7iEt`#h|CKv-bWbiB?DRAB-$WjmsxkLK*Mw{J$v(N$pu8MWU_6LKwu*Lf5kjpplO z$KvONUqYgv48CPpxzZ1=k>dQf_nY~$0H6Z!f<4>1N;hXf@?d3k$<RDtMiA|!eH8vL z^xx0gf-vbPwbmWm2>MX8EprxQiV1W3KH)oN`m57@Mu>i20VW8w?DQx%B^#G%{*}SA zpexw@Ku>Q*3<PucP)imikC=NF*v#zqeJ#&$@uEw3TpFdf5Y((yQzwy&jedawk?)pN z;e4J3DuMlnmSv9N(9URqe&j0}VU;?|cDF=9m+y0R704>@ad&pTqK9v4LNgh@Mq)1V zn6qRydyb_gOZf1R3%EBNWq;%Dj-gJ`u=Kox$aWx?a%g~+SPYOhE2jSo7}0(kFd;?r zp7O8-8{7ZK-gn0}nRV+%8DShn1{=~<6l{R>8e#>NrlNv$MJWQIcSvwhL4hDedQlM~ zA|O&i4@j>8=_C~Cy%S1+-2H;gI5Rpk-*?Y<&iUQz{NV(Dk>uTb?X{lutY@ta%J|M+ znH<BJ%o<-)_^th2k(X;k*5wP8pwBIYvHP_z?<sbk_vc$Vzh!l<N$WY#;7GJ#ii^VR z`>n<IeiZ+agh%VBry`Go{D!{yut5!*pv4EZ@<n}H{1oy17*CukKAE^`4Md@-ruFKZ zH}A~Q5{tdD4{n<S`gui3h4HXb3q84upa)){Q32z5%4_RuDQ??g(seL-A|dUCrtVFk zQ*z&ZbULyZ^wK+x4^HjcxjR(@!%0;{Y2r^i@i|QQ3hK}P*dZn$YRR_mPnG}fP@s;0 zL$k7Me})aV@3Vq8NQr^AnLoX8eMvpE*XAVb1py(KtFZ3nRaZ%+Ys2r&zGX0*Aa?+c zVr{c*btU;^U8TIZsOQXP(0cZa6RpW_HNYQGD2FKnCql&Ei&^kOqNYUO7;f9e`VxAm zu^44AH{Y5fXgBVB6OZx_mvCwt)Om4c%V97P<Z8UW4JcLUyd9hegE8)uj7q4xwl>B$ zr;5hcA{v9FGp*!3^}P>+rnTgk{K7l$zy4VqG*EkS2x$lMX(5g08{<`<)kL((Ke8S& zNg#Y><OFOpBh#A69O>@J%X0?>+zT&0ocGe#Cj=@6^4=UBsU|-rTfiH59^IGyrV%|@ zYYTZVvB@?3!s_8u?4|e;|Bi3JoA-0|IQ+E2?6m*=SF8ej<|9qKV8&sx4(;kg_jvA| z9ocruk?2*2$D9b1m(SUAEauczm#tt%R=M9{?=ob|-c9)3ml44WQ>FCpZxwQ9I*bHD zjrt?lpQIH-4n7RvrT7LMR}Jh!;MrUxAO6WT<ngULk|ZDQv6(HK65W?R9I2)K=Ju+t zc@QEatc<xg3V4rYE6t%j-#Q_uUT<VACBPDtY5kDjTnR8UHXNGmAg6UiDe|B-%Qwss z(%LPbTjLkwLBm-2(|Y=Ee$^j-_R#y>SXO?q;2b}K`NCgL>9n{CuqcPk3vq`hwMKvO zTPJs|9f`!9KpTHnN$e}GXX795$82cmdA5L<bZ7t2*JjvkY)R2YsNn$&SL;1`2KzNo z@cEPSm4W#6;hC&UKy|QPqJ2YtxbdN1oaFoB+#B|_`?Gz06QBOL|7V^p(nm+HFg@|d z{uuEWvtu_Q)+9?q$2Pg51beM%{$i`TgEtJ|>URV9ZUEmsz;_SuJp_C!T7o$6wGhxn zZOLXb%ziU{d0B_!(59`g4xRq_2by2X_PpLq-kWygt>JaU<J~lrB!=gy_u@O^6Mj@b z@9VfnNA>dY;YM=c2>VaGGKp8W#P8NfO_w?P<lMPaPk*j`?)S78(bNGK*veC`X+RJe zkTIs#?AxwaL$XR-q%^HIwapNXAN_h;!p4i|Je!Z&y!dp@6xQPZH0;Y;cfPpZ;phD) zZ*4w0x1SY8?tL}+Tvd6q(HHljeR1Ey{!^~`=YC2(IvTf4vG?fhkH7mJr(8Ea)b*6| z4_AlJ6vnl|-tim|qyOSkjNkn--4Ebxr$u3-<rhDlPKx~D;}@5n{dTDX_)ysW$GZ(x zT2z=q%T$V9{q9PJ-#!#}9}IMEc=$*q4cumR2KntLc(C<VgPRFh5dRNu+VHKfjDG)F zUtA5h>u7E4J1n2DFV^GY?=DvO^+~}CIOB!5ZS>fCH2IMaNZ)>ft-CIOsYPHxcplQ_ zI_|ts4?WixpY_{Xa$kL}cuQH!@SrlI|F8EA{qfz72cKSLVo_=Y7cy<l{EH{xetMPR zJy;N>pBNnH4n2)M{f!U(QQ_68un&=0wdW!aa{vCqu;0GfkF)3Y$M6Y<zoCaY?X>)h zCs5cQ!*K^JNce7!+2M=(72Ur6q(A-~eBr+6L%7Y0$I|B&LcjH<!N;dAX&H)N2ljcW z_b;9x_|zqM8CVdBqtb(o{-;8}ZSKCCO@DG4KC{c=NwDx&_W;;w?XLR)S+(YGfPG#p z`->+yc|XAMDOeE8tM;|=JokmaZSDuRwCyH0Jmj9<E%5tm&A!;&?+5lz`;q_sz<zNA ze|1*h59}W-<@<sClLP&S5tc6eI`f7W;Cr<F%3=E+ZNCUn>j*;Od$j!ul==>je~nL{ zUwnthe_W9txWB{WujD?u-{JA^E#-SY`{zi!>w7-?r$`LwoA3GT?}(-E1k@i=BM8)g zC!l_BBkRf1cLM4U?Cf^}>Q86qI|20v8~L08t~17$vsHRKoF=@b#xuC~@@un6fr0Cy zI?l~ncEwpXBez@M-zBnl4IrovZ*QjP*CLfJrP;)HG$rY9B37q-^uRD|0ke*rF-+ri zqU|s0-(=Y(wm=nyDHB+5Wv*iN;pX6_17E?AYhR386|m0%(-$hjothFjZ+I<xCAiY% zmWT@P@cI)$vXR2QJG;(9vs)tTy57VmK9T3o6^>je;wkCjn9nfM$+=bd$bQUNhqby; zXCU0FCe<`=%G<06Jl0~yP;3}2J_><Gv00WKn0jjfH=Z0|Um;mm@=gsYqb2hw?Gv&> z+A}Ex8A_2=<V<*ro)0|T-a*yW&e{v5yzveG_%zo15W&y!kRFD^lz`s+o+=>%>6&rt z(!3mp!<}&Jj~ByMvlOdiC}phozx7zbyEnLL(Qk9p@I4t*1ZD526-r~W#Y%3nE}lj& zDy3uRHU|3($_B>j0E8Lxuhl^U#wqnttHK@RbX+k3MNSz*!t8<Ouk>z^)?P4lJIt0Q zU&AcdrdD|-#eS+=4a`T^<;vIR!qe;!->(FpYX}DI9ij{-?O8Tcv0}ML!TmTwEhi@L zGdOp3&4E#W-deV;hqaeJ29+SQ$3*R2R88v}QxE-dT@(^erBr{k;$OP3JVTH0a1t}| za0}$~v|H|&vM7smQsR3O0vXXM+coz7GAj(}jfQLyG`mYJj11iql4G~ICOu}P%(|Qh z49V%K&4oX2f$rX|BwMSZPO4&&57Mh;5yi-$$v9P2Z&3FG+cDrDN-nP#I0Uwn6n2!m zX$xJMVfoq_x%4Ax8lk->ewFZ0W4jIBovQxUo?0ru-E2E}chygyZO(o6qddPit67f4 zWM>0mSJXn0J*kHSH$+X+%oI$_nXWKg#kKB#w-|z?$=CPC&(uiq-$+p3<6~dM)y+(> zFL^!&B-=gJW~dq6UHQ9|r3ElDOM|8yEyYYaY^pjgHb7P_tUc`)R0P!Nw^x?t+!VKf zN$X_s<;lXHUVmkdoV@sSsT=iQ-2c7q0#CMXuHGw;CQm6BJLSz1G)}S2JYVS%Lfco| z=?R8I@42%Fs(sO=Zt7~91dFVtY5(bAoyqL{EEeICZDFKhRnDRt!T4vy8hm&2go9oY zgDTRY*2m#$(Jtk1tzDU8fgb3U+eKqIS&~_^ht5rosSIpQqJ+5m<{y^0KG(6j$G%x9 zoW0y7g`Y7_CYL-*?sh>lC0ppdT`uhOT$B$iIS`~%U)UPD6MSiX?loghb?E^j<&qGC zNQstUvze#_F<8#>bY;)`N<QMtYHL=QXxNWH#I@*Fy-8<2tGRf2aYih+Unpu(LDQmm zPjV-UQoK!P;e!!_$xM&L%51$Jm}VE&rUeGiPN|~jRNeBxaUX>&K30#=nm*LYu)d~W zm~;M)re_DcRS8Z`Z#8Y?oTpQn&ZQ*I1Z+d>tDLaIXRKBsO6Ar}^F1h7K78cX3NtsJ z<#!p9pPENg=cgL5G9nx+gK}nK+)0j&@w9U<O&c{sv#LgPs7t3KO8)$Lu=}k?CaaUq z35Rv?whP^!ppzY4bS0;#xi}R$7@S+Kc<-U2%`xSjbk4aynvuc9zQ`(;>S#?l{Zr2E z_BIc@s9hGsYK<M_g-&MV=7n72gX39T-2(_uHCw8OJDYab^X=en_;cGn*H%@EpxSEh z1BISa;OBK?D}(qas=d&wGf}0v^Bt_&qwhVt%?e(x0!v}{N(b)ZmuMyOWiWxjCu(KX zz>Q85Owb)DFF7JkaT?F$X-d>$-M06H$HQ$*d)XY`yZaGGigb|t6MVQJF*Df!;z&m2 zm<_3qJUwpd<Y1NQQrh1PUlEw{97$qF!uBy9SEjTF&mWiXc@f2GN^`2Yft_eq_wpvI zp`~})J3eb%JJ$H#%?Xz1G^nyYCVmFA-?jpqKF_4J`?zYN7cdP?98ya-YFB7ftnF0Z ze6HEM5_FBkfQdl9YTop-g+Vz43mu2OZn$lmk;Zc3(0uNM%S38Y*gg9V&to|ANG#_- zzsZdkruViPMA$SvAM(^$?k;e&V=|p@x9en&zJ9L`m*q>DlH~Clx#M6ra-y%=W%a08 zhbA`6O3O6$ZEm=BQ#P}r62BQAHb^X}9t_*ysu=2PPiV&=J4}*i%W(MPiMeCxyrM9Y zRWqe{UfZUV9@aNo2YMa%V{v;b>$Q~#JuR_J61m<@qb6Y>xYSh9x@yQRK+Y#VG3%I; zL|;IQ(?o7hlZKghyDgCys4yiL+ym1S3Bu^+29#(LLD+b)8o@1cJ?e_wQL4;U<)dbK za~@3(hD-9Do+qM(vItgldR<ns?fdK*8s=1^;wH?z<51h*x-|IQH@0Zsm$BDw0Npdk z*tv3}=mnl7xtRtBSK{oTu}i=#lsR#sCUbRaW>DGZ*=(;B`N2a8a7IsCOiRXr?wae2 zPNU2g6Ir*25w=g%=6Y^rXU;sr<A+liE6Gp9hXOv)I&xBUi&hyh3;c4j!mJ~_YP*xk z1B^3F=S<W%E#{TEY$?w?wru0#a5gORiy5*Q8-`EzaGuZUX=I$&V4HFxcxNm=@~A{` zSS)aH?EuD4b(jb&U5LkXSS*(_Zexn!bkb2*XMMwZaX#8+MIIBmR#q?fuoe%b%atr@ zw6VRP2QRyu%u6}yN4mu+qjp%?R)OW1VAIxfs+_k+s`SZT!*0eAYUN{n?Z8g^t3528 z*zGcNG1(;T4lN|uRoq0&vfMx}H<H>p(fab!3dgFBUNMEgeaaJ8|3Sp&P#!bBB?zgn zAog*amWo_=*dBf)B#F4k^brJ5nyH8h=K&cI?K<RV%v*>cMjMGuQ-F`y1Dq67cd#Dj z@h&CtTb>1B^ZgBH^^(vlBXq1kn66m0+cXzHWYXSO8OZAygkSEPUvx=1s+)4_(@f-i zPQggFp;Orb_tdk;Te8e-xaNDdC`VR5vWz$}fsBaB$s{0vm6j*wI0(HA2aoZEaaIo5 zQ~}c*hfMR0GD@;zPFdBot~Ht?745vlpqxp7SuPFsn>szMCqC&jnvj9}=!I$b&Wft1 zq?kg*ej)HE?4M#W9~-no(Q3JibWK=PsP`&rzz)TO8f!+GPO6#?3k@IX>y#Tl+E<O^ zs0+QkZgys}^A3rq?ano?S!pKjXRTHbCKlW1>3YXO2AbxxBw)^)$V$`Pja&|^ZqHkM zrbBia-O5<Xfml&XS%KG9S=|%Lc2Pa|HqRyFfKEb`{>&SL2pQ6elYQ9u`BN#MI=7g4 zv=~r55HiQR5qTU_VpO5-r(6eZTSdC#slud&$wwn7hX5xTUHj2$s?tXvN?lf+EkeB+ z-#fS_u?h6L;I8LT8-G?)%YbQ+=%%@s_&(}jIeQJ6;YRr`_UK1Xylj4{YjkgsObLNU zFLkN&+yFieSPHbrB<)fyWKs`sdv-y@%CO3@t^FW|F{~~(ER-7{WDIjElVk)r%=;aZ z2lL$z<=7JyH6c@(@^l%}FR|vzt%dC9=2Z8Z=EC*>yA4e~18UOEVl1t>WLM<m1N-G3 zPJD5f;?&C9l$s|JR{cd$)WxV$zr*t5R_4@MW$JED>O!d=01uu_d6S^+Y{g+9f=O|# z7esJ2>DNu?iP1hXS?p~))H_|~+gq266OUKtgwgM$O!lC1ly+<JRAy@!0H@Yl(Jxf{ z;o&wq1~JNz_9>-_4*M*|-dW(j9UZJBa&t0)HRUj0QR1IKj*0p#J_7K!!AE;%5Q-9d z+MQ~Hrz_EjoF)RiS2-c%8Xj4iqsVXR$eQ46+BfSQ7zg)uQZj4eS@r^CArlKmmnJ_U zhC0np6&%l*sVUHzNNd(k9*A@*0ds)G+R>|IGpemLIoZcsbS{Ks6VRVxn;6y4={u~# zez&4n1m4UnID>k-wVK3NdOVlT@(8BMonRHc*k_+cV3ycz(BVFxUo~c#`!P*CsJCj# zf;Tcmqej)6(k54vi80mzw#U_@9^Of1)rn+9&%cPcU3~W74K}vq={ApNosY%)_Kb9I zqL^h6T!HaTc8HDd#<fe^olMeC$qqyAQ?lsD@t7Oo+B>#$$}@_dik$NEi0WWY*1c8q zXpV8dLuz@Z&FK+7O3G|uo{n>`MWuIPdKk4Tj5B$)V~8TX?91qB=aaF-$u*9%*IO<h zK`k=an($X><<g;6Q#^3Xt>!CPt+h$5yOS3uu9PPDa3+TD5_7g2@3Nm*JYQ7j!(KBt zqAJI>I5;=eYtSA>En@58X!mKNuQAEwyw1R~B7G6kG?`luBo7w2Y3ni4()k_%%YE)h zwe69UM1<Oy`7e4cy6L0~m;>z>-0z(A^j*+jzRjs=0C}-KGWcoscBYH02^anXk~73y zmc49D=r-%(c}q&!g9NFkL=FGD4);lsB@5MZqY{P-?~*zK$-l6tc1J!;w&BUMt`9v? zxlL0g<s`<2XHC#Ec1B{D)^#8XjUw6icuxgjr4Mt=1ecl!EPzzByD<qh2fm$9jX0Mr z(G*8vBN-qlt%j>klWv@B*ht4=7ZkN$3@-tJYn}+}t8cY)v;5QLI6@Yb?{R-rYINKg zHu3Ie%8M>Asl~1ZDJpC@UK&P-ni(MYfN?L?kIs%43y3nD5=CT>XBqSN3$b!ffgpb{ zRPizdW`diYjcb($HdhC6gi%AQsX&1yF|P}g$n~0OiY^0@yl-~8|FiwC`_tS->9+8R z@p?I&S-N`L07;CY$r<U`SBYzV5iXNuL*(e4O~38XRypLrMw}HKmvEWtE;fyg9ur>E z{8gI3GDJFwovUQS;h#X3Ak_WbZ3oLSQ_?<g1(${MVx<npGBwtACWhbTXlDOQ%+*!X z;ZW_4D)|F!8(IM85yphAjo$a?Piay0t)m8pOY;Z3vIHhMUXOHojjL;l(E{^c39Bo0 z8H>)lJTKR!PRgAk%bN4nOrZM=_7)*r^lwS8KJX}I=d@UiVGKe`ch@Ovvidl7qsOgr zt?wX{kEN!IhtfxfP6U|cwRZNSBSXjiVi@fbSyu7Y)SS5yWrt$(nWB08-HiL)4TOFd zrCj|tQ3*OTqf9F&$WrDjJ7`FKPF;vq7i`Az1XGFfM5vHB#+@yh4>g~O_aJD$Ke;;R zS%|jBwH}!c2x1s$t+K<@CHWZOClPiEq)&D8(f5Iiwg~5)j~+f99mTWeq%q^td*SxA z#wR{>?ccctkPbh_wC>m<J)3j(<tV+$A-@RWxU;P4hXn4L-SK}t`syNk#n?rKo2=zy zHzoX~{E7Z???nTMDVE%J+&CVUyT(Uw2GJ&szQB<0(&P(cEzH3GBpEFg6MD2Q8`gcX zFEjAP_|*|S#>{0z!(ueKw8Wy69ar3C*KVU44luBrdqL;qBQb^StxfplN_^4bAkCeW z@ocl4g<}3ZLP3-ZxwWphi7BURiyJ)*MD57}I^0>}>5+bWEX9Z|)P1yVS(sr+M5p&= zy2;J3Aa7HR`5v1yJ(4#&+9l;3W)fE$d!~g#-~dzF+&+v2@dY5v%Avk$$SMI?adfaV z#w}Kb&3X43;4LP*8v4-om)O#qwd-y9umeKMV;7Z_pH&c*ln5gsABh<QvjD2cDx3`) zThnCn<2LCIKW@<E3iYOnnzZ~(0Es|PjnsrfVrFk*v_fBXgI=e0cK>OTOyiZ<{^8Kb zp3!{?48~`o7rmG6P29h-MGl<{oGvS-&5ghu{S$`lIB~yj*)pdsP29b^iek<inW>ei ziUCeH(E($H09F~j=5)h!LYRV<lNQ~)+e4|L&>xZ1&gPQ5<KvXvrq)#sdxFHa?owRU zV>su}AiKfOh9eN&9Zp<(Pdrhhcz)`fNI%rgV<%hHX|zC{&|-r8ZX1=vl)N~P2APU| z*{3z|Se>*yZKp_ylVRd}k}-gwXyzR1#@fkB_rCL>jEOo|D{T`kK}*@0UNz4~F*sAR zt-6ysllODj=RdOVKx>GJ$8vTGiph}gFIrH1`nUH}bueBT6duNA6j%4_(ziaHsQ%oG zr5!=C<8mXimgyv)H+0^p$hAC6JZna6w(E3K@{ewA7k0nfq<b(xUut*o80TAC@d5#p zlN!iFrB9Ks&c638yWlK@N@hqDie(*oXh{J-IVO{2xYB)f4&i(h#G`lgl9`jemk(yT z-1*Q1+;Bqq`<zoqWxdo*x}o(MxapX%uNf@Fk|kyhzuBM?I&Mz_8bhE4L0xV!!bWt@ z0i2miXIm}OT;wh@`=SLfMcpDv4%K^2L)~j@BuCyB6dLk7wN`dxq{atdjjc?eskVk& zH0BeKy{Me7@|4!giT)tPNeK{}&rHc#gfhqKOd0g*atpv6m7MtxFh{UK3^@QTXnw|? zARDX)AS1ilphKEAofxmZ%j#gaKUN08VU_>HNGhm)CIm}9gvDO!Gv&b!%qa{hDk)zH zZ8wG3MP{H^R(wT}7zi(L8NA37A^f`1BwnW8gzVHGVt{-@cpaU3rKbJ{{IE~YkzBQ1 zEa%N;n;jXvkmC0kWC-5J#Fs`~YWB682XN%j$<|fQs5f^@V}!<vS?U$~rgLlB<YX#C z$i3>)Dw)zrR=hPm84mooj@?t}4x-64xf1Wva)pr~>9UlpPjTw93X;{Fnp(!Fz?Dpw zn)M$54?4B5>!WtvoYV8x<*603$7&YlMMsks`UF;%4H(T3$GgX)kPhJlX?XX$=#Q9O z{sfXwllLp&+Ex$CDX%Gy@0^olt8~+5?;e)SKGn(5d(V|bx`R;klMDy;;>Rta@4cIO z<cC)y49Pb7BCF9AV>Y)BeFmB!)m+Q3C87Kp!lId^NF-pRtm7?^L-JxaFMC4OOLKc) zuLt3SLLdn1P}-WiUwZPfNFQl3X%Yi-(G=+><CI;F0o=%6be3cKsXZVA5M%d6COZ4? zr}Pi(NwPl=m?~?P?2*K5KE9mE4+XTp7(}_)0^T^*Ki%r;n-61ZDQV*x?PV+W=_=9J z<r4i9GTsZP*Z4h5zRuIMTf^e6(Wt!b&3zhn2eCMA*2OKBOKUKqUc=ved9wttY-XGN zSb~S?E2f*-?2pYnnTW8HQFq59duK^6jaJHsjFcoa%7-LGN>h@6^mnq%6qe!e1AcWb zsnkGbCPXdy_Ic@*A?4148S$z~7_r<TMK`=tou~G0`M?vcx2j_n-8n<iT^HG7mMQ1p zF*%D(T<W{tY$PE~gMW^mO~J!UV$m9u*PI|9$pVSVcnLK<jBAzriwDunTYUBtBVo12 z!_>tkonhj>@hZF<9fe4ho_xVr9qSUWdLCr90%oY9tTd3H%9^z7OD0EpJd~1qtHV_1 z%;18JIEb3^1Uav}Z1qGKVj^{acgcvmi_ClsBc~%}l2AGSBp9z!lx4$cB`RALfpAt# z@ztKe`%oi1O5q~#L@hjBI*`&^J(xgS6;(`Z_pup@WGqGSbQieCLdkFzXTlfB@Fj-^ zy&CvP6T@*?RLPBe00voE=tRBO>@0S$Kei^W!=2%VO|QPpn}a=7W3mo+n>laGNu<l* zZy>>?>cFI+L>OTHwe+Uh0;D(Dm17|Mkgcs)VX+$CR`NPoal6=?8zjdM%bBicz9CoE znVIEco#pc;E$<EhH<BSvZqcKoGarbsE79m&YEsL#HI=5c5-?mC@!OO0os^FGmkwnn zpze@NU8OLrjxWy;eAc+vQ*A?72C76|tT`2=zC5UfLe3IjISytB3Sv!(anFp~*BBZw z&b*&1Qz_66S97(46nfjiO6UD?vkoudihdV0EgjjdK+GhW!h#8ccFLBH$hy>35*91b zXL1-j(7;B>gPaZ*Zc|r3qshHv6OPT<wCFj%pqxWwP)||BuV&*Z*$V^c)d96s!z(#U zjY$}Xnf|ml1h0XRopm_LihvZyODjS(za_pnSycqBj6uT&VuOt8UCFg(Jac=S+zOyy zn!N!JW4Edjmd)<uT$IdX;uM~jLsuhdDqgCemx<z|F1*8v<?!E@TS3pg@sLtIA3i<p zv4`Oz;+MounmATiqPTc>fa)twyQsD8SNtXyBC~gY`?_-(t)z>8RgSsHb-qOM{@~JC zlZcz%)Yq0y5&Qmv3c-efli7YRTx02@V#HuZY?B4Q#674z;c|AFSJoz7p|)qL+RT6` z=b@#Uz;&XMt%p7?l!)aCv=mJ|J-g%a0DQtBY{zi>1j>$NUPy1T@X5WjoF__pfx@}m zMQ2g4g=zb0PAP{|(Iz^!p8-eLuDh!M{3)V6^+dJkLw{83=sQ!XG|L3a4KYiE_Bg54 z`A~ED^mx<FiZBh86K3P`wtdxMi~t&anXqaqCFy~5H7c7PHgmIo{Gt+pH?%2=GAoP? zPw1Tu5AA7H1<ZzhFCgfoe*v@N*i2yd^@?J}V9-I&Ee0pG(LBod6bOOnNd^HC#2R8} z^szrT5?W~=c~lg})|@f>DdR1`<1a&RLwMZS`U|qnOx6yfHH;M?Jf83+;bumYUuS9x z6VLi&GFY%;*nT9FGhsx>a(1n2L0<M%VKV5JIFOi_vTb(kG@qwwtFmwJ4qm=P0Jpv_ z3-*40U2d<Xy2V}NQ8#1JiW}_ZW02DgB&M89A3ujQQw;3eV(GNEq$vWz46>;EBpJa^ zUXo9V^(_E4_Y03FI1j}tJ<wDc$p~UggZf%tYu%AqC}1c7Svae*<46B)G4zZW)@8~R z*S;6RzIxz(3=2T6DiHfqqE<|Vsivzb;G~wuVIx_j#!~BJ@u&%>PF6t7l5W%F_Xl;Z zjN3&^1cIxZOzsh-1DbMB;B0Hm5<xxD@~-+il&Eq@nLF|&l*r_7eFibd04r>O-1XE8 zlbJ?z9v6jG8H8l>NWgK1>ge(M`f$s1zj~{C7y})so6466Gava;G)fOK?dwy7UM@wO zOvNwG43vWEK$ZCDyFz_UE9TOa7&DuIqk3}zO9o*gFE+9!r1wAJrpA|{4NIVh$%%#2 z!!v-VJ^T-jT587AqJT8tgL*e=dTUPff*mvknMa?(xB^l+wxa1Wk|5jqhAT67k7{~} zrPH4`Q<*E}8)(nZx7G4(YzwN8UTk~b1E<>4bj5(Z!NP;L@n!7aA+yl6kkGl5z>C6L z^ps@u1!{Cd6f#uy3kBuNx%%rwN5^^}(mKCw5d15@J^o*Cly3Zhp7xL0evfaYDZ!J{ zNnM3}0aSNMttK{TmW+7~X#gHa6&|x1qObTGxjlz&E#^kYbJ9c!{YqRz?6jKR8<5r_ z$D&c&H9bd4^3yV;(5x^F(ij{ddV{kJ5d1D*G1Q{^MPs1`GBv@2?3ljONjoewY;!?< zIAeuOq<dI+w=z(XGF-`*eIoRBkJ)mGSy80ZxI>g^^#~{y6Bt%exOQ959*h*9%woCn zj=k3Dt41ZQ#!0!iAyy5rX1Kn(CZmqh&9B13BnSM8A5M=y@#?GIvv(x;_^Sph5EqH- zaZ$40(g_Y>v0M;1HId3<AjisT6vxd1s9tCBMQ-WmYlQeMXT(OK9KrP~FJ0(%k)Px> zdXs#bCGJDST)a=9*nDy4bbsC*)z9SHMx|l>h)DJ~A!jm`D`;I2OGC;%Swz)hH}b-> z7CR~G<?}MFbxwZuz+5jfjMp2y6m2u^ovmBeFN{|KG0vd{W-eNkQmHoz?ZqW{Ol1mp zf|>CdBPFf0X^z25qPaT8)<ZY6(q<*1kGH0xa_K&XXPNY=lVZj(l=PBRz34;@HOip6 zed$W}-iemim3tG5+lSf!@uUH5kT|QOIYM3R64;=nAU60~>zN<pkogG)M{f*e+zu~= z%=q-kNU9C2ZjYBxP0RTH>Jl^*J-R`uzpVjT_wu~O;0yPX$2^hyKp~qrJ8x!R$a=dv zRAh=YAS1@HRO^ncGfP?Ql<HipfdEBS6at|=`;w^`1ZsAW&luC9ak)`?7zu6+Vs#<d zf4YVv!lVQ~n+zN3*Dt{qUf@s7IJvXaOZ#n^IFxhUIbg5`MsWa)_A-@^aqUVUKlMjv z3MF8K4=rzYZJbz^7<yQJcuDRv{`Q8)PmS-f&-+EELnW(cUJ8_CndMImr8FFqu4`wJ z%paMrI=hxf)m$9?oaI|ZNmYhX{Incq^v_8E#Pvnq6jVPF46>#HnXRm_yeTWyqRgo5 z+q>ExyTebcHm5}SG9*U>n2gc2t4*M+hrOAPT(O`mSql36J|;8crj~BVg-l;pjzh=Z z{8v$LO((5uG!fd*!q!?hkh5H|++fU~2bg~7C#4`)-repsFxetKDB@^X11hTp?!}o_ z10C3u!}5VeQ7f%crgl&JZzY<cDMU9>%4iBfcd8Gd!F|hAE+1(@CCQ;zib<VKw60-h zt2o_)U+e)h#|BuHfi4>rR+!AEt;!z2IP50vs&7-@T#xS#HBNjChTWnj?XcmNm)NXp zPe;31x18nN_7sVfl)jZ-pSE!@!x(vc8vtB|N|5WN9Z=Yr(Z2>tJJ7*gFYSCA&y<(# zi#NW%b`I@aN)$Tr8_u!Ov*K^Is$-rWhPMSOlR@g@xLS_+t>s}FG6tQ!7??qcbn12^ zNFG&^UVi8NlzsLP*3LDwHik0$!>cOA-r1_>dM#QI7HI*nqHuB#{8b*{T_zh;o<z#l z@Awb7$vSf}!2Cd^>f2zYeE<s^ZDSzTVXqesRoR<O^EP!>i*>SrGL{q_no7Y_DO2y< z;U<#<LjW*2&fpO%^$2g^Tumhd<LF_^01Ajt=F?1Ac|pLr+a0ldi_NCt$`mLl=gzTR z%6sm!<${>lVZw7A%w3BYIoSvGAgkXd0hNirNMp52bC|Cqll1t1EvXFki^3FeECYdg z)+#)biE%b0c}yGB27FCWuw+>M`C1uFD@ve#eq!TT&At3PuQ~5RlRuNRG+^JyBeRFv z>C50Vqr9BE5bdMQ#^f^B*<+*Zd?sf!*{7VY^)$#7=w5Ht%2HN7RY5wZMA$C*s67Up zG<Q>)e1Yvcb!Ufx7yU^Y9y4epJf{0a^;INmNnlbUdLzbVLvUXt7OH?X$$;cDEdvPx zTlNe{I0n<f#<!b`&UT?vkpX}ynB$jlTx*^^%=Ph;8pkXPJ+9Sxg4fJJp3Ql(VCom9 zoaZ(ML0YyqHBpOw^~n7TK((_!Zzf`*h>LTv%)YHYQgqO1gdQf=xoif!X`RU`4!~;@ z3pS}Xa3!xNKPEmYPZA^E?O{(&iE4M;aagBzEyDR3)bf|U&$!&7<(r(7`QbLZ)x!Ws zh-7eDBN?<yHIYdJpxlL9FL(WGd!yx&nv==D3c}jq><tnVxIL)2v`!Z_3*c<S2)Pri zu+>7lBu}i%WTC}JM)%Sg9~nWJg+8>m4{B`0qTn%}36JhAoH=b<>mS~+>E4;3@%mj) z1;u>ph1@W=>>x;Z3qZo{g{repAusqrMfs>Bi=tHUe+Kr+7UuSc8h4-NT)HgXFW~c- zNBYxNi%MQx5t#dYJ1Lj^1VGV=cQg3KF#Kbn2@12Q5-2U&$`k(XJcS><SUHvK<8p!w zGzX9mlwN4>XNB?U<Vkld*4UM_r5WpibjTaA=#OAFIg~L+09V7A$n@sTC75}O7&jFi z#fI;sW4Er|;ghNFwwB~INJO9D3$RnYbHXg~om#2pftW}rlh;N<CGBPb;21N3V;qBO z-j+^TnIM8Clw`(05e)OY2<DZXwRdoh+i5nanqA2T`L!x1ui3aK{;x~S{Z<ncfJlJ6 z%YHeVdTg~Pozv`0*e=GP$myJgY8r;J|1~FS9u$LaI|H!FW<qX0R9=k^Ra}XjeZ^A@ zWLfDFW#BqZ7F8{q>j0b`R6?xG^0uw?AXfF3@zi-LZ4$VPGKCHw22NACGRo2!oFaCU z)#l}J=jn1NyH%E|X`pp==WsNHD74zxo1^%#bYeGzhr2R3Ctc~bi!z4;P;9uL9iO%4 z8QG(RiGv;8XB_O#mq3SOujTOXMKrk>2cb8h;0$(hO=lBCtgi-C22!Mk*9D|>)?cP{ zckXyKrk&~>mK`t6meGry=(KsClWh|?-9LQ(pX{D@1I{d$cXdH8s7MuUuQHlu-@L%7 z>~d+j;}-QWpo!q+L+l0P&o$;hSIJ`J6oBl^r<~R`Mo$RYGnar7?2C`QN>xbVz9vT7 zL9><v*ERawCotRSb-^z~1PJ8)-U>9%naSeFR}fI)N)ME)BJd!`!leO^_$cKC9muhw zdr_&0=<+%hXfVYIX5Ss9)6bg?GdL+NrQMY}tJBZ@!O4M>iDr1Uw0qY{&NJ131Kg+| ziqb9O&=lN4nVgK^!pcp9h&`YZIMPM1>vXXT2Q@%9h8NWY*3N~Jf_`TJJCN<4UY_^t z28a|AHgy=h1#t~0Rv(R#JQg_}fGq+A5^0t);iL{ny`n3$YPpVcx-%d8DuaAJR;%SU zojDs}uBLfpLgxCNa4|FOQ6OCFW6(V#m-<wNXL4O!@@-CS#u(G#RJ-s(C-3med7{x! zXed-sO^kzRe_c{iT(zTbRNW72;|gR`$iq`Rfl|Skqbbe`<xR19kGX`4UYb_L<<*0G z1(g4e|KhntlP^2s9hH5sW`(q8DtHgW6Xgi<FV3#)fQYyA$c{*C|IC~PaR`9%64KnP zus}?8hIcc>aV0?<SM|TnaX|qN;Js+pnnxTE74G*HDm?m=wq^O@sRT2Z<EWKpG@Jv7 z8_b4BjddvMn$~sa-KbPL^dudW8YoHCLK<8U5G!@-^Pyb-mOJ}is5Ykw6n|lDVquhA za#|AmGPN2|lAyx2JU+3CgyfKJog#X|dZsHv5SQu<A=6kLv7Ti}GG?Ni0i})9l?hHr z)~Babk)6GTc&+YTv3xo)wUy0c=wnP~R(uD69}u~QeDA9JJvpp-nJ~Z+Z>J4wvrZwE z`Ac0@xnqLt57TV!6+ztn0TRkpqk&Xz-|_&~%ax>E;xKZhcU>0;;Lp0=2xv%tJJM$M zqxaoPDAb<$k2<Llfr)VtfBx|;y>MoUx|(s8ulC9D=7wTVCLdu0KW1$Ri)G2|#ph-W zi4JPmn%1FhaeeJBi}8OKXy^0q$k?&M`ctaf{lg<QgcA_+U!mK@BN<QFU2}<#Rw$3d z21vQ5i}?Ll#?VWx2TguQQnx?s2U0z=w?JnLNhwQJqLvy=cQiPcEfVo7#M8vMD3D~7 z=z-Ip(f#B&xT159#S$QiQ6j)&XgiJVfw&*GZA^S#=mmGQ2f=0B%B?dBNV6?^edUk> zO~55%BW%^#?7JpU4^^X)d5it_15%w53-O4hXv7mb_~7ZAS8gO}M<n3;&or3i)R~}K zf;buA&5wIC5VM+cF~loa(Va%3StcCQ^D46WkM`aT$8nthLIL#E!pv%}+!(?zr&BJ; zD}s#DUD}4L`zT@qC7fNMl2H07Jl=fG_&k?;3pgLUhHnM_G&@!x!Z6Yx!RT@zEhn2F z{cN2Hm}(fT*w6xen-$;)t{MQfAm_kLzyMfz#?B4Mz^jiM9G8G&`|Zikrt_PjO3HtD zYr%}0H8CEjeHX4kA+tmkztji-Cs%hX(5mmC%L2vn9y!EPovz+neK$NBoOf>@mr=b9 zbac{w1#B0zg*`7ATn68r$hOeS>0zJPmy_NqKH0~Qb^tYbj<6D99j&WkVRIfi&CPo* zlAMYyh7d42hj9X}%ZXE2nQ>O4H-T49EK}>yyp@c}Jag#_k|s$HV4^QL9P1e~ncIZZ zJ$ukL7fBPZ<zn#Wth{^j<haAH(B)YRL3`C3Dk=D>#cq8N5&4s~EAJ0W5G&nraDh22 zOG&>-Vf2!VFyk>jp(wQAZEo8>dE3XAL&D03LQe0>^8Xd5a$ECYdG_1Xo>Q8D+0bdJ zg97RA_KfFibqRafccd#&bUloXygJU-)^y=t&o-i7(Zf`eo`_F8J6oyeLofhylAHs3 zNdCYb*I8_2`C#<aXI-3e|5|Zv8-LD8Ag0AG)PuCIpx-Hss$lxYj$~0<3^qY(>=YO_ zJ*FFtciSO(1QNURwh6oF0B;Ose{hWC@auw!SR(A*BISDgjbccm2FPI#5IIXLwaM=l zOH-ohVa=fXU=X*s=!RHu6Q8X;Yk>JUb)2H+YHd|Nbuq<zocA-R?eH=@fQ3|=UwF-t zU@@pXI{K^N7~W2zbsf6VL;4tm96nbnl7?|Aze0qD{alhQQPbMCPQ;7|=`XErXy6jH zuXT`uMk_wcc)t+;fc&JC)MonM<t}-QX!4&m%jQsd8RY|IrMrWjV<Gxmq6Q8M1+45} z;hps{*?{L2pQ#d}3mcCx|F9LDA$(5CA{mEg=Ukn1r;EVP#_)URlG~0$@d)VAo9WPY zMT~OWMRzQ>HRtVR(z3oXnl+MWQNnBhWi7OLY5@c4XC_Vaf-VB2j_#VTCV&*x1Z6kZ zs9Fm87^Ds7S@Bb>Q@uP0hsl94FwV?`t;LI4$hm6%?pBu$C;%1#Li+#PJ^Uxt0@=cq zDg&8as-S)0xj!9Zp&)s_!>N?rj>HJ6q&Qmi{G>ZVI&!hfV8^O6P{$QR#nXZ)oy7{( z5}^O2-Np+fljFKppaUfzqSOGeP0RpS4$_Tb;N%wZ@r)i(_FgDkWYGes#{$TT>D!`E zOGC*ZYAS+m3fARn&?BXyqj=R!l-~pu+8F^-mo<h*_$fxGeT@ykD2JL_oBhwTHNTSu zWGX9LRkU7GBE(5Vx<EXP9B`adUb>ml5D#-n2_8d|NKNpC3Ui-@a{o$Uj*_>j%OS~2 zE%)AFYIhgtz!1o4H5rBKbg#csrxRfrhhQk^!m@S-**hsUq~n^8j}xh<d#kej2VJY& ze(cf62q@D)M1jMV3}PO`sxzqCtjTW*=xVCb9CNSbil<6}%(pYbsz$<%{{&*ff#7*| zheWRo9U3rm45GVDc9NmQ1kwP5t~IB31zpyNYVHRByedl%T~vMo<sgr)bTzI8yrbsb z3PKP5=jqVjg|pv75U7z3Fb}0dzw}|=Kvg-3xd6+7+H~3X|6aa01{eo}2(mmED{QTm zMZOA*4xa_rvLyUK@=5OwZS-DCAHy3Dto9W+)gD*gAGXC`1DSbu@@_X^FpI%KVg~%B zise9cH$_pbUAX0t`KJ#L*P4nz?_1#V(nX^da3YG+B@L1`R`&m@0wi#wd9zDAYbNK! zl2=F`8Y*TFM}yRS3I~Au|79sunoDi`HN<=Q0p81QhpF))<1@de-7H!w`xe5lY-HtH zP+^TlWvzV83Ch>&8q)SfK%f0>Eyu<qeq?m>n$4A?LJ!#(S{!(M)EMXr-iDV)+$_5o zThRteoE0IY5K^SVvxFC<NT_&i>2y5N#Ji7d5|AM2M}#y&CvXP0OxholB4zd0)tG%i z!E~_q3kB0*F1@#jTh?LL9J7!M^}n=q{C&OtwNm?k)p`*xf(la|AEQC8o^?uV%UYeu z>dy%Db7zL$rjON%<oZK#XFaz;+TNpr`k<0tbw)|>deb9IC#b~UOTP2Qg#HWDG6tr# zCiLxia$H_76TVGvM5&i7EC>Wl65dY7Apz5YF9b}-n3?r#cx%_n;)#UdA&T9veKiq( zN1K6SuS_Kg5M!C=>zAyeBKreUo`pxMSV>bZLDU$4qdm+8mU4{{g%a*~DbvbOgX`a{ z%PD=Nb@gsy?GXE`$n;r30u?;DDMo$`FNz-?ihT<dg^&tb{{T<OG2^qD@Z$!S29{2O z*VDlY{;EF^0b-IX>BAS0X2s89l1XdYeoH5okZ%?{zd{wSNwEfM{;mx3-x$~-NcQ)N zoB!qOrQAmADmR*|s=3I+Uq#n)3zVkZGl)ZNE<g?rDk%;_j8J)B4<z41EnY->h`3pN zgKa?6|C?y&|CvPt7ur9L3ZKdPUqEuM>wVWM*YBgaFS4s^UbtP+cEMKwI*fZQ{l3ww z09=>`aAB-><1xMD8=5y+D#zB8wK%MAE9_*o5lLeaX!Cx|{6d@e&04n0e}T}4jqqcj z)ElTy-P@p25pkBtQvRPIg}<-YZ$i<3LZW|PukY*i{XG7y=J&h*TGw6tQ;qcZ_4;zX zD9y;lE7D77?Vo?w&J;B!v9eKE6#%yaFO*9pRsMT8ZMJpQAu+FOP_E0WWbje+Y#03G z6Ya?6ti1yk;YR#T!TQI7CTyByrf=4y@-%mcRP;GS7+Y|Z4ml?O13A&~&#KL>Tb3Yp z-G4>+;&5&EnVl+4vQNCAe#w-l{tD01K)U`+C{rjC9&$_rWC|O&qZQze)*~7=hj6&= zijQiLATn!LCfpm0t}s&S>8ODC_OgG%w~t#H{9U0MZ@yAtU-6I=^t{P@Gy%C4^ufI{ zKrbCwV(GZIBzgQ0bo+rTV3H)CZrPCtF-d}R0h@UUJ089J_n4%=Q68weXJpmztxKgw zu@|qp?`84}elL3UP8CFRJPg0{<}JuSA^xL$to&LlOT}+%)dbdRL+%Z}{%484(H$Ue zvtpUQ0g2nr{3CJO-)lzydzd%sO)Nb{hP>dRr`$pocd=)9n<Lr{HNw3Y?q)3Qh3e}v zl@{Ybq1`?R6!YI`ariaiTAR_KXzj&v6wK&&^e`OK1VRHjzO9+~Rv*&0(|D2M|3wKY z1x&O_I^n%AfzFI6Z;%k2!<pH44(g{QugPBe|15j?ZhU``35^xfx;8Is6jAeZ4U^|+ z(EuH1WpJ{u<O*H_%>i<CVOmLwYx59ni><@tMxa4emS<w?)}{PBzaw%fUFrl#8VqEo zVn8AnTsbxejV~et<)c;Rx2uUCxvZdxLK}1ST&|?l;PtCRPiIR=y?&l<B-Q@BdPQC3 z_{}_L2Z)l+E(KHdtP939$ZJAyij{sAqvk)C`u~nCu?Q4%+t331hf5;wHg)v{$(qRc zR9`oNi8q)dB$u4-1^^Wg=A~G+b{I5yr)%`dkf=}7=NVJcYl=1-C2h}beeHXgE5nYT zXcCw&Nc(q`h%x8&3m?%>fik6NC?y(HNDSJTTzXhLJ)oX-3(&7ck3xV3WbxjoXS;6_ z9GkibVboNx^13*ZrM&Y}eH3N_HJ@F_rt!yte;2_#yWWcQ;Wdq8>x{uY;qNT`U$XE< zzL}o~vU!5ON5$+-T?x1j7BeRzkv4)?J4Zb5#7)7LAK$fxPq@<T@K8~Pi}cq-NG-U8 zrPs5A8G|F;ie`=~(9p?u$z3#@3;6|Ve;zVu1U99i0=K>?i&n3h>o$~&GIpPJ!%!P1 z;JSWmmRMH}x6`^Vp0JufgdNzcI6`QX4^^qTVd<z;JvDk9(y&>A#uS4eD%r1h4j)mm z1S5)SUYL5{`A;<<*+giq>)l(G{a-=NdjfY&UzG(zfNGmW`L&y@6~9fU5CM}ZHt5y_ zK(}rbNlt(w$qBCnDPLlJ**9AE42ixsGcE6GI`loOTQ>7g3XKBVd=t?{XyoVZ#y8ie zJmjPgMoxJdY;Q}{&Xw#~?iXVa-6TC#w5w+@+J|FVB5f=kGrA!M2jj(9_#MjSZx{Ts zrH+IXVg0!SMH&0GR}-3$DIZBNEm_~3u)zW25y=pOU>eWJiMXqaZHuI}A9UW!|2lUf zEIjgM0M0u+vRNobOagxXD4JCQjvvA}rrKt6y_oG(?xuAW%UkklajAQ0{pu2L->l>$ zG}+?+6)Ka8CU<Pnj?b!~>g0b4)$D$G#Djg$IYIU<V@!_@$A-MBf8Be*TkPbea`~a% z_d|~OMjIM+9p<LCc_|4U?ps00^NN@@RGrwpCujACg8R%5bSBX*^Fo9n7~#|6xIt2G z6H0Vq#W5ntzQ!&oEo#1vGP5$CM%Gql!@l(Ce!&{`qX2fv95)*p3+{w{-BU&avR6wG zu1tlW-=N6{eL7`8>fzV#3OchRQ^9{@R^U~|%6un3aJc>|N)qQkdL`K00aBf(%tHEy zynnzdMI1{=NH8sgZYIxM8jknx2^KL9v>qo(1SJ=suHfD`daL<R!i}o@$)xg>7NLQ> z`bY_e)>a_~jyh|nal<UQm2i8cL@1KLrZ|5~Y5ax{<wi5?@;PLL<x4N(Vv@sgcxYB& zt+iHUa+4ai)bAs!d+bQ^i8nF9S(p1-j9_XF`_$Q0TZfNaM>eRut$B`FdAe)bdsDM3 zKea1@EdsqggD|=AV`hsOZEvviBHcu<%(7m-<|r#ofA{i2J?x~E1`ABzpk@1BHJ>Hf z$8)dw(ee`lbNg9f>avIAbaDotacL^V?>eHl$*<UZ$!O=@r@d!(b2pye&3xTLmX*tQ zm-i)`{cVX)gxdDCad=-c1+O0oK0A;K-@}(yV3^HPaqUqp`C7&`+UT)k`&3v@6MLT4 z!A@dS>g1+sy_FvXtGHxnI4Y{NMDsOR+-XYC2$J5<nts`5q0R>tAlw`VcOuJ5tpMrH zGidN45D{mWflle1x=t|5_XMOzC!&l>nk3&pJFZ$0E@8FP38-}LTi;WCL0?P>5i;P; zRtytWbetcLsBC$0)?GcaCeHa;0<y?a`uaj6t&sAY7ha<0A`i1XYdbYA)p%K!wfjJ} z;k7q3b=KFzuawlz9#MGXR{QJgVes1Kl?}aLc7o>-M;JXU`br4Hx%z5fo*f$-YV0Fm z^P)lkJR-L!7{d?<I*88FZr`^bYV6jtH3}8D8y|hGKt*{9v88<LVu`D9eh_+62~&fh zB^fMy{;>wy9ZQA0Wj8xZ&Q$?jKC<^FD+|=J5iB@@mmZcPWJ0^`t(;4Akz+#;K4w1H z@n?D%FPC35zxHeeBVTOe)_`PKdAIC}@MFOXmIr?FAKw4O>y3D{w{O{F*%-;6O;wAT zO}Cr+$i|3**Jnd2er}8WDX2|1Rg3=av9pFw$25<*)!FXxit~OxW>IDc+gBPl7;QgT z!gHo7PKLyr8@qO=uV)n)rh7O@+tH|+))n-OhDigJnxO5dngkFviVE&a#MPcWDLgDi zU7qPn%pQNjLHzjfeQN=)dg_I}C)D=S(Cr9FsgX2J!Mn%0#@|Tr1LOZre^_<!VwbSI z!zS#0<!(G{GKZb`WBaY`TO=L!I*pR-+JpuUNICTvaLvn*NnpYIe?39th2f+G4m%du zaB@TXgIMET-YKP$aEyQd5n(NVeF4+rhKI-GlxXrD8A<PMxj{`r(@P^sl^GU2cRoDW zYMT83UmYxP7EFECsjnKWi@w`k^mtA)V>Q>rCg7OD@X<u<_3rTSr)JwTXxC2AAUHuT zkJf(_Vxr9Ol=gDcd~>UMA36U|Z&e@*OxvnjWctH4{;~o(&J$3Nj4bWh(=Pp0As1=# z&76B!-vf!qU@{oLOC0UuaOh>sT<j0K+w$&~WyMjf33(m}jW4~9fLhqz+m5wqmW*dl z<XO}nluOXS@mbzkxpn-;+o$gyu?rhsUMWyK`7(=R;$w{GEExQ|6_df{UM6kCDcAIX zT$MSIYJiC)e%%9NVn-~fjg?7dpQy{!i#&{(4%1twrx?br)!U~SFU^lToyxPLy4fJG z9Ic~)wX>t!S(Ec6a~bcol8<J^x-au+h;9al?+G0XtclBo0H43Gu$34K<eiC{M?t~s z;%XCkh-w9IW+7RO^mLgcpC(niWZrD^<w!G2c*4#BY2_hSn#4^ys|8LeorJ|*Rj40G z26qgCi#Io)+UqDu5o8)MH);5ZUX|rA7N=8Z#pxK8nh_Z6>7rMt8P17@yr?`){^<6w zg3TjWI*%lC%=MWK!DBhj(VVLE=pFQA%C&spX=Jnc?uk?HGp-;MUvBr)^!V^f(&J$C zu^L0YLzXYE#O*jogxu;`V)T_b`g6p_%dvtF(y<?6MECu6QY*ko-J*Ao%g~8UkOfv^ zact=bN7mHipRL|7*vTgut=;&2FeQf874!=GLviiF)?I!<1#M<8GTXuMAb(+4xQt8I zGSDhM<{)B~qpEi#E_JtpGkQ!VR-tut0>~eIPiUkoa4Ur$naHCcr~N|7Ep^dyrKdgF zt|!c$+mR$?GB?~PsGIMa)f0N_l$wt_g%B9HcL=;kh|TgS#sXli@_`opFw;v@4xyjU z0+1{Ff#w2m<-4^P(jTiC?qo#)035jdu1^`JNQkoFWdJAH?$=m|GvJVZIYcHEt{94U z-ozRhPzU4Xdk4`gxK{!lguKc5>Ev5dO~P%Xp{S`O4qtf=RO<LZmC`lB=Fr4aLGQ!D zaC+W|<nzt59l1^;&b0|GmlU*K|Kbj&$x13}yUbk=0mIOVPl4)>@3S*{QP)`~$JriW zpvl~c-+I4mk(*lYJ8;xRFJGjq5@A2!fS~T1JQ1*Q{;P`f1fG9-0!3K^-<AKJ!E`rM z2(JiiJ80o@8kb;3pmLz;@2t$4nU*nCAwoPxFncg%q-?HPhZCNDW7k{I4XLn~PxHuG z_Z`oS>SIl9CsXvRFL4-3554mDqjd#tS>X0Lw$!pK;GBD~-9)PyX6y^C2}szaE6#ML zaEmDG=9~w}!pz*Dm-q)r<wIzn>JGI-=rc<kZ@kafTDzocy!VJDPVeZb{mpATOoG3% zlB=H!Mod@4TlOj^Dzo&oFEIGu8C5F0$6{uyhzFf5eckRHi4=*sGJV{GSObF=k1fI* zCw_jo@i>w0j@je5ZP!oM!QMsJAC|^ie0s>lEfUz&bmL}@y~T8l@~6tEH$*V!%Xkrp z<c~riqOXUOYOfOMaMzj2{lhN<Vav*Lk=WS{pfs=ooO{aUJb^Bj$v&L~!h=}OPpeP( z+f#h#=v7BU%!Ylxx#wl{i~pklYJJahz`*}rV9w9r^CT5+#n4pWg3sXg6-Y2GR~HB5 zLzB}mql*JkL13<fsDti2G=)(X3V-}U1~mbbok9d@l|X)-$jTPbrN_4;wD9#Bl$8oU zckqL>5g|g_6K*vwH5M}SGy*=;#i)oIfPA`K{a8r!5V@+(nzO$bIR{!qKHd&_*A)s5 zZGwtYfQ1yUNw{M)bhX`SB1mGsLucM<*tZ(FRgqBhj&a-Dde#?#rkuiXR=j?TR4m`M zMK)pB=#j`qekaL=E;oN}B?kCxtv)?0UL>;IpQjSExbeTRZ2<18SN^di7~i!W`y?O% zbM>JTyqG%6#nbywT)9N7Z28cb-1u3ayV1arvmVB#a9SnrC{@2<_)nk~lC~a<CH4n- zgzBU1%m;ygGfA-q8AUmmQq4ohX6|Z|J(eEkU=Q+$-urYM7f_r}Jl)wWJxGot3FTr) zv#f_Nd%6nTpeQS7Jy^S4&KPIRyzS`;<Y-M4Ir0KuixsxakRWY;$hW7E-E{sFCLNp? zB3R@xnJPEc)OL4x8<N0oiZj5ZmkMDw=}N~R^yvkO&fv-45}hM_f*SW=3$yjgmGoky zr^0>P=oi}Xy*5BXeVG3-*j}V%_hX(*kVTx(#HSb#lvb_Dtp+^&&#vRZ)X;L!{OPCf z2AqK(=vC+wOjl93F1{mvY26^=qYhr74dIDC8Mosg;pG#dihXl0A;fH7rnJW(RX`XH z;c8(3D^m~r_8LG;M+jn;x4+R<@T!Gf_K8V9EUXn~7!DWy3S?7f1VU_{KE!Gd!Y>vD z`jtXSAPpB`g*{?XcwKBg(xeDP{6zg@4G*D7xi@5%>U{Rj{9t5v4FcK-mbu+j6`yZF zH@XSPlkYF>1wNi<{u3un|Lx9wCz%FHqi9`QTR(!-s8Ii1zGH*fC4jaUH5`57=!$cO z>xNcr&~ewiT7HsuWy*c;-v8uy;!{;^hnUzGc`lTS*`azBiLLyGE?^3f|Ng8`#1D@c zI6Km*TbMMT=H%NfPnA|e*vYrOc6kD%GxAS7d3kv)hvTr^=gXn-5UhLHjM=MNlJ)u~ z3mJkA;*0iRvc0xk*ee#t$B<TVh^YZ2DKE?RL0Q*hw(H?_CAH+WgvE9(VIdz;07;6i z&8sW4b-%v0p?^7M!`LSXGxaIFM3XPBbe^;Lte6brZKb(S$RQEMTRvHrHSeT1z{~+J zWeKKER4mPn`19XpL7<#(TZ67L(1jRuNF)SY4040qX3T$4NVLU%s+h^2--AWi@abr3 zz0%`$z=4$mA^xkhwCk}-5uwX`4Nt+{5SMOdS;u*Cz|{em2p(w>zekR)xFL2MjzsU+ z;`67xSgzhB7<iB`u)VuPrUram7}lT{XS!9fnVZGHha}I&Q+>rSi@W-E+Y{jWG2vir zhO9Zb$VCvif!=27f)Diwz_I?rK~mrf1to5U;M#O~dn``_>Vv5Lq;4x1u6q|6MJv%q zaPAkHehg+CtQ^{!wmHEROlI0S`Y=l+B>f&dMm~tIoXIx1b(d~pvOz}&*EiE@U_{HA zw9AX`Tu`P)17&K270aNa1s+7U_Kszf(geQ>bNZZRtdeE*;fR<{m@j@2G1B;4#@u+I zsL4Tf^?aMX(rZ&H0$qRe#)(}LQ^q5GXSupHRQg=#NoaW<hps?83PU!36BW0VJt=`J z@t%8a))00V&N7WNY5lRN!3}sTZ;M;x{_{zrF8~E`!|&wQ&fc`4y+8f(;^e+;)0TIq z&zvm)S8a&29!}q+OX){{Vl9bP3=7=7ukeN`%pS~Qt*m`<*1vPhX@=rTFrN7Tuy^L+ zRIls*XDbboU6jm~DI1Ao9x9cTA!#s$LX?@1xsp_-P(+3#Q;}I_MW$qydCWrQd0be( z`&lUMQ+v11`JVIrp7T5Zt#$2vU3*{4=kq-G{l4Gt*R2MMMwoy0C65ME)dn@p#)0cQ z8pk%xy^Q5)R-ApH*UZkfm#=JZNsv|ByUT(pJi{(2*dvq%a0{g1D|-uuA>9lz%cPbd zVK|^@4Lo$9^}2rUD7{ojIjhjOO(b+C#3W?m^Kob)&AoUCoEG08B*HZ41j|s5yU_}s zmKEr@%_n)K;9SnNt5DNFl=5a_<~v-fyEs2voP(Vn<^pvukwZCYk5#Y!6N3~_NCc>) zTMh^P=wV}x&@B%r*u8X3eN%QWNif2s1e1zaRSs7t-z#WfoZea}Wk%uuN-FVj%B8-; zj~L;Y#jd}@Wswd`QJ8DCy9;*jXn^D1TimjSU<C5)*+6Ah76Xz}$w)^Y`w@Qq2LSJr z54!&89tH>KPTJWw>%^W~KRctxpnNP(XT5nek3mS#R@1F;2vmhidhpmKh0k)pf(NO- zXZU&<lT1cacSCesM)VHX+D+mebY&xXm*q5|!oF8M@?p&rQNmY*Hr-FGweTWAJk+G3 z&1AO);^-$`)|$mLVB7uD1jH99?PDx2+2Z7KxEOE~jhpEnbx<pgU2;(skByj^ZMU8+ z%I>duDrS1V%c|Q*bxgggVEn<fUZca*y;ozc8G+hWQ8-57p)uSuk6puh?H$4y#f+AV zlV(ZcaeX>37Wdkg#h7S{_R&mUR`Qq{x=?v0rC<a8sjL@hJ3LtIqSlbR<^By6<9Tk> zmd#@~H=$o}1l@=afQJ}bDl1L&M&=1F5CU~P#_ezTXg(6(U=6lSK#}n$be&`lGZOey z1odqYruz`QOO8m}#*;nn)5Xss<&WJB#t(XmTB@lgLEA7kl7k*RXY}AL-Hh0MIxRzm z=(7hrosvzRexP{;o%NI)%k`AIwn~12>IqPNDtpr~UKpoG4T(B+&Am`OdyZ7wHvueG z>-|Hvs${)7H+u%*Dc~}BLFo7-1TEfH1mos)(g1nER1@|>B~oUsx+5`ZW6^mv&Ca3* z_uo`n?oOr-&MHh6pvs9BG{3&1Qy;EyT!M@JNcCXaQpL2QWqjwnGq?WR^KOvw`f%3t zd&v3+X6h*{Yz-d)zPjzHAP6))=NktE1J4yER2yw}WH6l#8C8#L2!JOrp~)~KDrgVv zIys*RG3`uO6-c0mxKmQw$2E{cLnAsqMgNk^%8Ya-f7kG3a{J(DD-qw2juYb*t@Fp> zgbOXi%Z8VrLl&;P;jjs{zHgxQ#SI6wvU7_KRhaV(?Wg0<XU{t@^8Q)bSgh~#gX{(V zq9ANOf7?q*+<D70LBWf)WQ!_|<I%}&`#oM4z3&Rdkf>i^6ds(b>j~|jEy7aId>p(G zw$P*NAo8*N%)*740F}-H`0wH$uD-M1eYpIGFW8Re^IUqjUJ&{f9x5AH7=Rfo;qu*i zsiR5#T(sh@Nos-=qeaT>wBLAf{cSn8V}<gugc>u%355&}s_0G=1T5!%yE~bddz)NT zKOT{|9=YdTpi%aFEF61w^m`ICFHF93ahdwyC`rFK-BISUSFE|x0yNwVQ8Rel1p6(- z(PtYt^8_2|%i&5IjlM79Md@z)EH9uhucb=QKbPKoS4+|D`9=2FOfQi$0=6^8y{%be zZXU@g_3;2{m+O;-cy|OJPvXTqVyjL!ehkc$ydW(lIBWXCJtecCud2i_M&F#VwzHx9 z-Z74Sa(st5o5U~`iKBX2Mtw)!PL-sPxgAXy)w^cIn<a1RHtZbEU-qg}v~uED@qugx z|5kwv4x4AaN}ms;aHTaBq<(C4A--YFk<1y=+jyjNAf(qMfLAi4*Pqwr3Of|wf~N4B zd9*`|$W<;fF5U9fefb6CbSF`#-!@?YA{meM#OHLrEMio7cO4ha?{}Shscw3Bsd-|^ z^bQ^OAe^RJ`3h25!3|n()HgRfuX=p^SkLQwh^uPNZ=u7o<sFEdS?lSLt@s=+O1pwS z?yTYN`!OW;OjSWToMdvMza?DqE5almQC6@mJl0zG#*Y795{`DzBWup@MGi@@nO-x} zu>-%OW0MYzmy2^jG&jZ-$^wK1#N@xMcxN!u{<f;BYO8_BHLAr3hdI^_EkUqogsTLw z1|(MFrTnh}4_EQ@kZFUquT(w1ZAm?fZu@iD7(@|jq!wpkyiRV-dBR8IDt0~ZCSKd& z7P;A&_FJCYBeJxDtkYWh0T+Bk$FuL1n(Aw}!akjQdzTL<P&o$CV}!0tQFL9desr7- zzkPH{ik?qT!fv)=2$E{|)kIY_Hu|@|IhP{Y(044l&`wsPTgqk#qcq^>t&pTsCSidd zRZvuf{n2y*S_FK9X7|`T<71~R(Lqt4Mi?v@JTsYs!GcK@ty8#O6-Rgs8Y~oDA*dI- zB_}%hFmvXU%agT}UB2o*5DSySEiQOBO3!#fc_&m1&!r#m`AZ34lg5R#kz5jTVOUY{ zVj#8CJzqrr$aAEe>h`fMM$iiGYTIE<Ix|MrT3k6>cmum><*OeY9|zrwk^ViDCr*rN zagDuY9^#;ICx#JfSllVqxCxccL->1+y`G>~AbUpmRQrhOL_S<7?TdZqbG$%-K5%7< z@<_r09}=EHfDTi6ZD_v!*W2_fUVy-PKqWkx2TW}Qt??T|)B20f#nU;s1=vHhNfS!l zpy#vd_0T0V0c}l3MjWo5&|_|1gha$lnuil`gRk3sPDO7j%*xv=T$FUB`ng$8nYqVD zvxE3H&9-ch7s*sJ8&4zXnNpY;W637F)X+hwUoGG~&mbFb-)1m<5w4x(u5I)~4AARv zRU~6&Icm(qqQ)5$_1e#EH6|1rEczNo*L^7RUjsUO&pVB;h4}+*ttxCfq*=ZEOC!W4 zqb7unoNOMV2}W}d)8(L~9@(J$Ai>GqHr*mxI{(O(!o4LE;+S1P415IX>0+cAUVstk zZ{oo1^L9W{*#rPczV@5T=d$0GGh1r(T+)Ny6hNrQefM6t)ST+dra~9C(bM{VNpF&; z!e2cDenve_c)KuL?yy%*Wc0`-d?5iyWlU3!8W2t}mO!$3DecFj?IIgw)lHSQIM=V; z{^sUba;zQamE7~Ogze$P5~Id*6TMYgHq)iHX8~{1yR*QR%A11SW@^BX^tfAAp3Lo9 zgf?a_C0R#G{am}MW%E7a;9no8#`UOi^4xKzwVv$Lb|6rRlH4jNc60UL`YmJQ(C<3* z(GS6Gug4B9$ewT6lQlJ~IPXs9+6>spj)emWGpQ2HyoCBWr1MouJfAVKI#XE(Xy9*t z&%Uy!W_J!nCwcsYS~bN~BuQ9L34K2EsT9h(>q><^s_b(jy%Nmou_E)2xZ0F!i`l+R zMBpu_`|_3}8Aj|waZ8^`1mRQqlLjYs)A=d|Y@(|>1+KUsu0C*Od-XX`L`^Zg1g`fq zVu)|RO!GK3K{nij#aL0Bfq2QW?1~bu91Z}7OMS2h4!SR_Z(uEOYI>aTQU1lwsEE|S z(+2MUl=&60B_vJ9n$60K3&p0m1wTJ^Y;+Zc{dK005@y0V0AisyQa<#mkTM9Fh+k9O zmJI;(66hJc913{}HjxsEPp6gRWedAo9_@P7F^vTKXxkp_l4x9{watN{h7?iWWPe== zbb+io0Va2@-A_wb(0I9>RAC??KLkd0hMmu~tE<cW59l#T$A!%9=1OloirfSD5)D!s z3d(xV4Y5&B<z31S3uB%wkO1WqRJBJV)i4ObIG5fbXf({TQs7!X&_Ux&!G3!z*ocgu z7mGj1bA5#DmG6+lc;yV8@Q$=FLGwYE@)8<WyL0J-`=rILO&+!y9#Vh*MEo&x*5;X{ zO+pU#m)lelZ$6+|uPm|m!xYD!xq!wDOCyz?%o9HNiS}*QH|OR(-%ov_=IWmb_#pD& zYI&e@&Vb)|d#tD#eL~{0sQ&x8870ePs*xKhL9D>sFopy>5VMY(^`x$~tVaK1?ZBm{ z%5aby)dMUrY<L$Av+_9g)E)rMJN)JV`<VE7$b+23yB}*}05o#k)v69Z;k<ZS&IHX= zFt=@&MRZol9tNVJ{Yzhi)9Qo81zB)A9$-g22+iV+pq3o(l!NJsJ{odf+^@KkA49`j z8=5`OnN?WhcuD!TxwS)!`fuA9Q*yVqAB~+qZ1(Z&`QlIcE=bKyMZmF`Ueptg^}URJ z|Cn1-YoI>fKof=<LQ3(MoM=tnZ5ab@%APCN>#}St)7o#5Fl9yyf*Jt)fNZb%SIWkl zgyjMR<d1pKXL-f~1jJiTOv$1lZ0y-J>>!jtz6h8*`w?v*dl%e|PKhW#5`LzT(PPQ- z&-^b+N@Pw95aoR462+b>uG35QJg$3<N^MLhao0ibJv3!ctPica8NPd3sLx$z)=6II z!m)@>FN%)}TkJC}Atk`=Iq4yOCVe>R<)%PU_1erCNvpx;Y79{)Ymr4_xAy9DLoLgC z_6D109j}vU-(lvBA`C}Y9)+5}^e7mR5)h^JuA|%2CiMBB=v_gj!_{WLs1$PaFFO{# z47g7*@^#ofM)Pf$+OvY5cwubs$)2*n1JXT)q3HVG*T<F?EM!jifc%Bao;pHRqO?zL zJhJY4H!8exOf4_kW^|!bl?Zexu^VXumhV)q{hhVI?ArxcIB97G5}Fp^1-;Pv+VD{D zRWbAXPo~5<#3_Kpu`Ig<4WvMEJqt9CokrQSmroxT>5oo)?toh~VCjcx2~iFpBbnSL zVLW)e0d|n~(YZIZl_=iOGU+rE@`QUp*0VCmYUKFtLTE72iN7Ryz*X>gT`XMqsQh1+ zJTw=5amsAv4wtU;q)zrZjoswN77nI5$*ZKRE9dly&gKzj7^X}=^_KM=3@<Gju+igt z1Cm^&&Nnyz$Rqxnc;&svuAnBRd_{Uk4Ww038T_9tO;A>3chp3ZnVG(}ZoWbgS$Mi> ztN$w*-ZJ|B2?1IE(28p^{`pDU6ewTN3X&4IP#ww${S9vH6YkdcTLf!7S^pU~HnlU9 z6vOX9L&lFD0GMMi#i{l&+#0Fit_<SY;h{jPy8sKVk{jBB?532IGAv?}Qc_q-=cn2n z92x*(b`|P0VJ?_Pf_aV|_HX(gawIN>t*8waBGA(j<3i#!>H(xHKy~2ina)$Dt%-Q8 zR4|yA?lEhcMtR`wP*JmuE@B_pp3j(ocHRKx*$1e&p*&+i6*p4QL7>vio_p<4^oeWX z0#E%jLXDBcv7slJL94b$)4m)&vKKO>g5_+LEi#P{H52ZCA@PgIwN5kBRU&&456{f| zCkOGB__&zn)g~QOnAz2U+h_3~zM?rUuNicIfnF%VJ~oS<Q<6bN{{-X6RobCDq%>Mk z5lK~N!7hr!1@3fBmj^(6aa09zQ85kyJK)l4e;$IyL*Da-@UESpUT2ZC0AQAfpq9SJ z6nksWjC2^}9S+T|h#Q{i^za3N!Y;Ih!C~GcZM1;KyNzzS1ZT#zo+f%zAuw`>#_+hU z`B1Y`ndr1Cw8J((_#2M5dmeHB8)b(~4gQo<Uz?}G=1>?&CcJ1PbERjG5uZES{Fdjc z3%;gabMZgw%}RKi1$&me7O}%}t_W3xYV(q@u97b3XinO{26RpdcOk9!JQj5@C-<f? z%}(>@%*yoE#i~1((Oe<e;mWBPcW^tW^27Q-A@djT&ZWTlN4lu2tlVfzEKgQSlDB=4 z?@AR@101IbgvD0FJll6FHDhe6u4x2eZi!mncSQ{*6vE&3uS0nv*N-;Y)qm-NY-r7p zN8#!nd3b5anY+(04EZe8wo1o{)vd_)Absq5tB$k*c4Zt8p{7+H;5;zkx6b1meHJyb z*nO;)FAD=#>lX2{9-YqxH_FsKSCUpi<}1%?g1E<9l7wHNVigk^Q6DHlXSMswL{L~z z2)DyHxMO)hD2%F)BJNq#pW4k7-atmV5BamBAoN<K@Dh9|i=*NIHPvlvzr6aQPpf9% zAzp$c*W>Ql*DKj+nqjR&5ip8&fg%vw=-+#mlm2@9O;ZrmSxYB#x8K)+eo<yo)Nbxt zZ_{fd=dzyCC#+CZd!h*@=)+9~r9q;?RvNRn$z>mSGD;ez;J`7XT^1m?bxj7eS3G9j z(tcnmjJ}YO5*}M|+qme#E>jqazkhnjG2!jL`lZ1TF{>;oB@^X9nt~RRK)s4aVN!^y zP7oKDPrJA5a9z=Vxvn}Ng9hrZu-_HgBKNGaMSlMv`yc8s^Ie~|$Ug$5h*?rJe~7lP zi2R=+4G0<Mt(h#KF=8SkC!-ZOmC|CN(%YE)(%mFFY0Hv{v3!H9>DwUTqsMHzDYn}^ zRyaP|34@EomB}isLtQ216@rv!65xN4f~;lc$UVW2&KY4#C6<rp+w-k!@WZU2X)1*# zvGM1kmVKdcGmq5$iOchw5rbwR{ojrlxEXbq2AIY2a`D2>LSsi{i};CEiSU-dYm40N zVtFfH(aiFJ=2#b~ZGTfsza%AK4Q3uIr#wI4CZ3tn5<$OBDPEe%)u4s5)pA)oGt#PG zEPBy%eA1F~e$QfR39lDuF1$*AtGNi~<|hf=#2*8Z!7TE`QhSeFJWY4RQyxaW@tH=K zLdmq)X`tO%L;DAlAWfJA3CNc2yN~3pcdL}qlA?BYqhIi*zjCZ=ltHjnRgf^){<<*~ zf95l&UOhst{f>&ceg7>B$+Ia!CmzvGQe>D#GRpm+EfK%2gT^R=EJ)!_Bg4Tk7!*r1 zKtTtAMK$q_1>(B{`%_XbfZ3~OP#fea%GvwsU)mI10$nOkTD#F_=iQCDV`QJ=YmvSP zsfUNWNaP=%StqY`2CSE^M`U?_`*>3~1G&C*ZFql6hR-WL*&6W4UfrWWb+}2P<203P z%1aGtgEa=R9<IbUCaDgTtVd2Sid9Z84o1h=%nf)!NMv|_c#7SM3~1JN<=^BKl}vqn zj`dW*FH9~plhsV`cNRM#55XRu7oS}Dj_qcpe$;m`=>qZ-B;ox8Uu~*a!KQlPVbrFO z!6@UXO~;zf?hEI;l~N~pjOfjrtH1Ud^vd4<vsZSEW672H4@#zrAJ#Y0okd=3(;9_= zvJiI>&wm3ic0VH&Om@dgd2Ye`xI6!6-p5ro+`m_J`qxyn|I=3JNl&W-1ghh?!`hYc zoneKBHbt-ao6qA8Qpx)gkhRnteON-!U85Se{k<+4^@JRDa(65~{uDp2p_02xY^f8Z z|EubqmZC(h8+Glknl1U(@69t5(efo!yK|v(V$%q9^EMeH^lwyr{Zas5TnT9E1Dg$q zDun8tR@Xh>o7emgope6nf1%=YTnh)A{3X%8lC~-vY0<mHH+;4fS5k6Wcde(a?pyO7 z^~Is~{zs^o(tdT4GXM4HF=R(MjyV!~n(l7OOL%+lq)3LIhCAV9h_v>4139OY2K&CI z10F#-U}Hhev5Kj=qD*RnJB-)`u_l&vsf7wgb>gRv)i6Utj9e=>1P@R~JMk>VHco|f zYVd4bDjEyOpS^AIW2IT+dy#*PgR1>ND*JRG>8+AD8nOoM8@?CM^NJE>5?dav#{V0u zzL@ayiZZ?-wqUhvB1qb75wcn&)&0)2^<PuC{L%f&y;ZO>^31wtgUH4oGFTZ|L;URP zH9-T{#L6$M4ZrX$?&K{=Sz=%guGOjGU_{pa)2mz;39g&6$5>9Kq;KgT%`AW1IOWGW znC7h$uTy3h@kdJGPdV%_9jh3Me1A?d$}2SJlI3P|%)S3P^Hn851<!85xlc!9X*(_{ z2QCd^YUI54I5JT_0}tA>qDT}&xfifvh*~m7T_sv|O^_b@YO3Y|Q}x@&jq4lL7^p}I z`uAV;*@BuBwx4NI{yfX`FR1c5a6>$vX>HN<^bV;-GmJu03U~B0MoD(#Y~zpT5bnmh ze$+gHW_?FfAS%Ky^u@*Y;~!ExHU9qG)3ww`JS$muFqzuIIP1%x8=Rha6XL4YVoIPJ zW(b`%oACLN6F>8i$;wv#NqLN|ttS|9!Opv>noM|F|7w<SJG^I2in~(nvNNofUK5-+ znlKGC*T3H#i<A*{m^A88|HXE~*&%tCS{xLl1ys;6npl)3v4U@3_g~=Kx6|S!h%S#* zIyM3ksOPIZC|Xohwp}tymxfg^ck<wVxkfYA@=N6bSlK_D@Tq7Ly)lVl@M@A3lOnq$ z3jv9MH?`a)LQ6B?=0;64@{xw-)m^4?9<^azC&4N!{naY_bB*x`%#=2thop@$NBTCn zAh!HVE(l!$#bEhF*LLVvkN;G^Ivx0D8flKr@B&XyD>lsgZnIF=5vtc_dNQ4*uX;b0 zQ;E@n39KxbNBL5qA;VdiqNgPnqS5$cDDdf?Jey?);q<+)^?jV*u`hku^yQr3an{ER z>p|Ks+vl?O)lH6xYg5{LYdh*AxAhUbc~v)gG&|Fm9OLAs<Ub*+Bi?<9&i#opTt5F1 zzve$*aVCQqai4J*{9c96R4#(uY}e29UFUv@%U$sT{Qud5{l~np|5qQe|2|g#*7v}_ z;IYC@krIeoJSe)IGh8o6_3CC{&mjLnt>AcTY4jgYDDpv;HRtbG)_xbgj@!h4PM#s@ zAc!M#YaD+!5Gj*jgfW*F_UoAIuU2OguXSXzivFZJ`&X2;ZP|nx{p&r8bu0%WHq}AS zTG)LUe12zWsMJP6-3m)ZtU7UR6T`Csf%%E=p|WN9H>qs@6~CPv(LuUb9}BF!%eT(< zxE!4${k1_y-=OK{>?iSiv{si2HLni(O&>T25?RkL{grdBW3+FrdF9gc6X=k^P9y$O z?MUUwv-5eM>nm?Aby&2rO!V`XH(~a@R@mt%!vMwUfK+dRly%5Y-4n8fp_`(30omRL z@V2+VIPi(`Xxv|p4Uxpkow4;0(dr>*{GDlWiIo6(GMHKXNmS?`?mhD$_#>nW<1v9n zW6x2^ci3_)^;1HP1;se}nDRa4TcRb$pQ~^*;pqt5*)NkakaAfcaCN7nTaQoN7jzu? zv`e1yGX>R!I0eOtx3atP?+M@2v>Aa3r5Qc-=tWu2W)I{KfJqF>Y;nVki8kW$4iv_b zUlqmy&);_@|8tR|<CzTBNw_2V(?t>%V%&$nb&oFv@eoA<=KEhG3=-dQef`4%oEWeO zBJ(Ck*Bw2V#cEp5z5DgTnI*q&Z3^9Eu0`+lqy*;mD#{l{uS(gNssF_5`TuJNkAGe9 zu4bjMs5U!(c*vcvjz*)2<A(1{9RD4(@>bXx60jlIQ(+pX_@$$2POT*?Hed~Y{zvvQ z<-%~?MI;`Lg#~?b2>+^}XEhA>%x}0X{>#w*g#8~b-PGGjA{uDt=VC6vch!kjArvz) z#W)>Om>_@hLq2p`4IXKV&Yj_q;*89D1g|u$i=h)twQhgMN&GKU-KyL^K&q|_eAAwQ zfhu`(lc=AXY<fGOFHRI#+>c5zyu=+{cQ{51oaR;Frr?|_(bI1syCSe82Hatl6F$E( zApdji$p%|+y_!tuRJM7=%>!=y8R76)4F|AgFoTA&<rw62Rcu^QbnYJUjoNrN{~R<a zw~dOJ3BK}mGG;V|6?C}O;Bf=%I<P5Gv7Nf;u$+!M>RR2DLkuhS2xcu5*?o@Jui0v5 z5{kJtr3tNWYSgwLHffjCq<SY7({s-Jc1+)i`HhR36DjGsbB@baYFYEYWTiIw03L?I zD5_%!BJ*&Sg7Tc)uVQA{N5#-nlEE&iRKtT_RI4UZ-n2$u(x5hA7;<Hg*3n--2>ZE` zwQNtGba91<+2Z0bPHfgPYtW6q6-AOH7Uz4!Pma)~?2@=sM43IZwihKvGI|cAv~pX| z0~7=z81y<@N}q{Df@~VGs%A=?j{j~H+K7~tAg_ebdEs;6*vKbea^p^Aai-USwqEq_ z0ysi?1#iY^`j{^v5Pm{xur&Rd5pW0oXo2WthvGGMIDr}e1-O_=Psrhmg<ht53s;)w z>MKoF3wbeTVI$Uq9VBiuxuSXCR`JF$h*~E}2MENMR<6)w#&BTJ_OV}>V|F8uV9bH{ zMJZg`Z+9SUhaGu?oQ9NY*F&O}lYhIi9kK?(EZEo!8Rx*6&5X>v5WZz?5RZ))s+owv z&qP&mwD;nRM5rXBEH_zgzYxS-n>y?o@?7|i^T0K$0%eJ6O{rctiRwwk0_DSBK8MHO z4vz>4+wapHv$;@1TTh=LwR#=4c({Dg|LfmtyUbGR{q@ui<f$VkC5X{f;B`Q$<Jr@I z_o@DiF0G|2_5aFg^`72u85*!v!kbmjrz6jq6=%ONS=WU!%Zm#T0+5Hql*jYpw&pZ5 zZ3y2cl#5}Ddc<+Fm|=j1yg~~~i`zVe`t~${2TWKb4#gnp!3ajRPvb@aqzS5GRQNaa zr&OF7K}X^;tKi{4a9#aC%~<@>bi%gG+xnazYyXxi9C!ij!Y4UQ+mt*WEVfw{$p&9> zJ<2P3$7^T@?*(5S*8^WaN5f~Ihphr&gyeW#KzsuXPF~ZOgCoA)JV%!+rx?)!00R{Q zpryZ_qEsDCZ?kI@=F55iq8ak<lcxSzx<P_uH@s_JV7-)^n;K-Vj*x3BYWHxM*PMmL zTuk5y3#PTgc%C-cULSUnQV`g9&%?sP4Cdj_z&73Hkh6(~Pg+*6>!JTT<dyZ~);w0V z$9O4l)W|mkYoNVgS-SGAL2%egf!)`Pie`Y)oE;x?Ece5Q9DfcE@l84ZPqA$<fNi6u z112DJ?nhteLZ5i}f3pzP_V|!9Uy@Ta?0~bO61Ip&o^%>2Tc9ss;I&EHL??6xGTAIS z3xh^oI^tMA6n`}Z^nnqt1*FwY!S2pXI)Ax5=)(A$bIU}d0@z5nwkqm^6CcGe;I;h* zC~YT)T7-S$I}$1Weg7m}cB#nd3urMZ>!|@Yi94I_S^PR>(-UZk;#Vjl?2m>0eHX^S zg<nj#j&>)+S_dy{<}Q+nj2s-pirLK-?Q*8w{kqj!&#R*08i_qI89fIu{7$MJ(Yq6a z_vDD_&=;?@8KR&X^n*t2A~b5N`ZDZ3$)=xbXyGpk+tHXj#O5NwK>5BVN`apTSS4id z!F0K|CBxDeEShrg|Hfwpp1rGlB%A6k>&{d9&jmUx&O+kwD-G>Ija!*ee{|_0z5g$- zl#@@O%)1s&q`;k4kViNvfMdzt6G0y4u7vD8HIiV7`r}l`zh+ju)Gwn}F#hv7q+#9t zTMa9Wj6bt}o7zYt{1BKA`^%&Ick(V~bor=w`R2b+Syi4%L5{4^Ufs^Kf5kb>*c39` zrtN!y1rjzgYGXo^H455reEA|wM)7b;k{g}yxy|D9BN*ny-A4H2<)~oi3N|Gm_ZgYl zMmBpC#zPiid`!3Tn<V&;T#$Qgw1AP@RxIZ*SN%MkN3&p41F)>Nh9aIHAjDY6cHGHv z>b6Ho(o9G`BD-hFp>=dgp5v!%g9Xhl^Gv}K^*a;&bw-JfHn3_L)BVIqHv2>GLj_sD zYrR#E47_c9I&y6nw*`bJOE+_}k}Ub&dXGeD`XJxiq&y7!X7v8|{aZht9qb90QH+?b zTL?SNeTkieP;H`$v=pUrAQ^wcwSbQx6C#Tk6x~lKhwPOX2APw;mV1Lcg|8CSXV0p? zHf+&qOuCW)AQ~1dg!1nAmfYD)2lNmotS_euOSw2MGZRP)#ltLeK^%F`WOZww=`X#) z?^&gu3wn`wKBaI5TitEHT#9=E6mb;J&j#=BQ+N#axi_b&@29Zel)gf2Ah$vKia_J5 zH9TQdNutdAoH}$fetAbM{d90L#EOr=wxc3TtEI`P=&nl8Lqp*KMVtmz{87Bg|JEv# zKRgwD`t>_0)oo2q>ugXjn(*|nJpw0j!#Sf3^yr|11*ES4Yb^)h-`(Ua(hnd;X@Ids zNEJv)GLaHM9)B;e4;lvAA$Ll@L3|~$n3$uEiY1fV%2fb{c~Vk;>Sa}P?&wv6j*}^e zJM$rns_S<xnY^~MV{w1L`Hqs@dj0jN05&;e(0!%Tynia;aw+u&vYl&V^l{qPRrnv- zirXQ?T5jT+4rfk>Uv#Y(UG=OEeorl;ACk<QEfW$I#=1C6-c=nl?jm`cvp5<*Hfe&b z<8A!lPp`IFU``z;W53Yng-LXpuhnZ4VHeH};C$LENHp|D1T0`#pZ!}Qh-R~gc^p;3 zwp!E#J{%KK;<AXP_UrX*w#lfc*+k_EFBoOCAL#Ae_DYp_JX3wIq5@TyQskM`nssKR zk&H4157Gn<@O-4xO?`GhahIluOY^UM9|Iq|oHYsOD^LxfR;t+yPJ`StmcY8~-~C%Y z0Sx~xYW=M@srN0Zca0OJ+MbS%+PHiO1ajFq`R3%-W)rsc$L8$yy<nj<hD8hO699R} zgnRXoz__~G0bzwU(F(*3I>Iv;1i&G<do%Q>ZaU25F}#O%T>HagZqtcM$$rA(x2N&h zUsD13-O|ACyYXD)_U=%gisNQXrn?WZkx4W?x_QiBqKWYk+h&QTZ5PA$Ii*D02os<% zIFFvu#-Lw(s!k<c*r0V{zpjm)Mi421y2#M}G4ULS)5@`Gdl+^oV41V#f^Td&i+=$3 zu6h8Ev+{JLr$e%p*_Qi^d4F?SqU|U0;0M^@9Cc+C6_g1d^A4Ur@(u7!kW7ZC=YyYj z=1#gk@nnAu*oCW!NRJqjpj=;ZgY;7W1MIWMI=y9u*dTaUSignw*yn>-b@q?S9zOEa z1Xn$qtp`W8rrQl%*{)rl=||&IUtKkNTyqPZ`<0ldy;tsOGk5@%?Q!id{y{#9Q=_`p z7I)kf58_!~!O!?z-cR-FPlppe<s9a1t(f3VnkabIYt5m_x$QzV^zSsq?uCfVX@e-V zgWV~ofW~<E$o1@ETqefq#7a!us<m94ScIf&wO?O1^%LUqDQSJN=>ANt$0eFtr)uVg z&g_K#R~heNiR?3Kf>tOcOyMAwYRk6MhJY{)-G{#^mW$i?V5c*jS8!i3EfXXx`VJ6e zLaL<;w$=K=GU=1BXjoBnr=a3*2$d_dnf1hNDKC;O4<0(7(mF#-eZ~EVEYqH@i@F); zVbQf=+LI5TcYmM=ubBGLxfM(HBirvaMsol1EJ(9fCF;mgiCm8pnZ<aIjR)gYA-BUW zNo#Vu`C7Hi7+|g6!}GxA%_7rSWHov6S-QpGZvgnQFD0@85L{QIUhE?X4oXE%C$)VK z|2E=u-d{yPEye&Eyn9g)y}AM?QJ!`4I&tK7|2gaI3hym=M}U3B&9NBA&Cypf{SJsG zc?%6liu*WI<^<TLjI5;`E)|peBj1YaJ(<W!^n(L<l3=!dow%Zz?}Hq&;e^}PM`F0H z-5>4b4tE`HTjO4%AW|0YX6N<Af1Bk8>S1p$Z7$pW!z*3@z)}d&(j?~|zzbQAT_zRz zF5RP5V63?|y=yw8Byo!#D2b=4o1D`WJ+y63{&^$8MVIO!I`x=CHT4t(saR0LjYBbR z=L^F2m8u_`Lix6lp_E)s#50qL@7m{6etZVXV-YYLlo%a>1IK%$w5&-#(am=9rMe9D z2E+8PfC(nsj8Dt)Dxrg>38#@+`bmJSkI-eQzeI`q(Zu1@RMBlN$Bk}_hh?<kRcI;F zh$M63x+gUEITRgzV_)!bBP6ABh_=VK2;?|#XL{@7kfY`o1cbUCy<)1pPI*w^{NO-h zxvZMlOT)KvBb3zZAxX_1HHqQo%Y1X8W{F=SrbE5*{6tYUtWbUbUORC#<y#cP0Zhf- z*qp_51or^uS6t=Z5bk!A&4I-T!QNb28=IgI0ocsUt%>2boFJ>|9A7X&tvw-{zfkkZ z>O{}4#-sx4ZcJaB2glqSQDRI~iv(b@X@4=5E+hPP3!?k(?CC+&Y+ImapK@l035US; zmW|~kvtP^Jr;pEz3T5RCaXq@fMdjiKn4?Wq+<sOM5(%`}N3%!WjEX?#+SWoa68^-{ z3lz#T%O^J+I*w#wdjLR`0Z2PeD-(8oKv6i;Sv-a)yr|T8PMnNCuhbNL@n;B!J+UBZ z8gSil(!xQ0l9MZEK4FbX8>A(@SR4n{MM`9kwH?OaQWNFgJ6xD3FYW1d4=IW)*<VY2 zFF^5hdS`_NVv1KxDW0~5&!Rq8I6?-m==QoDZJJaB^(zIbU)v4pIv&?<Y*Y*0@dI<D zwuf|bl=_TmcyDzC(9$k!4UNs7d+{MyT>WrfCSs(kw<a032nkL%n|b@@=29MaV-Odk z%7BgQ7!v=(fjyufJ%WRieRjcxD;uF^U)|=q2_exyueQ>qIx0b)ldZ<$Z#i=RlM>N4 z^MC*EgmJRg-?22!m8*v<V8>MvkRLCOt(ES$5CYGZJkpV$r;umQ^t$dZdjPFxjakRs zG?LTz0VN^m+&!}&NJ-_Y1LeWA-VU3JR)x;KDYs1}zU!^icBJv@hQ0`e{TLQI7%(8I z#v%S$I$=Ak_7I+hV7@=?JAk};`@YRh0cG@^Vd@6bCd(Xb%X2|>*yt24*#e|7Xqtvv zGK{8fz91!dJt0*HC=6Q_rSc%rM8c?e%b86bPby!iTp#5G$P3QRgjV0_RxivfH1F`| z@7T^Sc5(M|xOTjqTlezu?%T7wcpqvf?z)lEWZYUq0yEAP`qtlMH0N`I=aMrm`g*+I zN^~z|Of>drng|<SJTtIR<;5mh<lkc-(ak@8lRu3RvMw7m0EwY&Wx#N{w0{XyI3?hW zbrdw~W=ebg)^Qyx=?oG>03c_4NrZQnq;&Cx%FF`i>t?U{;kb)=UR-+CK(qAb(xnzO zeI8((yTL#+Hucj+*bs5vi_31K`XWWjRn4~}!;1^pk}~1pfSPBA$={wjF9f^foBAZI z+)8CR8A!BkOxz}~i}gr}zC0St+E3@Oe-RL<b~V@k@uXL~&+hu{@T~;~jRYeQT6+jM zDv_vuq>mPx)$j6f=neCIj{tY_oDq+8?jJ`AWf@W^1%B{YF=T!pvP6c9i6LwU4@I+O zVo`g@?$D{)KeGnw8#~OFsJ}<(Ttv9*daUU#<r)TM8+8YwZ6)Y8Bw$qDij8@CFmc_> zf+o#i-FAPhU5{{^)MAbuq<hy4n+0Q4tMvEjBcu*!^@fRLXCRATacEsJp2tByp9vMr z*gJB$A{dQn11$Aqwi5?$cXjiNqY|7?LIf}EdFG?7l6YBW%u8K28{|sg1l#Cb2lo*f z+lw#xS~%tjecK5nJh?f#9c$NK&`jL*tJ>ks;vFI6)C7(D$kZw<glh*yLzaO&-@z`J zd}za!7h+1Q*<~IOUoZ}vptdw_c30W4O*kTZw2M)Da9pmWok5kW1=k(ww_rF(eAsZO zE@|4nru`wG&8`l&W*OXkSfPR^dj*p3<n7G>f=W|%QPfp)+`_bP9+|l9epWdAJZ=Y1 zHOUGOG67%P^A%({7v`1$az;~C^(*)|FKb!zen^QX;2_<}m++)ck<K*z+!Dm$a}Yy( z?e(1pkgQF=Sfxp&cW<2o8eMem62_n2y>NQF9<4SP2#>#opIvO1!JpnsWqIa4zrc$h zfB7?8z`&kc9j$%9h?njYfyEY52A3i6hOm8J=^sGc^5*`?nb~hP`SCo$Jao;Emvc=B z??eL+&4Z%(>QDaiz~eRG=VBO-C|g#4|5?mWTHpW8#L&%|C9~N)f7^K`rwlH;-jfDy zkJRjEwbOuj{9HZ9UP>Z+<Wp@pmwNIvwV~;&oW;54x{58gO68zWGKIegYkux2-c2fS z1Oj!pi(P&8{<Y!O3qyc7PlLd;cg_j`q|*5X9|0<;L3^@j0Imo0T!{X~oP!(l&Ea5} zt8k`vKCM}9%ovmG1Tf96fr|M!4jLEmCVPE>MC{<*&t#Tsdx+>@#*U|h7Sa3{6r6Ao zCb#Jvl3Lu&ZRC~+na;xf%M`iVL6Z+SY?OM5UWC0Em59dsy5~5|{!WYL+{k)C^Wuk$ zTBT+=-n+&ZFIW$b$A7SYZ9#-E1jH0}vZPidDf(-w5HLtvv&DWm&cYf1cubih+sZlt zs3{dJW+!y**ZYGZDHKCoK%)&BP|$lK?vU-egZnTbrQ{4IdPc%d8)c5($(*cJNdVRI zq%J{yrB9ursI`y}dII}R0>^j9JbG5{eMMYuzbiP>8JOwklmB7PnEV<C=vj-P#9;+~ zq48M2qy(90l04Cy<#irjmQJ8}a|SkM9ilXy-GBMRacMc&=K&It@(1#xOi>q|3{DR3 z-!|3$+E@dQ#n7*I?7uQ2)ixwZ?an#6SKxxy6S3VdTVIZ(w@V5&`<HHnJiy)W<N<(d z0m$rg_CTHac;HvHH~wOF)-5K0*MDM^%?8-chZXI^u%+Z7yxKi0D=~f}xk0k`0YH?C zp<m<zp~q${V`OU`nf-{PR@*6!FCdadXe*aMBt?KA!W1!jJcMk2>`=Tl>2iFz;mAsS z`7Pr;+TXEOr!UfH0#y!qv6kS3qVBVOZDPA!awaT`+YKV1KG$lwH0-PPt?H2IaPGCr z!XkR2Hm;H!AP?Sa_eC>s3CX2A5^vzQ1iG**yS|b&Eo{ZrGbmY!jy(vJ(_h(y0zNK5 zDCw6dmw=sv=<h1*T*Y^wBzi~pWk!rM;6@qnI0GmIS)d@s0`!}bQ<;fmJI8~YMC(|F zd-T)Kw)G2k+$Pt;6nO$|4#ENTsSi8ezyWm3)BoAeZogTo<MsS#2+oyz+7lf)$MJFm z9B^E{u(_hF*zu9>FVT{r@&^{);1{es5&M8ssXBSpnqrE2Ll2OSF#uF3y_|8!2)l7@ z4y-?D0GK*Dg^KwdKQ^iXn(BFF8)W?P{gm$UJv)enkt4yCYJYeFK_u*lnYUj;7ON`d z*xQW_s_Fz;U9Q@+Pam)*ckbMJYxo6g!YCj;#RgPLLh52ZZv~zGtbd&KkN%nA1xhOW zO=P2)Jff^%6oTi@%mu#A6~zbIhs?I(gD1|0<pI{7f07BCj)4Q!%Pjn48@=en!EOxz zx)WZ#Emhl#q>rb)?+=pb?nU@0{Z{fuUfYk;hPlJ=7shd0)%8FR*%VFK&gdbso4?IA zab@yYT6Sw>NH$U)Z5w%#weHMwg>V$|Q9&Ues=pfY0i2+DY85nWnw2rgRrTxNx~fhx z3?bSXVtDJrCL1Zn?7kF>L1n9MKOHX|sT*Mih$eF43rWq!d87%Yd`(4QGiXY0%7&Fs zJg{p|YXBA7InFVm#5X#OJj54Mo3D4e6{iwy7C5+Bcpwhb1_bsU8y~;Lfs*Kb=O)sL z(Z$1X-zy&<r{5Du%U1e8_4o$qivmZFt-VY7cqcF{c%3d(SfDQln`mzMm{2C6%%Y`a z6QmhU_*Z?o2w#XYH)T8<ob33K`{KKX!k-({8o|aPvH*uiB54!Je8z!CFzHf-MLkn9 zarDyK0G2~yR&+I9?X2E*aeK`flrs9vOQ6q?izsU_F81dg5(Ye&765By7gb*pw!^HS zu|o$q`H$G(4{O1KtO8qG^Zf)&o*`2Br1S=h<dhM=^Ra52M8umac$C%)e?=s>linpE z<ZyOWOuX!NJNYd1D^0DAC2vVtgm=QS4u`9^Esx~M!BoMEfzRd_WUdN0*Orznek-O4 z0NxJsh&c&eJ&1>7(?q*AM@ueTdaF86D0cnw-ZE#L7o`ej&PtTLGtXkyh1RCe!SZwD zrn)zImKNTULjys!wRD!V4p&bF+dX@kIc=!ZfU6#6ox<80XW44CnI9Nj*BzT(&rF3K zm5X%~yOSAv^S39)2isCHIgRcwt=(^zQ;2njJ9sP-Fz+aWVf5Y71p2|2jMrR|TdxCI z9{zM|Zf<6{Ntrc4)Brc&3XAw%2RdgkO}V);-LT-w%V`RV7w=DP?;o*ubvQG~7C=+2 zwpkGKAjPp6m^%A(VO?E<Zsjwrc_`V!l9Q8RM~ChR<wn(yoD?dD4{_;t7=aq-1&6u> z!`)~330XzkDn|AtecIraOF>2vb|Z}UAtmLbgW<e+c{sM4Y^0J+=!;`Y#G3GZv<ByI z)Zf^Ultrk!G2`jr#$Rdn-Av&p;OyM1Yjf-d>5zL$-8#wT@I4pp?9YeqWi_{;y-q(+ zfZCL)3Ebyf^T+03;M?AsrHvKK>avW@+MBU?$Icw=T(9-MM*y*Xe~_^hU@&XK1UAW> zzpZpi0l{EGAlhfQ9-ck5G%!RUCS-BO{*QyO1nFT!u)Q)UDsr>13CE9jt2GFs+5jJf zRSZa(YrL$J3yW)*RP|T`uX&+TX;M0>RxHUC&Jq_Ui$?NxW}~+85GA#-sj!E!)0t0X zFg6oiacXz&u$R(qctwc&%#DXf)FZwr(ZSyd)#=Fx2t+iee(P;b^m1<T=YwfRrJ>K{ z9$=pav*P{5mwQy#lVpAlW4Ht7($QC`pY8*BiApD+vU?}RCxBr+na9B~6b3-;;+(u0 zw8(>vAf*jqvjpcy^7!Xk1{xB**ZIf^bgZEgG{szA$8g^)Bt+x-ab{cZk8ofyQ&8p| z&aU0=|LbNdo+Fz@Cr(iT%U^7hwhOSeU;68=9|aT*Wt(l7ZMJ?fEg1z>?xOnn%v7|G z0@LBZFqHZE(>DOLM8oM-7?rR7JfLi^_UC;+;ka_qP`lKBe>D_-IbLlQfpNrmPtkqc zEQ25Rb?~ENh88)oxrLH0r`I@uVt$M*3TiTnU3aDu$Y<;KJF(UFvT3l99<6?KaC^Np zI+$kA!BhZ)AT^+b`lWl)?Z5153o{<s*3k{a*KMJyYt;=#Vj^7ATChXF6s~~xpm3hA zyX;T+_El{PG`;W6?9XI>*u7stPD+A3I39C*tb<zbk={<9GxnWDm0g8=wLH^Q@z2Mo z3J*LWtK&WA=Tco!#c<MHD)@@B3r4JJYc)f;YIHfT+tKb%yh)!5_u3!A1arM|HKN<a zGdtiu&6#(=xJ_pFbc^b2bWBFR*$e)$D9NL+7=X&*dcHkA)*F*`UL$)(?ooWFN2Jbd ztOMB8BNH~zbInw$FF-9b;<wl)<au`Zp0wCWUv-hSZJx;YlK8!SR8MlR9na2zwsou8 znZDMn40Hv<48%J(x0X9epUc!KGCp-w(6Yo>vrFQYNh}2wjgBu2f{ZRD(yI7P1L^6R z%QD^;U`=@D|0?wQUo^O*`^fbEpT#y`1Dt@dTb0RZvCg6R^=6?{#P;n(V{+5tdtL&E z)AzEigmqHVXTq~dx5L?Ur7zw$x8A6DLZb2-^Mkc~<jAQfMoQ4+JQ@`d<b_7LiACA- zV<lUuyC#R*@ME-hcekJps06(}@jAhFDVuieduougybA@aQb)_gakjk_;}(I{vu6M* zvyE|*B7*!ypvqsBWbk>$7C768l|w3bkrLP-2gEg5`sgF%8lu#0FM8J%0QvF+MIfxo z@ja1$Hzsb)^~#rVAsuh7{)$=wttaJC|H~vJEP5q#hSm2v*kW;pYYgWOtz#i2bV(2C z74y9K9eQXt-~fF<OgdlSM#Bm-a@{8F)=aAetzxg|Z0$&5Xmd`(yl0Qa^W>Hn@p12M zE<k+owNj$_gAcEoNq>pl{*@l@|B4UxAFaf&l^$Ik`CPAWVjBrNF_{u%wM2f7u<>kN z<Q5jC2+4z|>2HOz6LCIGLwV&mQ0vIE-2v^pT&li10uXO)a8mi8=lT9NcCA$_Gw3^W z4WyC6_@G9iSvHEV@T(X68+hxFC`k;9(=AM<ZKd0qK-6IgZix@(Q6>6VP9vt*Z}_{U z+h<&PtKY$<v)in4cz!+1#H4lO*TXvxKGvGqDSw_(LgKbz$Wdh$sx{mphYk@EW;lMh zb$s2a>NR0*Rc?24Bkr!>efMsp{F~Si!b1gXa+_~&V!x(Y#nRT;W1V->bbP3Fy5^P8 zG{&;-{VmL(g85MF)a<a`i?XPm)f^MFj*kaVv=Z9Bv!OW>Q6$U}{NUNPzY0GfU4kD( zFD=JJDhxu~rERDIO1HhpwCfdvVDq1bS;Yd17kjs8P{G|-^fhh7Iv(`LC8}BPJy6ZK zla1_9^`o2TDpcVvGid}r#D+G1=oU4B&V3~f4sqneWtS#}`y5%O8719axrc?q4b302 zpe2^oFN|e>@a`zNEX;aqj(HFw=vCZyfL<jFtTMH}P}v1I-d$5GI9@#G$`ujt@Bzh0 zIE+f&=6-VBs1}f5Ru&pAeO}^l=&vy_LYS*TD)VK`l^%YfAsYhPBHEhaFXpfll%ZTy zQ@KeeaG8Am=Q;mx<~!IgvcpHjLcJOQS*ZiNQ*CEW(MSN3T&Ly@!-La@iQX8_*2K71 zVPKt@1M$~Ua^UaQ>L!1?R#zDox7L0V!Kb6}R_>REP74q`ss9G2#)A+hu6RP2``Y7t z{Cz)3z4F?XB)VaFQR~v@rB#p#Kzk7d+DnQ~4d)W=<!7G7zX);~_>v<#ho^^|0Qn;t z(4=KA(DQ}Rq-MG@e}E=MKh3J0ww%CO(=(y}>d-y=I@cZ?x&telw(yJ+D#TJdhUbG7 z{=)QxX7VTZ4;RBq+uO^up{37DT%3mWjji;+dTH8UrIWT{#S754%zdfF!zmTe0!@Tf zYhKd_tE$9<YzmT6%7uP<?cF!N=BY0@x|e9FMvVZ_FwX&wPUq}vp%dN+M<<xX@&`CN z^fP_M(S7gDyeJMNg#XYt^CeJ<6JG#qLkdxfX_dWyOes!8ht}8KB8sTbR}OIgs{VY8 ziDLlu2m1}h^BCH1jbE8u11poekJ<es%?g&XvUZ$a;w~+HUPAQ&e(p8G&rP|eFXQJ9 z;E9nB(ef9BIOM;X{?V=8qbG<vW-w9qr`ax0y?kAOX7>eAbrmf@J5UCQ%8$U-RQd=9 z789^F4L8RW|Cp_*^zGV>XtZ{Nvuu@>x9=PrSI6!ye6tB0zg!y6{pthmmszOT&#kXz z0g$1$aTK1qwEP(l>SKXL;7tfVXLGD&89wKaUz2kJmeJw!uTKuP^c@>0G%J5xJEioq zfU3>Y6_<N&7}=h*7qyYSXx#VQ4l^KyP2z1W_0R5`9$?)4T24@Hs@XJPbCLA9iV10r zrpMaBt04C^0<5t2yfFOgV&6H*D=3AyI>*ymI&HQ%ajgt?n9#WgDtAzSei+bd5}j|& zAsm0iJ&OEldf@|XMOVYU1GS%IBYWxcl%oq1BACA<;$Eoy+rF$qfD}JYbTH8G3>W)A z^<d{cSSN!|K3xr1N<JNMFn<}!i;_>PGlajd8_{uQPP9VT{Es@${`(94St<4(_X~YU zBy4B*4Q3oSoH^g{`Ca0DaohJ>+C!e0&I^h9A4pa(Z81|t=h><0caQcP$UQYQXPoLB z)C|&G)33GpMOG8j&w#z?VEg5B!lz}@FMPL6^-hh#&bX!Y?twCVdN;~HC;g+mKT7ZZ zL2eCyJ*MAWS-thm^;iqe5GwVp4aV0UO9xnwW?Q8dRpiXuy%hlf$9>nPbIup|mC(V( z`R`a|{PQ2W7zv^`O*yP%O~L%vC-g@^|F-O2kChMX4^v<tkQ8RFvjdYetmv$_Gcm9# z$ozcP``{~P^-z4}FXrvL0#j$>nA;ce;M1y2g|G{Ca8-Oo)E#=2P66{g{I>V4f7TrR z)b;`62*RB(AG>@yD>_c@wFfH*@JpaL6Inbc?&CbFDKG$vTb;)LUK3P9YCF4b7$XMD zvsX7k$(u<Das*|xrW8o&L3<VDs`uzq<qA~3DBj4HHYB_^oc;*Wn;{pylKrr})PIdB z=Pb23$H9cOQNPTUDW~kkN@qbQid9hVp*&iH?}*JbOJQ(D1-n!gYZ<lyc}hgOG$oIO zY~sT8A*$*|vHqWBbUR}kVe4DyWF2hr$W+`bI^t+LhQ*y&r^UjqYt0g8@F78NRs8p_ zUxNRkHN8-C9RzMQVTn8?OzWe(r#ur`2SbT?ytna+lGpQHZiqk|-~a9d>_4==|K}g^ z`1$w0aR>C@U+B;Hpa1=Z{`(7s)%{~S!+)Ql|2{+ieTI;-_s>-G&|4;LL~wn&y1dAd z>%$}Q>_v5+EA!_}2i|QEdaHYJtxWlyl=FF@vfy`v;~6E?J$OdRnNszZzCALCQSt}0 z>;Gth&yt!T`~bmxho-{=O`}v3<{9UKq|o^$Pv`zMTHByD-yUt?mLO;3a@>x<|CM`^ zDKW6Z-MqsIHM(x;*d9h2)u_B2chGUp=C5?I@AWg7$KUN|{_Tf4(D7;561{oT_YP;1 zXgeL^+yw$@(cUNSKHd(-E+1_AIjv?~tF=lx@~+*g%G(IPA@BR0*a@_erQ+JzfJeOB z(bP<Ulz^S;V4gS9=I?<v-@&Bp$o@nB!+)|ikAIu>2(Ew5u~V_1s;M@ujxQ`~(|_$Y zAllhKHgb}yB#SkeDZ@ZWnRSn7^wZwH<Dr`p<UDep3$2$qpRXjP2`06Idtg%YBIFf` zLQ2l($cP=X&km&icw?E~w;RjQ3^F?3>T4?TT+2qReB1hXhRH6YUQyIyA1t}6h4yC8 z8RMx6qSFD<fJaGy+=K;20~{F0#`<YSBVslUa?x6q&yFSl+@kmxjX{$CAlmRblr`P@ zsg1v0gQ&p)x6n1!WW=>q=%qcv3!!XJyk;TVxhf<i*YAiQ4`_<IP%o~KI7F^9d3OG8 zJ+jyb$MZ=o&S?GOQc!H!D`dC~!<3oqFzh`L7AJY(I6u!t9L3fB9YGh7H3y;?(|tQ# zRWh%eaHq&gC!2561E9tugmHrmQQgZ}RZa5^K8fdEr*FZInvRE5hbpmx1~Y4dQ4-Rr z>-DU05klWYwCV&icqE_oYJWDj;P7vydd(vl^7Tss`m!OML2igIQ0XP3F2Unk0^`0x z%Ocmd`E$o!;r3FEzOpPPkIhoUd<YW7n(>TX7_QoIf{a}^U8ri0qpmdt%f~~y>A#ho zpmu=?jVw%P9&LKsA%)bGBQT*c-Wv0E+Yg=0fAs)|)amKD`76D_G}{=(9wD^eTu2(^ ztuU~zHcTHP)24I15v;=Nx$Ge`qwcjc9TB}oI}2muOh)r5DY@=IlF<ZN?qjutGd1{N zTb)vZ);&ncs>_PaYBgwi%V09c%h(rVUYCP^XD`aX2w699%#!#BJjKgc%q&OlNl5K| zc%!Z(gn~+V&H1r?TLqa3Ev^eRw(d&xat;}UFUIhNkk?59nVRXq)GT}>+<1NCD+2Dy zHH|^*5ul@$9w-@2`@b`ey|$ZtO2)F)Dxw)+V(e6#+-A{=Rw_~Ji4(X*2)S?1c>_r~ zwci#+YfQjYE<F2LQe1i7A)}l<HgmT)>?-c+jR^J`af!@jo!=T2>LI2K8SRv+j<kXl zVM&kRI^@)7*4#dNGIR;)w`voL>9FSaR%<VxqX*|l>(qQZvu#4>M<;R0TW&0A9$^jl z-01!3PoA)(#a=_yxr&J$Ct5^VU;;dIhnHYr=(w*q7QO68A|oCK(`a)(Aph-TT=S?Z zQP<2BS{Zj)$4i1V%{mV|&rj*Tx|y)1grQtnHRvK03Fh(pifTchX6Ma?Jm(Z$N-EeL zIP^@c?!<6ZtYngZ{Pw3CLq3}m5C}3Cle~#<l=yP_#@Y?)jX~mzg6|Ry!Ib_YKV<8H z{iUE4>c;n*J}(Wy5crUJE`NCZsqJur1Dq82v>xPj>Z*MAQqk$*#kxvAny7Qf_degs zE*`X7)9Oy3BKX%gB##w79qgjAxI}0$d|Nq9vtkPA;?xGi4^`7TSAFRz3>geeWH)1K zYz?CS;osk^Kj!s&@Z)aObR;JAg5+ljSYFS~+Xb4}dM1_$o#d<6aQrmf(FO~exhQcA z1*CLBNxExxP|q5qb@}jUzo&o&jKkD&`Vj6wQLb${JAdOPY1U6Hz2BKPex2dOiWh*( zVPm$O@L<xmY*V+7A>l@0c+q~&jHzIEzt$$^7H*6ZfCCjfv-czP9DPD{7nL5Vj0bZV z|7Mvw$mMPL^4agw1{t|!il8J^E&M~+;joikj%_nOA`_oZnl4l_JaTN!a+KYttazw8 zF=X)LzGeS2e&6;Vk0NE=%fyMBb!G}~=)D1haoOMPuJEOAjyvu|8P{r$9n95bB_%*s zX_O&O|MdJ4HNmUK`QiP+v##KOzU1U~ndl9<tiYj^#;Y$sW{;dbe}S1Rd*&JN8|9II zSac^9$44|qXURKqZ=aOuu3x;ye!cICY}uYg_tu1oY%(|x9E{Bdc#AgTp=fM0kXvD+ zEPdt$PRcKSy2J)X2z~KgD^M3BdF{}6xp>aL3E2BQJ(fM46+44-BB9)F{;Z<jsOq`Y zR(o!R865ko)Mqnc(vT{BLTf+MkzYSM-cyovrTTs_gK5#Ov7qTp9XD2s@lyU0A~KPk zz!vgVkP|(d%XMob7N~^#YVKOJTImS(MTXw*G;`yW<MeP^8r{RTr04|M6vpQ`voVf2 z=_Vyib|T%bh2ZfAfnwD=Ty(9`Q=*%`w|s}**UyUZnS(9M1Y>BfSVgcei%`S6!RT_i zXHx_%myMyIEb9(VC=MDbrmpT-&6WHY3CkzRhQRs6E+;noTt92Fb__6GO#B44aHL|? z7rWFElQzFZ1qHAyz^2NFqY*HEdb`^Jm})A$CzJIE>TRj?Au8z!L7vlO$B9qkPle)r zKS#)60az2c2HWPNK+9SFOnMYT2Q2<z5g_`3Mc~wI(QWk?6!vMSA>4@h<idrBp)vcc zflyfj8*5n*TL}U7cr1rh5yFtW8xFaLkn)b*fk1NafdE8;Abhrc3c**cE}^5a95@k2 zL*D?NL%zVxrf2PE$mz%~PO9UQ<LoMrQX)J|qU+%7!u#s#<Ws1;Flm|HqUUDLgF?Au z90+S;(nfXigb^)SLvOq^Vu)5$QMrWo8%v{1?#kz6_>2z9W&^7`Zy}Nk_O$)pecEef z{u$$!KW<k5S%QF%^RU2~L#?V2Dm(4&4}Mal1inD9!p)cCI9w>Xe1HukWti5r-3o%g zHU<O&rkLY?Vs`1bHS5$J>}Dq-#5sY`r!+`1Sxd058KVY1I;Xa?Pe}V7R3@Lso3>g6 zx9YiJ4x`7Pf(rN&in~3%51%yRXna-3lfShw=<rD$_?*Z6absi9327aXFQ235uP0@R z<jHb89UP2;e2i$Q;WAkEYk3%HtL3xz0-kA8`EXd10sA-;+cLb@^-hjDun~{8u*~O% zjkx&Q<FIWd(>XZ1hN~}QFtBb{v3M37-d+BBuh^((E|?ZGbIR#M_`?*Q`R$sA6W>-` zi<{k$k2Nb3jF{<XiwM~5xQ?uh#{ys|T_M^D_`m<CG<letQY`@aFiHb{f4XloFOc{K z_;~!JCKGbSTEv22x3QU?2P*#s!Rsc(cXs?d@`Q0sQmkGp^m~tUEv$Pz#XqvL?iIBH ziZ0_{!4c8v+h9z)<&yX}Tl<jP^?e@c(Rer%56?{xbKzz@aC=~bx3VeGn_;_Qo3W8R zvJ!w<Ft4LEzF`a5=-y;PjU8swEtZsAo=)ZRl61^~Auuc9ss<Qt-e%z<NH)4~?`pu! z^~aV#EQ#qZ7VO$CzIo6RsL&rjMzVAS2wb%0mRU)wQvBqy-Sp*UyQ{2Ifkn-><E3M7 zh{!0+A3?PmKXX(jq>TKUA-evd8aYqAX~$0S*<v|NHg?DxwvJ!eEcE&5qX1{U{k)4L zG7H%wPFxh`;b+CmMaHG&&8WFA-41{N$jb#0-nE-@Fuk1&xa%gi?(t0quLCzHZ92DP z{JZFN<gr$uD?)tDMe<avHxrqmA(XOOPu9Rj<i_h9E_v%T?Hx!NxbixE`7FK9DV!D1 zb0>z*t%GXzfAQ^(H8qx~65++!z!lfE@?!XOmnZ^>Hy#lt4CqA0iWp7vNckzajO-xG z%&E3rua3a@Y$(yX%@3m#BHqJd@eKbQxb<6QwLZPOXWD*q-Fxf)n7S!jg>}3}pH6$| z9auyQ#z$D=UX-xv8|I2^9KcTYpZASDJ3G8Z?e3=Fk<%;;G{0O7a-OB{w%QyMKfAr9 zhne?2sY7l_K?fQ9Bi#(rp0im`|A^6m>j`NqE{UL(-$c(hd#z!FJR+a2z9h2#z@%HO z8WV}pT)2N*6>Do3F-(4cQJg&RNL7B;%JX!6=-x9ymSzi!RleD0M5I&udgAgndv73T zp}^TfJpR46oERH|;Y$1SUI_~cnXv~-9|d5#xgJvsUHg1B#eV!rTM;6Gt=tpJgFPX~ zwyCuWVID}_$L7;&wv7i(11-(vQ8>$$9i;syW?IdoXhsv<3!;y|eoGY9`{6zP+dOsD zM=~Vwh|JRju|8FMSQhKeSTP|R`AD2thO2zvM<A!2fP;<~4!ScWy4JsO2af8dZ!V-@ z2WZ1#y;4nyCt;4b1?$<;fF74axS2YeVkMj5hOrxlwG%;Y;|nVKYPM~nDfOy`f<uqB z9>}O9c8jRfG7NOhJ?%{^nlhw>azf2q#_0dCch+H5rfb_rQ7jM@1!)x&R0L^h6$FtI zQ9=-;1f-;;O;9P3ZV3tLkdjc4?rsnyq`T|8?u9k8M`y?E{qFZYzWHl0a~v}c>v`_` ziu3%PvpElWUX3AE^=&JD5-d}*u(BW?JghS259hTvgV0|CXZbqPW#P%d2H)CFA2%Hb z4Zx5(@MZTi(2ZmdW#HSMU#tRUINzsE?gYYt9{}SfpmYGhxJ|uR?yGr>UHTN&3ltUV z@o+hma`mDOIIBv*Y<xn9tmf_xj#ryL<~`npP|_!zxjs2Et1V1)7pxZ{S|2mH)x>+q zJumO^CO2(92TZl*hMddEn{M7s)Tt9=zcD%eak)W8$pdf!mpy?H8LZq5K5^+R&G1Dn zLcBLRIY2Ntc}A;cCWU~6#BM8?g;FIWmqe;kS#+{kNij|B`MN8-Y+F=FuQ&Tww0_#E zJO7mR%NT-!8?5uc4Ya2yT9Lr-Vu%m4xXO69xQLI6--VBL?46=uL0r^ye5NenYL|Ay ziYM<RJ^NYgvq4zW)?(y<W5f3*F~>*{PEamPOw=PbRfT<XYNy3;h<O(jDAFtYLMOD? zHu*EE+LZ@zr7av4wH(WsD(eJ}k_Q}UX^~}*l%`VN<B-Of8bZ&T_K5F&k^6Be>E%Tz zVb!1!dz=gPtOjwL&MnzMh5XGXp{#Cdd~vL0wIf%p14NhEIv9O{QRA;NZaY#HlS5Hs z9Ml~0B|s6~JmAhZpLi19W<+BaozI;j$2r5*<<^yRI_>n`LW;L##Fja^uO>I1vG_tg zX{)Y|BE4f>d`qDvhx}4)=JVQNT*T0{O|0rds@Yrk7tX)d<}?YOGCBe+?gYr^r&8Xw zL3Q(%%jO!dC3qyAKnP+D4-|{Sq{}8Tdn;9N>w*hc11SRWWYD9=f;Ho^=}+%7+VBgq zL42oHjY3sEL?j_Y)O0oX`pWdwn|Nz6G>=-Jz+XQEzF}I&3Lj=6Jt${;)Z?q4>!X{( zl}aep*cj@VvRw>WhX`oI-QlXRF7Sq9PMnZV_RuzR<L5ew1%wy!-%hlR(dR7m^mM06 zh6<L@z}?c*g?JAos7&l>?%$=(6Tk|rNI(iDHAu_Hno=MNmuL`g_QE_=Oi>dNi&{A& z;mXYId+g3%(6o{D!hedh!3XK2W11UolEA?uQM28w9VN7ngZI8rn>C8iL9klz!M2Y5 zZd``YAbd6_8T^eeGT!~LLu0>fsf|igJ^Px8Zx-WpSyH!9L~&tIc4SQ3o3*=*SA&jU zo@HfS$=lA`w>=CQQan`2ooxU@+zX5$I+A(oF{2<iJofg4)0yCWfCgE<cWrr`VTc{E z^^ptGlW(OPKM9CjrSSK2UrbLp_|gO7Cr><b{Zaei>!6#%_IxYBV3HI>r0@nC8z_(u z;Ir5OkCK)ItN-9zaLK#dH|C$e`<Z{3;P$O<^~KD3r@L}O+PA`5qLw&)=5#YvS@3OJ zijHflr*GRiEH#~hvz#pZmOEsScM<|BFslzBN%X^`^)1-O-u$lS+DF@5MH}XU#k`Mv zYqN@mjh!dguRIBl_{WYz{KXyctNBp>n1ll05zfZ*lwu%5a#6mPy9uUp#R>7VP+%4D zn)Ta;&+=f8F<YsY{r+*iR%N|FP-+X4*G1y_{`<f4%lt&>8*P-HyS_T!x7@XEBaaPr zvnyP)sbo!7jL`v@?#UF*Ch)LaxW>-3Ku7M7pSMe0X>~}Z56-+(zI%~tl}V>L;lQyr zL<wO?|G0UF(-LAZ6<c;KcbZ0gnw!S>nHEH8{=qzrfvzPU^T7vI`yaA%PR8^|v`7Gu zE00UxHA8CsTqmot8S%W6d}-#5VV402;XMBCyIdQ3F$LSz*(t!el{Cuhp90E}T**g( zYxX)Qt*F%0j{~*N1Ar&;w<>&56`72<4kw);(IF1X>ClA>SCkg=h^_}VL+f>T9kMtS zSFU(m9v@tkOV#o5hYEb(nk5V{%K)z8qdo#pumZ*PW4kuIKrE82-s)exK;|Q>E~`Eb zO;q?TiyywmGa$85=-^!WLm`wal_5{wA6!wp31%=W7IXf2AM0WH(c(6zrIqE!nmsVz zuG&smFyCR+PB`U8!0U?3)ZA*&>cM2TwmHMPbTVnc^V1964;1&pi(b@{+lLQNIVReL z7hN72V?<><d)TI%W<r@OElo&=f1c;nN;|FgegDgH5Bi)3NN9^BK7H29394IIyO!`C zZrJ_bZ`eacy>J%N%y&~_qxv4*t?Li9FHrb4B=G2wx|U>TC0()Ce%Uf{+N#N*ZHN&< zFe%DT$U~7&O8&Q^OnAt;3u3xf$IPOMWz+8jb5EBu*XG);hiG+G2lK1vuFh!>es<;> zdtTr`6hD`YD1>?X^JMIL3N_{9tK+u0Kw-#K$9{KbBFlWb_u0ufTE!{Ar>TJzM-%5D z?<g2n*O7IW5d}baz%3nYMC;=cgG^vz{ldvO)8M0<I^2{Y^UM)5*L&*EG{eb9s5|a| z!-uM74u0T*9~|XdLaXPJws3J#eE*@&MX0ULM~m!!YFfm?5^Ejx$_`5KH4R+r!z444 z|KQLm73zob)D3`XS@37QRdE!mhukeE9GAz;a^+bNr_%S0-yOnlO@VG&hqN=_+JYwy zVO*C8eMZ<qi=0NlQJDKEG1AwE+^Y1KW7&h7^I)7zHQy|1C;~J0<7IaGYTf%&yA+xT zYv5tApIPSKK@6whP<j4qIprWd%DwR9ZKS$<^2Y?ozFv%my;%tgko`scF1iXMNf)N@ zJ4+BE@avYx*2uSbB!VPW3#*yq6O`sR%=B5Vl5r}irFF=+`K_uwT+E@|*E0X|Zcs-2 z{Xiq-DW7qci?{>J6=kGd$E^s<2?iIZ7xb%Fsajl?3ZH*9c_47*?^g&u%o@&CtHVlO z5Q~$p`Jrj$k)4eTjNK=jst=yddj2N7>e~b`kXx?Mg)&z~R<oW+@gwJ0`X@Cgt(68R zP}YuK&SHO07uXXSI6mIPezrc2h!kW86}fli<cVkijW#C+#x+Zq-RT-JCLAq8YTv^d z&$oY}p^$qQTNAXsKOTF){^cmIvS1rr4x{LWhW!y2=B5NCCPdK*wSC$Ey0bg>zzId0 z7`}8TZN?YV2k<f>3|l*pejf)jSDp!7C=jiXNRH|P44oQqlaq`GYeVMt+1#%~*C22r z^cjr-qhSb^K*C(yAz(1k4GDHn1J|^4WpR3!ADl$yllp+8dOjf%mB--33H(zB+g*>B zFFWj<4S*J-7??VqCOYP~&FMB=pjF&j8XhJ|Xin&+QKQjXd4!|D^wErMCBNyCs488^ zAfvl+(aXV1Zq=CJ@1J9X2NT0)3SHkeC<|ksMUPaNh1|J+i~T~E4GULnKfh6~q^f{v z^P4xi@LxMUp8%e`hf7?%@T^Rw%}}6(z?bR*$iE074cfP{7NGqnVlaAK#kX3=R|2O? z)8{PMEWB?9z(k*qM&R)gJFj<nWj8Bu?ghVB0`IZR0&WO};+b7R6Um{@oR>`74TP)@ zJtG{(c#6)P+b8O(a1kL$j)d+j7GS0}-1mh*f`)+v_mATWwH-KQdULbxIF@hTVMKA? z4HS3svnS0V#C_jQd;8GQ(f2=}6y>eHM+4w(JMuLEpvq)1qqzv3e|k@s#oCbwrS+vI zLl^)YP%Q$4GMWb?UXx}I5P{lCiul$h575k_A~Vo-&Ai2YAiyD0YypG+hkBA|olmFv zbc<oxDTnKqHIJmjma+^^mp46LTzw?+f!8U%TvtF<l2Z@R5xTfO&?`6NlbT#?t-*DE ziErRAmvuNJVGV4FGF7X;ZHzWP1E_Tdfm(|@h7!WQ>9t?}Tf6{qtyrg7Hj}04YPZ3x zN_k8f?5o>m&8(9CXqTMtAlJP$b|S9{I<VBdbF_gs3<?eubVY~<oIoSN&}m@67NdBe zsooMMo0WwFpXf7s_w8W6(5;>@ai#fn5bU5uP+i&cDiO$Dr5pqPR75w7UFqbK!d}H! zKe_`ApGWR$TdoHb?nC*PQ)Myp#6IDDTF$-a5kPxCF`5~}JP}L8fVLHwAMb&%jwPZ6 zpSLj8;C|UFe*3HpApls3*aVuEmYSeOuZoo4NMQd#GG6;sG*Sk!voD;A7@%1>5)N2i z*<<4V>9x5CjJ$7cW<>|iGqh2HFW5wSWtz1~fht*}N-=8F&4und3BFUXIv;(eG_rr~ zRJ~8$WOSn$Y?2N~Xm4ziGN-8;Nru%hy8yWvh@I-mVa8A$lj>BzZj3POMwP9Y?Gfhl zZTNgt+J-x$Z3_3{RuU|b^J*MxDBJ0)M=9}_UM}Cj#y?*o5_hXy4>(J{>$#3zeT1<4 zxfg#PV?@obX}OR7&3nzaB&8dlJ>c`sLNzM*BGi8NML3B@%4fl?QGmThCFuBEjIBig zrhL`4!nCRON=FWiG2}7WUN`G7k#~LzbOUt+GQhX`h<$R^YH_M>3Lp~u*HYUJ%M@*E zuEr&1&XmeWV|)OM95qk3HkQBuhRcpygu^C)tioD@roNOspWn1^!Nh{axAS;Lr3-%@ z7m^ETT1516^6eJes9k1I?c&+4tI;ma^X%I+_d$4D5rJ5m#`m?|9HHMAUWgh@*W6)S zDQ{o%0i)g0td|lEmxvetIV=;c@`iA7Rvwxm=Jd_~X`}QXY~$&u+{T9Cru3p*o3J;8 z0He}$gHN@1G3r8?%dTBx^WSZ4{k7yYR%JR`Y4sAO?*`(Y^vYe>L``+$+sb14q;*1@ zmRiV8GKWS%u56El_vv%MTRS~GL4zr<7W<+isKp-AJuKOw{+>kFUHcHpwbc8)pOb=} z*vhR1Szgm&XW%5=6k{sA?*B-{`m_nQNmvO^i8VEq6yLo!vgBGX&NcQ>E7Uv$iiXqc zru!I#$WJF->W>_>Og3Z2-jYGbByoi41(dIl3%E)i&`4q2$59h`bz8{j>ocKF!J{>i z^*AA;w`tvQgGYta>v2NAeZC5xPaJe}f`tc4()*)@2SPGpxP730NP*{_@*>~eQ`{jN z<*J+aKT@v#-1?)y%9gt}8{Y?7ij!;R%?Zj(cPDO|10YKV*N@vg$&r#TXJHwQ@M=XE zPOaqvgev;6IZTM55w-fjxgw0Q&)S#|9T%=URCd$wyj+4HX&=cGK@Z(S9GN<rp?F3? zd!0^{osGLsC+p^zL<o{gO3{w9<XTDR3@J;B>+x@%k{0q+d;aFk4w;#oBv^u>Lni1? zd*<JMF6DMrg?-fm{OK9>hyJ3!D;1#|kYHcxIn*Nj_7qRQtpl?s6}hati7Opls{td4 zMHB@t00%lDqhRnDQU%VYc9_a@tSx+Uu(bt3l^SgA_K~cTTYL^~RF<AZYb1i5v->>; zB}=z+1YcRWL|M*ynM7F&yZ7@YDmq;V^sL=3Li~}0_OV3Y%|?|2j^v~e=*h_W2D`*M zGI*qUkG4V4=c~KbPD#H{_uUJB%sbF<?k@UYZeMOT$9}ix{#Q>Dfg>Rpz;!e&S<880 zFaXMn@5Z+gV!!GI29W8rrNt}2YOpq<NZtUG%O=FP<cbhkyz?1V2kcqbV>Ob`4$FGY zVm5c%X5EvRK?l_PsFayb^}hB?T%G{clA6IgbgGY+9hqiIDa%+d2P(_$iYZXv;mH+9 zCdFYxBILGQ{Zh6PN85nIM&0GsDSDBF*-3QLU}Ee3!%&PrJnR2S5Qa&59oBQm-erzb zlx~jrn;X)x0@hH6;rjM+Bw@WY2Xk1DJi@hA2rF@YN<dQ@Y)^50Wdx>49uPBFf}$_n z#MoS+vJwNK4>mEc)!iC_1X5n4=k<{S&$;!_Sw;V+J?F3;;#upvZQko4v+JQ0%_x<I zL~F#x;NEHX{K2%xFy<m_*_dZR8ZuHEJhslX=0>B{Mhc{jHUi|Wej-}#t3%5>g?ik0 zo7rfU&%!hT)bcus7be%4H7ebKPAiC(tRj$ZrF?>AeHn=c#$o6f!yhyfj}S0eL&r;` z&aGk@o*%mChHHpN-CfF*?l(S=gk^BL)Y=YvhJrrh`%Xy@P5*y0@%kQD``>WKE|iLG z__Z@MM75V=+~(R#lAD?TG<n(HQZqT_eak@XX+!~0uw)u`lCcyS6?!>1O5AtwJulC; zhE84B!<2uM^}p*>F+!AoxJ_kneNHPsATw=NKDoB`iorTcbI(Cuq_1^iYrO~@?Cc}! z6YueDF3)vZ>d#IvTu-@JaVy>43MMV;AdS7v7JZYpUh2Gf2tbIFVAFK1+r2T<X!{C3 z+2-{<+jvvAq~qwAr%e%(<lFHD3+pW87X`k9$hKV(z(dT*HsU6n4$^*Sb_A#lQ?QnS z0k{#~k8>x>B`ou9pF*Co=Gb*Q%H?vd+&wDSTujn&Y)pzc4ZFx!)u$)R)TU#-qRy>W zEiaeku`ln(#jffc;ae9~GG80aNov}*E;G0CvG%i3u{GX||E?mdeu<L{kEXM2mNJ>t zWU0nUax|)fglzAV;HsUP!&6Bc5i05M{KCWZ98lN+Jj`oPPv6<+x@BnYhzxVh9*Pqr zESh^B#}}KwWOUs2jD<G5<zqnsi{kZA^93abHD7W?W8qJ)SV?r7ju7i_({<5!#j#Jf zDU4Wu*Z0pF@cC01&rV%^3HL9OGsQDgPxt?s!8))YkOLtPwCGg6K(5i8`OD4%_G|VW zFl`2}$BF>cMG~xIRKuCra1Pqz{=QQ{Ijw=Pjt_}aYM!^R+SrmB2u!XkEtbmk#-??? zfFJ<{7_W65%CySB=pZ0tlF*h9Mp}J0#x1;t_G=<8sonT#tA#tKj64$Rtlqz|U0*{< znV0<QT21!_C#t3EX<~gQFpt|rImVOSugBKCju&l<W1^XU#ky3Rmml#;6EWN`46n5A z@OKQ@`gr9*Y6k9QFPwYwt8&iVi@8moBX>8wiytRDl$&96gZOPjka}_~Nd}`+RVaQO zl|%phsS%vO?3SQqopqJ+<@J7vq@u2vjP9P-10KsHpE-z}ITvlECw2^2<~z=+J;Wo$ zBgmg0Sv114=}>tHw5+g9bv{n0H<d24PGCk(H}N);=WJ%MXrO+sUD6Z@DC`OWY&@({ zn$!6EAw8(z0@|73uP@&jxIlz(=sadAz#fOupuhE7O7t1Y%*k|JfI$B4jCjZCXGG3c zAs@akF#eb~!=I*sN%pP?8Sw$Q<wiO;BAS!IH|QL`d>U;|f2HX;&BnIA7_@#IP2wH8 zQR-Gry^dJW^D=y=b+o!hqiY?ICnoBJ6h2<&jje)}3AO+Dlf6_aqSATd$$_=;N_+ri zy?nG%OP6a$BT3g2cq7p~xMr~k7&Ko4(vVynO!sB*_6FIWK^ufKXoFxo>ap6p7_q#+ zkexDD!Fe5`l`-F2cG|p$rT*|qd7Wg1)Pr5cRJW}t)@~@tosNHhdSawv%|Bwf*gs;a zSZTe3X>k~vRBTp-7c)xk{uHsEv9P<FpmMe=r(MEst<OyN(Rj=B0ONq77b6k?w47S5 znb@VU;7+v%jS6pa6nb#@5@nwt*eOo^;B1Ft?@lEj`(UcgLCP1&^<tQAmfU_pM3mff zBXqKzJ(0KT^^#(ZY0$x626jL%Run}lDEWE%>7ODH&>PAD4+o1wk_N2yf4lwW@P+3C z0=~ge^mUxFY`lE;w`X%;A|xdXsa5)OV2Jb!lb>XEwQVI*IHaGuno4FpQ<GFD&NWNY zi1rD^{OIInQqJ2le0<L+x)S?|A_DjEY)!(Wrg6v9bytqNPb(_7%{8>_8GGrOd16WL zB)lGyVmr3h)7l288;v4Wd+)2}-Y&E+j_#qHL-I{0w$kflPA9ZJvPV2Ew|Q+)oURLC z#W(%=!*}r7jiQTr`1D{Q^enflhwqj!Amy9!xGj_UmP-n~t@)^v#?MW5mtqcDw<;@p zi8EdLiu5O0u}1!A{(lItM}pLU1bJ%gE<7>hAg#IQf?&|i-khhii_#7A&r+8^Y}ehG zyW>;TnEoz=;QO0qulIMnX&Q+d;^H-d9QZ9QKc)X-fD9Aw$Wz_gDAz-Ea=I^@kHl0R zdpJ^}^M&$6-S&hB3#qTUoUOmAZ(og30P_{2c$ssYL9x8KOAYaA?db++Y!Sz{!xv&X z0hQRznF-8SheQZ8`+P}tpel#~1w~Hk(*#*1>7=&Y@(8$$O3ibq)HM8csri4J>>xCr z8f`VeNAUuMEQg5Di{c1lzf)7YVTJ|o&hy~k)HU$#Kw@SeSJ$HR%xIg8INz!<fT-0T z)=u>?X*bd>PP*7CtgM2u#0}X0QgN9>uY1NL0xe$aB$XUHDcS+E^r^R9tKvAj$!HNV zAL4YYEOrVkqt)4BK~#i*#C;uXnC$SAs(Wi6+9}m|4kkN2PE3{7g8RdD9;V}9#ysft zDLXraBbRWD_~^XrqmyMf8++(vL!FWcg+ecpT*Q6{fNwHU6cPS^xYrWXoMG2(O$o_R z(%ig&_M=Dwin2`synD2uTG;Ja35X43Knn?Rq!xp(R7PMuOpD|R5VVCR`0!>>+N6)b zIH<8(VhVM;(`CTF_QjFIaU&>wz}iaNbe82cd>=LNedu~GJ8E8)!!g9e9A_}Y@mjh$ zgacgx-izgng5fq;+KHUC)DL3{gwsQ|&Ff&Dx%0f3L+QqJFcgzx8P|FPDIFZ!1l8J8 zYrI=`!%|&d;LX8z0Ecw^b2wzeZgy!&rIhmzX_=O`JQQ%ohwJ|vk@^qiU0}^J@c#qJ z=}&2W{vp2(#Q61%a!oZ^v*t(!N=GgrQc@Tc3NBI7TuFocAtJo>Jev0DPRNd!f_0O@ ztHfZfk9&p44uc!T&E&J&Dl(64Im>g@{6r+>S@DZ#J{fnPS^>U-(6R@tCA9OzFihM? z(`75Z?(Zl%i#3Gv`V1G7;8-Y?&g*T7gwZ{sY=!Vo=!Wh=@NE7jB3so8`-X0kNDyqv z^grXCOej_o+s82xDye(|r!NP`qVjQxMo!%!gE_Y&U0DihpC<}4=)Gxbrw1mxUM>s4 zQpoA>p92+R@|~{L6U9~^dgjRc9(K9I)3L9|4}k1$?-$vfp6kn*-`^^~*ydso^2atL z*zL^WZ>+ycu%#H1ew|44%c)!Q2{vQ{K!=f{?Wzf~z@bqOTjyO>;?p<JmR+_BzaO79 z^^ERDX39Z!tA&XJVw+=CgN86S{XF2rISFQp+z4tld{tbv4?UI+OzizUbw@0*)LL-o zsntXU>?KjDQ%Qso`|8LgI?j4&&@>iX8=n`OKiH^pBQUB_)<NoNffHy5$RbQb*HooL z89U*&zs1+EFrKa}PswT<Sj?YHqIxW-p>m3gugV&)8iEbznq5*g+>N#@*Z3Ppt8-y! zO1BGQJ|%Zwh<C0rc!_-<qXs%7N=>n1c3<4JW~=2K{oJ=o%k@kuW_6BFVMIe~opWtA z8}yHi=f7;&Yv#@X<JIv~{a*+;{`FMor{u*yvOE2^?@0cIxf%F_K3Z2*cw%cP%5S;( zrM~&RCG;_1lt^0@@sj^7@G0vdMpq&Y2V4b--qH2F#A!}YZpya>@=5dt%Q-Q+RXv*z z!nAM4f)*<mt8A|H`gu9vl6RhI+Bz*@vBtedYP^0C)JTkKf9pN?J!zYoDCBh1?vUch zXUwg#V}8w_3FOLPCBnN&=$}w`{Pa9<lS=s)&I3(yzkf-ngLbLfnlIRwqs(+_(C3C2 zM4$yUoYI<Sr|Qr-AgnoF{NF*K{q>rzG4WrA5dMb=RsAhk6S<U`N`ZbWhvhV8ZY7QC zuE(#IFonpV*mdS}KPUqJO-r7?;_<>{5dYg(V&B(bP&9buaLWX)yxmbCJhng?pT;LA zICJS9ba}_N|Go1v^Ww@c((|v{%#E2DzL8-X@Z-X9?pdysHB1$sj4!3>T&7rT#Kyk_ zCO@?rQ271Nxu<@0f*pM7uX*(~c8%#Z|C++;InArL;WMkduwC^WwZiR(-#?##&j%b! z1gq!fiU9~2D4FK?5u|Dte~_yE^f3E#f0=ay&b^|MIon=sdz-K?;(a4@dDI52KY&e) zRHP@`#MmGB%>?qNckVA~#~m;KZ_|!tbg|M0(ogl$&{&0_U!^fx)_T1u*a>~^MKtIA zHoreR-24+P&)Y?t%AmkX;yXdX`H4~|6|e(d)Nwh#fjoH{&qz{C>1Rlp$<38mc)fiG zYqqK^gwW5W0IY*N?!QKA@XxM6xbUzTL~+c!jFS7_`7{w0i3Oy%`15E5sgWjbdkLaO z<Dx`~raod-u+9h9cc`ksB1#{c@iAxP#pHMde1BwdX)!~xaWh9S&=1I~ST8#V71s2A zW})>=es3*^cBTC!v?2*BlQ9K-#GZ*~oue?@R_o7b+xjLQH+!lmiO@@<xfDz&U-JL{ zVg6w}q5jpcS^z=xZeQ#b2)#o7BsIFnk<BhuDD(;`d=3`<&(h%k&)vmnQ}&ng^8f#D z=>K!<{<m}NUTtHiyAphs4fbHfOlnVHg34a9kfdJL3u1g)XHrHLfil(c%wc-D6iwF= zfHx%72$IIK9V4>^eh1-t4j2cEk(M3kEtam;a<c?0NM=z8!e-S%M`2Ex`1cs4+N6)z z|14%1?ujoJ>A#gFyfo2y-H(wLC_(Zovy=bxuddYI&wp!D{ig&49`;<8b2=H_cBInW z7s=@C`Yj-w%&g{Kyo6u$QI<7W&b6sE#>kx%zXidONyztp*q-bN1Ov)Xj)Mgzkxns7 z7DlBQua*qwV)cqXgy%t=*}lQ9++2UFsS=oF`xS#&TxLaHKM48Kd1r$0-|#d|rIgBH zVw1!&IBEuKsEIICDqtsR$n;;_#{pC-8@kp`45DfjgQ#i+L={k}M%8zinsR^tA)L}B zHG;YB%x2hLyZ!{2@=s?c{rlPJzt)vSleL2(@mvll5k)k6h<xXqARaa^ck6rHpz19X z4=Gn}#*3o_WAl~CA_qo4y-Y1vD|2wWJLG<mf+id&iU(PCRlhA5LZ3^Cb6j9+)eP-P z2ipwLt|ST_iKSNLFV0o@u}cKr?b%^ImND?m_N%~=?0LCR69#899VYkC{2#Q_ec4k^ zRy#?!|2@rQ6cKE)4|DxI1@(@SJSmpVz&a1L5fR<<FWeaV9sOVDL}bh+wY-LNVb(94 zC5RmnZ-lgr_lApl4CIG-UY&PF9I_m8aOAR=a%w0d(ga8Z0~RF<cX9;(piS%jT)L0W zmV2HURaNg;FWUuHCdL$Sl5xE`?;Is%Xi?<4T&>y?brcd#N(RY_uE*pXTs!%9=+!vV zfg=~nJyXq}g!~ksXgq1XJm=9@=2a%f-f?xs63ih-Sw`jSG{)L9nBb7=DdHiW$cAi2 zChMh{o-P-T{(~(BMdS|a`VClj8v1R67Rxo%K=yJ{f$c{d?g^P2CLUP}Jq}C;Jpvr? zpDWu`Vr7hxt20UXvU<~G+^h;X5(=hL*WYaioKu%i<HG`)a_*agfTHLh-VXd(T=p-w z13&L2{$S;QwgZu$#K-daz=OJx;bW_-jkSO=4jyF!-{9Y26(nm%tLwY>&aiZl0!?kF z>U4jFn^s-;0o&ZqAr5Nq?rl0n-T}5L!z!Nn;xBHglTM3`X*owFcxK(R=Cj8=T&#Mj z3aX@av6_<?yWZW$c9=fMrqg`Mw3QVrYq8(2@BTK5=Qm7SE&#Hv*zhb9<qhQG@GEz_ zh1V}k-)t07j51~a6+|FNqW`#0iBMFl^0y!PC-ocuDwBn8;E~6u;))aNa#TKRwa(r2 z;jts6yPH%&*~#O1Efr`9?3{nF(Hgkp#h^sb-eD}I{1K=uUc5YU&svf-%D`t*mz1a^ z;R4*9Y;N#gCV_IO?A$i;l-d&Rg^v%X;6OYJM;cXxzu~3HWSG?mIg=f)i;(a-D&koT zMlFV*wV8-rw$U~g+E@qm3}KgX2}z7aH_Uro9D5#8VSHGsrwy*BN9H?u;Ad23Ur`%D zwoTz)_u!_*L`}<qky5g!sb0ZNE%1Xzdnv`^RIj7WEtB7W@V4P@4XhOXv>ig}F8nl< z?v{yCcju9MH9^ONiC1nMpNq+}IaPn@yi+8I*Rm-*wRJ`^t~+8J8|eixavj@Ha>Ku_ zto|#8Zo{qBSa&`Y9$8<`J+iAGGIph4Q^`4!S%RROntuS@w77!=1^PLQ;aM}aB8Cur zF1)7#Syc*xSgiq2Ann7d?deF$E-ubJ`N6|(b;>K(oog(eAIUAj4kbC64EGfZlOF@P zO~|6s0`gCzjM_Bg?=&8#xw7vxo@di!JQl_^Y6&3Bw>Zlr`x@iTwR^fx`9<&fE!2I7 z_Y-^E7xblaCD?Jv{9tPwE=w(0E5(jW2Jrc-hw2agRGkzDe?sU3JFXq6-g6-e^RU=p z1Xwg})rwGQhfgP9x2Z45zcUEvTV;@?OhdW)SqP5tc}(JB1m9{D_v%bt5+p0DEQI^% zop@iApqwww$=%d!I`DaN8UtOkEI;CV!Td5!m5M~b_ui(rvk0Ty-VkJg1GLWC+wE<` zFSmSu#S@?%K#EnFDc?)O4)HjGYHQq(!O2te^4!DLweyw%K94;Dw=}!N@k}4a?BjgP zw<*rl?&?MKsYPV3&ie>P$-bE6${~~YAlcu5GB|_z%}5RKWejWUNb`s2b?H0sf&f(J zaKR`Co`7pr7EpvTnG9W(1KG69@_8^-W?R=GwKSZtw7^FUq<Eeydp+Uiecy^#B3`9! z`njjTIdwUCP?wgv?fm4?gz={Mp!vZV)-@sqMFp#-e%7=`D}y2il74gVapk~)YLcRO zX|1MUNu31(-x51ME1m5xN7?*kW*_`2<2h(OHon-eYsC=wDBVHN_eKO#n%!gw1w6&8 z_$*omvZb}WTIpQ#oRqFN9a!40t8gQid@sdCu4G+A5iKXG05`Fg3b+YdP3_O#s?M%} zcaj7L9qZzh7wK>_gxw#lcR5e>uDV#i>{J>cP{L=HcKM#y?FD*_+nrPPx9)@UOU}Sb zwk+=<K}3M5uTH{yoX4vQs%<uM5t~db4V=78td8x&4{J3VP~T$N&%L1ii#uW9vGBit zdeE4$=_60tv-W9K609W3h79RaS!KTKc8X@?q!`(pS%I;WMwx@6#eFNNZ2P+HDLs(_ z=I)M@R(T={pv1m4d0slYYO1fSZ>o&J%Y3^3fGWIhG;-;8l$AplcT}v>r+<9V6VF46 zWq0f@ka7~r{W+2sTEHB2sEERH<hCBjo@m5;si9;Zd=|8gFFt4KHM&9yL~em9-(d2E zY>;;}*CzR7P47Dw<N5iGK6K~XYx@|bePikb|G?DQ61yw2u*mML4*xE{WI4+$aA_z0 z(xuIiJ{O%d(G^bgaNAnYd`Y2F_Teu?o%Q7*hpF1VmPDRx>wU?uR^vu-K(@+^{W>Sy z&Q253wKkraB2F^$+g#le(N#bM?L{UflH~v(u@t0F><T(ht_hZ1HxSKcozYoaS!6=W z7hWUi+=?wbrvq67n=9D6=<vBG&PtMU%+^aeD9!Ah(+!ULhzto|@e~D<8HJt^o<-+7 z6cs+H2XIe^1ze-JsEdrdS&lEOQUWeetYCiPR*R@&DLmp!!7prv>l;_bTuAc$b0d64 zKtKl3f4_704;N^Rr}8kae)-&0l||i&hLf8VXG)pRA$<dgi*v4Ir62H}dfacNz4XY> zpHwgX98#I9Tm;miI?NF~l~#I)nDpAua3Fts5a4c{VTiyBm^DNOJIS})Qq_y>cazi5 z8H*kh^-g#Z4F}akNQ<<*?weMvEKK!o@oDQ2VhE--tL(Z)3w)z%$!Ry=Kj?XtTD_7$ zPq`0|*OeNI@@zS^5jdW3Nmz>4wlrRGp*FPI?2@{C=a(Dd+)1aCz=#N%HC;a0vNFu~ zge$>IGEsY|R;Ir+nbJl{S?ldKMfy=QU3TD=U>>8mL88wK)kEU(m{{RO6*9$;ofT_& z3@eN61H3XTW*glH?hf-BKm^@+rF75)aFK*2FA?H8f_FB`lV)zc#ggF8$=4_KZ5g*e z5q<FFoB%z}1=R#R-}NTir5(3v1V^b0seAaGCtL;g@w*GuzdZ7&c}tz}HvfcC&FBsr z!P*ct!;56{pY{wmzog~Ans+Dhuv4{S4%khNjN-}8yd8?UKJ4GaQ<WcjM<({#z>T*y zmQ9M+hV5`3cqtePU(w(BCgd{n3EMmdw@mPv6Lg^x@3MSpKHEZklSB=AUde-8rN^hk z@I9<TrzT`_tWKJ{WUnXkCHDyS9_9*a|D6)n{0ZVfX^czTL%>)aJJ!m8MxaN0d&VK* zcl7`>FHm)<5f<FaplP9}Y4-UWp41soVkZJn_@j}O{^T=hq2tpiF0;0oV5(wM(>;du zJpnwN>tuI=y8W=@HYu$g<}^yw-`%V_)khhUJl`FJ-LKL`cA9A5hv3o9>;#J0iao<< zL0+@5ATPh@oCq<~T<z6o#-kzvFZtFuk+9w-6$0mYG&0{$Ar&DnJc!bGDF&Ye&A|)d zMwEB{VQxf_&2^ilx}ak@KsD{{T>#D@a}~GLZtjV9SL95Gr5EAC@g^fx9Lt1%%PXjp zVkch%Qpe6q$tFXmHRU)*)t#K#rQ<4_UKBW0X{s8%59GQaXxV@G2r0+!2w`LS+yWQc zted~$n=~!Srmr<s02I&4l$7I=uik=O`+cs2XW2@vQ$>AK_5>oicRqd8kZvF|(=dC- z&(2GAj{`zt)$3VM(DkC)F_zC5L-XuVLv5-Z!O%tEUTaM4^37woeS3LF?!h5=_e4k* zD&R=(c^a#fs|Z*fkLE`tlJ;x|S}$kiLXGM6=@^{uJeG6i1*YJbT|6r_aXlq-@36t+ zbFS~VPOIT)vQp&nia230lTlc%yS-<%*RjU}Y7Q<QxXF<h?rTMbzZZ71V<R0yr$Lys zgmbSed;Oe`$@)X#&B#o&d$?kkuU-&_Z({NR0_O)2-z31#!a*j5^O6rDS-KVmKG)xk zNH_MMM`{)akZhgo4pOn#_&8V_VS3mnm7VssyS?GZcMAR+spB1TBv@-rK^Hm|4>R>s zyE49#KFif$KO3o^DThcDj$cR=f`*O&wQuRBhcTQUaL&U974I@ekBZ2=ABGg~BMjLy zFUUZ^jkLbfxHEvPI;=Ir4xk2(m5KbemhvDzC2%tx30iI+=mj>Qh>bMz@XxbqHx?tL zW!BBcTw7ZoZgWFJ#cnAGNd#v2zT9r3LSl_#XuI6WFI5T=!hopf*uc4D@_C)Fy{v#5 zRnhOrB-Y;ck(zJuEy0Vx^`jTT>1F{u0CFngfV(GV6+>B(ygrMIRkrlVZm1q)J?9E_ zemrY2qA7tV?)H3HU@0GN)2)mgV}O%f8mJ6N<H)#7vvW3NqAW6x;oj262nBY|;h5wX zpQaPY!6wIBy+4Z(@a7f@%9qvdyyy1Wblu55q3R0NJ6wAyhElB9LjJqOaf0`V@rCM` zA4GSbX3566ON@Wv`wy&S&%&Fq7(NA$bllo9e?MOn69nsem5xC()0!9U?i=@lk?a*1 z$zGc14V_Y~8KPB35hX$-mgjRgK9T^eG$dJQAP8}^j4;?Y0S)@O3QQ2}VNOfRHIAF; zM<WAXOm4b~2F%VhPgw)Iw&SgtgiQ$#rTpd?AzgDzL5HYqfJ$ZNf0k$tXF_?Z(=-Bm z7Q-*5bw~$X|3Ld~?;Y<8xA0@v_XNWQ?_wJNZVmx3ixZ*QUN7Vpcv0|J6xT;d$<w5% zmwA=|;b>o*2tzi@qWOYOJbe2t2n&hoYZbG4NuiP*H2%+5)}5iiFT8(v?b(5oFYNAv zG~CB{w3U_1-QR@{4v30W|7{hf?a5y!OM6_M$bKh?pI4>`0eRC1;N6fv#VF-Vm?P_h z1Na>aYEOSS0G51O(hWi%;n;K&*qp1ow+Z|DLxiK)XG2^M<1ZS3ljst0@9*Nrqg{Cr zrEk03RvRG^q$@sFBSh%|5bRPYnESvqKg7m|pG$V4UK{{z`*)Z`a_jId?25U4G#&o0 zuir?a=xT4LQ^q5;;gH_T+c$gn?!jZ+`}2$Ju%^TC22v$u30j%a@C2O$6i0q{Um)iM znOIXd#ayRpkm-f!<Qg%4wQdd#Y2(gf-_AKpn`Q6NzB!E`x4w#sq>1+A-r~c{;SUzG zx7kp2Sx%&tFiN>_T+iX@w~gTBbz<}lwDSx+HEhh|nHV^9qt2Z8G@Dyn8cZuaoFTPk zG=;Q{e{War4&v^`W9tSb)9zoNDE6sUe?Fc7=8wGm_Nvkh3fOWbgXBdDF-1%cG$e6q z!Qqyo+2huqZQ7P*3Kd5Di28f1z9(cfz9ni5%^_Cd0ZJ~Dg(%MxoO_<cC5(jNF~VVI zY2W2EpQiz?cg%z(IzHz__v6qBaN<1ohqJh(Og>sV_67WH&c%5L`b=7L*OQ_;$+s#l zDVDYZlwPg3*fq&!)dD$3_Pu3PEi9faqU^GG!F3z!pkqHw0>DBkJVGPxPb(%S7K?|) z|1h@_2#`xVLpp0~U##$~=pcK-#QSYcIMf574nW2+aGQSF;%v!AG?F2umI7Z$(jVk$ z@LvU`^WWrY2qqvF5*=d%u#g;m!%?0FA2T%M@!W6(mN3|Ij;7SLZrz?scVeYBQo?#j z3ZOWjP5E{?P2@}mj8n6QO^Ae8%nrS&C_$veeQQ=A8b{F)`qR@elM-1_mq3#J82L1M zqPEL#YggR0d9L&FV;2IATPwq8mZ0%d_ZoBkbf(F0zXd&))Wn2HS6;-*t`^hq@v+$( zAWEkWmd*zJ;#8ZG(~CWULfdUKjR#+>bi46wV&SnZ^f&^ToAwQT&<3*-Q>)<5hbm_! zi^n@zgWGaGrX^Nf5U*2cjC<ALKmc1(c-m@U7q_8%`(&O&lHuyx60_Ce_sd}q7FO*k zJ)$Yi={WiyPzjZ64RyI_Vnw3L!h?5;N1g?Z$|EeAW&(LE3vCXJr1BpMr@zVxjzF&E zLnnHcA8rkN@>L7KemH`=tCugyJg}C1n*w&u3cqn@-DK6Ks`HEe7#{zVN_gV1N#f8o zXHM9{x2?P&2M)Q)AL8h<EtPqO{0_rYxN<7A2<5|S`nZy*0%J}0&coB4fSQRF!)mkO zf(dqCn49>Ev5vPi>txR~fQ%}<#+Oyx@YZa+cfHGMS`5l@n-}eOQdbf0ykt_B5A3?4 zHmZwX=w@C0z4;>I!NE7r#80SHqmT@!7bPhA<7ak=ZAYV-#Sb*RhgX;9<MHg?*Ia<` z)pW*#XAYcC_-l@{OrIUIUS$lq+>4Jzl$KkYUigZ%ReiafYuR!qjyFG2+J4|RXE2<- zTQ3K2nzZ)!qFsz!!p(D2yCR^DNvWuU!%lM;1|)7QSmpVq>#OrJkEPd+UMCUfCn%^k z4%Y-NyX<y6qJ`!?ACDT7R_cb<FN=Jh6PR*oE_S*w72ziF$WV1J3lC*Z+w`;Wwki7Y zfI7NTPbhTCxCHnC5NQ7d+4~v?Im^LMoqfwHzM*CB@@~(!IV^D@(}ImNsa?}~q0a8M z)?-`c5^b!fZU~KXojFk6g3oiL%QkXGq%MNYBy5YVxpnnSR`FOf15{Aiovhg_dXIU0 zdITKdEXz5ChvncltJ4+sWW39Lyzaa;-OBl+L&sYR1!ILKxz%I0XmbT>tla(-VZbsz zsChZ2Vq4YuhQj#9&<vd0M`f2M%M0Ex#}r`W$=nW(FruqEGJGedV3(1>shQh+o*C(; zb{^c{0ziI#xDCF;!>0kq4c9)!>pR6}(SQ+#{!dIP*t%rm6nt2AjI_Rq#--qvg;)N7 z^-86R?1#<N4x~XfW&IC$%$_;UmGcX*8Cn6U6xG0AuCfk$^C#d3OZeKTeUpuEmj)@N z+tL23lw+QfbqGT`c&q>YHcEG;wJERKG<_wsMtI{iJs}bXLkUJ=fO0#MHm#|TqookS zMxjUn2yjX2d72G8pArVwoeTover&M;Vw#)>ZT4PW7)M}$(bhK^&33*r**4Fl*;RPP zm}|XhMl+I8w)VGW%pYB0{@Gy94X(Hn@35X^&z!0CgwFSl_=N$dm_gm#0o3@!O7NX5 z^YiQLoYW}$94r=f(`J5cn|k9a{;{GhN<<Jc&@idxSTn<tGNU6GF`Vc)`v|y@w-w%^ zLbwg+Ee6RkM*SC}L*1h;OVkikzPYO`5lLwA22mim@~`u-Osy)!c4aF%5Af!*6KotK zs3%H5Fh~K7@%(@6*l@mM5G(%j$<~X6>_hp~rHB0xm&u8i>2;5zX`!Gv%ZY3JDK~&c z!<@oH;^BL^HO`L7gDQpR06nW}$_+gA6GEDnClpQ;BC%(^c=g;62oz-lBtvB<V1pU% zjWU%5#iW3#9p>i)rXcFv_Q4MX67G=rU`RRu%OU@Ea1aS&=T^tWLx~d0=0JGr1-R)h z?mqJoi(`2t`DCDMx{XGqzt4(Jsrzwow&qH|MSBV0>AB%NKrQS<+3Tr<(LGWJ8Vg89 zV>L~v8b8%U$*`&gUM(Q*bF}t^2r|KTGx*;zEaW$p^saZRHZ}>nMjkSFZEqAQ3f79| z6sU_nQd)o|R<(6_cR&)@b76h=2GZiz`Q~H{D+YL@-5hr+R?oCok5x0mJ4%j(kmQW$ zoTmZ*<3M<4&w*IyEBz?$IxLZ<_iN*7X}req5x%4^XZ=6?C8;RRexB&`oEL$3CKHi+ zMA<`Ztp2iFH)9UlN#dceor8Z~2)@zI<3D76gNeL#?1xD3Pu`Z0%Q0FmQEVH(=w`Jr zw=Jw~)3%}j7U=^!;ESqyck_EE@m%p18{Ds`p?!p7j<{+wV;z>H1M;alu4VLZMXz7K z-n;P0#S1DFYPO1s3PZ$2?yvCcOQ{oggR+@=aUStD8e`>Y;CAqW8;N}}EyHM_6y}bv zqN0QWisro{Pus3!Ir=6^rC=wR`@;M!hN3cBha~G}uVVVmj>)~lPUeu15lB8Oi7LFi z6YS^*OhU#d$j9LqDZ&uW3U{G8(D{@v<Uqs{vGANqY#nWR8ylcJaTfbsD+!jf9?21h zWB#H4Ghg8M%lR*V%d$wZa(KJzlKNu%YK>Pnw~QuGy$(7}*me|61|B~Ap)s)VF^9CS zz98_Fzp|VkLu1WRP8%pPdjXmvY{Lsmp+Oj+p{a;4K`snz5rMG5Vg&K&(DDf)e9jj- zk$SBxgNz6f#7oxa!Ix>boBRZ-NPV}@eXijT2Q%!Ax26>h(k{Mn5g`puvM$5UF0%UN zZUCYjY1XJwB_4jdTnRWrQ<!`fF*(to@`)VECwo;A7!i?N=S)TT`V@H0Qa;>H(-==R zwR;a{eWdbv@vIMGPO2~|^PDQ8HzJKu%6z3*cEQQ(<gdyR5A~v|MDf@6Z0_@l5kk>_ z86Th;>LpV7{1=~%UOroQ5f%f-I8lrs_tIWSOXJ;P+iC-N8zo{so2(JoS;Vee!9u;H z_LT@iIP)pM1{U>qweZ*NHdNFtz@98^+RrPNf`domLNsY2MH4Bh7B{0rc<?LLGG2$> zMJ$Tx<D&59c-oH`p9!CZK$)Y`Z+Uzbx$;veHh%3wb=n%<1=zlUkFV<%C78*R=1$e< z$7y>$)Bp&bj&a={IhJn!XO*OKb!}{%{+x3MGiC=h)Xj~O+qnWkDNYq7t5|KkY=tqy zQx(=fzJ$piZLgQl3TcomwTg;ZaABEy^tGGU?_K7wwcyl%FKc&Ej3QWXk<d8<gwBK# z^>|5_>v-(4@oxmmWib+I1c#g98YNPcr3S(TDIb$hGu*LjSh5Q@kpkihiNC}ZI`$rf z$P&Xx4%#Lg$D}0XG0EL63QzLFZf`KvnAr?NB%??$Otk<EQw<jh?W4$oN2BgU5hJFW z6vz2CsqQO`f^FAMhnqe~l@SueemCSuQt$u_3rq$6L-`#{w|(;{Ob(Zor??z=HVUuF zttt6*dpy!(@Djw{WkPC*)%h+Z6hmOj*Oh4!odx*<Q<Yrf#jwKzLqdBe4TC(Ng$ET8 znz6KNJYtk+HPQ(Bf(F4@9WWis@2w7VdM4?7GfP(%>sS1)2SBmF*)-m{{<1uC{r!hK zLRqgZU+dium(g&y-#R?Q9XZzgFT681T}r%c|6s<3(Oy~1=ULRV^T!BTFUkwLV8$y< zR2+pp7vjmfdw}z}ch_?|y?T3LcYZcx*&>ltgWGu2(FqwI>@?q=sMOTZv}8HK3bn=8 z8saw85G18novY`rreAeLhKHztm!l1cXU7>Tn1~DyqCfPb#Z1hDsywh@NV@rcv(FiW z5EfR}S7r%r<dT>hBxqAPw^mhvHKAqyHv;qFBVR6W=Ww+2MSySK@)lV9<|MOWWexPn z^cJLbdTR5|6LYMp+J`>?kNVYgl3H(*OzYO_zkFWx-}4NIxtO3hGmzl)0hwD2#6foj zYK8=3imY)Mr$Ik4_hU@aM$ZHD-XD=BXbG@f*@`vM-Q-nDCDQdgO4Y^Hp@_n5=P^7i zsqWhsRT~HAv{1_=FNE5f%BMK@8Z)BO?xHex@ruMGrPj!fZ%r^ofbH(|s)?`bfQ)AL zZS{DVNwD?8z&-S1dBNfj(M4tq@EkIKuz(a1^_h(n5#|@Fbg;78OCQ&;V?Ua;3R-&$ zaHts_-s$#w?*$~vuWT-UD){O)MwD-g5#=)rv^87~H++;Dk@xDBBNFKMZP%4}EK+b# zSLVHU>yB1Ma$-EJXy)7dcTr?cmh3lrjc-;KskPIx{xKahe@xbn{pelh9^Wg~!uR+8 z+P)}R;f{L@&)L6WF8bf|ob5TOzZr8eRat(xItOU$zxVyzfF3%AshBGV=mlY*hkxzf z;J@cg`%vn47W3{+Q!sk00{8jvy%jd7dFTd~jc6OdaAm)>C}XtjkjW9p!p>fXf>>d} z)2>XCzh)gNjKW$uO@`D0rpht9xQ8zTUzlHvBrgtpPEsoBoQ}h!EXDJLhx3}hkH0~X z>khxxa|+nEX_>iH=qnw?`+$&f;-I!+UZ;@Q!qwfk=%wF#x9l)7xMj@6jTn9k4vkn7 zj~Jdfa;ARhzyJ0Eg)D7titXUIh|&RKqZh^AZYIsFFVIA_<qsyRecOqehPFIIbIed) z(Gaqvj6IKq8=f2qMVE&Ta@4R2v|Te0<l=7&m5d@rVAL-cH?!dP7g+^f<eQ?STXf@{ zAsDiOnDyCKG&z6vLxJq+b6C1_3uXuqIR7MSB*?rrkZYN4t~_J>iw~Gz;CK5iq!>#6 zhH)YmE||*W?BET8X^_$I6UcO^g=n^fD|!?*3(AYL@wTU6ub{VTFhADOr@ua@-}jt< zx0YG4yngo4+=T)LwaK0WsN!C%=%C#>kf3is9*uUuQa$Dy!G>?df;N)!UEp)h+N--W zaISQh7I^byDkOv(0wUmq!cd_C_RvKsE;V{_r!VLRW)9VHDgw5Khu#j?48lzd75qu$ z>NkNWKksTo<aRu)0R`$LJ+Z;)RNV<7?030gL9?0-B8O$LVQSP9dvbtr7O*~z*GiLu za2YJrHHuv4HogW`KIiiSf6X)*ZttHw>9a>bYon%7<v)OB<qeLxAEvnW9G2kp)cUqZ z8p&?{-Ggp(njMk`o<ML2PYItrjtxBN?f_;;ZWuvXBFg!8M{T>3)EyK|8m=WN=i>~v zXCwo-kT=P&uQbfyrslx~Cw(h^7-FdhtX;+Y_HBVh8)bKnzHnqmAK*%kBV0*4ZcAtx zo^Fcj7;}hZpGq<7^IeTs#eE#0WMmK5d+E&bhJTLt3W5P=01WtqeR)CDoeQLOSf@!E zcH=n!eqmJhCFIH*CsQ<JC?;7b^Z0rwd?F{pNO(T=z3CyI4v{&xFT>5s=?LK=x%LHI z#sAdroLfNPw-GuR9Nlk!=`nSq(@&v(O8d6R=kxXhU^_M5D(DaeI3OC%jnZDw76#6) z{r$I4bVD!vj>XqjL2~~Bz(^=>n+ByfKzPE1Jl-{Yn+a^WY>PKv`b>>~+piv4$^68h zYXyYT)1_%HV+NPA%KQ4BS3E|Oqy5C_h*71YA@O((!!O_t5Vuk|U8>llE5q+oy0<lO zr<X6|_o3JU7>aFGy-lNOX##-qn94{=y1SnXX{5@dc-v2fh9l)#QaNto)UnH`N}bFS z5>;O>2S{WKu&lm^NB?x}$buEN>1E}`6P`p+Pc6ci^+P?SYeYb@{ut*TIhUzBL~vZP zXVWj>0oLynI&!{_O+Cm=VHhAHBI1D3cYS?*uiwZ9F^C}u2x)BMK-oK3ALTZ?=ZQ1g z#4kEXNj#<4oI#vK<4)R2Tcm(3>21iW;zBQzC0UtK^(4>TZ*S9CJ<U*ZW+I``(t_ui z=jdgnIMm0f4#X)q`ZyT9CmD6mI74#n1SH3W=e@ZBy0xJ@G5_1kwL0j(b))Dr2L_nN z6N}uoIR5R7X&BTGzr74}^`zq!Phlux5TE%1hG!`v@(c4Q=LE6Gk&1|BxGCNXu(j88 z2oKIpF=X_<=v_dFB@l?l*q=4Vw9rca7MEuB6jwaw32v_z<me}XFClubrEx}&lOcv+ z)$W*%W5`cB>WzNy^mZeRaBO)<!Fhykjf^uyF*R^fg-X6+0zT3Sg*Mi3L}>o6=;nTM zA0Slbulr#*S*;;pT5mzfTy2o_yToMJc-axwfaS4YClT++`}$GrBpgfTkmT440!eXE z6#QL=914K6VzOPcYJrr!UI_hdFRXx^GBwC5Hf)sBD1qG4*njp*sK+yW?^}A@k}~Q} zpGvuc|E@;Oi1LD($ScGU>3kq=lmsC^RDZtN`^$%iKN-=h`4Fr0iM_;((9K=EOV=Q> zdSfB-O*{QhT@YsOeu%~l=f1p{Ab1O4^?Q429_2?7(kswHK&~eu2e+l8;Gjn&1t>Ka zVZ(;@Y@ctv9#kE62gWJFRQX4&BO?|x+;|RuRRTRswX@EQyYcoCAkJ4LG-<ezQpBwi zC9Z8KMT`=WoGcrE9Ry>`{r57?P_D^{54BcKn%S&$nqnX5CP`nke_QP5z*VZW8c#Ub zk(S~TIcctHVE;jXF?l?JkeDeZX?<3kt9X1pJ9LX5b7j{)a^7+6m!q<0mLARbMG~xW zairN3ns|2654rp6F96nZZlFf#C6*m@q;Ac$!!-%|c@b=zH!7;abUo+(3-Ou4TWR*4 zd#TA__&C12=h%@+4)6T{OWa16k*VYUSS@Z3ng8@eF1B$>$2Lv|lMGNY-bkRqcYGvP zI`M8h=^;~&n;m*ZnYz@CUvmErA8Az#fHv}<=uB@(qSf3#QQY1U$}k5BIx1Zu1nJ6- z;k5~5n(Eu7wD6!EHvT0+_`r!n;VruD<$*l%V1{&K!NqmLX65T^wfC%YB4xjnYqOft z-tai+vcwL{eUR$rsn?O&P{1*&Lz4(jqTb9F@DII`iV){&YcgBUQNSKMelhS9Jztp^ z<YihtI+oU57b=7wM9^FkYKXUhkF}u-T!z(o{_5Fc>|x1V1^Ctz@m+l!rn_w$*ez3y zRz{=Ojo#jW1{6%*w6}DYv2J8m&9@qG?v*JG`!Afb#TlQ^8A(>s8XtWaRE;%J5RrK? zfnzj_Pl$$X<4f<+?{uSDzhz{o=dzOIz`ax!SF&g)u@I<hOR>6j=gnf6i9K~nq8M#S z&W>BUqFw$O^To5>(o5seR-EB7VYv8J3vlA%5wjQZk|{(PrKEVl6AjsxW;>PaK6!6@ zhO4|TL93{M^cqtWx%g&^#*^KUQ)L8uQXg2Lmdm9r8^Grl6lR5Xrkwy+@t@pbZaW&J zHeO~+{WfT&Al<F-^^r}0BPKrhr<KQ#yxN}*cYZacxT&KDn*@#wutpM0qYV*CI)Xj? zebD4yM2mPQzrnf)k@Q9g$|Y-ov~bmYfff&?LoQ5lD*MOU@^{r(jwIUKz0I6F$5X&} z;QJtmB87FN?y*uYwEsa?APCLRCiBn+^V)_?qF)7xLw_R!i}$a86Yyz#Wg&YM=R_Xs zooReCS9T&Z_uM6=Q?K!`x@6lAPs*>2aK&7(!#z1FWivqla>2DOu1g6VpH@!QJgrzJ z(c~g@=IyrT7<zOCJO4lNX4kbhY~va>r5TH98-0(yQ+|QQ(S{65HY}^@mAXDY$~BW= z;V}+_XOH--lJ<TK_S0#<&GU@ojr4<ATPrk#4qmFF(Kslvacoa!G^MBo)`t-fI4o(B z(TJTK<6_k+Tnv%BN=Bo5lI4b<rirblg^6G*p=Ksq&Cpu)%#h<$!r8j%mzk<T8+uKY zmmzp1F$=EFzpXHRm$D}dNil)W;I>H>ZbJ#Rer&ogP}|CBHb#eX^TNKYnM_mV)AT&R zC@26sLp2oUbn_k7@Zmk=@tP*?Qy9qY7DHw=30n3PN#_ilkkfs)KTzC=yBq2cF&~eQ zvs1<0ha!jT7QM5ehr?l$hnSYPQ|N?3#zAJH0o0Be0sr=@otL<#KJO>HQA))}+8+yB zj=*?<!`QueZ1qZTYw%<(pZkg@pV+bk3;E^6=O)?$f!3nb&HjEp2LiI<@29FNmkS?J z6{ina$2N1|PDn7$=_bh0XbT#ajIot~Q{3q9m@CrdVMv8kR6r^$DPBI-I3V9(3%V*A zp)ZzDkV<1D>EFXzLG5c4k8@9ZeC6rN<Xfq*0oS5SO^5TTSF+XXg8J?$anrmVSqx5h zD|$`738sz2d;au2Mjb@pSH|Q&*+Ce=1fmoi5Og3h10(DQ-CAiqtTS+mhedTkG#h~* z*k~^1+Sr=!ve+n>R>FioddMgqCs*l=OQxV+CqQ2<li<*CaqQP(vfo!d8ZMQ5+uAi2 ze$+W35Ffws94~C^knHJ~LOa@Uftv2@Q{!GI1g(ZVu|RL9d;3h{&W*XmC+7MVg@ggX z6b5oUzChW(|H=vq#YL*geo)UErF6I;^(=)h@V8To80T+erO&Ke39|9dMzVBFFt_OT z(#mndE_HISC~R<PYf_uC(1!qS>Cx?IHGc2M)wuetCm!tgG3(6%9+eZz8i6ST;@0(m zAYN<Tuwnmn$MCBeW-}W*L)OHDcF0JtO;i;E>2MMZ=5htJhNaCR#6_(;?{P_2gqYtk z5Vm@KS*5qJ;^NM4gH3yEjBMihFJ;whlO-w4Qgj6}jKWB8G7cuwxTA7Y0lOv=UNskb z_LLfDXx-2Y)pQoqt<j4=7U}TLyw6!%zq@7mqLb(<T%{&qQDjU+5qSr6MX}#$Ugcte zzVkoYCz!KhDXdmC6}QPK9piD~md<1wWzb$9=Mydq=PTPZ&r9{zO7rq8L6Hh62E0c5 zgVN;RRmQgUA7fea<FQPQx$%}wYx4qR773su56Q)KI<q(!q4SO*Gix^}S!a+>6$MFz z*NQE&#C)y}Mr;QyJv~pPA_gy7n08ZK<DkR=%t7b{4A9#LdsWH<FVoA01{mTAgqA{s zmx<24eqJin#wlQD+!X7BUitvNi7G<k!nkjoij`>=+uNbRHQcaR!GEVr3L_p?sN`rh zn!J+z2bZJ$V63mxwte15<bQnplx6lTwI#V(5^m0In_0KQkRzDm>(9%Oe|-Q#SzZBY z!6(tY4_=9o4wv)%@2VHZKZm-A`(k_YIS?^;f^kh4?xO4Kv1a3)P@UdIybY5fsUjpK zz`bX2X(;%m4VEP&kw|g$l3aXzl1O##Gp2c)Cx-1XsS#czmDuR>j5DlE4cL*Skv-+T zj@d4v%~$bN=%ovMT8WJeZmUUdtHwILQ|cNO36}JQtJ`6!nxm!mw~FDve7;>Cz3Jwe zWT*8tc{w(dkgQyr*pbCP{gS}-fxICa#{yG~(&yu!9cPui4m?I<T%$hI&jWa-_v{q| zTKl(kDaxs!?1wr5LTkU)2?^rAmuAGc`^CzqmA1aoR&RKHEy;ZP)*vJz;T}AF7DT#N z7(L#vA*U)xqJ@x%1QeX1R>%ir6ahY<%`Lz50bzn|Yg(2ksx~28kT;a}-}7I_6=hwP zZatZeWUwvUsJyS=qArrn`s_iapb$+!i!tRaoqlRq+<$)mv1@Q!L#|ptqAP*Zr3RSi z!GaoB*G2HvEexD%WA|49yT7k<zGpD!d%*aHASIiVsR}|Z*3uOegC?|ErWy^kGHvdU zm^SZikT~ctx(}_Y-@pHjOyHkheWBH~)vSc=iy+?h5dXU$?_{isd<s#vOT9|dKH)M| zT+9AKRgfLe^#VcVQ(oTK!@hx@-p)M3#^lagP{C<wvWDw|U}mNQuz}vhja<V>hoKf3 z@!82W27<FoFNqJFiQ7c(3?f69I6@1~B13@AF-8;pKkm*nkjk}h`^t{pAiGpDL?u&- z43TkFie#!3Nl0jssZeHWE6O~Sc}PM<=6Nn<&N5`4l7-ANv#{R(xzw(9wTJuO_x(K2 z`;FcH<hri&{13<RJK}G~;U_(`xf`?tU(wjesXp#!D(Z0N#_j0{a7{T;C+dV$8qIat z`*)ggZ|qNxEsZAbUL15|NN0}uxv|ha<)~l&ZqxT1-tC0`<<x2GX{e)wME_hcP_(n{ z>`}WK5x$3|?|s+(PBjYeqtOg>L!a$^f1nywz2tP(iiYD{`<*Gv4wmR-hh7=*BtaSv zR`FA40Li9=26eyfvuCubI-aec2~At^Hu>6X(?Nb*wDDVM@`IsQRp9lCX~q8huZ#aq z2$3u;pG|Co6V&p9#tZq!!tHmyHaNbdPZr?LPeqn;)gUzzy~=LizRJLNk^{a|Lkd>0 zzda|ze5i>xWdb>mKq{|;_DAX#?P>Km7^rYr&9qzeJdX765r@PV24bvAf?wxCuTWXR z%s{;?L|R*BfsEUiDwNv(#T<;oG*DI_iVf*COA|{Z2}1o?-t#0ieJri4?vzS>%|$1X zPfmW1d_w=+1*9^`FaOFn@WyrMPtTgSB;k=>0Iaa2>Z_e#2T|wz)ehosnF+r+M5g9o z0_Vv|MK*P|A%z|7BSB>Ujl*NTMSpD+O8QNcIL0Uj%qN&&nb+P(kgTk)?G*rY$@We{ z$IPxf;1~+yg1Mo=Vn0j}cP%Vb^5gE2Q;Q|GmpS)3VCHK)bzq=Xn`MR-9?hM=OES-U z$ps7Uoy*u}C*@Ah${uQdYQXGSsD=nNN$4pfM3EZTe7<@o-Kg_UZ80u+SwT|){bIu5 z)^1h(a}S4u1iEb_hOdUCKC8ZN^ziCZ_4EOS7G=F0QhPT|YVTTOm7-Q$xF+R(@j0ji z1HZ71d3~><{Rggqe@~s)&<BUQcr@UFv{i9o=t}?(-}0gUAi(d^wvN_u`zIG)#u%?2 z1K-0Fi17?O4{B0aqV8<ZzUB*=z{h7Zwg+_41d-W~`-Z!%Prf#&oYfm-u#vforj;zw zXrh2yJ-hUgjIRzzkmYReF_1Aq-NvU^{Q%$j;u0}vzX1fJX?P=I%Eh?%zJdbCul35k zi|jIu%j;D(Bb(@u_}>se3&XiDdb%9yiC+LvujTpMxaMjl3Fx#T4sC&C|4I)>$_^qW zn*8{1N?P&u7IEsT)$EiI9s{1DJnLyMGYR`lxotLbo2tirp05^Kh!jhnbbo1Yu9Qvj z>&ZhcTO<1Q@AfyPC^U8jkVLb}+AT<+*9lv3_du<@6mF=1<eaQsI<}S#+!c?A!<&0_ z(^q$$b)}ttPx21T(1|dnSa;Ev9#<GW(0ftbPgN|b<lgO|5#AxY_v4lC+_Mg>1sZ7p z&`ABn0bKp3-xI}*CUHu$rx_c5AE{31upv9p?yCCbD4@}fE#;Z@RUx3$`|SmDuTAi@ z1+zzE?VuZ>79<kp8w<E$Xe1r$3I1G^n+_uKjMrHUvn3e6&0NYTMx71WGausWi<XZv zCYHODMDfQ;I+G8e6Js6_xI6x?syIp9Dz!ZfPBykYYKw+1-3dQ7+Wk;2(EJG-{=<o? z9oCR6v&6Vvcd8hZv2tj;51eQEE06uhZkL!9515o-=av+QMWc+AqHiTqPpL+rvG=9C zBUzUR-%YxRTFNDNnAnQW5hnZV00+W-hWy$2tW!%}%u9!|Ek?tdgoK1-(<p8j1rx6g zHtZGl%(o+?yPg4?E8IM+V48l!Xj;0%6euod#1$1Cmsi+s9G_O$3R*SJ!nZeJkew0P zT2b5<qtQ$^OgK}PC!AL+^BBmuLnl`?FBEU26YFEI9Sl$`{=QWGd#Bf5?8o!@A-Ntu z-DV^-_klCq539U%GT(yeI6fySv0KQ#>&?>>`ebJ}pWLwyF8vs&g8x;;|939^zwlVf z*INuWJTooXX0dC%1aS^0>ny193bemHVB+@e$g`;cD{3r7bFNhiDe2X)De+J~T4dqu zr}>eY-J*#s5u)72BbgVEy+{JHj#q-+uz^f2wf*%sWc%9i8g^6lGHuj?3~|=A>nTY0 z%+;;O#AZiV0_1G%^);>%O`MMoT*Y=bF^R$GMC^!;Z-+CCDZhwGV=8IOS@G7TBA<;R z++J=v<N)hj5xXdKdu3Jeek_4X1`&;0OGq2<%Wfg2epi<jHcb8&MqIrzMi1*3lW?a( zz0+6OxU?LJC3Nq|`C=0JMM<`-NkC#7TdWb;Y*HR&xe1Pt+(sy8#=B;;?G6{YlDSaf zUwr2Faq_~ach+d#i2fgVUbT)n#_b}iApVVmj|H|_n!sv;O`_nO((nWiahzwI&`H$r z5E<YQ?z%;TA0;l0!Xw((gmxt|69r>*LdGE=fOvQ@01h<A^&-b$S?1q#>-Ex^SmiPR zjChCifjm>U_K^$>h)OQU49rh_6o+vBoiFR}Tt-hkVWjn3b6Jh^V`Yd%1I3M-9XH9R z@6|I1mWK-(-&^a!wAY{b`s$g8TC&954-apJ4pET>q_=JVka+(O$^(=~w%qeYQO<ze z`W~{G)@vaSJhBfxQHt3{f%2$PLbWf5vnBK4Zef$31%|`IgCbZ!mBEJ<1=E?<m%D|? z+G=D_Hrx0UMZ4qI!P_mqUD$Frss!ZMle4~H4PLv!>z+IZ-)?eu^AahAT^zdnsp@ok zk3>_&H{N?lhnQHmxl+Yf?K!HHs=ndU8Wla8HD`}U>*Z`Ly=M$oslxxj9@e6m;zsz~ z`{(0>Dzp_&Gaa(q?WZFtD-;z7wwq2sAhy<JOBT?MaDJ^F`S-NAfQlh|TmqI?>pg?b zG@!{J0v^ZjHTjco^8xEZ`V0_8ra4hd^4$S}707lH1vmX>a)hKnX<m3N?fEM=A-0QW zju=33BSPyfu)g#IF%I^om4Hv!g$=n{EO@n?imU{vv<SO8h?5)wUagw_Oirf^C|l5= zA^!t#!JPp{v?{$mRwX8}BdH$@NxI#|?$1KrFp7$_r0V<LS}iD`8P~9<_JhD$+H6~Q z@UcW*>3pV9aDs!+>6LADQFZD)PpX@*gN0;g(M^b_W@cEamqXP@Ep_N)+=%26QcToH z(YBAFb|`*GsB=<Mm8gh0?v}GyPh=;zw^Sp6JVKR-gyGG}ml`s3>PEx8I<R)?^C5Qj zuahh;QEHiN*Q2u0N{@Wd(f0<d#4Rg1FQk&d9;+D1L_etPZgDlpjqBzQu-aZ9CQ9u9 z(9b{qGyxrSrIU_<OktaiTU=+VOt1KS=1^TsM()D1wGXvGcR+tek|7yBOy>X2hxs62 zi`Lh5yTlXKw998|U-Aevtd*ZTY?gmK9Een9h*b<w4d0WIQfWabwX_z911L{#9Ub2; zeapr)1C>BtZK>MxSCEb-!M2C1tY8u9K|jK10Y-TGjgsPhZx-qFwP#>)0hx-;C~;BP z9kcYo6E4I18V|rjS`hNGZsDG*(>V!vZ;zVxO)HJ^h|}_l3T*sPb{S|?;VE3kr-P2n z;kSH>D%|j+s6zJ(M`1a+r=Ac3w@*vSQPM)L#i~2P{^w1@ul8#+e4tYk^SX=+buNG| z_ie(*2(a(2XK2~3Wsb&Ck&)-A&R_x-R*qX>H8xQ3=jtTlCP&$*ek#I#G~m4NuA_hW zUoYqTDH+Jt6Yi8sNOBQ0Go<j%B}am$X@xD0F9_r9sLqRY@$`|HEA0MDONH$_srT#& zHJROGcjnPBuDjq+w^}kVdUpH)qsIr1<4E<1{Nxf4#-7oz>{>Mk<ve%z;t-aLB1po{ zx>i5GrSGH3@Da>s0<mG7pr5*6+613=4^Ubna$yCH7ARSt*gV{^pV&ONoVIj{70q3S zS%<zINU=gQ2VnH;Cu@P(V{Ch>@He0G%UqL-kZ83i4QL*)0(@S(f5S=8yw+~G+TjH@ z!#na(zf<_DZJFe;O@yeu4(GYKxCudqw)4ErX7BFdsl$hUvV6}bnsd%WN8#CR4Q<9? z;3-rp?!$f30;oUcH7!>y-oODLd0a{Nc)Zaou_yAW*_dh7r~I|)ck+le9y$C_B8i3% zeXWRv*5zvk)6lgKsmim^IMX>#^&->U&;R`A&1^_!NgC~)nMQ5;NCR}}=V(lrJwNs6 zpD*G2+eRQMx~G`IL@sCq$V2>dukRaSGTKaCNk~gDA(r1|4?D|SjdNHsgDas(5D*gN zLM9z(0V%^@z~XV>Fa$ZCO@hg`<?EpReAp^ReSLkIpl<mvF=63^u_p~=`(B2_d2rF@ zpTX<oo4<(hrLgUigvj4ZQ<o8DCs6APbFA^D7d(f~p*l}3Lm~V6aL^l5(9fr~Z%0&8 z-4{F%S*Xt0TlvBoQAzjeNnianA=gm5s;)emB&$+piLqn+G>7~RGy5;eF8)1ePLc%C zKYVkRQP?q@#7<)K`Ed*^&`UT$G|_G79hKlR^!SkGmRjH@9Deq}10g5)VJ!B0<izz% zBZfY^uC<z8lGNg<_08b$)ddh*S!ad()M3ejuSh!n!xTh-ZtdYxj`IR}whBOz8ZOh) zPu<Q0Fkv*K<=dOX9uDJW>^&e8KE5=J=9V-H2X@R6x4|duP7cTT^e$z+t(MKY{;WKY z>jz^<6H1B5XFm%mOW>2Gqe=rp)%Qv#dn>KY8!CA?+}vDmx~oNFZJr_eC9~doQ;P=I zbHkFz&%aE<Fa3e~j5pI&Vjx81yAHp+%3CevMj7pX0%V4SIXpXt6HWbc9M%@h_6rrv zxkI_nH#Y+ymI_b^_PA;;TpTCXOPJ(M`2hp3z-z4H$qOFGHQ{+P9cqwdI*F&1Nn6D0 zstq%W+iQ@FYMv*Lq;OCVz+77Cb4vV%teK?0y>|IGXKp=2(y86nz>X%+z|avicE7#} zsyVmsI4mzaGSH9QF1G2Sp`RKCyzKZuY{GFfvnOd2pjO4BaMtzPL`t8YiN(V|fcE>L zD>ur1H59V+qqy<B8QlB2ARxHg2^7-fN=ixw<b~C56NY7V4!x=1xqCYt<Y5ZyC1&5Y z+`!wKle~ncOaiS}alakY{~k_4hi&24C`2Q;<_CO~iWQWMUT<!eQ!SMP`RIrZfcx;2 znAt-cGqJcZ89R=q+uF{sr|K^8RJ50=o0dRE_}KXD-E*r>MpS`&fUv8?SyOEDMTc&N zPA`o-YgXqz-B?NaPFa$VXR73wn{;p4*5lcNLn-ga-9AX=aX9(JQ-PIz+-=GU&=0jK zl66yOi>(jWY0LCCNAz3osk1y>S65w|qzksX?y5GjG0FnFvmG`>JJqGoC$%|h85|EH z_MS;_jY(_yXmF>wX1Ik#Kzwali{~Na;cWm9uix43<`OjGbAb_`zj`}AX~gGj?J{zp z?47%K#GW^k9$oa++JW^nHs&M>lARM%#hx(m;Uep8)>(h-Ig=sYDAs5bT!*tnT`E(c zYu(1WG%R;Rca~OO=?wRtIfl%HQU^iTg}(XP&cCp|IK$Ak-3?k^3j><M^p5r7lP84x zANl(DC%j<agnLnOp^G0dwXoNix$cMy6;<&ApfwOojcd;)E&x5^(l|o}PGoQoorLYI zV2Mdv=1D-<v3BLc>VwT+!}^I_xP-XX>bP3=T%B}SZB(#Jd{_+&UI(Ln>pZwg1Kj6@ zPk#CJpBdoRmQ^AiC{MwH=_zdl#jKrQ8!(bPp<p%eB*sVcm;L&+j~<n2KBl_ubd#CT zRDz!fC)%2>gsF}%5Rlk0n4Wt|c;Iw*j@-TPKz9bjkobiO94J|{kDbl99sMg>*KA;s z+Esw(v>i{bkBA<PBHbYK+PjKbCUn-ZsxwThnp+iHMrv%5lxcJVPq$UEwd8N_khXXP z<RwiGRRbYQUks+ddi_lZZE+QAOlCP)hbtfNy_99K(9CD8r}SHAD9|o(`zzggwTRHv z7Luk1WofXue-__1M^4~Y%+P(pYVjk1ZT8Kt^|og{iQ|n&<AYg~`wn_1Xzmz)>9}*P z3D+Dz0R^kzZYh3N;{ndEVBT-<7XS5aR1AWpz*S`d#>B>;0V?R~fH4)(&B*iYlkBJP z@5p{g5vkvDtsYNT-g;;?yGpLh?D;C%RKhCRh?>q{SFL@dlAs}zQZQB#_JYT509+C0 zufE#+%zb515>kx!ARf(gN6HEnko3E-r=$G>-bdC)>Lv}l!oBF|f?TmhK&MwsHEM>> zt}j^k6yPRVO%y~xL!y0TChnN_-;oX>l*M#^gS?+&&RKT4&9K?cifE5OrdpCc>R$xu z*~on@z`7{DWI)_yI`wL2-uxX#yI)I-iJPo0Xq939!iDhPvfM|s@YC4ucmt*(N4)<b zr~*|F`{qN7UtydxjO0-!v~Pj;=>zYL5>Wdvf%~)$=Y;Q7&pr)hMfRhcNX5n#)&$cv zU63T-MH2r<lEG_?TBUCJvdQ~E=iPfz6xKj35k2?_()T7zb#J%v-x9)~RU<D<oS7P_ z<TCd;`5XWx3@zJ4E`|QH+?a+Q2SVCT9`U?qiu7ccx?wM3*hW9h0Ur{b_P4vse_U%4 z$3aCVB)0UxaCWA%ykSPL%-DI`jyw<XC-eS10mxyw>)sa*%QS57ZCVX4)Yk#Ge}{Uu zxi=JjQXs_HSb}ELINM(SagbB(nj?G!R{B8uUslE*-o|a2DJa=pFm`bQ$qYdy-qDLk z@Xd)noIjf1al-(~$et-^r7?`atAJpMpA|E7re@X<O$`xSHe|=#JoRet{{}-g)Z8{E zv{nl%yyJ6Ra%VJIiRcUrq`1+XxxeKkENJ+Pzg^J$;~sX^4fJI3#Hse=h1Tv?yJm5A z1@AE|b{_GX(gQ#9noiqXVzPX@Vy-^HzP_pk4W9ul3tFCDd}qOA6c4LBnMrm(+guUz z(stNVgt%=JO>gIon6>YZ@(0g9!jQ_s)HPi=>l>fPf^AiZ@W#vRC~sn;D0M3$ZeQ0E zwpvzdD3C|FsD0{?zNm;1Q1*+p0Hgdzr3N!*K2t7lrY{-m$&`G#h=Q(N;K&yF12H53 zTeZT|##ePdqx-K7@s>H5*v+e|cF4iH4N*wHH8TECM3Cn_+PBc(9|HH?H#^XiLZv8- zds@OA@ao{Sy&crSTlva*Pes__x@?95p4yo3V-rEO1u$}Bz@ksJK~EYA>epMpGYa{~ zEr>^9!o0NJF@DzjmU#1he+TvKA^s!N#0>UWat<%jXX^X)X9}BFFZeXsu1+>OEH;_~ zM!o_L&fQvjH`6ceRZWHu6zFPfFs~&g@BrAFlMWIia^9kvc+|E}6p$G(V?Umtkq1v6 zaz+$id^CdC5~Px!TTTx(CtrF^kMQZbu&K{#@?aEBzOH8^c59-3J~cJ96hK2!kmPZW zTYd2s@1_xqDCjHUe>4;K59OSNmeD7nHB#C$wBI1dzEM6{P{xvsQ%^TWA@n>>7rUA% z=%o_|4i}lFv9fTopfF7L@eRQ3`0}+`-eWiuYW8)g#xxc$5vVb{RWRcL>jv6omE#;# zzT!bTUq5Ao3ktPOFkuqjJvZ82;m7X4eZchI`F-<uIJ}G&Z;`){XfAi<b`ueF-GG=m z!zB;;)A;2EBLLzDy@P(i#%bp5zX0!g+hOv;P`j~B9~OhXl)_BLnVZEF`#)jAa0K8R zV<SFMaY&3?Diy@L5OW>+#Je7x_$yn(f0}oJ&We1#OPRTyxytJ^XZjzlcpJ;^anGaO z!q<^W_1w0DH%a!^z%PUiPsRD6z|TNIGi7T()J4n7YRGXr_;IW6h5!@waT8Riw}G=~ zyjGT{EPz)VN+u)BN9QAJI{&50$4x&C!cfQy5s{#o)PbE>YsdmDqkSpqaR74!<04Z! z40|1ht6MBN8m&`90AcTnuNrjruO2p2OyRKUb#FWSGR#lm2)*n3D{_OY<P~M(uG<LY zU3bzK2Tk1FdSlP%#;Sd;l%$5q<H^jWlWBIMIg$EgncWmOW)@1A@g<%ZPM+Kek9C8M zDhd);GJm?%Lrq0CT>Mmbmq5GEbx!3x0}(1R17;d9`=8nbZh3{AByrN?-GCmi|BoJT zfo&&kkiGe6N2q3YpVxZ&_yY%t2akmvo&Ka}{91}M?PUACrTu^AP6&}uZCD&q?&rI5 zW&E}f@oM1EytkxofttPQ51unMW+AZ+HZbE6)ON?JFvNxH>x--hd}O(0mWBs4iP>WC znaiXULKjn-d9}NxnOiged~a1KSI$tf>v>3V*{nE(R5sxYc=j^#oQUQNt%~4GuGQJM zU;$>4<m<yN=M5>>Z9O5HD#-L=?y?;+k$oK7s$hUlGxj&|7!Ds9jOA}(6{u>K^3k-b zRAa?rV6DeqKlrXzqaNsuyNGtPQ&A*cWr5}bhS)IeT99--)OM19Y1;7~OkwSTD(`ni z{tB!)p;S@xN|9yo`R`Yo?+8LSd4I<-celm#DJu4@%fwZ81=O!?Jg5w@XuPz8NtN&J zibwBxWA3RnD(R2iVp91E^p@L-fJvM@1fU#iIka9&4iiV$#`^!#wUMb`=1@BB%2sNV zK#Z7LOPzl?e^O)wKR~ud2WiO4bUx2SPYefI!L5(?Q#1A+J8Y^~o&jLqbP;t>WmN_X z@ys=ERyn^T;$|mUZ^Hz}*1nz>xjxi%IY+N%C$bRYZ;-F|f+<SQySujsEqW^h%Ww!L z2U&>*X==$jcY(H!(cgZ+Zr&WN47t<0a^4KakScQt7WcnJ>S#3~o5kV8xHPlOZrY-y zC?<5;N_ZmO;r=R~{5R{x!1q+Fl}AF%{F7+<I9&J-pCNC8wYjB91tH31LwGi8p{vHV zV0wkPl{Y``_OJb&-9C^d_Sx3?$rD+5JX?h3YAKg`&-A~ERb;%eQWeDs@_k+09j*}* zXln%li7hDP?m^yCc6~oY=<L9WO}L>ADw|^1p6?+a(?22~*(DT2hXsW3UXnfz4j>=Z zfor-JxcAK#owXsn79;0X^KG+$$yN69E{(6l+P*9B|C9p=9bv9bVMNk<Sxq#}_G5`2 ze)ZIAt_hv}hvzXd5>IidLDEbM&!iwUWjQ8=1x2GYQpiK{b2mzUeq`VnJ^0)7OdF<T ztW;zfon&J%Jh>d$c6;X#!iOR}Ww?ZDmFAU<w#l5BmYZ;WRvm~FLhyO1e-P%CB;f!8 ztG}sn{`aA1n?cVx8_i>Hh{LaCUZ{LJpqYDP3&Q4}{t}z3)BEuv-Bks(lb^r>JW$nf zc3Tieh=J_R&WGsmi37RhF!uI2;8ihJUAJj{*zAj(sr^%`L}I5N#b@=>qjXGN2u*}g zmrQ)8BM#aCR$?chc<DsUAMb&>P=99=m~jL7bX^ePUPW!&<#`PfQ70ZFby18@vG_!7 znpXHxf2^C(h^RJ4f6JIxC^zn`iJtWyPH|BZL>q{Z2=N&d|CtU6w7UZ%l~iP!i*@1n z7+e7dJJW&l#>7+lnz6&!x%ny6>N957e+~k_OLt-iGAz;^`U;8hUywEYx8@!@@+ucb zEDB_U$kL%s78$OMat*QS4NUH|C#0=4@3fndnXQ{n0m@VP?1yedK-OREgJW0$3a^%U zcvrg69u8vCF4M+>^`-0spjl1&gm~1%O|8S0AC!<_t>wiq5+BlT3$hPf=?p|@RTxzN zg(6C8G+ofXC(@!9%+wA0E1tnQ8yW0W`fzpM>7VB7Xf^Jc>^;9LR?yIEBxh)6AM>?G z2wAAC2H%cbk@du{(XH5@{!xvcNh{fvqMV(?yrcM9W*7584G1iVzsZ1gg^e`6`sB`> znY!gb#i^mYkPmVlM8?0*2N8bpDotehD1J=s%i(-9Gs$KC;WeEj-ZkuWzt{eX3A`%` z*_p*`0h&fc(`PjD)K-8UqQbXP9bU$l4zIB5DZf7sFfKOt+37Yj#r~!w?N{5MPs2!A zj_JiVLBjy}j?x~sL(YT_aLfHcN|xS^%P?-=jaEwt#m#5_{={lH^=8T{l>Ie^J4g>v zgAh>q?xqzV>;XKqsPhEvRXw6L?je}xn3uZILNb$kG?vwW@qmE1Xil8;!+zB=UCerU z91`r+OrCqME9#fmYS`AobggkMPni(WC?aldB0S2h#ACd3?_N<ur^eDCrWTp0Y|C@w zQ!yUmY;&U^3XoWsKSjqoCW#gk*RNE_Z<LHIv|$ga8(`lG6s+m1XFZt!3L5tnisRtm zKM4g*j!6fUd%^yM4Z<^ry`#x@mw@{l0KmhZk+SRyJy>mpjdW(F{iD=vd&djme^``t zpr+c?x^&(_ry)TaW@cI6(fj{?X0`<w4Fj$X-hdAb*Gc?ck^*dSbEx6jLw*a)`HYs0 zrazcCe?zXM65-VPqy_jP#d3)Aj~%AZ+zAE-4dt4z=WP0G(qb3t3#rRSRhCW)8g}fV z9L|an``|9KIaDY)x&(BunzobG(>CXUP-GOh|6L7?LQ<UmnxEod8-)O~wL~Cso%@IK za7pRALmeiBB}vIV<MyN6i&`Z42vD)CxzBnkWADYR8mtlPZ}1-_fgA_9uz@%y+C09< z?t_%eMAzTzR96|ztiXYi8-00JcLHW8qHq~ci4dEk=u!QNHUCFyZW-pm-e40y5I>hg zx^VE)+t9H)B!@3y-NjFHs6TTI85y-DSS_rcYj|PPBg;a4KP$#oD&MwG-L#dzz&|=a zr(%LuA^v@?_kQv86>p1xj|ptdx)Fju!}3&LKIg2py4bU+zHK7rUZDCpsm6Exioo9< z99y$=;^yk=gaLzM4&sFu`@QambX-Nls1(bKo}6p<w`(^Ms(S)oF_>N5a@o3MAM_r3 zY#@GzscsMCiA>T7y$qM^Xe0xaNZ+qhde@|^&LuLv_BFPf^FV~x#C%h~IYUU*;ul$O zzI~aL<$Uv{BayqBlP~*1OyYaTP>LH0ZOsSLDZv53PrYHH<H6*d@)Yy^YhOPMs|^ff zg6ahauZs@dIY7258D)*=@O{o2`7s^N#^sM`KnC4QgRf-qDMIagVwm_2S1rwInb!F# zmJ#hntePEw?9*>zpGO)E9;YH}G-=s2!DM%Sx;@V`_drjuDXt=+G>@lXXQS;%%Ck-k zqeYE4#^1_QoI9eqb3RZ7Ueff4#$TjUKsHD7*K{?LQu*N%F)?NoZP@o$DhF;GZ08cr z>qZ`lOCOH3Z~ucw@+Z3ee|!Y+kE2b~1xH5nXTsd_dMV~S&&0L}&%f6o$0sF(tB`u` zD2f|hvQ^o{L;c%#D%y7&nD!)$`m=YQXLGQqT|FM?$rQ5h=aSGXMHs}BJw{K)O{hBE zjGeboo4e&;W6`@gja8dcI`VJt!Tu=zXFA~f%;{vH{15P|lQeHj??y@0Lu)>fa*Ln6 zV7Jq(St)@&)BJ^ImF_Z0VsQ~rmoMf7hc)L3wJJwjmc*7A1oBxyNx=vjxZmqy|EPdW z0Wn&nq7FNdY3(+CV!-^(tL6t-tv~&c`j*B;WAR)V_3gO0vz+3vvY`qVs(2s0BU$f- zFzF&0eGGMFa?#8X4>4&#@mVL~o+r~DqIpYSs}R{HZ=2%qz2QL)zUxNnr2X~_vCFRj zKLz1zoDenKHvCZVeL)cXhX?QIw)qn^@*n-x|6xM-zij<oY9}z?11V@zOSLgrAGYdw zFtzNG7Nqia*3{hXng1br54}S=V~xNOh0HGI9`7iVW0dfouFIwvLoiaAe{zo>4lCfP z0GP9S>WbT-js3Q7H})$3H!x+h7r074(y3YaM{Eu*joj=keO2P&ZQ?oC39(v^T8a9t z`;sJ`*N^{)H@H7GIesCa{KuW^042b_;ULWlIKP+`s9x$NCRuR5RlZ-}!F(RiCX~fd zel)|<k(!lzz+$Xcrb7E+*r`L$nRsqGpE^EVihUILkdgmz#T!1(a<db-CnuCDD%CXh zrH%jkgd-_ywaa#fU(J45liwFgh#T%mY#I!;aThK==i6z`#C&tHinn*(-D0WJ!h^T3 zX|_D*V8?*eP)SM{@2lYyg%&eN>&AurMx3+!9+ET*B6xDF$qR$+XHpI4TRS%flniOI zNH-3#<MuqgkKMxKSCW6_rrS^_jNU|)o;{6ARLr2JMOSu<HrU~pP~POW;Nuhi86wAT zqP)pKDTPuY3KXW}Xklu;#EW8EKK|Npv2!cQ#Fgty81r0VkYuv%tm_wJdgWx+>B#&V zEetq@Yi*V@;Wm_2(*ip8XWF`fpT>b;Y!)dY|8SiTiXjkLCKzk)LNNsENd#jC62X{? zgdgW4;l~A+u>-##ylD9a5>k{!&qg1RqI+IHJ|~5CwU5rCU9B}KTSteE&Q@1`yU8_{ z>26hAz`JQx0QdQRMbr@cP8eTE8#vw7qgK52NxR0UQ|w-wCTWxP{_)Axxi)<TY$oy6 zn7IjKqjMF01tvx}tmh*n@$B8jY(|e2vb#&h<%Zwku}YrATjz;QG<*+iEL6{_us=JO z<}+27P_tTU1DBrlCB5MNl@cEZ<p0_q-V5cv{{Q=jS8~0qI~mt3)199pz0S9!LxY27 zk2;$jT(%PGIi(e&ae8DenNOHuGTp11rm7Wg%*-p$9+s6>0$EXuh%uejbc+y+9IuG$ zoo7Ae15$W3XFf9rtJug*H%=;+*$&(@KdA6{*F!nVD^xlzLgfd9vpM7f*T0isQOad? zH>0|D<lY=v!@J52LW3mz*4xlFX9sx0?X(NeeL1@J*_*^X<-VSPLUucrLw4PcIpsq; zAekAU%<fgPa#t|Jl>SCtFFe3C>JO2?xeP1_u5oQU37oqXfpd-EXGoCRffA(Bo|6(E zoJffe6p_Qbw<<9lYL#V)Tya5Ps-6#}ZR~s%1Zf+!2Fqz1rEj?mR$4){2{X>RcvA*W z1PJnCU*byMeh*iIhs=yoz`qeEdQ=`=e@)3Z5w7UBTAFExw0)n=c<<90n#a$M;L|uY zy;s<nE4G}N3ZFJfHU<JAmeymQGRvsLOoruo)U|81nW_&Ijs%@MRG0GLTnigvveqqC z`ayro5iXntI#lAIz}aJsFf$-66~J#;qwOKwyA@?%N5QIkYBJr(mn%N=aJq5(IrEJq z+OZp*k`>LP8oC}xkD9#<(Wf!ngm-jqCFR_9l-10YpxE1wzpBC$Ip_hA9AgS2MHq^> zSNXgb_I~MvEAwmeoR@N51f#s{D2Y3GPHLB=CeTlIoR^EGDb<F=QTKU)yL`t?Aq8Pz zJBfbc?u}9qL`d`#BNF{YaG7jOI(k~*=z(|+Nm9g@BPo)@{lRb)isTT8yiA7{LEabT zA%nJ`ltJsIt21_g|IOTb_a;xQxVB3xHWct!VPA%tj3K+i??X*Yf$F`Mij2BF$Fov% zE`BISdgjrbdXnOPgZZyN5K2u4mbrXQ(IuK%gPHaoHN^#mj>SPu--K=SWcEZiTzPYm zGpo_#Z2RG-6pW<X;0-qbZmT9^&vFgb4NE$rs&g6wsGnk>q&H>`ZfQA})$Jkb6K#(= zZ*Ve~`>@LH8X^>7XUDquU`>U`A;IQgLV?7b8T@4N^F*mP3rf05S?{o$^pWL@P2D?P zx83(S{ubYJdZT*=+v(3-B9EQ3=jP`qcFMx-qsR{xMM2ijMbXtkVo!9G+0B;RNNW;; z$M}VLj;nbi;biCgL}q9b`acHR+|hXtfi`@%T=lQ5w1SYutdrqvCn;pOk7%9Rwj5}~ zyHU92@o7p@pp82z(1wD<!lxsJ*f5ZSEObdh7P|XL0Gkb|c>;X&WPX=U?`1()f>Ut_ zPMt@x>L$Cb%TH$W%E;b8_z;JcyGn=yICU8?Q$8zkn7*ULQ5aEnwgHe&M3OpWoa!u2 z8o1CWT$1n1U-7oi^|G&&{cAe~jQO2PCLxf2|KLK-v@=AohSFe@d`@!8_4mNmzsr5` zFn=MiV9$m@K$y-ff(;^8<eu}HCy?|Pl$t;d(AsusGwD%0IH7nlkV%(r2m9$Q`N`D1 z^c)OY%@j}P?Bj=cG<Q%yqzKhdC}I3<DEiZ*ND<0Wyu<<=bVCf}4HxZ}5OCr+SX%t< z8{S=fY+?={)Og0^$I$2_e3K9wP50tes>n^TE!&&h9xM8CIPOC6HtQdjJ_a)Q*1IU) zhP>uF#ETSHPwSn&3_nA(&^l7I5EUtvVEKOMgZmvKMSgD4pohL&mj9{W23X$Ea5kXK zLk&{qp{f*xrYcRTTKk<v%Le}FOuGi4*WkZQVxjbe65j&ugD;a<*g@iJrvlx=``c_c z)^<2(c6275beb9DayYl7uyX2#hPW@0=X{>jQV)@d6SJ^5L6x}HeIup$D7Wn3z@sdu zyYw3l*X`$s&Uh{%E}mlQd9bd6_3T^;=*R~OR>8R0v$tMFb1x!3BCg{+$TG&due6i+ zB?MUV>j3L)99a8hkbcC2TziamlQs7-ye=VH9RnP<6OKVdo`?_4xH~E8{cR{?r~~Z7 z$3Fdvo(n$U|KI0gOt$rBC$<~7H{5<Tj_bWO^FCZ!IaRiny{y5g6;IPijF@c6^Ns76 z?W9VCoj?ER?)EhVbHdLNh+-`cxQ+oF=mFfdmGs6Nv#%KhB2%1Y`iGcm#xca0fqVmq z=ADxb6fy~u3)pvP8d6%VfC+?XbF}~rS}pjr%NJF=!cg%xOaI-97iV)CuR??jMk$>l zYi~e5(Qwl|5zfp^5Iawf3EFXr;8&V>a;ME3A~*Ye5X+p|r<}V1D&rj&|GYBpCC%2A ztKm|Tc)tC2vvqjSe=u9WycPMgPX47UNciYSC;J~Z6dCZv*nb!>fKr%pZqS+8#jusF z(SAN$C)m(8fjGZGIQkOCD*O6X@}Ygki_!A61!_X7>Bj1{cl6=RGynDE%QZn^bS;;t zQWTf5X`gSK;^JN;b^$`2D4m3E`MpPFopGuu2<=!KuPzEC2Q$Yf)eEC2rmv@z#nWy7 zs35n=wR<a%4R9JOJ$=smcMAjJEYDFUhl7uLw|iF?dQjZhiv^9aUrKB=OEZ)SuK!2N z1dAz(8?ucJWg(cnRHXo-m`-9Fv1L$nA@^FWa`LrSK^TC@6}hCmkZ70Kg$5u7o*>Yg zhlu$LPnrzdv(GTuO`fy@RikeNT5tnOfz4s5SEzvV+O=zC;XpiLu^GvVdDGA!h-a2q z>{qNP0psu~?o&juHb*_XhIn<Zi0Nt&neX-8tQB)Y5ir&6=HLz3S*5Qcy1IeB^Ntx6 zWH*1Wbb~vlBHW-b+~EM+G@S<$w+v1=ynC)Zj(2>fTi}>3(;lP@+R2H6<o$CtNs3JI zH=Bjhy<eH!wH+cF`;LgaI^g`g)-Px**~L0Z$~HTUM>Lc*8Q71_=vk<0l6TG?4t6q| zEAh=JXIF^ttFsKdRls8(dtYG5YLd3}`9b&!55@T{>Xmkmb9x>mwWvM3@d1%mHL^UL z4(&o2zFXJ5${P#LueCk=;R*<SH`=qD1retU(>%P3r689lC4<=-5?7aC=J38{7>nVS zGYSW~enJu+AE;Rt*=JYZE?q%R0eINO+K{KMO}Tlcn-7lfOU0R&7rEc3&hoSAdG*RK zg{!YL&g5c+aE2JOYdYZw?I(*h(~m6H_4`~7hb!LuEA6g=0)X9KKO74D;nfHW3V8;y z>&A@=5(}-JIu#AiL|2K$jY0y<qGnHf!4e9~s!M!Fnis78YF^NE-f#<##vTlz8K(nI z)H3j>i|)~1YD|Zdd$e<|%0dU=0%Zl;z{ogtB*VxTVOm{z@&gv2KqY1mfk*DC(t{I( zYCigWNnDtCTIHErp+G(tzWYloSmjQ?6dt~exaVxEXDWb#v`GV><|)y5LwsUb+_)oG z^@T%Mdrj)7=X|)GMAZd=i<Qwrc#WAv{)zi`YvWfCZzOFY6hlP`?E%vW<zYssTweW} z*5qk7Rta4kF|ae$7wb@`L9uQj=Z#(U@rDGWz1=+X%>9_eS)R+KMf<PJJPXz7*K8^E z@(zwtqt2taF({$Ony}avDIpp)gdrRw?0VqeIotTY@RA)>+t__>sy@><7&{JWVqGtO z)V)t;*5+;FETHeVQ<B5^LXmWCI#NB`)_m{W##oKzZbaF{HaJ9>$ND~V>DYxAL(M6= zuUt0EyKTEtxB?|C+?U(sRO~=4G5Y{SV+mceCvMS;Stf?q&-cr_>;UO#=q;))1XgpT zpt}5yM}U|!*Bk6BZ^NOZZeDXV8QHzgsHopxP%{fh)&a;6@DUSJDhr3V@XRrRTQ5{* zUu$p5AG*X$y{S2g+w$EjxDKAPP!kDP`i|0mLA4nv3bD)ic8d=$A+3k)!<T>7jWWWS zGjMdeQh$psPV5hF8hHmoFj6KlTwrR7_0NR>97d&-aK=0bcd@+3%3)8`+r}oI+YEE! zG{sbniHj4a%{<Jos;d%+J3#7XNE7tmdYLV*@|GEF0v~MVdi)`Nr}z+nv%DRtB@XPq zx5J+qa$#m}Ac5xl?uTx!r2yvCcJ^bW9l^e+$h3l5v7=x$6=t@H=0TT>_(U<&S{^Gn z$6oCiyhLN)8D}ll7twWms=DKYTo%PbWXW=|jQW|z8=nUS#D2|DHbqQs@VWzUN0Ub! z8#V?tg)T<PCy%ap<?#F@9B2+XnMy0i$2?8E*SqxJFC49>Z4vmXKapjLyWM(df%fRC zk*<lf(IpG>3n}>&YYbnk-e&f0i*Rq9nva=*nBt30e{RD%{PG(Hy|Cliy@Z--$-9bH zKV2L+#B228oLy$msP!|A3W5S-9?i<!_h&lZ{2ZJz7M%Bj2pICcD2o`qU0o6H5atD1 ziLeDjY&bFs0gq$~Ut&j?mNyo2bRUC2@gt|?_Sjx;fGloc^8{-nEgW17Skto+E8Zf} zI|Sxxj+-2+E;89|)9o&#Q}gg>S%G}OzKAX%-}}<6Igu07J5{#7DynXN?ccj+;-I&< z1&Qb{Mk4xuB@-a*!*+fV)qKdVVD6I^09YcBZQ`M{-|gLPmT-=w==m!dlR*FvP%q`< z`_A0d*?2j+Jm_dMKlP8=G(vm_*}fCGOG)hX7uLV;Q1@%7FMHFC*@3!h)AmTu3Mx-b z^VmdQ&UJ6%%w5llr&J8S-7k1}H8G3yp%*qK{ThvRN>?p{b~+1K1YeY;ttD)2O6?Fy zdrC#cKeyZL-Cg$b8foVCA%euKccOOlle?%lbWE)tT{u0!jtUzr7z+74LcC1YWm1qT z{`b&{L2U2GU(tYLJBl>7WS{9`MwjMR(xtiJzta=5{gjzkY0LhdKyzn1&vq)sx0BY} z+2C#Y+5urE3m0x&;b@c<b2FphaUIVv(U}dI&bVt9FT<r98V}x-zlpmV(-5xKZMAVp zgP<&4@B-l}raW~p0}PUIQ7-JwD|zDx^I<ygb#@;fs#skKN8tv<B?7BCQ{H5)EMlVF zeU8-WaEAF}!r_E6o$Yd_y_Ra&%$Ef*ufE~?jSDj%**XgyQ4T~D?IY>5?n!6nc?<Pg z!!Z;^cF2)}m6&cfQ2_ONMJ;$eDI6fW34w3cF&?<$JdxSsr=~ME-os~#KPKGm#$QhE z^Pz^+|Cd?T4!yKxGLEw?O>5&iTKuows4!al^TP~{)=WPw+<!Q^(I;z4UGet0&9vXD z*baZ~=>+dcgK1yvW!eg8{iCEoJM^5mfLmXU8X9V@*QlYnL(&5M*3h(;^deLf&=$q5 zh**$**Mi66VV4aAi}xUp{hK#$hQ>Tz!?D%l#9(~PBj^1?*GE7%Yf#$WqKVo{9tCk$ z>oq!pULhwg=|!$HqdKBhZvKmKw%i9Px;_b(HA<HpA<0mZ!6+aNQjyrmpD^e^D$+?) z2;|Y_ga1YoS0kkgsYpku!CWBl)Q5ZmJl7F6N5X96b_wi{Q<DcnANv}s2FOLf7ec$P znzhjWv_F<r&6OmJ@L>sf*9LRYRdG8d`zixjkTtC)Qo4e-gt1QNB?=Kj^@7Rdnu6xo zrao_JChrnvhx5p^4B;k5e0ZoalTbXc>B|k$rTQ_UehY>K=<<NC_rChj;faD_SFb2~ zGC&NdASen_T)Hs`#fxpHV-AI(YgxJ*`)h?t-%pg*v12<+K!x-rlE^NAG67mBgxf>% zq~D}zaH;*}_W)gLq!^|@cn>&C2U8|=7Ne<Y9uN~p$*gRq=vDKsYSR?jSPbvxYD_Sh z%{T-%nn`ZPaahs*;AL>vPBCf~%zEd-r2_*u2q8FvBIK^qXZKY2SM1Gb^I2GU=gQ*; zK!qHwAqbaeFCZ?CvgQ^{K+a;`L(MC%)wV_b^3wok!_$;VjOpQg-naBX-OcrlobW_; z<&VFnpmGV>mA^CYMh{<_e;|0NhRkd6amVI5KG`8@wc=;=o-U;4P0yl+53#C=%{^#8 zsMhHNm&!qKAs(jNci|w7Hh|rT+zv|<;kr$UTBf~$*e%y4nTa2m$6E{%${wGL!~>wn zh_Ck*t>!&VAVh%Twg8{udRq~UCwVqAelYw}6$JbVio@Zt>z9Se^DyQ$5HN(YggPuE z5$BIhE?_&t-dG*vlMwM-b<D?zPBADnfIaI14%mI-X29;N<a{*yIV0veGo&DVx1{+? zPk;U~K#LaAuvL=Rrz;($VcsMPg)t+jHJ7>Ib^*Q+p$t$>Z(#>p8MsbZ58{|4<V4b1 z<u%mi;>9v_^vUtYK!eDZ5B4b-?T8PxoePM>&zFQf_+dFC=<ymkzY$N@$Ki5ge7i!? zmX1X_G0Q7pqhqXt*#{k;&av_MDp0lRHYe+rK_};dD57f4nEM5}^(WV8hFKqfs_#{H z!Srz81$V*n{lB>HPPvJHPdWt%ZhEH!*Wu|)e=^t|83*x<PpFrJ8xO&e;QfRdHXj}W z_YXC^JDvHE0<PdSN^f8#E2Z^x{?L%Lon)y!Bn?N+EGG@K_(bqP(lEscKx1`~eZhp1 zFoeZ$Ni$jLoRmghaovtwt5Zr!EMPFc%-3sCKnPs`UX_B2D>6sfE9;S2*2=J#fdW5B zfVejNLw899;7gU?NW(mp<1jep_~~eT7GbP<e2v$kwi(cEKPtPxp`bj@4i8^YNP^!3 z|Esu#iyL}48-*p>mis7@91g)X#Vmnj)C6%D@DC7&0kI?WWW`sXI-NuVN7lbGa8%++ z{?mtFxDDV?O_4c!)YaI{mL_Wzc2Kt%C|Y&roq?HZpwnjTZM$r{V<g=@llH*jDaeH{ zEKahTZpQZ9q-5ftiwCW_ti*JZCo9f%vCm;CCKv8bc@O>8^k=u&ZaOnr>&d8fkdFf; ze(X`$JMk3Duv*cT=gB)ZycOR@{P_g+n8ymM%cDOhZn2Su&)VXrBc*7<9uofTt~QKz z{Cit0S>_RgggiDNWh>U6O+W!Qy5*aozn4EL4fzhIPHkEj&XtgR3i2L87ObGtlOcb8 zg@#@Nq7{jL0)1R4(fuq?LUdpnPz!s6Z3|!u6P%HkhPX4h%=|pIi9RJ?E&ofJL`2fX z*~yW1wTeeM+u-T#*#7amop|eg<U4q64S1Z>A5&z6TbN2hC~jO0d8)MuEY?Tv?yq;w ziE1Qa;{3dyt2F#HKK+jVcZ2)iAVYuD6Yr$XUvh%oi}A|Ip{^nwEEssNFR<(Ab=u({ zYPPY*3K`24XI!p7-k?|@#lH0@Xn6x8j2iY4KAJ0ko3cERGHgiD<l$0@zqeN{y;Q?y zm=z*e<vNC+I4QzKy{Z>>Tv+D6JIW%#pmWZV7ivWwQNU<=YNnlqnIZ${x7C_IQ(Jbn z2;!RSKL2&q-J0r0#_wL<t%Wp#P?6?zqhMP?Yo}jz6ZZmJ;+R??>`K{Px9q)qfK6Z~ zXMP~ow?N34tSMH7XRZ<}!IE<6^>KSaV4{QP(Cqry8Td|Na3l+X9t`$O3%Ou!9fynP zxLz%-i?{!IQ<-rx_uiNj0&kM(f>@j$>T5{Ako<ViQKw#4QG-o^{-ft)I<-;b-oGix zSh+T<XX^Z6Z(hS*$A(qv-P)2D013Wv2?n+5<IEp1gTr|bK7O^&SxEOeBHw=kl3lIr z%(2Whw4R%DdQMmx;kimF$iMr#{9<cPh3@MqBF~4;;ancsnF${5iWwhIYB`V5iT0dF zizOa=DwOv#F`AMeGAO;>ER|5(_y&+8O)JYHGDz={a0pq>m`Zu;GHx*NJGjB`cC`pM z2o9T4DEWE<TVAcMUh6qe+20W17}uIAV{9{>MN!(t*+UfRGn|W&T<@oCvUoFhp~?l1 zMaP5l{Y&V0IP%r;aB#5cbP(w%w|x>bixc>lu5t^Q=iF?Poj7uN{l>t3N56e@E}pxU zHh-m}bC65Qb~nlu>c7?79~15eCk_Yi7W?2v#GVA@Vq|1c|Lx!qU`WVbHZWjNU~8I1 za5_b?54WH?MI>>b@Xd(PQ74@bk<P~n)5AR(1&hx}HdtJV8yyRal$+jo)EX)>p3Ju^ z=?)|=t?DigN1J<){D&;m(dLh>Laajb2MY=JtJ_Wt($H^4zSiD&qnKJv>nd$?y<P8U z>YJRlNMQXn698X*cQ4d(NNUa`_K-xb{$h&p`JA94vwL{D-(WWtSw%Q4DXYG`&;54! z4zCQ_MoZNatnr6~PsJ^mmf(nYEcl}mPb1(BT=Ip{RAezs#Jd!UjhN{pG^KghJJnw} zn8crBwadA7-=g6evRQq9L~*Vpx^@9=y5Gve5-8gH50^my+H$U^C=?<jkz<f|Q_!e8 zllVDcv)yaCqGvb*`iSEI3}qFVC3G_rIY_zNZyujSPBgY@cq+hwKaau>#!XsbPd^GQ z(Xyn7t8bCp9S9YAW13G_T-a&}9f_=--c^8Gmu-+{^qvO+&GKHoen@}7`S0Ds6D?~c zSQv;0612v=Fwa~>69Z2s&B&@L@A2*FoIUl<0Vkv6LoA=m6|}|S$AXwUxN<zjo-!(( zvDyP?|1I}#&wgd0i<qz}H%{a5YY<>=wZ*14X$CWm_0#ke)9Is8`(5F-JRksV1k4yt z=u|Ol`hdh?b@g)pHsHW%1r=$;ht2_a249EH7y}hL@!4Opx@UN*$xdMDl|wcID(LG8 z`-5wSyI-SrY*juw<>~+Uly8R|zrU?yIK$KiI4FgY0^-uk(p#%(@P*{ma=KUGsF#T> zxY7oBt{wO$6gB$d_Szmd{wgmZfwEz^fDyPr_*kByBmfkgao)N=N`}91j1$6(;8ecb zK8B8Y9WcQ?$#?8|OIq-rt$N^T>;3l{tC4oF2#>0B4ceQ9n=h8o=oY$L6o*bKNY#*y z6|m~b&#u~S)RM~S%1T*6b3xu6d*&GnY2ACq;GXd4#h=E}Lmc79eG+heP6PPfJf~`{ zuSgqOiOl3pW1-lJE_nH*`lrOJKvUav<pZUGE>S}q|9Da2@-IzK&v2>!*#xH{>4^Yo zkv@A$@k6*i{+6wFAqrEqWS8z^M%k(#f5q;dc3&aPhDLx{)I=D|pwaW$FEpa8YUqC6 z_U-))(-b)4u0MJ9>^?Y}lodq!A6;@cg84S$k?T}eM@Z^sv|smC(Xcu?l20&3`RsC` zB57SwjWBf~Vfftg#>=^U!<}(e^kh!qc>wz4vlwa9Io~~@4>mVF#;prHn)zb-%SrAn z;80|`x6ZQ)X<y`>Xrk%rcF_)HDd|ACrkGDD%GLZLNe23)=Ui~nLQY&CT(ta%<!d8E zW;;4fcWS0kJehFk<SDZfyQ}PZz9&%-_XSm&$G0g{qSJplzj>P<8p}O)Sy}PKZ`ZPX z!e<9ghip)X?QHP=<46PZDcJt|V__1n_dWyJ(o_+3j~}+T%-+V_-<i!`!=9J8KWm^% z8vj<@rb6F&y*INs@nKv`;*J#{dWnbI^{`nXbXU8GTj+m+3j@of9JG15e|iJS32Ec@ zWNm#o4HellZ6*CBQu!POAxm|otLKVupeW5T1&=BWm=k6{{#u2myC|3sWRT2DpfG|b zZSbYX^?3SA`!_-&&<4$^S$m>>xSDS#-Tb?w34TTGP+=iT7W&4ZayP0yn9$UBhsDFo zS5ZP$`Pn&EXkoSa@UfbUPl13SE|Yp52Co}~$kDBdxIjp1gWw}{ki}6_wwgVp`a*gZ z#SN|MkBibW6o)M%FYgYuwbR7fKGoTuPEz+VNpxX>&F8;E(kYek&U0_ll#Dmvz|r$w zfA7-`^QX8Gyd{@yZOJx&+y0Ly?(X#mJ*1F*dY|fF&|CiT=ZaJ^g!neHE3i3+Q3<Z> zP@YX0bx8=fN!&SB&4sx<KD`9-9)8Is&&s)O+2quCZuE?=4>lcI-)b{TG1k>rF))CS zxZB6>z9MDzLBHyWy+*!v*7{N{EY;>l5AS1nqPb5yG=Qrs_kDBNNpuujzfm&mJIQPE zpZJz5x&)2iH-?bHJHWokx(RowDkN}SsK~Xa=8z0AHvw8IJgT2ei<)Q6-kg+1TbWvX zXS8B?m{_81hgDzM4rj(>$5x;{vQe#aykG(IE|ftZC}?!9_CjJ4yTFbi2o4Lee0R4t z$70m4XrBllsppmQ#fl33%`dqRbgso1F|IV?cr#wMjx5nP6}D~0EB8G$Tp9O7mnF`U zoKzm|mIw*Cux43hsJOxQRYaVx%RUx)Z|vQlq7JxOd+)3~rX;3AyZX4*)}Z)x0xuYY zm{!PG{rua{oQ^y6tSL^&2H<bYZ0pSdod3bGD$K&k4%LkO)s+rSCYp04HwmLal1Q|h z_Jc21z%2@DCdRlUTwqN<{m<9HBzVLhsW&<0obd!0xA+RIHtfvLBjvOK*!IPXcwT|! z5rdikr_zRV&-}g^uXiP=?nE9hh`$Ml9JWWZ1=OXQrG9kUohjmg)Y7{f4W3e4$R?2f zuzOe>6XI6mpBcZj7aOEgYLggzByKSf2{q?fBLrwR|H;l`Y>|qgr%Q;o6c!SXx{Y(n zIzS<drQYUKNJX`TrcMqL*_SZF5Z=Q^8Z}dL)u2)H<F7}}f9s07M*go{aZXowpDAo7 z{ow}cc9m~0yUii@)RBYl={q+;sh#Zf_XiH9s&B@o@}`Q@-*17RKPfCPgTnGRwb(kT z)-(H}1%FNVmy#kctaW>;`x9#UUH(eh*Jkn2D*7CyE^Pa4QV03b{SuXBklxo>4+cEx z5B*2ekd9lY6m*kiH^j4r=wOT&Dtz{?a#KvJG~lDL#>2emOi>UZOZAYCnyY}}YN5Zi z3sH`R9nV0%ENc`NA#R0q=1;%=pHMkgdgQ;zdj(Jggn6vp9o>>0dN)yXZJG~ctH?s* z9<<1(>ORHV^u~tdO|ZK}i{94pJ=2w0qp5#B4GT4cywobjSShrsjU-uXe_Pf5$NC@_ zE7qubXSF2_P2P7(Nk3WE#9ovvy1RMDvNSvViGu0#Fwvt@Hocp+*aavZ`|w5Pjzne6 z^)DiMKDUp*A2W$~s{)h7mPqLAe3JBOX19OAc4=X59Pg`Gj*gK9HMskGyd>9q@8e#` zdV@tycL1GMw3-y`g-xuy)68(IN|gk`uphQ0zC|hYY6Cz+4nvyLtDdSP8uA<I;U}MI z`C_J{+TVGN{cz%9`-t_F4tq0R+bBp_y<IW>zICmyCRvjG{QjfvDk;&Jw8zR)xS+k{ z*%tmFuy_4cn!J!hE{pLc$b;g(k_Y{`c>yJFRd`qx-4zH%Oo~#@q&SE2uNol#YH!k! z_6Mwh?b$ICQIW#haMo4ru>9y&^iQi~|2IiV`;YWeJIp#REc9U%-O`NPttlfBb9)`! zJ##ZKD^oPi?vKXf)WLQDIAnHrGD(&K&~Iw8DTJJTBlY~f-(EF5EZ)2T$hzzGO2W)& zIAZ|{^+Zrq(=yiDG=oMROJ(hAkNefikX|)&iSceysR*5<jKw;uE$U&s4Vj~E5syTd z8MWs~j9PaR^Y|Qzc})5_I_Xw)OhgpFUz^b!qoiw;@5pSDm{QK!D%d6TF7&g)IQ0c& zER6S^O*?n6ZkUCX|M#E&s6cX|`(IZ6!s7y}?0vDRhz#`)pR@pPlu%r)@K9pW^~(YR zbHT!9(NGmjIZ-on!|Fr6I9@$R`BG(ox4;Uq#mTxJ1Qvecjx<PXd2+YI4E7#qk<P*f zm0hcIOVFBljXaSL%vCJ5$@GX+eVla2P4yjfJKBIq)!L<qRGn08hh4|o&I=5l3jPNA zAST)4CX5Kr0@{w>es*US5U1K3nuIs5=mUm&FCDkKn!mu&b>Y?9uNE@32Q%*L^W-T@ z&K9xKdpBoVxwOBB^3k1D0^&4rtnLr{SvNePK3G@ptsL?kIa*|(EPMAW*7h)RuZ*2k z<PAG^wC#@vMgPmy!tgBFF>`m(Hp3JcS>-ShPg9Dl@Z0N)V5pEn!_s)(%sthpHC=1S z#D0Ro3RDw1g*R510)=NwTGGc&C@}I6oi-@QQv;~+dfp3T&KNmE#b81Ca~Z~=Wla|f zPGLy4n3+KRzbe>Iw;chbeb^2(7}T!6d=mz+`2T_8^S@*r3N0m#{!vgWB%N}hP7@Xd z{q?c_(5gJU>xfzCq8<lA_jyR0-~buMA>Z)&hKBNGWLYritZQi2rY96E&FfSGyO8}E z{TV&U4@>1-33496kk)SAU(4#71kAF!n|?R%FB@R?$?TL%R**V)is^9JQ98X_!Xu(A z+c~Mbc8Kae@b0aiJa)pRsM`E!fOqugpE>0s`Z+IfQn6a7Nr2~F5C>V_J-DRHX%K2A zz5f5(dTcj_4^3S^x}$aj`NkJgmxQ)b!CV%2?@yjQ0ixjYnF#0L<u@D%AR2sty77|U z0&URzZK+@318VQWZ{a@Afz~!bYc;Mn>xwRj39M>M)N%}gsOho~s&3){D=T;Q^S-_O zfCNq+577Oq4y7J5pt($}W452zYt<iW;d4lGrddsa{*6GNz}E-dRM!4s>Y#Xefhs1# z<N<}C$ZB)>p!@n<sEqD~*1YoPme4b(H8*{uG}K#NCH60!Z$TLpHykC{Os9`d+1d+8 zKAPU^tra;yT&flG4stxgCRfv~vX|rsbNL?>dY_o{UOhtz2b}!H$B-4740NjFz-rZj zdF{qE16^h{M`>k<ON+X&<1Q<37*GoL>Gs6r-<{YujXo@TG7bB=o?1{vY*QFPA)z38 zI7qQ>>vmd@!K}xG!wq<=r3{ueVFEiVFAl-*S3@FIYRloG!_O4&9G&fmICPOoVyMLK zVd+Pk;KYObT^%VP^OKo4C(%rEur39AzLNZR9n$ia)HI`qpL(yK#6%s@3rox6eU+JE zw?)Ciai1A0;?so9`!!w%Emgi_EwdQz%u^dzm$h5zJEqx<+W{gdB}(ecvoVDRR_!8L zqiwjdlZ0WlavfKDkLZk_)tV_I`gK|4j2_hP7ss>D-jm)Auf^z1_{hEEmm()-m*nrP zF~}yi?fTqZ0Uh=m8(`69XiROQ`Xm-s>pFmkteM}qiu}`<?%6buH5Rb;Q!GsG3=1%J zX5k)^o{A6jgQaQ9#>@3qawGwGJzeXzsvz1t(~YI-cmsSASy^u}cHHOV$V~Y5QRd!F zrxr3nI50#K4&+dqrM7z_{SeGYu^#Cqyd=EQw-yZa)YDvG3eQS)4@Fm2Fxd=wZ>6F> z(|*0xXuQK_R0ibFV1VE>9ekEi4sl;PlkaOxD|t%<uIB4jY?%XXL|E?65-13wC2ep$ z`^@`D&*QVB2oniuAtPfGbo`e}(KNp@fEO`B<%&HZIMG(meb1)L;^(A<jN1ans*2c$ zN+jDK!?92sA?Yk;8})Q{{q5*`AghUYnRs0!V+=ER{eTw8ib6Ynru<W{9Gt7q?pmO2 z;HD>QxwTe4qboO$_PZ;SE_;DWi|PKoSmtwkLV5d`tc?5l=*->|y~AG<&EN&;i}l~U z|J>^!36uV0e9rV>!<k|xkw?2yb2RMFbhJWFr$aH;SNSxW_ti$(*<`(i7<UEYe&T*B zY&)!To3Uk>b?-H6FUe9o=-(Tmyu_<#J-4pz++%b3Q3wESNq9Ls{PRn&0#Sn&HD1DM z9KAH0IH5V5VTa>yzA7g!@UW|Ld}SUby)~k^orJHghp8<LWDVTE%++LI-W?(@d}rne zqNn|J8<FVg@G}w5yCl(*h;~kq>cm48g_T*Zw(g|$$gG@(&)VrWPQDg?VE+__9CrCa zWHh4%v-Qs!r0D~2_PKSRriw(4!{c8#4$B4kBAPYz=4mxX!l3U4aisWoABLz3B<cew zD>LYTCe%1+Qe4&qK)ZN7nmEW6(iq8`(Et^0xLlZ+m9sCk#INa2Qnx@cvqhU)<o)(D zdJ)_Yr&jY&JNx(8ObtZo*4D2lTxDKB#SzN2q&`Q-v}DwoFHS|~J{H+8^&rCxyrEwi zQ%SRvP-sRfp&7v~Ok(iOuVi)FN}S5uc?x{+b{z!+2Fp!milxlBIsxXBwvDI4TYDEZ z1dTiPB*@Q!cPL%n$(F#T-<j@y-gfdNl{1A##b863U7x*zM~g}4DK@o9Gl9ILP300l z%kwa3T_(RD-@gO%JVtCKxK^yG!R_y9J_Rbj8I!}O&(<yWv3=gD>1V$CW+j85(Uhb2 z!~P$8XB}2$y0(231r-4kq*X)&3F!tE1q%>R5orPG29aDU3MwViEuvr`DN2V(cY`1y zC7mu}5#Mz$tUW#R&Yr!$_xt|X$FbHp`<R*aJa=5zb)LTyH^J<;M3qRPSDhwA{@>;> zMbCSWntnfe-q0x)1vd$|S%)a9Y;+dqCS}4XL)MQ$I;SP@LMg<OU}PZayigyB4vyaE zFX9ckufT=Pvd>@X)ZEIGKy_9I$B85RwP!(IXB_3PC5C4p=$>)qCesaPBUC3LXR59{ zYOYHQwG7q7rE3SsTT{2F2D`yFyw*6sTi>4Kp+7Wl)%WL7(83N)5b}19e#Y8&e)~&4 z#H_oZb4@?Vx{gjF0I69~j|^-_e!X`<1rzgh(y(bJmZGujlX8mg;n^`u>>Vwp?j`KY zH+|&g0p-w4W7ZCge|b8D*xB^mgsb+z;v|#u1tn&38Bq<d*4&uKl>wU%*TVu^)UKJC zqKbhVUM$lEryeAZLV-Pvln~fc1?{%OD6mJ=;4Yu#QTC`9+s)0_>B|EyJ@3b*2RIL$ z67d3u_?=b5`2PhCaX1_7Ci01yc>8fkJ|RtOacsK_XV%2c3Q)JAYN$R|F7V6rZ|w06 z4gDtYIS#u{LdZ%&FUs`*OT$HEWO&3(5#OoF?1)goP~95udSl*wG?>pQ;1<zM*wB4z z91poCbsztHY6;(PZr6)R`h#SVwyAWeLhW2<t1vPhs-K;?^&{iebZ5FGA2*L>3ebXX zZE8UC$t6u-F;Kzz@SVj_Bh2sL&xw@nC@P1?^EZ|44^8oN)gP7Z-}&x3u=P4c7kpJ2 zo~?L6|5ChtYIXrA!S@g)cqa`|f;X(Xkmt_W{0+M>+`y5RWf8n^KA;CGQOcRxiI|j^ zd3V(3&SsC70_MB9rojv<*C|gkM@fJfuri04-=u|6U1<x_Tum0y=z@j`2(f}7QP!Ut z2VuL04qWA7bYlikU?*QpCWxGoTJx(Ia^kZK!{T8S@&w|T`&`;ZI>N6V4O=g+nx6Tm zAN!qeDpj~OgOPPQ7iqxaE;^@j@BVVNU5RX@fyZ%PG1muUyLi=rDa-f$a~ymQ@aqtS z8(a#EXboI3OB0f<8786D!!=rN`3Rtra0#dlSRYA*iv1@Cq?@}hUkX1=PjcVbv?2DS z-;oC-@<Hc_<#o;#Qki%hljUV?yrG}TTBWb8@4(BN3ZJRV&f(b@4Zy}QJfOI0=%)fh zzvdZ}btasi9z@rlP@ON|fF><FewehBd7nv(!8e1(hijr-Xzf2m)x9=Rv0M7wj8Yfw zy09q5oPbN1uY|;O1<zEM3;BKwJ*bzb#zDF+M@>YJ0^DId#~0Qxn+u_1(D6kv$k2eA z>jfK*8Y|4`Ri*~$#q3L#apRmMlpJS5He4NR7n*DY>EoH=06BIVl2uH{l?cD&GGS%( z*h*7A@v!Uq;HuCQ1u^l$8Ev*lgIs>r5Sox7svQ^g{qswFbXAd0CVM1+oy)bMu{1Sz zeySD*WY+)p_bAG>3G>95Wqc+&<FVa9KD?9i-Pm)2nHz~Gk<M(Bjr+|;WL26Uh~xzO zjKRlGV5jj%bq1IT52BnYxKY3Cj{KsiFac@w;skUo0w7<k9JGxzMMN6ib1={lND6Jd zNN1UG0k1BJ7m>L9GD)`RK^={B#Bp!kI3^%6pB(grcu`0SW5Xwfc^t2|5sU$^59-KL z$TW8cHG#1?;NpBw>4yM(Q-TW?m)#=kygulFg#TbG{g;R)e@O@Q&k;>bb&zhMJGTa6 zikBd!_$qc|A(rWMz&`SBNXNN>q`r?N%`!*%g+4uW>Gh3V)bWi31)0pzo_y3;$97^? zt~lxP0ik!k3IFS>1AFT3`lix=vj@j_O|kV&8kN?z+rGYa$qpfU?G`WD^M-UNSh53_ z*Gwogfc|dG8$Z=@Z^?R<s`xN~^jdyO9l2=vhP|h0?f@`6icy1T@<nfStu^k`|K?HW z$?;)W2Z3-5DeadD*~iDnH%K~iS^CTAzV?rD!&XmsQCD=e)?i|&gh9~%;<r~<rw*4f zT_vI$>4f!>1G>r}dB=Kh{PCJrz3<AO>V4U52D}k{?kVvQ=oJ4i*oFUg$W-|N$YZB= z)e$6$I{Q2Fg7)Bl^@7CP4Sp^;{XOkLKy^6mSl><$P^#7b<4U!E>>~Dyl9xXsB4Cdc z`SIR^L<IlJuKKr$2>t`}&c94LQW3ZP@d#`M%?k1V+8N1TCUfBjeQe%n(AT3>Dh*^B zZ!&0l|9=uDy0t<DFBAgI2k7&)qw`G?y-*1cystocPxsH1_ghE_*uR(vw{XNXZp63Z zrJO>JQSD3La{Hvsmg7>u6Kl|_-SSlnP;{dAShND&o!2iwQs(+vI$D7SK1ZEdrM#H{ z<?SnB(H{tln~EBwYOr-B5Cs?_pX$*C6~~F+MG5=?1nd86SE;{<HpCAO|NrGlWHfmC zez@55uMj%_3ocLK9lU>7Bi&N>vN@Q6{9v+_+A@dcOsIziMgr6ha|s7q?=fU?ET(rb z{-}+s9%_8i2RXH8meawzXZdy`bBQFmnBP9@*DJ4p^9g)BMna;^_nns(Qs-3J$t&;> z&c4kHC6uM>9maN0jRLA@pQR&=*^qG;qAHPw_Jf<<#J$(JMCmqQY>Z+nYJYut@~fx9 z@7X^8?Pn+E>s0!fA?2Nhms^9)gHKfE7drKIQ>RVcTo}LF&XOSt+T`*Sg_npdyZPs2 z*%yv!S}y$1-BnJye0;k$F|GOaFq<ajI*>J;ljS#V+1&~KN~SwwUz|Y3g3B4h@xBw& zFhWuyBBgG4XR5z!3&~aG{gt6lU=(Nx1Lsm0K(Z^T*_@v;t8|j`q-KH?+Iz3=r6(&o z(R|3qdk1R68Izi(%(Zvo)DG&>LfXrT`#-UYxJcs>E<Z9BzN1=TfBk(_3))}99)Ynw zIR*LmzT|lSmz+pv&x9skU@)C`a4NhbSGcX~c*4}t?IDv+10tO#L#9ALcxhpFoD&UR z3M31mq3B!AnJYT4T%iXdj;W<_j0S{Gg>3dVA!tdP*T}p&s)N!T!ML@bAB=VqpP$K{ z1V-2c3`yxS(&NyWW$ghMF6+?2e#e)^tAl8Jibfpc-)fBhd8N|eK7!wptRe^}v;bxB z!}O1#AIaJNrJPHr{AoE?S-8Jl<K@MqqgOkfY(Yt+lrp|}YtiZHN#yQ^S%x;<6a@|m zrU`D^pK_1A_5Mcht%kF&OSUv0c29gpf6PmEr=GiqMP%(>V?$yK(x*|zNqd?;Qba2X z-OsqOsVLdwKJEZXWLbV(A?q#`<6Eg|g`ck4@BYT&|1FQzS7OZ*0E{5n*(qq+ZgU}_ zV7m{kL1v8j7loj=<qXp7LjH35A^w;(UD(Q%9N-l&uP=EU3;u+gBpml46=%$x{!P23 zI~#;|N`aeQFU&%!!Ootv48N6C8}I#x9@AewISMbQT${Wc%%dkONgs8nKS<llXS<we z(n*(G|AR{V$7i#aux;R2Y67==j#J-AN_7A<wlBJgr{c}W1W#ihM{F7*zQ0{TI;3oO z^I=xi;LZD`12;CElS;2Xar?B>q2}wtbqz$y?uv|xVgMgtt)ie}oQ0?QoH&W%#m6%y z9;t$S$q$GjJ!apdPitTdE_J>ULDF2kf3D2|hvV6~Pzg+q2bfon<|j<*6?ssh$Yg+0 z-2#+M%;RVfGfC&bNQS9$T^r~*fn2Bn-qfCc3_=*!ESlktUVcV&9Yr*QQ09m$867L& z3J%&uL=fUh^gTS$CpcQHVoUS^P`2+Us7*MADqNIcb3+kk$m8)FI*(tcJ^!}TE&X>d zj$PO!<Pa1YOJg+Xrvx}z<syoF*Xm>t|3+=>NY-_4H!mPf)+!)El!%$}PK~!B5}^WS zvK{m3y$?<!=xI~8Tpyaqy$yuXp&_*ncTm{b{THJ>ElH0>ml^LC%BZN3qUjfBL`<M` zBJTW<vI9mItg1sU&uE@9%9z}5mp0THB2J`u!6>79KUHvN{8JbpdA!}hcZcY@e9&{} zEr4s@lKgXAbD0b7rJ2)d@wqO-bZ{u@f}m5zV+ohLlDRlvjR`=U)?mGe*0|`i>o&hW zYB52gF?X{aMr0@uj=zl{5fb_=;oM?g{|=}><$*afOoL4?+sK?lj0kp_TAF1|7QGwC zRuYvn`c{5{LS2dXOFm^8wPVjxq@qrP9<{d5G1<*bOI-Sy;`O`S^&OCoS3eUH7mf5C z*jPSTeE*ycpXtka1E55B^^cbb@TBKU<(&7L<;=$b`09`yCI(g__;P>Fd`1&u#6KEr zO^H=?oGe7t)QxtFp{5xpFC?h5yU|?@@?enY5MF$SH<`~(H7F{`xSS#K-CnlN=#_l@ z4M4t-?voCrdaqy5t_ROw2Nv`Gi;7gb?6PPT+Ys73en$ELcf#|`5<$~t__8^fBKGZ0 zz996h9}(3e3``?AGPWN51!F6}d2^gHBadFynR_=Pmqzpu!_~N{R&2JNku!HOnHI3s zmI(7=n=>7Lg@(YD%UgUwziyG!@o4v<9b4R;;AA8wrw`k~P{6zorvx(x;K<85tF(&a zMi_mW<zzPn`7f5PZn+-+)XDglw_E^v4ZTPR0P1}yQ=sZzG`yO#NHdL*2@P0uYEQF3 z*@g4(n{xuP$axLw_JO|BU>C{*p6@2d1Z6o`f%M}Pm~i4^55HQ4`Gnb@n%PkTD>e#N zELA`Cowt62yDhDQKYDUkIZ5q^sUWf-)p6y2f5^y!_xTwj1pz$Sr&nB|yG#fE8d~$o z6w=Z6=wXtme~yXR6tZGlwjX~#_IkR29`kTnula*~opr%=wuBq+*YA~Bz)BAw!rU#E z&loer9@Ge7uA3W}?0mQ&4a?ng&(H6wU-&UmQ5st+!9-E+$D$a*K9mhq5letqo=i~B z?meh6e@bBk8yL=UDPu5~1!wbla46>%P_lv&do0w8R!Bk0o1Pu;pXZ1{7e~Pt3Y+`M z>9;V#d(k?>f9z2{^IGJ3q`c?Ry~j-!kS39N979~?p)G1V3>uoH+M*9VBR|^K=o7$u z=XKyQzfyu%t2+Bprmec%1SZw%j8deKm=Aa&>LIuXoM9X*OT~7igv8lt$umcoq~2L} zCR+w)trVD*XArNP7WUl5gj?>SWXCRbV(euD&Iq#$<utEfVa;CYOQvXh-b4tV*u6@F zMutqeJ9@S!&8(8kpA3|5^*_Daj5B^R*{fRh#f(jz+o{*;c5??+ath;$J62jEm7T?= z?uW}6{{$t!YK``Vv9HjN?a!Z$eE}WB!aGkgK71xpT<wy{>;=^*p)S}_Ss)fZ7cUjd z6l?P)O<x2>@m?-5yD1$c75lv74i*Kzbh|6c-Hliay8*Kw)%ybls)X`E+;qphI25zw zi_)v%-D=$(e*+y2SJ=Iz{7VlH5d~|?==!xwqqF}CdllMGnm+2Et0gob*yZ`WH*b`N zfZq1hv>Q6&>+aF!fkT?@=MHI3v9u_m4*)JZ2sg149<KXs&<qzQyrT`JpmISLn-k8< zK$%VeSa)@AH5X*^735Vr_VaKXHO2J?<+~7<1Ee6uCE+Mx9w=qi7qFvk6VqL|54N5D zlp2m)^OZVaFHo8at$59;6L9+JSzfkg+3q>8*Yca!B@Y@fFA}9E<^hl<>yshnUF7De z0-llafHmdpj(Z+jJe?pC*eG*)zGX`b<U-$C0lP@xVsWu6!F$sJI|t4$6e7EcJ9yW; z6VisFq7^}<re`_mIYZT*bF?OMa&f2IZ&Z5RQ&U{Qj#)knT~ceEn@}B`NMh7Y81HDj z+{uu$n3d%)IoCU9I^d+75s9&IH#t9iV~@a=SFWl-ChHD5$)J2&_WQK<rxjbGIs6JX zCX!&DWM!unl?#je1`{icrcX}<{vMWW`mN6IHT4eh^Cx6Y-D?MqT<HX;A`lwYch>r? zh)AH?>mE)l%;AUkHE32tUNTC$zWgD`8-Js}Z+~z8-241J-}QKZ+id#@;p`6pn(}V| zn$!ICnWL}UbO!65ASfgipW(TJ(ssLn@NLwaP&xui0%jr|hYf}E_ED`!ai?B)jm67T zAPyKc>w{p+(_VBuS3Dqg<WXrL>^E6mH%WB5@@|MYc7KD=-~d8%`(0!|vm^P-YA}86 z<L%gRyCKW*+F&d51OMf^6moy#YzpeTx1<8Q!EVdH?lR4#maxkB9*E$)%lGBR_=_}} z#c=l`eggu*iB_gBprQ}Smg#XzlQL7y8cWayXqjzVF-#g?u^XICzC0CNIw`hamDRy< z`N5Cd3~TzMse$7t3MOjGPCLqSL+@xIpL)||u!`t?!|HIiTqx+e5`L?wrriINvhL?o zx+j-Y0AFA?Q!Cv!S<E2kO2#0rTI5A{uv#1!CpwWw$gP=2fG%~mhj^^|&urwoS1%`_ zMkcX1p<vn$CPv{?YxaHK@rI?bE9h?%fPL=}voef@30diY+wyKyjiVU|r|X_6#vUjD z$=hjD-qTJ+o;1vmTxJ5Ss<HHevWG`p9uxqedVlBAm~9_y6EY#>uAPUPfJjE<3rtDZ z8%i2ZHgy-rA<)E^(M#}A!(iHy=&I+t{_a=L_aDQ`P2cYE@|7V`H`*oIEBE3fneml# zBTIDwJIi~s+w@L+Ae=23W0X2sNjIC?GW*SkKL<LPlgn+5;s{1(@kd~Ef8zL<n^x*C ze+&J&_-apIU*cv7hL=l6>QnC)wMy3a2pV`n&V|8+n3u?S77UWV^bH*9Sr?tLDUqen z^?LvezN;7O789UvbW$;IqH_%~?QYnw+w&`+413T6Wtnf5<l}i|05^xEPsG>4Pya-( zI>M0uVE)-|$}rc9K<|v&CTkEV;x@6Y+@f+@1KSK2Ahj`^14b);&G?3i^7bXh-3o)b zn^U*#(zPQ?%5@Yfw`yrL0XAh7+(41{JlCWBd(;o+2S&Fpu)50@QeWyW9$#TxB3^#^ zGzC%^1RS57p8DV=+%0+j;VQp7O3kHG0UPP`*ohlEMYBTfM6aw)SiW3$VJst6yC8k@ zt~pyOTX`pmhegx-7R4N^izK|4*9z?d!lA&O#$*QAhSl}vUWKhP<JkvP<fW$oiQA3d zu3pf7$$6lh2{Kq0=ZG)>Iv3bSOT(~>dXuZCw2X{QUB&p*Xs-uO*w$Em!aQ@;1N5$) zdnud=mB%}>`|3_}%7m<Om4jMU%f;@4O*4~rwa@@9Vmv+{*Ax;o<Fs6VRdln7kc;?K zA>nasyPZXCgxy3*!OG7Nhd(8DFTbA<3*8I?CE7QqXbVZC#pShrFQkYJ=0K=y<)uja zoqk+FEM;REPpZ4_&}8KO1iF>GQy!ze`m2V<WI4{eC!7dE;=Nvd+>GKn<RF{A@FrzP zeJ~ggvKFVxOT9&aAjmr<GS}ro;|fC7X-f#`I0gMM)FcxL0`x`5Eu&FzqGi!q*Bp6n z^%x=JA(MvvL5sne>w#HL1Cps(y`!gDRK}J0Lrbs~)7oO>q)N|)s8tD<YqeK-EeLB$ zbp1E*E%0cctkImG-WNlU1g%0!x7MrAuySsG)9IWE=?5qX`5<$+wL(hK+batY_##sT zX5n+--*^-5mHP!vEW*2Uv**HFnc7t<JKqv%ASii{D%{x|Su{|u3JfB_38-gf9dEnd z=$tDOc<h8*;3)N<D{XUEy?spb+S8}dom%WaSa7nK@VIN@O7l)m4p8RP+s$>liEw7j znSX141DI!|ZRxue<vYVN%e?mwFf40EgAv10R(mVD`oiq<=SYO#l_k9KmPv~Rn{?>o z_;?OGO#i#>a(;m96rQ*0sYV@42}q0ZwH1Af6ZDk$(aRR7ZvSiqEQik(cegYz#DVXY ztMN;K1PHq^yZ$VRXN941%QL6bIxPo$pi=q5zn-ogch~>OOWvI4PuYNZ(j!~jmwwf= z<n*+7vU1sS4|#)k_L$e)bjcL;hRGH1c?bvMO=8bh91sPYK1Z)7vKZqs#83*$-u34f zS3vuisHPdUy&feyo_n(o4vM3);`2JnsfPaT*LpllB`}{~X!t|bGu~i#nwo$}8$5Uq zZj(^%zskHS)jFBa#mlhyc&T~BZMiL<&suMeoJc{O)BAfQFOj|LDnU^Z_mk4`(4OAz zqB1wt@@xeiW1&n-uZpStufwLxa7mEoee27F1nN=~#6tXm-SihGB+Rk;)nRTUzZw?t zyAzUjaenB<#bzxp44>4_E%jwS?M*Ls&y`cZ8B&paBV~fQkK2Q_?GQ&+!uF1~jpO~Q za67MK?H?5$J~@?(r!i>)%#=5ZI-Tje-|K%!)7YW-NdI$pK<@C;(4Nz4Gw%bN*3d4I zMqtLMs%)aWKzF1iY1=(L)TeNT0`ff69oUsthwbJf&sohdOaeL)6?wb&m=oT(bN%q) z9I}U`TQgL45EJdOJ{UA1?L$GVzi#cR-BQPn`DhX*$uI7BHG0^6_j}DPdsw*-xLkj? z&T{+y?cCS2-Hw?qSI6VRgSz*n&OSSD6s~AjJ>3g259%+fGM_s;G^?L?XD34*c57?v zlHO8Z^shBMdUPvS`;Kt9%YukJt+FWLQtByCG4DB&2sFimuvz$nS4)?aVA$#C_P61- z9YQ#Xz|^-ZjW6!4KS3ejso`>5Dmne^Ep=^e7H<Bcm!A&sTi)AdY%Kb|W7nHU(KXmd z>*|Z6M+Yl-r5=t_@2Gcr`2Dlv!%>5*S8=si#|OLw6?zS<Kjxz<ZgOb2&Bh}cm%Q;D z&};0oMtEX!FkhqLzXzjj{Yf=TD>JKA)nQ@*K5Moj&}kOV@lESD4PsmIf+uM}bJ;Ke znoFRf5><b1NjUvrYYFDoy*C2euZoP?Xm|t`dlk{&x!cS!6XSrEPKG84mBigH=a8>j z0OzbQ^S2wD2IcN4r3#-KEmo8}DNK5b>x$gd9dWg?=|qp@{jZeJs~PA=(^*As^?bfV zGX91_;(j4r4%xR)OwW8cOlOcRi4}j~^Nd`R<AQWZ@BMVajY@t{dqy8RPK9rJmD42A zf0o%ZjFKN~SCbzrPTWlbzR0n(v<u8<3)k**r}+%1n?0dO(e8;y-CQk_0!90INj&O? z2cd34_8?tC>DKoVw@z2$^G$mpmG146%XmTi)tj#e7+(P3!QaZ6jYMK8YJ}JfQ<UBs zX);;>8BbJtvJf*!#rFgse!%mNHS}=fkW^f8xw!TaPA}rsK$SSa>c_rLnYa8>4&=xO z3N+KXjD(CH8a&=t!c8Ob8V{Rya0i^_ss$2YI~&{qbFirix)|7|$Jt{>2^r?DXU$id z1;B<@1{-;3D-_OW;QGf1ZU<ikCC|G-*oT<@;!X<}V<lMB8;1_0GRTQB4e}l+3=)e{ zNR$%kqrM|`K4g!B^^+*is})XCyw4RjrxTsZ59#%TpF1#v3w0k$$y#wIq+-Ocr(dKq zcp%yTai6Mu5x(E73y1W9Gwf#X>>C7b$078Z)ED#`BU2He*S2+k1ZTlclKX6?4G>D_ zW{lzi`Bp>esAy0;ASphSt_mMY=Zc&K`=s?9wsG)jBmB?<##dq+1MhL6bime)?<2h9 z02iu}KDKEi=B*pi^`$2-U$RTgUwpbnQ}%p*OM|QeS`Z<^{<NxlZ#-}Gyy(pwL2#<S z!uQnf?d^%x4+u_|`r%}m?r$``R>H9+;1Nqm{05%7ogwraPt|UgQMyGnxJkx)-4kQi zn1h6#=EWqwTkl(*f!4DJNR-?sjrx(y|0-VQzZKk2ABy2Wp44g@P>&_ZjvpHDD=T~w z39Bpcu3$KP<ufuen!IVab?%&jJr{;l!NcWk4-IYnsO5%OI`jfII2_Fp!eihcrAQA% zB9fsM9&C6_j{{q|24SA|2s<z=3u&USRzKqIu3*t`F7glj<`tQ1x*~JzQnMCZ%uaS@ zV|~O-mz9^-nC0Ijx-M#6KT)b^zT3+1$aVHZqG%C3UB9htkJR?3mp<J2e9e03JZUiV zc?&5a?MS9gzR$PLhCdgK4x7BMwqw5yBd;2rLA)fd7^P3f8n~MBHtz|EaDTdkkT-ir zoQh2uiEkk)e|CZNiK3^u0x8Ky@Jez<xWQ(4L*N{Bx-wWWv*td!Pfe9`mIrZZ?}LV= zzZ|^id}F}+tUipr_3an+u96@Io?t&7FL<X)btDwe6O^>ZiZ5E_p|AZvCM{Nu-2MF2 z?CM37wCM3AX;JEw2P7>ry)8@?zQIbdTe<xyWL}cBqV#0L)y&IZiD*CRRfFB9YFPCB z1>XrT_<HT+?XScbf^7-&bl-IDjk4328<{RSI8U6lo`jlUsz#=OSuX!Z#k2KmUgu5t zq3#03i34uCWZ(^AZ0f0fro^Wc0Un(`52pYic}ca~0?Es=Nb;(DP=jZUwaw#nvf3Hd zV?#vx8Nzj{Zu<5dj}$i7%qS$9HnMP@q0swr%aN)dO~DH}y&!~iNPIsv!KHzi){p0b zirWKJ+?6xhawP)9D25t-uTSuMK^_Vjibrw#R8g2Cgm;Y{(;F|4AVyy`Iey50ZLNra zAMuLYXUKmo|FoL_dgbxEix7mfS5@`J_NSNEJSg;BFxb|2zY-D2r0@Z~BHD~VBzq29 zGvrrNp@7~>eE#d|)_esY9%^~(HFLKD7Xp&)7dg^44e_ssBIRFPL@CrUL5PYdCBrfz zPnle?IjL;_+0=}!!;{I?K?}>lkV2jEFG{jwzZB-}@TL%1?!LW%%CT*FcpWDlu*Vvl z&H#I?N+zZ7#U;8YMTk8XToiHt>#s6WJ3oLza%u4v$l73cC#%EAQgWxN!wo|g1Yh%1 ze@rnB7K5{_lI$Ni%RpZ)9(^GR$?eW?#X@qAM~DLSGIfHfF8hCZwR9u7J}>dey|>bf z{4pc<&M#%;Volu<fr1M;7m5;srBh_zRO4lw!j~a?7#9SAHQ}LG+|eb#69t;{c#7@$ z`m3}?PgkSti!Xa14<)W2pM9|<Jez!l_7M7-{v*DX$KkTrP$*p!3d4zB4Z{ic*`^I) zICsr0Udlei-?xUq!Y0X&(od=J7Pe6jPn3QNhYMKP^pJ&(4-WsYhf4??E?*D-LVWn? z$U2j1X+YaKO1->{f`o%F|2-!>{Ux?h?$PPw%byMBd)vqZUpOz50BFoDF3kC)+Q7@W z!P!cU-Nh9d@>1k<tg#*v4+TZHMy+|csVK(!t?&nNcBH`>z61X2F>TO7+n9#1qXV4} zF^#KvzwdKqeK;YEy|6T_P_kmFY;#iHQ?h2XR!Q{bQljz#`nN*Hc45V>?f5@>rl)N+ zwAT)D|9r7Yw3gtkHw#EOF7l@^!_V8QB?h7K-1e)X@l-5a6cCTLfwFmM-E#<yw}^HQ zIVPlI1!>LCx8g;hRV^s3*$^-Myowio@}SW8{X$3Ee9fOxA(x;pZPe(=v~wOPthrRS z2I~l!@xOSXEi118oB*<8CWAxdG;|<_h&IhqgolT7Uw(IIWc@^g+{J|3mr5b;7|wr_ z7X{_XGGhJQqc1>7Bc|RD|G&-(aMQQ`OUnG-Us5t<w|#5}4}CtRYM78P=HpiGo(Lgc zf-`w=*;{v!{Yn}9>RNyBSJ(Svrwa`~foje%oqUF4UXE`{e2SaA&)+uE92)$P%f2XE z3E8B42K)(}@Bq@kJ%9uK{(kfcFP*Y8FTaa5*f{Y>sXoS)@P*{+%Pt;kzY`@c@zMM5 z)$SR&=b^(GyCJ)%_|d3m%0cdJCY(nTl9KctwA=4_9c^>}wW4EwhXFxQ_0#igh=HJ3 zfl`;FV|HMllKA@u*EEbH6~L{V3t!41n)UV&H_!)iHUC0)N<B;`<PuN`n1+Q}*PU$5 z9dJ^2oIIWmK!jd|Mv0G)uMp*>7VYy>)PdX?8dA=3{_$O6ISJ@`kXF13)f-7^QT(A= zNuNy`SWR$2Tu4wET0@)Vcdy7b!UB~P3FvNxT+Vvbf9Yx^V?rP}YwFXua*+G;i@i>` zVmj&I=DeGF$8sj0<kCswBKG=Lk1mgsR{KtLdROgioxr6<C%En$mhTizriXBBsxRT# z9)7zZ9Q)KQcO#p%=OG+BO<qFg5p6P(O*h`z8;v$1-Hvxs4Da~$VP>@t1T6yy>`cCO zH6w-G_SH`kkzQ(|Kw0G<wxSafJir_9O@QuZvU&I0ig^IwYdFvArVl-TkvtA6!+p?i zucTh%D&>qK_r5r5-(1rK`H4U1;#80N=GU;92dZ5yElL1j8&b|i&b?zsr193dWaH1z z2Cv28pHh{b&(Li<ZvTrG4p`-TJZC=VMO<c0`iK?PQ3}&yq_3Hgdb*RwC5E!6xkR5g zd#hn#(ZfL~DTS$J%=}b)dRj6~!qiOm!4(>rYq*>%MX6=}Ek{HQKY^o8e96=kct~3f zIuDKsmSqv?6YL5kY>KuBD@(pCc8Q|3f0{;-98y=O`(8#dLWSa*$W?N8wL)=}-Ov98 z!Y!*+>n3!2#}DMmu>x9?*&o1^78NjJEq=B$4lS9}KP;I+y?(SbU_fV--9rk3iv1Yi z20UR?%Qy$^=)*#j@3!+~>XrwT?o?9s;aej*me$h?M(2)?H!35<ROmswNG0x=76!d( z<WJu?{JQ3xdFcZtG({_gG>7C#-PR$+`pJvvHe(S!y|<BMS_eIi25EPAG-vxIy`L2) zzia_bvs}zi>V8rDEhoiRB@Cw6|L&&&$Zv1m|M-D@LVySKDgg;jqegYPn3XuL&Z)j~ z-2$TPbaZswFeWoFGV(=v;r5@0QkMzvG4E)Og}^@$k<}!Y2&$jb+mz}-e49j}-|;v* z+bR3Q;{0^q!f-;hBLdw)Cr$aD$wX&dB);Org&F*b(+3s&UyIAQ|IJtMy7CH`U7^YE zBkQYI%cRApwx+|-xEDYv@1L&e0%`g_iMf1oo!JkzfiSmpita+9P&h?6jJgCsrjtSZ z8gdJRxwNIOSheZ~p7bVVeHC?0!e*$!xLsK<oC(5LSqra1Ziao0pV)cS3{#z7ch|aD zlnQEl4<`zs*~J6vbKMhtsE_U)+O8TkxG~Z1OszHQ2Gq=~yLc)_KVw_TF#&!1y@%FY z!KGFbZB}0|wQvmmq&fD|s@{0=`331`lfbRV#3V8IhT^HiP_J7r3w4PXe65!HFL%<O z6@a9-M=7)2kx*lH!o_xY8lV~+^^qTz1u)V%4#PPN!3UEapOy4l9eY1}PsEEm;l}#v zJB~f4F(O`AvE%zA+m<?MBAB~#8Nv@Hch6c#Ymgp<TY{a=pS-4(W!?1@zhhFf#boxR z@YlKc-d{^;xs;D$_>$j+4HbOgHaw-}opE3NifMWu#r&ul=AfBFTU&4VxMQqi-$9Mm zxHVnS`DB6T7l|fsUSil5&zo*WJiN;!GD{o~R0Trh<}1VkK-57r6d3m(tpd$RWe&N_ z8cD*pigIFnG#aj>X%;;*4_O?Z;}4#xjoSvj?6|l2J)**~0qa~XDRvinoNgmKwDzYR zt>3Q668vZoHFq9<dzyFQX&%$ugf0wjpsD)SQ~S3RxN0##)9q{Z=s*ST?f+bXTUS~E zsTKHPdP<RF<U&L2W0?5b&=7RM6lAJ`r@BO5nvMw#i4R;mkRul^%x6S!4Povf*Fr!f z4e{$tA^n0%%>GrFU4L+>69!?7o`xfc3TS*o6pSHDP?Ju7rTVm>?91wVI}h%Q(}D!C zXMJ^zawcLOO-=hD#nx6Vz=TC``mxh%<?X=v&Z!3nn`!mxp|g6A14Rzr+U6z{q8{eZ zV(U;)7^ve_CGv69ay~3l4<}w8qo&$ychG2oGr~c=W69I3>{FCvUoT;Y0&T<{(TVnH z%axl0y^D+;90PRov#jC*HaBAeZ}K&>4C5OemGOgGE534Eh*CAS0SZ#7jL*_alS`rZ zcSe{^NeI|Q)O}f&GZ%6qr(<KS*0t+>GB<7@X+9j?J5$6(Ih<ttZab+GbySQ<OzW(; zHO9osUK^TkBww0u+<?UAsJ=2&1kJaD|3LE%NGkIlmkMvfI^-_=z7Ee$R@{oQ3e<46 z>;F_Ax%_G~gSaSeHUU=R6pXJ+zueSYJ1fJ46orL_dy%#r)bx(gUFi1b&XIAzVe8`J zbafy|x6H1ZgTnXCEeTM9x<Q{(H)T8_?c*lp4C`m8gP&~Nnyg@4?9HG-`<{s2FqNJ? z79#&HMG~?{syn~67j4I2hZ;|V;%nGuSDR{kRaMo9069d(hT=xmC9a{wcKX9ZAaa{{ z`$mT1=yc;mEQp9(8N~a5b6BpY%DMI@V^6m`@Q%!yOHfzYHVt~F0POH;gvIgxE=4z) z`<$H;0&TO(i@{by!X~;hk(r5-UMp4X+=eBZLKdA))NZfyOEfq}?oSNV!{05(;QaJn zwM_WK!6%xPHuqu%_9_VIUzK6t)xW=B*3m?Zx`@Fw1m-Ft0{lza=N(t}FG``;B<1^S zVjVFH9g6Cs^FMYCspIFS$ZPE=TK}cl_204=uto$!Uf=~p93`f+z7LzRR(1grBO{y< zn8V^mfMKSrm@$r7!Qsj1ko(Fa&EPa6l`qMd4+ujY&YKzlDYXgJTms@@0Kx$yJCa_w zP16-(3CIW<xlshv?gC}PJZ@u%C9M8f!#}ab`ArjZ)&Yi)s)mq5hV!4N6dg8-@g5@~ zrJQTo(#2#=Q$-_XfDNn}z3a!2<WJ-7Cl?#GLEm0Tbvo<Opxv#RT<QAH!Tol}>Zdmh zV!UI9c|0fY#1x;cOFdHWKD`;<fvgdd;ApFkt3i%~Ik*(3$UqL!g!t(TO*6z18VAN# zu(rC8v(igw*7^q8Cc(JHw<Fc*W+H4oN=3vnoGykra=c=ZKCh3b7}*2ZGZiz%KLD8| z4Wy85+}2*2R7xKI5hu{iJmu)S5?nd$_q8K6ofU~8yGBv=<6&N7UWnRwDJB2fmjCbB z85%;y`s{=OU)P7gBnY+bj2mSJPV;;H6VlRd6|g73D<F~%k<r5$4v;g}tJ1j;aEo#; zXU^P5Ph*%_ps>ho%SZsPfbx$NjBQ)A+_EBvuuk~dmXj>gpBOSm71ni;WXzgXMP9pA zk)|ixL}1=Gb9zYFOjjn?3^YAgnmoDfKb;lQU0hSxeYb?OpYuMBQZz6rQ}g52pY8Cd zl^tV+?@{XmhFERNgZwF~`NfA=ikKC`%||wVU8)^rvyk^`?FCI(IxkQAZfbqMunxg~ zVBmXRyX^gJt6_$A3$CWG^^QRQN2#ZSo?0AD+RD?%2oL|`3;BG~ny%}U+aE8vwoPFi z3-L{us2?iIoz)fIm__Zuk&*U_T9DUrfaul-2C!88#z6?7wQY!6pwrQ+DUXwPc(^rX zV8H@S|B-DYxmn$z6oQ*C%;vrQjFQerGLZ!l*z7qSrV##$<hyY<H1$vI@_M$pZQ_xA zit}^SMH{n<;rip<-_8Ia;!fvr_AQDyvk{MSpYnQdWo&Vcm*AXMOPuUQXqpot_`%=V zG|xDLH)v92qo(<$Z%uQq1pAq5CZoe2b~1{~oW4$(9m3B?dy#In1v4qs*!pK7vKJCR zLYtiJhc@{+^(*n|{nW|;I|st2a*@}l^Q0XZai?0VoiD)B=>;fk0He1kHx7qJuz`@X z8>iI;MqD;CyK<G}+!Yk^hcN4q09O{DITo_?p(2>)Npv)$5!<yQDm@(x<)&Gb)f`bs zBe6O|fAT&+`eo1nzPzLqVW6g~6m30_UQ{g40F9MsM!ShO@|K?7J$o{XT6a?2jiHQc zZn?;t&1HIADr)ffCq8}(88Z)+T6ukY`J011t(h`<uLtj#JX_N>FdodvGZxI~mO8%Q z&D(&J%$w*s>*mnLjUlFyc!J=!@$+Bltu<orz51#J_~{7qzh$qq3x3v2aOha($}+A` zT4F(-;u;kG+>UeRcF^HW+3yVgG+(GpY?h8Vfrc;;;a#z9W)i`?1`60&pv(EeNz0F$ zMYbuJJ?g-UQr?~q&crgLJcH%N()e1`uuxP9FV1M0ulc0kUn*6~C+_7GP}IsN`~X*l z|K>JAt*4~3FGL+lL~3V>(soka{^2o7!(-eS<E=N&AKn_ni00AVUp7hR0Xfm596{HP zap|e-@?5<M!wB`n2Lc%->G#%TXi7~C8SycvBPQ3NSzdv(SmE5U=i9x0dj=y05qdu# zJpcDRwcvjh=+LasfY4i}#ny=w=okRNSy2ZR=_)JDU~ma%yO^jM4dCf=y-24Erdg9x zgF{1?%tUlb?i(+{2ti;<CBVe4mwHweKOQWqzP*<*nAyF?$e0bs=4o+|`yQ@p?+i6f zx#U&&CcH_8^VA_H(U6F$xKA5+vk&CYOzPVU^LTF6&mbz~Wf=JoGx=N(e)0b|>dxef zilU^WNlS3gsHT5QO1c&|GpIPL8J~^4)CvbpAKm!1VyVsql{d0zC}20=7pMzt>}}Kp zrh|$BFB!5IeDFh?F)P<UaoqgdhmAJD(7O!O<FVI<VdKvK=&*4x$r(1D@|SNqSi#=x z`s&S_Sdo?@DZJXNePG>{KdvvzF(AwfCa>_9NN|>k5S&%yULcheAgL(}S)O<3FY$o? zX^m!<c57Q>6Jdv0q&2=k4h>13Kd1@#&2rkt1@2c~TH}&|dW;=G?le&`0<P&7y>%-= zWA<P5TSMB=e!Cu;&I9n;iqsLCxiEgY4Q=}qv+&MWYr1UdozDpea0ZIRgk5-ZQvINj zF!b9aIolo(Bb6PrqJmYvsqB8Wk!XLgvwFV1UTEzYkF_BG&~2lK@|N~JXk5$x@ovTu z#s=%+M3nEe)vTh>^K3m$fofcFazChIe&uomYK4E3I_}@4D98=UJv^o{5f&yfxgi~@ zfx<8oE#46IO--t?arIVPpV2%V96AwNrG<0`55cNqUCJZ=@Oh)W;oQ^MU6Chj-u`x1 zHnF(3T;gY<m4E#D|9_om1*2j_kY@a>#6NPd|5|V6XFJ#~BMnkeGdgtZe{{S2H>ofG z%JuihEANWQ%Qap2Au^LsRKanwu!q&YMAsM2gjO=b<k%zePfm`F5oC++SR2UdL?qjy z<)2YK`lhdF0DT3Y->Te<735}{igcLu9mKh*3Ho^qcai{*xpapWL|>LaWw|XjbTlA% z&xO`?_+3sNOQqN;F%4mYSmlvmt4@Pe4LZIZXN#winO4(69p@E;JES-MS`Y|#6o`L( zc`?L}clc-0yry)6*VoR!h;BfU%@Xx3+ovkmG+*aj*%B@$yh019j9<qkR!L@LPias` ztra&>4I)P~P)B{9hwSe_0|<kZ4cgVDy%%Qf2AzsJQ|TFtm-1=gM`MG+@8{$8w(G-y z&M1R;S0pyz)+yOCm{jVIg%0Vto0V-HSpHV%gb28ADS`=Yc55d&z34?RaJ#4Xc!?yF zhRaBxI5Ilhc6nrWj+XK??9v}~I|l(IAB&bnH*Nhh)#I!ofgmnDw<N_q;6!dLz2BNQ zod?|57Ce!@&w^O3c*uV^{{95BBauhs?oomEro@B`bR|e^r2RW$BUz^g$Ru6<lB2n2 z?@zj?C`Yq3lf4RDHid}zxhwYyeI@8vME+hK3yeK<FEtWf4-98dUf|p-oui`DssOe< zK6&V_fhtF4cHLVQjx|lu>33MQx8Miv$LlKH)hm5UzzMB!)G8MMJ8=>Z)wAtOEsE)w zfuNMPkefM@T>dyEMNxbvio7(mV<yIvOq_Qm6Rhey3|b?_;#jU$XlC?&bm#0SG0WBv z)q1<mZZ@+sTe%>=|KaqTXrv^p<d018sQiMkQoJ~$CA+8ahj19&A?cqOcA)5GULKK~ ziX>T1u3e)(?^|6Gn}e}xKhm7^Xw7c&54?_3J7`P7E^W~y*(`_DgoZb6S>CB#T{QIJ z_U9%0Po58xuX^e&1=8k^`5Nd8=!-Y`W^DZ?YF(|!LWZ}<R3ATgZw)%bUJCc!F8v59 zg6|XHpUI0454ZEGWT6wy@mcI#q`~*@Ruz3XhAgdm;_ISHZxJAFAVqS_5vRF<>*#Am z;ld*7lDv9ON)Q{-Q3*GLIBA=NAZxQY>H6T*p*unL;NMi?%M7Iz;IyA-M&Tyui;#X$ zMWzD|!6{dPtRoaqJuT-!8v4Fg%*s;AN{0eSo<mnY14yU}@~_ZxO5sW+x-Ly;<L5!m z$BN5LY|XVERIr1tA~J)vcFN$JBy_{%ItQhZAV1VZJeD@}OF9er*4Cc@tU&+LzlZfF zS?4N{bsj&RP`8|2$o)`>e7+=<sFVa_r)Ij`!)mvpxWc~j`H6Qioi*LTzo43Ja6bp~ zWayq8I5Q;mO)0zAhVYv@S)PSR-=5{-n;}2S{q8(JmLGrrSU6HhrnivH$E9<Baxat5 zddw%&sjIz7pS4pL_!7IQe9RnA>U=WyA!PnE4LPpj^;f1#U=YRli-RbsjCj6JA`73Q z5%Hr!>h|qf$Yp#S9W4n;pGdw*l1O{7c$h5DPI_ZhA>=$s+`e)J4Bi}>kcM?d+NP4P zx#ZDt_uhvtWGMYgeCnxF1z!BuW5toW;OS4EdRd-@8-&@P^!Y8RnUsua->Z9QL`T<R zQBQ-+#4JqB$4B2`tG%c9@irRN-*~^;-@rnDgYNe0f$gtM2?PfU8!daoIm_E@M-I-? zr?@mM<6gQmJkZc^RQ)F<<^?T8*D=nce0COnk-F7B7zbHler}W{*-R$W+(*?zD&rm1 z@SY!y6*b_@YpSxIj7|XAuhcF3Q<GNFPl>U&?rme^k1%?;OTx2uq}JdpTfYm=<MQG? zuYT$SrxNF`^?&@h+5MWP_p=RR;YlM-pUl}l-cC>3ko{3R*xj9{y`i9?K67P1pxi4b zQHKX?F5o!0T?<b(1%&>Axw<p><;u>ZaG4Dpky}k~4I>dzU!Vp@w*BX_5S+=}JP^(} z1wL3SVwEV>tbHIZTQh~|It~BIFl3eA>c<qglD3t|sT1ZQ3_s+R96%k(UI1-*2^vcH z;`QuvVRFV_8BE7?7>nIRU@3l8r=dt~x2O7<<PJZm(@Z}QOx(`R;t=V~Izco$#xmXs zc&g+DoAi_(OkX6%HpLM)RQ+ysZNhof?Hk*5xWC~hfr{oeBq%sbvd>S_<BK-?Q^N~t zZaKV&UHtTp{pT5nj{kYLKtUGK^&8{Fxj3=((Ywqkht24+-76ed9CX{UjM0SAgLu!0 zHQJ<WX27~)vIF$)%QwI_FnH`Bts_#@?rTuoA?tOMqh&kmhQu!O_!~C~cDklW#}Xtx zBpKt`w3baU%;@3n!?(LD3O8*bNrPufAo?U~#Oc5dwl3H7Gy>7vQRq(uERLXILK`qK z8Zldg9pnVwl$+M{HE+VJ1;AYJb2)tbhGuVx<upg&*`WqMa#-<GPXe)~j52qwaAceV zY^+qg`ZZFd1TcMP0grqt%34LykO1dcVU={<+{!l81P5_wJ14}P)U~#<0HY@$NxN8z zHZ}4j-iYH^#r##~M!z@t7dTsz=YGQ3dSgnk%WKHWn=SA(y;{;Tfi1=+$8nH(pxj}6 z`TUoIl9Yf(+-?(@jx76z#PzPRNIaT)_^8l3{k7*`fKAI=Hv9RW>Bp>92lPf#@E#!b z$M<;3sK{H7YbgjEg{0Mf;bY%wIxD(IgXwopaUHHdou6?&HtUe`s$wm!nIKVnev_SZ zD|f3&3r+7Z`JzI64kms?Q2#7;;0*-I62qj@s%mlN(SPVkACAL{KqVUEu(q2$kYKo0 z^_V}`9ehsN-ogIk3H>s?<jxa>cAui$9>W-%8%<LWbHcqRPPtR0b6z$b`j{#Gm~I|` z548dzV`w?(5@8;YSyW(V6VZCBav5b1ML3KJZTz@gB#<MIPGJB~=}oWQ>H{md)p%N{ zujR{>!|qOrloyhc!Ycj>O~V}`mxnVJ`vsXI^q#)B9m;pX<nc-kCcSn(4KMr2Bl8U( zA_I>kEGc8{di~Q};<b+x9)@AtAG`>)=-owjnCuff_566~lilAwHoX<|g0a%(4t@fU zQgv6Kwg2Vo(6Y99A#10VENF$wi8L+3yyoQvrTGps470mZoa(r>8+h3Kt7Oxs#Ks?# zx@Dawn=fnb4OUv-mkU>w-b#_NEjwvty#M8&VQA-qY;)cq;3{X%>>_^(8?~#8{i*!z zl3IceN70(?qCP+%XK=v5`qXZcv~KZev}RQa;ZHI&IXKXw#|CX$du|taHP*hn$r0pE zf);&x+U`8z0(7PFgC>h;Xe}y4;(oDuYkN3+sP%(oIXe>H=+J+=Kw%R22-+KL5YG>( zFTj{*Opyu$Q6o32nj^%eT*b7Ekkx85@$`)-+amo-Ieq6{A@q<Uc(nXUCIf|lIE$v$ zm#FkTmuo5#gSYp))tn9RCSCLDgX?sRe9aG_);m81wN@{G;0V@gOZ1sqc!7CP+nI5C zVPw8PEng+^Ube>jrD5+fhlph#$C><L9yx7HYpr>^Qm%zRTlnWbW5-;=Wp9rRtOO0V z@j1M`Ma))};;~I_&DcGS8S;1=>Lr0{+WG!<&#@n=hb<ygvRVgDGO+eZ=|(<L&H0@5 zoqqDGLVR=))`B`Y^lFQGgnc>=Q^fnw)=bE}p=#>Wqr$rRm1Va<$}^%zr66ciBW&8r zE<Ht&Lc{UK=I7HR*4fdZ6X<(dTN_tT!_+({$eV3(^(8kqO!${n^a)y6h1iD$Uw~N8 z;!%V`6V>+dK(VN67j!RLlKLItt7LYtHpnVV>=%#T{CrY8o#>;oziz3jDn+Yc?g&?* z1#A7iY;W$tqWLQvUOndmc7hT}nVMke_opHIGt|MICb~FLFjc^?e8{L}hxoXCb7pU1 z0h!9U0ccR8Hg-64;?zM8cLBSE@UIMuUBm+Jmy8GmEj}J=1%ysBCKqInc0kJP708|U zw6?J+B@-Fhjda?Nr7If4C)x~;7u?#T!lwq7cMt)omWO9X0`c>7kf!8x;p^A@vpuaB z$aeGkZjOYpl<7f<)+Jllz1kNmW<j%av|a&FId2`eEyLvix`SHuj~<R*jT7*=^%|I? zZKJ_Z`)B@S|0w3dERSaDxtfTKu_ffbx_EVQ$o5I~vfDe-j+^I4!WLr8MAPL7^VBfQ z#jZUZxsxxFKZYvl_29-ZcSa@}$N5KIoF{h8zVVQ6<aX<o#MXg^BQ8X(YoBSp!rR+6 zMG&-2$UT4WZj=?*W5qpv__>%Z{c^Hil}j$R!mgw$!tNI>Na{gss|D|Jw;bldiv7sO zK?s7H$~9`fQnd`S0`BRw*-~leLn=AA5;FmkiDjn_w$6~58=vy@?U5C@X%JmAq6X!I zF1<g1-WkAWwbb3cAUKCguM<yW4}{UKS4(6*w?#9*Ta|GA8rIEv-m+^hAE9j5+p+GV zxnT3*BiA<-1iSCtO<|r-uej#gDalsc*|o}G54BixZIdMW6Vs32m;9C1EEoG*`>fa4 z&ts6I7K3usDt$uWa6b<X>6o}Z;0jDG=dgqT?lLs663&Ao0d*<F7izsvA)XRuc>vQ3 zheGLytYG&#DhcOBDQ!bi0y&8#>sF`PvA`z+i&+2$vi#imfs-E7%gEpZ`Ajl9PmT5| zkj855*`i)WR!RP1O3R|h_vH7h0a4}VP$8|Hhie|Hk=0xkX`+!j`W5^9OGTOl&NfrW zwQZF5R8vmciK`LwPJ@`P&O-cqu~avvfw6`u+#lLkT%Ab73pYGQSBRb3m7n_eo=v4} zzUYk$)2I}eTR6)iz=~t*n|e7APK^1&?*468H6@1%N2gt{yuom-r22TrJHPE6$&rq8 zFNsSrqI35b2gd1rZFB9+(w9m*^*ZU^jEDAxG8YT1kU;+7Wg$ar-r*U1MI!?h%?l4? zj$fgmCU|{Hwp_Rhy&qvuWBqK3-r;oR4n&-%3Q#4~Ju5R^O0Pzpz#W%feZa*qOD_Hf z>^92Wl!3?jt2iCbfEnS{<?-k<85TLg?mdG3x`nE7asj{kcKq15_lcJz%rS~jmjbE5 zW6a93a!;;BPf;VCni0WV6uHw0XqpJ<^5cym&Yxc>Pv=F5Ih29UmJu%hDiY!eYcvln zwhxFizfejDfC#mvsirqMd{ZT(mH5(58$*Bl&Yvs*mfziI(}U;!%0130N%DO{?s+0w zYyI{v_KSrboSqA13H*ixX+uX(e$@h`RWl~=($4<X{ui>-Pq*M0aEvcZkI^Sjm$Lt) z1Gd_*1OfMIr4G#rLfni`RkOP9===9Nqr(Xawi&ZzZRLE$*-BnnSo^^}du`7M$&fMB zN9@=k1GfJw9x*SXJg(k~k&ZT0F2LU;;D%JbUwJSO9U)p#5s$2I?l3QiIE$8cI?;~Z z6xR9lYG?;YuReSIV&3}Z!)ONxcK1Kb|H)M>hA5wfOnY2%>lK%Hn0~E`<@HFvxUrYW zRR53MBxt&Yd6xh=d8x@UAv;@5R%DcS@I&S-g>(}jS3OYX9oz_Yn~s_HmiSD8V2j&` zXqUJhDS?QH2-6&CB-}P#k|FR*nl|10>-C@M`x^g4*MI1E(8m5;3G?fQ(QlaD-*nX$ zz&2*l=Is}&F<&oLCAIkzr-Zmua#md{3z#6e;C=qw)5#o5d+o5oSze$3gm4X8^ZC_! z)y(LhV>dzyuw@IV+FJJ=q`QWyHns*uKiT_hO`&QdkkdNQd>!4~TA~kbIIAT%OZCI0 z&njtK3DJkd;)dOVg<4Rxy)~}cX=UNk<>$&pdGJPi9%Q@!fvF^;sx1&gkaR~WL47K? z+7VS@X^rwKh6KBa!~mki?SLIIUPMi2J1FOZmvE>oE4l$ntrWIPuMQaPnnQ{q;P7v^ z=oR0OH;GLO1^&sqdl=Dmi?Cmi>FZv(bDn<{fe`3a)G%8uYET{SMB&i?l`TH~+gqj) zDFL}zr%cXtHFNo=(|U2XEz#2C%0f%q(#@7{#;wtu`#O?4d8Bp*8QbIP8_!CK9IcO* zPmROR<BDqu5_Ns!th>+*An~l6yzr4tX<Bkmf4FIT$D<;;UGKnQwyv8-4^a_aQFv-M zjdcONqD$8fx1`yq4Jk*IDhf$&DpD7z#;vm?6hMt<fKI7JRDSXVd;W!AwC8)8I{~|@ zOwIO#zcP00gM&L`6>t)%4ryLDez`_-m#9$_Td;tcdjEh2Pt|=a7W)}^mM*z9`ia<$ zk2)F~{g?FSOzR$>Oa`*vvHwBYJZnsl*36gtz*cmUasHD_vmS9K?0u*g@<J&-^XS{i z393WRH(zy{s}$s1vVm6foQ{`Jqg$qK1G)_DDX-Y_!g#fM=EQkC8;`WBix9!FVJn_d zw(<<@5pn4M?e4#63&Dg}y#$*JXPTf@%Nr$5yU_%UKXcWRpXeK7D(Ek1U8RE20KEuo zpzYtx+ChP#=Gn-i156%-*Qn0w1G6UGlK=v6RmSf9E3V4lzbQ+l<v>bnAAnLzQ^O#8 z8HmegW8@+u#1b8$kz59*5Pq6BhK;P?|8ZTHKZe>_7AQ;?h6oLwT)^x_cjZ2Yl}QF& z*ap*!yG>TvFOezt{>&(#n&|p?#^Bagn=xZ*f}$s^&0v4A-0FWhFYMB$rWi}SO}^pW zvmVV&+g9-w`P(1mcUSn5-aL57V?lq-HBz#^{7$0$ox8wfw7zTSu6r?**PFY}@@5|~ zU+)?<xW0=|aEFZ97S(($efuNVNjJkBZH<2DW=IF;a)pBm3GqPDwby9o%~IYC&{uo) zmG^nE#FkDqzR;~($rd8nVT{yXUpK@MaIU}K8ba^+T$dC{y(GMduG^iA&#ty=Qr0Vd zDj&_yjgKh5)_uFKvGII!<=kXX->vPkB_!PopyWNk7u2ArD))j7isG+==YPSFM5eby zN;sSWo%2t?4&P?vEi_X<$S;4qsQkVB9XNphEzE+?)C6Ai!slFPh7ZbR%{_2jnwu@1 zhLmj3!|2>Veb_gB07eRUm8l&CM&y^@z#}T<m0wMOXNLF)RFf{>24NE;E(dHkq3OaX zaub@dxi$;Fc!UOSvO)2Itc!w2>vq=lMz0hR^ZN-^va}NQd;Ma>{AMk@Z}f0S+)3GB zcks*8C<>gF4jH+h?X9CTL>T1W=(Ar)2e3#xb<ZH&POTKMccdDVU7<OwSo}-PVUGC5 zjrh5x)DrJq%aZ=1sF`}t1FD?xB%ke`ry2pJQAjnq*~DAw$rXG;(<(}XN9wz2e^>M< z>n`8$hokcl(DaMuaOEqm7j?gYURw3eIIa9i<6}4IhP|8%&ZcAXt&|ILC!X;UI5vkC zl~%5Bv#=ZpK{Tcyn+)nQeQ7Auo(J&Zuik<n9t-J3Q(oBKnUDq(LQmsXGN7$(H{D+f z?a+O^3nI&NJt|X<&(OZL4((fvzw(BI`~#779M0gmCO_f8{Qg1n_i|uhPoAbqy|*46 z1o!^PL6AQFN)Pgiu@#cXU_g)d@znu+8;^9oQxNj`LRg<WS33;t=!nSuI@whB;YQM2 zMzVXzrj|Oz1J(;?ISHgs&yX{(KVFYG4Joopl2oG`WW3Sag@zpr(u8?3zU{TOdjQPV z&Nd6{WqB$v*AEGl18lR0)hxjnklH)10CW%bjX<K1lm1Sk_$4L+Hs}{;l)u|h`wb)g zUyws2Kj$S-oqI-JR^~8X<~;FR;`{&UORkkobX{@*>%a4bQnL*#-^*F-2$Aym10Bh~ zh~nFM1=Q5kpkbfBoRB+loAbn6Cd}u+X2Vd{o^GX!f@<nzMM}ZA&*nl*9?)Ijb{c}R zU)Fb=#m|SgJdNeG7Jf>0Sq|E+$vp8l(9Y2kt%$Y}oQICibHX&Da~Ax)9_eX&j166$ z(m<+9%T@;l(r87R64f}@<UP`G&(dle+Wm)GTYo>*i!y9kUHS7w`v@@*cXD5)ruH#2 zknCJr@r-p>==+oSQITTo1DDhLRxv*BwjVAHvs2ipbCU+EybXMymYvVmap#kgw=(4^ z@E)(<sU?+hw4U(@OGwlpa*jp~`aJZjtg+U8xOMEB7WY~OuZ?JFz(Bz~^EJORZeiH+ zy$X4m{lyP+p>9pY=tS-a0OHi?_aBn}mH3s_j_~+zLvmrqQBJv1nq@bQTKUK(`8odR zbna}{fEdJ-yY;5quH+zV%Gn{7vDkpb-!%wVceqKcn6CqVlHC`6(zj#wpR$+Q@e_y+ z_Dk!`RqK^YGh~U2)Hu=GF|AyGqY0xdbwR_qUKYXoLaDp+D0W34W>CZ0jeT39SK))A z!k?eJR`{Y$T2l2k#JRx9{$VM^6XkOj{RkkG2)}AqlC(E{vgHC3Tw0hUW1LN$wjctS zi4brjeztBZ$}6F;a_%P4xDS2{J&vpG7Sc$Tpqqbl{ctGlV!gzYZx)cot4Vwom%zCC zpxD^pu)b=V{bxgzToY1##eByQi<aEpMLA;J=i%nfZm%loB)b@<w#-dSU|z{dG+!5+ zmSH4vBE=l_ZJBWM7P|o!N48JE)*E%%&Ly&vPUI-Jt{<St@ZbQB6~E>?xM*d@+jg8Y zYcz71wYqwkrCOqm2RB==Vqo$?^QANCt<E`2!Wg5Z>r3A^v{M<vH8|&XqwMND3!})+ zr3{%1S??v6=X(-L;~lJz)13wkiL3Eji`&(=l~&BK)p!C)YNs+ze5mW-<##|YE4iTT zoouVJD0&w^ZW0`bnSe&3j1Ljn-Uo*p)q9_t@ZKUmj+-5q>pnOoT63u9#$M8U2IAK& zxI6;`_{dj`e9lZ4xO3oXlULavOgh(KuU!ZU(9hgoc}+v#LG+-^=~rsLSHd`7iFx_H z-uXU4t|4Vj*Ku1>j)ab7G0>OAvXtGV^aAV>4Oi@QMiXH-yuwT-P@L>3!D=Z=DM+<x zvu*?%K|+4iNDA+U_`E}7A|!c6<_9VtQLj@n-xZ?1MU$|gc82KTPTHF>l<QjZ%z3ld z=x>s&v0i`YE=NnI%(@H3Q1ce<g6>C}nu?q<&OR{9tka2m;Enk5yM^7UMb}y6%j;(D z<4DG{PA?CTS6?9|@utpnJA)aJh@rjo!~`I6Gr$7+;Vx&F-U^)v<eg215(Du$5cKoI zvF4Y)Xi#qEJRLfc%bD?MFBFi6)q@_78>M<bKBB@!ma8>4(S2zw<gMK3`eslvorJMY z=*OVfsV*BlnF`+DBf2ggJU~6souk#j9V#=olF=l1^MYAg9kt&ZM?ZifQ|YWy{g5aw zM)JFxaHU*=?|_y4r`m**#S9LmZzW!rMy*VQ&|=ArhKP(l8|_{!8m}5*cIm8P!qKbd zmTGM+BVT+~z0iGQuu0r|<%)=MdR*+8g_e~vj!d&`Wz9;t;O4`E5h7+|2N^r(G8PAK zzh>*T(^$6p;Wf(HkaB^h9JD0bFO%u%c%Q1M%=60b#zUBk=J^{>0Ic=7wfP|-81U>> zGKs!HbR8QjPQC*Q(Zb`X5G7y1nGYPNWI#EA2wo!ux`8m8Oa}BBMK;lzcxwZ14&39K zh<p7b$fkt*|8V!_@l@ySAMinGN-{+xp;944mLyvxWUo~ArO>ftiI81WC`)!COHw3T z_T3TLcgnuzAlZ-Iu{_uJ$V_$5%sq2IbN_z7=lNq^bIxm)*Ub5Rzt`uw-q(BiJ=aVI z5Q={hpRcJlWWTvCqsj(Ew@6Otau7*5(&aD^7D))zZS#3J{nAuRCB@cKqrA2W#f4oJ z<9AXpaagJJdNPyku;6PNVSn=^%U)Wqm`>(B-(9^MCB($wc3U-t*E#^JSj2U{V7`Nm zQ?_ZLf9tIc#ruKDN4uHQ)la!ZstO|%H=xn<QkADC(r>ZwGA)BLfRL~L)%6XW1*;>C ziXxp(6NC4I5aRu?-X&?LC%?Y-^n}esI|HtZ(YB%&6VHa9w2i!uAuXQ74_!0nzMEaK zwjR4?%6@*SN6<EjvGAxX--F(@H?izm$IZVmYXx`DkM-2o-~(*PAL?KhB!$y-wucoD zTWC$1$Y%G0dve~qpi%EIy>(zA8i={IP##>@?~_H|+;a2FIi%EP8%WH6nbgZ)NFE;q zggvKNVd%!^NAH8Ro4)X0KYEb0`zYs$peNZT&fKOq9ULzkT@ded!2RiJ=qph8qG8zo z=+IThiJ*<u;2%2Fq7@n=1ZrQ5A&aJ5;ol>fE(`~A1Un=xrtX~RloYZ0yk)7b#9O)? zH)viS(2SirIsR;`zMkCrim-)lnXm=+?R@u_wM+?ps1Bz=Qff2$Sp(ZI?xFWCKG_7D z8L}TWF}=iD6?sN*5CKLIlw9XlH;dq|{Veqn>!x1MUw7>Tf<CMGcLe<z^Jbv@^jQE@ z*DmsYJ9F5<fpYJ9vH?U4%fjdLL9t6dZti~juLReEz{%m2k&y#nY<K1W-CQwW1B*bx zotjcxcDm^c-Ov9(c*;9BJK-dV>pn~tv0G)zZNf<u*S4IZy1M@-%ru>rAJ}W$r<}D} z8=J>0?L3e*Z=;)}OO9fWWNKnqT5o5W*}vFMAznP4HQDaK@UUKw|L(d)2^i;Fk6X7C zwlcTpGpKkk54rvx=j3|}#<w3$6J9v#`qN(4ot3&6!k;37dCm6%3_@%+mp@_`ekWp* zUyP)Pq81~z%&EdY-r9SdWY-zqi6Z_KRkLL~y^kdpX&CyiP?wmas?E>Hgya2JCY*M~ ze>dUa9cE~By?W0#=PH&lo+T-|@Df2_l||-1d6<_^M)p+b@bIAy@T`)h-u<YBt%GCN zIBZ@+zJ92a;=n<t{J#7PJ3jKF!Ejdzic8L~ibpO^e)#t+w&{2SrjDaDFf|PZ5}YFw zKO)^kQYG<u-VS3ru$Rljy4=AN8oi5OSWRL-EEoMpEY1Jn3FyB?2+sx>D`WDMXM-#` z%Dd1cXywb23mwtZx1&iof1YDB53cyaihi8(aZD#q)~{BhLxZ<u$Wb&Lsz+MYE#ywE zAW?_mRviWf@tr1la<IqJLax@q7ak}4GBY#txlDSMK+8xXC0sflpvw64&$W!X_mTVc z2S3Tb0Pz2x_md>pw`Ku(WKL`SxYFthjf(U5wp{^*(1?6fARF&PJJgH8xraH7QVhOx zp>Iz)z->#Dv+OYG3)>e@k<8<CsbJZ8;ztyi17NKz6Ak$HPk$<f+$ROF^K$^z<RKhb zK1fMQX7xng`}Ekn@BX$S7qeBu3n2T2H7WKQb=V&qNWJ=4Jtjf;*t%8=*i(WHDy+kP zwL$%DGtQ6w9}(RRwWFqRks^o4(7lJ(api)#eNClJj;o2>eb2>aC~}{a{?gpb7S9mz z%z;OHWs3o(Kht$39d{5>P%wO>pvVo`>yZQ40A?dZ0OIO4h<8lK!-5SNYS(Zbjqn z_iA8Rd5=l*NdP>)iDk#DuLo<NG$rujIITo@&xG2fA_{Ju$X9o)yq;hS)Bd)e`zHc> z3f{eUGYE7^1Qw#9t7&lIxejdS$RyP=yOTMb1rt@N_SM_G&`DkTvDm>sN?;HQPUg=@ z4E0AW05K&(2;x}jRvnTdA`USd9|LBv%|tf_SqG2?*t+B6fEPAQWk!CQ*%?ATw)Z*x zgpDAXkLy;1o+pg>3u)c<pLY|?l_Mg56Lo;gsHM%RX#NPAZ=vIp$uIwsa{sS#+F&#p z(-LM{u%GF~-4|WC=*r;)J?kCT&KG+rx~aCb^_dNQAbpq7@RqP@34d<|%o>iYuEPpK z(+?jyB|AX%VHN-sk>5^g4APc@K`)|2&8Zm{;u>6nWEmkDB=eItk&te78KSsO*vz-1 zTg%BfUxb@iv8oKbBNx?cAEJ*gUm%?F!fB5SPd7b>ZGFE6LH#Kesvo9Wk=3e5?2}&6 zqehxe8kwW*$5!o3nb}}-54u7`vG2W0Jtn3ZWmavV9nRq3{)YC&h#||fmdl79t`B%> zzV87im403DaGmx8LK{LdN`Vhxn0=yK66syEKPXCzTAGu*We)IoeU$|K_opQU(B3C@ zD8@;2p#$9cTLoIro_Ntj{?tQ8GXEn=Z{p<AT58K<#KQRZ-`(%r7=C{pKw3kJ-sA%O z6W08Huo`&jAF{saz3wBr(oYeR)-cOyUtF!#p9aL2O3Z2}rV<jUQr8_pkv#Y&KB;O= zc%>V>u+k))qwe$}QhpGTt2ta|&%a~^e~Sznjc)k^tIUw~)Z3P?N9^JVj%8~Cdj@=M zxLy5{$nosCLOS_(dTGU^T3y}7?%I^uiZ$y<jkHIN*s|*gM~$SsoE>YpD;&fc(J)J; zdL|RGI3+liWqm+RY1m<;lEU%TwP6cCBVZKv7JyMaA4W;O-$VQpDyz*G5|n!?zq-ys zj%?8XtnIHm`k1<6bF4yr=zRE{GTKy7^52rza+tfe^oa)ZbQO;z|4<&2tq5Jwuo(<Y z1(AsWgq{sT+)YiPR_5&x^*g0|+ZW2|t-}u3PrXwUdb`PTN1pn$dJ#3-g$a%u-PEBw zPN<|_*tBstRmk4?=|k1@2C8UY=P#68<B#|ep(Dj34I(5b1QA1`dNHeISsh42KN)b> zxZ$ow#L1q9*?rQvr}T3nxz<$QmYr2t5GW^U1kXTd9J43o1*_;4ggMH`^Srz6;U44O zO*$%=*nN@$*b#%TXO_|bc^{rtv02O`5$uQAg>7ej0-HG>3%@ij-X)i%!1LX0{I?9W zpVxp99Ne%3IUSG{|F!b|uOIY~H3lEvWj|A!3Uudc(3}+d5*(@=*YUm8hujVvo`l;6 zQL5ak3u84lHa3T_){AfpwREmynMHjCEQTsRH%1QvwKl;{8=2zBIP<xTsP=`DXJ%z3 zXCW!oNY-Y^Bq5e%d-YrLwP$mR1jE!w9<R+c`rp`|JdpGz&<aCVS{`8EEHJR4d*{V+ zrr)`xYHvDl-0kD$1JRwDJjv+nXT__vKg%hJwWmM1i8yd5fCGozi^lr|2M!70($8Bu zr1$;lp5y`d!c%)El~IB^85j_So0j_j<B;$lsFT5Etf6l*3$vOy2GLvyQ{pyuD%2>+ zSKNb|U{gEEX#4rl(mM*rOIa#?zicJL=8h&+?_ZRQ6e*avkA%}hfR1mwIv9;L={(qB z%+iCn64F^Ci)$#&(kb*1BY8*vsLjTrU5Z)yiQ3=roI>yoGngs7?WzlL<8BPTN8_&> zQ$v?h`c%ye;#I_#P49dM>;EH4yZ<9ITy6-Gih%?eK~^ueQIat*Hq!BoQOiP3y@Nc# z`3rp22Mh5N{@W>!RX|<MyF6uP>{{j&71s-Xtj9r5)G^jKRQrq>iObr}BvFBcyS6Vx zv1+5yv0)H{)V|1lyWEQ|mQ1cujo=8jSK-MPr5b<4Qnej@nK-1+6<>#VstW1GZsBeu z4~_Uq_T2$FCFiG~iRBcw#ArW>VLN-fXlrN>D*YF+wmgoXE?q#j?Z`$rf_u$5VW}5! zxB+IEe}0sfX#0(ZqOsof@kd$J;*xTnNY~>=t%mSgI!Dz6R{cKfbWraEV3!?nnfz@@ z|F<s3sxBSes$L=`GAXK`{4IIle|%Cz=8{+nQMPr5k}T{)Xk8`Poz892D%U`js=SG* zm~M)PeIl<jya(}c`#0iYFg`wq#5!jBHY>^th|fdD=GY`+e*^xWXe^R`_?VL4kye1J zH&#A8w1CR~Z`*-t=)3n2l;cVF%#UQ>jF5GHrCTN9v8Q4Sf0y;KqAT2khXjxMZ2Gb4 z=MulaK(pbl%d0_jljKAL0p>66F+S%Euj@`T;G7xNB`+^=VmSmSk9ZeM`K?TLWHiMp zaW2h5T*3@9!|uHpS-DuEz92>C7|HO6Hz3zMUKewh8c8fM1A&SjF*(H>WaW0|3#%)0 zBlY<|_kRe;DaYcgRhf~5ot&HBB<%cq!qPvx|Ez&&<rf<=tc=#OYyNOt=b)F9<7Hr~ zEq=rc;iT8Rlb<4-fFl9lAZFb)4~dt71bzs7tZ|Ugbx}!4iMnrbz&rTCt}_?m-VAZD zt~ps=(eK7sczG(rsI^L*Mk9a^B?Q5adf@Q>jJ^w=2#)@G2D`CCiZQb7V|a+9J|6^p zQsywTU)a?$6R0{N2`~P<TB`2jPz+*&{pMP{E^IsuMTF^H=I&*$k9~{}o*nOOow<}5 z*9P$n?UVGU&H7Hw<q12Defb!F^fMZ=8(t<R*23Qq(iSCkd$AdktHvlIaoeAd4Duw= z5Xph<Js?4nfVU#AE`i2im(55%EI2w_)?TmCcBtHGn3|SP_ib4AqzG=cJkqC>?Rpi3 zynxi2$?S<|0ww_dHgPf#j6v}lbB=0ERD#zNeAew(q(ZoCX_h|pyP3RC9hwX(X9%Xb zz9xXLU$u6O&QHhH<8YDd>{>Rhf`bnodc){4W#y6wMaSki)@lTD%2PRLA!w-GWWy{} zIKW+;z&+93kGjr2S1B6nKH0nFC!yW|`{S=E`fQ{vUrO!DA@ws0yje5j_)1&OyejRI zRQ3n29MTWI#{_}7BN21P*_G|hX*%<=v<mVYiuCW*6Wn>)X)W$>r*;uR4u*JuE?}2O z)Hw`lU<YITyL#S#_L=)5V_BP!?X~N->LWNPgl8|c_)H-AVWv*_&L6Bol@gQ>@!YDZ z0O!9y^9tqN-m%<I;dI&vrR+Km3Wc~GiPuLP%?Yugok@(E=d<dCkp)1OIYeNpp4nY} zoBf5w!;iDS#B>htg(c1A(?M7eEZj1s)>Akle3%^79AbR>=0vdzF5bmM7cu_)K(Y`l zGrVH&z*8F9O|P(iE&^%tdmQbS=9ugJMxExK+b_F``svJfD4N_`w=<`BzEMf0qepUL zV{*@>5iELQg+Tp551yc<23eVI#|xb(xr=Ay)`pMPD=u$3z|J^=y|)U>W`qqP*r#MK z;+Ix`82`QU{{KinP|7ot7P-o9bioW{hqt`ePOUsVW{-FWw|tmHFjatc)Q0N9+3@38 zk+Pw@227n#p6o&_)^3A}#vHUqV1pkUVJlrYmuM;l{tkl#1BPR~2N0^}Lnp*EKLC-U zQgzZ>wMCsyCl^W>71@4GL?(#6a>et2z?IU-EXtMv5nAoPZdc{lyRy~1CV@_Gwjs*A zYLNshNFjQh9t;)f73KX)%F|7$p9k`-&MegU(!w7l9oF&q&MO9MH`j;}HrX@s_>=^P z>1K39pc@T`UpOg+pT+vxIIil=HS;Cd6RkX!)OEs%=o#8_tl!W=>_~CD^qwt8Smrw9 zLT18H%VxgYMq7wH2>TSjw=wy%Ezi{<21TawG!F2*DiIz1zuCRVC*?|OLR`p_o73Vp zflrUTwAeMl@fn$-fp`jQ4cUl$pSI^L4LwUEb&OKc0<uvnW6`F?I}#jg-eC~?QTVOd zs(hq~Fdius-LL!mfDWVElAxkO@(vlk<dESD^GZc@0|pal{uKqo%i9eJ>7xI@9{g+a z)=5_*EhmknwNeu9bW^RIq3ne!CJ!wi&MqEii%c*y+bW|Km=_t&ECYtrjO=6T-L@Uu z^ggu-6JBqvUeu)vn^tEQ-e|Rx+OXy^_zwB}Th2b`LVzcTNw6ds`Llg%<gW;%Dco%d zFxGHLE8ZkzUaE;_5Y|+~+gg`CQfS`OC!QQ5N51X4+h*8^<)#ed|3%mcSi_FBrwzW_ z##j?N9lntnGFfB5661EuNdb~@=QZ@(vaH5cm&VrXd-BezT+>+UNqc_pQU1#!8cwpk zjYelL<E^-kafqCWl#n#pDKWi^ZtwXHpX+(AC>x&!xn&xEpi}d_{37x3$*fL=WwBRs zpP2R^HMBqSPM^|e51II*is+Mve2Vy6L<Bwxxt}qL6kZ6+%f#@Ik|e4c)mb`PjIXQO z)fO;o;X`kCX3EJ6&s_y|nthWMh+NH^<@hUuIMlGn4Rcbb?1-q-fET}RcdjM3e#1e? zK)HuY1MgyKBcpg;e*WqYaf+Sx-9YR~H6N4~7<#IsTl{c)PG+q<2P2st1c5Tvqa!|~ zR-IAt@L8Lz^!~z=sOP)Q$!K@ex-doi2#;3^!A{!vLCh%5GsP9LmfrZB0iXSvjLO@M zt%9gf3EnqYhOCDzI4j!TZL3n$TKR>2rT!=`$8J)_b6gcxEl$RMNgDgHar~;-RuE*4 zwdQ5nuhujVHcPH~vkco9E<f3dVhpjrAI9}Uz)+Ua6<Sn>076M&(7~M#Jb4+_aORZw zj8dkMbRg#v6-35`_?YfQg7mgchBYpgBaw0Y2$69;Djp6xKEt&Bll-GXJp%YC@4ZGT zraP6v8%Ytokyy6^j85ISAAh;`^;<^pLK+c1#(06~Z1p4TXNVp$f9PRgNvtP(HZ|um zWE7GLAQ^=nkB%VGLplc#11V!dSl1~+SeFrj1FQ$Br!F#ygg~^wL+QeMPXrPiq&`SA z%y(3<pp>6oMjIfBXudbUrk3CI&c8HYal0$~GFU!#yuSqT>3WdCu_r0*l}zw4m$l+y zBrhDY9u6-}q9bf17#tV-u^2aUx*)1;>iPHXT;bxH4F@yT&gX>?WLgFEEF^h_`_8BL z*kRLxxu7lx_O5iI*vEA+B@b-qUp~^FV%$MK|GAN=HM2c#P$%lP4b%L<QjNdrbroj9 zSr4->%NnV`3WfU6YA<Bqh&1o>(6`-rw3`6c?KArAvod^UXDzS_>%N7SA}U&@btQI= z`nj(kKf#7s>U)62_@|}AU6-%(q^EXDZM3D@ffI9>nV0bhS*-fL@zV-&v8cX?5*S1j zE@!yv15LSjzk4OwHBtqlqGHlUeQmw!=&LEd3MWI)(r5R}R`8P|;fW8d>prjOAmNE$ z&pe^D@MOh|XXU~(ONPlXhsARDj5dDK1hDR5Mbu%$pfmT-_gZ~zdbJG+qMT*$r+9&S zu6MzF7J?`Ric8ba+~+=au)XUwq^mwSfTXJ$U+}xU7oC1`m-&m!ai<6_VRQtSFmMd} zcqxYaVP<Ucs}@4cZPm{m5j%pV2}zWOO!{`lx;<M_>-Ao}LCsor7k8~BUu&{2w{OR{ z4H!}6hEsDWif}OIr@tQOmn_VWIUyLHLkVNa1#dpkth{RFeJqSSf5vya`0_-~FvIrT z%z;=$8HI?Po}B*lDBN)kmg!Q9X#;4OA-HXDx+5)#YMtH~q^XdRsg~c0D&Z8n^A4Jk zyu>2yMHQGG{MI1WrK8eB)7Y|NM3q&o=h15R#LA<LvNN<Y(#iD0>;R;50K$%ZftNf* zR%g4Mf|yJ!M`%*XNw2-U!sHy`nfkfA%G0km%%;Cj%^Ds%B`CH7)lxqt+PWe!#Oat( zTlCgpS%w8C2~R)>bsTf32_rdjLu8ac&A+54ONB~*BG<SQ$l-luP)4NGDdx^GEFB@| z<((k<?%GKt=jH3cw%qL9=Y!<D<Xg=5Gm;=*-%>-)3+nj^#T{@xu)pA&k1o7?LllDb zn(Smn9uYeS?XGO3;j|t6iKh9>ma3=Dx)#wQaxZq8XG2U_#%?KzYhjILr;%X24gz1_ zn84R>A;e&A9Gxm5CHJ_PzTI*4<6cOzUYytS@eE%Z8dUxaopq(wiaF6%l#$z;Tj2Z_ z_n0M^G$AfWn<Jo+a9FlcWOlJWS;}d*ym)zekGL!rM<!|HWsV*>(ka$oWae}S+C^zd z4(~9w?ljIq^7aP7ET(5<p)<=g_*(q+N*MC=-apz6Z;!A8&M;n5q5MiaPGYRwa!6d2 zEy3U5v7TwYfQ*%^0f$*{NRaY8B!&ft-w>v5n6-VaH~Jt3J)opu%3Hu-*uMOHq<!&Y zC!Jh!u=?ui>Ab{9jSS|ksI-&n%g+|D_q9$0rHGMMOSv%|<`-HDI3RfUQ5ZL_p?jy> zC+CHN75A_Pdmr{N^Bd^{LVN}L*GYHV=;F4T7e5;Md?&Er5S;0a|NKm`Hf30R?HO<D zI*}EfQq?g!I9i7_Dny4y1UfYF^fJh%KR$+JAKQ9YZi52PeOO=_lEn`6--PUAT1ubW zCLbV@^4u;YlJeBy%GVHRx^EkjeN6Xa9O$xMQR9uTKkP?5{1j==cPjQ@F(Ra!Zj|F! zgz)2x-RT9VxZ%mY^+81yi8p<zjKrJT%K5i3aq7~B%oavCt=WVC@Qsj@L!a45WmCUP z9rSARZgsyWf<cGZxEV=a7x*p`5!M;=UC7mhSi`~ZBM=Idy|m7;E>_f2uNxV!d&@&9 zq}_)#78d=ltWIihD5ALNj7EFLniC&;5Mp?R%djrTb)Xzs-gX~KzHJk5Tnop##^c3v zX!8mah@SCA@;y%yGLG}psPSda`M}5M3s0k1ht~tXW<b6tTxB6w5X;@&i7AY8UOVte zpm&cB?i{>+o)@1K-fNVhG5NV_q1Q<ZNLWk|Rv(;nXZI2emMnDqCIMiMKadKhRTH<? z!70U`aecA8vK~ohhoR+-5Uzr$@_t=X<Oz-3iZ%QsCkUba4~e<H_U5B_K)4?(bz(kb zR`#DamgwNP$ZbgJl~#UE{s8m%b^W|kji>GO?G7;4!e^ktsv$Jk+6_u9;d3H<rmnne z1@~jV5E*LibFgVu#(J+us`2QgUWY|i_2&spU}F4r>H5pjdJQi*r7((h39DPzKD^MY ziXD6qOr4P-iW}r>bf|9ffrOXCm7$Qd)MOO;p26l&b;ZjCOGL(ae;We}bELibavfta z1EJMf2zj3X373E4I1j<QG|gsiIzKYsNC<hi^Mt#q4Elx9HmX{!b{xyKLagEndO!O7 z=3!Y#3^O8u)H;Mf>U(I8c`qUx2&9I>$GCP<8~JJkfz(jixL-kyt3Rx&Bl?AIFVwgd zj)HRR0~VA%t?vPc=@-E#x{##+vIF2;$8jPXJ5TOHu(enk;>YBaXAXy1JUL+b;d139 zh^II}>g<PEj>q^RaW%0bQH#CET3#*lwr^RP1hNWb0k1%3bx5VCtUt5tNyjf=cY0u_ z!K0ki=)!9vUW6*@U#}jg7g*w=`f%1s!S8aUfv5N`^P4OqS?4<ELdujcbn38-WS;A^ zv?)^+>x7kTrr2+vGsHUQlw(pJX12x*UPDb~%&84FuTN*PuNprHYr_R}rB30xNd<Af z!LRT{ch<8>x1wx5$IRcZkKJlyD5CD6%O{64MZSm2l~ebyAUD>%7TU{NPA!$o*?J?T z0y5OLb8~}*X(A>nwvd7i-xkE1N6|{A3cLlH=5q^TzkO+6jzWrJ^D~-bqfwa_j5|=b zbh4KyoP3@|E<c_fZC5-YvKDRLJ)lqpFRCA<1n=anY*qHDheHo^`vb_L>4)P+J}&Y< zs$lZx)VJ<xB;imI<LwrCj=b$g-Y0FMs-D6T(LZ~!#HPmZsw&vteO-3opX^iISt(nl z@QF?dx}J+vK`2h!5tn0K3CP+{YH*QvD@x0L`przL%_bK>+y<ybe)sQ=H0fm#IZRkY z`V)qNUPYoJdXII>$sP?rvyZ{T(6lL56*U#0DDQhn>^LWrTge&%Z;mEoPE-eTDmYp- ziqlj^xiP%ic4V8(#tVMq#f7I>vqQvw=9GS(RcD!M@Ayz|m(HQ>NZQHUbf5#`-&5f8 zPdqNH>B3vtOJnr&4%bk{G|W@I4G4WPE`3lj^jxPA$;@%o;$UQ=zti%d#8OA&s_u#c zhK;09SaCVrJZ5KsV?_Skg1_E?4w-I6joPdA*t(?EqZb|$J5!-NLs<lPZ_3pY8NQQ^ zks9-*Ij%glPyQJ3#@xb7|7D`)j0%5luAq6{6~do-3Eyx&8r`3{EiW|l^vB2Zglf`c z%7!=0$}WES;u+KG!ePP8E6h{;ffVE{e5u`ME}^&tOD+M=A?ftU1$b7<RrZm=@WDb@ zbNxrd$JrjptDdTBcXNWN!$GG=74oW~A(f5ailWPVY`@}9-|1-MTd|yRm`3A7lf81+ zX<R;Ogz~{XWxYaIUJkYfPS+Hs;TE0%57lYT?z$5r|FU`dO(+tQ|5_xJtg?~7zm}F3 ztiqgs463i#g=`Qu!$FTJnX6#gD|q0N-By$}$JzqF(+oeiSzpm9!H>kwfL!~6lifXj zd{&Qbe1dw;6$qYFUK&G-KBK?*gnFYI3_Khu;&lVdNh$6Q9twt;{Ks=k65%Cm9TSwy z>6<yL3pW_@f#y2axM`sz{3J(-s3<LR(Q8Gm+H^2VaX#>lC|=11U3Zt(tYyi(&yx;2 zE)ZOuyA8usVw$V8ydv(EfQ>9XhE#-OCS{{pH|0K}Re3!O_Sj)v+^L1j{9Vox+M~1@ z*JXUFd`o>&PefSS2brWbN36#eqy{jg#s{lsI_le=a-5r$XdaCUN~8#l@X``4Xhd43 zNobkSPg{sNWn+$J+S$P&qc0K_jqUW%2PEBl2f`WX(2>=A&3$YKO0_&jf2}G=G7fh% z@{?%uX-b?I!GE_eoafB?KJee&Y-5q3vI6nnCCr#m(|?;W4Klbi*N^$844lc7gI;I; zdP|$Ps;@~e#lK$AY=T`79aWKO+-b!f0LO<}sm4?wzBE;O!5YT^S=4eP>BvC!Jt<v> zz)V&s>&`?ZR;iccQILHq!orz9^@}Ghk3^mDLf6<?^Ylw)TaG+?c7R!STZ{nWX66S( z@yFtfLr1QxWJizBBd0V3-b5DZ-QRe-mY-aJS9Dy<)UQ%hg$+MHc6^}M;apPwBv~Ml zTl4gI=d1EZCD=YEn+v(K6LfRpEGTf?y-a!3O(G#q;4H_}N<vq>m5iaJ^1^e%WEm18 z)*Y_GJSw4NEs2Y^jE>J^qF8J3N}6~A*|+?;vh<C=y^f0TI#L$qo{1i@yiwh?U9R4f zD}zY$sjS!StX)*7nmQk1=XP4^Mu<CO-20z*qyO22q34zdXj~?-Gqg~c^z`(Lp~TKw z>&vZ2sc>YatEX<a9UN^<4hDxPX_&gK=(+&J*aiW@SzYEHFm{V0%o(larr?h8=F3Dy zX8v{n-AFC&LQE!+{Gs;ySp6u^?H5n+3&=m+C2NtbT_1iVTG(Qbhe(ao%f&ljCDjgx zR)cuE>VGc@nYf1H@|>96%BI_IdVE00vR%i#oz1$^hfl`;lT*o>fhNv+%#GMt=q{z8 zQhH}fj3FgQL;>NLN<A2v-b8M^P@|D#Dz>Tex1yA^v~baLcdDB_wmGFW#3yr7w0|t; zFyiDDW_vfg+BiE~lRAI4Ic<+@FQc47y=?Th(4=!G!^z>4%Hs=K{+p+S>s?XvZ4Z9L zYel)V$SkfJ^eBBrRd<E<@Id|TUL`cBKCD;fTg8|8AA8crR`V!Fqrlzug^Dgz%iaH4 zEup1?d|??R8zS~N>NMm#zjW4KnCSMu>G)BB1$7USH7{CNSajCE*@{vC#~7Qjl=6-a zg|O3zvvv1Ga2z#C=+h&nmvM2d29&$-tqCejriDu}TkePgrAn_O-2ejEX*3R2wQLNf zLQ;ooE$8XtE0R@S-#S9;Q2g%P_r8J*LcbFs+LeaVu1=+1itS|dDd}Aa@pQCK*(tih zwbb`YJazKJNM$51^fb5zxzME-?LmCk{BNB!enq$)Z|$VL=CGwIi2tUjX0K31hleFM za()76sd{!JiaILf03+STns}N&-;Xi6B#S1IQz(~-=G!<;USWF9#1{Qr>dJe9`CPR1 zh6)@o(S#!{Fc15St<VD<|Id4%gQk7eqW6Z!N<;yqDTFq-We{U@QV2@%uneITo7@Mm z=Hc&vHMwTZ)To_goqVn8{yPs-_0mDg^DMZq1+lC6Q4Ntraym|XaNqshfW^T5YE5qm zfcv03Tapihu<h8q3ml~2atspR7v{J;g5-LQfa4>ia-OZdmCf3lYiXo*NQ|%KiECTe zV$rY}m;_2m*bTkYVPU7+Wl_BR^Nw0v$|2{>PP3kmWF6m_L2CYB25CPc$%fYH-nH+r zno?rGJB#&ewqC3H>chh6U=nCM<FyyJDp<(G=%9E1z@k>XZgTXxy5mBXMbkoheU+nD zfxyRo*ENL>ji{|2SZ;2)x?0`v6y};2%CmeK1s2APSHfEf!%b8j9a^GL@P2ARc9~-r zI*7(0d^XB2S*cD1H`p0r$*_{Kp=*C236=6kUAu+Vvv5J=Fkhmytz5;^i$wnE6IDP4 z`*-`dqUJ)VYYzj$`sjBM*1P>N9H@PJ3}=RFW!$+nz+(epK^-C4K{tu07Op32hEwG| z6LGM`&Crvfc7dab$m)m!^J>ZPBc>-lGxefQS)5lnQ1_aom@E6<J?M1A+$bTnf&AP- zv?x9Vfy)t&A`;T~>d?>^`TL2Xyt0k2N@Aj(YinN#st0<G|4r|x#ha~38r8Ur9qYoU zj5`86Q$ULB!f2#Iy3fz^22XEW8%vZvD<d6o)N}Dg$`;xks17a)%?5CD6SUnF^gNLK z9YIg>;`?_}B}sUSAkjj6=GeN|q?C8`8k+DRXecVNJIOE<4&%A!Ur7@cMM$nHw6Dwz z`(qaHWeZolZp<B}^e_BaKNZ_^@gruZS4sQXhW&NLx1&|yF;IvU$vi9lnS(GUZD%fW zTVx9yFXhv0nGUHD@-eIrcf*W@{AL&VyC4P4u{4WV<nWP-{q_-cTWqJ~Rz%V_e)1US zRa(les6-t_UMB>BUGh_yjx-3{zEtLHMCfK|!<}}5Z~A64grKch@J$Ew9l%%T4e&LW z0KWb~5xyz?kZ;9tl#z{=NyG*5>dTFiQbWCEnoLYg<hGvZdWm>Yyj06FG2V)T>(*&$ z6tiYD(irWw@>x>Uubk0I$bcV=>yZ_P6}K7(>a<=JmB3<ORdth~BXDr&a|VOd{1_b& zK{G<-*ek7^pJmz`K}DUgrjh($>V@Gw0YNHJ_G-6UFNGtU&5_O2K3<*!Ll5VEA$GPp zdA4(0dGhmiV_;Wg0=oiio3|zZVB1_c8!hJV`e*O?WN)Fu6UXUZe`4p4^_r6FIXiR4 zd*N^gODVC|$wI9y!wr#{F<-P?%Y^O@P?o+(j_dFGMd1`Nq1{bQiLp-kDF6<3en4a< z{`2Tdia`4U^EyAy-uZ-obGlz4s9y^<U>2AENzCE|f?42pwy>aH*Qe`Kw|g&3JX{4c zW|_&8O9!EGmN+7*mH+t_nG)PzELQwr<E85iR0p3z2YlvU)Ji;NnN0vZJ=qM}$2$k< zdKX>uVJJl|%$yZmwO)}kk+D|7b)uq%DaN&aMqMZm1b48tvHCSx8uu3&1h}3>-iIpY zwE9INnK)J{iK9NOwPrs4d!AmgNY~h|E6t;CC#}7sw$W<qBg>~}J4c;k8nzlMIV-zu zPcPV|Pn-9AoR+Aio!)qIU)Rvl<f>GQav7cGg9e{_6f=_y1BV2Ms(Z>Aw3w%*vy>+| zs#USQg-e{~A5OsYC~_-|w|8kWuB?H3uo?GG#-n5Tz!EO>*Fs(K9RStGX8LtTwJS?E zjkE;+sbTP+(wTG`lf16!Eu=e4srEyGreFX>aRS+?$RpRG4jIa1t%MOf6zh0+6~Z-I z;?Wlb>lB;gr%iwMl{}_(kl9oJ34>BQ9bl2W3AsrB5ioTw0xetEn=nJTn6GbM%zwR% zFHV(ER3iuiVytS#mcIaustTA(o>I-_&3732-*^4RIf|<f+TxOWsJCqVJ@=xK3QY=4 za<GP#N)xBO;a*f%N<$wcp>awcxbyG?mAKKy_ATrntL&X@AL5`ZihiC5me7BY`6$;b z=!ExF1l($v4=ADvjUM0e^C;K-%vK_~D6)<uRLU+&eLMOFZmV;hJj4lUf*n04vne#~ zud9lzV_tR=!J7-KN{bhJU(&$>X3H<%EMS6s-zoKMv`!HVo(8=lqY&s)_idodHgD*D ze$?6`ixF#Np4_K~;<~rPm~Q`m-GMNp7YK+%h3c}{*B1NV*>nAAsr?p0e6j;&0;7oI zQnl8xUFDv%Ot2{S2Uzq97#uQQL|jl!*XK?3k_+ag9T~SQM6NGI>OuH4;!jh#l}6oX z#a;nUZ}QDnk`gDtiy4E#O@(6wnP)DYo&sDr7^E`Cwvu4xGm@oX=W#cRMU_p5*ss>> z(-x^4?j<e=7UZXUl{lnn=QaV>`>cGDoq=a#cpqfOZi#6)@Y~zDL!;r>*ET4HtRrH# zc6fK={F8T=QE%%WUu!Tys^z{GL>;Z!d}O|YOhtlJ%Z73TD(vBjalrpQX!n1;OlCzB zJ42R>FGNhU-dPMxwiie8C4}tlOUU^zvg~RD<=|3<q{v|}FE3n&QF5g#Ih|i7=sbdB zVq&lu!Q-fXj-sYLLMoZJRhq0IcetsmtLr+7i)xW9Gd}X*m(EOMnKk|ulTYs-n`3<? zzYt%}ypDhabc0fR44#y@T)gC7dy)HivFr`^2Vqoish+(Ucjr=k3VW2ID~9fwZ1-gi zNR1V?%f<<GByHh-MVl^sl*<KPKH~RhWS@`Ii?JC(1LH=|>ejV>;mxBg*`;**siqg1 zBCz5-c5R)TcL?%dSyE$`&9Y`gkEKXzR&aAKRz2I8J7*$Jj(4KN(}(K>JcKPK1i!k` z_U-<G*VuTMaR^G{Frg$Ov&fCz9B&o=S;WSYzzRUWl^{Cn5F?&e0ZXaF|GJdo)W}A% z-r0d1Cj#-#Raz^hT4TCGN9utYT!uv}so!y#9c|@Ynnc!n3xx~9amQNUgcnb8X7>>z z2{4^w;CRVwqiqBBh}?!BUU!qO1NWrDvQ>lm+*`48?+{iILO!M1cYBi3{pVc_LZ@jb zfzN;U239+910s+O_{kp@)n~7mocFs-tN&79m-*pyto&k~f%hds#X7;V=ag9I-WxGo zE}5~;uiB`Ll^%u^Q*}fj1$6UvEH83b1>oR}F_9=?f|RzoWK<XW#x?b=YZLNL?LFnW zGhx@p-Ic7fhvn{#@T<;Go3;$I!<)-HT&PHNQ<@T%k;sk93pef#9(~&#%F=R;ci}3o zc|O9b&3cO9Ar$(_rSjq>dfw=7y3K~W_}BmB{wo;Sf7y^4!AcQ<3*pe1iX9>G;}u9i ze%^}WVDgLR)SRu_Z6e)_yk}Ff&|6A1VhryW1>BPE&L{k;B8ovJka={3c09x%$visz zXPHOFLvVZ4zUIm3gJ)Ym<=;Hp@{ZpIPQ7CSl#%`$W+oCiC6HHJ7mmPNR}c*Pu&Q?C zKa6qVkS%(>wihvkrg_}*g$et@?@ZYLG##QGI4@6arT6BNz%BdG?H{~l+d{}tBC{Q% z+|zjrG7laJaW4@I+_+$2b?|5kGR^w@qxi&MYJ>i1zR(lj%P6k7fa7<!fna(&g%L!~ z$s`j-19qkd$@$v@I85I=3Qf{B7do^^LBp8V#xq>l49RBg?EujuJtXoQKy$g__p)%K z4hUKkgn5q#$PM$;%tt+88Ie~{GC$Iu?3E6jg7o)iwD7>%7*vC+c1B#u`aLoLj`%1v zhBMD856He|Ftl~ZCY@DoF?!6CYg;)oHy|SBttT9mP5LD&rqeA$IT)>Kge7m<(`;Jb z?k3WlPOak6yr<c?UNxZ_rl4G*2YfI&@Nk5R10uKke}KqA&jfYn3+uJdyO5@V;r|Ow z!@33;D#>uK&Fb)BNpDJl(O>2rEa#21TPG7_fXvhZWG3&wNM;IOEj#{2hB^UwFp<t? zJ_8U#w9pUpEFqa-rr{BVg&)?j3l;(MU^!#~^au+AJtBlak4XQH9zknAD7OLV+tfdu zA5W9-uo&J6kJi%RuN>5S7n;X&5Cy_-bO<*AbXI!~a2^oC&@Hs`1+uZ`@o3<s^JLBM z^QU>^`Iy+bC51H<lR9|$jeTY8Vm)u&!_8&+uxFhpX%~8N6LdgWBREn5{R>DWMH?g% zjkP@L61A-B*g)~awM^nCLVF66>m121q0H(nK0n?XNbGuOjRTXE{>%YAI2j*vb&bJE zVsNs-q`Y^uuI8p1vTbMlS7=!2iP_0S`R9aN;S1=iwb7Uq_hrAWMi=}VnGYVoE}8)z zfb39^pKj<K6CvN}w;wioJR^iA2c<njKchFP<DI;EbnU~<%Gf8qiIeG>e@0gLgIQ5v z)4=7=p*(f~Pe<j~ov<F|PP~FXe#*!da`B&BlYG5G5>@vlJNZ|%-J$QKSP_dVXcl4S zp1@|OU~S-s=Q=?;COL3=@T2>xzNW4Rnjc|Q7JVvBOxivDLP?|TGxoy94=dvT`0re| zda#!I(&k{jTug-;Q?(;*IPZcodb6YKJe?H6-?{qv5_fjM*P+dvn1v4=4s%BF&ZS0V z=ongRh;I5>1`Qf=`}6KG@ce&O%OKAx;W`cnJdB5chv~7P_OYnnX?n~(@RBl(g!M6k zcK<hS6IJ1@sPf1|+-o)e*iW~2_O$IL7XXAGnLj2q{{61SCW1n^!|7RFzc2iBpC111 zPX}OA&3|<}@c*;hcXNx0|FH?yPHcljIxyvK`tae1MxIr-&WxEOqxl|SaDI8K!Qs?` z;Y4UA-uCWuvK`%wf0JkQ*D$+4CUx0(N*2P{zRdfWyP_YAk3UKrp@pPex`Bht`vVQd z(lrorY`XCNKvnomuD3y+Gz9V_UqIZ>sPQ<nI9`d)Yg{p>e#x}<^dxqUi@h2ph*0kC z{o6YwtTaMkA^dAn&D5hG9ytA63X3|EugJAUq{b0C{&medI=g_b1zi20PVKhJ?M$Ja zd<WdOp5o=LC=+NUAZ5u8D^l$#&i$VL@}3A#mI`wt*LR!#7WZ02$_I-iUs&>1`WzCo zGAaZoLz~$~NxhM#SE<IGnb-xyG!|sP3Zy&tU8>H<PgVmpfEcI&A{i`aum^~fh=x&@ zPz|CeEJ>G6kwAvsPs$$QVhH_wMro9H0_f)yd(n;?3$Kkwx})0TLQC@Ak=`TRR_f*R zB<n$19-g9Nx+@`fbSh`|-@AG4mGh06imL2l^n7?ACOP!VlAtG_{Tr8E@fdG92LaXT zd>_*TfWH16R&$Dw>CNbE(}!+9%EWJ>{|azJzi5RR4<b=T5lGb80psM_Fk<HnTFV$} zq;ul<OPy25i?6;czq@llP-#Znam$d!Zv0>agp#G{h#X!hm~~H2(&F@%Eqva6*eYD5 zIlgq_%<%>#ipHX`#JN%bVyF7_eBj609;ALt0q@N7?*>P0$rP1B`<yOFz?Jf!2Y{<P z_gWHW&9*(=z@PWjsVZ<J863~*1(8H1Vt;^blHm*l6k63yG?37CXhqmdzcKKU(W!fA z{%*f<fYHJI*G$L-XI9lsE_sq$MBdnGPh-77JO6!l^8eOc<*tsJa;`>8HNTH*Jn3XP zRw$Su{Kq`VKWHs}^>6sY)&id-J`E#Wgh2*MyEj5uZ(yj_e0g`Y?kv%^bfeF?<&god zuB7d!heP!xZ47Ps)^2bqh24Eob9&@Gfj122^%Fr+zDacLOG;_az7s73nX0%JHPcEk z1!|oig@Y4;ybpp3S5eVl9o#CK3hb=64=+O2heeb1hN9uZ=u|8Yk$ucn`zuKCk((RT zgj_nI9PMRJej&Ol@eulMPL$WF8V3p9H|qP%$+5ri1zv9XbT#_}-LOsBOOZCe{a9E! zzx`X-_CG(=?ae{;6)MKcEK=g5PzTq)+!|AFG${{#BbR<}egk>obo6}f_!W6^I-xsK zc_zd~)4@Ri9p|kUq}gRnAZY;4$y=>OQ{VRbFC+Nqk&zI+@%u68qfZM(Ln9(WBq(?_ z9^5=bm(LaQM9D6Z0GPoEer&SQ@eaCypEYgeg7xoAW~y_Hn(vya=y%g{w$W`>H8s77 zuADrVgaTs1<^~F2CFqA<<>cff*5i;&1;Gg)gb$2t>Wo^GS`-g<ARO3_obn<^ZFgW> ze0ZX|8YF0k_CG2PFk-6vY+g#I7l!v_k<H=zw7-JfIQ>S;C;h8AyhluZ$Xc#S2;eWe zumzVTl;&uAovKnj;C1{BunnTQUKv9Bcs2Wso(}ZsH=tqvZ!`btnb^(~6}e4hOG*ff zY9Rs+LGmEv3d@^nkh8tDUszd@kA=EZ0wEYj-7NQOe8qGrGk-UJ`tEeAVeOeXaqga7 z!|c-u>8fC-jeMbKFHLK@{W!*`$urF*ru<IRZI|CZo4{wvL}Tx?&JIt*jOQqAj`JB# zAb;ubJflMfji=#{2Xp=$M()|EjMYUXsl)%UQyw*{>+OvP>ek(sQob0lb-7rw%e28I zZG|m4pF5>dv;XYqQiCs{)b$1eKb8H@`KiCd&G=vHzV=3;`n)G{m3G<ApWA_oiRjL= z2CNO)=4s0%lBhC|`XNyAYyYjm{Z<z@CQ}j0h|T@lzb|ZmPJd8lJEf#y8Te3mJ;`MS zE{|idgY*Y-R~3W>7d{ICUnFLiEzEMEM<C+<&0yL10)msA^HaF<?27Rdfxkx-{A;lD zKdyz)(G_P!watF=#=c!}ENIqV2tT7y9NAVMud~n{H{#2g{CHe7)C#%#rT^01?-2X% z?*4Cwgn!vc7pbPS15X(Y60b9W?G5dz+fUW)r%Urfav;{`D3%3DX%(2r9x%+2n!}qx zj+bA9j0ib7dFA@#vbAR;LgUH2-R?)l&ED*0@9xC=+aU<+8=a0F1@^$*$)0Yfvy8>N z5$Yzmj3Y$+4X&ockK~13^^SwROA^*2qS|?$OEbo){i~!)OBNcsi&34}6`9P;(S$TD zk~~MW#*4$4dr2M%PM9b!1IhUk<?HO@ha*pqd*h~?*M8;;5K6uuOLMA9ku2}nG{wM< z$mE`7Ja$s0+4hK&TZ*fKe%8QbG^v)K1VGj#?JD!p{ap`%06^HH-_lWk+LQnJ+S5y1 zK0gub+4*{uWIlR6{NZI<ukzr-qe^MvdQ2f~Teb}dtxTfAFSt|O)%;=(@J^ogu$I^C zJ9)pZ$AWk(yD7kSX8L>`?8>`5uAtuHKMiBsva~u3-cq4toofGjQKN8zI%Zhu5Q~t) zs65=!uiE#>wZ5c9lgW7xylmg`+vjfhd`z{I0iBgW`_XXv1}kb`)$VYsVGW#Y^)vIH zwrIUJkyWFp$7?VFM_;yl1JXZ-?C&_%Z?E5;zlxdyUmgFcVIQ$wzLoyWledOk=}deO zqWZ(_l-Q>_PvQoTeVmNX@xB^<M*o02>J%TJK?vK!a36*3=smD11H;Yw^PVFmrykWl z<Cn?S>M=?#fUByidcuC}Co}T4lpg=sOSccNY%g7BL4Bt5hPrz6iQU4)IFB<$juM#A zZ~uxi!E*wR8b9697X3m))^byH{vD4|%8B(B{{4e?77Kob_}l*82eSBB0ip2d)@ys` z6kvf_?6eBsMD4EXPS@vFmRV|aJhjpl^&Cv(&#jtvTC!Ve(=vIyUpk_-h)4AEiTbtY zl6%&<lBSk$a_fOB4y(QMQfne>AEeI}p`DajO|GvxeCU&DdIZ?tLBVRrbcM(&zLHqS zjc28$KI@XOO=J9}er+y3AdQG8O<CIP>p*wRob?s9)>KbNGYH|PFh3-b;<?bh6Xh@i zpuGts7b6}{bE2Y{$C1G#Cn7cQGAnVVglaI3RD%h%AlG~|ETz=Htp;LQX!*j52!T>? zrTFtz`B&=oeTQ6!tH1XE02Ls3X=b<@1~OfsROW>smI@Dz#(`T9;L9Z0V($NCAxb;4 zh1v6D{?Ec@eP=oRUEYd`l#1^BjjqIy&KK4^_qp)_v9o+Xhz+-|M0S~zBV=tv9SleO zBN=ghsEKr`jz3psov2f<Cel=92Wo94=LGjkgR%MAQMFFXmiFZP8kn>bmwmN_TE$y1 zy$xmQO!yn@Y(ZAO3Ssk-ON$0hj|k`5Ohz{t=c3`i=mx0+N~VcaE6?~6uS{{m5O+S0 z-ieWK(T^8l^H<cRf@8}u`_$c!5cwMy-9YgyL|qp@{N?_IpIJIR)DL8eZxN0?h5)+E z>^Y(1>~xjthfePs?swYu`N$Rf=QCG=$zXKbDp;!F@Yer`^{2YRZU!Nk<Am<%_V%1y zI81};!au#!WIv3NR5(Cb_|58GHmL}Gvoqa!h|qS9Y%?1u^TI)fZYA)_Uut0-n;Onh z^9fD;yf#=r_2Qc3_&jgbTP?C2KggSvYE25<CYjLrg)*V{CV`RvErFO}?aeoxs=N3< zMIcVt`%HK*%6@gObr6hDd?7EO@}rVgfq%$&XI6Efk|rx`y8RK~1)%+5R86`ZwP0A- zdt`|!i}mBs)4!>y3wEmB<7?`q@sfab9v*FR&riMh(&lA_cys5%$6p_TV4BAXTKHaB z!BobwCY+J)H2RUJD38ez8%+`g_MdG&MM<xe{4l>0j{eVt9Dj;G+w{C&wvVps-)p?^ zm=aDHd3}F}JgoUl0A#B?Ut~G%LDsZtLYzn!M*%@O)8qlJe?m-%tLM=b8NZJTIy%u| zmMtpg0Cr4b^}(tbH^8{A+yh1d*x{&d$Uwt}S=33b<+Y$czPX0`9PM2NR4sp+s$w*_ zAejT<?x@Q)>lN(B%$9w^@RLI`e8*emNbwoSOSFKz#4y&5jjX*tUwp>EHPMl|fdrhD z-`99xP)I>8xlD8?*4<w|fR;IYA72cG7!%Sse8+P7+BiJduo$Y5$^~wuMrdeghb#>I zvOw?*##%$F%(Yh0#j8f@sv7{Bi@kfx&bZ!P=<{=F&7Ujzo}WAUjJ)o1>U8txS_fCs z(q&^a@(=a$@ytdk)RoI)pkBS&`$)vT;4~Nr2y8SA|7$%PT-w5~c68qdN^o(>H%zne z3Zc0Via2B{c$~7fimw*Ik1=s@a2S_~-M~aYIdgnz9Wt$}Yx#S_R;+>Q<2N7mvo;Hs z|K|IjLWFF<3baYjo1`<>G9Gb#Oa%}OtCt!j=5}mVtp6SIo*|}o4)}Sw<>8Ol-9ifk z3BuUXdf$B>3I5>d*=bhyqMD~{|3WzOWy&WUJUzdf1L)^6R4dDD7zH4od4n2edDHK9 zm;(oy=^GBRbIgwnRHM>cKsXY^d~abvso1~P2QN6nHmX9>-oerI^<eQFp#{GIEqM6# z#}<FEM-nwk5p}|mg6RBP_WAb{4qEJgXfesALsWF40AH0UM>kjz-1;(tGrRy<lV9-p zW=(#^H)r`vyg#u$BE<D%6cstSzhxFu+KzHQa4EKrl4HSHgXKpRVx0|%E9PLK%xv76 zsK(6SWhREhr`4U2fk8c6c-I(kOaf>$@128}1M4Sq!gr!OPo^!)<;5?ckB#tT5LP`V zANF*%K0a|5p932~Ro5EHbdp+y84-H+hlvNHJ^3aC311EgYDA>8G|Vbru^mU;cT?a* zH$NM&M~xWhkE9O*8%`40`u(B0s>NMSax1FWc9bJ$JhO8TB?;-yi))u-^{Rs^m*+-b z0STMiVfikwekD0*k_a#E4u5<1(RArBi$5?BQ1Mt@^5>uOCi+HQ`vdANK!@}C>35`8 zlG#tMGZPe3baMuK^n6NOSY+RLUF3fA$@5g%IeFgWA6@nH5Z@1dJKp2qRgt&9>Z)tQ zJYY-vqkj{f8-VCsTh@3Buu4^E$xv2;+OKbGd^}!jT@zg3Ei5t@Hc~^6RAbw3s&N%V z$ff+r<<aC|fG!c<vlaIu!tnwbHXDpLdo=gkt*<U1U`$hnky6f3sL{)ml$69(NF^q* z!BsLNj_Kypr8HTBZ@=DxAyhjMS1E9O$;wdsij6)V58**eL)5Xk0o@qQoFbt}M~0Mb z*61$lzf`0DkemWHGmyYI9Y$oh?@je}hjMD<UY!6r`4I)hRbWFY98-v3hc(6<y&m{~ zfl>KByr+?>RH(bVKv8Fbg8rKkg(I3c*%#I!yd|Nu?hpVG2T;5Fk=HbA37F@=ELe9- zLG_I$KkBl6c99^dyZamCM~D;qdm^77H@OGh$Syy<O6RM4wUpM_^Ff&Y)i>mgR)|ML z!@T}gL-_pb27?dDar|oa(F9f>@1A!21RPQ@5QvGm;xbVL9xnYizVmQl*UVR*0Pl^L z`?Of9vIdx`R`9V-%dsy}eIU!zt@JyJD<Yw&fcKCcF$;_{mXYzWA64s>-mzF4!V}wl z-?;7Vxg^jey{rX4BFemv3Kx6aXqt=Bh?Xc;AyU0#7cKV@!Spcp4dO@a<0~cXf1R4T z0IUL$DUZ_Bv4RDx-8x=<>BDZf$)V?IhPEt6Ejz-kD|t9ftG>d6^}8k&sDa$=ntI6< zlmTue-zfw5Zc?tL#C+pkv1bR$Do6oQz)v6w_=CS~rmS1=0#4?(OnrZyCNfi^jGB79 z6>Q{>aKBX1#rpnlkVe>G4&uV~_hu_BhnY!V?b4zL&2$pbhV@3@TsJ7xDI9Yco4yR5 z1CM_29Eh@KqI6#^Sp4MC1aZ&E>#Exi9(%LR3e^z7i-pdstI{U>lvqFJ(g#y8`D$uw z%kJ#^5n<|_6uVpm^C)5i?6+o<jyU-iHgGF*64danl|E5yqq?N`EUgB^Udfx$=HBTI zA<_)ju&GFbZ+TH8z-@1&mrEv5EjyuaE8%Q;SF)MFfR_XN*rqM$EY|xO&GxOt&Y~(k zepHotpI%bxl}RyAv_z*Fp4p1(jAZ+`=+-;II@FF<8BT|bxt#pF2jCB-Aw4RP+fzB> z1r|)gL37HV_P=%mt!B$jjR=E8U;c|SvKV1B<FahCsxF7TjBJ)LjM4QJ7DPouzK3hw zM*gj!;GbVkCVU1)^Jjp*gqIXY#fZ-C29Fm$8QhZaw@w5izGMqKd)L<%^x!3a{J^44 zK=R3%FDyBrS@4fU!V1hmfHaO3I?|h*`{fP1@4=WAy^&tby2%4OxR3`yN$+=~#I>@N zMk~K_(i9A2x99jHS2F@w$#f1p5tQGndd;8L)1)U~r8x4^!IYhmZy6~p;s94iWNLx^ zY?khmKfCL@Du6qbVClVTt_rUD5_^gnp&DzECCZ<SE-W?|*ezfwB3Hl`bcx5Lo+K3a zHjQ$V3-CSN@asq}EI30K;V5Bp?+df}%DED~uBjWT`lV{Pv1e@9NzpsMsIN_XkAJNX zbC`(&&Lzi4x|!XyEp;K+3wSZ>Gg{K4uH?quF!*#Nb-g_|6zQZ{EI8yJ8>2M9Se6p| zwA?er6P(`huc<Yf1@JW@%r|l8_i_UNOg_&-jb#AOf9SAKFIJS(CZcK604QPs%uedh z|Ee@XSUx+FkXhY^y8Sn~;6}ry3RkSjT4KeR%msqxQ|ZS1d$B+ax;L)=?Pr1}1+bDI zH7WmvN9Z*ueeH)<bo(Yn?<L=5bbRC)hIxH!j1`ea^D#@wlPfD)5UU+bBT)D5l4LpH zt!%&%QWw${rEa{MTKW(xa+DFTJoswjYom+E6U~daGml~I!I>TRG1(EYrF*4&l`cYr zk2PJFj<@i!{(8jZ-Je;ZXM6#Ay$1;zdDoB0K0OHkK=rF}Xp5tFB!-SQaxcSua}ic* zK>|vGAA=j{=;&U7MM#p)5|_a6(Yttkx8m@Aq9dSbOPNe?5g+?$#O{1E!Qi8rVDQll z1|Q0hxqz5`AfHtU`3o6rwka$HrlFCqlGm{+IU^zBxW*e|{-UA|@q9}&){Jz_PS(ZK zc>)s&p$yVe4)cYR%)Q3Nl51`|$6FQ1zhF){Ub}A6)^;nI2_H4yNq4G>WH{V^>d6uo zvD<LFGsZe}QiolK4)z~!#9L=Y9G2U}SVIsusX;bH)LY#sg;mR{#WgwSq8Yik*k5e7 zMZ{i}46QoYdiJ<_4)2f+M*VFJH~7Z_4}pJZKg2+H95lLPsQZSVCHsYY+6f(??vgz- zWNx{6EiBF}g*sNE<;J!RJyVr3%B<C9Pa*gwtsevr?@x^PTQCm|Rdq#GDK8uBe~(zQ zDEpZ~=9?7p(xIjOAWt!G8{)C~O+!}kgRB=J;ZS_95Y>EUbBGLeinqd-Gf|#Yi{pzm zw%W+h5rl;R&kh}_j3Y8Kl-DNHJ%#A|d^G!doYoz37JBRkfuaD;-SlU!)`3+#EwBEi zXa1A+!-BYYtySqVZ$?fS5x&UR@q-k-Rl{223d(GLtbJSrHN7%ZU%j$4qX)r5+{PX0 z-K3&0Dr2>H3#W?7fRqW>i-7q{2HxG<#c!sIoa-%Su#y~7%@iKHx-bAN6gdX>ejPDq z%O=;ECz|(u?%d$~!Cq?ScS-vCwpJ7Ci|@S$86)kbMOy5A4mdTK+057OC4j%Bk0X6J zz1Kau58S;jNAc=qUG``MHZR<6b{}mE#>wiQQ>xiI8^$NACD}Bs)pxZa({k0;=JN|F zT*?DiNv}hkaul+Ki+z~t1<fUK?kB>fLWVv^Z@&k=?`wEa%+@NI>F&d0Qc41IrSHT_ zK{Y%jk9O4aFV)LM#Lj*dEEc5o)Gzrr(}Am!E&FK7d%jB)eBB}mrMW`Qs?mMYsyCO% zJsjtw*1bH?z942i27l$x#EicxZ2tLXGxa<*iptk9HY{YPeTg@9g{GUg?}JJF<=Qqy z6tIZ?wYU&3)Co>jBxdy-M>HQhGF*zCU_sSUy9mxfx{WWyxov0lLr&lMB#$vQHV#C} zO_oVF;x#(HYizDnE7)!#hk5$W+()I!562b@zr2a}JBh>#?AftrsL=|uI^TRh=)uP5 zKg=a{ST<E&0yGH40v_BAKUs8H6TXO9A?`3pRxs5wLT<3!Z=XR^(u`<Is>uA?&uQWp z{SoUOF#Ay0*T@d7$Q7t^8@xMfiv|@w;Q+rg<8^s{lU5rm1KX{rNxPB2aA-DlMbpU% zCXwfm8z(qsvf_xRj>1WAS{>R>pod&0q!0dk8Qh<Br#9gyU(uJl<v_!-)<|$}f@b9} z$sPlDnOt-Rz!@T|$Dbt)M6LzKH8?dqKX+wRD~Zf)I>or;Q?^0#G1}8+&w0}=^hCg2 zYfs16GSG}X#xUz^+_&4fXt{MSewiF-+^~dT;E{UxEm!gfmz8ceNDBQP#fMoe)0dyO z;_c|LRIh*i>m^_{!XO^%e<T*{>jds|__PxoAlgZ2c1+ZU2`HX2?P0I2tu=qQmF6Ot zAawGrcxbJhpMd|Im(E%&Ei~plAL}>mWJ-1kvZplmFsow_#LbZprgQ^CLqj9zX1GK6 zO*OBa<?>|4y5saaH78gF#pyS^MO#B?3=-eU#~ckR5JrD)r;W)ddVnF=+lg7V)3)dk z$tAm~W{UiaZ%aV|__kDj?DYl<C$!Qy5P`;ae%1dVC;i`0wTj$^@;|{SKEE_so;P=& zx&hIzKmQ&5`ltRRl{5*H+z~*_lHwF&C9Ksm3<D8v3zDs~ozumo9%Si*`7?F?L?onR zy3BH&r5-fZV78`X1AZ=)bg-oY2@nfpLs<B&Cpjh+E*rL|>dCkb(DR#wg+YYRIQ7q- zYcEL2s}W~I9j-eaci#2?B5dvFIbZWYa+kS1u#iO%7BZ3<3r;R>HdF4I__yE|l0$F{ zneV9a&_qqWb<^@Q*|sZjRU9!>0w)l@%jWv;LqkbE{1PII&}RdL?`=x2r+Nt8Yj@rP zgBL=kDg-s((WNLw1>tLO$3&)UVE!NW-a9JFEDQTB1EK<=f+B*Tpdyk4lpIt<L`77T z9F!nP&bcTR1tkXoC6%Cn0YP#G70DTt97K}joYS{Y0o^*?J<~n6XXd+i-9O6p(!F}E zmOAe_`|SNZzsCXVW43iR$gDzGF5ivXcVWSux77>a_J@|Ad>(1f^~DpZedzI+edU!3 zJ4TaMSFxWd!sx@$&eR|%L{Vfnfl3itAq0Rii+BVXH7gIVNc0yU6HnUQyBz8~Fo6hT zzZM<8Q-E|lC>mh>ai09QBPmuDdd?A;8<Tdb=4t1~Z_d%W>LcTf`R^EKOpJ5eXH=|O z{4%ZmA~83t<N8rc2aOcPXPvg~3#1$%;V=g?<puVviL1Rpf8=_2+yLO7Yy^Q*EVQkw zb8yR_46X0#0}hhF_Jk(;*gU++D0{+*l-g&3)gJ%5n6ACVpI%)jKoac_Q~U~P;x8P9 zY4ALV)mK*ouwy;|u_>4C7gswB{A|~~XH-*_LBl>G0(QwZ{s^z8)b&k@C(TxT=)}hs zIxe=;J8Z>6&oD*rU0B$urKRCz)u~oHBSI1e1SDK)B%|TE2))IF3yjhSX6cr0MoIb} zPHLC|J{>a)#0fwfujJDs3SWHAWUZ1ZurLoT?_0Y0%8OVLOp8~~9HXQU7Qv>2&g)-b zX%DJhLv&)B!b=EAcU;)X$B^c@3TjUN`Wy|<{*P4!RiBiW`yfx1e+1_177&MiWTv`B ze03*cdhJKj@7lkK=~aT5UjNeCVnI6nfJ*h8>POw%w<T3SZN&q?joyCb)E1tPCCUNH zrjla}@_ahvdGj!W%L-Bb>S93Sve07P;V!u@Cr+cF7{Vh%-1NY+YYMi|gW{NqRYimk zUXBEF=_!}^Hqg+uWRIZZpG7X_F<cX5MdlkSy7`*ogV>RxS8B@UiYL)Fsy+n8lFZj% z=o>6Mbt$Veep0L{Vf0N3Z=)(l+8os6lL;l&6b2QiW0$gZ>=p;&C(bkxSU`=c^eNF< zl~W#DpcB|n$|8#cYtkd)AFN6765Y@P^FMUK-(2SiB_?yMn8kNJwtXDHwTEz)3#9ZS zLbJpn>9Ac)br@m$l_W3e7OcP19&jOm-R~=J=bhJhhsC)=i-1l_^liy(yu}n{v_dGJ zGdq~i(65Ow#K8&Q0YIIP)kZ%+JWdIB?cP8-M6eBvDd4Kz`RlX$p%s8Fa*h%j(eyKU z>I!qMb_PzM8crl_io#_$iN(FIo$T-OE}|*~_3-oHo`~MC%-Y*lt%pE(`qT~P#)8lQ z^9&4q?OthqJ@~=#-QZmz1##>H(r4|@5Fad@5wFhoXzHuWKOHgdkL5nxX7nYE0Jr5> zh1>o)`RKmfx7j*L8gF35XhY^xrrQaNzRxd=Z%iiG&zhz|1K|by{<!pNS$i9k-h4{N z_JmkzLdRIL4Rw7rG&F)*=oh{c6Y?kC-OTNT@PSJXs&6nil15NcAHs*1nIvoRst}N2 z1LNUzB(&_G#n_bSecTXJHpns9wn(erIT>iPMn;J%l*Oig?SKfT#?S|<i`c5ExdyG? zN6Fd<AC;H|WJbHN!F?1!m#L+ejb1_`BJ!VP1Glu*4m1G3(xvl2vlzMXHCuS|hi({V z4DwLJT_o6ktVnRt0r;aRPF^9)HVOFGr$Ls77`gotvDga2fMWXT&A({$ZkP5?N!(RM z0^o`#A-8w1A_p<h#Qrws+n*c@dbB$|(1x43<ntbAn$Y1EMqhZT9r-TTp8))tG|0mA zIgN$d%G+sQOrUYSLzkc2;lqgBh@G2wWC&fS;o=SCLi>s7?cZH|%B2-`6XD2?DDJUW z1*~h)umJeM4NZ;Gdk-TKw6b}XcoB)V_|jv}bw%Cz+W97{Y%$OTInw@v=KD7Uzbu|{ z21?9AZ&sT(TkOI$5A1wI@;a;4xd!;X?@tH~6gH}zIipHwkT#~wdd$X8#}!CSvRz<A zd&9vW_6Al)-&VOo@iIJcdvNkcvm(ePJPC8e`BJ4d2P2c3W<{{`z`rdV`AcZ{-_jZX z+)kdCi$w`gaPE1qV^UYj-cVA&6S3zkjJ42~g$fHYXY$^zK6qPS-_0-s-cg&m-YBi+ zR1;J9?}jvan~yzEcWkE^AkF{)BVt_~KXKwv4vF(3awkJYAagI3-umlZ$parR^Svv? z6L=>xrF`3{2GV>r6SXg?S2^=Pq7+3{pB)JHq5jXMHJI)IYhMDK_D_)mZCD=j&g5(M zSVkU4(Yk;NpU6i^%Xd9Iq6-dZEBPlCR%Fks%nky)1a4EkEpq8oy#X*<migp~>O&d3 z{GOV7Cr;4Eh{qEg`!COVH(^<!2Vvxsz(3pR>ndD%&n<?)_Y<LTMWV~uD|X#+)1p(1 zEU^-F@#Bx!;H~=6<Gj*zL?<$AoNyuo$8aGp$7gwbLRz!PsMYtb-L#K}GpRR@e|lix zy#T>=b@?ap>tEum{<}KXZ-_`W1L4`luqz!zoMTsxY-?T#L@T*}zfnOu<PdOl;U(;Q z6I<+a=t3uAsQO+KxXqN&zJ0lvCHA7j)GEKBO&0U+xsfek<B9>o$quikoRC+cKhT!l z^c6A`QV%p_+L&Fv7RQQzm$t=(WFP}FCj4Ws&kXNyF(Nd2NknVoNspC|A8X4Msu0sF z{wO(bcYpHGLT_u9-I%i{*}B9Qr|}pdQ4y+t=*AGtoj=rjQ2pZoEH+l2SRvW5B=(}| zu2`29$MUsJ%H~f8%-SQ81g$C=ETymrN#=@M%!!}%>w)#)6nDRZzEy>pxOEPv1#~hY zT~;GnQK8#Zb5VmdUC$^0!#cU;YE|8}a+mlD*OhyujYb&X#^R}OdpY`NO4;bnCH0i& zs)37Vr0$>jk)aJhu!rVy?ZzliXS5Z)Q>Yu<)D!QCyLiiC?DIgSz+EEHdz?BAc0Hwk zeVzYPxaB{0hu=lcYq0J;u;MO$#EWg?KLhj2%%JBqhN-7&fn5WN19agLPr(AG|3y;L z3Fdk$)UVaFTI<)&Ho(m9g;85J5UilS_~1yKlGFw|ZNxbmgCwDgK>0k3!h)1-dn2m1 zn^_cSTyUY)b$|+P16-!7kN4`bP#z~GVI{&C0FgEz)Zli#^_$&0VMBQwDs0!tmq#KV z9^8#-9NMr}&6Cq<xbB*Di^+s;BfdU-)tw571l>8yv*Tk!hbSWYmmDLSmc%s2EARmh zzDsB4)Qlwu%l9QdT)~m;79BC#nQt=C#BpeMuKdRy&*5ygd0dBGb;rwP>J$FE@O-In zagEtmwh5eK+=`jo`0Bf!E=Wo2-#;!~LDKCc3XQGyciaoDNoJjqcn|44Hv7MX3X<a* zxO+aR{WGI5$Hi5&M+pr7sNS^tc`l9{m{y9+BlNP@veoDt)5+(ekGYo%+D+SRdTu$_ zZb64P`Oe=S-q4{<eE3*f2q^%4g2NFh{m<Z9EoPn7Ey!Eh;+MC3GkWY+_>HMpDDGtE zBj=-SakIz%h-^nG!w}s*t+Xs(v}cr=b)D*j3%OL|`a2b(%bBHkQ8l>4F@U?TsjLbJ zAihDRC~_4<Pfa}ai_qgg)KTCWAS2x}tA-;LUyR9!8RHNyf66V9ZaLT}i!p{YWz&%l zegSS)3(!vxG%aCEIVd{!kt%yX@jmm*LXRK%w;w*;pJ38)cFQA|_{_pxsm7JhP6$>v z^bYXK_GTM!D$4n~oeHp>?7QxE3cL9%@F%6cR!m>Q$n<410)DWcjLn3lgPo0vSMSqC z#H0wcf244*`P`LRy0i(qG}ag*sIwy@GJ7_EtIcTkaPhF}(rqP}oBEG5q`$uIgzG=m z3waG!G;9`AH~3hFtu39}Yxw=Uuu^0_;-GgtM`%B|pU83*f2Pk7GaBzvv2b)wpjYgW zTCC85A7Y&qv@X|sMrYF56qYkV6va>AB@n&=fgiy$R*n@=2*k?9`im~-D^v3uKWny` zQW$FtJTX>BUK)^4V1FiiF>Omjn8kW@1@!t!ar*zXaKP26TO+nY0D)24vL0GSn}Njt zkD)Rv2MqKEN&wUAOPQVy>K-f8M3@Ps!Bt5M+P0<*S^-7#!#VUVJd_yaL>=!{aZajl zOKq*}Q$ed3<ZA<ofNvX78-lunB$CtsIB83#P!|tBTdLhz0jRWZVS7?o2|muzgLA%u zf2DT7jeJX}9-CeEqb%!p_<H$Q+9)f&{*x5~k~Uc71X0onO$`R@3=rIn(O;X0i`jq^ z&0tY%-TUL%=d|Yc&Z5%);7_Ih@1UBBJR7+^vzFuN6>NmZyh5b);d1^Xyh4Zo7eLTT z&@?7+H$(A|SAe@VH#yJ{(>||iE3OFW-8B@NX=p&C^O#~(i%oz~&Dbq24+=oLKagR+ zxHO-lw7ehxWL|2v;zZ7E8V$#X$md;zC(k7Y_A}RSw~{~0ejXFh7+aJLDM48OQS}w9 z|6e(0jK{gO%Y#3CnCPvEc=hU48T0^4G+Q%mB*U^55^fbi=^x&-G!~Ha7?y=7GpqHN z>vEEy<!KyXS5Cbg>M(bkf8bqi=RFekbA(&nhzi?o>!sPAk{uGXJIM1=wFtc-H>N6l z^It6f{~8Yhd3XOD4<Z-DD3;gu$0kr>NUy0XWt}abEyq@mEeZ72Bskmm&X~{#e#7b5 zPW8i0RL55Mvw$2PP5)?sN@6B1i%UcjqAlLiRd|-$Y^H}F`#&+Xi&>`<3WyT77&_f_ zY$5UYv5R`{di&Wp7pEWz=wgjL_{^MSMGW}o3!U}$zKPBQky?rtTkT2$$-e@XervA< z{s5GB=lIUhbE@Abg*YWnA*&(f+b~Ay?!NU@z(RK{VSgm#IA;(D>ipe%o*uh-`gL*` z?nqyXK@$%@s57+|W=18KC;RJ4q<C8nqF48q9%?2cfYrrFxom;z>-0Uf`Np~z5}tIU zm)(^73HLVZor^{L{$g(rcm@V%LtYU9=EHHrnic@`g|0v73;z&y=gSfQX8^LSdO&}3 z=uZ?J_R&^seZ2avm2P`Op@8@ktjGVxAfP|jD;YJ`1H@#pT(-|1L2&7GrgnH-Sel2X zm=7>z*=C0?QyzolEYx+3j$IKMP9)#6yWJ>TuybJBN)uBPG|-YJAFez<iv&20+45kW zJTg*OUtd2pUdcnbgA_lKfuQ={5_Ht$pTbt&FWSR9$(J%tG8KKl7xF2b+;S)LrDlG< zWMX8kAgAMhG2ITDd}rjXMv85Z<honHG6SEV4CD%pKHB}$J^7FDJ{N)E{;%;q$E4Q1 zCw7RF_XlOC{V)#Cf*1HU0?BH(Az5wd<4H@lF)9a9^X{bho8z~(V$O=YoK*nXh{BfL zIXEESkFh}owV=~2_z_`Q5(}d`1&!3B%??wFG3W3oZ<vj9Pb#HWVSTmG=uKYeY2c<6 zb9c}A+2osS<pD-){V+EBGFCFY9E5?rFyZc>fWiJcKNVUFIq_j|z%MWKSoIUI+|OD8 z8Y%W1;?Rm=0^TC4&#@2<?gZ2$haq_7CClnWEZnjVE;NjC+s}-AGK86Cqk}RVroNST zuq`Ktluk$<k=llM{H?hx*;Ym=yg18=Pk(Wg!c2&7(?#)ZRX@bHd1+~m`0?H)bTWE` zH5yYY)>M_9uE62-3i*Rc`7b!T8W1ETXRV5`&hl4WsL|MpnF=wn;L2BV-EfvH)0bBr z-ldcO{=3v^0Rc>J1p-h2Q^#rmlL`u8>Y|Rmg1L;pUBwy?sX@P^jJ-fUGzE-S*!mvB zfb0B`PateuFa#e!JXDfEOh1B2jgk&bKJ^6BY`tmg5z8J4-?BKaom@!{8GWil%U*BB zRHRc846lXRPUatoL%$te{<3HNnSE;P`M<nk{(`)UCc@xVTN$D%G6dHh@4mCx^^`*; zc%Lj&Jfelk|Mxo$6JH&A1lzpT7W?Gj@TWzM+t8b=Njp~18x<RW0gxZujeX*KZuE!d zjtIm6{LuUPW2Z;F8)^2~;T3ywruN18DFvp%G+%lkgFEK@Da3{rD~1r4W2a`Xuw?il zcgwR?xBtL90dI6Q|M1_xnnw`xQZ5A@yLk`A;#M5-w`5q+ZQ~`&*WPDI*12O$-rs(h ziDREUAN*n6{YBChlc;V*Ffr~=u_;SrA@S&oo@Vv*@^w|UtVptLP_kA~uzo&#C$jF= z=LV%ukoeW+z5Y&!aIHcCGAQ{G&pwXkX0*eV-;d{BSZ=VRv3}#yKZH{`dB%&1=-L@C z*YLyQZ|@yG_3Ao>%yZ61u~(Wz81}!7ypAvSoeR`C{we2CBsSdryt=RM_zNklJ5S_U znddVudrw?pFulw2jmGqV&$A;7q6yOEY45v&p9<?$G-{6v<H_kC2qx4H3<oX-@h42F z^5(CfK1nJZk{w*tYwQ+xT4cYIs=eCKU2CVf-SVy)Tk<EFjJ6j@Kj+n^-%Ht{|894| zsOw;vBJBm^T*5}u8+{$7Y-3ssDkWzkL*+CkLSkJ>sgK4lzi4dhuj_Sa&5jZ&;8M~Q z)uq`t^*nh&#&()ub<;Yt73DAz5po!huH-OMa6k^D^=b}dR0`xUX0GNi+CmOv)|FR; z9L7zM^yX;%iXhZpeI{UMHqo4FqCwcVk;g|ZfSnhI*m-2rk5$D`ip*7D#fnqBR79~- zRos!<z>4inGb{HA<!=+L0iROFL}`e`abdV+3IjZE?bG4}EVEIFb=y<%?mXyFLLJge zGy4tGmb?ozqwa1<5Ut3Zdkyp}htL~g{OgWq@jsU}YKJkA3OHPpglpqEVioBk${p>` z50pL}u6TM`D0dG@^9Ifd^EuPAQMsJ?TW9a=u^q*x5r3o3SG>XIacEB+KJyf<sC#QL zR_C%?!Usj#0*+)}JrmXsWb-JyG%BICm<VH(CfoTy`^=Qc$romjQpn3ISnt`_#(MzN zk4}}kgUKR@#+_{GR_7T?m34GyAzLTcYl4yhN!HFm#E6D%cR3?5KM!aKXohs`Y|#hE zu4HCCy9`opdL~B!{yYkb6<%%C$n|%Oj1oeGL`?6Q4<rT*OqR2l4luU)iE%8%lL|}} zc2hAhR1D{c)f&D5K1f;hrQ12}Jk-ZV_s3>mzx_#!m&aREDycoRTJIc6_bM*@`bKB{ zb(A{GVVggpkGJ4LkmYJ_Cbh??#);4#f~$Qm5aoIy*M9B81Ds5E#DKMSy3T^J9*}Aa zz-Jv-%Qh*k;u?HTTzt1}!N1h5gUn{esQhu3!~i9Ev^eyMr0I{qH#z>94m)-_3G!o) zS?Cvc$LiWV7J#(9DU`O?w8xmde$1+s|9OJvx;AcojrYPgO4@9+*^*IWo6=G_T<xYH zssesolL496Dgw#FDrRTzjC-Mj?-_yaD;Q(51jogfOIQkZ??s)>Z)*+vQP$`Uy#njS z@8Hg5xZ8Z1{kaQ@dExO5$bB#YaY~V>o9_hOd_nZPpIZC<C$@M9Him`@!-v1IHP}W0 z2q{%*%Gn~l17w>r=bK16nH+J<86hT@#!133H}XM;o*C(4%UFBO;zb1a9v{R+OCRBU zwt3}u?D>Rrhl&Cd<JYc%^A5+EQXd)$&Csml(3Yc%FWJH#PZLPD<(LF4dE&%EP>dgZ zPuo&8L0d_g{;YTF_6<_TmNc8AodJ33rY)be{*Lxifr06Gb5z&8Tynpg8#Wa#Prt{N z^bcn;#;Tfz>1SB9S>Iq&Unlh+`n40F^ZKyF8xeG#ZTWF47R4N1r1oA9QF(HA3GhC` zFS)PgQwdl;R97t@y<qvEHCnZNwB}b@8m(GBPJxwYzw!#eYUOz)3G~C+%BlRq;;WdE zp_KW;>1knckG)Cm!70=G)B4i<Or?8<yX@$NSaCM_%&I0hhvj|omP+n>4(a(@o}VX6 zDZ2BB*k<zWd6<L6p*h&!yahdlEoiP`!?$knX=x>;py<qR)z<QCns>3bb2q}^jftB2 z4jYg=Fcx2F$nfB<mpuOrNe*!+$)O?tj@^6zobht%5G?6T=uMgpL+j8Q*NZcN94o?m zF#paIR=NSCmaWV*qY?;IWGzHR<^d|Q!EDsT5Mgl_Kcqxy$y*6&$=6rYl2susd1N&$ z`H~T&C0nniB~L(FvfcBmgtTN*2+}29jp|%|COD`_fg8qqRu-r$%W<YkvniqivP*`; zr^Y5Xr1<98>8B|#E}Ty@9h4cvMdHd?hGH-`VhxBThwnN9&mt#h0_1D1H16NFyo=1| zX3coug+MLw627Akwy*5^=O!i_<1h8aO(cEdcjbWiV*BCG8ohdtfN+O$3_<2R2Z|%? zs^od~Ipq|{qInVuNqoyTpIC-AR1mjrZMZHGre!kShI2lypsUPERx1F|Ew>Wx;Ptkj ztT}PSzsX5j^`#{dC5F}Npewz~m$4%j>YXw!c)>Cu<HMibF2{-X&>iuQ^|UDeZhvG~ zlT*TT^;w>Ta^Xt1%cG*&Z0w;XjO3kU`m=(NtWl4WHFzK~XGM%!qd<r^iidb3UF3ZF z&mX8Pz?UQri1F7W7ZTevaU1ZB$^J}jwsNvrIhPzpm!vztQga99XU$ur=Kt^loETJ! z*d%1GK_OLpjb?~B%L%ciBcLvIIea+@VROQ@FIGTZT4UA|d`Q?V+bR-u9eSS%dg|E1 zX=Dqh(b^}S4A^fSXkZk2a~BCFy;|ux`~2%@`7D7AzzCYLx%Z%ZW93A*n_|`j^lNvg z#OP1T7kK2LeV%-bIgXn#TU7h>D5(akG5M#;n%)xXkZlEfSUNYTf6trlqI;;lNAGSD zpZ^VIaEO{L9Je)_3OmJFzDdu7HmANdIxlV`?*Ks*R!&H@@kgmPO^|An)P=9kkVaX= z%#2r`0cQH>cJ|0GTdtwD%~@=qHFc-)2NGXhMjyA=d|B=$ULEe|lMXb-xYRW5X&iDt z{}!H|xC*y7(%oOp4PSX)39YRM&)FUY*!-6ahiGR%%ye``W#H@=?^M_?Y?`fxQI0b; zcThfnqfeX>GOsazO<8^CMAG)?2(G<^6X10v=aX}*CqVFa{)~i6-5aT@+|B$qTk~g( zWpNV@0!^xQ9N{d1bm%xZE{y(>j_t<GV3n$g;I9l|Ci2FZnM1e%aiV)VR5+nGS*S1r zs+~rr^Lx^?=X$BP%h~Ex5(Pv%L(})){t|-s<yE>4mk4jKI99tJRXM3kon+r;ZclU% zh&ieUlhuCXbBN1QfI8H$o*=dgS>Xr=0Y^9)IKsLmq7hbj#QK&w`{E>Ik6ho6IEF9P zQT)K%@loIy-lJOO7}^5Iuz+TTV+h4%VhhbG$I$CQqVVQ`l|bl~=apRVcaR*+8PBx~ z6P&6U!%Cf)Ae7NzO`YIg=p4FuTXq3P=1Vo9&V~yLx05xczPwPlq;voUd3U)TcwQ{= zOqY<a-hE1+qqa!?UOPl^ZPDJ{<TxA>w=s8q+)IUz+nr7)eN)~s8Xem`9PW_1wf0O% z;F81%2Di*5G%5pzBA;8oYyF)T*9E9Fa?|ca7PQfX?XH}-tp2vHm5Jk8#!)EtRLw0U zl#_(chisdrY_ahvfH+#4m%Wqibd?%U>vn3J+aPGOofBP&kbf%i*yWnRTtG8(f8J~3 zco~H6{PUICdv(2&_#Q(`75TPMkDzy@N6-L0f+W-<P+DTnnnzZMCtM6fD5iNmA*OlP zN=);k0ElVMT#adlMNZ7$x*F4*1u@O7t1-=vz==Gy>YiPBz6MU(qk9}7eB0gI53Uk{ zQFQ)THJhU}18+7+oNKz2QTQ+*6bM;g-Fm`;PTn|QrXb^Y(!c&9p`3iQp{VlSmTLqe zw)NJR<~KsFeb}RU-^_nMgnG}mzPiU*xS70x2pu+&Z^9;c?ne?1p<ka39!9?THo=wO z@Rlml$sHK56(F!5B`twiNNETg{0~%*|BEulF{-DqHN-68gGfe=bwi|@D0Rw+<W|h4 za%;NuEgK_02cNjUMe|YFeY8pY@p+N5JvsRWrI9;E-8oNOE4j<<)LB05EgvJQpA3h< zcjY$XrLvtpDPJdj?|CCJopfGgjsE2sEYs;nFL7uDx7gm)t%v<_l$45N*heYU);23_ zoLtmA;cS22dX*rOy@~yX&yGl0btP?5F)p%|oA;=fq?-%kPRKD@NJviRQLxF27=5Q$ zxIQoxIyG<{yb_-4e4q=l**E&?AD5}2a}}bO2T=5KGUr#icU{AoW@okOH)LzquT?sV z`ZSK=<xliuUnhb7?j}9x@0w7!JfWv7txdq<mmn;@0bubP$E15(m=L)5@ebxnh?n0* zh?gf^ogiL56XNB+uEoo@LcILwYP@_e#LG{gjUdF!Q)_NEApaOq3)W$=)n|f@c#r-@ z10%O+H)u!E@}Jsd^yTcj_g@>zjao|YUW_0?NaL$CTL=+;7DuR+_uqYu63B@!VIsPt zeb4XTP-<Mh69b7yZGwI$H$7=Tkb#kRfy@Q*C!vv*=F*p4$|`?(E{12VXLQ}xH>)>X zbvzuCSsi7#5F_+C?((G;oG5ix%l6x{&tk5h$coZ)e?INpdL7EAtU`JsjCiH_Tft9l z+X9CwUSC&2zv?>ppOkfvt4)0aYDcpJ`0x{AV@>TBkBADohc<6O{eZ;2>9o{0>~cov zckZ}SUBd4iklo1(A<%Xl0MZWp2wTc(w}8-g{4Z`PaO<-^?}u^->QN4Xlim4P!Y<7W zEdB76og?!*bxi`cwrB!k!6hq#heLXyd#i$O$beK7gb)8OA43%L&Id4kw+^}CtO#II zXU^DDH^<_)CGLLrQA8Mq%aD{QV>eMm@&zKo-+zu{4$67mb)^q5=k*A4zIMX|%(=)W z`-*q&>!$Cp;d(+)jrV^|$@d@Vp_rf^N<nOEMjsJIf}ENmL`B7PI+2;nMnB{K|JD8T z_S4$0E@=H70osyV58$Hr@Y(+dE_!GKWWL@90Sy``py6-1C8WYF!9y*J7h+-f{L8k^ zPfYAMRa3()Jy->G5)Gsq$`nNEFTIA{Z2S;j9c4Smuf2iX0`q%DgmZZ|HE%#$7dj`r zcnL=e92>BK{ZEe#m}1N)K3W)MG1G#|KS8uiq$M^tNhKjsrqL)>YSTrbmkM>~7lWM* z^*<H`>gEbZ)Df<~k0H{mYU67{8tjByZ-Yp`rY!`9ywEP6E}tm1DP$Km>)8QuzWd-q z`^zT<C5F&Krdj^zo9Rf*vuy?O3ODhgA`Jij8T^0GdEf^k5~W4wVtm$w4E0#AuV%o7 zWuqEcH}9OFmlk-*@ATexk-P6DT{}x?8=v1Lu!%x)rI`1oV9>UzErQ!ox=Hy?bZyGE zBHXK-2N=GJn~T?=Hk(Ui4_vj#q&)8gB(MaAQYdTk9v9wu!vli-y6@D!B_YCe%zUwf zR<5%~Lo~d`jQ1j=v_l)8!_}1svd8m3-9k=}_6Jmm?PGVG8|7WL-=|Plrff|?H`-%k z%nzhPBDe8T=(@bDgvI*c+awn>bf_Xv(~Jr~znm%MZbp7w{F?QK+HW6s@S20x8FhRb z81FZ5uW13CvC!W!K&kXAy66A?r79kTpIpZG?Yr~nOYUs(eX*F|^k2Kq8md5<kB%Z2 zA`BJVu+ONR3Y+7c0h`#I0pmX$OYq%*)G##EM%PosCam!Z{D%}lyI5oq{g{gajN*-- zK7+fd3tTSlCReQ6&`JNkFp5&dB2eJ##h1+Cr)iAIDP8JH__WPcpKLYwH0^eJl;;F= zdMK~7lgYc1NHkaeai96WeN%wHolwMi#2C{D#@OGwi^Qly6N$>a@JfP_PnDRHW`N|n zlObvM{PLl5(^s(_pLyARJrPFZRxa|ZgMIzm*2R5bkKl|fos(tryh<!7lBa+EtySq$ zF9Xt4VnS!Es-fVH{hhTRqw|tE_Zy+!Jp@dPK)WoN5HS6}Yusd~-w3l`n9Yd)Ai{5Y zkCmG5w8;23Pp$X&C954e2BkV$7X_3%PFxU-SafRAeE-QYaO&;V4X9&$`0wc$uT>3# zz$HmQ5{ev$D@*pvqW(C6CHdHOlo7q`OOEWRnu~iH8yhvdb_LwRMPc^Oo5vQtYThg* zw@LA|8Cvr1plqYamY}ma0}S46{9tkI`szsT!KqbC*p1GOG2fEW%>s)4PlavghP5Bj zB<0i<?Tg8BUld#Up}S1=KkhE)t-q5+yv^rJ&g?ECjNSCMY_;!Ro*2Ns7{2|?auA`V zpA^Q($DIaqJR|r3^uE8xrdWfoD&BHP{A;CWQ*4@Y5x89=tSI)ey*Bv%#8qF7(9dMh zF6lN%xD*M2h8JwR?T0TSJ4-dU6<yWDL^FI!fBBfxbVIg!0W|MS7W%R>s4%pjjr92Y zpGgLtP&N`w!@4zdFPam+A?Ref;j!s;6W0vxLz{v%f)id8gRgM=*zz^Rs+Adeg+QHA z{BQ?jC$jMaptA^q4<f){${Fc9`4(o6+dS;g$1^7?Nc{8ezl(rIeAesQvGN9IZ04Uh z8@wu5m<@(wW}o?Uev?sL4}G`B%46^7HWRv^`L|x1rFub(dj3SIBx@s#<kev$FI_<g zA6ghMf?dT#qNxTfD>aa?9K;<9n?tssr_Xh>p2BV1w{GE*Uy#Ff?M%=Q*R?rsg$&EL z_7GvZJ0&3fn+uDr`3Tt8iYjnRW(x6|l2hY=3n>I6)FGrGN?10UQb;#{wb02V>K&kJ zD;X?0O)!|*_PvS+bFxuo*30Cwe4Wv8!Zll|l)*(@;W85-^aaS5e(6NpPfPx@%4kRx zV?5z?z_joFB9Gn^D9%e|<e^NuH|8Yr^Cj>}eQBt$Qg;QO14xQ~$W4>QEVnSsjh}V1 z?_{KZ#EE}lgnAh|oiaWb@lKciUs9Apz{>}j*PjvD?yykwE1qT<TQbzZsP-&foNnU~ zg~)b9^Ap~^LT(Mziz%Wd2eTCNH1Aq({$L^BV;>9X;wh%%>$^pe0}9ynR{<*;5-tA~ z=%evVLs|(4X$dxYMu5l_r&E2A#Rq!i5x%qjQrF8Y(Y|4yzBQSZ@2oiXd3~Fp*rU7@ znB-eK*|0wAwRxF0d8(#krmNRIvL|eJ9Wmgl15$VcLj#nT9H1D}?y&_k>kpR&=ra97 zg?mvSx!@(`<m7ItM}=7W?6a&tB_JSByS)A$qo>f-ZTy{Hd#Hq`EYj%SdeY>S2!qR2 zxkQtB;PW^$J8zGvmVGtFjkl5&nHdr*b2e@BDbBBUPCuSmFk0@a5WZ2-=8ncZ+t8SY ze#RtdVWA*Pvy`r1vozJBIw@Kz)Fx3Xf8YRD7Y<kXJV7>xm?!%dAjm6(8ZV^#KLWkQ zSONXp#p>}g?C$K(he>cXhjF$Oiu@Db8*OeSNPADemy(<Ie~@F+p~_^aKO_*jFx+^e z+1w(QEasI%$WV{rlD;Gaq9s=u`YpZ`%;}<#cu#19@#RPKmbt1%Y$4h(y8m(#Ra*0* z@neY+UrBVT`_!Vhp1hhWsjAFMYvQ@hWnrhDnfP0v)20BO7TPB8NgIEd+yvGF1E3Ya zM1K&b`GaLoq0$DGgzl;Eio-ys{dLtma<lu;56G-y)d|zaZV^zon~N`HkGdNbB2_f7 z5CbTrg*f$)t1b-)CGiY*3ieqA(;B~D7qqV)d7nK+mr_YrDLKe#KNauKa&!iTjUXm! zRIus!+MJik0-q<|68go;IFA{5&5(((7fnuPyH!F(YWZXcKd4_x7s9>`>&<>K(HPci z%Zg?D^;rxsmj?(CQ<?(M@}Lcz8S^qXPG1&Y`G2@-YN(Hw89B(vzE$+=vdnj<kz-6Z zRPlGU`Syq@K1U50_gpvL-`T?(H1W1aB+)Hh&zL{*C{|e{FGMm`E%-~UTFy}w#S-O` zzAta`uxhQhf(+tmnemAmQ;Dm`hKhpbwXj2;B`q1Eu*i&aPF7))TP&L<%157+;fB^V zJ%X-V2|lSFO8=p3@>D(;SGf}D#qG1}d5VaNV$)N8&ciK=XNRZmx-|}B6-F(CgqAhi z28NmN*X=~CJEY&VZJ<#@sOz54`t!2v!-pJ`m00ZPD`x^!%(I&%cIPxJZJX=NFdboP z8{c~#78rTVAl_Yj;nTF{XbCpHpRX&rO}k^RPA{e5YhWMffQGuu{U=~xLo+Db;JJ;K zuX6V_qD;axLH_Q^j0<1IV_i0ylBBu4&MLevs$=|!V>+ndoP9)4q0r^W9u_SW9PE)G z4FQ%pnU$(}8~_g1Bq~h+GdKL<d@(|nkTU9|t0by?@kn3$%lzG(!3>sBi8OAmhRkj9 z8s=R>f=o=-RO7(HGQ<Owsh)X_8_JqiwfTCNSQC87$g?@ccWj!W0qpxvc5Myj)No2n zNr^Q|x$$9rTDubsR}%!7Kb?Rt$SYZ^TxDfd^(>JleH5TR&zcRmlTlJJHZP8?hjzDx zs$Ur;9hW~@Gk)2%-!Zaaw4{bcszQt{hCGn2fWye>xG+cB!XjTrSw;CI*r#c8Y>fa- zWy~4`GYIUNpU)Ep^^Wo}m3Gm93~&Lv45amhzBWuxPyamd7N{i6C8<!h$RsFi5}Tw_ zR@qjvYvHSJD27O`ntOQ2o6w+D)r{LR|3=S!N22WqzuIS+vsX;X>m|Ha#>}YqF|=+T zdgM(j^i7T>GZvc>(fPudj@sgwj99-IErYRvjx4Q-A^JkK1%nErUd2Va`k6qBM=lFv zajgmm@;)@h`eH@LPKk}Xc2E0=b4>b(@{eJk+G}>G-?b1EZ{4sw=84rBU1*K3xJ&<# zCMd&0bh*ijyN-9cqn1WlW>KJ}qNTaP2iQ!69q9;2u*N?THYDrvh<EQ{L)x5s*wOf2 zzpCP15qs;JaAQLg^Pn>UkM;W7%aPSCfg^zi*X(*ja4=D3O1*(SW8mtg?KJMMbvaDG zkne>7mc!iW$t$+qnW;};mnzI%=4rO6%5y@S7W(ivLZ26#vCk?|7<{&%1xw802TKHx z_UH3#*6oGA*|%=K4z)8$bEPrL<Sgk?Hp$yX!)FbM)-DOrIq!kwCPM()PLMg&R#hFS zQ^R3B7yHOSHG3f8R#|bQvcqf_P3K)@!}f4j_ToT?b`rJi(@JA5I!fKNR|zv1i=m2N z4mu|~bkNO)UsfL-WZu22;+QAVabfbLRKVxZ<_G~XN9gmnxo5p53u9AfYsP&_+8|(N zVL(}WrIpiq73RtPcs#2FZbnR?Qt|y(IP%W@+|;=eXEM7#%7`i0_};}Q$HI>AR#~Fn z|Aqtjox&%=$&3$Ex*sdXOrN9_@hcCmdUeB%>*KWB5&No;G~)0bXK6sfc6N`}oy=2& ze~*2M{=FjY1CDfVJ(J@f$w-@VQH6_Ej}nIuRA)yOf@)B@;?*LyuQU{!G$;IS^hE#8 zT{gNN=jyn;RT{;o_O#X876^HJv^}Jqy6v6oF-ju|JB?M$Yj^D&Ne03}7Ai+mXO+#) zrTMaO$yXN_s}?n%79^-t?F<v0M34&ocA`@kak1{LFY@5c52^}dmE$W8E%xD&%3RuE zi~<q*YJaX3Z+wF{%omlF@j!DOXq%ttWdv7mfc?@qzG5k7DGj*F@olU%-?_p0Jv$L4 z+M==UgZh>S3bAMkEmcojsoMglWg_2;L@^)ELxZ9-N5?Kim+eY&l1pqkd}&R6SI!8l z4lDvcY;C;SAbA5}16Vnr90vQwFVl-TZyQ9zhnlK4&Z`Y9WsDGn@+?&dfIIp#nl2f< zEhOqg0fN{r7PW@`DKhk3tM}>#j=KWGnaei!UNjv_4ZkxKa3;jE@wUP;Lt}cgjDjdZ zmzVPN_AlB<ZI?ee3sIR|f9H7$4FkCa>tmSlU1R54xV%q??FQ;r@BdkrWTP>TjMfNr zJUBRLx-eQ`bmP|SSeGgA4sI=5)+%ThLG?G5&YVe@@ZIQ?*@_pC+6T%R$}3@Hsl;3J z`n7_&1voA~;Q3~EHq1I`Zx5Z0%gYhC^gm!U{C+3%E*hvLkpH@eiK3Kn0lmqO)|25b z?n0MA`HtHPY2h-LTQkXjS3|SQd#%gEMCkG~taf?Imat`kClnaq{?MgbZTje>Tyw>) z;eK!%04krKOQ-T#w85el*YxrR;%$!)K%>JzCF}!&xFp`LshxjAg<1H-Byu2QApSya z+rB9dVAZQyw-YJ6yK!pDNG9r%pGimlE|P=QwuG5F1Cx095G{Krl5QN-*qHe+hPLy} zd)MzS$r7u7mNe`#s6aZtM$qwT!*<1#T4<<aN6_(25p;Zm?gy@7F5mR=E8GZcXrtp# zYv?v)twaVH`T$q_QAri8!%RC3pH<PcD|`A87R*c@hXZHHr2c}<OuKUz0E&GO%jc<f zXj)N44wPjNOG0R^noSf$UOh}ErZv8E^mxj2)f~8>xJqouP$B%{Rmhw}CfooN485fH zu8;P;&1W_JG4$Aq+Q$Rhp1&{kteW5(LPN`(`K;*FrlR>lmgfKnaHe8^y~|E;V*Bj3 zo4E8xj<R1SLSs&Nw9?yh4E6cY3oVum(9?<)n3~~jn~DZCI%8^<1M0TBRGV9Mr?(sm zh@p2B99D8@IMmRFi!=7NpA%dTR;id<e<$cEg(_9mJ@@*kD00Py6D=XQu}6$wK|yB& zngiA9*vv5(L~AZi$781&xYR#AoQyQgS+qn6krCiVK?rW`oc*t(@kg_99rEM$zKd=h zHs{xLrAm|Y!NUAmJ4S>dE}QN`^9ImlOx<Lw?V{FozsC~xX`(4$aX@U@r34`dd453- z{t1=WE^ic&0(Q{6U2{z{yf}k_Stxb=3g~glh&y#?3s6*o4n@YKb?>$5f19ES|NGuR zlsd#R)}#8}lxSh94Ts|&{Y1enGsOEy#p28LhKd$f)k&&&7|;QAnmq&H?1!lacKWiP z>gCQ?zkMP_HE-j=prCFOj&LGp67kCh`o4cbM*PPc8Crw@KKCmxzr^47^10?%XA!Kz zoIS-^d%9IOi!3jU*DddSIphxb6A=@fWgB*SAVAb$!Nlf30EYl{#^Z&q>@Z-u_~hBv zx1j(&P1pVMnl(lCfoGFv#xQ<}>OmS6@$8EOUmf^^=Jnw(b({8^xGeCuhSt3>NN$My z%uyiAd@bf&^n6F?DP!CWr8Gv0Bh*Bi4oa?{+BPfV@M-MlGOMZH+4_vJ^95~V%bnhN zA*LT&aR;AoA}?QRTb#{sWGZTt649Z^efzpsSVd1nH)yI)Iqvk*Vw#$kXua0RetwhT z(V!D5MuN8|j?7lQ!cXr#eI;<{iCeJ6mpRVV@$5r5oa)pxzpG$ET6;{C2nP=@Qzm;j z5e;mjj<S|g^nAuQY>(_3M<P!ZE+WjhlLHJ46xO{5^b$(C)C993u-I=Xq#ED!pEjYN zrt`GJN0kzmr!`uh(LXFt8|ea(O+qAEKMFyQq^hGXs)FWk_D|3RX)E%;zG=Yt(c!Z{ z?))%8XCCQx?ryeq)ti&441hHBEZk?+d_aO8n@DRv@_{Tw#rOk}!e}-%_pNhwcJp(| zB)eI?fTwWa0<8laPTq2A*z3(C8biZSN-Iq5yu4@zxda5v&2tG)f5<E0p6|Iugz0}k zJl$fYMqrQ-?Yx~ukokK1!aQahmFYd#?`M5D*Q=h9+h$4_#56IYaSZ$k<CtU^$25=` zcy4@>0Hqxo$0QQQF*<hJbhfI1&UbqW5L3Ip0m@c;sC3hOXW^E3&99qhOI=0%*HIjn zoOe&*4cQ{DA|X?7NDt`mJnL@$Drfg{(A*2A!vNeY)hx2|JMXi6LTmDA2MwQEoce>( zz!NN>R-f$(n3mtzk3y}$i6{kJO{!V&@4qYhsuEgwyB{DSp}R1w;e&K`17TYY0Gp>f z)htrHD+EQM1xj5In+&LgbgGbD%3pn*FdSh~?aeJ08q`ipOTV!8e5)w`!kR13=46el zMpGeI;LmymxPV8(H7T-y)2ho)WO`9avphV{v^v|a<of}!_+^}RJHxD~^F{yhCC!>1 zXQk^kcImZzwz%(Esc$Yg%#`%R<BaphM3xKY^=r+u22W*p_=6q!TI>O69uJjT6qIPc zMZ2oqVt7u)l0!viTjA~HDf)&<w^qY*x%}-GJJ{+sgNiCKUQa+9KWg?7MzG@ma{~FJ z>RdZH?g&Tr%(qRqn&$<XLd<;tPv6Sf?K|=I+dS_!+6vx7PesT=MuZ~Pnk7QRAnXZ! z@XNRs-Bu`-<3RE=&Km#M=UF?_0H&Z-9?Z{W(RYm+ti7oL?>CX{Jt*e9t!(Se7tzUp z%;p>wDCHYUR3|+JpX2~DHz6lIAOl*ACuXZW9S*`?5_AzT7>*?0zkm1YkIfNDKsbjJ z^9tbU9l9_C2}L2o$9nSl44YHc@19XysRlb=6gGt9K0q@>Z%wy5R8@YC!JDmjs8mg@ z{mGvZKFI$;+)}KGab5R-$FJ-6Ijr9efv2fJl=vxpYtO9d@RPO!(#`e><{TL70#ylZ zM*tAckii;lFFkJiE>ib0Yl=G>10PtF=Q)azub>!As1N~cd6fRw%!CB)`3KTU21(ba zNS@iwWx`)?ENd7mJvTj!@3KqBHFNl-e-C$!S7WyT)=4qsDyf`nf;amLeW1@u1CB+? z?Id@!@7?#5fxvOZa8}+Qp2nX{IBs<Ej`M(iB=PUAMKoA8lT+=L;dPLs>ytkcHI$<! z`+bm#L?Au~kDCcI{m|}g`0d%R;w0Aqt0FdO;gCf~mT+rAr!~FRa#ez=Dt6?2%|72# zR156`<-!}X$6PKXaAGI5$qS?L!uyF+Jd2iEbuL+}oFU;kT~k9$1_N%PBni|)zX)5| zL-+Z-vj{(TLa+8=$y5CWb}uK-aQ$mAZt6KB67iC{!zh6J08Umsv6Jq|J>4f|vWp^A zmVRA^Wz(chGb^?c1(>2<{!HyVcs<D<iJib>`PalwE`@M{Yb`CzR;L)LndH1pSTZ4+ z6B&P6Q79oY<~@K{rm3?;K_Ac+HQ;(#!jU7yQf<|EJE{o4zMUxA1!#*!K>bcQr8NDZ zXxDag`nrNe%Q%2LlH+D_72>O~%{Q0fUV4Cpik*^aNDu^avdZu5u6$H4>P%QU(Cy6* zBvUz)AXTcbCaHF0m7^mqnM*rQ<&-g`o>p3tx!i>3W2%a8t1Q`kZd(5OykuEviIWXv ztD4F`UZRK@`Ep9IL`~E|jAv$4I;+b3Jf+1xseJ*_>rml&|2Ksv;6@_=PA6KpbtX+6 z+cJJ^y4g(Hf4Bj>@mc^q5#APU*Q(uJ`m}#sD8@uMrE}|MRoFTe=w5{~R_iw{2FUi- zxF*OGW-qC;UMal&nyRL=^Csm!c$HSLKbKx$$BBZ=rGh<@DUeQ#Lrv|tFn!7s2+k$V zvd30U*f*=&h4rGpwV5SNd9)q*${pDdz+5U2nDnwF`{?4_g!h->9Q@)=Yq&Vyy!5PB zU|QlKG-U3}>LpKt!Yc+^;BTpKW?hkkMZ+W}B5vf-ne^%DWmQvw#Z+Q*zI^$1H+HAc zOKREL-;GQ49@y>Y;Lmc1&a-75muE2YLKz9=BIY*TaruhD&Vi~Bm>}$5zH{ZW@+S`4 zq*$yJ^nJLPpv~b6B#3R*RaJ3Iyr1c8I=xK`4>%X*l8drJKx_aaiIfYCmr8A#bT_gW zQ%)HyeX*tm7#jqmyf5O>L24Ege&!QX=SVJj+cQuC681dY{Cv)`9e{}op;&g0G5_}I zk?H3v5=A^s`ZBCu=lTiGk4M3j{24Iwp-?`<>*Ka#gdyG3ivp?38$n&Z@~5`kueX!n zmZ~X&#(WTI%q5!4PRe`->xYy4wRR!3p?%|mosWWy{QX?1iX`x9+%yCG?Dnw%V}*Ct z=KEp#lzP?ZS8*Fl+C<T`?wn|-`&JCX@n%m%a1?=NqU#}}hZkZM)7&Z9r-GgQ(!k*< z0PHd?s2t0d79q&hzpEsm1ZH?zfJ-l18eA<tZyOl}K$W7o+`V(UZD}e6ZlkK+TPO|} zZea?(tfPe071;d-329=uIZgx6*lDM$Q3d}6q1?+P*=@MfgVhe>8?6h=Z&`w-<0tpp zilZU8C7%;K&Zw^^Co~+myd*wV2ZQj!R}@oC(e1Wz@6nwlv^UC*3>2|A<5SMGC*~vd zOI<V4!D)Tvc%^x4@2f_b%jPMZ*FbaG_h3pd#vG=-h6YFGoiaNwg_os%yI8m;Un>6& z%1hX&R{d>%!$!rMGb^P4nB!pUZ;!a(OjF!z(ISurRM)OYOreEK4sa1FfvE@s)M@wu zhyX&!d8tisv5+f*27WwMDjjyBYCxPr?wt`T@e?gLeE98#%z!*y`0SKpEfvN*Z@q*E zZCduC%PyAAq&n4-{B~8LCJ1=%g1dDQolw<6CXDWMyOn*^0jP^`*(ZW(otnGzRRUPD z>ocs3`rGw6m!NbF8Bk1tW;k1S;9HK*WoEo>EkYc2aaZ(Y1D9GzJ`G7jnnD7!&9|Ry zsxfY@Cs}R!{r<FKd8t>T>kCKlL9At?cygo7<AtSH5}Na`dWtQh@HLrcj=Qt<`aT9w z6>%&NI**n6T$=q}BMhO7gYDu{1y?^?9Jf%82lO`2I_CMnVudRUnVZpw%%vwQ?!j3i zj7pO;o$Wb?g${b{mS&E7dj-s23c)t0up<ZB(ibkldp&u0xfj1AxtmS#;QT;>XD}S! z4LKZ;ID`^|29^OlVn;1#84Z{zQ5J^p<*C4vVOBEAvIsMneAO!--RP>98T}ls*pZXE zN8)CtgchJ{_<23~5@G#{S^kNpwDnCcQNcP03@}+ppAMZ&Adb(0mV)Q2q(jh}2K~l= zN$)!Qc(b0JRT*)T+YWs7&adJeL6xbwmU1sEcC`j^X`P?)sWnJxISj28S9@rp)@xoS z+$bJQKm<<!0=hX&zELZ>>AdeSa2G#qGElja1B@N5WlPA{(0q{04qd$HbA>?S(L!tI z)6|>T?4!#wp36@b=hYU!s1*S(^;+0xUnj-0DyPJ!O_i^U#5@aAx&bU|o^UN(FF%|6 z@z%ZvXXc<exHva?p@Wix@)1|y2JqBcLkAgklFfRmQslkMzQ68ALo&A2Wrtjzvl$ga zhhsyqE)%V{U+5>*u*c6mEzlgfjbjmu3~pInWZ^`vU1{`-cHlGDsA%?6$kd2^-nDk* zPED&U&v!*?F!u=r3a~3|fMAb}F9!7b-rwC|@cvpM!F%iF@U_jlgAC=$B?P;blub;S z<ZLWn>|JWGs8dN$+nV%6R_X0>4^*<MFy!QcY%Yfxn2QtvwB~V_UmqS|cG`>1<n-Bh zTf!Urd|gxIlc?&f6_^|@b;iBl@Cwaa+uLLL9BgdIzZ%i$nqaL9**(-+TXk&F!5r2* z+t4-mD6;2JKn{IiC|>2FG?1HBv$G+p-cu=y3hCl3hNae>6!zDOyB`_lxe*G;Uv*bc z1bDQ@<&eLHW0rFMY5qS5frhEq3;+peZt;gLz<+tFN?ptdc;8GFOmT_t6x6~TZS$?u z@yqG=uq~p%_#?E9?OydGaPC$NP};P819Ft{(7H&QYShcyRiC~vR>I8<|1O<J4aiM- zyAt`P>NUC`0PNa>Z#zj8@$kYb1!uXd-KvQ<y6Nn=iKNe`#cn9KB(Ha-&ev_|kbIN{ z>`Y(xGm-VUXFVGPgZ32kA*PTy9k7o;k%1O5=rsvS3ZwD`D`{Z{*ITqK$bPCcD0JR| z*UE!5XvvCe!EHRy%CPdIm6XcN7=z82e^6ISEUUk#2v+-+Nyqv-^tS4^YvR@_G`-hS zCyTQq)5jS^Og5fIcKL7e1rwG<Q{t|>waD8&Xm~Frx7zm8l>zD8A|BqR!UEByQ8I_2 zF>zEu!&E~B4fA6#U%N%blibsm80KUL^G>MNGOPO^Pf?h%h@ah+s7gY&be^8OZCJEd zLRQ67NK>0a>G(ew?g?tt5Rlj-({V>#mKC&22NW0WW(WJMx@Mm)E1fmsJ(E3`K>SIi z=EGo;TKUrDg46uVBVx#t{KZk$6apvbFhBR3|0_0F7f0Bhe{O1j)%m%p4PnNgc5O7r z!>TC;l}=p>@Nlz186wEiH;ve#!30>d!n(K6e?143m89&!wZ=Z0@o_;_JkS;dIk=!k zs-+@XD9Ks4FgxNbs!aR%T*=>AhRx(p$~~IrzVY!zbo=WxGvqZ)5ap!*$I7f1Z16Kt ztvUjauS<)t?$fqsXVI*;>bas@SM}MXXzxg+yVOZ}8H3cQ34$r{F&9^Rb~DG_bZ9JU zLV$pR!y{>p6^~-d)6unwLmFHnCm7$v08BOkV6wm0&mi0(QMKORn(+nvpnAOneLfjc zQr<-xP0W~wk^L>S>mZpDBhS|O8M)(*gF8;=;TI<r*gf`<&Qc~Z`!sFWKAl$e%Dj{A z@`pWI_qo%L*dGny7rgr6Nz>-(lZNKH`xIQiT<+#N)4HFE=gXyF?8|SZT5d^vR6I$S zqVsf*aErl4@~{1I-+;qg%rf@Y2+Lw-42fVRAk?ZA%z!GUt4f024~XX|8;lhqy!;`f zTvk9(Fo7z)*;Qqz<NkD0+fp*05+aVmR&-#VSMIaXU}KW$ryUZ7aESRQ4fgf<z!{|o z(0F0g7F#KAv#zXr4@sI@c^gBpa_2@asLlE4XHC}ToqCk0OlaR0N_r;<I+H+y!JM&Z z4=T=y`BA+dKDhR$sik<6**(_*r(}usr49Rjoi9khAx3=s0lSW!#zRWXwI`Z~xB!X7 z^Wny?{V>2g+@GIYn$F>Xn`VMN)HUS8nM6|r|8;8F!CN60AsX0!qI9<P>A!$IbU?$H z&!Ghgr9HJ2SmS`@umv`YzmMgxtQ51$rk&b5i+nqEw(rU)a>wm9G0nAMq)C;SN;rJY z-3n*zpym1e_gbEOsVH}AD~4Sm{vb;Xufu{hwUG5YR^`-VEE7E<Orh4{DA}c9`40-V zffRTbiUA5*N7ZBZJ<Pcic2$#FOVA#0nSZ}*1C5vXZ+FnBF&Kt){T$J%m`e9BX}n1P za!Znh_{Nrk#R1?D7v;-$OA`i0`nQzd;Ns%LcK7%l)S%7D%;GOBy1*Vo-$;-cBoZVB zl~W4?>bBv7oD*Zy;!WcTu7GbZs4S_YGN>qEOQvdUeX<{fxZ3h*bK~#=3;p~8&m0Y0 zF$TJZatb$T|KId=4l5t39;NYKJp4$X_wo8Wd(H8IjG&y7Jrjqm$lop4{bh!JWrjSi z+9_O#6-kXt>wjXaYM|UUn_lP@#xO7adNB)Wp~_-vhKm)Wc7e-VKJNEi-b2f@FBV|m zeN3fhZ?ZumW_z0?Q^-NcZkXP*ytG;{C1xMP&xf(><uhnJPAy_Tv&mqXFuq8~S+-cz zMGwkC=WPk!4+_-uY8Vq17J4&wA$TWGoEqy>``R}M*5Yf#{%Pu)@d5uE);J$G)YGG! zJtV7Pe?94La?_dJt7Sm5%^8Bg>eou4YO1>w;dBe=1r!B{hgfloGh_`!Zn!@8NSN*v zIY)H3RTRlGo|SA1ktq6Qe}|Dd=)S|t{*><fsk&{qkY)f<co7=RfQo@}-pZ%x7?{RA z1Xt?0tV5I-A-(E?PCW_wSHy2S{n40h`~Re}Yq=P!oOacpUF9f}8lqMv%*l?zbhoc+ z7IG=#lVfw1(%tq6@~~i1(>y7<QRzd>(~<A)3*s_?G9qf5R|HpinI?QED2k`|sjqzE z%}We<KM-3CfybT#$gU`DVCbyybMn{UnRZ`J%>0bo2=oYNBj4RZ=Dw(pTYHV@;UV4~ z1jGK=4X(`nD~BQZ)*MBRTFDcSTb&9$Z2_54=$NB>B#Ug+D})!t5fi+%I_b#O{_FE3 zJPTAuZsN}{aCvzX%74P?SWJYmYB3Z{>v|QXwc0batvqkI1)B2v|JKcvkdI{!=?X6^ z691co7Fgw>8<v%a+8i=zIhREmrjxY0Mu_o7d#6`Rl1s^ZInU1x37wZM3t<#2ee!e> zWJSnuX7INf&Zb-8pwLj*ePN)cMq>R>edde%g5qc2APQ7~z02aoj(^&sSu^YWV9>!q zv0gs6X!XTj*+HWs8>CjL%jJzHk_ieL_P^|4PM)J;iFIXF04xR1y7v7AKV2#QU@w6i zXKRZndk@yMcJ6LUk-%*G&D^g0Q|rh$oB%)}1ON*Aau}hXNZS0mE1sILo@44c1Nl|~ z6hY)Rb^xG2_r4xhbO|has*Y}iqh2ZwmYl*>6MJlD=fZnuQ}ZTH*Jyn2>UWLo>Db*w zBIS8#Pb)s5$@o@_9RMgi)TUdnAH`UY)LZh;sx4g~a%dOlH^h%t$5zOimdHq#bWU-a zR!r1PKJ#k^&yL8+pM_0-#WDWJZnX!L82j-PAd1{RTi?zgfo(Nn1vy(wj~K|5Vzd}! zD&DyF3#w63b6wM1mQ2d2i>+DAe0bW$;kdpcoF(n5)5X6#IDG;k<fuG@5b|#jLQcf7 z8bUt7Bik7uKYU96E<{uZJzJB}LQ64&4B*{A2-W}<)vy&qH$98<Ya`vqq&<*iz%xUm zYA-RhuTd^^cHp5C6>vKC($S^g7U^--`4FhM@r!8#DZy|qH?T*FcExaBQ0APOrNBgx zj+yx{42(^6UgSi|M7Ya~W;_Y~p?hu{)(bVnq<GD^iR<8l$by}u!xaq%d<jFs1bda8 zQQP`EZ`yEbF|)&Jg<cMeFUEaHGB;g*94VUmOw1z?>+43xb&y6vTP~nk*uW)q{T+Pz zXvP@2&RHxk#^bMGDp{@_cR6?`QewUS-67QT)Vhp$NAywQ`*x&A%Voe{{hm0=RsPhA zD)QrA6LLzYT9AU8x4zt}SJ-gnrcM^A8M*b%qlr88Opr#1qtETtD~-L;Oz#_<7d8KZ z=ye)OIJLuL6SUq_!e=7OCulBsPh*HMi|X$kK6}bsd0X$fTRhp`lE9l{RckhNe@K;O zdh@yOj=KbMUH!$w+o-C6b&1r3^6-rXvFMV;>SRa-SFYaP0khU!&H}f0<bhbby=UqZ zVWvg;x7?=iPLi=I+tfA{BHn<jTdZi~wGsz5sCRo<P`6q3!`;!Z#4oc2lo2eQrg<J! zpLVPejhgKXn}RI32+C3Iq6&5+=`nGeqORcrG0WM8ya|X>TYH;o;B5*Eh~)?j^;FX5 zfS4?(Das9VpIQu`TB)<=cVo=4%1x`(1=S5OSpzJ<9?`&|6T;U)d+?g?!tGMzq2(jO zT%dk`-|;nUX&zuM`6!u4E%*1DOa7BImv|W04-|<$4oIPAVM?5?*t9gfFUObMfMu-T zSC?oV?=(Qw+)2q>HeR?7<cn*&+#+~(5_Yt{%Ur1^S5N3*3{Xgz2q1>wLm2<7GTBx~ z?~)$N6|-FTjxs2`*X5Wnq+f=vCSk5TKMo4(Ej}q+YGT>H?$s%Zl@l5)-L|YH>gYiJ zdv7=Ys{<L1iu4T?UO0gpbDJEqjidZbAs~h~bNg0I?Z`-_)Vni)Xpy@9L0*@U0AYyO zcF2+B;0h4x{g!8+gDtLZ(Y!-luCV?F^NB9IsGWrvZXr!7%!N4Sz?jW7HI#uvTh7N( z|N5K;&!nGoX|+@6y!IZ4?~WD{t3i=p5YGxNfC=xD{{i#&U_*g;tF6ilEII5JG)-#R z7dw0Tlagh$=iDO-?Viose}BSMope#N&nC$P+tbe==HxOU`f6(0HcV`K{8nABmDbxD z7m%k$|5e}!cr5ybAF{nW&}c|u4h`j%rt%JgWEA-<YRuLgRUAs|PV#;;qUVw6Cfj=` zBWI3fb|i?Su(t=#vf(h@=Mi;4J?G|%@s{=2?_iUcaeb!99<;(Pa@qI%5#!1i^4qCu zFf-v4CvWJ|rmCU%bw{}fI|^#$>ez}H#${Db5O7BsWZJb^#Q&YPZj7;Nfe}=n(#b-I z514=NzrqKE>a$8z<m_(JJqK`e10nI_MgfTbXG4hzW-M4LAQ>xVpD!WKO7T%?vsK7W z%hltWb))`Z7U?I5dSerR^VPbJ1mgi1bB{KwVJ9b*pLTM3<;nvRW!aKv$*FzZpC`Pz zFciuozKyPl{pTaMW$bee*P8#3Q!Z==;1jN#`S;%-N{f6=yX$YekQUcEZq-k)s>S`6 zjrcz<iSkc*5H3O)M}aV?lR<zFW$Z29FQ#KhfD--k?3b^Tu{Hk&BQ&fuwU{xfeSYGm z?`5oRIhM&_MoI;7Y|9hfcgWbM82ej&B%-7?hjPDdM&{@6f<JW${*wp==u$!y>(?nx zV4c{B<-%XQL-ob~VehTOqW=DU(E$Td1O)|YC8b2^8W0hX7*J|xR6rV}V<<&Iy1SH8 zTDn7#?(UGz8OZ^LxNGq1Ip5#j`<(mR``o?Hea^jqz{8s1c^KAbt#`iOuNULqie%r$ zDBu5<O!yzR){YvT_Xi8`50U48c$@c16v$8aH%6Z)?=SmqDWNvz6_aa}9Zois{$hsx z=uK8Q-pSei))CWkE_v*Mnd34vzrCjvJ)hg(e4#s54T;6s_3HmaUGaZF8@q%s`X@^f zf3=o=0FoYt|FWhfU?2L=B06T%$Eg?eaEPidIXo9DfF?xYdLoXuuW+HfPPVocH)3jD z{k#kz40l}U%tV~;j*THi)r_&YInvzJr_16bntc4TeKMApm%lP<<%~6Ufa?Vyjrz?M zg1o+i8~0U#6jI_VgXQM^|L`UQnTtHf;Wk<^=PE~>`nt-^y7@z0N>U7_rILT4*M!7t zNnYLuTWkP+^~V3dv;RC#ceX4}J%8S5<xykG#zKJ(VMvKZjUn1_dx6$Loi)5W=DLW{ zOCf<IP_r5Bc^oQ<3!pztE(e&xj76hiR_GZwizZ`MK)=uLg0x#o-n6&9QnCrRe?k!t zecCCY6kX-Ecopii9(SE}amm=_fi|UvByeWZe|`O)%m=*E`hT?=tnfiPMqLmtvcqq* zD$Z7cg*SNqpI|An!9SS&L#I8Qp4os*#JY7N=bB#8OV@8CS>ir}+ey(2j>lr;)>8{t zI}dN*cL?93sXXf%n3+=5sV!4uv!8*>*9`+||1u7g&XW!~;b2BK$GU4)LZ<BMv@n)B zckYfbt?Z#ikDXgaCwt0DCy?}}f(;vub<o941w4HqCf)D<bF78csLZ;ftQgl5?{s=? zel$J5bp?;+wlLuYAK{c#O*RlbJ5q(W&o1cLEQ-^He>*<(t*ZSiDb1Q_GbaF<67~NH zrOPv}6~6HogW*I*l9$G<s%t*=2CXDpj4`3UI4v`AR+PKvWLh6-esVnHxnz4B@!*j7 zcOT7a-hRA5VRdV#ph?i52uL9V9^-`-{XoEDe0Sw9zTyuV{Mb9dql3K=#xC5C8jq-8 zoZe>i*;pXjbRX~xl`~-kBL_aT6nJ?)Q^TSn(rS6`a6(I3`tasb{$g59`TYL|L}Ma{ z8a&~f>dL!Uff&0X=wx1H-oa|uvFdr10C2T`!t%8L2U(~8y}T3usigr>0!gLW{+0VD zkjD~v^Hzr(+KUL<JQ}i`4XY?@2#6g`R-uJMUa#=qi<<O!?I97p9h4MOvI2em^{~fj zS&BL{T6{=_Q=Vh;?irg%x<uy;KiyeIWgXAbB@~+^yu=QM>T0;5wlsxu-Js^$4-&V( z87Ap|ix_}OZJvyTQ`nEf4I5VnZIE}u)Af=?xBM?qgA&>IoF`Kkpf}pgRAG+8ng%%a zT8p9_XHdag{ETvg@nGie^*_lFH<dNLwBEWB=!qi7qEcsRS|ng)M1bqQ`>EOd)knT7 zWlQT4$tGVUhi0F?tlZG>w|55MFCatkUrh_XczMa~VCCjkk56!fBVso+xT{Jpk7Am+ z@^um?I_Q9U>qjSl``ECM;n7@~kyqljk&)r4MLH-!>LoGD<ySscgPwd0sGg@7MHYRw zBt6>3pk`DD?mHFwUm}{E|3o_N!^@lWVwB@I1u8Tyfb-pN$0CuEKOAMR6r7&V*rfr8 z!b`S~Pg0kz%K`WbHy-c~|HhCIV5^QntK0zmzy~p<fZHTK*+ui@P`a#jiryjYW}P0# zUo2BLzee_8evDm!&Ao4Eh>0z~oQL)!>H2#>Iz{onKQZ`UPX@THs-<hE)`IzrcVg}H zTQ>R$FTa|s@!~|Y-T+|FQ=vKm*p$wFE9hJCWC1BDJwe1dZ&a;_;#B3rc;V5WmciPC zIfGx!Vw5_@)^oQvdtd{_o&R*miatIGcQ+W^ZIN)`D*$f)A8y#ca{XoCDdnH6<5<5x z##%rybO4x^Q&&6zmV~x8s>e=GDR;aJizN{PSQ5(!dnsKk67BNAjl_fN`tP|v{dWzI znSgsy&s{xgjec+k6x2hnNhp5iG%Fx%u2yTIoM-$z99%>MjdJEFAYEeo+#g(`?xR0> z`JV)Q|3ljLzy5R(UG56*{d`Yo_6LGA8YEE8Iu0R&TZaQsFAYc3OnVLZSb7+r_W4|t z8ynkVS*OolBx7_E2Z~dV2{Ex5vqL?Y^g^TR5WTgP?D1$y=U4pI@=8%;@DOMt7eDbH zeF3{VH|Ur9J5YP@J;2%aclcn*J^bHT-~U}uFu>`!s~**eZS4^MXS8<ytBGj=0mbW> zYBno{N%|Ojz(X~`4~KkJjDJ%1`BZDqdBYh*WN?FJ7H*25rNFg(V)RmLC`q9MNpwf& z<uw!1;qeIw_5!IL4JQ_^@moc`@vwPU?Yi2$faVlot2%D4DeR=(h_=@{?#nkkk?~*! znIDI~WjRdkWSDyPG9IDO`d#wl-S`xBM^uLdzv*2sf`W{TKTTVk&gy_1<S#GQkpDqv zt^UW*S^sI(?Nbh*_sTKsSN$uXrCf}doLB9CgG1Vb^Pfa(Pn$Ko^q|#1XNU+{yu81L zq;{=9gMrr3)VkYlE+ws~#ja8FJ9XG7+Z_?4hw3W?T1n$pp^VXqY;L8LOf_Y+tia}R zQV#2)k2Md?#n>^YgWGx`2h22dTBypZb(@2dE#zD0t+wbBwTm9Jx5(`m*6$8Y3IlKs zw&azQDPFEwXnhtV%6Z3#TY3NXS{4~Xf2cl@m}BPSmaH|937Nn2{}*tL-xJu_XakU@ zVDa6SV2&T#wOe$kr7H>&QtA>}*5_J&D_7Vq3{aLur+;%+Dny#CfEs7z96;;-jlnV_ z2sV18ik+g86K!<Qux2v&GhO;`&>#I9lznxKq>%NMINnSUXN12Jv;ck6z$^b1<nuMw z$HNPpq!ygP8#Z8!e~qz<GoJJGYlBj(Yg52;u;=?Ws7#<U9DESpF|Y_Gg7(P7BKc1b zw78ZPMOnsOjcLhW&lnW2LzbJy4jN4gXX}vK!OsDBvhg_6Lv(-Rvh&Xn>-hWBd<#~F zpX(~_`q`tqMC?+rA`oV#*Ycvwsm@ZZusg4M;_v(wFlPR@fDz+<DkE07>N0;vIDX_` zDkS}j853lURt@B1Rg{kq>8lH;6SS8hDJw3HK6Q*dlgX;trC4(6JivUOOQD}@jU8QD zdL$}o<~?855c|~KfdX2A$8)!76nL_rWGSnzAfCI6W#6D7$%$%;LoYeP4%S2XTbf}- zWJa`cJlmr$Il7u**?`rLv^9<zP}XeO4P|LVUVqkkELyD>II3*>7!Xv+Llx896y1Uh zOR+LCLjNT)GH0_ypTOww+=jbqYF+{d>RwFrO&nL7`FHEmXJ+)5J?D2a5$8(#{l#sz zg@jEnia4iL&(N(!PiljSnCo17$*9q^4Zq~6JJ<kn$^!$tZW8`2dA~T|a4hga!&n+9 zqkWm(;cJRp4a_p6Jd-#nF^?g4BKqU%K$q|@fs_ANxjNMXa5^$DC}NZ8IikjsyO90b z9n`d*3mTa#=KFOd1cK@1FnYU>m3mMQJpg<=H}U65ZO8$}*k<I_-z3BsNG*UwVZq<< zPUH8b$2YKaU!#BMzREOl>dA;Em4|B4dFCERr(wKSwfETEZL-bLqsoTa)Q<OZATxgG zp*9WMs8%CK>f6b;MinojH%jnFIK>7T^*m;IH3p3+N8J`)#_m?&+Z@H5P!?;ISte?4 z=W5MQ!KWi9r*&^jyPl{YbbKm#`(Bflrm~lg{1u4j1K@0>gjj@wY2zjC#m?VN^YTvZ zGu+~lF{m5w$N%5KP^Xk}>X}I$+uS%iql=i_<ZB&vLgNLDRbi+V&ADZZ5#ZzEc-mk1 zgOp3)KRe|j1#OE!xMY&k)A>d{za1ofpQBmmq!@$E4{MKGM$6D&6X7KfYIYKy<crds zE4@ix<kND!+0tcWa>;A0|93+YknkU!<J?O<M8iG+36(p=npL@H8aBDqbGxZae@M9g zLN)0AK{W{aO8zVS!oTKm<g~@9cU%%>$8b2y4xKbs6n0lEwP!KYMg?(;GM{6T58I=( zidIz=VW8#?io_uyYCGw~7NyKC>@wYpWjjM>`5qi0no;v<nCYWrIRE3Z$MZfuSHnrh z@N)Pu-JCV_$~4+c^oQuEL<~Br!m5TD>FF_=92~Y$dGm_M<_Uk}=-SBvy1~1BbAyuf zasWBFpg(%rr=xj!#j4a+&Y(#Htj`P+ME@#fk=P&e<%A!~$7{?J)R5mfPWBPq`6Bj~ zqni$>?f#$wK(4<tWB*RovFJu;MafOl-<lShOl85Lh>YY~EG3EEWr(E^96O(2Fw{*G z;x*oEAm;i-|5E}OZ5~Y)C({l)j>mYQtvCMSTy26?k^)%fXCl&nGT+NRbn8k=n7Xu| z^r@LEm=XC#WWWxCm9royk(#<45#x^N65WaQ)->QCWXu>(0$gv*zq1SHE083YsFtg6 zzj8WHN{=SR8wW=LV|CsW=QvL_=QGS)YMW}9{StP>_|||9@G?K`NbsRGYt~InZ%Rv4 zci!0<S@74&yAG7r?wQ+h(f!6N#kc<W`N##yK;F+ybWCi<{oT|>a@=Cp?{DmEj=BK+ zg4MS}o@v}6Y!?mhLH57(+Zv#{Dz>VWyF$-(SKY3PnReYv-8#|AZ~xdJ#zD*OA?J?i zapT&F;7&u=e_Oi(*^4HcZ;(q0brjo^AwP8_YaP-@n-jj|=Gd#U$n5agus9g0EHluF zZ%O5n-y3m8#A0HvuOX<=Mf?jx@9V<Xm@GIwc0ax0IuX;2)N{-YZ4M&8gGY#pFF}|r zP>jw^>qSx@?na^HX;>9&ck{FlcP=0JPvW(piO8c6u9S}RpD1}F#J$y(y<V3X%$-4T zq6i*%O%ePCPL0dk{}GT7ng7(hlbW4zHo^cXz?1$iA@LhA`?nDWOjLzp`)pobPR!JN z!N%3AKBWC@vi%?z_|@Sh%7j(A+F9$D?t&WFIB<N@AEGxi0%(zLn*TV)@P9V1zQ6$y zSec_M(`M#+{h`IG>M^0Pl)+LjU74Gr!Jw7oy+i3x_wjdb%!s2pNo2J~nx04KU>%8| zrR>JQ&QSbgZ*xwYsYps)(BnN`JcoHErXX4JQcUy4=+@{iR`m0$t93gso$gNC`#=S$ z^M5H)#tQsVr2J>xNpw2o`FPlctxpw>M(5mreyNMHufaS~ya0iNM5qshU2B}?jbD4Y zHpk08U>qGe+RH{2N-@V<yJFKWWl+PN$Rb-ZoTHuh(~%md2WU#q>KSEtTVk}L#;KK_ zd)C^i5la5!`rWLHu0}8}8753^=(~pm!Z<27$gZ8gPM6)nB>VCj|I?@E&l|vT_#a+~ z(0e9s5IXqv(uYfhS6)QEd#FZSh>DeYbz+NwDY{Hm^Xu&DIu6G3>m`SW8)Q^k4mxIA z!l$+Dg`X@senYw$K1It`?AK)*^d53-)ul?cygOX|I8lV+Z_#z+41-=AYAaIqZiU+N zw|pYv2<;A7zk_yjd0m}CAoq2p>6*&-MyCuWg5vYpMfmI2$ymiN^rgMUkI<U<u<P_q z;?oyOX9d#t`5)tbgGt}zeu*F1*Sb;r*78-jj`)aQEq=T%&!e@=Usr}&{AzLj`+~Rv zCqC(tRJQD|NzI?8@R;+Sjhp^c7U7Vm?Oj?GO33)b^bvzMtn?i5Nt`$znI4Gjds7<P zP1o8?%ul|x^u~uQ9nWC;J|occ^^vb(BX;PvZy8laNX--(?YsR<#E{A%SY|6*nSg9d zw3FXysJCKEK4Hu`_k(OZSGyDYdW5$g^?kgfE%=Iv|MBW=4%+Z(UHf}0`=Uo{{ze6Q z)W6sjqQvka;R~51H{&3$mx%l(?8Bd&iqo}ElL`K$q#H-E+iWz_U75ZqxIq{CMq*>C z6}U@-COt{hDqkLRV!=6^>yvUG3uwtod$NOXoa1}bOgJ-UoPO2(dIr-HT&<U@`WjsZ z@=G;>4;N5Ml`<k9&U@bD4NGAsbV<Jyokha@GzjMjDZeifN$O?md$(T57GD!@dTdPr z_oi>YrJ8b~V8eHoCy!v<GJv(<?a1Dbr<$toEXuw|s=qKtyu6#s`n^=^r)=8&Qt0)7 zp~&as!cuCN@gdVkn-{pYD(cGk>?DpM8s*Jz`hGRZAJl)3Hf&f@h=O)kvF{)E2D3+g zKE-&iZzIDC3$o&?r)@o5UriIWEhQh<<kT!wev~&17FzL`CrjTvZY(ryqULfsjQy7U zC=Wq6Cf#(;UAZ!loOYsiWpb3uXc=!l1ams7IeBiIzvT@PyNUAg55E$UOD45{umD@r zoC;x<syDxNlUa?>Nt}v^?V}0Z%nVwan4CT4NCn-RT`E?+jxU>Nb|FUW!f(lD`#EK3 z{#=cCZ-I;W@m?t1&%}-fcY&1uB@}7&Wjn#Hn_A2tu~_X`Y1G9ejP6jS<C}y!npYwg z!6E4=SV6|>_aEPHcGRMBB!-YSbGkTIFhh!AnlV%w9=rt#j@>lz$fOE0Unc8M^6^g~ z%bNV@O!*VDckk%UvYbd$h~B9adQP~%kl(l2doYZHB6qj1r~1{dm%h!umwj&b;@JtK z1t+X%B%jcUl({|myl3myz}RIN#A!cTGEYP<txz`2#Q#b6RIHdBsb2sEGuJUDwsfrH z4Zkk&!Q7zM+B*OJaKIGA75ZS@PadN?elpGgA;8Gs)@RM*UFUUp;<;-)On#eb^ENRg zs?}-cBYX*-CS*30r^ALNgY%=}-Ud_gSEz(QN#8IXOH?ZrOv6Dh9khPqcH0ApZ&7D= zPea8_lCZcGy2C>6<#F*>k@T12$ICazkx9a(lTcgpD%wR>u=0U|m7{qT*t$KZ#q<!! zYvfLYVZGl4i?H?F6>fEx{INKde24wJnYVa#PpUKW%`?|HKmg7<IpuW62oHhWyiSgo zOe{oJc(f<vQ!zo&M_&StJE_G-1B<330#6Z=YLjUAitvK^N|DF7;+tH=qF&!u<D?wt zbyOcZMBktbtr(is1mjvQTuXa_95395N6XntrtgecDm~Q;mZ_3e&7ayDz+APNTkPd} zx%+5zw<g-KyYk}7aFx#h0W}M+gtyG30-_}niVmZ#EmsodIVC4AU4#N!Eyb44-b1pd zpCr;u`lVKCx^XtfNb<jxGLG2k%dy99i71EvRBtO8IluSeN@O9^aS3er4TTpuk8y~K zs(n)6t-sD2;jcgEjW3>NvMf)8v9Pr(SQnhK3jO{`?q*<;f?$r_+KeyzCvCB3&i412 z;|HciUxStRMgOE3?mwKjm<Y=csSJ`_u`VAzGc**$X#T>#DUrXAh&|WH&0c!Z)vl44 z{ltBW+s{Z{{%XgYm&=T{oZYhq0;HN(ti2w!GCI=M2G6ULYLax%f|V^T_C4>C5XgOv zBu%YP_z*==<@v~^$CjswPxR-890t)Of-82R-x|2YiW1KSPjGB4*Tnwt_^CP#pHH*0 z%H<w*>Tx$tsSoc4BkQ4v$4!>ZTn-p{6Jm&E6rcoAC_#xF^ddh?4W+u5V?s=ciRf@X z5_P8C4)@Y!d1$Y)0A|h>u!K|>u8^K5&d$y@#L{{I^2qb2g!zCNNs)qrLdbj&%ocL^ zP}w}`I{!APQlBAXg3!j~vvnzXrs(D)0WxA~3avZhP3n&`Z+vz0g{5ED`KkntXuAG5 z*wfM~qdek*4fk^W@#EKEwG?FG*iAJ~(_MXo7?LNjr>|7y93F5w=S2sDabbR(^YVrd zID{{H!<>bmJyWLd<OpqUt4!*1J9?}kw(Xp`KB~2fhN_q5sI!_SIjMWQFFhi6nqVnh z+2A)sI)1+B;R8QD@o8J8oxFDBI4I%RUX6lT(C4Qhh)kx+#k24T!aCchg7L=0ecgSi z=xu4M6<w?}!^>2X&t<fHY0u|WCyckeECnA36jAp7KFnfSiuI_gH(2e5TEHAoYXCX- zJeUFs%gD%hh{Uq(V>wd*HMy{v^ryFN9F{*^s(V78PPmCM`_I8!CigWie^Q%(?%z0D znHRFX)7(Tq@Ao${);h;G8Ku6tP_WX-U7U*(Z;3tBBRd8HV*_tdL*8nbLIwzXklv0Z zF@&kPP{s6nM%D0nU?^>eiD9#kV);TLU)3kCNwY*f7ebRL%J^i%a`)ev8#C%f35JL$ zk5g>+juOk&ilE3_xl1xb1)oc>B^HYK_y082WV1e}th5r@fDWb6>W_0KjSrLkOa)G1 zMcD5%_y8ZWdt&?9aIAPzf$lV(W$TTOWDsU-$bpm#@4FE1o9Tp8UsorwP_JN<Y4ozw zZJg&P1>anF4xIIs>DQi7Y9?0YoH@%xt>)a^C1Cti=4TuI7e0#}oAm5Y)ga^m>xS23 zPZt5RiE?W!=~iY=4uLx@6J)~U^w@B|CG=bOz-XQMDAyUW=|<T!p}Pa%&~1N*Pa;e4 zq=I^0X@uSKh(Ivm3bKO4zz*D9(k<e(&*=+{z#>W~k2s(w3O0Zf89%;nG>Htx8cf6= z6InqF8B&BwNF^Um?#Bz?eQ{XJV>CqN>~`48<<eNiwNt$9MKO&TCGx5>lMW2`b|#<J zlvFL@u^MG}BNWl*<J7&orh62uvbV|sGvjXEIiz+82q>Q++gdbYmYe(ToXZi<Z(JR4 zuz8isB%0cwak8xC?Uh;<D0=_HPC|8A4gxt{h&*66T;KJ$a#A<r^SRZp>V&H03pvl@ zsMFokG?O{+p-NW7URZ{`*?5VO*=S&{j|giO`Vw-(W8YW&V8QW7JkBQ|!mn|g8$CR5 z(Sx6#uh^>F-tnRs+x*LZ*qs5tIv*p`O#-=^i}Cd|)}NGyGphD@`S{v`-FN7LZi2<H z7n#per7jdO9e;^%58W*8R|r2mbaA}O`cSE&F;G32?EWR<^7l&yxYszc>wPTo+271& zpv3S$r1+8Inip<!-}w3;x18z$z;fP@;G9JGeokv2PIGX5#1zrT)<E?nIM<|ee_388 z9Ug=Z*cpi%=%Bj)DZ-LGsc~g1Fgvkaoa)n#M=*-st;w3$iM08;EE+B1AHE=mTW{cO zYSG95nJCwtpSAK;8UC<d{JF(n(T{+VajRszw6x!WkUfssrt>{r&8j5RdQ7G=2~Lvh zD@<)Tq{m$3D-G{lgc{3Gs!1qEjSFm69Nal*&CLNiLYJHGI@e%v^Qbnqd;;SA4dAeC z0MRGjh6bSX!-`4Zhe2onzhB`}65^s55eY;go)6X(Ogo*o0oQXY0W2(ffbM}v5bz+@ z>~SbKfn(cuQdsWW?;=#!ToFPz9AwJavYb>QTkPh$+uybo?q`8cRR+ft3C?c^Fqbh! zmgr_`;PA07-qsu;vTcl8Zy8A^+=<W~qD925+c%AF@;g5LzT+lC0?|dMn$4Flo%ZCF zuAZDT+}=w6)}8Hw4&^XYyU=<_u~<jKu;#BDSDb(PleuL}*fLC&8yVurM9YvLc=}Zv z&ihPZ#0oCxfv(*eP`np8#eXV)QSmg7Aj#ePom+mgLq@>KYV6kX1HAT+r_k}ZYp=VC zyD#A5M(<IupBugxinY(h?mAU_##{AYbG{gf&D|h9MhA6s5}q8iA-%ln$o6QM8iv^~ zpXdm?7W1$tuz7t>CO^U-??<f0axD%}^(veT1c?kp>9V9#Mh2whM^^D!BJ*Iu*}MzO zBH1mn9YApF{=?ecTq_w13yWVkEXR<+zH~W5K!FgY9}FGRzcMEoeU|Z5clF=>X3KRo zi+b3X2<%-ynikE$rsoTeZ>kmuGm-y2%$($g`-0WP<|Juz!tVqJhFd?c9wm!SSmNsc zAz>j+rJTLn*dvG5on=|s;?1N^4#7{~X}gctr*EdoEh>aHs&i0!XekpfH=g|6bS-Zq z>q^%-Q)bI+(sz%i=P*x_trN~CHCn&xJB9*#d+;}VJ2kC)r_a%|1&Qz%u~E!$Bh#xZ zNi4O!t+|w@BbjvM^8_svYU?poi(-KAP!i=xcM7Dd`t2HP8p!4AhC5xuhsY^fT`2kB zrF-GUwo8At^Y%O-gbr<MldS-Be(4|%D1j1*{PGk5sy$pTJH~>$1Ik{>&5RI&bK!q@ za(<1K3H)4e2$93I&oU{jtsK!TJrdFu&WgO9idbar-D4b5WNTMsEu9Qj0Oqv<_;&8* zQp}64%1K&m1iJV8+-`O(>0<OX+!}6fegDv^G{=H7<A_RPp(NvsAnHU&@xj&Fl~ctS z^xPJO$m@<ah6q(uhM#ONO069CD#~mxaun`~1(%-W6&hKYXqIK{p88)5jt<trAe^(B zjSuFJ{TIR;D%<Ik$?3|DkffuVt5&kzP*J+LVyj8pQ$pgS8vDj$n~_>X%hl<lQrBf) zv5Q<;hgTy8Ps^E~>^lzs=x&SPM@GioX-K!;{Qgiu5*EnA|7t9p1(DB_t5;P5v#)u3 ziXJ`fnK8<ysnnXHDz0JQ=v5TuLW?OqQ)W|o#?pC}QfqAcx(52F&Wo?Ja-Q&DLYy`b zt{X&bUdeJvtCxRMo`d2=EBrah2>m^ktyR0e`o+apK)1y9ZLlmXSrp5TGR}$yUM*@Z zuSy{+E9<R5#EDK8{LK1d$W26;LCoZXOcLCrLwAfCECCboBLf6YAV{SGai}0R1Te3p zUEH_ypHslCpWT;4G2uM7VV6s18d^c}z5%~CQSvyv{AmUZ7&9q;qhvP+AL|>?Zrff- zvg^_;7j534i4|F{X}>M|Ng{jg6^`lyyvv?Zzc}`ni7#qCw68Y00pa+j6>|>%JNsAG zq{a(x<(BzoFXF#pPoZ$7m8_RrR!eFGtFIK;_u6eK|H{F`A-~=;OCrmk87w~um8tR- z5tT5oO>J?!N4CO$yI*Zw@K?)Z?BlokWhCTPZpgH^cP<b^;sWu8QeP$Xu{OH!a1;Wu zqO-Um{d3t{%^%|VZ@)U%tY8V(v0SOZv~mK47_<H;LEFU^EBEdA+k!Lc(Yh2zd8y|; z55o{xb}=mH+kCiU6yR!e+R#e)Wh2~@er#w>@_E<JJ=pdRbsqJgY)CJ3`;jilsS1zM zusPL@zvomr<Hy$6fOR_30yA#L*IpQ?Wgw5DAfKq=;@!`th%-Qrbt<W9+?jKM%b~L_ zugxf%2D0_~C0EQUWn#9w4UqNLN@Xufb|$|n4WU<=Z_*wIxbDv;-<UA%|2UnXVLLx6 zcJeG~?SX8R%5IpfNz~Oy-mQr!QJX0bcc!XNXI3l9s9mbN=Y}{ewlR36#}P*_P%DKP zq;OkUpw|3}Gv$0SwM%<u`0B#R0i{9vh5iLk4WhCs+YMd4P`7R&t)Phv1%;XemV+HD zMXPY9UvLC0{1BGyHUDldx_c$0xn06BEO9zMwkUw+xZG_iH7(;sjlA<*ZT0SvZG3Rs z44YM0YSSM32RG?>OPY#pQ4Oe-<x{KUFTI7R7kFe04b8CA@;Mp}K}3|@+PLCjz%3Sx z>!Pw~TqyjNboapUB74}99zsis0LdB7Y(eklvUfMLwEq@2F5esI?4wum?KJ~gs@d~} z?f0$_rt1LN6Q%3EN2?j0faj6_;ji6%4;`r>Dvd$`5JnF~4$q0=k)x83D{~UyMDH9o zyS2B$>EhRqmPx@i5dM7)ewPe>7Z3>L{}~&e6@Nb{WyuCh^2KL;V|QUqIts)jvSs_2 z51(&ze;uI!*__<hatz4kHsxk5UF~F^vgZ+kY;F#|4g{KC;*)xab<fU{lPaIH_BzY$ zYJ)*;r+lS*_T}<T50L52l1rI^n7B}+r1T{*<Q4N;|2t2%Xx{`^DJJJ+-BR0`JxWPk zS0#h*gmkG*z9QR-p(WYlL*z=gaXyYZJ%^e$vE(Y{NcYoex$MUM@OlDKcX46+B1yHw zdMSQ59$9zl?hJVH4FShQlmrp97^b!JUglhY%gUSF)z#IZ^Pb^MurQo+Tqc2oqjd(Y z#DD|O@o^vqa2$F`Xj6P-U&scj8;cn!zq=Gw*9G(hK3AoYZi`$_vRYKK3dq?KU;dS| z1zDgQ66~wQu<^*c++b<lUSIZB-F6)ZJ!$PdURa>gWU*u%E0<_M+alAb(lf@$z8gn% znJJH0<KrY*AIEultfAO;>%>QY)%q>IGRevbX$!EGk4xj)ubD~}%k+zol;X?w^Hj8z z^md7ev{CgY_tV<_BsQLvpL=LLs8eLHqMuEWD`OwBo%JPzgF}c@N@^sSBT}_bU6pOy z2Ntp6?i49MW{8JR0+CwC&;JriOCb1Uad;<^s2iavm7ByFPF8)Z*w!#uv@kE@b4Sc; z&*}%Sg%9Qvnhk%fUidbG_&m+GHUEX^qHA8vrrW6g&ntb7b6GQ|KSu`n%=2;xf0!hj zmhzm}7d04Uzgd`9dT(E&Gpfnc4%YuFcG4<AMEGSPd;S`;nHfU1?rOF{y|*FPs|D>* z@U>E75(p}CAFC&=a*T<;KgeFZScq2t^)^6fQ^5>foVdLv-EurmeU~2286q05*1G6t zimi&IO?yXLw5@oIt!Q&?vt|V+Y^&PmRrU*h*)Gv|JMY)a#!bsc9Nx<iYkku~(LKJW zmiCzzafxv3gSe^<>TzmY@@M0udkr0>_UsavWN2LkB8+Qmbopu1VjJtIO1}i@)z}^( z)Pxw0aNXmx%%CeD#o%(^Y=|AJUt=&+|Hh_?+^9HPNnieO^GmpbkPMSTLd?4smDRgt z<<Bznnw6jF;;Xh*eMT70U@xRYe=3GFD)}+r=s_<FxQzc$zsr7%4YSgno-5Vl=~W+a zZY}4G7CI<<nOmBMWwptgn3@vzsy`ke%f-Bmk5A|NAkE|N?N@AG)Z`TxKR)sKI@7Vn zQy(6qqaKcyhQb1LNs|PwmHTbZYN_1~`f(x}2F`ox4DCa?X1P`L&Mv5^sFTd~dQ?vB zSWNAzG__DA=dzhx!_M@b)N;&LfoioDUE*LZjes?Re5B}W@I}Mm9giBQG-$>sQk0p8 z>P}X+o{Ymne7*1%60SLRxq^vK50f6|!Q@g7h3JhDQ~A_KsN4`8Z=!H|hbbAP^M<|i zZcSrh?TfV-GY>sW=Mq&_ah-TRD@zk)$@@cDY-|e+;{o_ha~@NPlmUhuMmgcHMV9No z^f<}7>%0m^3+ODyGxuUjo8EF|-A`i1@8YyDS{G@h=iI9mDP^!sO5?4Qw|mKbacrcT zs+5gIYczDDZDb@Mci`YDT#HSZkeW{HbmEiqQaOhC#Zs6tF<ILVC``XMjS`UkG(RyR zEz)>(DJX4*WGnmJqNm;oD>ZGR2lb5bpJgJpc7BZ?TMvy+5gQk~S;jG=u^#1ETCC(w zTDO(ZLPGR`JucZAX3-m>;7=rW$yvp3xi_TV=+^!&FHP9WrxRVBZ*Qd8NSaKJHGZW= zsmsr>4o|~hx#xS}^?q7L(Q|nT(OV~|#cG~L<=P?kNXf;X86eF=BiqYPv{6=qDG{6H zD-}Lb5$p$JHzLV*=xq&BN)#JkUlLr%>VGF8_kn#`x?7h{pV^OqCTb#PXx`(>)J>BS z2BmSB!4Ez<{jzqQ)7kfQsA`r%ON&<`#RUEzE!+-`!ggy83ZLjpw4><PwH_INbMh^u z7L}UU$MdV+s&1Lkh<)s#nS8Rsf4@Ho6mdr<M$}#jOnr|s9jBz!YBFngCOg)F1-7(U z$374`O^hmC5eNz>T7M8{Mj$m#bs{<dtN&!^etw&g%j&x|ZIF2O=CxS<CjDYb&QV)l zb3F&KvChF9Yb!1(3F>!TyH?7CrF#t@B-)Rzj^AX`GHVd^w;0H{DFhduzh<KR&4DL6 zkpL5FShO|T%U9WpC=^&0q2PLC(B|7Z7CX<bwlZvhEz&(-S?m4so@$5dyNc3#%j!)j z=j~2@L#+52APvihji>052(RT7rCCka=Hf$ySAPJ~_&a#Cu3rIXRBGB`++@sI^wTi9 zXw>pk`*nBXSr}gsK`rS1p*+;j!m&Y6>oQ0!e^-wk#5y#}Fmu?_T&;=)Mkg6l9FUAj zLEL`AE{LmIvufxsHAAIc)V$85jC8$ig!}NOSbj#nNRL^H$fSO;c}`AfQ&d_++;atz z(W{fyQbVc^;fAXA-*6s5MZfs0dt2#pC@0q{1RbLEh*9rl1%LghGSEPM`*x=g89&rs z=P^Fy@#WF!*YVA*b|Md$gXVtN5z^}Olg^&&efv{y`8Hw&4e$h!A1J+Ae!|L<*{iD2 zHnSTXpD(kSnx$8W)3<9kUW<Xc@W*bI;rV5zv`?8~qwfJjADQ@|Q_S>f6arZxjjgeN zPI567z6;lNPB)fc#IgeeTD>BJPmx*^UsQ(Y7=<CkrngW@_-~58T%@hMkn_%um{ayr znj|mP;aAVd=g-Vt-rm2O{XK*7t?buZd{FTiZ`Bw5SH&5%3F4FPKlNIb-KbBaA>Btp z(e3%khr!}&EVJSDUuxYJ_FJoNPQHUrArz6$ySom%2`8IwX$bqp2AQ9`Em}njD;2i> zQ8E{<d3x&M($a8i(j<ruTG0z-+F|2(GZ4qCH2!#YnQ>`Rbe6?Zz>(oXa>$?V*#7d- z8e}^3&l1}#^DKV@E`H6x(ddb9xfM?LOLRvnvD~gkwRKHP<MdX0hWd)?Ae|N;nU>sA zl^)5W>hO(eWV*kku6u?XR2ap=_1btm*$lU~+2{smIK^$qn?C0Iue3r<rrC}iqF!G4 zT_%z2yxGG9$|R7^ZH{4W+rW-^e$FQ&W!<8fViTCYekzvG`;xl@;JTA@b8|DpeF!5J z0GcU7TiI&4VL<s(F$t)s%&>iu@FocDR}kjd&oT&uJMFV(3JvFKMXRVXJ`1ijF!_}Z z1P_$RGc@n{MnyW(4}437>*(k>I~Kol`RwotP%<g0sxkuA3${<-ZRMScj~=F`rf<cx zEiXMEpM2dF^%fjxY!L+{QKgul*q8>pLS&BZNj7hA*6`<C_EZ_#jmX#~pMKc+@kQVM zNs5D5{%XHsX^!Tdo4h4`RIaO;8*Y)4h$sC`S1sIiM^hEz_zb3Qh89FxN2sz5KS?RN zn?0e8knQ&ls7*Npl{^)SX%Ef@;gn!)uETXP$%`<k&MUVQk}x^NNT^@*^*w!T@lSMv zcZtoXb(O}=a6g$Q;=L_dYYqklb9hv{sW<9|ED~(~So(9aUoj-3#7wj4KuxWrLAt%g zKQFXQQS|X6wKk)H;Jj$(=|t9Snp!QIvAJ!oj~;HXQEh?ohSSYfH)^cbcOBcZ@K8}` z_Y(={7dyIiB#xn~SIF9!^(quAEx5(`YPO>Ypc}54rvrDyPbtZ|!kfjM3wN?IBV>Y4 zo>lUfCUTEfULlvVH%Q&SJF{<HVqaSt`oQT6&%KrB+KewqQn={$zBml1o5b)llUIdH zOQn=@(4}TM(vB7~>Ff80T^}?l4Op($QXN(l-TD#V+EsQ>DIWGbxcn&@`HcsYu0Tmh z@)WDW!ewuYITs~%(5h%KT4;DiC_djBPV!!A;;vYil1?zQ5JdJX*A#S;?E<!IxPN1k zdl(848uAUSGz^A0wriz>7R|rt;|#m$9O`PaVs7#3^cq=Jz!vkmTyGewyIE-z3(fK8 zXJ>})1_pks!wl|*++5>-QnqS3S}bTwmtC4AOHpcWQjxDqS~76GCLeB*n`2=dQaPrn zF}-CSU5Z|aBAXg6DpebjM4C+$N+RR;7G~x|@TOnuS2-+Jahe<LW7bb3J*M*W6x4F` zrZYTx9p+c{w4_uEO>Dj8M4c^0U(HL7W{E7^+%OAXH5D|8PV}QG4zAwLJF*(JsaXD~ z*d9Uc7~*BMpV*;OpcItE^X#I5+k|V=dYNHYTYz5Gt<tOpbLSV*vm;U-9wQ3EExJI7 z35~)aC`-q8)|k<-<FE<Q?VEyDO<uVHmxm1ziI43Cb41ZjL<@#%TvQDQi*TxO*R8N5 zJ?m|T0m;2;0+fHhp<U8|8eC4opToCs1GHQyHP;o2YkMvZs=;M|7i(kY>~dJ>H&k)B z7f%+sq#12p%GRYun3EkYxRj(?e7x*;Gv>#8E^UyiEbreAQo1Y1kG`&G-B3Z#vj6UA z)l+aLx=yxPdPxs&Kj_bLNn;(3_v0$Iy`R3=y{GuY?TQm=l@U#(dRF(Wp}*Ne7p1qH zg=469AYIAiV+uY)P2Fj@!EReeT|@HlkYDjT&9S4}yw4wK$o-h+vNLa*2vRWoM5XTf z)CHg9bk+$Q_rH<$TfeU{Uk3k>qg@(lSKRr&II|?#nriDvG`d6Eg7uw*L$cUc48=+> zH;Dx6qGsX8_zsUMpY?K|mIwWkmIoy*Y~B6=RAu59gN?}vIB@xLa>Iu8)+a5iK_-{s zxhlb_Oqk2%LBG{zYtgLfkVw5EHQIsDnja(^3;MY(nt2|sKj1Bqw|T8bY?!K57_Pr) zb7z~*A+NN<$JK(1nuxE`H!=Id>$@&_O|Okhik#PtgOli7BJ$M<`Q{k4_<Nn<!*cWM z$)x%^mB<><N)EsA;$}QWnE{=YHlv)Umo8&=T=mtem5lg#ATJW>hMt5I3e0%&E%0Pc z8%FDp9<7JT-NWY#Pj;Mg?(6Bf4QeOhn{&-&*^WQIzu)rLJEGe^VELRtH*Q`8OL;2L z5_wmF)eCa|HU#I=LkR9Q&)+}V3F2M}ehs;_@dpcVT0D@icYUWSt2WqNBT=wNS=c6k zr^ADPd;1A)_Ueh3!S)t9y->^1WURPgp|-X#o$;l*#;{!6P`-t&o?*9cUvb`o5h)jI zrG4~bgkglNn2qfu$aS<4yOuBmvJL5t4-fjj-cGGrcB?Sh5u1HXzLmQ@zZ+~Z{%YMv zC?E9x;)V<fk0p0s(9=`FEl5Ilqpy3&FNMEUJee^cJs9*UYI>eQJLX+6ee%-mQK_+5 zW#Fiqw>t*c8LibU*CKmBAhvW_!)epe;DDOHbxp5Aeoy3e-ACkTes|cNB`P+T=@$R| zP;Bq}0-39_?$oAoA^LrE+gf*b#IxuG_QB(eEsHnX4d#hFSSFh+n76wHRrxv-Io9$j z;NAq3>{iJ<k{9#47{&v-zD?L>-gkSv29uK-ueibOKtGq2<(_@~VO4+a);eQnU|`?G z*UZja0VwGKq#e7&C>aml_(<slSBeZ}e^_s5U{F_8r2X+is$zBTLXxeF-3ZfHY3;lC zvx#*<pOf7+k=5G@SQ%^A<2602;ZIl%!zZP`7C1dLfXHOkV`2G;yU!9-F8;&A#6H)% za=4WTM_=ov?i9fd6ud0@>yoRBL`c|H2Xo_dCL;tHc*^0N8ifwIk4X&d^YfwtIq<8u zCWk*G95qU;Q+JR<u%Y4s)eg5f*Zaaa&x;cU7Y0?@o0{bNzSlxsTH3D05^c^`a*hof z3&W6<1KH8lwD+^3u0GhZDcDFF>{6xVD_+TFT0*S9<GcYS<aD29sn{(UUVux}FoC>| zz2CA1_KH)7sf^Y+Mt*rZzr>xI(n#d!i^x6@i2%j)^$)$Pft2Gd@g;U^t+ln#%69M< z1@sf{)m0DEaG5MW6`VsN#+PlX-ke)FObrehj$#kZpK>rVqkWWEY&c#}&8Pn{LyE7I zA=Q7+%KX%wi@8~3ROn(UQ-S|pevfmQqHco1<w!FAsqN0C>dN(A9kr5WfnvtdIjE)X z*fLj_gCr(8_?c#<U3$2=mS8ztG1hGl?N>^xQ-BKsHSa6<kSo-**g&n>?avMR`(;wa zZI2#kqaG%TM%vR+4*T1!-RrX%kUAtH);MwZmY+Z&2K{q%IFxkg3kA2KU-<0b*P)&< z7rt;CpO!Y1@|X_ops!`%GA?hi;Qzp`Q>}{V<s<9MD0go<{$tWcmg=T%7n&Ee{Ol){ zJ^gl7l4x=`3B{q<b?Y|5UEZJ#pU!cT0Z6veA!y6xnP6QB2l)A}Anw&jX2FYeUf!g0 zJbpG`(L5gHzb-V_)IiDUUw!C0ZXG?z964hekj1V{SkWZ0<KFN5%+Gev+bhs=cJbu| z%D)$Ohp+t!e~si&UIArl#UVMr?%`Epjoz2zMS_o)bh@YLrt7kdN%|St?)&0_#<jfn zMZ6lJWI9wW#?l$IcK<YSN?~|d=@D!=sRD<$14d-3qkH#oK1Nl{yuI=^0PRETUcL_W zAQFjWnJqWB7TP82_Iv6)PH(@UhaaBbF@v{9afE}W2l@Ty4-aueuU+fmY|qiH(FCNP zOuM_gPpuz62eINe@yR48LRLp7kv{W-Mum;xFV(VIH;gO{cJ(3E^-Dy-L=-$Np^two z3k+}O&1p9aM^oZb@|lN}m<?Za(AmH)D}#D>1M>9kpbZP&o_XW;$9ZcGI(4?`iVvq1 zccH4-ZzU>ub#BQ1!i@<sxpcweRR3!+HJt{rHqFz@D;s)UqHu>8Yn@qpe!2HM6?4wy zHJvRVk&*52wj;$7#j%}L@&1MFXl;g0Sm)L-XY$=}UH6YVT2nM7{!}i*65qP5peyeZ z42e;Yn-0#nMNR8W$yG(iPU~CG2_R>P7;?x4uB5KVvHig@%7eCA%an@6WrgAhu+?83 zngs@=l7O5m?aDQlz<ZWc)f#F!>eqi99PW<0e68WpgxBWIO!n7UZWfgr<rUBclK)h; zYo<A^5FUCa^TTh#c9<w~RayqCeOgjdf~4%ZfW^+R=`@!I*;CI64OR3p_e@N%W7**S z{4SFNk-FcH0{zU5a}fJ&*Uh9dr3e*&2Y!l?nTCnG6TAsF=azcqx-g$2IEjs3Ru;9! z2T~u*Ixi(L?oL*f9UM4w(}X39p5&((D&d^JJri9&rQg(YuHV0m)*bOvx)KX1<O0B* ztWQC+cPn+Fpxpwhx|jLiV4M`?ATL8z--+JYQzpePtRI)N57v7#xe`%kt<YRI_5p8y zP~0i$lXNgmUpAbxE^sBKPp&h1cyOTJWuUHU)NvM$m(YvGR!df0?B*_p`q!-_D?Z@( zz%<92k<{gYB65$Fae%MyF3N|-yZ6>ck<_siPAXV<<jK%+o~RWNSJ2{KTP8T)WX{GF zh!Ve<#(LJRyYfiOh2Od-d&iD=I3-%wMaHuBVDY(aEls^2lX&^*31(rlnKl|UiFC1A zHWySI86gAncU~0M1L5;$Ot82c!{^<TZ{q-H$ff?TtO-}VKN8=Q!mWSzhC&UV6-3pr z=s5P00kV@S^tK#XVe8oowT*m&`%r8G|JvbC1>%e72|0UPfOV{4wMsm-ATRjEn`tt} zt_ssi%S=&XP19hFi`P2M{lSA1cOuWqb(&{xdD%Tb`lPCYt~`5J^jJfkZ`iG+rIWRd zt4*DpRexbfjW#yfV2yqt^+f5EdQiGF;KI4m&@v`kc1nK!))@ZeuwFSMnPBhTHz%xd zDoc&+BcNa$sLEUTd>_x?J5hd^Ox1cw+hYO}RG{mc$x4Z}eSNmQwwhX7#wxO~B1<Z( zj7PQ%<a&eE_8n#wywJn*`sJ4WV;|iHVey8@8GI$@?<O`g*3u;=+W}(7s(hy_(Oh;b zR2u!M`PE_$aKXb<OH+<ii;7dUM^u(pUeqBkN^WEEqQ-sm6#4RBpDhkgql>ztYP-eQ zkB8au%YC-9RF^tCvv5sJ6TP0fsT6m7YjL%R>QHZu%cnF&$SO;|-<c@p<0bz@-4Y;e zp_M^By3tz9fzalaGmM%v2@8OZsrS<_8|gGu@;NZGkdJQDn~q<OEJ)|t77y#ZsoJNl z0k|5h%oD3Nmdv<v3NfFyEtO%88a#GYDoZ-7;T7*#OU~NgcN(3|+v0f5fUNL6e9hND zg}n4Yy(>qfXx^LB@)Gfhp3~3w;@>aa<3A5zklwbXH$a+X+uS{yB-olV!QJeE&3hTt z=97f+A-_|kE^$$GhYSRZJ78~=XrO@a&vtr*dQ|gj4e|4|EM_oeX5|osZG1tgK}p4V z=w2`I`Fmex)jGNb>+G~RnOv-`r_JHF%%$IP|1nK={v)nOd0WsFTt|at(#+JL`ICe} zTaa)I2j>Z>u%K!_MhwM=j-1qLTM({IjfoZ2mQD@NP7}IKlaC&dmsD|j=kAq&jLU&s zRNmcs<VLK3Ky0wR?qRU>Leyz3ga2?&=*C6D2rG{xeVY-54Sn9WZGZl0R>hj_yy`kj zo$Pys_F>@`*Sd{;4OU_@JB*+0?j7hjhF0mharBHgHFbWAxw2-Q8ZJ^vHIWVK32H4V zgJy3Fvi9Wjf9~$ud<P)qH`_i-dLfe8YGuWvkC-{E16(T!7FgmFwi&u_-LJ}@vyNXr zYHQ#dQ=m*7nIJQg)9&QtPAsMs-aua2P!Mp~8p&H0VNr<|v?tbQbEFVrc!v48w6da@ zg|$XPSZl->F5t%ms|D(LSZh@A0azn8T-`@ypz(hv<bs-V7UJmgy29t`KwF`cK`D{? zd_wRXqdhVYw~myphjE8ek?Kp~KWa(pgk}P2u_c{|;naK)=B@5Jz}tH}<z5>pzhRT| z&HZ`C4@)ZNjqtgw!*4J4De(!P5KoZ|^;6*W2o>jL$S1xy&aJb;Z<((Wn;@l}%C`@^ zMPJx0PN&#$&DpB<iGJ#n{wR5jrj7-NMWAJN=WxbQt+bZ}$1%INgxsYs_O~w@39t*E zH+ucppyf%ZqN|jFPit%7nlzHs`9LEy9py_v#ag(nONXHet2&A8_7$1p(k&)($-D=E z*77kCCU85E_s0YKa<;bbRa8m|(psEu@yX7U;Q1R*qK*^|CgYCmy}247x&pezR{=<; z)cm?eS>?v94gRMFWi{LuZa-y0BjvdD?^_0xVrmv{U0s5`KFKw_C%FWBA|ON~KR&?Z z84H!7FX&v>4%`zIsvGZY%&8d5gZ<p`+hO^V%BULwh0h5*)_<R|M{oL>%j<qWge3lE zV!Px@Q<%ia;!|deb>ns?b6y<|^FTY23&x`v4wae2nVHwgg_J;5md?wE(a5M$35HF= zQfdBm64u`!7B`@%7XtDx$f)DAn^$3+`Epiv-sRey<M*7d;y|k|dS;0lnDBEPaq_Q$ z#Gg3bx9x5*JrI@*9elK#B?VZdnyuIOfV(9Im(vHqB5ZSX&6+;)yr-prk=&gRYe~X* zx3E|hVAC5CA)jcG3@<=MxAP4$R@wp-$R^W)wz4}#?}hYL@8dv9{)>7a2RVCfD(-l4 zc3fTha>MlnG8PkJj4g`JOGu=%Y-7P8K<c@5q(I*g=oE?5^IqIt(>oRVKnY6{(FhXC zvUoY#w=Q!~?04SN-L4gMeUSSa6Wq)i5ugIojr}CpK!6$N<L?HnV9QdHAlAmfebZwg zJw*79N~6OILH2ijp#jKPlGN7#qemRP-7uN1f-Pu5vA_h*AJ6<gMI&pfKc{1%U;qs8 zR5qUgadZZzLD^=c^|48d+{S`w!0x<Lsx<tyklxOp=P;BC@H3}Sj6$E$MCf@}cPyNH zDD}kttKCZ94E;j@u%4g0Ml<luW#HTnduWa{D2LYgx*t?USe`*&<pR_0`UB|ecUZwH zP-S?81Y)BPzk`ywVZA2~m+fN5%=00v!gpG@f@vfT6J+4L$6;i_ufD=>(N86dF2maZ zR+dc|S+4Jwo3W~We#GFXyY>tyuWK_FI(HE{QVF`3gU?Ikh;_Vk4A|GhuuI%`;PrRk zppJZal}0or8w?OTEbiRW*{AQ<`--I?&JL(8E%6y%-qrXEk6~A$Fgy<^e|@w*#-O8t z7I-VL`frI8Ox{iaCEV~}DM2-Ad<gY9tLx4Gj)z0l2TqNf4l=gL2ZRJKZy;l{AJ1C5 zmsdrYf<98Q4?sXIzZZ~wu+vu)jV`u3h#OGAeMlm^68R!n&&3>Ow&>Osq2jXe0WYn2 zDD4$-Ud&V3GJ@J_yMv~|E*GAlr-yY$(=vwv!eO4>-JBkgT_A+QS~NHwcnqM@^FMhQ z6{{e&SKm?Gq2PWMAfG6t3d*>e9#l+_j==;Fo3~++wm>>5Lfq?O`oznuZb?rVDYE$j z=wO5Kf%v7P*Uh1GKETZ#zh=hX76n}F>u1Y{%Ra&~w<c_jY{6lDHV*!wvLkTGq8#sD z)r$eg`uhYo`c5x4yKeFEmW3|@$uvg(DJT6kywu`!x5FL$m#`m!6KjFzJ+Zs>?{Kj5 zA>Ih&`kGC5!vF9Rs9`SwV@%gExC9M@8EV9ku^!o4cEnMbk*O9v%C_`J7^kAhZRZR= z-muq=-fBXIn+xC<i`9lwvG=37HXMtU4CwC0-VgQQjK5u^wO;VnP>0Jvgo@C@NPG<8 zuu{$-1I=UHdZhtv9E;hHaGW05Wm4#+9iXOtQRX3&e9Y~$I{HxW4HAI#1n^69@`Nj` zTRgdeo!~Zxarn?PYb0fqghF~ER0<a^%`&z3r|~76XNm~plmM8y*tmfwp5UTx89w<Q zBGO+@F-mny`flR1Pif+L&y`=Da5i8dwg}UIUa{?_20Onf$}on-?jQ6#HEAFCaoL}g zBdpP%ti9ZN?(KO`ZTCwd*n9K;=zhyT0{b2IF~*#_`ZHsDQOFpmSY9fbM}pIB!+s^# z7hQ1%&)@U}@O&i_eE8*0QR~qCt*`|XEy}fLS}$9p!SUXbw=n&&WQ2uN1C+*3Q)Tdf zSzuw;yT;%xGXtop9Q)|jI!r#wh-LWIStpOhtS7~SYNyas^4X=dhv4M0JPgbvUU~~) zb)lWM?&WhWn+;%-+{;OR*mqMizrntKw!96jJp%!<qDZg@y8Xoh*jud=tmP1n@CF9M z@gL24%R5hUkP*aL%U0e%CCQKk<`ap@iKM2<g|M@lq-^f~6bm+rkivf{Y4UWVTmj5q zoee%Dc)22DfyDwDLd%`2=m}uAlLQgK*)U7}#72)aOFmU{nb=Vq1h~mcoGmueo@gG& zoNXB}N1#XjwfXF#V-h^5uMz#qK1ZClzYxsXE#`qW$@SRCrG9BCT5Rpv=~2lA;JvZ| z;LH7>h-SAtxyJXzekSVz@T%am^hveZ2rNf(J<sxaNPxqqQBF%IKsEvViFwj?Lt=dj z@OW6)cRLS(6u`&6{%?6gY?!-+-K42cJYa7s=D<;#@HvA!+@Ym-#B{y`d#D1G`_i4z z@^QwlZu=Uu<cvCR4W6Ct)~T~dDv#_nHd!yzW_w_@u{b-#BGtTYH-Ls>FF*L4OI@}1 z04%RzIZ5!rWvq?a6cC%xk>&NhVmKy&`!L!?JW3e1`g4VTq9QRcKdYY5GY2)bbhPH_ z<f%s;^16}J!`1l&y9N2@_7e98aYV)Hj=+rBQa%Sj0O>)$((JY;?|$((S%>Z9pM!Ip zRZMy!`IMp>#PcI?l%eNeUi#Yl{rK89Fd<YSYp|U_i#$&X>>kcX@Pjpo|7EbRGn_3i zf!Fc95J+=EyKWKFaje|~Gjsp;HN3`k=ed;UdCyk~VfPxVjQSqWtu=HLci&whX7HCi z+pX?7^7LnK)t^zQ2<L@kw*)&uvvfNdu?P<3Z%+qx+_SGR>Y@RIOTN#r@r-Zt!B3>p zSx8I+_HW=y;l%YBXeafWYuK4*Sl`^nj%JC1?!b?8pgZu6&HZ4meY+dG1=L?rKk^Cx zFZSL$D(bA;7R87dKtVwz83@uO0m;cg&Kb#)M4*aP<fx5;WC@a!<Rm3I7A2{WoMQo{ zq=F(zEGW|3MSp$Ich0%*oHyQmW4v+S`~K^ue{}s=wfEd}%{ABBzxVg&dp(CF{h()v z5q-ClXL1Zqk}WIy3_tp6n|G(4!Q%4BQaaF>cQqb&|N0B!;ShM~-wp@XZ{QI4Up^c@ zk)7c?3;egUG0tq$;?XR3O&EP+-DTwC?&)crM$3<(_fZ&SOYlJYgkuUZB&UW=(tSXj zh)jvNsli@`cZ$PyAJ<x`gf<b=axuUf;xvdY9lKz0W*dK+4<}i-CK7+Cvrj=MTSOWl z{wa9j6OnriKXpl&3^zI%O;Y`cAy|Iv!|LmDde(yNwr_id7*SvjKH9Vr$E8VnQ5`LR z*S?}ebhSHYhsDf0^s!rh*P?iL8{oTxq|{%8b6gA?DEdxXa+1hAMV}esCmkvOCZeKe zo`at^fljofb5nc~6M&`F&Z~kGwEl%PI5=T#Gz+OU6hWu<K8Yvql`h5K0BiV8ZkFQ4 zTEdh5J;Lv@7CwdA^X(Z?#AqFFxyx9`+|!A<I2^tV7U+K>kHnb$*ZhQQ=T8o|^X{s! zHjy+YN)p2G8LvZP5vjfxwEAt3AVu!|3N|_3+dSL?Auu6b5#1;}N92e^#4#~=3L@(H zN*wnWAdM$2nvfRjzdGfG?9eQZK)?&n<#=9dx&A8p!@>POVU0voTo4Aj2?x+kP6d>i zT5Ndq_y44)jMFWqdJI(pAm#KU28mvw8N^1k;W56;NAA?izWL?8#q;l>BxEGrLd-_N zZoOGSsL{YQ=2Z0oW;yE5r_oAl<5S2yUy|`8&()BX$ft?zY5$b76Jz#YQwryN8jG5T z-@Ot=NA{V(Q4J>_o5h0i8`h@>Nlp~I&XDOIZnni?(}<WX@(L4VLjQAX>o3HaI7^J^ zxn=dg0I7Fc>O{n0`0S}-Wn}%(QkZTVNUOsy?gfw}aZFO&01Y?*6$N_tf2q9crvS~G zAV}9o#odz6|Am&|U*Cc=JnC^ZwrAlfFd-1BfZaYZNb72ML2M>BKGayPy~rTeg+EbT zyH9oYHBd6%pxBl)>b+Q$pEO7ua%_Y~aXl-|JB`+fSgQJ6=8w0spH<9?fc5&98=8Ex z#tM8ne=)u(n3YMK*TRaab8qtP55!I94giuXI}ubUSMQ%mS47<Fq(3t~I9bxe8Uzkm zm+uS!f3-!{VaF~{Pc!i9nK;P?u@fRDkDfVDImD5qfh|ZxoKb49L*WcBK|}B<Anmdc zM&A`u#}i$eiwd-Coxjp`JKp9qoaH&q3qJl+UT`+#|AD;VQo{Ae55XGdQ<0CGnc_P= z)UAT7Vw}mMq?u2nh201pc=W935wZ6{o){8hH!bW_uQ=#xto<vyOcgz-o#eBk0H*$y zN5qq~W%kg)jcu5TE5@3FjKm0cL2vES@6?5G7YTXdfqiawZy)s1dZcZ^&&{0ib$Qx! z3wgLPzmEkWK$4FU1=2mR1&N4*tOUo0?+#E-xryihewkoDlH9Q3JCSxi)t!*jBPT^@ zTvXb*{_*~ImMi!d=l_iYQN0AG`~UkC2#BQr`%oadmCgSk1{AhD-UFfjFA|*p(=+UQ zZv6k}AgHD9nVzmLtGL(h_TWdZN1uUklKp=<3IEq-`=8|-iS`aEe|rJ`NmBY>&OQFO z+Iasz&OQEvKjfdP+r)pAi+p=(@d^%3xA|uq$$xl^XfFB0dxj_lk};7e>D|(z_)kWK ze;82y@tYd=Pg&ZlKNhESJDzdlyCN_BH@^|};IsoP=B5ko-G8#R{QLJ=BO}_EzJh$# zYxUlZ|KWZ4_YeJD&%dd9dYpZq5ss6(2AVR+`1>yXH-D<y^)siA`#-P4sQ#nD=0AMM zBeJu^RQrWI$xF)1nK%Ca(Esq%-?8}~_4YLRiB(gq5F$k=X!Dg{`EOpoh3XrzvJ{M! zC;RW-y5PJLNJ;>u{ifw2SNC6k@o%5Xf~P^A!4b^^I=6V$nWp}J$$v8w{qtXuu1I<M zBDkm*?^Ry>&!73nPt{mXU!*t+_y)981pn(7Sv33mJ)SlG>pei}`Csw)cRS)=@%Z<9 z?O*ZuS3Lf!lk{Kf<6rCJU+aTNg#PdH4+n);!v)$J>gxA_1ChQ1YG)Ultr*t<YX25} z>CXnrtW=j>?Z&=6`^R*!s}`=#<1rO>a%7X=K>O~}U~Yu-@(5>a^T9fj8{vf~@6grJ z(XX1;YSS-K)>{s6Z!iU>#|#daLmh4HI~6i*2N}{K7NC|r05_4$^lEx8z@gmcuYFD- z>)Ub-q@(oHhS~$UutZal<LBhy_H!~w*Uv`(FkA$6sj0Q*NbP-Q2mhr##f*FbSZ5A| z5(+a4By%%rD>AI%-5ad3$NW^C)MwI_RKimC4qZinAxN)|@|J0gPHuT7ED9B&b0A+< zH$2k98&N3K%hc8$FIq3C<_K$@nT0*D8OCy(Fch_WZ7)Vv{h@g@SMWU`Q+eEsu)1Ze zxzO=^blG!BB&V`+q;`C4_v?=lxCvu@+46y^?7C8+E}T3ypAeq4mGP+)WsHvD%;IcV zFR7p>`aN&4>-+%aVUcqA@uSibdI3wHEq1L20_hMd6_$d%{P?#-l2s}A9Q6FGuO_;| zdXS~x18ysC^de`~zubd-@8^iN<!L3-Wmx?=a**j&?Xj77YBIG_n(Td;4}J-QL;^Fa zfnd|?Zc}1}QtcmQ*%!5jXeKV>uWB0PAWGQ`=q}*hl6IAk&Ja?w8k~JFp&_PNTu?se zpck~GHdiNED$b{@#8SXA<l)a_yTJzjCr{3A8Nr|X1PN4j<rI0@w8}rRR7uVg>KS)S zBG^aY_9FfqQYtk$^tuCa+b=V$2hve{Kc@aBRjmAqdAX^z4L&OOSB^}y&<9@KsW(OX z7+KNa1lJ*(!JYgt-$^wEo#1>ZS$1h)iTiO5Pw))$IAT5K05;T;!&>6kk5WO$D4U6? z1>QN$!N4rW#2eW$SI!D7-wJ!jZCL&IqmS*?<gI({Z+;AcUx=;fuTmbjklQP4b@pMb zRP&LxM;^KUmiXfPCaLrFl!fL<&b4fv5odCyVLMG9w`}28A|r<DADqMmqVAek?o>0_ z=D?mFfY?=HvbCncV>i-D?u-gpDhB034Im3|aSF4I%>mcg-*6T{`G%{YdT8G`eGe*3 zL1oRDqjjczQfW4-?9*;ML0|b$Ykv;C*qZ~nf5chgrG$N(D%rpF;jT#^U)P7^rE-sk zi5O1)oXS<6JLnbR@@yO9>7k1s_^GMZPd~8R%OH_idEqG~XO%~TYqr%p>%%ZakbG#< zW?u7YX?(M<!lAEF>88A3@^yF6p)?PsPh25iUDgIF665|4SqtRRuI)n;e~zkY&%*k{ z&CbR~^zVTd;WkFU`cOJy-bw_YRZmPCgO?ID$II(6!{_9wSXE-o!-aFEelaDLmi(z$ z^p<N3SWb-lB?`7QxP45;=RUodJIA>9G-;$Kflv1M5GxtNGJl!-+OF^6EMwd`a-r{w z7e>KmM=Fm~Hs3|lDPQ6>M_u(;{#vEq_U+=;2w+8d>(`*@k3b&IbNjzNkT_U*2)aNW zia2Ov1!f!N9D;7~rgQ?Mb@3ri7ukXKte~n}tF;Y8l$q)+x<BHn_ee75ivvc&3;Sry z@rX@CxrVrq=S&c52WTXqMO%XZi>3L6xR+<5H*(4JeYZ0iTPqEr18&HJDe}&Q9?q{V zIS|OKLeX0?{I_=QhP{kQ--FeRp7*~8N_<;x$o}A}TQM8rORBNd9FcP;Bfd-R>mmN$ zXjO^v3BuY`U1yej^w~9*Aa|%UM6>d}gTA2jC<`{t&-ZaGH)4Ar8BZg+uIy6O1ntmw zt8B6BEAhrpxpfj}iS2_SObKN!EQEHK%xkhqrOW|+wZe{FJK{?yTKlUbxPHaa$F;sI z!-cv<N<<hE&~YH6QOmJ!*v}z$P4w;;pTPZ&6d61hzX&YL?l3DQ@U|`{*qFni9kGuG z#&X6d$gg=C`tHv+mi_$4P?467Z$y9r@o+eE?TxX^ur{yj%F6@^AJ4kj<5|X&ODNBV z<z!e-kg~7!mQp2~LDNg~Bx)<Pi^L@Gg>AM_sg~y}3Z|qu56CwLL{xVMSn8InI(8}S z;7?0v*#*)Q!{e96ijXfOSaXdAvFZ{FqO0Ya-xvfvNJ~9bCSsJs1CkOiuhQCXH0_uZ zQol&Fg4r2W%3>maxNOd~6PxE;#;(&Eyw<GzJ$+C!m}6gCvK?z+M>dn!uejRTFU!cu z&(B|y^0>lMKT>)8Wh1lBy<+>8;3(breC1K>BD89XdJmB?N-nx`kLa~mpYZ?yw*$~3 zRiTzYkryoHaE6(~D)~@^kOB2-g7UcY$Lf6k@Vd$eJ(zfSwtz?(+j4-Ch{nuImXe76 zfb9G!#lV0h{m)AmXbkUpzL^I;R%=!*KlpMhu?M$X-{`1Pmcb)SeSkda6u7P{$OZ>N z$(YLmdG64+v_5h^$yhV*a<TTF0bRVlkQb2Du+#9rc_)-q+|A{Bk`a~y!ki)3S*r(x zldB|P;O5TLMW&Q8J$OBsUbqPsN`AM;_0^nIMWNr{&xP%(Pl)kBI$S9yg_Epp2BTkg zPAq~`%WA>Ctf6-ei#a)V+s8_tu$^|Ls!C2>^6##$WV2<em%5VBbEao0EBEPO$$}?$ z%+i=#L}*f?^2%yiuLNx}V^H1hgf0A@%BS_x5)T2(*$HhNQZVJ5e2WzXRiQktVKu3K zptSJR{R9~QxIs^r)w13n;z?q5lhr?!B7DzJ&+!gdjet!e<(ePIGk(r^rMjGmx*Art zgA!CGg+Xb5#3|7p0cNmd!WPG$aITj1u#uDz0y~!4Qp}^D0N<Qhoz<3i1sg4Ub@a`T zv;hB<Od?qX9zmq<Z!jb|g7xpiYsb{m{f?>U!nl}8-Avg%u4B}+lpyR2pFGcLTLzzX zxqqe8UjV4V`g?m&m9&Qzaq-&So8C318#AqqCwPqCiGVzbef6)43H-J?zeT62v*WmQ znwGsV2gZTqj9>A@ovBt2?1&jb=lE}=UmO}Ted2-}8sU~5i&3W6xO~>Gc8SGfXIR%i zQ8w)EEhdwzRENrcjZR}cv|F33*(CZ9UuCsB1yC?D9C9cbX33LKh%Ba)8@$OhPby`5 zC10U%g!{%aHQ=v@yREh+a{S~>CQE_PYWZMRLxY4B?a)%5-!`u@$(!Z@XR)lykFq<U z3#BX%hR@M>&J!|zfp2$z%;G@~N5~xtwl50h`bitP+)=gpQry=vY&Dd`C$k0QchZxn zhhJmsATPm|yZJG*LkWc`wd@3dvo8+`nE^JfE=~aF*Vr4+vP@Qt!x6iQhrcNN-c;}q zlu{)9d~G9$w*B^9w0$q%@Y6N{m|g<A7h<R(@0{cQ=6vIcGCAn|)TBqp@-N!7Q+v!s z%KrI15DfkxBMC{t3y6RfUHbGIZBDO@Pg*~G(>aFZv5I6(%eX^1o9$Rd6eo3?;pnd9 z!FcbV{0%*%Mze)sWSFnpBmoV%uG<xmB$sIA@u&|reUFc7H(f@JXkxlPlc@Q_6DPH~ zjmj4Fc|0$nnC{S5A`lNCkid(F+rJ|Tq}#lvcIKjxj=NX$qc}4HZ~NivFzqYjWm~`j zNx{1q_;|a+Qn3ddF67ZGV`9+&B004D16s#jzs`h<u6?pf^<c?U_6e{7eaSh;-_D%7 z_~VXMa{n(<9>`1ATWGuV#3)X)(}`H6Hd&@Ap>LP;!*<-Ag86+ImJae*xXCf^wwnzJ zI~GToafG^tjWBzr-Q;qQ92VJTW#tdMVHNJb2qhl9eLOzEOFM5AxDH&H^bFtoX_cV~ z(D5d+y_&%o{|3f<j3TnM*imce^K$RB`)pYHFGfON;2bRNz%cL>^n#T2B<C*2*$fDp zNq^YtcF6^>Cr%^MvlD{xTsn^bt%xRofwO@fg2?@D^1s*_U||FB?wFd&_d@EMgpXSo z7M@)th~5}qQfd33gRVK98#E{g$)g(rb$+cmLZ33nobZjql`-?0B5hrq*flr)0LRNm zA5DtSzs0GZ0DPf&^2lpFk0oRz!qBxG`Q!B}G?UToeN>!<nL&oec=OA8awW5yG{)|x z-&pVI8p`3t+I;$k7slUcR_;w7<TtkDxRv{<LkIM%Qii|yl#~n#SRP$}LG;(W0OjmZ zYUFvy2s^N`MlQpV4Lf2V*D{BE1b%sZnsUR4?~%yL#&z>G=M<R)x5`(QEYW|p9A+#y z=p19Whf`>tz+AgUSixj1%y~%xuz&c9p&b+WTIaQI3Fndr<z?*!%)94}A0?GUlHU=m zNR$Z4^u*;^Is*F}Bvn~YuzVoWOoTM*WA9j~ZBpsdCr8b~CAz*5F)(V*Y1GK=!nHvk zjJW6arJkXHlat*lBz?<Ay$I^!x@z&Ct>KEaK7iHNw`IHK2Em70R6iG52@uNI3_NdM zu~(m@>zl(Qo;T#)DY2OW4MdmVfKti0PPvSd)4n2No`E}D5!+K;(w*A8?P6)>pYin( z)3iD9{c}`VeaIYPPYu*oYVIXrZFRk=TUs%|4|y!M7)p66S+9g9cK5#~_xv36U`eLn z{F9~02*1PGd+~We6-^vVgwG?A#~TsvRvzc4+3g}{g4zE}^O<KiAtT4&vQ2W4n;q=_ zBy&BY>l}dgL3#uVuX5%ljb}bnK$uY7Us~taJV^CgyK{&xhZMZkC=i=0%AkD@J_00N z=j0PVs;8tShJs$so-4k)amYh37ivQ~LC7&9*?lIcG3SA}p)(+Q7bSJE6QCC^xe6Sx zm263riCTr%&arr^9U5Q=u|p#x7nAIpn>qGTa2Bm<a0(fqUjz4AKz6sg+%2`spV2+@ zAa^uj@H^c29-b!w;iirK5Kf8~*nectcdR8_YYp7RVVnICzFHChQZ6d%Bo)J6KzG5w zOLkH^ho{rUW8cczmi>)*c%i5?r(PH6L^+$BRskU%(4J54nMN)7svsTIgMKFX35U^& z4-7bsgN$W{se1+TulW1dnm$~Srcknt%Jh!wo-Acs4l&|!QpRrnV?rUBlr$9;+q%i& z3{7KigygaNxMLgrmOz_K8_1QGkZ>>l>M!zD+x9LE%b(fLyrSF!dGEx<q|%15TkLpX zT&1S(C9u|)QjsL$SWOHdLV*5Pt~aa+nifN^2r?~-#`uy6O@7>8NU{(16_<zq7U$D7 zfvi+0>zPajN7i}n*d*|n%Y0H(!JIU+>z;k;LpuEaVXf;Bf0psxu0E@;P6JG55?=~p zEQzG>^iQO=5e0KrN}ihhvIH?kxsJu`v=-m4Nqni&7Q0CyIJ7)rF#2<RwAb%=>*p*D zE?3>a95znG%Zc(YF&&8$u0~~r;{A#~reI9h<>Rlr^P8RA6vrt;2O2f#U5x=h9%#vF z=TE>B{PTM+zP~>Dyz5z?k?}xC?JMo^48*k@Vl|kpj4=j{KldcE)+O#@7XiWTGdj{Z zFgYQN{>0Ssh=z(<mVMKMjm4}&x<ZzST(JVWmHLG-Yw$f+;^O*`hY{t}Hs+m>4t>Fv zt!n~4SD>{h)!~LWV%qS(ThZ>7<gvVK$46cua>)_C=e8RHJ`Z&)!UVC`1O&u!e4!HD znT(%A=3_K1lAx9CXd&Wr0(b7(*_4>7BtH^P8QZfDq5mt3b$T*6Y|$}=!o(NuoD#%v zEvG0YJ?gp$bpuGp0BVg{w#i7jX67cC&5QdI<{+MTJkDc|Iv+Mf0b4rOM39SbtBrfD zBen#lU;Ee;FuG+$MO)Yylrra(1oGfiOZrt$KjCg>-%%Fm`wL$TT-eU6sf_C`>(42I ziYk1m&sXODn<-wtT4zHG<eWPKOe8A>=2=<<XqoXo^5g*d^9Ai}TLi_fdO?ITG-?gp zII`vW!OGQXhkGsI1_F}<$^XWYMGyY^po*ff2Cy6k@ESF_eLI=HpB_%K!+m(<|3b{z z%bm|BO!-L5eS4N}KChYef}j#R5o(p@4?TF-Y@Sq9d0x~!nXBDaY6gA#oKtmf6cTc@ zC`?)B#F$u8>Dn7+?)KN@H);P$k)v~GDrE+R)2(v0Cqa8?SZa_q<7bw+VVFN7n6EPb zt(m+NeTE2~E{Yr;);V6^qi@IM5JrpvZAlGA-&OYcn&Vqw__eA(O<AuhYasHq2&q=> zTC=WKmQ~D7QK_+KxDNiJwUTh6=6zjTXewO5a`66avCbe7Nu8a|Z2U{JX(<0np8xs} z!s(oUEEs<3-l`}R--NOV|Lq01qBLvo=tcE;1B_(U|2-{*klcp5X7A+HjmL&Fof^mn zP1oyn$UTK+!@sM@-RmkSHo0+t5^U(tAwA7pxrJAdC4--C8QsM)J9zI96RkMCa+ zlYt|TR_!;_P7Yax9I}#3wg=!*ON!5WQ^oz`N*&DM7deKlZyx>8a*jgmUW5c8FO)%C zUqyUJtFScXdL1$6y}W0^I;<f(0djd-XL;dA6jMUE&t#7V4#7-3gSx^Ve&yu6xXq#F z+n!7Jxs48&bDWhIPpM`~<iWUA8vXgsGK!$Ugkcwmv2(xlv*&rgFGo9CN6{-^Ojij4 zl+ER;?H%!tPi%%Bv9AftekpUTO2AK4Ir#gt*!RD(lN|+0-yERoSA*%?f4*xRwSv5) z=4BAM;+IrYWU?><ziaaycevF{LGJJ&j>TUaT}&p|+`=_pY1BCZa2KuT9=KY5$8VqD z+R0h<!w*a|dZpwyLzVW1GZu=5F2pL2_n-{Xw$0*neww)|pFti_Sy6{u>?aAl2x-QC zJ1)JAw&SA^edsn=a|q70hwdy36SwJo)%gh(^=8nzZuiB|$!0K8&I=Hf$}I*ogXG;N z9!AcD6p}tINqyPk5<3yN^H&>9fd;p1y{7jym4~W+1kF$Bb3gql$VZm?6)|z!2<v|& zpBIobK5WQ_%s|J?YyiqOGm^?AdAqV0-OS~-zWZ>Kz#%ElU!RYZDoTj*5A2EC<R7%? z8zWf_cX!6$q#O90xtsh$h2&$(Qhc4Aey}gUnj%(_B#)MSD6X%+jpjM<oQf>i*`UGf z!|8iVB@H2|Ad!at;j{Q9@NC)yAm{Br9i+I>c4gFm;9b0|%0p@<Ag830OFx%Uf^5#f z&$<aq+&Iq$oAxd&Z&*CB+!7mL@*^0-`ks-tw}FFx<l^GH4~)mZ0~-USRfK+>A2$u8 z7x7lX)n&&D1`Q{~C<nZ+({I}O6N*t9nHjfzJ{*Qp5e-(g7JV|3yRMgGnOVZ&1_-7_ z^Rol$1``>oUTn18tY(*GCuGI=*ZIRq>p{VzM=`!W?j12~n;>PV4)f`!AhqezlKgp# zMW)R!)gTu@3?}be*sX-I(&wwGX_2<9!yu1mm2O+>`|`q{f?o!Hg{%6WdpLv7c7G!& z=T1`&cI3k~SQs|<7Aww1U~0(E_Ml6f(|m9XO|Q8oa4Z8+Y;&ECu`D^b4P6LkI6oRO zogfBVO*P9_7tu|ApnLZFW1ez?Wv+74NX~}eUNfT<6;6iYGEJGvD8g-?V3+k%395Lr zv{yW|CbcG;$FtkuM#@%yU8(soq3&_xqAME8YI3|8Xa3>3Urz)O3<D2nTuyRP^AJ4u zM3E}A1NBGR+58)ifkXa%G|6LrX0?(VXOfN#zF?jm-N40N;uiNxZ!kqP{QkgA6pJVi zlkny4x5iekd^74SP2){P#y)aZjq@GSrFym`VRv*}4J_26k{Op*0AdAtmRk5KI8CW2 z9BODfTp?q-buk@iu@G2=L9YW&Vph9Qr(*5hrOpy8zww{|EPZS*l$g%bVmb%7Ohrhy zlS>*hm$R|i89`hwX*m;MQrAHTkyuZdg0Zx<f>Y=0M7i`L5;sOQavF3rB|nd}8#};` zb6~GpgKs^fbePJGMKDSdN+hO|^7bD=X0FsY@!lj9n@w*Guvv>#Mo+-xd_Psz3RXPp zue%(EKjp>Qe2G_Vg8(s}2oa{q!Y36Yn#M}oz1fOJvt8nr?%dyHiH)6B$mTz7i---b z42F=BB7)EVST*|dJHS9IkNx>LH2uwio<Lg1wlG>&ll=}|eZG@GvNM@)otS%w(-fr3 zc5O7+uIWqQCt*%#Xw`*4Sef9vr7yNd79YrzfcPOJZJn-ju5w)dsGQq$MtaIHt3AyQ zu``k$Qrj<9Tf%G+o1(^gwQB`jZQulEjfRAULpxjr)^MMYE2W)IEcus^69qmUDt3;8 z%7X2M@P@lgO+z&7M;*q*B!@)Xs_|DKBUj>&9|74*?tRUxDXXO^ow|mO(%*tq=!FaT zlr4B1ety5_sI`0R=(0}yXLL+9!^9&CF=y&yfmv?nk-%B~wi4eIgA}}}S^pbk89=GY z0j84qt|{lk`J~Q72X%`6rTCK`w}wH~f)(18C@xl(g>JkNg;tw*tyVmXnp}Zve(=sD z%g~bHshoPv0A5~T>loyWRP<=TB&z6u<_E34%g}LK*vaDe;c($?bTO>+wV1QO+Jy1c zOHetvrf1}LwDWZt`^FD~6|WTcee$M>PdpDk+AWBoV+!k#xcaIf&CuKk<FAw!Ie#p6 zt-`d)u=9AYO_F?s%k*qio<MU&J&Vi<&~q6NgYnsivtT}g69v4J8!2`hKfW$kYpm<{ z&Q6XT*+4x_MY!>VhY%^tFs`q=%Qs9caD=6GXX`ehT;DA3bh?SGY3t@DI|VP2-U0V; zAY92v%F^=35-Mv)vH7K=%S*Xw)XMtFfFHZ(DYw=63YoV@F+bxaIYKf#?*RMCMXXH; zdSLH&VDOi0T!B+urw0=<dbmArZ8d21Ebk7KxqqnoLF|FcbLg2Qd-v&WHz8!lop%<s z;E_c;OT($pltviJwfOzB@$0odmkiWQ)4A1O0jtkbqfIkNsZO33XI*bsldp<>PIz5Q zO)>hu)_5pl?R~=&%j}YfH$~jFWZD=+lbdgJDNb`)DefBSY7#2`b2f`8qX6XPr}$!^ z+h7x~r<ol`zA_)&nKClZNu<-7eNn(y!FHFs!{wJ`Z}$``2U~D|>E#Up@iGeLx$C~t zM$i(LTbI+~2n~K<_VWb+eZiap@sTS@sb0xwF<Jgy`Q%3ltd;pEBfANOUz>BVqmgWG zntl%}nSCYVONS^9mwctsKA|6q28T%*tFR?y4Yc_(POWTCJF*nNmPk2?8eP9nQ2#Qn z5FWd~g(W4++`)U^DpR4ryL_Ili!9}-;8aJgn1)s{Ix;Jn--IKNYY&g{NQ&K$1!3xv zq2bbD*Q6!0u6H~<PEI3IQ0Eh~H-pfTTp$jjZX#79-h!O{A+a~k`d#AerLmPSLlJKR z7~i%Z_vLhuMW4e>vrNslc<Iv}b*(EyJlzG_T{$~_75M1K_R^Z~x<vG(xJ|QV%0|S3 z8o^V$>R$oLWF&g#t;^qElfQu`4+en_!X_4mpHAE{t7G3*-ST6qJgBiDg$3dobur7y z=e&$(`JsHIO?yh!J?-JWi@p4I(e!D*l$?CU$GXlaKhHeYn)34?P8`U8qSTQsIaGG_ zm+!@yiyN?~it%e_sw%p{5c)k^HcgYl{4|AS3+`%Rzd_;0umz=lifh=3Lb%mCX9}}z zJvAloFYL*jp*BC9A#JO|Lp3**DGh$4HWx=RGId~vE=sSnJ()J&BDd2V@kYhHmLC*8 z&D1O6<RQYz+}ZNO#o9R=RSrJ+v(bnk*U-+I@>9#3CGT0GMQxVgEZTg^z42aOYPy?} zOIgtt;PM)%1!8X|WD}&*%yLrBV5sdJG>}21zq^l+QPE5;`h$!$8I)$?z*y}%Rl?3P z>tL>G97vEQ<x*oid1_yG-|c^!W9+#n9epuAw!0#qMf;7k4ui5lu1~iel2>=PMkrrX zS(y9fw|lR$R(3wc9g}e%;R5W^N4US!JNG>^BZ`#LW)8k}zVu4x-tVKzaL;KH`fJin z$OpT2J-^9C^B;qeEWJr2YRK)P*_Y9@%85_f;}5_lW)RA6F0tohNPfZbG`+iiv>`B| z!DXX3aH&a=ii82y#q%zjwf>3lPf)d3{)sd>m>A6}F7AoX#{F;=yV>VsUp3Y>@1R*e zais!Xdtb0#CiM0VCdOgz<qx`*(5eK3f?20|<4~w>rH$W{_V9@vxbIFO@9VC3fmv2` zCAy0<HQyjD|4Z}BUj^d**O(ILw5jeaWy?EPj=xUQ+5G@ASHbbF7xt)(r;P$z#>j!M zjS+?_1d!*ZHI`{ZefMsm%^(LvN&1lPhl<S0dzax=OJA&xHl?`&)55~k(4o*O&G~g- zyl8((N(#wieMMP9ztgz6QD>6G!_Iw=L{%!5uCjHbN=SmC$NcAKYIu;`T!}*BS`VW3 z-6>L*#{ufus-^uIzBFED)rmabfsa|?fWm4IftReV?zjMYe4cbgVz(rs-AZCBVT3=B zr8WMs>GNqk^NP}O2_wTF9Tmp?FN}cv+v|^o#$OUBl9!DCvaZ-~aeJ?+3#uerX@m(I zDqalaT&rC!{*IwE_Wb#)EbR#L`$OCBKNfuCDRQWnY5CXrnXfSaHQoP_<(mJ~fT!`H zN`l+O+(2g|<k5?fS=WaJYLZcQ#se;?ESv-JiG*qypmgtbhIpt15Ck{a7iigC&rik) zY@}G=yPY}1)0nFypx(iE%XB1zrlaY(2P*bs*fjMqTiW`IR_ZBBq-UR;dD}3UIL7M( z=jB9?dj|^$7)9&9nUNHSWS%sD3rPO7`qQ|>&~JAm!mnQWx!obQrp@z<fRU}@L!I}^ zy(=$*Cj5V=Xi|hNrCvU|l<xav>twu+s`{Y7!|^agPLj>8*eNMQP5zvV^(O<}!LMG| zm=&_0^`}31py2;Q?T^GDCXLIHOi{%FwAbDYAo7cOvYspG9>aTmj}L@;_ft*3S`kvq zdcBaw2!cd!S<kc=Vsv781tIC><7$X^o2Gr7<F<}v#$>9yswFS7sd^~zU%WHe*%RbB zh2%Wy3Hy3?aBCH|mIM^%+XlRqb6ymsE0sBu*xQQXpNXZ)pRmwOPw0^K%QhiW<|m<2 z{UBLCNt)3^x%X^<?;lQ?CB2zQB>#g9gGtARy157GC6-*Nrjwvbeb);*1T9*m$^7VU zC5ESS+$YrL8Ow?d)`3N>?3rJ@2b->*wpU79+X`XE<|;Q}K95pns{g^t^+cVDj6^n5 zI;kd(85^AfbDoeUj_AQzmX}EJ#>#cfh;YJt=R!|Pa(ebfrg|)A8Qx4L<@H(`Rb8|5 z&leLkVcqz+RrG>fI4jt3M}cIK&enl8hT+`8(p3RYPIXF(_)e=YPCXuVVG-FoX_)!k z10zE}2~-xo9xKkardh?kidPcfnm|-2hQE8+>^#HAY@TZVDg!ZrZAa~^*00>_@tDDH zoOlM!y#+%I%ywqakkWlh-6^sXW=xqOvGVP``Rnzbx&K-PYT;rlgV+^`3Yj}k0t-g< zXD=v4G7U~P<=0gC*{ETPJ9|d>0(bDe)!sC2wk6NZ`?O}odt|r5BgT_yw49D2sSNCz z`1PuEmTvilIJT7qc^tV<D$KX|Gm${#;E($Y?_bNmTlR-qni9(5quif^4U<5>TPiB+ zDTuP6cO5e|!awBd$WT%$`j{l?n3+p1=IVQ|qgA91;ZY?{vK{VLpXphsX*a$bG*TAK z|AHNkVPGr_Ns3ERRLa|%#y999t_e;DqZ@{3%68T>)^4nXkuG|2GD8hDTmys_ApE9x zEBkvhk#1a(bWDE+!+ln52SE`o1xFUFz6SEsVwUYu!O+>&;>eE~m?+yj?KuzLEoc#% zlYc3jzW_7Z4*ZXJQl-w8-}W=($Yab22@2tPSAy1Xg0$8u5}Kb}TIiI89hii!=BBvn z6P8r{CMJ3>z2a=xo6$b|K7NrBdgIxyT+<koO}O$wzPaX<BEbYZ#!wtNGy}$K<VS7D zJQ#SU*j_R(>ayu(10A)lpRg&^#?<Z57S>igYcJ8(a8>i7Kw}ic4{mEdsBz?2wf}Q} zFzr~2dBGES4+@d=0P>^H2DzjthJTg&I61dI)Z^R7Eu_IK<18A-Wj)Ihv5E*sBwILV zH?l7r$=1?s?ea@K-<IpTj{W3coS=YOjw)>ya8<SRyLcfD=YpbToQ2BlY|hXig`j2K z0^)+!koBp%{;2TyPzHPDu$EnL3i|C#=}AfrCy;!Dv7-{E*N)EmtdeETHvTC`pfOiG z|Jy9c;*2BWCYekvCo`s9S;Bt(^&miCMv-Dk8hN=Up*3{NfbUhMQSoU92B^reSElA2 z6Q3Nzbf#~tTv}_(ROcry;9wQil9X7F6h-8ow9&}EyGL3gu0qDgcdVgRNHB;7wxdr- zNh@c)60)-`D!IfVYEx268JL#@+t~CKPqB^qI5<r8)J(kBcekvtTDpZ7H`lkJktruP z3T3;~iSr5`yo1ky^NHF%a{M@ErDS1aV&)_}c~A)7Hz5qf<>(@C+Tw1N798wsqM{;Y zRU=D7P!@A()OL`-+OE$np1$g|0cg+xC(rb@{-jC5C$@ctuoBT3DV`ow$c@>%lCir& z>W7?^{FSOgh3Iq(4%^N6>94B0wSEQzs<Wb1m|ECcoRZaK5~AOIcO)5x5p#1=M#M2g z1?(JaG&-XIs!h&{RE+{m^Mww1l+Uq{gbMi`MIk-u(e_B6U@R9{-{zi!Y0J1LIKj%U z9llWIdI8)B>p|<IhP_tq9Aa6A@KTJMrZ-7OwB`NY%hZEOY|fM`y1PRC*C-Up<5Szq z9h;mcu<xsD8hzDeBe}Xy>H-r99WDT}*Yi19)wOOn7+c1TJlxz~wfC!w(zpFuQ9yHj zS6`tRq0kZT#P?Y&qMxBTzM}>r?-kMMV$i;2vH@}Jq6x7ISO*eaIp9!P+PX#+p1V0f zJ21v}t!W<`<;>lFtZL;dQx~=2%9ZxvZk$!00&2ky(@HGB71$!&&%9*vTCa);^_YE< z_GRw&CCpNbl>$nv?Yoq{T^cK`yuVq43de@V0u4x5hLN)e`<iJ4ty)mRFHD>Dm7T;d zR>qXO$&ZiU`GW1$?_N)kTtoEGf-%zT<=X>_Zd3UKWBxpk;84<T|3yPZCjVez$s2w_ z^WaVqAAR#M{#v^(H%DXIx!u(S-vx){P5-MlLF2)Ap^F#WRS$gxuopfX`fZ1Bx-oEP z?oO_z$AX(Yz$gk20mo0%?#JS+3`}QUy&wbx8DF!O8;;k0Cs#?+3F;$B$4hC))&rGx zV2m+tm3)K5F4?(~`$l|l`Yh2OgB#@`6QQJTm0C1b^yX=!ab{8pkw3rM32v*>LGUog zR+k(l^m?<@tz?97i4@B4AvVF7a@G{54z}Uu&YkYEU8pxGH04jfWuPf^?4M|u^j!W5 z=Dpe}L>}z}DbIW-SExo5m>LQN!(9y&CaSYml<K;62^mO~AA;d~f&H{>Mlk=VAs;=c z{0z5j5~V?caBS51w>7ahz9-xG#Y4*yUi!5=o-AfY=scUetx6nJG{V%ncht_BW{8;Q zqzsiA=(Gb6cB}oY)4>a-$9F22t4><S7^2y5WU!6ja-rfp60PeqLLW)#AN*kOsW`>X zBxDlKc;G~&ZMWLg12|H&$!JKG`@W*n=f*Zu2>A7(ODe5NSo5Iv5caR-8apsCHA=;* z_32$-6DP>$82SpHoVn@<(!mG$3g>^!8ZtBNMUZ7Wa%pl$3SklJKI`ReyK#sW%dlgW z)$=$SI<`9xYf}{C${nNIc8%L!tMJwi{Jgbw{LnPqqv$^6;3$RNkhzaoXdio|V+`9J zxMD~6#Mm^{55~fa!p<~26+65U?Xlc4<#_GZsK%hUy<p{u(c=cm2=U!99L*}X$q!Hm zO<wZR+P$(p<<NX>378W+^=<OA3rN#&Ufhnzd&O}xbPXnyp;7B|ENNA4gX{d2ZAZoK zoe&O3zk8?+LN+sS{<w*NB4{BJvA_?P2Q&LsMguq<;p^R>r)i;0LXrwDkH}Vnu7qiH zPK=t~%v*PCRScYIFvSjV`}TWCFto!S$UDNfHr$){L^1n4HdOwoUvkvZ29<oN{GmOo z2U;_IdR5iC^|*pU4R6_FP+9$|LyKkKc#zT)Z-VGfUT=?IVVoAmvbv0`hYWuflA;x+ zNjr|za#E&rOsF0Snp3+0F37Gfkuop@RVD2Q0gGOaN*wjSo3>UA+h6LKxT#o9CN*@d z6n|;CZ>(~YLZ^+AqOt9LS1Ywa5kZ*cejB>RJm|JjRot1_P)pSITCYi$PSKBei48i1 z)$4fO2LdL@^PFbX8$}8&!8i;8i1~0cxvAKwlA?Bek79!?jh;p1JI4$;f*&~b-1xcg zbS8@BxHT`ioK$9|xq4AI#ZR9c2xA*O*5(pD6`7$Ub0yhH-o^7;spcGxNKo%2m1q+x z7?nv`t05zK$go`j_xb7+l=Wsq{BGxnfqjbcW>lP#my$gJW|Z<2fr@oV>ER0n7<+Wp zoC+RR>+-{Q1N%`B<J8H?*25_PYy%^0z$3P>UDNAROz>!<cT*}XD(w&}<l?d4tWaNy zmzcuRDE6o(c_VFI*Lk~ECtx$rsl1rZ{G6-|{aSG)20*N_SF89DF!~@pb9iHE5R1~o zK7GcpXBkTEe2UDLvNhT;)JdL6m$FTSsnWb*Wfr1szV_>O%|2nCb+tF<Giak)8fCU@ zn?J==eUU0Sm;~tyBXDT-2-{a}IJ(BXw*Sg(4#T=RimelZRJ}72xoI&}Q^qQT4OnLL zX(92gM6atYJ`vS{Pg3@j+VKs5JK`&Qqr=Sat+^SxO}PwX9taRGF|4UQQOAsiVDL%3 zIs?<pmR9yL@dx}#7(V>MRHYEDBb~XLF?ylrOR!g-<X$6%hFIY3jg*&_lTMxG$Ao44 z<frwSdVwEdh22CJDZBt!WL)U8!7u=<Ieu4_+>F)QcVtx{HDsd}Q~KGuhn!BcO4xBJ zJRq3w)Hyy=QACkA+%%}{lt@|}{uH1Urg!V31$%_prrZR;$brl3MUSlwfMo(d2<&5@ zVqcmC-J}p6RXnfX1MXA9!Ae?Q7(@<nGjyz0wa9x--kx}q88*O@1mVqpBlhM9NHIu) zkyw}GS`GGfTv%YZjCIf}=%iH0Jg{4S7pr4%iMWb$Y`jZTjEMa)Mjvf5(}Em5C%rKq zCBVfds<2Q3cZ}w>(?Ml@cK3gQrL<=bm$Hg<=d$DQ0|p7DjmM@+4*7BH@Os`>f5RJZ z{94(K)u&e0`SUqPc_-{x2+iLrW!oJw>o4tk*XV-=W@KPkBC*U0n>_vvNWT3`53e;{ zyOWR-L_<D?v)x2#F*wMGN4_fc6}qNB%AB3S=1qZ@{K+yM+7>I9Q3u2dtDUMS^G-Kh ziyID1e;iA!W@tA?pR3u>`5;sk#2ke~?O}*iRH5TFKjHeVKZMuJuZF$P=%;wdqlJ)4 z7n_(1W-rd`c{XcUPK0Uc@Ad7N{1l0!KOZuiOI597q6F+V$EKIRb;`@c(bgAKHP)Zp zi!*1C=Qhhw=ios>z?K-^W27o3a5B%j$dBK@TbWzWE_~*9&*v&t?;!cQsWqzGXfHu| zWXZ#*3=EJdhsEP}1$&6MJZNurx>K!!O1BBK*~cmYQTyI?LQUgZ5C4e#;~4^P6fZcw z8lscDr>DDfM#mT^V00jL7?!PN-ai;?lZXXGFHO7cxe`lCvDc*eBZOcgrY<I#?OoLO z)apK^e1qQV%R^WjM+T!d$ONZnD|d2)D!i?$r9#F#FctVHv>$x0mfd7L*<jQ>P7U3S zcwhfF7S1Q<4!Zz@<zRA%Dm+9tjjIOV&&@?;-xy|Le1mZcT%9$z1vGb$-C_%l!gaRT za4){6yvv1;9Nl|hshWt}k7NBQB&t6ja{GqQy>Sd<T(Ea<rX2u!;j{}z5mg#hT1L*_ zOdD@A^_pGBLMhFiJlpjn)&$(;g1RZcWVWe(baaafsVemAJ?_H0$REsRd;f%r&F(BS zQo^&&(QVsyM<t_2=qTTbWznir-rD?P&0Ei?$7gHcAnY$ZH1J<|sj?%CqQpNET})_G zM+o4YdzDGXj%$QeL#3uRimZ_|bwpNpR8y>iH#YCA0vBlt`vve|0cGX;x@GB*+9U&; z>7CM{#b25kkMr%_jrA6cjY)aVABcN+gxX$`K)!VHotQf?dNKTSa54d~$`%$Tl4O>O z2-O$qbKa#5yTJ#0j?*`(jLm~QE^TnwR(U0-)ah)dsB5_1J->C7DLm`9V$r3HyVd+d zJdV?P-Lb}w-Q$?uxao#`+Dt-&yNZPI#XE{j&7oP0z3wQ!f&)h$$*j>3VFdzMZTr)a zxh3cL9Iv)4bPpzYKAhXFaQ8qPN?iF2>k)n9om|^7=~HR}S*xeem-HhlR@$(0q<~0I z3w2xl5Wi?PJpsN<!LI-d<FU8n7yDPYEM{+i6!H?Y@&i^xRoo`9*%;R@B-$2WhPgG@ zT$N7A=Cd};qob+A)L(DDj(?oJ?Y}u8U`0NBgvX?rtu+(nGn?#Ajxwds*O8+xPZ5@w zRuAYWD&1wnK_v;;%QW-wPB+IYorJIM5$3OUK^_n5sZWnujz}JJqAG5$tx$mPf#S^6 z$kup^`)l^%1o5Q!(cUDTKmKBy`cqQyfG1ftT?J2%eo9qU!ADp*h<s@RIQj~Y@>JDk zFp69?7M{S#oJMWpy;0;7`cr9=DR|C$RepG;*`@E^v>|nLFhB#S_s7evOhNJSl!{D4 z!7ci$is!2y(7K5|y49XO^Q&4;YDl6H$#numRDq*KSxE&VLE&esMQaS8m@NZ8KC#us zMK|Y4?Bsv_DSy=HZu_)eonM7~7Ud)+Mk9Zll=Fxs39G;P=3&d<UI3YIyj7ChULlR? zJ}D-CY5C@-Y<2moZi@X(;j#`u!E?Dhk!-n=Qj|mL22R8bdt;%%-G8_f)Dg=8txzh! zogDU_WbyR~WnQkv*G2+n*s5HcQyaI9+%*^GQh8W?<HT>4787s0*F^K$1>j;~7Gwk! zn5P!xCH9z-LbbI9bwiepr}vz=%Ukvy^%=ufH=FeUF5xwFTc707lIpNBLGI$tij`!Y zr+F_8a<3If#~MZL0$B83+R1(z?NQ3a(jd1G@6>EVR#=i)C0^vR6U(`|^YDq$-ujcc z&U;&g+D9XlWX2Dl`6OfKIhe7^%$Bf9@fAzY3u!a@Yz*ItBBtgf_o5+=RIn1b8g5cJ zxN@O(r#Uh9D|x-z7k843+i!>RA?9-^SHdf#o8G!V{)%?7L{tDG8CB{}Xnb^tz>FD3 zNP^tLz;g|jCYmoobogl2r{DKw^joitc^Qr#lep}YiI#{xzuWRbrsDG|{@W#hggoP- zQ8U{iCPVmY0ENgMCuGFT@h?H(s>Jz14e`z_Vn}d!7kY8>s2BKVdSa*Ny;V`?3+18= zG+YUnVRZpfwcQIf?k(9fleyulJ9WJSdagreG)Kkq3d__~0uK|kup!1cV=dm;Vf;-+ z6ryJJt0qQ2=tZ(gTL`x4zPEX@waEjX32wjrPTYqp8)k8Kifb>aOY);iHEH4{(~=dY zUh@GwJi%-e^~yvsIt+Bjr_jzv*o>NJ{KwE_eh#%%W*7wA5FOF71g@h;EwMx_P05rS z<Lwm**6^($KpwMJ4(}vbxfYi3I2L7fCyG@%+vY#R+vRT2nFo16toryOcHFwVcB^Yl z43OvFZg5zOA#X+hIa^b>%N&(V2RvNE`xauPqns+b0N2)QiU*bhYjim<X7G}1-y6;8 z{5^Agp~9G&%)P7Txxdo)VBA~W-oLIafulE%GE-Kmr=mZ7dLNI((+<K?O+s6g9T5}Y z_?6^jOEM8<w$i@`G{h2RG7_taX~O0Oh1AB6ws2WSpC_lu*cFD^X#*y@V4&z6I3RY@ z=O)1V^$iPzTlB;m_bPV?$A#TRS<KpDOPN>2xq3BY#ZD^vo?pp!=V?o4o{8c?b_kE$ z%MU`v(VaUQd6TM=ig!Mk2WZHz>0^%Lg>AJ*mDC(bys38=pd<lj!eeUS7keja$h#0W z=p7IR3tvK6ox<w7Fv*q+Ii6RgGIHYwsmRX6fz)REcQZvUh4;^M!;|yCQ}fL#OmU(v zYvno>&3fX#c&kO(<~sm}F`?{$EnavfQS97DS3vad4ZAr^&PFU3%N^qXq^ZAW8{tD^ z#glD}e>I!hVkia^BHw>@v7!ai>P2_Xe~$H7;!)+KEvN9-p9(z)C$r9-jVRr+ezsxu zW3UD`AZ8qqg-vBanS(iHh+N@~dmxT=w-(+Uv3PdhDDMs}e|lcyLE|Ktv6~2(LZG}$ z5cj~|^RV|Ek@49LBq7gFHn~rt1ja3*Jy>XVnyZ2TZxAbiufff5sF<OV$=u-b&+Vyo z-zrc4ap2rc2C|3QxfX*3M(^K^e^{F^trx~s2k9Wkt-x(-@Q#*dPSaZyaA%c;0t`dn zdRWG({x~#g{y^=B1o%eipDaCVai`r*uu9cq{t!%hGHW4DndZV3Iro4!o4az%%=*JE z9l4E*G4An&XbrOjG^0~Alw1=XL)U3?gwxeDJm1>#Wq0-gZp-9k$3%Ok*f(e~!?4(r zDXn9bBBgEW@&4{aT-31}xV~4r-KcJ=2##TzTE8~M+@^E>W70}0`eY(v9<%{HOmP{} z8{VU$l7}%aoD#wC=O=5EZHD;UqeP1pzPy+<4CNsQ7c7XSGXQBwH)5{(q+QilgP9O= zUfmYB*s}^yZuZ`!Zi-S<#*eGQX2<?u6SY}OIY9ppD3qvlTV@rGK6CK`Tx7Jf{^Z7Z zuh_K6?O87lo_F;I&ue{cxlfa9!fmPp4Ex?q`?tirw7@n4B-G}q1tSzVXT?cv8m`la zYQ2bLF|{=wUDKj?X2$q=xvXI!s-@1|)ZdW>DY$)QTRQ5k`**ge)x$x_qrt4tsjwd5 zC1BHW>@~lCInJ9kE~Xnk^*eS&u+s0hKcmuyns=2{KWmz|Q!P-24p<_&O6aOeeB8aH zPQ=+yQ*0Y{^tvhKBjFP#2?;*VxC5V?`0iOT@mOFe66FN#M$xY6D!w=Dr6qp8Jy*MC z*p9c5A5Vykud9d|f^zk=KGc(&WbCQw)rh077?bWnMAX_jrchC&qFhuaMIk1*mIoVk zU}$flC#`!`_9<0!LpZ;#j4`N^rZFm42&L{!n%>Tlr_gJgi-;$=MPa&LKBzK$<xDMS zjk#VjHZCURPEd_Orxs49EqLbkN1EF~w?0?sw#PH{nzi`E$Ys?vUZho;P&;~Rk6iC3 zCeY@dK_1)ojv1vADF(IwAc@`?#7|B#s50deq@`+8m;jF{R=KXbt-IFt^2AoRg+w}~ zdC)B!CzaVBQIg0sCGH&nRY_l5bfTeU%bBM{5cS!8AI5}B?D6pIff*5tFWuRrW0XM) zV$Jb`u+GlyVD%P$E3r<>qh+YQ7g`Lv;6nE#HDwy)Uxu`|`T!*69vqsr?_0}{|A}K0 zX+A6L_$5eLfkdczTSxcaCzym@ui{5o7V!CrP6178SS+y`$=K@_!@)di%xtN+YdY2u z8@eQnEmcRlhgYMCLL}C(ssbNo3gaA4n>^@^gv=0ieyd>~-9J+AlSjlyQ*l>&0<mm~ zj=k)LLim|2XI}LyA)iC5VEY_e@|Z_On`*bX?<Aqu{ZSj&M_D(D9K~SCb#vkWP$T2* zymPWlz-oe?m~!YkU6rE5xv$+fYcjB_na{$tbjHuxb9?rO3;?gwXjuXCs*#54ZD?+- z>H=O#+wQfbAgyC^lw)?*O4o?@G5jlr=X!5a3rwAu$nJ2cbxj#MG+qdCop9TDRZPUg znl$3Yz54I0$Vo+2a$6uMA|x8TCaRFhUSXP$nlf$AR?N(FAF$CF-@-#?em01yFgwjW zqa+c?l8yg6RjvkwzX5QClLpkhR~)a@$yEp0Sr=WeFH;bs>8zXHDaKt?t>4Fi+m;Ji z#M+uU{aIpL{Edk0XHYYBGo~C=BeLCLK9k=<LMnDiU(K)#fZC0&_#1lr*3h5I^5c3J z60<*>fc`hO<B*V{YKP02FL6?rLpVz1b`Ex{*r0%zSa<V}LRR}vj@MhzICG+Rd+?9K zB8?-_u4V}aB@+-m4S8Cys+kk@jG*ox47@Ue7j21mFa}rc)dMwKg?Rf^ug~6sATr^> zeSM{iALY-iDkguDWi)ndy;Yd*9b{?e7q6YHr|;2T;@x^nSBt7P<3#psmwP;4?8`QJ z))XyqDScM5FifCZbsOcZjF`Kwnef!{V?_(T(ut^J8v9<MjTWlH)itozhH1TR@D#w{ zHjHLLM~AwGuc}wJlxD4jzUum=pg=G|7#vNn3^XjKn0uWTXUJ<_Lo{pFRxwE_WbWu* zuNfKiVCrtU%}EYlWgJ}~UjR=adxv=J@=xh_RFd#=VCDmBMJD^8>?!YBb1(4PFADU~ zTF9SrOOEysZrhv$Ig+uja4dsvHU?o?LEAHM)TIh?Pu$%_aBGvtgjopZMV;?E15Yz_ z-WfOM%C-CkguF8G_a@Nu5VgCZ^F;qnEdf_J2s!}_k0y_GR(jTlqBd#)aaau~v#{Rm z%ag7r<1V%mrFwPOY7<>;k`8AupGj4$7s_m)p{BUcNaQ@?#a}BY3KZ&Zhj^LpuN|Rw z<#_Mnf6Q?Hb|lxs2!<>Vx}zZ+bt|QcJ7xhdb6|*}?XBHI>N{&u%<se<zx=XO^b)*# zc4uEV6nTRYcMJJ(qHA~G-5ZZ`d)AV7F>HL*QuYO5-AhlSYL6>)y`^GAztEG)2_Yr6 z^qxvZZX>;45fovz3v>|$%Xo|WYXS^e?Losp^yS}5$TNV$9PxUd_<%_-M#nI!hLV-K z^@ivuN53USlLD5@GFRD(4Q74KkzT>V=6dbbf;K*gEW4d62E+o0&S?D3j%vzH&Z39D z^wBZqYzRL)kZ>Popz*_6=F-gOdh+Ay%UEWY!d|1)<LzACjYWbOYXgmWC}F?XFO?_} zmPbY09jwC#P;NbQ%n)KRgXEjTP}_$OzhTbjOs-FQ+M>1-9O0t_>%QhyULQB=q67fQ znw0(G81HpD#nre_uV%Icq%OczREWXsh2jm$ej!yjD^?mJLdi4@^u=M!Oly6KlA97^ zZbK>`TLt2l)#e@4?$%(`a^Rsce=@UI>!X?a#}f~aO^`x};%7|I;5p@z6`=hsfyLlD z>c!2B_fY5{&$T!<-uVZ}3K?k#AYB!D%AcwjzA;OpB<U$f?0hDhONF;=J#k#6#c&@P z=ZrV(3@n%LLBz3EeRxH$@zT2#x=T@3Op3jhQ&b(c{|9?-85h<1y$>VeQA9;R1tmlz zln&`s0qO1*rAuPyA@nE=Dczu?w6ruTAxcO$DCyA13^6e9zc(Dk<M*83yXVdGId616 zu-UWs9cx|dT5DbR0#c+02HI*h*Igl!ZT@oUMiZCU6TsL*1mx>EHJQjCmNZtT)(^>5 zInlJVL&3)GZ!cnS=hB*wL7<tz$qJ`d4)(DvIq7=9pS_8GuTQf{wgvK;ks$)}uW~q{ zrevneuo?=%<lBfH*Coe@w8ZtU@8!JpS)<lGB4Lh&Ww%09ISV2qlY%jwov;nTKj!(9 z!ghBkS6uHg@r+t|x3eVb$Zjl*^uT9dr`rLuq9gCOsmlLAX=gm9(L<)-t?b8hg{Ird z?Xxv61`|dd3++Yzz_b%xL0KEODF;0;&*`L>Bo7|Jc70EKxFr&Hz&>sb+sJr4OdW_E z^fW(nVxFyM%Qy&8vbO3a^!%di&Ru43RFXTW2C2@O*!)<q7rMU{s_xLBWjyIElt&c- zn`)0K>Sa(|Tan@+BZNzQ_u-3kdrM%TWU`bW6JDIwZ*BjCIh?Bb&%9M_5Dw;&e+WCn z5WPXG2W#N)x@s4@?dQGahl)tqO^^R_@l&@fTM}Ti3;St<6yfu#NKo6L2!$Ly<P%%X zIdZn-G0~LVn;Q@BhNZKGqnmW!zvHC35qk1GSUc5y`4dfQ@caGAYK#N5>7qgLZmsrL zNl32867!l*zVUB-X|Kval^i&Ix=5V7=?&2*JJ98Y3Jdj2$828nqfntFr;F}cB78r7 zsS?XJzXq~WncU0wQoCaLNSE!c8(ptrtEo1tgO}){0V6Q>#&I8*OY9KF#`Z_beXImD zcx;5Pw1yYUI~Up!i&H)r4Rs84^_i}y$J(eb0n(yEU^6=g8MIWV%21~Y)kS8xzLx@# z|EeSHNHB*m<{|T%BueUxK3fmvNR|Udh)zo3ri)VetMIAuL4$q*Q*a`3MV-NSN^O<$ zJm>e?RWWWm$BXU9$p%Wtq5<&DLO0(TklnT!1)y`;e%uQ{cg@+{f+|bcIMpVRaZRYn zR4{KcN^<sBt2zCmsCL9)Q%1lzvDI$M%eQVryvx3mX*oecv>s&Iay+!d*r^NdEv&WF zzV_Von#fwqe7gyfP<`B9qgVaY_c=C3K~gBnW3+P!9Kfhcp0JEoX+=AFosCMA{)?Xc zs5|iH^mMX!nWDe5hzNE(d<TvKo#K2+0Lu3LF=ZgzIBXp5L@O5vjwvA_lwk#Vm%h#( zY%+6YJv;nqrT%-M{;{A}Bf=20vxwG}l`WW({n(K|h^mOzt>D`vn2>6`I5$kR9^|<4 zCWf5wL<=!K`*k8y=H;6kwh5yg!u^jX;G61e3tBWo-g^7uiv?bn2LRZM-<vVq%P8a6 z?DVLf3qhi<GzMgf)=h^Xm)HUW@|)L5iH_GUm5<~|Z>{CY>CN5y{#7doSvx{MpqFTl z!B!7k!N^m6z;@&h*vNI-WhF|JKcNq~toyxoM;l@xvy-#tLOiyClM4sNPz3e)E;9B( zNVap0*EmfF>6D1OXDEnDZKn2?<Px)DLQLM@jIYq-e;~UP4*=%eaG_c~nM6$kA8~pk zF@E>dQzQ{-eoA(T*}|mBIGScJaexZ6dhQ6<lXYH|n9S>#BOPf$h1&y1Xs{F+Z{Z73 zlRR`di54CUOe7zK4G}wu3`tHZW#0`PA5Ge=VTn7xG(zP&EDkNGZb$7-)!FTsQSasQ zW-ol4qz5x)x0gALKu8U&-c0lHS&a6p(K?PO0m2?Lhx)(;c*suQJqmkq^n=FUl(ir; zR9=Xg!McvXCK=g<6h!Q!QfV{K=EUi}B_)S5iJsqE`)X#`$Bdqw&2js{q0zYM)+P^C z@G{u6ZJUpCd^WKB%=LxtLCJcT!#;+De^ck=Sk`yutzKaCj)PR6OE>7I5m>F_Ge)nq zCCvF`_Wyy!Y`ic#H?`gAs$61rF3Z%A^N%vSm$c)m4rdKioZY#p3KTmx0L|!F7`}r2 zs**T9jtZ;?d2IJ`d90IykQ8piv(mc1^4KunH({Rr+GgsA&+~M)iM60*c_|(*YvLSB z@dui|Czp!!9NW2(5Gj`q2$UTGN2eWkASO^bA8g9Okqy6jQ*c3vtHxK#izGsmCRT-w zs5h8aiKD2}z}VQ4Rwan{n=|VgdzXf;P2WdT3h%-v`e8ygJ4+RXBH<&=875}24;3^> z2`MGL3$F?V1vjU^{N~LOmod@3VmuE@|8m1|N*UG|?K_tU9UtE!Aa50p27HoXCZu;z zCEZgePQC=%Ci8jcnkQ)P5BQ1he$CMWWrchC#{5Zp>;!ULRUZNVGXaVelTJ%z0}8`_ zu4x9eroqzz=x!@(wj$=6f@wD#Ul)h(ZG!Z7IlT`R=+3!G9DvfP3SLs?*&JkK5j?5J zRfW*oWDj+WkfP|W%mcKU1vrGgklv;5lT*t^_|zlG+q32-l`Rf6V@tr(IbEc%HUufh z+IgW&cpRcgxI(mzs3*@RvkrN2ZV4?O*bzJvLe#ubY#QL$3PtQTfT~7bEOeC^ASAR* zF@Otiz6l79j%3OGx*D}?GVZkw4uHFN$4BbS`M`yY-HrU?UzYIa7Zh8b6q%*Kotavt zusdWC2A~5V^DOV^Bb7VNwiDS0*_qud=L}nKKe$&RTrfdX2K<*sME^n)U&KTm`pK0f z>6v+M@!~*N{`c2Ig*YuTzG9#8*4*zFzP$PF``Af%N;9^Y%xoTy4IMwA^&ohDTy{se z5oy52jja)`SASOVP})dQ&)jvSD>*n?tYbT7eJ#$WCwwIhd`&@BOCQyof33DdD_t)B zV|&92gUlV_%L}cw_3R}yjwR*D-u!_|SGdBU2!1U}pssabw-OeJ&o`IkVu0>0*`TB1 z3-+S2|J<>V5}W>L_3g<D<0}B|)rN!@JN5{g*)q|=0@qjgG*@b3s%N5gGvD})*S+x` zuMU=JM!o6JGt9i9ajVuVMKBW-+rK?Qs>WtzZAe2!$)=@e8fT(Y&y%@n7ooSF-G~T6 zJ_+^n0(2s1Ye7D#T_Aoknl}1kC%8G<bHytfri;?mt(YUra!gJZT%H+tv?bF&fLR+A zuSw5vL~>_}qO%p{!92rsOrq3HQ9{C-nEP9_pEhooSz8#UnUQ_+td3d+MThAqj>~9> zrJ5U;rIiTPGT#YAHm0l(Klr>krIu{CNYNwPj0`V!<5shzKj8q<$RiOrkLbtptt@f* z=a?pT#y4}!N>8#t1;46|?;qGF@klLz+F{Bb*$xw7#kdtihyBVCbQ2T=wi6D4dPjQf z5Wj{O`7~5%IGqq3$&5JJHdCUc>^EActTJ(*IbmI2Z^ebyIdpo8!(|<Gf-dS(cGk?6 zIRoexwI%0)+tBT`L>4Qg$kY5Hwnw#Iuh{nMMGdW&@w{ZMn<J!iX>KiI9@&Xz4URh* z|75h#*umRYAsd0D=i_wwq;hs9PNHo(DHPhvrVnr$MrKNwZr}@u@#p#4OiofB=i*>{ zHI2Ex>ERtKFS}{;nc`X}eRKd%z2~8+LLDcmz0&<Whr<kaje1|-Wh`p)rT<Kfp_dA7 zV%#`F%98YUX>1J<Nv5D3ahY8qD1cd+)5}}gtlx(RRA@?kVI03SY=t=a`8vTKpfZ(e zP3Y+#H8okc9;7w^&p`IE`K}I8!|Bf0FINfIJ7*8rIa5b(Gb_NZIgG9%_Koj&Q;@4# zr0IRCTqZ1;8L_IR!?JyBZr?ri?oSVo$@)YrD=;MqB}@02B1ZO2jq5?JUU)HAk)300 zh~DNYgQiWf(GP&<-P%JZ36%ANc=3TAf_F&r@c`e7E~vNBwKHcLa<C<D5s>{Dz4-oB zRMN72%1HB96&2@Ria7^wSqk9pO(-Q{x*2owjxelHUUJv|GAP5EuMrM^39*ZPFw6Ri zD3@H>R#!kvXpKF)UoX=P_RD*vilJdYz8J)M%LI1WrH@|@g^vBKRU8S?W-LQ~%FN`O zZzqK~o1>*H)#|m`D_8-#n>b!MqG@Z2Cxh!Td57zPEeoEdZ>7*a<7GckIHO}V+t1SR z)*GE`s6NL)G!RHiA-o>f$(&<*z>}pWkv)Frs9h1h4(bl?HfWU+fX#}BvS-~Jd=RQW z_qD5YgoI_<`pp451qO^ULbt*^#s6h9+G|ua)KwW-<^|FOA^>5wa+w*<7TX>~ZHeyZ zRO3dgB#6f#l3Bftra5wpD!9&ovo12o<gaTT+M5s#x6JC=<WRK-nSr)}^2=7t7A4`u z?Vsanbt1K9Lp(|<D%QQ*IWk*Z%oEup-}QsL><=53$CiKs-z>-NM8l4{P|LV*dw~kL zWFL)L{nXIxH;=U-<(gjDS`%r?+=;m-{i?>m$$oaex4qH>_bPgr2m+mtnQ3oUAb!hT z8iy}nX`~U(%Ab;mz{Gf(fk*}cPcU5gK-pt92~~N3sbs5;8(!8+7L7)MLE<vu5bciu zl^S(%SzLlFYTW~~-?d+b*Kr7PI+pZTQrXEi*8szp#x1DZD*T5jjfiSDC}8RcX&cQe zn<n$0lbfuj?g*T8Yug}|n_afC^=QG!e4MrQ?)@ZRVHgdS%PG4g<zm?^>cL&g_T`5Z zS~snvhcdTNxqfEn61qOpVF7C5a>5K4)6brW@~p?O##RUmCGefQr{hKG2oX-R9_L`v zB(=|~+!iU0;o_Y-Pc7zy^ZSPvg<_CPkTRqBhhH9E9#jCur>Wookq}#^5yyYKlTjit zg9kj9-yzR+_Fu1LK5?)}9}G#T#sAL}{q>CI{s-Th0}*Gf>QDadGBPgTMAzqdK4*~^ z=-s)~ul*la${xacEoY)A`hR=bD>TnZNaJ7SfE!vk^!?L-9XwvM9Q9$USK#R(Ap7?# zRSxQBZ$;~iXW;+i4EW&qK07tt_>?|}5mYM1>v8|{M1jjVNIoD=O5+SZSGb?5dH0IS zzh7B&;jk>tgjCt$-)7;(wF7Q9M+V%GUi054s}1k3X;uAiT7OPW^Z!q$wYyMk|3@vr zKkN~s|90-*cKUxi_kR}2e+Ky<T$S&C2Kn#M<3B(9I}kJazx-?_?JCq0I|dRFNHftL zZ5<G!_kg0zl;rI;vkm<Lzy*Zwfz~>~G4Fk>MVv{rG-#>Ra|c=@d>KnSO34kvo1+mx zp`lpgYdg<KUU9`QNaVT70RRlW_RCgom^jghkWAzCCkd7m9FqM3A$%)|J|GC>7lB%t zV-HRFoufHzaKdY}%uM5TNx7ICCupU6geK499@K!4cWcU_ET!(|{PD|+OW+cU?mhx3 zhO}--warbW0yM*9KyqioOBRX=s0u$S_ZyU;;U5XQvf}2rK!((D7_dk^Bn}19fg5UH z&%Xg0UOk|J?(@4XQ2!R+Z|Du@`vvJ<_ybf|IbHto{LojY(<<E3sr>@V@f8H128^T- zt<klXt8Cz>^5%9wA)2WYwb{FYMsPY};%(>Lqt_8LdUm4G(v-|8TGLFSlli!=@Xz=0 zJqMtul7h?=1|iI#Ap?zM^vjFvT~_7^%^^fbUV~j0_n=A|v=;ObdaXW5*7cuu0F~+o zv!xZ~28fd$1COOBTcB5)oH7J*>^-0}cNEjcytJoPpz-<<bAtX6lH@!@(s8c>e))>e zTE0-HtOdBk0y)DlpfJ1diF^;!Xq)prNhJk|DDZW8&R+!iCI;68x*yX{CUZc)hREXZ zMV>X!`U!PTotK(L1sO1~XPKdf+o(u>yh>2H*g>S<WjobBepm$lD~K#UA+qXAm=5$# zUZ{H&HC>Wr%6t7zh@@5o)S_nw^9;XYbQ!kD%7E$w(Q#0TqQy*<X7U^tkRvpO+J1^R zCEf}hd;3m^A>-$xG^-wh>14Qg{?C~@b$+W_Od;_bzM|_L0Z^$DI4Qms=TC<qY4@}P zl+3Jre%KF-Y~*yn)RciAJLwK3|9qA6=HOlOz!{^+%gJ6w3Z1K^PlbPO2QtDR5eC8U z5k`aOg)Puk5)UL)>eW2XM<iU*F@HHf0kk_5tAK28H&^mn5aZkNh-6fHoyYd)yM!5_ zDV9li>&p`h(5@r@bB}hK?XB$Zu|ah<eJi9|M!uzA9usKndwuae*_~f89uJ7#q~wu+ zPDzz|NZJ+C2DXDX-Dcp@E>!dh?FuW8LbrCSZm4tswKWx*#Zoa^oFmH|$X4eXCB`0( z1F2gm*tz#4=%j!OTbpi>ISL=UQgjt+aKSXOc`3tZwL9H4bU?{K4`4%4my0Y7TPHw6 z3JSbm)v!UY3xY0M>Y!@%dqm2pqi$C@Bx2bO1ciD~K;N~_GGee^Dt^!ge_~K!jHf7R zYa3K&<qb2;liH9k^;;q8P@?<mqDYX#zv~YA&JDGv@d&ak<Hod36aQFH=gCwKBedr{ zsbfbwj{O~O+69Jyt!^L<JQ_ff4-(VJURA~XNqRsW6ZQbB)@_LpP`H2|vCPfau}}3c zO!VH{R!@AzRSvegAQ0rk^O+RCF62K5`(X!sX%3e9X*wL{$Lg^^R)<f+DS{xCyyiqI zM|a6BrILjsLo$09?|n(+ZdtVbAYM3xE_42IvtzhZ)T>d2o^+Hz3^YH->nnkw)Cv%L z>Ivo@=gY?IES4w^10|wa>3LEF8p@|Sfy#@v_hsmQ-7LUt0qVEjHBi&~dh|t2Jr1Z# zO7<$K<?R7!H%;s^&~<j!0qyD4-H?2gqMh3(UHT=fyfg!2hk>+E5gjZUf<RNpBEv0w zml9OKAz_6c`U_lk@CDr-^njrumLj6I;LT(}9sY8v9v(|4SSpO$MoB@h;eHi^#(|~# zdpnvtpX(xZ`ci7A!(~-!=<*$P!#=PPlR<rP>x=7vurnyLs=(^P(S1D}EflJBM0qg> z#^uRb9&_w2Xal~E1tlQTr20<ERp55I^@J;1pbFT^@ZB`fOqK(MF3af?g<#!VfWB2( zKT2n<h0U&U&<g2=URPsj`8ud}@5e~`uAM&&TkoYP{q#A<a2;=creX*nm5|s?<5IX# z5A`RQ2`Qiw=Y$w2fsRr>pR)BFP*c?C<Wp{Rq$wbgtu1^qDZV7VH_3I9(n*O);R4%j z$ZP1@r#>Y$coU$C_8?MGu%4ROTbk$w1H2IyKq4W8gi1L+@fgH%tJ<f^^N!u3^xFEG z54#E)@P_PD4Wb?0f(9=g+4{H(kSDZO#BGRks$l)`2FGyUGaD&{@(Xu~wj(dkruEhx zndKXY(YuzZKxu|N>dJ6t(SxG}CMo#^Bx@X^8VU_)vh_UPRcr+8F4XT?Mfn#PK%Sr! zG?BQ-b85yQ@E)zjNfnUF0={=^><$6TEej8jsH1Wjwa>?MEJ}&dch+`?d<gKONqZCf zJKh#Rbx0AI;V-m1cAit@NMMF+u*+>+opM%rMUo415efn~;h3HjTP(#w5NuP|*ti=& zjG;Oc4Q-PsCk!%66CG&6sIgZ0x*Av|jI9-Dsg?<QQDoq-!L|tLYi9Ln=;mXzb{Y$| z`1i(H+>EdlQ2!LLJL7z$B>VH?0Z#<H!Q&>vmr5y0y}TKIcpPeW8Qg=~6lF{89hskC z!sr&B%%pfBXrRoU_CZ4`NEyH~rr9N$1D&H>kq8ooE0H*_g%wb3W+Ge?XUu^z0m#40 z1AU6>T>TJqihc8C;VJR8O|3b(MudhwtZ!aI1(s;es8Q5ea*-k6q2E=|ngR?3R8D2_ z{w%L`nN2;PvL}zhhI+j@qrt`n`<z5RWwHteoHhgrOedr{%!KX8+c=Rz6Yr@46es<U zEXSKuk&TvZ$hdD8`PWW3y1QS!4SeROZ>h;Yr+8iVfHL~BYngO;yZ~Xqb;c6*^Otzd zN-wyy`24>>TPCb`1ppF7NIwAsq&;sTuS3lPP(LjLb{X2>0>FXfPLwg=ESBek#OEd` zJa7Vns_IvDLFH8s=O^Zff|~CirE`bCChi9NZzx^~20E!SW6x`_tvQ#{#po5I9p#h) z;5jkirfkA<{GG_wN1zZbeV}fmEWe%&07VOsa#sM2uq!Hg)o=vbwzNx9wY+MrnY<@q zVs}=0VUhbQBQdcEfEkLs6P}KJtV^<`(sJ*rzCI(Tmw!j_z7xLeXyJR}QY^zUBkXoY zv<@SbnN-Jpzd=Wj>f3Q{rHe@i-N@ET0~XlYbC(pFI6bca>I#SsU4j3toH5#?^>PQ7 z4s;uiJHNwcP_s{U<^K%ckSEPP6^sHTORLUyJswC{_FqLWfr+k%1Ws1S83JNdY{1IN zzqAZ~2%`k0RO*T5IT}O*2vYkpwy{a^qI{6h&k7(JbLx>-uP$Y)ofIb`4CK>kL<o@J z^rx&`VhC7j@{*@h=uO6X#29_u$$UutXvgaxV2Z1eI7+0yI4xFOx}tb?j;xl%<ZmaT zwQ%a?(OO8m@%;DxxnH2uy7CL%*X+clpi`Dj7Q%`Gm~Ux45J2vyDkvYegftptAWbfy zto=l%K9m;$L1gvfH;|N@1++VX)VDW!GdAeLg6l`s<ZkX`UzmW_SZRmALOP_cVgc<V z`YSM9XCV0isnnk94d8_}i8Q;5fbFcgUl0Qd5}8>*f+9cVy2S(}ZiU$f)vmH^UTc9K zwrM>Jpd>&#!Ma#leNVF<qdpA665W)szi<VoNv_m1DL!_7#^?AssS(?18w@C#hy}Wi zy%$;u7EFLOlZ6aX4*&>47RCCdt+}9<I%g0RRz@0AhH1SvNL|*oE|M6)^8q_yVjnw^ zn@VcvX)iG8e_ba9R2{bG)Da=5A7CLj#IW><e0=qpWw92m+L@k>3<Vs%i=TXh3xDoR z9A6@mL#LuOHLQO$YuBkiyA{?ceC}sbK&6t_-hcyGBe!-Z3p1mr-0qLAS<qj}nG^@z zC2ZYL-LFQX`PZkU3PdS!V10qY+r^s<3Z<YrT4QJMGDAQW9BOE}z+hSEy(>J)R%xGl zW4~^*wh*khtwAV>ZiyC9xOFiXv_ig?nbvGU80$iM4Ff=qzy{QK$V2i0!zMBMz$k6O zOQk6p4lFnT>w^I#O%vBQNbFN>@o`3`#FN%afryz9C9GFj-QoQ}%`7+YeznkoUBbr^ zTykW-_vLwU;E`FuoQ8;H4eDbr3dE1>s~!Nl2P@N_f4DE=$50vR{UCaI|A*)WOOi|L z&47W2y7crsU3jw%Fb5GEtB|n2!1i=RZmTN#JJb)K5A05UilQhMbz#5n6O`FU1!&e7 zC*%15E3VId|E3uNUmWWEPfvxQsXG{Sp_|9_FZheQa8!N++DhISAaOB>k&`QiP>-%? zi+G___&{Y!?M7A)Q#g6^!-BE_13?LgMlG6~2FwI3rApjgHjEl!r#R>b`aTgDtUkWb z%)!AJ9h+X(DY8?#R|oWfGGANU<pRN0VK|6~W7VQS_C75hM}rMU1EFcYT2Nn~Qd$d{ z0JP)W#Dnj;v>Tv$aVH0HA6?w5BAdZ(X*j-7UXcOR@~Y6e2KYFR%#IiY=g}xjN*{(L zGAvexM~))snV1=IIS9NRRT6JZ5|P{0*ynN*WxWCYI}A-ClP*vh0DvsJ*t<Yyp>$F_ z3}+RzKig;|zEX%D0E=qEdqH<1{sKc45J~8%26@07uce)#Ty!Qm!^g6KH;TKOY(!58 zrUVpF4aW)7{p)*WBZD#J6@6E%^1?cV*4w1jE3q3Rxui0EvPmBbxsDlGvrVd?ySF!E zYNqMbiyNViBqW4^bY`Lr+>xMy1fGp{EY+oD$eR+c1%;3&0R`}&?RCu07wrKE24J4s zxD80@om)p(sEddlvU32B3dHqr3AE%1{|qXr*`*HM9(5DZb~VD_dbg7E&lTs>aGt>F z4}$C26M+V(RA~<i5?|vxO0{|*x2jH459Ic0(ABY#pk8D(8}7C<GGRcM9M}m5_}UzM zlb)&xFFkQabZ<(O9`ryU<OLUB-wkNJ3rTBrgZ{BDopw+?odDHjp^8G`%%CbSCBAee zkfmH}VXn~A<on1w<6;##o%yoeP49gds26WyeTAvujd9d@cKVln^ee6{f&uw7mnR_W z)bE_SyyDjBf#HOT-Yr15ZXJb?b_ag)lTZo*Hn3FEEyI)n`Mh;Jf@+&WtRoD!0g@t( zC@%tpOF9q}df3gAMj66C8{5A!kLROW)P`jEc*Mex(H;7`8)bR$Uk2|AZW2DuRMVX$ z5Z1gEXU+^Ek-)8RtyBT}cp@dBGp(HjtP=?EXxpa_hC=!%z#af36RFmMsKfLXW&&cU z_-P&J`BrE1w+toe+Zm@~n9th>RR`U?3QnMOLj$ql&XNTFdc~z~JqaM)VM~DQrPhq| z+!0j+h|?Z6JD_ez8am1ZJ*U+PaCW~N@R*|Hwr}nO(+S$4*^+?tMK;%4!?_IsQB4M% z8mMKbpn7?DI0IDUZs7T3M5oz{ACXAMaIps-)9N{nlHuPx<}50<=Yc}!8;YfQ=^xgL zo%IKQME*N}<hy<2^JV5;%s_oIB%dTdoF<j$0`k2TUZf<MKzaJJwDhr)>i2;jgcMXW zIVX*?)o$m-g?%r&`~F3!rgta|$jOSn+M{emLwLy&SCtu(F&_pVrW-VhPUs8(qmcxF z^J6FAC(FD@@%N+k99sK3!-Cl9v->_lr%|9r=R_)2_MnIp2~y=tx~AX(6rsvf9d~4g zsu^z6?Wkb)g38%=B#WJ!Y_9pP2jI9CcDhzP=LC^p<AQaBFygqK>xjUA01Ttur!{D+ z3*qBD&|Mk{eK!Vt4d(}!+6Dc5dGYXfQdEO=yK~-qX52-E24ESjIcCpL3;v3zE&oE) zR{A@#KgLkZXzPRk$rpV<8p5Z<iDD3gvIh$Y#1x&-0=k!YjX~i8{x=$1<rW0gZ+5{x z449RH`aNzN&^iv5)b1WQBxF1td|;g)0RfeFD82?45rd8~g034Nj_7F6d?t;5;UwCB zn9(5lBL1#1VnSjOLgt`xT?&fA7Pz`3!7_Uk6r<G#{pYG{hTG7=r(6iU{29)2)fKbG zOo1tJO?{Yp0O`{{lMvCpEl8(8Q*^EoVfo3wQu`+hbSkLoAT=BU64LIvBi=_&y%P6u z2`Mgjr5>fceY?&d<W2dm*ziAM1EH5x`VXH6jnHvCfhSKnEUZA7l!D6cz;h<j3&0nG z1iBEq*yz|-5Nv9Tz*z+-TVBz<JEC~_X1N<OBSr%_Z08{-2o_*Qq2WRG6?&Bci*@VL zg6QJw_d4~0Q$bug)9z>oa3oVE=whfwJLc^}&Fm+aJE0Y68LlPAS`CbJb+q@;Cxd7O z0c1K9l9TGPRDDZTpKNd+0$nS*5#{bnqYw=Q!L|Mr;7~eC0YGb0tq~5JkYUPKlQ;E% zM5pk)(cuX=?BUFHOEz{^a9dEXXD2_I<Gl^~#5j{cL1R8AKnYVZbkWDjC4XA)W4PDp zm52vPNUsz%msS6?^>~tEFM!XWeP|U*A~9J31i@ZjBtSfL3S+kg&Fw`6Rt1%&GWMyU zkc+j6Aa^(hNGs(DhWC`UASPYbzGoT$B;!$Y!zy!99F&&X3Vi*Oq#Mw*N)!w_55puF zH{DwiBoLbo!POiQVi*GNF<2cP;$EE|K!F#?eGATjh4IiHpd*{5xfguOi<%&U9OYBi zl9cN_;+>6p4@?Ox66aCx$nf3~q4(h;<dOi9;}Cjj=9iW8>@UvJ{FASTMe2YU&55I5 zo+qOQ_C)CWhwD9;bgjEEy+9!#_CQpm6DsP?m6iz`T!u;o7dFFAtym~}=q${E)5C<Y zK&i+EOCh~ytkQWBNNu2=vU$El?*OqLh|7fJV{{MLmF~$vwsFih6v07d={ll@K&BRX zPZZOY-YO53*atYEi6c@{^_Z0_fFq(|dEJ03+?Tot`4Nrn7;r4j%^+|BPbMng4$jmh zQpToSud2YGG00e6)Fnw?rcnke&@~sbW5BkyQ+eEAUJ~2bw-@&l_>_tQj^JKEt0uY_ zP=Fc0Tf2Y6$5{bmjT#=PD=(`PcxkjF34%M`EPz#t(76J~zNj%fMo0*({sL+O4$4K$ z)pYv2ej)BCeLL`cKy7VfI$syyw4U#w4fo5`UqW;XC@%o)&6Z-Lrpy#5fq+o#+7MKG z4$KN|c_6JDEb+$P9@IXG1bFfOVUK+11f<6a`7(NgOyJ8>Z6Pkwj9Ec#pio#L(h3bo z4Ecc0CfV{~!*YnCbO$f&PXd*dMu?EG&7B72hz6E@d$>72;IgU$jw@)B$O8MQstf^M z6&uJN65|hS5%5qTsO+xe6u9@|2)K~(LKNYjAk#6`&)XaG!(bSBp7;wpuL<w<CI0yF zi?|<NYU3X`;%{dzNfOscEmpic&6F-RN!mKx0bn5r=0J##1QCB8z4`&!G*J(U3_+d& z0P3(UwmoNHX3F=xAf6m*bngLU8E4H(f2PU12vUHNhCsEI2ecIhAX6hC9$pRNih9h5 ziY!YM2(M~Nq0VC{1nZuD1tPURi2PX^xdL&LkYa+4i9p2p=Jf1XA$2y;I=`<?_eWwt zACO_`9$wKhJoUOR=0`2S8$a*fn?fTIJAH_=U>O}mjpgP0%P#eT0CW`Qc!jhYgA+#@ z(jR&j8S2`U^+l54h(L7q!(xcBE^D6(6&100{q~Q(PEA8N%zb2JoTs()AX+o$CHQHK zeChEcp@#VQ-tY6j>~cOl;2Og4Rv=xmPQESx!D4{G`=5}(<*o%q{Wj{UfDZEB-}LUA zm<KFi$m9t{U{1QzZI@bSCrj3FQw0=yw{g<}b<C9Hg+Z#fF@}$VsfS9m;eaG41OdMy z;*Cu08NdW`R{Oj4f`Ci<lndxj)&Q&13uqK)KyY-Bal;$vX4@>e<S~s_HzDR5pFv%4 zV1AMgLbt|R@a;99=Yd~eyutuDwY^9l&}9(a1Zaxr@$b<UrCuRbEfWi_pJhSYQjYvS zlsCYqS(s?yfer)INc;x;h`}%*<#iXbNpK`Z;{!7Ix*i3QZ#@37(v0R0s&>jimIh{$ z@(VSh1AO1&bIM%AW7Rl6V~B%H<7OPx{ox#al>u)Biih~-^LO`G>VL0VV!wI<ctLal z)IWxV&d^E6b6Tq?=@4K7J!h6kaQdA5fj|mqwjCMXf#jp&Yc58(4U@csG!;RY7e++~ zbV_DL;jr_R0^^pMU{_aJ*6zJG=dDn*cj`l#U5NrG=?PIF@v0utH&6GmuxdUB3Cv&u zDlYaFI2sef5~ju;zS1Y#%TNC&l>L*1M4SWu^g$Pc#yL%COr|9axY|r`dXQ=N@}F4f zloshFVrlXRsbfHcEgn))?tfT;dBW!UmOy234q|Y#>$;jDRRSF&-xHaMIPB#__%shV zHFt`^NkAG4XCpc?Y!kAzI$G{FWgc0$w!bW#Mtp<J(NBZQ!~kRpuYhQRyh-tc_E6)@ zM7}O!S>`ZS;H?2D2FC3=zCLXx`2~iYh_-xCajrfx+lZLt0{Y({gPIZjpdi}`s4^=I zG4d*0kS2%f+Zh#5;5ZQKC7^E}fpIG2>jFM82GY}4TT9HQ$6*d8DXWl|PJC5PvG7EF z=I8TVxpq*d_6pA@*!)q{&jbqf^J_}Px!|k=0HYOAPhzXpJ8d|#7^cKj|NOCjd>SYK zC-4NMHQ)ac*DfFTjXR;LU;YRw3gNk*AgJ#10=X$Ukc;rp^{xWVB;Dr(cd<6QV<IH2 zNaJ^Ew4;GD;IWOk<6apQfTn3wI)m^{@*O}?$#YjSg?~Zo7yv3tQAP^r!eUu#(fM}r zK)6b?vr~Kw98dTf)yN=Hv{EM?{uUCph@dY;V;X>la&kY=Go0^KEplHhYUu{%D-mM8 z>vo)gj(yfyp1~LD^x<m~IE53$OT;AOAYvp{Z%Q@zs=;=DH@c$6q?>Va1s2}4Ve}Q^ z!61Z$8toj^sF)5?Eo)n5{*_!jb{K4(y7fx`mmOpbk&9rtGaeY@E8~AfdW*VKQVK3W zo8KjvBnn7Ao(0T090?)`#|geJASn?GQmdh*8w*gk6qIJzX$I~J3KsupM$jl5G&T>D zTy;L~U)7YJdq4u+UW*yDwPu*SlVP7~9s}6-?28QX3b+lfL>e^>xtc<`!UsHKPV{wW z|Dj(Ps|Y~P+#$INqNahLxk+je9?=zDadfAjt&8p9;y?D~MQk{~@DykKD~2CNwc$0W zE(8-!5#1j@>lOQrTVCwy5d|+s4f})O!JS?xm~q0Q2Nb*AfNj<|(JDYPjRhhrvSB{U zADIdh@2#7#d1yzetw3qQ1v^L@vK#2~3}CjwCYB{&el4af3!T^^a{y#oRgyj}SFaez zbI$9{L4e>K;3}N}rQER|2bL2nq=|N%0oHdlXvrHKODYe_!rcb22B0Fp8=O-Y(GL>f z(%x)k0fa5-*(3^l_f@(Z-7_G@h}+i&N)wxj8c&1(q$Z8noWFD6{~(GK?8Pq3C{TTx zla6@*j$_Zt5Ymxwg4)UI1F9s9Til`J`no|HD}oisNJyt3M9wcD#Gf4kbg0h_W1kZ( zK`D9vht)iWdzbkT98W$gwfY4dtGy6bxX?Nz0y2<?A=K!D%qj7raaUzEi^OlBR>MR9 zoDLfR7{q<-O75Ua1n@9(h>dszpYmK_D)46BfY0a#-CV;UqY2Ecx^WB0InY`MkxDla z+fdoF*{2dwvM=)doW#-tpi3Tx^JsWb<0m05W+V={Jn7cN<VcXa4m;j&dj!fp97a8{ z$M{c6$f2%0)hG@<dVy!UfY5UVvJ@F6(c1JNR=#_HzM^XEAi)ceEi#%2*ahBQ_8>tF z0B#Z#`j!I2nF-_&oHUrO?rcG=a82p?AVpY*u>-bwxw;+7$ReS{FL5W7Rmk302eHTZ z$PKRW(|Z80WY1F|h~6{O>#_hh(}$O7@JTJtxc)sv2+Bjv>F(p}$uY@b*=>%k93X4Z zYFH>jDhVaZO;D&TQMe4ceOoD3+_-trnf8vJby1UpNOY!UT$#huBOHIG=n$j&lXn*! zrQgVuA&d$R=X=SgY^tlkU4BjB7Tc;C3s-^+$1l@;9Wtzg+W0trnO%#gehfd3ulA(_ zjw^1_cox-`o(Vg;aculyOp!fwZY&E7bQOKk-J^k)RCuBJ`q4C_vENVQ4W5+!@nM)w zWNlO}cVv7&oN%YZq4+*l?s0U3Q|HN~At)-|1h#PNALTtqzsjTrwF(zLdmb5gVCC;J zALbVP$zMMlkV7$csYL&@{W!k1xR0M=PW*f=@L@LPaJ2TyB3O>%C-WR1JRf-*ZS)aA zBW6T)um*Qnj(uS-Pk|r(hMgQ>kG5wyu%pFCEoQWbf9Pktm$=e&dAh75`SXK*K1qYt z=~I_NOiFT(XhiVnG>3aFT(X4x=q<0%QXeyVaz$1BXok;|xgQJ(9T*Z!bLo?#i%q2( z5|b}KF1>OzrFf^#AP#5fnnfOR87RT_TtvD3^832)QHALcQFdYtaG*CKEfJ$%z6-p{ zxx=Ok$IsL}w~uD44R3f#T+#I%NjKOMpwz$=E(ZH$l4AuAiVVi3aQIyEjb)FXakkKh zUwD0BqW_nRso8rDBM37cxJZ7dc;PmlUCGg(T%lcssyem`4L~Ug1NSTEoFjA$3d6r% zI!JMxb<rIbJbJOT8`KK70`g5$e)%3U^@D*M0|VE`Q$BI@4KkprNv0|C7sue!@QC2h zaV+z+jSG_07H3~L@|H&?=x{*JBpoiJZ}FYyj`qe8GC91y_+SMwfwP3j)o&j?>Cs~x zjC;fR!=*!!`bR=X0q|Iq!YN0j=<na$W_ak$cWsz-e|`L)Ywh5J+`R);Cy*%2np*s2 zWdAnNU?{ig4!4h2S;rZ>0rA4if0POQ`-4)PJ_uK4U*ES5`1|)AQM=Uae-lx;_j3XL z{vnp+u+Ye{`$9=Q5lOA-#Negh9`BcpTS9lRS>p3GUK{-T11^Fod`iD@2e)C!?yT<b z({Xh7wwl8&66cb_W_7E}s_ym3jbFa(?-OJs`B#(C9b3A;|K^uh^4&gYr5NPE$C;Bo zKJ<UwE&g!jXCZ``ukv<TY3aQ4`epQfo9>T?1#dHTB1b#%mv23IX0l5MJFgC?)-c<c ziXOe?@3*Bp{AO8kzc+aZgS(@A&cXjai(&^!o^-)~U)_?L&>B+~1g8&FL@n|E+xW3} z{2&YN{!VHC_9yJohi;;1k%sXIqyP50x5N*=RUIFPyn8z5Uq>Y<?r?^mIh{Ui%=`B% zGY+>hbG5(Bkw^G#?VLTR1XWW9P06<^Eq@=_pR3{l{lRv6eJ$zTp(f(LUwQM;_<v$e z?f&`azkLw9dw_w}qi|kdlP|dP+i!nPT|?}l{jiqG`s<j3f4x%ca053N2fq5%6aDS_ z&*u+praB!sHz6YT*ZS4JUB+(uV_I+iH?2QM=D~l{`nOH}-){ZgS^c+Le{PmvJ_P+| zgnt>0^VI(t;s1d#|M}M6FbT9^{)0?^Unl=TrvF(a{~_VuA_xeR148B?l>HA0{}rM9 ze-PlT?iaaCtSMhuIo@(rIo?TJ>3p746pi|GnpZy5wNm&=pFIkFKPRBZ@oP8fYw;gH ze(c|kr<TsR8pXKk(LQR|SvyKMRISIp4BxogI@Yn+=FvQAlAL5#i@!)jdiul7J6S|x zILGkL|KmRm^tc+6cR~unaX!=ERp9;Siw^#px&be*@re|Ud4%*^Nw$PDv}6Bx!^3a# z^|`PLojrSlI_p%D<iCD9&as43S_lIEDj8g{gfsmA=N)lKUK1129D5;8e}cT$n)A8S z@qc?K@O8K<4G9fY_Ah-BX`HV7AJ<va7}2p#e`CbQvEiKlzwap5AS2|D=fe|s!5UTE zD%O4WUq%#q*;7)->~K9ApW-?Me75*Mu6vE}iF)%qEteLjwDoz<|9MCDV@zw*#5ltb zRbF>}qCal2ZaZ2B*R|b;-RrK4Y@QX)@Hj>7gM<5z|F|-Ikv9r`^W3F8F&GDT{}jdc zMl1#2BdKDOPs|b%Y^anB?K+2iy-Ejl8MxXVa9mEA)>!CS^70Scf%Q^FG*4-*`rC@C z@^78{pOFlWR_p#z3vjS@l0y#O2r#go0@vTE?=j)Vuwq#eBn;uS(&4+B@p6Lyx)^cQ zevB}MH7X$K`1ZH1>&U^37+bwo;-=}I;*9Gy-{QFD9*#C<V-nvUze9Wf9UjMcQQE!w zh@txgFdS<!(R;cNCi!5qdA&JfQkr9hc7)sMsCyjtm*>TySvgOH-Y#**((~`4iMGL! z9(2;-jp1`+dMdAsylxuQ_$PEBd(2FB(=Di$!Wm@ghl)+Yn6){jqvbBo44I`gZQUdY zN?=#-NEBu$G?ijo8Y%Zj&4*qU4Lg_Q@y+o{Z{c<RiPjA@9YOOCQk4$qc(p<e=}xY5 z(DeK6*EQ6!5q=!6HT*a*K@laoUz1%gJKd3_%BX&W!G20)uK)JbI^!-mNE7BMG(KmM zHN_^;sOOM^<2X@2caQ(I!&PN$em+&(CX2OpdgWedO-_bF`+PXBoh^_xN3~8dC`9y_ zb;vZGo=JD@ddC6hpZ5;HwZyKL44<7Itz74H?>&EW*T6T+6}GQG|MtmAl{e-$^}nWW zbIr8#8g3fSa47Xe=L@Er6)LsHU9Xl)5n%nJKrHH%xT4rt)@zGTJp2yRy8JLq-t>ns zd50O#dm>mAiFCV;0_xFCu(p0*e&W>7{<<N9+b}4CC@`$Q#-v#o@x&0$GS_MNxxIZ& zfu}WDICr{phn4Wz+7wQKcFAoF;gtd_y`o!k-C5pEp=GKU!A*_qj!oX)pfYs#`=75U zQaxNXMUIO#win53Yv?@~PwegO*txA>y@|(I^l#~ctYP1&LiqH^1LD!rV6Xi^`CMAJ z?+-b~J8VXrWh#=f)7x{PL26{6Wf0BdU8L`hUM^hFZ1ojzaY98LSeb@;+|8>Zk<aU% zh-1Aroo-obX~y$pvvtPSo$!KB>ss{J=trJaZaseT*+#hQ+N6XVE5nxJ3+=!Sf$eYs z3>wLr;`!bF&nQu^U9Hm>7_%p?idZ+Oj=a#%aDT4%W;GDC+@<|7X1~!pDU1GKxp+$$ zjX$R2G+m?(9bnaBPdP(QF(3VUeAn%wb{a$QzED3M@3!Xi${Rn%`^)V^b2rHU^!vr# zhJ|NOHx_Q1$iTnB_|qCDGni(U$EsCO*gFE-<)R^f1nYiWn_@_pUoa(Bt9~Y$lYWj6 zmxIGu`F5`O%90@ZbHX_@`IPg0$f6DG^?P*@UuJFSBm$<3-QJ&$K`##unwQz`XfHhz zSeu-dPNP#?PAn>lE4?Xpf+mnCLjjvA7tbfdSrg7G2K&bI<N1yZ(|N}Of0GNS{#nUu z816!?GKD_~FJHEhV2S6AcE4RltB`1x>U}$5;L$?Ajdqb`{<29K<3&2<)H!{3A=kkh z+C|2}UN);Q>b~Dc81s<6gv_3gH=h5=?Upc|e{f%RCl0*Uw|q-x;gnzlWx}=!&E-!y zs@|>1vYXQjx`a-?Lef*xMKL5&+ZDvp9k<rf3K~Cgy#rldi8s^Q5=E3Jo8cV~<efpG z*!~_oP5>UVyHZ%6ZZM`3zL9auz|uhgdP|>+zRSWpt^NCodzzIFZa0<l{Ks)>OvmVl zN?hs-?u<!wzc8>dgUuQljPSGr!$XUyHA@x>Tkzh!b}y7F0&7UsTX@l}{<)`!@r$U; z!S9JXEp=g{yv#BCl;cdBULqMgvD9}ZrBz<|)3T^a5Z6SEtYFWjC|R_BeEJ<U{JYhh z!^gpPC_V*`BG!Qaik!ADIDGy?0&j&{zM26sgFMa7=GDj(1Tpgi1k;^NQ!N6?>DCm@ zbLs_p{ONi_-5mp0g<PpYX-Yz#UYWx3Xl0sViil0kv?qgZ!%+AAA1;iV@z4ULc3<Fk z_?nuxHT!Cj-%%lC;>}Bfhl+730d?qSY9EtS9n7Sz!srZ=i-5It+Z`+->g01?8qOV< z>3tF_P--`$@nCtBKQ&4VImH<@4T`HHk6}GzvqNQEhm1S3B5*#l1u1I~lRO~plUU%k zW@S)FjO0l3lX>}gJ54~izfKf}v5w<`hwSZerMnDhjVL(25ArK^!z5rtyN+G4koAoa zO$vWe^|s0m*<H(g8)iBGu$U2l5p@|HLmGnFRk24rYz-go_EETYv@U;q+K)c)UpBNj zLDoU6$rraxQ$AE)m9W)=X=Qk>U3R-(BDH*n207thNtDd*kt_$~P2GIw`xucYS6@x_ zBDsp))_E!&W^(qlh5v+qXgKe-F=Y0j;5N^z?RRYTGEq4&C&m6kZJPOObhA?x6RfRy z`~)a>lL&e=o!96ao^Rax5U4WN@NrdY!>9=U!~Ti$iE=#;!4<#3Zx^@4Hbz|TVv=hv zBBfu(MaZnYyNLyEmjOpDiq}>R*eHuHYXV^9e$&)qybJk})f<oYb|tcP(h9r^Z)1nM zQ?(z=xrI^*hZl_9eK@cTcQ5ImJ<CLU8~5IKT}Rvo^g^`syc*k^zIvlB&dc2HkG<eM zn3?bI2==gTyKHBWGcSc_=2Nr7c(`Hhnc-ERaO#~IJaNUMv@AY0Dibp(P*f~D$N5}{ zQhNsMHeR9+rcS9&MIJttEwjfvyMB$B%|IyYea#8khi!w>m^p1O2I-BwxTKZKDVp<= z{T-AeZ-&Nd++;0JaQDMB3pKO_T&yV{)j5&<fFb@ehi2~sw@0B4Q`$MI095+96YH|( zPaTxc%9c(LCe&*+ha@oHRH2PwA=i|wu3Np>C{D~zjDvy43Tcpm6{h`(kP4%tQ?{J0 zI8;9uc<QRwhLii%+FUZknH|54@b0TIK?Wv@*`+e+8hPT{q28*Z8T5}X<Bj6o!JLgg zOJ4D<^A$fAL#2@C2hWwq?yhP{I(<Y3VB<G%yqX5Bt0@PtuKeM!*bgtq!U$#djA>>l zx2JdADR%ZwS`5B=TA-R=*q+R-4MDn@E8bYxJxNayh5r1BbVJ}Wd@iu*3>GfE)-_S4 z!ztDEMiPScv3d*GKH;+_1-}2|8c(@i`U^6f5|Y=_P<^0JVEcqJT-LdQY%ZjYw8+qV zVjF#0@=-Ydu@|T3v1=_Um^SSm2ELR<6IM&QV_&d-gfpv}hMxcm{D9rroXLpkmZ}q~ zq>J)<C_h_eH&(@BNF_u&kI=NAYL3$5FP1I0)_%CNq2HZvCYp4{a$o~Z<?($kg;&Dn zbd?j*1rEBqO`lWn7fbJMg)}N_gfJ*3e<%>%ndy4(7tXs<jX~(nD;=v+6-^GmWuamf zF;cP5FhRL*;I+F}T7y!tY>lQXslixcq}c4&CfQOK)o2hGZmLM_)l|~KF`A?E8c}-H z&iZxOjaVUa-hy+<<6G;B{7&D<`8_tw+@^vDrr#4c=_TjP%1+o#)Uk*ri7<&`opgFB zlzc~VPkfi2Y(xlcOaaH}@O4sR8`*nV87>{i`Sjt(t>}l`bUm+)+xUTTZFt2&V)FJ~ z21b%NDxJ;q@tcJKJ1Jzb`YpATas3$pQqlGKv^Z+@xxmlA?7YhPCM9zBg}Ioop|!52 z?ee&Jc4uoqbQtQvtd79IM`_7Bbn7k%p8N!9rKKyjP0(Mav`$d%7<43yFnN#G+{{+V z2+z~zl5XZr^J>dx%o3UCoqO=?Orcbr=Zeh7>DCMxG<D^pucXMaw30}+eS~gx?`F*1 zlY|SMrs$!qW~)M({zYvkZ9~GSRTa3IQp!GCU91cM_^=ppwd8sD)~X%9>+17$54G7g zyHC}X4l=u2Yl#!8r!Td!A&7-n);t0%_caYEqse*qB8A)>q?1Sa^;xH66V!GTlLW43 zbtFdpiBBSfK_Sz{>V$|yX3zjpI?T55>(34ci_*%+lg^Ck@$2!JVk~9&ffF&BTZVU6 z%Cem;GPa1_t7hC)t~G`8yDZm4GU@8vad&~$QL5vL!6pG@dD!^D9>eu;JDk1YC}Mbr z?@BUwo%O;RDqECEE*k6fv3oZMv!Tmb?K|arg#+dad`AK-0eiA8yxMy#?6dEC3A#(F zi1LYcbjb2EH~9N+F)|<FsBbRcKiS2I=d-<f)8=vFJF={C)vp2{=Y5MijqY8J&9zS5 zis>lLZiG%+>#9tZl%H7s!Yf!@3Y%V}$L2DU)6HQn;F12l{0I8g4(j8c>oB*aGR?7h zp5a6xlhYO4R8!NjIty#2;4rJZmIFoAiz6;#0T)@AuRnA1@<;GGD)C?LxXfkJ`{31{ zfsp<8dzGHs0m%=x*XwczmT3e$kty+?u14p)$VH*V$PN2DJ@xBv#i&}9#7%VEh~un< zu*2G*$&}rkN`}lwAFq)5dj9iU6?knNY2&q3QriwDqw(Ljzu^}@>f)46!boVBINbkp zp?_cF>KoSobtkKaz(kNbphEF{lAGO@&BIdaDtL~Mf23EbPbzcFPc~^(>D_jmlZ#@G z<CN6ub$unD?BduujYu2q2wWbn(TNbnjM>*}-njb=6)xy<u42creaB6WLVB#weR;Ig z-L8EM*bSgK5d{{H?Cu-;>x+Jc98^qJNJ|^<&Sb2^%rI=*v)6U(8EevrG+57x9^SoH z&0f^#m2kR159?h1x(Hwk#&}_cj}rMh-y~ff!^({>Qx*%<^ASSsECy$d+FM!$GK4=o z_+OvCBpf<Qcu6oUWANLIn-pfLniZ}%zF}E&hl?R<{HdzDI(=$HJ3fwjYQ~V`?7}o3 z1Q*ul+MkQ#lT=;cX22P(vB=Q<EKg@XKb}^|751X?(W8hzy3@nv<Sog0;McCfPgZiP z+OXbKqptt+&vPN{$G*I4`jm9+mg9*W!m(<n=fJG!6j!;d)Lpo_EOm?9v02=WLH81N zrB&6eH7L$8Lk=10MEvse-rcczt3hh1cwU=t8&#*Na~M)tw5z(8grmr$g*n<^36|Os z!b4;p4(7lZ#wKnb-;t``7}NW>JX9%7O#6tI2bHm+TfY1}x%ST3a9RPcvAOryz4ezo zH_@jrQ=dFX;lPx}V|12sG&J}^v?&?GH6I`1tv7OX*vrcG1~wK$HAVL#%a^KK_t*$! zUT&WL5UYF_#jin(lQU7-Bpcn6fcVP~o*_ehy6f?=PeQeJ-fli#o(=}iD>tvrkrHpi zj{=Bs!ISvgJ2$TB{0hB@jW`mVoX#ZUrg4|b#43(Vn`%}E3`#pRMez8}=0@xn&|0}8 zI}H0qKjGyvnvsa{-0_^IzI@A7{7+CTy|dR{sj8c;f>bROS)dYjr^R9jqk<Fa9xdGU z-F3@wY~i7bIGOvW8_S53!wyx3?c!z5*M+^W`osn*tk?9++}1ZQl)bg@7(LNpm17lr zRZwq#5g4pEM1<Lg(brFHu}TvqnF^N~vftCWYQVpN4ys+u0^R0{2up&D(r2@A1-6cR z04nL>1!Z~WJe+nkRrvmj%VnJAGOt&F*UFc@r4I7zz)<TITSuL_${}fY#jxHKA9J++ zzT(wD#M^fvxcdPpsVc0v$1@~wp^fe3#g9#co~7|PpGRN`#WT4JC$GB-v@MWZo;7aH zV}}rJi(>+}&5htIc$GDCHn?KBRyT4&DFvNlB1Eeg%<~NL!*3DT-T(%`*(yutlVw*` z+DKK14mr6HyLe9DtE^A4JCy2IgLo1Kq=N}sP&%P~MeAl~q|w<%UkPEP)y@_S>P&*f z-{J`E=3X#b@ojz^S7tTXRev|j;*eXR{>dntRIO(TX1G(~I7fvX%?}-aUGea%b&NY) zTXY?U<t%m>t8)Ilko+~2|2~1q?w{ELYqQb8%WLgqI}+ker(Dl#)jFr0A>)&)FTn<K zQ;}#=iF)1H_bvzlxK3jGJk^UMJAM?W<q<&qpXK#qMy`E*_i6l`bt^Q?X4&Xf>Ox#h zXascWhI5rFqrIxlLKResJcp#1#%o>bofdmlQ%XFCgkt<?B+P6K^mhh}R!rJ;22LjC zdU)K$I7JXQ1@euUjCXQbVel^VJxm{|ZL}PNulk(FKFU~yOi->BvL5TD&8UX*B+Q%d zELd8AMFe5R<|q8lEk3d^eYi%6ZWt~~dxoslo4qcu6IU}PIGr+dj|I%Lj|*<&lbZEO z>mO0kPl86QVFE<Aw`p-u6_|RptK_w#U+Zf<4IT0w6+?_o{6nHWv>h_-X?+7b?t>PW zherPCvN0Nu=Xv|oH45|$s$48qRNxQsae!gep3o~KX3M_rv5^<f*hi4cQ%UA0ld4*4 zDKQ`r>dEl7eMG=ewbfE3Q|{Wyb5z~r8NGjypbZ_B+W3Yjo~x{oy0g`LS?$Ld@{inC zm?e!<R|8fK_f(m(d|B3`myc74$(BaT2HcX~KEZtSqYJ3iyJMr3AY_ucUPdT;DaMcR z>c^Mw?>X^bOjN~pP;+>@3jX?99|Oz)M2ocA-L&7E$qS_eO+)_Fu0xIKNutv}?5wn6 zPZB;{pS7t{K*taJ1F*n}U7u=EOdmFb!QRorUO7K(50|bJK$UUD4i`(1WE&0;QOrUh znTAA3QG{8qG*ZN*yHPoOb4-s)(XhrTBZ!P&qc`}>r<gyHj(M~=qva1OoEE53I}NK` zLuxiGpZSnIhhk(^7-hjY6>u~(_~WfhHXIe}?f6l^lBSdNWp~QK(%NhIRp|_BTst_! z=m5HMlTWB{w0*6S5;4Ei2wIMoMuqZ4WYviq`0OY77Swnfoff-gH<kon7;=f^vgu>= z>-J_}?Fp&-<<z@`cBs_tGISJ+rqolTuiSF+N+xBFRaB{um5JdBA1t%!(VOqhu^qDb zw%S!}y=@7v!|W-&7Bi^ynj(zZ$gZ>*XD+Z6$|30;98xUf*Q2Wtu%ArdYvZotdL<xC zhjR=3zd!qNJ49hiv&>TBra|dzTR%3NE1cG)%!XgT`C;~pjC^+;_I6M3Z}r{B#ur~% z-&Qg+W|>hh`Y1Yqua^2nEnB5^gR(ji8!upzH{G!vVj`;m#Uk$rZdvqegiv7>Xk^*F zzh|iutMO`)j@8_My0@c331SJg3H2-778#;`YMhv3Sa%Mb|FLEcDI)h+^&)8^GPiFP zZrrk?spLxE%(hm03T6gnGG_X*RNDdYHFI~vdj&!RIQ)gKw?8K58<5Owk7ZKLYIoo% zdGz&hIG;U@+2Wnru4+xvn}!8J>xr+z=bo;V6!9|_b4OOYtVlm9;pr&LZj0lTiDr(Q z?nRcQ63b=ZEwe#=c+1*nSnqXrp2vJv&iT~<toUI#iRdo)(0gU5(s2%U*_#e02w6tO z^k8m<EW9{JJ1fjt=azTo$gHs8?2DXFu}sZ;WNVFp1^JL%yOZ>Q|An{RO|&xpTxS<D zg+pZiKADY<z+}PvstLAj04?jt-#53rz5b0ScB)+d%0SGQ=8);g=C!4wl??j`4NOZP z(<Q0l(gO0cX&Cssol{$?4O^Z{9P<_tEv|Vw!W4}A9wGZKe&_IEL+p#4<w~Ugi%-t` zLqym)QevF=xt6998dbf!_|aL4J<Bvm{gi5(%DnByi%k6=zT8hk$$lllxT)TE8ki0C zFjQZpH4AZ>9xk&gw%QaiBhe_-p|voSN%Q7endA7FT`Pg?$?7R0zpjxsud+!m3R?O) z+&zQWTuY)0j13sQ9M=0;%+AP;_2ezf%O(p|-m*~BtY9d{^Lg?tC^9OyAGzK;3=gAO zX$1<5-$o15miv<UZ64FgM)wZ!UT>aR@}jrfJm<#6#zzXluPg|DS*rZQ>wT#`gkQBT z!BKPoeu*$+H^-ifFxYM1GWd(BfHPXLUJyBE)EeGoGP~%;Y4QCGJbt(_orml4J#l;- zC`e1`vrXsa&3@67j!2_}<&ZjYT=XaBy&vHCWMGTqeTJBC4MsR>F;fR!C4dYWmg2VG zl>*)oQKGj}cRYz)86rY_S<7C^P^vR(K4(oD=8HI%-L9cu?f3uKd&{UQ*Dh>yfuI5^ zEfUfVf`X)!0@7X5NQkr&(j_P&-O^IRq8n)}I;2BjA)O-KtaC3A_xtYcyS{IXGsYR` z$NuA3z~i%?=e}oN^P2N+u7F)1B+Z%aN@N4*I}ua^VIaR#uM&l$qzESZ`{wJ_(r=NL zeLYf_a+z&Un67CA@Vzt$yEeP}bJW7Qt>O^T>{b^ul~PW5Vxo7|D-bX>%w*yEI8e0v z6}a1gxL;m~KxiI%XaUd*(vatiZuC}KeB3n9bkQvm?m;-Y5UuL#_@u&e+bw<&`J{W; zoFXgT$syfIUsXXgTcp)+IQ=Oj;8B}JLFKVECrQ24H~EEulH}uVr}Y$&vrGTjG0axo zcP}ei8rfPZHku=k<u$7U1Bo1$`fDQujApcrbFY>Ryl463(h~JTB{z}mM{XZiy!0a5 zIk%IwPwBx`v4vIL<;rl7k-(#O5Q~Nsie@Ht%2o7c2E`<-8rww=mzu=;ZeCCKwC*d+ zAE&h@i+I-_8CycuLVd8cLWO{s$viiLZZEn6v<Q)~-`(=rnoHg%(|{=jrn@0PbEPzT zUi=BoS`_n^Vl@soUn81S^EQSIVcT*QcMl$m;k%xz7|D+{-N&=Lbhq41XG_=ENE7Bd zwP~js;hc?0U|j>URxMMg1ZmBbn;e;@erCvJ!zp62v%YC<lw|j$=*pP7&vp!@-M<tL z<{K&0^LTz&CKh~@dc0HBA3!G;*S8N_g!hJe_?S$+W8d7VE#y<t9cjWwIC36TlQxY( zFcS$xLZA>cSCqAXr^K={d%qU_VK1FgBhOZSP*;wviHuC<mApig)v;=Z%&w#ev))Hb z^;G?<lMB6#ATvLD!js37IHhwI4onDBo|fAVytXxK<%NWQMk&yYr5Jc%1Wnv2R3MDQ z)RcnEFI5FqwKthCFZiAFRVaKn&dDIAa_i0AbNiCd(Sk1+K;O&tUR~LY^B<Yu@>qUi zn&U19$zp!>__FwysPfgJJUIQETMh}q8P}R#Ue>0i?JLq|cM}dQpRd0=+x28m+faV! z9<lKE<T4yjP>IvB5L60EtT&Q0KPqsfXwsV5W*^|4deL}om;XY?R0OBQGh#lsw{}wr zBRE4Pj-GRI(;$#fm?BR+Cibk3GfK^-7|&1MtMV`l{+7MP+izNSOYyqrSS^eD!R2R- z`i@rmtAVcBJM8*()HBR|U*}$i;7jZ{UY^1IsctYa5ms!zRmDirrwEE2!PTxV*HS75 zr`^sL>#x`e;_V3v%rD4HK@KlqGtiE|XC7n2$>ez}Y~8_)#e$8?WAb(^r=z#W0wM;# zAn2-HB0MmQh?g%f_CGEE{*y-{!#QBPifL<cAYA=M+`MP}&PG;pQwS*)`Z^!Eb=s8} zclorJlHYeQd0`uLjZ;fn`!Do8qL|gL`;>Zg;LYt<cfSE@9A|`PexpP>Lm^S>5(4B1 ziZAcpS<ZgYSjuFSxO0~j7z%Kxr0M#z)zAt%pAAG%>xqGby&glm_4gbUC~+Oe1OE$} zQe*4wM}8q>xHQ2JSQ_rL@1*QK8MY~2nLU@>m}^|@R9t4RmE0PK<tz=^1y#@M0?G=_ z(qYt<tXjM>%Jd5P0pehi!C=x+57bTp9JDhE4c}V{WV5RFgx8_<+c3{{CK5$iQl&d; z939WHm&+84A8pll#3u!QL_ml_d!=z#j9(}~cwLrhW9tq4$2Ym2Z7Q0s3#TpbZ4hOc zUv5$<eI%DmIb32I)Yk@TbsePY^9=T}*ml%41$Co8E|n51%qf$8RyAw@#jVQ7gYBW6 zp7&BLM_Ry4f4XoZ2-9uFwFu9o%p{_5i}w9f_n7T0k#v&GigBm0VZRxc!Pd}}<fV;g zt3!+!`1DVrm0H~Dj`y>SI}gDm&IHC0yD&@~k%nW`MLTh;^1gaFPoBL;x$kNv-!QDx zY6(&L`EsabtenVS9-SS<@?N07`$w^9HbF$Sslskwhp&xs6i>{7Q%u;x>+c}#tZ0;b z!)*8I>LSSUNN7N8@D(1+h%%AvIUX4zt<g7Uzc4DFtp=SKVA#5?yrrtVb!6Pu7}dGM zq7KdA3DC%XAn#(oG_P(wyS&F?R!nm@9du9rs6EIqVvsO|aj_6p3EWai%n6_9-_1?R zuXf0Jr(Dr#s>DB-+bgO1T)^Rza@zU3)^qVZ0Te?OYF+&>&wA=)b$iR~>l`=5RPW9H zlvsMEJKf+dx<3Pi&1K|TUgu7RoN3oFE0;N6IIBDvkMjDA>tKddlR`pYOHxqKr^Sww z%97QctqzIa%wRh{eJgb#yC0?i54DSwicJ%nMFWh32j0!$&2dWPLWkOzgimP=u3J?N z_wLrbzNC0`WvM?+#n=D!xvR;+G-oggoc))PDrFL~%_XaQ){(gv$)m<RJX{o{V3Nj6 z04V(Px!<xZB%&dTwFTklevEmFNP8&u(c#9rDCD6-xv0uKN{p8H=VlA%K@eE_QYX!g z^o$E&yD@uXuQ1X`u(c-Iq<m@6Gb>lSUJA2TL!>c~Bo(HN(W+L=<FJXnLYE=Tw$M0M zqjrJMZTFSO7zG9-c|c1+^(2hrD@s{2xOR?{-|lMy<jK}+^l<K#Ha4U5#eBVzx+K3m zt@ARqZ{zme^$#4^24U&8Q6p8siFddqQ++WK2RELbMslOizO3(s3nf~}?v0c!^%Tjl zJO7;UwqF<;sC<?~lC8%AQV(l8Sm+Ps^7baBBh2saXoj+Htq!b<;cY(3Ighx^VCCYz zgSQ6U+T&js<tnKL{u5|N3q_#&K0at(vu3xdVw%g^>f|C-&BR8;;g#ctpKq_vcHD?) zytD1&<hpBQr6-vFs56(z8snnti%X#$@fA`<sV_`E-<0qJ;F<YgHrvX`ZAY`>kvY|O zI%>5^1wV)il=6x_V1w5}3M>}t=pnZ!?<|r(1en<Fr<#h^!>_h>s3JDooX*vb&ENJu z>>*rRJ)$Bi6Yla?rv3X9?3BkdA8(b*@&(u;Dydr=rhC0jeNipRxO-{eExO4~6@Zn? zAYwnJj>_Q+A0S}Y6MKn`(T`B1x45dx3X%J6pG87ew5mNKe77l>i8*ShPx7?DX^~kA zUv`1Xji<#<EtnOc58X$*4a8a@_8b1Vv?axN>9Wzhn8RSezl`obl7C!g)kY!}ciUg6 z>HRY?slYxybI~yA*VmL#8wBt0NIgee8_Qp?fCbr_r|AsJTV;s(8<H>ausO|t<>^T+ zqX|=nD$`}$9UEDnjW3XJ9almDRi<|hVKgwQCmZEe8{g_5uz+}Q`{G0S&?<)w^Tfyw zb5xP7gFGWYb>%vpSg*UsLi$?H>pP;!`v>iIPwBp;zz~tqG!x3(5k{>{y~5)J6{*Rq z>~Avg8}CQfv>bkJdzHk!XxrOfWx|h==z?nMAJV!s%X%@MjhM4;VIUdc<e|#Ryw;ny z7$6D!?&Y%aLK3Z>TK8RcmM6O(F7GnoaoZ@R&s{@b9j|2&7k<)StJX#&S!JIe@87>P zyG=58jRzOHS8ex=-;`R<&ga>WafZa|%^r5(80MK4lK2M)xsM!n@(JJ*`0j!Z=hSo5 z<>>U29BJG!bH77dv(R2eF-O|TB#^DN+(*AiiSre8wq9Q%gpBnC7SZPX_jOH9x3>f= z%96>ZbSQ86*}JMMjprvkto<LJBT4T3gK3cJFDV#xJsbk2fl{8VlDn|rmuV2uAG8Ww zx*rAks&ddL3Wm|v(r*y4MIj2zD((IUZgP-o-6XGZv6Yq{EDf@*NtQdV#`M&wV8{5W zAmH#3hvob(9%0&6oe$fIuIUyPLi-u>^bof=3&HH#u#->)kXWLaR7?@ryb(?!-{bbE zX2Um)J{9fpKipPeaa^S7@VDRhZQ5G!B`VwLYz9wo^2u`Ma-O%zMsnTppN0q?kBcnG zId_UT=%Y4j$&bB_>!~t%;@e+t-m7`V!-2O|%=_4!=ub}D`-Bx%NQv^+S$@-OUkm_Q zjhSY644wEGiIduz8|Xo3u3>pW68$2cxg8RlPeLj;uC}~iQ~6vY(NvRc>bsD{Zg(e$ zR%sT^yROm6O;=_IEcag0XyLF5t=(*e;5zA3;*C$AgPyrmC%1g76;<lEFpj_+4W&Wd zSGGl&{h#Tgf!rz0Wq{S_NYirDmLhd10isy;>`S%-hf}lU*iWI_>efsX8HqQLukWFC z4}B=j#!FM0_M8qsOPPKBx<<fe6cJq{`7QmaAcnOL%&5|YMZN9o!!%tG@Zbw)8S{Y} z>BfWYL4Edx!KJ~R8#m&4f;Zt2S$L4EE(KnJ#9W{Af>i*oC~qVP%+;~fqHBp@uyfuY z`b7aDFBq#e6&|j#G6e`O_VuCf>TLY(JQp6SeQ9OWA0G{8*C%IEPcKB2@nV()Jr2dR zN*5{hJ?;AT_QA+!W^}CSh>xp;p`c380!AeeEqTJfilE`Vx{eBXLXp{Ai;InKl4Y;e zIm|LJlf*v)n0-I}uqsrAFJNqc;~k=Uih-rg$lxiEp-*wEw4Q)v+hcj&=~4xCIXy&m zOvrsdSN>H_Fd~qbT+PR&ha?C(ddt4yl`A&wVlH{7@H6X?{Jb%(2M0rRAmh{g?DnBj zb9u;6l`awAlZnu}=uBhxMTe<sv4PxJlg@Uju;6!m&L(18u}fr}E?ET3Z}bC$YLd9o zNr?nNsS&D_<9*z%g4*z^E^~K;-XYP9bGEh5tR%r*9z=8mY^sXub6qsznDv?X{Ba?m zd^nHR<M?CrX<Y(~#+8<2_7Fss*T}Z<+A+*$5m%()C2FHwa3d@$sp_#u_C{`O1g+~p z`~K~zRfVYCGEu*Q&eRaN2d$~65c>se@*e+({V5)+3h@H>C%*)kii%hHo_VWXwo`{+ zz2V7)^0r`!`=wVDnwLhtPE_7E$Ce!!oRY!wP>M}w_siw4hdA{5V9reGOAZFhl)&Vh zYWke14vE6Y?-z7-hRWP)gNxeV5Yk6vwnx6g!^+-of0}-#y(_2MdzvMF+=Ll@AN-!m zc_FA0PZPC>Yl&MLj`B$-9D9F6m}Yx0+oZ4$E1NiPi&KA)J?Onv+f})Ak1;Jhcu&ED zjA%U~tKMQL8oK+egEJ=O1iLpPhx^ocqjUG3*cJ))ti`u?m3>gPG5wfK@_(iiloNpX z^MXv07IIr5dMFeO0(;}Xk0P^J*9DjW`?q6`inw7_YAR6eCileQA)55<cdVMc+7(?j z$r57{xjz`Lc-k)wE0kM(TUft|qi-Zom!EL}NU~(G;YuSPTIn}mr`}}w$wU1Vpk>Zw z_Y1DjpuFWdh*jkS@W|e6DMrMy@80!t3Z=k-qMq>;{^A6@0*jBJaipP;#lJ4@Zgama zq_Z7wS-sbg`H(r5HOVqBZXmOG_TH?q?QEtP)GkTDnHoXOLZNlY)hiNV)32rfAop!P zna4(pi7A3%5YEm0{4B67(v4x)53?mSpWnIK8K06oU=q1B3e8h3(CRj-1guU;$$5hq zG_QKNhqzGQd{$el5+E!sjAyu~XYPZycxbz|$h9}!YrgLiFxwRgrZ|sHl^tM{uvrXP z{sc#n*&pOT_v<xne@ZXF!ISG;0uCRrw(`fHOU`T*bowdss7sfzExI5a%<1dRpg=?h z%qS}Rn*|Su&v)L1ctePGmkRDE*BEQ&;dBQPFV?DA474@erP1Nmj>CuK>sQDsXS#fl zQ|X7LI!N#VfONVeUYj0J-Y7qJsj|>JDkT4e7GS_ynQhp{W>hrosAy7@x6Gr`?IfCZ z(55b)5<YT0$@pni8J@E!W~CnwCuBYSS*TQO_=SW?v-o}1DlP8y@AY<;$A;CLi({}E z*XNnVjgL$KegR4{0V6urGm5138aMQD7NGIvmJ#Fb=N~}jlR1Ckg~TUtY>}1_tESF* z32^dyj7Q9R6dCEuT9DIQ#0Sdf!rqI|w(C-YoXl|{W@JL>u>nOQ&XAi<<uhG+xj43^ z0UKL8MYulV(DNyHeRMZ3E}$#xz190PyI&%d8ZS!twQG)DvW#S_w0}e`Akn{*=Aeed zp#O5};(a9tFxiJWjOoH}|Ii?eI*zve3ahd!VUnh)^}EHOTb#19N=A6%_W@nE>}F9a zqa*rMIfJ_VZ`Wd8GXsZq)I2KCpJcz#12}-eWd(0!A-sUEs#$5CXwu`5LnIS-8~UY? zY3;5OG5^q7h1l-YWI?^u40G95Telo!w{*}YmE?|RW9YlC1QwNdowk}p+^lIpztOxt z$dO1!+z-Cc=PSJZ<4CzltpBM2OdY|0+N!Tzfu%`=q<@x}aY&Vn`m9LDdCAkM#A9}8 zKcnd7NUgR6RHrCm#@Q<2v4CubO4ERHnwCjHn+hVc4ov2iD^QRqE#f*%SfLn^k@j4E zCH&+Mnf667{RU~B=BMENlDIO79lXkC!#r?A46a#!nd@V~8zXko!5a~(<Ugu|vtJxP zh_~sjibd;x2HU|0nNBPxee0d!;`dy@aEtt<?TfXYN$p@~ACFIE`~)Q+g8qaFcVKHM z=|On?#h2NE`YfFSG50S+J8()kd_2afp4<Y$>+cH{t1mYNo!c^>F2(afeF@|jfZV1u z17K?-U$>e~Eqkz^R84i#=iP_P>CRXZ)Pi<TvMhFRhU<(f+9FCn@^mKDn62i^;R$=V zA*yoAqm>foss*fx{H5DN6g0b8cpb|lb$ZDgyK6?K>u<k$2+}!rHb-y(_QeB+^RJhG zngT|}btAj>c_q=&@TqGnH<L)z-)&0ZjSLnQH6NzuiC%d2o@-d&U8ChN*xmD9Fu5Ro zn?`Q8QEqVbjX24psxkq+oy=a->7gS0V)rICM4l!jQEC04p7mp9sJLsmGKji|q$%}3 zVB33Af8%{jE1{Nrhj}fSAJhg^=d4C+)b@QZ^_gt1?%hLBDb+oa`0bn@D^ylJ&Q>^b zTPrb;>h1qdm`GFXE4^r!V-~P&3kVwfoJI?&!>Qc)*`Gk_cY+*#zIIEvgVQa(@8!3T z;xY>{3<@MS02L$h7u#>Y48RtWt&vOuZZ8GHP+v&T4}v%$XqAfj=|e@U9frU-7U@vR zI$DJ!R%LoS?P&IRhP9*s(uF<1v55r7QFO*`DqCGtC-o7$E>VAnP44-1SX9l4Qh%(t zJ64#^{S8ngA8=caPP(~{^gRt{k$6@?pR=k4gFjKOJNWTl{=C!okL>#i34FzE04kax zX7QX6H&s@?ih^dzVsQ9_O}(@*@Y?L2_2A|Bx==tRF7@6!K)B%Sz%YZ9lk)4dWL@iD zG_DDplNO3*_km5lGWGk{1*UuL&GjjhHw$*5{~d-$i~U$C2$3v_zP<@vOc8bPF_$U_ z^^+NU_NDiqpem;6>WW539<uZhonLh|;TrS4S0BQ{p?-`A%C1loW9CSmo79^o+on4B zT@r5d6xc>2<Yp?`oTy(&GyqAfY3p1@0E!68RQ$OEkTg<Jj@j63PB%AJkef?F<`=%x z-9MOP*I`a;lI@!+AUC{vTsR^eRj5aoud(zN<Y7~?wDV?$4^Aq{J&c1{4|UD1j#6gp zqp+>U4;mc2w2vt^5!%icV4#^$K$(KOZ^8QpI&uUX-8>Ff!d0`DUs)*tUh#Ted|R^I zTed&A`?n|VUIgLpBTov+2iy+pgoIF>X>CnAD4@kl`@HPfk_lTez15n)Z>LT#oAAza zd7!e^V<H>ih{^Z=L+^iXE|e&j$kVJGe0isaJ04;=3VXM0#brJ3l%-^k2O*hSS{YB7 z?-DUbIP_dB9PDE2FR_1FfU{2`vY@#IfPa_Q{to_ax4O5KZHFruJ=^S!p)+0F6^h~_ zLYQZM$AeD6o-%C;-CU958rz>apY~z1XkHH=1{g2<GVw#(Hlb4j<rW`OO*qUq(QYwR z#GaB+X?koEt2V=Rt9KSUIKZnopwKw$#dNNuYeivpm;ZD`6-gVLY4c2txcov`6-Ul0 zLD`Q7%o0vrMZma#1s`SuL_U_&B(jiCi6I;mmkR6`N3<(ELE%mL{gV%mLr@3-sBnZH z2n)hJ%D)9?v+j9chsKkisgw&MYz1b^(ex;`G;SX{P$=5Y+6i%|$z0?QpLBLLPN>$L ztl!A5_%hlV!kiNBd`|Df^S$W?l&1TR0JVtHk+*78YwEmCDnK7C=)BH=kquK#M!-r^ z3A|yWp1X?U?2|*j{2rqhnL^n^v=2OX*CPA!<|OeRg9^Iq4^;P0%82?=b3^FkI|6RI z6$H%dVfhkP1nQ(O^T=km^BxH4_hiZ}skb{7C%Sx!NAs#HXDWUM-###bDt3q6yu~=r zY1Z3wiyrs7xlgIN=TMFKeq?{nRjHAfo(C!4$$+3W$Qi8l5ONr%PuX<75?a!(SV|SP z_y~6=>7R>wdTYw2LyId%>YzNB_Bz?w#zRoAobsecO*_J{h%%aKn`W78LIgYFC4XF6 zsJ-!M;SeNN`&HIPIs(PCwknxj(Pq7KlCKF`OjhFP@PzZ1&Jp&BruUs^b@*(IDq^JD zEj`K2ne8$!9`VR(O9nU3?1oN_jt~WxUb2zi;H~5BtUXP&g|D4OY>$Mp2XomGu?LuH z4V*RDolCH1`i7FHp$wV-xY~LR=)~d83F;)f4P4NL5LUgLZBsr>fX_OBUHgjhooSh; z-N&n~yBI1npTNo%5-kPc=AEGbkpZmMuAs`hcd$m|EOhst61MQI;I^0o$x2MF&5+M< z)+5k#a*g07gJ95OArd%@&%-e{idG7*$si!>4^3DXSy5P?Qu$rPfOK$9O=^ZQg$Y|Q ze)R7vt(J7Ls7SicPn;~^oI2=Ipi{|=U}ga(PVi>ZA}HUsMYESL*=evQGCZC9+>ITy zJyWOGf78h7*bD%XTnJ>piXGhbpqxIKlxc6h5>}mOC;~Wjl!!b_YGfX;-DX=R+s0EG z_B$kOa78A}fDXHiOzI#wWq$?fC!d}Wo^fa|lhz7g8`rz@q_4JU>jl}u+NJ2ypGX(9 zirE(<%(!L!v8c(|z8qWs8+-`4kegUs#o}8S#n<|Z$o(wewn~kB-5B%!r9}hPpv9;R z6~BS~Blm+VlGVXuTlH#_*Q30e+_Hk?%zYyGLESQe!zx-f`Id$argoWIod?WKr)sl$ z^9nH|pY5ZV*MzN7FEx6^&1YA^n{=F4VF(Hvt+eAUfP>-z@onSuT+M2w`dPpr(%<(0 zeDB!$C;nu2Jnl6HlG8&~Y9}TimJTlGCZ(3R?g+KSZd^C(X<kFSHKpjz_+VG`D2*>R zT%Vpk3Mjl4`jubo=mQ?ZT@jGNhsx*&eJ))5vSkr1x!A|PxRXZ@Arr8S%zaRFpTpQm zJenP&B+qC!SeJZ6C7<mzzjIFIXh1T$OkDoCBST}ll%A2Tc-m69V$2eth{Xx}v1qWd zk5!jC9*mle)FjHQlX|%METXryP$(?;x|W#AJ^RKu&SLCkIbPGT!r3N3@#&F5SbHq& zS>-!vwxJSJVX0_=*yG&J1M7UoT9OMD16Hi3Zg!~9QV0=-&bDjQzQ7_3HCJPnP8I8_ zroE*)bAEgE#@ZCTWMSZNT0t!a7{dO&y3&P-51)!{J6tLqSCia?+}_s3wz*wvDGOY^ z>9{%`vA{Xk`n@3JmCO2L(1xJf$-^*ryFyr6Q63>AA2ATUc+zgFdi9G;ca!(-i0;<k z%5&4xt=SDw&7XA&-2O_HqMYi4+xS<xtAX}39iM~ty7p@kJA7Sxf|et3fV!9N`9&cw z>Bp8caJGS+RYB%~VPg5Z->xcGKjMnn4kF=Hy2`4<oD^OH?JyH`dC@vxb;ltVgz;J2 zcL))%V50nWZJ8kRs4+6N;*ZH5{5Qk{u12rVw9fC?z>bq6cbji<BTCo^c73EPK*CkC zwIpl`Rs5WFjhhR*i`~AM*PhQF;OLMV3MSi=e;$7a59<s9(p>F*uyl*<>hRFsotMUX z=d=OA0*v)v>J*YNy+RUyNzG)c=~4_}Jyr#VIge#q#5_|jE1pU*s@v?^t?pGBZI3z0 z^!rEja>|4KBAi_wzjp4OebX(fJFwnPZlTT=2?jp4EWwxvL>iJ&8{warQ)YIHXmmU@ zvR!c&(YUT|O$aK~`y35lS-khxN}hc}RYJu7-|wL|{M;})q1cai#JP!!GxJ(&ueUv{ zv*FRmC*ydy{KTJ#JxP1)7lU(Q@Q$N7OMi}fAAGxM<ggb6GZukOgJt$0Aq32RDS-Lt z%63>BAb4SQrk@@AYCE%ac8lKdI#;#F3F;@;gSIFHPyDz7m>l=vJJT^z5_G^3c!dC# zn453fwcokg84yD`apAO=b03ADTlK^Jf>#nLEwd~fM=^JzUqaVdFif<dx1&4DY{UD} zyv)z_nwF9B^DsiI5U5x0yAj7_whQ(Ax%g{{sx>BIdnVj{vwDidtj9j_lEjgKO(%g= z@-g9<03m_pNNQpN?^ES^qMpq7ai<Np=V<Gnu!R?=y%t}(JNPO<b`MrH(ye{o?H?@< zmq>S6Uw4=U^-_wq;SymPz@QMfx~l9KCB}Iy4}@#I^zoRI@Sf~-X1*8Z$yLEF{3G3I zFh0NLZ@{N+9<9%?>@!&}GOl}2EsRv=rAtL<Rm?5XNMz{G<5+2C*rG2CWF!i84Y|EL z&ckyc1iUE*HRZc)FR)@-LE63LJWH#qK6`x*bT3U{3IKdC+g)7)U{T^UzMzwBm57<q zaTOL5L|W0jixEuwj3Szq&F8{P-jwzhH^Aj&fyzqBuEJ^=79B^k%SesqIt8m_SG4*w zbmM1H(A|rybSo>rg+1WTrqS%?2={0o&5|!Utc&uM&Mxj8+vjbP^en%$!v5uT?P^VD zDY2c&VyWi-+|>?J8K^RaG>8P6p`4~B3q4WAw*CA~bG;KD%IiL<ownK)tKmNc_ZO4f zJd~xMn-6{^_3f7v?0we}y@wUe+r?#5r-pGnQnt#>99AUFIGSln#H5<#CI2iF4?`hQ zs3{gwsj!;AZZ_Pb6t@gW0;N`iYRMY;mS$$X+0guh<D&zR2;G`%)GjM>?O#X7<N0B? zuVY8SVcN=Q((1+v09gE}OU~P5O_v25zawn@NU6!vm4#szRsCYAseR>=`z8o7%yE99 zQIoY&3wQsmCn6MkyPvSdteOk7KCQva7YkhOEr6l!Yzj#N(O_adU2;g$+j^|*%um@K zc8G))oZtda>?yn(s+#{m9(3@s>bq~19p@_f?dyV)x$@kq=2qOAb4HzM>ErI{WO@M) z)<NsT6!>|ydb^<dyA_r?(53Hx`O{sA({`O#rt(Lc4~v&GRifXi_g8SXE}!=pU77iw zji925yXjUanFMiBMNQibO?a%kO@8k5BY^tRm9F-QR%9c1pzr$p_CH+Yu|A~YeDtCv zJcA|iMsN$7*CKV}dFCyfGOE1$WzsGi{dw9ICR4NQh(>~{8|Ft)n`G<GXO}7X28QL; z<nzp+em9|?Ro(Y5g%;HFEeZ_Q<Qt7UX;6CVnGJJ1Xlm+fEc{N>$lHccliLF>fdLZS z&yItsVkrbn<UgC1ei`Hg5onfSkolF_ww?T}YYX3Pf?ENQWq+uWH~69>k(nvt&heGa za?jbzFIl3yVm23gst#eZZTqnWOEK9ti}0Lt7sy)f`(cw(ienP>!G$~~(?KmQb#P5J zSuMOCoB}j3JTPoW)a>iuy9xWWxN3L>?br%sL#yod(~8Ffl0Eftdh$n3()TW0>9v?& zyqL_p3A5%IM3fQ!7Q!r_^x)1jU_b<ec1F9Yh23qe=xY+?(({e5{9sqg*zyKm?*PW* zlB%oqVt?L@>;uRBP2%CgrvV!%-^@Fl)}CvgF!xAPtGVHbn6YsmZ)(lqhVB>6zH^qV zpjVKBZ9H2|#UH^nJ7}kthCKGDRfUEtXFj{!61jGx(&gyo@=#G5v0t`QZL$60*Ac$+ zbqLzvYAB4JoDk83Cv*`IC{Ti^{|cbbK6xeos#Y>AdsdThyNC;+9&L|>)-l+KyC{PQ zj5hrzmdADJ9AF#8`|01z-Wa)4U;{Qr?+^w*4yW$`l&>Go=JUA=`1TWD-Lft#Iy@)2 z6TzCb(|4YX5J$xi)7lDz7B^7dx+u`?S`dtmIOj8GUP;T{cl-rLD^=~?L3vv>0m`)L z4<n*G#WZH`6R_zh>N!zm<brnP3&-~k__^PU6a2)2q3G`mnYW8+7CwQNFcYS$#m5DT zTFu7ZKDJA|Ep?r_TVHX^fJnh1I1EQLQKeRkZeg@YF0w8GfgD{!U33iC7q|sKzO^*n z9;SOgh%7xKh}e%0#XvQj!c+Ags31~f;C&8RRQ*=#c><p_hl$-vo%+)CoK9}g+he5~ zc#Fl2G{dNo&aNoH*zNDQfA0L{7%mIAl=0(Z`L`rvb-FUpElstG?RXmwWt+G*Xvd5> ze$M{#Z9tQobKXD3J1&uTe-uK--C#mvX$%6(Z;LfQx1fW4b6|}sb+Zwzx12?KyZf#? zi_}LKF7>jz#zPdN*2?9u$pu2+fu+YM&f)*)X`=|s@NDEe;{q)7;Xe#o)vtcG5+$$e zdMEzJg6pu?acxGQ1l=J&JnIsGKNUpiv{whx3YOvPZ<{(v{Uy~<pKUyJ(-WtA=iv$M zVvNFh{@1jJ2DM*Zf2InnY8EDacO`7|Uj=W27B2Yf<i_3GrQwj9{7c-VJT_56RQXFv zizq0IcTt#=@Kx)fGGt$Bq79E7Wf>rweN8`?sIogi@Z7yb+nB=bQf38{6Q*tBZC_Ex z*5JS^iXC)Nt&DRZ;fv6Sy`a@!&<ee#ybBh&CbMWDEgye)=!@7TDZy*9R$`|?Cs?;1 z2mA;ul({9<Iq)Mqq|D&>Qp@hFu&0E}w|XDYmgVP}RiuL5xo*E(e1d+uyw^^fP-oj< zIn-JL<iTlhzL1?+Hkh!__l$U|-uFEOHSA&*d?!;r`9`m)*r6iLKw|8@Gu`+dP<V;7 zpN!GSmjzX)`v#}&g&_)csnmpq^O}n0A+jJfF<vT94CB6+mx6t9C4)l8N(iCOr63I@ zK`68P2~n$TDrI)@rm!kQ@sS8Aw`Ex9*AJbx-v?I$h}fw`FKqQ=bMRcz2Ns|h^x(XX zg;Dpt2G8&SpOW0T!@uNjW(WM}{RZbGc`}e~hGRJtce9vp+7yh&sAV393 t8LS|m zM|BQwj4)(p2wk_K3r{dROm1!lNqV-RQIkSgp>u%!Hw1^X0BY=E)F>NyL*LSI;mNEl zafV#ZBV2k#MGWVcmq_UlO(dG~=p|Lp%rYaU%go1G=ola6gHASljz@<Cd@h@JVl1+a zh2=;GV?bAtL=ZbQ;7}ay9il_k)AW4lv&U^huE%`x3u#_kRgipnX@SnQoE1R^;jry< z(k!;mkU<r(OZ@_1Qn8U|HV64vKNGR(v6alVJ4#JvvZX$Mp?jw+N)@UTA)9?11Zri^ zR>tRgu9mgrDSfI!c=u>GJ`7-#Z(?P21%v^R-rL77v1OvK1DnE4QFWxk?0a+#J77hC zuHjJDSXi{>aB*`Jg$HHVgT3=+y;PN+%cOgDpKSMF-)n7G=Txd<FgT1OY0+Ox7IQ?= z9p5=tcw`LfdFE|kw!|XC>ue(c*`$Uq#bR%b8TUlSB8cb}Xr)1<{Sk|5EG}e~O(Dt6 zftn9FY>o|MY|VY_>qCF+$1U2G=qLXGv+OCV`%-47cGpyl0a;Q<PXi{tIG96sx6Gm$ zlx64o12yZP1^`Zjw#U&{xC~!E3}DuDGVcP(msCgt>i1@|vMztxSrrZiV>4PL=mJ_c z{PAUmZG%7i0ei1HQ)3k|qLbTb*wRDDW~Bx%hz3o6fT>UWbgHUq`C$F6Y?6Se{PFx7 z*Tyg|i$@EfW@X$JH_Rd-e;+tCYCI><tw=2VG`o(kUy?c3!)DHzC&u0qCe46{;R%?l ziiyc|cJwWgOlilY9PU-66TkTkpf%-m7|kM+{q#q1&9x3C(C?K%R{vC#s5yxvgTQ_1 zGBol|=5%MM(4zF=lb5ea-Gt0*j>+@zHpK0BtE|%&wM(qig1N3?Un4o~=*+6?TlrQ& zmkz^0^!K-Av;mHX5YtiEZNO)(ue1B+A{E)ZM#)G6)fOXd`nUtkj8fxXb_jEK-y|K2 z?!cSAgD94mn2Gya_M^;)Df>4kH`a<DPF;<uFz?T$=Q39f!z2{$Er<v7_AZ{|LzQni z7al@Ik90Tgu2H+lnfK0GaTv|>YwZt5h(`W5_PraJ;neHN_@fd?|Ru5T3+7I*{ZR z>oZ%qzWvQcYE|f*j-fHLvs-4c6)l+8U_G@c2XB;rLk(cXbn__8o-(`Yi*Vuf6Y6^# zg0N=PC};a^2ul937pg+qa#+4ZGNTXrDJSXL7R$Th`25QRgbzJ3FyR=vV0=R~n>MJC z-s6gizn#s1jyb&rdy$0@_`d?b(@zadh*==Kv1ndla`6GC;&sCewm&4oNHwmjGwHkC zA8%$2uMU-T88l7UcR!zfVBxqtLW4!b<}h54#+Lr0OnIj)`+{B01uIv6V7Ur@e7NkH zt5u?R{t5||c~@8Xi;}HxxGQtFVpa$_M4D7p4>R1qU1jS>Shr_4bahpAWmfXE-an2l zxg0;hK6ooVYx^A3Pe3k-qu04BUg<6Zl2HpVsBoQ6d;L_rG`S_FR@5WeP4yKpa867j z0?jfv<^K>{9fH`3+?dY2jT2CvZN={L8s<SrYYkVvewO^y7g5LtD6!ZSf<1S0`@V;_ zirXuddCv?a^Uyu~=nJT9GJ14Rl;hLEMa+m6{646DB$2-4g4*6S?^mfk^13bypIwx! z&cDvK8sF9>hSC!A*ubL2{PCo!V)UbVpC<Wla+q(#t-G%WN`l|?#DC>Q*xY%{taxdU zT6?KUp@RfKxLBN5mvAP<5CFAVHr*=L3i!T^GOf(JISDZyqS$J8Fw<fW9J?^H+7v=- zH4;Oo^wBq34Yc#oEZ$E-bh~E0c_(GG5{IiR(y^MOQLuRVOZG}OHb^XrM#(q)89e#v z?mGBv$t(@tC^;NsKK$Zl7EuM2b}y)Qg(ubQe#9c@sr0MwEVCG#83`f{zv+Q0c;!1j z`o6CS6_5~0RFo~p^!>3TX{{~C4q*l1^B@}dB{&W6)6(W1Ot`!cL6<hKm!G)K5ZrVv zSj%U3Z*C)%o3<9TgL`sac?$n7T1$>-K#@wAcXnoyBdNHok<=*qMcJcvvsw>d34^d- zl&%lPnnb>Az*fNh8ZlKs_)=SZy#+X21VJ|Jx~5$FvSa46f5fi=IVd5$<MDjggf!FR z^Z^GYG#+r<&Gg)qdeWV5wK}Cn9jg^+>USpIVgKakyXa>v?(oZ@<5s9ywT6BtL|_a} zvsS}ZqAuH*QP0sgTHbemN?k-<rTJNKG3&x$Ru|sZ9c~XdxUk5Y{sIA!_&?)zL+HsU ziUlw-AVYM1fOX2_D@e|lwhUQzW=Nu(O1R-RF1zGYPnW%4o8K54<tbyA7;{XZl`@n9 zocE&-t@^q$WBR$<^0kNSGSQQYb?^6!9h+m86wiYtM$)-~Q+YOFB4B9VB*HtLG#Xv? zEi0&(AK4c)US6t-Qi*RA%G-_2>fraeuoZ<ZLr|i_!|<yT>Q#%@H@n?EMK4p)xgtpa zDS^+m4h+fAg*_<)^`%;V1)IOwg=5asZ9X!68TGQU5K$1jHR=mj-E!UWU;>nfPykJ| zg77_cY#Ri%X}T$XnC(V2fHqjbz4t}T)eWj*#eJCjOf>QHlg0E~h$dwH?37FY1YHn8 z_K+k3A?gO4r;*1)3z&bt=%kQ~AatIN*`WHp2+^$Cbe|*wyXQ1=73E3#ax#+JL8}AL zOoN7>NlQ<Z?cpxQ(J?4m(P<W^M=#Ba{SxHD5HFWh^F8V01qSDLl3_ago6FRd8`I&w zYg27I!iS8YB`I`)b9V8{V7{8}NST>+a%V68nG&2zg*QCXi^p4V@*W(Tl2LSvQ3O?F z^$CTr2X)yJcXV%NS1Ty(rvG$BugRet9af-0nE(ue=F~4Nv?i?tc%$$2N=FWC2*-;Z z{5F>fnfdIDV-{4Jj<h=_s{R>CB4SFMfD<Bq2OWw5D+zbpbHwiu%lD^$9{d_HVbVF| zP7N&I&hA%!I2J%~9=r^`M#G|>>tDLwnK&Z7l}&gAgP8vsjo}RsY(Uf{pZ0Rwf?~zR zZwbKR6LY^$2Ds6_a4$OvBCh<8uQOmjt*0z=ZErR@q5$5sjUxcPY=2HrolJ#*AG?lg z7%;Da?DT$)cTxJ!{UGgWfF(wyf{q>#jC=`K@4ockYkFp9c6m+;hbv&!>iOh#NY8%% zckhMRiJxkxB)q!C#$sDAqs-*oJ-ejW4WP}@cx4|!CKDPib4}ieL(CgtjpdXonK*Bm z>dZ{@LHtzcUmczB+4?Pbn#bMsTLCvc@v_HK9#6Vc(N4z0BT9eLoys8?t`@@S{O8+i zpT522oy+rYVo(PQV4)x@Sx^S>cyuXy##-@t`H)}{KY78K-5mzn_fqaqt;&1$*{Q7m zb(g<(5J&N(^$Z6Oa=!2L+miqMs=qEe`D8$PHg)d(@Tn~j!a4*witXOIn$#P{lyupo z(K#2!v*+C=QY8I^7$k(4GLhsOobI_z@zmw)uczO0$aC5sy>Ao9l=r7eDZdw90JKhE z@wJ9QLWzHq*#2Wxen09V(JA9%SD#E1+v-tTjNJKf>pxxi>vtj|n5R=DLREa_{|XZS z@jtxePSijba5v>%CLq0|7oy7}42)2Wcpjw3O)OdUR~7&FWB$HB3eySluP7pq%m0Uw zX}_=I#zl-~um=W_o7fil9qB<7A_hh%%3^Z63>#A}oc|v?k9Zig^ix}c!Y4j|8_9J; zVkgE@4KZ`D8TlRGoEb}|U&a!NNa2K@+I#eAf|On)*BRg=s)G_5fP51{l}U=^N*sgJ zrt8v{bc264|KH93r^cNL&%c^~5=H#0`Tv^z-(KcSH_k$if6YE%jsNTO|MmI*27Le1 zMxgy0@ckR@TXFn<814V`Tpqg+iLZ9hv}TGW88#b0kiip0PpK=8#?+JUFBvf|mhJWY z;&aMc=>q8@h_X0J*m#cD+uP`>B6lO{O?VEH?ogG)N)^Xi8b!Fx9p%KgC&s!8bN&=I z^_+7?;9;jpCuK8Q?)2T;kV~O{&+ipLD#KX+syhA?pL?#{5MvOc!^lX1dlgw8hXT3@ ziHg~y&U>NQwrL_w&A@P1fmh(Vbw$N_LQ0-+lmDrLfGDGgxr?_PhJ`*u^Dz}Mh2ZQh z{`QGd1iaL}?TjACO%ZFpw*P%0#G4YoF#JL{xQ-kXvleywe)0dnOiu1`Q5r@6xu9*z zTQ{)>$nr?ES6)#%&2_3Ikn_zqOo{&<Z~Vs_;uxc<uTvtf6TO?F;Wa85jVz76%QPWV zD8WV$8FDcIQ6Tyou6XvNHw3pZ9BVj6`dkB~at8T^f)W4ZV&FPwM#fFdP|_BTvzz?k z?v#w^ZW!CmFP^XCKI}&JQk1Cbwp0hoW{_)?6$wZ;G!)}Oi_c?l9X9$4Jrr9S<g$|C z#r}c3Qc+Qen)MIl+TYuZ3etEsV}0h!kaN?~B}g}v1BJyI2XS4>+pjDl*0e}v<t@Qa zx*-}O%vK3saU>v$h}T8N+f-X;T!05HFP3F8Pz=0AZIN#-Ks2yZ!F2)z1TN^!LB>es zCK9y{&2{?T-Mv?ZkN=k(fGxa;gThi7>JCLHxOOMf&HdL9{Qtxde20Ez;pm|^W!LFf z*QE6vfN0)8CYFFpB6Dh$3x5da+(lv*Ch!nuL0pFvqRc>`(}kJyhYHMZ^@kIj7{;%{ zt9fm?O#j-3|D$bqLb3ef6-_(VQ|Yb$TNAnd7E(Ek+&(J<`)rI(Kiyd?dBBo36kaM4 zDL4k^9&V*|Jc?+Rj8CY2qIOUxd7LZdaxDAL!%BW{Col!-D58Z#<jg54DR`;JM2199 zts(QxK4fq@BFurzmkvlQnwK!<gN_$j`0Gv8Z3#&HE(8TP$2pXTg#_Y)FHL=*`@EJh zUhMu?$W8xI@^{D_+eIgWn-^Rkrle%AByXMfn!YEXi^RWpdFfv~eV%}CEwo6VhX@7n zK>WWRD9uNZD}}LW*b)!dETY6yr~lCdpkK5cD##y>a)R~k1=kRh(4U2h7-gf7P@Pu{ zf2#KXR=uALC^?ll4)>1jHDXzi;LVgcHw?J2*B{+KCt`C?%DBGTfSrRwy7OqQVn{6g zNgXR59$vWEqqf`sv5UW*++V+o^lEhqPO4%|p$?xalAvW}{X7o2Nh?Oy63jP6MKn2# z#3Z1g9V#@$=)4kWhW}vaL=sY<pt-g9)R=XHS<{Mm!vz;y&4rYd3`@kNjML>j>Ni71 z14^aF$%yItMO(s~En|^Ie1Ip8_ugSHDM83lGyKJi)~VQDnFkNDd|$rgtsRm&vMi<k zKR@%tz>2Hweofi`)sq{lFicAYo%ixs7Z4YR`kTY?2-o>YAbNE!y4Ht|3gjK3TE)h) zOAI*=<B$oR$dijYHEwdpRW2&z^0BfULgDv6-pjiUp(Vl$&h%0HRSZ7El>Q^e^Ae%N z*bT>0Vjz%oOe*`&Km6@tk;03+;TN1aQ$SyR3T-j$+Oq#ps-<Dc@bs*wBRIl>r%ZFU zBTPwIFp|~3{f!xtJ3&xC+?a66iBWFetnUlwpApqM*AR-c6*5NudCdo(uu}1fFi$S| zA40q{5e8y0c)GZ^kcox&#MPfbfZvIq2=HUi6Wg@P7;g@_Mu&?VX1kXhZ@aWD=*+13 z#<(rco8C)mKIs-AvUo)vg>doc+4t<xN+K``o;D(IK}E*N=?#z$$yes6PRU<%&xzc? zrY6Gdyx^yX%w)kZK64XMW3N|hclaVP5tNeXhVd7^d<JhI?DB@}LsDF^92X?;b$By4 z(a4cq8H^oZa-^{wF-M3=&pRnFdcZFrGxe6R7PksA_lb6RPsD@|J{A;eF$j;S&mZrb zO%M=J<#;4{qb2->)Po1$m3$>1KhCNnx48^yd2u*7z$t}nVK`8BDiz-tw}-acvWX=s zh6>(hMa-l8gFQI;-Jvw4(30=yjRYX~o4jJ;&=w%~+L4lx9rR&g-2SfuL#ubFr(sKu z2+ty{g^T=UP&Fn}j30)xb%=%wXukLLdvT(%zAvR8zcT8e!b^o)+EWr?j?O)g`osAm zXG$e9fsrnGmEO#~{YA46>MEas_}O3nrU!^0ao(doh2q<0-UIvMsvc;w^BON6Y)q-t z=h};vM7UHHtD_Nj9BF2fZb&cRr6fgWWW7WTF|uBIwA>S&PMLlfKAB=1&MKhuvFyB8 z3SM>`T-*^Jfuk@6|Dh1A!&vl#WDu#nbR&8df=~=c$Ke09^e5|&CqpT;PN`rA0)NA? zFHTj#8{cYGn@vmjxKIKELtnXu;Sm!vg>lE1v$sCN@4uk9gnsR)z$xx>Cem+zu0u&H zc28^>K5Fxm=qd^G!-o&?l2~OwehTb>r^X+@colQ(xud^r>^X&BsTeA3%1VJmM96DI zP^a(pVF>PiYrXV81qty7T}l-2E>*W7o1f-7xkgKP4gy}4`rqJCKCnr@p`5CEu7R<C zN8xD6<LR3XmsQU>KQvilBwvi<^aOS1&JOgQ=g2$vD`8)8`q6HReY~eORj-JlCI{*F z6cweteOuMd?0AlstMaQ)b%zep+dZl2W}>pATBl6n{ND<JBQk-4No$xGy1{G)*@dh+ z>#$v)c|4!FwH44q0vWO7_6JJO*njb6>o~zzT-1?xNTZuLJLodf4Mwi#>LTp(wiT#W zrmv1XsSItliSU@I9;V=3HMBX*tm|#$ZESS9Hy99#wYQS?=`#{b)X;@SuF57xK5dGP z*^BHe>j|9{okNKOfo30E^nd@-b@5L8cCB10ZR@+MnI!OG?SqBO$Mc(WO^%6BBo<O6 z9QS?l?(o6>n9Vv7GhQ~=feJip)^nuupab4_lcE|vrq5cb7+$#~i-u$`pDR(~+ET5* zHE=6@z==c)X^FkXntc)m0VY9fH)q6y>uOVfaQXNL&wdFsWTZ=JTX2W;m=8`?o%56c z$!$RJaF<f7Y^T@da2TF*ghQPY{8hnbmuL*_X8H5!dqq)GyvRg=k{k_>3V4Oreg~hK zkcqta5GL(C^657ummx;35#e8-c79Kai>6xct$UJ``&|@I3ta`Nq8=(y?r-Vsc=p6W z7Tw{cbYE)sl0{$YG*cww&i-MT-fvg#O%=*piQ}wjAaEo14>NRrn;dZer|Xn-qUS_B z-Gl_%hsl3JgXld`?6ozKQM`8ZL=L%*Iq?y~DEa}JFj7*YPYQ#D!fd|qLL7-r_kv-5 zwgCW=NWD9bVG=KuzSsDJ=of#m=VujaDIH3WPXa6f03J;Jd=2Sd)uH3DBlc?5wP_F8 zUZJp{V#ELp@9S$%uR#AR2dKt(k>*r5PF|=~RM<Z!_1NUtBJEc%bDo?N^?Pmq`@7)y zlCQyzgu(?S+JB$I^oMK1^F<8j0FWwM)rE@mhRELeEd2WKNBGD8xJZctAj7X6#!N^& z=-G<@zqv$8!|S}4)Xq5Ve0ypt-sWZk84^<fjsW!z#er*Itqg^aaXvyO=Gb}-$q1`) z0bX<S+&^CLuhso2?0q2?v9<6dqBhRpE35O{ro=(s$X-b#7kzmQg+go>;G|3OjmWQM zMZ-f#`RgxMlQ>8oLxgew6(b%26A$pvFI<0&z5aMRX7k4-&Ofx|o^74?1pY;-ulGSN z`(a0{$PmfhC9_d6BCx_P(Dfg5)SUhIKddw5F50B<DMBc&)LpP<s~L7s=XDzsAbVZN zki7}-i$k!<3@fS;xbx7Y@B|H!3nfoN0J4PTD<-W6a76^A*rZs0pn#t}r1u5t&|L(6 zO3@q?Tpv*78n0phN!Tbtcqa%lWy6+$G)cZl;(bt=WHBY|$|K?k^K<%v_t-y3rx_35 z=j`@>SObXnE}`US5P&gy*jzV7rnhLU7_^4Kf@5EX+!%{Z=W8Zggr4`Tuz^J_@z}I= zeA}U=rdD1y8bbDEC}?<EB3!#z*w_($OyPiI%tQ-Lg?xA4iwf@>J=j?c_Z?ngWZud^ zmy!y|IpxxEAX45Ro)#szYL2fLax-Ps05ws#wQpF#{cvg3V!dnY8-~5Od;k)gdXaJ> zKxF?m({#5)Ph8yb-Z)yQPBW21Ba$74p!&1pATm70wN+vbq|fGt`^tjcxbEs@h<mpJ zwUO@lJRu>S=iy$#=;3NU_a_O?^ypGEWpFarcf3?B$zmkV0=xq4doSkp{Z(sUo$BM{ zLx-(*&uaUaBHD~%dty0Am*hYqgm+l}^iLcA`*#hd-n)nl!fkdAf<&uCC_kW2a$?)^ zXp%tacW(s3u-;>B9q%7h9oik03q-QY7MpZXLdm7C))UQGA~PtURTE>h%1*(f`Uz+f z2p~8ht?RiK2hno&$FB@kn7)J*H6ec`qH|*CY}?-dKDzWzmU$vVL<hv!M5!om6)Gk^ zV5?uJx*os3ww+jQdps#TqTy_3oW2M1sTXfY>Lb3QslIpIA2nH-Th{E6dF>Z2Bl+qa z!{-Il9RmQWNg{hsFVBmo8FR=%8!M7H72-WKdpBwNF=Sq%D{@1-mP{D#JoEC<bxPRz zwy1ea_^mvOyq8d<vgghIWNn>mZ)s6ZYUhb`%VxcwxWkd%CghU;kMr}Wci9MbyUw#9 z5lZg{yq{c%=p^@`%N&UUQ~pGE>+mte1Aq#JAbVqli?~$etAv9in@Un#Ca|KBs@QZJ zY5h0Vkjl|dbTXSAX>xLUK5|bni({g(U3RgpbN1Ds4tZSi0TanmQ5K?EkJW(z`ubM^ z9tfhkF;8_LB#P|Kj`NM5%8>&kT4{4%aF?Nto_K_G+}e@g43y$iNKpQZp+_m>yT6ge z|68Ka3cXq#e<6Z*T<>FCzN~Z|Qg+|VJiz+=V=<7ZPxw90K%%FBGstU8wS}4`FkCZt zZ~89E-nBwTBujMBz<X!_qml+JbFu)V(ssV*h-H75(xNAKe1edt_(48^r#*`C-uWYW z^^0gR4Pg;PrRZ}V$HEww)$$;ss@M$&@f%&+1prQ8+A}CaBD^@fsOlgAeA`etmy0x8 zk!dg|pO$-Z-fP@9yxF5kySC51udAF9R~x{Xdx;>{nZ9}p*_q@b4S8NPLv4v20Ajr@ zMk}@ona@Xgdz7IFv`Z1m1A_B<F-{@tf`e8|Bq9Sr@$>2zXpX;j8B&Wu7j_hEpun=D zd>LZ3NYM}ZX=C+LeBD%zn$v^?*_T03J5gN<cXnyE0mhNNp#Mtf^PZ_Ifw2ullI^n{ zQfB#Xj8{Jb->Cn=Qi3cAMI%F1-=MTH1fohGDYm`zA*r@U1}KMFNlQV!e*Ys$kmuQ^ zy+H~D8{pkM?@FbGFM@%AD}f~vg22I?qLJt`1f?FYFb*K8(;5{~El5pF6=D@hiGQu) zkLR@)<K;R5AHaW<3OU&Sp6CghD<4G{<@b~nuzYx_E)es0KxFto)g(lEh)y0Ya&wiA z6N&9YK^p~<;8U~k3rnZCzKpO+LkIw(uw@uaqm1}!OEQ;#dn9sz_aZOW{0F^(OL$kU zZ6MbSp(vD<I0|^kf{_UYgpw@!9xmi_XdqE%5lStDmUIAs0cc6XF=PLlg2e$tDyq=d z@KtfJuTL!Apd$SuwUc^eGYi8xWSi+t%K}&;)Y#I+6(Rme%n<}t4;^q+^c1M6Z$nB` zH@%wPU*1M6SLw-e4HLE`Z=rN?nCW^Pf9wKBE3*w*y(S1J>Cd6d!{8uA@}d_>5EZej zClxU~YETr*K&?K2s|iP7p?4U4xQ9ebDIwsA?nwz^@BgS?HR-HT0O#_!^*}}Mv?TD^ zLB^S)|3k+vVsyBlaRL5m06)tk3Vbu|zurtB%V4!j7#_)f)ss%U+&Y5Ow6l3@X)t4& zvrBSq@=N;T?vLvqH@c)=6ENx6&w6m^*TLSm6pzFw-jN>e$uMrwXfyfJsumq$N6u@t zPAiqjAGO^-R_#cqG0w0xb`G}6eto2@TlkwL_ujKH7sOagG9fqB?G+e%EQd+BX%Z8a zcmP4PG@*Vdn5{)TTV%IG9?RiSHB+gUznNNU*)1D<{SF&N5Si5;@0_<_b!~=b3Hr;1 z?lj@nSKUTiUsPR+QcGRZoS(D*7`3Ty0cQ`GtW>Qc4sKeX3TY~}xXP@m*z-<~r9Zol zwm(}fjBL1=ZdV6%{QudQ;p8Gn4%o~@RhxtQ#r6vv!|%-kqOo+}KT%qrZn@#SF&j2g zW-i?klOqLYU>dn&F~}v+yKevJ55~sEijl%^Z2g3t8N9W}i-S_qQ0uyr?ob`PKd8xJ z8m&b0k`9x=SvK{i9q#`SkOp=HhsZzbLhO=jm4mYiIGzhPEv+^1bqr%#h}n1zH1Hbt zXZGczhvB`C+QV1wJX=(`&N1)a62+1!EIYP3Cz&+0QxS^(8`=5WD@xr*?7K<vuYIRg zFPwYuNL4kmJ&sG`{FURIjZs8Q$`2mNCbRODnDPX=X2KzRo4qfh`x}FanSw~UB5zI6 zH@_*uXQh}E__^Ed6V9f~zmlWtx-ETlzF?tx(7i+&lZY+d{TLh&lwlE4VRE#8`Ieq( z=kkJbtvR84`)jqF43)Y3=(&NyyMnR29)XsyIu$*u(Z2Pko#*Dd;%`K;)L+Xn;$vLE zu>4joN>V#6n><8%Bd$e4^a8_>nA%M~>rvW0+ci9y!N;5Cq6^(qH%L&ldJJ*?$6kW7 zNh=H#0C;_Gc}_OFGSqy4$F=dc^YNak?p4pVNjl9M``BamqEvC6Mu+*s=v=L>GNIXt zy2NlkyGJle;vkVrs33QX7TCjDq_LfCrn*z1?P;cI`J~0jFs<>{-xl}mM-c-o1p5Y6 zY1>mm+-xuOZzc1mFF6Kx+LO5C^zzlY8aK!VoFvT$pamgJN~!O`$m!eicEc5`UdyAk z62cNei)v*tis)01I@<^GHJP%7SlGU;N99Z(?!mTHO0ACWC+IB`##GXNF>0|3pVWOQ zfA$Q26K*e0@JK#n4)<>5MFIf#Cz%uT=Id9bEtO7}w#f+G#~0YKu6jI@x=-lZ@kU6T zS=~vG0{)g1!q0=Jx^b}3M1cUtK~FQS!%{uHX;)%NX?YmUOQ{n2pt2$$N@9&~uc6_U zpiJ;s3`%wBxz7OA8wt$*f7pBPuqL-}T@?FL1XL8HTNa=oAiaYP5Ru-bs|ZLJLWh7Z z6jYjY=_0*L?}>`^5~+buBE9z{KtjTqLEXQ#_LhCm@0@$jz0ZC8BM*kP625PKqrBrC z@0>$B@4^d88TQGR$j}=v7GBuPlHBgPEDiA}fI}ck=liVDY07arz_3PzzfQ~VNf~c) z0QFgPf2G<ojQD8uJ%Wet@lb#08Y+j1YFyN&|5Cd_Str~Y4GTKX_!WKC@9@*8R}5#B zo_(>SxXnu2%2fYgk0rVGboVJ8%%`FluU5GvLPgQr7As_ZIZnjB(_GwoN-ImfRzH3T z^)*DkW#V!-2GW)wcr#nu{j$n52I)%+BvYk~&J#_cDH6>g{u@eu#~HRGFBwlOC(;(g z$Ny_{^?$0HzQKM94=esOPeyi`aZlvsOB+tKMDT*$tdBye&^~;kc0*1BK2OjpAgmYT zYQ@i8G0D$8&8yKgKAfpp?3XF}m+f$sk%$fI(b<iSNI2LMYle4a5G1M2Aq%X}hF_72 z!7L7Iey*!4UAFGY=Jxj%%OwuI^EQeRdXS4-|41VP#)?gy4Tj<d*4BoKCnvy(^l$8u z`QhMz$r%D<*UAT{P3<T$aoRb?_2aR}=(+x+nny;OAQHmeliFMvL`@rP>Rhu=bkvku zbsB;x)F;oW^0(g3J^a+<it&5l9ZiEzf2lTa@?XTJ`y?*?Wp%i}R+mlOWuZdkmhe6y zdV9wsdnUPueB`J7w(@IOL6j2GPTGhr-7z`7(h;1YEz9uw1@i$>Z@5lkQ<8~n@ZqP0 zJ|bcQB(mk5bHBSiEZXt6{PzzBI2gODjGRgxq)=;L!psVWUG7c^1BZl*p)W8}$kPIZ z))5juN&9B{Ui!mxd&Cm*L36vRN&L%LEq_j(WMqP*YwGR7Fu%h-ht{T}-67_;!PrjW zM9{+>sBkDQdEDFgF^#dGit(!nfw#>556HC7_B5@=R@xjsza`QnVrxCHeLX&eFrDO+ zdO!3OUYE8pD9Vp&-a0ACGr1^Ud_4eGurVl|s!(2zK_Kmh-h`#KF!aHlyIsRX?OCG_ zKV2Lwjk>-Jr=M3y|EMW<9Jw{V9dj><n~UoXn5%h?Qzan`PQoiy>&hKF(?w#Uqnlc- z>1ZTwO(%uPKs}m6FIG$K*tjc#*@UeQb9uU<8y8BJyVI070TRf~ypau}dJ8$n3f2cG zHisc@7d>jmm?DU{IB>+25|~561x}!drcd-yvG2(|oMmALLOtHijM$^8+Jg2m0kaOu zTa)N_z=6-)e5x{A&z}$NFtwW(TL#U6St}_<Igdwg=pRs2jgvqoLJ1`tA?0>NPWQEm zD6g%x+b}72L$4kQaP~>AclKOwjw0yA(;0#Tu#`Yy%cCm2`aFWi0QEs-y;OT#p?5_! zuRtyNFO8yGM+Zu+%Y{5@V`MNvbnO!<$-Y$n<Wz*J>M;aE)2=YEx!+=K#Z^RbYwClc z-ji4c2Wn1F=VdNwPnUI%!1bqvrkqW0S7}QNdJOO&JojddGwewye=`PnldlkztdgYn z^-2tD$FP!kals4*W3^OoH1N<PbrrAqwBE>3PFae7az#T6h<2V!HLBQp-OQDEA<x=E z+`wwJ3xq#>d{P6xy_REx2KP5ob6HhN{aQ;DFZ*SU)RoOkS?Dw{pi#3UQMSMczS%98 z_PF!?+DcuPQ853`$WB@`m*TBkso>O3Id2(vjYPMxqggtW>^zh!Wm(a;v(Q*@)*{;} zx>H<WE=`ZX(-O<>2Dh0k&5TKZHtN=8dft|sH0;rh#paO~Nj#hk0*{`EFOAhJ71^V` ziG;2+r90_&V@ehtg7Y3u0W*mzmBQWAfd;l*pk@}kM4)C4y9)-0#%QEr3=#a7&I_<k zH=}DkbzK%vJky9B4lwZ|6r8c6NZQ^4L+fk81kCQ#Nl53dcA5BC!lpZj99!$tkpgLV zs)QZm@0zL3iL1o~de|vNa$Rn&t7BIs{e{QIo8Ts;UL~o-M<n@>^jb}|jB%UeA<f~3 zjy-mdhzycyczw!r53v92+ZnR%&^gTfz%@vMLc`q<tF54Q^HSVsOC-EhKTwtKO4#C{ z>rBSu?y9t?Lt<8%@rXPtdECMvAE#<!7<`9h&>HfZo{uAj4carAyrvaS9<?=4?E@!+ zSFi=0gZ;I%Z4<nWb8RwqD)(k@ai)|77&fGD9>uOim!+Lj)p)%5&Vg$=&R4mXCAQWT zX9uba&bKo0+q{e_7PE3{+vu?Bqcf=tZo%{jYX@~==S5S$g{$5k{rmz90d4a$aF|&+ zxwSatPOQElcdU9y)H%4$pL*U@izgymQow#f{1d_TD)(MA`Kg=V71m!WXkR@E`oe|5 z1LSQvobLNT?g-6-3sYDSv$RTs>f6*1ZROrF+cHr{&o@*Q+WR!)%2=@Oi^HYL+$i<9 z%GnW7Yn_&ExnoRy)epuw25LP+NJh1~bC2b2a_i(psU%d-p*caBDoex^mn?oA_}c%K zUr~ET#2$D2vI#7{RWm!-x;NbyOo8bzOOmi#c&o1eZKg(?ko8nU*eh4FAo)R{giCw& zr2fTE={)*O`}Kv@Uf35~+>NvuU_}ON9@2^A((Oic)(#o~q^ZAke?_g%y;u5P?Zd2X z=gHSS*+!~bp$Y3c1$Hb9vMv$HmrZWndhR9ku;gxnNZn#mmquD*=+W`U+xg7m7~<49 z>{pUeSB;s0xZ_0TD6<udCPxtRv)c3`F!VLlJkP|J=5W7dmKVW`lFprQQBg3wW`mZ2 z-?8MplQS%O8MDZfXHd4XDH?o?KS#TO2bpg~s|uRdZ{>qxTj0q2=6?Q*Ln50@o1gpz ztZ{}sHpYZSuI5mlxJK)uJ$E;Jj0NIy<A;+stYJprcyMQdE8kW=)rRqp?-<gRI?ubf z=P5$!HjdzyBEEh-aT#}a;Ot2iqL-FubI_LSie#BxM2AsTb28g|N~fMzJ*`>k$}ux# z41+~ya#EKii9;k_quN_ms0qa|31<wYa~smI(&m*?nZx$X^}LF<?sUd4RK&-rcVi@m z7f(d0gV{qvX_lkp!tZ8A`J?VB9=j0F93@Woa(nwa*da<f#U$4hlWV1qM>z$2NEf!I z221@M+T%peXji1g^2M5<(hgI5!QoDik@B(}AR06_Yp?cveQ?pRh^f>>T1itjF;iH| z$!4i<6N^MQeU?jN>dO?!$kOCcoTTSwgz0XnPM24;&h=U!M_aVV%7H<N7lh~gO^&CF zKn`5%6<Qm1J>piw$%SALe|Rr&;1Bn}QuzAWy}G^!i^(Z}DO`w&B6ePij71?93e$hW zdSo(>zcXqSm6oB-7Ln_HEmk((=o1Ex_N~fuR(DoPYKyVV9Dkx49wunvGTT`k(kiU2 zERW=Eu(?aMh6R3Zy4FZLG2X0Mx-M3>mDJ(TEXGWDXa$b4Wx2bv&-XartN>q?0g|_? z+*OrmZBkrTF(ongxm7nGq}<_Y&upEU?#g0JRe=L7M{{Q9IA*KNYT$++HN&HOeg1Xw zXC14l7YAED?js&IZG!x@Wq-df_#Z&#Uv=G|!QX-8D+u4IZLU|^Gra&~ZLPJk<2^<e zhSc%!c}9<{eOy`+&QtWz1)z^q1V;^(AZUvAy@R+-4n?T7=g8+(`CSm`{bKvgbNS9d zkr@E_LJfqsr<o{7_<6m&+wDWg5jAgK(Kg(v!#iUO@>ngXnG*u)v_AE;8;A}Y8&uM9 zZAN&J>K~S;pE1ci7eLq6jf<(%>5Z^o9wFL=Sff%4nZ?|iPP~?&S=g{+o9z;>+DZ{W zjdk(`=auqptxfj2#D%E8Fg7T&fp}&fV?^fbv5$^EKzU>RD)0p&E|zpNV)xEeile!w z4?j&jhH0Z`6><6i_<*)Wubw1yeL(abGS0-?>sGS}x-1-I5cGaurut$9Vy+C4%)f)x zcU<UqaL4u@7VvIsI=CYlO!=?n`{%!&@dDJj@y;=s*WM+<d$|JfqKD|7M#}L+kA|=c z8yaV8@%K?tv_^AtOS&vMdd_Q87rKv2kdYJ2XA!@gsy&b6m*FzI6CHLasiQZJBGzZQ zpeRL9WlN`>vDa)0bD2L;Q+Ov%s-C#q&2l8$>*ksGG}R<y!W_sl;T-MyElbj#rc&jV zGcAU<&S=_ol_LgG0WYL%vj-kDhq0Fo9}Qj2T<=JNtKo4>->@OesjtRUuh;69I7|sQ zMAT=l5?t(~8(CYkO>P>g8X<?xJ08X}QDoZ`s|@?`QgOCVt2cU8o4;sGe>1^vY%jVO zJ@)J!Jvn2BZWn;5Ri!jAP}ynBzb|@frUd&6?#Wt1OXswvjNtduD3%o1Fa`XfE?zb( znwdq?Q4JIv!z8_zS>VIYSHXt^mHX(Bh8DxFOsQr$F8ri~cT2PHx7JgijNWjZ>#@vQ zd3Xj|<FT)YBrSQoQFh~o+0Bu1^In0=It!L{XV>E2?O31PtJ4OWY`fdX?yd~J5u?AI zd!xWFDE92JJi4|d?no}!xAhC{R20_8{L8ARo0f4>Al_dU$`GWHAgv$G+SYI;&VPsB z=AQB0f@!VbY-IXU;v%XnismpZBP3ySRf|F9VMJ>o*NJT7yzB@*6BRD)+;f*T)14SV zS#)n<_WfFyQshv_MJcHmr=@;l`{UDgZy?E$sGY_wK^bwAS`TgGY#mLL9Ep1`j1du+ z&J$>upIEkS%+Ds3To89{%=(}%JV{t>H08aX0XbowSX`BUjHB0Oyg|8qUAHWlFe-I_ zI=DSd(9;Eg{9yj6{XFZ<!wE?7eof_r+UMV!YOd$%7UVzj5K6gX0P8w|%i3RQXYbtS z=W$F)y4?boYq{oFnvE)~^?+YYf|Al6WY3AaPlPH=5Q5?iy_l(X2Y$;1L<^i1u~AdC zzUw~om8R(asD+<1v!r9w<bZ}fC%5hh$-;S9G$$1RYrEyfj)dyeQETN=C|89`+pyF< zX-aLA{5)vhl6J7ofR~5N-YEG#dH0f1u3@IJFY<Wh({jVdJ#SY9mPktGJ#!vT%Unhh zu5V~$m^r395~G#l%4Y(2-^juvc#Sj&+oRu}>C2DKFMs0<X5yh@>O*!oeEWDk3w!6l zfou=;5UV#Ey}GSbaMJ>fw4%O1Roju*sZ(u<yuCT{^e1DI1{sQ{n%>dK2zliRM1qm` zRYH7TKG$St`(b$^xS+npN920Nfh)r;O~tm-g;+)Aen!1+%5GoNukAD>bQs>6JUhc9 zsy;1hAzUD8_ot~m6;dVi1Vc!b@hc58DrBB^jvtsYce~7Hz-k2yUs@~LTtCF0-#N_K zv+sLhHn<LBH{prSANF9}){@aGxqY&H>n-HK$C%=2aDMSkjA^ff?O;jRn>Q!6w%6+& z$0ih^=$8*}rn*Bs6US;o8!O(d9NM!M1?L4-z9C-S0h;GHlz&QNaPxb)q}D`f!f|+j zF5e$5q0-flTBDS!TxKWA`s5}rmRk2l0IG!1>RQhRzztn<dTmq`3HJWg3)ju=#lcK+ zsMfWj#}{K0*O(hi6N;%^eXdCXMY1wW8{jA&Z7fNH^Xl(J$3~pKtZ}>k^_dbs|H5{Z zR9^3${PEdXz2Zj>S%nVyXL58>f|<n~wK4{)W+iJ!#|PG@u_y-NYi8Fa%WQkrSR3UN z>r7hrU}S(g;QaT^Xb*>8-Kvm(c*Y~rv+O+pk18ge4a>+D+N~6(jYU9=>Es(OI@Ci) zmd=Bc<pfyLw=cDPON4WxJ(<Up4ty-OKqyvDbIncTotCcL42QjZdD{{v&ka(XL7=Ph z8BEPUrEl_VOy$0J<%6W|)w(d;sJ}FIfc1foy*bF+1QjF9dd`J%c9SbT+r1Kl&NEl6 zk$K1spTfs5sh#cOv89SLCOmzAAu=;B<-Ho7Ho4Ll0-<JYhv>X8&3>$EYgC1cu!oiU zzYA7Q&^<E}vmAh0ej8H#!Fl54gRWGEi<MqmMST-1<a6A`wZ+PvRxQ^0P4&#STC}^i z+U@+T6J=IY`aY`XK?YuHJ8rd@ZLN2ipro|VWtN#X23t=%+sM5>9aU<rW5w2fJ^PrS zEb&qBX>R>nD)AER_BEY-D;BA$%ZXjJIYgOE4(|>KG{fGW=cUddAW#%1vxSdCoP{X1 zu|wjQcWf|_oTYk1BlY~gRIbdS3WxAikdy!z=JY*W%SkSKp73fv-Td?|StHNtOpKtl zeqhKnIA3rg$r@QBg0&tlOTitd0*J4~eh@Wy5#hZDr%mzf>_M=DGYssGH14o4xe{e; zztIbKvAbISpibU$q$mhh040bBJig{rcX^0J?Y(q`oCCJ7$l|VaDCgqFY;YbVgL=(a zmVm|6oCP{gX!bIbpvUtXQY=yKS~dgPx<FJ^NN}hS8a~kyT4#IU<H<VzJHryCKx=cO zD^>C0=;$cx@(_eiOXPG!5Xk4PS9@H*fo55HjU(^WY}xOej_&1-YDrUyPIYT`^n=(9 zR2Z*Kw&p-L>c`l-QY_e@a7c1Y^#v~MSkmVgl+9p9b*eFxP|6Z#RUzuq^N0E&L$>1# zT;QBqNK6R+0zkgb1r4gPS9EzzLIa|C6%$aUx6EExff$r{noIw)+G7`hzj>ygls7PR zXFLu%yR$XTHY<AnT@-+nV0=VN7$3bQTlL1=MHBDJTj-2f>5h02J?pDm%kZ5$L|qe6 zshb^C6rQkQ<eO(%QrUXp4X8@*9U_h8aDGZEsK#4OdnoIMgem?ES>054!Lp~bsqAi- zeL{{P(J239wxEb+&G*(UQynqqd$Vg&b7HKG7~#0=KxP@B^sXz>j~>0K(3%>OF$YFG zo#h6Epz|Qbht@b2ux=e;Qc{NIZL!?o)II^JBzPi8v6b$jr?RV_e@g?Z%<6LXVL3Bh z%kFgSrp0H?10VbQK4ntI#7z<1+~7JU6a5e4O6%E?{3gZfDSiSTUldT%+Ri*&{*e4n z4m}Ur<HZ#YQwMurj~+GC50HtLff8otJ*stGX9sF?KE+D;!-Myv6aPyYEFgMyu+TYW zq9sz(B)Pm?YY|l`XU&Cs$4C)NiSU-e`RY_m*2u}rw`5S#H8+N5v;b@%JtBRk3JP1% zynJuvvh7_BYw{pJwHSWWGMOFm;tcB->cNXMoor_PD>HA3yopu%6_zqf#C^n6Q$iWu zfq-LqBY|a{OG;o8iVdg}@!H6f!rt0vyRZ=_qEtMUhZ!exzpYW;$v#UMb5XrQ$4HXi z8Pnd}ts<rV>{v8_R<|iJJ-E)7>V9wf#N#!CsFfnPtpC`iUPQBl{+Xkv$qr#zHt(tR zsD()rhM^e4KNrgx%+@Ir=i9?NTzzNRco<tq%b^^4@}k0g5=(uMZvHlp-0MgoL*&rG zBIRloKaN*`OwIoI;eP0t-vzPWrULbp!)s2V7xas7+8fl#D?ggfAMVQW)SVsZ?myi* zSeS?lVUfJv5SVmnvL&jMa{i$wZ}48CxWA0ZELqmXjVVuaJHw1)1r5Qh$y5Q#2R_;v zRo_OBNMl>uh>u_x9|URad}-E{i(tBUE-}}*XnctI$$a|qpHl7u&;@|kS{3RP=8`yr z*e+5r_CU63;p_3W(&4%V#*sJVk~;mfqWPiaIBVh|8LP&3pV(Sn(PotJgH4A5_8rH; z3H#wCR>Q`!Dz)z(lWJz}Dx85%wh&TB*Mjf1#@F}e8)>Gi#-xVispsS~<3~S`^lF*2 zz1%&EKP9OqM$mI>cW+EKhZ~gHj=Y1aybNqiNNTa;HLkfd=(;2%B;J!4N~jET51KR6 zm`l?LwnZk^YQR5P<EO!)^-TcWmLSe>YlqWvs?HJUc(!kmn=3m~79$yJBTuj6EkJ3L z-EaN%NN4>+E=rrh^ite@o=Dd$j@Kh1YiI3mEbK+_kdGF0JYOB*1Cq4TqHp=(ryvHI zXRfOa+=1=i!W@|kL3>9Z4vL*gVu?Yhf}w0_EuC908NV4SrOw@6qr3FT?W*fiKe^2p z-EZ6-@0@wX6w#4)iq5>iceTtN6tqiX+|F0$#K1No(;wd1ZMa+vdcAACYmxY(-hfY9 zRMFXl%i1_`BH<37P6Q}@I%UeOy07=;8x$-LmN+DwZlWi~XR=I)k0f5h?b+b@;{Uyp zT|J+0up<;8=Bf9|X(qg3j*~5O`wML;GLJn5M^{ej2$+o22$=Ug32ABckvSh}lAXUS zO0Ou+HpBc^Ou&ma`VRv(j$|b3J}&|?ecZxGF>;Yvh2*5Ak)bkK1||#mWhe{N0LC({ zkvMfDN46trbyiUjo%5CvEuPfxHH74bhk;SPvp30S@>Z@7#IZ`0b#r?6^quOCZ<jO6 z(=U6IeDghJu6#(sInzevuZUSt>R5S+y5gLmL)$Ns6w$8u`6TV+B(6<}O+k;3Hg0LS zz{kZ!ZFCJV{FklagXd(opY(sd^wk~8FHB)rH37M-n_eO_WayMWa!tg$?e;*Kt^Y22 zoqy}qSdmA)hHpyclg>^GHL5vOZS)nrs<uVJcT>96I?C!uF3pzyM_(PT#jKr~C`WtK zYtKw?Tl5v8JKGRj`x6@^8o=~QB}Q1E*0D2OgnKW?e`*0P&BI>Vjm&iWw%p$<UGG!= zPHZRZ7YMyMaD;l!^>OnUBGqd^fOWb5OGrk`%E?YXHjiS6!t9P6o2{1(2%bJi3XJWv zu#+e})+FCp*&GqiMebN|CUMPmhxaTG%XFnd6hJi-AZv07A!BX-b{armvm7Byyq`>4 zJk(9Xd$Xxiz@h6jbmQs9NTdo2iop+#s)(^c+u2)Xh&0x;=?xw6J$$=bq?7Ny0Q|}9 zk0$LR^Uwb5bRc*f5Z*I`fsGF5dskL+3ZhzRz)|xtf^fG-*dB@xyQs*To+#FP>#D-i zHr^sqkX5Eacj(Maj7ftNnJUQAS0>&A4w<2n5Os`C9)7n~N<EU$>sDDM1g$O1v}qWY zXB}Tur6TN^Zz9N~6Yr!6XeI`l8W6ta?R!_*S3el8wff>%(c@22{Gt@(X5N)8$I#Iy z5MD5TPoCVm|ALF1lFHCU*mdP7h}vuRZ8Y{!TonQC_XQYApi-Z?aZaycqnGmZP|Go` z+QS75b2VB<;T{apklJt$cch=QwV{eaqN&{5y;{-~`yBuqPL`7Aw<u0*0zTLZnOy8u zJ7oav^*s#ZTpTRxlg%;rBH-ji4Ip-H>4(Kf!muhk`_^VND6!+_h*%Cj-5f@4<s3i~ z^Q(QjP(RTS6o+zdOAad!$PvB8vt?Bocvc*B)#=lArAF2mB`+1lV7WDq?}!g#&{BFS z#QMOs_0<e-87?pbbWMV7-2t%BQEeeIR$}=>#b+iLDj|5+;3wTljJw>EWj8FGS(X&8 z8~&D&BHyT30|-xYlT6XD0~#5|H;Kh5V2X%KmCJmV5Bf)6a}<TnHR7~Ix%9vxpmX`U z@38ku@|Am=dV%YUgVVONI30^<{*dXW9H=V*Uy5-ed99>=A&MH8#aJoriVBx}G$H{v z*R&VmK(P-&7KOZuq%2+Tk<%#%=6${Or0JaHaM6oKxwiqKe#coa+3F84P1L7@`SY$T zbFTQv9C`S`CLp&Ode_kc!RbV+tl6PQz`C>}17{7VqE9=|qvY_o;Ew%LEY@~iqNe!M zS=txzX1a3~Fyi5+?X6BdR7K&%$x>aW*RsMCS_AUsiM3P+wY!Olz~ADSvmsJZ(jnel z3ZUMZMkrOT@y(zmrzL~=w98f>CC|{Ch>KEanf3%EqFiSdR@2n20=cdktTZ#{tsp>c zd2g$`aqoRFptLk<-eII@D8qd+0PU07*X0?R{oQhA?Q@gh4sv$cR8>*tkyJgUffDxs zQbGnJLk<!XHSH!Dk^vgCdA{n%fUJG@4U0s$t(~Li-xlb-zvZ9@czaPs=+0kqNlHmD zA_fsa=Y0Y6deQ*3fL%TeLz_sHSdTlZtTDH?9p6*T_R{xzzHp#Wx#Q0P+OVAK^exrI z!!t^{hlD*{ZNvRpJ(^yOgE|HbzZS3C@QIgAfqH}O0yHc#7lf@~?-3T0MeG_ykB$<H zxn>w-AB2%AANb<CK6o2NJ7c}73&@lvk<gJK(d0?Qb5sKEasTbcFSa6ahH!5q6Mrk} zx8R^-em2paZgGvR`q%gh_zsNgMUr>JH^-&u@KZptOX{Im@jYMn2p_12m(V(SZ&-J( zNf2>5`i81BJJ!TDS2Q3n<nYs}X+G<|D@8sCYTxmf>ZWF&zl30y0dXe*lL8G2FSupE z!XVtlWqBk8(YbXCZGVqjm9EKNti1ebm-`3Pg)lz4JC%-R(j;wQ0;!mtLvJa6%@%A{ z|L8Gf?@O?{HQnE{T;^&w_$L@^<vJ<@#Rp26tg_c_%)|890od(=DK#B_y0J7I9`By` zwZQ0{kN0d}o>E}QEmDnpNu@j2yP`EIcaO_&)(f+n7MF&rQM%_JJRn!lW@|mO0#5yZ zK>Oo>E^Nn@aF$oEP(xVUVJ($3{G*LT&_3|d8EyL}Di6ibm-c#&OUq3q(QEA}S?+~1 z6f3I`p$H5Nj991)+-mAziDS3GE#QSkYzMfMV^MJ$+3iCVYS4_ekf6Borr?C?Qu?Gy z&lrH=h0X90GlrcGGHYkKeH_p3DRw3w55>J@a^PCyFt+r&Y3H>9G8Hi2J>zwNb<)oQ zky;GI+(qF$A%F!`pJi-wm4QI4|058a<t+j4E0}c~4KEI0gv|Hx5J3{_n%UR}UBxsY z2EfArgMY`(t>SK?fbxz?Z?!aO)0DSoLVTNL&rb52v)_dU91RJ#pIiS4Ogbr=PpNP$ zjf&f<Co`EW`TBZr1)PE3m2Skj<vq>;&4rwA0|yvA=1rH_Xg$g^<X|&(*p|!-M7GjZ z3yCscee$6#QBYMjU%Qn~z^UoopGb-)3!AS5Jlfo#iOX0Y1qoN10w3eGUdLHfUIuAk z)ja2CM`F3UW<VWZOKaq0&fAy0dE<~?$;YKpRX~4B8>n|AN@f(SHzh;Y;5*Xqp``CT zf>U?h=3{`<w%6!B(2Glyu?&hTl3Q*FVXNNAo3hM(vXYDx*`_<hjaa}k+_W32V$c34 zu$~ff2T0Er&^~Ha8*@As9oz5OHb&oE@2WDRtSfDaC^!cv;;P-O=Q5~^P!vz5JB(0+ zoyX|B?)3RoOPnO7kDuD3v;~9hz<FKlI=qi~<JIx)u`pgXYSzb(_q)v&z*C|A9YwCo z-o(RM9A0GF%SS|%!e)4mYEh~quH4)!`=kLNNia8!zk`@;Xg>0r@Ib9a0j`+q1ghM# z`av)m*O+*3X?LY5Ud$G|WK`vZY7MF}5=`gp*sk`8<YXQyHvo_`jfL*y$;$}1+Q1uy z%xJE~fpS$w7{1DT?x8AuB%rG1lL~-_;>Bx506uVS2vk6P%^7uPkK(x8dzE)&k)NQF z?2xH8)bwDvy;9=#AuN<Ej<AgreVjylVSIL7#YgYMiXhR0athIVY_TUj7Avj$=`k(x zFqoPIz-R9YvkIfEJfl!%24XbjWXhwiMx2GbEg%kn4&s8S-EhQ?-AI_^#*!iszm<St zScHPMcxly!;JEv4%-)ioEomR#NO7dg@-OUF*qwOt2U+E2O3VRa-ii&di57R0E|gkn zA=wxqL2W<yI+Nq6bKF`+YOy_8?6xSOFcDjQ#n20K@gTS0Vn^1P?R`#3P3rFE3qer| zDYyIOI?-cfK0r?|ryAT#RR>ZlNw?r07hq|S(>*yGl4}FgCUZ$}<66VlvPN1vLp5eh zL^DmU4UM>zvh=&N8bvm<^mbXzkQ(V{dlyeHX}+JpHGWg#X#B;(W3@dRN2o|@=56t& z_pq9((w6~U`o<8*jsWL!9x~;9fu7e;C{V9xQ}D7$Ss*T<a^HPqxr9=dMc|9O9Y?0Q z->5p8BbIdVn+VR-HKopE<H;7jmTmW9qXyV6h=tuGj8vX$<5v^rX-inXT<4H|^c%Oc zl_F5jPLMUL>FoxSt$fjE8}23us2gV)wSo=&kzA2!a@`!PNx^|JtdSW3r*Rds={LB! zLxz4Z2gh$lwo(FtNu57UYn(my>gjmfd*$*y(4il|+B=?0$3SR@_Of2lbHgep#aJPG z;CCH`wZl2pn1vB-!rK$|4`dU>E|Z(=1-fL8PtvoB<PP-A<nA#R0ZQ>JrB-tEJ28~C zWVRthYVGAjlhMZy4RuF0tVZ*>8s>LM=VD}ik{|568doSmj2zns=G&cfo)hi~(WVk; z3}MKE=HJVTjTdv*K<mN`^%w-rpG$?w)Pj=#*>N`hmM3t~j)32*x#fWgwELWSY#-pv zvd?g2=Q(uK6`8e)5c>haqJ+)XK0a;LpZRKGsMNsYyIdz=^&~keEc71*qo;0N)-4Mp zgX+k}u)QHLE188nB}mUG;8Z~t2wb&}OzO#9Es_Ee+Hq|{Q4cdf|2{TD+`iacC6ci> z#Rm?z9i+CzcnCsYTGgZ*UrmjjG;4`aB#aC$e>1hB5VP65z2&whMBJV`q;lX0raP7* z`=KCqESucNAp9W7upY|xG`U-oGQ!qc(Lexf$+sFKJWb0W>iypPSfoiN^Ed#~`srge zL1$&OVqv7%A)uhq8n0njik_`bpo{=Pfj#Z;(~g07{kAH59mUblxM+4BqpG_jb0e+y zPp|<zDV}b1SR5!Wcn%B}*;bcWu@H-{I6EjDxaJH`<W)zlFy|O5PX=2_KKb^p$0O~T zj0wb7sgWA63qB9~L-uGdpL<8vA-iOK0V;n@sOp>$jWt#{aZYMXgK*Vj;b2{>n-yrU z`5wkZM_kstjmONI)io%0)yP>B_i<^@F~o?QW<P3qtM0k_^|@lW8RqROo`hr)4dYMo zYXq>+reKx_v5L$1Xk?yV6ij9V=VPp`N7%lq&h=&S%ywsVTUmaO0RT)+(TiqrcxSW9 z_lD%5Kd5`|i!s$KRc;Js?wWtxv(c)P8zx#^Q4j)D0dIw@yZU*A-Gj?H-w^jm4ix)W ze>54qZgW0^01;+1SC~hoxzWvwg7ycqA7{CDBe4&rz$S!Xw%u;?Nu$$KQX}91fjCin zMG|L9+#*!S=4DN1O;)QJ=iS%~7v+O-A}mli7bB_^TAX?(vLy}l6~e_{*GL7CTM92< z{y{Eha!uf$2DLC_9Kv6b<57Gjxo~W&3CM~!Za@TO&YUJ|)J5!uQqPQt+jCtaqeDtM zC@&O`TlbJ<J^-BLN3vjglr0{~t9^%>O?*s4%N_qEWLH+@49M4uY{yx-vY(B`>vbM_ zv&3Oqy6^sc84HlYV+B@-q%N4P(;GYYXM5x7ujFGEfqQ6B%~~OCFDV2wmwJ`QirRBs z^rPYr)a84_1*o2ANG2L#KWKvx80(@?t8L2CS@iHj$K;^Xz;uy8v!yxD#(-xvM%{z& z!B8n4DwCj&j}IAT&DIX)y}4t{rW(UhCsPE!)-+f)mQ(-!b$`!P-b=2_!W2%(Krno~ zh^*J2Xp1p1jA8+X9l}af&xYBEmKA|>ld=nM$}(OK&p0c1x_3c9yCtH?6JcC8J2E?H zK<;rl9tF^EE^yD&5y*}0$W!or_wTwY2qzDIunTHT_i)I9uJp7i*J3PZ-dqP96N`I_ zvm}{2dhmMAbqh%H0+d)@j@RExj6EX(2Bs88`Ozyb_E)I`W{P3n+M^XxLp-_?VNzd4 zEpMb+`_$^wXM`cIGz9f1OK;umm2IE7Sstj>j6vv~>+?|t*l9ZG*3e|gPhteuf6*V; zyhGY}IS8E)H?Cy(=YG1sNfb`dd<TdP2b?s-<Q~#_WMN6`2-&VmCD)rDCz~GtO-kwr zcf*Z1pn9&bY}K*s!cak98;Imb12tvU-2wCBW`ki5F#ngkc0@;;xy*6klslL~S5o*x z#N{E~!GA6pNCxIJ&4b#}k1qn5!<rbMc7F-rESeJ}qh+RWi-Tn8)Bp_X-#D(dUMHLr zrBr4UGH<$_weMS3TI)pKQteQ_>aYR!a4`@PKPHUl?0YAH{Gm3ksLi+P$Y7ik7Xe`j z>yDih?t*F37a)*dj+%mbELFVYT4xRNw<%E@TunOd)Y7&(;E9h(DeN02R{;uTHpbHp z|5vqn0ws~K4DTv!9E>uS=)vZ7thpdqK{aN6&j!FuG2<(yI%3|Kcd1Izyefd75m!x; zxrk+iO|6YFuVbU2*tCet+8P9jeDZ&T5tckHJF{&ALtGK8!>PI<`KQJrI=qD*M%=}_ zSp_!o=x@H#%3Z0EX)rjctzkv6x!xSU_At$g6`Aq+U<lieBAN{taBnk=WS&=Iy^M-i zUCaSp>QQkQKu#E+=&i7%6o2yVe&9x`S7ng^bgt1ZprOfh(_qiTu|B>gGfUpApj(q^ z&OC@Z5~-k_y;fvc@uc%wCgXOVk!itdrSp7L&By}PK((t+U>n<U#&e6PlCFj?089J` zxPfjh1rH65q~yEqw!bo9t!e08vCyCbK}JL`F0#}Ee1E<>Zb3ZDsQh~1)-H}IX%7F> zc}|OWUDP0JpVc;iHPQm%({7&o2lmV!C)j=%tiRJKF@=Zp9$D-Pw{EqRqw^!(lX#yD z-d7Q>(6mQ!0sb@K>(ghxX1I9ws7d+YvmEWQLN1b|?>MR#3(bBq9WE|NW$N!Oq`{#Y zlMc;bM6$?Kh&EU+_m>)QsKhR;nO|*O1r7I5I-XcXls{V^f>x71v^t<S$3THYm2ugD zm0!5K_&DbUWPwREdHc$H1ng=}=M_+TuMI&EcXqs??3xXMyct?@Dxi%H5m%wof-Dc` z_~YaSr}G}KYS_h1W${m4D8Mc1x4zpzchj)Ru9`B4TjheXiH;xAZ)F!R<}+&1wUI!= zJAg?+;n6wTy|SV<JzrM5SW$2#0kf9W#hrzK`nArLP``H{07hNw{Q7ClZfC=6gOva| zr3qXDC!zgrs-K$l<epXEYrBugO!b=#vgWBU6JlkIlyg<?*3_<Q(VOIo$3;Dq3%H%9 z%Q#~?SZd3|c05o71vZSh<U+!)HG(pfoBII1cD$@GZT$JLCpHwwq^#O^v}muX#sS*Q z)Tdy{D9r+4=QpaIjSK@F<<^`6k*m3gXp8W|JyT}q?vAJn^csBXc=JV%82J6<!R^!s zz8+mga)RW2D~*HM$I9h{Svf&-*6M7Ew*}ZObw1kMYYP1-PB0m42Wi1v4nICE;V>5w z$SP>e%`0e6)>I@&mPOaNug_Gs$z7ka)`!ZA+6<+dDNX$)7%7<<m~-9NgEvD%`Q$X% zac15Te-Z3F5nRx1#LjgpCwk`BjCw*&_I^nA6?Sbjx1(^I_$pJYJ`6To{b|8U2*~S+ z;#9R8D0BD4L2f*fnyabaSPI`bLft2L5^MBqduwtrarlcv0rUE555?CSd10CK8~mjv zwH4N@V+CZP3<fJ=jjuZH0f$d`zW+c<h;2<@M$RP_3|E|QaYJEZcwd-X*`&x*rQWO- z0bLWDC$nDRO{Te|tOv}$W?{~qsM+n<sC*Wsz@))4e$r{m*fwX@!aS&$^IXYsMyZ|^ z0#q9T6q@IWuIt(I@{`IYUX}f77gI{eTuGJF+~X$Qn%>mR@z`>ki(qnW4_gz9fhgmg znOALkxm4p|IGd*TnK+5FjaaQj;YUphyRwpFQ#I|#-1Zjz+DVBySO~LV2RmA`R6;wa zCe_S*Dmp}*ZUw-Et}5jt2WBIhX;bYIQ2e_ter!({-%hIae1<B>o|lt-0Y7nR|9&e+ z^%Xx+t(r&ls(we^n@vw;-5a5vU}tx*E~~eB`7Zg0RP5sm2AIe0ip4#D+`TE+Zml5q zk@D4Ful}^TcKX1X4!04`vnPGLrVW>45%&3&GJ%DSBL;o3*6j$_N^gWd+*SFgjn=sg zwnzIu262fN`F!y=-f^DOHFDOj`u3T!J1yEc$_3@n=#*oy7*>X|%8_@{@L2IaVu*a_ z@%dATQi0Tzncj5S=G#S2dXsn<VVJVJy?j_?7*{5nR5oB9mkTu*e7vfTypY1}y;4`Q z-XU4Q^Ze~PLe+aM9Fwr@ElONjW6L#@F!OD1-^h?9&g#RW4IP_NM|^VHHqd-kmxwb8 zvUfZe$_%O$JBBx9IiE~M>hkUoaBx1o)^XG!Dr75U6|PaXvoFNZ;Itzo0B=;i<3UM5 znpFzE!$~R#?{XQmjh1nnJJQ#ImOc2#iF4PUQtaFRkAHmNe-_qYObJbvTmH7z3QKYs zFpDmQ)dfMFAg0Sxd{r~=OLq#h4AA&KIl>f|i9`LF*}o`ZadbNy!IDdF?I3aW4kD9F zGH%sMe6>!C6{5AX%H50hK7`!LJZuVVqt>a}46Qmlm(xAw^Tm>|SkC4}&9mgzDMz0{ z$y;%5v1~Bk+C6tJNsffx>NsT0HXAtszZbt6ro^jEZ|pXzPh(Md@1fnYrmVU4tOWIc zy7upPlg|C7n_j;opS1s}@ELz^!jr`fzCqHEi1p4*g*d{<7|NEndZMdj@ilDYmDtqO z+Q5wKRoU&)Gqd2KMYs%k6POki<uIsx>8TJOe0K>UzdAi`*k;g~55ea(8ZbKwcPH+g z&o4-T%IjZY-YO<_BJ`sB4*z2j|6^G{Tz?ktt=18yDO$PKC~M>rxZRz54dZXz{yDV- z_n-s1v=M+z7&}_vW2?Vi5U}O{k@*m5w1+1BCN;DH)sy78`M`Qd=`s6`Vf7~ZVG=ER z6OZ|D0LM2lT=wg~_vGS!_8@8K`RJ3+$_`;nQ5}r~Cx7vf!9M778GI#Djh1{AXBQVX zp~tR}{Nq(*CVgk=MB(mu-@3$bx}BR^NYeUqU$$st_qNs|j{KzX`bQW4X)Ql*^z5ZK z-84lM->wbyxvVE6gE$>K#CKv<q-NWZwkzAytS}s$Vv21)<c!<230zWo!>8uHE#4JQ z04;ygvS}Y_ISGr1u}F-h_8Fn<8rw16h71)prZ%!-1|jT1_P_j_fxK#6{oVA83FxN> z<>|kMFeLOm{pF&}$dm6iKKBqs_0i#5^0Z=vg@RQ7g`E|qz;fV%X(0)?5KDg+mnNAg zZxxY9s-wShi)-)HzQ=_dJvyQr$+|hsVto5;!LmiSQ2Q*grM2?Gy%rDpj6WrI4=<Iu z;_FSk?pHMqFIC}^pj)}c-LgCD8C`l7Q1%4Jxg$tYF)(!A+PMndRDYHaK5?`VonK!1 z+stc<rm7~7-=CLU95_1D*v9Kf%kgu~|NdOBMO{-dc`W|s5JmAdTOsaeNcd>bY??yt z_F;(kpn>Wgg7l_t01pQ8x_RMO9|u8zVZS)>93_SMHI)anY#z$z*{5&6<9W6YBQ81( z<rs&P@CE2_=Z8mFobG!pjrylayA1MJdoumfxSn2v?OygJbZ^wb_rMI_(?0R~<ufed zB)e*2=^=_iB?N;U<u*A`*-Nb|BNG~k%RXqQO$fCT4M~<&XtM_cIov%E`k%wq_q(yX z_5I<f@UpRaIG;+j1gFE_6XH@82L|oSwyg#RQlnKZ5}a`;y`e=rSLH$U7@g$~(MOut zV838L3V&+D9QKQEezx^Tgb)t%VhUpP)>3vqo}c*0lH->Tsy~yw{_e*qDeQVsB<L|i z=U(mE7Vd((qSXWKU33OE{HQ;%5cw3L6Tb{u=6t*EbDuN%6-}+g(JrB1hGuZD&-9M% zUXi)`tG7bG{3`ItudjBEL7S4o<y58RFRhsz_62F1W{>Dmd<YNt>~EZK(30_&cLuEN z<CQ~q7(MYfifeA&js3+k?Ow+Wcm%-9vJX*6zEZv=Z~9XUFtqo*#2lT#_+FvtZ<ZUq zS)lTl5Y;bj1YH09sNJZRtY>_IL;1gCtRDvLbb)M3D!u!kCfu^y`(D}(I^wU>Q7lZn zUrE;GydHaauT{LN1QKB)?CTZ2li|PgIr2(KoNSt<<jJtw_fh47=-$_F{@uA;9Mw0! z=7gV9_T6h0-==+c_^9ZYinM=s@V|c`;g1Q-izv-fiu;_QaeH6CAV@tRAV^kT@|x*Y ze3O2Cua#@lc$Zq3!6($J^d<Gz!4DXo3Rt%rty%iOUYh=!>yNpnBHIKWf#GQx%-o;1 zyZ5?>gXWia!*}c?`@^oi4DTA}esO5>q!tfFzv9GybNzRJdjGK>-oMvhEk1q8a$%OT zeeD##<zB}2j`mqR?5krou#rC<|C{UQ_~EkjFaH1FvcKIFgqh!N`d^a8Z#VsWD*k^x zv;KC|-){P=#P!=vf4k{#(0k(C)!(4^?~brr8vO>nf3Gk8UZ?)froXf4?`#SPuK#b- zNx$9nx10WU)8B6Tlhymp^#0QueuLh>1HA86@*DL2eNBFY-oLNL?`-<d`0>4g_M1Zb zd*%F_>HYg^fFAJgzUfc+@gF^s|2z7o=Wc&{W$$Bw-!9+bF><UA>5}#)iOdRzcx#~u zI@Jdgg6d9zzxy%%XV?1m|ADUcGm2;Q#Ja56-VC2H4+R){sXDDYah0&oV*Cv`j9wM} z*;wZKpJ*)K*D+oHsRj7oZ8D#`_RYbbkb~I(IvN)2hXY+H%MKfu6;asb1lQTL*)~}Z zJCvzE%l?k0^W;AEeU+bWce&lRyZs|ZG+|_;kJQdvz0fs$iw~&pOT}%=hh2u-ZMkUi zogv;4K#7->3VtPGTR9n}DZZHBu}+q8kR^aX@0ZurXJ9|vJCrUElSIN~%)aK%za1xH zduPz5xLr%7x_VuUcI=`y?U<k%c-`CP)!%l#uKcq7hVo0S3A2&%OT@Jwulo*%t!{Wx z2TV`aLyBD$9P~1eI^c3-9Cy_|y|cMEH~ftpY~o<2)N(y%ep#c%JHFFN&!%fd1i&{# z$lty~eO2awaB|S`p68p);6?rkULpct>0cwjA4S~Pw%8Td1RSE!jZ|E2oGsm%SiUos zZz#;&F|w`{PaJC+N%^u>z5Hds(>$bfBbRl$V5(sNyhr6!I*^tmofnceajt0_iK~+s zKeYGVs@6OgMgN-l;o0~AUKJDfPwQRzKuA;Nn_cO=4Uu<7H>+ot2W?nmZIDa@l786d z_|1)7O%X2Cd5x^K7-<snuq|<?uph6&rks;GLc_kwu=$nypSMwSDFm$2<BJD`&&wPE zFY?db`xGh~-@WmBy$rh&7@f#FZ4Q_h4~M25wGf`GiaCp`3^SDV7T??p{<SDI2LgZn zZI~C|ml1p$SxhngaNkF5vo3;z$D-`kHSwhu?c%WoY511`zTgGvJMnOWN_?#a?w%)N z&VdB9*tG<e+}c>C>1CK^BS}@2*yuE*pb8)PM$>P)ff>zU^Qhgq+nzU`B$!Q53D&5! ztue{5s2*t=;m_slX@nzoWj7(YWLZP7s7R18lP&AV!HOruOD_?hZYp{mmchLK=T-By zj02NGHIdDS{A|CQ5m=<4h3^kv$N4bO{ZUfnb49)#2dhwln9NMv7z@`K92X=T#K(1G zCWg$TtK#6r;CAF}(zDpF^1CJo%#i#OyqL(#H~o&|i^Yd*L9(m`QNRCbPD|>>I0ogj z_RMi8GRM4rz|;Fxu?h2lXM~u~MuM0pVxbV1*gL-6J0#}0k#NsbShNET%?Kt6BMrk7 zcg-is*#$q_tD8YsEVK3)eg=<R@|ZU;T7GI}$FdWzKJ4lkF=snY)R!K_%Hx6`NGHpX zpt}+h=p$R8s&T9-w8WquuTzXPyqH(G?nTXd2iShH?)MA+k2_Ll{q-F^e$@E$j)3w* zkK&1T))!_4lS>UyUIlCoeNqVud=RGQbvSY3U#t63^5b_``sr(Af7@MtlS{ic>8qV^ zoh<j_rK2#^=BQ=MK$5~~BF6vcT?@P5<B09GL`E|w<ZrHqbWie0Iu;+9OPfl>_ZFnB z^VQne23IeCfJ%Jhb<IB_+10cpdGR_ma|5CD*^`S4Q!I6VyreyQVOOVo^k59+wG5_3 zJ$6Z?Rs<#WwA?`%uYMxQ*FS9YxYx{?f3Ayh1PCP@C85t^!T$kX<e$5yP%Bh4_?6j( z&g%2k^2<xwWMyUS!_QmOxqK1!X049<5T29frpw7?Aw2pri7>TFy&&oB(fd@rMf|<b z1qv7qa*hgXwKia=KeXla^;zBE8Q6B{eeRW`Z;*Yo^wD~wHtkxTm0cD`Pft6O0XUr{ zYf8uJhVpP(LkHQ;`u9JzWfvVTCWokvn?u4`|HaM-^`XGRe1QAm{^@=Q(t9@2)kSv< zzvaAgT$h{z%ndAL@)T^lE+Z`(x>+*czWjn_s}v*4wq}ieqHuNqYH{!j)$!4C(%}`6 ziX7MDOb6qemUiQm%Aajmm2Q9I`J>7N^u~9ibDsV8jSlm*$?m4(CWz^Ei|J(+yD{Br zHY%Y2rWO;O*LqNDInuqiU*EPMSzja_{7yG7k2re&KQ9@U`YJkmDvG>JHHE#;r7~g- zvW^NnuQ%w>uEkr~r*ZVq8T)uald(Zo_Q~Lloy9iLEv?yrsG?%kEfa1`Q1zDmViawq z6JI+WEe2MwR^ipUE1K-SdhJ2$AmCg4GvH$v;H27sE?9wwGHT0QRB4)Z^{;l;O#j&G zx8o1<Roy=l`=;EwEM%gWYFayH*ZtXaXk4F%4!g=<8~S*{d)}VH-nZJL@x%3xuND$_ z)xftt8!ih$XG#;lmh3<af<$P(*&0TBpZ+raE%{HG18g4k|FlK=$yE@eY#)ITwCl9w zP((J?>oh?NB7gcPy@<U!WM}0WMV4fyN7)T*%~3|W4^-U+!7WBND6bdCm~CcC{#`E$ z#YWv1*3PD@+*F=jnii|3B;sSZOtJni8&qzBWLHMUs%eVa+X$aWWZ{54+Kyryk@WiL zOdK8gjY|W9Y@B`jpDw0~EDHWGPUnBiIE$x!Bo{aEv|WkiHD>s(^~B<V1Io2i#*lX5 zSvrO7S=11(&p_xbYG+5;&M_QAOfk{;KeMKvdYA@mFWD_z>3JTsrEIypD|L(r<B`>c zCOZmxPEfjyw33$&WlUZ=XtGyMtO366Q*4#HY0go172$FXTC2IKphcGZiJFUfJ<m~} z=R*oOa_zM|DTR~ER`BCFN9URH9#RTFIMX6aIE%kQezdC$xpT+KGD1ip#kXvMS)y1i zE@|8QWwm2(E=VPO4!D4eo*}0|TBWssixrU*te$j-aeGiPFxygH$oTfK>)b#RIYy$r zTL-&p?L7yb@WqL+fdg1I2pa~4%;58y{tNTgbHvm(*ay-O-3_ZA5rJZ8L}aHu#>_5O zFGsis)s~|1rU6qS(=0b(y%FVY<ZS$;<>*c{1n9c|cTtMR<45J^#kaw-j=E?L7VqjR zOPyLfbWJkbTKmlQCvLRVSlQ&2A=P-8G{Nscv?M+G5M@KEu(|=$&g1EQu3xk@?s4R; zy*5NiI62*Jq~GdBqGmf-;-70@N?v=)0$CXBD_*{|Tn)S_7xX6QqcS=Q8_rV8B*g+E zC!B38U+KR>J-*=FsfI02oseR%oD0LQ4;RUCbtAz8x4iv1y6gP1hpWfeM9=ha8fc3- zP0!7C=rV&vIwy>nfQ&=$5H=gr(N)vK^P|C6iwGTmykt82*`7%C&Gw1z@>!8T#6pK5 zWN~f$?YHv@=`^){w6Qq&a%tz(zM7!<u8_YrnWZAWSbV!#@Xz$R@?Pqn81N^Qok<QI z_M2EKR-^SBRJKLz+GtM~kE97SS%A+V`l#Co_j-0=Da!a}sm)#Ry8?X!Lft3w0%jlG z(kU&|qP1$C3YllQ57TZ3EBkW+e;RKd$AozA$Q|WOo*L37{>D60@5l}CW~gJ6tU4V4 zQrCo@bSTFU8|D3XY!p74B%6@9L4vD>RLqaevcO$ez-lVBOD~5hbwiD@u};0J-eIJz z53;v6D%$hrKLrbc^}PM&fd8t2&$*#Ls@)r}?jJkox2w>8vj6&2{Ck>O$B6W5<sV@* z{C^>g@_{fa<evb-Xq)Y8&&b^{`t}J)e4cXBV4%nlgwe`@e$UKB(}1Xu3_dM89a9<~ zv3umT6;5u;Y3Q@MLC*KJ2d=DVmzI8yslw;c*?k~K{Y+l5Am5X7R3ClIkN8@iR|o+f zFIYx#-=JA}!-fp7i6>l@v-KQsi6&zU^a?muc7Pc<JG>npk<nwZM?8Sm79a*#gY*RI zlb&LqdP_ECK4K$HMk9K9WcIl)D+r@lEr_e<Y-^X9EI!0(=_KE6N%Vp__Pzom$nbwQ zJ*(TylRaVge7MH+>^_J6H+PlhV$aS&R66~Q#qV?vrz7R#j;x5}E6N@lgRH2XN_s|9 z`vc|u0NEb{*8XXyKVjgz40#u(_mdXM91(HK&LO*IsioN=X%9`7;xwS5U8xamvu&&G z!SM_G2c_`|wb?Gzf`g{}-%pNb9o>ad9D!sQ<@$8eTo?!ZH!~_Iiz9-J36wL*m>^bd zO5566IGG$4@Hc*1a+#<d*~$BWlk?SDCaV8%a)p1#$@!$VA~4fzJC8gX_@uAaj)l^o z7oK@!SC-4pA-d{y4MSlh*`y@9;$fHHD@m@5_YRi`H-u;Rpv=xr8vVk?H_Uqzv^@Zx zSyLmklLdFtwcBe>eQd;#5(4!g(wD{Z(MCe(xg*r$<)mvBCtcQq9~}I0^mynlNILje zo46dC$K)kt*SH^*AjiL73Hl~74%oho0vJinPNY|QcfW?FviNch_QhJfjWEDSBUj7$ zH#7ztdzeL{U|+A67jCTi`|i3rFyo+F|JbW#kGI@L_C>|@_TT)M9hw3=^s^dxYjuN+ zQ@^LDIS?><Q5wpb?1Li}<XEX^K=Gj#lkP76BUZBhJF${&JKA1#S$2KF2~$UX+h2Mn zTGaDhqSex{v4f4oPFHIe142@2m=q=1_j@7#TVN!+{Uy9>7A+=Pi{lSbQLRG5;-uA7 zg<X?Ocaofz>USiGtzhSt<YEy-x<6Fj1<i2O@!M7Jd79@;4@8&G%3q8Bc;b5<bgn60 z6O*hP+~rh0`#pPG|F2~4ERek)Z-Fvs(p+;mWfuzdMyz*`>%V55I#32tL6{(XrO><W z4@_q%!5dFLA2Bhq6<Xcc%|u7Z<~hxBpImMBJSU_3?4xGJ!eu)D3YjPnGTGx~^I>W~ z(bHm3+<)vTvyZjtvEFH3_OF;%Z+~69v3-h+D>p8Y=`AwYBokeLy;%4sdyz=w+u54$ zjt2WtYq8%N(-qL;OW#)#J#HKh^X`<J6-2n}RL$qvY16o*k}IIUn8gCo_yeQz{q2%| zCr@x*y|v3>(EcGXeHuCwnIbf7`-A$5#r*r!mxmPqmHOVGDybaM+SuK~qAWaFvrf*k zMZH%+ab7pnFr;M5rU~i4hra>djI^>*2a|IQIUL|vtv-{JkNc5(<edI5e+D(vf2?XL zc~t>g$^iwxwl#pBQ8u3AQ-B(?05lA)D{hJb3s@k+`6Umn|3ZxcDiKuWa0{#$ng1Dq za`pkt4ob}|3!e>L=ID-UOc%yg)m;O%tm4|gn{VJNbI9~!-t7&{D+}3+i|gyMCcjq_ zkc|J$N)7_Dh!?)r;)D`Rj9Mxu<nNl~hORLIkEvfad?SNDqN++*@)-2^a4~2BCU|P% z<Ad!!wm(Ea+l}xCJ{5a*es|+r{IxgY88bHvnA2wMx~)^%54bTQQ`ru!io0EUh4|=i z{Ld2no1FVUnKp6}N3PMoYF@0S>RbcRyrn(8N@17d$i6(CP!3Z|4A1ie(41*XWXjlz z@HV!tp^KhzN(5(2dh*1kb8WTfxnptRh8k@H9S<8q@}pxhqi5zWd!$9XTN`ookZU95 zOaDTd<nr@7lQhUAO5V3@O-WG}JtBn21jHMf#sQfUd&XjUi=7N1m(|BWl}N^wI-p*Z z&S@L~PL5lWEF=?0fX9_4EE;c)m44cptn_)iRI;w}eHlL$$exFiw(T=$WQkufPo-T7 z{zkjm6aSy0-K2$!22b$FQVJ&z*<^d}^4jUKjw9{>l8X;my?r`e`@qh0DXlCdOWfuP zG#R{E{vYgpd0dm%)^(H$t%_(>khy9VoIph8A<oo-AfkYPM4^JrATpB#i;9YnT2xRb z6#<nYBJ-300#O+PGK4uum;;1BAOSLb=Lur%?Qq-PulLsW{fj;U`IYmWv(MgZueElc zh!6p+oY4_^HOT-Gl{3(i771)uOUVeicl2MAbqJiZ0N@;i!8M7!eg}r+6nj89c_zro z1BQ-F-guXj>->(KJOj^$ryJzzObjwSqg4}$(kSzS&TuW~={-749U-{4<%}n8v5|%v zj3+~p%p#<8%PKuDviK^`lB3|l*(2#71}>a$odcuz5=BW7B_<<q@b)&9n$dS*(*K_n zCT-DOiIGW#_@2D17pm=#FmS4Pra5f<j9Z||EGwUEAj`tX#h|8E1T<Zg_BhUrU8N+n zyf2pv%ev`J4?pwe%gT^f{FVZJrKb@w#5(_2Lr40%@<#9Xmp3J{nD=b}{#}#yS7|DU z;XU`x-X`I6JM9Wb--N`W2DgjC0vn^dzBkkwKr{rzPn0vLJ_WWP?6xkf@Sn8X*mU#2 z6;S6SMKhRR0zN%<O(Pt4^v0Z3_^_X%u0yttt^o1@Yq>Tp`v<(;C+Nokb^+srnh*=W z4T5p4w!`wC8u-HvL6s*fPdJtTQy7<7E#m~?V~8K)V=ZWg<Uo>MobNH{Kqlegy<4Eo zRHBAgL5@2ijA*Dgv?PJC^8=dCHii%5lsEJTJt#s*2C2SL0QbZvt*o8=Bv4hxW^8Dt zZkw6oz4objEPQJ4_haEKO2&sBD&&I`iJyB)As?(`=1VnAS_i&y3<wm2&_UlWryqKL zG}tfnyTE$#o1LKF1=St-=CGY|5fyH2vg~dlhk;lhL$y~k$Hwr&1-|xqgT#^NRSFJO zJ94d<--XWg_4sOyW|=fkQ&;4DD-4CaJ$_5Xh+$IuewrD^wc3t?t7GOzS4S;t8ZpD9 zB@W<doFRr=pt4KuRP)eFatmB~Vi|M3j>aIVh{OmY_iO(-ny#+SgsYFVtatA!kRb~0 zkgA=_-uG;k8Z-RNf$A$EuZM*CvQ%8p_hHZlBkN|8PcD-6SCOodmurS@WtMy-;ffGF z;q;43k}@UxUtRf3O*=@WSk*xNHB4ru-kFZNFC5FRunx7JJhJYx$NpenW88XNy|?M= zLkUva-`(38<(ehkbg5omNaWGx<w=rWdMam**X|9TYJ4g4NnMGd<354)se^0yW#YD_ zn+A8z?%O-AtdTlU%(~w+%~}rHqsrznpyB*OZ~6DMQsZyG61R`JsXK8K^9Vhci?(cc zZb&-fAeyrycYzB)D`pyE0y-$oTr!p8S-M2*k%^(kCM1W7Ffv0Rr`q}p#|oVM%T~t$ zL%}M`uE8<6*bB#Iht2T!;-*sV6FY&EP4SD}bXveD+>f}<$M4Bc@T4x~fYf4;lcIl= zlZunL-^+63rQOSTU)v*CG?H);OE#QUn5?~p(<aR<C@lqWh!LyG=Mgj3&(xn<iaCP8 z5jqK%({|pQGhEX6?fPQGwh{?H6L5hEx?ISczrcjCjI6-H6I)f&Mg!(s+?pTb1tzIa zD_f>$fc0-mY35ErW<lO9XF{?s!^D=&jAoOphrZjt;;^N2Mn%{a9z~X?F6~*ZG$aIP zmA2VjETrM)+PHk81o(#yo^g{g7eXyNdIaat6iM<|axv~@ZD`j;B`lsR001K|{^pde zHtz#$x>|>Jvx}V<{AM+oo6g8Z=qeXasL95~aYIFl=3gC(Q1~VQ$LM1u5oB(yC?M&4 z@aj0tiof>ikb^2|MM>T{09%#oUuaQvCpv%7I{&3cGoumo{IVe2|9s|?F=KxJ)bX|7 zK$_yMfp1dI0Nnpdepr5Fn{HD7vkb;%@K78Hmy)u~3e<*jzY$R1W*n>{Os;s=ky<G; zkF<W+S>@-(E@_(^p{^D}egSozuB?H2RBelcqV?S}UXn8iGSLb+R!<gq8A;@sSn|pC z5#XJ47#rBPjU>8Ad%Q%T0T`?BB!ziy+<rIE%$vNM)nKTV2xq^58(6wzpRg#>vf92C zGGs~w!`tPg1IJ69=FmLgpOPGN{%cJds5-fw**p+<xp+&^U_5*OH#cjQ(>dfAKqh&V zi{GX*wTP*YMKKcIoS`8RnnRiK`UIWfn?rR%y4`|8)F=Hiv+2x7K9J#(FrE{2VI0Sl z5z8q%H>S1r=&~yeOFYb}_einrI`ORfxBR-sd3Vv920$};(vp?Kd_c;YxYyPS^}(aw z_rW8d|Ik|e>((`{3dO*66E2Nr(;Y&0<b0(k<M&M)7^&?Q9qT{*WC*-0{eY1SJ^y~? zc)x_V`0>k%R+jSP4n_eMZJtCOZ2OobnRQ6>?WNVtm8c<o#J!x3^Hmo{>D;-~qOco0 z+8t0Xi9h~Hto$YH{e}~7v`RtWN2k9fd#~I1i0DU7chG^cU7SbcBSIa0wQB0-Mk-8k z+Dtnmhse_h{0@vE9*iOXr<^&OXZ)O%KeLb=JLVpu^=Q9{4#Ph>CSWXoNZ8HyMcZPO zVnAz^swDSp<f%K>+=)o6izlOA4~zT+H3|=9hUiIol(+GiZA-YK%a(Avh2VLv(eSxU zxTU3b-QplRuM+?+3Ie|!;HQt0=lYZzwsD6x4pothcaC1jbZM}qA+Z;#H_GJjdnWOm zF1)@QcVwU;MV1pi^h6|&$9lFAGl)~(b?&V@iYoSPSYE!*@{KmC+Q<1Amavfdc}HEw z*7|#0Il7E{)^;YEwxFnJm{{nUj33MSfN=Fo^sWCnhE<d31MFy%F~||yp-9wF<eLPU zsmD~8=a1z=4{}6#QeKV5V0hdSwRJr)p0$VN;(Tq|{03qhCgYezlI*z(ROk|39J^O8 zxtQ5CC&=R-RP;BtV56SFPP5Uupod+x=cj4pF9VDaN*jwBQ)^f~U2OD2;S5qsfuXSY zSp&^!V~hcwS0dE-n=x-m;M%2DxFseZfH_<I7Qh_eE$u(>ynd1W^S_26y8GW~4Lyo@ zV}_q?V$_A`?$+sDFOuK2Ih2X!9})C40nH`=lQvhDF;h;LevQFp;^Cv<wi~)j4D1(P z;W3gyNIHn`FA)$iVB&ckw{e<THmuubRapl2BzufU$Dm`p+Z>WJt~lFBf!4T9-tg0u zHxFH1il>?#Qqpp+Yuyx=IT^oE^}@f$kBkB*Er(W<H5GNZ)^m?KeOgfb#t&}%mPpcS zT~6x-#v+j;M$sjUgT}O`(m63VIn6}lr<pZtx|Fteac1mo=UJ())p>V|k%LVJYfcyf zpUD&E!n5&<O<2Zt0p?tDIo&gg2LaLT!=uGEM*l^zIB;iCFmT;iG<Rlb6~^~~e_gQ5 zh2kTkp&gu8@$6S^=;<;s+|JG((cHY!m9n#SA;99VgC6c<5F&N{r7)MX4Kefj0=+^k zIe3Mpd?ypQM3&+az{ra<eWSAATQuv1tamP~J3I8tE_T0~Z0IZXyNg3HlVUvk3|9OS zm~#E0Hs|^QbL}d(wyZ6j4kD-Hs|1P7X5DZu1^%W-{Cu=a&S6W}{Ig@OIg)!z=J{U_ z`duNqlET<bXaIh$R&c%0NP7Q@J(3<`5WKQ1<e2BO(nB2`Nc#iTJk>@yyqEQCuirp2 zVbqhD)jq8jXqMGdlzcCs7moarQ;`ghwk{$EH#DH%g1lIC>QM*;z*f7Y7B_Zed|5@f zTc&jda<&Y#na+z_Fv!{s8Dzbbyn98Yc(zu}-<unxta&kO8t?DzLTOm~QppccV=Fm$ z*(O={%J+1rZp<tND$IUF-+M>lgIJ^Qh`)SmEsGOdl?e4>*FEB^jCBBwIPE{B5vxVM zf_y(O^xw5l;!L+Ij)KYJr1oA=Wa}%UXR3g!VFE_iKQmMrIol9#NJG*B8e9uU??Clh zXZK1dk+JAl9Y5QcoTLTJJ=Ivu6bqO;-4dCK7L}b)z@2OX@s=R*{F(<l?Tpp(P^yD* zt|+<09Oj;_G3c4vJcpO9`E}Z997hf}lg79PkVhFb7WrmO%NftV^boUe8{VYAxvv-x zL$uX(2Fy_TG9zCBI?#<zG~CzGNP=Zy&)UKHH0Rk-_6|U%ba@^Fn-2k=>1w6pTA#`K zpGZ&{N2edcu_)Pq9Nx^EI9j*%EynBHZeG=y;xzy`*Kbwb6;&2&BYAA97LZ8nqqUxc zmiq0dg|U%WypW!U%vJ-Qt82pM#;F?dQ%7DJKgEaLJ4*H~-Utc@Yq#_?Zh*>zrf(|Y zSU!}*;_e80tk`%=f)g7GYH)*vlDtmL@ehF{?w)sx!28gT2Nzg_?%YVk3SCw=)#W^Q zW*`|lxh~+~NP`P7I*c)rNi=i=6?Zf4fiFE25m@Y!p5K4(LisAaM=4mGrZkH6cBnZQ zHzizY4o;}8H3n+=o_ZB!cDU8t(ey4U$}#{YZju?eoo4*Hrn2n?(ti7^GnB{qpefZ- zl{vfa`ish=o+0^R*^zU#=HK^$?*K-`=v$ofonB#r1_wY_4MdKee;JN>IJey+1n>{R zF>4IrZjqiel0B@)o<$8|m;vq|bTA#q{#{Q!^Z<L^RlEY!RWJEn{OUi{RnJ}g|F5g= z?m2`6Z@~Z<=(dwY$1S&4=2nPWTIIIBl8cYgozB1{7IyS03~e#;du{gu(HH|Az)`Xe zZ-!_Dz^(?b_E^tajiK_@Mpl-4#uF8h4h665a7CH0(^|Y(D7Rep+jC3*X-`X-dj{~K zT~)F`dBA>fittlH;1orJ)bR_$(^vVhh}_C=YPZbRZPRloXlK<q6|^3CTMb@<(W`}* zz&|z%EbCvSfsGSv=ZWipJ;+C_Qoi2QuRgm^Y0OjODL5XF7LLbw5$T6yr)yE=kLjfg zRA+!TYWxcqv47Xe#xXHGs{$AkV-11BKf28g-xpFHY3=WzIhIFxbHeP@Z5bYmkQ~rS zwRYmo<PXHn*V$DHg^$`h$Gn|*t#pEHd@Y>E&Kdyxxn!MD2k@Cq2c8v*|BB3=&TRnk zkbI$TuaL|1_s;<RksJM->k)Xr2xpwOqcPRuITb^lIg3oVXX%SMX2P_`jDlW2?XFI9 z7a&C8|Ai10-@Z7AfMhTj$;n(>|1qqtd~t73$cOw0PTQ{?ivJ{6<oa%ZPlD&S{r-Pb z>WeZAbh&g)vPfXJfD_Ljqci;#1l(#;ZYVd4(%S=Q#SIZ4kWsyL7E;D6qVC+IU=dy4 zQ8*j`6mO{3%z|tla|eiHStRR#L~sV|T~?JwliB@4Gek71&7Yd47T^oy62tf{R9S-1 zYry?$+gI~+Qz17m4$-XkH2*SFUd0PN-2(9heijV|jl}#NFxGGb{H8TSBsmElSf`kr zAmhE~gUAG$55LB(pg$m8$c!$#I|pEj?|&am(TyRz*RT9JY8U|FhUhXLWU=79sd#9I z^RYk3&Ko<20Sl>?%*T{KNT4g?xl`EWik=_{xb<px1tZm*=4c=-Q1c&j5`zU!XU4~R zcY2XdoKlt4oNs8j4L)zFt95L?!cxu39EcRAyZGAEi~+js3uDHXUPu^u+#g=1er_dk zIJo6d>){&d%O2xjjA;cAsTL*ND?C$HDv(E8o@D7mfZjoY5!chdREWD?XEIVID%`L4 z1!?M9R|!&1brD1;)ViWRcS1&kua-Em`54_?m+|y!dr2KoONeHnmX{+=1H8}v_fgU> z!ev7L++>SX^^GwBKb7W|SV3#k>Krn3pr++oyG2qtb57~`n@_oyE*XNb+JMn)GYep% zOM!!nI51+3Pxeo{xId4CKe31BE`gC*Pl%8BbthAnwQQ(GPv_wWL47_o`o*CBPMM?f z2SgHodSl4_#9am|2B;u(kB0vo!Ti@^D<2=pB+vN_Z4t>s_}3)Jen|9TI{jHhpTBBP zv6To&K)FaR;*E0GWbTj;Eg+sTD}YY<znwy3m5DVxp!pm5vyo%5hU$Y#9}s7K@v46k z1^KVqqmScsfQ~#d5*HK44);kUcMZf1Jt9aS|A5@}4?R8nZeke%w~-Ui%(L`wFU6#M zz%csrgnfT{y7osEkOMie?pOBcO*+$Q=-V<VQgMS8n%4aRc@2;f{v`6+pPxPbF)c9> z<+==pf=C)d0LO6PX_2=S54^&g{T)xwwom-V7q|ewncKp@hZ<^UNQ}p7#hXTb2wIQu z0mBi)AIN7=E`O4I=Fd<0-plj_`tr7!{j{C%Yjp_S6Mt7`x>7AsXf)eibLP9`4;u%+ zUJU*RssjPEwkTgmT>7+@KSLnv>2aIz1jRKJ-N*$0u23Tj7og?`s%ZgYzz5A&>C-<C zWJ4wgkSZDcHvV`TF-XuJ(S>OM9B!f49%ku3<qYU#654>8ZSr5$YyhhmH-RvEhOk_c zP?sx)ficp0^ndwEJP#ld!3dvy1vJ;fB#ic?!~f+g>>eM5ukaH<JsLos&KY9Z>lFXr zMzKG|q78{zbJ{L2+dDLo!_VN4|1V!5K?BUlW*onQNd>KBqAbe%x1&A(fs%&BYYh;4 zmj84DHMjn=WcTY|)^A<;Wz55UWn1Ls?Mnqj4_?~$OmwZje#V|<X`f$HS-E&aT*96i z$+Vn6u73UX#Fny<4X2GA4?YSyu;H_0*s4$WuD>~cDj=y>`G~b0aio=MojFkJ<?$J9 zq`281&8(fRnbZ!@nVnci+-uY={>Wml+GQQ;z9)}&PMV9^T#&tUGK}f_#$StAQm~R( z;;Sek=)ai%lTiY_;)9?0?W|kvy8?W)2mE8`@tH!oC-_M4iRsZKg+}X8VVH@M!>sm^ zG`QcMy8-8?wi^ae#0=+b>?Y-7fG#Iyx^g6Sx^g&%3kEY5&#g!)j;k61Ml12tFPdTQ zZ{Hv)8bfuZ+g<X{vKcoThF9kpfj$o7@JpExC46&&J2J0EYQO9Osi5_*8-tx;>aZ`W zw$}$+pFJ+o;dIa9oHC3^xy#UBL@d33$-aB9V%){J?}P+&E)Lw68((g4YjQc`lJ>g6 z&$NYfF4{vML65Az<Vw(28&#&jQN{)mY6@el6#QeO7G2PGY>-<YAXUk>z?4nBRrOqs zT<HP3B5xw{d{H+nXnW=X5&zr94(?b7#|JeqZH)aJ#U<K8!Jo%n6e{)=^xr45obgFq za9oM<PUBkTy44e>!4gP;k1m3bpvUeiTmH&?=eVSE&2;Lr#D`_owx_PvBhBqpx+sUK zquK)0ecA$);`eKKdc}8O9eYc`X3zl33Rar`2yLBro9k}D(SRMQFoTLmLzBC+xxI_d zj=gHiR38mPsE>x;tx0g7Eu^`(NoHoYNv3$tQuAYgm?L!>><u91K(>ik3Y3Jz`)~D* z2{=;}I9by(Agh_Fdu9&EsSV>Vjd-k^bkbQ$3TdxaV(cwnwC<sS&P%}{0oe2E&vgb* z97-%LPI_`#RbX5@?l6AMxYY8meFbG0Js<Akk^>rGC%+5^OTgd7{EZDB6)|*ZW%fQ@ zd%>h7Q{mS2rOFtu^@o^e?l$>i<kE5{m!~eHFTcV3VGT9*{AjcBmlf<iuwc+;150{# zc;9Gt3vB1wh$Lb|<7|Y`t$aB%Vo#PD>TQ;yohqgb9D^4QZq>DpZmG3H*n#tHz$2y& ztOz(YQx0%vVOS)0mPCK;NyK~>?fm&Nd#)F<Y#P#@>VDQr+1XF>Uz0A9d)Ia__^QCp z19$zu6NU-FzPY=}zb@s**TDftOqRI_cKc~Zptf{tth+V7TzjzMN1Nc<`Jep*5Hb|# z)dnBmHkkCx{*?UMwRSSpeK*El>`I}_7+JUth?|S`h_9pdz25|$L0}`Se;+sa`vN>R zU*^Y+FPfIVZoJ&)l(Fda*3C!alb=k<iO72zrN>n`xUtI|5Y^5ymmA2)kcO_P*rqP? z*aif#FUyB~CY$7`!2t#l4X73gnC?upy$#i~Hgtz-oBUY3m+3!tCAj_-*L_>bF_O{F zd3&|l^_WIE=Xjw09E$i(XN4^)P4Dfjd$h(C-K*-b{kNV7wZhzCd+wZkC{+CV@$Nj* z?(8}{SR6rlC~|RJ@ZQgeCBfD|dUsLs10SB2g_u9yr^JsVUuA#mx-_8q@-gEx{TT}7 zgSy)@C1~_VQ{HhGz1GKFq+9<GafDv}XtTYGIHylt<%i~DY4;6IJuViNgeBR$Vffv% zKu-kiV)hQ71lNUP%ydO{zp*-a`5<hxo*WHp(%?*483r(=O#^fy!Cpz$9Suoa)O~#* zE|hMM-mWU8yjdn%C*>a-Cqi%Z^xM~5H>ReE8P(31|6|XF=+~~go~CPP(Qwolxjf1^ zVR&_}2$W9jEnm7n3X$@Kb%kY(((yI!dt4RycW6+_NS1+!zt^#I&){zJcj&;!e}~!% zlz1q^C5Sq_KyA$cQ|H}w2FRZ2Gtk9x)%?t-lTK^PQ+!i2u3TTd;^pYs;k~Lbsg+T& zcZT+24VMZ}4;<N%B_1?Dx0+218aRElOnLmi*pIHv&9D7F%q^f?5K1)y{cbEA?dY;N zuLsAENBN~LQz{UtO05jgb|{Xu2Z!JObW!B{{H%J>#Lwkt;Cgv?0m++)IbtgWgPug~ zM#d#I$7|oO*2(u5O)jP{OGYYX`mHfUGo=j!Y`skbY`qN8AU1R%Lz=9KeGDL0HkvyF z@<r|lrUHr+A-bB%s-5mHX3Ixk0Q)uM%8as={iLl|&FH3{%hxWE`mVi-pI?5lQ)@>< zuyyPji4kJ-e14h#@#mK<F!!F+R(iD?S~663;;rwimN4o+^=L#Q88NJ>*S9@r)%fsh z(ay)>^N_$sE?H!Q>AEtu#S;3~F30c(4}%2G2h8VGpV%dz1vyp3zF>~uyPPWWuai@W zZ?5oZ>#K?+T>5OaP4O<dJ}&A0!P;k!i3Tz1N{28qogS}k@Z0+(;i$kTRIL?J-QV&L zQcU+-@iR+xLL0hRmm6?Vt=daL0=^=-SV=3TI72fTA6Ml7vQtNpm4bY|F`2Vd6&5%{ z=r5nJj}I$^UpQ1`Gg<SiTWG6EvpKExHZgnKA?_>FMI!!ZLz5JjIYB|TND-sgx0ikF z=*hCz0_$!azw>MYCc}8T{R~2I=bn+!8@C1PS8shqij1DRgnMc3uyS?Z?OtkojsHIK zqY=L^bRO6b&3Y%q)v0X>kon4J@MHn5>#-c;L~WelWM4+yH&p5o|9yzQYX4{aROR`h zlYSn}m$&K<!W16{(PenPgY#ugu+0(>mlg`c-yDk+D|@Hg-7qv1vycwx$yo}L%60|@ zcXw?H*O_i<#{0}p*6kOm0DhUPnH`=+sTSE!y=F`;UDgt0(Sgpugmz<>E}F~En;R>n z+%hq|mX_O9(6IYtU>7J5{0@!L-~9Gc355AHyLhpxIKRzM!FcsBrLsxRRTjzxgRic= zvJ-E*x9EEAJ=@3f-9a7JNiyFElq|Z~>Tp+vG5o0RG`g#CU-Tkh8Db)0sqYHGP1*t? z{`3#S@#%*#KU?ZW5*E_>f-NH_#lAjx`7WVgWy0LEYR4i%M02|zl=ur)2D}FjN~FH{ z(fzSda)FEys!c&oxy$Rpv;_#(pGR!czf+#9JN2ZQ09d{!Z%C@8H+}l-T(6qnM6Wu% ze6?-kW8;k*PUW9JYXt}s8G$nsrkN!!Iju=vyz6VX*^IPgcmP&-MSrv#u9?H^3UIUX zA4*J%Z-?z{B1hdEpa<<D?D_2#*bQM=uEs!-Z;u+W+y(7tVITva;ME^QK8=(G@uJAo z%gO<jw&Fxpm_zu37{g%HiTQXDJHbmO2U`m-(kR2e-HWxGOhjwp*VKKoVWAw2x>fVO z{`~J>rc|3_yJrdqABNfty-5U=`+#yKf>cAn2;jS6mMIoJYx-pTaYFd@p@wA4RR%Ci zz9GvU4^cv~S?W`bCbq%Cs#iDonD1U22q^kC!;MdrY%6axbE@v_2!(hoqB|@aXGbo> z0RS+iX4mTnZfvEx-?gR9YBk_@bU9QOv4N-UeNX*?uE!iOr!$m2kh=5IO!m^A6Gcr@ z`wuP>>Yd&-^@SvC#i!MVRgC*)a+d|?JVpG4Rq-8WG*I1qw@}?gJpW-Q{@06t_frO< ziq=w-{WYP+35P01S~G2{qm)t<=W2a$t4Rnn(%|0iErz-?y{m4<c{QI*J9H7!#X18I z>lADu*ua!G`id@L$Xbno^1=E9%H<g@^YkBI+gAgpR$>&;np_Hzx7~U&KrzLrL-z&% znS@qtTYd(W_O0()Hx<HB<B~=B#q-F@;>?C!I$+%NgHmosuyt^aBC}~OF-Y#4cWGhC zBj+C~zW+MLWF;11=~k?gp4W4|1vNKH5s+n-NJMV8%G;@s-}}9(0DcmfxW#@IA2{(U zO3TNUdQZc%zuX`1S&;rxwl+p1(~G=Jn0x)u#i~d}giiC!Ks?z|=A1yuakTBBID)`y zDS_X0J$87EU8awl7*#NhW+GZf*J2-k?28K##9i~=UTFaeK+4sP;pUX@drBPZ8?h|U zvHXF`C?(rw37gVymw2?EjjRCaN6!uAT65}T5ANYx@@H}}D@~FNPEsc^fxR1z1JTbG zoqmc}+DN1<IvalRw_`u+Bw=HLT)CdovsFEXa`9^dT#HZqo?=FZA>oY5$94f=bo~M_ zy7}zndnEL~4uW+TL{-Pb;bXYDF?B}WehQFapQL=hfv4u#U)@Xu6itzeJP%5<L{Cz* z>-CiM0)Uy_TO$YduthxLLj6JGMyGJi;m1+B$XSc{WJg$@bL(@Q&i57EiE3qH);$^3 zA*1@o8LZ5qq-fP4lEhW=*^29HjoF!{f|6NWx{>CR>&W!0eR>!fX-T&tkAiElPZIY$ zK$hOG!=3Jqzpylq_Nc-Cl=2WCgp7e;Sx{$zyl_4r1fabdIal7bz|B}n%Z1cp7rLWa z!?;1)he@ms6#`d4iXrQT@96I4pw0y@fT|_wgPf$!a~r6*n)kN&RO_6$B(;iPe5R&* zif;6++qP_Z_Kvb(>+HkS5-wciEPXla`3g)a0H{Ew=6!WQgLMqfZ$iv}{V9YCFmI?& z0r1BE--$_{!e%IfSA>cY-iFA^%#G%fB_dO;@^{q&@kKMSR+F0A0>EmLL{FO&HmoOJ z+Ph`Fp*FodTNgiGw#*jXvmQVuN{9nO(&m9D5-{9R<zbTN45Pt_z@k&;RIEfPzI*Pz z=zbe$I45@R+Z*D_n^oJ+ZFF6~U(>VRAp7ci7g!W`kvsV?c7|5_7^LJP`%G3E#`@bg zds3Tn8wSU;V%I#SdFtfqx@bW?gToKH;EEEkuA*}uQd(Z57XQ#}&w~{&k4$zH<J}K; z@Oq!KfKDU~x!I+m(D$>k3*^IJOoSRd;Q!+AGnqB2lusOAR`Xwu^QX=t{wkmJeu}>$ zRD7={k~<oBF=F$|w^f?+3FGy(EwJzSbw31vD^C4v$HliU^v{9@s5TQ#Sd<DN^@ppo zx`QdtUaYXBd=JjcuKwEC_Sx1L4Nn`!V7-&D2QUsPSHsc6S^!%dO1(j7YR$CQ%aFqX zDNSfBkQ1g6O;ljpr!S#6Cv%)nuF0?eZ1rY_)64CZbdKkWU=Xu-`(hJX$d%#JRXe`< z%6?i)SqR__^SCwm`meY(w-V7MrnZB9Rw{QcD{8lEho+q4y@4_A6Jmv;ELuCAo!~>* z+isNp(`!Qd5;B<uzdvrIvV`CDGCx9b9-F>zrYi4v@~Tj=<ISeMJiSGT?q1m?KNr(} z;VmrRw|9$3;;`lAxTEno`C%PL&JYWZx-w=90ld#?YN&5MUgC>EZ(#ffU~YQoE1)Gx z%bV$swtbfyswkW+^7W{WR#Utld<{q`#x!qs0bv;ZHa0M^N!_VA^`w*4BzuxbsJ^Rg z+w}B=$Lvrtp~`ytd3NPjO|WP2L|YT8k<8Jt0h2eK=KiKW{!^2Vlt|RmR*reUaRDh6 z;gd&W=)dZ!toICPNR#yuPhsw_=&G!Po)A9y(D%j&^`3?Ae=?ge!!2G$nOlYyC(tqi zoaerOdk&^P`p}3_tdCyHyHF-uc}8p0`~y^AA2IFUA%|)Adm<NcTOp*V<S)^QBvth0 zw7Z5@DdLNoO0efD)f^iiH$|R8PBnSF5LPR%)uKs3iaye{EOo*z``Vahd;2&)yBo4_ z)RfmU(d}1(5GJ*0&p6OdUz=+7n5YFH95?9#=o}o5Re4HXs*|E{Rtw|AeseNG6T1_0 zEV)2YH|O8r2OSiX_^<#O<aQi4M7bvod++xkFZn{ng3*Yv6sG<nqn8USe7N<8#^is! zS_PNFWgp@_m2IYJ7HdPKz0IY7w?<l3oNv!HR<9gfe4A<NRZ6&)Lei1w=GmFD%lvyl z$)l&d1^B60!lTvPthZYise`vvs1B4b7VvGA#jKuC3U`i%(P4HdhwIJ`dg*@7&-N21 zwZRccH9loFc+zW2yPp*$vR0zW@3P-5%_by0<5wFc8H>8D<GEHHoR<moY;i(myN{pO z$DKiaW#C#wuVhW<;yY)3-#j`D6{mSX!D@Mgon&zLbI6)z*m8gvFAMTkAA?v;6}#%F z`q`O>2Sa<7Az1sU<Xm8)5vA>Se!Kaz`%MSj8;+=jDHFAoRXf~Ycp17u6@ZB*NL2g4 z8hc%iI}!OjmY{+fN;Qr(i_&{y(kUj}z7Y0*u3ZVGtem?<Lae^bwHbnpH0@r2)5pEw zp-TDFZB7ZS0Uw@o;b@LW&o#NqSt=GkOF#e<3`%<8m_@>()AYAs+pa$7S#l!9G!5qs z+)mDQ!ohxDm5h3@2$*58N?X9lrDHm(xBDF&Ij;m>-<ApeT8(=0c5ljsOuGK2nXP1J znZ)OpbVRyw4Vf2^`NqW2&>K3!HmO|^&dB`3{3nqf=zF)_8a=n^w@kvuv~=`I^h$vA z=MnAkE8zjGx2$&C@awid(apviCl)iMk8wVQdWKR0$;j7t`51rH_g{s1`qiZz@=#t^ z@Z@sNJ`4Qvagithg9-j6V6c{Jhu>0|oj!;)WG9~v4?>Ik3t_F!=amCQIB4jAnjzzx zSKmY1ca1PCng#XKiC=mcrTng%3di+C+=$m@91WyD-bm>T7_<K1zWWGK@IS~bfQ~A2 zMzPXJCQx2?E_`E8aRBYaKXoN!SeNyC;576X3YtCREDEVO=XXGFlS!g&%S$GG6*$LA zJa@{!6$d&0kKp6geLo@^ERaNS+Le4B&J)u*em=T&YqfUs<#nAQXH6+Oaamop%7AaC zytAw7J!0Aq``Pv*py#|J@Z5T`ESqElqPW35T_b+-*dJ&0yPzEH!O+Ocv``vmS=V&4 zx*wVJapUSy*AF)g%!k~Lh!lH|Hc7mDo0xL6-doToeVe6bXP>QRI=}#Yo6$}m^HD&x z024%Jvt)AwgUETDaCI;jkD|8Cta7uY^UCBg<}7P`y-<^!dj)XH-n!JB?hP8sOH$nn zHLfh}5w1&{Zzz9pUoq$SyUOv<yRKR8U#DyK2jfK)D5?t?W=c@Cuvs!yw$Ls61iSa5 zknPO%wH`Btn9$tf*%MROte{@|(w?cerjt&f(@a<o=xXvEL7k@aO_*TKH|GJUy7Ie? zY>9Wx_KuIg+3pDQrHgPk))oy9`!eGS31S${U4{icuUR3oyf170CeL`Zaorvp^)3a3 zjN>b@BDwbv)ZnW+E6#*J(0eO5k~5FyuWP({hq@PgB}nQm>D)U;M)OC{YBUij0p6}F z^=f&A>i%twzBGo8Ef>R8=F)TGbM7q?J+jD?O~Ji5ri8B?atpuMpxZZ(z8D;SRGF_m zcp@QBe0e9oUneLMc{ybJ7l6;VZh_Bt`u<CP2>tK3lKv<!!x6@6%p_KpB8qm8`S;eV zd{R8jkt@I0ZZsx8A#TRe?-&ogoI#(p?Wr;G4i}L<f0PjL)VdpIa-!6c8I4FuLfkF{ zG#+C&_pu#(8c+9lVEt{-qF?`o9!upND>#4Zqh|#-!k!(a*KWd;YvCuF@_5(eYzfy^ z_l&5?e6BY(doO%3eqaJiP;<rGhEWauIJ!#A@!ShVxv!UuX`N_HL1AaIhb5*pzty;6 zeOoehZk|4EZlGtCCR8l3`1~bA!aJ(0<==rSyKEC?uC0$g%EKv#w<B}&7=u1{KKGfM zRJf{l2QKXvRdlMumsZxqEb=6s>e)t+HgUXRt#F<^bTFIS30RY83vaFOHLkd>m8_=D z6M>?fNfz0EyOjbhZQi&nPKL~Gm8MUViZpTF?2N?nPS@Hc^p*yr-1N?Gf`x4`Y1XUY zsP0l<z%^w}WDv@YO?<Yf80L!Q(=Mc#qp@oEW`s_mIAG?hISP+u&)@h~IHy$5BjmTe z>)&w;(*82sf<KxARSE{t=4RK@F}a-GU0}R`M}=&0;jO$7>+>hs1Z1cM2^T=@q=f28 zi_4wzILm&4L4Te}4m=lw<Dn8Oho(0$V_nx$X;b~A*%W)V1VGk4lvY}t!*8wzSNVk9 z4*1(etrpn$<x1q73-fi}tN?A>rZETyA@klu+P*TWq6|8iP(YEjb`tIDlydWQ{qkq$ zmYNe}nX#J3cfgZovL`I2=Dzk^&N1Chr1L{olw4uDS>Il4`X<T8lJ8=>(%*rRH{QDq zFODdlB4m(MEeTWTSwdok4t3b6$5XAVsCmk)n0HCteeP8vVW@u}*hP)Qylk+Gunw)O zYLsrBaD0Z{#=rYcD_a-)|LqcOP?*Qf)}-|4!`a3o69ITJIBPOOKh$zJZ`(Z>Zrpyj z3L#@Jm4}eZrz#{82B)DF`sbaq8!6mP3NxiUl>FFtJlYX)rWPHO>4m!e);^qJDsT9{ zK+nj2ku6BHqF4cq@z8=d1|(JR9fi`br1s}t7w(^$58MVhPHAm_$G|N+8;K6{Q{#ML zoiWqz!3?RD-!Zm~dBp!!o;icH+N1yC93k~Zm-#H$TH(S!F%y8FufbQ?yXGlXx)gbA z*PVL-0?<r6P8`7@$`V3EG~~fXLdN*jEmES^?f;rguDU#?Rs6UaA5e{*GOBXb+eN5L zvkCS?&ePr^MlDi6k8=N>@NuViG80c~<c4pC-g5yycF76oq!75H1*~!(yqIK|_-agT z+zE>gaYUhZ`YcV$Obw<@DdA8OLW(mOoMNj%TtlcMr;xz5;AM??f9birbE|3;DUvVA z+1Z+&?fAD0+CH6AO3VVP<wJ$&$qaL>fzOkxzExz@7FR1)RTD@)C%_81Im67!FYcDU z>?f&z+P_YH)TGubN#?j+sP%6l3`Z@0vi(foB2X2dEW<579n>NwzD@X{-0|<RifYu) zkT)~le6jiUwpXNFh(3I{b#jmYKH{6H(L*{9+>T9ae-~E=S_{R-MuRCaI>P-`wmPqx zNzsf;xYu{5PV+^OXTzRP^rS93ai?yP^?^kc9WK4@9jCQo=?&(4DeUi7$KJK?{XH<` zGgTP7+{f+eZK95tzOJ|TjZ<jOvBmhY%*meckjPY57)wlOL`*iI;X&fq=oH8^t#4C_ zNRS~U*eWJO*$y7eE-g%+&oc>LvD<!nGC%gyn7ybw*^Px_+x59oB9-B5C~D%CUw6k6 zc?YxsDQZ|SD4B*wRHHJ5Vfxq9?u*?;P)hFFc4rxBc=F?w$>&cz6h!=+<Xr{#tMOHF zr7zCDUBB$p&HH_qFNj8W9_@vsC;}f1cn$3uc9<H$gs3a&!<|A@Hd{K^8+Y5I=Gt5A zru~fBwD)m6hbP$+qbA!-@7gMsM>}qeoh|MsJ#}iKf+OjF!u8qMyZll~+9O+r;rQvx zRj9CcAiwKJ5AuU`D(V%=Eytn&(-@0aSMiS8iAyNK=yEO?#Ch&bh5KKK@#yBJfn5Xu zZ*|~3Iqd6pds&Ci)5m5U>q)03l@YH`JeL=5RWoPa=7;oWQQ>(Of4h)wE(zntTcXxr zwj*TJkmE+SAo1=p?nY?m?Dn4PwYMqT99=GCotrBR)7sj6V_7xUL#jr}y)8K=pC5X* zTx(R11caqEYQYcY)l}VYpO1gH<dcZ?+JXyugLU!~d{O#;or?KK^~lhobf)pdMYQv` zr_V)*ly^ns49Sn9b;eJRz-c{E+Ndg4aA#60>{)_MO<oCGf>8g<?Ps7?UoNAtOyuOA zo#JJ-@3nRpH_Ur5{MYrkcg`FOOg@DR^fQRsxxRUu=dm%guto3k(AnzpYpZPml}<W& z`*f8Jj!q#&7T_pBpDCQ<H}gM}iCdNQJE;Cn0wrh`-KYl#WCtl-=zUUooZj%oWOrJb zI{W!d2Eo*_B06cL5kSQQbH%#-MSVx4X=&##&Ka(qdP;Uer4?K$4nH0Kz^qS@irY1H zf7jWtskl=!R)sdb@y=_<@0;bEn|=O_AFt*ne2>eND=xXcDOEdY@8PqbZ4>F<i+%n1 z^jVldIbUF;^WghHWd2E`K}dU~WNdvHhwDt0V;p%MC-i2u|DAL<wc*c@5zhxMGA_j> zQmJ8(zG%c@CqjmLI0x7D2ofKq3Q_rLd8b>q#q3W#etv1i_=ctHXmm`-yB4Or>FFW@ zAEyT#)!!_MVc8f!{;RApAH1Z9_V^y^bD*~<zqQ4rr^OcI!U;%*gApZ1tvqW~Jcv5X z@~0<KEF#^qn@l~}bOPayrK?8I=;Qzq1BN+i8EW+1g1C=bM<OZ)fLjO1M`RR#ds`H` zSqSZ}m?an;Q64LfLIK$PnEZI|7>lOPrSal@J98p>?n~#msleFXlG9<6U9<h+Ow;@l zWb$?YCYlP~^wbM$y`6-*l=Hz}i20Hsbm(fz)K5x=ze-{fUJiH`o9IuBkWZ)RcF``P zl*%wCmBrg7W{$*ZYe4+obt;aHSHCh#w-Oh#a^Jfhfh%g-?hb@Y4xM<LitFpNyq%#b z6`=Tx#(MF<pb<&PfSNk+2L&A9#JF{EGxMl7^(X+rUQO%piVR<j?rY}VFiB?*w4f)v z>9eEOt)LP2n#v5z4`~Mh$X6in;*83QI1NF=xm(Ko>SO1on-T*P_szn3>~>}e74HhF z>)yml3<`1D_0B@&e@&}97=aH}D3HISa7qH2jU)x8lBHG2fC)-@fK6?A1crG>fWP_` zwrJut>#YcS9fg3wm>B7(sJ5IAmOmeI(4-Uyo3<wz#!4vLRiEp`1D1SV|2-$0`iBS8 zh}JA1o%<sy59ka`qsijAaE7}TJKd*}9x&2u+--!U%_&i}crtDs9wAY>4$-CpCGY@_ zt_Sz6+tBYw8x|PW>|=XYUtQo(oIa-d-dW?n@6G@Sy*(A7wp~SjN`OEbr4!%{$mw=d zXTiV+pB_K~!yJy-Tmj7MwKu%Utkq0uk{^E*VR#)3$8eqUdau9BAZiT6tkdzoP_&cG zlc|QNq?I?cF+#UA1b>H^+XcpoEkw(}alDHxh87Cmg=fCx>4_`K^SZD+TPu(D(F}6$ zXpeAv@$)9wcrTK9ZCRI{K*?;JA?lk+Cn*8X<uTJ+>=hu;^z_#oRB8dHEKyN&`W#TE z!XA|BkLxcIA${}dyd%c{S~KPf=GXvL(>5C*HNfzV)2*Jnzb(t_{a)Wfm<`CgMP3__ zVEmEoSVw-EQ-Af{)l^RHP{9VYI;0{&D(+@&lUSmFzy(g355%KUDSr2XOA{wd+)oBr zuPkT$c8jJq*mzsK;#Jul)=~q-Q#JHbwUN1pKQtbvR1U5#*_R9NWO~u*xy9MK>Z{)3 zOj3%Zg+PnQ_+gvEPQuaXtdqi^ya(#j)bFNn>qPvg(mTKC0A>Sw@9)lYf{^^$zY3oh z7@m6p4ybSj7`IosN>3`Ia#O{{riV`u^nngfVi>r3Q&q~pU9zkPn4yOPaX>kkikZ<o zP=P%70>9c&eLY~GK5rh7oq4JEki|Xy$74*F;#gQT+7D5!$@orv^1i^KH7sQ^UP*TX z%M;ZzYF9zIW!CgO2WdI}Wd3t6PW;GZTi!TR1S=9Q40CGAsqXG4y?%V0sM5b~xLzgK zc%JnrnJq)2?8VAlmi(?=dr;+z`+^tl0zyvd-R1LSt^awTVb4rb#tLcSVCvfL6&k(Y zsVHojKr7qVI&(($%g!DJVqn*_^{xd&Nzkw-8^HVZ04D%DHFHqx)S83E{qIDp*r|MI zuOAtL0*sc^anf3U(^Id#Wk{^V%tKz*XJir$y%2%Uzv>&|0yF0~8sb0+NUwj<rT(zQ zZKhqZA`EB-%;H&HEpFhdEklc`#bgnkD63UrskFD%r=chVYQm2v%JkPni-n3QhQAPj zYXeO?9!NESvN{ILiA;-+1!`1&;-XRx28Bviz_mu6?T-Q6b|)n2?PambH;MX`!30b= zp!|CBbu)n=<D8rRN|fvq=huHXYUi1K<jU$Z_klA(?wt&vM(ckT^T6T-P-#D8*#i;r zISvKL&DMB@Z@421ZU$#S=pNeaopfjM<>@8C`{usAh<>xB8y8_n^{RQq_aJbGoUwp0 z5O9>6caj5cVdOya!@MEfL64EFQ?}7Na?A$~0FBc!w>%}(1s;dqiP(Mv?$_C+G*_p> zGun+ZyA<j+bEbMWm)cXKMO(94wew4y-<)(tV8!+3O|*ENeKm6O%v9;MbA4jfN{w6T zp)1mXDVInY&UWm{?4&V2h7D`lD}5_e{Ji97`vw3(MrW;H!!L(CjMDNRF<&N9w;Bke zz8l9Y1CE8SV8zmrl|;|+L=^DZDp8*Q`hz>&f?*gaga0JwF(5w1%{E~xrF}Y93CRY! zOL@246Z-DG95x5YVN)k>l<&yx_?*nDRI>pS3BtkD-m__2?1*vF6>%(JkEjTZS<BWn z0$1wgd&WQpm>iGNti;HYv2UNRgG91|A_Jan__{UU09|uN{UJ$@W#Vt{hT1(nxZFXY zgdq|%XXsyp_BjMN*yxq_zI7jN)XI#r#NuKP`H+Vm9Yw}d^QRozAyYHMrBhtLdf0gX z!B9%elR|)8rE<`s#y2{46FKEfx9jaP{_5#-6~*+BLYk;p(M;W{B}H@fgq}xk)@$MD zk&GtN$nG<NY(Qu5C<F8}KLEq~(Dgfpa3=d6NhsEPI<3ilQ5XE3ZHseejrv82UGp%Y z<l^>!k?JG5AANQJNDuj$0FWN4!sanRVCvSb&-qyrD}W3CB+E3Q77e6YlCJ|p1C4jt zEKuP>Lc}7!$%p4|cmW}9`s$%rpDuAQbj=KMKu`jjDwT9UFbm2SBnBCdO;6Q1j0VbC zFuKyh_K_pZJWy|l6c6kuw6Avz0@d!U$~U4E7FQ!=FK|XcKd4pmXACy$_Qz)}WyNZw zb>X$57j!-Eb)X;kf`s9V6kRP?RqC!x2PKD&JTJq>-NfSVSz5)Yh~hPL{$#qkcUvQ? z$C&18e31soUh2a%uC9z#&i1Z6%8Cq9vt`8$39Sf{Icxegeg<&{8)i|lLn&`2`|}M= z7hZiaqIEE?6W+9j?|OJzB`h-^ys_5%kI$|Lo*@TKg*dWHfFu#U#^B1l#of*=(eE9G z0-wbHh=lykuJH8ArC<BWpCE5#T$;_Qap~n7g`7_yk*CbXhOu$sIZ2Bv1K6t{{0FXo z;Ov26X*qf9i7Lx5>~*`qghOE#$krw^gtS_R`~H!l$y$0B6Xz5ARp|aSkhD1<y}=x| zN+1U{L*$+={WcE_JGT)21j?Mv-K6Dc$5db=1CuR$8^O7mTNl*s#5KiQbBfwniSdr! z@H>9D##E>z=`k(NvFEuSjE=4gRKlssVb0NvTqXV!=@kEabKraLfAajO2M$duV{yw6 zP$?tRj{8Pk0u~2)I35Gv>-9v#3pa*?B9m1}2?zLA?Ev~A2m_5A@=9A00?uy^vf7F% zCT?g;LO_ZYAm|+|9%c^b|9fz>0!xMDau7xDuOgRwG(L7R)2;#_C_O+!8Vbe_<$1NP zHqu@N4Oz1VB5DsH#i#(2doAFIJohu(PZjLmY#6f+sJC3G_6zD@pzIQZ3>>KT6?tNa zK#vYIkCOpJkCpX$vc<J}W&f#)4iunP<1KGkgm#pKTbo~UUJs_L)42OurX4{U&vD`R zYV8^ygZh(+_x2B*9mSJ>2fQx~;Ol5bPWwz^(B_qA{t^}sQrBLEsdcS`25wo(8Ue2i zaP`RMl2HLE*T@hGc4@VtIg+}NIX*E-t_1Zdctcs|j04{;L!9Hx0T4_)Le40B$uiNb zd!It-qX%@*u1LD()eZq&^|0I51Hh)F<77fXdR^x5v7E`gN=2Y?oLo97@AY)9$M#q4 zN&zM_Cxh1Jz9qn~3FO2}kx@Ke{5HwMLp8Pc)+XqMUB_z<1~qRw2wuo&u~}fhv|gi- z+(@=@O5P?xHN5G*NB0zz2uCBH-4(Xvrx(@trwXJ%iS)GNbjQG6Y-#uI$0?vhGOGPc zRHow<QC46;kuiI+5S`QM-Ojh<;Y^Vb911is(t~u$C#@d#j5Q8qzSkaVbc4fWiYNpV z?y|<>)jfJJz7aPUd;zYS;Ok)H!Lsbr&H%1_A`|`fyjyJF*O-He(Nn2kPn;-dWhH(e zc-u`CbL?bUoRB+t2v|LJJRX=nSQ#g%WJ&|rYsVx0laL4Wz1M2P`L{QX_<@mA0HyV% zKs_GbD>+I^E>}ItEz^sQ2OKMDudNa=SKx>jgDOF#IfVjxUo6fnaQZ7rnD-jDAjLXQ z4d3@IX;8D?I^Y;n6>P0?J-W0GaP`-|nLQhXE@2-7p1R_H1#7(6s5QDMGLm_aUhGYf z_PHUf*72-ihf^RIl2n6AYK{J#?blvK$mxOiat#gnY#Myd%=#TZo1o45eexYbB#M>L zGS!C{Q$vpfoL)>Arq=HMLcLFTE+>5lxHEPliL8#BZnWP4cl~{2Ay7kTn1m14N4e`e z1EV!|ucFZ@{cd|O<q@K7Q=Y6PR(gXtWJ%Ojti(u5qKk-5mZTgYK3f~FHF0&e`@p3+ z!?X!+sSdV<-ZjU<5~=+zZ|qdu`6zkjzUDa_?ZKu(?_hWPcS;)MN3Wy-OQsM2>O`Lg z5u219s+dCV><yJqa1gew6N%OtvzqvdIzZ(ZZJy|hc58N=HDhm)fN|>?I+RI0T(Pb? zsJTzH?+T7aY)d$%LyEF}tVilN#8(5Hc5U>x!Uz@nuW{Yu%J-WCNI)GVApuRt|GmlC zA0;9;3kKn>^LOcbz6i_c13qVDJ>9G;CH7WRiXN{-T(6Paoim%^aKG`==79+7T?*l3 zTV^vJ98+>8DNczN3t<#Py?UznN~N8I5{LNn{d~Pm(wE05Rv?cy?pS`sl`ppm4yh{J zFS-(B(;u<G#08c&k$-}IjfPTGwMKJ%du{Ep>&Lb5>?Rg7p1e9<yT^roku)mZ0O!m= z{S=#M56kjGW=DdT3#dRvm~9(z<F!8Es@~Ay<9Iul0suA5uaCDc>0jp<p_+1W9#C8R zyh{uKYF*iqm$cqlg$_-A^rDkCAUer9*F$PEBSsfrDM6pFQ0t+g*$9v3^+FYwj;LP4 zAb7>TtS8Afuk{fUkPxLgyP}xZ<;es^o?f#MK`<!W(bCR+(&_B+rvnn6%clnKwLj)F zO{>E!FjV?|GfbKAOP6=THyB^|w$OR{D9!sjVB@RF#p_LVnO52p8JV^ekPz*d@FShV z7ie_Tw&L4Ou~%~qTJxt89xm#J$}BN_m0-}6PAnTDzzP0Jwjmy5Kkk0g_vPYmU#*l0 zUhwo^zQzyoIr?~<?5l-gaO4Xn(2xTA*;=l9(KnPZ(#rgEi&>YWQ7esfCk@!GROU5^ zsXN_fM^(R&ENw~32DhWA7@isn0J%?@u@-%!>Hrc5|GdfjqQ;fBM>US!`~YTmIh9%A zTbJT9D)_ec9X)9lq-P(w23hR`8W(3uJflf88oOy?ES_z!-PhS6#_Q!?<K3ThFmJb4 zE^0S&J!Q5V7LzgO>hY@n9~bAx&G6UJ+*UNf%{2YSqzGCc+Dj+(dr5)ph>XE&a;7|X z$*3Gb7u%6DMFxDXfDzHiqJP%;1EMdo=L|0lVh^Ys(4l@8-18ztDyx#{txlt4d^0oA z1lIy*&KB#E<I3>?7hqnePpCd7XVGb-ksSQ_j7s>$U!V_M;OC>_+E$`6&x20yx<q(C zf<@rqM>co_Py&#;T8gOY@$cpDagPL4Z0jMWv+V%A^tHMABz8WkPpb}8hsmKPqnmh~ zX0s#L9I(EAR6Hmm31g}|xYJPy!@;XpjcH}SZubBep!BAvql-P4XCIDkDw)3km!71B zf(ww=CR`T#?gC^0wB@6>S<h=f7=I11{geccsY4)GCXGnVA-O%QSHU8c7{j^K27W{3 zO*Z(Egn@D_V9RjGw3aCq`qM~U))W~)Bk&d%M=S5@!r@@>5-hTJD1$)1YipBdn8p?V z3pFl{{6OD-D2*@$0zJ@*_vX9{^e{dT^)FF}|4}KlGt76q0xb!*$Wq_z{QR&%$2Spq zlQ;D&!Z;}3wk;`_QLar-TPA>s{nP2tp)|OjQM81X!8-CR6XX&~4M~-}839RHGxNg4 z#%Kg(UDV&6;Ji~6rp<}ROY;S+K(UGyou=8b_e$kgIhpd9V0Ybs{M}V9!BLn_+c)}^ z*(lT9Fm3;~bb2COz2LX=6I$mLtVZ#F2L<cEDIX-;yXh&bf0QT9)Sf;UI4g~prI7<> zB{sn6(d2Rv)=p9E(YujEUtpe{3$0losqvI8H{+j{PngTkVtu;Sf<pQMz_awqKWkuG z?C;%Vv;!mEj|vQnM|OJ!5I`B^z)3v^^KEQA)l)@~F_DeA>P~)gqAMH#5>$C(7cl@x z9BE4xoM#)EzVt`j0DuI^b>*1zyr)Gn@uT;&@B{>2-i(e1wP%h(aSL!_58<$u`+E<9 zmI-!-B}ZblzQU5_a$3$MG!w4_m=$Uyz4rKL?I%~5FXvlCIl3cP-VQ%hr_KrDG_Uk4 zwbi#}8lmjM;$sVVk~Sl=)LaywsrD-75CCZE{{a9ESQttf;t+if%>vnI>i!krkZH+S ze~z6SDN;dsR|09~Y=Ry?5NV$$k;=)^Ord{jA&8k1t(aPdT9qvO4Ct8}9yncPQ-ox0 z2=t#Snzg55WY*eC`IZdx6o9X=Z6vAO%)SNo43``s+X{pSB_EIQ;ExUh%U{$DS#?3N zh@L!$Q_$t+<fgAbUoSOYr>|hi$;^1?TGhlm1#Y!D1#CFBMm^`Bm<jX?2J!DTk{0dy z>LeP!_n>ls+XdWkT_S4`oJ^2YYI*y40ZZJ-EPme9qk;{`!@K@zXcc;T{Dnu8v`=M5 z;gL|hPXA-DO0}JEj1RKU$>}q6Z#wqc7Dc2(%A#%>e)a@igr=MR58Y2b@Y!=#GY#<- zkgIH<OJxQKPKmNz63M7ZOC|5%DGDdR2orKgXRR5VF&#C1J(6IFP)P(V5*IA$gq16x zXUo(shc3OnANi%n;Ssvp_q3n5&Fm6+wf-V(eXl_Ir9EY4?4?U9wqDOZ`mEWw%i1qv zUDiR#@<VH~j_%l-wP(-kgY8UJTv?S%R#!7_$3d+5Qqjv3XZNNa%UXHuz~?LL4}2;t z8X+-e9uV2+Tl+S(xHfK5jo5})7PM8bJ?T`N&%@uIArmK4XUuDUeTe282lz{27(Ua( zmOZ7$-DK@ExZY#R4S!bXreXoT%3~<fEj&R?Y9%RldOEMKG@E`U#k7K5Y*)S|1fSXf z8y8kIUxS`%-ZaE-R37sqfJS9o)aRR^M&&MtP>DQ4XbkJY^-d7ITZQDhp`*1K8ZIRM zujSLOg;~6(OJ%NwFK_|)*3Gxxj}zsSv~HD_EDRbVE%k>64ZU6%G<5%81`VBEm{2^g zs*->26bV4`Jx1X1-JqeD+23k<Js1OnhN40bw+}ctK_0X}7$Tbe8$-kkZ6fEva9R|@ zm)%Fgufm?p`-1B_)b71<2HoKu5EIZToIz-O;!zfAy-qUDf2*rGXH?y$t3#bzx4%Fb zhRBoW4nuQsKP=UW8lJJx*jCTa4?{A^&#zmS)VV;@_rxIBU;abbUwrwGVE>=~kqZNC z)7LVNK?7_<-wm+c`!54*U%wxH!5?6IRB&NhGM|qM9v24KIxX=U-q#5Yuoa8QAvQGs zcz`YT-wd!F%98CB48l13@8Yt@uoXAwYC;uxV_IOfh+}NWm>E1)dNUgx@G8`{zROcn z7=|8Q657K<rwGFuK5UG5)><V)(t(%*pF@I;OFg1HFIYlzZI?ip<Mj_PNAQ3CBh2xK zzmq?D^z{$Jj-8eiL&J{y7KR-k{g+|KKWtL|u;ZU@%y+|%doA|H798~fFE#bWqglg3 zzsY_`ATx4&;86!r*rIQF%4{_>eqf^am962)(a5I2OuL$=UYsZayS)2p&=g#IU*AJ_ z_q`iP^&3}|)85a@EW}ADwle)Z2!)ZOUrfm1CX764vq=?2I?NlvcEsyX_U~8nY|BzV z-ESRBeJU7)MVCIHliYMRNket&;jOeNP^U_oJp2aKsb6h&F%}>_5o+4vG{T5TgO8ft zU~hruwXNmPYjc{P*G9+_qU)FDZIWWb1UFIcxOWKn);V=7NGR3Q_cAVdEKF<zPX@Oz z`U@J$N`axz!V;<NKs8Bz<O~@wm@iChI}|)KVZO0-);}Vy&P*dzCN&Zo9Qn{VJOE5= ztK9KGKsy8?Vp0}}m`~RNMI~P=4BqKZ{)E||yyk@ov**+98=iVx2qw(xibVv_iq%|k zGyT53H}y0lg@uJHAT#jZ2%|AJEdwQkWYp(zXQ`BnLNZrf+H<@V;=#C}nDei<C;?`s zu^S@W@kFY1v1YA0<wlg6TbFsm8agwlIlfx?JSK9%cKJ6&U^Ih*#%u$xD^?JVK$Guk zU1iJVcF7EIIKmmeV91WJqSfx@d%*Q*CMGR`p0xZZ<AwX~%^00&^S}{XSt{EP{O465 z8M`2{$TW;Cs$jKFKT;tKsK&ysU!XRpc?=~+RstP@R?T82P$1NDEOVT%IW#0yoV1T! z+mLJ|>&*j9%ynkgerE@ms<7%QMLWiihKi;9n~~z0qe7rSh%kanZ*${)J)&lNh)t#8 z-N40HI3!E?7R@>)rR(NeG*-9&%A&^-FjG8!HkbVU3c~|=v@dV_RF~FZ!?qYdUskR3 zWkk;7i&SVvsQH@b{Sb=pIl8$lR)%r!)Bi`_nTJEYzJGkmiBpnFC40LzB*{+uCR8fQ zR;DPjOvpZ?J$u?@Pm0Qx$j+!Rl^7CZ9~t{L_Q8ztyFX*8^X;79sm^}RUw!AgzL)Dd zpU?Aop8L7)_xt_2wW5<BI??e`<FUub4kXTGhr<UUqK{ejCXc8wpz_Ie6F_A+lk^dw z^4STX^2+}KD)UVu+`o3Ydu2Z`>9HMZ@FnDW3Q)RUaeK>Tw5SD*87M(jEU$*r0Pm`7 z&+DZ-w>#uZld|<}tLMYk<c4J6BLVt{I-i=XPCowXiZ+lt)*gBGz-siShB6<5D~r-e zis?-<#=#ldX7H}L7qB(xd*g}1Uw43tSd`Djoo(xobWEx??C7CU7xiqH!ODq`^yGJQ z!YM(SC1<w~1zc#y6{`Gjh28lIxxyCsu^#>1o4Z~@9_sCVRa37(qREumN7H|R^h!&$ zN$t1J<axID7Q&*L+|2KZcCmgA_AF$*7}&ifE-STdNqMxcSDV++TIALdPnz9(2L&Pm zv(K`N{qzdi>Vb*<#VdqdYL=Zl<?y};@eg|LT&SIf&#)uI+Tfu<sBYrPwHFrh^H*TY zL6bLIrrKH);Xd6F)7iNCy%kX@sd!}<0D!zfmwE=@`GP~lV@+)OGpT{gy!s0fy{d5& zedxvaKV~tNk<+@^Ua`2!TdTT9xI>aIz7|Pmx_1+jsuskS;joOJ%^b7X_DQ1@nb$8; zEHs==<q_}R&4V?P;N9C8zU>Wo_pa})xX&KLa!l@j?JtpgQ9u8Az>l^Lg{DjP`G4Wv zn|#z`<j612%|EW719Bu{agWIyZk6rIVxuG!t5<%!@!XV@J6}t;=ya`ZcMh-jHS6MV zHO!mkzSc2E;taR9_en*xJz;$8X~<KcDOJ|Sn#@avBfJCcT)$MLWdnD@lw&bC$*`XS z%f4!tPg3gLt2^8ffbMy)yE}WkNX_PY8tx;NLa}vPuAfosBJ1!GHzIOE(Q!ZQ^vPRi zd6~j{?)<p+lY>moc<iaGFPV-wwYOk67eYeYv`weF=YqE3mGt<?3-EiN_6HVz?~CKG zHV@5WoL>L^s~*s1+mQ5l0j8lUX!Bt|=H+zJcFWy1$DW(CYK`aut4wmkh7D(~Nt>2t zAJWpBA8$<biYF>NmXRarPp;r1f*nlO9!)q^Mka!t^--n@6q+Rb-J+jBI=`+ay8Q%a zU96I;k!0rX$%|bXzBf2suUSfkHUx!Irx!`s`dIqe(V<tUgHUER)LyKMx1dK`TP}I& zEc!SdJ<A+xw%7HB-Z8JmehJ&T#>&n6*QJq;y}zl<oX);`q;2;$U`WjXl??g>m7LrU z#&kG;W<hSbYy}WD+)5&~2pED8FF4)XXZao+!h_e&7E3$N?X(DhCz5Bb!GWq2lQB?n zR|SV%3kPc%Spv`KdDJQ`8f<4MXkYL1iU~Jx-O&TN2<{MVdaHGY(wf`P(7^RspSWWc zaD8qZsBRMeW!MQ^E1N;vGwhv|tHGqG)cN!hJzLV+pXoK*>W`EUy5pD*f{tCAyL*P{ zTx{TnwI-g}jm#-eA#=)~yZi|EtwwEe_pSAvDjf4>cJO&b^0eY)-sF{q6%q60mBm1q z!t!6~u4#Vw)L3sN?|dU*T6uI{Tp!sjtZ~$$i4U0Kd<&_!C-0b6E@0#eo!sJCGy?bu z<XRR&jx?k7!{t;{2z=YM_b|jew2@-HWzs)#As9ER<(txI9SR~{Z?Xk%hxy(RW#_Wl zGBtMSgQG&$g`4B7TizeX;o+z?gv1EU``w~B;3bx9r>21NyzFVHg?Bxiv^*M0{RiLq zOGjFu@2o3CN}#+lXIizYcEP6T<A77$KO%GT?X3bFvtIMw6RU%9jKacw?LAVS0zJ{k zo*Fv<B`eHrv2C>t2}mG4$J~8}iqohk7BHH^i>>5FB9-tJ^lIB4sY0t>Q)awWD%Elr zu}^j?v?Smup*9#oYCoo@&Nn+<>1vbP6TiyF6c992CUFkCD&YB5YEq>;?TKlI1?I(x zquBCM<`$<;1FAcEmhNncYFqMgl(IvmP`4`QtZT$Trvq?s1Ti3H`oUb4rdkK_h>>lt zB>@gA9Joo$FNM_^5If(oIrff=U;`Qk_|;A=8cm#m8_xe|P&(#3-WQ!Ut9z2fJm%T@ z^7H@@AOdUtV>Yq~m64Xg(xlA!1VO94f)F*Kp!*EUP{eRAkJpJa%(<5D*9o4j!FFR6 z0mSViRUnHln}@`H9CWO!1b>Qb{q?O^MwGPJvW!i4j5vs!p~@td3q`<gJyd0N3~+sP zlSWrd*^omktJ{&+5H0mgZFB3RTaEsS(o6S*9q`}ZU$r5%RH(!`BIdvdUY*#154YKA zO@17CkV@imV9Sck9DZ)sBdX%6;G3~@pwf!iF_l?B#)>nUmE76g93t~1YK*DJUmk{D zLwv2v;2Htc0JBi-o<g7QtWtO*fPiNZce2_IgjlON09=gxaps!^04P53UcL)=ZfUH( ze!xaE|54)BaTlw~n2WV!#u?P>|8cQ?`3X+ASbzWa1MGGoql_j%X?0#hjE^^#tDZ|f zF*4jAceddz6j*MM6>@6Z0|c1k)T$ZM8W<`&%ILLC2A5B;D*{GOG^?!3pgLQ$!|C%X z_ccJ}j;i9Z8_$##@|gezc7*@gHH_0};H$5%W68s{70EUowv=113>MI-(&%j0ipCUP zTuXRINblR&Dn0=mgEH89#5ntY#%N>_*)?R?pgX68>}7x};;hRdI@YYy6CZl7)}6;8 zv@irmw}@cLhITgyS%GW_z2{at$cElL5HqQjM-aygE=LU^4glRWSIY>Fj1^NKx~A=b zvbX&cP+DxV=`}_Hm@EqldF<F7w(!lYIQ&|CYe~)FP|?0{(zeW0)=k@WuS5HD9bSH& zrLm`CT)OqGI)-f`YHB2w2Y93P9;KWcNiXK*pg%T>kL$Z+l-l1bt`r(#vQZ#U@R(Hf zu(NM)p~ZGb5e<!Iy?87c{;*C_4WXFFfwVS9$YINjLyiK)srxJ(9wr~v*cEExhc120 zX`=-Pj?a%ZQ2%!O5uL(|vtmthWlq0;(BTW05E~YwG4!f1zlCFE<qjv*Y9dmoHCZ$T zTB*ZUX-c;NZ>uXnQJ)lVf+!dXkDwj0_P&u*j;Vyyz<r#-EF?xeNQ&!=s_AQOD#?`? zIT%lidl%Lha|GWB_95RJ`9KK_Xesqh^C+Q*8peY&68^K=#A!j;RpoS92Xm@_f7>kN zmz-1JW(!nuYfKu2K0085$xEx@lL(+QI;M^ck1|eFF@iWK_>B7P3LDs+1};3AQftbs zyO6{zc-&G8b<E>L8+MXa8+_cLe?Dz3X7+*g9`Edk{^$VjabNQEvpUely3N4y)rxF^ zH#u{{yjsZfse=0}4!hM<W%zi|m5FAo1Sy0Jp3?3r8hp(g+ZPshGVhLEZva^kq1`pn zOi3}Go&qwtNRMlDghpkUH@v+ahunak9@`v<9c~FCAEIFEctWmS6~W4S$<|#%ICndo zma%R%Z_9e^R-8WLc|b4J_~C(b?HEr8D_q$yzj6P8C-kcS$8`rc`V5GEq%xcA?25w& zuNM2}t{Diy>orqi86n-bsmk+2g%V|F`HvWka_|xL;flj}$i|z?`_HVgJ>QrmRWC3Y ze90@13x+xlK7%!#5GAF~gWvAHAm?#JaOy}Y*z9szOCr(TbvXzdtbj_2*5MTy9V94> zIwBr$h>p>YH&Tmmt%ZCIVdQH9DxOU?Vt;HiKwiWq`|o}c2FzZWx=;vlBjQJrD8AhC zmT86fgdU!5qPLSo4da<_?i48+Kl?oha`V5;Sx3E-Dfa(#At5tw<%xX6R?%3Yc1c00 zS$fV&wJK>a2^brHGNexKZtMQ^OOKQIim^&>q@4()MiHc&1@3!$daTOO8;#r%8X3Qp zEvwZV32Qr;KP3s;i6a#dk`Zq;3g5|&py6_m!eD7>NODh#Z~!KMtg%k$*Y;>LQZm); z@oY1q_+sA3bOz*ydFZ^%WlN@RxDz7*-bRSFEn1Y@>Up9qPtC#H;KUilYjkyVORjTR zu!8w?0fd^TohoS|*vIaIvm$218NIqP*hZFLu8(gn>~P4a8$H5D9%iDu?<}3=Jz~@@ zx0e9>RuL3&ZR(EnyZqiwQ)xlnk7SsR{Z-wjW!4a7qINq#n^wY#w=|R#vO!`%r@!8> zyaV>G5<-6-YP21BF~`PV3~SaBob?%tX7W8voI+0a9xM<rG-p`{knX{|_EDUYsoZa) zavc><X9O8T`_}kay4GYD=iQW^pX=g4JwIOYKhorFjmcqmK}$Y%V!+wq*6P>+-4sF1 z2z8;hJ3>q*aIv$)yp{Qpo+QGChkm#j0~!8E?XD_*^7XwdD8Yy|^!(&e4iyiLj3Kq| zT;FuNv_c7bb4a#7mjETnTX9LSiu3R~R1muhCvUcmD*4XW_YqlRAK&i(Q3HRvRsO=U z{s%tLl)DMe!EmZ7-g~E%GLh3I9dADm=wL$Xj_7lT9nm)GI0*It2y%%&u>oLWyCX*K zfpy^}zJ`~kJUlX(Jvx#r+tB4}&O5vv*H@%X%jW4;z}uZ@&!Bg*?&Ai~4jH5u*96ak z=%Sk@I>u1{*c{x0NPjn^-q~ovs#jIRN-dRO?X9f(AtgHcG9+fM7v6+GYyK9e<}vXV zW+4%*d5)Dv%-4?t;N~2Q$JscI_)v31Mh);arw3^5#PhtP`x(c28)Zjs;}=Rrs0pxk z&L`72vip%?faQX9pvRwe0ny_JO2OEs9JNl==Mvy7*Mufdn_0~oyG}tEQA-xxo%vC6 zjKT-Q)J;CD5AV-!idspYrYo97tJrVyb3EHWo;+q^)Vnf}2~j=+x$RK{xvk@oKC>b- zg7aFa5c@-i>T8gjj9t{JKWeGlV~XcDP9J{Mv4xmcTUXZCSKJ+=m9ajY`Ydl9>JVF2 z*sL-Yb2|d{!B>~j#;hUYNyYy$(*A|T*Kb%x7R-W+tine`o~c#WPRcY&D|Ey)zZ|4N zpW<DZflzUHyCQ3>bep4H!~hzbsaNA&eDY&4v)@5jZ&TpdEnUua8De#xo+EawIT4{b za@r-YRh&2F#fcxiU%>5~)i7aqW8K1k*A}nui5IIUv;dzUBES3m9=7nxQmo8st{U7s zQ%bslTzG(uQ=?y*)zDS>asn-5Kw8qKr~Wt!8JQwI@>eaY#Vq&PgB~wAFeOMX--Ec% zPP|_rZOPi1+_#iENy5$)Q@t%Yer#t7Rz`NFiJRGHbAvy>Px!rqdnh1mV{~{8u(b-9 z#-dm^cm2^+uR@Jc0xmnSSE89gwZabh8lHOpfc2#CvN(KlcTmJb#J%yLqLdFz>_WHS z>!Q6Dd&WHUJj$Bizkei+c(VCt$ZR$@WzCd5{@0WJ7mg3UR}TW~DK;7>n>pCQQ705T zn3K%7Bx8LE+tU((?wrO;s1G{lMpkKjzSPY?8s#*^7^zeJukGP>M4GT?TW6X|%`oRx z0)adzAQXxl{Gb_Une$N6=G4j>n(9vPm6?d@<K}YDGg!~C;|Tt+>77mMW*GPGUiJ~( z>3de1PuZG;Wc2H2K}LV*kDq1qpIrBojQ%fMx)Xrel*5Ip$BC)?#K!@%9RCBDT{GE1 z83W9IQM*n6W@F}mfJO!anAP1|p{$|PrXjrVGr+8Wx#Eln{6u6{oO}dirk$o{PDExs zD8?2-TEvJmjUbarJC)vSPtSHE;l;g_2Ja#FS-TexeF+JWYy<nY^!-6N+?F;`;Ztln z{X2@U{z-zXiJH4=bCrg~P`-9LH4{_TfD?4w8^o#!=H$deFvLr2Z(TUqd8a%CL+pKG z76fzqlKrdlAp!G!^U;b&tktyE^XMzYK^AJsQ=iB>;PUML$3gZ_thYC!oEYR$C1ngj zB`2`@oV$uM#UdNlR>mX$VKF(zLrkfuzL3NyMa47YT(xwK{f9L>=HXKZuG#n2HJ<!O z3QWHDT>Ah#W5=F1gCDf;3y@}Ba)Tb#qped%2tU+<zeW;r*cE776^H2yVd5o?Y1M`; z5}8ihy3@E&O}Y7b>Kd#xh#PMe8X*lL_twgCNQ1bsTjxX8*y5UTq!;m_r<~*YSTMf0 z{>O*@X{5oziTo3`s(r9k+2xfE-qf*h4_abaRO3jv5)tesqTGKlu=|Ntu0{Ib_U<)W zy7TGkA;J;D_Sx6!w75{*A#}zd!8SumNKgQ^q9m~Z9vCv|_<x(B?6oHqU65ECxVG?3 zTw6dcgIx2+_$&XA2X@%)aL7pFb8@wK=lzVP>=68rjDjbMY+3T;Zc<Zlcd3CaEUHL$ z7uE`d#zl*8!PHL*Xsbq6tGIF54NIWYET5O;5?XomloUz=0cY&{;WKc?`h`CMXM8!5 z`QxUd-+Na94f2{pAr;S-Gx508HB9HW(m~&NvH+)1=lszwsG&SV7}o80l73u$m#^1K zET|(M63H^=N)+4wXc>O{84gP$)%mDtzz$S1XXm>BUV}jry)J*WO$t-nexy76)dKI8 z*rX}7y_8a^8o&Qs7sY}t>l)FyR|i8zt6al7<poek27?y{D{(_cfx}ujp{t!rqBVmz zc;O+zYI@p46-Wx|PMaLkKm^~;hZ`V1YFC))>9A6yo$_>p2^W%+edVRv^~ws?r$?E> z;*Cy3@O`Em`193$jfU?B>?<I~&1F5Uej>)L<Xz)_*^z2n*$&V0BORV4awGk^>W(y_ z!;a9MBRh)*4Qxbt4EC^*T@^^t?s?b|Qe9B2({`4QJz_Lpy8C`p2ajla^JUgeMHeZt z=xHz<==?k}>fgLGA<HOMiLuKG)1O3v2FeO$YesDL6HpJ)oH~0!n%k5kpg(wlRcmIR zfL}sX{r_NdH-ihcw9~PjqdUa{yQb!Bc3zzl*mxK<&vCrB#jVbf#q=|dZC+d9SitJa z@v2ya48C=&x&5Eqm2AKVjq83MOOOyrUYCitw~AO?8?U0!k)RpKc>k)-#m}(=6$(Q! z<kK4khl4e@@f1WGwdj|$QU4laNYa#J+1^+NCAn^mZSEAuj`?I~Mz>vc=+$gTFIY`) zqLT=`S~vx)O;Kp~vlJqE$`;tVFVowFAX$FL*Q-<$Sq+2S;wI4TU7XPE{ZseuH#o)y zW?y0@#m{a<BGXzYVu*}%4GJ<khX+NHs^<`do%W?WF|i7pK*XMTjG94-iAM(B|D_Fl zvQr@5ldwvGFvqGXmn3Yz44Zz^G|;+CweDVdysb;&X;d<?21D}uPu+Z>qif(e=rdT? zYC)*qeX}m2GBF3qF4DE4%AhHlDxHkZ+jOFL7_az3WZsl~3KmeLG0c{#i{E%dR}Ovb zKhc%zz&lB0j=U1dz4hiMI!^<~PnK_T7K$^lF5ii+xU~vthV$=dz|=g{k?5L6bg=yo z?nW1DP)~;$Nzo(b?F!D`c71Pf?jy8{$eXrK&E2AP53NE(VhyaD$NB(%QVN*^HM9r+ z+{u9U)!qF;=Roi&={V3{_PAhoN{B$hTfW2negMzNu77ir5csS@B67$m-~UkCuq4Mj z%gwBYa6wm>$NJ0PGz=y&n|F3=8Q_iYX2plAxyy)SG4E>3l2|pTu%hERMlb#6cJzDl zCq09(&-x>(-F#GXRs-44u&D3kaaOfJYv^7`TZCP;FzFISIP1h~mVZyUk3Z>>GhY@e zPGY^6>1?Irx;_03MoOWqUpx(z8?hD$NBQQnZXhS4TZYet1sBS!65xIy3ObZngoJoI zzUWw{V(G34_ThbwHbi#)=+rHWexOY#MztA540Y)i9<^)kP(=Ks7fq&tyaQ41A}*Y- zmUIwv>T4XSo(TIw7}V+oC%10h8h5JbzU)x_O;9#Ph3ph@-VlRl4%^k9=P(4#T2Nk7 zL6AU1;MqNh@$y5ZR`k*Nky^1{Al6+93Tv6t4ci$RFsbkLsG>alCgsPTayqW-m0j&s z6_0$K#9ZWj;T#C&;WR4n2nwN$&I|+SULoAa`)NUb|76ien4~>Ox9iX%bnPZ00^b88 zL0IvRPfhBR5D{6b^=Ys+oj&+LC&}DXRU%`<MvI!N(+iTxSh`Io`PoU;y#X7=3gp|O z?kYPEKc$N}b-hULdAmjd4>jL+m}%fzW>f)!X6``gHJROx8&PM%YqOK{AlKy0Kgbkz zKzb+*Fd%5e3^4fdDj}ezFTCKSw+hov_gwkOpcO6?c8stk8Nev4i%IKrLr@f;U*^*c z-|M>CR$F?0)zjl!*XpOs-dTI(eF~)7hj_Hb;+4UOKpLuySNT3?BuLcvR>Eoa@`w~A zn5+<4j*_OHB|lzu@P6LA*yVE*bDu)q@wE>ZR9g|-W7*WglAQonRo&#(BMB;2^US^o zh&xtW^zswF?YGZxUu>K`dqN9<*fH319X~m31Q(4N`o~3Pzo-uYJ6L}kiSYLJ8Z?3l zdohhSyRfiuAkRGc<CSD!Q5iBBLvetF-0uURf|Q^g=K*Tuuoh&ibQ^Bv!DG7i4Yz~h zB+|QHg16$Vq5_%74e?C6qlP;|5aJQr1T^(mM|}{SlAqAA5fwO}#;EbjXMbexOIKG5 zovUYr74vy2eMOqEZ|j2vx(8Sz@&zuPxBBFzl{g*6UdXj0PKoFfd4sy2C%vy*_1D=O zn=b7zJPRUw0)nvN5VkvppiRLgajv5RAr;DVF~l<m>*n~FS0t<wPpQ9AAid^r)U_aN zqqW{`6<y#7H)R?NFb;W61p{@ubCkDJ{nDVu^S^E3UhtEm7!)Y~Ef(%?S*&d_Y2xN7 z4R>T)AB7=Eld_LDTC+?_KEw{EG~ahOJay_++3a!U`)UNuWgOx>@D#5_JH$1ruGIfQ zJK<E(Q+x=hQ1?6Ip8mF-_HK$+mE(Y80N1`=kj49NS)TfiadgRX)0w7Tp;vZ^B|jK5 z^q};df8cg_{zLsrkyjV>I~rAS^7wg$KY&w&=Njx0)8{RjIeR>%dOj<uI%|vG7ZdeA zP`tQQ^2oSpA8aGZvIAvk+vEptN5ufq+na^}HG$>maeQkPmfnHscuvX%f(*L+*~wQ- zEEuPE9*ULg&gP-KUg|A4K-1+yg|sY~M(>FSM|1%K*lfwOdpNU>-Xu8v+jfFzepDw+ zH@fq!U^m_S!WH8S(YiN(LCOb?si}(+?54x_|IvRE(fHRI%TJ68{Ow)|)XawBt8bR? znd($&<-r%+=diYbBFpV-DZa{up?J#d=qGRH5Sj<_XrTdGo_N~YjpkJg5j2t@CVS2+ zW-w$Y#Y=}_m3${`a0ajDOBNtDxHiNF=dMj$Bxd+aHaNg<4goCCYpRCIi1k6qdN?up z!83jMw#STQ>WO)dmmc@&s*jowV+XLbAjZtTDu(}PyT>PTpnM0_?v!3toVjyg`rvX& z3*yI=`zDQv_MJF<{{V(_xTv!8+Q>kaRHyEM7sk6^7c|(cFo6ClL;?0<+~4*_dGy}Q zF~8^?MXqseG%$QC@_m`snOVExOE@Vs=3y*hkpNjLXb5ii9kyqAav*W#A}gF^%%Y>% zoHK4H|J{`;K6jmli$lCDoZECT?<5J?-2@T*tL0$#a#IygdC;3Sf6ZZ!vcMJq%X$#8 z1M!luMMKtw)D<=4?A-QTG;^fG!h7p1xf5k%D`^x`i;#ui7zf+0fQ2k0C$#c@F@wnN z@-7T~ZaZkk#z8+`?LBh&eSRk>IV<ItR?d6iwdZuqX&tHi8&*H$J493qGp*iVZQHuK zWVEfXifMY(b{j1ybx%JwhzsRNib{oQT3dQ=x@mdKXJ=-3(+Z>{;aN-oCn^6T!uVE1 zA*EcK10=>DuAFd(ooD@Np+S{2A1#SkwSbNJqfLvOUEwY48VvC(1qmZuL=c?c-~kmV zBx?D_{{1BSm?$W~b~<hY{k@ZipfVxin7v@zwarGr$^aOLGju#PU?${}0L*m5lK1q^ zGzsPY#~L;T`vP&yAq8Dc>9;y?hMuWR6sw`v&~laO?NVnvU~8feDJDK=*3+9toc1^f zs1jS%VzK&WjQ1MSjv{%AdnOG{<!1zylKjj^lJm4PL{@JU*h(}D*THw5MO;xC-eFAx zlOCy8gp~dl&oONk)Le*vT01~C&ArC+Jl{%!`Cg5(pznr6^}Jr1{~V+>LJ@9DVIL2a zX-oNkeQSu|_Vxhyok9@h_RO!>M{cg1QGW7KMJ2HMYWn<NYtfK&qYXa0y)(|WZ9$vX z&(EK~uEsP*58wHrlK${SFD8mpniLaaI~=n~rR2=UJHdr}ldv@pMf)`KjnIB<XW+k@ z`krSv`V^JYGCjkzl&a8o3A?6(Zs)Lt>i;l#E8<nNKp*9W2RToxZThN%Vpi{v*r>N= zDA~C$pj;GH?)4*D^A8@%A6%j4pD^-l^7QU2+)6P6>)JK$O$~BT{WLQ=0<8*Mp_Vtp zo9FvWV@eKb+3^3UZ};(XT=9>hREQEOz^}opSgxHQGJn!Vm%IZfEgs}!posp7e2i67 zA}7gMlnF52{VwoO#PMxbfxjT;1;X`wRA|os60Sd$)!XELwygf+5~aY>dD}Jw7Iqxi zV`Q0w6v|z+SBvgIHjhU3PL<)JGPp^m59M2Uy_%&E)k{Zm93aaC4Q9=_Q6}9Mn*`2J zZ9LW)O7=zSDkFUb)F&8~ZdZ+LAlVA;6vS)`w0^&Psq$P_b$PNK0%H^tcRU8X+ksUI z1Aun}t9uXN-By)2cgFqyQ`0lyW+f=g8X)*NQ%5t5*gmA^IY)%=a}}4u-`Q2h|H>cz zXz>9~@yD!;49-njA|R9&n<Dp?09#So(EE@AiD_VTzBu>qU}ZnWB2t2rEVFQ^7b$p3 zqmE#x8MJf$gJMS$Rw9*TM^enu=c^CL>I)%U;N_}!tg(3W>eRtOf=bO08Cc97mpOTJ z!HFra_Jb`@$7I1vX4v}S@ltiTs{f`Sfr+brQ>UC#CvLR-vyK1fFH14XfZ;tl_3SNg zurQzNeW(&-Fyquz*xjdZgR9dIGv=^g8&|5k86#@-W1%r$*!}-NZD^C>*|92!$ZW@t zGLcMxGW({Wq|xD<A>bbcE~LT+R1|YCi;a6*iJ&DkuPS4!!4|7PBl<}he|Q`Mxcg39 zyh39^P(WK89|^Hg3^9k2h21gLQO2ICnV9M`jP>F}xz6$Sw=k+@c0j$$ec#`(Ln%pO z{YL(5?F^qY&MCWz9qt~UfX6$%wmRA3gB3ySIAuzeEx)QvqvuAHpyvHK5-=}P#trvr zk4zCjZPc_hta{jV_Lp`N#1^pn^vL=wm19tr^8G!OT5)#|DnrH|_xApbf!d4QUI2mg zvdNo;!+`<34!E11kdLtz37!Hi?M7w-9F~5|I!~9xgIK~qw&U0Hqb9l}nZ>kg7P#8L zU)=<3_c#Rk2Vc&(Q!6+iIj$gaMNp?NCK@HdpTt^!wjrnK(%J7a<T%3WC{BcVbvopE zaWJ!>voSAlp{<_*Mb_^Z!aV*>18XTWQ0&p$GaaMkXtZCw99OSuu`zL2FmUvORT<&b znB76N^rwmMleghN+rt{n^ET%}M=$arOgY*4<{Li*b+#;}bKcT8sKJe9sC%Tni^cqZ zyTzYpBKjkZLr9U82-`=7Em<kkDuxRcuu4|4b3Hy6vmRmT{mYe6tQLGzd!~+}T_^p& zy!N40-VOr$=XuDH@GI?`e~lA!V&j)JO*-9O-5_#m<EH#Hpd!w=-Mqfn)b&!dWR%<$ z{w2?AZ?J^Ri74xc2c*X>N6Jj67aSJ}8#l#i|4mGBcIqp?FU=MPSgbPuEV=Gi3*zC| zG|^l=;P<H`{JwuiOzpehu<yg#*M}}!oAMyXua@RNnPVi3$*_3Z{w6Xk;`D~^mC%k| z26JQ5vWK~YE6=$2+on)I%v)V_vXL}*x(-^~YNqrylNZZbevmU$n$>qhPfTpFT+c)a zK=`|q0B|q<4NCzceDu&G9HaMsbzT^BBbW=Nv*m2PchOiLxOenVaZ0~^UijT(m+$m^ zPLu*lw&lx(l}D?-<~9Ix>*;TNRFK#V#O0Fs`AF|C4gC2|AIHR9J%aj7RS|rUMpM<V zBZc6-UuZ!6xo+}5qYzXISNEhkpR$jiVp7wPsj2yBo3EdN>asJQ$MYpW%zix0_XEpH zFzueg@(gt~;!Ay1%USe=;~5{>EadIqAT-5l%lBn`fDAm~v<}PxoLfKGfvGP4hrmV1 zO%Sqxe?HdnJ8y!~ePTirT7dI^TsQJN?SvB*L7JN1T=Hm_{eS#ethg0KiQ~pS{VyL1 z)u7g);s(?I(}zMwx|QO<Rgp7aaZfO2%er%2a0oqKBclH<HKG9OyKPouH6kg<)=LC1 zTz)P*_2Rvzf-9|N1`hm8sB<dodNfs7oRfR|rgeNT(Ovg=$7V6-m;6QX@xSrE+&46I z@Z+>58G(C^dYuZ=m-krv4L#rXvUFjo;8rf5qn5i_xhXoRRL%EoANtm|KmVcW=|pv? z5%o8z4i!ajeIFraqB;ZsN8F1)?qK};9)_ALG`t{#`_WgN0{Ri*#>Zoq%U*T%828H? zvT(lR5QTf9f0<vtPA>HOqCF;Ovx=t=Fq-dkf6Z3_tpwFwUW|!BLEPVEPyke--!v$Y z-EjJVB3u>!W0wO&qg=Ty4K&I--~EC{*_<^HaJicIa_gMg5Mj3vgg;WqJ@DAQ*MCuX z;%~bL1j2Gx#1viqr}u`R{5cq>iHpO{a}}#LMi0LF|Ek3&nx$neqB^*W=!HX?QBxrw ze}S68f>KsD#X#5_!(Hcl0i!D0Ic4UaT(OVI99{QF$;;dGQ0&*7eK5Kgo2P@FLjtjL zAiwUe6!CR(PCKH}9B|8%<2?_*Dk({z|5E1ea=S%Jp>fvE8T&PwBLh9zdmG|*JnQdY zp%fZ>c7c*Mi<7cFOpsO=#p$WDg~M*vG!NP!Ve5FV{=qftYFPREKoT=P_O;9`2vVih zI9gOW_2zej(9&950HVB+NL$dhR}GQTBZ|Y#VVIGA5`m3daW>4y+jNy}JF8?HZfP1q zrfpbFrb)>Y?F<K-Kuj(lB3O$HUsXqiDY>6<y|BbL3o{Ro8VhJt{39ziuiSb_+jsYN zZbt{HP~m?f+E(?YSx<b(FE4YVTi!pEgoN$=J|N_f7SHH=UzQGL<Ri5peI=#fKw>Fr z2B@&MsCdKSzLr;=xULr*l(%bQ+Zk}0r7&|ml)X7_$+3TR0O&+>puPPKuR-CjHc4BN zAo}Htb`C8B0i}$=aPiPXmld;*|1Gk91zmTS)Kh!%B)pNB>yKAOge@G31LS>`K(T}= zKj~}Zj|#S{bHxBu%*(CM-!#TGtuu8ESi$ClG}36V-}>cGs*aZ&w0w01=w97*+Rskx zZeogtIITxKOWH~1dQBEY=J#PwSbGSf5vkAN%~sF9^2i391!8_T^iE*K{1VW!&UhW) z>v|Nkd92z#UjdEi7qYF0DyedMd<ekDqnIV_?8_C|Ah&<!-nVxq!5Ci^O#}<$-$zYi z)$YWNsH%iIZuEhm&V%{kaikqvtA}j@hMu$X;Tsn^kj^Zr*&iW%(Ad5D%Wb)Fb8P18 z=0#yEfnUNbg6o_Va-I9jAw59s5YjSmwh;uI9H!!QM2F>@isz;jw>2@%8@kd4>)dy4 zOPyd{kfOBXmYf^*E4Derv>fVb2%-m@b!kb@s7kl*9f(uz@$t6y=cxEDQqSa)1tOBy zo0}`71s>!gSHx|5>|BSQU#jzxO!x{ZJpZk(nMl3#S6X2Z($`raujGg&Rn6TgWOFdk z^5t{|-2+0}(f-4SRCx8Q_k)y|OTchk^O@6L9!~-Kgzx~ZHS@_wGK9ACyDt#qAE5OX zC`de^a{mSwj4|*Hu|-$Wz+cVZ7KlRHu#0}F4g0sG>qL)PGy(4c8HfXALgJ5maCyEG zR7NM8$lxZhAEL`<Cy}v^x{e*sC2>rKcH)`xr+5SKY3wgCRUZf0U1fn+S{3%-vBCgv zd6WPeI(7V&wT6P+E3FoSx|VL-CWuhgV4Y()`3n6;3f`T!C4WqiF*1G*|Mror<T|Qt zwL2g;2S*FCt{|rlq+#eFfxhv|fWLR=>-mSIlJc!odKv-<V$Ba_M$n=PL$A0)coj5) z6+63k2xK{n`XxMP--th~8orEI?UHlETa_Ux<!LPEoUF2^drIX+{hWKdp3R0(FQ1al zqnc9;YU@R&{hTsXqW>r0x-MLqqkv`F+nxgYm2Fcc4eFQOn>%;9L7d5{<EO~-52bQ^ z>~+X_Nfvxj*{3--%-cSD-~C;S40oZnXT>f$U{okCq!3;5SbpZYed}h=%jTYGAh~$4 z+@>E_Y+AHv*^P8k#Z^l_t69b!&uI==;t{%S%o@@|Ia4KCJg|kE@YE)Kq9@Cu&~t3v z+!=f9R~{m-?YlIbkZ)Fhj>RnuBUKM+LjrrSS7PMUMn?wE1grBMt!EP3<cQFg7IRN9 z5m~e)_&GsaDw+BA!)5kHm?XWp3%J2$!*n{O!vg0hX!TAqP4^jSgp+~xp@Xw!4mA-j zP3Ji$P!}Fx?p8-!d{uC+RZ~HA2hG<2YkvluXX>&aFCi|fb9842@l`P0QSBfOW~uV# zwzjrX%Of7~fUqc41TnF1j+4XbxrmLmj;Qb0Q8G-?ke}uzztbnrTUbec0DQ;R=RH3h zs2yqw@m_MZ3LIB2w|1QtnL!Fla2Pe(0J%zd?OyliWE)W>HYJ&iM!ay5&DCN9Vnc#$ z^<xcsB`L<elGIN~Gs4S-t5rG2KDt)5fjCkhohQGbPctu5q|&zi+H;ZNP0?H^JzM!5 zB}FI)^PN35*1fyR&<j<tPCG-20+zmI`7W=E=3Lb0nj)8t9N+PXsF+vw^wc?-QLk9% z%e}kjh3Z&dt524O*OOtUEK39YoUk;M%&b6Q%6qn7c17!5E6UKi?@#T1(0?u%p(LLl z(ifiKO<Hna2e)?pWMRNEZ`Z#-;D`v<@`3+mztqAk-7_fJg*PQ|LwSgjI2Vdf0kAey ziTj?ZNtZ*4%~A*jO1CR)+-qBf+37UWX5fv`J^73S<8-cpmUu_pieTWZV#<zR?HHf~ zpe@9y=S_^#jT~A~-KNJ}sI(QQiQM%cojT`~mCt){N?B{e#U9b<scNP(ZXC`ixS!H# z9c~a|3kDO-X^~`Vs-|9=I`xB<!l9?}ba<@Au{YEDtJFWVwd<3D3i=!$rn$4b<dw#_ z+X{6z%39WCZ<a9gZ_>}~OZ1wS(F*A*IUSW@qf2`YWA}&23tK#zqHAk%Gx0-~gZU~y zlay1-q7={sujqz&+WUJak$l=SuX#Xxe8oku4zX*NkAtm1NZa$n{eFWNtMuQmWOANb zut{zS=#mr2d`A$^$yCuX2T;z$lODGPZPNIoUz3FsMF2zZNFu;_gox?Wbl;Q7BC2=R zp3dOS1YiATpBm65cR!SHUgh@6opZt3vIc)4g>%`6R-8W2fhmw{$_C~IzH;GXe$=^M z`!gmZZ)~~JhHfRu+zBoT)~`;lU_1;kNmRK*U)f<=8m*vfoBHs?b4*{ANvaJ++^XOF zk+#`Pr6hm2iR9Tt=<G>U@d~cYG^$R0h5YJNE{KjKWk;I|yV;5iDM+HpyDzev!29V5 z3Q$<k*Asx}#aCo1Z4_sm^5D}mVB16r^4f2+!6mrT$4RKVU3lxx9?!c0dB`^-YiOC- zvrVbFWcKx~P9EV4D%`x=e5WwWk>*;~gG<J>n<awJ2VduyU|(0QY~pL4Za)DMAEUI| zuRC>gu>$v@%7Dwkg~9quhgw-%-j4MxADhhePT6^;-%o`tujF}KX^?|s(yb_EFPqTT z3Y%Va^8Ds-|B~GIJWpCm^V9k+nLjyVww8v9Y$@$Peyyosg4=}dZ$qD@6k6$)s1h7p zm}z8F6)O56)Wi|ICng%P@-d}6t^1^jl6kN-8bKfJ#g8@Mi|f7}>-4ZBEA~__WJx+^ zI<eTI2!jNi4~pu_L-m_QTwYo&kkGFhu7;BBerznYq3tl7u_QfPy~y*mIlKmfjx*2p z6tKGtG17YIYy=j58uu|lVo93!%NA<ttJ4PCN&z94Um}N`hK{816gis+<qk8Hwpyh| z&9e=O8H0ul!;crr9Q&G0F5XIpw|Qxow0@oK2!D={(J2~8qBM7ivrG|tmPqFU!qT(O zXk7wF#(I~++Es%OU9OrQ7_W}i$`vP|@U=S-Bg&V1*Tm@e315OHf;M-X!9z%$9p)Ij zO`1&E-8Pmn!PcAc=?@7bM)5EI&^QQwm-NN;HlgQJ0ExD4#bsLwaFHZhkcDC6(iMcv zgXp|qht|hPZUGu06xX?m<^sR3Xqb+WEW_0T5W@p<#fGhI{II%rah6-Lx<YinZB8;t z*Gf&1(e(=RVgJsY>7s$_nwK7D%Q`rE;EFe8O2bF#Cv7v7BE?T$6(KQB+IhC7zjVGO zU*g;lrw8eM`H<cR&z+Ut_r-HxV}68R#{lByN6Rk95hL{vnO&c2o6>n}_TyaDDuc-V zRmZQK^M>r~llAKnXju5N1L(Ef4kati*|$0tu3`I;EBFG8SCUtZU;3(U<xd_G<}6h1 z<l`Gd<ti?mK;^<-uYjO(A3s_L?kdSt+Ma{GO2G*=1yaDkm0Cy6oBTtaELzJKe`tc% za!_ieCNKY8K;>RFJX>j&l#`U%A6*(7p%EhN?Cc!pG}LpL2aiM_>=q5`>xpIohv7bg zSf2T)_8%v-0ARsAJu;GN(^l6S8EZa5eRETk@Xk*PUGn5m^ok1*v)~RK*Bq!E*||Wf z@;f|wuqDbkwZB|gS;+3<>(taZ*h;)Z2nz`DIzm_Tj34dduG1j*<(gdZEKI91pk$>W zqTuys{T!}yp)}_{mb}A}VKPtVVyIH{?J1YoHC})aTvukR9lLN}9bfXQfM45%CRow1 zY*`!7f&Itp5MnX)_M^tnpgEbopZ*YwSp3CyHbE?YY_u<2e8W0k0aWJPn*rvjtK3xZ zOet8=cL95z-b$La9M|m*{8KRb`?9;_D6P?o@whKnJJ3;SAZ%Ed?HWywP!Ezn(F~7; zsMz~Xw$_F1fYL^xoYQa~u)P&hS|9`#6`N%SJ7og!*2@eCGHKrL<1XFiu&jQ(R!__P zgH_rR^ux{XO4ht7y&ce374ur#el{uS?Ry)iu;9vx|6}!2nF^Gpwkvx^?OUoC%#`{K z&m=crSeQoAFJWJW;eFo8c%{+lr8(LXV(a%25U6uTc%7E5=!~~@^^>8@Rq~}Y3j;X% z?Q7Oay?6J6Ty5dLC;O{rUNJWbjlNzg!Ny=~1Wn?U+qb$x6hk0#cn$XgsFsl81}RWw z-rBP_et9JPfiGhg;Xzk7c-?k%XAFR!#S`|JnYMZ2cyb(iXOsb68Hk0m5ewG+DaUwl z{ty8=Vm0Pt$p;^c`|Hjy%i*+6%Zh;b_=<o?D;DoFMj>hd@e#JEJ6Aw|!#`2WnObVc z)WW+F#8VgPSA&g%I@C(4qv9CF+I@skNoJp#g@;N?Cq6e-G{mivsHjxKs30BWG5evW zfyvL2uLRtgTRyBa_U?^co^fEj4NK;mS^Z&4z;ruyggdi#QS#&*8+KsVu{m}!3)J=L zMlgP-n4}Y%uy@QGh~j*B|7CWZcy@Emn*I5o!ML3yChrc(EDZV=e+aNqEWXWw{Cj)# zP8}16bhn%bEg0k}O$4PjN(2sUKS6__)L-3dHN-N+uqkFbQKQX_g``HDby(1~52;p6 zE}2|oi!`N}Ar0Ju_<;a^tI_VrI1@_v;Ky>~L?$klk&Msv`K3)*286IvgI@r^U@_;9 z2M^rHxk@}SSGeyj+okDCh%dJJu(FYmLgenxRNWKk?BBn9zw5TUn6iOoA+EX^386>< zc*_c2pX!|-`)sS>f^2O3Tt=&jbwSn}zaW!>h7+KhBW<RV(U)i!1L=$x7RngKB87na zQCp@>&RbcgszJ@kE88h}9ip8@yOM)7>!YNRWW73pI1}Na8!il)m$$Z=cr<K|<<H4K z)(l13-YhAEICEmk`8|7{4R-nMeR)ye-euk9dbztRfdckJ@Ogm-MYi5cUz{(0;6bG+ zdD<Z`yfg#=p=0=>US4(jl4o?l7sUX+s1fi*jpO*DwsCw>s%8k}?M8)nL|Eu8AevS4 zdt<G!9wJiV6^oX4E+GZQis3~I7{fAkEpWF)bIZw!JJLl60t4jO?5F@MSGuX7>Ms;f z)|#AVD{A=^br%RfbJ?_F`H>&5zgVV-oGRD;xlhU1TxS6>^QpA(5ligeGDj+F8R^^B z3|wxj<1i)Vs8Qvlu@=MUmm5_@L7_vjOZ|o8H2}hzrx1~x^y|}pkYDv?%MW(&eO;K6 zKCk8npQdB?U&D~qjvc9W-tl~~f&3Xe5$xA2yVW=B*C8o3M-<a+Ocm2>8F$NS*<D6I z`nT12LFuD_JQfnWONsCT>XQd9jx%qc5WvXXX2JThj|(}ygn7!3uNN!tV67Q@#Uw;^ z3|lj+XYhG({O1>c6W<i1#f*{VhBzaf=af4GS&jr`IV&K`S&ftBY{toQ&{F{;%HiUH z_#`oRF^MytOiq=#HwVfikZ<ZfDJV(5Hwn{}${g%;RQC*nd&-5ozSgQ!Xba&2T0^<T z;-pzzd1&0UIrjYl&)1w|YlVVAg1yhH@3EUUIL;jS)bKzG0EaD;{g5$)q43O!&>A>t zf?fvOgdRM2SGM%>!fMCmPli6R#_v)aCOaoI)X)B*37*UozFUtux!wT@;PKrJO6r<z z8qh2V)<q_mjLXHD*V>hVC(|}7B129gG9zW2CzCqPlj-~r0Ry+l)AW=|b8lmPyTzq? zT|Q;DXRH9+P}CIbnKmrqrK7GQ=H-8GlXTpUF1^lJOji}ibT#-=_9{Wsc$Mpig#i7M zb_;k>s3w-+=VIJtdBpDZ)C&QN71@#DP#<i!u>A^7Y`;I#$D6QGKQ<~<M-V%!SML=> z@aq|KOPst#qmz1P!hh?`?`jAh-0LqK@wi_U+PGtEJ?2ZepPm!BTug>`TTNh4NsVsM zc-!sxbLis2;oe#dlgp9>y=U$8?!I0kp@Or({SBIMSl~gnUSDc2H8yi2w(ltyir_6` zaN&-xwI;Gm9vfw%Ss%|j1FTv8yNmi}Z=~zQp;XNOLD73>5#rsHU-fZ*?bo&r{=hmh z-0*#$tXi~6IqLd1A4w(9dJG7`DGU4K^!qYW-*BPuvsD}*8MdY+BFCqA)}s}rKW65Q zNY4s(1jXX2rM|2$XSokQ+P*My2Sy4W)a8vlT{98I;*m|3QkMvmtrVW^tTY?Tu)v?~ z8~zCu%!HlwTlQD{2uJq^2^=4{o~3@Drx`R_RCLd(F<_*N02KuABdMgrJf=U8k?NQD z->7~~Ge<Al^`sc&`VWbCt%}9kJm0*hYJ02#!Ku@KuqDhp*UUIw#tU-BrW@+N7n@dv zZoYHF-dmGZ(WUd<2@c}O*rO`FMB>cY$3ytnd_26FxSfjKRaS8h%&TaVi?GGMXi^rj zRY_I86EswFcckJ!w^X15Afh<BHIAH&VO`2II@25CwFo`^-Z?b#Xr^7U>41bJ#YnG? z$xkT$ny;sD_wEHtvTnlMd}i&#t`!jB0o%%XxGf^v%CXNnw#adW{G5Q?9F#g00U5L_ z=g(i^WwUq(P2bfdlW?=N(w=1yYjm7!hGZ#i`bq0|;txSgEfP?B-Gu#Q>lQYvxGBe0 zuTb+Y{xE!#8uHC&PsRY<Haom2*!_^m(7tw+%oHvZZd6K(pyaKzK*es9UI*zLQ3Fry zw3fr?^JrP+wY0~q(|GBuwpyNnds<sJ&FYr)XVtTm6qX`1fA&~}%x4wJU$@hqVB7S~ zl`M{aQ2|YfC+5EOe&<f|5HUd7mql#_ROewU4EYLyQV>tPCexl|;L0b{HWzM+!C!S# zRNwP#_LSgD92v(@5|?HEu~$VK+bTYMS<e{;Bi+8cVtPI(d(uLfx>fj(-AHpGH)<sO zzjh3bo+WToy2W%1bL^XP+g9v-v~ibfTC+`4vxc*{upOg2xvgD_Vkv;Sv#4=-^?@v< zD=?&^$+EhA?*fjultaOiaBykQOIBl{*G>=-m*2ZNSAPnY)p-4E+>_;b_Gh<*KVfg- zLZygm5$h6UelmfvC@3(oh$(1^Z8}?#*7>xeEd}W|^q+=qwn+t(q<~u}5L`Z&+iCD3 zCM(-@eCHLkDKV~V!j~;nVP?@Og{w68yh}df3mvI$>t7fP{G=mgec;CBAG@HNFpbS_ zRr)`+B^8VBjj?No<e&50Ap#tG1NV(@Gd^0_6^9{$Qe`OX2<G*z%(+tLrOV+mq*(nG zm!YXaw@xgcsyLn7;RQ;6hQ)=~R_pfH|3zKmiRyodDK`dy`i8zH9M{y*E)I0X<f35| z+zxR)1nNc&70bhdXV|jlW~V>UnUPE=6kFaa9Kkx2?4{N!DR4X7zGJdYzl_!B74{B8 zoI2JAUarX^X0g!FpVS?HU90!mltthCNF<nDG1{YjQW)}8<%JyTCU5~*8Z&q>s-|xn zqrEDga_`N}NLT3#)U!Cxi%q{gP=H(FMMTiQV0P6cbsfYK+s3Htzc60@6YhwU)b(#@ zTl!)L!|eK6A}BT7&Wpk|{11+QLhTyZ)uoEv+t#Yk0_{fXomKyf`^#u&j7ZK>82vdm z!NZ|eR<XNSFzX}gLPdkGITk318iDJt;#HmA?Rl2op*PMf?F?s4W4&afE^3sG%Xm(W zU5uJoaS#)Oz<=y{gdK_zA-oEZAt?10xbo3Eb;g&AfCPShsnXEFDtah)cHi!PY5BE_ zr=5lN_O<rtd%srOF%JBDdbpz<J5{`x5gQ3TRzxq7MzHS015&}9jB*5}0d=d02b-wc z+W+EBX@o8^@}OiP)mTJPVOFatY`^5;?At}7A2hqOpzfQ(v*O?v?HBUW)iM)W01*59 ziwBXTOiD;@1;8Fcf*j8YZb*T9q_H#OX7}sH2sEoKh6ve?<J~cP;KbgyJ8_P!CQEd% zQ?T@fX#2P_Z3AoWNU&m=tD&pQlKdlGU6^tsH{L&Ab@O!Q%{qmSJ5bucy|pTCr{B%9 zc*#?7#@Zi@!_|ZM!*+P`Z#)sFzo2_~czBPVO1sN+@l&8IV0W1=9K3i-^AVW3ef=mG zKiaKfSbb9?ry3TR(SS6dQa}1SuNQV6ZW$Z`1om^DT&*t_*u}TEqzCMdSGu#!Uy6Hn z2r8WN`z>#?Sr>BZTS`$kFm;->UwUy^N<BbNR}hB(gOF<3?J0X_gR)^KxUPiWkZuR` zUy6BMR<y|cmhCbFl6fgl>WY&M=ld>!&Y@$6QmE;H!@|2X9)Tdj;sa0WYU775ob01+ zoYBkJt<n4>@CbJ)tCe25QXv?SI$q1IU9|RPIeFt0`^Kc2n<d#mgEJ8y{?)o01J^e_ z4SAG1I_9oBh3y~Mls6ZJAvv(!F}4|z{rIc&BM_@wWk>OhgNWU-OlQZo9=2Jsi)uzX zZ3*>nwu+c!GKbsHId1d8bY+~KaJu*k=gk~yz){@U5Ff{MB*yp~3Jn~*8+6A_4JbbC z4hvS1w8l5a<Gy;rZ6Q#v2aSf7;i{7Vv9<cFoD<;vL1LeuW0kOs!Moszjhu6==(Pnn z*d)QtRtAZ$SGT2t!WoI!71l{Sb6T2Hu`7#Bhh_n8tz0i50Z<;F+k1E2@g%wy#PX8# z9nIRPfM#tqcvpylp)~s5w~g%aJvT#gw`wTzjbDTsH=-2l-)m%FF;2|B*o0d-0Dk1> zS98)<uc{T^y1aZxl^W|tEr`+P2zknp!9VrvH6(D?Xd-ZTj`@`_Lx!d1#!n)RKV9u1 z=&`$~o(h(hYY_XM<FiwkkLuK<pyR6qs3;5|9g_S}h%o@uSG1Gcwa?UmezXeGc#B9R zUgIE}!|l&W`up337N|{=fh%IXG0_X?UJ0GJVJL!g1uQ&l+De~elX?j-qGRUF6oP-p zATZxBpW{|ZQ9z1k#$X_g5ULq*aBLc7)wMk28X@V7Ye^GMHr&h6=GVGk5axXn75YN6 zOLYpj@2A0KZTOkVN#&p47X%47lgUK<ZS5&d!Er!}TBzjEm*?wDuOxdR_^xnJ_yJ>Q z`1&rQ$|&P-SQe-y#b(Jj-}8;t0ShPM?TC((0DjCuX_JHP9<+dqz#c5Y-wmbML8#C- zF7Z)<2Gy%1Ao!X{P%l$9>ILwljyfGV<1~<B*L<P(zD0YPiJ@mLqSUMX=P31N<sy^| zw^(d{BnBLs1n>~0<}F8{FcMB5IiuOJzPe}M+}j0k9YJ4xhtqBTIqtj!Vf?w&m@<_> z6&$uLGl+}nw&Of(G4}RR0OW`&Q3N&P*m|CT8hyih_O=~eD_oVls#Bi+PSy$kc%uD} z?LHaTQr=|PF|8@*#IH8zws1Rm?mDy7=sk!N_80A*9*a_8l_!6#IF$o^_7#^*_WOsb z6fp~X)pUvwwXEUB{l&UPA7TfOB%IpsA*|$(w0J^RjTk)(lxS7eSc5994Ge{r2R9Aj zNKG4IUf>kJR!6@GD$o&kK6x)L)R>R<8{`flo%+I&8_hjLf}MA~tFXY2i(`z|rmhXP z>rBzMeX-M!97n%(7ZWdz!Ff_zexXGHGX?h9{EE{chSRd;!6hx15X2F}ZvM7$Ql{|d z>m4piri@n;-HAyVVl~61Nu6hR$BoK>&8w6g1Uw_exLkb&EMG^QdIQKFEyWRpmWYtd zN@^@Hr&hK~6GU)Mg3f(KX(P%I&l|0ibgsh(tcq6iD)t7+KQ~1;uDcHA<r!dJ9x0F~ zJlY>-*j^S_wasC}GqRst*Mxuz{$+wnGUIarS5l1q$~)2aD;oueDkYt-XWU<Mwpfw& zj9T+P?%rrRBUn2Hqsgcpi6BJr({4dmy5HAnN$_xk1iFL4O~}rmb!sR1Y;*xFSDeq& z&UthVrgiuxR&B0OEE|vpN?<Oxqbuq*#~wXlQ|LRdYnnQ9|7XqV&sD)rk3)WLpnh!G zyjwl{o@5?rp5A{tpz<|KKiRM&Hmx^K{DYp7keSxBceFv#E#oHr?-Hb3lsp1^dLNBO zs3bE7WE=0I&!wCID?aAqW!^+)C!?3>J)LJo`^IcFnd*5tApnS326^>ql~f5lqo*w4 zv?gMVM1=5T-X7ahkJNr$K$pbB!Apw%_-vsu*w3TwJp^RL-G}<#FLPtRofDEVP!ZWr z2(g|q&&F$suLx)d+p8~nPJh2j$?icDNEh4$&w`_CI`@l+haXdK9;T8#!kf+x^O|Dg z2GTko7~g9OCoxD%Q#&ok6|nuMar6os3_X=;M{1WLB)Fzg=g;>EXiN!7w>d(%z|3>z z&b|n+ZW*GI+^i7!hm`Is{4V;oMtVbjcEgu>4RbgO+`7>Yz`r3zcN7VqtMz$GSO>-2 zah0pQ>CdK)8-X<Izcd1!|IwiIBTHAb?_Jic?nwaVFT7Etkvcwt{Jq7nf*x;t@r;IK zNL-+lp}jr9ZE5bS3h>6U!-5Ki5yewh;eg6on#t^sB|u?c=OI;4CYB8e0%6)b8gdP{ zWZR#<8ne~q7`K#aV6Lai?lWP_GGEmy+xL;7zv5~9s$E4+F{juYG>%U5FP*n6+97DW zRdvf=ygD^;)vkychw)^ah}3gIHIJLlJvnAfOGC_CqPA@*L61n~88He$Ewnwhyj&>X zXgyx4d|f`KHrw^0e#Hi2hEt1~5a+N2ty*M_jJcZ*voV&!MOW*vOAlqgM+(|1j$a>a zf811Y5E@O%!VGW0=9K436|ZI~&Mgg!Llb7v<<e_!&tJ*1qihXc!tEgaL;Y-oTb7S- z%M5BCOfN%S7o8nFIzzqt#*S`-P4TF=bK<5ff=%N!D8jRNW$oEBKM<u>8i6x{C4`!! zHVGqUWL9X)A0U2uaTg3*<ZG1{cqPOF0k((oh8yFBR$E3Fgk^BK^?@PFTf(_Tb-$p# z?$cv0#7VHjEo~%*h*Tz7cv}_7i4Kr)qt&^)N>EP&h-grkWtx`dM?A=g>x&xbYi%rP zl&C%!KN459^Rz*{dG*KCVzK3so?%Ugi=zc>{UU9*=9r+HQ%bDcO7&tCst-IH0XNrx zbX%zq^6M-OW3HF6!d$O+UpoCY8M=S!{2TVcK6!&$RTX#7KnJT4Wyj#{zDUDM)C~Gp z(_YKZ>Uxg?5mtq_n3tGD`fP7K>&@w@90I7;lxl|?l_CVCD+AI3uC^@2p5?L|LMIA7 z(=p}{`twku?U0{oyh(I<`cww;^g-46NzI7}gnve%rncrp6IiR_3wbJvO_v!|BX{e< zT`QCrRneSWu|8S{wX&RIQ_oeWYFbe5+$bT$i67KUGp}h$n+gx7Lfc`Bbakq|Z*ZZS zbfjm4@G<!148P2_SBhw8oPy^@4i&Z5DH<RY^Hh+cynrYqf6&ZgZ`+oRmP3RRhb=-+ z8s&@-yW~572rYb(M$J^n?71DAz&|)Ye{i76is&nm_VJ2<Aw+es2%!*xqS(x~&#nLv zQ9Ael84LZs{{9T7>L-UH>r&fdOr>Y1gKZz}y;;2m>f{id78X~l{bggs{WYTf2gx9d zA@qf0u)l$p&E`G2By*HW%L(AGLUl>=in$qsC6<d<Z#Ei4l)u(mnlL^3PW9h(X`;3C zSJ!R_>}VIJaT+3q#VQOT2P~<TsqIiMyRC^$U!Q1R&CkNEVzTE%;|=1C)DYJ&(sq(E zdUtB1`o?nA`*^$xay60dNGLvv)ADf4mnMyYg~px!7ZI?~-hPRbgR&c!^6Q7C0$8Z^ zz_~$8zQGmJqk=V6J0ELSYYA8Wnm}<RgjOX$v#?V%SLyAu>oqmd9PfXCInNt+W^;S* zlcHZ0J%8>g`b?l0@a&V|<xih(*X|o54V5NkmJIg;5-=<_R^pC?L5)eB4BS{`p+MHp z>>qB6^#<--_P7}p-UcM1=sNe8M2{-j_tf8&voeZ0`us`BHp{AH3=;6O5MI%}kF4Iu z+b#?+ozi#M=!F`WJZ$fx_~U2B?hn#R_C64i8mpN2t8!ThS`{zNtZa5(fs@5MY=>zi z*MT~5hw5@_7%xF0$;{ngt?q0`??lkJozQ=eh;*87T=(N1)407`d?zTFBjfFA>GiR_ z_eihnHy$wR04LGBpj%xty2dg;{!&+C*X_Gi*2QZ38AJUcd{Rc)RVh}KL$MAedAN}r z39O_r<bde$qZZ(GQ_h~8mp>)Rg3RoB&LgURrdq|O^~2(=04B2ocuwvV4#DfKaV;yy zG|BDFam~#}N|8&4<WtKT58<E8a_3uK%cB%s+SE_Bq@D%y)_lG-T!u0FyAxxo9yFcX zp8NJ<a_7N2F%*IRs>%Q3m5d^Gmsfi>G*2TZ(=wB3aa@>6KC0(ZeG<&lG<ny0G~xOq z%aScOdw>S(*IH3UAGYXpW7M*Sj7cETW&2wU(`qgE&JZz3J7+eJY|5?FSBR`z%cS-m zI^v}s?r%dwPf!vL^OgLljopa2nYaw25s9$kzh2xt(wIR*)MTZD>@Lo{*tLn7gNBN6 z&G+p}f*t>BLLrM9M}w-~vMb5`9<*EweCPA=Uc}zaE_7T+4lm`+cHW#*zuJrV*9nE7 z=R-#i4HFDo=rufetE{#s<C`4qf_t4-WfDQtUEFQ|M%3EP?^IJCf`g>`z<Mf%l{s-& z=GFW7-g{c7AMdEY%(4YEb<0B8)%0y;*Pmbv5I~*%R%5`30ZnPPiVj{mla@)#_Te%| z$zqs0(R44N?!M)mXm67Pp3O*iu<Mt)gFi7E!Im=<G4dkwdr$?*O?XE?6Kej6))C=- zjo)e=aeOtxon7r6<2~UM8JBzWG~za#YcHEa)P43e`%Hi>VocNgDr1`H@*~$!8eraA z=i>V^U{R0Y-g)4Ffr}JUiP--omYPgl!8cotaAf=vED}PP*Mj5OsTOb;DbIY`)Z^&# z9~sl)c5YKN1HDv2`hx&OFQq2kD-_AnOAYmyni|2aMKxxQEoR((<%YPguJ4{c+R}R$ zI&VF-wVVql`vLzf)2D^gvF$8>L?ex<#t2{wC`WZcZVLMSG~S$Guwe)A;-dWbEoF#< zhS%lSbRLM?^F{t_;fqK&68U6csUYaxua;ycY@u^ZXaRnI={Lu%Z<c3b9dn2j0=LRs zvNQ29rmv5URa%~{9x55=h@-+YdISKy2$<V{i}h&zs*ftp!cbaj2@5(+xyZ6QPZ+ZP zIeyqA5$!oD*!rTu0x;>3%}znbRw8pDQoiWJ*hdl5y)$yU^h-o)$M*kt_y0{&yCf}! zB9_s$)YBX__%aqdUvt4)kBl9jZfb}<;GUh<NyHwow)$FX9BXG;I-{lVX8*s^9x$3( z*VG+$Rm3%*#>#|IGx^!rBVh%PITz&K1)&1v<+SDhN8WdbHF@rT2T`e_pdzA7H{t*h z*&~kPLO?}8SwT_uki7|tlNA*elqG_oOp(13P#`K>WJ7{PKxPOdjI8&5LZF`0{#xyO zT2GIEc%@W()jZFAf9GeIwiQAw;IOY^0q+4UVBck1!NPjk`k()~JbOk>jc&OijT_65 zx3Q%nq~dj<?eVAlvG#16bjD$c;G)B*U<5!OF5D&27r$Uw(n+hz3%i{;@I+HvA3X%7 z^mnaF4cl4h-6s%w_rj@H$QdQm&i!dha#ITye@Eeq{~t(mxK66SNa_FzNejmW<B_yL z=7!9`HL5LNnv5|&IVk1f1j&&9czGI=;h^1~mkLMIWRXI479iR}qrE1B%x&evS-Oyx zisgZz5vb6Gebrt1#}~Sk4sGsoA)qJ_ln}LwL4MpccZ(`HB}xZWvgM45nv6(c%VBD@ zqjzn$1N@6@L#1mn6TjP2k(TlhFiLji9cnLQHALH(4bj#u)Px!nKq-0W=O<x2zaIF9 z@zvZL{78OT16{~yk7LyR2Z5+4jXGvu{7UV7dzfT8J$CFz%gkT~D_f~7AN<h$1hXGX zRfK5M@w*B)m!sD4pny{Nj~8q8g$;!8NOPO^OZ{T@mHX4uAV$_3=iaxyKI`iF4EcG; z!aS&*VTkkDRRyIq>EP#I!y#WEa(Cy#H^z_>4(!0sVgJ}}(UUthxJ^V)fMGTKmUKgk zJCXHpZUGkPx&ZNjqm)4&8lO+xx3$t=XuK>GfSIxZoggeE&-NW##y`QbSJO?qbrHxq z+R-MCl89VUXJ<R<>T<K_Aip(8C9+U~W^w@#quO%G{U{$VU`_;_H&r^##7jsmZm#~I z^tmBeZxgYV#pPQAarxGVtfJTVN&>u4cS#A~Za1iHgoGO*{?YE=5dZt@R0MbPhQwnb z@w3UAZ*CXY<acEE#7y-dqE|D}F@PqV-rW-B{uXO8+MJ$FzA~2hV|7F}b=0)lVSxmy zHnna8$6SJ*da%nL0!pIOO$ZynAop?imX6a9<1_Ig@ysmaGZdjO1qPP-4nesAEOD2U zOmUav$EGx+v0zbrpMwKY+{v8Ju~6^DO24qy<}``_hLI&6-utaHx`GV0PE5q8uDvys zn#q+?_Me}IV(;l<6dEfTm!xA3O+msgu&?1V{_}-hI>5jQ8AS~xH6G-CJ{x7tX!SLv z5Nw<hB*4cV#fVvzVS|I{oyWiCkt}!!=$-o(1JwZllH2&|A1fB6C;;=JeZmAXY5}qn zr9yKO^l1?_VUP&t8xBK6k)x#4M2IM&op;9>F-sI#Q@_D%;J=nAG9OqM`+l=FT_^zW zJxDd;K`8b~blKbx(qrWuh^Z!^;-gw<N}W10eaHQW94L6kuo*M7!U;Jl_Ns+0uciPM z2AVj<x#?;{6Q{)XH~DF^6Q_W_+Zq3x6DM$6=wnBbE3rZ@=ByHbAj)GqZtB(!f-}$7 zQvb2)U6O4*hLCp2hp*8txec^S7F^g3SmGC98#W$a;m)<yAE1$D8CHLDuGw?kpO^`- z-nYcG;!A}uYP_SBKQ4<pcQX2+g0p2HzqDoZ?J|$Er9c&bhcoR3`_|mYU=NLlYmSU8 zTls56=-<^Nz|m`4r*M8rge2rdGyyK`bB6Uat$@=F&S_fPzWC}AlJBqE>c@L71}Pgg zle_kny@|Hw1<^O#JbzC*v&JhJb#qd>iCC)e;01y0O<Ww|t?UIDsPx$0f7eP6AS-qv z&`P#>-4EP=M3i1=5HJgX41b6oO$B-k&)n#VfhKH_EN(5NnLE^$lOqlX>bPAUL?74V zQA+M_+R`BFpY-#pOxG%4y!7$a1rmj&FZqr9DI1BsFt5+IL<v>Vh1<Cz_KFQtYB~Oi z_2OSmlTrf4<h2<<Ui<5Ha-rZ*k3cKZiDz%Hs?dy{TcYR5qVS9C#i8UgYMrBZ#i1Dy zUs<KwGv<uQblHo@=U_%8lywM~B|OgWUU}$!Am~);H~vni^5VoVvdwc+M1P&`NT=~} z|E)+}1AA2n_7<!(`o^tS5#N$O2oQ&X6%v@jhJ_<j1QaS3rQ&fU4nb*c>Z(>G2BOhu zra@R*5!wGd@rC*JTzf)!n6jq}P~A>&X4GrKg=BGVCdv9asS^c}a3(s=^s^jTy8fBx zPCyhY(x;YJS;M9}%hgG3x;_f=L`AXT$jQrpII;W^4mSq|`Vvh4_bV}QmB#@<;e(xL zS9uQSne8;l-F*lpOdGuj0QEV9o^ZQh7O6pH^ZT(HIHqCSNM^l8fFD300^xoZ<Iid^ zKmsiXc(J^S1X_>r-17y?{<XhGeg3Y9JQ1ELW9xp&nTo=M@gPU9pJifY@`jUJbH#jm z-)Uk4y(fb_dm^>|Xol13XS8mg`N(SOsp8jLzC7QcdS>d!v($Pyo#%mwbFK=1q3p$9 z%95I_`BwUl3oy7wPSrSe4PhE87yH5)WfEP_l2ioJq6_VI!Xfe2sMW;8L;$_fzAtcg za#p<cf~1f`HVgE8oulYcRVdxbN9^&EpXbC|i@z(l5LhP2wqH89(=dN8ZuCJ;sUnUP zY$z_q|B6?g<{u3iI08zstH606#%~XKWZe_f>H-L7;L%g&t@;`hqM;yWTGdLsG`5J( zU`5#^fPTl%@JTrd0wB+_Z{!bGEQc}9YZTI;P?6h3LL9U9t)IgJlwzhon3<R&5bd;* zj6Y0@U(%yGmd$cDzB{FIAPu9UlYC~Soo8EHSBjnYfOzO?3UaKs#*Wqj$g6xITh&`_ zZURH2GFi-YRhWvmM}*HzAE2E<G}tFbj#LsBTX$HbsEw#44cm!Mavex8H_ruJR-O9S zTWNq;8GBYq^O{}II;pMXRx1hHjmm3V6gW6L{y>M9a*;bF=ptC7+&Wwt3}h<=nTUTL zd_k7Ue&mZ(IMj3@Cwm!U^b3t2g;25|V4w0cy7&YLcq7`iFnM=}cK04nD@vd|_aL4B zu-WE8$<?07-={~dU4mHph^r#h+3l6BKNx;~VO;_7GQK1Lu!QAnGY_~3CuYlXD#s`n z9U5(55^91jynkKOkzYH)@2=_$*ingAO(}{KWLvSb-axMw__*{$qUD+)jQ>;7)AcFg zu6;|G@c&^pz=mjpe$vULk;bnA{sURa<3J9t4N^%t#=ELN_n_vpgAL^JOz{s<M$QH) zkdI50$pc8%7hqcbRvP@rSyZdxU$CeW%&pH*e<4x5o-T`iG9A4fR)1HbUr<#X?lJxu z=xP_$FP7C)Vo=9Ue!30*V@=Qn98+Djy)!@L#Nhq|eL!NY>=7cFma5pd?sHzBG-KlC zJTDHo2jI~zhVAH7I8K^UC27+&?5V2yDc*fp)XuOm{W08Y>Q3%NOcn`2AJinExZ#;h z5|x3g|6*UHQ^$m)<0#s`&7y$F(@2hy;y+W<Z5()2`8tV!bzC65dDbXHU;%JQ`<2U8 z-Ar24&`z&bwuc`-?w2?;i4W}OjF<;bK}4z(l_0OoP4(uSOWbM$m|5sA5NY<4oE{Cu z2twYqkXa1GF&J`q+fx-zc&{d5L+b#P4Gx=XCtxO1+JvD`gvr?GLA8FtwKKVw&aJlU z5=)3!bwkLd*%qVO0K3%tvCUQ~v}}^zRrv};%6v%!8I!5h4L6>+MJ>f|uPz4epu0E* z1T7}$Rpx(W@F3x7ZnIOrKwLxVyo;cmMc3oYj{wPS3YQ|p>462(*tmXaQkko;2%|>8 z)L994g8lYDwYPvU3SQV_N4SkfPnE1AJ|B|mQF;N8evyFXX3Pk$jz%$STbESFHNdHL z2j{XZbpY(kIyz7+;k-%0$VfoZC7IE^;q$GLi$X`H5S#<?Kh-c3RN&R0CApvW1Mj30 z(b*Rdlb_OG9&7N748K0nuW#z4920nK!YEesLz3OYx{0fMwl^SyqE2ASU#kMoCC}WN zZ~}4Ss^IevQVC4Ulm2tJE1or8bJ$Q<=^jQT8O-^WImi4WWAY82KlrI~*)DRM9jYb6 z3>zWu=#n>Aqs0Os#lP~ZQlwUYofFpNvHZWs2`keaHq~)IsS8u(u1m$(&7=fl1uS6> z9eKU!%Sn{zv#V~XN3Mb^^wP4t%Of~|my^QppzxMj(DoF=jR8Dy-IwshFNkjc$0pk^ zp7-V0iL9ctpO*~vN#9Mgh2&SwH-`xO3^!i8-t=Zi;tpf9E?`l0JkN1ed)rSq!<U$9 zC`$w}@-K+6g_Pj}!Vbjrv82n0x<I=c<w>vUmjbrA8y<)o^4}2gaf<-Ha(*hXYrQ*- z3Uen4fI*Nd0)ek+O3};O4v6*nI_xD-jZI$r=@U@N8=H3Rp5zF=_A5|6`erg9n*w_k zNRyHLD|;2!WJ5l@;e@f5dv!E68r>JfDzB;5w3(@#Xqp$q;f4e~?}gcniIWOc{?EzM z5CmD;>$ViUn2&eAz>OLM@j;eh91|mXEr0$7%mu%{&<%sb<nLrxp^++op5g<oOz@FY zy(C6a-b0{!=;P!~h2)y;nvs~?v7Nw7!1GjLQX&9Loz}L!(4oteuf9{}^rpq5Hfh89 z8&i-WwalC$^+!_>)*zun*^6WIwwC_~+3+u1A;pBXyR_MmKrxs!F#sCJ!w3Wd45SJh zO6`E+fc^WUqD5W<6HN$_9XiQ3S;0*Yi2;6lxikGq`V7y}Pj4aW$(bxm?W9|spp8F| zD|DAMtqj}$x(!m?xc89&T+x6pS^j~VM75TWSZU-sqgaKsOCnD-oDuHUf8@^qbvzQ0 zQ`J)$vY6*AzmsT{e3jto_Fh5`84n+p8}R<ak^7fj{Fl&IXr}tbmiKR-o$Qdz>x&P6 zGBq{;2aKMZd5*p1Nk$Wip^TXT1ob?m+EcI>w$mpMC?{=u#BPg6)4HuhH6ohxk-#wS z;B`RN9I2G5354{N8cga>&brDJ#$unuhEF61e;W8~Iu;5(rc5VKg0bf)ELHLT(}8zE z9=5s{lK0-s^Vrgo?-0V|SaEmdYn{yxwgXO=bAM2Pd`JMswWIDa9~1KhuwQ%g*g8=n z?wjcycO^;%5E)1ySMYU1{v9f*OXOy0ww-h5{tHs=-!Jef7<}|2!Kx`WsLOLG=7umo zuqs<O{J_u$1ME1@0KqEj<`G85<ksRS?S>BW0)<s#Cyg%eL0tGrZsiSA>xVx-ez@?0 zHGfRqPt6NeS4p#(z$DMz-gZSYo_7Vizd!qxJ+a%~T@c*&_#wZ-#=S>Q=*1;!-QTwe zqc9n*wt4)%W3{pwd?1SA#5)n6KiOi1$2;O^1y(5;IjB-VVH9at<a>}R^?@E@b~iUi zn<eF&woxDQPl61Fzwl4`#bB78Ik}+Nr8O7<a~o!(U?U!;*~lIZN_gYl+ruH^Zv%HW zEhM9iR>4OW6!T{azJI!)ac%x-DWZY%%zh(SSSTX)KA1D!G0?IdIUxWXf#i);kt}{e zeeW5-FL1at!oF-?9c&HL%1nMv@NG6v2ri?#1u~1|V=0f1n$)0AhymLU3b5^{pLa58 z=IdGqgd^qyo-|WBectVlc@^K36r*P?Vejefk3`p+?=pg&@qb%OSeC{3G}+r8KIbW= zdnW~QC?o!>L)kFPp^Tz|Z1rR_R<yxNz?6D@^V0E^O<Cb_<yxQ6V<B6(%gNCyJB%g| zBUj7PyH`r<C>CyLY?6y_1V)o;hf?dgM;8>|{n-ODlM*gd-#x*6Doc#S1-Ql5gSE_3 zwpBYp)w<+gF~B>SPCyR-YWgX^c8au?iG>AUC!{>eJLVKHcp(FWmjtzW*Fy=W>*2g| ziWSq|c;0<)c8u$H*?R-?4Q$K0qTn4<r&kDju{tCMyUvpFmROS~JE!{ml}Cl{_SVmS zLV2<rQ+Uy~vg1-19}N7fyJ57xn$qh?Dx+-TFghvngcen7z)EnR6)^AEvZ<+$!=26e z=tgD8fD_fVHO%8#5HRmpC=nWTWA%!i*GJaQ(&ruKiA$VJ`uwlHi3o}W$sX)~&b!xQ zu!V0sWFCyTS?8TUZ@@`80F1ec1m`SmUo3{qmVWhU!Fhr@HNR6kp4Id5r<8HR)Fjt= zM8uGz!HB*n56H9>LE1RHEegQ$hVpNgH)xjS4RJi7h!2)spPesA?Dt%QHN(F|3}QZ3 zx`cdi^KW<c885!u{4ubm^bnGYwePq?Oipk8xI7(QE}2zcY=PM05b1N95B6a5d&nJg zVw>%i=Qmn`Z<OYULyOxHw#&zlo%-pv@k-(GWB<CtGmc^U5B%!vqp(ci(c=$GAMGU% za^8mw>?BG*s~FDvDuZJHe3iN8%&*Tdy%~RX83#G%9`T1h&Y;GwMZQnNmMK@CplJFa ztH1Tpkg?o5ZzT~81<i;UMB&BQb4IYKv`P31#YlG->+$#S-~rswBHtn0>S)U(U+L@F z@6=Oz`^WtXVV5i=BQHU_i=W;s@d=EP0hVlzg*kM9wtBI4-Z^Ui+<&*zQV5)H94A;} zgWF#^1LLU4e>0BqW*JA}`!qczVAcskQ;U3~TaX%pFY2xjZGBE!okyg0_D*7}&Aeq~ zeELMNSs-lrJvf+ux|si9sAW%Nk_P+@Cv0rgDsvAI47qFdZn>~!Ea0AClRiUcK%gu^ z&Is-ROG_>;AK#Msn*4x#4OsPlhZ{ttM||@$(R`q^7LV@5$yp7f?K{f_SOM3OP(wr+ zR?k>lzid<^P!0<knPj~dIPV=~Vi|O~9)01H0&TqnZ0FH9EU?t<KiR%ei#w|hcpG+h zza-sW0MImXE7q561c<AD19bkQo((uJX2Uslm2DS5s5L_3YfPGIsA|^PWIg+;0(#*O z6>7<SoUq<ufiW53o<+V51?g=qy`{-nO~FL;zzdfH>ZF8Z06t3r#*U$Z1_>gc7Wr<u zH4eFoDf@>T_cNmiPoaT~@Tq+uikJXz7s#A>UK|}t!{b-yQ^zb>mTR$(QaSTdJ=Lj= zOE*J2TMgKK-oV(UZ{Ac4giK&6HlJjQ`I)BA^U(<aFMxl&u`y!S85C4G8VK{uHQ?Zu zUHEK&y_M+<+SAXHlhwX304yDc|IN~o!m@Nk*GH3$V9gqB;lf_q&{?0O<V-N$gvaXF z-Pt;`-~|#ca0-w_SFpmm;`)BHz^cxzvKFuBWEYW+SFx|%Dv-mf+KP~rvxB4-N0Tw< z##>2vc}%(G4cXEe0H)ywzPxYWFl*T}caNZeiEKk`?vnV~_*znNk+5OW!aZU~H|)Ej z3Pz6qW^Q?n$swLkr?a?C4tBUOfmK?Vzi-ZvI1PD(qgTXIoaTLi$k*H!_jt}HUgPDr zndjq+Nf%VHypSkm9lH|=5_|OmK&fzk&$!&dA^0>+e)5}-3lw1UdvR0a5#C)X;ap=2 zimlc#^arOUq62m{8j7O5b3rNNspXZJ0!sYW?Xp=>Nz7vQd70Cz29H{+_3K5aB(FmS zN(~7&1I!9b&a(y)%D*I;?{|Y1>>I9XU?D4#-ZTPl-Hv~=F`s1F$9pHhhl*e?BC`p6 zFds{N5y2+h=DqD*e$6|SYF9q+NG8A|Nugip$nCGepZo#yO%=DwYTaG=qH6{Vbg3<- z;n}m-$Z?`5z$DsHMMOVsQq;ct+>ORFLnGJE00N{QFfNf;m&Ytq)K>LDF5@1nWlKIB zv;i)TqHcNCN^y`!tk}XMFMi_o*y7u{$X9GVaB^G=^(Wu$7D0v--&(qX2(ubQ7)|P! zif37y*>Z4;?C_3ugPz0gr0Wy(&8eVGc9HPc%+dk1n^j-@2R~+Pk$ZYuqwoy3$MS`r z7Q)MC8)ck6)F_`}t$3mQFn9l<ClYo0JJk0^us7dY-@8y36l)G=m<cLbWw6?wRPcNT zC-WpqWd_ptLTli0KVq~MnNc-xo_sR(NyT#p+gUq@1t=@YkYUYN%)pbAO~n`)fI>#v zTs}^1QL?1db5mR%v;EmEfjP7Tun0Eg#kY5|x*vb2`+>M72{q{p00ObIlj9fVhJVxu z0Y|MpXy4E=SqdKlM`zD3N2k#9WF?KtXHpQFA`)6i=;Til!mR*f1g)<bBfN>*d=0i_ z4WL*r{8#M!KWge^=Q9$MYgwmEx>Yn8cn|@v<b+9J28P`#+!6jm2>Q$1soI<z9!r1t zMeiVX^RMWFu9VG-T5v4}IABQF6Ph7>8FH9d1&7@u1j)HU(bgbk%7LfPcH0kfO6F^Z zKI`#RvM7o)12wFfF*<ZUI5jdIg@088fgud^zd2#K$a&^KY?d3FvDnswC}=hbbS%Dk z;4~hCD8270;g4*$Lb+jkGFsJ75yTwud4tsj1YZd+F;finB1v5Wmb|}WgW-1Lpcpmj zv1)B*`R_h0tp_;g{BNbZ7tgka1nqI4kjDP--U!?~m={!a931dp$T<I~;R+OdQN)R! zFwFEo8|#^jR~K{@OGJn$7It-$f)3J?f57NV;)H49$Exg`*Ss!-jdUpv2l}C>E=s@x zZ))orW_1K~X{GSKD6iGa7n?9<&fqk};&>z){fyYz<V#SJ9}a~taSNVogro`99CTxO z^!-w<f495C2XnAXom&K}W(U9OBcfkh{0k(WIBU^2tVpvUg7z;{2m>3*RCYzd@#n`_ z`5Em_i6k{jc+0zZb?@kU;)mDy0c+e{7&p1p+=1b#X5j+tM}4RrvTOG_TsWkLxD|<* zcsDiEhHuq)CPu$EA<gwzda(xO?wtW>F8N~f9bw3U`mjCEab@O7xe{7YesJke;H0qB zx8&zt%D-DB2k^MKdEa(_Yaw7#?)`5j<@i~X@($OTdK@RL&BC)n!e^y!dzN`E7&7IK zkliTLh#*6wiFdih;J1smsWj-ZSuIO>8h(nq5t`<A-aDW`I<Nd$dc|!X>RM*0-|J>a z1Ild1l2_-v$>;L~l!84D{3=iU^}Vt?aN_&cURhrlRB!f^Pvo3Y9fU}ITO6x9Y_cm* z=Aw`464V6>x1-5s91VZA16r~23q#=-Czv$he;*fhVom0fs5-wV`P#9Q=enBt&O1em zpRAg6d+(uG1FgG?y(H#Gyvb~%zcs%C;|6F~4Hg6a<JS&Zkrou6I(}W)>={iI1MmIj zV=^Ei99%)nS5%ql>F6@lx2c<ZIJQN*xM=Sdr4KAl^H1|&GhVL8)prUU8N<YfuBps9 zZDmDT-8(R1Ig%<S>&9FF38p;(J^+Gm;;u6K9Fqa8L0)c(?H2(UXskc>T?TR#$3Hbr z_*7L;zEa<&h4oBy?SPj6=|1QA9C*ii^k}yGKXqNm71Hn83gLVCt&&&n_#iJfiQJlE zd0iW63M7dG@9XIGO<uR&lU?1a7Bst6R4dwF6CBGj1p4}YEA>W)Ymlp*GAMd64iz?% zj3mC&a0D&Ep03YrE&5?K^4$zSNA3L7&bgI;2em1Lq1?ZAS~O(=Sd|6Dhg@3@tpIRu z2PFHBQlA>XU!~!(AYentgG=vu+-j}fuX5RQdC7UvJsOs)l+T?Sbsl{YReLKi<WcE? z>9|h=gXffEq{Q?!<3uwbq-JnTT&<3?R=yJjY6T6E4?GI@Ga4@VC^a6-))09Qev+EF zz`UBLVk5@8207LB4v0=EF9oo`v>Ui;DKNm3dZuHH#?G%~zIHB5^*+8v++Z!9f}8Au zPzC}r0B6u_?6<tjmz`@Z1rt3`^O_qjsB7eYu^qr^NguQ{gO(%v)DZj}LQW?Nr+~I@ zIYGT#Mc1GUf1?%ovieA&dTiLYEj6LyQp?3tOK|#n3aj9jXC&m5Mk9w_H4~)Mf+d8U z_60R?+1;D~`Wj!8AupV|d%$;L09aHl_zAqKc?F5Ty>-2`aVtt`^oSRgAR<EP1vR0x zj=oJ+dH^gbfZB*a(!zjCO){|c;MwRs`c{;%No4xSPQYLsd|8|YT(1VFfo%6iowFD3 zyAeI{0+8tqHp*^K_6Nled!a3<@Cn<QtxmE=HT@bD@lp>ld$p6>NR21+8#3Nn4=bvF z==VvEYAcF&HruP4mUMcOFy1~aZL=qqqQR4uFO<~ll4KUr((d}`S%Y;lA55m+%4^() zo8f8T(rZZi*nwM(l&l4pW4vC!Yb4EZttYytfusu7ieT1o+6s&iG9TC;Q$EA&eYBSL zl?F^aZrZm`W5i@xR-FzlcWWoLU;vUQ4%jf~zBj+_fYQ)!Y|8&S5W*$*<B4i?4aK3% zGx<&y)-T^~O=r+4sO135jO_wPTBu;*rRoTINg&j{<c^Ws$7`fm5!yB#g!hD7jVF!= z{2F_bD5Mj*R0T+5LRhje;5pPhre6NQ<Hn<MC=N*-RmWc)E+07CVbS8Wbu2XA-&ql- za4g3|=3$k0!Y#cHRD)wdQ|54BPrvj1exC^Fy{MZy;Vqu%<d{sf+fG>T35VXxqo9ce z#ikxXDD=?B8-$mNMB(v8zKFu<2X4KK_{xpa+?~BjzOG2phC_g+VQ79{{NFG?HxLfl zqV}K^lBqA_)eYp)klO$tc%<<cNvZkUQ}cQrodK?7T{kxchpp(7#0pBeob3E~LqvEW zB?nhe@F8bJmz_0>l$M#iB^tGMM@r_Yz3cS*g)I4@;-Y4=v^P(_K$@9z!o~WBm54{% z8;9HmwsrKkT#%WJ+-m6z*QpsYs?V2tl+>i1NU`^@oqQzou#Wj&g28*4yDye9jhwLX zK4}#X5RpP$J+-La0@;=<kP@eChahogM)o|h3B9#CeDVQvVx%1Ud;4LXqXQD`RL&mg z9(=hx2Q|`upxOfMasKwg1H6Z5>L*eAl0|%_6-MNjki|)q<R>&`I6$gK$#HN2h8sEc zx<YjZa3Zk)xW7lH=TnGgFt1Oqlc6?TiQH_0jZz$av&jTF{G}+nq+~U2pI9m#3{70{ z(Xu|g3ZDCF`j5XW=K=BPL2^Aua;(#Kv)H%ouKaHsrj3<z9FJOQnx`7+CsuRx=S8Zu znje^qJmlc4aHeMHboHT-JmTKFNp;2`&TMX~_v2Hc67BmUUCWLZ46h=#m=3Ty%j$x@ z9=Wao{7r8o%A=`5K3L=9?%U!}tNrwmdv79hom5EWPpR}X3i|ZO!4JS)lJ<r9j-|zd zB5>K4MId+w(EJF(hyDH8!Tq>6Fb&EDOeB+}lx%<Cr!}_jU?TBOk{T@$E*j}{sxnNH za8?Vzx8<sVh0qz3AnC4WvB4gV7~Ps(`q?|VRHi!9dk2C$K*By&bRdX@KMO)!s}`=! zPzZTR`ng9UXv@Gj+rYNScP-|7n2%ZoJZgjYtvuj1JV+e7>|xt`SLRWzcfuWmNUlal z#rqj`7lsvsK3VQ<=7b5nofz+A6amtPTaApJIqNQr!Sm#C-XCSpS64Qb<#AM|Kyafv zNBQ5wrrpn^?<vL@gUPbgmy_kWRRov|{{7uax1@Y;gyZ?TC#vbdoUe>aad0GXgEox_ z?1F?S1>9bp?CGtRNy=9K5UO50@6+A680FT8iFRqVI5}YjOf7jdfyd!cdWLCL|2Xdq ziZO+%?nxp~^_x8xR~CFP0$Lw)9impZKJemjP$Ih55Z3HjzNxL(IOdP=l9-PGtg{?o zm^f_Zq#BKeR4bP6-CINZJed}r`8bC`*<?QrMob44tAjDk9u-GxWa}0J<luC;4?ohm zuREP+h2Sx(YAMKxmK-Yu$Uz0InDP@1bgGp6qFLaR1Al@$;Ivwt7=O6};KDX0h0sw8 zv_6JjiFrM0A{6yPb!F6L)t33RJre8lTk9fY^PoY&L>c{SQMJd@o-5@;xXRkoTWRf9 zITGXT{PItV7W4qG!-4*zMMXQdwAGj(o)x(ms`TCPGfZr;6<3alv^7+DDhf6d1$oJA z+4U&{3FB8&d2LjpqiPK@Qlo2m@^vz&y*v&$R?WB_(ENO`!PK#p&oW+DBzEGe%IPY3 zGYEm%Z3N3zx&l}$H=!&uTtF0Vv(BiJx~>GwFi9ocK9>fG!SX#}ZXY=jQ^{hf=$Za! zbkFGugfQS1BEj4A=zpH>)b~D2(bX1;aamZ~{J!`|^d*9FZ0gn&@zsz?N5LcUG9}>N zC7_SxG#a_Gdf=f(z%#C1U50ij1Aq?Cj%r88zUwxt3|onux`8|+lUvsXXN<vP-))Fy zP<ye*cBI5@T*P|`FSd>Bz$BkFL?MP~!;0O2eAX?^=(q`>7)(<(2pEcYW3by3*wwmx zAEpIl8I2F>o#b^lkD{ax*oI|3cBPMo+IK4l5SoW@Yl%3AvAMT@EgHv9#Ej~vPbM+; zs$?~Vds5a(X#xU=Q~ZITb0B7SFXTTm3uY4h$(pq&1eDwBfO6YM^$pp&!i14zMhMch z+h^(qC}njt#-Ryzjd@(H58xg?)A{1o&S6)89{gVfMi586g{Ysd?e>Q&qm&h0aPGZk z%iICelW<Q<V;!X+L{r5*FI0*)aswV1AfCUiQO_zx4rHik-ma@W8aFL9mBwoiV#Q&} zisbugUKbP6PD~Wc*dZxxXU<*YjiMvl7C++})iGPs2;ytDR-9M0-E#Sz4V2T<I?jvB zIbjtJFKSNe5E%khe}K@WEr(;^wz-VUa+h8|Oeb4P=-EDwaUVX6L3YF~Dk9uD-1V|x zO&JNguI=;J)p1x|7JD+(XeFg+ILp2q?Kwe~GL34U0W8t&AJ!H!Oh<`_XD7!-y{o0b z5@FGG9JF}C#W{B|@`4Iy+-&Y^>yVJ{KY47Tp5a(UcYUR|`s2DY_o_;aw{P~Bzt?Za z>u~_t+8Eh_ni<&MK$Hu(PV3h<b5V{7K1K_!<C$s5sU8G&P4{O+VnxT(NRFy&^)^xR zd~kt`RM87@?`s}0L7o$@*H<Kyuf4pzwnw3I(k*pvD1<&SKWh7GlxKyB1F4LUDH$SV zRvid<Ny;W~fD6(2k}HcOLH`Mv<va)&hrB;)yoVi4%(ex?=~HHb&&Asn!QCW4#zvDx zL~qgnf{{;d4lVq&<*89jITPPhaJM||fEoAavyn$z+%}Gdmfv-r@pZnZ(QUo=Aw^?T zo`OhnuZy_F(2}YKE47B{eNaInp#B+Me<W3d1K6_7Wl3p%ua27GfPrC(yI|(q^7LVb zzD-^YSCu228fnFEky%&*0x$-<#kHLmiK);a>9*NQ^-XVm<lF9AP5+4M^2QhLCF3ud zdXaZgn6DHNKtG@Pzu^no?`MF`*Oh5duKNP{wrCaXQUE6O17_FrJ^gP(2}^4ETjWpM zWG_{Yd1$2N?!?4zKR-T`*JO+MoG0z@vnOEvwpukcgm`%B9?Oo#qEC1Z<$JwHp9r<g z4p-AOPtXt5>|4T&#a6yUP6IPyz^Gd_ye2_(Z&UJs=ohhAC90NZ=0sLY1o_&dz6Pwh zatyb&WA#}GGnB^%6GwG|TAd%*71Em*`2a4c0o2)Qau-lXD+sMtX+gS0{o3|#Hr&`b zx#*cvFDNR7DLFuNLjmfu60o~iMNT^BLXb~OA^*#vbT9yV%29L|LLyPv#}BAp{nbta zp$f=;w5kUAp$P*G&)-7c&^yEx%Mo^za#roAGL{DS$K+4Fmop{=bxAo+GOHJotM?bP zh5pPnI#X$)49^deqrlk@yoojHqMQN{7`8B^$>e>=lv+vLmWc6%7f$WzE91TZEy-aP zU(nQk`(0iB>p<n9*tpSQ0t&7Y1u|K)d+$%37YydG0Ffr-!4{L(KEO`26j+H0L-mRv zFhoiR{%gTBn)hS}pIWGRkaUxQRHLD5M><CTh4KEKXJ2k^)VC{=qmI1B(o-Kz0&m2d z93o!3WjdVdp)^TIe~OEVXI?tWSiIc<SHeW{aHh3F$h4YPS-y~+&{KWo@X8)^{m&`G zSYUN$rRRFcaU%biGh74e#<oi36Zf7>YD@R9o$r#X%E2^Os;K-ho<u~ImbtdC6KQqF z%2^fwFt=L|x6j(ch7M;1b4iEnA3zYYlU|8g079mxCi_%4nOXCTU32Ox`vO9i<YT~d ziQX{*_OO@BRzxxVU%yxmoY~e3ny~qO8`K0qsLa2PBqFym1X4H<FB*TJjx+)d@A-)a zUDP#BzF@<yoRY-?r6n99)bUtQlxpnM%iLyK9kFh#r%HfA;ShFPuQKsmGl+(l@F4}5 z&?cHt!0i}ixN+(VU*Y;-Fqk;w-hE#HwQGV)I%t-f^9a49Bd94Ozy4+4@g50v-T{|F z=X>*$hI|n)0ZOyzSXb2m(gICRImc5yyb=V$pHpn1*EQEXOA8Dv@~s-@7g6?M>m(@- ztvGClu_-uesiZorXh!Ws5I(Dkquj%-1p#tclR2e}s`x$HK~mgAC>wpz7<eUYU#`ZL zFZVK^|MviD(N(tUBD|eXGibxn&P|50kd-8IgabJ;j)(>dHujSpu5iMF;(ifg(IoDf zIEPn1NI}AsCwxWbgVW&JjIA4!0pkc|%T=?x4!hAcPKr7;{W>*UGe8@BGKrE7#&Xd3 zXIK%8f6T!62bJn<Dy^FqdkStc-tOa+qL@U{FnpRXk}&&HI$Zm=H+V&Wv0PKK$9XW0 z;2zFAScrTKfP^#U$e>At2Qw|%U;k&`gDHdK+eI*71{XV1MCMI%Q%x=$eOEK_Mv6|$ z!O(1!K+GY%*)&f!<DpsX$*$YDbeS-7)V9bdYRQ2)5umRGF)NBpU-TLyD|Y1ynPKsj zxYUl#(oq{HBNxe1*Q;D=;UzVy%LZ%Kv?Tml6vIM^YwF)`&^%AGVt@Ci*k>--7SiR* zfHG4f+rAd**>ay`7H-4ON$&Wu_*LZU!@{@ha6V>&8L!Et97St9YriI%hLH@;qrP*a zB&!pmC&6ZuKUeU549GqTtEEV%XE};%jYFP-h5ao(ExSP$^zwg)qnPj-kco1KugeYl zCv|n64KEX&Y{~es7$K>Leb(V~X~9!%LfI%2mu568hG-hNdJDRi<#gQ!j|C1U0YBnG z+L-KOKNy_BLWfObt<q53M$;*B;}hVhkZ~D*Hm+X1xqJU7d4S=Dc$VJ}!~JKN5C9#< zFa?jLeIMZW(kM-3H&SO@D)H0_5~&E+{$pW&CMA%(e7g#jaTr=QsU*^6Zj_u!G!#Hi zrX&$w>@pHbAOa?l^d<SYgAhb{n`zhcS%|V^@m4heQRc~t$2GGc$^ri~5M_uEKTd8d zC$Sg7Mm|`fMMS+QilknBYvF{UJWs`#_$e(gy!HJW+Bd-XOM;ml6L4$%WL7lg`{AMf z1nZ##;A;&sM}k4iCtH5Q1((i>uqdN3njEPOf9rKlyOK)w4Y2Sj?!L_hEqr3aZY9hv zd`e;AJFEPR)IU7(Fk$kWYe?eI`V;V*f0?I<{9;%0_wO72KhRJGpMfVBr(J<J0L}S) zD!>PXq|$8*9V>QqeNc9>`ZZt$Fnj+mni<&0FXr|jF<ad^>p?KDfcT03A}jXE_-_D) zac^_{R-~!ncm<;D8mAo!gBuPaxhfKySw)%{K5wfE7|(UxOvwpE4Wh07G-zbyIWWrs z&ZggIMLSQ{{BzhadP8<wDW3RJi`At!bR!$K_!`01ruQc%{qdp{qTOx(pSd@RU}{0h z?%1la_VXfNQ3S1H>ITtA0#`JlL*g#LJpZu@*eHZDKLTTOu5dEQ?j{dD(~)&TM14TU zsROC!F#24Q+(lVHaJXEtK?ou^9F*kIoFzEiVv{-h2xzlDlb$H&VshUJhW}Fphe_+P z>v9%N(5&%Q4u&TI<eaGhS!*E?oK5JD#rXF0nMj(NvB|-DX16G4v}R!{NI<5Ch;erI z8uV-`N7!aKN3;`anuGT}1T^^jb?)vblfQxq4{WbiFW7wMDo4?(eK&vN`8mq()<&j% z5j2Ml`+}GF_mPC~(cheYiYDt06Rzm<am|3KoZ-Zf98}qR;&as_rs5-8mq?dIzeJa_ zWqyV53g9)PN+5wXh}X=c%G|O3?bx{gpUDxC)(~r7V#7(0$N}dB=N!sfu>@oK+ejoL zf{)nd5-xX+@5hWM7`N9t5Rmc%t32UIqv}uzSxs1kO@TTU==uDJx%iI09dE**3V>as z3c3=fN}Xj(q21h6fuYN9z^?z7t61vi_fxGYIb{VoxIOf9lZLFxi9C5UsVh1avmv+@ zRJSpaKtN!z_zkCLK(mOe?6{IP6AZ9*aq|TWpw;-K@q>WkEQ`#wj%9Gm7?;-p2DgHO zRM;=3+24)({wL=qsAkK6sW;)SRxHGsokYP#`t)^?Qc4b9TqU=D@CW4U^1)}!y@ndE zky2B#Z=$%yLHaRpQQevQk%J_gkrP000sqFu4oCuM14#h=?)XN>SxJDbFpXTj|3ygv zGX8;hP#VrbAN0Xh1keZD&7BtUqKzuf1nw?&@LWuw8?@_&({pfx#2YFVb(uG)r@P7g zBDg`Do9+oH&E6p0|D78IAvOabQW=v^ao1|U^c)tz0WUvux1uXhgu0vVa$|@PCX}7_ z1B%7rg$?-;MHAU_Uf|@Icn;1H?@opqtTCf^-Y^LTpgx!e77j*l{a-VB`%-ZckkFU@ z1o-cZS^Rh7@1n8sCzzR(jHj63v~~w8>hzj$tc52;R>h#FUdjz1kZZ9+xd*9LgEnpd zyb|{tNoDNsp5h*xVe7tG<VQHWY=AJXjBjUEd=#|%(FodW5iEym>joSKD*66xY?)Z! zc;+J}ib_0*eFL|E{J`|~M((s`QWiCgP)9YpBo;9VWw(#MjpKvgUIL&<>~Y_9h>6Eu z`1tA?3E=M}ggrjTq@RO?ftSlPuji8M^i5|_^61d|-oE?3ZaF|p2xux#d}tmCMUOwV zuiej424sV~%#?5!1|7?`(7l<=P*Gg`$>Yia^*HLadi2*(h@q(twaTmvJJ}k`8WB(W zjNP3YY+mH6SWd}7n*2jYe-Ss|ZbB)o5@AeXv2=F;*9~d_jIqIu#r+#GK;s$?Ayamw z=5}2@5)H)Nr`{Y^Sp@--3wB-_%4!n!qyu)$O>LdCTX2BTR}P@guhM(N1LrY8fS~c8 zCCbd0sfCv7+UD)TrB5eMVIcrPl%2sU#%QbvmZV5rd)Th`>!jflMVb~yAYB2e+w8xB z)GdxW>iiaOkr25CLdL1fv}`8hk&N_nC}r}Q2!OCN358WZloACtc+wl*b4nEM_8E^A zDeF&469xc(&o1!G=ycZW{!=A~MZEXU!MHrpZ<|jMPt-%oYVKQ~_l4JXxG5(o?h3EI zK!1Na-4?5VxDSF10S*iV8G>j^jgfT*MX9GcQ1uXf>@C0#0a~96p!KChshc`N^s$U| zAkud{jZ`;Dn`t6-1Niq1v`@xVDbACnrZvXL=PgxDBdLRC!Zk1!2n+mSHKf1j6?hv$ z(AxlNT2#$wlSRO)yaaHTAc!|)@A&ttmsFU%yzut!8GuZLV5Ro2mWY-Hu9J!qb^({9 z3}CQ$29h&01no;#@@!P@2{S1dUkZgGlcI@6PmlH*Kp=zM+{$}YNToa`Pw(saZ#7XX zI;hTK%>0MRd%{2qgNX$gl7brD!q4HPJQ4hAWDWodH?`T;GgrS+6~8wm`T{2RUx8fA zRoV)leyiDag;V@yXwl$B`{r{u0BRe;j+#Ze_W;DN2z}&6XuvoLD}vI}kiTeM3H<d0 zcTlVQ@)LdB0MRm7*%jDFmM12q>Uj<Vh`x3|ucaW1zV{!djS=-{2Bt=L<&<wo!|$Y9 z5TTJSaHd(=+u`IGF%ln1@V4_h$lR=Yh<`!y{?)W0<!&Ql@f2Sr=&Tq2H|Vo;j)ocd zOn2LZSYHm(0<Y)rbmePo!@B$Zr!f6BM@1u7gIw&^xH^DOA~>T)MG;~&$n`&qjhY}f zID$M8;K!}vHaMMcA`2+qr_xRkSdoa7RNKPtp<{MRCh86KY5Ijo6=R{NTJi$w0KI!8 zwHm_3tLb?jaGYp8<*af7Vvil-0qEVkN%bWjwh0b0k18SdSkPi1X1*yeN|-u^fUoIg zj6aZbYcwUj^@bEf3(!6%y*|cAm*28$1=*=Qg;_?vca;CV#r7ARvHuD!=1}aX2*>JM zkl`C36R%bT)Jdu9rzbEbC}o#HqRPl+?o!L76mqhdZSKeGxu5Q;osR@Mpqql_y3R6u zS}hV(8`2(1nP~ucJ5Lt2`jK=}y{<X6P@OM?-ixH0odzw3Fjt?Z^GTD5-bE5_CAWQ& z#Yh>a8OYcfD68O_k#w<yeOWcyc~rn9T3v&rk5w#^c^|gmKAG3=7{&iG@|{>GT1#V~ zTNON5rYt1@#Z$Jw1hV3os0s@rB<U)PW9)0c1h_@T*8#5xG5(}`G5@39D376ukTv7I zDCISXf+4coz*d2>z5=2Gi_$<J?W*Xi$ib~a=F|_$oe!w`g;n$lZ8Bu>dn6SLrPCs5 zDKFn`ml1v}`wHc}{v%Q}nWM;Ual_KW)em|*57TB1gPEVd2z)|lAE<8vf0Css@}CwP z2N}h<<jNV~Q#J_Lujy4XZAvC@0GVi=2(^;~OCJt13BJXL9=TTYs0$?a;C@UfhT1KO zq*Kjk6oCKbhbjZe5Cgn@9nZn|aNE|t9eZ(7{g&?m1(0#GK^IY!)OV_qz;=;~-CZu4 z^4#%fVa)0az{i1f0}#aI*GLEHoHUHr>%I*Fk8nOk!@UYA`y{HO56&yT=;Mbz*_Tmm zY3Lg10!p=`*atjjAdhB2F_0=CDuo^xVie`WM#?!Jl(I=7_^gUPw`4uB>;Y^eY-&MF zkuhWJ6FbITNgROH<Nz7TzSXwixCi>y*7cK-lLj8DUN#?xNHHyKWgo*`De&RCaAP4r z5p&sT?$^g+iP?<s$UC_&{lL`U*@qMQEuz>*timj{KatmsZT&o>8Q%Y!pn4#?&k~va zPiq?kM)O#;qQr16AsF&!9V{HHu30-eM_(qpibi`mBxk-q2HxWhIQ5)?Q=Mu$;E0vo zIV?P#jD&x@%JZa^hg*5PHk}hT5bWK(1JTmA<FpWLs9$p;(nVXq(6LIo;L)BkC7?=w z4)WB+QUn|5+3&U|UE+Kge}@+NkbO=a3w-va^*Xc`e4&no?C^%81OSf+$ZE%)G0SRr zAYcx7eB5{%E^ZNR+5}Y=Y6lAF?7ni++oH*caW5YAeZz`G>Wr!hoba|_SdfUbtibt{ zSMulsu>J9C-e&F-&Kl{@Su&^zTieW10E?5UC<cgO=f<8Q72ut5OTatPTwktY`pjp4 zDxI%3k-;m@*u6At{hoY=?P*ZL?OT(`gvC&w!8rg0dLDfbmT$8JzxV?OZ|OeA^L}1J z>kqdeGj;kNzH!E^p&aP2>JMZj`A!QnWIhimvHw{o1Q1WV0wjV3><T4WHL_><ZI((v zIhqsxZ#*zQGa)3ERI_%h4NsQ|Rwg&Q0UUmpH_;P8ooT|PDwDTJxF3D4`^+A4SD>cG z{io6zVlspBB!A(^V|AHeX9j*e7dG-5pBI1UP=$aO1A2e9=q<Q>@c#PbDRbBCHF{=( zS%Sa;4yDl3N&+^x{3VZsE|4jzCzL&7vQ;h@a(-bu@I?#sUsQBE00D;b>E39#%VoSh zR)`O3KI>o4(bfstX&%~w4sSM8sOouVfR0oYMQa28n?gxx=$U%L8VMsovuJN}^P($2 z$>cncHc2Ko^Y%x)-!XBQ7R?fv{!LofA4$!<$d@Ap(xAdZ5$&+wYof8OYm*&rS1?!` z{CZV?Iw9-DE2Q!?J~sFc^8I$O9LY3SINQvGXh#+bheVYkmTukkF;4Ww+C3IaM3q6# z*}ChTC{NgWmyLwDt#v$Gw;)8h2bM&>k$Zl0=RM71=xX6c9zd_3_}SxtRiA?A3C+*P z-!<~|ElGJgFuq?oMoV5_y$5TOa$#V61N4)YW+SBMzD@ewQHg4FZQK^8EBILG_IR*v zkDuitAbU9{MDW$>THTV*3n`FybwZTKc8C`X;vc#B1)ka?Yd_PMfCbF-m4G>9Yz@j0 z6C@JvJz4htshSC-qy%U#u7kuiJI}08d$9A?M5De07o0khj!EiKCIm`#0UlDIx@^bZ zp6bXpH|yuF&n%!jl`JLmAD$o3L8XY8>D$GkU#tTXwKsgatw>q=e1HX3s9#v|&r~}B za~#N$EY!%OuNj_}QLT^;yvVSxu5n_;No|n4Ql}rc&rF?TwY=z>U3#loG}s^-jh$O* zMfA*vgmOBO4>MJkPM;aT0((uY_(~xBVzdH`6PzHfOc3_3lb-SEOvjh<+0iW^;;VhR z4<v1QTLQUDJlE!2L_T(yRJ}{q4niCrtLcXQjw1ILl-B<W1sb4rHOu>_bifBv3v4T+ z;c$8<H@&kDqcYj<NC2V%KIOpc0geMoS0@d*rhqb#vNBm!!lSNv%nC@<NcGqN@g>g> zn<4R~sH2wud6t*EfZb}d>W&=NOfx5%(U5xy)N1L<E~wXEv&Z^xoZQru#f_3EL<~F; zZ-pTF>z2OTkw!H@DG~61gO4wV^u-{NtYi#*=A<D^t}c43iNLNW#hp+RrxzAiNbUdW z+o!{q1?<+ERYlgbCh^gcjQhFfABF5^qU?fSXS;d->G`nH((naWZf!(C0zTglxAZ5( zjd6@-6VlUgyIbrst-Dn+7`r84UTvZ1RZK?9l#ypC7^r9cP;$>IBY+UiXE$R3?4lmp zlj)Q>FQ8gJj36K0-i%5Bk45ooCZ>>%@Bh&L7%*2RXT=LZ@V|uPt3jy^=kB1}6O{=< zY53$H3pINg>%#*i*b>qiholG@6mGB-Wyf6dG4KF7c}(ea5SaflQqSj-x0TId0e&T! z{wHLg4M)SV1V|grQ8r>7WAp(SwN5=4L$40SJG**0;ETFCt7L3`D0%`A!oGw7nmvwO zVQsAJL+|yLOwF}ANgYFbV%ucfeng`R5K?+8y=)>pi|H&cI;M4pcEIqhMU-J7<PT_0 zp)xf^u*YfI274nWTc_GDzedAGv>eH|a%}SLe=OeD)FNL>;jlDmnjJr9kQCuq6JXcj zXy@fotwPfIF)bI05R^x9b~sR}wf9EUU>hdIgQduAvRthfVt+m5_+Pf5gX$5Fsw4s@ zhfpmmrs8_NRM3vZF5u%BA$N(e+$!0{?I7^vJN`AEe19Dip@dO`%iE`~ZP<%^r*$Vl zsf@#c{Ye)mPm0BP%aBLrt%a>0ELR7q`t4t$vb$A}bW$~Lu}Iy`wA+u5YK1qJ?@gzN zEZ+2_Q}NaYos^$XpZ<COKJkq!I^ksbqP?qAQ?rP;fpD{E5t9pnYZ{HLhKV^DXsM=l z&&8Uxj>SCV%jDQUNEP#V?FRoWII>WgU1@&}Omn2fH~)4Nd(>mI+uN_)&Of2Nh94Gx z{?vqXq8_q~=GYMuVAhu@imbDUPN|gl*FchmBFUcy^@iRyIL{FB6oy({Gh4wYt;O|S zebi##=}hm7-TLH6Z1f8_+!#*5)-_nerh4({4j*)94!Oz%l}*5DvKM=4F4gVU_LaI` z_)fafdBendewfUfdal^+gK7T0gPk&odghzhCQ0q1vHNN+zh0rtt}_1qU;gr3?<SUw zEEEC1lsTARq?Y;Ho!yempVw<Il)R?gf8hBu^TrtQxVoaVI$QAdA?0lo%bs!et-DQ} zHue?$EZ@1rV{rsq|GLg4Dr><%bGcoKVgrxDS9HpFpW%@jHqBb8BfR^M7(Nr`Tn^Kc zd_JR~odU0eotXU8byi{MEyAhQY=>j;llo}y!wJgr1v;J%&XIJtR1HtEPzo7*BFT}X znF(yhDmHBbFdth6ZO~KnbOu|e8OAxhias<ZLukgllqf`=R*B)KZm(`~g2|iIT0}c^ z-}YDm{)el??02b*Z$D|kp{1KuduYLM=f@`_oeLJ+*x<3u>+{puzvq)@z2K{?yL2Lz z`SaY@Vt$oQKQ;+eAM<NI-*{7O@Fd?cRn-hG=M6!_RWG+sM@8+$rJ6zC)Yq$q13D1U zH||_^f_X4ttaHOWD<vH4{Rfy2Xn*2Q2l@|8oH2)m`5$d)dTvR(#eL6NQ#|TveH2wS z!8?0T?>6W>IJJgkSY?UoHua%;`!mh(b(Y|B+zc<K>B$f4sn0F~k6{wuMDM#w7*k($ z>AnMgx-!Q$gMy?KdJlldVqyVXyDwma>h|Jw2k%(UMDB<a{+WFrhWcb9;b7XfJbv3t z+MG6<J5_{LeO7;#-xjip)<L=H%U$GksdLe?`9sn9*r3K&3H<F@Uk<tm(7ADQKR)+* zkDo*3pV+?rk@GW73n#k=+HWVv<47*b(Dz;Z$@7<kVdm?x*zF28_{F?0&_jpL%?ZBu z%<FYZb;T*ZMC<|f;?u_y(HhzVnuW+zPY2RYaA71AhBEHUAFk`GLC4ldMHnV2=jCf4 zm2?x7DZx6P;1dq^d#&}b-O<@;=!pj%^kyFNLmD|tQ6t%uy;!p*%)&7WVUDN2l60xu z&(Xt^Sd!M|rOt6%YH=i4Oqc69M;&bUmOHDOx(=qTDs$fL%zQFj!s1K0#n)e2`vhBj z!)W&JzS)2FkaKkZ=64wx4V#MvVXuUpV@{vmI{?1lXWY)DyTrbugdvZ`AFhordo%e< z6sd;&=0$ug9>+YEasKP$#80EHE%tpLcG^2Ku`zmT-`PKReLV1Y$TbMTNV~hfN%tt# z(cWWi<jz-ogV}`Otk}asD^}P{T)%{lH+i?tPlIxA$Bhqu;E3Kma?6SoqkF4MAuK=f zn#`(89Nc`@IQUlFJ9>+gO>kk!4I{4gVe6JWiDJL?gn9Ri_vb~ix&Qh#{~eFUjbZTT z9*re<G&Fx17`5Kcr>#fatHc&g=Ol-63`c7|Ta57^lNQ=nz1FEU!9X6mM8)@hK4uWW zU36@9Q^^PIU72@$72R^TDdqYWpSvl{F5=P0JlD6k^)my9;JpFn&;J%5iz`g#!om5a zo*%BAI$4)|(C|pCXGZcdbb@G5&cHfwa-`Pd$4ce`$+ssU_KV-1fNbnwQ)Zhc(~<Ih zSG__O8a!=xRdFB4vBq&qw7Lc}u6Tnq#g@7DRNR6H$<@!}@p%XO_wR*`S4eE%qcZM) zH|gWz*;q?B`RVZGD8D^ob@(FGPgAuO92`c)vzZi%h)@E0^BdVT6wA!6ey3NKt|mX@ zeEQ_c*&F${4^5h$z3-)|$#2&r1+IqKK6I}i$TYK&d-1d1jNHx}=2F=P=NONjdtt}R z;`#?pXVFV3z4@YiHSaAn=}+oa^dCB|j-(GNf_&7H)f$pCFphO}Zp|Q?XMxX|4C1{6 z<>jz3i-M^XZI?C^R9o~=0g6_^m(&6qd82RI{8|Ei0WU;bL<wLg*NC3>LzGQF;#zOE zOkqeXRqzz|6E@>x8@HsE-7wnXKVaOSxTf_;v5=C%YGH$Yox6WVUFI&Dji*OePcVy$ z@0gcKmtPLQEz1CT2lF|zMyE$m6@=Ab4NnJ`6!NEj1scg9l02xWHv~Sx<Lb76%8=G< zS#W9YP?|AOr>hnN38RbGl}EeO$f#IU1}I=KUI(P7v?J2`U=HPv>s7knF)Nk$&8NEb zygq9`$>oYqwTuZ`*k1Bl^<&ARg<J>6*G|={&6ZU^pPbF6AOS&T*4!nS%ce%c^>b-M zt2tKup1;4TQ2zn`j_`}xqsqz_g@!dyVa7HcHJ@;b*F6Ri3Z!(_xq*roC?A1{3_W^q z;;w$U)}LMr+szx2n5NY*!y~e7Aj&{VEkSuYK!aj^vHGMFI1isQMa`NlHB(dTMQR!> zKtgH|u4w>?Nh^xH7gm{I;|UVZa7IqYbdzXL_~y>--Dt;B^_*6d0HbVTq+6l4EykPu zNeXTSs8)`DO|^1mkC^=iU%&O>2C*%a+O+?J<NA|OAqoo8ZB0_^ztf{3Mt}RG8L~>! zX{kIclCvEgnvihYEG%D<HN&aPoHFRMX>3VDr>;FZp8d_&q#wCubtat$B|s4lN|RNp z%!}^p=P>*8cPLf79w&c$sWP-2hHCYcpyWs*DrJurYrpgEHIePG)ZFROGAw7G>3#i& z476=H5Lk;QUy7X0Wa~VffValDb!$_4C4#dxiHduoPb~N0?X^<yjgb7DshQ_+MET}o zU$I;Fa@UA>+~1b!_dE&ed|XE^opigz26aA*=Q<y7YnTB8x;4Mm#{C_MhvVI!NIY>V zRcP896Y{O1L(PVw(f3&On}{Z+#b^3m5}76uWgOk=8trSIBzqN<Dq3Gtsyse^%;2Za z^*^bMJHSdRkF1yw1Q`hG2LE}9`GR)1H>D0cNbnr8fGbU>vAQ97>h<s;-88f%!{PlB zve_ok4*3RbSOm30m(MFiZD+PaSeVHH&<?H5;<vM&ZHJ=%x7r~_8|>0m+Q_GnQC5%m zM%FeHA>mUsOdXJD1uBC(*0=UA|LCQTz4tZE5NH$m7Rdc{g}X>_-)^Z@KPz*9;0yJJ z%-}ov_YM>ehF!o|w6(TccNSmHHhdH6z%YA1Sh+i?W*Pt9H~B6@GpTCjfy-|xH-v$< z$&I1Zz>_(l;PybnbCfTV-106W_A_Xw>nt>@QyZcT3=`l{N%c|Qhm(}SXS8>M(vSr# zOtX!=*!OT?b3L7Q4^zzw(l6}V&BypKrVN>$0GAKAy|87)Ww#gbb_T}mlN8eAJ;l9L z%*r~)g?8Pe>?Yin7v!lN^QB9Yq4sIyfG|o!^A+lfhFWvql6yywCitbjS?Kk-n|-r{ z@$5VW8azPl<)>fIRQ}4I0WA<RJ=WVc*pe}HU)SjQ@`1*b@E}3?_rZ$8xvdPE5fZ@7 ztRa%ZU|w%jMv#DP<8>kc_PPM7$QcF@md#Z%9rR2|nwn%jYXj2WhNjYQtR>O7MpL}U zCrL`kO3zl*_ErD{Y{Hvk+=rwoC1D|hZ;B3o`bT!|LXu}+UbtllY&x=#wiXuYXm3g* zKbvU~^*XnRtqC?bOWZKu>82BHX2J#V`t<bm^;6Dv3VRNoEb!^bcWzA5l~AM%W~69F zt7HwBl*fBqKhK&PnM7ahDkq#RvskCdGp&|<zAU&`@aY+46H^oXt&>Sp>29{9N7t*5 zqzWgVCJ{#3yQG62-tiValyV;1l~>lkPD+5H5vXSm4T=(UDWAbf7in|MrA?`sjH-{q zbuTXC5>c@Zcic7^2`?O8OiA04)@Ep;@lvxE_ChN#PtJ&~dTp1qRp}0918Dv8%eI>j zxr??hc<I;n%ra(If#Ir4w2TVW0%i7#r=DOuMOKc)gmOb8LTFk#H*(we8wGixQvBTP zBmTu<!)?60RSF-j?ai01Nc`mK@!qW<iVgI3?4!!_<4a$ueZN`yfmtQ92Y<ftr{|mv zCNXTC*<lyd=>Vu?35?(#3VDr`xB&7@<Mmw#bbGvdxQ^8VxAD5eZNRLrb;ElIsZRbJ zi)!^{V;@Y;sD3G|>~Y4$B}|&vAm8bE5Wn=hLnvXx0u@v1M6+!!&};?-8S>F>wn|aj z5f9R(?qEu{>kPV8pY(5#GL<1muFdin3FuvuX7M@jQ-91cUN~3HE~EOebuF&vKWul| z8Ks{bC7F><EPci+`(UxJy+;<x7WCqE$~W3N<ON_jX@*$Apjn1>$@_~k&nAOi`bB(d z>B9u%OVxd#a`bEJFxHfC@9=ROJxV4O9b#UUSB}oVHxYesv;xIOV=w=&dq+T?{Y|`P zv@N(7=@sGymHEyC+3wAn$Qi8y5Ol0R*T%^BP^Y-=7+oq^ly&Gbp*$$#-0SN$!jsgo znl|8*pcn2r`sr<BmX&V6y72yW{)P#O6QVdc%6pZ+0LqLv;o{)&PZH_=yoynd_s&lQ zJ`93xMHh4{toRi+<#{|iRfc-)7|^uW^bqs434zy^WL9ZCs3>V!7W9<OIKpTs7JsIw z)l`Z4j7AzcM;0;B437GgqZZmiNz1GDm>fJ;(`LA54htaCY$Ho4+mY7V?>sOV%!A6Q z8O$N}OoJ(03<6UU<xX>^)QOo4Y93mKLSwfZ`1ba1`<;e)SI7eq_8E>qkwqSh-^Klm zoK)Eea*PPn#Lms~zsK12|B?44@KEo2|AV4JS_z@eQbHvphN4}eB-v$2_E5ILC`pl} zgk(!9vhO>ivTtLFF$N?1HpV)GG2{RJjXLMtd(U&9d!G9||L(c>yk6%VDth@YpYP}M z{=DDskIhkNYz(1Ej+g^xZMCTaX|mYk!+HhHwuM7sI!q`)ZZ?j*pp~X)p^>1P8W3^J z%+H35FvOUR_=X5wNz#|O^?99@g~djGIn$cp>p|-CP_tl$<~kp*-nri8#;t4T)Xvbh ziD}1i-3`2!7<DxylX#|9bJ0jX|L#R^;R9M6VM)^uTx`F+ICrI{Y`dUVocBz(($KTl z&pd=Lr6qnk4tw^(YOYVF>jv)GdH&olzNP3X*@c&*7j0jYGpLO{<j$wQ?&Y>8m*<?i zqMfm1&l#1-m4x$HEOO<1<cP+UoUb0DluG7RAygakm<ZrPn7vwp3*TsLx?9zJaEWKQ zpWbueWgaPJsq;11$$<T2b3L~?tVeuf0S!9@ps)wOg~EPQqyB_4{;uxjslpNdNJ;ZR zKBvxGq(ZcZt^ZyurAAu=HHjVyH?##056;qWJu7D?(1Ah;mJ|2_+XW)_zKxBIG?*>e zwGd}=K5%!$_*OrI@3+fy$EIQ!`q1UN(Wf<rZv{o?8Jn(d3YD}xMv4|G+$8X9gj3vN z`qAL{r)xVEwxGrIS`#;7o!<@~x_2Z-_s4$jlzPSNb=AR!zod|%Z~B%Kx-%qRIAWoj zk+RZ2?95~d$U5rFZ!9T*=%y{yE;+TeAa4otJ51B>(kG089lA90>lCfEmIT7)S-i<k z@p8xeJN^#L@-G_#8=_=EHcHZlrU4QLfMlIhIcpAeF+`}HHU*+wK1d>Lr7F7%9SPNn zv`luslV7WX1W@fLFz%&2tlbLCthl3_Z>vAusmuY-X+D3a(r>3vW4<TV4KWh!Y<Yzv zd0yD+>nrM5PqA~TZSvkJK??C4DHgnNUuj=r?`<-r=!Mlg6S~^L@$kLJntkocgUgg> zr$2a9c`1(VFv4F<Sjf8po)<bG1_7q#q5vBE4xPSCpq6kMW)%Wxw3_eU8v>aBhSN*5 zjFGcx@{Z=bH#VMcGd!Tyc`H?!;42)x1&&Y3wIXOpqQGpk%zJaWIGg<F9@o$IPKz02 z8=Blu+1xi?yG*<|qHXHr*gDFEiRMv6%IEbiX@SQ3C*`8x_i0NTpcYQX+{xls08!O5 z5)lK1?V&3=LbTY=%A{GHbc0e6`6n?O3_7-MTt(E+#)Ze6=44=pE$nvrXb9j%(6oE+ z`MVhe1V?^vWB#xAxonO`D0mc!fwxY9I;MsL13AkogHu|1&T{Errxde_7nCp0k7c*- z0JHD1CKdOedzO)DQVs54+lMRJV2Cpo4DvLo50~KJM}WCMJC--(VxIZEzPB*mE^Soq z_4b3~Q4RoL9uZM&!t~?@h2kO~-ka!X%)@&k1Wrp`-Jvbne%SXNgOS_lq}-U)Ds?A> z>jpIMIFq1SC^}F$G)^(d&L)<GD-BWQVsvBjh*FZ2Cd9#)tN3hYuQ>x9)9Qee&5tK@ z7PPNQJGRS{lURm_xh9cmdL$Cgi6Y@?CcsnVOYM6!;Lu3MgLg4McF_l(e=j1JM6fzP zDchhR=@2V6d=13ao|P+zTT7cL`7PC0UtMy|{h$EPtue{_J2#lKiHV7wd~hgh4d>bU zpz(WTosQGWT}mPba-C>j*WjXk9t|3o^K4lg?!eZ%xe&Hn@-_W;`vRar^F1m2U+?G^ zhza4TQ_ch+V9Wx-)X#w@#}maKr|1>7eo&3pp%fp~_;3@Grl0@1AIRe}i>Hd}AG2{A zZx_1UIgXboo;+4hssQTl_Z_e!_a*^PUVn7|ODW02<7mH~qKD;p`HtUFzp7F6%9o73 zziS%wMG5x<t&tP$$>HL`Li!Q-hLh7j+8Dpy#b4VPR3=u#j6(2l3kwSWm_#UU^hp{n zT%Df7Mspswf-N?l=g<Dqi?JlTTU<^UnYhCUF5UyH^n4#X@%+`r)?JhuijGS0dGvP2 zvJdfX8z@bAO_=+BQp0PYzO)c7_3iL?`oUsza+iC%b2V#}CF60}*X<cy^=w#<!AT^8 z7{%~gf6zIGZD#_eP^d$o5_lt@*a~%sTt4Dip!5a0ZEIa-xc6a3@C$KUH(hcItqXvu ziD((BWmiLOA=iCc?uWnn_+eghuWB*O!l`Xu|4hTo*1tB$bAErMj9tw4w7#@57zmNE z^J8sRL?1&S3&)*Vo^Mmb5%Tc{R#ErCgf+XPx4}h}wrD+oE3l8h5_O`b*L|+BFVmZa zLv>-pS$YG37<xu=laIca`A#9T`7?tOEiZPuF^q`#)NxC3Q&eB-`EXP@vW6dbQF2%? z`nXBp3G_mKeKaX|)nVt!U1+iEO^LOg;Dz+#St*}m6$8b|=T8C|9iELXuxUR8(ZBVM zu6KBvfeqe$@hau6RWfy?K;phzS)h>mlpM?D;tm77vTo1WAqfx~-@iXzb-Bc5{Rxvh zfx`RgT}(fDR?vjm8qC*y4nSX6!V9m7Sbe|+;QlQa;5THKp8@gYR}KQBgB*ZC#CMbv zKeI~YfLhs_-w6#TcSgxNS_Ao8CN!Zi@<O(ASi<FqYm|JTRz)+j?aFZN2GfwOfgU)Q z`C*8#S|0ePFB9kE{yuzsFGcZtAMh<pT?2HJ{s_YW$VG9s9-~_+>J#b|Y(eId(8hvG zg~Ulk0uRChgt4*k>aJTvUY@`0rz>4z#ii<_;tY=V2kEW{4IQ!9N{q=+2dpHxI=(Gr zI{r=DHYYbmvumwmeWJ%01l*Qj7a#r_(V$jxFyPkwf8?luh!){&=sr`KXFqUG4!9jm zf+5n0?7Er8K9F)Z&$j2J9Bpxc@Wy*{5|s)hST@)!GwD0cd#r41QmH-Q{@8#4u+r9@ zM|fpy^$5f)SG%&M+lZy1a6+*1=1h}7Ss}Oov+~&>Z`r1J;oJF14&SL;*{X6<_yY`D z2g%V?lv6-yj<FB8FPWroH+W#oea06afJ9#X&8xtKO;9e;e6;*k^J25;xzs9N-F7A2 za}U?)t;$1ms#6g!M~S`XA<)hnAQ^O|0(x$K!sc{t4FNObnx_B`*QLk-Qb2I-jljs& zbg3C$S%-H4+>*EF-UIbp4v>j<oD1MFi$5QfMy0Aql$y%)x|k4Fr|>8gyMRJBP%5fh z?dvRdwv!{4%%zy4V_Hl!;L4fbZ%L+_lKsF;N`KC?=%*`!H!_W@9RsiZ04p?CZp!Do zTv0X$6_{qyqCEsURW*PLEdEBO$xQbz<#j<OsKDBiJ?4j*y;7BJI)1%4h@p1UY+WcR z+diSoSBJdeNuHbXwBFzCW0<whnw(non)%n-k44+dz_Z8<i}YMov$9GK;FIepawe87 zrP~z~q!Ggr=6QfoLmhBL!_BoF%K?UJ%U=veBe$ms9KX}dIal@U%EIo-6sYq|jIEYm zUl~}LO^1$V!y)LXUiK0M=Yf??x-JXgJcoPi5utkUGw&U$`U;0ec}|K_RDS_3?g8LJ z{e6EmAT}9fPx{H=4NUUo=QBL+j`BMZEfT(WrX^?Vk|#q$?XaZ@NUTCZbuiRJT8C~w zI`r&xf=6AbGDPjTeDPgHE_l(;*z;Z12UkHzOp$q>W0&Hlc{acTqD^_60rV(^6W|W~ z;Q##$4iK^Oz}yU%p?gafJ{KUZ;R}=4xl(a#KVHVB%M@6)<N@V-=k&KPVpg!ume^OB zS5F_<rAJ?BVHcN^HyQsR9fUHBv%`sTz>R%3_k8g*XkqrEtbEZVjqBQB(Q2z%e3t+@ zf&*|gZvc*FcdOJ_pEZu=j@Cf$e`k&+?GwN9WLX<3>U)#YKqCPQb^SdCs<8rWSooi} z+4O_GIzub`AF*WQO>3s45i14XDOKk#Q(uc|x8Ep6O)5mraDa~X_&?IoJ{|G0U`zSw zE#UEiF|xz-Pl2ws$<OA3{7+~ygjp%8$zfLx+$UwHe2Qon>@Hfg>~?y7E|xl=mhJ63 z8TOyYyzA+P-6i)-($b^CzF(h=gIZm!?a4MxTB_L`ld4SRFg><|>Y(qkX-C`4b$UoS z$-HYjkAPccV!Mk8o%=wZISi#K;H3PTru^jI;y*=**Qb$qikISitpaAUm|e}NSAl&? z<Sa*?^#Y);K58Sp>2VU9;M7Og1Ku6SKf=3H7ZMa-cX!J=0XJDMquU3bxNQckUWk?a zGup2I+|pzY^A%h4Du>#_PTZTlu3L6Hpb>6T63}%&{6CL)NALp?<pYQ)6lYu`|Es$? zWfvLK0K9~_9Ak;~Xp%E2;ky7XkPh3yYv2O;U2h}m(J#>Q5Z6v_0k^ZY?RUMuUm%fx zs|y4Oy)MnR#a-UpRncn<2J@OhQR|`C&XaMHC}Wn%V<-M|pXJ@T6XMe3XEQ&Fc&D)) zy17oNaQ9&?Ya}QPn~g6#hYG`YuRTZB3PTB0Vhtz^FQq-^)oWMc-B=KG{yFHxZT@X1 z&V@nw7aZ#+w0C|Xu>Ox&nsv^-nY<$krYuuM{*B3Zn9B7fqK$2=FkSKH(YGj@`CtC$ zz0A-RDi`-Afcx^|`_n9rL>8tR<TvrlQP_A3CD~z2caOe11@JWy^~=>7K9G1~beGZP zJMN=9<8KTEq|$lL)!8+m*Us`=K17LE+|Ps%e$gNSO!*IMker|xQsv5lrFpa9zL;wQ zWmcbx5DqtiX@fO4=;-Lo!bS8#bwRjwP{F8kJ%$#gQ~iS6=CEIRB7pr}?Fg|%SOEK* z?Fak&2iyB6k~M)?>W_;jJSL)Zr9GzPamesbr0EDC-Yb|B46%9HqjBU17oc%@fwWj5 zX%l;z=|7P3Y*#uLcqNt+OptNOfIHlf;)QK4T0DjraYkhe3&mI<fQAe2{aLdRu<7>Z z-($aji%#%m_sJPBT53+-w@0oZfUcqNkk4NcX?6q}inZ3yZ?ud*lLro(9q_{c0mYEA zxfjb1w^I6^voMJleeJO6G(xS6W2KD&(Dk25?FCfuyMs;MlbPA*nzhU&VfAcy*D^cr zq?REZM*`hTnAqbTA7SQfXOqU9)94Hg>a4%tGmg@?gO&xK=;ADj%Z{b1Z$<#)dES}0 zpHX3c_R|BdBfn^Pe@0v5p8^xobc#D{UGByZB<}>n6*6D5!zijn71GvSrfQz|-?9rd zOZ?}N<e`&7Jk3OS`qcb8w3*%ZPQ`lQ!xhqmqi|OS?QcoCZyDa0cpZ%c;>Kq>0Wx`X zaiaiwAAmJ?{}$GqW_<iJ35!ODgftD;_%)b69$7SrDY?AEP1&W)n{y1KG=M_OLrC8^ zQraeKX+$-L48Y<4xL})?J2A=2(UiNDiKSBlEh`GOgg%m@Q)Uc7*PSvKIoFig;rRy@ zT89qW+s~;!gh+UM{>)MeT%J>^$G|67Y2&_Alp)!*tJGeWZQmw@vuG6zlj?nq6laI& z>gX`uIr{Dbl<Z!+f^u9-cEb&?n}TFlQ0oi(ny9Zjo}TP#0`jk;BAxup`DadcA;EnN zI5g=^zZ@F&NNH{S#qgWqguHCSSh*G*$^tvoygFgn_V+p{pl0;;_5bY6x*_RZMP;Mh zMj)qf_uBJkR`x->)@7FAu4x7;p*B5+t}(whDW~W`LJ{5%iKZYhX}RZ+$YaK8x~N;; z3#id+Jg_t!&G@gat=s-_lY(~_z!N?uM}NY7|IAM~P|fb{K%uD1-BmU)m&#Hy_A7#j zQ+h<)y}F(<@44Tm{A{=mMjVF?F^s-x#n$-@369j&k^j0W_v?|`{dn{!Alk1fU4bSa zBHPpZasPjb_P@Ma3hEty{M`al1mXl9Jsc}{6pGKGrNrItgauMJAm0vh&`yiJjtEk) zjqNtKqx5d9#+Ca^<N~UAXL^~NG!&iw@!;f}1#B<)mV+SMizEGiX4{KoOj`DYK$KM~ zbs1~dWYx{=CB~&^4KXQ8rG{ExZy~I%zCfXxoyts)vBR`dlO}-AhWqN-u?o$oqxY0b zn2V0nIYG>f%eHZ|aaw0jIo;*`o;}+_*)y;<hyi?*HEV+(t=^yDg0c5<7Cr}}Am8mP z@2W1zL}p2TNl}mlgp-M`+=*fXeo1NRz+=@~xisL@a4hz<b1d&4?d+0@7MyyRIJ%lW zJqRD?nrflS!;C2B>q%us3@=~^b1eMoa(1OwG!5Vo!EYo(Z6C3j77R&6V8luFj!k*L zn?9&t&^9T~osjt|dTzx&87AOXcvj<r5q*WZW?k;NZS&l5Pv^6$nz|F<{=g!Qpcuyx zv2INR|C1Vg(><?%i!c5*I>siwWcHHH&3xM)>%p4mPTls^?KC2JIooB%m{P0eX$<IC zQ8wKLnbPj$9_Re+swX}zlZmLxp`#{vEB#6o*bU&h;Fs{ROz01~+yIK>#AFf6u#OeV zlN3281SR)LS>$NZsZ#WZUId==x%<eXL?_TO;+R*drV}l>$<+R+YydO;k$2@~H0YHz zBk7c$tv|U}=2QU&F$p?>Av7Jd!uRhhmq`R&t97rWW_cCd3+RlJdt<G8TNfrUIH1$B z09PUR_5;LZ=6S;M{fQ23z;vFR%tq%acr1TS3;MqkzW_g`%>*1KW;xOkQkH7^d6-x2 z59+EwqHxRBs8WxSMH9jRA|N9#*UAQ?l5i7k+cOD@vsPFz5VfmWWh#T*@rGJ@_FC>3 zYGA4da>s)=z1h=&bnMG1#x&$E5O&Oi_W}Em_e8pVh`?{ip+5ms2bzg2A*7a}N3NJ| zUc+XEMI$*<r-{{<FbP9jKm<*eVvt`RjVClKa}c(Sad=KMA%K$1rre9csYBabJBS~C zSWd3t^(Mey{Q856r7s{U-7dMKc+KpHpK@S_3_tpiYJF!!jiK>QQ78EkkzZtbl|hw| zAnD#YhXwWbegeLbj;!GsBuLsR$B7oZfqsSU1UfQ5UKOVD6Qy0}QKg=x`Z6P@aq&b| zk|A=g9U>lt8snE1`Z1IH@dYjC*mfJC<VR9;t|xb-<@Q*z!-~7MZ%4mn*aNWam=0rK z(Dg`(F)(MP)8Rx*YYITu<5~tYuL0ly5ze<HX-e^6SNnO8$2U#KpNgjt(_jBfZ5D8T zH*HH$%LfbIX%?=38&b5$PbMf*KlV7|J*4lAs`Dy(y8B*`DCm2r6JKsWP=(F7^+h@e zL0cLjbm-cpHo{$JO~I>@TnTttY?W!>d07e@D+8*t{o0N>3C)Jztn}kU%U;TKt7@o% z7;iIx@zyWJ9{pSoe*I&A^*2aRCb=JySpqVbqyG;bV1HFB?1*YQsRdX-_)g}8z^VBG zJ+SF-Ks2%6F5(soAukzz;@f<eSeo8kAbW(nj}1OG60R_FnFrQ7CyYm4J!!wwoGp4w z`U7!xy7J+HSD9|&@3VP<f0g+!{#D=Amp>sP1j<W!KooTX>XWV*#FPaXsxZ!}%qgyS zC%@Z4CG`P*r<Pvkm3N|AX*nM?5<03bM;xonqm-skWX*knR4-|fM{YgL&B<98#COc} zLehB=H@X>?(81-aB9n~r$wv;x3-3cd4NGZeJ#qfv59ahCcc3jQc=u`hi)0oR&BarY zRxDn~6#w)^a`Pt_+c<}FSHQjrYJD~0ft{<(b-fGRTY8+wP0%ZZLZ~HpsIqKsZapej zag{_Mee1YELE9T9oy|3F<iVNDUdP2DoDq|gl6PRBv+R|S+qoB5A|)qauxpk`mn4pf z152bGDW4t#OQf({dl)c^&j4yIdEq&DZ(5z{?+wS#rH}%CFL37%YK)Mq-YhqHgwj2t zkY5=*=`on{(U3GUTQ33L{308v%I{oikanGtBX_4N8Z@O@Sy^QtHL3cV#=$4&Fj(_{ zrr68Jq~=fXyEHpZv{lEzQJFvrOEpx(&8)ikdKjl~b;8sNw@=wGy_S-G$?P@1QcE@r zQcCN87Pp1FM{OJA!1M<3>=pw^YG0`aoJ>mc$$Q2EBzYepcPa+p1jziu3GfH2`X?B6 z0sTQkgd_oL9-9jWl(s6+W`gXF9*|p&JZ^D~Kx|T6b)UfH6K`lVM9X13R|W)d&2h>$ zD~mI_R0<e`Wusj>3}niA;Qe181STyhYrvIS=+s@Ai!DJ)x48PWeJ*mtw=SvVnEDu$ z%U=5B*na~O$<Ko9F~NH9n@OKp`U`zjc%=5yl?j`HGU11I?=3TE%Unup^v0yDMtgWP zG38msa#DzM=z1tOK1hm2y3S%q?}>PeSR7Ijs>#~l>HzLF0{;@3VbD{Ii#LzGl}gQ1 zIM22L_06}h@Z_VvLw2iwH&pFKV;BJYbJ`EcTf@utL&%!@PnWm;j#>*!!~Umot<t68 zNT0^=X#X^W(k{T<R_~1B7qSGrVV@R2#OC;RT$4@Pv0+jX?lzxD^#!WC8X6^PXcoL< z*+7M&(DOOvx<+3#Xx1P0?Y`y9mtuuUOMIcuK#G23Y-e&1m?9$cM$8ew84-}1Y~31> z$g{wFbj@88xN63d`&Fcg@6S4QCo<X8sOrY<G!xZobWC?MvQ1d;0rlf}1w6kplc#J@ z@&og#XiUpGXrtX`F-}u(#az_MyU1diWNea8)+8aHP(JZNH=V!7hSaHX(p~yevAyti z;A*-h0BB=dTi<R^+_z>Ycynv#_eY9Zz)dqUeR;~|fyR~cXW{qPTEBbzy_mgzr4g%8 zf8S*hz#9;(0UTHV*IgEI#<M*{PYigR4$AdE**}>WAJ}DFQx_^~Gye5sE-LbvS)FvG zBpiq`oxqGAZ17%X>(7ri>WbN8&BC?wgkv1)4(2j@#hH+Sd`n3nj`aHK)sR+LhKOK< zu*ROs>Lrm<oAq}#z4bW8^KHOARcR=-2^fdv?UiiXaR4H6Ur*(}DtjnYQZz<4FfA@S zi}>h}=E{jRe!VGvqvj#c-R!Udsrs}#cCZ3RA|FA^{286p1NMeH2!4wTy<F%q!^DCO zMd~Q3=@l*8@ZP81n`kdBZd3?m_FCbvUMHWjp2OmiBr^}piQkRhU5&<ID}f*C5Tmli zX&|h#XgxNwdT&44zyL_gxK`_x-wHnrzklZQYHt=4Dud6SVmbw9F&Kwzl;+vi1eAa4 z&jxIl=yprM*7JYcpABT<&_G~piR+y8*Tk#RZu6r+X#U+Y0J<La5-9h`3$dQd7R6K& z&I+%t2Lvp-&#*ZbAy-}>ua&m#zO!9eHAe>TF6lDa_sN^p<55<2!&{mu`8k#QuSItM zpfpHvdPNCg^o`YNO`_$IU#Jd5kwB$2k@H5IsoaW)EN9N2&s&ddo5sKT!37}8M8~AZ zZv;rGR%47wIBn#x++2`?v4+Azt&WJwja=-LkA~TNi2023O|P53Wnb+Ikc)T)ES@&} zR~AnYFIdS(x$pb~e%s&1PN*vZnLB|Jir(+sbpKahR=OL<qLF&8QXYrqz}xce{qvTC zEp+?efXmCJCJEy6y*x+vp%@1dOSz)smr6=S1n1Do`XVT&vj!LS6E8^3HTnn-wx!l2 zPe0n%-XOze?zMDJbor2c+?}%nBVV@nONlOT`pqW;;1f2@f#G-JI})_G<7XZnyS^Z6 z4!H!&vcvMvPXA+yFOE~gvKk*Qf287EN21M{nAtkzZ9hF+FKtrwOo!=HZHO@NQPG|5 zBq)`&Zil~stOO{h=TAj&|1APx4&<&UslbsLa$^2lM`l3&0avY;gk$9?X6Q3hEXI83 zaYjWWE2^zqg#!~e&UPhf=3%~CbQGJbAr>3bfj!E5!N2aSiM-3n=;>PE9pAa1R-g&+ z#_qQV4`k4(46Ls5C*d0vH=Pu_l_1=A<Q-iCrZ7LA^T_A&siTQoxaFia#sG_fO@+JE zM9x&HUip05HDOS6(pWz3$U#T7N5X?)X&J0Dk3PR^fNzZn)-6(!sMrp4_ZZU>`7o6{ zC5g}Av$h3O`i`bubvk)sTq!y%cw_HbNH{t0;Ja|LX5SwCnx!IiQ2t?CTAc9<S8^qn zp*2vm<irP_tP4Exmew)_6swc3t<o|<PJ#tPi|ttW?x_=qTp-;ClXA09doyc;^pQY> zOg{WM#j=2V2e!a|z!DkWh?r}X!GRlW?YrCI37=!b(cegsWKAYR)Vp2elTV15n1gIz zGo^DTDt^ZgYmS|Ypb|D{Yv!(PR}KZCGDf%L!%@jB;HaWG2}DXioN+{L4}%~&Zz<3N zy2k1th%T|xq#>O7eW!ENYS5~A8(_bMtj>$bQG!+zIota+ldbJ|V6*&&<&rubTbg#& zUF*P<tdU2J!{m4r=Ig}tmGy2y+870pT5g3>%YUWRCGeH}VxPAYz~(SCSI9iYs2mol zi1bW-im!RT-=^W!(MXACS;r4>U^66b`Bj7$?sktrG;|viES{<2wOVxs22VDN)8F#I zL|2{dpL$CX^g9Q};XUL3KeJcC*mfFW8e&YCoV!~%RV^o(z07IT=cVUbstMz0kE*hj zIF1h68A!ZTBbuHS76XUadBy<$rrSIJ0q2{45#E`*jL@3UAGMm0o7-L$$Y%w-8SpEZ z{2r%B_*{deF0dD+%|Py3DYAW4Ks^@JW04STiQ(Wme#hSxGKLB??ttvX?OqtiJOmz3 z+H~+}Nd<rpK|{OWLmE9Ohe(P78a>&f#|@X#_}^ZWHK8lXqC-7|e?crx0>mQm+RVTm z*sgSKr^+t8O@`G}tO=9bLKc^}yyEw(QbnteCQ%KkUADAjG;Sjc@(pKuy{J}KnU;Z# zM;^X+IQl5C3KkRlZ_R?k9zd0G;J;X9yl8Owm;e$8y~QZ{#TWyGHaZ55pLiig^8jdH z9zeczfvFcHp3GwQ;-fz0=G}Sb;iomnnuop#-hzKrR&0eN%M}mPSW=Mbe3O-|tK#36 z`5cnCnKGjRr03NFR!G-AhTKHX)SDI*j{s(`sPy&n?*!SuJ&QYVEBXpAz1Wq!<ND>B zayl3cP<8)%2Zy!@Iyip;rEUYxeIOU0J74_S9NvMYVMchV%eSQ;01X##4k0V#mru!$ zouLfYlv-UaEpYeYJ3`>WSx^WzQ``foxrX>Z#GwO=Wp5uJ=nWN~cmK?kj$+#{%*Ae` z-4hrq7R1<R)Q^fi-j*5$pa1L+8SD^%EYcEMvqG?DIupfTHbcT1i$B&w`FHBgH}DLK z6(s_oiPpj{gAGX+&%*-!;$CH^^o?0}v60f_<LPa%yX{G@`Ncp?CL6v~)vM%I7Ot>* zqe55ATJL#7<U9l_+;yfb`B&FO0wZCNNC0%_xqs=-|L`yWiIXRoz5ci%EyT4;AmrzV zOO);T9-}swk=zhd0q;qjSo6-BXqNW3Zl2gkr{;FUe9uy+43;v7qFmAh@83Ei{GAB{ z*A57Z+kUl&q>fCR|I7mhFu*QU3sejXSWg7v{U=^nV9D$u1T^O5D?Z9ZnbN^ar8;4c zAy(Tl+N%bo)<EnR&tRmYQpVzw>>vv4YHi1O#y_vQi*2%~{`9Zhp8qkV0{HO!aX;({ z8S9+n+ju)MIHD^#{BqrQa4{|<p$k%r`mmz&8A{#2*#alcX*w5(41U}}HWwX#zR%ps znQm^;VsvBQ^!a@QV4BB;PdwHxYsS9(XP`MJ|2APN4WIET?KQj_vKsW4C_M80CNdk` z`<U93@yP%+zYnx0$U4_osa4nH2D>I~$^%O$X)_7hR;V(DmK$~(fadta-+^I&anas; z_F8}cIX)IJ>qDV0c+a>jm}~(iTKp8pi+@V4LPGMwNI8|?PZpqb@XFX^MFT=CE&{8o zrI#oB)*SEhh1S<)*ICZzoC9J$WSk@D#i{If9mx3iwa?3G(E&5hrL$+Nd=0KTNOkvp zS0ngAY6KBE(5;SJrFX0M|CxtfP>KV1ZMr<jxInmDrxg-;3(_SVLf|cQi#wc3@A)l^ zcD09HDKm9E16htLxb(0ehw0@eeYgn5JpFgQV@NT_LRZY02@5XE%?m&_H%1k#yMD!e z|AZrCNaHPE!j9i%Di=)dvaa}=Zqr^fjS4HVMS``VyS3uS22wy4`X8vv1%5A}1@uBi zf*#PpwUa0*?A}~5PR}&+M&F`vyIVAXIfrjrq^%t2Hz+Dn>yN{%EjGTX4BiL1YG06| zHUU>{(8x3Ny!spv_Fw9;%M`2;_Jinz{W?`Z3>{UZ6GNZ;nTescojJ8-q&aM!GI@%$ zjDT*HQ)=$~WQ0{5U_Ft}A-$ctTVi78^CL~7P>WJ>le{vm^jA;_%0w4doQC%`?K&B6 zFrY^-28{-$-7yz_PdN2&6RL`D4G2-XJhE*lfMFC+FYbxCcpIKyu8@g&qQ?q|qw;y9 zW^(->bZzn##7L7%BQ}9E7=Od;AoqcDyxpz1DLA3NqbuDmZIPF{4~%44_jkNPe;FXB zguVFGKk^<wun<^+odE`2r`|#%h}MS4{eO0}{)K4UtN1?<h_Lg@bYZ57@or8NmMRj( zgZjdS#vN$FL$%$vL_1P4A?rT{964vN2So>+rjK`=0jCg)^5|8dq~bt0Q=~MyZkMT^ zOV%>X{bE;ubpr0@+6mFX{3a}nY+C7M3|-%w@X{tu`t{Xvdu|V|?>i%Q>5{eU%kgh^ zeY<mN(^i(OAs(Vwq@Eq@mDFPKVuE6}ELtK5FRp)EpwmMJu{u?Z<rq;k6R@<&T_rb2 zMsnetr<+L811O{Y&iwOf3@=NG-E;GjBp)IzBw*Kxa!=PL?MRcQAz&aapq9X}XT)lW zM!5=6cX!0SU6oy9o1l-1C@IWudhziViza>8;lOhUhgJq>mA09B9`b0~^&DhxQ0De$ zG`pap*kQ!wMh&M{MUPduaQ$mWaZjtz(mc!1Xwo+hY!2FUTtEFF0uSacjo=RASG91? zBhiGGY+>ubA+GciOMz(5Y(iH;rKj}Nbt?jf3@4`gF+sHYzvFfFE3F>nD&n@SuJmej z%b&R#1;kA!Vpn@_l>1Y@dw|WnWM<bPL|J)2!98UWus)Bc=~D(35IA!(4kOgPK+Gfd zL5nEVnaZJPY)EZEc0NZC%@lXdRXVf3ne-STRmUV&N?T&|tpUs?Q$1VpHk<$rF)Cgd zGg*~|8ZEkiNCp1y!^j8JzT*31#@W?i5?awWAspcH8tCTMsV?;ibke+?Gt+5{wsLdR zL7jO1nWH#r>p_TABS$n5$d$Q~p7)X5Yc5PflA6}(1tyK+?`P}RsBYMEi$gb<Z{3Re z^;7DfIL=CIpQ+g3_vG!v!+v#1vm4(&e7kb?)Y&cTuWsG4PVdwX?MF3b`)k5r7rhP~ zAg^9mTR!G|Owz;hgPIn)0f!!lAHESgM7<w-a^!mK>qeOnB7sEv!2Se26}5ng9ArgN zO0COgFI`k@od~Or4Yom%nY1lFuPYpX6Z8TWyv{4NRK%vcl3$s3`s8Rwu*;T>Fu4oO zx33Jn(F)&yeZ$+sbH{|iAaEq?;sey?OfEqh{4kRB#Hi-xfJN9BLl*akDCWg=NcK(< zGREt^lI-zv;l&9rwP_42wlAGQA#OL%^vo;NX6TRjSw0ZVIIou|qUk=qSA6hGsg|W# z=}7wVvK~XGekB@DMz5$Z^u73|H-b-CM%TW)Z~Mx9@I9^8zNh+T_9v`M^uORuBIlzD zpF=i#8H}#JzK4MK@F4psjwoTS*rDo}1%ClVYJ|rQMcOkt&q?iUN|t%*RJB0tM0JdP zbvRrB6QnqxDo;89vkoA5qZK8%@U-;7VS6g|7@}7`;<#H*gZt9ZAby#XXb{LPbxB&^ z!f%DpQazY^*8lN!rv?(Pt_9e}<uGJcN3Rys)Mj5j-=y|~3(%gN{#+(KFKOjl-<Y?} zQuTmZjnhTO@)?Kr(`^@F7Z}Ss3|>l483)C&yYSt!x*-2#ofqGMJJ}x`nv+!?SvLpR zvgc&NB!HK~yK+O{PXBGI{9&l|yXO!2o^$v5md>Q`$&d+Jb?cWDtMZdzf&XTO7F`<F zHs)+@`L@pe;@4juQdro+HT$hsG&ievPKyUWmCj(l7s-B;7^)0?FZ%X$GR=cc0}Bk6 z|0MXHQfsR&;>%p&v$h55*IAYNl|u7^0S)F#QE7~AfZ`0b5Fg@?o;5))R|b`KG${B9 zAglNkNhw$lZ1xTEKoEMt1YIyt&kt5U)?Sz&u?^OR?WN93I$-rB8)O3cq%I9N#7fv{ zdq}xbUTa8(tXixGYdWxcH#N$whdry2C%Jy7fZW{-H5tX_S0!_kj;2E!w-45ND_mkc zwGH+<mh5C_6cnfbFxnnTU&-h=v)iJwqoGd|<JpU(nyVN~b_WTDFe3SkB`&QXZqhjK zHYe}qnPGUm_CwQ;+EuU|6OSD3Ku3&$er%y724}f%;ON?E+|kacViZ)Mel=<FtFm5= zFCzVGog3QF!o3&;t&WsYsn)OSX2j9F_T_(b6~G?Q|ANz3#Wp-;)$CGYEPs1^jO11% zMXMl>c&dpj)Ca*QxD-h`k`xio6>jI1&g|P{Gqg@mkRmv;@PR-HgnJrT;b@o1i?BQ9 zlx$tQ@bl)4mu&THBAz-_&NB^#JNF7!>$~Qb-0D67onv{pd7!+av#oLVN@wOQ@S@ME zdUtVlx*@^=fAxHg-$3<x&E1G@*>Pu7xa6u^h;@F)>)8n=MfuJTDERWL$-5-kth$P) zvy>pd3($fy!_!@PGOL4y8)w6IZsXX;VC1?WnfuJ!KuC|zygT)QG-uzC%Z`X0ixXQA zSNri_X7jzg4ThSZa2)yd7JCIafTJh;^4FsW?Ly!7x;O@bpkMCxO-4k8kKeV*1pa;{ zg>J<A8yyJRr2!mOYLECJ*sjvwY!|}o`<H{O@k>CO-Z<3kRS^6m^qjt+m)Od=4aWKY zVm_uVbw;>Mkqm%MZ4ew#i<y|$*z+?3;GkB=NEJ&UI>tR$W(qwgxt-my1CG>1$*Bqx zHO5nNIJ?!Q^kdGnmBFf9VYM)Uslv!^(9fNnQ4tR<mFc-zMIzUu?TVFeqa(vRM^|IB z7m*wj6Cqq`%a(WFgJZ3x?^d|7D3D)M+@XJ7d}-P<R3GzzVX3YiQ)3~sqFp7?E|E~? zY>qY0zVZ;)edY0F`qIZ*es2NFKC8`7S)Ri(E}Y%hQF%K3$z2uod-=>=H@(99zU`Y< z-?SB+?n^DTFJvBq)!y=C{ae)L!#k+-8(e;_5XGDVE$-i}PEhqP_xkVyc)!xwkNp}P z_Im}UO0S7dz>)7~2s9q($a*ap{2JH2;HQuvL<}`U0sfa@v<R-xDZQE>VQ0?)@#_|> z8)5#f?{E`i9gExXu@rdW;$aXN3|Bg>8YklyXUw~2Owg};!r@l;6={olilk?9Ws_jl z!Ljep6lQo6P1xy--|sBHbiIdH4L4MJvA;yv!2RgO&50N)8ZL83&aC@HA$fHFL(u@) zDLuClHn5J!VBeV7gI1Sy&WZOT6}6oUYqM5;xa!TE8+Wx<&5?UGoO<qh_c=NH@1<CI zUdpQOt1hc~t=xb50POI!=TGk2H;eA;-nOHMevSoQ3O2~URC@Hv|HZX?8B9E%PNzFO zsbFj|Wa0FK&KtP(@!f_@9ly5}<<%x@F;paJeONiaecapYGar2mf;q?rA43;nP_2tj zNa!K6DtAl&HGr4%zX6Zw?*$_0%tLGK{Z?noHm;-`pLJemEm{c+_pDZ)64BHcJ@+sH zM2CduWbSR!)fI4F7c<Qpr|M&Jiv*A$U?8ga3`t;#!DBen83Jo=B4K46L)N*X8>1t; zyM_1F2k?ou<##EOdaO0DgOT_b>-{-v*?o5(=0HasWLa6^Qa&Vmn_@FGO2}tVI?++! zxZpvqw^b}Ny1?6^d&^ap=#8igGk4bt<CQ$u)J>o|;E*vdHPT8|Nm%RcvIsKAy4=FZ zXPt&~8X<6IMbg=h-Sp7$-0w_^zqi5GZ((mn*B(7EKDIAz$G!@kmoMKs^0jW*>=vpl z!uf=DGD97DoIpmwI|OnARq!bNNEFsyDiBN*_~(8E*Nk<fC#*Z)`>DYzeB2Ajmr_&6 zE1^~S6f5Y6GIbz+b9hNG=$iaqECLTCJrmi{{xG;e{k<4CBbP#K(-U+D)ZCF%U_3R5 zsM($~Ch1byLH*!ys}6!&IT?~t+Np~mW^{r*$f_P$2FLtqbqvU|GW9d=#x=MN?Q9`- zV31!nIW$M+U*6<q-NBl*;EaC3W$3D@>W(fR%wH|jrIAKWW*^%R46+YY*AiA;k7XkI zM)#Zf*qca-21!lrUMR-bM<7ct9_RihBzon!vZt%|i{|Nv9;6o>)X9C=d+!g<Ca8Jp zc_PuJStCn|q0XtrfqJvwsK;<P8)gtx4%Yo+K}8G%mBP&y>sU(b_U>RkgXFs@vP@6J z{;VOqoP<p~Y5#UIf9b=;)30H7^XJ5a5izb#7d|BrW(}4)BlBO1l`ZHOjzpLb1_`Xb zvd$bo6cJj@<4i(L?<<^d;-2-Vl0%)<bhYx9rpQAiFvL?uF$*>6HnnuIxI@>|)zxXL z`@qq@I6JJ4Dt4(Sf<TaFB4Ji`m<4?b@^~)gTj6~HcJtl7trPukw9XU=iWKQG*&Hrc znZCQ#MZ{-ACa2*0Q9a+|^eFE4?-0d}DArcnVYI;x++Yw{aZgY~l%Paoq;UG-n|rFQ zQK^^tCC`=F_ps06vDrgSXaVtLHJ#fRhQiT{`SS9PVTa}1a#G~&AC{Oje%xl&ExQ_~ zI~0N{I&2X_J0G%be4+WMVX#2&inHuc*90>zuVc_`=rffRW>GJJS4i0``hY5>_^H!m z+QiVbaqr9?@c4hcP*HSZbSJZx;vnWtyF<O0@E2bWj^dB&Zmg9#4}Ja1l@FeIk}GoX z?8wP?TcNC5{qPp*eWN(2906&ebRAX7DEjxZWOw=DA2Hf!<K$MZO&UH0>bny5rFJqM ze&Iwdx=CEJ^0EU}5=cszQ^>!0kS7_STlIS}4U|RnR2)1bd+p;c>0W^Cdi%7=Vx%Er zKbV9NRu&xMAmyWDe2EhmoX2I>mOAp{34G_mIx%gIKa@#!D&X8U!g9Zk3^#>RVm(yT zkkfH{Lnn*AEj!S95$sF(REd(C;-zzGdsjb5%cW+A0X4B9&^`)MsZ;`R+<63k|AKg_ zV^tsO&Wq3S`FQE2RW)?Xek5{o<{g1$6@4SC$sxoswOC`539?b`AZgc1CzrP41$mJJ zDJ?Q~pFUrzc#@p6?!;)j-fJKyyOah*%7v>miW!(V@O0*qXzBsVRB`&{*T+BR6ny{# zEl=^XPCLlEUEZ{E-$=5;kZH3USlZt%U<Q=ZL&fKRTN|CxOH3R&Ms!=eaKP>@Y4#=& z8!_a;QU-@UdBTc~s4QTL-Qt~;dfEM9fEJsTyAoSc-Z3mw&WxW~fZCI@(j|KCN+*(U zhAlq2Y5JwUQutA}pT$$PCl_T>toxO2MH%aS+iu({riF#J&;KH<^Kzjau|y*cMRQw1 zBWWS80(Ko$0`m%mpb>>3tI_whn|QRXv&R<}5&1DH#<aef<C^0Y=1ZC8)c$G%tJ?yV zpl}TYwJkSPP=V(ist5k+dC&033)lwxAgDOMa=CDzR(PmITcSqXPEV}~Yen80svteF zUVHUxo9TSw^J5<MVnZLX615Uj1sWt|+pt4d6EQFhcGt-0RE`Z-uTybJmeGT#oVMcd zI~X<F(koDgpbcsbg7<j&wpSCBr&Yi6l2qO00{7c+br}<4IM)j6J(QgCVjcN7)AVRd z{E%eq(z9m*iVAN}61dh9ErKGi>&x<YdpP_Ep`UJFK&;FbM0y*zs#~MjIG+$Ct@GEp zD;2N9p#)-^6}~vB7{!<9KV0e#QmgSbk$c~_y(=ypUAp+l{Y0L|CWSaYx1}C`wVEKa zWWkx4o5_Q-#T>E00`*zprqG?VOcAn=b5I-u>6gb}+{Z4)A7$_#1|Rlci2?cqS?YXS zh++`0jH-}o)T^kSIyrZqUyeSh33$=sUmmktiF_3NV45j5&Yjf(UDHnU9EFWb*n#X> z6AQ7Y3;v-u%Se;)gY|9Kcm@J}ZqV`;yH_F}ht=r7UtXs<L7(VcGVRW6uETJ~MoOru zSUi*C)REQ&)wD}{cGD$TBDrL_%W5{<SKxV&?TirCdG3nuj=2%=X|(6!e(ddW9#9<y z)%2|zn%pnEx9Slu2)oQX)23?|a^Ae@g-LH=Pq34PvC=kJlj^Hceo?K=b)6<6Vfk7% z^tkEvF~qTS_q-+BycTLXbcISph65q)4QSX^ed5*lGm4{_Q+O~8L73Mj=Q$9qE69qz zu(JmtRpZj(@;Q$iItK$To)-N&Tk6{w?CzR(jfbUFCoXIizW50ITq+g9H=hpKf&GmA zn0rRLF14b+b6|V_-Q1UcY8lObCjM$qzO-LEr0_{eG)7EeFF&sN#gfb6m)GUx+?C|> z%tWye#PRhes9($wS-yEJ0NmgJ)eHOd_v+=8?qAgPe<a~cNq8!>L>ZPr9YiaxmRRRu zZ)c6fAcSrMdhZJjHMrD8#sZveaV@8=b&L8nmCLopx?d$tQxkO2f|=+$9@}QKtIdb1 zTXnWgaEWHR6R_uN!xO;t9zNF86`PsDB}sO%=eceoA6E#|;FH{!H3cSdq3L1@GKMi> zt-G8L=UC?*faT02ne)AXsS_y}4Yk_UwEW&}8(~r{y~_zPLM9Z-5Oo4|H6~h4E3JsE z5K-11Hk<2AJjGZ}60|H_=Wbg++Ew-({y1-|(-{W(PC7k$i47Qhqh)fgdbi`{Z6$Jm zPHq+;)v@ci`)Hi+AdBMS=~;gR;i$V0*#s2id2>R}f--Z5a0o+!Z&H$u(0Y)3bN8n+ zu#`gZ&~LJ42>$zh@aV6f#iaDQ@^Y`;!06!0fD#YKNgySD%DQvG2m=8t8|6XPJ*_EL zo=>Si{UcY0D$YNS3Bs@NBUkKYL3tiBcZ!G1ebl((4OUZ2Ul6FhqEm{-lN`XTwc{_p zI&{?hx@}t#S^s<2a`P3~BFJmZk~ME=?_+oqRtQSb+V{>)yRNM)A&7$D9p&5z!-Xdf zZJRC>i?^bjBkk%s*SU55BPdDi+<NV{%nNUW1@6+tet#fFOE_@4G(`2}#pR?J7iyv* z$Ahu^V8`m}MAM_#yK3KpJkl?u)~iifQ&SAUUF@A~GZ+B9{1q?)VTOP4Q2v+IlT;9^ z#S7GSHF^6BdKWw>T&Tsf03d)jvqRABVXr3{y>l4YKaV5E2m#T!zn(*_VAk+!tGa3h zQs!PE4#ky>C=U|0R`x9z300W(E-d>Tm<&6hckQagIo5?O2ulVX)%?C}2S%*Y(G)`+ zudo3z5Ii@u-P|z{xb<e!@M3q=10Fw<R9mmm?1Kt2=5MO{cR4>RcQ{@>GW`8dz4{cj z&Wrgb`(@?ru<@Y6^s<Iy_qW3=Tf$c+R9!()cFcb4y;;D;5K~<4hf7-rn$+w{ukc69 zssy@@I4Qd&+AP(k=GT@*+8jz2lg#u`=ex<MfKfaCOJV~s-Lr?bWr}ZhYxkv;GjY_& zjzrN@Ht^`rsq7m2mM-f!T*JV!dk^5C`zNX+&W6A;;GW$*QLqrkRpEC}&OSv-)b}t# z1+V~A0IzM-q7@y^`SrD`o7~RtNwYgfMhS#yo`WAyS!fLT=HYMJaw?W>g7<=goWQP8 z6`IYr@{B?Jd@Cwp^}{L(i>E9zzq6ZxyP<k@iTq;7Gx*Q%_)8Dv>6pKVkHOQ~*+Rat zcRdd?G{xN)uzUX13gHun#D$yQOf~bEs?5`m&E(<?4Dsc%7CLs@nR~U4J8L<S<!tOD z9cq1tlgCBQ+6kgE0*zpsS}rT08B`*)ic<++LhMs}U1Ut7xSI!LV@yopQ|&eaNhq^t z?lwjRB}Ivb{Dwy~tI`%%O&2ceF3YuTwx;(Ao)oCFDD+<p(Izg5Rs+D*`&c@8Wo$<q zW4}`6-KM1VvB76WX!x0pGu-CwUTQV_cB~RBeEKCfe`JW=qI58gU16^{KDf1ha{Fz# zL*5Ft{mWqG^EtCyu~YUc+p1eOs0;GUEw8GsiankCx}r~>7A;Ox>5V;RncFb#^lo7k z)oyiO&L*8;mzx*Rl_uS8a|ui>&=s{w?|2&{o{N;&PEN@S;@P4-6>6VV_m*#{mu6Vc zy5CUcwIL-+a{@Oho1-APkdv0+Dn@ogBisyo(TM$zQ}arD=Xx*UG?)Xb9^GCzZdn{^ z)j?^#Gntf@u<Y@XOq1r}z<CHM;S7jWRlM&_8-cz1whxo*Z>S)(gwmu-b;N1TdmccD zgvd5nhq7DcPOX|)+PpB<Z6Xys%1+$IZ>^qzKyh$M1}=Hr_>n@UvP8Z1{?b^-iw`*R zyt%C|v5fjBAD%l|6?EySRCa<U+sL`xjPD3WX~#44!T^9e6(P9juMjy<%Yn;cc_sNu zROb-}qtdXO)zMJmPg|-$4lWf+)GxkYHhVQ+8<K5aFQjqf<rjQj08~S$T;C2JFdOk= ztH%H>%|2$cG-Qfl?+6EVLY{|<pu~g1ve;9TM;9|CvWDsXC;#gQjP-ZVCvlL|k<{cB z@cuprfm?I4>|n6qv$CZ|J3k=|FvRLH^%u)~@;7&<qDW-M&Yql02cBO-MKpklpr!^7 zy()N6w1ynVH7I;b<DRH@Q=#GnwuyPc*6o2kxVEieq<z7Rx<EW+hO6rpfk6K)_HkK? z=zy+jfX+DpAW2GO&J7)_dQ@zW_;ohmx-z{{`%(WYU+k7x`y1?wj}9x%tg7mXC=3Mi zOmE!#vcIcud;cu^!O{|iTc^^B@(p8n3-`R^?K}lz+~ReLW7{iv<jWGPt`h!9SBm~- z&=jx){VaGFNHfy95yaB0FPr6RNH{yiiZkTZKsc#$5D!LCibR~S@85RzW)n|itRmQ0 zg5qq;C8I0c>^8SQ4e3{#N|z3>cec%j2LEV)<=%$c2HRlEnE;Z?1jwryXv_e-dwUQZ zJVEBVVe7mMi)JmCI$~+98Ok0W9u6ZT9O3O@+(p8#LSc6+X9k8cRFI`-3b{P)2w*Kr zEeK49?Kd_oP%Ccz4zS@-fYEad7)5sIScw6teXU`b+`?Clp{0@7aPSi-OXJ<=^mbkf zAq{Dcg0Z)Ahmx)jjShzxfSG3En#FD(j}~pg>>*!M5fl9Kc#L?>VdoW~R$Kpem0Q-q zbXFj(e<M%`Uoh}k(BuY2O7mng7anGLc>@TL0_#8$Pwz(FGk8a2RQROD>i$pynaT%% z!_yHSp9@@hYb&;9iv};B^JgnL+$wX<)M%!+@=53!1B%)Z@r%&Y!><pv%3Lxv@*KjC zQ$0FwK0oWo87_On)JXM8gvJ>Igu|VPg(+_7bEa3bo#y@74lB5;=jG|{;_M)u)VXaL z8i!P|NpD3~j30A<KVfFnRGBrpv_Dc_QqUT)tnk&WU{T+4iSOwrxbWkvF%c(ClyC!= z&mr49bEs)fx;W8+@r;8QLE^w$;rvh#VZ+TZt}XZoCnHumIKQx7Nc=jDB^IE^=l;1< zXsdlfb9g~)^UQoe7>3y(Y^#UKU~Z*-T+0`&7vWqt`jz4zUwN_Qf4eTD>}u8>d%Zhj z-$ZLg{a1SxtzR_g9@jX>#w(gG7RVYf3jWXDz<q7F^-DsHD66P_Tr*-kKi-fN`pvs{ z5Ow>LQQB<&mWWcP3R^@HvDtk1KD9dVrgE?B&`H;OO=lf&4H5^?XG+b5k_r1MRdo+v zkEG~NY1`PPA&2x^lMmaVEzh$}E$rG%<P~GJs)}$kQCg4;X(y>ulVi!xzkn||t6cqI z+|4bYa5Aka+*x%gzNXwuZ|*CgmNW|&rx%J;^xV==hPn}j05V_TkC8;nYe0D+7D$cF zB5m?Ov~*0C@EB96ML`PHV_+D)pkGGCOECSdvhdwD)Tfk#)QW>d5G*fVg@WadvE_xo z43_EU{8CkoOZa}N@)1sSNzpmb{`}s~nCV;{s7)9YP@`(~qMEvnnRRy-?Ytj}hEK%i z4{f^l-ri)$V<IK`<x(uxaS%i9!Dp;k;)2iJtcw1UR(388F?dvV22Ol|og1#jth$uC z8+~CPEGZ?wq#~W3>$zdrWM}wrY<W_tt67w(@Pymw=W5nvW5GgjSw!F{o|&0>kdoh9 zc1GK<(@hj>=e?j@)RHL;!ur_BTS2!L+O^0`Uj^3?$xcCI$L8d+V4$PV)^i(spEX-2 zS|8`jU-YO2NPc6j<@sFt9%MD0oETg_9t=C86}5wzVFNvaK~eMjho>%XcovbLd6{SC z+Iy)lRp2g(9kVW}d0V+E?T}RS(Dx8hpzLAI=Y+G%VcWP}a%b%pXbRTc&(CIq8+O&S zg*81~-%$-ez0>qm{qgQOH@PrQZkPAUID^U~-U$5kkeSgpN%q40$_#O5Z<>vQq{n_t zXxUEjEfI>!obb8lZ_ID2BZ+zWbCWz>23o7qg)-&^F1wGE;w#~jr5&WxRCe^`p3JVr zhU>zxsHLuT+O|Dhm-=&0CUevKGs|7uxW-e=V>*<excr-+3Vf*U#0cKKz}?cSoZx5L z?;8-l-hV*J<h*LAEcm|)yWwdA{ly$MqV6S5@j%vgitOFa;U8Q8O5&~hniX)lu6_}! zTRAInK__op?L^Es50(1Q;8&ZhC=+bixU!OxqUi|6Lf?tl9?~$nVexsJ>BJB^oNELx zC<8|r&3?`yH|)TW<~?eNu6AEZf(v%x2zwjDYsfBIPG?MnA8mp7bfE;jpTS6VN)DX% zkAC2^2OHk~wEmb$6&u#Jm;mN?JMT80?e~`er9{+=72HMP=$9+I?h?$N9<*RQ)g(AH z->1R$>u&zV5_IjEF0@JuNfvOsS%#vdIgs1Xb=*jr|L%gJ$iZi1;yzz}r@|--S$8m! z*nPt(s_5~@uvm0~uIlo{mD%TF_yhQ~Lld3(v>^BCfQg8@&$}3V&Umf!A|!Lu`#_W^ zm8*;_rQ`KrXqIz5xS7J>DF_<~l(T*E{B|FBGE71Y6;7;7e=+mfc|*h}thD3FNGwvJ z#Ryn+gaX0&f(}`w1yow*{<jYZfZ?RGqI>izx4R65YMC~HhWC7{N_}VMLUt7wKB+fp zCKqF{oqEEg;>p&mhGX^fH%3&x;=pq&UK^|kY{JG^Bi@H45_(!+h8wtDJg!?p>#{&1 zk@@$M<Co)VKaMm-M>ZH%KjUt@YC{aG`k-(N*eD*e@2{{OyHUNs6x$~e;kiK$Npp_? zCRfjRr0P(o;hhh^3MVS6qtri4q;d1sxT!RXXoTEhrLXnNC*?iqwtIL}kmgTyzRF(7 zggRI4m|ShW3np6)SNgf0vdW^iRro}$-?A0r$k5xd5P;mp2!M?H^j<i`<bZmK^ui9} zYKYkB-2u5q0?0LT%YT#Gypl&5_Db2z1TlnV`3%`yhg#xpAc@qN0rpVgymlp5rMvFz z2i`><kLea)4q(uw5Z))&rT^)D0mgdm_y|dJ2l0<3>DwsJ0=q`JcLlhD|G-(lXzqTn zo|UtPRib2%`-I-^x$)OuB@XKq9Fax5D|?)Lf^qUAS9MXI5Ow$*irhSha@+hW`6lBe zp0mEVNE+^(ipP!?TEUTxnui~NzgzlaaQ25v2Ta$i2`;pJ>hr=f0C&npPpAR-cZ%cE zVqRLY6-KiCB%VW7nLLzC+mp~UJ@WX}am7zP=RH+#ygt&qj!=h~3WYbVj%_2a%zhDg z!H3buUB4mBEr}s(`WKc-tiHA6c*^4Q?#5VTzR@i~;|fh3Mv!kx1c;|Ba23y=1b#7( zt;ONf<xCDuvLgq0Qvo2t`1Em9jO}JO*$3%KVNhXxx4C`|d440-_a+>*dG|c%l)uSA zF+(5Fv5-#rc}!dhOX(S?M4O#$YcmUd&T$cmm*?)4*~7%-(Td4mjCULhxs`Q+b2D4W ztuYk)d~HVA*{nNnBpxKMmfbPx?1L{8zqFyqPZL9Fk-hO|3FPbH5xw!NA2@Z8Lot^S zIZ`^e2b`{Vbz9k_S08CHJ4)Wfft*r~+34{hDd($nS<aml`4dRT=SPd{ABC%hv{M8w z#(3ZIVD<O7&8e8cUMTL_t5RF4iVIC$&<~ht_&SasFXo9vm|3^l-*%bByGhxBk2i7e zH_3tX5e)>ieDgdKX}Kn*b9q(>L%z}QYOc$nN9`7$rzlvcAkDiTh|ycGx%^zM%3G=h zkO0m}aDG$}yxj#H-o9iVsQ<c|&h=usxyIz8cVwYoq4PhWo@?E1uGb4S*jcicqM$^e z-k$UY&1+l6Jl&V^m(sDQTngE3;kxJziZhklvL`k5O!#LUHZjI&`35O3VYir$bWsA| zl+NuANh!-yriEHnwTJwjULwMlb4yP2=MEN5Jj%l;_?msQ^*H~!)Hz_j-c2i6img4X z-C2s69BiK7bMy!^xuojCmHU#nXd+n4F-fz2%QkAX1xp^tBIb)^LIzp#q!iw<95d7{ zxWJFFyfHh%jxoq&Lf}0^hy??i3#UJ`h6uEO74T{`JwA5-M|Gy{+;e|uzrfOkp1Q;4 z0mo+;MqYGb4&T`5j^y{Zb}BruzV`Nx`iJlKWY#<mRbebYqIxu?QzPiKRLbQS4<Fh4 znN`wk4rgJ9Ucin-UcJn^4OaCIS7JT9>^T`RK>_TQi?GpZJSehs=@^qDKSJqt*-F+k z-6X@u3k$Ux5{+T(y%`U87ZT(^<%O~PC@E}+h}Ltcj&@jeMAvqO2-oxT+KHUEL)oa9 z-LJdSu;3ADoJOoiC3gKk_TB?3s%>i*L{SkD5kWu^5G5%|lpr9WWF#Xw6bh2lA&C@8 z1w=9uC0pcN<Qx<Ul5>$kas~-SC{nLo96jgW|Gj%(ztR1=`}G}zF&L}juDRFx)|}t` z=3FP@h^PMF(LgxG@%(Ux?eHv;3#Bds`ey#9QxF<EINGUUmw&YGVP3sAo8L(7B&zyh zl9CuKiQ|GNr-4@F;rz@AVc1Fb6Ovv1ch*TO;1r?A{#_~*+0!4s)-Rh0Z@E9S_VN5Y z`}?K+djMpoBfgdSFapur>sc6=CL|F0K;S5lx`L9{PSbg}GA^&3=JI|e{PEvLj-ijW znV`(V6YVqsSI3byIQw6tQGfaGzF?=lOl}&h19P}S-u!zM2aQ4u%?v=&z+WrQAy4jm zh+$dF1rVXZb9Wmlq;MXJD(G}jIgD6K3D<#tip78mo?hb%h<!C=av$sfgCKk}nDXb5 zJ35^3q9OBFoG-!4%r4g4umW@z*|3d}<7hu0D%3S9n6&Pf>I)wSh>g^?_2rc=V?|&k zt_RSqg_$v&`b^{Y>wY8SATX4APeiji{E0eqGzurT@u%nto9$uR>jwlzIq}|U%ol|r zRm<{)baa1Z;q5cqi%ok2`hiUvMzLWBQjA*9Qsu(%s9)d2Uk06MRRbPQo?lp7TMK4H zY?gn0!tU1g`=&wA1~wbPFF*U=La28+bo+0-Vzk#09~KASr5;^32C~o@Bre1aKaT|w zm*NQ+aH)bksG_{N8IT}iO-cL@hQ*GSAT$5%7UYhZ{T?~ZfE>?MMB`|k=f>v&*tI&( zzecXm$Y{V4AN->qI6BNC0i!$gkS^3^B1Yl1?D0lK&37xe{o(13%$)KJmWt(k8_>AY zCkG8B-SBSw@#RPM?^wG_oU%!9e>vo!0?O5_gc{{)4K+n|%S#2n19}>40`BBKG`lWK zUBKq!j!}U^;HCjd6CKXhREPF>pn$E5&~~4#3&=Jjae)E~_>|vI9@YiI7wW$YU)m<d z+>Q?uPVw6dE^xi5Jp*E8_yz$?+ZAL&XBq{wBma4u!M*54g}pORO#WO~Sb;6#&7Z64 zM>=$`KsI#g3%H3uW4CJtG@ID)5oqb)Y@0b=r3z!BD>KC8`43w50TMfs6h%mAe{W}L zpsMrKQz#0P(*EAS{GMy6ibC1K;0k&EUwO_+;fX9gjVt6nP|_1S&;*0O5}kQ+AEZjO z4ZMKuSs6|}e=w6%HhaD6SXmdE^fs!-z)^BP1}zVd)mK656Iy&6bl}NC5U>~>y$%)v z=6_}(0NV6570^^X+AI|RbA9Bq=WqX=M{0i0fA8K+c>#3jBao!KZ@;MAb>@xs5oF{O zV8YIE2$mjeeZiynHKV)#+~To9P?1xATK?-ZH^K~|u^$qT4z|GiX!Z*YQGi<dB@ivX zTj!a7%~2irX`clP<^I8CTRs&o0tub@AnqKi0{E?(`|EWIyqs9E*AiAR{Y$lIXp&%7 zAwlD!Y`10)8cK&B9UWz9y+0Ve@+^NK>iS#jmNUCYl?HYe<C022#l*$hI7<=XT{AYf z@o{Xw4k*#KhH2G?x5$EB=B$2;XRh1u{qkZfx>L`G&kx@Pez?Vi*^=Qb=C6PIvvxW1 zr@s^{MiJaR_4%5HCC|P74nhOzvmE_a_*#vlq}W;9*rZwW^~ToX6<ViUN?<<n*#EKl zn(H`!f)Y1hFCyO--#mQne&&rU9N<Wxi{^uqAO1@zp2lc(8mxN;Q})2ppjeGDhs)&6 z(P>qWCWT)aa;)BDBZX4)lfv9Ejx3F}`p>4!A*Dh7YAhg6&yqhebA|kZ(bbmVQib1x z9x#w8e_=pEeqoBV$H!h+rhMiu6fv1_;N!F;-^jj0c?wKLpP>H<O#UC3iazHf5)!Zc z_^hT}`NY$<lllBJ<=dCwV)c~D5Amwr-4o-P#Pys1@PHY-f+1o4+?nLW+wEC^$c+4O zf#VA!>ANx$dS@n}f`c&j#ClMU=LCZPJ`EK!6y(Rwd?1*S?S)ZW)AAQouH9q{<xzBU ztn*xM)f@Rr{T$LUcoPi1uFo~BBL8K@ysUM6;DSU*Ycs{Dut-k|{~pMI0ms7oFj;LT zzh^ScD145E@XTe1hOP&~xCooV6!SCc&oFm{p`GhQ<avUKgMk84Pq3QLam+f9bwav) zaJvs6$HgdTt+5&oO|?n;o2Q<yxAt8B^Wm22?|-@;zjT?}J^@d`k5ybhceVWq@}`WU zKM?X<wNjY4v2~%AbQCCz6Moq$f%0-_K)}NSfP@CO?$!Zc{QPW6*iQhHSl|53zko@x zbYTHUlE2w%quTv1$n>?wb9%#(Hq=bV_Hyd#w<t91w-xgn80&6P!q}`4f2iiMcoWqB z8gQ_JK@z1Zw>1KIb=m5SbxB$|`656^PX;E8c5_!$KJjzeh1Bzql}_}8K%p5ZWNRR_ zO?MV6FLVP^4`4DN?gR|(I%Kps5ESh%mI;FWrT^`jH}wzX&0d~7%nr1|Ah!9tR`?Fz z-BW*`WL!Xd_Iv)>-4^`v;g_v^EFUZI@lCc~cnAsTF9Quc?WbtfTCdZ8LgByI<*z1R zKu^oQ`O8-SyuB=+YWTH0FPfp8ep|8Sdi-Ty^Vel{p0yhF`E+cgzXye25Mrr52%dRZ zU#J&*ImEK88KTHFWln#wxg%lLEdGWoIsO)8rIYdl8IZU*Y7ILa2m#9%R3jW^pOD@s z4stvcNkV%><{SphSr{JJqJIULvzY2--z)(-YSGhQZe8_OC&#P0RhvAY1~!SmCRyKy zzs<icQ2%oKm#vt}Pd!=qy>Nvu{>1luZmEe+a{(mmpq==99LDVLVWK_YssAd@=ndgH z^|!5fjsI^8m%<?zkK)(z{C^9`eF*zsV7SLWYjtt|_nL8DWwvuZ?K^-zx(y{es!s`M z-?nwpT?e4I!JhG_)1q|SM&QPl&&5xZi6Dwn<1GAo7VH!hDx4x<5sOf2-vc{^q8QgS zu3y?~_X~5M)h?%`iG!VDlJIVfJM77)1j-2#EEKkVlM(F#;n!6vYs0f=<R1`U)%)@U zDSVG7+XLFDbLD>agBq$o>nuFs8w?;)`Xze<8aQi2rT0+FZMK(2WK);6arFPMbPmfx z6S)j-e*wNV@&8S}HSvU!oiZSGe0+G){<s7``@+Yx?g{d@#pXdR6)|L&8(Ynyq@!;> z+u7AcUj3t!nM9EmNbs>nB077(g>?<j$RBcbg2JH|T|7u>_=OKE#K(#}?>@b{*c6TP zm#xBgfFu3eU-9D~!1a65r^;YWONpdFW$pZSvBS9pX~_nE+ISOq7Wf!QX*2yEn1BJp zXl_1u#@ffEo{yGc)FzAyQvH8A^JYdV02S(wWA;=?OcF#Of7ZES_fzKmJjOd8pzZZg zOXvt}zCf9NvXg*-1f=Q))H={oIO>&`0QSW>YJ!OeJ?t__uHl5OocdF*Am$<6rHBtK zad+%<E${qQk2@K}cvT61&93!R;=gTWhx@L(i`YmN%qtmDPl_KT7ru@ZUJ)eyc@iUD zeuRd6YJh+zVaxv+-|jily>lvBk#(Ntm3rz0W4^zvsE#_3TGF$Tw%-k>w?;s^OY9&8 z3_jU?Yi3|0ZMc(ib;;wCU5m;qh~(6}f)g&ytND!kG)U)=(n3}`DV8|dPnR3xl5S#a zC#(*4A(K_1PIeMtG(Z{Z>k9NU0`G(m)V;l)HSvdR2_81keYx@vs$ya`F$sELiQkhf zP5kfk&$14W;<v532+u#2kciO$p4@$~E&+9W#<u6_uELiSO7Zc}UR_)Z$j!6I&cG~C zZSq$s2_mi%|8IV<<M@-m7H)m1yTF&<vD*tkcl@@Z#uSO(M?&_9QUyq`3c|f#gHO<) zn~*sg(kp*b&H4w$syf?@vFzaa+?1_n9*~tz%B3JyBEBr2#tB-!pn9t2Pt}0t11yCB zj0VNRE@*AwxYREJLE2<wD%bs!ha+4*7X6bDo|GyK=kJs3I;h0?J^#vyX`YMzvXvOm zO(v>e3s?CA5cytim1Uj)@!1K{1jT2CU{!CN&=vmyxnH*W7a(`@^#t<N|7M2E>;7Lb z<CNm>8Mabf6Mz@Gxx;h89@|38_y3<YOZZ=N!2ggnyhVad28fZlPtyKM692;s{z@H- zo`&@CXgVA}CR{O*|C)mR``h0dpTTmQe(!4r-to?>uvnS8|F=K(_oI$iuvao86_@|} zJAXg<59!{=dEmoAXa?dZb%Qj*|B?&-`-Pl3KMkY>P{iP@UJ+6Igxvw(_`m(Be?4j( z`3749Z_qk&{@<8y1RtU?{pn79u2ARv*Csi2zVPwMm5_Z2Unc{iLB*>>Xa3FS*Ph3^ zezl+U&i<QMHcMjbIe7p>l15|k?yq0-Pl@sq<7k}Rp4Nl`S~uXGdYu=0@b7Lv)oCaR zPfJbvUql7}_+6c4*t;_Z?vAZW%FI99xqo~mxRkB?Z?P<3#Wel|)XPAM=U?CZc`58w zAmW@w=Q;m7iSR!^K}Q%e$iiKGoC;B!@>Bo9e2t>K3BR-eK<^bud>$K{OH*IC1h@AN zvcvtCGwf{~9oEZSY?APh``62&lOAiDoM4<>X}VO(e`6YoU#3BT2;=`D)BMLA|Fo$8 zGduoa*8ayF|1rlut&qQA{C{T0e`d%3_h!c+?dWT85J55$Dc=xCGhSGai;KH40wfqf z2W<fK4k6$ezE4iOps44246p6Wjp-(-*fuub>@r&V3fe+s##c~V$4o%R5(ExXZ0eR~ zw^(he^&|+nul#M|n-@>jxSpA%WRs<FG7`h~2uQB;m-Abi@3*k%FLnXp>unMSnIMok zY~5!mj`R#0`TV{5eSnKktDcrkU1S@<iW#Q8HBNxvF+4)ob+0wwj8M2yu&U$aBboA% z;dvc;TKAJ?XFax64mW_-E9k&zvd+87Eq|5=eO><=_|(~eh~@X4)zt?ZEgJ{mP`L}t zSvM2K{Y}%!5&F8wy)!Gwc1ru|;3C!YeVHF0LmxQYjjLE2Eo|56@T6apkEbna?g81L z=p}=F@Z;#s40SRW4$j9vpBib!0NGv$(4RGf!)2m!+*NSVE#-pGhE>^|h4oEo^%dbe z31Ys}K(qREOVcDdOh!q)!O=H6otU1h*tk=UTzKxArdNG&EO*!pjOw<XuG|hcrB1nA zCx;m-OQY$LX>;hE-P!!}^PQI<$$yahV*zc0`52Hbuk@m`qZZL-iaVFxst<U1q(p_& z({M7+0GFy_Jc?$|(x4fWg2DHgGg|5BY*zjFdhWnt$8h2ywMk)Xl?!MfOqg7}Tz*WN zp_Yi!Y!LLd(B`WTqfQVpUQSTVWWBCw?wd%8Oi?HXuQLJsE47w%6Zkcnz#AqQ{6ow4 z+(a^)$u&M26hCY6N?|(7&K2^zzE@&<0-($r4-k0VP%$xKdfVwDt|yNW{k9_9-&Pk> z8>z{XZ8rOAwjHq+Sqvt{f>ors@3Q{9Q;IW7vB9K?iS&H=8>=)H<!=_*Q*y7Hq%}3i z9{5`DTWnPFY#qi4xmBmh!51_tRNG5Es*S4hRZD($8Yy-tXO&L++&3S{4X3`=;$)a- zk<LM1cE>J0Lx&o%rh(iYQ9inSgvj$34-6IK_qC9so(PX3zMlDs$13j8-gJmmJK<q< zWmsP0qy%d*t9>OMkLRPEMH<dVcZ{Y$BbQ#?dE2FH4&kDPRPtNe$hhcETM<+xWB7WV zo|)_Ar#2$<r6Cfwtoq(q6NeFBA!(kXeA+UC(p##}R$C%GajfGmVI6DwwFa(!?c30a zq&5#>$gV_*7Ok-jvO(AV6|X{V+>7M8&Upt*y2n=z#}|^NETIYu4ab?V2TpLH4rxaB z>#`q%`s^!Ov7++P+_HkZUy0Z_5XA$As@gX0oz-`D;*SsJY(OO;Vb^1xgjeG(JD<O8 zm47G$y6Kst{WTgE5yl=+vTl{1n_kUQOfL~LSgE?7@%F=-^BjLutuqjwe+1|K@fNV@ zoIlzwskz#x!()q9+CJW|Ic8qUE*T5jXDyDr8Zq*vyMN7P&1nN13W-|z$e_Us4kmu! zM9H^p@`P--)koU$`2zIvyP)o8@P}=dPLFKx;m)`&D7?sSjRT8YGpL@sU^1A}V+(C0 zw68H4SinX#%ro-GxA%t7>Wl8n$v+<L?gz>xS=YT5T_4Mgq=;&~ik0GM^UC#xNSz`- zm*3w5Y5{4<wf}gs@$o5qVZ=B!_Ej)gll*C^&?iwUJK|9+G|Yo@Y#7Y4^4{NY{`pn9 za3Db~arM2Q%R&{|@TD)5BXulP-S653cC^dDsd_WufMr6>#03{JLe}E1u}hb~u@t+3 zi<n-_L{i`9>E=RWJY;!BISV4lilK|(|Nf(a(kc`jD5X7y&T(jh^j4xR;64bo&>a2r zqP;#(-MBxtQ+=~0>#QbN{1$jGEQfkK^O#ttcWRESz>g-BdN=lsNa)ddcY~OcfpaQj zr^Gd`YdftJH92+8^8uOh0}_4B*>Biu?G+s*zyR@3Ox7tm!M*A7o%tIo{T4uJg#o2p zW49qm(SxNtzfI`MI6jDD`>c`5p1Y89>oQ*;EgR`t9)4`&Wpba?Cz+cRlfru@dXZq* z9Oz^rg%EtQcAJe<!s~K8Sn-$k3zdE4fs#Rj;N+kCqEf+jJPVx5)Z+U<#F$y0zkF)x z^?W-?t>CK_Y5jV>@5zQI=SiPEBh#7`UI!9jQmF6<0YKxDHG(B!yT-_*lZ7owNZFy4 z1AJw^K8=mnYKO}Vv#wMyb(~$dl)W^lmu8q|s}z8OSZ)x+DjdbFD9sDr&PzR@`Pgay zfFt!_u%y7y(qQ!lCeB2jwRkV&PD)*;;Osi93IGv-k^wT2yT_U=PK&K!n=>@`SB<;F zK&jSJ<kcl!aCrEm{B)gpClvFP-26T`TFSg^I#@b*Z7&lE)|IZ{&$mQ$-iUlQ2tnF1 zO0wKaw${ONN`(p!+>I(ZPxbevKMPsgLwn5><OJ=ouzu5vR<U9{5HO3sOY|quEY98X zbu*2=I-ItXrBPTg@TwMc3u?$xuLoa#O9+&ui!~lEN^cTY?vJir!mPh`wsfJ-k8?7} z>8PA_NUPp@R1`;ho&S}2N}V6SKe0vwiER0P5z>Wqy@uv+Uc$Y7OS6H**CJ(}>Uj{? z>Q7dKN5mrS7mD@?lMO7v{gChsj{X(M$I+hP&1yp%&v=Zv@qE#UO$+_CdT?gp!u0W4 z?zc-K!8mcY?YtYH3Y5;RC+RLcy+;zs?mR&t%k!jgq(@#zfCGruV~i&s%brPlOE)SC zWMG)*;<mmP-s|VM+PeFpOR@nF)7STyL^|zUb8%PE^RMq-lBh9uo7Obn&7`|-e1%We z=VxSxvpDc7;zum=2p5gL{f8DZfu30i?#Y1DODFcguvKzZk&tuGu)Oqmpiz*)4Cu3N zvVw0R#)H0PDo_Z<>Ev9c`=m3Ep85O>Xg_~K#hUjq8Cjl(pnL{5xlbfZm*Fjj)=<^q z#Mdua|9*d4!(7^rC(Q)mlI^M+bu|kg&NJ}by_^Ay2)$ibC^aycHMe7}cA?{gBp%F& zeB^yGPRUpp&E9v3m!tOm7DHMs14enQ9Fw0@JhzK5u^Oi7$-%rC3?KUTl1(=TJ6yT< z`eF<t43-N9&e<2@`fcGF#<~OHsXHMF&ilo_v<ifN{FqhV3Qpx$*^6CI2%LTuu`A`! zpZY8&;%o5-9{-nnzS#^9djdDMy7$stZ~pxGjfiMlCS=SizlmYjgS!yrn6i3jp6@g4 z^kV_zRBsfzn<&JNO*5AB5#5KE*XCG@E$k|kOWp^FnIxjA9)gqALXIh;a60d|Yne-* z%?DMS#tN~d31d+jL~t$wLoEnExXX3QwT^cig&6R4!>p>#yumElkAp(S5Z?6Fl7*<p zLXRcgE{lcC)~x$m)iH+34VDt-L(2d9zIWYXED&H=$5FIAO3~1UWOGfhht{+eax0Jn zGU&)t{w==|0Ef_OAH9aNa6xG&IQ3@+9B+Dyt@oV_Lhx;=0>K}+R(ZQ;CWYTBXx$@# zoDj`7W|j0WkMAfW#Z|llT;MhJsDVDEXs`LtRNsAcra6er)Yg>TExSuuAWwuD=zj#K zvaSm^CKTS76xI-3aU<&b3~CZUtu&7_kPt0ru1QV_mv3iB-~dO&$+-f(3OOWez#%~y zeeTB?3>wjGhpzR!(BQEpyQ90UshMdut2)~rzSF7~Efl8rv~VkL)GD22Ewa9tLTRsG zZ}6E>PK?lTkhMfvJbW=dGR%k`r?AoppzHgv-kV#8D64a5tvRSVV8J`CALYRX4_8C- zR8A1u47~8_6CjFwHM$W8W}^>xfkwFCm|c(T2H4&C?mUZMPX>h?KPzMpkKxsl9m+fv z!ea$nuD%wA64I8J^X2>40y}qP6v0~qxYHbI4~jl#4TvW;vkYmNyYs2pBxb35wy(JD zexqR+_gg9x7tqf(Qs=~vf`KhOavA6tWt~jc6Ul~y6Wh#TC|l&5j~xF>VO`@Q&ml9i zGQSek?l-xC15~TyF}<mxJ57{2;dym>(Sv1|?&bP1M%|Mo>4xfCq&kG#Ez@HS9_0<Z z!Wm1EZN2WWWmui;muiF3K)kXwQ=bJ};A>GPUf;*qT&)Hv|MVJ=-d#rU6-GwcEmMx~ zis$DJm?5iP_Q>+c!XekBN#1oMWZErN>JXgL&bwCwoQvu4OMLU6>0ZRcFqt>upH;|j z|7zG_Z(>Ykni~C~kASR7m**;a4a0mv%REnPqejGnpY-r~0jo<NezfbO1cHz5M1tz7 zS{6k~F~A*X;9D$eVXOF#(y|)8+=6sPGw<z>AG3jnvYatJ@!^Vz;`B97(<yy3tc$?D zCD)JWt6tQb&MIiXzU&HGq1x%C@|o7w&qU}7mg$mMFHUL^y{7@1>ZTeEbABCMX<c+x zm&aKUxJU{r6u=-{F|&{uTxNAqA+&qD3p|Bpt#OR1<C@cWw4H>@+W<yBlodE;FCP>S zO_E#`)^dJl=`-)Ps1r4+8#11TL?tEobEmTaHyzbEqZFly$=JL~*qVOaTNdg%pDtxz zb9}hQSaTzR(ktpsW|skkfyrmgj6;)=QOc4$En(<Jp`&#=iqz|A0VU(EPFD)e!bwpO z3=)pAW~aAbQz4j%K1YpG*Y|%(t?8n%mC>((1vpl9{cpl{uNRUdra^2c!`*Bz7Y{?= z<3Is`zYc41nP+zUg#AI+USPZXRuu4;=Or=&K^b9?qia>W=76TTG(Kt|4Y)p!UZfpM zAwjbypt!H2d!1_gEH-g5IeK&vX@9Z*jCNE^3AkziSq-b<-H%?fWLT8C<|YX}{%m%x z3N&}Yx<z*o*C`FUe)v6Tmvqe)X`~<3&xM8W<<_Hy0`do!VkAlY7u}ZdaN%5_tBh1F z*BuYnx^-`PXT6{99EU37T9##=_QHd8tZ4$+!nt>%3tgu9vmE7tNlV7E#y}p}E`oJ+ zd=lS=4=p}=U#j35rH(4T-tq{{^Tc}3j7Gthhmkad@xd%EAZ;&k`^4+P&BXdZc%a)0 z75Sn{{O9KPt3tqlJ9X+%)D)9iu&X3ums`iSi2jm*s4sr4xz}&}0^pR}k%_l~H^Br+ ze$CZ1*9#y-+n4j$buSe6CpZLtUl>%}S?6gJihyaSDV}~jDa`wBEg=C)@~i@`-1p_$ zV9v{x2X`sj>FOOHu`C(t$?chSE=HAwl@-hg6b#JDCx5z<?P5Nsbr*72Sl=thXtG$V z&NlCvKELL$<(TEL;Lx_<5DRB`+;OhA0zx!y-COlxhK@CBRXZ@=oe|rR29x}<tr25% zpv*#91UTls>IEJa`5x-+p-6`$4g+*M_!b8v79UiXuVt>&3oMoPscJRlRICo=zQrOY z`$s)#g3(md2ruZ8$fTK%hlF>v^eEAq#$D|IQ2q6!FZ!z-fc+-iX|+rOrES|rw-D*7 zmD7<Hw+@!!Q79*$4#|}5H_nTWt3^p#R#hr&)w`3^jZe9B#W5leAt!nUwD_pMQe9g7 zszqHdk8sI=H(QfR9yF@LOh?KiL7!+S5Yv*&f02EG%Hew+aYK*ZRk&)}s1;L@EW%bR zGdsCvU{?Cid{|^fSi=)`o-F}I>!`P?M2V(kON&eV<9l)&OXv8PbKT8r4!1V~-3~;c zsH1tv3>nKJoPh+WAp?a&^dT<=oDmU*O#MxppE&e`&zy%V9JfB`kRf9)|EP2*jjyI- zAEpf|YVsE|GMj0=Zs_H&*dbW7SAW&tcz$NE%c$;_U0;+<1Cpy|VDs2dRlpaNbIlVD zNm-aqcoo9kR+o*5`J)zJ>hx`2i`1pgr@B3|Rsvhulw*8lnGrY&@m58SJ<(%ynOXTy zgX@8sVQAX8yll6g-Ie1>`r6xSA_&evfVTBxfp016HmIg}ZrE@CHOFhi&Q_Zw78~pv ziadovG?$%GMhx>COeU%B5$MrG_o;_2e~|=KAaH+rovezBg$Uls*4ddZHCgdguRvwW z(Hp&aHF3Hqw*qVg77z}Fg1xUWTMPLhxFg(_;kj;4n?vcfFaYad*Me3^6R{CDdm%Dv zOP;G!Iz++jR>M}tkxCeV<jn5z@%V#u)XD1%8Tr556cAM#?FA?zg6=N!hwYw;-lgSB zI!Y{_29I6yH9rs;G}UuDyeZya7UhwH$vAp0LZmZ){Th`ycvUebXXwnEs9pKNr6^UB zIW@+|a&B#T+;><6X|=tA^3sYq58p@$z3k@g#wB{Bz;o)RAZ@@o_)p~>SJTEscv0W# zc%GbbmJ}a(R&iPcPA=SS&NhBudxM~QA(<v<f#@-44(9r^|HeB0#M+ZoEo_w!pU#R+ z$#{No8#7zd`Z=9wP-7r$-Xi-Dv}NbJorGLz@U#n5n0nPVDLiz^e>h#2ps3G@Z?Bt9 zGkc3`tu%;%rQbdQreTeM7sqD3Ew1W{Q>v;4wF`;G^^8f@wEn#FQHk(T3m~}ia|yS; ze<^bEX<H)FL|d|`i>}&#QaC)1C|<$wT(=d|;$Cy*l<=+xW?Z4yrpqe2+bZ~ay{DZs zrdh38SUb%V!D2_$Ir**Vn*TP=IzC$LLKiLPD+HJNb{yP=MG1y5?<wsB2la-mEoUG( z*^;I{x-viaCqS29>az_u%>iG<7d{W1Jp|dgBZd+WKe3{c5)$%SMwUD8#c*{J7b>3d zQ}>0Ga<kR(A=Z5r*x8iXPd#rfRY2~0I7<{yN)tfhSTP{B=|ePB;;V08%g$r0W;V$Q zpQ+e<r7ssFrl~}*R8nAqPit#bZDw|~tkpopnjU-Nh;gswm44q4?$Dfv-xiSg%A>r; z)Vo;vOlKdotg$Tv$FGOjrmVeg<Ue;@S5|T0oD=sEWqm+s_1fKe_CfqLrQ8PgEr}uk zck+Yg1#Q7K>x4$z`^0>!^Mi_`&$^@=<2i{#kK7K|=f=Sj2NkoTyo+gx=a^?kthkRm zUG6SX)N2bxS800uB=WaN;@TMT$|K_amO!7ZUlFj!x1Aa>OWJ9*u{HF&sEWt-(ENzD zqbfW>>d218@mEleM}Trnb46wd?ugJ}g0cX7*}LQz99ibIt-f$%&6@Jw7Paj%mWzTI zA*gj(h)6#JPGMb^6K}uxeCfB6(7hTFgpp@f8P}(!Ii$)p>5Eui$*;Mnli?D)2*+RR z9sa?xkx&Q-cXg#@EQ@etZ=|-HF7~F|bUwi&Gz^g?IjyRu#NO2A&ojmpWui_*zHoXr zT+8yKG+SAc<p!T@ObW@yR%cc{cWD7VSK*e5(B)oPRawh|ujeQ)E_6B6?CUsAdNaPK ztC14gRuhpuo$M^nI}=)tPfW(9{csmi$Z(<SWdNc$$~iRz3DH=|)v%K~Z$CPz6lzSj z`2qS0&f<Fn+e0YS{tmu6l4Zz#-4!^>O`&(5z5gstVwFO}s%g%zfooBbjC2@xDT#3y zbHulrIqrQXPcOx6@1BIYY|>13c=fD{6-15YK_G+$JG&`<ms#|+cwSq>eBvD6t)a{l z_*$_e99qewo)%as>=7mZ2@x^|RcI8YsM1mdt3Hh&;$0p}E#sJfDXSp(Okz>Z=`g{~ zXshb7<-A7fro$pv$4G;44u7!v@_WWTJF6{0XeL#g-5b~&Ahf^$N3$pOVGJOc1m9D5 zh+$5|aOA<T-3kDEBh{@hOQ+-FxmdJPJj_rsL1Hd1@!=BRk=aJU7G|iwI-Je{08LQd z_XeR*3yhgCdW<;sw#yXdxa3{bxAaA|uCFQXg5wLwkETk_qatYn^U0euqm7+hZyB_Z z)!m1Lvdz_i%Og6%kH4HF@?Bk7CkjI-Ym?HXi<Y1T<-sxK_+YK?nFUdw>2`SHwmcPS z6esnrA9LJ8ce$@9U+#SW<H5y>p!SvRW1dgHv;a^<acR{+H6oZH0rtZ4>NE&S<u8pc zP$c8IaOLVaO_0=b&D%+1o6e_Z>a1>Sp^6uf7d5AZ7j3sBM1;4?yG05>5g|#tWo$Ci zvEFl$UNr4UA%l;NRBxEon$}F$o4`P5oQ$9)?#iE3vOLo*HV=6U4DOo+9#ZrbnWVb_ zMwMz}8a#y?syU(enL)ARE`@&HMKnG@zmP`@c>8spETIJ!B0FHKFlA)x^%bO5VG{M~ z91trHOcuJC7U9Y-?pMB7ak-hBjx9+)jJg}tP6!<JY69X3RG0;T{h+-4lQjZ{#z$N) zyiTqc8+3^3^(E-jiU);%hJ%@8K=^Zk@(RxO;)8D4!{X%!n)>q2YTXA?_};w9Mui(b zynXxDD42ln%hB74Tq1Mr&iyDrPWka?w@304Xz1d$Tq8Z4@BlQ5%g>4@)d<t^{gV5u z%KaHai|CN}15pO~IF_i;JPh8|hYk_(9etZ(*X6r2`S4?1ThiyMww~57_8+(L#Iy}+ zHN-N;JKyKUt$~sz#1c0+l74JS=xouTTkS9hwyQi&<`+g&^8*xH(FKE<V&{)L2gEgR zceqgO2dRriO(Vznq|Br`xK;rtn!k_|eF^h^(HS?qEW4gND`KYb0`R+LqU_Xc2`V>Z z*Fr(O<C^<mbFM>vV5vfJ#ka{RIJ?CDks=BXlN%=&sBr?F4Vv7J_s8k4;Ml-!LAdD0 zZ`xQA`r;9*Dg;mC3ita<(mKnEPrCZ$REubWsu(un{G`!cR7rK1Owy%?KX4+sErx<r z$6gIv*mQ}J(?`Q0+M06vG5PiKy(B3@PJ&{?ZzyRYJK!0)MmRrAlM>DW3_snIArQ{7 zf>Ozrpbf*0I9A43JEaXPjBghFp-^uzEFT#>nKR5n5V2Uj*id5FjcQ};TLdwt)FrAV ziS}}-oCw3FBTy9_f3OCHpb0cl^N4-%sJl+FHx@TP+j|b71o>m@bcZp35&N{Cp)tY5 zf8fKM^NDU_A9R)+zjx{fSV4C%eoMABtL00V7&Mi~iaL<hwi&6_jG%d{ZLY-%f1k;9 zWjvRHQe$1ncV(RN-RR*+!zjJNNQ?H->@Tqw8h;jcqkmGchxLt8t&tYUWaI)!*gR`= zl6@QnW6myA+AtH1TE1Cj%9ZQqvg>i7UQ<`2<9I>c?i(S`cc^8l-+rH3wr(->WWSW^ z{!_Hug4dxbLMooK$)CZi51bjM!Wfr{ZizY&!F5<Tz>8OyFki>#8(Tu&UsPf5(!gYr zFY@;a&8w_LjPEw^Op=_ARV(LJi5_W9P~+46%6LW?sgIKM((K{9skT=2oW(S@W^B;U zA~BeYxZ2e`eY0nays{HvPvyFmNaKB^Cuec`%g_~jqzJDNAi$b12o(DiiDv&zGnS|B zwtOXBxXBAJ(Wr~r<%Z6}W_+AIkKG51VywmUB|;h6Wz4#0_BxBA7%b)4QTW*=LDaKP zg+h^R^g6faiC)hSxPdIfB~wHVQ^itF#igU*&tqQl#<K2ml`Yujn%);2<f2)f-uT1A zjI<?%(gY?vNZw5fr(3Ysc`l-hVA_&IR7;JfMb@-c$3Y^OXxVyy&=xQIr*Pz|P6-3Z zm&*?~-#Soj^aQ2Rsn3Vy0tu4wnM6tfJwB(;B8d1<dRY*0#6#M4Kx2*A9w*9_H>PI` z#Tdxuzmr#2df+Q>Oh(>a7ThpuC*)D8u)ijrc*y7rTdDJecQN)pV>M&vu41HPt5feC za_W-PPOGUA+6zF!i7rzu^Zf}!S$RzU1PfzzA0?<GowU!#-xStnT1y>*!LE~M03Wmu zT)@{Hk<?LQAhX}{KJz9vg>^+I_>Dn)*LA1Kir`uKm>DPM_FFUi+r=9zSu@dhtL-gw zA`C`McA&5jMKA{gTzJ&uiBzG(^q+((f>ZK<{I+j{!<5~g!**T^fdKluX=XNe(u<gi zmj1cBW`}GFA>NA`4UV9<Pt6e;N%vmSiQ3)jVRQk2w(HD%Yn7Y9Yewkhh$9EMiOm-% z-OzO0cji+IYl-$o4eyQ_W#U7%ms4RS_9&Qzrmm{F``lQLjB!>%`85A(sR&!;&)VsD z&O7N0jM-EU5Boo5i_P02rEu+O)JRrMU9SiXYdJMURWc4%nz80Lgg~%hv%gZ(GCa1; z-DO47Q#2$Ygi+K0n=790RHa9(OM$i54a!$>;rvmtSMyy(nzYA-t8Fc?%>kCRUAziG z<%!O%mr@lU<tn!>2Qg%&SFipV{fdS3BzdctRv<3PSlCS_Q{F1y`^YA2YSAaxGV;QU z>LvJEnvJ<d+3$$~d{5b`wz{7WFN(C#*N+rxkg@f-$UgX{Mqa&Ez2E$v(sCfT8Zy>K z^!NcomnIjoYKuIcE3FVDg1ik!FBOgI`Lgm6A3l#})h<Lr9b1!X0<vkc)7eZEi~wIJ zb!CUEJi{$pjK|iD-5_VB3&+baR^DxpzU5WC%l3jXAq#k0&A|-&49)SbME4v%2?Je6 z;bKB`9z44UrFq{4v-MsE;*N?F#nPS{lT4Dd3+|gc?oN2&Rb<heok!9cCtM|zOq1_? zNs}R8)pCD(g5>TQGZ%yG<7j>dOB;1fB*;EFOP+3kUk9XybM4ZZOc#U2<L<e#@B++B zs)7u+YuQ5$(A!{)YAeiPNQRH7Gm(I5Qwf%#uj0IxLhahiJSv*C!v-a{EmHSAhPHWz z?v*@h^q*zk_4t`e&-us4qOa}hr0tcc?pjq`$?L71_PH>qx3ocsEO)wA*^JI2eY^sZ zs_{={w^&6tG)EQa#%4RHA1DyzV+9dM*+SMcl?8+9Nw%u7><fXS^F-iJEQw~kR~kos zSj1WQ(`*}Onw;q8ra8`qc-O*IzWHRD&;?D|kW0C8=cjZ!GBgy{KxD5UT$h1~x^M7w zgZ6Ds_SVz!K)3+}SINr`*pRL{$Iz$*IqE0_vqmh|(Jn?ut(-y)y|UF#(*Ul^%+9LD zw)mzG!2&fR=b0%IZjHD+YzYFi?J&S6b-39}k;Pwr0Nk0hV?wd;<J)YZ9ZoOM_?l)F z)`*}y_EFr6c`IB{b}imWC^IyxRDr+4ut4AoY#SfV>3xm-LRW4?LxT94=yK_0zL);u zx1gf!`r@BHfJTC;6~~qaHMnn4f)xHr)t$C0II~wl3|5$`cx?@;J{*!g{pJ3mM6~%C zmVH0;({|?VUSFeNmhr(q$eOmbjWo2XS2_<XUe%=ML;Q7?YdCr>T(EebHEc#;$<vlS zT)_UYI^HU6!^t;mO3tDUn$R;T(Uw;ZPgUYxdU&(o1(x#Bu$CfZ(SM847SKw?|6@@n z{&3kSWYfVPq|HzSMpZ12P&y7eydbMiQV3R1ym{`|b4|ypLMQe0HOEKO$4imV1e`RT zG{y>GAf?ajnk1tofM?;@0slIOqP(rw;4fUb)Heqk^k}%-tJ<NeYum<^u>T%z@n@G~ z?i)L-uDyC%N)e`(ssKE^U%71;#1r1pt&!F-j5N58YAOw3l_*d*X?6xOm4r>owmY3n zAlT=Lw$By=aA9?4<q@j`CqHxVDo<#5nFV_*nzcN1kQ*zQzRzrIOo>-@G4~!9N#{!^ zxC_J;Uscn#{(cC;5r++5JpIN1Sy#_WjFK0E;Bwo$><DTmRGW~1^2mI5)=xl<z7D=2 z8<M1=i^*iu#dJpmyYbC_(w}}uz;?cvO31acY}}yyYi)8l67#la&2^{3BZNVqM+^b0 zSgWq6T#&WO7#8c3IqqTN9ZFA)i=tEPNjeXjI$tR66TJ}YtWj!SzK~*rSx9B{zOpl9 z#@=;|R5L#P1uDR=-l<xnCy2BY$%`5VUK|_G*lYb@ifOl_Ik$HfT#=HDx@2raYNJWf z9Qxw5X?zG{H1gImxE~2MZxq(@v2hgY@v!BB89Y~bt%s1w#SmSFx*1!28&07T;$p1i z4hPw;Z;Z<4QJ7}U<5a;X4|bN2A}dupW08T0&@+_*1w$Z`>bcn|urm@uG0*;Zf&JP1 zaeopIe4(Pt*zd$&;Y!;MYu*MFVsQMyG^6+1qx-(+MC_?Erxd_;G9`}hi<PQu(l6h0 z7pI&JpDXREcq4z_jY1fgJp7v^8KIL2i)qr+^IC`KFQ8#<e8QAU)ciu#nhUZLoo!{o z#LeeXgNOL~Y!ul^#Kmb+loOBcMn~sNUDpY>9@C>7t7y+P=O#<0@m47SJ*?{(Jp^#u zI7`tetq{8JSl8>+GYr9Mc_6}!Yg7on89mMd(uDg<sttU!GVX>?s(jh2)s^w8dL00z z7tr*T@9=|+5NW4_FbRh%$YZB#T@wValPkpL%<L0tW4jDvGpSv+x}@}5u8?=TXAh+W z34G}-CZ7~WW1ea=)$Fw1pKD@f<8<ErIqk*rcRVQqi``(EA8^xJ)Qp=>!oGK!YQ=U$ zd_DjuSacKV`hE=JlsTQeU60C1VOo9Na&k&2P(onewgj+r&7#?dplH+l{qm{p1o_-~ z1vAPk6_RUGJ8{CC%gK4)nb|xp4IVvG1ztx`n_$t;0Pw-09|$~!ka;Z8^f(v22~1+< zTXc_XdVmu`8xD7!c@Jd&*|$%9j(^%4L;hB^1~DO{w12@PE3b%5AhBK}Y1>gP;`tsp zSa@ydFr^tvdu=8wX`B2483J#|ekVrX+x@Px;R0wp8s{LZv>^#W^>_9o={cHiod+Hy za+1|ltxr8d#*7?0Sc-XX-6>>hQU5Fi%Q2D&D~T%@22zQT&FAoTro$3QFTv}kyavFm z>JL;)t%$xO#^NiK>;By55pi20K&Jh3iV+e$PFaN)zLTZaq4KgmP`F*jHYW`|;kzlC zU0}A;-g%Ok2Lv;F@FPOFMPZkC)8NvU(-C|ncURHZqQZr(<q*+PwK}mlXxjG!q}8OO zkRw8SP4a9Xh3HqJ>uYvuwQJ&L{U<y5#`iG&HE|;wWgRYZ;Xw8>?dHXRQ#WT=^P;UG z_EmLqZxmJ{RG}98qH8%zp<-M?bGEqZUjLdO<E@G?Y`A1-yL_Gir0qRqsD>p4j4@Ce z=_?)$3lOd}1i6CzJuB!(9q}Dfua&2V!r+oBAzAY-aFcvq*~R{O@>@Oob~c&O^q>W; zj?K>^Ot<$KwxwPOpI}=)m1!o8fZc|{M0Xmp{1iG<_wcFmgIGEm>pEilkMpx(a*L`k zM+4riPLYUQUeNnI<Rve}9D~MAy{}^JQ425egJr8at3ggo=wN~<;aU?qqO^Mn_&%3q z1ycz&94e=%q$XS8UYG4Ba+(rBe#DFnvuuX4mA#Ze`4+H33P~aC1QA))DT4)JFK%Pg z>nkq_3s=IcQ=~c<>Gyhc7rJ%RKHYm!`{PNOCO4MaM5rw>XS%#|J(Gw@7uxMj6%3=> z|6a}lXqyT9sJ?2Y5XMxmS6q&k_QE5J-y|Ssk)%e^NdxP`Y-P9@@U<`9ken0ld%`Pw zE{$eIXuXc4$uRrq7=p5b0mCZy*zKJYl=-OJz~~`Fh<HoT@`T;@eHAAeml8e5&c6{j zKG+P=wd|E{q$V8T!bslE#-pkockldRV(;DOU5kD$mUu|e^3W=ea81WZ{k?OgHDKH5 zg~$*Q=M=fpy^k`|8BF^FO|Dmw?0V!H-R!054NqC(1jopNYCu$lI->{B#H2+qtas6Y zjbeVHZmT;fsoV+?aYWG!G7R8(+O-SJShht?5;i1Pcs~%h3EkEkbtLi^eF&0^tAKWA z5i~g6hH<pSFd|EXOrsivGqrTt0dEq0mDwav;h>_&{ts%9(&{aTk;N;Bg7vO&Oz8uM zIF+Rimz7wu_#icHrkBgoJ9;AKPF;-P6W6GWm6cSr(_)Ptyd=sccM%p~72Y{jphw<k zpf&pfvJRX)f1sF>{DNZyT*vFxq;T^N07M|)Ng2ihNfaZFIRm>jf}7?jV;G=`3}~tE zj^aoK5!tb<%hLh~QiQ6Sm6V_=SXEF3EB0Whi|<s6puVPb>p%#qi`ghx7&UN*sQp&a zkzapB&qh@|gKM{_Le%BdKC6tAY}VcSuy8dRk=a(TzRBCG)VF)N1_uGV`RPF6?zlqH zu`6g;I#l`u-e3k;(58o^HX4waP;%6uFwgHSoO&M!wL+|?8t9u;lxVVqFs~b~8GShV zv<Y(74bx6T@Ce8+Du9tu!y7c*(lp#8WgFucmsqVFeMdkVzey<8d85gGPz$&*0%{+x z3Mu7k7^U#4^<tRFA6Swm=pY4mni-f?5#xW%mo*Gq)d&!)ZxYOF^w{_7@I3p&m!=4a z_C{#WAv#>_9h3v1KuYS?V;9Tuo$8&wmFyE_p-vLd>n>>Llcom863{ia0{TPXb!J?u z(}XAaOQ5a$2ogvFO^zUsQX|^6JF-lE&uqj*`SiGwVL@BI@hfZ=jMa7+_G!t;r0b5` zN&k&!y{*QKcva=1--BP>w!aTN52yQ0AS>m+3@9QkK}=U5gWJ<spQE)q&r&`Z4g<~Y z4A}f#r$6I&XON^Ww83ACKQJ)kwh)*%$Ro_CtP>Bf&S0>eZ6zN4<7vT*RGnvxafU6Z zKuPgH>MBtrh>$FKp{TJYT^5~;Z?i?-ithZx;M_|@Dq_JU^%C++`e9BM!JpZex_6|; zGl!(z^2CT<FWGN(Nic%1WG7rUnY9`HJ_O=a;K>Z?K=06Sk#$qF2Tjbvfdf*(Muw$e zPvGRJ=6L6L8i*YuN~%^Y@_Xd?2^Y$bl=_JPwMi#AYW!>j%8T>sxU25Nfz+o7I(i|5 zK{gmDwC)1|9^~T$p)gOWkoLB!bL_f@i)whdw&^$~`Hy3F<^h><dCQog#*%CiLZ<c? zoD>*H5nR)n5IvKA4&!SdWu7*M&CkE6TDg%4&?S3OWz-gXeK*P{SP2QWUs8!@<a8yx zU~iMBOz-wv0Y?ek89!Wg2;mCLDdSv^KeBoL-SZM{=v{9AcNFDvJ)*XN1c{p$6kiED z#}68jj!*Y<f+SR{87rl~*aDH%%dim^#ZpK)Xjqiqb40yJWV)YB6Q*O=C1$_lsicL% ze<3eY@Hy@X{@L|$ify;N8>UC(f-;RYkm1oCzXJ3-{eET<`9FCsJ%&p|+^@7H`<Kcs ziPl%rE#^9N#+9UXL4z3hL-ie{ENfb{ba?~5H$fjZIx2?9US-C^QX$YC1%jSC`%b~_ zjvMm;oKStmyB<NMLDVoQH_p^z6-X{I3}0)pHp+Bq<Nq^SVvPWaC)+EdW*GvURM*Kb zT-)!i8n`?R2wISSLRM}(y+Q+oL}L#lu9BP14HiNk>o#1wy+UN?loklUj0dFk6%!e6 zzS2HVl|K#+T^aP#(|X<L3AbKj;^dA<b^#F>493`-ZxN1@3lu{km*yS7;YYO2!YGna zN3b+N|2&YPYJV0%)_)~;`N3jUp1ypQ9mAcMqcI!jy?N6GW5g~vHL{MsGTwL~doIkL zYyZT@DHu{l)y(xZ2JvF^^5J0?sue8b;ov^GIE#dx?fvP{Qu>UFr!&d+de83h@+f|# zh5q5gBQIa)2Vugx->Tk!e{^+R=1%QZjA1})ff+R$ZNZ1umuw$f6+?rBn}c4)-I|b2 z(SBx4e1z;6I<9itk8#=_T;kn{aoW+?uY$3&?<^l?6~%Sz16HJ}-$*F_>hU;8baf~A zvT2$kd65M%#mTS6-um0X#?j-<$g<fe6VQNmmADOZ(;-@Q(gBwPS%{>cvquryR@pp? za%;I#9}jb0uTQx7<A!bP$1xyIPPjJ;IHZL_u$;F|;y3x0P>xquHY83BTejO}ju^Ht zv7}ny#VMT|Nk+6%hFz<$6j=S1QX{MlEq}g+q!6D3BaV3Z)_m8UfX!WpNcuS!&Qyy? z7a}k2?12400{40+Dnb4jUCJR{XAkChDil^Oki_qbu18l@hsW4T$qi5Z&@2wjwn;{h zHx>@d^}ha~NmNC?R<<%dL{4o{bhakh+-f*S%+1!b`QUwi&Cqq;c#DdO0@sQ>3bu}j zCcHa154FV$WQAn6GQK~4WlZr=^aK8oFH64Ukn?7n)7Hjxh&&scjcC|RTD7)YfseTE zUb9*^@W2GW;!PgaR)SN%dgvpxm1G|K5IMK$!axX9z6B&j)oF&+Abv=VDW-a=Rj$RG z*AVfA!V5H_Or&t1O)eX<m&ux6x};-Og;v$?t{=$LcOoVBt4ISXYezBS#82krp68ZG zIERWXs`U*PzVN5L2#}_GolvT=Mt?!JjzV-j+i^CMv7Sl<gHgJ&1hoQR06Ux{Km?fP zt3d<GXdeP!bgduAJ~}9BKLGdO<E1oa1ATuQbba3S<G`kkDt3=v_RvON(=Zj)g#vco zx$2l=+zXZNs?FYL@ax!I-*okRu6??^2e_-0hmCc6iC`v-MD!H9Kg8<|d)ol7#b+e- z>_~WRJSZi|J14k?Uo^3N2m{TK9a5k^!1Yc>+J%cQf<8N4e*|=JXRi(@ZI8?eAh^%D zRH-$TF;nXTJ;bvS*@|jW+MH4?X<g62Xx+~zm%)c`_w(r?y^l?R{u(|B&v%iJxtn{O zRx+CO?0Op_mE<7fUcD=LdG5$0C6d8xiWiw2Q>+n7an4_hUOsU^RVL^BG1TYso#f&; z38cE-0>Vtxj)ynJlImPSX_<(#;9^zX&iL+)tMQSOPBwIkYFZXt<0S8&U(^e+cK6>! zC>^M?U+CmwC)cr4gae7DX0=>G_8R`oxs;kDNRb^g8So~rZZtDmD6t`Sbuz#quWnyF zbH^uU(^+oVrpts&`82P$fFlBN{p>K|+nBZD4Pg=6)@f~AmJo8E8?qzXW}h7qr6}q( zX@i_osNq*4ur%t-%FfQpOEx(Y-w6muDW)qK!T+|0;6LZi^Rx}&F%rxXq1b409Jx=; zRD;5Xu=`H=_dQEycFxzUhZa&W<L-wg!@iXY{0M{_3}!s<KfLk;mKNLDDa6jsxz(_; z-8sJhHR(Hn{nU=fn0~kJsV{ICQ%*$vn%jOeLA~udl`t%Av<sF!*D~#CO3aL-p8avH z-Pk7QL9+niDo3!bOP);o9k>yj(jLcMCt2nT&t#UZGHhT*ycR7I!y2r%dNBhXtyolv zrPr+H;jLkHn*Jzp@IK>_MS8eF2S3M7QuQMcKP-Sc8!O(q<h}q~=*`k+hp-T|K6-Dq zM3f^TOjR>of)ibvSkQW3dI;zzF@BtL_NucE)abI>Z)gW<UTQ_>rT&^D`zY&%YrcE- zZ7ralK=V-v5H6+y^?l)tV)!Osi^=d?FZ7#oIycUn#ZR=P#*90e3V3?Kj|OEx_v+{3 zKGl?h!~q%CIh*j9ovxT-UYGglVt_ca(MXT|7~A&2+kTifJd9IEo1<HY$#7F#nTuH% zv;R)-?u~9I$Dd#Ed^?_SAemtV%vrg@QQ+vG{Sk}yePg-d5eohym(0y}plnQOXt+$I z32=vDn<w-HbdD|)&Cm@yM>+?ceiLH;@ck<Z1~_51Rf(0rs)8$MUQKpUzrjxm1gR`X zhrp9hN_$M%@)nO;U3=>Tzu@TWDgXNE38wPC)dYD`k$nI%ap3r&z~p)|t*p{#lG<N< zYR|WMmQB_+do#wVJAckpvuQWsA8EYDhyuMt?*f&%+g%^i6_CO9r*W_2PAJto2udpZ zq54S>G>$&2D3c#ZGby@pi(!U`T<in71BisSK&e+UbOMkG$T6{?nxId6p{MV!XQa5r z!q(bwc4(Hq;bw#0nByF4buQ%o*1N6i$CXwXRf_ASlV^Q;@&4L%hr?FreV@&<Xk4}w zCrIXk;cvU)%hm`wwoi4?`D7^_K#@^jGo?*Bm$aKNXxf_=YP;G3z2_z)3jQMdgCkH# zGOxZTk&clM03yT5fUAlha$LVw?odp}?Ar`o+Toy(%vw);!*rKeTGyc|J$lPkw_Tt^ ze%aCHp}*{)`qUxkP(yb`n%SmNdTA#YXsSuRcD8Cfq9tx$kA~O6E5t$9rOmqtW^8?k z?w4<2DUiu4dmZ=?XhVEAk0F`amcNyAVqWyvS_>ASzPVh4@6^<YDz?8yqpM?}i`6RP z`0)DN?H6;}oYoTJnbTs20<^Al#139Qo33uY))c!B3!mzVCd`A)(u89jj;z|gE4bfy zWt_$mD9h|Xi%c>%p7G=%r`j(Kh~=`hYBbX)n*JM;?NJ=uZN6*x?n39lT6nd7%@}z2 zY?j-KHLm2I6oEjBJ89buZqzfnXZq^`FP`gn>MF4dB1MUlANKE5`&u0an6@GD*6?vD z-6u*_<@DrX#t#F2{#>xFSSwy1Bkuon?lwEA!-C(Es=<aZuteaiae+2(6@VY&70X;- zR0Sv`VN4rOK00j4#a#KN1z-&!zuWU_-j1Oye5pTlsQ&s~(5|3hs3T(5R=3^JrdyJ5 z6lS9rJ5Z_6UdEof(zzfL#Y#knDm^7OGJi8*xbzZNkIVz~pvL%4bKr}?9gq8t2#SdB z1|=;7Mf^KrYb|k%EfPaz08*$HD-}wr8Mg%anx{RRZ#3qOj`ic%w!83J@b8?bdEL<r z^R)=8_#m+3u#(<NF<U8!M{P2fGswnHT2ns^I@L1XWq)}CLv!riL{QIr_`{uujbXGt zIGTJTPJuEye=Y$dIXmrX)4mCPUe^8GI5f|>4Po2|Z917Xr{B0og4YG{-;W)wmVu>_ zy*>RVRv;LzCjNQUzG0x@@f_Wrj@0q(piQTzys7skY+=zO<L%pHaJTqa+nO5Ansysl zh$FFs+)@k$<MsnvtRpmMJiC*$%!U4XkY#?PV-a)CW(>GpW<KMc#msQSvC$t@bEppf zkKcyDwoO?>^ugJo(lyTQXm87t-I>+`Fy{4gGh0LPUd?e1M<DZ@3RSKQ`~Y59KU3{h zp1vbcOr)mGJ`S=<KI8o;@=e#_eV!7g5TU!a?Ew~;tau}u>=sz&3cD5Qu=U8?a7nWY zXNUbbIBcOC6k81zQ|@Tguqp<gJEYpNwhVM!mS(TA8!}GxzrG~amGw-HmtG8!J?ogf z7&kpAvGi&#WK0X{PwT5m54Ko~C~%#W^3m)ct#oHA6C1><%_6xl(afRyluzT)Egy)E zxeYd+T)??>Y|VD-URUNV+`+FedWCT6==RQ%sow;riY748kxOq<9s_|&NF0#VPp+#v z&>n213h9vI`O&joY7nah#ahL?r{J69t-B7Slzw{l98yATi)^Jo-kE@&y{3|VLZJ~R z!(S_t%T>8iKyCAY3Q(-|+*5c{FUWKsCwy1XKI3QLMfHm5LR&qkd_yLY$UQ{tIvfoA z1j>t-@a;jPo@+)iijT<Z=M$jtOT)Rz+aiF9zu5W(N2*2oWB$^vx`v@~Q6z>u25y~J zYD^)<J|+FKQjkp37%{15u|*p`t7i&k)29;UejB~2iT9M<fO*t5=V9{^ebEg#1+I1- zY1Sg;Apqr+`-kg+ZZS{<UpSxOo6^QTob|eLxs1KUBK<jksbWA2Bu1c~wcZ(Gs->6< zc^&^jzvjrbtDhoNU}vV<&F-F6dd^H~-8mZIp@5i<{Hl<8z&q~j@anM$>>2@E>sNmp zJpmA811D^DXLk2VgAk|^oXi7xfa={xeTy!<Cmx-nv^^^$is=jG+P6H>i7v^|qZxKL zDfY^r!q%zfOq%yb?RvPjhxc80cOJ#t#<5&ozGu=qes(iv-RF-g#*5CKc(-5l_d9sR zZ~&nHDar59rrP8Sbl3DcZii^GMlBcJfVoL0jhGO>Z(kZqYv>w)%=vKA>52BZ`pb`E zK09wqtBIQu)Kzut`wBrc?<i04&@In!&{olf=kQRy4`AZC#2OA`Hc_hng-K1_%5$rL zo0!CCIjj2EDptzr{RX~b^%}G12mHbPia*(_je3!XKoP=b0?LLq05l$adzBqi_kXbW zmSIt?VH@Ze7+?bqN{R{?2uL@gfJ%#i(t<Pt(haf|lvYu?TaZ$^hOH7xgLI72J#-J8 zXJO#p-{*Io>pDNqpZ#ZVm6^p_?|R-R@B4luiyJbjhwe4cyv1SmhN8X3A1_cU4XBNO zHsm+SRJF=Bc>}2$cN1?LYHiHDxZ$I}bRFj&`xwt9(;WA=`2ATfuJ$oZw~mO_54g`( zrc5}BI#(Bf<69aGx73vBT2JOT_6@%?=<cC6VF4LiHHp}%bS9s3EF3faXW%~`kFwm~ zwrQ`0*`1<gGe6D71{b422S^RNGngJ2aA&A9V{N_Uc<BZD<blc3JT@}>Q#jJu3d9@D zirNSEd?^G^G!%o<;-*F``sGYmS9Es=;9g}58-3Q$d}(Q97ScsO9IB+*HHGI^bQ$k< z;Q&vur$6tuuBLwDczEt)+(gZB-nK6U52FW_59o#?fOU|*tUkFqo)HyzS1%-x`Z7M9 zaOah?GdE7|eC|mstq;{$oWGDt&89ETRQ%Fu)0z|BxCgm;^}P6x#iItamNv>jUhYdY zVzZf94FS?vGXetFc``)ET{1I0<@$1%vmJ3c80E}r^C;oVX%^)2Uly{PWiD{F;{;-Z z$7$wNwP)@M*JH8$r5kG@?S1+}b0M*&H^_#)c3Nf4M=GaG-H3Fan>mS(ni1+WHB>~& z)fGl`Kd#T?!(WrcCe$p|+>Pr|iwW;MDKtJ@br_fX-OJ!+CL1kDOU_?@Mom?Lj1&+? zm-tNRh>_ZLuawq>zc_1Yn^sA5Jx=H`xwO+(L%HzWWyV``o(V<a--hREDvkgqNJ6qH zjc^4<!=lrM)%<n(D__p3+g5)Qp~=t@p+QXRWVRayrMtw)Xpu8Pz4aD$KAgc{*ZLUT z=Dnvvhi!*Ig%&L8XjTst+B+w|ij$HWyONf~(kV;jnw8$!0B&gfGCe5~)wrb7-~L>Z z7qhM%hB}72Mm5D43N`-I*W6x#V@<0xr{af_v-B3(LNc2DY2}#bQ%LwOI*+U3&aXmE z71Wh`JDR$iscjHo>C#X>>ia*9&AdWp<r^EfkdVPP9oeud!n787L^U4<2i|?hN=QZ_ zPNn`Z*+W7#lGbS^Z;*m~#-5S5Zb2iKq9@ci{VtiZUqZ{8MTe!P$?5OjPaaaKIjQcD zc?4nWZ_sBs%GG6}K<0_jSapDeYw6X>MEBp>yT()q+6rX;et$KW1ikGCH`C!LT5!*h z`_Mw#7gEt$_k{6!Ui7PXrY$M2FyUx8-D)P6(tjaty3pJ}vgPfS9;6*GicFaNZDy{v zK*pZ=JTq1J1nyuT|9kM--TjV#Ej@Pgy^45<@df@%61S}D1(znW6rhCDJJ476aAw6| zeR)RE=7{i_uKNMfUVYyd%8_sUjc{?hyHC}zEQDFl_clQ<M%_u%xOC%qn@cW?Q8?hB zH_lK;S&DXw1C==z#~f!xKbSv$q8wH2ayZ>}W0Iw?bXK&M^r<t>I8Ax+<X4ed(FIY` z1><bp3~Mnn%g#d?r(NIo%1D6^dBnb|n{n<F$w5C`P1SR-`s3oNP!FE)Mx4k}cd;D) z$NI-S53y2ZrW}WBea}egSHp7yWQ+|KZ*wWZH)il9EjDeaYCmO@HqJ6P|GP!z$z}yo z8dU`bTK%lxKv?~8@?692K36w*s({UNaPg#Wz1RZbGs(fled}0JRGLc$+q2?l`2F_% zx9dsD&B{svJ-1k3VX9H(DB24T+6t*(PCglm%CA4Qo|O1yNnLQ5<7~v+?nb4>)jkmm znZ{j~&sF@d)^Wb*RUO5@dxy)(5nim0wAGf}wNgXn9(M>B65<k{OY5}V!N;7QtU0cm z@md0JDSTl`2tQC<2iqsnWKCo6BL%PTYAq$wswCqkGtCLMZR-^p260Lq{{$ePT?T;i z=2+IZU~Ex`UKpn-4VCQbL4Dq}x5E*^sg#x(<K<Cfs!{rp_Fe^k<~l_~<;6IQjRmF2 zbn>C_IH%V7cR)E`A6K1#^aew<w6X}!#ueZN-nhnWRpb!HL}=5zH5hv5!k-pdpT|F? zqhVb$iP<P|F}VkkUsm3ZZK$vfZ7n-H5ocXAcLUG7@pZ58b@>DKFgIiNqH9CXot>Rr ztA4)9tXryIcXD!wcyQgLNuNNq@~taZO6dBIvTyvQf)1v!%3^ygC>|dr8bs0<GU16} z;J8qh8+pWzBOLu(XD&dw6w$X!4Nt;Yy9ObX%sJv^*F{QWC)TG%Z8JOQU3MQ6TkFF* zxW!y{_B(8g#9^=VA7?&9=Ra&W`edl8hl}XeyHyG2XJ;hjTPl-@j;Kc`=PAf^$#7k2 z&U>3x!F$H9Kc9!v^C_I3Vf~kA?Brq)QloU4Vk0)3WZpD#UGk|cIOjJw^xjps@1o<B zH)b%K`5j)yl>MAeE$`A`_T+sWoV4!AS$EZ3$m@PNqtJ|JUpS5MK>gj%P%?$_Vk}o1 zJTcW3s}MQRI!A6a*~vbwe>cN>PXCkOl5|Ra9WR^IRIYAis-o~#D#Dmo{h-sej$$aA zT4ql~LmO3Bcy7dzF1e*sz1V)!gc)aE;;edsxf-#ibS!_$LJK2)|5d?T028r{gzDR+ zzQy1uuD<VGV`@gJO7}S~jlH$*o1d?R%-QoG%|hh_X{s=D+e#+6lWkLdg<^9DNj`rJ zLB0x0)p;OYWUKCZFo{Xa5vkLU^t7(A$3kJ8MF{O45AxkAc8qSh`hD8^S1Zu~y=q;Z zR{%Mksj`=ShCUf;4&IZM!m%D%8ET(W={n57$MY;4R;Lvg1+PG<R6(a-4bR%bwe_r) z+9Qj(ygI?nxn1g({q<S3hGAX)-`b%k!{eudbFSm9AI?tmliPd_y_kyY)$ku4tD7uP z;21e8qB0dKq=ffK&<*qTf1F|)X1^lS<vH0lpn^5=v5>jSE*dafq=J+ZlMPh|2ujrz zJQPtO)unaxW8t}1GdMULs|pgQ-pzjXcblvG8Wz~2-O*-CM!yOqK>3;-ez*e__`N!H z>UH?NTfLX+icZ5x3vFoVqP=l1Dp!QPL^#n8&r>RI6)PQt!^1YD<MNBvt<3m>fZ01$ zCyKx`UH14^obfgabGjlt_d`d#6i%mCE__L+_u7~1o=e@b&SMI?N|<c(-cNle=PP)J z1HyA3^)?>ripJfN>D>|1j*}a5%B?lzw^uB*#6zssy-6)KGqpzh<+6C7A2}2TI#0wa z_Z^`Vd5GGvbNB!F1BPhJD`R*$|MZF7`>fuGgcQrA%@Lz)Cg{c}{<q6)T{xQ7?eYp8 z5$b})zK{{c=WcLD;Q#U)k&iaK`rgh<7r3@t`hUN%-TQ7|i$?0il${UBPgvah;}fVe z$T85yqqM{h5pU%u@BjE9g}3M!vlv;vyn6C9djB7;=jOHV<tLIBQLr5PtCtS^;r>OU zt9O4MctnPJQ+4GY;+}3%{LiKR{x2fR!~<s*2iyy1j~wOr(|X7qb%UB+C7Bqdbic~| z%AZ!mDnw+f(?!n9B!x8Bi68y1?-YLV$W1pSHJ4MSq5q5F53hdrd3repmfIwXJIcHc z6tMme)A;d3ZkI@z0uJAT_1Np~sX>0?`v37N&OHlg4?vH7zIv_UkLw`@E9Y($a~^f) z`6=|DEkt+cR^q8N5WQ90p8NBwxbWSC)$O0|3;ol2BtJz=nE5ss=jDO_!$PE@x8jZ$ z6&Ztr;(faR<5eVVIl<%$hmT$%{gcI!A7u(ar?{tpaeAoz*+PQ$zeJ`ccb-3be=Wo7 zK>VLyMLJp4jfqbr)`O?$4gP4F^ssWGIdbG+oX<%9Y$2C_ZdSSA|2FH7#r$ux{?iMH z{I^;E<;O(++pPau5ya*G7g_%qvj4wF*5u$a=vfERxGaC$ni;{Ftbz!TU{oP$^)^=C zk5*Vn5U}5d-TCH7Kkg=o?A?TpvTpf(z6;?{(lH>zEngX58o|QMyx(#i*3sQt315Jz z+JxtJv~-)@IV(Dt#-J~04`<w(;kMtg(N;7GBu4S+{pK5zJst`)O;bqN$A4p!ak%mG z=~)H7r$tmWIvu$|3=TPGn|}TXk`T8WOw&LnMY`;l2}9i25Uq?b(?Y{eAb~W^H_PJs z3$|L!Rt;B1{rIPXwIW~;$>)25ok3cDNOj_j&%5(Qg@6EPh7<al_YDJ#K;}YvzP93f z(!Ia(Dz|&5wo;Ij$FHUYY(GSyxQK><-N6OsyzUo^P%XzcKX>E@u*877N86Dx=AT~| zA==7K?m=$i_U-u2pZ|<<OF#Zh;-tn0GndBclPo1?e<oBTCJ;lTFDH;D+AR?d8=W{U zSxFo`(vo#GPUpAZEu#g!6GIp+T}Qal)$MWl-7roJP7JsB99s)#?mh>2LC`$Z>^W-s zj}CHO2Q<H?PDJ`6>h}-Nj(8ktOWe*?Uw)7OudcQD{Pylnq3r-9&;$g$4l@mdgjY&8 z;j~)O)0J~jOeU$@_CP^aC6R=uW<v3Ve4PyZ^-Yn0t-QWq=fgu(zhx6184p*)KA26^ zu$*+!Nv!<!BoP<BC)&e)no9Lj^Pl^gf`45K<#vi}8Kxyc>BY03D`@m0?T0v^{*+>! z83(wcB%+|uI5qLEUIwO<raBQo59v3IaX%ia6){)G&%zA)U{~AMrn<9ttK0e&CI5P0 zKFRMH`(2$R?qBz@yYMa)1_oZ|60gHyqb5okOs$^X&x;$r(yGHar1UlOv0wRE6*-cC zVH9?hsi{u>x+<i{RFH4SkEE@LMX>7)p{?ugjO_pUw#%l`TlwyTWq(WN1m%JGGmGah zhyRu{He7|lm(X=Y++*gBluam5+Pqzb=W5tTVGJM>wfvFMYp0`vG^Zlg!mM;f4_X#U zO~`8&_oE6C_dWRvdGY&Op>eSh&<iuQzL}$^#p3~Zk+=*%e{3X;{lN2V=(Fc`E5D%> zBOsU{?TCaxl@z8a^cpfLZ$_kc+Hnr!X+ehsrpxBxY|%sj6c#-_8wl-*940ynF%&Yw z$Oa7&&ejfqayJ7=PjhvjrwcM(8b!EGS#=lR)w~!2li`5T;XyCOIdLIS7KDScS;*JC z?GUmQ2k2ZS0XL#>uvFV53OX+HFl7)dS?n|}55Be;YoM(uxm@8grbD{siA4^G)^?&V zrRbu_Q<9{T1dJuF2}DL-2`v@WlONYTX0<ElqTrpA+izyX;(LJ-M0@c)<Inw+oL%<d zGl`gxVT+<NX23mA!(r5_^{zg-{R`xzQp~$rF5j$_VR!mc>(;wT&(U5^pMfzVKj7{# z`~r3|)G~>v=wi79S@yq9|GeY~YOAv1t|c9N_^pX(+svs?vxd)JA3}#{eqm#wqCWNW z3v{d@-+frP)FbxxBF;wROfiiAFGCj@-Ur$$oTE=q`x#h`z^U1?l~k5eg`j5WXk`IY zbxGi~uk02h#Afy)R6~Tlu>Y@4tw#r&fI{9C7p>XNdtvctb@5zX7}7ROgrOKOfFsq* zb+GW)CeY+*XKX+K*3i@EUl=hqi7Wkhe~Y2N%ub9(n(m}zD*$pOG>KDUzTDA=jW2@` zW@c=qHVRjU!q%7{peO0&?ZBmwm+u`f-xtQej_BGU{1GwQ&>*$c)k2VlQupEySm;$I zoAuu50k%1_+qo1d%U<S_sjf)hoDXcloBpqbK|oL4K<FC%cmy{)`bt^jhO(x!^+`Bm zy?<ufZ&>?<`rI*wq(}#&LcohS3LwI-NuaEdboCH#{EVH?63}|@tP9Fj*Vz+|{@P+F zw{Jh(G>uM5(DugOL*EdN_M*HhRvKrk!9;_Db=fP(f;5p6fE$<sZ=A3W>M)oPwAZ@y zfVuYTr5tsQ<bo>AH|#bO?cy3trVbo>HNoN<2Eg9AFnf#8vz#n-Ne8%lH-X65mI=1C zF(RqCdg}w1=`+qd_A!7SJ53E+#TOF=vWN+DqG=cRTD(zxvi-WbNsxAc6B%k^sQ=o; z_N_XQ1Z&=Rk*6XZLi2KO$5#rP?`7*D|16U(Nz#(eV}`#BOGK-k7;s!zCgSCmAg1$e zYSU@FnTR@z*uxztrk_}VQ-!OuNdK1Frah*f-g1FU9(AeJv(F)m1C8>jOoX$AY1YOw zP+uX0v@@}y382zR*^IcCNYERc*W6stG=$StWnfoJ`)B1N1Jf&eslV7wfW=9I0LA@& zJQx<UItWJiVs*l@CN~0uljlJoC>zHGgMkNp!{L@*%i1TND!xJ6C<9ReyVePG2n8~O zH!QlV=tW@=LT!S1xYC<efyN6Pe#2|$Y3{gA!D}`kJK|GRTz;+0;Z(T|i^tH;hq|ks zU2l691!cE$fU?J1jh|BzM}E3nl-n5bz<@iVCl<@2<!ldN<YtKe?GVY_$(5K|&jp~3 zlu?<yEc35rozIKaC8=wSKwOi>t<>3iU8-D!K}C0<eT<z@E-!_BjM(wJ@%iSr!Dx=8 zj?Bpoy2rME8%>Jpts)@+x<>|@;ubn4Yt<y>h31wStG)?+Lo&~U&IiC*pve8g#DF<< z&4}#8_RYmW^8=kSslKBuhLT8iyOqMazS{zEA1xJmQd1w+V_P$b=Da;{_M-m3!VI6p z_hv%fi44y%Pfrcfa(&(3{10;j|CP4%cgWuHiglrNS-#f^H2r1>E$uq5R)(X51%X8& zNYe#)fhLFn$^xxwsLTxK1!dF&0Hoglu%B{PC*nr{@Q`i=IK{>G8ekEIR`{G~4%V`U z9%NE5oswps-+hpbcI?LoXOcOmu)tUEhJuSyxeVQ5c0+*Ym<b453{+)<kWwOSZO-!C zu%PxSV8371N`(xR8v}3}!Q2j`ol0b9*1Ly=f~J7WrmYqlL=h1Dav=!2o=_QI%vuZr zpG{AXo@QV|-O+UQ;~l!rUc-7-zAV$;bHB?%DI_7*qreL{v>oAy%wQbZqkY$b@waF| z*Kl<!&<}jw_QP`OZsEmpWM=$>FBQCs<+=|TfGREJmtr|rB9t)rr@o=9qyYY#lqgP{ z6`ffJk-tte@BpGYAfv)@=qZeP+FJpcr8?lg$B5iMJby-Mu1Q&gY0(;)?AynHphpHp z&`^RRz;QI6a|6&1zw_b30)pM!h}GQniG&l4qI#-pt?5bsE11x+W^ZM~G>}PUpT0M~ z?G8MGL}X~r(X(T#)?;}NLFS~9VY!_rCj0&9+nq4`cZ;&&iHPR@LZ${}T9z==Uzr4s z?mUtl8@?%M*Y-}Bs}~mT0o<(NM0=KRW&f1=UTP~j`HNHTXpQTD2+&15@r;v{j2Fgf zLWg$z9qKEf_X81H)Yg7U%Y08<{xPmJkU6)VUU0VRG^Ubm%8%UHXA&5}!b}_Lnx^1D zIKULRH~eCqC8*4=_2a=__??0CXI9|fs{xcpD;4L37Vkxt(q(NG@S~LDrr=i$HwjC$ znTilW{&HE+1^V<2a6;z5%-VQW2ly$na+2|CNH0QQp!qHvvi7B5C$!F6kaIX*+Y8S_ z*7fxLUkhioH$k4IRewhr)7a8NhHHs|1NiAg0E8B2^^P>gdFz}ezEZIm1yC3o=MH4@ z_(?}zj!h~o$YDpB+nro$r-Q#0B_j&ojfjr^m(K+w>TMeuC+bugbU&`?Gy_5k1g7$X z;bYv6#1U1KRCZt8#56{bj0j;poV1UDD0oRsNKboKR361@Aq_48K`u8|_S(lhodgor z$aA!jpKzqVlVnG+T=wRaEw-x)G8PkHZW&TtTqtf3d6O8T7aIFaQ;>yh4G}9^s{u49 zU{WMj5m^r4)`mf#qVZ>YJ?!2KH5vl+<^ltD8gQUz`J%j|YzQoIy#w}ih@Zf0Rc!t@ zNc7sONLtpK&a-?07m(+CqI#_Kn3(u4uc~E0gtSxz<xmd{B;L3FazOhIu<V%gu3@>1 zHLxquTlkguM;F28x0=^%+W&4|uO1nRi0;x2Qum^_SUBrdk@oiUdBN88xv0(XI-Y(X z?aPYJK+1D@fdF(Wa1bnHyf(+GXDVr<N`W^o3%3CBlgtdPukLD#Hi98_#f^g0V`w5w z?r4ZcVy}=DdVdl}Ql?b|LVSmjLA@3(3!$h_ne5YePrVXhbdtRMppHcwsMZI>@@QX_ zCu0dja7w|;Tt`xw9#aHNj#UH8H~2jd!_D$z0lDBb^D5?G5bZ=<J(Q)Q?RmBdVW7~& zAmG^Y$C<0QSO%7mvJ=q(6kN20?a#R}MR1bx@P6;Yf?c;@lYdhR3=OJtKA}NS8w&P- zxAlFZLXNtqb9acR(c@P#fO6aaz18eTx9!JU$Vb#4V`_rg1ZPE`yWX*GQKUpY56TDk z;yA$9mxT=5bv2kGH$e_XSRT+RsQiu9@u1HnE#89*btL8eSi+>4<A6INvo{}scS?Gi zQ4p0T?xZ~@s+&e%PrBI>R8`<^F32*E6mwO1UxExMXSn=ZUPxXFsRJz(cuZifmLH5C zlPr0r2`(%PTXnT1sJGtr8;K^9*V$4?=?x(PGRh7^&?E@-v;xOwDj%L1i8fM1u_`@7 zr%c(4-~Z*x0yL4SORFRiigD9mbjNlitUJnzcsIm9LC(yZaYJz1S2slc987rpdoUqF zyR(GUO8$!(1SEXpWrjWFyJJ=@fKYVYeccq&GyrzoNV4~QEIaoW*h%E>!`dbAE{kVw zOI`EYe?vELlYrZtlpkSX;KP)z44q>j1)dQ0<`Y^MI~{g}d<sf{ihNMkG$S=7jdK*B z_$ggAEv4)Et;z=yf<JySvY-9L*vySxsST{JhZPgMQWpGDiF*YS$p{R2`7+Sxdn#P$ z7a{QGYbHw2*q^~<l^^%zVly;DBwn>5+HIVjhQI|`0VP!GS@gKEYwdUo2@1jZ3NB_r zhLs44>)1*m9V$Plp(=C$wz4bhqGh<j)n7aG;s2iZ%wIxLa33?OBN3}RYr(Pr(e8nF z*tx+0ckKwsYApXMmJ@J+WG)c$R^d_*3g(y<%`)w#cpZse1w2`ZA5Y)Y3K8FvoGJOI zZd+<3_bws6V;PzIy3C1!KIk=hgN&9Yeikx<(AS5%ZVtPTDIv+c7v;T{pr<7o$(b#s zkav8`9t>1HE?a4117r04v!abrkmeUWN2_SL5jB;gHNzdy%i|^3UgV*Xg4GZ<9LDN3 zl6j-F(jh{+{~jUdw<4qlM9BHLdxw9S)ou@e=qe!P7Kf8YhQrNYOY?K!!uaojOY~v4 z-u;D|o2zYx2<oTtGV!=NL?7Qu?VT-1N*l+d#orAuBQ_*MAtght*P6Km2!V6TRV{&R z&>Rv&vQ57}hrC_~W44%cfro|HS)m=q=S#_*o|T611l2+Be-u#RCIZKaHuWHcRp8`( zSQ*k<f&i$=;S6F2lX=1*Ng#$O!>?i3LB}Q$HW6bjASz$m?kKnUTReOVd<gF8q;x+H z)<qqg+6(EjA&7NjvOPWTvE55uI!0O*34nHweuUw^pBPn98oEU5yLKK$QBHRl3iygk zvDfdB9X8Pb$uwayuy4r{l-7ELaYtR<-1hqIn`hqYY*~;U{ng$`P8Y%Nv_r}{tbI(? zhimC)8Cl52CqQzXbiloDrs@LJE@C?hs}#P>iGo{J_Y$}cjs%F#@o+T4J1D0r5ryi- zDw1-Yqh_gKZL|RhewhP8b^?+F)Ph$OBxcIxe=(+H{_YLaSG1(S@q$<z`xvNld3^!L znI+>Rk1v+vsgO<`vyXY;v#tUzs08XLVw5;rRl96S)N}8#2y`Lnvfb*Yc+)!+A0TrR z>DtZM!aT0$vW3a<ZCAQ`4~%kIZg;(f4MduIeB1RH5hKOc^A)icCyck(Pk$U8`n}dt zx<9c+HTrED`rYZUc^bp+nQDA%yQAp($j8T#%dXCzo@xYUHgiL$k0YW{U!lGYNeneg zxdm;EVsOmfxj%i1{{n)-nFrL=Tj=u8dr#6@RGspz1W;CYY`%swFC4DY3`tn~GJozS z@Bj)it{PxY+D&()xFFb9u9{$xj1H-_kkY$DiM@_TN1i9M6ggJG_l8;;-%{0S|9D8t zVrS-ofZPOm68n|8AyF5|_*~fvCMWZ7mx$L}g5DCL;;Q-ppxJu|k0>4M+)^g|jR?Yz zLa)Fe+YnsH;UUO`DE?n$LU1WMRZ9&fVl3iIeY+*d;=KPde*}hr=`pXQ-u0OToXPp} zgDIgw;7LsQy_z|P-TSig?<#B=2Y1EEH^mLm^N5lGJ;LmIp|$(N?s`B;cwbTqmL|A9 z{lO6Ai7qO6-idvv1!jR4bs@Q!DT1^H_Nt*+y)I56R0)?{KyhM2Nl<~cB<{Kc(-(g; z@&hn{)kx0OB|`0GFk#*{jTSN__|VUJr>t}yC;w>~BAh=Hnf9=M%`n}Bb~`YRARcla z+8=3+vj~|BNE=4|h&D}sd3*wsi7g-xIcWSv?GWv_emvqJoT0zwi;b(&l$zy*-c1v9 z^m^?Cl2Bg(U=)PpwG~_4lTc_tQM#Ieioqy!$c)xO-qkh<P?4FH_me;;lSQm(^;kem ztop^HU5HSExDQ3+>>bZsgqs#eK===2;_wa4)k!nguvpnz$&a?cRnb!|7gD;b`>G-l zfsShPFATzOpOU9zt+>cw&6)A;<1xv2L{?F7b#A%eKPlKpQ4^TI5q^AQ$ve;}C%8fr z<OsNSjgn}sIT=u=UbBK8B^OP~Rw2`&{aoX>{>8re@2zBBhwTLVwsN%Xjxr?qme3f1 zlNw|ZPA(-1@f`9<1x~gSS(P*}<ZeNN0(_iy5AtJQ2wJ(`^!5<E1U7+-aZV7zA`&5( zS84qb4*|wy-8Xate*ST>2uCn&0EpjmD3aYEWdO}ee*SBvx!PCI>Pw&@+IgB~t5&$f zXj(z8S1Z~5F=fR=0nRDV<Ad4-Y-k#ac^OKR%qu$Rg}?q<*!!Nx^rTWfQmfT`A{nH) z(BfR~wcQ#oE8FVlt16)$XuWU!ttycIkryY2W?<xh`P179KZ21@$-jXPBUhts|GMP$ zRqP%Xp$Uo|#WJ<pKt{vess^m>W-tO3skeNf=|Jh90Rd<9;jTkW3<_f3uy#}MPRs;c z0T7pjBwwTeEV0ch2o@pRET4s9i4y}kkS~Eb=gX~8;07^kKc%<rukgJP8K&dM+XQ)d zAky-ghvQ!sgD>Vl`IPwR5MMH`|31=d1WKMnoHU;PF`MUk28EU&L@+|^9u!7trK@AU zE|rV#1=mj}PMchsQf4v92asz#q&M+do5&$FqljWWbPZ{`fCuA1*6;0-2K@J3mr%>l zEJg=ZBYo!zAz7f5W;fluK<*0WG-(J%i@&GBg5o(+O~Fm_a~py~Uipsa0qo~*y|7C= zAri>%#sgZ)yt=pn)HI$Ujsx+jm!Z9N&zCi9P831#c@0DGsDiXV!eQ9m!n=?Y9p-J_ z?{O8322V-D43c1@Kp{J4aa(>MJrW&?B(hNMs|>i)yB@QDx!MH$l=2DsO8I({1;xh? z=4!dkApETW)|VN8_R<|njhhHfv=QH~l)v-}or2~<j)G|hUDOT;ef`gep{LxpM+s7P zvncx*M061$?wZ~)fi;HEZez4gomDxvuwIWYop#rj!a-3ND{`MO(>{ze;h?nyv;!%m z!qef0+|Qiq;Ky4U2KnK4=L3F)s^%?2bXG!THdn~FZf`j$8L&hymIw(ik6j_8I!KHQ znBz3vp1-vm`vJbu*@8j-jx*XS)l#`n@LJqQ%I=mpl)8ZJ#>#LKf@Us(r!fS@uN&Z{ zO>|P>@GncYkP8e;9O%bk;Jmg90ghT|{@>nF*4_x5&M>5}Qz5iD?7G2NzIb|nYjM59 z^8y1q&_F^5w2et-YXY^P33BBYorvIkGSc8x)!1Y$GF&RlQA?>KVbFYRhVy}*$I@vz z--Q~?i{5!xP9Zdvni?f&d*b--fxJik5=9VGCj}{9FWkIh9%&u1t)!LqA;ny56ygv4 z?R0!HfGEwO{qZTdG#}?{ZdJkEEyXpEwwK#{h+n!z8|HS$;plIG8&=k>IYL93Pny`T zoKlNtAG8!>?YjIyIgy@)!)1NBPh1LWd6*!m76ND+sGx(#Q9krm^1<nl$7<X+EhksL z=mD{Zsg)O+A$vJlvZ14u2*W9}G9_KG;_Mj!hceHKA|t#`h?S014$yW&rmi65Y5yF1 z!eB=kfRN|f;TMkue)z_j;J+Q#_~f^0Dl;M!zxn$7_Sm&-;8@kC(_*x>P@*&WJqngk ziqhA0X&i7^=w$i1xkR{$f1ra-fA}{#X#P~g`73ScR=BkYBwMLa@E2M&0Gjot?UU3} z=o(wGxt%ATD!1r1uOtuf9;^PD?lkGl0q&bDpd@ymM(QBa5%>SgDx-AOs1xE`vx2N( zi$%oKNod&JKxWEVXHWV^Pz&Al-*1|x!~;ct6U>R!1q6?zF5z5-F(C6h3W0q*PZrS$ zMGjv(iHW7qJX5=>s;#EIv%AlmMT5gT|9x8N;~6*{<BJaIj8jRKw&h=-5ZEgT$)<F* zOGWAG`8poC>ZZNk9@`7IkK_Ba`uF){3whNi62w=H!tqfUE$ES)HuPrB9YHgCHAeu2 z)p;vGRrqOuW6p+PycC93fy}IVKVx{qNE^b}L1qL{ARX<3Ot_nih0J}H9^I<8oXPU= zDKi6C%be)0ETbSZPXbhhhhK)Fz07$*(-?X~p68%kEA^tZ$@#1ai4kNlhrYZm%n*P6 zD}o%M;6uhuoxS8JszUk9-`c$&Wa$|FVPJrv@mmoSBthj?+d?U{UPs~}_0wz{3clyF zHdD*G3pLj=E?)Bet(9{DsfL2-tl<QSL`1_(f(p?Sc^*8bPKQV2lH?yw!CWwcZVHOI zbfy$;AYF1qt|20<mq5q00*CaAPqJxW3+w=CtzhVfV95fK99Y0=uCk3LFL7xCwTJ_z zC`isAlUav!k{2N$<pvawU8vZQg%hyAm2xk1;34Vdfpp%~5Coe?XPnX%-%tf4BYvGm zjC7n5`e1jx_hU$yvm163o|aOB>X9HZzJ+otz`+qUH<2x<Qv$4tq{{nQ4}3O5k@FA) zk)q6wN!$Cq--0eo%SR#J$sl!&zjYtQ)5&Y6KCD{67&UQ=XJr{3cz3T)#cx&;k6<02 z?b`0th*%RriXk6935ik^9SfPiM5IpUoM={0KHF_mjS-}Ix`xNPDrt<s;PisU4MnK1 zH5e<5Sz!WTcA$ly1*Q<R2}sa@G8o45a9`j(<TKe!smLXL><0=4+*2H7j{cexi0H#6 zC24U;M``K%MQd!^L$JWkA#?(~_nSj#>BzRIlI;m7GMffiC987I)vmCSmY7{}s@spW z=L+N-Qy?241H(pT2MB4+h?YJXJ`AuOP2jeh@x2<*m7NFNL=qftbFLOZ5r$B|OGBN} zPdA^rz!2+ySa4p>>xP<Ty`b$34&GiHUI>{Q&qK*e<~}?GHC${I?Dd6*t0%;Wpw7k~ zXOp=1G1KdlGD4VU;K)(gqfJgYghLM9sb&3ez|f88`1Poj8vWJDC1}6|BTP!|64sNP zMz`;6jggspFJExKL8j;9EOF{1Nca}i7#T(fCUB)6{prmhAOezP&vpPj!nE4~jVgvf zG2niahH_V}ZWW32J^{Jv7grO0EiV8t&`j*#Qau3X+eUj4wf%LD{YYils8vb_J$EVT zuI(I;HRfka$^wDu{*IM}>M-q?Rp$0pAZLl@`<}s!`4nB>{=xil14Yy`vfu6=V97An z0a$X{&W9~0te<bEJHd7k${Bhaj&Fbc2p#L|AH(F^acm#g*cy$Wx?v)JW(5z+?vp)> z4)a;I`5go8cH_)ep&xqfk@jz(2Zl!vf#SZS=hC)MfXjPsb$-=vp&lGN?Ax<#cOwRH zGkgwqR(`*J8T>);`^^AoS?7QDeV;{J-r0T{SdrBqD?)pi{>;yY`iRC3B2<y>gqX}v zuO;$OWN8aB%>gsg$T-pXZ6of48R?ha>m=J{9AL@4zQ2};%POQDhe=Bqjx~&Je}nJN zS7?0SK*kVpPY_q#j7SIkE!fKW`!$YKk#E6Z2gi)IM~hm^`#6T(6N9zAtQK07t4R(< zeQQ?u{aY^~lL9OVuu5)4pZsm5j=@S5-j8<w1!96HI{RaxKFTHC|DP+h3{ve1>&lwY zI5;n}ee>|%<=DQX8p`)*@@)SgboYQe)uHXb?>mxQiXd;Kuk0urqdmC2x^!|HA~dgy zUj_dD+2HQ)VL@g}{$xBMY=rarGp^q{i@(2L_*(FR?{DoBtBB2SPxP-(QJmQdQ|Z7_ zI%5&G-N*g;ntyhfq;7o&2{Vp9JJ3@nHGh&%^|u-5zdwB-XA2W;kSy_G@pmiz=jX06 zZZ&y|c0RnyO`Q8H`u+1m@FYkmMc4#S>Rex#c3jK2@foB4`?~zR$1R(6yYk&64xTUZ z-F~<K_y}xbhSytwr>n#$nI^X^_TR1JcgufRM)w_&&2zmyz>%H7L3-+Frt6<SUG{w{ zu*)`=;UAvj_iJidYyk;YlTlv>XfCY%g1r3u7WZYQ3wZv-0vrGa1VV#ytFrmZ$KYW7 zHG1UOAAdu1{MPCxpGndC^D-SGLpFi6>W;EQR6^?8-tyn8pZz^JWit0q8)(J0O;a$I z{PF?+<Cf>oe(y{k`18tpWNhK@`QUZpnZ|kl^bifTKU#VN``8dl`+ul^crkAOq5l72 za{p0u{=L8dqv-s5MGyyL^&ds&AAa^fKHa~g+<$z!f3FCnEYbh*>3*-^M55^-C;5+0 z_ge`5kNo-%zxpH1SO1Uvy4@3idh<W>>+kg+vNZoO)&IRBkhcBDRR5<l`H!jo4=;jP z$p8OLb&pCBV76Qs)mPRG14vQt{KTf9veoLGBumI~b*pdL6X-x0!0l*8xe2TcD2&dt z*E5q3w6(3Ms0>zLNYIa5!CE!F)_<vzRM2>8?_`i(<Vrxt_+2-oE0=P5IuA<_RCnz+ zYld-HRHWVP>udnb#Gehia}mZ|ZB1{YHf~$*q}F>5)H>m2U+$i8ponEz;RuHlk?|Wd z94Bx1&0Q#{wD9w1gbNx@7fVq&ZkGT0cD&=H5CcGZg6fYXWOE?h9=DC%8m<K2d2izk z$)(;U5g;z@ZR)o4mjcSs3&RCP?2F@S4|dr7DyNvg&)*{KDJF|>woR@=%XF!hVVJk_ ztMAc)V_9`D26#EO-rO_VY3v%YvG@ho4A8k3fWiy$8W&DYe`|5FWL3F2yV>PUJ>iSx zO$A?y=YBjBW%DpGFUD<9x%L^377TAbZ>1_xQPIg!Ts7f$SuYy(z^z{bo%Xy${YYmn zV4P9H^9ctXSA~^cj`fZwS6bE%jrD(HN$C8N{M<63WRarTOt=?D8&=czB+wX}4#T2A z-gg((w&rKiFCP}molCsYI+9Hru28(0r>X}^w^qwBdpSZ|+Pv$D$KP-k_KcO!@#0(X z#q2`V(-9wx@hv*JvUBy^_}yz1*Dqa2!Yv6-%dO532}{$4>4jR&%Rh++*4|4mh0{n| zkV0h#2um$c`=o6y=H<m3XB5S>e-Uz=Y8u8%j;)>W87CeNx4q&p&{+Alu(TT;1W@^W zjYWO3Hqy7joWLm&ksx*g;L&KOrh3$dQ+)}7Cu4+(%Y6B|*C00EWOX)3d8|t4uu>9& z^In5)e`d{IV}A4QsdqSAuiDA{9wlH?3US{F%ccHPn=)GTM{DhVne_bFy4(8bS>^Zu z*-<PVZmMYVC0CbK+<t}|J(hR^KpvJZk`F9)VP4s^n^q&(lO*Qc-q&CFYJFX1<|LaZ zqC%J*1ur1ZT!eEsX!?f0(61>(Km4V59j^rEU)19A-L|-0hW;gouLD!frdos6b>caK zshF5qw-+vCjc~48NuU>;n<w@DG$eHOWna@%WGkrbyY_7@!nTKBaLpub#2G(0K<anS z>(QNG={Um=`HP{W*)?eFi=M30hlH8Z3M!N-#|d*$8Hrgqp)-Q>4X2s&$i)aUyesY5 z1AX2y4T&qOy%{d{x?PkGCZ&UiU{)P<UDc%YMkgkSnxS1|UI(AGHvz!MCAzLk>I>DQ z&mL9C$eCoiV2lQ;c$@1lZQj6g^;eVxwl1q+VqFP*id>20$UV`iifAx}nN%sa8`fxy zMq;~_jf8D+_Lgz#&LzHFYTUj(`b)RQhl`c53$56u^QmbHCV3ggPB7ydoL{re>keGp zTs$R4yRp1RiH!6V&dc~Bm(?19d4Wfr4Qrm-<`ivLw`mu1lV6uvkHy?0bM<?8=fgMi z2;Uap94Vc_8YewE)Sh&QahTm}eE;2=lK_l}?%&<(yh*ScxhIjtq}0{+c9LtRG)FOt zJ9;!<YfnQAGM?6h@iYqmEPWPsJtK2opHaC`=~B;Cg@GF$7Api=Q&|`aTA9zqlLxLv z#dN>I{D!yqXTkW0X^Rs4mF_RuI_Z#+7LConT{qYXv#+s9!lmoC9G27ayvUD--t(AG z=+Kikt`#&>F$t8-!&RYF!_8amN7rdLv$GZ%aNTswZ>vNNQ_dwx$qEuo3j02%Qj#XM z-qC5XYX2K2gOF+Coag*g7TcYNIX)a<&z|@+JQT&kod0#FVK?C70qUdkm(B3zGUMpV zu;z8|ON9@-Xr&i4lvJ$;_cItAWHm`ededdBq;?Y-vhlTf$<nhCI)0lnVP?5ELT!5s zygyY86Q<wCE~`mhDjgb=Y?5NH<*A9K44-o0*oc{L3~P(`uh<kySlYbZHS(o8@!Y2I z;LAi!e(4!a?}K%Ip}7{gU567UZQIlA&Umq!7L+F%y4BZ(X*f?VSS|Iq-oO^Ev{np1 z?Ileg6ZY~m?{dsgUz_X#q_C>gzNHh|4Nn^Oz{I41b7y}gHmntAFbCKS?GF2-NkCd$ z3WWGE+$_sddXYfD*OU22Sq_~ue4TI{e-iEXbDsS9yUNhbWTB1g4x54F&3g}ToOPaF z-z2}_6YQMM(Q+(G_Oz15Y3Z2)cS(~o8J}{ng+k8D_b~Jt&IJpt!ek&ms~+W9U$H=G zTD)Gb+}zqV(Y-8H@^yGf7NocJLIM8K3=`uJQ*6JiAcLs*(K5s{`4bLSTqCUR>F;a~ z?lB6$>#TsQ0)TI(S|}ibygc>taOTQ!a`(tq_{aA$Cfp63#V||^QwytrNon08sUpci zM^V|wI9w?PEjfX-lGc&H2%txwYvPlxA0}%`HRBjADFn4n(tzsEqj@_YPWs<vhCRZ1 zj%dJrwarC$eb*>{vyh==z78{*wuHZQvYvI}@+dp)=B-f2LhGiB%`%~CcL#>KI`5~7 z>m$cW#gDr#yyE~$+2V;ZEj48jEf-EgZ*Dr>b7lnGyvgb(v7qCwejWBj2q$W(eKWaW z==#hGV_<ka6HJXhE0;KfA!$t$9pV|8wrbwgTn9{NX{6F!`-FL*W5gS~*gL~n1I1=0 zC4+f;T!*PM%MoEGZgSLwS^kvs;%1YgYXM6Sa1WB60Lm})65m|SsAN<GcUsYxV}`Gv zTOM3BkR99k@Co%y$$aX#>Gc^tUM+0N9zhz)Kh9q~#J^98VzQzJR5=?{U1xPRtZeyK zJ~6IhvfI|9q;VRF!)IRqO;P2DcV(T-)R~+bo9Tb;eTgTDskgZpD1^(|OYOUwqc)w) zW~SvOXu@0XU|xv_bkiy>wBZF8S8do%jgODN2{|NWfc<-4BNyVNpeyo(#zm@ds*U?N zUKzbUQZtX+B!r0Huf^-j``Emb=1#f(W$?rD^k7`Ggc<c0Jh4KZomHrI;I7YR+1IM^ zQ4fp?*S%7k1?GHi4oBIFhng1pFWmvX!d2T&`=F909e?5HN-Lj(nzAaXdhLXUB^oCS z``EAXpQ=ZkQ5h$8-I{MUxu5uHfb6P<Kferibu2%7@=(!nqEY2L-@MOxwW=Vuxs^*g zeBT?Z!VbN{Yai!(t(6zLMs$qRq7pmrjWFII3?v05D9G}s<`3EQXJky}$vWa4<#cZK zbE%p|+Vq--?eD}{F9{m9^(->e_+vEeJKPN`PHf_Q<18$1hM5&yHCH$EuI0W_G<mCt z_xeTo0Y+jc>|*D*vrC2l-njN}XM@y3WP}ENVrvt_OoA6Xb)<ACdD{}D+HJ+*otDL; zpP|QaP8Ngi7Q}s=60FY_EP7MdE}(eW3f_df!2d_<Nf)ngrEUZ6D&y;;Q4$G^y#o2T zT?QK`{BKsf6mH_84^$kr8|o0gDa^OYSnj*OuOccd+`i(*D2XIX$MDeJ@j_9&ukiA8 zoM9Noxb1+;#yf9s%79!I3!%7tP~wyD#2|5Jb{{ZDHWLnV^~ScZw5mE^@P$N5TtWyA z8_wR`@gz~zb+fWhaKd9e{bsYwTGprL##7zKFvrF$5u<WXdOUJ<!SIcyt7Hu-RrhMD zaZy8jIy`p$Jc=hdoNJq{_RsYG{0~tHF%M9IZrxQ-&CH#2VRJ_G_4D3o>?VK2#;c5% zMyk2;&V9GDH$S-##}lE0vGt0ZGkubyuGpE{z5*g)Zr9aMM8h1NgB!^y*wS;o3N{1T zz}XbB-G5C!ve7tAbGP%f?V_Znrep1Xl#Ia2-q9D585fB=G%Od+8h(6wRQ=KXH(?tY z+7e5p*LF$E84*n{-$mU`!4!$Jc{<FijFXe5srpKq^aEg2Qi9e|I}{`x9DStg{A0To z%JrYxh(;pgTsLX1E-uhyQ5ZEgPLDh!Z1w)H{23RJd457BCtNfe%VAN+8~tlS%CUb- z6;6eg4^O?anPW@)z~;7Y|3h4l^bT!$E!2*4=b7lAt|#oj{-nWCL?qOs!C3S#=i`(6 zV%+`6t~ijCc+)9*RXy1)CgOm)vHRGI9>S)csZBvxPi<Yv-Kwb?cARW`k7HepeU#;5 zSGDtSvE_9s`=J>r<J4h`3t|~@;(A7^n7B7YsA`h6gA|!IRIWA8<yBRihjgpGFG^|V zXEcT1awJ04W2fKd4>Vn98mDz>f7Wg>x5!-?Vc9EYzCx~?grRl$>Nm9a&h6Qbmj~Bc z(pd?x<K!Y97B~3x=mD+vgyLDEna^>_iJE6!Q@g;B-xa*MS&@d)vc}>aU?IMaAA5#2 zQeBK$T6}6Ngry^0+i5vLW9-7+Rl*b^!=oPO;o&i_5j_wYP_jrx=D#`k+HPY7tpg}D zpEy6B{8|N@)?wo2D777BMtX9zkoOL#YJC}*>l-spm!-9`T%zU{$6zqt537ZXcvh3I z>IC?<)>B^(gkr#e2-Ow3u70WLvZ<Z5TB3E<g8y-E9A4!-PsfSMn&YVT`R4tjYi~D; z=S-be27}l@fS`g!Sxt!G%p|N~Z>?5LXzenu&Ec*fVJRg8#)FAT2?YFra@S(JRL6{y zl$8DMP||HIbYlCkqzoUIO7pZXW_|SUES4}{U-s{FM{gXr7IdsQnVNPiAW6y-X!e|N z3Q$7!^pLhUfiCdwY7+av%~b(H@%1{cpICqa_L(8qUcZ47{kO_vmBJbqR~HFme=B|p zhGMY(IoYC`NfvDdz4yg0L%d<ylOVzHrgSwWf=#;aPilgC1tNjSu^I22LizMjTn;&t zc1;Sh6(Jdfck~0h(3%$ysk*p(t!B6J+_;a)Sukq~dO~e~-6Z$Mxc1FKXS0GyKMHeg z!?=#YAU{tC-t>gRrmz$}4!d$kK3$`T$B@t$kmfHe7WF+onv`fRXotfvo0b|7F9LGg zPkrxXgo|TGf{ylUL)RpWCv55>2Wi78d`T}jjyYhkq;YzYt?vHkb8ebGy=y+0(`;IF zu#<Ps;m(9uh1+k<Q{zY-4>vx4)&?n)oQc~k<2!$$xtDkB6IwUb1?^`C?wCDd?uT;R zpRm|-+NS$nmv)@zPtX->gveRsAer2t`j;eiPg(HAuVZss9OKerE5Gi#Fs5*$A2!94 zC_9yIo34n_58S4u-%>_eQrix&Sawe<Xirev%63uND_CZg-L$-kAxBAZ>0pXGa%TWa zDt^mn`f<NU?SqS-7_z{L@?jK8kG^|Rp9uJ~`-+B=;37i6*Bjv;C=I#4kXO8QBtyW< zXjO4GuaL0wA$w4D%KdI)RNXqhlpP7M@1P3k40JMD-_K_HUY?wdr5FGBPK>MWQvCgr zGQe}A9j7eiI@c2^H;(|uTWyZ;+SOqsJs6l~DiJB{LdpilPQ)m^2+m1lS5mnxaJADj z-zuuE<Nw&}c*ux-I??gC^2VSSo5Pn+1s^`WK%XZ{Lw%hOaQ(uZSDDNhm2MzSmEA;a zzOFYZJdyk&Kv5ONdhRdVPrAw#Vrb3Yp~1y=Lf%Y~x~+)|=Hrc|O6EL2%sb4j2HtZM z-BwPl8*vnu2d3=?Y16#vP1zrKx9d!s#hKyEIP=ULSQT$g;9ro``{54ua+f5fuHSLa zQS1wjJA|2woE>oP|0Y2dwm~E7N@X*0C9CCl7{{hv*rbhTo2KjO*1L|rJcb|HFcr-& zGj68y&VC_1A94uu2egq$5P8)LM7pwCMpJhesNLqY;e@DY$GdIKbe}b=;ILB;S@Qyf z)G^iG(N#(_Uq}Mj35~woYAr(n@7}7#BL;0HQ||cosWBj~-1_#bS$!fm|0Whx4pfeJ z`6KI%n4M=RU6q#yRYr}I!kwJn<Wyu>9Bx@Imu#G_Yf>z~TU6#P&+cgLT+PB`FkLzt zz#kB1Qb%QNaj{5h(NYO9WxA3lBiE}CDFLQjk+=5@{7WP$pKh#=lr$FU*K=JtBs4K% zxBN{)rwfzo6SH?x)r6z*XE~NgntTS)Gj&+u*ytZzUVrwtVp=M%ObM%zOYwb0Xa2F5 zIjFB=#+a9;Z#oS=>@c5bd}3|YnLi%6)<2>n9zU60-1q)YpM-akrgEr)Q7Y;yAnqL2 z9iHG4hcB><w0(<CG?x3MuK=Q?DXD@`pX<qpXe48>=|CBdr_-<}Yne|SFtdg*5x`a> zbt(0QIrw->?2-fAUo<-;=qko8Jfr3LOA)#$+8SnVXzj=j7bQj932P$<yRuu7%qN1> zolKopM<3tOFViy&BK4pp-_^?8v+K5tRmCtd#`ngKGMOk1Mo5xG@{TV9?@Z@a%bs{P zA6~QD7ne3&di4a_G+Zrx1PE{L*nPv7`?jffr0JN>;rsJ#n`v1tZ>q^FD^up=<UBW- zPBH8qRAf&J+xc+NrM_fEY2BzsOfl_=#8NkNpt@a5%4(o(N-j#PS>Hl>SVi~Mt3FlS z80k{?oXFg$|4EzcCWSM5Mwe`Roi*19_)WCG;KsFL!eY_r)%eys&MosfKrW+mneD%2 zI^xa3Q2teL(fHCv-ba75Kb*Y`f(tpWVzbjr1J~27hejDWHIrVWv}PZ{K_%?W13_dX zl3u%o7UtiLF1$E>j>c~K89^nOu;$CHGpxQOHK+2ar1rv_Y47=kfym56oxCeWAHQDV zPr_+fFIcm!zF|w?I^2EKd9|jo&uNgTLL&0AfKt@)eks|Pq(8IYUup37Ke*k!DECPy z=ET7qz1f$mw<@X{b%{*ojRZLvg$cKPPA;h^TH1W=^De(vogt@)o0WmimAsludCRDO zq|^G}$!VCI@0D!EZknZpHg=HXU)N|DL*ykBiyl4qeAk{g)QnWzZ+bHGI`t~;=4v-T z{(W`HACucFuq5D18%cJM)GzsbU8f79c&)$_<(9l+1&g`b^hb-P8;w9=I69vGPVY@- z_gjpR;=5wAvy^#!CzF?sQ17>ofM8O7+~B;>i|#KgRgY}5z0EsE^~<f>a8$-`W>R@3 z2l~Bz861AJzRIk2zCsjtRal~4qy4--*>>M)DI6<lRBF_jc2iuKOjZco`4HH?_HVKl zfxqW*sDnF~I$u{J$#<6CImw^uXlh!aMQ0LZK&nJ2+O_Hc^D?&t`p1LiMEq1=tPY-E zF}b;;?51@NBz<Ky`=NxLY$Kl)eMR>1f`4qN%d7RYNckOQA)j;=FPjpf^rx0I%;3hX z5}^xeT$?0(@@R%j=LUg`eRi`kPxk2`*7Cl-jJ(rgIXbH%lrnKxVE)-I?Qv#F_e~F) z%NJ=@nsu_8ZdO-z=tp*rg+|O2h^o3Vq1s<Jk0X@*k;R?(;w2Z8+?9-Gp7hOrybh=v z7_ujVTo%tE{@MKboTMnb<gQ9VXVl$U(F7r4RA3ji^LRT?zh_d4%Hh3f*`id~jta#E zX8djG9cA&+y+f*)sK_DZ)O0Gw$Ol$6T&no_wHpBpl~az?M?fs$=9~QY7Up$#lX58f zp^Zjm+ifpvQZSfkzI-Ze?k-Xh3M@B7HEBBqsoB|F%xym$x`wkKE-|l}NqFx%C>C8! zf`Zd!*3GBxCP~cV2Z9CcEvQ@uW@bjBXl1dk)1_U_?;n0*Gw=Jjyl@EXeOPFj^@Zr8 zq$n<WW~pGRPmT>b{`{{Cj%ZmNzI!?GurL)ZrRil>4Ey@>y{ruf<GiQ%7uD%Lb1eBB z7)QKdUiRA8j*v(m#vf(izc#{-ow!WMfaK=h#ptne5uvc(JX41(AP-XNdN9#$XY>BC z5l=swuv#8LS?{Esajp@OXsHOctTV8@=$r7#*xG4fAU7~9M~_TS!u|M*Qm>`kIcKb( z$u2TQ6uKc~g6%2ed9Yd1>6>RrT35%9p<SEEQJqpB!>I{te->;h@30j4!t7*g?VL2e z0Lpmfjg=8Eds!7+F3!D6&`!%y^7rMYIzm`oz*wgx`l?bNq?bI(fIr1|Yn~5Wu^01$ zaz$64cl8ByrJDq?zCvRc+$Hg593sh2e+ipCe_#KXD5A)X=og3<^td9sAs%;);JTsS zVv(}e8_U*Jpsd)E7bkO<7*)Cwm8X-M<{A(=7CR?ViNrTQ8Onu)g{-FY<MESzJWkh5 z*f1Yd^i95C34TTW%iogXhd1WpmXt~w&yVXXH17=?`0}DVbW3lzR0#UvxtJn20q-2T zt#Lxrb#gFkgr0<(J2n29hC))^c~o$CMyHxmt6kEP-GuDYwG53CKJ8iL$@V!(gA`@j zJu_Eh5vgDcGsQlFLpnO_;_bnbbCYUWudnOO&I;Q0k^!qhx$|xDv!;kVP1?DdW^DNh zzJ5#hTo1&MZ?ZW@%DoO=ge?+my>rlg0AH{+6zo{X+eIa{f=hTpn}2$BK18SW;Hq)H z1yls1Z((Q5WtgwtovB%#QLL@9Agon>xVo5{VrHLYM2un}2(JuaXND`Ip60ZvF*DmJ zyTI9O81tsraZOReR-5g~X=#Qo_Tr#SM6eQl!ybKmV&y$soKA<X>Ts|hrOQp9lK!bX zD?t}3M&ucjFt7^(g$+_hV?h;!l5M)JC>|Fmd~xi#1g(F}-XJe!oK-)qb_@~P;ArLY z3~l+ds~+XRGCT3)KnK=dV2$R%b%B|W&4x1{*v0(}8k0u9&37H>zI=%0EnceL|Brq@ zo&MQbL?>N2BrSyMiLXZ54y<b}=Zrmn`2t^GWLzSH2F|p|FVuQ@HB(3CspFJ=bnO|% zrj<fUQ_p5`KhrsZt4}5<yAE|<c1{zp?`ag{cPNbL6Qthnu;rb}3_8``HT!jympUFc zMc<1e9P(p~a$w*)PZo?WUv;gE=(bSM<*^j&IV_z1)@<DL6Del^r9M!sBkk5%WOEIk zbx*&;3q1;pYVV!bZk28w<X*_;)&hISoR2_;0|jIT4#zBK??YyS&FrCYbuDi(pRz|M z$cB~<rAS&Bo?`mp{Y7$qc>fEox#eR=4=%LKw6%&wh0(rFH``nCmJDT*<vF&51~T<} z@`tQ5hl5qV1sNwy9uhXWZc<=B`nOU<mi*?BYGs8dV?<;m{!=BbN!F(~AKYGXR;_k? znIF!+hdri?B%Da4E7xVJev0K~4xPsA5x;?ZRMM4iE}?>b;zGAfJBp16mAcl`<_-5B zah8tdi^}YnYb~{}Vz1^cQp@s1;gRAs$rp{BJ-BzD&tE7HNs9U+@D*{k8LfAO2^$Xy zOJ3Bul<oAvb<1ioY1WBAE+Q=Q9)?XaduqDdlBMFS;F9bkd+?e_W}S1Qoy2v`@jxdg zYCdNTU%**Pm~>e|1s@j!1AqM*G9OahW|fZ4t*ciRjql}lc2WrUwf{_fRM9fCg0wC? zLK_ci7t9wp+ho^D@|lqmGv+J%dDQZJv#W2(BK0vKM9OxXcUfa97Kep5&mN+3xK_j2 z7H*DL=T5?W23p&~T1!L2kqha?Hl4Y}B41a~8pngw9K;Slk0Ja)cP5-5-o2!CfZxb2 z6*sJ`L5=30x?N~Scq>`?@s{MJ=PTjAi-P?=Yj8`y^uv6k%6<AFmFK*z3>qUw^Y(_v z(goy|gqlu}qXb6EoVANEc{js?aJOHXINYpj>z(;P>*DH>Dn1kGgS{OJZHH*Bot0F! zx4P}yO0s6e$1B++s5?#Py9h(JK=Iu4A}n>WySyWC6)2ApQ<ij!ZcKQy^sQh^k1X|W z%JG>=SH?V{YKYyZ)yyzHP!ah~JfdmJ33M_h*f!U33pDgg7gQdC*I8cOZCXM|=ehUs z_2kBqS@Wx~4SxI8T5(NWRd@)P1AK(8!Fl(2M9n=XvTX{O?ai``ANh81Nj~EH-mJJu zIiqh?yf)>SHF`YZ$=wL6zO1Y|mDD6n+X`{Qz$vn;hlMT+;-FX|Cvi3V+s~tUX#B2l z*iAnF&E@`feO%0_J=C3Es*LcvZl3|;<5E_xBH<+esH#87soh{^Yh<f|Rx$V+id*Hm zadkKYYennb(A&2aVd4Dt{+EZ=y_>5+%&jq_7-8CtSb;}xjaPq-`nra9Jwj=gi{Yz^ zufpx2eAA^}#u(uwF0c;WMYeD8$q!Z<PefhF&iR^h4%OaRa!E*bWL^`4WbtL(4AXE( zQ+aDw;6|9Oc+{03S0%z1O&Xuji$zhTSxkBxqDYpK3cohJr-uaPGX3`x^UX*8A90%- zt}~y7HGH{o>$0ik^JOJ@Vpx|BVw8r<Ag6g<LBf+9B&)z&ssWxNhY(PW=W`@zici0I z;ui$U2&<k?Iw$g0RVWh(;z)w5>D-bntq?O>ved~8v*NWH>^@B=wsT6VmXERt@)A^3 zph|pib)i7#k{?cU<H^tBB4owskJdRw2iE!WERhns{Y~d{Is+qbcS0r+8R}c<=bOYR zm26ZOh;L)5FfBG$bgt%CH*cZspRl}i-PP*<Y41D3n#_W>Bg$G(5dl#Uu~0-5RGM@J z1nD4B1)@YL(m^^QqDyZIBAuZ08j;>D5I_Z_NN>_Z6$mA?yypSgUEPh>_g%a1uUCJm z7bNF7&zU(h_uO+&Ya7E06mdG|(g?T<wB%1S3=G!5v3#AAL3skRUeB`#i3|yF4JXyl ze!peH`s9_;Apd?mlx!<3&zj}Z@N0-uH0Q@AMhbW^iJfhMWAJyXgqh|oGMO$6#f*th z2pk_fR90M6MvHd>a-jp&aY|mGWl&&pz5=l*t*fiMYzq!^UBLycv)3Nht5DMvjdEXB zx$u#lM;$cj3BiG4hjVjz&Ccu<8veatBxa{RK)VA@?Ps`tnf=68F4{r2nTvK<HHwyd zFXw|8<6zoNqlU1_sI=6vP89&^TAD@KE)clSKI{JU=`ipR>Q1R<znN3*q-@8;H6@Z; zM)=@$9o}eVO<a^qLcX_=weN97e&kjn9*Hrjir!hpK|D++G+CfKQM}lfV@60^o$Y_f zxc^?!Zy_#x^D|ZGiU<4h<?CZ%w-OpVpbXR+ia~0NKnxNg?kdCc8E>+DGum{2`4BeE zu;4MPV$@-ijAG-C;g3y9K7-qsv;vO|y*hJb@e!pMz2`Bz`%YTqu<S7tX^{70q(R=B zJ3eW#&uh18nbQLV%j};qiJ49^F5BxYqF~mC0^!YcuBR&p0$;|9KGVQHT4Q|csb773 z#Rr*?6WM0cVP}l4xJ!p-0MbEsA|I6u<q7Fmc%M4O4u+nawc3_mHn5h2%s>v9fnq5Z z<T=~}RT>H9I>hxEOOK=S(rjo!+k30lpRYd|3YI=f4XSfe(z=bUoz7^!RvjBGXs7?= z!eq%p4pR~);0p-PvcfabJoL`vxe$)2t_!oA%g74^@*w=*?!3FsnI7K&uPhMaCKkpr zi{;e}cS>ESu_`aM4`j4owH?01L#qDNedV|u)TA_ZKKKaMC{Dv99!#4QtaCBb`K`1? zVZWy7%q181AqZn(XRpW}k1cItx?8wyxe$P$kL<b3#sqDeYqH*RX~>rYnU2Jyx4WS@ zJ$AbrP#I)VWDpQUrVgwvcF~JCFBpA3)gG1I{wyJhH{crv5aZnHL8<76^_EtrHB{)O zQW2V_Qk&1nQ6=~{4)Ggmys9aRGdTlm`vWYr8dyKlIeqE$)iBpM<zRUP0%2OBg-fh` zQ#?suyq1aQvHz#IdFUZ`{|6z9)O!N+9hM(P3s<ge<&iZ4`wv??01Y;30PxZULeWWF z6PBD#_YfW2`fA5igXeTWyTN$0>l$dd#|9Kn#JD2sMw|32X+upGb%NQH0@O6%Vn}3Q zH;SRW)3ypf4zjF^ExIV*B_Nn^ljb+mX~`N#4@T~jiSpqGx99hi2$ZV<P=;^9{?ZUV zv{R}8Y3UfA*yH$Ic29qZw2DG`8qq<*PjIda&qLWQ##c6<Av&3vJpy-Ow__-=SYCEV zNL9W1u%7;cw_R@&wb7(1gq-}6HU!$tiSn-hewhDDa%vadG{3O=s91VxnVD_Jy-3D^ zT7F_M&PB+yT;b@;-k4f5At>VJOo!b{#C?LIH1~s=t_i$N4xSr1wWiahk9cX-te1dh zU})7qh_e|9X5qTAM|<1r*&4C2XPt=VU?q**WBYZi2#3oEtXpX)=r`tEXe)l|E4znr zI%i;ErU|`zX&7#~KFYl^p|XCgIEd`QAIJ}Yy(^NR0Jcotpj)QQmD)jvS)3sPjr2@} zi>*~im@Sw%8Ld{UdQ^dC>WDmnrI&F7Krq|Ccg-#dV3L`%TB38UBZ&Ia{qiea7ZyAm z7P}YqKbfz@_wv)SrjPzkzvbY5$R6D|zr`bT=!*1r5VY9biwz94oywT<PF=+0>z(Ze z{pIU+oh(Z6+Nij51Hnq`3^mkEC{#@t$RREAJJ-`~IK4P9%ZTM=U4(_#`dWFgD?ni7 zmE1Q%_{%%VFeQSVc3sAn9jT=+azo*c3Q;!Z#&a`|7Q2rjS6n$3GyQ}0d_3|)GXbVT zPCUe$eNIiSH&KyN7@xE>kjpQnYi1T@_kN}!-=deVesOu+q5`^C%Is#Yj#ONfBj(`e z6ErHw>GYoUoV`C_t5MgiNdt>w7mWtN?PF)Rv*hA>OP#%u79H|2{ZYcT?SB*!zJ_dK z=zQvRVtN7f``M9YYPg1xW{Oh)cTDKMm|L$6`&w5#?TZKyxgav~4Ff9ao+I{(VJj7d zLiM{XAI<j{Aog3Bugsu`4BK0JPp$!dncuK(E7PB+9D$TECabkfqOmnlXu+$^a?Lif zlg}(&-qmuWWWW+?v?$EqeUVR5kbuX}cbb>64x@?1xK?lzB!IIx6c6>A3o1Zp<$JAY zI$0?-nJXo;r&Do2a|;#l-1FHUT7O|P$@KNKkWO6$o!;t7!D#=7n`@=$b{%z=0Z64~ z9sYnCs`Mv9CPD4W18~e0fMdSW-NZ4^aAbD&xWA`ZVsY1gcJm9J86P9}aDTx<QDoyz zcTvmf3{Zf<U3nf2W~}4sfaFhV!gFe{ChK$O@sDrMRHKiXEIz*!%&HIo&rorCP;36k z&il<HySixUZ{?{EY(y{&!3XYNn4CKQbu^~9@)ZTw4G50|*NW+~>0Q9{^Xs%I=5$(| zXxBd~qf#1Qpl5vpK;1ak^g(1dI3tH_ZEeH*)AC?_)0hImI+5uYn!|>2m6dcc-NU)8 z@?nQn8O9L6H(9toP-}eo{P_t$J4w5bQVXJRUYWFqs%U|<8k(GS0^>RI11%c_tsiUv z3S;lHxt)c&bc>t(>Tacjn8)7+RFSH}G5%>r&nUk+e~vNkI4pm!AfKXeN)C=)#yZ-0 zp?b8t*glO@L8(VpPZQw}uQX<3>g|#OkZ<IEwhgM{kzEslM$-;J@S>?)V<d|ARiy$Q zlOOT4YxY1aKGAn8b~yiRA5#n{9R;MH?ujTn^}?>_)S0m+^?_M&nVpOUN~Zaf>Si%E zpfK1Nc`LE}LUE8n3*$cZZLb4<FWG2fAAvh)=~&}valLVAnI)$WX<ND(JRQWgp4dt0 zTSc6`qaC*3VS@3BIE$9Oy*2rP=GrEt(n*0BBR8xV1XqL6XZ*LTfp$J6-l~P{L5%^H z(T<)5h%KY>_(_p?aE*z1G1|9_tVMAOWUjws$y%aBebT>HJeh?OCa(J8oaY9GKX7&y zdA$aryGM62y4)!Nq*G&{H&i4Lq+qB}1*ZH;?OnCSxlz|RW)_b1Yu<7r+;m?@5f=m7 zh_UY)XVP<r?^(T<sp8E~8O&w}!>+W{Isii`)&{C2*+qpoKEETm0aV6DxKgvNbG2yO z2jh8s&n-N{Bi{izuFgHI>}}cgWfD;N%t9^fwt<aSh#%+{t|N5YLrQ)3pFuEYO%fJ; zV1V_h&$xleq0KwutjXN|&Rlz9HJ%afL<nh{&v#A~6a99zo0>O*lt3OO0t9fP1R<e1 z<x6g}{RlJKgmV0%MrGI>myGUI!DLYw&;_wJeERK@z_AgNZ<+_HD2eJeL|n4096~G& zC)8gtSV#t`aMMc8Gz#^kU}5Zob{GHWwzk94dxb=&P<>zS8#U3vgw2=OFDwKUBSO^F zWyQ+b#Y9*7eKira`<j^cF}|`e6|(%G{)MG-CmcDSt7(?2rVog<*WegnEkKc<dSwD- z=@ej7ckBoUXYZ@N`_@cOvxNw2zs)iut+wCDLtjo`U#`NFYks)e{2oOy3wqbpmzt>3 zTtho;JgM$(T}2Qoo&KOc9#Nw@CU@kNbSUl1hP1Vm_LVQ510ME0H9Yn=xz3}aim?&l z9R_C2AWmLk1ZWSTncFxNLiX%Btco?4lf=B4RYJSko-)5NFSIpXcCuETcQi!z=m)Dg zZhK8p<rlC%w_ve2i!?xsfDsRwc5sanw(*a~P%PWOyUUp<VKw;j`nC=@z_}-KtETmV zY`TvX2(POGFY#{BgLB2!zcem=p)7}=j>Xz9`gqh=-SH_jSP*$(=VodqBzW68_)|;g z6b)c^ns@LxQf5uQKBph!xLg&gnuNV+Q9?@xx4SEReliiguLaH@AhwY9_K`wldT?!L zsE*6jUM~K{C>trXsEq?<Lqog+1R(9`pmmrorPL3u%~ycKE#D9Z!ftz30v@bn$y{AA zt~U(;Qpb^#FC{2_GV(^F815--#c9WtHUXawG=a;L>7Z(iqi|E>Xkpj;hVf)o?%a$# z704C|A1Fqdd#8&&?9ZAiGO4s5iRK4BFw7h)>tl`rc_z+sp~FUbqG)b^h6mr8<3f)~ zzNS^>(7;Y#&ZE<)OQJz9kV$AOI~%GuB8!J<%DWTh9W#rTiw+~zaW<KEZ0=r+85BmY z;JsUW9k{{u)ec=Kkr)(?Wh8-sNt6H_1r2{!D8@2?Owm3@?N3uofnR@Yk4D;A@D~WI z%=?!iSNO_ZA$Gx$xH_3~rCFJs6XhDKL4%8zx3~a!Hn|EA9nuk(7a3*%c3c%6S8rmD z?y7&aI!nY5R>EuVsvX3TJ?Q;Nw6LTFW_yPgVp@#-!L%6IWLhk)%9~~LL|nXkFP-~V zc8=G3zU}#bk31(j&GQF)J_FA0iBhJ!rM9g;RPV~q=(K5}IiA7+-Qp~F@;>m!d{`b& zWF1}_kB(sSv01f}#-;*EDY$&hQ6M#B5oI&w&R#7Dsyb}`msmqDK^e_!T9~QHwh8O@ z5UY1-0~a&=Gf+7WtFEn#+_|-l$tAG9vK7Gp$Sl+@?jD{bMnf0GDo}^>-tPHqYFY%! zhTlA}ZA7zCUMm`W#W7GcZecE3g(rt$O4o-EJ1%SC#$_5xna(Y|3j_CB(|S$AjVK|4 zQ#o?++BEkRfH@*=7J=HQ{vggUX_BwQ^72t<{B2z8=R+`geWiXd!Q}cjY?GqM3D?~B zvba{6C%6Gmbkw>Yn_~hLVT_H9X}7IHb-BJgq5P%xca+^nYD7<Oox<-~O}h?MM{cq! z1j20@N)3dcumMJG6rsZ}*m>vKg?At$!o=uzgv$*;^+JIB9|q!+qkEMig)7IRvZb*3 z<=vR8#j|7&82wF_--<Qmg9!+yu3(_Fwt%drwzNj|STGw$o_*B$)#Sr3r?lNA?=5|; zFp9Dq+>5~AgihWYSxbe%4KJ6@U~gtMWje?68`Y0q^WlrJTzvvGUE#DdCLMR8?;e$A zw6ZiUGRCpTnlbiB+)-)XkWf12JmG!mR`r)japp*WkD~?l%`Gi&|ImsEQ{1@wKKX^# zHv<MmjeQT#JE>B>u8U4nuAf@V_H(eq!uA3&${61ho_oi?X2-@S_tpuS)A3H;afSo( z%tSu%MD5k}4hp>2JI{(kk!D?)5=~2nJ3>tR1(AbZP(eE1C=u4zT2`V1?J74wPI(Yz zT0poDsygpbSQFHykrBoDJvpV#Q#?1d(jSIUin`s(OuP@ON|m6l+@9L~aq!g{Zy=@~ zV9*Mc)|ZB%B#95TNv6;spYOPr>rnnBOPqK+TF`iC&gxr8eBWb)t2}A&&5F5+3Ufg= z$m8jO>Q1!aXGOqYbL-kw0#!*su3+jqT8no(2UTjCacp@@3?Y$yr%uZ0CDQ<_o2*?? z$?rNA7ju^Og~{}{dn<Y+wh?-t88zD}+kj;3e2a09VU@0(1*cOuUhWw7YYiJwK}ltO z9-L<|fj%Q|UBOq5(fQ+-tcKslL)5P!5K)%>##Wt^_PqHr*8B>TPi0-hgg?%MDnrv- zml_o_P`#V3@Fw~KPDK*o&1_A5P<_DrX`5rbvlT#;9G+K`J!i4#2g(R6$a94j0)?nQ z<N3ehtiY~kPj4cviUvJWm;km}i-D@DHdN`cK;&1~Rb+of&O4>$1^>^(k^Fqx_?-}e zLP)emKF7$&$jkHCvMRHZ66#B3sCE>)jGbBOXM?N{ik-RPv6=C(J}g59Q`J#hqhc_0 zrTV4Api*EZ;MCE3GFkV@OU83R@#LUdU*b(HcAmfMD5i7)GkhSJA;oT`yDqEW=fe>1 zguE56q7yqkTh}4~;B}e{Ln+tMF&vVU6KT>eCc(+!$Q1dJl$?g017ctxNr7NyY34k3 zKK{X1ko(aWPnAfdvE5a_4*OaVM;W+}|7`c(=9Vuak_p*~5WB&L<Ljy~S0&(&AFN-W zCm8$=g%@q6P5%0xlfNCJlNto)2&yEy?caoL?`kR%9Rw1EUF@5QlNc4^!cAk(BJx8% z$3Co{98+gHz$<31Tf+KIi^CiYC#pMat5}pZ_KX2j*9-<Hh<TY<6bOLP3wi49FwlA6 zzf^0tz4L4t_gYP`zb>85eXZr5RiFTD<|<Glcdoqa)dkDGLs|W^<)fDJT&1hBU<A>; z73c)WGm3QK%mu@uDq?%5Xf}$4F|vDLfO@^bslW+v3Zm|>u8xR}Tk1ey!2>Y92o$WR zFL7)ZteFTOX<+hob6pfD-!x32C{XEdKQt{Cw0K?&K5S?lbDmIC8VBlhEHk3BqXQT4 zeU0ymj;%C_G^A-@>If{B8{*Aj>=4pM5RJg=ug;<JD_7vc^wddDeH!tTg)T1k0iX37 zL?bJNvu)Q=i^rT-YpklG7vrz$Vtbs-iYfOQ(OX@wupc+Gmn|1rFF1vGv~4_RS0XUI zYl_RL4aiUUk_hTz9++*E-)%cG_j~wqNHYYXcPkzzOxFPEUJlSQ6+TQnrm*LEMj?oQ z`&^wXO|$2x>@M78w1kR#I)GJGjfe87$n|9x;pO_)frLOY#Yj%x#jdOleK9Y<0bzw` zAnB?>g}MMZqijQAhF20Gj1ZIxtc90Hs&49-G%4_T?Q4be184%@m%3R)B#hne1E!_} zDgXgSoX5k2f1mF=vBHODJEA&!U<ot=6{?xDw+rzs*$Y+KmvP(MtQdkNXg}Z<h;i+I z&WC^_GyEHE{Dtp2IH9cxGd<2s6{Fcz6>F5jUHv09Yr_(rQ>|mqRfhb{3vex$hMKvX zn4-moKQ2|i`fw+&^)VDU{XZmSwixdy9%E~lr7xZ{?R0QSV&O;t&<y0bXJS&UaX<<% z(?EfZZmE|jDu-SVGabft3zhS$*d}?WV=zi1%!O743!>Roi{<4;_^I}6A@^J9(6=fd zcdJoNtPmnPvMn#7h4PgUT%Ydm3E5oJ(r=qqg4|BsNY2>+B3UNXs+G%9L)FY=S+6Yr z*F`YiBlQUj`GVd`>o`uJEdTW?<DqRv<0lo+3P?dK{j)`1-xl^bXwklcB(_F}K~cEd zg-pn53CzpTE1BzAnR#@T&O3fooW&EIPi-j8ISvOuM2M)z#o_$wX=l$d3qrdSrsXy` z_cgy4$?w!M?=|h3zb2l=?HrxiEC&2Fj~+-}8%u1lnn7!lP&KvzBobiahcYvz`Fkhk z=?_83YjX>rPedSY5a~D@o3fjl6`Q~Ok*YV^q71`}=C<l5HjcAYy`?~LHEn0u3<+Dp zcnob<&b0#isY1)w+&{<1eD7$xWjBFSbKZnW$`&b1l>AR7|BCOq5!4n;cV_S)=_%5W zsol;xKEDp8NDtq6?@mRfnxyDoo7W|ZJiPo3U>FwvF;4l$jj-nU=JOMK|LcWNFoKMr zoZ6O`cg7Q73gemO0>dCcE5I#t3<&jx7k}b>_|N&0n+wGqXfASCFz>B64Mo<!YTtf; z=r5lj->9U~T6>co0bT8V83I>ski%>)4!Q3`j5Vjsd{ApOqaxOv3h)LxkZ~_r$w;h3 zf7iE_<o<80q^kghT@czYI{-IM7(zhtwgR7a`O9OZR@1+=n)&~JHTx0opQfn5;Y``J zEybVqlX^A!ySHA=?f?4K{AJSO_x7@559_x>ddS^hPaym!gUH=!HmXrKs#!?S$v)0T z1|=n6PWH!|r=;g(pAP#L$ZOH?ISt)8NqQtW&Gk)C=tSsG#>+>6cSjKd#><~)Q~k+! z`CDLZS0Fo9X&Vg*_NE~@CtdlPo9sd7S#furpA34p2GkFLyMsaRQSv_-^!{+`rC$B@ zQnxr`zh3Hh5yp2;^p~ZAeEgTC{yhTy<$k{l%zwGx@3sSUI{dm*|CYG@|HrVu-0v^< z`-5R^MlHYG?|0ks%l&@09lzY~4{7BFmhj8{Ze={1Aos64^@mgPe-eDi$!|z2D?8ES zuo%qqK7kG`#@6tcDT_b2mE(`OHn9jogmc5jDf(NG1Ae3OU^VD9_Risi8KIT4T6~O1 z^zOpkrr0;(p2et6^|-tS4mRqa$iY9}BmwLxl-%*xVH)49U{LZnRH92Idms>QeVgP8 z$*DJ*hR?J4zWuMU(4T-u@|$3A)LGDVV14n)Pl7x4PsL}7vSF|Tv@()cZrJH#SR;ZQ zdGBh0u6A)wsw*T2i`&QqsKCw#QNFLa^Aofy9%_j@6t+Q73G}nRZ|sJ>ZpRgbVuSPX z@JJ$&5+yTJY`FSRJ(qP(5!Xkgux&sgSBt%>kC8S5wPPuTSrjkJ6HxwCAjBr3K2Xrw ze)fv|@$_uj+h_op)|~jlZriGMUW4zzhrfEL%aScF%F^n4V0O&SSM@AH+DuHnmQ%n# zpWrU+CH-5)WKC=fWA{vgU!mG5VDBlkbpM{ce)}Ic^AnGGx$dBq^TQM$ks?3u*p+jz zI)ZY{OA#WJ6;+SJSr&q}@k&WZNXTbcc=7iTm>It``quYemAZGB<X3GY8zQUqE+rrK zIcA%y5?Kg~EqNRwNdl?|#Sq1BJCvlwt4{J+Uu%G$y22O^x-gz7(>a!AROlg*h!R3w zRl@-)xpNEM$tfwglX1MHcMIkwdAw$(1mEGT!azmAb>6=D^XI2~U@gs(ss@J3M*~Y9 z=aL>oGU`eeGUz_|sHk_9{=#==_*cV=4FYdbd+RMKPOuCZoBDZpV3RQxUirO53;7fa zFDA||vEk9~Y+t{Y^WWqC-yNZYZuM+R-l#GGQKy#A*oSkqM{L1n-n^;0a4TtW{F(Z! zc*}m$>sZ<CB5EwVI+tPUc!Cf+#a}K(dNN6}0b1D^bOqW4&o{S)?d4gMW|k>SBzrI* z7JitxqA&ZATLZmhPIT>NrhiBJ;Lu3)mCjK2zf%(RwW#gkUas%vAG?=L1A9t$20M0u zh160Xv$@I60`nL$9<C%+&4K!{p^atT+Su?mUn3(^FCeJ0G~rt_^F|t-5V!i}?HVGW zN2IvgYu`rK=0EN&(AP*za$?yt=bEI14==UXhP_N=CBSPE6LG#5&p1BU$1wb%NAR}~ z=vIntEP3prycmf%1!NAtdtHD0u+KSVW6|VO=KweG;Fvgu|Jf_&C#%_6C&0NqteVtP zwM2A1gjR|;SnAwTxj2lLqk7HBW9UKp(N&MjjIE7yE9ryw_Ao?VOarP;6tHo1fg_Ss zxW2=ZUJkT%H@Q46QNBPIkWBLSF=taY)4L{`+^LYejigH@r%mQ#;yJ|$iii#R_hctn zB+Revf${N4A(2S=@as$iVuZ70Q5}z^xa)P0FW|lHhy^{77o`e_?$f3cTV&F|+Qa4^ z-KTJ44xOtERYkn5;DSzwTvb<^v>6_qri7o+q65TUm7A*6K-r*n=Kc+svR?8{`O+&} zN^pN{?ABk%sf~oVZqTibM4YnGs}_C!@ErXYl0V!n8_T`8JD0YA>_NAY01qGQBLyPW zK7T6zefw14y$4jsldz$xiP$7+wyHt)`R>yvfAScEV4iG!(UM(nPeYnv;HXOLsj;zp zafx|+_e>)6Grc2*F*gOlAVzy#uRlk&{%}UB(XUNK#$UkQA*)=?*iQ9_fYOh<MxYG~ zM~a)Jfadtx7TFI;&X5xZeCQL2isAICiHiO*!ATW^T;m8?3B=QbZu?34O_-a7>~Z$d z*6ci1r^Qs?cBe(Z7!fDQz#P~uvu4&xVp-}s;4-NZBl$EPpIh8((eeCY&3|4~%7vE= zAs=|gzLm6veO1_fUrIE&Gz+v@D%9$;=_ak>^kjlC&!4C7y0z9ECYT^PHa;F#_WT4g zBkTEzAi)R5=U!vh8)V|F=t(}r<u~N_?!91rfiE{EUkCSHTxKSx6F%MdnC&@VB2o>H zVHHd!@=xAYN?;SMp`dk%-i;>p6k+pZa0%$#Xo+P=kuu_42aFCa(a&C)#DQj;eXY9V zgL)}#z0J!WM#&f@qHeD;6Qt&Wjh}+g1{z1cdp{7pkZpeLRyD~h(M^l(e1<jrI-X0U zaoXfX9xFSUCbey@%$M?xWCb4>D={;}yQ8BcIerP=lrrRQ(9KhPk(A549E<Z-gc|~D zt`;O6uzVDEv#>-fJAxao?yUeiT#lcQ7B4rx%$rCKW1y#hQI>UqK3M#Lf5M9g3No*+ zQ@uU{&w3PUXi%_B(wKG>Wn7-~$jm!=4W7=v23L6Mv-Y`JN<r7G8Qh~p7BRU_p4{j! zyKllJ^^!X|8Mps)^%*=?QTXfh_Y^fdZL{6=3rOwR<$T&OH9{=z4H(3hCwKaVtu+@x zOJaG>!^jWo!CVmk6`qm<w{a5-SudJNXV~bq|Ivt`kN$LbN8;U8S=+TlT0)wCvV!j# z3sKI8n82mTu^!5k_Hwy5=hl#W(Z_U#U8FW#S<=noI2SY1jS6=bk|A8|hg~k)39+-9 zKpXKQH@y3@Y%ci9rAYNr%n1VDT2U7Mea=JF5M0Baw{**u{llYc?`mcqT5F_7C7_bv z&5~xSjhMo|UX81;G}@<hsp^Viq-}%^ECBK=ieYR?e;VzNNBjoI*L{PJB0K=+JU6)6 zeK~|}G3a*gwS@$+(@dtm7DdW5q%WfbAee=V^q6#L7*o9-E<zb!<A$$dWTf<xg)*rS zB(Fr!-dzj%joB=1$v?Voeq7gmX*Ua2rl-}w;W4&K3n4gJmVzXnlpj?{Qzo@tZsr`H z9NmeDY(Q}^&-d+Xl9!*(p8KxATuz5lTvh&uJ>U3zaNI__AOW#%yAvNB`hr{pqBU=m zbkDjvu{ObuS`S0$-oJ>4*u($4#@KA~vO*|iFszTBBl%%FUhQ&0LR}}>OC#~M8Z~86 zJD5p_v9Hh4B&USC(@pm^&Wh{WoBNTxZ9vSbdjXu==Czh5e;qRX{nqPh^hMSIUP_y7 z>%+f{ekFZ^{>jR||HvP9<8r_b&^+33XOBB6r~I$JtSA$ZT7S9`|LWtdnL!h70ITZh zAD-&Jd6rMM<iNib*&rbOn}4;=fBf~wr@(+q8=i1+(nAsd#kaa;a)7;Qjb=DS`X2f> eAAfZBD(ZfGyPD?l)NUB~BXd<zGE@B4!~X&1G{*w~ literal 0 HcmV?d00001 diff --git a/src/plugins/home/server/tutorials/redisenterprise_metrics/index.ts b/src/plugins/home/server/tutorials/redisenterprise_metrics/index.ts new file mode 100644 index 00000000000000..b352691f06afe5 --- /dev/null +++ b/src/plugins/home/server/tutorials/redisenterprise_metrics/index.ts @@ -0,0 +1,72 @@ +/* + * 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 { i18n } from '@kbn/i18n'; +import { TutorialsCategory } from '../../services/tutorials'; +import { + onPremInstructions, + cloudInstructions, + onPremCloudInstructions, +} from '../instructions/metricbeat_instructions'; +import { + TutorialContext, + TutorialSchema, +} from '../../services/tutorials/lib/tutorials_registry_types'; + +export function redisenterpriseMetricsSpecProvider(context: TutorialContext): TutorialSchema { + const moduleName = 'redisenterprise'; + return { + id: 'redisenterpriseMetrics', + name: i18n.translate('home.tutorials.redisenterpriseMetrics.nameTitle', { + defaultMessage: 'Redis Enterprise metrics', + }), + category: TutorialsCategory.METRICS, + shortDescription: i18n.translate('home.tutorials.redisenterpriseMetrics.shortDescription', { + defaultMessage: 'Fetch monitoring metrics from Redis Enterprise Server.', + }), + longDescription: i18n.translate('home.tutorials.redisenterpriseMetrics.longDescription', { + defaultMessage: + 'The `redisenterprise` Metricbeat module fetches monitoring metrics from Redis Enterprise Server \ +[Learn more]({learnMoreLink}).', + values: { + learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-redisenterprise.html', + }, + }), + euiIconType: 'logoRedis', + isBeta: true, + artifacts: { + application: { + label: i18n.translate('home.tutorials.redisenterpriseMetrics.artifacts.application.label', { + defaultMessage: 'Discover', + }), + path: '/app/kibana#/discover', + }, + dashboards: [], + exportedFields: { + documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-redisenterprise.html', + }, + }, + completionTimeMinutes: 10, + previewImagePath: + '/plugins/kibana/home/tutorial_resources/redisenterprise_metrics/screenshot.png', + onPrem: onPremInstructions(moduleName, context), + elasticCloud: cloudInstructions(moduleName), + onPremElasticCloud: onPremCloudInstructions(moduleName), + }; +} diff --git a/src/plugins/home/server/tutorials/register.ts b/src/plugins/home/server/tutorials/register.ts index ab5788865bd8ea..f1a51018bfd982 100644 --- a/src/plugins/home/server/tutorials/register.ts +++ b/src/plugins/home/server/tutorials/register.ts @@ -86,6 +86,7 @@ import { stanMetricsSpecProvider } from './stan_metrics'; import { envoyproxyMetricsSpecProvider } from './envoyproxy_metrics'; import { ibmmqMetricsSpecProvider } from './ibmmq_metrics'; import { statsdMetricsSpecProvider } from './statsd_metrics'; +import { redisenterpriseMetricsSpecProvider } from './redisenterprise_metrics'; export const builtInTutorials = [ systemLogsSpecProvider, @@ -158,4 +159,5 @@ export const builtInTutorials = [ stanMetricsSpecProvider, envoyproxyMetricsSpecProvider, statsdMetricsSpecProvider, + redisenterpriseMetricsSpecProvider, ]; From 3d4d03d2d1280dd6ceaf23f3034204a0dae0b7e7 Mon Sep 17 00:00:00 2001 From: MadameSheema <snootchie.boochies@gmail.com> Date: Wed, 4 Mar 2020 10:35:05 +0100 Subject: [PATCH 089/120] activates SIEM Cypress tests in Jenkins (#59181) Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- Jenkinsfile | 1 + 1 file changed, 1 insertion(+) diff --git a/Jenkinsfile b/Jenkinsfile index 85502369b07be8..742aec1d4e7ab4 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -40,6 +40,7 @@ kibanaPipeline(timeoutMinutes: 135) { 'xpack-ciGroup9': kibanaPipeline.xpackCiGroupProcess(9), 'xpack-ciGroup10': kibanaPipeline.xpackCiGroupProcess(10), 'xpack-accessibility': kibanaPipeline.functionalTestProcess('xpack-accessibility', './test/scripts/jenkins_xpack_accessibility.sh'), + 'xpack-siemCypress': kibanaPipeline.functionalTestProcess('xpack-siemCypress', './test/scripts/jenkins_siem_cypress.sh'), // 'xpack-visualRegression': kibanaPipeline.functionalTestProcess('xpack-visualRegression', './test/scripts/jenkins_xpack_visual_regression.sh'), ]), ]) From 4ce66c68931d950e4dfd8d3d27564ac0fe8bdb0a Mon Sep 17 00:00:00 2001 From: Dima Arnautov <dmitrii.arnautov@elastic.co> Date: Wed, 4 Mar 2020 11:02:49 +0100 Subject: [PATCH 090/120] [ML] Validate manual model memory input (#59056) * [ML] validate mml based on estimated value * [ML] better memoize * [ML] memoryInputValidator unit tests * [ML] cache mml errors * [ML] prevent override * [ML] fix validators, add unit tests * [ML] ignore typing issue with numeral * [ML] fix validateMinMML * [ML] fix useCreateAnalyticsForm test * [ML] setEstimatedModelMemoryLimit to the fallback value in case of an error --- .../plugins/ml/common/util/validators.test.ts | 28 +++++- .../plugins/ml/common/util/validators.ts | 24 ++++- .../create_analytics_form.tsx | 34 ++++--- .../use_create_analytics_form/actions.ts | 5 +- .../use_create_analytics_form/reducer.test.ts | 30 +++++- .../use_create_analytics_form/reducer.ts | 93 +++++++++++++++++-- .../hooks/use_create_analytics_form/state.ts | 4 + .../use_create_analytics_form.ts | 5 + 8 files changed, 197 insertions(+), 26 deletions(-) diff --git a/x-pack/legacy/plugins/ml/common/util/validators.test.ts b/x-pack/legacy/plugins/ml/common/util/validators.test.ts index 8b55e955a39539..7a8b28c14a4a4d 100644 --- a/x-pack/legacy/plugins/ml/common/util/validators.test.ts +++ b/x-pack/legacy/plugins/ml/common/util/validators.test.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { maxLengthValidator } from './validators'; +import { maxLengthValidator, memoryInputValidator } from './validators'; describe('maxLengthValidator', () => { test('should allow a valid input', () => { @@ -20,3 +20,29 @@ describe('maxLengthValidator', () => { }); }); }); + +describe('memoryInputValidator', () => { + test('should detect missing units', () => { + expect(memoryInputValidator()('10')).toEqual({ + invalidUnits: { + allowedUnits: 'B, KB, MB, GB, TB, PB', + }, + }); + }); + + test('should accept valid input', () => { + expect(memoryInputValidator()('100PB')).toEqual(null); + }); + + test('should accept valid input with custom allowed units', () => { + expect(memoryInputValidator(['B', 'KB'])('100KB')).toEqual(null); + }); + + test('should detect not allowed units', () => { + expect(memoryInputValidator(['B', 'KB'])('100MB')).toEqual({ + invalidUnits: { + allowedUnits: 'B, KB', + }, + }); + }); +}); diff --git a/x-pack/legacy/plugins/ml/common/util/validators.ts b/x-pack/legacy/plugins/ml/common/util/validators.ts index 7e0dd624a52e0c..304d9a0029540a 100644 --- a/x-pack/legacy/plugins/ml/common/util/validators.ts +++ b/x-pack/legacy/plugins/ml/common/util/validators.ts @@ -4,6 +4,8 @@ * you may not use this file except in compliance with the Elastic License. */ +import { ALLOWED_DATA_UNITS } from '../constants/validation'; + /** * Provides a validator function for maximum allowed input length. * @param maxLength Maximum length allowed. @@ -44,8 +46,8 @@ export function patternValidator( * @param validators */ export function composeValidators( - ...validators: Array<(value: string) => { [key: string]: any } | null> -): (value: string) => { [key: string]: any } | null { + ...validators: Array<(value: any) => { [key: string]: any } | null> +): (value: any) => { [key: string]: any } | null { return value => { const validationResult = validators.reduce((acc, validator) => { return { @@ -56,3 +58,21 @@ export function composeValidators( return Object.keys(validationResult).length > 0 ? validationResult : null; }; } + +export function requiredValidator() { + return (value: any) => { + return value === '' || value === undefined || value === null ? { required: true } : null; + }; +} + +export function memoryInputValidator(allowedUnits = ALLOWED_DATA_UNITS) { + return (value: any) => { + if (typeof value !== 'string' || value === '') { + return null; + } + const regexp = new RegExp(`\\d+(${allowedUnits.join('|')})$`, 'i'); + return regexp.test(value.trim()) + ? null + : { invalidUnits: { allowedUnits: allowedUnits.join(', ') } }; + }; +} diff --git a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_form/create_analytics_form.tsx b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_form/create_analytics_form.tsx index 338fa1e4ac328f..70722d9cb953a9 100644 --- a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_form/create_analytics_form.tsx +++ b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/components/create_analytics_form/create_analytics_form.tsx @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { Fragment, FC, useEffect } from 'react'; +import React, { Fragment, FC, useEffect, useMemo } from 'react'; import { EuiComboBox, @@ -36,7 +36,7 @@ import { JOB_ID_MAX_LENGTH } from '../../../../../../../common/constants/validat import { Messages } from './messages'; import { JobType } from './job_type'; import { JobDescriptionInput } from './job_description'; -import { mmlUnitInvalidErrorMessage } from '../../hooks/use_create_analytics_form/reducer'; +import { getModelMemoryLimitErrors } from '../../hooks/use_create_analytics_form/reducer'; import { IndexPattern, indexPatterns, @@ -49,7 +49,7 @@ export const CreateAnalyticsForm: FC<CreateAnalyticsFormProps> = ({ actions, sta services: { docLinks }, } = useMlKibana(); const { ELASTIC_WEBSITE_URL, DOC_LINK_VERSION } = docLinks; - const { setFormState } = actions; + const { setFormState, setEstimatedModelMemoryLimit } = actions; const mlContext = useMlContext(); const { form, indexPatternsMap, isAdvancedEditorEnabled, isJobCreated, requestMessages } = state; @@ -77,7 +77,7 @@ export const CreateAnalyticsForm: FC<CreateAnalyticsFormProps> = ({ actions, sta loadingFieldOptions, maxDistinctValuesError, modelMemoryLimit, - modelMemoryLimitUnitValid, + modelMemoryLimitValidationResult, previousJobType, previousSourceIndex, sourceIndex, @@ -89,6 +89,10 @@ export const CreateAnalyticsForm: FC<CreateAnalyticsFormProps> = ({ actions, sta } = form; const characterList = indexPatterns.ILLEGAL_CHARACTERS_VISIBLE.join(', '); + const mmlErrors = useMemo(() => getModelMemoryLimitErrors(modelMemoryLimitValidationResult), [ + modelMemoryLimitValidationResult, + ]); + const isJobTypeWithDepVar = jobType === JOB_TYPES.REGRESSION || jobType === JOB_TYPES.CLASSIFICATION; @@ -154,6 +158,9 @@ export const CreateAnalyticsForm: FC<CreateAnalyticsFormProps> = ({ actions, sta const resp: DfAnalyticsExplainResponse = await ml.dataFrameAnalytics.explainDataFrameAnalytics( jobConfig ); + const expectedMemoryWithoutDisk = resp.memory_estimation?.expected_memory_without_disk; + + setEstimatedModelMemoryLimit(expectedMemoryWithoutDisk); // If sourceIndex has changed load analysis field options again if (previousSourceIndex !== sourceIndex || previousJobType !== jobType) { @@ -168,7 +175,7 @@ export const CreateAnalyticsForm: FC<CreateAnalyticsFormProps> = ({ actions, sta } setFormState({ - modelMemoryLimit: resp.memory_estimation?.expected_memory_without_disk, + ...(!modelMemoryLimit ? { modelMemoryLimit: expectedMemoryWithoutDisk } : {}), excludesOptions: analyzedFieldsOptions, loadingFieldOptions: false, fieldOptionsFetchFail: false, @@ -176,7 +183,7 @@ export const CreateAnalyticsForm: FC<CreateAnalyticsFormProps> = ({ actions, sta }); } else { setFormState({ - modelMemoryLimit: resp.memory_estimation?.expected_memory_without_disk, + ...(!modelMemoryLimit ? { modelMemoryLimit: expectedMemoryWithoutDisk } : {}), }); } } catch (e) { @@ -189,14 +196,16 @@ export const CreateAnalyticsForm: FC<CreateAnalyticsFormProps> = ({ actions, sta ) { errorMessage = e.message; } + const fallbackModelMemoryLimit = + jobType !== undefined + ? DEFAULT_MODEL_MEMORY_LIMIT[jobType] + : DEFAULT_MODEL_MEMORY_LIMIT.outlier_detection; + setEstimatedModelMemoryLimit(fallbackModelMemoryLimit); setFormState({ fieldOptionsFetchFail: true, maxDistinctValuesError: errorMessage, loadingFieldOptions: false, - modelMemoryLimit: - jobType !== undefined - ? DEFAULT_MODEL_MEMORY_LIMIT[jobType] - : DEFAULT_MODEL_MEMORY_LIMIT.outlier_detection, + modelMemoryLimit: fallbackModelMemoryLimit, }); } }, 400); @@ -642,7 +651,8 @@ export const CreateAnalyticsForm: FC<CreateAnalyticsFormProps> = ({ actions, sta label={i18n.translate('xpack.ml.dataframe.analytics.create.modelMemoryLimitLabel', { defaultMessage: 'Model memory limit', })} - helpText={!modelMemoryLimitUnitValid && mmlUnitInvalidErrorMessage} + isInvalid={modelMemoryLimitValidationResult !== null} + error={mmlErrors} > <EuiFieldText placeholder={ @@ -653,7 +663,7 @@ export const CreateAnalyticsForm: FC<CreateAnalyticsFormProps> = ({ actions, sta disabled={isJobCreated} value={modelMemoryLimit || ''} onChange={e => setFormState({ modelMemoryLimit: e.target.value })} - isInvalid={modelMemoryLimit === ''} + isInvalid={modelMemoryLimitValidationResult !== null} data-test-subj="mlAnalyticsCreateJobFlyoutModelMemoryInput" /> </EuiFormRow> diff --git a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/actions.ts b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/actions.ts index a763bd9639bf3e..70228f0238fda0 100644 --- a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/actions.ts +++ b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/actions.ts @@ -24,6 +24,7 @@ export enum ACTION { SET_JOB_CONFIG, SET_JOB_IDS, SWITCH_TO_ADVANCED_EDITOR, + SET_ESTIMATED_MODEL_MEMORY_LIMIT, } export type Action = @@ -59,7 +60,8 @@ export type Action = } | { type: ACTION.SET_IS_MODAL_VISIBLE; isModalVisible: State['isModalVisible'] } | { type: ACTION.SET_JOB_CONFIG; payload: State['jobConfig'] } - | { type: ACTION.SET_JOB_IDS; jobIds: State['jobIds'] }; + | { type: ACTION.SET_JOB_IDS; jobIds: State['jobIds'] } + | { type: ACTION.SET_ESTIMATED_MODEL_MEMORY_LIMIT; value: State['estimatedModelMemoryLimit'] }; // Actions wrapping the dispatcher exposed by the custom hook export interface ActionDispatchers { @@ -73,4 +75,5 @@ export interface ActionDispatchers { setJobConfig: (payload: State['jobConfig']) => void; startAnalyticsJob: () => void; switchToAdvancedEditor: () => void; + setEstimatedModelMemoryLimit: (value: State['estimatedModelMemoryLimit']) => void; } diff --git a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/reducer.test.ts b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/reducer.test.ts index 7ea2f74908e0e2..5c989f7248a9eb 100644 --- a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/reducer.test.ts +++ b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/reducer.test.ts @@ -9,7 +9,7 @@ import { merge } from 'lodash'; import { DataFrameAnalyticsConfig } from '../../../../common'; import { ACTION } from './actions'; -import { reducer, validateAdvancedEditor } from './reducer'; +import { reducer, validateAdvancedEditor, validateMinMML } from './reducer'; import { getInitialState, JOB_TYPES } from './state'; type SourceIndex = DataFrameAnalyticsConfig['source']['index']; @@ -41,13 +41,19 @@ describe('useCreateAnalyticsForm', () => { const initialState = getInitialState(); expect(initialState.isValid).toBe(false); - const updatedState = reducer(initialState, { + const stateWithEstimatedMml = reducer(initialState, { + type: ACTION.SET_ESTIMATED_MODEL_MEMORY_LIMIT, + value: '182222kb', + }); + + const updatedState = reducer(stateWithEstimatedMml, { type: ACTION.SET_FORM_STATE, payload: { destinationIndex: 'the-destination-index', jobId: 'the-analytics-job-id', sourceIndex: 'the-source-index', jobType: JOB_TYPES.OUTLIER_DETECTION, + modelMemoryLimit: '200mb', }, }); expect(updatedState.isValid).toBe(true); @@ -146,3 +152,23 @@ describe('useCreateAnalyticsForm', () => { ).toBe(false); }); }); + +describe('validateMinMML', () => { + test('should detect a lower value', () => { + expect(validateMinMML('10mb')('100kb')).toEqual({ + min: { minValue: '10mb', actualValue: '100kb' }, + }); + }); + + test('should allow a bigger value', () => { + expect(validateMinMML('10mb')('1GB')).toEqual(null); + }); + + test('should allow the same value', () => { + expect(validateMinMML('1024mb')('1gb')).toEqual(null); + }); + + test('should ignore empty parameters', () => { + expect(validateMinMML((undefined as unknown) as string)('')).toEqual(null); + }); +}); diff --git a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/reducer.ts b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/reducer.ts index f35fa6aa2f451c..42c2413607570c 100644 --- a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/reducer.ts +++ b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/reducer.ts @@ -5,6 +5,9 @@ */ import { i18n } from '@kbn/i18n'; +import { memoize } from 'lodash'; +// @ts-ignore +import numeral from '@elastic/numeral'; import { isValidIndexName } from '../../../../../../../common/util/es_utils'; import { Action, ACTION } from './actions'; @@ -13,7 +16,12 @@ import { isJobIdValid, validateModelMemoryLimitUnits, } from '../../../../../../../common/util/job_utils'; -import { maxLengthValidator } from '../../../../../../../common/util/validators'; +import { + composeValidators, + maxLengthValidator, + memoryInputValidator, + requiredValidator, +} from '../../../../../../../common/util/validators'; import { JOB_ID_MAX_LENGTH, ALLOWED_DATA_UNITS, @@ -37,6 +45,38 @@ export const mmlUnitInvalidErrorMessage = i18n.translate( } ); +/** + * Returns the list of model memory limit errors based on validation result. + * @param mmlValidationResult + */ +export function getModelMemoryLimitErrors(mmlValidationResult: any): string[] | null { + if (mmlValidationResult === null) { + return null; + } + + return Object.keys(mmlValidationResult).reduce((acc, errorKey) => { + if (errorKey === 'min') { + acc.push( + i18n.translate('xpack.ml.dataframe.analytics.create.modelMemoryUnitsMinError', { + defaultMessage: 'Model memory limit cannot be lower than {mml}', + values: { + mml: mmlValidationResult.min.minValue, + }, + }) + ); + } + if (errorKey === 'invalidUnits') { + acc.push( + i18n.translate('xpack.ml.dataframe.analytics.create.modelMemoryUnitsInvalidError', { + defaultMessage: 'Model memory limit data unit unrecognized. It must be {str}', + values: { str: mmlAllowedUnitsStr }, + }) + ); + } + return acc; + }, [] as string[]); +} + const getSourceIndexString = (state: State) => { const { jobConfig } = state; @@ -222,6 +262,39 @@ export const validateAdvancedEditor = (state: State): State => { return state; }; +/** + * Validates provided MML isn't lower than the estimated one. + */ +export function validateMinMML(estimatedMml: string) { + return (mml: string) => { + if (!mml || !estimatedMml) { + return null; + } + + // @ts-ignore + const mmlInBytes = numeral(mml.toUpperCase()).value(); + // @ts-ignore + const estimatedMmlInBytes = numeral(estimatedMml.toUpperCase()).value(); + + return estimatedMmlInBytes > mmlInBytes + ? { min: { minValue: estimatedMml, actualValue: mml } } + : null; + }; +} + +/** + * Result validator function for the MML. + * Re-init only if the estimated mml has been changed. + */ +const mmlValidator = memoize((estimatedMml: string) => + composeValidators(requiredValidator(), validateMinMML(estimatedMml), memoryInputValidator()) +); + +const validateMml = memoize( + (estimatedMml: string, mml: string | undefined) => mmlValidator(estimatedMml)(mml), + (...args: any) => args.join('_') +); + const validateForm = (state: State): State => { const { jobIdEmpty, @@ -238,22 +311,21 @@ const validateForm = (state: State): State => { maxDistinctValuesError, modelMemoryLimit, } = state.form; + const { estimatedModelMemoryLimit } = state; const jobTypeEmpty = jobType === undefined; const dependentVariableEmpty = (jobType === JOB_TYPES.REGRESSION || jobType === JOB_TYPES.CLASSIFICATION) && dependentVariable === ''; - const modelMemoryLimitEmpty = modelMemoryLimit === ''; - if (!modelMemoryLimitEmpty && modelMemoryLimit !== undefined) { - const { valid } = validateModelMemoryLimitUnits(modelMemoryLimit); - state.form.modelMemoryLimitUnitValid = valid; - } + const mmlValidationResult = validateMml(estimatedModelMemoryLimit, modelMemoryLimit); + + state.form.modelMemoryLimitValidationResult = mmlValidationResult; state.isValid = maxDistinctValuesError === undefined && !jobTypeEmpty && - state.form.modelMemoryLimitUnitValid && + !mmlValidationResult && !jobIdEmpty && jobIdValid && !jobIdExists && @@ -262,7 +334,6 @@ const validateForm = (state: State): State => { !destinationIndexNameEmpty && destinationIndexNameValid && !dependentVariableEmpty && - !modelMemoryLimitEmpty && (!destinationIndexPatternTitleExists || !createIndexPattern); return state; @@ -373,6 +444,12 @@ export function reducer(state: State, action: Action): State { isAdvancedEditorEnabled: true, jobConfig, }); + + case ACTION.SET_ESTIMATED_MODEL_MEMORY_LIMIT: + return { + ...state, + estimatedModelMemoryLimit: action.value, + }; } return state; diff --git a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/state.ts b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/state.ts index 282f9ff45d0ee0..1f23048e09d1f7 100644 --- a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/state.ts +++ b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/state.ts @@ -67,6 +67,7 @@ export interface State { maxDistinctValuesError: string | undefined; modelMemoryLimit: string | undefined; modelMemoryLimitUnitValid: boolean; + modelMemoryLimitValidationResult: any; previousJobType: null | AnalyticsJobType; previousSourceIndex: EsIndexName | undefined; sourceIndex: EsIndexName; @@ -88,6 +89,7 @@ export interface State { jobConfig: DeepPartial<DataFrameAnalyticsConfig>; jobIds: DataFrameAnalyticsId[]; requestMessages: FormMessage[]; + estimatedModelMemoryLimit: string; } export const getInitialState = (): State => ({ @@ -118,6 +120,7 @@ export const getInitialState = (): State => ({ maxDistinctValuesError: undefined, modelMemoryLimit: undefined, modelMemoryLimitUnitValid: true, + modelMemoryLimitValidationResult: null, previousJobType: null, previousSourceIndex: undefined, sourceIndex: '', @@ -142,6 +145,7 @@ export const getInitialState = (): State => ({ isValid: false, jobIds: [], requestMessages: [], + estimatedModelMemoryLimit: '', }); export const getJobConfigFromFormState = ( diff --git a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/use_create_analytics_form.ts b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/use_create_analytics_form.ts index 59474b63213a2b..350b3f98d46731 100644 --- a/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/use_create_analytics_form.ts +++ b/x-pack/legacy/plugins/ml/public/application/data_frame_analytics/pages/analytics_management/hooks/use_create_analytics_form/use_create_analytics_form.ts @@ -297,6 +297,10 @@ export const useCreateAnalyticsForm = (): CreateAnalyticsFormProps => { dispatch({ type: ACTION.SWITCH_TO_ADVANCED_EDITOR }); }; + const setEstimatedModelMemoryLimit = (value: State['estimatedModelMemoryLimit']) => { + dispatch({ type: ACTION.SET_ESTIMATED_MODEL_MEMORY_LIMIT, value }); + }; + const actions: ActionDispatchers = { closeModal, createAnalyticsJob, @@ -308,6 +312,7 @@ export const useCreateAnalyticsForm = (): CreateAnalyticsFormProps => { setJobConfig, startAnalyticsJob, switchToAdvancedEditor, + setEstimatedModelMemoryLimit, }; return { state, actions }; From eb40046b937e714739fd6479e5dc59a137e72c66 Mon Sep 17 00:00:00 2001 From: James Gowdy <jgowdy@elastic.co> Date: Wed, 4 Mar 2020 10:14:11 +0000 Subject: [PATCH 091/120] [ML] Fixing licensing after server NP cutover (#59275) --- .../legacy/plugins/ml/common/license/index.ts | 7 + .../plugins/ml/common/license/ml_license.ts | 78 ++++++++ .../plugins/ml/public/application/app.tsx | 11 +- .../anomalies_table/anomalies_table.test.js | 2 +- .../components/navigation_menu/main_tabs.tsx | 10 +- .../navigation_menu/navigation_menu.tsx | 2 +- .../datavisualizer_selector.tsx | 2 +- .../results_links/results_links.tsx | 2 +- .../datavisualizer/index_based/page.tsx | 2 +- .../license/__tests__/check_license.js | 36 ---- .../application/license/check_license.tsx | 160 ++++++----------- .../application/license/expired_warning.tsx | 26 +++ .../ml/public/application/license/index.ts | 13 ++ .../application/license/ml_client_license.ts | 51 ++++++ .../ml/public/application/management/index.ts | 29 ++- .../application/privilege/check_privilege.ts | 2 +- .../public/application/routing/resolvers.ts | 2 +- .../routes/datavisualizer/datavisualizer.tsx | 2 +- .../routes/datavisualizer/file_based.tsx | 4 +- .../routes/datavisualizer/index_based.tsx | 2 +- .../routes/new_job/index_or_search.tsx | 2 +- .../application/routing/routes/overview.tsx | 2 +- .../routing/routes/settings/calendar_list.tsx | 2 +- .../routes/settings/calendar_new_edit.tsx | 2 +- .../routing/routes/settings/filter_list.tsx | 2 +- .../routes/settings/filter_list_new_edit.tsx | 2 +- .../routing/routes/settings/settings.tsx | 2 +- .../calendars/edit/new_calendar.test.js | 2 +- .../calendars/list/calendars_list.test.js | 2 +- .../application/util/dependency_cache.ts | 1 + x-pack/legacy/plugins/ml/public/legacy.ts | 12 +- x-pack/legacy/plugins/ml/public/plugin.ts | 3 +- .../lib/check_license/check_license.test.ts | 167 ------------------ .../server/lib/check_license/check_license.ts | 82 --------- .../check_privileges/check_privileges.test.ts | 65 ++++--- .../lib/check_privileges/check_privileges.ts | 14 +- .../lib/{check_license => license}/index.ts | 2 +- .../server/lib/license/ml_server_license.ts | 35 ++++ .../ml/server/lib/sample_data_sets/index.ts | 2 +- .../lib/sample_data_sets/sample_data_sets.ts | 41 +++-- x-pack/plugins/ml/server/plugin.ts | 62 ++----- .../plugins/ml/server/routes/annotations.ts | 9 +- .../ml/server/routes/anomaly_detectors.ts | 33 ++-- x-pack/plugins/ml/server/routes/calendars.ts | 13 +- .../ml/server/routes/data_frame_analytics.ts | 25 ++- .../ml/server/routes/data_visualizer.ts | 7 +- x-pack/plugins/ml/server/routes/datafeeds.ts | 23 ++- .../ml/server/routes/fields_service.ts | 8 +- .../ml/server/routes/file_data_visualizer.ts | 7 +- x-pack/plugins/ml/server/routes/filters.ts | 15 +- x-pack/plugins/ml/server/routes/indices.ts | 5 +- .../ml/server/routes/job_audit_messages.ts | 7 +- .../plugins/ml/server/routes/job_service.ts | 42 +++-- .../ml/server/routes/job_validation.ts | 18 +- .../license_check_pre_routing_factory.ts | 33 ---- x-pack/plugins/ml/server/routes/modules.ts | 11 +- .../ml/server/routes/notification_settings.ts | 5 +- .../ml/server/routes/results_service.ts | 13 +- x-pack/plugins/ml/server/routes/system.ts | 19 +- x-pack/plugins/ml/server/types.ts | 3 +- .../translations/translations/ja-JP.json | 3 - .../translations/translations/zh-CN.json | 3 - 62 files changed, 535 insertions(+), 714 deletions(-) create mode 100644 x-pack/legacy/plugins/ml/common/license/index.ts create mode 100644 x-pack/legacy/plugins/ml/common/license/ml_license.ts delete mode 100644 x-pack/legacy/plugins/ml/public/application/license/__tests__/check_license.js create mode 100644 x-pack/legacy/plugins/ml/public/application/license/expired_warning.tsx create mode 100644 x-pack/legacy/plugins/ml/public/application/license/index.ts create mode 100644 x-pack/legacy/plugins/ml/public/application/license/ml_client_license.ts delete mode 100644 x-pack/plugins/ml/server/lib/check_license/check_license.test.ts delete mode 100644 x-pack/plugins/ml/server/lib/check_license/check_license.ts rename x-pack/plugins/ml/server/lib/{check_license => license}/index.ts (81%) create mode 100644 x-pack/plugins/ml/server/lib/license/ml_server_license.ts delete mode 100644 x-pack/plugins/ml/server/routes/license_check_pre_routing_factory.ts diff --git a/x-pack/legacy/plugins/ml/common/license/index.ts b/x-pack/legacy/plugins/ml/common/license/index.ts new file mode 100644 index 00000000000000..e901a9545897be --- /dev/null +++ b/x-pack/legacy/plugins/ml/common/license/index.ts @@ -0,0 +1,7 @@ +/* + * 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 { MlLicense, LicenseStatus, MINIMUM_FULL_LICENSE, MINIMUM_LICENSE } from './ml_license'; diff --git a/x-pack/legacy/plugins/ml/common/license/ml_license.ts b/x-pack/legacy/plugins/ml/common/license/ml_license.ts new file mode 100644 index 00000000000000..8b631bf6ffb46a --- /dev/null +++ b/x-pack/legacy/plugins/ml/common/license/ml_license.ts @@ -0,0 +1,78 @@ +/* + * 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, Subscription } from 'rxjs'; +import { ILicense, LICENSE_CHECK_STATE } from '../../../../../plugins/licensing/common/types'; +import { PLUGIN_ID } from '../constants/app'; + +export const MINIMUM_LICENSE = 'basic'; +export const MINIMUM_FULL_LICENSE = 'platinum'; + +export interface LicenseStatus { + isValid: boolean; + isSecurityEnabled: boolean; + message?: string; +} + +export class MlLicense { + private _licenseSubscription: Subscription | null = null; + private _license: ILicense | null = null; + private _isSecurityEnabled: boolean = false; + private _hasLicenseExpired: boolean = false; + private _isMlEnabled: boolean = false; + private _isMinimumLicense: boolean = false; + private _isFullLicense: boolean = false; + private _initialized: boolean = false; + + public setup( + license$: Observable<ILicense>, + postInitFunctions?: Array<(lic: MlLicense) => void> + ) { + this._licenseSubscription = license$.subscribe(async license => { + const { isEnabled: securityIsEnabled } = license.getFeature('security'); + + this._license = license; + this._isSecurityEnabled = securityIsEnabled; + this._hasLicenseExpired = this._license.status === 'expired'; + this._isMlEnabled = this._license.getFeature(PLUGIN_ID).isEnabled; + this._isMinimumLicense = + this._license.check(PLUGIN_ID, MINIMUM_LICENSE).state === LICENSE_CHECK_STATE.Valid; + this._isFullLicense = + this._license.check(PLUGIN_ID, MINIMUM_FULL_LICENSE).state === LICENSE_CHECK_STATE.Valid; + + if (this._initialized === false && postInitFunctions !== undefined) { + postInitFunctions.forEach(f => f(this)); + } + this._initialized = true; + }); + } + + public unsubscribe() { + if (this._licenseSubscription !== null) { + this._licenseSubscription.unsubscribe(); + } + } + + public isSecurityEnabled() { + return this._isSecurityEnabled; + } + + public hasLicenseExpired() { + return this._hasLicenseExpired; + } + + public isMlEnabled() { + return this._isMlEnabled; + } + + public isMinimumLicense() { + return this._isMinimumLicense; + } + + public isFullLicense() { + return this._isFullLicense; + } +} diff --git a/x-pack/legacy/plugins/ml/public/application/app.tsx b/x-pack/legacy/plugins/ml/public/application/app.tsx index 3acb24ac6e1733..4c956bfabecc91 100644 --- a/x-pack/legacy/plugins/ml/public/application/app.tsx +++ b/x-pack/legacy/plugins/ml/public/application/app.tsx @@ -13,15 +13,18 @@ import { AppMountParameters, CoreStart } from 'kibana/public'; import { DataPublicPluginStart } from 'src/plugins/data/public'; import { SecurityPluginSetup } from '../../../../../plugins/security/public'; +import { LicensingPluginSetup } from '../../../../../plugins/licensing/public'; import { KibanaContextProvider } from '../../../../../../src/plugins/kibana_react/public'; import { setDependencyCache, clearCache } from './util/dependency_cache'; +import { setLicenseCache } from './license'; import { MlRouter } from './routing'; export interface MlDependencies extends AppMountParameters { data: DataPublicPluginStart; security: SecurityPluginSetup; + licensing: LicensingPluginSetup; __LEGACY: { XSRF: string; }; @@ -36,14 +39,14 @@ const App: FC<AppProps> = ({ coreStart, deps }) => { setDependencyCache({ indexPatterns: deps.data.indexPatterns, timefilter: deps.data.query.timefilter, + fieldFormats: deps.data.fieldFormats, + autocomplete: deps.data.autocomplete, config: coreStart.uiSettings!, chrome: coreStart.chrome!, docLinks: coreStart.docLinks!, toastNotifications: coreStart.notifications.toasts, overlays: coreStart.overlays, recentlyAccessed: coreStart.chrome!.recentlyAccessed, - fieldFormats: deps.data.fieldFormats, - autocomplete: deps.data.autocomplete, basePath: coreStart.http.basePath, savedObjectsClient: coreStart.savedObjects.client, XSRF: deps.__LEGACY.XSRF, @@ -51,7 +54,11 @@ const App: FC<AppProps> = ({ coreStart, deps }) => { http: coreStart.http, security: deps.security, }); + + const mlLicense = setLicenseCache(deps.licensing); + deps.onAppLeave(actions => { + mlLicense.unsubscribe(); clearCache(); return actions.default(); }); diff --git a/x-pack/legacy/plugins/ml/public/application/components/anomalies_table/anomalies_table.test.js b/x-pack/legacy/plugins/ml/public/application/components/anomalies_table/anomalies_table.test.js index 206b9e01bab8c6..b881bfe4f1fe6b 100644 --- a/x-pack/legacy/plugins/ml/public/application/components/anomalies_table/anomalies_table.test.js +++ b/x-pack/legacy/plugins/ml/public/application/components/anomalies_table/anomalies_table.test.js @@ -11,7 +11,7 @@ import { getColumns } from './anomalies_table_columns'; jest.mock('../../privilege/check_privilege', () => ({ checkPermission: () => false, })); -jest.mock('../../license/check_license', () => ({ +jest.mock('../../license', () => ({ hasLicenseExpired: () => false, })); jest.mock('../../privilege/get_privileges', () => ({ diff --git a/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/main_tabs.tsx b/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/main_tabs.tsx index dce5e7ad52b090..695783883d02e5 100644 --- a/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/main_tabs.tsx +++ b/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/main_tabs.tsx @@ -81,13 +81,18 @@ export const MainTabs: FC<Props> = ({ tabId, disableLinks }) => { return ( <EuiTabs display="condensed"> {tabs.map((tab: Tab) => { - const id = tab.id; + const { id, disabled } = tab; const testSubject = TAB_DATA[id].testSubject; const defaultPathId = TAB_DATA[id].pathId || id; // globalState (e.g. selected jobs and time range) should be retained when changing pages. // appState will not be considered. const fullGlobalStateString = globalState !== undefined ? `?_g=${encode(globalState)}` : ''; - return ( + + return disabled ? ( + <EuiTab key={`${id}-key`} className={'mlNavigationMenu__mainTab'} disabled={true}> + {tab.name} + </EuiTab> + ) : ( <EuiLink data-test-subj={testSubject + (id === selectedTabId ? ' selected' : '')} href={`#/${defaultPathId}${fullGlobalStateString}`} @@ -98,7 +103,6 @@ export const MainTabs: FC<Props> = ({ tabId, disableLinks }) => { className={'mlNavigationMenu__mainTab'} onClick={() => onSelectedTabChanged(id)} isSelected={id === selectedTabId} - disabled={tab.disabled} > {tab.name} </EuiTab> diff --git a/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/navigation_menu.tsx b/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/navigation_menu.tsx index e7ba57e25354e8..6be2d18e597414 100644 --- a/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/navigation_menu.tsx +++ b/x-pack/legacy/plugins/ml/public/application/components/navigation_menu/navigation_menu.tsx @@ -7,7 +7,7 @@ import React, { Fragment, FC } from 'react'; import { EuiFlexGroup, EuiFlexItem, EuiHorizontalRule } from '@elastic/eui'; -import { isFullLicense } from '../../license/check_license'; +import { isFullLicense } from '../../license'; import { TopNav } from './top_nav'; import { MainTabs } from './main_tabs'; diff --git a/x-pack/legacy/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx b/x-pack/legacy/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx index 0f56f78c708ee0..254788c52a7a81 100644 --- a/x-pack/legacy/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx +++ b/x-pack/legacy/plugins/ml/public/application/datavisualizer/datavisualizer_selector.tsx @@ -22,7 +22,7 @@ import { import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; -import { isFullLicense } from '../license/check_license'; +import { isFullLicense } from '../license'; import { useTimefilter } from '../contexts/kibana'; import { NavigationMenu } from '../components/navigation_menu'; diff --git a/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/results_links/results_links.tsx b/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/results_links/results_links.tsx index debadba19051b7..dddf64ce2cfd36 100644 --- a/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/results_links/results_links.tsx +++ b/x-pack/legacy/plugins/ml/public/application/datavisualizer/file_based/components/results_links/results_links.tsx @@ -9,7 +9,7 @@ import moment from 'moment'; import { FormattedMessage } from '@kbn/i18n/react'; import { EuiFlexGroup, EuiFlexItem, EuiCard, EuiIcon } from '@elastic/eui'; import { ml } from '../../../../services/ml_api_service'; -import { isFullLicense } from '../../../../license/check_license'; +import { isFullLicense } from '../../../../license'; import { checkPermission } from '../../../../privilege/check_privilege'; import { mlNodesAvailable } from '../../../../ml_nodes_check/check_ml_nodes'; import { useMlKibana } from '../../../../contexts/kibana'; diff --git a/x-pack/legacy/plugins/ml/public/application/datavisualizer/index_based/page.tsx b/x-pack/legacy/plugins/ml/public/application/datavisualizer/index_based/page.tsx index 84c07651d323d7..fbf42ef62265c6 100644 --- a/x-pack/legacy/plugins/ml/public/application/datavisualizer/index_based/page.tsx +++ b/x-pack/legacy/plugins/ml/public/application/datavisualizer/index_based/page.tsx @@ -31,7 +31,7 @@ import { SavedSearchSavedObject } from '../../../../common/types/kibana'; import { NavigationMenu } from '../../components/navigation_menu'; import { ML_JOB_FIELD_TYPES } from '../../../../common/constants/field_types'; import { SEARCH_QUERY_LANGUAGE } from '../../../../common/constants/search'; -import { isFullLicense } from '../../license/check_license'; +import { isFullLicense } from '../../license'; import { checkPermission } from '../../privilege/check_privilege'; import { mlNodesAvailable } from '../../ml_nodes_check/check_ml_nodes'; import { FullTimeRangeSelector } from '../../components/full_time_range_selector'; diff --git a/x-pack/legacy/plugins/ml/public/application/license/__tests__/check_license.js b/x-pack/legacy/plugins/ml/public/application/license/__tests__/check_license.js deleted file mode 100644 index 9ce0ec04befb6e..00000000000000 --- a/x-pack/legacy/plugins/ml/public/application/license/__tests__/check_license.js +++ /dev/null @@ -1,36 +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 expect from '@kbn/expect'; -import { xpackInfo } from '../../../../../xpack_main/public/services/xpack_info'; -import { LICENSE_STATUS_VALID } from '../../../../../../common/constants/license_status'; -import { xpackFeatureAvailable } from '../check_license'; - -const initialInfo = { - features: { - watcher: { - status: LICENSE_STATUS_VALID, - }, - }, -}; - -describe('ML - check license', () => { - describe('xpackFeatureAvailable', () => { - beforeEach(() => { - xpackInfo.setAll(initialInfo); - }); - - it('returns true for enabled feature', () => { - const result = xpackFeatureAvailable('watcher'); - expect(result).to.be(true); - }); - - it('returns false for disabled feature', () => { - const result = xpackFeatureAvailable('noSuchFeature'); - expect(result).to.be(false); - }); - }); -}); diff --git a/x-pack/legacy/plugins/ml/public/application/license/check_license.tsx b/x-pack/legacy/plugins/ml/public/application/license/check_license.tsx index 4af753ddb4d1f2..be5b702742baaf 100644 --- a/x-pack/legacy/plugins/ml/public/application/license/check_license.tsx +++ b/x-pack/legacy/plugins/ml/public/application/license/check_license.tsx @@ -4,126 +4,74 @@ * you may not use this file except in compliance with the Elastic License. */ -import React from 'react'; -import { EuiCallOut } from '@elastic/eui'; -import { toMountPoint } from '../../../../../../../src/plugins/kibana_react/public'; -// @ts-ignore No declaration file for module -import { xpackInfo } from '../../../../xpack_main/public/services/xpack_info'; -import { LICENSE_TYPE } from '../../../common/constants/license'; -import { LICENSE_STATUS_VALID } from '../../../../../common/constants/license_status'; -import { getOverlays } from '../util/dependency_cache'; +import { LicensingPluginSetup } from '../../../../../../plugins/licensing/public'; +import { MlClientLicense } from './ml_client_license'; -let licenseHasExpired = true; -let licenseType: LICENSE_TYPE | null = null; -let expiredLicenseBannerId: string; +let mlLicense: MlClientLicense | null = null; -export function checkFullLicense() { - const features = getFeatures(); - licenseType = features.licenseType; - - if (features.isAvailable === false) { - // ML is not enabled - return redirectToKibana(); - } else if (features.licenseType === LICENSE_TYPE.BASIC) { - // ML is enabled, but only with a basic or gold license - return redirectToBasic(); - } else { - // ML is enabled - setLicenseExpired(features); - return Promise.resolve(features); - } +/** + * Create a new mlLicense and cache it for later checks + * + * @export + * @param {LicensingPluginSetup} licensingSetup + * @returns {MlClientLicense} + */ +export function setLicenseCache(licensingSetup: LicensingPluginSetup) { + mlLicense = new MlClientLicense(); + mlLicense.setup(licensingSetup.license$); + return mlLicense; } -export function checkBasicLicense() { - const features = getFeatures(); - licenseType = features.licenseType; - - if (features.isAvailable === false) { - // ML is not enabled - return redirectToKibana(); - } else { - // ML is enabled - setLicenseExpired(features); - return Promise.resolve(features); +/** + * Used as routing resolver to stop the loading of a page if the current license + * is a trial, platinum or enterprise. + * + * @export + * @returns {Promise<void>} Promise which resolves if the license is trial, platinum or enterprise and rejects if it isn't. + */ +export async function checkFullLicense() { + if (mlLicense === null) { + // this should never happen + console.error('ML Licensing not initialized'); // eslint-disable-line + return Promise.reject(); } -} -// a wrapper for checkFullLicense which doesn't resolve if the license has expired. -// this is used by all create jobs pages to redirect back to the jobs list -// if the user's license has expired. -export function checkLicenseExpired() { - return checkFullLicense() - .then((features: any) => { - if (features.hasExpired) { - window.location.href = '#/jobs'; - return Promise.reject(); - } else { - return Promise.resolve(features); - } - }) - .catch(() => { - return Promise.reject(); - }); + return mlLicense.fullLicenseResolver(); } -function setLicenseExpired(features: any) { - licenseHasExpired = features.hasExpired || false; - // If the license has expired ML app will still work for 7 days and then - // the job management endpoints (e.g. create job, start datafeed) will be restricted. - // Therefore we need to keep the app enabled but show an info banner to the user. - if (licenseHasExpired) { - const message = features.message; - if (expiredLicenseBannerId === undefined) { - // Only show the banner once with no way to dismiss it - const overlays = getOverlays(); - expiredLicenseBannerId = overlays.banners.add( - toMountPoint(<EuiCallOut iconType="iInCircle" color="warning" title={message} />) - ); - } +/** + * Used as routing resolver to stop the loading of a page if the current license + * is at least basic. + * + * @export + * @returns {Promise<void>} Promise resolves if the license is at least basic and rejects if it isn't. + */ +export async function checkBasicLicense() { + if (mlLicense === null) { + // this should never happen + console.error('ML Licensing not initialized'); // eslint-disable-line + return Promise.reject(); } -} -// Temporary hack for cutting over server to NP -function getFeatures() { - return { - isAvailable: true, - showLinks: true, - enableLinks: true, - licenseType: 1, - hasExpired: false, - }; - // return xpackInfo.get('features.ml'); -} - -function redirectToKibana() { - window.location.href = '/'; - return Promise.reject(); -} -function redirectToBasic() { - window.location.href = '#/datavisualizer'; - return Promise.reject(); + return mlLicense.basicLicenseResolver(); } +/** + * Check to see if the current license has expired + * + * @export + * @returns {boolean} + */ export function hasLicenseExpired() { - return licenseHasExpired; + return mlLicense !== null && mlLicense.hasLicenseExpired(); } +/** + * Check to see if the current license is trial, platinum or enterprise. + * + * @export + * @returns {boolean} + */ export function isFullLicense() { - return licenseType === LICENSE_TYPE.FULL; -} - -export function xpackFeatureAvailable(feature: string) { - // each plugin can register their own set of features. - // so we need specific checks for each one. - // this list can grow if we need to check other plugin's features. - switch (feature) { - case 'watcher': - // watcher only has a license status feature - // if watcher is disabled in kibana.yml, the feature is completely missing from xpackInfo - return xpackInfo.get(`features.${feature}.status`, false) === LICENSE_STATUS_VALID; - default: - // historically plugins have used `isAvailable` as a catch all for - // license and feature enabled checks - return xpackInfo.get(`features.${feature}.isAvailable`, false); - } + return mlLicense !== null && mlLicense.isFullLicense(); } diff --git a/x-pack/legacy/plugins/ml/public/application/license/expired_warning.tsx b/x-pack/legacy/plugins/ml/public/application/license/expired_warning.tsx new file mode 100644 index 00000000000000..22cb3260d69692 --- /dev/null +++ b/x-pack/legacy/plugins/ml/public/application/license/expired_warning.tsx @@ -0,0 +1,26 @@ +/* + * 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 { i18n } from '@kbn/i18n'; +import { EuiCallOut } from '@elastic/eui'; +import { toMountPoint } from '../../../../../../../src/plugins/kibana_react/public'; +import { getOverlays } from '../util/dependency_cache'; + +let expiredLicenseBannerId: string; + +export function showExpiredLicenseWarning() { + if (expiredLicenseBannerId === undefined) { + const message = i18n.translate('xpack.ml.checkLicense.licenseHasExpiredMessage', { + defaultMessage: 'Your Machine Learning license has expired.', + }); + // Only show the banner once with no way to dismiss it + const overlays = getOverlays(); + expiredLicenseBannerId = overlays.banners.add( + toMountPoint(<EuiCallOut iconType="iInCircle" color="warning" title={message} />) + ); + } +} diff --git a/x-pack/legacy/plugins/ml/public/application/license/index.ts b/x-pack/legacy/plugins/ml/public/application/license/index.ts new file mode 100644 index 00000000000000..0b6866d52d070b --- /dev/null +++ b/x-pack/legacy/plugins/ml/public/application/license/index.ts @@ -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 { + checkBasicLicense, + checkFullLicense, + hasLicenseExpired, + isFullLicense, + setLicenseCache, +} from './check_license'; diff --git a/x-pack/legacy/plugins/ml/public/application/license/ml_client_license.ts b/x-pack/legacy/plugins/ml/public/application/license/ml_client_license.ts new file mode 100644 index 00000000000000..13809e15135e80 --- /dev/null +++ b/x-pack/legacy/plugins/ml/public/application/license/ml_client_license.ts @@ -0,0 +1,51 @@ +/* + * 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 { MlLicense } from '../../../common/license'; +import { showExpiredLicenseWarning } from './expired_warning'; + +export class MlClientLicense extends MlLicense { + fullLicenseResolver() { + if (this.isMlEnabled() === false || this.isMinimumLicense() === false) { + // ML is not enabled or the license isn't at least basic + return redirectToKibana(); + } + + if (this.isFullLicense() === false) { + // ML is enabled, but only with a basic or gold license + return redirectToBasic(); + } + + // ML is enabled + if (this.hasLicenseExpired()) { + showExpiredLicenseWarning(); + } + return Promise.resolve(); + } + + basicLicenseResolver() { + if (this.isMlEnabled() === false || this.isMinimumLicense() === false) { + // ML is not enabled or the license isn't at least basic + return redirectToKibana(); + } + + // ML is enabled + if (this.hasLicenseExpired()) { + showExpiredLicenseWarning(); + } + return Promise.resolve(); + } +} + +function redirectToKibana() { + window.location.href = '/'; + return Promise.reject(); +} + +function redirectToBasic() { + window.location.href = '#/datavisualizer'; + return Promise.reject(); +} diff --git a/x-pack/legacy/plugins/ml/public/application/management/index.ts b/x-pack/legacy/plugins/ml/public/application/management/index.ts index a05de8b0d08802..16bb3ddfd1c9b4 100644 --- a/x-pack/legacy/plugins/ml/public/application/management/index.ts +++ b/x-pack/legacy/plugins/ml/public/application/management/index.ts @@ -10,21 +10,36 @@ * you may not use this file except in compliance with the Elastic License. */ +import { npSetup } from 'ui/new_platform'; import { management } from 'ui/management'; import { i18n } from '@kbn/i18n'; import chrome from 'ui/chrome'; import { metadata } from 'ui/metadata'; -// @ts-ignore No declaration file for module -import { xpackInfo } from '../../../../xpack_main/public/services/xpack_info'; import { JOBS_LIST_PATH } from './management_urls'; -import { LICENSE_TYPE } from '../../../common/constants/license'; import { setDependencyCache } from '../util/dependency_cache'; import './jobs_list'; +import { + LicensingPluginSetup, + LICENSE_CHECK_STATE, +} from '../../../../../../plugins/licensing/public'; +import { PLUGIN_ID } from '../../../common/constants/app'; +import { MINIMUM_FULL_LICENSE } from '../../../common/license'; -if ( - xpackInfo.get('features.ml.showLinks', false) === true && - xpackInfo.get('features.ml.licenseType') === LICENSE_TYPE.FULL -) { +type PluginsSetupExtended = typeof npSetup.plugins & { + // adds licensing which isn't in the PluginsSetup interface, but does exist + licensing: LicensingPluginSetup; +}; + +const plugins = npSetup.plugins as PluginsSetupExtended; +const licencingSubscription = plugins.licensing.license$.subscribe(license => { + if (license.check(PLUGIN_ID, MINIMUM_FULL_LICENSE).state === LICENSE_CHECK_STATE.Valid) { + initManagementSection(); + // unsubscribe, we only want to register the plugin once. + licencingSubscription.unsubscribe(); + } +}); + +function initManagementSection() { const legacyBasePath = { prepend: chrome.addBasePath, get: chrome.getBasePath, diff --git a/x-pack/legacy/plugins/ml/public/application/privilege/check_privilege.ts b/x-pack/legacy/plugins/ml/public/application/privilege/check_privilege.ts index 6cc06231a08d04..ec9695a2ce6683 100644 --- a/x-pack/legacy/plugins/ml/public/application/privilege/check_privilege.ts +++ b/x-pack/legacy/plugins/ml/public/application/privilege/check_privilege.ts @@ -6,7 +6,7 @@ import { i18n } from '@kbn/i18n'; -import { hasLicenseExpired } from '../license/check_license'; +import { hasLicenseExpired } from '../license'; import { Privileges, getDefaultPrivileges } from '../../../common/types/privileges'; import { getPrivileges, getManageMlPrivileges } from './get_privileges'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/resolvers.ts b/x-pack/legacy/plugins/ml/public/application/routing/resolvers.ts index 5fc1ea533e87f9..acaf3f3acd0c80 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/resolvers.ts +++ b/x-pack/legacy/plugins/ml/public/application/routing/resolvers.ts @@ -5,7 +5,7 @@ */ import { loadIndexPatterns, loadSavedSearches } from '../util/index_utils'; -import { checkFullLicense } from '../license/check_license'; +import { checkFullLicense } from '../license'; import { checkGetJobsPrivilege } from '../privilege/check_privilege'; import { getMlNodeCount } from '../ml_nodes_check/check_ml_nodes'; import { loadMlServerInfo } from '../services/ml_server_info'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/datavisualizer.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/datavisualizer.tsx index e89834018f5e6a..d257a9c080c355 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/datavisualizer.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/datavisualizer.tsx @@ -15,7 +15,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { DatavisualizerSelector } from '../../../datavisualizer'; -import { checkBasicLicense } from '../../../license/check_license'; +import { checkBasicLicense } from '../../../license'; import { checkFindFileStructurePrivilege } from '../../../privilege/check_privilege'; import { DATA_VISUALIZER_BREADCRUMB, ML_BREADCRUMB } from '../../breadcrumbs'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/file_based.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/file_based.tsx index b4ccccd0776eb4..174b3e3b4b3385 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/file_based.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/file_based.tsx @@ -16,11 +16,10 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { FileDataVisualizerPage } from '../../../datavisualizer/file_based'; -import { checkBasicLicense } from '../../../license/check_license'; +import { checkBasicLicense } from '../../../license'; import { checkFindFileStructurePrivilege } from '../../../privilege/check_privilege'; import { loadIndexPatterns } from '../../../util/index_utils'; -import { getMlNodeCount } from '../../../ml_nodes_check'; import { DATA_VISUALIZER_BREADCRUMB, ML_BREADCRUMB } from '../../breadcrumbs'; const breadcrumbs = [ @@ -45,7 +44,6 @@ const PageWrapper: FC<PageProps> = ({ location, deps }) => { checkBasicLicense, loadIndexPatterns: () => loadIndexPatterns(deps.indexPatterns), checkFindFileStructurePrivilege, - getMlNodeCount, }); return ( <PageLoader context={context}> diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/index_based.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/index_based.tsx index 74ab916cb443fc..a3dbc9f97124c0 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/index_based.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/datavisualizer/index_based.tsx @@ -11,7 +11,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { Page } from '../../../datavisualizer/index_based'; -import { checkBasicLicense } from '../../../license/check_license'; +import { checkBasicLicense } from '../../../license'; import { checkGetJobsPrivilege } from '../../../privilege/check_privilege'; import { loadIndexPatterns } from '../../../util/index_utils'; import { checkMlNodesAvailable } from '../../../ml_nodes_check'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/new_job/index_or_search.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/new_job/index_or_search.tsx index ae35d783517d3d..9411b415e4e4d1 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/new_job/index_or_search.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/new_job/index_or_search.tsx @@ -11,7 +11,7 @@ import { useResolver } from '../../use_resolver'; import { basicResolvers } from '../../resolvers'; import { Page, preConfiguredJobRedirect } from '../../../jobs/new_job/pages/index_or_search'; import { ANOMALY_DETECTION_BREADCRUMB, ML_BREADCRUMB } from '../../breadcrumbs'; -import { checkBasicLicense } from '../../../license/check_license'; +import { checkBasicLicense } from '../../../license'; import { loadIndexPatterns } from '../../../util/index_utils'; import { checkGetJobsPrivilege } from '../../../privilege/check_privilege'; import { checkMlNodesAvailable } from '../../../ml_nodes_check'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/overview.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/overview.tsx index b1e00158efb94a..ccb99985cb70ca 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/overview.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/overview.tsx @@ -12,7 +12,7 @@ import { MlRoute, PageLoader, PageProps } from '../router'; import { useResolver } from '../use_resolver'; import { OverviewPage } from '../../overview'; -import { checkFullLicense } from '../../license/check_license'; +import { checkFullLicense } from '../../license'; import { checkGetJobsPrivilege } from '../../privilege/check_privilege'; import { getMlNodeCount } from '../../ml_nodes_check'; import { loadMlServerInfo } from '../../services/ml_server_info'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_list.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_list.tsx index c1bfaa2fe6c1ee..9d5c4e9c0b0a0a 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_list.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_list.tsx @@ -16,7 +16,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license/check_license'; +import { checkFullLicense } from '../../../license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { getMlNodeCount } from '../../../ml_nodes_check/check_ml_nodes'; import { CalendarsList } from '../../../settings/calendars'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_new_edit.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_new_edit.tsx index 7af2e49e3a69e9..bf039e3bd2354b 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_new_edit.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/calendar_new_edit.tsx @@ -16,7 +16,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license/check_license'; +import { checkFullLicense } from '../../../license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { checkMlNodesAvailable } from '../../../ml_nodes_check/check_ml_nodes'; import { NewCalendar } from '../../../settings/calendars'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list.tsx index 9c5c06b76247c4..6839ad833cb066 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list.tsx @@ -16,7 +16,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license/check_license'; +import { checkFullLicense } from '../../../license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { getMlNodeCount } from '../../../ml_nodes_check/check_ml_nodes'; import { FilterLists } from '../../../settings/filter_lists'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list_new_edit.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list_new_edit.tsx index 752b889490e58f..7b8bd6c3c81ac3 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list_new_edit.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/filter_list_new_edit.tsx @@ -16,7 +16,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license/check_license'; +import { checkFullLicense } from '../../../license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { checkMlNodesAvailable } from '../../../ml_nodes_check/check_ml_nodes'; import { EditFilterList } from '../../../settings/filter_lists'; diff --git a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/settings.tsx b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/settings.tsx index 10efb2dcc60c78..10ccc0987fe5d1 100644 --- a/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/settings.tsx +++ b/x-pack/legacy/plugins/ml/public/application/routing/routes/settings/settings.tsx @@ -15,7 +15,7 @@ import { MlRoute, PageLoader, PageProps } from '../../router'; import { useResolver } from '../../use_resolver'; import { useTimefilter } from '../../../contexts/kibana'; -import { checkFullLicense } from '../../../license/check_license'; +import { checkFullLicense } from '../../../license'; import { checkGetJobsPrivilege, checkPermission } from '../../../privilege/check_privilege'; import { getMlNodeCount } from '../../../ml_nodes_check/check_ml_nodes'; import { Settings } from '../../../settings'; diff --git a/x-pack/legacy/plugins/ml/public/application/settings/calendars/edit/new_calendar.test.js b/x-pack/legacy/plugins/ml/public/application/settings/calendars/edit/new_calendar.test.js index 8dc174040f9c86..5f61ccf47e9d72 100644 --- a/x-pack/legacy/plugins/ml/public/application/settings/calendars/edit/new_calendar.test.js +++ b/x-pack/legacy/plugins/ml/public/application/settings/calendars/edit/new_calendar.test.js @@ -10,7 +10,7 @@ jest.mock('../../../components/navigation_menu', () => ({ jest.mock('../../../privilege/check_privilege', () => ({ checkPermission: () => true, })); -jest.mock('../../../license/check_license', () => ({ +jest.mock('../../../license', () => ({ hasLicenseExpired: () => false, isFullLicense: () => false, })); diff --git a/x-pack/legacy/plugins/ml/public/application/settings/calendars/list/calendars_list.test.js b/x-pack/legacy/plugins/ml/public/application/settings/calendars/list/calendars_list.test.js index 677703bceeca75..3ea8e0c39fbb22 100644 --- a/x-pack/legacy/plugins/ml/public/application/settings/calendars/list/calendars_list.test.js +++ b/x-pack/legacy/plugins/ml/public/application/settings/calendars/list/calendars_list.test.js @@ -16,7 +16,7 @@ jest.mock('../../../components/navigation_menu', () => ({ jest.mock('../../../privilege/check_privilege', () => ({ checkPermission: () => true, })); -jest.mock('../../../license/check_license', () => ({ +jest.mock('../../../license', () => ({ hasLicenseExpired: () => false, isFullLicense: () => false, })); diff --git a/x-pack/legacy/plugins/ml/public/application/util/dependency_cache.ts b/x-pack/legacy/plugins/ml/public/application/util/dependency_cache.ts index 6d1dfa96ca03e8..c167d7e7c3d42b 100644 --- a/x-pack/legacy/plugins/ml/public/application/util/dependency_cache.ts +++ b/x-pack/legacy/plugins/ml/public/application/util/dependency_cache.ts @@ -76,6 +76,7 @@ export function setDependencyCache(deps: Partial<DependencyCache>) { cache.XSRF = deps.XSRF || null; cache.application = deps.application || null; cache.http = deps.http || null; + cache.security = deps.security || null; } export function getTimefilter() { diff --git a/x-pack/legacy/plugins/ml/public/legacy.ts b/x-pack/legacy/plugins/ml/public/legacy.ts index 7dfcf6a99c2135..0c6c0bd8dd29e2 100644 --- a/x-pack/legacy/plugins/ml/public/legacy.ts +++ b/x-pack/legacy/plugins/ml/public/legacy.ts @@ -8,14 +8,24 @@ import chrome from 'ui/chrome'; import { npSetup, npStart } from 'ui/new_platform'; import { PluginInitializerContext } from 'src/core/public'; import { SecurityPluginSetup } from '../../../../plugins/security/public'; +import { LicensingPluginSetup } from '../../../../plugins/licensing/public'; import { plugin } from '.'; const pluginInstance = plugin({} as PluginInitializerContext); +type PluginsSetupExtended = typeof npSetup.plugins & { + // adds plugins which aren't in the PluginsSetup interface, but do exist + security: SecurityPluginSetup; + licensing: LicensingPluginSetup; +}; + +const setupDependencies = npSetup.plugins as PluginsSetupExtended; + export const setup = pluginInstance.setup(npSetup.core, { data: npStart.plugins.data, - security: ((npSetup.plugins as unknown) as { security: SecurityPluginSetup }).security, // security isn't in the PluginsSetup interface, but does exist + security: setupDependencies.security, + licensing: setupDependencies.licensing, __LEGACY: { XSRF: chrome.getXsrfToken(), }, diff --git a/x-pack/legacy/plugins/ml/public/plugin.ts b/x-pack/legacy/plugins/ml/public/plugin.ts index 1061bb1b6b62b8..c0369a74c070ac 100644 --- a/x-pack/legacy/plugins/ml/public/plugin.ts +++ b/x-pack/legacy/plugins/ml/public/plugin.ts @@ -8,7 +8,7 @@ import { Plugin, CoreStart, CoreSetup } from 'src/core/public'; import { MlDependencies } from './application/app'; export class MlPlugin implements Plugin<Setup, Start> { - setup(core: CoreSetup, { data, security, __LEGACY }: MlDependencies) { + setup(core: CoreSetup, { data, security, licensing, __LEGACY }: MlDependencies) { core.application.register({ id: 'ml', title: 'Machine learning', @@ -23,6 +23,7 @@ export class MlPlugin implements Plugin<Setup, Start> { data, __LEGACY, security, + licensing, }); }, }); diff --git a/x-pack/plugins/ml/server/lib/check_license/check_license.test.ts b/x-pack/plugins/ml/server/lib/check_license/check_license.test.ts deleted file mode 100644 index 942dbe37226175..00000000000000 --- a/x-pack/plugins/ml/server/lib/check_license/check_license.test.ts +++ /dev/null @@ -1,167 +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 expect from '@kbn/expect'; -import sinon from 'sinon'; -import { set } from 'lodash'; -import { LicenseCheckResult } from '../../types'; -import { checkLicense } from './check_license'; - -describe('check_license', () => { - let mockLicenseInfo: LicenseCheckResult; - beforeEach(() => (mockLicenseInfo = {} as LicenseCheckResult)); - - describe('license information is undefined', () => { - it('should set isAvailable to false', () => { - expect(checkLicense(undefined as any).isAvailable).to.be(false); - }); - - it('should set showLinks to true', () => { - expect(checkLicense(undefined as any).showLinks).to.be(true); - }); - - it('should set enableLinks to false', () => { - expect(checkLicense(undefined as any).enableLinks).to.be(false); - }); - - it('should set a message', () => { - expect(checkLicense(undefined as any).message).to.not.be(undefined); - }); - }); - - describe('license information is not available', () => { - beforeEach(() => { - mockLicenseInfo.isAvailable = false; - }); - - it('should set isAvailable to false', () => { - expect(checkLicense(mockLicenseInfo).isAvailable).to.be(false); - }); - - it('should set showLinks to true', () => { - expect(checkLicense(mockLicenseInfo).showLinks).to.be(true); - }); - - it('should set enableLinks to false', () => { - expect(checkLicense(mockLicenseInfo).enableLinks).to.be(false); - }); - - it('should set a message', () => { - expect(checkLicense(mockLicenseInfo).message).to.not.be(undefined); - }); - }); - - describe('license information is available', () => { - beforeEach(() => { - mockLicenseInfo.isAvailable = true; - mockLicenseInfo.type = 'basic'; - }); - - describe('& ML is disabled in Elasticsearch', () => { - beforeEach(() => { - set( - mockLicenseInfo, - 'feature', - sinon - .stub() - .withArgs('ml') - .returns({ isEnabled: false }) - ); - }); - - it('should set showLinks to false', () => { - expect(checkLicense(mockLicenseInfo).showLinks).to.be(false); - }); - - it('should set isAvailable to false', () => { - expect(checkLicense(mockLicenseInfo).isAvailable).to.be(false); - }); - - it('should set enableLinks to false', () => { - expect(checkLicense(mockLicenseInfo).enableLinks).to.be(false); - }); - - it('should set a message', () => { - expect(checkLicense(mockLicenseInfo).message).to.not.be(undefined); - }); - }); - - describe('& ML is enabled in Elasticsearch', () => { - beforeEach(() => { - mockLicenseInfo.isEnabled = true; - }); - - describe('& license is >= platinum', () => { - beforeEach(() => { - mockLicenseInfo.type = 'platinum'; - }); - describe('& license is active', () => { - beforeEach(() => { - mockLicenseInfo.isActive = true; - }); - - it('should set isAvailable to true', () => { - expect(checkLicense(mockLicenseInfo).isAvailable).to.be(true); - }); - - it('should set showLinks to true', () => { - expect(checkLicense(mockLicenseInfo).showLinks).to.be(true); - }); - - it('should set enableLinks to true', () => { - expect(checkLicense(mockLicenseInfo).enableLinks).to.be(true); - }); - - it('should not set a message', () => { - expect(checkLicense(mockLicenseInfo).message).to.be(undefined); - }); - }); - - describe('& license is expired', () => { - beforeEach(() => { - mockLicenseInfo.isActive = false; - }); - - it('should set isAvailable to true', () => { - expect(checkLicense(mockLicenseInfo).isAvailable).to.be(true); - }); - - it('should set showLinks to true', () => { - expect(checkLicense(mockLicenseInfo).showLinks).to.be(true); - }); - - it('should set enableLinks to true', () => { - expect(checkLicense(mockLicenseInfo).enableLinks).to.be(true); - }); - - it('should set a message', () => { - expect(checkLicense(mockLicenseInfo).message).to.not.be(undefined); - }); - }); - }); - - describe('& license is basic', () => { - beforeEach(() => { - mockLicenseInfo.type = 'basic'; - }); - - describe('& license is active', () => { - beforeEach(() => { - mockLicenseInfo.isActive = true; - }); - - it('should set isAvailable to true', () => { - expect(checkLicense(mockLicenseInfo).isAvailable).to.be(true); - }); - - it('should set showLinks to true', () => { - expect(checkLicense(mockLicenseInfo).showLinks).to.be(true); - }); - }); - }); - }); - }); -}); diff --git a/x-pack/plugins/ml/server/lib/check_license/check_license.ts b/x-pack/plugins/ml/server/lib/check_license/check_license.ts deleted file mode 100644 index 5bf3d590a1912d..00000000000000 --- a/x-pack/plugins/ml/server/lib/check_license/check_license.ts +++ /dev/null @@ -1,82 +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 { i18n } from '@kbn/i18n'; -import { - LICENSE_TYPE, - VALID_FULL_LICENSE_MODES, -} from '../../../../../legacy/plugins/ml/common/constants/license'; -import { LicenseCheckResult } from '../../types'; - -interface Response { - isAvailable: boolean; - showLinks: boolean; - enableLinks: boolean; - licenseType?: LICENSE_TYPE; - hasExpired?: boolean; - message?: string; -} - -export function checkLicense(licenseCheckResult: LicenseCheckResult): Response { - // If, for some reason, we cannot get the license information - // from Elasticsearch, assume worst case and disable the Machine Learning UI - if (licenseCheckResult === undefined || !licenseCheckResult.isAvailable) { - return { - isAvailable: false, - showLinks: true, - enableLinks: false, - message: i18n.translate( - 'xpack.ml.checkLicense.licenseInformationNotAvailableThisTimeMessage', - { - defaultMessage: - 'You cannot use Machine Learning because license information is not available at this time.', - } - ), - }; - } - - const featureEnabled = licenseCheckResult.isEnabled; - if (!featureEnabled) { - return { - isAvailable: false, - showLinks: false, - enableLinks: false, - message: i18n.translate('xpack.ml.checkLicense.mlIsUnavailableMessage', { - defaultMessage: 'Machine Learning is unavailable', - }), - }; - } - - const isLicenseModeValid = - licenseCheckResult.type && VALID_FULL_LICENSE_MODES.includes(licenseCheckResult.type); - const licenseType = isLicenseModeValid === true ? LICENSE_TYPE.FULL : LICENSE_TYPE.BASIC; - const isLicenseActive = licenseCheckResult.isActive; - const licenseTypeName = licenseCheckResult.type; - - // Platinum or trial license is valid but not active, i.e. expired - if (licenseType === LICENSE_TYPE.FULL && isLicenseActive === false) { - return { - isAvailable: true, - showLinks: true, - enableLinks: true, - hasExpired: true, - licenseType, - message: i18n.translate('xpack.ml.checkLicense.licenseHasExpiredMessage', { - defaultMessage: 'Your {licenseTypeName} Machine Learning license has expired.', - values: { licenseTypeName }, - }), - }; - } - - // License is valid and active - return { - isAvailable: true, - showLinks: true, - enableLinks: true, - licenseType, - hasExpired: false, - }; -} diff --git a/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.test.ts b/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.test.ts index 0690aa53576a5a..4dd9100e1b67a1 100644 --- a/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.test.ts +++ b/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.test.ts @@ -7,30 +7,27 @@ import { callWithRequestProvider } from './__mocks__/call_with_request'; import { privilegesProvider } from './check_privileges'; import { mlPrivileges } from './privileges'; +import { MlLicense } from '../../../../../legacy/plugins/ml/common/license'; -const licenseCheckResultWithSecurity = { - isAvailable: true, - isEnabled: true, - isSecurityDisabled: false, - type: 'platinum', - isActive: true, -}; +const mlLicenseWithSecurity = { + isSecurityEnabled: () => true, + isFullLicense: () => true, +} as MlLicense; -const licenseCheckResultWithOutSecurity = { - ...licenseCheckResultWithSecurity, - isSecurityDisabled: true, -}; +const mlLicenseWithOutSecurity = { + isSecurityEnabled: () => false, + isFullLicense: () => true, +} as MlLicense; -const licenseCheckResultWithOutSecurityBasicLicense = { - ...licenseCheckResultWithSecurity, - isSecurityDisabled: true, - type: 'basic', -}; +const mlLicenseWithOutSecurityBasicLicense = { + isSecurityEnabled: () => false, + isFullLicense: () => false, +} as MlLicense; -const licenseCheckResultWithSecurityBasicLicense = { - ...licenseCheckResultWithSecurity, - type: 'basic', -}; +const mlLicenseWithSecurityBasicLicense = { + isSecurityEnabled: () => true, + isFullLicense: () => false, +} as MlLicense; const mlIsEnabled = async () => true; const mlIsNotEnabled = async () => false; @@ -47,7 +44,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurity, + mlLicenseWithSecurity, mlIsEnabled ); const { capabilities } = await getPrivileges(); @@ -62,7 +59,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurity, + mlLicenseWithSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -97,7 +94,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('fullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurity, + mlLicenseWithSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -132,7 +129,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('upgradeWithFullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurity, + mlLicenseWithSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -167,7 +164,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('upgradeWithPartialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurity, + mlLicenseWithSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -202,7 +199,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurityBasicLicense, + mlLicenseWithSecurityBasicLicense, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -237,7 +234,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('fullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurityBasicLicense, + mlLicenseWithSecurityBasicLicense, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -272,7 +269,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('fullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithSecurity, + mlLicenseWithSecurity, mlIsNotEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -309,7 +306,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithOutSecurity, + mlLicenseWithOutSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -344,7 +341,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('upgradeWithFullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithOutSecurity, + mlLicenseWithOutSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -379,7 +376,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('upgradeWithPartialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithOutSecurity, + mlLicenseWithOutSecurity, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -414,7 +411,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithOutSecurityBasicLicense, + mlLicenseWithOutSecurityBasicLicense, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -449,7 +446,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('fullPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithOutSecurityBasicLicense, + mlLicenseWithOutSecurityBasicLicense, mlIsEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); @@ -484,7 +481,7 @@ describe('check_privileges', () => { const callWithRequest = callWithRequestProvider('partialPrivileges'); const { getPrivileges } = privilegesProvider( callWithRequest, - licenseCheckResultWithOutSecurity, + mlLicenseWithOutSecurity, mlIsNotEnabled ); const { capabilities, upgradeInProgress, mlFeatureEnabledInSpace } = await getPrivileges(); diff --git a/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.ts b/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.ts index a427780d13344a..f26040385b9f50 100644 --- a/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.ts +++ b/x-pack/plugins/ml/server/lib/check_privileges/check_privileges.ts @@ -10,9 +10,7 @@ import { getDefaultPrivileges, } from '../../../../../legacy/plugins/ml/common/types/privileges'; import { upgradeCheckProvider } from './upgrade'; -import { checkLicense } from '../check_license'; -import { LICENSE_TYPE } from '../../../../../legacy/plugins/ml/common/constants/license'; -import { LicenseCheckResult } from '../../types'; +import { MlLicense } from '../../../../../legacy/plugins/ml/common/license'; import { mlPrivileges } from './privileges'; @@ -27,7 +25,7 @@ interface Response { export function privilegesProvider( callAsCurrentUser: IScopedClusterClient['callAsCurrentUser'], - licenseCheckResult: LicenseCheckResult, + mlLicense: MlLicense, isMlEnabledInSpace: () => Promise<boolean>, ignoreSpaces: boolean = false ) { @@ -37,9 +35,9 @@ export function privilegesProvider( const privileges = getDefaultPrivileges(); const upgradeInProgress = await isUpgradeInProgress(); - const securityDisabled = licenseCheckResult.isSecurityDisabled; - const license = checkLicense(licenseCheckResult); - const isPlatinumOrTrialLicense = license.licenseType === LICENSE_TYPE.FULL; + const isSecurityEnabled = mlLicense.isSecurityEnabled(); + + const isPlatinumOrTrialLicense = mlLicense.isFullLicense(); const mlFeatureEnabledInSpace = await isMlEnabledInSpace(); const setGettingPrivileges = isPlatinumOrTrialLicense @@ -61,7 +59,7 @@ export function privilegesProvider( }; } - if (securityDisabled === true) { + if (isSecurityEnabled === false) { if (upgradeInProgress === true) { // if security is disabled and an upgrade in is progress, // force all "getting" privileges to be true diff --git a/x-pack/plugins/ml/server/lib/check_license/index.ts b/x-pack/plugins/ml/server/lib/license/index.ts similarity index 81% rename from x-pack/plugins/ml/server/lib/check_license/index.ts rename to x-pack/plugins/ml/server/lib/license/index.ts index f2c070fd44b6e6..9c4271b65b00df 100644 --- a/x-pack/plugins/ml/server/lib/check_license/index.ts +++ b/x-pack/plugins/ml/server/lib/license/index.ts @@ -4,4 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -export { checkLicense } from './check_license'; +export { MlServerLicense } from './ml_server_license'; diff --git a/x-pack/plugins/ml/server/lib/license/ml_server_license.ts b/x-pack/plugins/ml/server/lib/license/ml_server_license.ts new file mode 100644 index 00000000000000..7602ab4919e818 --- /dev/null +++ b/x-pack/plugins/ml/server/lib/license/ml_server_license.ts @@ -0,0 +1,35 @@ +/* + * 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 { + KibanaRequest, + KibanaResponseFactory, + RequestHandler, + RequestHandlerContext, +} from 'src/core/server'; + +import { MlLicense } from '../../../../../legacy/plugins/ml/common/license'; + +export class MlServerLicense extends MlLicense { + public fullLicenseAPIGuard(handler: RequestHandler<any, any, any>) { + return guard(() => this.isFullLicense(), handler); + } + public basicLicenseAPIGuard(handler: RequestHandler<any, any, any>) { + return guard(() => this.isMinimumLicense(), handler); + } +} + +function guard(check: () => boolean, handler: RequestHandler<any, any, any>) { + return ( + context: RequestHandlerContext, + request: KibanaRequest, + response: KibanaResponseFactory + ) => { + if (check() === false) { + return response.forbidden(); + } + return handler(context, request, response); + }; +} diff --git a/x-pack/plugins/ml/server/lib/sample_data_sets/index.ts b/x-pack/plugins/ml/server/lib/sample_data_sets/index.ts index c922c9eb7c0291..50553cfa7b8893 100644 --- a/x-pack/plugins/ml/server/lib/sample_data_sets/index.ts +++ b/x-pack/plugins/ml/server/lib/sample_data_sets/index.ts @@ -4,4 +4,4 @@ * you may not use this file except in compliance with the Elastic License. */ -export { addLinksToSampleDatasets } from './sample_data_sets'; +export { initSampleDataSets } from './sample_data_sets'; diff --git a/x-pack/plugins/ml/server/lib/sample_data_sets/sample_data_sets.ts b/x-pack/plugins/ml/server/lib/sample_data_sets/sample_data_sets.ts index 2082538adfed1e..3fd99051a24841 100644 --- a/x-pack/plugins/ml/server/lib/sample_data_sets/sample_data_sets.ts +++ b/x-pack/plugins/ml/server/lib/sample_data_sets/sample_data_sets.ts @@ -5,23 +5,32 @@ */ import { i18n } from '@kbn/i18n'; +import { MlLicense } from '../../../../../legacy/plugins/ml/common/license'; +import { PluginsSetup } from '../../types'; -export function addLinksToSampleDatasets(server: any) { - const sampleDataLinkLabel = i18n.translate('xpack.ml.sampleDataLinkLabel', { - defaultMessage: 'ML jobs', - }); +export function initSampleDataSets(mlLicense: MlLicense, plugins: PluginsSetup) { + if (mlLicense.isMlEnabled() && mlLicense.isFullLicense()) { + const sampleDataLinkLabel = i18n.translate('xpack.ml.sampleDataLinkLabel', { + defaultMessage: 'ML jobs', + }); + const { addAppLinksToSampleDataset } = plugins.home.sampleData; - server.addAppLinksToSampleDataset('ecommerce', { - path: - '/app/ml#/modules/check_view_or_create?id=sample_data_ecommerce&index=ff959d40-b880-11e8-a6d9-e546fe2bba5f', - label: sampleDataLinkLabel, - icon: 'machineLearningApp', - }); + addAppLinksToSampleDataset('ecommerce', [ + { + path: + '/app/ml#/modules/check_view_or_create?id=sample_data_ecommerce&index=ff959d40-b880-11e8-a6d9-e546fe2bba5f', + label: sampleDataLinkLabel, + icon: 'machineLearningApp', + }, + ]); - server.addAppLinksToSampleDataset('logs', { - path: - '/app/ml#/modules/check_view_or_create?id=sample_data_weblogs&index=90943e30-9a47-11e8-b64d-95841ca0b247', - label: sampleDataLinkLabel, - icon: 'machineLearningApp', - }); + addAppLinksToSampleDataset('logs', [ + { + path: + '/app/ml#/modules/check_view_or_create?id=sample_data_weblogs&index=90943e30-9a47-11e8-b64d-95841ca0b247', + label: sampleDataLinkLabel, + icon: 'machineLearningApp', + }, + ]); + } } diff --git a/x-pack/plugins/ml/server/plugin.ts b/x-pack/plugins/ml/server/plugin.ts index b5adf1fedec791..a3f57337384329 100644 --- a/x-pack/plugins/ml/server/plugin.ts +++ b/x-pack/plugins/ml/server/plugin.ts @@ -6,15 +6,14 @@ import { i18n } from '@kbn/i18n'; import { CoreSetup, IScopedClusterClient, Logger, PluginInitializerContext } from 'src/core/server'; -import { LicenseCheckResult, PluginsSetup, RouteInitialization } from './types'; +import { PluginsSetup, RouteInitialization } from './types'; import { PLUGIN_ID } from '../../../legacy/plugins/ml/common/constants/app'; -import { VALID_FULL_LICENSE_MODES } from '../../../legacy/plugins/ml/common/constants/license'; // @ts-ignore: could not find declaration file for module import { elasticsearchJsPlugin } from './client/elasticsearch_ml'; import { makeMlUsageCollector } from './lib/ml_telemetry'; import { initMlServerLog } from './client/log'; -import { addLinksToSampleDatasets } from './lib/sample_data_sets'; +import { initSampleDataSets } from './lib/sample_data_sets'; import { annotationRoutes } from './routes/annotations'; import { calendars } from './routes/calendars'; @@ -33,6 +32,8 @@ import { jobValidationRoutes } from './routes/job_validation'; import { notificationRoutes } from './routes/notification_settings'; import { resultsServiceRoutes } from './routes/results_service'; import { systemRoutes } from './routes/system'; +import { MlLicense } from '../../../legacy/plugins/ml/common/license'; +import { MlServerLicense } from './lib/license'; declare module 'kibana/server' { interface RequestHandlerContext { @@ -43,25 +44,17 @@ declare module 'kibana/server' { } export class MlServerPlugin { - private readonly pluginId: string = PLUGIN_ID; private log: Logger; private version: string; - - private licenseCheckResults: LicenseCheckResult = { - isAvailable: false, - isActive: false, - isEnabled: false, - isSecurityDisabled: false, - }; + private mlLicense: MlServerLicense; constructor(ctx: PluginInitializerContext) { this.log = ctx.logger.get(); this.version = ctx.env.packageInfo.branch; + this.mlLicense = new MlServerLicense(); } public setup(coreSetup: CoreSetup, plugins: PluginsSetup) { - let sampleLinksInitialized = false; - plugins.features.registerFeature({ id: PLUGIN_ID, name: i18n.translate('xpack.ml.featureRegistry.mlFeatureName', { @@ -87,6 +80,10 @@ export class MlServerPlugin { }, }); + this.mlLicense.setup(plugins.licensing.license$, [ + (mlLicense: MlLicense) => initSampleDataSets(mlLicense, plugins), + ]); + // Can access via router's handler function 'context' parameter - context.ml.mlClient const mlClient = coreSetup.elasticsearch.createClient(PLUGIN_ID, { plugins: [elasticsearchJsPlugin], @@ -100,7 +97,7 @@ export class MlServerPlugin { const routeInit: RouteInitialization = { router: coreSetup.http.createRouter(), - getLicenseCheckResults: () => this.licenseCheckResults, + mlLicense: this.mlLicense, }; annotationRoutes(routeInit, plugins.security); @@ -127,42 +124,11 @@ export class MlServerPlugin { coreSetup.getStartServices().then(([core]) => { makeMlUsageCollector(plugins.usageCollection, core.savedObjects); }); - - plugins.licensing.license$.subscribe(async license => { - const { isEnabled: securityIsEnabled } = license.getFeature('security'); - // @ts-ignore isAvailable is not read - const { isAvailable, isEnabled } = license.getFeature(this.pluginId); - - this.licenseCheckResults = { - isActive: license.isActive, - // This `isAvailable` check for the ml plugin returns false for a basic license - // ML should be available on basic with reduced functionality (only file data visualizer) - // TODO: This will need to be updated in the second step of this cutover to NP. - isAvailable: isEnabled, - isEnabled, - isSecurityDisabled: securityIsEnabled === false, - type: license.type, - }; - - if (sampleLinksInitialized === false) { - sampleLinksInitialized = true; - // Add links to the Kibana sample data sets if ml is enabled - // and license is trial or platinum. - if (isEnabled === true && plugins.home) { - if ( - this.licenseCheckResults.type && - VALID_FULL_LICENSE_MODES.includes(this.licenseCheckResults.type) - ) { - addLinksToSampleDatasets({ - addAppLinksToSampleDataset: plugins.home.sampleData.addAppLinksToSampleDataset, - }); - } - } - } - }); } public start() {} - public stop() {} + public stop() { + this.mlLicense.unsubscribe(); + } } diff --git a/x-pack/plugins/ml/server/routes/annotations.ts b/x-pack/plugins/ml/server/routes/annotations.ts index bcc0238c366a3d..16483bf8b887ee 100644 --- a/x-pack/plugins/ml/server/routes/annotations.ts +++ b/x-pack/plugins/ml/server/routes/annotations.ts @@ -13,7 +13,6 @@ import { SecurityPluginSetup } from '../../../security/server'; import { isAnnotationsFeatureAvailable } from '../lib/check_annotations'; import { annotationServiceProvider } from '../models/annotation_service'; import { wrapError } from '../client/error_wrapper'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; import { deleteAnnotationSchema, @@ -36,7 +35,7 @@ function getAnnotationsFeatureUnavailableErrorMessage() { * Routes for annotations */ export function annotationRoutes( - { router, getLicenseCheckResults }: RouteInitialization, + { router, mlLicense }: RouteInitialization, securityPlugin: SecurityPluginSetup ) { /** @@ -61,7 +60,7 @@ export function annotationRoutes( body: schema.object(getAnnotationsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { getAnnotations } = annotationServiceProvider(context); const resp = await getAnnotations(request.body); @@ -92,7 +91,7 @@ export function annotationRoutes( body: schema.object(indexAnnotationSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const annotationsFeatureAvailable = await isAnnotationsFeatureAvailable( context.ml!.mlClient.callAsCurrentUser @@ -131,7 +130,7 @@ export function annotationRoutes( params: schema.object(deleteAnnotationSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const annotationsFeatureAvailable = await isAnnotationsFeatureAvailable( context.ml!.mlClient.callAsCurrentUser diff --git a/x-pack/plugins/ml/server/routes/anomaly_detectors.ts b/x-pack/plugins/ml/server/routes/anomaly_detectors.ts index 7bf2fb7bc6903d..5e1ca72a7200d4 100644 --- a/x-pack/plugins/ml/server/routes/anomaly_detectors.ts +++ b/x-pack/plugins/ml/server/routes/anomaly_detectors.ts @@ -6,7 +6,6 @@ import { schema } from '@kbn/config-schema'; import { wrapError } from '../client/error_wrapper'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; import { anomalyDetectionJobSchema, @@ -16,7 +15,7 @@ import { /** * Routes for the anomaly detectors */ -export function jobRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function jobRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup AnomalyDetectors * @@ -32,7 +31,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio path: '/api/ml/anomaly_detectors', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.jobs'); return response.ok({ @@ -62,7 +61,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.jobs', { jobId }); @@ -90,7 +89,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio path: '/api/ml/anomaly_detectors/_stats', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.jobStats'); return response.ok({ @@ -120,7 +119,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.jobStats', { jobId }); @@ -152,7 +151,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio body: schema.object({ ...anomalyDetectionJobSchema }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.addJob', { @@ -187,7 +186,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio body: schema.object({ ...anomalyDetectionUpdateJobSchema }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.updateJob', { @@ -221,7 +220,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.openJob', { @@ -254,7 +253,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const options: { jobId: string; force?: boolean } = { jobId: request.params.jobId, @@ -291,7 +290,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const options: { jobId: string; force?: boolean } = { jobId: request.params.jobId, @@ -326,7 +325,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio body: schema.any(), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.validateDetector', { body: request.body, @@ -359,7 +358,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio body: schema.object({ duration: schema.any() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const jobId = request.params.jobId; const duration = request.body.duration; @@ -407,7 +406,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.records', { jobId: request.params.jobId, @@ -456,7 +455,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.buckets', { jobId: request.params.jobId, @@ -499,7 +498,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.overallBuckets', { jobId: request.params.jobId, @@ -537,7 +536,7 @@ export function jobRoutes({ router, getLicenseCheckResults }: RouteInitializatio }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const options = { jobId: request.params.jobId, diff --git a/x-pack/plugins/ml/server/routes/calendars.ts b/x-pack/plugins/ml/server/routes/calendars.ts index ae494d3578890b..5d1161e928d110 100644 --- a/x-pack/plugins/ml/server/routes/calendars.ts +++ b/x-pack/plugins/ml/server/routes/calendars.ts @@ -6,7 +6,6 @@ import { RequestHandlerContext } from 'src/core/server'; import { schema } from '@kbn/config-schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { calendarSchema } from './schemas/calendars_schema'; @@ -42,13 +41,13 @@ function getCalendarsByIds(context: RequestHandlerContext, calendarIds: string) return cal.getCalendarsByIds(calendarIds); } -export function calendars({ router, getLicenseCheckResults }: RouteInitialization) { +export function calendars({ router, mlLicense }: RouteInitialization) { router.get( { path: '/api/ml/calendars', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getAllCalendars(context); @@ -68,7 +67,7 @@ export function calendars({ router, getLicenseCheckResults }: RouteInitializatio params: schema.object({ calendarIds: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { let returnValue; try { const calendarIds = request.params.calendarIds.split(','); @@ -95,7 +94,7 @@ export function calendars({ router, getLicenseCheckResults }: RouteInitializatio body: schema.object({ ...calendarSchema }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const body = request.body; const resp = await newCalendar(context, body); @@ -117,7 +116,7 @@ export function calendars({ router, getLicenseCheckResults }: RouteInitializatio body: schema.object({ ...calendarSchema }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { calendarId } = request.params; const body = request.body; @@ -139,7 +138,7 @@ export function calendars({ router, getLicenseCheckResults }: RouteInitializatio params: schema.object({ calendarId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { calendarId } = request.params; const resp = await deleteCalendar(context, calendarId); diff --git a/x-pack/plugins/ml/server/routes/data_frame_analytics.ts b/x-pack/plugins/ml/server/routes/data_frame_analytics.ts index 0a93320c05eb5b..7ed1aa02b24ab8 100644 --- a/x-pack/plugins/ml/server/routes/data_frame_analytics.ts +++ b/x-pack/plugins/ml/server/routes/data_frame_analytics.ts @@ -7,7 +7,6 @@ import { schema } from '@kbn/config-schema'; import { wrapError } from '../client/error_wrapper'; import { analyticsAuditMessagesProvider } from '../models/data_frame_analytics/analytics_audit_messages'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; import { dataAnalyticsJobConfigSchema, @@ -18,7 +17,7 @@ import { /** * Routes for the data frame analytics */ -export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function dataFrameAnalyticsRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup DataFrameAnalytics * @@ -36,7 +35,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou params: schema.object({ analyticsId: schema.maybe(schema.string()) }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.getDataFrameAnalytics'); return response.ok({ @@ -64,7 +63,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou params: schema.object({ analyticsId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.getDataFrameAnalytics', { @@ -91,7 +90,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou path: '/api/ml/data_frame/analytics/_stats', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser( 'ml.getDataFrameAnalyticsStats' @@ -121,7 +120,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou params: schema.object({ analyticsId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser( @@ -159,7 +158,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou body: schema.object(dataAnalyticsJobConfigSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser( @@ -192,7 +191,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou body: schema.object({ ...dataAnalyticsEvaluateSchema }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser( 'ml.evaluateDataFrameAnalytics', @@ -232,7 +231,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou body: schema.object({ ...dataAnalyticsExplainSchema }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const results = await context.ml!.mlClient.callAsCurrentUser( 'ml.explainDataFrameAnalytics', @@ -267,7 +266,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser( @@ -303,7 +302,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { analyticsId } = request.params; const results = await context.ml!.mlClient.callAsCurrentUser('ml.startDataFrameAnalytics', { @@ -337,7 +336,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const options: { analyticsId: string; force?: boolean | undefined } = { analyticsId: request.params.analyticsId, @@ -377,7 +376,7 @@ export function dataFrameAnalyticsRoutes({ router, getLicenseCheckResults }: Rou params: schema.object({ analyticsId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { analyticsId } = request.params; const { getAnalyticsAuditMessages } = analyticsAuditMessagesProvider( diff --git a/x-pack/plugins/ml/server/routes/data_visualizer.ts b/x-pack/plugins/ml/server/routes/data_visualizer.ts index e4d068784def1b..b37c80b815e1a6 100644 --- a/x-pack/plugins/ml/server/routes/data_visualizer.ts +++ b/x-pack/plugins/ml/server/routes/data_visualizer.ts @@ -12,7 +12,6 @@ import { dataVisualizerFieldStatsSchema, dataVisualizerOverallStatsSchema, } from './schemas/data_visualizer_schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; function getOverallStats( @@ -68,7 +67,7 @@ function getStatsForFields( /** * Routes for the index data visualizer. */ -export function dataVisualizerRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function dataVisualizerRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup DataVisualizer * @@ -83,7 +82,7 @@ export function dataVisualizerRoutes({ router, getLicenseCheckResults }: RouteIn path: '/api/ml/data_visualizer/get_field_stats/{indexPatternTitle}', validate: dataVisualizerFieldStatsSchema, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const { params: { indexPatternTitle }, @@ -135,7 +134,7 @@ export function dataVisualizerRoutes({ router, getLicenseCheckResults }: RouteIn path: '/api/ml/data_visualizer/get_overall_stats/{indexPatternTitle}', validate: dataVisualizerOverallStatsSchema, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const { params: { indexPatternTitle }, diff --git a/x-pack/plugins/ml/server/routes/datafeeds.ts b/x-pack/plugins/ml/server/routes/datafeeds.ts index e3bce4c1328e4e..c1ee839340996a 100644 --- a/x-pack/plugins/ml/server/routes/datafeeds.ts +++ b/x-pack/plugins/ml/server/routes/datafeeds.ts @@ -5,7 +5,6 @@ */ import { schema } from '@kbn/config-schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { startDatafeedSchema, datafeedConfigSchema } from './schemas/datafeeds_schema'; @@ -13,7 +12,7 @@ import { startDatafeedSchema, datafeedConfigSchema } from './schemas/datafeeds_s /** * Routes for datafeed service */ -export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function dataFeedRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup DatafeedService * @@ -26,7 +25,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali path: '/api/ml/datafeeds', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeeds'); @@ -53,7 +52,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali params: schema.object({ datafeedId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeeds', { datafeedId }); @@ -79,7 +78,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali path: '/api/ml/datafeeds/_stats', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeedStats'); @@ -106,7 +105,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali params: schema.object({ datafeedId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeedStats', { @@ -137,7 +136,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali body: datafeedConfigSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.addDatafeed', { @@ -169,7 +168,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali body: datafeedConfigSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.updateDatafeed', { @@ -201,7 +200,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali query: schema.maybe(schema.object({ force: schema.maybe(schema.any()) })), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const options: { datafeedId: string; force?: boolean } = { datafeedId: request.params.jobId, @@ -237,7 +236,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali body: startDatafeedSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const { start, end } = request.body; @@ -271,7 +270,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali params: schema.object({ datafeedId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; @@ -302,7 +301,7 @@ export function dataFeedRoutes({ router, getLicenseCheckResults }: RouteInitiali params: schema.object({ datafeedId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const datafeedId = request.params.datafeedId; const resp = await context.ml!.mlClient.callAsCurrentUser('ml.datafeedPreview', { diff --git a/x-pack/plugins/ml/server/routes/fields_service.ts b/x-pack/plugins/ml/server/routes/fields_service.ts index bc092190c2c620..f4d4e5759a1054 100644 --- a/x-pack/plugins/ml/server/routes/fields_service.ts +++ b/x-pack/plugins/ml/server/routes/fields_service.ts @@ -5,7 +5,6 @@ */ import { RequestHandlerContext } from 'src/core/server'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { @@ -29,7 +28,7 @@ function getTimeFieldRange(context: RequestHandlerContext, payload: any) { /** * Routes for fields service */ -export function fieldsService({ router, getLicenseCheckResults }: RouteInitialization) { +export function fieldsService({ router, mlLicense }: RouteInitialization) { /** * @apiGroup FieldsService * @@ -44,7 +43,8 @@ export function fieldsService({ router, getLicenseCheckResults }: RouteInitializ body: getCardinalityOfFieldsSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getCardinalityOfFields(context, request.body); @@ -71,7 +71,7 @@ export function fieldsService({ router, getLicenseCheckResults }: RouteInitializ body: getTimeFieldRangeSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const resp = await getTimeFieldRange(context, request.body); diff --git a/x-pack/plugins/ml/server/routes/file_data_visualizer.ts b/x-pack/plugins/ml/server/routes/file_data_visualizer.ts index 1d724a8843350d..69ec79704deee6 100644 --- a/x-pack/plugins/ml/server/routes/file_data_visualizer.ts +++ b/x-pack/plugins/ml/server/routes/file_data_visualizer.ts @@ -18,7 +18,6 @@ import { Mappings, } from '../models/file_data_visualizer'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; import { incrementFileDataVisualizerIndexCreationCount } from '../lib/ml_telemetry'; @@ -43,7 +42,7 @@ function importData( /** * Routes for the file data visualizer. */ -export function fileDataVisualizerRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function fileDataVisualizerRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup FileDataVisualizer * @@ -82,7 +81,7 @@ export function fileDataVisualizerRoutes({ router, getLicenseCheckResults }: Rou }, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const result = await analyzeFiles(context, request.body, request.query); return response.ok({ body: result }); @@ -124,7 +123,7 @@ export function fileDataVisualizerRoutes({ router, getLicenseCheckResults }: Rou }, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const { id } = request.query; const { index, data, settings, mappings, ingestPipeline } = request.body; diff --git a/x-pack/plugins/ml/server/routes/filters.ts b/x-pack/plugins/ml/server/routes/filters.ts index d5530668b26062..1f8891c247c67c 100644 --- a/x-pack/plugins/ml/server/routes/filters.ts +++ b/x-pack/plugins/ml/server/routes/filters.ts @@ -6,7 +6,6 @@ import { RequestHandlerContext } from 'src/core/server'; import { schema } from '@kbn/config-schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { createFilterSchema, updateFilterSchema } from './schemas/filters_schema'; @@ -44,7 +43,7 @@ function deleteFilter(context: RequestHandlerContext, filterId: string) { return mgr.deleteFilter(filterId); } -export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function filtersRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup Filters * @@ -60,7 +59,7 @@ export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitializ path: '/api/ml/filters', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getAllFilters(context); @@ -90,7 +89,7 @@ export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitializ params: schema.object({ filterId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getFilter(context, request.params.filterId); return response.ok({ @@ -119,7 +118,7 @@ export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitializ body: schema.object(createFilterSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const body = request.body; const resp = await newFilter(context, body); @@ -151,7 +150,7 @@ export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitializ body: schema.object(updateFilterSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { filterId } = request.params; const body = request.body; @@ -182,7 +181,7 @@ export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitializ params: schema.object({ filterId: schema.string() }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { filterId } = request.params; const resp = await deleteFilter(context, filterId); @@ -212,7 +211,7 @@ export function filtersRoutes({ router, getLicenseCheckResults }: RouteInitializ path: '/api/ml/filters/_stats', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getAllFilterStats(context); diff --git a/x-pack/plugins/ml/server/routes/indices.ts b/x-pack/plugins/ml/server/routes/indices.ts index e01a7a0cbad287..fe66cc8b01396d 100644 --- a/x-pack/plugins/ml/server/routes/indices.ts +++ b/x-pack/plugins/ml/server/routes/indices.ts @@ -6,13 +6,12 @@ import { schema } from '@kbn/config-schema'; import { wrapError } from '../client/error_wrapper'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization } from '../types'; /** * Indices routes. */ -export function indicesRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function indicesRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup Indices * @@ -30,7 +29,7 @@ export function indicesRoutes({ router, getLicenseCheckResults }: RouteInitializ }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { body: { index, fields: requestFields }, diff --git a/x-pack/plugins/ml/server/routes/job_audit_messages.ts b/x-pack/plugins/ml/server/routes/job_audit_messages.ts index 38df28e17ec0d6..5c6d8023cc172d 100644 --- a/x-pack/plugins/ml/server/routes/job_audit_messages.ts +++ b/x-pack/plugins/ml/server/routes/job_audit_messages.ts @@ -5,7 +5,6 @@ */ import { schema } from '@kbn/config-schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { jobAuditMessagesProvider } from '../models/job_audit_messages'; @@ -13,7 +12,7 @@ import { jobAuditMessagesProvider } from '../models/job_audit_messages'; /** * Routes for job audit message routes */ -export function jobAuditMessagesRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function jobAuditMessagesRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup JobAuditMessages * @@ -29,7 +28,7 @@ export function jobAuditMessagesRoutes({ router, getLicenseCheckResults }: Route query: schema.maybe(schema.object({ from: schema.maybe(schema.any()) })), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { getJobAuditMessages } = jobAuditMessagesProvider( context.ml!.mlClient.callAsCurrentUser @@ -62,7 +61,7 @@ export function jobAuditMessagesRoutes({ router, getLicenseCheckResults }: Route query: schema.maybe(schema.object({ from: schema.maybe(schema.any()) })), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { getJobAuditMessages } = jobAuditMessagesProvider( context.ml!.mlClient.callAsCurrentUser diff --git a/x-pack/plugins/ml/server/routes/job_service.ts b/x-pack/plugins/ml/server/routes/job_service.ts index e15888088d3a13..9ad2f80a1e66b4 100644 --- a/x-pack/plugins/ml/server/routes/job_service.ts +++ b/x-pack/plugins/ml/server/routes/job_service.ts @@ -7,7 +7,6 @@ import Boom from 'boom'; import { schema } from '@kbn/config-schema'; import { IScopedClusterClient } from 'src/core/server'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { @@ -28,12 +27,11 @@ import { categorizationExamplesProvider } from '../models/job_service/new_job'; /** * Routes for job service */ -export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function jobServiceRoutes({ router, mlLicense }: RouteInitialization) { async function hasPermissionToCreateJobs( callAsCurrentUser: IScopedClusterClient['callAsCurrentUser'] ) { - const { isSecurityDisabled } = getLicenseCheckResults(); - if (isSecurityDisabled === true) { + if (mlLicense.isSecurityEnabled() === false) { return true; } @@ -63,7 +61,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(forceStartDatafeedSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { forceStartDatafeeds } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { datafeedIds, start, end } = request.body; @@ -92,7 +90,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(datafeedIdsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { stopDatafeeds } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { datafeedIds } = request.body; @@ -121,7 +119,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(jobIdsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { deleteJobs } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -150,7 +148,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(jobIdsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { closeJobs } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -179,7 +177,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(jobIdsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobsSummary } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -208,7 +206,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(jobsWithTimerangeSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobsWithTimerange } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { dateFormatTz } = request.body; @@ -237,7 +235,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(jobIdsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { createFullJobsList } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -264,7 +262,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia path: '/api/ml/jobs/groups', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { getAllGroups } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const resp = await getAllGroups(); @@ -292,7 +290,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(updateGroupsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { updateGroups } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobs } = request.body; @@ -319,7 +317,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia path: '/api/ml/jobs/deleting_jobs_tasks', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { deletingJobTasks } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const resp = await deletingJobTasks(); @@ -347,7 +345,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(jobIdsSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { jobsExist } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobIds } = request.body; @@ -377,7 +375,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia query: schema.maybe(schema.object({ rollup: schema.maybe(schema.string()) })), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { indexPattern } = request.params; const isRollup = request.query.rollup === 'true'; @@ -408,7 +406,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(chartSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { indexPatternTitle, @@ -461,7 +459,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(chartSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { indexPatternTitle, @@ -509,7 +507,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia path: '/api/ml/jobs/all_jobs_and_group_ids', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { getAllJobAndGroupIds } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const resp = await getAllJobAndGroupIds(); @@ -537,7 +535,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(lookBackProgressSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { getLookBackProgress } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobId, start, end } = request.body; @@ -566,7 +564,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(categorizationFieldExamplesSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { // due to the use of the _analyze endpoint which is called by the kibana user, // basic job creation privileges are required to use this endpoint @@ -625,7 +623,7 @@ export function jobServiceRoutes({ router, getLicenseCheckResults }: RouteInitia body: schema.object(topCategoriesSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { topCategories } = jobServiceProvider(context.ml!.mlClient.callAsCurrentUser); const { jobId, count } = request.body; diff --git a/x-pack/plugins/ml/server/routes/job_validation.ts b/x-pack/plugins/ml/server/routes/job_validation.ts index ae2e6885ba0f3b..7d5a7a22859779 100644 --- a/x-pack/plugins/ml/server/routes/job_validation.ts +++ b/x-pack/plugins/ml/server/routes/job_validation.ts @@ -7,7 +7,6 @@ import Boom from 'boom'; import { RequestHandlerContext } from 'src/core/server'; import { schema, TypeOf } from '@kbn/config-schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { @@ -25,10 +24,7 @@ type CalculateModelMemoryLimitPayload = TypeOf<typeof modelMemoryLimitSchema>; /** * Routes for job validation */ -export function jobValidationRoutes( - { getLicenseCheckResults, router }: RouteInitialization, - version: string -) { +export function jobValidationRoutes({ router, mlLicense }: RouteInitialization, version: string) { function calculateModelMemoryLimit( context: RequestHandlerContext, payload: CalculateModelMemoryLimitPayload @@ -70,13 +66,13 @@ export function jobValidationRoutes( body: estimateBucketSpanSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { let errorResp; const resp = await estimateBucketSpanFactory( context.ml!.mlClient.callAsCurrentUser, context.core.elasticsearch.adminClient.callAsInternalUser, - getLicenseCheckResults().isSecurityDisabled + mlLicense.isSecurityEnabled() === false )(request.body) // this catch gets triggered when the estimation code runs without error // but isn't able to come up with a bucket span estimation. @@ -117,7 +113,7 @@ export function jobValidationRoutes( body: modelMemoryLimitSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await calculateModelMemoryLimit(context, request.body); @@ -144,7 +140,7 @@ export function jobValidationRoutes( body: schema.object(validateCardinalitySchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await validateCardinality( context.ml!.mlClient.callAsCurrentUser, @@ -174,7 +170,7 @@ export function jobValidationRoutes( body: validateJobSchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { // version corresponds to the version used in documentation links. const resp = await validateJob( @@ -182,7 +178,7 @@ export function jobValidationRoutes( request.body, version, context.core.elasticsearch.adminClient.callAsInternalUser, - getLicenseCheckResults().isSecurityDisabled + mlLicense.isSecurityEnabled() === false ); return response.ok({ diff --git a/x-pack/plugins/ml/server/routes/license_check_pre_routing_factory.ts b/x-pack/plugins/ml/server/routes/license_check_pre_routing_factory.ts deleted file mode 100644 index a371af1abf2d13..00000000000000 --- a/x-pack/plugins/ml/server/routes/license_check_pre_routing_factory.ts +++ /dev/null @@ -1,33 +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 { - KibanaRequest, - KibanaResponseFactory, - RequestHandler, - RequestHandlerContext, -} from 'src/core/server'; -import { LicenseCheckResult } from '../types'; - -export const licensePreRoutingFactory = ( - getLicenseCheckResults: () => LicenseCheckResult, - handler: RequestHandler<any, any, any> -): RequestHandler<any, any, any> => { - // License checking and enable/disable logic - return function licensePreRouting( - ctx: RequestHandlerContext, - request: KibanaRequest, - response: KibanaResponseFactory - ) { - const licenseCheckResults = getLicenseCheckResults(); - - if (!licenseCheckResults.isAvailable) { - return response.forbidden(); - } - - return handler(ctx, request, response); - }; -}; diff --git a/x-pack/plugins/ml/server/routes/modules.ts b/x-pack/plugins/ml/server/routes/modules.ts index c9b005d4e43f92..a51718acb74254 100644 --- a/x-pack/plugins/ml/server/routes/modules.ts +++ b/x-pack/plugins/ml/server/routes/modules.ts @@ -9,7 +9,6 @@ import { RequestHandlerContext } from 'kibana/server'; import { DatafeedOverride, JobOverride } from '../../../../legacy/plugins/ml/common/types/modules'; import { wrapError } from '../client/error_wrapper'; import { DataRecognizer } from '../models/data_recognizer'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { getModuleIdParamSchema, setupModuleBodySchema } from './schemas/modules'; import { RouteInitialization } from '../types'; @@ -65,7 +64,7 @@ function dataRecognizerJobsExist(context: RequestHandlerContext, moduleId: strin /** * Recognizer routes. */ -export function dataRecognizer({ router, getLicenseCheckResults }: RouteInitialization) { +export function dataRecognizer({ router, mlLicense }: RouteInitialization) { /** * @apiGroup DataRecognizer * @@ -84,7 +83,7 @@ export function dataRecognizer({ router, getLicenseCheckResults }: RouteInitiali }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { indexPatternTitle } = request.params; const results = await recognize(context, indexPatternTitle); @@ -114,7 +113,7 @@ export function dataRecognizer({ router, getLicenseCheckResults }: RouteInitiali }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { let { moduleId } = request.params; if (moduleId === '') { @@ -150,7 +149,7 @@ export function dataRecognizer({ router, getLicenseCheckResults }: RouteInitiali body: setupModuleBodySchema, }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { moduleId } = request.params; @@ -207,7 +206,7 @@ export function dataRecognizer({ router, getLicenseCheckResults }: RouteInitiali }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const { moduleId } = request.params; const result = await dataRecognizerJobsExist(context, moduleId); diff --git a/x-pack/plugins/ml/server/routes/notification_settings.ts b/x-pack/plugins/ml/server/routes/notification_settings.ts index b68d2441333f93..59458b1e486db2 100644 --- a/x-pack/plugins/ml/server/routes/notification_settings.ts +++ b/x-pack/plugins/ml/server/routes/notification_settings.ts @@ -4,14 +4,13 @@ * you may not use this file except in compliance with the Elastic License. */ -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; /** * Routes for notification settings */ -export function notificationRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function notificationRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup NotificationSettings * @@ -24,7 +23,7 @@ export function notificationRoutes({ router, getLicenseCheckResults }: RouteInit path: '/api/ml/notification_settings', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const params = { includeDefaults: true, diff --git a/x-pack/plugins/ml/server/routes/results_service.ts b/x-pack/plugins/ml/server/routes/results_service.ts index 77c998acc9f27a..7a12e5196b9a5d 100644 --- a/x-pack/plugins/ml/server/routes/results_service.ts +++ b/x-pack/plugins/ml/server/routes/results_service.ts @@ -6,7 +6,6 @@ import { RequestHandlerContext } from 'src/core/server'; import { schema } from '@kbn/config-schema'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { wrapError } from '../client/error_wrapper'; import { RouteInitialization } from '../types'; import { @@ -74,7 +73,7 @@ function getPartitionFieldsValues(context: RequestHandlerContext, payload: any) /** * Routes for results service */ -export function resultsServiceRoutes({ router, getLicenseCheckResults }: RouteInitialization) { +export function resultsServiceRoutes({ router, mlLicense }: RouteInitialization) { /** * @apiGroup ResultsService * @@ -89,7 +88,7 @@ export function resultsServiceRoutes({ router, getLicenseCheckResults }: RouteIn body: schema.object(anomaliesTableDataSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getAnomaliesTableData(context, request.body); @@ -116,7 +115,7 @@ export function resultsServiceRoutes({ router, getLicenseCheckResults }: RouteIn body: schema.object(categoryDefinitionSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getCategoryDefinition(context, request.body); @@ -143,7 +142,7 @@ export function resultsServiceRoutes({ router, getLicenseCheckResults }: RouteIn body: schema.object(maxAnomalyScoreSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getMaxAnomalyScore(context, request.body); @@ -170,7 +169,7 @@ export function resultsServiceRoutes({ router, getLicenseCheckResults }: RouteIn body: schema.object(categoryExamplesSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getCategoryExamples(context, request.body); @@ -197,7 +196,7 @@ export function resultsServiceRoutes({ router, getLicenseCheckResults }: RouteIn body: schema.object(partitionFieldValuesSchema), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { const resp = await getPartitionFieldsValues(context, request.body); diff --git a/x-pack/plugins/ml/server/routes/system.ts b/x-pack/plugins/ml/server/routes/system.ts index 36a9ea1447f583..a0d7d312c04d4e 100644 --- a/x-pack/plugins/ml/server/routes/system.ts +++ b/x-pack/plugins/ml/server/routes/system.ts @@ -12,14 +12,13 @@ import { wrapError } from '../client/error_wrapper'; import { mlLog } from '../client/log'; import { privilegesProvider } from '../lib/check_privileges'; import { spacesUtilsProvider } from '../lib/spaces_utils'; -import { licensePreRoutingFactory } from './license_check_pre_routing_factory'; import { RouteInitialization, SystemRouteDeps } from '../types'; /** * System routes */ export function systemRoutes( - { getLicenseCheckResults, router }: RouteInitialization, + { router, mlLicense }: RouteInitialization, { spacesPlugin, cloud }: SystemRouteDeps ) { async function getNodeCount(context: RequestHandlerContext) { @@ -56,7 +55,7 @@ export function systemRoutes( body: schema.maybe(schema.any()), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { let upgradeInProgress = false; try { @@ -77,7 +76,7 @@ export function systemRoutes( } } - if (getLicenseCheckResults().isSecurityDisabled) { + if (mlLicense.isSecurityEnabled() === false) { // if xpack.security.enabled has been explicitly set to false // return that security is disabled and don't call the privilegeCheck endpoint return response.ok({ @@ -116,7 +115,7 @@ export function systemRoutes( }), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const ignoreSpaces = request.query && request.query.ignoreSpaces === 'true'; // if spaces is disabled force isMlEnabledInSpace to be true @@ -127,7 +126,7 @@ export function systemRoutes( const { getPrivileges } = privilegesProvider( context.ml!.mlClient.callAsCurrentUser, - getLicenseCheckResults(), + mlLicense, isMlEnabledInSpace, ignoreSpaces ); @@ -152,11 +151,11 @@ export function systemRoutes( path: '/api/ml/ml_node_count', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { // check for basic license first for consistency with other // security disabled checks - if (getLicenseCheckResults().isSecurityDisabled) { + if (mlLicense.isSecurityEnabled() === false) { return response.ok({ body: await getNodeCount(context), }); @@ -203,7 +202,7 @@ export function systemRoutes( path: '/api/ml/info', validate: false, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.basicLicenseAPIGuard(async (context, request, response) => { try { const info = await context.ml!.mlClient.callAsCurrentUser('ml.info'); const cloudId = cloud && cloud.cloudId; @@ -231,7 +230,7 @@ export function systemRoutes( body: schema.maybe(schema.any()), }, }, - licensePreRoutingFactory(getLicenseCheckResults, async (context, request, response) => { + mlLicense.fullLicenseAPIGuard(async (context, request, response) => { try { return response.ok({ body: await context.ml!.mlClient.callAsCurrentUser('search', request.body), diff --git a/x-pack/plugins/ml/server/types.ts b/x-pack/plugins/ml/server/types.ts index 550abadb3c06f3..aeb4c505ec55e4 100644 --- a/x-pack/plugins/ml/server/types.ts +++ b/x-pack/plugins/ml/server/types.ts @@ -12,6 +12,7 @@ import { SecurityPluginSetup } from '../../security/server'; import { PluginSetupContract as FeaturesPluginSetup } from '../../features/server'; import { LicensingPluginSetup } from '../../licensing/server'; import { SpacesPluginSetup } from '../../spaces/server'; +import { MlServerLicense } from './lib/license'; export interface LicenseCheckResult { isAvailable: boolean; @@ -39,5 +40,5 @@ export interface PluginsSetup { export interface RouteInitialization { router: IRouter; - getLicenseCheckResults: () => LicenseCheckResult; + mlLicense: MlServerLicense; } diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index dbab88da973a12..84651319775fd1 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -7533,9 +7533,6 @@ "xpack.ml.calendarsList.table.idColumnName": "ID", "xpack.ml.calendarsList.table.jobsColumnName": "ジョブ", "xpack.ml.calendarsList.table.newButtonLabel": "新規", - "xpack.ml.checkLicense.licenseHasExpiredMessage": "{licenseTypeName} 機械学習ライセンスが期限切れになりました。", - "xpack.ml.checkLicense.licenseInformationNotAvailableThisTimeMessage": "現在ライセンス情報が利用できないため機械学習を使用できません。", - "xpack.ml.checkLicense.mlIsUnavailableMessage": "機械学習が利用できません", "xpack.ml.controls.checkboxShowCharts.showChartsCheckboxLabel": "チャートを表示", "xpack.ml.controls.selectInterval.autoLabel": "自動", "xpack.ml.controls.selectInterval.dayLabel": "1 日", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index afd12dba8ada71..a9dccd20fb9166 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -7533,9 +7533,6 @@ "xpack.ml.calendarsList.table.idColumnName": "ID", "xpack.ml.calendarsList.table.jobsColumnName": "作业", "xpack.ml.calendarsList.table.newButtonLabel": "新建", - "xpack.ml.checkLicense.licenseHasExpiredMessage": "您的 {licenseTypeName} Machine Learning 许可证已过期。", - "xpack.ml.checkLicense.licenseInformationNotAvailableThisTimeMessage": "您不能使用 Machine Learning,因为许可证信息当前不可用。", - "xpack.ml.checkLicense.mlIsUnavailableMessage": "Machine Learning 不可用", "xpack.ml.controls.checkboxShowCharts.showChartsCheckboxLabel": "显示图表", "xpack.ml.controls.selectInterval.autoLabel": "自动", "xpack.ml.controls.selectInterval.dayLabel": "1 天", From 114c4cb85e118a2777594bee702336d1c3f62536 Mon Sep 17 00:00:00 2001 From: Dario Gieselaar <dario.gieselaar@elastic.co> Date: Wed, 4 Mar 2020 11:25:39 +0100 Subject: [PATCH 092/120] [APM] Make typescript optimization process compatible with NP (#58984) * [APM] Make typescript optimization process compatible with NP Rather than creating an extra tsconfig.json file in the APM folder, simply change the one in x-pack root, and include APM files from both legacy + NP. * Update dev_docs/typescript.md * Use spread op instead of assign * Use console.error instead of console.log --- .gitignore | 2 - .../legacy/plugins/apm/dev_docs/typescript.md | 2 +- .../plugins/apm/scripts/optimize-tsconfig.js | 5 +- .../apm/scripts/optimize-tsconfig/optimize.js | 54 ++++++++++--------- .../apm/scripts/optimize-tsconfig/paths.js | 4 +- .../scripts/optimize-tsconfig/tsconfig.json | 9 ++-- .../scripts/optimize-tsconfig/unoptimize.js | 21 ++------ .../apm/scripts/unoptimize-tsconfig.js | 5 +- x-pack/plugins/apm/tsconfig.json | 3 -- 9 files changed, 47 insertions(+), 58 deletions(-) delete mode 100644 x-pack/plugins/apm/tsconfig.json diff --git a/.gitignore b/.gitignore index 02b20da297fc67..efb5c577746334 100644 --- a/.gitignore +++ b/.gitignore @@ -44,5 +44,3 @@ package-lock.json *.sublime-* npm-debug.log* .tern-project -x-pack/legacy/plugins/apm/tsconfig.json -apm.tsconfig.json diff --git a/x-pack/legacy/plugins/apm/dev_docs/typescript.md b/x-pack/legacy/plugins/apm/dev_docs/typescript.md index 105c6edabf48ff..6858e93ec09e00 100644 --- a/x-pack/legacy/plugins/apm/dev_docs/typescript.md +++ b/x-pack/legacy/plugins/apm/dev_docs/typescript.md @@ -1,6 +1,6 @@ #### Optimizing TypeScript -Kibana and X-Pack are very large TypeScript projects, and it comes at a cost. Editor responsiveness is not great, and the CLI type check for X-Pack takes about a minute. To get faster feedback, we create a smaller APM TypeScript project that only type checks the APM project and the files it uses. This optimization consists of creating a `tsconfig.json` in APM that includes the Kibana/X-Pack typings, and editing the Kibana/X-Pack configurations to not include any files, or removing the configurations altogether. The script configures git to ignore any changes in these files, and has an undo script as well. +Kibana and X-Pack are very large TypeScript projects, and it comes at a cost. Editor responsiveness is not great, and the CLI type check for X-Pack takes about a minute. To get faster feedback, we create a smaller APM TypeScript project that only type checks the APM project and the files it uses. This optimization consists of modifying `tsconfig.json` in the X-Pack folder to only include APM files, and editing the Kibana configuration to not include any files. The script configures git to ignore any changes in these files, and has an undo script as well. To run the optimization: diff --git a/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig.js b/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig.js index c1f1472dc90241..745f0db45e4fae 100644 --- a/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig.js +++ b/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig.js @@ -6,4 +6,7 @@ const { optimizeTsConfig } = require('./optimize-tsconfig/optimize'); -optimizeTsConfig(); +optimizeTsConfig().catch(err => { + console.error(err); + process.exit(1); +}); diff --git a/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/optimize.js b/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/optimize.js index ef9e393db3eca7..3a5809e5646914 100644 --- a/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/optimize.js +++ b/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/optimize.js @@ -7,29 +7,26 @@ /* eslint-disable import/no-extraneous-dependencies */ const fs = require('fs'); -const promisify = require('util').promisify; +const { promisify } = require('util'); const path = require('path'); const json5 = require('json5'); const execa = require('execa'); -const copyFile = promisify(fs.copyFile); -const rename = promisify(fs.rename); const readFile = promisify(fs.readFile); const writeFile = promisify(fs.writeFile); const { xpackRoot, kibanaRoot, - apmRoot, tsconfigTpl, filesToIgnore } = require('./paths'); const { unoptimizeTsConfig } = require('./unoptimize'); -function updateParentTsConfigs() { +function prepareParentTsConfigs() { return Promise.all( [ - path.resolve(xpackRoot, 'apm.tsconfig.json'), + path.resolve(xpackRoot, 'tsconfig.json'), path.resolve(kibanaRoot, 'tsconfig.json') ].map(async filename => { const config = json5.parse(await readFile(filename, 'utf-8')); @@ -50,32 +47,37 @@ function updateParentTsConfigs() { ); } +async function addApmFilesToXpackTsConfig() { + const template = json5.parse(await readFile(tsconfigTpl, 'utf-8')); + const xpackTsConfig = path.join(xpackRoot, 'tsconfig.json'); + const config = json5.parse(await readFile(xpackTsConfig, 'utf-8')); + + await writeFile( + xpackTsConfig, + JSON.stringify({ ...config, ...template }, null, 2), + { encoding: 'utf-8' } + ); +} + async function setIgnoreChanges() { for (const filename of filesToIgnore) { await execa('git', ['update-index', '--skip-worktree', filename]); } } -const optimizeTsConfig = () => { - return unoptimizeTsConfig() - .then(() => - Promise.all([ - copyFile(tsconfigTpl, path.resolve(apmRoot, './tsconfig.json')), - rename( - path.resolve(xpackRoot, 'tsconfig.json'), - path.resolve(xpackRoot, 'apm.tsconfig.json') - ) - ]) - ) - .then(() => updateParentTsConfigs()) - .then(() => setIgnoreChanges()) - .then(() => { - // eslint-disable-next-line no-console - console.log( - 'Created an optimized tsconfig.json for APM. To undo these changes, run `./scripts/unoptimize-tsconfig.js`' - ); - }); -}; +async function optimizeTsConfig() { + await unoptimizeTsConfig(); + + await prepareParentTsConfigs(); + + await addApmFilesToXpackTsConfig(); + + await setIgnoreChanges(); + // eslint-disable-next-line no-console + console.log( + 'Created an optimized tsconfig.json for APM. To undo these changes, run `./scripts/unoptimize-tsconfig.js`' + ); +} module.exports = { optimizeTsConfig diff --git a/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/paths.js b/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/paths.js index cdb8e4d878ea36..cab55a25262028 100644 --- a/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/paths.js +++ b/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/paths.js @@ -5,8 +5,7 @@ */ const path = require('path'); -const apmRoot = path.resolve(__dirname, '../..'); -const xpackRoot = path.resolve(apmRoot, '../../..'); +const xpackRoot = path.resolve(__dirname, '../../../../..'); const kibanaRoot = path.resolve(xpackRoot, '..'); const tsconfigTpl = path.resolve(__dirname, './tsconfig.json'); @@ -17,7 +16,6 @@ const filesToIgnore = [ ]; module.exports = { - apmRoot, xpackRoot, kibanaRoot, tsconfigTpl, diff --git a/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/tsconfig.json b/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/tsconfig.json index 5021694ff04acd..8f6b0f35e4b52d 100644 --- a/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/tsconfig.json +++ b/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/tsconfig.json @@ -1,12 +1,11 @@ { - "extends": "../../../apm.tsconfig.json", "include": [ - "./**/*", - "../../../plugins/apm/**/*", - "../../../typings/**/*" + "./plugins/apm/**/*", + "./legacy/plugins/apm/**/*", + "./typings/**/*" ], "exclude": [ "**/__fixtures__/**/*", - "./e2e/cypress/**/*" + "./legacy/plugins/apm/e2e/cypress/**/*" ] } diff --git a/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/unoptimize.js b/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/unoptimize.js index 3fdf2a97363a8c..33def8c2579faf 100644 --- a/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/unoptimize.js +++ b/x-pack/legacy/plugins/apm/scripts/optimize-tsconfig/unoptimize.js @@ -5,32 +5,21 @@ */ /* eslint-disable import/no-extraneous-dependencies */ -const path = require('path'); const execa = require('execa'); -const fs = require('fs'); -const promisify = require('util').promisify; -const removeFile = promisify(fs.unlink); -const exists = promisify(fs.exists); -const { apmRoot, filesToIgnore } = require('./paths'); +const { filesToIgnore } = require('./paths'); async function unoptimizeTsConfig() { for (const filename of filesToIgnore) { await execa('git', ['update-index', '--no-skip-worktree', filename]); await execa('git', ['checkout', filename]); } - - const apmTsConfig = path.join(apmRoot, 'tsconfig.json'); - if (await exists(apmTsConfig)) { - await removeFile(apmTsConfig); - } } module.exports = { - unoptimizeTsConfig: () => { - return unoptimizeTsConfig().then(() => { - // eslint-disable-next-line no-console - console.log('Removed APM TypeScript optimizations'); - }); + unoptimizeTsConfig: async () => { + await unoptimizeTsConfig(); + // eslint-disable-next-line no-console + console.log('Removed APM TypeScript optimizations'); } }; diff --git a/x-pack/legacy/plugins/apm/scripts/unoptimize-tsconfig.js b/x-pack/legacy/plugins/apm/scripts/unoptimize-tsconfig.js index 5362b6a6d52e20..e33dc502a9587e 100644 --- a/x-pack/legacy/plugins/apm/scripts/unoptimize-tsconfig.js +++ b/x-pack/legacy/plugins/apm/scripts/unoptimize-tsconfig.js @@ -6,4 +6,7 @@ const { unoptimizeTsConfig } = require('./optimize-tsconfig/unoptimize'); -unoptimizeTsConfig(); +unoptimizeTsConfig().catch(err => { + console.error(err); + process.exit(1); +}); diff --git a/x-pack/plugins/apm/tsconfig.json b/x-pack/plugins/apm/tsconfig.json deleted file mode 100644 index 618c6c3e97b576..00000000000000 --- a/x-pack/plugins/apm/tsconfig.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "../../../tsconfig.json" -} From be43518ee32a80c9722d21035aef67cff787f986 Mon Sep 17 00:00:00 2001 From: Anton Dosov <anton.dosov@elastic.co> Date: Wed, 4 Mar 2020 11:30:45 +0100 Subject: [PATCH 093/120] visualizations plugin np_ready (#59149) --- .../kibana/public/discover/build_services.ts | 3 +-- .../np_ready/embeddable/search_embeddable.ts | 2 +- .../discover/np_ready/embeddable/types.ts | 2 +- .../public/components/sidebar/sidebar.tsx | 2 +- .../components/sidebar/sidebar_title.tsx | 2 +- .../public/legacy_imports.ts | 2 -- .../public/metrics_type.ts | 2 +- .../vis_type_vega/public/legacy_imports.ts | 2 -- .../vis_type_vega/public/vega_type.ts | 3 +-- .../core_plugins/visualizations/index.ts | 2 +- .../visualizations/public/index.ts | 9 -------- .../visualizations/public/legacy_mocks.ts | 21 ------------------- .../public/np_ready/kibana.json | 2 +- .../public/np_ready/public/index.ts | 1 + .../public/np_ready/public/legacy.ts | 8 ++++++- .../public/legacy/build_pipeline.test.ts | 5 +++-- .../np_ready/public/legacy/build_pipeline.ts | 2 +- .../misc/default_feedback_message.test.ts} | 15 +++++++------ .../public/misc/default_feedback_message.ts} | 2 +- .../public/np_ready/public/mocks.ts | 11 +++++----- .../public/np_ready/public/plugin.ts | 8 ++++++- .../public/np_ready/public/services.ts | 5 +++++ .../public/np_ready/public/types.ts | 2 +- .../public/np_ready/public/vis.ts | 2 +- .../public/np_ready/public/vis_impl.js | 7 +++---- src/plugins/discover/public/index.ts | 1 + .../discover/public/saved_searches/types.ts} | 4 ++-- .../public/app/lib/kibana/kibana_context.tsx | 2 +- .../legacy/plugins/transform/public/shim.ts | 2 +- .../translations/translations/ja-JP.json | 2 +- .../translations/translations/zh-CN.json | 2 +- 31 files changed, 58 insertions(+), 77 deletions(-) delete mode 100644 src/legacy/core_plugins/visualizations/public/legacy_mocks.ts rename src/legacy/core_plugins/visualizations/public/{legacy_imports.ts => np_ready/public/misc/default_feedback_message.test.ts} (68%) rename src/legacy/{ui/public/vis/default_feedback_message.js => core_plugins/visualizations/public/np_ready/public/misc/default_feedback_message.ts} (91%) rename src/{legacy/core_plugins/kibana/public/discover/np_ready/types.d.ts => plugins/discover/public/saved_searches/types.ts} (89%) diff --git a/src/legacy/core_plugins/kibana/public/discover/build_services.ts b/src/legacy/core_plugins/kibana/public/discover/build_services.ts index 6b0d2368cc1a25..c58307adaf38c6 100644 --- a/src/legacy/core_plugins/kibana/public/discover/build_services.ts +++ b/src/legacy/core_plugins/kibana/public/discover/build_services.ts @@ -33,11 +33,10 @@ import { import { DiscoverStartPlugins } from './plugin'; import { SharePluginStart } from '../../../../../plugins/share/public'; -import { SavedSearch } from './np_ready/types'; import { DocViewsRegistry } from './np_ready/doc_views/doc_views_registry'; import { ChartsPluginStart } from '../../../../../plugins/charts/public'; import { VisualizationsStart } from '../../../visualizations/public'; -import { createSavedSearchesLoader } from '../../../../../plugins/discover/public'; +import { createSavedSearchesLoader, SavedSearch } from '../../../../../plugins/discover/public'; export interface DiscoverServices { addBasePath: (path: string) => string; diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/embeddable/search_embeddable.ts b/src/legacy/core_plugins/kibana/public/discover/np_ready/embeddable/search_embeddable.ts index 738a74d93449d0..0aaf3e7f156c13 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/embeddable/search_embeddable.ts +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/embeddable/search_embeddable.ts @@ -37,7 +37,6 @@ import { Embeddable, } from '../../../../../embeddable_api/public/np_ready/public'; import * as columnActions from '../angular/doc_table/actions/columns'; -import { SavedSearch } from '../types'; import searchTemplate from './search_template.html'; import { ISearchEmbeddable, SearchInput, SearchOutput } from './types'; import { SortOrder } from '../angular/doc_table/components/table_header/helpers'; @@ -51,6 +50,7 @@ import { ISearchSource, } from '../../kibana_services'; import { SEARCH_EMBEDDABLE_TYPE } from './constants'; +import { SavedSearch } from '../../../../../../../plugins/discover/public'; interface SearchScope extends ng.IScope { columns?: string[]; diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/embeddable/types.ts b/src/legacy/core_plugins/kibana/public/discover/np_ready/embeddable/types.ts index e7aa390cda858f..b20e9b2faf7c49 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/embeddable/types.ts +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/embeddable/types.ts @@ -18,9 +18,9 @@ */ import { EmbeddableInput, EmbeddableOutput, IEmbeddable } from 'src/plugins/embeddable/public'; -import { SavedSearch } from '../types'; import { SortOrder } from '../angular/doc_table/components/table_header/helpers'; import { Filter, IIndexPattern, TimeRange, Query } from '../../../../../../../plugins/data/public'; +import { SavedSearch } from '../../../../../../../plugins/discover/public'; export interface SearchInput extends EmbeddableInput { timeRange: TimeRange; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar.tsx b/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar.tsx index 425245fe91fed9..a70ffd3cd88e11 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar.tsx +++ b/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar.tsx @@ -29,8 +29,8 @@ import { DefaultEditorControls } from './controls'; import { setStateParamValue, useEditorReducer, useEditorFormState, discardChanges } from './state'; import { DefaultEditorAggCommonProps } from '../agg_common_props'; import { SidebarTitle } from './sidebar_title'; -import { SavedSearch } from '../../../../kibana/public/discover/np_ready/types'; import { PersistedState } from '../../../../../../plugins/visualizations/public'; +import { SavedSearch } from '../../../../../../plugins/discover/public'; interface DefaultEditorSideBarProps { isCollapsed: boolean; diff --git a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx b/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx index 3fd82f1c4a2b67..876404851aed42 100644 --- a/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx +++ b/src/legacy/core_plugins/vis_default_editor/public/components/sidebar/sidebar_title.tsx @@ -35,7 +35,7 @@ import { FormattedMessage } from '@kbn/i18n/react'; import { i18n } from '@kbn/i18n'; import { Vis } from 'src/legacy/core_plugins/visualizations/public'; -import { SavedSearch } from '../../../../kibana/public/discover/np_ready/types'; +import { SavedSearch } from '../../../../../../plugins/discover/public'; interface LinkedSearchProps { savedSearch: SavedSearch; diff --git a/src/legacy/core_plugins/vis_type_timeseries/public/legacy_imports.ts b/src/legacy/core_plugins/vis_type_timeseries/public/legacy_imports.ts index a2952b2c83afdd..7cf0a12e8567c3 100644 --- a/src/legacy/core_plugins/vis_type_timeseries/public/legacy_imports.ts +++ b/src/legacy/core_plugins/vis_type_timeseries/public/legacy_imports.ts @@ -17,7 +17,5 @@ * under the License. */ -// @ts-ignore -export { defaultFeedbackMessage } from 'ui/vis/default_feedback_message'; // @ts-ignore export { timezoneProvider } from 'ui/vis/lib/timezone'; diff --git a/src/legacy/core_plugins/vis_type_timeseries/public/metrics_type.ts b/src/legacy/core_plugins/vis_type_timeseries/public/metrics_type.ts index 01750ee0c448d6..135cc1e1814320 100644 --- a/src/legacy/core_plugins/vis_type_timeseries/public/metrics_type.ts +++ b/src/legacy/core_plugins/vis_type_timeseries/public/metrics_type.ts @@ -18,7 +18,6 @@ */ import { i18n } from '@kbn/i18n'; -import { defaultFeedbackMessage } from './legacy_imports'; // @ts-ignore import { metricsRequestHandler } from './request_handler'; @@ -26,6 +25,7 @@ import { metricsRequestHandler } from './request_handler'; import { EditorController } from './editor_controller'; // @ts-ignore import { PANEL_TYPES } from '../../../../plugins/vis_type_timeseries/common/panel_types'; +import { defaultFeedbackMessage } from '../../visualizations/public'; export const metricsVisDefinition = { name: 'metrics', diff --git a/src/legacy/core_plugins/vis_type_vega/public/legacy_imports.ts b/src/legacy/core_plugins/vis_type_vega/public/legacy_imports.ts index 9e1067ed9099ab..b868321d6310f2 100644 --- a/src/legacy/core_plugins/vis_type_vega/public/legacy_imports.ts +++ b/src/legacy/core_plugins/vis_type_vega/public/legacy_imports.ts @@ -17,8 +17,6 @@ * under the License. */ -// @ts-ignore -export { defaultFeedbackMessage } from 'ui/vis/default_feedback_message'; // @ts-ignore export { KibanaMapLayer } from 'ui/vis/map/kibana_map_layer'; // @ts-ignore 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 1d4655b4d525ff..a84948f725e0ab 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 @@ -19,8 +19,7 @@ import { i18n } from '@kbn/i18n'; // @ts-ignore -import { defaultFeedbackMessage } from './legacy_imports'; -import { Status } from '../../visualizations/public'; +import { Status, defaultFeedbackMessage } from '../../visualizations/public'; import { DefaultEditorSize } from '../../vis_default_editor/public'; import { VegaVisualizationDependencies } from './plugin'; import { VegaVisEditor } from './components'; diff --git a/src/legacy/core_plugins/visualizations/index.ts b/src/legacy/core_plugins/visualizations/index.ts index 3c22f22f63682a..a2779cfe4346df 100644 --- a/src/legacy/core_plugins/visualizations/index.ts +++ b/src/legacy/core_plugins/visualizations/index.ts @@ -24,7 +24,7 @@ export const visualizations: LegacyPluginInitializer = kibana => new kibana.Plugin({ id: 'visualizations', publicDir: resolve(__dirname, 'public'), - require: ['vis_default_editor'], + require: [], uiExports: { styleSheetPaths: resolve(__dirname, 'public/index.scss'), }, diff --git a/src/legacy/core_plugins/visualizations/public/index.ts b/src/legacy/core_plugins/visualizations/public/index.ts index 4557cf9ab22f17..f5590c745b3f97 100644 --- a/src/legacy/core_plugins/visualizations/public/index.ts +++ b/src/legacy/core_plugins/visualizations/public/index.ts @@ -17,15 +17,6 @@ * under the License. */ -/** - * Static legacy code which hasn't been moved to this plugin yet, but - * should be eventually. - * - * @public - */ -// @ts-ignore Used only by tsvb, vega, input control vis -export { defaultFeedbackMessage } from 'ui/vis/default_feedback_message'; - /** * Static np-ready code, re-exported here so consumers can import from * `src/legacy/core_plugins/visualizations/public` diff --git a/src/legacy/core_plugins/visualizations/public/legacy_mocks.ts b/src/legacy/core_plugins/visualizations/public/legacy_mocks.ts deleted file mode 100644 index 6cd57bb88bc261..00000000000000 --- a/src/legacy/core_plugins/visualizations/public/legacy_mocks.ts +++ /dev/null @@ -1,21 +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. - */ - -// eslint-disable-next-line @kbn/eslint/no-restricted-paths -export { searchSourceMock } from '../../../../plugins/data/public/search/search_source/mocks'; diff --git a/src/legacy/core_plugins/visualizations/public/np_ready/kibana.json b/src/legacy/core_plugins/visualizations/public/np_ready/kibana.json index d4f9bd327d6aca..f8637a71b2d35d 100644 --- a/src/legacy/core_plugins/visualizations/public/np_ready/kibana.json +++ b/src/legacy/core_plugins/visualizations/public/np_ready/kibana.json @@ -3,5 +3,5 @@ "version": "kibana", "server": false, "ui": true, - "requiredPlugins": ["data", "search", "expressions", "uiActions"] + "requiredPlugins": ["data", "expressions", "uiActions", "embeddable", "usageCollection"] } diff --git a/src/legacy/core_plugins/visualizations/public/np_ready/public/index.ts b/src/legacy/core_plugins/visualizations/public/np_ready/public/index.ts index 34ffb698e5f8c7..7688a7769cf795 100644 --- a/src/legacy/core_plugins/visualizations/public/np_ready/public/index.ts +++ b/src/legacy/core_plugins/visualizations/public/np_ready/public/index.ts @@ -59,3 +59,4 @@ export { buildPipeline, buildVislibDimensions, SchemaConfig } from './legacy/bui export { updateOldState } from './legacy/vis_update_state'; export { calculateObjectHash } from './legacy/calculate_object_hash'; export { createSavedVisLoader } from './saved_visualizations/saved_visualizations'; +export { defaultFeedbackMessage } from './misc/default_feedback_message'; diff --git a/src/legacy/core_plugins/visualizations/public/np_ready/public/legacy.ts b/src/legacy/core_plugins/visualizations/public/np_ready/public/legacy.ts index 57c686b6e9cb04..fdbd1d5a61ce7f 100644 --- a/src/legacy/core_plugins/visualizations/public/np_ready/public/legacy.ts +++ b/src/legacy/core_plugins/visualizations/public/np_ready/public/legacy.ts @@ -19,6 +19,7 @@ /* eslint-disable @kbn/eslint/no-restricted-paths */ import { npSetup, npStart } from 'ui/new_platform'; +import { start as legacyDataStart } from '../../../../data/public/legacy'; /* eslint-enable @kbn/eslint/no-restricted-paths */ import { PluginInitializerContext } from '../../../../../../core/public'; @@ -28,4 +29,9 @@ import { plugin } from '.'; const pluginInstance = plugin({} as PluginInitializerContext); export const setup = pluginInstance.setup(npSetup.core, npSetup.plugins); -export const start = pluginInstance.start(npStart.core, npStart.plugins); +export const start = pluginInstance.start(npStart.core, { + ...npStart.plugins, + __LEGACY: { + aggs: legacyDataStart.search.aggs, + }, +}); diff --git a/src/legacy/core_plugins/visualizations/public/np_ready/public/legacy/build_pipeline.test.ts b/src/legacy/core_plugins/visualizations/public/np_ready/public/legacy/build_pipeline.test.ts index 1adf6fd23f5a50..09037d445baf5a 100644 --- a/src/legacy/core_plugins/visualizations/public/np_ready/public/legacy/build_pipeline.test.ts +++ b/src/legacy/core_plugins/visualizations/public/np_ready/public/legacy/build_pipeline.test.ts @@ -27,8 +27,9 @@ import { Schemas, } from './build_pipeline'; import { Vis } from '..'; -import { IAggConfig } from '../../../legacy_imports'; -import { searchSourceMock } from '../../../legacy_mocks'; +// eslint-disable-next-line @kbn/eslint/no-restricted-paths +import { searchSourceMock } from '../../../../../../../plugins/data/public/search/search_source/mocks'; +import { IAggConfig } from '../../../../../data/public'; jest.mock('ui/new_platform'); diff --git a/src/legacy/core_plugins/visualizations/public/np_ready/public/legacy/build_pipeline.ts b/src/legacy/core_plugins/visualizations/public/np_ready/public/legacy/build_pipeline.ts index 155213b4103b03..265ac8f8a84f71 100644 --- a/src/legacy/core_plugins/visualizations/public/np_ready/public/legacy/build_pipeline.ts +++ b/src/legacy/core_plugins/visualizations/public/np_ready/public/legacy/build_pipeline.ts @@ -21,8 +21,8 @@ import { cloneDeep, get } from 'lodash'; import moment from 'moment'; import { SerializedFieldFormat } from '../../../../../../../plugins/expressions/public'; import { fieldFormats, ISearchSource } from '../../../../../../../plugins/data/public'; -import { IAggConfig, setBounds, isDateHistogramBucketAggConfig } from '../../../legacy_imports'; import { Vis, VisParams } from '../types'; +import { IAggConfig, isDateHistogramBucketAggConfig, setBounds } from '../../../../../data/public'; interface SchemaConfigParams { precision?: number; diff --git a/src/legacy/core_plugins/visualizations/public/legacy_imports.ts b/src/legacy/core_plugins/visualizations/public/np_ready/public/misc/default_feedback_message.test.ts similarity index 68% rename from src/legacy/core_plugins/visualizations/public/legacy_imports.ts rename to src/legacy/core_plugins/visualizations/public/np_ready/public/misc/default_feedback_message.test.ts index 0a3b1938436c0e..5c1afa4634b71e 100644 --- a/src/legacy/core_plugins/visualizations/public/legacy_imports.ts +++ b/src/legacy/core_plugins/visualizations/public/np_ready/public/misc/default_feedback_message.test.ts @@ -17,11 +17,10 @@ * under the License. */ -export { - IAggConfig, - IAggConfigs, - isDateHistogramBucketAggConfig, - setBounds, -} from '../../data/public'; -export { createAggConfigs } from 'ui/agg_types'; -export { createSavedSearchesLoader } from '../../../../plugins/discover/public'; +import { defaultFeedbackMessage } from './default_feedback_message'; + +test('default feedback message with link', () => { + expect(defaultFeedbackMessage).toMatchInlineSnapshot( + `"Have feedback? Please create an issue in <a href=\\"https://github.com/elastic/kibana/issues/new/choose\\" rel=\\"noopener noreferrer\\" target=\\"_blank\\">GitHub</a>."` + ); +}); diff --git a/src/legacy/ui/public/vis/default_feedback_message.js b/src/legacy/core_plugins/visualizations/public/np_ready/public/misc/default_feedback_message.ts similarity index 91% rename from src/legacy/ui/public/vis/default_feedback_message.js rename to src/legacy/core_plugins/visualizations/public/np_ready/public/misc/default_feedback_message.ts index 8b8491d397aad5..2871437614231a 100644 --- a/src/legacy/ui/public/vis/default_feedback_message.js +++ b/src/legacy/core_plugins/visualizations/public/np_ready/public/misc/default_feedback_message.ts @@ -19,7 +19,7 @@ import { i18n } from '@kbn/i18n'; -export const defaultFeedbackMessage = i18n.translate('common.ui.vis.defaultFeedbackMessage', { +export const defaultFeedbackMessage = i18n.translate('visualizations.defaultFeedbackMessage', { defaultMessage: 'Have feedback? Please create an issue in {link}.', values: { link: diff --git a/src/legacy/core_plugins/visualizations/public/np_ready/public/mocks.ts b/src/legacy/core_plugins/visualizations/public/np_ready/public/mocks.ts index b3dd22f62f81f1..8d7407b6191d63 100644 --- a/src/legacy/core_plugins/visualizations/public/np_ready/public/mocks.ts +++ b/src/legacy/core_plugins/visualizations/public/np_ready/public/mocks.ts @@ -17,12 +17,6 @@ * under the License. */ -jest.mock('ui/vis/vis_filters'); -jest.mock('ui/vis/default_feedback_message'); -jest.mock('ui/vis/vis_factory'); -jest.mock('ui/registry/vis_types'); -jest.mock('./types/vis_type_alias_registry'); - import { PluginInitializerContext } from '../../../../../../core/public'; import { VisualizationsSetup, VisualizationsStart } from './'; import { VisualizationsPlugin } from './plugin'; @@ -67,6 +61,11 @@ const createInstance = async () => { data: dataPluginMock.createStartContract(), expressions: expressionsPluginMock.createStartContract(), uiActions: uiActionsPluginMock.createStartContract(), + __LEGACY: { + aggs: { + createAggConfigs: jest.fn(), + } as any, + }, }); return { diff --git a/src/legacy/core_plugins/visualizations/public/np_ready/public/plugin.ts b/src/legacy/core_plugins/visualizations/public/np_ready/public/plugin.ts index e1d87d414d398d..10797a1a04df49 100644 --- a/src/legacy/core_plugins/visualizations/public/np_ready/public/plugin.ts +++ b/src/legacy/core_plugins/visualizations/public/np_ready/public/plugin.ts @@ -38,6 +38,7 @@ import { setUiActions, setSavedVisualizationsLoader, setTimeFilter, + setAggs, } from './services'; import { VISUALIZE_EMBEDDABLE_TYPE, VisualizeEmbeddableFactory } from './embeddable'; import { ExpressionsSetup, ExpressionsStart } from '../../../../../../plugins/expressions/public'; @@ -53,6 +54,7 @@ import { createSavedVisLoader, SavedVisualizationsLoader } from './saved_visuali import { VisImpl, VisImplConstructor } from './vis_impl'; import { showNewVisModal } from './wizard'; import { UiActionsStart } from '../../../../../../plugins/ui_actions/public'; +import { DataStart as LegacyDataStart } from '../../../../data/public'; /** * Interface for this plugin's returned setup/start contracts. @@ -81,6 +83,9 @@ export interface VisualizationsStartDeps { data: DataPublicPluginStart; expressions: ExpressionsStart; uiActions: UiActionsStart; + __LEGACY: { + aggs: LegacyDataStart['search']['aggs']; + }; } /** @@ -123,7 +128,7 @@ export class VisualizationsPlugin public start( core: CoreStart, - { data, expressions, uiActions }: VisualizationsStartDeps + { data, expressions, uiActions, __LEGACY: { aggs } }: VisualizationsStartDeps ): VisualizationsStart { const types = this.types.start(); setI18n(core.i18n); @@ -136,6 +141,7 @@ export class VisualizationsPlugin setExpressions(expressions); setUiActions(uiActions); setTimeFilter(data.query.timefilter.timefilter); + setAggs(aggs); const savedVisualizationsLoader = createSavedVisLoader({ savedObjectsClient: core.savedObjects.client, indexPatterns: data.indexPatterns, diff --git a/src/legacy/core_plugins/visualizations/public/np_ready/public/services.ts b/src/legacy/core_plugins/visualizations/public/np_ready/public/services.ts index a977a4b452bf7f..05fb106bf99402 100644 --- a/src/legacy/core_plugins/visualizations/public/np_ready/public/services.ts +++ b/src/legacy/core_plugins/visualizations/public/np_ready/public/services.ts @@ -35,6 +35,7 @@ import { UsageCollectionSetup } from '../../../../../../plugins/usage_collection import { ExpressionsStart } from '../../../../../../plugins/expressions/public'; import { UiActionsStart } from '../../../../../../plugins/ui_actions/public'; import { SavedVisualizationsLoader } from './saved_visualizations'; +import { DataStart as LegacyDataStart } from '../../../../data/public'; export const [getUISettings, setUISettings] = createGetterSetter<IUiSettingsClient>('UISettings'); @@ -71,3 +72,7 @@ export const [getUiActions, setUiActions] = createGetterSetter<UiActionsStart>(' export const [getSavedVisualizationsLoader, setSavedVisualizationsLoader] = createGetterSetter< SavedVisualizationsLoader >('SavedVisualisationsLoader'); + +export const [getAggs, setAggs] = createGetterSetter<LegacyDataStart['search']['aggs']>( + 'AggConfigs' +); diff --git a/src/legacy/core_plugins/visualizations/public/np_ready/public/types.ts b/src/legacy/core_plugins/visualizations/public/np_ready/public/types.ts index d2ca4ffb92eb2b..d8e3ccdeb065ee 100644 --- a/src/legacy/core_plugins/visualizations/public/np_ready/public/types.ts +++ b/src/legacy/core_plugins/visualizations/public/np_ready/public/types.ts @@ -20,7 +20,7 @@ import { SavedObject } from '../../../../../../plugins/saved_objects/public'; import { Vis, VisState, VisParams, VisualizationController } from './vis'; import { ISearchSource } from '../../../../../../plugins/data/public/'; -import { SavedSearch } from '../../../../kibana/public/discover/np_ready/types'; +import { SavedSearch } from '../../../../../../plugins/discover/public'; export { Vis, VisState, VisParams, VisualizationController }; diff --git a/src/legacy/core_plugins/visualizations/public/np_ready/public/vis.ts b/src/legacy/core_plugins/visualizations/public/np_ready/public/vis.ts index 990f27dca7556c..f658f6ef52df89 100644 --- a/src/legacy/core_plugins/visualizations/public/np_ready/public/vis.ts +++ b/src/legacy/core_plugins/visualizations/public/np_ready/public/vis.ts @@ -18,8 +18,8 @@ */ import { VisType } from './vis_types'; -import { IAggConfigs } from '../../legacy_imports'; import { Status } from './legacy/update_status'; +import { IAggConfigs } from '../../../../data/public'; export interface Vis { type: VisType; diff --git a/src/legacy/core_plugins/visualizations/public/np_ready/public/vis_impl.js b/src/legacy/core_plugins/visualizations/public/np_ready/public/vis_impl.js index 15a826cc6ddbe5..d5e6412b6bdabf 100644 --- a/src/legacy/core_plugins/visualizations/public/np_ready/public/vis_impl.js +++ b/src/legacy/core_plugins/visualizations/public/np_ready/public/vis_impl.js @@ -30,9 +30,8 @@ import { EventEmitter } from 'events'; import _ from 'lodash'; import { PersistedState } from '../../../../../../../src/plugins/visualizations/public'; -import { createAggConfigs } from '../../legacy_imports'; import { updateVisualizationConfig } from './legacy/vis_update'; -import { getTypes } from './services'; +import { getTypes, getAggs } from './services'; class VisImpl extends EventEmitter { constructor(indexPattern, visState) { @@ -83,7 +82,7 @@ class VisImpl extends EventEmitter { updateVisualizationConfig(state.params, this.params); if (state.aggs || !this.aggs) { - this.aggs = createAggConfigs( + this.aggs = getAggs().createAggConfigs( this.indexPattern, state.aggs ? state.aggs.aggs || state.aggs : [], this.type.schemas.all @@ -125,7 +124,7 @@ class VisImpl extends EventEmitter { copyCurrentState(includeDisabled = false) { const state = this.getCurrentState(includeDisabled); - state.aggs = createAggConfigs( + state.aggs = getAggs().createAggConfigs( this.indexPattern, state.aggs.aggs || state.aggs, this.type.schemas.all diff --git a/src/plugins/discover/public/index.ts b/src/plugins/discover/public/index.ts index 2ccfe39748024f..c5050147c3d5af 100644 --- a/src/plugins/discover/public/index.ts +++ b/src/plugins/discover/public/index.ts @@ -18,3 +18,4 @@ */ export { createSavedSearchesLoader } from './saved_searches/saved_searches'; +export { SavedSearchLoader, SavedSearch } from './saved_searches/types'; diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/types.d.ts b/src/plugins/discover/public/saved_searches/types.ts similarity index 89% rename from src/legacy/core_plugins/kibana/public/discover/np_ready/types.d.ts rename to src/plugins/discover/public/saved_searches/types.ts index d36a6b02e1f7a4..d601d087afcee8 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/types.d.ts +++ b/src/plugins/discover/public/saved_searches/types.ts @@ -17,9 +17,9 @@ * under the License. */ -import { ISearchSource } from '../kibana_services'; -import { SortOrder } from './angular/doc_table/components/table_header/helpers'; +import { ISearchSource } from '../../../data/public'; +export type SortOrder = [string, string]; export interface SavedSearch { readonly id: string; title: string; diff --git a/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_context.tsx b/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_context.tsx index 3acec1ea0e809c..7677c491a7a59d 100644 --- a/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_context.tsx +++ b/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_context.tsx @@ -8,11 +8,11 @@ import React, { createContext, useContext, FC } from 'react'; import { IUiSettingsClient } from 'kibana/public'; -import { SavedSearch } from '../../../../../../../../src/legacy/core_plugins/kibana/public/discover/np_ready/types'; import { IndexPattern, IndexPatternsContract, } from '../../../../../../../../src/plugins/data/public'; +import { SavedSearch } from '../../../../../../../../src/plugins/discover/public/'; interface UninitializedKibanaContextValue { initialized: false; diff --git a/x-pack/legacy/plugins/transform/public/shim.ts b/x-pack/legacy/plugins/transform/public/shim.ts index 95f54605377a86..05f7626e25e9de 100644 --- a/x-pack/legacy/plugins/transform/public/shim.ts +++ b/x-pack/legacy/plugins/transform/public/shim.ts @@ -11,9 +11,9 @@ import { docTitle } from 'ui/doc_title/doc_title'; // @ts-ignore: allow traversal to fail on x-pack build import { createUiStatsReporter } from '../../../../../src/legacy/core_plugins/ui_metric/public'; -import { SavedSearchLoader } from '../../../../../src/legacy/core_plugins/kibana/public/discover/np_ready/types'; import { TRANSFORM_DOC_PATHS } from './app/constants'; +import { SavedSearchLoader } from '../../../../../src/plugins/discover/public'; export type NpCore = typeof npStart.core; export type NpPlugins = typeof npStart.plugins; diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 84651319775fd1..09ee5cd304ac98 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -256,7 +256,6 @@ "common.ui.stateManagement.unableToStoreHistoryInSessionErrorMessage": "セッションがいっぱいで安全に削除できるアイテムが見つからないため、Kibana は履歴アイテムを保存できません。\n\nこれは大抵新規タブに移動することで解決されますが、より大きな問題が原因である可能性もあります。このメッセージが定期的に表示される場合は、{gitHubIssuesUrl} で問題を報告してください。", "common.ui.url.replacementFailedErrorMessage": "置換に失敗、未解決の表現式: {expr}", "common.ui.url.savedObjectIsMissingNotificationMessage": "保存されたオブジェクトがありません", - "common.ui.vis.defaultFeedbackMessage": "フィードバックがありますか?{link} で問題を報告してください。", "common.ui.vis.kibanaMap.leaflet.fitDataBoundsAriaLabel": "データバウンドを合わせる", "common.ui.vis.kibanaMap.zoomWarning": "ズームレベルが最大に達しました。完全にズームインするには、Elasticsearch と Kibana の {defaultDistribution} にアップグレードしてください。{ems} でより多くのズームレベルが利用できます。または、独自のマップサーバーを構成できます。詳細は { wms } または { configSettings} をご覧ください。", "data.search.aggs.aggGroups.bucketsText": "バケット", @@ -2852,6 +2851,7 @@ "timelion.vis.intervalLabel": "間隔", "uiActions.actionPanel.title": "オプション", "uiActions.errors.incompatibleAction": "操作に互換性がありません", + "visualizations.defaultFeedbackMessage": "フィードバックがありますか?{link} で問題を報告してください。", "visualizations.newVisWizard.betaDescription": "このビジュアライゼーションはベータ段階で、変更される可能性があります。デザインとコードはオフィシャル GA 機能よりも完成度が低く、現状のまま保証なしで提供されています。ベータ機能にはオフィシャル GA 機能の SLA が適用されません", "visualizations.newVisWizard.betaTitle": "ベータ", "visualizations.newVisWizard.chooseSourceTitle": "ソースの選択", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index a9dccd20fb9166..993beffe5fbf19 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -256,7 +256,6 @@ "common.ui.stateManagement.unableToStoreHistoryInSessionErrorMessage": "Kibana 无法将历史记录项存储在您的会话中,因为其已满,并且似乎没有任何可安全删除的项。\n\n通常可通过移至新的标签页来解决此问题,但这会导致更大的问题。如果您有规律地看到此消息,请在 {gitHubIssuesUrl} 提交问题。", "common.ui.url.replacementFailedErrorMessage": "替换失败,未解析的表达式:{expr}", "common.ui.url.savedObjectIsMissingNotificationMessage": "已保存对象缺失", - "common.ui.vis.defaultFeedbackMessage": "想反馈?请在“{link}中创建问题。", "common.ui.vis.kibanaMap.leaflet.fitDataBoundsAriaLabel": "适应数据边界", "common.ui.vis.kibanaMap.zoomWarning": "已达到缩放级别最大数目。要一直放大,请升级到 Elasticsearch 和 Kibana 的 {defaultDistribution}。您可以通过 {ems} 免费使用其他缩放级别。或者,您可以配置自己的地图服务器。请前往 { wms } 或 { configSettings} 以获取详细信息。", "data.search.aggs.aggGroups.bucketsText": "存储桶", @@ -2853,6 +2852,7 @@ "timelion.vis.intervalLabel": "时间间隔", "uiActions.actionPanel.title": "选项", "uiActions.errors.incompatibleAction": "操作不兼容", + "visualizations.defaultFeedbackMessage": "想反馈?请在“{link}中创建问题。", "visualizations.newVisWizard.betaDescription": "此可视化为公测版,可能会进行更改。设计和代码相对于正式发行版功能还不够成熟,将按原样提供,且不提供任何保证。公测版功能不受正式发行版功能支持 SLA 的约束", "visualizations.newVisWizard.betaTitle": "公测版", "visualizations.newVisWizard.chooseSourceTitle": "选择源", From 01e4b96492446e3dd673c8cde64755ba69af23a7 Mon Sep 17 00:00:00 2001 From: Liza Katz <liza.katz@elastic.co> Date: Wed, 4 Mar 2020 10:46:12 +0000 Subject: [PATCH 094/120] Use new search strategy service for search requests (#58990) * Use new search strategy * Update jest test * fix painless error Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../np_ready/angular/get_painless_error.ts | 4 +-- .../default_search_strategy.test.ts | 3 +-- .../default_search_strategy.ts | 27 +++++++------------ 3 files changed, 13 insertions(+), 21 deletions(-) diff --git a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/get_painless_error.ts b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/get_painless_error.ts index 2bbeea9d675c7e..100d9cdac133b5 100644 --- a/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/get_painless_error.ts +++ b/src/legacy/core_plugins/kibana/public/discover/np_ready/angular/get_painless_error.ts @@ -23,9 +23,9 @@ import { get } from 'lodash'; export function getPainlessError(error: Error) { const rootCause: Array<{ lang: string; script: string }> | undefined = get( error, - 'resp.error.root_cause' + 'body.attributes.error.root_cause' ); - const message: string = get(error, 'message'); + const message: string = get(error, 'body.message'); if (!rootCause) { return; diff --git a/src/plugins/data/public/search/search_strategy/default_search_strategy.test.ts b/src/plugins/data/public/search/search_strategy/default_search_strategy.test.ts index 80ab7ceb8870fe..1915645ad2df2d 100644 --- a/src/plugins/data/public/search/search_strategy/default_search_strategy.test.ts +++ b/src/plugins/data/public/search/search_strategy/default_search_strategy.test.ts @@ -117,8 +117,7 @@ describe('defaultSearchStrategy', function() { test('should call new search service', () => { const config = getConfigStub(); search({ ...searchArgs, config }); - expect(searchMock).toHaveBeenCalled(); - expect(newSearchMock).toHaveBeenCalledTimes(0); + expect(newSearchMock).toHaveBeenCalledTimes(1); }); test('should properly abort with new search service', async () => { diff --git a/src/plugins/data/public/search/search_strategy/default_search_strategy.ts b/src/plugins/data/public/search/search_strategy/default_search_strategy.ts index 6dde6bfe22e4ab..6fcb1e6b3e8d27 100644 --- a/src/plugins/data/public/search/search_strategy/default_search_strategy.ts +++ b/src/plugins/data/public/search/search_strategy/default_search_strategy.ts @@ -74,24 +74,17 @@ function search({ }: SearchStrategySearchParams) { const abortController = new AbortController(); const searchParams = getSearchParams(config, esShardTimeout); - const es = searchService.__LEGACY.esClient; const promises = searchRequests.map(({ index, body }) => { - const searching = es.search({ index: index.title || index, body, ...searchParams }); - abortController.signal.addEventListener('abort', searching.abort); - return searching.catch(({ response }: any) => JSON.parse(response)); - /* - * Once #44302 is resolved, replace the old implementation with this one - - * const params = { - * index: index.title || index, - * body, - * ...searchParams, - * }; - * const { signal } = abortController; - * return searchService - * .search({ params }, { signal }) - * .toPromise() - * .then(({ rawResponse }) => rawResponse); - */ + const params = { + index: index.title || index, + body, + ...searchParams, + }; + const { signal } = abortController; + return searchService + .search({ params }, { signal }) + .toPromise() + .then(({ rawResponse }) => rawResponse); }); return { searching: Promise.all(promises), From 80db96b8230c7056cc4dee4754fdaed9567008ca Mon Sep 17 00:00:00 2001 From: Maryia Lapata <mary.lopato@gmail.com> Date: Wed, 4 Mar 2020 13:57:16 +0300 Subject: [PATCH 095/120] Fix TS for vis_type_vislib (#58345) * Fix TS for vislib * Fix TS * Revert table changes * Update unit test * Refactor updateAxisTitle Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .eslintrc.js | 6 - .../components/common/validation_wrapper.tsx | 2 +- .../metrics_axes/category_axis_panel.tsx | 4 +- .../options/metrics_axes/index.test.tsx | 7 +- .../components/options/metrics_axes/index.tsx | 141 ++++++++++-------- .../options/metrics_axes/value_axes_panel.tsx | 2 +- .../metrics_axes/value_axis_options.tsx | 3 +- .../options/point_series/grid_panel.tsx | 2 +- 8 files changed, 87 insertions(+), 80 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index 087d6276cd33ff..a678243e4f07ab 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -76,12 +76,6 @@ module.exports = { 'react-hooks/exhaustive-deps': 'off', }, }, - { - files: ['src/legacy/core_plugins/vis_type_vislib/**/*.{js,ts,tsx}'], - rules: { - 'react-hooks/exhaustive-deps': 'off', - }, - }, { files: [ 'src/legacy/core_plugins/vis_default_editor/public/components/controls/**/*.{ts,tsx}', 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 9e1d5ea5ae38f6..c069d4c935669e 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 @@ -52,7 +52,7 @@ function ValidationWrapper<T = unknown>({ useEffect(() => { setValidity(isPanelValid); - }, [isPanelValid]); + }, [isPanelValid, setValidity]); return <Component {...rest} setMultipleValidity={setValidityHandler} />; } 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 a19a300960abd0..c1da70f5c17c20 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 @@ -46,7 +46,7 @@ function CategoryAxisPanel(props: CategoryAxisPanelProps) { }; setCategoryAxis(updatedAxis); }, - [setCategoryAxis] + [setCategoryAxis, axis] ); const setPosition = useCallback( @@ -89,7 +89,7 @@ function CategoryAxisPanel(props: CategoryAxisPanelProps) { setValue={setAxis} /> - {axis.show && <LabelOptions axis={axis} axesName="categoryAxes" index={0} {...props} />} + {axis.show && <LabelOptions axesName="categoryAxes" index={0} {...props} />} </EuiPanel> ); } 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 944ed7e20d1f71..f172a4344c940c 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 @@ -193,9 +193,10 @@ describe('MetricsAxisOptions component', () => { const updatedSeriesParams = [{ ...chart, data: { ...chart.data, label: agg.makeLabel() } }]; const updatedValues = [{ ...axis, title: { text: agg.makeLabel() } }]; - expect(setValue).toHaveBeenCalledTimes(3); - expect(setValue).toHaveBeenNthCalledWith(2, SERIES_PARAMS, updatedSeriesParams); - expect(setValue).toHaveBeenNthCalledWith(3, VALUE_AXES, updatedValues); + expect(setValue).toHaveBeenCalledTimes(5); + expect(setValue).toHaveBeenNthCalledWith(3, SERIES_PARAMS, updatedSeriesParams); + expect(setValue).toHaveBeenNthCalledWith(5, SERIES_PARAMS, updatedSeriesParams); + expect(setValue).toHaveBeenNthCalledWith(4, VALUE_AXES, updatedValues); }); it('should not set the custom title to match the value axis label when more than one agg exists for that 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 cdc8996f3fdeb5..32c21008c2a3a5 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 @@ -89,72 +89,85 @@ function MetricsAxisOptions(props: ValidationVisOptionsProps<BasicVislibParams>) } ); - const updateAxisTitle = (seriesParams?: SeriesParam[]) => { - const series = seriesParams || stateParams.seriesParams; - const axes = cloneDeep(stateParams.valueAxes); - let isAxesChanged = false; - let lastValuesChanged = false; - const lastLabels = { ...lastCustomLabels }; - const lastMatchingSeriesAgg = { ...lastSeriesAgg }; - - stateParams.valueAxes.forEach((axis, axisNumber) => { - let newCustomLabel = ''; - const matchingSeries: IAggConfig[] = []; - - series.forEach((serie, seriesIndex) => { - if ((axisNumber === 0 && !serie.valueAxis) || serie.valueAxis === axis.id) { - const aggByIndex = aggs.bySchemaName('metric')[seriesIndex]; - matchingSeries.push(aggByIndex); + const updateAxisTitle = useCallback( + (seriesParams?: SeriesParam[]) => { + const series = seriesParams || stateParams.seriesParams; + let isAxesChanged = false; + let lastValuesChanged = false; + const lastLabels = { ...lastCustomLabels }; + const lastMatchingSeriesAgg = { ...lastSeriesAgg }; + + const axes = stateParams.valueAxes.map((axis, axisNumber) => { + let newCustomLabel = ''; + let updatedAxis; + const matchingSeries: IAggConfig[] = []; + + series.forEach((serie, seriesIndex) => { + if ((axisNumber === 0 && !serie.valueAxis) || serie.valueAxis === axis.id) { + const aggByIndex = aggs.bySchemaName('metric')[seriesIndex]; + matchingSeries.push(aggByIndex); + } + }); + + if (matchingSeries.length === 1) { + // if several series matches to the axis, axis title is set according to the first serie. + newCustomLabel = matchingSeries[0].makeLabel(); } - }); - - if (matchingSeries.length === 1) { - // if several series matches to the axis, axis title is set according to the first serie. - newCustomLabel = matchingSeries[0].makeLabel(); - } - if (lastCustomLabels[axis.id] !== newCustomLabel && newCustomLabel !== '') { - const lastSeriesAggType = get(lastSeriesAgg, `${matchingSeries[0].id}.type`); - const lastSeriesAggField = get(lastSeriesAgg, `${matchingSeries[0].id}.field`); - const matchingSeriesAggType = get(matchingSeries, '[0]type.name', ''); - const matchingSeriesAggField = get(matchingSeries, '[0]params.field.name', ''); + if (lastCustomLabels[axis.id] !== newCustomLabel && newCustomLabel !== '') { + const lastSeriesAggType = get(lastSeriesAgg, `${matchingSeries[0].id}.type`); + const lastSeriesAggField = get(lastSeriesAgg, `${matchingSeries[0].id}.field`); + const matchingSeriesAggType = get(matchingSeries, '[0]type.name', ''); + const matchingSeriesAggField = get(matchingSeries, '[0]params.field.name', ''); - const aggTypeIsChanged = lastSeriesAggType !== matchingSeriesAggType; - const aggFieldIsChanged = lastSeriesAggField !== matchingSeriesAggField; + const aggTypeIsChanged = lastSeriesAggType !== matchingSeriesAggType; + const aggFieldIsChanged = lastSeriesAggField !== matchingSeriesAggField; - lastMatchingSeriesAgg[matchingSeries[0].id] = { - type: matchingSeriesAggType, - field: matchingSeriesAggField, - }; - lastLabels[axis.id] = newCustomLabel; - lastValuesChanged = true; - - if ( - Object.keys(lastCustomLabels).length !== 0 && - (aggTypeIsChanged || - aggFieldIsChanged || - axis.title.text === '' || - lastCustomLabels[axis.id] === axis.title.text) - ) { - // Override axis title with new custom label - axes[axisNumber] = { - ...axis, - title: { ...axis.title, text: newCustomLabel }, + lastMatchingSeriesAgg[matchingSeries[0].id] = { + type: matchingSeriesAggType, + field: matchingSeriesAggField, }; - isAxesChanged = true; + lastLabels[axis.id] = newCustomLabel; + lastValuesChanged = true; + + if ( + Object.keys(lastCustomLabels).length !== 0 && + (aggTypeIsChanged || + aggFieldIsChanged || + axis.title.text === '' || + lastCustomLabels[axis.id] === axis.title.text) && + newCustomLabel !== axis.title.text + ) { + // Override axis title with new custom label + updatedAxis = { + ...axis, + title: { ...axis.title, text: newCustomLabel }, + }; + isAxesChanged = true; + } } - } - }); - if (isAxesChanged) { - setValue('valueAxes', axes); - } + return updatedAxis || axis; + }); - if (lastValuesChanged) { - setLastSeriesAgg(lastMatchingSeriesAgg); - setLastCustomLabels(lastLabels); - } - }; + if (isAxesChanged) { + setValue('valueAxes', axes); + } + + if (lastValuesChanged) { + setLastSeriesAgg(lastMatchingSeriesAgg); + setLastCustomLabels(lastLabels); + } + }, + [ + aggs, + lastCustomLabels, + lastSeriesAgg, + setValue, + stateParams.seriesParams, + stateParams.valueAxes, + ] + ); const onValueAxisPositionChanged = useCallback( (index: number, value: ValueAxis['position']) => { @@ -168,7 +181,7 @@ function MetricsAxisOptions(props: ValidationVisOptionsProps<BasicVislibParams>) }; setValue('valueAxes', valueAxes); }, - [stateParams.valueAxes, getUpdatedAxisName, setValue] + [stateParams.valueAxes, setValue] ); const onCategoryAxisPositionChanged = useCallback( @@ -226,7 +239,7 @@ function MetricsAxisOptions(props: ValidationVisOptionsProps<BasicVislibParams>) setValue('grid', { ...stateParams.grid, valueAxis: undefined }); } }, - [stateParams.seriesParams, stateParams.valueAxes, setValue] + [stateParams.seriesParams, stateParams.valueAxes, setValue, stateParams.grid] ); const changeValueAxis: ChangeValueAxis = useCallback( @@ -241,13 +254,13 @@ function MetricsAxisOptions(props: ValidationVisOptionsProps<BasicVislibParams>) updateAxisTitle(); }, - [addValueAxis, setParamByIndex] + [addValueAxis, setParamByIndex, updateAxisTitle] ); + const schemaName = vis.type.schemas.metrics[0].name; const metrics = useMemo(() => { - const schemaName = vis.type.schemas.metrics[0].name; return aggs.bySchemaName(schemaName); - }, [vis.type.schemas.metrics[0].name, aggs]); + }, [schemaName, aggs]); const firstValueAxesId = stateParams.valueAxes[0].id; @@ -278,7 +291,7 @@ function MetricsAxisOptions(props: ValidationVisOptionsProps<BasicVislibParams>) setValue('seriesParams', updatedSeries); updateAxisTitle(updatedSeries); - }, [metrics, firstValueAxesId]); + }, [metrics, firstValueAxesId, setValue, stateParams.seriesParams, updateAxisTitle]); const visType = useMemo(() => { const types = uniq(stateParams.seriesParams.map(({ type }) => type)); diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/value_axes_panel.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/value_axes_panel.tsx index b94f5ebbcce44f..4aa2aee083a671 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/value_axes_panel.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/value_axes_panel.tsx @@ -78,7 +78,7 @@ function ValueAxesPanel(props: ValueAxesPanelProps) { /> </EuiToolTip> ), - [removeValueAxis] + [removeValueAxis, removeButtonTooltip] ); const addButtonTooltip = useMemo( diff --git a/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/value_axis_options.tsx b/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/value_axis_options.tsx index 0ebe62a70a7b1c..d094a1d4223851 100644 --- a/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/value_axis_options.tsx +++ b/src/legacy/core_plugins/vis_type_vislib/public/components/options/metrics_axes/value_axis_options.tsx @@ -175,7 +175,7 @@ function ValueAxisOptions(props: ValueAxisOptionsParams) { setValue={setValueAxisTitle} /> - <LabelOptions axis={axis} axesName="valueAxes" index={index} {...props} /> + <LabelOptions axesName="valueAxes" {...props} /> </> ) : ( <EuiSpacer size="xs" /> @@ -204,7 +204,6 @@ function ValueAxisOptions(props: ValueAxisOptionsParams) { <> <EuiSpacer size="m" /> <CustomExtentsOptions - axis={axis} setValueAxisScale={setValueAxisScale} setValueAxis={setValueAxis} {...props} 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 82cb2688543c37..db9acafac305c6 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 @@ -55,7 +55,7 @@ function GridPanel({ stateParams, setValue, hasHistogramAgg }: VisOptionsProps<B if (hasHistogramAgg) { setGrid('categoryLines', false); } - }, [hasHistogramAgg]); + }, [hasHistogramAgg, setGrid]); return ( <EuiPanel paddingSize="s"> From 7130a0405f0279d9ef49b59bb4ce91d46b2eb3a2 Mon Sep 17 00:00:00 2001 From: Pierre Gayvallet <pierre.gayvallet@elastic.co> Date: Wed, 4 Mar 2020 12:10:29 +0100 Subject: [PATCH 096/120] Expose savedObject import / export utility methods (#58882) * add getImportExportObjectLimit to so setup * expose static method for so import / export * improve functions naming * fix mocked reference --- ...lugin-server.exportsavedobjectstostream.md | 24 +++++++++++++++++++ ...gin-server.importsavedobjectsfromstream.md | 24 +++++++++++++++++++ .../core/server/kibana-plugin-server.md | 8 +++++++ ...-server.resolvesavedobjectsimporterrors.md | 24 +++++++++++++++++++ ...plugin-server.savedobjectsimportoptions.md | 12 +++++----- ...ver.savedobjectsimportoptions.namespace.md | 2 ++ ...r.savedobjectsimportoptions.objectlimit.md | 2 ++ ...ver.savedobjectsimportoptions.overwrite.md | 2 ++ ...er.savedobjectsimportoptions.readstream.md | 2 ++ ...objectsimportoptions.savedobjectsclient.md | 2 ++ ...avedobjectsimportoptions.supportedtypes.md | 2 ++ ....savedobjectsresolveimporterrorsoptions.md | 12 +++++----- ...ctsresolveimporterrorsoptions.namespace.md | 2 ++ ...sresolveimporterrorsoptions.objectlimit.md | 2 ++ ...tsresolveimporterrorsoptions.readstream.md | 2 ++ ...jectsresolveimporterrorsoptions.retries.md | 2 ++ ...eimporterrorsoptions.savedobjectsclient.md | 2 ++ ...solveimporterrorsoptions.supportedtypes.md | 2 ++ ...servicesetup.getimportexportobjectlimit.md | 13 ++++++++++ ...-plugin-server.savedobjectsservicesetup.md | 1 + src/core/server/index.ts | 3 +++ src/core/server/legacy/legacy_service.ts | 1 + src/core/server/plugins/plugin_context.ts | 1 + .../get_sorted_objects_for_export.test.ts | 24 +++++++++---------- .../export/get_sorted_objects_for_export.ts | 8 ++++++- src/core/server/saved_objects/export/index.ts | 2 +- .../import/import_saved_objects.test.ts | 16 ++++++------- .../import/import_saved_objects.ts | 8 ++++++- src/core/server/saved_objects/import/index.ts | 4 ++-- .../import/resolve_import_errors.test.ts | 18 +++++++------- .../import/resolve_import_errors.ts | 8 ++++++- src/core/server/saved_objects/import/types.ts | 12 ++++++++++ src/core/server/saved_objects/index.ts | 2 +- .../server/saved_objects/routes/export.ts | 4 ++-- .../server/saved_objects/routes/import.ts | 4 ++-- .../routes/integration_tests/export.test.ts | 8 +++---- .../routes/resolve_import_errors.ts | 4 ++-- .../saved_objects_service.mock.ts | 3 +++ .../saved_objects/saved_objects_service.ts | 6 +++++ src/core/server/saved_objects/types.ts | 1 - src/core/server/server.api.md | 22 ++++++++--------- .../saved_objects/saved_objects_mixin.js | 12 +++++----- 42 files changed, 236 insertions(+), 77 deletions(-) create mode 100644 docs/development/core/server/kibana-plugin-server.exportsavedobjectstostream.md create mode 100644 docs/development/core/server/kibana-plugin-server.importsavedobjectsfromstream.md create mode 100644 docs/development/core/server/kibana-plugin-server.resolvesavedobjectsimporterrors.md create mode 100644 docs/development/core/server/kibana-plugin-server.savedobjectsservicesetup.getimportexportobjectlimit.md diff --git a/docs/development/core/server/kibana-plugin-server.exportsavedobjectstostream.md b/docs/development/core/server/kibana-plugin-server.exportsavedobjectstostream.md new file mode 100644 index 00000000000000..76f0cea20d637e --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.exportsavedobjectstostream.md @@ -0,0 +1,24 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [exportSavedObjectsToStream](./kibana-plugin-server.exportsavedobjectstostream.md) + +## exportSavedObjectsToStream() function + +Generates sorted saved object stream to be used for export. See the [options](./kibana-plugin-server.savedobjectsexportoptions.md) for more detailed information. + +<b>Signature:</b> + +```typescript +export declare function exportSavedObjectsToStream({ types, objects, search, savedObjectsClient, exportSizeLimit, includeReferencesDeep, excludeExportDetails, namespace, }: SavedObjectsExportOptions): Promise<import("stream").Readable>; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| { types, objects, search, savedObjectsClient, exportSizeLimit, includeReferencesDeep, excludeExportDetails, namespace, } | <code>SavedObjectsExportOptions</code> | | + +<b>Returns:</b> + +`Promise<import("stream").Readable>` + diff --git a/docs/development/core/server/kibana-plugin-server.importsavedobjectsfromstream.md b/docs/development/core/server/kibana-plugin-server.importsavedobjectsfromstream.md new file mode 100644 index 00000000000000..2293e196ae61e5 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.importsavedobjectsfromstream.md @@ -0,0 +1,24 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [importSavedObjectsFromStream](./kibana-plugin-server.importsavedobjectsfromstream.md) + +## importSavedObjectsFromStream() function + +Import saved objects from given stream. See the [options](./kibana-plugin-server.savedobjectsimportoptions.md) for more detailed information. + +<b>Signature:</b> + +```typescript +export declare function importSavedObjectsFromStream({ readStream, objectLimit, overwrite, savedObjectsClient, supportedTypes, namespace, }: SavedObjectsImportOptions): Promise<SavedObjectsImportResponse>; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| { readStream, objectLimit, overwrite, savedObjectsClient, supportedTypes, namespace, } | <code>SavedObjectsImportOptions</code> | | + +<b>Returns:</b> + +`Promise<SavedObjectsImportResponse>` + diff --git a/docs/development/core/server/kibana-plugin-server.md b/docs/development/core/server/kibana-plugin-server.md index 0e79385d1ca4d8..e843ffb265b826 100644 --- a/docs/development/core/server/kibana-plugin-server.md +++ b/docs/development/core/server/kibana-plugin-server.md @@ -37,6 +37,14 @@ The plugin integrates with the core system via lifecycle events: `setup`<!-- --> | [AuthResultType](./kibana-plugin-server.authresulttype.md) | | | [AuthStatus](./kibana-plugin-server.authstatus.md) | Status indicating an outcome of the authentication. | +## Functions + +| Function | Description | +| --- | --- | +| [exportSavedObjectsToStream({ types, objects, search, savedObjectsClient, exportSizeLimit, includeReferencesDeep, excludeExportDetails, namespace, })](./kibana-plugin-server.exportsavedobjectstostream.md) | Generates sorted saved object stream to be used for export. See the [options](./kibana-plugin-server.savedobjectsexportoptions.md) for more detailed information. | +| [importSavedObjectsFromStream({ readStream, objectLimit, overwrite, savedObjectsClient, supportedTypes, namespace, })](./kibana-plugin-server.importsavedobjectsfromstream.md) | Import saved objects from given stream. See the [options](./kibana-plugin-server.savedobjectsimportoptions.md) for more detailed information. | +| [resolveSavedObjectsImportErrors({ readStream, objectLimit, retries, savedObjectsClient, supportedTypes, namespace, })](./kibana-plugin-server.resolvesavedobjectsimporterrors.md) | Resolve and return saved object import errors. See the [options](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.md) for more detailed informations. | + ## Interfaces | Interface | Description | diff --git a/docs/development/core/server/kibana-plugin-server.resolvesavedobjectsimporterrors.md b/docs/development/core/server/kibana-plugin-server.resolvesavedobjectsimporterrors.md new file mode 100644 index 00000000000000..9fcb335aad5568 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.resolvesavedobjectsimporterrors.md @@ -0,0 +1,24 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [resolveSavedObjectsImportErrors](./kibana-plugin-server.resolvesavedobjectsimporterrors.md) + +## resolveSavedObjectsImportErrors() function + +Resolve and return saved object import errors. See the [options](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.md) for more detailed informations. + +<b>Signature:</b> + +```typescript +export declare function resolveSavedObjectsImportErrors({ readStream, objectLimit, retries, savedObjectsClient, supportedTypes, namespace, }: SavedObjectsResolveImportErrorsOptions): Promise<SavedObjectsImportResponse>; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| { readStream, objectLimit, retries, savedObjectsClient, supportedTypes, namespace, } | <code>SavedObjectsResolveImportErrorsOptions</code> | | + +<b>Returns:</b> + +`Promise<SavedObjectsImportResponse>` + diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.md b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.md index 9653fa802a3e85..013773e0789a1e 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.md @@ -16,10 +16,10 @@ export interface SavedObjectsImportOptions | Property | Type | Description | | --- | --- | --- | -| [namespace](./kibana-plugin-server.savedobjectsimportoptions.namespace.md) | <code>string</code> | | -| [objectLimit](./kibana-plugin-server.savedobjectsimportoptions.objectlimit.md) | <code>number</code> | | -| [overwrite](./kibana-plugin-server.savedobjectsimportoptions.overwrite.md) | <code>boolean</code> | | -| [readStream](./kibana-plugin-server.savedobjectsimportoptions.readstream.md) | <code>Readable</code> | | -| [savedObjectsClient](./kibana-plugin-server.savedobjectsimportoptions.savedobjectsclient.md) | <code>SavedObjectsClientContract</code> | | -| [supportedTypes](./kibana-plugin-server.savedobjectsimportoptions.supportedtypes.md) | <code>string[]</code> | | +| [namespace](./kibana-plugin-server.savedobjectsimportoptions.namespace.md) | <code>string</code> | if specified, will import in given namespace, else will import as global object | +| [objectLimit](./kibana-plugin-server.savedobjectsimportoptions.objectlimit.md) | <code>number</code> | The maximum number of object to import | +| [overwrite](./kibana-plugin-server.savedobjectsimportoptions.overwrite.md) | <code>boolean</code> | if true, will override existing object if present | +| [readStream](./kibana-plugin-server.savedobjectsimportoptions.readstream.md) | <code>Readable</code> | The stream of [saved objects](./kibana-plugin-server.savedobject.md) to import | +| [savedObjectsClient](./kibana-plugin-server.savedobjectsimportoptions.savedobjectsclient.md) | <code>SavedObjectsClientContract</code> | [client](./kibana-plugin-server.savedobjectsclientcontract.md) to use to perform the import operation | +| [supportedTypes](./kibana-plugin-server.savedobjectsimportoptions.supportedtypes.md) | <code>string[]</code> | the list of allowed types to import | diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.namespace.md b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.namespace.md index 2b15ba2a1b7ec3..bf8e56f65607c4 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.namespace.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.namespace.md @@ -4,6 +4,8 @@ ## SavedObjectsImportOptions.namespace property +if specified, will import in given namespace, else will import as global object + <b>Signature:</b> ```typescript diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.objectlimit.md b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.objectlimit.md index 89c01a13644b86..526aef96eb8c0e 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.objectlimit.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.objectlimit.md @@ -4,6 +4,8 @@ ## SavedObjectsImportOptions.objectLimit property +The maximum number of object to import + <b>Signature:</b> ```typescript diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.overwrite.md b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.overwrite.md index 54728aaa80fed5..3a84001bbbad49 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.overwrite.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.overwrite.md @@ -4,6 +4,8 @@ ## SavedObjectsImportOptions.overwrite property +if true, will override existing object if present + <b>Signature:</b> ```typescript diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.readstream.md b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.readstream.md index 7739fdfbc8460b..64875d42515aaa 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.readstream.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.readstream.md @@ -4,6 +4,8 @@ ## SavedObjectsImportOptions.readStream property +The stream of [saved objects](./kibana-plugin-server.savedobject.md) to import + <b>Signature:</b> ```typescript diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.savedobjectsclient.md b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.savedobjectsclient.md index 23d5aba5fe1144..864fe64f53a4e2 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.savedobjectsclient.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.savedobjectsclient.md @@ -4,6 +4,8 @@ ## SavedObjectsImportOptions.savedObjectsClient property +[client](./kibana-plugin-server.savedobjectsclientcontract.md) to use to perform the import operation + <b>Signature:</b> ```typescript diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.supportedtypes.md b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.supportedtypes.md index 03ee12ab2a0f7d..a897551bfcb12e 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.supportedtypes.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsimportoptions.supportedtypes.md @@ -4,6 +4,8 @@ ## SavedObjectsImportOptions.supportedTypes property +the list of allowed types to import + <b>Signature:</b> ```typescript diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.md b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.md index 8ed978d4a2639a..75c9d77c5bf676 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.md @@ -16,10 +16,10 @@ export interface SavedObjectsResolveImportErrorsOptions | Property | Type | Description | | --- | --- | --- | -| [namespace](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.namespace.md) | <code>string</code> | | -| [objectLimit](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.objectlimit.md) | <code>number</code> | | -| [readStream](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.readstream.md) | <code>Readable</code> | | -| [retries](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.retries.md) | <code>SavedObjectsImportRetry[]</code> | | -| [savedObjectsClient](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.savedobjectsclient.md) | <code>SavedObjectsClientContract</code> | | -| [supportedTypes](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.supportedtypes.md) | <code>string[]</code> | | +| [namespace](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.namespace.md) | <code>string</code> | if specified, will import in given namespace | +| [objectLimit](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.objectlimit.md) | <code>number</code> | The maximum number of object to import | +| [readStream](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.readstream.md) | <code>Readable</code> | The stream of [saved objects](./kibana-plugin-server.savedobject.md) to resolve errors from | +| [retries](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.retries.md) | <code>SavedObjectsImportRetry[]</code> | saved object import references to retry | +| [savedObjectsClient](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.savedobjectsclient.md) | <code>SavedObjectsClientContract</code> | client to use to perform the import operation | +| [supportedTypes](./kibana-plugin-server.savedobjectsresolveimporterrorsoptions.supportedtypes.md) | <code>string[]</code> | the list of allowed types to import | diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.namespace.md b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.namespace.md index b88f124545bd58..87b69c78b33ee9 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.namespace.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.namespace.md @@ -4,6 +4,8 @@ ## SavedObjectsResolveImportErrorsOptions.namespace property +if specified, will import in given namespace + <b>Signature:</b> ```typescript diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.objectlimit.md b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.objectlimit.md index a2753ceccc36fe..57a3c358406d86 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.objectlimit.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.objectlimit.md @@ -4,6 +4,8 @@ ## SavedObjectsResolveImportErrorsOptions.objectLimit property +The maximum number of object to import + <b>Signature:</b> ```typescript diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.readstream.md b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.readstream.md index e7a31deed6faa3..f109816c0de54b 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.readstream.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.readstream.md @@ -4,6 +4,8 @@ ## SavedObjectsResolveImportErrorsOptions.readStream property +The stream of [saved objects](./kibana-plugin-server.savedobject.md) to resolve errors from + <b>Signature:</b> ```typescript diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.retries.md b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.retries.md index 658aa64cfc33f9..265dd21b3728a1 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.retries.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.retries.md @@ -4,6 +4,8 @@ ## SavedObjectsResolveImportErrorsOptions.retries property +saved object import references to retry + <b>Signature:</b> ```typescript diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.savedobjectsclient.md b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.savedobjectsclient.md index 8a8c620b2cf217..9a1864bfbbcd6c 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.savedobjectsclient.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.savedobjectsclient.md @@ -4,6 +4,8 @@ ## SavedObjectsResolveImportErrorsOptions.savedObjectsClient property +client to use to perform the import operation + <b>Signature:</b> ```typescript diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.supportedtypes.md b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.supportedtypes.md index 9cc97c34669b7e..e5db98aec23d9c 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.supportedtypes.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsresolveimporterrorsoptions.supportedtypes.md @@ -4,6 +4,8 @@ ## SavedObjectsResolveImportErrorsOptions.supportedTypes property +the list of allowed types to import + <b>Signature:</b> ```typescript diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsservicesetup.getimportexportobjectlimit.md b/docs/development/core/server/kibana-plugin-server.savedobjectsservicesetup.getimportexportobjectlimit.md new file mode 100644 index 00000000000000..d8ec90d1718dc5 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsservicesetup.getimportexportobjectlimit.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [SavedObjectsServiceSetup](./kibana-plugin-server.savedobjectsservicesetup.md) > [getImportExportObjectLimit](./kibana-plugin-server.savedobjectsservicesetup.getimportexportobjectlimit.md) + +## SavedObjectsServiceSetup.getImportExportObjectLimit property + +Returns the maximum number of objects allowed for import or export operations. + +<b>Signature:</b> + +```typescript +getImportExportObjectLimit: () => number; +``` diff --git a/docs/development/core/server/kibana-plugin-server.savedobjectsservicesetup.md b/docs/development/core/server/kibana-plugin-server.savedobjectsservicesetup.md index 963c4bbeb55153..2cc070d105d9f7 100644 --- a/docs/development/core/server/kibana-plugin-server.savedobjectsservicesetup.md +++ b/docs/development/core/server/kibana-plugin-server.savedobjectsservicesetup.md @@ -54,6 +54,7 @@ export class Plugin() { | Property | Type | Description | | --- | --- | --- | | [addClientWrapper](./kibana-plugin-server.savedobjectsservicesetup.addclientwrapper.md) | <code>(priority: number, id: string, factory: SavedObjectsClientWrapperFactory) => void</code> | Add a [client wrapper factory](./kibana-plugin-server.savedobjectsclientwrapperfactory.md) with the given priority. | +| [getImportExportObjectLimit](./kibana-plugin-server.savedobjectsservicesetup.getimportexportobjectlimit.md) | <code>() => number</code> | Returns the maximum number of objects allowed for import or export operations. | | [registerType](./kibana-plugin-server.savedobjectsservicesetup.registertype.md) | <code>(type: SavedObjectsType) => void</code> | Register a [savedObjects type](./kibana-plugin-server.savedobjectstype.md) definition.<!-- -->See the [mappings format](./kibana-plugin-server.savedobjectstypemappingdefinition.md) and [migration format](./kibana-plugin-server.savedobjectmigrationmap.md) for more details about these. | | [setClientFactoryProvider](./kibana-plugin-server.savedobjectsservicesetup.setclientfactoryprovider.md) | <code>(clientFactoryProvider: SavedObjectsClientFactoryProvider) => void</code> | Set the default [factory provider](./kibana-plugin-server.savedobjectsclientfactoryprovider.md) for creating Saved Objects clients. Only one provider can be set, subsequent calls to this method will fail. | diff --git a/src/core/server/index.ts b/src/core/server/index.ts index 0c112e3cfb5b2a..7d856ae1011793 100644 --- a/src/core/server/index.ts +++ b/src/core/server/index.ts @@ -231,6 +231,9 @@ export { SavedObjectsType, SavedObjectMigrationMap, SavedObjectMigrationFn, + exportSavedObjectsToStream, + importSavedObjectsFromStream, + resolveSavedObjectsImportErrors, } from './saved_objects'; export { diff --git a/src/core/server/legacy/legacy_service.ts b/src/core/server/legacy/legacy_service.ts index 44f77b5ad215e7..ca83a287c57e6d 100644 --- a/src/core/server/legacy/legacy_service.ts +++ b/src/core/server/legacy/legacy_service.ts @@ -300,6 +300,7 @@ export class LegacyService implements CoreService { setClientFactoryProvider: setupDeps.core.savedObjects.setClientFactoryProvider, addClientWrapper: setupDeps.core.savedObjects.addClientWrapper, registerType: setupDeps.core.savedObjects.registerType, + getImportExportObjectLimit: setupDeps.core.savedObjects.getImportExportObjectLimit, }, uiSettings: { register: setupDeps.core.uiSettings.register, diff --git a/src/core/server/plugins/plugin_context.ts b/src/core/server/plugins/plugin_context.ts index a8a16713f69a41..f2a44e9f78d4ff 100644 --- a/src/core/server/plugins/plugin_context.ts +++ b/src/core/server/plugins/plugin_context.ts @@ -170,6 +170,7 @@ export function createPluginSetupContext<TPlugin, TPluginDependencies>( setClientFactoryProvider: deps.savedObjects.setClientFactoryProvider, addClientWrapper: deps.savedObjects.addClientWrapper, registerType: deps.savedObjects.registerType, + getImportExportObjectLimit: deps.savedObjects.getImportExportObjectLimit, }, uiSettings: { register: deps.uiSettings.register, diff --git a/src/core/server/saved_objects/export/get_sorted_objects_for_export.test.ts b/src/core/server/saved_objects/export/get_sorted_objects_for_export.test.ts index 1088478add1373..32485f461f59b9 100644 --- a/src/core/server/saved_objects/export/get_sorted_objects_for_export.test.ts +++ b/src/core/server/saved_objects/export/get_sorted_objects_for_export.test.ts @@ -17,7 +17,7 @@ * under the License. */ -import { getSortedObjectsForExport } from './get_sorted_objects_for_export'; +import { exportSavedObjectsToStream } from './get_sorted_objects_for_export'; import { savedObjectsClientMock } from '../service/saved_objects_client.mock'; import { Readable } from 'stream'; import { createPromiseFromStreams, createConcatStream } from '../../../../legacy/utils/streams'; @@ -65,7 +65,7 @@ describe('getSortedObjectsForExport()', () => { per_page: 1, page: 0, }); - const exportStream = await getSortedObjectsForExport({ + const exportStream = await exportSavedObjectsToStream({ savedObjectsClient, exportSizeLimit: 500, types: ['index-pattern', 'search'], @@ -151,7 +151,7 @@ describe('getSortedObjectsForExport()', () => { per_page: 1, page: 0, }); - const exportStream = await getSortedObjectsForExport({ + const exportStream = await exportSavedObjectsToStream({ savedObjectsClient, exportSizeLimit: 500, types: ['index-pattern', 'search'], @@ -210,7 +210,7 @@ describe('getSortedObjectsForExport()', () => { per_page: 1, page: 0, }); - const exportStream = await getSortedObjectsForExport({ + const exportStream = await exportSavedObjectsToStream({ savedObjectsClient, exportSizeLimit: 500, types: ['index-pattern', 'search'], @@ -297,7 +297,7 @@ describe('getSortedObjectsForExport()', () => { per_page: 1, page: 0, }); - const exportStream = await getSortedObjectsForExport({ + const exportStream = await exportSavedObjectsToStream({ savedObjectsClient, exportSizeLimit: 500, types: ['index-pattern', 'search'], @@ -385,7 +385,7 @@ describe('getSortedObjectsForExport()', () => { page: 0, }); await expect( - getSortedObjectsForExport({ + exportSavedObjectsToStream({ savedObjectsClient, exportSizeLimit: 1, types: ['index-pattern', 'search'], @@ -425,7 +425,7 @@ describe('getSortedObjectsForExport()', () => { }, ], }); - const exportStream = await getSortedObjectsForExport({ + const exportStream = await exportSavedObjectsToStream({ exportSizeLimit: 10000, savedObjectsClient, types: ['index-pattern'], @@ -489,7 +489,7 @@ describe('getSortedObjectsForExport()', () => { }, ], }); - const exportStream = await getSortedObjectsForExport({ + const exportStream = await exportSavedObjectsToStream({ exportSizeLimit: 10000, savedObjectsClient, objects: [ @@ -587,7 +587,7 @@ describe('getSortedObjectsForExport()', () => { }, ], }); - const exportStream = await getSortedObjectsForExport({ + const exportStream = await exportSavedObjectsToStream({ exportSizeLimit: 10000, savedObjectsClient, objects: [ @@ -681,7 +681,7 @@ describe('getSortedObjectsForExport()', () => { }, ], }; - await expect(getSortedObjectsForExport(exportOpts)).rejects.toThrowErrorMatchingInlineSnapshot( + await expect(exportSavedObjectsToStream(exportOpts)).rejects.toThrowErrorMatchingInlineSnapshot( `"Can't export more than 1 objects"` ); }); @@ -694,7 +694,7 @@ describe('getSortedObjectsForExport()', () => { objects: undefined, }; - expect(getSortedObjectsForExport(exportOpts)).rejects.toThrowErrorMatchingInlineSnapshot( + expect(exportSavedObjectsToStream(exportOpts)).rejects.toThrowErrorMatchingInlineSnapshot( `"Either \`type\` or \`objects\` are required."` ); }); @@ -707,7 +707,7 @@ describe('getSortedObjectsForExport()', () => { search: 'foo', }; - expect(getSortedObjectsForExport(exportOpts)).rejects.toThrowErrorMatchingInlineSnapshot( + expect(exportSavedObjectsToStream(exportOpts)).rejects.toThrowErrorMatchingInlineSnapshot( `"Can't specify both \\"search\\" and \\"objects\\" properties when exporting"` ); }); diff --git a/src/core/server/saved_objects/export/get_sorted_objects_for_export.ts b/src/core/server/saved_objects/export/get_sorted_objects_for_export.ts index 4b4cf1146aca01..a703c9f9fbd96c 100644 --- a/src/core/server/saved_objects/export/get_sorted_objects_for_export.ts +++ b/src/core/server/saved_objects/export/get_sorted_objects_for_export.ts @@ -124,7 +124,13 @@ async function fetchObjectsToExport({ } } -export async function getSortedObjectsForExport({ +/** + * Generates sorted saved object stream to be used for export. + * See the {@link SavedObjectsExportOptions | options} for more detailed information. + * + * @public + */ +export async function exportSavedObjectsToStream({ types, objects, search, diff --git a/src/core/server/saved_objects/export/index.ts b/src/core/server/saved_objects/export/index.ts index 7533b8e5000391..37824cceb18cba 100644 --- a/src/core/server/saved_objects/export/index.ts +++ b/src/core/server/saved_objects/export/index.ts @@ -18,7 +18,7 @@ */ export { - getSortedObjectsForExport, + exportSavedObjectsToStream, SavedObjectsExportOptions, SavedObjectsExportResultDetails, } from './get_sorted_objects_for_export'; diff --git a/src/core/server/saved_objects/import/import_saved_objects.test.ts b/src/core/server/saved_objects/import/import_saved_objects.test.ts index f0719cbf4c829b..b43e5063c13e1e 100644 --- a/src/core/server/saved_objects/import/import_saved_objects.test.ts +++ b/src/core/server/saved_objects/import/import_saved_objects.test.ts @@ -19,7 +19,7 @@ import { Readable } from 'stream'; import { SavedObject } from '../types'; -import { importSavedObjects } from './import_saved_objects'; +import { importSavedObjectsFromStream } from './import_saved_objects'; import { savedObjectsClientMock } from '../../mocks'; const emptyResponse = { @@ -76,7 +76,7 @@ describe('importSavedObjects()', () => { this.push(null); }, }); - const result = await importSavedObjects({ + const result = await importSavedObjectsFromStream({ readStream, objectLimit: 1, overwrite: false, @@ -103,7 +103,7 @@ describe('importSavedObjects()', () => { savedObjectsClient.bulkCreate.mockResolvedValue({ saved_objects: savedObjects, }); - const result = await importSavedObjects({ + const result = await importSavedObjectsFromStream({ readStream, objectLimit: 4, overwrite: false, @@ -186,7 +186,7 @@ describe('importSavedObjects()', () => { savedObjectsClient.bulkCreate.mockResolvedValue({ saved_objects: savedObjects, }); - const result = await importSavedObjects({ + const result = await importSavedObjectsFromStream({ readStream, objectLimit: 4, overwrite: false, @@ -270,7 +270,7 @@ describe('importSavedObjects()', () => { savedObjectsClient.bulkCreate.mockResolvedValue({ saved_objects: savedObjects, }); - const result = await importSavedObjects({ + const result = await importSavedObjectsFromStream({ readStream, objectLimit: 4, overwrite: true, @@ -362,7 +362,7 @@ describe('importSavedObjects()', () => { references: [], })), }); - const result = await importSavedObjects({ + const result = await importSavedObjectsFromStream({ readStream, objectLimit: 4, overwrite: false, @@ -460,7 +460,7 @@ describe('importSavedObjects()', () => { }, ], }); - const result = await importSavedObjects({ + const result = await importSavedObjectsFromStream({ readStream, objectLimit: 4, overwrite: false, @@ -536,7 +536,7 @@ describe('importSavedObjects()', () => { savedObjectsClient.bulkCreate.mockResolvedValue({ saved_objects: savedObjects, }); - const result = await importSavedObjects({ + const result = await importSavedObjectsFromStream({ readStream, objectLimit: 5, overwrite: false, diff --git a/src/core/server/saved_objects/import/import_saved_objects.ts b/src/core/server/saved_objects/import/import_saved_objects.ts index ef3b4a214c2c29..cb1d70e5c8dc42 100644 --- a/src/core/server/saved_objects/import/import_saved_objects.ts +++ b/src/core/server/saved_objects/import/import_saved_objects.ts @@ -26,7 +26,13 @@ import { } from './types'; import { validateReferences } from './validate_references'; -export async function importSavedObjects({ +/** + * Import saved objects from given stream. See the {@link SavedObjectsImportOptions | options} for more + * detailed information. + * + * @public + */ +export async function importSavedObjectsFromStream({ readStream, objectLimit, overwrite, diff --git a/src/core/server/saved_objects/import/index.ts b/src/core/server/saved_objects/import/index.ts index 95fa8aa192f3e8..e268e970b94acc 100644 --- a/src/core/server/saved_objects/import/index.ts +++ b/src/core/server/saved_objects/import/index.ts @@ -17,8 +17,8 @@ * under the License. */ -export { importSavedObjects } from './import_saved_objects'; -export { resolveImportErrors } from './resolve_import_errors'; +export { importSavedObjectsFromStream } from './import_saved_objects'; +export { resolveSavedObjectsImportErrors } from './resolve_import_errors'; export { SavedObjectsImportResponse, SavedObjectsImportError, diff --git a/src/core/server/saved_objects/import/resolve_import_errors.test.ts b/src/core/server/saved_objects/import/resolve_import_errors.test.ts index c522d76f1ff041..2c6d89e0a0a47b 100644 --- a/src/core/server/saved_objects/import/resolve_import_errors.test.ts +++ b/src/core/server/saved_objects/import/resolve_import_errors.test.ts @@ -19,7 +19,7 @@ import { Readable } from 'stream'; import { SavedObject } from '../types'; -import { resolveImportErrors } from './resolve_import_errors'; +import { resolveSavedObjectsImportErrors } from './resolve_import_errors'; import { savedObjectsClientMock } from '../../mocks'; describe('resolveImportErrors()', () => { @@ -80,7 +80,7 @@ describe('resolveImportErrors()', () => { savedObjectsClient.bulkCreate.mockResolvedValue({ saved_objects: [], }); - const result = await resolveImportErrors({ + const result = await resolveSavedObjectsImportErrors({ readStream, objectLimit: 4, retries: [], @@ -107,7 +107,7 @@ describe('resolveImportErrors()', () => { savedObjectsClient.bulkCreate.mockResolvedValueOnce({ saved_objects: savedObjects.filter(obj => obj.type === 'visualization' && obj.id === '3'), }); - const result = await resolveImportErrors({ + const result = await resolveSavedObjectsImportErrors({ readStream, objectLimit: 4, retries: [ @@ -168,7 +168,7 @@ describe('resolveImportErrors()', () => { savedObjectsClient.bulkCreate.mockResolvedValue({ saved_objects: savedObjects.filter(obj => obj.type === 'index-pattern' && obj.id === '1'), }); - const result = await resolveImportErrors({ + const result = await resolveSavedObjectsImportErrors({ readStream, objectLimit: 4, retries: [ @@ -230,7 +230,7 @@ describe('resolveImportErrors()', () => { savedObjectsClient.bulkCreate.mockResolvedValue({ saved_objects: savedObjects.filter(obj => obj.type === 'dashboard' && obj.id === '4'), }); - const result = await resolveImportErrors({ + const result = await resolveSavedObjectsImportErrors({ readStream, objectLimit: 4, retries: [ @@ -312,7 +312,7 @@ describe('resolveImportErrors()', () => { references: [], })), }); - const result = await resolveImportErrors({ + const result = await resolveSavedObjectsImportErrors({ readStream, objectLimit: 4, retries: savedObjects.map(obj => ({ @@ -415,7 +415,7 @@ describe('resolveImportErrors()', () => { }, ], }); - const result = await resolveImportErrors({ + const result = await resolveSavedObjectsImportErrors({ readStream, objectLimit: 2, retries: [ @@ -503,7 +503,7 @@ describe('resolveImportErrors()', () => { savedObjectsClient.bulkCreate.mockResolvedValue({ saved_objects: [], }); - const result = await resolveImportErrors({ + const result = await resolveSavedObjectsImportErrors({ readStream, objectLimit: 5, retries: [ @@ -547,7 +547,7 @@ describe('resolveImportErrors()', () => { savedObjectsClient.bulkCreate.mockResolvedValue({ saved_objects: savedObjects.filter(obj => obj.type === 'index-pattern' && obj.id === '1'), }); - const result = await resolveImportErrors({ + const result = await resolveSavedObjectsImportErrors({ readStream, objectLimit: 4, retries: [ diff --git a/src/core/server/saved_objects/import/resolve_import_errors.ts b/src/core/server/saved_objects/import/resolve_import_errors.ts index 6f56f283b4aec1..d9ac5678825730 100644 --- a/src/core/server/saved_objects/import/resolve_import_errors.ts +++ b/src/core/server/saved_objects/import/resolve_import_errors.ts @@ -27,7 +27,13 @@ import { } from './types'; import { validateReferences } from './validate_references'; -export async function resolveImportErrors({ +/** + * Resolve and return saved object import errors. + * See the {@link SavedObjectsResolveImportErrorsOptions | options} for more detailed informations. + * + * @public + */ +export async function resolveSavedObjectsImportErrors({ readStream, objectLimit, retries, diff --git a/src/core/server/saved_objects/import/types.ts b/src/core/server/saved_objects/import/types.ts index 44046378a7b97c..067579f54edac9 100644 --- a/src/core/server/saved_objects/import/types.ts +++ b/src/core/server/saved_objects/import/types.ts @@ -107,11 +107,17 @@ export interface SavedObjectsImportResponse { * @public */ export interface SavedObjectsImportOptions { + /** The stream of {@link SavedObject | saved objects} to import */ readStream: Readable; + /** The maximum number of object to import */ objectLimit: number; + /** if true, will override existing object if present */ overwrite: boolean; + /** {@link SavedObjectsClientContract | client} to use to perform the import operation */ savedObjectsClient: SavedObjectsClientContract; + /** the list of allowed types to import */ supportedTypes: string[]; + /** if specified, will import in given namespace, else will import as global object */ namespace?: string; } @@ -120,10 +126,16 @@ export interface SavedObjectsImportOptions { * @public */ export interface SavedObjectsResolveImportErrorsOptions { + /** The stream of {@link SavedObject | saved objects} to resolve errors from */ readStream: Readable; + /** The maximum number of object to import */ objectLimit: number; + /** client to use to perform the import operation */ savedObjectsClient: SavedObjectsClientContract; + /** saved object import references to retry */ retries: SavedObjectsImportRetry[]; + /** the list of allowed types to import */ supportedTypes: string[]; + /** if specified, will import in given namespace */ namespace?: string; } diff --git a/src/core/server/saved_objects/index.ts b/src/core/server/saved_objects/index.ts index 9bfe6580282581..661c6cbb79e58d 100644 --- a/src/core/server/saved_objects/index.ts +++ b/src/core/server/saved_objects/index.ts @@ -26,7 +26,7 @@ export { SavedObjectsManagement } from './management'; export * from './import'; export { - getSortedObjectsForExport, + exportSavedObjectsToStream, SavedObjectsExportOptions, SavedObjectsExportResultDetails, } from './export'; diff --git a/src/core/server/saved_objects/routes/export.ts b/src/core/server/saved_objects/routes/export.ts index ab287332d8a65d..04d310681aec5a 100644 --- a/src/core/server/saved_objects/routes/export.ts +++ b/src/core/server/saved_objects/routes/export.ts @@ -26,7 +26,7 @@ import { } from '../../../../legacy/utils/streams'; import { IRouter } from '../../http'; import { SavedObjectConfig } from '../saved_objects_config'; -import { getSortedObjectsForExport } from '../export'; +import { exportSavedObjectsToStream } from '../export'; export const registerExportRoute = ( router: IRouter, @@ -67,7 +67,7 @@ export const registerExportRoute = ( router.handleLegacyErrors(async (context, req, res) => { const savedObjectsClient = context.core.savedObjects.client; const { type, objects, search, excludeExportDetails, includeReferencesDeep } = req.body; - const exportStream = await getSortedObjectsForExport({ + const exportStream = await exportSavedObjectsToStream({ savedObjectsClient, types: typeof type === 'string' ? [type] : type, search, diff --git a/src/core/server/saved_objects/routes/import.ts b/src/core/server/saved_objects/routes/import.ts index e3f249dca05f7b..313e84c0b301d1 100644 --- a/src/core/server/saved_objects/routes/import.ts +++ b/src/core/server/saved_objects/routes/import.ts @@ -21,7 +21,7 @@ import { Readable } from 'stream'; import { extname } from 'path'; import { schema } from '@kbn/config-schema'; import { IRouter } from '../../http'; -import { importSavedObjects } from '../import'; +import { importSavedObjectsFromStream } from '../import'; import { SavedObjectConfig } from '../saved_objects_config'; import { createSavedObjectsStreamFromNdJson } from './utils'; @@ -65,7 +65,7 @@ export const registerImportRoute = ( return res.badRequest({ body: `Invalid file extension ${fileExtension}` }); } - const result = await importSavedObjects({ + const result = await importSavedObjectsFromStream({ supportedTypes, savedObjectsClient: context.core.savedObjects.client, readStream: createSavedObjectsStreamFromNdJson(file), diff --git a/src/core/server/saved_objects/routes/integration_tests/export.test.ts b/src/core/server/saved_objects/routes/integration_tests/export.test.ts index b52a8957176cc2..a81079b6825d62 100644 --- a/src/core/server/saved_objects/routes/integration_tests/export.test.ts +++ b/src/core/server/saved_objects/routes/integration_tests/export.test.ts @@ -18,7 +18,7 @@ */ jest.mock('../../export', () => ({ - getSortedObjectsForExport: jest.fn(), + exportSavedObjectsToStream: jest.fn(), })); import * as exportMock from '../../export'; @@ -30,7 +30,7 @@ import { registerExportRoute } from '../export'; import { setupServer } from './test_utils'; type setupServerReturn = UnwrapPromise<ReturnType<typeof setupServer>>; -const getSortedObjectsForExport = exportMock.getSortedObjectsForExport as jest.Mock; +const exportSavedObjectsToStream = exportMock.exportSavedObjectsToStream as jest.Mock; const allowedTypes = ['index-pattern', 'search']; const config = { maxImportPayloadBytes: 10485760, @@ -76,7 +76,7 @@ describe('POST /api/saved_objects/_export', () => { ], }, ]; - getSortedObjectsForExport.mockResolvedValueOnce(createListStream(sortedObjects)); + exportSavedObjectsToStream.mockResolvedValueOnce(createListStream(sortedObjects)); const result = await supertest(httpSetup.server.listener) .post('/api/saved_objects/_export') @@ -96,7 +96,7 @@ describe('POST /api/saved_objects/_export', () => { const objects = (result.text as string).split('\n').map(row => JSON.parse(row)); expect(objects).toEqual(sortedObjects); - expect(getSortedObjectsForExport.mock.calls[0][0]).toEqual( + expect(exportSavedObjectsToStream.mock.calls[0][0]).toEqual( expect.objectContaining({ excludeExportDetails: false, exportSizeLimit: 10000, diff --git a/src/core/server/saved_objects/routes/resolve_import_errors.ts b/src/core/server/saved_objects/routes/resolve_import_errors.ts index efa7add7951b0d..a10a19ba1d8ff3 100644 --- a/src/core/server/saved_objects/routes/resolve_import_errors.ts +++ b/src/core/server/saved_objects/routes/resolve_import_errors.ts @@ -21,7 +21,7 @@ import { extname } from 'path'; import { Readable } from 'stream'; import { schema } from '@kbn/config-schema'; import { IRouter } from '../../http'; -import { resolveImportErrors } from '../import'; +import { resolveSavedObjectsImportErrors } from '../import'; import { SavedObjectConfig } from '../saved_objects_config'; import { createSavedObjectsStreamFromNdJson } from './utils'; @@ -75,7 +75,7 @@ export const registerResolveImportErrorsRoute = ( if (fileExtension !== '.ndjson') { return res.badRequest({ body: `Invalid file extension ${fileExtension}` }); } - const result = await resolveImportErrors({ + const result = await resolveSavedObjectsImportErrors({ supportedTypes, savedObjectsClient: context.core.savedObjects.client, readStream: createSavedObjectsStreamFromNdJson(file), diff --git a/src/core/server/saved_objects/saved_objects_service.mock.ts b/src/core/server/saved_objects/saved_objects_service.mock.ts index cbdff163245366..9fe32b14e64507 100644 --- a/src/core/server/saved_objects/saved_objects_service.mock.ts +++ b/src/core/server/saved_objects/saved_objects_service.mock.ts @@ -64,8 +64,11 @@ const createSetupContractMock = () => { setClientFactoryProvider: jest.fn(), addClientWrapper: jest.fn(), registerType: jest.fn(), + getImportExportObjectLimit: jest.fn(), }; + setupContract.getImportExportObjectLimit.mockReturnValue(100); + return setupContract; }; diff --git a/src/core/server/saved_objects/saved_objects_service.ts b/src/core/server/saved_objects/saved_objects_service.ts index 62e25ad5fb458a..89f7990c771c87 100644 --- a/src/core/server/saved_objects/saved_objects_service.ts +++ b/src/core/server/saved_objects/saved_objects_service.ts @@ -154,6 +154,11 @@ export interface SavedObjectsServiceSetup { * This API is the single entry point to register saved object types in the new platform. */ registerType: (type: SavedObjectsType) => void; + + /** + * Returns the maximum number of objects allowed for import or export operations. + */ + getImportExportObjectLimit: () => number; } /** @@ -344,6 +349,7 @@ export class SavedObjectsService } this.typeRegistry.registerType(type); }, + getImportExportObjectLimit: () => this.config!.maxImportExportSize, }; } diff --git a/src/core/server/saved_objects/types.ts b/src/core/server/saved_objects/types.ts index 495d896ad12cd4..c9c672d0f8b1ce 100644 --- a/src/core/server/saved_objects/types.ts +++ b/src/core/server/saved_objects/types.ts @@ -62,7 +62,6 @@ export interface SavedObjectsMigrationVersion { } /** - * * @public */ export interface SavedObject<T = unknown> { diff --git a/src/core/server/server.api.md b/src/core/server/server.api.md index 8c5e84446a0d3c..6b0d962aedcd15 100644 --- a/src/core/server/server.api.md +++ b/src/core/server/server.api.md @@ -766,6 +766,9 @@ export interface ErrorHttpResponseOptions { headers?: ResponseHeaders; } +// @public +export function exportSavedObjectsToStream({ types, objects, search, savedObjectsClient, exportSizeLimit, includeReferencesDeep, excludeExportDetails, namespace, }: SavedObjectsExportOptions): Promise<import("stream").Readable>; + // @public export interface FakeRequest { headers: Headers; @@ -894,6 +897,9 @@ export interface ImageValidation { }; } +// @public +export function importSavedObjectsFromStream({ readStream, objectLimit, overwrite, savedObjectsClient, supportedTypes, namespace, }: SavedObjectsImportOptions): Promise<SavedObjectsImportResponse>; + // @public (undocumented) export interface IndexSettingsDeprecationInfo { // (undocumented) @@ -1434,6 +1440,9 @@ export type RequestHandlerContextContainer = IContextContainer<RequestHandler<an // @public export type RequestHandlerContextProvider<TContextName extends keyof RequestHandlerContext> = IContextProvider<RequestHandler<any, any, any>, TContextName>; +// @public +export function resolveSavedObjectsImportErrors({ readStream, objectLimit, retries, savedObjectsClient, supportedTypes, namespace, }: SavedObjectsResolveImportErrorsOptions): Promise<SavedObjectsImportResponse>; + // @public export type ResponseError = string | Error | { message: string | Error; @@ -1896,17 +1905,11 @@ export interface SavedObjectsImportMissingReferencesError { // @public export interface SavedObjectsImportOptions { - // (undocumented) namespace?: string; - // (undocumented) objectLimit: number; - // (undocumented) overwrite: boolean; - // (undocumented) readStream: Readable; - // (undocumented) savedObjectsClient: SavedObjectsClientContract; - // (undocumented) supportedTypes: string[]; } @@ -2060,17 +2063,11 @@ export interface SavedObjectsRepositoryFactory { // @public export interface SavedObjectsResolveImportErrorsOptions { - // (undocumented) namespace?: string; - // (undocumented) objectLimit: number; - // (undocumented) readStream: Readable; - // (undocumented) retries: SavedObjectsImportRetry[]; - // (undocumented) savedObjectsClient: SavedObjectsClientContract; - // (undocumented) supportedTypes: string[]; } @@ -2101,6 +2098,7 @@ export class SavedObjectsSerializer { // @public export interface SavedObjectsServiceSetup { addClientWrapper: (priority: number, id: string, factory: SavedObjectsClientWrapperFactory) => void; + getImportExportObjectLimit: () => number; registerType: (type: SavedObjectsType) => void; setClientFactoryProvider: (clientFactoryProvider: SavedObjectsClientFactoryProvider) => void; } diff --git a/src/legacy/server/saved_objects/saved_objects_mixin.js b/src/legacy/server/saved_objects/saved_objects_mixin.js index f5140fc8d0ac2c..0039fb19bb086c 100644 --- a/src/legacy/server/saved_objects/saved_objects_mixin.js +++ b/src/legacy/server/saved_objects/saved_objects_mixin.js @@ -23,9 +23,9 @@ import { SavedObjectsSchema } from '../../../core/server/saved_objects/schema'; import { SavedObjectsClient, SavedObjectsRepository, - getSortedObjectsForExport, - importSavedObjects, - resolveImportErrors, + exportSavedObjectsToStream, + importSavedObjectsFromStream, + resolveSavedObjectsImportErrors, } from '../../../core/server/saved_objects'; import { getRootPropertiesObjects } from '../../../core/server/saved_objects/mappings'; import { convertTypesToLegacySchema } from '../../../core/server/saved_objects/utils'; @@ -95,9 +95,9 @@ export function savedObjectsMixin(kbnServer, server) { provider.addClientWrapperFactory(...args), importExport: { objectLimit: server.config().get('savedObjects.maxImportExportSize'), - importSavedObjects, - resolveImportErrors, - getSortedObjectsForExport, + importSavedObjects: importSavedObjectsFromStream, + resolveImportErrors: resolveSavedObjectsImportErrors, + getSortedObjectsForExport: exportSavedObjectsToStream, }, schema, }; From 7ad083f33227a104fa36af20e554eafd9b0cf981 Mon Sep 17 00:00:00 2001 From: patrykkopycinski <patryk.kopycinski@elastic.co> Date: Wed, 4 Mar 2020 03:31:10 -0800 Subject: [PATCH 097/120] Restores [SIEM] Fix Timeline registerProvider to be called only when it's needed (#59003) * [SIEM] Fix Timeline registerProvider to be called only when it's needed * cleanup * add unit tests Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../drag_and_drop/draggable_wrapper.test.tsx | 31 +++++- .../drag_and_drop/draggable_wrapper.tsx | 99 +++++++++++-------- 2 files changed, 90 insertions(+), 40 deletions(-) diff --git a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.test.tsx b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.test.tsx index e846c923c5cbe3..9dcc335d4ff162 100644 --- a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.test.tsx +++ b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.test.tsx @@ -12,7 +12,7 @@ import { mockBrowserFields, mocksSource } from '../../containers/source/mock'; import { TestProviders } from '../../mock'; import { mockDataProviders } from '../timeline/data_providers/mock/mock_data_providers'; import { DragDropContextWrapper } from './drag_drop_context_wrapper'; -import { DraggableWrapper } from './draggable_wrapper'; +import { DraggableWrapper, ConditionalPortal } from './draggable_wrapper'; import { useMountAppended } from '../../utils/use_mount_appended'; describe('DraggableWrapper', () => { @@ -84,3 +84,32 @@ describe('DraggableWrapper', () => { }); }); }); + +describe('ConditionalPortal', () => { + const mount = useMountAppended(); + const props = { + usePortal: false, + registerProvider: jest.fn(), + isDragging: true, + }; + + it(`doesn't call registerProvider is NOT isDragging`, () => { + mount( + <ConditionalPortal {...props} isDragging={false}> + <div /> + </ConditionalPortal> + ); + + expect(props.registerProvider.mock.calls.length).toEqual(0); + }); + + it('calls registerProvider when isDragging', () => { + mount( + <ConditionalPortal {...props}> + <div /> + </ConditionalPortal> + ); + + expect(props.registerProvider.mock.calls.length).toEqual(1); + }); +}); diff --git a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.tsx b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.tsx index 7d84403b87f8d0..4b80b9fff2740e 100644 --- a/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.tsx +++ b/x-pack/legacy/plugins/siem/public/components/drag_and_drop/draggable_wrapper.tsx @@ -4,14 +4,14 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { createContext, useContext, useEffect } from 'react'; +import React, { createContext, useCallback, useContext, useEffect, useState } from 'react'; import { Draggable, DraggableProvided, DraggableStateSnapshot, Droppable, } from 'react-beautiful-dnd'; -import { connect, ConnectedProps } from 'react-redux'; +import { useDispatch } from 'react-redux'; import styled from 'styled-components'; import deepEqual from 'fast-deep-equal'; @@ -47,34 +47,50 @@ const ProviderContentWrapper = styled.span` } `; +type RenderFunctionProp = ( + props: DataProvider, + provided: DraggableProvided, + state: DraggableStateSnapshot +) => React.ReactNode; + interface OwnProps { dataProvider: DataProvider; inline?: boolean; - render: ( - props: DataProvider, - provided: DraggableProvided, - state: DraggableStateSnapshot - ) => React.ReactNode; + render: RenderFunctionProp; truncate?: boolean; } -type Props = OwnProps & PropsFromRedux; +type Props = OwnProps; /** * Wraps a draggable component to handle registration / unregistration of the * data provider associated with the item being dropped */ -const DraggableWrapperComponent = React.memo<Props>( - ({ dataProvider, registerProvider, render, truncate, unRegisterProvider }) => { +export const DraggableWrapper = React.memo<Props>( + ({ dataProvider, render, truncate }) => { + const [providerRegistered, setProviderRegistered] = useState(false); + const dispatch = useDispatch(); const usePortal = useDraggablePortalContext(); - useEffect(() => { - registerProvider!({ provider: dataProvider }); - return () => { - unRegisterProvider!({ id: dataProvider.id }); - }; - }, []); + const registerProvider = useCallback(() => { + if (!providerRegistered) { + dispatch(dragAndDropActions.registerProvider({ provider: dataProvider })); + setProviderRegistered(true); + } + }, [dispatch, providerRegistered, dataProvider]); + + const unRegisterProvider = useCallback( + () => dispatch(dragAndDropActions.unRegisterProvider({ id: dataProvider.id })), + [dispatch, dataProvider] + ); + + useEffect( + () => () => { + unRegisterProvider(); + }, + [] + ); return ( <Wrapper data-test-subj="draggableWrapperDiv"> @@ -87,13 +103,18 @@ const DraggableWrapperComponent = React.memo<Props>( key={getDraggableId(dataProvider.id)} > {(provided, snapshot) => ( - <ConditionalPortal usePortal={snapshot.isDragging && usePortal}> + <ConditionalPortal + isDragging={snapshot.isDragging} + registerProvider={registerProvider} + usePortal={snapshot.isDragging && usePortal} + > <ProviderContainer {...provided.draggableProps} {...provided.dragHandleProps} ref={provided.innerRef} data-test-subj="providerContainer" isDragging={snapshot.isDragging} + registerProvider={registerProvider} style={{ ...provided.draggableProps.style, }} @@ -120,28 +141,12 @@ const DraggableWrapperComponent = React.memo<Props>( </Wrapper> ); }, - (prevProps, nextProps) => { - return ( - deepEqual(prevProps.dataProvider, nextProps.dataProvider) && - prevProps.render !== nextProps.render && - prevProps.truncate === nextProps.truncate - ); - } + (prevProps, nextProps) => + deepEqual(prevProps.dataProvider, nextProps.dataProvider) && + prevProps.render !== nextProps.render && + prevProps.truncate === nextProps.truncate ); -DraggableWrapperComponent.displayName = 'DraggableWrapperComponent'; - -const mapDispatchToProps = { - registerProvider: dragAndDropActions.registerProvider, - unRegisterProvider: dragAndDropActions.unRegisterProvider, -}; - -const connector = connect(null, mapDispatchToProps); - -type PropsFromRedux = ConnectedProps<typeof connector>; - -export const DraggableWrapper = connector(DraggableWrapperComponent); - DraggableWrapper.displayName = 'DraggableWrapper'; /** @@ -150,8 +155,24 @@ DraggableWrapper.displayName = 'DraggableWrapper'; * * See: https://github.com/atlassian/react-beautiful-dnd/issues/499 */ -const ConditionalPortal = React.memo<{ children: React.ReactNode; usePortal: boolean }>( - ({ children, usePortal }) => (usePortal ? <EuiPortal>{children}</EuiPortal> : <>{children}</>) + +interface ConditionalPortalProps { + children: React.ReactNode; + usePortal: boolean; + isDragging: boolean; + registerProvider: () => void; +} + +export const ConditionalPortal = React.memo<ConditionalPortalProps>( + ({ children, usePortal, registerProvider, isDragging }) => { + useEffect(() => { + if (isDragging) { + registerProvider(); + } + }, [isDragging, registerProvider]); + + return usePortal ? <EuiPortal>{children}</EuiPortal> : <>{children}</>; + } ); ConditionalPortal.displayName = 'ConditionalPortal'; From 7e253016982b4905e5dafc4d857ff7567b554aca Mon Sep 17 00:00:00 2001 From: Walter Rafelsberger <walter@elastic.co> Date: Wed, 4 Mar 2020 13:02:43 +0100 Subject: [PATCH 098/120] [ML] Updated ML and transform CODEOWNERS for NP. (#59286) Updates CODEOWNERS to include NP plugin paths for the ML and transform plugin. --- .github/CODEOWNERS | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index de46bcfa698308..9a3d884c01b432 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -80,12 +80,14 @@ # Machine Learning /x-pack/legacy/plugins/ml/ @elastic/ml-ui +/x-pack/plugins/ml/ @elastic/ml-ui /x-pack/test/functional/apps/machine_learning/ @elastic/ml-ui /x-pack/test/functional/services/machine_learning/ @elastic/ml-ui /x-pack/test/functional/services/ml.ts @elastic/ml-ui # ML team owns the transform plugin, ES team added here for visibility # because the plugin lives in Kibana's Elasticsearch management section. /x-pack/legacy/plugins/transform/ @elastic/ml-ui @elastic/es-ui +/x-pack/plugins/transform/ @elastic/ml-ui @elastic/es-ui /x-pack/test/functional/apps/transform/ @elastic/ml-ui /x-pack/test/functional/services/transform_ui/ @elastic/ml-ui /x-pack/test/functional/services/transform.ts @elastic/ml-ui From c4458ca1b479f4aa789e0edfd733d25eec617884 Mon Sep 17 00:00:00 2001 From: Aaron Caldwell <aaron.caldwell@elastic.co> Date: Wed, 4 Mar 2020 06:44:44 -0700 Subject: [PATCH 099/120] [File upload] Move File Upload to New Platform (#58550) * Move file upload to np. Some additional mods & removals * Consume file upload from NP in maps and pass to kibana services * Register telemetry mappings * Init indexPatternService in start method * Fix type check issues. Add missing prop to telemetry * Update i18n path * Review feedback --- x-pack/.i18nrc.json | 2 +- x-pack/index.js | 2 -- x-pack/legacy/plugins/file_upload/index.js | 36 ------------------- .../plugins/maps/public/kibana_services.js | 6 ++++ .../create_client_file_source_editor.js | 5 +-- x-pack/legacy/plugins/maps/public/plugin.ts | 3 +- .../common/constants/file_import.ts | 0 x-pack/plugins/file_upload/kibana.json | 9 +++++ .../plugins/file_upload/mappings.ts | 0 .../public/components/index_settings.js | 0 .../public/components/json_import_progress.js | 0 .../components/json_index_file_picker.js | 0 .../components/json_upload_and_parse.js | 0 .../plugins/file_upload/public/index.ts | 0 .../file_upload/public/kibana_services.js | 16 ++++----- .../plugins/file_upload/public/plugin.ts | 22 ++++++++---- .../file_upload/public/util/file_parser.js | 0 .../public/util/file_parser.test.js | 0 .../util/geo_json_clean_and_validate.js | 0 .../util/geo_json_clean_and_validate.test.js | 0 .../file_upload/public/util/geo_processing.js | 0 .../public/util/geo_processing.test.js | 0 .../file_upload/public/util/http_service.js | 0 .../public/util/indexing_service.js | 0 .../public/util/indexing_service.test.js | 0 .../file_upload/public/util/pattern_reader.js | 0 .../public/util/size_limited_chunking.js | 0 .../public/util/size_limited_chunking.test.js | 0 .../client/call_with_request_factory.js | 0 .../file_upload/server/client/errors.js | 0 .../file_upload/server/index.js} | 8 ++--- .../server/kibana_server_services.js | 0 .../server/models/import_data/import_data.js | 0 .../server/models/import_data/index.js | 0 .../plugins/file_upload/server/plugin.js | 10 +++--- .../file_upload/server/routes/file_upload.js | 0 .../server/routes/file_upload.test.js | 0 .../telemetry/file_upload_usage_collector.ts | 0 .../file_upload/server/telemetry/index.ts | 1 + .../file_upload/server/telemetry/mappings.ts | 21 +++++++++++ .../server/telemetry/telemetry.test.ts | 0 .../file_upload/server/telemetry/telemetry.ts | 0 42 files changed, 74 insertions(+), 67 deletions(-) delete mode 100644 x-pack/legacy/plugins/file_upload/index.js rename x-pack/{legacy => }/plugins/file_upload/common/constants/file_import.ts (100%) create mode 100644 x-pack/plugins/file_upload/kibana.json rename x-pack/{legacy => }/plugins/file_upload/mappings.ts (100%) rename x-pack/{legacy => }/plugins/file_upload/public/components/index_settings.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/components/json_import_progress.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/components/json_index_file_picker.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/components/json_upload_and_parse.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/index.ts (100%) rename x-pack/{legacy => }/plugins/file_upload/public/kibana_services.js (53%) rename x-pack/{legacy => }/plugins/file_upload/public/plugin.ts (53%) rename x-pack/{legacy => }/plugins/file_upload/public/util/file_parser.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/util/file_parser.test.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/util/geo_json_clean_and_validate.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/util/geo_json_clean_and_validate.test.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/util/geo_processing.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/util/geo_processing.test.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/util/http_service.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/util/indexing_service.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/util/indexing_service.test.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/util/pattern_reader.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/util/size_limited_chunking.js (100%) rename x-pack/{legacy => }/plugins/file_upload/public/util/size_limited_chunking.test.js (100%) rename x-pack/{legacy => }/plugins/file_upload/server/client/call_with_request_factory.js (100%) rename x-pack/{legacy => }/plugins/file_upload/server/client/errors.js (100%) rename x-pack/{legacy/plugins/file_upload/public/legacy.ts => plugins/file_upload/server/index.js} (60%) rename x-pack/{legacy => }/plugins/file_upload/server/kibana_server_services.js (100%) rename x-pack/{legacy => }/plugins/file_upload/server/models/import_data/import_data.js (100%) rename x-pack/{legacy => }/plugins/file_upload/server/models/import_data/index.js (100%) rename x-pack/{legacy => }/plugins/file_upload/server/plugin.js (79%) rename x-pack/{legacy => }/plugins/file_upload/server/routes/file_upload.js (100%) rename x-pack/{legacy => }/plugins/file_upload/server/routes/file_upload.test.js (100%) rename x-pack/{legacy => }/plugins/file_upload/server/telemetry/file_upload_usage_collector.ts (100%) rename x-pack/{legacy => }/plugins/file_upload/server/telemetry/index.ts (83%) create mode 100644 x-pack/plugins/file_upload/server/telemetry/mappings.ts rename x-pack/{legacy => }/plugins/file_upload/server/telemetry/telemetry.test.ts (100%) rename x-pack/{legacy => }/plugins/file_upload/server/telemetry/telemetry.ts (100%) diff --git a/x-pack/.i18nrc.json b/x-pack/.i18nrc.json index 8f5a5ea4f10e40..824bb764345f3a 100644 --- a/x-pack/.i18nrc.json +++ b/x-pack/.i18nrc.json @@ -14,7 +14,7 @@ "xpack.drilldowns": "plugins/drilldowns", "xpack.endpoint": "plugins/endpoint", "xpack.features": "plugins/features", - "xpack.fileUpload": "legacy/plugins/file_upload", + "xpack.fileUpload": "plugins/file_upload", "xpack.graph": ["legacy/plugins/graph", "plugins/graph"], "xpack.grokDebugger": "legacy/plugins/grokdebugger", "xpack.idxMgmt": "plugins/index_management", diff --git a/x-pack/index.js b/x-pack/index.js index f3f569e021070d..6b84c74690615a 100644 --- a/x-pack/index.js +++ b/x-pack/index.js @@ -30,7 +30,6 @@ import { remoteClusters } from './legacy/plugins/remote_clusters'; import { crossClusterReplication } from './legacy/plugins/cross_cluster_replication'; import { upgradeAssistant } from './legacy/plugins/upgrade_assistant'; import { uptime } from './legacy/plugins/uptime'; -import { fileUpload } from './legacy/plugins/file_upload'; import { encryptedSavedObjects } from './legacy/plugins/encrypted_saved_objects'; import { snapshotRestore } from './legacy/plugins/snapshot_restore'; import { transform } from './legacy/plugins/transform'; @@ -69,7 +68,6 @@ module.exports = function(kibana) { crossClusterReplication(kibana), upgradeAssistant(kibana), uptime(kibana), - fileUpload(kibana), encryptedSavedObjects(kibana), lens(kibana), snapshotRestore(kibana), diff --git a/x-pack/legacy/plugins/file_upload/index.js b/x-pack/legacy/plugins/file_upload/index.js deleted file mode 100644 index 23e1e1d98aa7fb..00000000000000 --- a/x-pack/legacy/plugins/file_upload/index.js +++ /dev/null @@ -1,36 +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 { FileUploadPlugin } from './server/plugin'; -import { mappings } from './mappings'; - -export const fileUpload = kibana => { - return new kibana.Plugin({ - require: ['elasticsearch'], - name: 'file_upload', - id: 'file_upload', - // TODO: uiExports and savedObjectSchemas to be removed on migration - uiExports: { - mappings, - }, - savedObjectSchemas: { - 'file-upload-telemetry': { - isNamespaceAgnostic: true, - }, - }, - - init(server) { - const coreSetup = server.newPlatform.setup.core; - const coreStart = server.newPlatform.start.core; - const { usageCollection } = server.newPlatform.setup.plugins; - const pluginsStart = { - usageCollection, - }; - const fileUploadPlugin = new FileUploadPlugin(); - fileUploadPlugin.setup(coreSetup); - fileUploadPlugin.start(coreStart, pluginsStart); - }, - }); -}; diff --git a/x-pack/legacy/plugins/maps/public/kibana_services.js b/x-pack/legacy/plugins/maps/public/kibana_services.js index a1b1c9ec1518e6..ef427aa31d01b0 100644 --- a/x-pack/legacy/plugins/maps/public/kibana_services.js +++ b/x-pack/legacy/plugins/maps/public/kibana_services.js @@ -28,6 +28,12 @@ export const getInspector = () => { return inspector; }; +let fileUploadPlugin; +export const setFileUpload = fileUpload => (fileUploadPlugin = fileUpload); +export const getFileUploadComponent = () => { + return fileUploadPlugin.JsonUploadAndParse; +}; + export async function fetchSearchSourceAndRecordWithInspector({ searchSource, requestId, diff --git a/x-pack/legacy/plugins/maps/public/layers/sources/client_file_source/create_client_file_source_editor.js b/x-pack/legacy/plugins/maps/public/layers/sources/client_file_source/create_client_file_source_editor.js index 150c7c39fe1173..f9bfc4ddde91be 100644 --- a/x-pack/legacy/plugins/maps/public/layers/sources/client_file_source/create_client_file_source_editor.js +++ b/x-pack/legacy/plugins/maps/public/layers/sources/client_file_source/create_client_file_source_editor.js @@ -5,7 +5,7 @@ */ import React from 'react'; -import { start as fileUpload } from '../../../../../file_upload/public/legacy'; +import { getFileUploadComponent } from '../../../kibana_services'; export function ClientFileCreateSourceEditor({ previewGeojsonFile, @@ -14,8 +14,9 @@ export function ClientFileCreateSourceEditor({ onRemove, onIndexReady, }) { + const FileUpload = getFileUploadComponent(); return ( - <fileUpload.JsonUploadAndParse + <FileUpload appName={'Maps'} isIndexingTriggered={isIndexingTriggered} onFileUpload={previewGeojsonFile} diff --git a/x-pack/legacy/plugins/maps/public/plugin.ts b/x-pack/legacy/plugins/maps/public/plugin.ts index e2af53d59671fe..51bec872a1c9b0 100644 --- a/x-pack/legacy/plugins/maps/public/plugin.ts +++ b/x-pack/legacy/plugins/maps/public/plugin.ts @@ -10,7 +10,7 @@ import { wrapInI18nContext } from 'ui/i18n'; // @ts-ignore import { MapListing } from './components/map_listing'; // @ts-ignore -import { setLicenseId, setInspector } from './kibana_services'; +import { setLicenseId, setInspector, setFileUpload } from './kibana_services'; import { HomePublicPluginSetup } from '../../../../../src/plugins/home/public'; import { LicensingPluginSetup } from '../../../../plugins/licensing/public'; import { featureCatalogueEntry } from './feature_catalogue_entry'; @@ -52,5 +52,6 @@ export class MapsPlugin implements Plugin<MapsPluginSetup, MapsPluginStart> { public start(core: CoreStart, plugins: any) { setInspector(plugins.np.inspector); + setFileUpload(plugins.np.file_upload); } } diff --git a/x-pack/legacy/plugins/file_upload/common/constants/file_import.ts b/x-pack/plugins/file_upload/common/constants/file_import.ts similarity index 100% rename from x-pack/legacy/plugins/file_upload/common/constants/file_import.ts rename to x-pack/plugins/file_upload/common/constants/file_import.ts diff --git a/x-pack/plugins/file_upload/kibana.json b/x-pack/plugins/file_upload/kibana.json new file mode 100644 index 00000000000000..3fda32fb6ebe56 --- /dev/null +++ b/x-pack/plugins/file_upload/kibana.json @@ -0,0 +1,9 @@ +{ + "id": "file_upload", + "version": "8.0.0", + "kibanaVersion": "kibana", + "configPath": ["xpack", "file_upload"], + "server": true, + "ui": true, + "requiredPlugins": ["data", "usageCollection"] +} diff --git a/x-pack/legacy/plugins/file_upload/mappings.ts b/x-pack/plugins/file_upload/mappings.ts similarity index 100% rename from x-pack/legacy/plugins/file_upload/mappings.ts rename to x-pack/plugins/file_upload/mappings.ts diff --git a/x-pack/legacy/plugins/file_upload/public/components/index_settings.js b/x-pack/plugins/file_upload/public/components/index_settings.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/components/index_settings.js rename to x-pack/plugins/file_upload/public/components/index_settings.js diff --git a/x-pack/legacy/plugins/file_upload/public/components/json_import_progress.js b/x-pack/plugins/file_upload/public/components/json_import_progress.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/components/json_import_progress.js rename to x-pack/plugins/file_upload/public/components/json_import_progress.js diff --git a/x-pack/legacy/plugins/file_upload/public/components/json_index_file_picker.js b/x-pack/plugins/file_upload/public/components/json_index_file_picker.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/components/json_index_file_picker.js rename to x-pack/plugins/file_upload/public/components/json_index_file_picker.js diff --git a/x-pack/legacy/plugins/file_upload/public/components/json_upload_and_parse.js b/x-pack/plugins/file_upload/public/components/json_upload_and_parse.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/components/json_upload_and_parse.js rename to x-pack/plugins/file_upload/public/components/json_upload_and_parse.js diff --git a/x-pack/legacy/plugins/file_upload/public/index.ts b/x-pack/plugins/file_upload/public/index.ts similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/index.ts rename to x-pack/plugins/file_upload/public/index.ts diff --git a/x-pack/legacy/plugins/file_upload/public/kibana_services.js b/x-pack/plugins/file_upload/public/kibana_services.js similarity index 53% rename from x-pack/legacy/plugins/file_upload/public/kibana_services.js rename to x-pack/plugins/file_upload/public/kibana_services.js index b48b7e49e79123..1269e16266eb53 100644 --- a/x-pack/legacy/plugins/file_upload/public/kibana_services.js +++ b/x-pack/plugins/file_upload/public/kibana_services.js @@ -4,19 +4,17 @@ * you may not use this file except in compliance with the Elastic License. */ -import { npStart } from 'ui/new_platform'; -import { DEFAULT_KBN_VERSION } from '../common/constants/file_import'; - -export const indexPatternService = npStart.plugins.data.indexPatterns; - +export let indexPatternService; export let savedObjectsClient; export let basePath; -export let kbnVersion; export let kbnFetch; -export const initServicesAndConstants = ({ savedObjects, http, injectedMetadata }) => { - savedObjectsClient = savedObjects.client; +export const setupInitServicesAndConstants = ({ http }) => { basePath = http.basePath.basePath; - kbnVersion = injectedMetadata.getKibanaVersion(DEFAULT_KBN_VERSION); kbnFetch = http.fetch; }; + +export const startInitServicesAndConstants = ({ savedObjects }, { data }) => { + indexPatternService = data.indexPatterns; + savedObjectsClient = savedObjects.client; +}; diff --git a/x-pack/legacy/plugins/file_upload/public/plugin.ts b/x-pack/plugins/file_upload/public/plugin.ts similarity index 53% rename from x-pack/legacy/plugins/file_upload/public/plugin.ts rename to x-pack/plugins/file_upload/public/plugin.ts index 53b292b02760fc..338c61ad141c62 100644 --- a/x-pack/legacy/plugins/file_upload/public/plugin.ts +++ b/x-pack/plugins/file_upload/public/plugin.ts @@ -4,26 +4,36 @@ * you may not use this file except in compliance with the Elastic License. */ -import { Plugin, CoreStart } from 'src/core/public'; +// @ts-ignore +import { CoreSetup, CoreStart, Plugin } from 'kibana/server'; // @ts-ignore import { JsonUploadAndParse } from './components/json_upload_and_parse'; // @ts-ignore -import { initServicesAndConstants } from './kibana_services'; +import { setupInitServicesAndConstants, startInitServicesAndConstants } from './kibana_services'; +import { IDataPluginServices } from '../../../../src/plugins/data/public'; /** * These are the interfaces with your public contracts. You should export these * for other plugins to use in _their_ `SetupDeps`/`StartDeps` interfaces. * @public */ + +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface FileUploadPluginSetupDependencies {} +export interface FileUploadPluginStartDependencies { + data: IDataPluginServices; +} + export type FileUploadPluginSetup = ReturnType<FileUploadPlugin['setup']>; export type FileUploadPluginStart = ReturnType<FileUploadPlugin['start']>; -/** @internal */ export class FileUploadPlugin implements Plugin<FileUploadPluginSetup, FileUploadPluginStart> { - public setup() {} + public setup(core: CoreSetup, plugins: FileUploadPluginSetupDependencies) { + setupInitServicesAndConstants(core); + } - public start(core: CoreStart) { - initServicesAndConstants(core); + public start(core: CoreStart, plugins: FileUploadPluginStartDependencies) { + startInitServicesAndConstants(core, plugins); return { JsonUploadAndParse, }; diff --git a/x-pack/legacy/plugins/file_upload/public/util/file_parser.js b/x-pack/plugins/file_upload/public/util/file_parser.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/util/file_parser.js rename to x-pack/plugins/file_upload/public/util/file_parser.js diff --git a/x-pack/legacy/plugins/file_upload/public/util/file_parser.test.js b/x-pack/plugins/file_upload/public/util/file_parser.test.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/util/file_parser.test.js rename to x-pack/plugins/file_upload/public/util/file_parser.test.js diff --git a/x-pack/legacy/plugins/file_upload/public/util/geo_json_clean_and_validate.js b/x-pack/plugins/file_upload/public/util/geo_json_clean_and_validate.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/util/geo_json_clean_and_validate.js rename to x-pack/plugins/file_upload/public/util/geo_json_clean_and_validate.js diff --git a/x-pack/legacy/plugins/file_upload/public/util/geo_json_clean_and_validate.test.js b/x-pack/plugins/file_upload/public/util/geo_json_clean_and_validate.test.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/util/geo_json_clean_and_validate.test.js rename to x-pack/plugins/file_upload/public/util/geo_json_clean_and_validate.test.js diff --git a/x-pack/legacy/plugins/file_upload/public/util/geo_processing.js b/x-pack/plugins/file_upload/public/util/geo_processing.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/util/geo_processing.js rename to x-pack/plugins/file_upload/public/util/geo_processing.js diff --git a/x-pack/legacy/plugins/file_upload/public/util/geo_processing.test.js b/x-pack/plugins/file_upload/public/util/geo_processing.test.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/util/geo_processing.test.js rename to x-pack/plugins/file_upload/public/util/geo_processing.test.js diff --git a/x-pack/legacy/plugins/file_upload/public/util/http_service.js b/x-pack/plugins/file_upload/public/util/http_service.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/util/http_service.js rename to x-pack/plugins/file_upload/public/util/http_service.js diff --git a/x-pack/legacy/plugins/file_upload/public/util/indexing_service.js b/x-pack/plugins/file_upload/public/util/indexing_service.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/util/indexing_service.js rename to x-pack/plugins/file_upload/public/util/indexing_service.js diff --git a/x-pack/legacy/plugins/file_upload/public/util/indexing_service.test.js b/x-pack/plugins/file_upload/public/util/indexing_service.test.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/util/indexing_service.test.js rename to x-pack/plugins/file_upload/public/util/indexing_service.test.js diff --git a/x-pack/legacy/plugins/file_upload/public/util/pattern_reader.js b/x-pack/plugins/file_upload/public/util/pattern_reader.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/util/pattern_reader.js rename to x-pack/plugins/file_upload/public/util/pattern_reader.js diff --git a/x-pack/legacy/plugins/file_upload/public/util/size_limited_chunking.js b/x-pack/plugins/file_upload/public/util/size_limited_chunking.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/util/size_limited_chunking.js rename to x-pack/plugins/file_upload/public/util/size_limited_chunking.js diff --git a/x-pack/legacy/plugins/file_upload/public/util/size_limited_chunking.test.js b/x-pack/plugins/file_upload/public/util/size_limited_chunking.test.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/public/util/size_limited_chunking.test.js rename to x-pack/plugins/file_upload/public/util/size_limited_chunking.test.js diff --git a/x-pack/legacy/plugins/file_upload/server/client/call_with_request_factory.js b/x-pack/plugins/file_upload/server/client/call_with_request_factory.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/server/client/call_with_request_factory.js rename to x-pack/plugins/file_upload/server/client/call_with_request_factory.js diff --git a/x-pack/legacy/plugins/file_upload/server/client/errors.js b/x-pack/plugins/file_upload/server/client/errors.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/server/client/errors.js rename to x-pack/plugins/file_upload/server/client/errors.js diff --git a/x-pack/legacy/plugins/file_upload/public/legacy.ts b/x-pack/plugins/file_upload/server/index.js similarity index 60% rename from x-pack/legacy/plugins/file_upload/public/legacy.ts rename to x-pack/plugins/file_upload/server/index.js index 719599df3ccbea..f894bf788a8930 100644 --- a/x-pack/legacy/plugins/file_upload/public/legacy.ts +++ b/x-pack/plugins/file_upload/server/index.js @@ -3,10 +3,8 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ +import { FileUploadPlugin } from './plugin'; -import { npStart } from 'ui/new_platform'; -import { plugin } from '.'; +export * from './plugin'; -const pluginInstance = plugin(); - -export const start = pluginInstance.start(npStart.core); +export const plugin = () => new FileUploadPlugin(); diff --git a/x-pack/legacy/plugins/file_upload/server/kibana_server_services.js b/x-pack/plugins/file_upload/server/kibana_server_services.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/server/kibana_server_services.js rename to x-pack/plugins/file_upload/server/kibana_server_services.js diff --git a/x-pack/legacy/plugins/file_upload/server/models/import_data/import_data.js b/x-pack/plugins/file_upload/server/models/import_data/import_data.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/server/models/import_data/import_data.js rename to x-pack/plugins/file_upload/server/models/import_data/import_data.js diff --git a/x-pack/legacy/plugins/file_upload/server/models/import_data/index.js b/x-pack/plugins/file_upload/server/models/import_data/index.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/server/models/import_data/index.js rename to x-pack/plugins/file_upload/server/models/import_data/index.js diff --git a/x-pack/legacy/plugins/file_upload/server/plugin.js b/x-pack/plugins/file_upload/server/plugin.js similarity index 79% rename from x-pack/legacy/plugins/file_upload/server/plugin.js rename to x-pack/plugins/file_upload/server/plugin.js index c448676f813eac..a11516d03f0683 100644 --- a/x-pack/legacy/plugins/file_upload/server/plugin.js +++ b/x-pack/plugins/file_upload/server/plugin.js @@ -6,22 +6,22 @@ import { initRoutes } from './routes/file_upload'; import { setElasticsearchClientServices, setInternalRepository } from './kibana_server_services'; -import { registerFileUploadUsageCollector } from './telemetry'; +import { registerFileUploadUsageCollector, fileUploadTelemetryMappingsType } from './telemetry'; export class FileUploadPlugin { constructor() { this.router = null; } - setup(core) { + setup(core, plugins) { + core.savedObjects.registerType(fileUploadTelemetryMappingsType); setElasticsearchClientServices(core.elasticsearch); this.router = core.http.createRouter(); + registerFileUploadUsageCollector(plugins.usageCollection); } - start(core, plugins) { + start(core) { initRoutes(this.router, core.savedObjects.getSavedObjectsRepository); setInternalRepository(core.savedObjects.createInternalRepository); - - registerFileUploadUsageCollector(plugins.usageCollection); } } diff --git a/x-pack/legacy/plugins/file_upload/server/routes/file_upload.js b/x-pack/plugins/file_upload/server/routes/file_upload.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/server/routes/file_upload.js rename to x-pack/plugins/file_upload/server/routes/file_upload.js diff --git a/x-pack/legacy/plugins/file_upload/server/routes/file_upload.test.js b/x-pack/plugins/file_upload/server/routes/file_upload.test.js similarity index 100% rename from x-pack/legacy/plugins/file_upload/server/routes/file_upload.test.js rename to x-pack/plugins/file_upload/server/routes/file_upload.test.js diff --git a/x-pack/legacy/plugins/file_upload/server/telemetry/file_upload_usage_collector.ts b/x-pack/plugins/file_upload/server/telemetry/file_upload_usage_collector.ts similarity index 100% rename from x-pack/legacy/plugins/file_upload/server/telemetry/file_upload_usage_collector.ts rename to x-pack/plugins/file_upload/server/telemetry/file_upload_usage_collector.ts diff --git a/x-pack/legacy/plugins/file_upload/server/telemetry/index.ts b/x-pack/plugins/file_upload/server/telemetry/index.ts similarity index 83% rename from x-pack/legacy/plugins/file_upload/server/telemetry/index.ts rename to x-pack/plugins/file_upload/server/telemetry/index.ts index 7969dd04ce31f7..8d4f4e72bd28ac 100644 --- a/x-pack/legacy/plugins/file_upload/server/telemetry/index.ts +++ b/x-pack/plugins/file_upload/server/telemetry/index.ts @@ -5,3 +5,4 @@ */ export { registerFileUploadUsageCollector } from './file_upload_usage_collector'; +export { fileUploadTelemetryMappingsType } from './mappings'; diff --git a/x-pack/plugins/file_upload/server/telemetry/mappings.ts b/x-pack/plugins/file_upload/server/telemetry/mappings.ts new file mode 100644 index 00000000000000..ca935fea3449a2 --- /dev/null +++ b/x-pack/plugins/file_upload/server/telemetry/mappings.ts @@ -0,0 +1,21 @@ +/* + * 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 { SavedObjectsType } from 'src/core/server'; +import { TELEMETRY_DOC_ID } from './telemetry'; + +export const fileUploadTelemetryMappingsType: SavedObjectsType = { + name: TELEMETRY_DOC_ID, + hidden: false, + namespaceAgnostic: true, + mappings: { + properties: { + filesUploadedTotalCount: { + type: 'long', + }, + }, + }, +}; diff --git a/x-pack/legacy/plugins/file_upload/server/telemetry/telemetry.test.ts b/x-pack/plugins/file_upload/server/telemetry/telemetry.test.ts similarity index 100% rename from x-pack/legacy/plugins/file_upload/server/telemetry/telemetry.test.ts rename to x-pack/plugins/file_upload/server/telemetry/telemetry.test.ts diff --git a/x-pack/legacy/plugins/file_upload/server/telemetry/telemetry.ts b/x-pack/plugins/file_upload/server/telemetry/telemetry.ts similarity index 100% rename from x-pack/legacy/plugins/file_upload/server/telemetry/telemetry.ts rename to x-pack/plugins/file_upload/server/telemetry/telemetry.ts From 82032b65fe3b34796fef6098f8d20b89e1bca87a Mon Sep 17 00:00:00 2001 From: Pierre Gayvallet <pierre.gayvallet@elastic.co> Date: Wed, 4 Mar 2020 14:53:26 +0100 Subject: [PATCH 100/120] use observables instead of delay when possible (#59283) --- .../server_collector.test.ts | 36 ++++++++++++++----- 1 file changed, 28 insertions(+), 8 deletions(-) diff --git a/src/core/server/metrics/integration_tests/server_collector.test.ts b/src/core/server/metrics/integration_tests/server_collector.test.ts index a387de80212d91..6baf95894b9b42 100644 --- a/src/core/server/metrics/integration_tests/server_collector.test.ts +++ b/src/core/server/metrics/integration_tests/server_collector.test.ts @@ -17,8 +17,8 @@ * under the License. */ -import { Subject } from 'rxjs'; -import { take } from 'rxjs/operators'; +import { BehaviorSubject, Subject } from 'rxjs'; +import { take, filter } from 'rxjs/operators'; import supertest from 'supertest'; import { Server as HapiServer } from 'hapi'; import { createHttpServer } from '../../http/test_utils'; @@ -26,6 +26,8 @@ import { HttpService, IRouter } from '../../http'; import { contextServiceMock } from '../../context/context_service.mock'; import { ServerMetricsCollector } from '../collectors/server'; +const requestWaitDelay = 25; + describe('ServerMetricsCollector', () => { let server: HttpService; let collector: ServerMetricsCollector; @@ -80,11 +82,13 @@ describe('ServerMetricsCollector', () => { it('collect disconnects requests infos', async () => { const never = new Promise(resolve => undefined); + const hitSubject = new BehaviorSubject(0); router.get({ path: '/', validate: false }, async (ctx, req, res) => { return res.ok({ body: '' }); }); router.get({ path: '/disconnect', validate: false }, async (ctx, req, res) => { + hitSubject.next(hitSubject.value + 1); await never; return res.ok({ body: '' }); }); @@ -93,7 +97,13 @@ describe('ServerMetricsCollector', () => { await sendGet('/'); const discoReq1 = sendGet('/disconnect').end(); const discoReq2 = sendGet('/disconnect').end(); - await delay(20); + + await hitSubject + .pipe( + filter(count => count >= 2), + take(1) + ) + .toPromise(); let metrics = await collector.collect(); expect(metrics.requests).toEqual( @@ -104,7 +114,7 @@ describe('ServerMetricsCollector', () => { ); discoReq1.abort(); - await delay(20); + await delay(requestWaitDelay); metrics = await collector.collect(); expect(metrics.requests).toEqual( @@ -115,7 +125,7 @@ describe('ServerMetricsCollector', () => { ); discoReq2.abort(); - await delay(20); + await delay(requestWaitDelay); metrics = await collector.collect(); expect(metrics.requests).toEqual( @@ -155,28 +165,38 @@ describe('ServerMetricsCollector', () => { it('collect connection count', async () => { const waitSubject = new Subject(); + const hitSubject = new BehaviorSubject(0); router.get({ path: '/', validate: false }, async (ctx, req, res) => { + hitSubject.next(hitSubject.value + 1); await waitSubject.pipe(take(1)).toPromise(); return res.ok({ body: '' }); }); await server.start(); + const waitForHits = (hits: number) => + hitSubject + .pipe( + filter(count => count >= hits), + take(1) + ) + .toPromise(); + let metrics = await collector.collect(); expect(metrics.concurrent_connections).toEqual(0); sendGet('/').end(() => null); - await delay(20); + await waitForHits(1); metrics = await collector.collect(); expect(metrics.concurrent_connections).toEqual(1); sendGet('/').end(() => null); - await delay(20); + await waitForHits(2); metrics = await collector.collect(); expect(metrics.concurrent_connections).toEqual(2); waitSubject.next('go'); - await delay(20); + await delay(requestWaitDelay); metrics = await collector.collect(); expect(metrics.concurrent_connections).toEqual(0); }); From 9a1b4b9a6b5dcf480562c476635c814e408c892c Mon Sep 17 00:00:00 2001 From: Chris Roberson <chrisronline@gmail.com> Date: Wed, 4 Mar 2020 09:27:23 -0500 Subject: [PATCH 101/120] [Monitoring] Ensure we use the monitoring cluster for retrieving xpack info (#59075) * Ensure we use the monitoring cluster for retrieving xpack info * Remove unnecessary code --- .../server/es_client/instantiate_client.js | 1 + .../server/init_monitoring_xpack_info.js | 19 +++++++--- .../elasticsearch/verify_monitoring_auth.js | 36 ++++++++++++------- .../plugins/monitoring/server/plugin.js | 4 ++- .../xpack_main/server/lib/setup_xpack_main.js | 9 ----- .../plugins/xpack_main/server/xpack_main.d.ts | 1 - 6 files changed, 42 insertions(+), 28 deletions(-) diff --git a/x-pack/legacy/plugins/monitoring/server/es_client/instantiate_client.js b/x-pack/legacy/plugins/monitoring/server/es_client/instantiate_client.js index 9aed1ac1456174..671c6cdaaed70c 100644 --- a/x-pack/legacy/plugins/monitoring/server/es_client/instantiate_client.js +++ b/x-pack/legacy/plugins/monitoring/server/es_client/instantiate_client.js @@ -25,6 +25,7 @@ export function exposeClient({ elasticsearchConfig, events, log, elasticsearchPl events.on('stop', bindKey(cluster, 'close')); const configSource = isMonitoringCluster ? 'monitoring' : 'production'; log([LOGGING_TAG, 'es-client'], `config sourced from: ${configSource} cluster`); + return cluster; } export function hasMonitoringCluster(config) { diff --git a/x-pack/legacy/plugins/monitoring/server/init_monitoring_xpack_info.js b/x-pack/legacy/plugins/monitoring/server/init_monitoring_xpack_info.js index ba07f512de896a..7a6ab37798db61 100644 --- a/x-pack/legacy/plugins/monitoring/server/init_monitoring_xpack_info.js +++ b/x-pack/legacy/plugins/monitoring/server/init_monitoring_xpack_info.js @@ -7,15 +7,26 @@ import { checkLicenseGenerator } from './cluster_alerts/check_license'; import { hasMonitoringCluster } from './es_client/instantiate_client'; import { LOGGING_TAG } from '../common/constants'; +import { XPackInfo } from '../../xpack_main/server/lib/xpack_info'; /* * Expose xpackInfo for the Monitoring cluster as server.plugins.monitoring.info */ -export const initMonitoringXpackInfo = async ({ config, xpackMainPlugin, expose, log }) => { +export const initMonitoringXpackInfo = async ({ + config, + server, + client, + xpackMainPlugin, + licensing, + expose, + log, +}) => { const xpackInfo = hasMonitoringCluster(config) - ? xpackMainPlugin.createXPackInfo({ - clusterSource: 'monitoring', - pollFrequencyInMillis: config.get('monitoring.xpack_api_polling_frequency_millis'), + ? new XPackInfo(server, { + licensing: licensing.createLicensePoller( + client, + config.get('monitoring.xpack_api_polling_frequency_millis') + ), }) : xpackMainPlugin.info; diff --git a/x-pack/legacy/plugins/monitoring/server/lib/elasticsearch/verify_monitoring_auth.js b/x-pack/legacy/plugins/monitoring/server/lib/elasticsearch/verify_monitoring_auth.js index 8362ebec0206b1..96a03545560938 100644 --- a/x-pack/legacy/plugins/monitoring/server/lib/elasticsearch/verify_monitoring_auth.js +++ b/x-pack/legacy/plugins/monitoring/server/lib/elasticsearch/verify_monitoring_auth.js @@ -38,19 +38,29 @@ export async function verifyMonitoringAuth(req) { async function verifyHasPrivileges(req) { const { callWithRequest } = req.server.plugins.elasticsearch.getCluster('monitoring'); - const response = await callWithRequest(req, 'transport.request', { - method: 'POST', - path: '/_security/user/_has_privileges', - body: { - index: [ - { - names: [INDEX_PATTERN], // uses wildcard - privileges: ['read'], - }, - ], - }, - ignoreUnavailable: true, // we allow 404 incase the user shutdown security in-between the check and now - }); + let response; + try { + response = await callWithRequest(req, 'transport.request', { + method: 'POST', + path: '/_security/user/_has_privileges', + body: { + index: [ + { + names: [INDEX_PATTERN], // uses wildcard + privileges: ['read'], + }, + ], + }, + ignoreUnavailable: true, // we allow 404 incase the user shutdown security in-between the check and now + }); + } catch (err) { + if ( + err.message === 'no handler found for uri [/_security/user/_has_privileges] and method [POST]' + ) { + return; + } + throw err; + } // we assume true because, if the response 404ed, then it will not exist but we should try to continue const hasAllRequestedPrivileges = get(response, 'has_all_requested', true); diff --git a/x-pack/legacy/plugins/monitoring/server/plugin.js b/x-pack/legacy/plugins/monitoring/server/plugin.js index 3d6d110a019493..fa9f1ae6999194 100644 --- a/x-pack/legacy/plugins/monitoring/server/plugin.js +++ b/x-pack/legacy/plugins/monitoring/server/plugin.js @@ -60,7 +60,7 @@ export class Plugin { const elasticsearchConfig = parseElasticsearchConfig(config); // Create the dedicated client - await instantiateClient({ + const client = await instantiateClient({ log, events, elasticsearchConfig, @@ -77,6 +77,8 @@ export class Plugin { if (uiEnabled) { await initMonitoringXpackInfo({ config, + server: hapiServer, + client, log, xpackMainPlugin: plugins.xpack_main, expose, diff --git a/x-pack/legacy/plugins/xpack_main/server/lib/setup_xpack_main.js b/x-pack/legacy/plugins/xpack_main/server/lib/setup_xpack_main.js index 21b781423531ef..2707858a5fec8e 100644 --- a/x-pack/legacy/plugins/xpack_main/server/lib/setup_xpack_main.js +++ b/x-pack/legacy/plugins/xpack_main/server/lib/setup_xpack_main.js @@ -19,15 +19,6 @@ export function setupXPackMain(server) { const info = new XPackInfo(server, { licensing: server.newPlatform.setup.plugins.licensing }); server.expose('info', info); - server.expose('createXPackInfo', options => { - const client = server.newPlatform.setup.core.elasticsearch.createClient(options.clusterSource); - const monitoringLicensing = server.newPlatform.setup.plugins.licensing.createLicensePoller( - client, - options.pollFrequencyInMillis - ); - - return new XPackInfo(server, { licensing: monitoringLicensing }); - }); server.ext('onPreResponse', (request, h) => injectXPackInfoSignature(info, request, h)); diff --git a/x-pack/legacy/plugins/xpack_main/server/xpack_main.d.ts b/x-pack/legacy/plugins/xpack_main/server/xpack_main.d.ts index 05cb97663e1af6..a9abc733775d22 100644 --- a/x-pack/legacy/plugins/xpack_main/server/xpack_main.d.ts +++ b/x-pack/legacy/plugins/xpack_main/server/xpack_main.d.ts @@ -11,7 +11,6 @@ export { XPackFeature } from './lib/xpack_info'; export interface XPackMainPlugin { info: XPackInfo; - createXPackInfo(options: XPackInfoOptions): XPackInfo; getFeatures(): Feature[]; registerFeature(feature: FeatureWithAllOrReadPrivileges): void; } From 2361fe62cd6b241f75145e7ba436276c76cd0368 Mon Sep 17 00:00:00 2001 From: Bhavya RM <bhavya@elastic.co> Date: Wed, 4 Mar 2020 09:41:32 -0500 Subject: [PATCH 102/120] calling exitFullScreenMode in test (#59238) exitFullScreenMode in fullscreen dashboard test --- test/functional/apps/dashboard/full_screen_mode.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/test/functional/apps/dashboard/full_screen_mode.js b/test/functional/apps/dashboard/full_screen_mode.js index 69c0a05b8413bb..df00f64530ca02 100644 --- a/test/functional/apps/dashboard/full_screen_mode.js +++ b/test/functional/apps/dashboard/full_screen_mode.js @@ -75,9 +75,7 @@ export default function({ getService, getPageObjects }) { }); it('exits when the text button is clicked on', async () => { - const logoButton = await PageObjects.dashboard.getExitFullScreenLogoButton(); - await logoButton.moveMouseTo(); - await PageObjects.dashboard.clickExitFullScreenTextButton(); + await PageObjects.dashboard.exitFullScreenMode(); await retry.try(async () => { const isChromeVisible = await PageObjects.common.isChromeVisible(); expect(isChromeVisible).to.be(true); From aea4811750b4db78c54e3ab4755f2dbdb6f8ad35 Mon Sep 17 00:00:00 2001 From: Christos Nasikas <christos.nasikas@elastic.co> Date: Wed, 4 Mar 2020 17:06:33 +0200 Subject: [PATCH 103/120] [SIEM][CASE] Configure cases: Closure Options & Field Mappings UI (#59062) * Create closure options radio group * Create closure options component * Refactor structure * Create field mapping row * Create field component * Show closure options * Show field mapping * Translate editUpdate options * Add more siem fields * Remove unnecessary export * Leave spaces between sections * Fix callbacks * Better return * Fix callback * Move thirdPartyFields to parent component * Rename constant Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../configure_cases/closure_options.tsx | 27 +++++ .../configure_cases/closure_options_radio.tsx | 43 ++++++++ .../index.tsx => connectors_dropdown.tsx} | 9 +- .../configure_cases/field_mapping.tsx | 66 ++++++++++++ .../configure_cases/field_mapping_row.tsx | 73 +++++++++++++ .../configure_cases/translations.ts | 100 ++++++++++++++++++ .../public/pages/case/configure_cases.tsx | 14 ++- 7 files changed, 326 insertions(+), 6 deletions(-) create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/closure_options.tsx create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/closure_options_radio.tsx rename x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/{connectors_dropdown/index.tsx => connectors_dropdown.tsx} (81%) create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/field_mapping.tsx create mode 100644 x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/field_mapping_row.tsx diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/closure_options.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/closure_options.tsx new file mode 100644 index 00000000000000..3a2ef3bc21721b --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/closure_options.tsx @@ -0,0 +1,27 @@ +/* + * 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 { EuiDescribedFormGroup, EuiFormRow } from '@elastic/eui'; + +import * as i18n from './translations'; +import { ClosureOptionsRadio } from './closure_options_radio'; + +const ClosureOptionsComponent: React.FC = () => { + return ( + <EuiDescribedFormGroup + fullWidth + title={<h3>{i18n.CASE_CLOSURE_OPTIONS_TITLE}</h3>} + description={i18n.CASE_CLOSURE_OPTIONS_DESC} + > + <EuiFormRow fullWidth label={i18n.CASE_CLOSURE_OPTIONS_LABEL}> + <ClosureOptionsRadio /> + </EuiFormRow> + </EuiDescribedFormGroup> + ); +}; + +export const ClosureOptions = React.memo(ClosureOptionsComponent); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/closure_options_radio.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/closure_options_radio.tsx new file mode 100644 index 00000000000000..5d1476acee5b18 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/closure_options_radio.tsx @@ -0,0 +1,43 @@ +/* + * 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, { useState } from 'react'; +import { EuiRadioGroup } from '@elastic/eui'; + +import * as i18n from './translations'; + +const ID_PREFIX = 'closure_options'; +const DEFAULT_RADIO = `${ID_PREFIX}_manual`; + +const radios = [ + { + id: DEFAULT_RADIO, + label: i18n.CASE_CLOSURE_OPTIONS_MANUAL, + }, + { + id: `${ID_PREFIX}_new_incident`, + label: i18n.CASE_CLOSURE_OPTIONS_NEW_INCIDENT, + }, + { + id: `${ID_PREFIX}_closed_incident`, + label: i18n.CASE_CLOSURE_OPTIONS_CLOSED_INCIDENT, + }, +]; + +const ClosureOptionsRadioComponent: React.FC = () => { + const [selectedClosure, setSelectedClosure] = useState(DEFAULT_RADIO); + + return ( + <EuiRadioGroup + options={radios} + idSelected={selectedClosure} + onChange={setSelectedClosure} + name="closure_options" + /> + ); +}; + +export const ClosureOptionsRadio = React.memo(ClosureOptionsRadioComponent); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors_dropdown/index.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors_dropdown.tsx similarity index 81% rename from x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors_dropdown/index.tsx rename to x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors_dropdown.tsx index c00baa04d78a0b..d43935deda395a 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors_dropdown/index.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/connectors_dropdown.tsx @@ -4,11 +4,11 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { useState, useCallback } from 'react'; +import React, { useState } from 'react'; import { EuiSuperSelect, EuiIcon, EuiSuperSelectOption } from '@elastic/eui'; import styled from 'styled-components'; -import * as i18n from '../translations'; +import * as i18n from './translations'; const ICON_SIZE = 'm'; @@ -40,15 +40,14 @@ const connectors: Array<EuiSuperSelectOption<string>> = [ ]; const ConnectorsDropdownComponent: React.FC = () => { - const [selectedConnector, selectConnector] = useState(connectors[0].value); - const onChange = useCallback(connector => selectConnector(connector), [selectedConnector]); + const [selectedConnector, setSelectedConnector] = useState(connectors[0].value); return ( <EuiSuperSelect options={connectors} valueOfSelected={selectedConnector} fullWidth - onChange={onChange} + onChange={setSelectedConnector} /> ); }; diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/field_mapping.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/field_mapping.tsx new file mode 100644 index 00000000000000..814f1bfd75ae46 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/field_mapping.tsx @@ -0,0 +1,66 @@ +/* + * 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 { EuiDescribedFormGroup, EuiFormRow, EuiFlexItem, EuiFlexGroup } from '@elastic/eui'; +import styled from 'styled-components'; + +import * as i18n from './translations'; +import { FieldMappingRow } from './field_mapping_row'; + +const FieldRowWrapper = styled.div` + margin-top: 8px; + font-size: 14px; +`; + +const supportedThirdPartyFields = [ + { + value: 'short_description', + inputDisplay: <span>{'Short Description'}</span>, + }, + { + value: 'comment', + inputDisplay: <span>{'Comment'}</span>, + }, + { + value: 'tags', + inputDisplay: <span>{'Tags'}</span>, + }, + { + value: 'description', + inputDisplay: <span>{'Description'}</span>, + }, +]; + +const FieldMappingComponent: React.FC = () => ( + <EuiDescribedFormGroup + fullWidth + title={<h3>{i18n.FIELD_MAPPING_TITLE}</h3>} + description={i18n.FIELD_MAPPING_DESC} + > + <EuiFormRow fullWidth> + <EuiFlexGroup> + <EuiFlexItem> + <span className="euiFormLabel">{i18n.FIELD_MAPPING_FIRST_COL}</span> + </EuiFlexItem> + <EuiFlexItem> + <span className="euiFormLabel">{i18n.FIELD_MAPPING_SECOND_COL}</span> + </EuiFlexItem> + <EuiFlexItem> + <span className="euiFormLabel">{i18n.FIELD_MAPPING_THIRD_COL}</span> + </EuiFlexItem> + </EuiFlexGroup> + </EuiFormRow> + <FieldRowWrapper> + <FieldMappingRow siemField="Name" thirdPartyOptions={supportedThirdPartyFields} /> + <FieldMappingRow siemField="Tags" thirdPartyOptions={supportedThirdPartyFields} /> + <FieldMappingRow siemField="Description" thirdPartyOptions={supportedThirdPartyFields} /> + <FieldMappingRow siemField="Comment" thirdPartyOptions={supportedThirdPartyFields} /> + </FieldRowWrapper> + </EuiDescribedFormGroup> +); + +export const FieldMapping = React.memo(FieldMappingComponent); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/field_mapping_row.tsx b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/field_mapping_row.tsx new file mode 100644 index 00000000000000..0e446ad9bbe897 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/field_mapping_row.tsx @@ -0,0 +1,73 @@ +/* + * 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, { useState } from 'react'; +import { EuiFlexItem, EuiFlexGroup, EuiSuperSelect, EuiIcon } from '@elastic/eui'; + +import * as i18n from './translations'; + +interface ThirdPartyField { + value: string; + inputDisplay: JSX.Element; +} +interface RowProps { + siemField: string; + thirdPartyOptions: ThirdPartyField[]; +} + +const editUpdateOptions = [ + { + value: 'nothing', + inputDisplay: <span>{i18n.FIELD_MAPPING_EDIT_NOTHING}</span>, + 'data-test-subj': 'edit-update-option-nothing', + }, + { + value: 'overwrite', + inputDisplay: <span>{i18n.FIELD_MAPPING_EDIT_OVERWRITE}</span>, + 'data-test-subj': 'edit-update-option-overwrite', + }, + { + value: 'append', + inputDisplay: <span>{i18n.FIELD_MAPPING_EDIT_APPEND}</span>, + 'data-test-subj': 'edit-update-option-append', + }, +]; + +const FieldMappingRowComponent: React.FC<RowProps> = ({ siemField, thirdPartyOptions }) => { + const [selectedEditUpdate, setSelectedEditUpdate] = useState(editUpdateOptions[0].value); + const [selectedThirdParty, setSelectedThirdParty] = useState(thirdPartyOptions[0].value); + + return ( + <EuiFlexGroup alignItems="center"> + <EuiFlexItem> + <EuiFlexGroup component="span" justifyContent="spaceBetween"> + <EuiFlexItem component="span" grow={false}> + {siemField} + </EuiFlexItem> + <EuiFlexItem component="span" grow={false}> + <EuiIcon type="sortRight" /> + </EuiFlexItem> + </EuiFlexGroup> + </EuiFlexItem> + <EuiFlexItem> + <EuiSuperSelect + options={thirdPartyOptions} + valueOfSelected={selectedThirdParty} + onChange={setSelectedThirdParty} + /> + </EuiFlexItem> + <EuiFlexItem> + <EuiSuperSelect + options={editUpdateOptions} + valueOfSelected={selectedEditUpdate} + onChange={setSelectedEditUpdate} + /> + </EuiFlexItem> + </EuiFlexGroup> + ); +}; + +export const FieldMappingRow = React.memo(FieldMappingRowComponent); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/translations.ts b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/translations.ts index 54d256b143f603..ca2d878c58ee3a 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/translations.ts +++ b/x-pack/legacy/plugins/siem/public/pages/case/components/configure_cases/translations.ts @@ -35,3 +35,103 @@ export const NO_CONNECTOR = i18n.translate('xpack.siem.case.configureCases.noCon export const ADD_NEW_CONNECTOR = i18n.translate('xpack.siem.case.configureCases.addNewConnector', { defaultMessage: 'Add new connector option', }); + +export const CASE_CLOSURE_OPTIONS_TITLE = i18n.translate( + 'xpack.siem.case.configureCases.caseClosureOptionsTitle', + { + defaultMessage: 'Cases Closures', + } +); + +export const CASE_CLOSURE_OPTIONS_DESC = i18n.translate( + 'xpack.siem.case.configureCases.caseClosureOptionsDesc', + { + defaultMessage: + 'Define how you wish SIEM cases to be closed. Automated case closures require an established connection to a third-party incident management system.', + } +); + +export const CASE_CLOSURE_OPTIONS_LABEL = i18n.translate( + 'xpack.siem.case.configureCases.caseClosureOptionsLabel', + { + defaultMessage: 'Case closure options', + } +); + +export const CASE_CLOSURE_OPTIONS_MANUAL = i18n.translate( + 'xpack.siem.case.configureCases.caseClosureOptionsManual', + { + defaultMessage: 'Manually close SIEM cases', + } +); + +export const CASE_CLOSURE_OPTIONS_NEW_INCIDENT = i18n.translate( + 'xpack.siem.case.configureCases.caseClosureOptionsNewIncident', + { + defaultMessage: 'Automatically close SIEM cases when pushing new incident to third-party', + } +); + +export const CASE_CLOSURE_OPTIONS_CLOSED_INCIDENT = i18n.translate( + 'xpack.siem.case.configureCases.caseClosureOptionsClosedIncident', + { + defaultMessage: 'Automatically close SIEM cases when incident is closed in third-party', + } +); + +export const FIELD_MAPPING_TITLE = i18n.translate( + 'xpack.siem.case.configureCases.fieldMappingTitle', + { + defaultMessage: 'Field mappings', + } +); + +export const FIELD_MAPPING_DESC = i18n.translate( + 'xpack.siem.case.configureCases.fieldMappingDesc', + { + defaultMessage: + 'Map SIEM case fields when pushing data to a third-party. Field mappings require an established connection to a third-party incident management system.', + } +); + +export const FIELD_MAPPING_FIRST_COL = i18n.translate( + 'xpack.siem.case.configureCases.fieldMappingFirstCol', + { + defaultMessage: 'SIEM case field', + } +); + +export const FIELD_MAPPING_SECOND_COL = i18n.translate( + 'xpack.siem.case.configureCases.fieldMappingSecondCol', + { + defaultMessage: 'Third-party incident field', + } +); + +export const FIELD_MAPPING_THIRD_COL = i18n.translate( + 'xpack.siem.case.configureCases.fieldMappingThirdCol', + { + defaultMessage: 'On edit and update', + } +); + +export const FIELD_MAPPING_EDIT_NOTHING = i18n.translate( + 'xpack.siem.case.configureCases.fieldMappingEditNothing', + { + defaultMessage: 'Nothing', + } +); + +export const FIELD_MAPPING_EDIT_OVERWRITE = i18n.translate( + 'xpack.siem.case.configureCases.fieldMappingEditOverwrite', + { + defaultMessage: 'Overwrite', + } +); + +export const FIELD_MAPPING_EDIT_APPEND = i18n.translate( + 'xpack.siem.case.configureCases.fieldMappingEditAppend', + { + defaultMessage: 'Append', + } +); diff --git a/x-pack/legacy/plugins/siem/public/pages/case/configure_cases.tsx b/x-pack/legacy/plugins/siem/public/pages/case/configure_cases.tsx index 018f9dc9ade52a..556d7779c664f3 100644 --- a/x-pack/legacy/plugins/siem/public/pages/case/configure_cases.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/case/configure_cases.tsx @@ -14,6 +14,8 @@ import { getCaseUrl } from '../../components/link_to'; import { WhitePageWrapper, SectionWrapper } from './components/wrappers'; import { Connectors } from './components/configure_cases/connectors'; import * as i18n from './translations'; +import { ClosureOptions } from './components/configure_cases/closure_options'; +import { FieldMapping } from './components/configure_cases/field_mapping'; const backOptions = { href: getCaseUrl(), @@ -26,8 +28,12 @@ const wrapperPageStyle: Record<string, string> = { paddingBottom: '0', }; -export const FormWrapper = styled.div` +const FormWrapper = styled.div` ${({ theme }) => css` + & > * { + margin-top 40px; + } + padding-top: ${theme.eui.paddingSizes.l}; padding-bottom: ${theme.eui.paddingSizes.l}; `} @@ -44,6 +50,12 @@ const ConfigureCasesPageComponent: React.FC = () => ( <SectionWrapper> <Connectors /> </SectionWrapper> + <SectionWrapper> + <ClosureOptions /> + </SectionWrapper> + <SectionWrapper> + <FieldMapping /> + </SectionWrapper> </FormWrapper> </WhitePageWrapper> </WrapperPage> From d2cbc59ad47234db07219d84e3887e841d72996c Mon Sep 17 00:00:00 2001 From: Stacey Gammon <gammon@elastic.co> Date: Wed, 4 Mar 2020 10:27:14 -0500 Subject: [PATCH 104/120] Further improve type checking for actions and triggers (#58765) * wip * review follow up * make ACTION a prefix, not SUFFIX * fix path * add warnings about casting to ActionType * Make context an object in examples, not a string * require object context, which seems to fix the partial requirement in type and thus the type issue * mistake Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../public/hello_world_action.tsx | 4 +- examples/ui_action_examples/public/index.ts | 2 +- examples/ui_action_examples/public/plugin.ts | 10 ++- .../public/actions/actions.tsx | 59 ++++++------- examples/ui_actions_explorer/public/app.tsx | 11 +-- .../ui_actions_explorer/public/plugin.tsx | 48 ++++++----- .../public/trigger_context_example.tsx | 4 +- .../public/actions/select_range_action.ts | 18 ++-- .../data/public/actions/value_click_action.ts | 18 ++-- src/legacy/core_plugins/data/public/plugin.ts | 28 ++++-- .../public/actions/expand_panel_action.tsx | 20 ++--- .../public/actions/index.ts | 4 +- .../public/actions/replace_panel_action.tsx | 20 ++--- .../public/plugin.tsx | 13 ++- .../public/tests/dashboard_container.test.tsx | 2 +- .../public/actions/apply_filter_action.ts | 18 ++-- src/plugins/data/public/actions/index.ts | 2 +- src/plugins/data/public/plugin.ts | 11 ++- src/plugins/embeddable/public/bootstrap.ts | 16 ++++ src/plugins/embeddable/public/index.ts | 6 +- .../lib/actions/apply_filter_action.test.ts | 6 +- .../public/lib/actions/apply_filter_action.ts | 16 ++-- .../public/lib/actions/edit_panel_action.ts | 6 +- .../lib/panel/embeddable_panel.test.tsx | 10 +-- .../embeddable/public/lib/panel/index.ts | 4 +- .../public/lib/panel/panel_header/index.ts | 7 +- .../add_panel/add_panel_action.ts | 6 +- .../customize_title/customize_panel_action.ts | 6 +- .../panel_actions/customize_title/index.ts} | 12 +-- .../panel/panel_header/panel_actions/index.ts | 7 +- .../panel_actions/inspect_panel_action.ts | 6 +- .../test_samples/actions/edit_mode_action.ts | 13 +-- .../test_samples/actions/say_hello_action.tsx | 14 +-- .../actions/send_message_action.tsx | 12 +-- .../ui_actions/public/actions/action.test.ts | 20 +++-- .../ui_actions/public/actions/action.ts | 13 ++- .../public/actions/action_definition.ts | 72 ++++++++++++++++ .../public/actions/create_action.ts | 8 +- src/plugins/ui_actions/public/index.ts | 3 +- src/plugins/ui_actions/public/mocks.ts | 1 + .../public/service/ui_actions_service.test.ts | 86 +++++++++---------- .../public/service/ui_actions_service.ts | 38 ++++++-- .../tests/execute_trigger_actions.test.ts | 42 +++++---- .../public/tests/get_trigger_actions.test.ts | 10 +-- .../get_trigger_compatible_actions.test.ts | 33 ++++--- .../tests/test_samples/hello_world_action.tsx | 15 ++-- .../public/tests/test_samples/index.ts | 2 - .../tests/test_samples/say_hello_action.tsx | 46 ---------- src/plugins/ui_actions/public/types.ts | 13 ++- test/examples/embeddables/adding_children.ts | 2 +- test/examples/ui_actions/ui_actions.ts | 2 +- .../services/dashboard/panel_actions.js | 2 +- .../public/np_ready/public/plugin.tsx | 2 +- .../public/sample_panel_action.tsx | 16 ++-- .../public/sample_panel_link.ts | 12 ++- .../panel_actions/get_csv_panel_action.tsx | 21 +++-- .../public/custom_time_range_action.tsx | 12 +-- .../public/custom_time_range_badge.tsx | 14 +-- .../advanced_ui_actions/public/plugin.ts | 23 ++++- .../actions/flyout_create_drilldown/index.tsx | 4 +- x-pack/plugins/drilldowns/public/plugin.ts | 7 ++ .../public/service/drilldown_service.ts | 3 +- 62 files changed, 565 insertions(+), 396 deletions(-) rename src/plugins/{ui_actions/public/tests/test_samples/restricted_action.ts => embeddable/public/lib/panel/panel_header/panel_actions/customize_title/index.ts} (69%) create mode 100644 src/plugins/ui_actions/public/actions/action_definition.ts delete mode 100644 src/plugins/ui_actions/public/tests/test_samples/say_hello_action.tsx diff --git a/examples/ui_action_examples/public/hello_world_action.tsx b/examples/ui_action_examples/public/hello_world_action.tsx index f4c3bfeee6a6dd..da20f404645167 100644 --- a/examples/ui_action_examples/public/hello_world_action.tsx +++ b/examples/ui_action_examples/public/hello_world_action.tsx @@ -22,7 +22,7 @@ import { OverlayStart } from '../../../src/core/public'; import { createAction } from '../../../src/plugins/ui_actions/public'; import { toMountPoint } from '../../../src/plugins/kibana_react/public'; -export const HELLO_WORLD_ACTION_TYPE = 'HELLO_WORLD_ACTION_TYPE'; +export const ACTION_HELLO_WORLD = 'ACTION_HELLO_WORLD'; interface StartServices { openModal: OverlayStart['openModal']; @@ -30,7 +30,7 @@ interface StartServices { export const createHelloWorldAction = (getStartServices: () => Promise<StartServices>) => createAction({ - type: HELLO_WORLD_ACTION_TYPE, + type: ACTION_HELLO_WORLD, getDisplayName: () => 'Hello World!', execute: async () => { const { openModal } = await getStartServices(); diff --git a/examples/ui_action_examples/public/index.ts b/examples/ui_action_examples/public/index.ts index 9dce2191d2670d..88a36d278e256e 100644 --- a/examples/ui_action_examples/public/index.ts +++ b/examples/ui_action_examples/public/index.ts @@ -23,4 +23,4 @@ import { PluginInitializer } from '../../../src/core/public'; export const plugin: PluginInitializer<void, void> = () => new UiActionExamplesPlugin(); export { HELLO_WORLD_TRIGGER_ID } from './hello_world_trigger'; -export { HELLO_WORLD_ACTION_TYPE } from './hello_world_action'; +export { ACTION_HELLO_WORLD } from './hello_world_action'; diff --git a/examples/ui_action_examples/public/plugin.ts b/examples/ui_action_examples/public/plugin.ts index 08b65714dbf665..c47746d4b3fd6e 100644 --- a/examples/ui_action_examples/public/plugin.ts +++ b/examples/ui_action_examples/public/plugin.ts @@ -19,7 +19,7 @@ import { Plugin, CoreSetup } from '../../../src/core/public'; import { UiActionsSetup } from '../../../src/plugins/ui_actions/public'; -import { createHelloWorldAction } from './hello_world_action'; +import { createHelloWorldAction, ACTION_HELLO_WORLD } from './hello_world_action'; import { helloWorldTrigger, HELLO_WORLD_TRIGGER_ID } from './hello_world_trigger'; interface UiActionExamplesSetupDependencies { @@ -28,7 +28,11 @@ interface UiActionExamplesSetupDependencies { declare module '../../../src/plugins/ui_actions/public' { export interface TriggerContextMapping { - [HELLO_WORLD_TRIGGER_ID]: undefined; + [HELLO_WORLD_TRIGGER_ID]: {}; + } + + export interface ActionContextMapping { + [ACTION_HELLO_WORLD]: {}; } } @@ -42,7 +46,7 @@ export class UiActionExamplesPlugin })); uiActions.registerAction(helloWorldAction); - uiActions.attachAction(helloWorldTrigger.id, helloWorldAction.id); + uiActions.attachAction(helloWorldTrigger.id, helloWorldAction); } public start() {} diff --git a/examples/ui_actions_explorer/public/actions/actions.tsx b/examples/ui_actions_explorer/public/actions/actions.tsx index 2770b0e3bd5ff2..64a820ab6d1947 100644 --- a/examples/ui_actions_explorer/public/actions/actions.tsx +++ b/examples/ui_actions_explorer/public/actions/actions.tsx @@ -27,44 +27,48 @@ export const USER_TRIGGER = 'USER_TRIGGER'; export const COUNTRY_TRIGGER = 'COUNTRY_TRIGGER'; export const PHONE_TRIGGER = 'PHONE_TRIGGER'; -export const VIEW_IN_MAPS_ACTION = 'VIEW_IN_MAPS_ACTION'; -export const TRAVEL_GUIDE_ACTION = 'TRAVEL_GUIDE_ACTION'; -export const CALL_PHONE_NUMBER_ACTION = 'CALL_PHONE_NUMBER_ACTION'; -export const EDIT_USER_ACTION = 'EDIT_USER_ACTION'; -export const PHONE_USER_ACTION = 'PHONE_USER_ACTION'; -export const SHOWCASE_PLUGGABILITY_ACTION = 'SHOWCASE_PLUGGABILITY_ACTION'; +export const ACTION_VIEW_IN_MAPS = 'ACTION_VIEW_IN_MAPS'; +export const ACTION_TRAVEL_GUIDE = 'ACTION_TRAVEL_GUIDE'; +export const ACTION_CALL_PHONE_NUMBER = 'ACTION_CALL_PHONE_NUMBER'; +export const ACTION_EDIT_USER = 'ACTION_EDIT_USER'; +export const ACTION_PHONE_USER = 'ACTION_PHONE_USER'; +export const ACTION_SHOWCASE_PLUGGABILITY = 'ACTION_SHOWCASE_PLUGGABILITY'; -export const showcasePluggability = createAction({ - type: SHOWCASE_PLUGGABILITY_ACTION, +export const showcasePluggability = createAction<typeof ACTION_SHOWCASE_PLUGGABILITY>({ + type: ACTION_SHOWCASE_PLUGGABILITY, getDisplayName: () => 'This is pluggable! Any plugin can inject their actions here.', execute: async () => alert("Isn't that cool?!"), }); -export type PhoneContext = string; +export interface PhoneContext { + phone: string; +} -export const makePhoneCallAction = createAction<PhoneContext>({ - type: CALL_PHONE_NUMBER_ACTION, +export const makePhoneCallAction = createAction<typeof ACTION_CALL_PHONE_NUMBER>({ + type: ACTION_CALL_PHONE_NUMBER, getDisplayName: () => 'Call phone number', - execute: async phone => alert(`Pretend calling ${phone}...`), + execute: async context => alert(`Pretend calling ${context.phone}...`), }); -export const lookUpWeatherAction = createAction<{ country: string }>({ - type: TRAVEL_GUIDE_ACTION, +export const lookUpWeatherAction = createAction<typeof ACTION_TRAVEL_GUIDE>({ + type: ACTION_TRAVEL_GUIDE, getIconType: () => 'popout', getDisplayName: () => 'View travel guide', - execute: async ({ country }) => { - window.open(`https://www.worldtravelguide.net/?s=${country},`, '_blank'); + execute: async context => { + window.open(`https://www.worldtravelguide.net/?s=${context.country}`, '_blank'); }, }); -export type CountryContext = string; +export interface CountryContext { + country: string; +} -export const viewInMapsAction = createAction<CountryContext>({ - type: VIEW_IN_MAPS_ACTION, +export const viewInMapsAction = createAction<typeof ACTION_VIEW_IN_MAPS>({ + type: ACTION_VIEW_IN_MAPS, getIconType: () => 'popout', getDisplayName: () => 'View in maps', - execute: async country => { - window.open(`https://www.google.com/maps/place/${country}`, '_blank'); + execute: async context => { + window.open(`https://www.google.com/maps/place/${context.country}`, '_blank'); }, }); @@ -100,11 +104,8 @@ function EditUserModal({ } export const createEditUserAction = (getOpenModal: () => Promise<OverlayStart['openModal']>) => - createAction<{ - user: User; - update: (user: User) => void; - }>({ - type: EDIT_USER_ACTION, + createAction<typeof ACTION_EDIT_USER>({ + type: ACTION_EDIT_USER, getIconType: () => 'pencil', getDisplayName: () => 'Edit user', execute: async ({ user, update }) => { @@ -120,8 +121,8 @@ export interface UserContext { } export const createPhoneUserAction = (getUiActionsApi: () => Promise<UiActionsStart>) => - createAction<UserContext>({ - type: PHONE_USER_ACTION, + createAction<typeof ACTION_PHONE_USER>({ + type: ACTION_PHONE_USER, getDisplayName: () => 'Call phone number', isCompatible: async ({ user }) => user.phone !== undefined, execute: async ({ user }) => { @@ -133,7 +134,7 @@ export const createPhoneUserAction = (getUiActionsApi: () => Promise<UiActionsSt // TODO: we need to figure out the best way to handle these nested actions however, since // we don't want multiple context menu's to pop up. if (user.phone !== undefined) { - (await getUiActionsApi()).executeTriggerActions(PHONE_TRIGGER, user.phone); + (await getUiActionsApi()).executeTriggerActions(PHONE_TRIGGER, { phone: user.phone }); } }, }); diff --git a/examples/ui_actions_explorer/public/app.tsx b/examples/ui_actions_explorer/public/app.tsx index e93e29ac444fa3..462f5c3bf88ba9 100644 --- a/examples/ui_actions_explorer/public/app.tsx +++ b/examples/ui_actions_explorer/public/app.tsx @@ -35,7 +35,7 @@ import { EuiModalBody } from '@elastic/eui'; import { toMountPoint } from '../../../src/plugins/kibana_react/public'; import { UiActionsStart, createAction } from '../../../src/plugins/ui_actions/public'; import { AppMountParameters, OverlayStart } from '../../../src/core/public'; -import { HELLO_WORLD_TRIGGER_ID, HELLO_WORLD_ACTION_TYPE } from '../../ui_action_examples/public'; +import { HELLO_WORLD_TRIGGER_ID, ACTION_HELLO_WORLD } from '../../ui_action_examples/public'; import { TriggerContextExample } from './trigger_context_example'; interface Props { @@ -60,7 +60,7 @@ const ActionsExplorer = ({ uiActionsApi, openModal }: Props) => { </EuiText> <EuiButton data-test-subj="emitHelloWorldTrigger" - onClick={() => uiActionsApi.executeTriggerActions(HELLO_WORLD_TRIGGER_ID, undefined)} + onClick={() => uiActionsApi.executeTriggerActions(HELLO_WORLD_TRIGGER_ID, {})} > Say hello world! </EuiButton> @@ -76,8 +76,9 @@ const ActionsExplorer = ({ uiActionsApi, openModal }: Props) => { <EuiButton data-test-subj="addDynamicAction" onClick={() => { - const dynamicAction = createAction<{}>({ - type: `${HELLO_WORLD_ACTION_TYPE}-${name}`, + const dynamicAction = createAction<typeof ACTION_HELLO_WORLD>({ + id: `${ACTION_HELLO_WORLD}-${name}`, + type: ACTION_HELLO_WORLD, getDisplayName: () => `Say hello to ${name}`, execute: async () => { const overlay = openModal( @@ -95,7 +96,7 @@ const ActionsExplorer = ({ uiActionsApi, openModal }: Props) => { }, }); uiActionsApi.registerAction(dynamicAction); - uiActionsApi.attachAction(HELLO_WORLD_TRIGGER_ID, dynamicAction.type); + uiActionsApi.attachAction(HELLO_WORLD_TRIGGER_ID, dynamicAction); setConfirmationText( `You've successfully added a new action: ${dynamicAction.getDisplayName( {} diff --git a/examples/ui_actions_explorer/public/plugin.tsx b/examples/ui_actions_explorer/public/plugin.tsx index fecada71099e88..f1895905a45e16 100644 --- a/examples/ui_actions_explorer/public/plugin.tsx +++ b/examples/ui_actions_explorer/public/plugin.tsx @@ -27,17 +27,17 @@ import { lookUpWeatherAction, viewInMapsAction, createEditUserAction, - CALL_PHONE_NUMBER_ACTION, - VIEW_IN_MAPS_ACTION, - TRAVEL_GUIDE_ACTION, - PHONE_USER_ACTION, - EDIT_USER_ACTION, makePhoneCallAction, showcasePluggability, - SHOWCASE_PLUGGABILITY_ACTION, UserContext, CountryContext, PhoneContext, + ACTION_EDIT_USER, + ACTION_SHOWCASE_PLUGGABILITY, + ACTION_CALL_PHONE_NUMBER, + ACTION_TRAVEL_GUIDE, + ACTION_VIEW_IN_MAPS, + ACTION_PHONE_USER, } from './actions/actions'; interface StartDeps { @@ -54,6 +54,15 @@ declare module '../../../src/plugins/ui_actions/public' { [COUNTRY_TRIGGER]: CountryContext; [PHONE_TRIGGER]: PhoneContext; } + + export interface ActionContextMapping { + [ACTION_EDIT_USER]: UserContext; + [ACTION_SHOWCASE_PLUGGABILITY]: {}; + [ACTION_CALL_PHONE_NUMBER]: PhoneContext; + [ACTION_TRAVEL_GUIDE]: CountryContext; + [ACTION_VIEW_IN_MAPS]: CountryContext; + [ACTION_PHONE_USER]: UserContext; + } } export class UiActionsExplorerPlugin implements Plugin<void, void, {}, StartDeps> { @@ -67,29 +76,24 @@ export class UiActionsExplorerPlugin implements Plugin<void, void, {}, StartDeps deps.uiActions.registerTrigger({ id: USER_TRIGGER, }); - deps.uiActions.registerAction(lookUpWeatherAction); - deps.uiActions.registerAction(viewInMapsAction); - deps.uiActions.registerAction(makePhoneCallAction); - deps.uiActions.registerAction(showcasePluggability); const startServices = core.getStartServices(); - deps.uiActions.registerAction( + + deps.uiActions.attachAction( + USER_TRIGGER, createPhoneUserAction(async () => (await startServices)[1].uiActions) ); - deps.uiActions.registerAction( + deps.uiActions.attachAction( + USER_TRIGGER, createEditUserAction(async () => (await startServices)[0].overlays.openModal) ); - deps.uiActions.attachAction(USER_TRIGGER, PHONE_USER_ACTION); - deps.uiActions.attachAction(USER_TRIGGER, EDIT_USER_ACTION); - // What's missing here is type analysis to ensure the context emitted by the trigger - // is the same context that the action requires. - deps.uiActions.attachAction(COUNTRY_TRIGGER, VIEW_IN_MAPS_ACTION); - deps.uiActions.attachAction(COUNTRY_TRIGGER, TRAVEL_GUIDE_ACTION); - deps.uiActions.attachAction(COUNTRY_TRIGGER, SHOWCASE_PLUGGABILITY_ACTION); - deps.uiActions.attachAction(PHONE_TRIGGER, CALL_PHONE_NUMBER_ACTION); - deps.uiActions.attachAction(PHONE_TRIGGER, SHOWCASE_PLUGGABILITY_ACTION); - deps.uiActions.attachAction(USER_TRIGGER, SHOWCASE_PLUGGABILITY_ACTION); + deps.uiActions.attachAction(COUNTRY_TRIGGER, viewInMapsAction); + deps.uiActions.attachAction(COUNTRY_TRIGGER, lookUpWeatherAction); + deps.uiActions.attachAction(COUNTRY_TRIGGER, showcasePluggability); + deps.uiActions.attachAction(PHONE_TRIGGER, makePhoneCallAction); + deps.uiActions.attachAction(PHONE_TRIGGER, showcasePluggability); + deps.uiActions.attachAction(USER_TRIGGER, showcasePluggability); core.application.register({ id: 'uiActionsExplorer', diff --git a/examples/ui_actions_explorer/public/trigger_context_example.tsx b/examples/ui_actions_explorer/public/trigger_context_example.tsx index 00d974e9381384..4b886521039663 100644 --- a/examples/ui_actions_explorer/public/trigger_context_example.tsx +++ b/examples/ui_actions_explorer/public/trigger_context_example.tsx @@ -47,7 +47,7 @@ const createRowData = ( <Fragment> <EuiButtonEmpty onClick={() => { - uiActionsApi.executeTriggerActions(COUNTRY_TRIGGER, user.countryOfResidence); + uiActionsApi.executeTriggerActions(COUNTRY_TRIGGER, { country: user.countryOfResidence }); }} > {user.countryOfResidence} @@ -59,7 +59,7 @@ const createRowData = ( <EuiButtonEmpty disabled={user.phone === undefined} onClick={() => { - uiActionsApi.executeTriggerActions(PHONE_TRIGGER, user.phone!); + uiActionsApi.executeTriggerActions(PHONE_TRIGGER, { phone: user.phone! }); }} > {user.phone} diff --git a/src/legacy/core_plugins/data/public/actions/select_range_action.ts b/src/legacy/core_plugins/data/public/actions/select_range_action.ts index 7f1c5d78ab8006..21046f8bb834fb 100644 --- a/src/legacy/core_plugins/data/public/actions/select_range_action.ts +++ b/src/legacy/core_plugins/data/public/actions/select_range_action.ts @@ -19,21 +19,21 @@ import { i18n } from '@kbn/i18n'; import { - Action, createAction, IncompatibleActionError, + ActionByType, } from '../../../../../plugins/ui_actions/public'; import { onBrushEvent } from './filters/brush_event'; import { FilterManager, TimefilterContract, esFilters } from '../../../../../plugins/data/public'; -export const SELECT_RANGE_ACTION = 'SELECT_RANGE_ACTION'; +export const ACTION_SELECT_RANGE = 'ACTION_SELECT_RANGE'; -interface ActionContext { +export interface SelectRangeActionContext { data: any; timeFieldName: string; } -async function isCompatible(context: ActionContext) { +async function isCompatible(context: SelectRangeActionContext) { try { return Boolean(await onBrushEvent(context.data)); } catch { @@ -44,17 +44,17 @@ async function isCompatible(context: ActionContext) { export function selectRangeAction( filterManager: FilterManager, timeFilter: TimefilterContract -): Action<ActionContext> { - return createAction<ActionContext>({ - type: SELECT_RANGE_ACTION, - id: SELECT_RANGE_ACTION, +): ActionByType<typeof ACTION_SELECT_RANGE> { + return createAction<typeof ACTION_SELECT_RANGE>({ + type: ACTION_SELECT_RANGE, + id: ACTION_SELECT_RANGE, getDisplayName: () => { return i18n.translate('data.filter.applyFilterActionTitle', { defaultMessage: 'Apply filter to current view', }); }, isCompatible, - execute: async ({ timeFieldName, data }: ActionContext) => { + execute: async ({ timeFieldName, data }: SelectRangeActionContext) => { if (!(await isCompatible({ timeFieldName, data }))) { throw new IncompatibleActionError(); } diff --git a/src/legacy/core_plugins/data/public/actions/value_click_action.ts b/src/legacy/core_plugins/data/public/actions/value_click_action.ts index 26933cc8ddb824..4c69bc82629227 100644 --- a/src/legacy/core_plugins/data/public/actions/value_click_action.ts +++ b/src/legacy/core_plugins/data/public/actions/value_click_action.ts @@ -20,7 +20,7 @@ import { i18n } from '@kbn/i18n'; import { toMountPoint } from '../../../../../plugins/kibana_react/public'; import { - Action, + ActionByType, createAction, IncompatibleActionError, } from '../../../../../plugins/ui_actions/public'; @@ -37,14 +37,14 @@ import { esFilters, } from '../../../../../plugins/data/public'; -export const VALUE_CLICK_ACTION = 'VALUE_CLICK_ACTION'; +export const ACTION_VALUE_CLICK = 'ACTION_VALUE_CLICK'; -interface ActionContext { +export interface ValueClickActionContext { data: any; timeFieldName: string; } -async function isCompatible(context: ActionContext) { +async function isCompatible(context: ValueClickActionContext) { try { const filters: Filter[] = (await createFiltersFromEvent(context.data.data || [context.data], context.data.negate)) || @@ -58,17 +58,17 @@ async function isCompatible(context: ActionContext) { export function valueClickAction( filterManager: FilterManager, timeFilter: TimefilterContract -): Action<ActionContext> { - return createAction<ActionContext>({ - type: VALUE_CLICK_ACTION, - id: VALUE_CLICK_ACTION, +): ActionByType<typeof ACTION_VALUE_CLICK> { + return createAction<typeof ACTION_VALUE_CLICK>({ + type: ACTION_VALUE_CLICK, + id: ACTION_VALUE_CLICK, getDisplayName: () => { return i18n.translate('data.filter.applyFilterActionTitle', { defaultMessage: 'Apply filter to current view', }); }, isCompatible, - execute: async ({ timeFieldName, data }: ActionContext) => { + execute: async ({ timeFieldName, data }: ValueClickActionContext) => { if (!(await isCompatible({ timeFieldName, data }))) { throw new IncompatibleActionError(); } diff --git a/src/legacy/core_plugins/data/public/plugin.ts b/src/legacy/core_plugins/data/public/plugin.ts index e2b8ca5dda78cf..18230646ab412d 100644 --- a/src/legacy/core_plugins/data/public/plugin.ts +++ b/src/legacy/core_plugins/data/public/plugin.ts @@ -37,8 +37,16 @@ import { // eslint-disable-next-line @kbn/eslint/no-restricted-paths } from '../../../../plugins/data/public/services'; import { setSearchServiceShim } from './services'; -import { SELECT_RANGE_ACTION, selectRangeAction } from './actions/select_range_action'; -import { VALUE_CLICK_ACTION, valueClickAction } from './actions/value_click_action'; +import { + selectRangeAction, + SelectRangeActionContext, + ACTION_SELECT_RANGE, +} from './actions/select_range_action'; +import { + valueClickAction, + ACTION_VALUE_CLICK, + ValueClickActionContext, +} from './actions/value_click_action'; import { SELECT_RANGE_TRIGGER, VALUE_CLICK_TRIGGER, @@ -76,6 +84,12 @@ export interface DataSetup { export interface DataStart { search: SearchStart; } +declare module '../../../../plugins/ui_actions/public' { + export interface ActionContextMapping { + [ACTION_SELECT_RANGE]: SelectRangeActionContext; + [ACTION_VALUE_CLICK]: ValueClickActionContext; + } +} /** * Data Plugin - public @@ -100,10 +114,13 @@ export class DataPlugin // This is to be deprecated once we switch to the new search service fully addSearchStrategy(defaultSearchStrategy); - uiActions.registerAction( + uiActions.attachAction( + SELECT_RANGE_TRIGGER, selectRangeAction(data.query.filterManager, data.query.timefilter.timefilter) ); - uiActions.registerAction( + + uiActions.attachAction( + VALUE_CLICK_TRIGGER, valueClickAction(data.query.filterManager, data.query.timefilter.timefilter) ); @@ -123,9 +140,6 @@ export class DataPlugin setSearchService(data.search); setOverlays(core.overlays); - uiActions.attachAction(SELECT_RANGE_TRIGGER, SELECT_RANGE_ACTION); - uiActions.attachAction(VALUE_CLICK_TRIGGER, VALUE_CLICK_ACTION); - return { search, }; diff --git a/src/plugins/dashboard_embeddable_container/public/actions/expand_panel_action.tsx b/src/plugins/dashboard_embeddable_container/public/actions/expand_panel_action.tsx index edfba153b2b0b9..cf245178306d50 100644 --- a/src/plugins/dashboard_embeddable_container/public/actions/expand_panel_action.tsx +++ b/src/plugins/dashboard_embeddable_container/public/actions/expand_panel_action.tsx @@ -19,10 +19,10 @@ import { i18n } from '@kbn/i18n'; import { IEmbeddable } from '../embeddable_plugin'; -import { Action, IncompatibleActionError } from '../ui_actions_plugin'; +import { ActionByType, IncompatibleActionError } from '../ui_actions_plugin'; import { DASHBOARD_CONTAINER_TYPE, DashboardContainer } from '../embeddable'; -export const EXPAND_PANEL_ACTION = 'togglePanel'; +export const ACTION_EXPAND_PANEL = 'togglePanel'; function isDashboard(embeddable: IEmbeddable): embeddable is DashboardContainer { return embeddable.type === DASHBOARD_CONTAINER_TYPE; @@ -36,18 +36,18 @@ function isExpanded(embeddable: IEmbeddable) { return embeddable.id === embeddable.parent.getInput().expandedPanelId; } -interface ActionContext { +export interface ExpandPanelActionContext { embeddable: IEmbeddable; } -export class ExpandPanelAction implements Action<ActionContext> { - public readonly type = EXPAND_PANEL_ACTION; - public readonly id = EXPAND_PANEL_ACTION; +export class ExpandPanelAction implements ActionByType<typeof ACTION_EXPAND_PANEL> { + public readonly type = ACTION_EXPAND_PANEL; + public readonly id = ACTION_EXPAND_PANEL; public order = 7; constructor() {} - public getDisplayName({ embeddable }: ActionContext) { + public getDisplayName({ embeddable }: ExpandPanelActionContext) { if (!embeddable.parent || !isDashboard(embeddable.parent)) { throw new IncompatibleActionError(); } @@ -67,7 +67,7 @@ export class ExpandPanelAction implements Action<ActionContext> { ); } - public getIconType({ embeddable }: ActionContext) { + public getIconType({ embeddable }: ExpandPanelActionContext) { if (!embeddable.parent || !isDashboard(embeddable.parent)) { throw new IncompatibleActionError(); } @@ -75,11 +75,11 @@ export class ExpandPanelAction implements Action<ActionContext> { return isExpanded(embeddable) ? 'expand' : 'expand'; } - public async isCompatible({ embeddable }: ActionContext) { + public async isCompatible({ embeddable }: ExpandPanelActionContext) { return Boolean(embeddable.parent && isDashboard(embeddable.parent)); } - public async execute({ embeddable }: ActionContext) { + public async execute({ embeddable }: ExpandPanelActionContext) { if (!embeddable.parent || !isDashboard(embeddable.parent)) { throw new IncompatibleActionError(); } diff --git a/src/plugins/dashboard_embeddable_container/public/actions/index.ts b/src/plugins/dashboard_embeddable_container/public/actions/index.ts index 6c0db82fbbc5bb..304fb98b4f8428 100644 --- a/src/plugins/dashboard_embeddable_container/public/actions/index.ts +++ b/src/plugins/dashboard_embeddable_container/public/actions/index.ts @@ -17,5 +17,5 @@ * under the License. */ -export { ExpandPanelAction, EXPAND_PANEL_ACTION } from './expand_panel_action'; -export { ReplacePanelAction, REPLACE_PANEL_ACTION } from './replace_panel_action'; +export { ExpandPanelAction, ACTION_EXPAND_PANEL } from './expand_panel_action'; +export { ReplacePanelAction, ACTION_REPLACE_PANEL } from './replace_panel_action'; diff --git a/src/plugins/dashboard_embeddable_container/public/actions/replace_panel_action.tsx b/src/plugins/dashboard_embeddable_container/public/actions/replace_panel_action.tsx index 16f611a2f1ff2a..1d59fe6bcb30ff 100644 --- a/src/plugins/dashboard_embeddable_container/public/actions/replace_panel_action.tsx +++ b/src/plugins/dashboard_embeddable_container/public/actions/replace_panel_action.tsx @@ -21,22 +21,22 @@ import { i18n } from '@kbn/i18n'; import { CoreStart } from '../../../../core/public'; import { IEmbeddable, ViewMode, IEmbeddableStart } from '../embeddable_plugin'; import { DASHBOARD_CONTAINER_TYPE, DashboardContainer } from '../embeddable'; -import { Action, IncompatibleActionError } from '../ui_actions_plugin'; +import { ActionByType, IncompatibleActionError } from '../ui_actions_plugin'; import { openReplacePanelFlyout } from './open_replace_panel_flyout'; -export const REPLACE_PANEL_ACTION = 'replacePanel'; +export const ACTION_REPLACE_PANEL = 'replacePanel'; function isDashboard(embeddable: IEmbeddable): embeddable is DashboardContainer { return embeddable.type === DASHBOARD_CONTAINER_TYPE; } -interface ActionContext { +export interface ReplacePanelActionContext { embeddable: IEmbeddable; } -export class ReplacePanelAction implements Action<ActionContext> { - public readonly type = REPLACE_PANEL_ACTION; - public readonly id = REPLACE_PANEL_ACTION; +export class ReplacePanelAction implements ActionByType<typeof ACTION_REPLACE_PANEL> { + public readonly type = ACTION_REPLACE_PANEL; + public readonly id = ACTION_REPLACE_PANEL; public order = 11; constructor( @@ -46,7 +46,7 @@ export class ReplacePanelAction implements Action<ActionContext> { private getEmbeddableFactories: IEmbeddableStart['getEmbeddableFactories'] ) {} - public getDisplayName({ embeddable }: ActionContext) { + public getDisplayName({ embeddable }: ReplacePanelActionContext) { if (!embeddable.parent || !isDashboard(embeddable.parent)) { throw new IncompatibleActionError(); } @@ -55,14 +55,14 @@ export class ReplacePanelAction implements Action<ActionContext> { }); } - public getIconType({ embeddable }: ActionContext) { + public getIconType({ embeddable }: ReplacePanelActionContext) { if (!embeddable.parent || !isDashboard(embeddable.parent)) { throw new IncompatibleActionError(); } return 'kqlOperand'; } - public async isCompatible({ embeddable }: ActionContext) { + public async isCompatible({ embeddable }: ReplacePanelActionContext) { if (embeddable.getInput().viewMode) { if (embeddable.getInput().viewMode === ViewMode.VIEW) { return false; @@ -72,7 +72,7 @@ export class ReplacePanelAction implements Action<ActionContext> { return Boolean(embeddable.parent && isDashboard(embeddable.parent)); } - public async execute({ embeddable }: ActionContext) { + public async execute({ embeddable }: ReplacePanelActionContext) { if (!embeddable.parent || !isDashboard(embeddable.parent)) { throw new IncompatibleActionError(); } diff --git a/src/plugins/dashboard_embeddable_container/public/plugin.tsx b/src/plugins/dashboard_embeddable_container/public/plugin.tsx index 44c9dbf2dcc4b6..5d0b35ee01e3be 100644 --- a/src/plugins/dashboard_embeddable_container/public/plugin.tsx +++ b/src/plugins/dashboard_embeddable_container/public/plugin.tsx @@ -31,6 +31,8 @@ import { ExitFullScreenButton as ExitFullScreenButtonUi, ExitFullScreenButtonProps, } from '../../../plugins/kibana_react/public'; +import { ExpandPanelActionContext, ACTION_EXPAND_PANEL } from './actions/expand_panel_action'; +import { ReplacePanelActionContext, ACTION_REPLACE_PANEL } from './actions/replace_panel_action'; interface SetupDependencies { embeddable: IEmbeddableSetup; @@ -46,6 +48,13 @@ interface StartDependencies { export type Setup = void; export type Start = void; +declare module '../../../plugins/ui_actions/public' { + export interface ActionContextMapping { + [ACTION_EXPAND_PANEL]: ExpandPanelActionContext; + [ACTION_REPLACE_PANEL]: ReplacePanelActionContext; + } +} + export class DashboardEmbeddableContainerPublicPlugin implements Plugin<Setup, Start, SetupDependencies, StartDependencies> { constructor(initializerContext: PluginInitializerContext) {} @@ -53,7 +62,7 @@ export class DashboardEmbeddableContainerPublicPlugin public setup(core: CoreSetup, { embeddable, uiActions }: SetupDependencies): Setup { const expandPanelAction = new ExpandPanelAction(); uiActions.registerAction(expandPanelAction); - uiActions.attachAction(CONTEXT_MENU_TRIGGER, expandPanelAction.id); + uiActions.attachAction(CONTEXT_MENU_TRIGGER, expandPanelAction); } public start(core: CoreStart, plugins: StartDependencies): Start { @@ -81,7 +90,7 @@ export class DashboardEmbeddableContainerPublicPlugin plugins.embeddable.getEmbeddableFactories ); uiActions.registerAction(changeViewAction); - uiActions.attachAction(CONTEXT_MENU_TRIGGER, changeViewAction.id); + uiActions.attachAction(CONTEXT_MENU_TRIGGER, changeViewAction); const factory = new DashboardContainerFactory({ application, diff --git a/src/plugins/dashboard_embeddable_container/public/tests/dashboard_container.test.tsx b/src/plugins/dashboard_embeddable_container/public/tests/dashboard_container.test.tsx index 6a3b69af60d6b3..a81d80b440e049 100644 --- a/src/plugins/dashboard_embeddable_container/public/tests/dashboard_container.test.tsx +++ b/src/plugins/dashboard_embeddable_container/public/tests/dashboard_container.test.tsx @@ -49,7 +49,7 @@ test('DashboardContainer in edit mode shows edit mode actions', async () => { const editModeAction = createEditModeAction(); uiActionsSetup.registerAction(editModeAction); - uiActionsSetup.attachAction(CONTEXT_MENU_TRIGGER, editModeAction.id); + uiActionsSetup.attachAction(CONTEXT_MENU_TRIGGER, editModeAction); setup.registerEmbeddableFactory( CONTACT_CARD_EMBEDDABLE, new ContactCardEmbeddableFactory({} as any, (() => null) as any, {} as any) diff --git a/src/plugins/data/public/actions/apply_filter_action.ts b/src/plugins/data/public/actions/apply_filter_action.ts index 6edb3237987faa..bd20c6f632a3a5 100644 --- a/src/plugins/data/public/actions/apply_filter_action.ts +++ b/src/plugins/data/public/actions/apply_filter_action.ts @@ -19,36 +19,36 @@ import { i18n } from '@kbn/i18n'; import { toMountPoint } from '../../../kibana_react/public'; -import { Action, createAction, IncompatibleActionError } from '../../../ui_actions/public'; +import { ActionByType, createAction, IncompatibleActionError } from '../../../ui_actions/public'; import { getOverlays, getIndexPatterns } from '../services'; import { applyFiltersPopover } from '../ui/apply_filters'; import { Filter, FilterManager, TimefilterContract, esFilters } from '..'; -export const GLOBAL_APPLY_FILTER_ACTION = 'GLOBAL_APPLY_FILTER_ACTION'; +export const ACTION_GLOBAL_APPLY_FILTER = 'ACTION_GLOBAL_APPLY_FILTER'; -interface ActionContext { +export interface ApplyGlobalFilterActionContext { filters: Filter[]; timeFieldName?: string; } -async function isCompatible(context: ActionContext) { +async function isCompatible(context: ApplyGlobalFilterActionContext) { return context.filters !== undefined; } export function createFilterAction( filterManager: FilterManager, timeFilter: TimefilterContract -): Action<ActionContext> { - return createAction<ActionContext>({ - type: GLOBAL_APPLY_FILTER_ACTION, - id: GLOBAL_APPLY_FILTER_ACTION, +): ActionByType<typeof ACTION_GLOBAL_APPLY_FILTER> { + return createAction<typeof ACTION_GLOBAL_APPLY_FILTER>({ + type: ACTION_GLOBAL_APPLY_FILTER, + id: ACTION_GLOBAL_APPLY_FILTER, getDisplayName: () => { return i18n.translate('data.filter.applyFilterActionTitle', { defaultMessage: 'Apply filter to current view', }); }, isCompatible, - execute: async ({ filters, timeFieldName }: ActionContext) => { + execute: async ({ filters, timeFieldName }: ApplyGlobalFilterActionContext) => { if (!filters) { throw new Error('Applying a filter requires a filter'); } diff --git a/src/plugins/data/public/actions/index.ts b/src/plugins/data/public/actions/index.ts index 5d469606944a18..e3dc9760aa8b83 100644 --- a/src/plugins/data/public/actions/index.ts +++ b/src/plugins/data/public/actions/index.ts @@ -17,4 +17,4 @@ * under the License. */ -export { GLOBAL_APPLY_FILTER_ACTION, createFilterAction } from './apply_filter_action'; +export { ACTION_GLOBAL_APPLY_FILTER, createFilterAction } from './apply_filter_action'; diff --git a/src/plugins/data/public/plugin.ts b/src/plugins/data/public/plugin.ts index 8ce379547ead53..a199a0419aea64 100644 --- a/src/plugins/data/public/plugin.ts +++ b/src/plugins/data/public/plugin.ts @@ -44,9 +44,16 @@ import { setIndexPatterns, setUiSettings, } from './services'; -import { createFilterAction, GLOBAL_APPLY_FILTER_ACTION } from './actions'; +import { createFilterAction, ACTION_GLOBAL_APPLY_FILTER } from './actions'; import { APPLY_FILTER_TRIGGER } from '../../embeddable/public'; import { createSearchBar } from './ui/search_bar/create_search_bar'; +import { ApplyGlobalFilterActionContext } from './actions/apply_filter_action'; + +declare module '../../ui_actions/public' { + export interface ActionContextMapping { + [ACTION_GLOBAL_APPLY_FILTER]: ApplyGlobalFilterActionContext; + } +} export class DataPublicPlugin implements Plugin<DataPublicPluginSetup, DataPublicPluginStart> { private readonly autocomplete = new AutocompleteService(); @@ -93,7 +100,7 @@ export class DataPublicPlugin implements Plugin<DataPublicPluginSetup, DataPubli const indexPatternsService = new IndexPatternsService(uiSettings, savedObjects.client, http); setIndexPatterns(indexPatternsService); - uiActions.attachAction(APPLY_FILTER_TRIGGER, GLOBAL_APPLY_FILTER_ACTION); + uiActions.attachAction(APPLY_FILTER_TRIGGER, uiActions.getAction(ACTION_GLOBAL_APPLY_FILTER)); const dataServices = { autocomplete: this.autocomplete.start(), diff --git a/src/plugins/embeddable/public/bootstrap.ts b/src/plugins/embeddable/public/bootstrap.ts index 93a15aab7a0ddd..e69361178eeba1 100644 --- a/src/plugins/embeddable/public/bootstrap.ts +++ b/src/plugins/embeddable/public/bootstrap.ts @@ -33,6 +33,13 @@ import { SELECT_RANGE_TRIGGER, CONTEXT_MENU_TRIGGER, PANEL_BADGE_TRIGGER, + ACTION_ADD_PANEL, + ACTION_CUSTOMIZE_PANEL, + ACTION_INSPECT_PANEL, + REMOVE_PANEL_ACTION, + ACTION_EDIT_PANEL, + FilterActionContext, + ACTION_APPLY_FILTER, } from './lib'; declare module '../../ui_actions/public' { @@ -46,6 +53,15 @@ declare module '../../ui_actions/public' { [CONTEXT_MENU_TRIGGER]: EmbeddableContext; [PANEL_BADGE_TRIGGER]: EmbeddableContext; } + + export interface ActionContextMapping { + [ACTION_CUSTOMIZE_PANEL]: EmbeddableContext; + [ACTION_ADD_PANEL]: EmbeddableContext; + [ACTION_INSPECT_PANEL]: EmbeddableContext; + [REMOVE_PANEL_ACTION]: EmbeddableContext; + [ACTION_EDIT_PANEL]: EmbeddableContext; + [ACTION_APPLY_FILTER]: FilterActionContext; + } } /** diff --git a/src/plugins/embeddable/public/index.ts b/src/plugins/embeddable/public/index.ts index 2eafe16442e18c..34abd57eeacdda 100644 --- a/src/plugins/embeddable/public/index.ts +++ b/src/plugins/embeddable/public/index.ts @@ -24,9 +24,9 @@ import { EmbeddablePublicPlugin } from './plugin'; export { Adapters, - ADD_PANEL_ACTION_ID, + ACTION_ADD_PANEL, AddPanelAction, - APPLY_FILTER_ACTION, + ACTION_APPLY_FILTER, APPLY_FILTER_TRIGGER, applyFilterTrigger, Container, @@ -34,7 +34,7 @@ export { ContainerOutput, CONTEXT_MENU_TRIGGER, contextMenuTrigger, - EDIT_PANEL_ACTION_ID, + ACTION_EDIT_PANEL, EditPanelAction, Embeddable, EmbeddableChildPanel, diff --git a/src/plugins/embeddable/public/lib/actions/apply_filter_action.test.ts b/src/plugins/embeddable/public/lib/actions/apply_filter_action.test.ts index 6b8f2223a14a56..5297cf6cd365c6 100644 --- a/src/plugins/embeddable/public/lib/actions/apply_filter_action.test.ts +++ b/src/plugins/embeddable/public/lib/actions/apply_filter_action.test.ts @@ -20,10 +20,10 @@ import { createFilterAction } from './apply_filter_action'; import { expectErrorAsync } from '../../tests/helpers'; -test('has APPLY_FILTER_ACTION type and id', () => { +test('has ACTION_APPLY_FILTER type and id', () => { const action = createFilterAction(); - expect(action.id).toBe('APPLY_FILTER_ACTION'); - expect(action.type).toBe('APPLY_FILTER_ACTION'); + expect(action.id).toBe('ACTION_APPLY_FILTER'); + expect(action.type).toBe('ACTION_APPLY_FILTER'); }); test('has expected display name', () => { diff --git a/src/plugins/embeddable/public/lib/actions/apply_filter_action.ts b/src/plugins/embeddable/public/lib/actions/apply_filter_action.ts index 9aeb7e1c84d7e5..4680512fb81c80 100644 --- a/src/plugins/embeddable/public/lib/actions/apply_filter_action.ts +++ b/src/plugins/embeddable/public/lib/actions/apply_filter_action.ts @@ -18,19 +18,19 @@ */ import { i18n } from '@kbn/i18n'; -import { Action, createAction, IncompatibleActionError } from '../ui_actions'; +import { ActionByType, createAction, IncompatibleActionError } from '../ui_actions'; import { IEmbeddable, EmbeddableInput } from '../embeddables'; import { Filter } from '../../../../../plugins/data/public'; -export const APPLY_FILTER_ACTION = 'APPLY_FILTER_ACTION'; +export const ACTION_APPLY_FILTER = 'ACTION_APPLY_FILTER'; type RootEmbeddable = IEmbeddable<EmbeddableInput & { filters: Filter[] }>; -interface ActionContext { +export interface FilterActionContext { embeddable: IEmbeddable; filters: Filter[]; } -async function isCompatible(context: ActionContext) { +async function isCompatible(context: FilterActionContext) { if (context.embeddable === undefined) { return false; } @@ -38,10 +38,10 @@ async function isCompatible(context: ActionContext) { return Boolean(root.getInput().filters !== undefined && context.filters !== undefined); } -export function createFilterAction(): Action<ActionContext> { - return createAction<ActionContext>({ - type: APPLY_FILTER_ACTION, - id: APPLY_FILTER_ACTION, +export function createFilterAction(): ActionByType<typeof ACTION_APPLY_FILTER> { + return createAction<typeof ACTION_APPLY_FILTER>({ + type: ACTION_APPLY_FILTER, + id: ACTION_APPLY_FILTER, getDisplayName: () => { return i18n.translate('embeddableApi.actions.applyFilterActionTitle', { defaultMessage: 'Apply filter to current view', diff --git a/src/plugins/embeddable/public/lib/actions/edit_panel_action.ts b/src/plugins/embeddable/public/lib/actions/edit_panel_action.ts index 767def76348c89..82f8e33b7ae2f1 100644 --- a/src/plugins/embeddable/public/lib/actions/edit_panel_action.ts +++ b/src/plugins/embeddable/public/lib/actions/edit_panel_action.ts @@ -23,15 +23,15 @@ import { GetEmbeddableFactory, ViewMode } from '../types'; import { EmbeddableFactoryNotFoundError } from '../errors'; import { IEmbeddable } from '../embeddables'; -export const EDIT_PANEL_ACTION_ID = 'editPanel'; +export const ACTION_EDIT_PANEL = 'editPanel'; interface ActionContext { embeddable: IEmbeddable; } export class EditPanelAction implements Action<ActionContext> { - public readonly type = EDIT_PANEL_ACTION_ID; - public readonly id = EDIT_PANEL_ACTION_ID; + public readonly type = ACTION_EDIT_PANEL; + public readonly id = ACTION_EDIT_PANEL; public order = 15; constructor(private readonly getEmbeddableFactory: GetEmbeddableFactory) {} diff --git a/src/plugins/embeddable/public/lib/panel/embeddable_panel.test.tsx b/src/plugins/embeddable/public/lib/panel/embeddable_panel.test.tsx index 218660462b4ef5..fdff82e63faec1 100644 --- a/src/plugins/embeddable/public/lib/panel/embeddable_panel.test.tsx +++ b/src/plugins/embeddable/public/lib/panel/embeddable_panel.test.tsx @@ -25,7 +25,7 @@ import { nextTick } from 'test_utils/enzyme_helpers'; import { findTestSubject } from '@elastic/eui/lib/test'; import { I18nProvider } from '@kbn/i18n/react'; import { CONTEXT_MENU_TRIGGER } from '../triggers'; -import { Action, UiActionsStart } from 'src/plugins/ui_actions/public'; +import { Action, UiActionsStart, ActionType } from 'src/plugins/ui_actions/public'; import { Trigger, GetEmbeddableFactory, ViewMode } from '../types'; import { EmbeddableFactory, isErrorEmbeddable } from '../embeddables'; import { EmbeddablePanel } from './embeddable_panel'; @@ -213,9 +213,9 @@ const renderInEditModeAndOpenContextMenu = async ( }; test('HelloWorldContainer in edit mode hides disabledActions', async () => { - const action = { + const action: Action = { id: 'FOO', - type: 'FOO', + type: 'FOO' as ActionType, getIconType: () => undefined, getDisplayName: () => 'foo', isCompatible: async () => true, @@ -245,9 +245,9 @@ test('HelloWorldContainer in edit mode hides disabledActions', async () => { }); test('HelloWorldContainer hides disabled badges', async () => { - const action = { + const action: Action = { id: 'BAR', - type: 'BAR', + type: 'BAR' as ActionType, getIconType: () => undefined, getDisplayName: () => 'bar', isCompatible: async () => true, diff --git a/src/plugins/embeddable/public/lib/panel/index.ts b/src/plugins/embeddable/public/lib/panel/index.ts index dee52bc5bec50d..f5ef8d9e20edb8 100644 --- a/src/plugins/embeddable/public/lib/panel/index.ts +++ b/src/plugins/embeddable/public/lib/panel/index.ts @@ -17,5 +17,5 @@ * under the License. */ -export { EmbeddablePanel } from './embeddable_panel'; -export { ADD_PANEL_ACTION_ID, AddPanelAction, openAddPanelFlyout } from './panel_header'; +export * from './embeddable_panel'; +export * from './panel_header'; diff --git a/src/plugins/embeddable/public/lib/panel/panel_header/index.ts b/src/plugins/embeddable/public/lib/panel/panel_header/index.ts index e5975b06ba1e98..d64094f2d5e242 100644 --- a/src/plugins/embeddable/public/lib/panel/panel_header/index.ts +++ b/src/plugins/embeddable/public/lib/panel/panel_header/index.ts @@ -17,9 +17,4 @@ * under the License. */ -export { - ADD_PANEL_ACTION_ID, - AddPanelAction, - RemovePanelAction, - openAddPanelFlyout, -} from './panel_actions'; +export * from './panel_actions'; diff --git a/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/add_panel/add_panel_action.ts b/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/add_panel/add_panel_action.ts index 2759d4575da198..36bb742040ccc1 100644 --- a/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/add_panel/add_panel_action.ts +++ b/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/add_panel/add_panel_action.ts @@ -23,15 +23,15 @@ import { ViewMode, GetEmbeddableFactory, GetEmbeddableFactories } from '../../.. import { openAddPanelFlyout } from './open_add_panel_flyout'; import { IContainer } from '../../../../containers'; -export const ADD_PANEL_ACTION_ID = 'ADD_PANEL_ACTION_ID'; +export const ACTION_ADD_PANEL = 'ACTION_ADD_PANEL'; interface ActionContext { embeddable: IContainer; } export class AddPanelAction implements Action<ActionContext> { - public readonly type = ADD_PANEL_ACTION_ID; - public readonly id = ADD_PANEL_ACTION_ID; + public readonly type = ACTION_ADD_PANEL; + public readonly id = ACTION_ADD_PANEL; constructor( private readonly getFactory: GetEmbeddableFactory, diff --git a/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/customize_title/customize_panel_action.ts b/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/customize_title/customize_panel_action.ts index e0d34fc1f4b042..c0e43c0538833b 100644 --- a/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/customize_title/customize_panel_action.ts +++ b/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/customize_title/customize_panel_action.ts @@ -22,7 +22,7 @@ import { Action } from 'src/plugins/ui_actions/public'; import { ViewMode } from '../../../../types'; import { IEmbeddable } from '../../../../embeddables'; -const CUSTOMIZE_PANEL_ACTION_ID = 'CUSTOMIZE_PANEL_ACTION_ID'; +export const ACTION_CUSTOMIZE_PANEL = 'ACTION_CUSTOMIZE_PANEL'; type GetUserData = (context: ActionContext) => Promise<{ title: string | undefined }>; @@ -31,8 +31,8 @@ interface ActionContext { } export class CustomizePanelTitleAction implements Action<ActionContext> { - public readonly type = CUSTOMIZE_PANEL_ACTION_ID; - public id = CUSTOMIZE_PANEL_ACTION_ID; + public readonly type = ACTION_CUSTOMIZE_PANEL; + public id = ACTION_CUSTOMIZE_PANEL; public order = 10; constructor(private readonly getDataFromUser: GetUserData) { diff --git a/src/plugins/ui_actions/public/tests/test_samples/restricted_action.ts b/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/customize_title/index.ts similarity index 69% rename from src/plugins/ui_actions/public/tests/test_samples/restricted_action.ts rename to src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/customize_title/index.ts index aa65d3af98163e..2aa4253e988d97 100644 --- a/src/plugins/ui_actions/public/tests/test_samples/restricted_action.ts +++ b/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/customize_title/index.ts @@ -17,14 +17,4 @@ * under the License. */ -import { Action, createAction } from '../../actions'; - -export const RESTRICTED_ACTION = 'RESTRICTED_ACTION'; - -export function createRestrictedAction<C>(isCompatibleIn: (context: C) => boolean): Action<C> { - return createAction<C>({ - type: RESTRICTED_ACTION, - isCompatible: async context => isCompatibleIn(context), - execute: async () => {}, - }); -} +export * from './customize_panel_action'; diff --git a/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/index.ts b/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/index.ts index 7810e0095b6320..27e9dd903848de 100644 --- a/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/index.ts +++ b/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/index.ts @@ -17,6 +17,7 @@ * under the License. */ -export { InspectPanelAction } from './inspect_panel_action'; -export { ADD_PANEL_ACTION_ID, AddPanelAction, openAddPanelFlyout } from './add_panel'; -export { RemovePanelAction } from './remove_panel_action'; +export * from './inspect_panel_action'; +export * from './add_panel'; +export * from './remove_panel_action'; +export * from './customize_title'; diff --git a/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/inspect_panel_action.ts b/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/inspect_panel_action.ts index 1433bb6f782805..d04f35715537cb 100644 --- a/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/inspect_panel_action.ts +++ b/src/plugins/embeddable/public/lib/panel/panel_header/panel_actions/inspect_panel_action.ts @@ -22,15 +22,15 @@ import { Action } from 'src/plugins/ui_actions/public'; import { Start as InspectorStartContract } from 'src/plugins/inspector/public'; import { IEmbeddable } from '../../../embeddables'; -export const INSPECT_PANEL_ACTION_ID = 'openInspector'; +export const ACTION_INSPECT_PANEL = 'openInspector'; interface ActionContext { embeddable: IEmbeddable; } export class InspectPanelAction implements Action<ActionContext> { - public readonly type = INSPECT_PANEL_ACTION_ID; - public readonly id = INSPECT_PANEL_ACTION_ID; + public readonly type = ACTION_INSPECT_PANEL; + public readonly id = ACTION_INSPECT_PANEL; public order = 10; constructor(private readonly inspector: InspectorStartContract) {} diff --git a/src/plugins/embeddable/public/lib/test_samples/actions/edit_mode_action.ts b/src/plugins/embeddable/public/lib/test_samples/actions/edit_mode_action.ts index b5ceae0c15a24d..bb34b474efda0f 100644 --- a/src/plugins/embeddable/public/lib/test_samples/actions/edit_mode_action.ts +++ b/src/plugins/embeddable/public/lib/test_samples/actions/edit_mode_action.ts @@ -17,17 +17,20 @@ * under the License. */ -import { createAction } from '../../ui_actions'; +import { createAction, ActionType } from '../../ui_actions'; import { ViewMode } from '../../types'; -import { EmbeddableContext } from '../../triggers'; +import { IEmbeddable } from '../..'; -export const EDIT_MODE_ACTION = 'EDIT_MODE_ACTION'; +// Casting to ActionType is a hack - in a real situation use +// declare module and add this id to ActionContextMapping. +export const EDIT_MODE_ACTION = 'EDIT_MODE_ACTION' as ActionType; export function createEditModeAction() { - return createAction<EmbeddableContext>({ + return createAction<typeof EDIT_MODE_ACTION>({ type: EDIT_MODE_ACTION, getDisplayName: () => 'I only show up in edit mode', - isCompatible: async context => context.embeddable.getInput().viewMode === ViewMode.EDIT, + isCompatible: async (context: { embeddable: IEmbeddable }) => + context.embeddable.getInput().viewMode === ViewMode.EDIT, execute: async () => {}, }); } diff --git a/src/plugins/embeddable/public/lib/test_samples/actions/say_hello_action.tsx b/src/plugins/embeddable/public/lib/test_samples/actions/say_hello_action.tsx index 55615875528a4a..0612b838a6ce70 100644 --- a/src/plugins/embeddable/public/lib/test_samples/actions/say_hello_action.tsx +++ b/src/plugins/embeddable/public/lib/test_samples/actions/say_hello_action.tsx @@ -17,10 +17,12 @@ * under the License. */ -import { Action, IncompatibleActionError } from '../../ui_actions'; +import { ActionByType, IncompatibleActionError, ActionType } from '../../ui_actions'; import { EmbeddableInput, Embeddable, EmbeddableOutput, IEmbeddable } from '../../embeddables'; -export const SAY_HELLO_ACTION = 'SAY_HELLO_ACTION'; +// Casting to ActionType is a hack - in a real situation use +// declare module and add this id to ActionContextMapping. +export const SAY_HELLO_ACTION = 'SAY_HELLO_ACTION' as ActionType; export interface FullNameEmbeddableOutput extends EmbeddableOutput { fullName: string; @@ -35,12 +37,12 @@ export function hasFullNameOutput( ); } -interface ActionContext { +export interface SayHelloActionContext { embeddable: Embeddable<EmbeddableInput, FullNameEmbeddableOutput>; message?: string; } -export class SayHelloAction implements Action<ActionContext> { +export class SayHelloAction implements ActionByType<typeof SAY_HELLO_ACTION> { public readonly type = SAY_HELLO_ACTION; public readonly id = SAY_HELLO_ACTION; @@ -62,7 +64,7 @@ export class SayHelloAction implements Action<ActionContext> { // Can use typescript generics to get compiler time warnings for immediate feedback if // the context is not compatible. - async isCompatible(context: ActionContext) { + async isCompatible(context: SayHelloActionContext) { // Option 1: only compatible with Greeting Embeddables. // return context.embeddable.type === CONTACT_CARD_EMBEDDABLE; @@ -70,7 +72,7 @@ export class SayHelloAction implements Action<ActionContext> { return hasFullNameOutput(context.embeddable); } - async execute(context: ActionContext) { + async execute(context: SayHelloActionContext) { if (!(await this.isCompatible(context))) { throw new IncompatibleActionError(); } diff --git a/src/plugins/embeddable/public/lib/test_samples/actions/send_message_action.tsx b/src/plugins/embeddable/public/lib/test_samples/actions/send_message_action.tsx index 502269d7ac193d..222fe1f6ed8703 100644 --- a/src/plugins/embeddable/public/lib/test_samples/actions/send_message_action.tsx +++ b/src/plugins/embeddable/public/lib/test_samples/actions/send_message_action.tsx @@ -18,14 +18,16 @@ */ import React from 'react'; import { EuiFlyoutBody } from '@elastic/eui'; -import { createAction, IncompatibleActionError } from '../../ui_actions'; +import { createAction, IncompatibleActionError, ActionType } from '../../ui_actions'; import { CoreStart } from '../../../../../../core/public'; import { toMountPoint } from '../../../../../kibana_react/public'; import { Embeddable, EmbeddableInput } from '../../embeddables'; import { GetMessageModal } from './get_message_modal'; import { FullNameEmbeddableOutput, hasFullNameOutput } from './say_hello_action'; -export const SEND_MESSAGE_ACTION = 'SEND_MESSAGE_ACTION'; +// Casting to ActionType is a hack - in a real situation use +// declare module and add this id to ActionContextMapping. +export const ACTION_SEND_MESSAGE = 'ACTION_SEND_MESSAGE' as ActionType; interface ActionContext { embeddable: Embeddable<EmbeddableInput, FullNameEmbeddableOutput>; @@ -42,11 +44,11 @@ export function createSendMessageAction(overlays: CoreStart['overlays']) { overlays.openFlyout(toMountPoint(<EuiFlyoutBody>{content}</EuiFlyoutBody>)); }; - return createAction<ActionContext>({ - type: SEND_MESSAGE_ACTION, + return createAction<typeof ACTION_SEND_MESSAGE>({ + type: ACTION_SEND_MESSAGE, getDisplayName: () => 'Send message', isCompatible, - execute: async context => { + execute: async (context: ActionContext) => { if (!(await isCompatible(context))) { throw new IncompatibleActionError(); } diff --git a/src/plugins/ui_actions/public/actions/action.test.ts b/src/plugins/ui_actions/public/actions/action.test.ts index e1a789ae1cc45c..f9d696d3ddb5f4 100644 --- a/src/plugins/ui_actions/public/actions/action.test.ts +++ b/src/plugins/ui_actions/public/actions/action.test.ts @@ -17,17 +17,23 @@ * under the License. */ -import { createSayHelloAction } from '../tests/test_samples/say_hello_action'; +import { createAction } from '../../../ui_actions/public'; +import { ActionType } from '../types'; -test('SayHelloAction is not compatible with not matching context', async () => { - const sayHelloAction = createSayHelloAction((() => {}) as any); +const sayHelloAction = createAction({ + // Casting to ActionType is a hack - in a real situation use + // declare module and add this id to ActionContextMapping. + type: 'test' as ActionType, + isCompatible: ({ amICompatible }: { amICompatible: boolean }) => Promise.resolve(amICompatible), + execute: () => Promise.resolve(), +}); - const isCompatible = await sayHelloAction.isCompatible({} as any); +test('action is not compatible based on context', async () => { + const isCompatible = await sayHelloAction.isCompatible({ amICompatible: false }); expect(isCompatible).toBe(false); }); -test('HelloWorldAction inherits isCompatible from base action', async () => { - const helloWorldAction = createSayHelloAction({} as any); - const isCompatible = await helloWorldAction.isCompatible({ name: 'Sue' }); +test('action is compatible based on context', async () => { + const isCompatible = await sayHelloAction.isCompatible({ amICompatible: true }); expect(isCompatible).toBe(true); }); diff --git a/src/plugins/ui_actions/public/actions/action.ts b/src/plugins/ui_actions/public/actions/action.ts index 854e2c8c1cb093..2b2fc004a84c62 100644 --- a/src/plugins/ui_actions/public/actions/action.ts +++ b/src/plugins/ui_actions/public/actions/action.ts @@ -18,17 +18,26 @@ */ import { UiComponent } from 'src/plugins/kibana_utils/common'; +import { ActionType, ActionContextMapping } from '../types'; -export interface Action<Context = undefined> { +export type ActionByType<T extends ActionType> = Action<ActionContextMapping[T], T>; + +export interface Action<Context = {}, T = ActionType> { /** * Determined the order when there is more than one action matched to a trigger. * Higher numbers are displayed first. */ order?: number; + /** + * A unique identifier for this action instance. + */ id: string; - readonly type: string; + /** + * The action type is what determines the context shape. + */ + readonly type: T; /** * Optional EUI icon type that can be displayed along with the title. diff --git a/src/plugins/ui_actions/public/actions/action_definition.ts b/src/plugins/ui_actions/public/actions/action_definition.ts new file mode 100644 index 00000000000000..c590cf8f34ee07 --- /dev/null +++ b/src/plugins/ui_actions/public/actions/action_definition.ts @@ -0,0 +1,72 @@ +/* + * 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 { UiComponent } from 'src/plugins/kibana_utils/common'; +import { ActionType, ActionContextMapping } from '../types'; + +export interface ActionDefinition<T extends ActionType> { + /** + * Determined the order when there is more than one action matched to a trigger. + * Higher numbers are displayed first. + */ + order?: number; + + /** + * A unique identifier for this action instance. + */ + id?: string; + + /** + * The action type is what determines the context shape. + */ + readonly type: T; + + /** + * Optional EUI icon type that can be displayed along with the title. + */ + getIconType?(context: ActionContextMapping[T]): string; + + /** + * Returns a title to be displayed to the user. + * @param context + */ + getDisplayName?(context: ActionContextMapping[T]): string; + + /** + * `UiComponent` to render when displaying this action as a context menu item. + * If not provided, `getDisplayName` will be used instead. + */ + MenuItem?: UiComponent<{ context: ActionContextMapping[T] }>; + + /** + * Returns a promise that resolves to true if this action is compatible given the context, + * otherwise resolves to false. + */ + isCompatible?(context: ActionContextMapping[T]): Promise<boolean>; + + /** + * If this returns something truthy, this is used in addition to the `execute` method when clicked. + */ + getHref?(context: ActionContextMapping[T]): string | undefined; + + /** + * Executes the action. + */ + execute(context: ActionContextMapping[T]): Promise<void>; +} diff --git a/src/plugins/ui_actions/public/actions/create_action.ts b/src/plugins/ui_actions/public/actions/create_action.ts index 4077cf10810211..90a9415c0b497c 100644 --- a/src/plugins/ui_actions/public/actions/create_action.ts +++ b/src/plugins/ui_actions/public/actions/create_action.ts @@ -17,11 +17,11 @@ * under the License. */ -import { Action } from './action'; +import { ActionByType } from './action'; +import { ActionType } from '../types'; +import { ActionDefinition } from './action_definition'; -export function createAction<Context = undefined>( - action: { type: string; execute: Action<Context>['execute'] } & Partial<Action<Context>> -): Action<Context> { +export function createAction<T extends ActionType>(action: ActionDefinition<T>): ActionByType<T> { return { getIconType: () => undefined, order: 0, diff --git a/src/plugins/ui_actions/public/index.ts b/src/plugins/ui_actions/public/index.ts index eb69aefdbb50e8..79b8e1474f6c20 100644 --- a/src/plugins/ui_actions/public/index.ts +++ b/src/plugins/ui_actions/public/index.ts @@ -29,4 +29,5 @@ export { UiActionsServiceParams, UiActionsService } from './service'; export { Action, createAction, IncompatibleActionError } from './actions'; export { buildContextMenuForActions } from './context_menu'; export { Trigger, TriggerContext } from './triggers'; -export { TriggerContextMapping, TriggerId } from './types'; +export { TriggerContextMapping, TriggerId, ActionContextMapping, ActionType } from './types'; +export { ActionByType } from './actions'; diff --git a/src/plugins/ui_actions/public/mocks.ts b/src/plugins/ui_actions/public/mocks.ts index 948450495384a6..c1be6b26265254 100644 --- a/src/plugins/ui_actions/public/mocks.ts +++ b/src/plugins/ui_actions/public/mocks.ts @@ -41,6 +41,7 @@ const createStartContract = (): Start => { attachAction: jest.fn(), registerAction: jest.fn(), registerTrigger: jest.fn(), + getAction: jest.fn(), detachAction: jest.fn(), executeTriggerActions: jest.fn(), getTrigger: jest.fn(), diff --git a/src/plugins/ui_actions/public/service/ui_actions_service.test.ts b/src/plugins/ui_actions/public/service/ui_actions_service.test.ts index c52b9753586104..bdf71a25e6dbc3 100644 --- a/src/plugins/ui_actions/public/service/ui_actions_service.test.ts +++ b/src/plugins/ui_actions/public/service/ui_actions_service.test.ts @@ -18,14 +18,13 @@ */ import { UiActionsService } from './ui_actions_service'; -import { Action } from '../actions'; -import { createRestrictedAction, createHelloWorldAction } from '../tests/test_samples'; -import { ActionRegistry, TriggerRegistry, TriggerId } from '../types'; +import { Action, createAction } from '../actions'; +import { createHelloWorldAction } from '../tests/test_samples'; +import { ActionRegistry, TriggerRegistry, TriggerId, ActionType } from '../types'; import { Trigger } from '../triggers'; -// I tried redeclaring the module in here to extend the `TriggerContextMapping` but -// that seems to overwrite all other plugins extending it, I suspect because it's inside -// the main plugin. +// Casting to ActionType or TriggerId is a hack - in a real situation use +// declare module and add this id to the appropriate context mapping. const FOO_TRIGGER: TriggerId = 'FOO_TRIGGER' as TriggerId; const BAR_TRIGGER: TriggerId = 'BAR_TRIGGER' as TriggerId; const MY_TRIGGER: TriggerId = 'MY_TRIGGER' as TriggerId; @@ -33,7 +32,7 @@ const MY_TRIGGER: TriggerId = 'MY_TRIGGER' as TriggerId; const testAction1: Action = { id: 'action1', order: 1, - type: 'type1', + type: 'type1' as ActionType, execute: async () => {}, getDisplayName: () => 'test1', getIconType: () => '', @@ -43,7 +42,7 @@ const testAction1: Action = { const testAction2: Action = { id: 'action2', order: 2, - type: 'type2', + type: 'type2' as ActionType, execute: async () => {}, getDisplayName: () => 'test2', getIconType: () => '', @@ -100,7 +99,7 @@ describe('UiActionsService', () => { getDisplayName: () => 'test', getIconType: () => '', isCompatible: async () => true, - type: 'test', + type: 'test' as ActionType, }); }); }); @@ -109,7 +108,7 @@ describe('UiActionsService', () => { const action1: Action = { id: 'action1', order: 1, - type: 'type1', + type: 'type1' as ActionType, execute: async () => {}, getDisplayName: () => 'test', getIconType: () => '', @@ -118,7 +117,7 @@ describe('UiActionsService', () => { const action2: Action = { id: 'action2', order: 2, - type: 'type2', + type: 'type2' as ActionType, execute: async () => {}, getDisplayName: () => 'test', getIconType: () => '', @@ -140,13 +139,13 @@ describe('UiActionsService', () => { expect(list0).toHaveLength(0); - service.attachAction(FOO_TRIGGER, 'action1'); + service.attachAction(FOO_TRIGGER, action1); const list1 = service.getTriggerActions(FOO_TRIGGER); expect(list1).toHaveLength(1); expect(list1).toEqual([action1]); - service.attachAction(FOO_TRIGGER, 'action2'); + service.attachAction(FOO_TRIGGER, action2); const list2 = service.getTriggerActions(FOO_TRIGGER); expect(list2).toHaveLength(2); @@ -179,7 +178,7 @@ describe('UiActionsService', () => { title: 'My trigger', }; service.registerTrigger(testTrigger); - service.attachAction(MY_TRIGGER, helloWorldAction.id); + service.attachAction(MY_TRIGGER, helloWorldAction); const compatibleActions = await service.getTriggerCompatibleActions(MY_TRIGGER, { hi: 'there', @@ -191,11 +190,13 @@ describe('UiActionsService', () => { test('filters out actions not applicable based on the context', async () => { const service = new UiActionsService(); - const restrictedAction = createRestrictedAction<{ accept: boolean }>(context => { - return context.accept; + const action = createAction({ + type: 'test' as ActionType, + isCompatible: ({ accept }: { accept: boolean }) => Promise.resolve(accept), + execute: () => Promise.resolve(), }); - service.registerAction(restrictedAction); + service.registerAction(action); const testTrigger: Trigger = { id: MY_TRIGGER, @@ -203,7 +204,7 @@ describe('UiActionsService', () => { }; service.registerTrigger(testTrigger); - service.attachAction(testTrigger.id, restrictedAction.id); + service.attachAction(testTrigger.id, action); const compatibleActions1 = await service.getTriggerCompatibleActions(testTrigger.id, { accept: true, @@ -287,7 +288,7 @@ describe('UiActionsService', () => { id: FOO_TRIGGER, }); service1.registerAction(testAction1); - service1.attachAction(FOO_TRIGGER, testAction1.id); + service1.attachAction(FOO_TRIGGER, testAction1); const service2 = service1.fork(); @@ -308,14 +309,14 @@ describe('UiActionsService', () => { }); service1.registerAction(testAction1); service1.registerAction(testAction2); - service1.attachAction(FOO_TRIGGER, testAction1.id); + service1.attachAction(FOO_TRIGGER, testAction1); const service2 = service1.fork(); expect(service1.getTriggerActions(FOO_TRIGGER)).toHaveLength(1); expect(service2.getTriggerActions(FOO_TRIGGER)).toHaveLength(1); - service2.attachAction(FOO_TRIGGER, testAction2.id); + service2.attachAction(FOO_TRIGGER, testAction2); expect(service1.getTriggerActions(FOO_TRIGGER)).toHaveLength(1); expect(service2.getTriggerActions(FOO_TRIGGER)).toHaveLength(2); @@ -329,14 +330,14 @@ describe('UiActionsService', () => { }); service1.registerAction(testAction1); service1.registerAction(testAction2); - service1.attachAction(FOO_TRIGGER, testAction1.id); + service1.attachAction(FOO_TRIGGER, testAction1); const service2 = service1.fork(); expect(service1.getTriggerActions(FOO_TRIGGER)).toHaveLength(1); expect(service2.getTriggerActions(FOO_TRIGGER)).toHaveLength(1); - service1.attachAction(FOO_TRIGGER, testAction2.id); + service1.attachAction(FOO_TRIGGER, testAction2); expect(service1.getTriggerActions(FOO_TRIGGER)).toHaveLength(2); expect(service2.getTriggerActions(FOO_TRIGGER)).toHaveLength(1); @@ -344,7 +345,7 @@ describe('UiActionsService', () => { }); describe('registries', () => { - const HELLO_WORLD_ACTION_ID = 'HELLO_WORLD_ACTION_ID'; + const ACTION_HELLO_WORLD = 'ACTION_HELLO_WORLD'; test('can register trigger', () => { const triggers: TriggerRegistry = new Map(); @@ -369,12 +370,12 @@ describe('UiActionsService', () => { const service = new UiActionsService({ actions }); service.registerAction({ - id: HELLO_WORLD_ACTION_ID, + id: ACTION_HELLO_WORLD, order: 13, } as any); - expect(actions.get(HELLO_WORLD_ACTION_ID)).toMatchObject({ - id: HELLO_WORLD_ACTION_ID, + expect(actions.get(ACTION_HELLO_WORLD)).toMatchObject({ + id: ACTION_HELLO_WORLD, order: 13, }); }); @@ -386,18 +387,17 @@ describe('UiActionsService', () => { id: MY_TRIGGER, }; const action = { - id: HELLO_WORLD_ACTION_ID, + id: ACTION_HELLO_WORLD, order: 25, } as any; service.registerTrigger(trigger); - service.registerAction(action); - service.attachAction(MY_TRIGGER, HELLO_WORLD_ACTION_ID); + service.attachAction(MY_TRIGGER, action); const actions = service.getTriggerActions(trigger.id); expect(actions.length).toBe(1); - expect(actions[0].id).toBe(HELLO_WORLD_ACTION_ID); + expect(actions[0].id).toBe(ACTION_HELLO_WORLD); }); test('can detach an action to a trigger', () => { @@ -407,14 +407,14 @@ describe('UiActionsService', () => { id: MY_TRIGGER, }; const action = { - id: HELLO_WORLD_ACTION_ID, + id: ACTION_HELLO_WORLD, order: 25, } as any; service.registerTrigger(trigger); service.registerAction(action); - service.attachAction(trigger.id, HELLO_WORLD_ACTION_ID); - service.detachAction(trigger.id, HELLO_WORLD_ACTION_ID); + service.attachAction(trigger.id, action); + service.detachAction(trigger.id, action.id); const actions2 = service.getTriggerActions(trigger.id); expect(actions2).toEqual([]); @@ -424,15 +424,15 @@ describe('UiActionsService', () => { const service = new UiActionsService(); const action = { - id: HELLO_WORLD_ACTION_ID, + id: ACTION_HELLO_WORLD, order: 25, } as any; service.registerAction(action); expect(() => - service.detachAction('i do not exist' as TriggerId, HELLO_WORLD_ACTION_ID) + service.detachAction('i do not exist' as TriggerId, ACTION_HELLO_WORLD) ).toThrowError( - 'No trigger [triggerId = i do not exist] exists, for detaching action [actionId = HELLO_WORLD_ACTION_ID].' + 'No trigger [triggerId = i do not exist] exists, for detaching action [actionId = ACTION_HELLO_WORLD].' ); }); @@ -440,15 +440,13 @@ describe('UiActionsService', () => { const service = new UiActionsService(); const action = { - id: HELLO_WORLD_ACTION_ID, + id: ACTION_HELLO_WORLD, order: 25, } as any; service.registerAction(action); - expect(() => - service.attachAction('i do not exist' as TriggerId, HELLO_WORLD_ACTION_ID) - ).toThrowError( - 'No trigger [triggerId = i do not exist] exists, for attaching action [actionId = HELLO_WORLD_ACTION_ID].' + expect(() => service.attachAction('i do not exist' as TriggerId, action)).toThrowError( + 'No trigger [triggerId = i do not exist] exists, for attaching action [actionId = ACTION_HELLO_WORLD].' ); }); @@ -456,13 +454,13 @@ describe('UiActionsService', () => { const service = new UiActionsService(); const action = { - id: HELLO_WORLD_ACTION_ID, + id: ACTION_HELLO_WORLD, order: 25, } as any; service.registerAction(action); expect(() => service.registerAction(action)).toThrowError( - 'Action [action.id = HELLO_WORLD_ACTION_ID] already registered.' + 'Action [action.id = ACTION_HELLO_WORLD] already registered.' ); }); diff --git a/src/plugins/ui_actions/public/service/ui_actions_service.ts b/src/plugins/ui_actions/public/service/ui_actions_service.ts index 66f038f05a4ac6..f7718e63773f5e 100644 --- a/src/plugins/ui_actions/public/service/ui_actions_service.ts +++ b/src/plugins/ui_actions/public/service/ui_actions_service.ts @@ -23,8 +23,9 @@ import { TriggerToActionsRegistry, TriggerId, TriggerContextMapping, + ActionType, } from '../types'; -import { Action } from '../actions'; +import { Action, ActionByType } from '../actions'; import { Trigger, TriggerContext } from '../triggers/trigger'; import { TriggerInternal } from '../triggers/trigger_internal'; import { TriggerContract } from '../triggers/trigger_contract'; @@ -75,7 +76,7 @@ export class UiActionsService { return trigger.contract; }; - public readonly registerAction = <Context>(action: Action<Context>) => { + public readonly registerAction = <T extends ActionType>(action: ActionByType<T>) => { if (this.actions.has(action.id)) { throw new Error(`Action [action.id = ${action.id}] already registered.`); } @@ -83,22 +84,41 @@ export class UiActionsService { this.actions.set(action.id, action); }; - // TODO: make this - // <T extends TriggerId>(triggerId: T, action: Action<TriggerContextMapping[T]>): \ - // to get type checks here! - public readonly attachAction = <T extends TriggerId>(triggerId: T, actionId: string): void => { + public readonly getAction = <T extends ActionType>(id: string): ActionByType<T> => { + if (!this.actions.has(id)) { + throw new Error(`Action [action.id = ${id}] not registered.`); + } + + return this.actions.get(id) as ActionByType<T>; + }; + + public readonly attachAction = <TType extends TriggerId, AType extends ActionType>( + triggerId: TType, + // The action can accept partial or no context, but if it needs context not provided + // by this type of trigger, typescript will complain. yay! + action: ActionByType<AType> & Action<TriggerContextMapping[TType]> + ): void => { + if (!this.actions.has(action.id)) { + this.registerAction(action); + } else { + const registeredAction = this.actions.get(action.id); + if (registeredAction !== action) { + throw new Error(`A different action instance with this id is already registered.`); + } + } + const trigger = this.triggers.get(triggerId); if (!trigger) { throw new Error( - `No trigger [triggerId = ${triggerId}] exists, for attaching action [actionId = ${actionId}].` + `No trigger [triggerId = ${triggerId}] exists, for attaching action [actionId = ${action.id}].` ); } const actionIds = this.triggerToActions.get(triggerId); - if (!actionIds!.find(id => id === actionId)) { - this.triggerToActions.set(triggerId, [...actionIds!, actionId]); + if (!actionIds!.find(id => id === action.id)) { + this.triggerToActions.set(triggerId, [...actionIds!, action.id]); } }; diff --git a/src/plugins/ui_actions/public/tests/execute_trigger_actions.test.ts b/src/plugins/ui_actions/public/tests/execute_trigger_actions.test.ts index 450bfbfc6c9593..5b427f918c1732 100644 --- a/src/plugins/ui_actions/public/tests/execute_trigger_actions.test.ts +++ b/src/plugins/ui_actions/public/tests/execute_trigger_actions.test.ts @@ -21,7 +21,7 @@ import { Action, createAction } from '../actions'; import { openContextMenu } from '../context_menu'; import { uiActionsPluginMock } from '../mocks'; import { Trigger } from '../triggers'; -import { TriggerId } from '../types'; +import { TriggerId, ActionType } from '../types'; jest.mock('../context_menu'); @@ -30,11 +30,18 @@ const openContextMenuSpy = (openContextMenu as any) as jest.SpyInstance; const CONTACT_USER_TRIGGER = 'CONTACT_USER_TRIGGER'; -function createTestAction<A>(id: string, checkCompatibility: (context: A) => boolean): Action<A> { - return createAction<A>({ - type: 'testAction', - id, - isCompatible: context => Promise.resolve(checkCompatibility(context)), +// Casting to ActionType is a hack - in a real situation use +// declare module and add this id to ActionContextMapping. +const TEST_ACTION_TYPE = 'TEST_ACTION_TYPE' as ActionType; + +function createTestAction<C extends object>( + type: string, + checkCompatibility: (context: C) => boolean +): Action<object> { + return createAction<typeof TEST_ACTION_TYPE>({ + type: type as ActionType, + id: type, + isCompatible: (context: C) => Promise.resolve(checkCompatibility(context)), execute: context => executeFn(context), }); } @@ -46,7 +53,7 @@ const reset = () => { uiActions.setup.registerTrigger({ id: CONTACT_USER_TRIGGER, }); - uiActions.setup.attachAction(CONTACT_USER_TRIGGER, 'SEND_MESSAGE_ACTION'); + // uiActions.setup.attachAction(CONTACT_USER_TRIGGER, 'ACTION_SEND_MESSAGE'); executeFn.mockReset(); openContextMenuSpy.mockReset(); @@ -62,8 +69,7 @@ test('executes a single action mapped to a trigger', async () => { const action = createTestAction('test1', () => true); setup.registerTrigger(trigger); - setup.registerAction(action); - setup.attachAction(trigger.id, 'test1'); + setup.attachAction(trigger.id, action); const context = {}; const start = doStart(); @@ -81,7 +87,6 @@ test('throws an error if there are no compatible actions to execute', async () = }; setup.registerTrigger(trigger); - setup.attachAction(trigger.id, 'testaction'); const context = {}; const start = doStart(); @@ -98,11 +103,13 @@ test('does not execute an incompatible action', async () => { id: 'MY-TRIGGER' as TriggerId, title: 'My trigger', }; - const action = createTestAction<{ name: string }>('test1', ({ name }) => name === 'executeme'); + const action = createTestAction<{ name: string }>( + 'test1', + ({ name }: { name: string }) => name === 'executeme' + ); setup.registerTrigger(trigger); - setup.registerAction(action); - setup.attachAction(trigger.id, 'test1'); + setup.attachAction(trigger.id, action); const start = doStart(); const context = { @@ -123,10 +130,8 @@ test('shows a context menu when more than one action is mapped to a trigger', as const action2 = createTestAction('test2', () => true); setup.registerTrigger(trigger); - setup.registerAction(action1); - setup.registerAction(action2); - setup.attachAction(trigger.id, 'test1'); - setup.attachAction(trigger.id, 'test2'); + setup.attachAction(trigger.id, action1); + setup.attachAction(trigger.id, action2); expect(openContextMenu).toHaveBeenCalledTimes(0); @@ -150,8 +155,7 @@ test('passes whole action context to isCompatible()', async () => { }); setup.registerTrigger(trigger); - setup.registerAction(action); - setup.attachAction(trigger.id, 'test'); + setup.attachAction(trigger.id, action); const start = doStart(); diff --git a/src/plugins/ui_actions/public/tests/get_trigger_actions.test.ts b/src/plugins/ui_actions/public/tests/get_trigger_actions.test.ts index ae335de4b3deba..f5a6a96fb41a40 100644 --- a/src/plugins/ui_actions/public/tests/get_trigger_actions.test.ts +++ b/src/plugins/ui_actions/public/tests/get_trigger_actions.test.ts @@ -19,17 +19,17 @@ import { Action } from '../actions'; import { uiActionsPluginMock } from '../mocks'; -import { TriggerId } from '../types'; +import { TriggerId, ActionType } from '../types'; const action1: Action = { id: 'action1', order: 1, - type: 'type1', + type: 'type1' as ActionType, } as any; const action2: Action = { id: 'action2', order: 2, - type: 'type2', + type: 'type2' as ActionType, } as any; test('returns actions set on trigger', () => { @@ -47,13 +47,13 @@ test('returns actions set on trigger', () => { expect(list0).toHaveLength(0); - setup.attachAction('trigger' as TriggerId, 'action1'); + setup.attachAction('trigger' as TriggerId, action1); const list1 = start.getTriggerActions('trigger' as TriggerId); expect(list1).toHaveLength(1); expect(list1).toEqual([action1]); - setup.attachAction('trigger' as TriggerId, 'action2'); + setup.attachAction('trigger' as TriggerId, action2); const list2 = start.getTriggerActions('trigger' as TriggerId); expect(list2).toHaveLength(2); diff --git a/src/plugins/ui_actions/public/tests/get_trigger_compatible_actions.test.ts b/src/plugins/ui_actions/public/tests/get_trigger_compatible_actions.test.ts index dfb55e42b9443e..c5e68e5d5ca5a6 100644 --- a/src/plugins/ui_actions/public/tests/get_trigger_compatible_actions.test.ts +++ b/src/plugins/ui_actions/public/tests/get_trigger_compatible_actions.test.ts @@ -17,25 +17,27 @@ * under the License. */ -import { createSayHelloAction } from '../tests/test_samples/say_hello_action'; import { uiActionsPluginMock } from '../mocks'; -import { createRestrictedAction, createHelloWorldAction } from '../tests/test_samples'; -import { Action } from '../actions'; +import { createHelloWorldAction } from '../tests/test_samples'; +import { Action, createAction } from '../actions'; import { Trigger } from '../triggers'; -import { TriggerId } from '../types'; +import { TriggerId, ActionType } from '../types'; -let action: Action<{ name: string }>; +let action: Action<{ name: string }, ActionType>; let uiActions: ReturnType<typeof uiActionsPluginMock.createPlugin>; beforeEach(() => { uiActions = uiActionsPluginMock.createPlugin(); - action = createSayHelloAction({} as any); + action = createAction({ + type: 'test' as ActionType, + execute: () => Promise.resolve(), + }); uiActions.setup.registerAction(action); uiActions.setup.registerTrigger({ id: 'trigger' as TriggerId, title: 'trigger', }); - uiActions.setup.attachAction('trigger' as TriggerId, action.id); + uiActions.setup.attachAction('trigger' as TriggerId, action); }); test('can register action', async () => { @@ -56,7 +58,7 @@ test('getTriggerCompatibleActions returns attached actions', async () => { title: 'My trigger', }; setup.registerTrigger(testTrigger); - setup.attachAction('MY-TRIGGER' as TriggerId, helloWorldAction.id); + setup.attachAction('MY-TRIGGER' as TriggerId, helloWorldAction); const start = doStart(); const actions = await start.getTriggerCompatibleActions('MY-TRIGGER' as TriggerId, {}); @@ -67,19 +69,22 @@ test('getTriggerCompatibleActions returns attached actions', async () => { test('filters out actions not applicable based on the context', async () => { const { setup, doStart } = uiActions; - const restrictedAction = createRestrictedAction<{ accept: boolean }>(context => { - return context.accept; + const action1 = createAction({ + type: 'test1' as ActionType, + isCompatible: async (context: { accept: boolean }) => { + return Promise.resolve(context.accept); + }, + execute: () => Promise.resolve(), }); - setup.registerAction(restrictedAction); - const testTrigger: Trigger = { - id: 'MY-TRIGGER' as TriggerId, + id: 'MY-TRIGGER2' as TriggerId, title: 'My trigger', }; setup.registerTrigger(testTrigger); - setup.attachAction(testTrigger.id, restrictedAction.id); + setup.registerAction(action1); + setup.attachAction(testTrigger.id, action1); const start = doStart(); let actions = await start.getTriggerCompatibleActions(testTrigger.id, { accept: true }); diff --git a/src/plugins/ui_actions/public/tests/test_samples/hello_world_action.tsx b/src/plugins/ui_actions/public/tests/test_samples/hello_world_action.tsx index 196f3e2d5cdc1c..8fff231a867bf9 100644 --- a/src/plugins/ui_actions/public/tests/test_samples/hello_world_action.tsx +++ b/src/plugins/ui_actions/public/tests/test_samples/hello_world_action.tsx @@ -20,8 +20,9 @@ import React from 'react'; import { EuiFlyout, EuiFlexGroup, EuiFlexItem, EuiBadge } from '@elastic/eui'; import { CoreStart } from 'src/core/public'; -import { createAction, Action } from '../../actions'; +import { createAction, ActionByType } from '../../actions'; import { toMountPoint, reactToUiComponent } from '../../../../kibana_react/public'; +import { ActionType } from '../../types'; const ReactMenuItem: React.FC = () => { return ( @@ -36,11 +37,15 @@ const ReactMenuItem: React.FC = () => { const UiMenuItem = reactToUiComponent(ReactMenuItem); -export const HELLO_WORLD_ACTION_ID = 'HELLO_WORLD_ACTION_ID'; +// Casting to ActionType is a hack - in a real situation use +// declare module and add this id to ActionContextMapping. +export const ACTION_HELLO_WORLD = 'ACTION_HELLO_WORLD' as ActionType; -export function createHelloWorldAction(overlays: CoreStart['overlays']): Action { - return createAction({ - type: HELLO_WORLD_ACTION_ID, +export function createHelloWorldAction( + overlays: CoreStart['overlays'] +): ActionByType<typeof ACTION_HELLO_WORLD> { + return createAction<typeof ACTION_HELLO_WORLD>({ + type: ACTION_HELLO_WORLD, getIconType: () => 'lock', MenuItem: UiMenuItem, execute: async () => { diff --git a/src/plugins/ui_actions/public/tests/test_samples/index.ts b/src/plugins/ui_actions/public/tests/test_samples/index.ts index 40301d629aa413..7d63b1b6d5669f 100644 --- a/src/plugins/ui_actions/public/tests/test_samples/index.ts +++ b/src/plugins/ui_actions/public/tests/test_samples/index.ts @@ -16,6 +16,4 @@ * specific language governing permissions and limitations * under the License. */ -export { createRestrictedAction } from './restricted_action'; -export { createSayHelloAction } from './say_hello_action'; export { createHelloWorldAction } from './hello_world_action'; diff --git a/src/plugins/ui_actions/public/tests/test_samples/say_hello_action.tsx b/src/plugins/ui_actions/public/tests/test_samples/say_hello_action.tsx deleted file mode 100644 index f1265fed54b381..00000000000000 --- a/src/plugins/ui_actions/public/tests/test_samples/say_hello_action.tsx +++ /dev/null @@ -1,46 +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 React from 'react'; -import { EuiFlyout } from '@elastic/eui'; -import { CoreStart } from 'src/core/public'; -import { Action, createAction } from '../../actions'; -import { toMountPoint } from '../../../../kibana_react/public'; - -export const SAY_HELLO_ACTION = 'SAY_HELLO_ACTION'; - -export function createSayHelloAction(overlays: CoreStart['overlays']): Action<{ name: string }> { - return createAction<{ name: string }>({ - type: SAY_HELLO_ACTION, - getDisplayName: ({ name }) => `Hello, ${name}`, - isCompatible: async ({ name }) => name !== undefined, - execute: async context => { - const flyoutSession = overlays.openFlyout( - toMountPoint( - <EuiFlyout ownFocus onClose={() => flyoutSession && flyoutSession.close()}> - this.getDisplayName(context) - </EuiFlyout> - ), - { - 'data-test-subj': 'sayHelloAction', - } - ); - }, - }); -} diff --git a/src/plugins/ui_actions/public/types.ts b/src/plugins/ui_actions/public/types.ts index d78d3c8951222e..d443ce0e592cb9 100644 --- a/src/plugins/ui_actions/public/types.ts +++ b/src/plugins/ui_actions/public/types.ts @@ -17,20 +17,27 @@ * under the License. */ -import { Action } from './actions/action'; +import { ActionByType } from './actions/action'; import { TriggerInternal } from './triggers/trigger_internal'; export type TriggerRegistry = Map<TriggerId, TriggerInternal<any>>; -export type ActionRegistry = Map<string, Action<any>>; +export type ActionRegistry = Map<string, ActionByType<any>>; export type TriggerToActionsRegistry = Map<TriggerId, string[]>; const DEFAULT_TRIGGER = ''; export type TriggerId = keyof TriggerContextMapping; +export type BaseContext = object; export type TriggerContext = BaseContext; -export type BaseContext = object | undefined | string | number; export interface TriggerContextMapping { [DEFAULT_TRIGGER]: TriggerContext; } + +const DEFAULT_ACTION = ''; +export type ActionType = keyof ActionContextMapping; + +export interface ActionContextMapping { + [DEFAULT_ACTION]: BaseContext; +} diff --git a/test/examples/embeddables/adding_children.ts b/test/examples/embeddables/adding_children.ts index 8f4951b0e22fe7..110b8ce5733326 100644 --- a/test/examples/embeddables/adding_children.ts +++ b/test/examples/embeddables/adding_children.ts @@ -31,7 +31,7 @@ export default function({ getService }: PluginFunctionalProviderContext) { it('Can create a new child', async () => { await testSubjects.click('embeddablePanelToggleMenuIcon'); - await testSubjects.click('embeddablePanelAction-ADD_PANEL_ACTION_ID'); + await testSubjects.click('embeddablePanelAction-ACTION_ADD_PANEL'); await testSubjects.click('createNew'); await testSubjects.click('createNew-TODO_EMBEDDABLE'); await testSubjects.setValue('taskInputField', 'new task'); diff --git a/test/examples/ui_actions/ui_actions.ts b/test/examples/ui_actions/ui_actions.ts index f047bfa333d88d..8fe599a9070706 100644 --- a/test/examples/ui_actions/ui_actions.ts +++ b/test/examples/ui_actions/ui_actions.ts @@ -41,7 +41,7 @@ export default function({ getService }: PluginFunctionalProviderContext) { await testSubjects.click('addDynamicAction'); await retry.try(async () => { await testSubjects.click('emitHelloWorldTrigger'); - await testSubjects.click('embeddablePanelAction-HELLO_WORLD_ACTION_TYPE-Waldo'); + await testSubjects.click('embeddablePanelAction-ACTION_HELLO_WORLD-Waldo'); }); await retry.try(async () => { const text = await testSubjects.getVisibleText('dynamicHelloWorldActionText'); diff --git a/test/functional/services/dashboard/panel_actions.js b/test/functional/services/dashboard/panel_actions.js index fafefaefc2cee2..baea2a52208c16 100644 --- a/test/functional/services/dashboard/panel_actions.js +++ b/test/functional/services/dashboard/panel_actions.js @@ -21,7 +21,7 @@ const REMOVE_PANEL_DATA_TEST_SUBJ = 'embeddablePanelAction-deletePanel'; const EDIT_PANEL_DATA_TEST_SUBJ = 'embeddablePanelAction-editPanel'; const REPLACE_PANEL_DATA_TEST_SUBJ = 'embeddablePanelAction-replacePanel'; const TOGGLE_EXPAND_PANEL_DATA_TEST_SUBJ = 'embeddablePanelAction-togglePanel'; -const CUSTOMIZE_PANEL_DATA_TEST_SUBJ = 'embeddablePanelAction-CUSTOMIZE_PANEL_ACTION_ID'; +const CUSTOMIZE_PANEL_DATA_TEST_SUBJ = 'embeddablePanelAction-ACTION_CUSTOMIZE_PANEL'; const OPEN_CONTEXT_MENU_ICON_DATA_TEST_SUBJ = 'embeddablePanelToggleMenuIcon'; const OPEN_INSPECTOR_TEST_SUBJ = 'embeddablePanelAction-openInspector'; diff --git a/test/plugin_functional/plugins/kbn_tp_embeddable_explorer/public/np_ready/public/plugin.tsx b/test/plugin_functional/plugins/kbn_tp_embeddable_explorer/public/np_ready/public/plugin.tsx index 2c58abba60558e..25666dc0359d95 100644 --- a/test/plugin_functional/plugins/kbn_tp_embeddable_explorer/public/np_ready/public/plugin.tsx +++ b/test/plugin_functional/plugins/kbn_tp_embeddable_explorer/public/np_ready/public/plugin.tsx @@ -85,7 +85,7 @@ export class EmbeddableExplorerPublicPlugin plugins.uiActions.registerAction(sayHelloAction); plugins.uiActions.registerAction(sendMessageAction); - plugins.uiActions.attachAction(CONTEXT_MENU_TRIGGER, helloWorldAction.id); + plugins.uiActions.attachAction(CONTEXT_MENU_TRIGGER, helloWorldAction); plugins.embeddable.registerEmbeddableFactory( helloWorldEmbeddableFactory.type, diff --git a/test/plugin_functional/plugins/kbn_tp_sample_panel_action/public/sample_panel_action.tsx b/test/plugin_functional/plugins/kbn_tp_sample_panel_action/public/sample_panel_action.tsx index 4ce748e2c71183..8395fddece2a49 100644 --- a/test/plugin_functional/plugins/kbn_tp_sample_panel_action/public/sample_panel_action.tsx +++ b/test/plugin_functional/plugins/kbn_tp_sample_panel_action/public/sample_panel_action.tsx @@ -21,18 +21,22 @@ import React from 'react'; import { npStart, npSetup } from 'ui/new_platform'; import { CONTEXT_MENU_TRIGGER, IEmbeddable } from '../../../../../src/plugins/embeddable/public'; -import { createAction } from '../../../../../src/plugins/ui_actions/public'; +import { createAction, ActionType } from '../../../../../src/plugins/ui_actions/public'; import { toMountPoint } from '../../../../../src/plugins/kibana_react/public'; -interface ActionContext { +// Casting to ActionType is a hack - in a real situation use +// declare module and add this id to ActionContextMapping. +export const SAMPLE_PANEL_ACTION = 'SAMPLE_PANEL_ACTION' as ActionType; + +export interface SamplePanelActionContext { embeddable: IEmbeddable; } function createSamplePanelAction() { - return createAction<ActionContext>({ - type: 'samplePanelAction', + return createAction<typeof SAMPLE_PANEL_ACTION>({ + type: SAMPLE_PANEL_ACTION, getDisplayName: () => 'Sample Panel Action', - execute: async ({ embeddable }) => { + execute: async ({ embeddable }: SamplePanelActionContext) => { if (!embeddable) { return; } @@ -59,4 +63,4 @@ function createSamplePanelAction() { const action = createSamplePanelAction(); npSetup.plugins.uiActions.registerAction(action); -npSetup.plugins.uiActions.attachAction(CONTEXT_MENU_TRIGGER, action.id); +npSetup.plugins.uiActions.attachAction(CONTEXT_MENU_TRIGGER, action); diff --git a/test/plugin_functional/plugins/kbn_tp_sample_panel_action/public/sample_panel_link.ts b/test/plugin_functional/plugins/kbn_tp_sample_panel_action/public/sample_panel_link.ts index 7a3fb7fa85546a..4b09be4db8a60d 100644 --- a/test/plugin_functional/plugins/kbn_tp_sample_panel_action/public/sample_panel_link.ts +++ b/test/plugin_functional/plugins/kbn_tp_sample_panel_action/public/sample_panel_link.ts @@ -17,12 +17,16 @@ * under the License. */ import { npStart } from 'ui/new_platform'; -import { Action, createAction } from '../../../../../src/plugins/ui_actions/public'; +import { Action, createAction, ActionType } from '../../../../../src/plugins/ui_actions/public'; import { CONTEXT_MENU_TRIGGER } from '../../../../../src/plugins/embeddable/public'; +// Casting to ActionType is a hack - in a real situation use +// declare module and add this id to ActionContextMapping. +export const SAMPLE_PANEL_LINK = 'samplePanelLink' as ActionType; + export const createSamplePanelLink = (): Action => - createAction({ - type: 'samplePanelLink', + createAction<typeof SAMPLE_PANEL_LINK>({ + type: SAMPLE_PANEL_LINK, getDisplayName: () => 'Sample panel Link', execute: async () => {}, getHref: () => 'https://example.com/kibana/test', @@ -30,4 +34,4 @@ export const createSamplePanelLink = (): Action => const action = createSamplePanelLink(); npStart.plugins.uiActions.registerAction(action); -npStart.plugins.uiActions.attachAction(CONTEXT_MENU_TRIGGER, action.id); +npStart.plugins.uiActions.attachAction(CONTEXT_MENU_TRIGGER, action); diff --git a/x-pack/legacy/plugins/reporting/public/panel_actions/get_csv_panel_action.tsx b/x-pack/legacy/plugins/reporting/public/panel_actions/get_csv_panel_action.tsx index f8d8fdf481dd63..4c9cd890ee75b7 100644 --- a/x-pack/legacy/plugins/reporting/public/panel_actions/get_csv_panel_action.tsx +++ b/x-pack/legacy/plugins/reporting/public/panel_actions/get_csv_panel_action.tsx @@ -8,7 +8,10 @@ import { i18n } from '@kbn/i18n'; import moment from 'moment-timezone'; import { npSetup, npStart } from 'ui/new_platform'; -import { Action, IncompatibleActionError } from '../../../../../../src/plugins/ui_actions/public'; +import { + ActionByType, + IncompatibleActionError, +} from '../../../../../../src/plugins/ui_actions/public'; import { ViewMode, @@ -28,11 +31,17 @@ function isSavedSearchEmbeddable( return embeddable.type === SEARCH_EMBEDDABLE_TYPE; } -interface ActionContext { +export interface CSVActionContext { embeddable: ISearchEmbeddable; } -class GetCsvReportPanelAction implements Action<ActionContext> { +declare module '../../../../../../src/plugins/ui_actions/public' { + export interface ActionContextMapping { + [CSV_REPORTING_ACTION]: CSVActionContext; + } +} + +class GetCsvReportPanelAction implements ActionByType<typeof CSV_REPORTING_ACTION> { private isDownloading: boolean; public readonly type = CSV_REPORTING_ACTION; public readonly id = CSV_REPORTING_ACTION; @@ -64,13 +73,13 @@ class GetCsvReportPanelAction implements Action<ActionContext> { return searchEmbeddable.getSavedSearch().searchSource.getSearchRequestBody(); } - public isCompatible = async (context: ActionContext) => { + public isCompatible = async (context: CSVActionContext) => { const { embeddable } = context; return embeddable.getInput().viewMode !== ViewMode.EDIT && embeddable.type === 'search'; }; - public execute = async (context: ActionContext) => { + public execute = async (context: CSVActionContext) => { const { embeddable } = context; if (!isSavedSearchEmbeddable(embeddable)) { @@ -166,4 +175,4 @@ class GetCsvReportPanelAction implements Action<ActionContext> { const action = new GetCsvReportPanelAction(); npSetup.plugins.uiActions.registerAction(action); -npSetup.plugins.uiActions.attachAction(CONTEXT_MENU_TRIGGER, action.id); +npSetup.plugins.uiActions.attachAction(CONTEXT_MENU_TRIGGER, action); diff --git a/x-pack/plugins/advanced_ui_actions/public/custom_time_range_action.tsx b/x-pack/plugins/advanced_ui_actions/public/custom_time_range_action.tsx index aa31b035cda583..325a5ddc101793 100644 --- a/x-pack/plugins/advanced_ui_actions/public/custom_time_range_action.tsx +++ b/x-pack/plugins/advanced_ui_actions/public/custom_time_range_action.tsx @@ -7,12 +7,12 @@ import { i18n } from '@kbn/i18n'; import React from 'react'; import { IEmbeddable, Embeddable, EmbeddableInput } from 'src/plugins/embeddable/public'; -import { Action, IncompatibleActionError } from '../../../../src/plugins/ui_actions/public'; +import { ActionByType, IncompatibleActionError } from '../../../../src/plugins/ui_actions/public'; import { TimeRange } from '../../../../src/plugins/data/public'; import { CustomizeTimeRangeModal } from './customize_time_range_modal'; import { OpenModal, CommonlyUsedRange } from './types'; -const CUSTOM_TIME_RANGE = 'CUSTOM_TIME_RANGE'; +export const CUSTOM_TIME_RANGE = 'CUSTOM_TIME_RANGE'; const SEARCH_EMBEDDABLE_TYPE = 'search'; export interface TimeRangeInput extends EmbeddableInput { @@ -34,11 +34,11 @@ function isVisualizeEmbeddable( return embeddable.type === VISUALIZE_EMBEDDABLE_TYPE; } -interface ActionContext { +export interface TimeRangeActionContext { embeddable: Embeddable<TimeRangeInput>; } -export class CustomTimeRangeAction implements Action<ActionContext> { +export class CustomTimeRangeAction implements ActionByType<typeof CUSTOM_TIME_RANGE> { public readonly type = CUSTOM_TIME_RANGE; private openModal: OpenModal; private dateFormat?: string; @@ -70,7 +70,7 @@ export class CustomTimeRangeAction implements Action<ActionContext> { return 'calendar'; } - public async isCompatible({ embeddable }: ActionContext) { + public async isCompatible({ embeddable }: TimeRangeActionContext) { const isInputControl = isVisualizeEmbeddable(embeddable) && (embeddable as VisualizeEmbeddable).getOutput().visTypeName === 'input_control_vis'; @@ -89,7 +89,7 @@ export class CustomTimeRangeAction implements Action<ActionContext> { ); } - public async execute({ embeddable }: ActionContext) { + public async execute({ embeddable }: TimeRangeActionContext) { const isCompatible = await this.isCompatible({ embeddable }); if (!isCompatible) { throw new IncompatibleActionError(); diff --git a/x-pack/plugins/advanced_ui_actions/public/custom_time_range_badge.tsx b/x-pack/plugins/advanced_ui_actions/public/custom_time_range_badge.tsx index 4ee8c91ff2a329..59a2fc27267b01 100644 --- a/x-pack/plugins/advanced_ui_actions/public/custom_time_range_badge.tsx +++ b/x-pack/plugins/advanced_ui_actions/public/custom_time_range_badge.tsx @@ -7,13 +7,13 @@ import React from 'react'; import { prettyDuration, commonDurationRanges } from '@elastic/eui'; import { IEmbeddable, Embeddable, EmbeddableInput } from 'src/plugins/embeddable/public'; -import { Action, IncompatibleActionError } from '../../../../src/plugins/ui_actions/public'; +import { ActionByType, IncompatibleActionError } from '../../../../src/plugins/ui_actions/public'; import { TimeRange } from '../../../../src/plugins/data/public'; import { CustomizeTimeRangeModal } from './customize_time_range_modal'; import { doesInheritTimeRange } from './does_inherit_time_range'; import { OpenModal, CommonlyUsedRange } from './types'; -const CUSTOM_TIME_RANGE_BADGE = 'CUSTOM_TIME_RANGE_BADGE'; +export const CUSTOM_TIME_RANGE_BADGE = 'CUSTOM_TIME_RANGE_BADGE'; export interface TimeRangeInput extends EmbeddableInput { timeRange: TimeRange; @@ -25,11 +25,11 @@ function hasTimeRange( return (embeddable as Embeddable<TimeRangeInput>).getInput().timeRange !== undefined; } -interface ActionContext { +export interface TimeBadgeActionContext { embeddable: Embeddable<TimeRangeInput>; } -export class CustomTimeRangeBadge implements Action<ActionContext> { +export class CustomTimeRangeBadge implements ActionByType<typeof CUSTOM_TIME_RANGE_BADGE> { public readonly type = CUSTOM_TIME_RANGE_BADGE; public readonly id = CUSTOM_TIME_RANGE_BADGE; public order = 7; @@ -51,7 +51,7 @@ export class CustomTimeRangeBadge implements Action<ActionContext> { this.commonlyUsedRanges = commonlyUsedRanges; } - public getDisplayName({ embeddable }: ActionContext) { + public getDisplayName({ embeddable }: TimeBadgeActionContext) { return prettyDuration( embeddable.getInput().timeRange.from, embeddable.getInput().timeRange.to, @@ -64,11 +64,11 @@ export class CustomTimeRangeBadge implements Action<ActionContext> { return 'calendar'; } - public async isCompatible({ embeddable }: ActionContext) { + public async isCompatible({ embeddable }: TimeBadgeActionContext) { return Boolean(embeddable && hasTimeRange(embeddable) && !doesInheritTimeRange(embeddable)); } - public async execute({ embeddable }: ActionContext) { + public async execute({ embeddable }: TimeBadgeActionContext) { const isCompatible = await this.isCompatible({ embeddable }); if (!isCompatible) { throw new IncompatibleActionError(); diff --git a/x-pack/plugins/advanced_ui_actions/public/plugin.ts b/x-pack/plugins/advanced_ui_actions/public/plugin.ts index 5c5d2d38da15e0..2f6935cdf1961f 100644 --- a/x-pack/plugins/advanced_ui_actions/public/plugin.ts +++ b/x-pack/plugins/advanced_ui_actions/public/plugin.ts @@ -18,9 +18,17 @@ import { IEmbeddableSetup, IEmbeddableStart, } from '../../../../src/plugins/embeddable/public'; -import { CustomTimeRangeAction } from './custom_time_range_action'; +import { + CustomTimeRangeAction, + CUSTOM_TIME_RANGE, + TimeRangeActionContext, +} from './custom_time_range_action'; -import { CustomTimeRangeBadge } from './custom_time_range_badge'; +import { + CustomTimeRangeBadge, + CUSTOM_TIME_RANGE_BADGE, + TimeBadgeActionContext, +} from './custom_time_range_badge'; import { CommonlyUsedRange } from './types'; interface SetupDependencies { @@ -36,6 +44,13 @@ interface StartDependencies { export type Setup = void; export type Start = void; +declare module '../../../../src/plugins/ui_actions/public' { + export interface ActionContextMapping { + [CUSTOM_TIME_RANGE]: TimeRangeActionContext; + [CUSTOM_TIME_RANGE_BADGE]: TimeBadgeActionContext; + } +} + export class AdvancedUiActionsPublicPlugin implements Plugin<Setup, Start, SetupDependencies, StartDependencies> { constructor(initializerContext: PluginInitializerContext) {} @@ -52,7 +67,7 @@ export class AdvancedUiActionsPublicPlugin commonlyUsedRanges, }); uiActions.registerAction(timeRangeAction); - uiActions.attachAction(CONTEXT_MENU_TRIGGER, timeRangeAction.id); + uiActions.attachAction(CONTEXT_MENU_TRIGGER, timeRangeAction); const timeRangeBadge = new CustomTimeRangeBadge({ openModal, @@ -60,7 +75,7 @@ export class AdvancedUiActionsPublicPlugin commonlyUsedRanges, }); uiActions.registerAction(timeRangeBadge); - uiActions.attachAction(PANEL_BADGE_TRIGGER, timeRangeBadge.id); + uiActions.attachAction(PANEL_BADGE_TRIGGER, timeRangeBadge); } public stop() {} diff --git a/x-pack/plugins/drilldowns/public/actions/flyout_create_drilldown/index.tsx b/x-pack/plugins/drilldowns/public/actions/flyout_create_drilldown/index.tsx index 0b9f54f51f61e4..1db57eb3d0b289 100644 --- a/x-pack/plugins/drilldowns/public/actions/flyout_create_drilldown/index.tsx +++ b/x-pack/plugins/drilldowns/public/actions/flyout_create_drilldown/index.tsx @@ -7,7 +7,7 @@ import React from 'react'; import { i18n } from '@kbn/i18n'; import { CoreStart } from 'src/core/public'; -import { Action } from '../../../../../../src/plugins/ui_actions/public'; +import { ActionByType } from '../../../../../../src/plugins/ui_actions/public'; import { toMountPoint } from '../../../../../../src/plugins/kibana_react/public'; import { IEmbeddable } from '../../../../../../src/plugins/embeddable/public'; import { FlyoutCreateDrilldown } from '../../components/flyout_create_drilldown'; @@ -22,7 +22,7 @@ export interface OpenFlyoutAddDrilldownParams { overlays: () => Promise<CoreStart['overlays']>; } -export class FlyoutCreateDrilldownAction implements Action<FlyoutCreateDrilldownActionContext> { +export class FlyoutCreateDrilldownAction implements ActionByType<typeof OPEN_FLYOUT_ADD_DRILLDOWN> { public readonly type = OPEN_FLYOUT_ADD_DRILLDOWN; public readonly id = OPEN_FLYOUT_ADD_DRILLDOWN; public order = 5; diff --git a/x-pack/plugins/drilldowns/public/plugin.ts b/x-pack/plugins/drilldowns/public/plugin.ts index 6c8555fa55a119..1761e17d55986a 100644 --- a/x-pack/plugins/drilldowns/public/plugin.ts +++ b/x-pack/plugins/drilldowns/public/plugin.ts @@ -7,6 +7,7 @@ import { CoreStart, CoreSetup, Plugin } from 'src/core/public'; import { UiActionsSetup, UiActionsStart } from '../../../../src/plugins/ui_actions/public'; import { DrilldownService } from './service'; +import { FlyoutCreateDrilldownActionContext, OPEN_FLYOUT_ADD_DRILLDOWN } from './actions'; export interface DrilldownsSetupDependencies { uiActions: UiActionsSetup; @@ -21,6 +22,12 @@ export type DrilldownsSetupContract = Pick<DrilldownService, 'registerDrilldown' // eslint-disable-next-line export interface DrilldownsStartContract {} +declare module '../../../../src/plugins/ui_actions/public' { + export interface ActionContextMapping { + [OPEN_FLYOUT_ADD_DRILLDOWN]: FlyoutCreateDrilldownActionContext; + } +} + export class DrilldownsPlugin implements Plugin< diff --git a/x-pack/plugins/drilldowns/public/service/drilldown_service.ts b/x-pack/plugins/drilldowns/public/service/drilldown_service.ts index b1310ba003ff7a..715b0ce8e60e1e 100644 --- a/x-pack/plugins/drilldowns/public/service/drilldown_service.ts +++ b/x-pack/plugins/drilldowns/public/service/drilldown_service.ts @@ -5,6 +5,7 @@ */ import { CoreSetup } from 'src/core/public'; +import { CONTEXT_MENU_TRIGGER } from '../../../../../src/plugins/embeddable/public'; import { FlyoutCreateDrilldownAction } from '../actions'; import { DrilldownsSetupDependencies } from '../plugin'; @@ -15,7 +16,7 @@ export class DrilldownService { }); uiActions.registerAction(actionFlyoutCreateDrilldown); - uiActions.attachAction('CONTEXT_MENU_TRIGGER', actionFlyoutCreateDrilldown.id); + uiActions.attachAction(CONTEXT_MENU_TRIGGER, actionFlyoutCreateDrilldown); } /** From b2616df34c1ae336225c847c34b0183ade57251e Mon Sep 17 00:00:00 2001 From: Matthias Wilhelm <matthias.wilhelm@elastic.co> Date: Wed, 4 Mar 2020 16:40:39 +0100 Subject: [PATCH 105/120] [TSVB] Fixes color rules operate variable automatically set to undefinded (#58719) * Fixes operate variable (string) automatically set to undefinded * Add test --- .../public/components/color_rules.js | 4 +++- .../public/components/color_rules.test.js | 16 ++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/legacy/core_plugins/vis_type_timeseries/public/components/color_rules.js b/src/legacy/core_plugins/vis_type_timeseries/public/components/color_rules.js index d649777b56438b..9257fc18fd75ea 100644 --- a/src/legacy/core_plugins/vis_type_timeseries/public/components/color_rules.js +++ b/src/legacy/core_plugins/vis_type_timeseries/public/components/color_rules.js @@ -46,7 +46,7 @@ class ColorRulesUI extends Component { const part = {}; part[name] = cast(_.get(e, '[0].value', _.get(e, 'target.value'))); if (part[name] === 'undefined') part[name] = undefined; - if (isNaN(part[name])) part[name] = undefined; + if (cast === Number && isNaN(part[name])) part[name] = undefined; handleChange(_.assign({}, item, part)); }; } @@ -170,6 +170,7 @@ class ColorRulesUI extends Component { selectedOptions={selectedOperatorOption ? [selectedOperatorOption] : []} onChange={this.handleChange(model, 'operator')} singleSelection={{ asPlainText: true }} + data-test-subj="colorRuleOperator" fullWidth /> </EuiFlexItem> @@ -182,6 +183,7 @@ class ColorRulesUI extends Component { })} value={model.value} onChange={this.handleChange(model, 'value', Number)} + data-test-subj="colorRuleValue" fullWidth /> </EuiFlexItem> diff --git a/src/legacy/core_plugins/vis_type_timeseries/public/components/color_rules.test.js b/src/legacy/core_plugins/vis_type_timeseries/public/components/color_rules.test.js index a05ff066271452..63af98db57e8b3 100644 --- a/src/legacy/core_plugins/vis_type_timeseries/public/components/color_rules.test.js +++ b/src/legacy/core_plugins/vis_type_timeseries/public/components/color_rules.test.js @@ -18,7 +18,10 @@ */ import React from 'react'; +import { collectionActions } from './lib/collection_actions'; import { ColorRules } from './color_rules'; +import { keyCodes } from '@elastic/eui'; +import { findTestSubject } from '@elastic/eui/lib/test'; import { mountWithIntl } from 'test_utils/enzyme_helpers'; describe('src/legacy/core_plugins/metrics/public/components/color_rules.test.js', () => { @@ -59,5 +62,18 @@ describe('src/legacy/core_plugins/metrics/public/components/color_rules.test.js' expect(isNode).toBeTruthy(); }); + it('should handle change of operator and value correctly', () => { + collectionActions.handleChange = jest.fn(); + const wrapper = mountWithIntl(<ColorRules.WrappedComponent {...defaultProps} />); + const operatorInput = findTestSubject(wrapper, 'colorRuleOperator'); + operatorInput.simulate('keyDown', { keyCode: keyCodes.DOWN }); + operatorInput.simulate('keyDown', { keyCode: keyCodes.DOWN }); + operatorInput.simulate('keyDown', { keyCode: keyCodes.ENTER }); + expect(collectionActions.handleChange.mock.calls[0][1].operator).toEqual('gt'); + + const numberInput = findTestSubject(wrapper, 'colorRuleValue'); + numberInput.simulate('change', { target: { value: '123' } }); + expect(collectionActions.handleChange.mock.calls[1][1].value).toEqual(123); + }); }); }); From 29975fa614307bb9c513f1c6e1c0dedc2fd013af Mon Sep 17 00:00:00 2001 From: Walter Rafelsberger <walter@elastic.co> Date: Wed, 4 Mar 2020 16:56:01 +0100 Subject: [PATCH 106/120] [ML] Transforms: Deprecate custom KibanaContext. (#59133) - Deprecates the custom KibanaContext. - Where applicable dependencies provided via KibanaContext are now passed on via AppDependencies. - The main feature of KibanaContext was to populate index pattern and saved search information for the transform wizard. This is now provided via the useSearchItems() custom hook. --- .../transform/public/app/common/request.ts | 2 +- .../toast_notification_text.test.tsx | 10 +- .../use_search_items}/common.ts | 19 +- .../app/hooks/use_search_items/index.ts | 8 + .../use_search_items/use_search_items.ts} | 56 +- .../transform/public/app/lib/kibana/index.ts | 17 - .../public/app/lib/kibana/kibana_context.tsx | 72 -- .../lib/kibana/use_current_index_pattern.ts | 19 - .../clone_transform_section.tsx | 22 +- .../source_index_preview.test.tsx.snap | 598 +++++++++++++++- .../expanded_row.test.tsx | 2 - .../source_index_preview.test.tsx | 20 +- .../source_index_preview.tsx | 7 +- .../step_create_form.test.tsx.snap | 598 +++++++++++++++- .../step_create/step_create_form.test.tsx | 15 +- .../step_create/step_create_form.tsx | 10 +- .../__snapshots__/pivot_preview.test.tsx.snap | 638 ++++++++++++++++-- .../step_define_form.test.tsx.snap | 581 +++++++++++++++- .../step_define_summary.test.tsx.snap | 121 +++- .../step_define/pivot_preview.test.tsx | 21 +- .../components/step_define/pivot_preview.tsx | 321 ++++----- .../step_define/step_define_form.test.tsx | 18 +- .../step_define/step_define_form.tsx | 57 +- .../step_define/step_define_summary.test.tsx | 14 +- .../step_define/step_define_summary.tsx | 53 +- .../step_details/step_details_form.tsx | 621 ++++++++--------- .../components/wizard/wizard.tsx | 31 +- .../create_transform_section.tsx | 70 +- .../legacy/plugins/transform/public/plugin.ts | 12 +- .../transform/public/shared_imports.ts | 1 + .../legacy/plugins/transform/public/shim.ts | 17 +- 31 files changed, 3114 insertions(+), 937 deletions(-) rename x-pack/legacy/plugins/transform/public/app/{lib/kibana => hooks/use_search_items}/common.ts (96%) create mode 100644 x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/index.ts rename x-pack/legacy/plugins/transform/public/app/{lib/kibana/kibana_provider.tsx => hooks/use_search_items/use_search_items.ts} (53%) delete mode 100644 x-pack/legacy/plugins/transform/public/app/lib/kibana/index.ts delete mode 100644 x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_context.tsx delete mode 100644 x-pack/legacy/plugins/transform/public/app/lib/kibana/use_current_index_pattern.ts diff --git a/x-pack/legacy/plugins/transform/public/app/common/request.ts b/x-pack/legacy/plugins/transform/public/app/common/request.ts index 3b740de177ef8c..31089b86a2c2d6 100644 --- a/x-pack/legacy/plugins/transform/public/app/common/request.ts +++ b/x-pack/legacy/plugins/transform/public/app/common/request.ts @@ -7,7 +7,7 @@ import { DefaultOperator } from 'elasticsearch'; import { dictionaryToArray } from '../../../common/types/common'; -import { SavedSearchQuery } from '../lib/kibana'; +import { SavedSearchQuery } from '../hooks/use_search_items'; import { StepDefineExposedState } from '../sections/create_transform/components/step_define/step_define_form'; import { StepDetailsExposedState } from '../sections/create_transform/components/step_details/step_details_form'; diff --git a/x-pack/legacy/plugins/transform/public/app/components/toast_notification_text.test.tsx b/x-pack/legacy/plugins/transform/public/app/components/toast_notification_text.test.tsx index 81af5c974fe04a..095b57de97d9a9 100644 --- a/x-pack/legacy/plugins/transform/public/app/components/toast_notification_text.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/components/toast_notification_text.test.tsx @@ -7,13 +7,13 @@ import React from 'react'; import { render } from '@testing-library/react'; -import { KibanaContext } from '../lib/kibana'; import { createPublicShim } from '../../shim'; import { getAppProviders } from '../app_dependencies'; import { ToastNotificationText } from './toast_notification_text'; jest.mock('../../shared_imports'); +jest.mock('ui/new_platform'); describe('ToastNotificationText', () => { test('should render the text as plain text', () => { @@ -23,9 +23,7 @@ describe('ToastNotificationText', () => { }; const { container } = render( <Providers> - <KibanaContext.Provider value={{ initialized: false }}> - <ToastNotificationText {...props} /> - </KibanaContext.Provider> + <ToastNotificationText {...props} /> </Providers> ); expect(container.textContent).toBe('a short text message'); @@ -39,9 +37,7 @@ describe('ToastNotificationText', () => { }; const { container } = render( <Providers> - <KibanaContext.Provider value={{ initialized: false }}> - <ToastNotificationText {...props} /> - </KibanaContext.Provider> + <ToastNotificationText {...props} /> </Providers> ); expect(container.textContent).toBe( diff --git a/x-pack/legacy/plugins/transform/public/app/lib/kibana/common.ts b/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/common.ts similarity index 96% rename from x-pack/legacy/plugins/transform/public/app/lib/kibana/common.ts rename to x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/common.ts index aa4cd21281e22e..2258f8f33f01dd 100644 --- a/x-pack/legacy/plugins/transform/public/app/lib/kibana/common.ts +++ b/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/common.ts @@ -14,6 +14,8 @@ import { import { matchAllQuery } from '../../common'; +export type SavedSearchQuery = object; + type IndexPatternId = string; type SavedSearchId = string; @@ -60,7 +62,7 @@ export function getIndexPatternIdByTitle(indexPatternTitle: string): string | un return indexPatternCache.find(d => d?.attributes?.title === indexPatternTitle)?.id; } -type CombinedQuery = Record<'bool', any> | unknown; +type CombinedQuery = Record<'bool', any> | object; export function loadCurrentIndexPattern( indexPatterns: IndexPatternsContract, @@ -79,17 +81,20 @@ export function loadCurrentSavedSearch(savedSearches: any, savedSearchId: SavedS function isIndexPattern(arg: any): arg is IndexPattern { return arg !== undefined; } + +export interface SearchItems { + indexPattern: IndexPattern; + savedSearch: any; + query: any; + combinedQuery: CombinedQuery; +} + // Helper for creating the items used for searching and job creation. export function createSearchItems( indexPattern: IndexPattern | undefined, savedSearch: any, config: IUiSettingsClient -): { - indexPattern: IndexPattern; - savedSearch: any; - query: any; - combinedQuery: CombinedQuery; -} { +): SearchItems { // query is only used by the data visualizer as it needs // a lucene query_string. // Using a blank query will cause match_all:{} to be used diff --git a/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/index.ts b/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/index.ts new file mode 100644 index 00000000000000..aa4f04f43b335b --- /dev/null +++ b/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/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 { SavedSearchQuery, SearchItems } from './common'; +export { useSearchItems } from './use_search_items'; diff --git a/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_provider.tsx b/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/use_search_items.ts similarity index 53% rename from x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_provider.tsx rename to x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/use_search_items.ts index f2574a4a85f296..12fc75c20ffa48 100644 --- a/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_provider.tsx +++ b/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/use_search_items.ts @@ -4,30 +4,36 @@ * you may not use this file except in compliance with the Elastic License. */ -import React, { useEffect, useState, FC } from 'react'; +import { useEffect, useState } from 'react'; + +import { createSavedSearchesLoader } from '../../../shared_imports'; import { useAppDependencies } from '../../app_dependencies'; import { createSearchItems, + getIndexPatternIdByTitle, loadCurrentIndexPattern, loadIndexPatterns, loadCurrentSavedSearch, + SearchItems, } from './common'; -import { InitializedKibanaContextValue, KibanaContext, KibanaContextValue } from './kibana_context'; - -interface Props { - savedObjectId: string; -} +export const useSearchItems = (defaultSavedObjectId: string | undefined) => { + const [savedObjectId, setSavedObjectId] = useState(defaultSavedObjectId); -export const KibanaProvider: FC<Props> = ({ savedObjectId, children }) => { const appDeps = useAppDependencies(); const indexPatterns = appDeps.plugins.data.indexPatterns; + const uiSettings = appDeps.core.uiSettings; const savedObjectsClient = appDeps.core.savedObjects.client; - const savedSearches = appDeps.plugins.savedSearches.getClient(); + const savedSearches = createSavedSearchesLoader({ + savedObjectsClient, + indexPatterns, + chrome: appDeps.core.chrome, + overlays: appDeps.core.overlays, + }); - const [contextValue, setContextValue] = useState<KibanaContextValue>({ initialized: false }); + const [searchItems, setSearchItems] = useState<SearchItems | undefined>(undefined); async function fetchSavedObject(id: string) { await loadIndexPatterns(savedObjectsClient, indexPatterns); @@ -47,31 +53,21 @@ export const KibanaProvider: FC<Props> = ({ savedObjectId, children }) => { // Just let fetchedSavedSearch stay undefined in case it doesn't exist. } - const kibanaConfig = appDeps.core.uiSettings; - - const { - indexPattern: currentIndexPattern, - savedSearch: currentSavedSearch, - combinedQuery, - } = createSearchItems(fetchedIndexPattern, fetchedSavedSearch, kibanaConfig); - - const kibanaContext: InitializedKibanaContextValue = { - indexPatterns, - initialized: true, - kibanaConfig, - combinedQuery, - currentIndexPattern, - currentSavedSearch, - }; - - setContextValue(kibanaContext); + setSearchItems(createSearchItems(fetchedIndexPattern, fetchedSavedSearch, uiSettings)); } useEffect(() => { - fetchSavedObject(savedObjectId); - // fetchSavedObject should not be tracked. + if (savedObjectId !== undefined) { + fetchSavedObject(savedObjectId); + } + // Run this only when savedObjectId changes. // eslint-disable-next-line react-hooks/exhaustive-deps }, [savedObjectId]); - return <KibanaContext.Provider value={contextValue}>{children}</KibanaContext.Provider>; + return { + getIndexPatternIdByTitle, + loadIndexPatterns, + searchItems, + setSavedObjectId, + }; }; diff --git a/x-pack/legacy/plugins/transform/public/app/lib/kibana/index.ts b/x-pack/legacy/plugins/transform/public/app/lib/kibana/index.ts deleted file mode 100644 index 62107cb37ff2c2..00000000000000 --- a/x-pack/legacy/plugins/transform/public/app/lib/kibana/index.ts +++ /dev/null @@ -1,17 +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. - */ - -export { getIndexPatternIdByTitle, loadIndexPatterns } from './common'; -export { - useKibanaContext, - InitializedKibanaContextValue, - KibanaContext, - KibanaContextValue, - SavedSearchQuery, - RenderOnlyWithInitializedKibanaContext, -} from './kibana_context'; -export { KibanaProvider } from './kibana_provider'; -export { useCurrentIndexPattern } from './use_current_index_pattern'; diff --git a/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_context.tsx b/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_context.tsx deleted file mode 100644 index 7677c491a7a59d..00000000000000 --- a/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_context.tsx +++ /dev/null @@ -1,72 +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 React, { createContext, useContext, FC } from 'react'; - -import { IUiSettingsClient } from 'kibana/public'; - -import { - IndexPattern, - IndexPatternsContract, -} from '../../../../../../../../src/plugins/data/public'; -import { SavedSearch } from '../../../../../../../../src/plugins/discover/public/'; - -interface UninitializedKibanaContextValue { - initialized: false; -} - -export interface InitializedKibanaContextValue { - combinedQuery: any; - indexPatterns: IndexPatternsContract; - initialized: true; - kibanaConfig: IUiSettingsClient; - currentIndexPattern: IndexPattern; - currentSavedSearch?: SavedSearch; -} - -export type KibanaContextValue = UninitializedKibanaContextValue | InitializedKibanaContextValue; - -export function isKibanaContextInitialized(arg: any): arg is InitializedKibanaContextValue { - return arg.initialized; -} - -export type SavedSearchQuery = object; - -export const KibanaContext = createContext<KibanaContextValue>({ initialized: false }); - -/** - * Custom hook to get the current kibanaContext. - * - * @remarks - * This hook should only be used in components wrapped in `RenderOnlyWithInitializedKibanaContext`, - * otherwise it will throw an error when KibanaContext hasn't been initialized yet. - * In return you get the benefit of not having to check if it's been initialized in the component - * where it's used. - * - * @returns `kibanaContext` - */ -export const useKibanaContext = () => { - const kibanaContext = useContext(KibanaContext); - - if (!isKibanaContextInitialized(kibanaContext)) { - throw new Error('useKibanaContext: kibanaContext not initialized'); - } - - return kibanaContext; -}; - -/** - * Wrapper component to render children only if `kibanaContext` has been initialized. - * In combination with `useKibanaContext` this avoids having to check for the initialization - * in consuming components. - * - * @returns `children` or `null` depending on whether `kibanaContext` is initialized or not. - */ -export const RenderOnlyWithInitializedKibanaContext: FC = ({ children }) => { - const kibanaContext = useContext(KibanaContext); - - return isKibanaContextInitialized(kibanaContext) ? <>{children}</> : null; -}; diff --git a/x-pack/legacy/plugins/transform/public/app/lib/kibana/use_current_index_pattern.ts b/x-pack/legacy/plugins/transform/public/app/lib/kibana/use_current_index_pattern.ts deleted file mode 100644 index 12c5bde171b8ba..00000000000000 --- a/x-pack/legacy/plugins/transform/public/app/lib/kibana/use_current_index_pattern.ts +++ /dev/null @@ -1,19 +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 { useContext } from 'react'; - -import { isKibanaContextInitialized, KibanaContext } from './kibana_context'; - -export const useCurrentIndexPattern = () => { - const context = useContext(KibanaContext); - - if (!isKibanaContextInitialized(context)) { - throw new Error('useCurrentIndexPattern: kibanaContext not initialized'); - } - - return context.currentIndexPattern; -}; diff --git a/x-pack/legacy/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx b/x-pack/legacy/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx index c5c46dcac6c957..4618e96cbfd6eb 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx @@ -22,6 +22,7 @@ import { } from '@elastic/eui'; import { useApi } from '../../hooks/use_api'; +import { useSearchItems } from '../../hooks/use_search_items'; import { APP_CREATE_TRANSFORM_CLUSTER_PRIVILEGES } from '../../../../common/constants'; @@ -29,12 +30,6 @@ import { useAppDependencies, useDocumentationLinks } from '../../app_dependencie import { TransformPivotConfig } from '../../common'; import { breadcrumbService, docTitleService, BREADCRUMB_SECTION } from '../../services/navigation'; import { PrivilegesWrapper } from '../../lib/authorization'; -import { - getIndexPatternIdByTitle, - loadIndexPatterns, - KibanaProvider, - RenderOnlyWithInitializedKibanaContext, -} from '../../lib/kibana'; import { Wizard } from '../create_transform/components/wizard'; @@ -80,7 +75,12 @@ export const CloneTransformSection: FC<Props> = ({ match }) => { const [transformConfig, setTransformConfig] = useState<TransformPivotConfig>(); const [errorMessage, setErrorMessage] = useState(); const [isInitialized, setIsInitialized] = useState(false); - const [savedObjectId, setSavedObjectId] = useState<string | undefined>(undefined); + const { + getIndexPatternIdByTitle, + loadIndexPatterns, + searchItems, + setSavedObjectId, + } = useSearchItems(undefined); const fetchTransformConfig = async () => { try { @@ -169,12 +169,8 @@ export const CloneTransformSection: FC<Props> = ({ match }) => { <pre>{JSON.stringify(errorMessage)}</pre> </EuiCallOut> )} - {savedObjectId !== undefined && isInitialized === true && transformConfig !== undefined && ( - <KibanaProvider savedObjectId={savedObjectId}> - <RenderOnlyWithInitializedKibanaContext> - <Wizard cloneConfig={transformConfig} /> - </RenderOnlyWithInitializedKibanaContext> - </KibanaProvider> + {searchItems !== undefined && isInitialized === true && transformConfig !== undefined && ( + <Wizard cloneConfig={transformConfig} searchItems={searchItems} /> )} </EuiPageContentBody> </EuiPageContent> diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/__snapshots__/source_index_preview.test.tsx.snap b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/__snapshots__/source_index_preview.test.tsx.snap index e43f2e37bb416a..6d2d3d5c4a6a5b 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/__snapshots__/source_index_preview.test.tsx.snap +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/__snapshots__/source_index_preview.test.tsx.snap @@ -1,24 +1,584 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Transform: <SourceIndexPreview /> Minimal initialization 1`] = ` -<div> - <ContextProvider - value={ - Object { - "initialized": false, - } - } - > - <Component - query={ - Object { - "query_string": Object { - "default_operator": "AND", - "query": "the-query", - }, +<AuthorizationProvider + privilegesEndpoint="/api/transform/privileges" +> + <mockConstructor> + <HashRouter> + <ContextProvider + value={ + Object { + "core": Object { + "application": Object { + "capabilities": Object { + "catalogue": Object {}, + "management": Object {}, + "navLinks": Object {}, + }, + "currentAppId$": Observable { + "_isScalar": false, + "source": Subject { + "_isScalar": false, + "closed": false, + "hasError": false, + "isStopped": false, + "observers": Array [], + "thrownError": null, + }, + }, + "getUrlForApp": [MockFunction], + "navigateToApp": [MockFunction], + "registerMountContext": [MockFunction], + }, + "chrome": Object { + "addApplicationClass": [MockFunction], + "docTitle": Object { + "__legacy": Object { + "setBaseTitle": [MockFunction], + }, + "change": [MockFunction], + "reset": [MockFunction], + }, + "getApplicationClasses$": [MockFunction], + "getBadge$": [MockFunction], + "getBrand$": [MockFunction], + "getBreadcrumbs$": [MockFunction], + "getHeaderComponent": [MockFunction], + "getHelpExtension$": [MockFunction], + "getIsCollapsed$": [MockFunction], + "getIsVisible$": [MockFunction], + "navControls": Object { + "getLeft$": [MockFunction], + "getRight$": [MockFunction], + "registerLeft": [MockFunction], + "registerRight": [MockFunction], + }, + "navLinks": Object { + "enableForcedAppSwitcherNavigation": [MockFunction], + "get": [MockFunction], + "getAll": [MockFunction], + "getForceAppSwitcherNavigation$": [MockFunction], + "getNavLinks$": [MockFunction], + "has": [MockFunction], + "showOnly": [MockFunction], + "update": [MockFunction], + }, + "recentlyAccessed": Object { + "add": [MockFunction], + "get": [MockFunction], + "get$": [MockFunction], + }, + "removeApplicationClass": [MockFunction], + "setAppTitle": [MockFunction], + "setBadge": [MockFunction], + "setBrand": [MockFunction], + "setBreadcrumbs": [MockFunction], + "setHelpExtension": [MockFunction], + "setHelpSupportUrl": [MockFunction], + "setIsCollapsed": [MockFunction], + "setIsVisible": [MockFunction], + }, + "docLinks": Object { + "DOC_LINK_VERSION": "mocked-test-branch", + "ELASTIC_WEBSITE_URL": "https://www.elastic.co/", + "links": Object { + "aggs": Object { + "avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-avg-aggregation.html", + "avg_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-avg-bucket-aggregation.html", + "cardinality": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-cardinality-aggregation.html", + "count": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-valuecount-aggregation.html", + "cumulative_sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", + "date_histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-datehistogram-aggregation.html", + "date_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-daterange-aggregation.html", + "derivative": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-derivative-aggregation.html", + "filter": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filter-aggregation.html", + "filters": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filters-aggregation.html", + "geo_bounds": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geobounds-aggregation.html", + "geo_centroid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geocentroid-aggregation.html", + "geohash_grid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-geohashgrid-aggregation.html", + "histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-histogram-aggregation.html", + "ip_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-iprange-aggregation.html", + "max": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-max-aggregation.html", + "max_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-max-bucket-aggregation.html", + "median": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-aggregation.html", + "min": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-min-aggregation.html", + "min_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-min-bucket-aggregation.html", + "moving_avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-movavg-aggregation.html", + "percentile_ranks": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-rank-aggregation.html", + "range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-range-aggregation.html", + "serial_diff": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-serialdiff-aggregation.html", + "significant_terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-significantterms-aggregation.html", + "std_dev": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-extendedstats-aggregation.html", + "sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", + "sum_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-sum-bucket-aggregation.html", + "terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-terms-aggregation.html", + "top_hits": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-top-hits-aggregation.html", + }, + "auditbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/auditbeat/mocked-test-branch", + }, + "date": Object { + "dateMath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/common-options.html#date-math", + }, + "filebeat": Object { + "base": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch", + "configuration": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-configuration.html", + "elasticsearchOutput": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/elasticsearch-output.html", + "exportedFields": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/exported-fields.html", + "installation": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-installation.html", + "startup": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-starting.html", + }, + "functionbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/functionbeat/mocked-test-branch", + }, + "heartbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/heartbeat/mocked-test-branch", + }, + "indexPatterns": Object { + "introduction": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index-patterns.html", + "loadingData": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/tutorial-load-dataset.html", + }, + "kibana": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index.html", + "logstash": Object { + "base": "https://www.elastic.co/guide/en/logstash/mocked-test-branch", + }, + "management": Object { + "dashboardSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-dashboard-settings", + "kibanaSearchSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-search-settings", + }, + "metricbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/metricbeat/mocked-test-branch", + }, + "query": Object { + "kueryQuerySyntax": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/kuery-query.html", + "luceneQuerySyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl-query-string-query.html#query-string-syntax", + "queryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", + }, + "scriptedFields": Object { + "luceneExpressions": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-expression.html", + "painless": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless.html", + "painlessApi": "https://www.elastic.co/guide/en/elasticsearch/painless/mocked-test-branch/painless-api-reference.html", + "painlessSyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless-syntax.html", + "scriptAggs": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations.html#_values_source", + "scriptFields": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-request-script-fields.html", + }, + "siem": Object { + "gettingStarted": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/install-siem.html", + "guide": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/index.html", + }, + "winlogbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/winlogbeat/mocked-test-branch", + }, + }, + }, + "docTitle": Object { + "change": [Function], + }, + "documentation": Object { + "esDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/", + "esIndicesCreateIndex": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/indices-create-index.html#indices-create-index", + "esPluginDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/plugins/mocked-test-branch/", + "esQueryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", + "esStackOverviewDocBasePath": "https://www.elastic.co/guide/en/elastic-stack-overview/mocked-test-branch/", + "esTransform": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/transforms.html", + "esTransformPivot": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/put-transform.html#put-transform-request-body", + "mlDocBasePath": "https://www.elastic.co/guide/en/machine-learning/mocked-test-branch/", + }, + "fatalErrors": Object { + "add": [MockFunction], + "get$": [MockFunction], + }, + "http": Object { + "addLoadingCountSource": [MockFunction], + "anonymousPaths": Object { + "isAnonymous": [MockFunction], + "register": [MockFunction], + }, + "basePath": BasePath { + "basePath": "", + "get": [Function], + "prepend": [Function], + "remove": [Function], + "serverBasePath": "", + }, + "delete": [MockFunction], + "fetch": [MockFunction], + "get": [MockFunction], + "getLoadingCount$": [MockFunction], + "head": [MockFunction], + "intercept": [MockFunction], + "options": [MockFunction], + "patch": [MockFunction], + "post": [MockFunction], + "put": [MockFunction], + }, + "i18n": Object { + "Context": [MockFunction], + }, + "injectedMetadata": Object { + "getInjectedVar": [MockFunction], + }, + "notifications": Object { + "toasts": Object { + "add": [MockFunction], + "addDanger": [MockFunction], + "addError": [MockFunction], + "addSuccess": [MockFunction], + "addWarning": [MockFunction], + "get$": [MockFunction], + "remove": [MockFunction], + }, + }, + "overlays": Object { + "banners": Object { + "add": [MockFunction], + "get$": [MockFunction], + "getComponent": [MockFunction], + "remove": [MockFunction], + "replace": [MockFunction], + }, + "openConfirm": [MockFunction], + "openFlyout": [MockFunction], + "openModal": [MockFunction], + }, + "savedObjects": Object { + "client": Object { + "bulkCreate": [MockFunction], + "bulkGet": [MockFunction], + "bulkUpdate": [MockFunction], + "create": [MockFunction], + "delete": [MockFunction], + "find": [MockFunction], + "get": [MockFunction], + "update": [MockFunction], + }, + }, + "uiSettings": Object { + "get": [MockFunction], + "get$": [MockFunction], + "getAll": [MockFunction], + "getSaved$": [MockFunction], + "getUpdate$": [MockFunction], + "getUpdateErrors$": [MockFunction], + "isCustom": [MockFunction], + "isDeclared": [MockFunction], + "isDefault": [MockFunction], + "isOverridden": [MockFunction], + "overrideLocalDefault": [MockFunction], + "remove": [MockFunction], + "set": [MockFunction], + }, + }, + "plugins": Object { + "advancedSettings": Object { + "component": Object { + "componentType": Object { + "PAGE_FOOTER_COMPONENT": "advanced_settings_page_footer", + "PAGE_SUBTITLE_COMPONENT": "advanced_settings_page_subtitle", + "PAGE_TITLE_COMPONENT": "advanced_settings_page_title", + }, + "get": [MockFunction], + }, + }, + "charts": Object { + "colors": Object { + "createColorLookupFunction": [MockFunction], + }, + "theme": Object { + "chartsDefaultTheme": Object { + "areaSeriesStyle": Object { + "area": Object { + "opacity": 0.3, + }, + "line": Object { + "strokeWidth": 2, + }, + "point": Object { + "fill": "rgba(255, 255, 255, 1)", + "radius": 3, + "strokeWidth": 2, + "visible": false, + }, + }, + "axes": Object { + "axisLineStyle": Object { + "stroke": "rgba(239, 241, 244, 1)", + }, + "axisTitleStyle": Object { + "fill": "rgba(52, 55, 65, 1)", + "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, + 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", + "fontSize": 12, + "padding": 10, + }, + "gridLineStyle": Object { + "horizontal": Object { + "dash": Array [ + 0, + 0, + ], + "opacity": 1, + "stroke": "rgba(239, 241, 244, 1)", + "strokeWidth": 1, + "visible": true, + }, + "vertical": Object { + "dash": Array [ + 4, + 4, + ], + "opacity": 1, + "stroke": "rgba(239, 241, 244, 1)", + "strokeWidth": 1, + "visible": true, + }, + }, + "tickLabelStyle": Object { + "fill": "rgba(105, 112, 125, 1)", + "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, + 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", + "fontSize": 10, + "padding": 8, + }, + "tickLineStyle": Object { + "stroke": "rgba(239, 241, 244, 1)", + "strokeWidth": 1, + "visible": false, + }, + }, + "barSeriesStyle": Object { + "displayValue": Object { + "fill": "rgba(105, 112, 125, 1)", + "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, + 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", + "fontSize": 8, + }, + }, + "chartMargins": Object { + "bottom": 0, + "left": 0, + "right": 0, + "top": 0, + }, + "colors": Object { + "defaultVizColor": "#6092C0", + "vizColors": Array [ + "#54B399", + "#6092C0", + "#D36086", + "#9170B8", + "#CA8EAE", + "#D6BF57", + "#B9A888", + "#DA8B45", + "#AA6556", + "#E7664C", + ], + }, + "crosshair": Object { + "band": Object { + "fill": "rgba(245, 247, 250, 1)", + }, + "line": Object { + "dash": Array [ + 4, + 4, + ], + "stroke": "rgba(105, 112, 125, 1)", + "strokeWidth": 1, + }, + }, + "lineSeriesStyle": Object { + "line": Object { + "strokeWidth": 2, + }, + "point": Object { + "fill": "rgba(255, 255, 255, 1)", + "radius": 3, + "strokeWidth": 2, + }, + }, + "scales": Object { + "barsPadding": 0.25, + "histogramPadding": 0.05, + }, + }, + "chartsTheme$": [MockFunction], + "useChartsTheme": [MockFunction], + }, + }, + "data": Object { + "__LEGACY": Object { + "esClient": Object { + "msearch": [MockFunction], + "search": [MockFunction], + }, + }, + "autocomplete": Object { + "getQuerySuggestions": [MockFunction], + "getValueSuggestions": [MockFunction], + "hasQuerySuggestions": [MockFunction], + }, + "fieldFormats": Object { + "deserialize": [MockFunction], + "getByFieldType": [MockFunction], + "getDefaultConfig": [MockFunction], + "getDefaultInstance": [MockFunction], + "getDefaultInstanceCacheResolver": [MockFunction], + "getDefaultInstancePlain": [MockFunction], + "getDefaultType": [MockFunction], + "getDefaultTypeName": [MockFunction], + "getInstance": [MockFunction], + "getType": [MockFunction], + "getTypeNameByEsTypes": [MockFunction], + "getTypeWithoutMetaParams": [MockFunction], + "init": [MockFunction], + "parseDefaultTypeMap": [MockFunction], + "register": [MockFunction], + }, + "getSuggestions": [MockFunction], + "indexPatterns": Object { + "get": [MockFunction], + "make": [Function], + }, + "query": Object { + "filterManager": [MockFunction], + "savedQueries": [MockFunction], + "state$": Observable { + "_isScalar": false, + }, + "timefilter": Object { + "history": Object { + "add": [MockFunction], + "get": [MockFunction], + }, + "timefilter": Object { + "calculateBounds": [MockFunction], + "createFilter": [MockFunction], + "disableAutoRefreshSelector": [MockFunction], + "disableTimeRangeSelector": [MockFunction], + "enableAutoRefreshSelector": [MockFunction], + "enableTimeRangeSelector": [MockFunction], + "getActiveBounds": [MockFunction], + "getAutoRefreshFetch$": [MockFunction], + "getBounds": [MockFunction], + "getEnabledUpdated$": [MockFunction], + "getFetch$": [MockFunction], + "getRefreshInterval": [MockFunction], + "getRefreshIntervalDefaults": [MockFunction], + "getRefreshIntervalUpdate$": [MockFunction], + "getTime": [MockFunction], + "getTimeDefaults": [MockFunction], + "getTimeUpdate$": [MockFunction], + "isAutoRefreshSelectorEnabled": [MockFunction], + "isTimeRangeSelectorEnabled": [MockFunction], + "setRefreshInterval": [MockFunction], + "setTime": [MockFunction], + }, + }, + }, + "search": Object { + "__LEGACY": Object { + "esClient": Object { + "msearch": [MockFunction], + "search": [MockFunction], + }, + }, + "search": [MockFunction], + }, + "ui": Object { + "IndexPatternSelect": [MockFunction], + "SearchBar": [MockFunction], + }, + }, + "embeddable": Object { + "getEmbeddableFactories": [MockFunction], + "getEmbeddableFactory": [MockFunction], + "registerEmbeddableFactory": [MockFunction], + }, + "expressions": Object { + "ExpressionLoader": [MockFunction], + "ExpressionRenderHandler": [MockFunction], + "ReactExpressionRenderer": [MockFunction], + "execute": [MockFunction], + "fork": [MockFunction], + "getFunction": [MockFunction], + "getFunctions": [MockFunction], + "getRenderer": [MockFunction], + "getRenderers": [MockFunction], + "getType": [MockFunction], + "getTypes": [MockFunction], + "loader": [MockFunction], + "render": [MockFunction], + "run": [MockFunction], + }, + "inspector": Object { + "isAvailable": [MockFunction], + "open": [MockFunction], + }, + "kibanaLegacy": Object { + "config": Object { + "defaultAppId": "home", + }, + "dashboardConfig": Object { + "getHideWriteControls": [MockFunction], + "turnHideWriteControlsOn": [MockFunction], + }, + "getApps": [MockFunction], + "getForwards": [MockFunction], + }, + "management": Object { + "legacy": Object {}, + "sections": Object { + "getAllSections": [MockFunction], + "getSection": [MockFunction], + "navigateToApp": [MockFunction], + }, + }, + "navigation": Object { + "ui": Object { + "TopNavMenu": [MockFunction], + }, + }, + "uiActions": Object { + "attachAction": [MockFunction], + "clear": [MockFunction], + "detachAction": [MockFunction], + "executeTriggerActions": [MockFunction], + "fork": [MockFunction], + "getTrigger": [MockFunction], + "getTriggerActions": [MockFunction], + "getTriggerCompatibleActions": [MockFunction], + "registerAction": [MockFunction], + "registerTrigger": [MockFunction], + }, + "uiMetric": Object { + "createUiStatsReporter": [Function], + }, + "xsrfToken": "kbn-xsrf-token", + }, + } } - } - /> - </ContextProvider> -</div> + > + <Component + indexPattern={ + Object { + "fields": Array [], + "title": "the-index-pattern-title", + } + } + query={ + Object { + "query_string": Object { + "default_operator": "AND", + "query": "the-query", + }, + } + } + /> + </ContextProvider> + </HashRouter> + </mockConstructor> +</AuthorizationProvider> `; diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/expanded_row.test.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/expanded_row.test.tsx index bfde8f171874ed..ddd1a1482fd357 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/expanded_row.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/expanded_row.test.tsx @@ -39,8 +39,6 @@ describe('Transform: <ExpandedRow />', () => { }, }; - // Using a wrapping <div> element because shallow() would fail - // with the Provider being the outer most component. const wrapper = shallow(<ExpandedRow {...props} />); expect(wrapper).toMatchSnapshot(); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.test.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.test.tsx index 16949425284fd6..ec797357414271 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.test.tsx @@ -7,8 +7,10 @@ import { shallow } from 'enzyme'; import React from 'react'; -import { KibanaContext } from '../../../../lib/kibana'; +import { createPublicShim } from '../../../../../shim'; +import { getAppProviders } from '../../../../app_dependencies'; import { getPivotQuery } from '../../../../common'; +import { SearchItems } from '../../../../hooks/use_search_items'; import { SourceIndexPreview } from './source_index_preview'; @@ -18,22 +20,24 @@ jest.mock('react', () => { return { ...r, memo: (x: any) => x }; }); +jest.mock('ui/new_platform'); jest.mock('../../../../../shared_imports'); describe('Transform: <SourceIndexPreview />', () => { test('Minimal initialization', () => { const props = { + indexPattern: { + title: 'the-index-pattern-title', + fields: [] as any[], + } as SearchItems['indexPattern'], query: getPivotQuery('the-query'), }; - // Using a wrapping <div> element because shallow() would fail - // with the Provider being the outer most component. + const Providers = getAppProviders(createPublicShim()); const wrapper = shallow( - <div> - <KibanaContext.Provider value={{ initialized: false }}> - <SourceIndexPreview {...props} /> - </KibanaContext.Provider> - </div> + <Providers> + <SourceIndexPreview {...props} /> + </Providers> ); expect(wrapper).toMatchSnapshot(); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.tsx index 0c9dcfb9b1c04d..76ed12ff772f5b 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.tsx @@ -22,14 +22,13 @@ import { import { getNestedProperty } from '../../../../../../common/utils/object_utils'; -import { useCurrentIndexPattern } from '../../../../lib/kibana'; - import { euiDataGridStyle, euiDataGridToolbarSettings, EsFieldName, PivotQuery, } from '../../../../common'; +import { SearchItems } from '../../../../hooks/use_search_items'; import { getSourceIndexDevConsoleStatement } from './common'; import { SOURCE_INDEX_STATUS, useSourceIndexData } from './use_source_index_data'; @@ -49,13 +48,13 @@ const SourceIndexPreviewTitle: React.FC<SourceIndexPreviewTitle> = ({ indexPatte ); interface Props { + indexPattern: SearchItems['indexPattern']; query: PivotQuery; } const defaultPagination = { pageIndex: 0, pageSize: 5 }; -export const SourceIndexPreview: React.FC<Props> = React.memo(({ query }) => { - const indexPattern = useCurrentIndexPattern(); +export const SourceIndexPreview: React.FC<Props> = React.memo(({ indexPattern, query }) => { const allFields = indexPattern.fields.map(f => f.name); const indexPatternFields: string[] = allFields.filter(f => { if (indexPattern.metaFields.includes(f)) { diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/__snapshots__/step_create_form.test.tsx.snap b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/__snapshots__/step_create_form.test.tsx.snap index e034badea9b11f..db4ff0c1a99ae1 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/__snapshots__/step_create_form.test.tsx.snap +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/__snapshots__/step_create_form.test.tsx.snap @@ -1,27 +1,581 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Transform: <StepCreateForm /> Minimal initialization 1`] = ` -<div> - <ContextProvider - value={ - Object { - "initialized": false, - } - } - > - <Component - createIndexPattern={false} - onChange={[Function]} - overrides={ - Object { - "created": false, - "indexPatternId": undefined, - "started": false, +<AuthorizationProvider + privilegesEndpoint="/api/transform/privileges" +> + <mockConstructor> + <HashRouter> + <ContextProvider + value={ + Object { + "core": Object { + "application": Object { + "capabilities": Object { + "catalogue": Object {}, + "management": Object {}, + "navLinks": Object {}, + }, + "currentAppId$": Observable { + "_isScalar": false, + "source": Subject { + "_isScalar": false, + "closed": false, + "hasError": false, + "isStopped": false, + "observers": Array [], + "thrownError": null, + }, + }, + "getUrlForApp": [MockFunction], + "navigateToApp": [MockFunction], + "registerMountContext": [MockFunction], + }, + "chrome": Object { + "addApplicationClass": [MockFunction], + "docTitle": Object { + "__legacy": Object { + "setBaseTitle": [MockFunction], + }, + "change": [MockFunction], + "reset": [MockFunction], + }, + "getApplicationClasses$": [MockFunction], + "getBadge$": [MockFunction], + "getBrand$": [MockFunction], + "getBreadcrumbs$": [MockFunction], + "getHeaderComponent": [MockFunction], + "getHelpExtension$": [MockFunction], + "getIsCollapsed$": [MockFunction], + "getIsVisible$": [MockFunction], + "navControls": Object { + "getLeft$": [MockFunction], + "getRight$": [MockFunction], + "registerLeft": [MockFunction], + "registerRight": [MockFunction], + }, + "navLinks": Object { + "enableForcedAppSwitcherNavigation": [MockFunction], + "get": [MockFunction], + "getAll": [MockFunction], + "getForceAppSwitcherNavigation$": [MockFunction], + "getNavLinks$": [MockFunction], + "has": [MockFunction], + "showOnly": [MockFunction], + "update": [MockFunction], + }, + "recentlyAccessed": Object { + "add": [MockFunction], + "get": [MockFunction], + "get$": [MockFunction], + }, + "removeApplicationClass": [MockFunction], + "setAppTitle": [MockFunction], + "setBadge": [MockFunction], + "setBrand": [MockFunction], + "setBreadcrumbs": [MockFunction], + "setHelpExtension": [MockFunction], + "setHelpSupportUrl": [MockFunction], + "setIsCollapsed": [MockFunction], + "setIsVisible": [MockFunction], + }, + "docLinks": Object { + "DOC_LINK_VERSION": "mocked-test-branch", + "ELASTIC_WEBSITE_URL": "https://www.elastic.co/", + "links": Object { + "aggs": Object { + "avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-avg-aggregation.html", + "avg_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-avg-bucket-aggregation.html", + "cardinality": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-cardinality-aggregation.html", + "count": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-valuecount-aggregation.html", + "cumulative_sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", + "date_histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-datehistogram-aggregation.html", + "date_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-daterange-aggregation.html", + "derivative": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-derivative-aggregation.html", + "filter": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filter-aggregation.html", + "filters": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filters-aggregation.html", + "geo_bounds": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geobounds-aggregation.html", + "geo_centroid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geocentroid-aggregation.html", + "geohash_grid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-geohashgrid-aggregation.html", + "histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-histogram-aggregation.html", + "ip_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-iprange-aggregation.html", + "max": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-max-aggregation.html", + "max_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-max-bucket-aggregation.html", + "median": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-aggregation.html", + "min": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-min-aggregation.html", + "min_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-min-bucket-aggregation.html", + "moving_avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-movavg-aggregation.html", + "percentile_ranks": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-rank-aggregation.html", + "range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-range-aggregation.html", + "serial_diff": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-serialdiff-aggregation.html", + "significant_terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-significantterms-aggregation.html", + "std_dev": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-extendedstats-aggregation.html", + "sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", + "sum_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-sum-bucket-aggregation.html", + "terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-terms-aggregation.html", + "top_hits": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-top-hits-aggregation.html", + }, + "auditbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/auditbeat/mocked-test-branch", + }, + "date": Object { + "dateMath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/common-options.html#date-math", + }, + "filebeat": Object { + "base": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch", + "configuration": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-configuration.html", + "elasticsearchOutput": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/elasticsearch-output.html", + "exportedFields": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/exported-fields.html", + "installation": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-installation.html", + "startup": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-starting.html", + }, + "functionbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/functionbeat/mocked-test-branch", + }, + "heartbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/heartbeat/mocked-test-branch", + }, + "indexPatterns": Object { + "introduction": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index-patterns.html", + "loadingData": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/tutorial-load-dataset.html", + }, + "kibana": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index.html", + "logstash": Object { + "base": "https://www.elastic.co/guide/en/logstash/mocked-test-branch", + }, + "management": Object { + "dashboardSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-dashboard-settings", + "kibanaSearchSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-search-settings", + }, + "metricbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/metricbeat/mocked-test-branch", + }, + "query": Object { + "kueryQuerySyntax": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/kuery-query.html", + "luceneQuerySyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl-query-string-query.html#query-string-syntax", + "queryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", + }, + "scriptedFields": Object { + "luceneExpressions": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-expression.html", + "painless": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless.html", + "painlessApi": "https://www.elastic.co/guide/en/elasticsearch/painless/mocked-test-branch/painless-api-reference.html", + "painlessSyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless-syntax.html", + "scriptAggs": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations.html#_values_source", + "scriptFields": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-request-script-fields.html", + }, + "siem": Object { + "gettingStarted": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/install-siem.html", + "guide": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/index.html", + }, + "winlogbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/winlogbeat/mocked-test-branch", + }, + }, + }, + "docTitle": Object { + "change": [Function], + }, + "documentation": Object { + "esDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/", + "esIndicesCreateIndex": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/indices-create-index.html#indices-create-index", + "esPluginDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/plugins/mocked-test-branch/", + "esQueryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", + "esStackOverviewDocBasePath": "https://www.elastic.co/guide/en/elastic-stack-overview/mocked-test-branch/", + "esTransform": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/transforms.html", + "esTransformPivot": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/put-transform.html#put-transform-request-body", + "mlDocBasePath": "https://www.elastic.co/guide/en/machine-learning/mocked-test-branch/", + }, + "fatalErrors": Object { + "add": [MockFunction], + "get$": [MockFunction], + }, + "http": Object { + "addLoadingCountSource": [MockFunction], + "anonymousPaths": Object { + "isAnonymous": [MockFunction], + "register": [MockFunction], + }, + "basePath": BasePath { + "basePath": "", + "get": [Function], + "prepend": [Function], + "remove": [Function], + "serverBasePath": "", + }, + "delete": [MockFunction], + "fetch": [MockFunction], + "get": [MockFunction], + "getLoadingCount$": [MockFunction], + "head": [MockFunction], + "intercept": [MockFunction], + "options": [MockFunction], + "patch": [MockFunction], + "post": [MockFunction], + "put": [MockFunction], + }, + "i18n": Object { + "Context": [MockFunction], + }, + "injectedMetadata": Object { + "getInjectedVar": [MockFunction], + }, + "notifications": Object { + "toasts": Object { + "add": [MockFunction], + "addDanger": [MockFunction], + "addError": [MockFunction], + "addSuccess": [MockFunction], + "addWarning": [MockFunction], + "get$": [MockFunction], + "remove": [MockFunction], + }, + }, + "overlays": Object { + "banners": Object { + "add": [MockFunction], + "get$": [MockFunction], + "getComponent": [MockFunction], + "remove": [MockFunction], + "replace": [MockFunction], + }, + "openConfirm": [MockFunction], + "openFlyout": [MockFunction], + "openModal": [MockFunction], + }, + "savedObjects": Object { + "client": Object { + "bulkCreate": [MockFunction], + "bulkGet": [MockFunction], + "bulkUpdate": [MockFunction], + "create": [MockFunction], + "delete": [MockFunction], + "find": [MockFunction], + "get": [MockFunction], + "update": [MockFunction], + }, + }, + "uiSettings": Object { + "get": [MockFunction], + "get$": [MockFunction], + "getAll": [MockFunction], + "getSaved$": [MockFunction], + "getUpdate$": [MockFunction], + "getUpdateErrors$": [MockFunction], + "isCustom": [MockFunction], + "isDeclared": [MockFunction], + "isDefault": [MockFunction], + "isOverridden": [MockFunction], + "overrideLocalDefault": [MockFunction], + "remove": [MockFunction], + "set": [MockFunction], + }, + }, + "plugins": Object { + "advancedSettings": Object { + "component": Object { + "componentType": Object { + "PAGE_FOOTER_COMPONENT": "advanced_settings_page_footer", + "PAGE_SUBTITLE_COMPONENT": "advanced_settings_page_subtitle", + "PAGE_TITLE_COMPONENT": "advanced_settings_page_title", + }, + "get": [MockFunction], + }, + }, + "charts": Object { + "colors": Object { + "createColorLookupFunction": [MockFunction], + }, + "theme": Object { + "chartsDefaultTheme": Object { + "areaSeriesStyle": Object { + "area": Object { + "opacity": 0.3, + }, + "line": Object { + "strokeWidth": 2, + }, + "point": Object { + "fill": "rgba(255, 255, 255, 1)", + "radius": 3, + "strokeWidth": 2, + "visible": false, + }, + }, + "axes": Object { + "axisLineStyle": Object { + "stroke": "rgba(239, 241, 244, 1)", + }, + "axisTitleStyle": Object { + "fill": "rgba(52, 55, 65, 1)", + "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, + 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", + "fontSize": 12, + "padding": 10, + }, + "gridLineStyle": Object { + "horizontal": Object { + "dash": Array [ + 0, + 0, + ], + "opacity": 1, + "stroke": "rgba(239, 241, 244, 1)", + "strokeWidth": 1, + "visible": true, + }, + "vertical": Object { + "dash": Array [ + 4, + 4, + ], + "opacity": 1, + "stroke": "rgba(239, 241, 244, 1)", + "strokeWidth": 1, + "visible": true, + }, + }, + "tickLabelStyle": Object { + "fill": "rgba(105, 112, 125, 1)", + "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, + 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", + "fontSize": 10, + "padding": 8, + }, + "tickLineStyle": Object { + "stroke": "rgba(239, 241, 244, 1)", + "strokeWidth": 1, + "visible": false, + }, + }, + "barSeriesStyle": Object { + "displayValue": Object { + "fill": "rgba(105, 112, 125, 1)", + "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, + 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", + "fontSize": 8, + }, + }, + "chartMargins": Object { + "bottom": 0, + "left": 0, + "right": 0, + "top": 0, + }, + "colors": Object { + "defaultVizColor": "#6092C0", + "vizColors": Array [ + "#54B399", + "#6092C0", + "#D36086", + "#9170B8", + "#CA8EAE", + "#D6BF57", + "#B9A888", + "#DA8B45", + "#AA6556", + "#E7664C", + ], + }, + "crosshair": Object { + "band": Object { + "fill": "rgba(245, 247, 250, 1)", + }, + "line": Object { + "dash": Array [ + 4, + 4, + ], + "stroke": "rgba(105, 112, 125, 1)", + "strokeWidth": 1, + }, + }, + "lineSeriesStyle": Object { + "line": Object { + "strokeWidth": 2, + }, + "point": Object { + "fill": "rgba(255, 255, 255, 1)", + "radius": 3, + "strokeWidth": 2, + }, + }, + "scales": Object { + "barsPadding": 0.25, + "histogramPadding": 0.05, + }, + }, + "chartsTheme$": [MockFunction], + "useChartsTheme": [MockFunction], + }, + }, + "data": Object { + "__LEGACY": Object { + "esClient": Object { + "msearch": [MockFunction], + "search": [MockFunction], + }, + }, + "autocomplete": Object { + "getQuerySuggestions": [MockFunction], + "getValueSuggestions": [MockFunction], + "hasQuerySuggestions": [MockFunction], + }, + "fieldFormats": Object { + "deserialize": [MockFunction], + "getByFieldType": [MockFunction], + "getDefaultConfig": [MockFunction], + "getDefaultInstance": [MockFunction], + "getDefaultInstanceCacheResolver": [MockFunction], + "getDefaultInstancePlain": [MockFunction], + "getDefaultType": [MockFunction], + "getDefaultTypeName": [MockFunction], + "getInstance": [MockFunction], + "getType": [MockFunction], + "getTypeNameByEsTypes": [MockFunction], + "getTypeWithoutMetaParams": [MockFunction], + "init": [MockFunction], + "parseDefaultTypeMap": [MockFunction], + "register": [MockFunction], + }, + "getSuggestions": [MockFunction], + "indexPatterns": Object { + "get": [MockFunction], + "make": [Function], + }, + "query": Object { + "filterManager": [MockFunction], + "savedQueries": [MockFunction], + "state$": Observable { + "_isScalar": false, + }, + "timefilter": Object { + "history": Object { + "add": [MockFunction], + "get": [MockFunction], + }, + "timefilter": Object { + "calculateBounds": [MockFunction], + "createFilter": [MockFunction], + "disableAutoRefreshSelector": [MockFunction], + "disableTimeRangeSelector": [MockFunction], + "enableAutoRefreshSelector": [MockFunction], + "enableTimeRangeSelector": [MockFunction], + "getActiveBounds": [MockFunction], + "getAutoRefreshFetch$": [MockFunction], + "getBounds": [MockFunction], + "getEnabledUpdated$": [MockFunction], + "getFetch$": [MockFunction], + "getRefreshInterval": [MockFunction], + "getRefreshIntervalDefaults": [MockFunction], + "getRefreshIntervalUpdate$": [MockFunction], + "getTime": [MockFunction], + "getTimeDefaults": [MockFunction], + "getTimeUpdate$": [MockFunction], + "isAutoRefreshSelectorEnabled": [MockFunction], + "isTimeRangeSelectorEnabled": [MockFunction], + "setRefreshInterval": [MockFunction], + "setTime": [MockFunction], + }, + }, + }, + "search": Object { + "__LEGACY": Object { + "esClient": Object { + "msearch": [MockFunction], + "search": [MockFunction], + }, + }, + "search": [MockFunction], + }, + "ui": Object { + "IndexPatternSelect": [MockFunction], + "SearchBar": [MockFunction], + }, + }, + "embeddable": Object { + "getEmbeddableFactories": [MockFunction], + "getEmbeddableFactory": [MockFunction], + "registerEmbeddableFactory": [MockFunction], + }, + "expressions": Object { + "ExpressionLoader": [MockFunction], + "ExpressionRenderHandler": [MockFunction], + "ReactExpressionRenderer": [MockFunction], + "execute": [MockFunction], + "fork": [MockFunction], + "getFunction": [MockFunction], + "getFunctions": [MockFunction], + "getRenderer": [MockFunction], + "getRenderers": [MockFunction], + "getType": [MockFunction], + "getTypes": [MockFunction], + "loader": [MockFunction], + "render": [MockFunction], + "run": [MockFunction], + }, + "inspector": Object { + "isAvailable": [MockFunction], + "open": [MockFunction], + }, + "kibanaLegacy": Object { + "config": Object { + "defaultAppId": "home", + }, + "dashboardConfig": Object { + "getHideWriteControls": [MockFunction], + "turnHideWriteControlsOn": [MockFunction], + }, + "getApps": [MockFunction], + "getForwards": [MockFunction], + }, + "management": Object { + "legacy": Object {}, + "sections": Object { + "getAllSections": [MockFunction], + "getSection": [MockFunction], + "navigateToApp": [MockFunction], + }, + }, + "navigation": Object { + "ui": Object { + "TopNavMenu": [MockFunction], + }, + }, + "uiActions": Object { + "attachAction": [MockFunction], + "clear": [MockFunction], + "detachAction": [MockFunction], + "executeTriggerActions": [MockFunction], + "fork": [MockFunction], + "getTrigger": [MockFunction], + "getTriggerActions": [MockFunction], + "getTriggerCompatibleActions": [MockFunction], + "registerAction": [MockFunction], + "registerTrigger": [MockFunction], + }, + "uiMetric": Object { + "createUiStatsReporter": [Function], + }, + "xsrfToken": "kbn-xsrf-token", + }, + } } - } - transformConfig={Object {}} - transformId="the-transform-id" - /> - </ContextProvider> -</div> + > + <Component + createIndexPattern={false} + onChange={[Function]} + overrides={ + Object { + "created": false, + "indexPatternId": undefined, + "started": false, + } + } + transformConfig={Object {}} + transformId="the-transform-id" + /> + </ContextProvider> + </HashRouter> + </mockConstructor> +</AuthorizationProvider> `; diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.test.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.test.tsx index 625c545ee8c46a..80968fd6e28877 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.test.tsx @@ -7,7 +7,8 @@ import { shallow } from 'enzyme'; import React from 'react'; -import { KibanaContext } from '../../../../lib/kibana'; +import { createPublicShim } from '../../../../../shim'; +import { getAppProviders } from '../../../../app_dependencies'; import { StepCreateForm } from './step_create_form'; @@ -17,6 +18,7 @@ jest.mock('react', () => { return { ...r, memo: (x: any) => x }; }); +jest.mock('ui/new_platform'); jest.mock('../../../../../shared_imports'); describe('Transform: <StepCreateForm />', () => { @@ -29,14 +31,11 @@ describe('Transform: <StepCreateForm />', () => { onChange() {}, }; - // Using a wrapping <div> element because shallow() would fail - // with the Provider being the outer most component. + const Providers = getAppProviders(createPublicShim()); const wrapper = shallow( - <div> - <KibanaContext.Provider value={{ initialized: false }}> - <StepCreateForm {...props} /> - </KibanaContext.Provider> - </div> + <Providers> + <StepCreateForm {...props} /> + </Providers> ); expect(wrapper).toMatchSnapshot(); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.tsx index bbeb97b6b81134..4198c2ea0260d7 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.tsx @@ -34,7 +34,6 @@ import { PROGRESS_REFRESH_INTERVAL_MS } from '../../../../../../common/constants import { getTransformProgress, getDiscoverUrl } from '../../../../common'; import { useApi } from '../../../../hooks/use_api'; -import { useKibanaContext } from '../../../../lib/kibana'; import { useAppDependencies, useToastNotifications } from '../../../../app_dependencies'; import { RedirectToTransformManagement } from '../../../../common/navigation'; import { ToastNotificationText } from '../../../../components'; @@ -76,7 +75,8 @@ export const StepCreateForm: FC<Props> = React.memo( ); const deps = useAppDependencies(); - const kibanaContext = useKibanaContext(); + const indexPatterns = deps.plugins.data.indexPatterns; + const uiSettings = deps.core.uiSettings; const toastNotifications = useToastNotifications(); useEffect(() => { @@ -176,7 +176,7 @@ export const StepCreateForm: FC<Props> = React.memo( const indexPatternName = transformConfig.dest.index; try { - const newIndexPattern = await kibanaContext.indexPatterns.make(); + const newIndexPattern = await indexPatterns.make(); Object.assign(newIndexPattern, { id: '', @@ -200,8 +200,8 @@ export const StepCreateForm: FC<Props> = React.memo( // check if there's a default index pattern, if not, // set the newly created one as the default index pattern. - if (!kibanaContext.kibanaConfig.get('defaultIndex')) { - await kibanaContext.kibanaConfig.set('defaultIndex', id); + if (!uiSettings.get('defaultIndex')) { + await uiSettings.set('defaultIndex', id); } toastNotifications.addSuccess( diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/pivot_preview.test.tsx.snap b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/pivot_preview.test.tsx.snap index a7da172a67b8ae..bc0d983c6e022d 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/pivot_preview.test.tsx.snap +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/pivot_preview.test.tsx.snap @@ -1,44 +1,604 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Transform: <PivotPreview /> Minimal initialization 1`] = ` -<div> - <ContextProvider - value={ - Object { - "initialized": false, - } - } - > - <Component - aggs={ - Object { - "the-agg-name": Object { - "agg": "avg", - "aggName": "the-group-by-agg-name", - "dropDownName": "the-group-by-drop-down-name", - "field": "the-agg-field", - }, +<AuthorizationProvider + privilegesEndpoint="/api/transform/privileges" +> + <mockConstructor> + <HashRouter> + <ContextProvider + value={ + Object { + "core": Object { + "application": Object { + "capabilities": Object { + "catalogue": Object {}, + "management": Object {}, + "navLinks": Object {}, + }, + "currentAppId$": Observable { + "_isScalar": false, + "source": Subject { + "_isScalar": false, + "closed": false, + "hasError": false, + "isStopped": false, + "observers": Array [], + "thrownError": null, + }, + }, + "getUrlForApp": [MockFunction], + "navigateToApp": [MockFunction], + "registerMountContext": [MockFunction], + }, + "chrome": Object { + "addApplicationClass": [MockFunction], + "docTitle": Object { + "__legacy": Object { + "setBaseTitle": [MockFunction], + }, + "change": [MockFunction], + "reset": [MockFunction], + }, + "getApplicationClasses$": [MockFunction], + "getBadge$": [MockFunction], + "getBrand$": [MockFunction], + "getBreadcrumbs$": [MockFunction], + "getHeaderComponent": [MockFunction], + "getHelpExtension$": [MockFunction], + "getIsCollapsed$": [MockFunction], + "getIsVisible$": [MockFunction], + "navControls": Object { + "getLeft$": [MockFunction], + "getRight$": [MockFunction], + "registerLeft": [MockFunction], + "registerRight": [MockFunction], + }, + "navLinks": Object { + "enableForcedAppSwitcherNavigation": [MockFunction], + "get": [MockFunction], + "getAll": [MockFunction], + "getForceAppSwitcherNavigation$": [MockFunction], + "getNavLinks$": [MockFunction], + "has": [MockFunction], + "showOnly": [MockFunction], + "update": [MockFunction], + }, + "recentlyAccessed": Object { + "add": [MockFunction], + "get": [MockFunction], + "get$": [MockFunction], + }, + "removeApplicationClass": [MockFunction], + "setAppTitle": [MockFunction], + "setBadge": [MockFunction], + "setBrand": [MockFunction], + "setBreadcrumbs": [MockFunction], + "setHelpExtension": [MockFunction], + "setHelpSupportUrl": [MockFunction], + "setIsCollapsed": [MockFunction], + "setIsVisible": [MockFunction], + }, + "docLinks": Object { + "DOC_LINK_VERSION": "mocked-test-branch", + "ELASTIC_WEBSITE_URL": "https://www.elastic.co/", + "links": Object { + "aggs": Object { + "avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-avg-aggregation.html", + "avg_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-avg-bucket-aggregation.html", + "cardinality": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-cardinality-aggregation.html", + "count": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-valuecount-aggregation.html", + "cumulative_sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", + "date_histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-datehistogram-aggregation.html", + "date_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-daterange-aggregation.html", + "derivative": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-derivative-aggregation.html", + "filter": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filter-aggregation.html", + "filters": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filters-aggregation.html", + "geo_bounds": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geobounds-aggregation.html", + "geo_centroid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geocentroid-aggregation.html", + "geohash_grid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-geohashgrid-aggregation.html", + "histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-histogram-aggregation.html", + "ip_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-iprange-aggregation.html", + "max": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-max-aggregation.html", + "max_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-max-bucket-aggregation.html", + "median": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-aggregation.html", + "min": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-min-aggregation.html", + "min_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-min-bucket-aggregation.html", + "moving_avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-movavg-aggregation.html", + "percentile_ranks": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-rank-aggregation.html", + "range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-range-aggregation.html", + "serial_diff": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-serialdiff-aggregation.html", + "significant_terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-significantterms-aggregation.html", + "std_dev": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-extendedstats-aggregation.html", + "sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", + "sum_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-sum-bucket-aggregation.html", + "terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-terms-aggregation.html", + "top_hits": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-top-hits-aggregation.html", + }, + "auditbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/auditbeat/mocked-test-branch", + }, + "date": Object { + "dateMath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/common-options.html#date-math", + }, + "filebeat": Object { + "base": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch", + "configuration": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-configuration.html", + "elasticsearchOutput": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/elasticsearch-output.html", + "exportedFields": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/exported-fields.html", + "installation": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-installation.html", + "startup": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-starting.html", + }, + "functionbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/functionbeat/mocked-test-branch", + }, + "heartbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/heartbeat/mocked-test-branch", + }, + "indexPatterns": Object { + "introduction": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index-patterns.html", + "loadingData": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/tutorial-load-dataset.html", + }, + "kibana": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index.html", + "logstash": Object { + "base": "https://www.elastic.co/guide/en/logstash/mocked-test-branch", + }, + "management": Object { + "dashboardSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-dashboard-settings", + "kibanaSearchSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-search-settings", + }, + "metricbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/metricbeat/mocked-test-branch", + }, + "query": Object { + "kueryQuerySyntax": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/kuery-query.html", + "luceneQuerySyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl-query-string-query.html#query-string-syntax", + "queryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", + }, + "scriptedFields": Object { + "luceneExpressions": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-expression.html", + "painless": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless.html", + "painlessApi": "https://www.elastic.co/guide/en/elasticsearch/painless/mocked-test-branch/painless-api-reference.html", + "painlessSyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless-syntax.html", + "scriptAggs": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations.html#_values_source", + "scriptFields": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-request-script-fields.html", + }, + "siem": Object { + "gettingStarted": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/install-siem.html", + "guide": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/index.html", + }, + "winlogbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/winlogbeat/mocked-test-branch", + }, + }, + }, + "docTitle": Object { + "change": [Function], + }, + "documentation": Object { + "esDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/", + "esIndicesCreateIndex": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/indices-create-index.html#indices-create-index", + "esPluginDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/plugins/mocked-test-branch/", + "esQueryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", + "esStackOverviewDocBasePath": "https://www.elastic.co/guide/en/elastic-stack-overview/mocked-test-branch/", + "esTransform": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/transforms.html", + "esTransformPivot": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/put-transform.html#put-transform-request-body", + "mlDocBasePath": "https://www.elastic.co/guide/en/machine-learning/mocked-test-branch/", + }, + "fatalErrors": Object { + "add": [MockFunction], + "get$": [MockFunction], + }, + "http": Object { + "addLoadingCountSource": [MockFunction], + "anonymousPaths": Object { + "isAnonymous": [MockFunction], + "register": [MockFunction], + }, + "basePath": BasePath { + "basePath": "", + "get": [Function], + "prepend": [Function], + "remove": [Function], + "serverBasePath": "", + }, + "delete": [MockFunction], + "fetch": [MockFunction], + "get": [MockFunction], + "getLoadingCount$": [MockFunction], + "head": [MockFunction], + "intercept": [MockFunction], + "options": [MockFunction], + "patch": [MockFunction], + "post": [MockFunction], + "put": [MockFunction], + }, + "i18n": Object { + "Context": [MockFunction], + }, + "injectedMetadata": Object { + "getInjectedVar": [MockFunction], + }, + "notifications": Object { + "toasts": Object { + "add": [MockFunction], + "addDanger": [MockFunction], + "addError": [MockFunction], + "addSuccess": [MockFunction], + "addWarning": [MockFunction], + "get$": [MockFunction], + "remove": [MockFunction], + }, + }, + "overlays": Object { + "banners": Object { + "add": [MockFunction], + "get$": [MockFunction], + "getComponent": [MockFunction], + "remove": [MockFunction], + "replace": [MockFunction], + }, + "openConfirm": [MockFunction], + "openFlyout": [MockFunction], + "openModal": [MockFunction], + }, + "savedObjects": Object { + "client": Object { + "bulkCreate": [MockFunction], + "bulkGet": [MockFunction], + "bulkUpdate": [MockFunction], + "create": [MockFunction], + "delete": [MockFunction], + "find": [MockFunction], + "get": [MockFunction], + "update": [MockFunction], + }, + }, + "uiSettings": Object { + "get": [MockFunction], + "get$": [MockFunction], + "getAll": [MockFunction], + "getSaved$": [MockFunction], + "getUpdate$": [MockFunction], + "getUpdateErrors$": [MockFunction], + "isCustom": [MockFunction], + "isDeclared": [MockFunction], + "isDefault": [MockFunction], + "isOverridden": [MockFunction], + "overrideLocalDefault": [MockFunction], + "remove": [MockFunction], + "set": [MockFunction], + }, + }, + "plugins": Object { + "advancedSettings": Object { + "component": Object { + "componentType": Object { + "PAGE_FOOTER_COMPONENT": "advanced_settings_page_footer", + "PAGE_SUBTITLE_COMPONENT": "advanced_settings_page_subtitle", + "PAGE_TITLE_COMPONENT": "advanced_settings_page_title", + }, + "get": [MockFunction], + }, + }, + "charts": Object { + "colors": Object { + "createColorLookupFunction": [MockFunction], + }, + "theme": Object { + "chartsDefaultTheme": Object { + "areaSeriesStyle": Object { + "area": Object { + "opacity": 0.3, + }, + "line": Object { + "strokeWidth": 2, + }, + "point": Object { + "fill": "rgba(255, 255, 255, 1)", + "radius": 3, + "strokeWidth": 2, + "visible": false, + }, + }, + "axes": Object { + "axisLineStyle": Object { + "stroke": "rgba(239, 241, 244, 1)", + }, + "axisTitleStyle": Object { + "fill": "rgba(52, 55, 65, 1)", + "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, + 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", + "fontSize": 12, + "padding": 10, + }, + "gridLineStyle": Object { + "horizontal": Object { + "dash": Array [ + 0, + 0, + ], + "opacity": 1, + "stroke": "rgba(239, 241, 244, 1)", + "strokeWidth": 1, + "visible": true, + }, + "vertical": Object { + "dash": Array [ + 4, + 4, + ], + "opacity": 1, + "stroke": "rgba(239, 241, 244, 1)", + "strokeWidth": 1, + "visible": true, + }, + }, + "tickLabelStyle": Object { + "fill": "rgba(105, 112, 125, 1)", + "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, + 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", + "fontSize": 10, + "padding": 8, + }, + "tickLineStyle": Object { + "stroke": "rgba(239, 241, 244, 1)", + "strokeWidth": 1, + "visible": false, + }, + }, + "barSeriesStyle": Object { + "displayValue": Object { + "fill": "rgba(105, 112, 125, 1)", + "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, + 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", + "fontSize": 8, + }, + }, + "chartMargins": Object { + "bottom": 0, + "left": 0, + "right": 0, + "top": 0, + }, + "colors": Object { + "defaultVizColor": "#6092C0", + "vizColors": Array [ + "#54B399", + "#6092C0", + "#D36086", + "#9170B8", + "#CA8EAE", + "#D6BF57", + "#B9A888", + "#DA8B45", + "#AA6556", + "#E7664C", + ], + }, + "crosshair": Object { + "band": Object { + "fill": "rgba(245, 247, 250, 1)", + }, + "line": Object { + "dash": Array [ + 4, + 4, + ], + "stroke": "rgba(105, 112, 125, 1)", + "strokeWidth": 1, + }, + }, + "lineSeriesStyle": Object { + "line": Object { + "strokeWidth": 2, + }, + "point": Object { + "fill": "rgba(255, 255, 255, 1)", + "radius": 3, + "strokeWidth": 2, + }, + }, + "scales": Object { + "barsPadding": 0.25, + "histogramPadding": 0.05, + }, + }, + "chartsTheme$": [MockFunction], + "useChartsTheme": [MockFunction], + }, + }, + "data": Object { + "__LEGACY": Object { + "esClient": Object { + "msearch": [MockFunction], + "search": [MockFunction], + }, + }, + "autocomplete": Object { + "getQuerySuggestions": [MockFunction], + "getValueSuggestions": [MockFunction], + "hasQuerySuggestions": [MockFunction], + }, + "fieldFormats": Object { + "deserialize": [MockFunction], + "getByFieldType": [MockFunction], + "getDefaultConfig": [MockFunction], + "getDefaultInstance": [MockFunction], + "getDefaultInstanceCacheResolver": [MockFunction], + "getDefaultInstancePlain": [MockFunction], + "getDefaultType": [MockFunction], + "getDefaultTypeName": [MockFunction], + "getInstance": [MockFunction], + "getType": [MockFunction], + "getTypeNameByEsTypes": [MockFunction], + "getTypeWithoutMetaParams": [MockFunction], + "init": [MockFunction], + "parseDefaultTypeMap": [MockFunction], + "register": [MockFunction], + }, + "getSuggestions": [MockFunction], + "indexPatterns": Object { + "get": [MockFunction], + "make": [Function], + }, + "query": Object { + "filterManager": [MockFunction], + "savedQueries": [MockFunction], + "state$": Observable { + "_isScalar": false, + }, + "timefilter": Object { + "history": Object { + "add": [MockFunction], + "get": [MockFunction], + }, + "timefilter": Object { + "calculateBounds": [MockFunction], + "createFilter": [MockFunction], + "disableAutoRefreshSelector": [MockFunction], + "disableTimeRangeSelector": [MockFunction], + "enableAutoRefreshSelector": [MockFunction], + "enableTimeRangeSelector": [MockFunction], + "getActiveBounds": [MockFunction], + "getAutoRefreshFetch$": [MockFunction], + "getBounds": [MockFunction], + "getEnabledUpdated$": [MockFunction], + "getFetch$": [MockFunction], + "getRefreshInterval": [MockFunction], + "getRefreshIntervalDefaults": [MockFunction], + "getRefreshIntervalUpdate$": [MockFunction], + "getTime": [MockFunction], + "getTimeDefaults": [MockFunction], + "getTimeUpdate$": [MockFunction], + "isAutoRefreshSelectorEnabled": [MockFunction], + "isTimeRangeSelectorEnabled": [MockFunction], + "setRefreshInterval": [MockFunction], + "setTime": [MockFunction], + }, + }, + }, + "search": Object { + "__LEGACY": Object { + "esClient": Object { + "msearch": [MockFunction], + "search": [MockFunction], + }, + }, + "search": [MockFunction], + }, + "ui": Object { + "IndexPatternSelect": [MockFunction], + "SearchBar": [MockFunction], + }, + }, + "embeddable": Object { + "getEmbeddableFactories": [MockFunction], + "getEmbeddableFactory": [MockFunction], + "registerEmbeddableFactory": [MockFunction], + }, + "expressions": Object { + "ExpressionLoader": [MockFunction], + "ExpressionRenderHandler": [MockFunction], + "ReactExpressionRenderer": [MockFunction], + "execute": [MockFunction], + "fork": [MockFunction], + "getFunction": [MockFunction], + "getFunctions": [MockFunction], + "getRenderer": [MockFunction], + "getRenderers": [MockFunction], + "getType": [MockFunction], + "getTypes": [MockFunction], + "loader": [MockFunction], + "render": [MockFunction], + "run": [MockFunction], + }, + "inspector": Object { + "isAvailable": [MockFunction], + "open": [MockFunction], + }, + "kibanaLegacy": Object { + "config": Object { + "defaultAppId": "home", + }, + "dashboardConfig": Object { + "getHideWriteControls": [MockFunction], + "turnHideWriteControlsOn": [MockFunction], + }, + "getApps": [MockFunction], + "getForwards": [MockFunction], + }, + "management": Object { + "legacy": Object {}, + "sections": Object { + "getAllSections": [MockFunction], + "getSection": [MockFunction], + "navigateToApp": [MockFunction], + }, + }, + "navigation": Object { + "ui": Object { + "TopNavMenu": [MockFunction], + }, + }, + "uiActions": Object { + "attachAction": [MockFunction], + "clear": [MockFunction], + "detachAction": [MockFunction], + "executeTriggerActions": [MockFunction], + "fork": [MockFunction], + "getTrigger": [MockFunction], + "getTriggerActions": [MockFunction], + "getTriggerCompatibleActions": [MockFunction], + "registerAction": [MockFunction], + "registerTrigger": [MockFunction], + }, + "uiMetric": Object { + "createUiStatsReporter": [Function], + }, + "xsrfToken": "kbn-xsrf-token", + }, + } } - } - groupBy={ - Object { - "the-group-by-name": Object { - "agg": "terms", - "aggName": "the-group-by-agg-name", - "dropDownName": "the-group-by-drop-down-name", - "field": "the-group-by-field", - }, - } - } - query={ - Object { - "query_string": Object { - "default_operator": "AND", - "query": "the-query", - }, - } - } - /> - </ContextProvider> -</div> + > + <Component + aggs={ + Object { + "the-agg-name": Object { + "agg": "avg", + "aggName": "the-group-by-agg-name", + "dropDownName": "the-group-by-drop-down-name", + "field": "the-agg-field", + }, + } + } + groupBy={ + Object { + "the-group-by-name": Object { + "agg": "terms", + "aggName": "the-group-by-agg-name", + "dropDownName": "the-group-by-drop-down-name", + "field": "the-group-by-field", + }, + } + } + indexPattern={ + Object { + "fields": Array [], + "title": "the-index-pattern-title", + } + } + query={ + Object { + "query_string": Object { + "default_operator": "AND", + "query": "the-query", + }, + } + } + /> + </ContextProvider> + </HashRouter> + </mockConstructor> +</AuthorizationProvider> `; diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_form.test.tsx.snap b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_form.test.tsx.snap index 70a0bfc12b2089..30c57a9f3f4ae3 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_form.test.tsx.snap +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_form.test.tsx.snap @@ -1,17 +1,572 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Transform: <DefinePivotForm /> Minimal initialization 1`] = ` -<div> - <ContextProvider - value={ - Object { - "initialized": false, - } - } - > - <Component - onChange={[Function]} - /> - </ContextProvider> -</div> +<AuthorizationProvider + privilegesEndpoint="/api/transform/privileges" +> + <mockConstructor> + <HashRouter> + <ContextProvider + value={ + Object { + "core": Object { + "application": Object { + "capabilities": Object { + "catalogue": Object {}, + "management": Object {}, + "navLinks": Object {}, + }, + "currentAppId$": Observable { + "_isScalar": false, + "source": Subject { + "_isScalar": false, + "closed": false, + "hasError": false, + "isStopped": false, + "observers": Array [], + "thrownError": null, + }, + }, + "getUrlForApp": [MockFunction], + "navigateToApp": [MockFunction], + "registerMountContext": [MockFunction], + }, + "chrome": Object { + "addApplicationClass": [MockFunction], + "docTitle": Object { + "__legacy": Object { + "setBaseTitle": [MockFunction], + }, + "change": [MockFunction], + "reset": [MockFunction], + }, + "getApplicationClasses$": [MockFunction], + "getBadge$": [MockFunction], + "getBrand$": [MockFunction], + "getBreadcrumbs$": [MockFunction], + "getHeaderComponent": [MockFunction], + "getHelpExtension$": [MockFunction], + "getIsCollapsed$": [MockFunction], + "getIsVisible$": [MockFunction], + "navControls": Object { + "getLeft$": [MockFunction], + "getRight$": [MockFunction], + "registerLeft": [MockFunction], + "registerRight": [MockFunction], + }, + "navLinks": Object { + "enableForcedAppSwitcherNavigation": [MockFunction], + "get": [MockFunction], + "getAll": [MockFunction], + "getForceAppSwitcherNavigation$": [MockFunction], + "getNavLinks$": [MockFunction], + "has": [MockFunction], + "showOnly": [MockFunction], + "update": [MockFunction], + }, + "recentlyAccessed": Object { + "add": [MockFunction], + "get": [MockFunction], + "get$": [MockFunction], + }, + "removeApplicationClass": [MockFunction], + "setAppTitle": [MockFunction], + "setBadge": [MockFunction], + "setBrand": [MockFunction], + "setBreadcrumbs": [MockFunction], + "setHelpExtension": [MockFunction], + "setHelpSupportUrl": [MockFunction], + "setIsCollapsed": [MockFunction], + "setIsVisible": [MockFunction], + }, + "docLinks": Object { + "DOC_LINK_VERSION": "mocked-test-branch", + "ELASTIC_WEBSITE_URL": "https://www.elastic.co/", + "links": Object { + "aggs": Object { + "avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-avg-aggregation.html", + "avg_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-avg-bucket-aggregation.html", + "cardinality": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-cardinality-aggregation.html", + "count": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-valuecount-aggregation.html", + "cumulative_sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", + "date_histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-datehistogram-aggregation.html", + "date_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-daterange-aggregation.html", + "derivative": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-derivative-aggregation.html", + "filter": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filter-aggregation.html", + "filters": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filters-aggregation.html", + "geo_bounds": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geobounds-aggregation.html", + "geo_centroid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geocentroid-aggregation.html", + "geohash_grid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-geohashgrid-aggregation.html", + "histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-histogram-aggregation.html", + "ip_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-iprange-aggregation.html", + "max": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-max-aggregation.html", + "max_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-max-bucket-aggregation.html", + "median": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-aggregation.html", + "min": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-min-aggregation.html", + "min_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-min-bucket-aggregation.html", + "moving_avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-movavg-aggregation.html", + "percentile_ranks": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-rank-aggregation.html", + "range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-range-aggregation.html", + "serial_diff": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-serialdiff-aggregation.html", + "significant_terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-significantterms-aggregation.html", + "std_dev": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-extendedstats-aggregation.html", + "sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", + "sum_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-sum-bucket-aggregation.html", + "terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-terms-aggregation.html", + "top_hits": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-top-hits-aggregation.html", + }, + "auditbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/auditbeat/mocked-test-branch", + }, + "date": Object { + "dateMath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/common-options.html#date-math", + }, + "filebeat": Object { + "base": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch", + "configuration": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-configuration.html", + "elasticsearchOutput": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/elasticsearch-output.html", + "exportedFields": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/exported-fields.html", + "installation": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-installation.html", + "startup": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-starting.html", + }, + "functionbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/functionbeat/mocked-test-branch", + }, + "heartbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/heartbeat/mocked-test-branch", + }, + "indexPatterns": Object { + "introduction": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index-patterns.html", + "loadingData": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/tutorial-load-dataset.html", + }, + "kibana": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index.html", + "logstash": Object { + "base": "https://www.elastic.co/guide/en/logstash/mocked-test-branch", + }, + "management": Object { + "dashboardSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-dashboard-settings", + "kibanaSearchSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-search-settings", + }, + "metricbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/metricbeat/mocked-test-branch", + }, + "query": Object { + "kueryQuerySyntax": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/kuery-query.html", + "luceneQuerySyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl-query-string-query.html#query-string-syntax", + "queryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", + }, + "scriptedFields": Object { + "luceneExpressions": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-expression.html", + "painless": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless.html", + "painlessApi": "https://www.elastic.co/guide/en/elasticsearch/painless/mocked-test-branch/painless-api-reference.html", + "painlessSyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless-syntax.html", + "scriptAggs": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations.html#_values_source", + "scriptFields": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-request-script-fields.html", + }, + "siem": Object { + "gettingStarted": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/install-siem.html", + "guide": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/index.html", + }, + "winlogbeat": Object { + "base": "https://www.elastic.co/guide/en/beats/winlogbeat/mocked-test-branch", + }, + }, + }, + "docTitle": Object { + "change": [Function], + }, + "documentation": Object { + "esDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/", + "esIndicesCreateIndex": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/indices-create-index.html#indices-create-index", + "esPluginDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/plugins/mocked-test-branch/", + "esQueryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", + "esStackOverviewDocBasePath": "https://www.elastic.co/guide/en/elastic-stack-overview/mocked-test-branch/", + "esTransform": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/transforms.html", + "esTransformPivot": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/put-transform.html#put-transform-request-body", + "mlDocBasePath": "https://www.elastic.co/guide/en/machine-learning/mocked-test-branch/", + }, + "fatalErrors": Object { + "add": [MockFunction], + "get$": [MockFunction], + }, + "http": Object { + "addLoadingCountSource": [MockFunction], + "anonymousPaths": Object { + "isAnonymous": [MockFunction], + "register": [MockFunction], + }, + "basePath": BasePath { + "basePath": "", + "get": [Function], + "prepend": [Function], + "remove": [Function], + "serverBasePath": "", + }, + "delete": [MockFunction], + "fetch": [MockFunction], + "get": [MockFunction], + "getLoadingCount$": [MockFunction], + "head": [MockFunction], + "intercept": [MockFunction], + "options": [MockFunction], + "patch": [MockFunction], + "post": [MockFunction], + "put": [MockFunction], + }, + "i18n": Object { + "Context": [MockFunction], + }, + "injectedMetadata": Object { + "getInjectedVar": [MockFunction], + }, + "notifications": Object { + "toasts": Object { + "add": [MockFunction], + "addDanger": [MockFunction], + "addError": [MockFunction], + "addSuccess": [MockFunction], + "addWarning": [MockFunction], + "get$": [MockFunction], + "remove": [MockFunction], + }, + }, + "overlays": Object { + "banners": Object { + "add": [MockFunction], + "get$": [MockFunction], + "getComponent": [MockFunction], + "remove": [MockFunction], + "replace": [MockFunction], + }, + "openConfirm": [MockFunction], + "openFlyout": [MockFunction], + "openModal": [MockFunction], + }, + "savedObjects": Object { + "client": Object { + "bulkCreate": [MockFunction], + "bulkGet": [MockFunction], + "bulkUpdate": [MockFunction], + "create": [MockFunction], + "delete": [MockFunction], + "find": [MockFunction], + "get": [MockFunction], + "update": [MockFunction], + }, + }, + "uiSettings": Object { + "get": [MockFunction], + "get$": [MockFunction], + "getAll": [MockFunction], + "getSaved$": [MockFunction], + "getUpdate$": [MockFunction], + "getUpdateErrors$": [MockFunction], + "isCustom": [MockFunction], + "isDeclared": [MockFunction], + "isDefault": [MockFunction], + "isOverridden": [MockFunction], + "overrideLocalDefault": [MockFunction], + "remove": [MockFunction], + "set": [MockFunction], + }, + }, + "plugins": Object { + "advancedSettings": Object { + "component": Object { + "componentType": Object { + "PAGE_FOOTER_COMPONENT": "advanced_settings_page_footer", + "PAGE_SUBTITLE_COMPONENT": "advanced_settings_page_subtitle", + "PAGE_TITLE_COMPONENT": "advanced_settings_page_title", + }, + "get": [MockFunction], + }, + }, + "charts": Object { + "colors": Object { + "createColorLookupFunction": [MockFunction], + }, + "theme": Object { + "chartsDefaultTheme": Object { + "areaSeriesStyle": Object { + "area": Object { + "opacity": 0.3, + }, + "line": Object { + "strokeWidth": 2, + }, + "point": Object { + "fill": "rgba(255, 255, 255, 1)", + "radius": 3, + "strokeWidth": 2, + "visible": false, + }, + }, + "axes": Object { + "axisLineStyle": Object { + "stroke": "rgba(239, 241, 244, 1)", + }, + "axisTitleStyle": Object { + "fill": "rgba(52, 55, 65, 1)", + "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, + 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", + "fontSize": 12, + "padding": 10, + }, + "gridLineStyle": Object { + "horizontal": Object { + "dash": Array [ + 0, + 0, + ], + "opacity": 1, + "stroke": "rgba(239, 241, 244, 1)", + "strokeWidth": 1, + "visible": true, + }, + "vertical": Object { + "dash": Array [ + 4, + 4, + ], + "opacity": 1, + "stroke": "rgba(239, 241, 244, 1)", + "strokeWidth": 1, + "visible": true, + }, + }, + "tickLabelStyle": Object { + "fill": "rgba(105, 112, 125, 1)", + "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, + 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", + "fontSize": 10, + "padding": 8, + }, + "tickLineStyle": Object { + "stroke": "rgba(239, 241, 244, 1)", + "strokeWidth": 1, + "visible": false, + }, + }, + "barSeriesStyle": Object { + "displayValue": Object { + "fill": "rgba(105, 112, 125, 1)", + "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, + 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", + "fontSize": 8, + }, + }, + "chartMargins": Object { + "bottom": 0, + "left": 0, + "right": 0, + "top": 0, + }, + "colors": Object { + "defaultVizColor": "#6092C0", + "vizColors": Array [ + "#54B399", + "#6092C0", + "#D36086", + "#9170B8", + "#CA8EAE", + "#D6BF57", + "#B9A888", + "#DA8B45", + "#AA6556", + "#E7664C", + ], + }, + "crosshair": Object { + "band": Object { + "fill": "rgba(245, 247, 250, 1)", + }, + "line": Object { + "dash": Array [ + 4, + 4, + ], + "stroke": "rgba(105, 112, 125, 1)", + "strokeWidth": 1, + }, + }, + "lineSeriesStyle": Object { + "line": Object { + "strokeWidth": 2, + }, + "point": Object { + "fill": "rgba(255, 255, 255, 1)", + "radius": 3, + "strokeWidth": 2, + }, + }, + "scales": Object { + "barsPadding": 0.25, + "histogramPadding": 0.05, + }, + }, + "chartsTheme$": [MockFunction], + "useChartsTheme": [MockFunction], + }, + }, + "data": Object { + "__LEGACY": Object { + "esClient": Object { + "msearch": [MockFunction], + "search": [MockFunction], + }, + }, + "autocomplete": Object { + "getQuerySuggestions": [MockFunction], + "getValueSuggestions": [MockFunction], + "hasQuerySuggestions": [MockFunction], + }, + "fieldFormats": Object { + "deserialize": [MockFunction], + "getByFieldType": [MockFunction], + "getDefaultConfig": [MockFunction], + "getDefaultInstance": [MockFunction], + "getDefaultInstanceCacheResolver": [MockFunction], + "getDefaultInstancePlain": [MockFunction], + "getDefaultType": [MockFunction], + "getDefaultTypeName": [MockFunction], + "getInstance": [MockFunction], + "getType": [MockFunction], + "getTypeNameByEsTypes": [MockFunction], + "getTypeWithoutMetaParams": [MockFunction], + "init": [MockFunction], + "parseDefaultTypeMap": [MockFunction], + "register": [MockFunction], + }, + "getSuggestions": [MockFunction], + "indexPatterns": Object { + "get": [MockFunction], + "make": [Function], + }, + "query": Object { + "filterManager": [MockFunction], + "savedQueries": [MockFunction], + "state$": Observable { + "_isScalar": false, + }, + "timefilter": Object { + "history": Object { + "add": [MockFunction], + "get": [MockFunction], + }, + "timefilter": Object { + "calculateBounds": [MockFunction], + "createFilter": [MockFunction], + "disableAutoRefreshSelector": [MockFunction], + "disableTimeRangeSelector": [MockFunction], + "enableAutoRefreshSelector": [MockFunction], + "enableTimeRangeSelector": [MockFunction], + "getActiveBounds": [MockFunction], + "getAutoRefreshFetch$": [MockFunction], + "getBounds": [MockFunction], + "getEnabledUpdated$": [MockFunction], + "getFetch$": [MockFunction], + "getRefreshInterval": [MockFunction], + "getRefreshIntervalDefaults": [MockFunction], + "getRefreshIntervalUpdate$": [MockFunction], + "getTime": [MockFunction], + "getTimeDefaults": [MockFunction], + "getTimeUpdate$": [MockFunction], + "isAutoRefreshSelectorEnabled": [MockFunction], + "isTimeRangeSelectorEnabled": [MockFunction], + "setRefreshInterval": [MockFunction], + "setTime": [MockFunction], + }, + }, + }, + "search": Object { + "__LEGACY": Object { + "esClient": Object { + "msearch": [MockFunction], + "search": [MockFunction], + }, + }, + "search": [MockFunction], + }, + "ui": Object { + "IndexPatternSelect": [MockFunction], + "SearchBar": [MockFunction], + }, + }, + "embeddable": Object { + "getEmbeddableFactories": [MockFunction], + "getEmbeddableFactory": [MockFunction], + "registerEmbeddableFactory": [MockFunction], + }, + "expressions": Object { + "ExpressionLoader": [MockFunction], + "ExpressionRenderHandler": [MockFunction], + "ReactExpressionRenderer": [MockFunction], + "execute": [MockFunction], + "fork": [MockFunction], + "getFunction": [MockFunction], + "getFunctions": [MockFunction], + "getRenderer": [MockFunction], + "getRenderers": [MockFunction], + "getType": [MockFunction], + "getTypes": [MockFunction], + "loader": [MockFunction], + "render": [MockFunction], + "run": [MockFunction], + }, + "inspector": Object { + "isAvailable": [MockFunction], + "open": [MockFunction], + }, + "kibanaLegacy": Object { + "config": Object { + "defaultAppId": "home", + }, + "dashboardConfig": Object { + "getHideWriteControls": [MockFunction], + "turnHideWriteControlsOn": [MockFunction], + }, + "getApps": [MockFunction], + "getForwards": [MockFunction], + }, + "management": Object { + "legacy": Object {}, + "sections": Object { + "getAllSections": [MockFunction], + "getSection": [MockFunction], + "navigateToApp": [MockFunction], + }, + }, + "navigation": Object { + "ui": Object { + "TopNavMenu": [MockFunction], + }, + }, + "uiActions": Object { + "attachAction": [MockFunction], + "clear": [MockFunction], + "detachAction": [MockFunction], + "executeTriggerActions": [MockFunction], + "fork": [MockFunction], + "getTrigger": [MockFunction], + "getTriggerActions": [MockFunction], + "getTriggerCompatibleActions": [MockFunction], + "registerAction": [MockFunction], + "registerTrigger": [MockFunction], + }, + "uiMetric": Object { + "createUiStatsReporter": [Function], + }, + "xsrfToken": "kbn-xsrf-token", + }, + } + } + > + <Component + onChange={[Function]} + searchItems={Object {}} + /> + </ContextProvider> + </HashRouter> + </mockConstructor> +</AuthorizationProvider> `; diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_summary.test.tsx.snap b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_summary.test.tsx.snap index b18233e5c53e31..4955a0a95b7e92 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_summary.test.tsx.snap +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_summary.test.tsx.snap @@ -1,42 +1,99 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Transform: <DefinePivotSummary /> Minimal initialization 1`] = ` -<div> - <ContextProvider - value={ +<EuiFlexGroup> + <EuiFlexItem + grow={false} + style={ Object { - "initialized": false, + "minWidth": "420px", } } > - <StepDefineSummary - aggList={ - Object { - "the-agg-name": Object { - "agg": "avg", - "aggName": "the-group-by-agg-name", - "dropDownName": "the-group-by-drop-down-name", - "field": "the-agg-field", - }, + <div + data-test-subj="transformStepDefineSummary" + > + <EuiForm> + <EuiFormRow + describedByIds={Array []} + display="row" + fullWidth={false} + hasChildLabel={true} + hasEmptyLabelSpace={false} + label="Group by" + labelType="label" + > + <GroupByListSummary + list={ + Object { + "the-group-by-name": Object { + "agg": "terms", + "aggName": "the-group-by-agg-name", + "dropDownName": "the-group-by-drop-down-name", + "field": "the-group-by-field", + }, + } + } + /> + </EuiFormRow> + <EuiFormRow + describedByIds={Array []} + display="row" + fullWidth={false} + hasChildLabel={true} + hasEmptyLabelSpace={false} + label="Aggregations" + labelType="label" + > + <AggListSummary + list={ + Object { + "the-agg-name": Object { + "agg": "avg", + "aggName": "the-group-by-agg-name", + "dropDownName": "the-group-by-drop-down-name", + "field": "the-agg-field", + }, + } + } + /> + </EuiFormRow> + </EuiForm> + </div> + </EuiFlexItem> + <EuiFlexItem> + <EuiText> + <Component + aggs={ + Object { + "the-agg-name": Object { + "agg": "avg", + "aggName": "the-group-by-agg-name", + "dropDownName": "the-group-by-drop-down-name", + "field": "the-agg-field", + }, + } } - } - groupByList={ - Object { - "the-group-by-name": Object { - "agg": "terms", - "aggName": "the-group-by-agg-name", - "dropDownName": "the-group-by-drop-down-name", - "field": "the-group-by-field", - }, + groupBy={ + Object { + "the-group-by-name": Object { + "agg": "terms", + "aggName": "the-group-by-agg-name", + "dropDownName": "the-group-by-drop-down-name", + "field": "the-group-by-field", + }, + } } - } - isAdvancedPivotEditorEnabled={false} - isAdvancedSourceEditorEnabled={false} - searchQuery="the-search-query" - searchString="the-query" - sourceConfigUpdated={false} - valid={true} - /> - </ContextProvider> -</div> + query={ + Object { + "query_string": Object { + "default_operator": "AND", + "query": "the-search-query", + }, + } + } + /> + </EuiText> + </EuiFlexItem> +</EuiFlexGroup> `; diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.test.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.test.tsx index 2ac4295da1eedc..6b49a305e515b0 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.test.tsx @@ -7,8 +7,8 @@ import { shallow } from 'enzyme'; import React from 'react'; -import { KibanaContext } from '../../../../lib/kibana'; - +import { createPublicShim } from '../../../../../shim'; +import { getAppProviders } from '../../../../app_dependencies'; import { getPivotQuery, PivotAggsConfig, @@ -16,6 +16,7 @@ import { PIVOT_SUPPORTED_AGGS, PIVOT_SUPPORTED_GROUP_BY_AGGS, } from '../../../../common'; +import { SearchItems } from '../../../../hooks/use_search_items'; import { PivotPreview } from './pivot_preview'; @@ -25,6 +26,7 @@ jest.mock('react', () => { return { ...r, memo: (x: any) => x }; }); +jest.mock('ui/new_platform'); jest.mock('../../../../../shared_imports'); describe('Transform: <PivotPreview />', () => { @@ -44,17 +46,18 @@ describe('Transform: <PivotPreview />', () => { const props = { aggs: { 'the-agg-name': agg }, groupBy: { 'the-group-by-name': groupBy }, + indexPattern: { + title: 'the-index-pattern-title', + fields: [] as any[], + } as SearchItems['indexPattern'], query: getPivotQuery('the-query'), }; - // Using a wrapping <div> element because shallow() would fail - // with the Provider being the outer most component. + const Providers = getAppProviders(createPublicShim()); const wrapper = shallow( - <div> - <KibanaContext.Provider value={{ initialized: false }}> - <PivotPreview {...props} /> - </KibanaContext.Provider> - </div> + <Providers> + <PivotPreview {...props} /> + </Providers> ); expect(wrapper).toMatchSnapshot(); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.tsx index b755956eae24e5..9b32bbbae839e4 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.tsx @@ -24,8 +24,6 @@ import { import { dictionaryToArray } from '../../../../../../common/types/common'; import { getNestedProperty } from '../../../../../../common/utils/object_utils'; -import { useCurrentIndexPattern } from '../../../../lib/kibana'; - import { euiDataGridStyle, euiDataGridToolbarSettings, @@ -36,6 +34,7 @@ import { PivotGroupByConfigDict, PivotQuery, } from '../../../../common'; +import { SearchItems } from '../../../../hooks/use_search_items'; import { getPivotPreviewDevConsoleStatement, multiColumnSortFactory } from './common'; import { PIVOT_PREVIEW_STATUS, usePivotPreviewData } from './use_pivot_preview_data'; @@ -103,184 +102,186 @@ const ErrorMessage: FC<ErrorMessageProps> = ({ message }) => ( interface PivotPreviewProps { aggs: PivotAggsConfigDict; groupBy: PivotGroupByConfigDict; + indexPattern: SearchItems['indexPattern']; query: PivotQuery; } const defaultPagination = { pageIndex: 0, pageSize: 5 }; -export const PivotPreview: FC<PivotPreviewProps> = React.memo(({ aggs, groupBy, query }) => { - const indexPattern = useCurrentIndexPattern(); - - const { - previewData: data, - previewMappings, - errorMessage, - previewRequest, - status, - } = usePivotPreviewData(indexPattern, query, aggs, groupBy); - const groupByArr = dictionaryToArray(groupBy); - - // Filters mapping properties of type `object`, which get returned for nested field parents. - const columnKeys = Object.keys(previewMappings.properties).filter( - key => previewMappings.properties[key].type !== 'object' - ); - columnKeys.sort(sortColumns(groupByArr)); - - // Column visibility - const [visibleColumns, setVisibleColumns] = useState<EsFieldName[]>(columnKeys); - - useEffect(() => { - setVisibleColumns(columnKeys); - // eslint-disable-next-line react-hooks/exhaustive-deps - }, [JSON.stringify(columnKeys)]); - - const [pagination, setPagination] = useState(defaultPagination); - - // Reset pagination if data changes. This is to avoid ending up with an empty table - // when for example the user selected a page that is not available with the updated data. - useEffect(() => { - setPagination(defaultPagination); - }, [data.length]); - - // EuiDataGrid State - const dataGridColumns = columnKeys.map(id => ({ id })); - - const onChangeItemsPerPage = useCallback( - pageSize => { - setPagination(p => { - const pageIndex = Math.floor((p.pageSize * p.pageIndex) / pageSize); - return { pageIndex, pageSize }; - }); - }, - [setPagination] - ); +export const PivotPreview: FC<PivotPreviewProps> = React.memo( + ({ aggs, groupBy, indexPattern, query }) => { + const { + previewData: data, + previewMappings, + errorMessage, + previewRequest, + status, + } = usePivotPreviewData(indexPattern, query, aggs, groupBy); + const groupByArr = dictionaryToArray(groupBy); + + // Filters mapping properties of type `object`, which get returned for nested field parents. + const columnKeys = Object.keys(previewMappings.properties).filter( + key => previewMappings.properties[key].type !== 'object' + ); + columnKeys.sort(sortColumns(groupByArr)); + + // Column visibility + const [visibleColumns, setVisibleColumns] = useState<EsFieldName[]>(columnKeys); + + useEffect(() => { + setVisibleColumns(columnKeys); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [JSON.stringify(columnKeys)]); + + const [pagination, setPagination] = useState(defaultPagination); + + // Reset pagination if data changes. This is to avoid ending up with an empty table + // when for example the user selected a page that is not available with the updated data. + useEffect(() => { + setPagination(defaultPagination); + }, [data.length]); + + // EuiDataGrid State + const dataGridColumns = columnKeys.map(id => ({ id })); + + const onChangeItemsPerPage = useCallback( + pageSize => { + setPagination(p => { + const pageIndex = Math.floor((p.pageSize * p.pageIndex) / pageSize); + return { pageIndex, pageSize }; + }); + }, + [setPagination] + ); - const onChangePage = useCallback(pageIndex => setPagination(p => ({ ...p, pageIndex })), [ - setPagination, - ]); + const onChangePage = useCallback(pageIndex => setPagination(p => ({ ...p, pageIndex })), [ + setPagination, + ]); - // Sorting config - const [sortingColumns, setSortingColumns] = useState<EuiDataGridSorting['columns']>([]); - const onSort = useCallback(sc => setSortingColumns(sc), [setSortingColumns]); + // Sorting config + const [sortingColumns, setSortingColumns] = useState<EuiDataGridSorting['columns']>([]); + const onSort = useCallback(sc => setSortingColumns(sc), [setSortingColumns]); - if (sortingColumns.length > 0) { - data.sort(multiColumnSortFactory(sortingColumns)); - } + if (sortingColumns.length > 0) { + data.sort(multiColumnSortFactory(sortingColumns)); + } - const pageData = data.slice( - pagination.pageIndex * pagination.pageSize, - (pagination.pageIndex + 1) * pagination.pageSize - ); + const pageData = data.slice( + pagination.pageIndex * pagination.pageSize, + (pagination.pageIndex + 1) * pagination.pageSize + ); - const renderCellValue = useMemo(() => { - return ({ - rowIndex, - columnId, - setCellProps, - }: { - rowIndex: number; - columnId: string; - setCellProps: any; - }) => { - const adjustedRowIndex = rowIndex - pagination.pageIndex * pagination.pageSize; - - const cellValue = pageData.hasOwnProperty(adjustedRowIndex) - ? getNestedProperty(pageData[adjustedRowIndex], columnId, null) - : null; - - if (typeof cellValue === 'object' && cellValue !== null) { - return JSON.stringify(cellValue); - } + const renderCellValue = useMemo(() => { + return ({ + rowIndex, + columnId, + setCellProps, + }: { + rowIndex: number; + columnId: string; + setCellProps: any; + }) => { + const adjustedRowIndex = rowIndex - pagination.pageIndex * pagination.pageSize; + + const cellValue = pageData.hasOwnProperty(adjustedRowIndex) + ? getNestedProperty(pageData[adjustedRowIndex], columnId, null) + : null; + + if (typeof cellValue === 'object' && cellValue !== null) { + return JSON.stringify(cellValue); + } - if (cellValue === undefined) { - return null; - } + if (cellValue === undefined) { + return null; + } - return cellValue; - }; - }, [pageData, pagination.pageIndex, pagination.pageSize]); + return cellValue; + }; + }, [pageData, pagination.pageIndex, pagination.pageSize]); + + if (status === PIVOT_PREVIEW_STATUS.ERROR) { + return ( + <div data-test-subj="transformPivotPreview error"> + <PreviewTitle previewRequest={previewRequest} /> + <EuiCallOut + title={i18n.translate('xpack.transform.pivotPreview.PivotPreviewError', { + defaultMessage: 'An error occurred loading the pivot preview.', + })} + color="danger" + iconType="cross" + > + <ErrorMessage message={errorMessage} /> + </EuiCallOut> + </div> + ); + } - if (status === PIVOT_PREVIEW_STATUS.ERROR) { - return ( - <div data-test-subj="transformPivotPreview error"> - <PreviewTitle previewRequest={previewRequest} /> - <EuiCallOut - title={i18n.translate('xpack.transform.pivotPreview.PivotPreviewError', { - defaultMessage: 'An error occurred loading the pivot preview.', - })} - color="danger" - iconType="cross" - > - <ErrorMessage message={errorMessage} /> - </EuiCallOut> - </div> - ); - } + if (data.length === 0) { + let noDataMessage = i18n.translate( + 'xpack.transform.pivotPreview.PivotPreviewNoDataCalloutBody', + { + defaultMessage: + 'The preview request did not return any data. Please ensure the optional query returns data and that values exist for the field used by group-by and aggregation fields.', + } + ); - if (data.length === 0) { - let noDataMessage = i18n.translate( - 'xpack.transform.pivotPreview.PivotPreviewNoDataCalloutBody', - { - defaultMessage: - 'The preview request did not return any data. Please ensure the optional query returns data and that values exist for the field used by group-by and aggregation fields.', + const aggsArr = dictionaryToArray(aggs); + if (aggsArr.length === 0 || groupByArr.length === 0) { + noDataMessage = i18n.translate( + 'xpack.transform.pivotPreview.PivotPreviewIncompleteConfigCalloutBody', + { + defaultMessage: 'Please choose at least one group-by field and aggregation.', + } + ); } - ); - const aggsArr = dictionaryToArray(aggs); - if (aggsArr.length === 0 || groupByArr.length === 0) { - noDataMessage = i18n.translate( - 'xpack.transform.pivotPreview.PivotPreviewIncompleteConfigCalloutBody', - { - defaultMessage: 'Please choose at least one group-by field and aggregation.', - } + return ( + <div data-test-subj="transformPivotPreview empty"> + <PreviewTitle previewRequest={previewRequest} /> + <EuiCallOut + title={i18n.translate('xpack.transform.pivotPreview.PivotPreviewNoDataCalloutTitle', { + defaultMessage: 'Pivot preview not available', + })} + color="primary" + > + <p>{noDataMessage}</p> + </EuiCallOut> + </div> ); } + + if (columnKeys.length === 0) { + return null; + } + return ( - <div data-test-subj="transformPivotPreview empty"> + <div data-test-subj="transformPivotPreview loaded"> <PreviewTitle previewRequest={previewRequest} /> - <EuiCallOut - title={i18n.translate('xpack.transform.pivotPreview.PivotPreviewNoDataCalloutTitle', { - defaultMessage: 'Pivot preview not available', - })} - color="primary" - > - <p>{noDataMessage}</p> - </EuiCallOut> + <div className="transform__progress"> + {status === PIVOT_PREVIEW_STATUS.LOADING && <EuiProgress size="xs" color="accent" />} + {status !== PIVOT_PREVIEW_STATUS.LOADING && ( + <EuiProgress size="xs" color="accent" max={1} value={0} /> + )} + </div> + {dataGridColumns.length > 0 && data.length > 0 && ( + <EuiDataGrid + aria-label="Source index preview" + columns={dataGridColumns} + columnVisibility={{ visibleColumns, setVisibleColumns }} + gridStyle={euiDataGridStyle} + rowCount={data.length} + renderCellValue={renderCellValue} + sorting={{ columns: sortingColumns, onSort }} + toolbarVisibility={euiDataGridToolbarSettings} + pagination={{ + ...pagination, + pageSizeOptions: [5, 10, 25], + onChangeItemsPerPage, + onChangePage, + }} + /> + )} </div> ); } - - if (columnKeys.length === 0) { - return null; - } - - return ( - <div data-test-subj="transformPivotPreview loaded"> - <PreviewTitle previewRequest={previewRequest} /> - <div className="transform__progress"> - {status === PIVOT_PREVIEW_STATUS.LOADING && <EuiProgress size="xs" color="accent" />} - {status !== PIVOT_PREVIEW_STATUS.LOADING && ( - <EuiProgress size="xs" color="accent" max={1} value={0} /> - )} - </div> - {dataGridColumns.length > 0 && data.length > 0 && ( - <EuiDataGrid - aria-label="Source index preview" - columns={dataGridColumns} - columnVisibility={{ visibleColumns, setVisibleColumns }} - gridStyle={euiDataGridStyle} - rowCount={data.length} - renderCellValue={renderCellValue} - sorting={{ columns: sortingColumns, onSort }} - toolbarVisibility={euiDataGridToolbarSettings} - pagination={{ - ...pagination, - pageSizeOptions: [5, 10, 25], - onChangeItemsPerPage, - onChangePage, - }} - /> - )} - </div> - ); -}); +); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.test.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.test.tsx index 44edd1340e8d68..f31af733fa3ee4 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.test.tsx @@ -7,14 +7,16 @@ import { shallow } from 'enzyme'; import React from 'react'; -import { KibanaContext } from '../../../../lib/kibana'; - +import { createPublicShim } from '../../../../../shim'; +import { getAppProviders } from '../../../../app_dependencies'; import { PivotAggsConfigDict, PivotGroupByConfigDict, PIVOT_SUPPORTED_AGGS, PIVOT_SUPPORTED_GROUP_BY_AGGS, } from '../../../../common'; +import { SearchItems } from '../../../../hooks/use_search_items'; + import { StepDefineForm, getAggNameConflictToastMessages } from './step_define_form'; // workaround to make React.memo() work with enzyme @@ -23,18 +25,16 @@ jest.mock('react', () => { return { ...r, memo: (x: any) => x }; }); +jest.mock('ui/new_platform'); jest.mock('../../../../../shared_imports'); describe('Transform: <DefinePivotForm />', () => { test('Minimal initialization', () => { - // Using a wrapping <div> element because shallow() would fail - // with the Provider being the outer most component. + const Providers = getAppProviders(createPublicShim()); const wrapper = shallow( - <div> - <KibanaContext.Provider value={{ initialized: false }}> - <StepDefineForm onChange={() => {}} /> - </KibanaContext.Provider> - </div> + <Providers> + <StepDefineForm onChange={() => {}} searchItems={{} as SearchItems} /> + </Providers> ); expect(wrapper).toMatchSnapshot(); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx index 9b96e4b1ee7585..f61f54c38680ef 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx @@ -26,6 +26,7 @@ import { EuiSwitch, } from '@elastic/eui'; +import { SavedSearchQuery, SearchItems } from '../../../../hooks/use_search_items'; import { useXJsonMode, xJsonMode } from '../../../../hooks/use_x_json_mode'; import { useDocumentationLinks, useToastNotifications } from '../../../../app_dependencies'; import { TransformPivotConfig } from '../../../../common'; @@ -38,12 +39,6 @@ import { PivotPreview } from './pivot_preview'; import { KqlFilterBar } from '../../../../../shared_imports'; import { SwitchModal } from './switch_modal'; -import { - useKibanaContext, - InitializedKibanaContextValue, - SavedSearchQuery, -} from '../../../../lib/kibana'; - import { getPivotQuery, getPreviewRequestBody, @@ -78,18 +73,14 @@ export interface StepDefineExposedState { const defaultSearch = '*'; const emptySearch = ''; -export function getDefaultStepDefineState( - kibanaContext: InitializedKibanaContextValue -): StepDefineExposedState { +export function getDefaultStepDefineState(searchItems: SearchItems): StepDefineExposedState { return { aggList: {} as PivotAggsConfigDict, groupByList: {} as PivotGroupByConfigDict, isAdvancedPivotEditorEnabled: false, isAdvancedSourceEditorEnabled: false, - searchString: - kibanaContext.currentSavedSearch !== undefined ? kibanaContext.combinedQuery : defaultSearch, - searchQuery: - kibanaContext.currentSavedSearch !== undefined ? kibanaContext.combinedQuery : defaultSearch, + searchString: searchItems.savedSearch !== undefined ? searchItems.combinedQuery : defaultSearch, + searchQuery: searchItems.savedSearch !== undefined ? searchItems.combinedQuery : defaultSearch, sourceConfigUpdated: false, valid: false, }; @@ -242,14 +233,14 @@ export function getAggNameConflictToastMessages( interface Props { overrides?: StepDefineExposedState; onChange(s: StepDefineExposedState): void; + searchItems: SearchItems; } -export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange }) => { - const kibanaContext = useKibanaContext(); +export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange, searchItems }) => { const toastNotifications = useToastNotifications(); const { esQueryDsl, esTransformPivot } = useDocumentationLinks(); - const defaults = { ...getDefaultStepDefineState(kibanaContext), ...overrides }; + const defaults = { ...getDefaultStepDefineState(searchItems), ...overrides }; // The search filter const [searchString, setSearchString] = useState(defaults.searchString); @@ -267,7 +258,7 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange // The list of selected group by fields const [groupByList, setGroupByList] = useState(defaults.groupByList); - const indexPattern = kibanaContext.currentIndexPattern; + const { indexPattern } = searchItems; const { groupByOptions, @@ -568,7 +559,7 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange <EuiFlexItem grow={false} className="transform__stepDefineFormLeftColumn"> <div data-test-subj="transformStepDefineForm"> <EuiForm> - {kibanaContext.currentSavedSearch === undefined && typeof searchString === 'string' && ( + {searchItems.savedSearch === undefined && typeof searchString === 'string' && ( <Fragment> <EuiFormRow label={i18n.translate('xpack.transform.stepDefineForm.indexPatternLabel', { @@ -669,7 +660,7 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange </EuiFormRow> </Fragment> )} - {kibanaContext.currentSavedSearch === undefined && ( + {searchItems.savedSearch === undefined && ( <EuiFormRow> <EuiFlexGroup gutterSize="none"> <EuiFlexItem> @@ -720,16 +711,15 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange </EuiFlexGroup> </EuiFormRow> )} - {kibanaContext.currentSavedSearch !== undefined && - kibanaContext.currentSavedSearch.id !== undefined && ( - <EuiFormRow - label={i18n.translate('xpack.transform.stepDefineForm.savedSearchLabel', { - defaultMessage: 'Saved search', - })} - > - <span>{kibanaContext.currentSavedSearch.title}</span> - </EuiFormRow> - )} + {searchItems.savedSearch !== undefined && searchItems.savedSearch.id !== undefined && ( + <EuiFormRow + label={i18n.translate('xpack.transform.stepDefineForm.savedSearchLabel', { + defaultMessage: 'Saved search', + })} + > + <span>{searchItems.savedSearch.title}</span> + </EuiFormRow> + )} {!isAdvancedPivotEditorEnabled && ( <Fragment> @@ -903,9 +893,14 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange </EuiFlexItem> <EuiFlexItem grow={false} style={{ maxWidth: 'calc(100% - 468px)' }}> - <SourceIndexPreview query={pivotQuery} /> + <SourceIndexPreview indexPattern={searchItems.indexPattern} query={pivotQuery} /> <EuiHorizontalRule /> - <PivotPreview aggs={aggList} groupBy={groupByList} query={pivotQuery} /> + <PivotPreview + aggs={aggList} + groupBy={groupByList} + indexPattern={searchItems.indexPattern} + query={pivotQuery} + /> </EuiFlexItem> </EuiFlexGroup> ); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.test.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.test.tsx index 78f6fc30f91911..e3a9830ea1904f 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.test.tsx @@ -7,14 +7,14 @@ import { shallow } from 'enzyme'; import React from 'react'; -import { KibanaContext } from '../../../../lib/kibana'; - import { PivotAggsConfig, PivotGroupByConfig, PIVOT_SUPPORTED_AGGS, PIVOT_SUPPORTED_GROUP_BY_AGGS, } from '../../../../common'; +import { SearchItems } from '../../../../hooks/use_search_items'; + import { StepDefineExposedState } from './step_define_form'; import { StepDefineSummary } from './step_define_summary'; @@ -40,7 +40,7 @@ describe('Transform: <DefinePivotSummary />', () => { aggName: 'the-group-by-agg-name', dropDownName: 'the-group-by-drop-down-name', }; - const props: StepDefineExposedState = { + const formState: StepDefineExposedState = { aggList: { 'the-agg-name': agg }, groupByList: { 'the-group-by-name': groupBy }, isAdvancedPivotEditorEnabled: false, @@ -51,14 +51,8 @@ describe('Transform: <DefinePivotSummary />', () => { valid: true, }; - // Using a wrapping <div> element because shallow() would fail - // with the Provider being the outer most component. const wrapper = shallow( - <div> - <KibanaContext.Provider value={{ initialized: false }}> - <StepDefineSummary {...props} /> - </KibanaContext.Provider> - </div> + <StepDefineSummary formState={formState} searchItems={{} as SearchItems} /> ); expect(wrapper).toMatchSnapshot(); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.tsx index 30c447f62c7600..f8fb9db9bd6868 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.tsx @@ -17,26 +17,27 @@ import { EuiText, } from '@elastic/eui'; -import { useKibanaContext } from '../../../../lib/kibana'; +import { getPivotQuery } from '../../../../common'; +import { SearchItems } from '../../../../hooks/use_search_items'; import { AggListSummary } from '../aggregation_list'; import { GroupByListSummary } from '../group_by_list'; -import { PivotPreview } from './pivot_preview'; -import { getPivotQuery } from '../../../../common'; +import { PivotPreview } from './pivot_preview'; import { StepDefineExposedState } from './step_define_form'; const defaultSearch = '*'; const emptySearch = ''; -export const StepDefineSummary: FC<StepDefineExposedState> = ({ - searchString, - searchQuery, - groupByList, - aggList, -}) => { - const kibanaContext = useKibanaContext(); +interface Props { + formState: StepDefineExposedState; + searchItems: SearchItems; +} +export const StepDefineSummary: FC<Props> = ({ + formState: { searchString, searchQuery, groupByList, aggList }, + searchItems, +}) => { const pivotQuery = getPivotQuery(searchQuery); let useCodeBlock = false; let displaySearch; @@ -55,8 +56,8 @@ export const StepDefineSummary: FC<StepDefineExposedState> = ({ <EuiFlexItem grow={false} style={{ minWidth: '420px' }}> <div data-test-subj="transformStepDefineSummary"> <EuiForm> - {kibanaContext.currentSavedSearch !== undefined && - kibanaContext.currentSavedSearch.id === undefined && + {searchItems.savedSearch !== undefined && + searchItems.savedSearch.id === undefined && typeof searchString === 'string' && ( <Fragment> <EuiFormRow @@ -64,7 +65,7 @@ export const StepDefineSummary: FC<StepDefineExposedState> = ({ defaultMessage: 'Index pattern', })} > - <span>{kibanaContext.currentIndexPattern.title}</span> + <span>{searchItems.indexPattern.title}</span> </EuiFormRow> {useCodeBlock === false && displaySearch !== emptySearch && ( <EuiFormRow @@ -99,16 +100,15 @@ export const StepDefineSummary: FC<StepDefineExposedState> = ({ </Fragment> )} - {kibanaContext.currentSavedSearch !== undefined && - kibanaContext.currentSavedSearch.id !== undefined && ( - <EuiFormRow - label={i18n.translate('xpack.transform.stepDefineSummary.savedSearchLabel', { - defaultMessage: 'Saved search', - })} - > - <span>{kibanaContext.currentSavedSearch.title}</span> - </EuiFormRow> - )} + {searchItems.savedSearch !== undefined && searchItems.savedSearch.id !== undefined && ( + <EuiFormRow + label={i18n.translate('xpack.transform.stepDefineSummary.savedSearchLabel', { + defaultMessage: 'Saved search', + })} + > + <span>{searchItems.savedSearch.title}</span> + </EuiFormRow> + )} <EuiFormRow label={i18n.translate('xpack.transform.stepDefineSummary.groupByLabel', { @@ -131,7 +131,12 @@ export const StepDefineSummary: FC<StepDefineExposedState> = ({ <EuiFlexItem> <EuiText> - <PivotPreview aggs={aggList} groupBy={groupByList} query={pivotQuery} /> + <PivotPreview + aggs={aggList} + groupBy={groupByList} + indexPattern={searchItems.indexPattern} + query={pivotQuery} + /> </EuiText> </EuiFlexItem> </EuiFlexGroup> diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_details/step_details_form.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_details/step_details_form.tsx index 5ae2180bfe7790..ea9483af49302f 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_details/step_details_form.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_details/step_details_form.tsx @@ -11,11 +11,15 @@ import { i18n } from '@kbn/i18n'; import { EuiLink, EuiSwitch, EuiFieldText, EuiForm, EuiFormRow, EuiSelect } from '@elastic/eui'; import { toMountPoint } from '../../../../../../../../../../src/plugins/kibana_react/public'; -import { useKibanaContext } from '../../../../lib/kibana'; import { isValidIndexName } from '../../../../../../common/utils/es_utils'; -import { useDocumentationLinks, useToastNotifications } from '../../../../app_dependencies'; +import { + useAppDependencies, + useDocumentationLinks, + useToastNotifications, +} from '../../../../app_dependencies'; import { ToastNotificationText } from '../../../../components'; +import { SearchItems } from '../../../../hooks/use_search_items'; import { useApi } from '../../../../hooks/use_api'; import { isTransformIdValid, TransformId, TransformPivotConfig } from '../../../../common'; @@ -67,109 +71,129 @@ export function applyTransformConfigToDetailsState( interface Props { overrides?: StepDetailsExposedState; onChange(s: StepDetailsExposedState): void; + searchItems: SearchItems; } -export const StepDetailsForm: FC<Props> = React.memo(({ overrides = {}, onChange }) => { - const kibanaContext = useKibanaContext(); - const toastNotifications = useToastNotifications(); - const { esIndicesCreateIndex } = useDocumentationLinks(); +export const StepDetailsForm: FC<Props> = React.memo( + ({ overrides = {}, onChange, searchItems }) => { + const deps = useAppDependencies(); + const toastNotifications = useToastNotifications(); + const { esIndicesCreateIndex } = useDocumentationLinks(); - const defaults = { ...getDefaultStepDetailsState(), ...overrides }; + const defaults = { ...getDefaultStepDetailsState(), ...overrides }; - const [transformId, setTransformId] = useState<TransformId>(defaults.transformId); - const [transformDescription, setTransformDescription] = useState<string>( - defaults.transformDescription - ); - const [destinationIndex, setDestinationIndex] = useState<EsIndexName>(defaults.destinationIndex); - const [transformIds, setTransformIds] = useState<TransformId[]>([]); - const [indexNames, setIndexNames] = useState<EsIndexName[]>([]); - const [indexPatternTitles, setIndexPatternTitles] = useState<IndexPatternTitle[]>([]); - const [createIndexPattern, setCreateIndexPattern] = useState(defaults.createIndexPattern); + const [transformId, setTransformId] = useState<TransformId>(defaults.transformId); + const [transformDescription, setTransformDescription] = useState<string>( + defaults.transformDescription + ); + const [destinationIndex, setDestinationIndex] = useState<EsIndexName>( + defaults.destinationIndex + ); + const [transformIds, setTransformIds] = useState<TransformId[]>([]); + const [indexNames, setIndexNames] = useState<EsIndexName[]>([]); + const [indexPatternTitles, setIndexPatternTitles] = useState<IndexPatternTitle[]>([]); + const [createIndexPattern, setCreateIndexPattern] = useState(defaults.createIndexPattern); - // Continuous mode state - const [isContinuousModeEnabled, setContinuousModeEnabled] = useState( - defaults.isContinuousModeEnabled - ); + // Continuous mode state + const [isContinuousModeEnabled, setContinuousModeEnabled] = useState( + defaults.isContinuousModeEnabled + ); - const api = useApi(); + const api = useApi(); - // fetch existing transform IDs and indices once for form validation - useEffect(() => { - // use an IIFE to avoid returning a Promise to useEffect. - (async function() { - try { - setTransformIds( - (await api.getTransforms()).transforms.map( - (transform: TransformPivotConfig) => transform.id - ) - ); - } catch (e) { - toastNotifications.addDanger({ - title: i18n.translate('xpack.transform.stepDetailsForm.errorGettingTransformList', { - defaultMessage: 'An error occurred getting the existing transform IDs:', - }), - text: toMountPoint(<ToastNotificationText text={e} />), - }); - } + // fetch existing transform IDs and indices once for form validation + useEffect(() => { + // use an IIFE to avoid returning a Promise to useEffect. + (async function() { + try { + setTransformIds( + (await api.getTransforms()).transforms.map( + (transform: TransformPivotConfig) => transform.id + ) + ); + } catch (e) { + toastNotifications.addDanger({ + title: i18n.translate('xpack.transform.stepDetailsForm.errorGettingTransformList', { + defaultMessage: 'An error occurred getting the existing transform IDs:', + }), + text: toMountPoint(<ToastNotificationText text={e} />), + }); + } - try { - setIndexNames((await api.getIndices()).map(index => index.name)); - } catch (e) { - toastNotifications.addDanger({ - title: i18n.translate('xpack.transform.stepDetailsForm.errorGettingIndexNames', { - defaultMessage: 'An error occurred getting the existing index names:', - }), - text: toMountPoint(<ToastNotificationText text={e} />), - }); - } + try { + setIndexNames((await api.getIndices()).map(index => index.name)); + } catch (e) { + toastNotifications.addDanger({ + title: i18n.translate('xpack.transform.stepDetailsForm.errorGettingIndexNames', { + defaultMessage: 'An error occurred getting the existing index names:', + }), + text: toMountPoint(<ToastNotificationText text={e} />), + }); + } - try { - setIndexPatternTitles(await kibanaContext.indexPatterns.getTitles()); - } catch (e) { - toastNotifications.addDanger({ - title: i18n.translate('xpack.transform.stepDetailsForm.errorGettingIndexPatternTitles', { - defaultMessage: 'An error occurred getting the existing index pattern titles:', - }), - text: toMountPoint(<ToastNotificationText text={e} />), - }); - } - })(); - // custom comparison - // eslint-disable-next-line react-hooks/exhaustive-deps - }, [kibanaContext.initialized]); + try { + setIndexPatternTitles(await deps.plugins.data.indexPatterns.getTitles()); + } catch (e) { + toastNotifications.addDanger({ + title: i18n.translate( + 'xpack.transform.stepDetailsForm.errorGettingIndexPatternTitles', + { + defaultMessage: 'An error occurred getting the existing index pattern titles:', + } + ), + text: toMountPoint(<ToastNotificationText text={e} />), + }); + } + })(); + // run once + // eslint-disable-next-line react-hooks/exhaustive-deps + }, []); - const dateFieldNames = kibanaContext.currentIndexPattern.fields - .filter(f => f.type === 'date') - .map(f => f.name) - .sort(); - const isContinuousModeAvailable = dateFieldNames.length > 0; - const [continuousModeDateField, setContinuousModeDateField] = useState( - isContinuousModeAvailable ? dateFieldNames[0] : '' - ); - const [continuousModeDelay, setContinuousModeDelay] = useState(defaults.continuousModeDelay); - const isContinuousModeDelayValid = delayValidator(continuousModeDelay); + const dateFieldNames = searchItems.indexPattern.fields + .filter(f => f.type === 'date') + .map(f => f.name) + .sort(); + const isContinuousModeAvailable = dateFieldNames.length > 0; + const [continuousModeDateField, setContinuousModeDateField] = useState( + isContinuousModeAvailable ? dateFieldNames[0] : '' + ); + const [continuousModeDelay, setContinuousModeDelay] = useState(defaults.continuousModeDelay); + const isContinuousModeDelayValid = delayValidator(continuousModeDelay); - const transformIdExists = transformIds.some(id => transformId === id); - const transformIdEmpty = transformId === ''; - const transformIdValid = isTransformIdValid(transformId); + const transformIdExists = transformIds.some(id => transformId === id); + const transformIdEmpty = transformId === ''; + const transformIdValid = isTransformIdValid(transformId); - const indexNameExists = indexNames.some(name => destinationIndex === name); - const indexNameEmpty = destinationIndex === ''; - const indexNameValid = isValidIndexName(destinationIndex); - const indexPatternTitleExists = indexPatternTitles.some(name => destinationIndex === name); + const indexNameExists = indexNames.some(name => destinationIndex === name); + const indexNameEmpty = destinationIndex === ''; + const indexNameValid = isValidIndexName(destinationIndex); + const indexPatternTitleExists = indexPatternTitles.some(name => destinationIndex === name); - const valid = - !transformIdEmpty && - transformIdValid && - !transformIdExists && - !indexNameEmpty && - indexNameValid && - (!indexPatternTitleExists || !createIndexPattern) && - (!isContinuousModeAvailable || (isContinuousModeAvailable && isContinuousModeDelayValid)); + const valid = + !transformIdEmpty && + transformIdValid && + !transformIdExists && + !indexNameEmpty && + indexNameValid && + (!indexPatternTitleExists || !createIndexPattern) && + (!isContinuousModeAvailable || (isContinuousModeAvailable && isContinuousModeDelayValid)); - // expose state to wizard - useEffect(() => { - onChange({ + // expose state to wizard + useEffect(() => { + onChange({ + continuousModeDateField, + continuousModeDelay, + createIndexPattern, + isContinuousModeEnabled, + transformId, + transformDescription, + destinationIndex, + touched: true, + valid, + }); + // custom comparison + /* eslint-disable react-hooks/exhaustive-deps */ + }, [ continuousModeDateField, continuousModeDelay, createIndexPattern, @@ -177,232 +201,223 @@ export const StepDetailsForm: FC<Props> = React.memo(({ overrides = {}, onChange transformId, transformDescription, destinationIndex, - touched: true, valid, - }); - // custom comparison - /* eslint-disable react-hooks/exhaustive-deps */ - }, [ - continuousModeDateField, - continuousModeDelay, - createIndexPattern, - isContinuousModeEnabled, - transformId, - transformDescription, - destinationIndex, - valid, - /* eslint-enable react-hooks/exhaustive-deps */ - ]); + /* eslint-enable react-hooks/exhaustive-deps */ + ]); - return ( - <div data-test-subj="transformStepDetailsForm"> - <EuiForm> - <EuiFormRow - label={i18n.translate('xpack.transform.stepDetailsForm.transformIdLabel', { - defaultMessage: 'Transform ID', - })} - isInvalid={(!transformIdEmpty && !transformIdValid) || transformIdExists} - error={[ - ...(!transformIdEmpty && !transformIdValid - ? [ - i18n.translate('xpack.transform.stepDetailsForm.transformIdInvalidError', { - defaultMessage: - 'Must contain lowercase alphanumeric characters (a-z and 0-9), hyphens, and underscores only and must start and end with alphanumeric characters.', - }), - ] - : []), - ...(transformIdExists - ? [ - i18n.translate('xpack.transform.stepDetailsForm.transformIdExistsError', { - defaultMessage: 'A transform with this ID already exists.', - }), - ] - : []), - ]} - > - <EuiFieldText - placeholder="transform ID" - value={transformId} - onChange={e => setTransformId(e.target.value)} - aria-label={i18n.translate( - 'xpack.transform.stepDetailsForm.transformIdInputAriaLabel', - { - defaultMessage: 'Choose a unique transform ID.', - } - )} + return ( + <div data-test-subj="transformStepDetailsForm"> + <EuiForm> + <EuiFormRow + label={i18n.translate('xpack.transform.stepDetailsForm.transformIdLabel', { + defaultMessage: 'Transform ID', + })} isInvalid={(!transformIdEmpty && !transformIdValid) || transformIdExists} - data-test-subj="transformIdInput" - /> - </EuiFormRow> - <EuiFormRow - label={i18n.translate('xpack.transform.stepDetailsForm.transformDescriptionLabel', { - defaultMessage: 'Transform description', - })} - helpText={i18n.translate('xpack.transform.stepDetailsForm.transformDescriptionHelpText', { - defaultMessage: 'Optional descriptive text.', - })} - > - <EuiFieldText - placeholder="transform description" - value={transformDescription} - onChange={e => setTransformDescription(e.target.value)} - aria-label={i18n.translate( - 'xpack.transform.stepDetailsForm.transformDescriptionInputAriaLabel', - { - defaultMessage: 'Choose an optional transform description.', - } - )} - data-test-subj="transformDescriptionInput" - /> - </EuiFormRow> - <EuiFormRow - label={i18n.translate('xpack.transform.stepDetailsForm.destinationIndexLabel', { - defaultMessage: 'Destination index', - })} - isInvalid={!indexNameEmpty && !indexNameValid} - helpText={ - indexNameExists && - i18n.translate('xpack.transform.stepDetailsForm.destinationIndexHelpText', { - defaultMessage: - 'An index with this name already exists. Be aware that running this transform will modify this destination index.', - }) - } - error={ - !indexNameEmpty && - !indexNameValid && [ - <Fragment> - {i18n.translate('xpack.transform.stepDetailsForm.destinationIndexInvalidError', { - defaultMessage: 'Invalid destination index name.', - })} - <br /> - <EuiLink href={esIndicesCreateIndex} target="_blank"> - {i18n.translate( - 'xpack.transform.stepDetailsForm.destinationIndexInvalidErrorLink', - { - defaultMessage: 'Learn more about index name limitations.', - } - )} - </EuiLink> - </Fragment>, - ] - } - > - <EuiFieldText - placeholder="destination index" - value={destinationIndex} - onChange={e => setDestinationIndex(e.target.value)} - aria-label={i18n.translate( - 'xpack.transform.stepDetailsForm.destinationIndexInputAriaLabel', + error={[ + ...(!transformIdEmpty && !transformIdValid + ? [ + i18n.translate('xpack.transform.stepDetailsForm.transformIdInvalidError', { + defaultMessage: + 'Must contain lowercase alphanumeric characters (a-z and 0-9), hyphens, and underscores only and must start and end with alphanumeric characters.', + }), + ] + : []), + ...(transformIdExists + ? [ + i18n.translate('xpack.transform.stepDetailsForm.transformIdExistsError', { + defaultMessage: 'A transform with this ID already exists.', + }), + ] + : []), + ]} + > + <EuiFieldText + placeholder="transform ID" + value={transformId} + onChange={e => setTransformId(e.target.value)} + aria-label={i18n.translate( + 'xpack.transform.stepDetailsForm.transformIdInputAriaLabel', + { + defaultMessage: 'Choose a unique transform ID.', + } + )} + isInvalid={(!transformIdEmpty && !transformIdValid) || transformIdExists} + data-test-subj="transformIdInput" + /> + </EuiFormRow> + <EuiFormRow + label={i18n.translate('xpack.transform.stepDetailsForm.transformDescriptionLabel', { + defaultMessage: 'Transform description', + })} + helpText={i18n.translate( + 'xpack.transform.stepDetailsForm.transformDescriptionHelpText', { - defaultMessage: 'Choose a unique destination index name.', + defaultMessage: 'Optional descriptive text.', } )} - isInvalid={!indexNameEmpty && !indexNameValid} - data-test-subj="transformDestinationIndexInput" - /> - </EuiFormRow> - <EuiFormRow - isInvalid={createIndexPattern && indexPatternTitleExists} - error={ - createIndexPattern && - indexPatternTitleExists && [ - i18n.translate('xpack.transform.stepDetailsForm.indexPatternTitleError', { - defaultMessage: 'An index pattern with this title already exists.', - }), - ] - } - > - <EuiSwitch - name="transformCreateIndexPattern" - label={i18n.translate('xpack.transform.stepCreateForm.createIndexPatternLabel', { - defaultMessage: 'Create index pattern', - })} - checked={createIndexPattern === true} - onChange={() => setCreateIndexPattern(!createIndexPattern)} - data-test-subj="transformCreateIndexPatternSwitch" - /> - </EuiFormRow> - <EuiFormRow - helpText={ - isContinuousModeAvailable === false - ? i18n.translate('xpack.transform.stepDetailsForm.continuousModeError', { - defaultMessage: - 'Continuous mode is not available for indices without date fields.', - }) - : '' - } - > - <EuiSwitch - name="transformContinuousMode" - label={i18n.translate('xpack.transform.stepCreateForm.continuousModeLabel', { - defaultMessage: 'Continuous mode', - })} - checked={isContinuousModeEnabled === true} - onChange={() => setContinuousModeEnabled(!isContinuousModeEnabled)} - disabled={isContinuousModeAvailable === false} - data-test-subj="transformContinuousModeSwitch" - /> - </EuiFormRow> - {isContinuousModeEnabled && ( - <Fragment> - <EuiFormRow - label={i18n.translate( - 'xpack.transform.stepDetailsForm.continuousModeDateFieldLabel', + > + <EuiFieldText + placeholder="transform description" + value={transformDescription} + onChange={e => setTransformDescription(e.target.value)} + aria-label={i18n.translate( + 'xpack.transform.stepDetailsForm.transformDescriptionInputAriaLabel', { - defaultMessage: 'Date field', + defaultMessage: 'Choose an optional transform description.', } )} - helpText={i18n.translate( - 'xpack.transform.stepDetailsForm.continuousModeDateFieldHelpText', + data-test-subj="transformDescriptionInput" + /> + </EuiFormRow> + <EuiFormRow + label={i18n.translate('xpack.transform.stepDetailsForm.destinationIndexLabel', { + defaultMessage: 'Destination index', + })} + isInvalid={!indexNameEmpty && !indexNameValid} + helpText={ + indexNameExists && + i18n.translate('xpack.transform.stepDetailsForm.destinationIndexHelpText', { + defaultMessage: + 'An index with this name already exists. Be aware that running this transform will modify this destination index.', + }) + } + error={ + !indexNameEmpty && + !indexNameValid && [ + <Fragment> + {i18n.translate('xpack.transform.stepDetailsForm.destinationIndexInvalidError', { + defaultMessage: 'Invalid destination index name.', + })} + <br /> + <EuiLink href={esIndicesCreateIndex} target="_blank"> + {i18n.translate( + 'xpack.transform.stepDetailsForm.destinationIndexInvalidErrorLink', + { + defaultMessage: 'Learn more about index name limitations.', + } + )} + </EuiLink> + </Fragment>, + ] + } + > + <EuiFieldText + placeholder="destination index" + value={destinationIndex} + onChange={e => setDestinationIndex(e.target.value)} + aria-label={i18n.translate( + 'xpack.transform.stepDetailsForm.destinationIndexInputAriaLabel', { - defaultMessage: - 'Select the date field that can be used to identify new documents.', + defaultMessage: 'Choose a unique destination index name.', } )} - > - <EuiSelect - options={dateFieldNames.map(text => ({ text }))} - value={continuousModeDateField} - onChange={e => setContinuousModeDateField(e.target.value)} - data-test-subj="transformContinuousDateFieldSelect" - /> - </EuiFormRow> - <EuiFormRow - label={i18n.translate('xpack.transform.stepDetailsForm.continuousModeDelayLabel', { - defaultMessage: 'Delay', + isInvalid={!indexNameEmpty && !indexNameValid} + data-test-subj="transformDestinationIndexInput" + /> + </EuiFormRow> + <EuiFormRow + isInvalid={createIndexPattern && indexPatternTitleExists} + error={ + createIndexPattern && + indexPatternTitleExists && [ + i18n.translate('xpack.transform.stepDetailsForm.indexPatternTitleError', { + defaultMessage: 'An index pattern with this title already exists.', + }), + ] + } + > + <EuiSwitch + name="transformCreateIndexPattern" + label={i18n.translate('xpack.transform.stepCreateForm.createIndexPatternLabel', { + defaultMessage: 'Create index pattern', })} - isInvalid={!isContinuousModeDelayValid} - error={ - !isContinuousModeDelayValid && [ - i18n.translate('xpack.transform.stepDetailsForm.continuousModeDelayError', { - defaultMessage: 'Invalid delay format', - }), - ] - } - helpText={i18n.translate( - 'xpack.transform.stepDetailsForm.continuousModeDelayHelpText', - { - defaultMessage: 'Time delay between current time and latest input data time.', - } - )} - > - <EuiFieldText - placeholder="delay" - value={continuousModeDelay} - onChange={e => setContinuousModeDelay(e.target.value)} - aria-label={i18n.translate( - 'xpack.transform.stepDetailsForm.continuousModeAriaLabel', + checked={createIndexPattern === true} + onChange={() => setCreateIndexPattern(!createIndexPattern)} + data-test-subj="transformCreateIndexPatternSwitch" + /> + </EuiFormRow> + <EuiFormRow + helpText={ + isContinuousModeAvailable === false + ? i18n.translate('xpack.transform.stepDetailsForm.continuousModeError', { + defaultMessage: + 'Continuous mode is not available for indices without date fields.', + }) + : '' + } + > + <EuiSwitch + name="transformContinuousMode" + label={i18n.translate('xpack.transform.stepCreateForm.continuousModeLabel', { + defaultMessage: 'Continuous mode', + })} + checked={isContinuousModeEnabled === true} + onChange={() => setContinuousModeEnabled(!isContinuousModeEnabled)} + disabled={isContinuousModeAvailable === false} + data-test-subj="transformContinuousModeSwitch" + /> + </EuiFormRow> + {isContinuousModeEnabled && ( + <Fragment> + <EuiFormRow + label={i18n.translate( + 'xpack.transform.stepDetailsForm.continuousModeDateFieldLabel', { - defaultMessage: 'Choose a delay.', + defaultMessage: 'Date field', } )} + helpText={i18n.translate( + 'xpack.transform.stepDetailsForm.continuousModeDateFieldHelpText', + { + defaultMessage: + 'Select the date field that can be used to identify new documents.', + } + )} + > + <EuiSelect + options={dateFieldNames.map(text => ({ text }))} + value={continuousModeDateField} + onChange={e => setContinuousModeDateField(e.target.value)} + data-test-subj="transformContinuousDateFieldSelect" + /> + </EuiFormRow> + <EuiFormRow + label={i18n.translate('xpack.transform.stepDetailsForm.continuousModeDelayLabel', { + defaultMessage: 'Delay', + })} isInvalid={!isContinuousModeDelayValid} - data-test-subj="transformContinuousDelayInput" - /> - </EuiFormRow> - </Fragment> - )} - </EuiForm> - </div> - ); -}); + error={ + !isContinuousModeDelayValid && [ + i18n.translate('xpack.transform.stepDetailsForm.continuousModeDelayError', { + defaultMessage: 'Invalid delay format', + }), + ] + } + helpText={i18n.translate( + 'xpack.transform.stepDetailsForm.continuousModeDelayHelpText', + { + defaultMessage: 'Time delay between current time and latest input data time.', + } + )} + > + <EuiFieldText + placeholder="delay" + value={continuousModeDelay} + onChange={e => setContinuousModeDelay(e.target.value)} + aria-label={i18n.translate( + 'xpack.transform.stepDetailsForm.continuousModeAriaLabel', + { + defaultMessage: 'Choose a delay.', + } + )} + isInvalid={!isContinuousModeDelayValid} + data-test-subj="transformContinuousDelayInput" + /> + </EuiFormRow> + </Fragment> + )} + </EuiForm> + </div> + ); + } +); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/wizard/wizard.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/wizard/wizard.tsx index f1861755d97424..0773ecbb1d8d39 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/wizard/wizard.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/wizard/wizard.tsx @@ -10,9 +10,8 @@ import { i18n } from '@kbn/i18n'; import { EuiSteps, EuiStepStatus } from '@elastic/eui'; -import { useKibanaContext } from '../../../../lib/kibana'; - import { getCreateRequestBody, TransformPivotConfig } from '../../../../common'; +import { SearchItems } from '../../../../hooks/use_search_items'; import { applyTransformConfigToDefineState, @@ -46,6 +45,7 @@ interface DefinePivotStepProps { stepDefineState: StepDefineExposedState; setCurrentStep: React.Dispatch<React.SetStateAction<WIZARD_STEPS>>; setStepDefineState: React.Dispatch<React.SetStateAction<StepDefineExposedState>>; + searchItems: SearchItems; } const StepDefine: FC<DefinePivotStepProps> = ({ @@ -53,6 +53,7 @@ const StepDefine: FC<DefinePivotStepProps> = ({ stepDefineState, setCurrentStep, setStepDefineState, + searchItems, }) => { const definePivotRef = useRef(null); @@ -61,31 +62,36 @@ const StepDefine: FC<DefinePivotStepProps> = ({ <div ref={definePivotRef} /> {isCurrentStep && ( <Fragment> - <StepDefineForm onChange={setStepDefineState} overrides={{ ...stepDefineState }} /> + <StepDefineForm + onChange={setStepDefineState} + overrides={{ ...stepDefineState }} + searchItems={searchItems} + /> <WizardNav next={() => setCurrentStep(WIZARD_STEPS.DETAILS)} nextActive={stepDefineState.valid} /> </Fragment> )} - {!isCurrentStep && <StepDefineSummary {...stepDefineState} />} + {!isCurrentStep && ( + <StepDefineSummary formState={{ ...stepDefineState }} searchItems={searchItems} /> + )} </Fragment> ); }; interface WizardProps { cloneConfig?: TransformPivotConfig; + searchItems: SearchItems; } -export const Wizard: FC<WizardProps> = React.memo(({ cloneConfig }) => { - const kibanaContext = useKibanaContext(); - +export const Wizard: FC<WizardProps> = React.memo(({ cloneConfig, searchItems }) => { // The current WIZARD_STEP const [currentStep, setCurrentStep] = useState(WIZARD_STEPS.DEFINE); // The DEFINE state const [stepDefineState, setStepDefineState] = useState( - applyTransformConfigToDefineState(getDefaultStepDefineState(kibanaContext), cloneConfig) + applyTransformConfigToDefineState(getDefaultStepDefineState(searchItems), cloneConfig) ); // The DETAILS state @@ -95,7 +101,11 @@ export const Wizard: FC<WizardProps> = React.memo(({ cloneConfig }) => { const stepDetails = currentStep === WIZARD_STEPS.DETAILS ? ( - <StepDetailsForm onChange={setStepDetailsState} overrides={stepDetailsState} /> + <StepDetailsForm + onChange={setStepDetailsState} + overrides={stepDetailsState} + searchItems={searchItems} + /> ) : ( <StepDetailsSummary {...stepDetailsState} /> ); @@ -122,7 +132,7 @@ export const Wizard: FC<WizardProps> = React.memo(({ cloneConfig }) => { } }, []); - const indexPattern = kibanaContext.currentIndexPattern; + const { indexPattern } = searchItems; const transformConfig = getCreateRequestBody( indexPattern.title, @@ -154,6 +164,7 @@ export const Wizard: FC<WizardProps> = React.memo(({ cloneConfig }) => { stepDefineState={stepDefineState} setCurrentStep={setCurrentStep} setStepDefineState={setStepDefineState} + searchItems={searchItems} /> ), }, diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx index 5196f281adf0aa..d09fc0913590e9 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx @@ -22,9 +22,9 @@ import { import { APP_CREATE_TRANSFORM_CLUSTER_PRIVILEGES } from '../../../../common/constants'; import { useDocumentationLinks } from '../../app_dependencies'; +import { useSearchItems } from '../../hooks/use_search_items'; import { breadcrumbService, docTitleService, BREADCRUMB_SECTION } from '../../services/navigation'; import { PrivilegesWrapper } from '../../lib/authorization'; -import { KibanaProvider, RenderOnlyWithInitializedKibanaContext } from '../../lib/kibana'; import { Wizard } from './components/wizard'; @@ -38,43 +38,41 @@ export const CreateTransformSection: FC<Props> = ({ match }) => { const { esTransform } = useDocumentationLinks(); + const { searchItems } = useSearchItems(match.params.savedObjectId); + return ( <PrivilegesWrapper privileges={APP_CREATE_TRANSFORM_CLUSTER_PRIVILEGES}> - <KibanaProvider savedObjectId={match.params.savedObjectId}> - <EuiPageContent data-test-subj="transformPageCreateTransform"> - <EuiTitle size="l"> - <EuiFlexGroup alignItems="center"> - <EuiFlexItem grow={true}> - <h1> - <FormattedMessage - id="xpack.transform.transformsWizard.createTransformTitle" - defaultMessage="Create transform" - /> - </h1> - </EuiFlexItem> - <EuiFlexItem grow={false}> - <EuiButtonEmpty - href={esTransform} - target="_blank" - iconType="help" - data-test-subj="documentationLink" - > - <FormattedMessage - id="xpack.transform.transformsWizard.transformDocsLinkText" - defaultMessage="Transform docs" - /> - </EuiButtonEmpty> - </EuiFlexItem> - </EuiFlexGroup> - </EuiTitle> - <EuiPageContentBody> - <EuiSpacer size="l" /> - <RenderOnlyWithInitializedKibanaContext> - <Wizard /> - </RenderOnlyWithInitializedKibanaContext> - </EuiPageContentBody> - </EuiPageContent> - </KibanaProvider> + <EuiPageContent data-test-subj="transformPageCreateTransform"> + <EuiTitle size="l"> + <EuiFlexGroup alignItems="center"> + <EuiFlexItem grow={true}> + <h1> + <FormattedMessage + id="xpack.transform.transformsWizard.createTransformTitle" + defaultMessage="Create transform" + /> + </h1> + </EuiFlexItem> + <EuiFlexItem grow={false}> + <EuiButtonEmpty + href={esTransform} + target="_blank" + iconType="help" + data-test-subj="documentationLink" + > + <FormattedMessage + id="xpack.transform.transformsWizard.transformDocsLinkText" + defaultMessage="Transform docs" + /> + </EuiButtonEmpty> + </EuiFlexItem> + </EuiFlexGroup> + </EuiTitle> + <EuiPageContentBody> + <EuiSpacer size="l" /> + {searchItems !== undefined && <Wizard searchItems={searchItems} />} + </EuiPageContentBody> + </EuiPageContent> </PrivilegesWrapper> ); }; diff --git a/x-pack/legacy/plugins/transform/public/plugin.ts b/x-pack/legacy/plugins/transform/public/plugin.ts index 23fad00fb0786f..7b5fbbb4a21519 100644 --- a/x-pack/legacy/plugins/transform/public/plugin.ts +++ b/x-pack/legacy/plugins/transform/public/plugin.ts @@ -11,7 +11,6 @@ import { breadcrumbService } from './app/services/navigation'; import { docTitleService } from './app/services/navigation'; import { textService } from './app/services/text'; import { uiMetricService } from './app/services/ui_metric'; -import { createSavedSearchesLoader } from '../../../../../src/plugins/discover/public'; export class Plugin { public start(core: ShimCore, plugins: ShimPlugins): void { @@ -27,7 +26,7 @@ export class Plugin { savedObjects, overlays, } = core; - const { data, management, savedSearches: coreSavedSearches, uiMetric, xsrfToken } = plugins; + const { data, management, uiMetric, xsrfToken } = plugins; // AppCore/AppPlugins to be passed on as React context const appDependencies = { @@ -46,7 +45,6 @@ export class Plugin { plugins: { data, management, - savedSearches: coreSavedSearches, xsrfToken, }, }; @@ -61,14 +59,6 @@ export class Plugin { }), order: 3, mount(params) { - const savedSearches = createSavedSearchesLoader({ - savedObjectsClient: core.savedObjects.client, - indexPatterns: plugins.data.indexPatterns, - chrome: core.chrome, - overlays: core.overlays, - }); - coreSavedSearches.setClient(savedSearches); - breadcrumbService.setup(params.setBreadcrumbs); params.setBreadcrumbs([ { diff --git a/x-pack/legacy/plugins/transform/public/shared_imports.ts b/x-pack/legacy/plugins/transform/public/shared_imports.ts index b077cd8836c4b5..1ca71f8c4aa773 100644 --- a/x-pack/legacy/plugins/transform/public/shared_imports.ts +++ b/x-pack/legacy/plugins/transform/public/shared_imports.ts @@ -4,6 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ +export { createSavedSearchesLoader } from '../../../../../src/plugins/discover/public'; export { XJsonMode } from '../../../../plugins/es_ui_shared/console_lang/ace/modes/x_json'; export { collapseLiteralStrings, diff --git a/x-pack/legacy/plugins/transform/public/shim.ts b/x-pack/legacy/plugins/transform/public/shim.ts index 05f7626e25e9de..9941aabcf3255e 100644 --- a/x-pack/legacy/plugins/transform/public/shim.ts +++ b/x-pack/legacy/plugins/transform/public/shim.ts @@ -13,7 +13,6 @@ import { docTitle } from 'ui/doc_title/doc_title'; import { createUiStatsReporter } from '../../../../../src/legacy/core_plugins/ui_metric/public'; import { TRANSFORM_DOC_PATHS } from './app/constants'; -import { SavedSearchLoader } from '../../../../../src/plugins/discover/public'; export type NpCore = typeof npStart.core; export type NpPlugins = typeof npStart.plugins; @@ -33,7 +32,7 @@ export type AppCore = Pick< | 'overlays' | 'notifications' >; -export type AppPlugins = Pick<ShimPlugins, 'data' | 'management' | 'savedSearches' | 'xsrfToken'>; +export type AppPlugins = Pick<ShimPlugins, 'data' | 'management' | 'xsrfToken'>; export interface AppDependencies { core: AppCore; @@ -61,18 +60,10 @@ export interface ShimPlugins extends NpPlugins { uiMetric: { createUiStatsReporter: typeof createUiStatsReporter; }; - savedSearches: { - getClient(): any; - setClient(client: any): void; - }; xsrfToken: string; } export function createPublicShim(): { core: ShimCore; plugins: ShimPlugins } { - // This is an Angular service, which is why we use this provider pattern - // to access it within our React app. - let savedSearches: SavedSearchLoader; - const { ELASTIC_WEBSITE_URL, DOC_LINK_VERSION } = npStart.core.docLinks; return { @@ -94,12 +85,6 @@ export function createPublicShim(): { core: ShimCore; plugins: ShimPlugins } { }, plugins: { ...npStart.plugins, - savedSearches: { - setClient: (client: any): void => { - savedSearches = client; - }, - getClient: (): any => savedSearches, - }, uiMetric: { createUiStatsReporter, }, From c769b6313b89a3207748212a8881c68d4053f2e1 Mon Sep 17 00:00:00 2001 From: Liza Katz <liza.katz@elastic.co> Date: Wed, 4 Mar 2020 16:00:42 +0000 Subject: [PATCH 107/120] [Bug fix] Can't modify a custom filter without label (#59296) * Show filter value if nothing else is available for label value * Add label max width * Revert "Add label max width" This reverts commit 953796811080abaf026a98fd59a2cf12df112a71. --- .../public/ui/filter_bar/filter_editor/lib/filter_label.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/data/public/ui/filter_bar/filter_editor/lib/filter_label.tsx b/src/plugins/data/public/ui/filter_bar/filter_editor/lib/filter_label.tsx index 8f9be6b9c079a6..ee6d178b25c22e 100644 --- a/src/plugins/data/public/ui/filter_bar/filter_editor/lib/filter_label.tsx +++ b/src/plugins/data/public/ui/filter_bar/filter_editor/lib/filter_label.tsx @@ -98,7 +98,7 @@ export function FilterLabel({ filter, valueLabel }: Props) { return ( <Fragment> {prefix} - {JSON.stringify(filter.query)} + {JSON.stringify(filter.query) || filter.meta.value} </Fragment> ); } From 76e3f82754ff6d8b6064697b18f6d2d03ed425b1 Mon Sep 17 00:00:00 2001 From: Aaron Caldwell <aaron.caldwell@elastic.co> Date: Wed, 4 Mar 2020 10:00:01 -0700 Subject: [PATCH 108/120] [Maps] Add missing license to requests in maps embeddables (#59207) * Pull core service init out into separate function * Call bind function from embeddable factory constructor * Move inspector init back to start method. Remove old license check file * Add TS types --- x-pack/legacy/plugins/maps/check_license.js | 38 ------------------- .../embeddable/map_embeddable_factory.js | 3 ++ x-pack/legacy/plugins/maps/public/plugin.ts | 20 +++++----- 3 files changed, 14 insertions(+), 47 deletions(-) delete mode 100644 x-pack/legacy/plugins/maps/check_license.js diff --git a/x-pack/legacy/plugins/maps/check_license.js b/x-pack/legacy/plugins/maps/check_license.js deleted file mode 100644 index 9e5397ee5dc755..00000000000000 --- a/x-pack/legacy/plugins/maps/check_license.js +++ /dev/null @@ -1,38 +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. - */ - -/** - * on the license information extracted from the xPackInfo. - * @param {XPackInfo} xPackInfo XPackInfo instance to extract license information from. - * @returns {LicenseCheckResult} - */ -export function checkLicense(xPackInfo) { - if (!xPackInfo.isAvailable()) { - return { - maps: false, - }; - } - - const isAnyXpackLicense = xPackInfo.license.isOneOf([ - 'basic', - 'standard', - 'gold', - 'platinum', - 'enterprise', - 'trial', - ]); - - if (!isAnyXpackLicense) { - return { - maps: false, - }; - } - - return { - maps: true, - uid: xPackInfo.license.getUid(), - }; -} diff --git a/x-pack/legacy/plugins/maps/public/embeddable/map_embeddable_factory.js b/x-pack/legacy/plugins/maps/public/embeddable/map_embeddable_factory.js index ec3a588d3627f7..73f222615493bf 100644 --- a/x-pack/legacy/plugins/maps/public/embeddable/map_embeddable_factory.js +++ b/x-pack/legacy/plugins/maps/public/embeddable/map_embeddable_factory.js @@ -23,6 +23,8 @@ import { getQueryableUniqueIndexPatternIds } from '../selectors/map_selectors'; import { getInitialLayers } from '../angular/get_initial_layers'; import { mergeInputWithSavedMap } from './merge_input_with_saved_map'; import '../angular/services/gis_map_saved_object_loader'; +import { bindSetupCoreAndPlugins } from '../plugin'; +import { npSetup } from 'ui/new_platform'; export class MapEmbeddableFactory extends EmbeddableFactory { type = MAP_SAVED_OBJECT_TYPE; @@ -37,6 +39,7 @@ export class MapEmbeddableFactory extends EmbeddableFactory { getIconForSavedObject: () => APP_ICON, }, }); + bindSetupCoreAndPlugins(npSetup.core, npSetup.plugins); } isEditable() { return capabilities.get().maps.save; diff --git a/x-pack/legacy/plugins/maps/public/plugin.ts b/x-pack/legacy/plugins/maps/public/plugin.ts index 51bec872a1c9b0..c3f90d815239c8 100644 --- a/x-pack/legacy/plugins/maps/public/plugin.ts +++ b/x-pack/legacy/plugins/maps/public/plugin.ts @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the Elastic License. */ -import { Plugin, CoreStart } from 'src/core/public'; +import { Plugin, CoreStart, CoreSetup } from 'src/core/public'; // @ts-ignore import { wrapInI18nContext } from 'ui/i18n'; // @ts-ignore @@ -31,23 +31,25 @@ interface MapsPluginSetupDependencies { }; } +export const bindSetupCoreAndPlugins = (core: CoreSetup, plugins: any) => { + const { licensing } = plugins; + if (licensing) { + licensing.license$.subscribe(({ uid }: { uid: string }) => setLicenseId(uid)); + } +}; + /** @internal */ export class MapsPlugin implements Plugin<MapsPluginSetup, MapsPluginStart> { - public setup( - core: any, - { __LEGACY: { uiModules }, np: { licensing, home } }: MapsPluginSetupDependencies - ) { + public setup(core: CoreSetup, { __LEGACY: { uiModules }, np }: MapsPluginSetupDependencies) { uiModules .get('app/maps', ['ngRoute', 'react']) .directive('mapListing', function(reactDirective: any) { return reactDirective(wrapInI18nContext(MapListing)); }); - if (licensing) { - licensing.license$.subscribe(({ uid }) => setLicenseId(uid)); - } + bindSetupCoreAndPlugins(core, np); - home.featureCatalogue.register(featureCatalogueEntry); + np.home.featureCatalogue.register(featureCatalogueEntry); } public start(core: CoreStart, plugins: any) { From c58b49c0bf78bda238ab036bf383326011b67640 Mon Sep 17 00:00:00 2001 From: Candace Park <56409205+parkiino@users.noreply.github.com> Date: Wed, 4 Mar 2020 12:02:19 -0500 Subject: [PATCH 109/120] task/management-details (#58308) Adds basic details flyout for host management page --- x-pack/plugins/endpoint/common/types.ts | 2 +- .../public/applications/endpoint/index.tsx | 10 +- .../endpoint/store/managing/action.ts | 16 +- .../endpoint/store/managing/index.test.ts | 2 +- .../store/managing/middleware.test.ts | 17 +- .../endpoint/store/managing/middleware.ts | 32 ++- .../store/managing/mock_host_result_list.ts | 63 +++++ .../endpoint/store/managing/reducer.ts | 27 ++- .../endpoint/store/managing/selectors.ts | 47 +++- .../public/applications/endpoint/types.ts | 12 + .../endpoint/view/managing/details.tsx | 159 +++++++++++++ .../endpoint/view/managing/index.test.tsx | 123 ++++++++++ .../endpoint/view/managing/index.tsx | 223 ++++++++++-------- .../view/managing/url_from_query_params.ts | 17 ++ 14 files changed, 627 insertions(+), 123 deletions(-) create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/store/managing/mock_host_result_list.ts create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/managing/details.tsx create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/managing/index.test.tsx create mode 100644 x-pack/plugins/endpoint/public/applications/endpoint/view/managing/url_from_query_params.ts diff --git a/x-pack/plugins/endpoint/common/types.ts b/x-pack/plugins/endpoint/common/types.ts index d804350a9002d4..c88ce9c1413b33 100644 --- a/x-pack/plugins/endpoint/common/types.ts +++ b/x-pack/plugins/endpoint/common/types.ts @@ -253,6 +253,7 @@ interface AlertMetadata { export type AlertData = AlertEvent & AlertMetadata; export interface EndpointMetadata { + '@timestamp': string; event: { created: Date; }; @@ -264,7 +265,6 @@ export interface EndpointMetadata { agent: { version: string; id: string; - name: string; }; host: HostFields; } diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/index.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/index.tsx index 296587706e6acd..a126cb36a86fe8 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/index.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/index.tsx @@ -38,10 +38,10 @@ interface RouterProps { } const AppRoot: React.FunctionComponent<RouterProps> = React.memo( - ({ basename, store, coreStart: { http } }) => ( + ({ basename, store, coreStart: { http, notifications } }) => ( <Provider store={store}> - <KibanaContextProvider services={{ http }}> - <I18nProvider> + <I18nProvider> + <KibanaContextProvider services={{ http, notifications }}> <BrowserRouter basename={basename}> <RouteCapture> <HeaderNavigation basename={basename} /> @@ -72,8 +72,8 @@ const AppRoot: React.FunctionComponent<RouterProps> = React.memo( </Switch> </RouteCapture> </BrowserRouter> - </I18nProvider> - </KibanaContextProvider> + </KibanaContextProvider> + </I18nProvider> </Provider> ) ); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/action.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/action.ts index e916dc66c59f0f..a42e23e57d107e 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/action.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/action.ts @@ -4,14 +4,24 @@ * you may not use this file except in compliance with the Elastic License. */ -import { ManagementListPagination } from '../../types'; -import { EndpointResultList } from '../../../../../common/types'; +import { ManagementListPagination, ServerApiError } from '../../types'; +import { EndpointResultList, EndpointMetadata } from '../../../../../common/types'; interface ServerReturnedManagementList { type: 'serverReturnedManagementList'; payload: EndpointResultList; } +interface ServerReturnedManagementDetails { + type: 'serverReturnedManagementDetails'; + payload: EndpointMetadata; +} + +interface ServerFailedToReturnManagementDetails { + type: 'serverFailedToReturnManagementDetails'; + payload: ServerApiError; +} + interface UserExitedManagementList { type: 'userExitedManagementList'; } @@ -23,5 +33,7 @@ interface UserPaginatedManagementList { export type ManagementAction = | ServerReturnedManagementList + | ServerReturnedManagementDetails + | ServerFailedToReturnManagementDetails | UserExitedManagementList | UserPaginatedManagementList; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/index.test.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/index.test.ts index 56a606f430d9e3..6903c37d4684dc 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/index.test.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/index.test.ts @@ -19,6 +19,7 @@ describe('endpoint_list store concerns', () => { }; const generateEndpoint = (): EndpointMetadata => { return { + '@timestamp': new Date(1582231151055).toString(), event: { created: new Date(0), }, @@ -30,7 +31,6 @@ describe('endpoint_list store concerns', () => { agent: { version: '', id: '', - name: '', }, host: { id: '', diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/middleware.test.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/middleware.test.ts index 9fb12b77e7252f..f29e90509785d7 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/middleware.test.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/middleware.test.ts @@ -6,6 +6,7 @@ import { CoreStart, HttpSetup } from 'kibana/public'; import { applyMiddleware, createStore, Dispatch, Store } from 'redux'; import { coreMock } from '../../../../../../../../src/core/public/mocks'; +import { History, createBrowserHistory } from 'history'; import { managementListReducer, managementMiddlewareFactory } from './index'; import { EndpointMetadata, EndpointResultList } from '../../../../../common/types'; import { ManagementListState } from '../../types'; @@ -18,9 +19,12 @@ describe('endpoint list saga', () => { let store: Store<ManagementListState>; let getState: typeof store['getState']; let dispatch: Dispatch<AppAction>; + let history: History<never>; + // https://github.com/elastic/endpoint-app-team/issues/131 const generateEndpoint = (): EndpointMetadata => { return { + '@timestamp': new Date(1582231151055).toString(), event: { created: new Date(0), }, @@ -32,7 +36,6 @@ describe('endpoint list saga', () => { agent: { version: '', id: '', - name: '', }, host: { id: '', @@ -65,12 +68,20 @@ describe('endpoint list saga', () => { ); getState = store.getState; dispatch = store.dispatch; + history = createBrowserHistory(); }); - test('it handles `userNavigatedToPage`', async () => { + test('it handles `userChangedUrl`', async () => { const apiResponse = getEndpointListApiResponse(); fakeHttpServices.post.mockResolvedValue(apiResponse); expect(fakeHttpServices.post).not.toHaveBeenCalled(); - dispatch({ type: 'userNavigatedToPage', payload: 'managementPage' }); + + dispatch({ + type: 'userChangedUrl', + payload: { + ...history.location, + pathname: '/management', + }, + }); await sleep(); expect(fakeHttpServices.post).toHaveBeenCalledWith('/api/endpoint/metadata', { body: JSON.stringify({ diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/middleware.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/middleware.ts index 754a855c171ad4..1131e8d769fcff 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/middleware.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/middleware.ts @@ -5,19 +5,28 @@ */ import { MiddlewareFactory } from '../../types'; -import { pageIndex, pageSize } from './selectors'; +import { + pageIndex, + pageSize, + isOnManagementPage, + hasSelectedHost, + uiQueryParams, +} from './selectors'; import { ManagementListState } from '../../types'; import { AppAction } from '../action'; export const managementMiddlewareFactory: MiddlewareFactory<ManagementListState> = coreStart => { return ({ getState, dispatch }) => next => async (action: AppAction) => { next(action); + const state = getState(); if ( - (action.type === 'userNavigatedToPage' && action.payload === 'managementPage') || + (action.type === 'userChangedUrl' && + isOnManagementPage(state) && + hasSelectedHost(state) !== true) || action.type === 'userPaginatedManagementList' ) { - const managementPageIndex = pageIndex(getState()); - const managementPageSize = pageSize(getState()); + const managementPageIndex = pageIndex(state); + const managementPageSize = pageSize(state); const response = await coreStart.http.post('/api/endpoint/metadata', { body: JSON.stringify({ paging_properties: [ @@ -32,5 +41,20 @@ export const managementMiddlewareFactory: MiddlewareFactory<ManagementListState> payload: response, }); } + if (action.type === 'userChangedUrl' && hasSelectedHost(state) !== false) { + const { selected_host: selectedHost } = uiQueryParams(state); + try { + const response = await coreStart.http.get(`/api/endpoint/metadata/${selectedHost}`); + dispatch({ + type: 'serverReturnedManagementDetails', + payload: response, + }); + } catch (error) { + dispatch({ + type: 'serverFailedToReturnManagementDetails', + payload: error, + }); + } + } }; }; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/mock_host_result_list.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/mock_host_result_list.ts new file mode 100644 index 00000000000000..866e5c59329e67 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/mock_host_result_list.ts @@ -0,0 +1,63 @@ +/* + * 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 { EndpointResultList } from '../../../../../common/types'; + +export const mockHostResultList: (options?: { + total?: number; + request_page_size?: number; + request_page_index?: number; +}) => EndpointResultList = (options = {}) => { + const { + total = 1, + request_page_size: requestPageSize = 10, + request_page_index: requestPageIndex = 0, + } = options; + + // Skip any that are before the page we're on + const numberToSkip = requestPageSize * requestPageIndex; + + // total - numberToSkip is the count of non-skipped ones, but return no more than a pageSize, and no less than 0 + const actualCountToReturn = Math.max(Math.min(total - numberToSkip, requestPageSize), 0); + + const endpoints = []; + for (let index = 0; index < actualCountToReturn; index++) { + endpoints.push({ + '@timestamp': new Date(1582231151055).toString(), + event: { + created: new Date('2020-02-20T20:39:11.055Z'), + }, + endpoint: { + policy: { + id: '00000000-0000-0000-0000-000000000000', + }, + }, + agent: { + version: '6.9.2', + id: '9a87fdac-e6c0-4f27-a25c-e349e7093cb1', + }, + host: { + id: '3ca26fe5-1c7d-42b8-8763-98256d161c9f', + hostname: 'bea-0.example.com', + ip: ['10.154.150.114', '10.43.37.62', '10.217.73.149'], + mac: ['ea-5a-a8-c0-5-95', '7e-d8-fe-7f-b6-4e', '23-31-5d-af-e6-2b'], + os: { + name: 'windows 6.2', + full: 'Windows Server 2012', + version: '6.2', + variant: 'Windows Server Release 2', + }, + }, + }); + } + const mock: EndpointResultList = { + endpoints, + total, + request_page_size: requestPageSize, + request_page_index: requestPageIndex, + }; + return mock; +}; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/reducer.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/reducer.ts index bbbbdc4d17ce60..582aa6b7138c92 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/reducer.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/reducer.ts @@ -15,6 +15,9 @@ const initialState = (): ManagementListState => { pageIndex: 0, total: 0, loading: false, + detailsError: undefined, + details: undefined, + location: undefined, }; }; @@ -37,18 +40,30 @@ export const managementListReducer: Reducer<ManagementListState, AppAction> = ( pageIndex, loading: false, }; - } - - if (action.type === 'userExitedManagementList') { + } else if (action.type === 'serverReturnedManagementDetails') { + return { + ...state, + details: action.payload, + }; + } else if (action.type === 'serverFailedToReturnManagementDetails') { + return { + ...state, + detailsError: action.payload, + }; + } else if (action.type === 'userExitedManagementList') { return initialState(); - } - - if (action.type === 'userPaginatedManagementList') { + } else if (action.type === 'userPaginatedManagementList') { return { ...state, ...action.payload, loading: true, }; + } else if (action.type === 'userChangedUrl') { + return { + ...state, + location: action.payload, + detailsError: undefined, + }; } return state; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/selectors.ts b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/selectors.ts index 3dcb144c2bade5..a7776f09fe2b81 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/selectors.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/store/managing/selectors.ts @@ -3,8 +3,10 @@ * or more contributor license agreements. Licensed under the Elastic License; * you may not use this file except in compliance with the Elastic License. */ - -import { ManagementListState } from '../../types'; +import querystring from 'querystring'; +import { createSelector } from 'reselect'; +import { Immutable } from '../../../../../common/types'; +import { ManagementListState, ManagingIndexUIQueryParams } from '../../types'; export const listData = (state: ManagementListState) => state.endpoints; @@ -15,3 +17,44 @@ export const pageSize = (state: ManagementListState) => state.pageSize; export const totalHits = (state: ManagementListState) => state.total; export const isLoading = (state: ManagementListState) => state.loading; + +export const detailsError = (state: ManagementListState) => state.detailsError; + +export const detailsData = (state: ManagementListState) => { + return state.details; +}; + +export const isOnManagementPage = (state: ManagementListState) => + state.location ? state.location.pathname === '/management' : false; + +export const uiQueryParams: ( + state: ManagementListState +) => Immutable<ManagingIndexUIQueryParams> = createSelector( + (state: ManagementListState) => state.location, + (location: ManagementListState['location']) => { + const data: ManagingIndexUIQueryParams = {}; + if (location) { + // Removes the `?` from the beginning of query string if it exists + const query = querystring.parse(location.search.slice(1)); + + const keys: Array<keyof ManagingIndexUIQueryParams> = ['selected_host']; + + for (const key of keys) { + const value = query[key]; + if (typeof value === 'string') { + data[key] = value; + } else if (Array.isArray(value)) { + data[key] = value[value.length - 1]; + } + } + } + return data; + } +); + +export const hasSelectedHost: (state: ManagementListState) => boolean = createSelector( + uiQueryParams, + ({ selected_host: selectedHost }) => { + return selectedHost !== undefined; + } +); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/types.ts b/x-pack/plugins/endpoint/public/applications/endpoint/types.ts index b46785d3190e58..6adb3d6adc2603 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/types.ts +++ b/x-pack/plugins/endpoint/public/applications/endpoint/types.ts @@ -28,12 +28,24 @@ export interface ManagementListState { pageSize: number; pageIndex: number; loading: boolean; + detailsError?: ServerApiError; + details?: Immutable<EndpointMetadata>; + location?: Immutable<EndpointAppLocation>; } export interface ManagementListPagination { pageIndex: number; pageSize: number; } +export interface ManagingIndexUIQueryParams { + selected_host?: string; +} + +export interface ServerApiError { + statusCode: number; + error: string; + message: string; +} // REFACTOR to use Types from Ingest Manager - see: https://github.com/elastic/endpoint-app-team/issues/150 export interface PolicyData { diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/managing/details.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/managing/details.tsx new file mode 100644 index 00000000000000..9f2a732042719a --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/managing/details.tsx @@ -0,0 +1,159 @@ +/* + * 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, { useCallback, useMemo, memo, useEffect } from 'react'; +import { + EuiFlyout, + EuiFlyoutBody, + EuiFlyoutHeader, + EuiTitle, + EuiDescriptionList, + EuiLoadingContent, + EuiHorizontalRule, + EuiSpacer, +} from '@elastic/eui'; +import { useHistory } from 'react-router-dom'; +import { i18n } from '@kbn/i18n'; +import { FormattedMessage } from '@kbn/i18n/react'; +import { useKibana } from '../../../../../../../../src/plugins/kibana_react/public'; +import { useManagementListSelector } from './hooks'; +import { urlFromQueryParams } from './url_from_query_params'; +import { uiQueryParams, detailsData, detailsError } from './../../store/managing/selectors'; + +const HostDetails = memo(() => { + const details = useManagementListSelector(detailsData); + if (details === undefined) { + return null; + } + + const detailsResultsUpper = useMemo(() => { + return [ + { + title: i18n.translate('xpack.endpoint.management.details.os', { + defaultMessage: 'OS', + }), + description: details.host.os.full, + }, + { + title: i18n.translate('xpack.endpoint.management.details.lastSeen', { + defaultMessage: 'Last Seen', + }), + description: details['@timestamp'], + }, + { + title: i18n.translate('xpack.endpoint.management.details.alerts', { + defaultMessage: 'Alerts', + }), + description: '0', + }, + ]; + }, [details]); + + const detailsResultsLower = useMemo(() => { + return [ + { + title: i18n.translate('xpack.endpoint.management.details.policy', { + defaultMessage: 'Policy', + }), + description: details.endpoint.policy.id, + }, + { + title: i18n.translate('xpack.endpoint.management.details.policyStatus', { + defaultMessage: 'Policy Status', + }), + description: 'active', + }, + { + title: i18n.translate('xpack.endpoint.management.details.ipAddress', { + defaultMessage: 'IP Address', + }), + description: details.host.ip, + }, + { + title: i18n.translate('xpack.endpoint.management.details.hostname', { + defaultMessage: 'Hostname', + }), + description: details.host.hostname, + }, + { + title: i18n.translate('xpack.endpoint.management.details.sensorVersion', { + defaultMessage: 'Sensor Version', + }), + description: details.agent.version, + }, + ]; + }, [details.agent.version, details.endpoint.policy.id, details.host.hostname, details.host.ip]); + + return ( + <> + <EuiDescriptionList + type="column" + listItems={detailsResultsUpper} + data-test-subj="managementDetailsUpperList" + /> + <EuiHorizontalRule margin="s" /> + <EuiDescriptionList + type="column" + listItems={detailsResultsLower} + data-test-subj="managementDetailsLowerList" + /> + </> + ); +}); + +export const ManagementDetails = () => { + const history = useHistory(); + const { notifications } = useKibana(); + const queryParams = useManagementListSelector(uiQueryParams); + const { selected_host: selectedHost, ...queryParamsWithoutSelectedHost } = queryParams; + const details = useManagementListSelector(detailsData); + const error = useManagementListSelector(detailsError); + + const handleFlyoutClose = useCallback(() => { + history.push(urlFromQueryParams(queryParamsWithoutSelectedHost)); + }, [history, queryParamsWithoutSelectedHost]); + + useEffect(() => { + if (error !== undefined) { + notifications.toasts.danger({ + title: ( + <FormattedMessage + id="xpack.endpoint.managementDetails.errorTitle" + defaultMessage="Could not find host" + /> + ), + body: ( + <FormattedMessage + id="xpack.endpoint.managementDetails.errorBody" + defaultMessage="Please exit the flyout and select an available host." + /> + ), + toastLifeTimeMs: 10000, + }); + } + }, [error, notifications.toasts]); + + return ( + <EuiFlyout onClose={handleFlyoutClose} data-test-subj="managementDetailsFlyout"> + <EuiFlyoutHeader hasBorder> + <EuiTitle size="s"> + <h2 data-test-subj="managementDetailsTitle"> + {details === undefined ? <EuiLoadingContent lines={1} /> : details.host.hostname} + </h2> + </EuiTitle> + </EuiFlyoutHeader> + <EuiFlyoutBody> + {details === undefined ? ( + <> + <EuiLoadingContent lines={3} /> <EuiSpacer size="l" /> <EuiLoadingContent lines={3} /> + </> + ) : ( + <HostDetails /> + )} + </EuiFlyoutBody> + </EuiFlyout> + ); +}; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/managing/index.test.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/managing/index.test.tsx new file mode 100644 index 00000000000000..216e4df61b0dd7 --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/managing/index.test.tsx @@ -0,0 +1,123 @@ +/* + * 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 * as reactTestingLibrary from '@testing-library/react'; +import { Provider } from 'react-redux'; +import { I18nProvider } from '@kbn/i18n/react'; +import { appStoreFactory } from '../../store'; +import { coreMock } from 'src/core/public/mocks'; +import { RouteCapture } from '../route_capture'; +import { createMemoryHistory, MemoryHistory } from 'history'; +import { Router } from 'react-router-dom'; +import { AppAction } from '../../types'; +import { ManagementList } from './index'; +import { mockHostResultList } from '../../store/managing/mock_host_result_list'; + +describe('when on the managing page', () => { + let render: () => reactTestingLibrary.RenderResult; + let history: MemoryHistory<never>; + let store: ReturnType<typeof appStoreFactory>; + + let queryByTestSubjId: ( + renderResult: reactTestingLibrary.RenderResult, + testSubjId: string + ) => Promise<Element | null>; + + beforeEach(async () => { + history = createMemoryHistory<never>(); + store = appStoreFactory(coreMock.createStart(), true); + render = () => { + return reactTestingLibrary.render( + <Provider store={store}> + <I18nProvider> + <Router history={history}> + <RouteCapture> + <ManagementList /> + </RouteCapture> + </Router> + </I18nProvider> + </Provider> + ); + }; + + queryByTestSubjId = async (renderResult, testSubjId) => { + return await reactTestingLibrary.waitForElement( + () => document.body.querySelector(`[data-test-subj="${testSubjId}"]`), + { + container: renderResult.container, + } + ); + }; + }); + + it('should show a table', async () => { + const renderResult = render(); + const table = await queryByTestSubjId(renderResult, 'managementListTable'); + expect(table).not.toBeNull(); + }); + + describe('when there is no selected host in the url', () => { + it('should not show the flyout', () => { + const renderResult = render(); + expect.assertions(1); + return queryByTestSubjId(renderResult, 'managementDetailsFlyout').catch(e => { + expect(e).not.toBeNull(); + }); + }); + describe('when data loads', () => { + beforeEach(() => { + reactTestingLibrary.act(() => { + const action: AppAction = { + type: 'serverReturnedManagementList', + payload: mockHostResultList(), + }; + store.dispatch(action); + }); + }); + + it('should render the management summary row in the table', async () => { + const renderResult = render(); + const rows = await renderResult.findAllByRole('row'); + expect(rows).toHaveLength(2); + }); + + describe('when the user clicks the hostname in the table', () => { + let renderResult: reactTestingLibrary.RenderResult; + beforeEach(async () => { + renderResult = render(); + const detailsLink = await queryByTestSubjId(renderResult, 'hostnameCellLink'); + if (detailsLink) { + reactTestingLibrary.fireEvent.click(detailsLink); + } + }); + + it('should show the flyout', () => { + return queryByTestSubjId(renderResult, 'managementDetailsFlyout').then(flyout => { + expect(flyout).not.toBeNull(); + }); + }); + }); + }); + }); + + describe('when there is a selected host in the url', () => { + beforeEach(() => { + reactTestingLibrary.act(() => { + history.push({ + ...history.location, + search: '?selected_host=1', + }); + }); + }); + it('should show the flyout', () => { + const renderResult = render(); + return queryByTestSubjId(renderResult, 'managementDetailsFlyout').then(flyout => { + expect(flyout).not.toBeNull(); + }); + }); + }); +}); diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/managing/index.tsx b/x-pack/plugins/endpoint/public/applications/endpoint/view/managing/index.tsx index 44b08f25c76535..ba9a931a233b27 100644 --- a/x-pack/plugins/endpoint/public/applications/endpoint/view/managing/index.tsx +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/managing/index.tsx @@ -6,6 +6,7 @@ import React, { useMemo, useCallback } from 'react'; import { useDispatch } from 'react-redux'; +import { useHistory } from 'react-router-dom'; import { EuiPage, EuiPageBody, @@ -16,26 +17,30 @@ import { EuiTitle, EuiBasicTable, EuiTextColor, + EuiLink, } from '@elastic/eui'; import { i18n } from '@kbn/i18n'; import { FormattedMessage } from '@kbn/i18n/react'; import { createStructuredSelector } from 'reselect'; +import { ManagementDetails } from './details'; import * as selectors from '../../store/managing/selectors'; import { ManagementAction } from '../../store/managing/action'; import { useManagementListSelector } from './hooks'; -import { usePageId } from '../use_page_id'; import { CreateStructuredSelector } from '../../types'; +import { urlFromQueryParams } from './url_from_query_params'; const selector = (createStructuredSelector as CreateStructuredSelector)(selectors); export const ManagementList = () => { - usePageId('managementPage'); const dispatch = useDispatch<(a: ManagementAction) => void>(); + const history = useHistory(); const { listData, pageIndex, pageSize, totalHits: totalItemCount, isLoading, + uiQueryParams: queryParams, + hasSelectedHost, } = useManagementListSelector(selector); const paginationSetup = useMemo(() => { @@ -59,109 +64,129 @@ export const ManagementList = () => { [dispatch] ); - const columns = [ - { - field: 'host.hostname', - name: i18n.translate('xpack.endpoint.management.list.host', { - defaultMessage: 'Hostname', - }), - }, - { - field: '', - name: i18n.translate('xpack.endpoint.management.list.policy', { - defaultMessage: 'Policy', - }), - render: () => { - return 'Policy Name'; + const columns = useMemo(() => { + return [ + { + field: '', + name: i18n.translate('xpack.endpoint.management.list.host', { + defaultMessage: 'Hostname', + }), + render: ({ host: { hostname, id } }: { host: { hostname: string; id: string } }) => { + return ( + // eslint-disable-next-line @elastic/eui/href-or-on-click + <EuiLink + data-test-subj="hostnameCellLink" + href={'?' + urlFromQueryParams({ ...queryParams, selected_host: id }).search} + onClick={(ev: React.MouseEvent) => { + ev.preventDefault(); + history.push(urlFromQueryParams({ ...queryParams, selected_host: id })); + }} + > + {hostname} + </EuiLink> + ); + }, }, - }, - { - field: '', - name: i18n.translate('xpack.endpoint.management.list.policyStatus', { - defaultMessage: 'Policy Status', - }), - render: () => { - return 'Policy Status'; + { + field: '', + name: i18n.translate('xpack.endpoint.management.list.policy', { + defaultMessage: 'Policy', + }), + render: () => { + return 'Policy Name'; + }, }, - }, - { - field: '', - name: i18n.translate('xpack.endpoint.management.list.alerts', { - defaultMessage: 'Alerts', - }), - render: () => { - return '0'; + { + field: '', + name: i18n.translate('xpack.endpoint.management.list.policyStatus', { + defaultMessage: 'Policy Status', + }), + render: () => { + return 'Policy Status'; + }, }, - }, - { - field: 'host.os.name', - name: i18n.translate('xpack.endpoint.management.list.os', { - defaultMessage: 'Operating System', - }), - }, - { - field: 'host.ip', - name: i18n.translate('xpack.endpoint.management.list.ip', { - defaultMessage: 'IP Address', - }), - }, - { - field: '', - name: i18n.translate('xpack.endpoint.management.list.sensorVersion', { - defaultMessage: 'Sensor Version', - }), - render: () => { - return 'version'; + { + field: '', + name: i18n.translate('xpack.endpoint.management.list.alerts', { + defaultMessage: 'Alerts', + }), + render: () => { + return '0'; + }, }, - }, - { - field: '', - name: i18n.translate('xpack.endpoint.management.list.lastActive', { - defaultMessage: 'Last Active', - }), - render: () => { - return 'xxxx'; + { + field: 'host.os.name', + name: i18n.translate('xpack.endpoint.management.list.os', { + defaultMessage: 'Operating System', + }), }, - }, - ]; + { + field: 'host.ip', + name: i18n.translate('xpack.endpoint.management.list.ip', { + defaultMessage: 'IP Address', + }), + }, + { + field: '', + name: i18n.translate('xpack.endpoint.management.list.sensorVersion', { + defaultMessage: 'Sensor Version', + }), + render: () => { + return 'version'; + }, + }, + { + field: '', + name: i18n.translate('xpack.endpoint.management.list.lastActive', { + defaultMessage: 'Last Active', + }), + render: () => { + return 'xxxx'; + }, + }, + ]; + }, [queryParams, history]); return ( - <EuiPage> - <EuiPageBody> - <EuiPageContent> - <EuiPageContentHeader> - <EuiPageContentHeaderSection> - <EuiTitle> - <h2 data-test-subj="managementViewTitle"> - <FormattedMessage - id="xpack.endpoint.managementList.hosts" - defaultMessage="Hosts" - /> - </h2> - </EuiTitle> - <h4> - <EuiTextColor color="subdued"> - <FormattedMessage - id="xpack.endpoint.managementList.totalCount" - defaultMessage="{totalItemCount} Hosts" - values={{ totalItemCount }} - /> - </EuiTextColor> - </h4> - </EuiPageContentHeaderSection> - </EuiPageContentHeader> - <EuiPageContentBody> - <EuiBasicTable - data-test-subj="managementListTable" - items={listData} - columns={columns} - loading={isLoading} - pagination={paginationSetup} - onChange={onTableChange} - /> - </EuiPageContentBody> - </EuiPageContent> - </EuiPageBody> - </EuiPage> + <> + {hasSelectedHost && <ManagementDetails />} + <EuiPage> + <EuiPageBody> + <EuiPageContent> + <EuiPageContentHeader> + <EuiPageContentHeaderSection> + <EuiTitle> + <h2 data-test-subj="managementViewTitle"> + <FormattedMessage + id="xpack.endpoint.managementList.hosts" + defaultMessage="Hosts" + /> + </h2> + </EuiTitle> + <h4> + <EuiTextColor color="subdued"> + <FormattedMessage + id="xpack.endpoint.managementList.totalCount" + defaultMessage="{totalItemCount} Hosts" + values={{ totalItemCount }} + /> + </EuiTextColor> + </h4> + </EuiPageContentHeaderSection> + </EuiPageContentHeader> + <EuiPageContentBody> + <EuiBasicTable + data-test-subj="managementListTable" + items={listData} + columns={columns} + loading={isLoading} + pagination={paginationSetup} + onChange={onTableChange} + /> + </EuiPageContentBody> + </EuiPageContent> + </EuiPageBody> + </EuiPage> + </> ); }; diff --git a/x-pack/plugins/endpoint/public/applications/endpoint/view/managing/url_from_query_params.ts b/x-pack/plugins/endpoint/public/applications/endpoint/view/managing/url_from_query_params.ts new file mode 100644 index 00000000000000..ea6a4c6f684adc --- /dev/null +++ b/x-pack/plugins/endpoint/public/applications/endpoint/view/managing/url_from_query_params.ts @@ -0,0 +1,17 @@ +/* + * 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 querystring from 'querystring'; +import { EndpointAppLocation, ManagingIndexUIQueryParams } from '../../types'; + +export function urlFromQueryParams( + queryParams: ManagingIndexUIQueryParams +): Partial<EndpointAppLocation> { + const search = querystring.stringify(queryParams); + return { + search, + }; +} From a6d2b57777e139e7c79d1b7a4b57447ee43bcbdd Mon Sep 17 00:00:00 2001 From: James Gowdy <jgowdy@elastic.co> Date: Wed, 4 Mar 2020 17:04:47 +0000 Subject: [PATCH 110/120] [ML] Fixing records and buckets results endpoints (#59313) --- .../ml/server/routes/anomaly_detectors.ts | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/x-pack/plugins/ml/server/routes/anomaly_detectors.ts b/x-pack/plugins/ml/server/routes/anomaly_detectors.ts index 5e1ca72a7200d4..c6bb62aa34916c 100644 --- a/x-pack/plugins/ml/server/routes/anomaly_detectors.ts +++ b/x-pack/plugins/ml/server/routes/anomaly_detectors.ts @@ -398,8 +398,12 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { desc: schema.maybe(schema.boolean()), end: schema.maybe(schema.string()), exclude_interim: schema.maybe(schema.boolean()), - 'page.from': schema.maybe(schema.number()), - 'page.size': schema.maybe(schema.number()), + page: schema.maybe( + schema.object({ + from: schema.maybe(schema.number()), + size: schema.maybe(schema.number()), + }) + ), record_score: schema.maybe(schema.number()), sort: schema.maybe(schema.string()), start: schema.maybe(schema.string()), @@ -410,7 +414,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { try { const results = await context.ml!.mlClient.callAsCurrentUser('ml.records', { jobId: request.params.jobId, - ...request.body, + body: request.body, }); return response.ok({ body: results, @@ -448,8 +452,12 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { end: schema.maybe(schema.string()), exclude_interim: schema.maybe(schema.boolean()), expand: schema.maybe(schema.boolean()), - 'page.from': schema.maybe(schema.number()), - 'page.size': schema.maybe(schema.number()), + page: schema.maybe( + schema.object({ + from: schema.maybe(schema.number()), + size: schema.maybe(schema.number()), + }) + ), sort: schema.maybe(schema.string()), start: schema.maybe(schema.string()), }), @@ -460,7 +468,7 @@ export function jobRoutes({ router, mlLicense }: RouteInitialization) { const results = await context.ml!.mlClient.callAsCurrentUser('ml.buckets', { jobId: request.params.jobId, timestamp: request.params.timestamp, - ...request.body, + body: request.body, }); return response.ok({ body: results, From 455b2f5047dbef5d16f21536f58983ab3c60cebb Mon Sep 17 00:00:00 2001 From: Lee Drengenberg <lee.drengenberg@elastic.co> Date: Wed, 4 Mar 2020 11:28:59 -0600 Subject: [PATCH 111/120] Have to click save after resetting advanced setting to default (#59216) Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- test/functional/page_objects/settings_page.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/test/functional/page_objects/settings_page.ts b/test/functional/page_objects/settings_page.ts index ff340c6b0abcde..a0f503eb27e682 100644 --- a/test/functional/page_objects/settings_page.ts +++ b/test/functional/page_objects/settings_page.ts @@ -87,6 +87,8 @@ export function SettingsPageProvider({ getService, getPageObjects }: FtrProvider async clearAdvancedSettings(propertyName: string) { await testSubjects.click(`advancedSetting-resetField-${propertyName}`); await PageObjects.header.waitUntilLoadingHasFinished(); + await testSubjects.click(`advancedSetting-saveButton`); + await PageObjects.header.waitUntilLoadingHasFinished(); } async setAdvancedSettingsSelect(propertyName: string, propertyValue: string) { From 543481ba539b5003bbb8f7b2ed987a7c747c964d Mon Sep 17 00:00:00 2001 From: Stacey Gammon <gammon@elastic.co> Date: Wed, 4 Mar 2020 12:43:10 -0500 Subject: [PATCH 112/120] Add direct access link registry and dashboard impl and use in ML (#57496) * Add direct access link registry and dashboard impl and use in ML * Add example plugin with migration example * address code review comments * Fixes, more code review updates * Readme clean up * add tests * remove else * Rename everything from DirectAccessLinkGenerator to the much short UrlGenerator. also fix the ml # thing and return a relative link from dashboard genrator * add important text in bold * Move url generators into share plugin * add correct i18n prefix * Fix timeRange url name * make share plugin optional for dashboard * fix code owners * Use base UrlGeneratorState type, add comments * Fix hash bug and add test that would have caught it --- .github/CODEOWNERS | 6 +- examples/url_generators_examples/README.md | 7 + examples/url_generators_examples/kibana.json | 10 ++ examples/url_generators_examples/package.json | 17 ++ .../url_generators_examples/public/app.tsx | 89 +++++++++ .../url_generators_examples/public/index.ts | 22 +++ .../url_generators_examples/public/plugin.tsx | 76 ++++++++ .../public/url_generator.ts | 78 ++++++++ .../url_generators_examples/tsconfig.json | 15 ++ examples/url_generators_explorer/README.md | 8 + examples/url_generators_explorer/kibana.json | 10 ++ examples/url_generators_explorer/package.json | 17 ++ .../url_generators_explorer/public/app.tsx | 170 ++++++++++++++++++ .../url_generators_explorer/public/index.ts | 22 +++ .../url_generators_explorer/public/page.tsx | 51 ++++++ .../url_generators_explorer/public/plugin.tsx | 48 +++++ .../url_generators_explorer/tsconfig.json | 15 ++ .../kibana.json | 4 + .../public/index.ts | 2 + .../public/plugin.tsx | 25 ++- .../public/url_generator.test.ts | 108 +++++++++++ .../public/url_generator.ts | 86 +++++++++ src/plugins/data/common/timefilter/types.ts | 1 + src/plugins/share/public/index.ts | 11 ++ src/plugins/share/public/plugin.ts | 20 ++- .../share/public/url_generators/README.md | 114 ++++++++++++ .../share/public/url_generators/index.ts | 24 +++ .../url_generators/url_generator_contract.ts | 32 ++++ .../url_generator_definition.ts | 51 ++++++ .../url_generators/url_generator_internal.ts | 99 ++++++++++ .../url_generator_service.test.ts | 126 +++++++++++++ .../url_generators/url_generator_service.ts | 76 ++++++++ .../components/custom_url_editor/utils.js | 74 ++++---- 33 files changed, 1467 insertions(+), 47 deletions(-) create mode 100644 examples/url_generators_examples/README.md create mode 100644 examples/url_generators_examples/kibana.json create mode 100644 examples/url_generators_examples/package.json create mode 100644 examples/url_generators_examples/public/app.tsx create mode 100644 examples/url_generators_examples/public/index.ts create mode 100644 examples/url_generators_examples/public/plugin.tsx create mode 100644 examples/url_generators_examples/public/url_generator.ts create mode 100644 examples/url_generators_examples/tsconfig.json create mode 100644 examples/url_generators_explorer/README.md create mode 100644 examples/url_generators_explorer/kibana.json create mode 100644 examples/url_generators_explorer/package.json create mode 100644 examples/url_generators_explorer/public/app.tsx create mode 100644 examples/url_generators_explorer/public/index.ts create mode 100644 examples/url_generators_explorer/public/page.tsx create mode 100644 examples/url_generators_explorer/public/plugin.tsx create mode 100644 examples/url_generators_explorer/tsconfig.json create mode 100644 src/plugins/dashboard_embeddable_container/public/url_generator.test.ts create mode 100644 src/plugins/dashboard_embeddable_container/public/url_generator.ts create mode 100644 src/plugins/share/public/url_generators/README.md create mode 100644 src/plugins/share/public/url_generators/index.ts create mode 100644 src/plugins/share/public/url_generators/url_generator_contract.ts create mode 100644 src/plugins/share/public/url_generators/url_generator_definition.ts create mode 100644 src/plugins/share/public/url_generators/url_generator_internal.ts create mode 100644 src/plugins/share/public/url_generators/url_generator_service.test.ts create mode 100644 src/plugins/share/public/url_generators/url_generator_service.ts diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 9a3d884c01b432..5948b9672e6d4b 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -5,7 +5,6 @@ # App /x-pack/legacy/plugins/lens/ @elastic/kibana-app /x-pack/legacy/plugins/graph/ @elastic/kibana-app -/src/plugins/share/ @elastic/kibana-app /src/legacy/server/url_shortening/ @elastic/kibana-app /src/legacy/server/sample_data/ @elastic/kibana-app /src/legacy/core_plugins/kibana/public/dashboard/ @elastic/kibana-app @@ -27,6 +26,7 @@ /src/plugins/kibana_legacy/ @elastic/kibana-app /src/plugins/timelion/ @elastic/kibana-app /src/plugins/dev_tools/ @elastic/kibana-app +/src/plugins/dashboard_embeddable_container/ @elastic/kibana-app # App Architecture /packages/kbn-interpreter/ @elastic/kibana-app-arch @@ -42,7 +42,6 @@ /src/legacy/core_plugins/visualizations/ @elastic/kibana-app-arch /src/legacy/server/index_patterns/ @elastic/kibana-app-arch /src/plugins/bfetch/ @elastic/kibana-app-arch -/src/plugins/dashboard_embeddable_container/ @elastic/kibana-app-arch /src/plugins/data/ @elastic/kibana-app-arch /src/plugins/embeddable/ @elastic/kibana-app-arch /src/plugins/expressions/ @elastic/kibana-app-arch @@ -53,6 +52,9 @@ /src/plugins/navigation/ @elastic/kibana-app-arch /src/plugins/ui_actions/ @elastic/kibana-app-arch /src/plugins/visualizations/ @elastic/kibana-app-arch +/src/plugins/share/ @elastic/kibana-app-arch +/examples/url_generators_examples/ @elastic/kibana-app-arch +/examples/url_generators_explorer/ @elastic/kibana-app-arch /x-pack/plugins/advanced_ui_actions/ @elastic/kibana-app-arch /x-pack/plugins/drilldowns/ @elastic/kibana-app-arch diff --git a/examples/url_generators_examples/README.md b/examples/url_generators_examples/README.md new file mode 100644 index 00000000000000..facd5c90c8c96f --- /dev/null +++ b/examples/url_generators_examples/README.md @@ -0,0 +1,7 @@ +## Access links examples + +This example app shows how to: + - Register a direct access link generator. + - Handle migration of legacy generators into a new one. + +To run this example, use the command `yarn start --run-examples`. Navigate to the access links explorer app \ No newline at end of file diff --git a/examples/url_generators_examples/kibana.json b/examples/url_generators_examples/kibana.json new file mode 100644 index 00000000000000..0767018e3bb981 --- /dev/null +++ b/examples/url_generators_examples/kibana.json @@ -0,0 +1,10 @@ +{ + "id": "urlGeneratorsExamples", + "version": "0.0.1", + "kibanaVersion": "kibana", + "configPath": ["url_generators_examples"], + "server": false, + "ui": true, + "requiredPlugins": ["share"], + "optionalPlugins": [] +} diff --git a/examples/url_generators_examples/package.json b/examples/url_generators_examples/package.json new file mode 100644 index 00000000000000..e07482db25f435 --- /dev/null +++ b/examples/url_generators_examples/package.json @@ -0,0 +1,17 @@ +{ + "name": "url_generators_examples", + "version": "1.0.0", + "main": "target/examples/url_generators_examples", + "kibana": { + "version": "kibana", + "templateVersion": "1.0.0" + }, + "license": "Apache-2.0", + "scripts": { + "kbn": "node ../../scripts/kbn.js", + "build": "rm -rf './target' && tsc" + }, + "devDependencies": { + "typescript": "3.5.3" + } +} diff --git a/examples/url_generators_examples/public/app.tsx b/examples/url_generators_examples/public/app.tsx new file mode 100644 index 00000000000000..c39cd876ea9b15 --- /dev/null +++ b/examples/url_generators_examples/public/app.tsx @@ -0,0 +1,89 @@ +/* + * 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 React from 'react'; +import ReactDOM from 'react-dom'; + +import { EuiPageBody } from '@elastic/eui'; +import { EuiPageContent } from '@elastic/eui'; +import { EuiPageContentBody } from '@elastic/eui'; +import { Route, Switch, Redirect, Router, useLocation } from 'react-router-dom'; +import { createBrowserHistory } from 'history'; +import { EuiText } from '@elastic/eui'; +import { AppMountParameters } from '../../../src/core/public'; + +function useQuery() { + const { search } = useLocation(); + const params = React.useMemo(() => new URLSearchParams(search), [search]); + return params; +} + +interface HelloPageProps { + firstName: string; + lastName: string; +} + +const HelloPage = ({ firstName, lastName }: HelloPageProps) => ( + <EuiText>{`Hello ${firstName} ${lastName}`}</EuiText> +); + +export const Routes: React.FC<{}> = () => { + const query = useQuery(); + + return ( + <EuiPageBody> + <EuiPageContent> + <EuiPageContentBody> + <Switch> + <Route path="/hello"> + <HelloPage + firstName={query.get('firstName') || ''} + lastName={query.get('lastName') || ''} + /> + </Route> + <Redirect from="/" to="/hello" /> + </Switch> + </EuiPageContentBody> + </EuiPageContent> + </EuiPageBody> + ); +}; + +export const LinksExample: React.FC<{ + appBasePath: string; +}> = props => { + const history = React.useMemo( + () => + createBrowserHistory({ + basename: props.appBasePath, + }), + [props.appBasePath] + ); + return ( + <Router history={history}> + <Routes /> + </Router> + ); +}; + +export const renderApp = (props: { appBasePath: string }, { element }: AppMountParameters) => { + ReactDOM.render(<LinksExample {...props} />, element); + + return () => ReactDOM.unmountComponentAtNode(element); +}; diff --git a/examples/url_generators_examples/public/index.ts b/examples/url_generators_examples/public/index.ts new file mode 100644 index 00000000000000..e87f9237bff385 --- /dev/null +++ b/examples/url_generators_examples/public/index.ts @@ -0,0 +1,22 @@ +/* + * 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 { AccessLinksExamplesPlugin } from './plugin'; + +export const plugin = () => new AccessLinksExamplesPlugin(); diff --git a/examples/url_generators_examples/public/plugin.tsx b/examples/url_generators_examples/public/plugin.tsx new file mode 100644 index 00000000000000..016494037ec055 --- /dev/null +++ b/examples/url_generators_examples/public/plugin.tsx @@ -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 { SharePluginStart, SharePluginSetup } from '../../../src/plugins/share/public'; +import { Plugin, CoreSetup, AppMountParameters } from '../../../src/core/public'; +import { + HelloLinkGeneratorState, + createHelloPageLinkGenerator, + LegacyHelloLinkGeneratorState, + HELLO_URL_GENERATOR_V1, + HELLO_URL_GENERATOR, + helloPageLinkGeneratorV1, +} from './url_generator'; + +declare module '../../../src/plugins/share/public' { + export interface UrlGeneratorStateMapping { + [HELLO_URL_GENERATOR_V1]: LegacyHelloLinkGeneratorState; + [HELLO_URL_GENERATOR]: HelloLinkGeneratorState; + } +} + +interface StartDeps { + share: SharePluginStart; +} + +interface SetupDeps { + share: SharePluginSetup; +} + +const APP_ID = 'urlGeneratorsExamples'; + +export class AccessLinksExamplesPlugin implements Plugin<void, void, SetupDeps, StartDeps> { + public setup(core: CoreSetup<StartDeps>, { share: { urlGenerators } }: SetupDeps) { + urlGenerators.registerUrlGenerator( + createHelloPageLinkGenerator(async () => ({ + appBasePath: (await core.getStartServices())[0].application.getUrlForApp(APP_ID), + })) + ); + + urlGenerators.registerUrlGenerator(helloPageLinkGeneratorV1); + + core.application.register({ + id: APP_ID, + title: 'Access links examples', + async mount(params: AppMountParameters) { + const { renderApp } = await import('./app'); + return renderApp( + { + appBasePath: params.appBasePath, + }, + params + ); + }, + }); + } + + public start() {} + + public stop() {} +} diff --git a/examples/url_generators_examples/public/url_generator.ts b/examples/url_generators_examples/public/url_generator.ts new file mode 100644 index 00000000000000..f21b1c9295e660 --- /dev/null +++ b/examples/url_generators_examples/public/url_generator.ts @@ -0,0 +1,78 @@ +/* + * 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 url from 'url'; +import { UrlGeneratorState, UrlGeneratorsDefinition } from '../../../src/plugins/share/public'; + +/** + * The name of the latest variable can always stay the same so code that + * uses this link generator statically will switch to the latest version. + * Typescript will warn the developer if incorrect state is being passed + * down. + */ +export const HELLO_URL_GENERATOR = 'HELLO_URL_GENERATOR_V2'; + +export interface HelloLinkState { + firstName: string; + lastName: string; +} + +export type HelloLinkGeneratorState = UrlGeneratorState<HelloLinkState>; + +export const createHelloPageLinkGenerator = ( + getStartServices: () => Promise<{ appBasePath: string }> +): UrlGeneratorsDefinition<typeof HELLO_URL_GENERATOR> => ({ + id: HELLO_URL_GENERATOR, + createUrl: async state => { + const startServices = await getStartServices(); + const appBasePath = startServices.appBasePath; + const parsedUrl = url.parse(window.location.href); + + return url.format({ + protocol: parsedUrl.protocol, + host: parsedUrl.host, + pathname: `${appBasePath}/hello`, + query: { + ...state, + }, + }); + }, +}); + +/** + * The name of this legacy generator id changes, but the *value* stays the same. + */ +export const HELLO_URL_GENERATOR_V1 = 'HELLO_URL_GENERATOR'; + +export interface HelloLinkStateV1 { + name: string; +} + +export type LegacyHelloLinkGeneratorState = UrlGeneratorState< + HelloLinkStateV1, + typeof HELLO_URL_GENERATOR, + HelloLinkState +>; + +export const helloPageLinkGeneratorV1: UrlGeneratorsDefinition<typeof HELLO_URL_GENERATOR_V1> = { + id: HELLO_URL_GENERATOR_V1, + isDeprecated: true, + migrate: async state => { + return { id: HELLO_URL_GENERATOR, state: { firstName: state.name, lastName: '' } }; + }, +}; diff --git a/examples/url_generators_examples/tsconfig.json b/examples/url_generators_examples/tsconfig.json new file mode 100644 index 00000000000000..091130487791bd --- /dev/null +++ b/examples/url_generators_examples/tsconfig.json @@ -0,0 +1,15 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "./target", + "skipLibCheck": true + }, + "include": [ + "index.ts", + "public/**/*.ts", + "public/**/*.tsx", + "server/**/*.ts", + "../../typings/**/*" + ], + "exclude": [] +} diff --git a/examples/url_generators_explorer/README.md b/examples/url_generators_explorer/README.md new file mode 100644 index 00000000000000..922cf37aff8471 --- /dev/null +++ b/examples/url_generators_explorer/README.md @@ -0,0 +1,8 @@ +## Access links explorer + +This example app shows how to: + - Generate links to other applications + - Generate dynamic links, when the target application is not known + - Handle backward compatibility of urls + +To run this example, use the command `yarn start --run-examples`. \ No newline at end of file diff --git a/examples/url_generators_explorer/kibana.json b/examples/url_generators_explorer/kibana.json new file mode 100644 index 00000000000000..94ab75b3388898 --- /dev/null +++ b/examples/url_generators_explorer/kibana.json @@ -0,0 +1,10 @@ +{ + "id": "urlGeneratorsExplorer", + "version": "0.0.1", + "kibanaVersion": "kibana", + "configPath": ["url_generators_explorer"], + "server": false, + "ui": true, + "requiredPlugins": ["share", "urlGeneratorsExamples"], + "optionalPlugins": [] +} diff --git a/examples/url_generators_explorer/package.json b/examples/url_generators_explorer/package.json new file mode 100644 index 00000000000000..52da533dc0c055 --- /dev/null +++ b/examples/url_generators_explorer/package.json @@ -0,0 +1,17 @@ +{ + "name": "url_generators_explorer", + "version": "1.0.0", + "main": "target/examples/url_generators_explorer", + "kibana": { + "version": "kibana", + "templateVersion": "1.0.0" + }, + "license": "Apache-2.0", + "scripts": { + "kbn": "node ../../scripts/kbn.js", + "build": "rm -rf './target' && tsc" + }, + "devDependencies": { + "typescript": "3.5.3" + } +} diff --git a/examples/url_generators_explorer/public/app.tsx b/examples/url_generators_explorer/public/app.tsx new file mode 100644 index 00000000000000..77e804ae08c5f4 --- /dev/null +++ b/examples/url_generators_explorer/public/app.tsx @@ -0,0 +1,170 @@ +/* + * 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 React, { useState, useEffect } from 'react'; +import ReactDOM from 'react-dom'; + +import { EuiPage } from '@elastic/eui'; + +import { EuiButton } from '@elastic/eui'; +import { EuiPageBody } from '@elastic/eui'; +import { EuiPageContent } from '@elastic/eui'; +import { EuiPageContentBody } from '@elastic/eui'; +import { EuiSpacer } from '@elastic/eui'; +import { EuiText } from '@elastic/eui'; +import { EuiFieldText } from '@elastic/eui'; +import { EuiPageHeader } from '@elastic/eui'; +import { EuiLink } from '@elastic/eui'; +import { AppMountParameters } from '../../../src/core/public'; +import { UrlGeneratorsService } from '../../../src/plugins/share/public'; +import { + HELLO_URL_GENERATOR, + HELLO_URL_GENERATOR_V1, +} from '../../url_generators_examples/public/url_generator'; + +interface Props { + getLinkGenerator: UrlGeneratorsService['getUrlGenerator']; +} + +interface MigratedLink { + isDeprecated: boolean; + linkText: string; + link: string; +} + +const ActionsExplorer = ({ getLinkGenerator }: Props) => { + const [migratedLinks, setMigratedLinks] = useState([] as MigratedLink[]); + const [buildingLinks, setBuildingLinks] = useState(false); + const [firstName, setFirstName] = useState(''); + const [lastName, setLastName] = useState(''); + /** + * Lets pretend we grabbed these links from a persistent store, like a saved object. + * Some of these links were created with older versions of the hello link generator. + * They use deprecated generator ids. + */ + const [persistedLinks, setPersistedLinks] = useState([ + { + id: HELLO_URL_GENERATOR_V1, + linkText: 'Say hello to Mary', + state: { + name: 'Mary', + }, + }, + { + id: HELLO_URL_GENERATOR, + linkText: 'Say hello to George', + state: { + firstName: 'George', + lastName: 'Washington', + }, + }, + ]); + + useEffect(() => { + setBuildingLinks(true); + + const updateLinks = async () => { + const updatedLinks = await Promise.all( + persistedLinks.map(async savedLink => { + const generator = getLinkGenerator(savedLink.id); + const link = await generator.createUrl(savedLink.state); + return { + isDeprecated: generator.isDeprecated, + linkText: savedLink.linkText, + link, + }; + }) + ); + setMigratedLinks(updatedLinks); + setBuildingLinks(false); + }; + + updateLinks(); + }, [getLinkGenerator, persistedLinks]); + + return ( + <EuiPage> + <EuiPageBody> + <EuiPageHeader>Access links explorer</EuiPageHeader> + <EuiPageContent> + <EuiPageContentBody> + <EuiText> + <p>Create new links using the most recent version of a url generator.</p> + </EuiText> + <EuiFieldText + prepend="First name" + onChange={e => { + setFirstName(e.target.value); + }} + /> + <EuiFieldText prepend="Last name" onChange={e => setLastName(e.target.value)} /> + <EuiButton + onClick={() => + setPersistedLinks([ + ...persistedLinks, + { + id: HELLO_URL_GENERATOR, + state: { firstName, lastName }, + linkText: `Say hello to ${firstName} ${lastName}`, + }, + ]) + } + > + Add new link + </EuiButton> + <EuiSpacer /> + + <EuiText> + <p> + Existing links retrieved from storage. The links that were generated from legacy + generators are in red. This can be useful for developers to know they will have to + migrate persisted state or in a future version of Kibana, these links may no longer + work. They still work now because legacy url generators must provide a state + migration function. + </p> + </EuiText> + {buildingLinks ? ( + <div>loading...</div> + ) : ( + migratedLinks.map(link => ( + <React.Fragment> + <EuiLink + color={link.isDeprecated ? 'danger' : 'primary'} + data-test-subj="linkToHelloPage" + href={link.link} + target="_blank" + > + {link.linkText} + </EuiLink> + <br /> + </React.Fragment> + )) + )} + </EuiPageContentBody> + </EuiPageContent> + </EuiPageBody> + </EuiPage> + ); +}; + +export const renderApp = (props: Props, { element }: AppMountParameters) => { + ReactDOM.render(<ActionsExplorer {...props} />, element); + + return () => ReactDOM.unmountComponentAtNode(element); +}; diff --git a/examples/url_generators_explorer/public/index.ts b/examples/url_generators_explorer/public/index.ts new file mode 100644 index 00000000000000..30ff481dbe3a5f --- /dev/null +++ b/examples/url_generators_explorer/public/index.ts @@ -0,0 +1,22 @@ +/* + * 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 { AccessLinksExplorerPlugin } from './plugin'; + +export const plugin = () => new AccessLinksExplorerPlugin(); diff --git a/examples/url_generators_explorer/public/page.tsx b/examples/url_generators_explorer/public/page.tsx new file mode 100644 index 00000000000000..90bea358048221 --- /dev/null +++ b/examples/url_generators_explorer/public/page.tsx @@ -0,0 +1,51 @@ +/* + * 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 React from 'react'; + +import { + EuiPageBody, + EuiPageContent, + EuiPageContentBody, + EuiPageHeader, + EuiPageHeaderSection, + EuiTitle, +} from '@elastic/eui'; + +interface PageProps { + title: string; + children: React.ReactNode; +} + +export function Page({ title, children }: PageProps) { + return ( + <EuiPageBody data-test-subj="searchTestPage"> + <EuiPageHeader> + <EuiPageHeaderSection> + <EuiTitle size="l"> + <h1>{title}</h1> + </EuiTitle> + </EuiPageHeaderSection> + </EuiPageHeader> + <EuiPageContent> + <EuiPageContentBody>{children}</EuiPageContentBody> + </EuiPageContent> + </EuiPageBody> + ); +} diff --git a/examples/url_generators_explorer/public/plugin.tsx b/examples/url_generators_explorer/public/plugin.tsx new file mode 100644 index 00000000000000..1fe70476b8e79c --- /dev/null +++ b/examples/url_generators_explorer/public/plugin.tsx @@ -0,0 +1,48 @@ +/* + * 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 { SharePluginStart } from 'src/plugins/share/public'; +import { Plugin, CoreSetup, AppMountParameters } from '../../../src/core/public'; + +interface StartDeps { + share: SharePluginStart; +} + +export class AccessLinksExplorerPlugin implements Plugin<void, void, {}, StartDeps> { + public setup(core: CoreSetup<StartDeps>) { + core.application.register({ + id: 'urlGeneratorsExplorer', + title: 'Access links explorer', + async mount(params: AppMountParameters) { + const depsStart = (await core.getStartServices())[1]; + const { renderApp } = await import('./app'); + return renderApp( + { + getLinkGenerator: depsStart.share.urlGenerators.getUrlGenerator, + }, + params + ); + }, + }); + } + + public start() {} + + public stop() {} +} diff --git a/examples/url_generators_explorer/tsconfig.json b/examples/url_generators_explorer/tsconfig.json new file mode 100644 index 00000000000000..091130487791bd --- /dev/null +++ b/examples/url_generators_explorer/tsconfig.json @@ -0,0 +1,15 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "./target", + "skipLibCheck": true + }, + "include": [ + "index.ts", + "public/**/*.ts", + "public/**/*.tsx", + "server/**/*.ts", + "../../typings/**/*" + ], + "exclude": [] +} diff --git a/src/plugins/dashboard_embeddable_container/kibana.json b/src/plugins/dashboard_embeddable_container/kibana.json index aab23316f606c0..70e37ea6a6d7dc 100644 --- a/src/plugins/dashboard_embeddable_container/kibana.json +++ b/src/plugins/dashboard_embeddable_container/kibana.json @@ -2,10 +2,14 @@ "id": "dashboard_embeddable_container", "version": "kibana", "requiredPlugins": [ + "data", "embeddable", "inspector", "uiActions" ], + "optionalPlugins": [ + "share" + ], "server": false, "ui": true } diff --git a/src/plugins/dashboard_embeddable_container/public/index.ts b/src/plugins/dashboard_embeddable_container/public/index.ts index e5f55c06b290ca..c6846346b64ef5 100644 --- a/src/plugins/dashboard_embeddable_container/public/index.ts +++ b/src/plugins/dashboard_embeddable_container/public/index.ts @@ -31,3 +31,5 @@ export function plugin(initializerContext: PluginInitializerContext) { } export { DashboardEmbeddableContainerPublicPlugin as Plugin }; + +export { DASHBOARD_APP_URL_GENERATOR } from './url_generator'; diff --git a/src/plugins/dashboard_embeddable_container/public/plugin.tsx b/src/plugins/dashboard_embeddable_container/public/plugin.tsx index 5d0b35ee01e3be..6f78829af19f1c 100644 --- a/src/plugins/dashboard_embeddable_container/public/plugin.tsx +++ b/src/plugins/dashboard_embeddable_container/public/plugin.tsx @@ -21,6 +21,7 @@ import * as React from 'react'; import { PluginInitializerContext, CoreSetup, CoreStart, Plugin } from 'src/core/public'; +import { SharePluginSetup } from 'src/plugins/share/public'; import { UiActionsSetup, UiActionsStart } from '../../../plugins/ui_actions/public'; import { CONTEXT_MENU_TRIGGER, IEmbeddableSetup, IEmbeddableStart } from './embeddable_plugin'; import { ExpandPanelAction, ReplacePanelAction } from '.'; @@ -33,10 +34,22 @@ import { } from '../../../plugins/kibana_react/public'; import { ExpandPanelActionContext, ACTION_EXPAND_PANEL } from './actions/expand_panel_action'; import { ReplacePanelActionContext, ACTION_REPLACE_PANEL } from './actions/replace_panel_action'; +import { + DashboardAppLinkGeneratorState, + DASHBOARD_APP_URL_GENERATOR, + createDirectAccessDashboardLinkGenerator, +} from './url_generator'; + +declare module '../../share/public' { + export interface UrlGeneratorStateMapping { + [DASHBOARD_APP_URL_GENERATOR]: DashboardAppLinkGeneratorState; + } +} interface SetupDependencies { embeddable: IEmbeddableSetup; uiActions: UiActionsSetup; + share?: SharePluginSetup; } interface StartDependencies { @@ -59,10 +72,20 @@ export class DashboardEmbeddableContainerPublicPlugin implements Plugin<Setup, Start, SetupDependencies, StartDependencies> { constructor(initializerContext: PluginInitializerContext) {} - public setup(core: CoreSetup, { embeddable, uiActions }: SetupDependencies): Setup { + public setup(core: CoreSetup, { share, uiActions }: SetupDependencies): Setup { const expandPanelAction = new ExpandPanelAction(); uiActions.registerAction(expandPanelAction); uiActions.attachAction(CONTEXT_MENU_TRIGGER, expandPanelAction); + const startServices = core.getStartServices(); + + if (share) { + share.urlGenerators.registerUrlGenerator( + createDirectAccessDashboardLinkGenerator(async () => ({ + appBasePath: (await startServices)[0].application.getUrlForApp('dashboard'), + useHashedUrl: (await startServices)[0].uiSettings.get('state:storeInSessionStorage'), + })) + ); + } } public start(core: CoreStart, plugins: StartDependencies): Start { diff --git a/src/plugins/dashboard_embeddable_container/public/url_generator.test.ts b/src/plugins/dashboard_embeddable_container/public/url_generator.test.ts new file mode 100644 index 00000000000000..5dfc47b694f609 --- /dev/null +++ b/src/plugins/dashboard_embeddable_container/public/url_generator.test.ts @@ -0,0 +1,108 @@ +/* + * 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 { createDirectAccessDashboardLinkGenerator } from './url_generator'; +import { hashedItemStore } from '../../kibana_utils/public'; +// eslint-disable-next-line +import { mockStorage } from '../../kibana_utils/public/storage/hashed_item_store/mock'; + +const APP_BASE_PATH: string = 'xyz/app/kibana'; + +describe('dashboard url generator', () => { + beforeEach(() => { + // @ts-ignore + hashedItemStore.storage = mockStorage; + }); + + test('creates a link to a saved dashboard', async () => { + const generator = createDirectAccessDashboardLinkGenerator(() => + Promise.resolve({ appBasePath: APP_BASE_PATH, useHashedUrl: false }) + ); + const url = await generator.createUrl!({}); + expect(url).toMatchInlineSnapshot(`"xyz/app/kibana#/dashboard?_a=()&_g=()"`); + }); + + test('creates a link with global time range set up', async () => { + const generator = createDirectAccessDashboardLinkGenerator(() => + Promise.resolve({ appBasePath: APP_BASE_PATH, useHashedUrl: false }) + ); + const url = await generator.createUrl!({ + timeRange: { to: 'now', from: 'now-15m', mode: 'relative' }, + }); + expect(url).toMatchInlineSnapshot( + `"xyz/app/kibana#/dashboard?_a=()&_g=(time:(from:now-15m,mode:relative,to:now))"` + ); + }); + + test('creates a link with filters, time range and query to a saved object', async () => { + const generator = createDirectAccessDashboardLinkGenerator(() => + Promise.resolve({ appBasePath: APP_BASE_PATH, useHashedUrl: false }) + ); + const url = await generator.createUrl!({ + timeRange: { to: 'now', from: 'now-15m', mode: 'relative' }, + dashboardId: '123', + filters: [ + { + meta: { + alias: null, + disabled: false, + negate: false, + }, + query: { query: 'hi' }, + }, + ], + query: { query: 'bye', language: 'kuery' }, + }); + expect(url).toMatchInlineSnapshot( + `"xyz/app/kibana#/dashboard/123?_a=(filters:!((meta:(alias:!n,disabled:!f,negate:!f),query:(query:hi))),query:(language:kuery,query:bye))&_g=(time:(from:now-15m,mode:relative,to:now))"` + ); + }); + + test('if no useHash setting is given, uses the one was start services', async () => { + const generator = createDirectAccessDashboardLinkGenerator(() => + Promise.resolve({ appBasePath: APP_BASE_PATH, useHashedUrl: true }) + ); + const url = await generator.createUrl!({ + timeRange: { to: 'now', from: 'now-15m', mode: 'relative' }, + }); + expect(url.indexOf('relative')).toBe(-1); + }); + + test('can override a false useHash ui setting', async () => { + const generator = createDirectAccessDashboardLinkGenerator(() => + Promise.resolve({ appBasePath: APP_BASE_PATH, useHashedUrl: false }) + ); + const url = await generator.createUrl!({ + timeRange: { to: 'now', from: 'now-15m', mode: 'relative' }, + useHash: true, + }); + expect(url.indexOf('relative')).toBe(-1); + }); + + test('can override a true useHash ui setting', async () => { + const generator = createDirectAccessDashboardLinkGenerator(() => + Promise.resolve({ appBasePath: APP_BASE_PATH, useHashedUrl: true }) + ); + const url = await generator.createUrl!({ + timeRange: { to: 'now', from: 'now-15m', mode: 'relative' }, + useHash: false, + }); + expect(url.indexOf('relative')).toBeGreaterThan(1); + }); +}); diff --git a/src/plugins/dashboard_embeddable_container/public/url_generator.ts b/src/plugins/dashboard_embeddable_container/public/url_generator.ts new file mode 100644 index 00000000000000..5f1255bc9d45f6 --- /dev/null +++ b/src/plugins/dashboard_embeddable_container/public/url_generator.ts @@ -0,0 +1,86 @@ +/* + * 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 { TimeRange, Filter, Query } from '../../data/public'; +import { setStateToKbnUrl } from '../../kibana_utils/public'; +import { UrlGeneratorsDefinition, UrlGeneratorState } from '../../share/public'; + +export const STATE_STORAGE_KEY = '_a'; +export const GLOBAL_STATE_STORAGE_KEY = '_g'; + +export const DASHBOARD_APP_URL_GENERATOR = 'DASHBOARD_APP_URL_GENERATOR'; + +export type DashboardAppLinkGeneratorState = UrlGeneratorState<{ + /** + * If given, the dashboard saved object with this id will be loaded. If not given, + * a new, unsaved dashboard will be loaded up. + */ + dashboardId?: string; + /** + * Optionally set the time range in the time picker. + */ + timeRange?: TimeRange; + /** + * Optionally apply filers. NOTE: if given and used in conjunction with `dashboardId`, and the + * saved dashboard has filters saved with it, this will _replace_ those filters. This will set + * app filters, not global filters. + */ + filters?: Filter[]; + /** + * Optionally set a query. NOTE: if given and used in conjunction with `dashboardId`, and the + * saved dashboard has a query saved with it, this will _replace_ that query. + */ + query?: Query; + /** + * If not given, will use the uiSettings configuration for `storeInSessionStorage`. useHash determines + * whether to hash the data in the url to avoid url length issues. + */ + useHash?: boolean; +}>; + +export const createDirectAccessDashboardLinkGenerator = ( + getStartServices: () => Promise<{ appBasePath: string; useHashedUrl: boolean }> +): UrlGeneratorsDefinition<typeof DASHBOARD_APP_URL_GENERATOR> => ({ + id: DASHBOARD_APP_URL_GENERATOR, + createUrl: async state => { + const startServices = await getStartServices(); + const useHash = state.useHash ?? startServices.useHashedUrl; + const appBasePath = startServices.appBasePath; + const hash = state.dashboardId ? `dashboard/${state.dashboardId}` : `dashboard`; + + const appStateUrl = setStateToKbnUrl( + STATE_STORAGE_KEY, + { + query: state.query, + filters: state.filters, + }, + { useHash }, + `${appBasePath}#/${hash}` + ); + + return setStateToKbnUrl( + GLOBAL_STATE_STORAGE_KEY, + { + time: state.timeRange, + }, + { useHash }, + appStateUrl + ); + }, +}); diff --git a/src/plugins/data/common/timefilter/types.ts b/src/plugins/data/common/timefilter/types.ts index 1fc606a57d22d8..b197b16e67dd11 100644 --- a/src/plugins/data/common/timefilter/types.ts +++ b/src/plugins/data/common/timefilter/types.ts @@ -25,4 +25,5 @@ export interface RefreshInterval { export interface TimeRange { from: string; to: string; + mode?: 'absolute' | 'relative'; } diff --git a/src/plugins/share/public/index.ts b/src/plugins/share/public/index.ts index fe5822c79366b7..183219645467e1 100644 --- a/src/plugins/share/public/index.ts +++ b/src/plugins/share/public/index.ts @@ -17,6 +17,8 @@ * under the License. */ +export { UrlGeneratorStateMapping } from './url_generators/url_generator_definition'; + export { SharePluginSetup, SharePluginStart } from './plugin'; export { ShareContext, @@ -25,6 +27,15 @@ export { ShowShareMenuOptions, ShareContextMenuPanelItem, } from './types'; + +export { + UrlGeneratorId, + UrlGeneratorState, + UrlGeneratorsDefinition, + UrlGeneratorContract, + UrlGeneratorsService, +} from './url_generators'; + import { SharePlugin } from './plugin'; export const plugin = () => new SharePlugin(); diff --git a/src/plugins/share/public/plugin.ts b/src/plugins/share/public/plugin.ts index 01c248624950ab..5b638174b4dfbf 100644 --- a/src/plugins/share/public/plugin.ts +++ b/src/plugins/share/public/plugin.ts @@ -21,27 +21,39 @@ import { CoreSetup, CoreStart, Plugin } from 'src/core/public'; import { ShareMenuManager, ShareMenuManagerStart } from './services'; import { ShareMenuRegistry, ShareMenuRegistrySetup } from './services'; import { createShortUrlRedirectApp } from './services/short_url_redirect_app'; +import { + UrlGeneratorsService, + UrlGeneratorsSetup, + UrlGeneratorsStart, +} from './url_generators/url_generator_service'; export class SharePlugin implements Plugin<SharePluginSetup, SharePluginStart> { private readonly shareMenuRegistry = new ShareMenuRegistry(); private readonly shareContextMenu = new ShareMenuManager(); + private readonly urlGeneratorsService = new UrlGeneratorsService(); - public async setup(core: CoreSetup) { + public setup(core: CoreSetup): SharePluginSetup { core.application.register(createShortUrlRedirectApp(core, window.location)); return { ...this.shareMenuRegistry.setup(), + urlGenerators: this.urlGeneratorsService.setup(core), }; } - public async start(core: CoreStart) { + public start(core: CoreStart): SharePluginStart { return { ...this.shareContextMenu.start(core, this.shareMenuRegistry.start()), + urlGenerators: this.urlGeneratorsService.start(core), }; } } /** @public */ -export type SharePluginSetup = ShareMenuRegistrySetup; +export type SharePluginSetup = ShareMenuRegistrySetup & { + urlGenerators: UrlGeneratorsSetup; +}; /** @public */ -export type SharePluginStart = ShareMenuManagerStart; +export type SharePluginStart = ShareMenuManagerStart & { + urlGenerators: UrlGeneratorsStart; +}; diff --git a/src/plugins/share/public/url_generators/README.md b/src/plugins/share/public/url_generators/README.md new file mode 100644 index 00000000000000..39ee5f2901e916 --- /dev/null +++ b/src/plugins/share/public/url_generators/README.md @@ -0,0 +1,114 @@ +## URL Generator Services + +Developers who maintain pages in Kibana that other developers may want to link to +can register a direct access link generator. This provides backward compatibility support +so the developer of the app/page has a way to change their url structure without +breaking users of this system. If users were to generate the urls on their own, +using string concatenation, those links may break often. + +Owners: Kibana App Arch team. + +## Producer Usage + +If you are registering a new generator, don't forget to add a mapping of id to state + +```ts +declare module '../../share/public' { + export interface UrlGeneratorStateMapping { + [MY_GENERATOR]: MyState; + } +} +``` + +### Migration + +Once your generator is released, you should *never* change the `MyState` type, nor the value of `MY_GENERATOR`. +Instead, register a new generator id, with the new state type, and add a migration function to convert to it. + +To avoid having to refactor many run time usages of the old id, change the _value_ of the generator id, but not +the name itself. For example: + +Initial release: +```ts +export const MY_GENERATOR = 'MY_GENERATOR'; +export const MyState { + foo: string; +} +export interface UrlGeneratorStateMapping { + [MY_GENERATOR]: UrlGeneratorState<MyState>; +} +``` + +Second release: +```ts + // Value stays the same here! This is important. + export const MY_LEGACY_GENERATOR_V1 = 'MY_GENERATOR'; + // Always point the const `MY_GENERATOR` to the most + // recent version of the state to avoid a large refactor. + export const MY_GENERATOR = 'MY_GENERATOR_V2'; + + // Same here, the mapping stays the same, but the names change. + export const MyLegacyState { + foo: string; + } + // New type, old name! + export const MyState { + bar: string; + } + export interface UrlGeneratorStateMapping { + [MY_LEGACY_GENERATOR_V1]: UrlGeneratorState<MyLegacyState, typeof MY_GENERATOR, MyState>; + [MY_GENERATOR]: UrlGeneratorState<MyState>; + } +``` + +### Examples + +Working examples of registered link generators can be found in `examples/url_generator_examples` folder. Run these +examples via + +``` +yarn start --run-examples +``` + +## Consumer Usage + +Consumers of this service can use the ids and state to create URL strings: + +```ts + const { id, state } = getLinkData(); + const generator = urlGeneratorPluginStart.getLinkGenerator(id); + if (generator.isDeprecated) { + // Consumers have a few options here. + + // If the consumer constrols the persisted data, they can migrate this data and + // update it. Something like this: + const { id: newId, state: newState } = await generator.migrate(state); + replaceLegacyData({ oldId: id, newId, newState }); + + // If the consumer does not control the persisted data store, they can warn the + // user that they are using a deprecated id and should update the data on their + // own. + alert(`This data is deprecated, please generate new URL data.`); + + // They can also choose to do nothing. Calling `createUrl` will internally migrate this + // data. Depending on the cost, we may choose to keep support for deprecated generators + // along for a long time, using telemetry to make this decision. However another + // consideration is how many migrations are taking place and whether this is creating a + // performance issue. + } + const link = await generator.createUrl(savedLink.state); +``` + +**As a consumer, you should not persist the url string!** + +As soon as you do, you have lost your migration options. Instead you should store the id +and the state object. This will let you recreate the migrated url later. + +### Examples + +Working examples of consuming registered link generators can be found in `examples/url_generator_explorer` folder. Run these +via + +``` +yarn start --run-examples +``` diff --git a/src/plugins/share/public/url_generators/index.ts b/src/plugins/share/public/url_generators/index.ts new file mode 100644 index 00000000000000..4d45dc4fee54ff --- /dev/null +++ b/src/plugins/share/public/url_generators/index.ts @@ -0,0 +1,24 @@ +/* + * 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. + */ + +export * from './url_generator_service'; + +export * from './url_generator_definition'; + +export * from './url_generator_contract'; diff --git a/src/plugins/share/public/url_generators/url_generator_contract.ts b/src/plugins/share/public/url_generators/url_generator_contract.ts new file mode 100644 index 00000000000000..993428ebe1f648 --- /dev/null +++ b/src/plugins/share/public/url_generators/url_generator_contract.ts @@ -0,0 +1,32 @@ +/* + * 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 { UrlGeneratorId, UrlGeneratorStateMapping } from './url_generator_definition'; + +export interface UrlGeneratorContract<Id extends UrlGeneratorId> { + id: Id; + createUrl(state: UrlGeneratorStateMapping[Id]['State']): Promise<string>; + isDeprecated: boolean; + migrate( + state: UrlGeneratorStateMapping[Id]['State'] + ): Promise<{ + state: UrlGeneratorStateMapping[Id]['MigratedState']; + id: UrlGeneratorStateMapping[Id]['MigratedId']; + }>; +} diff --git a/src/plugins/share/public/url_generators/url_generator_definition.ts b/src/plugins/share/public/url_generators/url_generator_definition.ts new file mode 100644 index 00000000000000..51994c203907f3 --- /dev/null +++ b/src/plugins/share/public/url_generators/url_generator_definition.ts @@ -0,0 +1,51 @@ +/* + * 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. + */ + +export type UrlGeneratorId = string; + +export interface UrlGeneratorState< + S extends {}, + I extends string | undefined = undefined, + MS extends {} | undefined = undefined +> { + State: S; + MigratedId?: I; + MigratedState?: MS; +} + +export interface UrlGeneratorStateMapping { + // The `any` here is quite unfortunate. Using `object` actually gives no type errors in my IDE + // but running `node scripts/type_check` will cause an error: + // examples/url_generators_examples/public/url_generator.ts:77:66 - + // error TS2339: Property 'name' does not exist on type 'object'. However it's correctly + // typed when I edit that file. + [key: string]: UrlGeneratorState<any, string | undefined, object | undefined>; +} + +export interface UrlGeneratorsDefinition<Id extends UrlGeneratorId> { + id: Id; + createUrl?: (state: UrlGeneratorStateMapping[Id]['State']) => Promise<string>; + isDeprecated?: boolean; + migrate?: ( + state: UrlGeneratorStateMapping[Id]['State'] + ) => Promise<{ + state: UrlGeneratorStateMapping[Id]['MigratedState']; + id: UrlGeneratorStateMapping[Id]['MigratedId']; + }>; +} diff --git a/src/plugins/share/public/url_generators/url_generator_internal.ts b/src/plugins/share/public/url_generators/url_generator_internal.ts new file mode 100644 index 00000000000000..19ee83059e017d --- /dev/null +++ b/src/plugins/share/public/url_generators/url_generator_internal.ts @@ -0,0 +1,99 @@ +/* + * 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 { i18n } from '@kbn/i18n'; +import { UrlGeneratorsStart } from './url_generator_service'; +import { + UrlGeneratorStateMapping, + UrlGeneratorId, + UrlGeneratorsDefinition, +} from './url_generator_definition'; +import { UrlGeneratorContract } from './url_generator_contract'; + +export class UrlGeneratorInternal<Id extends UrlGeneratorId> { + constructor( + private spec: UrlGeneratorsDefinition<Id>, + private getGenerator: UrlGeneratorsStart['getUrlGenerator'] + ) { + if (spec.isDeprecated && !spec.migrate) { + throw new Error( + i18n.translate('share.urlGenerators.error.noMigrationFnProvided', { + defaultMessage: + 'If the access link generator is marked as deprecated, you must provide a migration function.', + }) + ); + } + + if (!spec.isDeprecated && spec.migrate) { + throw new Error( + i18n.translate('share.urlGenerators.error.migrationFnGivenNotDeprecated', { + defaultMessage: + 'If you provide a migration function, you must mark this generator as deprecated', + }) + ); + } + + if (!spec.createUrl && !spec.isDeprecated) { + throw new Error( + i18n.translate('share.urlGenerators.error.noCreateUrlFnProvided', { + defaultMessage: + 'This generator is not marked as deprecated. Please provide a createUrl fn.', + }) + ); + } + + if (spec.createUrl && spec.isDeprecated) { + throw new Error( + i18n.translate('share.urlGenerators.error.createUrlFnProvided', { + defaultMessage: 'This generator is marked as deprecated. Do not supply a createUrl fn.', + }) + ); + } + } + + getPublicContract(): UrlGeneratorContract<Id> { + return { + id: this.spec.id, + createUrl: async (state: UrlGeneratorStateMapping[Id]['State']) => { + if (this.spec.migrate && !this.spec.createUrl) { + const { id, state: newState } = await this.spec.migrate(state); + + // eslint-disable-next-line + console.warn(`URL generator is deprecated and may not work in future versions. Please migrate your data.`); + + return this.getGenerator(id!).createUrl(newState!); + } + + return this.spec.createUrl!(state); + }, + isDeprecated: !!this.spec.isDeprecated, + migrate: async (state: UrlGeneratorStateMapping[Id]['State']) => { + if (!this.spec.isDeprecated) { + throw new Error( + i18n.translate('share.urlGenerators.error.migrateCalledNotDeprecated', { + defaultMessage: 'You cannot call migrate on a non-deprecated generator.', + }) + ); + } + + return this.spec.migrate!(state); + }, + }; + } +} diff --git a/src/plugins/share/public/url_generators/url_generator_service.test.ts b/src/plugins/share/public/url_generators/url_generator_service.test.ts new file mode 100644 index 00000000000000..4a377db033762f --- /dev/null +++ b/src/plugins/share/public/url_generators/url_generator_service.test.ts @@ -0,0 +1,126 @@ +/* + * 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 { UrlGeneratorsService } from './url_generator_service'; +import { coreMock } from '../../../../core/public/mocks'; + +const service = new UrlGeneratorsService(); + +const setup = service.setup(coreMock.createSetup()); +const start = service.start(coreMock.createStart()); + +test('Asking for a generator that does not exist throws an error', () => { + expect(() => start.getUrlGenerator('noexist')).toThrowError(); +}); + +test('Registering and retrieving a generator', async () => { + setup.registerUrlGenerator({ + id: 'TEST_GENERATOR', + createUrl: () => Promise.resolve('myurl'), + }); + const generator = start.getUrlGenerator('TEST_GENERATOR'); + expect(generator).toMatchInlineSnapshot(` + Object { + "createUrl": [Function], + "id": "TEST_GENERATOR", + "isDeprecated": false, + "migrate": [Function], + } + `); + await expect(generator.migrate({})).rejects.toEqual( + new Error('You cannot call migrate on a non-deprecated generator.') + ); + expect(await generator.createUrl({})).toBe('myurl'); +}); + +test('Registering a generator with a createUrl function that is deprecated throws an error', () => { + expect(() => + setup.registerUrlGenerator({ + id: 'TEST_GENERATOR', + migrate: () => Promise.resolve({ id: '', state: {} }), + createUrl: () => Promise.resolve('myurl'), + isDeprecated: true, + }) + ).toThrowError( + new Error('This generator is marked as deprecated. Do not supply a createUrl fn.') + ); +}); + +test('Registering a deprecated generator with no migration function throws an error', () => { + expect(() => + setup.registerUrlGenerator({ + id: 'TEST_GENERATOR', + isDeprecated: true, + }) + ).toThrowError( + new Error( + 'If the access link generator is marked as deprecated, you must provide a migration function.' + ) + ); +}); + +test('Registering a generator with no functions throws an error', () => { + expect(() => + setup.registerUrlGenerator({ + id: 'TEST_GENERATOR', + }) + ).toThrowError( + new Error('This generator is not marked as deprecated. Please provide a createUrl fn.') + ); +}); + +test('Registering a generator with a migrate function that is not deprecated throws an error', () => { + expect(() => + setup.registerUrlGenerator({ + id: 'TEST_GENERATOR', + migrate: () => Promise.resolve({ id: '', state: {} }), + isDeprecated: false, + }) + ).toThrowError( + new Error('If you provide a migration function, you must mark this generator as deprecated') + ); +}); + +test('Registering a generator with a migrate function and a createUrl fn throws an error', () => { + expect(() => + setup.registerUrlGenerator({ + id: 'TEST_GENERATOR', + createUrl: () => Promise.resolve('myurl'), + migrate: () => Promise.resolve({ id: '', state: {} }), + }) + ).toThrowError(); +}); + +test('Generator returns migrated url', async () => { + setup.registerUrlGenerator({ + id: 'v1', + migrate: (state: { bar: string }) => Promise.resolve({ id: 'v2', state: { foo: state.bar } }), + isDeprecated: true, + }); + setup.registerUrlGenerator({ + id: 'v2', + createUrl: (state: { foo: string }) => Promise.resolve(`www.${state.foo}.com`), + isDeprecated: false, + }); + + const generator = start.getUrlGenerator('v1'); + expect(generator.isDeprecated).toBe(true); + expect(await generator.migrate({ bar: 'hi' })).toEqual({ id: 'v2', state: { foo: 'hi' } }); + expect(await generator.createUrl({ bar: 'hi' })).toEqual('www.hi.com'); +}); diff --git a/src/plugins/share/public/url_generators/url_generator_service.ts b/src/plugins/share/public/url_generators/url_generator_service.ts new file mode 100644 index 00000000000000..332750671cee39 --- /dev/null +++ b/src/plugins/share/public/url_generators/url_generator_service.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 { CoreSetup, CoreStart, Plugin } from 'src/core/public'; +import { i18n } from '@kbn/i18n'; +import { UrlGeneratorId, UrlGeneratorsDefinition } from './url_generator_definition'; +import { UrlGeneratorInternal } from './url_generator_internal'; +import { UrlGeneratorContract } from './url_generator_contract'; + +export interface UrlGeneratorsStart { + getUrlGenerator: (urlGeneratorId: UrlGeneratorId) => UrlGeneratorContract<UrlGeneratorId>; +} + +export interface UrlGeneratorsSetup { + registerUrlGenerator: <Id extends UrlGeneratorId>(generator: UrlGeneratorsDefinition<Id>) => void; +} + +export class UrlGeneratorsService implements Plugin<UrlGeneratorsSetup, UrlGeneratorsStart> { + // Unfortunate use of any here, but I haven't figured out how to type this any better without + // getting warnings. + private urlGenerators: Map<string, UrlGeneratorInternal<any>> = new Map(); + + constructor() {} + + public setup(core: CoreSetup) { + const setup: UrlGeneratorsSetup = { + registerUrlGenerator: <Id extends UrlGeneratorId>( + generatorOptions: UrlGeneratorsDefinition<Id> + ) => { + this.urlGenerators.set( + generatorOptions.id, + new UrlGeneratorInternal<Id>(generatorOptions, this.getUrlGenerator) + ); + }, + }; + return setup; + } + + public start(core: CoreStart) { + const start: UrlGeneratorsStart = { + getUrlGenerator: this.getUrlGenerator, + }; + return start; + } + + public stop() {} + + private readonly getUrlGenerator = (id: UrlGeneratorId) => { + const generator = this.urlGenerators.get(id); + if (!generator) { + throw new Error( + i18n.translate('share.urlGenerators.errors.noGeneratorWithId', { + defaultMessage: 'No generator found with id {id}', + values: { id }, + }) + ); + } + return generator.getPublicContract(); + }; +} diff --git a/x-pack/legacy/plugins/ml/public/application/jobs/components/custom_url_editor/utils.js b/x-pack/legacy/plugins/ml/public/application/jobs/components/custom_url_editor/utils.js index cb7c9478244aa5..da95ff1ac17fd6 100644 --- a/x-pack/legacy/plugins/ml/public/application/jobs/components/custom_url_editor/utils.js +++ b/x-pack/legacy/plugins/ml/public/application/jobs/components/custom_url_editor/utils.js @@ -7,6 +7,10 @@ import { TIME_RANGE_TYPE, URL_TYPE } from './constants'; import rison from 'rison-node'; +import url from 'url'; + +import { npStart } from 'ui/new_platform'; +import { DASHBOARD_APP_URL_GENERATOR } from '../../../../../../../../../src/plugins/dashboard_embeddable_container/public'; import { ML_RESULTS_INDEX_PATTERN } from '../../../../../common/constants/index_patterns'; import { getPartitioningFieldNames } from '../../../../../common/util/job_utils'; @@ -152,52 +156,42 @@ function buildDashboardUrlFromSettings(settings) { query = searchSourceData.query; } - // Add time settings to the global state URL parameter with $earliest$ and - // $latest$ tokens which get substituted for times around the time of the - // anomaly on which the URL will be run against. - const _g = rison.encode({ - time: { - from: '$earliest$', - to: '$latest$', - mode: 'absolute', - }, - }); - - const appState = { - filters, - }; - - // To put entities in filters section would involve creating parameters of the form - // filters:!(('$state':(store:appState),meta:(alias:!n,disabled:!f,index:b30fd340-efb4-11e7-a600-0f58b1422b87, - // key:airline,negate:!f,params:(query:AAL,type:phrase),type:phrase,value:AAL),query:(match:(airline:(query:AAL,type:phrase))))) - // which includes the ID of the index holding the field used in the filter. - - // So for simplicity, put entities in the query, replacing any query which is there already. - // e.g. query:(language:kuery,query:'region:us-east-1%20and%20instance:i-20d061fa') const queryFromEntityFieldNames = buildAppStateQueryParam(queryFieldNames); if (queryFromEntityFieldNames !== undefined) { query = queryFromEntityFieldNames; } - if (query !== undefined) { - appState.query = query; - } - - const _a = rison.encode(appState); - - const urlValue = `kibana#/dashboard/${dashboardId}?_g=${_g}&_a=${_a}`; - - const urlToAdd = { - url_name: settings.label, - url_value: urlValue, - time_range: TIME_RANGE_TYPE.AUTO, - }; - - if (settings.timeRange.type === TIME_RANGE_TYPE.INTERVAL) { - urlToAdd.time_range = settings.timeRange.interval; - } + const generator = npStart.plugins.share.urlGenerators.getUrlGenerator( + DASHBOARD_APP_URL_GENERATOR + ); + + return generator + .createUrl({ + dashboardId, + timeRange: { + from: '$earliest$', + to: '$latest$', + mode: 'absolute', + }, + filters, + query, + // Don't hash the URL since this string will be 1. shown to the user and 2. used as a + // template to inject the time parameters. + useHash: false, + }) + .then(urlValue => { + const urlToAdd = { + url_name: settings.label, + url_value: decodeURIComponent(`kibana${url.parse(urlValue).hash}`), + time_range: TIME_RANGE_TYPE.AUTO, + }; + + if (settings.timeRange.type === TIME_RANGE_TYPE.INTERVAL) { + urlToAdd.time_range = settings.timeRange.interval; + } - resolve(urlToAdd); + resolve(urlToAdd); + }); }) .catch(resp => { reject(resp); From 07edafdfa7e3ed990aa14ba25abd7d2808c4549a Mon Sep 17 00:00:00 2001 From: Lee Drengenberg <lee.drengenberg@elastic.co> Date: Wed, 4 Mar 2020 12:23:58 -0600 Subject: [PATCH 113/120] fixes 'management scripted fields preview should display additional fields' when run with a HEAD (#59213) Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- test/functional/services/combo_box.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/test/functional/services/combo_box.ts b/test/functional/services/combo_box.ts index 8f5b4bed1e89c5..33610e64f1c795 100644 --- a/test/functional/services/combo_box.ts +++ b/test/functional/services/combo_box.ts @@ -54,7 +54,8 @@ export function ComboBoxProvider({ getService, getPageObjects }: FtrProviderCont * @param element element that wraps up option */ private async clickOption(isMouseClick: boolean, element: WebElementWrapper): Promise<void> { - return isMouseClick ? await element.clickMouseButton() : await element.click(); + // element.click causes scrollIntoView which causes combobox to close, using _webElement.click instead + return isMouseClick ? await element.clickMouseButton() : await element._webElement.click(); } /** From b1cb92f822aa4d74a63d4b923bfa9ebd6b045cf2 Mon Sep 17 00:00:00 2001 From: Pierre Gayvallet <pierre.gayvallet@elastic.co> Date: Wed, 4 Mar 2020 20:15:35 +0100 Subject: [PATCH 114/120] Expose metrics service to public API (#59294) * expose metrics service to public API * update generated doc --- .../core/server/kibana-plugin-server.coresetup.md | 1 + .../kibana-plugin-server.coresetup.metrics.md | 13 +++++++++++++ src/core/server/index.ts | 3 +++ src/core/server/legacy/legacy_service.ts | 3 +++ src/core/server/mocks.ts | 1 + src/core/server/plugins/plugin_context.ts | 3 +++ src/core/server/server.api.md | 2 ++ 7 files changed, 26 insertions(+) create mode 100644 docs/development/core/server/kibana-plugin-server.coresetup.metrics.md diff --git a/docs/development/core/server/kibana-plugin-server.coresetup.md b/docs/development/core/server/kibana-plugin-server.coresetup.md index c36d649837e8a8..fa052c1179a301 100644 --- a/docs/development/core/server/kibana-plugin-server.coresetup.md +++ b/docs/development/core/server/kibana-plugin-server.coresetup.md @@ -20,6 +20,7 @@ export interface CoreSetup<TPluginsStart extends object = object> | [context](./kibana-plugin-server.coresetup.context.md) | <code>ContextSetup</code> | [ContextSetup](./kibana-plugin-server.contextsetup.md) | | [elasticsearch](./kibana-plugin-server.coresetup.elasticsearch.md) | <code>ElasticsearchServiceSetup</code> | [ElasticsearchServiceSetup](./kibana-plugin-server.elasticsearchservicesetup.md) | | [http](./kibana-plugin-server.coresetup.http.md) | <code>HttpServiceSetup</code> | [HttpServiceSetup](./kibana-plugin-server.httpservicesetup.md) | +| [metrics](./kibana-plugin-server.coresetup.metrics.md) | <code>MetricsServiceSetup</code> | [MetricsServiceSetup](./kibana-plugin-server.metricsservicesetup.md) | | [savedObjects](./kibana-plugin-server.coresetup.savedobjects.md) | <code>SavedObjectsServiceSetup</code> | [SavedObjectsServiceSetup](./kibana-plugin-server.savedobjectsservicesetup.md) | | [uiSettings](./kibana-plugin-server.coresetup.uisettings.md) | <code>UiSettingsServiceSetup</code> | [UiSettingsServiceSetup](./kibana-plugin-server.uisettingsservicesetup.md) | | [uuid](./kibana-plugin-server.coresetup.uuid.md) | <code>UuidServiceSetup</code> | [UuidServiceSetup](./kibana-plugin-server.uuidservicesetup.md) | diff --git a/docs/development/core/server/kibana-plugin-server.coresetup.metrics.md b/docs/development/core/server/kibana-plugin-server.coresetup.metrics.md new file mode 100644 index 00000000000000..5db723751be858 --- /dev/null +++ b/docs/development/core/server/kibana-plugin-server.coresetup.metrics.md @@ -0,0 +1,13 @@ +<!-- Do not edit this file. It is automatically generated by API Documenter. --> + +[Home](./index.md) > [kibana-plugin-server](./kibana-plugin-server.md) > [CoreSetup](./kibana-plugin-server.coresetup.md) > [metrics](./kibana-plugin-server.coresetup.metrics.md) + +## CoreSetup.metrics property + +[MetricsServiceSetup](./kibana-plugin-server.metricsservicesetup.md) + +<b>Signature:</b> + +```typescript +metrics: MetricsServiceSetup; +``` diff --git a/src/core/server/index.ts b/src/core/server/index.ts index 7d856ae1011793..8e481171116faf 100644 --- a/src/core/server/index.ts +++ b/src/core/server/index.ts @@ -54,6 +54,7 @@ import { SavedObjectsClientContract } from './saved_objects/types'; import { SavedObjectsServiceSetup, SavedObjectsServiceStart } from './saved_objects'; import { CapabilitiesSetup, CapabilitiesStart } from './capabilities'; import { UuidServiceSetup } from './uuid'; +import { MetricsServiceSetup } from './metrics'; export { bootstrap } from './bootstrap'; export { Capabilities, CapabilitiesProvider, CapabilitiesSwitcher } from './capabilities'; @@ -335,6 +336,8 @@ export interface CoreSetup<TPluginsStart extends object = object> { uiSettings: UiSettingsServiceSetup; /** {@link UuidServiceSetup} */ uuid: UuidServiceSetup; + /** {@link MetricsServiceSetup} */ + metrics: MetricsServiceSetup; /** * Allows plugins to get access to APIs available in start inside async handlers. * Promise will not resolve until Core and plugin dependencies have completed `start`. diff --git a/src/core/server/legacy/legacy_service.ts b/src/core/server/legacy/legacy_service.ts index ca83a287c57e6d..f67148d720446a 100644 --- a/src/core/server/legacy/legacy_service.ts +++ b/src/core/server/legacy/legacy_service.ts @@ -296,6 +296,9 @@ export class LegacyService implements CoreService { isTlsEnabled: setupDeps.core.http.isTlsEnabled, getServerInfo: setupDeps.core.http.getServerInfo, }, + metrics: { + getOpsMetrics$: setupDeps.core.metrics.getOpsMetrics$, + }, savedObjects: { setClientFactoryProvider: setupDeps.core.savedObjects.setClientFactoryProvider, addClientWrapper: setupDeps.core.savedObjects.addClientWrapper, diff --git a/src/core/server/mocks.ts b/src/core/server/mocks.ts index 037f3bbed67e06..93d8e2c632e385 100644 --- a/src/core/server/mocks.ts +++ b/src/core/server/mocks.ts @@ -128,6 +128,7 @@ function createCoreSetupMock() { savedObjects: savedObjectsServiceMock.createInternalSetupContract(), uiSettings: uiSettingsMock, uuid: uuidServiceMock.createSetupContract(), + metrics: metricsServiceMock.createSetupContract(), getStartServices: jest .fn<Promise<[ReturnType<typeof createCoreStartMock>, object]>, []>() .mockResolvedValue([createCoreStartMock(), {}]), diff --git a/src/core/server/plugins/plugin_context.ts b/src/core/server/plugins/plugin_context.ts index f2a44e9f78d4ff..b430fd28fb896c 100644 --- a/src/core/server/plugins/plugin_context.ts +++ b/src/core/server/plugins/plugin_context.ts @@ -166,6 +166,9 @@ export function createPluginSetupContext<TPlugin, TPluginDependencies>( isTlsEnabled: deps.http.isTlsEnabled, getServerInfo: deps.http.getServerInfo, }, + metrics: { + getOpsMetrics$: deps.metrics.getOpsMetrics$, + }, savedObjects: { setClientFactoryProvider: deps.savedObjects.setClientFactoryProvider, addClientWrapper: deps.savedObjects.addClientWrapper, diff --git a/src/core/server/server.api.md b/src/core/server/server.api.md index 6b0d962aedcd15..30695df33345ad 100644 --- a/src/core/server/server.api.md +++ b/src/core/server/server.api.md @@ -606,6 +606,8 @@ export interface CoreSetup<TPluginsStart extends object = object> { // (undocumented) http: HttpServiceSetup; // (undocumented) + metrics: MetricsServiceSetup; + // (undocumented) savedObjects: SavedObjectsServiceSetup; // (undocumented) uiSettings: UiSettingsServiceSetup; From ef38287551f7b1c1649c2be32b3656f0c9f732eb Mon Sep 17 00:00:00 2001 From: spalger <spalger@users.noreply.github.com> Date: Wed, 4 Mar 2020 12:50:04 -0700 Subject: [PATCH 115/120] Revert "[ML] Transforms: Deprecate custom KibanaContext. (#59133)" This reverts commit 29975fa614307bb9c513f1c6e1c0dedc2fd013af. --- .../transform/public/app/common/request.ts | 2 +- .../toast_notification_text.test.tsx | 10 +- .../app/hooks/use_search_items/index.ts | 8 - .../use_search_items => lib/kibana}/common.ts | 19 +- .../transform/public/app/lib/kibana/index.ts | 17 + .../public/app/lib/kibana/kibana_context.tsx | 72 ++ .../kibana/kibana_provider.tsx} | 56 +- .../lib/kibana/use_current_index_pattern.ts | 19 + .../clone_transform_section.tsx | 22 +- .../source_index_preview.test.tsx.snap | 598 +--------------- .../expanded_row.test.tsx | 2 + .../source_index_preview.test.tsx | 20 +- .../source_index_preview.tsx | 7 +- .../step_create_form.test.tsx.snap | 598 +--------------- .../step_create/step_create_form.test.tsx | 15 +- .../step_create/step_create_form.tsx | 10 +- .../__snapshots__/pivot_preview.test.tsx.snap | 638 ++---------------- .../step_define_form.test.tsx.snap | 581 +--------------- .../step_define_summary.test.tsx.snap | 121 +--- .../step_define/pivot_preview.test.tsx | 21 +- .../components/step_define/pivot_preview.tsx | 321 +++++---- .../step_define/step_define_form.test.tsx | 18 +- .../step_define/step_define_form.tsx | 57 +- .../step_define/step_define_summary.test.tsx | 14 +- .../step_define/step_define_summary.tsx | 53 +- .../step_details/step_details_form.tsx | 621 +++++++++-------- .../components/wizard/wizard.tsx | 31 +- .../create_transform_section.tsx | 70 +- .../legacy/plugins/transform/public/plugin.ts | 12 +- .../transform/public/shared_imports.ts | 1 - .../legacy/plugins/transform/public/shim.ts | 17 +- 31 files changed, 937 insertions(+), 3114 deletions(-) delete mode 100644 x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/index.ts rename x-pack/legacy/plugins/transform/public/app/{hooks/use_search_items => lib/kibana}/common.ts (96%) create mode 100644 x-pack/legacy/plugins/transform/public/app/lib/kibana/index.ts create mode 100644 x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_context.tsx rename x-pack/legacy/plugins/transform/public/app/{hooks/use_search_items/use_search_items.ts => lib/kibana/kibana_provider.tsx} (53%) create mode 100644 x-pack/legacy/plugins/transform/public/app/lib/kibana/use_current_index_pattern.ts diff --git a/x-pack/legacy/plugins/transform/public/app/common/request.ts b/x-pack/legacy/plugins/transform/public/app/common/request.ts index 31089b86a2c2d6..3b740de177ef8c 100644 --- a/x-pack/legacy/plugins/transform/public/app/common/request.ts +++ b/x-pack/legacy/plugins/transform/public/app/common/request.ts @@ -7,7 +7,7 @@ import { DefaultOperator } from 'elasticsearch'; import { dictionaryToArray } from '../../../common/types/common'; -import { SavedSearchQuery } from '../hooks/use_search_items'; +import { SavedSearchQuery } from '../lib/kibana'; import { StepDefineExposedState } from '../sections/create_transform/components/step_define/step_define_form'; import { StepDetailsExposedState } from '../sections/create_transform/components/step_details/step_details_form'; diff --git a/x-pack/legacy/plugins/transform/public/app/components/toast_notification_text.test.tsx b/x-pack/legacy/plugins/transform/public/app/components/toast_notification_text.test.tsx index 095b57de97d9a9..81af5c974fe04a 100644 --- a/x-pack/legacy/plugins/transform/public/app/components/toast_notification_text.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/components/toast_notification_text.test.tsx @@ -7,13 +7,13 @@ import React from 'react'; import { render } from '@testing-library/react'; +import { KibanaContext } from '../lib/kibana'; import { createPublicShim } from '../../shim'; import { getAppProviders } from '../app_dependencies'; import { ToastNotificationText } from './toast_notification_text'; jest.mock('../../shared_imports'); -jest.mock('ui/new_platform'); describe('ToastNotificationText', () => { test('should render the text as plain text', () => { @@ -23,7 +23,9 @@ describe('ToastNotificationText', () => { }; const { container } = render( <Providers> - <ToastNotificationText {...props} /> + <KibanaContext.Provider value={{ initialized: false }}> + <ToastNotificationText {...props} /> + </KibanaContext.Provider> </Providers> ); expect(container.textContent).toBe('a short text message'); @@ -37,7 +39,9 @@ describe('ToastNotificationText', () => { }; const { container } = render( <Providers> - <ToastNotificationText {...props} /> + <KibanaContext.Provider value={{ initialized: false }}> + <ToastNotificationText {...props} /> + </KibanaContext.Provider> </Providers> ); expect(container.textContent).toBe( diff --git a/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/index.ts b/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/index.ts deleted file mode 100644 index aa4f04f43b335b..00000000000000 --- a/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/index.ts +++ /dev/null @@ -1,8 +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. - */ - -export { SavedSearchQuery, SearchItems } from './common'; -export { useSearchItems } from './use_search_items'; diff --git a/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/common.ts b/x-pack/legacy/plugins/transform/public/app/lib/kibana/common.ts similarity index 96% rename from x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/common.ts rename to x-pack/legacy/plugins/transform/public/app/lib/kibana/common.ts index 2258f8f33f01dd..aa4cd21281e22e 100644 --- a/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/common.ts +++ b/x-pack/legacy/plugins/transform/public/app/lib/kibana/common.ts @@ -14,8 +14,6 @@ import { import { matchAllQuery } from '../../common'; -export type SavedSearchQuery = object; - type IndexPatternId = string; type SavedSearchId = string; @@ -62,7 +60,7 @@ export function getIndexPatternIdByTitle(indexPatternTitle: string): string | un return indexPatternCache.find(d => d?.attributes?.title === indexPatternTitle)?.id; } -type CombinedQuery = Record<'bool', any> | object; +type CombinedQuery = Record<'bool', any> | unknown; export function loadCurrentIndexPattern( indexPatterns: IndexPatternsContract, @@ -81,20 +79,17 @@ export function loadCurrentSavedSearch(savedSearches: any, savedSearchId: SavedS function isIndexPattern(arg: any): arg is IndexPattern { return arg !== undefined; } - -export interface SearchItems { - indexPattern: IndexPattern; - savedSearch: any; - query: any; - combinedQuery: CombinedQuery; -} - // Helper for creating the items used for searching and job creation. export function createSearchItems( indexPattern: IndexPattern | undefined, savedSearch: any, config: IUiSettingsClient -): SearchItems { +): { + indexPattern: IndexPattern; + savedSearch: any; + query: any; + combinedQuery: CombinedQuery; +} { // query is only used by the data visualizer as it needs // a lucene query_string. // Using a blank query will cause match_all:{} to be used diff --git a/x-pack/legacy/plugins/transform/public/app/lib/kibana/index.ts b/x-pack/legacy/plugins/transform/public/app/lib/kibana/index.ts new file mode 100644 index 00000000000000..62107cb37ff2c2 --- /dev/null +++ b/x-pack/legacy/plugins/transform/public/app/lib/kibana/index.ts @@ -0,0 +1,17 @@ +/* + * 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 { getIndexPatternIdByTitle, loadIndexPatterns } from './common'; +export { + useKibanaContext, + InitializedKibanaContextValue, + KibanaContext, + KibanaContextValue, + SavedSearchQuery, + RenderOnlyWithInitializedKibanaContext, +} from './kibana_context'; +export { KibanaProvider } from './kibana_provider'; +export { useCurrentIndexPattern } from './use_current_index_pattern'; diff --git a/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_context.tsx b/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_context.tsx new file mode 100644 index 00000000000000..7677c491a7a59d --- /dev/null +++ b/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_context.tsx @@ -0,0 +1,72 @@ +/* + * 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, { createContext, useContext, FC } from 'react'; + +import { IUiSettingsClient } from 'kibana/public'; + +import { + IndexPattern, + IndexPatternsContract, +} from '../../../../../../../../src/plugins/data/public'; +import { SavedSearch } from '../../../../../../../../src/plugins/discover/public/'; + +interface UninitializedKibanaContextValue { + initialized: false; +} + +export interface InitializedKibanaContextValue { + combinedQuery: any; + indexPatterns: IndexPatternsContract; + initialized: true; + kibanaConfig: IUiSettingsClient; + currentIndexPattern: IndexPattern; + currentSavedSearch?: SavedSearch; +} + +export type KibanaContextValue = UninitializedKibanaContextValue | InitializedKibanaContextValue; + +export function isKibanaContextInitialized(arg: any): arg is InitializedKibanaContextValue { + return arg.initialized; +} + +export type SavedSearchQuery = object; + +export const KibanaContext = createContext<KibanaContextValue>({ initialized: false }); + +/** + * Custom hook to get the current kibanaContext. + * + * @remarks + * This hook should only be used in components wrapped in `RenderOnlyWithInitializedKibanaContext`, + * otherwise it will throw an error when KibanaContext hasn't been initialized yet. + * In return you get the benefit of not having to check if it's been initialized in the component + * where it's used. + * + * @returns `kibanaContext` + */ +export const useKibanaContext = () => { + const kibanaContext = useContext(KibanaContext); + + if (!isKibanaContextInitialized(kibanaContext)) { + throw new Error('useKibanaContext: kibanaContext not initialized'); + } + + return kibanaContext; +}; + +/** + * Wrapper component to render children only if `kibanaContext` has been initialized. + * In combination with `useKibanaContext` this avoids having to check for the initialization + * in consuming components. + * + * @returns `children` or `null` depending on whether `kibanaContext` is initialized or not. + */ +export const RenderOnlyWithInitializedKibanaContext: FC = ({ children }) => { + const kibanaContext = useContext(KibanaContext); + + return isKibanaContextInitialized(kibanaContext) ? <>{children}</> : null; +}; diff --git a/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/use_search_items.ts b/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_provider.tsx similarity index 53% rename from x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/use_search_items.ts rename to x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_provider.tsx index 12fc75c20ffa48..f2574a4a85f296 100644 --- a/x-pack/legacy/plugins/transform/public/app/hooks/use_search_items/use_search_items.ts +++ b/x-pack/legacy/plugins/transform/public/app/lib/kibana/kibana_provider.tsx @@ -4,36 +4,30 @@ * you may not use this file except in compliance with the Elastic License. */ -import { useEffect, useState } from 'react'; - -import { createSavedSearchesLoader } from '../../../shared_imports'; +import React, { useEffect, useState, FC } from 'react'; import { useAppDependencies } from '../../app_dependencies'; import { createSearchItems, - getIndexPatternIdByTitle, loadCurrentIndexPattern, loadIndexPatterns, loadCurrentSavedSearch, - SearchItems, } from './common'; -export const useSearchItems = (defaultSavedObjectId: string | undefined) => { - const [savedObjectId, setSavedObjectId] = useState(defaultSavedObjectId); +import { InitializedKibanaContextValue, KibanaContext, KibanaContextValue } from './kibana_context'; + +interface Props { + savedObjectId: string; +} +export const KibanaProvider: FC<Props> = ({ savedObjectId, children }) => { const appDeps = useAppDependencies(); const indexPatterns = appDeps.plugins.data.indexPatterns; - const uiSettings = appDeps.core.uiSettings; const savedObjectsClient = appDeps.core.savedObjects.client; - const savedSearches = createSavedSearchesLoader({ - savedObjectsClient, - indexPatterns, - chrome: appDeps.core.chrome, - overlays: appDeps.core.overlays, - }); + const savedSearches = appDeps.plugins.savedSearches.getClient(); - const [searchItems, setSearchItems] = useState<SearchItems | undefined>(undefined); + const [contextValue, setContextValue] = useState<KibanaContextValue>({ initialized: false }); async function fetchSavedObject(id: string) { await loadIndexPatterns(savedObjectsClient, indexPatterns); @@ -53,21 +47,31 @@ export const useSearchItems = (defaultSavedObjectId: string | undefined) => { // Just let fetchedSavedSearch stay undefined in case it doesn't exist. } - setSearchItems(createSearchItems(fetchedIndexPattern, fetchedSavedSearch, uiSettings)); + const kibanaConfig = appDeps.core.uiSettings; + + const { + indexPattern: currentIndexPattern, + savedSearch: currentSavedSearch, + combinedQuery, + } = createSearchItems(fetchedIndexPattern, fetchedSavedSearch, kibanaConfig); + + const kibanaContext: InitializedKibanaContextValue = { + indexPatterns, + initialized: true, + kibanaConfig, + combinedQuery, + currentIndexPattern, + currentSavedSearch, + }; + + setContextValue(kibanaContext); } useEffect(() => { - if (savedObjectId !== undefined) { - fetchSavedObject(savedObjectId); - } - // Run this only when savedObjectId changes. + fetchSavedObject(savedObjectId); + // fetchSavedObject should not be tracked. // eslint-disable-next-line react-hooks/exhaustive-deps }, [savedObjectId]); - return { - getIndexPatternIdByTitle, - loadIndexPatterns, - searchItems, - setSavedObjectId, - }; + return <KibanaContext.Provider value={contextValue}>{children}</KibanaContext.Provider>; }; diff --git a/x-pack/legacy/plugins/transform/public/app/lib/kibana/use_current_index_pattern.ts b/x-pack/legacy/plugins/transform/public/app/lib/kibana/use_current_index_pattern.ts new file mode 100644 index 00000000000000..12c5bde171b8ba --- /dev/null +++ b/x-pack/legacy/plugins/transform/public/app/lib/kibana/use_current_index_pattern.ts @@ -0,0 +1,19 @@ +/* + * 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 { useContext } from 'react'; + +import { isKibanaContextInitialized, KibanaContext } from './kibana_context'; + +export const useCurrentIndexPattern = () => { + const context = useContext(KibanaContext); + + if (!isKibanaContextInitialized(context)) { + throw new Error('useCurrentIndexPattern: kibanaContext not initialized'); + } + + return context.currentIndexPattern; +}; diff --git a/x-pack/legacy/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx b/x-pack/legacy/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx index 4618e96cbfd6eb..c5c46dcac6c957 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/clone_transform/clone_transform_section.tsx @@ -22,7 +22,6 @@ import { } from '@elastic/eui'; import { useApi } from '../../hooks/use_api'; -import { useSearchItems } from '../../hooks/use_search_items'; import { APP_CREATE_TRANSFORM_CLUSTER_PRIVILEGES } from '../../../../common/constants'; @@ -30,6 +29,12 @@ import { useAppDependencies, useDocumentationLinks } from '../../app_dependencie import { TransformPivotConfig } from '../../common'; import { breadcrumbService, docTitleService, BREADCRUMB_SECTION } from '../../services/navigation'; import { PrivilegesWrapper } from '../../lib/authorization'; +import { + getIndexPatternIdByTitle, + loadIndexPatterns, + KibanaProvider, + RenderOnlyWithInitializedKibanaContext, +} from '../../lib/kibana'; import { Wizard } from '../create_transform/components/wizard'; @@ -75,12 +80,7 @@ export const CloneTransformSection: FC<Props> = ({ match }) => { const [transformConfig, setTransformConfig] = useState<TransformPivotConfig>(); const [errorMessage, setErrorMessage] = useState(); const [isInitialized, setIsInitialized] = useState(false); - const { - getIndexPatternIdByTitle, - loadIndexPatterns, - searchItems, - setSavedObjectId, - } = useSearchItems(undefined); + const [savedObjectId, setSavedObjectId] = useState<string | undefined>(undefined); const fetchTransformConfig = async () => { try { @@ -169,8 +169,12 @@ export const CloneTransformSection: FC<Props> = ({ match }) => { <pre>{JSON.stringify(errorMessage)}</pre> </EuiCallOut> )} - {searchItems !== undefined && isInitialized === true && transformConfig !== undefined && ( - <Wizard cloneConfig={transformConfig} searchItems={searchItems} /> + {savedObjectId !== undefined && isInitialized === true && transformConfig !== undefined && ( + <KibanaProvider savedObjectId={savedObjectId}> + <RenderOnlyWithInitializedKibanaContext> + <Wizard cloneConfig={transformConfig} /> + </RenderOnlyWithInitializedKibanaContext> + </KibanaProvider> )} </EuiPageContentBody> </EuiPageContent> diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/__snapshots__/source_index_preview.test.tsx.snap b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/__snapshots__/source_index_preview.test.tsx.snap index 6d2d3d5c4a6a5b..e43f2e37bb416a 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/__snapshots__/source_index_preview.test.tsx.snap +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/__snapshots__/source_index_preview.test.tsx.snap @@ -1,584 +1,24 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Transform: <SourceIndexPreview /> Minimal initialization 1`] = ` -<AuthorizationProvider - privilegesEndpoint="/api/transform/privileges" -> - <mockConstructor> - <HashRouter> - <ContextProvider - value={ - Object { - "core": Object { - "application": Object { - "capabilities": Object { - "catalogue": Object {}, - "management": Object {}, - "navLinks": Object {}, - }, - "currentAppId$": Observable { - "_isScalar": false, - "source": Subject { - "_isScalar": false, - "closed": false, - "hasError": false, - "isStopped": false, - "observers": Array [], - "thrownError": null, - }, - }, - "getUrlForApp": [MockFunction], - "navigateToApp": [MockFunction], - "registerMountContext": [MockFunction], - }, - "chrome": Object { - "addApplicationClass": [MockFunction], - "docTitle": Object { - "__legacy": Object { - "setBaseTitle": [MockFunction], - }, - "change": [MockFunction], - "reset": [MockFunction], - }, - "getApplicationClasses$": [MockFunction], - "getBadge$": [MockFunction], - "getBrand$": [MockFunction], - "getBreadcrumbs$": [MockFunction], - "getHeaderComponent": [MockFunction], - "getHelpExtension$": [MockFunction], - "getIsCollapsed$": [MockFunction], - "getIsVisible$": [MockFunction], - "navControls": Object { - "getLeft$": [MockFunction], - "getRight$": [MockFunction], - "registerLeft": [MockFunction], - "registerRight": [MockFunction], - }, - "navLinks": Object { - "enableForcedAppSwitcherNavigation": [MockFunction], - "get": [MockFunction], - "getAll": [MockFunction], - "getForceAppSwitcherNavigation$": [MockFunction], - "getNavLinks$": [MockFunction], - "has": [MockFunction], - "showOnly": [MockFunction], - "update": [MockFunction], - }, - "recentlyAccessed": Object { - "add": [MockFunction], - "get": [MockFunction], - "get$": [MockFunction], - }, - "removeApplicationClass": [MockFunction], - "setAppTitle": [MockFunction], - "setBadge": [MockFunction], - "setBrand": [MockFunction], - "setBreadcrumbs": [MockFunction], - "setHelpExtension": [MockFunction], - "setHelpSupportUrl": [MockFunction], - "setIsCollapsed": [MockFunction], - "setIsVisible": [MockFunction], - }, - "docLinks": Object { - "DOC_LINK_VERSION": "mocked-test-branch", - "ELASTIC_WEBSITE_URL": "https://www.elastic.co/", - "links": Object { - "aggs": Object { - "avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-avg-aggregation.html", - "avg_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-avg-bucket-aggregation.html", - "cardinality": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-cardinality-aggregation.html", - "count": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-valuecount-aggregation.html", - "cumulative_sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", - "date_histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-datehistogram-aggregation.html", - "date_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-daterange-aggregation.html", - "derivative": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-derivative-aggregation.html", - "filter": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filter-aggregation.html", - "filters": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filters-aggregation.html", - "geo_bounds": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geobounds-aggregation.html", - "geo_centroid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geocentroid-aggregation.html", - "geohash_grid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-geohashgrid-aggregation.html", - "histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-histogram-aggregation.html", - "ip_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-iprange-aggregation.html", - "max": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-max-aggregation.html", - "max_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-max-bucket-aggregation.html", - "median": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-aggregation.html", - "min": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-min-aggregation.html", - "min_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-min-bucket-aggregation.html", - "moving_avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-movavg-aggregation.html", - "percentile_ranks": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-rank-aggregation.html", - "range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-range-aggregation.html", - "serial_diff": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-serialdiff-aggregation.html", - "significant_terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-significantterms-aggregation.html", - "std_dev": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-extendedstats-aggregation.html", - "sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", - "sum_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-sum-bucket-aggregation.html", - "terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-terms-aggregation.html", - "top_hits": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-top-hits-aggregation.html", - }, - "auditbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/auditbeat/mocked-test-branch", - }, - "date": Object { - "dateMath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/common-options.html#date-math", - }, - "filebeat": Object { - "base": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch", - "configuration": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-configuration.html", - "elasticsearchOutput": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/elasticsearch-output.html", - "exportedFields": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/exported-fields.html", - "installation": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-installation.html", - "startup": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-starting.html", - }, - "functionbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/functionbeat/mocked-test-branch", - }, - "heartbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/heartbeat/mocked-test-branch", - }, - "indexPatterns": Object { - "introduction": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index-patterns.html", - "loadingData": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/tutorial-load-dataset.html", - }, - "kibana": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index.html", - "logstash": Object { - "base": "https://www.elastic.co/guide/en/logstash/mocked-test-branch", - }, - "management": Object { - "dashboardSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-dashboard-settings", - "kibanaSearchSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-search-settings", - }, - "metricbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/metricbeat/mocked-test-branch", - }, - "query": Object { - "kueryQuerySyntax": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/kuery-query.html", - "luceneQuerySyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl-query-string-query.html#query-string-syntax", - "queryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", - }, - "scriptedFields": Object { - "luceneExpressions": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-expression.html", - "painless": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless.html", - "painlessApi": "https://www.elastic.co/guide/en/elasticsearch/painless/mocked-test-branch/painless-api-reference.html", - "painlessSyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless-syntax.html", - "scriptAggs": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations.html#_values_source", - "scriptFields": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-request-script-fields.html", - }, - "siem": Object { - "gettingStarted": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/install-siem.html", - "guide": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/index.html", - }, - "winlogbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/winlogbeat/mocked-test-branch", - }, - }, - }, - "docTitle": Object { - "change": [Function], - }, - "documentation": Object { - "esDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/", - "esIndicesCreateIndex": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/indices-create-index.html#indices-create-index", - "esPluginDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/plugins/mocked-test-branch/", - "esQueryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", - "esStackOverviewDocBasePath": "https://www.elastic.co/guide/en/elastic-stack-overview/mocked-test-branch/", - "esTransform": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/transforms.html", - "esTransformPivot": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/put-transform.html#put-transform-request-body", - "mlDocBasePath": "https://www.elastic.co/guide/en/machine-learning/mocked-test-branch/", - }, - "fatalErrors": Object { - "add": [MockFunction], - "get$": [MockFunction], - }, - "http": Object { - "addLoadingCountSource": [MockFunction], - "anonymousPaths": Object { - "isAnonymous": [MockFunction], - "register": [MockFunction], - }, - "basePath": BasePath { - "basePath": "", - "get": [Function], - "prepend": [Function], - "remove": [Function], - "serverBasePath": "", - }, - "delete": [MockFunction], - "fetch": [MockFunction], - "get": [MockFunction], - "getLoadingCount$": [MockFunction], - "head": [MockFunction], - "intercept": [MockFunction], - "options": [MockFunction], - "patch": [MockFunction], - "post": [MockFunction], - "put": [MockFunction], - }, - "i18n": Object { - "Context": [MockFunction], - }, - "injectedMetadata": Object { - "getInjectedVar": [MockFunction], - }, - "notifications": Object { - "toasts": Object { - "add": [MockFunction], - "addDanger": [MockFunction], - "addError": [MockFunction], - "addSuccess": [MockFunction], - "addWarning": [MockFunction], - "get$": [MockFunction], - "remove": [MockFunction], - }, - }, - "overlays": Object { - "banners": Object { - "add": [MockFunction], - "get$": [MockFunction], - "getComponent": [MockFunction], - "remove": [MockFunction], - "replace": [MockFunction], - }, - "openConfirm": [MockFunction], - "openFlyout": [MockFunction], - "openModal": [MockFunction], - }, - "savedObjects": Object { - "client": Object { - "bulkCreate": [MockFunction], - "bulkGet": [MockFunction], - "bulkUpdate": [MockFunction], - "create": [MockFunction], - "delete": [MockFunction], - "find": [MockFunction], - "get": [MockFunction], - "update": [MockFunction], - }, - }, - "uiSettings": Object { - "get": [MockFunction], - "get$": [MockFunction], - "getAll": [MockFunction], - "getSaved$": [MockFunction], - "getUpdate$": [MockFunction], - "getUpdateErrors$": [MockFunction], - "isCustom": [MockFunction], - "isDeclared": [MockFunction], - "isDefault": [MockFunction], - "isOverridden": [MockFunction], - "overrideLocalDefault": [MockFunction], - "remove": [MockFunction], - "set": [MockFunction], - }, - }, - "plugins": Object { - "advancedSettings": Object { - "component": Object { - "componentType": Object { - "PAGE_FOOTER_COMPONENT": "advanced_settings_page_footer", - "PAGE_SUBTITLE_COMPONENT": "advanced_settings_page_subtitle", - "PAGE_TITLE_COMPONENT": "advanced_settings_page_title", - }, - "get": [MockFunction], - }, - }, - "charts": Object { - "colors": Object { - "createColorLookupFunction": [MockFunction], - }, - "theme": Object { - "chartsDefaultTheme": Object { - "areaSeriesStyle": Object { - "area": Object { - "opacity": 0.3, - }, - "line": Object { - "strokeWidth": 2, - }, - "point": Object { - "fill": "rgba(255, 255, 255, 1)", - "radius": 3, - "strokeWidth": 2, - "visible": false, - }, - }, - "axes": Object { - "axisLineStyle": Object { - "stroke": "rgba(239, 241, 244, 1)", - }, - "axisTitleStyle": Object { - "fill": "rgba(52, 55, 65, 1)", - "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, - 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", - "fontSize": 12, - "padding": 10, - }, - "gridLineStyle": Object { - "horizontal": Object { - "dash": Array [ - 0, - 0, - ], - "opacity": 1, - "stroke": "rgba(239, 241, 244, 1)", - "strokeWidth": 1, - "visible": true, - }, - "vertical": Object { - "dash": Array [ - 4, - 4, - ], - "opacity": 1, - "stroke": "rgba(239, 241, 244, 1)", - "strokeWidth": 1, - "visible": true, - }, - }, - "tickLabelStyle": Object { - "fill": "rgba(105, 112, 125, 1)", - "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, - 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", - "fontSize": 10, - "padding": 8, - }, - "tickLineStyle": Object { - "stroke": "rgba(239, 241, 244, 1)", - "strokeWidth": 1, - "visible": false, - }, - }, - "barSeriesStyle": Object { - "displayValue": Object { - "fill": "rgba(105, 112, 125, 1)", - "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, - 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", - "fontSize": 8, - }, - }, - "chartMargins": Object { - "bottom": 0, - "left": 0, - "right": 0, - "top": 0, - }, - "colors": Object { - "defaultVizColor": "#6092C0", - "vizColors": Array [ - "#54B399", - "#6092C0", - "#D36086", - "#9170B8", - "#CA8EAE", - "#D6BF57", - "#B9A888", - "#DA8B45", - "#AA6556", - "#E7664C", - ], - }, - "crosshair": Object { - "band": Object { - "fill": "rgba(245, 247, 250, 1)", - }, - "line": Object { - "dash": Array [ - 4, - 4, - ], - "stroke": "rgba(105, 112, 125, 1)", - "strokeWidth": 1, - }, - }, - "lineSeriesStyle": Object { - "line": Object { - "strokeWidth": 2, - }, - "point": Object { - "fill": "rgba(255, 255, 255, 1)", - "radius": 3, - "strokeWidth": 2, - }, - }, - "scales": Object { - "barsPadding": 0.25, - "histogramPadding": 0.05, - }, - }, - "chartsTheme$": [MockFunction], - "useChartsTheme": [MockFunction], - }, - }, - "data": Object { - "__LEGACY": Object { - "esClient": Object { - "msearch": [MockFunction], - "search": [MockFunction], - }, - }, - "autocomplete": Object { - "getQuerySuggestions": [MockFunction], - "getValueSuggestions": [MockFunction], - "hasQuerySuggestions": [MockFunction], - }, - "fieldFormats": Object { - "deserialize": [MockFunction], - "getByFieldType": [MockFunction], - "getDefaultConfig": [MockFunction], - "getDefaultInstance": [MockFunction], - "getDefaultInstanceCacheResolver": [MockFunction], - "getDefaultInstancePlain": [MockFunction], - "getDefaultType": [MockFunction], - "getDefaultTypeName": [MockFunction], - "getInstance": [MockFunction], - "getType": [MockFunction], - "getTypeNameByEsTypes": [MockFunction], - "getTypeWithoutMetaParams": [MockFunction], - "init": [MockFunction], - "parseDefaultTypeMap": [MockFunction], - "register": [MockFunction], - }, - "getSuggestions": [MockFunction], - "indexPatterns": Object { - "get": [MockFunction], - "make": [Function], - }, - "query": Object { - "filterManager": [MockFunction], - "savedQueries": [MockFunction], - "state$": Observable { - "_isScalar": false, - }, - "timefilter": Object { - "history": Object { - "add": [MockFunction], - "get": [MockFunction], - }, - "timefilter": Object { - "calculateBounds": [MockFunction], - "createFilter": [MockFunction], - "disableAutoRefreshSelector": [MockFunction], - "disableTimeRangeSelector": [MockFunction], - "enableAutoRefreshSelector": [MockFunction], - "enableTimeRangeSelector": [MockFunction], - "getActiveBounds": [MockFunction], - "getAutoRefreshFetch$": [MockFunction], - "getBounds": [MockFunction], - "getEnabledUpdated$": [MockFunction], - "getFetch$": [MockFunction], - "getRefreshInterval": [MockFunction], - "getRefreshIntervalDefaults": [MockFunction], - "getRefreshIntervalUpdate$": [MockFunction], - "getTime": [MockFunction], - "getTimeDefaults": [MockFunction], - "getTimeUpdate$": [MockFunction], - "isAutoRefreshSelectorEnabled": [MockFunction], - "isTimeRangeSelectorEnabled": [MockFunction], - "setRefreshInterval": [MockFunction], - "setTime": [MockFunction], - }, - }, - }, - "search": Object { - "__LEGACY": Object { - "esClient": Object { - "msearch": [MockFunction], - "search": [MockFunction], - }, - }, - "search": [MockFunction], - }, - "ui": Object { - "IndexPatternSelect": [MockFunction], - "SearchBar": [MockFunction], - }, - }, - "embeddable": Object { - "getEmbeddableFactories": [MockFunction], - "getEmbeddableFactory": [MockFunction], - "registerEmbeddableFactory": [MockFunction], - }, - "expressions": Object { - "ExpressionLoader": [MockFunction], - "ExpressionRenderHandler": [MockFunction], - "ReactExpressionRenderer": [MockFunction], - "execute": [MockFunction], - "fork": [MockFunction], - "getFunction": [MockFunction], - "getFunctions": [MockFunction], - "getRenderer": [MockFunction], - "getRenderers": [MockFunction], - "getType": [MockFunction], - "getTypes": [MockFunction], - "loader": [MockFunction], - "render": [MockFunction], - "run": [MockFunction], - }, - "inspector": Object { - "isAvailable": [MockFunction], - "open": [MockFunction], - }, - "kibanaLegacy": Object { - "config": Object { - "defaultAppId": "home", - }, - "dashboardConfig": Object { - "getHideWriteControls": [MockFunction], - "turnHideWriteControlsOn": [MockFunction], - }, - "getApps": [MockFunction], - "getForwards": [MockFunction], - }, - "management": Object { - "legacy": Object {}, - "sections": Object { - "getAllSections": [MockFunction], - "getSection": [MockFunction], - "navigateToApp": [MockFunction], - }, - }, - "navigation": Object { - "ui": Object { - "TopNavMenu": [MockFunction], - }, - }, - "uiActions": Object { - "attachAction": [MockFunction], - "clear": [MockFunction], - "detachAction": [MockFunction], - "executeTriggerActions": [MockFunction], - "fork": [MockFunction], - "getTrigger": [MockFunction], - "getTriggerActions": [MockFunction], - "getTriggerCompatibleActions": [MockFunction], - "registerAction": [MockFunction], - "registerTrigger": [MockFunction], - }, - "uiMetric": Object { - "createUiStatsReporter": [Function], - }, - "xsrfToken": "kbn-xsrf-token", - }, - } +<div> + <ContextProvider + value={ + Object { + "initialized": false, + } + } + > + <Component + query={ + Object { + "query_string": Object { + "default_operator": "AND", + "query": "the-query", + }, } - > - <Component - indexPattern={ - Object { - "fields": Array [], - "title": "the-index-pattern-title", - } - } - query={ - Object { - "query_string": Object { - "default_operator": "AND", - "query": "the-query", - }, - } - } - /> - </ContextProvider> - </HashRouter> - </mockConstructor> -</AuthorizationProvider> + } + /> + </ContextProvider> +</div> `; diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/expanded_row.test.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/expanded_row.test.tsx index ddd1a1482fd357..bfde8f171874ed 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/expanded_row.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/expanded_row.test.tsx @@ -39,6 +39,8 @@ describe('Transform: <ExpandedRow />', () => { }, }; + // Using a wrapping <div> element because shallow() would fail + // with the Provider being the outer most component. const wrapper = shallow(<ExpandedRow {...props} />); expect(wrapper).toMatchSnapshot(); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.test.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.test.tsx index ec797357414271..16949425284fd6 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.test.tsx @@ -7,10 +7,8 @@ import { shallow } from 'enzyme'; import React from 'react'; -import { createPublicShim } from '../../../../../shim'; -import { getAppProviders } from '../../../../app_dependencies'; +import { KibanaContext } from '../../../../lib/kibana'; import { getPivotQuery } from '../../../../common'; -import { SearchItems } from '../../../../hooks/use_search_items'; import { SourceIndexPreview } from './source_index_preview'; @@ -20,24 +18,22 @@ jest.mock('react', () => { return { ...r, memo: (x: any) => x }; }); -jest.mock('ui/new_platform'); jest.mock('../../../../../shared_imports'); describe('Transform: <SourceIndexPreview />', () => { test('Minimal initialization', () => { const props = { - indexPattern: { - title: 'the-index-pattern-title', - fields: [] as any[], - } as SearchItems['indexPattern'], query: getPivotQuery('the-query'), }; - const Providers = getAppProviders(createPublicShim()); + // Using a wrapping <div> element because shallow() would fail + // with the Provider being the outer most component. const wrapper = shallow( - <Providers> - <SourceIndexPreview {...props} /> - </Providers> + <div> + <KibanaContext.Provider value={{ initialized: false }}> + <SourceIndexPreview {...props} /> + </KibanaContext.Provider> + </div> ); expect(wrapper).toMatchSnapshot(); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.tsx index 76ed12ff772f5b..0c9dcfb9b1c04d 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/source_index_preview/source_index_preview.tsx @@ -22,13 +22,14 @@ import { import { getNestedProperty } from '../../../../../../common/utils/object_utils'; +import { useCurrentIndexPattern } from '../../../../lib/kibana'; + import { euiDataGridStyle, euiDataGridToolbarSettings, EsFieldName, PivotQuery, } from '../../../../common'; -import { SearchItems } from '../../../../hooks/use_search_items'; import { getSourceIndexDevConsoleStatement } from './common'; import { SOURCE_INDEX_STATUS, useSourceIndexData } from './use_source_index_data'; @@ -48,13 +49,13 @@ const SourceIndexPreviewTitle: React.FC<SourceIndexPreviewTitle> = ({ indexPatte ); interface Props { - indexPattern: SearchItems['indexPattern']; query: PivotQuery; } const defaultPagination = { pageIndex: 0, pageSize: 5 }; -export const SourceIndexPreview: React.FC<Props> = React.memo(({ indexPattern, query }) => { +export const SourceIndexPreview: React.FC<Props> = React.memo(({ query }) => { + const indexPattern = useCurrentIndexPattern(); const allFields = indexPattern.fields.map(f => f.name); const indexPatternFields: string[] = allFields.filter(f => { if (indexPattern.metaFields.includes(f)) { diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/__snapshots__/step_create_form.test.tsx.snap b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/__snapshots__/step_create_form.test.tsx.snap index db4ff0c1a99ae1..e034badea9b11f 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/__snapshots__/step_create_form.test.tsx.snap +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/__snapshots__/step_create_form.test.tsx.snap @@ -1,581 +1,27 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Transform: <StepCreateForm /> Minimal initialization 1`] = ` -<AuthorizationProvider - privilegesEndpoint="/api/transform/privileges" -> - <mockConstructor> - <HashRouter> - <ContextProvider - value={ - Object { - "core": Object { - "application": Object { - "capabilities": Object { - "catalogue": Object {}, - "management": Object {}, - "navLinks": Object {}, - }, - "currentAppId$": Observable { - "_isScalar": false, - "source": Subject { - "_isScalar": false, - "closed": false, - "hasError": false, - "isStopped": false, - "observers": Array [], - "thrownError": null, - }, - }, - "getUrlForApp": [MockFunction], - "navigateToApp": [MockFunction], - "registerMountContext": [MockFunction], - }, - "chrome": Object { - "addApplicationClass": [MockFunction], - "docTitle": Object { - "__legacy": Object { - "setBaseTitle": [MockFunction], - }, - "change": [MockFunction], - "reset": [MockFunction], - }, - "getApplicationClasses$": [MockFunction], - "getBadge$": [MockFunction], - "getBrand$": [MockFunction], - "getBreadcrumbs$": [MockFunction], - "getHeaderComponent": [MockFunction], - "getHelpExtension$": [MockFunction], - "getIsCollapsed$": [MockFunction], - "getIsVisible$": [MockFunction], - "navControls": Object { - "getLeft$": [MockFunction], - "getRight$": [MockFunction], - "registerLeft": [MockFunction], - "registerRight": [MockFunction], - }, - "navLinks": Object { - "enableForcedAppSwitcherNavigation": [MockFunction], - "get": [MockFunction], - "getAll": [MockFunction], - "getForceAppSwitcherNavigation$": [MockFunction], - "getNavLinks$": [MockFunction], - "has": [MockFunction], - "showOnly": [MockFunction], - "update": [MockFunction], - }, - "recentlyAccessed": Object { - "add": [MockFunction], - "get": [MockFunction], - "get$": [MockFunction], - }, - "removeApplicationClass": [MockFunction], - "setAppTitle": [MockFunction], - "setBadge": [MockFunction], - "setBrand": [MockFunction], - "setBreadcrumbs": [MockFunction], - "setHelpExtension": [MockFunction], - "setHelpSupportUrl": [MockFunction], - "setIsCollapsed": [MockFunction], - "setIsVisible": [MockFunction], - }, - "docLinks": Object { - "DOC_LINK_VERSION": "mocked-test-branch", - "ELASTIC_WEBSITE_URL": "https://www.elastic.co/", - "links": Object { - "aggs": Object { - "avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-avg-aggregation.html", - "avg_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-avg-bucket-aggregation.html", - "cardinality": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-cardinality-aggregation.html", - "count": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-valuecount-aggregation.html", - "cumulative_sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", - "date_histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-datehistogram-aggregation.html", - "date_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-daterange-aggregation.html", - "derivative": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-derivative-aggregation.html", - "filter": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filter-aggregation.html", - "filters": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filters-aggregation.html", - "geo_bounds": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geobounds-aggregation.html", - "geo_centroid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geocentroid-aggregation.html", - "geohash_grid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-geohashgrid-aggregation.html", - "histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-histogram-aggregation.html", - "ip_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-iprange-aggregation.html", - "max": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-max-aggregation.html", - "max_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-max-bucket-aggregation.html", - "median": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-aggregation.html", - "min": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-min-aggregation.html", - "min_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-min-bucket-aggregation.html", - "moving_avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-movavg-aggregation.html", - "percentile_ranks": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-rank-aggregation.html", - "range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-range-aggregation.html", - "serial_diff": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-serialdiff-aggregation.html", - "significant_terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-significantterms-aggregation.html", - "std_dev": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-extendedstats-aggregation.html", - "sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", - "sum_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-sum-bucket-aggregation.html", - "terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-terms-aggregation.html", - "top_hits": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-top-hits-aggregation.html", - }, - "auditbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/auditbeat/mocked-test-branch", - }, - "date": Object { - "dateMath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/common-options.html#date-math", - }, - "filebeat": Object { - "base": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch", - "configuration": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-configuration.html", - "elasticsearchOutput": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/elasticsearch-output.html", - "exportedFields": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/exported-fields.html", - "installation": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-installation.html", - "startup": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-starting.html", - }, - "functionbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/functionbeat/mocked-test-branch", - }, - "heartbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/heartbeat/mocked-test-branch", - }, - "indexPatterns": Object { - "introduction": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index-patterns.html", - "loadingData": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/tutorial-load-dataset.html", - }, - "kibana": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index.html", - "logstash": Object { - "base": "https://www.elastic.co/guide/en/logstash/mocked-test-branch", - }, - "management": Object { - "dashboardSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-dashboard-settings", - "kibanaSearchSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-search-settings", - }, - "metricbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/metricbeat/mocked-test-branch", - }, - "query": Object { - "kueryQuerySyntax": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/kuery-query.html", - "luceneQuerySyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl-query-string-query.html#query-string-syntax", - "queryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", - }, - "scriptedFields": Object { - "luceneExpressions": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-expression.html", - "painless": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless.html", - "painlessApi": "https://www.elastic.co/guide/en/elasticsearch/painless/mocked-test-branch/painless-api-reference.html", - "painlessSyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless-syntax.html", - "scriptAggs": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations.html#_values_source", - "scriptFields": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-request-script-fields.html", - }, - "siem": Object { - "gettingStarted": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/install-siem.html", - "guide": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/index.html", - }, - "winlogbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/winlogbeat/mocked-test-branch", - }, - }, - }, - "docTitle": Object { - "change": [Function], - }, - "documentation": Object { - "esDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/", - "esIndicesCreateIndex": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/indices-create-index.html#indices-create-index", - "esPluginDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/plugins/mocked-test-branch/", - "esQueryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", - "esStackOverviewDocBasePath": "https://www.elastic.co/guide/en/elastic-stack-overview/mocked-test-branch/", - "esTransform": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/transforms.html", - "esTransformPivot": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/put-transform.html#put-transform-request-body", - "mlDocBasePath": "https://www.elastic.co/guide/en/machine-learning/mocked-test-branch/", - }, - "fatalErrors": Object { - "add": [MockFunction], - "get$": [MockFunction], - }, - "http": Object { - "addLoadingCountSource": [MockFunction], - "anonymousPaths": Object { - "isAnonymous": [MockFunction], - "register": [MockFunction], - }, - "basePath": BasePath { - "basePath": "", - "get": [Function], - "prepend": [Function], - "remove": [Function], - "serverBasePath": "", - }, - "delete": [MockFunction], - "fetch": [MockFunction], - "get": [MockFunction], - "getLoadingCount$": [MockFunction], - "head": [MockFunction], - "intercept": [MockFunction], - "options": [MockFunction], - "patch": [MockFunction], - "post": [MockFunction], - "put": [MockFunction], - }, - "i18n": Object { - "Context": [MockFunction], - }, - "injectedMetadata": Object { - "getInjectedVar": [MockFunction], - }, - "notifications": Object { - "toasts": Object { - "add": [MockFunction], - "addDanger": [MockFunction], - "addError": [MockFunction], - "addSuccess": [MockFunction], - "addWarning": [MockFunction], - "get$": [MockFunction], - "remove": [MockFunction], - }, - }, - "overlays": Object { - "banners": Object { - "add": [MockFunction], - "get$": [MockFunction], - "getComponent": [MockFunction], - "remove": [MockFunction], - "replace": [MockFunction], - }, - "openConfirm": [MockFunction], - "openFlyout": [MockFunction], - "openModal": [MockFunction], - }, - "savedObjects": Object { - "client": Object { - "bulkCreate": [MockFunction], - "bulkGet": [MockFunction], - "bulkUpdate": [MockFunction], - "create": [MockFunction], - "delete": [MockFunction], - "find": [MockFunction], - "get": [MockFunction], - "update": [MockFunction], - }, - }, - "uiSettings": Object { - "get": [MockFunction], - "get$": [MockFunction], - "getAll": [MockFunction], - "getSaved$": [MockFunction], - "getUpdate$": [MockFunction], - "getUpdateErrors$": [MockFunction], - "isCustom": [MockFunction], - "isDeclared": [MockFunction], - "isDefault": [MockFunction], - "isOverridden": [MockFunction], - "overrideLocalDefault": [MockFunction], - "remove": [MockFunction], - "set": [MockFunction], - }, - }, - "plugins": Object { - "advancedSettings": Object { - "component": Object { - "componentType": Object { - "PAGE_FOOTER_COMPONENT": "advanced_settings_page_footer", - "PAGE_SUBTITLE_COMPONENT": "advanced_settings_page_subtitle", - "PAGE_TITLE_COMPONENT": "advanced_settings_page_title", - }, - "get": [MockFunction], - }, - }, - "charts": Object { - "colors": Object { - "createColorLookupFunction": [MockFunction], - }, - "theme": Object { - "chartsDefaultTheme": Object { - "areaSeriesStyle": Object { - "area": Object { - "opacity": 0.3, - }, - "line": Object { - "strokeWidth": 2, - }, - "point": Object { - "fill": "rgba(255, 255, 255, 1)", - "radius": 3, - "strokeWidth": 2, - "visible": false, - }, - }, - "axes": Object { - "axisLineStyle": Object { - "stroke": "rgba(239, 241, 244, 1)", - }, - "axisTitleStyle": Object { - "fill": "rgba(52, 55, 65, 1)", - "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, - 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", - "fontSize": 12, - "padding": 10, - }, - "gridLineStyle": Object { - "horizontal": Object { - "dash": Array [ - 0, - 0, - ], - "opacity": 1, - "stroke": "rgba(239, 241, 244, 1)", - "strokeWidth": 1, - "visible": true, - }, - "vertical": Object { - "dash": Array [ - 4, - 4, - ], - "opacity": 1, - "stroke": "rgba(239, 241, 244, 1)", - "strokeWidth": 1, - "visible": true, - }, - }, - "tickLabelStyle": Object { - "fill": "rgba(105, 112, 125, 1)", - "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, - 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", - "fontSize": 10, - "padding": 8, - }, - "tickLineStyle": Object { - "stroke": "rgba(239, 241, 244, 1)", - "strokeWidth": 1, - "visible": false, - }, - }, - "barSeriesStyle": Object { - "displayValue": Object { - "fill": "rgba(105, 112, 125, 1)", - "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, - 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", - "fontSize": 8, - }, - }, - "chartMargins": Object { - "bottom": 0, - "left": 0, - "right": 0, - "top": 0, - }, - "colors": Object { - "defaultVizColor": "#6092C0", - "vizColors": Array [ - "#54B399", - "#6092C0", - "#D36086", - "#9170B8", - "#CA8EAE", - "#D6BF57", - "#B9A888", - "#DA8B45", - "#AA6556", - "#E7664C", - ], - }, - "crosshair": Object { - "band": Object { - "fill": "rgba(245, 247, 250, 1)", - }, - "line": Object { - "dash": Array [ - 4, - 4, - ], - "stroke": "rgba(105, 112, 125, 1)", - "strokeWidth": 1, - }, - }, - "lineSeriesStyle": Object { - "line": Object { - "strokeWidth": 2, - }, - "point": Object { - "fill": "rgba(255, 255, 255, 1)", - "radius": 3, - "strokeWidth": 2, - }, - }, - "scales": Object { - "barsPadding": 0.25, - "histogramPadding": 0.05, - }, - }, - "chartsTheme$": [MockFunction], - "useChartsTheme": [MockFunction], - }, - }, - "data": Object { - "__LEGACY": Object { - "esClient": Object { - "msearch": [MockFunction], - "search": [MockFunction], - }, - }, - "autocomplete": Object { - "getQuerySuggestions": [MockFunction], - "getValueSuggestions": [MockFunction], - "hasQuerySuggestions": [MockFunction], - }, - "fieldFormats": Object { - "deserialize": [MockFunction], - "getByFieldType": [MockFunction], - "getDefaultConfig": [MockFunction], - "getDefaultInstance": [MockFunction], - "getDefaultInstanceCacheResolver": [MockFunction], - "getDefaultInstancePlain": [MockFunction], - "getDefaultType": [MockFunction], - "getDefaultTypeName": [MockFunction], - "getInstance": [MockFunction], - "getType": [MockFunction], - "getTypeNameByEsTypes": [MockFunction], - "getTypeWithoutMetaParams": [MockFunction], - "init": [MockFunction], - "parseDefaultTypeMap": [MockFunction], - "register": [MockFunction], - }, - "getSuggestions": [MockFunction], - "indexPatterns": Object { - "get": [MockFunction], - "make": [Function], - }, - "query": Object { - "filterManager": [MockFunction], - "savedQueries": [MockFunction], - "state$": Observable { - "_isScalar": false, - }, - "timefilter": Object { - "history": Object { - "add": [MockFunction], - "get": [MockFunction], - }, - "timefilter": Object { - "calculateBounds": [MockFunction], - "createFilter": [MockFunction], - "disableAutoRefreshSelector": [MockFunction], - "disableTimeRangeSelector": [MockFunction], - "enableAutoRefreshSelector": [MockFunction], - "enableTimeRangeSelector": [MockFunction], - "getActiveBounds": [MockFunction], - "getAutoRefreshFetch$": [MockFunction], - "getBounds": [MockFunction], - "getEnabledUpdated$": [MockFunction], - "getFetch$": [MockFunction], - "getRefreshInterval": [MockFunction], - "getRefreshIntervalDefaults": [MockFunction], - "getRefreshIntervalUpdate$": [MockFunction], - "getTime": [MockFunction], - "getTimeDefaults": [MockFunction], - "getTimeUpdate$": [MockFunction], - "isAutoRefreshSelectorEnabled": [MockFunction], - "isTimeRangeSelectorEnabled": [MockFunction], - "setRefreshInterval": [MockFunction], - "setTime": [MockFunction], - }, - }, - }, - "search": Object { - "__LEGACY": Object { - "esClient": Object { - "msearch": [MockFunction], - "search": [MockFunction], - }, - }, - "search": [MockFunction], - }, - "ui": Object { - "IndexPatternSelect": [MockFunction], - "SearchBar": [MockFunction], - }, - }, - "embeddable": Object { - "getEmbeddableFactories": [MockFunction], - "getEmbeddableFactory": [MockFunction], - "registerEmbeddableFactory": [MockFunction], - }, - "expressions": Object { - "ExpressionLoader": [MockFunction], - "ExpressionRenderHandler": [MockFunction], - "ReactExpressionRenderer": [MockFunction], - "execute": [MockFunction], - "fork": [MockFunction], - "getFunction": [MockFunction], - "getFunctions": [MockFunction], - "getRenderer": [MockFunction], - "getRenderers": [MockFunction], - "getType": [MockFunction], - "getTypes": [MockFunction], - "loader": [MockFunction], - "render": [MockFunction], - "run": [MockFunction], - }, - "inspector": Object { - "isAvailable": [MockFunction], - "open": [MockFunction], - }, - "kibanaLegacy": Object { - "config": Object { - "defaultAppId": "home", - }, - "dashboardConfig": Object { - "getHideWriteControls": [MockFunction], - "turnHideWriteControlsOn": [MockFunction], - }, - "getApps": [MockFunction], - "getForwards": [MockFunction], - }, - "management": Object { - "legacy": Object {}, - "sections": Object { - "getAllSections": [MockFunction], - "getSection": [MockFunction], - "navigateToApp": [MockFunction], - }, - }, - "navigation": Object { - "ui": Object { - "TopNavMenu": [MockFunction], - }, - }, - "uiActions": Object { - "attachAction": [MockFunction], - "clear": [MockFunction], - "detachAction": [MockFunction], - "executeTriggerActions": [MockFunction], - "fork": [MockFunction], - "getTrigger": [MockFunction], - "getTriggerActions": [MockFunction], - "getTriggerCompatibleActions": [MockFunction], - "registerAction": [MockFunction], - "registerTrigger": [MockFunction], - }, - "uiMetric": Object { - "createUiStatsReporter": [Function], - }, - "xsrfToken": "kbn-xsrf-token", - }, - } +<div> + <ContextProvider + value={ + Object { + "initialized": false, + } + } + > + <Component + createIndexPattern={false} + onChange={[Function]} + overrides={ + Object { + "created": false, + "indexPatternId": undefined, + "started": false, } - > - <Component - createIndexPattern={false} - onChange={[Function]} - overrides={ - Object { - "created": false, - "indexPatternId": undefined, - "started": false, - } - } - transformConfig={Object {}} - transformId="the-transform-id" - /> - </ContextProvider> - </HashRouter> - </mockConstructor> -</AuthorizationProvider> + } + transformConfig={Object {}} + transformId="the-transform-id" + /> + </ContextProvider> +</div> `; diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.test.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.test.tsx index 80968fd6e28877..625c545ee8c46a 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.test.tsx @@ -7,8 +7,7 @@ import { shallow } from 'enzyme'; import React from 'react'; -import { createPublicShim } from '../../../../../shim'; -import { getAppProviders } from '../../../../app_dependencies'; +import { KibanaContext } from '../../../../lib/kibana'; import { StepCreateForm } from './step_create_form'; @@ -18,7 +17,6 @@ jest.mock('react', () => { return { ...r, memo: (x: any) => x }; }); -jest.mock('ui/new_platform'); jest.mock('../../../../../shared_imports'); describe('Transform: <StepCreateForm />', () => { @@ -31,11 +29,14 @@ describe('Transform: <StepCreateForm />', () => { onChange() {}, }; - const Providers = getAppProviders(createPublicShim()); + // Using a wrapping <div> element because shallow() would fail + // with the Provider being the outer most component. const wrapper = shallow( - <Providers> - <StepCreateForm {...props} /> - </Providers> + <div> + <KibanaContext.Provider value={{ initialized: false }}> + <StepCreateForm {...props} /> + </KibanaContext.Provider> + </div> ); expect(wrapper).toMatchSnapshot(); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.tsx index 4198c2ea0260d7..bbeb97b6b81134 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_create/step_create_form.tsx @@ -34,6 +34,7 @@ import { PROGRESS_REFRESH_INTERVAL_MS } from '../../../../../../common/constants import { getTransformProgress, getDiscoverUrl } from '../../../../common'; import { useApi } from '../../../../hooks/use_api'; +import { useKibanaContext } from '../../../../lib/kibana'; import { useAppDependencies, useToastNotifications } from '../../../../app_dependencies'; import { RedirectToTransformManagement } from '../../../../common/navigation'; import { ToastNotificationText } from '../../../../components'; @@ -75,8 +76,7 @@ export const StepCreateForm: FC<Props> = React.memo( ); const deps = useAppDependencies(); - const indexPatterns = deps.plugins.data.indexPatterns; - const uiSettings = deps.core.uiSettings; + const kibanaContext = useKibanaContext(); const toastNotifications = useToastNotifications(); useEffect(() => { @@ -176,7 +176,7 @@ export const StepCreateForm: FC<Props> = React.memo( const indexPatternName = transformConfig.dest.index; try { - const newIndexPattern = await indexPatterns.make(); + const newIndexPattern = await kibanaContext.indexPatterns.make(); Object.assign(newIndexPattern, { id: '', @@ -200,8 +200,8 @@ export const StepCreateForm: FC<Props> = React.memo( // check if there's a default index pattern, if not, // set the newly created one as the default index pattern. - if (!uiSettings.get('defaultIndex')) { - await uiSettings.set('defaultIndex', id); + if (!kibanaContext.kibanaConfig.get('defaultIndex')) { + await kibanaContext.kibanaConfig.set('defaultIndex', id); } toastNotifications.addSuccess( diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/pivot_preview.test.tsx.snap b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/pivot_preview.test.tsx.snap index bc0d983c6e022d..a7da172a67b8ae 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/pivot_preview.test.tsx.snap +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/pivot_preview.test.tsx.snap @@ -1,604 +1,44 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Transform: <PivotPreview /> Minimal initialization 1`] = ` -<AuthorizationProvider - privilegesEndpoint="/api/transform/privileges" -> - <mockConstructor> - <HashRouter> - <ContextProvider - value={ - Object { - "core": Object { - "application": Object { - "capabilities": Object { - "catalogue": Object {}, - "management": Object {}, - "navLinks": Object {}, - }, - "currentAppId$": Observable { - "_isScalar": false, - "source": Subject { - "_isScalar": false, - "closed": false, - "hasError": false, - "isStopped": false, - "observers": Array [], - "thrownError": null, - }, - }, - "getUrlForApp": [MockFunction], - "navigateToApp": [MockFunction], - "registerMountContext": [MockFunction], - }, - "chrome": Object { - "addApplicationClass": [MockFunction], - "docTitle": Object { - "__legacy": Object { - "setBaseTitle": [MockFunction], - }, - "change": [MockFunction], - "reset": [MockFunction], - }, - "getApplicationClasses$": [MockFunction], - "getBadge$": [MockFunction], - "getBrand$": [MockFunction], - "getBreadcrumbs$": [MockFunction], - "getHeaderComponent": [MockFunction], - "getHelpExtension$": [MockFunction], - "getIsCollapsed$": [MockFunction], - "getIsVisible$": [MockFunction], - "navControls": Object { - "getLeft$": [MockFunction], - "getRight$": [MockFunction], - "registerLeft": [MockFunction], - "registerRight": [MockFunction], - }, - "navLinks": Object { - "enableForcedAppSwitcherNavigation": [MockFunction], - "get": [MockFunction], - "getAll": [MockFunction], - "getForceAppSwitcherNavigation$": [MockFunction], - "getNavLinks$": [MockFunction], - "has": [MockFunction], - "showOnly": [MockFunction], - "update": [MockFunction], - }, - "recentlyAccessed": Object { - "add": [MockFunction], - "get": [MockFunction], - "get$": [MockFunction], - }, - "removeApplicationClass": [MockFunction], - "setAppTitle": [MockFunction], - "setBadge": [MockFunction], - "setBrand": [MockFunction], - "setBreadcrumbs": [MockFunction], - "setHelpExtension": [MockFunction], - "setHelpSupportUrl": [MockFunction], - "setIsCollapsed": [MockFunction], - "setIsVisible": [MockFunction], - }, - "docLinks": Object { - "DOC_LINK_VERSION": "mocked-test-branch", - "ELASTIC_WEBSITE_URL": "https://www.elastic.co/", - "links": Object { - "aggs": Object { - "avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-avg-aggregation.html", - "avg_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-avg-bucket-aggregation.html", - "cardinality": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-cardinality-aggregation.html", - "count": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-valuecount-aggregation.html", - "cumulative_sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", - "date_histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-datehistogram-aggregation.html", - "date_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-daterange-aggregation.html", - "derivative": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-derivative-aggregation.html", - "filter": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filter-aggregation.html", - "filters": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filters-aggregation.html", - "geo_bounds": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geobounds-aggregation.html", - "geo_centroid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geocentroid-aggregation.html", - "geohash_grid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-geohashgrid-aggregation.html", - "histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-histogram-aggregation.html", - "ip_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-iprange-aggregation.html", - "max": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-max-aggregation.html", - "max_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-max-bucket-aggregation.html", - "median": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-aggregation.html", - "min": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-min-aggregation.html", - "min_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-min-bucket-aggregation.html", - "moving_avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-movavg-aggregation.html", - "percentile_ranks": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-rank-aggregation.html", - "range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-range-aggregation.html", - "serial_diff": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-serialdiff-aggregation.html", - "significant_terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-significantterms-aggregation.html", - "std_dev": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-extendedstats-aggregation.html", - "sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", - "sum_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-sum-bucket-aggregation.html", - "terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-terms-aggregation.html", - "top_hits": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-top-hits-aggregation.html", - }, - "auditbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/auditbeat/mocked-test-branch", - }, - "date": Object { - "dateMath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/common-options.html#date-math", - }, - "filebeat": Object { - "base": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch", - "configuration": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-configuration.html", - "elasticsearchOutput": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/elasticsearch-output.html", - "exportedFields": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/exported-fields.html", - "installation": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-installation.html", - "startup": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-starting.html", - }, - "functionbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/functionbeat/mocked-test-branch", - }, - "heartbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/heartbeat/mocked-test-branch", - }, - "indexPatterns": Object { - "introduction": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index-patterns.html", - "loadingData": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/tutorial-load-dataset.html", - }, - "kibana": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index.html", - "logstash": Object { - "base": "https://www.elastic.co/guide/en/logstash/mocked-test-branch", - }, - "management": Object { - "dashboardSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-dashboard-settings", - "kibanaSearchSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-search-settings", - }, - "metricbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/metricbeat/mocked-test-branch", - }, - "query": Object { - "kueryQuerySyntax": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/kuery-query.html", - "luceneQuerySyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl-query-string-query.html#query-string-syntax", - "queryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", - }, - "scriptedFields": Object { - "luceneExpressions": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-expression.html", - "painless": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless.html", - "painlessApi": "https://www.elastic.co/guide/en/elasticsearch/painless/mocked-test-branch/painless-api-reference.html", - "painlessSyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless-syntax.html", - "scriptAggs": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations.html#_values_source", - "scriptFields": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-request-script-fields.html", - }, - "siem": Object { - "gettingStarted": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/install-siem.html", - "guide": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/index.html", - }, - "winlogbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/winlogbeat/mocked-test-branch", - }, - }, - }, - "docTitle": Object { - "change": [Function], - }, - "documentation": Object { - "esDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/", - "esIndicesCreateIndex": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/indices-create-index.html#indices-create-index", - "esPluginDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/plugins/mocked-test-branch/", - "esQueryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", - "esStackOverviewDocBasePath": "https://www.elastic.co/guide/en/elastic-stack-overview/mocked-test-branch/", - "esTransform": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/transforms.html", - "esTransformPivot": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/put-transform.html#put-transform-request-body", - "mlDocBasePath": "https://www.elastic.co/guide/en/machine-learning/mocked-test-branch/", - }, - "fatalErrors": Object { - "add": [MockFunction], - "get$": [MockFunction], - }, - "http": Object { - "addLoadingCountSource": [MockFunction], - "anonymousPaths": Object { - "isAnonymous": [MockFunction], - "register": [MockFunction], - }, - "basePath": BasePath { - "basePath": "", - "get": [Function], - "prepend": [Function], - "remove": [Function], - "serverBasePath": "", - }, - "delete": [MockFunction], - "fetch": [MockFunction], - "get": [MockFunction], - "getLoadingCount$": [MockFunction], - "head": [MockFunction], - "intercept": [MockFunction], - "options": [MockFunction], - "patch": [MockFunction], - "post": [MockFunction], - "put": [MockFunction], - }, - "i18n": Object { - "Context": [MockFunction], - }, - "injectedMetadata": Object { - "getInjectedVar": [MockFunction], - }, - "notifications": Object { - "toasts": Object { - "add": [MockFunction], - "addDanger": [MockFunction], - "addError": [MockFunction], - "addSuccess": [MockFunction], - "addWarning": [MockFunction], - "get$": [MockFunction], - "remove": [MockFunction], - }, - }, - "overlays": Object { - "banners": Object { - "add": [MockFunction], - "get$": [MockFunction], - "getComponent": [MockFunction], - "remove": [MockFunction], - "replace": [MockFunction], - }, - "openConfirm": [MockFunction], - "openFlyout": [MockFunction], - "openModal": [MockFunction], - }, - "savedObjects": Object { - "client": Object { - "bulkCreate": [MockFunction], - "bulkGet": [MockFunction], - "bulkUpdate": [MockFunction], - "create": [MockFunction], - "delete": [MockFunction], - "find": [MockFunction], - "get": [MockFunction], - "update": [MockFunction], - }, - }, - "uiSettings": Object { - "get": [MockFunction], - "get$": [MockFunction], - "getAll": [MockFunction], - "getSaved$": [MockFunction], - "getUpdate$": [MockFunction], - "getUpdateErrors$": [MockFunction], - "isCustom": [MockFunction], - "isDeclared": [MockFunction], - "isDefault": [MockFunction], - "isOverridden": [MockFunction], - "overrideLocalDefault": [MockFunction], - "remove": [MockFunction], - "set": [MockFunction], - }, - }, - "plugins": Object { - "advancedSettings": Object { - "component": Object { - "componentType": Object { - "PAGE_FOOTER_COMPONENT": "advanced_settings_page_footer", - "PAGE_SUBTITLE_COMPONENT": "advanced_settings_page_subtitle", - "PAGE_TITLE_COMPONENT": "advanced_settings_page_title", - }, - "get": [MockFunction], - }, - }, - "charts": Object { - "colors": Object { - "createColorLookupFunction": [MockFunction], - }, - "theme": Object { - "chartsDefaultTheme": Object { - "areaSeriesStyle": Object { - "area": Object { - "opacity": 0.3, - }, - "line": Object { - "strokeWidth": 2, - }, - "point": Object { - "fill": "rgba(255, 255, 255, 1)", - "radius": 3, - "strokeWidth": 2, - "visible": false, - }, - }, - "axes": Object { - "axisLineStyle": Object { - "stroke": "rgba(239, 241, 244, 1)", - }, - "axisTitleStyle": Object { - "fill": "rgba(52, 55, 65, 1)", - "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, - 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", - "fontSize": 12, - "padding": 10, - }, - "gridLineStyle": Object { - "horizontal": Object { - "dash": Array [ - 0, - 0, - ], - "opacity": 1, - "stroke": "rgba(239, 241, 244, 1)", - "strokeWidth": 1, - "visible": true, - }, - "vertical": Object { - "dash": Array [ - 4, - 4, - ], - "opacity": 1, - "stroke": "rgba(239, 241, 244, 1)", - "strokeWidth": 1, - "visible": true, - }, - }, - "tickLabelStyle": Object { - "fill": "rgba(105, 112, 125, 1)", - "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, - 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", - "fontSize": 10, - "padding": 8, - }, - "tickLineStyle": Object { - "stroke": "rgba(239, 241, 244, 1)", - "strokeWidth": 1, - "visible": false, - }, - }, - "barSeriesStyle": Object { - "displayValue": Object { - "fill": "rgba(105, 112, 125, 1)", - "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, - 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", - "fontSize": 8, - }, - }, - "chartMargins": Object { - "bottom": 0, - "left": 0, - "right": 0, - "top": 0, - }, - "colors": Object { - "defaultVizColor": "#6092C0", - "vizColors": Array [ - "#54B399", - "#6092C0", - "#D36086", - "#9170B8", - "#CA8EAE", - "#D6BF57", - "#B9A888", - "#DA8B45", - "#AA6556", - "#E7664C", - ], - }, - "crosshair": Object { - "band": Object { - "fill": "rgba(245, 247, 250, 1)", - }, - "line": Object { - "dash": Array [ - 4, - 4, - ], - "stroke": "rgba(105, 112, 125, 1)", - "strokeWidth": 1, - }, - }, - "lineSeriesStyle": Object { - "line": Object { - "strokeWidth": 2, - }, - "point": Object { - "fill": "rgba(255, 255, 255, 1)", - "radius": 3, - "strokeWidth": 2, - }, - }, - "scales": Object { - "barsPadding": 0.25, - "histogramPadding": 0.05, - }, - }, - "chartsTheme$": [MockFunction], - "useChartsTheme": [MockFunction], - }, - }, - "data": Object { - "__LEGACY": Object { - "esClient": Object { - "msearch": [MockFunction], - "search": [MockFunction], - }, - }, - "autocomplete": Object { - "getQuerySuggestions": [MockFunction], - "getValueSuggestions": [MockFunction], - "hasQuerySuggestions": [MockFunction], - }, - "fieldFormats": Object { - "deserialize": [MockFunction], - "getByFieldType": [MockFunction], - "getDefaultConfig": [MockFunction], - "getDefaultInstance": [MockFunction], - "getDefaultInstanceCacheResolver": [MockFunction], - "getDefaultInstancePlain": [MockFunction], - "getDefaultType": [MockFunction], - "getDefaultTypeName": [MockFunction], - "getInstance": [MockFunction], - "getType": [MockFunction], - "getTypeNameByEsTypes": [MockFunction], - "getTypeWithoutMetaParams": [MockFunction], - "init": [MockFunction], - "parseDefaultTypeMap": [MockFunction], - "register": [MockFunction], - }, - "getSuggestions": [MockFunction], - "indexPatterns": Object { - "get": [MockFunction], - "make": [Function], - }, - "query": Object { - "filterManager": [MockFunction], - "savedQueries": [MockFunction], - "state$": Observable { - "_isScalar": false, - }, - "timefilter": Object { - "history": Object { - "add": [MockFunction], - "get": [MockFunction], - }, - "timefilter": Object { - "calculateBounds": [MockFunction], - "createFilter": [MockFunction], - "disableAutoRefreshSelector": [MockFunction], - "disableTimeRangeSelector": [MockFunction], - "enableAutoRefreshSelector": [MockFunction], - "enableTimeRangeSelector": [MockFunction], - "getActiveBounds": [MockFunction], - "getAutoRefreshFetch$": [MockFunction], - "getBounds": [MockFunction], - "getEnabledUpdated$": [MockFunction], - "getFetch$": [MockFunction], - "getRefreshInterval": [MockFunction], - "getRefreshIntervalDefaults": [MockFunction], - "getRefreshIntervalUpdate$": [MockFunction], - "getTime": [MockFunction], - "getTimeDefaults": [MockFunction], - "getTimeUpdate$": [MockFunction], - "isAutoRefreshSelectorEnabled": [MockFunction], - "isTimeRangeSelectorEnabled": [MockFunction], - "setRefreshInterval": [MockFunction], - "setTime": [MockFunction], - }, - }, - }, - "search": Object { - "__LEGACY": Object { - "esClient": Object { - "msearch": [MockFunction], - "search": [MockFunction], - }, - }, - "search": [MockFunction], - }, - "ui": Object { - "IndexPatternSelect": [MockFunction], - "SearchBar": [MockFunction], - }, - }, - "embeddable": Object { - "getEmbeddableFactories": [MockFunction], - "getEmbeddableFactory": [MockFunction], - "registerEmbeddableFactory": [MockFunction], - }, - "expressions": Object { - "ExpressionLoader": [MockFunction], - "ExpressionRenderHandler": [MockFunction], - "ReactExpressionRenderer": [MockFunction], - "execute": [MockFunction], - "fork": [MockFunction], - "getFunction": [MockFunction], - "getFunctions": [MockFunction], - "getRenderer": [MockFunction], - "getRenderers": [MockFunction], - "getType": [MockFunction], - "getTypes": [MockFunction], - "loader": [MockFunction], - "render": [MockFunction], - "run": [MockFunction], - }, - "inspector": Object { - "isAvailable": [MockFunction], - "open": [MockFunction], - }, - "kibanaLegacy": Object { - "config": Object { - "defaultAppId": "home", - }, - "dashboardConfig": Object { - "getHideWriteControls": [MockFunction], - "turnHideWriteControlsOn": [MockFunction], - }, - "getApps": [MockFunction], - "getForwards": [MockFunction], - }, - "management": Object { - "legacy": Object {}, - "sections": Object { - "getAllSections": [MockFunction], - "getSection": [MockFunction], - "navigateToApp": [MockFunction], - }, - }, - "navigation": Object { - "ui": Object { - "TopNavMenu": [MockFunction], - }, - }, - "uiActions": Object { - "attachAction": [MockFunction], - "clear": [MockFunction], - "detachAction": [MockFunction], - "executeTriggerActions": [MockFunction], - "fork": [MockFunction], - "getTrigger": [MockFunction], - "getTriggerActions": [MockFunction], - "getTriggerCompatibleActions": [MockFunction], - "registerAction": [MockFunction], - "registerTrigger": [MockFunction], - }, - "uiMetric": Object { - "createUiStatsReporter": [Function], - }, - "xsrfToken": "kbn-xsrf-token", - }, - } +<div> + <ContextProvider + value={ + Object { + "initialized": false, + } + } + > + <Component + aggs={ + Object { + "the-agg-name": Object { + "agg": "avg", + "aggName": "the-group-by-agg-name", + "dropDownName": "the-group-by-drop-down-name", + "field": "the-agg-field", + }, } - > - <Component - aggs={ - Object { - "the-agg-name": Object { - "agg": "avg", - "aggName": "the-group-by-agg-name", - "dropDownName": "the-group-by-drop-down-name", - "field": "the-agg-field", - }, - } - } - groupBy={ - Object { - "the-group-by-name": Object { - "agg": "terms", - "aggName": "the-group-by-agg-name", - "dropDownName": "the-group-by-drop-down-name", - "field": "the-group-by-field", - }, - } - } - indexPattern={ - Object { - "fields": Array [], - "title": "the-index-pattern-title", - } - } - query={ - Object { - "query_string": Object { - "default_operator": "AND", - "query": "the-query", - }, - } - } - /> - </ContextProvider> - </HashRouter> - </mockConstructor> -</AuthorizationProvider> + } + groupBy={ + Object { + "the-group-by-name": Object { + "agg": "terms", + "aggName": "the-group-by-agg-name", + "dropDownName": "the-group-by-drop-down-name", + "field": "the-group-by-field", + }, + } + } + query={ + Object { + "query_string": Object { + "default_operator": "AND", + "query": "the-query", + }, + } + } + /> + </ContextProvider> +</div> `; diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_form.test.tsx.snap b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_form.test.tsx.snap index 30c57a9f3f4ae3..70a0bfc12b2089 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_form.test.tsx.snap +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_form.test.tsx.snap @@ -1,572 +1,17 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Transform: <DefinePivotForm /> Minimal initialization 1`] = ` -<AuthorizationProvider - privilegesEndpoint="/api/transform/privileges" -> - <mockConstructor> - <HashRouter> - <ContextProvider - value={ - Object { - "core": Object { - "application": Object { - "capabilities": Object { - "catalogue": Object {}, - "management": Object {}, - "navLinks": Object {}, - }, - "currentAppId$": Observable { - "_isScalar": false, - "source": Subject { - "_isScalar": false, - "closed": false, - "hasError": false, - "isStopped": false, - "observers": Array [], - "thrownError": null, - }, - }, - "getUrlForApp": [MockFunction], - "navigateToApp": [MockFunction], - "registerMountContext": [MockFunction], - }, - "chrome": Object { - "addApplicationClass": [MockFunction], - "docTitle": Object { - "__legacy": Object { - "setBaseTitle": [MockFunction], - }, - "change": [MockFunction], - "reset": [MockFunction], - }, - "getApplicationClasses$": [MockFunction], - "getBadge$": [MockFunction], - "getBrand$": [MockFunction], - "getBreadcrumbs$": [MockFunction], - "getHeaderComponent": [MockFunction], - "getHelpExtension$": [MockFunction], - "getIsCollapsed$": [MockFunction], - "getIsVisible$": [MockFunction], - "navControls": Object { - "getLeft$": [MockFunction], - "getRight$": [MockFunction], - "registerLeft": [MockFunction], - "registerRight": [MockFunction], - }, - "navLinks": Object { - "enableForcedAppSwitcherNavigation": [MockFunction], - "get": [MockFunction], - "getAll": [MockFunction], - "getForceAppSwitcherNavigation$": [MockFunction], - "getNavLinks$": [MockFunction], - "has": [MockFunction], - "showOnly": [MockFunction], - "update": [MockFunction], - }, - "recentlyAccessed": Object { - "add": [MockFunction], - "get": [MockFunction], - "get$": [MockFunction], - }, - "removeApplicationClass": [MockFunction], - "setAppTitle": [MockFunction], - "setBadge": [MockFunction], - "setBrand": [MockFunction], - "setBreadcrumbs": [MockFunction], - "setHelpExtension": [MockFunction], - "setHelpSupportUrl": [MockFunction], - "setIsCollapsed": [MockFunction], - "setIsVisible": [MockFunction], - }, - "docLinks": Object { - "DOC_LINK_VERSION": "mocked-test-branch", - "ELASTIC_WEBSITE_URL": "https://www.elastic.co/", - "links": Object { - "aggs": Object { - "avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-avg-aggregation.html", - "avg_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-avg-bucket-aggregation.html", - "cardinality": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-cardinality-aggregation.html", - "count": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-valuecount-aggregation.html", - "cumulative_sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", - "date_histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-datehistogram-aggregation.html", - "date_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-daterange-aggregation.html", - "derivative": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-derivative-aggregation.html", - "filter": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filter-aggregation.html", - "filters": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-filters-aggregation.html", - "geo_bounds": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geobounds-aggregation.html", - "geo_centroid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-geocentroid-aggregation.html", - "geohash_grid": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-geohashgrid-aggregation.html", - "histogram": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-histogram-aggregation.html", - "ip_range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-iprange-aggregation.html", - "max": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-max-aggregation.html", - "max_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-max-bucket-aggregation.html", - "median": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-aggregation.html", - "min": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-min-aggregation.html", - "min_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-min-bucket-aggregation.html", - "moving_avg": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-movavg-aggregation.html", - "percentile_ranks": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-percentile-rank-aggregation.html", - "range": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-range-aggregation.html", - "serial_diff": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-serialdiff-aggregation.html", - "significant_terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-significantterms-aggregation.html", - "std_dev": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-extendedstats-aggregation.html", - "sum": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-sum-aggregation.html", - "sum_bucket": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-pipeline-sum-bucket-aggregation.html", - "terms": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-bucket-terms-aggregation.html", - "top_hits": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations-metrics-top-hits-aggregation.html", - }, - "auditbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/auditbeat/mocked-test-branch", - }, - "date": Object { - "dateMath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/common-options.html#date-math", - }, - "filebeat": Object { - "base": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch", - "configuration": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-configuration.html", - "elasticsearchOutput": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/elasticsearch-output.html", - "exportedFields": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/exported-fields.html", - "installation": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-installation.html", - "startup": "https://www.elastic.co/guide/en/beats/filebeat/mocked-test-branch/filebeat-starting.html", - }, - "functionbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/functionbeat/mocked-test-branch", - }, - "heartbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/heartbeat/mocked-test-branch", - }, - "indexPatterns": Object { - "introduction": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index-patterns.html", - "loadingData": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/tutorial-load-dataset.html", - }, - "kibana": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/index.html", - "logstash": Object { - "base": "https://www.elastic.co/guide/en/logstash/mocked-test-branch", - }, - "management": Object { - "dashboardSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-dashboard-settings", - "kibanaSearchSettings": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/advanced-options.html#kibana-search-settings", - }, - "metricbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/metricbeat/mocked-test-branch", - }, - "query": Object { - "kueryQuerySyntax": "https://www.elastic.co/guide/en/kibana/mocked-test-branch/kuery-query.html", - "luceneQuerySyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl-query-string-query.html#query-string-syntax", - "queryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", - }, - "scriptedFields": Object { - "luceneExpressions": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-expression.html", - "painless": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless.html", - "painlessApi": "https://www.elastic.co/guide/en/elasticsearch/painless/mocked-test-branch/painless-api-reference.html", - "painlessSyntax": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/modules-scripting-painless-syntax.html", - "scriptAggs": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-aggregations.html#_values_source", - "scriptFields": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/search-request-script-fields.html", - }, - "siem": Object { - "gettingStarted": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/install-siem.html", - "guide": "https://www.elastic.co/guide/en/siem/guide/mocked-test-branch/index.html", - }, - "winlogbeat": Object { - "base": "https://www.elastic.co/guide/en/beats/winlogbeat/mocked-test-branch", - }, - }, - }, - "docTitle": Object { - "change": [Function], - }, - "documentation": Object { - "esDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/", - "esIndicesCreateIndex": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/indices-create-index.html#indices-create-index", - "esPluginDocBasePath": "https://www.elastic.co/guide/en/elasticsearch/plugins/mocked-test-branch/", - "esQueryDsl": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/query-dsl.html", - "esStackOverviewDocBasePath": "https://www.elastic.co/guide/en/elastic-stack-overview/mocked-test-branch/", - "esTransform": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/transforms.html", - "esTransformPivot": "https://www.elastic.co/guide/en/elasticsearch/reference/mocked-test-branch/put-transform.html#put-transform-request-body", - "mlDocBasePath": "https://www.elastic.co/guide/en/machine-learning/mocked-test-branch/", - }, - "fatalErrors": Object { - "add": [MockFunction], - "get$": [MockFunction], - }, - "http": Object { - "addLoadingCountSource": [MockFunction], - "anonymousPaths": Object { - "isAnonymous": [MockFunction], - "register": [MockFunction], - }, - "basePath": BasePath { - "basePath": "", - "get": [Function], - "prepend": [Function], - "remove": [Function], - "serverBasePath": "", - }, - "delete": [MockFunction], - "fetch": [MockFunction], - "get": [MockFunction], - "getLoadingCount$": [MockFunction], - "head": [MockFunction], - "intercept": [MockFunction], - "options": [MockFunction], - "patch": [MockFunction], - "post": [MockFunction], - "put": [MockFunction], - }, - "i18n": Object { - "Context": [MockFunction], - }, - "injectedMetadata": Object { - "getInjectedVar": [MockFunction], - }, - "notifications": Object { - "toasts": Object { - "add": [MockFunction], - "addDanger": [MockFunction], - "addError": [MockFunction], - "addSuccess": [MockFunction], - "addWarning": [MockFunction], - "get$": [MockFunction], - "remove": [MockFunction], - }, - }, - "overlays": Object { - "banners": Object { - "add": [MockFunction], - "get$": [MockFunction], - "getComponent": [MockFunction], - "remove": [MockFunction], - "replace": [MockFunction], - }, - "openConfirm": [MockFunction], - "openFlyout": [MockFunction], - "openModal": [MockFunction], - }, - "savedObjects": Object { - "client": Object { - "bulkCreate": [MockFunction], - "bulkGet": [MockFunction], - "bulkUpdate": [MockFunction], - "create": [MockFunction], - "delete": [MockFunction], - "find": [MockFunction], - "get": [MockFunction], - "update": [MockFunction], - }, - }, - "uiSettings": Object { - "get": [MockFunction], - "get$": [MockFunction], - "getAll": [MockFunction], - "getSaved$": [MockFunction], - "getUpdate$": [MockFunction], - "getUpdateErrors$": [MockFunction], - "isCustom": [MockFunction], - "isDeclared": [MockFunction], - "isDefault": [MockFunction], - "isOverridden": [MockFunction], - "overrideLocalDefault": [MockFunction], - "remove": [MockFunction], - "set": [MockFunction], - }, - }, - "plugins": Object { - "advancedSettings": Object { - "component": Object { - "componentType": Object { - "PAGE_FOOTER_COMPONENT": "advanced_settings_page_footer", - "PAGE_SUBTITLE_COMPONENT": "advanced_settings_page_subtitle", - "PAGE_TITLE_COMPONENT": "advanced_settings_page_title", - }, - "get": [MockFunction], - }, - }, - "charts": Object { - "colors": Object { - "createColorLookupFunction": [MockFunction], - }, - "theme": Object { - "chartsDefaultTheme": Object { - "areaSeriesStyle": Object { - "area": Object { - "opacity": 0.3, - }, - "line": Object { - "strokeWidth": 2, - }, - "point": Object { - "fill": "rgba(255, 255, 255, 1)", - "radius": 3, - "strokeWidth": 2, - "visible": false, - }, - }, - "axes": Object { - "axisLineStyle": Object { - "stroke": "rgba(239, 241, 244, 1)", - }, - "axisTitleStyle": Object { - "fill": "rgba(52, 55, 65, 1)", - "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, - 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", - "fontSize": 12, - "padding": 10, - }, - "gridLineStyle": Object { - "horizontal": Object { - "dash": Array [ - 0, - 0, - ], - "opacity": 1, - "stroke": "rgba(239, 241, 244, 1)", - "strokeWidth": 1, - "visible": true, - }, - "vertical": Object { - "dash": Array [ - 4, - 4, - ], - "opacity": 1, - "stroke": "rgba(239, 241, 244, 1)", - "strokeWidth": 1, - "visible": true, - }, - }, - "tickLabelStyle": Object { - "fill": "rgba(105, 112, 125, 1)", - "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, - 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", - "fontSize": 10, - "padding": 8, - }, - "tickLineStyle": Object { - "stroke": "rgba(239, 241, 244, 1)", - "strokeWidth": 1, - "visible": false, - }, - }, - "barSeriesStyle": Object { - "displayValue": Object { - "fill": "rgba(105, 112, 125, 1)", - "fontFamily": "'Inter UI', -apple-system, BlinkMacSystemFont, - 'Segoe UI', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'", - "fontSize": 8, - }, - }, - "chartMargins": Object { - "bottom": 0, - "left": 0, - "right": 0, - "top": 0, - }, - "colors": Object { - "defaultVizColor": "#6092C0", - "vizColors": Array [ - "#54B399", - "#6092C0", - "#D36086", - "#9170B8", - "#CA8EAE", - "#D6BF57", - "#B9A888", - "#DA8B45", - "#AA6556", - "#E7664C", - ], - }, - "crosshair": Object { - "band": Object { - "fill": "rgba(245, 247, 250, 1)", - }, - "line": Object { - "dash": Array [ - 4, - 4, - ], - "stroke": "rgba(105, 112, 125, 1)", - "strokeWidth": 1, - }, - }, - "lineSeriesStyle": Object { - "line": Object { - "strokeWidth": 2, - }, - "point": Object { - "fill": "rgba(255, 255, 255, 1)", - "radius": 3, - "strokeWidth": 2, - }, - }, - "scales": Object { - "barsPadding": 0.25, - "histogramPadding": 0.05, - }, - }, - "chartsTheme$": [MockFunction], - "useChartsTheme": [MockFunction], - }, - }, - "data": Object { - "__LEGACY": Object { - "esClient": Object { - "msearch": [MockFunction], - "search": [MockFunction], - }, - }, - "autocomplete": Object { - "getQuerySuggestions": [MockFunction], - "getValueSuggestions": [MockFunction], - "hasQuerySuggestions": [MockFunction], - }, - "fieldFormats": Object { - "deserialize": [MockFunction], - "getByFieldType": [MockFunction], - "getDefaultConfig": [MockFunction], - "getDefaultInstance": [MockFunction], - "getDefaultInstanceCacheResolver": [MockFunction], - "getDefaultInstancePlain": [MockFunction], - "getDefaultType": [MockFunction], - "getDefaultTypeName": [MockFunction], - "getInstance": [MockFunction], - "getType": [MockFunction], - "getTypeNameByEsTypes": [MockFunction], - "getTypeWithoutMetaParams": [MockFunction], - "init": [MockFunction], - "parseDefaultTypeMap": [MockFunction], - "register": [MockFunction], - }, - "getSuggestions": [MockFunction], - "indexPatterns": Object { - "get": [MockFunction], - "make": [Function], - }, - "query": Object { - "filterManager": [MockFunction], - "savedQueries": [MockFunction], - "state$": Observable { - "_isScalar": false, - }, - "timefilter": Object { - "history": Object { - "add": [MockFunction], - "get": [MockFunction], - }, - "timefilter": Object { - "calculateBounds": [MockFunction], - "createFilter": [MockFunction], - "disableAutoRefreshSelector": [MockFunction], - "disableTimeRangeSelector": [MockFunction], - "enableAutoRefreshSelector": [MockFunction], - "enableTimeRangeSelector": [MockFunction], - "getActiveBounds": [MockFunction], - "getAutoRefreshFetch$": [MockFunction], - "getBounds": [MockFunction], - "getEnabledUpdated$": [MockFunction], - "getFetch$": [MockFunction], - "getRefreshInterval": [MockFunction], - "getRefreshIntervalDefaults": [MockFunction], - "getRefreshIntervalUpdate$": [MockFunction], - "getTime": [MockFunction], - "getTimeDefaults": [MockFunction], - "getTimeUpdate$": [MockFunction], - "isAutoRefreshSelectorEnabled": [MockFunction], - "isTimeRangeSelectorEnabled": [MockFunction], - "setRefreshInterval": [MockFunction], - "setTime": [MockFunction], - }, - }, - }, - "search": Object { - "__LEGACY": Object { - "esClient": Object { - "msearch": [MockFunction], - "search": [MockFunction], - }, - }, - "search": [MockFunction], - }, - "ui": Object { - "IndexPatternSelect": [MockFunction], - "SearchBar": [MockFunction], - }, - }, - "embeddable": Object { - "getEmbeddableFactories": [MockFunction], - "getEmbeddableFactory": [MockFunction], - "registerEmbeddableFactory": [MockFunction], - }, - "expressions": Object { - "ExpressionLoader": [MockFunction], - "ExpressionRenderHandler": [MockFunction], - "ReactExpressionRenderer": [MockFunction], - "execute": [MockFunction], - "fork": [MockFunction], - "getFunction": [MockFunction], - "getFunctions": [MockFunction], - "getRenderer": [MockFunction], - "getRenderers": [MockFunction], - "getType": [MockFunction], - "getTypes": [MockFunction], - "loader": [MockFunction], - "render": [MockFunction], - "run": [MockFunction], - }, - "inspector": Object { - "isAvailable": [MockFunction], - "open": [MockFunction], - }, - "kibanaLegacy": Object { - "config": Object { - "defaultAppId": "home", - }, - "dashboardConfig": Object { - "getHideWriteControls": [MockFunction], - "turnHideWriteControlsOn": [MockFunction], - }, - "getApps": [MockFunction], - "getForwards": [MockFunction], - }, - "management": Object { - "legacy": Object {}, - "sections": Object { - "getAllSections": [MockFunction], - "getSection": [MockFunction], - "navigateToApp": [MockFunction], - }, - }, - "navigation": Object { - "ui": Object { - "TopNavMenu": [MockFunction], - }, - }, - "uiActions": Object { - "attachAction": [MockFunction], - "clear": [MockFunction], - "detachAction": [MockFunction], - "executeTriggerActions": [MockFunction], - "fork": [MockFunction], - "getTrigger": [MockFunction], - "getTriggerActions": [MockFunction], - "getTriggerCompatibleActions": [MockFunction], - "registerAction": [MockFunction], - "registerTrigger": [MockFunction], - }, - "uiMetric": Object { - "createUiStatsReporter": [Function], - }, - "xsrfToken": "kbn-xsrf-token", - }, - } - } - > - <Component - onChange={[Function]} - searchItems={Object {}} - /> - </ContextProvider> - </HashRouter> - </mockConstructor> -</AuthorizationProvider> +<div> + <ContextProvider + value={ + Object { + "initialized": false, + } + } + > + <Component + onChange={[Function]} + /> + </ContextProvider> +</div> `; diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_summary.test.tsx.snap b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_summary.test.tsx.snap index 4955a0a95b7e92..b18233e5c53e31 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_summary.test.tsx.snap +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/__snapshots__/step_define_summary.test.tsx.snap @@ -1,99 +1,42 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`Transform: <DefinePivotSummary /> Minimal initialization 1`] = ` -<EuiFlexGroup> - <EuiFlexItem - grow={false} - style={ +<div> + <ContextProvider + value={ Object { - "minWidth": "420px", + "initialized": false, } } > - <div - data-test-subj="transformStepDefineSummary" - > - <EuiForm> - <EuiFormRow - describedByIds={Array []} - display="row" - fullWidth={false} - hasChildLabel={true} - hasEmptyLabelSpace={false} - label="Group by" - labelType="label" - > - <GroupByListSummary - list={ - Object { - "the-group-by-name": Object { - "agg": "terms", - "aggName": "the-group-by-agg-name", - "dropDownName": "the-group-by-drop-down-name", - "field": "the-group-by-field", - }, - } - } - /> - </EuiFormRow> - <EuiFormRow - describedByIds={Array []} - display="row" - fullWidth={false} - hasChildLabel={true} - hasEmptyLabelSpace={false} - label="Aggregations" - labelType="label" - > - <AggListSummary - list={ - Object { - "the-agg-name": Object { - "agg": "avg", - "aggName": "the-group-by-agg-name", - "dropDownName": "the-group-by-drop-down-name", - "field": "the-agg-field", - }, - } - } - /> - </EuiFormRow> - </EuiForm> - </div> - </EuiFlexItem> - <EuiFlexItem> - <EuiText> - <Component - aggs={ - Object { - "the-agg-name": Object { - "agg": "avg", - "aggName": "the-group-by-agg-name", - "dropDownName": "the-group-by-drop-down-name", - "field": "the-agg-field", - }, - } + <StepDefineSummary + aggList={ + Object { + "the-agg-name": Object { + "agg": "avg", + "aggName": "the-group-by-agg-name", + "dropDownName": "the-group-by-drop-down-name", + "field": "the-agg-field", + }, } - groupBy={ - Object { - "the-group-by-name": Object { - "agg": "terms", - "aggName": "the-group-by-agg-name", - "dropDownName": "the-group-by-drop-down-name", - "field": "the-group-by-field", - }, - } - } - query={ - Object { - "query_string": Object { - "default_operator": "AND", - "query": "the-search-query", - }, - } + } + groupByList={ + Object { + "the-group-by-name": Object { + "agg": "terms", + "aggName": "the-group-by-agg-name", + "dropDownName": "the-group-by-drop-down-name", + "field": "the-group-by-field", + }, } - /> - </EuiText> - </EuiFlexItem> -</EuiFlexGroup> + } + isAdvancedPivotEditorEnabled={false} + isAdvancedSourceEditorEnabled={false} + searchQuery="the-search-query" + searchString="the-query" + sourceConfigUpdated={false} + valid={true} + /> + </ContextProvider> +</div> `; diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.test.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.test.tsx index 6b49a305e515b0..2ac4295da1eedc 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.test.tsx @@ -7,8 +7,8 @@ import { shallow } from 'enzyme'; import React from 'react'; -import { createPublicShim } from '../../../../../shim'; -import { getAppProviders } from '../../../../app_dependencies'; +import { KibanaContext } from '../../../../lib/kibana'; + import { getPivotQuery, PivotAggsConfig, @@ -16,7 +16,6 @@ import { PIVOT_SUPPORTED_AGGS, PIVOT_SUPPORTED_GROUP_BY_AGGS, } from '../../../../common'; -import { SearchItems } from '../../../../hooks/use_search_items'; import { PivotPreview } from './pivot_preview'; @@ -26,7 +25,6 @@ jest.mock('react', () => { return { ...r, memo: (x: any) => x }; }); -jest.mock('ui/new_platform'); jest.mock('../../../../../shared_imports'); describe('Transform: <PivotPreview />', () => { @@ -46,18 +44,17 @@ describe('Transform: <PivotPreview />', () => { const props = { aggs: { 'the-agg-name': agg }, groupBy: { 'the-group-by-name': groupBy }, - indexPattern: { - title: 'the-index-pattern-title', - fields: [] as any[], - } as SearchItems['indexPattern'], query: getPivotQuery('the-query'), }; - const Providers = getAppProviders(createPublicShim()); + // Using a wrapping <div> element because shallow() would fail + // with the Provider being the outer most component. const wrapper = shallow( - <Providers> - <PivotPreview {...props} /> - </Providers> + <div> + <KibanaContext.Provider value={{ initialized: false }}> + <PivotPreview {...props} /> + </KibanaContext.Provider> + </div> ); expect(wrapper).toMatchSnapshot(); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.tsx index 9b32bbbae839e4..b755956eae24e5 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/pivot_preview.tsx @@ -24,6 +24,8 @@ import { import { dictionaryToArray } from '../../../../../../common/types/common'; import { getNestedProperty } from '../../../../../../common/utils/object_utils'; +import { useCurrentIndexPattern } from '../../../../lib/kibana'; + import { euiDataGridStyle, euiDataGridToolbarSettings, @@ -34,7 +36,6 @@ import { PivotGroupByConfigDict, PivotQuery, } from '../../../../common'; -import { SearchItems } from '../../../../hooks/use_search_items'; import { getPivotPreviewDevConsoleStatement, multiColumnSortFactory } from './common'; import { PIVOT_PREVIEW_STATUS, usePivotPreviewData } from './use_pivot_preview_data'; @@ -102,186 +103,184 @@ const ErrorMessage: FC<ErrorMessageProps> = ({ message }) => ( interface PivotPreviewProps { aggs: PivotAggsConfigDict; groupBy: PivotGroupByConfigDict; - indexPattern: SearchItems['indexPattern']; query: PivotQuery; } const defaultPagination = { pageIndex: 0, pageSize: 5 }; -export const PivotPreview: FC<PivotPreviewProps> = React.memo( - ({ aggs, groupBy, indexPattern, query }) => { - const { - previewData: data, - previewMappings, - errorMessage, - previewRequest, - status, - } = usePivotPreviewData(indexPattern, query, aggs, groupBy); - const groupByArr = dictionaryToArray(groupBy); - - // Filters mapping properties of type `object`, which get returned for nested field parents. - const columnKeys = Object.keys(previewMappings.properties).filter( - key => previewMappings.properties[key].type !== 'object' - ); - columnKeys.sort(sortColumns(groupByArr)); - - // Column visibility - const [visibleColumns, setVisibleColumns] = useState<EsFieldName[]>(columnKeys); - - useEffect(() => { - setVisibleColumns(columnKeys); - // eslint-disable-next-line react-hooks/exhaustive-deps - }, [JSON.stringify(columnKeys)]); - - const [pagination, setPagination] = useState(defaultPagination); - - // Reset pagination if data changes. This is to avoid ending up with an empty table - // when for example the user selected a page that is not available with the updated data. - useEffect(() => { - setPagination(defaultPagination); - }, [data.length]); - - // EuiDataGrid State - const dataGridColumns = columnKeys.map(id => ({ id })); - - const onChangeItemsPerPage = useCallback( - pageSize => { - setPagination(p => { - const pageIndex = Math.floor((p.pageSize * p.pageIndex) / pageSize); - return { pageIndex, pageSize }; - }); - }, - [setPagination] - ); +export const PivotPreview: FC<PivotPreviewProps> = React.memo(({ aggs, groupBy, query }) => { + const indexPattern = useCurrentIndexPattern(); + + const { + previewData: data, + previewMappings, + errorMessage, + previewRequest, + status, + } = usePivotPreviewData(indexPattern, query, aggs, groupBy); + const groupByArr = dictionaryToArray(groupBy); + + // Filters mapping properties of type `object`, which get returned for nested field parents. + const columnKeys = Object.keys(previewMappings.properties).filter( + key => previewMappings.properties[key].type !== 'object' + ); + columnKeys.sort(sortColumns(groupByArr)); + + // Column visibility + const [visibleColumns, setVisibleColumns] = useState<EsFieldName[]>(columnKeys); + + useEffect(() => { + setVisibleColumns(columnKeys); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [JSON.stringify(columnKeys)]); + + const [pagination, setPagination] = useState(defaultPagination); + + // Reset pagination if data changes. This is to avoid ending up with an empty table + // when for example the user selected a page that is not available with the updated data. + useEffect(() => { + setPagination(defaultPagination); + }, [data.length]); + + // EuiDataGrid State + const dataGridColumns = columnKeys.map(id => ({ id })); + + const onChangeItemsPerPage = useCallback( + pageSize => { + setPagination(p => { + const pageIndex = Math.floor((p.pageSize * p.pageIndex) / pageSize); + return { pageIndex, pageSize }; + }); + }, + [setPagination] + ); - const onChangePage = useCallback(pageIndex => setPagination(p => ({ ...p, pageIndex })), [ - setPagination, - ]); + const onChangePage = useCallback(pageIndex => setPagination(p => ({ ...p, pageIndex })), [ + setPagination, + ]); - // Sorting config - const [sortingColumns, setSortingColumns] = useState<EuiDataGridSorting['columns']>([]); - const onSort = useCallback(sc => setSortingColumns(sc), [setSortingColumns]); + // Sorting config + const [sortingColumns, setSortingColumns] = useState<EuiDataGridSorting['columns']>([]); + const onSort = useCallback(sc => setSortingColumns(sc), [setSortingColumns]); - if (sortingColumns.length > 0) { - data.sort(multiColumnSortFactory(sortingColumns)); - } + if (sortingColumns.length > 0) { + data.sort(multiColumnSortFactory(sortingColumns)); + } - const pageData = data.slice( - pagination.pageIndex * pagination.pageSize, - (pagination.pageIndex + 1) * pagination.pageSize - ); + const pageData = data.slice( + pagination.pageIndex * pagination.pageSize, + (pagination.pageIndex + 1) * pagination.pageSize + ); - const renderCellValue = useMemo(() => { - return ({ - rowIndex, - columnId, - setCellProps, - }: { - rowIndex: number; - columnId: string; - setCellProps: any; - }) => { - const adjustedRowIndex = rowIndex - pagination.pageIndex * pagination.pageSize; - - const cellValue = pageData.hasOwnProperty(adjustedRowIndex) - ? getNestedProperty(pageData[adjustedRowIndex], columnId, null) - : null; - - if (typeof cellValue === 'object' && cellValue !== null) { - return JSON.stringify(cellValue); - } + const renderCellValue = useMemo(() => { + return ({ + rowIndex, + columnId, + setCellProps, + }: { + rowIndex: number; + columnId: string; + setCellProps: any; + }) => { + const adjustedRowIndex = rowIndex - pagination.pageIndex * pagination.pageSize; + + const cellValue = pageData.hasOwnProperty(adjustedRowIndex) + ? getNestedProperty(pageData[adjustedRowIndex], columnId, null) + : null; + + if (typeof cellValue === 'object' && cellValue !== null) { + return JSON.stringify(cellValue); + } - if (cellValue === undefined) { - return null; - } + if (cellValue === undefined) { + return null; + } - return cellValue; - }; - }, [pageData, pagination.pageIndex, pagination.pageSize]); - - if (status === PIVOT_PREVIEW_STATUS.ERROR) { - return ( - <div data-test-subj="transformPivotPreview error"> - <PreviewTitle previewRequest={previewRequest} /> - <EuiCallOut - title={i18n.translate('xpack.transform.pivotPreview.PivotPreviewError', { - defaultMessage: 'An error occurred loading the pivot preview.', - })} - color="danger" - iconType="cross" - > - <ErrorMessage message={errorMessage} /> - </EuiCallOut> - </div> - ); - } + return cellValue; + }; + }, [pageData, pagination.pageIndex, pagination.pageSize]); - if (data.length === 0) { - let noDataMessage = i18n.translate( - 'xpack.transform.pivotPreview.PivotPreviewNoDataCalloutBody', - { - defaultMessage: - 'The preview request did not return any data. Please ensure the optional query returns data and that values exist for the field used by group-by and aggregation fields.', - } - ); + if (status === PIVOT_PREVIEW_STATUS.ERROR) { + return ( + <div data-test-subj="transformPivotPreview error"> + <PreviewTitle previewRequest={previewRequest} /> + <EuiCallOut + title={i18n.translate('xpack.transform.pivotPreview.PivotPreviewError', { + defaultMessage: 'An error occurred loading the pivot preview.', + })} + color="danger" + iconType="cross" + > + <ErrorMessage message={errorMessage} /> + </EuiCallOut> + </div> + ); + } - const aggsArr = dictionaryToArray(aggs); - if (aggsArr.length === 0 || groupByArr.length === 0) { - noDataMessage = i18n.translate( - 'xpack.transform.pivotPreview.PivotPreviewIncompleteConfigCalloutBody', - { - defaultMessage: 'Please choose at least one group-by field and aggregation.', - } - ); + if (data.length === 0) { + let noDataMessage = i18n.translate( + 'xpack.transform.pivotPreview.PivotPreviewNoDataCalloutBody', + { + defaultMessage: + 'The preview request did not return any data. Please ensure the optional query returns data and that values exist for the field used by group-by and aggregation fields.', } + ); - return ( - <div data-test-subj="transformPivotPreview empty"> - <PreviewTitle previewRequest={previewRequest} /> - <EuiCallOut - title={i18n.translate('xpack.transform.pivotPreview.PivotPreviewNoDataCalloutTitle', { - defaultMessage: 'Pivot preview not available', - })} - color="primary" - > - <p>{noDataMessage}</p> - </EuiCallOut> - </div> + const aggsArr = dictionaryToArray(aggs); + if (aggsArr.length === 0 || groupByArr.length === 0) { + noDataMessage = i18n.translate( + 'xpack.transform.pivotPreview.PivotPreviewIncompleteConfigCalloutBody', + { + defaultMessage: 'Please choose at least one group-by field and aggregation.', + } ); } - - if (columnKeys.length === 0) { - return null; - } - return ( - <div data-test-subj="transformPivotPreview loaded"> + <div data-test-subj="transformPivotPreview empty"> <PreviewTitle previewRequest={previewRequest} /> - <div className="transform__progress"> - {status === PIVOT_PREVIEW_STATUS.LOADING && <EuiProgress size="xs" color="accent" />} - {status !== PIVOT_PREVIEW_STATUS.LOADING && ( - <EuiProgress size="xs" color="accent" max={1} value={0} /> - )} - </div> - {dataGridColumns.length > 0 && data.length > 0 && ( - <EuiDataGrid - aria-label="Source index preview" - columns={dataGridColumns} - columnVisibility={{ visibleColumns, setVisibleColumns }} - gridStyle={euiDataGridStyle} - rowCount={data.length} - renderCellValue={renderCellValue} - sorting={{ columns: sortingColumns, onSort }} - toolbarVisibility={euiDataGridToolbarSettings} - pagination={{ - ...pagination, - pageSizeOptions: [5, 10, 25], - onChangeItemsPerPage, - onChangePage, - }} - /> - )} + <EuiCallOut + title={i18n.translate('xpack.transform.pivotPreview.PivotPreviewNoDataCalloutTitle', { + defaultMessage: 'Pivot preview not available', + })} + color="primary" + > + <p>{noDataMessage}</p> + </EuiCallOut> </div> ); } -); + + if (columnKeys.length === 0) { + return null; + } + + return ( + <div data-test-subj="transformPivotPreview loaded"> + <PreviewTitle previewRequest={previewRequest} /> + <div className="transform__progress"> + {status === PIVOT_PREVIEW_STATUS.LOADING && <EuiProgress size="xs" color="accent" />} + {status !== PIVOT_PREVIEW_STATUS.LOADING && ( + <EuiProgress size="xs" color="accent" max={1} value={0} /> + )} + </div> + {dataGridColumns.length > 0 && data.length > 0 && ( + <EuiDataGrid + aria-label="Source index preview" + columns={dataGridColumns} + columnVisibility={{ visibleColumns, setVisibleColumns }} + gridStyle={euiDataGridStyle} + rowCount={data.length} + renderCellValue={renderCellValue} + sorting={{ columns: sortingColumns, onSort }} + toolbarVisibility={euiDataGridToolbarSettings} + pagination={{ + ...pagination, + pageSizeOptions: [5, 10, 25], + onChangeItemsPerPage, + onChangePage, + }} + /> + )} + </div> + ); +}); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.test.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.test.tsx index f31af733fa3ee4..44edd1340e8d68 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.test.tsx @@ -7,16 +7,14 @@ import { shallow } from 'enzyme'; import React from 'react'; -import { createPublicShim } from '../../../../../shim'; -import { getAppProviders } from '../../../../app_dependencies'; +import { KibanaContext } from '../../../../lib/kibana'; + import { PivotAggsConfigDict, PivotGroupByConfigDict, PIVOT_SUPPORTED_AGGS, PIVOT_SUPPORTED_GROUP_BY_AGGS, } from '../../../../common'; -import { SearchItems } from '../../../../hooks/use_search_items'; - import { StepDefineForm, getAggNameConflictToastMessages } from './step_define_form'; // workaround to make React.memo() work with enzyme @@ -25,16 +23,18 @@ jest.mock('react', () => { return { ...r, memo: (x: any) => x }; }); -jest.mock('ui/new_platform'); jest.mock('../../../../../shared_imports'); describe('Transform: <DefinePivotForm />', () => { test('Minimal initialization', () => { - const Providers = getAppProviders(createPublicShim()); + // Using a wrapping <div> element because shallow() would fail + // with the Provider being the outer most component. const wrapper = shallow( - <Providers> - <StepDefineForm onChange={() => {}} searchItems={{} as SearchItems} /> - </Providers> + <div> + <KibanaContext.Provider value={{ initialized: false }}> + <StepDefineForm onChange={() => {}} /> + </KibanaContext.Provider> + </div> ); expect(wrapper).toMatchSnapshot(); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx index f61f54c38680ef..9b96e4b1ee7585 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_form.tsx @@ -26,7 +26,6 @@ import { EuiSwitch, } from '@elastic/eui'; -import { SavedSearchQuery, SearchItems } from '../../../../hooks/use_search_items'; import { useXJsonMode, xJsonMode } from '../../../../hooks/use_x_json_mode'; import { useDocumentationLinks, useToastNotifications } from '../../../../app_dependencies'; import { TransformPivotConfig } from '../../../../common'; @@ -39,6 +38,12 @@ import { PivotPreview } from './pivot_preview'; import { KqlFilterBar } from '../../../../../shared_imports'; import { SwitchModal } from './switch_modal'; +import { + useKibanaContext, + InitializedKibanaContextValue, + SavedSearchQuery, +} from '../../../../lib/kibana'; + import { getPivotQuery, getPreviewRequestBody, @@ -73,14 +78,18 @@ export interface StepDefineExposedState { const defaultSearch = '*'; const emptySearch = ''; -export function getDefaultStepDefineState(searchItems: SearchItems): StepDefineExposedState { +export function getDefaultStepDefineState( + kibanaContext: InitializedKibanaContextValue +): StepDefineExposedState { return { aggList: {} as PivotAggsConfigDict, groupByList: {} as PivotGroupByConfigDict, isAdvancedPivotEditorEnabled: false, isAdvancedSourceEditorEnabled: false, - searchString: searchItems.savedSearch !== undefined ? searchItems.combinedQuery : defaultSearch, - searchQuery: searchItems.savedSearch !== undefined ? searchItems.combinedQuery : defaultSearch, + searchString: + kibanaContext.currentSavedSearch !== undefined ? kibanaContext.combinedQuery : defaultSearch, + searchQuery: + kibanaContext.currentSavedSearch !== undefined ? kibanaContext.combinedQuery : defaultSearch, sourceConfigUpdated: false, valid: false, }; @@ -233,14 +242,14 @@ export function getAggNameConflictToastMessages( interface Props { overrides?: StepDefineExposedState; onChange(s: StepDefineExposedState): void; - searchItems: SearchItems; } -export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange, searchItems }) => { +export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange }) => { + const kibanaContext = useKibanaContext(); const toastNotifications = useToastNotifications(); const { esQueryDsl, esTransformPivot } = useDocumentationLinks(); - const defaults = { ...getDefaultStepDefineState(searchItems), ...overrides }; + const defaults = { ...getDefaultStepDefineState(kibanaContext), ...overrides }; // The search filter const [searchString, setSearchString] = useState(defaults.searchString); @@ -258,7 +267,7 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange, // The list of selected group by fields const [groupByList, setGroupByList] = useState(defaults.groupByList); - const { indexPattern } = searchItems; + const indexPattern = kibanaContext.currentIndexPattern; const { groupByOptions, @@ -559,7 +568,7 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange, <EuiFlexItem grow={false} className="transform__stepDefineFormLeftColumn"> <div data-test-subj="transformStepDefineForm"> <EuiForm> - {searchItems.savedSearch === undefined && typeof searchString === 'string' && ( + {kibanaContext.currentSavedSearch === undefined && typeof searchString === 'string' && ( <Fragment> <EuiFormRow label={i18n.translate('xpack.transform.stepDefineForm.indexPatternLabel', { @@ -660,7 +669,7 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange, </EuiFormRow> </Fragment> )} - {searchItems.savedSearch === undefined && ( + {kibanaContext.currentSavedSearch === undefined && ( <EuiFormRow> <EuiFlexGroup gutterSize="none"> <EuiFlexItem> @@ -711,15 +720,16 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange, </EuiFlexGroup> </EuiFormRow> )} - {searchItems.savedSearch !== undefined && searchItems.savedSearch.id !== undefined && ( - <EuiFormRow - label={i18n.translate('xpack.transform.stepDefineForm.savedSearchLabel', { - defaultMessage: 'Saved search', - })} - > - <span>{searchItems.savedSearch.title}</span> - </EuiFormRow> - )} + {kibanaContext.currentSavedSearch !== undefined && + kibanaContext.currentSavedSearch.id !== undefined && ( + <EuiFormRow + label={i18n.translate('xpack.transform.stepDefineForm.savedSearchLabel', { + defaultMessage: 'Saved search', + })} + > + <span>{kibanaContext.currentSavedSearch.title}</span> + </EuiFormRow> + )} {!isAdvancedPivotEditorEnabled && ( <Fragment> @@ -893,14 +903,9 @@ export const StepDefineForm: FC<Props> = React.memo(({ overrides = {}, onChange, </EuiFlexItem> <EuiFlexItem grow={false} style={{ maxWidth: 'calc(100% - 468px)' }}> - <SourceIndexPreview indexPattern={searchItems.indexPattern} query={pivotQuery} /> + <SourceIndexPreview query={pivotQuery} /> <EuiHorizontalRule /> - <PivotPreview - aggs={aggList} - groupBy={groupByList} - indexPattern={searchItems.indexPattern} - query={pivotQuery} - /> + <PivotPreview aggs={aggList} groupBy={groupByList} query={pivotQuery} /> </EuiFlexItem> </EuiFlexGroup> ); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.test.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.test.tsx index e3a9830ea1904f..78f6fc30f91911 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.test.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.test.tsx @@ -7,14 +7,14 @@ import { shallow } from 'enzyme'; import React from 'react'; +import { KibanaContext } from '../../../../lib/kibana'; + import { PivotAggsConfig, PivotGroupByConfig, PIVOT_SUPPORTED_AGGS, PIVOT_SUPPORTED_GROUP_BY_AGGS, } from '../../../../common'; -import { SearchItems } from '../../../../hooks/use_search_items'; - import { StepDefineExposedState } from './step_define_form'; import { StepDefineSummary } from './step_define_summary'; @@ -40,7 +40,7 @@ describe('Transform: <DefinePivotSummary />', () => { aggName: 'the-group-by-agg-name', dropDownName: 'the-group-by-drop-down-name', }; - const formState: StepDefineExposedState = { + const props: StepDefineExposedState = { aggList: { 'the-agg-name': agg }, groupByList: { 'the-group-by-name': groupBy }, isAdvancedPivotEditorEnabled: false, @@ -51,8 +51,14 @@ describe('Transform: <DefinePivotSummary />', () => { valid: true, }; + // Using a wrapping <div> element because shallow() would fail + // with the Provider being the outer most component. const wrapper = shallow( - <StepDefineSummary formState={formState} searchItems={{} as SearchItems} /> + <div> + <KibanaContext.Provider value={{ initialized: false }}> + <StepDefineSummary {...props} /> + </KibanaContext.Provider> + </div> ); expect(wrapper).toMatchSnapshot(); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.tsx index f8fb9db9bd6868..30c447f62c7600 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_define/step_define_summary.tsx @@ -17,27 +17,26 @@ import { EuiText, } from '@elastic/eui'; -import { getPivotQuery } from '../../../../common'; -import { SearchItems } from '../../../../hooks/use_search_items'; +import { useKibanaContext } from '../../../../lib/kibana'; import { AggListSummary } from '../aggregation_list'; import { GroupByListSummary } from '../group_by_list'; - import { PivotPreview } from './pivot_preview'; + +import { getPivotQuery } from '../../../../common'; import { StepDefineExposedState } from './step_define_form'; const defaultSearch = '*'; const emptySearch = ''; -interface Props { - formState: StepDefineExposedState; - searchItems: SearchItems; -} - -export const StepDefineSummary: FC<Props> = ({ - formState: { searchString, searchQuery, groupByList, aggList }, - searchItems, +export const StepDefineSummary: FC<StepDefineExposedState> = ({ + searchString, + searchQuery, + groupByList, + aggList, }) => { + const kibanaContext = useKibanaContext(); + const pivotQuery = getPivotQuery(searchQuery); let useCodeBlock = false; let displaySearch; @@ -56,8 +55,8 @@ export const StepDefineSummary: FC<Props> = ({ <EuiFlexItem grow={false} style={{ minWidth: '420px' }}> <div data-test-subj="transformStepDefineSummary"> <EuiForm> - {searchItems.savedSearch !== undefined && - searchItems.savedSearch.id === undefined && + {kibanaContext.currentSavedSearch !== undefined && + kibanaContext.currentSavedSearch.id === undefined && typeof searchString === 'string' && ( <Fragment> <EuiFormRow @@ -65,7 +64,7 @@ export const StepDefineSummary: FC<Props> = ({ defaultMessage: 'Index pattern', })} > - <span>{searchItems.indexPattern.title}</span> + <span>{kibanaContext.currentIndexPattern.title}</span> </EuiFormRow> {useCodeBlock === false && displaySearch !== emptySearch && ( <EuiFormRow @@ -100,15 +99,16 @@ export const StepDefineSummary: FC<Props> = ({ </Fragment> )} - {searchItems.savedSearch !== undefined && searchItems.savedSearch.id !== undefined && ( - <EuiFormRow - label={i18n.translate('xpack.transform.stepDefineSummary.savedSearchLabel', { - defaultMessage: 'Saved search', - })} - > - <span>{searchItems.savedSearch.title}</span> - </EuiFormRow> - )} + {kibanaContext.currentSavedSearch !== undefined && + kibanaContext.currentSavedSearch.id !== undefined && ( + <EuiFormRow + label={i18n.translate('xpack.transform.stepDefineSummary.savedSearchLabel', { + defaultMessage: 'Saved search', + })} + > + <span>{kibanaContext.currentSavedSearch.title}</span> + </EuiFormRow> + )} <EuiFormRow label={i18n.translate('xpack.transform.stepDefineSummary.groupByLabel', { @@ -131,12 +131,7 @@ export const StepDefineSummary: FC<Props> = ({ <EuiFlexItem> <EuiText> - <PivotPreview - aggs={aggList} - groupBy={groupByList} - indexPattern={searchItems.indexPattern} - query={pivotQuery} - /> + <PivotPreview aggs={aggList} groupBy={groupByList} query={pivotQuery} /> </EuiText> </EuiFlexItem> </EuiFlexGroup> diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_details/step_details_form.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_details/step_details_form.tsx index ea9483af49302f..5ae2180bfe7790 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_details/step_details_form.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/step_details/step_details_form.tsx @@ -11,15 +11,11 @@ import { i18n } from '@kbn/i18n'; import { EuiLink, EuiSwitch, EuiFieldText, EuiForm, EuiFormRow, EuiSelect } from '@elastic/eui'; import { toMountPoint } from '../../../../../../../../../../src/plugins/kibana_react/public'; +import { useKibanaContext } from '../../../../lib/kibana'; import { isValidIndexName } from '../../../../../../common/utils/es_utils'; -import { - useAppDependencies, - useDocumentationLinks, - useToastNotifications, -} from '../../../../app_dependencies'; +import { useDocumentationLinks, useToastNotifications } from '../../../../app_dependencies'; import { ToastNotificationText } from '../../../../components'; -import { SearchItems } from '../../../../hooks/use_search_items'; import { useApi } from '../../../../hooks/use_api'; import { isTransformIdValid, TransformId, TransformPivotConfig } from '../../../../common'; @@ -71,129 +67,109 @@ export function applyTransformConfigToDetailsState( interface Props { overrides?: StepDetailsExposedState; onChange(s: StepDetailsExposedState): void; - searchItems: SearchItems; } -export const StepDetailsForm: FC<Props> = React.memo( - ({ overrides = {}, onChange, searchItems }) => { - const deps = useAppDependencies(); - const toastNotifications = useToastNotifications(); - const { esIndicesCreateIndex } = useDocumentationLinks(); +export const StepDetailsForm: FC<Props> = React.memo(({ overrides = {}, onChange }) => { + const kibanaContext = useKibanaContext(); + const toastNotifications = useToastNotifications(); + const { esIndicesCreateIndex } = useDocumentationLinks(); - const defaults = { ...getDefaultStepDetailsState(), ...overrides }; + const defaults = { ...getDefaultStepDetailsState(), ...overrides }; - const [transformId, setTransformId] = useState<TransformId>(defaults.transformId); - const [transformDescription, setTransformDescription] = useState<string>( - defaults.transformDescription - ); - const [destinationIndex, setDestinationIndex] = useState<EsIndexName>( - defaults.destinationIndex - ); - const [transformIds, setTransformIds] = useState<TransformId[]>([]); - const [indexNames, setIndexNames] = useState<EsIndexName[]>([]); - const [indexPatternTitles, setIndexPatternTitles] = useState<IndexPatternTitle[]>([]); - const [createIndexPattern, setCreateIndexPattern] = useState(defaults.createIndexPattern); + const [transformId, setTransformId] = useState<TransformId>(defaults.transformId); + const [transformDescription, setTransformDescription] = useState<string>( + defaults.transformDescription + ); + const [destinationIndex, setDestinationIndex] = useState<EsIndexName>(defaults.destinationIndex); + const [transformIds, setTransformIds] = useState<TransformId[]>([]); + const [indexNames, setIndexNames] = useState<EsIndexName[]>([]); + const [indexPatternTitles, setIndexPatternTitles] = useState<IndexPatternTitle[]>([]); + const [createIndexPattern, setCreateIndexPattern] = useState(defaults.createIndexPattern); - // Continuous mode state - const [isContinuousModeEnabled, setContinuousModeEnabled] = useState( - defaults.isContinuousModeEnabled - ); + // Continuous mode state + const [isContinuousModeEnabled, setContinuousModeEnabled] = useState( + defaults.isContinuousModeEnabled + ); - const api = useApi(); + const api = useApi(); - // fetch existing transform IDs and indices once for form validation - useEffect(() => { - // use an IIFE to avoid returning a Promise to useEffect. - (async function() { - try { - setTransformIds( - (await api.getTransforms()).transforms.map( - (transform: TransformPivotConfig) => transform.id - ) - ); - } catch (e) { - toastNotifications.addDanger({ - title: i18n.translate('xpack.transform.stepDetailsForm.errorGettingTransformList', { - defaultMessage: 'An error occurred getting the existing transform IDs:', - }), - text: toMountPoint(<ToastNotificationText text={e} />), - }); - } + // fetch existing transform IDs and indices once for form validation + useEffect(() => { + // use an IIFE to avoid returning a Promise to useEffect. + (async function() { + try { + setTransformIds( + (await api.getTransforms()).transforms.map( + (transform: TransformPivotConfig) => transform.id + ) + ); + } catch (e) { + toastNotifications.addDanger({ + title: i18n.translate('xpack.transform.stepDetailsForm.errorGettingTransformList', { + defaultMessage: 'An error occurred getting the existing transform IDs:', + }), + text: toMountPoint(<ToastNotificationText text={e} />), + }); + } - try { - setIndexNames((await api.getIndices()).map(index => index.name)); - } catch (e) { - toastNotifications.addDanger({ - title: i18n.translate('xpack.transform.stepDetailsForm.errorGettingIndexNames', { - defaultMessage: 'An error occurred getting the existing index names:', - }), - text: toMountPoint(<ToastNotificationText text={e} />), - }); - } + try { + setIndexNames((await api.getIndices()).map(index => index.name)); + } catch (e) { + toastNotifications.addDanger({ + title: i18n.translate('xpack.transform.stepDetailsForm.errorGettingIndexNames', { + defaultMessage: 'An error occurred getting the existing index names:', + }), + text: toMountPoint(<ToastNotificationText text={e} />), + }); + } - try { - setIndexPatternTitles(await deps.plugins.data.indexPatterns.getTitles()); - } catch (e) { - toastNotifications.addDanger({ - title: i18n.translate( - 'xpack.transform.stepDetailsForm.errorGettingIndexPatternTitles', - { - defaultMessage: 'An error occurred getting the existing index pattern titles:', - } - ), - text: toMountPoint(<ToastNotificationText text={e} />), - }); - } - })(); - // run once - // eslint-disable-next-line react-hooks/exhaustive-deps - }, []); + try { + setIndexPatternTitles(await kibanaContext.indexPatterns.getTitles()); + } catch (e) { + toastNotifications.addDanger({ + title: i18n.translate('xpack.transform.stepDetailsForm.errorGettingIndexPatternTitles', { + defaultMessage: 'An error occurred getting the existing index pattern titles:', + }), + text: toMountPoint(<ToastNotificationText text={e} />), + }); + } + })(); + // custom comparison + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [kibanaContext.initialized]); - const dateFieldNames = searchItems.indexPattern.fields - .filter(f => f.type === 'date') - .map(f => f.name) - .sort(); - const isContinuousModeAvailable = dateFieldNames.length > 0; - const [continuousModeDateField, setContinuousModeDateField] = useState( - isContinuousModeAvailable ? dateFieldNames[0] : '' - ); - const [continuousModeDelay, setContinuousModeDelay] = useState(defaults.continuousModeDelay); - const isContinuousModeDelayValid = delayValidator(continuousModeDelay); + const dateFieldNames = kibanaContext.currentIndexPattern.fields + .filter(f => f.type === 'date') + .map(f => f.name) + .sort(); + const isContinuousModeAvailable = dateFieldNames.length > 0; + const [continuousModeDateField, setContinuousModeDateField] = useState( + isContinuousModeAvailable ? dateFieldNames[0] : '' + ); + const [continuousModeDelay, setContinuousModeDelay] = useState(defaults.continuousModeDelay); + const isContinuousModeDelayValid = delayValidator(continuousModeDelay); - const transformIdExists = transformIds.some(id => transformId === id); - const transformIdEmpty = transformId === ''; - const transformIdValid = isTransformIdValid(transformId); + const transformIdExists = transformIds.some(id => transformId === id); + const transformIdEmpty = transformId === ''; + const transformIdValid = isTransformIdValid(transformId); - const indexNameExists = indexNames.some(name => destinationIndex === name); - const indexNameEmpty = destinationIndex === ''; - const indexNameValid = isValidIndexName(destinationIndex); - const indexPatternTitleExists = indexPatternTitles.some(name => destinationIndex === name); + const indexNameExists = indexNames.some(name => destinationIndex === name); + const indexNameEmpty = destinationIndex === ''; + const indexNameValid = isValidIndexName(destinationIndex); + const indexPatternTitleExists = indexPatternTitles.some(name => destinationIndex === name); - const valid = - !transformIdEmpty && - transformIdValid && - !transformIdExists && - !indexNameEmpty && - indexNameValid && - (!indexPatternTitleExists || !createIndexPattern) && - (!isContinuousModeAvailable || (isContinuousModeAvailable && isContinuousModeDelayValid)); + const valid = + !transformIdEmpty && + transformIdValid && + !transformIdExists && + !indexNameEmpty && + indexNameValid && + (!indexPatternTitleExists || !createIndexPattern) && + (!isContinuousModeAvailable || (isContinuousModeAvailable && isContinuousModeDelayValid)); - // expose state to wizard - useEffect(() => { - onChange({ - continuousModeDateField, - continuousModeDelay, - createIndexPattern, - isContinuousModeEnabled, - transformId, - transformDescription, - destinationIndex, - touched: true, - valid, - }); - // custom comparison - /* eslint-disable react-hooks/exhaustive-deps */ - }, [ + // expose state to wizard + useEffect(() => { + onChange({ continuousModeDateField, continuousModeDelay, createIndexPattern, @@ -201,223 +177,232 @@ export const StepDetailsForm: FC<Props> = React.memo( transformId, transformDescription, destinationIndex, + touched: true, valid, - /* eslint-enable react-hooks/exhaustive-deps */ - ]); + }); + // custom comparison + /* eslint-disable react-hooks/exhaustive-deps */ + }, [ + continuousModeDateField, + continuousModeDelay, + createIndexPattern, + isContinuousModeEnabled, + transformId, + transformDescription, + destinationIndex, + valid, + /* eslint-enable react-hooks/exhaustive-deps */ + ]); - return ( - <div data-test-subj="transformStepDetailsForm"> - <EuiForm> - <EuiFormRow - label={i18n.translate('xpack.transform.stepDetailsForm.transformIdLabel', { - defaultMessage: 'Transform ID', - })} + return ( + <div data-test-subj="transformStepDetailsForm"> + <EuiForm> + <EuiFormRow + label={i18n.translate('xpack.transform.stepDetailsForm.transformIdLabel', { + defaultMessage: 'Transform ID', + })} + isInvalid={(!transformIdEmpty && !transformIdValid) || transformIdExists} + error={[ + ...(!transformIdEmpty && !transformIdValid + ? [ + i18n.translate('xpack.transform.stepDetailsForm.transformIdInvalidError', { + defaultMessage: + 'Must contain lowercase alphanumeric characters (a-z and 0-9), hyphens, and underscores only and must start and end with alphanumeric characters.', + }), + ] + : []), + ...(transformIdExists + ? [ + i18n.translate('xpack.transform.stepDetailsForm.transformIdExistsError', { + defaultMessage: 'A transform with this ID already exists.', + }), + ] + : []), + ]} + > + <EuiFieldText + placeholder="transform ID" + value={transformId} + onChange={e => setTransformId(e.target.value)} + aria-label={i18n.translate( + 'xpack.transform.stepDetailsForm.transformIdInputAriaLabel', + { + defaultMessage: 'Choose a unique transform ID.', + } + )} isInvalid={(!transformIdEmpty && !transformIdValid) || transformIdExists} - error={[ - ...(!transformIdEmpty && !transformIdValid - ? [ - i18n.translate('xpack.transform.stepDetailsForm.transformIdInvalidError', { - defaultMessage: - 'Must contain lowercase alphanumeric characters (a-z and 0-9), hyphens, and underscores only and must start and end with alphanumeric characters.', - }), - ] - : []), - ...(transformIdExists - ? [ - i18n.translate('xpack.transform.stepDetailsForm.transformIdExistsError', { - defaultMessage: 'A transform with this ID already exists.', - }), - ] - : []), - ]} - > - <EuiFieldText - placeholder="transform ID" - value={transformId} - onChange={e => setTransformId(e.target.value)} - aria-label={i18n.translate( - 'xpack.transform.stepDetailsForm.transformIdInputAriaLabel', - { - defaultMessage: 'Choose a unique transform ID.', - } - )} - isInvalid={(!transformIdEmpty && !transformIdValid) || transformIdExists} - data-test-subj="transformIdInput" - /> - </EuiFormRow> - <EuiFormRow - label={i18n.translate('xpack.transform.stepDetailsForm.transformDescriptionLabel', { - defaultMessage: 'Transform description', - })} - helpText={i18n.translate( - 'xpack.transform.stepDetailsForm.transformDescriptionHelpText', + data-test-subj="transformIdInput" + /> + </EuiFormRow> + <EuiFormRow + label={i18n.translate('xpack.transform.stepDetailsForm.transformDescriptionLabel', { + defaultMessage: 'Transform description', + })} + helpText={i18n.translate('xpack.transform.stepDetailsForm.transformDescriptionHelpText', { + defaultMessage: 'Optional descriptive text.', + })} + > + <EuiFieldText + placeholder="transform description" + value={transformDescription} + onChange={e => setTransformDescription(e.target.value)} + aria-label={i18n.translate( + 'xpack.transform.stepDetailsForm.transformDescriptionInputAriaLabel', { - defaultMessage: 'Optional descriptive text.', + defaultMessage: 'Choose an optional transform description.', } )} - > - <EuiFieldText - placeholder="transform description" - value={transformDescription} - onChange={e => setTransformDescription(e.target.value)} - aria-label={i18n.translate( - 'xpack.transform.stepDetailsForm.transformDescriptionInputAriaLabel', + data-test-subj="transformDescriptionInput" + /> + </EuiFormRow> + <EuiFormRow + label={i18n.translate('xpack.transform.stepDetailsForm.destinationIndexLabel', { + defaultMessage: 'Destination index', + })} + isInvalid={!indexNameEmpty && !indexNameValid} + helpText={ + indexNameExists && + i18n.translate('xpack.transform.stepDetailsForm.destinationIndexHelpText', { + defaultMessage: + 'An index with this name already exists. Be aware that running this transform will modify this destination index.', + }) + } + error={ + !indexNameEmpty && + !indexNameValid && [ + <Fragment> + {i18n.translate('xpack.transform.stepDetailsForm.destinationIndexInvalidError', { + defaultMessage: 'Invalid destination index name.', + })} + <br /> + <EuiLink href={esIndicesCreateIndex} target="_blank"> + {i18n.translate( + 'xpack.transform.stepDetailsForm.destinationIndexInvalidErrorLink', + { + defaultMessage: 'Learn more about index name limitations.', + } + )} + </EuiLink> + </Fragment>, + ] + } + > + <EuiFieldText + placeholder="destination index" + value={destinationIndex} + onChange={e => setDestinationIndex(e.target.value)} + aria-label={i18n.translate( + 'xpack.transform.stepDetailsForm.destinationIndexInputAriaLabel', + { + defaultMessage: 'Choose a unique destination index name.', + } + )} + isInvalid={!indexNameEmpty && !indexNameValid} + data-test-subj="transformDestinationIndexInput" + /> + </EuiFormRow> + <EuiFormRow + isInvalid={createIndexPattern && indexPatternTitleExists} + error={ + createIndexPattern && + indexPatternTitleExists && [ + i18n.translate('xpack.transform.stepDetailsForm.indexPatternTitleError', { + defaultMessage: 'An index pattern with this title already exists.', + }), + ] + } + > + <EuiSwitch + name="transformCreateIndexPattern" + label={i18n.translate('xpack.transform.stepCreateForm.createIndexPatternLabel', { + defaultMessage: 'Create index pattern', + })} + checked={createIndexPattern === true} + onChange={() => setCreateIndexPattern(!createIndexPattern)} + data-test-subj="transformCreateIndexPatternSwitch" + /> + </EuiFormRow> + <EuiFormRow + helpText={ + isContinuousModeAvailable === false + ? i18n.translate('xpack.transform.stepDetailsForm.continuousModeError', { + defaultMessage: + 'Continuous mode is not available for indices without date fields.', + }) + : '' + } + > + <EuiSwitch + name="transformContinuousMode" + label={i18n.translate('xpack.transform.stepCreateForm.continuousModeLabel', { + defaultMessage: 'Continuous mode', + })} + checked={isContinuousModeEnabled === true} + onChange={() => setContinuousModeEnabled(!isContinuousModeEnabled)} + disabled={isContinuousModeAvailable === false} + data-test-subj="transformContinuousModeSwitch" + /> + </EuiFormRow> + {isContinuousModeEnabled && ( + <Fragment> + <EuiFormRow + label={i18n.translate( + 'xpack.transform.stepDetailsForm.continuousModeDateFieldLabel', { - defaultMessage: 'Choose an optional transform description.', + defaultMessage: 'Date field', } )} - data-test-subj="transformDescriptionInput" - /> - </EuiFormRow> - <EuiFormRow - label={i18n.translate('xpack.transform.stepDetailsForm.destinationIndexLabel', { - defaultMessage: 'Destination index', - })} - isInvalid={!indexNameEmpty && !indexNameValid} - helpText={ - indexNameExists && - i18n.translate('xpack.transform.stepDetailsForm.destinationIndexHelpText', { - defaultMessage: - 'An index with this name already exists. Be aware that running this transform will modify this destination index.', - }) - } - error={ - !indexNameEmpty && - !indexNameValid && [ - <Fragment> - {i18n.translate('xpack.transform.stepDetailsForm.destinationIndexInvalidError', { - defaultMessage: 'Invalid destination index name.', - })} - <br /> - <EuiLink href={esIndicesCreateIndex} target="_blank"> - {i18n.translate( - 'xpack.transform.stepDetailsForm.destinationIndexInvalidErrorLink', - { - defaultMessage: 'Learn more about index name limitations.', - } - )} - </EuiLink> - </Fragment>, - ] - } - > - <EuiFieldText - placeholder="destination index" - value={destinationIndex} - onChange={e => setDestinationIndex(e.target.value)} - aria-label={i18n.translate( - 'xpack.transform.stepDetailsForm.destinationIndexInputAriaLabel', + helpText={i18n.translate( + 'xpack.transform.stepDetailsForm.continuousModeDateFieldHelpText', { - defaultMessage: 'Choose a unique destination index name.', + defaultMessage: + 'Select the date field that can be used to identify new documents.', } )} - isInvalid={!indexNameEmpty && !indexNameValid} - data-test-subj="transformDestinationIndexInput" - /> - </EuiFormRow> - <EuiFormRow - isInvalid={createIndexPattern && indexPatternTitleExists} - error={ - createIndexPattern && - indexPatternTitleExists && [ - i18n.translate('xpack.transform.stepDetailsForm.indexPatternTitleError', { - defaultMessage: 'An index pattern with this title already exists.', - }), - ] - } - > - <EuiSwitch - name="transformCreateIndexPattern" - label={i18n.translate('xpack.transform.stepCreateForm.createIndexPatternLabel', { - defaultMessage: 'Create index pattern', - })} - checked={createIndexPattern === true} - onChange={() => setCreateIndexPattern(!createIndexPattern)} - data-test-subj="transformCreateIndexPatternSwitch" - /> - </EuiFormRow> - <EuiFormRow - helpText={ - isContinuousModeAvailable === false - ? i18n.translate('xpack.transform.stepDetailsForm.continuousModeError', { - defaultMessage: - 'Continuous mode is not available for indices without date fields.', - }) - : '' - } - > - <EuiSwitch - name="transformContinuousMode" - label={i18n.translate('xpack.transform.stepCreateForm.continuousModeLabel', { - defaultMessage: 'Continuous mode', + > + <EuiSelect + options={dateFieldNames.map(text => ({ text }))} + value={continuousModeDateField} + onChange={e => setContinuousModeDateField(e.target.value)} + data-test-subj="transformContinuousDateFieldSelect" + /> + </EuiFormRow> + <EuiFormRow + label={i18n.translate('xpack.transform.stepDetailsForm.continuousModeDelayLabel', { + defaultMessage: 'Delay', })} - checked={isContinuousModeEnabled === true} - onChange={() => setContinuousModeEnabled(!isContinuousModeEnabled)} - disabled={isContinuousModeAvailable === false} - data-test-subj="transformContinuousModeSwitch" - /> - </EuiFormRow> - {isContinuousModeEnabled && ( - <Fragment> - <EuiFormRow - label={i18n.translate( - 'xpack.transform.stepDetailsForm.continuousModeDateFieldLabel', - { - defaultMessage: 'Date field', - } - )} - helpText={i18n.translate( - 'xpack.transform.stepDetailsForm.continuousModeDateFieldHelpText', - { - defaultMessage: - 'Select the date field that can be used to identify new documents.', - } - )} - > - <EuiSelect - options={dateFieldNames.map(text => ({ text }))} - value={continuousModeDateField} - onChange={e => setContinuousModeDateField(e.target.value)} - data-test-subj="transformContinuousDateFieldSelect" - /> - </EuiFormRow> - <EuiFormRow - label={i18n.translate('xpack.transform.stepDetailsForm.continuousModeDelayLabel', { - defaultMessage: 'Delay', - })} - isInvalid={!isContinuousModeDelayValid} - error={ - !isContinuousModeDelayValid && [ - i18n.translate('xpack.transform.stepDetailsForm.continuousModeDelayError', { - defaultMessage: 'Invalid delay format', - }), - ] + isInvalid={!isContinuousModeDelayValid} + error={ + !isContinuousModeDelayValid && [ + i18n.translate('xpack.transform.stepDetailsForm.continuousModeDelayError', { + defaultMessage: 'Invalid delay format', + }), + ] + } + helpText={i18n.translate( + 'xpack.transform.stepDetailsForm.continuousModeDelayHelpText', + { + defaultMessage: 'Time delay between current time and latest input data time.', } - helpText={i18n.translate( - 'xpack.transform.stepDetailsForm.continuousModeDelayHelpText', + )} + > + <EuiFieldText + placeholder="delay" + value={continuousModeDelay} + onChange={e => setContinuousModeDelay(e.target.value)} + aria-label={i18n.translate( + 'xpack.transform.stepDetailsForm.continuousModeAriaLabel', { - defaultMessage: 'Time delay between current time and latest input data time.', + defaultMessage: 'Choose a delay.', } )} - > - <EuiFieldText - placeholder="delay" - value={continuousModeDelay} - onChange={e => setContinuousModeDelay(e.target.value)} - aria-label={i18n.translate( - 'xpack.transform.stepDetailsForm.continuousModeAriaLabel', - { - defaultMessage: 'Choose a delay.', - } - )} - isInvalid={!isContinuousModeDelayValid} - data-test-subj="transformContinuousDelayInput" - /> - </EuiFormRow> - </Fragment> - )} - </EuiForm> - </div> - ); - } -); + isInvalid={!isContinuousModeDelayValid} + data-test-subj="transformContinuousDelayInput" + /> + </EuiFormRow> + </Fragment> + )} + </EuiForm> + </div> + ); +}); diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/wizard/wizard.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/wizard/wizard.tsx index 0773ecbb1d8d39..f1861755d97424 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/wizard/wizard.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/components/wizard/wizard.tsx @@ -10,8 +10,9 @@ import { i18n } from '@kbn/i18n'; import { EuiSteps, EuiStepStatus } from '@elastic/eui'; +import { useKibanaContext } from '../../../../lib/kibana'; + import { getCreateRequestBody, TransformPivotConfig } from '../../../../common'; -import { SearchItems } from '../../../../hooks/use_search_items'; import { applyTransformConfigToDefineState, @@ -45,7 +46,6 @@ interface DefinePivotStepProps { stepDefineState: StepDefineExposedState; setCurrentStep: React.Dispatch<React.SetStateAction<WIZARD_STEPS>>; setStepDefineState: React.Dispatch<React.SetStateAction<StepDefineExposedState>>; - searchItems: SearchItems; } const StepDefine: FC<DefinePivotStepProps> = ({ @@ -53,7 +53,6 @@ const StepDefine: FC<DefinePivotStepProps> = ({ stepDefineState, setCurrentStep, setStepDefineState, - searchItems, }) => { const definePivotRef = useRef(null); @@ -62,36 +61,31 @@ const StepDefine: FC<DefinePivotStepProps> = ({ <div ref={definePivotRef} /> {isCurrentStep && ( <Fragment> - <StepDefineForm - onChange={setStepDefineState} - overrides={{ ...stepDefineState }} - searchItems={searchItems} - /> + <StepDefineForm onChange={setStepDefineState} overrides={{ ...stepDefineState }} /> <WizardNav next={() => setCurrentStep(WIZARD_STEPS.DETAILS)} nextActive={stepDefineState.valid} /> </Fragment> )} - {!isCurrentStep && ( - <StepDefineSummary formState={{ ...stepDefineState }} searchItems={searchItems} /> - )} + {!isCurrentStep && <StepDefineSummary {...stepDefineState} />} </Fragment> ); }; interface WizardProps { cloneConfig?: TransformPivotConfig; - searchItems: SearchItems; } -export const Wizard: FC<WizardProps> = React.memo(({ cloneConfig, searchItems }) => { +export const Wizard: FC<WizardProps> = React.memo(({ cloneConfig }) => { + const kibanaContext = useKibanaContext(); + // The current WIZARD_STEP const [currentStep, setCurrentStep] = useState(WIZARD_STEPS.DEFINE); // The DEFINE state const [stepDefineState, setStepDefineState] = useState( - applyTransformConfigToDefineState(getDefaultStepDefineState(searchItems), cloneConfig) + applyTransformConfigToDefineState(getDefaultStepDefineState(kibanaContext), cloneConfig) ); // The DETAILS state @@ -101,11 +95,7 @@ export const Wizard: FC<WizardProps> = React.memo(({ cloneConfig, searchItems }) const stepDetails = currentStep === WIZARD_STEPS.DETAILS ? ( - <StepDetailsForm - onChange={setStepDetailsState} - overrides={stepDetailsState} - searchItems={searchItems} - /> + <StepDetailsForm onChange={setStepDetailsState} overrides={stepDetailsState} /> ) : ( <StepDetailsSummary {...stepDetailsState} /> ); @@ -132,7 +122,7 @@ export const Wizard: FC<WizardProps> = React.memo(({ cloneConfig, searchItems }) } }, []); - const { indexPattern } = searchItems; + const indexPattern = kibanaContext.currentIndexPattern; const transformConfig = getCreateRequestBody( indexPattern.title, @@ -164,7 +154,6 @@ export const Wizard: FC<WizardProps> = React.memo(({ cloneConfig, searchItems }) stepDefineState={stepDefineState} setCurrentStep={setCurrentStep} setStepDefineState={setStepDefineState} - searchItems={searchItems} /> ), }, diff --git a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx index d09fc0913590e9..5196f281adf0aa 100644 --- a/x-pack/legacy/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx +++ b/x-pack/legacy/plugins/transform/public/app/sections/create_transform/create_transform_section.tsx @@ -22,9 +22,9 @@ import { import { APP_CREATE_TRANSFORM_CLUSTER_PRIVILEGES } from '../../../../common/constants'; import { useDocumentationLinks } from '../../app_dependencies'; -import { useSearchItems } from '../../hooks/use_search_items'; import { breadcrumbService, docTitleService, BREADCRUMB_SECTION } from '../../services/navigation'; import { PrivilegesWrapper } from '../../lib/authorization'; +import { KibanaProvider, RenderOnlyWithInitializedKibanaContext } from '../../lib/kibana'; import { Wizard } from './components/wizard'; @@ -38,41 +38,43 @@ export const CreateTransformSection: FC<Props> = ({ match }) => { const { esTransform } = useDocumentationLinks(); - const { searchItems } = useSearchItems(match.params.savedObjectId); - return ( <PrivilegesWrapper privileges={APP_CREATE_TRANSFORM_CLUSTER_PRIVILEGES}> - <EuiPageContent data-test-subj="transformPageCreateTransform"> - <EuiTitle size="l"> - <EuiFlexGroup alignItems="center"> - <EuiFlexItem grow={true}> - <h1> - <FormattedMessage - id="xpack.transform.transformsWizard.createTransformTitle" - defaultMessage="Create transform" - /> - </h1> - </EuiFlexItem> - <EuiFlexItem grow={false}> - <EuiButtonEmpty - href={esTransform} - target="_blank" - iconType="help" - data-test-subj="documentationLink" - > - <FormattedMessage - id="xpack.transform.transformsWizard.transformDocsLinkText" - defaultMessage="Transform docs" - /> - </EuiButtonEmpty> - </EuiFlexItem> - </EuiFlexGroup> - </EuiTitle> - <EuiPageContentBody> - <EuiSpacer size="l" /> - {searchItems !== undefined && <Wizard searchItems={searchItems} />} - </EuiPageContentBody> - </EuiPageContent> + <KibanaProvider savedObjectId={match.params.savedObjectId}> + <EuiPageContent data-test-subj="transformPageCreateTransform"> + <EuiTitle size="l"> + <EuiFlexGroup alignItems="center"> + <EuiFlexItem grow={true}> + <h1> + <FormattedMessage + id="xpack.transform.transformsWizard.createTransformTitle" + defaultMessage="Create transform" + /> + </h1> + </EuiFlexItem> + <EuiFlexItem grow={false}> + <EuiButtonEmpty + href={esTransform} + target="_blank" + iconType="help" + data-test-subj="documentationLink" + > + <FormattedMessage + id="xpack.transform.transformsWizard.transformDocsLinkText" + defaultMessage="Transform docs" + /> + </EuiButtonEmpty> + </EuiFlexItem> + </EuiFlexGroup> + </EuiTitle> + <EuiPageContentBody> + <EuiSpacer size="l" /> + <RenderOnlyWithInitializedKibanaContext> + <Wizard /> + </RenderOnlyWithInitializedKibanaContext> + </EuiPageContentBody> + </EuiPageContent> + </KibanaProvider> </PrivilegesWrapper> ); }; diff --git a/x-pack/legacy/plugins/transform/public/plugin.ts b/x-pack/legacy/plugins/transform/public/plugin.ts index 7b5fbbb4a21519..23fad00fb0786f 100644 --- a/x-pack/legacy/plugins/transform/public/plugin.ts +++ b/x-pack/legacy/plugins/transform/public/plugin.ts @@ -11,6 +11,7 @@ import { breadcrumbService } from './app/services/navigation'; import { docTitleService } from './app/services/navigation'; import { textService } from './app/services/text'; import { uiMetricService } from './app/services/ui_metric'; +import { createSavedSearchesLoader } from '../../../../../src/plugins/discover/public'; export class Plugin { public start(core: ShimCore, plugins: ShimPlugins): void { @@ -26,7 +27,7 @@ export class Plugin { savedObjects, overlays, } = core; - const { data, management, uiMetric, xsrfToken } = plugins; + const { data, management, savedSearches: coreSavedSearches, uiMetric, xsrfToken } = plugins; // AppCore/AppPlugins to be passed on as React context const appDependencies = { @@ -45,6 +46,7 @@ export class Plugin { plugins: { data, management, + savedSearches: coreSavedSearches, xsrfToken, }, }; @@ -59,6 +61,14 @@ export class Plugin { }), order: 3, mount(params) { + const savedSearches = createSavedSearchesLoader({ + savedObjectsClient: core.savedObjects.client, + indexPatterns: plugins.data.indexPatterns, + chrome: core.chrome, + overlays: core.overlays, + }); + coreSavedSearches.setClient(savedSearches); + breadcrumbService.setup(params.setBreadcrumbs); params.setBreadcrumbs([ { diff --git a/x-pack/legacy/plugins/transform/public/shared_imports.ts b/x-pack/legacy/plugins/transform/public/shared_imports.ts index 1ca71f8c4aa773..b077cd8836c4b5 100644 --- a/x-pack/legacy/plugins/transform/public/shared_imports.ts +++ b/x-pack/legacy/plugins/transform/public/shared_imports.ts @@ -4,7 +4,6 @@ * you may not use this file except in compliance with the Elastic License. */ -export { createSavedSearchesLoader } from '../../../../../src/plugins/discover/public'; export { XJsonMode } from '../../../../plugins/es_ui_shared/console_lang/ace/modes/x_json'; export { collapseLiteralStrings, diff --git a/x-pack/legacy/plugins/transform/public/shim.ts b/x-pack/legacy/plugins/transform/public/shim.ts index 9941aabcf3255e..05f7626e25e9de 100644 --- a/x-pack/legacy/plugins/transform/public/shim.ts +++ b/x-pack/legacy/plugins/transform/public/shim.ts @@ -13,6 +13,7 @@ import { docTitle } from 'ui/doc_title/doc_title'; import { createUiStatsReporter } from '../../../../../src/legacy/core_plugins/ui_metric/public'; import { TRANSFORM_DOC_PATHS } from './app/constants'; +import { SavedSearchLoader } from '../../../../../src/plugins/discover/public'; export type NpCore = typeof npStart.core; export type NpPlugins = typeof npStart.plugins; @@ -32,7 +33,7 @@ export type AppCore = Pick< | 'overlays' | 'notifications' >; -export type AppPlugins = Pick<ShimPlugins, 'data' | 'management' | 'xsrfToken'>; +export type AppPlugins = Pick<ShimPlugins, 'data' | 'management' | 'savedSearches' | 'xsrfToken'>; export interface AppDependencies { core: AppCore; @@ -60,10 +61,18 @@ export interface ShimPlugins extends NpPlugins { uiMetric: { createUiStatsReporter: typeof createUiStatsReporter; }; + savedSearches: { + getClient(): any; + setClient(client: any): void; + }; xsrfToken: string; } export function createPublicShim(): { core: ShimCore; plugins: ShimPlugins } { + // This is an Angular service, which is why we use this provider pattern + // to access it within our React app. + let savedSearches: SavedSearchLoader; + const { ELASTIC_WEBSITE_URL, DOC_LINK_VERSION } = npStart.core.docLinks; return { @@ -85,6 +94,12 @@ export function createPublicShim(): { core: ShimCore; plugins: ShimPlugins } { }, plugins: { ...npStart.plugins, + savedSearches: { + setClient: (client: any): void => { + savedSearches = client; + }, + getClient: (): any => savedSearches, + }, uiMetric: { createUiStatsReporter, }, From 3ec71c3361c5f5d168aba84c4c9e96cf2f2dbd49 Mon Sep 17 00:00:00 2001 From: Josh Dover <me@joshdover.com> Date: Wed, 4 Mar 2020 12:56:18 -0700 Subject: [PATCH 116/120] Add loading count source for http requests (#59245) --- src/core/public/http/fetch.test.ts | 78 ++++++++++++++++++++++- src/core/public/http/fetch.ts | 9 +++ src/core/public/http/http_service.test.ts | 13 ++++ src/core/public/http/http_service.ts | 1 + 4 files changed, 100 insertions(+), 1 deletion(-) diff --git a/src/core/public/http/fetch.test.ts b/src/core/public/http/fetch.test.ts index efd9fdd0536746..f223956075e979 100644 --- a/src/core/public/http/fetch.test.ts +++ b/src/core/public/http/fetch.test.ts @@ -21,6 +21,7 @@ import fetchMock from 'fetch-mock/es5/client'; import { readFileSync } from 'fs'; import { join } from 'path'; +import { first } from 'rxjs/operators'; import { Fetch } from './fetch'; import { BasePath } from './base_path'; @@ -30,9 +31,11 @@ function delay<T>(duration: number) { return new Promise<T>(r => setTimeout(r, duration)); } +const BASE_PATH = 'http://localhost/myBase'; + describe('Fetch', () => { const fetchInstance = new Fetch({ - basePath: new BasePath('http://localhost/myBase'), + basePath: new BasePath(BASE_PATH), kibanaVersion: 'VERSION', }); afterEach(() => { @@ -40,6 +43,79 @@ describe('Fetch', () => { fetchInstance.removeAllInterceptors(); }); + describe('getRequestCount$', () => { + const getCurrentRequestCount = () => + fetchInstance + .getRequestCount$() + .pipe(first()) + .toPromise(); + + it('should increase and decrease when request receives success response', async () => { + fetchMock.get('*', 200); + + const fetchResponse = fetchInstance.fetch('/path'); + expect(await getCurrentRequestCount()).toEqual(1); + + await expect(fetchResponse).resolves.not.toThrow(); + expect(await getCurrentRequestCount()).toEqual(0); + }); + + it('should increase and decrease when request receives error response', async () => { + fetchMock.get('*', 500); + + const fetchResponse = fetchInstance.fetch('/path'); + expect(await getCurrentRequestCount()).toEqual(1); + + await expect(fetchResponse).rejects.toThrow(); + expect(await getCurrentRequestCount()).toEqual(0); + }); + + it('should increase and decrease when request fails', async () => { + fetchMock.get('*', Promise.reject('Network!')); + + const fetchResponse = fetchInstance.fetch('/path'); + expect(await getCurrentRequestCount()).toEqual(1); + + await expect(fetchResponse).rejects.toThrow(); + expect(await getCurrentRequestCount()).toEqual(0); + }); + + it('should change for multiple requests', async () => { + fetchMock.get(`${BASE_PATH}/success`, 200); + fetchMock.get(`${BASE_PATH}/fail`, 400); + fetchMock.get(`${BASE_PATH}/network-fail`, Promise.reject('Network!')); + + const requestCounts: number[] = []; + const subscription = fetchInstance + .getRequestCount$() + .subscribe(count => requestCounts.push(count)); + + const success1 = fetchInstance.fetch('/success'); + const success2 = fetchInstance.fetch('/success'); + const failure1 = fetchInstance.fetch('/fail'); + const failure2 = fetchInstance.fetch('/fail'); + const networkFailure1 = fetchInstance.fetch('/network-fail'); + const success3 = fetchInstance.fetch('/success'); + const failure3 = fetchInstance.fetch('/fail'); + const networkFailure2 = fetchInstance.fetch('/network-fail'); + + const swallowError = (p: Promise<any>) => p.catch(() => {}); + await Promise.all([ + success1, + success2, + success3, + swallowError(failure1), + swallowError(failure2), + swallowError(failure3), + swallowError(networkFailure1), + swallowError(networkFailure2), + ]); + + expect(requestCounts).toEqual([0, 1, 2, 3, 4, 5, 6, 7, 8, 7, 6, 5, 4, 3, 2, 1, 0]); + subscription.unsubscribe(); + }); + }); + describe('http requests', () => { it('should fail with invalid arguments', async () => { fetchMock.get('*', {}); diff --git a/src/core/public/http/fetch.ts b/src/core/public/http/fetch.ts index b433acdb6dbb97..d88dc2e3a90371 100644 --- a/src/core/public/http/fetch.ts +++ b/src/core/public/http/fetch.ts @@ -19,6 +19,7 @@ import { merge } from 'lodash'; import { format } from 'url'; +import { BehaviorSubject } from 'rxjs'; import { IBasePath, @@ -43,6 +44,7 @@ const NDJSON_CONTENT = /^(application\/ndjson)(;.*)?$/; export class Fetch { private readonly interceptors = new Set<HttpInterceptor>(); + private readonly requestCount$ = new BehaviorSubject(0); constructor(private readonly params: Params) {} @@ -57,6 +59,10 @@ export class Fetch { this.interceptors.clear(); } + public getRequestCount$() { + return this.requestCount$.asObservable(); + } + public readonly delete = this.shorthand('DELETE'); public readonly get = this.shorthand('GET'); public readonly head = this.shorthand('HEAD'); @@ -76,6 +82,7 @@ export class Fetch { // a halt is called we do not resolve or reject, halting handling of the promise. return new Promise<TResponseBody | HttpResponse<TResponseBody>>(async (resolve, reject) => { try { + this.requestCount$.next(this.requestCount$.value + 1); const interceptedOptions = await interceptRequest( optionsWithPath, this.interceptors, @@ -98,6 +105,8 @@ export class Fetch { if (!(error instanceof HttpInterceptHaltError)) { reject(error); } + } finally { + this.requestCount$.next(this.requestCount$.value - 1); } }); }; diff --git a/src/core/public/http/http_service.test.ts b/src/core/public/http/http_service.test.ts index a40fcb06273dd4..78220af9cc83b5 100644 --- a/src/core/public/http/http_service.test.ts +++ b/src/core/public/http/http_service.test.ts @@ -24,6 +24,7 @@ import { loadingServiceMock } from './http_service.test.mocks'; import { fatalErrorsServiceMock } from '../fatal_errors/fatal_errors_service.mock'; import { injectedMetadataServiceMock } from '../injected_metadata/injected_metadata_service.mock'; import { HttpService } from './http_service'; +import { Observable } from 'rxjs'; describe('interceptors', () => { afterEach(() => fetchMock.restore()); @@ -52,6 +53,18 @@ describe('interceptors', () => { }); }); +describe('#setup()', () => { + it('registers Fetch#getLoadingCount$() with LoadingCountSetup#addLoadingCountSource()', () => { + const injectedMetadata = injectedMetadataServiceMock.createSetupContract(); + const fatalErrors = fatalErrorsServiceMock.createSetupContract(); + const httpService = new HttpService(); + httpService.setup({ fatalErrors, injectedMetadata }); + const loadingServiceSetup = loadingServiceMock.setup.mock.results[0].value; + // We don't verify that this Observable comes from Fetch#getLoadingCount$() to avoid complex mocking + expect(loadingServiceSetup.addLoadingCountSource).toHaveBeenCalledWith(expect.any(Observable)); + }); +}); + describe('#stop()', () => { it('calls loadingCount.stop()', () => { const injectedMetadata = injectedMetadataServiceMock.createSetupContract(); diff --git a/src/core/public/http/http_service.ts b/src/core/public/http/http_service.ts index 44fc9d65565d4e..98de1d919c4815 100644 --- a/src/core/public/http/http_service.ts +++ b/src/core/public/http/http_service.ts @@ -45,6 +45,7 @@ export class HttpService implements CoreService<HttpSetup, HttpStart> { ); const fetchService = new Fetch({ basePath, kibanaVersion }); const loadingCount = this.loadingCount.setup({ fatalErrors }); + loadingCount.addLoadingCountSource(fetchService.getRequestCount$()); this.service = { basePath, From 20d1c553ab487e5833600ecd4700733af0799676 Mon Sep 17 00:00:00 2001 From: Liza Katz <liza.katz@elastic.co> Date: Wed, 4 Mar 2020 20:03:02 +0000 Subject: [PATCH 117/120] Make sure phrases input filter triggers autosuggestons (#59299) Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../public/ui/filter_bar/filter_editor/phrases_values_input.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/src/plugins/data/public/ui/filter_bar/filter_editor/phrases_values_input.tsx b/src/plugins/data/public/ui/filter_bar/filter_editor/phrases_values_input.tsx index aa76684239b63f..72f92268f3330d 100644 --- a/src/plugins/data/public/ui/filter_bar/filter_editor/phrases_values_input.tsx +++ b/src/plugins/data/public/ui/filter_bar/filter_editor/phrases_values_input.tsx @@ -51,6 +51,7 @@ class PhrasesValuesInputUI extends PhraseSuggestorUI<Props> { options={options} getLabel={option => option} selectedOptions={values || []} + onSearchChange={this.onSearchChange} onCreateOption={(option: string) => onChange([...(values || []), option])} onChange={onChange} isClearable={false} From 364979853933b31292d5e57986fb16253d1bd0a6 Mon Sep 17 00:00:00 2001 From: Liza Katz <liza.katz@elastic.co> Date: Wed, 4 Mar 2020 20:03:35 +0000 Subject: [PATCH 118/120] Reset page after deleting (#59310) Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- .../saved_query_management/saved_query_management_component.tsx | 1 + 1 file changed, 1 insertion(+) diff --git a/src/plugins/data/public/ui/saved_query_management/saved_query_management_component.tsx b/src/plugins/data/public/ui/saved_query_management/saved_query_management_component.tsx index 9347ef59742611..55615dea9fdb7d 100644 --- a/src/plugins/data/public/ui/saved_query_management/saved_query_management_component.tsx +++ b/src/plugins/data/public/ui/saved_query_management/saved_query_management_component.tsx @@ -124,6 +124,7 @@ export const SavedQueryManagementComponent: FunctionComponent<Props> = ({ } await savedQueryService.deleteSavedQuery(savedQuery.id); + setActivePage(0); }; const savedQueryPopoverButton = ( From 754e6f1e772958191152f87722ac4abde7aeba6b Mon Sep 17 00:00:00 2001 From: Lee Drengenberg <lee.drengenberg@elastic.co> Date: Wed, 4 Mar 2020 14:03:57 -0600 Subject: [PATCH 119/120] move mouse to close obstructing tooltip (#59214) Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com> --- test/functional/page_objects/discover_page.js | 1 + 1 file changed, 1 insertion(+) diff --git a/test/functional/page_objects/discover_page.js b/test/functional/page_objects/discover_page.js index 080b8c8ee753fc..46aadc63c64f1c 100644 --- a/test/functional/page_objects/discover_page.js +++ b/test/functional/page_objects/discover_page.js @@ -126,6 +126,7 @@ export function DiscoverPageProvider({ getService, getPageObjects }) { } async clickLoadSavedSearchButton() { + await testSubjects.moveMouseTo('discoverOpenButton'); await testSubjects.click('discoverOpenButton'); } From ac4f8f4ef5e1895014f041c4ef7a5e7a075162ec Mon Sep 17 00:00:00 2001 From: patrykkopycinski <patryk.kopycinski@elastic.co> Date: Wed, 4 Mar 2020 12:31:43 -0800 Subject: [PATCH 120/120] [SIEM] Fix rule delete/duplicate actions (#59306) --- .../rules/all/columns.test.tsx | 81 +++++++++++++++++++ .../detection_engine/rules/all/columns.tsx | 14 ++-- 2 files changed, 88 insertions(+), 7 deletions(-) create mode 100644 x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/columns.test.tsx diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/columns.test.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/columns.test.tsx new file mode 100644 index 00000000000000..11becb14625a90 --- /dev/null +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/columns.test.tsx @@ -0,0 +1,81 @@ +/* + * 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 uuid from 'uuid'; +import { createMemoryHistory } from 'history'; + +const history = createMemoryHistory(); + +import { mockRule } from './__mocks__/mock'; +import { getActions } from './columns'; + +jest.mock('./actions', () => ({ + duplicateRulesAction: jest.fn(), + deleteRulesAction: jest.fn(), +})); + +import { duplicateRulesAction, deleteRulesAction } from './actions'; + +describe('AllRulesTable Columns', () => { + describe('getActions', () => { + const rule = mockRule(uuid.v4()); + let results: string[] = []; + const dispatch = jest.fn(); + const dispatchToaster = jest.fn(); + const reFetchRules = jest.fn(); + + beforeEach(() => { + results = []; + + reFetchRules.mockImplementation(() => { + results.push('reFetchRules'); + Promise.resolve(); + }); + }); + + test('duplicate rule onClick should call refetch after the rule is duplicated', async () => { + (duplicateRulesAction as jest.Mock).mockImplementation( + () => + new Promise(resolve => + setTimeout(() => { + results.push('duplicateRulesAction'); + resolve(); + }, 500) + ) + ); + + const duplicateRulesActionObject = getActions( + dispatch, + dispatchToaster, + history, + reFetchRules + )[1]; + await duplicateRulesActionObject.onClick(rule); + expect(results).toEqual(['duplicateRulesAction', 'reFetchRules']); + }); + + test('delete rule onClick should call refetch after the rule is deleted', async () => { + (deleteRulesAction as jest.Mock).mockImplementation( + () => + new Promise(resolve => + setTimeout(() => { + results.push('deleteRulesAction'); + resolve(); + }, 500) + ) + ); + + const deleteRulesActionObject = getActions( + dispatch, + dispatchToaster, + history, + reFetchRules + )[3]; + await deleteRulesActionObject.onClick(rule); + expect(results).toEqual(['deleteRulesAction', 'reFetchRules']); + }); + }); +}); diff --git a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/columns.tsx b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/columns.tsx index ff104f09d68efd..2214190de6a166 100644 --- a/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/columns.tsx +++ b/x-pack/legacy/plugins/siem/public/pages/detection_engine/rules/all/columns.tsx @@ -34,7 +34,7 @@ import { } from './actions'; import { Action } from './reducer'; -const getActions = ( +export const getActions = ( dispatch: React.Dispatch<Action>, dispatchToaster: Dispatch<ActionToaster>, history: H.History, @@ -51,9 +51,9 @@ const getActions = ( description: i18n.DUPLICATE_RULE, icon: 'copy', name: i18n.DUPLICATE_RULE, - onClick: (rowItem: Rule) => { - duplicateRulesAction([rowItem], [rowItem.id], dispatch, dispatchToaster); - reFetchRules(true); + onClick: async (rowItem: Rule) => { + await duplicateRulesAction([rowItem], [rowItem.id], dispatch, dispatchToaster); + await reFetchRules(true); }, }, { @@ -67,9 +67,9 @@ const getActions = ( description: i18n.DELETE_RULE, icon: 'trash', name: i18n.DELETE_RULE, - onClick: (rowItem: Rule) => { - deleteRulesAction([rowItem.id], dispatch, dispatchToaster); - reFetchRules(true); + onClick: async (rowItem: Rule) => { + await deleteRulesAction([rowItem.id], dispatch, dispatchToaster); + await reFetchRules(true); }, }, ];